diff --git a/FGBLH/Web鱼壳海豚.json b/FGBLH/Web鱼壳海豚.json index 9acef7eb..85ebca7b 100644 --- a/FGBLH/Web鱼壳海豚.json +++ b/FGBLH/Web鱼壳海豚.json @@ -156,6 +156,24 @@ "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/优视频.py" }, { + "key": "yl", + "name": "🐬永乐视频.py[追剧]", + "type": 3, + "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/永乐视频.py" + }, + { + "key": "mtyy", + "name": "🐬麦田影院.py[追剧]", + "type": 3, + "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/麦田影院.py" + }, + { + "key": "xhvm", + "name": "🐬骚火影视.py[追剧]", + "type": 3, + "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/骚火影视.py" + }, + { "key": "ayf", "name": "🐬爱壹帆影视.py[追剧]", "type": 3, @@ -722,6 +740,12 @@ "type": 3, "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/黑料不打烊.py" }, + { + "key": "jptt", + "name": "🐬禁片天堂.py|🔞[成人]", + "type": 3, + "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/禁片天堂.py" + }, { "key": "hgsq", "name": "🐬韩国色情电影.py|🔞[成人]", diff --git a/FGBLH/Web鱼壳海豚py.json b/FGBLH/Web鱼壳海豚py.json index cfdd3494..d4438221 100644 --- a/FGBLH/Web鱼壳海豚py.json +++ b/FGBLH/Web鱼壳海豚py.json @@ -108,6 +108,24 @@ "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/优视频.py" }, { + "key": "yl", + "name": "🐬永乐视频.py[追剧]", + "type": 3, + "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/永乐视频.py" + }, + { + "key": "mtyy", + "name": "🐬麦田影院.py[追剧]", + "type": 3, + "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/麦田影院.py" + }, + { + "key": "xhvm", + "name": "🐬骚火影视.py[追剧]", + "type": 3, + "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/骚火影视.py" + }, + { "key": "ayf", "name": "🐬爱壹帆影视.py[追剧]", "type": 3, @@ -323,6 +341,12 @@ "type": 3, "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/黑料不打烊.py" }, + { + "key": "jptt", + "name": "🐬禁片天堂.py|🔞[成人]", + "type": 3, + "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/禁片天堂.py" + }, { "key": "hgsq", "name": "🐬韩国色情电影.py|🔞[成人]", diff --git a/FGBLH/Web鱼壳海豚无18加.json b/FGBLH/Web鱼壳海豚无18加.json index bb641255..01191e5f 100644 --- a/FGBLH/Web鱼壳海豚无18加.json +++ b/FGBLH/Web鱼壳海豚无18加.json @@ -150,6 +150,24 @@ "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/奇优影院.py" }, { + "key": "yl", + "name": "🐬永乐视频.py", + "type": 3, + "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/永乐视频.py" + }, + { + "key": "mtyy", + "name": "🐬麦田影院.py", + "type": 3, + "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/麦田影院.py" + }, + { + "key": "xhvm", + "name": "🐬骚火影视.py", + "type": 3, + "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/骚火影视.py" + }, + { "key": "ayf", "name": "🐬爱壹帆影视.py", "type": 3, diff --git a/FGBLH/ok海豚.json b/FGBLH/ok海豚.json index c1abd215..b1e423cb 100644 --- a/FGBLH/ok海豚.json +++ b/FGBLH/ok海豚.json @@ -126,6 +126,24 @@ "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/优视频.py" }, { + "key": "yl", + "name": "🐬永乐视频.py", + "type": 3, + "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/永乐视频.py" + }, + { + "key": "mtyy", + "name": "🐬麦田影院.py", + "type": 3, + "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/麦田影院.py" + }, + { + "key": "xhvm", + "name": "🐬骚火影视.py", + "type": 3, + "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/骚火影视.py" + }, + { "key": "ayf", "name": "🐬爱壹帆影视.py", "type": 3, @@ -639,6 +657,12 @@ "type": 3, "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/黑料不打烊.py" }, + { + "key": "jptt", + "name": "🐬禁片天堂.py|🔞", + "type": 3, + "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/禁片天堂.py" + }, { "key": "hgsq", "name": "🐬韩国色情电影.py|🔞", diff --git a/FGBLH/ok海豚py.json b/FGBLH/ok海豚py.json index bbad7cc6..04595ab4 100644 --- a/FGBLH/ok海豚py.json +++ b/FGBLH/ok海豚py.json @@ -84,6 +84,24 @@ "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/优视频.py" }, { + "key": "yl", + "name": "🐬永乐视频.py", + "type": 3, + "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/永乐视频.py" + }, + { + "key": "mtyy", + "name": "🐬麦田影院.py", + "type": 3, + "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/麦田影院.py" + }, + { + "key": "xhvm", + "name": "🐬骚火影视.py", + "type": 3, + "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/骚火影视.py" + }, + { "key": "ayf", "name": "🐬爱壹帆影视.py", "type": 3, @@ -305,6 +323,12 @@ "type": 3, "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/今日看料.py" }, + { + "key": "jptt", + "name": "🐬禁片天堂.py|🔞", + "type": 3, + "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/禁片天堂.py" + }, { "key": "hgsq", "name": "🐬韩国色情电影.py|🔞", diff --git a/FGBLH/ok海豚无18加.json b/FGBLH/ok海豚无18加.json index bbb2cd5f..e46640c1 100644 --- a/FGBLH/ok海豚无18加.json +++ b/FGBLH/ok海豚无18加.json @@ -119,6 +119,24 @@ "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/奇优影院.py" }, { + "key": "yl", + "name": "🐬永乐视频.py", + "type": 3, + "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/永乐视频.py" + }, + { + "key": "mtyy", + "name": "🐬麦田影院.py", + "type": 3, + "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/麦田影院.py" + }, + { + "key": "xhvm", + "name": "🐬骚火影视.py", + "type": 3, + "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/骚火影视.py" + }, + { "key": "ayf", "name": "🐬爱壹帆影视.py", "type": 3, diff --git a/FGBLH/py/永乐视频.py b/FGBLH/py/永乐视频.py new file mode 100644 index 00000000..3b98ee85 --- /dev/null +++ b/FGBLH/py/永乐视频.py @@ -0,0 +1,231 @@ +# coding=utf-8 +#!/usr/bin/env python3 + +import re +import sys +import urllib.parse +import requests +from bs4 import BeautifulSoup + +# 禁用SSL证书验证警告 +import urllib3 +urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning) + +sys.path.append('..') +from base.spider import Spider + +class Spider(Spider): + def getName(self): + return "永乐视频" + + def init(self, extend=""): + self.host = "https://www.ylys.tv/" + self.headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36', 'Referer': self.host} + self.session = requests.Session() + self.session.verify = False + self.session.headers.update(self.headers) + + def fetch(self, url, timeout=30): + try: + response = self.session.get(url, timeout=timeout, verify=False) + response.encoding = response.encoding if response.encoding != 'ISO-8859-1' else 'UTF-8' + return response + except: + return None + + def homeContent(self, filter): + result = { + "class": [{'type_id': str(i), 'type_name': t} for i, t in enumerate(['电影', '剧集', '综艺', '动漫'], 1)], + "filters": self._get_filters(), + "list": [] + } + rsp = self.fetch(self.host) + if rsp and rsp.status_code == 200: + result['list'] = self._extract_videos(rsp.text, 20) + return result + + def categoryContent(self, tid, pg, filter, extend): + result = {"list": [], "page": int(pg), "pagecount": 99, "limit": 20, "total": 1980} + url = f"{self.host}/vodtype/{tid}/page/{pg}/" if int(pg) > 1 else f"{self.host}/vodtype/{tid}/" + rsp = self.fetch(url) + if rsp and rsp.status_code == 200: + result['list'] = self._extract_videos(rsp.text) + return result + + def searchContent(self, key, quick, pg=1): + result = {"list": []} + search_key = urllib.parse.quote(key) + url = f"{self.host}/vodsearch/{search_key}-------------/page/{pg}/" if int(pg) > 1 else f"{self.host}/vodsearch/{search_key}-------------/" + rsp = self.fetch(url) + if rsp and rsp.status_code == 200: + result['list'] = self._extract_search_results(rsp.text) + return result + + def detailContent(self, ids): + result = {"list": []} + vid = ids[0] + rsp = self.fetch(f"{self.host}/voddetail/{vid}/") + if not rsp or rsp.status_code != 200: + return result + + html = rsp.text + play_from, play_url = self._extract_play_info(html, vid) + + if play_from: + result['list'] = [{ + 'vod_id': vid, + 'vod_name': self._extract_title(html), + 'vod_pic': self._extract_pic(html), + 'vod_content': self._extract_desc(html), + 'vod_remarks': self._extract_remarks(html), + 'vod_play_from': "$$$".join(play_from), + 'vod_play_url': "$$$".join(play_url) + }] + return result + + def playerContent(self, flag, id, vipFlags): + result = {"parse": 1, "playUrl": "", "url": ""} + if "-" not in id: + return result + + rsp = self.fetch(f"{self.host}/play/{id}/") + if not rsp or rsp.status_code != 200: + return result + + real_url_match = re.search(r'var player_aaaa=.*?"url":"([^"]+\.m3u8)"', rsp.text, re.S | re.I) + if real_url_match: + real_url = real_url_match.group(1).replace(r'\u002F', '/').replace(r'\/', '/') + result["parse"] = 0 + result["url"] = real_url + else: + result["url"] = f"{self.host}/play/{id}/" + return result + + def _get_filters(self): + return { + "1": [{"key": "class", "name": "类型", "value": [ + {"n": "全部", "v": ""}, {"n": "动作片", "v": "6"}, {"n": "喜剧片", "v": "7"}, + {"n": "爱情片", "v": "8"}, {"n": "科幻片", "v": "9"}, {"n": "恐怖片", "v": "11"} + ]}], + "2": [{"key": "class", "name": "类型", "value": [ + {"n": "全部", "v": ""}, {"n": "国产剧", "v": "13"}, {"n": "港台剧", "v": "14"}, + {"n": "日剧", "v": "15"}, {"n": "韩剧", "v": "33"}, {"n": "欧美剧", "v": "16"} + ]}], + "3": [{"key": "class", "name": "类型", "value": [ + {"n": "全部", "v": ""}, {"n": "内地综艺", "v": "27"}, {"n": "港台综艺", "v": "28"}, + {"n": "日本综艺", "v": "29"}, {"n": "韩国综艺", "v": "36"} + ]}], + "4": [{"key": "class", "name": "类型", "value": [ + {"n": "全部", "v": ""}, {"n": "国产动漫", "v": "31"}, {"n": "日本动漫", "v": "32"}, + {"n": "欧美动漫", "v": "42"}, {"n": "其他动漫", "v": "43"} + ]}] + } + + def _extract_videos(self, html, limit=0): + videos = [] + pattern = r'([^<]+).*?data-original="([^"]+)"' + for vid, title, remark, pic in re.findall(pattern, html, re.S | re.I): + videos.append({ + 'vod_id': vid.strip(), + 'vod_name': title.strip(), + 'vod_pic': (self.host + pic if pic.startswith('/') else pic).strip(), + 'vod_remarks': remark.strip() + }) + return videos[:limit] if limit and len(videos) > limit else videos + + def _extract_search_results(self, html): + videos = [] + soup = BeautifulSoup(html, 'html.parser') + for item in soup.select('.module-card-item'): + link = item.select_one('a[href^="/voddetail/"]') + if not link: + continue + + href = link.get('href', '') + vid_match = re.search(r'/voddetail/(\d+)/', href) + if not vid_match: + continue + + vid = vid_match.group(1) + title_elem = item.select_one('.module-card-item-title strong') + img_elem = item.select_one('img') + pic = (img_elem.get('data-original') or img_elem.get('src')) if img_elem else "" + note_elem = item.select_one('.module-item-note') + + videos.append({ + 'vod_id': vid, + 'vod_name': title_elem.get_text(strip=True) if title_elem else "", + 'vod_pic': self.host + pic if pic.startswith('/') else pic, + 'vod_remarks': note_elem.get_text(strip=True) if note_elem else "" + }) + return videos + + def _extract_play_info(self, html, vid): + play_from, play_url = [], [] + line_pattern = r'<(?:div|a)[^>]*class="[^"]*module-tab-item[^"]*"[^>]*>(?:.*?([^<]+).*?(\d+)|.*?([^<]+).*?(\d+))' + + for match in re.findall(line_pattern, html, re.S | re.I): + line_name = match[0] or match[2] + if line_name in play_from: + continue + + play_from.append(line_name) + line_id = self._get_line_id(html, vid, line_name) + + ep_matches = re.findall(rf']*>.*?([^<]+)', html, re.S | re.I) + eps = [f"{ep_name.strip()}${vid}-{line_id}-{ep_num.strip()}" for ep_num, ep_name in ep_matches] + play_url.append("#".join(eps)) + + return play_from, play_url + + def _get_line_id(self, html, vid, line_name): + line_id_match = re.search(rf']*href="/play/{vid}-(\d+)-1/"[^>]*>.*?{re.escape(line_name)}', html, re.S | re.I) + if line_id_match: + return line_id_match.group(1) + + line_id_map = {"全球3线": "3", "大陆0线": "1", "大陆3线": "4", "大陆5线": "2", "大陆6线": "3"} + return line_id_map.get(line_name, "1") + + def _extract_title(self, html): + title_match = re.search(r'', html, re.S | re.I) + year = year_match.group(1) if year_match else "未知年份" + + area_match = re.search(r'', html, re.S | re.I) + area = area_match.group(1) if area_match else "未知产地" + + type_match = re.search(r'vod_class":"([^"]+)"', html, re.S | re.I) + type_str = type_match.group(1).replace(",", "/") if type_match else "未知类型" + + return f"{year} | {area} | {type_str}" + +# 本地测试 +if __name__ == "__main__": + spider = Spider() + spider.init() + + # 测试详情页解析 + detail_result = spider.detailContent(["86027"]) + if detail_result['list']: + detail = detail_result['list'][0] + print(f"视频名称: {detail.get('vod_name', '未知')}") + + # 测试搜索功能 + search_result = spider.searchContent("仙逆", False, 1) + print(f"搜索结果数量: {len(search_result['list'])}") + + # 测试播放功能 + play_result = spider.playerContent("", "86027-5-1", {}) + print(f"播放URL: {play_result.get('url', '')}") diff --git a/FGBLH/py/禁片天堂.py b/FGBLH/py/禁片天堂.py new file mode 100644 index 00000000..a6b31c4d --- /dev/null +++ b/FGBLH/py/禁片天堂.py @@ -0,0 +1,304 @@ +# -*- coding: utf-8 -*- + +import sys +import urllib.parse +import re +from lxml import etree + +sys.path.append('..') +from base.spider import Spider + + +class Spider(Spider): + def getName(self): + return "禁片天堂" + + def init(self, extend): + pass + + def homeContent(self, filter): + cateManual = { + "中文": "278", + "巨乳": "15", + "熟女": "95", + "騎乘位": "74", + "口交": "34", + "癡女": "75", + "潮吹": "32", + "企劃片": "84", + "美尻": "156", + "打手槍": "98", + "戲劇、連續劇": "58", + "制服": "19", + "美腿": "157", + "舔鮑": "122", + "美乳": "166", + "搭訕": "12", + "妄想族": "184", + "第一人稱視點": "167", + "媽媽系": "193", + "人妻・主婦": "26", + "多種職業": "84", + "羞辱": "163", + "女教師": "131", + "淫語": "151", + "肉感": "136", + "愛美臀": "111", + "背後位": "178", + "調教": "395", + "處男": "23", + "護士": "283", + "修長": "147", + "露內褲": "169", + "絲襪": "115", + "愛巨乳": "200", + "眼鏡": "290", + "超乳": "211", + "顏面騎乘": "263", + "惡作劇": "145", + "義母": "144", + "淫亂・過激系": "63", + "愛美腿": "11", + "爆乳": "483", + "女上司": "137", + "正太": "415", + "穿衣幹砲": "179", + "緊身皮衣": "304", + "學園": "421", + "空姐": "132", + "粉絲感謝祭": "190", + "背面騎乗位": "646", + "秘書": "363", + "女主播": "106", + "反向搭訕": "305", + "健身教練": "233", + "部下・同僚": "150", + "舞蹈": "130", + "緊身衣激凸": "321", + "3D影片": "508", + "早洩": "403" + } + result = {'class': [{'type_name': k, 'type_id': v} for k, v in cateManual.items()]} + return result + + def homeVideoContent(self): + return {} + + def categoryContent(self, tid, pg, filter, extend): + result = {} + url = f'https://jptt.tv/tag_list?tid={tid}&idx={pg}' + try: + rsp = self.fetch(url) + root = etree.HTML(rsp.text) + videos = root.xpath('//div[contains(@class,"oneVideo")]') + vodList = [] + for video in videos: + try: + name_elements = video.xpath('.//h3/text()') + if not name_elements: + continue + name = name_elements[0].strip() + + img_elements = video.xpath('.//img/@src') + if not img_elements: + continue + img = img_elements[0] + if not img.startswith('http'): + img = 'https://jptt.tv' + img + + desc_elements = video.xpath('.//p[contains(@class,"p_duration")]/text()') + desc = desc_elements[0].strip() if desc_elements else '' + + link_elements = video.xpath('.//a/@href') + if not link_elements: + continue + link = link_elements[0] + + vodList.append({ + "vod_name": name, + "vod_pic": img, + "vod_remarks": desc, + "vod_id": link + }) + except Exception as e: + print(f"[categoryContent video parse error]: {e}") + continue + + result['list'] = vodList + result['page'] = pg + result['pagecount'] = 9999 + result['limit'] = 90 + result['total'] = 999999 + except Exception as e: + print(f"[categoryContent fetch error]: {e}") + result['list'] = [] + result['page'] = pg + result['pagecount'] = 0 + result['limit'] = 0 + result['total'] = 0 + return result + + def detailContent(self, array): + tid = array[0] + url = tid if tid.startswith('http') else f'https://jptt.tv{tid}' + try: + rsp = self.fetch(url) + root = etree.HTML(rsp.text) + + title_elements = root.xpath('//h1[@class="h1_title"]/text()') + title = title_elements[0].strip() if title_elements else "未知标题" + + pic_elements = root.xpath('//video/@poster') + pic = pic_elements[0] if pic_elements else "" + if pic and not pic.startswith('http'): + pic = 'https://jptt.tv' + pic + + desc_elements = root.xpath('//div[contains(@class,"info_original")]//p/text()') + desc = desc_elements[0].strip() if desc_elements else title + + play_url = self.extractVideoUrl(rsp.text) + + vod = { + "vod_id": tid, + "vod_name": title, + "vod_pic": pic, + "vod_content": desc, + "vod_play_from": "注意身体", + "vod_play_url": "多看少打卡$" + play_url + } + return {'list': [vod]} + except Exception as e: + print(f"[detailContent error]: {e}") + return {'list': []} + + def extractVideoUrl(self, html): + try: + source_match = re.search(r' 1: + url = f"{self.host}/vodtype/{tid}-{pg}.html" + + response = self.fetch_with_encoding(url) + doc = self.getpq(response.text) + + videos = [] + seen_ids = set() + # 修复:精准选择器 + video_boxes = doc('.public-list-box.public-pic-b').items() + for box in video_boxes: + link = box.find('a.public-list-exp') + if not link: + continue + vod_href = link.attr('href') + vod_id = re.search(r'/voddetail/(\d+)\.html', vod_href) + if not vod_id or vod_id.group(1) in seen_ids: + continue + vod_id = vod_id.group(1) + seen_ids.add(vod_id) + + img = link.find('img') + # --- 修复标题:优先使用 a 标签的 title 属性或文本 --- + vod_title = self.fix_encoding( + link.attr('title') or + link.text().strip() or + img.attr('alt') or "" + ) + # --- 修复封面图:优先使用 data-src --- + vod_pic = urljoin(self.host, img.attr('data-src') or img.attr('src') or "") + vod_remarks = self.fix_encoding(box.find('.public-prt, .public-list-prb').text().strip() or "") + + if vod_title: + videos.append({ + 'vod_id': vod_id, + 'vod_name': vod_title, + 'vod_pic': vod_pic, + 'vod_year': '', + 'vod_remarks': vod_remarks + }) + + result = { + 'list': videos, + 'page': pg, + 'pagecount': 9999, + 'limit': 80, + 'total': 999999 + } + return result + except Exception as e: + self.log(f"获取分类内容时出错: {e}") + return {'list': [], 'page': pg, 'pagecount': 1, 'limit': 80, 'total': 0} + + def detailContent(self, ids): + """获取视频详情,修复播放源显示问题""" + result = {"list": []} + if not ids or len(ids) == 0: + return result + vod_id = ids[0] + + try: + # 先访问详情页获取基本信息 + detail_url = f"{self.host}/voddetail/{vod_id}.html" + response = self.fetch_with_encoding(detail_url) + doc = self.getpq(response.text) + + vod_info = { + "vod_id": vod_id, + "vod_name": self.fix_encoding(doc('h1.player-title-link').text().strip()), + # --- 修复封面图:优先使用 data-src --- + "vod_pic": urljoin(self.host, doc('.role-card img').attr('data-src') or doc('.role-card img').attr('src') or ""), + "vod_year": self.fix_encoding(doc('.player-details a[href*="2025"]').text().strip() or doc('.player-details li:contains("年份")').text().split(':')[-1].strip()), + "vod_remarks": self.fix_encoding(doc('.co3').text().strip() or "7.7分"), + "vod_actor": self.fix_encoding(doc('.vod_data').attr('vod_actor') if doc('.vod_data') else ""), + "vod_director": self.fix_encoding(doc('.vod_data').attr('vod_director') if doc('.vod_data') else ""), + "vod_content": self.fix_encoding(doc('.card-text').text().strip()), + "vod_play_from": "", + "vod_play_url": "" + } + + # 尝试获取播放页URL + play_page_url = None + play_link = doc('.anthology-list-play a:first').attr('href') + if play_link: + play_page_url = urljoin(self.host, play_link) + + # 如果无法获取播放页URL,使用默认URL + if not play_page_url: + play_page_url = f"{self.host}/vodplay/{vod_id}-1-1.html" + + # 访问播放页获取播放源信息 + play_response = self.fetch_with_encoding(play_page_url) + play_doc = self.getpq(play_response.text) + + # 存储所有线路信息 + all_sources_data = {} # {source_name: [episode1$url1, episode2$url2], ...} + + # --- 解析所有播放源 --- + # 查找播放源选项卡 + tab_items = play_doc('a.vod-playerUrl[data-form]').items() + + for tab in tab_items: + data_form = tab.attr('data-form') + source_name = self.fix_encoding(tab.text().replace('', '').strip()) + + # 标准化线路名称 + display_source_name = self.source_map.get(data_form, source_name) + + # 查找对应的播放列表 + episodes = [] + # 获取当前选项卡的索引 + tab_index = list(play_doc('a.vod-playerUrl[data-form]')).index(tab[0]) + + # 找到对应的剧集列表 + episode_boxes = play_doc('.anthology-list-box').eq(tab_index) + episode_links = episode_boxes.find('a').items() + + for ep in episode_links: + ep_title = self.fix_encoding(ep.text().strip()) + ep_href = ep.attr('href') + if ep_title and ep_href: + # 为每个播放源生成不同的URL(根据data-form参数) + full_href = urljoin(self.host, ep_href) + # 添加播放源标识到URL + if '?' in full_href: + full_href += f'&source={data_form}' + else: + full_href += f'?source={data_form}' + episodes.append(f"{ep_title}${full_href}") + + if episodes: + all_sources_data[display_source_name] = '#'.join(episodes) + + # --- 排序和优先使用YZ源 --- + final_play_from = [] + final_play_url = [] + + yz_source_name = "超清YZ源" + if yz_source_name in all_sources_data: + final_play_from.append(yz_source_name) + final_play_url.append(all_sources_data.pop(yz_source_name)) + + for src_name, src_urls in all_sources_data.items(): + final_play_from.append(src_name) + final_play_url.append(src_urls) + + if not final_play_from: + default_ep = play_doc('.anthology-list-play a:first').attr('href') + if default_ep: + final_play_from.append("默认源") + final_play_url.append(f"正片${urljoin(self.host, default_ep)}") + + vod_info["vod_play_from"] = "$$$".join(final_play_from) + vod_info["vod_play_url"] = "$$$".join(final_play_url) + + result["list"].append(vod_info) + return result + except Exception as e: + self.log(f"获取视频详情时出错: {e}") + return {'list': []} + + def searchContent(self, key, quick, pg="1"): + """搜索功能 - 带验证码处理""" + result = {"list": [], "page": int(pg)} + + try: + # 编码搜索关键词 + encoded_key = quote(key) + search_url = f"{self.host}/vodsearch/-------------.html?wd={encoded_key}" + + if int(pg) > 1: + search_url = f"{self.host}/vodsearch/-------------.html?wd={encoded_key}&page={pg}" + + # 添加随机延迟,避免被识别为爬虫 + time.sleep(random.uniform(1.0, 2.5)) + + # 使用更真实的浏览器头 + headers = self.headers.copy() + headers.update({ + 'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8', + 'Accept-Language': 'zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2', + 'Connection': 'keep-alive', + 'Upgrade-Insecure-Requests': '1', + 'Cache-Control': 'max-age=0', + 'TE': 'Trailers' + }) + + response = self.fetch(search_url, headers=headers, timeout=15) + + # 检查是否被重定向到验证码页面 + if response.url and "captcha" in response.url.lower(): + self.log("检测到验证码页面,尝试绕过...") + # 尝试使用不同的方法绕过验证码 + return self.handle_captcha_search(key, pg) + + # 检查响应内容是否包含验证码提示 + html_content = response.text + if "验证码" in html_content or "captcha" in html_content.lower(): + self.log("页面包含验证码提示,尝试绕过...") + return self.handle_captcha_search(key, pg) + + # 正常解析搜索结果 + doc = self.getpq(html_content) + + # 多种选择器尝试获取结果 + selectors = [ + '.public-list-box', + '.public-pic-b', + '.public-list-div', + '.vod-item', + '.search-result-item', + '[class*="vod"]' + ] + + videos = [] + seen_ids = set() + + for selector in selectors: + items = doc(selector) + if items.length > 0: + for item in items.items(): + try: + link = item.find('a[href*="/voddetail/"]').first() + if not link: + continue + + vod_href = link.attr('href') + if not vod_href: + continue + + vod_id_match = re.search(r'/voddetail/(\d+)\.html', vod_href) + if not vod_id_match: + continue + + vod_id = vod_id_match.group(1) + if vod_id in seen_ids: + continue + + seen_ids.add(vod_id) + + # 提取标题 + title_selectors = [ + '.time-title', '.vod-name', '.title', + 'img[alt]', '[title]', 'h3', 'h4' + ] + + vod_title = "" + for title_sel in title_selectors: + title_elem = item.find(title_sel).first() + if title_elem: + title_text = title_elem.attr('title') or title_elem.attr('alt') or title_elem.text() + if title_text and len(title_text.strip()) > 0: + vod_title = self.fix_encoding(title_text.strip()) + break + + if not vod_title: + continue + + # 提取封面 + img = item.find('img').first() + vod_pic = img.attr('data-src') or img.attr('src') or "" + if vod_pic and not vod_pic.startswith(('http://', 'https://')): + vod_pic = urljoin(self.host, vod_pic) + + # 提取备注 + remark_selectors = ['.public-prt', '.public-list-prb', '.remark', '.episode'] + vod_remarks = "" + for remark_sel in remark_selectors: + remark_elem = item.find(remark_sel).first() + if remark_elem: + remark_text = remark_elem.text() + if remark_text and len(remark_text.strip()) > 0: + vod_remarks = self.fix_encoding(remark_text.strip()) + break + + videos.append({ + "vod_id": vod_id, + "vod_name": vod_title, + "vod_pic": vod_pic, + "vod_year": "", + "vod_remarks": vod_remarks + }) + except: + continue + + if videos: + break + + result["list"] = videos + self.log(f"搜索 '{key}' 找到 {len(videos)} 个结果") + + except Exception as e: + self.log(f"搜索失败: {str(e)}") + # 尝试备用搜索方法 + try: + return self.backupSearch(key, pg) + except Exception as backup_error: + self.log(f"备用搜索也失败: {str(backup_error)}") + + return result + + def handle_captcha_search(self, key, pg): + """处理验证码的搜索方法""" + result = {"list": [], "page": int(pg)} + + try: + # 方法1: 尝试使用不同的User-Agent + encoded_key = quote(key) + search_url = f"{self.host}/vodsearch/-------------.html?wd={encoded_key}" + + if int(pg) > 1: + search_url = f"{self.host}/vodsearch/-------------.html?wd={encoded_key}&page={pg}" + + # 尝试不同的User-Agent + for ua in self.ua_list: + try: + headers = { + 'User-Agent': ua, + 'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8', + 'Accept-Language': 'zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2', + 'Connection': 'keep-alive', + 'Upgrade-Insecure-Requests': '1', + 'Cache-Control': 'max-age=0' + } + + time.sleep(random.uniform(2.0, 4.0)) + response = self.fetch(search_url, headers=headers, timeout=15) + + # 检查是否仍然有验证码 + html_content = response.text + if "验证码" not in html_content and "captcha" not in html_content.lower(): + # 解析搜索结果 + doc = self.getpq(html_content) + videos = [] + seen_ids = set() + + # 简化选择器 + items = doc('.public-list-box, .public-pic-b, .public-list-div') + for item in items.items(): + link = item.find('a[href*="/voddetail/"]').first() + if not link: + continue + + vod_href = link.attr('href') + vod_id_match = re.search(r'/voddetail/(\d+)\.html', vod_href) + if not vod_id_match: + continue + + vod_id = vod_id_match.group(1) + if vod_id in seen_ids: + continue + + seen_ids.add(vod_id) + + # 提取标题 + vod_title = self.fix_encoding( + link.attr('title') or + item.find('.time-title').text() or + item.find('img').attr('alt') or + link.text() or "" + ).strip() + + if not vod_title: + continue + + # 提取封面 + img = item.find('img').first() + vod_pic = img.attr('data-src') or img.attr('src') or "" + if vod_pic and not vod_pic.startswith(('http://', 'https://')): + vod_pic = urljoin(self.host, vod_pic) + + videos.append({ + "vod_id": vod_id, + "vod_name": vod_title, + "vod_pic": vod_pic, + "vod_year": "", + "vod_remarks": "" + }) + + result["list"] = videos + self.log(f"使用备用UA成功搜索 '{key}',找到 {len(videos)} 个结果") + return result + + except Exception as e: + self.log(f"使用UA {ua[:30]}... 搜索失败: {str(e)}") + continue + + # 如果所有方法都失败,返回空结果 + self.log("所有绕过验证码的方法都失败了") + + except Exception as e: + self.log(f"验证码处理失败: {str(e)}") + + return result + + def backupSearch(self, key, pg): + """备用搜索方法 - 使用更简单的选择器""" + result = {"list": [], "page": int(pg)} + + try: + encoded_key = quote(key) + search_url = f"{self.host}/vodsearch/-------------.html?wd={encoded_key}" + + response = self.fetch_with_encoding(search_url) + html_content = response.text + + # 使用正则表达式提取搜索结果 + pattern = r']*>(.*?)' + matches = re.findall(pattern, html_content, re.DOTALL) + + seen_ids = set() + for href, content in matches: + vod_id_match = re.search(r'/voddetail/(\d+)\.html', href) + if not vod_id_match: + continue + + vod_id = vod_id_match.group(1) + if vod_id in seen_ids: + continue + + seen_ids.add(vod_id) + + # 提取标题 + title_match = re.search(r']*alt="([^"]*)"', content) + if not title_match: + title_match = re.search(r'title="([^"]*)"', content) + if not title_match: + # 尝试从链接内容提取文本 + text_match = re.search(r'>([^<]+)<', content) + if text_match: + vod_title = text_match.group(1).strip() + else: + continue + else: + vod_title = title_match.group(1) + + vod_title = self.fix_encoding(vod_title) + if not vod_title: + continue + + # 提取封面图 + img_match = re.search(r']*src="([^"]*)"', content) + vod_pic = img_match.group(1) if img_match else "" + if vod_pic and not vod_pic.startswith(('http://', 'https://')): + vod_pic = urljoin(self.host, vod_pic) + + result["list"].append({ + "vod_id": vod_id, + "vod_name": vod_title, + "vod_pic": vod_pic, + "vod_year": "", + "vod_remarks": "" + }) + + except Exception as e: + self.log(f"备用搜索失败: {str(e)}") + + return result + + def playerContent(self, flag, id, vipFlags): + """播放地址解析 - 终极修复版""" + try: + play_page_url = urljoin(self.host, id) + if not play_page_url.startswith(('http://', 'https://')): + self.log(f"无效播放地址: {id}") + return {"parse": 1, "url": "", "header": self.headers} + + response = self.fetch_with_encoding(play_page_url) + html_content = response.text + + # --- 核心:提取播放器配置 --- + player_match = re.search(r'var\s+player_aaaa\s*=\s*({[^}]+?url\s*:\s*["\'][^"\']+["\'][^}]*})', html_content, re.DOTALL) + if not player_match: + self.log("未找到播放器配置脚本 player_aaaa") + return {"parse": 1, "url": play_page_url, "header": self.headers} + + player_json_str = player_match.group(1) + # 修复可能的JSON格式问题(尾部逗号) + player_json_str = re.sub(r',\s*([}\]])', r'\1', player_json_str) + + try: + player_data = json.loads(player_json_str) + except json.JSONDecodeError as e: + self.log(f"解析播放器 JSON 失败: {str(e)}") + return {"parse": 1, "url": play_page_url, "header": self.headers} + + # --- 提取主播放地址和备用地址 --- + main_url = player_data.get("url", "").strip() + backup_url = player_data.get("url_next", "").strip() + + # URL解码 + if '%' in main_url: + main_url = unquote(main_url) + if '%' in backup_url: + backup_url = unquote(backup_url) + + self.log(f"[修复版] 提取的主播放地址: {main_url}") + self.log(f"[修复版] 提取的备用播放地址: {backup_url}") + + # --- 极简播放逻辑:谁有效播谁 --- + # 优先使用主地址 + if main_url and self.isVideoFormat(main_url): + return { + "parse": 0, # 0 = 直接播放 + "url": main_url, + "header": { + "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.110 Safari/537.36", + "Referer": play_page_url, # ⚠️ 关键!必须添加 Referer + "Origin": self.host.rstrip('/') + } + } + # 主地址无效,尝试备用地址 + elif backup_url and self.isVideoFormat(backup_url): + return { + "parse": 0, + "url": backup_url, + "header": { + "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.110 Safari/537.36", + "Referer": play_page_url, # ⚠️ 关键!必须添加 Referer + "Origin": self.host.rstrip('/') + } + } + + # --- 万不得已的兜底方案 --- + self.log("未能提取有效视频地址,返回播放页") + return { + "parse": 1, + "url": play_page_url, + "header": self.headers + } + + except Exception as e: + self.log(f"播放地址解析异常: {str(e)}") + return { + "parse": 1, + "url": urljoin(self.host, id), + "header": self.headers + } + + def localProxy(self, param): + pass diff --git a/catvod/douer/index.config.js b/catvod/douer/index.config.js index 5b37b971..5d70723b 100644 --- a/catvod/douer/index.config.js +++ b/catvod/douer/index.config.js @@ -203,11 +203,10 @@ var index_config_default = { }, live2vod: { sources: [ - { name: "IPTV", url: "https://ipv.qq1000.site/IPTV.txt", img: "" }, + { name: "YueChan", url: "https://raw.githubusercontent.com/YueChan/Live/refs/heads/main/GNTV.m3u", img: "" }, + { name: "IPTV", url: "https://raw.githubusercontent.com/develop202/migu_video/refs/heads/main/interface.txt", img: "" }, + { name: "IPTV虏", url: "http://82.156.243.185:33389/fwc.m3u", img: "" }, { name: "鑼冩槑鏄�", url: "https://cdn.jsdelivr.net/gh/fanmingming/live@refs/heads/main/tv/m3u/ipv6.m3u", img: "" }, - { name: "鐢佃", url: "https://tv.iill.top/m3u/Gather", img: "" }, - { name: "缃戠粶", url: "https://m.iill.top/Live.m3u", img: "" }, - { name: "浣撹偛", url: "https://tv.iill.top/m3u/Sport", img: "" }, { name: "鍝斿摡", url: "https://sub.ottiptv.cc/bililive.m3u", img: "" }, { name: "铏庣墮", url: "https://sub.ottiptv.cc/huyayqk.m3u", img: "" }, { name: "鏂楅奔", url: "https://sub.ottiptv.cc/douyuyqk.m3u", img: "" }, diff --git a/catvod/douer/index.config.js.md5 b/catvod/douer/index.config.js.md5 index 05a1d78f..19c05c24 100644 --- a/catvod/douer/index.config.js.md5 +++ b/catvod/douer/index.config.js.md5 @@ -1 +1 @@ -F92DAB5031F9909DCADE09D37F3A4702 \ No newline at end of file +6EFBA40D37A3ADC8B0D85930F07D7E08 \ No newline at end of file diff --git a/catvod/douer/index.js b/catvod/douer/index.js index d58e644f..67e0f10a 100644 --- a/catvod/douer/index.js +++ b/catvod/douer/index.js @@ -4,7 +4,7 @@ globalThis.websiteBundle = function() { (function() { const exports = {}; const module = { exports }; - ${"var pi=Object.create;var Ot=Object.defineProperty,mi=Object.defineProperties,gi=Object.getOwnPropertyDescriptor,xi=Object.getOwnPropertyDescriptors,hi=Object.getOwnPropertyNames,Kt=Object.getOwnPropertySymbols,bi=Object.getPrototypeOf,Wn=Object.prototype.hasOwnProperty,zr=Object.prototype.propertyIsEnumerable;var $r=(e,t,n)=>t in e?Ot(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,S=(e,t)=>{for(var n in t||(t={}))Wn.call(t,n)&&$r(e,n,t[n]);if(Kt)for(var n of Kt(t))zr.call(t,n)&&$r(e,n,t[n]);return e},B=(e,t)=>mi(e,xi(t));var Gn=(e,t)=>{var n={};for(var o in e)Wn.call(e,o)&&t.indexOf(o)<0&&(n[o]=e[o]);if(e!=null&&Kt)for(var o of Kt(e))t.indexOf(o)<0&&zr.call(e,o)&&(n[o]=e[o]);return n};var je=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),yi=(e,t)=>{for(var n in t)Ot(e,n,{get:t[n],enumerable:!0})},qr=(e,t,n,o)=>{if(t&&typeof t==\"object\"||typeof t==\"function\")for(let a of hi(t))!Wn.call(e,a)&&a!==n&&Ot(e,a,{get:()=>t[a],enumerable:!(o=gi(t,a))||o.enumerable});return e};var Y=(e,t,n)=>(n=e!=null?pi(bi(e)):{},qr(t||!e||!e.__esModule?Ot(n,\"default\",{value:e,enumerable:!0}):n,e)),vi=e=>qr(Ot({},\"__esModule\",{value:!0}),e);var Q=je((Bd,Hr)=>{Hr.exports=window.React});var Yn=je(($d,jr)=>{jr.exports=window.ReactDOM});var Ur=je(Kn=>{\"use strict\";var Vr=Yn();Kn.createRoot=Vr.createRoot,Kn.hydrateRoot=Vr.hydrateRoot;var zd});var Gr=je((Hd,Wr)=>{Wr.exports=window.antd});var Kr=je((jd,Yr)=>{Yr.exports=window.axios});var Zr=je((Vd,Xr)=>{Xr.exports=function(){var e=document.getSelection();if(!e.rangeCount)return function(){};for(var t=document.activeElement,n=[],o=0;o{\"use strict\";var wi=Zr(),Jr={\"text/plain\":\"Text\",\"text/html\":\"Url\",default:\"Text\"},Ci=\"Copy to clipboard: #{key}, Enter\";function Si(e){var t=(/mac os x/i.test(navigator.userAgent)?\"\\u2318\":\"Ctrl\")+\"+C\";return e.replace(/#{\\s*key\\s*}/g,t)}function Oi(e,t){var n,o,a,i,l,u,c=!1;t||(t={}),n=t.debug||!1;try{a=wi(),i=document.createRange(),l=document.getSelection(),u=document.createElement(\"span\"),u.textContent=e,u.ariaHidden=\"true\",u.style.all=\"unset\",u.style.position=\"fixed\",u.style.top=0,u.style.clip=\"rect(0, 0, 0, 0)\",u.style.whiteSpace=\"pre\",u.style.webkitUserSelect=\"text\",u.style.MozUserSelect=\"text\",u.style.msUserSelect=\"text\",u.style.userSelect=\"text\",u.addEventListener(\"copy\",function(m){if(m.stopPropagation(),t.format)if(m.preventDefault(),typeof m.clipboardData>\"u\"){n&&console.warn(\"unable to use e.clipboardData\"),n&&console.warn(\"trying IE specific stuff\"),window.clipboardData.clearData();var d=Jr[t.format]||Jr.default;window.clipboardData.setData(d,e)}else m.clipboardData.clearData(),m.clipboardData.setData(t.format,e);t.onCopy&&(m.preventDefault(),t.onCopy(m.clipboardData))}),document.body.appendChild(u),i.selectNodeContents(u),l.addRange(i);var f=document.execCommand(\"copy\");if(!f)throw new Error(\"copy command was unsuccessful\");c=!0}catch(m){n&&console.error(\"unable to copy using execCommand: \",m),n&&console.warn(\"trying IE specific stuff\");try{window.clipboardData.setData(t.format||\"text\",e),t.onCopy&&t.onCopy(window.clipboardData),c=!0}catch(d){n&&console.error(\"unable to copy using clipboardData: \",d),n&&console.error(\"falling back to prompt\"),o=Si(\"message\"in t?t.message:Ci),window.prompt(o,e)}}finally{l&&(typeof l.removeRange==\"function\"?l.removeRange(i):l.removeAllRanges()),u&&document.body.removeChild(u),a()}return c}Qr.exports=Oi});var lo=je((gu,Qt)=>{(function(){\"use strict\";var e={}.hasOwnProperty;function t(){for(var a=\"\",i=0;iMd});module.exports=vi(Pd);var r=Y(Q(),1),ii=Y(Ur(),1),s=Y(Gr(),1),bt=Y(Kr(),1),Mr=Y(Rr(),1);var eo=Y(Q()),ki=(0,eo.createContext)({}),Xt=ki;function K(){return K=Object.assign?Object.assign.bind():function(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,o=Array(t);nparseFloat(a));for(let a=0;a<3;a+=1)o[a]=t(o[a]||0,n[a]||\"\",a);return n[3]?o[3]=n[3].includes(\"%\")?o[3]/100:o[3]:o[3]=1,o}var uo=(e,t,n)=>n===0?e:e/100;function kt(e,t){let n=t||255;return e>n?n:e<0?0:e}var Ye=class e{constructor(t){re(this,\"isValid\",!0),re(this,\"r\",0),re(this,\"g\",0),re(this,\"b\",0),re(this,\"a\",1),re(this,\"_h\",void 0),re(this,\"_s\",void 0),re(this,\"_l\",void 0),re(this,\"_v\",void 0),re(this,\"_max\",void 0),re(this,\"_min\",void 0),re(this,\"_brightness\",void 0);function n(o){return o[0]in t&&o[1]in t&&o[2]in t}if(t)if(typeof t==\"string\"){let a=function(i){return o.startsWith(i)},o=t.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(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=kt(t.r),this.g=kt(t.g),this.b=kt(t.b),this.a=typeof t.a==\"number\"?kt(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(i){let l=i/255;return l<=.03928?l/12.92:Math.pow((l+.055)/1.055,2.4)}let n=t(this.r),o=t(this.g),a=t(this.b);return .2126*n+.7152*o+.0722*a}getHue(){if(typeof this._h>\"u\"){let t=this.getMax()-this.getMin();t===0?this._h=0:this._h=oe(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(),o=this.getSaturation(),a=this.getLightness()-t/100;return a<0&&(a=0),this._c({h:n,s:o,l:a,a:this.a})}lighten(t=10){let n=this.getHue(),o=this.getSaturation(),a=this.getLightness()+t/100;return a>1&&(a=1),this._c({h:n,s:o,l:a,a:this.a})}mix(t,n=50){let o=this._c(t),a=n/100,i=u=>(o[u]-this[u])*a+this[u],l={r:oe(i(\"r\")),g:oe(i(\"g\")),b:oe(i(\"b\")),a:oe(i(\"a\")*100)/100};return this._c(l)}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),o=this.a+n.a*(1-this.a),a=i=>oe((this[i]*this.a+n[i]*n.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(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 o=(this.g||0).toString(16);t+=o.length===2?o:\"0\"+o;let a=(this.b||0).toString(16);if(t+=a.length===2?a:\"0\"+a,typeof this.a==\"number\"&&this.a>=0&&this.a<1){let i=oe(this.a*255).toString(16);t+=i.length===2?i:\"0\"+i}return t}toHsl(){return{h:this.getHue(),s:this.getSaturation(),l:this.getLightness(),a:this.a}}toHslString(){let t=this.getHue(),n=oe(this.getSaturation()*100),o=oe(this.getLightness()*100);return this.a!==1?\"hsla(\".concat(t,\",\").concat(n,\"%,\").concat(o,\"%,\").concat(this.a,\")\"):\"hsl(\".concat(t,\",\").concat(n,\"%,\").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(t,n,o){let a=this.clone();return a[t]=kt(n,o),a}_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 o(a,i){return parseInt(n[a]+n[i||a],16)}n.length<6?(this.r=o(0),this.g=o(1),this.b=o(2),this.a=n[3]?o(3)/255:1):(this.r=o(0,1),this.g=o(2,3),this.b=o(4,5),this.a=n[6]?o(6,7)/255:1)}fromHsl({h:t,s:n,l:o,a}){if(this._h=t%360,this._s=n,this._l=o,this.a=typeof a==\"number\"?a:1,n<=0){let g=oe(o*255);this.r=g,this.g=g,this.b=g}let i=0,l=0,u=0,c=t/60,f=(1-Math.abs(2*o-1))*n,m=f*(1-Math.abs(c%2-1));c>=0&&c<1?(i=f,l=m):c>=1&&c<2?(i=m,l=f):c>=2&&c<3?(l=f,u=m):c>=3&&c<4?(l=m,u=f):c>=4&&c<5?(i=m,u=f):c>=5&&c<6&&(i=f,u=m);let d=o-f/2;this.r=oe((i+d)*255),this.g=oe((l+d)*255),this.b=oe((u+d)*255)}fromHsv({h:t,s:n,v:o,a}){this._h=t%360,this._s=n,this._v=o,this.a=typeof a==\"number\"?a:1;let i=oe(o*255);if(this.r=i,this.g=i,this.b=i,n<=0)return;let l=t/60,u=Math.floor(l),c=l-u,f=oe(o*(1-n)*255),m=oe(o*(1-n*c)*255),d=oe(o*(1-n*(1-c))*255);switch(u){case 0:this.g=d,this.b=f;break;case 1:this.r=m,this.b=f;break;case 2:this.r=f,this.b=d;break;case 3:this.r=f,this.g=m;break;case 4:this.r=d,this.g=f;break;case 5:default:this.g=f,this.b=m;break}}fromHsvString(t){let n=Zn(t,uo);this.fromHsv({h:n[0],s:n[1],v:n[2],a:n[3]})}fromHslString(t){let n=Zn(t,uo);this.fromHsl({h:n[0],s:n[1],l:n[2],a:n[3]})}fromRgbString(t){let n=Zn(t,(o,a)=>a.includes(\"%\")?oe(o/100*255):o);this.r=n[0],this.g=n[1],this.b=n[2],this.a=n[3]}};var Rt=2,co=.16,Ti=.05,Ei=.05,Fi=.15,go=5,xo=4,Ii=[{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 fo(e,t,n){var o;return Math.round(e.h)>=60&&Math.round(e.h)<=240?o=n?Math.round(e.h)-Rt*t:Math.round(e.h)+Rt*t:o=n?Math.round(e.h)+Rt*t:Math.round(e.h)-Rt*t,o<0?o+=360:o>=360&&(o-=360),o}function po(e,t,n){if(e.h===0&&e.s===0)return e.s;var o;return n?o=e.s-co*t:t===xo?o=e.s+co:o=e.s+Ti*t,o>1&&(o=1),n&&t===go&&o>.1&&(o=.1),o<.06&&(o=.06),Math.round(o*100)/100}function mo(e,t,n){var o;return n?o=e.v+Ei*t:o=e.v-Fi*t,o=Math.max(0,Math.min(1,o)),Math.round(o*100)/100}function en(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=[],o=new Ye(e),a=o.toHsv(),i=go;i>0;i-=1){var l=new Ye({h:fo(a,i,!0),s:po(a,i,!0),v:mo(a,i,!0)});n.push(l)}n.push(o);for(var u=1;u<=xo;u+=1){var c=new Ye({h:fo(a,u),s:po(a,u),v:mo(a,u)});n.push(c)}return t.theme===\"dark\"?Ii.map(function(f){var m=f.index,d=f.amount;return new Ye(t.backgroundColor||\"#141414\").mix(n[m],d).toHexString()}):n.map(function(f){return f.toHexString()})}var ho=[\"#fff1f0\",\"#ffccc7\",\"#ffa39e\",\"#ff7875\",\"#ff4d4f\",\"#f5222d\",\"#cf1322\",\"#a8071a\",\"#820014\",\"#5c0011\"];ho.primary=ho[5];var bo=[\"#fff2e8\",\"#ffd8bf\",\"#ffbb96\",\"#ff9c6e\",\"#ff7a45\",\"#fa541c\",\"#d4380d\",\"#ad2102\",\"#871400\",\"#610b00\"];bo.primary=bo[5];var yo=[\"#fff7e6\",\"#ffe7ba\",\"#ffd591\",\"#ffc069\",\"#ffa940\",\"#fa8c16\",\"#d46b08\",\"#ad4e00\",\"#873800\",\"#612500\"];yo.primary=yo[5];var vo=[\"#fffbe6\",\"#fff1b8\",\"#ffe58f\",\"#ffd666\",\"#ffc53d\",\"#faad14\",\"#d48806\",\"#ad6800\",\"#874d00\",\"#613400\"];vo.primary=vo[5];var wo=[\"#feffe6\",\"#ffffb8\",\"#fffb8f\",\"#fff566\",\"#ffec3d\",\"#fadb14\",\"#d4b106\",\"#ad8b00\",\"#876800\",\"#614700\"];wo.primary=wo[5];var Co=[\"#fcffe6\",\"#f4ffb8\",\"#eaff8f\",\"#d3f261\",\"#bae637\",\"#a0d911\",\"#7cb305\",\"#5b8c00\",\"#3f6600\",\"#254000\"];Co.primary=Co[5];var So=[\"#f6ffed\",\"#d9f7be\",\"#b7eb8f\",\"#95de64\",\"#73d13d\",\"#52c41a\",\"#389e0d\",\"#237804\",\"#135200\",\"#092b00\"];So.primary=So[5];var Oo=[\"#e6fffb\",\"#b5f5ec\",\"#87e8de\",\"#5cdbd3\",\"#36cfc9\",\"#13c2c2\",\"#08979c\",\"#006d75\",\"#00474f\",\"#002329\"];Oo.primary=Oo[5];var tn=[\"#e6f4ff\",\"#bae0ff\",\"#91caff\",\"#69b1ff\",\"#4096ff\",\"#1677ff\",\"#0958d9\",\"#003eb3\",\"#002c8c\",\"#001d66\"];tn.primary=tn[5];var ko=[\"#f0f5ff\",\"#d6e4ff\",\"#adc6ff\",\"#85a5ff\",\"#597ef7\",\"#2f54eb\",\"#1d39c4\",\"#10239e\",\"#061178\",\"#030852\"];ko.primary=ko[5];var To=[\"#f9f0ff\",\"#efdbff\",\"#d3adf7\",\"#b37feb\",\"#9254de\",\"#722ed1\",\"#531dab\",\"#391085\",\"#22075e\",\"#120338\"];To.primary=To[5];var Eo=[\"#fff0f6\",\"#ffd6e7\",\"#ffadd2\",\"#ff85c0\",\"#f759ab\",\"#eb2f96\",\"#c41d7f\",\"#9e1068\",\"#780650\",\"#520339\"];Eo.primary=Eo[5];var Fo=[\"#a6a6a6\",\"#999999\",\"#8c8c8c\",\"#808080\",\"#737373\",\"#666666\",\"#404040\",\"#1a1a1a\",\"#000000\",\"#000000\"];Fo.primary=Fo[5];var Io=[\"#2a1215\",\"#431418\",\"#58181c\",\"#791a1f\",\"#a61d24\",\"#d32029\",\"#e84749\",\"#f37370\",\"#f89f9a\",\"#fac8c3\"];Io.primary=Io[5];var Do=[\"#2b1611\",\"#441d12\",\"#592716\",\"#7c3118\",\"#aa3e19\",\"#d84a1b\",\"#e87040\",\"#f3956a\",\"#f8b692\",\"#fad4bc\"];Do.primary=Do[5];var No=[\"#2b1d11\",\"#442a11\",\"#593815\",\"#7c4a15\",\"#aa6215\",\"#d87a16\",\"#e89a3c\",\"#f3b765\",\"#f8cf8d\",\"#fae3b7\"];No.primary=No[5];var Ao=[\"#2b2111\",\"#443111\",\"#594214\",\"#7c5914\",\"#aa7714\",\"#d89614\",\"#e8b339\",\"#f3cc62\",\"#f8df8b\",\"#faedb5\"];Ao.primary=Ao[5];var _o=[\"#2b2611\",\"#443b11\",\"#595014\",\"#7c6e14\",\"#aa9514\",\"#d8bd14\",\"#e8d639\",\"#f3ea62\",\"#f8f48b\",\"#fafab5\"];_o.primary=_o[5];var Mo=[\"#1f2611\",\"#2e3c10\",\"#3e4f13\",\"#536d13\",\"#6f9412\",\"#8bbb11\",\"#a9d134\",\"#c9e75d\",\"#e4f88b\",\"#f0fab5\"];Mo.primary=Mo[5];var Po=[\"#162312\",\"#1d3712\",\"#274916\",\"#306317\",\"#3c8618\",\"#49aa19\",\"#6abe39\",\"#8fd460\",\"#b2e58b\",\"#d5f2bb\"];Po.primary=Po[5];var Lo=[\"#112123\",\"#113536\",\"#144848\",\"#146262\",\"#138585\",\"#13a8a8\",\"#33bcb7\",\"#58d1c9\",\"#84e2d8\",\"#b2f1e8\"];Lo.primary=Lo[5];var Bo=[\"#111a2c\",\"#112545\",\"#15325b\",\"#15417e\",\"#1554ad\",\"#1668dc\",\"#3c89e8\",\"#65a9f3\",\"#8dc5f8\",\"#b7dcfa\"];Bo.primary=Bo[5];var $o=[\"#131629\",\"#161d40\",\"#1c2755\",\"#203175\",\"#263ea0\",\"#2b4acb\",\"#5273e0\",\"#7f9ef3\",\"#a8c1f8\",\"#d2e0fa\"];$o.primary=$o[5];var zo=[\"#1a1325\",\"#24163a\",\"#301c4d\",\"#3e2069\",\"#51258f\",\"#642ab5\",\"#854eca\",\"#ab7ae0\",\"#cda8f0\",\"#ebd7fa\"];zo.primary=zo[5];var qo=[\"#291321\",\"#40162f\",\"#551c3b\",\"#75204f\",\"#a02669\",\"#cb2b83\",\"#e0529c\",\"#f37fb7\",\"#f8a8cc\",\"#fad2e3\"];qo.primary=qo[5];var Ho=[\"#151515\",\"#1f1f1f\",\"#2d2d2d\",\"#393939\",\"#494949\",\"#5a5a5a\",\"#6a6a6a\",\"#7b7b7b\",\"#888888\",\"#969696\"];Ho.primary=Ho[5];function jo(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,o)}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):Di}function er(e){if(e.attachTo)return e.attachTo;var t=document.querySelector(\"head\");return t||document.body}function Ni(e){return e===\"queue\"?\"prependQueue\":e?\"prepend\":\"append\"}function tr(e){return Array.from((Rn.get(e)||e).children).filter(function(t){return t.tagName===\"STYLE\"})}function Go(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!Jn())return null;var n=t.csp,o=t.prepend,a=t.priority,i=a===void 0?0:a,l=Ni(o),u=l===\"prependQueue\",c=document.createElement(\"style\");c.setAttribute(Vo,l),u&&i&&c.setAttribute(Uo,\"\".concat(i)),n!=null&&n.nonce&&(c.nonce=n==null?void 0:n.nonce),c.innerHTML=e;var f=er(t),m=f.firstChild;if(o){if(u){var d=(t.styles||tr(f)).filter(function(g){if(![\"prepend\",\"prependQueue\"].includes(g.getAttribute(Vo)))return!1;var p=Number(g.getAttribute(Uo)||0);return i>=p});if(d.length)return f.insertBefore(c,d[d.length-1].nextSibling),c}f.insertBefore(c,m)}else f.appendChild(c);return c}function Ai(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=er(t);return(t.styles||tr(n)).find(function(o){return o.getAttribute(Wo(t))===e})}function _i(e,t){var n=Rn.get(e);if(!n||!Qn(document,n)){var o=Go(\"\",t),a=o.parentNode;Rn.set(e,a),e.removeChild(o)}}function Yo(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},o=er(n),a=tr(o),i=he(he({},n),{},{styles:a});_i(o,i);var l=Ai(t,i);if(l){var u,c;if((u=i.csp)!==null&&u!==void 0&&u.nonce&&l.nonce!==((c=i.csp)===null||c===void 0?void 0:c.nonce)){var f;l.nonce=(f=i.csp)===null||f===void 0?void 0:f.nonce}return l.innerHTML!==e&&(l.innerHTML=e),l}var m=Go(e,i);return m.setAttribute(Wo(i),t),m}function Ko(e){var t;return e==null||(t=e.getRootNode)===null||t===void 0?void 0:t.call(e)}function Mi(e){return Ko(e)instanceof ShadowRoot}function Xo(e){return Mi(e)?Ko(e):null}var nr={},Pi=[],Li=function(t){Pi.push(t)};function Bi(e,t){if(0)var n}function $i(e,t){if(0)var n}function zi(){nr={}}function Zo(e,t,n){!t&&!nr[n]&&(e(!1,n),nr[n]=!0)}function nn(e,t){Zo(Bi,e,t)}function qi(e,t){Zo($i,e,t)}nn.preMessage=Li;nn.resetWarned=zi;nn.noteOnce=qi;var Jo=nn;var Ke=Y(Q());function Hi(e){return e.replace(/-(.)/g,function(t,n){return n.toUpperCase()})}function Ro(e,t){Jo(e,\"[@ant-design/icons] \".concat(t))}function rr(e){return Ae(e)===\"object\"&&typeof e.name==\"string\"&&typeof e.theme==\"string\"&&(Ae(e.icon)===\"object\"||typeof e.icon==\"function\")}function Qo(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return Object.keys(e).reduce(function(t,n){var o=e[n];switch(n){case\"class\":t.className=o,delete t.class;break;default:delete t[n],t[Hi(n)]=o}return t},{})}function rn(e,t,n){return n?Ke.default.createElement(e.tag,he(he({key:t},Qo(e.attrs)),n),(e.children||[]).map(function(o,a){return rn(o,\"\".concat(t,\"-\").concat(e.tag,\"-\").concat(a))})):Ke.default.createElement(e.tag,he({key:t},Qo(e.attrs)),(e.children||[]).map(function(o,a){return rn(o,\"\".concat(t,\"-\").concat(e.tag,\"-\").concat(a))}))}function or(e){return en(e)[0]}function on(e){return e?Array.isArray(e)?e:[e]:[]}var ji=\"\\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\",ea=function(t){var n=(0,Ke.useContext)(Xt),o=n.csp,a=n.prefixCls,i=n.layer,l=ji;a&&(l=l.replace(/anticon/g,a)),i&&(l=\"@layer \".concat(i,\" {\\n\").concat(l,\"\\n}\")),(0,Ke.useEffect)(function(){var u=t.current,c=Xo(u);Yo(l,\"@ant-design-icons\",{prepend:!i,csp:o,attachTo:c})},[])};var Vi=[\"icon\",\"className\",\"onClick\",\"style\",\"primaryColor\",\"secondaryColor\"],Tt={primaryColor:\"#333\",secondaryColor:\"#E6E6E6\",calculated:!1};function Ui(e){var t=e.primaryColor,n=e.secondaryColor;Tt.primaryColor=t,Tt.secondaryColor=n||or(t),Tt.calculated=!!n}function Wi(){return he({},Tt)}var an=function(t){var n=t.icon,o=t.className,a=t.onClick,i=t.style,l=t.primaryColor,u=t.secondaryColor,c=Jt(t,Vi),f=ta.useRef(),m=Tt;if(l&&(m={primaryColor:l,secondaryColor:u||or(l)}),ea(f),Ro(rr(n),\"icon should be icon definiton, but got \".concat(n)),!rr(n))return null;var d=n;return d&&typeof d.icon==\"function\"&&(d=he(he({},d),{},{icon:d.icon(m.primaryColor,m.secondaryColor)})),rn(d.icon,\"svg-\".concat(d.name),he(he({className:o,onClick:a,style:i,\"data-icon\":d.name,width:\"1em\",height:\"1em\",fill:\"currentColor\",\"aria-hidden\":\"true\"},c),{},{ref:f}))};an.displayName=\"IconReact\";an.getTwoToneColors=Wi;an.setTwoToneColors=Ui;var Et=an;function ar(e){var t=on(e),n=Zt(t,2),o=n[0],a=n[1];return Et.setTwoToneColors({primaryColor:o,secondaryColor:a})}function na(){var e=Et.getTwoToneColors();return e.calculated?[e.primaryColor,e.secondaryColor]:e.primaryColor}var Gi=[\"className\",\"icon\",\"spin\",\"rotate\",\"tabIndex\",\"onClick\",\"twoToneColor\"];ar(tn.primary);var sn=Xe.forwardRef(function(e,t){var n=e.className,o=e.icon,a=e.spin,i=e.rotate,l=e.tabIndex,u=e.onClick,c=e.twoToneColor,f=Jt(e,Gi),m=Xe.useContext(Xt),d=m.prefixCls,g=d===void 0?\"anticon\":d,p=m.rootClassName,v=(0,ra.default)(p,g,re(re({},\"\".concat(g,\"-\").concat(o.name),!!o.name),\"\".concat(g,\"-spin\"),!!a||o.name===\"loading\"),n),y=l;y===void 0&&u&&(y=-1);var k=i?{msTransform:\"rotate(\".concat(i,\"deg)\"),transform:\"rotate(\".concat(i,\"deg)\")}:void 0,E=on(c),w=Zt(E,2),F=w[0],_=w[1];return Xe.createElement(\"span\",K({role:\"img\",\"aria-label\":o.name},f,{ref:t,tabIndex:y,onClick:u,className:v}),Xe.createElement(Et,{icon:o,primaryColor:F,secondaryColor:_,style:k}))});sn.displayName=\"AntdIcon\";sn.getTwoToneColor=na;sn.setTwoToneColor=ar;var Z=sn;var ln=Y(Q());var Yi={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\"},oa=Yi;var Ki=function(t,n){return ln.createElement(Z,K({},t,{ref:n,icon:oa}))},Xi=ln.forwardRef(Ki),dn=Xi;var un=Y(Q());var Zi={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\"},aa=Zi;var Ji=function(t,n){return un.createElement(Z,K({},t,{ref:n,icon:aa}))},Qi=un.forwardRef(Ji),ir=Qi;var cn=Y(Q());var Ri={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\"},ia=Ri;var es=function(t,n){return cn.createElement(Z,K({},t,{ref:n,icon:ia}))},ts=cn.forwardRef(es),ct=ts;var fn=Y(Q());var ns={icon:{tag:\"svg\",attrs:{\"fill-rule\":\"evenodd\",viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M880 912H144c-17.7 0-32-14.3-32-32V144c0-17.7 14.3-32 32-32h360c4.4 0 8 3.6 8 8v56c0 4.4-3.6 8-8 8H184v656h656V520c0-4.4 3.6-8 8-8h56c4.4 0 8 3.6 8 8v360c0 17.7-14.3 32-32 32zM770.87 199.13l-52.2-52.2a8.01 8.01 0 014.7-13.6l179.4-21c5.1-.6 9.5 3.7 8.9 8.9l-21 179.4c-.8 6.6-8.9 9.4-13.6 4.7l-52.4-52.4-256.2 256.2a8.03 8.03 0 01-11.3 0l-42.4-42.4a8.03 8.03 0 010-11.3l256.1-256.3z\"}}]},name:\"export\",theme:\"outlined\"},sa=ns;var rs=function(t,n){return fn.createElement(Z,K({},t,{ref:n,icon:sa}))},os=fn.forwardRef(rs),sr=os;var pn=Y(Q());var as={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M300 276.5a56 56 0 1056-97 56 56 0 00-56 97zm0 284a56 56 0 1056-97 56 56 0 00-56 97zM640 228a56 56 0 10112 0 56 56 0 00-112 0zm0 284a56 56 0 10112 0 56 56 0 00-112 0zM300 844.5a56 56 0 1056-97 56 56 0 00-56 97zM640 796a56 56 0 10112 0 56 56 0 00-112 0z\"}}]},name:\"holder\",theme:\"outlined\"},la=as;var is=function(t,n){return pn.createElement(Z,K({},t,{ref:n,icon:la}))},ss=pn.forwardRef(is),lr=ss;var mn=Y(Q());var ls={icon:{tag:\"svg\",attrs:{\"fill-rule\":\"evenodd\",viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M880 912H144c-17.7 0-32-14.3-32-32V144c0-17.7 14.3-32 32-32h360c4.4 0 8 3.6 8 8v56c0 4.4-3.6 8-8 8H184v656h656V520c0-4.4 3.6-8 8-8h56c4.4 0 8 3.6 8 8v360c0 17.7-14.3 32-32 32zM653.3 424.6l52.2 52.2a8.01 8.01 0 01-4.7 13.6l-179.4 21c-5.1.6-9.5-3.7-8.9-8.9l21-179.4c.8-6.6 8.9-9.4 13.6-4.7l52.4 52.4 256.2-256.2c3.1-3.1 8.2-3.1 11.3 0l42.4 42.4c3.1 3.1 3.1 8.2 0 11.3L653.3 424.6z\"}}]},name:\"import\",theme:\"outlined\"},da=ls;var ds=function(t,n){return mn.createElement(Z,K({},t,{ref:n,icon:da}))},us=mn.forwardRef(ds),dr=us;var gn=Y(Q());var cs={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\"},ua=cs;var fs=function(t,n){return gn.createElement(Z,K({},t,{ref:n,icon:ua}))},ps=gn.forwardRef(fs),ur=ps;var xn=Y(Q());var ms={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\"},ca=ms;var gs=function(t,n){return xn.createElement(Z,K({},t,{ref:n,icon:ca}))},xs=xn.forwardRef(gs),Ze=xs;var hn=Y(Q());var hs={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\"},fa=hs;var bs=function(t,n){return hn.createElement(Z,K({},t,{ref:n,icon:fa}))},ys=hn.forwardRef(bs),be=ys;var bn=Y(Q());var vs={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\"},pa=vs;var ws=function(t,n){return bn.createElement(Z,K({},t,{ref:n,icon:pa}))},Cs=bn.forwardRef(ws),yn=Cs;var vn=Y(Q());var Ss={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\"},ma=Ss;var Os=function(t,n){return vn.createElement(Z,K({},t,{ref:n,icon:ma}))},ks=vn.forwardRef(Os),cr=ks;var x=Y(Q()),nt=Y(Yn());var R=Y(Q());function xa(){for(var e=arguments.length,t=new Array(e),n=0;no=>{t.forEach(a=>a(o))},t)}var Ft=typeof window<\"u\"&&typeof window.document<\"u\"&&typeof window.document.createElement<\"u\";function Je(e){let t=Object.prototype.toString.call(e);return t===\"[object Window]\"||t===\"[object global]\"}function wn(e){return\"nodeType\"in e}function pe(e){var t,n;return e?Je(e)?e:wn(e)&&(t=(n=e.ownerDocument)==null?void 0:n.defaultView)!=null?t:window:window}function Cn(e){let{Document:t}=pe(e);return e instanceof t}function ft(e){return Je(e)?!1:e instanceof pe(e).HTMLElement}function pr(e){return e instanceof pe(e).SVGElement}function Qe(e){return e?Je(e)?e.document:wn(e)?Cn(e)?e:ft(e)||pr(e)?e.ownerDocument:document:document:document}var ye=Ft?R.useLayoutEffect:R.useEffect;function Sn(e){let t=(0,R.useRef)(e);return ye(()=>{t.current=e}),(0,R.useCallback)(function(){for(var n=arguments.length,o=new Array(n),a=0;a{e.current=setInterval(o,a)},[]),n=(0,R.useCallback)(()=>{e.current!==null&&(clearInterval(e.current),e.current=null)},[]);return[t,n]}function pt(e,t){t===void 0&&(t=[e]);let n=(0,R.useRef)(e);return ye(()=>{n.current!==e&&(n.current=e)},t),n}function mt(e,t){let n=(0,R.useRef)();return(0,R.useMemo)(()=>{let o=e(n.current);return n.current=o,o},[...t])}function It(e){let t=Sn(e),n=(0,R.useRef)(null),o=(0,R.useCallback)(a=>{a!==n.current&&(t==null||t(a,n.current)),n.current=a},[]);return[n,o]}function On(e){let t=(0,R.useRef)();return(0,R.useEffect)(()=>{t.current=e},[e]),t.current}var fr={};function Re(e,t){return(0,R.useMemo)(()=>{if(t)return t;let n=fr[e]==null?0:fr[e]+1;return fr[e]=n,e+\"-\"+n},[e,t])}function ba(e){return function(t){for(var n=arguments.length,o=new Array(n>1?n-1:0),a=1;a{let u=Object.entries(l);for(let[c,f]of u){let m=i[c];m!=null&&(i[c]=m+e*f)}return i},S({},t))}}var et=ba(1),gt=ba(-1);function Ts(e){return\"clientX\"in e&&\"clientY\"in e}function Dt(e){if(!e)return!1;let{KeyboardEvent:t}=pe(e.target);return t&&e instanceof t}function Es(e){if(!e)return!1;let{TouchEvent:t}=pe(e.target);return t&&e instanceof t}function Nt(e){if(Es(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 Ts(e)?{x:e.clientX,y:e.clientY}:null}var Ve=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[Ve.Translate.toString(e),Ve.Scale.toString(e)].join(\" \")}},Transition:{toString(e){let{property:t,duration:n,easing:o}=e;return t+\" \"+n+\"ms \"+o}}}),ga=\"a,frame,iframe,input:not([type=hidden]):not(:disabled),select:not(:disabled),textarea:not(:disabled),button:not(:disabled),*[tabindex]\";function ya(e){return e.matches(ga)?e:e.querySelector(ga)}var tt=Y(Q()),Fs={display:\"none\"};function va(e){let{id:t,value:n}=e;return tt.default.createElement(\"div\",{id:t,style:Fs},n)}function wa(e){let{id:t,announcement:n,ariaLiveType:o=\"assertive\"}=e,a={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 tt.default.createElement(\"div\",{id:t,style:a,role:\"status\",\"aria-live\":o,\"aria-atomic\":!0},n)}function Ca(){let[e,t]=(0,tt.useState)(\"\");return{announce:(0,tt.useCallback)(o=>{o!=null&&t(o)},[]),announcement:e}}var _a=(0,x.createContext)(null);function Is(e){let t=(0,x.useContext)(_a);(0,x.useEffect)(()=>{if(!t)throw new Error(\"useDndMonitor must be used within a children of \");return t(e)},[e,t])}function Ds(){let[e]=(0,x.useState)(()=>new Set),t=(0,x.useCallback)(o=>(e.add(o),()=>e.delete(o)),[e]);return[(0,x.useCallback)(o=>{let{type:a,event:i}=o;e.forEach(l=>{var u;return(u=l[a])==null?void 0:u.call(l,i)})},[e]),t]}var Ns={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 \"},As={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 _s(e){let{announcements:t=As,container:n,hiddenTextDescribedById:o,screenReaderInstructions:a=Ns}=e,{announce:i,announcement:l}=Ca(),u=Re(\"DndLiveRegion\"),[c,f]=(0,x.useState)(!1);if((0,x.useEffect)(()=>{f(!0)},[]),Is((0,x.useMemo)(()=>({onDragStart(d){let{active:g}=d;i(t.onDragStart({active:g}))},onDragMove(d){let{active:g,over:p}=d;t.onDragMove&&i(t.onDragMove({active:g,over:p}))},onDragOver(d){let{active:g,over:p}=d;i(t.onDragOver({active:g,over:p}))},onDragEnd(d){let{active:g,over:p}=d;i(t.onDragEnd({active:g,over:p}))},onDragCancel(d){let{active:g,over:p}=d;i(t.onDragCancel({active:g,over:p}))}}),[i,t])),!c)return null;let m=x.default.createElement(x.default.Fragment,null,x.default.createElement(va,{id:o,value:a.draggable}),x.default.createElement(wa,{id:u,announcement:l}));return n?(0,nt.createPortal)(m,n):m}var te;(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\"})(te||(te={}));function Tn(){}function Lt(e,t){return(0,x.useMemo)(()=>({sensor:e,options:t!=null?t:{}}),[e,t])}function wr(){for(var e=arguments.length,t=new Array(e),n=0;n[...t].filter(o=>o!=null),[...t])}var Te=Object.freeze({x:0,y:0});function Ms(e,t){let{data:{value:n}}=e,{data:{value:o}}=t;return o-n}function Ma(e,t){if(!e||e.length===0)return null;let[n]=e;return t?n[t]:n}function Ps(e,t){let n=Math.max(t.top,e.top),o=Math.max(t.left,e.left),a=Math.min(t.left+t.width,e.left+e.width),i=Math.min(t.top+t.height,e.top+e.height),l=a-o,u=i-n;if(o{let{collisionRect:t,droppableRects:n,droppableContainers:o}=e,a=[];for(let i of o){let{id:l}=i,u=n.get(l);if(u){let c=Ps(u,t);c>0&&a.push({id:l,data:{droppableContainer:i,value:c}})}}return a.sort(Ms)};function Bs(e,t,n){return B(S({},e),{scaleX:t&&n?t.width/n.width:1,scaleY:t&&n?t.height/n.height:1})}function Pa(e,t){return e&&t?{x:e.left-t.left,y:e.top-t.top}:Te}function $s(e){return function(n){for(var o=arguments.length,a=new Array(o>1?o-1:0),i=1;iB(S({},l),{top:l.top+e*u.y,bottom:l.bottom+e*u.y,left:l.left+e*u.x,right:l.right+e*u.x}),S({},n))}}var zs=$s(1);function qs(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 Hs(e,t,n){let o=qs(t);if(!o)return e;let{scaleX:a,scaleY:i,x:l,y:u}=o,c=e.left-l-(1-a)*parseFloat(n),f=e.top-u-(1-i)*parseFloat(n.slice(n.indexOf(\" \")+1)),m=a?e.width/a:e.width,d=i?e.height/i:e.height;return{width:m,height:d,top:f,right:c+m,bottom:f+d,left:c}}var js={ignoreTransform:!1};function it(e,t){t===void 0&&(t=js);let n=e.getBoundingClientRect();if(t.ignoreTransform){let{transform:f,transformOrigin:m}=pe(e).getComputedStyle(e);f&&(n=Hs(n,f,m))}let{top:o,left:a,width:i,height:l,bottom:u,right:c}=n;return{top:o,left:a,width:i,height:l,bottom:u,right:c}}function Sa(e){return it(e,{ignoreTransform:!0})}function Vs(e){let t=e.innerWidth,n=e.innerHeight;return{top:0,left:0,right:t,bottom:n,width:t,height:n}}function Us(e,t){return t===void 0&&(t=pe(e).getComputedStyle(e)),t.position===\"fixed\"}function Ws(e,t){t===void 0&&(t=pe(e).getComputedStyle(e));let n=/(auto|scroll|overlay)/;return[\"overflow\",\"overflowX\",\"overflowY\"].some(a=>{let i=t[a];return typeof i==\"string\"?n.test(i):!1})}function In(e,t){let n=[];function o(a){if(t!=null&&n.length>=t||!a)return n;if(Cn(a)&&a.scrollingElement!=null&&!n.includes(a.scrollingElement))return n.push(a.scrollingElement),n;if(!ft(a)||pr(a)||n.includes(a))return n;let i=pe(e).getComputedStyle(a);return a!==e&&Ws(a,i)&&n.push(a),Us(a,i)?n:o(a.parentNode)}return e?o(e):n}function La(e){let[t]=In(e,1);return t!=null?t:null}function mr(e){return!Ft||!e?null:Je(e)?e:wn(e)?Cn(e)||e===Qe(e).scrollingElement?window:ft(e)?e:null:null}function Ba(e){return Je(e)?e.scrollX:e.scrollLeft}function $a(e){return Je(e)?e.scrollY:e.scrollTop}function hr(e){return{x:Ba(e),y:$a(e)}}var ae;(function(e){e[e.Forward=1]=\"Forward\",e[e.Backward=-1]=\"Backward\"})(ae||(ae={}));function za(e){return!Ft||!e?!1:e===document.scrollingElement}function qa(e){let t={x:0,y:0},n=za(e)?{height:window.innerHeight,width:window.innerWidth}:{height:e.clientHeight,width:e.clientWidth},o={x:e.scrollWidth-n.width,y:e.scrollHeight-n.height},a=e.scrollTop<=t.y,i=e.scrollLeft<=t.x,l=e.scrollTop>=o.y,u=e.scrollLeft>=o.x;return{isTop:a,isLeft:i,isBottom:l,isRight:u,maxScroll:o,minScroll:t}}var Gs={x:.2,y:.2};function Ys(e,t,n,o,a){let{top:i,left:l,right:u,bottom:c}=n;o===void 0&&(o=10),a===void 0&&(a=Gs);let{isTop:f,isBottom:m,isLeft:d,isRight:g}=qa(e),p={x:0,y:0},v={x:0,y:0},y={height:t.height*a.y,width:t.width*a.x};return!f&&i<=t.top+y.height?(p.y=ae.Backward,v.y=o*Math.abs((t.top+y.height-i)/y.height)):!m&&c>=t.bottom-y.height&&(p.y=ae.Forward,v.y=o*Math.abs((t.bottom-y.height-c)/y.height)),!g&&u>=t.right-y.width?(p.x=ae.Forward,v.x=o*Math.abs((t.right-y.width-u)/y.width)):!d&&l<=t.left+y.width&&(p.x=ae.Backward,v.x=o*Math.abs((t.left+y.width-l)/y.width)),{direction:p,speed:v}}function Ks(e){if(e===document.scrollingElement){let{innerWidth:i,innerHeight:l}=window;return{top:0,left:0,right:i,bottom:l,width:i,height:l}}let{top:t,left:n,right:o,bottom:a}=e.getBoundingClientRect();return{top:t,left:n,right:o,bottom:a,width:e.clientWidth,height:e.clientHeight}}function Ha(e){return e.reduce((t,n)=>et(t,hr(n)),Te)}function Xs(e){return e.reduce((t,n)=>t+Ba(n),0)}function Zs(e){return e.reduce((t,n)=>t+$a(n),0)}function Js(e,t){if(t===void 0&&(t=it),!e)return;let{top:n,left:o,bottom:a,right:i}=t(e);La(e)&&(a<=0||i<=0||n>=window.innerHeight||o>=window.innerWidth)&&e.scrollIntoView({block:\"center\",inline:\"center\"})}var Qs=[[\"x\",[\"left\",\"right\"],Xs],[\"y\",[\"top\",\"bottom\"],Zs]],_t=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 o=In(n),a=Ha(o);this.rect=S({},t),this.width=t.width,this.height=t.height;for(let[i,l,u]of Qs)for(let c of l)Object.defineProperty(this,c,{get:()=>{let f=u(o),m=a[i]-f;return this.rect[c]+m},enumerable:!0});Object.defineProperty(this,\"rect\",{enumerable:!1})}},rt=class{constructor(t){this.target=void 0,this.listeners=[],this.removeAll=()=>{this.listeners.forEach(n=>{var o;return(o=this.target)==null?void 0:o.removeEventListener(...n)})},this.target=t}add(t,n,o){var a;(a=this.target)==null||a.addEventListener(t,n,o),this.listeners.push([t,n,o])}};function Rs(e){let{EventTarget:t}=pe(e);return e instanceof t?e:Qe(e)}function gr(e,t){let n=Math.abs(e.x),o=Math.abs(e.y);return typeof t==\"number\"?Math.sqrt(n**2+o**2)>t:\"x\"in t&&\"y\"in t?n>t.x&&o>t.y:\"x\"in t?n>t.x:\"y\"in t?o>t.y:!1}var ve;(function(e){e.Click=\"click\",e.DragStart=\"dragstart\",e.Keydown=\"keydown\",e.ContextMenu=\"contextmenu\",e.Resize=\"resize\",e.SelectionChange=\"selectionchange\",e.VisibilityChange=\"visibilitychange\"})(ve||(ve={}));function Oa(e){e.preventDefault()}function el(e){e.stopPropagation()}var W;(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\"})(W||(W={}));var ja={start:[W.Space,W.Enter],cancel:[W.Esc],end:[W.Space,W.Enter,W.Tab]},tl=(e,t)=>{let{currentCoordinates:n}=t;switch(e.code){case W.Right:return B(S({},n),{x:n.x+25});case W.Left:return B(S({},n),{x:n.x-25});case W.Down:return B(S({},n),{y:n.y+25});case W.Up:return B(S({},n),{y:n.y-25})}},En=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 rt(Qe(n)),this.windowListeners=new rt(pe(n)),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleCancel=this.handleCancel.bind(this),this.attach()}attach(){this.handleStart(),this.windowListeners.add(ve.Resize,this.handleCancel),this.windowListeners.add(ve.VisibilityChange,this.handleCancel),setTimeout(()=>this.listeners.add(ve.Keydown,this.handleKeyDown))}handleStart(){let{activeNode:t,onStart:n}=this.props,o=t.node.current;o&&Js(o),n(Te)}handleKeyDown(t){if(Dt(t)){let{active:n,context:o,options:a}=this.props,{keyboardCodes:i=ja,coordinateGetter:l=tl,scrollBehavior:u=\"smooth\"}=a,{code:c}=t;if(i.end.includes(c)){this.handleEnd(t);return}if(i.cancel.includes(c)){this.handleCancel(t);return}let{collisionRect:f}=o.current,m=f?{x:f.left,y:f.top}:Te;this.referenceCoordinates||(this.referenceCoordinates=m);let d=l(t,{active:n,context:o.current,currentCoordinates:m});if(d){let g=gt(d,m),p={x:0,y:0},{scrollableAncestors:v}=o.current;for(let y of v){let k=t.code,{isTop:E,isRight:w,isLeft:F,isBottom:_,maxScroll:z,minScroll:H}=qa(y),h=Ks(y),C={x:Math.min(k===W.Right?h.right-h.width/2:h.right,Math.max(k===W.Right?h.left:h.left+h.width/2,d.x)),y:Math.min(k===W.Down?h.bottom-h.height/2:h.bottom,Math.max(k===W.Down?h.top:h.top+h.height/2,d.y))},L=k===W.Right&&!w||k===W.Left&&!F,M=k===W.Down&&!_||k===W.Up&&!E;if(L&&C.x!==d.x){let N=y.scrollLeft+g.x,j=k===W.Right&&N<=z.x||k===W.Left&&N>=H.x;if(j&&!g.y){y.scrollTo({left:N,behavior:u});return}j?p.x=y.scrollLeft-N:p.x=k===W.Right?y.scrollLeft-z.x:y.scrollLeft-H.x,p.x&&y.scrollBy({left:-p.x,behavior:u});break}else if(M&&C.y!==d.y){let N=y.scrollTop+g.y,j=k===W.Down&&N<=z.y||k===W.Up&&N>=H.y;if(j&&!g.x){y.scrollTo({top:N,behavior:u});return}j?p.y=y.scrollTop-N:p.y=k===W.Down?y.scrollTop-z.y:y.scrollTop-H.y,p.y&&y.scrollBy({top:-p.y,behavior:u});break}}this.handleMove(t,et(gt(d,this.referenceCoordinates),p))}}}handleMove(t,n){let{onMove:o}=this.props;t.preventDefault(),o(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()}};En.activators=[{eventName:\"onKeyDown\",handler:(e,t,n)=>{let{keyboardCodes:o=ja,onActivation:a}=t,{active:i}=n,{code:l}=e.nativeEvent;if(o.start.includes(l)){let u=i.activatorNode.current;return u&&e.target!==u?!1:(e.preventDefault(),a==null||a({event:e.nativeEvent}),!0)}return!1}}];function ka(e){return!!(e&&\"distance\"in e)}function Ta(e){return!!(e&&\"delay\"in e)}var Mt=class{constructor(t,n,o){var a;o===void 0&&(o=Rs(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:i}=t,{target:l}=i;this.props=t,this.events=n,this.document=Qe(l),this.documentListeners=new rt(this.document),this.listeners=new rt(o),this.windowListeners=new rt(pe(l)),this.initialCoordinates=(a=Nt(i))!=null?a:Te,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:o}}}=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(ve.Resize,this.handleCancel),this.windowListeners.add(ve.DragStart,Oa),this.windowListeners.add(ve.VisibilityChange,this.handleCancel),this.windowListeners.add(ve.ContextMenu,Oa),this.documentListeners.add(ve.Keydown,this.handleKeydown),n){if(o!=null&&o({event:this.props.event,activeNode:this.props.activeNode,options:this.props.options}))return this.handleStart();if(Ta(n)){this.timeoutId=setTimeout(this.handleStart,n.delay),this.handlePending(n);return}if(ka(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:o,onPending:a}=this.props;a(o,t,this.initialCoordinates,n)}handleStart(){let{initialCoordinates:t}=this,{onStart:n}=this.props;t&&(this.activated=!0,this.documentListeners.add(ve.Click,el,{capture:!0}),this.removeTextSelection(),this.documentListeners.add(ve.SelectionChange,this.removeTextSelection),n(t))}handleMove(t){var n;let{activated:o,initialCoordinates:a,props:i}=this,{onMove:l,options:{activationConstraint:u}}=i;if(!a)return;let c=(n=Nt(t))!=null?n:Te,f=gt(a,c);if(!o&&u){if(ka(u)){if(u.tolerance!=null&&gr(f,u.tolerance))return this.handleCancel();if(gr(f,u.distance))return this.handleStart()}if(Ta(u)&&gr(f,u.tolerance))return this.handleCancel();this.handlePending(u,f);return}t.cancelable&&t.preventDefault(),l(c)}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===W.Esc&&this.handleCancel()}removeTextSelection(){var t;(t=this.document.getSelection())==null||t.removeAllRanges()}},nl={cancel:{name:\"pointercancel\"},move:{name:\"pointermove\"},end:{name:\"pointerup\"}},at=class extends Mt{constructor(t){let{event:n}=t,o=Qe(n.target);super(t,nl,o)}};at.activators=[{eventName:\"onPointerDown\",handler:(e,t)=>{let{nativeEvent:n}=e,{onActivation:o}=t;return!n.isPrimary||n.button!==0?!1:(o==null||o({event:n}),!0)}}];var rl={move:{name:\"mousemove\"},end:{name:\"mouseup\"}},br;(function(e){e[e.RightClick=2]=\"RightClick\"})(br||(br={}));var yr=class extends Mt{constructor(t){super(t,rl,Qe(t.event.target))}};yr.activators=[{eventName:\"onMouseDown\",handler:(e,t)=>{let{nativeEvent:n}=e,{onActivation:o}=t;return n.button===br.RightClick?!1:(o==null||o({event:n}),!0)}}];var xr={cancel:{name:\"touchcancel\"},move:{name:\"touchmove\"},end:{name:\"touchend\"}},xt=class extends Mt{constructor(t){super(t,xr)}static setup(){return window.addEventListener(xr.move.name,t,{capture:!1,passive:!1}),function(){window.removeEventListener(xr.move.name,t)};function t(){}}};xt.activators=[{eventName:\"onTouchStart\",handler:(e,t)=>{let{nativeEvent:n}=e,{onActivation:o}=t,{touches:a}=n;return a.length>1?!1:(o==null||o({event:n}),!0)}}];var At;(function(e){e[e.Pointer=0]=\"Pointer\",e[e.DraggableRect=1]=\"DraggableRect\"})(At||(At={}));var Fn;(function(e){e[e.TreeOrder=0]=\"TreeOrder\",e[e.ReversedTreeOrder=1]=\"ReversedTreeOrder\"})(Fn||(Fn={}));function ol(e){let{acceleration:t,activator:n=At.Pointer,canScroll:o,draggingRect:a,enabled:i,interval:l=5,order:u=Fn.TreeOrder,pointerCoordinates:c,scrollableAncestors:f,scrollableAncestorRects:m,delta:d,threshold:g}=e,p=il({delta:d,disabled:!i}),[v,y]=ha(),k=(0,x.useRef)({x:0,y:0}),E=(0,x.useRef)({x:0,y:0}),w=(0,x.useMemo)(()=>{switch(n){case At.Pointer:return c?{top:c.y,bottom:c.y,left:c.x,right:c.x}:null;case At.DraggableRect:return a}},[n,a,c]),F=(0,x.useRef)(null),_=(0,x.useCallback)(()=>{let H=F.current;if(!H)return;let h=k.current.x*E.current.x,C=k.current.y*E.current.y;H.scrollBy(h,C)},[]),z=(0,x.useMemo)(()=>u===Fn.TreeOrder?[...f].reverse():f,[u,f]);(0,x.useEffect)(()=>{if(!i||!f.length||!w){y();return}for(let H of z){if((o==null?void 0:o(H))===!1)continue;let h=f.indexOf(H),C=m[h];if(!C)continue;let{direction:L,speed:M}=Ys(H,C,w,t,g);for(let N of[\"x\",\"y\"])p[N][L[N]]||(M[N]=0,L[N]=0);if(M.x>0||M.y>0){y(),F.current=H,v(_,l),k.current=M,E.current=L;return}}k.current={x:0,y:0},E.current={x:0,y:0},y()},[t,_,o,y,i,l,JSON.stringify(w),JSON.stringify(p),v,f,z,m,JSON.stringify(g)])}var al={x:{[ae.Backward]:!1,[ae.Forward]:!1},y:{[ae.Backward]:!1,[ae.Forward]:!1}};function il(e){let{delta:t,disabled:n}=e,o=On(t);return mt(a=>{if(n||!o||!a)return al;let i={x:Math.sign(t.x-o.x),y:Math.sign(t.y-o.y)};return{x:{[ae.Backward]:a.x[ae.Backward]||i.x===-1,[ae.Forward]:a.x[ae.Forward]||i.x===1},y:{[ae.Backward]:a.y[ae.Backward]||i.y===-1,[ae.Forward]:a.y[ae.Forward]||i.y===1}}},[n,t,o])}function sl(e,t){let n=t!=null?e.get(t):void 0,o=n?n.node.current:null;return mt(a=>{var i;return t==null?null:(i=o!=null?o:a)!=null?i:null},[o,t])}function ll(e,t){return(0,x.useMemo)(()=>e.reduce((n,o)=>{let{sensor:a}=o,i=a.activators.map(l=>({eventName:l.eventName,handler:t(l.handler,o)}));return[...n,...i]},[]),[e,t])}var Pt;(function(e){e[e.Always=0]=\"Always\",e[e.BeforeDragging=1]=\"BeforeDragging\",e[e.WhileDragging=2]=\"WhileDragging\"})(Pt||(Pt={}));var vr;(function(e){e.Optimized=\"optimized\"})(vr||(vr={}));var Ea=new Map;function dl(e,t){let{dragging:n,dependencies:o,config:a}=t,[i,l]=(0,x.useState)(null),{frequency:u,measure:c,strategy:f}=a,m=(0,x.useRef)(e),d=k(),g=pt(d),p=(0,x.useCallback)(function(E){E===void 0&&(E=[]),!g.current&&l(w=>w===null?E:w.concat(E.filter(F=>!w.includes(F))))},[g]),v=(0,x.useRef)(null),y=mt(E=>{if(d&&!n)return Ea;if(!E||E===Ea||m.current!==e||i!=null){let w=new Map;for(let F of e){if(!F)continue;if(i&&i.length>0&&!i.includes(F.id)&&F.rect.current){w.set(F.id,F.rect.current);continue}let _=F.node.current,z=_?new _t(c(_),_):null;F.rect.current=z,z&&w.set(F.id,z)}return w}return E},[e,i,n,d,c]);return(0,x.useEffect)(()=>{m.current=e},[e]),(0,x.useEffect)(()=>{d||p()},[n,d]),(0,x.useEffect)(()=>{i&&i.length>0&&l(null)},[JSON.stringify(i)]),(0,x.useEffect)(()=>{d||typeof u!=\"number\"||v.current!==null||(v.current=setTimeout(()=>{p(),v.current=null},u))},[u,d,p,...o]),{droppableRects:y,measureDroppableContainers:p,measuringScheduled:i!=null};function k(){switch(f){case Pt.Always:return!1;case Pt.BeforeDragging:return n;default:return!n}}}function Va(e,t){return mt(n=>e?n||(typeof t==\"function\"?t(e):e):null,[t,e])}function ul(e,t){return Va(e,t)}function cl(e){let{callback:t,disabled:n}=e,o=Sn(t),a=(0,x.useMemo)(()=>{if(n||typeof window>\"u\"||typeof window.MutationObserver>\"u\")return;let{MutationObserver:i}=window;return new i(o)},[o,n]);return(0,x.useEffect)(()=>()=>a==null?void 0:a.disconnect(),[a]),a}function Dn(e){let{callback:t,disabled:n}=e,o=Sn(t),a=(0,x.useMemo)(()=>{if(n||typeof window>\"u\"||typeof window.ResizeObserver>\"u\")return;let{ResizeObserver:i}=window;return new i(o)},[n]);return(0,x.useEffect)(()=>()=>a==null?void 0:a.disconnect(),[a]),a}function fl(e){return new _t(it(e),e)}function Fa(e,t,n){t===void 0&&(t=fl);let[o,a]=(0,x.useState)(null);function i(){a(c=>{if(!e)return null;if(e.isConnected===!1){var f;return(f=c!=null?c:n)!=null?f:null}let m=t(e);return JSON.stringify(c)===JSON.stringify(m)?c:m})}let l=cl({callback(c){if(e)for(let f of c){let{type:m,target:d}=f;if(m===\"childList\"&&d instanceof HTMLElement&&d.contains(e)){i();break}}}}),u=Dn({callback:i});return ye(()=>{i(),e?(u==null||u.observe(e),l==null||l.observe(document.body,{childList:!0,subtree:!0})):(u==null||u.disconnect(),l==null||l.disconnect())},[e]),o}function pl(e){let t=Va(e);return Pa(e,t)}var Ia=[];function ml(e){let t=(0,x.useRef)(e),n=mt(o=>e?o&&o!==Ia&&e&&t.current&&e.parentNode===t.current.parentNode?o:In(e):Ia,[e]);return(0,x.useEffect)(()=>{t.current=e},[e]),n}function gl(e){let[t,n]=(0,x.useState)(null),o=(0,x.useRef)(e),a=(0,x.useCallback)(i=>{let l=mr(i.target);l&&n(u=>u?(u.set(l,hr(l)),new Map(u)):null)},[]);return(0,x.useEffect)(()=>{let i=o.current;if(e!==i){l(i);let u=e.map(c=>{let f=mr(c);return f?(f.addEventListener(\"scroll\",a,{passive:!0}),[f,hr(f)]):null}).filter(c=>c!=null);n(u.length?new Map(u):null),o.current=e}return()=>{l(e),l(i)};function l(u){u.forEach(c=>{let f=mr(c);f==null||f.removeEventListener(\"scroll\",a)})}},[a,e]),(0,x.useMemo)(()=>e.length?t?Array.from(t.values()).reduce((i,l)=>et(i,l),Te):Ha(e):Te,[e,t])}function Da(e,t){t===void 0&&(t=[]);let n=(0,x.useRef)(null);return(0,x.useEffect)(()=>{n.current=null},t),(0,x.useEffect)(()=>{let o=e!==Te;o&&!n.current&&(n.current=e),!o&&n.current&&(n.current=null)},[e]),n.current?gt(e,n.current):Te}function xl(e){(0,x.useEffect)(()=>{if(!Ft)return;let t=e.map(n=>{let{sensor:o}=n;return o.setup==null?void 0:o.setup()});return()=>{for(let n of t)n==null||n()}},e.map(t=>{let{sensor:n}=t;return n}))}function hl(e,t){return(0,x.useMemo)(()=>e.reduce((n,o)=>{let{eventName:a,handler:i}=o;return n[a]=l=>{i(l,t)},n},{}),[e,t])}function Ua(e){return(0,x.useMemo)(()=>e?Vs(e):null,[e])}var Na=[];function bl(e,t){t===void 0&&(t=it);let[n]=e,o=Ua(n?pe(n):null),[a,i]=(0,x.useState)(Na);function l(){i(()=>e.length?e.map(c=>za(c)?o:new _t(t(c),c)):Na)}let u=Dn({callback:l});return ye(()=>{u==null||u.disconnect(),l(),e.forEach(c=>u==null?void 0:u.observe(c))},[e]),a}function yl(e){if(!e)return null;if(e.children.length>1)return e;let t=e.children[0];return ft(t)?t:e}function vl(e){let{measure:t}=e,[n,o]=(0,x.useState)(null),a=(0,x.useCallback)(f=>{for(let{target:m}of f)if(ft(m)){o(d=>{let g=t(m);return d?B(S({},d),{width:g.width,height:g.height}):g});break}},[t]),i=Dn({callback:a}),l=(0,x.useCallback)(f=>{let m=yl(f);i==null||i.disconnect(),m&&(i==null||i.observe(m)),o(m?t(m):null)},[t,i]),[u,c]=It(l);return(0,x.useMemo)(()=>({nodeRef:u,rect:n,setRef:c}),[n,u,c])}var wl=[{sensor:at,options:{}},{sensor:En,options:{}}],Cl={current:{}},kn={draggable:{measure:Sa},droppable:{measure:Sa,strategy:Pt.WhileDragging,frequency:vr.Optimized},dragOverlay:{measure:it}},ot=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,o;return(n=(o=this.get(t))==null?void 0:o.node.current)!=null?n:void 0}},Sl={activatorEvent:null,active:null,activeNode:null,activeNodeRect:null,collisions:null,containerNodeRect:null,draggableNodes:new Map,droppableRects:new Map,droppableContainers:new ot,over:null,dragOverlay:{nodeRef:{current:null},rect:null,setRef:Tn},scrollableAncestors:[],scrollableAncestorRects:[],measuringConfiguration:kn,measureDroppableContainers:Tn,windowRect:null,measuringScheduled:!1},Ol={activatorEvent:null,activators:[],active:null,activeNodeRect:null,ariaDescribedById:{draggable:\"\"},dispatch:Tn,draggableNodes:new Map,over:null,measureDroppableContainers:Tn},Nn=(0,x.createContext)(Ol),Wa=(0,x.createContext)(Sl);function kl(){return{draggable:{active:null,initialCoordinates:{x:0,y:0},nodes:new Map,translate:{x:0,y:0}},droppable:{containers:new ot}}}function Tl(e,t){switch(t.type){case te.DragStart:return B(S({},e),{draggable:B(S({},e.draggable),{initialCoordinates:t.initialCoordinates,active:t.active})});case te.DragMove:return e.draggable.active==null?e:B(S({},e),{draggable:B(S({},e.draggable),{translate:{x:t.coordinates.x-e.draggable.initialCoordinates.x,y:t.coordinates.y-e.draggable.initialCoordinates.y}})});case te.DragEnd:case te.DragCancel:return B(S({},e),{draggable:B(S({},e.draggable),{active:null,initialCoordinates:{x:0,y:0},translate:{x:0,y:0}})});case te.RegisterDroppable:{let{element:n}=t,{id:o}=n,a=new ot(e.droppable.containers);return a.set(o,n),B(S({},e),{droppable:B(S({},e.droppable),{containers:a})})}case te.SetDroppableDisabled:{let{id:n,key:o,disabled:a}=t,i=e.droppable.containers.get(n);if(!i||o!==i.key)return e;let l=new ot(e.droppable.containers);return l.set(n,B(S({},i),{disabled:a})),B(S({},e),{droppable:B(S({},e.droppable),{containers:l})})}case te.UnregisterDroppable:{let{id:n,key:o}=t,a=e.droppable.containers.get(n);if(!a||o!==a.key)return e;let i=new ot(e.droppable.containers);return i.delete(n),B(S({},e),{droppable:B(S({},e.droppable),{containers:i})})}default:return e}}function El(e){let{disabled:t}=e,{active:n,activatorEvent:o,draggableNodes:a}=(0,x.useContext)(Nn),i=On(o),l=On(n==null?void 0:n.id);return(0,x.useEffect)(()=>{if(!t&&!o&&i&&l!=null){if(!Dt(i)||document.activeElement===i.target)return;let u=a.get(l);if(!u)return;let{activatorNode:c,node:f}=u;if(!c.current&&!f.current)return;requestAnimationFrame(()=>{for(let m of[c.current,f.current]){if(!m)continue;let d=ya(m);if(d){d.focus();break}}})}},[o,t,a,l,i]),null}function Fl(e,t){let a=t,{transform:n}=a,o=Gn(a,[\"transform\"]);return e!=null&&e.length?e.reduce((i,l)=>l(S({transform:i},o)),n):n}function Il(e){return(0,x.useMemo)(()=>({draggable:S(S({},kn.draggable),e==null?void 0:e.draggable),droppable:S(S({},kn.droppable),e==null?void 0:e.droppable),dragOverlay:S(S({},kn.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 Dl(e){let{activeNode:t,measure:n,initialRect:o,config:a=!0}=e,i=(0,x.useRef)(!1),{x:l,y:u}=typeof a==\"boolean\"?{x:a,y:a}:a;ye(()=>{if(!l&&!u||!t){i.current=!1;return}if(i.current||!o)return;let f=t==null?void 0:t.node.current;if(!f||f.isConnected===!1)return;let m=n(f),d=Pa(m,o);if(l||(d.x=0),u||(d.y=0),i.current=!0,Math.abs(d.x)>0||Math.abs(d.y)>0){let g=La(f);g&&g.scrollBy({top:d.y,left:d.x})}},[t,l,u,o,n])}var Ga=(0,x.createContext)(B(S({},Te),{scaleX:1,scaleY:1})),Ue;(function(e){e[e.Uninitialized=0]=\"Uninitialized\",e[e.Initializing=1]=\"Initializing\",e[e.Initialized=2]=\"Initialized\"})(Ue||(Ue={}));var Cr=(0,x.memo)(function(t){var n,o,a,i;let O=t,{id:l,accessibility:u,autoScroll:c=!0,children:f,sensors:m=wl,collisionDetection:d=Ls,measuring:g,modifiers:p}=O,v=Gn(O,[\"id\",\"accessibility\",\"autoScroll\",\"children\",\"sensors\",\"collisionDetection\",\"measuring\",\"modifiers\"]),y=(0,x.useReducer)(Tl,void 0,kl),[k,E]=y,[w,F]=Ds(),[_,z]=(0,x.useState)(Ue.Uninitialized),H=_===Ue.Initialized,{draggable:{active:h,nodes:C,translate:L},droppable:{containers:M}}=k,N=h!=null?C.get(h):null,j=(0,x.useRef)({initial:null,translated:null}),ne=(0,x.useMemo)(()=>{var D;return h!=null?{id:h,data:(D=N==null?void 0:N.data)!=null?D:Cl,rect:j}:null},[h,N]),ie=(0,x.useRef)(null),[we,Ce]=(0,x.useState)(null),[J,Ee]=(0,x.useState)(null),ue=pt(v,Object.values(v)),T=Re(\"DndDescribedBy\",l),A=(0,x.useMemo)(()=>M.getEnabled(),[M]),$=Il(g),{droppableRects:U,measureDroppableContainers:me,measuringScheduled:Se}=dl(A,{dragging:H,dependencies:[L.x,L.y],config:$.droppable}),de=sl(C,h),Pe=(0,x.useMemo)(()=>J?Nt(J):null,[J]),Oe=b(),ge=ul(de,$.draggable.measure);Dl({activeNode:h!=null?C.get(h):null,config:Oe.layoutShiftCompensation,initialRect:ge,measure:$.draggable.measure});let q=Fa(de,$.draggable.measure,ge),We=Fa(de?de.parentElement:null),xe=(0,x.useRef)({activatorEvent:null,active:null,activeNode:de,collisionRect:null,collisions:null,droppableRects:U,draggableNodes:C,draggingNode:null,draggingNodeRect:null,droppableContainers:M,over:null,scrollableAncestors:[],scrollAdjustedTranslate:null}),Le=M.getNodeFor((n=xe.current.over)==null?void 0:n.id),ke=vl({measure:$.dragOverlay.measure}),Be=(o=ke.nodeRef.current)!=null?o:de,_e=H?(a=ke.rect)!=null?a:q:null,Ht=!!(ke.nodeRef.current&&ke.rect),jt=pl(Ht?null:q),yt=Ua(Be?pe(Be):null),Fe=ml(H?Le!=null?Le:de:null),lt=bl(Fe),dt=Fl(p,{transform:{x:L.x-jt.x,y:L.y-jt.y,scaleX:1,scaleY:1},activatorEvent:J,active:ne,activeNodeRect:q,containerNodeRect:We,draggingNodeRect:_e,over:xe.current.over,overlayNodeRect:ke.rect,scrollableAncestors:Fe,scrollableAncestorRects:lt,windowRect:yt}),Vt=Pe?et(Pe,L):null,Ut=gl(Fe),Bn=Da(Ut),$n=Da(Ut,[q]),$e=et(dt,Bn),ze=_e?zs(_e,dt):null,Ge=ne&&ze?d({active:ne,collisionRect:ze,droppableRects:U,droppableContainers:A,pointerCoordinates:Vt}):null,Wt=Ma(Ge,\"id\"),[Ie,Gt]=(0,x.useState)(null),zn=Ht?dt:et(dt,$n),qn=Bs(zn,(i=Ie==null?void 0:Ie.rect)!=null?i:null,q),vt=(0,x.useRef)(null),Yt=(0,x.useCallback)((D,P)=>{let{sensor:V,options:fe}=P;if(ie.current==null)return;let G=C.get(ie.current);if(!G)return;let se=D.nativeEvent,De=new V({active:ie.current,activeNode:G,event:se,options:fe,context:xe,onAbort(le){if(!C.get(le))return;let{onDragAbort:Ne}=ue.current,Me={id:le};Ne==null||Ne(Me),w({type:\"onDragAbort\",event:Me})},onPending(le,qe,Ne,Me){if(!C.get(le))return;let{onDragPending:Ct}=ue.current,He={id:le,constraint:qe,initialCoordinates:Ne,offset:Me};Ct==null||Ct(He),w({type:\"onDragPending\",event:He})},onStart(le){let qe=ie.current;if(qe==null)return;let Ne=C.get(qe);if(!Ne)return;let{onDragStart:Me}=ue.current,wt={activatorEvent:se,active:{id:qe,data:Ne.data,rect:j}};(0,nt.unstable_batchedUpdates)(()=>{Me==null||Me(wt),z(Ue.Initializing),E({type:te.DragStart,initialCoordinates:le,active:qe}),w({type:\"onDragStart\",event:wt}),Ce(vt.current),Ee(se)})},onMove(le){E({type:te.DragMove,coordinates:le})},onEnd:ut(te.DragEnd),onCancel:ut(te.DragCancel)});vt.current=De;function ut(le){return async function(){let{active:Ne,collisions:Me,over:wt,scrollAdjustedTranslate:Ct}=xe.current,He=null;if(Ne&&Ct){let{cancelDrop:St}=ue.current;He={activatorEvent:se,active:Ne,collisions:Me,delta:Ct,over:wt},le===te.DragEnd&&typeof St==\"function\"&&await Promise.resolve(St(He))&&(le=te.DragCancel)}ie.current=null,(0,nt.unstable_batchedUpdates)(()=>{E({type:le}),z(Ue.Uninitialized),Gt(null),Ce(null),Ee(null),vt.current=null;let St=le===te.DragEnd?\"onDragEnd\":\"onDragCancel\";if(He){let Un=ue.current[St];Un==null||Un(He),w({type:St,event:He})}})}}},[C]),Hn=(0,x.useCallback)((D,P)=>(V,fe)=>{let G=V.nativeEvent,se=C.get(fe);if(ie.current!==null||!se||G.dndKit||G.defaultPrevented)return;let De={active:se};D(V,P.options,De)===!0&&(G.dndKit={capturedBy:P.sensor},ie.current=fe,Yt(V,P))},[C,Yt]),ce=ll(m,Hn);xl(m),ye(()=>{q&&_===Ue.Initializing&&z(Ue.Initialized)},[q,_]),(0,x.useEffect)(()=>{let{onDragMove:D}=ue.current,{active:P,activatorEvent:V,collisions:fe,over:G}=xe.current;if(!P||!V)return;let se={active:P,activatorEvent:V,collisions:fe,delta:{x:$e.x,y:$e.y},over:G};(0,nt.unstable_batchedUpdates)(()=>{D==null||D(se),w({type:\"onDragMove\",event:se})})},[$e.x,$e.y]),(0,x.useEffect)(()=>{let{active:D,activatorEvent:P,collisions:V,droppableContainers:fe,scrollAdjustedTranslate:G}=xe.current;if(!D||ie.current==null||!P||!G)return;let{onDragOver:se}=ue.current,De=fe.get(Wt),ut=De&&De.rect.current?{id:De.id,rect:De.rect.current,data:De.data,disabled:De.disabled}:null,le={active:D,activatorEvent:P,collisions:V,delta:{x:G.x,y:G.y},over:ut};(0,nt.unstable_batchedUpdates)(()=>{Gt(ut),se==null||se(le),w({type:\"onDragOver\",event:le})})},[Wt]),ye(()=>{xe.current={activatorEvent:J,active:ne,activeNode:de,collisionRect:ze,collisions:Ge,droppableRects:U,draggableNodes:C,draggingNode:Be,draggingNodeRect:_e,droppableContainers:M,over:Ie,scrollableAncestors:Fe,scrollAdjustedTranslate:$e},j.current={initial:_e,translated:ze}},[ne,de,Ge,ze,C,Be,_e,U,M,Ie,Fe,$e]),ol(B(S({},Oe),{delta:L,draggingRect:ze,pointerCoordinates:Vt,scrollableAncestors:Fe,scrollableAncestorRects:lt}));let jn=(0,x.useMemo)(()=>({active:ne,activeNode:de,activeNodeRect:q,activatorEvent:J,collisions:Ge,containerNodeRect:We,dragOverlay:ke,draggableNodes:C,droppableContainers:M,droppableRects:U,over:Ie,measureDroppableContainers:me,scrollableAncestors:Fe,scrollableAncestorRects:lt,measuringConfiguration:$,measuringScheduled:Se,windowRect:yt}),[ne,de,q,J,Ge,We,ke,C,M,U,Ie,me,Fe,lt,$,Se,yt]),Vn=(0,x.useMemo)(()=>({activatorEvent:J,activators:ce,active:ne,activeNodeRect:q,ariaDescribedById:{draggable:T},dispatch:E,draggableNodes:C,over:Ie,measureDroppableContainers:me}),[J,ce,ne,q,E,T,C,Ie,me]);return x.default.createElement(_a.Provider,{value:F},x.default.createElement(Nn.Provider,{value:Vn},x.default.createElement(Wa.Provider,{value:jn},x.default.createElement(Ga.Provider,{value:qn},f)),x.default.createElement(El,{disabled:(u==null?void 0:u.restoreFocus)===!1})),x.default.createElement(_s,B(S({},u),{hiddenTextDescribedById:T})));function b(){let D=(we==null?void 0:we.autoScrollEnabled)===!1,P=typeof c==\"object\"?c.enabled===!1:c===!1,V=H&&!D&&!P;return typeof c==\"object\"?B(S({},c),{enabled:V}):{enabled:V}}}),Nl=(0,x.createContext)(null),Aa=\"button\",Al=\"Draggable\";function Ya(e){let{id:t,data:n,disabled:o=!1,attributes:a}=e,i=Re(Al),{activators:l,activatorEvent:u,active:c,activeNodeRect:f,ariaDescribedById:m,draggableNodes:d,over:g}=(0,x.useContext)(Nn),{role:p=Aa,roleDescription:v=\"draggable\",tabIndex:y=0}=a!=null?a:{},k=(c==null?void 0:c.id)===t,E=(0,x.useContext)(k?Ga:Nl),[w,F]=It(),[_,z]=It(),H=hl(l,t),h=pt(n);ye(()=>(d.set(t,{id:t,key:i,node:w,activatorNode:_,data:h}),()=>{let L=d.get(t);L&&L.key===i&&d.delete(t)}),[d,t]);let C=(0,x.useMemo)(()=>({role:p,tabIndex:y,\"aria-disabled\":o,\"aria-pressed\":k&&p===Aa?!0:void 0,\"aria-roledescription\":v,\"aria-describedby\":m.draggable}),[o,p,y,k,v,m.draggable]);return{active:c,activatorEvent:u,activeNodeRect:f,attributes:C,isDragging:k,listeners:o?void 0:H,node:w,over:g,setNodeRef:F,setActivatorNodeRef:z,transform:E}}function Ka(){return(0,x.useContext)(Wa)}var _l=\"Droppable\",Ml={timeout:25};function Xa(e){let{data:t,disabled:n=!1,id:o,resizeObserverConfig:a}=e,i=Re(_l),{active:l,dispatch:u,over:c,measureDroppableContainers:f}=(0,x.useContext)(Nn),m=(0,x.useRef)({disabled:n}),d=(0,x.useRef)(!1),g=(0,x.useRef)(null),p=(0,x.useRef)(null),{disabled:v,updateMeasurementsFor:y,timeout:k}=S(S({},Ml),a),E=pt(y!=null?y:o),w=(0,x.useCallback)(()=>{if(!d.current){d.current=!0;return}p.current!=null&&clearTimeout(p.current),p.current=setTimeout(()=>{f(Array.isArray(E.current)?E.current:[E.current]),p.current=null},k)},[k]),F=Dn({callback:w,disabled:v||!l}),_=(0,x.useCallback)((C,L)=>{F&&(L&&(F.unobserve(L),d.current=!1),C&&F.observe(C))},[F]),[z,H]=It(_),h=pt(t);return(0,x.useEffect)(()=>{!F||!z.current||(F.disconnect(),d.current=!1,F.observe(z.current))},[z,F]),(0,x.useEffect)(()=>(u({type:te.RegisterDroppable,element:{id:o,key:i,disabled:n,node:z,rect:g,data:h}}),()=>u({type:te.UnregisterDroppable,key:i,id:o})),[o]),(0,x.useEffect)(()=>{n!==m.current.disabled&&(u({type:te.SetDroppableDisabled,id:o,key:i,disabled:n}),m.current.disabled=n)},[o,i,n,u]),{active:l,rect:g,isOver:(c==null?void 0:c.id)===o,node:z,over:c,setNodeRef:H}}var Sr=e=>{let{transform:t}=e;return B(S({},t),{x:0})};var ee=Y(Q());function Bt(e,t,n){let o=e.slice();return o.splice(n<0?o.length+n:n,0,o.splice(t,1)[0]),o}function Pl(e,t){return e.reduce((n,o,a)=>{let i=t.get(o);return i&&(n[a]=i),n},Array(e.length))}function An(e){return e!==null&&e>=0}function Ll(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:o,index:a}=e,i=Bt(t,o,n),l=t[a],u=i[a];return!u||!l?null:{x:u.left-l.left,y:u.top-l.top,scaleX:u.width/l.width,scaleY:u.height/l.height}};var _n={scaleX:1,scaleY:1},Or=e=>{var t;let{activeIndex:n,activeNodeRect:o,index:a,rects:i,overIndex:l}=e,u=(t=i[n])!=null?t:o;if(!u)return null;if(a===n){let f=i[l];return f?S({x:0,y:nn&&a<=l?S({x:0,y:-u.height-c},_n):a=l?S({x:0,y:u.height+c},_n):S({x:0,y:0},_n)};function $l(e,t,n){let o=e[t],a=e[t-1],i=e[t+1];return o?no.map(H=>typeof H==\"object\"&&\"id\"in H?H.id:H),[o]),v=l!=null,y=l?p.indexOf(l.id):-1,k=f?p.indexOf(f.id):-1,E=(0,ee.useRef)(p),w=!Ll(p,E.current),F=k!==-1&&y===-1||w,_=Bl(i);ye(()=>{w&&v&&m(p)},[w,p,v,m]),(0,ee.useEffect)(()=>{E.current=p},[p]);let z=(0,ee.useMemo)(()=>({activeIndex:y,containerId:d,disabled:_,disableTransforms:F,items:p,overIndex:k,useDragOverlay:g,sortedRects:Pl(p,c),strategy:a}),[y,d,_.draggable,_.droppable,F,p,k,c,g,a]);return ee.default.createElement(Qa.Provider,{value:z},t)}var zl=e=>{let{id:t,items:n,activeIndex:o,overIndex:a}=e;return Bt(n,o,a).indexOf(t)},ql=e=>{let{containerId:t,isSorting:n,wasDragging:o,index:a,items:i,newIndex:l,previousItems:u,previousContainerId:c,transition:f}=e;return!f||!o||u!==i&&a===l?!1:n?!0:l!==a&&t===c},Hl={duration:200,easing:\"ease\"},Ra=\"transform\",jl=Ve.Transition.toString({property:Ra,duration:0,easing:\"linear\"}),Vl={roleDescription:\"sortable\"};function Ul(e){let{disabled:t,index:n,node:o,rect:a}=e,[i,l]=(0,ee.useState)(null),u=(0,ee.useRef)(n);return ye(()=>{if(!t&&n!==u.current&&o.current){let c=a.current;if(c){let f=it(o.current,{ignoreTransform:!0}),m={x:c.left-f.left,y:c.top-f.top,scaleX:c.width/f.width,scaleY:c.height/f.height};(m.x||m.y)&&l(m)}}n!==u.current&&(u.current=n)},[t,n,o,a]),(0,ee.useEffect)(()=>{i&&l(null)},[i]),i}function Tr(e){let{animateLayoutChanges:t=ql,attributes:n,disabled:o,data:a,getNewIndex:i=zl,id:l,strategy:u,resizeObserverConfig:c,transition:f=Hl}=e,{items:m,containerId:d,activeIndex:g,disabled:p,disableTransforms:v,sortedRects:y,overIndex:k,useDragOverlay:E,strategy:w}=(0,ee.useContext)(Qa),F=Wl(o,p),_=m.indexOf(l),z=(0,ee.useMemo)(()=>S({sortable:{containerId:d,index:_,items:m}},a),[d,a,_,m]),H=(0,ee.useMemo)(()=>m.slice(m.indexOf(l)),[m,l]),{rect:h,node:C,isOver:L,setNodeRef:M}=Xa({id:l,data:z,disabled:F.droppable,resizeObserverConfig:S({updateMeasurementsFor:H},c)}),{active:N,activatorEvent:j,activeNodeRect:ne,attributes:ie,setNodeRef:we,listeners:Ce,isDragging:J,over:Ee,setActivatorNodeRef:ue,transform:T}=Ya({id:l,data:z,attributes:S(S({},Vl),n),disabled:F.draggable}),A=xa(M,we),$=!!N,U=$&&!v&&An(g)&&An(k),me=!E&&J,Se=me&&U?T:null,de=u!=null?u:w,Pe=U?Se!=null?Se:de({rects:y,activeNodeRect:ne,activeIndex:g,overIndex:k,index:_}):null,Oe=An(g)&&An(k)?i({id:l,items:m,activeIndex:g,overIndex:k}):_,ge=N==null?void 0:N.id,q=(0,ee.useRef)({activeId:ge,items:m,newIndex:Oe,containerId:d}),We=m!==q.current.items,xe=t({active:N,containerId:d,isDragging:J,isSorting:$,id:l,index:_,items:m,newIndex:q.current.newIndex,previousItems:q.current.items,previousContainerId:q.current.containerId,transition:f,wasDragging:q.current.activeId!=null}),Le=Ul({disabled:!xe,index:_,node:C,rect:h});return(0,ee.useEffect)(()=>{$&&q.current.newIndex!==Oe&&(q.current.newIndex=Oe),d!==q.current.containerId&&(q.current.containerId=d),m!==q.current.items&&(q.current.items=m)},[$,Oe,d,m]),(0,ee.useEffect)(()=>{if(ge===q.current.activeId)return;if(ge!=null&&q.current.activeId==null){q.current.activeId=ge;return}let Be=setTimeout(()=>{q.current.activeId=ge},50);return()=>clearTimeout(Be)},[ge]),{active:N,activeIndex:g,attributes:ie,data:z,rect:h,index:_,newIndex:Oe,items:m,isOver:L,isSorting:$,isDragging:J,listeners:Ce,node:C,overIndex:k,over:Ee,setNodeRef:A,setActivatorNodeRef:ue,setDroppableNodeRef:M,setDraggableNodeRef:we,transform:Le!=null?Le:Pe,transition:ke()};function ke(){if(Le||We&&q.current.newIndex===_)return jl;if(!(me&&!Dt(j)||!f)&&($||xe))return Ve.Transition.toString(B(S({},f),{property:Ra}))}}function Wl(e,t){var n,o;return typeof e==\"boolean\"?{draggable:e,droppable:!1}:{draggable:(n=e==null?void 0:e.draggable)!=null?n:t.draggable,droppable:(o=e==null?void 0:e.droppable)!=null?o:t.droppable}}var Lf=[W.Down,W.Right,W.Up,W.Left];if(typeof window<\"u\"){let e=document.createElement(\"style\");e.textContent=\".container {\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n flex: 1;\\n width: 100%;\\n padding: 16px;\\n box-sizing: border-box;\\n background: #F2F2F7;\\n}\\n.qrcode-card {\\n display: flex;\\n flex-direction: column;\\n align-items: center;\\n width: 100%;\\n max-width: 360px;\\n margin: 0 auto;\\n padding: 24px 20px;\\n}\\n.qrcode-wrapper {\\n position: relative;\\n cursor: pointer;\\n margin-bottom: 24px;\\n display: flex;\\n justify-content: center;\\n}\\n.qrcode-wrapper:hover .qrcode-glow {\\n opacity: 0.4;\\n}\\n.qrcode-glow {\\n position: absolute;\\n inset: -4px;\\n background: linear-gradient(135deg, #60a5fa 0%, #a78bfa 100%);\\n border-radius: 24px;\\n filter: blur(12px);\\n opacity: 0.2;\\n transition: opacity 0.3s ease;\\n z-index: 0;\\n}\\n.qrcode-container {\\n position: relative;\\n background: #fff;\\n padding: 16px;\\n border-radius: 20px;\\n box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);\\n border: 1px solid rgba(0, 0, 0, 0.05);\\n z-index: 1;\\n}\\n.qrcode-image {\\n width: 160px;\\n height: 160px;\\n border-radius: 12px;\\n object-fit: cover;\\n transition: opacity 0.3s ease;\\n}\\n.qrcode-image--loading {\\n opacity: 0.3;\\n}\\n.qrcode-overlay {\\n position: absolute;\\n inset: 0;\\n background: rgba(255, 255, 255, 0.95);\\n backdrop-filter: blur(4px);\\n border-radius: 20px;\\n display: flex;\\n flex-direction: column;\\n align-items: center;\\n justify-content: center;\\n gap: 12px;\\n z-index: 10;\\n}\\n.qrcode-overlay span {\\n font-size: 12px;\\n font-weight: 500;\\n color: #8E8E93;\\n letter-spacing: 0.5px;\\n}\\n.qrcode-spinner {\\n width: 32px;\\n height: 32px;\\n border: 2px solid rgba(59, 130, 246, 0.2);\\n border-top-color: #3b82f6;\\n border-radius: 50%;\\n animation: spin 0.8s linear infinite;\\n}\\n@keyframes spin {\\n to {\\n transform: rotate(360deg);\\n }\\n}\\n.qrcode-status {\\n position: absolute;\\n bottom: -14px;\\n left: 50%;\\n transform: translateX(-50%);\\n display: flex;\\n align-items: center;\\n gap: 6px;\\n padding: 4px 12px;\\n background: rgba(255, 255, 255, 0.95);\\n backdrop-filter: blur(8px);\\n border-radius: 12px;\\n border: 1px solid rgba(0, 0, 0, 0.05);\\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);\\n z-index: 20;\\n white-space: nowrap;\\n}\\n.status-dot {\\n width: 6px;\\n height: 6px;\\n border-radius: 50%;\\n flex-shrink: 0;\\n transition: background-color 0.3s ease;\\n}\\n.status-dot--pulse {\\n animation: pulse 1.5s ease-in-out infinite;\\n}\\n@keyframes pulse {\\n 0%,\\n 100% {\\n opacity: 1;\\n }\\n 50% {\\n opacity: 0.5;\\n }\\n}\\n.status-text {\\n font-size: 10px;\\n font-weight: 600;\\n color: #8E8E93;\\n text-transform: uppercase;\\n letter-spacing: 0.5px;\\n white-space: nowrap;\\n}\\n.cookie-result-wrapper {\\n width: 100%;\\n margin-bottom: 20px;\\n}\\n.cookie-result {\\n width: 100%;\\n height: 120px;\\n padding: 14px;\\n background: rgba(118, 118, 128, 0.08);\\n border: none;\\n border-radius: 16px;\\n font-size: 12px;\\n font-family: 'SF Mono', Monaco, 'Courier New', monospace;\\n color: #1C1C1E;\\n resize: none;\\n outline: none;\\n box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.04);\\n transition: background-color 0.2s ease, box-shadow 0.2s ease;\\n box-sizing: border-box;\\n}\\n.cookie-result::placeholder {\\n color: #8E8E93;\\n}\\n.cookie-result:focus {\\n background: rgba(255, 255, 255, 0.8);\\n box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.04), 0 0 0 2px rgba(59, 130, 246, 0.2);\\n}\\n.action-buttons {\\n display: grid;\\n grid-template-columns: 1fr 1fr;\\n gap: 12px;\\n width: 100%;\\n}\\n.action-btn {\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n gap: 8px;\\n padding: 14px 20px;\\n border-radius: 16px;\\n font-size: 14px;\\n font-weight: 600;\\n cursor: pointer;\\n transition: all 0.2s ease;\\n border: none;\\n outline: none;\\n}\\n.action-btn:active {\\n transform: scale(0.98);\\n}\\n.action-btn--primary {\\n background: #1C1C1E;\\n color: #fff;\\n box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);\\n}\\n.action-btn--primary:hover {\\n background: #2C2C2E;\\n}\\n.action-btn--secondary {\\n background: #fff;\\n color: #1C1C1E;\\n border: 1px solid rgba(0, 0, 0, 0.08);\\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);\\n}\\n.action-btn--secondary:hover {\\n background: #F9F9F9;\\n}\\n.btn-icon {\\n display: block;\\n flex-shrink: 0;\\n width: 16px;\\n height: 16px;\\n opacity: 0.7;\\n}\\n.btn-icon--login {\\n transform: translateY(1px);\\n}\\n.dynamic-delete-button {\\n position: relative;\\n top: 2px;\\n margin: 0 8px;\\n color: #555;\\n font-size: 18px;\\n cursor: pointer;\\n transition: all 0.3s;\\n}\\n.dynamic-delete-button:hover {\\n color: #777;\\n}\\n.dynamic-delete-button[disabled] {\\n cursor: not-allowed;\\n opacity: 0.5;\\n}\\n.domain-edit-modal {\\n --domain-action-size: 32px;\\n --domain-action-gap: 8px;\\n --domain-action-total: calc(var(--domain-action-size) + var(--domain-action-gap));\\n --domain-row-gap: 12px;\\n --domain-label-width: 72px;\\n}\\n.domain-edit-modal .ant-form-horizontal .ant-form-item-label {\\n flex: 0 0 var(--domain-label-width) !important;\\n max-width: var(--domain-label-width) !important;\\n padding-left: 8px;\\n padding-right: 12px;\\n padding-bottom: 0 !important;\\n display: flex !important;\\n align-items: center !important;\\n height: 32px !important;\\n text-align: right;\\n}\\n.domain-edit-modal .ant-form-horizontal .ant-form-item-label > label {\\n height: 32px !important;\\n line-height: 32px !important;\\n}\\n.domain-edit-modal .ant-form-horizontal .ant-form-item-control {\\n flex: 1 1 auto !important;\\n max-width: calc(100% - var(--domain-label-width)) !important;\\n min-width: 0;\\n}\\n.domain-edit-modal .domain-edit-aligned-input {\\n width: calc(100% - var(--domain-action-total));\\n}\\n.domain-edit-modal .domain-edit-full-input {\\n width: 100%;\\n}\\n.domain-edit-modal .domain-edit-add-button {\\n width: calc(100% - var(--domain-action-total));\\n}\\n.domain-edit-modal .ant-form-item {\\n margin-bottom: var(--domain-row-gap);\\n}\\n.domain-edit-modal .ant-form-item:last-child {\\n margin-bottom: 0;\\n}\\n.domain-list-row {\\n display: flex;\\n align-items: center;\\n gap: var(--domain-action-gap, 8px);\\n width: 100%;\\n}\\n.domain-list-input {\\n flex: 1;\\n min-width: 0;\\n}\\n.domain-list-action {\\n width: var(--domain-action-size, 32px);\\n flex: 0 0 var(--domain-action-size, 32px);\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n}\\n.domain-list-action--placeholder {\\n visibility: hidden;\\n}\\n.domain-list-row .dynamic-delete-button {\\n margin: 0;\\n}\\n.sites-table .ant-table-tbody > tr > td {\\n padding: 8px 16px;\\n}\\n.sites-table .ant-table-thead > tr > th {\\n white-space: nowrap;\\n}\\n.sites-list-toolbar {\\n display: flex;\\n justify-content: flex-end;\\n margin: -2px 0 12px;\\n}\\n.sites-list-toolbar .sites-add-button {\\n min-width: 78px;\\n height: 36px;\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n border-radius: 16px;\\n font-weight: 600;\\n box-shadow: 0 8px 18px rgba(28, 28, 30, 0.12);\\n}\\n.site-add-menu {\\n min-width: 190px;\\n padding: 8px;\\n border-radius: 20px;\\n background: rgba(255, 255, 255, 0.86);\\n backdrop-filter: blur(28px);\\n border: 1px solid rgba(255, 255, 255, 0.45);\\n box-shadow: 0 22px 44px rgba(28, 28, 30, 0.16), 0 1px 0 rgba(255, 255, 255, 0.7) inset;\\n}\\n.site-add-type-item {\\n width: 100%;\\n min-height: 56px;\\n display: flex;\\n align-items: center;\\n gap: 12px;\\n padding: 8px 10px;\\n border: 0;\\n border-radius: 14px;\\n background: transparent;\\n color: #1C1C1E;\\n font-size: 15px;\\n font-weight: 600;\\n cursor: pointer;\\n transition: all 0.2s ease;\\n}\\n.site-add-type-item:hover:not(:disabled) {\\n background: rgba(52, 199, 89, 0.1);\\n}\\n.site-add-type-item:disabled {\\n cursor: not-allowed;\\n opacity: 0.65;\\n}\\n.site-add-type-item__icon {\\n width: 36px;\\n height: 36px;\\n flex: 0 0 36px;\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n overflow: hidden;\\n border-radius: 10px;\\n background: #fff;\\n border: 1px solid rgba(0, 0, 0, 0.06);\\n}\\n.site-add-type-item__icon img {\\n width: 100%;\\n height: 100%;\\n object-fit: cover;\\n}\\n.site-add-type-item__icon svg {\\n font-size: 18px;\\n color: #34C759;\\n}\\n.site-add-type-item__name {\\n flex: 1;\\n min-width: 0;\\n overflow: hidden;\\n text-align: left;\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n}\\n.subscription-page {\\n display: flex;\\n flex-direction: column;\\n gap: 24px;\\n}\\n.subscription-section {\\n max-width: 720px;\\n}\\n.subscription-setting-modal .ios-form {\\n max-width: none !important;\\n}\\n.subscription-endpoints {\\n display: flex;\\n flex-direction: column;\\n gap: 10px;\\n}\\n.subscription-endpoint {\\n display: flex;\\n align-items: center;\\n gap: 10px;\\n min-height: 64px;\\n padding: 12px 10px 12px 14px;\\n border: 1px solid rgba(0, 0, 0, 0.06);\\n border-radius: 14px;\\n background: rgba(255, 255, 255, 0.72);\\n}\\n.subscription-endpoint__main {\\n flex: 1;\\n min-width: 0;\\n}\\n.subscription-endpoint__title {\\n display: flex;\\n align-items: center;\\n gap: 8px;\\n margin-bottom: 6px;\\n color: #1C1C1E;\\n font-size: 14px;\\n font-weight: 700;\\n}\\n.subscription-endpoint__url {\\n overflow: hidden;\\n color: #6B7280;\\n font-family: 'SF Mono', Monaco, 'Courier New', monospace;\\n font-size: 12px;\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n}\\n.subscription-endpoint__actions {\\n display: flex;\\n flex: 0 0 auto;\\n gap: 2px;\\n}\\n.subscription-endpoint__actions .ant-btn {\\n width: 34px;\\n height: 34px;\\n border-radius: 12px;\\n color: #1C1C1E;\\n}\\n.subscription-endpoint__actions .ant-btn:hover {\\n background: rgba(0, 0, 0, 0.04) !important;\\n}\\n.subscription-endpoint__actions .ant-btn:focus,\\n.subscription-endpoint__actions .ant-btn:focus-visible {\\n background: transparent !important;\\n}\\n.subscription-endpoint__actions .ant-btn:focus-visible {\\n outline: 2px solid rgba(28, 28, 30, 0.22);\\n outline-offset: 2px;\\n}\\n.subscription-endpoint__actions .ant-btn:active {\\n background: rgba(0, 0, 0, 0.06) !important;\\n}\\n.main-card {\\n min-height: auto;\\n max-height: calc(100vh - 100px);\\n width: 100%;\\n max-width: 420px;\\n overflow: auto;\\n background: rgba(255, 255, 255, 0.65);\\n backdrop-filter: blur(50px);\\n border-radius: 32px;\\n box-shadow: 0 24px 48px -12px rgba(0, 0, 0, 0.08), 0 0 0 1px rgba(255, 255, 255, 0.5) inset, 0 0 0 1px rgba(0, 0, 0, 0.03);\\n border: 1px solid rgba(255, 255, 255, 0.2);\\n animation: fadeInUp 0.6s cubic-bezier(0.16, 1, 0.3, 1) forwards;\\n}\\n.main-card .ant-card-body {\\n padding: 24px 16px;\\n}\\n.main-card .ant-tabs-nav {\\n margin-bottom: 16px;\\n}\\n.main-card .ant-tabs-nav::before {\\n display: none;\\n}\\n.main-card .ant-tabs-nav-list {\\n display: flex;\\n flex-wrap: wrap;\\n gap: 6px;\\n padding: 6px;\\n background: rgba(118, 118, 128, 0.1);\\n border-radius: 14px;\\n width: 100%;\\n justify-content: center;\\n}\\n.main-card .ant-tabs-tab {\\n flex: 1;\\n min-width: 0;\\n margin: 0 !important;\\n padding: 8px 12px !important;\\n border-radius: 10px;\\n font-size: 13px;\\n font-weight: 500;\\n color: #8E8E93;\\n background: transparent;\\n transition: all 0.3s ease;\\n justify-content: center;\\n}\\n.main-card .ant-tabs-tab:hover {\\n color: #1C1C1E;\\n}\\n.main-card .ant-tabs-tab.ant-tabs-tab-active {\\n background: #fff;\\n color: #1C1C1E;\\n box-shadow: 0 4px 12px -2px rgba(0, 0, 0, 0.12), 0 1px 1px rgba(0, 0, 0, 0.05);\\n}\\n.main-card .ant-tabs-tab.ant-tabs-tab-active .ant-tabs-tab-btn {\\n color: #1C1C1E;\\n}\\n.main-card .ant-tabs-ink-bar {\\n display: none;\\n}\\n.main-card .account-tabs {\\n width: 100%;\\n}\\n.main-card .account-tabs__nav-scroll {\\n width: 100%;\\n max-width: 100%;\\n margin-bottom: 16px;\\n padding: 6px;\\n overflow-x: auto !important;\\n overflow-y: hidden;\\n background: rgba(118, 118, 128, 0.1);\\n border-radius: 14px;\\n box-sizing: border-box;\\n cursor: grab;\\n overscroll-behavior-x: contain;\\n scrollbar-width: none;\\n touch-action: pan-x;\\n -ms-overflow-style: none;\\n -webkit-overflow-scrolling: touch;\\n}\\n.main-card .account-tabs__nav-scroll::-webkit-scrollbar {\\n display: none;\\n}\\n.main-card .account-tabs__nav-scroll.is-dragging {\\n cursor: grabbing;\\n user-select: none;\\n}\\n.main-card .account-tabs__nav-list {\\n display: flex;\\n flex-wrap: nowrap;\\n gap: 4px;\\n width: max-content;\\n min-width: 100%;\\n justify-content: flex-start;\\n}\\n.main-card .account-tabs__tab {\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n flex: 0 0 auto;\\n min-width: 44px;\\n min-height: 34px;\\n margin: 0;\\n padding: 8px 12px;\\n border: 0;\\n border-radius: 10px;\\n background: transparent;\\n color: #8E8E93;\\n font-size: 13px;\\n font-weight: 500;\\n line-height: 1;\\n white-space: nowrap;\\n cursor: pointer;\\n transition: color 0.2s ease, background-color 0.2s ease, box-shadow 0.2s ease;\\n appearance: none;\\n}\\n.main-card .account-tabs__tab:hover {\\n color: #1C1C1E;\\n}\\n.main-card .account-tabs__tab--active {\\n background: #fff;\\n color: #1C1C1E;\\n box-shadow: 0 4px 12px -2px rgba(0, 0, 0, 0.12), 0 1px 1px rgba(0, 0, 0, 0.05);\\n}\\n.main-card .account-tabs__panel {\\n width: 100%;\\n}\\n@keyframes fadeInUp {\\n from {\\n opacity: 0;\\n transform: translateY(16px);\\n }\\n to {\\n opacity: 1;\\n transform: translateY(0);\\n }\\n}\\n.app-layout {\\n display: flex;\\n flex-direction: column;\\n min-height: 100vh;\\n width: 100%;\\n background: #F2F2F7;\\n}\\n.top-nav-bar {\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n width: 100%;\\n padding: 12px 16px;\\n background: transparent;\\n box-sizing: border-box;\\n}\\n.nav-pill {\\n display: flex;\\n align-items: center;\\n gap: 4px;\\n padding: 4px;\\n background: rgba(255, 255, 255, 0.65);\\n backdrop-filter: blur(20px);\\n border-radius: 20px;\\n box-shadow: 0 4px 16px rgba(0, 0, 0, 0.06), 0 0 0 1px rgba(255, 255, 255, 0.5) inset, 0 0 0 1px rgba(0, 0, 0, 0.03);\\n}\\n.nav-tab {\\n display: flex;\\n align-items: center;\\n gap: 6px;\\n padding: 8px 16px;\\n border-radius: 16px;\\n cursor: pointer;\\n font-size: 13px;\\n font-weight: 500;\\n color: #8E8E93;\\n background: transparent;\\n border: none;\\n transition: all 0.3s ease;\\n}\\n.nav-tab:hover {\\n color: #1C1C1E;\\n}\\n.nav-tab--active {\\n color: #1C1C1E;\\n background: #fff;\\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);\\n}\\n.nav-tab--active:hover {\\n background: #fff;\\n color: #1C1C1E;\\n}\\n.nav-tab .anticon {\\n font-size: 14px;\\n}\\n.nav-divider {\\n width: 1px;\\n height: 20px;\\n background: rgba(0, 0, 0, 0.1);\\n margin: 0 4px;\\n}\\n.nav-actions {\\n display: flex;\\n align-items: center;\\n gap: 2px;\\n}\\n.nav-actions .ant-btn {\\n color: #8E8E93;\\n font-size: 12px;\\n font-weight: 500;\\n padding: 6px 12px;\\n height: auto;\\n border-radius: 12px;\\n}\\n.nav-actions .ant-btn:hover {\\n color: #1C1C1E;\\n background: rgba(0, 0, 0, 0.04);\\n}\\n.drag-handle {\\n cursor: grab;\\n color: #999;\\n font-size: 18px;\\n padding: 8px;\\n touch-action: none;\\n}\\n.drag-handle:active {\\n cursor: grabbing;\\n}\\n.pansou-config-modal {\\n max-width: 420px;\\n}\\n.pansou-config-modal .ant-modal-body {\\n padding: 16px 24px;\\n}\\n.pansou-config-tabs {\\n margin-bottom: 16px;\\n}\\n.pansou-config-tabs__nav-scroll {\\n width: 100%;\\n max-width: 100%;\\n padding: 6px;\\n overflow-x: auto !important;\\n overflow-y: hidden;\\n background: rgba(118, 118, 128, 0.1);\\n border-radius: 14px;\\n box-sizing: border-box;\\n cursor: grab;\\n overscroll-behavior-x: contain;\\n scrollbar-width: none;\\n touch-action: pan-x;\\n -ms-overflow-style: none;\\n -webkit-overflow-scrolling: touch;\\n}\\n.pansou-config-tabs__nav-scroll::-webkit-scrollbar {\\n display: none;\\n}\\n.pansou-config-tabs__nav-scroll.is-dragging {\\n cursor: grabbing;\\n user-select: none;\\n}\\n.pansou-config-tabs__nav-list {\\n display: flex;\\n flex-wrap: nowrap;\\n gap: 4px;\\n width: max-content;\\n min-width: 100%;\\n justify-content: flex-start;\\n}\\n.pansou-config-tabs__tab {\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n gap: 8px;\\n flex: 0 0 auto;\\n margin: 0;\\n padding: 8px 12px;\\n border: 0;\\n border-radius: 10px;\\n font-size: 13px;\\n font-weight: 500;\\n color: #8E8E93;\\n background: transparent;\\n outline: none;\\n cursor: pointer;\\n transition: all 0.2s ease;\\n}\\n.pansou-config-tabs__tab:hover {\\n color: #1C1C1E;\\n}\\n.pansou-config-tabs__tab--active {\\n background: rgba(118, 118, 128, 0.12);\\n color: #1C1C1E;\\n}\\n.pansou-config-tabs__badge {\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n min-width: 22px;\\n height: 16px;\\n padding: 0 6px;\\n border-radius: 999px;\\n font-size: 11px;\\n line-height: 16px;\\n font-weight: 600;\\n color: #fff;\\n background: #1C1C1E;\\n}\\n.pansou-checkbox-section {\\n min-height: 200px;\\n max-height: 400px;\\n overflow-y: auto;\\n}\\n.pansou-checkbox-header {\\n display: flex;\\n justify-content: space-between;\\n align-items: center;\\n margin-bottom: 12px;\\n padding: 0 4px;\\n color: #8E8E93;\\n font-size: 13px;\\n}\\n.pansou-checkbox-header .ant-btn-link {\\n color: #1C1C1E;\\n font-weight: 500;\\n padding: 4px 8px;\\n height: auto;\\n}\\n.pansou-checkbox-header .ant-btn-link:hover,\\n.pansou-checkbox-header .ant-btn-link:focus,\\n.pansou-checkbox-header .ant-btn-link:active {\\n color: #3C3C3E;\\n background: rgba(0, 0, 0, 0.04);\\n}\\n.pansou-add-channel {\\n display: flex;\\n gap: 8px;\\n margin-bottom: 12px;\\n}\\n.pansou-checkbox-grid {\\n display: grid;\\n grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));\\n gap: 8px;\\n}\\n.pansou-checkbox-card {\\n display: flex;\\n align-items: center;\\n justify-content: space-between;\\n padding: 10px 14px;\\n border: 1px solid rgba(0, 0, 0, 0.06);\\n border-radius: 10px;\\n cursor: pointer;\\n transition: all 0.2s;\\n background: #fff;\\n}\\n.pansou-checkbox-card:hover {\\n border-color: rgba(0, 0, 0, 0.12);\\n background: #F9F9F9;\\n}\\n.pansou-checkbox-card--selected {\\n border-color: #1C1C1E;\\n background: rgba(28, 28, 30, 0.04);\\n}\\n.pansou-checkbox-card--selected .pansou-checkbox-card__check {\\n color: #1C1C1E;\\n}\\n.pansou-checkbox-card__label {\\n flex: 1;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n font-size: 13px;\\n}\\n.pansou-checkbox-card__delete {\\n flex-shrink: 0;\\n color: #8E8E93;\\n font-size: 14px;\\n margin-left: 6px;\\n transition: color 0.2s;\\n}\\n.pansou-checkbox-card__delete:hover {\\n color: #ef4444;\\n}\\n.pansou-empty-tip {\\n text-align: center;\\n color: #8E8E93;\\n padding: 40px 0;\\n font-size: 13px;\\n}\\n.pansou-config-footer {\\n margin-top: 16px;\\n padding-top: 16px;\\n border-top: 1px solid rgba(0, 0, 0, 0.06);\\n}\\n.emby-server-manager {\\n display: flex;\\n flex-direction: column;\\n gap: 14px;\\n}\\n.emby-server-toolbar {\\n display: flex;\\n flex-direction: column;\\n align-items: stretch;\\n gap: 12px;\\n padding: 4px 0 2px;\\n}\\n.emby-server-toolbar__main {\\n display: flex;\\n align-items: center;\\n justify-content: space-between;\\n gap: 12px;\\n}\\n.emby-server-toolbar .ant-btn {\\n height: 36px;\\n display: inline-flex;\\n align-items: center;\\n border-radius: 16px;\\n font-weight: 600;\\n box-shadow: 0 8px 18px rgba(28, 28, 30, 0.12);\\n}\\n.emby-server-title {\\n color: #1C1C1E;\\n font-size: 17px;\\n font-weight: 700;\\n line-height: 1.2;\\n}\\n.emby-server-subtitle {\\n color: #8E8E93;\\n font-size: 12px;\\n line-height: 1.4;\\n}\\n.emby-empty-card {\\n width: 100%;\\n min-height: 116px;\\n display: flex;\\n flex-direction: column;\\n align-items: center;\\n justify-content: center;\\n gap: 10px;\\n border: 1px dashed rgba(28, 28, 30, 0.2);\\n border-radius: 18px;\\n background: rgba(255, 255, 255, 0.55);\\n color: #1C1C1E;\\n font-size: 14px;\\n font-weight: 600;\\n cursor: pointer;\\n transition: all 0.2s ease;\\n}\\n.emby-empty-card .anticon {\\n width: 36px;\\n height: 36px;\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n border-radius: 50%;\\n background: rgba(52, 199, 89, 0.14);\\n color: #22c55e;\\n font-size: 17px;\\n}\\n.emby-empty-card:hover {\\n background: rgba(255, 255, 255, 0.75);\\n border-color: rgba(28, 28, 30, 0.35);\\n}\\n.emby-server-grid {\\n display: grid;\\n grid-template-columns: 1fr;\\n gap: 10px;\\n}\\n.emby-server-card {\\n position: relative;\\n overflow: hidden;\\n display: flex;\\n align-items: center;\\n gap: 12px;\\n min-height: 82px;\\n padding: 12px 14px;\\n border-radius: 12px;\\n background: linear-gradient(135deg, rgba(255, 255, 255, 0.95), rgba(242, 247, 245, 0.9));\\n box-shadow: 0 10px 22px rgba(28, 28, 30, 0.06);\\n border: 1px solid rgba(255, 255, 255, 0.62);\\n}\\n.emby-server-card__hero {\\n display: flex;\\n align-items: center;\\n flex: 0 0 auto;\\n}\\n.emby-server-card__logo {\\n width: 48px;\\n height: 48px;\\n flex: 0 0 48px;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n overflow: hidden;\\n border-radius: 12px;\\n background: rgba(255, 255, 255, 0.92);\\n border: 1px solid rgba(0, 0, 0, 0.06);\\n}\\n.emby-server-card__logo img {\\n width: 100%;\\n height: 100%;\\n object-fit: cover;\\n}\\n.emby-server-card__content {\\n min-width: 0;\\n flex: 1;\\n}\\n.emby-server-card__name {\\n display: flex;\\n align-items: center;\\n gap: 6px;\\n min-width: 0;\\n color: #111;\\n font-size: 15px;\\n font-weight: 700;\\n line-height: 1.3;\\n}\\n.emby-server-card__name span {\\n min-width: 0;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n}\\n.emby-server-card__name .anticon {\\n flex: 0 0 auto;\\n color: #22c55e;\\n font-size: 12px;\\n}\\n.emby-server-card__stats {\\n display: flex;\\n flex-wrap: nowrap;\\n gap: 10px;\\n margin-top: 7px;\\n color: #6b7280;\\n font-size: 12px;\\n line-height: 1.35;\\n}\\n.emby-server-card__stats .emby-server-card__stat,\\n.emby-server-card__stats .emby-server-card__sync {\\n min-width: 0;\\n display: flex;\\n align-items: center;\\n gap: 4px;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n}\\n.emby-server-card__stats .emby-server-card__stat {\\n flex: 0 1 auto;\\n max-width: 72px;\\n}\\n.emby-server-card__stats .emby-server-card__stat span {\\n min-width: 0;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n}\\n.emby-server-card__stats .emby-server-card__sync {\\n color: #8e8e93;\\n}\\n.emby-server-card__stats .emby-server-card__stat-icon {\\n width: 17px;\\n height: 17px;\\n flex: 0 0 auto;\\n color: #8e8e93;\\n fill: currentColor;\\n}\\n.emby-server-card__stats .emby-server-card__stat-icon--series {\\n width: 18px;\\n height: 18px;\\n fill: none;\\n stroke: currentColor;\\n stroke-width: 1.5;\\n stroke-linecap: round;\\n stroke-linejoin: round;\\n}\\n.emby-server-card__actions {\\n flex: 0 0 auto;\\n display: flex;\\n flex-direction: row;\\n align-items: center;\\n justify-content: center;\\n gap: 4px;\\n}\\n.emby-server-card__actions .ant-btn {\\n width: 30px;\\n height: 30px;\\n padding: 0;\\n border-radius: 10px;\\n}\\n.emby-server-edit-modal .ant-modal-body {\\n padding-top: 18px;\\n}\\n.emby-server-edit-actions {\\n justify-content: space-between;\\n}\\n.emby-server-edit-actions--new {\\n justify-content: flex-end;\\n}\\n.emby-logo-preview {\\n display: flex;\\n align-items: center;\\n gap: 10px;\\n margin: -4px 0 16px;\\n color: #8e8e93;\\n font-size: 12px;\\n}\\n.emby-logo-preview img {\\n width: 38px;\\n height: 38px;\\n border-radius: 10px;\\n object-fit: cover;\\n background: #fff;\\n border: 1px solid rgba(0, 0, 0, 0.08);\\n}\\n.ant-input,\\n.ant-input-password .ant-input,\\n.ant-input-number,\\n.ant-input-number-input {\\n background: rgba(118, 118, 128, 0.08);\\n border: none;\\n border-radius: 12px;\\n font-size: 14px;\\n}\\n.ant-input:focus,\\n.ant-input-password .ant-input:focus,\\n.ant-input-number:focus,\\n.ant-input-number-input:focus,\\n.ant-input:hover,\\n.ant-input-password .ant-input:hover,\\n.ant-input-number:hover,\\n.ant-input-number-input:hover,\\n.ant-input.ant-input-focused,\\n.ant-input-password .ant-input.ant-input-focused,\\n.ant-input-number.ant-input-focused,\\n.ant-input-number-input.ant-input-focused {\\n background: rgba(255, 255, 255, 0.8);\\n box-shadow: 0 0 0 2px rgba(28, 28, 30, 0.15);\\n border-color: transparent;\\n}\\n.ant-input {\\n padding: 10px 14px;\\n}\\n.ant-input-affix-wrapper {\\n background: rgba(118, 118, 128, 0.08);\\n border: none;\\n border-radius: 12px;\\n padding: 6px 14px;\\n}\\n.ant-input-affix-wrapper:focus,\\n.ant-input-affix-wrapper:hover,\\n.ant-input-affix-wrapper.ant-input-affix-wrapper-focused {\\n background: rgba(255, 255, 255, 0.8);\\n box-shadow: 0 0 0 2px rgba(28, 28, 30, 0.15);\\n border-color: transparent !important;\\n}\\n.ant-input-affix-wrapper .ant-input {\\n background: transparent;\\n padding: 4px 0;\\n box-shadow: none;\\n}\\n.ant-input-affix-wrapper .ant-input:focus,\\n.ant-input-affix-wrapper .ant-input:hover {\\n box-shadow: none;\\n}\\n.ant-input-number {\\n width: 100%;\\n padding: 0;\\n}\\n.ant-input-number .ant-input-number-input {\\n padding: 10px 14px;\\n height: auto;\\n}\\n.ant-input-number:focus,\\n.ant-input-number:hover,\\n.ant-input-number.ant-input-number-focused {\\n border-color: transparent !important;\\n}\\n.ant-input-number-group-addon {\\n background: rgba(118, 118, 128, 0.08);\\n border: none;\\n border-radius: 0 12px 12px 0;\\n color: #8E8E93;\\n font-size: 13px;\\n padding: 0 14px;\\n min-width: 50px;\\n text-align: center;\\n}\\n.ant-input-number-group .ant-input-number {\\n border-radius: 12px 0 0 12px;\\n}\\n.ios-form .ant-form-item {\\n margin-bottom: 16px;\\n}\\n.ios-form .ant-form-item-label > label {\\n color: #8E8E93;\\n font-size: 13px;\\n font-weight: 500;\\n}\\n.ios-button-group {\\n display: flex;\\n gap: 12px;\\n margin-top: 20px;\\n}\\n.action-btn--danger {\\n background: #fff;\\n color: #ef4444;\\n border: 1px solid rgba(239, 68, 68, 0.3);\\n}\\n.action-btn--danger:hover {\\n background: rgba(239, 68, 68, 0.05);\\n}\\n.ios-modal {\\n max-width: 420px;\\n}\\n.ios-modal .ant-modal-content {\\n background: rgba(255, 255, 255, 0.9);\\n backdrop-filter: blur(30px);\\n border-radius: 24px;\\n box-shadow: 0 24px 48px -12px rgba(0, 0, 0, 0.15);\\n border: 1px solid rgba(255, 255, 255, 0.3);\\n}\\n.ios-modal .ant-modal-header {\\n background: transparent;\\n border-bottom: 1px solid rgba(0, 0, 0, 0.06);\\n padding: 20px 24px;\\n border-radius: 24px 24px 0 0;\\n}\\n.ios-modal .ant-modal-title {\\n font-size: 17px;\\n font-weight: 600;\\n color: #1C1C1E;\\n}\\n.ios-modal .ant-modal-body {\\n padding: 20px 24px;\\n}\\n.ios-modal .ant-modal-footer {\\n border-top: 1px solid rgba(0, 0, 0, 0.06);\\n padding: 16px 24px;\\n}\\n.ios-modal .ant-modal-close {\\n top: 16px;\\n right: 16px;\\n}\\n.ios-modal .ant-modal-close .ant-modal-close-x {\\n color: #8E8E93;\\n}\\n.ios-modal .ant-modal-close .ant-modal-close-x:hover {\\n color: #1C1C1E;\\n}\\n.ant-message .ant-message-notice-content {\\n background: rgba(255, 255, 255, 0.85);\\n backdrop-filter: blur(20px);\\n border-radius: 16px;\\n padding: 12px 20px;\\n box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1);\\n border: 1px solid rgba(255, 255, 255, 0.5);\\n}\\n.ios-alert {\\n background: rgba(59, 130, 246, 0.08);\\n border: none;\\n border-radius: 12px;\\n}\\n.ios-alert .ant-alert-message {\\n color: #1C1C1E;\\n font-weight: 500;\\n}\\n.ios-alert .ant-alert-description {\\n color: #8E8E93;\\n}\\n.ant-switch {\\n background: rgba(120, 120, 128, 0.16);\\n min-width: 51px;\\n height: 31px;\\n}\\n.ant-switch .ant-switch-handle {\\n width: 27px;\\n height: 27px;\\n top: 2px;\\n inset-inline-start: 2px;\\n}\\n.ant-switch .ant-switch-handle::before {\\n border-radius: 50%;\\n box-shadow: 0 3px 8px rgba(0, 0, 0, 0.15), 0 1px 1px rgba(0, 0, 0, 0.16);\\n}\\n.ant-switch:hover:not(.ant-switch-disabled) {\\n background: rgba(120, 120, 128, 0.24);\\n}\\n.ant-switch:focus {\\n box-shadow: none;\\n}\\n.ant-switch.ant-switch-checked {\\n background: #34C759;\\n}\\n.ant-switch.ant-switch-checked .ant-switch-handle {\\n inset-inline-start: calc(100% - 29px);\\n}\\n.ant-switch.ant-switch-checked:hover:not(.ant-switch-disabled) {\\n background: #2DB84E;\\n}\\n.ios-edit-btn {\\n color: #8E8E93;\\n padding: 4px 8px;\\n border-radius: 8px;\\n transition: all 0.2s ease;\\n}\\n.ios-edit-btn:hover {\\n color: #1C1C1E;\\n background: rgba(0, 0, 0, 0.04);\\n}\\n.ios-edit-btn .anticon {\\n font-size: 16px;\\n}\\n.ios-tag {\\n background: rgba(118, 118, 128, 0.12);\\n border: none;\\n border-radius: 6px;\\n color: #8E8E93;\\n font-size: 11px;\\n font-weight: 500;\\n padding: 2px 8px;\\n line-height: 1.4;\\n}\\n.ant-space-compact .ant-input {\\n border-radius: 12px 0 0 12px;\\n}\\n.ant-space-compact .ant-btn {\\n border-radius: 0 12px 12px 0;\\n}\\n.ant-space-compact .ant-btn-primary {\\n background: #1C1C1E;\\n border: none;\\n}\\n.ant-space-compact .ant-btn-primary:hover,\\n.ant-space-compact .ant-btn-primary:focus,\\n.ant-space-compact .ant-btn-primary:active {\\n background: #2C2C2E !important;\\n}\\n.xunlei-verify-compact .ant-input,\\n.xunlei-verify-compact .ant-btn {\\n height: 44px;\\n}\\n.xunlei-verify-compact .ant-input {\\n line-height: 22px;\\n}\\n.xunlei-verify-compact .xunlei-verify-send-btn {\\n min-width: 126px;\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n border-color: rgba(0, 0, 0, 0.12);\\n box-shadow: none;\\n}\\n.ant-btn-primary {\\n background: #1C1C1E;\\n border: none;\\n border-radius: 12px;\\n}\\n.ant-btn-primary:hover,\\n.ant-btn-primary:focus,\\n.ant-btn-primary:active {\\n background: #2C2C2E !important;\\n border-color: transparent !important;\\n}\\n.ant-btn-dashed {\\n border-radius: 12px;\\n border-color: rgba(0, 0, 0, 0.15) !important;\\n color: #8E8E93;\\n}\\n.ant-btn-dashed:hover,\\n.ant-btn-dashed:focus,\\n.ant-btn-dashed:active {\\n color: #1C1C1E !important;\\n border-color: rgba(0, 0, 0, 0.3) !important;\\n background: rgba(0, 0, 0, 0.02) !important;\\n}\\n.ant-btn-text:hover,\\n.ant-btn-text:focus,\\n.ant-btn-text:active {\\n background: rgba(0, 0, 0, 0.04) !important;\\n color: #1C1C1E !important;\\n}\\n.ant-btn-link {\\n color: #1C1C1E;\\n}\\n.ant-btn-link:hover,\\n.ant-btn-link:focus,\\n.ant-btn-link:active {\\n color: #3C3C3E !important;\\n background: transparent !important;\\n}\\n.ant-btn-dangerous.ant-btn-text {\\n color: #ef4444;\\n}\\n.ant-btn-dangerous.ant-btn-text:hover,\\n.ant-btn-dangerous.ant-btn-text:focus,\\n.ant-btn-dangerous.ant-btn-text:active {\\n color: #dc2626 !important;\\n background: rgba(239, 68, 68, 0.04) !important;\\n}\\n.action-btn--secondary-outline {\\n background: #fff;\\n color: #8E8E93;\\n border: 1px solid rgba(0, 0, 0, 0.08);\\n}\\n.action-btn--secondary-outline:hover {\\n color: #1C1C1E;\\n background: #F9F9F9;\\n}\\n.pansou-add-channel .ant-btn-primary {\\n background: #1C1C1E;\\n border: none;\\n border-radius: 12px;\\n font-weight: 500;\\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);\\n}\\n.pansou-add-channel .ant-btn-primary:hover,\\n.pansou-add-channel .ant-btn-primary:focus,\\n.pansou-add-channel .ant-btn-primary:active {\\n background: #2C2C2E !important;\\n border-color: transparent !important;\\n}\\n.pansou-add-channel .ant-input {\\n background: rgba(118, 118, 128, 0.08);\\n border: none;\\n border-radius: 12px;\\n padding: 8px 14px;\\n}\\n.pansou-add-channel .ant-input:focus,\\n.pansou-add-channel .ant-input:hover {\\n background: rgba(255, 255, 255, 0.8);\\n box-shadow: 0 0 0 2px rgba(28, 28, 30, 0.15);\\n border-color: transparent;\\n}\\n.pansou-add-channel .ant-input-clear-icon {\\n color: #8E8E93;\\n}\\n.pansou-add-channel .ant-input-clear-icon:hover {\\n color: #1C1C1E;\\n}\\n.pansou-add-channel .ant-input-affix-wrapper {\\n background: rgba(118, 118, 128, 0.08);\\n border: none;\\n border-radius: 12px;\\n padding: 4px 14px;\\n}\\n.pansou-add-channel .ant-input-affix-wrapper:focus,\\n.pansou-add-channel .ant-input-affix-wrapper:hover,\\n.pansou-add-channel .ant-input-affix-wrapper.ant-input-affix-wrapper-focused {\\n background: rgba(255, 255, 255, 0.8);\\n box-shadow: 0 0 0 2px rgba(28, 28, 30, 0.15);\\n border-color: transparent !important;\\n}\\n.pansou-add-channel .ant-input-affix-wrapper .ant-input {\\n background: transparent;\\n box-shadow: none;\\n padding: 4px 0;\\n}\\n.pansou-add-channel .ant-input-affix-wrapper .ant-input:focus,\\n.pansou-add-channel .ant-input-affix-wrapper .ant-input:hover {\\n box-shadow: none;\\n}\\n\",document.head.appendChild(e)}var $t=\"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 Er=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAYAAACtWK6eAAAMe0lEQVR4AezdbXYTORMFYHUGclhG2EHCCuAXsAtYCbASZheEX7ADsoNkdjEH5qTH13E5bafdX5JaVaXLoSInsdXSlR7S1ry8nAX+YgJM4GQCBHIyGn6DCYRAINwFTGAgAQIZCIffYgIEwj3ABAYSyAhk4Kr8FhMwkgCBGFkoDrNMAgRSJnde1UgCBGJkoTjMMgkQSJnceVUjCdgEYiRcDtN+AgRifw05g4wJEEjGcNm1/QQIxP4acgYZEyCQjOGya/sJEMjRGvJTJtBNgEC6aWR+/OLb5UXmS7D7xAkQSOJAT3X37Nvl6/umuT3/fvnp1HP4dX0JEMgKawIcZ03zY3uptvlMJNskTHw4MzFKw4M8wCHzIBJJQn1LIBmX6AjH4ZWI5DAPpZ8RSKaFGcQh1yQSSUJtSyAZlmYSDrkukUgSKlsCSbwss3DItYlEklDXEkjCJVmEQ65PJJKEqpZAEi1HFA4Zw2Ik0gHb1AkQSIJEk+CQcRCJJKGiJZDIZUiKQ8ZCJJJE8ZZAIpYgCw4ZD5FIEkVbAlkYf1YcMiYikSSKtQSyIPpVcMi4SiORcVTaEsjMhV8Vh4yNSCSJ1VsCmRF5ERwyPiKRJFZtCWRi3EVxyBiJRJJYrSWQCVGrwCHjJBJJYpWWQEZiVoVDxuoEiUxHc0sgA6ujEoeMl0gkiawtgZyIVzUOGTORSBLZWgLpidYEDhk3kUgSWVoCOYrVFA4ZO5FIEslbAulEahKHjJ9IJAm0yYpAdlGaxrGbQyASSSJZSyCbKF3g2Mxj+5tItjGk+lA9EFc4ZFcQiSQR3VYNxCUO2RJEIklEtdUCcY1DtgSRSBKL26dAFndl54VV4JDlIBJJYlFbHZCqcMiWIBJJYnZbFZAqcciWIBJJYlZbDZCqcciWIBJJYnJbBRDi6OyHBEjOr199RaadXt0+XBVIiRSxkPt/vKbEADReMwLJ8+urHyG0HzaZVoHENRDiGNC5AAlwNCG8Dg+/LmpA4hYIcTzs4sGPM5Ac4ZBu3SNxCYQ4ZP9OaCcgOYFDOneNxB0Q4pB9O6MdQDKCQy7iFokXINuFIo5tDMs+9CCZiEOu5xKJGyDEIfs0ou0gmYlDLuoOiRsgTdN8klViG5EAkFxf3XZOq+Z25gqJGyB/te3HNoSfgb9SJHAR2YkbJG6A/Pv+5o5IIrd12pe7QOIGCNY2DxL0zFqYgHkkroBgEYkEKagq00jcAcHWIBKkoKrMInEJBFuDSJCCqjKJxC0QbA0iQQqqyhwS10CwNQTJ5vHdpnT9rnM0ppC4B4I9eN+c4T8ixp7toytWmgTMIHEPBH/7LYT2Q5p1ZS8JEzCBxDUQ4ki4nfN0pR6JWyDEkWdHZ+hVNRKXQIrhaNrPAZVhF83t0tjz1SJxB6QYjs2ObO/DP7/f3nw5a9uXhLIJZN5vlUhcASmJo7sXcLS8hxICj5fD5F/qkLgBogVHdysAyuanyRv+NOmmMvpYFRIXQDTikG0AJPufJnx/IrGMtWqQmAeiGUd3F3ShtCFY/otdYaVfKpCYBmIFR3dDAcqfd7/etG37cfN1vj/ZhDDwuzgSs0As4uhuhD/vb/7m+5NuIicfF0ViEoh1HLIV8NOE708kjcG2GBJzQLzg6G6HAyg8Fu5G031cBIkpIB5xdHcAoNR929VNo/fx6kjMAPGOQ7YDkPC2S9LobVdFYgJILTi626ELhcfC3WS2j1dDoh5IjTi2W2D3AVB4LLwL47BZBYlqILXj6O4HHgt309g/zo5ELRDi2G+C/QP8NOH7k30c8mAaEnn2zFYlEOIYXsUDKDwWRljZkKgDQhxY72kFKDwW3meVBYkqIMSxX+zJD4CEt137uJIjUQOEOPaLvOhBF0rlx8JJkagAQhyLTPS+CFB4LBy2SF58u4z+/0KbAqR3IVJ9kThSJXnYT+3Hwm3bfsEfFoepzP+sKBDimL9gc16BDVLj+5MNjo/4A2JOVqeeWwwIcZxakvRfP4Di/Fg4JQ6sRBEgxIHo1y9A8XwsnBoHVmh1IMSB2MsVkHi87cqBA6u0KpCnODAEVokEulCsHwvnwoF1WQ0IcSBufQUolo+Fc+LAaq0ChDgQte7CqY+19ye5cWDFsgMhDsRso/DTxMZIQ1gDB7LICoQ4ELGNevbt8vX59VUb2uaz9hGvhQM5ZANSHAdmxxpNAP9zjOfXVz/OmubH6JMVPGFNHJhuFiDEgWh1F2Ccf7/8dN80t00Ir4OBX2vjQCTJgRAHYtVdAsPC7ZQkWQIHrp0UCHEgUr21e59xawkG0iyFA9dOBoQ4EKfO2t5OXb/6unufcaFzlP2jKokDI0oCpDYcCM5K7W+nQvvByphlnKVxYBzRQPCn0+ZU2lz4mLzn2t1OtdZup2RNNODAWKKB4D8ubf4L7Et0xiqfAP7AsnRs25eYFhwYWzQQdEIkSKFsAYbcTlk5tu1LTBMOjC8JEHREJEihTAkMq7dTkpo2HBhXMiDojEiQQlTNevHufYa5Y9u+SWrEgXEmBYIOiQQp5K3t7ZTRY9u+ZLTiwFiTA0GnRIIU8tT+dsrgsW1fIppxYLxZgKBjIkEK6Wp3O2X22LYvCe04MOZsQNA5kSCFuMLtlPVj274ELODAuLMCwQWIBCnML8CQ26k0x7bzx5DrFVZwYP7ZgeAiRIIUppfAsH5s2zdjSzgw/lWA4EJEghSGa/c+w8Wxbd9MreHAHFYDgosRCVJ4WtvbKUfHtk9nGFb7O+R914752qpAMFAiQQqPtb+dcnJs+zizx0cWf3LI6FcHggsTSQi72ykfx7ZY1BNlGQemdIYPJapWJLid8nhs27eHrOPAnIoBwcVrQgIYcjvl7dgWa3lcHnBgTkWBYAA1IBEYHo9tsYbH5QUH5lUcCAbhFcnufYbbY1us3XF5woG5qQCCgXhCsr2dcn5sizU7rhw4jq+x9udqgGDiHpDsb6ccH9tirY7LIw7MURUQDMgykqZpvtbyPgNrJeUVB+anDggGZRkJxl9TecaBdVQJBAMjEqSgu7zjQPpqgWBwRIIUdJYDHJOCVQ0EMyASpKCu7vAvUqkbVYYBqQeCORMJUlBVF+fXV7eqRpRpMCaAYO5EghRUVRVIzADB1iASpKCq3CMxBQRbg0iQgqpyjWQZkMLrQySFF+Dp5d0iMQkE60MkSEFVuURiFgi2BpEgBVXlDolpINgaCZHcoT9WdAKukJgHguWMRdKG8PP3u18vQ9N+Rn+suATu2/ZjXA96Xq0OyNJoliJpNzj+vPv1Btf9/fbmC5EgieW1wfHmv/c3P5f3oOuVboAg1rlIujjwehSRIIVl5Q0HUnAFBBOaiqQPB16PIhKkMK884kAC7oBgUmNIhnDg9SgiQQrTyisOzN4lEEzsFJIpOPB6FJEgheHyjAMzdwsEkztCEubgwOtRRIIU+ss7DszaNRBMUJAswYHXo4gEKRxWDTgwY/dAMEkgkaNcfL6kiOQxtVpwYMZVAMFEUxSRhFATDuwZAkEKM6pmJLXhwLYgEKQws54imdmBwafXiAPLRCBIYUHVhKRWHNgWBIIUFlYNSGrGgW1BIEghojwjqR0HtgWBIIXI8oiEOB42BYE85BD9MRuS6JHN74A4HjMjkMcsoh95QEIch9uAQA7ziP7MMhLieLr8BPI0k+ivWERCHP3LTiD9uUR/1RIS4ji93ARyOpvo72hHggkSB1I4XQRyOpsk39GMhDjGl5hAxjOKfoZGJMQxbVkJZFpO0c/ShIQ4pi8ngUzPKvqZGpAQx7xlJJB5eUU/uySSFXFE56SlAwIpsBIlkBDHsoUmkGW5Rb9qTSTEsXy5CGR5dtGvXAMJccQtE4HE5Rf96pxIiCN6eQKBxGcY3UMOJH5xRMc9qwMCmRVXvienREIc6daJQNJlGd1TCiTEEb0MBx0QyEEc5T+JQUIc6dePQNJnGt3jEiTEER17bwcE0htL+S/OQUIcidarpxsC6QlFy5emICGOvKtFIHnzje59CAlxRMc72gGBjEZU/gl9SIhjnXUhkHVyjr5KFwlxRMc5uQMCmRxV+ScCyVnbvvT075CXT3V4BKmADF+F302WAP61rGSdsaPRBAhkNCI+oeYECKTm1efcRxMgkNGI+ISaEyCQmlefcx9NwACQ0TnwCUwgWwIEki1aduwhAQLxsIqcQ7YECCRbtOzYQwIE4mEVOYdsCdQNJFus7NhLAgTiZSU5jywJEEiWWNmplwQIxMtKch5ZEiCQLLGyUy8JEEimlWS3PhL4HwAA//9O44MMAAAABklEQVQDAGCL7+uOGrzfAAAAAElFTkSuQmCC\";var ei=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAO8AAADICAYAAAAA2bY3AAAQAElEQVR4AexdbZLbNhYENTnE1marlv7l+Aje1NaONgex5gZzgxnfwDeYyUESTVUq9hG8+8vaqnUqh4gHeQ9DWR9DSADZIAGyVaREgfh4aKCJhyZELQxfRIAIFIkAyVtks9FoImAMycteQAQKRYDkLbThaDYRIHl3fYBHRKAoBEjeopqLxhKBHQIk7w4LHhGBohAgeYtqLhpLBHYIkLw7LHi0Q4BHBSBA8hbQSDSRCLQhQPK2ocIwIlAAAiRvAY1EE4lAGwIkbxsqDCMCOwSyPSJ5s20aGkYETiNA8p7Gh2eJQLYIkLzZNg0NIwKnESB5T+PDs0QgWwRGIG+2WNAwIlAUAiRvUc1FY4nADgGSd4cFj4hAUQiQvEU1F40lAjsESN4dFiMcsUgi0B0Bkrc7dkxJBEZFgOQdFX4WTgS6I0DydseOKYnAqAiQvKPCz8J3CPAoFgGSNxYxxicCmSBA8mbSECnNuP6wrq9/WV/qZ8pymPewCJC8w+I9WGlKVNlvrt//bI21n8yFXeunfP/kwoXQgxnDgpIgQPImgXXcTK9//WmlRJX9tsWS2oVbu3bxWiIwaGwEwsonecNwKiaWjqqmqu4CDK4l3o2LHxCZUfJDgOTNr006W+SIaG3baOvLU0fhFUdgHzx5hy/yNo/WhSKggpRzh0MT7OJtR+B6F8SjEhAgeUtopRAbVZAKidceR0fgEFe7PTVDR0FgHuQdBdrhChUFeQ0o7ZLuMwDFAbMgeQcEO0VRzl025tIgXlWlAlaNyIp5pEeA5E2PcdoSLuwNsAAlLjI/oGnM6hgBkvcYkYK+N24uZtTd1tvaVTOab0P4mSkCJG+mDXPOLLktVMt92niR6VzGev7CpslX8+YOQ4DkhUE5cEY2KcHqZlQfuFIsLgYBkjcGrUziNm4t1l0+rpuIV8dB/J4XAiRvXu0RZg1WpPKVWYtrTvfZh04G4SRvBo0QY4IQStXgtKPu1iBrL5tRfhsyrc/Ca0PyFtSAQlxdCRWzdrlv7WpD8aovhsnSk7zJoE2QcVqRymcwxSsfMiOHk7wjN0Bo8Y37Ooy7fGwUxatjRLL4TvJm0QwBRgwjUvkMoXjlQ2bEcCh5R6zHpIuWue5wIpUPSYpXPmRGCyd5R4M+rGAh7tAilc8wilc+ZEYKJ3lHAj642HFEKp95FK98yIwQTvKOAHpokaOKVD4jKV75kBk8nORNBDkk23FFKl8VKF75kBk4nOQdGPDQ4mSuO75I5TOW4pUPmUHDSd5B4Y4oLO4pkBEZQ6KqeKUXF0hmzKQbAiRvN9ySpgI9k+rQxqq6Nbofhvb5xmde9UEPkJbkBYCIzCKJSPWlWr57vXyru7H2CmZvoHgFK48ZHSBA8h7AkcEXtEhVVffv/rl82Nbs3fc/3MsIfL/93vOzlrk5fzbYE8SuyUnersglSNc8vQK5fnkjo23bSPsWZj7FKxiUsRmRvLGIpYwf9h9D4RZ8qdqIa4TQG6D7TPEqvEWgMUleKJzdM0vgfj7su8vPLFss1JXePAvvFkDxKhA3ZLQFMjPm1Q0BJ1JZu+qW2pOqah91t7Hd6OsZmbdxoj4pXkXBhYhM8iJQ7JsHXqS6deQ8Y1czMusIfCZm0GmKV0Ew4SKRvDgsO+WUSKQKF6TOjNBRlaJ4FQVX38gkb18E+6YfSKTymelGaNziDYpXPqAThJdO3gSQDJfl4CKVv2o/yimKVwJCSRvJO1JrjSFS+arqRl9rw11tX0bbcIpXWySSfpK8SeE9kflIIpXPIrfyyhiKV6acF8k7QluNLlL56kzxyodMluEk7xjNkkak6l0T5z5XFWzds0F7F71rOK0MSN6B2zMjkcpXc9zc15hLN7f3lcTwXgiQvL3gi0vsOvLAK6niLDTodc9GRt+7WBsYPwwBkjcMJ0wstBsp92edq4uxbpfL07pnpHjFp27s0IUdkbwwKE9nlK1I1WK2uyB8qXDus3gbMl2oW4pKFTSLfEneoZoZfe8T+aOCFgzQ655NXs+fbqlxeUEk7wBtJqOOzvuQI8/pn/uh6oS8dWQoXqGaZZsPybtFItGnEFf/rmQFzR7p0p4wzLnPMq8+ESXuFP/rNw6vM7FJ3jMA9T6NdhflPmzj0vY2LTAD5Lpn/dkgxatA4M9FCyTvuWx4vg2BBCKV3sppfbRNW/mIMDf6Itc9U7xCNIvLg+R1MCR6w4tUy0SWnswWve5ZCuPoKyD03Ujevgh60stcVzto7TndJXgYkcpnGVK80tH3lzXyKZk+qycdTvImaF4hropUt9CsBxKpfDY791nm277z0eEUr6IhO05A8h4jcvZ7QITyRSpfJXELN4ypG03AVxbDzyBA8p4BKPa0W79sDNQllFFvUJHKeF5ix8ZYi7NFNAHnpXjKY/BpBEje0/jEn0W7g0iyxNfmeQrwumcpQLUB+eAWiwDJG4vYifgyimhHrE9EiT310Ci9semSxXejL3L+be2q8VaS2TzVjEleUMsKcScnUvmgcYtEnHjlixEZjvZWIosvNTrJi2q56YpUPoQoXvmQGSic5AUA3bh9kxSpfPA499lixStfWQxvR4DkbcclLhT9I3skKeJqEhcbLF7J1OMuzoB5xyZ5e7Z/c68SOepmJ1L5IHKjL1a8KviZVz6U0oWTvH2xxT8JEjmX7Fu7s+mdeGUM7JE5Bu3FmOm+SN4ebXv9/ud1j+TPk4qC25Dh+bmcQ5Drno25bLyZnGuchW0kb8dmSCFSiSlFjbpir9uc+4z80X5V6f1ylzff/AiQvH5sTp9Bu3ciUjkSnC41+uzf7j5eHu/RmYQlQP9on+LVGdzzJe8Zw8c83bh1SJFqg15J9e3dx9W39//5ZKtqfbxL+FrP/+XuY43C0V14rMV5DtZSvDrTOCTvGYBaT+NFKtxifzFYyWmebPSR81LPX1TVJx2VJQlkay5AFK8gaJ7PhOQ9j9FBDPi9SLBI5YhrzKUJfFkZmZEjsFwUkBcijr4n2pHkPQHO8SknUlm7Og7v+R3mav71x/+q0BNM3K3dMgKvUQR27rNckLZ59/7kumcvhCSvF5qWE2iRShRa19lbijoICvii7m9lbdend9QXEaN1gDmwC5KUpU+cpHglQBxvJO8xIp7vSUSq10tYJxf3t18Hr6o3nqpHB7sLkrU495niVWsbkLytsLQEou89Av+upHGX6xarY4IuUa6zKxS87pkrrxyqB28k7wEc7V8akaovOfYzhz0JUgnXw13etwl67EZf5LpnYyheHbUQyXsEyPHXJCIVcDmhiE393OW9Cv9+9Wqz97X3oVvqiRavels1nQxI3nNtmblIJeZHq8uSpm2DEnevANi8XvJU8UoVdTnkRvKe6AOTF6kO6l6hFlcc5OrcZ6x4tZJpTH1QyEy/kLynGn76ItXX2lf2Udcmf/0OPXgSr1AjuxKXo680EMkrILRtcnXXDqIdpe10l7CcRarN/69eJRl5FSg3+gLVdWPtymkRmvmM98WM6+6tuhC3lg7SdcFDe75A5RUpUqmxlQXek9UMW3YnXhmDu0Bw5ZXhyGtaXvgnQd42nbelsLggXUklKVAilWRlHlKOulrA1x2oskuesxevSF7pBftb444hybERtxGmuNqnXwvtm9zr+MsAo+7WQMFhY6oK59FYcZ8/rJFTm62pRXySvMfNhHbHgHM90EqqrzWWC8Et+t7u18z9ByqMbfyno84ocVWbiEo0lcgk715LylxXO4J2iL3QXodZi1S/vXkJ8whCUXKjr7W4cnX0/WWN9JRCqzJ6PJK3aQIhbuYi1UIvLI21/T8scuVTpDngH+0bg/aWIuszVnSSd4s8XqS6x4pUdrU1FfC5GWPUPbAbLV79+hMSnwNTc/1C8krLJBCpjLiHsJ/EySgJW78s1TUiUi31c8xd8NmIeHUPs6Gqbpz3BMsw/4xIXm0j9Ppla2HEHUukUlgG2HFzX2NUq4BOLUzmr9mTV67W2uBIwQP2dyUJfu43vru8Rwg3+gIvdMbKraMZiVezJ680OO6+o3ZM4EqqxWLxRrNE7XZEkcpbh6d1z1x55QXIf2LW5M3570qmPupuu6QbfYEXPMm3bn4NJofT3mZL3txFqouqWiO73hDrl7va26jyuNFXxKuutrSlyzVstuSVe4M618W1i7VZi1SDrV/uiij61tGHNVSh71qtlOlmSd7GraJIlbJnRebt3GfsuufJP/NqluSV+4vYqzJwzjYLkcpPbOy6Z/QtQL/do5yZHXnl1hCWuKLgNnO23g04F5HKB5Qbfa1F3vud9H/9jkFeX9slD3cilYUuM1SbYZ1NRCrohSVnkUqBa9vh654nLF7NirwpRCo3WrT1wsiwZiUVcB5e3WcvUvkwonjlQ+YgfDbknZtI9Xn1EqZ+7/cYmXa4J1jI541i6ryZ/QiAY3dBlOkIIKunLCb6dymzIS9Fqqd+3PXdkfX9z5+Mtbrfyuetw/TCrq8lXIncNW9POth0RPKv4V6XZDr2NgvySseDziWl06J+7mdyF6kEu1rIuXZkfVr839Zna8HkTuLC7p270ddapPdwmcJLaANjqLDJk9c1mLXo33rCRoWcRSohYy2k/SSdMWwubu2tI7okgGxc93wSxsmTF+4uVdWtGxVOwhp28tu7j3pRCSNGWJbYJ0F2e0AB7PaMwxl4D10grOWChPXCJNOxtkmTt5mHIcmxkQ4FGXXVXVZXE9nwn1ffwX5k34yg3bAD3p5x99DR4tVEnjg5afIKOWBzMEcy4JMgE6ykunU2At7cVMOYbsQ17lU3ebgvgW+nokEumE0BtXxi+4VkOMY2WfKKe6QNpA2FwnU+T4JEPNBt8QjDXrydjcy9ceKVaCDgiwuqj0XlM0nyCnFVaIGNRA5R4MKBzEWqO6kvjHiSF2ajePUMx0mSV67S2gGfVbZzAFCkyvnvSpqLnoponaFKldCNvmjxqvAnTk6OvI071Ge+dtz/YCKVZmxz/ruSbuqyVuv5/rjYPA/sF+LEK2MeDOolwpq7YKHyw+UTlNMiKFZJkRDztf36AkWqZv0yzCWVCwHs70rQynxDtH0kMcfA6YsYpG2h2ogclrdNirxyFdWG0AZBtcR8RCoZhVCgicp/D8vrKCPnPss05ii4+9eC1z1PhrxCXIpUHbuwYIe96P1h9Ef1Ha0JSqb5o9zyGr6QJ6gK/SNNhrwUqbp1BiEu+qIH81Z8NXKjr7XIe7+wVWE+m1OET4K850WqaOgoUkVD1iTAKsJNps8/+KN9YyZBXnF7sLeG5iJSPf27AE6ZryrYr62e07UlBCxeiReC7UctJiODiievAI6dr8mtCJRSquuXK2uRi0Wwf1eCVubTz3UP+r5zn+WCcRDY50th4lXR5BXioudrxgDdPvT6ZZnXw+Z5gh32oickQl30IvkHw0TKLUq8Kpq80pmxbg6wAyYYdR8+X70C3IIxRoiLv+gNPOoK0dwGH32NuWw0I2r0sgAABSFJREFUFJd/zm/FkrcBGDdfk1aSjgBb/H4B/ruSL9bCbINf9IBTDWmGLhty9DWioahX0sWOQdMUS144wF+qJQr5rFdSoUUqBa2qUPdcNbfoXS66Wj5u2aQx+qP9OtqQgRMUSV70Uj7BHHZvMoG7nLdIJeDJSD5qR3fTAGOQXlhtjHkje9ZbkeQ14MX9OYtUVubhqB4knVzdQe2YqCy3+Vxe6xMkP6zvpIw7vbgOsn9Y30h5N3Lx0OdsmfjXiRTWrk6czeJUceSVxpqTSIUddbG3rY47cC0kWrldL65D7Fof3Y8twXxPcZHDWNbkUhR5nUgFviLKfAkmBIlIBb2wiEgFm4fDL3pNB5ryh2CWNYGLIi9cpLIWRlyd60pHhs27bFXhfu6nD1yz+buBgl9e2x+G5DWAl86hJBsYOSSvh2Z9rBz238CjLtpdhnoE/dFiDggEsCMvwiJfHlX1xneqUzhwJVWCUReyGENxaVw/5EVPs+WeAQLlkNcYXAcUBRe5lA+8DBI76j4+4nAzM3t9Y/T+scn1VQR5G5cZhiFSpNJRF/njA8kLNg93gC0W/3KffItGQPoJyRuN2nGCxeLvx0Gdv1uLJUdnQ54ntCJSwf9T11Koeo50UAhyxVZQgbGRihh5pVK17IgNKlKpQd8Y026biX5h3WUp3t1ak09uHRCwVh+10yHhcElKIS/GfQGKVOgmsjIPR+dpMp+zwesLzBB5JwJo1kFWZZD38fF/B1Z3+SLkQIpUWxNAbi581FX7cp+zqY1Z7jJ9ydKuI6MKIe+i98grHTnlXLeXfciVVEftq1+zn7upkRntD9JXsD8xTFS5RaJ8odm6EVNGzs6ZAn/u12ZDH5dX0sJWUrXZZrDPeWot4mxgOREe3v3j37AlqamrXQR5GxC6XQ3FBXLkbzJJ8fHbm5dqW4cRrrpv0qYwy+Upo8hGCIx8jpbLd4JvRRFX8S+GvE0nfCFGb2QP26y9knRKrLD4PWKJ66tueTCBdcT9vHqpaXqUGpz0RxLYi9XGiGdW0oi7rUkx5FWDhYgb6YRL2c+NJE8N8v0PsGWGWv6p/ferV5vPq++WSkqJt5Hdt20qa5epR9z9whU32d8auZhJePAFRuJOedtoPxLSvkjtmaUCsSjyKgjSCTeyvxXgX7jOqHPh3X4rjVHJPlqDKCmFxC+UoMZUevFQsshe3WuYngMp1Cb2pbc/BBu9+O2wM0Zsc/vGGDPl/UH6zL3suz7yevnWDP0Cllccebd1FwJvXGd8vVTXeLtn0xhKUHWLhazLp/3llYZt7R/z8wA7EWiU0LK/mPi+lHprP8mmj/TtA8WSt2/FmZ4IlI4AyVt6C9L+2SJA8s626Vnx0hEonrylNwDtJwJdESB5uyLHdERgZARI3pEbgMUTga4IkLxdkWM6IjAyAiTvyA2ALJ55zQsBknde7c3aTggBkndCjcmqzAsBknde7c3aTggBkndCjcmq7BCYwxHJO4dWZh0niQDJO8lmZaXmgADJO4dWZh0niQDJO8lmZaXmgEAoeeeABetIBIpCgOQtqrloLBHYIUDy7rDgEREoCgGSt6jmorFEYIcAybvDIvSI8YhAFgiQvFk0A40gAvEIkLzxmDEFEcgCAZI3i2agEUQgHgGSNx4zptghwKMRESB5RwSfRROBPgiQvH3QY1oiMCICJO+I4LNoItAHAZK3D3pMSwR2CAx+RPIODjkLJAIYBEheDI7MhQgMjgDJOzjkLJAIYBD4EwAA///Fol1bAAAABklEQVQDADi0p/r9hNzAAAAAAElFTkSuQmCC\";var ti=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAMAAABrrFhUAAABOFBMVEVHcEy97COy3y1yoi603zhfjlp3pTJ4p0mpz27a6tcuY6Gz4S9pmS297CQgV50dVJ4nXKGWuuqdzCey4SOevuudwfSLuiVqmNdThMeSwiX///+exPdfjyuZwPSLuyRomCqOtuy04x0lXKZjkyqw4B6OviRxnNaVu+6BsSWVxCKr2h+byiGYxyJSgsKezSGo1x+SwSN5qSdKe71tnSm76hxxoSl1pSh9rSYbU6B+SBgtY6yj0iG+7hyHtySBquGg0CCGruSEtCV8pt13odpqltFZiMdlkc43bLVfjcqKsee56By35h2l1SCt3R5Ddbk+cLU0aK95quuRvPSEsu9roOWycCVdld9NidjBeyk4ec/RiC74+/Hq8efh7cXL2rJ2OwHO3u7Bl2+ty3+tzNbRtZzJ6HSWumCTaUlth7IzAAAAGnRSTlMA3GegQkJuEicObYnMry3To3G00EOj1K3c6e9b4CAAABpASURBVHic7V0JQxrJEsYTEI3GJCa7iqCgEHVRHwi7ind2s3hsEjVegBqJ7v//B6/Pme6ePqZhEHX9BpjTnq5vqquranrGUOgFL3jBC17wghe0HeFOV6DDiHZ1d7oKHUW4q1zu7XQlOomhcqHcFel0LTqHoQJA+U200/XoFGIFjKFOV6RD6N6j+G8awu79vX2Mva7/oiHsndp38abTtXl49E5B7E8RxDpdn4dG5M0Ui3RzfWG496m2nXBXWoBtTxDt7R4CXtRT7UBiovzptM21DAPhC2WIJ2s8ut8cCnjjNyyKdg/tQ/8JuRBdba1lW9F9MAdxOEfhzxnojU0V9goUe0+YgFDvmzkOflSgd2h/j8NTJiAUGl3kYFSB3jf7AqaeNgGh2AELg0ELDwG/ATsOeAZ+n7wHFVs7WENAM60KdKenJHiq3aCDGBR8cxP+rK1pLmdkKD3l7TrT6dGHq2qbMLqJkIPfnNIX6J0DHWUa95dpt+tMHz59Fzo8lnOhup6xOdFroHgGgXRkYd6FvCeMzalw8FRjARa9CwDz8wtwkl5Qobdk8eZZ5BNHFxyMSXbzfSWHzafeC2KEf/lIseS9orE1DZ6+DUToX3LgaQO9uU011N3GE8PYDMLSzIzYBiI5HeY7Uts2oHdyhoLvB8Kj8zo8fTeIomeSglfq7gUtnksLAJq+TjDZw24Of9RhYewZ3VoepQxwWh2DdhF2Dksfl/AXb1jCa8/ADXQQyW4jZEvMVe2bEbGEf/Hsl2ekAEAFsgDb4NPnbuvxEMDhOSkAuNrZbAlykO13NkWQVVyfVOA5WQCIsRKGawX717Xo1xT2FNG/vFwCU9GxguGxbTXW13t0hT1FRIrLCIPOhqwWz6wBAPQUi5CDorNeQmahVMqiicyyWbzy3BoAQF8Rg17awZIGz1D+UDgPpF8prpCIOEyahAylQX1RTxQ9KwjEEehDohbJx53AWvHZGUCMvpV8Pu8Q0F9UYXnw+RlAhHAegRBA9AEAtgs8x3im1x+ghyVgcEWB5yt/qD+RSOQTlIC8HM/R/lNEEpABQoBc/MFnkQdXITwIGcAEhKEyeND/TM0fRU8ikUo5BHjQ86wvP0R/CgBfZC8Bg32Gv34GeAXknyAEpHj8F8QHgATgJY6Aif+I+KDvm5igbv5ECk5A+InB5276GPRMTFA/B3ABMdj/7C0fi76JCeroAC4Ge/r+O9eeoM919IzNPhyO9PX1I/T2RcKPmqswqGgPRH9A1xQU2DM4VlwulWCOCGYJx8ZG+x/jrbJwpL9nbBsmsgBQML8y2CINoMTBlSLOFGACsjBLur4+OTMzFut9TJoQhcKvb8MbHkT+ZRjQg5BucLBJEsL9IEqCETLOIDoqAOVH95iXxmKPxGxGusdAjSbX1+EdL5jJJPKTuB5GNj2WJj7Sj2JEnB2QEoDvJY52vi2Ee0d/AdLDOzuEANoCkAKsoNAOObi+LX20rycFIiTCgEoDIAELC/Njnb1vFon9gu5fIvl5ApYFAkD0AzgwPzoZ7R9MJYj8eZUGTDoE5OY7qAWRUXQne4bTgKxrA3gCIAWpCQMH4X7gFOKjgfj5FWwENATM5zZzo52xBZHRBTTeyyVgXWwCgIL8iqsBCeLwqosEThERP8FqQFFHQC63Od+BdhBBg/4QAUscATINyDsagCiYkPr8oOlP4CMoASsmAj4SAjbXHloJojE47hUxICOAsYJIA4gKYAYmUjLHHzT9CSR/IuUqAFSBoktACXlCggbMIwIONh/UEnQv5HKIANoEZqQaQFUA57xSVANSJPhxrEG0rx9FRClGAYgOuFYQ3TNUErB2cPBwYykjozkiv9MEZiQawHQDCbYJYPkRB8A/AJ7z4CDdQORPuSrANQE9AYujD+QadufgiH+WAZMGYApSCV4FPEjxKsAaAacbYAlY+riArSAhYO7NQzSDyOjmmksApwGTKg1I5OUa4GEg5TECUg3gPCFkBREBi3Pmx7FaRm8OPfniaQOMJ5RVuIKsFZSSkGI7AVcDDK4gS8DcXLsNQezggCMAy7/kaoC8H8Spfyfxp9QBrwrgO4ZyAj5SAjZdAg5H2/qajtiiS0CO7QaJBqzjYMisAWYbkKeuILEBJY0nxBJw2MYXlUTeLC4KGuAxgoIGOK5gnjECE0oVEI2gNBjwdgMcAYdte0sFlB8QcCBogOMIyAjgoyF/vUBCcAWLgiuoJmAREdAuBuATwA4BmxwBS55oSHQFOUdAZQRdCrD8ibw0GOAJwG0AEnCACUinDw/bwUAEPgNOCFgzEoA1AGVEsAb46QhTnC/MNoFlMwFrjgak01NzwTMQWZubYzQgl1P7wkgBSm4TcHzBlCu/igK2G7DTAI6AqamgGYgsHh5C+WUEeKygKRw0aABnBX1qgGMFKQHpYF2iKHwNxBxhwLUBoivIEFDi+0FqA/T94IQoPqcBy4IruCRzBCgBweoAkv+QtgHREzIEA3lGBQyekOMICJ6QzBEwEbAfJAMxaFkZDUAEzCsdAUYDipwGpAy+MKFAtIIKX3hJ4QkRAvaDe3kdfBMMQ8CByRNS5YX9a4A0HCypNSDHa0AaEbDfFZBP2Iu6VrcJUCMwzxkB6gv7jIa0NkASDnqSYp5oyOkGHAL2gnnpQrRryiFA1IB5qSMg0wDOBqgYEGwAEwws6wnYJATMuUYAElAIJDYcmkpLCNiUxMOytGiRswEGX1jIiWnzwjN8TmgNp0R4Avb2AjCE3bBT9doAH02A6wYYV3BC4wh4o6E8pwElVWJ8U6oBhdYNYRTLn5bYgJwxK1h0bg4K0ZCyG/D0goIGSAlgkmKuFcQaUGj5sfuhKVYDNEbQ5Aj46Qa8NoDLCcnTogsSArAGAAYKhRY9wu4pkYBF7Ac4GrCgIKAkSYxTBtQpISYadFWguKIjYF70hNKMDSgU9ltrBF37pAlIPCEtASZHQEZBSswJeTQg6/GF5QS4TaDQ2nv4Yvv7rg2QBwMeAnSOQMrKERBdQTEvrI6GHBWA72FroSeIdOFXWSk1QH1nQKcB8uvv6QbcrKAiGpqRETDnGkFMQCtvM47t+yLAGw5mFUMETIlxhQZIs4LKvLCgAeXm7WAkvb/PtgExJWIKBhRDBPyGg44NKIp5YUNalNEAaATKTccEMSK/1BPSNQFpXph1BJQ5Iewmia6gGA6a8sJcN1Aul5tUgSh+H7C3CUjywktcXlimAawKKI1ASuIMm0fJOGlRLinmEFAoN/kuwu49SoDCE5K5gtsSR8AbDJiygsL9YQUBS2I4KHUEoAo01RFEu/b2NDZA5wtrNMCJBzUqkJBpgHqUzAIJBmQagN5H2uQ7eXv3HAK4eNDOF3ZsAM0LJ4j0qeL97dVVvYZQv7m6ur2/z6eIFghDBPiEQFZJwIGsCUANaModHFIQsCgQoPKFhZyYowFAwpXbq3r1VwQyI6jWAQ+JCTJSinUFl1U5IdYREDVgn9iAcrmJxEB0b0/eBEQCVIlxaV44NZG4v6rxUosALNyvIEMoGgFVUiwnT4tSRwCgCTPYvefRAMYGmDwh/uYYVYGJieWrmlZ4h4Sr2yKgQBoMwCYwacgLpwUCyvZtYKjAE5BmbMABmxdW3BnwDhRLJe7rvqQnqN3e05tD2rywJxriCUBNwL4NRLoKRAUkvvCBkBjXEUBUAGi/nfi4MdyupBKqflA1SESqAdaJke6CSgMkWUHPcFkmGMAEJBL3/nTfA8BB3mqUjDccREbAtg0McQRMSaIhGQGSnBgiILFy1Zz4ELWr5bxqlIwnMS76wlQDrN3hgk4DRAI+MsOEuH4Qh4P5xK3e7usB/hZ0CytmX1hFAKLA0hfqdQngUyKUgDVBA5R5YSB/sYXLT0mo3xaLegKYrKDXF7buCGM8AVwTWBS6QcV4YUpAvtnWLwBSoAoHc0oCCk4bsIuJhzABXldwUUiKGW+N5G8DER+idgvcK2kwMM/7wk5WcJ8hwCoginYVOCOgzgqa8sKJ1tWfo2B5mdWAGTJkXuoLt2IFI4WC2Qr6ujUSqPyIglKJbwIfxWDAmxUsW1vBbt8EqFxB7Ajkg5YfmsP7UlZGwJqaAPtuICYh4FBFgDorGPj1x7i6z25rBokoNKDLZjD9EPrXLuqEgDktCjWgTfLDUGl920yA4AhY5QS6ykQFFFlB/TAhogHF4Oy/B7VbxIB6lIyQFrXsBqL75XITBMxwwUDxvn3yA9SX1n0TULAlIFJQEEDbgMQXRgSsM2nRbZX/E4xfBNvBpGrEuCwYsOkHewtsE+B7Ac2tEVYDSsvK4PcyKNNQu530RQBhwCIl0F2mGuBNCIhpUTkB2WW1Abi8/NlKbMSgejUzw7uCIgH7jA2wICDGEaC5M6DMC5fu1TJeAgSlBNXbGW1WkLUBFo5ArFwQbIA7UIzLCsoGiiECiprsDyQgMCX49UqRFGN84bK1Kzik1wDVeGGXgJKuB7zEsE6QKVC9/WhMixYss2JDjgYIVlBPANMEdNL9IAz8DIqBK9QGvASIrmCrGqC8QewhQKsAVAMuL39YdYg3440bxa7a2oI5MW5BQPSNVAN0wYBAgFayHw4DNkpQ3fp99fPFzo3cdtx5hggwvYB1TggQUEYU8GlRfwRMrm9n9T7gJYOf/pWg/vnz59XV6YsNqR7UNzWJcWsCusq4DfhPi3JZway+k2M04PLcokOcBRqwevEZcJCR0Fa9y20GSgDTBDxZQR0B8PFR/WW95HDuu0NsTEMCVi8uVldBU5AyoA0H7QgQ42HBE9I+QGyIgn6csxrgXwmqXz5j+S8AEatnDQ9x9cVNeTTULg3wjJLBGpA1hMGAADSdY/HPfSvB7OcLOOGf1c9ncfHPqnebirxwwZaAgmgD/BIAVEDrBGACLqnwhAt/XlEDCQ+VAM7gQlJsbHcuAWkxIWBBwFXZ6QYEAph4eE06Tgq2AcP1/HEO5T4/dxUBwI8S3BDBCQWIjh2BgjpuA2mqAs3dGvlUV7mCh0I87E2MT65r4iBCABH//Nyl4tyHV1T97cKDz6I9rKUXRVewbHuDOPphtnqnywurnp9FGrBtyoT9OKe45GZmr2jWSwDELk/BHfvo2J7bDVgEQx8utn6t+yXAkxU0GXWXAAE/TM2gIifgQnCO7hb5hyYKtuFw9P3FRQaY1D3J/VEVAYwGmAyakoDzcwN3NyoCLi5mWQrqUkfAQgMAARcNyICCAEk05OaEzAR8p/J+5+bfz79/19tCQMCZO8EP+sI1XgtqU5KsoEVG6D0sFJRXlybFNMEAGi5rsmaAAGaCP/QXznX0Vc+I3Ojj0HCBqeDM4d2hJy9sR8DF2Z916FmowkHNrRFTS/7x/TsRnOGAzrRKUP3rTAWsDRsO+dU7z50Bi6zwACrzT1ha3SotilxBHwQgafGX/tLZ9+9qr6g6qySA0rDlUFBPCxpgQcBbXNynGqJyyicBxBeeMciPNMDBOT/HM6US7BgIgKhQCupCN2BxY+Tt2ekZ/OygitS90dBiYATIofKKNqCEp/h7enbmLJw6EwSNEWr7XFrU5s7Q2ekpKO30b8RAFSiBbsC08MxAEASolKBCKga/cEYXmM3w92wcEwi112kCexY3R6O4IFAUHt4FCqKPzhnfIxEMAX98l+pA8tSIM/zToAw4TcBqpOAHpzgywA0YVV1WkPWEJo0E/GHEtcIprJgJcHjA2UPIAPaErMYHvCfFnJyeUgbqHhsgJ8BHL3BtEv8PVVhQobVCX36RrJ/gHzD7htyCO6oBViNE3p2eYICC6CDH+t3hoegLS0aL+nCEDARc/6vsByunpFYnpyfuEq3sCVmhP6cVSEGdaIAVAa+Zk5xe0Ut6l1ZpAJcXNrrCegJU6g9Q3WDrdcJIDpZm2XW6FaZP61gDrMaLv+WKcUKU2t2cjoAln7GAjgC1+kMCvp1Y4vQEdAh1+2fnwrsn4FzodPDHDdLq6UUjAcZwWEPA9b+6BlTD9QGfHfi7Q5bwAt1O6oxmcDppVKuwG7R7cmwX/Cn8oB+GAeATLC4agoHmCbjWqD8m4But1wnz+YYkddfA7w7dCrdt3UAG7MbLv/vG4aTh1qJ+aHh60pgRUhFw/a8pH3BC6rPzTQ2y74TZdFK5KZet5A+9Fotlqla9OzjwEuDGw0umnKCCAL36Q4xr5DagYfnIyNtv37bwXx6jDyiBqUjtbg0bAdkwIWM/KCfg+tqcE8x8g9XacupEAbds4V1wB/o9pgKQYy0fGop+Oxbwjb0TU60vbrqJcTEpZlBkhQaY7w/VxDoxtTOsHx/bPj275T0Hdy+qere5qXh+1pQWlhFw7WeswI2aACMqts8MvRNLSAIGuErW71QPEBtuDPz0EKDt/F00WiBgy/YdAq+PkzyOj46PhdvS9bV5+SARvSvk0YDrP1RDPzhUk2KdLPDOUv5QJHmUPDo6PnK+cD1Z4UWrQgqs7wyIGmDo/B3Ut5JJWBP2I1vyroM/syYgWjlCgEUlyRwuCrLV7uYXvGlR/f1xngA/1h+jkXRqRHEsLiW9e9Cm5GtbAkLvmNLYosTb8rW7hQXxDnlWZ9GqHAGa0E9ALSOpjW+8tSbgraqohihd/fbjR/6fjejHyLAE+FV/gCs7iQVYyx+KHsXjcfiFP/gDvnAh47lmmAKXgG1tP+AScO2j86eoZo5oXejErsWdRWavOyXtCQi9i6uQufIMzQAULLFvEtHptUOA2fdlcHOkrE88Tq+VEtY2UEtAPO5pBlALZmacEePaUTKEAFPox6Pa0FRnnHzZJX6vvQ0ERgD9LZjgh87IcrwhucT126VJOl5YN1QSE2AM/XhcHeEqkLrQqtCNdIdzDKkw3W1vAwGS7nl48cFX0gx+hc95z8Cnudb1KoAIsFJ/aAEcwamkcaY+4+McOXHuUIBkU++SesdRPS4sS5UAtYRt9I8W1FYAEOC/8ydo8MJ6KuPdyPHRjAmAbWBch3hDpgRQDe7Xs7oB8z+vLdUf0JrRVsWIplpAKKQnQKkE6BUo9yWlCvz0Ffpx5TVak3+8ybepvTOVq1ICWOeaUsif1g8KtCp/cy0AtAFz0UolCBI3JlU0oZlOEMFPy8v4fDNQ86i3Kv940+9VNbYBCE07CAQtG4DxZLPyhyJ+uEduUfsoaF3+5luATxVAblHb2kGj5QYQb+HNwq+pm+k4xcyMTNQzbAsF1ZujceF8ykl2HPw02wdARGk4geRkQ4/xOBuAwIV2mAIxBBrnIx0ictytC6mNe3GaDIQcvONOypRKNtN18DlKNoLWghonyrh74vH4OFsvpzLeaHA8nmlFfhQS+sbRUbANoWZzciVaaQGgDeiyAjIESMFNBpbnOQHz66tCTcYBjgpk4hnwcSe67v3g6SjTMLwx0h9q46hM4ZTemrgr3I9zVGsKAIBOksmws7g7dz7sxowkYWR9+ePkhEzxzNfZxyxxlaEMtaoAoCfMMIhndHD3JjM3LXFQG09qz8QJra1VpVX5Q9GKuSpeJJMZ5aPORlQbGR/y+0NLfSBRgSSSJ4M+sGL0myHbMu7OZDJJ5mixoXjUWX/1G8kkLQ6f0Tmhc66Mu8s9hq8J/ivre6ISDYgmsTi+IB4Yt7WIQPmDRAAKAJyhVmpwfJwc920PajeZSiUo2SEqgfyzrchWElSr4v6wH88kWalUMoAEgyZUazfxChLfUwqZ2BN6F6R/EYgCABWocEiSrxW2IAkqFqo3N+OZrS1zKXanTW4E9N/WonzVtsjXCluVra2NjQ3IQ+MGMIEBlhrjmQrc4Ud+y9NuBaQAQAW2ggQUFw/pQitbG4GWzp4osH/BHAV1RNXk67ohmW2wB8lE22CP2pAfI/mTDcnqBrPBUw4gNjAFAL7AxhPEbnDyh6K7Gxs7G+jLfjboL7eJru7IamWBHbd4/uTuCekRO/wXb2s5CmDxeufJ4X2Q8odCs7Jz7DK//DYzduGR/g72HrUr3cWvBPYvVzHe7iqxo96lwU7zf6o6N7cSoAXEeN9qXR8Ws4F1gRTRWQ92vau79BMkdp1zKU4hWQ/UAmK8Dlaq9iJgC4gQfT/7CUyzzK+z9omuyycFlDvYIz7RM3gL5TYz1Zj99ClgC4jx9tNTwV+BW0CM93+1qb7cUgAnaUcDgIh++Otx4hO/+HdbGgDE2787JqMF/m5TA4B4//cTQLsaAMKHTktnxp+Bu0As3v752PFbG1wgFq9/67SEevzW1gYA8eG3R40P7ZY/FHnUDHxoWw/ooq/TQuow0H75Q6GB/z1atN0AQERDHzotpwrtNwAY4dYY+CcgcT3lfrB5UU5L6PvnUaLvoeQHZoCc8otQhS/SRWt8ERa+OKtfpAXjTQ9iAB0Gvpjwj/GIgPGg8gN/6KHlM2HkYeUPhUc+B4kvLR74ZeTBDKDDADjtV7cGX7kZXfiq2sge/hV+vjJrwoK7Kj8Q4cHlBwx8fTT4Mvzq4eUPhV51Wm4XHZEfuAOrq6tf8fcrmugP96Xb+N3OTvKn3jLEI9hjv/J/2CH5QWe4+ijwwB0gz8C0U41p8mU28RumV8WVafcod+c0f5BmE1no2PVHDEyvThOsMl92G92wyq6xO9AeZ/Oq8Bd8savsZrzWweuPGZgWxBLE4ERlFoZHRgYgRkaGhZ2rbhHaEvC3o9efYcAGq19HBrh++9WAy4IlOi5/Ewz8MyCpdfjVQDMcPAL5IQO/85PzmXZndOVrDwhaFW7bK6AH4p9Py9bo1Bn/x4sBptJ8PXk+gPgD+pg9PDDMcyeUyH8ei/zAI3JrRYAq7Kzj5ekRPxmLVyP0z0gJbCG/s8U+dPynw6thR3SGBW5teMTn9QoDCvygw90fjzDLgAzDAzbh2qsBQ3G/P5rm70DHgO+Lz5Y3MKwj4TGpP4Xqqo1YXXwGYegeyIt8bJefoH+Yb/+/Dzdz7XlAFkaGXW0ARTZL6EMAXrNhp6KvArtQ4VcOgiryBS94wQte8IIXhP4P4nVznqPTxGMAAAAASUVORK5CYII=\";var{TabPane:Mn}=s.Tabs;function si(e,t=!0){let n=(0,r.useRef)(0);(0,r.useEffect)(()=>{if(!t)return;let o=document.querySelector(e);if(!o)return;let a=!1,i=!1,l=0,u=0,c=0,f=0,m=0,d=w=>{o.scrollLeft=w,n.current=o.scrollLeft},g=(w=n.current)=>{window.cancelAnimationFrame(c),window.cancelAnimationFrame(f),window.clearTimeout(m),c=window.requestAnimationFrame(()=>{d(w),f=window.requestAnimationFrame(()=>{d(w),m=window.setTimeout(()=>{d(w)},80)})})},p=()=>{a&&(a=!1,o.classList.remove(\"is-dragging\"),window.setTimeout(()=>{i=!1},0))},v=w=>{w.pointerType===\"mouse\"&&w.button!==0||o.scrollWidth<=o.clientWidth||(a=!0,i=!1,l=w.clientX,u=o.scrollLeft,o.classList.add(\"is-dragging\"))},y=w=>{if(!a)return;let F=w.clientX-l;Math.abs(F)<4||(i=!0,o.scrollLeft=u-F,n.current=o.scrollLeft,w.preventDefault())},k=w=>{let F=o.scrollLeft;if(i){w.preventDefault(),w.stopPropagation();return}g(F)},E=()=>{n.current=o.scrollLeft};return g(),o.addEventListener(\"pointerdown\",v),o.addEventListener(\"click\",k,!0),o.addEventListener(\"scroll\",E),window.addEventListener(\"pointermove\",y,{passive:!1}),window.addEventListener(\"pointerup\",p),window.addEventListener(\"pointercancel\",p),()=>{window.cancelAnimationFrame(c),window.cancelAnimationFrame(f),window.clearTimeout(m),o.removeEventListener(\"pointerdown\",v),o.removeEventListener(\"click\",k,!0),o.removeEventListener(\"scroll\",E),window.removeEventListener(\"pointermove\",y),window.removeEventListener(\"pointerup\",p),window.removeEventListener(\"pointercancel\",p),o.classList.remove(\"is-dragging\")}},[e,t])}function Zl(){let[e,t]=(0,r.useState)(\"quark\");si(\".account-tabs__nav-scroll\");let n=[{key:\"quark\",label:\"\\u5938\\u514B\",content:r.default.createElement(st,{qrcodeUrl:\"/quark/qrcode\",cacheUrl:\"/quark/cookie\",checkStatusUrl:\"/quark/check-status\"})},{key:\"uc-cookie\",label:\"UC\",content:r.default.createElement(st,{qrcodeUrl:\"/uc/qrcode\",cacheUrl:\"/uc/cookie\",checkStatusUrl:\"/uc/check-status\"})},{key:\"uc-token\",label:\"UT\",content:r.default.createElement(st,{qrcodeUrl:\"/uc-tv/qrcode\",cacheUrl:\"/uc-tv/token\",checkStatusUrl:\"/uc-tv/check-status\"})},{key:\"115\",label:\"115\",content:r.default.createElement(st,{qrcodeUrl:\"/115/qrcode\",cacheUrl:\"/115/cookie\",checkStatusUrl:\"/115/check-status\"})},{key:\"baidu\",label:\"\\u767E\\u5EA6\",content:r.default.createElement(st,{qrcodeUrl:\"/baidu/qrcode\",cacheUrl:\"/baidu/cookie\",checkStatusUrl:\"/baidu/check-status\"})},{key:\"ali\",label:\"\\u963F\\u91CC\",content:r.default.createElement(st,{qrcodeUrl:\"/ali/qrcode\",cacheUrl:\"/ali/token\",checkStatusUrl:\"/ali/check-status\"})},{key:\"guangyapan\",label:\"\\u5149\\u9E2D\",content:r.default.createElement(ld,null)},{key:\"xunlei\",label:\"\\u8FC5\\u96F7\",content:r.default.createElement(id,null)},{key:\"yidong\",label:\"\\u79FB\\u52A8\",content:r.default.createElement(sd,null)},{key:\"tianyi\",label:\"\\u5929\\u7FFC\",content:r.default.createElement(ni,{api:\"/tianyi/account\"})},{key:\"123\",label:\"123\",content:r.default.createElement(ni,{api:\"/pan123/account\"},r.default.createElement(s.Form.Item,{label:\"\\u514D\\u767B\\u5F55\",name:\"useDirectDownload\",valuePropName:\"checked\"},r.default.createElement(s.Switch,null)))}],o=n.find(a=>a.key===e)||n[0];return r.default.createElement(\"div\",{className:\"account-tabs\"},r.default.createElement(\"div\",{className:\"account-tabs__nav-scroll\",role:\"tablist\",\"aria-label\":\"\\u7F51\\u76D8\\u767B\\u5F55\\u65B9\\u5F0F\"},r.default.createElement(\"div\",{className:\"account-tabs__nav-list\"},n.map(a=>{let i=a.key===o.key;return r.default.createElement(\"button\",{key:a.key,id:\"account-tab-\".concat(a.key),type:\"button\",role:\"tab\",\"aria-selected\":i,\"aria-controls\":\"account-panel-\".concat(a.key),className:\"account-tabs__tab\".concat(i?\" account-tabs__tab--active\":\"\"),onClick:()=>t(a.key)},a.label)}))),r.default.createElement(\"div\",{id:\"account-panel-\".concat(o.key),role:\"tabpanel\",\"aria-labelledby\":\"account-tab-\".concat(o.key),className:\"account-tabs__panel\"},o.content))}var I=bt.default.create({baseURL:\"/website\"}),qt=(e,t=\"\\u8BF7\\u6C42\\u5931\\u8D25\")=>typeof e==\"string\"?e||t:e&&typeof e==\"object\"?e.message||e.msg||e.desc||e.resultDesc||JSON.stringify(e):e==null?t:String(e);I.interceptors.response.use(function(e){var t;if(e.data.code!==0){let n=qt((t=e.data.message)!=null?t:e.data);s.message.error(n);let o=new Error(n);throw o.handled=!0,o}else return e.data.data},function(e){return Promise.reject(e)});s.message.config({top:\"40%\"});var Jl=\"https://o.alicdn.com/captcha-frontend/aliyunCaptcha/AliyunCaptcha.js\",Ir=\"yidong-aliyun-captcha-button\",Ql={2:{prefix:\"7elm7k\",SceneId:\"1rmw421p\"},3:{prefix:\"7elm7k\",SceneId:\"kcx16g7r\"}},Rl=(e,t)=>new Promise((n,o)=>{if(document.getElementById(t)){n();return}let a=document.createElement(\"script\");a.id=t,a.src=e,a.async=!0,a.onload=()=>n(),a.onerror=()=>o(new Error(\"\\u6ED1\\u5757\\u7EC4\\u4EF6\\u52A0\\u8F7D\\u5931\\u8D25\")),document.head.appendChild(a)}),ed=()=>{let e=document.getElementById(Ir);return e||(e=document.createElement(\"button\"),e.id=Ir,e.type=\"button\",e.style.cssText=\"position:absolute;top:-50px;left:-50px;opacity:0;pointer-events:none;\",document.body.appendChild(e)),e},td=()=>{let e=String(navigator.language||\"\").toLowerCase();return e.includes(\"en\")?\"en\":e.includes(\"tw\")||e.includes(\"hk\")?\"tw\":\"cn\"},nd=(e=\"\")=>{try{return window.btoa(e)}catch(t){return window.btoa(unescape(encodeURIComponent(e)))}},rd=()=>{let e=navigator.userAgent||\"\",t=e.match(/Android\\s+([\\d.]+)[^;)]*;\\s*([^)]+?)(?:\\s+Build|;|\\))/i),n=e.match(/(iPhone|iPad|iPod);.*?OS\\s+([\\d_]+)/i),o=e.match(/(Edg|Chrome|Firefox|Safari|Opera)\\/([\\d.]+)/i),a=navigator.platform||\"Web\",i=o?\"\".concat(o[1],\" \").concat(o[2]):e.slice(0,120);t?(a=t[2].trim(),i=\"Android \".concat(t[1])):n&&(a=n[1],i=\"iOS \".concat(n[2].replace(/_/g,\".\")));let l=\"\".concat(window.screen.width,\"X\").concat(window.screen.height);return[\"\",\"\",\"3\",\"7.17.7\",a,a,\"\",\"\",i,l,\"\",\"\",\"\",nd(a),\"\"].join(\"|\")},od=async e=>{let t=Ql[Number(e)];if(!t)throw new Error(\"\\u6682\\u4E0D\\u652F\\u6301\\u5F53\\u524D\\u6ED1\\u5757\\u9A8C\\u8BC1\\u7801\\u7C7B\\u578B\\uFF1A\".concat(e||\"unknown\"));if(await Rl(Jl,\"yidong-aliyun-captcha-script\"),ed(),typeof window.initAliyunCaptcha!=\"function\")throw new Error(\"\\u6ED1\\u5757\\u7EC4\\u4EF6\\u521D\\u59CB\\u5316\\u5931\\u8D25\");return window.AliyunCaptchaConfig={region:\"cn\",prefix:t.prefix},new Promise((n,o)=>{let a=!1;window.initAliyunCaptcha({SceneId:t.SceneId,mode:\"popup\",button:\"#\".concat(Ir),language:td(),showErrorTip:!1,slideStyle:{width:360,height:40},success:i=>{a=!0,n(i)},error:i=>{a=!0,o(i instanceof Error?i:new Error(qt(i,\"\\u6ED1\\u5757\\u9A8C\\u8BC1\\u5931\\u8D25\")))},onClose:()=>{a||o(new Error(\"\\u5DF2\\u53D6\\u6D88\\u6ED1\\u5757\\u9A8C\\u8BC1\"))},getInstance:i=>{setTimeout(()=>{var l;return(l=i==null?void 0:i.show)==null?void 0:l.call(i)},0)}})})},X={IDLE:\"idle\",LOADING:\"loading\",WAITING:\"waiting\",SCANNED:\"scanned\",SUCCESS:\"success\",EXPIRED:\"expired\",ERROR:\"error\"},zt={NEW:\"NEW\",SCANNED:\"SCANNED\",CONFIRMED:\"CONFIRMED\",EXPIRED:\"EXPIRED\",CANCELED:\"CANCELED\"},ad={[X.IDLE]:\"READY\",[X.LOADING]:\"LOADING\",[X.WAITING]:\"SCAN ME\",[X.SCANNED]:\"CONFIRM\",[X.SUCCESS]:\"SUCCESS\",[X.EXPIRED]:\"EXPIRED\",[X.ERROR]:\"ERROR\"};function st({qrcodeUrl:e,cacheUrl:t,checkStatusUrl:n}){let[o,a]=r.default.useState(\"\"),[i,l]=r.default.useState(X.IDLE),[u,c]=r.default.useState($t),f=(0,r.useRef)(null),m=(0,r.useRef)(null),d=(0,r.useCallback)(()=>{f.current&&(clearInterval(f.current),f.current=null),m.current&&(clearTimeout(m.current),m.current=null)},[]),g=(0,r.useCallback)(w=>{d(),f.current=setInterval(async()=>{try{let F=await bt.default.post(\"/website\".concat(n),{sessionKey:w});if(F.data.code===0&&F.data.data){let{status:_,cookie:z}=F.data.data;switch(_){case zt.CONFIRMED:d(),a(z),l(X.SUCCESS),await I.put(t,{cookie:z}),s.message.success(\"\\u626B\\u7801\\u6210\\u529F\\uFF0C\\u5DF2\\u81EA\\u52A8\\u5165\\u5E93\"),setTimeout(()=>{c($t),l(X.IDLE)},2e3);break;case zt.SCANNED:l(X.SCANNED);break;case zt.EXPIRED:case zt.CANCELED:d(),c($t),l(X.EXPIRED),s.message.warning(\"\\u4E8C\\u7EF4\\u7801\\u5DF2\\u8FC7\\u671F\\uFF0C\\u8BF7\\u91CD\\u65B0\\u70B9\\u51FB\");break;case zt.NEW:default:break}}}catch(F){}},2e3),m.current=setTimeout(()=>{d(),c($t),l(X.EXPIRED),s.message.warning(\"\\u4E8C\\u7EF4\\u7801\\u5DF2\\u8FC7\\u671F\\uFF0C\\u8BF7\\u91CD\\u65B0\\u70B9\\u51FB\")},12e4)},[t,n,d]),p=(0,r.useCallback)(async()=>{if(i!==X.LOADING){d(),l(X.LOADING);try{let w=await bt.default.get(\"/website\".concat(e,\"?t=\").concat(Date.now()),{responseType:\"blob\"}),F=w.headers[\"x-session-key\"];if(F){let _=URL.createObjectURL(w.data);c(_),l(X.WAITING),g(F)}else throw new Error(\"\\u672A\\u83B7\\u53D6\\u5230 sessionKey\")}catch(w){console.error(\"\\u83B7\\u53D6\\u4E8C\\u7EF4\\u7801\\u5931\\u8D25:\",w),l(X.ERROR),s.message.error(\"\\u83B7\\u53D6\\u4E8C\\u7EF4\\u7801\\u5931\\u8D25\")}}},[e,i,d,g]),v=(0,r.useCallback)(w=>{if(!w){s.message.warning(\"\\u6CA1\\u6709\\u53EF\\u590D\\u5236\\u7684\\u5185\\u5BB9\");return}(0,Mr.default)(w),s.message.success(\"\\u5DF2\\u590D\\u5236\\u5230\\u526A\\u8D34\\u677F\")},[]),y=(0,r.useCallback)(async()=>{if(!o){s.message.warning(\"\\u6CA1\\u6709\\u53EF\\u5165\\u5E93\\u7684\\u5185\\u5BB9\");return}await I.put(t,{cookie:o}),s.message.success(\"\\u5165\\u5E93\\u6210\\u529F\")},[t,o]);(0,r.useEffect)(()=>(I.get(t).then(w=>{a(w||\"\")}),()=>d()),[t,d]);let k=()=>{switch(i){case X.SUCCESS:return\"#22c55e\";case X.ERROR:case X.EXPIRED:return\"#ef4444\";default:return\"#3b82f6\"}},E=i===X.LOADING;return r.default.createElement(\"div\",{className:\"qrcode-card\"},r.default.createElement(\"div\",{className:\"qrcode-wrapper\",onClick:p},r.default.createElement(\"div\",{className:\"qrcode-glow\"}),r.default.createElement(\"div\",{className:\"qrcode-container\"},r.default.createElement(\"img\",{src:u,alt:\"\\u626B\\u7801\\u533A\\u57DF\",className:\"qrcode-image \".concat(E?\"qrcode-image--loading\":\"\")}),E&&r.default.createElement(\"div\",{className:\"qrcode-overlay\"},r.default.createElement(\"div\",{className:\"qrcode-spinner\"}),r.default.createElement(\"span\",null,\"\\u751F\\u6210\\u4E2D...\"))),r.default.createElement(\"div\",{className:\"qrcode-status\"},r.default.createElement(\"div\",{className:\"status-dot \".concat(i===X.WAITING||i===X.SCANNED?\"status-dot--pulse\":\"\"),style:{backgroundColor:k()}}),r.default.createElement(\"span\",{className:\"status-text\"},ad[i]))),r.default.createElement(\"div\",{className:\"cookie-result-wrapper\"},r.default.createElement(\"textarea\",{className:\"cookie-result\",value:o,onChange:w=>a(w.target.value),placeholder:\"\\u70B9\\u51FB\\u4E0A\\u65B9\\u4E8C\\u7EF4\\u7801\\u5F00\\u59CB\\u626B\\u7801...\",spellCheck:\"false\"})),r.default.createElement(\"div\",{className:\"action-buttons\"},r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:()=>v(o)},r.default.createElement(\"span\",null,\"\\u590D\\u5236\"),r.default.createElement(\"svg\",{className:\"btn-icon\",fill:\"none\",stroke:\"currentColor\",viewBox:\"0 0 24 24\"},r.default.createElement(\"path\",{strokeLinecap:\"round\",strokeLinejoin:\"round\",strokeWidth:\"2\",d:\"M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z\"}))),r.default.createElement(\"button\",{className:\"action-btn action-btn--secondary\",onClick:y},r.default.createElement(\"span\",null,\"\\u5165\\u5E93\"),r.default.createElement(\"svg\",{className:\"btn-icon\",fill:\"none\",stroke:\"currentColor\",viewBox:\"0 0 24 24\"},r.default.createElement(\"ellipse\",{cx:\"12\",cy:\"5\",rx:\"9\",ry:\"3\",strokeWidth:\"2\"}),r.default.createElement(\"path\",{strokeLinecap:\"round\",strokeLinejoin:\"round\",strokeWidth:\"2\",d:\"M3 5v14c0 1.66 4.03 3 9 3s9-1.34 9-3V5\"}),r.default.createElement(\"path\",{strokeLinecap:\"round\",strokeLinejoin:\"round\",strokeWidth:\"2\",d:\"M3 12c0 1.66 4.03 3 9 3s9-1.34 9-3\"})))))}function ni({api:e,children:t}){let[n]=s.Form.useForm(),o=async()=>{try{let a=await n.validateFields();await I.put(e,a),s.message.success(\"\\u5165\\u5E93\\u6210\\u529F\")}catch(a){console.error(a),s.message.error(\"\\u5165\\u5E93\\u5931\\u8D25\\uFF1A\".concat(a==null?void 0:a.message))}};return(0,r.useEffect)(()=>{I.get(e).then(a=>{n.setFieldsValue(a)})},[]),r.default.createElement(s.Form,{form:n,className:\"ios-form\",layout:\"vertical\",initialValues:{useDirectDownload:!0}},r.default.createElement(s.Form.Item,{label:\"\\u8D26\\u53F7\",name:\"username\"},r.default.createElement(s.Input,null)),r.default.createElement(s.Form.Item,{label:\"\\u5BC6\\u7801\",name:\"password\"},r.default.createElement(s.Input.Password,null)),t,r.default.createElement(s.Form.Item,{label:null},r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:o},\"\\u4FDD\\u5B58\")))}function id(){let[e]=s.Form.useForm(),[t,n]=(0,r.useState)(\"\"),[o,a]=(0,r.useState)(!1),[i,l]=(0,r.useState)(!1),u=(0,r.useCallback)(async()=>{let d=await I.get(\"/xunlei/account\");e.setFieldsValue({username:d.username||\"\",password:d.password||\"\"})},[e]),c=async()=>{let d=await e.validateFields([\"username\",\"password\"]);await I.put(\"/xunlei/account\",d),s.message.success(\"\\u5165\\u5E93\\u6210\\u529F\")},f=async()=>{try{a(!0);let d=await e.validateFields([\"username\",\"password\"]);await I.put(\"/xunlei/account\",d),await I.post(\"/xunlei/send-code\",{}),s.message.success(\"\\u9A8C\\u8BC1\\u7801\\u5DF2\\u53D1\\u9001\\uFF0C\\u8BF7\\u67E5\\u6536\\u77ED\\u4FE1\")}catch(d){console.error(d),d!=null&&d.handled||s.message.error(\"\\u53D1\\u9001\\u9A8C\\u8BC1\\u7801\\u5931\\u8D25\\uFF1A\".concat((d==null?void 0:d.message)||d))}finally{a(!1)}},m=async()=>{try{l(!0);let d;if(t.trim())d=await I.post(\"/xunlei/verify-code\",{code:t.trim()});else{let g=await e.validateFields([\"username\",\"password\"]);d=await I.post(\"/xunlei/login\",g)}d!=null&&d.hasAuth&&s.message.success(\"\\u8FC5\\u96F7\\u767B\\u5F55\\u6210\\u529F\\uFF0C\\u53EF\\u5C1D\\u8BD5\\u539F\\u753B\\u64AD\\u653E\")}catch(d){console.error(d),d!=null&&d.handled||s.message.error(\"\\u8FC5\\u96F7\\u767B\\u5F55\\u5931\\u8D25\\uFF1A\".concat((d==null?void 0:d.message)||d))}finally{l(!1)}};return(0,r.useEffect)(()=>{u()},[u]),r.default.createElement(s.Form,{form:e,className:\"ios-form\",layout:\"vertical\"},r.default.createElement(s.Form.Item,{label:\"\\u624B\\u673A\\u53F7\",name:\"username\"},r.default.createElement(s.Input,{placeholder:\"\\u4E2D\\u56FD\\u5927\\u9646\\u624B\\u673A\\u53F7\",inputMode:\"tel\",autoComplete:\"tel\"})),r.default.createElement(s.Form.Item,{label:\"\\u5BC6\\u7801\",name:\"password\"},r.default.createElement(s.Input.Password,{placeholder:\"\\u8FC5\\u96F7\\u767B\\u5F55\\u5BC6\\u7801\",autoComplete:\"current-password\"})),r.default.createElement(s.Form.Item,{label:\"\\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\"},r.default.createElement(s.Space.Compact,{className:\"xunlei-verify-compact\",style:{width:\"100%\"}},r.default.createElement(s.Input,{value:t,onChange:d=>n(d.target.value),placeholder:\"\\u8F93\\u5165\\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\",inputMode:\"numeric\",autoComplete:\"one-time-code\"}),r.default.createElement(s.Button,{className:\"xunlei-verify-send-btn\",onClick:f,loading:o},\"\\u53D1\\u9001\\u9A8C\\u8BC1\\u7801\"))),r.default.createElement(s.Form.Item,{label:null},r.default.createElement(\"div\",{className:\"action-buttons\"},r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--primary\",onClick:m,disabled:i},r.default.createElement(\"span\",null,i?\"\\u767B\\u5F55\\u4E2D...\":\"\\u767B\\u5F55\"),r.default.createElement(\"svg\",{className:\"btn-icon btn-icon--login\",fill:\"none\",stroke:\"currentColor\",viewBox:\"0 0 24 24\"},r.default.createElement(\"path\",{strokeLinecap:\"round\",strokeLinejoin:\"round\",strokeWidth:\"2\",d:\"M15 3h4a2 2 0 012 2v14a2 2 0 01-2 2h-4M10 17l5-5-5-5M15 12H3\"}))),r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--secondary\",onClick:c},r.default.createElement(\"span\",null,\"\\u5165\\u5E93\"),r.default.createElement(\"svg\",{className:\"btn-icon\",fill:\"none\",stroke:\"currentColor\",viewBox:\"0 0 24 24\"},r.default.createElement(\"ellipse\",{cx:\"12\",cy:\"5\",rx:\"9\",ry:\"3\",strokeWidth:\"2\"}),r.default.createElement(\"path\",{strokeLinecap:\"round\",strokeLinejoin:\"round\",strokeWidth:\"2\",d:\"M3 5v14c0 1.66 4.03 3 9 3s9-1.34 9-3V5\"}),r.default.createElement(\"path\",{strokeLinecap:\"round\",strokeLinejoin:\"round\",strokeWidth:\"2\",d:\"M3 12c0 1.66 4.03 3 9 3s9-1.34 9-3\"}))))))}function sd(){let[e]=s.Form.useForm(),[t,n]=(0,r.useState)(\"\"),[o,a]=(0,r.useState)(!1),[i,l]=(0,r.useState)(!1),u=(0,r.useCallback)(async(d,g)=>{try{s.message.info(\"\\u8BF7\\u5B8C\\u6210\\u6ED1\\u5757\\u9A8C\\u8BC1\");let p=await od(g);await I.post(\"/yidong/send-code-captcha\",{phone:d,captchaType:g,puzzleVerfycode:p,clientInfo:rd()}),s.message.success(\"\\u9A8C\\u8BC1\\u7801\\u5DF2\\u53D1\\u9001\\uFF0C\\u8BF7\\u67E5\\u6536\\u77ED\\u4FE1\")}catch(p){console.error(p),(p==null?void 0:p.message)===\"\\u5DF2\\u53D6\\u6D88\\u6ED1\\u5757\\u9A8C\\u8BC1\"?s.message.warning(\"\\u5DF2\\u53D6\\u6D88\\u6ED1\\u5757\\u9A8C\\u8BC1\"):p!=null&&p.handled||s.message.error(\"\\u53D1\\u9001\\u9A8C\\u8BC1\\u7801\\u5931\\u8D25\\uFF1A\".concat(qt((p==null?void 0:p.message)||p)))}},[]),c=async()=>{try{let d=await e.validateFields([\"authorization\"]);await I.put(\"/yidong/authorization\",{authorization:String(d.authorization||\"\").replace(/^Basic\\s+/i,\"\").trim()}),s.message.success(\"\\u5165\\u5E93\\u6210\\u529F\")}catch(d){console.error(d),s.message.error(\"\\u5165\\u5E93\\u5931\\u8D25\\uFF1A\".concat(d==null?void 0:d.message))}},f=async()=>{try{a(!0);let d=await e.validateFields([\"phone\"]),g=String(d.phone||\"\").trim(),p=await I.post(\"/yidong/send-code\",{phone:g});if(p!=null&&p.captchaRequired){await u(g,p.captchaType);return}s.message.success(\"\\u9A8C\\u8BC1\\u7801\\u5DF2\\u53D1\\u9001\\uFF0C\\u8BF7\\u67E5\\u6536\\u77ED\\u4FE1\")}catch(d){console.error(d),d!=null&&d.handled||s.message.error(\"\\u53D1\\u9001\\u9A8C\\u8BC1\\u7801\\u5931\\u8D25\\uFF1A\".concat(qt((d==null?void 0:d.message)||d)))}finally{a(!1)}},m=async()=>{if(!t.trim()){s.message.warning(\"\\u8BF7\\u5148\\u8F93\\u5165\\u9A8C\\u8BC1\\u7801\");return}try{l(!0);let d=await e.validateFields([\"phone\"]),g=await I.post(\"/yidong/verify-code\",{phone:String(d.phone||\"\").trim(),code:t.trim()});g!=null&&g.authorization&&e.setFieldsValue({authorization:String(g.authorization||\"\").replace(/^Basic\\s+/i,\"\").trim()}),s.message.success(\"\\u79FB\\u52A8\\u4E91\\u76D8\\u767B\\u5F55\\u6210\\u529F\\uFF0CAuthorization \\u5DF2\\u81EA\\u52A8\\u5165\\u5E93\")}catch(d){console.error(d),d!=null&&d.handled||s.message.error(\"\\u9A8C\\u8BC1\\u7801\\u767B\\u5F55\\u5931\\u8D25\\uFF1A\".concat(qt((d==null?void 0:d.message)||d)))}finally{l(!1)}};return(0,r.useEffect)(()=>{I.get(\"/yidong/authorization\").then(d=>{e.setFieldsValue({authorization:String(d.authorization||\"\").replace(/^Basic\\s+/i,\"\").trim(),phone:d.phone||\"\"})})},[e]),r.default.createElement(s.Form,{form:e,className:\"ios-form\",layout:\"vertical\"},r.default.createElement(s.Form.Item,{label:\"\\u624B\\u673A\\u53F7\",name:\"phone\",rules:[{pattern:/^1[3456789]\\d{9}$/,message:\"\\u8BF7\\u8F93\\u5165\\u6B63\\u786E\\u7684\\u4E2D\\u56FD\\u5927\\u9646\\u624B\\u673A\\u53F7\"}]},r.default.createElement(s.Input,{placeholder:\"\\u4E2D\\u56FD\\u5927\\u9646\\u624B\\u673A\\u53F7\",inputMode:\"tel\",autoComplete:\"tel\"})),r.default.createElement(s.Form.Item,{label:\"\\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\"},r.default.createElement(s.Space.Compact,{className:\"xunlei-verify-compact\",style:{width:\"100%\"}},r.default.createElement(s.Input,{value:t,onChange:d=>n(d.target.value),placeholder:\"\\u8F93\\u5165\\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\",inputMode:\"numeric\",autoComplete:\"one-time-code\"}),r.default.createElement(s.Button,{className:\"xunlei-verify-send-btn\",onClick:f,loading:o},\"\\u53D1\\u9001\\u9A8C\\u8BC1\\u7801\"))),r.default.createElement(s.Form.Item,{label:\"Authorization\",name:\"authorization\"},r.default.createElement(s.Input.Password,{placeholder:\"Basic \\u540E\\u9762\\u7684\\u5185\\u5BB9\",autoComplete:\"off\"})),r.default.createElement(s.Form.Item,{label:null},r.default.createElement(\"div\",{className:\"action-buttons\"},r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--primary\",onClick:m,disabled:i},r.default.createElement(\"span\",null,i?\"\\u767B\\u5F55\\u4E2D...\":\"\\u767B\\u5F55\"),r.default.createElement(\"svg\",{className:\"btn-icon btn-icon--login\",fill:\"none\",stroke:\"currentColor\",viewBox:\"0 0 24 24\"},r.default.createElement(\"path\",{strokeLinecap:\"round\",strokeLinejoin:\"round\",strokeWidth:\"2\",d:\"M15 3h4a2 2 0 012 2v14a2 2 0 01-2 2h-4M10 17l5-5-5-5M15 12H3\"}))),r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--secondary\",onClick:c},r.default.createElement(\"span\",null,\"\\u5165\\u5E93\"),r.default.createElement(\"svg\",{className:\"btn-icon\",fill:\"none\",stroke:\"currentColor\",viewBox:\"0 0 24 24\"},r.default.createElement(\"ellipse\",{cx:\"12\",cy:\"5\",rx:\"9\",ry:\"3\",strokeWidth:\"2\"}),r.default.createElement(\"path\",{strokeLinecap:\"round\",strokeLinejoin:\"round\",strokeWidth:\"2\",d:\"M3 5v14c0 1.66 4.03 3 9 3s9-1.34 9-3V5\"}),r.default.createElement(\"path\",{strokeLinecap:\"round\",strokeLinejoin:\"round\",strokeWidth:\"2\",d:\"M3 12c0 1.66 4.03 3 9 3s9-1.34 9-3\"}))))))}function ld(){return r.default.createElement(st,{qrcodeUrl:\"/guangyapan/qrcode\",cacheUrl:\"/guangyapan/token\",checkStatusUrl:\"/guangyapan/check-status\"})}function dd({visible:e,onCancel:t,onSave:n,panKey:o,panName:a,panPic:i,chunkSize:l,poolSize:u,noSaveMode:c}){let[f]=s.Form.useForm(),m=s.Form.useWatch(\"pic\",f),d=o===\"quark\"||o===\"uc\"||o===\"ali\";(0,r.useEffect)(()=>{e&&f.setFieldsValue({name:a||\"\",pic:i||\"\",chunkSize:l||(o===\"ali\"?128:512),poolSize:u||(o===\"ali\"?20:10),noSaveMode:c===!0})},[e,a,i,l,u,c,f]);let g=async()=>{try{let p=await f.validateFields();n(p)}catch(p){console.error(\"\\u9A8C\\u8BC1\\u5931\\u8D25:\",p)}};return r.default.createElement(s.Modal,{title:\"\".concat(a||\"\\u7F51\\u76D8\",\" \\u914D\\u7F6E\"),open:e,onCancel:t,width:\"90%\",className:\"ios-modal\",footer:null},r.default.createElement(s.Form,{form:f,layout:\"vertical\",className:\"ios-form ios-input-number\"},r.default.createElement(s.Form.Item,{label:\"\\u540D\\u79F0\",name:\"name\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u7F51\\u76D8\\u540D\\u79F0\"},{max:20,message:\"\\u540D\\u79F0\\u957F\\u5EA6\\u8BF7\\u63A7\\u5236\\u5728 20 \\u4E2A\\u5B57\\u7B26\\u4EE5\\u5185\"}]},r.default.createElement(s.Input,{placeholder:\"\\u4F8B\\u5982\\uFF1A\\u5938\\u514B\"})),r.default.createElement(s.Form.Item,{label:\"\\u56FE\\u7247 URL\",name:\"pic\",tooltip:\"\\u7559\\u7A7A\\u5C06\\u56DE\\u9000\\u4E3A\\u5185\\u7F6E\\u9ED8\\u8BA4\\u56FE\\u6807\",rules:[{validator:(p,v)=>{let y=String(v||\"\").trim();return!y||/^https?:\\/\\/\\S+$/i.test(y)||/^data:image\\//i.test(y)||/^\\/\\S+/.test(y)?Promise.resolve():Promise.reject(new Error(\"\\u8BF7\\u8F93\\u5165\\u5408\\u6CD5\\u56FE\\u7247\\u5730\\u5740\\uFF08http/https\\u3001data:image \\u6216 / \\u5F00\\u5934\\u8DEF\\u5F84\\uFF09\"))}}]},r.default.createElement(s.Input,{placeholder:\"https://example.com/logo.png \\u6216 data:image/png;base64,...\"})),!!String(m||\"\").trim()&&r.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:10,marginBottom:16}},r.default.createElement(\"img\",{src:String(m).trim(),alt:\"\\u7F51\\u76D8\\u56FE\\u6807\\u9884\\u89C8\",style:{width:36,height:36,borderRadius:8,objectFit:\"cover\",border:\"1px solid rgba(0,0,0,0.08)\",backgroundColor:\"#fff\"}}),r.default.createElement(\"span\",{style:{fontSize:12,color:\"#8e8e93\"}},\"\\u56FE\\u6807\\u9884\\u89C8\\uFF08\\u82E5\\u4E0D\\u663E\\u793A\\u8BF7\\u68C0\\u67E5\\u5730\\u5740\\u662F\\u5426\\u53EF\\u8BBF\\u95EE\\uFF09\")),d&&r.default.createElement(r.default.Fragment,null,r.default.createElement(s.Form.Item,{label:\"\\u5206\\u7247\\u5927\\u5C0F (KB)\",name:\"chunkSize\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u5206\\u7247\\u5927\\u5C0F\"},{type:\"number\",min:64,max:2048,message:\"\\u8303\\u56F4: 64-2048 KB\"}]},r.default.createElement(s.InputNumber,{style:{width:\"100%\"},placeholder:\"512\",addonAfter:\"KB\"})),r.default.createElement(s.Form.Item,{label:\"\\u5E76\\u53D1\\u7EBF\\u7A0B\\u6570\",name:\"poolSize\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u7EBF\\u7A0B\\u6570\"},{type:\"number\",min:1,max:20,message:\"\\u8303\\u56F4: 1-20\"}]},r.default.createElement(s.InputNumber,{style:{width:\"100%\"},placeholder:\"10\",addonAfter:\"\\u7EBF\\u7A0B\"}))),o===\"quark\"&&r.default.createElement(s.Form.Item,{label:\"\\u4E0D\\u8F6C\\u5B58\\u6A21\\u5F0F\",name:\"noSaveMode\",valuePropName:\"checked\",tooltip:\"\\u5F00\\u542F\\u540E\\u5148\\u5C1D\\u8BD5\\u4E0D\\u8F6C\\u5B58\\u76F4\\u94FE\\uFF0C\\u62FF\\u4E0D\\u5230\\u518D\\u56DE\\u9000\\u8F6C\\u5B58\\uFF1B\\u5173\\u95ED\\u5219\\u76F4\\u63A5\\u8F6C\\u5B58\\u83B7\\u53D6\\u591A\\u753B\\u8D28\\u3002\"},r.default.createElement(s.Switch,null)),r.default.createElement(s.Form.Item,{style:{marginBottom:0,marginTop:24}},r.default.createElement(\"div\",{className:\"ios-button-group\",style:{justifyContent:\"flex-end\"}},r.default.createElement(\"button\",{className:\"action-btn action-btn--secondary-outline\",onClick:t},\"\\u53D6\\u6D88\"),r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:g},\"\\u4FDD\\u5B58\")))))}var li=e=>{let{attributes:t,listeners:n,setNodeRef:o,transform:a,transition:i,isDragging:l}=Tr({id:e[\"data-row-key\"]}),u=S(B(S({},e.style),{transform:Ve.Translate.toString(a),transition:i}),l?{position:\"relative\",zIndex:9999}:{});return r.default.createElement(\"tr\",S(B(S({},e),{ref:o,style:u}),t))},di=({rowKey:e})=>{let{listeners:t,setActivatorNodeRef:n}=Tr({id:e});return r.default.createElement(lr,S({ref:n,className:\"drag-handle\"},t))},Pn=\"https://pan.199333.xyz\",ht=[{key:\"quark\",name:\"\\u5938\\u514B\\u7F51\\u76D8\"},{key:\"uc\",name:\"UC\\u7F51\\u76D8\"},{key:\"aliyun\",name:\"\\u963F\\u91CC\\u4E91\\u76D8\"},{key:\"baidu\",name:\"\\u767E\\u5EA6\\u7F51\\u76D8\"},{key:\"xunlei\",name:\"\\u8FC5\\u96F7\\u7F51\\u76D8\"},{key:\"tianyi\",name:\"\\u5929\\u7FFC\\u4E91\\u76D8\"},{key:\"mobile\",name:\"\\u79FB\\u52A8\\u4E91\\u76D8\"},{key:\"123\",name:\"123\\u7F51\\u76D8\"},{key:\"115\",name:\"115\\u7F51\\u76D8\"},{key:\"pikpak\",name:\"PikPak\"},{key:\"magnet\",name:\"\\u78C1\\u529B\\u94FE\\u63A5\"},{key:\"ed2k\",name:\"\\u7535\\u9A74\\u94FE\\u63A5\"}],Pr={id:\"\",name:\"\",host:\"\",username:\"\",password:\"\",deviceId:\"\",logo:\"\",libraryStats:{movieCount:0,seriesCount:0}};function ud(e){return String(e||\"\").trim().toLowerCase().replace(/[^a-z0-9_-]+/g,\"-\").replace(/^-+|-+$/g,\"\").slice(0,40)}function Lr(){return S({},Pr)}function cd(e){let t=String(e||\"\").trim();return!t||/^https?:\\/\\/\\S+$/i.test(t)||/^data:image\\//i.test(t)||/^\\/\\S+/.test(t)}function Ln(e={}){return String(e.name||\"Emby\").trim()}function fd(e={}){let t=Number(e.movieCount||0),n=Number(e.seriesCount||0);return{movieCount:t,seriesCount:n}}function pd(){return r.default.createElement(\"svg\",{className:\"emby-server-card__stat-icon\",viewBox:\"0 0 1024 1024\",\"aria-hidden\":\"true\",focusable:\"false\"},r.default.createElement(\"path\",{d:\"M875.690667 414.72H301.738667l576.682666-195.754667c36.181333-11.093333 56.832-49.322667 45.909334-85.674666L909.824 83.626667c-8.704-29.013333-35.84-49.322667-66.218667-49.322667-6.656 0-13.312 1.024-19.626666 2.901333l-0.512 0.170667L127.829333 273.237333C91.648 284.330667 70.997333 322.56 81.92 358.912l14.848 49.664c4.096 13.653333 12.288 25.429333 23.04 34.133333-8.533333 11.434667-13.482667 25.6-13.482667 40.96v436.736c0 38.058667 30.890667 68.949333 68.949334 68.949334h700.416c38.058667 0 68.949333-30.890667 68.949333-68.949334V483.84c0-38.058667-30.890667-69.12-68.949333-69.12z m17.408 69.12v69.290667H690.858667l70.144-86.869334h114.688c9.557333 0.170667 17.408 7.850667 17.408 17.578667z m-717.824-17.408h175.616l-76.970667 76.970667c-2.901333 2.901333-4.949333 6.144-6.144 9.728H157.696v-69.290667c0-9.728 7.850667-17.408 17.578667-17.408z m243.029333 5.290667c1.706667-1.706667 3.072-3.413333 4.096-5.461334H694.613333l-63.829333 79.018667c-1.877333 2.389333-3.413333 4.949333-4.266667 7.68H336.896l81.408-81.237333zM143.189333 322.56l0.512-0.170667L838.997333 86.528c1.536-0.341333 3.072-0.682667 4.608-0.682667 7.68 0 14.506667 5.12 16.725334 12.458667l14.848 49.664c2.730667 9.216-2.56 18.944-11.776 21.674667l-0.512 0.170666L167.424 405.845333c-1.536 0.341333-3.072 0.682667-4.608 0.682667-7.68 0-14.506667-5.12-16.725333-12.458667L131.413333 344.234667c-2.730667-9.216 2.56-18.944 11.776-21.674667z m732.501334 615.424H175.274667c-9.557333 0-17.408-7.850667-17.408-17.408v-315.733333h735.402666v315.733333c-0.170667 9.557333-8.021333 17.408-17.578666 17.408z m0 0\"}))}function md(){return r.default.createElement(\"svg\",{className:\"emby-server-card__stat-icon emby-server-card__stat-icon--series\",viewBox:\"0 0 24 24\",\"aria-hidden\":\"true\",focusable:\"false\"},r.default.createElement(\"rect\",{x:\"3\",y:\"9\",width:\"18\",height:\"12\",rx:\"2.5\"}),r.default.createElement(\"path\",{d:\"M7.5 3.5 L12 9 L16.5 3.5\"}))}function gd(e={}){let{movieCount:t,seriesCount:n}=fd(e);return!t&&!n?r.default.createElement(\"span\",{className:\"emby-server-card__sync\"},\"\\u5F85\\u540C\\u6B65\"):r.default.createElement(r.default.Fragment,null,r.default.createElement(\"span\",{className:\"emby-server-card__stat\",title:\"\".concat(t,\" \\u7535\\u5F71\"),\"aria-label\":\"\".concat(t,\" \\u7535\\u5F71\")},r.default.createElement(pd,null),r.default.createElement(\"span\",null,t)),r.default.createElement(\"span\",{className:\"emby-server-card__stat\",title:\"\".concat(n,\" \\u5267\\u96C6\"),\"aria-label\":\"\".concat(n,\" \\u5267\\u96C6\")},r.default.createElement(md,null),r.default.createElement(\"span\",null,n)))}function Dr(e={}){return{id:e.id,name:e.name||\"Emby\",host:e.host,username:e.username,password:e.password,deviceId:e.deviceId||\"\",logo:e.logo||\"\",libraries:e.libraries||[],libraryStats:e.libraryStats||Pr.libraryStats}}var ri=\"nodejs_emby_\",oi=\"nodejs_alist_\";function xd(e=\"\"){let t=String(e||\"\");return t.startsWith(ri)?t.slice(ri.length):\"\"}function hd(e=\"\"){let t=String(e||\"\");return t.startsWith(oi)?t.slice(oi.length):\"\"}function ui(){return{id:\"alist_\".concat(Date.now()),name:\"\",server:\"\",username:\"\",password:\"\",token:\"\",otpCode:\"\"}}function Br(e={}){let t=String(e.name||\"\").trim();if(t)return t;try{return new URL(e.server).hostname||\"Alist\"}catch(n){return\"Alist\"}}function Nr(e={}){return{id:e.id||\"alist_\".concat(Date.now()),name:Br(e),server:String(e.server||\"\").trim().replace(/\\/+$/,\"\"),username:String(e.username||\"\").trim(),password:String(e.password||\"\"),token:String(e.token||\"\").trim(),otpCode:String(e.otpCode||\"\").trim()}}var bd=[{key:\"nodejs_muou\",api:\"/muou/urls\",name:\"\\u6728\\u5076\"},{key:\"nodejs_wanou\",api:\"/wanou/urls\",name:\"\\u73A9\\u5076\"},{key:\"nodejs_leijing\",api:\"/leijing/urls\",name:\"\\u96F7\\u9CB8\"},{key:\"nodejs_zhizhen\",api:\"/zhizhen/urls\",name:\"\\u81F3\\u81FB\"},{key:\"nodejs_duoduo\",api:\"/duoduo/urls\",name:\"\\u591A\\u591A\"},{key:\"nodejs_erxiao\",api:\"/erxiao/urls\",name:\"\\u4E8C\\u5C0F\"},{key:\"nodejs_huban\",api:\"/huban/urls\",name:\"\\u864E\\u6591\"},{key:\"nodejs_labi\",api:\"/labi/urls\",name:\"\\u8FA3\\u7B14\"},{key:\"nodejs_ouge\",api:\"/ouge/urls\",name:\"\\u6B27\\u6B4C\"},{key:\"nodejs_xiaoban\",api:\"/xiaoban/urls\",name:\"\\u5C0F\\u73ED\"},{key:\"nodejs_tgchannel\",api:\"/tgchannel/config\",name:\"TG\\u9891\\u9053\",type:\"tg\"},{key:\"nodejs_tgsou\",api:\"/tgsou/config\",name:\"TG\\u641C\",type:\"tg\"},{key:\"nodejs_tgfilebot\",api:\"/tgfilebot/config\",name:\"TGFileBot\",type:\"tgfilebot\"},{key:\"nodejs_pansou\",api:\"/pansou/config\",name:\"PanSou\",type:\"pansou\"},{key:\"nodejs_123ypzysq\",api:\"/123ypzysq/config\",name:\"123\\u8D44\\u6E90\\u793E\\u533A\",type:\"domain-cookie\"},{key:\"nodejs_live2vod\",api:\"/live2vod/config\",name:\"\\u76F4\\u64AD\\u8F6C\\u70B9\\u64AD\",type:\"live2vod\"},{key:\"nodejs_emby\",api:\"/emby-spider/setting\",name:\"Emby\\u6E90\",type:\"emby-spider\"},{key:\"nodejs_alist-video\",api:\"/alist-video/setting\",name:\"Alist\",type:\"alist-video\"}],ai=bd.reduce((e,t)=>(e[t.key]={api:t.api,name:t.name,type:t.type},e),{});function yd({visible:e,onCancel:t,onSave:n,siteName:o}){let[a]=s.Form.useForm(),[i,l]=(0,r.useState)(!1),[u,c]=(0,r.useState)(\"channels\"),[f,m]=(0,r.useState)([]),[d,g]=(0,r.useState)([]),[p,v]=(0,r.useState)(!1),[y,k]=(0,r.useState)([]),[E,w]=(0,r.useState)([]),[F,_]=(0,r.useState)([]),[z,H]=(0,r.useState)(\"\"),[h,C]=(0,r.useState)([]),L=(0,r.useRef)(0),M=()=>{let T=z.trim();if(T){if(f.includes(T)){s.message.warning('\\u9891\\u9053 \"'.concat(T,'\" \\u5DF2\\u5B58\\u5728')),H(\"\");return}m([T,...f]),C([T,...h]),k([T,...y]),H(\"\"),s.message.success('\\u5DF2\\u6DFB\\u52A0\\u9891\\u9053 \"'.concat(T,'\"'))}},N=(T,A)=>{A.stopPropagation(),m(f.filter($=>$!==T)),k(y.filter($=>$!==T)),C(h.filter($=>$!==T)),s.message.success('\\u5DF2\\u5220\\u9664\\u9891\\u9053 \"'.concat(T,'\"'))},j=(0,r.useCallback)(async T=>{if(!T)return null;v(!0);try{let A=await bt.default.get(\"\".concat(T,\"/api/health\"));if(A.data){let $=A.data.channels||[],U=A.data.plugins||[];return m($),g(U),{channels:$,plugins:U}}return null}catch(A){return console.error(\"\\u83B7\\u53D6 PanSou \\u9009\\u9879\\u5931\\u8D25:\",A),null}finally{v(!1)}},[]);(0,r.useEffect)(()=>{let T=++L.current;if(!e){l(!1),H(\"\");return}l(!0),I.get(\"/pansou/config\").then(async A=>{if(L.current!==T)return;let $=A.url||Pn;a.setFieldsValue({name:o,url:$});let U=await j($);A.channels&&A.channels.length>0?k(A.channels):U!=null&&U.channels&&k(U.channels),A.plugins&&A.plugins.length>0?w(A.plugins):U!=null&&U.plugins&&w(U.plugins),A.cloudTypes&&A.cloudTypes.length>0?_(A.cloudTypes):_(ht.map(me=>me.key))}).catch(A=>{L.current===T&&(console.error(A),s.message.error(\"\\u52A0\\u8F7D\\u914D\\u7F6E\\u5931\\u8D25\"))}).finally(()=>{L.current===T&&l(!1)})},[e,o,a,j]);let ne=(0,r.useCallback)(T=>{let A=T.target.value||Pn;j(A)},[j]),ie=async()=>{let T;try{T=await a.validateFields()}catch(A){return}try{l(!0);let A={url:T.url||\"\",channels:y,plugins:E,cloudTypes:F};await I.put(\"/pansou/config\",A),s.message.success(\"\\u4FDD\\u5B58\\u6210\\u529F\"),n(T.name),t()}catch(A){console.error(A),s.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25\\uFF1A\".concat((A==null?void 0:A.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}finally{l(!1)}},we=async()=>{try{l(!0),await I.delete(\"/pansou/config\");let A=(await I.get(\"/pansou/config\")).url||Pn;a.setFieldsValue({url:A});let $=await j(A);k(($==null?void 0:$.channels)||[]),w(($==null?void 0:$.plugins)||[]),_(ht.map(U=>U.key)),s.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\")}catch(T){console.error(T),s.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(T==null?void 0:T.message))}finally{l(!1)}},Ce=(T,A,$)=>{T.includes($)?A(T.filter(U=>U!==$)):A([...T,$])},J=(T,A,$)=>{A.length===T.length?$([]):$([...T])},Ee=(T,A,$,U,me,Se)=>r.default.createElement(\"div\",{key:T,className:\"pansou-checkbox-card \".concat(A?\"pansou-checkbox-card--selected\":\"\"),onClick:$},r.default.createElement(\"span\",{className:\"pansou-checkbox-card__label\"},U||T),me&&r.default.createElement(Ze,{className:\"pansou-checkbox-card__delete\",onClick:Se}));si(\".pansou-config-tabs__nav-scroll\",e);let ue=[{key:\"channels\",label:\"TG\\u9891\\u9053\",count:y.length},{key:\"plugins\",label:\"\\u641C\\u7D22\\u63D2\\u4EF6\",count:E.length},{key:\"cloudTypes\",label:\"\\u7F51\\u76D8\\u7C7B\\u578B\",count:F.length}];return r.default.createElement(s.Modal,{title:\"\\u7F16\\u8F91 \".concat(o||\"PanSou\"),open:e,onCancel:t,className:\"ios-modal pansou-config-modal\",footer:null,width:\"90%\",destroyOnClose:!0},r.default.createElement(s.Spin,{spinning:i},r.default.createElement(s.Form,{form:a,layout:\"vertical\",className:\"ios-form\"},r.default.createElement(s.Form.Item,{label:\"\\u540D\\u79F0\",name:\"name\"},r.default.createElement(s.Input,{placeholder:\"\\u7AD9\\u6E90\\u540D\\u79F0\"})),r.default.createElement(s.Form.Item,{label:\"API \\u5730\\u5740\",name:\"url\"},r.default.createElement(s.Input,{placeholder:\"\\u7559\\u7A7A\\u4F7F\\u7528\\u9ED8\\u8BA4: \".concat(Pn),onBlur:ne}))),r.default.createElement(\"div\",{className:\"pansou-config-tabs\"},r.default.createElement(\"div\",{className:\"pansou-config-tabs__nav-scroll\",role:\"tablist\",\"aria-label\":\"PanSou \\u914D\\u7F6E\\u9879\"},r.default.createElement(\"div\",{className:\"pansou-config-tabs__nav-list\"},ue.map(T=>{let A=T.key===u;return r.default.createElement(\"button\",{key:T.key,type:\"button\",role:\"tab\",\"aria-selected\":A,className:\"pansou-config-tabs__tab\".concat(A?\" pansou-config-tabs__tab--active\":\"\"),onClick:()=>c(T.key)},r.default.createElement(\"span\",null,T.label),r.default.createElement(\"span\",{className:\"pansou-config-tabs__badge\"},Math.min(T.count,9999)))})))),r.default.createElement(s.Spin,{spinning:p},u===\"channels\"&&r.default.createElement(\"div\",{className:\"pansou-checkbox-section\"},r.default.createElement(\"div\",{className:\"pansou-checkbox-header\"},r.default.createElement(\"span\",null,\"\\u5DF2\\u9009 \",y.length,\" / \",f.length),r.default.createElement(s.Space,null,r.default.createElement(s.Button,{type:\"link\",size:\"small\",onClick:()=>J(f,y,k)},y.length===f.length?\"\\u53D6\\u6D88\\u5168\\u9009\":\"\\u5168\\u9009\"))),r.default.createElement(\"div\",{className:\"pansou-add-channel\"},r.default.createElement(s.Input,{placeholder:\"\\u641C\\u7D22\\u6216\\u6DFB\\u52A0\\u9891\\u9053\",value:z,onChange:T=>H(T.target.value),onPressEnter:M,allowClear:!0,style:{flex:1}}),r.default.createElement(s.Button,{type:\"primary\",icon:r.default.createElement(be,null),onClick:M},\"\\u6DFB\\u52A0\")),r.default.createElement(\"div\",{className:\"pansou-checkbox-grid\"},f.filter(T=>!z||T.toLowerCase().includes(z.toLowerCase())).map(T=>Ee(T,y.includes(T),()=>Ce(y,k,T),T,h.includes(T),A=>N(T,A)))),f.length===0&&!p&&r.default.createElement(\"div\",{className:\"pansou-empty-tip\"},\"\\u8BF7\\u5148\\u914D\\u7F6E\\u6B63\\u786E\\u7684 API \\u5730\\u5740\\u4EE5\\u52A0\\u8F7D\\u53EF\\u7528\\u9891\\u9053\")),u===\"plugins\"&&r.default.createElement(\"div\",{className:\"pansou-checkbox-section\"},r.default.createElement(\"div\",{className:\"pansou-checkbox-header\"},r.default.createElement(\"span\",null,\"\\u5DF2\\u9009 \",E.length,\" / \",d.length),r.default.createElement(s.Button,{type:\"link\",size:\"small\",onClick:()=>J(d,E,w)},E.length===d.length?\"\\u53D6\\u6D88\\u5168\\u9009\":\"\\u5168\\u9009\")),r.default.createElement(\"div\",{className:\"pansou-checkbox-grid\"},d.map(T=>Ee(T,E.includes(T),()=>Ce(E,w,T),T,!1,null))),d.length===0&&!p&&r.default.createElement(\"div\",{className:\"pansou-empty-tip\"},\"\\u8BF7\\u5148\\u914D\\u7F6E\\u6B63\\u786E\\u7684 API \\u5730\\u5740\\u4EE5\\u52A0\\u8F7D\\u53EF\\u7528\\u63D2\\u4EF6\")),u===\"cloudTypes\"&&r.default.createElement(\"div\",{className:\"pansou-checkbox-section\"},r.default.createElement(\"div\",{className:\"pansou-checkbox-header\"},r.default.createElement(\"span\",null,\"\\u5DF2\\u9009 \",F.length,\" / \",ht.length),r.default.createElement(s.Button,{type:\"link\",size:\"small\",onClick:()=>J(ht.map(T=>T.key),F,_)},F.length===ht.length?\"\\u53D6\\u6D88\\u5168\\u9009\":\"\\u5168\\u9009\")),r.default.createElement(\"div\",{className:\"pansou-checkbox-grid\"},ht.map(T=>Ee(T.key,F.includes(T.key),()=>Ce(F,_,T.key),T.name,!1,null))))),r.default.createElement(\"div\",{className:\"pansou-config-footer ios-button-group\"},r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:ie,disabled:i},\"\\u4FDD\\u5B58\"),r.default.createElement(\"button\",{className:\"action-btn action-btn--danger\",onClick:we,disabled:i},\"\\u91CD\\u7F6E\"))))}function Ar({visible:e,onCancel:t,onSave:n,onDelete:o,server:a,usedIds:i}){let[l]=s.Form.useForm(),[u,c]=(0,r.useState)(!1),f=s.Form.useWatch(\"logo\",l);(0,r.useEffect)(()=>{e&&l.setFieldsValue(S(S({},Pr),a||Lr()))},[e,a,l]);let m=async()=>{let g;try{g=await l.validateFields()}catch(w){return}let p=ud(a!=null&&a.isNew?\"\".concat(g.name||\"emby\",\"-\").concat(g.host||\"\",\"-\").concat(g.username||\"\"):(a==null?void 0:a.id)||\"\".concat(g.name||\"emby\",\"-\").concat(g.host||\"\",\"-\").concat(g.username||\"\"));if(!p){s.message.warning(\"\\u8BF7\\u586B\\u5199\\u670D\\u52A1\\u5668\\u5730\\u5740\");return}if(i!=null&&i.has(p)&&p!==(a==null?void 0:a.id)){s.message.warning(\"\\u5F53\\u524D\\u670D\\u52A1\\u5668\\u5DF2\\u5B58\\u5728\\uFF0C\\u8BF7\\u68C0\\u67E5\\u5730\\u5740\\u6216\\u8D26\\u53F7\");return}let v={id:p,name:String(g.name||\"\").trim(),host:String(g.host||\"\").trim().replace(/\\/+$/,\"\"),username:String(g.username||\"\").trim(),password:String(g.password||\"\"),logo:String(g.logo||\"\").trim()},y=String((a==null?void 0:a.host)||\"\").trim().replace(/\\/+$/,\"\"),k=String((a==null?void 0:a.username)||\"\").trim();v.host===y&&v.username===k&&(v.deviceId=String((a==null?void 0:a.deviceId)||\"\").trim());let E=!1;try{c(!0);let w=await I.post(\"/emby-spider/verify\",v);E=!0,await n(w||v),s.message.success(\"Emby \\u767B\\u5F55\\u9A8C\\u8BC1\\u901A\\u8FC7\")}catch(w){console.error(w),w!=null&&w.message&&w.message!==\"[object Object]\"&&s.message.error(\"\".concat(E?\"\\u4FDD\\u5B58\":\"\\u9A8C\\u8BC1\",\"\\u5931\\u8D25\\uFF1A\").concat(w.message))}finally{c(!1)}},d=()=>{!a||a.isNew||o==null||o(a)};return r.default.createElement(s.Modal,{title:a!=null&&a.isNew?\"\\u6DFB\\u52A0 Emby \\u670D\\u52A1\\u5668\":\"\\u7F16\\u8F91 \".concat((a==null?void 0:a.name)||\"Emby\"),open:e,onCancel:t,confirmLoading:u,className:\"ios-modal emby-server-edit-modal\",footer:null,width:\"90%\",destroyOnClose:!0},r.default.createElement(s.Form,{form:l,layout:\"vertical\",className:\"ios-form\",requiredMark:!1},r.default.createElement(s.Form.Item,{label:\"\\u663E\\u793A\\u540D\\u79F0\",name:\"name\",tooltip:\"\\u7559\\u7A7A\\u65F6\\u4F1A\\u5728\\u767B\\u5F55\\u9A8C\\u8BC1\\u901A\\u8FC7\\u540E\\u81EA\\u52A8\\u4F7F\\u7528 Emby \\u670D\\u52A1\\u5668\\u540D\\u79F0\"},r.default.createElement(s.Input,{placeholder:\"\\u7559\\u7A7A\\u81EA\\u52A8\\u83B7\\u53D6\\uFF0C\\u4F8B\\u5982\\uFF1A\\u5BB6\\u91CC NAS\"})),r.default.createElement(s.Form.Item,{label:\"Logo URL\",name:\"logo\",tooltip:\"\\u652F\\u6301 http/https\\u3001data:image \\u6216\\u7AD9\\u5185 / \\u5F00\\u5934\\u8DEF\\u5F84\",rules:[{validator(g,p){return cd(p)?Promise.resolve():Promise.reject(new Error(\"\\u8BF7\\u8F93\\u5165\\u5408\\u6CD5\\u56FE\\u7247\\u5730\\u5740\"))}}]},r.default.createElement(s.Input,{placeholder:\"https://example.com/emby-logo.png\"})),!!String(f||\"\").trim()&&r.default.createElement(\"div\",{className:\"emby-logo-preview\"},r.default.createElement(\"img\",{src:String(f).trim(),alt:\"Emby Logo \\u9884\\u89C8\"}),r.default.createElement(\"span\",null,\"Logo \\u9884\\u89C8\")),r.default.createElement(s.Form.Item,{label:\"\\u670D\\u52A1\\u5668\\u5730\\u5740\",name:\"host\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165 Emby \\u670D\\u52A1\\u5668\\u5730\\u5740\"}]},r.default.createElement(s.Input,{placeholder:\"http://192.168.1.100:8096\"})),r.default.createElement(s.Form.Item,{label:\"\\u7528\\u6237\\u540D\",name:\"username\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165 Emby \\u7528\\u6237\\u540D\"}]},r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165 Emby \\u7528\\u6237\\u540D\"})),r.default.createElement(s.Form.Item,{label:\"\\u5BC6\\u7801\",name:\"password\"},r.default.createElement(s.Input.Password,{placeholder:\"\\u5BC6\\u7801\\u53EF\\u4E3A\\u7A7A\",autoComplete:\"new-password\"})),r.default.createElement(s.Form.Item,{style:{marginBottom:0}},r.default.createElement(\"div\",{className:\"ios-button-group emby-server-edit-actions\".concat(a!=null&&a.isNew?\" emby-server-edit-actions--new\":\"\")},!(a!=null&&a.isNew)&&r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--danger\",onClick:d,disabled:u},\"\\u5220\\u9664\"),r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--primary\",onClick:m,disabled:u},u?\"\\u9A8C\\u8BC1\\u4E2D...\":\"\\u4FDD\\u5B58\")))))}function vd({value:e,onChange:t}){let[n,o]=(0,r.useState)(!1),[a,i]=(0,r.useState)(null),l=Array.isArray(e)?e:[],u=(0,r.useMemo)(()=>new Set(l.map(g=>g.id).filter(Boolean)),[l]),c=()=>{i(B(S({},Lr()),{isNew:!0})),o(!0)},f=g=>{i(S({},g)),o(!0)},m=g=>{let p=l.findIndex(k=>k.id===(a==null?void 0:a.id)),v=Dr(g),y=p>=0?[...l]:[...l,v];p>=0&&(y[p]=v),t(y),o(!1)},d=g=>{s.Modal.confirm({title:\"\\u5220\\u9664 \".concat(Ln(g),\"\\uFF1F\"),content:\"\\u5220\\u9664\\u540E\\u5BF9\\u5E94\\u7684 Emby \\u5206\\u7C7B\\u4F1A\\u4ECE\\u7AD9\\u6E90\\u4E2D\\u79FB\\u9664\\u3002\",okText:\"\\u5220\\u9664\",okButtonProps:{danger:!0},cancelText:\"\\u53D6\\u6D88\",onOk(){t(l.filter(p=>p.id!==g.id)),o(!1),i(null)}})};return r.default.createElement(\"div\",{className:\"emby-server-manager\"},r.default.createElement(\"div\",{className:\"emby-server-toolbar\"},r.default.createElement(\"div\",{className:\"emby-server-toolbar__main\"},r.default.createElement(\"div\",{className:\"emby-server-title\"},\"Emby \\u670D\\u52A1\\u5668\"),r.default.createElement(s.Button,{type:\"primary\",icon:r.default.createElement(be,null),onClick:c},\"\\u6DFB\\u52A0\")),r.default.createElement(\"div\",{className:\"emby-server-subtitle\"},\"\\u6709\\u64AD\\u653E\\u5668\\u9ED1/\\u767D\\u540D\\u5355\\u7684\\u670D\\u8C28\\u614E\\u4F7F\\u7528\\uFF0C\\u5426\\u5219\\u540E\\u679C\\u81EA\\u8D1F\\uFF01\")),l.length===0?r.default.createElement(\"button\",{type:\"button\",className:\"emby-empty-card\",onClick:c},r.default.createElement(be,null),r.default.createElement(\"span\",null,\"\\u6DFB\\u52A0\\u7B2C\\u4E00\\u53F0 Emby \\u670D\\u52A1\\u5668\")):r.default.createElement(\"div\",{className:\"emby-server-grid\"},l.map(g=>r.default.createElement(\"div\",{className:\"emby-server-card\",key:g.id},r.default.createElement(\"div\",{className:\"emby-server-card__hero\"},r.default.createElement(\"div\",{className:\"emby-server-card__logo\"},r.default.createElement(\"img\",{src:g.logo||Er,alt:Ln(g)}))),r.default.createElement(\"div\",{className:\"emby-server-card__content\"},r.default.createElement(\"div\",{className:\"emby-server-card__name\"},r.default.createElement(\"span\",null,Ln(g)),r.default.createElement(dn,null)),r.default.createElement(\"div\",{className:\"emby-server-card__stats\"},gd(g.libraryStats))),r.default.createElement(\"div\",{className:\"emby-server-card__actions\"},r.default.createElement(s.Button,{type:\"text\",className:\"ios-edit-btn\",icon:r.default.createElement(ct,null),onClick:()=>f(g)}))))),r.default.createElement(Ar,{visible:n,onCancel:()=>o(!1),onSave:m,onDelete:d,server:a,usedIds:u}))}function _r({visible:e,onCancel:t,onSave:n,onDelete:o,server:a}){let[i]=s.Form.useForm(),[l,u]=(0,r.useState)(!1);(0,r.useEffect)(()=>{e&&i.setFieldsValue({name:(a==null?void 0:a.name)||\"\",server:(a==null?void 0:a.server)||\"\",username:(a==null?void 0:a.username)||\"\",password:(a==null?void 0:a.password)||\"\",token:(a==null?void 0:a.token)||\"\",otpCode:(a==null?void 0:a.otpCode)||\"\"})},[e,a,i]);let c=async()=>{let m;try{m=await i.validateFields()}catch(p){return}let d={id:(a==null?void 0:a.id)||\"alist_\".concat(Date.now()),name:m.name||\"\",server:String(m.server||\"\").trim().replace(/\\/+$/,\"\"),username:String(m.username||\"\").trim(),password:String(m.password||\"\"),token:String(m.token||\"\").trim(),otpCode:String(m.otpCode||\"\").trim()},g=!1;try{u(!0);let p=await I.post(\"/alist-video/verify\",d);g=!0,await n(p||d),s.message.success(\"Alist \\u8FDE\\u63A5\\u9A8C\\u8BC1\\u901A\\u8FC7\")}catch(p){console.error(p),s.message.error(\"\".concat(g?\"\\u4FDD\\u5B58\":\"\\u8FDE\\u63A5\\u9A8C\\u8BC1\",\"\\u5931\\u8D25\\uFF1A\").concat((p==null?void 0:p.message)||\"\\u8BF7\\u68C0\\u67E5\\u5730\\u5740\"))}finally{u(!1)}},f=()=>{!a||a.isNew||o==null||o(a)};return r.default.createElement(s.Modal,{title:a!=null&&a.isNew?\"\\u6DFB\\u52A0 Alist \\u670D\\u52A1\\u5668\":\"\\u7F16\\u8F91 \".concat((a==null?void 0:a.name)||\"Alist\"),open:e,onCancel:t,confirmLoading:l,className:\"ios-modal\",footer:null,width:\"90%\",destroyOnClose:!0},r.default.createElement(s.Form,{form:i,layout:\"vertical\",className:\"ios-form\",requiredMark:!1},r.default.createElement(s.Form.Item,{label:\"\\u663E\\u793A\\u540D\\u79F0\",name:\"name\"},r.default.createElement(s.Input,{placeholder:\"\\u4F8B\\u5982\\uFF1A\\u5BB6\\u91CC NAS\"})),r.default.createElement(s.Form.Item,{label:\"\\u670D\\u52A1\\u5668\\u5730\\u5740\",name:\"server\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165 Alist \\u670D\\u52A1\\u5668\\u5730\\u5740\"}]},r.default.createElement(s.Input,{placeholder:\"http://192.168.1.100:5244\"})),r.default.createElement(s.Form.Item,{label:\"\\u8D26\\u53F7\",name:\"username\"},r.default.createElement(s.Input,{placeholder:\"\\u79C1\\u6709\\u76EE\\u5F55\\u9700\\u8981\\u586B\\u5199\",autoComplete:\"username\"})),r.default.createElement(s.Form.Item,{label:\"\\u5BC6\\u7801\",name:\"password\"},r.default.createElement(s.Input.Password,{placeholder:\"\\u79C1\\u6709\\u76EE\\u5F55\\u9700\\u8981\\u586B\\u5199\",autoComplete:\"new-password\"})),r.default.createElement(s.Form.Item,{label:\"Token\",name:\"token\",tooltip:\"\\u5DF2\\u6709 Alist token \\u65F6\\u53EF\\u76F4\\u63A5\\u586B\\u5199\\uFF0C\\u4F18\\u5148\\u4E8E\\u8D26\\u53F7\\u5BC6\\u7801\"},r.default.createElement(s.Input.Password,{placeholder:\"\\u53EF\\u7559\\u7A7A\",autoComplete:\"off\"})),r.default.createElement(s.Form.Item,{label:\"\\u4E24\\u6B65\\u9A8C\\u8BC1\\u7801\",name:\"otpCode\",tooltip:\"\\u5F00\\u542F\\u4E24\\u6B65\\u9A8C\\u8BC1\\u65F6\\u586B\\u5199\\u5F53\\u524D\\u9A8C\\u8BC1\\u7801\"},r.default.createElement(s.Input,{placeholder:\"\\u53EF\\u7559\\u7A7A\",autoComplete:\"one-time-code\"})),r.default.createElement(s.Form.Item,null,r.default.createElement(\"div\",{className:\"ios-button-group\"},!(a!=null&&a.isNew)&&r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--danger\",onClick:f},\"\\u5220\\u9664\"),r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--primary\",onClick:c,disabled:l},l?\"\\u9A8C\\u8BC1\\u4E2D...\":\"\\u4FDD\\u5B58\")))))}function wd({value:e,onChange:t}){let[n,o]=(0,r.useState)(!1),[a,i]=(0,r.useState)(null),l=Array.isArray(e)?e:[],u=()=>{i(B(S({},ui()),{isNew:!0})),o(!0)},c=d=>{i(S({},d)),o(!0)},f=d=>{let g=l.findIndex(y=>y.id===(a==null?void 0:a.id)),p=Nr(d),v=g>=0?[...l]:[...l,p];g>=0&&(v[g]=p),t(v),o(!1)},m=d=>{s.Modal.confirm({title:\"\\u5220\\u9664 \".concat(Br(d),\"\\uFF1F\"),content:\"\\u5220\\u9664\\u540E\\u8BE5 Alist \\u670D\\u52A1\\u5668\\u5C06\\u4E0D\\u518D\\u663E\\u793A\\u3002\",okText:\"\\u5220\\u9664\",okButtonProps:{danger:!0},cancelText:\"\\u53D6\\u6D88\",onOk(){t(l.filter(g=>g.id!==d.id)),o(!1),i(null)}})};return r.default.createElement(\"div\",{className:\"emby-server-manager\"},r.default.createElement(\"div\",{className:\"emby-server-toolbar\"},r.default.createElement(\"div\",{className:\"emby-server-toolbar__main\"},r.default.createElement(\"div\",{className:\"emby-server-title\"},\"Alist \\u670D\\u52A1\\u5668\"),r.default.createElement(s.Button,{type:\"primary\",icon:r.default.createElement(be,null),onClick:u},\"\\u6DFB\\u52A0\"))),l.length===0?r.default.createElement(\"button\",{type:\"button\",className:\"emby-empty-card\",onClick:u},r.default.createElement(be,null),r.default.createElement(\"span\",null,\"\\u6DFB\\u52A0\\u7B2C\\u4E00\\u53F0 Alist \\u670D\\u52A1\\u5668\")):r.default.createElement(\"div\",{className:\"emby-server-grid\"},l.map(d=>r.default.createElement(\"div\",{className:\"emby-server-card\",key:d.id},r.default.createElement(\"div\",{className:\"emby-server-card__content\",style:{padding:\"16px\"}},r.default.createElement(\"div\",{className:\"emby-server-card__name\"},r.default.createElement(\"span\",null,d.name||d.server),r.default.createElement(dn,null)),r.default.createElement(\"div\",{style:{fontSize:12,color:\"#999\",marginTop:4}},d.server),(d.username||d.token)&&r.default.createElement(\"div\",{style:{fontSize:12,color:\"#999\",marginTop:4}},d.username?\"\\u8D26\\u53F7\\uFF1A\".concat(d.username):\"Token \\u5DF2\\u914D\\u7F6E\")),r.default.createElement(\"div\",{className:\"emby-server-card__actions\"},r.default.createElement(s.Button,{type:\"text\",className:\"ios-edit-btn\",icon:r.default.createElement(ct,null),onClick:()=>c(d)}))))),r.default.createElement(_r,{visible:n,onCancel:()=>o(!1),onSave:f,onDelete:m,server:a}))}function Cd({visible:e,onCancel:t,onSave:n,siteKey:o,siteName:a}){let[i]=s.Form.useForm(),[l,u]=(0,r.useState)(!1),c=String(o||\"\").startsWith(\"nodejs_emby\"),f=ai[o]||(c?ai.nodejs_emby:void 0),m=!!f,d=(f==null?void 0:f.type)===\"tg\",g=(f==null?void 0:f.type)===\"tgfilebot\",p=(f==null?void 0:f.type)===\"live2vod\",v=(f==null?void 0:f.type)===\"emby-spider\",y=(f==null?void 0:f.type)===\"alist-video\",k=(f==null?void 0:f.type)===\"domain-cookie\",E=o===\"nodejs_tgchannel\",w=(0,r.useRef)(0),F=h=>{if(h===\"\"||h===null||typeof h>\"u\")return null;let C=Number(h);return Number.isFinite(C)?C:null},_=h=>{if(h==null||h===\"\")return\"\";let C=Number(h);return Number.isFinite(C)?C:\"\"};(0,r.useEffect)(()=>{let h=++w.current;if(!e){u(!1);return}m?(u(!0),I.get(f.api).then(C=>{if(w.current===h)if(d){let L=[],M=new Set;C.channelNameMap&&Object.keys(C.channelNameMap).forEach(N=>M.add(N)),C.channelUsername&&C.channelUsername.forEach(N=>M.add(N)),C.homeChannelUsername&&C.homeChannelUsername.forEach(N=>M.add(N)),M.forEach(N=>{var j;L.push({id:N,name:((j=C.channelNameMap)==null?void 0:j[N])||\"\"})}),i.setFieldsValue({name:a,url:C.url,count:F(C==null?void 0:C.count),pic:C.pic,channels:L.length>0?L:E?[]:[{id:\"\",name:\"\"}]})}else g?i.setFieldsValue({name:a,url:C.url,password:C.password||\"\"}):p?i.setFieldsValue({name:a,sources:C.sources||[{name:\"\",url:\"\"}]}):v?i.setFieldsValue({name:a,servers:C.servers||[]}):y?i.setFieldsValue({name:a,servers:C.servers||[]}):k?i.setFieldsValue({name:a,url:C.url||\"\",cookie:C.cookie||\"\"}):i.setFieldsValue({urls:C,name:a})}).catch(C=>{w.current===h&&(console.error(C),s.message.error(\"\\u52A0\\u8F7D\\u914D\\u7F6E\\u5931\\u8D25\"))}).finally(()=>{w.current===h&&u(!1)})):i.setFieldsValue({name:a})},[e,o,a,m,d,g,p,v,y,k,i,f]);let z=async()=>{let h;try{h=await i.validateFields()}catch(C){return}try{if(u(!0),m)if(d){let C={},L=[],M=[];h.channels&&h.channels.length>0&&h.channels.forEach(j=>{j.id&&(j.name&&(C[j.id]=j.name),L.push(j.id),o===\"nodejs_tgchannel\"&&M.push(j.id))});let N=S({url:h.url,count:_(h.count),pic:h.pic,channelNameMap:C,channelUsername:L},o===\"nodejs_tgchannel\"?{homeChannelUsername:M}:{});await I.put(f.api,N)}else if(g)await I.put(f.api,{url:h.url||\"\",password:h.password||\"\"});else if(p){let C={sources:h.sources||[]};await I.put(f.api,C)}else v?await I.put(f.api,{servers:h.servers||[]}):y?await I.put(f.api,{servers:h.servers||[]}):k?await I.put(f.api,{url:h.url||\"\",cookie:h.cookie||\"\"}):await I.put(f.api,h.urls);s.message.success(\"\\u4FDD\\u5B58\\u6210\\u529F\"),n(h.name,v||y?{reload:!0}:void 0),t()}catch(C){console.error(C),s.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25\\uFF1A\".concat((C==null?void 0:C.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}finally{u(!1)}},H=async()=>{if(m)try{u(!0),await I.delete(f.api);let h=await I.get(f.api);if(d){let C=[],L=new Set;h.channelNameMap&&Object.keys(h.channelNameMap).forEach(M=>L.add(M)),h.channelUsername&&h.channelUsername.forEach(M=>L.add(M)),h.homeChannelUsername&&h.homeChannelUsername.forEach(M=>L.add(M)),L.forEach(M=>{var N;C.push({id:M,name:((N=h.channelNameMap)==null?void 0:N[M])||\"\"})}),i.setFieldsValue({url:h.url,count:F(h==null?void 0:h.count),pic:h.pic,channels:C.length>0?C:E?[]:[{id:\"\",name:\"\"}]})}else g?i.setFieldsValue({url:h.url,password:h.password||\"\"}):p?i.setFieldsValue({sources:h.sources||[{name:\"\",url:\"\"}]}):v?i.setFieldsValue({servers:h.servers||[]}):y?i.setFieldsValue({servers:h.servers||[]}):k?i.setFieldsValue({url:h.url||\"\",cookie:h.cookie||\"\"}):i.setFieldsValue({urls:h});s.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\")}catch(h){console.error(h),s.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(h==null?void 0:h.message))}finally{u(!1)}};return r.default.createElement(s.Modal,{title:\"\\u7F16\\u8F91 \".concat(a||(f==null?void 0:f.name)||\"\"),open:e,onCancel:t,className:\"ios-modal domain-edit-modal\",footer:null,width:\"90%\",destroyOnClose:!0},r.default.createElement(s.Form,{form:i,layout:\"vertical\",requiredMark:!1,colon:!1},r.default.createElement(s.Form.Item,{label:\"\\u540D\\u79F0\",name:\"name\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u540D\\u79F0\"}]},r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165\\u540D\\u79F0\",className:v||y?\"domain-edit-full-input\":\"domain-edit-aligned-input\"})),m&&!d&&!g&&!p&&!v&&!y&&!k&&r.default.createElement(r.default.Fragment,null,r.default.createElement(s.Form.List,{name:\"urls\",rules:[{required:!0,message:\"\\u8BF7\\u6DFB\\u52A0\\u57DF\\u540D\"}]},(h,{add:C,remove:L},{errors:M})=>r.default.createElement(r.default.Fragment,null,h.map((N,j)=>r.default.createElement(s.Form.Item,{label:j===0?\"\\u57DF\\u540D\":null,required:!1,key:N.key,style:{marginBottom:12}},r.default.createElement(\"div\",{className:\"domain-list-row\"},r.default.createElement(s.Form.Item,B(S({},N),{validateTrigger:[\"onChange\",\"onBlur\"],rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u57DF\\u540D\"}],noStyle:!0}),r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165\\u57DF\\u540D\",className:\"domain-list-input\"})),r.default.createElement(\"span\",{className:\"domain-list-action\".concat(h.length>1?\"\":\" domain-list-action--placeholder\")},h.length>1?r.default.createElement(Ze,{className:\"dynamic-delete-button\",onClick:()=>L(N.name)}):null)))),r.default.createElement(s.Form.Item,{label:null},r.default.createElement(s.Button,{type:\"dashed\",onClick:()=>C(),className:\"domain-edit-add-button\",icon:r.default.createElement(be,null)},\"\\u6DFB\\u52A0\\u57DF\\u540D\"),r.default.createElement(s.Form.ErrorList,{errors:M}))))),m&&k&&r.default.createElement(r.default.Fragment,null,r.default.createElement(s.Form.Item,{label:\"\\u57DF\\u540D\",name:\"url\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u57DF\\u540D\"}]},r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165\\u57DF\\u540D\",className:\"domain-edit-aligned-input\"})),r.default.createElement(s.Form.Item,{label:\"Cookie\",name:\"cookie\"},r.default.createElement(s.Input.TextArea,{placeholder:\"\\u8BBF\\u95EE\\u7F51\\u7AD9\\u9700\\u8981\\u7684 Cookie\\uFF0C\\u4F8B\\u5982 bbs_token=xxx\",className:\"domain-edit-aligned-input\",autoSize:{minRows:3,maxRows:6}}))),m&&g&&r.default.createElement(r.default.Fragment,null,r.default.createElement(s.Form.Item,{label:\"API \\u5730\\u5740\",name:\"url\"},r.default.createElement(s.Input,{placeholder:\"\\u7559\\u7A7A\\u4F7F\\u7528\\u9ED8\\u8BA4: http://127.0.0.1:8080\",className:\"domain-edit-aligned-input\"})),r.default.createElement(s.Form.Item,{label:\"\\u8BBF\\u95EE\\u5BC6\\u7801\",name:\"password\"},r.default.createElement(s.Input.Password,{placeholder:\"TGFileBot password\\uFF0C\\u53EF\\u7559\\u7A7A\",className:\"domain-edit-aligned-input\"}))),m&&v&&r.default.createElement(s.Form.Item,{name:\"servers\"},r.default.createElement(vd,null)),m&&y&&r.default.createElement(s.Form.Item,{name:\"servers\"},r.default.createElement(wd,null)),m&&d&&r.default.createElement(r.default.Fragment,null,r.default.createElement(s.Form.Item,{label:\"TG\\u57DF\\u540D\",name:\"url\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165TG\\u57DF\\u540D\"}]},r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165TG\\u57DF\\u540D\",className:\"domain-edit-aligned-input\"})),r.default.createElement(s.Form.Item,{label:\"\\u5355\\u9891\\u9053\\u8D44\\u6E90\\u6570\\u91CF\",name:\"count\"},r.default.createElement(s.InputNumber,{min:1,placeholder:\"\\u7559\\u7A7A\\u8868\\u793A\\u4E0D\\u9650\\u5236\",className:\"domain-edit-aligned-input\"})),r.default.createElement(s.Form.List,{name:\"channels\",rules:[{validator:async(h,C)=>{if(!E&&(!C||C.length===0))return Promise.reject(new Error(\"\\u8BF7\\u81F3\\u5C11\\u6DFB\\u52A0\\u4E00\\u4E2A\\u9891\\u9053\"))}}]},(h,{add:C,remove:L},{errors:M})=>r.default.createElement(r.default.Fragment,null,h.map((N,j)=>r.default.createElement(s.Form.Item,{label:j===0?\"\\u9891\\u9053\\u5217\\u8868\":\"\",required:!1,key:N.key,style:{marginBottom:12}},r.default.createElement(\"div\",{className:\"domain-list-row\"},r.default.createElement(s.Form.Item,B(S({},N),{name:[N.name,\"name\"],style:{marginBottom:0,flex:\"1\"}}),r.default.createElement(s.Input,{placeholder:\"\\u540D\\u79F0\"})),r.default.createElement(s.Form.Item,B(S({},N),{name:[N.name,\"id\"],rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u9891\\u9053ID\"}],style:{marginBottom:0,flex:\"1\"}}),r.default.createElement(s.Input,{placeholder:\"\\u9891\\u9053ID\"})),r.default.createElement(\"span\",{className:\"domain-list-action\".concat(h.length>1||E?\"\":\" domain-list-action--placeholder\")},h.length>1||E?r.default.createElement(Ze,{className:\"dynamic-delete-button\",onClick:()=>L(N.name)}):null)))),r.default.createElement(s.Form.Item,{label:\"\"},r.default.createElement(s.Button,{type:\"dashed\",onClick:()=>C({id:\"\",name:\"\"}),className:\"domain-edit-add-button\",icon:r.default.createElement(be,null)},\"\\u6DFB\\u52A0\\u9891\\u9053\"),r.default.createElement(s.Form.ErrorList,{errors:M})))),r.default.createElement(s.Form.Item,{label:\"\\u663E\\u793A\\u56FE\\u7247\",name:\"pic\",valuePropName:\"checked\"},r.default.createElement(s.Switch,null))),m&&p&&r.default.createElement(r.default.Fragment,null,r.default.createElement(s.Form.List,{name:\"sources\",rules:[{validator:async(h,C)=>{if(!C||C.length===0)return Promise.reject(new Error(\"\\u8BF7\\u81F3\\u5C11\\u6DFB\\u52A0\\u4E00\\u4E2A\\u76F4\\u64AD\\u6E90\"))}}]},(h,{add:C,remove:L},{errors:M})=>r.default.createElement(r.default.Fragment,null,h.map((N,j)=>r.default.createElement(s.Form.Item,{label:j===0?\"\\u76F4\\u64AD\\u6E90\\u5217\\u8868\":\"\",required:!1,key:N.key,style:{marginBottom:12}},r.default.createElement(\"div\",{className:\"domain-list-row\"},r.default.createElement(s.Form.Item,B(S({},N),{name:[N.name,\"name\"],rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u540D\\u79F0\"}],style:{marginBottom:0,flex:\"1\"}}),r.default.createElement(s.Input,{placeholder:\"\\u540D\\u79F0\"})),r.default.createElement(s.Form.Item,B(S({},N),{name:[N.name,\"url\"],rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u76F4\\u64AD\\u6E90URL\"}],style:{marginBottom:0,flex:\"2\"}}),r.default.createElement(s.Input,{placeholder:\"\\u76F4\\u64AD\\u6E90URL (m3u/txt)\"})),r.default.createElement(\"span\",{className:\"domain-list-action\".concat(h.length>1?\"\":\" domain-list-action--placeholder\")},h.length>1?r.default.createElement(Ze,{className:\"dynamic-delete-button\",onClick:()=>L(N.name)}):null)))),r.default.createElement(s.Form.Item,{label:\"\"},r.default.createElement(s.Button,{type:\"dashed\",onClick:()=>C({name:\"\",url:\"\"}),className:\"domain-edit-add-button\",icon:r.default.createElement(be,null)},\"\\u6DFB\\u52A0\\u76F4\\u64AD\\u6E90\"),r.default.createElement(s.Form.ErrorList,{errors:M}))))),r.default.createElement(s.Form.Item,{label:null},r.default.createElement(\"div\",{className:\"ios-button-group\"},r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:z,disabled:l},\"\\u4FDD\\u5B58\"),m&&r.default.createElement(\"button\",{className:\"action-btn action-btn--danger\",onClick:H,disabled:l},\"\\u91CD\\u7F6E\")))))}var Sd=new Set([\"nodejs_push\",\"nodejs_muban\",\"nodejs_template\"]),Od=new Set([\"\\u63A8\\u9001\",\"\\u6A21\\u677F\"]);function kd(e){let t=String(e.name||\"\").trim();return!Sd.has(e.key)&&!Od.has(t)}function Td(){let[e,t]=(0,r.useState)([]),[n,o]=(0,r.useState)(!1),[a,i]=(0,r.useState)(!1),[l,u]=(0,r.useState)(!1),[c,f]=(0,r.useState)(!1),[m,d]=(0,r.useState)(!1),[g,p]=(0,r.useState)(null),[v,y]=(0,r.useState)([]),[k,E]=(0,r.useState)(!1),[w,F]=(0,r.useState)(null),[_,z]=(0,r.useState)([]),[H,h]=(0,r.useState)(!1),[C,L]=(0,r.useState)(null),[M,N]=(0,r.useState)([]),[j,ne]=(0,r.useState)(!1),[ie,we]=(0,r.useState)(null),[Ce,J]=(0,r.useState)([]),[Ee,ue]=(0,r.useState)(!1),[T,A]=(0,r.useState)([]),[$,U]=(0,r.useState)(!1),[me,Se]=(0,r.useState)(null),[de,Pe]=(0,r.useState)([]),[Oe,ge]=(0,r.useState)(\"\"),[q,We]=(0,r.useState)(null),xe=(0,r.useMemo)(()=>e.filter(kd),[e]),Le=(0,r.useMemo)(()=>new Set(v.map(b=>b.id).filter(Boolean)),[v]),ke=(0,r.useMemo)(()=>new Set(_.map(b=>b.id).filter(Boolean)),[_]),Be=b=>{let O=xd(b==null?void 0:b.key);if(O){Ge(O);return}let D=hd(b==null?void 0:b.key);if(D){Gt(D);return}if(b!=null&&b.cms){$n(b.key);return}We(b),b.key===\"nodejs_pansou\"?i(!0):o(!0)},_e=(b,O={})=>{if(O.reload){ce();return}if(q){let D=e.findIndex(P=>P.key===q.key);D!==-1&&(e[D].name=b,t([...e]))}},Ht=async()=>{try{f(!0);let b=await I.get(\"/emby-spider/setting\");y(Array.isArray(b==null?void 0:b.servers)?b.servers:[]),p(B(S({},Lr()),{isNew:!0})),u(!1),d(!0)}catch(b){console.error(b),s.message.error(\"\\u52A0\\u8F7D Emby \\u914D\\u7F6E\\u5931\\u8D25\\uFF1A\".concat((b==null?void 0:b.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}finally{f(!1)}},jt=async()=>{try{f(!0);let b=await I.get(\"/alist-video/setting\");N(Array.isArray(b==null?void 0:b.servers)?b.servers:[]),L(B(S({},ui()),{isNew:!0})),u(!1),h(!0)}catch(b){console.error(b),s.message.error(\"\\u52A0\\u8F7D Alist \\u914D\\u7F6E\\u5931\\u8D25\\uFF1A\".concat((b==null?void 0:b.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}finally{f(!1)}},yt=async()=>{try{f(!0);let b=await I.get(\"/cms/list\");A(Array.isArray(b)?b:[]),u(!1),ue(!0)}catch(b){console.error(b),s.message.error(\"\\u52A0\\u8F7D CMS \\u914D\\u7F6E\\u5931\\u8D25\\uFF1A\".concat((b==null?void 0:b.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}finally{f(!1)}},Fe=async b=>{let O=Dr(b),D=v.findIndex(V=>V.id===O.id),P=D>=0?[...v]:[...v,O];D>=0&&(P[D]=O),await I.put(\"/emby-spider/setting\",{servers:P}),y(P),d(!1),p(null),await ce()},lt=()=>{d(!1),p(null)},dt=async b=>{let O=Nr(b),D=M.findIndex(V=>V.id===O.id),P=D>=0?[...M]:[...M,O];D>=0&&(P[D]=O),await I.put(\"/alist-video/setting\",{servers:P}),N(P),h(!1),L(null),await ce()},Vt=()=>{h(!1),L(null)},Ut=async b=>{let O=Dd(T,b);await I.put(\"/cms/list\",O),A(O),ue(!1),await ce()},Bn=()=>{ue(!1)},$n=async b=>{try{let O=await I.get(\"/cms/list\"),D=Array.isArray(O)?O:[],P=D.find(V=>Fr(V)===b);if(!P){s.message.warning(\"\\u672A\\u627E\\u5230\\u5BF9\\u5E94\\u7684 CMS \\u6E90\\u914D\\u7F6E\");return}Pe(D),Se(S({},P)),ge(b),U(!0)}catch(O){console.error(O),s.message.error(\"\\u52A0\\u8F7D CMS \\u914D\\u7F6E\\u5931\\u8D25\\uFF1A\".concat((O==null?void 0:O.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}},$e=async b=>{let O=ci(b);if(!O){s.message.warning(\"CMS \\u6E90\\u4FE1\\u606F\\u4E0D\\u5B8C\\u6574\");return}let D=de.map(P=>Fr(P)===Oe?O:P);await I.put(\"/cms/list\",D),Pe(D),U(!1),Se(null),ge(\"\"),await ce()},ze=b=>{b&&s.Modal.confirm({title:\"\\u5220\\u9664 \".concat(b.name||\"CMS \\u6E90\",\"\\uFF1F\"),content:\"\\u5220\\u9664\\u540E\\u8FD9\\u4E2A CMS \\u89C6\\u9891\\u6E90\\u4F1A\\u4ECE\\u7AD9\\u6E90\\u5217\\u8868\\u4E2D\\u79FB\\u9664\\u3002\",okText:\"\\u5220\\u9664\",okButtonProps:{danger:!0},cancelText:\"\\u53D6\\u6D88\",async onOk(){let O=de.filter(D=>Fr(D)!==Oe);await I.put(\"/cms/list\",O),Pe(O),U(!1),Se(null),ge(\"\"),await ce()}})},Ge=async b=>{try{let O=await I.get(\"/emby-spider/setting\"),D=Array.isArray(O==null?void 0:O.servers)?O.servers:[],P=D.find(V=>V.id===b);if(!P){s.message.warning(\"\\u672A\\u627E\\u5230\\u5BF9\\u5E94\\u7684 Emby \\u670D\\u52A1\\u5668\\u914D\\u7F6E\");return}z(D),F(S({},P)),E(!0)}catch(O){console.error(O),s.message.error(\"\\u52A0\\u8F7D Emby \\u914D\\u7F6E\\u5931\\u8D25\\uFF1A\".concat((O==null?void 0:O.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}},Wt=async b=>{let O=Dr(b),D=_.map(P=>P.id===(w==null?void 0:w.id)?O:P);await I.put(\"/emby-spider/setting\",{servers:D}),z(D),E(!1),F(null),await ce()},Ie=b=>{b!=null&&b.id&&s.Modal.confirm({title:\"\\u5220\\u9664 \".concat(Ln(b),\"\\uFF1F\"),content:\"\\u5220\\u9664\\u540E\\u8FD9\\u53F0 Emby \\u5BF9\\u5E94\\u7684\\u89C6\\u9891\\u6E90\\u4F1A\\u4ECE\\u7AD9\\u6E90\\u5217\\u8868\\u4E2D\\u79FB\\u9664\\u3002\",okText:\"\\u5220\\u9664\",okButtonProps:{danger:!0},cancelText:\"\\u53D6\\u6D88\",async onOk(){let O=_.filter(D=>D.id!==b.id);await I.put(\"/emby-spider/setting\",{servers:O}),z(O),E(!1),F(null),await ce()}})},Gt=async b=>{try{let O=await I.get(\"/alist-video/setting\"),D=Array.isArray(O==null?void 0:O.servers)?O.servers:[],P=D.find(V=>V.id===b);if(!P){s.message.warning(\"\\u672A\\u627E\\u5230\\u5BF9\\u5E94\\u7684 Alist \\u670D\\u52A1\\u5668\\u914D\\u7F6E\");return}J(D),we(S({},P)),ne(!0)}catch(O){console.error(O),s.message.error(\"\\u52A0\\u8F7D Alist \\u914D\\u7F6E\\u5931\\u8D25\\uFF1A\".concat((O==null?void 0:O.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}},zn=async b=>{let O=Nr(b),D=Ce.map(P=>P.id===(ie==null?void 0:ie.id)?O:P);await I.put(\"/alist-video/setting\",{servers:D}),J(D),ne(!1),we(null),await ce()},qn=b=>{b!=null&&b.id&&s.Modal.confirm({title:\"\\u5220\\u9664 \".concat(Br(b),\"\\uFF1F\"),content:\"\\u5220\\u9664\\u540E\\u8FD9\\u53F0 Alist \\u5BF9\\u5E94\\u7684\\u89C6\\u9891\\u6E90\\u4F1A\\u4ECE\\u7AD9\\u6E90\\u5217\\u8868\\u4E2D\\u79FB\\u9664\\u3002\",okText:\"\\u5220\\u9664\",okButtonProps:{danger:!0},cancelText:\"\\u53D6\\u6D88\",async onOk(){let O=Ce.filter(D=>D.id!==b.id);await I.put(\"/alist-video/setting\",{servers:O}),J(O),ne(!1),we(null),await ce()}})},vt=(0,r.useMemo)(()=>[{title:\"\",dataIndex:\"drag\",width:40,render(b,O){return r.default.createElement(di,{rowKey:O.key})}},{title:\"\\u7AD9\\u6E90\",dataIndex:\"name\",render(b,O){return r.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:\"8px\",minWidth:0}},r.default.createElement(\"span\",{title:b,style:{flex:1,minWidth:0,overflow:\"hidden\",textOverflow:\"ellipsis\",whiteSpace:\"nowrap\"}},b),O.t4&&r.default.createElement(s.Tag,{className:\"ios-tag\"},\"T4\"))}},{title:\"\\u542F\\u7528\",dataIndex:\"enable\",render(b,O){return r.default.createElement(s.Switch,{value:b,onChange:D=>{t(P=>P.map(V=>V.key===O.key?B(S({},V),{enable:D}):V))}})},width:80},{title:\"\\u64CD\\u4F5C\",dataIndex:\"action\",width:60,render(b,O){return r.default.createElement(s.Button,{type:\"text\",className:\"ios-edit-btn\",icon:r.default.createElement(ct,null),onClick:()=>Be(O),size:\"small\"})}}],[e]),Yt=wr(Lt(at,{activationConstraint:{distance:1}}),Lt(xt,{activationConstraint:{delay:150,tolerance:5}})),Hn=({active:b,over:O})=>{b.id!==(O==null?void 0:O.id)&&t(D=>{let P=D.findIndex(fe=>fe.key===b.id),V=D.findIndex(fe=>fe.key===(O==null?void 0:O.id));return Bt(D,P,V)})},ce=async()=>{let O=(await bt.default.get(\"/full-config\")).data.video.sites,D=await I.get(\"/sites/list\"),P={},V={};O.forEach(G=>{V[G.key]=G});let fe=D.filter(G=>(P[G.key]=!0,V[G.key])).map(G=>{let se=V[G.key];return{key:G.key,name:G.name||se.name,enable:G.enable,t4:se.t4,cms:se.cms}});O.forEach(G=>{P[G.key]||fe.push({key:G.key,name:G.name,enable:!0,t4:G.t4,cms:G.cms})}),t(fe)},jn=async()=>{try{await I.put(\"/sites/list\",{list:e}),s.message.success({content:r.default.createElement(r.default.Fragment,null,\"\\u8BBE\\u7F6E\\u6210\\u529F\",r.default.createElement(\"br\",null),\"\\u9700\\u91CD\\u65B0\\u52A0\\u8F7D\\u6E90\\uFF01\",r.default.createElement(\"br\",null),\"\\u9700\\u91CD\\u65B0\\u52A0\\u8F7D\\u6E90\\uFF01\",r.default.createElement(\"br\",null),\"\\u9700\\u91CD\\u65B0\\u52A0\\u8F7D\\u6E90\\uFF01\",r.default.createElement(\"br\",null)),duration:5})}catch(b){console.error(b),s.message.error(\"\\u8BBE\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(b==null?void 0:b.message))}},Vn=async()=>{try{await I.delete(\"/sites/list\"),ce(),s.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\")}catch(b){console.error(b),s.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(b==null?void 0:b.message))}};return(0,r.useEffect)(()=>{ce()},[]),r.default.createElement(\"div\",null,r.default.createElement(\"div\",{className:\"sites-list-toolbar\"},r.default.createElement(s.Dropdown,{open:l,onOpenChange:u,trigger:[\"click\"],placement:\"bottomRight\",dropdownRender:()=>r.default.createElement(\"div\",{className:\"site-add-menu\"},r.default.createElement(\"button\",{type:\"button\",className:\"site-add-type-item\",onClick:Ht,disabled:c},r.default.createElement(\"span\",{className:\"site-add-type-item__icon\"},r.default.createElement(\"img\",{src:Er,alt:\"\",\"aria-hidden\":\"true\"})),r.default.createElement(\"span\",{className:\"site-add-type-item__name\"},\"Emby\")),r.default.createElement(\"button\",{type:\"button\",className:\"site-add-type-item\",onClick:jt,disabled:c},r.default.createElement(\"span\",{className:\"site-add-type-item__icon\"},r.default.createElement(\"img\",{src:ei,alt:\"\",\"aria-hidden\":\"true\"})),r.default.createElement(\"span\",{className:\"site-add-type-item__name\"},\"Alist\")),r.default.createElement(\"button\",{type:\"button\",className:\"site-add-type-item\",onClick:yt,disabled:c},r.default.createElement(\"span\",{className:\"site-add-type-item__icon\"},r.default.createElement(\"img\",{src:ti,alt:\"\",\"aria-hidden\":\"true\"})),r.default.createElement(\"span\",{className:\"site-add-type-item__name\"},\"CMS\")))},r.default.createElement(s.Button,{type:\"primary\",icon:r.default.createElement(be,null),className:\"sites-add-button\"},\"\\u6DFB\\u52A0\"))),r.default.createElement(Cr,{sensors:Yt,modifiers:[Sr],onDragEnd:Hn},r.default.createElement(kr,{items:xe.map(b=>b.key),strategy:Or},r.default.createElement(s.Table,{components:{body:{row:li}},rowKey:\"key\",columns:vt,dataSource:xe,pagination:!1,tableLayout:\"fixed\",className:\"sites-table\"}))),r.default.createElement(\"div\",{className:\"ios-button-group\"},r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:jn},\"\\u4FDD\\u5B58\"),r.default.createElement(\"button\",{className:\"action-btn action-btn--danger\",onClick:Vn},\"\\u91CD\\u7F6E\")),r.default.createElement(Cd,{visible:n,onCancel:()=>o(!1),onSave:_e,siteKey:q==null?void 0:q.key,siteName:q==null?void 0:q.name}),r.default.createElement(yd,{visible:a,onCancel:()=>i(!1),onSave:_e,siteName:q==null?void 0:q.name}),r.default.createElement(Ar,{visible:m,onCancel:lt,onSave:Fe,server:g,usedIds:Le}),r.default.createElement(Ar,{visible:k,onCancel:()=>E(!1),onSave:Wt,onDelete:Ie,server:w,usedIds:ke}),r.default.createElement(_r,{visible:H,onCancel:Vt,onSave:dt,server:C}),r.default.createElement(_r,{visible:j,onCancel:()=>ne(!1),onSave:zn,onDelete:qn,server:ie}),r.default.createElement(Nd,{visible:Ee,onCancel:Bn,onSave:Ut}),r.default.createElement(fi,{visible:$,onCancel:()=>U(!1),onSave:$e,onDelete:ze,source:me,mode:\"edit\"}))}function Ed(){let[e,t]=(0,r.useState)([]),[n,o]=(0,r.useState)(!1),[a,i]=(0,r.useState)(null),l=(0,r.useMemo)(()=>[{title:\"\",dataIndex:\"drag\",width:40,render(p,v){return r.default.createElement(di,{rowKey:v.key})}},{title:\"\\u7F51\\u76D8\",dataIndex:\"name\",render(p,v){return r.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:\"8px\",minWidth:0}},r.default.createElement(\"span\",{title:p,style:{flex:1,minWidth:0,overflow:\"hidden\",textOverflow:\"ellipsis\",whiteSpace:\"nowrap\"}},p),(v.key===\"quark\"||v.key===\"uc\"||v.key===\"ali\")&&v.chunkSize&&r.default.createElement(s.Tag,{className:\"ios-tag\"},v.chunkSize,\"K\\xB7\",v.poolSize))}},{title:\"\\u542F\\u7528\",dataIndex:\"enable\",render(p,v,y){return r.default.createElement(s.Switch,{value:p,onChange:k=>{e[y].enable=k,t([...e])}})},width:80},{title:\"\\u64CD\\u4F5C\",dataIndex:\"action\",width:60,render(p,v,y){return r.default.createElement(s.Button,{type:\"text\",className:\"ios-edit-btn\",icon:r.default.createElement(ct,null),onClick:()=>{i(B(S({},v),{index:y})),o(!0)},size:\"small\"})}}],[e]),u=wr(Lt(at,{activationConstraint:{distance:1}}),Lt(xt,{activationConstraint:{delay:150,tolerance:5}})),c=({active:p,over:v})=>{p.id!==(v==null?void 0:v.id)&&t(y=>{let k=y.findIndex(w=>w.key===p.id),E=y.findIndex(w=>w.key===(v==null?void 0:v.id));return Bt(y,k,E)})},f=async()=>{let p=await I.get(\"/pans/list\");t(p)},m=async()=>{try{await I.put(\"/pans/list\",{list:e}),s.message.success({content:r.default.createElement(r.default.Fragment,null,\"\\u8BBE\\u7F6E\\u6210\\u529F\",r.default.createElement(\"br\",null),r.default.createElement(\"span\",{style:{fontSize:\"12px\",color:\"#999\"}},\"\\u914D\\u7F6E\\u5DF2\\u4FDD\\u5B58\\u5E76\\u7ACB\\u5373\\u751F\\u6548\")),duration:2})}catch(p){console.error(p),s.message.error(\"\\u8BBE\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(p==null?void 0:p.message))}},d=async()=>{try{await I.delete(\"/pans/list\"),f(),s.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\")}catch(p){console.error(p),s.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(p==null?void 0:p.message))}},g=p=>{let v=String(p.name||\"\").trim(),y=String(p.pic||\"\").trim(),k=B(S({},e[a.index]),{name:v,pic:y});(a.key===\"quark\"||a.key===\"uc\"||a.key===\"ali\")&&(k.chunkSize=p.chunkSize,k.poolSize=p.poolSize),a.key===\"quark\"&&(k.noSaveMode=p.noSaveMode===!0),e[a.index]=k,t([...e]),o(!1),s.message.info('\\u914D\\u7F6E\\u5DF2\\u66F4\\u65B0\\uFF0C\\u8BF7\\u70B9\\u51FB\\u4E0B\\u65B9\"\\u4FDD\\u5B58\"\\u6309\\u94AE\\u4FDD\\u5B58\\u914D\\u7F6E')};return(0,r.useEffect)(()=>{f()},[]),r.default.createElement(\"div\",null,r.default.createElement(Cr,{sensors:u,modifiers:[Sr],onDragEnd:c},r.default.createElement(kr,{items:e.map(p=>p.key),strategy:Or},r.default.createElement(s.Table,{components:{body:{row:li}},rowKey:\"key\",columns:l,dataSource:e,pagination:!1,tableLayout:\"fixed\",className:\"sites-table\"}))),r.default.createElement(\"div\",{className:\"ios-button-group\"},r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:m},\"\\u4FDD\\u5B58\"),r.default.createElement(\"button\",{className:\"action-btn action-btn--danger\",onClick:d},\"\\u91CD\\u7F6E\")),r.default.createElement(dd,{visible:n,onCancel:()=>o(!1),onSave:g,panKey:a==null?void 0:a.key,panName:a==null?void 0:a.name,panPic:a==null?void 0:a.pic,chunkSize:a==null?void 0:a.chunkSize,poolSize:a==null?void 0:a.poolSize,noSaveMode:a==null?void 0:a.noSaveMode}))}function Fd(){let[e]=s.Form.useForm(),[t,n]=(0,r.useState)(!1),o=\"/emby/setting\",a=async()=>{let c=await I.get(o);e.setFieldsValue(c)},i=async()=>{let c=await e.validateFields();try{await I.put(o,c),s.message.success(\"\\u4FDD\\u5B58\\u6210\\u529F\")}catch(f){console.error(f),s.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25\\uFF1A\".concat(f==null?void 0:f.message))}},l=async()=>{try{await I.delete(o),a(),s.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\")}catch(c){console.error(c),s.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(c==null?void 0:c.message))}},u=()=>{s.Modal.confirm({title:\"\\u786E\\u8BA4\\u6E05\\u7406 TMDB \\u7F13\\u5B58\\uFF1F\",content:\"\\u5C06\\u6E05\\u7A7A\\u670D\\u52A1\\u7AEF TMDB \\u7F13\\u5B58\\uFF08\\u542B\\u5185\\u5B58\\u4E0E\\u6301\\u4E45\\u5316\\u6570\\u636E\\uFF09\\uFF0C\\u540E\\u7EED\\u8BE6\\u60C5\\u4F1A\\u91CD\\u65B0\\u8BF7\\u6C42 TMDB\\u3002\",okText:\"\\u6E05\\u7406\",okButtonProps:{danger:!0},cancelText:\"\\u53D6\\u6D88\",async onOk(){n(!0);try{await I.post(\"/emby/tmdb/cache/clear\"),s.message.success(\"TMDB \\u7F13\\u5B58\\u5DF2\\u6E05\\u7406\")}catch(c){console.error(c),s.message.error(\"\\u6E05\\u7406\\u5931\\u8D25\\uFF1A\".concat(c==null?void 0:c.message))}finally{n(!1)}}})};return(0,r.useEffect)(()=>{a()},[]),r.default.createElement(s.Form,{form:e,layout:\"vertical\",style:{maxWidth:600},className:\"ios-form\"},r.default.createElement(s.Form.Item,{label:\"\\u670D\\u52A1\\u5668\\u540D\\u79F0\",name:\"serverName\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u670D\\u52A1\\u5668\\u540D\\u79F0\"}]},r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165\\u670D\\u52A1\\u5668\\u540D\\u79F0\"})),r.default.createElement(s.Form.Item,{label:\"\\u767B\\u5F55\\u7528\\u6237\\u540D\",name:\"username\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u767B\\u5F55\\u7528\\u6237\\u540D\"}]},r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165\\u767B\\u5F55\\u7528\\u6237\\u540D\"})),r.default.createElement(s.Form.Item,{label:\"\\u767B\\u5F55\\u5BC6\\u7801\",name:\"password\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u767B\\u5F55\\u5BC6\\u7801\"}]},r.default.createElement(s.Input.Password,{placeholder:\"\\u8BF7\\u8F93\\u5165\\u767B\\u5F55\\u5BC6\\u7801\"})),r.default.createElement(s.Form.Item,{label:\"TMDB API Key\",name:\"tmdbApiKey\",tooltip:\"TMDB v3 API Key\\uFF0C\\u542F\\u7528\\u589E\\u5F3A\\u65F6\\u5FC5\\u586B\",rules:[({getFieldValue:c})=>({validator(f,m){return!c(\"tmdbEnable\")||String(m||\"\").trim()?Promise.resolve():Promise.reject(new Error(\"\\u542F\\u7528 TMDB \\u589E\\u5F3A\\u65F6\\u8BF7\\u8F93\\u5165 API Key\"))}})]},r.default.createElement(s.Input.Password,{placeholder:\"\\u8BF7\\u8F93\\u5165 TMDB API Key\",autoComplete:\"off\"})),r.default.createElement(s.Form.Item,{label:\"\\u542F\\u7528 Emby\",name:\"enable\",valuePropName:\"checked\",style:{marginBottom:16}},r.default.createElement(s.Switch,null)),r.default.createElement(s.Form.Item,{label:\"\\u641C\\u7D22\\u663E\\u793A\\u6765\\u6E90\",name:\"searchSourcePrefix\",valuePropName:\"checked\",tooltip:\"\\u5F00\\u542F\\u540E\\u641C\\u7D22\\u7ED3\\u679C\\u6807\\u9898\\u663E\\u793A\\u4E3A\\u201C\\u6765\\u6E90 \\xB7 \\u6807\\u9898\\u201D\",style:{marginBottom:24}},r.default.createElement(s.Switch,null)),r.default.createElement(s.Form.Item,{label:\"\\u542F\\u7528 TMDB \\u589E\\u5F3A\",name:\"tmdbEnable\",valuePropName:\"checked\",tooltip:\"\\u5F00\\u542F\\u540E\\u4F18\\u5148\\u4F7F\\u7528 TMDB \\u7684\\u6D77\\u62A5\\u3001\\u5267\\u7167\\u548C\\u5143\\u6570\\u636E\",style:{marginBottom:16}},r.default.createElement(s.Switch,null)),r.default.createElement(s.Form.Item,{label:\"TMDB \\u7F13\\u5B58\",tooltip:\"\\u4EC5\\u6E05\\u7406\\u670D\\u52A1\\u7AEF TMDB \\u7F13\\u5B58\\uFF0C\\u4E0D\\u5F71\\u54CD\\u5217\\u8868/\\u641C\\u7D22\\u7AD9\\u6E90\\u7F13\\u5B58\"},r.default.createElement(s.Button,{danger:!0,onClick:u,loading:t},\"\\u4E00\\u952E\\u6E05\\u7406 TMDB \\u7F13\\u5B58\")),r.default.createElement(s.Form.Item,{style:{marginBottom:0}},r.default.createElement(\"div\",{className:\"ios-button-group\"},r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:i},\"\\u4FDD\\u5B58\"),r.default.createElement(\"button\",{className:\"action-btn action-btn--danger\",onClick:l},\"\\u91CD\\u7F6E\"))))}function Id(){let[e]=s.Form.useForm(),t=\"/danmu/setting\",n=async()=>{let i=await I.get(t);e.setFieldsValue(i)},o=async()=>{let i=await e.validateFields();try{await I.put(t,i),s.message.success(\"\\u4FDD\\u5B58\\u6210\\u529F\")}catch(l){console.error(l),s.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25\\uFF1A\".concat(l==null?void 0:l.message))}},a=async()=>{try{await I.delete(t),n(),s.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\")}catch(i){console.error(i),s.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(i==null?void 0:i.message))}};return(0,r.useEffect)(()=>{n()},[]),r.default.createElement(s.Form,{form:e,layout:\"vertical\",style:{maxWidth:600},className:\"ios-form\"},r.default.createElement(s.Form.Item,{label:\"API \\u5217\\u8868\",style:{marginBottom:8}},r.default.createElement(s.Form.List,{name:\"urls\",rules:[{required:!0,message:\"\\u8BF7\\u6DFB\\u52A0API\\u5730\\u5740\"}]},(i,{add:l,remove:u},{errors:c})=>r.default.createElement(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:12}},i.map(f=>r.default.createElement(\"div\",{key:f.key,className:\"domain-list-row\"},r.default.createElement(s.Form.Item,B(S({},f),{name:[f.name,\"address\"],validateTrigger:[\"onChange\",\"onBlur\"],rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165API\\u5730\\u5740\"}],style:{flex:1,marginBottom:0}}),r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165API\\u5730\\u5740\"})),r.default.createElement(s.Form.Item,B(S({},f),{name:[f.name,\"name\"],validateTrigger:[\"onChange\",\"onBlur\"],style:{width:100,marginBottom:0,flexShrink:0}}),r.default.createElement(s.Input,{placeholder:\"\\u522B\\u540D\"})),r.default.createElement(\"span\",{className:\"domain-list-action\".concat(i.length>1?\"\":\" domain-list-action--placeholder\")},i.length>1?r.default.createElement(Ze,{className:\"dynamic-delete-button\",onClick:()=>u(f.name)}):null))),r.default.createElement(s.Button,{type:\"dashed\",onClick:()=>l(),block:!0,icon:r.default.createElement(be,null)},\"\\u6DFB\\u52A0 API\"),r.default.createElement(s.Form.ErrorList,{errors:c})))),r.default.createElement(s.Form.Item,{label:\"\\u81EA\\u52A8\\u63A8\\u9001\",name:\"autoPush\",valuePropName:\"checked\",style:{marginBottom:16}},r.default.createElement(s.Switch,null)),r.default.createElement(s.Form.Item,{label:\"\\u8C03\\u8BD5\\u4FE1\\u606F\",name:\"debug\",valuePropName:\"checked\",tooltip:\"\\u5F00\\u542F\\u540E\\u5728\\u63A7\\u5236\\u53F0\\u663E\\u793A\\u8BE6\\u7EC6\\u7684\\u5F39\\u5E55\\u5339\\u914D\\u8C03\\u8BD5\\u4FE1\\u606F\",style:{marginBottom:24}},r.default.createElement(s.Switch,null)),r.default.createElement(s.Form.Item,{style:{marginBottom:0}},r.default.createElement(\"div\",{className:\"ios-button-group\"},r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:o},\"\\u4FDD\\u5B58\"),r.default.createElement(\"button\",{className:\"action-btn action-btn--danger\",onClick:a},\"\\u91CD\\u7F6E\"))))}function ci(e,t=\"\"){if(!e||typeof e!=\"object\")return null;let n=String(e.address||e.api||e.url||\"\").trim();if(!n)return null;let o=\"\";try{o=new URL(/^https?:\\/\\//i.test(n)?n:\"https://\".concat(n)).hostname}catch(l){}let a=String(e.name||e.title||t||o||\"CMS\").trim();return{name:a.startsWith(\"\\u300C\\u91C7\\u300D\")?a:\"\\u300C\\u91C7\\u300D\".concat(a),address:n}}function Fr(e={}){return\"nodejs_\".concat(String(e.name||\"\").trim())}function Dd(e=[],t=[]){let n=new Set;return[...e,...t].map(o=>ci(o)).filter(o=>!o||n.has(o.address)?!1:(n.add(o.address),!0))}function fi({visible:e,onCancel:t,onSave:n,onDelete:o,source:a,mode:i=\"add\"}){let[l]=s.Form.useForm(),[u,c]=(0,r.useState)(!1);(0,r.useEffect)(()=>{e&&l.setFieldsValue({name:(a==null?void 0:a.name)||\"\",url:(a==null?void 0:a.address)||\"\"})},[e,a,l]);let f=async()=>{let m;try{m=await l.validateFields()}catch(p){return}let d=String(m.name||\"\").trim(),g=String(m.url||\"\").trim();try{if(c(!0),i===\"edit\"&&g===String((a==null?void 0:a.address)||\"\").trim()){await n({name:d,address:g}),s.message.success(\"CMS \\u6E90\\u4FDD\\u5B58\\u6210\\u529F\");return}let p=await I.post(\"/cms/resolve\",{name:d,url:g}),v=Array.isArray(p==null?void 0:p.sources)?p.sources:[];if(v.length===0){s.message.warning(\"\\u672A\\u8BC6\\u522B\\u5230\\u53EF\\u7528\\u7684 CMS \\u6E90\");return}i===\"edit\"?(await n(v[0]),s.message.success(v.length>1?\"\\u5DF2\\u4F7F\\u7528\\u8BC6\\u522B\\u7ED3\\u679C\\u4E2D\\u7684\\u7B2C\\u4E00\\u4E2A CMS \\u6E90\":\"CMS \\u6E90\\u4FDD\\u5B58\\u6210\\u529F\")):(await n(v),s.message.success(v.length>1?\"\\u5DF2\\u6DFB\\u52A0 \".concat(v.length,\" \\u4E2A CMS \\u6E90\"):\"CMS \\u6E90\\u6DFB\\u52A0\\u6210\\u529F\"))}catch(p){console.error(p),s.message.error(\"\".concat(i===\"edit\"?\"CMS \\u4FDD\\u5B58\\u5931\\u8D25\":\"CMS \\u89E3\\u6790\\u5931\\u8D25\",\"\\uFF1A\").concat((p==null?void 0:p.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}finally{c(!1)}};return r.default.createElement(s.Modal,{title:i===\"edit\"?\"\\u7F16\\u8F91 \".concat((a==null?void 0:a.name)||\"CMS \\u6E90\"):\"\\u6DFB\\u52A0 CMS \\u6E90\",open:e,onCancel:t,confirmLoading:u,className:\"ios-modal\",footer:null,width:\"90%\",destroyOnClose:!0},r.default.createElement(s.Form,{form:l,layout:\"vertical\",className:\"ios-form\",requiredMark:!1},r.default.createElement(s.Form.Item,{label:\"\\u540D\\u79F0\",name:\"name\",tooltip:\"\\u7559\\u7A7A\\u65F6\\u4F7F\\u7528\\u63A5\\u53E3\\u8FD4\\u56DE\\u540D\\u79F0\\u6216\\u57DF\\u540D\\uFF0C\\u4FDD\\u5B58\\u65F6\\u4F1A\\u81EA\\u52A8\\u6DFB\\u52A0\\u300C\\u91C7\\u300D\\u524D\\u7F00\"},r.default.createElement(s.Input,{placeholder:\"\\u4F8B\\u5982\\uFF1A\\u6211\\u7684 CMS\"})),r.default.createElement(s.Form.Item,{label:\"API \\u5730\\u5740\",name:\"url\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165 CMS API \\u5730\\u5740\"}]},r.default.createElement(s.Input,{placeholder:\"example.com \\u6216 https://example.com/api.php/provide/vod/\"})),r.default.createElement(s.Form.Item,{style:{marginBottom:0}},r.default.createElement(\"div\",{className:\"ios-button-group\".concat(i===\"edit\"?\"\":\" emby-server-edit-actions--new\")},i===\"edit\"&&r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--danger\",onClick:()=>o==null?void 0:o(a),disabled:u},\"\\u5220\\u9664\"),r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--primary\",onClick:f,disabled:u},u?i===\"edit\"?\"\\u4FDD\\u5B58\\u4E2D...\":\"\\u89E3\\u6790\\u4E2D...\":i===\"edit\"?\"\\u4FDD\\u5B58\":\"\\u89E3\\u6790\\u5E76\\u6DFB\\u52A0\")))))}function Nd(e){return r.default.createElement(fi,B(S({},e),{mode:\"add\"}))}function Ad(){let[e,t]=(0,r.useState)([]),[n,o]=(0,r.useState)(!1),[a,i]=(0,r.useState)(!1),l=(0,r.useCallback)(async()=>{o(!0);try{let c=await I.get(\"/subscriptions\");t(Array.isArray(c==null?void 0:c.endpoints)?c.endpoints:[])}catch(c){console.error(\"\\u52A0\\u8F7D\\u8BA2\\u9605\\u63A5\\u53E3\\u5931\\u8D25:\",c),c!=null&&c.handled||s.message.error(\"\\u52A0\\u8F7D\\u8BA2\\u9605\\u63A5\\u53E3\\u5931\\u8D25\")}finally{o(!1)}},[]);(0,r.useEffect)(()=>{l()},[l]);let u=c=>{(0,Mr.default)(c.url),s.message.success(\"\\u5DF2\\u590D\\u5236\\u5230\\u526A\\u8D34\\u677F\")};return r.default.createElement(\"div\",{className:\"subscription-page\"},r.default.createElement(\"section\",{className:\"subscription-section\"},r.default.createElement(s.Spin,{spinning:n},r.default.createElement(\"div\",{className:\"subscription-endpoints\"},e.map(c=>r.default.createElement(\"div\",{className:\"subscription-endpoint\",key:c.key||c.url},r.default.createElement(\"div\",{className:\"subscription-endpoint__main\"},r.default.createElement(\"div\",{className:\"subscription-endpoint__title\"},r.default.createElement(\"span\",null,c.name)),r.default.createElement(\"div\",{className:\"subscription-endpoint__url\",title:c.url},c.url)),r.default.createElement(\"div\",{className:\"subscription-endpoint__actions\"},c.key===\"emby\"&&r.default.createElement(s.Button,{type:\"text\",icon:r.default.createElement(yn,null),onClick:()=>i(!0),\"aria-label\":\"\\u914D\\u7F6E Emby API\"}),r.default.createElement(s.Button,{type:\"text\",icon:r.default.createElement(ir,null),onClick:()=>u(c),\"aria-label\":\"\\u590D\\u5236\".concat(c.name)}),r.default.createElement(s.Button,{type:\"text\",icon:r.default.createElement(ur,null),href:c.url,target:\"_blank\",rel:\"noreferrer\",\"aria-label\":\"\\u6253\\u5F00\".concat(c.name)}))))))),r.default.createElement(s.Modal,{title:\"Emby API \\u8BBE\\u7F6E\",open:a,footer:null,onCancel:()=>i(!1),destroyOnClose:!0,className:\"ios-modal subscription-setting-modal\"},r.default.createElement(Fd,null)))}function _d(){let[e,t]=(0,r.useState)(\"account\"),n={accept:\".json\",showUploadList:!1,beforeUpload(i){let l=new FileReader;return l.onload=async u=>{try{let c=JSON.parse(u.target.result);await I.put(\"/backup\",c),s.message.success(\"\".concat(i.name,\"\\u5BFC\\u5165\\u6210\\u529F\"))}catch(c){s.message.error(\"\".concat(i.name,\"\\u5BFC\\u5165\\u5931\\u8D25: \").concat(c.message)),console.error(\"Error parsing JSON:\",c)}},l.readAsText(i),!1}},o=[{key:\"account\",label:\"\\u767B\\u5F55\",icon:r.default.createElement(cr,null)},{key:\"settings\",label:\"\\u8BBE\\u7F6E\",icon:r.default.createElement(yn,null)}],a=()=>{switch(e){case\"account\":return r.default.createElement(Zl,null);case\"settings\":return r.default.createElement(s.Tabs,{destroyOnHidden:!0},r.default.createElement(Mn,{tab:\"\\u7AD9\\u6E90\\u5217\\u8868\",key:\"sites\"},r.default.createElement(Td,null)),r.default.createElement(Mn,{tab:\"\\u7F51\\u76D8\\u5217\\u8868\",key:\"pans\"},r.default.createElement(Ed,null)),r.default.createElement(Mn,{tab:\"\\u5F39\\u5E55\\u8BBE\\u7F6E\",key:\"danmu\"},r.default.createElement(Id,null)),r.default.createElement(Mn,{tab:\"\\u8BA2\\u9605\\u8F6C\\u6362\",key:\"subscriptions\"},r.default.createElement(Ad,null)));default:return null}};return r.default.createElement(\"div\",{className:\"app-layout\"},r.default.createElement(\"div\",{className:\"top-nav-bar\"},r.default.createElement(\"div\",{className:\"nav-pill\"},o.map(i=>r.default.createElement(\"div\",{key:i.key,className:\"nav-tab \".concat(e===i.key?\"nav-tab--active\":\"\"),onClick:()=>t(i.key)},i.icon,r.default.createElement(\"span\",null,i.label))),r.default.createElement(\"div\",{className:\"nav-divider\"}),r.default.createElement(\"div\",{className:\"nav-actions\"},r.default.createElement(s.Upload,S({},n),r.default.createElement(s.Button,{type:\"text\",icon:r.default.createElement(dr,null),size:\"small\"},\"\\u5BFC\\u5165\")),r.default.createElement(s.Button,{type:\"text\",icon:r.default.createElement(sr,null),size:\"small\",href:\"/website/backup\",target:\"_blank\"},\"\\u5BFC\\u51FA\")))),r.default.createElement(\"div\",{className:\"container\"},r.default.createElement(s.Card,{className:\"main-card\"},a())))}function Md(){(0,ii.createRoot)(document.getElementById(\"app\")).render(r.default.createElement(_d,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 mi=Object.create;var kt=Object.defineProperty,gi=Object.defineProperties,hi=Object.getOwnPropertyDescriptor,xi=Object.getOwnPropertyDescriptors,bi=Object.getOwnPropertyNames,Kt=Object.getOwnPropertySymbols,yi=Object.getPrototypeOf,Yn=Object.prototype.hasOwnProperty,Hr=Object.prototype.propertyIsEnumerable;var $r=(e,t,n)=>t in e?kt(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,O=(e,t)=>{for(var n in t||(t={}))Yn.call(t,n)&&$r(e,n,t[n]);if(Kt)for(var n of Kt(t))Hr.call(t,n)&&$r(e,n,t[n]);return e},L=(e,t)=>gi(e,xi(t));var Wn=(e,t)=>{var n={};for(var o in e)Yn.call(e,o)&&t.indexOf(o)<0&&(n[o]=e[o]);if(e!=null&&Kt)for(var o of Kt(e))t.indexOf(o)<0&&Hr.call(e,o)&&(n[o]=e[o]);return n};var Ge=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),vi=(e,t)=>{for(var n in t)kt(e,n,{get:t[n],enumerable:!0})},qr=(e,t,n,o)=>{if(t&&typeof t==\"object\"||typeof t==\"function\")for(let a of bi(t))!Yn.call(e,a)&&a!==n&&kt(e,a,{get:()=>t[a],enumerable:!(o=hi(t,a))||o.enumerable});return e};var K=(e,t,n)=>(n=e!=null?mi(yi(e)):{},qr(t||!e||!e.__esModule?kt(n,\"default\",{value:e,enumerable:!0}):n,e)),wi=e=>qr(kt({},\"__esModule\",{value:!0}),e);var ee=Ge((Gd,zr)=>{zr.exports=window.React});var Xn=Ge((Vd,Gr)=>{Gr.exports=window.ReactDOM});var jr=Ge(Kn=>{\"use strict\";var Vr=Xn();Kn.createRoot=Vr.createRoot,Kn.hydrateRoot=Vr.hydrateRoot;var jd});var Yr=Ge((Yd,Ur)=>{Ur.exports=window.antd});var Xr=Ge((Wd,Wr)=>{Wr.exports=window.axios});var Zr=Ge((Xd,Kr)=>{Kr.exports=function(){var e=document.getSelection();if(!e.rangeCount)return function(){};for(var t=document.activeElement,n=[],o=0;o{\"use strict\";var Ci=Zr(),Jr={\"text/plain\":\"Text\",\"text/html\":\"Url\",default:\"Text\"},Si=\"Copy to clipboard: #{key}, Enter\";function Oi(e){var t=(/mac os x/i.test(navigator.userAgent)?\"\\u2318\":\"Ctrl\")+\"+C\";return e.replace(/#{\\s*key\\s*}/g,t)}function ki(e,t){var n,o,a,i,l,u,c=!1;t||(t={}),n=t.debug||!1;try{a=Ci(),i=document.createRange(),l=document.getSelection(),u=document.createElement(\"span\"),u.textContent=e,u.ariaHidden=\"true\",u.style.all=\"unset\",u.style.position=\"fixed\",u.style.top=0,u.style.clip=\"rect(0, 0, 0, 0)\",u.style.whiteSpace=\"pre\",u.style.webkitUserSelect=\"text\",u.style.MozUserSelect=\"text\",u.style.msUserSelect=\"text\",u.style.userSelect=\"text\",u.addEventListener(\"copy\",function(m){if(m.stopPropagation(),t.format)if(m.preventDefault(),typeof m.clipboardData>\"u\"){n&&console.warn(\"unable to use e.clipboardData\"),n&&console.warn(\"trying IE specific stuff\"),window.clipboardData.clearData();var d=Jr[t.format]||Jr.default;window.clipboardData.setData(d,e)}else m.clipboardData.clearData(),m.clipboardData.setData(t.format,e);t.onCopy&&(m.preventDefault(),t.onCopy(m.clipboardData))}),document.body.appendChild(u),i.selectNodeContents(u),l.addRange(i);var f=document.execCommand(\"copy\");if(!f)throw new Error(\"copy command was unsuccessful\");c=!0}catch(m){n&&console.error(\"unable to copy using execCommand: \",m),n&&console.warn(\"trying IE specific stuff\");try{window.clipboardData.setData(t.format||\"text\",e),t.onCopy&&t.onCopy(window.clipboardData),c=!0}catch(d){n&&console.error(\"unable to copy using clipboardData: \",d),n&&console.error(\"falling back to prompt\"),o=Oi(\"message\"in t?t.message:Si),window.prompt(o,e)}}finally{l&&(typeof l.removeRange==\"function\"?l.removeRange(i):l.removeAllRanges()),u&&document.body.removeChild(u),a()}return c}Qr.exports=ki});var lo=Ge((vu,Rt)=>{(function(){\"use strict\";var e={}.hasOwnProperty;function t(){for(var a=\"\",i=0;iHd});module.exports=wi(qd);var r=K(ee(),1),si=K(jr(),1),s=K(Yr(),1),yt=K(Xr(),1),Pr=K(Rr(),1);var eo=K(ee()),Ti=(0,eo.createContext)({}),Zt=Ti;function Z(){return Z=Object.assign?Object.assign.bind():function(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,o=Array(t);nparseFloat(a));for(let a=0;a<3;a+=1)o[a]=t(o[a]||0,n[a]||\"\",a);return n[3]?o[3]=n[3].includes(\"%\")?o[3]/100:o[3]:o[3]=1,o}var uo=(e,t,n)=>n===0?e:e/100;function Tt(e,t){let n=t||255;return e>n?n:e<0?0:e}var We=class e{constructor(t){oe(this,\"isValid\",!0),oe(this,\"r\",0),oe(this,\"g\",0),oe(this,\"b\",0),oe(this,\"a\",1),oe(this,\"_h\",void 0),oe(this,\"_s\",void 0),oe(this,\"_l\",void 0),oe(this,\"_v\",void 0),oe(this,\"_max\",void 0),oe(this,\"_min\",void 0),oe(this,\"_brightness\",void 0);function n(o){return o[0]in t&&o[1]in t&&o[2]in t}if(t)if(typeof t==\"string\"){let a=function(i){return o.startsWith(i)},o=t.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(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=Tt(t.r),this.g=Tt(t.g),this.b=Tt(t.b),this.a=typeof t.a==\"number\"?Tt(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(i){let l=i/255;return l<=.03928?l/12.92:Math.pow((l+.055)/1.055,2.4)}let n=t(this.r),o=t(this.g),a=t(this.b);return .2126*n+.7152*o+.0722*a}getHue(){if(typeof this._h>\"u\"){let t=this.getMax()-this.getMin();t===0?this._h=0:this._h=ae(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(),o=this.getSaturation(),a=this.getLightness()-t/100;return a<0&&(a=0),this._c({h:n,s:o,l:a,a:this.a})}lighten(t=10){let n=this.getHue(),o=this.getSaturation(),a=this.getLightness()+t/100;return a>1&&(a=1),this._c({h:n,s:o,l:a,a:this.a})}mix(t,n=50){let o=this._c(t),a=n/100,i=u=>(o[u]-this[u])*a+this[u],l={r:ae(i(\"r\")),g:ae(i(\"g\")),b:ae(i(\"b\")),a:ae(i(\"a\")*100)/100};return this._c(l)}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),o=this.a+n.a*(1-this.a),a=i=>ae((this[i]*this.a+n[i]*n.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(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 o=(this.g||0).toString(16);t+=o.length===2?o:\"0\"+o;let a=(this.b||0).toString(16);if(t+=a.length===2?a:\"0\"+a,typeof this.a==\"number\"&&this.a>=0&&this.a<1){let i=ae(this.a*255).toString(16);t+=i.length===2?i:\"0\"+i}return t}toHsl(){return{h:this.getHue(),s:this.getSaturation(),l:this.getLightness(),a:this.a}}toHslString(){let t=this.getHue(),n=ae(this.getSaturation()*100),o=ae(this.getLightness()*100);return this.a!==1?\"hsla(\".concat(t,\",\").concat(n,\"%,\").concat(o,\"%,\").concat(this.a,\")\"):\"hsl(\".concat(t,\",\").concat(n,\"%,\").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(t,n,o){let a=this.clone();return a[t]=Tt(n,o),a}_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 o(a,i){return parseInt(n[a]+n[i||a],16)}n.length<6?(this.r=o(0),this.g=o(1),this.b=o(2),this.a=n[3]?o(3)/255:1):(this.r=o(0,1),this.g=o(2,3),this.b=o(4,5),this.a=n[6]?o(6,7)/255:1)}fromHsl({h:t,s:n,l:o,a}){if(this._h=t%360,this._s=n,this._l=o,this.a=typeof a==\"number\"?a:1,n<=0){let g=ae(o*255);this.r=g,this.g=g,this.b=g}let i=0,l=0,u=0,c=t/60,f=(1-Math.abs(2*o-1))*n,m=f*(1-Math.abs(c%2-1));c>=0&&c<1?(i=f,l=m):c>=1&&c<2?(i=m,l=f):c>=2&&c<3?(l=f,u=m):c>=3&&c<4?(l=m,u=f):c>=4&&c<5?(i=m,u=f):c>=5&&c<6&&(i=f,u=m);let d=o-f/2;this.r=ae((i+d)*255),this.g=ae((l+d)*255),this.b=ae((u+d)*255)}fromHsv({h:t,s:n,v:o,a}){this._h=t%360,this._s=n,this._v=o,this.a=typeof a==\"number\"?a:1;let i=ae(o*255);if(this.r=i,this.g=i,this.b=i,n<=0)return;let l=t/60,u=Math.floor(l),c=l-u,f=ae(o*(1-n)*255),m=ae(o*(1-n*c)*255),d=ae(o*(1-n*(1-c))*255);switch(u){case 0:this.g=d,this.b=f;break;case 1:this.r=m,this.b=f;break;case 2:this.r=f,this.b=d;break;case 3:this.r=f,this.g=m;break;case 4:this.r=d,this.g=f;break;case 5:default:this.g=f,this.b=m;break}}fromHsvString(t){let n=Jn(t,uo);this.fromHsv({h:n[0],s:n[1],v:n[2],a:n[3]})}fromHslString(t){let n=Jn(t,uo);this.fromHsl({h:n[0],s:n[1],l:n[2],a:n[3]})}fromRgbString(t){let n=Jn(t,(o,a)=>a.includes(\"%\")?ae(o/100*255):o);this.r=n[0],this.g=n[1],this.b=n[2],this.a=n[3]}};var en=2,co=.16,Fi=.05,Ei=.05,Ii=.15,go=5,ho=4,Ni=[{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 fo(e,t,n){var o;return Math.round(e.h)>=60&&Math.round(e.h)<=240?o=n?Math.round(e.h)-en*t:Math.round(e.h)+en*t:o=n?Math.round(e.h)+en*t:Math.round(e.h)-en*t,o<0?o+=360:o>=360&&(o-=360),o}function po(e,t,n){if(e.h===0&&e.s===0)return e.s;var o;return n?o=e.s-co*t:t===ho?o=e.s+co:o=e.s+Fi*t,o>1&&(o=1),n&&t===go&&o>.1&&(o=.1),o<.06&&(o=.06),Math.round(o*100)/100}function mo(e,t,n){var o;return n?o=e.v+Ei*t:o=e.v-Ii*t,o=Math.max(0,Math.min(1,o)),Math.round(o*100)/100}function tn(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=[],o=new We(e),a=o.toHsv(),i=go;i>0;i-=1){var l=new We({h:fo(a,i,!0),s:po(a,i,!0),v:mo(a,i,!0)});n.push(l)}n.push(o);for(var u=1;u<=ho;u+=1){var c=new We({h:fo(a,u),s:po(a,u),v:mo(a,u)});n.push(c)}return t.theme===\"dark\"?Ni.map(function(f){var m=f.index,d=f.amount;return new We(t.backgroundColor||\"#141414\").mix(n[m],d).toHexString()}):n.map(function(f){return f.toHexString()})}var xo=[\"#fff1f0\",\"#ffccc7\",\"#ffa39e\",\"#ff7875\",\"#ff4d4f\",\"#f5222d\",\"#cf1322\",\"#a8071a\",\"#820014\",\"#5c0011\"];xo.primary=xo[5];var bo=[\"#fff2e8\",\"#ffd8bf\",\"#ffbb96\",\"#ff9c6e\",\"#ff7a45\",\"#fa541c\",\"#d4380d\",\"#ad2102\",\"#871400\",\"#610b00\"];bo.primary=bo[5];var yo=[\"#fff7e6\",\"#ffe7ba\",\"#ffd591\",\"#ffc069\",\"#ffa940\",\"#fa8c16\",\"#d46b08\",\"#ad4e00\",\"#873800\",\"#612500\"];yo.primary=yo[5];var vo=[\"#fffbe6\",\"#fff1b8\",\"#ffe58f\",\"#ffd666\",\"#ffc53d\",\"#faad14\",\"#d48806\",\"#ad6800\",\"#874d00\",\"#613400\"];vo.primary=vo[5];var wo=[\"#feffe6\",\"#ffffb8\",\"#fffb8f\",\"#fff566\",\"#ffec3d\",\"#fadb14\",\"#d4b106\",\"#ad8b00\",\"#876800\",\"#614700\"];wo.primary=wo[5];var Co=[\"#fcffe6\",\"#f4ffb8\",\"#eaff8f\",\"#d3f261\",\"#bae637\",\"#a0d911\",\"#7cb305\",\"#5b8c00\",\"#3f6600\",\"#254000\"];Co.primary=Co[5];var So=[\"#f6ffed\",\"#d9f7be\",\"#b7eb8f\",\"#95de64\",\"#73d13d\",\"#52c41a\",\"#389e0d\",\"#237804\",\"#135200\",\"#092b00\"];So.primary=So[5];var Oo=[\"#e6fffb\",\"#b5f5ec\",\"#87e8de\",\"#5cdbd3\",\"#36cfc9\",\"#13c2c2\",\"#08979c\",\"#006d75\",\"#00474f\",\"#002329\"];Oo.primary=Oo[5];var nn=[\"#e6f4ff\",\"#bae0ff\",\"#91caff\",\"#69b1ff\",\"#4096ff\",\"#1677ff\",\"#0958d9\",\"#003eb3\",\"#002c8c\",\"#001d66\"];nn.primary=nn[5];var ko=[\"#f0f5ff\",\"#d6e4ff\",\"#adc6ff\",\"#85a5ff\",\"#597ef7\",\"#2f54eb\",\"#1d39c4\",\"#10239e\",\"#061178\",\"#030852\"];ko.primary=ko[5];var To=[\"#f9f0ff\",\"#efdbff\",\"#d3adf7\",\"#b37feb\",\"#9254de\",\"#722ed1\",\"#531dab\",\"#391085\",\"#22075e\",\"#120338\"];To.primary=To[5];var Fo=[\"#fff0f6\",\"#ffd6e7\",\"#ffadd2\",\"#ff85c0\",\"#f759ab\",\"#eb2f96\",\"#c41d7f\",\"#9e1068\",\"#780650\",\"#520339\"];Fo.primary=Fo[5];var Eo=[\"#a6a6a6\",\"#999999\",\"#8c8c8c\",\"#808080\",\"#737373\",\"#666666\",\"#404040\",\"#1a1a1a\",\"#000000\",\"#000000\"];Eo.primary=Eo[5];var Io=[\"#2a1215\",\"#431418\",\"#58181c\",\"#791a1f\",\"#a61d24\",\"#d32029\",\"#e84749\",\"#f37370\",\"#f89f9a\",\"#fac8c3\"];Io.primary=Io[5];var No=[\"#2b1611\",\"#441d12\",\"#592716\",\"#7c3118\",\"#aa3e19\",\"#d84a1b\",\"#e87040\",\"#f3956a\",\"#f8b692\",\"#fad4bc\"];No.primary=No[5];var Do=[\"#2b1d11\",\"#442a11\",\"#593815\",\"#7c4a15\",\"#aa6215\",\"#d87a16\",\"#e89a3c\",\"#f3b765\",\"#f8cf8d\",\"#fae3b7\"];Do.primary=Do[5];var Ao=[\"#2b2111\",\"#443111\",\"#594214\",\"#7c5914\",\"#aa7714\",\"#d89614\",\"#e8b339\",\"#f3cc62\",\"#f8df8b\",\"#faedb5\"];Ao.primary=Ao[5];var _o=[\"#2b2611\",\"#443b11\",\"#595014\",\"#7c6e14\",\"#aa9514\",\"#d8bd14\",\"#e8d639\",\"#f3ea62\",\"#f8f48b\",\"#fafab5\"];_o.primary=_o[5];var Po=[\"#1f2611\",\"#2e3c10\",\"#3e4f13\",\"#536d13\",\"#6f9412\",\"#8bbb11\",\"#a9d134\",\"#c9e75d\",\"#e4f88b\",\"#f0fab5\"];Po.primary=Po[5];var Mo=[\"#162312\",\"#1d3712\",\"#274916\",\"#306317\",\"#3c8618\",\"#49aa19\",\"#6abe39\",\"#8fd460\",\"#b2e58b\",\"#d5f2bb\"];Mo.primary=Mo[5];var Lo=[\"#112123\",\"#113536\",\"#144848\",\"#146262\",\"#138585\",\"#13a8a8\",\"#33bcb7\",\"#58d1c9\",\"#84e2d8\",\"#b2f1e8\"];Lo.primary=Lo[5];var Bo=[\"#111a2c\",\"#112545\",\"#15325b\",\"#15417e\",\"#1554ad\",\"#1668dc\",\"#3c89e8\",\"#65a9f3\",\"#8dc5f8\",\"#b7dcfa\"];Bo.primary=Bo[5];var $o=[\"#131629\",\"#161d40\",\"#1c2755\",\"#203175\",\"#263ea0\",\"#2b4acb\",\"#5273e0\",\"#7f9ef3\",\"#a8c1f8\",\"#d2e0fa\"];$o.primary=$o[5];var Ho=[\"#1a1325\",\"#24163a\",\"#301c4d\",\"#3e2069\",\"#51258f\",\"#642ab5\",\"#854eca\",\"#ab7ae0\",\"#cda8f0\",\"#ebd7fa\"];Ho.primary=Ho[5];var qo=[\"#291321\",\"#40162f\",\"#551c3b\",\"#75204f\",\"#a02669\",\"#cb2b83\",\"#e0529c\",\"#f37fb7\",\"#f8a8cc\",\"#fad2e3\"];qo.primary=qo[5];var zo=[\"#151515\",\"#1f1f1f\",\"#2d2d2d\",\"#393939\",\"#494949\",\"#5a5a5a\",\"#6a6a6a\",\"#7b7b7b\",\"#888888\",\"#969696\"];zo.primary=zo[5];function Go(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,o)}return n}function xe(e){for(var t=1;t0&&arguments[0]!==void 0?arguments[0]:{},t=e.mark;return t?t.startsWith(\"data-\")?t:\"data-\".concat(t):Di}function tr(e){if(e.attachTo)return e.attachTo;var t=document.querySelector(\"head\");return t||document.body}function Ai(e){return e===\"queue\"?\"prependQueue\":e?\"prepend\":\"append\"}function nr(e){return Array.from((er.get(e)||e).children).filter(function(t){return t.tagName===\"STYLE\"})}function Yo(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!Qn())return null;var n=t.csp,o=t.prepend,a=t.priority,i=a===void 0?0:a,l=Ai(o),u=l===\"prependQueue\",c=document.createElement(\"style\");c.setAttribute(Vo,l),u&&i&&c.setAttribute(jo,\"\".concat(i)),n!=null&&n.nonce&&(c.nonce=n==null?void 0:n.nonce),c.innerHTML=e;var f=tr(t),m=f.firstChild;if(o){if(u){var d=(t.styles||nr(f)).filter(function(g){if(![\"prepend\",\"prependQueue\"].includes(g.getAttribute(Vo)))return!1;var p=Number(g.getAttribute(jo)||0);return i>=p});if(d.length)return f.insertBefore(c,d[d.length-1].nextSibling),c}f.insertBefore(c,m)}else f.appendChild(c);return c}function _i(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=tr(t);return(t.styles||nr(n)).find(function(o){return o.getAttribute(Uo(t))===e})}function Pi(e,t){var n=er.get(e);if(!n||!Rn(document,n)){var o=Yo(\"\",t),a=o.parentNode;er.set(e,a),e.removeChild(o)}}function Wo(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},o=tr(n),a=nr(o),i=xe(xe({},n),{},{styles:a});Pi(o,i);var l=_i(t,i);if(l){var u,c;if((u=i.csp)!==null&&u!==void 0&&u.nonce&&l.nonce!==((c=i.csp)===null||c===void 0?void 0:c.nonce)){var f;l.nonce=(f=i.csp)===null||f===void 0?void 0:f.nonce}return l.innerHTML!==e&&(l.innerHTML=e),l}var m=Yo(e,i);return m.setAttribute(Uo(i),t),m}function Xo(e){var t;return e==null||(t=e.getRootNode)===null||t===void 0?void 0:t.call(e)}function Mi(e){return Xo(e)instanceof ShadowRoot}function Ko(e){return Mi(e)?Xo(e):null}var rr={},Li=[],Bi=function(t){Li.push(t)};function $i(e,t){if(0)var n}function Hi(e,t){if(0)var n}function qi(){rr={}}function Zo(e,t,n){!t&&!rr[n]&&(e(!1,n),rr[n]=!0)}function rn(e,t){Zo($i,e,t)}function zi(e,t){Zo(Hi,e,t)}rn.preMessage=Bi;rn.resetWarned=qi;rn.noteOnce=zi;var Jo=rn;var Xe=K(ee());function Gi(e){return e.replace(/-(.)/g,function(t,n){return n.toUpperCase()})}function Ro(e,t){Jo(e,\"[@ant-design/icons] \".concat(t))}function or(e){return Ae(e)===\"object\"&&typeof e.name==\"string\"&&typeof e.theme==\"string\"&&(Ae(e.icon)===\"object\"||typeof e.icon==\"function\")}function Qo(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return Object.keys(e).reduce(function(t,n){var o=e[n];switch(n){case\"class\":t.className=o,delete t.class;break;default:delete t[n],t[Gi(n)]=o}return t},{})}function on(e,t,n){return n?Xe.default.createElement(e.tag,xe(xe({key:t},Qo(e.attrs)),n),(e.children||[]).map(function(o,a){return on(o,\"\".concat(t,\"-\").concat(e.tag,\"-\").concat(a))})):Xe.default.createElement(e.tag,xe({key:t},Qo(e.attrs)),(e.children||[]).map(function(o,a){return on(o,\"\".concat(t,\"-\").concat(e.tag,\"-\").concat(a))}))}function ar(e){return tn(e)[0]}function an(e){return e?Array.isArray(e)?e:[e]:[]}var Vi=\"\\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\",ea=function(t){var n=(0,Xe.useContext)(Zt),o=n.csp,a=n.prefixCls,i=n.layer,l=Vi;a&&(l=l.replace(/anticon/g,a)),i&&(l=\"@layer \".concat(i,\" {\\n\").concat(l,\"\\n}\")),(0,Xe.useEffect)(function(){var u=t.current,c=Ko(u);Wo(l,\"@ant-design-icons\",{prepend:!i,csp:o,attachTo:c})},[])};var ji=[\"icon\",\"className\",\"onClick\",\"style\",\"primaryColor\",\"secondaryColor\"],Ft={primaryColor:\"#333\",secondaryColor:\"#E6E6E6\",calculated:!1};function Ui(e){var t=e.primaryColor,n=e.secondaryColor;Ft.primaryColor=t,Ft.secondaryColor=n||ar(t),Ft.calculated=!!n}function Yi(){return xe({},Ft)}var sn=function(t){var n=t.icon,o=t.className,a=t.onClick,i=t.style,l=t.primaryColor,u=t.secondaryColor,c=Qt(t,ji),f=ta.useRef(),m=Ft;if(l&&(m={primaryColor:l,secondaryColor:u||ar(l)}),ea(f),Ro(or(n),\"icon should be icon definiton, but got \".concat(n)),!or(n))return null;var d=n;return d&&typeof d.icon==\"function\"&&(d=xe(xe({},d),{},{icon:d.icon(m.primaryColor,m.secondaryColor)})),on(d.icon,\"svg-\".concat(d.name),xe(xe({className:o,onClick:a,style:i,\"data-icon\":d.name,width:\"1em\",height:\"1em\",fill:\"currentColor\",\"aria-hidden\":\"true\"},c),{},{ref:f}))};sn.displayName=\"IconReact\";sn.getTwoToneColors=Yi;sn.setTwoToneColors=Ui;var Et=sn;function ir(e){var t=an(e),n=Jt(t,2),o=n[0],a=n[1];return Et.setTwoToneColors({primaryColor:o,secondaryColor:a})}function na(){var e=Et.getTwoToneColors();return e.calculated?[e.primaryColor,e.secondaryColor]:e.primaryColor}var Wi=[\"className\",\"icon\",\"spin\",\"rotate\",\"tabIndex\",\"onClick\",\"twoToneColor\"];ir(nn.primary);var ln=Ke.forwardRef(function(e,t){var n=e.className,o=e.icon,a=e.spin,i=e.rotate,l=e.tabIndex,u=e.onClick,c=e.twoToneColor,f=Qt(e,Wi),m=Ke.useContext(Zt),d=m.prefixCls,g=d===void 0?\"anticon\":d,p=m.rootClassName,w=(0,ra.default)(p,g,oe(oe({},\"\".concat(g,\"-\").concat(o.name),!!o.name),\"\".concat(g,\"-spin\"),!!a||o.name===\"loading\"),n),v=l;v===void 0&&u&&(v=-1);var S=i?{msTransform:\"rotate(\".concat(i,\"deg)\"),transform:\"rotate(\".concat(i,\"deg)\")}:void 0,E=an(c),y=Jt(E,2),I=y[0],A=y[1];return Ke.createElement(\"span\",Z({role:\"img\",\"aria-label\":o.name},f,{ref:t,tabIndex:v,onClick:u,className:w}),Ke.createElement(Et,{icon:o,primaryColor:I,secondaryColor:A,style:S}))});ln.displayName=\"AntdIcon\";ln.getTwoToneColor=na;ln.setTwoToneColor=ir;var Q=ln;var dn=K(ee());var Xi={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\"},oa=Xi;var Ki=function(t,n){return dn.createElement(Q,Z({},t,{ref:n,icon:oa}))},Zi=dn.forwardRef(Ki),un=Zi;var cn=K(ee());var Ji={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\"},aa=Ji;var Qi=function(t,n){return cn.createElement(Q,Z({},t,{ref:n,icon:aa}))},Ri=cn.forwardRef(Qi),sr=Ri;var fn=K(ee());var es={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\"},ia=es;var ts=function(t,n){return fn.createElement(Q,Z({},t,{ref:n,icon:ia}))},ns=fn.forwardRef(ts),ft=ns;var pn=K(ee());var rs={icon:{tag:\"svg\",attrs:{\"fill-rule\":\"evenodd\",viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M880 912H144c-17.7 0-32-14.3-32-32V144c0-17.7 14.3-32 32-32h360c4.4 0 8 3.6 8 8v56c0 4.4-3.6 8-8 8H184v656h656V520c0-4.4 3.6-8 8-8h56c4.4 0 8 3.6 8 8v360c0 17.7-14.3 32-32 32zM770.87 199.13l-52.2-52.2a8.01 8.01 0 014.7-13.6l179.4-21c5.1-.6 9.5 3.7 8.9 8.9l-21 179.4c-.8 6.6-8.9 9.4-13.6 4.7l-52.4-52.4-256.2 256.2a8.03 8.03 0 01-11.3 0l-42.4-42.4a8.03 8.03 0 010-11.3l256.1-256.3z\"}}]},name:\"export\",theme:\"outlined\"},sa=rs;var os=function(t,n){return pn.createElement(Q,Z({},t,{ref:n,icon:sa}))},as=pn.forwardRef(os),lr=as;var mn=K(ee());var is={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M300 276.5a56 56 0 1056-97 56 56 0 00-56 97zm0 284a56 56 0 1056-97 56 56 0 00-56 97zM640 228a56 56 0 10112 0 56 56 0 00-112 0zm0 284a56 56 0 10112 0 56 56 0 00-112 0zM300 844.5a56 56 0 1056-97 56 56 0 00-56 97zM640 796a56 56 0 10112 0 56 56 0 00-112 0z\"}}]},name:\"holder\",theme:\"outlined\"},la=is;var ss=function(t,n){return mn.createElement(Q,Z({},t,{ref:n,icon:la}))},ls=mn.forwardRef(ss),dr=ls;var gn=K(ee());var ds={icon:{tag:\"svg\",attrs:{\"fill-rule\":\"evenodd\",viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M880 912H144c-17.7 0-32-14.3-32-32V144c0-17.7 14.3-32 32-32h360c4.4 0 8 3.6 8 8v56c0 4.4-3.6 8-8 8H184v656h656V520c0-4.4 3.6-8 8-8h56c4.4 0 8 3.6 8 8v360c0 17.7-14.3 32-32 32zM653.3 424.6l52.2 52.2a8.01 8.01 0 01-4.7 13.6l-179.4 21c-5.1.6-9.5-3.7-8.9-8.9l21-179.4c.8-6.6 8.9-9.4 13.6-4.7l52.4 52.4 256.2-256.2c3.1-3.1 8.2-3.1 11.3 0l42.4 42.4c3.1 3.1 3.1 8.2 0 11.3L653.3 424.6z\"}}]},name:\"import\",theme:\"outlined\"},da=ds;var us=function(t,n){return gn.createElement(Q,Z({},t,{ref:n,icon:da}))},cs=gn.forwardRef(us),Ze=cs;var hn=K(ee());var fs={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\"},ua=fs;var ps=function(t,n){return hn.createElement(Q,Z({},t,{ref:n,icon:ua}))},ms=hn.forwardRef(ps),ur=ms;var xn=K(ee());var gs={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\"},ca=gs;var hs=function(t,n){return xn.createElement(Q,Z({},t,{ref:n,icon:ca}))},xs=xn.forwardRef(hs),Je=xs;var bn=K(ee());var bs={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\"},fa=bs;var ys=function(t,n){return bn.createElement(Q,Z({},t,{ref:n,icon:fa}))},vs=bn.forwardRef(ys),be=vs;var yn=K(ee());var ws={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\"},pa=ws;var Cs=function(t,n){return yn.createElement(Q,Z({},t,{ref:n,icon:pa}))},Ss=yn.forwardRef(Cs),vn=Ss;var wn=K(ee());var Os={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\"},ma=Os;var ks=function(t,n){return wn.createElement(Q,Z({},t,{ref:n,icon:ma}))},Ts=wn.forwardRef(ks),cr=Ts;var h=K(ee()),rt=K(Xn());var te=K(ee());function ha(){for(var e=arguments.length,t=new Array(e),n=0;no=>{t.forEach(a=>a(o))},t)}var It=typeof window<\"u\"&&typeof window.document<\"u\"&&typeof window.document.createElement<\"u\";function Qe(e){let t=Object.prototype.toString.call(e);return t===\"[object Window]\"||t===\"[object global]\"}function Cn(e){return\"nodeType\"in e}function pe(e){var t,n;return e?Qe(e)?e:Cn(e)&&(t=(n=e.ownerDocument)==null?void 0:n.defaultView)!=null?t:window:window}function Sn(e){let{Document:t}=pe(e);return e instanceof t}function pt(e){return Qe(e)?!1:e instanceof pe(e).HTMLElement}function pr(e){return e instanceof pe(e).SVGElement}function Re(e){return e?Qe(e)?e.document:Cn(e)?Sn(e)?e:pt(e)||pr(e)?e.ownerDocument:document:document:document}var ye=It?te.useLayoutEffect:te.useEffect;function On(e){let t=(0,te.useRef)(e);return ye(()=>{t.current=e}),(0,te.useCallback)(function(){for(var n=arguments.length,o=new Array(n),a=0;a{e.current=setInterval(o,a)},[]),n=(0,te.useCallback)(()=>{e.current!==null&&(clearInterval(e.current),e.current=null)},[]);return[t,n]}function mt(e,t){t===void 0&&(t=[e]);let n=(0,te.useRef)(e);return ye(()=>{n.current!==e&&(n.current=e)},t),n}function gt(e,t){let n=(0,te.useRef)();return(0,te.useMemo)(()=>{let o=e(n.current);return n.current=o,o},[...t])}function Nt(e){let t=On(e),n=(0,te.useRef)(null),o=(0,te.useCallback)(a=>{a!==n.current&&(t==null||t(a,n.current)),n.current=a},[]);return[n,o]}function kn(e){let t=(0,te.useRef)();return(0,te.useEffect)(()=>{t.current=e},[e]),t.current}var fr={};function et(e,t){return(0,te.useMemo)(()=>{if(t)return t;let n=fr[e]==null?0:fr[e]+1;return fr[e]=n,e+\"-\"+n},[e,t])}function ba(e){return function(t){for(var n=arguments.length,o=new Array(n>1?n-1:0),a=1;a{let u=Object.entries(l);for(let[c,f]of u){let m=i[c];m!=null&&(i[c]=m+e*f)}return i},O({},t))}}var tt=ba(1),ht=ba(-1);function Fs(e){return\"clientX\"in e&&\"clientY\"in e}function Dt(e){if(!e)return!1;let{KeyboardEvent:t}=pe(e.target);return t&&e instanceof t}function Es(e){if(!e)return!1;let{TouchEvent:t}=pe(e.target);return t&&e instanceof t}function At(e){if(Es(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 Fs(e)?{x:e.clientX,y:e.clientY}:null}var Ve=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[Ve.Translate.toString(e),Ve.Scale.toString(e)].join(\" \")}},Transition:{toString(e){let{property:t,duration:n,easing:o}=e;return t+\" \"+n+\"ms \"+o}}}),ga=\"a,frame,iframe,input:not([type=hidden]):not(:disabled),select:not(:disabled),textarea:not(:disabled),button:not(:disabled),*[tabindex]\";function ya(e){return e.matches(ga)?e:e.querySelector(ga)}var nt=K(ee()),Is={display:\"none\"};function va(e){let{id:t,value:n}=e;return nt.default.createElement(\"div\",{id:t,style:Is},n)}function wa(e){let{id:t,announcement:n,ariaLiveType:o=\"assertive\"}=e,a={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 nt.default.createElement(\"div\",{id:t,style:a,role:\"status\",\"aria-live\":o,\"aria-atomic\":!0},n)}function Ca(){let[e,t]=(0,nt.useState)(\"\");return{announce:(0,nt.useCallback)(o=>{o!=null&&t(o)},[]),announcement:e}}var _a=(0,h.createContext)(null);function Ns(e){let t=(0,h.useContext)(_a);(0,h.useEffect)(()=>{if(!t)throw new Error(\"useDndMonitor must be used within a children of \");return t(e)},[e,t])}function Ds(){let[e]=(0,h.useState)(()=>new Set),t=(0,h.useCallback)(o=>(e.add(o),()=>e.delete(o)),[e]);return[(0,h.useCallback)(o=>{let{type:a,event:i}=o;e.forEach(l=>{var u;return(u=l[a])==null?void 0:u.call(l,i)})},[e]),t]}var As={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 \"},_s={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 Ps(e){let{announcements:t=_s,container:n,hiddenTextDescribedById:o,screenReaderInstructions:a=As}=e,{announce:i,announcement:l}=Ca(),u=et(\"DndLiveRegion\"),[c,f]=(0,h.useState)(!1);if((0,h.useEffect)(()=>{f(!0)},[]),Ns((0,h.useMemo)(()=>({onDragStart(d){let{active:g}=d;i(t.onDragStart({active:g}))},onDragMove(d){let{active:g,over:p}=d;t.onDragMove&&i(t.onDragMove({active:g,over:p}))},onDragOver(d){let{active:g,over:p}=d;i(t.onDragOver({active:g,over:p}))},onDragEnd(d){let{active:g,over:p}=d;i(t.onDragEnd({active:g,over:p}))},onDragCancel(d){let{active:g,over:p}=d;i(t.onDragCancel({active:g,over:p}))}}),[i,t])),!c)return null;let m=h.default.createElement(h.default.Fragment,null,h.default.createElement(va,{id:o,value:a.draggable}),h.default.createElement(wa,{id:u,announcement:l}));return n?(0,rt.createPortal)(m,n):m}var re;(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\"})(re||(re={}));function Fn(){}function Bt(e,t){return(0,h.useMemo)(()=>({sensor:e,options:t!=null?t:{}}),[e,t])}function wr(){for(var e=arguments.length,t=new Array(e),n=0;n[...t].filter(o=>o!=null),[...t])}var Te=Object.freeze({x:0,y:0});function Ms(e,t){let{data:{value:n}}=e,{data:{value:o}}=t;return o-n}function Pa(e,t){if(!e||e.length===0)return null;let[n]=e;return t?n[t]:n}function Ls(e,t){let n=Math.max(t.top,e.top),o=Math.max(t.left,e.left),a=Math.min(t.left+t.width,e.left+e.width),i=Math.min(t.top+t.height,e.top+e.height),l=a-o,u=i-n;if(o{let{collisionRect:t,droppableRects:n,droppableContainers:o}=e,a=[];for(let i of o){let{id:l}=i,u=n.get(l);if(u){let c=Ls(u,t);c>0&&a.push({id:l,data:{droppableContainer:i,value:c}})}}return a.sort(Ms)};function $s(e,t,n){return L(O({},e),{scaleX:t&&n?t.width/n.width:1,scaleY:t&&n?t.height/n.height:1})}function Ma(e,t){return e&&t?{x:e.left-t.left,y:e.top-t.top}:Te}function Hs(e){return function(n){for(var o=arguments.length,a=new Array(o>1?o-1:0),i=1;iL(O({},l),{top:l.top+e*u.y,bottom:l.bottom+e*u.y,left:l.left+e*u.x,right:l.right+e*u.x}),O({},n))}}var qs=Hs(1);function zs(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 Gs(e,t,n){let o=zs(t);if(!o)return e;let{scaleX:a,scaleY:i,x:l,y:u}=o,c=e.left-l-(1-a)*parseFloat(n),f=e.top-u-(1-i)*parseFloat(n.slice(n.indexOf(\" \")+1)),m=a?e.width/a:e.width,d=i?e.height/i:e.height;return{width:m,height:d,top:f,right:c+m,bottom:f+d,left:c}}var Vs={ignoreTransform:!1};function st(e,t){t===void 0&&(t=Vs);let n=e.getBoundingClientRect();if(t.ignoreTransform){let{transform:f,transformOrigin:m}=pe(e).getComputedStyle(e);f&&(n=Gs(n,f,m))}let{top:o,left:a,width:i,height:l,bottom:u,right:c}=n;return{top:o,left:a,width:i,height:l,bottom:u,right:c}}function Sa(e){return st(e,{ignoreTransform:!0})}function js(e){let t=e.innerWidth,n=e.innerHeight;return{top:0,left:0,right:t,bottom:n,width:t,height:n}}function Us(e,t){return t===void 0&&(t=pe(e).getComputedStyle(e)),t.position===\"fixed\"}function Ys(e,t){t===void 0&&(t=pe(e).getComputedStyle(e));let n=/(auto|scroll|overlay)/;return[\"overflow\",\"overflowX\",\"overflowY\"].some(a=>{let i=t[a];return typeof i==\"string\"?n.test(i):!1})}function Nn(e,t){let n=[];function o(a){if(t!=null&&n.length>=t||!a)return n;if(Sn(a)&&a.scrollingElement!=null&&!n.includes(a.scrollingElement))return n.push(a.scrollingElement),n;if(!pt(a)||pr(a)||n.includes(a))return n;let i=pe(e).getComputedStyle(a);return a!==e&&Ys(a,i)&&n.push(a),Us(a,i)?n:o(a.parentNode)}return e?o(e):n}function La(e){let[t]=Nn(e,1);return t!=null?t:null}function mr(e){return!It||!e?null:Qe(e)?e:Cn(e)?Sn(e)||e===Re(e).scrollingElement?window:pt(e)?e:null:null}function Ba(e){return Qe(e)?e.scrollX:e.scrollLeft}function $a(e){return Qe(e)?e.scrollY:e.scrollTop}function xr(e){return{x:Ba(e),y:$a(e)}}var ie;(function(e){e[e.Forward=1]=\"Forward\",e[e.Backward=-1]=\"Backward\"})(ie||(ie={}));function Ha(e){return!It||!e?!1:e===document.scrollingElement}function qa(e){let t={x:0,y:0},n=Ha(e)?{height:window.innerHeight,width:window.innerWidth}:{height:e.clientHeight,width:e.clientWidth},o={x:e.scrollWidth-n.width,y:e.scrollHeight-n.height},a=e.scrollTop<=t.y,i=e.scrollLeft<=t.x,l=e.scrollTop>=o.y,u=e.scrollLeft>=o.x;return{isTop:a,isLeft:i,isBottom:l,isRight:u,maxScroll:o,minScroll:t}}var Ws={x:.2,y:.2};function Xs(e,t,n,o,a){let{top:i,left:l,right:u,bottom:c}=n;o===void 0&&(o=10),a===void 0&&(a=Ws);let{isTop:f,isBottom:m,isLeft:d,isRight:g}=qa(e),p={x:0,y:0},w={x:0,y:0},v={height:t.height*a.y,width:t.width*a.x};return!f&&i<=t.top+v.height?(p.y=ie.Backward,w.y=o*Math.abs((t.top+v.height-i)/v.height)):!m&&c>=t.bottom-v.height&&(p.y=ie.Forward,w.y=o*Math.abs((t.bottom-v.height-c)/v.height)),!g&&u>=t.right-v.width?(p.x=ie.Forward,w.x=o*Math.abs((t.right-v.width-u)/v.width)):!d&&l<=t.left+v.width&&(p.x=ie.Backward,w.x=o*Math.abs((t.left+v.width-l)/v.width)),{direction:p,speed:w}}function Ks(e){if(e===document.scrollingElement){let{innerWidth:i,innerHeight:l}=window;return{top:0,left:0,right:i,bottom:l,width:i,height:l}}let{top:t,left:n,right:o,bottom:a}=e.getBoundingClientRect();return{top:t,left:n,right:o,bottom:a,width:e.clientWidth,height:e.clientHeight}}function za(e){return e.reduce((t,n)=>tt(t,xr(n)),Te)}function Zs(e){return e.reduce((t,n)=>t+Ba(n),0)}function Js(e){return e.reduce((t,n)=>t+$a(n),0)}function Qs(e,t){if(t===void 0&&(t=st),!e)return;let{top:n,left:o,bottom:a,right:i}=t(e);La(e)&&(a<=0||i<=0||n>=window.innerHeight||o>=window.innerWidth)&&e.scrollIntoView({block:\"center\",inline:\"center\"})}var Rs=[[\"x\",[\"left\",\"right\"],Zs],[\"y\",[\"top\",\"bottom\"],Js]],Pt=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 o=Nn(n),a=za(o);this.rect=O({},t),this.width=t.width,this.height=t.height;for(let[i,l,u]of Rs)for(let c of l)Object.defineProperty(this,c,{get:()=>{let f=u(o),m=a[i]-f;return this.rect[c]+m},enumerable:!0});Object.defineProperty(this,\"rect\",{enumerable:!1})}},ot=class{constructor(t){this.target=void 0,this.listeners=[],this.removeAll=()=>{this.listeners.forEach(n=>{var o;return(o=this.target)==null?void 0:o.removeEventListener(...n)})},this.target=t}add(t,n,o){var a;(a=this.target)==null||a.addEventListener(t,n,o),this.listeners.push([t,n,o])}};function el(e){let{EventTarget:t}=pe(e);return e instanceof t?e:Re(e)}function gr(e,t){let n=Math.abs(e.x),o=Math.abs(e.y);return typeof t==\"number\"?Math.sqrt(n**2+o**2)>t:\"x\"in t&&\"y\"in t?n>t.x&&o>t.y:\"x\"in t?n>t.x:\"y\"in t?o>t.y:!1}var ve;(function(e){e.Click=\"click\",e.DragStart=\"dragstart\",e.Keydown=\"keydown\",e.ContextMenu=\"contextmenu\",e.Resize=\"resize\",e.SelectionChange=\"selectionchange\",e.VisibilityChange=\"visibilitychange\"})(ve||(ve={}));function Oa(e){e.preventDefault()}function tl(e){e.stopPropagation()}var W;(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\"})(W||(W={}));var Ga={start:[W.Space,W.Enter],cancel:[W.Esc],end:[W.Space,W.Enter,W.Tab]},nl=(e,t)=>{let{currentCoordinates:n}=t;switch(e.code){case W.Right:return L(O({},n),{x:n.x+25});case W.Left:return L(O({},n),{x:n.x-25});case W.Down:return L(O({},n),{y:n.y+25});case W.Up:return L(O({},n),{y:n.y-25})}},En=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 ot(Re(n)),this.windowListeners=new ot(pe(n)),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleCancel=this.handleCancel.bind(this),this.attach()}attach(){this.handleStart(),this.windowListeners.add(ve.Resize,this.handleCancel),this.windowListeners.add(ve.VisibilityChange,this.handleCancel),setTimeout(()=>this.listeners.add(ve.Keydown,this.handleKeyDown))}handleStart(){let{activeNode:t,onStart:n}=this.props,o=t.node.current;o&&Qs(o),n(Te)}handleKeyDown(t){if(Dt(t)){let{active:n,context:o,options:a}=this.props,{keyboardCodes:i=Ga,coordinateGetter:l=nl,scrollBehavior:u=\"smooth\"}=a,{code:c}=t;if(i.end.includes(c)){this.handleEnd(t);return}if(i.cancel.includes(c)){this.handleCancel(t);return}let{collisionRect:f}=o.current,m=f?{x:f.left,y:f.top}:Te;this.referenceCoordinates||(this.referenceCoordinates=m);let d=l(t,{active:n,context:o.current,currentCoordinates:m});if(d){let g=ht(d,m),p={x:0,y:0},{scrollableAncestors:w}=o.current;for(let v of w){let S=t.code,{isTop:E,isRight:y,isLeft:I,isBottom:A,maxScroll:B,minScroll:V}=qa(v),H=Ks(v),z={x:Math.min(S===W.Right?H.right-H.width/2:H.right,Math.max(S===W.Right?H.left:H.left+H.width/2,d.x)),y:Math.min(S===W.Down?H.bottom-H.height/2:H.bottom,Math.max(S===W.Down?H.top:H.top+H.height/2,d.y))},x=S===W.Right&&!y||S===W.Left&&!I,C=S===W.Down&&!A||S===W.Up&&!E;if(x&&z.x!==d.x){let M=v.scrollLeft+g.x,q=S===W.Right&&M<=B.x||S===W.Left&&M>=V.x;if(q&&!g.y){v.scrollTo({left:M,behavior:u});return}q?p.x=v.scrollLeft-M:p.x=S===W.Right?v.scrollLeft-B.x:v.scrollLeft-V.x,p.x&&v.scrollBy({left:-p.x,behavior:u});break}else if(C&&z.y!==d.y){let M=v.scrollTop+g.y,q=S===W.Down&&M<=B.y||S===W.Up&&M>=V.y;if(q&&!g.x){v.scrollTo({top:M,behavior:u});return}q?p.y=v.scrollTop-M:p.y=S===W.Down?v.scrollTop-B.y:v.scrollTop-V.y,p.y&&v.scrollBy({top:-p.y,behavior:u});break}}this.handleMove(t,tt(ht(d,this.referenceCoordinates),p))}}}handleMove(t,n){let{onMove:o}=this.props;t.preventDefault(),o(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()}};En.activators=[{eventName:\"onKeyDown\",handler:(e,t,n)=>{let{keyboardCodes:o=Ga,onActivation:a}=t,{active:i}=n,{code:l}=e.nativeEvent;if(o.start.includes(l)){let u=i.activatorNode.current;return u&&e.target!==u?!1:(e.preventDefault(),a==null||a({event:e.nativeEvent}),!0)}return!1}}];function ka(e){return!!(e&&\"distance\"in e)}function Ta(e){return!!(e&&\"delay\"in e)}var Mt=class{constructor(t,n,o){var a;o===void 0&&(o=el(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:i}=t,{target:l}=i;this.props=t,this.events=n,this.document=Re(l),this.documentListeners=new ot(this.document),this.listeners=new ot(o),this.windowListeners=new ot(pe(l)),this.initialCoordinates=(a=At(i))!=null?a:Te,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:o}}}=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(ve.Resize,this.handleCancel),this.windowListeners.add(ve.DragStart,Oa),this.windowListeners.add(ve.VisibilityChange,this.handleCancel),this.windowListeners.add(ve.ContextMenu,Oa),this.documentListeners.add(ve.Keydown,this.handleKeydown),n){if(o!=null&&o({event:this.props.event,activeNode:this.props.activeNode,options:this.props.options}))return this.handleStart();if(Ta(n)){this.timeoutId=setTimeout(this.handleStart,n.delay),this.handlePending(n);return}if(ka(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:o,onPending:a}=this.props;a(o,t,this.initialCoordinates,n)}handleStart(){let{initialCoordinates:t}=this,{onStart:n}=this.props;t&&(this.activated=!0,this.documentListeners.add(ve.Click,tl,{capture:!0}),this.removeTextSelection(),this.documentListeners.add(ve.SelectionChange,this.removeTextSelection),n(t))}handleMove(t){var n;let{activated:o,initialCoordinates:a,props:i}=this,{onMove:l,options:{activationConstraint:u}}=i;if(!a)return;let c=(n=At(t))!=null?n:Te,f=ht(a,c);if(!o&&u){if(ka(u)){if(u.tolerance!=null&&gr(f,u.tolerance))return this.handleCancel();if(gr(f,u.distance))return this.handleStart()}if(Ta(u)&&gr(f,u.tolerance))return this.handleCancel();this.handlePending(u,f);return}t.cancelable&&t.preventDefault(),l(c)}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===W.Esc&&this.handleCancel()}removeTextSelection(){var t;(t=this.document.getSelection())==null||t.removeAllRanges()}},rl={cancel:{name:\"pointercancel\"},move:{name:\"pointermove\"},end:{name:\"pointerup\"}},it=class extends Mt{constructor(t){let{event:n}=t,o=Re(n.target);super(t,rl,o)}};it.activators=[{eventName:\"onPointerDown\",handler:(e,t)=>{let{nativeEvent:n}=e,{onActivation:o}=t;return!n.isPrimary||n.button!==0?!1:(o==null||o({event:n}),!0)}}];var ol={move:{name:\"mousemove\"},end:{name:\"mouseup\"}},br;(function(e){e[e.RightClick=2]=\"RightClick\"})(br||(br={}));var yr=class extends Mt{constructor(t){super(t,ol,Re(t.event.target))}};yr.activators=[{eventName:\"onMouseDown\",handler:(e,t)=>{let{nativeEvent:n}=e,{onActivation:o}=t;return n.button===br.RightClick?!1:(o==null||o({event:n}),!0)}}];var hr={cancel:{name:\"touchcancel\"},move:{name:\"touchmove\"},end:{name:\"touchend\"}},xt=class extends Mt{constructor(t){super(t,hr)}static setup(){return window.addEventListener(hr.move.name,t,{capture:!1,passive:!1}),function(){window.removeEventListener(hr.move.name,t)};function t(){}}};xt.activators=[{eventName:\"onTouchStart\",handler:(e,t)=>{let{nativeEvent:n}=e,{onActivation:o}=t,{touches:a}=n;return a.length>1?!1:(o==null||o({event:n}),!0)}}];var _t;(function(e){e[e.Pointer=0]=\"Pointer\",e[e.DraggableRect=1]=\"DraggableRect\"})(_t||(_t={}));var In;(function(e){e[e.TreeOrder=0]=\"TreeOrder\",e[e.ReversedTreeOrder=1]=\"ReversedTreeOrder\"})(In||(In={}));function al(e){let{acceleration:t,activator:n=_t.Pointer,canScroll:o,draggingRect:a,enabled:i,interval:l=5,order:u=In.TreeOrder,pointerCoordinates:c,scrollableAncestors:f,scrollableAncestorRects:m,delta:d,threshold:g}=e,p=sl({delta:d,disabled:!i}),[w,v]=xa(),S=(0,h.useRef)({x:0,y:0}),E=(0,h.useRef)({x:0,y:0}),y=(0,h.useMemo)(()=>{switch(n){case _t.Pointer:return c?{top:c.y,bottom:c.y,left:c.x,right:c.x}:null;case _t.DraggableRect:return a}},[n,a,c]),I=(0,h.useRef)(null),A=(0,h.useCallback)(()=>{let V=I.current;if(!V)return;let H=S.current.x*E.current.x,z=S.current.y*E.current.y;V.scrollBy(H,z)},[]),B=(0,h.useMemo)(()=>u===In.TreeOrder?[...f].reverse():f,[u,f]);(0,h.useEffect)(()=>{if(!i||!f.length||!y){v();return}for(let V of B){if((o==null?void 0:o(V))===!1)continue;let H=f.indexOf(V),z=m[H];if(!z)continue;let{direction:x,speed:C}=Xs(V,z,y,t,g);for(let M of[\"x\",\"y\"])p[M][x[M]]||(C[M]=0,x[M]=0);if(C.x>0||C.y>0){v(),I.current=V,w(A,l),S.current=C,E.current=x;return}}S.current={x:0,y:0},E.current={x:0,y:0},v()},[t,A,o,v,i,l,JSON.stringify(y),JSON.stringify(p),w,f,B,m,JSON.stringify(g)])}var il={x:{[ie.Backward]:!1,[ie.Forward]:!1},y:{[ie.Backward]:!1,[ie.Forward]:!1}};function sl(e){let{delta:t,disabled:n}=e,o=kn(t);return gt(a=>{if(n||!o||!a)return il;let i={x:Math.sign(t.x-o.x),y:Math.sign(t.y-o.y)};return{x:{[ie.Backward]:a.x[ie.Backward]||i.x===-1,[ie.Forward]:a.x[ie.Forward]||i.x===1},y:{[ie.Backward]:a.y[ie.Backward]||i.y===-1,[ie.Forward]:a.y[ie.Forward]||i.y===1}}},[n,t,o])}function ll(e,t){let n=t!=null?e.get(t):void 0,o=n?n.node.current:null;return gt(a=>{var i;return t==null?null:(i=o!=null?o:a)!=null?i:null},[o,t])}function dl(e,t){return(0,h.useMemo)(()=>e.reduce((n,o)=>{let{sensor:a}=o,i=a.activators.map(l=>({eventName:l.eventName,handler:t(l.handler,o)}));return[...n,...i]},[]),[e,t])}var Lt;(function(e){e[e.Always=0]=\"Always\",e[e.BeforeDragging=1]=\"BeforeDragging\",e[e.WhileDragging=2]=\"WhileDragging\"})(Lt||(Lt={}));var vr;(function(e){e.Optimized=\"optimized\"})(vr||(vr={}));var Fa=new Map;function ul(e,t){let{dragging:n,dependencies:o,config:a}=t,[i,l]=(0,h.useState)(null),{frequency:u,measure:c,strategy:f}=a,m=(0,h.useRef)(e),d=S(),g=mt(d),p=(0,h.useCallback)(function(E){E===void 0&&(E=[]),!g.current&&l(y=>y===null?E:y.concat(E.filter(I=>!y.includes(I))))},[g]),w=(0,h.useRef)(null),v=gt(E=>{if(d&&!n)return Fa;if(!E||E===Fa||m.current!==e||i!=null){let y=new Map;for(let I of e){if(!I)continue;if(i&&i.length>0&&!i.includes(I.id)&&I.rect.current){y.set(I.id,I.rect.current);continue}let A=I.node.current,B=A?new Pt(c(A),A):null;I.rect.current=B,B&&y.set(I.id,B)}return y}return E},[e,i,n,d,c]);return(0,h.useEffect)(()=>{m.current=e},[e]),(0,h.useEffect)(()=>{d||p()},[n,d]),(0,h.useEffect)(()=>{i&&i.length>0&&l(null)},[JSON.stringify(i)]),(0,h.useEffect)(()=>{d||typeof u!=\"number\"||w.current!==null||(w.current=setTimeout(()=>{p(),w.current=null},u))},[u,d,p,...o]),{droppableRects:v,measureDroppableContainers:p,measuringScheduled:i!=null};function S(){switch(f){case Lt.Always:return!1;case Lt.BeforeDragging:return n;default:return!n}}}function Va(e,t){return gt(n=>e?n||(typeof t==\"function\"?t(e):e):null,[t,e])}function cl(e,t){return Va(e,t)}function fl(e){let{callback:t,disabled:n}=e,o=On(t),a=(0,h.useMemo)(()=>{if(n||typeof window>\"u\"||typeof window.MutationObserver>\"u\")return;let{MutationObserver:i}=window;return new i(o)},[o,n]);return(0,h.useEffect)(()=>()=>a==null?void 0:a.disconnect(),[a]),a}function Dn(e){let{callback:t,disabled:n}=e,o=On(t),a=(0,h.useMemo)(()=>{if(n||typeof window>\"u\"||typeof window.ResizeObserver>\"u\")return;let{ResizeObserver:i}=window;return new i(o)},[n]);return(0,h.useEffect)(()=>()=>a==null?void 0:a.disconnect(),[a]),a}function pl(e){return new Pt(st(e),e)}function Ea(e,t,n){t===void 0&&(t=pl);let[o,a]=(0,h.useState)(null);function i(){a(c=>{if(!e)return null;if(e.isConnected===!1){var f;return(f=c!=null?c:n)!=null?f:null}let m=t(e);return JSON.stringify(c)===JSON.stringify(m)?c:m})}let l=fl({callback(c){if(e)for(let f of c){let{type:m,target:d}=f;if(m===\"childList\"&&d instanceof HTMLElement&&d.contains(e)){i();break}}}}),u=Dn({callback:i});return ye(()=>{i(),e?(u==null||u.observe(e),l==null||l.observe(document.body,{childList:!0,subtree:!0})):(u==null||u.disconnect(),l==null||l.disconnect())},[e]),o}function ml(e){let t=Va(e);return Ma(e,t)}var Ia=[];function gl(e){let t=(0,h.useRef)(e),n=gt(o=>e?o&&o!==Ia&&e&&t.current&&e.parentNode===t.current.parentNode?o:Nn(e):Ia,[e]);return(0,h.useEffect)(()=>{t.current=e},[e]),n}function hl(e){let[t,n]=(0,h.useState)(null),o=(0,h.useRef)(e),a=(0,h.useCallback)(i=>{let l=mr(i.target);l&&n(u=>u?(u.set(l,xr(l)),new Map(u)):null)},[]);return(0,h.useEffect)(()=>{let i=o.current;if(e!==i){l(i);let u=e.map(c=>{let f=mr(c);return f?(f.addEventListener(\"scroll\",a,{passive:!0}),[f,xr(f)]):null}).filter(c=>c!=null);n(u.length?new Map(u):null),o.current=e}return()=>{l(e),l(i)};function l(u){u.forEach(c=>{let f=mr(c);f==null||f.removeEventListener(\"scroll\",a)})}},[a,e]),(0,h.useMemo)(()=>e.length?t?Array.from(t.values()).reduce((i,l)=>tt(i,l),Te):za(e):Te,[e,t])}function Na(e,t){t===void 0&&(t=[]);let n=(0,h.useRef)(null);return(0,h.useEffect)(()=>{n.current=null},t),(0,h.useEffect)(()=>{let o=e!==Te;o&&!n.current&&(n.current=e),!o&&n.current&&(n.current=null)},[e]),n.current?ht(e,n.current):Te}function xl(e){(0,h.useEffect)(()=>{if(!It)return;let t=e.map(n=>{let{sensor:o}=n;return o.setup==null?void 0:o.setup()});return()=>{for(let n of t)n==null||n()}},e.map(t=>{let{sensor:n}=t;return n}))}function bl(e,t){return(0,h.useMemo)(()=>e.reduce((n,o)=>{let{eventName:a,handler:i}=o;return n[a]=l=>{i(l,t)},n},{}),[e,t])}function ja(e){return(0,h.useMemo)(()=>e?js(e):null,[e])}var Da=[];function yl(e,t){t===void 0&&(t=st);let[n]=e,o=ja(n?pe(n):null),[a,i]=(0,h.useState)(Da);function l(){i(()=>e.length?e.map(c=>Ha(c)?o:new Pt(t(c),c)):Da)}let u=Dn({callback:l});return ye(()=>{u==null||u.disconnect(),l(),e.forEach(c=>u==null?void 0:u.observe(c))},[e]),a}function vl(e){if(!e)return null;if(e.children.length>1)return e;let t=e.children[0];return pt(t)?t:e}function wl(e){let{measure:t}=e,[n,o]=(0,h.useState)(null),a=(0,h.useCallback)(f=>{for(let{target:m}of f)if(pt(m)){o(d=>{let g=t(m);return d?L(O({},d),{width:g.width,height:g.height}):g});break}},[t]),i=Dn({callback:a}),l=(0,h.useCallback)(f=>{let m=vl(f);i==null||i.disconnect(),m&&(i==null||i.observe(m)),o(m?t(m):null)},[t,i]),[u,c]=Nt(l);return(0,h.useMemo)(()=>({nodeRef:u,rect:n,setRef:c}),[n,u,c])}var Cl=[{sensor:it,options:{}},{sensor:En,options:{}}],Sl={current:{}},Tn={draggable:{measure:Sa},droppable:{measure:Sa,strategy:Lt.WhileDragging,frequency:vr.Optimized},dragOverlay:{measure:st}},at=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,o;return(n=(o=this.get(t))==null?void 0:o.node.current)!=null?n:void 0}},Ol={activatorEvent:null,active:null,activeNode:null,activeNodeRect:null,collisions:null,containerNodeRect:null,draggableNodes:new Map,droppableRects:new Map,droppableContainers:new at,over:null,dragOverlay:{nodeRef:{current:null},rect:null,setRef:Fn},scrollableAncestors:[],scrollableAncestorRects:[],measuringConfiguration:Tn,measureDroppableContainers:Fn,windowRect:null,measuringScheduled:!1},kl={activatorEvent:null,activators:[],active:null,activeNodeRect:null,ariaDescribedById:{draggable:\"\"},dispatch:Fn,draggableNodes:new Map,over:null,measureDroppableContainers:Fn},An=(0,h.createContext)(kl),Ua=(0,h.createContext)(Ol);function Tl(){return{draggable:{active:null,initialCoordinates:{x:0,y:0},nodes:new Map,translate:{x:0,y:0}},droppable:{containers:new at}}}function Fl(e,t){switch(t.type){case re.DragStart:return L(O({},e),{draggable:L(O({},e.draggable),{initialCoordinates:t.initialCoordinates,active:t.active})});case re.DragMove:return e.draggable.active==null?e:L(O({},e),{draggable:L(O({},e.draggable),{translate:{x:t.coordinates.x-e.draggable.initialCoordinates.x,y:t.coordinates.y-e.draggable.initialCoordinates.y}})});case re.DragEnd:case re.DragCancel:return L(O({},e),{draggable:L(O({},e.draggable),{active:null,initialCoordinates:{x:0,y:0},translate:{x:0,y:0}})});case re.RegisterDroppable:{let{element:n}=t,{id:o}=n,a=new at(e.droppable.containers);return a.set(o,n),L(O({},e),{droppable:L(O({},e.droppable),{containers:a})})}case re.SetDroppableDisabled:{let{id:n,key:o,disabled:a}=t,i=e.droppable.containers.get(n);if(!i||o!==i.key)return e;let l=new at(e.droppable.containers);return l.set(n,L(O({},i),{disabled:a})),L(O({},e),{droppable:L(O({},e.droppable),{containers:l})})}case re.UnregisterDroppable:{let{id:n,key:o}=t,a=e.droppable.containers.get(n);if(!a||o!==a.key)return e;let i=new at(e.droppable.containers);return i.delete(n),L(O({},e),{droppable:L(O({},e.droppable),{containers:i})})}default:return e}}function El(e){let{disabled:t}=e,{active:n,activatorEvent:o,draggableNodes:a}=(0,h.useContext)(An),i=kn(o),l=kn(n==null?void 0:n.id);return(0,h.useEffect)(()=>{if(!t&&!o&&i&&l!=null){if(!Dt(i)||document.activeElement===i.target)return;let u=a.get(l);if(!u)return;let{activatorNode:c,node:f}=u;if(!c.current&&!f.current)return;requestAnimationFrame(()=>{for(let m of[c.current,f.current]){if(!m)continue;let d=ya(m);if(d){d.focus();break}}})}},[o,t,a,l,i]),null}function Il(e,t){let a=t,{transform:n}=a,o=Wn(a,[\"transform\"]);return e!=null&&e.length?e.reduce((i,l)=>l(O({transform:i},o)),n):n}function Nl(e){return(0,h.useMemo)(()=>({draggable:O(O({},Tn.draggable),e==null?void 0:e.draggable),droppable:O(O({},Tn.droppable),e==null?void 0:e.droppable),dragOverlay:O(O({},Tn.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 Dl(e){let{activeNode:t,measure:n,initialRect:o,config:a=!0}=e,i=(0,h.useRef)(!1),{x:l,y:u}=typeof a==\"boolean\"?{x:a,y:a}:a;ye(()=>{if(!l&&!u||!t){i.current=!1;return}if(i.current||!o)return;let f=t==null?void 0:t.node.current;if(!f||f.isConnected===!1)return;let m=n(f),d=Ma(m,o);if(l||(d.x=0),u||(d.y=0),i.current=!0,Math.abs(d.x)>0||Math.abs(d.y)>0){let g=La(f);g&&g.scrollBy({top:d.y,left:d.x})}},[t,l,u,o,n])}var Ya=(0,h.createContext)(L(O({},Te),{scaleX:1,scaleY:1})),je;(function(e){e[e.Uninitialized=0]=\"Uninitialized\",e[e.Initializing=1]=\"Initializing\",e[e.Initialized=2]=\"Initialized\"})(je||(je={}));var Cr=(0,h.memo)(function(t){var n,o,a,i;let k=t,{id:l,accessibility:u,autoScroll:c=!0,children:f,sensors:m=Cl,collisionDetection:d=Bs,measuring:g,modifiers:p}=k,w=Wn(k,[\"id\",\"accessibility\",\"autoScroll\",\"children\",\"sensors\",\"collisionDetection\",\"measuring\",\"modifiers\"]),v=(0,h.useReducer)(Fl,void 0,Tl),[S,E]=v,[y,I]=Ds(),[A,B]=(0,h.useState)(je.Uninitialized),V=A===je.Initialized,{draggable:{active:H,nodes:z,translate:x},droppable:{containers:C}}=S,M=H!=null?z.get(H):null,q=(0,h.useRef)({initial:null,translated:null}),_=(0,h.useMemo)(()=>{var N;return H!=null?{id:H,data:(N=M==null?void 0:M.data)!=null?N:Sl,rect:q}:null},[H,M]),j=(0,h.useRef)(null),[we,Ce]=(0,h.useState)(null),[R,Fe]=(0,h.useState)(null),ue=mt(w,Object.values(w)),T=et(\"DndDescribedBy\",l),D=(0,h.useMemo)(()=>C.getEnabled(),[C]),$=Nl(g),{droppableRects:Y,measureDroppableContainers:me,measuringScheduled:Se}=ul(D,{dragging:V,dependencies:[x.x,x.y],config:$.droppable}),de=ll(z,H),Me=(0,h.useMemo)(()=>R?At(R):null,[R]),Oe=b(),ge=cl(de,$.draggable.measure);Dl({activeNode:H!=null?z.get(H):null,config:Oe.layoutShiftCompensation,initialRect:ge,measure:$.draggable.measure});let G=Ea(de,$.draggable.measure,ge),Ue=Ea(de?de.parentElement:null),he=(0,h.useRef)({activatorEvent:null,active:null,activeNode:de,collisionRect:null,collisions:null,droppableRects:Y,draggableNodes:z,draggingNode:null,draggingNodeRect:null,droppableContainers:C,over:null,scrollableAncestors:[],scrollAdjustedTranslate:null}),Le=C.getNodeFor((n=he.current.over)==null?void 0:n.id),ke=wl({measure:$.dragOverlay.measure}),Be=(o=ke.nodeRef.current)!=null?o:de,_e=V?(a=ke.rect)!=null?a:G:null,Gt=!!(ke.nodeRef.current&&ke.rect),Vt=ml(Gt?null:G),vt=ja(Be?pe(Be):null),Ee=gl(V?Le!=null?Le:de:null),dt=yl(Ee),ut=Il(p,{transform:{x:x.x-Vt.x,y:x.y-Vt.y,scaleX:1,scaleY:1},activatorEvent:R,active:_,activeNodeRect:G,containerNodeRect:Ue,draggingNodeRect:_e,over:he.current.over,overlayNodeRect:ke.rect,scrollableAncestors:Ee,scrollableAncestorRects:dt,windowRect:vt}),jt=Me?tt(Me,x):null,Ut=hl(Ee),$n=Na(Ut),Hn=Na(Ut,[G]),$e=tt(ut,$n),He=_e?qs(_e,ut):null,Ye=_&&He?d({active:_,collisionRect:He,droppableRects:Y,droppableContainers:D,pointerCoordinates:jt}):null,Yt=Pa(Ye,\"id\"),[Ie,Wt]=(0,h.useState)(null),qn=Gt?ut:tt(ut,Hn),zn=$s(qn,(i=Ie==null?void 0:Ie.rect)!=null?i:null,G),wt=(0,h.useRef)(null),Xt=(0,h.useCallback)((N,P)=>{let{sensor:U,options:fe}=P;if(j.current==null)return;let X=z.get(j.current);if(!X)return;let se=N.nativeEvent,Ne=new U({active:j.current,activeNode:X,event:se,options:fe,context:he,onAbort(le){if(!z.get(le))return;let{onDragAbort:De}=ue.current,Pe={id:le};De==null||De(Pe),y({type:\"onDragAbort\",event:Pe})},onPending(le,qe,De,Pe){if(!z.get(le))return;let{onDragPending:St}=ue.current,ze={id:le,constraint:qe,initialCoordinates:De,offset:Pe};St==null||St(ze),y({type:\"onDragPending\",event:ze})},onStart(le){let qe=j.current;if(qe==null)return;let De=z.get(qe);if(!De)return;let{onDragStart:Pe}=ue.current,Ct={activatorEvent:se,active:{id:qe,data:De.data,rect:q}};(0,rt.unstable_batchedUpdates)(()=>{Pe==null||Pe(Ct),B(je.Initializing),E({type:re.DragStart,initialCoordinates:le,active:qe}),y({type:\"onDragStart\",event:Ct}),Ce(wt.current),Fe(se)})},onMove(le){E({type:re.DragMove,coordinates:le})},onEnd:ct(re.DragEnd),onCancel:ct(re.DragCancel)});wt.current=Ne;function ct(le){return async function(){let{active:De,collisions:Pe,over:Ct,scrollAdjustedTranslate:St}=he.current,ze=null;if(De&&St){let{cancelDrop:Ot}=ue.current;ze={activatorEvent:se,active:De,collisions:Pe,delta:St,over:Ct},le===re.DragEnd&&typeof Ot==\"function\"&&await Promise.resolve(Ot(ze))&&(le=re.DragCancel)}j.current=null,(0,rt.unstable_batchedUpdates)(()=>{E({type:le}),B(je.Uninitialized),Wt(null),Ce(null),Fe(null),wt.current=null;let Ot=le===re.DragEnd?\"onDragEnd\":\"onDragCancel\";if(ze){let Un=ue.current[Ot];Un==null||Un(ze),y({type:Ot,event:ze})}})}}},[z]),Gn=(0,h.useCallback)((N,P)=>(U,fe)=>{let X=U.nativeEvent,se=z.get(fe);if(j.current!==null||!se||X.dndKit||X.defaultPrevented)return;let Ne={active:se};N(U,P.options,Ne)===!0&&(X.dndKit={capturedBy:P.sensor},j.current=fe,Xt(U,P))},[z,Xt]),ce=dl(m,Gn);xl(m),ye(()=>{G&&A===je.Initializing&&B(je.Initialized)},[G,A]),(0,h.useEffect)(()=>{let{onDragMove:N}=ue.current,{active:P,activatorEvent:U,collisions:fe,over:X}=he.current;if(!P||!U)return;let se={active:P,activatorEvent:U,collisions:fe,delta:{x:$e.x,y:$e.y},over:X};(0,rt.unstable_batchedUpdates)(()=>{N==null||N(se),y({type:\"onDragMove\",event:se})})},[$e.x,$e.y]),(0,h.useEffect)(()=>{let{active:N,activatorEvent:P,collisions:U,droppableContainers:fe,scrollAdjustedTranslate:X}=he.current;if(!N||j.current==null||!P||!X)return;let{onDragOver:se}=ue.current,Ne=fe.get(Yt),ct=Ne&&Ne.rect.current?{id:Ne.id,rect:Ne.rect.current,data:Ne.data,disabled:Ne.disabled}:null,le={active:N,activatorEvent:P,collisions:U,delta:{x:X.x,y:X.y},over:ct};(0,rt.unstable_batchedUpdates)(()=>{Wt(ct),se==null||se(le),y({type:\"onDragOver\",event:le})})},[Yt]),ye(()=>{he.current={activatorEvent:R,active:_,activeNode:de,collisionRect:He,collisions:Ye,droppableRects:Y,draggableNodes:z,draggingNode:Be,draggingNodeRect:_e,droppableContainers:C,over:Ie,scrollableAncestors:Ee,scrollAdjustedTranslate:$e},q.current={initial:_e,translated:He}},[_,de,Ye,He,z,Be,_e,Y,C,Ie,Ee,$e]),al(L(O({},Oe),{delta:x,draggingRect:He,pointerCoordinates:jt,scrollableAncestors:Ee,scrollableAncestorRects:dt}));let Vn=(0,h.useMemo)(()=>({active:_,activeNode:de,activeNodeRect:G,activatorEvent:R,collisions:Ye,containerNodeRect:Ue,dragOverlay:ke,draggableNodes:z,droppableContainers:C,droppableRects:Y,over:Ie,measureDroppableContainers:me,scrollableAncestors:Ee,scrollableAncestorRects:dt,measuringConfiguration:$,measuringScheduled:Se,windowRect:vt}),[_,de,G,R,Ye,Ue,ke,z,C,Y,Ie,me,Ee,dt,$,Se,vt]),jn=(0,h.useMemo)(()=>({activatorEvent:R,activators:ce,active:_,activeNodeRect:G,ariaDescribedById:{draggable:T},dispatch:E,draggableNodes:z,over:Ie,measureDroppableContainers:me}),[R,ce,_,G,E,T,z,Ie,me]);return h.default.createElement(_a.Provider,{value:I},h.default.createElement(An.Provider,{value:jn},h.default.createElement(Ua.Provider,{value:Vn},h.default.createElement(Ya.Provider,{value:zn},f)),h.default.createElement(El,{disabled:(u==null?void 0:u.restoreFocus)===!1})),h.default.createElement(Ps,L(O({},u),{hiddenTextDescribedById:T})));function b(){let N=(we==null?void 0:we.autoScrollEnabled)===!1,P=typeof c==\"object\"?c.enabled===!1:c===!1,U=V&&!N&&!P;return typeof c==\"object\"?L(O({},c),{enabled:U}):{enabled:U}}}),Al=(0,h.createContext)(null),Aa=\"button\",_l=\"Draggable\";function Wa(e){let{id:t,data:n,disabled:o=!1,attributes:a}=e,i=et(_l),{activators:l,activatorEvent:u,active:c,activeNodeRect:f,ariaDescribedById:m,draggableNodes:d,over:g}=(0,h.useContext)(An),{role:p=Aa,roleDescription:w=\"draggable\",tabIndex:v=0}=a!=null?a:{},S=(c==null?void 0:c.id)===t,E=(0,h.useContext)(S?Ya:Al),[y,I]=Nt(),[A,B]=Nt(),V=bl(l,t),H=mt(n);ye(()=>(d.set(t,{id:t,key:i,node:y,activatorNode:A,data:H}),()=>{let x=d.get(t);x&&x.key===i&&d.delete(t)}),[d,t]);let z=(0,h.useMemo)(()=>({role:p,tabIndex:v,\"aria-disabled\":o,\"aria-pressed\":S&&p===Aa?!0:void 0,\"aria-roledescription\":w,\"aria-describedby\":m.draggable}),[o,p,v,S,w,m.draggable]);return{active:c,activatorEvent:u,activeNodeRect:f,attributes:z,isDragging:S,listeners:o?void 0:V,node:y,over:g,setNodeRef:I,setActivatorNodeRef:B,transform:E}}function Xa(){return(0,h.useContext)(Ua)}var Pl=\"Droppable\",Ml={timeout:25};function Ka(e){let{data:t,disabled:n=!1,id:o,resizeObserverConfig:a}=e,i=et(Pl),{active:l,dispatch:u,over:c,measureDroppableContainers:f}=(0,h.useContext)(An),m=(0,h.useRef)({disabled:n}),d=(0,h.useRef)(!1),g=(0,h.useRef)(null),p=(0,h.useRef)(null),{disabled:w,updateMeasurementsFor:v,timeout:S}=O(O({},Ml),a),E=mt(v!=null?v:o),y=(0,h.useCallback)(()=>{if(!d.current){d.current=!0;return}p.current!=null&&clearTimeout(p.current),p.current=setTimeout(()=>{f(Array.isArray(E.current)?E.current:[E.current]),p.current=null},S)},[S]),I=Dn({callback:y,disabled:w||!l}),A=(0,h.useCallback)((z,x)=>{I&&(x&&(I.unobserve(x),d.current=!1),z&&I.observe(z))},[I]),[B,V]=Nt(A),H=mt(t);return(0,h.useEffect)(()=>{!I||!B.current||(I.disconnect(),d.current=!1,I.observe(B.current))},[B,I]),(0,h.useEffect)(()=>(u({type:re.RegisterDroppable,element:{id:o,key:i,disabled:n,node:B,rect:g,data:H}}),()=>u({type:re.UnregisterDroppable,key:i,id:o})),[o]),(0,h.useEffect)(()=>{n!==m.current.disabled&&(u({type:re.SetDroppableDisabled,id:o,key:i,disabled:n}),m.current.disabled=n)},[o,i,n,u]),{active:l,rect:g,isOver:(c==null?void 0:c.id)===o,node:B,over:c,setNodeRef:V}}var Sr=e=>{let{transform:t}=e;return L(O({},t),{x:0})};var ne=K(ee());function $t(e,t,n){let o=e.slice();return o.splice(n<0?o.length+n:n,0,o.splice(t,1)[0]),o}function Ll(e,t){return e.reduce((n,o,a)=>{let i=t.get(o);return i&&(n[a]=i),n},Array(e.length))}function _n(e){return e!==null&&e>=0}function Bl(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:o,index:a}=e,i=$t(t,o,n),l=t[a],u=i[a];return!u||!l?null:{x:u.left-l.left,y:u.top-l.top,scaleX:u.width/l.width,scaleY:u.height/l.height}};var Pn={scaleX:1,scaleY:1},Or=e=>{var t;let{activeIndex:n,activeNodeRect:o,index:a,rects:i,overIndex:l}=e,u=(t=i[n])!=null?t:o;if(!u)return null;if(a===n){let f=i[l];return f?O({x:0,y:nn&&a<=l?O({x:0,y:-u.height-c},Pn):a=l?O({x:0,y:u.height+c},Pn):O({x:0,y:0},Pn)};function Hl(e,t,n){let o=e[t],a=e[t-1],i=e[t+1];return o?no.map(V=>typeof V==\"object\"&&\"id\"in V?V.id:V),[o]),w=l!=null,v=l?p.indexOf(l.id):-1,S=f?p.indexOf(f.id):-1,E=(0,ne.useRef)(p),y=!Bl(p,E.current),I=S!==-1&&v===-1||y,A=$l(i);ye(()=>{y&&w&&m(p)},[y,p,w,m]),(0,ne.useEffect)(()=>{E.current=p},[p]);let B=(0,ne.useMemo)(()=>({activeIndex:v,containerId:d,disabled:A,disableTransforms:I,items:p,overIndex:S,useDragOverlay:g,sortedRects:Ll(p,c),strategy:a}),[v,d,A.draggable,A.droppable,I,p,S,c,g,a]);return ne.default.createElement(Qa.Provider,{value:B},t)}var ql=e=>{let{id:t,items:n,activeIndex:o,overIndex:a}=e;return $t(n,o,a).indexOf(t)},zl=e=>{let{containerId:t,isSorting:n,wasDragging:o,index:a,items:i,newIndex:l,previousItems:u,previousContainerId:c,transition:f}=e;return!f||!o||u!==i&&a===l?!1:n?!0:l!==a&&t===c},Gl={duration:200,easing:\"ease\"},Ra=\"transform\",Vl=Ve.Transition.toString({property:Ra,duration:0,easing:\"linear\"}),jl={roleDescription:\"sortable\"};function Ul(e){let{disabled:t,index:n,node:o,rect:a}=e,[i,l]=(0,ne.useState)(null),u=(0,ne.useRef)(n);return ye(()=>{if(!t&&n!==u.current&&o.current){let c=a.current;if(c){let f=st(o.current,{ignoreTransform:!0}),m={x:c.left-f.left,y:c.top-f.top,scaleX:c.width/f.width,scaleY:c.height/f.height};(m.x||m.y)&&l(m)}}n!==u.current&&(u.current=n)},[t,n,o,a]),(0,ne.useEffect)(()=>{i&&l(null)},[i]),i}function Tr(e){let{animateLayoutChanges:t=zl,attributes:n,disabled:o,data:a,getNewIndex:i=ql,id:l,strategy:u,resizeObserverConfig:c,transition:f=Gl}=e,{items:m,containerId:d,activeIndex:g,disabled:p,disableTransforms:w,sortedRects:v,overIndex:S,useDragOverlay:E,strategy:y}=(0,ne.useContext)(Qa),I=Yl(o,p),A=m.indexOf(l),B=(0,ne.useMemo)(()=>O({sortable:{containerId:d,index:A,items:m}},a),[d,a,A,m]),V=(0,ne.useMemo)(()=>m.slice(m.indexOf(l)),[m,l]),{rect:H,node:z,isOver:x,setNodeRef:C}=Ka({id:l,data:B,disabled:I.droppable,resizeObserverConfig:O({updateMeasurementsFor:V},c)}),{active:M,activatorEvent:q,activeNodeRect:_,attributes:j,setNodeRef:we,listeners:Ce,isDragging:R,over:Fe,setActivatorNodeRef:ue,transform:T}=Wa({id:l,data:B,attributes:O(O({},jl),n),disabled:I.draggable}),D=ha(C,we),$=!!M,Y=$&&!w&&_n(g)&&_n(S),me=!E&&R,Se=me&&Y?T:null,de=u!=null?u:y,Me=Y?Se!=null?Se:de({rects:v,activeNodeRect:_,activeIndex:g,overIndex:S,index:A}):null,Oe=_n(g)&&_n(S)?i({id:l,items:m,activeIndex:g,overIndex:S}):A,ge=M==null?void 0:M.id,G=(0,ne.useRef)({activeId:ge,items:m,newIndex:Oe,containerId:d}),Ue=m!==G.current.items,he=t({active:M,containerId:d,isDragging:R,isSorting:$,id:l,index:A,items:m,newIndex:G.current.newIndex,previousItems:G.current.items,previousContainerId:G.current.containerId,transition:f,wasDragging:G.current.activeId!=null}),Le=Ul({disabled:!he,index:A,node:z,rect:H});return(0,ne.useEffect)(()=>{$&&G.current.newIndex!==Oe&&(G.current.newIndex=Oe),d!==G.current.containerId&&(G.current.containerId=d),m!==G.current.items&&(G.current.items=m)},[$,Oe,d,m]),(0,ne.useEffect)(()=>{if(ge===G.current.activeId)return;if(ge!=null&&G.current.activeId==null){G.current.activeId=ge;return}let Be=setTimeout(()=>{G.current.activeId=ge},50);return()=>clearTimeout(Be)},[ge]),{active:M,activeIndex:g,attributes:j,data:B,rect:H,index:A,newIndex:Oe,items:m,isOver:x,isSorting:$,isDragging:R,listeners:Ce,node:z,overIndex:S,over:Fe,setNodeRef:D,setActivatorNodeRef:ue,setDroppableNodeRef:C,setDraggableNodeRef:we,transform:Le!=null?Le:Me,transition:ke()};function ke(){if(Le||Ue&&G.current.newIndex===A)return Vl;if(!(me&&!Dt(q)||!f)&&($||he))return Ve.Transition.toString(L(O({},f),{property:Ra}))}}function Yl(e,t){var n,o;return typeof e==\"boolean\"?{draggable:e,droppable:!1}:{draggable:(n=e==null?void 0:e.draggable)!=null?n:t.draggable,droppable:(o=e==null?void 0:e.droppable)!=null?o:t.droppable}}var zf=[W.Down,W.Right,W.Up,W.Left];if(typeof window<\"u\"){let e=document.createElement(\"style\");e.textContent=\".container {\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n flex: 1;\\n width: 100%;\\n padding: 16px;\\n box-sizing: border-box;\\n background: #F2F2F7;\\n}\\n.qrcode-card {\\n display: flex;\\n flex-direction: column;\\n align-items: center;\\n width: 100%;\\n max-width: 360px;\\n margin: 0 auto;\\n padding: 24px 20px;\\n}\\n.qrcode-wrapper {\\n position: relative;\\n cursor: pointer;\\n margin-bottom: 24px;\\n display: flex;\\n justify-content: center;\\n}\\n.qrcode-wrapper:hover .qrcode-glow {\\n opacity: 0.4;\\n}\\n.qrcode-glow {\\n position: absolute;\\n inset: -4px;\\n background: linear-gradient(135deg, #60a5fa 0%, #a78bfa 100%);\\n border-radius: 24px;\\n filter: blur(12px);\\n opacity: 0.2;\\n transition: opacity 0.3s ease;\\n z-index: 0;\\n}\\n.qrcode-container {\\n position: relative;\\n background: #fff;\\n padding: 16px;\\n border-radius: 20px;\\n box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);\\n border: 1px solid rgba(0, 0, 0, 0.05);\\n z-index: 1;\\n}\\n.qrcode-image {\\n width: 160px;\\n height: 160px;\\n border-radius: 12px;\\n object-fit: cover;\\n transition: opacity 0.3s ease;\\n}\\n.qrcode-image--loading {\\n opacity: 0.3;\\n}\\n.qrcode-overlay {\\n position: absolute;\\n inset: 0;\\n background: rgba(255, 255, 255, 0.95);\\n backdrop-filter: blur(4px);\\n border-radius: 20px;\\n display: flex;\\n flex-direction: column;\\n align-items: center;\\n justify-content: center;\\n gap: 12px;\\n z-index: 10;\\n}\\n.qrcode-overlay span {\\n font-size: 12px;\\n font-weight: 500;\\n color: #8E8E93;\\n letter-spacing: 0.5px;\\n}\\n.qrcode-spinner {\\n width: 32px;\\n height: 32px;\\n border: 2px solid rgba(59, 130, 246, 0.2);\\n border-top-color: #3b82f6;\\n border-radius: 50%;\\n animation: spin 0.8s linear infinite;\\n}\\n@keyframes spin {\\n to {\\n transform: rotate(360deg);\\n }\\n}\\n.qrcode-status {\\n position: absolute;\\n bottom: -14px;\\n left: 50%;\\n transform: translateX(-50%);\\n display: flex;\\n align-items: center;\\n gap: 6px;\\n padding: 4px 12px;\\n background: rgba(255, 255, 255, 0.95);\\n backdrop-filter: blur(8px);\\n border-radius: 12px;\\n border: 1px solid rgba(0, 0, 0, 0.05);\\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);\\n z-index: 20;\\n white-space: nowrap;\\n}\\n.status-dot {\\n width: 6px;\\n height: 6px;\\n border-radius: 50%;\\n flex-shrink: 0;\\n transition: background-color 0.3s ease;\\n}\\n.status-dot--pulse {\\n animation: pulse 1.5s ease-in-out infinite;\\n}\\n@keyframes pulse {\\n 0%,\\n 100% {\\n opacity: 1;\\n }\\n 50% {\\n opacity: 0.5;\\n }\\n}\\n.status-text {\\n font-size: 10px;\\n font-weight: 600;\\n color: #8E8E93;\\n text-transform: uppercase;\\n letter-spacing: 0.5px;\\n white-space: nowrap;\\n}\\n.cookie-result-wrapper {\\n width: 100%;\\n margin-bottom: 20px;\\n}\\n.cookie-result {\\n width: 100%;\\n height: 120px;\\n padding: 14px;\\n background: rgba(118, 118, 128, 0.08);\\n border: none;\\n border-radius: 16px;\\n font-size: 12px;\\n font-family: 'SF Mono', Monaco, 'Courier New', monospace;\\n color: #1C1C1E;\\n resize: none;\\n outline: none;\\n box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.04);\\n transition: background-color 0.2s ease, box-shadow 0.2s ease;\\n box-sizing: border-box;\\n}\\n.cookie-result::placeholder {\\n color: #8E8E93;\\n}\\n.cookie-result:focus {\\n background: rgba(255, 255, 255, 0.8);\\n box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.04), 0 0 0 2px rgba(59, 130, 246, 0.2);\\n}\\n.action-buttons {\\n display: grid;\\n grid-template-columns: 1fr 1fr;\\n gap: 12px;\\n width: 100%;\\n}\\n.action-buttons__full {\\n grid-column: 1 / -1;\\n}\\n.auth-source-btn {\\n min-height: 48px;\\n}\\n.auth-source-icon {\\n display: block;\\n flex-shrink: 0;\\n width: 22px;\\n height: 22px;\\n object-fit: contain;\\n}\\n.action-btn {\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n gap: 8px;\\n padding: 14px 20px;\\n border-radius: 16px;\\n font-size: 14px;\\n font-weight: 600;\\n cursor: pointer;\\n transition: all 0.2s ease;\\n border: none;\\n outline: none;\\n}\\n.action-btn:active {\\n transform: scale(0.98);\\n}\\n.action-btn:disabled {\\n cursor: not-allowed;\\n opacity: 0.62;\\n transform: none;\\n}\\n.action-btn--primary {\\n background: #1C1C1E;\\n color: #fff;\\n box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);\\n}\\n.action-btn--primary:hover {\\n background: #2C2C2E;\\n}\\n.action-btn--secondary {\\n background: #fff;\\n color: #1C1C1E;\\n border: 1px solid rgba(0, 0, 0, 0.08);\\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);\\n}\\n.action-btn--secondary:hover {\\n background: #F9F9F9;\\n}\\n.btn-icon {\\n display: block;\\n flex-shrink: 0;\\n width: 18px;\\n height: 18px;\\n opacity: 0.7;\\n}\\n.anticon.btn-icon {\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n width: 18px;\\n height: 18px;\\n font-size: 16px;\\n line-height: 1;\\n}\\n.btn-icon--login {\\n transform: translateY(1px);\\n}\\n.dynamic-delete-button {\\n position: relative;\\n top: 2px;\\n margin: 0 8px;\\n color: #555;\\n font-size: 18px;\\n cursor: pointer;\\n transition: all 0.3s;\\n}\\n.dynamic-delete-button:hover {\\n color: #777;\\n}\\n.dynamic-delete-button[disabled] {\\n cursor: not-allowed;\\n opacity: 0.5;\\n}\\n.domain-edit-modal {\\n --domain-action-size: 32px;\\n --domain-action-gap: 8px;\\n --domain-action-total: calc(var(--domain-action-size) + var(--domain-action-gap));\\n --domain-row-gap: 12px;\\n --domain-label-width: 72px;\\n}\\n.domain-edit-modal .ant-form-horizontal .ant-form-item-label {\\n flex: 0 0 var(--domain-label-width) !important;\\n max-width: var(--domain-label-width) !important;\\n padding-left: 8px;\\n padding-right: 12px;\\n padding-bottom: 0 !important;\\n display: flex !important;\\n align-items: center !important;\\n height: 32px !important;\\n text-align: right;\\n}\\n.domain-edit-modal .ant-form-horizontal .ant-form-item-label > label {\\n height: 32px !important;\\n line-height: 32px !important;\\n}\\n.domain-edit-modal .ant-form-horizontal .ant-form-item-control {\\n flex: 1 1 auto !important;\\n max-width: calc(100% - var(--domain-label-width)) !important;\\n min-width: 0;\\n}\\n.domain-edit-modal .domain-edit-aligned-input {\\n width: calc(100% - var(--domain-action-total));\\n}\\n.domain-edit-modal .domain-edit-full-input {\\n width: 100%;\\n}\\n.domain-edit-modal .domain-edit-add-button {\\n width: calc(100% - var(--domain-action-total));\\n}\\n.domain-edit-modal .ant-form-item {\\n margin-bottom: var(--domain-row-gap);\\n}\\n.domain-edit-modal .ant-form-item:last-child {\\n margin-bottom: 0;\\n}\\n.domain-list-row {\\n display: flex;\\n align-items: center;\\n gap: var(--domain-action-gap, 8px);\\n width: 100%;\\n}\\n.domain-list-input {\\n flex: 1;\\n min-width: 0;\\n}\\n.domain-list-action {\\n width: var(--domain-action-size, 32px);\\n flex: 0 0 var(--domain-action-size, 32px);\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n}\\n.domain-list-action--placeholder {\\n visibility: hidden;\\n}\\n.domain-list-row .dynamic-delete-button {\\n margin: 0;\\n}\\n.sites-table .ant-table-tbody > tr > td {\\n padding: 8px 16px;\\n}\\n.sites-table .ant-table-thead > tr > th {\\n white-space: nowrap;\\n}\\n.sites-list-toolbar {\\n display: flex;\\n justify-content: flex-end;\\n margin: -2px 0 12px;\\n}\\n.sites-list-toolbar .sites-add-button {\\n min-width: 78px;\\n height: 36px;\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n border-radius: 16px;\\n font-weight: 600;\\n box-shadow: 0 8px 18px rgba(28, 28, 30, 0.12);\\n}\\n.site-add-menu {\\n min-width: 190px;\\n padding: 8px;\\n border-radius: 20px;\\n background: rgba(255, 255, 255, 0.86);\\n backdrop-filter: blur(28px);\\n border: 1px solid rgba(255, 255, 255, 0.45);\\n box-shadow: 0 22px 44px rgba(28, 28, 30, 0.16), 0 1px 0 rgba(255, 255, 255, 0.7) inset;\\n}\\n.site-add-type-item {\\n width: 100%;\\n min-height: 56px;\\n display: flex;\\n align-items: center;\\n gap: 12px;\\n padding: 8px 10px;\\n border: 0;\\n border-radius: 14px;\\n background: transparent;\\n color: #1C1C1E;\\n font-size: 15px;\\n font-weight: 600;\\n cursor: pointer;\\n transition: all 0.2s ease;\\n}\\n.site-add-type-item:hover:not(:disabled) {\\n background: rgba(52, 199, 89, 0.1);\\n}\\n.site-add-type-item:disabled {\\n cursor: not-allowed;\\n opacity: 0.65;\\n}\\n.site-add-type-item__icon {\\n width: 36px;\\n height: 36px;\\n flex: 0 0 36px;\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n overflow: hidden;\\n border-radius: 10px;\\n background: #fff;\\n border: 1px solid rgba(0, 0, 0, 0.06);\\n}\\n.site-add-type-item__icon img {\\n width: 100%;\\n height: 100%;\\n object-fit: cover;\\n}\\n.site-add-type-item__icon svg {\\n font-size: 18px;\\n color: #34C759;\\n}\\n.site-add-type-item__name {\\n flex: 1;\\n min-width: 0;\\n overflow: hidden;\\n text-align: left;\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n}\\n.subscription-page {\\n display: flex;\\n flex-direction: column;\\n gap: 24px;\\n}\\n.subscription-section {\\n max-width: 720px;\\n}\\n.subscription-setting-modal .ios-form {\\n max-width: none !important;\\n}\\n.subscription-endpoints {\\n display: flex;\\n flex-direction: column;\\n gap: 10px;\\n}\\n.subscription-endpoint {\\n display: flex;\\n align-items: center;\\n gap: 10px;\\n min-height: 64px;\\n padding: 12px 10px 12px 14px;\\n border: 1px solid rgba(0, 0, 0, 0.06);\\n border-radius: 14px;\\n background: rgba(255, 255, 255, 0.72);\\n}\\n.subscription-endpoint__main {\\n flex: 1;\\n min-width: 0;\\n}\\n.subscription-endpoint__title {\\n display: flex;\\n align-items: center;\\n gap: 8px;\\n margin-bottom: 6px;\\n color: #1C1C1E;\\n font-size: 14px;\\n font-weight: 700;\\n}\\n.subscription-endpoint__url {\\n overflow: hidden;\\n color: #6B7280;\\n font-family: 'SF Mono', Monaco, 'Courier New', monospace;\\n font-size: 12px;\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n}\\n.subscription-endpoint__actions {\\n display: flex;\\n flex: 0 0 auto;\\n gap: 2px;\\n}\\n.subscription-endpoint__actions .ant-btn {\\n width: 34px;\\n height: 34px;\\n border-radius: 12px;\\n color: #1C1C1E;\\n}\\n.subscription-endpoint__actions .ant-btn:hover {\\n background: rgba(0, 0, 0, 0.04) !important;\\n}\\n.subscription-endpoint__actions .ant-btn:focus,\\n.subscription-endpoint__actions .ant-btn:focus-visible {\\n background: transparent !important;\\n}\\n.subscription-endpoint__actions .ant-btn:focus-visible {\\n outline: 2px solid rgba(28, 28, 30, 0.22);\\n outline-offset: 2px;\\n}\\n.subscription-endpoint__actions .ant-btn:active {\\n background: rgba(0, 0, 0, 0.06) !important;\\n}\\n.main-card {\\n min-height: auto;\\n max-height: calc(100vh - 100px);\\n width: 100%;\\n max-width: 420px;\\n overflow: auto;\\n background: rgba(255, 255, 255, 0.65);\\n backdrop-filter: blur(50px);\\n border-radius: 32px;\\n box-shadow: 0 24px 48px -12px rgba(0, 0, 0, 0.08), 0 0 0 1px rgba(255, 255, 255, 0.5) inset, 0 0 0 1px rgba(0, 0, 0, 0.03);\\n border: 1px solid rgba(255, 255, 255, 0.2);\\n animation: fadeInUp 0.6s cubic-bezier(0.16, 1, 0.3, 1) forwards;\\n}\\n.main-card .ant-card-body {\\n padding: 24px 16px;\\n}\\n.main-card .ant-tabs-nav {\\n margin-bottom: 16px;\\n}\\n.main-card .ant-tabs-nav::before {\\n display: none;\\n}\\n.main-card .ant-tabs-nav-list {\\n display: flex;\\n flex-wrap: wrap;\\n gap: 6px;\\n padding: 6px;\\n background: rgba(118, 118, 128, 0.1);\\n border-radius: 14px;\\n width: 100%;\\n justify-content: center;\\n}\\n.main-card .ant-tabs-tab {\\n flex: 1;\\n min-width: 0;\\n margin: 0 !important;\\n padding: 8px 12px !important;\\n border-radius: 10px;\\n font-size: 13px;\\n font-weight: 500;\\n color: #8E8E93;\\n background: transparent;\\n transition: all 0.3s ease;\\n justify-content: center;\\n}\\n.main-card .ant-tabs-tab:hover {\\n color: #1C1C1E;\\n}\\n.main-card .ant-tabs-tab.ant-tabs-tab-active {\\n background: #fff;\\n color: #1C1C1E;\\n box-shadow: 0 4px 12px -2px rgba(0, 0, 0, 0.12), 0 1px 1px rgba(0, 0, 0, 0.05);\\n}\\n.main-card .ant-tabs-tab.ant-tabs-tab-active .ant-tabs-tab-btn {\\n color: #1C1C1E;\\n}\\n.main-card .ant-tabs-ink-bar {\\n display: none;\\n}\\n.main-card .account-tabs {\\n width: 100%;\\n}\\n.main-card .account-tabs__nav-scroll {\\n width: 100%;\\n max-width: 100%;\\n margin-bottom: 16px;\\n padding: 6px;\\n overflow-x: auto !important;\\n overflow-y: hidden;\\n background: rgba(118, 118, 128, 0.1);\\n border-radius: 14px;\\n box-sizing: border-box;\\n cursor: grab;\\n overscroll-behavior-x: contain;\\n scrollbar-width: none;\\n touch-action: pan-x;\\n -ms-overflow-style: none;\\n -webkit-overflow-scrolling: touch;\\n}\\n.main-card .account-tabs__nav-scroll::-webkit-scrollbar {\\n display: none;\\n}\\n.main-card .account-tabs__nav-scroll.is-dragging {\\n cursor: grabbing;\\n user-select: none;\\n}\\n.main-card .account-tabs__nav-list {\\n display: flex;\\n flex-wrap: nowrap;\\n gap: 4px;\\n width: max-content;\\n min-width: 100%;\\n justify-content: flex-start;\\n}\\n.main-card .account-tabs__tab {\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n flex: 0 0 auto;\\n min-width: 44px;\\n min-height: 34px;\\n margin: 0;\\n padding: 8px 12px;\\n border: 0;\\n border-radius: 10px;\\n background: transparent;\\n color: #8E8E93;\\n font-size: 13px;\\n font-weight: 500;\\n line-height: 1;\\n white-space: nowrap;\\n cursor: pointer;\\n transition: color 0.2s ease, background-color 0.2s ease, box-shadow 0.2s ease;\\n appearance: none;\\n}\\n.main-card .account-tabs__tab:hover {\\n color: #1C1C1E;\\n}\\n.main-card .account-tabs__tab--active {\\n background: #fff;\\n color: #1C1C1E;\\n box-shadow: 0 4px 12px -2px rgba(0, 0, 0, 0.12), 0 1px 1px rgba(0, 0, 0, 0.05);\\n}\\n.main-card .account-tabs__panel {\\n width: 100%;\\n}\\n@keyframes fadeInUp {\\n from {\\n opacity: 0;\\n transform: translateY(16px);\\n }\\n to {\\n opacity: 1;\\n transform: translateY(0);\\n }\\n}\\n.app-layout {\\n display: flex;\\n flex-direction: column;\\n min-height: 100vh;\\n width: 100%;\\n background: #F2F2F7;\\n}\\n.top-nav-bar {\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n width: 100%;\\n padding: 12px 16px;\\n background: transparent;\\n box-sizing: border-box;\\n}\\n.nav-pill {\\n display: flex;\\n align-items: center;\\n gap: 4px;\\n padding: 4px;\\n background: rgba(255, 255, 255, 0.65);\\n backdrop-filter: blur(20px);\\n border-radius: 20px;\\n box-shadow: 0 4px 16px rgba(0, 0, 0, 0.06), 0 0 0 1px rgba(255, 255, 255, 0.5) inset, 0 0 0 1px rgba(0, 0, 0, 0.03);\\n}\\n.nav-tab {\\n display: flex;\\n align-items: center;\\n gap: 6px;\\n padding: 8px 16px;\\n border-radius: 16px;\\n cursor: pointer;\\n font-size: 13px;\\n font-weight: 500;\\n color: #8E8E93;\\n background: transparent;\\n border: none;\\n transition: all 0.3s ease;\\n}\\n.nav-tab:hover {\\n color: #1C1C1E;\\n}\\n.nav-tab--active {\\n color: #1C1C1E;\\n background: #fff;\\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);\\n}\\n.nav-tab--active:hover {\\n background: #fff;\\n color: #1C1C1E;\\n}\\n.nav-tab .anticon {\\n font-size: 14px;\\n}\\n.nav-divider {\\n width: 1px;\\n height: 20px;\\n background: rgba(0, 0, 0, 0.1);\\n margin: 0 4px;\\n}\\n.nav-actions {\\n display: flex;\\n align-items: center;\\n gap: 2px;\\n}\\n.nav-actions .ant-btn {\\n color: #8E8E93;\\n font-size: 12px;\\n font-weight: 500;\\n padding: 6px 12px;\\n height: auto;\\n border-radius: 12px;\\n}\\n.nav-actions .ant-btn:hover {\\n color: #1C1C1E;\\n background: rgba(0, 0, 0, 0.04);\\n}\\n.drag-handle {\\n cursor: grab;\\n color: #999;\\n font-size: 18px;\\n padding: 8px;\\n touch-action: none;\\n}\\n.drag-handle:active {\\n cursor: grabbing;\\n}\\n.pansou-config-modal {\\n max-width: 420px;\\n}\\n.pansou-config-modal .ant-modal-body {\\n padding: 16px 24px;\\n}\\n.pansou-config-tabs {\\n margin-bottom: 16px;\\n}\\n.pansou-config-tabs__nav-scroll {\\n width: 100%;\\n max-width: 100%;\\n padding: 6px;\\n overflow-x: auto !important;\\n overflow-y: hidden;\\n background: rgba(118, 118, 128, 0.1);\\n border-radius: 14px;\\n box-sizing: border-box;\\n cursor: grab;\\n overscroll-behavior-x: contain;\\n scrollbar-width: none;\\n touch-action: pan-x;\\n -ms-overflow-style: none;\\n -webkit-overflow-scrolling: touch;\\n}\\n.pansou-config-tabs__nav-scroll::-webkit-scrollbar {\\n display: none;\\n}\\n.pansou-config-tabs__nav-scroll.is-dragging {\\n cursor: grabbing;\\n user-select: none;\\n}\\n.pansou-config-tabs__nav-list {\\n display: flex;\\n flex-wrap: nowrap;\\n gap: 4px;\\n width: max-content;\\n min-width: 100%;\\n justify-content: flex-start;\\n}\\n.pansou-config-tabs__tab {\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n gap: 8px;\\n flex: 0 0 auto;\\n margin: 0;\\n padding: 8px 12px;\\n border: 0;\\n border-radius: 10px;\\n font-size: 13px;\\n font-weight: 500;\\n color: #8E8E93;\\n background: transparent;\\n outline: none;\\n cursor: pointer;\\n transition: all 0.2s ease;\\n}\\n.pansou-config-tabs__tab:hover {\\n color: #1C1C1E;\\n}\\n.pansou-config-tabs__tab--active {\\n background: rgba(118, 118, 128, 0.12);\\n color: #1C1C1E;\\n}\\n.pansou-config-tabs__badge {\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n min-width: 22px;\\n height: 16px;\\n padding: 0 6px;\\n border-radius: 999px;\\n font-size: 11px;\\n line-height: 16px;\\n font-weight: 600;\\n color: #fff;\\n background: #1C1C1E;\\n}\\n.pansou-checkbox-section {\\n min-height: 200px;\\n max-height: 400px;\\n overflow-y: auto;\\n}\\n.pansou-checkbox-header {\\n display: flex;\\n justify-content: space-between;\\n align-items: center;\\n margin-bottom: 12px;\\n padding: 0 4px;\\n color: #8E8E93;\\n font-size: 13px;\\n}\\n.pansou-checkbox-header .ant-btn-link {\\n color: #1C1C1E;\\n font-weight: 500;\\n padding: 4px 8px;\\n height: auto;\\n}\\n.pansou-checkbox-header .ant-btn-link:hover,\\n.pansou-checkbox-header .ant-btn-link:focus,\\n.pansou-checkbox-header .ant-btn-link:active {\\n color: #3C3C3E;\\n background: rgba(0, 0, 0, 0.04);\\n}\\n.pansou-add-channel {\\n display: flex;\\n gap: 8px;\\n margin-bottom: 12px;\\n}\\n.pansou-checkbox-grid {\\n display: grid;\\n grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));\\n gap: 8px;\\n}\\n.pansou-checkbox-card {\\n display: flex;\\n align-items: center;\\n justify-content: space-between;\\n padding: 10px 14px;\\n border: 1px solid rgba(0, 0, 0, 0.06);\\n border-radius: 10px;\\n cursor: pointer;\\n transition: all 0.2s;\\n background: #fff;\\n}\\n.pansou-checkbox-card:hover {\\n border-color: rgba(0, 0, 0, 0.12);\\n background: #F9F9F9;\\n}\\n.pansou-checkbox-card--selected {\\n border-color: #1C1C1E;\\n background: rgba(28, 28, 30, 0.04);\\n}\\n.pansou-checkbox-card--selected .pansou-checkbox-card__check {\\n color: #1C1C1E;\\n}\\n.pansou-checkbox-card__label {\\n flex: 1;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n font-size: 13px;\\n}\\n.pansou-checkbox-card__delete {\\n flex-shrink: 0;\\n color: #8E8E93;\\n font-size: 14px;\\n margin-left: 6px;\\n transition: color 0.2s;\\n}\\n.pansou-checkbox-card__delete:hover {\\n color: #ef4444;\\n}\\n.pansou-empty-tip {\\n text-align: center;\\n color: #8E8E93;\\n padding: 40px 0;\\n font-size: 13px;\\n}\\n.pansou-config-footer {\\n margin-top: 16px;\\n padding-top: 16px;\\n border-top: 1px solid rgba(0, 0, 0, 0.06);\\n}\\n.emby-server-manager {\\n display: flex;\\n flex-direction: column;\\n gap: 14px;\\n}\\n.emby-server-toolbar {\\n display: flex;\\n flex-direction: column;\\n align-items: stretch;\\n gap: 12px;\\n padding: 4px 0 2px;\\n}\\n.emby-server-toolbar__main {\\n display: flex;\\n align-items: center;\\n justify-content: space-between;\\n gap: 12px;\\n}\\n.emby-server-toolbar .ant-btn {\\n height: 36px;\\n display: inline-flex;\\n align-items: center;\\n border-radius: 16px;\\n font-weight: 600;\\n box-shadow: 0 8px 18px rgba(28, 28, 30, 0.12);\\n}\\n.emby-server-title {\\n color: #1C1C1E;\\n font-size: 17px;\\n font-weight: 700;\\n line-height: 1.2;\\n}\\n.emby-server-subtitle {\\n color: #8E8E93;\\n font-size: 12px;\\n line-height: 1.4;\\n}\\n.emby-empty-card {\\n width: 100%;\\n min-height: 116px;\\n display: flex;\\n flex-direction: column;\\n align-items: center;\\n justify-content: center;\\n gap: 10px;\\n border: 1px dashed rgba(28, 28, 30, 0.2);\\n border-radius: 18px;\\n background: rgba(255, 255, 255, 0.55);\\n color: #1C1C1E;\\n font-size: 14px;\\n font-weight: 600;\\n cursor: pointer;\\n transition: all 0.2s ease;\\n}\\n.emby-empty-card .anticon {\\n width: 36px;\\n height: 36px;\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n border-radius: 50%;\\n background: rgba(52, 199, 89, 0.14);\\n color: #22c55e;\\n font-size: 17px;\\n}\\n.emby-empty-card:hover {\\n background: rgba(255, 255, 255, 0.75);\\n border-color: rgba(28, 28, 30, 0.35);\\n}\\n.emby-server-grid {\\n display: grid;\\n grid-template-columns: 1fr;\\n gap: 10px;\\n}\\n.emby-server-card {\\n position: relative;\\n overflow: hidden;\\n display: flex;\\n align-items: center;\\n gap: 12px;\\n min-height: 82px;\\n padding: 12px 14px;\\n border-radius: 12px;\\n background: linear-gradient(135deg, rgba(255, 255, 255, 0.95), rgba(242, 247, 245, 0.9));\\n box-shadow: 0 10px 22px rgba(28, 28, 30, 0.06);\\n border: 1px solid rgba(255, 255, 255, 0.62);\\n}\\n.emby-server-card__hero {\\n display: flex;\\n align-items: center;\\n flex: 0 0 auto;\\n}\\n.emby-server-card__logo {\\n width: 48px;\\n height: 48px;\\n flex: 0 0 48px;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n overflow: hidden;\\n border-radius: 12px;\\n background: rgba(255, 255, 255, 0.92);\\n border: 1px solid rgba(0, 0, 0, 0.06);\\n}\\n.emby-server-card__logo img {\\n width: 100%;\\n height: 100%;\\n object-fit: cover;\\n}\\n.emby-server-card__content {\\n min-width: 0;\\n flex: 1;\\n}\\n.emby-server-card__name {\\n display: flex;\\n align-items: center;\\n gap: 6px;\\n min-width: 0;\\n color: #111;\\n font-size: 15px;\\n font-weight: 700;\\n line-height: 1.3;\\n}\\n.emby-server-card__name span {\\n min-width: 0;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n}\\n.emby-server-card__name .anticon {\\n flex: 0 0 auto;\\n color: #22c55e;\\n font-size: 12px;\\n}\\n.emby-server-card__stats {\\n display: flex;\\n flex-wrap: nowrap;\\n gap: 10px;\\n margin-top: 7px;\\n color: #6b7280;\\n font-size: 12px;\\n line-height: 1.35;\\n}\\n.emby-server-card__stats .emby-server-card__stat,\\n.emby-server-card__stats .emby-server-card__sync {\\n min-width: 0;\\n display: flex;\\n align-items: center;\\n gap: 4px;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n}\\n.emby-server-card__stats .emby-server-card__stat {\\n flex: 0 1 auto;\\n max-width: 72px;\\n}\\n.emby-server-card__stats .emby-server-card__stat span {\\n min-width: 0;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n}\\n.emby-server-card__stats .emby-server-card__sync {\\n color: #8e8e93;\\n}\\n.emby-server-card__stats .emby-server-card__stat-icon {\\n width: 17px;\\n height: 17px;\\n flex: 0 0 auto;\\n color: #8e8e93;\\n fill: currentColor;\\n}\\n.emby-server-card__stats .emby-server-card__stat-icon--series {\\n width: 18px;\\n height: 18px;\\n fill: none;\\n stroke: currentColor;\\n stroke-width: 1.5;\\n stroke-linecap: round;\\n stroke-linejoin: round;\\n}\\n.emby-server-card__actions {\\n flex: 0 0 auto;\\n display: flex;\\n flex-direction: row;\\n align-items: center;\\n justify-content: center;\\n gap: 4px;\\n}\\n.emby-server-card__actions .ant-btn {\\n width: 30px;\\n height: 30px;\\n padding: 0;\\n border-radius: 10px;\\n}\\n.emby-server-edit-modal .ant-modal-body {\\n padding-top: 18px;\\n}\\n.emby-server-edit-actions {\\n justify-content: space-between;\\n}\\n.emby-server-edit-actions--new {\\n justify-content: flex-end;\\n}\\n.emby-logo-preview {\\n display: flex;\\n align-items: center;\\n gap: 10px;\\n margin: -4px 0 16px;\\n color: #8e8e93;\\n font-size: 12px;\\n}\\n.emby-logo-preview img {\\n width: 38px;\\n height: 38px;\\n border-radius: 10px;\\n object-fit: cover;\\n background: #fff;\\n border: 1px solid rgba(0, 0, 0, 0.08);\\n}\\n.ant-input,\\n.ant-input-password .ant-input,\\n.ant-input-number,\\n.ant-input-number-input {\\n background: rgba(118, 118, 128, 0.08);\\n border: none;\\n border-radius: 12px;\\n font-size: 14px;\\n}\\n.ant-input:focus,\\n.ant-input-password .ant-input:focus,\\n.ant-input-number:focus,\\n.ant-input-number-input:focus,\\n.ant-input:hover,\\n.ant-input-password .ant-input:hover,\\n.ant-input-number:hover,\\n.ant-input-number-input:hover,\\n.ant-input.ant-input-focused,\\n.ant-input-password .ant-input.ant-input-focused,\\n.ant-input-number.ant-input-focused,\\n.ant-input-number-input.ant-input-focused {\\n background: rgba(255, 255, 255, 0.8);\\n box-shadow: 0 0 0 2px rgba(28, 28, 30, 0.15);\\n border-color: transparent;\\n}\\n.ant-input {\\n padding: 10px 14px;\\n}\\n.ant-input-affix-wrapper {\\n background: rgba(118, 118, 128, 0.08);\\n border: none;\\n border-radius: 12px;\\n padding: 6px 14px;\\n}\\n.ant-input-affix-wrapper:focus,\\n.ant-input-affix-wrapper:hover,\\n.ant-input-affix-wrapper.ant-input-affix-wrapper-focused {\\n background: rgba(255, 255, 255, 0.8);\\n box-shadow: 0 0 0 2px rgba(28, 28, 30, 0.15);\\n border-color: transparent !important;\\n}\\n.ant-input-affix-wrapper .ant-input {\\n background: transparent;\\n padding: 4px 0;\\n box-shadow: none;\\n}\\n.ant-input-affix-wrapper .ant-input:focus,\\n.ant-input-affix-wrapper .ant-input:hover {\\n box-shadow: none;\\n}\\n.ant-input-number {\\n width: 100%;\\n padding: 0;\\n}\\n.ant-input-number .ant-input-number-input {\\n padding: 10px 14px;\\n height: auto;\\n}\\n.ant-input-number:focus,\\n.ant-input-number:hover,\\n.ant-input-number.ant-input-number-focused {\\n border-color: transparent !important;\\n}\\n.ant-input-number-group-addon {\\n background: rgba(118, 118, 128, 0.08);\\n border: none;\\n border-radius: 0 12px 12px 0;\\n color: #8E8E93;\\n font-size: 13px;\\n padding: 0 14px;\\n min-width: 50px;\\n text-align: center;\\n}\\n.ant-input-number-group .ant-input-number {\\n border-radius: 12px 0 0 12px;\\n}\\n.ios-form .ant-form-item {\\n margin-bottom: 16px;\\n}\\n.ios-form .ant-form-item-label > label {\\n color: #8E8E93;\\n font-size: 13px;\\n font-weight: 500;\\n}\\n.ios-button-group {\\n display: flex;\\n gap: 12px;\\n margin-top: 20px;\\n}\\n.action-btn--danger {\\n background: #fff;\\n color: #ef4444;\\n border: 1px solid rgba(239, 68, 68, 0.3);\\n}\\n.action-btn--danger:hover {\\n background: rgba(239, 68, 68, 0.05);\\n}\\n.ios-modal {\\n max-width: 420px;\\n}\\n.ios-modal .ant-modal-content {\\n background: rgba(255, 255, 255, 0.9);\\n backdrop-filter: blur(30px);\\n border-radius: 24px;\\n box-shadow: 0 24px 48px -12px rgba(0, 0, 0, 0.15);\\n border: 1px solid rgba(255, 255, 255, 0.3);\\n}\\n.ios-modal .ant-modal-header {\\n background: transparent;\\n border-bottom: 1px solid rgba(0, 0, 0, 0.06);\\n padding: 20px 24px;\\n border-radius: 24px 24px 0 0;\\n}\\n.ios-modal .ant-modal-title {\\n font-size: 17px;\\n font-weight: 600;\\n color: #1C1C1E;\\n}\\n.ios-modal .ant-modal-body {\\n padding: 20px 24px;\\n}\\n.ios-modal .ant-modal-footer {\\n border-top: 1px solid rgba(0, 0, 0, 0.06);\\n padding: 16px 24px;\\n}\\n.ios-modal .ant-modal-close {\\n top: 16px;\\n right: 16px;\\n}\\n.ios-modal .ant-modal-close .ant-modal-close-x {\\n color: #8E8E93;\\n}\\n.ios-modal .ant-modal-close .ant-modal-close-x:hover {\\n color: #1C1C1E;\\n}\\n.ant-message .ant-message-notice-content {\\n background: rgba(255, 255, 255, 0.85);\\n backdrop-filter: blur(20px);\\n border-radius: 16px;\\n padding: 12px 20px;\\n box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1);\\n border: 1px solid rgba(255, 255, 255, 0.5);\\n}\\n.ios-alert {\\n background: rgba(59, 130, 246, 0.08);\\n border: none;\\n border-radius: 12px;\\n}\\n.ios-alert .ant-alert-message {\\n color: #1C1C1E;\\n font-weight: 500;\\n}\\n.ios-alert .ant-alert-description {\\n color: #8E8E93;\\n}\\n.ant-switch {\\n background: rgba(120, 120, 128, 0.16);\\n min-width: 51px;\\n height: 31px;\\n}\\n.ant-switch .ant-switch-handle {\\n width: 27px;\\n height: 27px;\\n top: 2px;\\n inset-inline-start: 2px;\\n}\\n.ant-switch .ant-switch-handle::before {\\n border-radius: 50%;\\n box-shadow: 0 3px 8px rgba(0, 0, 0, 0.15), 0 1px 1px rgba(0, 0, 0, 0.16);\\n}\\n.ant-switch:hover:not(.ant-switch-disabled) {\\n background: rgba(120, 120, 128, 0.24);\\n}\\n.ant-switch:focus {\\n box-shadow: none;\\n}\\n.ant-switch.ant-switch-checked {\\n background: #34C759;\\n}\\n.ant-switch.ant-switch-checked .ant-switch-handle {\\n inset-inline-start: calc(100% - 29px);\\n}\\n.ant-switch.ant-switch-checked:hover:not(.ant-switch-disabled) {\\n background: #2DB84E;\\n}\\n.ios-edit-btn {\\n color: #8E8E93;\\n padding: 4px 8px;\\n border-radius: 8px;\\n transition: all 0.2s ease;\\n}\\n.ios-edit-btn:hover {\\n color: #1C1C1E;\\n background: rgba(0, 0, 0, 0.04);\\n}\\n.ios-edit-btn .anticon {\\n font-size: 16px;\\n}\\n.ios-tag {\\n background: rgba(118, 118, 128, 0.12);\\n border: none;\\n border-radius: 6px;\\n color: #8E8E93;\\n font-size: 11px;\\n font-weight: 500;\\n padding: 2px 8px;\\n line-height: 1.4;\\n}\\n.ant-space-compact .ant-input {\\n border-radius: 12px 0 0 12px;\\n}\\n.ant-space-compact .ant-btn {\\n border-radius: 0 12px 12px 0;\\n}\\n.ant-space-compact .ant-btn-primary {\\n background: #1C1C1E;\\n border: none;\\n}\\n.ant-space-compact .ant-btn-primary:hover,\\n.ant-space-compact .ant-btn-primary:focus,\\n.ant-space-compact .ant-btn-primary:active {\\n background: #2C2C2E !important;\\n}\\n.xunlei-verify-compact .ant-input,\\n.xunlei-verify-compact .ant-btn {\\n height: 44px;\\n}\\n.xunlei-verify-compact .ant-input {\\n line-height: 22px;\\n}\\n.xunlei-verify-compact .xunlei-verify-send-btn {\\n min-width: 126px;\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n border-color: rgba(0, 0, 0, 0.12);\\n box-shadow: none;\\n}\\n.ant-btn-primary {\\n background: #1C1C1E;\\n border: none;\\n border-radius: 12px;\\n}\\n.ant-btn-primary:hover,\\n.ant-btn-primary:focus,\\n.ant-btn-primary:active {\\n background: #2C2C2E !important;\\n border-color: transparent !important;\\n}\\n.ant-btn-dashed {\\n border-radius: 12px;\\n border-color: rgba(0, 0, 0, 0.15) !important;\\n color: #8E8E93;\\n}\\n.ant-btn-dashed:hover,\\n.ant-btn-dashed:focus,\\n.ant-btn-dashed:active {\\n color: #1C1C1E !important;\\n border-color: rgba(0, 0, 0, 0.3) !important;\\n background: rgba(0, 0, 0, 0.02) !important;\\n}\\n.ant-btn-text:hover,\\n.ant-btn-text:focus,\\n.ant-btn-text:active {\\n background: rgba(0, 0, 0, 0.04) !important;\\n color: #1C1C1E !important;\\n}\\n.ant-btn-link {\\n color: #1C1C1E;\\n}\\n.ant-btn-link:hover,\\n.ant-btn-link:focus,\\n.ant-btn-link:active {\\n color: #3C3C3E !important;\\n background: transparent !important;\\n}\\n.ant-btn-dangerous.ant-btn-text {\\n color: #ef4444;\\n}\\n.ant-btn-dangerous.ant-btn-text:hover,\\n.ant-btn-dangerous.ant-btn-text:focus,\\n.ant-btn-dangerous.ant-btn-text:active {\\n color: #dc2626 !important;\\n background: rgba(239, 68, 68, 0.04) !important;\\n}\\n.action-btn--secondary-outline {\\n background: #fff;\\n color: #8E8E93;\\n border: 1px solid rgba(0, 0, 0, 0.08);\\n}\\n.action-btn--secondary-outline:hover {\\n color: #1C1C1E;\\n background: #F9F9F9;\\n}\\n.pansou-add-channel .ant-btn-primary {\\n background: #1C1C1E;\\n border: none;\\n border-radius: 12px;\\n font-weight: 500;\\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);\\n}\\n.pansou-add-channel .ant-btn-primary:hover,\\n.pansou-add-channel .ant-btn-primary:focus,\\n.pansou-add-channel .ant-btn-primary:active {\\n background: #2C2C2E !important;\\n border-color: transparent !important;\\n}\\n.pansou-add-channel .ant-input {\\n background: rgba(118, 118, 128, 0.08);\\n border: none;\\n border-radius: 12px;\\n padding: 8px 14px;\\n}\\n.pansou-add-channel .ant-input:focus,\\n.pansou-add-channel .ant-input:hover {\\n background: rgba(255, 255, 255, 0.8);\\n box-shadow: 0 0 0 2px rgba(28, 28, 30, 0.15);\\n border-color: transparent;\\n}\\n.pansou-add-channel .ant-input-clear-icon {\\n color: #8E8E93;\\n}\\n.pansou-add-channel .ant-input-clear-icon:hover {\\n color: #1C1C1E;\\n}\\n.pansou-add-channel .ant-input-affix-wrapper {\\n background: rgba(118, 118, 128, 0.08);\\n border: none;\\n border-radius: 12px;\\n padding: 4px 14px;\\n}\\n.pansou-add-channel .ant-input-affix-wrapper:focus,\\n.pansou-add-channel .ant-input-affix-wrapper:hover,\\n.pansou-add-channel .ant-input-affix-wrapper.ant-input-affix-wrapper-focused {\\n background: rgba(255, 255, 255, 0.8);\\n box-shadow: 0 0 0 2px rgba(28, 28, 30, 0.15);\\n border-color: transparent !important;\\n}\\n.pansou-add-channel .ant-input-affix-wrapper .ant-input {\\n background: transparent;\\n box-shadow: none;\\n padding: 4px 0;\\n}\\n.pansou-add-channel .ant-input-affix-wrapper .ant-input:focus,\\n.pansou-add-channel .ant-input-affix-wrapper .ant-input:hover {\\n box-shadow: none;\\n}\\n\",document.head.appendChild(e)}var Ht=\"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 Fr=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAYAAACtWK6eAAAMe0lEQVR4AezdbXYTORMFYHUGclhG2EHCCuAXsAtYCbASZheEX7ADsoNkdjEH5qTH13E5bafdX5JaVaXLoSInsdXSlR7S1ry8nAX+YgJM4GQCBHIyGn6DCYRAINwFTGAgAQIZCIffYgIEwj3ABAYSyAhk4Kr8FhMwkgCBGFkoDrNMAgRSJnde1UgCBGJkoTjMMgkQSJnceVUjCdgEYiRcDtN+AgRifw05g4wJEEjGcNm1/QQIxP4acgYZEyCQjOGya/sJEMjRGvJTJtBNgEC6aWR+/OLb5UXmS7D7xAkQSOJAT3X37Nvl6/umuT3/fvnp1HP4dX0JEMgKawIcZ03zY3uptvlMJNskTHw4MzFKw4M8wCHzIBJJQn1LIBmX6AjH4ZWI5DAPpZ8RSKaFGcQh1yQSSUJtSyAZlmYSDrkukUgSKlsCSbwss3DItYlEklDXEkjCJVmEQ65PJJKEqpZAEi1HFA4Zw2Ik0gHb1AkQSIJEk+CQcRCJJKGiJZDIZUiKQ8ZCJJJE8ZZAIpYgCw4ZD5FIEkVbAlkYf1YcMiYikSSKtQSyIPpVcMi4SiORcVTaEsjMhV8Vh4yNSCSJ1VsCmRF5ERwyPiKRJFZtCWRi3EVxyBiJRJJYrSWQCVGrwCHjJBJJYpWWQEZiVoVDxuoEiUxHc0sgA6ujEoeMl0gkiawtgZyIVzUOGTORSBLZWgLpidYEDhk3kUgSWVoCOYrVFA4ZO5FIEslbAulEahKHjJ9IJAm0yYpAdlGaxrGbQyASSSJZSyCbKF3g2Mxj+5tItjGk+lA9EFc4ZFcQiSQR3VYNxCUO2RJEIklEtdUCcY1DtgSRSBKL26dAFndl54VV4JDlIBJJYlFbHZCqcMiWIBJJYnZbFZAqcciWIBJJYlZbDZCqcciWIBJJYnJbBRDi6OyHBEjOr199RaadXt0+XBVIiRSxkPt/vKbEADReMwLJ8+urHyG0HzaZVoHENRDiGNC5AAlwNCG8Dg+/LmpA4hYIcTzs4sGPM5Ac4ZBu3SNxCYQ4ZP9OaCcgOYFDOneNxB0Q4pB9O6MdQDKCQy7iFokXINuFIo5tDMs+9CCZiEOu5xKJGyDEIfs0ou0gmYlDLuoOiRsgTdN8klViG5EAkFxf3XZOq+Z25gqJGyB/te3HNoSfgb9SJHAR2YkbJG6A/Pv+5o5IIrd12pe7QOIGCNY2DxL0zFqYgHkkroBgEYkEKagq00jcAcHWIBKkoKrMInEJBFuDSJCCqjKJxC0QbA0iQQqqyhwS10CwNQTJ5vHdpnT9rnM0ppC4B4I9eN+c4T8ixp7toytWmgTMIHEPBH/7LYT2Q5p1ZS8JEzCBxDUQ4ki4nfN0pR6JWyDEkWdHZ+hVNRKXQIrhaNrPAZVhF83t0tjz1SJxB6QYjs2ObO/DP7/f3nw5a9uXhLIJZN5vlUhcASmJo7sXcLS8hxICj5fD5F/qkLgBogVHdysAyuanyRv+NOmmMvpYFRIXQDTikG0AJPufJnx/IrGMtWqQmAeiGUd3F3ShtCFY/otdYaVfKpCYBmIFR3dDAcqfd7/etG37cfN1vj/ZhDDwuzgSs0As4uhuhD/vb/7m+5NuIicfF0ViEoh1HLIV8NOE708kjcG2GBJzQLzg6G6HAyg8Fu5G031cBIkpIB5xdHcAoNR929VNo/fx6kjMAPGOQ7YDkPC2S9LobVdFYgJILTi626ELhcfC3WS2j1dDoh5IjTi2W2D3AVB4LLwL47BZBYlqILXj6O4HHgt309g/zo5ELRDi2G+C/QP8NOH7k30c8mAaEnn2zFYlEOIYXsUDKDwWRljZkKgDQhxY72kFKDwW3meVBYkqIMSxX+zJD4CEt137uJIjUQOEOPaLvOhBF0rlx8JJkagAQhyLTPS+CFB4LBy2SF58u4z+/0KbAqR3IVJ9kThSJXnYT+3Hwm3bfsEfFoepzP+sKBDimL9gc16BDVLj+5MNjo/4A2JOVqeeWwwIcZxakvRfP4Di/Fg4JQ6sRBEgxIHo1y9A8XwsnBoHVmh1IMSB2MsVkHi87cqBA6u0KpCnODAEVokEulCsHwvnwoF1WQ0IcSBufQUolo+Fc+LAaq0ChDgQte7CqY+19ye5cWDFsgMhDsRso/DTxMZIQ1gDB7LICoQ4ELGNevbt8vX59VUb2uaz9hGvhQM5ZANSHAdmxxpNAP9zjOfXVz/OmubH6JMVPGFNHJhuFiDEgWh1F2Ccf7/8dN80t00Ir4OBX2vjQCTJgRAHYtVdAsPC7ZQkWQIHrp0UCHEgUr21e59xawkG0iyFA9dOBoQ4EKfO2t5OXb/6unufcaFzlP2jKokDI0oCpDYcCM5K7W+nQvvByphlnKVxYBzRQPCn0+ZU2lz4mLzn2t1OtdZup2RNNODAWKKB4D8ubf4L7Et0xiqfAP7AsnRs25eYFhwYWzQQdEIkSKFsAYbcTlk5tu1LTBMOjC8JEHREJEihTAkMq7dTkpo2HBhXMiDojEiQQlTNevHufYa5Y9u+SWrEgXEmBYIOiQQp5K3t7ZTRY9u+ZLTiwFiTA0GnRIIU8tT+dsrgsW1fIppxYLxZgKBjIkEK6Wp3O2X22LYvCe04MOZsQNA5kSCFuMLtlPVj274ELODAuLMCwQWIBCnML8CQ26k0x7bzx5DrFVZwYP7ZgeAiRIIUppfAsH5s2zdjSzgw/lWA4EJEghSGa/c+w8Wxbd9MreHAHFYDgosRCVJ4WtvbKUfHtk9nGFb7O+R914752qpAMFAiQQqPtb+dcnJs+zizx0cWf3LI6FcHggsTSQi72ykfx7ZY1BNlGQemdIYPJapWJLid8nhs27eHrOPAnIoBwcVrQgIYcjvl7dgWa3lcHnBgTkWBYAA1IBEYHo9tsYbH5QUH5lUcCAbhFcnufYbbY1us3XF5woG5qQCCgXhCsr2dcn5sizU7rhw4jq+x9udqgGDiHpDsb6ccH9tirY7LIw7MURUQDMgykqZpvtbyPgNrJeUVB+anDggGZRkJxl9TecaBdVQJBAMjEqSgu7zjQPpqgWBwRIIUdJYDHJOCVQ0EMyASpKCu7vAvUqkbVYYBqQeCORMJUlBVF+fXV7eqRpRpMCaAYO5EghRUVRVIzADB1iASpKCq3CMxBQRbg0iQgqpyjWQZkMLrQySFF+Dp5d0iMQkE60MkSEFVuURiFgi2BpEgBVXlDolpINgaCZHcoT9WdAKukJgHguWMRdKG8PP3u18vQ9N+Rn+suATu2/ZjXA96Xq0OyNJoliJpNzj+vPv1Btf9/fbmC5EgieW1wfHmv/c3P5f3oOuVboAg1rlIujjwehSRIIVl5Q0HUnAFBBOaiqQPB16PIhKkMK884kAC7oBgUmNIhnDg9SgiQQrTyisOzN4lEEzsFJIpOPB6FJEgheHyjAMzdwsEkztCEubgwOtRRIIU+ss7DszaNRBMUJAswYHXo4gEKRxWDTgwY/dAMEkgkaNcfL6kiOQxtVpwYMZVAMFEUxSRhFATDuwZAkEKM6pmJLXhwLYgEKQws54imdmBwafXiAPLRCBIYUHVhKRWHNgWBIIUFlYNSGrGgW1BIEghojwjqR0HtgWBIIXI8oiEOB42BYE85BD9MRuS6JHN74A4HjMjkMcsoh95QEIch9uAQA7ziP7MMhLieLr8BPI0k+ivWERCHP3LTiD9uUR/1RIS4ji93ARyOpvo72hHggkSB1I4XQRyOpsk39GMhDjGl5hAxjOKfoZGJMQxbVkJZFpO0c/ShIQ4pi8ngUzPKvqZGpAQx7xlJJB5eUU/uySSFXFE56SlAwIpsBIlkBDHsoUmkGW5Rb9qTSTEsXy5CGR5dtGvXAMJccQtE4HE5Rf96pxIiCN6eQKBxGcY3UMOJH5xRMc9qwMCmRVXvienREIc6daJQNJlGd1TCiTEEb0MBx0QyEEc5T+JQUIc6dePQNJnGt3jEiTEER17bwcE0htL+S/OQUIcidarpxsC6QlFy5emICGOvKtFIHnzje59CAlxRMc72gGBjEZU/gl9SIhjnXUhkHVyjr5KFwlxRMc5uQMCmRxV+ScCyVnbvvT075CXT3V4BKmADF+F302WAP61rGSdsaPRBAhkNCI+oeYECKTm1efcRxMgkNGI+ISaEyCQmlefcx9NwACQ0TnwCUwgWwIEki1aduwhAQLxsIqcQ7YECCRbtOzYQwIE4mEVOYdsCdQNJFus7NhLAgTiZSU5jywJEEiWWNmplwQIxMtKch5ZEiCQLLGyUy8JEEimlWS3PhL4HwAA//9O44MMAAAABklEQVQDAGCL7+uOGrzfAAAAAElFTkSuQmCC\";var ei=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAO8AAADICAYAAAAA2bY3AAAQAElEQVR4AexdbZLbNhYENTnE1marlv7l+Aje1NaONgex5gZzgxnfwDeYyUESTVUq9hG8+8vaqnUqh4gHeQ9DWR9DSADZIAGyVaREgfh4aKCJhyZELQxfRIAIFIkAyVtks9FoImAMycteQAQKRYDkLbThaDYRIHl3fYBHRKAoBEjeopqLxhKBHQIk7w4LHhGBohAgeYtqLhpLBHYIkLw7LHi0Q4BHBSBA8hbQSDSRCLQhQPK2ocIwIlAAAiRvAY1EE4lAGwIkbxsqDCMCOwSyPSJ5s20aGkYETiNA8p7Gh2eJQLYIkLzZNg0NIwKnESB5T+PDs0QgWwRGIG+2WNAwIlAUAiRvUc1FY4nADgGSd4cFj4hAUQiQvEU1F40lAjsESN4dFiMcsUgi0B0Bkrc7dkxJBEZFgOQdFX4WTgS6I0DydseOKYnAqAiQvKPCz8J3CPAoFgGSNxYxxicCmSBA8mbSECnNuP6wrq9/WV/qZ8pymPewCJC8w+I9WGlKVNlvrt//bI21n8yFXeunfP/kwoXQgxnDgpIgQPImgXXcTK9//WmlRJX9tsWS2oVbu3bxWiIwaGwEwsonecNwKiaWjqqmqu4CDK4l3o2LHxCZUfJDgOTNr006W+SIaG3baOvLU0fhFUdgHzx5hy/yNo/WhSKggpRzh0MT7OJtR+B6F8SjEhAgeUtopRAbVZAKidceR0fgEFe7PTVDR0FgHuQdBdrhChUFeQ0o7ZLuMwDFAbMgeQcEO0VRzl025tIgXlWlAlaNyIp5pEeA5E2PcdoSLuwNsAAlLjI/oGnM6hgBkvcYkYK+N24uZtTd1tvaVTOab0P4mSkCJG+mDXPOLLktVMt92niR6VzGev7CpslX8+YOQ4DkhUE5cEY2KcHqZlQfuFIsLgYBkjcGrUziNm4t1l0+rpuIV8dB/J4XAiRvXu0RZg1WpPKVWYtrTvfZh04G4SRvBo0QY4IQStXgtKPu1iBrL5tRfhsyrc/Ca0PyFtSAQlxdCRWzdrlv7WpD8aovhsnSk7zJoE2QcVqRymcwxSsfMiOHk7wjN0Bo8Y37Ooy7fGwUxatjRLL4TvJm0QwBRgwjUvkMoXjlQ2bEcCh5R6zHpIuWue5wIpUPSYpXPmRGCyd5R4M+rGAh7tAilc8wilc+ZEYKJ3lHAj642HFEKp95FK98yIwQTvKOAHpokaOKVD4jKV75kBk8nORNBDkk23FFKl8VKF75kBk4nOQdGPDQ4mSuO75I5TOW4pUPmUHDSd5B4Y4oLO4pkBEZQ6KqeKUXF0hmzKQbAiRvN9ySpgI9k+rQxqq6Nbofhvb5xmde9UEPkJbkBYCIzCKJSPWlWr57vXyru7H2CmZvoHgFK48ZHSBA8h7AkcEXtEhVVffv/rl82Nbs3fc/3MsIfL/93vOzlrk5fzbYE8SuyUnersglSNc8vQK5fnkjo23bSPsWZj7FKxiUsRmRvLGIpYwf9h9D4RZ8qdqIa4TQG6D7TPEqvEWgMUleKJzdM0vgfj7su8vPLFss1JXePAvvFkDxKhA3ZLQFMjPm1Q0BJ1JZu+qW2pOqah91t7Hd6OsZmbdxoj4pXkXBhYhM8iJQ7JsHXqS6deQ8Y1czMusIfCZm0GmKV0Ew4SKRvDgsO+WUSKQKF6TOjNBRlaJ4FQVX38gkb18E+6YfSKTymelGaNziDYpXPqAThJdO3gSQDJfl4CKVv2o/yimKVwJCSRvJO1JrjSFS+arqRl9rw11tX0bbcIpXWySSfpK8SeE9kflIIpXPIrfyyhiKV6acF8k7QluNLlL56kzxyodMluEk7xjNkkak6l0T5z5XFWzds0F7F71rOK0MSN6B2zMjkcpXc9zc15hLN7f3lcTwXgiQvL3gi0vsOvLAK6niLDTodc9GRt+7WBsYPwwBkjcMJ0wstBsp92edq4uxbpfL07pnpHjFp27s0IUdkbwwKE9nlK1I1WK2uyB8qXDus3gbMl2oW4pKFTSLfEneoZoZfe8T+aOCFgzQ655NXs+fbqlxeUEk7wBtJqOOzvuQI8/pn/uh6oS8dWQoXqGaZZsPybtFItGnEFf/rmQFzR7p0p4wzLnPMq8+ESXuFP/rNw6vM7FJ3jMA9T6NdhflPmzj0vY2LTAD5Lpn/dkgxatA4M9FCyTvuWx4vg2BBCKV3sppfbRNW/mIMDf6Itc9U7xCNIvLg+R1MCR6w4tUy0SWnswWve5ZCuPoKyD03Ujevgh60stcVzto7TndJXgYkcpnGVK80tH3lzXyKZk+qycdTvImaF4hropUt9CsBxKpfDY791nm277z0eEUr6IhO05A8h4jcvZ7QITyRSpfJXELN4ypG03AVxbDzyBA8p4BKPa0W79sDNQllFFvUJHKeF5ix8ZYi7NFNAHnpXjKY/BpBEje0/jEn0W7g0iyxNfmeQrwumcpQLUB+eAWiwDJG4vYifgyimhHrE9EiT310Ci9semSxXejL3L+be2q8VaS2TzVjEleUMsKcScnUvmgcYtEnHjlixEZjvZWIosvNTrJi2q56YpUPoQoXvmQGSic5AUA3bh9kxSpfPA499lixStfWQxvR4DkbcclLhT9I3skKeJqEhcbLF7J1OMuzoB5xyZ5e7Z/c68SOepmJ1L5IHKjL1a8KviZVz6U0oWTvH2xxT8JEjmX7Fu7s+mdeGUM7JE5Bu3FmOm+SN4ebXv9/ud1j+TPk4qC25Dh+bmcQ5Drno25bLyZnGuchW0kb8dmSCFSiSlFjbpir9uc+4z80X5V6f1ylzff/AiQvH5sTp9Bu3ciUjkSnC41+uzf7j5eHu/RmYQlQP9on+LVGdzzJe8Zw8c83bh1SJFqg15J9e3dx9W39//5ZKtqfbxL+FrP/+XuY43C0V14rMV5DtZSvDrTOCTvGYBaT+NFKtxifzFYyWmebPSR81LPX1TVJx2VJQlkay5AFK8gaJ7PhOQ9j9FBDPi9SLBI5YhrzKUJfFkZmZEjsFwUkBcijr4n2pHkPQHO8SknUlm7Og7v+R3mav71x/+q0BNM3K3dMgKvUQR27rNckLZ59/7kumcvhCSvF5qWE2iRShRa19lbijoICvii7m9lbdend9QXEaN1gDmwC5KUpU+cpHglQBxvJO8xIp7vSUSq10tYJxf3t18Hr6o3nqpHB7sLkrU495niVWsbkLytsLQEou89Av+upHGX6xarY4IuUa6zKxS87pkrrxyqB28k7wEc7V8akaovOfYzhz0JUgnXw13etwl67EZf5LpnYyheHbUQyXsEyPHXJCIVcDmhiE393OW9Cv9+9Wqz97X3oVvqiRavels1nQxI3nNtmblIJeZHq8uSpm2DEnevANi8XvJU8UoVdTnkRvKe6AOTF6kO6l6hFlcc5OrcZ6x4tZJpTH1QyEy/kLynGn76ItXX2lf2Udcmf/0OPXgSr1AjuxKXo680EMkrILRtcnXXDqIdpe10l7CcRarN/69eJRl5FSg3+gLVdWPtymkRmvmM98WM6+6tuhC3lg7SdcFDe75A5RUpUqmxlQXek9UMW3YnXhmDu0Bw5ZXhyGtaXvgnQd42nbelsLggXUklKVAilWRlHlKOulrA1x2oskuesxevSF7pBftb444hybERtxGmuNqnXwvtm9zr+MsAo+7WQMFhY6oK59FYcZ8/rJFTm62pRXySvMfNhHbHgHM90EqqrzWWC8Et+t7u18z9ByqMbfyno84ocVWbiEo0lcgk715LylxXO4J2iL3QXodZi1S/vXkJ8whCUXKjr7W4cnX0/WWN9JRCqzJ6PJK3aQIhbuYi1UIvLI21/T8scuVTpDngH+0bg/aWIuszVnSSd4s8XqS6x4pUdrU1FfC5GWPUPbAbLV79+hMSnwNTc/1C8krLJBCpjLiHsJ/EySgJW78s1TUiUi31c8xd8NmIeHUPs6Gqbpz3BMsw/4xIXm0j9Ppla2HEHUukUlgG2HFzX2NUq4BOLUzmr9mTV67W2uBIwQP2dyUJfu43vru8Rwg3+gIvdMbKraMZiVezJ680OO6+o3ZM4EqqxWLxRrNE7XZEkcpbh6d1z1x55QXIf2LW5M3570qmPupuu6QbfYEXPMm3bn4NJofT3mZL3txFqouqWiO73hDrl7va26jyuNFXxKuutrSlyzVstuSVe4M618W1i7VZi1SDrV/uiij61tGHNVSh71qtlOlmSd7GraJIlbJnRebt3GfsuufJP/NqluSV+4vYqzJwzjYLkcpPbOy6Z/QtQL/do5yZHXnl1hCWuKLgNnO23g04F5HKB5Qbfa1F3vud9H/9jkFeX9slD3cilYUuM1SbYZ1NRCrohSVnkUqBa9vh654nLF7NirwpRCo3WrT1wsiwZiUVcB5e3WcvUvkwonjlQ+YgfDbknZtI9Xn1EqZ+7/cYmXa4J1jI541i6ryZ/QiAY3dBlOkIIKunLCb6dymzIS9Fqqd+3PXdkfX9z5+Mtbrfyuetw/TCrq8lXIncNW9POth0RPKv4V6XZDr2NgvySseDziWl06J+7mdyF6kEu1rIuXZkfVr839Zna8HkTuLC7p270ddapPdwmcJLaANjqLDJk9c1mLXo33rCRoWcRSohYy2k/SSdMWwubu2tI7okgGxc93wSxsmTF+4uVdWtGxVOwhp28tu7j3pRCSNGWJbYJ0F2e0AB7PaMwxl4D10grOWChPXCJNOxtkmTt5mHIcmxkQ4FGXXVXVZXE9nwn1ffwX5k34yg3bAD3p5x99DR4tVEnjg5afIKOWBzMEcy4JMgE6ykunU2At7cVMOYbsQ17lU3ebgvgW+nokEumE0BtXxi+4VkOMY2WfKKe6QNpA2FwnU+T4JEPNBt8QjDXrydjcy9ceKVaCDgiwuqj0XlM0nyCnFVaIGNRA5R4MKBzEWqO6kvjHiSF2ajePUMx0mSV67S2gGfVbZzAFCkyvnvSpqLnoponaFKldCNvmjxqvAnTk6OvI071Ge+dtz/YCKVZmxz/ruSbuqyVuv5/rjYPA/sF+LEK2MeDOolwpq7YKHyw+UTlNMiKFZJkRDztf36AkWqZv0yzCWVCwHs70rQynxDtH0kMcfA6YsYpG2h2ogclrdNirxyFdWG0AZBtcR8RCoZhVCgicp/D8vrKCPnPss05ii4+9eC1z1PhrxCXIpUHbuwYIe96P1h9Ef1Ha0JSqb5o9zyGr6QJ6gK/SNNhrwUqbp1BiEu+qIH81Z8NXKjr7XIe7+wVWE+m1OET4K850WqaOgoUkVD1iTAKsJNps8/+KN9YyZBXnF7sLeG5iJSPf27AE6ZryrYr62e07UlBCxeiReC7UctJiODiievAI6dr8mtCJRSquuXK2uRi0Wwf1eCVubTz3UP+r5zn+WCcRDY50th4lXR5BXioudrxgDdPvT6ZZnXw+Z5gh32oickQl30IvkHw0TKLUq8Kpq80pmxbg6wAyYYdR8+X70C3IIxRoiLv+gNPOoK0dwGH32NuWw0I2r0sgAABSFJREFUFJd/zm/FkrcBGDdfk1aSjgBb/H4B/ruSL9bCbINf9IBTDWmGLhty9DWioahX0sWOQdMUS144wF+qJQr5rFdSoUUqBa2qUPdcNbfoXS66Wj5u2aQx+qP9OtqQgRMUSV70Uj7BHHZvMoG7nLdIJeDJSD5qR3fTAGOQXlhtjHkje9ZbkeQ14MX9OYtUVubhqB4knVzdQe2YqCy3+Vxe6xMkP6zvpIw7vbgOsn9Y30h5N3Lx0OdsmfjXiRTWrk6czeJUceSVxpqTSIUddbG3rY47cC0kWrldL65D7Fof3Y8twXxPcZHDWNbkUhR5nUgFviLKfAkmBIlIBb2wiEgFm4fDL3pNB5ryh2CWNYGLIi9cpLIWRlyd60pHhs27bFXhfu6nD1yz+buBgl9e2x+G5DWAl86hJBsYOSSvh2Z9rBz238CjLtpdhnoE/dFiDggEsCMvwiJfHlX1xneqUzhwJVWCUReyGENxaVw/5EVPs+WeAQLlkNcYXAcUBRe5lA+8DBI76j4+4nAzM3t9Y/T+scn1VQR5G5cZhiFSpNJRF/njA8kLNg93gC0W/3KffItGQPoJyRuN2nGCxeLvx0Gdv1uLJUdnQ54ntCJSwf9T11Koeo50UAhyxVZQgbGRihh5pVK17IgNKlKpQd8Y026biX5h3WUp3t1ak09uHRCwVh+10yHhcElKIS/GfQGKVOgmsjIPR+dpMp+zwesLzBB5JwJo1kFWZZD38fF/B1Z3+SLkQIpUWxNAbi581FX7cp+zqY1Z7jJ9ydKuI6MKIe+i98grHTnlXLeXfciVVEftq1+zn7upkRntD9JXsD8xTFS5RaJ8odm6EVNGzs6ZAn/u12ZDH5dX0sJWUrXZZrDPeWot4mxgOREe3v3j37AlqamrXQR5GxC6XQ3FBXLkbzJJ8fHbm5dqW4cRrrpv0qYwy+Upo8hGCIx8jpbLd4JvRRFX8S+GvE0nfCFGb2QP26y9knRKrLD4PWKJ66tueTCBdcT9vHqpaXqUGpz0RxLYi9XGiGdW0oi7rUkx5FWDhYgb6YRL2c+NJE8N8v0PsGWGWv6p/ferV5vPq++WSkqJt5Hdt20qa5epR9z9whU32d8auZhJePAFRuJOedtoPxLSvkjtmaUCsSjyKgjSCTeyvxXgX7jOqHPh3X4rjVHJPlqDKCmFxC+UoMZUevFQsshe3WuYngMp1Cb2pbc/BBu9+O2wM0Zsc/vGGDPl/UH6zL3suz7yevnWDP0Cllccebd1FwJvXGd8vVTXeLtn0xhKUHWLhazLp/3llYZt7R/z8wA7EWiU0LK/mPi+lHprP8mmj/TtA8WSt2/FmZ4IlI4AyVt6C9L+2SJA8s626Vnx0hEonrylNwDtJwJdESB5uyLHdERgZARI3pEbgMUTga4IkLxdkWM6IjAyAiTvyA2ALJ55zQsBknde7c3aTggBkndCjcmqzAsBknde7c3aTggBkndCjcmq7BCYwxHJO4dWZh0niQDJO8lmZaXmgADJO4dWZh0niQDJO8lmZaXmgEAoeeeABetIBIpCgOQtqrloLBHYIUDy7rDgEREoCgGSt6jmorFEYIcAybvDIvSI8YhAFgiQvFk0A40gAvEIkLzxmDEFEcgCAZI3i2agEUQgHgGSNx4zptghwKMRESB5RwSfRROBPgiQvH3QY1oiMCICJO+I4LNoItAHAZK3D3pMSwR2CAx+RPIODjkLJAIYBEheDI7MhQgMjgDJOzjkLJAIYBD4EwAA///Fol1bAAAABklEQVQDADi0p/r9hNzAAAAAAElFTkSuQmCC\";var ti=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAMAAABrrFhUAAABOFBMVEVHcEy97COy3y1yoi603zhfjlp3pTJ4p0mpz27a6tcuY6Gz4S9pmS297CQgV50dVJ4nXKGWuuqdzCey4SOevuudwfSLuiVqmNdThMeSwiX///+exPdfjyuZwPSLuyRomCqOtuy04x0lXKZjkyqw4B6OviRxnNaVu+6BsSWVxCKr2h+byiGYxyJSgsKezSGo1x+SwSN5qSdKe71tnSm76hxxoSl1pSh9rSYbU6B+SBgtY6yj0iG+7hyHtySBquGg0CCGruSEtCV8pt13odpqltFZiMdlkc43bLVfjcqKsee56By35h2l1SCt3R5Ddbk+cLU0aK95quuRvPSEsu9roOWycCVdld9NidjBeyk4ec/RiC74+/Hq8efh7cXL2rJ2OwHO3u7Bl2+ty3+tzNbRtZzJ6HSWumCTaUlth7IzAAAAGnRSTlMA3GegQkJuEicObYnMry3To3G00EOj1K3c6e9b4CAAABpASURBVHic7V0JQxrJEsYTEI3GJCa7iqCgEHVRHwi7ind2s3hsEjVegBqJ7v//B6/Pme6ePqZhEHX9BpjTnq5vqquranrGUOgFL3jBC17wghe0HeFOV6DDiHZ1d7oKHUW4q1zu7XQlOomhcqHcFel0LTqHoQJA+U200/XoFGIFjKFOV6RD6N6j+G8awu79vX2Mva7/oiHsndp38abTtXl49E5B7E8RxDpdn4dG5M0Ui3RzfWG496m2nXBXWoBtTxDt7R4CXtRT7UBiovzptM21DAPhC2WIJ2s8ut8cCnjjNyyKdg/tQ/8JuRBdba1lW9F9MAdxOEfhzxnojU0V9goUe0+YgFDvmzkOflSgd2h/j8NTJiAUGl3kYFSB3jf7AqaeNgGh2AELg0ELDwG/ATsOeAZ+n7wHFVs7WENAM60KdKenJHiq3aCDGBR8cxP+rK1pLmdkKD3l7TrT6dGHq2qbMLqJkIPfnNIX6J0DHWUa95dpt+tMHz59Fzo8lnOhup6xOdFroHgGgXRkYd6FvCeMzalw8FRjARa9CwDz8wtwkl5Qobdk8eZZ5BNHFxyMSXbzfSWHzafeC2KEf/lIseS9orE1DZ6+DUToX3LgaQO9uU011N3GE8PYDMLSzIzYBiI5HeY7Uts2oHdyhoLvB8Kj8zo8fTeIomeSglfq7gUtnksLAJq+TjDZw24Of9RhYewZ3VoepQxwWh2DdhF2Dksfl/AXb1jCa8/ADXQQyW4jZEvMVe2bEbGEf/Hsl2ekAEAFsgDb4NPnbuvxEMDhOSkAuNrZbAlykO13NkWQVVyfVOA5WQCIsRKGawX717Xo1xT2FNG/vFwCU9GxguGxbTXW13t0hT1FRIrLCIPOhqwWz6wBAPQUi5CDorNeQmahVMqiicyyWbzy3BoAQF8Rg17awZIGz1D+UDgPpF8prpCIOEyahAylQX1RTxQ9KwjEEehDohbJx53AWvHZGUCMvpV8Pu8Q0F9UYXnw+RlAhHAegRBA9AEAtgs8x3im1x+ghyVgcEWB5yt/qD+RSOQTlIC8HM/R/lNEEpABQoBc/MFnkQdXITwIGcAEhKEyeND/TM0fRU8ikUo5BHjQ86wvP0R/CgBfZC8Bg32Gv34GeAXknyAEpHj8F8QHgATgJY6Aif+I+KDvm5igbv5ECk5A+InB5276GPRMTFA/B3ABMdj/7C0fi76JCeroAC4Ge/r+O9eeoM919IzNPhyO9PX1I/T2RcKPmqswqGgPRH9A1xQU2DM4VlwulWCOCGYJx8ZG+x/jrbJwpL9nbBsmsgBQML8y2CINoMTBlSLOFGACsjBLur4+OTMzFut9TJoQhcKvb8MbHkT+ZRjQg5BucLBJEsL9IEqCETLOIDoqAOVH95iXxmKPxGxGusdAjSbX1+EdL5jJJPKTuB5GNj2WJj7Sj2JEnB2QEoDvJY52vi2Ee0d/AdLDOzuEANoCkAKsoNAOObi+LX20rycFIiTCgEoDIAELC/Njnb1vFon9gu5fIvl5ApYFAkD0AzgwPzoZ7R9MJYj8eZUGTDoE5OY7qAWRUXQne4bTgKxrA3gCIAWpCQMH4X7gFOKjgfj5FWwENATM5zZzo52xBZHRBTTeyyVgXWwCgIL8iqsBCeLwqosEThERP8FqQFFHQC63Od+BdhBBg/4QAUscATINyDsagCiYkPr8oOlP4CMoASsmAj4SAjbXHloJojE47hUxICOAsYJIA4gKYAYmUjLHHzT9CSR/IuUqAFSBoktACXlCggbMIwIONh/UEnQv5HKIANoEZqQaQFUA57xSVANSJPhxrEG0rx9FRClGAYgOuFYQ3TNUErB2cPBwYykjozkiv9MEZiQawHQDCbYJYPkRB8A/AJ7z4CDdQORPuSrANQE9AYujD+QadufgiH+WAZMGYApSCV4FPEjxKsAaAacbYAlY+riArSAhYO7NQzSDyOjmmksApwGTKg1I5OUa4GEg5TECUg3gPCFkBREBi3Pmx7FaRm8OPfniaQOMJ5RVuIKsFZSSkGI7AVcDDK4gS8DcXLsNQezggCMAy7/kaoC8H8Spfyfxp9QBrwrgO4ZyAj5SAjZdAg5H2/qajtiiS0CO7QaJBqzjYMisAWYbkKeuILEBJY0nxBJw2MYXlUTeLC4KGuAxgoIGOK5gnjECE0oVEI2gNBjwdgMcAYdte0sFlB8QcCBogOMIyAjgoyF/vUBCcAWLgiuoJmAREdAuBuATwA4BmxwBS55oSHQFOUdAZQRdCrD8ibw0GOAJwG0AEnCACUinDw/bwUAEPgNOCFgzEoA1AGVEsAb46QhTnC/MNoFlMwFrjgak01NzwTMQWZubYzQgl1P7wkgBSm4TcHzBlCu/igK2G7DTAI6AqamgGYgsHh5C+WUEeKygKRw0aABnBX1qgGMFKQHpYF2iKHwNxBxhwLUBoivIEFDi+0FqA/T94IQoPqcBy4IruCRzBCgBweoAkv+QtgHREzIEA3lGBQyekOMICJ6QzBEwEbAfJAMxaFkZDUAEzCsdAUYDipwGpAy+MKFAtIIKX3hJ4QkRAvaDe3kdfBMMQ8CByRNS5YX9a4A0HCypNSDHa0AaEbDfFZBP2Iu6VrcJUCMwzxkB6gv7jIa0NkASDnqSYp5oyOkGHAL2gnnpQrRryiFA1IB5qSMg0wDOBqgYEGwAEwws6wnYJATMuUYAElAIJDYcmkpLCNiUxMOytGiRswEGX1jIiWnzwjN8TmgNp0R4Avb2AjCE3bBT9doAH02A6wYYV3BC4wh4o6E8pwElVWJ8U6oBhdYNYRTLn5bYgJwxK1h0bg4K0ZCyG/D0goIGSAlgkmKuFcQaUGj5sfuhKVYDNEbQ5Aj46Qa8NoDLCcnTogsSArAGAAYKhRY9wu4pkYBF7Ac4GrCgIKAkSYxTBtQpISYadFWguKIjYF70hNKMDSgU9ltrBF37pAlIPCEtASZHQEZBSswJeTQg6/GF5QS4TaDQ2nv4Yvv7rg2QBwMeAnSOQMrKERBdQTEvrI6GHBWA72FroSeIdOFXWSk1QH1nQKcB8uvv6QbcrKAiGpqRETDnGkFMQCtvM47t+yLAGw5mFUMETIlxhQZIs4LKvLCgAeXm7WAkvb/PtgExJWIKBhRDBPyGg44NKIp5YUNalNEAaATKTccEMSK/1BPSNQFpXph1BJQ5Iewmia6gGA6a8sJcN1Aul5tUgSh+H7C3CUjywktcXlimAawKKI1ASuIMm0fJOGlRLinmEFAoN/kuwu49SoDCE5K5gtsSR8AbDJiygsL9YQUBS2I4KHUEoAo01RFEu/b2NDZA5wtrNMCJBzUqkJBpgHqUzAIJBmQagN5H2uQ7eXv3HAK4eNDOF3ZsAM0LJ4j0qeL97dVVvYZQv7m6ur2/z6eIFghDBPiEQFZJwIGsCUANaModHFIQsCgQoPKFhZyYowFAwpXbq3r1VwQyI6jWAQ+JCTJSinUFl1U5IdYREDVgn9iAcrmJxEB0b0/eBEQCVIlxaV44NZG4v6rxUosALNyvIEMoGgFVUiwnT4tSRwCgCTPYvefRAMYGmDwh/uYYVYGJieWrmlZ4h4Sr2yKgQBoMwCYwacgLpwUCyvZtYKjAE5BmbMABmxdW3BnwDhRLJe7rvqQnqN3e05tD2rywJxriCUBNwL4NRLoKRAUkvvCBkBjXEUBUAGi/nfi4MdyupBKqflA1SESqAdaJke6CSgMkWUHPcFkmGMAEJBL3/nTfA8BB3mqUjDccREbAtg0McQRMSaIhGQGSnBgiILFy1Zz4ELWr5bxqlIwnMS76wlQDrN3hgk4DRAI+MsOEuH4Qh4P5xK3e7usB/hZ0CytmX1hFAKLA0hfqdQngUyKUgDVBA5R5YSB/sYXLT0mo3xaLegKYrKDXF7buCGM8AVwTWBS6QcV4YUpAvtnWLwBSoAoHc0oCCk4bsIuJhzABXldwUUiKGW+N5G8DER+idgvcK2kwMM/7wk5WcJ8hwCoginYVOCOgzgqa8sKJ1tWfo2B5mdWAGTJkXuoLt2IFI4WC2Qr6ujUSqPyIglKJbwIfxWDAmxUsW1vBbt8EqFxB7Ajkg5YfmsP7UlZGwJqaAPtuICYh4FBFgDorGPj1x7i6z25rBokoNKDLZjD9EPrXLuqEgDktCjWgTfLDUGl920yA4AhY5QS6ykQFFFlB/TAhogHF4Oy/B7VbxIB6lIyQFrXsBqL75XITBMxwwUDxvn3yA9SX1n0TULAlIFJQEEDbgMQXRgSsM2nRbZX/E4xfBNvBpGrEuCwYsOkHewtsE+B7Ac2tEVYDSsvK4PcyKNNQu530RQBhwCIl0F2mGuBNCIhpUTkB2WW1Abi8/NlKbMSgejUzw7uCIgH7jA2wICDGEaC5M6DMC5fu1TJeAgSlBNXbGW1WkLUBFo5ArFwQbIA7UIzLCsoGiiECiprsDyQgMCX49UqRFGN84bK1Kzik1wDVeGGXgJKuB7zEsE6QKVC9/WhMixYss2JDjgYIVlBPANMEdNL9IAz8DIqBK9QGvASIrmCrGqC8QewhQKsAVAMuL39YdYg3440bxa7a2oI5MW5BQPSNVAN0wYBAgFayHw4DNkpQ3fp99fPFzo3cdtx5hggwvYB1TggQUEYU8GlRfwRMrm9n9T7gJYOf/pWg/vnz59XV6YsNqR7UNzWJcWsCusq4DfhPi3JZway+k2M04PLcokOcBRqwevEZcJCR0Fa9y20GSgDTBDxZQR0B8PFR/WW95HDuu0NsTEMCVi8uVldBU5AyoA0H7QgQ42HBE9I+QGyIgn6csxrgXwmqXz5j+S8AEatnDQ9x9cVNeTTULg3wjJLBGpA1hMGAADSdY/HPfSvB7OcLOOGf1c9ncfHPqnebirxwwZaAgmgD/BIAVEDrBGACLqnwhAt/XlEDCQ+VAM7gQlJsbHcuAWkxIWBBwFXZ6QYEAph4eE06Tgq2AcP1/HEO5T4/dxUBwI8S3BDBCQWIjh2BgjpuA2mqAs3dGvlUV7mCh0I87E2MT65r4iBCABH//Nyl4tyHV1T97cKDz6I9rKUXRVewbHuDOPphtnqnywurnp9FGrBtyoT9OKe45GZmr2jWSwDELk/BHfvo2J7bDVgEQx8utn6t+yXAkxU0GXWXAAE/TM2gIifgQnCO7hb5hyYKtuFw9P3FRQaY1D3J/VEVAYwGmAyakoDzcwN3NyoCLi5mWQrqUkfAQgMAARcNyICCAEk05OaEzAR8p/J+5+bfz79/19tCQMCZO8EP+sI1XgtqU5KsoEVG6D0sFJRXlybFNMEAGi5rsmaAAGaCP/QXznX0Vc+I3Ojj0HCBqeDM4d2hJy9sR8DF2Z916FmowkHNrRFTS/7x/TsRnOGAzrRKUP3rTAWsDRsO+dU7z50Bi6zwACrzT1ha3SotilxBHwQgafGX/tLZ9+9qr6g6qySA0rDlUFBPCxpgQcBbXNynGqJyyicBxBeeMciPNMDBOT/HM6US7BgIgKhQCupCN2BxY+Tt2ekZ/OygitS90dBiYATIofKKNqCEp/h7enbmLJw6EwSNEWr7XFrU5s7Q2ekpKO30b8RAFSiBbsC08MxAEASolKBCKga/cEYXmM3w92wcEwi112kCexY3R6O4IFAUHt4FCqKPzhnfIxEMAX98l+pA8tSIM/zToAw4TcBqpOAHpzgywA0YVV1WkPWEJo0E/GHEtcIprJgJcHjA2UPIAPaErMYHvCfFnJyeUgbqHhsgJ8BHL3BtEv8PVVhQobVCX36RrJ/gHzD7htyCO6oBViNE3p2eYICC6CDH+t3hoegLS0aL+nCEDARc/6vsByunpFYnpyfuEq3sCVmhP6cVSEGdaIAVAa+Zk5xe0Ut6l1ZpAJcXNrrCegJU6g9Q3WDrdcJIDpZm2XW6FaZP61gDrMaLv+WKcUKU2t2cjoAln7GAjgC1+kMCvp1Y4vQEdAh1+2fnwrsn4FzodPDHDdLq6UUjAcZwWEPA9b+6BlTD9QGfHfi7Q5bwAt1O6oxmcDppVKuwG7R7cmwX/Cn8oB+GAeATLC4agoHmCbjWqD8m4But1wnz+YYkddfA7w7dCrdt3UAG7MbLv/vG4aTh1qJ+aHh60pgRUhFw/a8pH3BC6rPzTQ2y74TZdFK5KZet5A+9Fotlqla9OzjwEuDGw0umnKCCAL36Q4xr5DagYfnIyNtv37bwXx6jDyiBqUjtbg0bAdkwIWM/KCfg+tqcE8x8g9XacupEAbds4V1wB/o9pgKQYy0fGop+Oxbwjb0TU60vbrqJcTEpZlBkhQaY7w/VxDoxtTOsHx/bPj275T0Hdy+qere5qXh+1pQWlhFw7WeswI2aACMqts8MvRNLSAIGuErW71QPEBtuDPz0EKDt/F00WiBgy/YdAq+PkzyOj46PhdvS9bV5+SARvSvk0YDrP1RDPzhUk2KdLPDOUv5QJHmUPDo6PnK+cD1Z4UWrQgqs7wyIGmDo/B3Ut5JJWBP2I1vyroM/syYgWjlCgEUlyRwuCrLV7uYXvGlR/f1xngA/1h+jkXRqRHEsLiW9e9Cm5GtbAkLvmNLYosTb8rW7hQXxDnlWZ9GqHAGa0E9ALSOpjW+8tSbgraqohihd/fbjR/6fjejHyLAE+FV/gCs7iQVYyx+KHsXjcfiFP/gDvnAh47lmmAKXgG1tP+AScO2j86eoZo5oXejErsWdRWavOyXtCQi9i6uQufIMzQAULLFvEtHptUOA2fdlcHOkrE88Tq+VEtY2UEtAPO5pBlALZmacEePaUTKEAFPox6Pa0FRnnHzZJX6vvQ0ERgD9LZjgh87IcrwhucT126VJOl5YN1QSE2AM/XhcHeEqkLrQqtCNdIdzDKkw3W1vAwGS7nl48cFX0gx+hc95z8Cnudb1KoAIsFJ/aAEcwamkcaY+4+McOXHuUIBkU++SesdRPS4sS5UAtYRt9I8W1FYAEOC/8ydo8MJ6KuPdyPHRjAmAbWBch3hDpgRQDe7Xs7oB8z+vLdUf0JrRVsWIplpAKKQnQKkE6BUo9yWlCvz0Ffpx5TVak3+8ybepvTOVq1ICWOeaUsif1g8KtCp/cy0AtAFz0UolCBI3JlU0oZlOEMFPy8v4fDNQ86i3Kv940+9VNbYBCE07CAQtG4DxZLPyhyJ+uEduUfsoaF3+5luATxVAblHb2kGj5QYQb+HNwq+pm+k4xcyMTNQzbAsF1ZujceF8ykl2HPw02wdARGk4geRkQ4/xOBuAwIV2mAIxBBrnIx0ictytC6mNe3GaDIQcvONOypRKNtN18DlKNoLWghonyrh74vH4OFsvpzLeaHA8nmlFfhQS+sbRUbANoWZzciVaaQGgDeiyAjIESMFNBpbnOQHz66tCTcYBjgpk4hnwcSe67v3g6SjTMLwx0h9q46hM4ZTemrgr3I9zVGsKAIBOksmws7g7dz7sxowkYWR9+ePkhEzxzNfZxyxxlaEMtaoAoCfMMIhndHD3JjM3LXFQG09qz8QJra1VpVX5Q9GKuSpeJJMZ5aPORlQbGR/y+0NLfSBRgSSSJ4M+sGL0myHbMu7OZDJJ5mixoXjUWX/1G8kkLQ6f0Tmhc66Mu8s9hq8J/ivre6ISDYgmsTi+IB4Yt7WIQPmDRAAKAJyhVmpwfJwc920PajeZSiUo2SEqgfyzrchWElSr4v6wH88kWalUMoAEgyZUazfxChLfUwqZ2BN6F6R/EYgCABWocEiSrxW2IAkqFqo3N+OZrS1zKXanTW4E9N/WonzVtsjXCluVra2NjQ3IQ+MGMIEBlhrjmQrc4Ud+y9NuBaQAQAW2ggQUFw/pQitbG4GWzp4osH/BHAV1RNXk67ohmW2wB8lE22CP2pAfI/mTDcnqBrPBUw4gNjAFAL7AxhPEbnDyh6K7Gxs7G+jLfjboL7eJru7IamWBHbd4/uTuCekRO/wXb2s5CmDxeufJ4X2Q8odCs7Jz7DK//DYzduGR/g72HrUr3cWvBPYvVzHe7iqxo96lwU7zf6o6N7cSoAXEeN9qXR8Ws4F1gRTRWQ92vau79BMkdp1zKU4hWQ/UAmK8Dlaq9iJgC4gQfT/7CUyzzK+z9omuyycFlDvYIz7RM3gL5TYz1Zj99ClgC4jx9tNTwV+BW0CM93+1qb7cUgAnaUcDgIh++Otx4hO/+HdbGgDE2787JqMF/m5TA4B4//cTQLsaAMKHTktnxp+Bu0As3v752PFbG1wgFq9/67SEevzW1gYA8eG3R40P7ZY/FHnUDHxoWw/ooq/TQuow0H75Q6GB/z1atN0AQERDHzotpwrtNwAY4dYY+CcgcT3lfrB5UU5L6PvnUaLvoeQHZoCc8otQhS/SRWt8ERa+OKtfpAXjTQ9iAB0Gvpjwj/GIgPGg8gN/6KHlM2HkYeUPhUc+B4kvLR74ZeTBDKDDADjtV7cGX7kZXfiq2sge/hV+vjJrwoK7Kj8Q4cHlBwx8fTT4Mvzq4eUPhV51Wm4XHZEfuAOrq6tf8fcrmugP96Xb+N3OTvKn3jLEI9hjv/J/2CH5QWe4+ijwwB0gz8C0U41p8mU28RumV8WVafcod+c0f5BmE1no2PVHDEyvThOsMl92G92wyq6xO9AeZ/Oq8Bd8savsZrzWweuPGZgWxBLE4ERlFoZHRgYgRkaGhZ2rbhHaEvC3o9efYcAGq19HBrh++9WAy4IlOi5/Ewz8MyCpdfjVQDMcPAL5IQO/85PzmXZndOVrDwhaFW7bK6AH4p9Py9bo1Bn/x4sBptJ8PXk+gPgD+pg9PDDMcyeUyH8ei/zAI3JrRYAq7Kzj5ekRPxmLVyP0z0gJbCG/s8U+dPynw6thR3SGBW5teMTn9QoDCvygw90fjzDLgAzDAzbh2qsBQ3G/P5rm70DHgO+Lz5Y3MKwj4TGpP4Xqqo1YXXwGYegeyIt8bJefoH+Yb/+/Dzdz7XlAFkaGXW0ARTZL6EMAXrNhp6KvArtQ4VcOgiryBS94wQte8IIXhP4P4nVznqPTxGMAAAAASUVORK5CYII=\";var ni=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAGXElEQVR4nO2bfYgVVRTAf4nIYxAREZNlMBP7UCwjRKbNJHgSVEK6hWaIpamTylK2biYSERGylYlp5KSFVKSVRGxmBY0t0tZjETOxpbbQWqZYFgmRGAZZlv6413WVd8+deW/eQvR+sH8s99xzZ849c865Hw/q1KlTp06d/y3XjNRAQRy5wBxgJnA9MBFwdHMM9ANngW7guO+4f43Ec9XMAEEcAcwFlgELgekZVfQAh4EDKIPk+nyXyN0AQRyNBh4BWoBbc1J7EtgOHPQddyAnnUCOBtAz3gS0kX2209IDtALteXlELgYI4qgBCFCuPhK0A77vuH3VKqraAEEcLUB9pxOr1ZWRfmCZ77hHq1EyqprOQRytBb5g5F8eYBLwVRBHq6tRUrEHBHH0NCowpSUBjgGdwGmgF7ig28YBU4BZwF3AfGBMBt0tvuO+lkF+iIoMEMTRKuDtlOIngV3AId9xL9iEtf5xwBKgmfSZxPcd962UskNkNkAQR/OBEBhtEf0NFbE/rTRiD8ssrwDTLOIDwL2+436dZYxMBgjiaCLwI9BgEX0d2Ow7bpJFvzCugzLCeovoOWB2lioyqwE+RLmmiYvASt9xP8iiN8P4K4C9yPHhCHB/Wq9LnQWCOLoH+8svrtXLA/iO+y7woB7LxH3AQ2l1pvKAII5GAT8gB6RH9QPWnCCOlgPvCSJngBm+40qGAtJ7QBPyy++zvbwXJqO8MJnuhckUL6wuNPiO+z6wWxCZBqxIoyutATYKbZGlHS9MGoFfgF+BP4BOL0ymphzbRCsq05jYqLOIiNUAQRyNBRoFkS2+4/5javTCpAH4nCsXSI3AZ16Y2FKpEZ1hWgSRmcjPDaTzgEFUji1HD2AMetrV3wDGl2meBcxLMb5EO3BcaF9mU2A1gO+4sR6oHG2+4w4K3ZuARUL7BNv4EjrV7RREFto+g7QxYB3QNez/QVQQ2m/q4IXJOFQJbGIAefbS8glqS60cU/WfkVQG8B23H7gDuBNYCtzkO26zZfbbkCvG3aVioTfN+JZni4EOQWSO1D91ENIv+10aWS9M5gFrBZHfgefSjp2CTlQBVI6ZUseq9gPK4YXJGNTukKR7XalYMGaOCjgttF0ndczdAMCzyFY/WCoWvsx5TCnSiZs1uRrAC5Obga2CyN/Ak3mOqZH2GQpSx4oLkavxwmQU9pVaS6lY6Dc16jXHeuBxVIo8Bmz1HdcWLCueyDw9YDVyYXMUIW1qtqFS522oLbLlQKfeh5AoV2hdQow1uRhAl7ttgkgC+KWi2RuDOJoLbCrT5CJnFFDGMmH0OMjPA3Yhz8ILpWLBuHDRp0l7heeZYRl/ttB2VupYtQG8MFmEKnlNnAJetajZhLzcPmPpL3163VLHqgyQotwdBNaUigXjeV4QR9OB5wUd54E3hf4TkFd9XUJb1R6wDfWNmthdKhaMD6AXKnuRU9VmyxHYEsyZp1uX8UYqNoDe5HhCEOlFrgkAVgF3C+3fAvtMjTptNgv9TavYISoygC53paAFlnI3iKPJqK1uEwmwxrLgWoJcdR4Q2oDKPeAZy8AHS8XCEYuOncj7AS/5jvuzqVHvVEmpt8t33FOWZ8hugDzK3SCOFiJvsXcDL1seZQdy/t9h6Q9U5gG7kINWq6XcHYvaJjMxiHJ945a2PpuUToW7gY+E9iEyGcALk0nAAkGkA3jHomYb8szt8R3XuO8QxNEi1HJbotUSO4bI6gHSzKcpdz3k870I2CL0fwz4GHkRd8h3XFv8GSLrarAX5V7lAuCLpWKhx9QxiKM0mWNDuSN0fTi6HTntAvQBGywyV5DJA/TsrkRVZ8M5gj1obUJthZs45DvuFXk7iCOCOGoCfsL+8heBpbbC52oquiDhhclk4GHgWuB74HCpWDB+c0Ec3Yg6Vjd9H+dRZ3l9Wn486oAzywWJlb7j7k8pO0TNb4rqau0b1LUXE3u0zC2ohU0j2a7INPuOK50VGhkJA6xGffu1YAB1NcaWeYzU1AB69v8EJtdAfT/qm++oRkktdoWH00BtXr4ddRWmo1pFtTbAOVR9kBc9wGLggTxuicLIxIAdwFNVqjmBqu1zvyyd27a4QCsqWK3n8u8D0tCNqi8OACf+M9flTehqbh5wO3ADl38wMYg63e3j8g8murIWNHXq1KlTp06dzPwLV0HTVxeqgZgAAAAASUVORK5CYII=\";var ri=\"data:image/x-icon;base64,AAABAAQAEBAAAAAAIABcAgAARgAAACAgAAAAACAACQYAAKICAAAwMAAAAAAgAIUKAACrCAAAAAAAAAAAIACt4wAAMBMAAIlQTkcNChoKAAAADUlIRFIAAAAQAAAAEAgGAAAAH/P/YQAAAiNJREFUeJxVU01rFEEQfVXTM7NfyRqJX/iBYkA8BD/uCp48KPgHPHmKB8FcPPkf9Cpe8x8E70EQDxHxJC4SEEUNZs3uzs7OdJdU98zubMM0dE3Xq3qvXtPGE0l7/fxlFEcPpbQdAAwAkd/DchI+QDdybKKJLezOaJg+NSv97IXptLdsls8TRIC/43BdVxwBnVTjpEeW0vbibrrVRSZ043lWEDOLOCIQaaXUAHeuMtoJQAQMfgk+fBMfrzoRAosT5wyIjJYkeHRfNY2Bu5sLgLefHN59dWjFVLVFJBAiIm4wBZiAvAAunyRfaTgBRlNgb18QKVJj1SeuiUr1Kcj544TShfO/TPDnSBDP21/cDwCoDhLEU/XPrhEMB/GyGTCZBSrzrAYK+14kXNCqa13g0gmVM4DtHwh+HIoH07sap5oCVR3UP0oLXFwP/GclMC2CDg9uMsY6ZQGsXW7ELHUkgtN99pWdCx2tdgL3VL2QhGQF9npIU8SKxua5wF9BdJy3rjB2vzjcv864doHw6Ha08IOnQEH5aSE++cyxwF85J1Gg8uyewfoKcGqV8OajxeEEvsgSBSKC2mnwW2BdAK3fQWKAn0OgsMDBGDAqaCWkEZFSiLkVO/r8HfR+UM5N0hxxbIJX1Z2GRUR0c84Q5HXUTh6XkxytWIVadlw95qZXnPq/k1A5zl6Zo2F7u4ecuHrOpQjX76LpuDqi+fqci3G+Mxq2t/8DuWnudTgQ75sAAAAASUVORK5CYIKJUE5HDQoaCgAAAA1JSERSAAAAIAAAACAIBgAAAHN6evQAAAXQSURBVHichVdZqFVVGP7+tdfe5xzv4OWmdY00cUoISgmNLDBEqJegCaTAJ18qkIgCISyLIAqKiPtSkE+FEghB+BBRkUgKiQ3ghbp6UStxSr1e73DO2XutP/61h7POPkP/Hfbaa/qn7x82YR8rvE12ze7JytDoypeJaCesWQvmiAEiEBgtovwf5y/ZuPXwKN1EMiA0oYLTzPz5revnPj4zvq4hvN0VD7w+u8zqyqEg0ls4YbBppofJHe2kEmOfXbfl9J1AQQgKCTZOjlGz8ezJdwcv0tZ9XL1p6kfCgermeK4eK7AGERWy59p2Id8IZYblI25OCEiiwWrYnG38vDiobNXTZmF3WKulzIlCsZWvhW9emQtUJ+OcDAuT7vK6M0JA2Jyrx7pW3Ty9sLBbE9MuTmAJCMoWLmtgGZiZy673jJOvLYoIoU6FcFuyi/L3nBQQOJ5Eu2T7ak6aKt9c+C+72X/XivHKYxorlpBjqArNgGbM+OyIwd/XGVFI6fmSNVpjUpw05dLVmpTSEI9zyd85ZwIEqvMNYMMKhZe2a/Sibycspq4yqlFqkX74cYFBStPGN+rCusW0F+oZWGgyNq1SGKoKA0qDhOUiwvQ8Y+IfC6UcdNtCoY8McOoUGyTyevCvJ4wdDwbYtIqQGDhGQtayG38/YfBLAgxUMu2zKO5Gvp7an+wjKCJNeGFbgDsWi+c7KU6Ar3+1zjqOfyZE2arlRKbZyzc98osD22yDsfPTGHeNpgDML5FHIwEmL1oM1ciFoi9412TFJRegH3MHQMaj6xV2Phy0hZSMlQKuzjDeO8wwprXWF38e6eIyb5CHVi5AbIDt9wZ4ZJ2kis40dGuB8eE3BvUEUN5yL6VarBi0YW+d28BSCkMRQNBfDYF7lqm23CAk7jj/L2O2zgiDLoWrmwBedtUF83L8Z1ZoJIzlo4R9T2kMVlKz52ccFgB88oPBj38AlRAwthPQHcUztxCLC/IVz2n+ATH/3UsID63pjn6hkUUWibFp8Sqrnynno78t323cW8/rTwfJtLGMRgysHSOnYXn9+ixw/hq78DNM0KVi1a9EOxf0qrh5gQkD4KPnQ6wbIyTWM78FggA4eNzgzGXGm0+GeOurGEcnLYZrWah64VaYPZtuJSJuLfomk+CXLLeoQlh/J2HpMDmmvgCuCCXA/SsIQ7U0HMUCgoMcwIIZV7jyyuixEAy0u6Atc0mQSAQAy28jDFVbdkqFIOeeS9PsyvBcgzHbAAKCq4Z5dpQz4rqmoUIIX1HdFtUe+qQ+SwJ65xmNx+8LkCSS8ztxoqX4KOC7UwavHoixZkxh/64Ix88Y7PkywYEXQywdIjw9HheJy09m2qu6qX6elLJZ/CnFx3U70raUqJkwSBEu3ABm6sDoACEKgd/+YtQiYOVShaN/WhfONbFMCWxUuMDvQFxrxY7x2AhhuNZZV/zkJUdvzAEVnXVNC4wrM3D5Y77JmGsCUdCqoP45XaTNvLbLj0obkPd3aDyxMXBA6/BfKV9IRBjDCALCFz8ZnDxn8cFzEV47GOPw7wYDFcFMJriX7nXL6injXEUxvzQdl26mlpBmtB/laJfLJi4wbh8mTF1hnL5snWVcBu1yjjo6IndbKof4txaVjvVqifNlC8zHaV0QEq1FgK6mg0SBtQkFgW6DpkCBgWqYAtBNdekXi+7Xk01oIEqLEmeJTCzTFumZ/YW3lLcp0pFlZut6ei9NubDJmlJXLuSZvft/+Zy4SZ4uYjzXFO15MceWgkiKx5Ri5v0qgJK80rd+l1Df1utn0dU212Xs3W9IQ1nhPRLWxpvzCyfCgWrI4Jjc11MX6tVV+IL9H0TctxnH4WA1NPP1EyNBbbz4OOWockhpvcUmIl/c51u3c1yWsZsAEuAqCKFCgmkkxyhJP06VfCLLYOba2W2mEe9ha04xuJFamV1uSDXzy4hcl62lu7Ly0S506ha3Jr8NhjmVNOM9MzfObhOewvs/PZfwfXG3l78AAAAASUVORK5CYIKJUE5HDQoaCgAAAA1JSERSAAAAMAAAADAIBgAAAFcC+YcAAApMSURBVHicrVpdrFVHFf7W7L3vOedeEFqsEPtH2lhtKRZoq2CTxtBapSVFU69BbfXBPvAkPkiM2kqbYoPRqn0wYtLEGBvTSoytIYZGawwaBQsFUo1CoICoQKHA5f6de87es8ya/XNm5sw+FxMnkLvP3jNrvrVm/Xxrn0MoxugoR9u3UybXKzZ31zLhEWi9CqwXEZAwFxOJ4A55QDB3y0cs/xhUzi3WliL8wYVw8oWAuiB1Gor+TIyfvv5kssPHSvaNpZvG3puMjHwfoI+pSIHTDKxTdzcagIT69OpD7i8lb7q9zFypCBRHYK1F053ddPJLb2yZd6jETKOjP4+2b/9UtvQrl+5OWq2XVRzPz6antayl3IRU2dgGfzmKeMBFWnWSNTr3i2D5x3InbjVVlqYXudNdt/+bw7sEu4ik5ZvbNwLRXqJonu7OpKRUbAmwBBZK5A96o0aZmkPoW0YDnttrmXUaJc1Y63QMM9kd+7c2jyp5oFPeFg0lBXiKrSXG8rmHW7byd6txEdu6pQQ/gsg71LohzxSpOOu0U4M14m3m/rKvtdeooaFfc3dGkyJlgq8QlZ9c+ckF6VvHib8AmEoxE+CDgXLgniOHWVPcULrTuT8G6UdJEbPKnzlwA+B9gcaqxY00s9XvU898iqM8qIIuQ762niF6YcgUEYP40RhEKznLCAxVhqs9eZC58gNipBnQSYErRvLPxgzlkVgi5UQvTooShMg4LwaeRvmc/BsMxWkmm6wUf18oqTI3dr+f50fmWsC2mCgRK2DL+gQrb6RCKT8hMjSLDwO7/qHxxEupWCuINqSQ7X7FxpSnd70wJlKRY63isrKw/K2JNLGiWPSB2yKsXRbNEsL5WLciwjM7M0zMsDmJPrmzHYkjlaK4b1HID11PqJ6Lgs0EePMs49hZjavmulFc6V1YVlztx7synJ9kjDTy00Ixabay0v+sSDDLH28XwRueHa6QvaGIcW6CkUSEuc1iaRGNpScVycxcT3UYzSSPEbIKnI/NsWmgAJYy4z6gxcRyw8G5mTE5w/jE7RFuX6yQ6QAY8dRisz1HNHYdYhMLeSy6rlqlGLjDB59PNbmop0DvgRW41mn4nEUpYGIa+NBNEb77maR/h8CW6z/AWP2tDsbbeTqFtUfdCdvWr7ihdWxF9u9XokRrW8qfowHMbQ06I3swDp5kjLfzE3DSKzwXtlcFXMfBsezr08J7K5+0BTonEYgFyfkzXWDVexQWziMIYSwDvhJkWfEPh7QJ4EZsHMCxqK1AyGUc0L2KDClkQVpQyQhQoFKJ6Q5w5Qjh9EXGv8/nKMrMYuqZZYRTFxntLjDcLGuF6+/sb+KYvYaKkRcDVTmw/SbgIeICM13G4qsIP/x8gusWzO5GJ84xHt7WxaXC/0slyEJUy0xr3ConeNYEp+qWVduWVlzLoqkOcO8tEa5bUHCCWcb17yQ0h4qM5GU8lC4aoquBYbt7XILu+WMgH5S3itsCYqQB/O7vGnfekBk30oHaWx6kxMaLezL86zxjeIjMels2l2ts41mY6oahjsseaxum4Aeqk9oCQaw148KUZBRCIi5hB6WnjAS6zDEZK2AfCoKrAW0FvGG3Do/3K2BAqAHPbHjQlocS3HptkX38BaUBCDj8H8YzO1N0de5+wT2on0b3uJsrr5ojRNLhLH7ODAwBPjYBfOHDER6+K74s9rX8esKOgxleO8bmFEx/HtqCLEt59ahGTyh2XMUVGYopmRtFwPkJIJstYRdj3zGNQ6clbnLzz5ZlMMtn+2PVvDsObudwD32WAXMawC9ey7DveIa5kteD1pR8zxiKCCffZkx3GDNpfoISyGWAkxewTlGz9g0OIXNVEzjA+V1/zKvv6pvJVN+0hsCVKw+e0BibYsxpEta8P8KZMY19xxkNUYLdAlZWV0Fk4wi5Wql4LN2TzQQDc6sh1pNC9NCdEZ7+ZB8PDCpwYZJxz9YZfPmBGOs/GGF8mrHmOx2MS0OjXEpRkPC+VO72di4lMGTOL2D2Sv92NwVWXHeZFQcwgBsJYc1SKXiEo28B4zO9bETe3nY/0XffAy+jvx+wPzh8hXP22QR+9PsMF6byYubXPTnP0gmE+7y0T+PUBY0nfpliyTUKP/tTZjqzsqlJixSsygRBQDfL6XpwVEyyKMCmkNUlfEsbASVWEwI3FId5unNdKC4tp/yfbANnxxmthNBqlN0ZMH+E0EkZqc4LojRIVw4D013JcuK2A07a1AEbsK9laVMSy5ARftdNCo+vizF/uPTYfgE2xRHakOm8gT98SuOLz3fNyYghPrI0wlfXxjh+TmPj811cmgY+vSrChtUxDpzQ2PRCdyB4N43aJ1NxYrdSCpiN98UB9jlbPOTP77ghwrvekeLQKclKwOaPx1gwR94nyUsWwqJ5wDfWCcMnLLm6R/O9Am8BLSqxu42dlItXKkXKkiz0m79mWDQ/Nu6kQtIDugj1EEG/2p+aNxhzW+LnhL3HNG69RuHZV1KMTTOGEsLe44wFI4ynXk7RyYCRODdcaJjtlj/WrtKug8IJe3EjxkRbmnixGJkgCzUmfZyoVEID5yfzeBDF06KSXTEndye5Fr+XxDDcIJO98iThvU2zkVYx4ON3ToHMqxPx/3uWRLj3FmUsEuzebCX8IV/zRLkisrF5KdAGfvLHFP9sM+6/LTZv9l7YneHwGTbZTgJ7EKWWR5UCVfLwTCgbtTvAzVcr/OBzyawc/X8bZOjFjgMZvvdZgSLvTAmbXuyaU3AKnLWv3Qg5MZDfs7NJmUJhGvH/L/gcyJ6jGteapJCn09/+LTNpOsgTQ0wh9Gau5BnVLemBU8aKxcpkoLItrEc2uEuRP5IETr7N+MubGq0h4O73RXhrjPH6CZ2TPb8j80hmlaFqXy36zi198AybKll9+1jWaEdZ69WEuZEHTM55Sp6TjyTKKbYYRGJM3Ge46JsrTAEctjFi1jpTkYqCk+zJLDQ6d6MevICZy12rQCcPTK/0MfdOY94wgXVefUOn5lveiNE6E1JwBpS8G9zJD622R5F3/D1gAxh0tZtNEv348bNYlnk9eIjIVXKZVZRQprtn5Dux3RSZxky4WtVo9OvRQ+DXLn8DpyWs0bTOAFwnmx2jaIoi0WO3IlbPsZjW+nLLc7OBu85GrM3zclJNq8W+LMsATmz2WAEZzEo9pw483diZdduvRq2m0lqnIfcfjG7QhMHCqC6SvOzjEgWdJsNNlXXarx54qrHT0BmV0Yas0x2LkoYEtffbggHCA752Oafm9CQU2MP2f/ta61QljVh3umMU0waDfXR0u9q/tXUkbbcfZNYXo+FWrLXWXPw4oa+VCxyJn8DKb/cvS1EOKOA0ZMwGC7OOh1uxYNTt9MH9T7aOCPa+H3vErdazpKKPklJgSQ06DQCs3TOolD+nL4uRl7UsxycVQRU/9tA6eyWdmt74xretH3uUU/t+bsN4BKxXMeTnNpQ4ZdDI7u3qd2E+Q+0B9V/+u/Qkf+Tk3S6ITkOp2p/b/BdnsPsVO74VDwAAAABJRU5ErkJggolQTkcNChoKAAAADUlIRFIAAAEAAAABAAgGAAAAXHKoZgAA43RJREFUeJzt/QnYrVlVHorO71t/s/euhqrCAgRpBJQLKBTSiNggnJPYJdFoipOD6cxJ7o03yZMnjT1aKaMY4z05J8fk6jnmHE1imkupsUs0MYgkGgmCFCCliIBAULoCqtl7/81a33efOcd4x3jHmHNtSmOT3OcuqP2v9TWzGXM07xxjzDmn8vv5Wdfp9rvKXL/e9ZJpx7c+9WvXmw+Pz5+yrutTy7I8rZTypLWsj52m8vCyloeVtVwqUzkq0zRPtaiu7FKmqZRF/+IBPFcv1Rvruur3elMerH+mekHfq++v9UWuaFDpRF9quf0duTbVermI2ga9hhtWll9Sku2r3hs2Tas+J0+ha5N0jF4EcbyS+p6RQq+vrQwtqxEjdbY+wXSi9kh52t9JXqzltTetyVqGXuO6hS46RtrAVZ9HuYEwgw93USlEbZi0L3G8fGxSf7Q8K2NtLHZW1nJlmtf71rXcO83Te8pS3l7mw3um7fLL58vhW9/8t6ePcJtuf8W6qX/vur0sSpjflw/z2e/d5451vv3pZWKhf94d643n8/a5ZVteOE3LZyxLedo0rR8/Hx43nqufdanjvJSy7NpfH35nIPusJOCNb6L0Qik05kIF4SMc3QkaBLAJWRZT5Y6+IfqHWZBbI0zdrinXcZv4OVYmqB9lsahAklxOWbJQTJDkXBkI5GVquyAKVLoJS+v+kosNhVq5Ri9+RjQVxDO1DqoIvaXybXzzXyhzVTAdy69DMRiOexvGVYbRrIb0Yap2bJ6rPSr1K+iwnJ1UDvzNeZruWUv5+VLmVx/OB7/w2jun+1kZ3PWWspY7p0q5/99VALffvm7uepp39Nlfsz5se+Hs86Zl+tJS1hfOh0ePmg9KWXelrNulrMt5mdZlqXJfCTyty7ROVVRmGIcoX6wIBpaabQbGUOS1gpCohOW6MnniXy8/MlwruykdfU6Vj3x31OFWWco2ZWSWPwo65IWVQquNrF5QJsHKCSKIMqGKA13LMkC/UUZDKdQ6e3+FAlMaAs2smdrSpobIUCp3EagLdaKdCQ1xA03lr3uQVlSJXocq40nHBcq3QxU9MTrF6exVoYkUbDpzWaepItTNUZkO5jJthLeX87P3lWl6VZmnH5yvPPDvXv/tt9xnhvGeMt11V0TD/+0rgNvXTXmFQ51P++b12ct2+2fKuvzR+ejoMY2RzpeybE/rM2o/1rnZaR49CI7B0dyNOgZgQL5FNsM4jy2YWxSwTK7Nn8ri6cJlSqVDJFF0WvmKIPAkDLTBy7Fhog/jdW8fuuzvp1Z0Bh8WbYAEmrWvSIvoibJMyJleECC/Fgv06YC1k4nXLubfUKQshIQWMGpVoEMbk/D7sFtfJ5tOhE4nAfdrorBDw2yKwtjC+lQY0pWlVlcqTtgczfPRLAjh/Oy90zz/yzIffN8vftP0en1nuv0lZf69UAS/uwrgjrXN72Hxn3XH+ecv6/qXp3X9gs3R0bScVyt/VvF8vV3xU/0kkxnnv2b2jU9oRqcTUZnXQSFH4960vZYdbLe84pZ2XYixxwYyzCqoTQaFrfU+PTCmW/eU3mFPYfhOoHLfVOq5VLlMUxO7RtaTywrlj+bGsV5zKZAe6puvV8UiJsjPyIsFK/3OlegUblhP1Pw+qEQDK2YdT/PysDqvBG7rms2oQIxRrtM0dR2pZujmzfE8Hc9lOTlby7z5ibKu3/mGOw9/ciQ//w0pgHV64R1l8+o7p239dds3nv+BMq1fN20OX1TpsTs9qZe3U6mOkGroCTYmIUEr2WHUQevQi2kPbHYuN1iKwYVTLo+rCgA7z6qliXMBlxNRCMRU2v44n08+h07YIXykUK5J6tjt0FcW1BF82dcGfqjRuwIzhzg9zema+lWMLlC6RHK556iLNXWE6U5YoZu8SbA7Nij0UYUVPqAM2fWdFaCd55O4RgaDpyiZSl0dzLpBn8VxkWY0rVgt/cHmwgXxc+3OX7Uu07fd/bcOf6o+88I71oNX31l2kUP/a1UAVWupxnrmy06fPs3TN0+bwy9tgn9ytXnupmnaBGJC0GjO6N7ZiAbgVSZPDDnkxhJj0L5Cbq6WURoJOBAEnGYB0u0Bt3DkNesfruM7edANJkTgEBgkFh5/G81iXfhS65oV1cSb9DEd43Wyn1CmBqFV4d18IyuAMA3rqIUpRI8YRPDQdmmDDy27AAf0TzbYa3OIHt6dUvDAFLprOLP63TSke81qxhCLIoPyUIPAiCDN89Z13dXqNhcuzA0f7M5/aLes3/TGbzl+S5at/yoVgGiqafu0O9ajo+X0a6dp8zXz4cGl3cnJ0sRvqm4Qr5oJDVjOLLHXuhsDxSHvjOFIwLowViepA67ErQgzeWZPxj88u6f5hnSnPYKd25ahZwauQdbI/KBde63+SLlc4zqh2mEZOUzJMQMrmt7fo5vMSucwIE+GXFnzDIENA1laAldc6WTtTsxGodmRkPAMyZ6JoDWg2GBsEkoIDZSHdrU1VREs2+2Vdbf79rP5+G/fc+d0Bhkr/3UpgHUqd5Spaqdnff3l5yybg+86uHD0nOXktKzLsoPgO4rnkdH5XNKO7RZB/a7hcL4YEZN+zxrBmpowe348v6OWp7GgPsAedjCKfO0tVKdrVCLZAsp1nmrwnGdP/6m9mbli9zNjg34qLF1uQG7LNSoPxZIwotrQZ3q9Y/611GyO+F6aLDBkT+OT6c23udtG2vTguseQ4AJFb4cg0/185DIkxBCGk8LHWUnkz7Iuu3nebDYXjqqP4HXrdvrKN7z86HWCBBql/ounBOJk+C/5NEfF1EJ7t73s8l8pB4c/uzk4es728tVtWVscZCO+YhFagcEgE5G7DQye1EvGuHhW3OQOxRS6hgFZ6b84WIFcFFXAW35Logkez2tuCpuDSlPUDlEB+5SVeMXRpvpenCpI2whegqt1uuNQfQD5gXKYpIaAyPzx80jc4QLpr7UlUTXTU9qYaI12MxIKSteThnx4veGw4lUwkPDTrpjTr5830OumPJgLgAZ9SuQTg1VvRrqKMPO1rMR83KoXixpgIU7hZDMq9oiLHFBOoDP9nqd5U5Zl3V4+2U4HR8+ZjsrP3fZNl/+KTAOm1ZyEv18IoCUwvGTaPeOv/+Z186WHf/fm+PBP7KrVr5qrTBs3IohFw5kTU+tMsOzjVhZoQYhFHmEisr9VyetZcO6AIejffI4EpoNFjNcccuplnYMOiZjgrCv86PkWp5L+smiEs23ItNuHP7lepaUxjr0frXuAv4GZnWG76UbQH+SjIfjBocXOl2bvkwkl/yYo3P6NQ0v+hIhm3I/ibctA/Vqoi/s02ZiwDsv4I9VNL4PM3aAYf6lS6yO2kV4j5BHgUItK7WoAcXPhuCxn59+/feDev/Cm//njL0MGy++1AsBc5Nlfc+Vxy/HhXfPRwfO2V6/WucmmUiqoppCxE9NeQ8KN9Z2URJ4w5usErTrm7nNAO1hqzJhHIEWjTEeN4ODAMnDOmjwOVgUKoKY5bqQ5L5s05jh9LyMOTWnmmHzsMLXbnqx8tc/DzYk/rAQJuZFi4WZyfU6a/dpMyvDMRUxBsh7Mw56HIEeQbYzN3sChl9VF6dyIQbmlMc/TiJGy8I832BzF1B8e5viuV0bKqr6yO7x04WB3tn3tydXz2+/59kvv/i/xC/y2FAAqvO1rHnzmfHz8I9PhweN3V69syzwf8IjkqadbLK2cYGKfRpEpr6XQyHLYRW5rSRFMhEFk8MGDAIMZtHp6dvjJTD+wfLEnhCqmmgyiIbaeKPZxh2ciBSnP9q96nL0tWv8627QmWLHQjRzj5jRipq+0kRVnoM3IscfhXKO5vzXU2SowjUZ75siZ7KIjKXLA+hP32YE79XYlt6mzP1YO3omKjZWvRJ5YyAdqh3wb7vPKDCzTMhnD9uD24OLFg+V8+67l5PSL7/7269/421UCv+U5BCr61K++7/nThaNXls3B45vln2oSr2eyxS7IvF2sXesB4WaEmzBPzgSg70ocFywtqwZGjMckxcLzQTBykYniUKh1ZkbRW83e4ZHBxyz40AcglHA1kLQ/CySIp2U5LSC4+6xrTLcNXyvToCyET9n6kQI2jKI+FqnPkRqctA3b2QIh8u2THwI8EPqlHWhvMIxvSgXlaP6GSl6rQR2rMg4MrKmjmuffmkgKnYY2oDnw0KqsIzS2omj0NFWY+YItNvJWjDWVnxljpeQjqdfHlu9LWf478hCUShuDgypz03zw+OnC8SurLFaZrLJZfjcRAOYbn/r19z3/4ODST5RpvmndnjYvf4Z61g0T9JFqde1mCDegXXqJygmGto26ZJT1MWJCBGl+ineRBejXY2iplYs891AvVxQjCkFZhIw5LSMnJ5lXjN/lXkJ4UkJOSlIygWZuh0JW/4vDnRFayWFL9wWw2o0ffS/NcwOkZagQpoC8uMjMvvUxWGYOy9WLOnUJzVVwyAbFeILpg5atMUmL5xiw3m2tKeVHRL9qhH/uY4jlR55kPnBpScMxpmP7wz6XZTcfHG9KWT56fnblC9788oe95rfqE3joCqAuX3zJtPuUr/vwMw6PbvjpUqaHL9uz3RyEPwpIcOLHNZ70rKeqjacBkXA2R1ZI1IcSUaXZlMTUoUBiTK3XlEWEytaFDFICBITawnw8toVbw1CRGtQPSdA4roZCYlOCqf6e0GOurlHyfEcqj+epLkzuuAyTs6R0XBd6mR4BIFqOoot7VmXyzMheRzsIKncUzPQYKeYRzVeGD9Fy5+8wOFwO5zp4tdGUuf4lHws5g0dNBK+ExVVYcVSVwOHxZl2Xe8vZAy9+w7fd8ibIavkdmwLUcEO1/F99+RMODq7/sWnaPHw5P1PLH+2Cw8hINRi4wAwIcwVhwksOmoxVmb5hEkrTB7KgHgyiClFvV6D8xv/okryN6B8QrdWVJGAalDUNRK81QMnfYozyTsgz79ghKhKfL5NF11VuphfaNCCKOs+pqbkG+022QWITXLesJoNQdkZqihSEvrNHO4Z7ezOUx5JJ4OW4gMXHAxslQ9JbvEn/xRQnPi8rQgbNoKuulEFHUswwdglBBExFysy+6fuudLp1rHJlnjfL+elumjcPXw+v/7Eqo034H2KI8GM/tK7THXXp7h3vvbQ53vzw5vDwcbuzq7syTxsZV4drPCiSHMOsyJkhcILpfIg24GD7QSKnxHNpjLYyL9mNb4ePXjRAEpQK/WXdIV3S+XRSS64JYgHGqLFeowOyQ7QuKKvO+WlwSulqCioiAm5zVCIMIFR42alI1t+/MoJBHn9Szkh8Uj+DDAvhE+t+UqrqqAx7KYSEL1+olcepn4b4CMPym2io30LKZYUVR2o1iJc5Ra6PlitxO+VdN1KBVmQgarQlq4zRTyiI2JqBJjRlXZOo5s3u7GS3OTh83Hy8+eEqq1Vm04YVvy0FML3wb5bNnXdOy3Z7y/ccXDh+9vakOh82G1tRR5rKUnvBccR0EB5RDtAb6hwMiS7sJHE77lZTB9VozNaPuL0pCdLuzMMZGGSPT9Ye9Jedc7ZoRf+in8zLXX1w9ARulDl68zUEiGEPDNQZ+hYvm7Cp1WcLH0okh5Pd7pjPL6ALToq8OYgrZs8hYCUVDCIpNPQXa/+Nkxyp2TuVXWkOrEK4dg47LxfXklq1MmaoU5JZRnshL4HeD6nNuo7blptfg6iswDyvwpUYIlHm0NyHYNgSadJQlc0mo+e3fE+V2Sq7Q9DzUBXAC+9Y24q+Z33D1b98eOnCS7dXT7bTPNUtO0LcRBxpkULiAFEtOmDmyMpxsuaQiDzA5g0FmhDn3TxYBCSM5nFxG/jm0GE4mslD2oyJrALTEJd6wTuAkqMf7BQMipE+rCAsNTcm13WcGF5XR5fprbhaADbTjSDgz6ABTSlDoJCYA+vfk4qNCw2X/tbEL7b61GKLjZCSGCnl0EzWCIjODLIWKZDSWX0rkxyW7UPbTsg4U3wj7NTkXcqKVRQ4aY76IcRoF0x5uIIORYcoQrpHGFEMoaO5Rtd5Oji/fHV7cOnCS6vMamSA1t/0n/3aQVcePfPrT2/bHM3/aV2WTUvwS1iJiQjLmxVETt7p/KIUTw3+UBSZXHphwQddI5uYCI5qYp1574nwGisBFDt4cJRF5hxDhSD3nzknIZ1utRkccHvaYb1DSjTKIXNjy5dhGZMH3uonJ2x7I9XXrtFeg652fbzIHEQXmXnRWT2lSADpcUcT65CtjCds67DALsZrVuSedPupVeOeDRst4kUJ5WE4XJEHpZf+4p6jXqW91Zr8z8aL3tD92Zf8dRgVW8tms0zztFvO1k9/48uP777WKsI9CmCdbn9Fmd/ylrI52p68ZnN84Vm706u7MpUNQmI5ZRM9CW6skNXhFj1qPhCbRrKjLDWX8khlcDzG3QNOT9awAVPmsuL0i3vJ9yz7hBxhIw8drLhuh2J+PGAkRN4m6lJSUt1WX9THMEqdusue5TQejJIoAcWoSSFGu0pbgXExnFDDIbIogPvY39sLCc3LqcMeBvaCOnyZrqgu0YTVUuQNDwuXZKm5PJZQV2QUIbFejbLEYiu8fT5CvIdA4PIk6OioIb1BPT5GyIdYd5vji5vl7OTus82FT3/608vurpfUlId+8dBwClCFv8YSD86vfs3BpQvP2p7WRB9Zw28eZ8AlAulsTT3fn9CAJaWAeQhmUmf7YeTREeGzAUhQlF1OMMT2qzUnCqi0MFomw15Z/yA82LojClXWFZDqQQYKvWdeeDQDHJEUg9GHCcLWQduKGmO4KzKBM5DnZKBKCBi6CM83Jw0FbeWsJf+qQ8tDsv6E+AacdOj3NPDvyA2yv8l/Im0kJaLC3zn6/BWjEI+n1MnIyH0HhZ2mqd8qTDS2RAsK20EmrG/qC0EiFnjAVRI2qiVSKMKSdsp/zhdu5jF+1OGw8EjGZd7sTttU4LaD3dWvqbJcZTrWxjzCH11q+IyvPf2k+XB64zSVw2W3nevehlkenDlppG0zCLL6vAgIjrKUIGFZVS3HI6MCkN2VQlQahn+CSXXtTwzLOBz1UMpv+0NlRUPB+faw/gMQ1RHK3wWEtNKT9zlvpumkpUVEuQpeXkxKZoQYRs3MOteH0lFBBkMyzuILmK7Zb/pGKcRx+2+C7Am+y3vV79LjmIiTerRpnas/q/0zYIepxWxGMTsK8WQfm2eecV7EFMqSs/Z8oDDCoqbkdmKVm3NkujHHG2H8lIGnTd2A53yZlme+6c7jt2HJPren0wp1V9LG1vPyHZujowvrbidb7wfVQ5bb8BoNmTVGfxORLc1TYZYzk7xfN0hyzTIiH88CorXluW/U+LA/bDZTqYEZ5QLp/qDx5bcOCMPl7gt+Ar7ByupDKSWWpdEBgnqYFWkYg7R/4tRGioOVTQyTfnWeHPymobSpEAMouFXzXPhaPpWkPsAyoTFwZA2mLXDJMQsyymEUmdUEKzdbUmyhq5UsZ8BxsYyB1YXVN7KpteddlDoqcCYocmNS7nFvZHtFDvpzRMrQD+9ZvmzL5ujwwnS+fEctSGQ7fqZu2+67pt0zv+7qizbHRz/dkn1Kact68TB0nsM9D9mEEkOarWEVchC5jYud5hpGOpiE3KmvEAzeZ3+OH0vD4UxssFw9/CAwxQ25Fbk8dn9xZzhzEffF+il6CGmoXjhblnjbe+PKly2+XPSinLWzAzQ4JFNmWtcgHsPswuXBGyCAPAZByEzh7Xs6CR42ZmHBxm3isX5RTbTazpcl1OHIh/sfRyLyqY4pDwY7f81f1KM2W5JOgxD4B8UxOhiilIR62u+gznbz4dFm2Z69+I1/6+KrIONDBND27G/v7/7WNKuzL/m0XOPrPIrilRSPcp0aoFsWxxxmck2PX7D2gh7cc+xWCVgyrQKkgQpogeq2uWAw3UhUkYNHvC2uDPLHQ5Se7wDetvaFRSWI1Q+alZx9cdtqF36wX34HCsbtGpXHOoAy3hp8TWFccfbSCrRMjbTAhhN2gBTWQTTUBUQXHaXecbBXLmo5bccgUn4h7NkvqrHyuZ82vfLDPSZEclCOQzwZp7oakYYJVGY/MaCtxe2NFp6uzguZRIYAqgkVEA1NJgZsJ/o4rlKC0YjeA826nOqZGuWbWcY7BdCOKqq7+nzD+X9/eHzpM3enJ3XlyWZkPzHwwXqn1NyIm9An9rarwJiSMXDpbi7euIOoYM90K9t6G30tHGC0Fa6xFzLwA2NaOTxQg4/EuN2xZVgxWFLvx6hNfiE79aI1Yf0RklahLM060pOEUFq5gK1V2DBdszoxx409RJdMMBKDgg5hWhBQT8I0xC8hZ847EQyR21+W2YRyGBmEsKw+sjq2E4XtYwsbh8Qia49BrpjtyCrCajKhVGXAY2VwA8pJiRw1DdXrf62tTHCg2cBATbFv6ma88+HxZ1XZrjKOY8mCAnhaPZqovXL+1TVzh/U+BNMVpWjAtvtOEHR3WATR4WWUPMe1dxPbm4s6x8gURBO8k6QV9ly5yLOdDMSPWkMHOgoHBi4baFhyS9qhuy7jWfsR05MnmROeQgX2zZcBW6w8haVYKKy1AVZycozSauBfsQQda7u5krxv5JWnJ/wB0lTZtvfLXGgXIFIgzOhTN6J9u71y9IIKYEeoRRuorklHGW6xpCOTikoYAL2i8SJawUk3Mjs2rlgKguvsnyPFyUEjPG9KmZCFmVYTLNNmrcIm2yTrVvftt79ic9ddL9k98+sfvG3eHL1+XXdRrMO++bTZoXn4Ge560UyqbjutsO6Xpg2UbEH61j3OWAZrgxq3mBqRO+hp3qzR+WK8y2uytj5Y1vugGu3ZPFmTow+CaFubAipQJsXhJTyL50042nt6Z2B5w/ye6NwhiZBDEemUCZCFNCdgxfWPzKG+4zOjimzkUP9I1OwORWts3MNg5ZWmsRv4Ms10ruMa4/H5WdK2+80yRUS4bUa3Zk7ZP+UEdt8LZCRVwT4qo7SvxchtMqVlLKg8Vc/U28zrul2fXZODIPNNB33gabfKmM8Hf25zfFgNuzkJZK6KhuUUWoT31rFVb5bfV3aYVgVzhGwY0tQQfnGTKqOzZddcAJ0HsfGPAspoxDejbL9Y2jFgTRGMg2cMGtZhSpNOavjQErQfefmmmC2CTMT0WnsDHVGDjAkJnKU9g6FiboJMs8i/woAkK8kEXvKw2/DpjaAcg28jhgdtOoSQMErQrpi1pPGEc83j7c5aNnQ85tRIQxI2zXFh98zJ1RatdcJP8/zuJsrUpQnCixh05XRjY1WRWfjNOMPJRkebQdFqWYicMW8D3WTXgRTlqxFJHe42R4fzNK9/Lsg8Ao1PvmO98brtya/Om8NHrrvzpZ3Aae9G72RoSLTzwSr4d1o9FrwnaLku3gnezJwWSR1F5CEnYQVzre/S+XvsKd0bZwgZGn0WWXwshvK45xFKxKOsxDpQedTubPmg7OzchH3RAvNpDiyVWvuQj8GLs/DWAOpYtRkhcZoxW2/b/NXLjsNN9Ac/hYgLsQV9GdymxvS4gduUxy+gp9X2k4kIzhqQ+RX3ehrjPhK32HszGBEPh3Nns54AL4cx86YRq4/JYxGysswHh/OyPX//8cGFT5bTiddprkd41Wcv7k7/4MHxhUcuu/Oa8uuzk4CduOw8/+d2R/vWns+JKaauvPdhHwF+CFuBGyKINAuVAT3Yu1i1qEDLthXHE8z1Ald9jz7Xn6aBw0DpduHWjjjtcU+vESHkGQTvfKdc4SUnb69aR2qtN4V1X7Zc2rYRnwTblzIR921FpsXFtrbQZuyERUa6VqpwmFLJLQNucbLl7jCNRr3pY+c+FlDSM6x40sXygj8dKlce9OxBR4jGLTYNAc8lfmeeJ8Ura3tcBnzKR1zlgNqe2auKNFFN66jCv9tcuPDIs93pH6z3q+zPj3i68sy6u139MtRjTrJGOq9Da+ZGEhXX/JjTZGuXtEPWgq75/UFjAotZezm8L1vm/QCcEKOrewYGsiV2aamu6QDKwRyawYI4OqVBukjL5pZ4389F4FEKP+IAGnNB8HkTEK+3UcQ5Vy2rih7RFAoPnm2wdwR4bGk89duGEHqY5cbOctTpjskGShxZTXKhsVJns680YVEcq7FIOsvSJKEJYVwK1a6gEWCNKWcIpit12+o6GzP0l5R1DsVx3eAFbhIjFWmzrrDVzruPGtMLFLQfALD8gm1kq8X19vqjyn67/rw7PnTj6fa6X5s3h7euu7N2qHkYEcpgMmAaOJHZIYsJKJT0VDSynRkb2QSxhgjXcC5pLCDa9NiC3JLRbyCuATld++oPeb7vX8fHH6sxa7wRFVRaSTT4sFXIMyln0MhofXITqGyqIFaQyrHnR9uZh3oinorX+bCYftxwK5BpYJgz13V7+KmiFAVIW6WVpHRNqXmB2dHqLR0xiacyx44MKhn8hcJq3+mdgf/QebCbR0S5Fd0mgfNpczwtu7MPHm8uP/m1d37c/U2nnW2Pn7c5unDruj1bmvCzGaUcffZYmgql8Io5kwKTMlN5g/KKN4lBJ0LaXYVroeyIOdzGrWWxi+5QypERqaJnOnHgWIZC7AUtuTVFoW+5QMR+8iXhu8ga9sxQFSHmCG5m7ehtM7XsRiGFKvk5Dg1yQkvdctSnajyEMbrjdLVeUk56sKzkC+L0HlYEoNvIbGTht+txLdWAclqD54gpmJyGm6HUjzuM2QndaySmer4TeQHKyjmDFSiHnZ2WGDtaZYq+MvQHa9i4WMsJuajDGKFOQZ/TujtdNkfHt55tr3tefVMdfUcvnA8bfXSX5DTRsO5l7c6MHa/bkGIAjBjKGAZNtOEk7+xb4KHyeScJZhoHT76R+sJtgrIYHKk7DgH/LyuNdqg7CwiFblnHMEQzGjAUVY7IiRtIcIoSoeW0hRLMlUmB0WS5Hw9c93CaFE0NsId9qgeKUOvSGBCOCAlHpBKpk1AOwqj6DEJxpOfYIcl9YOWR0YJMRfTJTKrks0B/JvO16MYaHHRnJg9vOl+y9RUj4aYjKDNy4g5N15rzMWLdpL9CQzwMyz4TWm0YFGj7tswHlRjzC00BrMv6gnU3Qi60si8IbVYFcsXIGpiKNqWEtkJoD9pOy+htO58Jx584f8rDlJUE6o00RUiIHIYD4jIRLf2S/XIhFKZWjsxnKD1mb4Z8Cm1R7xi08Kevq7C6kmGWCV4ETzSN9LJCFh98O0lptLlvRG5sZ4Ki02c7o6jjFFfHkTLIQxQ6E4YiGBbBKlmxMuyNEZM+goD+FOK/BF7tlCLXRnHaTqtaze/BKsqfg1m2cWZ2o9RpljE2gETNeE/LIY7wng3HWFVUC/LvXtCefOYd601le/LL88HRo9bt6dpW/gEy2MDQQgXvlrUmKlqfKJDD2zQwJzSAGA676Fa2AN0CQdd7oyCLSZyW7XDX62KxkzpgkSlxybL9PJxI7qt+uClextaK3+WPO458f8Re5VEY1d6DAlEBpIUyTJ1ovxOJscHGoMre1dCrfBesqHo9tVZ/cQXwkEdt42qbxtkFDs7F7Nzw8Ru1xByBrEwGrIKPhSUzesi6yRRr9tXQB6tHYTwZeTFvEyqwXtHioeGH2uf8qNVSh5lDienXaXNU/QDvWzcXnjqvy/lTpml6xLo7bxxFywk9rpwsFfWRmInnI6TNzPRVpBHBlI29gwgvmK5xsoP3Cd2DI8d9CG4Fs7BFOAFbxnwMq9yEI1ihCH9ZuH3bbYyKN94tKEFn7TjnSwi93dr6VbU+JPxOAoe6LmNKC0sTdgLbeIE2WPxIqEyM1Yj13PYh0SUgQiTW8JOWYk2cgzMMKc8+pC4RqrGl4d3KuSidTmFupxQwmp7GzxSYj2zcnuc5wrOHRmZ6KXErgyBrFOiTkqqQF8OPpX5gVHnVKvNirxbl8rqc1zF+RJX9g826e/p8dGHenV2tWybM3TZMEJEwP7DUkbDBhjsKqeJq1dpmDIj7ktVhYlC9Dl2iIbeaReNA83g6chDYrFg8vCU/qZMWbqNr7PCjtFF2eAU2NN8FOZGo3TGby7krMJE5XDWEColQaOuk4g0p3NKin259mU2gn5Nw2+QbO2ZENQNL6m2E/0NHmslIfcvja0pU+xK3XYttZDGHgKDfuW1BeTom9iW6iZ9DMlrBdlpOCjQKMfSA2uh0ItK9TkbWfLRCL6MQ5tWImggWgPAjIcidoryDOBKgKWPWemFZ5qOLczk7efrBUspT2669LLmEUzyOnUI9SKdE46w9HKKjAylDLgAPHmlphkVcjFKwvrUg7RXTEquKUiZJMtmngyqAWAKZ2Hjrg7zOG0ojMhDNb2nZbBRr/Y02Dp5oDV7Wds58/bpb1nK2q39hXZNtS65xGyXa4JJf4PdZbZm1QQ+7uD1BBtCH2hBoataulMODqRxt5PpiORfKOQGxBNyUDKM1vkNyzp8DhWH9hxKljEP0m/Lrp1SslMNUymrJqR7wiI09SnDBdKNDrGCKnZR6HmM2soaYfceh0CKLHGCH7hjy5NHSRZBlmZanVX/gk5LJ8A+EcAC5LMkHHVVrVZlYLKazWxieIAGKClB/xmvsNwDxjC9oOSacWMkJNmWfRNcmh2fhqLHQUSRtqCVC2ihlAQfq2EhrAYnJs1KtC4U2VXnMpXzkslz++IdN5fE3lnJ4WMpmM5UKyzy5xknuTBGHrw08c1xYQMnOQxAVXmfgOko4cirpc05cmdJFrX22Xcr771vbf8cHU7l4VMr5jmSWtbNRKQs481U/7+etsOxEZFZQ9N0MlPYbUe7IamvgCAaOCMkl7ZQcvbG5fM34B23gaZ/McZTPafm2j2wQGFupaQo90YXu8dg6w3ofRZbmJ9bTRB9rTn7KngL1wo4kxDb2D2Mh8/j3cVY3Sj4yluing9TezDuQgLJktZxNY3lmVYzRKa3VSERZc9YHzUMAWcMWSJgC4F1CBMEME/EZ+/fmnjmjbKrFX0s5OZvLC54yldufO5dnP2Eut95QyoHuxuD8QzvAIufezU+sg85FUGo400QCkFkiu0chOityYA3N2upj22UtH3pgLb/w9qV8/8/tyt3vXst1F3heCsQXNJmXx12xvQ47DUdjBAaPu/xw7wx1hF2Q+bmAm6wdgc+Zj4IHkzjBZDZaB56j82ORpnzHlZX5kOofy0SkFbg0PyPp1N9otDqJvYMg3mOn21528o55c/iJy+60maOQG5Zk2IUHDOZ/HdJpo0MHlMw+Vj4oacACXCIaDzU2KYiwH0liJLb+1nWDRtY6a5cvnNHe0N78+6IANrRB9ml7KmoyflbLf/lsKo+46aB8/R+eyx98OlNgks1RO4719d7WFoKLSo4oSFxsKs8FjOjtN/uCwrrmOLbWch3cs+1U/u6/2pXvefV5edglbS2IEXgrrgBFxqe1ISmdvWqIlGRkosg75olZ1ZAwYOudYLGOkWEbRATAc8FJR30JWABGk5UMLVMOfW7Iq++fC1ZunNfmPCAZgevu/NcPyro+bF1k9S97/EXx+IINa4gxEYjIUMOhCCyqwXuGZTZQddstt5ScmWdIQAcqC13UxO6ospCTWUsybHAq0FLTIDh2m+27C3+EcZERQCNWeT51IUutefObuZST86k8+uFz+d//zKY86dapbHeiYCsqqGvWA9y2loSOGuro1hik0BP/Zh0vCiV1xAjq4TwvQxmbMneEVZwmyzo1VHO4WcvXfvGmfPR0Lf/yddty40Xxaxg60/qwdkKGiJhbeaIZvtS9qK/QDkRLtMG2mTADb8JCk7bdWSZaG+18JA9ZaRKw9i/7zkA4Q1PRZGB/AMnvoDUUlnOABgwU++DQE6uBl20SXdyswFjXY0/XG+vRaJfaufPtAK84MF5RFAnGO5TeQP8xqdW/SVtbBYZJlsfCJq0zgVPpGykbjyfZdAQHTDjVHCU4PPAMsEAkrtb4Qe/WJVWcRopmaXOEf6ZuzzvJKfAO1oHfLqVcON6U7/wTB034z3drE/yqGHideZqMh3a5M5vHLD5jNA1e906CaGD0qykWFMVOL+q/KRFf4TfPUzncyBuVdn/tCw7KI27clPOtChB5x01JWZuj534cbvMGhyHAtAUaJbe33WSemvx9kzcyZuTEw7TWuZwcw+AfUyjyroswowpW6hy/p/wRSw9m/kyhwDTtswQ0MzR4QcdRm6DvTWJ8y6V6cPyRkYcZJZB4hCeJ8QJHkVUeoBK0kQfMmawvJxo1DuWFYfB5d7MoSj4aQPHAp77xpMiEdRQp82Wnniqqg0PPWn/AuIBwFA+v/9/MU7l8OpWvfPGmPPXj53K+XctBtVbTHmGE84fkPLSvuzK+hoID82SFYXyYoH6ag3M7fRydRurfbBb/ETfsymc+eSr3X63KwYuA5UuQJA1A1mr+9MAT4+gBbdOfVkqy6KuiBjNiWbe5SKf28JhYrv2ARM6tLNKuuwn1QsmQ9c+5N3lq1Ll/cM+MB/8XC1rX9Wgu89y2Pc3pA0a4jtE53joNYJFDEz8VtJZQwQbdpBTGGC/3fG4jDce72YsbtIsKP5OfHZQ0EZcdj3l48CjNPxPNeNjcaiUtzE5HEyBW22LdT8/n8qRHzOV/eJ7M8+fZPfXt+BUoDFWwDRBQe/ZbRPqw3mbXdPD0xg/miRY6MqMF647xwniM0n+d1osm4lS6PuNxsmzCLCXtgCMgLpbN0ZM4Dt7WkZh0eYGDvnZ79U3KZgQ3EvgmfvSyK4i2BibkCNTrssOKgPpCETT7V2UuKpHIA5kabDYzOkDiFgTE7s4mCSntNST0RGvRiBd6Ia0C07ie0HXxplI5IE+WN0ddzYL3iR7CTGGukBIcnPjG6HTP5cGZi5WKBYDC5JDK5LRLK0MkJW9m0o9VxcYy0Xrg6lo+45Pmct1xjZPXOa5LtjAArKlGVaChqP0yXcnzFUU6gXupr8qlpjjxvv5n46BjHBjQUAjlNCSh7TdWFRtQlf+jbp7K8aGGiE2qIx84akvoLfxFhqOPf9yIhfgUC/ihuLRTjuJWsriwKlIO6GWiRegO7c3ZAoZkyaIJwmBk7YzlvMyJQT6mphf0C5ca5AzJcWFMXIKy0hESS7vqFICG2QeQ45K+EYIzqWkjCD7HykOl0QKicVxn9LzSriTaKcAZjn1zJlWwEia/vow2hBaJEKEOu4hRHKAmMFGyBdL1zKo+UOz4rnfr/P+pj8b6g9S25IDwzMCYDShN9evcmGgpXLVZfZgGBI0VGd3bQpYY5SfCMPTlqQ6Ua/0sy1yarzkMrjbUlDXxQGoWUcSpbNpy8LAaC/BBWHNi4zx5P9FWve6crI9ozN7NorXQ2jPQf06rAeIKdLT4GwttmLu47KXdnRx4phwGtihOFqIhb/1lKACgijbKDEgHWtQZ2uGuEojznweC5NWPJIyEhVJIvfEMaSKqlfGnUUj7JXl+dXJIchsTQslDNcqTN+hMtBxpDyiJS8dTeewtakOi7CojQCFFy2rQlV2/Y97Kze8vmVYSAbSVjqjPlIv2P8oWMaxPE207albwSu93fmApp9UJaEzjpbljMDbZKUmKlPRzNF2kdGhMZkIKlmIdqLYmJcKtSIo1rP9mi55eDcrUIvnmjOUWRGQDDpLv3hQ1x+hbmPlqWbQxL8u8S47DQp/ua4QliINKunuYw7g46Sk0xRqFCYlqgjGyIojRyQBzuqYPfRoMqoetjCelgBl1tQuE2piHSJuK90VNOlgMv9q6hhibDyFelE7+BieEKLzNVLPjJAHIGDf10IoiuvB934w0S6U0yBRyFsSsvGju7fQfKDkgHJpekP4py9JCSt7WJKj1hde+cymHB9okPo8qvOD0CK0iD3k34zEe9GkiKOv3pRzE/bGtwtouJzRDJafYV6R/eCMaldi+nubcPnGT0cjT7DNgLwIpnUy2JB8XCM49sOKZl8g+0VDAEowIrc0N6/r7JJUmrixAjIvyhztBmk285kAktUnEzCBe4nubD/JiG+YtahNSnRicsKY17anCwQ4jjgA4h2eGHTAC5qP1b4v/l/Lr96plyA+zR1QlrcMjSWvFY6V0WXFQeEmobVdlOj4rnVzjDlRYGHiVfacZ9oNY+VRNFbTNppS3vX8tr3vnUm68iB1nlNcss7Iz6XYNyWdsTDqKmNHynA1Oaw0WkaDrFE1wLJv8TY50Yl+drs4PA4BoOiyRNJWtHoeE9gS51FRxj3v1AJOmwTQN90b29eEGciwsw4u9/sagNm/D/JJLZdUiDhVXErlS+iSh1tHRsnixh9SFAW19pxExvgmjlBABXeub0TOuyyCxRCeoHW1jvwKdXRjrQp/z86X8zC8vA2ursbPUvj0qNC0XXffPy0PHuu7Kak3QKbSb+kqoyIXdFU11ZmatjvDld/7Urlw+XctGox1gLN9qjo2LCxfv0GP6DfaeZpiB5LkLeI7bTw+sA4zpCXFEQ0IX+IIt1MKYpNK6oIvN3mYKTGluPoXubKpt6b6g3Z4oTrrWtyPlxuigErthAclAYI2CA6nOTMNk25fEQYjHQ00M1voesqa0C8GB6UKfho7KpV/GPTHeHRnCrUGgJ/wIeeoKfUOkkSqwAGct210p119cy6t/ZS13v6fm+0/NKeiwmhKIeOnt4IzAcdz5Gp89SrCWv1QtEB+O7xFR445P0Yda21R1QVV0dS3DP/65XflXb1zK9cc1+SnyEKZ5rQzXKVosvPtu1eVS8uvsYTIZY2208WXq/0oGwipwhUQGldpVX7Hg2YCUPo2B07rVnJAGQw9rFfEh6Cz8gHLWPhsz9ztEtLR/ltbOsqP2Jqc42BNm4WjuhymCeVjBADEOycUMrgYI53old4a9/S7UVq9esCUvyFxD2i0JiDmAkqJEn4KlI5U9tO7a6OGMj5i3nSqrTkcbcP1+cCDx/2/6oW350INry5qrqbN16Wz9rwpPTaCp7WvLaRd1C9X7VbjqKQ/1Ht5px9tN/h1/VRBbOfS8lE9lqLXGe+Fe+09/t/bpu9rW9p7ex/Wa6FSF//t+dlv+9o9vy4013GlKwkfATpQCtA4MyohvoLigm9WKeVSKbptDIN0k4Zg4Xm9j6EqhWcgAM53XWv5G1inmO3Clbygm5eZIZCHO+5lv2YKqGqFrjH0M3riKcGhlhi6SUVHUbS87Ef0w0iahS9EM+lqz+BTalX/7qymTnsacEwvhyMLclB51r3VGHDrmHhmLsJSNeGtW2xRH2z9U9R0x9l/nS8x32g7LYVAIXRmr+gI+6ZGb8jc+fy6f+ckoLFeUK8hwZPT86F1u+KhMfrejVI8xOyK4UP3aB0r5+z+1K//6Tbtyw7EoB38slUMLucwQIy7edorGgaXZiZv8VHSPeQ/TQGT74X5AoStbZVpkRfH5ngLj8Unczd0M8oh6Y/v9IssHYvzug+GzHWiKSAaKoLWjIF5diUef9bKTVGM/rLT62gu1EYt1c1+GtEqrARP1SIEYBohizKFcllf7ru+QxfHTg2NlthusVe65y2GwGaKGjg6EwhhYmFeYi9CSIdOaL7+Wk9O6LXspz3vipnzOU6fyhI+r1zmJJpImjtVgJSC1K6YH4HBKJzAGPi5g4jLIitL4ERyzek/PS3nnh9byunes5bXvWMv9V9Zy03WLIBv4ELLH3YSP2kVIjWnMUQfXEHEBlwNOIjQEhfIlgsBMIf8n8KRb5IGzlnKpAm0yI4TbrsjkXR8B5nsd2RhBsFWqTkfbnCb3g4xt33ilL1571jeepLUK0QrKg5QlxsJg5nuQKx4UJDeCU4lpVLOKHVDdB5iQDawqlt4CPRoxI34JMdR9xo7JZd5bsgpRS40/sGCcjZoEUv6uZbdby5XTutuRLDZqy4DrcuG6WUhb0Qb4FlRwT5h9Wb40tWGXYmwTKQ1awwEac969BjTkOfFS6RRgaV7lugnIwaZOFVhT9MhEaJt2WCLFY0ZHB9P0TWZ0ZgqUofN7Bw++5DAkvE2yKhXw2XJhMiEHvz0EnBbRRYBjv0V2vXzx+jv26D6Bv+hwW4YTJoOQhcTkib554OuGIJGQpl2EOdFoOGxiCANppbzuj1fdRZqY4wJW0eTI8YWhAyKoRd+sTz6YAu/q10VCbZriSCDH/g06pV3InE4EdbrGcgzHYZ4/cBZAYWDgmVHYMuv8un7qUtm6BBj5843vbR9FL4fnut269wxbyPPrqxHjg8brKgRRVtkeVfq61a+bR9efy7Kz9sKj3JYDm0/RF0k71nCUFkOaCZ6CZxTF8UpNKPe5TWBZK7iAY4iln4MQ4uS852MrjJL3SBjZMSsjOUWt+KAklI5h6iptH8V5IAtcru3WEZQ2KUvmBbB2jjJZ5UKNg6Rk7OY0IWIbYQz/7e3z2BxGrygdsGE8maGOQyQcbhiVr6dFhhLaGmf5FWBtU1zKStlqBOzXC5IjjB7VVOH18gZLH23NN5VlAhcFcFffrXjZYuOUs5+JY+oWDjL/bX2pDWtDGB1cvtEl6wpgSL0mp58QyKEEMVSh5yfC0VnLqKfKWn5AsuSMPRxJMc8wKqBIFXWdhw16RABISrdJSgIFA22IEJFU03Jq7FEBS22GzXJTprEiyCg4MZLZDV7t3JogPGsGcNBdKF3wNis4ueWJUP4CjSc279FrbNzqnoBRolkg+Iii1B7YVVs3nu7wL6eNQzOhWdqHrBtw1dnG03ScMqEGh9pMwqS49umnvX1zgRl9rHkGUfKksLe29qf1W7Yzl0em4ZzemKaLObA111LY1KAIlIP0V8q+9CgOKz1XSlZN/Q8n6Fr1vK0aTqGhMQ0S0tOP+ae7R8LPNHFU7w49e4LzQ2jwouFw2E0dLh0DsAU15ed7Jtpw5zfzvDwIJB5RWbFptEdAQjR6SBA0K/TI7lvXlQiePh4eDmXJYiDczAkGvXJOYQQfREAZIxytuOq3m+JFRrrwh+cvVIePpadSDcWRxrRfLALjThoR425y6YtR9ipxBgnq1JIxJOgJ+A5NG5ScM0UzoEgp3gPRUJX9oiWiHutNYkSY0xiXaMJdQmn2nVBAe4eTHvFWSnywSI3Szc5v7MxAHDf3HzAzc7k8RKyUPDMS4FkvZR0b4vF5POQSiZspL45E0I5B5Dxcr5GXkv0Z1tfQsJDIH5BPZAVaj+EE6MvW+3rGX6jMgueaB+B7U3h7DrwnBE8Jq6B+LLs0wXZQQfM7h4j2PQhe3VV37LWsmVGYDwf6UBKFuyJJuwEdaKeAWMTHkAaWjTJZKUMIrvajMuwUowsLv5rgS1MITclpI5zuEgasi7FhPR3OOQV6K5O+E/ryTSSYOxQlkYW2sQTCo/EI0SNoASgpWolohJ4ZUmupiiR8sw/iKSUsfDhxetmrdjgJ3ZoTXabZt0zrhiaiHmgzqVb3CZNCimlz4gMO32JfMZ6W8mDUdRB5QxS2tui184i3mUBX4Gso/GGc81pOSJMpVQpAA4GRvd763gE2YYSDDqQAU7XrNeHDFNcABnDMsTJUnUMynY2vaWeUtKQRAx5HlNyDScrCvJZCfXG64szDIyE8EhsXnE8Mi5NlYBVlSgUIxhQCBC86tWRQpD1XTtcWOps3MlDVyTZXpjblg8Hb8wlIqZ8idKTsXsMUwFe3+XyU33CmtXRYii5VJHPpuHr+xfHHGYs6Mv7NOK/jomt0Uusm/QaF2mtIvc+ok+nkmt74ac0GR3mIVVdsrDMFIztiRzOQIJ3kMgCRyHwKG4HGrg6UICGhGIankezQQURTPA64i2YfRJH3t2x3FFgCY/rImO6Qh7X1ORNDpkxcVwroT+qEGWM62AF/g3db2NbjowgZRSvK2j2gvzZIY1+s2SwuhGLGrl+Z28hOhmnQ1Lb92q6lPHillMfcMpfPfsqmPPNxU3n4DVJgVQ7wpI8FP3K89zFDlf3iFQ1L3rvB34eiDnXG/Jny4Gkpb/2NpfyHty7lV35jLceHdXej6IPIiid4qocfCtepryT2ueyx1n4j7uvo1ptJY6xd2JTGOtiS808wRVIf9C7KUyvIiIMQNI+Jo7BencszEf7xL5NF4ghHK3EDVyANA0Y1DyCAQ9VU0kd0nHfCidqOWYTCryYorQnmLY/Ntvg8Kbakhzp4ykojNgLOImVgTu+kwofiARTQkZ1DUP7XHmyLW8irnN82zSWbfT5wWspjb5nL//1z5/L5nzq31XGZJvEz/Rau52sj89iN2J7n95jWUI9/Trdrues12/L/+te7pozr+oZcurwpAxnDf1wq+7f9HUGnya9IMmuXU2oJGCe4oWhx0Lqnq6GapAQ+hn71RrTproaJc+ndNvZkMBIi6VxoQWHk5CbifXYcwnfG+REq4y0MiJddS2POR/BtD0qRtugTIBbt0R0rdoEYpTAG5J1DJtM1CMG2xiexlATiWiYDDbzCNpx7J5oy3o117RMU17bV8j9wMpWnPfagfOeXb8on3Fzz+pdyfi4nDflUQTFPSGWmvrIyZWtm2XSEqFRouHnwQjiDsWWX2F+GyUMVY8ezyf2aufgnPuuwPPqWufyVf7oVRAazYbM3LHel/Hteak12jZudQ5ZAfyMraWjUxpyVTYSkLvyTru0ghIm+c+OS8sEuVr0xwThoglHXJ0cTkB0XUEIqKIrRAbVF2jvIMjP+8Hlr9E14e+q/zU8Q9+4zSgdisfCb3TIBjQ6uQIQAC7yhPHz2ribxdFzAQgfoku6HRWK8wIv65OFEKjfRhseamQJ1mEbBARZEtz6CMDVH34MnpTz5UXP5v/6sCH/dArwOeT32qyKDWZVERc/1sBD5q//Neq1NEerW4bqBu2413p6t7zZFIr/r93ZNk3PasyirJvDgOfyn1+UdX1wzhzbgeW1Ly1Qsrd31U4//evHTNuUrX3RQrp7JKkdTS5qPYCPJuyzz+Iygb9KzMj7KaQTGjCeTTOQsvRDVqB8IskWvkvmHpdUKsFlrDjK6TET0gk/oWXB+ey5JNwnNjlm+hQqta3qBp+4uWKEVjM9qIlUuOv2WOVhORe00D/WuD4UkzdE03miwY06ADRhgkg7AUPtHbRGqy1KNsKPNg0zlx97b98B8fCdypsfPeevtqRwdzuVb/9im3HypCooIO3hKNDW1HporOCkHzqa0DXVHZ+pEt2EpbTvWLynV6A94BDSnTV1tnIgKVd5rFOePP38uH/+wuZzvkBTkiA80zDU6SialwPCDfXp85HaUN6KhK/MwTHbMuAr+yvUjQ5XHsk/EQp84lBaMWght9r3ie3APWNiThdGCMPsSBGIFoVbig34fAGzuIhcbAoj0Z7Pqa5EFKRCjmmZCBJLcbslB61o+OgchoCaohQU8SR3kAtHrTt4ppTfdD/Jq1rsPR3Zt5o/RNC4fCiDQFJa0pRL3gZNS/vgLNuWZj5X9/+vS31gu954KylCk0Zf30gKjDrhjxDDBUtBljn6gzFQA5wzEd2MFddPPW64v5SmPKuXBq3VdQFqBp2OTdw/u2oA6LXRHO/eSYQ6ecKV7An3X9JAX4ylO7PDVw1ZlsHrG5e53SuMC5Qy9nXeoSJ3vL9OjODGaZ9BuGLgr7PaWgqKxXofIprqx/NPSO7mr8RAJfta1HQ0syqe4ahZwUSpgJwiS11O9vrKRY9RcHNoZIQAy7dYm6AJGBGwJYv8i+axUIrg3iXMgYBFjenL9WTf6ODoo5Ys/rYqCLPTJa899M05aqmlJIFE/2D1+x4myRxlw5+sQL3ssv69L6MiqGXTJUEcITFl2j7qpngtI82rrLPGvMqCl3Q5iKWI4sMeh0seQjz7BSpIUixsdfowUfxaoEu1E7F36ME9YEB1AjZRSxAaDQtwqR2GNRi+0KSYOUF0ZU1O7Av6Kadq23wE3xh+NvzORLOeeGzKAiLFv7NShIKT30JfvEqOF0F/EsyghEoAsGe+ZF5CbSpdPl/qwVRgMpgQ1IUR09dkq7Ge7qTzhEZvy5FtFhfspDK79fU+5XCytgKNoAhQoLB63J9AlwT6jODuEkvCIwqT0bLS1i6j04yACIH257kj8A3jfE7zAhrTTUQpmZk94TAECmysUp9Orp1F3m08plsc/VtduZsvM34BzLfbxndKKlQcctzxNhSxMH+uEJi0ku8sM+QQNkXwVneGKN9uvtNUcbidMSbn2lBzDVpwFJQuv8Q1BlIGhsQGNPIrG6sILUHToticBt7jqgMga/7Rdctvedzz/1uL0ehK/QFkDFsGj6orQlBTu6fbPT3zEVI422DOPumBeWnvBGmfOqJSgBAERyxotSPdxjrQLgeGC1EBJBrhhfRoqlvyh63X778PmHSSq5rwQXBvk9XftIwni+bp8IyZPgtFIQA68zCGThngj7zATJyPS2Vg2RHA4En+ZkhmNUy+yuctBPxsi4ihHUsCDsq1MfdkUqT4i24KT9ZWHWful2Cw89RZ/XD2ZLLSm11SezeRaEfVZg2s2HDXf5j6hnBSBszBYtIgmtXieaa4MHzamzB8+UBTko98+r+2hHgbo+gu6nReEV5XRCIJj6xyHxS6Yrfn8XljYMlB+g7mlJb0YVOZpE34TffbBuD2fWfc2uOc3qgKg+ThJROg2oRavjcK3A8sb5+UOz+wJ1Zy8WiJvZ8n9mJw43U1RtLT1eRo3Vo4Yf4/pO2OILvZ2uY/Ad2Q2KqgSAaKSFbHUQ0xFie+YC5yO0cj6VJOp3bwXlCqbUKFZywBpVDDsfL0UoB8YNrQkL9SRUhVNmFrzhhgReGxSuA8C5SvixkzLgowoAASAm+kD5G2BC8w84dpWi0kP6q2lVgpVJ+AeUfJndaC7BF4aNGh/6tIQltt7JSnh4KB0aYSFNESic+6hP4EsInNefbTqrpoFePe71nL3u5dyfOg5C+ueWH0sF4qdsjrRXtL+OaIhfYtRFPYpGbHwd9CtCeOovM4WkuUgQN1UlBsHV0iIMPm6fLdmtnkNj1ccNl++rDyXg0FAF74FnZ9QLCaReUeVC92pZcx+0knXHSKwVUcaBdtao5NkeXOn9sFGEi7bKSVBOLfuRD4oGt2MROKyWLtAz3AOO41m4qnwAfO4soRGVjqBHsxftp6CrN0qW37d85+X8uHLSxMO2Quwz2hyG5gO9cCgMQrSjmSSht8YGBXkNGsJ4+vK1K3QKMTYVcQJkeRJ+oc/syunZxAkvBM7QP5cGx9rtg48LFZY+GU60c8KkG6ycMQ5d3BecsVZZ09+DQYpKG5N6zXDoeU1/0ZS4GbYzHtP2XkWpneko1aV3qT1ZmwADEn6844clH55L0ByGKOj3M62K7ALOTkyzCr7aq+hJEMYiepB44MQAbClDplZj2zpvoYEMehXSB7yDpihdhtOTMtpymCiYeTQ682hx70mHVmO9VCMaS1v+42l/Os3yuBv6xZZATaS05GgIE8tcI8gyrjyTgOoUNu4svjnad2giD0f7ErDs4iW27Ap5Ud/cSn/7p6l3HSJNgLVavI48AA4rFdli2ukaL0+l1yOMDhYMhPldM3CPiLhSn8GtkvyD/rMozgkqgRiE+yLe+Wj0mttV+udmuNVYe5PUwpTltgtSaFuQIdmkNy4KWxNB4PQtkIe9iEHGvU6ME/+kJRD0/lcjt8KyyEIa+nI4h1oQKESLe907hkdRsKjHBS9dtKqA8ORNbbnmRt54LsBhgX1s1ab93sp5boLa/mHP7OU936k5gCIsOx2i1kORXGhzXutb2pWoPk1XoGCD+vaKUpif4PRpmO27Fm1Hlp/Xf1X9wGs/aoLgl7+Y0u54aJLhEU4dH9/NNTxZFRokjpLfUpeeCWz8A7pLleihmHoRFsWgGtoucmRIdqdzU43LWKlRD6zUCw76nQPCHtELTmQbvulg+Nt4fH2RCaeUfAGI169IxhfkYj2OvEsChBW89UB05ztkCIMCtLipnivJw5fN3SbrFgM3URcxgkgXdm6zJLWJhqUddtKEIrCakY/TnCiNfuBqWxOjReo39R/TBPM8zuXct3Fqdx3spS/+E925U3/uSqBtR2XVVN6J1oebMpKpwpOG71uw+AJJvaMrifgT3acNUaY63JjYYs2JRnWge8U3TGhkmfqu5vNWg4P6mk/U/nen92Vv/B923K6lamOLDHvQ1WBNrSbVGg3mCto4hgitEIhJKbACCuy8xqWDf3qsH/87EseAm7Th6LzevCe8BE/M+B5pEbTOxxN4OfxE/tGNsOnN8zRGXwAaEPcel1kV9+77RuuGiB2/ezMbgq4VcLxM8rUsudZo3uNYWAIzvBrGM8MR61lmEe15aYGpGjOyJiQsQUtSmH4xKjBucaUig0KKzfmlYzRTENLRT4frTn2S3nw6tQOBPkfn78pf/hZU3nirVNLEnKiXNOIx4qJoX87H2eua0MH0Efy1Z2hquV//32l/Kd3LOWu16zldb9eT/5Z2k7A1fUZo0ehtPYR0iSFxRxovOTlwOC43Jj0W5+kWDJkQaml1oRp62qcAks+dNIZn4znFfGKr5DZ66zlIkf3wqIwXxbNyoHp0slUQq+DgCcrALAvY4/6x1N3ZGD6PHBTsq3CvIFcvek7zgZ5S2VAkjNpDf6ocDpl3PmRZdS82hBqUzSufQJbuE4hwkLBDNzW7PSjznjcVxjMEEd1t66lXDmT0GDNlqsbaQBq8wIcbpLptax8EAoazZlbgf4skVamHiQsvoqQY+tMz2rl5dl6rNn5MpXttpQPPziV93+0HVvUdjSubalTHkYRNg4ZXRAFpdm8px0bDN5tgXb50X6lIePhjjKb5D/qzykRloiV+cPKSuZ5pEeJP5M1C5ECbuxICeQ27NP72dEres3303R6Rek7GJeGyviVPljO/cEA24AlrePrn9k6QGE4tB4pCK7PGJUeik7ENBp0YnD7ZlwqCUdGuDSw6DlsQ9dpqErbTMSdkZ3jTZtchfumi3Xz36W854MiUFKv1tSCsgFQ9EyROXrN7WcryWKcnKVWlj3sf8i6QCnVFOLdTmJGNcfnwlHN+5ddgLZ1N2Pd1sxsOVsppXfSDUZhIEBjg+xyUWLk9ptSUZRiaFQl3LJUDfqR1YcSXd0YgI4NATIv4KuhPK8nAkjZA4D9aeHjmtpRh3nop34PAZUV47M90s8rHmGjsc1cfQUTU0NZQPNtW3BzDggj21DZIga1YDyn1AbZnns6OFIMPJPEzEwoZlKF9YjmBWIkxQ3U5ciQhLcBJIeorCiwOWbYo5D6yP2zpctQZhbiycyYVQ2t5w7nATqb43O+lefq/LmdAJTMOyu/Dill/RaYNDFyUCR6xDRvbd2+6Xp1DmGjH/S3ArhWvpkLoUld62DjQFLhjlCiT6OjKjpV2p7k5A2QdkYzbmoYApEU1wAc9dPE4OFMNC0s5Fi4ROjRFBkucXnki+A2hwk8o+tIQyDFUIG1k2jBzkTi6yntS9iKMUThxheD5IvxpD2+LbhZErdoViC7JIdQJW7uEaEZ7SYEKEKIAQtyZJ5OedlZODGY+kybaJDFdRBFU5De5HRtByphu+/xFsaSnj7B/A5LzUITLDdox/HZFj9m6MGs2qfGQifhpIZwkw/e84yQSHfUD+SCvtBGnqgjwmftlO12zM51UowUXrXmhWkyppOkOGlaJs95PyCwgYaowLqvbR+cmgylF/Z6IETn41x8uO1B3yORhc6BHwki7wlBwzKy1pzJxzTi9oX3rS5HmiNvgikk7nuuwCyXOwzhn/C1AKTGeSGDNMQxUE+IuDrNxd7LABToQldks4PjCJXAApNWC8Lte3PToCUKdQTu1ReIbn0HTGOpQPmaiMJoIJAhaf+68w9klKGdFCuJQS2Rpn13rc6blhozWPeUbj1B7V3pgkRISGZUlmCl4HNwBAP+tHq6/RdYUeOI9J7orAztLg5ugaPDBIC2U0ff0AiEpFGWoYvUf4yTKWIy7fqAoaEw7sWMG1HQaJoMOf1Qyzrc3DZHGnIJAx7MS5mzAtG+AcK7cuTSrxFCZu3rvVMEEIRaLYcmJ/jcR6rg4wO4yS4QnsnEEB22LYmxTztySMX+cY2aLa+5LIEI5OF+BxVAIpt/kWEOlpzqwT3W2LGFUWKsY1HTQpHURyR7mpifrKQpDmu/9ihDvzrFbOMjsI9yEEk5cD1ReDP1BbLrsjBYE0NqrmwxfUAeAH7FfdxiPaxssoZhWI4pnYcIY0tlvkr8M3KG0RJge3d0joTBHP2JugfeQ8hB0KDwN3R9Rnm+r2bJ2YrqyG4lYxoERFZXiya+tvLYr6bM6aPt8ho2OYF8jiIWKlvVUNjRYM7DzjhRi7l1isxPYTh9HxrMqrU5nyAsn/PHBENGKqEpo0Hkx9gx6GbY3TXsVaLu+Nfg5UlzMxkSOFXi65RSqC96Npbsm18HdbedytVt3RHYs1GkSblMRyEuAJJyvQ6jDDFVNqoCgrJgFMO6Rm3tG0ucb8Dph5eI4+/4cCrHB/I8zv6zUBcGlc20raFAhCjHqxza49QcX447oHXiU0QFnO9d6NoTtkMx1UcrXideIWmCRcMZGoA8CHc2ytFwvs9D/TSahelgva7bvVvWKsYs8qW1m5gCyVHGK0G/OwdlhejHoSdPJY1N5enm1sk2wrfO5oEiC2ACF+fIXrF+z0mnpG3MMZvSchneOK8CkSRC8WCxgrNjuT2vvIdGHPTkiSBXDKkjQdWOwE1gdCCzVOurG//sdlPbOvvi8VSe/PGl3Hp9RQGy/z87l0y4k7+nDlD1vneQkMJGwtMUZaFHnbddYWO/BrPgLXuRowfMzJK5iLH8wP1ree+9a9kua7l4WJ2AhAXhPeemOhgaKDvf3gtTCOlnPMqbeYCv8cYpgRXJccdGqbcAWlfKEAy8ZRGJZBxI+G0KQVV5P/msRB4YokFGSamZ3VLswMcpYSicqJyMNTeQwE5DAP3O6w65fC9+CEostFutFxqIkAMhRRWajhkwqMgjQDJOiMFQPB/EzqGygUfK5TnmBITr+JW1Dxxq4VBJgU/2M9yv2XClfPhyKY982Fz+zOfO5fM+ZSpPePjULGivvpK0dJ/8DHV++N7oN7/Tqdc9dfZtfOBkLW9611K+999vy6vuWcr1F1mx6vhAIbWxpmQYGIhsYYEAXBWHFnvtbEqilDCoMMbnSmDVuhILQX2GHY4SOIsu16nVJdKRAaT8ckduagH12VBIApToNYsyo41uuODmVIJI//wsRWSRgu6tJbe9TM4F6OaRNLAI07iV5WdRIE0RpjRkuqd+aGYKd0AlIVU1DLeYCxpMG7nQhhALzdqT6+rma4mwzKyDQerhqD9yeFDKvQ9O5QVP2ZRv/qOb8vhbvIE7s5g+uBUNeAJyau8+nTC6n+SabFYImfJA2utkLkMyWL2lce16qa1kVJp8x4+dl3/wyqU8/EbMuoj5eNHPngYHFWVjT5wV/A8OqQNaWzODD0nhFDflHbfiTlHD9gFdsl9igCPsM/bT203+E5Qif1jlxrroOPpUbjCI5idxJRRDl15n/UWRXVcCThFudLQkXbonZ9vxnu8hBwCym/a/Q32B4PRbEUlHHf3uCsjVUlyOmlV2L1mWTJTQiXOeWzh4rIMoVzi1KeXy2VRe+pkH5W9+8aadWVTj/rKxo85zCa6LQCGiQEgDVpHyKbi+4NMxveRp0WFM1dnjGYucoIF3FzqzERCR4K2+Wue3EtFYy1f/kU350OWp/OjdsgCoJgnFzb3g/EyRlRIhNHXBWQHOZ/CatgF9YeH3nH+p05Va5D0zCJT8s5pLgsaBoqmy003vpzEFFRy0SWGR9uGl8iEc2H3cydrrkRSaDxutKr9DESupeeVkRBJwPoYtwWB5IaQoGQyDAXQrkKMwBn4YgwkW9J/aMNdkVA9GJfx24mQ0GzykVJVPH9LcPtepjMnOGI5Bw847qokZYtSyxpgfuVzKc580N+Gvz1WLfzDL2QDw9vKGE6bs1EMMpcqiomA6fDMeYmHHOFGbbPjIcoNuVg7uJ6WSDQ0WB7UIXkspnstf/6KD8uibpib8RpsUrq2BvxGvA02gXWFknCwEmwGpoRWhMHEbz8QysxzxdHyiJbTwM1ndzCfwJbI6SPyJPRSaYud8bvhcwI/7Pom3g++MaUMv+D4XpGAzdGB2te54SbQaEDcdq7DsMfGsQQzB7QbHyFOHeXquBcZ042gOfJegvlO4H/fGo01GaQlr9+kUAYRC9+MbADARUBYS0urV4bdM5fhoKl/3hdXyyzZptk/GwE9hIm3cmEy3TaMiXRM5hx8RoliprR83tNO/vW8XoHhPzv+rDsJH3jiVT3/yXB485RWZhKaSUJpdYOFkZx858PhcgqyNzLHGjk9DsEFtXxtaTzquWnfEKDQOUNJhyjmmlTStvxd4eYCqPRci9XPPxxANpQo3HknGy5S5iXVEKrwBn3UBjGkpmijOrFYnjb5vGSBka1SN+WkloDxrFaTo6jyFSePFe6oqZxG499V3nZU2+igl1JlUobzHYXLjOfKUC5eZK4tYC5Iti2WunJfyJc/dlE965NT2/28xf4KFQQiCDszqGszNFoDYxe5dQ1gTDAak58p7H0wUyF4aiL4afqz/e+LHTeXkjJEiYRXzGxACgfIh30orEUpQDYdFfALiYuSmVSDDsb0uG5Fmh2PYRgzfUU+hiFGmI2AI0GZYTq7t7TTG+GNUwLi2Hw7A5WSnaJBQH6MabxujUUdFYZcN7SeTNouDJQJleMHa2whBA0viEkTTM7UcWrJ2s8HWh1wbA96VLOqMv2iuK99cNJDa6szh93w/fstHMCKTDekMvzMftCzaz/qszour9f+iZ1SH3shf6PPdsL8B/B4cUrJNSmnzVQwCIYMwTCm6EW5PAwdYUh7tucHUZvSBQ6kq9VpSXQnoQGYgRPwjMXhXv/5y9Dh2TMpdjKUnB2GqiTm3kwdCTC0yQ7USDek2tY2NN9YvtM09CC37YbH9+6jP+hUiW3jQndquG1W2CLIYK2Raa99tOmQImNgYDAFxaU0G9UJOgpurloaAEFeyCi46HBHIqaORIOFlS1n1PIPwdDJ0NkcjJ6PPcdkC9TVbmIlTPvkY9DBaI8cmrGrMXKyv11V9D79uLp/8SAFUPL/tUEhwnGibrHzKAAswhvoS3ieLOmo+IyOrXoWDBO5ji31qstUmCuVA1gvHLtIUJEPisDKUSuPh7nRJcGjxFjAErUziUQb4VpJeIIA2qhPTEjaErGyo3scpw3lrwnDGmnkhe5nj81k35NFh5WB3TAZqlICQAxyCrMSsXKFiSyxly4sCw+oyciRFsc8Dp1oopAZHng3amohrlprhHh1N5qU6ngEcy5X0UzBnHBn3LGYRMgZWDCEouqXwr96r8/+aGHPpcAnvhhyJPfNr9XFzMykiEp/0dFV+YeCxG1YEB2SsKmrM0frjKMDZ0r/9A9RfkQ5jLxS5D19CqGhk41N6sEfciCaWwg5ErzJrdM80hImy5yaa7NmOxGP6oWehaKop2StF5VmhoMdxWkgzKKsPktwZe9IQeRxtVmIo2OuDwWDqpPNCsPUSQZHaBlvNor3CiSvZ2to8xKuJQ8ExQbH6AXl1iRA018c+gHEH0KT6nRZxOBgChgYJjScJb2F6YOyoxdp6dlqM4cVr4m3L2lMIGk2Hzxd1YM1bzuaOwk+tPizxNIXTWyvvh0LFXDmp/9q2MP0AE2FMGUVZ09e4ESj+0yPkTrdr+Y+/tpTjjZZPW/oxqYXJvC2sGMErblaikpX9HqPDj7sGRCaFuQ9BlINwNLseuJBZlSd8SPVQOl1skTkqfsgS8NQ2NoyvxekH61v3MUq+BuTPQ+xyHoGV0xzMSA/m+pqg+nNoVwAcccFRpVzbFZgb7NCCs7o8RgzILXvZk653tQ6pooaZpEXBNJXnjkcYV5I+KSWd7BG0flpTELsYnu5GVVCZxsq1ARK6UpVlDrPeRqGAuq7//itrufdB8QFYG3mqsvbRBItSan9NKJwIpLl5goCy1OFlloS2VycLAqhujGuoaX+32ls0tahNEL9mTQUWp1XNBvyV9y5tZ6NlccddQIYWXuP1DfiXPe/Y2TdPRx0l2eIqnhcH0+vRBfAlb+2WQ7irtUC+I8dBO2+CycorKO0uRTwjPQottqplTQCftYhTsLKPw42oU40RMPwAYXqVfWt2y/0kqhr1X5sC8EPRcltTwaRd4bzWn96135xZQUShwZPnXVNHeSUrT0wExjEtOFLZNl4MR+nlYO14Q5Fe2LgAEWx/7+CglI9cXst/fJtY7SW/TS4OU2TZKkUSOe0z4ucynY0SLR1t9ALOUIgJ0HUzfojTW9TjtJTv/LeyDyBeMkEOENWVvSs2p7LTfOBUpwZ5ibFxcAKCrBBnq4V4jVdAMH9PBpt9YVSYgMGoWXze6xyF77zD3AMIPAuINmw086KpqitIQnE5ksPGymbJkeH9af+um1DJRZFZxwzB+59amMNanZFlc8btsPtCEmsaJUlwWrI3dG+SpWm2vo3Z3Pf9sDa1+V+v/HJX8A470VoU4HAt3/vv13Lf1YoIptLW0NgpNdQvaPuMR8GFNKcdhajGsfoYkgq9HiqW4FPztu0tX16G5a95AN/247vyax9Yyg0XJCcg6CZW/MFCxfZEtoAHfzBme5OE4tZjYDXugUx9qCwVrCnzzeoYi3kJ0xWoM58eUusN+UbCc0SqvUenb+dPcJyPSAY+6OYcYK612xwHkRI4/GxlhmuhdoQ7ES7FaJVoTIJsTIOIpMHrPeAqaAhMhnJiMonrar2fAgWuJGJLbFDxTGi2C2BnFFUrs66UhSAxNTnQHi1Y6g6/a3nbB3blZT+wa4JSt8uuc+W2j17bP18URf1blwWLz0D21Kv/4V79Xqusv+t77S/24G/fReDaO0u8h7K29F6dFXId/B/qQ7koc9fap2XtZM+/mtNRrX096uxrX3FefvD1S7npenkXWXDuXwfcQZydFEFSUmbdMA75Xj2Tz0KoejU70s015MzMQtAbI82im4hzGt/XugaAjFN4OUePWC9PcOQ9Rno+xQ3PGMVSxY0QNUnbHRIRbZANZ/FrtIB2ZwUc0hn9ndu+4YRS9zwFyzc9gPeYRq77Wf+lo7Pspq0/JdjH+mWNg4/BoX0K/d9e+AKKAmwLydzxDQam0RSNhRsKNyijtDkhvMZy0EcpV07m8sKnzuWv/MFNefpj+ppzm6gRfaf2Y570Hpef38nl7Cv3Ws8t5eS8lJ/5lbX8bz+5lF/5zboIqB58QtO59gp4JnAQ+amo/ICAvC6R8Ti3jdeyX8cjDnGaEPvi8N/zPabRk8yzNEWDC2vEvyjyWp+gGPeQPJaN1mZYRyssRz0wuUGehKe2c/gVG5SIAuC3eWBMdilJhgmT2No7kZmS7+odXiOso2EOEVtSmYfWdyTKlVuXCQ+CcRxGXSvZhYYo6RCPzSpO6c4nEOrWn9UhWDf/OD6Yy6d8wlye96RSPuFm2VAj98Z9CcScZCk9I9OFOzheU9uzP8jDRSoyxByis90KomVgwqbO17q4qZS3va+UX3znWn75vXUvg6Vcd0FQhr8BOukGr3BQBb41MxZGzGZlpFdhjSO/+KlOqItpad+zUPEZD0AlgxkYPiY08sM3irUP7cAbExrDJyY6pelBQpTdh9LYuzh+K5zkgxcAWdlUVNAq0GauoNtyYH8zWR8VRnvZhDY13ijhgt8qoBVfwZuKrCWtw2O5BLTQBNSJJA1bZdiNtAmIyVQYkBwu1zYy45ECs9VxNIDZ69rZXBW66iTbbdfy4MlUds1ppnaJMjeZpr5Tqz8THmHkQuFXKAxrh32JJ+iG1o5D/e0aziaoP+pmHxptansVHm3WcunIpycWaMiogfQL85PILluqNHlPCGzUxmDNGnP7UuARsrEQYN5OTuubmKRkFc3Lbp2RcmVzFvBitNiZ56w8umH+NescuSXNRLvlNnwchDwt7zZgSqcqk6LDM15O1Jp0LgCZ9CAtWHG30hr24JuPYSWyoiMhhOBKiaLl82B7uq5kcMm7KgJrXEPgEzkVpgEeY4Xht+h01lA3h7+IvUPKbrQ+seS637/07oZL4mQJ6i1wCpBPxDsG71jnWh9IwgY74tr7jf54mSxaaotlBmarVefDZN3q17YNGO0kPNxOh8GibZ+lvhpLYa1WmXdvxhN9DikLqbcc9WlkqO2pEEGqNUcVuV3vthUvyu4RZfGSZlRl9KFZrQdc0glY/B4537ynmfnI6KqScTlSxdcEnzNRYYx5zw3nTVaspkCSs5IUANjYoXYcBAhijqfSioXk2LPbDEftb1QY4LIcBzYNCcJRCrCPEZSSo49WMikyj/f6fba8bKukWZQySoZgMGQ+uJQj3lRbdao5BWm8fH7sVoHo06FDxkdIjPF5SmDOgN7geALi4vaj9UkaOIccY9DhS59TZhwkXRm0yyxSzOt3Go6VCCMWzmQMBshGPm7IwfSyHii84vBgsfoinb13MD7RqnLaYKdIk5FgGRpO4Dqt5IbVoyq578jBQR9JgUMxxBGLGpVPB07V+zX9Euw0WUhArFH4qLfGntXFy46VgqFsEr/YARo4MIhMN9BYEmra5BH9CZbG+ta3vFcN0djltkMxGk0gSFqRrAdHW5e4J4JoEPtr2lsLijTw9pHCD6GdKdM1HKBKijYLuoXF+nkClCILKtVGwMYTxyJDOtNmB19gHRwUhX9pcHoO0wiE7UU49sZxKM8QMoXpVmO9kSRoK1vyWyCs8nOsR8jHsrK3xH6aNnoQMbhuCuscbT/RybCLNmiDtrBl13MBWO+5jFFa4h6tVR9oC18om83GjPgrihPK9UxDtI79uRRssdbttUxGB2yVrW1mLWyWjSyQho+Mbu1pP1baI6eEBIw1ffsyW8lHziF9SO9bg40+3i8VGWRZ0qPoC3IgOMjGC6DqVzllOAbiRnylkyf5H7fZGkwIAnUanZxTvK1IDqPNYAIi8f406rYNUffnlEiMnlN6e7mwEUFkq5567EMTZEMUrazRcBpKpZPN9dEPKPBkzUVjxtZkn0VS6GBt1qVQrq4s8700XlpAo7XyXphtY2CA9hDztyiarNqUR0dEr7sCd3DT7S7Pa/OHlUS36yd7SODAQJMp7bHB5KgsbR5fY+uAkiBY3EOfL4YSXE5pI0/3KSBTytEE9248CyUlgKsKAd1qeFrrAsXI5i3BB0cjUHeONtxDDe5EbiGeYlrGEZH3SWFxv3EUWPPjEIrFtMusTN3VWNJW21HUbTwkRi6OUx8XtjTRnPt0RhxU7nOQJjlqdGfxCMoGndRZ3pCuHMaLyBd8G6QcV0aIFChU+tlUMZWBd32wvG31nZZKrvtguDD3q2/M+Qg05wVRpJn4lOegGjWLexu6f4CNLdLc5VgWbkxVACTjcdeYKP4YiGiZ40CRA5J0gtpuaPTWay1DHUrYZiqEXLJSsvfZICdcktNm6cw/VgrMpxwOau21o7a0EKhyK5NfEGrULcArcKhHgF/dypbgF49K2Wz0XD3ygltxYa5tdoT+JcXH90xhOzrJTqyYk8Fa1hmGrRPoUbcAr57/NiZl15KZLh1KFOAc40/CHD6EboRETjPjJHPgpqXKNKW0cSW926tfElny6Fu5FtlBlMWVVp5KTqCuRVec6wP5LPTG/JX6T8pMZl7xGHpzhtpv+WI7b2cjg9729tcE0n0sMYkvIjDQnJWlXHMnIM3ZgtbK/TQV5QNmmXUE25wJNDZP8f0QEaSEIxDS+4L3HSKJtsShEIPUXiYGBJ00GPeRELBbZNMOMT5oDBbCllU4lnLf1alcOJzL5zxtU17w5Kk86ZGl3Hi8Pztkz+VhV7Kv1a4RDbmAURn76mbrWv82oFyzA9epvO+jS3nt27bl3/7SWj58eS3XX5TMRRtn0yI0JuFWmrK5mVKUhHlqfA7e9OxojqtA9GqYvui14BF3nontcl5dTa9zrh9pRRIYvyvcwpcCAklK2lAiCEQ0Mf4jg+aKLObfILTussMKyZeLd/w14BVLqmrbgucHmMG0HbyLayg0x4pwzYQuWjcfMRZEakBuC5WJUEZ4xBhl3bvktPsY9k2eXRtJ7qfnVEs3XdPXw30/8GApz3vypnz1F87luZ84j/u795PNSL63rxxYedrT1X4/FBWQoeC+ukt5628u5WWvOC+v//W13Hx9XQmoKEY3OkULPd7NQjOoJcTuqYudZnIZ64GrPhbG2Seawg6Js7L85tyPicoPh9vETMNsObCHJDz1lpFKtJT3Eq0ZfVm+jbffrHTIpYmnPXWjRrskdwBNN2i1abTK5nTbN1wVG54UgDF9gDFeNGtY62jIuiK93VNYH0iQygY2htzIgMdpxpAM8qAEOGKSiPdpHw2zIuoRQPs+l3J0MJUHr5Ty0s/alL/xBZtyONctwLFzLvb6T0VzXxmy74N4hO4C3Esw1vEkv6BMm/a27ywBrI21Ta2VCljN/79yOpX/x/duy8+/bVtuvIRwa2+lxA/gUyyx8EmYeJrHEMSs2h6Bp8QaJl/XrWS8Al9lW766AQrKLPzr90NxWXfa2gL21uhvagvQEmidQ7QRzcjV0cEko0/n1NR2RdRD1BA/hUBdDo1JPxSiBUtqrmFlAHiTY5fhSRWiVQdSrNiZdyAknKjh7gI7RooF8hqkSJrQScJy0pdBczQeEeU69KuK90evlPLln70pX/dFBw0JVOFvW4Br9mItp363/+o5gXUlne7F3vbV0+flmj6vPhH+b1PDNXxNbb2szOPreE6yEWWjSb1mz8ayatvbCcX636a1y++fnpe23v/lt2/K9Remcr7U9x2qdspFJVO2xnZ863v3cXIV/Wfj35Nf2CKmSfHoscEZcJU/V/k1wfA1/bXv5HuJaoyeC83wzUihMLIzs7fNFDXrPt7QvfYqv2FhYzI/e5CwIA3hP7OOCfkqIQbwJ+rRiPXsgd66u9MpaBFvET8MHQzB26vRx3DHnrAR7pnDY9qJDQji8aXa7iocVfif/KhS/urnbfQwyLovnmpzU+5uUdBKC6V5zhTRLltG7lDqYY53w4NuzsC4U7I1ov03UHvk5ATqg9auSKeuCHzsw6fyxZ82tUVBlWlC+aPjqaGw7Rjt2Owsvt51t778ROa/gBimgZXmIU2WjzfQnFoT9fBOfVH+UCwPUaOssLQ4kRM+ZNUtPPfNFFBgd4+bJ2+IVuV8FMcrSFEah47I4TdLzcxWMdDJXk4x5Qx9uNnKYEI3VMNOC73SzoknlzHN63NIsl2z7LnYtraF0+DTHPkdWugyKfwOSaPZNtZfYGB943Q3l6980UHbCqvBKGWQucWjPfU0MBO6muLH9qF3WJFgfGrZez+WNKSaBYedED/WKRuXm0gQ6GXOJAiwVvFZT9mU4xrZ0GegFN26DcrFj07yY5TJ0kFaAwJkDMvHZRgHyifTNQmiz7h0jHgt1+rJIIJ4nSdDVfoMkr1s6qR1yZ4SSTen9nl784TEp1ay9D3tpBSMMyV2MWnIP2Xt5U84+0A601w5San66VEhi4GaCqKxdUNyCMIlvPGmeohJ+apgxISfYJzYD4DBZeWTvKZR00dnHkcdiBadNoaw2tp2M1naxllW+j3z8XN58VPnttZf8t1TVh9oZ/RK80I8z++ZlfGz69iqdUyfwYvFrvvHGsMQY4b2crsSk/E41DY9+ua5XDiSfQNCMxLK8sYRyuNxS6YLc3vAUhZm67udgkMmXtmsE/qgWbwPeM/Xl5QOUfh1XuDGz/BZElqOKRJSHKCHCair987iUszfu5YQK83tQ4NCKNen8aGd5Kg32dbn7PAa/rBS5I7nZ0BrIa6H89pghgQd9KBCebP12qYYG0/jZq/GxvlfIzTVk31lXpgzFjqedE6CIApHtX/11sl2Ks99Ug37YUESrRo02GhECY3vSGLM3uFU4n7tpwkkluJZEd7mrCM4JszPhMMxBiQmJRTaX30d51JuneO7IcDiJbJmpBlEATOzxlWMnEPAdVnb7ZrQdMCO+j6YItG+W9G7B61MSd7zOQrILaD5ve3wxutKUu6GjJ9XxoqMBZbb0gXXDAARc1sWoFcqOFEa5ctLSJmxXNvJQElAci5OVoSAiLxwx+y4WUCQQOP44dSSXIHrR3yHddeuxPFi5sdTDF/sN+0zOBgoaolLGjdRzI8nMRU57+8xN7siGeZ/O6GsUotrG7zGTjnUB6KBpQe3+YV2CXvCWRZPlOC8XLn7yHFFvrlmXj2WKCKC7HssvO+jdUcgzSJ0fkpWLzSJlsSSCyyFAS1xZqQKFQnZd1q+CxkILcc/sZBodXnNw7SfXIZOtVJHSg4rRAci1BdIqkgY5bB1li8m97ZGhHxWWYkEER24JIf9JeWXDZv+nJ0J2ewn+JE/yOZC2KH9B6KA/i7k2BqO7H6oTzYHwVZhedUXBVTYiFkZuiEda1Sy5u6TGsdHE2WTCo8Kq7bv8EDWxXM3WFNGSxM0VVdlSIIxck17oXhe6xYUtlVFLwNKW0Zx8sSxVsx0MDJMZWkbHJbyS/95aclAkuaslnCA4KzdmCYG0NInW3NyizWbnKjctBAN4pkmlRMW7dCaCuYxGea5swahdabkKH2cl1DjfEqg30bfxBdhapcUbaOlyxNQJsZM/DaMrEBHWn/CQ2mmMjkwgNSsf0Kk+s1XZrDwJBoEkJp4muw8jRSBCmwtQxl/077VVniSoBcjXLOMoSKCYsaIFO5h4Ui1umJ0tSu0SnNzshx1Z5/7rhB/kAKVqpx4ZmUyy6d2Gf3rXnwdbdCvpBi4HlJyiapKG7I+5sSiZ7MiozYKelvLydlSfuqX1nLdMcbVIwXurAEf0JQA0xC7QzIyaC941d9jZR/70O4PkIiTRhk9QVqcJ7gys+pfscSRHuxvZxLB+Rv0Fw23tA1puFpf0HU8DYosbUZOaeFWnPEEcxuNh5XJOSBY4BWZzhZfZsdhUB5eXufngYTCcWbNgWDVzTFjq4g6rtVBGNk4wgffh4Cp2jOtD4BhqjBatioqpfc3VtX5LE3nk5VUGtXc6Xkqb3wXWWWChmGuHfg7uGoJKYXhCysZ7b2sP4xJksnN1p+ehdPLaVHDXsEWdcoDv3Y7OfrrX75+LW9+z9pOQGpOQPVUu5IhYbWinFnCHJgnuAlngQ6uv4fRc98glBQjWI4dfpFR8YCP39ST0d41NKZGBdNLVM1yAfqzkTSrbsUOUhtlgAgtYRMVe4OMJm0UQ2Unk0MO+rRILzwr33xtUnKMcNuCzkAfhgls3JQoDI10rZ/YQ7rPvbbASBA+5HUzRsyWncMbfataHXmQWLAdelB5ngmJWupCmYuHa/mPb11aauzBZinbrZfbCSA0DaMREFH/duGrIPBRkXU9s3cHI4GlrVQd0yyuyad2YGzqmYfL2qY87753Lf/glXULcBV+6htCYsz5vhpRoa/ygnWFdpQaTWr6GW60RpJ8Zh0lRZdnW0Qfy26NSLaYNHEL9Hsc/qC0zbIaAolTG+ZYdwUNMjKta1pBQghyj9AOIwUyBghd2iDCqELwWnF5RcPazjONhaFK4shOoet3/ilMNFtSBnckpiywevQOsBhkWyRhxEhioERzaKEmrUqUOGt717CjmDHSMKz/2exoH6oSuHK2lG/8oV35yOWpHB0tbfFMfdOTY8iCJecWA6juHhiFLAE/21C3jm3b717vYfkp12scC5RCTCrLQqe+/LpleV0RqNuEHx5M5Z0fXMtf+N5tO/nouMJ/zMM1/6HR3PbSS0PLDNnZY88f6EhNoa2AK+1iXPnGQIDTes1iaoEecnaNugaJZB+Wl+vtioqoS9vhqDEjh6xs8D49B0frtNf/43yMOoxnoIHtCD8YUjigyVlCf9pTt71M1wJQu8Xp4fPhGIoBcfywSVZMId8+jKlwr825GUdBaMMutREuWTu8AWHAAuMBbdD23fs+QSN2oS/PFgFd4Ez8yOW5POeJB+V//fKpPPaWnKSzzxYEbsoUHbQqv5+/53c6URo8dw0KGNyT/rzynrV864/uym9+eFeuvyhnAPgU0GP3KCZb8wx4PBxI+e0DdHOtXoTnqOmSj8Fh1a53rtwTTSYYHkikNo6VldSHdtM2dty4hF7AU9wAd8IxMou80I84hfSs3NSxgQy4JkUWalZebTXgVQMGVjCtvBuNRhjcNEBctwmUQUInkigYVwpdKmdHClh0rvUanxEXdUWErUqIRXigSC2awpPnznZTefQtNUV2Uz77KVN57M11PUANFeqUpPoWrtFEJstDEms4gTrlmlRMJPeeyvUxZP7W70spH3pwLXe/q5R//eZS3vDrSzmYl7au4HxLc2JTyNna5UZw49IKrzQ+IzWYaYTfnX+K+uKh4SQZQcEnIk36u30nSUqNGm9Jr2hqsGYgRG2s3VmteAkGOczpp3KR5tse1ycym1uJ5xCxJVJ9HIfpWbYteHwny49rnrShA0H+KKzjUfVtuGnfMl7ySC92oY4sLaDqyPmlK2MDo2bUQHPo6puIMX3aDow8n/7aVI4OBXXV7b8PD0t52MWpbIosma1bgdczAlqkKQERq9Xa5VpJEB1v++XdKd0Blslw8/73KpT18I76qQt4pB0tsOchPj2BCLHsB06m8pEHq59mLTdeBMmJKa0DjoraX+NREr40NlGxop2OPgds2H/CGKkBURpbUhYUjtEyR1AMjpRQN1Atmt7VTR2l7chdnjCHj9LTWe892i/ugcAaDaUPViRSH4eBbrSHw6o0pTjgeW8/AEQeMCgaRb89PkpvYy2A+SOwQmoAjVLmmBA0hlc4P5350I+P4GkCW3PPOjP+QGoyllrqykcJk5MC8gZqM3VjT+17XSRTv99wvJbtdi0fuU8EqeXbaDlYAhu0NpUbyRynNPzb6Jh5JLKaFxksIT3fDvKjpd6GVISRN5u67l+PE2vbm0eai5HysQvIQwbBVbgJFGe8s6c8KX1aupqF0uWaZ+3OdxjnDiLQ38i6vGbDWwIh54lCtPpOT0mI0nYTsoWBNHRCFtyTsAK0M0Vi/QuG1lFykxVKOPIt9rylUam5V8T3T/B8gwO3GbTDTsI5YdMF08D6Wx8b6B4vgRtpTgwlGeaE6r0Lgw8a2d7v7JAkwbLRtV47dCdrJeMbCQCtbddSu5ybMV1x5YDtvtrcuBJzI1lybct7Y2ymY9S+zgMDQeUhdSQ3oC8GnRWKv4D3DfryrruW5+9VNEcgYtfYrbBOaUZRjgEac55WjmGUpdOobl8DQmbZ+RoOGrUx7GnkeQGsLFxZBZY2tLWaYMh4p7Ig0MbrbLQY0nMdKh/YOg0lYkpsdfqUBC7ujFTYn+FVeWiP9ZHIGX7wOLEZc3mEuByYYNODWZBt0FKHqaU6nw/NDU9Ff4C3BOIkdVQsJxYqlz+MR3JThjH0VJ9tWOrnzHFbQ/wVGlbflaJ0mBCVAGwjpms7J6EUDbLaMw5VHOWY8h3Kt9ZPeRBhUD124XfjYpVgLdAXq9Ud6mA2i0PTlDi3awirm5KIgmZwmvPp07i5wcaFQf+Zt+L6rDG9DGU6uxI2cq95oed5n4JwKlQsmw03A7WA+AYNBXoJ2is40fM2JBGHGrHSx9GMmxImZQAtdkiKK9TZLDK00ED2oCWt3ZqAELynIaOYIJERKSXhW40OncwkWd1evu/Vxx3nHylrUBsf0xuwl6BPRxhAWV+sp/53ZP04oaXuAjTV5cCab+/EQtWU4IRYpX7nboxQVCAaMVVLyQXrMAN79wm8qM8BmR9I4QbygjPQMgW1kLppCRb+aIcsn8Paz6gQvdDNYHBD/4NSyJQPqMDi5UnKwWchTJjpxALXF2k8R97PlUQO+fvyGqHAYCCZD5HiSzRA7rUiAInC0fQuTZ3MtqpR6PqF1ZwxihiiCG0csnyFnCdKttPK6v22K7Dv3eMbckoBSCZA/rSTKehAglD1Mo4OC1hjMJd0LUg7+Kjn3Kwr0INyNM+lbUhwDDXTnutpfxXC46LpG9dcpk3JOnSe4zqHhlCQ0EGmWWtL0lPMceg+7RxCYtQR+EFjglVLJsrozyySUUPME5CNPTR/oR5fDqXBTtpKIxxsSmFaG/d2vzo9Kddd8xQ8MTWl41oOAYQhe+fxHNacuG8m20cnAfMkQ4wocHYH0H7iqS8SLaxhWmf0xLOQmgM8KDW1tHlLuVZEl43AgaYxEiQLb4ovGDpvb3Azsb+Mpw1UaTsXgNKqgh8gxP/hLBvZKXL2+DjAaUdMR4SygYfopngpfzJB+FDIDI65CNP0ZHFZwLUwGUaDwg7hMK1xtbe2kFhNlrl8LuG+tk5GBxbzadAXHvvs/R+3NveU2pnAkYM9f974d29Mvp4toB5/vXi4mdoGH0cHzqx1iwhP6nGnlkxzmKGVHlrN2XYqZ9u1hQt3ZW0p09cfT+VoIxmFzuCYPqX5riHG6CBDmnhwVbNPwwpwM8qqwfbfo/INlUyCXlgAOQcGhA0Y0ZQDD0ZfB1t4xU3Wdk9eo+B3AnldWDz4KJifjCA+Faf+dcoEikjp0hCAsx+v8Q6q3uciOUfACg1c3hGx++DxYQtRBAmn3VNNR0zIbWHhF6XFCs1DfO17oiZbe1vhpTdrGK1uAPKhB9ZydDiXp3x8KU959EF5+A0RzEBIWMu3CIMyff2NWcISts5CdEJZly0+jwYJR6A/hMr2OnDPb/3Iib6y778sM5bY/rs+UOP+u/Lg6Vpualt/u28ADsMoUlJ13eOwfvvIg2u5eDSVZzx+Kk96xFwuHU/l8tlSfvPetbz1N9e2cKruKXgOxZPWNBZSTh0DOPeHO7bylG+zVCRrA+61iBCZ3jW8M+B/mG7Em/Ryy6ak1NqgGAAKcnTcwrBad4arnXGM4x5BlPdFlomrauOFREYGT24KdK2bvko/UKQ7ydyCOwu4YPocMSsCa2DWIaOLexQDBB7zND+qW9MtbeAwj8vWLjuvnPUCXUzj67QlWChHQNW7f3I6ta3Avuz5U3npC6byKY+eyvEhbwM++gzgzO/rp29P9fq/6T1L+Qc/tS2vestSbrjoyK1+ZNyF+ZuTVjcevXou1vPLnjeV258/l2c9VhYNcT2//sGlfNdP7coPv35XLl3EeFZie/So+U8YxWHwrX6Pt5vitvDtqI/x6GxW4sIz0VquBvkZufq7OBTENyJg5ezX2aq61XcgFZYtN/oquuQZBOm9PGqmW5xQ1D7syK2+rWQgONXNSKBfpmd944karZje6LCDnDY8RTLrzZo2ahdOYXSFSnFJpjuVmXcLtxwAhOcYOdR7c/Vl+v57tlKM4voM+6x/1jT1IyQGqJ+aD3++K+UxN8/l67/4oHzGE+uNpa2SExi7X8BjXnqosPvEyPNDURzxmU4P622b59pN2TbGu7qWTcPxU/n2Hz0v/+CV5+XWGystZtWvCmB1c5K6HPqBq6XcfONcvuXL5vK5T6n7Cq9tzwDbxw47Fqt1+Jp/sS3//Od35dYb6zoDt6zmHTGecs7lqV0MlynvmCGI6b9GR7PodAR9Fp5Cz3qhJIhp9Oi4cymdA7o0EOEd5AlEM9/xBisI8Dul7KKoiLqJjwf5IW6wo2/AwppTnQJYllpMTZSlnoCjJMysrZRoQZCNs0irkxLofdWRe4faz77nPIVCqXbYecjhE1YRBjGhZBNF3rFOgpC1rJrl97hb5/LdX3FQHnOTJP+0BbXNCcgtS3NXXRwUQt5afnAsRgxpD0Fhxew2Ijw7pbS9InD6SDTGzrgJldXr1adR6/maP3JQ3n7vWl51z1Juuk6mPIXGtAKe7W4un/yYufyvX74pj79lLWfnO9vevK0ua85AqaT6SOp73/glc3n9u5by/vtK20qtXd8zxsKsyc0c5vtMDIfTSaMbk5rXig77YEQ7AW3YwaDO92JwyIEWltZqxCB1Iiw20ymns0V2YsZu5VRjV2kqk8ngMsIhsWO/u0ORbGi1jW2ZPPON87RM2ixGzIUZQRK0CeTF8dUe/rJBhuakMFWkxH4tipVo/oiSyY6ZIsgU0i8VDZj2irDIpxNSVmXkmkZbq3757XN5zE1ydl7d/nujp9EKWYgNiBHhRe8tArQ6j2PuMHjYNW7nJafG52rYWQetTBgtvFsfqB58fL72iw7LLdfNzVfQHjMCrm1L8JuuK+XvNeGf5CyESg87mTiOd/1dMwqvv1DK7c/dNCSFFYRAne1f9M3yLWJr/a9eH4Ijt6yBvIR7TSjwmeWCwWHwiGuQgBoSsA/3DQskYbIng6PQ34kyl50GozyM2HkrdgA0uTiOwEkfcTBINqh7KuJ2iWUdMCQ0rVIa+QJMT3lIBagjbiYR9wJlOrLQbtgAauOM8qzxWJtKO2koKf6NZytjX91O5c+/aNPmt2fn1eONeDvWKbAaytBEf9n6+ZDHONysZBwKk9K7qUSmqfXDnYoo0zYq4Y1bQnKMiEEV+ic+opRnPX4ql09zMvxU7j8p5S/+gU153C0VCVVlqFbNFKu0VJhPRqdOL+ohap/6CXNbGyGKRSmxjvceDOvmcxcR20ZcH5p4TI6ohMnaGBdNrjoyHHQUAicb+cISeTDd8UZGlQGHoylJykVhXJLUT1hH0IW/CRWYDr0G3fyHr1loCmDPO+058XZGb73Q3KEVNy6yMDt3iKBJcCz0aCOStC8UihIJBHAriWw8ZKMhYyKOqOQayFvcFkcInvBycraWR940lZc+f1PWddZ5sj6/DgTLO019QxMon4KSYqCmg8WGZOA6dIEd4RJH05hFD7ewJCNY0+BbiB+QiAxw++/Jj6yhO6WS5ik8eFrKUz9hU/7QbXOb2lR/X1yerXQkGoCe9dKlQ0kpriHBOP48Gt59Tpxi1ZmnbzooQq9OevRtBkQ2Vi6hQQwRebLvSndTxOpAYb+0WdqkVW1MY/8MrWZ+oaQ852+uq8NxxNN5ZAlJpTYxq8mmoLnNxoRxIYNLTb9hBkMdQ412R67kQyEh0E68jAQiR9HQdFlkXhZxMxQG8BATJEAif7Z+qqzdd1LK0x87lVtvEOuE/d+M4/PUpvO0uNaHknAdRwn4VKYLFOVUaMvaIh5DYhFOwtpyFiPQl+0HiDu8u23ov0dBbrhIShhHhO3m8oefNZXD2UOJLFTtzeyFouF88GxqkQMaGOs7lIDF/G3log/kMFxMSM6EMrFQ6qk3i5+ZUBPMrXKlKiukydWnluZUdFqGMcCUOCuChA7QBu4Ty4D4Gvp1MbFDvhAviz8esg1qbMx7WRdXUXdvoJGDYEXN3H5pZlwmfnARUpYMW51AKIujUsqmvo4/QQgY3tEXC+fxvTjqHVGRvFPfrHPXJ90qC5BklaBDZ2fe9OEsIM2B5wqAMoZbd4/ayJh0UF/eW4+VkDv8BgwSSWoXASevnEZDWqP0N103lRc8SXed18NQRnjTVJBOeWqYscb5685Cp1ukoyczHbLUokRDoLNiH7JsRgAZSaLXbMGL9ztSRZGdbhwMS2xold1JHNFAg3nKh/6Qf4Ob7M3zw3U70nL/qC+s0I32quG8HDqcx4oTfo5b2QDqB01O2jEYJXf8GMrtvVFopk4XcrZanE4EXZFi++aljarJzDl8NxD/OCdHbHkwzrEW+16z4x55A7K00i66MDUs8EyvQaiRn5P1AoP68S55kYNZy7szscAHhegdHagpbyoQkkF1EYa3vFcy/OB5qNGAR9wwlU+4WfIeMFa8PXZHRSJJLff171xaBEDCibZZgyIHftwnedZ/FcYucJKNDC18srvEBmMrOJGgUAhQ/RocYIjbz6W4W/ch5WMzpcxHfX+QzBP6yI0gBGNTPu4vvul1z+qE0RMaQBy6PWskr8HjxpZjb9YEDhxobmK0RBCEWFpYRyNXOCQkNDkcaRRaE9cBQPRtjzt0JQq3DbRBYzxAyeqdUBMB2ym5sh6enVrRiTftGUFWXDIIfoYhzXaz+cJqyNwWLVNkpU4FEnSyuSyZiDTV6roYmMk1cvVzvPODS3nt25dyoaUHK/5fSznarO0/QP2QJzkQBNlfQcp8xwfm8vNvrxuMyLWIFH0ckKlnYJzCWQyXxS/FCi55fHNzktzHnXdL2FoMFgqHgcSRcPRmoCHUBfqztXdeG8mIl6zSlaY+oCVHSmDQAMKgBEIgP/klzDcGZKVj3w4HDUTTh2XjSJ+qtqignrrptHYHhLSL5qksNAO0bso9yUIMWHlapQyaC6hWoIzCJ7MSUzgFSRG40mhXO5guxK7z3F/+DawwhNWK1i4OX/9B37uwH7Ib7UEMSkIZ/Avt3AMesNEnejKaGTKSwIOgW9vGbJrKD/zCUj784NI8/HXuU8s5OJjK6XlN8dVewakJCJoPRKGG1Wb//X+3LR+5LMeKg/ECkzMf0HjAIWtKwHS4o6TeplNZUJqQSVKawZm40FK7ZH4RXCbbGvL0mZzu12Fmd0fxPuH3ZeHuWF0pnwKGELXbuRfBXx6jZaBMnGpzUp887+xk8+7IPhhkdIrtIAiYNRYE0z3SgyGi/JYI6VyzO5xEDbRSyxxlDmfMEIbW4SfgPEFGetIJJXP+OgV49a9UYZCz7qMnNQLWh/LpnK3BgbhHh3AXstOke57y0hKj+Z4FJEVURl0TUMOeb3//Uu56zVJuuU52B26CvbRdY8qHL6/lHR+U6qt/xIRxz0EvNYpQlcj/5zVL+ZHX78r1F6pfZUm7HXcmgbqOFXXjBS2hNrb+5DcA1GLE5TrQE3ScpGz1xzy7h/ho9B40BAQb345Lz9k5KBrL96xIFpTTgKlJIYOWxiYYIEQ7tdgwBTBBUs3Jttgp5dgj0F1dCi74pHD0t23fBTrrApEgs8TgsKAyT6WH0FM6K641WVedmQrRnrL2c22tbR4IVH3mwmEpv/nRpXzfz+5k2eziuy6bV58E1OenEdZ42ijN1T4WR3tLHM9c43hw1897GFOtYHhYPTNVUOve/++/by1/7Z8v5XSpyk88X6Bb9SZfPVnK9/9cdQeKYqjfIrMLapJMSdkP8cffuCvf8iPbdp4AHyLElssHjIJZ0x6eBEcm+nFUx/d7oFlROhZb5bGYI5OVmPlf+HRoyd03NNs5+SkPIjVOlE+tB5jaR9WOfI/y6bjajF3kJ/hsXOB99M0FFSJ1BEvSO2FPwPq8ZAbJJpmtenM0YL8AWixCGmyYy15DpgQVzV+Bx/S+wzUnIs/3W3288oqXSrqbmIhJudQhvVsWorRvPNcKjjtp625ay8NvmMr3//xSHv9xS/my52h7FjkbQJhhKrtdEwXTyIEsaik7eecBHQIkFFSxeZ9i1NExfx9+CNPpGonKf0cHU3P6/dV/dl7e9YGl3HipJvnooaRaaHUCHh+s5cdfvy23fcJB+fMvVoUeDk4tLVFqs5Glwf/Hq5byXT+9LYfz0pJkhEpG4QTQMjoC38pDnl4rz9V2O+uNkuApWYyMWYDuaiwmRJ1MEWidbImgBFA+A5Z+7hn4E78wbgGpE9owSG/KLCdixWFkmTG/BBrY/k+IgyAQqGj0uO0brtKKWXTESvYS/K0+zNkPoWpNvVMFxqGFp8laD6hOo43vCpwJF6ftkQG6RRaWKKHwHzvI2sAwhpEPdHVl3LoY6OrpVL7wmXP5sy/clE9+5LjHsYR90vix7u/77KvvWs9c6x1Zp1BDcz/yhgrTd+XBq0u5eLSI8LuJtPbWr/Vo8Mtnc/nzL96UP/eiTXnkDbHUex9cy8/+amlI4e53LeX6iwLxLIxqwwAFTe0zGYp5J+CVEEq/FhlsapjQZl4i56roY6Ov9k90xNnmHoy+rK59ZaJocm5TdaKr+gKGC4ei3dIxQpIT7WkRQVpP29tsW3AsaKn/1lNgeQ4RCwF8Agqw5cR5gcpgIK0hcZ2Tt44rZGKgjABjEqTlkFgK00HY7ZYBQrUExFyop60J0BvVF/Cw6zbltidM5YkfJxax0QjHq1IsmPcU8FxOh8xQg2j+YBYSBKUqoloWGJajIKz/sGrafVqscHxb8AevlvL2D0zll9+7lPuvLs0736IeLfEly4m3Dv062dYFUpvylEdP5aZLdROQenT4VN79obX8xofrWQKlXDxeW+4/90tW7pHSh1UCrOYpI1k3Dwc+lI93IIwxXTPk1z78lELrCn5pZzf+ADnapp8BdychA3JOKM+gvl70HbT0k53dudyB4QpgMIWLcwEIeTYex3Jgf8QFkacH0k9vGOY2cT94f8d2fOG8Dryu/7iVd8EWODTIPjRZZ5zNhSKLisaCdl8Jgq4rzjr28H+8140hauqrzHFPtrNsma0+AbFObnViYua1kAK3vxtCgp7RUrkljFY0ADzbWAQjI0yIg5rr1ZrKe+GwOv9kiS7oEWLOJKRiTSR6Uef39UzEK2dTS5mutKjXrrtQyvGhDE31LbBmg1PP+YsYGEux9Z7IXl7SxqIa6STvs+qmKIXpE4fZQqI4pQw1QAlwGJpjkoS/jcdsuuI82jJIyYHMdilP+7oEMX2QFaBn/rWVG0OlaKPO4NrKV6cb1XXADTLtG0pj6OGOBo7nB+WEhCB0IjknJBlC56EkmJJ70G89DaaUppDDiOY+oS5mLP3XroBmqmB4J1jssBICxIRk6tZfVVPX47EhXtGSsC+FdzzI2pxjwsyRWpbpBI/HIKcxpx5Y/UHDIkzFbfP7TLLap50eHOJCEAU3Nl+YebuVG9cdLeVSFXh69nzn2he7KFtXKYakRj9EbQzh4An4d4jPnCfIMCB2T/ME3tDEF0hpOcm+lJA3KnsfCquRJ55QCI4ha09gExCaFkR/Eg2Bdqc3CbTBjvUNdXFuBCIjUDa9pY/98vdtM5agHOuOQKzcmFjJy+spiu7M8/32Imw2mplmR9zR5yQ2twtZGP2GIMJcuuOJ9qrtIGM9tMmTEdf4gDQ1K+/GC7aRKSYHTmQXaQwO9kOIa9mDl5Wcil4eozb+7a4mr0l91xxizEiGtqu29yi7K3JCVMKBNtx2Jpg5XH08u9h1c+lQ+q45VOIcX1YXEjpiIdXnoThomPQEIxY4Usp0ZkNQcsGqxe3eYP2Yn+QaoUVtiCvaqOJ9cGVu0C++gepIwcMwjVCF0RBB9D5NSlPLTbDcEc9XiMqQVSF3DEqep9shUcGjV/q2xyEgHMnDhyoQ/sHbfJ1Xc/FNUjiuKFQphLCYamfkIQTyqkrENkqBHynkB34RrZsHXIczywilF6MtnjBimoraqD1mB4wRk8NPuSKpPDTdLJJbf99lmLEFbaVt+RW6ClPhpkYlw7uAgVZSWBNOW73BanWHwI4tC56ljidjQVloUKoWpwV3+ypB+08ZU4Q/KrS4KUrM/bCAdlKAEddgcEl5g3lWfZ+yA5Fsw5YI5qFTtrSQiJEQ6G9t0DBgXgkJZugtOU3Jgua2UYgzAF71PIiKkIWn1+quwBjWQD8nqulAgoK8FLbTNoPv7GAz7cZaGXMbUxKDUBeFNsi9QNDS/QKs1QGluUqKCxipkUkFvMArF2uKLsm/a3ObBrGF6o1mK1HDanHmiVOEOGZLO9kSLd35qW23/f2p7hribHN5bUeLeDBCg2Az0gEmoSkdVhLStNDOTqxHn7W8AhUYHQw873qBfDosn/BZJCNjtDChFJGSIh3F2AjNjDiXtujIsuhAL13K7KxIKCUo8NXDxQlhueKLzsNoJx3B5W28fNedqKJMHwYj5TIldZATEW8ASVphuE7SSg5k4zmb9pIta7sCc0tIGMVzrkRQN603khWyM1DUUj66gIkgcN7mygU/ztWoPxE0E6Tx/AOILutowgdJA3r1/q+Jp1rLyo/Vk11hv5+nIQLq4SlWHA3I6QgwIiJRwyYpTCaag3kOBFua+tsPL40cINl6sf9unXOeRZ7gBDYKawhIWdn0C1STttXZUN0NqG793XIn+LZZeAwyx7h5pHTjGDeHYfRAD+ELoV07c0B9F5XmbW+CjeRncIjNdTPzG9W+etjN97eUmVZ9t+Y/1N2M21EQ89K2Ua85CG1fw8Dj2NLF7Q7nLvRTBuopaELjY2RkB2+HatE5IBkqlKfJpMk5+oUXDsKoYEDIeccsAuEDgXm8A1MhroM2gXFTIhIpYP3Ngx9LJx0bNSlgfyuTYqHhAdIkbkMDvzn9JJnl6mkpD1yRLLlbrp/KpQvIe1dGtMVJIgjCOLNteWXrw7WjvlPSgBFG8zraYbZ+PAuRR0QuGPjQ+F8YYhsSOrgD97UvMZ4cCGvWEihG5vZV2IVnrp6t5YETOU2gbv+9xbNcB9od2MzHV5QUIhpRMaHtdUyunEzlwZO1XDgqbbOW6y5O5crVXctirJGIdppxTTpqzt5ohXn82YrbRwWlnmdwcj61ftUU6BrZuHS9NPz+y0u5fFLK9RfrCVCiCHz3IpUPIA25RIaydB+AHYy06SduUrum8ojolYlX7wj09GH8RlSkzxOtTx64NiTLoC2RAzj2VMKhA1O3JE17mF24ACfUOnHcodhra2cStwKGTrRuCxGZO5bFAAoIHlBYl9jsFvOfKpOV8pRHzuXFnzKXT3/SVB5389yOAmdtPhayfCMT3EU2kIghdGJMZoCu2KwUyPJKtMXRz2jwmY51xWKcGmGsiXzper1Vtw57y3/elR//xV35mV9e2zHpNSMQMfWg5EMvgq0LeRGsEOt+hTWkeP/lUp7yqKl83jM35TOePJXH3TKX48Mahjwov/qbS/mh1+3KT9+zNoUtJx7paPXzMQe9kxuT2vuKYD58uZRPetRcvvCZU3n+E6fy6JtF+dcU5/fdt5RX/tKu/IufX8rVrayQbAfDAtVx0poOaJe3kgbN2C+C4oDTQDMxJtHpjamO5xxEYwLlajUSo7W6ayZgDEz23DKSJcIp3oPRc5lx6JrlASRA3u9SBCbh4gdcSQwsegDWlEN7McMN16rwn+3qyrdN+Yv//Vxe+vy5XGxCnwdvr2aL+HcwhNd+57d6D/djP+Lvh/rhNmY08rHK8r790C9syx0/WM9MX1oGJS/zNYVNIb04JeASxVFcFcnVswrvZUz+5Avmct3R/jb9xN1r+aYf3JZd89bDakId7h+FzVzK2XmdZM3lf/rcg/IVnz2VGy80SKVP8BbLpfziO5fyF//xUh442cmpSmHkmS9J0Zli46JcY+/rVfSxkREzfw3xc+ikhyp5DFgBt/FoCgDVdy72tjFcHOouLMQxRCon4MpsN+OQBLSWzhmEjompGr5dNqdkyvPTQG/qd96Yke5V4a/x64sX6nbXh03z1wKr1rdMv1TWQ5INfS5sW5X0AyeAQI8ypDQLkuBrKCx2OY3PoO3XaGvo01CfJAum5ws2ODkv5SfftJa/9s+2La24zZUTHHcrRI4rikuDZWoCzWndhfj6qfzdlx6W5z5BrtfzGBS/EeAUGh4ezOX//Pe78q0/clZuuU7n6mgkh96oX/Nctzav04m5/M8vPdBdjyS7sa2XsKXDWOxUpyBT+elfXstf/kfn5cKx8p5vn2zKTqqiJCeG4YHfITY+PmYI4chre0H0w51Z0Ay86QVy6BrxfSR1aYw66cKKLN2Isv1fT8AZ4ROo8DTBNQeMUdzXT6MCgz/0X2Y074TPuREybE3STnmGlMNa7+5g1Ze2oBFdT/X9uy/dlOc/UZbHNgfXHMNscA5ZCGt6CP+BlhSm43dlcH364PfE256fR7TEv9M7SuX212Lgg7/0H6ZU+T4OE8E1EQRlUv1ehbQ+UBVo/Vqt6Oc/Yy5f/Oy5nadQ04vZqYtDRuF7iKEAMTZQAtvt2hTyd/+Zg/LcJ9QtyAXWV1+AjYMWXacJ9VSi6hz848+fyyfeWufwTq/IEVqvOpyXpe7+NJfv/JMi/HXr92o561Jm2e7cx6zWWx2etS0vfupUXvBJc8uG5MNwvUe0cQpNxUYf8CFjMBcikrG0MeJoU9G8O5PJPPkKDY1hRyB4+aOdJguULTh59hP30foBf9ZhBzS+D0jQyHiPLxoXxvLD2QSpU737klZKpet1UCuzfuV/pwywlbRfVNHDtlQAEf+hfEZz0vzhrbZc8XFnRi9ZDfozPhTSq+1JLRuW1BxaPcOCkZvVJETlxsDTXr/0OZvmMzFkQxZJ1jQ4qvPjwn1Oi01Iv/GPbMrTH12FXzYocasIPiCEqeVfd1TKc56waesVWt4U7z8QsvDkPIT63Nd/8aY8pykZWcegsMLJqbRpbG5HpU/l2Z8o28XHUgnN2ZQn0iGYboqiWUoD+tQNMCsJX/AkrI3sUoIBKpsSJSLrTUEMOf8pzA2i7OG3HXWsVIwphiP9l6N5PC1A2m0y/0x0yweh50mTU2DBLJ8kC8WYawCsxjxO+8unS3n0zWv58s+Q7arqxhi++oxSZ7vkBPYm9kpHXnHOeygKQp6JsWepLe/4G8uHULAFaBablLBZPkNWSZNA2bW4eWqreSchp36fR6WGyGoRT3nUXB5x49w2AW0kI35iIRQLSUytqOeBq1N50dM25Q/fVoVSPPNDpWesoZuP6nTgibf6fgZAkCbA+lJFLfdfWcvznrwpX/rsTXM0VsRnio6E0QLi5o2XG4+8MVow0ML2DrA1+R6HD20PdPA9M12S6dF80rYlICH6QFaSK8jrVdBQnTbNe8yZE8GKI6kxIkHgGChlBiIPaYAkpJFMirgNDp2R1AB5Y3L74hX1eOouNp4fQG1rGFSRjkL6B05K+eynzOX6YzkoM2fDeeYbjTXKsLwFF0Amoc/vTWLj3/RhBxmPoVg4pz8LjCM4nx4QdWJogY2Ati0jBVbuMSwxTGKXoQzTq3os+FpuvjiVLaUH96+PfsnmI1UY/8fPUEHVacawYkYx+m791tACfEShhz729drZrpQ/0erBNEhT04OF5mkXVgnJzRrylEQjKF5AHUrGwn9tOjlGf+AQ5y+WD7c5hn4SC9mThFhNkUHwdJzQMiiVblPQTvuwdSYJZETNbCttp8aD5y1DPPWKyBTCHJYY3AEfbY68E/bWA5oh5ggNp0NMUGa1+J/+RAmBsaV2onKbE66wPG0eTEdDjG7BQIEhWchoAGLCD1syqocvJGMe2pqnMIxgAm1TGaTY7d6AfwPCsoxSidvLicuDMBgpRfPhqDI9OSvlsR83lWc9zlfTUQVdxUEB6rX33w/jpPeh8HRcqtWrsf4nPaKOvWQSGhvlvwO7iNONfv0D8EewZaXk46YLIo8wvWEHZQERynEFBdJl8pn8RZH0Rib+tcaQscIzOtt1dggFsPdafxuMAn8YbB1rN7OCBENJVehDlI9v8EsFnDpmawWYAKRRLLElpJCiuLibLVTLzddN5fEPbzPPoNS43+748mnMHOZdZIEJKbEDjHvsvp0kZDzOpFyR8+/j4suooVZxuAUzRVcm18m5ElBEjLTztGVPO9F/KUKoXvcPrMk5dT5tG2EF9AmkiP98P/yaefeMx1ZEJlMyVtZmBUPdjhArhD/fLeUN717KUduvwb2w0j1vS0UZz/7Eudxwoe7q1J/VEKdd5HDVPSLOznbl598mvomQT0IlAB2JmLQ4gqEUzkEwwgBFNDDMO3NLeyARpnR1xaL94OUL5ECm7a/coujXGctnI2hJmhDzp+RJhLXn5UCmKyh0B3hoGo6sMhSKxBlodSGfspqym7gy164K2CkqyQ40FigwbH2xeXv12C9jJh4Mq5MTyP2OPTaywvyu/U2ckqFeHD8aXIW0XdIHVjk7bOd0bm57RhbhgzECuuAFKnt9GGTNNPmmXnrr+5by7g8t5QDLVqlzI0PBPFt56RNu8R2YwzSF2AeJToa6K+zeTOXud63l7l/fyYYtcH4ZbCZEuU7tyPf6y8/64TaN2lmVkvDLz799Km9499r2jpQszfg8pq5xiqWOSfB362SQWjdAJmuE1AhpZAcsfod1VEHJeCavVVURFq+c22PE0w0PWUBDhdeSafalj+k4MRNgtR6AQEAg7GS0cmOoz3OlidTmVc2YWeWA5+qTxJrrltVMN1oGBPqOVHyIfpiRojZZxfhmcIzbFdeC+2XHSanSAKGNVtb35OXEO9eIPkQWddqHUWeYS1o+RJH0nR9+fd1azPdskMVNCc8GdJXm59jcQwUrzOKx2Yn5kFXJaFu+9z+sbUznoMATXfTOti1ecMvKC9wElTN65bpK+Z5Xy1SCzUEIVdshGNSE7Adp9ZGYEzz38aAlwZKNYO+6nHcv2fjEOUOejolC6l4OnlC7hsa7Vs7bEBMt7AW296yekJ8cCWyqk5JnZB0+w3N8H047LPURQwOFQt51XVZcf189XcvPvrXeW9rOP8wIKM9qoXaaZQpwiBUQHnbrjTHoSD68hikH0XMgQLGuPSCE0YQ938N7Az76lFnuIDhYfBQMVkuJrYk4r3vHWn74dUu5+ZJc80JgECI9wQ34VvPv3/4+2bmmQm333Ps7ceXoatua/5s3LeWn37Irt1wvDjqzeDxNVeapvXvbB4pHTHSdPs5CaG8QT6+aGFanGf/0NWt53Tt35abr6hoEtrGQMUeU5HLzboIm3QEu2id9zqiSjvnaN8RhVMO8BLgH2YF+Ww97o0HWOK85fpMlsup1kUFn0GhIXZAwV2UtTIklgUcYdpPlTrsKZ33DV5jOVjvDRtXUdT524WBte9e/98OVgQUO+lTFE47aW0FSKYeVBZPgWGCCFD4bDWCkoz4/EHhYPFxczCqwrKa6yIrlxFjQKD/X/hqSS62jetpR4XMp95+s5eU/tmspvPNmL37xkDI90sZjKW086slE7/qwOADbSULaX0R3zFLras2jg6X8wjt35Y4f2cqOTSy42lYXDMkQrGnev/COtfzGRyWhqSmrzMPKRPVE43pKVOWPf/uWpfwvP7ktN15MfBo1rI47+aKYJ4jQdSv7ILRq/BJwSCiNUHJGiwZuKSMRfpZI8vbxdYwMVbkycia4UDmkyK9DLdh69azjMt2Y8QimGCRqfgIwoWtNWGEmZvyWwCN7DqFp2152a/ng/bvyTT9UxWiWxSc7WV1WD7KoCr5tA94Yx+edEMB2H8/Y9ET+yoIUXb6qJqVd0z34YJykDPmN8tr2bfa8Ptf2IQQIxOpELYuMnfDR7GVxCof2heuWPsX2uOHUNtiKRPm924r1q89UP0p1+v2lf7Itv9a2Foell8M180eE2P+yYpw3a9uo9Lt+WpY/b6alJeigD7tV6237NE5tQdCPv2EtX/G/b8vlq4sqHt5IlSEo+LgKcykfvbyU735Vradm/cmZBtInHT/VqHW/w4ODUv7xz+3K3/jn57JvdNvYBvWAxZLyV0b2bFhiP+PjqPqhMBhYKvPTMy74ZmhZpiDsSJPG1GSwHFU2BSU57KRIiQeG93XxI6u1Dg/3NNeL4g6zzPrFtufKJXMl9nAZx6dH76M9yRo7AhMfdQsLbefyB55xUL76C+fymJv4pdH2sAMCfcyP45G+DH5mVP61nr9WWzItxkq5b9e1+svvy2q4n76nlO/48aW85yO7cmPdJfhclNfwnWA4oNghQTKWNYR4+WQqf/wFB+Wvf35pEYF4Jpq8958/XMo/+tml/JP/sGvrEI6O3FcOQSCbEtmkCOKrZxj8yc/alK98UV38xZDO63rTe9byv/2bpfy7X9qVm68XdLNgx2N1gkdxVevekRJx/OQPc/0kTymPu5d/zGN5NK0VJB52b8/0cLrtG098qLikHkfbvf1NcmF3wczDPXwpynyoc7A9UIhPk2KwR6iAPAikNNzbXXfIncqVs7Vcf3Eqn/XJB+WzP2ktn/hxczs4g20UZktZN0GLxuy71E1X58N0ZWsiFn9Qnbn+cbk9WUGfFKoOJOMKAvmoAjhCgQc/9OBS7n53KT/15qX80rvXcny4tq3AsVuyDyg1joW/uYB4hac3AlO+ey9P5WmP3ZQ/9rxN+bTHlXLDcc3cLOVX3reW//jWtfzCOytaWMsNx55AJFWoAGodmYYNH81zg/7ztJQPPTCVJz9yLn/k0+byaU+o9UzlgdO1/Or7Svm5X13LL/zaWh5o26frSVRmzNAbKB7fzIWWoBFqhjW1xsXRYsaiaI9psfTx3IYYHhX2pu3zyEZC2doU41n1XACjjnaCT14hQe5UqJLUnVX+YDDSFCbseJX66ZewjRS9wTHrbOXYYUdoxUe+L8NXWnmMdy5L8yA/cCKLS66/WFe49Xvwd30K24eFITKmsNRQPSUljHUre/KAXi6DkulRN84ccO9KQkhhm2nOmnfaBOvIYVs8i8MjNQHO1vhPNYd+bQ7UGuq7dCxlBjZhgeax0b7atI5EBn2Er6amFlcLvSt1GbAsxKnr8O+/Klu114zDqniWdR7mCPS7/3q7LGV8lcGtiuV8kbX/F49kdWjdFKQK+nWH0vaq3KSfijMaOGQDwb2HZ9/n9CJ7yZixRcW7YX8Mvx4umUCrIuDwL8usJWdFE4N/RQEQwYIFDh/WRpGwkvHl211bVToVGO2EE55jDkHj89PKpc5kSmTdxXZISxp6VqwMYYwUk+ST1ylOy2lvc968V6IX6012LguM3OmeqEi5WNOrsMJBf7lC7VPiszJObenAkSgNYSKwMcOuQUcD6vGS6vxbYv/iIHMFJfCRU7TZvkvV2Mef6VYGe0QKb7UNRqrfQWkgi47E4sPX0FtCpCdn/KR3aXAmPW4MG4m0ZB/dw7HtfqRwP/AONX4a7V6NY8b4cB2O94al897eTi+QQOaNeUTwfbB4aTmDDCAuHm605SBaIWdi3uwRkMLETksHQyC7Seb3Dm0MgoUTVKR3jHDMYuQYEU7DYe1oBY+AiR5aCQiUeNnKsQvUQTvHr279rS0ITBxLC6jMBo1gnX43IB9Ss2mxEbwM/lhgVfSRVApxX9aUbn3Y6qNypp0zpueXRyvDSSzSArm8lrodn8TQ9TqaxRrKBCMKuo0xA7fUaTs0s6XdwumpOY9wUga1RiiLBsd4OWpo4WM9I6OYcNWdh/C+TGWMmjauJFyBXRFiI17U+3FncEpOBxwnS80+MuYZS9FLcz/nezfAdt0EzGkbbKK+rDNcWCjvDt41eJA/6Vgkh3BRYzFjhvcocQcLlZwWSALSeWLd502XkmKwmGGDUFfFZOcNJKnaY6eNcaD0qCvMqPJMhkdeuGnWBh9EHTmk46mOxtK545m8CcGYor1WW9ShCuq68pZnbYEMhCDXqQ8Ha8XDTUrMlBcnHeVpa0JBUo4ISxfbR1sZlcHsEB/xZjFp3kgVsmEgE03WMrw3xa1SLQGIhQyCxhtsqPr2CUA0O16Ow3o4u6NiRDJcEnBTkG7hqZGukAYQG+Nld3SK6b4ludPWAqBDrqkQAnKtbbsFYJBpEYM5mlgJ2DwUDfDlgLCe5pAgYYNWtGQe7MAbxg6j6fsU2HAZc6oCCTKi7/nrtJzZQyd41BNOmING2jAWHQjppIi5DMYnabNQY1QjSFRYfmnYFiM9XcO+iZ0rJPJR+tAqz+YDSPmRspJMC3InTp6ncn2mXFNOhoUgE0TltfxATpEulOqdRMrtjGk8eQo8ZitZZ8oTATuPs79s2hKmmmRkzB/gisB9DYkm6HteE8BICRhrcG5AIEMqgZWpiVE6SgzFEQIYOyfgZLA6g0+KoBU5/tzUuffDoJht+RW31LY4fRByNztM8GghKEsq7fgj1VkFNl90K6/pnMag2O03C0lUDlmnkb31ZvfmVfsIMwc0M4DC1vwxc4RzEbppAT/De8yn8juP0jUUQehEutvtcuEFcVfZwnrvaIxCoYjS4B3PBuXcDkdu3kdTjDYNxHjS+QQ6PkuIWJBwkwLPRoH/GlImUmZBFdRGVo/pSsbTC+79TkRsYzqe7w8fZX5UARL/BOfurNUHkPfXIy2h1yiQEfphPrvQDhc4QxBUR8Roflosu/ecaagsm1MzfNJfNgD+m62Nt9cRR7VeV07rAZdonzBJXn9uaaFrfy5AhvVGE7KS8nwUHfVU0O+0UCfTk1EEFFgYJCcHO3AZOtOoepkMBknjWRGMUhI9MKYYD+7N8GN+JEZTWmKiIYx2y/ybZZefS8eS2GRRA0vBZdPdB+Vq6m6dz18+rTF/nOhcMxfXFlW4eKR+BRaaYfNdqUm2aAQJ1hvWGJwPo9ctew8DZeaaaNspCx+H+J2VR/oQ6jK6UNgVr7ZtwXmQYgFRvZkFNsnH6ah+SjA2ysjt9jAVc5igCLbowZBopZbDTGGkYP+oV6Yv/GV9VOqtOeMn5/Ws+6k8/ta5PPtJc/nkR5ZyqSaBWGpy3gbdFQvUFdMpbnnlLfMV6EGCXaFaKI8tKVtnZeUggAxZxsuwI6JI79rfuKzU+8o2GlbHVQYE1vsux6FIG30k5TVm7J4ncKft6aC3LWuybdgxlXd9cC1veNeu/Nr715aT0TL22nQkjgEjVjS7Fnv/ST0vYFM+56lT+dRPWMut10t24vvvq6nAu/K6X1/L4by2bD9Xy1GwovKWclFx4AdM8xKiyKc04YaNA3g8ILWE70gOw0pPiI0hcoKpSZbk8N2obOvmzUY8D6eB4UXLwElhVi2HXqAg1FdQL1pkIDCYamaUoRDIHTsu0L73myoJDQU5dIo2jYfIvb4aEVBmrCmrH75Syid9/Fy+8nM35cVPr+vBx6XEIb/W/YfyuYam/m2Vxe3ZV/boeg83x8/+TvT5oXw6izOs++T8oPzbN+/K//KTS/nA/bsW+7cDMiyt2M8CqFZ/u5vKtszlJZ+xKX/qM+fySY/gOgXLrutB+Tdv3pVv/eFt+cjVtRwd+sQ5GC0mDzUTDmr2UwGau5CyL8zXlvBa/70WX9k8HyoDX5IvDMR0ICvF6GTundFTmW572YnI72AsLB5rtiin8UYLlD2e8Vqy8Lnjaa7ofYjpwyC8d4pizgwuWANWTXewlvtPpvL5tx2UO7/koDzsgsR4u6y1NBg59ophG9reoSzSNIZHAs/H6gxZXUv2zItvipqmN0AY+dzGUHaquPPc5fTqHLKlhih/1YNFFj0/0FdyDpSMZallgWdC+HvNkut2Wr/83qX8qe85Lw9c2ZWLR/J8i0JQHopsKDqVh103l2/9Ywflc58igbgayxcvPORCYv31+Te9eyl//v/alrMW8Kf281gl2nUZnx3jxc8+9RbIHEjBiNB5J+Koj/HBRivIzzHkri2o/7/tZVfjoUGBD/psJNN1gC1Gh6QILJTnyRAh9rw3RYNklzLf+FomLIfemV7t5yJLRR88m8qXffqmfMsflfNQ6/bP1f+LLaeCv0EFaKRIRlOUfaNrcPBahrTjCEdk3TN7BZvowesq9rSN6Wp1UlKJ+WtSFTQzCY1bO8vHVoLqYdqZPtBpwr7+aAi4Lgg6Pizlx9+4lr/0fWfl5utqXbOG6LDB5VpOt1O58bq5/J//00H5vz1KNhUVQadsATqmftsWhE3lu161K3/v32xbdqHqAWt7FD9VTEy+MPlJ7e/J36HzbipmFyptcDBFDGlBye/L8bcBI0XKRYPdsQkyvcMwgjuEir1AYTQPxcDCm7XXAeT4pXvlPXPQlIJNOaTxIGpAYGFffHdcBsONOU7bU07mgU959Fy+4Q9txOFTfQE184t3Q+C5EhRVoAVRKrxGSMdyPr0cH4gwMk4LJQBvUuIhMqqFdnUdggxTftPH5D4Pbcb+QpgQRm3vUXyY5/7+n2+VhnJosFyZ8btSsG4Wsl/4ja710I8K67dT+aJnbMpnfPJcrp7Jtt7iLGRemct3/A9V+Ose/7J+H+c1QifxsMyKbD7v6XN52MWKYsBYPMLrWPgDP8c+dKRPOtnC6ETK8IIMptEq7Blug0XkHTCFRB+EL3mCwJLsKVdU9v44hFfoGpH+Y18An8piJbPlijFQybiybIPhoQeB05lsndJyJbGqlv+rn1fXgMtS0j64BiHwHPVcxV5yaH8kIWb8sPg8UqKFKUppf9jblKGaxYNJ8w+UU4g+BCait5JV52QXfONt2Yyzkgxf69Ntr2VIwMeuWm70Ewor9y8UASuv3z//Uw90XoB8j6ro6yGlpfzpz5nLC54slr+mEHeNJgfaZPy6lFtvKOXmi6WcnmEsOBzndaOF7Gzk6BKT3aZoRHrjfk38wfqAgJyYtfUfVyDa9kSmMHttbZI92rPJ8Hib8q19ZavV47zQMxZaDw4qwWyrbBWqpoB8ZxdRlh7TRdW2RxrVazuqmuJwhpF2RLJiatIYQ4l29Xwqz33ypnzWk+d22kw7AJSrYdVIBs9yBvhj05ohWaJuogmzRQkSXrPeK8y1BrASsPHQopUTx4khvk16aKJtUCr1hfBf2O/PaekoTj38I/+MD4QLciaOx08JWXlSCpCW5St08w4fHxHMtXzyo+RgUGv1XB2Fa7n1YVP5M5+1kTUdekZBLk+ExBHPpE2sB322U3/aaZ++yWqIUVG+AeTVdj0GGqCKMAVsddE+FtwWTwb10Lj12xZfkeCzMooRYGtUG4NGUzmuHv1kZQBA0WjKgkdNHmp9EnfvKAutgQuFeZRS3KUnepTdeuQ605trjMrkw5FW+p3rRPnVKtdjrF/4lLlsNnWGmAWnh/TWv4F8xf3vYxGgfzQNELeYj+5aPCcIXAN5obJrwGVwi42nmYXwEK27UO4KpovHkjhgLyLzJ6V9UH40Z4Wjjt9HeVCOI8vfbXwh1w+mpaxNUKW6epJTXSH4GU+eW5hPdhFKcGdQ+qp9lR2BpnJSz4Lk47zC68k082XbkClBAJdjcqEn6x5CpLlsoL3cdg8ZMhkxbab4mzybjA7kqfW9fQd2MCjgTIwOWGVWNnoBh1LEnQH26MoqhAizdeLGRVUCAfIVha6JvX5HFLEcwLBP/DiFOwFn80hkKY4EAzMb+sgAiaxcviZOQCizDMgcVcSNPf2e/eI+54+13xFVhojd51qKREux1rJQh3ar+TVY7eFcDIigHv/PokJoKXw4g/ZYyEyTs9Ciex+UvRssh6C+P896voNP55w8PTFC4vA0lY9ckWXGdaegYVoTywArJdBnMHxeP0oapAWHvb+rUyKhxCS8WJiUr8fvrGzdiRlApo6fbwnmnEYPtk2RfPqWGo9sJs/pd00WHHNBPpJyweo4awQ4hwULTIOQH+3qkwy6oAyKDe8kgUQ0YXaZjjz0cUCGYmJbLsGJByEmDiClFBEDEhOi0INxg/VsSTGEKMhp2gtj7Jvvm8fqcPyx3W0teqO0AZwk7o7CpIM7YMbAVmhLRhu2TwLoMmgcppJ1K7K2THMpb3zP0qC6t7mUGy7M5YmPmAlRpmaGn35h0Tpf/+tL+fDlep4AkcHag/EgwzJQ5rJlnCOTQdWBSiRygZzsSwN/0WXjgTCqwbCmRWOohBPkdFjnwFQdebiTBIt07zMGA8LTSfDNInAdvhR2RBzZLditiJXHc2MimMBZaoihBdnptV568MQXB9VYNUcilFzJwqV8AGJcn6v2nyasAUKTUwx6BfSzrMaQBN3Vl0O0IisDNGBRGarO/BiUjWgP5HYmEM40haId+UWo3U4yRmjUREwbrAl6+AUUp70SDQmKqfvx19N4X3nP0jb1bEt2tcjDQ7HeYpCi1c9txgYuq81Y1nLXa3e8e54bbF7rABRA3av8FHmH9gj0oYnCnr2F/DAbPgtF00I8Wk2LVHdlqejcDvytlDQd60k3FgbMCA9tgjGIu/ci+YJaPZhuhmW2TAZGBDzoSlnuNA+jaV/LaQby8EKNl6iqt75PB7YlfyDwQcSxHHvDrXFQMlEM4rJwctpmfDzQQq8iShIF09GPwbTQBlZIgdAO9eDZd63igpva6+9L1CZ6ot2HYYqWOTkAA6cdzgCQflkqJw02mRfzghONkGWqTAllXYW9TuF+4o11q66lXKpnOapzss3ht6uc76CMHLcOj0MIj9Gy1iPMpvJjb1jKa35tLddfkE1BBa2ANCOF58MRsk6TSYf/B5xppI32Jxg6bjfLH6MPvJSGmEwsak0GgUvQfmkmhdzMzCpFIGZNr6sF99I9851b7kkw0GiRjLglvA7Gd03iBsNX9mBKyR1z3iILrvDuwkEp/+bNkgXYdpLBfJP6LZlpeXRTBbD8cRQieZOe89scw8+Wuz8L0GT1IZ4qbDzIkylcaygoOV7IQlp2HJurESEo5u1AKbbPPNmpXZ1JDI+QQgjKQf5WIT+r247rzsP/71fuysMuRh9j/ed8W8rP/qrsIG0u19HcX1+qoeGDTSnvuncp3/5jS7nQ0ou9X44siaeyX9UsdYqm2xxdo2BcioNi41shK+04DTqirhFP9l+5pX30wxzlNBYyBSCKx3u246krKmca2C/7H859p5ZYGNAUQUTWsDDoZB8Lz25OfX6gtGC5WdtWBVDPqf+19+0a4yDpA9tco9wuE3LqJ8iuaLI31K0EC+DQ88qx5ZFMoI88JoPyYmP9nYCoCGWl+Em0Mslhtq98Q4EElFh5CaymgSXrG2YsEXjENf/cfv2vnttXz/l7/31L+X/+4235wANLOVaoj37U7bzrgp5XvKYuGpKpQN3fD+f44rm2nbnSqWb/vfODS/nKf7QtH71ajxIjQ4SIFM+ZlRc7SrEVA6qrf+hQU0Z5NqKaCCS08Tl5lSOTod5WBGUSdXWKvNA7Uj21n4cVewLu5YHcX7Nmnj5qewISm9Xc8KYUUkdyeqzAPnSLG+Ga3BQOLyKi58JoEIXA/PVzdr4pf/0LN+XPfrYOUt3rjcNFJJB7bW7KjObFV1FXxVLiY2llXFpByD03fwM2aQ0k8lKFRrSYwkYZXJVXWQ646xp9ju8ytXnWyf31fkQENypbhU3fBG3acY16r+4+/FX/Ylfe8cFtueWSLPRx3Sh1VOGuiUDPfsJh+e6vmMst18m7SOvFOQH4/OSb1/LyH96Wey/X6UTdXxAFcof7/oLgkNv2k5QWKN9+t4HVNYbkVbRu76MvDZvQJu4QHUiIZ5KPquxbw0PlrEMFEBYQpcU+bo8Sw2bRjR208si3Zjxpz+ULdHkvr+buaMWWJIRLUkBlkM/+5Ln86c+ey22PncqNFx+iEPz/P7/Hn6lt9119Nz/6i0v5V3fX8/7WcvFosTk6DAKmJnW0K6TfrlN58qPm8qc+c1Ne8KRSbrlUp37CR/deLuV171zLD71uKT/31qUdClPRQj1sxJEWiQOvj8B9pPDSblb8uZZqZfQaphIDZZD1QXsMUS69GxK4xApYHsNINg0hkhz6YqBBq8OLoXC+SzDedA5562GYzB3gC1qC4yz1XlKDM/R3pGPEj/Eaa7lZH9q6uf4rsd65POERU3ncLbLVtNWsp/8IvNR5EymkbiGSuoTbxhUUCmeYhy6jizJV8n5zF+KUUo4u46mRL0bL6wUS4oChohWpAZ23Y7ho3QbtNyApzVjwFeEoAwueQtk9Ql48LA55/b71PUxv5KHT86m896NredeH1nL1ZC03XbdYUhcQYSwPYzaVo6OK9mRr91tvnMqTPq6UW64r5SNXS3nHB0v54H2yaOi6Y0QCFJMFhyEbEyzf9X0b7IBSIrbbMdoBaB+UJL4AT/cWlL7jEimAtOuA8Dd24A6b9Oai/Eqj/7NedlVAucEpOihxoIXkGlfNQaAeBjpzaKMNXRAY7gigsGUvEZPlTx7t+FQU4Lo4pH7qfvNnO9kWKg4MNLtjnMDsUJ8RxftAjqSBP06Wvckchpqsa66I5Pc1uMUnfSPCxXEMG2iMFOk1APE+5k599Zb2m4Jkxys3oc7Jq/+mCqtv/w2rzJMsTCld6LDV3Nm2WncPJ9ddgKrVb7ptSStCEvI1nN8Ur0e5sA09Kw3tqg6/52vso4kZgrbSj3aY4pHNPGb191MCM3ZGgmSijc542o1v2xHItCoElMxGngrIHRz97I4+nhLkljei5ZgmiEqpl2itTxlGM584p7BdTtnctOJ89xNDKM2KyGN1B5jDtik6y1D9R9a0h/ryhyEInznPgo93rQsjVU+8Zl47VpKsq6nvgEHTHjPB7YxSnvqbG5Lb3YHQYHFyC00/YvMWqsOxof8aU8TRTZ2/L+as9IQhc0Gp4gr7Mba9/KWrdfkw4D/qXupcf6S8JjdQeN+UNY0h2IR1pUsGGa+U/m3mDvwSfDbgIOcXZ+d4bB4nIHmSOaedJ+G38eSzGPyuLI6HBbCOUFjPoD9bOQgVuu6dtrIC4wcWkW6BW4hTLG/NYHdve6weHSGHRrTZBHrCEDSxM+C1jz+lG5tC4xRg9ocwXGQko28ZemIJoIkdcb3RWN8DA3p/3Rh5EkiK8wNOVAbVd21/RxZkYy4oRFjUgJNcNNEPU3RsFBC3lrfklEW51tqfnKRwwPn4+WCwcdmrGMJGJiAOKSR2ftlms37GA9rTg8UVhLBrQ1noQFfeM4Ftb48AfOVlH3NprDhFZ6FYe0xRXH32tOFf6IePldgkzrp1A15/tW3BWc4mXSHsBtlRQGAcao2FhxBjjzQxwcRFZMNhya7TnzEjUAhabq2IrMEMbvAKWpU1njNZXJSRLbJDTPSfHuZKqdREEC5a/0NrfCFQGP1gxIVNfK+A2FSvEQIIS8hMMVry7F2KmY1ZYcqyKbA+3VAuaqn5RmMXYnnWyWXtMz5JGi0ZpG4BjwmD5sjb644ojW1CbgeWubHgcclxqW8heuVUZ8uT2CNvQLBuEFPCFPGwz1LCYEtRtmrOx9313QAPsryBfuYgZL71N3n6bWMd1r+bBfVrzsOWMd4WEOTkktHuT95azyIyRW500QEII6TWjLUD5nIMYzG4ZvZABLJOLEDKZOasUweQKXPK54+HmvhqNBqC/mMWkwdArs2UJm07LdtGFkhGIoDX2kfjYNLlDM1WOgyY0owVTmRr/+aLQUgICFbyegVZ96NCyang2LQGtLL3OHbep+hGuhlrsuqJ463LwfNxc9YOkj0WtKCaA8lWNwmm/Mhqof4x8aztYYMVG2CSSv3LyBA2mvVQ5LhU18gOsR2kMwvan5yAVP/B4an0YM0TGzSAbQmed0Gh9B9/imsbJkzo8+oA8Y5CGqlZsE6sLfWC8wp1eERJDMKA38yRpn9THqMrD/3g9BufNQyeNQsU1H8IHxEpzEqBOR2us7uAxiFxhAsYqaSBLoBV6u1BHLI4Yg72XVYcqYTUXwII1p6As73TsRVkwe095b1O2VFPRFMHIGFc0iEK7ycZysTh8hHlC2svvGPPjPR98uDC8OD5qLiooEFZnAbDmwBx1XzS1WiznJhRGVSbFVJ9jvHFapgMm6oFCMKUkAxtXsBZb6ZBtWa7bp1Qi2TGJk4VXDurhtTJ2sRHT8V2G9OIwtVwXCYQWYS4dyG5K+uhoAa7osXyvsUV1vYvKXpqklshFnpLROFGRab0PwNv/iAfgmko+oGmaAOK+a+BVvTBNWUUD35xpNCl/5KVZToxEnBDmAQ/W1zuM/l4ololGui/I78t7hlYJAXhsauJXuMBY5sSvRR4wJUQfEUkPwTlA4FoHK3NC22PRq/JmKLmEKaINLBUZDc23rZJwtRB1Uvp9bl6+LWvjrInHPaGwVd1X+GspTAaVCItBk8nnDFwALHvR5eaMmFbY5WQvIOKK1PeBCSWA/q2Uiiuzc4Qgf+Mc5hTomt3ZDF9HNVJQ7naDeK72vX2Wf4ChfIMSvimHAK585oEWkNg26Jz/31eKdfIWRumoko3s1RUBXcsjWOQB7TN2ksIg3MEXJuntnJsHDkIRF4gNtOcXLmG7oAuMiQ3wY7zb9DCt6cLxSWXJ1t0ijhogoaw+0DLWFkRwS2dw9L7LikY5DSnzJA8ReJ8A4s0paIhb6FpYND2rrc1+itkOfDCWjlEGG2A4iIPJxqxmHaOT0ZBbACdq5s2eEWw1s41bjGcZvYLoRR2KplzUVehgZEspIIWyBLg1l6d9HjLKC2njRwISh7dsK6eoxTMB5FGXrLOfZmk5vyMFschK09PfMz5FZcdZ3rxadCYU4pxa70qkQDru49D8FAHtSGbYiSoZMtL5HFi1ct0+q9t6DGyltwm4ytSigGp9pLh5CV0ZdNYHR3dm4GIEhSJR4DS7tNk6ELDOWLDzVFDSEDAyOGzVWFuP4+Dmy/XYsQG/fSpmOUL0FLwXtui3HWpI6GHY6Gu7JEmLQcuhsD6Syp3voMQj4IxIScXNUcOMRahp2vuZkOrpSzUlcbZRtqsp9kqfd8JGtUYXiOl0CrCmTHJkgQLSfM00rRMMSi43D1QIaFUchVR+9A1HSfOoUjRK5YVY/lYJ33vploQY26RI7lMgCyvXmeoRPNGXFMEgWAN0oUmo3yLMVAhTj6HLPehTcNl68UiDmESXrcdB+ck9IWQXSyLoQeUhN/iHZDJTHVjIcukdXcj4ul9YtGJNjUjCjMTsPXprJrkK9LRqFuciLQ0Mfh3iFAEo+wsdYVQpCPsr1gjvhizqngfwUyY3MMxWQIFkkUB9GcXkWtmE4YQ5s2LMTju72Ty/ATvqCdfyG+cmBTqI/HM/Rxv/unedBGAPbQIVtktGZPGE5m6G9Yvbq0hHTczkebtslMr0i22TUr1NvcRcqc/fE9oG2UryKYclhGo2XrKRxZdiprV6TDJePO4O5OSqRikMncUJyMAn0P0u0FpX0ucIas+9ZCfOsVkYtreC76qMPoXVDbNV2UvtpatpVyp+wHcN02aEE+eEsyts36yS1agNkJNP3tCOwtBUm2vt/Ki0BhpLWSD5b20ThsdzizN2AqkNtPPYgYoD2XgrGhLVC3GyzzviMHEiaZIHgt2AQ1EYEnjrgQeiRtakNn33ZVMSaEeJizRMhjHaHHMm08uCUHEUTTjhC8JKaya5cwnKwfB0Y2A81TJy4/Nh4IxQVM+YLnhxLMg34FvU/SBeWylcGbwSZGDOVRoL9LUFoVGJZydkuZWSD1lQ5vVH+NQKD2rzeCB8q8mdNk4Qh6R6JUQVZ2OT2W9v/oA7q1zMlc2LsA88CBYhBGgnBbKSg0Dln+yhsU1is1Gbz3VCyeoOYQiQjC43xJGqueTxFbf923G/ZUucYnlFKnO3FxKPfXBc7iAA0Ja3sTgCOccX4+DDOUDG8EpuZFAQSm1ywP7SQ6zXpWTvqfogW07Tv31IYtQ3HwDlJ7b5R1YroZvYQXedR8yWdoAKtwwcN5B/JDwYZzprmADFiGva+LQtyIHXM8qyRCC/WVl6o7Q7Nsx42NMzglBucwoFnHckPykjsmgezSKkJIlXS/zmGAhQkv3+lDNlH5Pq7tumG+jzsYKDiQiSLDUFBvuhsXVXg4N2nebdqnmhPYOSCNxr2n6GFJrRfrmdSnUA7cf5y/ExJRBqnSAYXFAuCWh014uxWfRkmAKbHGGdsG646mb8odjR6TXQrnUGocrwWhmy25DQvkVUDq2v2GYInjoy57Vuuxcg7xYBytIU4jVRTIRd5DyKgdoBPgU0QANCqCub87Johy32yqwkIxW2I9l/iCthIZg4Ace9CUSmpcCW5NDSDUMSxg36BHDn5zQRCJjNYbfMeLQflb7NJf3VJ/4O2TJbNTckemTWu0+oerh5aW51/Uyx88plVX1Iy2M8WesDU4VH4lQvYmEFwFGBixKTBF7Eh1v3oSeACl4OiZHe5kkzU4Jgk1FPbrdGTceyCrZI+uTVhY0PFlCfsfbwVrK6e8mmZmVDmLJhSXF69ocNB01AO2lb6b0KMyYhMKr0n6ypLgk6cq6wflESYOb/i2+kSonWrHR9i/Zq5/CyPwI820nOvJwsDHWR+enKMyulDIyCFPUYIDoO2lttE9Z4R11InCP0ovWmmQbR9qX6WD+Qc6tRoyX1CX1yBpA8xXW4BEIkYc7b9RpKi6pLFLNmNlL/DgZdmoQ70NooSGymNLnkceWLGL6mIHX0QCPwCq6ZaT+kHffzYTWkpSKAQEs9CCAZZbO2oUkL1KO7CYJQgBlix/O5CwYPC2zDUXDIHrUxWLeaCidI+ghalKMwUq7ouS+Wyot5beLwvI38dVzXaJxmGo7dOUVcjWi3UQLaICBDITJLWcl67w8VmxC2N/EvxG6oyEJtIdDlsfHQ4Ap8YimJH4J0G3Ffmn3zLtp85bl/GyZJt0vFzV1Vqxn9H5QGErSQ4jhU8PCO4A5RFwZtLxUOCGAlIcGIY32m3IRzAKmpZoUe2XF4Lw0ml9Tc/oEytDWoOOgDDI8Tb+lPx5SHNKejrsOHqAGyVVAFDay38LkECVp+MsjBUyrkBJHFtuVhuQXkOCwyzxdM0VBpt2Lpz0GrUZnPNOnOPIavgG2AcRkMUTqyK9VjcjTlPAK+BX+JuLLTshb/bRpJPNGF+L0BiaTpWHmoK8J5biTFlTg8QlL90n2TFljkFj5zdO8Oz9dquzP03z41nVdPjBtDqvjTJQwZ1SZGt3D5QNNBQ6HYOc8i6FugUU3i2//2IsRAjobhjlVIndUEtmGcxtQHkqh8Cf7AUzwE6NiTBJQyWRigw+yent5AjIqJX7sdGYQnUARrCsPYZz/GuFDv7tWm4l27kL8fV8TTfBAqzClowHWccwGIZ8vaEVZW2mFHkeaeKoVkIs/A5TB47kG+0zd1fJZiMGnEWFRB6iL3N88+wrTHDImxtrgsJQUJKF2Mw9s3rwZJEcmG/Z7XafNUf3ygSr78xvvnD5apvWe6aDFBds+KSzzgaPyhxiYxzYfGtIxf6J0MGB4AEkepLvMg06owQZlaDHc8pn+GqGb8FHmsIHOKoVm3JyZ6iMX+2b0gcfA1ZH3NdIy0smXm4plcGow/Vwes/LONKcEKVY+IaRE3g1KLGfm7JX4HrQWHvR9IBoqQRcoQzLQJhWl2ljDdyQ1Wbi4vakMV35qQeuKTJ7qEfDp3/M8iLhaVMc35WIAT8WGwapwmDFHi/I17ito5KFr777yyRQVhSRNWduWqW2LNd1TZV/zFDb/UXeeleGpX9StizHEb7PyZDdYyE0rkaZF0oYRheda4eRaLyMk0ORRDGVF6x++MwE5a4zDNAPNHyyk84bN29H3ANW0bQyU4hr9qOWMOYiPDNMEDYDch6gW1j0WrrNCTDfAAgvNSZsc7YvFhxUOaI75HSbFNDEp/YFVdLTAa91xxgMpROTeJ8ejOSSNfLTUORghWppLiMe5jbLZMO2Z4I8x/dLRL+ZjRJIGZuFEICY52sg+Nus7FmDRg+TYZmOHxCYgJG6qjJcrGOEZVkZGi3WuaT/r+vP1t+7+sbx62UqmfJPzHNaj39EDS+Zfs5Ag4A6RzBUXBMOcaok3SnJusYbrDYprRjAGpND5yGfA+X0Muk1TqEH8r1UH2kAAzerSA9nZaLzjjGmNWGTuZ20P+Q2U6utGLcDrfQku3ccULCkcCEiXvp2UyT64m+oLm4zsaYjrfdp9iZRk6zsfDmHv1ZfgqebmsfBouU3x+/4QPSGYq0rIuw9iRePU7WFgsDoqdJ/VtB0z7AZi8WF5dcpBwZoDA2gDRYrWsT9HVSPlz4Dj1fIbf2vjlnVetu3RnzEFcHRw+bXbs9MPTgdHggNCqAoV0/dgMXCfcv1TZpb3mC7Se0Zo1BMNdyjLgwtkAWGleCAtkSm3Ih5E4Rl3UcWw4y0yHXeBRJCmTM5eo0EcQGXrPVshQhqhiOjdR1sFNSXBHNURIYn+oQGwZrKmgsVeh64sewrvUwTIFBrGW+Fzt9sNZasFBUq0Zk6Acg8PQvEzWuCxy/SY8CpBaTIqIzSVLbnRHb4ETA+CN1ynPKFvBp3oO9wXJGumoOJ4cNjefGI2HdV7ZKTk+rJOB8fz9vTqh44OLry2Xppvf8W6ee2dH3d/KeVVs2yZujONOI238vKxJ2uUkpMMjLDDBWPNR/MotPHu0Nwt+nK8CBMkV9QGE5U5fIbkL2PQONScV3S5gGfzHj+eMhv75qCT5utiLoxenHxi/bRxo/k3Dx5/UWRgDK5bh2N1JFuZzDd2Xd8TpYo8c0zbOIBNoTlCR7JgRXrhoLevw2YKHnuOJAPd4ExXCJqVgJWv81omkPUZ9DI/ic1pjZ+hlTrdiE8Qvvav/eZVgFBu8mDsXzB69tdHHAoNq/9Qhj/p2+a3XmhiVg9ETOPGaRqsJlnPWtJSpt3maFMnPj/92jun+6vszx94i7Rqnqa7hE5IXvSGwfKGXBHTeqQEDBGAibF1GEHjAJ2Rvmii2ctbGDzIkZbOg2Di7zTnPnRggMJZthVYLEEVlZulyIRUnjECW+12aiU97NKIIjk12UjKG2ZYu7VcuhGWm5pgkaWwP2na0ess71Pyj+Aa8jzC85TwY3CTrDlr7rCEWx8w/iRl5FMwV6NutVWlK9KL3eecA/CJKyeOfpihsfTnyfkqGBqoYR+jtpyB5u3gMMiHkUYvRJZzG24KHvXbHoecbOEOR9zj0KuEruNaFUYd5gMwcooHTIXyrnqlyj6GZ33eHeuNp9uTX503h49cdufLjG1GODuMGAO1YvCZMSQ5ggYRt5CXzIwPSBht5yBDj4jJmjdgAX+ahp8Ewh1MrofgL+jb6+oTGpmQgQlEfAMi0XtoI/PL75aCScPtR6eb4mDTkpek5X6PrD0bgtE7/J5FFGheTn2SR2MkZr8pHZQfRii3IoinNbwm6gCWCznUg57LJOuM/Rt4DHK9o2ZP6TlqhqGukEsAxDJch0HjGHqWlVH3qDYASrID/y4vJjsohHkB/KIFLxX+H03L9vwDDx5c+KRfu3O6vz7QTiZ44R2vOqiQYJqmH5jrUTllrWQPPnVjAeJF+QmBYodIRw5/1+Cv5zezZdzHUThb3h9R+23wlKAiKNIeoXmQzc94AJAP3kMsMv0Kk2OugjAHnXlgMeW+/0Fuk2NU2gIr5vPFgGtZ8Zh+0LNds7TyNYSnckhp8AnnN6Sn2QJZ0wz5xWK7yEorQEeHnjVaIWwVIje6VZZJhz6fnIRmUQ31YmH7oJ9sYHFpBVaNZYZABPG1U5EzNSOxBmDLDfGAv90Y+kDyatAh8qJx7pdJQUGEueWuyvY6rT9Qhb/KPNKYyiPu+aCM5zL9w91pPVd12nD+RyYaVnbhullQIoDJCcWPcnccZGWbHxkNVkmEleEZcuvZolNacogOeBjQrBkRUQFShyNMqWQLFlJjtbygWDizkVCjd2VgZb3vptVtmafP7h3VKQRl+u+zyDx+pkXip+2/yApkoAlCrg1br1ARGw2kIbMIIGIkGalQyJbhZuUNOgPNQ8rH3k0606JR9C4HY6Z6qe0QRfyWp3cwbnzJUsPHKxSbjoL8cNOhMDp59W3jQsX0CbyKaWL7O4f6zGZlSDFNmyrbZbP5Hpb5pgDuuusluzvuWOc3vvz47nXZvnJzfKFGg3cgK4fHQKV6SVbckkBTeMSEQ/ETJhs+S2UYp9dwVgALfoZsGGFOTOz41i+4R92TaYKvIk/+MuFTeWFbKLZ2hDaESRJaMKCS47PMcEjeiBYcfhKby/La78ECFKOTKhAwiz+i++abFCQPLqMYe4aVGM5OdKvrdTODq3DxdDDEuWvfogPPtAFoSOPrO19nJx7nZ8SViMGBSYjY+7sOxx4oQkmY7uX9ADICUuWcllJz3n5ASSGRzb/E/ANX/pZ0BFSMsUFKNsmd/t1VmV5221e+8c7ju6usV5mv5dmGJfc8XYdvmb6jHhw56VE7nJDDSMBpSDu+Zr6HkLU/MV86tI9he5JHG0w268zf/AINbBgztDnH1dksd0pgvUYZ1JVgeVPlUBpkvS1kkz+gB3c6Y0lDZb722zzTdDZCENo9umFIo6BxHfX0YKG3zMwbI+vnD0HZM7mcqfrkKbbuPkXg+mrc3/qmW2lh/By95d2MQ6M6xCMkkPOOQn6DCSYp0ExUGmMZDlIWZnej0DM98Fjwu2h9zneBC+WpjMTaI6qOxG/wd1jWqff6uWOdy53T8oyvffBnDy5d95m706u7ucybtnY4iJ5aFnKERRgFrCXdZ4eN7d1JkN2hIi9sdR+z1OOFdNtkkYUSmIdMqEEv2afGxB+gTSO0NdoHZw8F7Wbki+A0iQWENjI6yBCO0JJu7skZZugXo0jLyAzNc+93qIEhIzmQ7SprJjYy3IfQTr7sfMBhXZTBo+3jMgbYvnCrr5KbYzw3+qsdXPVi6EdoI+WCj/rKDeAh28dLqcF7WY4zBzniyYOdmbqxqqb8wkC0U6CX3eb44mZ3cuXn7n75dZ8FGcebYcuy2+8Bb2y+sa1Qwn7jBllcABk5h6ynkPrZO0gcxuHlONCiXBkJsFV1rQoD5RrR/4YQyID4QKFoLyyE6AxOntCdfVBpbopZ7RTA1IZZ29gqd4OdXOrm42DhJyaEyR/owMyolmYbikLHo5XPkmuoroMJqrYJpQRQk/Lh0yhS2NstgvC2L9klU8LDqn2k0Fsc9giaRrJiwg/eXL3ZrLRGfNMRmvk9waTcML4W5LbDIUYZezRptVyEG1HhDQtpY/wrIqpIZj36RpbxoQK4665pd/vt6+aN33bxVbvT0x/dHB9v1nZGq/cAlpXtFA846INVUzYoHJNkJaClSGKJjyLnRzCPOprAg0xQgsXJmsWCiIB0lrohma59zqDxXRn9mqTRNqZkax5GibggyUbbeQfv2NdsRjjv3lNdmcnzOMR2xqK8WdilF6E9WpdhuRHpXVswEmTJb2v7MyhAe2UsIsIT3mC25zBu6LqXmIWMFBbfauXwKT9gEp6Hr/EFs0EwJlwYwws0mzV90PpuJXskRvkJ2mDkolgxyVcLysSsf2a16ERd1zr3P94sJ1d/7I3fdviq229/xabKOLcjHxZU7npaq3Zal/mrdmdnJ22ZMJkKeKQjgybrp1+CHGSnGAaUNAlCY13HXKU5PEsbSvBYaktJR8iX6BfRR9R50utW6RenN4foODzzLCidhqf0VuPgqLRijY6tJUkoZvs5LVzjh0IyMNhnyYh7zCEFWpASClWScjPLZNOOmL7N8pnXEWSLbbWh8pBMBcFXXrKXk1So0DRmZpKw/2DEslM8ERp99a54K50XmdcIYeXQDhOLF+oM6oGgsy0I9OHNFBMxM9BwBFuX/R6U5ezsZLfZfVVt5V1Pu72zEJ0CqPOD219R5jf97Qu/uuzOX745OtysS9kF7gD2ofkqb8iYreXAXxH+c4aisE1uqq8eCdyITRuGJt5eSZqR/hVa+R5yAVmEwcxMJ8QGYgA+2qsXXSLiaNvo8wsaZt27UpK+sOChH+mdvdG9xK9h+wUHUN2LebcnUxaYs1rcPq3roAYFQ4n74UDYSMagjEDQVAhzQUQmCWXh5woXT8AHwfIm+0LIhzL3whhQ++wrGlKTmpKRZHRhXxPapNhlEI9o/h1Iyb3dwfHhZt2ef9ubv+Vhb60yzXN/pu3gs071hbe8pWyOtlf/03x84bbl9GQ3TfPGwVmvhdkycGdilh8qFW4RR9USehbpaRgq1OWdJyLW7iFRJOgCp5QcV+YMbM40puKQLBGWRg8tWURGMRAIVW5SPyX5mIHwrK/Q5Gt9iM71NdsyvXsG/dHWgzwhwdDTR21PVaUzp8RGcrJ1RIpubJoUAQvsEpX9CtVzb/yU+i20ytl/lISBtnCyEPf/WuM6UWYhsYUZUQqxZhQEBBiUQOJ90uch+mTnFlBd/XBzezHQda1eXkHK83E4Wpfd5ujiZnd2cvfp5sKnP/3pZXfXS9rZwA8BAUjB611vKes9d05n67r5irLdnk3zphasCGM4St5ZQHW2arZAB9peLZbhyCgUTAJTLDYqCRKZhowxdtWlxjxYCZgNZ+xH4JqQuAvhNmtFJsWbEufOgojoN8PlkP8erQbMtrVAGd7ISsUMhZ+ETgCQMIuBj7DeR2iXcxA8YcinP43SmkPgFABNiJmND3SaRN0yK40sNvWfKHtp20ErRmrMB2naltCJKY7Mh92gl4AIzN6w39XzFH3c2vMDY5OzGs1uKY3be3QYqCkZ52neJ8DQTWuQ+n54LGwdDei2rE1W6z5/m/krqgxXWR4J/zUUgEwFXnjHelCTg5az86/aHB9tqlMB1a0dvvSFGoLiPFXQhcDbIEyTtb7PrZ3wadR4BRvDSm8QjVz0z9viJIaSzAzaboeM/jbEnOeFwlfKhNDyjOhRZlhxmLjPshjNrJjWYNFzlJAQS9cJJwYEpL4r23xHZvEh9GkMDYOPL68vp9Wc3UpPAmkNaZnXuotryHNEJNFBpGhoSiAOYr1O7bRTnWv52LAmH5TJNAH5Q4xzUvZlRa+Pm/4RH4Wruz2bnwSFjp67EfB9H1PUKOUW+BTLFQEO2uXOSbkxarKu067K6u7s/Ktq0k+V4RH0p6qv+ZleeMe6efWd0/aZX3/1nx5cuvDS7eUr22meDzoPcXvaxeNjFTyM1Zs+GAS10WXAHFAgRAYGMCy9ng2BaOS0tDPkUrsCsEGnZ2y9RabmACS5liYeSQPqDko/Ls2tquNns7zExGGSYsKh7cdOvFBI0dsVmuKpD9EJamNjCCJBYOtHEiZrMfhQywqJAbQkec8QIgPS4YDeMbiJcsmfMSqI6lzDuKA/cUrBY+BLjOUKZ1ju/3COSyqvfYlGJdBcO8wnbHcJIHppWdbt4aWLB9srJ//sDd968cur8L/6zub139vEjyWnDXvc8TfL9OPlNy5st7f8+83xhWfvTq7spmmzsSOjkX8PJZarC3NcGqhs35NkO0mCduhaHXMF9NNQpTsVbTVf0lzMS4YUh9LaN8U1UC8AITciHezQtDlE1mBgb068WFk1yJBQ+MatVUzw4cyzlGq7DmiQcl3QcEudDsJqF6IfJNGlQdaPsTyByZ2amEjhaMLp5w/3+jfzCqmhLDsTAwIea/INdO1Mni02IJ2XCO8OlDRlPZjex1Jv3A/jlnjQnThlXXe7gwuXNsvZ6eun99/7OX/o4x99cuff1Fzra3z2TwGcYuudpZTX3/mYK8v58iXr2dl7NocXN2tZ2loB27pbNavv6ErzOeDWMEzYFYashDlLIvjXQmgeGv/nxdLAt5NPfPZm8NKb50THZZNzSqMMwsIYt7+Md5kRAfiwfiLKHi+lM7+y9dICqTj8kmAxEEGYmwIuRnZSS6LUynomZUPjr6XXDqcbsJy0M094yKdnnXDy/DYS3f50Vsnit2wxo/7ljxTNtNWrWHfA9a2h1bQrEbIFvQT4kdyAST2e/OZi7dM6SjfiJLnQvbyDliOa2J54UAtcJFX4q0wu2/P3nM+7L3n9//GYK1VmP5bwh3H5mJ9XrJvykmn3rK/78DPKwfWvmuf5lt32bDdN00b2aUcHebboVpzjsdHiUFyhoQfKBFAsJ1rbNWiIx/dwwDW7KRk8zbr4oQixTwPytCNPT4Jwr6lfVjAQCdEmAww1RwERaK5B7DmnWxskyAbP0IczKdFsSEaJyjhK6POCuzThgQ3mj6/R3zNm6SPkjUinfaeoDRPd58FAO3JWWb+ZJ6vmmHpuHEskdfHXsgIDRF6M1t4oGbxGNjZcziA92nkf33PzXTlV6Z8Pqn9u+fD5+emLfunbbngTZLU8hM/HRgD4vGTa1S2E3vBtt7xpu7v6Reu6fnQ+ON6sS101iPaq6JjVSEJCgmn9VCsgzO+EwhxcmCEKPzvpQoxXCWbQlTYW5fQis3SsH6ldKW/M/+Ifi7UTtKQXnHUjowcPOCx6jewQXuIlA/7eNLINPThpqwk9UsBgM3QUf/whUoBxCa0ZXEoUEkZmZeMoBoQNZZCFS0Gajj7eBv3GOQcE1fO23KFvaZrj489PmoonyE30oOlinDINxjz/NvbuFV3kx54HvVUegTG0Zy9DkJZdlcEyrR/dbq9+URX+238Lwv9bUwA1S/Al0646Ft788oe95vzkyhesZbl3PrqwKcuyDZtt6sm8vCVXiAOj86agOUwUiR0cRSa8EGzS4kYcHInM3K0IRf8TpsYwuAcfzMWjEZjD6jYVFRVPni9mjrBLPh1xXcLoBHSLLMQqBUyBRkSLTcajIUdWIEnJ2fSHFCdq0lRlOUUnOKWt7oA4TFj7hCRpTw5X0pQxFgQJNNqEUVDraHtWornqWO70Ih+fFYdSPjNFr5JWimhDBdfq9UzC/Cb6xaSBkZPmEqf5cFO9vp0eK1xj42XZbg4v1an4vedXzr6gymSVzSqj5bfw+S0pgPqpEYGmBP7Ow16znpz+d2XZvevgwsWDdbdugZ8M7uQFKcZXbilAAXSMwIExDZgOLGwuBfU/5HmtbwQBofKcXKGpwnr2chPTWwvy8lxjZqQlcz+C6BozBUeklmX3gHAIM3jv6wnO0aPK2zujXUAC2fegEMh+u2gxkjDcoWEqX03G7CyM6+EvllUii/kkYjOoDY2pqeza8Lohhxk8n67EnvS7NbWwnC3E6gIBPAikjN0nBG29GnV8YUOnKLx7tKu07jzUAVBHh0Hl4h9TMuwnwf4CbEByn8mYVuGvMrdu31Vl8M1/57om/FU2y2/x02OUh/hBhU/7miuPOz7e/MDm6Oi5u5OT7VrWTeVcEAOiES2PCrXFdPt8cZfDflWfb/sE9nXgpC+FiIIkm3g1ZOP3VIpS2JuRPuZj8GHO3nDsjWgMyOCCaGNtRj8M9KDRab7vLBTrZponn0H+gHIYk9zHSCPyy9j1lAEHaeK+akecqcnUAbm4Qe98C0I33fZt3yd3MOmffJP7uhqW5GuEKnkazgiIhD6jUPbnDKmZypR/qsOVlJXBjcyQTTXtDi5dPNidnv3CfLr7Y6//9kvv/u0K/28LAeBTK6zzjXu+/dK7d5c//KL17Pz7Dy5eOJiq2ap+gQCHs8jBK50MbugvWQmaNiDX3LS+kh9W0IY1zMVdz4PZvG5HGFwz3gV7uB0jiEIpnvau3XYLg3bzQ+Kd13NZWDslMetMIk2D8GxILwZ5r6HbLcpBSiRuH8cGx1MnQ+SF0bqBIAW32L3IxkeuwyjkfP+MvH1s6eTdoUDTRb5pSC03s4MWpZu2BactCXtImY6JQPa8+XjyMmZPk7Td4S3xx1VvlhLmg5qEVw3rwcWLB8vJ+fdXmavCX2Xwtyv8iSK/zQ9tMPBpLzv5K9M8/52yOTzanV2tjdpM06Q7KcO6pYUvYWLpjeqm3iUOhMD3egXCj/k6HJHJQ0ueaLcuMRlxZEx6lOFJSgnTpK64jd5nDdjSd+sAjAv6jVL4GztGs1ebWXG/dceUKaEKC9cQG6a5lk1v2PztlVIfLy2MyiX6dWPRl2s+Hl69FM06IUQKsVFyVaRxGbSLHc5O4c5q4W408kmpxKSx0D99KEbACsX324m9u4PjSwfr7vxsWZavvvtbLvy99kja3OP3RwFIY6dyR5lqY5719ZefM20Ovms6PnrO7uppi1HWRURsNIy0adGJWxZwQqYYFm2QOJIfwd+LDOadJbCcn2dqmPeVBpiCiN5t34IaBfTa23tsTUvPBGbwV1q5bTLFoVESBlYgQkttp1qYrOjcN+JS4gZUtz6xBTJg7Pg9bJ+uUxM44my6E6YkiiKs0+yzGGcKRcXCQkQlJyK6UvB68sQlVpVVPmlvmpLwI2aYAkRglNobrshmapjgdCY4GnyhqoBb6v282WyOj8r29Ox10276yje8/Oh1IvitxqG6/T2ZAsTPtGLtwBteft3rTua3feb56ekdZZ6v1Owk3ZLEvJO8B5y66JzOwN+mlRlOMhx0B2D3LlkuwM6cI45QEg8yL2k2VrMRrTMba3YYKOmICwaK5Fx33Ns/AMTtVI/8ZEuk97ABpP1moYoTL+NTMjetXIWhcM5ZeM2E3EXHEQG1jVKiR9vDhSXQGSEl3cuY2dyp5Nx0FysLOfWdokxBiNXyo0fmT7DY5toJvxVNjGXN6wbRMySlX6xSfYohT+qiJ9DUaO6DJDy57NZ1XQ4uXNys03xle3p6x9l89JlV+D23/79c+EMXf8c+BEue+bLTp2+m6ZunzeGX1pp2p1ert2OtyUP1fu7B3sMOQEkKle2DVtGsdjY2rhvorIPDPRkg8JsjgoACbDaTk5McNXjPKCmErGrof17+4LwULZHSw2PJjERyGIzbnDL2GFqDXqpAee4NBdCtB7AIhDdyhG76cbFSzRHG7w0REZfXZWhqDyk9mSuGE3iUzLXmMRjWew2EF7G+bZnPabqiXP0hcFhEZO139Z1Nm+OLc9UVu935D63r+k1v/Jbjt/xOQf7ffQXQPuv0wjuKOSdu+8bzPzCt69fNB4cvqiZvd3pS+7wt07qxmaVainZee54gMZYlvvXBiIS1N/u0w5hkzBl+3vYI/8ya6HLOFN8Vhw7lbydXMRQU123z81B29GuYcLXzqPzawM4G0ROLB0BCQmEMqW3BwhooJkyrWijQrakNjuYCpA0DolKBpR8IKe/IbCNkYdAuR9GnIuQ8zPnFcfoVm8MIzRcR+di4cp+chqaBbcC6ub+QwyBjV5d0i/JU0ilL3FBxY9RMi3k3lelgPj4WflrOX7Uu07fd/bcOf6o+KV7+svudsvq/BwpAP1Vj1Y9qrdu+/uQLps38l0pZv2BzfDQtZ7uy7M52Sqi5YQPmq2kg1sNlXg4xBdqupW4xwchOeFYXqdhrI3ObkkYs/ZSYmWyeKyYIrceJYx4ynH5gyHiElZfiwhcOqaBIID8NKBmvR8vviCF+BvgoWHL2tdg7SZAYpVloM2XhmRLNTi7QO+ePoAeDhUts2V2JcYnRKZr7ihH2fICJ/FEu+NZZUmr7PoD+Ztmzf4PGXcutlGgyMc/Hm+l4LsvJWX3gJ9Z1+ft3/60LPzGSn9+Nz++uAtBP3Wj0rlfUYKdIxLPuOHvOtG7+9Lpu/+h8dPSYSqRluyvr7ry6PBdRA63zpBG8ycZGjNfCFJWYOCzwMk40qBtNPcrrLZVB45RyE+xNmCerwJkeYEuA1W39JIg5OlgXY6Zkyds9UoBhmTUpqj29a9cM2YDZ0XbXoG75KLEl1RtonpRT6FM31xmQG8tf0/2oJPi6Oz+tDzZmeEiz94woq2FHhg7mc+I+cQOcIO4I5mXkhqoAEdd1nZoQr9O6ztPB0Twf1k07Kt+fv3edN/9yWnf/6A13Hr1O2znd/pIy5w08/5tVAEER1E1HVaM9+2vWh62HZ59XyvSlS1lfuDk8elSp3oFGmKWsy1nNRV1kEVRzNLVsd5o0lLxKBHCRV03h/ECzXsR7nIwEC80wuiPQ4LDGkKzESzlRLgQe0NOEKq3xTIkfwbdh8pdgL1ASMiapfobVWc3laXQvmINPak+coZH1JOWTP1Eo49Li6RpKygXOMyndGCD6EVNzaVJE9XuEYbX7NHUyBONhUN6HICqn4POrtqs+23y2PgOc5nlzVObNXKrnq66hXc7P31dKeVUp0w/OZw/8u9d/+y33tafvWOe6bffvheBHGv1ef2pHn14mzluupxOfL9vnlrK8sKzTZyzr8rSprB8/H16w4wmaYliqH7EGFapHVQCX9YQk1vkw6Hj5jkQZdmxROBFTANb/nqUvyoWBrB1QmsKH/LFwZ1goMwpxxrllQAH0y6YRAREl0YFFHNDAG/+xh4uds4xo3OEW0ZYlD1FFwYKSAIucjUOuPf04idCfjHA/UIl2bc4lejRkgIlCveR/tiXFoD0QWGPSaSN/Z2zQUcpydlKf/M15mu4p0/zz5aC8+nA5+IV6GC/qqMk8bduu30Wo/1+XAsCnQp279HzCtIjhU7/2ozcfzpeesh7MT12250+b5/KkZV0fO0/zw8u6PqyU9VIp5QjpdA6FefhDZa71Q4hIONoNn4tJZ0E5Bj6yUyH1GU/yx+e78SpPp/Ve/DOYmMQ4N4SURQltSjXtsc3jeqwkViSWadiLnucO+NSMe8Gt87n4gBHDRYLxrDySehz3Avikn3AVtDpEFqPisigTNSqkocshDWdlmq6UabpvXdd7p1LeU0p5e5nne6bt9Mvny5W3vvlv3/QRrrWt2qt8f7tPjX8/Pv9fGVtCd8sIyP8AAAAASUVORK5CYII=\";var{TabPane:Mn}=s.Tabs;function li(e,t=!0){let n=(0,r.useRef)(0);(0,r.useEffect)(()=>{if(!t)return;let o=document.querySelector(e);if(!o)return;let a=!1,i=!1,l=0,u=0,c=0,f=0,m=0,d=y=>{o.scrollLeft=y,n.current=o.scrollLeft},g=(y=n.current)=>{window.cancelAnimationFrame(c),window.cancelAnimationFrame(f),window.clearTimeout(m),c=window.requestAnimationFrame(()=>{d(y),f=window.requestAnimationFrame(()=>{d(y),m=window.setTimeout(()=>{d(y)},80)})})},p=()=>{a&&(a=!1,o.classList.remove(\"is-dragging\"),window.setTimeout(()=>{i=!1},0))},w=y=>{y.pointerType===\"mouse\"&&y.button!==0||o.scrollWidth<=o.clientWidth||(a=!0,i=!1,l=y.clientX,u=o.scrollLeft,o.classList.add(\"is-dragging\"))},v=y=>{if(!a)return;let I=y.clientX-l;Math.abs(I)<4||(i=!0,o.scrollLeft=u-I,n.current=o.scrollLeft,y.preventDefault())},S=y=>{let I=o.scrollLeft;if(i){y.preventDefault(),y.stopPropagation();return}g(I)},E=()=>{n.current=o.scrollLeft};return g(),o.addEventListener(\"pointerdown\",w),o.addEventListener(\"click\",S,!0),o.addEventListener(\"scroll\",E),window.addEventListener(\"pointermove\",v,{passive:!1}),window.addEventListener(\"pointerup\",p),window.addEventListener(\"pointercancel\",p),()=>{window.cancelAnimationFrame(c),window.cancelAnimationFrame(f),window.clearTimeout(m),o.removeEventListener(\"pointerdown\",w),o.removeEventListener(\"click\",S,!0),o.removeEventListener(\"scroll\",E),window.removeEventListener(\"pointermove\",v),window.removeEventListener(\"pointerup\",p),window.removeEventListener(\"pointercancel\",p),o.classList.remove(\"is-dragging\")}},[e,t])}function Rl(){let[e,t]=(0,r.useState)(\"quark\");li(\".account-tabs__nav-scroll\");let n=[{key:\"quark\",label:\"\\u5938\\u514B\",content:r.default.createElement(lt,{qrcodeUrl:\"/quark/qrcode\",cacheUrl:\"/quark/cookie\",checkStatusUrl:\"/quark/check-status\"})},{key:\"uc-cookie\",label:\"UC\",content:r.default.createElement(lt,{qrcodeUrl:\"/uc/qrcode\",cacheUrl:\"/uc/cookie\",checkStatusUrl:\"/uc/check-status\"})},{key:\"uc-token\",label:\"UT\",content:r.default.createElement(lt,{qrcodeUrl:\"/uc-tv/qrcode\",cacheUrl:\"/uc-tv/token\",checkStatusUrl:\"/uc-tv/check-status\"})},{key:\"115\",label:\"115\",content:r.default.createElement(lt,{qrcodeUrl:\"/115/qrcode\",cacheUrl:\"/115/cookie\",checkStatusUrl:\"/115/check-status\"})},{key:\"baidu\",label:\"\\u767E\\u5EA6\",content:r.default.createElement(lt,{qrcodeUrl:\"/baidu/qrcode\",cacheUrl:\"/baidu/cookie\",checkStatusUrl:\"/baidu/check-status\"})},{key:\"ali\",label:\"\\u963F\\u91CC\",content:r.default.createElement(lt,{qrcodeUrl:\"/ali/qrcode\",cacheUrl:\"/ali/token\",checkStatusUrl:\"/ali/check-status\"})},{key:\"guangyapan\",label:\"\\u5149\\u9E2D\",content:r.default.createElement(pd,null)},{key:\"xunlei\",label:\"\\u8FC5\\u96F7\",content:r.default.createElement(cd,null)},{key:\"yidong\",label:\"\\u79FB\\u52A8\",content:r.default.createElement(fd,null)},{key:\"tianyi\",label:\"\\u5929\\u7FFC\",content:r.default.createElement(dd,{api:\"/tianyi/account\"})},{key:\"123\",label:\"123\",content:r.default.createElement(ud,null)}],o=n.find(a=>a.key===e)||n[0];return r.default.createElement(\"div\",{className:\"account-tabs\"},r.default.createElement(\"div\",{className:\"account-tabs__nav-scroll\",role:\"tablist\",\"aria-label\":\"\\u7F51\\u76D8\\u767B\\u5F55\\u65B9\\u5F0F\"},r.default.createElement(\"div\",{className:\"account-tabs__nav-list\"},n.map(a=>{let i=a.key===o.key;return r.default.createElement(\"button\",{key:a.key,id:\"account-tab-\".concat(a.key),type:\"button\",role:\"tab\",\"aria-selected\":i,\"aria-controls\":\"account-panel-\".concat(a.key),className:\"account-tabs__tab\".concat(i?\" account-tabs__tab--active\":\"\"),onClick:()=>t(a.key)},a.label)}))),r.default.createElement(\"div\",{id:\"account-panel-\".concat(o.key),role:\"tabpanel\",\"aria-labelledby\":\"account-tab-\".concat(o.key),className:\"account-tabs__panel\"},o.content))}var F=yt.default.create({baseURL:\"/website\"}),zt=(e,t=\"\\u8BF7\\u6C42\\u5931\\u8D25\")=>typeof e==\"string\"?e||t:e&&typeof e==\"object\"?e.message||e.msg||e.desc||e.resultDesc||JSON.stringify(e):e==null?t:String(e);F.interceptors.response.use(function(e){var t;if(e.data.code!==0){let n=zt((t=e.data.message)!=null?t:e.data);s.message.error(n);let o=new Error(n);throw o.handled=!0,o}else return e.data.data},function(e){return Promise.reject(e)});s.message.config({top:\"40%\"});var ed=\"https://o.alicdn.com/captcha-frontend/aliyunCaptcha/AliyunCaptcha.js\",Ir=\"yidong-aliyun-captcha-button\",td={2:{prefix:\"7elm7k\",SceneId:\"1rmw421p\"},3:{prefix:\"7elm7k\",SceneId:\"kcx16g7r\"}},nd=(e,t)=>new Promise((n,o)=>{if(document.getElementById(t)){n();return}let a=document.createElement(\"script\");a.id=t,a.src=e,a.async=!0,a.onload=()=>n(),a.onerror=()=>o(new Error(\"\\u6ED1\\u5757\\u7EC4\\u4EF6\\u52A0\\u8F7D\\u5931\\u8D25\")),document.head.appendChild(a)}),rd=()=>{let e=document.getElementById(Ir);return e||(e=document.createElement(\"button\"),e.id=Ir,e.type=\"button\",e.style.cssText=\"position:absolute;top:-50px;left:-50px;opacity:0;pointer-events:none;\",document.body.appendChild(e)),e},od=()=>{let e=String(navigator.language||\"\").toLowerCase();return e.includes(\"en\")?\"en\":e.includes(\"tw\")||e.includes(\"hk\")?\"tw\":\"cn\"},ad=(e=\"\")=>{try{return window.btoa(e)}catch(t){return window.btoa(unescape(encodeURIComponent(e)))}},id=()=>{let e=navigator.userAgent||\"\",t=e.match(/Android\\s+([\\d.]+)[^;)]*;\\s*([^)]+?)(?:\\s+Build|;|\\))/i),n=e.match(/(iPhone|iPad|iPod);.*?OS\\s+([\\d_]+)/i),o=e.match(/(Edg|Chrome|Firefox|Safari|Opera)\\/([\\d.]+)/i),a=navigator.platform||\"Web\",i=o?\"\".concat(o[1],\" \").concat(o[2]):e.slice(0,120);t?(a=t[2].trim(),i=\"Android \".concat(t[1])):n&&(a=n[1],i=\"iOS \".concat(n[2].replace(/_/g,\".\")));let l=\"\".concat(window.screen.width,\"X\").concat(window.screen.height);return[\"\",\"\",\"3\",\"7.17.7\",a,a,\"\",\"\",i,l,\"\",\"\",\"\",ad(a),\"\"].join(\"|\")},sd=async e=>{let t=td[Number(e)];if(!t)throw new Error(\"\\u6682\\u4E0D\\u652F\\u6301\\u5F53\\u524D\\u6ED1\\u5757\\u9A8C\\u8BC1\\u7801\\u7C7B\\u578B\\uFF1A\".concat(e||\"unknown\"));if(await nd(ed,\"yidong-aliyun-captcha-script\"),rd(),typeof window.initAliyunCaptcha!=\"function\")throw new Error(\"\\u6ED1\\u5757\\u7EC4\\u4EF6\\u521D\\u59CB\\u5316\\u5931\\u8D25\");return window.AliyunCaptchaConfig={region:\"cn\",prefix:t.prefix},new Promise((n,o)=>{let a=!1;window.initAliyunCaptcha({SceneId:t.SceneId,mode:\"popup\",button:\"#\".concat(Ir),language:od(),showErrorTip:!1,slideStyle:{width:360,height:40},success:i=>{a=!0,n(i)},error:i=>{a=!0,o(i instanceof Error?i:new Error(zt(i,\"\\u6ED1\\u5757\\u9A8C\\u8BC1\\u5931\\u8D25\")))},onClose:()=>{a||o(new Error(\"\\u5DF2\\u53D6\\u6D88\\u6ED1\\u5757\\u9A8C\\u8BC1\"))},getInstance:i=>{setTimeout(()=>{var l;return(l=i==null?void 0:i.show)==null?void 0:l.call(i)},0)}})})},J={IDLE:\"idle\",LOADING:\"loading\",WAITING:\"waiting\",SCANNED:\"scanned\",SUCCESS:\"success\",EXPIRED:\"expired\",ERROR:\"error\"},qt={NEW:\"NEW\",SCANNED:\"SCANNED\",CONFIRMED:\"CONFIRMED\",EXPIRED:\"EXPIRED\",CANCELED:\"CANCELED\"},ld={[J.IDLE]:\"READY\",[J.LOADING]:\"LOADING\",[J.WAITING]:\"SCAN ME\",[J.SCANNED]:\"CONFIRM\",[J.SUCCESS]:\"SUCCESS\",[J.EXPIRED]:\"EXPIRED\",[J.ERROR]:\"ERROR\"};function lt({qrcodeUrl:e,cacheUrl:t,checkStatusUrl:n}){let[o,a]=r.default.useState(\"\"),[i,l]=r.default.useState(J.IDLE),[u,c]=r.default.useState(Ht),f=(0,r.useRef)(null),m=(0,r.useRef)(null),d=(0,r.useCallback)(()=>{f.current&&(clearInterval(f.current),f.current=null),m.current&&(clearTimeout(m.current),m.current=null)},[]),g=(0,r.useCallback)(y=>{d(),f.current=setInterval(async()=>{try{let I=await yt.default.post(\"/website\".concat(n),{sessionKey:y});if(I.data.code===0&&I.data.data){let{status:A,cookie:B}=I.data.data;switch(A){case qt.CONFIRMED:d(),a(B),l(J.SUCCESS),await F.put(t,{cookie:B}),s.message.success(\"\\u626B\\u7801\\u6210\\u529F\\uFF0C\\u5DF2\\u81EA\\u52A8\\u5165\\u5E93\"),setTimeout(()=>{c(Ht),l(J.IDLE)},2e3);break;case qt.SCANNED:l(J.SCANNED);break;case qt.EXPIRED:case qt.CANCELED:d(),c(Ht),l(J.EXPIRED),s.message.warning(\"\\u4E8C\\u7EF4\\u7801\\u5DF2\\u8FC7\\u671F\\uFF0C\\u8BF7\\u91CD\\u65B0\\u70B9\\u51FB\");break;case qt.NEW:default:break}}}catch(I){}},2e3),m.current=setTimeout(()=>{d(),c(Ht),l(J.EXPIRED),s.message.warning(\"\\u4E8C\\u7EF4\\u7801\\u5DF2\\u8FC7\\u671F\\uFF0C\\u8BF7\\u91CD\\u65B0\\u70B9\\u51FB\")},12e4)},[t,n,d]),p=(0,r.useCallback)(async()=>{if(i!==J.LOADING){d(),l(J.LOADING);try{let y=await yt.default.get(\"/website\".concat(e,\"?t=\").concat(Date.now()),{responseType:\"blob\"}),I=y.headers[\"x-session-key\"];if(I){let A=URL.createObjectURL(y.data);c(A),l(J.WAITING),g(I)}else throw new Error(\"\\u672A\\u83B7\\u53D6\\u5230 sessionKey\")}catch(y){console.error(\"\\u83B7\\u53D6\\u4E8C\\u7EF4\\u7801\\u5931\\u8D25:\",y),l(J.ERROR),s.message.error(\"\\u83B7\\u53D6\\u4E8C\\u7EF4\\u7801\\u5931\\u8D25\")}}},[e,i,d,g]),w=(0,r.useCallback)(y=>{if(!y){s.message.warning(\"\\u6CA1\\u6709\\u53EF\\u590D\\u5236\\u7684\\u5185\\u5BB9\");return}(0,Pr.default)(y),s.message.success(\"\\u5DF2\\u590D\\u5236\\u5230\\u526A\\u8D34\\u677F\")},[]),v=(0,r.useCallback)(async()=>{let y=o!=null?o:\"\";await F.put(t,{cookie:y}),s.message.success(y?\"\\u5165\\u5E93\\u6210\\u529F\":\"\\u5DF2\\u6E05\\u7A7A\\u5165\\u5E93\\u5185\\u5BB9\")},[t,o]);(0,r.useEffect)(()=>(F.get(t).then(y=>{a(y||\"\")}),()=>d()),[t,d]);let S=()=>{switch(i){case J.SUCCESS:return\"#22c55e\";case J.ERROR:case J.EXPIRED:return\"#ef4444\";default:return\"#3b82f6\"}},E=i===J.LOADING;return r.default.createElement(\"div\",{className:\"qrcode-card\"},r.default.createElement(\"div\",{className:\"qrcode-wrapper\",onClick:p},r.default.createElement(\"div\",{className:\"qrcode-glow\"}),r.default.createElement(\"div\",{className:\"qrcode-container\"},r.default.createElement(\"img\",{src:u,alt:\"\\u626B\\u7801\\u533A\\u57DF\",className:\"qrcode-image \".concat(E?\"qrcode-image--loading\":\"\")}),E&&r.default.createElement(\"div\",{className:\"qrcode-overlay\"},r.default.createElement(\"div\",{className:\"qrcode-spinner\"}),r.default.createElement(\"span\",null,\"\\u751F\\u6210\\u4E2D...\"))),r.default.createElement(\"div\",{className:\"qrcode-status\"},r.default.createElement(\"div\",{className:\"status-dot \".concat(i===J.WAITING||i===J.SCANNED?\"status-dot--pulse\":\"\"),style:{backgroundColor:S()}}),r.default.createElement(\"span\",{className:\"status-text\"},ld[i]))),r.default.createElement(\"div\",{className:\"cookie-result-wrapper\"},r.default.createElement(\"textarea\",{className:\"cookie-result\",value:o,onChange:y=>a(y.target.value),placeholder:\"\\u70B9\\u51FB\\u4E0A\\u65B9\\u4E8C\\u7EF4\\u7801\\u5F00\\u59CB\\u626B\\u7801...\",spellCheck:\"false\"})),r.default.createElement(\"div\",{className:\"action-buttons\"},r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:()=>w(o)},r.default.createElement(\"span\",null,\"\\u590D\\u5236\"),r.default.createElement(\"svg\",{className:\"btn-icon\",fill:\"none\",stroke:\"currentColor\",viewBox:\"0 0 24 24\"},r.default.createElement(\"path\",{strokeLinecap:\"round\",strokeLinejoin:\"round\",strokeWidth:\"2\",d:\"M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z\"}))),r.default.createElement(\"button\",{className:\"action-btn action-btn--secondary\",onClick:v},r.default.createElement(\"span\",null,\"\\u5165\\u5E93\"),r.default.createElement(Ze,{className:\"btn-icon\"}))))}function dd({api:e,children:t}){let[n]=s.Form.useForm(),o=async()=>{try{let a=await n.validateFields();await F.put(e,a),s.message.success(\"\\u5165\\u5E93\\u6210\\u529F\")}catch(a){console.error(a),s.message.error(\"\\u5165\\u5E93\\u5931\\u8D25\\uFF1A\".concat(a==null?void 0:a.message))}};return(0,r.useEffect)(()=>{F.get(e).then(a=>{n.setFieldsValue(a)})},[]),r.default.createElement(s.Form,{form:n,className:\"ios-form\",layout:\"vertical\",initialValues:{useDirectDownload:!0}},r.default.createElement(s.Form.Item,{label:\"\\u8D26\\u53F7\",name:\"username\"},r.default.createElement(s.Input,null)),r.default.createElement(s.Form.Item,{label:\"\\u5BC6\\u7801\",name:\"password\"},r.default.createElement(s.Input.Password,null)),t,r.default.createElement(s.Form.Item,{label:null},r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:o},\"\\u4FDD\\u5B58\")))}function ud(){let[e]=s.Form.useForm(),[t,n]=(0,r.useState)(\"\"),o=(0,r.useCallback)(async()=>{let g=await F.get(\"/pan123/account\");e.setFieldsValue(g||{})},[e]);(0,r.useEffect)(()=>{o().catch(g=>{console.error(g),s.message.error(\"\\u8BFB\\u53D6\\u5931\\u8D25\\uFF1A\".concat((g==null?void 0:g.message)||g))})},[o]);let a=async({silent:g=!1}={})=>{let p=e.getFieldsValue(!0);await F.put(\"/pan123/account\",p),g||s.message.success(\"\\u5165\\u5E93\\u6210\\u529F\")},i=(g,p,w,v=!1)=>{if(!g||g.closed)return;let S=String(p||\"\").replace(/[&<>\"']/g,y=>({\"&\":\"&\",\"<\":\"<\",\">\":\">\",'\"':\""\",\"'\":\"'\"})[y]),E=String(w||\"\").replace(/[&<>\"']/g,y=>({\"&\":\"&\",\"<\":\"<\",\">\":\">\",'\"':\""\",\"'\":\"'\"})[y]);try{g.document.open(),g.document.write('\\n \\n \\n \\n \\n \\n '.concat(S,'\\n \\n \\n \\n
\\n

').concat(S,\"

\\n

\").concat(E,\"

\\n
\\n \\n \\n \")),g.document.close()}catch(y){console.warn(\"\\u66F4\\u65B0\\u6388\\u6743\\u9875\\u5931\\u8D25:\",y)}},l=g=>{let p=window.open(g,\"_blank\");return p||s.message.warning(\"\\u6D4F\\u89C8\\u5668\\u62E6\\u622A\\u4E86\\u6388\\u6743\\u9875\\uFF0C\\u8BF7\\u624B\\u52A8\\u6253\\u5F00\\u6388\\u6743\\u94FE\\u63A5\"),p},u=g=>new Promise(p=>window.setTimeout(p,g)),c=async()=>{for(let p=0;p<30;p+=1){let w=await F.get(\"/pan123/oauth/litepan/status/latest\");if(w.status===\"success\")return w;if(w.status===\"error\")throw new Error(w.error||\"LitePan OAuth \\u8BA4\\u8BC1\\u5931\\u8D25\");await u(p<3?2e3:p<10?3e3:4e3)}throw new Error(\"LitePan OAuth \\u8BA4\\u8BC1\\u8D85\\u65F6\\uFF0C\\u8BF7\\u68C0\\u67E5\\u662F\\u5426\\u5DF2\\u5B8C\\u6210\\u6388\\u6743\")},f=async()=>{n(\"openlist\");let g=null;try{let p=String(e.getFieldValue(\"refreshToken\")||\"\").trim();if(!p&&(g=l(new URL(\"/website/pan123/oauth/openlist/redirect\",window.location.origin).toString()),!g))throw new Error(\"\\u6D4F\\u89C8\\u5668\\u62E6\\u622A\\u4E86\\u6388\\u6743\\u9875\\uFF0C\\u8BF7\\u5141\\u8BB8\\u5F39\\u51FA\\u7A97\\u53E3\\u540E\\u91CD\\u8BD5\");if(await a({silent:!0}),p){await F.post(\"/pan123/oauth/openlist/refresh\"),await o(),s.message.success(\"OpenList Token \\u5DF2\\u5237\\u65B0\");return}s.message.info(\"\\u8BF7\\u5728\\u6253\\u5F00\\u7684\\u6388\\u6743\\u9875\\u5B8C\\u6210 123 \\u6388\\u6743\")}catch(p){console.error(p),i(g,\"\\u6388\\u6743\\u542F\\u52A8\\u5931\\u8D25\",(p==null?void 0:p.message)||String(p),!0),p!=null&&p.handled||s.message.error(\"\\u83B7\\u53D6\\u5931\\u8D25\\uFF1A\".concat((p==null?void 0:p.message)||p))}finally{n(\"\")}},m=async()=>{n(\"litepan\");let g=null;try{let p=String(e.getFieldValue(\"refreshToken\")||\"\").trim();if(!p&&(g=l(new URL(\"/website/pan123/oauth/litepan/redirect\",window.location.origin).toString()),!g))throw new Error(\"\\u6D4F\\u89C8\\u5668\\u62E6\\u622A\\u4E86\\u6388\\u6743\\u9875\\uFF0C\\u8BF7\\u5141\\u8BB8\\u5F39\\u51FA\\u7A97\\u53E3\\u540E\\u91CD\\u8BD5\");if(await a({silent:!0}),p){await F.post(\"/pan123/oauth/litepan/refresh\"),await o(),s.message.success(\"LitePan Token \\u5DF2\\u5237\\u65B0\");return}s.message.info(\"\\u8BF7\\u5728\\u6253\\u5F00\\u7684\\u6388\\u6743\\u9875\\u5B8C\\u6210 123 \\u6388\\u6743\"),await c(),await o(),s.message.success(\"LitePan Token \\u5DF2\\u5199\\u5165\")}catch(p){console.error(p),i(g,\"\\u6388\\u6743\\u542F\\u52A8\\u5931\\u8D25\",(p==null?void 0:p.message)||String(p),!0),p!=null&&p.handled||s.message.error(\"\\u83B7\\u53D6\\u5931\\u8D25\\uFF1A\".concat((p==null?void 0:p.message)||p))}finally{n(\"\")}},d=!!t;return r.default.createElement(s.Form,{form:e,className:\"ios-form\",layout:\"vertical\",initialValues:{useDirectDownload:!0}},r.default.createElement(s.Form.Item,{label:\"\\u8D26\\u53F7\",name:\"username\"},r.default.createElement(s.Input,null)),r.default.createElement(s.Form.Item,{label:\"\\u5BC6\\u7801\",name:\"password\"},r.default.createElement(s.Input.Password,null)),r.default.createElement(s.Form.Item,{label:\"access_token\",name:\"accessToken\"},r.default.createElement(s.Input.Password,{autoComplete:\"off\"})),r.default.createElement(s.Form.Item,{label:\"refresh_token\",name:\"refreshToken\"},r.default.createElement(s.Input.Password,{autoComplete:\"off\"})),r.default.createElement(s.Form.Item,{label:\"\\u514D\\u767B\\u5F55\",name:\"useDirectDownload\",valuePropName:\"checked\"},r.default.createElement(s.Switch,null)),r.default.createElement(s.Form.Item,{label:null},r.default.createElement(\"div\",{className:\"action-buttons action-buttons--three\"},r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--primary auth-source-btn\",onClick:f,disabled:d,title:\"OpenList \\u6388\\u6743\"},r.default.createElement(\"img\",{className:\"auth-source-icon\",src:ni,alt:\"\"}),r.default.createElement(\"span\",null,t===\"openlist\"?\"\\u83B7\\u53D6\\u4E2D...\":\"OpenList\")),r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--primary auth-source-btn\",onClick:m,disabled:d,title:\"LitePan \\u6388\\u6743\"},r.default.createElement(\"img\",{className:\"auth-source-icon\",src:ri,alt:\"\"}),r.default.createElement(\"span\",null,t===\"litepan\"?\"\\u83B7\\u53D6\\u4E2D...\":\"LitePan\")),r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--secondary action-buttons__full\",onClick:()=>a(),disabled:d},r.default.createElement(Ze,{className:\"btn-icon\"}),r.default.createElement(\"span\",null,\"\\u5165\\u5E93\")))))}function cd(){let[e]=s.Form.useForm(),[t,n]=(0,r.useState)(\"\"),[o,a]=(0,r.useState)(!1),[i,l]=(0,r.useState)(!1),u=(0,r.useCallback)(async()=>{let d=await F.get(\"/xunlei/account\");e.setFieldsValue({username:d.username||\"\",password:d.password||\"\"})},[e]),c=async()=>{let d=await e.validateFields([\"username\",\"password\"]);await F.put(\"/xunlei/account\",d),s.message.success(\"\\u5165\\u5E93\\u6210\\u529F\")},f=async()=>{try{a(!0);let d=await e.validateFields([\"username\",\"password\"]);await F.put(\"/xunlei/account\",d),await F.post(\"/xunlei/send-code\",{}),s.message.success(\"\\u9A8C\\u8BC1\\u7801\\u5DF2\\u53D1\\u9001\\uFF0C\\u8BF7\\u67E5\\u6536\\u77ED\\u4FE1\")}catch(d){console.error(d),d!=null&&d.handled||s.message.error(\"\\u53D1\\u9001\\u9A8C\\u8BC1\\u7801\\u5931\\u8D25\\uFF1A\".concat((d==null?void 0:d.message)||d))}finally{a(!1)}},m=async()=>{try{l(!0);let d;if(t.trim())d=await F.post(\"/xunlei/verify-code\",{code:t.trim()});else{let g=await e.validateFields([\"username\",\"password\"]);d=await F.post(\"/xunlei/login\",g)}d!=null&&d.hasAuth&&s.message.success(\"\\u8FC5\\u96F7\\u767B\\u5F55\\u6210\\u529F\\uFF0C\\u53EF\\u5C1D\\u8BD5\\u539F\\u753B\\u64AD\\u653E\")}catch(d){console.error(d),d!=null&&d.handled||s.message.error(\"\\u8FC5\\u96F7\\u767B\\u5F55\\u5931\\u8D25\\uFF1A\".concat((d==null?void 0:d.message)||d))}finally{l(!1)}};return(0,r.useEffect)(()=>{u()},[u]),r.default.createElement(s.Form,{form:e,className:\"ios-form\",layout:\"vertical\"},r.default.createElement(s.Form.Item,{label:\"\\u624B\\u673A\\u53F7\",name:\"username\"},r.default.createElement(s.Input,{placeholder:\"\\u4E2D\\u56FD\\u5927\\u9646\\u624B\\u673A\\u53F7\",inputMode:\"tel\",autoComplete:\"tel\"})),r.default.createElement(s.Form.Item,{label:\"\\u5BC6\\u7801\",name:\"password\"},r.default.createElement(s.Input.Password,{placeholder:\"\\u8FC5\\u96F7\\u767B\\u5F55\\u5BC6\\u7801\",autoComplete:\"current-password\"})),r.default.createElement(s.Form.Item,{label:\"\\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\"},r.default.createElement(s.Space.Compact,{className:\"xunlei-verify-compact\",style:{width:\"100%\"}},r.default.createElement(s.Input,{value:t,onChange:d=>n(d.target.value),placeholder:\"\\u8F93\\u5165\\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\",inputMode:\"numeric\",autoComplete:\"one-time-code\"}),r.default.createElement(s.Button,{className:\"xunlei-verify-send-btn\",onClick:f,loading:o},\"\\u53D1\\u9001\\u9A8C\\u8BC1\\u7801\"))),r.default.createElement(s.Form.Item,{label:null},r.default.createElement(\"div\",{className:\"action-buttons\"},r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--primary\",onClick:m,disabled:i},r.default.createElement(\"span\",null,i?\"\\u767B\\u5F55\\u4E2D...\":\"\\u767B\\u5F55\"),r.default.createElement(\"svg\",{className:\"btn-icon btn-icon--login\",fill:\"none\",stroke:\"currentColor\",viewBox:\"0 0 24 24\"},r.default.createElement(\"path\",{strokeLinecap:\"round\",strokeLinejoin:\"round\",strokeWidth:\"2\",d:\"M15 3h4a2 2 0 012 2v14a2 2 0 01-2 2h-4M10 17l5-5-5-5M15 12H3\"}))),r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--secondary\",onClick:c},r.default.createElement(\"span\",null,\"\\u5165\\u5E93\"),r.default.createElement(Ze,{className:\"btn-icon\"})))))}function fd(){let[e]=s.Form.useForm(),[t,n]=(0,r.useState)(\"\"),[o,a]=(0,r.useState)(!1),[i,l]=(0,r.useState)(!1),u=(0,r.useCallback)(async(d,g)=>{try{s.message.info(\"\\u8BF7\\u5B8C\\u6210\\u6ED1\\u5757\\u9A8C\\u8BC1\");let p=await sd(g);await F.post(\"/yidong/send-code-captcha\",{phone:d,captchaType:g,puzzleVerfycode:p,clientInfo:id()}),s.message.success(\"\\u9A8C\\u8BC1\\u7801\\u5DF2\\u53D1\\u9001\\uFF0C\\u8BF7\\u67E5\\u6536\\u77ED\\u4FE1\")}catch(p){console.error(p),(p==null?void 0:p.message)===\"\\u5DF2\\u53D6\\u6D88\\u6ED1\\u5757\\u9A8C\\u8BC1\"?s.message.warning(\"\\u5DF2\\u53D6\\u6D88\\u6ED1\\u5757\\u9A8C\\u8BC1\"):p!=null&&p.handled||s.message.error(\"\\u53D1\\u9001\\u9A8C\\u8BC1\\u7801\\u5931\\u8D25\\uFF1A\".concat(zt((p==null?void 0:p.message)||p)))}},[]),c=async()=>{try{let d=await e.validateFields([\"authorization\"]);await F.put(\"/yidong/authorization\",{authorization:String(d.authorization||\"\").replace(/^Basic\\s+/i,\"\").trim()}),s.message.success(\"\\u5165\\u5E93\\u6210\\u529F\")}catch(d){console.error(d),s.message.error(\"\\u5165\\u5E93\\u5931\\u8D25\\uFF1A\".concat(d==null?void 0:d.message))}},f=async()=>{try{a(!0);let d=await e.validateFields([\"phone\"]),g=String(d.phone||\"\").trim(),p=await F.post(\"/yidong/send-code\",{phone:g});if(p!=null&&p.captchaRequired){await u(g,p.captchaType);return}s.message.success(\"\\u9A8C\\u8BC1\\u7801\\u5DF2\\u53D1\\u9001\\uFF0C\\u8BF7\\u67E5\\u6536\\u77ED\\u4FE1\")}catch(d){console.error(d),d!=null&&d.handled||s.message.error(\"\\u53D1\\u9001\\u9A8C\\u8BC1\\u7801\\u5931\\u8D25\\uFF1A\".concat(zt((d==null?void 0:d.message)||d)))}finally{a(!1)}},m=async()=>{if(!t.trim()){s.message.warning(\"\\u8BF7\\u5148\\u8F93\\u5165\\u9A8C\\u8BC1\\u7801\");return}try{l(!0);let d=await e.validateFields([\"phone\"]),g=await F.post(\"/yidong/verify-code\",{phone:String(d.phone||\"\").trim(),code:t.trim()});g!=null&&g.authorization&&e.setFieldsValue({authorization:String(g.authorization||\"\").replace(/^Basic\\s+/i,\"\").trim()}),s.message.success(\"\\u79FB\\u52A8\\u4E91\\u76D8\\u767B\\u5F55\\u6210\\u529F\\uFF0CAuthorization \\u5DF2\\u81EA\\u52A8\\u5165\\u5E93\")}catch(d){console.error(d),d!=null&&d.handled||s.message.error(\"\\u9A8C\\u8BC1\\u7801\\u767B\\u5F55\\u5931\\u8D25\\uFF1A\".concat(zt((d==null?void 0:d.message)||d)))}finally{l(!1)}};return(0,r.useEffect)(()=>{F.get(\"/yidong/authorization\").then(d=>{e.setFieldsValue({authorization:String(d.authorization||\"\").replace(/^Basic\\s+/i,\"\").trim(),phone:d.phone||\"\"})})},[e]),r.default.createElement(s.Form,{form:e,className:\"ios-form\",layout:\"vertical\"},r.default.createElement(s.Form.Item,{label:\"\\u624B\\u673A\\u53F7\",name:\"phone\",rules:[{pattern:/^1[3456789]\\d{9}$/,message:\"\\u8BF7\\u8F93\\u5165\\u6B63\\u786E\\u7684\\u4E2D\\u56FD\\u5927\\u9646\\u624B\\u673A\\u53F7\"}]},r.default.createElement(s.Input,{placeholder:\"\\u4E2D\\u56FD\\u5927\\u9646\\u624B\\u673A\\u53F7\",inputMode:\"tel\",autoComplete:\"tel\"})),r.default.createElement(s.Form.Item,{label:\"\\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\"},r.default.createElement(s.Space.Compact,{className:\"xunlei-verify-compact\",style:{width:\"100%\"}},r.default.createElement(s.Input,{value:t,onChange:d=>n(d.target.value),placeholder:\"\\u8F93\\u5165\\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\",inputMode:\"numeric\",autoComplete:\"one-time-code\"}),r.default.createElement(s.Button,{className:\"xunlei-verify-send-btn\",onClick:f,loading:o},\"\\u53D1\\u9001\\u9A8C\\u8BC1\\u7801\"))),r.default.createElement(s.Form.Item,{label:\"Authorization\",name:\"authorization\"},r.default.createElement(s.Input.Password,{placeholder:\"Basic \\u540E\\u9762\\u7684\\u5185\\u5BB9\",autoComplete:\"off\"})),r.default.createElement(s.Form.Item,{label:null},r.default.createElement(\"div\",{className:\"action-buttons\"},r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--primary\",onClick:m,disabled:i},r.default.createElement(\"span\",null,i?\"\\u767B\\u5F55\\u4E2D...\":\"\\u767B\\u5F55\"),r.default.createElement(\"svg\",{className:\"btn-icon btn-icon--login\",fill:\"none\",stroke:\"currentColor\",viewBox:\"0 0 24 24\"},r.default.createElement(\"path\",{strokeLinecap:\"round\",strokeLinejoin:\"round\",strokeWidth:\"2\",d:\"M15 3h4a2 2 0 012 2v14a2 2 0 01-2 2h-4M10 17l5-5-5-5M15 12H3\"}))),r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--secondary\",onClick:c},r.default.createElement(\"span\",null,\"\\u5165\\u5E93\"),r.default.createElement(Ze,{className:\"btn-icon\"})))))}function pd(){return r.default.createElement(lt,{qrcodeUrl:\"/guangyapan/qrcode\",cacheUrl:\"/guangyapan/token\",checkStatusUrl:\"/guangyapan/check-status\"})}function md({visible:e,onCancel:t,onSave:n,panKey:o,panName:a,panPic:i,chunkSize:l,poolSize:u,noSaveMode:c}){let[f]=s.Form.useForm(),m=s.Form.useWatch(\"pic\",f),d=o===\"quark\"||o===\"uc\"||o===\"ali\";(0,r.useEffect)(()=>{e&&f.setFieldsValue({name:a||\"\",pic:i||\"\",chunkSize:l||(o===\"ali\"?128:512),poolSize:u||(o===\"ali\"?20:10),noSaveMode:c===!0})},[e,a,i,l,u,c,f]);let g=async()=>{try{let p=await f.validateFields();n(p)}catch(p){console.error(\"\\u9A8C\\u8BC1\\u5931\\u8D25:\",p)}};return r.default.createElement(s.Modal,{title:\"\".concat(a||\"\\u7F51\\u76D8\",\" \\u914D\\u7F6E\"),open:e,onCancel:t,width:\"90%\",className:\"ios-modal\",footer:null},r.default.createElement(s.Form,{form:f,layout:\"vertical\",className:\"ios-form ios-input-number\"},r.default.createElement(s.Form.Item,{label:\"\\u540D\\u79F0\",name:\"name\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u7F51\\u76D8\\u540D\\u79F0\"},{max:20,message:\"\\u540D\\u79F0\\u957F\\u5EA6\\u8BF7\\u63A7\\u5236\\u5728 20 \\u4E2A\\u5B57\\u7B26\\u4EE5\\u5185\"}]},r.default.createElement(s.Input,{placeholder:\"\\u4F8B\\u5982\\uFF1A\\u5938\\u514B\"})),r.default.createElement(s.Form.Item,{label:\"\\u56FE\\u7247 URL\",name:\"pic\",tooltip:\"\\u7559\\u7A7A\\u5C06\\u56DE\\u9000\\u4E3A\\u5185\\u7F6E\\u9ED8\\u8BA4\\u56FE\\u6807\",rules:[{validator:(p,w)=>{let v=String(w||\"\").trim();return!v||/^https?:\\/\\/\\S+$/i.test(v)||/^data:image\\//i.test(v)||/^\\/\\S+/.test(v)?Promise.resolve():Promise.reject(new Error(\"\\u8BF7\\u8F93\\u5165\\u5408\\u6CD5\\u56FE\\u7247\\u5730\\u5740\\uFF08http/https\\u3001data:image \\u6216 / \\u5F00\\u5934\\u8DEF\\u5F84\\uFF09\"))}}]},r.default.createElement(s.Input,{placeholder:\"https://example.com/logo.png \\u6216 data:image/png;base64,...\"})),!!String(m||\"\").trim()&&r.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:10,marginBottom:16}},r.default.createElement(\"img\",{src:String(m).trim(),alt:\"\\u7F51\\u76D8\\u56FE\\u6807\\u9884\\u89C8\",style:{width:36,height:36,borderRadius:8,objectFit:\"cover\",border:\"1px solid rgba(0,0,0,0.08)\",backgroundColor:\"#fff\"}}),r.default.createElement(\"span\",{style:{fontSize:12,color:\"#8e8e93\"}},\"\\u56FE\\u6807\\u9884\\u89C8\\uFF08\\u82E5\\u4E0D\\u663E\\u793A\\u8BF7\\u68C0\\u67E5\\u5730\\u5740\\u662F\\u5426\\u53EF\\u8BBF\\u95EE\\uFF09\")),d&&r.default.createElement(r.default.Fragment,null,r.default.createElement(s.Form.Item,{label:\"\\u5206\\u7247\\u5927\\u5C0F (KB)\",name:\"chunkSize\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u5206\\u7247\\u5927\\u5C0F\"},{type:\"number\",min:64,max:2048,message:\"\\u8303\\u56F4: 64-2048 KB\"}]},r.default.createElement(s.InputNumber,{style:{width:\"100%\"},placeholder:\"512\",addonAfter:\"KB\"})),r.default.createElement(s.Form.Item,{label:\"\\u5E76\\u53D1\\u7EBF\\u7A0B\\u6570\",name:\"poolSize\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u7EBF\\u7A0B\\u6570\"},{type:\"number\",min:1,max:20,message:\"\\u8303\\u56F4: 1-20\"}]},r.default.createElement(s.InputNumber,{style:{width:\"100%\"},placeholder:\"10\",addonAfter:\"\\u7EBF\\u7A0B\"}))),o===\"quark\"&&r.default.createElement(s.Form.Item,{label:\"\\u4E0D\\u8F6C\\u5B58\\u6A21\\u5F0F\",name:\"noSaveMode\",valuePropName:\"checked\",tooltip:\"\\u5F00\\u542F\\u540E\\u5148\\u5C1D\\u8BD5\\u4E0D\\u8F6C\\u5B58\\u76F4\\u94FE\\uFF0C\\u62FF\\u4E0D\\u5230\\u518D\\u56DE\\u9000\\u8F6C\\u5B58\\uFF1B\\u5173\\u95ED\\u5219\\u76F4\\u63A5\\u8F6C\\u5B58\\u83B7\\u53D6\\u591A\\u753B\\u8D28\\u3002\"},r.default.createElement(s.Switch,null)),r.default.createElement(s.Form.Item,{style:{marginBottom:0,marginTop:24}},r.default.createElement(\"div\",{className:\"ios-button-group\",style:{justifyContent:\"flex-end\"}},r.default.createElement(\"button\",{className:\"action-btn action-btn--secondary-outline\",onClick:t},\"\\u53D6\\u6D88\"),r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:g},\"\\u4FDD\\u5B58\")))))}var di=e=>{let{attributes:t,listeners:n,setNodeRef:o,transform:a,transition:i,isDragging:l}=Tr({id:e[\"data-row-key\"]}),u=O(L(O({},e.style),{transform:Ve.Translate.toString(a),transition:i}),l?{position:\"relative\",zIndex:9999}:{});return r.default.createElement(\"tr\",O(L(O({},e),{ref:o,style:u}),t))},ui=({rowKey:e})=>{let{listeners:t,setActivatorNodeRef:n}=Tr({id:e});return r.default.createElement(dr,O({ref:n,className:\"drag-handle\"},t))},Ln=\"https://pan.199333.xyz\",bt=[{key:\"quark\",name:\"\\u5938\\u514B\\u7F51\\u76D8\"},{key:\"uc\",name:\"UC\\u7F51\\u76D8\"},{key:\"aliyun\",name:\"\\u963F\\u91CC\\u4E91\\u76D8\"},{key:\"baidu\",name:\"\\u767E\\u5EA6\\u7F51\\u76D8\"},{key:\"xunlei\",name:\"\\u8FC5\\u96F7\\u7F51\\u76D8\"},{key:\"tianyi\",name:\"\\u5929\\u7FFC\\u4E91\\u76D8\"},{key:\"mobile\",name:\"\\u79FB\\u52A8\\u4E91\\u76D8\"},{key:\"123\",name:\"123\\u7F51\\u76D8\"},{key:\"115\",name:\"115\\u7F51\\u76D8\"},{key:\"pikpak\",name:\"PikPak\"},{key:\"magnet\",name:\"\\u78C1\\u529B\\u94FE\\u63A5\"},{key:\"ed2k\",name:\"\\u7535\\u9A74\\u94FE\\u63A5\"}],Mr={id:\"\",name:\"\",host:\"\",username:\"\",password:\"\",deviceId:\"\",logo:\"\",libraryStats:{movieCount:0,seriesCount:0}};function gd(e){return String(e||\"\").trim().toLowerCase().replace(/[^a-z0-9_-]+/g,\"-\").replace(/^-+|-+$/g,\"\").slice(0,40)}function Lr(){return O({},Mr)}function hd(e){let t=String(e||\"\").trim();return!t||/^https?:\\/\\/\\S+$/i.test(t)||/^data:image\\//i.test(t)||/^\\/\\S+/.test(t)}function Bn(e={}){return String(e.name||\"Emby\").trim()}function xd(e={}){let t=Number(e.movieCount||0),n=Number(e.seriesCount||0);return{movieCount:t,seriesCount:n}}function bd(){return r.default.createElement(\"svg\",{className:\"emby-server-card__stat-icon\",viewBox:\"0 0 1024 1024\",\"aria-hidden\":\"true\",focusable:\"false\"},r.default.createElement(\"path\",{d:\"M875.690667 414.72H301.738667l576.682666-195.754667c36.181333-11.093333 56.832-49.322667 45.909334-85.674666L909.824 83.626667c-8.704-29.013333-35.84-49.322667-66.218667-49.322667-6.656 0-13.312 1.024-19.626666 2.901333l-0.512 0.170667L127.829333 273.237333C91.648 284.330667 70.997333 322.56 81.92 358.912l14.848 49.664c4.096 13.653333 12.288 25.429333 23.04 34.133333-8.533333 11.434667-13.482667 25.6-13.482667 40.96v436.736c0 38.058667 30.890667 68.949333 68.949334 68.949334h700.416c38.058667 0 68.949333-30.890667 68.949333-68.949334V483.84c0-38.058667-30.890667-69.12-68.949333-69.12z m17.408 69.12v69.290667H690.858667l70.144-86.869334h114.688c9.557333 0.170667 17.408 7.850667 17.408 17.578667z m-717.824-17.408h175.616l-76.970667 76.970667c-2.901333 2.901333-4.949333 6.144-6.144 9.728H157.696v-69.290667c0-9.728 7.850667-17.408 17.578667-17.408z m243.029333 5.290667c1.706667-1.706667 3.072-3.413333 4.096-5.461334H694.613333l-63.829333 79.018667c-1.877333 2.389333-3.413333 4.949333-4.266667 7.68H336.896l81.408-81.237333zM143.189333 322.56l0.512-0.170667L838.997333 86.528c1.536-0.341333 3.072-0.682667 4.608-0.682667 7.68 0 14.506667 5.12 16.725334 12.458667l14.848 49.664c2.730667 9.216-2.56 18.944-11.776 21.674667l-0.512 0.170666L167.424 405.845333c-1.536 0.341333-3.072 0.682667-4.608 0.682667-7.68 0-14.506667-5.12-16.725333-12.458667L131.413333 344.234667c-2.730667-9.216 2.56-18.944 11.776-21.674667z m732.501334 615.424H175.274667c-9.557333 0-17.408-7.850667-17.408-17.408v-315.733333h735.402666v315.733333c-0.170667 9.557333-8.021333 17.408-17.578666 17.408z m0 0\"}))}function yd(){return r.default.createElement(\"svg\",{className:\"emby-server-card__stat-icon emby-server-card__stat-icon--series\",viewBox:\"0 0 24 24\",\"aria-hidden\":\"true\",focusable:\"false\"},r.default.createElement(\"rect\",{x:\"3\",y:\"9\",width:\"18\",height:\"12\",rx:\"2.5\"}),r.default.createElement(\"path\",{d:\"M7.5 3.5 L12 9 L16.5 3.5\"}))}function vd(e={}){let{movieCount:t,seriesCount:n}=xd(e);return!t&&!n?r.default.createElement(\"span\",{className:\"emby-server-card__sync\"},\"\\u5F85\\u540C\\u6B65\"):r.default.createElement(r.default.Fragment,null,r.default.createElement(\"span\",{className:\"emby-server-card__stat\",title:\"\".concat(t,\" \\u7535\\u5F71\"),\"aria-label\":\"\".concat(t,\" \\u7535\\u5F71\")},r.default.createElement(bd,null),r.default.createElement(\"span\",null,t)),r.default.createElement(\"span\",{className:\"emby-server-card__stat\",title:\"\".concat(n,\" \\u5267\\u96C6\"),\"aria-label\":\"\".concat(n,\" \\u5267\\u96C6\")},r.default.createElement(yd,null),r.default.createElement(\"span\",null,n)))}function Nr(e={}){return{id:e.id,name:e.name||\"Emby\",host:e.host,username:e.username,password:e.password,deviceId:e.deviceId||\"\",logo:e.logo||\"\",libraries:e.libraries||[],libraryStats:e.libraryStats||Mr.libraryStats}}var oi=\"nodejs_emby_\",ai=\"nodejs_alist_\";function wd(e=\"\"){let t=String(e||\"\");return t.startsWith(oi)?t.slice(oi.length):\"\"}function Cd(e=\"\"){let t=String(e||\"\");return t.startsWith(ai)?t.slice(ai.length):\"\"}function ci(){return{id:\"alist_\".concat(Date.now()),name:\"\",server:\"\",username:\"\",password:\"\",token:\"\",otpCode:\"\"}}function Br(e={}){let t=String(e.name||\"\").trim();if(t)return t;try{return new URL(e.server).hostname||\"Alist\"}catch(n){return\"Alist\"}}function Dr(e={}){return{id:e.id||\"alist_\".concat(Date.now()),name:Br(e),server:String(e.server||\"\").trim().replace(/\\/+$/,\"\"),username:String(e.username||\"\").trim(),password:String(e.password||\"\"),token:String(e.token||\"\").trim(),otpCode:String(e.otpCode||\"\").trim()}}var Sd=[{key:\"nodejs_muou\",api:\"/muou/urls\",name:\"\\u6728\\u5076\"},{key:\"nodejs_wanou\",api:\"/wanou/urls\",name:\"\\u73A9\\u5076\"},{key:\"nodejs_leijing\",api:\"/leijing/urls\",name:\"\\u96F7\\u9CB8\"},{key:\"nodejs_zhizhen\",api:\"/zhizhen/urls\",name:\"\\u81F3\\u81FB\"},{key:\"nodejs_duoduo\",api:\"/duoduo/urls\",name:\"\\u591A\\u591A\"},{key:\"nodejs_erxiao\",api:\"/erxiao/urls\",name:\"\\u4E8C\\u5C0F\"},{key:\"nodejs_huban\",api:\"/huban/urls\",name:\"\\u864E\\u6591\"},{key:\"nodejs_labi\",api:\"/labi/urls\",name:\"\\u8FA3\\u7B14\"},{key:\"nodejs_ouge\",api:\"/ouge/urls\",name:\"\\u6B27\\u6B4C\"},{key:\"nodejs_xiaoban\",api:\"/xiaoban/urls\",name:\"\\u5C0F\\u73ED\"},{key:\"nodejs_tgchannel\",api:\"/tgchannel/config\",name:\"TG\\u9891\\u9053\",type:\"tg\"},{key:\"nodejs_tgsou\",api:\"/tgsou/config\",name:\"TG\\u641C\",type:\"tg\"},{key:\"nodejs_tgfilebot\",api:\"/tgfilebot/config\",name:\"TGFileBot\",type:\"tgfilebot\"},{key:\"nodejs_pansou\",api:\"/pansou/config\",name:\"PanSou\",type:\"pansou\"},{key:\"nodejs_pinglian\",api:\"/pinglian/config\",name:\"\\u76D8\\u94FE\",type:\"account\"},{key:\"nodejs_guanying\",api:\"/guanying/config\",name:\"\\u89C2\\u5F71\",type:\"domain-cookie\"},{key:\"nodejs_123ypzysq\",api:\"/123ypzysq/config\",name:\"123\\u8D44\\u6E90\\u793E\\u533A\",type:\"domain-cookie\"},{key:\"nodejs_live2vod\",api:\"/live2vod/config\",name:\"\\u76F4\\u64AD\\u8F6C\\u70B9\\u64AD\",type:\"live2vod\"},{key:\"nodejs_emby\",api:\"/emby-spider/setting\",name:\"Emby\\u6E90\",type:\"emby-spider\"},{key:\"nodejs_alist-video\",api:\"/alist-video/setting\",name:\"Alist\",type:\"alist-video\"}],ii=Sd.reduce((e,t)=>(e[t.key]={api:t.api,name:t.name,type:t.type},e),{});function Od({visible:e,onCancel:t,onSave:n,siteName:o}){let[a]=s.Form.useForm(),[i,l]=(0,r.useState)(!1),[u,c]=(0,r.useState)(\"channels\"),[f,m]=(0,r.useState)([]),[d,g]=(0,r.useState)([]),[p,w]=(0,r.useState)(!1),[v,S]=(0,r.useState)([]),[E,y]=(0,r.useState)([]),[I,A]=(0,r.useState)([]),[B,V]=(0,r.useState)(\"\"),[H,z]=(0,r.useState)([]),x=(0,r.useRef)(0),C=()=>{let T=B.trim();if(T){if(f.includes(T)){s.message.warning('\\u9891\\u9053 \"'.concat(T,'\" \\u5DF2\\u5B58\\u5728')),V(\"\");return}m([T,...f]),z([T,...H]),S([T,...v]),V(\"\"),s.message.success('\\u5DF2\\u6DFB\\u52A0\\u9891\\u9053 \"'.concat(T,'\"'))}},M=(T,D)=>{D.stopPropagation(),m(f.filter($=>$!==T)),S(v.filter($=>$!==T)),z(H.filter($=>$!==T)),s.message.success('\\u5DF2\\u5220\\u9664\\u9891\\u9053 \"'.concat(T,'\"'))},q=(0,r.useCallback)(async T=>{if(!T)return null;w(!0);try{let D=await yt.default.get(\"\".concat(T,\"/api/health\"));if(D.data){let $=D.data.channels||[],Y=D.data.plugins||[];return m($),g(Y),{channels:$,plugins:Y}}return null}catch(D){return console.error(\"\\u83B7\\u53D6 PanSou \\u9009\\u9879\\u5931\\u8D25:\",D),null}finally{w(!1)}},[]);(0,r.useEffect)(()=>{let T=++x.current;if(!e){l(!1),V(\"\");return}l(!0),F.get(\"/pansou/config\").then(async D=>{if(x.current!==T)return;let $=D.url||Ln;a.setFieldsValue({name:o,url:$});let Y=await q($);D.channels&&D.channels.length>0?S(D.channels):Y!=null&&Y.channels&&S(Y.channels),D.plugins&&D.plugins.length>0?y(D.plugins):Y!=null&&Y.plugins&&y(Y.plugins),D.cloudTypes&&D.cloudTypes.length>0?A(D.cloudTypes):A(bt.map(me=>me.key))}).catch(D=>{x.current===T&&(console.error(D),s.message.error(\"\\u52A0\\u8F7D\\u914D\\u7F6E\\u5931\\u8D25\"))}).finally(()=>{x.current===T&&l(!1)})},[e,o,a,q]);let _=(0,r.useCallback)(T=>{let D=T.target.value||Ln;q(D)},[q]),j=async()=>{let T;try{T=await a.validateFields()}catch(D){return}try{l(!0);let D={url:T.url||\"\",channels:v,plugins:E,cloudTypes:I};await F.put(\"/pansou/config\",D),s.message.success(\"\\u4FDD\\u5B58\\u6210\\u529F\"),n(T.name),t()}catch(D){console.error(D),s.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25\\uFF1A\".concat((D==null?void 0:D.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}finally{l(!1)}},we=async()=>{try{l(!0),await F.delete(\"/pansou/config\");let D=(await F.get(\"/pansou/config\")).url||Ln;a.setFieldsValue({url:D});let $=await q(D);S(($==null?void 0:$.channels)||[]),y(($==null?void 0:$.plugins)||[]),A(bt.map(Y=>Y.key)),s.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\")}catch(T){console.error(T),s.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(T==null?void 0:T.message))}finally{l(!1)}},Ce=(T,D,$)=>{T.includes($)?D(T.filter(Y=>Y!==$)):D([...T,$])},R=(T,D,$)=>{D.length===T.length?$([]):$([...T])},Fe=(T,D,$,Y,me,Se)=>r.default.createElement(\"div\",{key:T,className:\"pansou-checkbox-card \".concat(D?\"pansou-checkbox-card--selected\":\"\"),onClick:$},r.default.createElement(\"span\",{className:\"pansou-checkbox-card__label\"},Y||T),me&&r.default.createElement(Je,{className:\"pansou-checkbox-card__delete\",onClick:Se}));li(\".pansou-config-tabs__nav-scroll\",e);let ue=[{key:\"channels\",label:\"TG\\u9891\\u9053\",count:v.length},{key:\"plugins\",label:\"\\u641C\\u7D22\\u63D2\\u4EF6\",count:E.length},{key:\"cloudTypes\",label:\"\\u7F51\\u76D8\\u7C7B\\u578B\",count:I.length}];return r.default.createElement(s.Modal,{title:\"\\u7F16\\u8F91 \".concat(o||\"PanSou\"),open:e,onCancel:t,className:\"ios-modal pansou-config-modal\",footer:null,width:\"90%\",destroyOnClose:!0},r.default.createElement(s.Spin,{spinning:i},r.default.createElement(s.Form,{form:a,layout:\"vertical\",className:\"ios-form\"},r.default.createElement(s.Form.Item,{label:\"\\u540D\\u79F0\",name:\"name\"},r.default.createElement(s.Input,{placeholder:\"\\u7AD9\\u6E90\\u540D\\u79F0\"})),r.default.createElement(s.Form.Item,{label:\"API \\u5730\\u5740\",name:\"url\"},r.default.createElement(s.Input,{placeholder:\"\\u7559\\u7A7A\\u4F7F\\u7528\\u9ED8\\u8BA4: \".concat(Ln),onBlur:_}))),r.default.createElement(\"div\",{className:\"pansou-config-tabs\"},r.default.createElement(\"div\",{className:\"pansou-config-tabs__nav-scroll\",role:\"tablist\",\"aria-label\":\"PanSou \\u914D\\u7F6E\\u9879\"},r.default.createElement(\"div\",{className:\"pansou-config-tabs__nav-list\"},ue.map(T=>{let D=T.key===u;return r.default.createElement(\"button\",{key:T.key,type:\"button\",role:\"tab\",\"aria-selected\":D,className:\"pansou-config-tabs__tab\".concat(D?\" pansou-config-tabs__tab--active\":\"\"),onClick:()=>c(T.key)},r.default.createElement(\"span\",null,T.label),r.default.createElement(\"span\",{className:\"pansou-config-tabs__badge\"},Math.min(T.count,9999)))})))),r.default.createElement(s.Spin,{spinning:p},u===\"channels\"&&r.default.createElement(\"div\",{className:\"pansou-checkbox-section\"},r.default.createElement(\"div\",{className:\"pansou-checkbox-header\"},r.default.createElement(\"span\",null,\"\\u5DF2\\u9009 \",v.length,\" / \",f.length),r.default.createElement(s.Space,null,r.default.createElement(s.Button,{type:\"link\",size:\"small\",onClick:()=>R(f,v,S)},v.length===f.length?\"\\u53D6\\u6D88\\u5168\\u9009\":\"\\u5168\\u9009\"))),r.default.createElement(\"div\",{className:\"pansou-add-channel\"},r.default.createElement(s.Input,{placeholder:\"\\u641C\\u7D22\\u6216\\u6DFB\\u52A0\\u9891\\u9053\",value:B,onChange:T=>V(T.target.value),onPressEnter:C,allowClear:!0,style:{flex:1}}),r.default.createElement(s.Button,{type:\"primary\",icon:r.default.createElement(be,null),onClick:C},\"\\u6DFB\\u52A0\")),r.default.createElement(\"div\",{className:\"pansou-checkbox-grid\"},f.filter(T=>!B||T.toLowerCase().includes(B.toLowerCase())).map(T=>Fe(T,v.includes(T),()=>Ce(v,S,T),T,H.includes(T),D=>M(T,D)))),f.length===0&&!p&&r.default.createElement(\"div\",{className:\"pansou-empty-tip\"},\"\\u8BF7\\u5148\\u914D\\u7F6E\\u6B63\\u786E\\u7684 API \\u5730\\u5740\\u4EE5\\u52A0\\u8F7D\\u53EF\\u7528\\u9891\\u9053\")),u===\"plugins\"&&r.default.createElement(\"div\",{className:\"pansou-checkbox-section\"},r.default.createElement(\"div\",{className:\"pansou-checkbox-header\"},r.default.createElement(\"span\",null,\"\\u5DF2\\u9009 \",E.length,\" / \",d.length),r.default.createElement(s.Button,{type:\"link\",size:\"small\",onClick:()=>R(d,E,y)},E.length===d.length?\"\\u53D6\\u6D88\\u5168\\u9009\":\"\\u5168\\u9009\")),r.default.createElement(\"div\",{className:\"pansou-checkbox-grid\"},d.map(T=>Fe(T,E.includes(T),()=>Ce(E,y,T),T,!1,null))),d.length===0&&!p&&r.default.createElement(\"div\",{className:\"pansou-empty-tip\"},\"\\u8BF7\\u5148\\u914D\\u7F6E\\u6B63\\u786E\\u7684 API \\u5730\\u5740\\u4EE5\\u52A0\\u8F7D\\u53EF\\u7528\\u63D2\\u4EF6\")),u===\"cloudTypes\"&&r.default.createElement(\"div\",{className:\"pansou-checkbox-section\"},r.default.createElement(\"div\",{className:\"pansou-checkbox-header\"},r.default.createElement(\"span\",null,\"\\u5DF2\\u9009 \",I.length,\" / \",bt.length),r.default.createElement(s.Button,{type:\"link\",size:\"small\",onClick:()=>R(bt.map(T=>T.key),I,A)},I.length===bt.length?\"\\u53D6\\u6D88\\u5168\\u9009\":\"\\u5168\\u9009\")),r.default.createElement(\"div\",{className:\"pansou-checkbox-grid\"},bt.map(T=>Fe(T.key,I.includes(T.key),()=>Ce(I,A,T.key),T.name,!1,null))))),r.default.createElement(\"div\",{className:\"pansou-config-footer ios-button-group\"},r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:j,disabled:i},\"\\u4FDD\\u5B58\"),r.default.createElement(\"button\",{className:\"action-btn action-btn--danger\",onClick:we,disabled:i},\"\\u91CD\\u7F6E\"))))}function Ar({visible:e,onCancel:t,onSave:n,onDelete:o,server:a,usedIds:i}){let[l]=s.Form.useForm(),[u,c]=(0,r.useState)(!1),f=s.Form.useWatch(\"logo\",l);(0,r.useEffect)(()=>{e&&l.setFieldsValue(O(O({},Mr),a||Lr()))},[e,a,l]);let m=async()=>{let g;try{g=await l.validateFields()}catch(y){return}let p=gd(a!=null&&a.isNew?\"\".concat(g.name||\"emby\",\"-\").concat(g.host||\"\",\"-\").concat(g.username||\"\"):(a==null?void 0:a.id)||\"\".concat(g.name||\"emby\",\"-\").concat(g.host||\"\",\"-\").concat(g.username||\"\"));if(!p){s.message.warning(\"\\u8BF7\\u586B\\u5199\\u670D\\u52A1\\u5668\\u5730\\u5740\");return}if(i!=null&&i.has(p)&&p!==(a==null?void 0:a.id)){s.message.warning(\"\\u5F53\\u524D\\u670D\\u52A1\\u5668\\u5DF2\\u5B58\\u5728\\uFF0C\\u8BF7\\u68C0\\u67E5\\u5730\\u5740\\u6216\\u8D26\\u53F7\");return}let w={id:p,name:String(g.name||\"\").trim(),host:String(g.host||\"\").trim().replace(/\\/+$/,\"\"),username:String(g.username||\"\").trim(),password:String(g.password||\"\"),logo:String(g.logo||\"\").trim()},v=String((a==null?void 0:a.host)||\"\").trim().replace(/\\/+$/,\"\"),S=String((a==null?void 0:a.username)||\"\").trim();w.host===v&&w.username===S&&(w.deviceId=String((a==null?void 0:a.deviceId)||\"\").trim());let E=!1;try{c(!0);let y=await F.post(\"/emby-spider/verify\",w);E=!0,await n(y||w),s.message.success(\"Emby \\u767B\\u5F55\\u9A8C\\u8BC1\\u901A\\u8FC7\")}catch(y){console.error(y),y!=null&&y.message&&y.message!==\"[object Object]\"&&s.message.error(\"\".concat(E?\"\\u4FDD\\u5B58\":\"\\u9A8C\\u8BC1\",\"\\u5931\\u8D25\\uFF1A\").concat(y.message))}finally{c(!1)}},d=()=>{!a||a.isNew||o==null||o(a)};return r.default.createElement(s.Modal,{title:a!=null&&a.isNew?\"\\u6DFB\\u52A0 Emby \\u670D\\u52A1\\u5668\":\"\\u7F16\\u8F91 \".concat((a==null?void 0:a.name)||\"Emby\"),open:e,onCancel:t,confirmLoading:u,className:\"ios-modal emby-server-edit-modal\",footer:null,width:\"90%\",destroyOnClose:!0},r.default.createElement(s.Form,{form:l,layout:\"vertical\",className:\"ios-form\",requiredMark:!1},r.default.createElement(s.Form.Item,{label:\"\\u663E\\u793A\\u540D\\u79F0\",name:\"name\",tooltip:\"\\u7559\\u7A7A\\u65F6\\u4F1A\\u5728\\u767B\\u5F55\\u9A8C\\u8BC1\\u901A\\u8FC7\\u540E\\u81EA\\u52A8\\u4F7F\\u7528 Emby \\u670D\\u52A1\\u5668\\u540D\\u79F0\"},r.default.createElement(s.Input,{placeholder:\"\\u7559\\u7A7A\\u81EA\\u52A8\\u83B7\\u53D6\\uFF0C\\u4F8B\\u5982\\uFF1A\\u5BB6\\u91CC NAS\"})),r.default.createElement(s.Form.Item,{label:\"Logo URL\",name:\"logo\",tooltip:\"\\u652F\\u6301 http/https\\u3001data:image \\u6216\\u7AD9\\u5185 / \\u5F00\\u5934\\u8DEF\\u5F84\",rules:[{validator(g,p){return hd(p)?Promise.resolve():Promise.reject(new Error(\"\\u8BF7\\u8F93\\u5165\\u5408\\u6CD5\\u56FE\\u7247\\u5730\\u5740\"))}}]},r.default.createElement(s.Input,{placeholder:\"https://example.com/emby-logo.png\"})),!!String(f||\"\").trim()&&r.default.createElement(\"div\",{className:\"emby-logo-preview\"},r.default.createElement(\"img\",{src:String(f).trim(),alt:\"Emby Logo \\u9884\\u89C8\"}),r.default.createElement(\"span\",null,\"Logo \\u9884\\u89C8\")),r.default.createElement(s.Form.Item,{label:\"\\u670D\\u52A1\\u5668\\u5730\\u5740\",name:\"host\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165 Emby \\u670D\\u52A1\\u5668\\u5730\\u5740\"}]},r.default.createElement(s.Input,{placeholder:\"http://192.168.1.100:8096\"})),r.default.createElement(s.Form.Item,{label:\"\\u7528\\u6237\\u540D\",name:\"username\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165 Emby \\u7528\\u6237\\u540D\"}]},r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165 Emby \\u7528\\u6237\\u540D\"})),r.default.createElement(s.Form.Item,{label:\"\\u5BC6\\u7801\",name:\"password\"},r.default.createElement(s.Input.Password,{placeholder:\"\\u5BC6\\u7801\\u53EF\\u4E3A\\u7A7A\",autoComplete:\"new-password\"})),r.default.createElement(s.Form.Item,{style:{marginBottom:0}},r.default.createElement(\"div\",{className:\"ios-button-group emby-server-edit-actions\".concat(a!=null&&a.isNew?\" emby-server-edit-actions--new\":\"\")},!(a!=null&&a.isNew)&&r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--danger\",onClick:d,disabled:u},\"\\u5220\\u9664\"),r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--primary\",onClick:m,disabled:u},u?\"\\u9A8C\\u8BC1\\u4E2D...\":\"\\u4FDD\\u5B58\")))))}function kd({value:e,onChange:t}){let[n,o]=(0,r.useState)(!1),[a,i]=(0,r.useState)(null),l=Array.isArray(e)?e:[],u=(0,r.useMemo)(()=>new Set(l.map(g=>g.id).filter(Boolean)),[l]),c=()=>{i(L(O({},Lr()),{isNew:!0})),o(!0)},f=g=>{i(O({},g)),o(!0)},m=g=>{let p=l.findIndex(S=>S.id===(a==null?void 0:a.id)),w=Nr(g),v=p>=0?[...l]:[...l,w];p>=0&&(v[p]=w),t(v),o(!1)},d=g=>{s.Modal.confirm({title:\"\\u5220\\u9664 \".concat(Bn(g),\"\\uFF1F\"),content:\"\\u5220\\u9664\\u540E\\u5BF9\\u5E94\\u7684 Emby \\u5206\\u7C7B\\u4F1A\\u4ECE\\u7AD9\\u6E90\\u4E2D\\u79FB\\u9664\\u3002\",okText:\"\\u5220\\u9664\",okButtonProps:{danger:!0},cancelText:\"\\u53D6\\u6D88\",onOk(){t(l.filter(p=>p.id!==g.id)),o(!1),i(null)}})};return r.default.createElement(\"div\",{className:\"emby-server-manager\"},r.default.createElement(\"div\",{className:\"emby-server-toolbar\"},r.default.createElement(\"div\",{className:\"emby-server-toolbar__main\"},r.default.createElement(\"div\",{className:\"emby-server-title\"},\"Emby \\u670D\\u52A1\\u5668\"),r.default.createElement(s.Button,{type:\"primary\",icon:r.default.createElement(be,null),onClick:c},\"\\u6DFB\\u52A0\")),r.default.createElement(\"div\",{className:\"emby-server-subtitle\"},\"\\u6709\\u64AD\\u653E\\u5668\\u9ED1/\\u767D\\u540D\\u5355\\u7684\\u670D\\u8C28\\u614E\\u4F7F\\u7528\\uFF0C\\u5426\\u5219\\u540E\\u679C\\u81EA\\u8D1F\\uFF01\")),l.length===0?r.default.createElement(\"button\",{type:\"button\",className:\"emby-empty-card\",onClick:c},r.default.createElement(be,null),r.default.createElement(\"span\",null,\"\\u6DFB\\u52A0\\u7B2C\\u4E00\\u53F0 Emby \\u670D\\u52A1\\u5668\")):r.default.createElement(\"div\",{className:\"emby-server-grid\"},l.map(g=>r.default.createElement(\"div\",{className:\"emby-server-card\",key:g.id},r.default.createElement(\"div\",{className:\"emby-server-card__hero\"},r.default.createElement(\"div\",{className:\"emby-server-card__logo\"},r.default.createElement(\"img\",{src:g.logo||Fr,alt:Bn(g)}))),r.default.createElement(\"div\",{className:\"emby-server-card__content\"},r.default.createElement(\"div\",{className:\"emby-server-card__name\"},r.default.createElement(\"span\",null,Bn(g)),r.default.createElement(un,null)),r.default.createElement(\"div\",{className:\"emby-server-card__stats\"},vd(g.libraryStats))),r.default.createElement(\"div\",{className:\"emby-server-card__actions\"},r.default.createElement(s.Button,{type:\"text\",className:\"ios-edit-btn\",icon:r.default.createElement(ft,null),onClick:()=>f(g)}))))),r.default.createElement(Ar,{visible:n,onCancel:()=>o(!1),onSave:m,onDelete:d,server:a,usedIds:u}))}function _r({visible:e,onCancel:t,onSave:n,onDelete:o,server:a}){let[i]=s.Form.useForm(),[l,u]=(0,r.useState)(!1);(0,r.useEffect)(()=>{e&&i.setFieldsValue({name:(a==null?void 0:a.name)||\"\",server:(a==null?void 0:a.server)||\"\",username:(a==null?void 0:a.username)||\"\",password:(a==null?void 0:a.password)||\"\",token:(a==null?void 0:a.token)||\"\",otpCode:(a==null?void 0:a.otpCode)||\"\"})},[e,a,i]);let c=async()=>{let m;try{m=await i.validateFields()}catch(p){return}let d={id:(a==null?void 0:a.id)||\"alist_\".concat(Date.now()),name:m.name||\"\",server:String(m.server||\"\").trim().replace(/\\/+$/,\"\"),username:String(m.username||\"\").trim(),password:String(m.password||\"\"),token:String(m.token||\"\").trim(),otpCode:String(m.otpCode||\"\").trim()},g=!1;try{u(!0);let p=await F.post(\"/alist-video/verify\",d);g=!0,await n(p||d),s.message.success(\"Alist \\u8FDE\\u63A5\\u9A8C\\u8BC1\\u901A\\u8FC7\")}catch(p){console.error(p),s.message.error(\"\".concat(g?\"\\u4FDD\\u5B58\":\"\\u8FDE\\u63A5\\u9A8C\\u8BC1\",\"\\u5931\\u8D25\\uFF1A\").concat((p==null?void 0:p.message)||\"\\u8BF7\\u68C0\\u67E5\\u5730\\u5740\"))}finally{u(!1)}},f=()=>{!a||a.isNew||o==null||o(a)};return r.default.createElement(s.Modal,{title:a!=null&&a.isNew?\"\\u6DFB\\u52A0 Alist \\u670D\\u52A1\\u5668\":\"\\u7F16\\u8F91 \".concat((a==null?void 0:a.name)||\"Alist\"),open:e,onCancel:t,confirmLoading:l,className:\"ios-modal\",footer:null,width:\"90%\",destroyOnClose:!0},r.default.createElement(s.Form,{form:i,layout:\"vertical\",className:\"ios-form\",requiredMark:!1},r.default.createElement(s.Form.Item,{label:\"\\u663E\\u793A\\u540D\\u79F0\",name:\"name\"},r.default.createElement(s.Input,{placeholder:\"\\u4F8B\\u5982\\uFF1A\\u5BB6\\u91CC NAS\"})),r.default.createElement(s.Form.Item,{label:\"\\u670D\\u52A1\\u5668\\u5730\\u5740\",name:\"server\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165 Alist \\u670D\\u52A1\\u5668\\u5730\\u5740\"}]},r.default.createElement(s.Input,{placeholder:\"http://192.168.1.100:5244\"})),r.default.createElement(s.Form.Item,{label:\"\\u8D26\\u53F7\",name:\"username\"},r.default.createElement(s.Input,{placeholder:\"\\u79C1\\u6709\\u76EE\\u5F55\\u9700\\u8981\\u586B\\u5199\",autoComplete:\"username\"})),r.default.createElement(s.Form.Item,{label:\"\\u5BC6\\u7801\",name:\"password\"},r.default.createElement(s.Input.Password,{placeholder:\"\\u79C1\\u6709\\u76EE\\u5F55\\u9700\\u8981\\u586B\\u5199\",autoComplete:\"new-password\"})),r.default.createElement(s.Form.Item,{label:\"Token\",name:\"token\",tooltip:\"\\u5DF2\\u6709 Alist token \\u65F6\\u53EF\\u76F4\\u63A5\\u586B\\u5199\\uFF0C\\u4F18\\u5148\\u4E8E\\u8D26\\u53F7\\u5BC6\\u7801\"},r.default.createElement(s.Input.Password,{placeholder:\"\\u53EF\\u7559\\u7A7A\",autoComplete:\"off\"})),r.default.createElement(s.Form.Item,{label:\"\\u4E24\\u6B65\\u9A8C\\u8BC1\\u7801\",name:\"otpCode\",tooltip:\"\\u5F00\\u542F\\u4E24\\u6B65\\u9A8C\\u8BC1\\u65F6\\u586B\\u5199\\u5F53\\u524D\\u9A8C\\u8BC1\\u7801\"},r.default.createElement(s.Input,{placeholder:\"\\u53EF\\u7559\\u7A7A\",autoComplete:\"one-time-code\"})),r.default.createElement(s.Form.Item,null,r.default.createElement(\"div\",{className:\"ios-button-group\"},!(a!=null&&a.isNew)&&r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--danger\",onClick:f},\"\\u5220\\u9664\"),r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--primary\",onClick:c,disabled:l},l?\"\\u9A8C\\u8BC1\\u4E2D...\":\"\\u4FDD\\u5B58\")))))}function Td({value:e,onChange:t}){let[n,o]=(0,r.useState)(!1),[a,i]=(0,r.useState)(null),l=Array.isArray(e)?e:[],u=()=>{i(L(O({},ci()),{isNew:!0})),o(!0)},c=d=>{i(O({},d)),o(!0)},f=d=>{let g=l.findIndex(v=>v.id===(a==null?void 0:a.id)),p=Dr(d),w=g>=0?[...l]:[...l,p];g>=0&&(w[g]=p),t(w),o(!1)},m=d=>{s.Modal.confirm({title:\"\\u5220\\u9664 \".concat(Br(d),\"\\uFF1F\"),content:\"\\u5220\\u9664\\u540E\\u8BE5 Alist \\u670D\\u52A1\\u5668\\u5C06\\u4E0D\\u518D\\u663E\\u793A\\u3002\",okText:\"\\u5220\\u9664\",okButtonProps:{danger:!0},cancelText:\"\\u53D6\\u6D88\",onOk(){t(l.filter(g=>g.id!==d.id)),o(!1),i(null)}})};return r.default.createElement(\"div\",{className:\"emby-server-manager\"},r.default.createElement(\"div\",{className:\"emby-server-toolbar\"},r.default.createElement(\"div\",{className:\"emby-server-toolbar__main\"},r.default.createElement(\"div\",{className:\"emby-server-title\"},\"Alist \\u670D\\u52A1\\u5668\"),r.default.createElement(s.Button,{type:\"primary\",icon:r.default.createElement(be,null),onClick:u},\"\\u6DFB\\u52A0\"))),l.length===0?r.default.createElement(\"button\",{type:\"button\",className:\"emby-empty-card\",onClick:u},r.default.createElement(be,null),r.default.createElement(\"span\",null,\"\\u6DFB\\u52A0\\u7B2C\\u4E00\\u53F0 Alist \\u670D\\u52A1\\u5668\")):r.default.createElement(\"div\",{className:\"emby-server-grid\"},l.map(d=>r.default.createElement(\"div\",{className:\"emby-server-card\",key:d.id},r.default.createElement(\"div\",{className:\"emby-server-card__content\",style:{padding:\"16px\"}},r.default.createElement(\"div\",{className:\"emby-server-card__name\"},r.default.createElement(\"span\",null,d.name||d.server),r.default.createElement(un,null)),r.default.createElement(\"div\",{style:{fontSize:12,color:\"#999\",marginTop:4}},d.server),(d.username||d.token)&&r.default.createElement(\"div\",{style:{fontSize:12,color:\"#999\",marginTop:4}},d.username?\"\\u8D26\\u53F7\\uFF1A\".concat(d.username):\"Token \\u5DF2\\u914D\\u7F6E\")),r.default.createElement(\"div\",{className:\"emby-server-card__actions\"},r.default.createElement(s.Button,{type:\"text\",className:\"ios-edit-btn\",icon:r.default.createElement(ft,null),onClick:()=>c(d)}))))),r.default.createElement(_r,{visible:n,onCancel:()=>o(!1),onSave:f,onDelete:m,server:a}))}function Fd({visible:e,onCancel:t,onSave:n,siteKey:o,siteName:a}){let[i]=s.Form.useForm(),[l,u]=(0,r.useState)(!1),c=String(o||\"\").startsWith(\"nodejs_emby\"),f=ii[o]||(c?ii.nodejs_emby:void 0),m=!!f,d=(f==null?void 0:f.type)===\"tg\",g=(f==null?void 0:f.type)===\"tgfilebot\",p=(f==null?void 0:f.type)===\"live2vod\",w=(f==null?void 0:f.type)===\"emby-spider\",v=(f==null?void 0:f.type)===\"alist-video\",S=(f==null?void 0:f.type)===\"domain-cookie\",E=(f==null?void 0:f.type)===\"account\",y=o===\"nodejs_tgchannel\",I=o===\"nodejs_guanying\"?\"app_auth\":o===\"nodejs_123ypzysq\"?\"bbs_token\":\"Cookie\",A=(0,r.useRef)(0),B=x=>{if(x===\"\"||x===null||typeof x>\"u\")return null;let C=Number(x);return Number.isFinite(C)?C:null},V=x=>{if(x==null||x===\"\")return\"\";let C=Number(x);return Number.isFinite(C)?C:\"\"};(0,r.useEffect)(()=>{let x=++A.current;if(!e){u(!1);return}m?(u(!0),F.get(f.api).then(C=>{if(A.current===x)if(d){let M=[],q=new Set;C.channelNameMap&&Object.keys(C.channelNameMap).forEach(_=>q.add(_)),C.channelUsername&&C.channelUsername.forEach(_=>q.add(_)),C.homeChannelUsername&&C.homeChannelUsername.forEach(_=>q.add(_)),q.forEach(_=>{var j;M.push({id:_,name:((j=C.channelNameMap)==null?void 0:j[_])||\"\"})}),i.setFieldsValue({name:a,url:C.url,count:B(C==null?void 0:C.count),pic:C.pic,channels:M.length>0?M:y?[]:[{id:\"\",name:\"\"}]})}else g?i.setFieldsValue({name:a,url:C.url,password:C.password||\"\"}):p?i.setFieldsValue({name:a,sources:C.sources||[{name:\"\",url:\"\"}]}):w?i.setFieldsValue({name:a,servers:C.servers||[]}):v?i.setFieldsValue({name:a,servers:C.servers||[]}):S?i.setFieldsValue({name:a,url:C.url||\"\",cookie:C.cookie||\"\"}):E?i.setFieldsValue({name:a,url:C.url||\"\",username:C.username||\"\",password:C.password||\"\"}):i.setFieldsValue({urls:C,name:a})}).catch(C=>{A.current===x&&(console.error(C),s.message.error(\"\\u52A0\\u8F7D\\u914D\\u7F6E\\u5931\\u8D25\"))}).finally(()=>{A.current===x&&u(!1)})):i.setFieldsValue({name:a})},[e,o,a,m,d,g,p,w,v,S,E,i,f]);let H=async()=>{let x;try{x=await i.validateFields()}catch(C){return}try{if(u(!0),m)if(d){let C={},M=[],q=[];x.channels&&x.channels.length>0&&x.channels.forEach(j=>{j.id&&(j.name&&(C[j.id]=j.name),M.push(j.id),o===\"nodejs_tgchannel\"&&q.push(j.id))});let _=O({url:x.url,count:V(x.count),pic:x.pic,channelNameMap:C,channelUsername:M},o===\"nodejs_tgchannel\"?{homeChannelUsername:q}:{});await F.put(f.api,_)}else if(g)await F.put(f.api,{url:x.url||\"\",password:x.password||\"\"});else if(p){let C={sources:x.sources||[]};await F.put(f.api,C)}else w?await F.put(f.api,{servers:x.servers||[]}):v?await F.put(f.api,{servers:x.servers||[]}):S?await F.put(f.api,{url:x.url||\"\",cookie:x.cookie||\"\"}):E?await F.put(f.api,{url:x.url||\"\",username:x.username||\"\",password:x.password||\"\"}):await F.put(f.api,x.urls);s.message.success(\"\\u4FDD\\u5B58\\u6210\\u529F\"),n(x.name,w||v?{reload:!0}:void 0),t()}catch(C){console.error(C),s.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25\\uFF1A\".concat((C==null?void 0:C.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}finally{u(!1)}},z=async()=>{if(m)try{u(!0),await F.delete(f.api);let x=await F.get(f.api);if(d){let C=[],M=new Set;x.channelNameMap&&Object.keys(x.channelNameMap).forEach(q=>M.add(q)),x.channelUsername&&x.channelUsername.forEach(q=>M.add(q)),x.homeChannelUsername&&x.homeChannelUsername.forEach(q=>M.add(q)),M.forEach(q=>{var _;C.push({id:q,name:((_=x.channelNameMap)==null?void 0:_[q])||\"\"})}),i.setFieldsValue({url:x.url,count:B(x==null?void 0:x.count),pic:x.pic,channels:C.length>0?C:y?[]:[{id:\"\",name:\"\"}]})}else g?i.setFieldsValue({url:x.url,password:x.password||\"\"}):p?i.setFieldsValue({sources:x.sources||[{name:\"\",url:\"\"}]}):w?i.setFieldsValue({servers:x.servers||[]}):v?i.setFieldsValue({servers:x.servers||[]}):S?i.setFieldsValue({url:x.url||\"\",cookie:x.cookie||\"\"}):E?i.setFieldsValue({url:x.url||\"\",username:x.username||\"\",password:x.password||\"\"}):i.setFieldsValue({urls:x});s.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\")}catch(x){console.error(x),s.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(x==null?void 0:x.message))}finally{u(!1)}};return r.default.createElement(s.Modal,{title:\"\\u7F16\\u8F91 \".concat(a||(f==null?void 0:f.name)||\"\"),open:e,onCancel:t,className:\"ios-modal domain-edit-modal\",footer:null,width:\"90%\",destroyOnClose:!0},r.default.createElement(s.Form,{form:i,layout:\"vertical\",requiredMark:!1,colon:!1},r.default.createElement(s.Form.Item,{label:\"\\u540D\\u79F0\",name:\"name\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u540D\\u79F0\"}]},r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165\\u540D\\u79F0\",className:w||v?\"domain-edit-full-input\":\"domain-edit-aligned-input\"})),m&&!d&&!g&&!p&&!w&&!v&&!S&&!E&&r.default.createElement(r.default.Fragment,null,r.default.createElement(s.Form.List,{name:\"urls\",rules:[{required:!0,message:\"\\u8BF7\\u6DFB\\u52A0\\u57DF\\u540D\"}]},(x,{add:C,remove:M},{errors:q})=>r.default.createElement(r.default.Fragment,null,x.map((_,j)=>r.default.createElement(s.Form.Item,{label:j===0?\"\\u57DF\\u540D\":null,required:!1,key:_.key,style:{marginBottom:12}},r.default.createElement(\"div\",{className:\"domain-list-row\"},r.default.createElement(s.Form.Item,L(O({},_),{validateTrigger:[\"onChange\",\"onBlur\"],rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u57DF\\u540D\"}],noStyle:!0}),r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165\\u57DF\\u540D\",className:\"domain-list-input\"})),r.default.createElement(\"span\",{className:\"domain-list-action\".concat(x.length>1?\"\":\" domain-list-action--placeholder\")},x.length>1?r.default.createElement(Je,{className:\"dynamic-delete-button\",onClick:()=>M(_.name)}):null)))),r.default.createElement(s.Form.Item,{label:null},r.default.createElement(s.Button,{type:\"dashed\",onClick:()=>C(),className:\"domain-edit-add-button\",icon:r.default.createElement(be,null)},\"\\u6DFB\\u52A0\\u57DF\\u540D\"),r.default.createElement(s.Form.ErrorList,{errors:q}))))),m&&S&&r.default.createElement(r.default.Fragment,null,r.default.createElement(s.Form.Item,{label:\"\\u57DF\\u540D\",name:\"url\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u57DF\\u540D\"}]},r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165\\u57DF\\u540D\",className:\"domain-edit-aligned-input\"})),r.default.createElement(s.Form.Item,{label:\"Cookie\",name:\"cookie\"},r.default.createElement(s.Input.TextArea,{placeholder:I,className:\"domain-edit-aligned-input\",autoSize:{minRows:3,maxRows:6}}))),m&&E&&r.default.createElement(r.default.Fragment,null,r.default.createElement(s.Form.Item,{label:\"\\u57DF\\u540D\",name:\"url\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u57DF\\u540D\"}]},r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165\\u57DF\\u540D\",className:\"domain-edit-aligned-input\"})),r.default.createElement(s.Form.Item,{label:\"\\u8D26\\u53F7\",name:\"username\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u8D26\\u53F7\"}]},r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165\\u7AD9\\u70B9\\u8D26\\u53F7\",className:\"domain-edit-aligned-input\",autoComplete:\"username\"})),r.default.createElement(s.Form.Item,{label:\"\\u5BC6\\u7801\",name:\"password\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u5BC6\\u7801\"}]},r.default.createElement(s.Input.Password,{placeholder:\"\\u8BF7\\u8F93\\u5165\\u7AD9\\u70B9\\u5BC6\\u7801\",className:\"domain-edit-aligned-input\",autoComplete:\"new-password\"}))),m&&g&&r.default.createElement(r.default.Fragment,null,r.default.createElement(s.Form.Item,{label:\"API \\u5730\\u5740\",name:\"url\"},r.default.createElement(s.Input,{placeholder:\"\\u7559\\u7A7A\\u4F7F\\u7528\\u9ED8\\u8BA4: http://127.0.0.1:8080\",className:\"domain-edit-aligned-input\"})),r.default.createElement(s.Form.Item,{label:\"\\u8BBF\\u95EE\\u5BC6\\u7801\",name:\"password\"},r.default.createElement(s.Input.Password,{placeholder:\"TGFileBot password\\uFF0C\\u53EF\\u7559\\u7A7A\",className:\"domain-edit-aligned-input\"}))),m&&w&&r.default.createElement(s.Form.Item,{name:\"servers\"},r.default.createElement(kd,null)),m&&v&&r.default.createElement(s.Form.Item,{name:\"servers\"},r.default.createElement(Td,null)),m&&d&&r.default.createElement(r.default.Fragment,null,r.default.createElement(s.Form.Item,{label:\"TG\\u57DF\\u540D\",name:\"url\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165TG\\u57DF\\u540D\"}]},r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165TG\\u57DF\\u540D\",className:\"domain-edit-aligned-input\"})),r.default.createElement(s.Form.Item,{label:\"\\u5355\\u9891\\u9053\\u8D44\\u6E90\\u6570\\u91CF\",name:\"count\"},r.default.createElement(s.InputNumber,{min:1,placeholder:\"\\u7559\\u7A7A\\u8868\\u793A\\u4E0D\\u9650\\u5236\",className:\"domain-edit-aligned-input\"})),r.default.createElement(s.Form.List,{name:\"channels\",rules:[{validator:async(x,C)=>{if(!y&&(!C||C.length===0))return Promise.reject(new Error(\"\\u8BF7\\u81F3\\u5C11\\u6DFB\\u52A0\\u4E00\\u4E2A\\u9891\\u9053\"))}}]},(x,{add:C,remove:M},{errors:q})=>r.default.createElement(r.default.Fragment,null,x.map((_,j)=>r.default.createElement(s.Form.Item,{label:j===0?\"\\u9891\\u9053\\u5217\\u8868\":\"\",required:!1,key:_.key,style:{marginBottom:12}},r.default.createElement(\"div\",{className:\"domain-list-row\"},r.default.createElement(s.Form.Item,L(O({},_),{name:[_.name,\"name\"],style:{marginBottom:0,flex:\"1\"}}),r.default.createElement(s.Input,{placeholder:\"\\u540D\\u79F0\"})),r.default.createElement(s.Form.Item,L(O({},_),{name:[_.name,\"id\"],rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u9891\\u9053ID\"}],style:{marginBottom:0,flex:\"1\"}}),r.default.createElement(s.Input,{placeholder:\"\\u9891\\u9053ID\"})),r.default.createElement(\"span\",{className:\"domain-list-action\".concat(x.length>1||y?\"\":\" domain-list-action--placeholder\")},x.length>1||y?r.default.createElement(Je,{className:\"dynamic-delete-button\",onClick:()=>M(_.name)}):null)))),r.default.createElement(s.Form.Item,{label:\"\"},r.default.createElement(s.Button,{type:\"dashed\",onClick:()=>C({id:\"\",name:\"\"}),className:\"domain-edit-add-button\",icon:r.default.createElement(be,null)},\"\\u6DFB\\u52A0\\u9891\\u9053\"),r.default.createElement(s.Form.ErrorList,{errors:q})))),r.default.createElement(s.Form.Item,{label:\"\\u663E\\u793A\\u56FE\\u7247\",name:\"pic\",valuePropName:\"checked\"},r.default.createElement(s.Switch,null))),m&&p&&r.default.createElement(r.default.Fragment,null,r.default.createElement(s.Form.List,{name:\"sources\",rules:[{validator:async(x,C)=>{if(!C||C.length===0)return Promise.reject(new Error(\"\\u8BF7\\u81F3\\u5C11\\u6DFB\\u52A0\\u4E00\\u4E2A\\u76F4\\u64AD\\u6E90\"))}}]},(x,{add:C,remove:M},{errors:q})=>r.default.createElement(r.default.Fragment,null,x.map((_,j)=>r.default.createElement(s.Form.Item,{label:j===0?\"\\u76F4\\u64AD\\u6E90\\u5217\\u8868\":\"\",required:!1,key:_.key,style:{marginBottom:12}},r.default.createElement(\"div\",{className:\"domain-list-row\"},r.default.createElement(s.Form.Item,L(O({},_),{name:[_.name,\"name\"],rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u540D\\u79F0\"}],style:{marginBottom:0,flex:\"1\"}}),r.default.createElement(s.Input,{placeholder:\"\\u540D\\u79F0\"})),r.default.createElement(s.Form.Item,L(O({},_),{name:[_.name,\"url\"],rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u76F4\\u64AD\\u6E90URL\"}],style:{marginBottom:0,flex:\"2\"}}),r.default.createElement(s.Input,{placeholder:\"\\u76F4\\u64AD\\u6E90URL (m3u/txt)\"})),r.default.createElement(\"span\",{className:\"domain-list-action\".concat(x.length>1?\"\":\" domain-list-action--placeholder\")},x.length>1?r.default.createElement(Je,{className:\"dynamic-delete-button\",onClick:()=>M(_.name)}):null)))),r.default.createElement(s.Form.Item,{label:\"\"},r.default.createElement(s.Button,{type:\"dashed\",onClick:()=>C({name:\"\",url:\"\"}),className:\"domain-edit-add-button\",icon:r.default.createElement(be,null)},\"\\u6DFB\\u52A0\\u76F4\\u64AD\\u6E90\"),r.default.createElement(s.Form.ErrorList,{errors:q}))))),r.default.createElement(s.Form.Item,{label:null},r.default.createElement(\"div\",{className:\"ios-button-group\"},r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:H,disabled:l},\"\\u4FDD\\u5B58\"),m&&r.default.createElement(\"button\",{className:\"action-btn action-btn--danger\",onClick:z,disabled:l},\"\\u91CD\\u7F6E\")))))}var Ed=new Set([\"nodejs_push\",\"nodejs_muban\",\"nodejs_template\"]),Id=new Set([\"\\u63A8\\u9001\",\"\\u6A21\\u677F\"]);function Nd(e){let t=String(e.name||\"\").trim();return!Ed.has(e.key)&&!Id.has(t)}function Dd(){let[e,t]=(0,r.useState)([]),[n,o]=(0,r.useState)(!1),[a,i]=(0,r.useState)(!1),[l,u]=(0,r.useState)(!1),[c,f]=(0,r.useState)(!1),[m,d]=(0,r.useState)(!1),[g,p]=(0,r.useState)(null),[w,v]=(0,r.useState)([]),[S,E]=(0,r.useState)(!1),[y,I]=(0,r.useState)(null),[A,B]=(0,r.useState)([]),[V,H]=(0,r.useState)(!1),[z,x]=(0,r.useState)(null),[C,M]=(0,r.useState)([]),[q,_]=(0,r.useState)(!1),[j,we]=(0,r.useState)(null),[Ce,R]=(0,r.useState)([]),[Fe,ue]=(0,r.useState)(!1),[T,D]=(0,r.useState)([]),[$,Y]=(0,r.useState)(!1),[me,Se]=(0,r.useState)(null),[de,Me]=(0,r.useState)([]),[Oe,ge]=(0,r.useState)(\"\"),[G,Ue]=(0,r.useState)(null),he=(0,r.useMemo)(()=>e.filter(Nd),[e]),Le=(0,r.useMemo)(()=>new Set(w.map(b=>b.id).filter(Boolean)),[w]),ke=(0,r.useMemo)(()=>new Set(A.map(b=>b.id).filter(Boolean)),[A]),Be=b=>{let k=wd(b==null?void 0:b.key);if(k){Ye(k);return}let N=Cd(b==null?void 0:b.key);if(N){Wt(N);return}if(b!=null&&b.cms){Hn(b.key);return}Ue(b),b.key===\"nodejs_pansou\"?i(!0):o(!0)},_e=(b,k={})=>{if(k.reload){ce();return}if(G){let N=e.findIndex(P=>P.key===G.key);N!==-1&&(e[N].name=b,t([...e]))}},Gt=async()=>{try{f(!0);let b=await F.get(\"/emby-spider/setting\");v(Array.isArray(b==null?void 0:b.servers)?b.servers:[]),p(L(O({},Lr()),{isNew:!0})),u(!1),d(!0)}catch(b){console.error(b),s.message.error(\"\\u52A0\\u8F7D Emby \\u914D\\u7F6E\\u5931\\u8D25\\uFF1A\".concat((b==null?void 0:b.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}finally{f(!1)}},Vt=async()=>{try{f(!0);let b=await F.get(\"/alist-video/setting\");M(Array.isArray(b==null?void 0:b.servers)?b.servers:[]),x(L(O({},ci()),{isNew:!0})),u(!1),H(!0)}catch(b){console.error(b),s.message.error(\"\\u52A0\\u8F7D Alist \\u914D\\u7F6E\\u5931\\u8D25\\uFF1A\".concat((b==null?void 0:b.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}finally{f(!1)}},vt=async()=>{try{f(!0);let b=await F.get(\"/cms/list\");D(Array.isArray(b)?b:[]),u(!1),ue(!0)}catch(b){console.error(b),s.message.error(\"\\u52A0\\u8F7D CMS \\u914D\\u7F6E\\u5931\\u8D25\\uFF1A\".concat((b==null?void 0:b.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}finally{f(!1)}},Ee=async b=>{let k=Nr(b),N=w.findIndex(U=>U.id===k.id),P=N>=0?[...w]:[...w,k];N>=0&&(P[N]=k),await F.put(\"/emby-spider/setting\",{servers:P}),v(P),d(!1),p(null),await ce()},dt=()=>{d(!1),p(null)},ut=async b=>{let k=Dr(b),N=C.findIndex(U=>U.id===k.id),P=N>=0?[...C]:[...C,k];N>=0&&(P[N]=k),await F.put(\"/alist-video/setting\",{servers:P}),M(P),H(!1),x(null),await ce()},jt=()=>{H(!1),x(null)},Ut=async b=>{let k=Md(T,b);await F.put(\"/cms/list\",k),D(k),ue(!1),await ce()},$n=()=>{ue(!1)},Hn=async b=>{try{let k=await F.get(\"/cms/list\"),N=Array.isArray(k)?k:[],P=N.find(U=>Er(U)===b);if(!P){s.message.warning(\"\\u672A\\u627E\\u5230\\u5BF9\\u5E94\\u7684 CMS \\u6E90\\u914D\\u7F6E\");return}Me(N),Se(O({},P)),ge(b),Y(!0)}catch(k){console.error(k),s.message.error(\"\\u52A0\\u8F7D CMS \\u914D\\u7F6E\\u5931\\u8D25\\uFF1A\".concat((k==null?void 0:k.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}},$e=async b=>{let k=fi(b);if(!k){s.message.warning(\"CMS \\u6E90\\u4FE1\\u606F\\u4E0D\\u5B8C\\u6574\");return}let N=de.map(P=>Er(P)===Oe?k:P);await F.put(\"/cms/list\",N),Me(N),Y(!1),Se(null),ge(\"\"),await ce()},He=b=>{b&&s.Modal.confirm({title:\"\\u5220\\u9664 \".concat(b.name||\"CMS \\u6E90\",\"\\uFF1F\"),content:\"\\u5220\\u9664\\u540E\\u8FD9\\u4E2A CMS \\u89C6\\u9891\\u6E90\\u4F1A\\u4ECE\\u7AD9\\u6E90\\u5217\\u8868\\u4E2D\\u79FB\\u9664\\u3002\",okText:\"\\u5220\\u9664\",okButtonProps:{danger:!0},cancelText:\"\\u53D6\\u6D88\",async onOk(){let k=de.filter(N=>Er(N)!==Oe);await F.put(\"/cms/list\",k),Me(k),Y(!1),Se(null),ge(\"\"),await ce()}})},Ye=async b=>{try{let k=await F.get(\"/emby-spider/setting\"),N=Array.isArray(k==null?void 0:k.servers)?k.servers:[],P=N.find(U=>U.id===b);if(!P){s.message.warning(\"\\u672A\\u627E\\u5230\\u5BF9\\u5E94\\u7684 Emby \\u670D\\u52A1\\u5668\\u914D\\u7F6E\");return}B(N),I(O({},P)),E(!0)}catch(k){console.error(k),s.message.error(\"\\u52A0\\u8F7D Emby \\u914D\\u7F6E\\u5931\\u8D25\\uFF1A\".concat((k==null?void 0:k.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}},Yt=async b=>{let k=Nr(b),N=A.map(P=>P.id===(y==null?void 0:y.id)?k:P);await F.put(\"/emby-spider/setting\",{servers:N}),B(N),E(!1),I(null),await ce()},Ie=b=>{b!=null&&b.id&&s.Modal.confirm({title:\"\\u5220\\u9664 \".concat(Bn(b),\"\\uFF1F\"),content:\"\\u5220\\u9664\\u540E\\u8FD9\\u53F0 Emby \\u5BF9\\u5E94\\u7684\\u89C6\\u9891\\u6E90\\u4F1A\\u4ECE\\u7AD9\\u6E90\\u5217\\u8868\\u4E2D\\u79FB\\u9664\\u3002\",okText:\"\\u5220\\u9664\",okButtonProps:{danger:!0},cancelText:\"\\u53D6\\u6D88\",async onOk(){let k=A.filter(N=>N.id!==b.id);await F.put(\"/emby-spider/setting\",{servers:k}),B(k),E(!1),I(null),await ce()}})},Wt=async b=>{try{let k=await F.get(\"/alist-video/setting\"),N=Array.isArray(k==null?void 0:k.servers)?k.servers:[],P=N.find(U=>U.id===b);if(!P){s.message.warning(\"\\u672A\\u627E\\u5230\\u5BF9\\u5E94\\u7684 Alist \\u670D\\u52A1\\u5668\\u914D\\u7F6E\");return}R(N),we(O({},P)),_(!0)}catch(k){console.error(k),s.message.error(\"\\u52A0\\u8F7D Alist \\u914D\\u7F6E\\u5931\\u8D25\\uFF1A\".concat((k==null?void 0:k.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}},qn=async b=>{let k=Dr(b),N=Ce.map(P=>P.id===(j==null?void 0:j.id)?k:P);await F.put(\"/alist-video/setting\",{servers:N}),R(N),_(!1),we(null),await ce()},zn=b=>{b!=null&&b.id&&s.Modal.confirm({title:\"\\u5220\\u9664 \".concat(Br(b),\"\\uFF1F\"),content:\"\\u5220\\u9664\\u540E\\u8FD9\\u53F0 Alist \\u5BF9\\u5E94\\u7684\\u89C6\\u9891\\u6E90\\u4F1A\\u4ECE\\u7AD9\\u6E90\\u5217\\u8868\\u4E2D\\u79FB\\u9664\\u3002\",okText:\"\\u5220\\u9664\",okButtonProps:{danger:!0},cancelText:\"\\u53D6\\u6D88\",async onOk(){let k=Ce.filter(N=>N.id!==b.id);await F.put(\"/alist-video/setting\",{servers:k}),R(k),_(!1),we(null),await ce()}})},wt=(0,r.useMemo)(()=>[{title:\"\",dataIndex:\"drag\",width:40,render(b,k){return r.default.createElement(ui,{rowKey:k.key})}},{title:\"\\u7AD9\\u6E90\",dataIndex:\"name\",render(b,k){return r.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:\"8px\",minWidth:0}},r.default.createElement(\"span\",{title:b,style:{flex:1,minWidth:0,overflow:\"hidden\",textOverflow:\"ellipsis\",whiteSpace:\"nowrap\"}},b),k.t4&&r.default.createElement(s.Tag,{className:\"ios-tag\"},\"T4\"))}},{title:\"\\u542F\\u7528\",dataIndex:\"enable\",render(b,k){return r.default.createElement(s.Switch,{value:b,onChange:N=>{t(P=>P.map(U=>U.key===k.key?L(O({},U),{enable:N}):U))}})},width:80},{title:\"\\u64CD\\u4F5C\",dataIndex:\"action\",width:60,render(b,k){return r.default.createElement(s.Button,{type:\"text\",className:\"ios-edit-btn\",icon:r.default.createElement(ft,null),onClick:()=>Be(k),size:\"small\"})}}],[e]),Xt=wr(Bt(it,{activationConstraint:{distance:1}}),Bt(xt,{activationConstraint:{delay:150,tolerance:5}})),Gn=({active:b,over:k})=>{b.id!==(k==null?void 0:k.id)&&t(N=>{let P=N.findIndex(fe=>fe.key===b.id),U=N.findIndex(fe=>fe.key===(k==null?void 0:k.id));return $t(N,P,U)})},ce=async()=>{let k=(await yt.default.get(\"/full-config\")).data.video.sites,N=await F.get(\"/sites/list\"),P={},U={};k.forEach(X=>{U[X.key]=X});let fe=N.filter(X=>(P[X.key]=!0,U[X.key])).map(X=>{let se=U[X.key];return{key:X.key,name:X.name||se.name,enable:X.enable,t4:se.t4,cms:se.cms}});k.forEach(X=>{P[X.key]||fe.push({key:X.key,name:X.name,enable:!0,t4:X.t4,cms:X.cms})}),t(fe)},Vn=async()=>{try{await F.put(\"/sites/list\",{list:e}),s.message.success({content:r.default.createElement(r.default.Fragment,null,\"\\u8BBE\\u7F6E\\u6210\\u529F\",r.default.createElement(\"br\",null),\"\\u9700\\u91CD\\u65B0\\u52A0\\u8F7D\\u6E90\\uFF01\",r.default.createElement(\"br\",null),\"\\u9700\\u91CD\\u65B0\\u52A0\\u8F7D\\u6E90\\uFF01\",r.default.createElement(\"br\",null),\"\\u9700\\u91CD\\u65B0\\u52A0\\u8F7D\\u6E90\\uFF01\",r.default.createElement(\"br\",null)),duration:5})}catch(b){console.error(b),s.message.error(\"\\u8BBE\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(b==null?void 0:b.message))}},jn=async()=>{try{await F.delete(\"/sites/list\"),ce(),s.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\")}catch(b){console.error(b),s.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(b==null?void 0:b.message))}};return(0,r.useEffect)(()=>{ce()},[]),r.default.createElement(\"div\",null,r.default.createElement(\"div\",{className:\"sites-list-toolbar\"},r.default.createElement(s.Dropdown,{open:l,onOpenChange:u,trigger:[\"click\"],placement:\"bottomRight\",dropdownRender:()=>r.default.createElement(\"div\",{className:\"site-add-menu\"},r.default.createElement(\"button\",{type:\"button\",className:\"site-add-type-item\",onClick:Gt,disabled:c},r.default.createElement(\"span\",{className:\"site-add-type-item__icon\"},r.default.createElement(\"img\",{src:Fr,alt:\"\",\"aria-hidden\":\"true\"})),r.default.createElement(\"span\",{className:\"site-add-type-item__name\"},\"Emby\")),r.default.createElement(\"button\",{type:\"button\",className:\"site-add-type-item\",onClick:Vt,disabled:c},r.default.createElement(\"span\",{className:\"site-add-type-item__icon\"},r.default.createElement(\"img\",{src:ei,alt:\"\",\"aria-hidden\":\"true\"})),r.default.createElement(\"span\",{className:\"site-add-type-item__name\"},\"Alist\")),r.default.createElement(\"button\",{type:\"button\",className:\"site-add-type-item\",onClick:vt,disabled:c},r.default.createElement(\"span\",{className:\"site-add-type-item__icon\"},r.default.createElement(\"img\",{src:ti,alt:\"\",\"aria-hidden\":\"true\"})),r.default.createElement(\"span\",{className:\"site-add-type-item__name\"},\"CMS\")))},r.default.createElement(s.Button,{type:\"primary\",icon:r.default.createElement(be,null),className:\"sites-add-button\"},\"\\u6DFB\\u52A0\"))),r.default.createElement(Cr,{sensors:Xt,modifiers:[Sr],onDragEnd:Gn},r.default.createElement(kr,{items:he.map(b=>b.key),strategy:Or},r.default.createElement(s.Table,{components:{body:{row:di}},rowKey:\"key\",columns:wt,dataSource:he,pagination:!1,tableLayout:\"fixed\",className:\"sites-table\"}))),r.default.createElement(\"div\",{className:\"ios-button-group\"},r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:Vn},\"\\u4FDD\\u5B58\"),r.default.createElement(\"button\",{className:\"action-btn action-btn--danger\",onClick:jn},\"\\u91CD\\u7F6E\")),r.default.createElement(Fd,{visible:n,onCancel:()=>o(!1),onSave:_e,siteKey:G==null?void 0:G.key,siteName:G==null?void 0:G.name}),r.default.createElement(Od,{visible:a,onCancel:()=>i(!1),onSave:_e,siteName:G==null?void 0:G.name}),r.default.createElement(Ar,{visible:m,onCancel:dt,onSave:Ee,server:g,usedIds:Le}),r.default.createElement(Ar,{visible:S,onCancel:()=>E(!1),onSave:Yt,onDelete:Ie,server:y,usedIds:ke}),r.default.createElement(_r,{visible:V,onCancel:jt,onSave:ut,server:z}),r.default.createElement(_r,{visible:q,onCancel:()=>_(!1),onSave:qn,onDelete:zn,server:j}),r.default.createElement(Ld,{visible:Fe,onCancel:$n,onSave:Ut}),r.default.createElement(pi,{visible:$,onCancel:()=>Y(!1),onSave:$e,onDelete:He,source:me,mode:\"edit\"}))}function Ad(){let[e,t]=(0,r.useState)([]),[n,o]=(0,r.useState)(!1),[a,i]=(0,r.useState)(null),l=(0,r.useMemo)(()=>[{title:\"\",dataIndex:\"drag\",width:40,render(p,w){return r.default.createElement(ui,{rowKey:w.key})}},{title:\"\\u7F51\\u76D8\",dataIndex:\"name\",render(p,w){return r.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:\"8px\",minWidth:0}},r.default.createElement(\"span\",{title:p,style:{flex:1,minWidth:0,overflow:\"hidden\",textOverflow:\"ellipsis\",whiteSpace:\"nowrap\"}},p),(w.key===\"quark\"||w.key===\"uc\"||w.key===\"ali\")&&w.chunkSize&&r.default.createElement(s.Tag,{className:\"ios-tag\"},w.chunkSize,\"K\\xB7\",w.poolSize))}},{title:\"\\u542F\\u7528\",dataIndex:\"enable\",render(p,w,v){return r.default.createElement(s.Switch,{value:p,onChange:S=>{e[v].enable=S,t([...e])}})},width:80},{title:\"\\u64CD\\u4F5C\",dataIndex:\"action\",width:60,render(p,w,v){return r.default.createElement(s.Button,{type:\"text\",className:\"ios-edit-btn\",icon:r.default.createElement(ft,null),onClick:()=>{i(L(O({},w),{index:v})),o(!0)},size:\"small\"})}}],[e]),u=wr(Bt(it,{activationConstraint:{distance:1}}),Bt(xt,{activationConstraint:{delay:150,tolerance:5}})),c=({active:p,over:w})=>{p.id!==(w==null?void 0:w.id)&&t(v=>{let S=v.findIndex(y=>y.key===p.id),E=v.findIndex(y=>y.key===(w==null?void 0:w.id));return $t(v,S,E)})},f=async()=>{let p=await F.get(\"/pans/list\");t(p)},m=async()=>{try{await F.put(\"/pans/list\",{list:e}),s.message.success({content:r.default.createElement(r.default.Fragment,null,\"\\u8BBE\\u7F6E\\u6210\\u529F\",r.default.createElement(\"br\",null),r.default.createElement(\"span\",{style:{fontSize:\"12px\",color:\"#999\"}},\"\\u914D\\u7F6E\\u5DF2\\u4FDD\\u5B58\\u5E76\\u7ACB\\u5373\\u751F\\u6548\")),duration:2})}catch(p){console.error(p),s.message.error(\"\\u8BBE\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(p==null?void 0:p.message))}},d=async()=>{try{await F.delete(\"/pans/list\"),f(),s.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\")}catch(p){console.error(p),s.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(p==null?void 0:p.message))}},g=p=>{let w=String(p.name||\"\").trim(),v=String(p.pic||\"\").trim(),S=L(O({},e[a.index]),{name:w,pic:v});(a.key===\"quark\"||a.key===\"uc\"||a.key===\"ali\")&&(S.chunkSize=p.chunkSize,S.poolSize=p.poolSize),a.key===\"quark\"&&(S.noSaveMode=p.noSaveMode===!0),e[a.index]=S,t([...e]),o(!1),s.message.info('\\u914D\\u7F6E\\u5DF2\\u66F4\\u65B0\\uFF0C\\u8BF7\\u70B9\\u51FB\\u4E0B\\u65B9\"\\u4FDD\\u5B58\"\\u6309\\u94AE\\u4FDD\\u5B58\\u914D\\u7F6E')};return(0,r.useEffect)(()=>{f()},[]),r.default.createElement(\"div\",null,r.default.createElement(Cr,{sensors:u,modifiers:[Sr],onDragEnd:c},r.default.createElement(kr,{items:e.map(p=>p.key),strategy:Or},r.default.createElement(s.Table,{components:{body:{row:di}},rowKey:\"key\",columns:l,dataSource:e,pagination:!1,tableLayout:\"fixed\",className:\"sites-table\"}))),r.default.createElement(\"div\",{className:\"ios-button-group\"},r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:m},\"\\u4FDD\\u5B58\"),r.default.createElement(\"button\",{className:\"action-btn action-btn--danger\",onClick:d},\"\\u91CD\\u7F6E\")),r.default.createElement(md,{visible:n,onCancel:()=>o(!1),onSave:g,panKey:a==null?void 0:a.key,panName:a==null?void 0:a.name,panPic:a==null?void 0:a.pic,chunkSize:a==null?void 0:a.chunkSize,poolSize:a==null?void 0:a.poolSize,noSaveMode:a==null?void 0:a.noSaveMode}))}function _d(){let[e]=s.Form.useForm(),[t,n]=(0,r.useState)(!1),o=\"/emby/setting\",a=async()=>{let c=await F.get(o);e.setFieldsValue(c)},i=async()=>{let c=await e.validateFields();try{await F.put(o,c),s.message.success(\"\\u4FDD\\u5B58\\u6210\\u529F\")}catch(f){console.error(f),s.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25\\uFF1A\".concat(f==null?void 0:f.message))}},l=async()=>{try{await F.delete(o),a(),s.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\")}catch(c){console.error(c),s.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(c==null?void 0:c.message))}},u=()=>{s.Modal.confirm({title:\"\\u786E\\u8BA4\\u6E05\\u7406 TMDB \\u7F13\\u5B58\\uFF1F\",content:\"\\u5C06\\u6E05\\u7A7A\\u670D\\u52A1\\u7AEF TMDB \\u7F13\\u5B58\\uFF08\\u542B\\u5185\\u5B58\\u4E0E\\u6301\\u4E45\\u5316\\u6570\\u636E\\uFF09\\uFF0C\\u540E\\u7EED\\u8BE6\\u60C5\\u4F1A\\u91CD\\u65B0\\u8BF7\\u6C42 TMDB\\u3002\",okText:\"\\u6E05\\u7406\",okButtonProps:{danger:!0},cancelText:\"\\u53D6\\u6D88\",async onOk(){n(!0);try{await F.post(\"/emby/tmdb/cache/clear\"),s.message.success(\"TMDB \\u7F13\\u5B58\\u5DF2\\u6E05\\u7406\")}catch(c){console.error(c),s.message.error(\"\\u6E05\\u7406\\u5931\\u8D25\\uFF1A\".concat(c==null?void 0:c.message))}finally{n(!1)}}})};return(0,r.useEffect)(()=>{a()},[]),r.default.createElement(s.Form,{form:e,layout:\"vertical\",style:{maxWidth:600},className:\"ios-form\"},r.default.createElement(s.Form.Item,{label:\"\\u670D\\u52A1\\u5668\\u540D\\u79F0\",name:\"serverName\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u670D\\u52A1\\u5668\\u540D\\u79F0\"}]},r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165\\u670D\\u52A1\\u5668\\u540D\\u79F0\"})),r.default.createElement(s.Form.Item,{label:\"\\u767B\\u5F55\\u7528\\u6237\\u540D\",name:\"username\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u767B\\u5F55\\u7528\\u6237\\u540D\"}]},r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165\\u767B\\u5F55\\u7528\\u6237\\u540D\"})),r.default.createElement(s.Form.Item,{label:\"\\u767B\\u5F55\\u5BC6\\u7801\",name:\"password\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u767B\\u5F55\\u5BC6\\u7801\"}]},r.default.createElement(s.Input.Password,{placeholder:\"\\u8BF7\\u8F93\\u5165\\u767B\\u5F55\\u5BC6\\u7801\"})),r.default.createElement(s.Form.Item,{label:\"TMDB API Key\",name:\"tmdbApiKey\",tooltip:\"TMDB v3 API Key\\uFF0C\\u542F\\u7528\\u589E\\u5F3A\\u65F6\\u5FC5\\u586B\",rules:[({getFieldValue:c})=>({validator(f,m){return!c(\"tmdbEnable\")||String(m||\"\").trim()?Promise.resolve():Promise.reject(new Error(\"\\u542F\\u7528 TMDB \\u589E\\u5F3A\\u65F6\\u8BF7\\u8F93\\u5165 API Key\"))}})]},r.default.createElement(s.Input.Password,{placeholder:\"\\u8BF7\\u8F93\\u5165 TMDB API Key\",autoComplete:\"off\"})),r.default.createElement(s.Form.Item,{label:\"\\u542F\\u7528 Emby\",name:\"enable\",valuePropName:\"checked\",style:{marginBottom:16}},r.default.createElement(s.Switch,null)),r.default.createElement(s.Form.Item,{label:\"\\u641C\\u7D22\\u663E\\u793A\\u6765\\u6E90\",name:\"searchSourcePrefix\",valuePropName:\"checked\",tooltip:\"\\u5F00\\u542F\\u540E\\u641C\\u7D22\\u7ED3\\u679C\\u6807\\u9898\\u663E\\u793A\\u4E3A\\u201C\\u6765\\u6E90 \\xB7 \\u6807\\u9898\\u201D\",style:{marginBottom:24}},r.default.createElement(s.Switch,null)),r.default.createElement(s.Form.Item,{label:\"\\u542F\\u7528 TMDB \\u589E\\u5F3A\",name:\"tmdbEnable\",valuePropName:\"checked\",tooltip:\"\\u5F00\\u542F\\u540E\\u4F18\\u5148\\u4F7F\\u7528 TMDB \\u7684\\u6D77\\u62A5\\u3001\\u5267\\u7167\\u548C\\u5143\\u6570\\u636E\",style:{marginBottom:16}},r.default.createElement(s.Switch,null)),r.default.createElement(s.Form.Item,{label:\"TMDB \\u7F13\\u5B58\",tooltip:\"\\u4EC5\\u6E05\\u7406\\u670D\\u52A1\\u7AEF TMDB \\u7F13\\u5B58\\uFF0C\\u4E0D\\u5F71\\u54CD\\u5217\\u8868/\\u641C\\u7D22\\u7AD9\\u6E90\\u7F13\\u5B58\"},r.default.createElement(s.Button,{danger:!0,onClick:u,loading:t},\"\\u4E00\\u952E\\u6E05\\u7406 TMDB \\u7F13\\u5B58\")),r.default.createElement(s.Form.Item,{style:{marginBottom:0}},r.default.createElement(\"div\",{className:\"ios-button-group\"},r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:i},\"\\u4FDD\\u5B58\"),r.default.createElement(\"button\",{className:\"action-btn action-btn--danger\",onClick:l},\"\\u91CD\\u7F6E\"))))}function Pd(){let[e]=s.Form.useForm(),t=\"/danmu/setting\",n=async()=>{let i=await F.get(t);e.setFieldsValue(i)},o=async()=>{let i=await e.validateFields();try{await F.put(t,i),s.message.success(\"\\u4FDD\\u5B58\\u6210\\u529F\")}catch(l){console.error(l),s.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25\\uFF1A\".concat(l==null?void 0:l.message))}},a=async()=>{try{await F.delete(t),n(),s.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\")}catch(i){console.error(i),s.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(i==null?void 0:i.message))}};return(0,r.useEffect)(()=>{n()},[]),r.default.createElement(s.Form,{form:e,layout:\"vertical\",style:{maxWidth:600},className:\"ios-form\"},r.default.createElement(s.Form.Item,{label:\"API \\u5217\\u8868\",style:{marginBottom:8}},r.default.createElement(s.Form.List,{name:\"urls\",rules:[{required:!0,message:\"\\u8BF7\\u6DFB\\u52A0API\\u5730\\u5740\"}]},(i,{add:l,remove:u},{errors:c})=>r.default.createElement(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:12}},i.map(f=>r.default.createElement(\"div\",{key:f.key,className:\"domain-list-row\"},r.default.createElement(s.Form.Item,L(O({},f),{name:[f.name,\"address\"],validateTrigger:[\"onChange\",\"onBlur\"],rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165API\\u5730\\u5740\"}],style:{flex:1,marginBottom:0}}),r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165API\\u5730\\u5740\"})),r.default.createElement(s.Form.Item,L(O({},f),{name:[f.name,\"name\"],validateTrigger:[\"onChange\",\"onBlur\"],style:{width:100,marginBottom:0,flexShrink:0}}),r.default.createElement(s.Input,{placeholder:\"\\u522B\\u540D\"})),r.default.createElement(\"span\",{className:\"domain-list-action\".concat(i.length>1?\"\":\" domain-list-action--placeholder\")},i.length>1?r.default.createElement(Je,{className:\"dynamic-delete-button\",onClick:()=>u(f.name)}):null))),r.default.createElement(s.Button,{type:\"dashed\",onClick:()=>l(),block:!0,icon:r.default.createElement(be,null)},\"\\u6DFB\\u52A0 API\"),r.default.createElement(s.Form.ErrorList,{errors:c})))),r.default.createElement(s.Form.Item,{label:\"\\u81EA\\u52A8\\u63A8\\u9001\",name:\"autoPush\",valuePropName:\"checked\",style:{marginBottom:16}},r.default.createElement(s.Switch,null)),r.default.createElement(s.Form.Item,{label:\"\\u8C03\\u8BD5\\u4FE1\\u606F\",name:\"debug\",valuePropName:\"checked\",tooltip:\"\\u5F00\\u542F\\u540E\\u5728\\u63A7\\u5236\\u53F0\\u663E\\u793A\\u8BE6\\u7EC6\\u7684\\u5F39\\u5E55\\u5339\\u914D\\u8C03\\u8BD5\\u4FE1\\u606F\",style:{marginBottom:24}},r.default.createElement(s.Switch,null)),r.default.createElement(s.Form.Item,{style:{marginBottom:0}},r.default.createElement(\"div\",{className:\"ios-button-group\"},r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:o},\"\\u4FDD\\u5B58\"),r.default.createElement(\"button\",{className:\"action-btn action-btn--danger\",onClick:a},\"\\u91CD\\u7F6E\"))))}function fi(e,t=\"\"){if(!e||typeof e!=\"object\")return null;let n=String(e.address||e.api||e.url||\"\").trim();if(!n)return null;let o=\"\";try{o=new URL(/^https?:\\/\\//i.test(n)?n:\"https://\".concat(n)).hostname}catch(l){}let a=String(e.name||e.title||t||o||\"CMS\").trim();return{name:a.startsWith(\"\\u300C\\u91C7\\u300D\")?a:\"\\u300C\\u91C7\\u300D\".concat(a),address:n}}function Er(e={}){return\"nodejs_\".concat(String(e.name||\"\").trim())}function Md(e=[],t=[]){let n=new Set;return[...e,...t].map(o=>fi(o)).filter(o=>!o||n.has(o.address)?!1:(n.add(o.address),!0))}function pi({visible:e,onCancel:t,onSave:n,onDelete:o,source:a,mode:i=\"add\"}){let[l]=s.Form.useForm(),[u,c]=(0,r.useState)(!1);(0,r.useEffect)(()=>{e&&l.setFieldsValue({name:(a==null?void 0:a.name)||\"\",url:(a==null?void 0:a.address)||\"\"})},[e,a,l]);let f=async()=>{let m;try{m=await l.validateFields()}catch(p){return}let d=String(m.name||\"\").trim(),g=String(m.url||\"\").trim();try{if(c(!0),i===\"edit\"&&g===String((a==null?void 0:a.address)||\"\").trim()){await n({name:d,address:g}),s.message.success(\"CMS \\u6E90\\u4FDD\\u5B58\\u6210\\u529F\");return}let p=await F.post(\"/cms/resolve\",{name:d,url:g}),w=Array.isArray(p==null?void 0:p.sources)?p.sources:[];if(w.length===0){s.message.warning(\"\\u672A\\u8BC6\\u522B\\u5230\\u53EF\\u7528\\u7684 CMS \\u6E90\");return}i===\"edit\"?(await n(w[0]),s.message.success(w.length>1?\"\\u5DF2\\u4F7F\\u7528\\u8BC6\\u522B\\u7ED3\\u679C\\u4E2D\\u7684\\u7B2C\\u4E00\\u4E2A CMS \\u6E90\":\"CMS \\u6E90\\u4FDD\\u5B58\\u6210\\u529F\")):(await n(w),s.message.success(w.length>1?\"\\u5DF2\\u6DFB\\u52A0 \".concat(w.length,\" \\u4E2A CMS \\u6E90\"):\"CMS \\u6E90\\u6DFB\\u52A0\\u6210\\u529F\"))}catch(p){console.error(p),s.message.error(\"\".concat(i===\"edit\"?\"CMS \\u4FDD\\u5B58\\u5931\\u8D25\":\"CMS \\u89E3\\u6790\\u5931\\u8D25\",\"\\uFF1A\").concat((p==null?void 0:p.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}finally{c(!1)}};return r.default.createElement(s.Modal,{title:i===\"edit\"?\"\\u7F16\\u8F91 \".concat((a==null?void 0:a.name)||\"CMS \\u6E90\"):\"\\u6DFB\\u52A0 CMS \\u6E90\",open:e,onCancel:t,confirmLoading:u,className:\"ios-modal\",footer:null,width:\"90%\",destroyOnClose:!0},r.default.createElement(s.Form,{form:l,layout:\"vertical\",className:\"ios-form\",requiredMark:!1},r.default.createElement(s.Form.Item,{label:\"\\u540D\\u79F0\",name:\"name\",tooltip:\"\\u7559\\u7A7A\\u65F6\\u4F7F\\u7528\\u63A5\\u53E3\\u8FD4\\u56DE\\u540D\\u79F0\\u6216\\u57DF\\u540D\\uFF0C\\u4FDD\\u5B58\\u65F6\\u4F1A\\u81EA\\u52A8\\u6DFB\\u52A0\\u300C\\u91C7\\u300D\\u524D\\u7F00\"},r.default.createElement(s.Input,{placeholder:\"\\u4F8B\\u5982\\uFF1A\\u6211\\u7684 CMS\"})),r.default.createElement(s.Form.Item,{label:\"API \\u5730\\u5740\",name:\"url\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165 CMS API \\u5730\\u5740\"}]},r.default.createElement(s.Input,{placeholder:\"example.com \\u6216 https://example.com/api.php/provide/vod/\"})),r.default.createElement(s.Form.Item,{style:{marginBottom:0}},r.default.createElement(\"div\",{className:\"ios-button-group\".concat(i===\"edit\"?\"\":\" emby-server-edit-actions--new\")},i===\"edit\"&&r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--danger\",onClick:()=>o==null?void 0:o(a),disabled:u},\"\\u5220\\u9664\"),r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--primary\",onClick:f,disabled:u},u?i===\"edit\"?\"\\u4FDD\\u5B58\\u4E2D...\":\"\\u89E3\\u6790\\u4E2D...\":i===\"edit\"?\"\\u4FDD\\u5B58\":\"\\u89E3\\u6790\\u5E76\\u6DFB\\u52A0\")))))}function Ld(e){return r.default.createElement(pi,L(O({},e),{mode:\"add\"}))}function Bd(){let[e,t]=(0,r.useState)([]),[n,o]=(0,r.useState)(!1),[a,i]=(0,r.useState)(!1),l=(0,r.useCallback)(async()=>{o(!0);try{let c=await F.get(\"/subscriptions\");t(Array.isArray(c==null?void 0:c.endpoints)?c.endpoints:[])}catch(c){console.error(\"\\u52A0\\u8F7D\\u8BA2\\u9605\\u63A5\\u53E3\\u5931\\u8D25:\",c),c!=null&&c.handled||s.message.error(\"\\u52A0\\u8F7D\\u8BA2\\u9605\\u63A5\\u53E3\\u5931\\u8D25\")}finally{o(!1)}},[]);(0,r.useEffect)(()=>{l()},[l]);let u=c=>{(0,Pr.default)(c.url),s.message.success(\"\\u5DF2\\u590D\\u5236\\u5230\\u526A\\u8D34\\u677F\")};return r.default.createElement(\"div\",{className:\"subscription-page\"},r.default.createElement(\"section\",{className:\"subscription-section\"},r.default.createElement(s.Spin,{spinning:n},r.default.createElement(\"div\",{className:\"subscription-endpoints\"},e.map(c=>r.default.createElement(\"div\",{className:\"subscription-endpoint\",key:c.key||c.url},r.default.createElement(\"div\",{className:\"subscription-endpoint__main\"},r.default.createElement(\"div\",{className:\"subscription-endpoint__title\"},r.default.createElement(\"span\",null,c.name)),r.default.createElement(\"div\",{className:\"subscription-endpoint__url\",title:c.url},c.url)),r.default.createElement(\"div\",{className:\"subscription-endpoint__actions\"},c.key===\"emby\"&&r.default.createElement(s.Button,{type:\"text\",icon:r.default.createElement(vn,null),onClick:()=>i(!0),\"aria-label\":\"\\u914D\\u7F6E Emby API\"}),r.default.createElement(s.Button,{type:\"text\",icon:r.default.createElement(sr,null),onClick:()=>u(c),\"aria-label\":\"\\u590D\\u5236\".concat(c.name)}),r.default.createElement(s.Button,{type:\"text\",icon:r.default.createElement(ur,null),href:c.url,target:\"_blank\",rel:\"noreferrer\",\"aria-label\":\"\\u6253\\u5F00\".concat(c.name)}))))))),r.default.createElement(s.Modal,{title:\"Emby API \\u8BBE\\u7F6E\",open:a,footer:null,onCancel:()=>i(!1),destroyOnClose:!0,className:\"ios-modal subscription-setting-modal\"},r.default.createElement(_d,null)))}function $d(){let[e,t]=(0,r.useState)(\"account\"),n={accept:\".json\",showUploadList:!1,beforeUpload(i){let l=new FileReader;return l.onload=async u=>{try{let c=JSON.parse(u.target.result);await F.put(\"/backup\",c),s.message.success(\"\".concat(i.name,\"\\u5BFC\\u5165\\u6210\\u529F\"))}catch(c){s.message.error(\"\".concat(i.name,\"\\u5BFC\\u5165\\u5931\\u8D25: \").concat(c.message)),console.error(\"Error parsing JSON:\",c)}},l.readAsText(i),!1}},o=[{key:\"account\",label:\"\\u767B\\u5F55\",icon:r.default.createElement(cr,null)},{key:\"settings\",label:\"\\u8BBE\\u7F6E\",icon:r.default.createElement(vn,null)}],a=()=>{switch(e){case\"account\":return r.default.createElement(Rl,null);case\"settings\":return r.default.createElement(s.Tabs,{destroyOnHidden:!0},r.default.createElement(Mn,{tab:\"\\u7AD9\\u6E90\\u5217\\u8868\",key:\"sites\"},r.default.createElement(Dd,null)),r.default.createElement(Mn,{tab:\"\\u7F51\\u76D8\\u5217\\u8868\",key:\"pans\"},r.default.createElement(Ad,null)),r.default.createElement(Mn,{tab:\"\\u5F39\\u5E55\\u8BBE\\u7F6E\",key:\"danmu\"},r.default.createElement(Pd,null)),r.default.createElement(Mn,{tab:\"\\u8BA2\\u9605\\u8F6C\\u6362\",key:\"subscriptions\"},r.default.createElement(Bd,null)));default:return null}};return r.default.createElement(\"div\",{className:\"app-layout\"},r.default.createElement(\"div\",{className:\"top-nav-bar\"},r.default.createElement(\"div\",{className:\"nav-pill\"},o.map(i=>r.default.createElement(\"div\",{key:i.key,className:\"nav-tab \".concat(e===i.key?\"nav-tab--active\":\"\"),onClick:()=>t(i.key)},i.icon,r.default.createElement(\"span\",null,i.label))),r.default.createElement(\"div\",{className:\"nav-divider\"}),r.default.createElement(\"div\",{className:\"nav-actions\"},r.default.createElement(s.Upload,O({},n),r.default.createElement(s.Button,{type:\"text\",icon:r.default.createElement(Ze,null),size:\"small\"},\"\\u5BFC\\u5165\")),r.default.createElement(s.Button,{type:\"text\",icon:r.default.createElement(lr,null),size:\"small\",href:\"/website/backup\",target:\"_blank\"},\"\\u5BFC\\u51FA\")))),r.default.createElement(\"div\",{className:\"container\"},r.default.createElement(s.Card,{className:\"main-card\"},a())))}function Hd(){(0,si.createRoot)(document.getElementById(\"app\")).render(r.default.createElement($d,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.renderClient(); })(); `; @@ -24,18 +24,18 @@ globalThis.danmuBundle = function() { }(); -var H0t=Object.create;var J2=Object.defineProperty;var Q0t=Object.getOwnPropertyDescriptor;var G0t=Object.getOwnPropertyNames;var V0t=Object.getPrototypeOf,z0t=Object.prototype.hasOwnProperty;var dr=(t,e)=>()=>(t&&(e=t(t=0)),e);var E=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),is=(t,e)=>{for(var r in e)J2(t,r,{get:e[r],enumerable:!0})},Ode=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of G0t(e))!z0t.call(t,s)&&s!==r&&J2(t,s,{get:()=>e[s],enumerable:!(n=Q0t(e,s))||n.enumerable});return t};var Re=(t,e,r)=>(r=t!=null?H0t(V0t(t)):{},Ode(e||!t||!t.__esModule?J2(r,"default",{value:t,enumerable:!0}):r,t)),K0t=t=>Ode(J2({},"__esModule",{value:!0}),t);var Dde=E((mOr,Pde)=>{"use strict";function Y0t(t){var e=new t,r=e;function n(){var i=e;return i.next?e=i.next:(e=new t,r=e),i.next=null,i}function s(i){r.next=i,r=i}return{get:n,release:s}}Pde.exports=Y0t});var Lde=E((hOr,L6)=>{"use strict";var J0t=Dde();function kde(t,e,r){if(typeof t=="function"&&(r=e,e=t,t=null),!(r>=1))throw new Error("fastqueue concurrency must be equal to or greater than 1");var n=J0t(X0t),s=null,i=null,a=0,o=null,c={push:h,drain:Na,saturated:Na,pause:l,paused:!1,get concurrency(){return r},set concurrency(C){if(!(C>=1))throw new Error("fastqueue concurrency must be equal to or greater than 1");if(r=C,!c.paused)for(;s&&a=r||c.paused?i?(i.next=w,i=w):(s=w,i=w,c.saturated()):(a++,e.call(t,w.value,w.worked))}function A(C,R){var w=n.get();w.context=t,w.release=g,w.value=C,w.callback=R||Na,w.errorHandler=o,a>=r||c.paused?s?(w.next=s,s=w):(s=w,i=w,c.saturated()):(a++,e.call(t,w.value,w.worked))}function g(C){C&&n.release(C);var R=s;R&&a<=r?c.paused?a--:(i===s&&(i=null),s=R.next,R.next=null,e.call(t,R.value,R.worked),i===null&&c.empty()):--a===0&&c.drain()}function b(){s=null,i=null,c.drain=Na}function y(){s=null,i=null,c.drain(),c.drain=Na}function x(){var C=s;for(s=null,i=null;C;){var R=C.next,w=C.callback,N=C.errorHandler,P=C.value,L=C.context;C.value=null,C.callback=Na,C.errorHandler=null,N&&N(new Error("abort"),P),w.call(L,new Error("abort")),C.release(C),C=R}c.drain=Na}function v(C){o=C}}function Na(){}function X0t(){this.value=null,this.callback=Na,this.next=null,this.release=Na,this.context=null,this.errorHandler=null;var t=this;this.worked=function(r,n){var s=t.callback,i=t.errorHandler,a=t.value;t.value=null,t.callback=Na,t.errorHandler&&i(r,a),s.call(t.context,r,n),t.release(t)}}function Z0t(t,e,r){typeof t=="function"&&(r=e,e=t,t=null);function n(l,d){e.call(this,l).then(function(f){d(null,f)},d)}var s=kde(t,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,p){i(l,function(m,h){if(m){p(m);return}f(h)})});return d.catch(Na),d}function c(l){var d=new Promise(function(f,p){a(l,function(m,h){if(m){p(m);return}f(h)})});return d.catch(Na),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}}L6.exports=kde;L6.exports.promise=Z0t});var M6=E((gOr,X2)=>{"use strict";var{format:emt}=require("node:util");function tmt(){return`${this.name} [${this.code}]: ${this.message}`}function B6(t,e,r=500,n=Error){if(!t)throw new Error("Fastify error code must not be empty");if(!e)throw new Error("Fastify error message must not be empty");t=t.toUpperCase(),!r&&(r=void 0);function s(...i){if(!new.target)return new s(...i);this.code=t,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=emt(e,...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=tmt,s}X2.exports=B6;X2.exports.default=B6;X2.exports.createError=B6});var Z2=E((AOr,Bde)=>{"use strict";var{createError:cp}=M6();Bde.exports={AVV_ERR_EXPOSE_ALREADY_DEFINED:cp("AVV_ERR_EXPOSE_ALREADY_DEFINED","'%s' is already defined, specify an expose option for '%s'"),AVV_ERR_ATTRIBUTE_ALREADY_DEFINED:cp("AVV_ERR_ATTRIBUTE_ALREADY_DEFINED","'%s' is already defined"),AVV_ERR_CALLBACK_NOT_FN:cp("AVV_ERR_CALLBACK_NOT_FN","Callback for '%s' hook is not a function. Received: '%s'"),AVV_ERR_PLUGIN_NOT_VALID:cp("AVV_ERR_PLUGIN_NOT_VALID","Plugin must be a function or a promise. Received: '%s'"),AVV_ERR_ROOT_PLG_BOOTED:cp("AVV_ERR_ROOT_PLG_BOOTED","Root plugin has already booted"),AVV_ERR_PARENT_PLG_LOADED:cp("AVV_ERR_PARENT_PLG_LOADED","Impossible to load '%s' plugin because the parent '%s' was already loaded"),AVV_ERR_READY_TIMEOUT:cp("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:cp("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 PA=E((yOr,Mde)=>{"use strict";var rmt=Symbol("avvio.Boot"),nmt=Symbol("isOnCloseHandler"),smt=Symbol("avvio.ThenifyDoNotWrap"),imt=Symbol("avvio.TimeTree.untrackNode"),amt=Symbol("avvio.TimeTree.trackNode"),omt=Symbol("avvio.TimeTree.getParent"),cmt=Symbol("avvio.TimeTree.getNode"),umt=Symbol("avvio.TimeTree.addNode"),lmt=Symbol.for("plugin-meta");Mde.exports={kAvvio:rmt,kIsOnCloseHandler:nmt,kThenifyDoNotWrap:smt,kUntrackNode:imt,kTrackNode:amt,kGetParent:omt,kGetNode:cmt,kAddNode:umt,kPluginMeta:lmt}});var Hde=E((xOr,jde)=>{"use strict";var{kUntrackNode:Wde,kTrackNode:W6,kGetParent:$de,kGetNode:Fde,kAddNode:Ude}=PA(),$6=class{constructor(){this.root=null,this.tableId=new Map,this.tableLabel=new Map}[W6](e){this.tableId.set(e.id,e),this.tableLabel.has(e.label)?this.tableLabel.get(e.label).push(e):this.tableLabel.set(e.label,[e])}[Wde](e){this.tableId.delete(e.id);let r=this.tableLabel.get(e.label);r.pop(),r.length===0&&this.tableLabel.delete(e.label)}[$de](e){if(e===null)return null;if(this.tableLabel.has(e)){let r=this.tableLabel.get(e);return r[r.length-1]}else return null}[Fde](e){return this.tableId.get(e)}[Ude](e,r,n){let s=this[$de](e);if(s===null)return this.root={parent:null,id:"root",label:r,nodes:[],start:n,stop:null,diff:-1},this[W6](this.root),this.root.id;let a=`${r}-${Math.random()}`,o={parent:e,id:a,label:r,nodes:[],start:n,stop:null,diff:-1};return s.nodes.push(o),this[W6](o),a}start(e,r,n=Date.now()){return this[Ude](e,r,n)}stop(e,r=Date.now()){let n=this[Fde](e);n&&(n.stop=r,n.diff=n.stop-n.start||0,this[Wde](n))}toJSON(){return Object.assign({},this.root)}prettyPrint(){return qde(this.toJSON())}};function qde(t,e=""){let r=e,n=t.nodes.length,s=n-1;r+=`${t.label} ${t.diff} ms -`;for(let i=0;i{"use strict";var{debuglog:dmt}=require("node:util"),fmt=dmt("avvio");Qde.exports={debug:fmt}});var Vde=E((EOr,Gde)=>{"use strict";function pmt(){let t={resolve:null,reject:null,promise:null};return t.promise=new Promise((e,r)=>{t.resolve=e,t.reject=r}),t}Gde.exports={createPromise:pmt}});var Kde=E((_Or,zde)=>{"use strict";var{kPluginMeta:F6}=PA();function mmt(t,e){return t[F6]&&t[F6].name?t[F6].name:e&&e.name?e.name:t.name?t.name:t.toString().split(` -`).slice(0,2).map(r=>r.trim()).join(" -- ")}zde.exports={getPluginName:mmt}});var tR=E((SOr,Yde)=>{"use strict";function hmt(t){return t!==null&&typeof t=="object"&&typeof t.then=="function"}Yde.exports={isPromiseLike:hmt}});var Xde=E((vOr,Jde)=>{"use strict";var{EventEmitter:gmt}=require("node:events"),{inherits:Amt}=require("node:util"),{debug:ci}=eR(),{createPromise:ymt}=Vde(),{AVV_ERR_PLUGIN_EXEC_TIMEOUT:xmt}=Z2(),{getPluginName:bmt}=Kde(),{isPromiseLike:Emt}=tR();function DA(t,e,r,n,s){this.queue=t,this.func=e,this.options=r,this.isAfter=n,this.timeout=s,this.started=!1,this.name=bmt(e,r),this.queue.pause(),this._error=null,this.loaded=!1,this._promise=null,this.startTime=null}Amt(DA,gmt);DA.prototype.exec=function(t,e){ci("exec",this.name),this.server=t;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){ci("loading complete",n);return}this._error=c,ci(c?"exec errored":"exec completed",n),s=!0,i&&clearTimeout(i),e(c)};this.timeout>0&&(ci("setting up timeout",n,this.timeout),i=setTimeout(function(){ci("timed out",n),i=null;let c=new xmt(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);Emt(o)&&(ci("exec: resolving promise",n),o.then(()=>process.nextTick(a),c=>process.nextTick(a,c)))};DA.prototype.loadedSoFar=function(){if(ci("loadedSoFar",this.name),this.loaded)return Promise.resolve();let t=()=>{this.server.after((r,n)=>{this._error=r,this.queue.pause(),this._promise&&(r?(ci("rejecting promise",this.name,r),this._promise.reject(r)):(ci("resolving promise",this.name),this._promise.resolve()),this._promise=null),process.nextTick(n,r)}),this.queue.resume()},e;return this._promise?e=Promise.resolve():(this._promise=ymt(),e=this._promise.promise,this.server?t():this.on("start",t)),e};DA.prototype.enqueue=function(t,e){ci("enqueue",this.name,t.name),this.emit("enqueue",this.server?this.server.name:null,this.name,Date.now()),this.queue.push(t,e)};DA.prototype.finish=function(t,e){ci("finish",this.name,t);let r=()=>{this.loaded||(ci("loaded",this.name),this.emit("loaded",this.server?this.server.name:null,this.name,Date.now()),this.loaded=!0,e(t))};if(t){this._promise&&(this._promise.reject(t),this._promise=null),r();return}let n=()=>{if(ci("check",this.name,this.queue.length(),this.queue.running(),this._promise),this.queue.length()===0&&this.queue.running()===0)if(this._promise){let s=()=>{ci("wrap"),queueMicrotask(n)};this._promise.resolve(),this._promise.promise.then(s,s),this._promise=null}else r();else ci("delayed",this.name),this.queue.drain=()=>{ci("drain",this.name),this.queue.drain=_mt,queueMicrotask(n)}};queueMicrotask(n),this.queue.resume()};function _mt(){}Jde.exports={Plugin:DA}});var efe=E((COr,Zde)=>{"use strict";var{AVV_ERR_PLUGIN_NOT_VALID:U6}=Z2();function Smt(t){if(!(t&&(typeof t=="function"||typeof t.then=="function")))throw Array.isArray(t)?new U6("array"):t===null?new U6("null"):new U6(typeof t)}Zde.exports={validatePlugin:Smt}});var rfe=E((IOr,tfe)=>{"use strict";function vmt(t){return t!==null&&typeof t=="object"&&typeof t.default=="function"}tfe.exports={isBundledOrTypescriptPlugin:vmt}});var ife=E((TOr,sfe)=>{"use strict";var{debug:nfe}=eR(),{kThenifyDoNotWrap:q6}=PA();function Cmt(){if(this.booted){nfe("thenify returning undefined because we are already booted");return}if(this[q6]){this[q6]=!1;return}return nfe("thenify"),(t,e)=>this._loadRegistered().then(()=>(this[q6]=!0,t(this._server)),e)}sfe.exports={thenify:Cmt}});var ofe=E((wOr,afe)=>{"use strict";var{isPromiseLike:Imt}=tR(),{kAvvio:Tmt}=PA();function wmt(t,e,r){let n=t.apply(t,e);Imt(n)&&!n[Tmt]?n.then(()=>process.nextTick(r),s=>process.nextTick(r,s)):r&&process.nextTick(r)}afe.exports={executeWithThenable:wmt}});var hfe=E((ROr,H6)=>{"use strict";var rR=Lde(),Rmt=require("node:events").EventEmitter,Nmt=require("node:util").inherits,{AVV_ERR_EXPOSE_ALREADY_DEFINED:e1,AVV_ERR_CALLBACK_NOT_FN:kA,AVV_ERR_ROOT_PLG_BOOTED:Omt,AVV_ERR_READY_TIMEOUT:Pmt,AVV_ERR_ATTRIBUTE_ALREADY_DEFINED:Dmt}=Z2(),{kAvvio:lfe,kIsOnCloseHandler:dfe}=PA(),{TimeTree:kmt}=Hde(),{Plugin:ffe}=Xde(),{debug:LA}=eR(),{validatePlugin:Lmt}=efe(),{isBundledOrTypescriptPlugin:Bmt}=rfe(),{isPromiseLike:Mmt}=tR(),{thenify:pfe}=ife(),{executeWithThenable:cfe}=ofe();function as(t,e,r){if(typeof t=="function"&&arguments.length===1&&(r=t,e={},t=null),typeof e=="function"&&(r=e,e={}),e=e||{},e.autostart=e.autostart!==!1,e.timeout=Number(e.timeout)||0,e.expose=e.expose||{},!new.target)return new as(t,e,r);this._server=t||this,this._opts=e,t&&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 kmt,this._readyQ=rR(this,mfe,1),this._readyQ.pause(),this._readyQ.drain=()=>{this.emit("start"),this._readyQ.drain=ufe},this._closeQ=rR(this,$mt,1),this._closeQ.pause(),this._closeQ.drain=()=>{this.emit("close"),this._closeQ.drain=ufe},this._doStart=null;let n=this;this._root=new ffe(rR(this,this._loadPluginNextTick,1),function(i,a,o){n._doStart=o,a.autostart&&n.start()},e,!1,0),this._trackPluginLoading(this._root),this._loadPlugin(this._root,s=>{LA("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()})}Nmt(as,Rmt);as.prototype.start=function(){return this.started=!0,process.nextTick(this._doStart),this};as.prototype.override=function(t,e,r){return t};as.prototype[lfe]=!0;as.prototype.use=function(t,e){return this._lastUsed=this._addPlugin(t,e,!1),this};as.prototype._loadRegistered=function(){let t=this._current[0];return!this.started&&!this.booted&&process.nextTick(()=>this._root.queue.resume()),t?t.loadedSoFar():Promise.resolve()};Object.defineProperty(as.prototype,"then",{get:pfe});as.prototype._addPlugin=function(t,e,r){if(Bmt(t)&&(t=t.default),Lmt(t),e=e||{},this.booted)throw new Omt;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 ffe(rR(this,this._loadPluginNextTick,1),t,e,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};as.prototype._expose=function(){let e=this,r=e._server,{use:n="use",after:s="after",ready:i="ready",onClose:a="onClose",close:o="close"}=this._opts.expose;if(r[n])throw new e1(n,"use");if(r[n]=function(c,u){return e.use(c,u),this},r[s])throw new e1(s,"after");if(r[s]=function(c){return typeof c!="function"?e._loadRegistered():(e.after(j6(c,this)),this)},r[i])throw new e1(i,"ready");if(r[i]=function(c){if(c&&typeof c!="function")throw new kA(i,typeof c);return e.ready(c?j6(c,this):void 0)},r[a])throw new e1(a,"onClose");if(r[a]=function(c){if(typeof c!="function")throw new kA(a,typeof c);return e.onClose(Fmt(c,this)),this},r[o])throw new e1(o,"close");if(r[o]=function(c){if(c&&typeof c!="function")throw new kA(o,typeof c);return c?(e.close(j6(c,this)),this):e.close()},r.then)throw new Dmt("then");Object.defineProperty(r,"then",{get:pfe.bind(e)}),r[lfe]=!0};as.prototype.after=function(t){if(!t)return this._loadRegistered();this._addPlugin(e.bind(this),{},!0);function e(r,n,s){mfe.call(this,t,s)}return this};as.prototype.onClose=function(t){if(typeof t!="function")throw new kA("onClose",typeof t);return t[dfe]=!0,this._closeQ.unshift(t,e=>{e&&(this._error=e)}),this};as.prototype.close=function(t){let e;if(t){if(typeof t!="function")throw new kA("close",typeof t)}else e=new Promise(function(r,n){t=function(s){if(s)return n(s);r()}});return this.ready(()=>{this._error=null,this._closeQ.push(t),process.nextTick(this._closeQ.resume.bind(this._closeQ))}),e};as.prototype.ready=function(t){if(t){if(typeof t!="function")throw new kA("ready",typeof t);this._readyQ.push(t),queueMicrotask(this.start.bind(this));return}return new Promise((e,r)=>{this._readyQ.push(s),this.start();let n=this._current[0].server;function s(i,a,o){i?r(i):e(n),process.nextTick(o)}})};as.prototype._trackPluginLoading=function(t){let e=this._current[0]?.name||null;t.once("start",(r,n,s)=>{let i=this.pluginTree.start(e||null,n,s);t.once("loaded",(a,o,c)=>{this.pluginTree.stop(i,c)})})};as.prototype.prettyPrint=function(){return this.pluginTree.prettyPrint()};as.prototype.toJSON=function(){return this.pluginTree.toJSON()};as.prototype._loadPlugin=function(t,e){let r=this;if(Mmt(t.func)){t.func.then(a=>{typeof a.default=="function"&&(a=a.default),t.func=a,this._loadPlugin(t,e)},e);return}let n=r._current[0];if(r._current.unshift(t),r._error&&!t.isAfter){LA("skipping loading of plugin as instance errored and it is not an after",t.name),process.nextTick(i);return}let s=n&&n.server||r._server;if(!t.isAfter)try{s=r.override(s,t.func,t.options)}catch(a){return LA("override errored",t.name),i(a)}t.exec(s,i);function i(a){t.finish(a,o=>{r._current.shift(),e(o)})}};as.prototype._loadPluginNextTick=function(t,e){process.nextTick(this._loadPlugin.bind(this),t,e)};function ufe(){}function mfe(t,e){let r=this._server,n=this._error;if(this._error=null,t.length===0)this._error=n,cfe(t,[],e);else if(t.length===1)cfe(t,[n],e);else if(this._opts.timeout===0){let s=i=>{this._error=i,e(this._error)};t.length===2?t(n,s):t(n,r,s)}else Wmt.call(this,t,n,r,e)}function Wmt(t,e,r,n){let s=t.unwrappedName??t.name;LA("setting up ready timeout",s,this._opts.timeout);let i=setTimeout(()=>{LA("timed out",s),i=null;let o=new Pmt(s);o.fn=t,this._error=o,n(o)},this._opts.timeout);t.length===2?t(e,a.bind(this)):t(e,r,a.bind(this));function a(o){i&&(clearTimeout(i),this._error=o,n(this._error))}}function $mt(t,e){let r=this._server,n=t[dfe];if(t.length===0||t.length===1){let s;n?s=t(r):s=t(this._error),s&&typeof s.then=="function"?(LA("resolving close/onClose promise"),s.then(()=>process.nextTick(e),i=>process.nextTick(e,i))):process.nextTick(e)}else t.length===2?t(n?r:this._error,e):n?t(r,e):t(this._error,r,e)}function Fmt(t,e){return r.bind(e);function r(n,s){let i;t.length===0?(i=t(),i&&i.then?i.then(function(){process.nextTick(s)},s):process.nextTick(s)):t.length===1?(i=t(this),i&&i.then?i.then(function(){process.nextTick(s)},s):process.nextTick(s)):t(this,s)}}function j6(t,e){let r=n.bind(e);return r.unwrappedName=t.name,r;function n(s,i){let a;t?t.length===0?(a=t(),a&&a.then?a.then(function(){process.nextTick(i,s)},i):process.nextTick(i,s)):t.length===1?(a=t(s),a&&a.then?a.then(function(){process.nextTick(i)},i):process.nextTick(i)):t.length===2?t(s,i):t(s,this,i):process.nextTick(i)}}H6.exports=as;H6.exports.express=function(t){return as(t,{expose:{use:"load"}})}});var Qs=E((NOr,gfe)=>{"use strict";var Umt={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")};gfe.exports=Umt});var V6=E((OOr,nR)=>{"use strict";var{format:Q6}=require("node:util");function qmt(t){return Afe({...t,name:"DeprecationWarning"})}function Afe({name:t,code:e,message:r,unlimited:n=!1}={}){if(!t)throw new Error("Warning name must not be empty");if(!e)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");e=e.toUpperCase();let s={[t]: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={[t]:function(a,o,c){i.emitted=!0,process.emitWarning(i.format(a,o,c),i.name,i.code)}});let i=s[t];return i.emitted=!1,i.message=r,i.unlimited=n,i.code=e,i.format=function(a,o,c){let u;return a&&o&&c?u=Q6(r,a,o,c):a&&o?u=Q6(r,a,o):a?u=Q6(r,a):u=r,u},i}var G6={createWarning:Afe,createDeprecation:qmt};nR.exports=G6;nR.exports.default=G6;nR.exports.processWarning=G6});var cd=E((POr,xfe)=>{"use strict";var{createDeprecation:vi,createWarning:yfe}=V6(),jmt=vi({code:"FSTDEP005",message:'You are accessing the deprecated "request.connection" property. Use "request.socket" instead.'}),Hmt=vi({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"}),Qmt=vi({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.'}),Gmt=vi({code:"FSTDEP008",message:'You are using route constraints via the route { version: "..." } option, use { constraints: { version: "..." } } option instead.'}),Vmt=vi({code:"FSTDEP009",message:'You are using a custom route versioning strategy via the server { versioning: "..." } option, use { constraints: { version: "..." } } option instead.'}),zmt=vi({code:"FSTDEP010",message:'Modifying the "reply.sent" property is deprecated. Use the "reply.hijack()" method instead.'}),Kmt=vi({code:"FSTDEP011",message:'Variadic listen method is deprecated. Please use ".listen(optionsObject)" instead. The variadic signature will be removed in `fastify@5`.'}),Ymt=vi({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`.'}),Jmt=vi({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`.'}),Xmt=vi({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."}),Zmt=vi({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`.'}),eht=vi({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`.'}),tht=vi({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`.'}),rht=vi({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`.'}),nht=vi({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`.'}),sht=vi({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`.'}),iht=yfe({name:"FastifyWarning",code:"FSTWRN001",message:"The %s schema for %s: %s is missing. This may indicate the schema is not well specified.",unlimited:!0}),aht=yfe({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});xfe.exports={FSTDEP005:jmt,FSTDEP006:Hmt,FSTDEP007:Qmt,FSTDEP008:Gmt,FSTDEP009:Vmt,FSTDEP010:zmt,FSTDEP011:Kmt,FSTDEP012:Ymt,FSTDEP013:Jmt,FSTDEP014:Xmt,FSTDEP015:Zmt,FSTDEP016:eht,FSTDEP017:tht,FSTDEP018:rht,FSTDEP019:nht,FSTDEP020:sht,FSTWRN001:iht,FSTWRN002:aht}});var Ci=E((DOr,sR)=>{"use strict";var He=M6(),BA={FST_ERR_NOT_FOUND:He("FST_ERR_NOT_FOUND","Not Found",404),FST_ERR_OPTIONS_NOT_OBJ:He("FST_ERR_OPTIONS_NOT_OBJ","Options must be an object",500,TypeError),FST_ERR_QSP_NOT_FN:He("FST_ERR_QSP_NOT_FN","querystringParser option should be a function, instead got '%s'",500,TypeError),FST_ERR_SCHEMA_CONTROLLER_BUCKET_OPT_NOT_FN:He("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:He("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:He("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:He("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:He("FST_ERR_VERSION_CONSTRAINT_NOT_STR","Version constraint should be a string.",500,TypeError),FST_ERR_VALIDATION:He("FST_ERR_VALIDATION","%s",400),FST_ERR_LISTEN_OPTIONS_INVALID:He("FST_ERR_LISTEN_OPTIONS_INVALID","Invalid listen options: '%s'",500,TypeError),FST_ERR_CTP_ALREADY_PRESENT:He("FST_ERR_CTP_ALREADY_PRESENT","Content type parser '%s' already present."),FST_ERR_CTP_INVALID_TYPE:He("FST_ERR_CTP_INVALID_TYPE","The content type should be a string or a RegExp",500,TypeError),FST_ERR_CTP_EMPTY_TYPE:He("FST_ERR_CTP_EMPTY_TYPE","The content type cannot be an empty string",500,TypeError),FST_ERR_CTP_INVALID_HANDLER:He("FST_ERR_CTP_INVALID_HANDLER","The content type handler should be a function",500,TypeError),FST_ERR_CTP_INVALID_PARSE_TYPE:He("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:He("FST_ERR_CTP_BODY_TOO_LARGE","Request body is too large",413,RangeError),FST_ERR_CTP_INVALID_MEDIA_TYPE:He("FST_ERR_CTP_INVALID_MEDIA_TYPE","Unsupported Media Type: %s",415),FST_ERR_CTP_INVALID_CONTENT_LENGTH:He("FST_ERR_CTP_INVALID_CONTENT_LENGTH","Request body size did not match Content-Length",400,RangeError),FST_ERR_CTP_EMPTY_JSON_BODY:He("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:He("FST_ERR_CTP_INSTANCE_ALREADY_STARTED",'Cannot call "%s" when fastify instance is already started!',400),FST_ERR_DEC_ALREADY_PRESENT:He("FST_ERR_DEC_ALREADY_PRESENT","The decorator '%s' has already been added!"),FST_ERR_DEC_DEPENDENCY_INVALID_TYPE:He("FST_ERR_DEC_DEPENDENCY_INVALID_TYPE","The dependencies of decorator '%s' must be of type Array.",500,TypeError),FST_ERR_DEC_MISSING_DEPENDENCY:He("FST_ERR_DEC_MISSING_DEPENDENCY","The decorator is missing dependency '%s'."),FST_ERR_DEC_AFTER_START:He("FST_ERR_DEC_AFTER_START","The decorator '%s' has been added after start!"),FST_ERR_HOOK_INVALID_TYPE:He("FST_ERR_HOOK_INVALID_TYPE","The hook name must be a string",500,TypeError),FST_ERR_HOOK_INVALID_HANDLER:He("FST_ERR_HOOK_INVALID_HANDLER","%s hook should be a function, instead got %s",500,TypeError),FST_ERR_HOOK_INVALID_ASYNC_HANDLER:He("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:He("FST_ERR_HOOK_NOT_SUPPORTED","%s hook not supported!",500,TypeError),FST_ERR_MISSING_MIDDLEWARE:He("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:He("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:He("FST_ERR_LOG_INVALID_DESTINATION","Cannot specify both logger.stream and logger.file options"),FST_ERR_LOG_INVALID_LOGGER:He("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:He("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:He("FST_ERR_REP_RESPONSE_BODY_CONSUMED","Response.body is already consumed."),FST_ERR_REP_ALREADY_SENT:He("FST_ERR_REP_ALREADY_SENT",'Reply was already sent, did you forget to "return reply" in "%s" (%s)?'),FST_ERR_REP_SENT_VALUE:He("FST_ERR_REP_SENT_VALUE","The only possible value for reply.sent is true.",500,TypeError),FST_ERR_SEND_INSIDE_ONERR:He("FST_ERR_SEND_INSIDE_ONERR","You cannot use `send` inside the `onError` hook"),FST_ERR_SEND_UNDEFINED_ERR:He("FST_ERR_SEND_UNDEFINED_ERR","Undefined error has occurred"),FST_ERR_BAD_STATUS_CODE:He("FST_ERR_BAD_STATUS_CODE","Called reply with an invalid status code: %s"),FST_ERR_BAD_TRAILER_NAME:He("FST_ERR_BAD_TRAILER_NAME","Called reply.trailer with an invalid header name: %s"),FST_ERR_BAD_TRAILER_VALUE:He("FST_ERR_BAD_TRAILER_VALUE","Called reply.trailer('%s', fn) with an invalid type: %s. Expected a function."),FST_ERR_FAILED_ERROR_SERIALIZATION:He("FST_ERR_FAILED_ERROR_SERIALIZATION","Failed to serialize an error. Error: %s. Original error: %s"),FST_ERR_MISSING_SERIALIZATION_FN:He("FST_ERR_MISSING_SERIALIZATION_FN",'Missing serialization function. Key "%s"'),FST_ERR_MISSING_CONTENTTYPE_SERIALIZATION_FN:He("FST_ERR_MISSING_CONTENTTYPE_SERIALIZATION_FN",'Missing serialization function. Key "%s:%s"'),FST_ERR_REQ_INVALID_VALIDATION_INVOCATION:He("FST_ERR_REQ_INVALID_VALIDATION_INVOCATION",'Invalid validation invocation. Missing validation function for HTTP part "%s" nor schema provided.'),FST_ERR_SCH_MISSING_ID:He("FST_ERR_SCH_MISSING_ID","Missing schema $id property"),FST_ERR_SCH_ALREADY_PRESENT:He("FST_ERR_SCH_ALREADY_PRESENT","Schema with id '%s' already declared!"),FST_ERR_SCH_CONTENT_MISSING_SCHEMA:He("FST_ERR_SCH_CONTENT_MISSING_SCHEMA","Schema is missing for the content type '%s'"),FST_ERR_SCH_DUPLICATE:He("FST_ERR_SCH_DUPLICATE","Schema with '%s' already present!"),FST_ERR_SCH_VALIDATION_BUILD:He("FST_ERR_SCH_VALIDATION_BUILD","Failed building the validation schema for %s: %s, due to error %s"),FST_ERR_SCH_SERIALIZATION_BUILD:He("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:He("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:He("FST_ERR_HTTP2_INVALID_VERSION","HTTP2 is available only from node >= 8.8.1"),FST_ERR_INIT_OPTS_INVALID:He("FST_ERR_INIT_OPTS_INVALID","Invalid initialization options: '%s'"),FST_ERR_FORCE_CLOSE_CONNECTIONS_IDLE_NOT_AVAILABLE:He("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:He("FST_ERR_DUPLICATED_ROUTE","Method '%s' already declared for route '%s'"),FST_ERR_BAD_URL:He("FST_ERR_BAD_URL","'%s' is not a valid url component",400,URIError),FST_ERR_ASYNC_CONSTRAINT:He("FST_ERR_ASYNC_CONSTRAINT","Unexpected error from async constraint",500),FST_ERR_DEFAULT_ROUTE_INVALID_TYPE:He("FST_ERR_DEFAULT_ROUTE_INVALID_TYPE","The defaultRoute type should be a function",500,TypeError),FST_ERR_INVALID_URL:He("FST_ERR_INVALID_URL","URL must be a string. Received '%s'",400,TypeError),FST_ERR_ROUTE_OPTIONS_NOT_OBJ:He("FST_ERR_ROUTE_OPTIONS_NOT_OBJ",'Options for "%s:%s" route must be an object',500,TypeError),FST_ERR_ROUTE_DUPLICATED_HANDLER:He("FST_ERR_ROUTE_DUPLICATED_HANDLER",'Duplicate handler for "%s:%s" route is not allowed!',500),FST_ERR_ROUTE_HANDLER_NOT_FN:He("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:He("FST_ERR_ROUTE_MISSING_HANDLER",'Missing handler function for "%s:%s" route.',500),FST_ERR_ROUTE_METHOD_INVALID:He("FST_ERR_ROUTE_METHOD_INVALID","Provided method is invalid!",500,TypeError),FST_ERR_ROUTE_METHOD_NOT_SUPPORTED:He("FST_ERR_ROUTE_METHOD_NOT_SUPPORTED","%s method is not supported.",500),FST_ERR_ROUTE_BODY_VALIDATION_SCHEMA_NOT_SUPPORTED:He("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:He("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:He("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:He("FST_ERR_REOPENED_CLOSE_SERVER","Fastify has already been closed and cannot be reopened"),FST_ERR_REOPENED_SERVER:He("FST_ERR_REOPENED_SERVER","Fastify is already listening"),FST_ERR_INSTANCE_ALREADY_LISTENING:He("FST_ERR_INSTANCE_ALREADY_LISTENING","Fastify instance is already listening. %s"),FST_ERR_PLUGIN_VERSION_MISMATCH:He("FST_ERR_PLUGIN_VERSION_MISMATCH","fastify-plugin: %s - expected '%s' fastify version, '%s' is installed"),FST_ERR_PLUGIN_NOT_PRESENT_IN_INSTANCE:He("FST_ERR_PLUGIN_NOT_PRESENT_IN_INSTANCE","The decorator '%s'%s is not present in %s"),FST_ERR_PLUGIN_CALLBACK_NOT_FN:He("FST_ERR_PLUGIN_CALLBACK_NOT_FN","fastify-plugin: %s",500,TypeError),FST_ERR_PLUGIN_NOT_VALID:He("FST_ERR_PLUGIN_NOT_VALID","fastify-plugin: %s"),FST_ERR_ROOT_PLG_BOOTED:He("FST_ERR_ROOT_PLG_BOOTED","fastify-plugin: %s"),FST_ERR_PARENT_PLUGIN_BOOTED:He("FST_ERR_PARENT_PLUGIN_BOOTED","fastify-plugin: %s"),FST_ERR_PLUGIN_TIMEOUT:He("FST_ERR_PLUGIN_TIMEOUT","fastify-plugin: %s")};function oht(t,e){return e.cause=t,e}sR.exports=BA;sR.exports.appendStackTrace=oht;sR.exports.AVVIO_ERRORS_MAP={AVV_ERR_CALLBACK_NOT_FN:BA.FST_ERR_PLUGIN_CALLBACK_NOT_FN,AVV_ERR_PLUGIN_NOT_VALID:BA.FST_ERR_PLUGIN_NOT_VALID,AVV_ERR_ROOT_PLG_BOOTED:BA.FST_ERR_ROOT_PLG_BOOTED,AVV_ERR_PARENT_PLG_LOADED:BA.FST_ERR_PARENT_PLUGIN_BOOTED,AVV_ERR_READY_TIMEOUT:BA.FST_ERR_PLUGIN_TIMEOUT}});var up=E((kOr,wfe)=>{"use strict";var cht=["onRoute","onRegister","onReady","onListen","preClose","onClose"],Sfe=["onTimeout","onRequest","preParsing","preValidation","preSerialization","preHandler","onSend","onResponse","onError","onRequestAbort"],uht=Sfe.concat(cht),{FST_ERR_HOOK_INVALID_TYPE:lht,FST_ERR_HOOK_INVALID_HANDLER:dht,FST_ERR_SEND_UNDEFINED_ERR:iR,FST_ERR_HOOK_TIMEOUT:fht,FST_ERR_HOOK_NOT_SUPPORTED:pht,AVVIO_ERRORS_MAP:bfe,appendStackTrace:Efe}=Ci(),{kChildren:t1,kHooks:vfe,kRequestPayloadStream:_fe}=Qs();function r1(){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=[]}r1.prototype=Object.create(null);r1.prototype.validate=function(t,e){if(typeof t!="string")throw new lht;if(Array.isArray(this[t])===!1)throw new pht(t);if(typeof e!="function")throw new dht(t,Object.prototype.toString.call(e))};r1.prototype.add=function(t,e){this.validate(t,e),this[t].push(e)};function mht(t){let e=new r1;return e.onRequest=t.onRequest.slice(),e.preParsing=t.preParsing.slice(),e.preValidation=t.preValidation.slice(),e.preSerialization=t.preSerialization.slice(),e.preHandler=t.preHandler.slice(),e.onSend=t.onSend.slice(),e.onResponse=t.onResponse.slice(),e.onError=t.onError.slice(),e.onRoute=t.onRoute.slice(),e.onRegister=t.onRegister.slice(),e.onTimeout=t.onTimeout.slice(),e.onRequestAbort=t.onRequestAbort.slice(),e.onReady=[],e.onListen=[],e.preClose=[],e}function Cfe(t,e,r,n){let s=r[vfe][t],i=0,a=0;c();function o(l){if(l){l.code==="AVV_ERR_READY_TIMEOUT"?l=Efe(l,new fht(t)):l=bfe[l.code]!=null?Efe(l,new bfe[l.code](l.message)):l,n(l);return}n()}function c(l){if(l){o(l);return}if(i===s.length&&a===r[t1].length){i===0&&a===0?o():e(function(f,p){o(f),p(f)});return}if(i===s.length&&a{"use strict";var vht=require("node:http"),Cht=require("node:https"),Iht=require("node:dns"),{FSTDEP011:Rfe}=cd(),{kState:Ii,kOptions:Tht,kServerBindings:wht}=Qs(),{onListenHookRunner:aR}=up(),{FST_ERR_HTTP2_INVALID_VERSION:Rht,FST_ERR_REOPENED_CLOSE_SERVER:Pfe,FST_ERR_REOPENED_SERVER:Dfe,FST_ERR_LISTEN_OPTIONS_INVALID:Nht}=Ci();K6.exports.createServer=Oht;K6.exports.compileValidateHTTPVersion=Dht;function kfe(t){return`Server listening at ${t}`}function Oht(t,e){let r=Bfe(t,e);function n(s,...i){let a=i.slice(-1).pop(),o=Object.prototype.toString.call(arguments[0]);if(arguments.length===0)s=z6([]);else if(arguments.length>0&&o!=="[object Object]"&&o!=="[object Function]")Rfe(),s=z6(Array.from(arguments)),a=s.cb;else if(i.length>1){Rfe();let u=s.path?[s.path]:[s.port??0,s.host??"localhost"];Object.assign(s,z6([...u,...i]))}else s.cb=a;if(s.signal){if(typeof s.signal.on!="function"&&typeof s.signal.addEventListener!="function")throw new Nht("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}Nfe.call(this,r,e,t,s,()=>{this[Ii].listening=!0,a(null,l),aR(this)})}:s.cb=(u,l)=>{if(u){a(u,l);return}this[Ii].listening=!0,a(null,l),aR(this)},a===void 0)return Pht.call(this,r,s).then(l=>new Promise((d,f)=>{c==="localhost"?Nfe.call(this,r,e,t,s,()=>{this[Ii].listening=!0,d(l),aR(this)}):(d(l),aR(this))}));this.ready(Lfe.call(this,r,s))}return{server:r,listen:n}}function Nfe(t,e,r,n,s){this[Ii].listening=!1,Iht.lookup(n.host,{all:!0},(i,a)=>{if(i){s();return}let o=t.listening&&r.serverFactory,c=0,u=0;if(!o){let d=t.address();for(let f of a)if(f.address!==d.address){c++;let p=Object.assign({},n,{host:f.address,port:d.port,cb:A=>{u++,A||this[wht].push(m),u===c&&s()}}),m=Bfe(r,e),h=()=>{m.close(()=>{}),r.forceCloseConnections==="idle"?m.closeIdleConnections():typeof m.closeAllConnections=="function"&&r.forceCloseConnections&&m.closeAllConnections()};m.on("upgrade",t.emit.bind(t,"upgrade")),t.on("unref",h),t.on("close",h),t.on("error",h),this[Ii].listening=!1,Lfe.call(this,m,p)()}}if(c===0){s();return}let l=t.unref;t.unref=function(){l.call(t),t.emit("unref")}})}function Lfe(t,e){let r=n=>{if(t.removeListener("error",r),n)this[Ii].listening=!1,e.cb(n,null);else{let s=Mfe.call(this,t,e.listenTextResolver||kfe);e.cb(null,s)}};return n=>{if(n!=null)return e.cb(n);if(this[Ii].listening&&this[Ii].closing)return e.cb(new Pfe,null);if(this[Ii].listening)return e.cb(new Dfe,null);t.once("error",r),this[Ii].closing||(t.listen(e,r),this[Ii].listening=!0)}}function Pht(t,e){return this[Ii].listening&&this[Ii].closing?Promise.reject(new Pfe):this[Ii].listening?Promise.reject(new Dfe):this.ready().then(()=>{let r,n=new Promise((i,a)=>{r=o=>{this[Ii].listening=!1,a(o)},t.once("error",r)}),s=new Promise((i,a)=>{t.listen(e,()=>{t.removeListener("error",r),i(Mfe.call(this,t,e.listenTextResolver||kfe))}),this[Ii].listening=!0});return Promise.race([n,s])})}function Dht(t){let e=!1,r=new Map;return t.serverFactory&&(e=!0),t.http2?(r.set("2.0",!0),t.https&&t.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 e||r.has(s)}}function Bfe(t,e){let r=null,n=t.https===!0?{}:t.https;return t.serverFactory?r=t.serverFactory(e,t):t.http2?(typeof n=="object"?r=Ofe().createSecureServer(n,e):r=Ofe().createServer(e),r.on("session",Lht(t.http2SessionTimeout))):(n?r=Cht.createServer(n,e):r=vht.createServer(t.http,e),r.keepAliveTimeout=t.keepAliveTimeout,r.requestTimeout=t.requestTimeout,t.maxRequestsPerSocket>0&&(r.maxRequestsPerSocket=t.maxRequestsPerSocket)),t.serverFactory||r.setTimeout(t.connectionTimeout),r}function z6(t){if(t.length===0)return{port:0,host:"localhost"};let r={cb:typeof t[t.length-1]=="function"?t.pop():void 0},n=t[0],s=t.length,i=t[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:kht(n),r.host=s>=2&&t[1]?t[1]:"localhost",r.backlog=s>=3?t[2]:void 0),r}function kht(t){let e=Number(t);return e>=0&&!Number.isNaN(e)&&Number.isInteger(e)?e:0}function Mfe(t,e){let r=t.address(),n=typeof r=="string";n||(r.address.indexOf(":")===-1?r=r.address+":"+r.port:r="["+r.address+"]:"+r.port),r=(n?"":"http"+(this[Tht].https?"s":"")+"://")+r;let s=e(r);return this.log.info(s),r}function Ofe(){try{return require("node:http2")}catch{throw new Rht}}function Lht(t){return function(e){e.setTimeout(t,Bht)}}function Bht(){this.close()}});var Z6=E((BOr,Ffe)=>{"use strict";var{kSchemaHeaders:uR,kSchemaParams:Y6,kSchemaQuerystring:J6,kSchemaBody:X6,kSchemaResponse:$fe}=Qs(),Mht=/^[1-5]{1}[0-9]{2}$|^[1-5]xx$|^default$/,{FST_ERR_SCH_RESPONSE_SCHEMA_NOT_NESTED_2XX:Wht}=Ci(),{FSTWRN001:oR}=cd();function $ht(t,e){if(!t.schema||!t.schema.response)return;let{method:r,url:n}=t.config||{};t[$fe]=Object.keys(t.schema.response).reduce(function(s,i){let a=t.schema.response[i];if(i=i.toLowerCase(),!Mht.exec(i))throw new Wht;if(a.content){let o={};for(let c of Object.keys(a.content)){let u=a.content[c].schema;o[c]=e({schema:u,url:n,method:r,httpStatus:i,contentType:c})}s[i]=o}else s[i]=e({schema:a,url:n,method:r,httpStatus:i});return s},{})}function Fht(t,e,r){let{schema:n}=t;if(!n)return;let{method:s,url:i}=t.config||{},a=n.headers;if(a&&(r||Object.getPrototypeOf(a)!==Object.prototype))t[uR]=e({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]})),t[uR]=e({schema:o,method:s,url:i,httpPart:"headers"})}else Object.prototype.hasOwnProperty.call(n,"headers")&&oR("headers",s,i);n.body?t[X6]=e({schema:n.body,method:s,url:i,httpPart:"body"}):Object.prototype.hasOwnProperty.call(n,"body")&&oR("body",s,i),n.querystring?t[J6]=e({schema:n.querystring,method:s,url:i,httpPart:"querystring"}):Object.prototype.hasOwnProperty.call(n,"querystring")&&oR("querystring",s,i),n.params?t[Y6]=e({schema:n.params,method:s,url:i,httpPart:"params"}):Object.prototype.hasOwnProperty.call(n,"params")&&oR("params",s,i)}function cR(t,e,r){let n=e[r]===void 0,s=t&&t(n?null:e[r]);if(s?.then)return s.then(a=>i(a)).catch(a=>a);return i(s);function i(a){return a===!1?t.errors:a&&a.error?a.error:(a&&a.value&&(e[r]=a.value),!1)}}function lR(t,e,r){let n=r===void 0;if(n||!r.skipParams){let i=cR(t[Y6],e,"params");if(i)return typeof i.then!="function"?lp(i,"params",t.schemaErrorFormatter):Uht(i,t,e)}if(n||!r.skipBody){let i=cR(t[X6],e,"body");if(i)return typeof i.then!="function"?lp(i,"body",t.schemaErrorFormatter):qht(i,t,e)}if(n||!r.skipQuery){let i=cR(t[J6],e,"query");if(i)return typeof i.then!="function"?lp(i,"querystring",t.schemaErrorFormatter):jht(i,t,e)}let s=cR(t[uR],e,"headers");return s?typeof s.then!="function"?lp(s,"headers",t.schemaErrorFormatter):Hht(s,t,e):!1}function Uht(t,e,r){return t.then(n=>n?lp(n,"params",e.schemaErrorFormatter):lR(e,r,{skipParams:!0}))}function qht(t,e,r){return t.then(n=>n?lp(n,"body",e.schemaErrorFormatter):lR(e,r,{skipParams:!0,skipBody:!0}))}function jht(t,e,r){return t.then(n=>n?lp(n,"querystring",e.schemaErrorFormatter):lR(e,r,{skipParams:!0,skipBody:!0,skipQuery:!0}))}function Hht(t,e,r){return t.then(n=>n?lp(n,"headers",e.schemaErrorFormatter):!1)}function lp(t,e,r){if(t instanceof Error)return t.statusCode=t.statusCode||400,t.code=t.code||"FST_ERR_VALIDATION",t.validationContext=t.validationContext||e,t;let n=r(t,e);return n.statusCode=n.statusCode||400,n.code=n.code||"FST_ERR_VALIDATION",n.validation=t,n.validationContext=e,n}Ffe.exports={symbols:{bodySchema:X6,querystringSchema:J6,responseSchema:$fe,paramsSchema:Y6,headersSchema:uR},compileSchemasForValidation:Fht,compileSchemasForSerialization:$ht,validate:lR}});var e5=E((MOr,qfe)=>{"use strict";var{kReplyIsError:Ufe,kReplyHijacked:Qht}=Qs();function Ght(t,e){t.then(function(r){if(e[Qht]!==!0&&(r!==void 0||e.sent===!1&&e.raw.headersSent===!1&&e.request.raw.aborted===!1))try{e.send(r)}catch(n){e[Ufe]=!0,e.send(n)}},function(r){if(e.sent===!0){e.log.error({err:r},"Promise errored, but reply.sent = true was set");return}e[Ufe]=!0;try{e.send(r)}catch(n){e.send(n)}})}qfe.exports=Ght});var s5=E((WOr,n5)=>{"use strict";var{validate:Vht}=Z6(),{preValidationHookRunner:zht,preHandlerHookRunner:Kht}=up(),Yht=e5(),{kReplyIsError:dR,kRouteContext:fp}=Qs();function Jht(t,e,r){if(r.sent===!0)return;if(t!=null){r[dR]=!0,r.send(t);return}let n=e.raw.method,s=e.headers,i=e[fp];if(n==="GET"||n==="HEAD"){dp(e,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)?dp(e,r):i.contentTypeParser.run("",dp,e,r):i.contentTypeParser.run(a,dp,e,r);return}if(n==="OPTIONS"||n==="DELETE"){a!==void 0&&(s["transfer-encoding"]!==void 0||s["content-length"]!==void 0)?i.contentTypeParser.run(a,dp,e,r):dp(e,r);return}dp(e,r)}function dp(t,e){try{t[fp].preValidation!==null?zht(t[fp].preValidation,t,e,t5):t5(null,t,e)}catch(r){t5(r,t,e)}}function t5(t,e,r){if(r.sent===!0)return;if(t!=null){r[dR]=!0,r.send(t);return}let n=Vht(r[fp],e);if(n&&typeof n.then=="function"||!1){let i=jfe.bind(null,e,r);n.then(i,i)}else jfe(e,r,n)}function jfe(t,e,r){if(r){if(e[fp].attachValidation===!1){e.send(r);return}e.request.validationError=r}t[fp].preHandler!==null?Kht(t[fp].preHandler,t,e,r5):r5(null,t,e)}function r5(t,e,r){if(r.sent)return;if(t!=null){r[dR]=!0,r.send(t);return}let n;try{n=e[fp].handler(e,r)}catch(s){r[dR]=!0,r.send(s);return}n!==void 0&&(n!==null&&typeof n.then=="function"?Yht(n,r):r.send(n))}n5.exports=Jht;n5.exports[Symbol.for("internals")]={handler:dp,preHandlerCallback:r5}});var Qfe=E(($Or,Hfe)=>{"use strict";function WA(){}var Xht={fatal:WA,error:WA,warn:WA,info:WA,debug:WA,trace:WA};Object.defineProperty(Hfe,"exports",{get(){return Object.create(Xht)}})});var a5=E((FOr,zfe)=>{"use strict";var s1=t=>t&&typeof t.message=="string",i5=t=>{if(!t)return;let e=t.cause;if(typeof e=="function"){let r=t.cause();return s1(r)?r:void 0}else return s1(e)?e:void 0},Gfe=(t,e)=>{if(!s1(t))return"";let r=t.stack||"";if(e.has(t))return r+` -causes have become circular...`;let n=i5(t);return n?(e.add(t),r+` -caused by: `+Gfe(n,e)):r},Zht=t=>Gfe(t,new Set),Vfe=(t,e,r)=>{if(!s1(t))return"";let n=r?"":t.message||"";if(e.has(t))return n+": ...";let s=i5(t);if(s){e.add(t);let i=typeof t.cause=="function";return n+(i?"":": ")+Vfe(s,e,i)}else return n},egt=t=>Vfe(t,new Set);zfe.exports={isErrorLike:s1,getErrorCause:i5,stackWithCauses:Zht,messageWithCauses:egt}});var o5=E((UOr,Yfe)=>{"use strict";var tgt=Symbol("circular-ref-tag"),fR=Symbol("pino-raw-err-ref"),Kfe=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[fR]},set:function(t){this[fR]=t}}});Object.defineProperty(Kfe,fR,{writable:!0,value:{}});Yfe.exports={pinoErrProto:Kfe,pinoErrorSymbols:{seen:tgt,rawSymbol:fR}}});var Zfe=E((qOr,Xfe)=>{"use strict";Xfe.exports=u5;var{messageWithCauses:rgt,stackWithCauses:ngt,isErrorLike:Jfe}=a5(),{pinoErrProto:sgt,pinoErrorSymbols:igt}=o5(),{seen:c5}=igt,{toString:agt}=Object.prototype;function u5(t){if(!Jfe(t))return t;t[c5]=void 0;let e=Object.create(sgt);e.type=agt.call(t.constructor)==="[object Function]"?t.constructor.name:t.name,e.message=rgt(t),e.stack=ngt(t),Array.isArray(t.errors)&&(e.aggregateErrors=t.errors.map(r=>u5(r)));for(let r in t)if(e[r]===void 0){let n=t[r];Jfe(n)?r!=="cause"&&!Object.prototype.hasOwnProperty.call(n,c5)&&(e[r]=u5(n)):e[r]=n}return delete t[c5],e.raw=t,e}});var tpe=E((jOr,epe)=>{"use strict";epe.exports=mR;var{isErrorLike:l5}=a5(),{pinoErrProto:ogt,pinoErrorSymbols:cgt}=o5(),{seen:pR}=cgt,{toString:ugt}=Object.prototype;function mR(t){if(!l5(t))return t;t[pR]=void 0;let e=Object.create(ogt);e.type=ugt.call(t.constructor)==="[object Function]"?t.constructor.name:t.name,e.message=t.message,e.stack=t.stack,Array.isArray(t.errors)&&(e.aggregateErrors=t.errors.map(r=>mR(r))),l5(t.cause)&&!Object.prototype.hasOwnProperty.call(t.cause,pR)&&(e.cause=mR(t.cause));for(let r in t)if(e[r]===void 0){let n=t[r];l5(n)?Object.prototype.hasOwnProperty.call(n,pR)||(e[r]=mR(n)):e[r]=n}return delete t[pR],e.raw=t,e}});var ipe=E((HOr,spe)=>{"use strict";spe.exports={mapHttpRequest:lgt,reqSerializer:npe};var d5=Symbol("pino-raw-req-ref"),rpe=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[d5]},set:function(t){this[d5]=t}}});Object.defineProperty(rpe,d5,{writable:!0,value:{}});function npe(t){let e=t.info||t.socket,r=Object.create(rpe);if(r.id=typeof t.id=="function"?t.id():t.id||(t.info?t.info.id:void 0),r.method=t.method,t.originalUrl)r.url=t.originalUrl;else{let n=t.path;r.url=typeof n=="string"?n:t.url?t.url.path||t.url:void 0}return t.query&&(r.query=t.query),t.params&&(r.params=t.params),r.headers=t.headers,r.remoteAddress=e&&e.remoteAddress,r.remotePort=e&&e.remotePort,r.raw=t.raw||t,r}function lgt(t){return{req:npe(t)}}});var upe=E((QOr,cpe)=>{"use strict";cpe.exports={mapHttpResponse:dgt,resSerializer:ope};var f5=Symbol("pino-raw-res-ref"),ape=Object.create({},{statusCode:{enumerable:!0,writable:!0,value:0},headers:{enumerable:!0,writable:!0,value:""},raw:{enumerable:!1,get:function(){return this[f5]},set:function(t){this[f5]=t}}});Object.defineProperty(ape,f5,{writable:!0,value:{}});function ope(t){let e=Object.create(ape);return e.statusCode=t.headersSent?t.statusCode:null,e.headers=t.getHeaders?t.getHeaders():t._headers,e.raw=t,e}function dgt(t){return{res:ope(t)}}});var m5=E((GOr,lpe)=>{"use strict";var p5=Zfe(),fgt=tpe(),hR=ipe(),gR=upe();lpe.exports={err:p5,errWithCause:fgt,mapHttpRequest:hR.mapHttpRequest,mapHttpResponse:gR.mapHttpResponse,req:hR.reqSerializer,res:gR.resSerializer,wrapErrorSerializer:function(e){return e===p5?e:function(n){return e(p5(n))}},wrapRequestSerializer:function(e){return e===hR.reqSerializer?e:function(n){return e(hR.reqSerializer(n))}},wrapResponseSerializer:function(e){return e===gR.resSerializer?e:function(n){return e(gR.resSerializer(n))}}}});var h5=E((VOr,dpe)=>{"use strict";function pgt(t,e){return e}dpe.exports=function(){let e=Error.prepareStackTrace;Error.prepareStackTrace=pgt;let r=new Error().stack;if(Error.prepareStackTrace=e,!Array.isArray(r))return;let n=r.slice(2),s=[];for(let i of n)i&&s.push(i.getFileName());return s}});var ppe=E((zOr,fpe)=>{"use strict";fpe.exports=mgt;function mgt(t={}){let{ERR_PATHS_MUST_BE_STRINGS:e=()=>"fast-redact - Paths must be (non-empty) strings",ERR_INVALID_PATH:r=n=>`fast-redact \u2013 Invalid path (${n})`}=t;return function({paths:s}){s.forEach(i=>{if(typeof i!="string")throw Error(e());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(` +var ZAt=Object.create;var _N=Object.defineProperty;var ext=Object.getOwnPropertyDescriptor;var txt=Object.getOwnPropertyNames;var rxt=Object.getPrototypeOf,nxt=Object.prototype.hasOwnProperty;var gr=(t,e)=>()=>(t&&(e=t(t=0)),e);var _=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),os=(t,e)=>{for(var r in e)_N(t,r,{get:e[r],enumerable:!0})},v0e=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of txt(e))!nxt.call(t,s)&&s!==r&&_N(t,s,{get:()=>e[s],enumerable:!(n=ext(e,s))||n.enumerable});return t};var Ce=(t,e,r)=>(r=t!=null?ZAt(rxt(t)):{},v0e(e||!t||!t.__esModule?_N(r,"default",{value:t,enumerable:!0}):r,t)),sxt=t=>v0e(_N({},"__esModule",{value:!0}),t);var I0e=_((SMr,S0e)=>{"use strict";function ixt(t){var e=new t,r=e;function n(){var i=e;return i.next?e=i.next:(e=new t,r=e),i.next=null,i}function s(i){r.next=i,r=i}return{get:n,release:s}}S0e.exports=ixt});var T0e=_((IMr,MW)=>{"use strict";var axt=I0e();function C0e(t,e,r){if(typeof t=="function"&&(r=e,e=t,t=null),!(r>=1))throw new Error("fastqueue concurrency must be equal to or greater than 1");var n=axt(oxt),s=null,i=null,a=0,o=null,c={push:h,drain:$a,saturated:$a,pause:l,paused:!1,get concurrency(){return r},set concurrency(I){if(!(I>=1))throw new Error("fastqueue concurrency must be equal to or greater than 1");if(r=I,!c.paused)for(;s&&a=r||c.paused?i?(i.next=w,i=w):(s=w,i=w,c.saturated()):(a++,e.call(t,w.value,w.worked))}function y(I,R){var w=n.get();w.context=t,w.release=g,w.value=I,w.callback=R||$a,w.errorHandler=o,a>=r||c.paused?s?(w.next=s,s=w):(s=w,i=w,c.saturated()):(a++,e.call(t,w.value,w.worked))}function g(I){I&&n.release(I);var R=s;R&&a<=r?c.paused?a--:(i===s&&(i=null),s=R.next,R.next=null,e.call(t,R.value,R.worked),i===null&&c.empty()):--a===0&&c.drain()}function b(){s=null,i=null,c.drain=$a}function x(){s=null,i=null,c.drain(),c.drain=$a}function A(){var I=s;for(s=null,i=null;I;){var R=I.next,w=I.callback,N=I.errorHandler,k=I.value,B=I.context;I.value=null,I.callback=$a,I.errorHandler=null,N&&N(new Error("abort"),k),w.call(B,new Error("abort")),I.release(I),I=R}c.drain=$a}function S(I){o=I}}function $a(){}function oxt(){this.value=null,this.callback=$a,this.next=null,this.release=$a,this.context=null,this.errorHandler=null;var t=this;this.worked=function(r,n){var s=t.callback,i=t.errorHandler,a=t.value;t.value=null,t.callback=$a,t.errorHandler&&i(r,a),s.call(t.context,r,n),t.release(t)}}function cxt(t,e,r){typeof t=="function"&&(r=e,e=t,t=null);function n(l,d){e.call(this,l).then(function(f){d(null,f)},d)}var s=C0e(t,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,p){i(l,function(m,h){if(m){p(m);return}f(h)})});return d.catch($a),d}function c(l){var d=new Promise(function(f,p){a(l,function(m,h){if(m){p(m);return}f(h)})});return d.catch($a),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}}MW.exports=C0e;MW.exports.promise=cxt});var $W=_((CMr,EN)=>{"use strict";var{format:uxt}=require("node:util");function lxt(){return`${this.name} [${this.code}]: ${this.message}`}function WW(t,e,r=500,n=Error){if(!t)throw new Error("Fastify error code must not be empty");if(!e)throw new Error("Fastify error message must not be empty");t=t.toUpperCase(),!r&&(r=void 0);function s(...i){if(!new.target)return new s(...i);this.code=t,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=uxt(e,...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=lxt,s}EN.exports=WW;EN.exports.default=WW;EN.exports.createError=WW});var vN=_((TMr,w0e)=>{"use strict";var{createError:wp}=$W();w0e.exports={AVV_ERR_EXPOSE_ALREADY_DEFINED:wp("AVV_ERR_EXPOSE_ALREADY_DEFINED","'%s' is already defined, specify an expose option for '%s'"),AVV_ERR_ATTRIBUTE_ALREADY_DEFINED:wp("AVV_ERR_ATTRIBUTE_ALREADY_DEFINED","'%s' is already defined"),AVV_ERR_CALLBACK_NOT_FN:wp("AVV_ERR_CALLBACK_NOT_FN","Callback for '%s' hook is not a function. Received: '%s'"),AVV_ERR_PLUGIN_NOT_VALID:wp("AVV_ERR_PLUGIN_NOT_VALID","Plugin must be a function or a promise. Received: '%s'"),AVV_ERR_ROOT_PLG_BOOTED:wp("AVV_ERR_ROOT_PLG_BOOTED","Root plugin has already booted"),AVV_ERR_PARENT_PLG_LOADED:wp("AVV_ERR_PARENT_PLG_LOADED","Impossible to load '%s' plugin because the parent '%s' was already loaded"),AVV_ERR_READY_TIMEOUT:wp("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:wp("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 pA=_((wMr,R0e)=>{"use strict";var dxt=Symbol("avvio.Boot"),fxt=Symbol("isOnCloseHandler"),pxt=Symbol("avvio.ThenifyDoNotWrap"),mxt=Symbol("avvio.TimeTree.untrackNode"),hxt=Symbol("avvio.TimeTree.trackNode"),gxt=Symbol("avvio.TimeTree.getParent"),yxt=Symbol("avvio.TimeTree.getNode"),Axt=Symbol("avvio.TimeTree.addNode"),xxt=Symbol.for("plugin-meta");R0e.exports={kAvvio:dxt,kIsOnCloseHandler:fxt,kThenifyDoNotWrap:pxt,kUntrackNode:mxt,kTrackNode:hxt,kGetParent:gxt,kGetNode:yxt,kAddNode:Axt,kPluginMeta:xxt}});var L0e=_((RMr,B0e)=>{"use strict";var{kUntrackNode:N0e,kTrackNode:UW,kGetParent:O0e,kGetNode:k0e,kAddNode:P0e}=pA(),FW=class{constructor(){this.root=null,this.tableId=new Map,this.tableLabel=new Map}[UW](e){this.tableId.set(e.id,e),this.tableLabel.has(e.label)?this.tableLabel.get(e.label).push(e):this.tableLabel.set(e.label,[e])}[N0e](e){this.tableId.delete(e.id);let r=this.tableLabel.get(e.label);r.pop(),r.length===0&&this.tableLabel.delete(e.label)}[O0e](e){if(e===null)return null;if(this.tableLabel.has(e)){let r=this.tableLabel.get(e);return r[r.length-1]}else return null}[k0e](e){return this.tableId.get(e)}[P0e](e,r,n){let s=this[O0e](e);if(s===null)return this.root={parent:null,id:"root",label:r,nodes:[],start:n,stop:null,diff:-1},this[UW](this.root),this.root.id;let a=`${r}-${Math.random()}`,o={parent:e,id:a,label:r,nodes:[],start:n,stop:null,diff:-1};return s.nodes.push(o),this[UW](o),a}start(e,r,n=Date.now()){return this[P0e](e,r,n)}stop(e,r=Date.now()){let n=this[k0e](e);n&&(n.stop=r,n.diff=n.stop-n.start||0,this[N0e](n))}toJSON(){return Object.assign({},this.root)}prettyPrint(){return D0e(this.toJSON())}};function D0e(t,e=""){let r=e,n=t.nodes.length,s=n-1;r+=`${t.label} ${t.diff} ms +`;for(let i=0;i{"use strict";var{debuglog:bxt}=require("node:util"),_xt=bxt("avvio");M0e.exports={debug:_xt}});var $0e=_((OMr,W0e)=>{"use strict";function Ext(){let t={resolve:null,reject:null,promise:null};return t.promise=new Promise((e,r)=>{t.resolve=e,t.reject=r}),t}W0e.exports={createPromise:Ext}});var F0e=_((kMr,U0e)=>{"use strict";var{kPluginMeta:qW}=pA();function vxt(t,e){return t[qW]&&t[qW].name?t[qW].name:e&&e.name?e.name:t.name?t.name:t.toString().split(` +`).slice(0,2).map(r=>r.trim()).join(" -- ")}U0e.exports={getPluginName:vxt}});var IN=_((PMr,q0e)=>{"use strict";function Sxt(t){return t!==null&&typeof t=="object"&&typeof t.then=="function"}q0e.exports={isPromiseLike:Sxt}});var Q0e=_((DMr,j0e)=>{"use strict";var{EventEmitter:Ixt}=require("node:events"),{inherits:Cxt}=require("node:util"),{debug:hi}=SN(),{createPromise:Txt}=$0e(),{AVV_ERR_PLUGIN_EXEC_TIMEOUT:wxt}=vN(),{getPluginName:Rxt}=F0e(),{isPromiseLike:Nxt}=IN();function mA(t,e,r,n,s){this.queue=t,this.func=e,this.options=r,this.isAfter=n,this.timeout=s,this.started=!1,this.name=Rxt(e,r),this.queue.pause(),this._error=null,this.loaded=!1,this._promise=null,this.startTime=null}Cxt(mA,Ixt);mA.prototype.exec=function(t,e){hi("exec",this.name),this.server=t;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){hi("loading complete",n);return}this._error=c,hi(c?"exec errored":"exec completed",n),s=!0,i&&clearTimeout(i),e(c)};this.timeout>0&&(hi("setting up timeout",n,this.timeout),i=setTimeout(function(){hi("timed out",n),i=null;let c=new wxt(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);Nxt(o)&&(hi("exec: resolving promise",n),o.then(()=>process.nextTick(a),c=>process.nextTick(a,c)))};mA.prototype.loadedSoFar=function(){if(hi("loadedSoFar",this.name),this.loaded)return Promise.resolve();let t=()=>{this.server.after((r,n)=>{this._error=r,this.queue.pause(),this._promise&&(r?(hi("rejecting promise",this.name,r),this._promise.reject(r)):(hi("resolving promise",this.name),this._promise.resolve()),this._promise=null),process.nextTick(n,r)}),this.queue.resume()},e;return this._promise?e=Promise.resolve():(this._promise=Txt(),e=this._promise.promise,this.server?t():this.on("start",t)),e};mA.prototype.enqueue=function(t,e){hi("enqueue",this.name,t.name),this.emit("enqueue",this.server?this.server.name:null,this.name,Date.now()),this.queue.push(t,e)};mA.prototype.finish=function(t,e){hi("finish",this.name,t);let r=()=>{this.loaded||(hi("loaded",this.name),this.emit("loaded",this.server?this.server.name:null,this.name,Date.now()),this.loaded=!0,e(t))};if(t){this._promise&&(this._promise.reject(t),this._promise=null),r();return}let n=()=>{if(hi("check",this.name,this.queue.length(),this.queue.running(),this._promise),this.queue.length()===0&&this.queue.running()===0)if(this._promise){let s=()=>{hi("wrap"),queueMicrotask(n)};this._promise.resolve(),this._promise.promise.then(s,s),this._promise=null}else r();else hi("delayed",this.name),this.queue.drain=()=>{hi("drain",this.name),this.queue.drain=Oxt,queueMicrotask(n)}};queueMicrotask(n),this.queue.resume()};function Oxt(){}j0e.exports={Plugin:mA}});var G0e=_((BMr,H0e)=>{"use strict";var{AVV_ERR_PLUGIN_NOT_VALID:jW}=vN();function kxt(t){if(!(t&&(typeof t=="function"||typeof t.then=="function")))throw Array.isArray(t)?new jW("array"):t===null?new jW("null"):new jW(typeof t)}H0e.exports={validatePlugin:kxt}});var K0e=_((LMr,z0e)=>{"use strict";function Pxt(t){return t!==null&&typeof t=="object"&&typeof t.default=="function"}z0e.exports={isBundledOrTypescriptPlugin:Pxt}});var J0e=_((MMr,Y0e)=>{"use strict";var{debug:V0e}=SN(),{kThenifyDoNotWrap:QW}=pA();function Dxt(){if(this.booted){V0e("thenify returning undefined because we are already booted");return}if(this[QW]){this[QW]=!1;return}return V0e("thenify"),(t,e)=>this._loadRegistered().then(()=>(this[QW]=!0,t(this._server)),e)}Y0e.exports={thenify:Dxt}});var Z0e=_((WMr,X0e)=>{"use strict";var{isPromiseLike:Bxt}=IN(),{kAvvio:Lxt}=pA();function Mxt(t,e,r){let n=t.apply(t,e);Bxt(n)&&!n[Lxt]?n.then(()=>process.nextTick(r),s=>process.nextTick(r,s)):r&&process.nextTick(r)}X0e.exports={executeWithThenable:Mxt}});var ome=_(($Mr,GW)=>{"use strict";var CN=T0e(),Wxt=require("node:events").EventEmitter,$xt=require("node:util").inherits,{AVV_ERR_EXPOSE_ALREADY_DEFINED:aE,AVV_ERR_CALLBACK_NOT_FN:hA,AVV_ERR_ROOT_PLG_BOOTED:Uxt,AVV_ERR_READY_TIMEOUT:Fxt,AVV_ERR_ATTRIBUTE_ALREADY_DEFINED:qxt}=vN(),{kAvvio:rme,kIsOnCloseHandler:nme}=pA(),{TimeTree:jxt}=L0e(),{Plugin:sme}=Q0e(),{debug:gA}=SN(),{validatePlugin:Qxt}=G0e(),{isBundledOrTypescriptPlugin:Hxt}=K0e(),{isPromiseLike:Gxt}=IN(),{thenify:ime}=J0e(),{executeWithThenable:eme}=Z0e();function cs(t,e,r){if(typeof t=="function"&&arguments.length===1&&(r=t,e={},t=null),typeof e=="function"&&(r=e,e={}),e=e||{},e.autostart=e.autostart!==!1,e.timeout=Number(e.timeout)||0,e.expose=e.expose||{},!new.target)return new cs(t,e,r);this._server=t||this,this._opts=e,t&&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 jxt,this._readyQ=CN(this,ame,1),this._readyQ.pause(),this._readyQ.drain=()=>{this.emit("start"),this._readyQ.drain=tme},this._closeQ=CN(this,Kxt,1),this._closeQ.pause(),this._closeQ.drain=()=>{this.emit("close"),this._closeQ.drain=tme},this._doStart=null;let n=this;this._root=new sme(CN(this,this._loadPluginNextTick,1),function(i,a,o){n._doStart=o,a.autostart&&n.start()},e,!1,0),this._trackPluginLoading(this._root),this._loadPlugin(this._root,s=>{gA("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()})}$xt(cs,Wxt);cs.prototype.start=function(){return this.started=!0,process.nextTick(this._doStart),this};cs.prototype.override=function(t,e,r){return t};cs.prototype[rme]=!0;cs.prototype.use=function(t,e){return this._lastUsed=this._addPlugin(t,e,!1),this};cs.prototype._loadRegistered=function(){let t=this._current[0];return!this.started&&!this.booted&&process.nextTick(()=>this._root.queue.resume()),t?t.loadedSoFar():Promise.resolve()};Object.defineProperty(cs.prototype,"then",{get:ime});cs.prototype._addPlugin=function(t,e,r){if(Hxt(t)&&(t=t.default),Qxt(t),e=e||{},this.booted)throw new Uxt;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 sme(CN(this,this._loadPluginNextTick,1),t,e,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};cs.prototype._expose=function(){let e=this,r=e._server,{use:n="use",after:s="after",ready:i="ready",onClose:a="onClose",close:o="close"}=this._opts.expose;if(r[n])throw new aE(n,"use");if(r[n]=function(c,u){return e.use(c,u),this},r[s])throw new aE(s,"after");if(r[s]=function(c){return typeof c!="function"?e._loadRegistered():(e.after(HW(c,this)),this)},r[i])throw new aE(i,"ready");if(r[i]=function(c){if(c&&typeof c!="function")throw new hA(i,typeof c);return e.ready(c?HW(c,this):void 0)},r[a])throw new aE(a,"onClose");if(r[a]=function(c){if(typeof c!="function")throw new hA(a,typeof c);return e.onClose(Vxt(c,this)),this},r[o])throw new aE(o,"close");if(r[o]=function(c){if(c&&typeof c!="function")throw new hA(o,typeof c);return c?(e.close(HW(c,this)),this):e.close()},r.then)throw new qxt("then");Object.defineProperty(r,"then",{get:ime.bind(e)}),r[rme]=!0};cs.prototype.after=function(t){if(!t)return this._loadRegistered();this._addPlugin(e.bind(this),{},!0);function e(r,n,s){ame.call(this,t,s)}return this};cs.prototype.onClose=function(t){if(typeof t!="function")throw new hA("onClose",typeof t);return t[nme]=!0,this._closeQ.unshift(t,e=>{e&&(this._error=e)}),this};cs.prototype.close=function(t){let e;if(t){if(typeof t!="function")throw new hA("close",typeof t)}else e=new Promise(function(r,n){t=function(s){if(s)return n(s);r()}});return this.ready(()=>{this._error=null,this._closeQ.push(t),process.nextTick(this._closeQ.resume.bind(this._closeQ))}),e};cs.prototype.ready=function(t){if(t){if(typeof t!="function")throw new hA("ready",typeof t);this._readyQ.push(t),queueMicrotask(this.start.bind(this));return}return new Promise((e,r)=>{this._readyQ.push(s),this.start();let n=this._current[0].server;function s(i,a,o){i?r(i):e(n),process.nextTick(o)}})};cs.prototype._trackPluginLoading=function(t){let e=this._current[0]?.name||null;t.once("start",(r,n,s)=>{let i=this.pluginTree.start(e||null,n,s);t.once("loaded",(a,o,c)=>{this.pluginTree.stop(i,c)})})};cs.prototype.prettyPrint=function(){return this.pluginTree.prettyPrint()};cs.prototype.toJSON=function(){return this.pluginTree.toJSON()};cs.prototype._loadPlugin=function(t,e){let r=this;if(Gxt(t.func)){t.func.then(a=>{typeof a.default=="function"&&(a=a.default),t.func=a,this._loadPlugin(t,e)},e);return}let n=r._current[0];if(r._current.unshift(t),r._error&&!t.isAfter){gA("skipping loading of plugin as instance errored and it is not an after",t.name),process.nextTick(i);return}let s=n&&n.server||r._server;if(!t.isAfter)try{s=r.override(s,t.func,t.options)}catch(a){return gA("override errored",t.name),i(a)}t.exec(s,i);function i(a){t.finish(a,o=>{r._current.shift(),e(o)})}};cs.prototype._loadPluginNextTick=function(t,e){process.nextTick(this._loadPlugin.bind(this),t,e)};function tme(){}function ame(t,e){let r=this._server,n=this._error;if(this._error=null,t.length===0)this._error=n,eme(t,[],e);else if(t.length===1)eme(t,[n],e);else if(this._opts.timeout===0){let s=i=>{this._error=i,e(this._error)};t.length===2?t(n,s):t(n,r,s)}else zxt.call(this,t,n,r,e)}function zxt(t,e,r,n){let s=t.unwrappedName??t.name;gA("setting up ready timeout",s,this._opts.timeout);let i=setTimeout(()=>{gA("timed out",s),i=null;let o=new Fxt(s);o.fn=t,this._error=o,n(o)},this._opts.timeout);t.length===2?t(e,a.bind(this)):t(e,r,a.bind(this));function a(o){i&&(clearTimeout(i),this._error=o,n(this._error))}}function Kxt(t,e){let r=this._server,n=t[nme];if(t.length===0||t.length===1){let s;n?s=t(r):s=t(this._error),s&&typeof s.then=="function"?(gA("resolving close/onClose promise"),s.then(()=>process.nextTick(e),i=>process.nextTick(e,i))):process.nextTick(e)}else t.length===2?t(n?r:this._error,e):n?t(r,e):t(this._error,r,e)}function Vxt(t,e){return r.bind(e);function r(n,s){let i;t.length===0?(i=t(),i&&i.then?i.then(function(){process.nextTick(s)},s):process.nextTick(s)):t.length===1?(i=t(this),i&&i.then?i.then(function(){process.nextTick(s)},s):process.nextTick(s)):t(this,s)}}function HW(t,e){let r=n.bind(e);return r.unwrappedName=t.name,r;function n(s,i){let a;t?t.length===0?(a=t(),a&&a.then?a.then(function(){process.nextTick(i,s)},i):process.nextTick(i,s)):t.length===1?(a=t(s),a&&a.then?a.then(function(){process.nextTick(i)},i):process.nextTick(i)):t.length===2?t(s,i):t(s,this,i):process.nextTick(i)}}GW.exports=cs;GW.exports.express=function(t){return cs(t,{expose:{use:"load"}})}});var zs=_((UMr,cme)=>{"use strict";var Yxt={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")};cme.exports=Yxt});var VW=_((FMr,TN)=>{"use strict";var{format:zW}=require("node:util");function Jxt(t){return ume({...t,name:"DeprecationWarning"})}function ume({name:t,code:e,message:r,unlimited:n=!1}={}){if(!t)throw new Error("Warning name must not be empty");if(!e)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");e=e.toUpperCase();let s={[t]: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={[t]:function(a,o,c){i.emitted=!0,process.emitWarning(i.format(a,o,c),i.name,i.code)}});let i=s[t];return i.emitted=!1,i.message=r,i.unlimited=n,i.code=e,i.format=function(a,o,c){let u;return a&&o&&c?u=zW(r,a,o,c):a&&o?u=zW(r,a,o):a?u=zW(r,a):u=r,u},i}var KW={createWarning:ume,createDeprecation:Jxt};TN.exports=KW;TN.exports.default=KW;TN.exports.processWarning=KW});var wd=_((qMr,dme)=>{"use strict";var{createDeprecation:Pi,createWarning:lme}=VW(),Xxt=Pi({code:"FSTDEP005",message:'You are accessing the deprecated "request.connection" property. Use "request.socket" instead.'}),Zxt=Pi({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"}),ebt=Pi({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.'}),tbt=Pi({code:"FSTDEP008",message:'You are using route constraints via the route { version: "..." } option, use { constraints: { version: "..." } } option instead.'}),rbt=Pi({code:"FSTDEP009",message:'You are using a custom route versioning strategy via the server { versioning: "..." } option, use { constraints: { version: "..." } } option instead.'}),nbt=Pi({code:"FSTDEP010",message:'Modifying the "reply.sent" property is deprecated. Use the "reply.hijack()" method instead.'}),sbt=Pi({code:"FSTDEP011",message:'Variadic listen method is deprecated. Please use ".listen(optionsObject)" instead. The variadic signature will be removed in `fastify@5`.'}),ibt=Pi({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`.'}),abt=Pi({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`.'}),obt=Pi({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."}),cbt=Pi({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`.'}),ubt=Pi({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`.'}),lbt=Pi({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`.'}),dbt=Pi({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`.'}),fbt=Pi({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`.'}),pbt=Pi({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`.'}),mbt=lme({name:"FastifyWarning",code:"FSTWRN001",message:"The %s schema for %s: %s is missing. This may indicate the schema is not well specified.",unlimited:!0}),hbt=lme({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});dme.exports={FSTDEP005:Xxt,FSTDEP006:Zxt,FSTDEP007:ebt,FSTDEP008:tbt,FSTDEP009:rbt,FSTDEP010:nbt,FSTDEP011:sbt,FSTDEP012:ibt,FSTDEP013:abt,FSTDEP014:obt,FSTDEP015:cbt,FSTDEP016:ubt,FSTDEP017:lbt,FSTDEP018:dbt,FSTDEP019:fbt,FSTDEP020:pbt,FSTWRN001:mbt,FSTWRN002:hbt}});var Di=_((jMr,wN)=>{"use strict";var He=$W(),yA={FST_ERR_NOT_FOUND:He("FST_ERR_NOT_FOUND","Not Found",404),FST_ERR_OPTIONS_NOT_OBJ:He("FST_ERR_OPTIONS_NOT_OBJ","Options must be an object",500,TypeError),FST_ERR_QSP_NOT_FN:He("FST_ERR_QSP_NOT_FN","querystringParser option should be a function, instead got '%s'",500,TypeError),FST_ERR_SCHEMA_CONTROLLER_BUCKET_OPT_NOT_FN:He("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:He("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:He("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:He("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:He("FST_ERR_VERSION_CONSTRAINT_NOT_STR","Version constraint should be a string.",500,TypeError),FST_ERR_VALIDATION:He("FST_ERR_VALIDATION","%s",400),FST_ERR_LISTEN_OPTIONS_INVALID:He("FST_ERR_LISTEN_OPTIONS_INVALID","Invalid listen options: '%s'",500,TypeError),FST_ERR_CTP_ALREADY_PRESENT:He("FST_ERR_CTP_ALREADY_PRESENT","Content type parser '%s' already present."),FST_ERR_CTP_INVALID_TYPE:He("FST_ERR_CTP_INVALID_TYPE","The content type should be a string or a RegExp",500,TypeError),FST_ERR_CTP_EMPTY_TYPE:He("FST_ERR_CTP_EMPTY_TYPE","The content type cannot be an empty string",500,TypeError),FST_ERR_CTP_INVALID_HANDLER:He("FST_ERR_CTP_INVALID_HANDLER","The content type handler should be a function",500,TypeError),FST_ERR_CTP_INVALID_PARSE_TYPE:He("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:He("FST_ERR_CTP_BODY_TOO_LARGE","Request body is too large",413,RangeError),FST_ERR_CTP_INVALID_MEDIA_TYPE:He("FST_ERR_CTP_INVALID_MEDIA_TYPE","Unsupported Media Type: %s",415),FST_ERR_CTP_INVALID_CONTENT_LENGTH:He("FST_ERR_CTP_INVALID_CONTENT_LENGTH","Request body size did not match Content-Length",400,RangeError),FST_ERR_CTP_EMPTY_JSON_BODY:He("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:He("FST_ERR_CTP_INSTANCE_ALREADY_STARTED",'Cannot call "%s" when fastify instance is already started!',400),FST_ERR_DEC_ALREADY_PRESENT:He("FST_ERR_DEC_ALREADY_PRESENT","The decorator '%s' has already been added!"),FST_ERR_DEC_DEPENDENCY_INVALID_TYPE:He("FST_ERR_DEC_DEPENDENCY_INVALID_TYPE","The dependencies of decorator '%s' must be of type Array.",500,TypeError),FST_ERR_DEC_MISSING_DEPENDENCY:He("FST_ERR_DEC_MISSING_DEPENDENCY","The decorator is missing dependency '%s'."),FST_ERR_DEC_AFTER_START:He("FST_ERR_DEC_AFTER_START","The decorator '%s' has been added after start!"),FST_ERR_HOOK_INVALID_TYPE:He("FST_ERR_HOOK_INVALID_TYPE","The hook name must be a string",500,TypeError),FST_ERR_HOOK_INVALID_HANDLER:He("FST_ERR_HOOK_INVALID_HANDLER","%s hook should be a function, instead got %s",500,TypeError),FST_ERR_HOOK_INVALID_ASYNC_HANDLER:He("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:He("FST_ERR_HOOK_NOT_SUPPORTED","%s hook not supported!",500,TypeError),FST_ERR_MISSING_MIDDLEWARE:He("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:He("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:He("FST_ERR_LOG_INVALID_DESTINATION","Cannot specify both logger.stream and logger.file options"),FST_ERR_LOG_INVALID_LOGGER:He("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:He("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:He("FST_ERR_REP_RESPONSE_BODY_CONSUMED","Response.body is already consumed."),FST_ERR_REP_ALREADY_SENT:He("FST_ERR_REP_ALREADY_SENT",'Reply was already sent, did you forget to "return reply" in "%s" (%s)?'),FST_ERR_REP_SENT_VALUE:He("FST_ERR_REP_SENT_VALUE","The only possible value for reply.sent is true.",500,TypeError),FST_ERR_SEND_INSIDE_ONERR:He("FST_ERR_SEND_INSIDE_ONERR","You cannot use `send` inside the `onError` hook"),FST_ERR_SEND_UNDEFINED_ERR:He("FST_ERR_SEND_UNDEFINED_ERR","Undefined error has occurred"),FST_ERR_BAD_STATUS_CODE:He("FST_ERR_BAD_STATUS_CODE","Called reply with an invalid status code: %s"),FST_ERR_BAD_TRAILER_NAME:He("FST_ERR_BAD_TRAILER_NAME","Called reply.trailer with an invalid header name: %s"),FST_ERR_BAD_TRAILER_VALUE:He("FST_ERR_BAD_TRAILER_VALUE","Called reply.trailer('%s', fn) with an invalid type: %s. Expected a function."),FST_ERR_FAILED_ERROR_SERIALIZATION:He("FST_ERR_FAILED_ERROR_SERIALIZATION","Failed to serialize an error. Error: %s. Original error: %s"),FST_ERR_MISSING_SERIALIZATION_FN:He("FST_ERR_MISSING_SERIALIZATION_FN",'Missing serialization function. Key "%s"'),FST_ERR_MISSING_CONTENTTYPE_SERIALIZATION_FN:He("FST_ERR_MISSING_CONTENTTYPE_SERIALIZATION_FN",'Missing serialization function. Key "%s:%s"'),FST_ERR_REQ_INVALID_VALIDATION_INVOCATION:He("FST_ERR_REQ_INVALID_VALIDATION_INVOCATION",'Invalid validation invocation. Missing validation function for HTTP part "%s" nor schema provided.'),FST_ERR_SCH_MISSING_ID:He("FST_ERR_SCH_MISSING_ID","Missing schema $id property"),FST_ERR_SCH_ALREADY_PRESENT:He("FST_ERR_SCH_ALREADY_PRESENT","Schema with id '%s' already declared!"),FST_ERR_SCH_CONTENT_MISSING_SCHEMA:He("FST_ERR_SCH_CONTENT_MISSING_SCHEMA","Schema is missing for the content type '%s'"),FST_ERR_SCH_DUPLICATE:He("FST_ERR_SCH_DUPLICATE","Schema with '%s' already present!"),FST_ERR_SCH_VALIDATION_BUILD:He("FST_ERR_SCH_VALIDATION_BUILD","Failed building the validation schema for %s: %s, due to error %s"),FST_ERR_SCH_SERIALIZATION_BUILD:He("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:He("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:He("FST_ERR_HTTP2_INVALID_VERSION","HTTP2 is available only from node >= 8.8.1"),FST_ERR_INIT_OPTS_INVALID:He("FST_ERR_INIT_OPTS_INVALID","Invalid initialization options: '%s'"),FST_ERR_FORCE_CLOSE_CONNECTIONS_IDLE_NOT_AVAILABLE:He("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:He("FST_ERR_DUPLICATED_ROUTE","Method '%s' already declared for route '%s'"),FST_ERR_BAD_URL:He("FST_ERR_BAD_URL","'%s' is not a valid url component",400,URIError),FST_ERR_ASYNC_CONSTRAINT:He("FST_ERR_ASYNC_CONSTRAINT","Unexpected error from async constraint",500),FST_ERR_DEFAULT_ROUTE_INVALID_TYPE:He("FST_ERR_DEFAULT_ROUTE_INVALID_TYPE","The defaultRoute type should be a function",500,TypeError),FST_ERR_INVALID_URL:He("FST_ERR_INVALID_URL","URL must be a string. Received '%s'",400,TypeError),FST_ERR_ROUTE_OPTIONS_NOT_OBJ:He("FST_ERR_ROUTE_OPTIONS_NOT_OBJ",'Options for "%s:%s" route must be an object',500,TypeError),FST_ERR_ROUTE_DUPLICATED_HANDLER:He("FST_ERR_ROUTE_DUPLICATED_HANDLER",'Duplicate handler for "%s:%s" route is not allowed!',500),FST_ERR_ROUTE_HANDLER_NOT_FN:He("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:He("FST_ERR_ROUTE_MISSING_HANDLER",'Missing handler function for "%s:%s" route.',500),FST_ERR_ROUTE_METHOD_INVALID:He("FST_ERR_ROUTE_METHOD_INVALID","Provided method is invalid!",500,TypeError),FST_ERR_ROUTE_METHOD_NOT_SUPPORTED:He("FST_ERR_ROUTE_METHOD_NOT_SUPPORTED","%s method is not supported.",500),FST_ERR_ROUTE_BODY_VALIDATION_SCHEMA_NOT_SUPPORTED:He("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:He("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:He("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:He("FST_ERR_REOPENED_CLOSE_SERVER","Fastify has already been closed and cannot be reopened"),FST_ERR_REOPENED_SERVER:He("FST_ERR_REOPENED_SERVER","Fastify is already listening"),FST_ERR_INSTANCE_ALREADY_LISTENING:He("FST_ERR_INSTANCE_ALREADY_LISTENING","Fastify instance is already listening. %s"),FST_ERR_PLUGIN_VERSION_MISMATCH:He("FST_ERR_PLUGIN_VERSION_MISMATCH","fastify-plugin: %s - expected '%s' fastify version, '%s' is installed"),FST_ERR_PLUGIN_NOT_PRESENT_IN_INSTANCE:He("FST_ERR_PLUGIN_NOT_PRESENT_IN_INSTANCE","The decorator '%s'%s is not present in %s"),FST_ERR_PLUGIN_CALLBACK_NOT_FN:He("FST_ERR_PLUGIN_CALLBACK_NOT_FN","fastify-plugin: %s",500,TypeError),FST_ERR_PLUGIN_NOT_VALID:He("FST_ERR_PLUGIN_NOT_VALID","fastify-plugin: %s"),FST_ERR_ROOT_PLG_BOOTED:He("FST_ERR_ROOT_PLG_BOOTED","fastify-plugin: %s"),FST_ERR_PARENT_PLUGIN_BOOTED:He("FST_ERR_PARENT_PLUGIN_BOOTED","fastify-plugin: %s"),FST_ERR_PLUGIN_TIMEOUT:He("FST_ERR_PLUGIN_TIMEOUT","fastify-plugin: %s")};function gbt(t,e){return e.cause=t,e}wN.exports=yA;wN.exports.appendStackTrace=gbt;wN.exports.AVVIO_ERRORS_MAP={AVV_ERR_CALLBACK_NOT_FN:yA.FST_ERR_PLUGIN_CALLBACK_NOT_FN,AVV_ERR_PLUGIN_NOT_VALID:yA.FST_ERR_PLUGIN_NOT_VALID,AVV_ERR_ROOT_PLG_BOOTED:yA.FST_ERR_ROOT_PLG_BOOTED,AVV_ERR_PARENT_PLG_LOADED:yA.FST_ERR_PARENT_PLUGIN_BOOTED,AVV_ERR_READY_TIMEOUT:yA.FST_ERR_PLUGIN_TIMEOUT}});var Rp=_((QMr,bme)=>{"use strict";var ybt=["onRoute","onRegister","onReady","onListen","preClose","onClose"],hme=["onTimeout","onRequest","preParsing","preValidation","preSerialization","preHandler","onSend","onResponse","onError","onRequestAbort"],Abt=hme.concat(ybt),{FST_ERR_HOOK_INVALID_TYPE:xbt,FST_ERR_HOOK_INVALID_HANDLER:bbt,FST_ERR_SEND_UNDEFINED_ERR:RN,FST_ERR_HOOK_TIMEOUT:_bt,FST_ERR_HOOK_NOT_SUPPORTED:Ebt,AVVIO_ERRORS_MAP:fme,appendStackTrace:pme}=Di(),{kChildren:oE,kHooks:gme,kRequestPayloadStream:mme}=zs();function cE(){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=[]}cE.prototype=Object.create(null);cE.prototype.validate=function(t,e){if(typeof t!="string")throw new xbt;if(Array.isArray(this[t])===!1)throw new Ebt(t);if(typeof e!="function")throw new bbt(t,Object.prototype.toString.call(e))};cE.prototype.add=function(t,e){this.validate(t,e),this[t].push(e)};function vbt(t){let e=new cE;return e.onRequest=t.onRequest.slice(),e.preParsing=t.preParsing.slice(),e.preValidation=t.preValidation.slice(),e.preSerialization=t.preSerialization.slice(),e.preHandler=t.preHandler.slice(),e.onSend=t.onSend.slice(),e.onResponse=t.onResponse.slice(),e.onError=t.onError.slice(),e.onRoute=t.onRoute.slice(),e.onRegister=t.onRegister.slice(),e.onTimeout=t.onTimeout.slice(),e.onRequestAbort=t.onRequestAbort.slice(),e.onReady=[],e.onListen=[],e.preClose=[],e}function yme(t,e,r,n){let s=r[gme][t],i=0,a=0;c();function o(l){if(l){l.code==="AVV_ERR_READY_TIMEOUT"?l=pme(l,new _bt(t)):l=fme[l.code]!=null?pme(l,new fme[l.code](l.message)):l,n(l);return}n()}function c(l){if(l){o(l);return}if(i===s.length&&a===r[oE].length){i===0&&a===0?o():e(function(f,p){o(f),p(f)});return}if(i===s.length&&a{"use strict";var Pbt=require("node:http"),Dbt=require("node:https"),Bbt=require("node:dns"),{FSTDEP011:_me}=wd(),{kState:Bi,kOptions:Lbt,kServerBindings:Mbt}=zs(),{onListenHookRunner:NN}=Rp(),{FST_ERR_HTTP2_INVALID_VERSION:Wbt,FST_ERR_REOPENED_CLOSE_SERVER:Sme,FST_ERR_REOPENED_SERVER:Ime,FST_ERR_LISTEN_OPTIONS_INVALID:$bt}=Di();JW.exports.createServer=Ubt;JW.exports.compileValidateHTTPVersion=qbt;function Cme(t){return`Server listening at ${t}`}function Ubt(t,e){let r=wme(t,e);function n(s,...i){let a=i.slice(-1).pop(),o=Object.prototype.toString.call(arguments[0]);if(arguments.length===0)s=YW([]);else if(arguments.length>0&&o!=="[object Object]"&&o!=="[object Function]")_me(),s=YW(Array.from(arguments)),a=s.cb;else if(i.length>1){_me();let u=s.path?[s.path]:[s.port??0,s.host??"localhost"];Object.assign(s,YW([...u,...i]))}else s.cb=a;if(s.signal){if(typeof s.signal.on!="function"&&typeof s.signal.addEventListener!="function")throw new $bt("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}Eme.call(this,r,e,t,s,()=>{this[Bi].listening=!0,a(null,l),NN(this)})}:s.cb=(u,l)=>{if(u){a(u,l);return}this[Bi].listening=!0,a(null,l),NN(this)},a===void 0)return Fbt.call(this,r,s).then(l=>new Promise((d,f)=>{c==="localhost"?Eme.call(this,r,e,t,s,()=>{this[Bi].listening=!0,d(l),NN(this)}):(d(l),NN(this))}));this.ready(Tme.call(this,r,s))}return{server:r,listen:n}}function Eme(t,e,r,n,s){this[Bi].listening=!1,Bbt.lookup(n.host,{all:!0},(i,a)=>{if(i){s();return}let o=t.listening&&r.serverFactory,c=0,u=0;if(!o){let d=t.address();for(let f of a)if(f.address!==d.address){c++;let p=Object.assign({},n,{host:f.address,port:d.port,cb:y=>{u++,y||this[Mbt].push(m),u===c&&s()}}),m=wme(r,e),h=()=>{m.close(()=>{}),r.forceCloseConnections==="idle"?m.closeIdleConnections():typeof m.closeAllConnections=="function"&&r.forceCloseConnections&&m.closeAllConnections()};m.on("upgrade",t.emit.bind(t,"upgrade")),t.on("unref",h),t.on("close",h),t.on("error",h),this[Bi].listening=!1,Tme.call(this,m,p)()}}if(c===0){s();return}let l=t.unref;t.unref=function(){l.call(t),t.emit("unref")}})}function Tme(t,e){let r=n=>{if(t.removeListener("error",r),n)this[Bi].listening=!1,e.cb(n,null);else{let s=Rme.call(this,t,e.listenTextResolver||Cme);e.cb(null,s)}};return n=>{if(n!=null)return e.cb(n);if(this[Bi].listening&&this[Bi].closing)return e.cb(new Sme,null);if(this[Bi].listening)return e.cb(new Ime,null);t.once("error",r),this[Bi].closing||(t.listen(e,r),this[Bi].listening=!0)}}function Fbt(t,e){return this[Bi].listening&&this[Bi].closing?Promise.reject(new Sme):this[Bi].listening?Promise.reject(new Ime):this.ready().then(()=>{let r,n=new Promise((i,a)=>{r=o=>{this[Bi].listening=!1,a(o)},t.once("error",r)}),s=new Promise((i,a)=>{t.listen(e,()=>{t.removeListener("error",r),i(Rme.call(this,t,e.listenTextResolver||Cme))}),this[Bi].listening=!0});return Promise.race([n,s])})}function qbt(t){let e=!1,r=new Map;return t.serverFactory&&(e=!0),t.http2?(r.set("2.0",!0),t.https&&t.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 e||r.has(s)}}function wme(t,e){let r=null,n=t.https===!0?{}:t.https;return t.serverFactory?r=t.serverFactory(e,t):t.http2?(typeof n=="object"?r=vme().createSecureServer(n,e):r=vme().createServer(e),r.on("session",Qbt(t.http2SessionTimeout))):(n?r=Dbt.createServer(n,e):r=Pbt.createServer(t.http,e),r.keepAliveTimeout=t.keepAliveTimeout,r.requestTimeout=t.requestTimeout,t.maxRequestsPerSocket>0&&(r.maxRequestsPerSocket=t.maxRequestsPerSocket)),t.serverFactory||r.setTimeout(t.connectionTimeout),r}function YW(t){if(t.length===0)return{port:0,host:"localhost"};let r={cb:typeof t[t.length-1]=="function"?t.pop():void 0},n=t[0],s=t.length,i=t[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:jbt(n),r.host=s>=2&&t[1]?t[1]:"localhost",r.backlog=s>=3?t[2]:void 0),r}function jbt(t){let e=Number(t);return e>=0&&!Number.isNaN(e)&&Number.isInteger(e)?e:0}function Rme(t,e){let r=t.address(),n=typeof r=="string";n||(r.address.indexOf(":")===-1?r=r.address+":"+r.port:r="["+r.address+"]:"+r.port),r=(n?"":"http"+(this[Lbt].https?"s":"")+"://")+r;let s=e(r);return this.log.info(s),r}function vme(){try{return require("node:http2")}catch{throw new Wbt}}function Qbt(t){return function(e){e.setTimeout(t,Hbt)}}function Hbt(){this.close()}});var t8=_((GMr,kme)=>{"use strict";var{kSchemaHeaders:PN,kSchemaParams:XW,kSchemaQuerystring:ZW,kSchemaBody:e8,kSchemaResponse:Ome}=zs(),Gbt=/^[1-5]{1}[0-9]{2}$|^[1-5]xx$|^default$/,{FST_ERR_SCH_RESPONSE_SCHEMA_NOT_NESTED_2XX:zbt}=Di(),{FSTWRN001:ON}=wd();function Kbt(t,e){if(!t.schema||!t.schema.response)return;let{method:r,url:n}=t.config||{};t[Ome]=Object.keys(t.schema.response).reduce(function(s,i){let a=t.schema.response[i];if(i=i.toLowerCase(),!Gbt.exec(i))throw new zbt;if(a.content){let o={};for(let c of Object.keys(a.content)){let u=a.content[c].schema;o[c]=e({schema:u,url:n,method:r,httpStatus:i,contentType:c})}s[i]=o}else s[i]=e({schema:a,url:n,method:r,httpStatus:i});return s},{})}function Vbt(t,e,r){let{schema:n}=t;if(!n)return;let{method:s,url:i}=t.config||{},a=n.headers;if(a&&(r||Object.getPrototypeOf(a)!==Object.prototype))t[PN]=e({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]})),t[PN]=e({schema:o,method:s,url:i,httpPart:"headers"})}else Object.prototype.hasOwnProperty.call(n,"headers")&&ON("headers",s,i);n.body?t[e8]=e({schema:n.body,method:s,url:i,httpPart:"body"}):Object.prototype.hasOwnProperty.call(n,"body")&&ON("body",s,i),n.querystring?t[ZW]=e({schema:n.querystring,method:s,url:i,httpPart:"querystring"}):Object.prototype.hasOwnProperty.call(n,"querystring")&&ON("querystring",s,i),n.params?t[XW]=e({schema:n.params,method:s,url:i,httpPart:"params"}):Object.prototype.hasOwnProperty.call(n,"params")&&ON("params",s,i)}function kN(t,e,r){let n=e[r]===void 0,s=t&&t(n?null:e[r]);if(s?.then)return s.then(a=>i(a)).catch(a=>a);return i(s);function i(a){return a===!1?t.errors:a&&a.error?a.error:(a&&a.value&&(e[r]=a.value),!1)}}function DN(t,e,r){let n=r===void 0;if(n||!r.skipParams){let i=kN(t[XW],e,"params");if(i)return typeof i.then!="function"?Np(i,"params",t.schemaErrorFormatter):Ybt(i,t,e)}if(n||!r.skipBody){let i=kN(t[e8],e,"body");if(i)return typeof i.then!="function"?Np(i,"body",t.schemaErrorFormatter):Jbt(i,t,e)}if(n||!r.skipQuery){let i=kN(t[ZW],e,"query");if(i)return typeof i.then!="function"?Np(i,"querystring",t.schemaErrorFormatter):Xbt(i,t,e)}let s=kN(t[PN],e,"headers");return s?typeof s.then!="function"?Np(s,"headers",t.schemaErrorFormatter):Zbt(s,t,e):!1}function Ybt(t,e,r){return t.then(n=>n?Np(n,"params",e.schemaErrorFormatter):DN(e,r,{skipParams:!0}))}function Jbt(t,e,r){return t.then(n=>n?Np(n,"body",e.schemaErrorFormatter):DN(e,r,{skipParams:!0,skipBody:!0}))}function Xbt(t,e,r){return t.then(n=>n?Np(n,"querystring",e.schemaErrorFormatter):DN(e,r,{skipParams:!0,skipBody:!0,skipQuery:!0}))}function Zbt(t,e,r){return t.then(n=>n?Np(n,"headers",e.schemaErrorFormatter):!1)}function Np(t,e,r){if(t instanceof Error)return t.statusCode=t.statusCode||400,t.code=t.code||"FST_ERR_VALIDATION",t.validationContext=t.validationContext||e,t;let n=r(t,e);return n.statusCode=n.statusCode||400,n.code=n.code||"FST_ERR_VALIDATION",n.validation=t,n.validationContext=e,n}kme.exports={symbols:{bodySchema:e8,querystringSchema:ZW,responseSchema:Ome,paramsSchema:XW,headersSchema:PN},compileSchemasForValidation:Vbt,compileSchemasForSerialization:Kbt,validate:DN}});var r8=_((zMr,Dme)=>{"use strict";var{kReplyIsError:Pme,kReplyHijacked:e1t}=zs();function t1t(t,e){t.then(function(r){if(e[e1t]!==!0&&(r!==void 0||e.sent===!1&&e.raw.headersSent===!1&&e.request.raw.aborted===!1))try{e.send(r)}catch(n){e[Pme]=!0,e.send(n)}},function(r){if(e.sent===!0){e.log.error({err:r},"Promise errored, but reply.sent = true was set");return}e[Pme]=!0;try{e.send(r)}catch(n){e.send(n)}})}Dme.exports=t1t});var a8=_((KMr,i8)=>{"use strict";var{validate:r1t}=t8(),{preValidationHookRunner:n1t,preHandlerHookRunner:s1t}=Rp(),i1t=r8(),{kReplyIsError:BN,kRouteContext:kp}=zs();function a1t(t,e,r){if(r.sent===!0)return;if(t!=null){r[BN]=!0,r.send(t);return}let n=e.raw.method,s=e.headers,i=e[kp];if(n==="GET"||n==="HEAD"){Op(e,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)?Op(e,r):i.contentTypeParser.run("",Op,e,r):i.contentTypeParser.run(a,Op,e,r);return}if(n==="OPTIONS"||n==="DELETE"){a!==void 0&&(s["transfer-encoding"]!==void 0||s["content-length"]!==void 0)?i.contentTypeParser.run(a,Op,e,r):Op(e,r);return}Op(e,r)}function Op(t,e){try{t[kp].preValidation!==null?n1t(t[kp].preValidation,t,e,n8):n8(null,t,e)}catch(r){n8(r,t,e)}}function n8(t,e,r){if(r.sent===!0)return;if(t!=null){r[BN]=!0,r.send(t);return}let n=r1t(r[kp],e);if(n&&typeof n.then=="function"||!1){let i=Bme.bind(null,e,r);n.then(i,i)}else Bme(e,r,n)}function Bme(t,e,r){if(r){if(e[kp].attachValidation===!1){e.send(r);return}e.request.validationError=r}t[kp].preHandler!==null?s1t(t[kp].preHandler,t,e,s8):s8(null,t,e)}function s8(t,e,r){if(r.sent)return;if(t!=null){r[BN]=!0,r.send(t);return}let n;try{n=e[kp].handler(e,r)}catch(s){r[BN]=!0,r.send(s);return}n!==void 0&&(n!==null&&typeof n.then=="function"?i1t(n,r):r.send(n))}i8.exports=a1t;i8.exports[Symbol.for("internals")]={handler:Op,preHandlerCallback:s8}});var Mme=_((VMr,Lme)=>{"use strict";function xA(){}var o1t={fatal:xA,error:xA,warn:xA,info:xA,debug:xA,trace:xA};Object.defineProperty(Lme,"exports",{get(){return Object.create(o1t)}})});var c8=_((YMr,Ume)=>{"use strict";var lE=t=>t&&typeof t.message=="string",o8=t=>{if(!t)return;let e=t.cause;if(typeof e=="function"){let r=t.cause();return lE(r)?r:void 0}else return lE(e)?e:void 0},Wme=(t,e)=>{if(!lE(t))return"";let r=t.stack||"";if(e.has(t))return r+` +causes have become circular...`;let n=o8(t);return n?(e.add(t),r+` +caused by: `+Wme(n,e)):r},c1t=t=>Wme(t,new Set),$me=(t,e,r)=>{if(!lE(t))return"";let n=r?"":t.message||"";if(e.has(t))return n+": ...";let s=o8(t);if(s){e.add(t);let i=typeof t.cause=="function";return n+(i?"":": ")+$me(s,e,i)}else return n},u1t=t=>$me(t,new Set);Ume.exports={isErrorLike:lE,getErrorCause:o8,stackWithCauses:c1t,messageWithCauses:u1t}});var u8=_((JMr,qme)=>{"use strict";var l1t=Symbol("circular-ref-tag"),LN=Symbol("pino-raw-err-ref"),Fme=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[LN]},set:function(t){this[LN]=t}}});Object.defineProperty(Fme,LN,{writable:!0,value:{}});qme.exports={pinoErrProto:Fme,pinoErrorSymbols:{seen:l1t,rawSymbol:LN}}});var Hme=_((XMr,Qme)=>{"use strict";Qme.exports=d8;var{messageWithCauses:d1t,stackWithCauses:f1t,isErrorLike:jme}=c8(),{pinoErrProto:p1t,pinoErrorSymbols:m1t}=u8(),{seen:l8}=m1t,{toString:h1t}=Object.prototype;function d8(t){if(!jme(t))return t;t[l8]=void 0;let e=Object.create(p1t);e.type=h1t.call(t.constructor)==="[object Function]"?t.constructor.name:t.name,e.message=d1t(t),e.stack=f1t(t),Array.isArray(t.errors)&&(e.aggregateErrors=t.errors.map(r=>d8(r)));for(let r in t)if(e[r]===void 0){let n=t[r];jme(n)?r!=="cause"&&!Object.prototype.hasOwnProperty.call(n,l8)&&(e[r]=d8(n)):e[r]=n}return delete t[l8],e.raw=t,e}});var zme=_((ZMr,Gme)=>{"use strict";Gme.exports=WN;var{isErrorLike:f8}=c8(),{pinoErrProto:g1t,pinoErrorSymbols:y1t}=u8(),{seen:MN}=y1t,{toString:A1t}=Object.prototype;function WN(t){if(!f8(t))return t;t[MN]=void 0;let e=Object.create(g1t);e.type=A1t.call(t.constructor)==="[object Function]"?t.constructor.name:t.name,e.message=t.message,e.stack=t.stack,Array.isArray(t.errors)&&(e.aggregateErrors=t.errors.map(r=>WN(r))),f8(t.cause)&&!Object.prototype.hasOwnProperty.call(t.cause,MN)&&(e.cause=WN(t.cause));for(let r in t)if(e[r]===void 0){let n=t[r];f8(n)?Object.prototype.hasOwnProperty.call(n,MN)||(e[r]=WN(n)):e[r]=n}return delete t[MN],e.raw=t,e}});var Jme=_((eWr,Yme)=>{"use strict";Yme.exports={mapHttpRequest:x1t,reqSerializer:Vme};var p8=Symbol("pino-raw-req-ref"),Kme=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[p8]},set:function(t){this[p8]=t}}});Object.defineProperty(Kme,p8,{writable:!0,value:{}});function Vme(t){let e=t.info||t.socket,r=Object.create(Kme);if(r.id=typeof t.id=="function"?t.id():t.id||(t.info?t.info.id:void 0),r.method=t.method,t.originalUrl)r.url=t.originalUrl;else{let n=t.path;r.url=typeof n=="string"?n:t.url?t.url.path||t.url:void 0}return t.query&&(r.query=t.query),t.params&&(r.params=t.params),r.headers=t.headers,r.remoteAddress=e&&e.remoteAddress,r.remotePort=e&&e.remotePort,r.raw=t.raw||t,r}function x1t(t){return{req:Vme(t)}}});var the=_((tWr,ehe)=>{"use strict";ehe.exports={mapHttpResponse:b1t,resSerializer:Zme};var m8=Symbol("pino-raw-res-ref"),Xme=Object.create({},{statusCode:{enumerable:!0,writable:!0,value:0},headers:{enumerable:!0,writable:!0,value:""},raw:{enumerable:!1,get:function(){return this[m8]},set:function(t){this[m8]=t}}});Object.defineProperty(Xme,m8,{writable:!0,value:{}});function Zme(t){let e=Object.create(Xme);return e.statusCode=t.headersSent?t.statusCode:null,e.headers=t.getHeaders?t.getHeaders():t._headers,e.raw=t,e}function b1t(t){return{res:Zme(t)}}});var g8=_((rWr,rhe)=>{"use strict";var h8=Hme(),_1t=zme(),$N=Jme(),UN=the();rhe.exports={err:h8,errWithCause:_1t,mapHttpRequest:$N.mapHttpRequest,mapHttpResponse:UN.mapHttpResponse,req:$N.reqSerializer,res:UN.resSerializer,wrapErrorSerializer:function(e){return e===h8?e:function(n){return e(h8(n))}},wrapRequestSerializer:function(e){return e===$N.reqSerializer?e:function(n){return e($N.reqSerializer(n))}},wrapResponseSerializer:function(e){return e===UN.resSerializer?e:function(n){return e(UN.resSerializer(n))}}}});var y8=_((nWr,nhe)=>{"use strict";function E1t(t,e){return e}nhe.exports=function(){let e=Error.prepareStackTrace;Error.prepareStackTrace=E1t;let r=new Error().stack;if(Error.prepareStackTrace=e,!Array.isArray(r))return;let n=r.slice(2),s=[];for(let i of n)i&&s.push(i.getFileName());return s}});var ihe=_((sWr,she)=>{"use strict";she.exports=v1t;function v1t(t={}){let{ERR_PATHS_MUST_BE_STRINGS:e=()=>"fast-redact - Paths must be (non-empty) strings",ERR_INVALID_PATH:r=n=>`fast-redact \u2013 Invalid path (${n})`}=t;return function({paths:s}){s.forEach(i=>{if(typeof i!="string")throw Error(e());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 AR=E((KOr,mpe)=>{"use strict";mpe.exports=/[^.[\]]+|\[((?:.)*?)\]/g});var gpe=E((YOr,hpe)=>{"use strict";var hgt=AR();hpe.exports=ggt;function ggt({paths:t}){let e=[];var r=0;let n=t.reduce(function(s,i,a){var o=i.match(hgt).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),p=f.length>0;r++,e.push({before:l,beforeStr:d,after:f,nested:p})}else s[i]={path:o,val:void 0,precensored:!1,circle:"",escPath:JSON.stringify(i),leadingBracket:c};return s},{});return{wildcards:e,wcLen:r,secret:n}}});var ype=E((JOr,Ape)=>{"use strict";var Agt=AR();Ape.exports=ygt;function ygt({secret:t,serialize:e,wcLen:r,strict:n,isCensorFct:s,censorFctTakesPath:i},a){let o=Function("o",` + if ([o${a}].length !== 1) throw Error()`)()}catch{throw Error(r(i))}})}}});var FN=_((iWr,ahe)=>{"use strict";ahe.exports=/[^.[\]]+|\[((?:.)*?)\]/g});var che=_((aWr,ohe)=>{"use strict";var S1t=FN();ohe.exports=I1t;function I1t({paths:t}){let e=[];var r=0;let n=t.reduce(function(s,i,a){var o=i.match(S1t).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),p=f.length>0;r++,e.push({before:l,beforeStr:d,after:f,nested:p})}else s[i]={path:o,val:void 0,precensored:!1,circle:"",escPath:JSON.stringify(i),leadingBracket:c};return s},{});return{wildcards:e,wcLen:r,secret:n}}});var lhe=_((oWr,uhe)=>{"use strict";var C1t=FN();uhe.exports=T1t;function T1t({secret:t,serialize:e,wcLen:r,strict:n,isCensorFct:s,censorFctTakesPath:i},a){let o=Function("o",` if (typeof o !== 'object' || o == null) { - ${_gt(n,e)} + ${O1t(n,e)} } const { censor, secret } = this const originalSecret = {} @@ -44,12 +44,12 @@ caused by: `+Gfe(n,e)):r},Zht=t=>Gfe(t,new Set),Vfe=(t,e,r)=>{if(!s1(t))return"" originalSecret[secretKeys[i]] = secret[secretKeys[i]] } - ${xgt(t,s,i)} + ${w1t(t,s,i)} this.compileRestore() - ${bgt(r>0,s,i)} + ${R1t(r>0,s,i)} this.secret = originalSecret - ${Egt(e)} - `).bind(a);return o.state=a,e===!1&&(o.restore=c=>a.restore(c)),o}function xgt(t,e,r){return Object.keys(t).map(n=>{let{escPath:s,leadingBracket:i,path:a}=t[n],o=i?1:0,c=i?"":".",u=[];for(var l;(l=Agt.exec(n))!==null;){let[,m]=l,{index:h,input:A}=l;h>o&&u.push(A.substring(0,h-(m?0:1)))}var d=u.map(m=>`o${c}${m}`).join(" && ");d.length===0?d+=`o${c}${n} != null`:d+=` && o${c}${n} != null`;let f=` + ${N1t(e)} + `).bind(a);return o.state=a,e===!1&&(o.restore=c=>a.restore(c)),o}function w1t(t,e,r){return Object.keys(t).map(n=>{let{escPath:s,leadingBracket:i,path:a}=t[n],o=i?1:0,c=i?"":".",u=[];for(var l;(l=C1t.exec(n))!==null;){let[,m]=l,{index:h,input:y}=l;h>o&&u.push(y.substring(0,h-(m?0:1)))}var d=u.map(m=>`o${c}${m}`).join(" && ");d.length===0?d+=`o${c}${n} != null`:d+=` && o${c}${n} != null`;let f=` switch (true) { ${u.reverse().map(m=>` case o${c}${m} === censor: @@ -70,7 +70,7 @@ caused by: `+Gfe(n,e)):r},Zht=t=>Gfe(t,new Set),Vfe=(t,e,r)=>{if(!s1(t))return"" } } `}).join(` -`)}function bgt(t,e,r){return t===!0?` +`)}function R1t(t,e,r){return t===!0?` { const { wildcards, wcLen, groupRedact, nestedRedact } = this for (var i = 0; i < wcLen; i++) { @@ -81,16 +81,16 @@ caused by: `+Gfe(n,e)):r},Zht=t=>Gfe(t,new Set),Vfe=(t,e,r)=>{if(!s1(t))return"" } else secret[beforeStr] = groupRedact(o, before, censor, ${e}, ${r}) } } - `:""}function Egt(t){return t===!1?"return o":` + `:""}function N1t(t){return t===!1?"return o":` var s = this.serialize(o) this.restore(o) return s - `}function _gt(t,e){return t===!0?"throw Error('fast-redact: primitives cannot be redacted')":e===!1?"return o":"return this.serialize(o)"}});var A5=E((XOr,Epe)=>{"use strict";Epe.exports={groupRedact:vgt,groupRestore:Sgt,nestedRedact:Igt,nestedRestore:Cgt};function Sgt({keys:t,values:e,target:r}){if(r==null||typeof r=="string")return;let n=t.length;for(var s=0;s0;a--)i=i[n[a]];i[n[0]]=s}}function Igt(t,e,r,n,s,i,a){let o=xpe(e,r);if(o==null)return;let c=Object.keys(o),u=c.length;for(var l=0;l{"use strict";var{groupRestore:Rgt,nestedRestore:Ngt}=A5();_pe.exports=Ogt;function Ogt(){return function(){if(this.restore){this.restore.state.secret=this.secret;return}let{secret:e,wcLen:r}=this,n=Object.keys(e),s=Pgt(e,n),i=r>0,a=i?{secret:e,groupRestore:Rgt,nestedRestore:Ngt}:{secret:e};this.restore=Function("o",Dgt(s,n,i)).bind(a),this.restore.state=a}}function Pgt(t,e){return e.map(r=>{let{circle:n,escPath:s,leadingBracket:i}=t[r],o=n?`o.${n} = secret[${s}].val`:`o${i?"":"."}${r} = secret[${s}].val`,c=`secret[${s}].val = undefined`;return` + `}function O1t(t,e){return t===!0?"throw Error('fast-redact: primitives cannot be redacted')":e===!1?"return o":"return this.serialize(o)"}});var x8=_((cWr,phe)=>{"use strict";phe.exports={groupRedact:P1t,groupRestore:k1t,nestedRedact:B1t,nestedRestore:D1t};function k1t({keys:t,values:e,target:r}){if(r==null||typeof r=="string")return;let n=t.length;for(var s=0;s0;a--)i=i[n[a]];i[n[0]]=s}}function B1t(t,e,r,n,s,i,a){let o=dhe(e,r);if(o==null)return;let c=Object.keys(o),u=c.length;for(var l=0;l{"use strict";var{groupRestore:W1t,nestedRestore:$1t}=x8();mhe.exports=U1t;function U1t(){return function(){if(this.restore){this.restore.state.secret=this.secret;return}let{secret:e,wcLen:r}=this,n=Object.keys(e),s=F1t(e,n),i=r>0,a=i?{secret:e,groupRestore:W1t,nestedRestore:$1t}:{secret:e};this.restore=Function("o",q1t(s,n,i)).bind(a),this.restore.state=a}}function F1t(t,e){return e.map(r=>{let{circle:n,escPath:s,leadingBracket:i}=t[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 Dgt(t,e,r){return` + `}).join("")}function q1t(t,e,r){return` const secret = this.secret ${r===!0?` const keys = Object.keys(secret) @@ -107,34 +107,34 @@ caused by: `+Gfe(n,e)):r},Zht=t=>Gfe(t,new Set),Vfe=(t,e,r)=>{if(!s1(t))return"" `:""} ${t} return o - `}});var Cpe=E((ePr,vpe)=>{"use strict";vpe.exports=kgt;function kgt(t){let{secret:e,censor:r,compileRestore:n,serialize:s,groupRedact:i,nestedRedact:a,wildcards:o,wcLen:c}=t,u=[{secret:e,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 wpe=E((tPr,Tpe)=>{"use strict";var Ipe=ppe(),Lgt=gpe(),Bgt=ype(),Mgt=Spe(),{groupRedact:Wgt,nestedRedact:$gt}=A5(),Fgt=Cpe(),Ugt=AR(),qgt=Ipe(),y5=t=>t;y5.restore=y5;var jgt="[REDACTED]";x5.rx=Ugt;x5.validator=Ipe;Tpe.exports=x5;function x5(t={}){let e=Array.from(new Set(t.paths||[])),r="serialize"in t&&(t.serialize===!1||typeof t.serialize=="function")?t.serialize:JSON.stringify,n=t.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 t?t.censor:jgt,i=typeof s=="function",a=i&&s.length>1;if(e.length===0)return r||y5;qgt({paths:e,serialize:r,censor:s});let{wildcards:o,wcLen:c,secret:u}=Lgt({paths:e,censor:s}),l=Mgt(),d="strict"in t?t.strict:!0;return Bgt({secret:u,wcLen:c,serialize:r,strict:d,isCensorFct:i,censorFctTakesPath:a},Fgt({secret:u,censor:s,compileRestore:l,serialize:r,groupRedact:Wgt,nestedRedact:$gt,wildcards:o,wcLen:c}))}});var $A=E((rPr,Rpe)=>{"use strict";var Hgt=Symbol("pino.setLevel"),Qgt=Symbol("pino.getLevel"),Ggt=Symbol("pino.levelVal"),Vgt=Symbol("pino.levelComp"),zgt=Symbol("pino.useLevelLabels"),Kgt=Symbol("pino.useOnlyCustomLevels"),Ygt=Symbol("pino.mixin"),Jgt=Symbol("pino.lsCache"),Xgt=Symbol("pino.chindings"),Zgt=Symbol("pino.asJson"),eAt=Symbol("pino.write"),tAt=Symbol("pino.redactFmt"),rAt=Symbol("pino.time"),nAt=Symbol("pino.timeSliceIndex"),sAt=Symbol("pino.stream"),iAt=Symbol("pino.stringify"),aAt=Symbol("pino.stringifySafe"),oAt=Symbol("pino.stringifiers"),cAt=Symbol("pino.end"),uAt=Symbol("pino.formatOpts"),lAt=Symbol("pino.messageKey"),dAt=Symbol("pino.errorKey"),fAt=Symbol("pino.nestedKey"),pAt=Symbol("pino.nestedKeyStr"),mAt=Symbol("pino.mixinMergeStrategy"),hAt=Symbol("pino.msgPrefix"),gAt=Symbol("pino.wildcardFirst"),AAt=Symbol.for("pino.serializers"),yAt=Symbol.for("pino.formatters"),xAt=Symbol.for("pino.hooks"),bAt=Symbol.for("pino.metadata");Rpe.exports={setLevelSym:Hgt,getLevelSym:Qgt,levelValSym:Ggt,levelCompSym:Vgt,useLevelLabelsSym:zgt,mixinSym:Ygt,lsCacheSym:Jgt,chindingsSym:Xgt,asJsonSym:Zgt,writeSym:eAt,serializersSym:AAt,redactFmtSym:tAt,timeSym:rAt,timeSliceIndexSym:nAt,streamSym:sAt,stringifySym:iAt,stringifySafeSym:aAt,stringifiersSym:oAt,endSym:cAt,formatOptsSym:uAt,messageKeySym:lAt,errorKeySym:dAt,nestedKeySym:fAt,wildcardFirstSym:gAt,needsMetadataGsym:bAt,useOnlyCustomLevelsSym:Kgt,formattersSym:yAt,hooksSym:xAt,nestedKeyStrSym:pAt,mixinMergeStrategySym:mAt,msgPrefixSym:hAt}});var _5=E((nPr,Dpe)=>{"use strict";var E5=wpe(),{redactFmtSym:EAt,wildcardFirstSym:yR}=$A(),{rx:b5,validator:_At}=E5,Npe=_At({ERR_PATHS_MUST_BE_STRINGS:()=>"pino \u2013 redacted paths must be strings",ERR_INVALID_PATH:t=>`pino \u2013 redact paths array contains an invalid path (${t})`}),Ope="[Redacted]",Ppe=!1;function SAt(t,e){let{paths:r,censor:n}=vAt(t),s=r.reduce((o,c)=>{b5.lastIndex=0;let u=b5.exec(c),l=b5.exec(c),d=u[1]!==void 0?u[1].replace(/^(?:"|'|`)(.*)(?:"|'|`)$/,"$1"):u[0];if(d==="*"&&(d=yR),l===null)return o[d]=null,o;if(o[d]===null)return o;let{index:f}=l,p=`${c.substr(f,c.length-1)}`;return o[d]=o[d]||[],d!==yR&&o[d].length===0&&o[d].push(...o[yR]||[]),d===yR&&Object.keys(o).forEach(function(m){o[m]&&o[m].push(p)}),o[d].push(p),o},{}),i={[EAt]:E5({paths:r,censor:n,serialize:e,strict:Ppe})},a=(...o)=>e(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]=E5({paths:s[c],censor:u,serialize:e,strict:Ppe})}return o},i)}function vAt(t){if(Array.isArray(t))return t={paths:t,censor:Ope},Npe(t),t;let{paths:e,censor:r=Ope,remove:n}=t;if(Array.isArray(e)===!1)throw Error("pino \u2013 redact must contain an array of strings");return n===!0&&(r=void 0),Npe({paths:e,censor:r}),{paths:e,censor:r}}Dpe.exports=SAt});var Lpe=E((sPr,kpe)=>{"use strict";var CAt=()=>"",IAt=()=>`,"time":${Date.now()}`,TAt=()=>`,"time":${Math.round(Date.now()/1e3)}`,wAt=()=>`,"time":"${new Date(Date.now()).toISOString()}"`;kpe.exports={nullTime:CAt,epochTime:IAt,unixTime:TAt,isoTime:wAt}});var Mpe=E((iPr,Bpe)=>{"use strict";function RAt(t){try{return JSON.stringify(t)}catch{return'"[Circular]"'}}Bpe.exports=NAt;function NAt(t,e,r){var n=r&&r.stringify||RAt,s=1;if(typeof t=="object"&&t!==null){var i=e.length+s;if(i===1)return t;var a=new Array(i);a[0]=n(t);for(var o=1;o-1?d:0,t.charCodeAt(p+1)){case 100:case 102:if(l>=c||e[l]==null)break;d=c||e[l]==null)break;d=c||e[l]===void 0)break;d",d=p+2,p++;break}u+=n(e[l]),d=p+2,p++;break;case 115:if(l>=c)break;d{"use strict";if(typeof SharedArrayBuffer<"u"&&typeof Atomics<"u"){let e=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(t,0,0,Number(r))},t=new Int32Array(new SharedArrayBuffer(4));S5.exports=e}else{let t=function(e){if((e>0&&e<1/0)===!1)throw typeof e!="number"&&typeof e!="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(e);for(;n>Date.now(););};S5.exports=t}});var Qpe=E((oPr,Hpe)=>{"use strict";var os=require("fs"),OAt=require("events"),PAt=require("util").inherits,Wpe=require("path"),I5=v5(),xR=100,bR=Buffer.allocUnsafe(0),DAt=16*1024,$pe="buffer",Fpe="utf8";function Upe(t,e){e._opening=!0,e._writing=!0,e._asyncDrainScheduled=!1;function r(i,a){if(i){e._reopening=!1,e._writing=!1,e._opening=!1,e.sync?process.nextTick(()=>{e.listenerCount("error")>0&&e.emit("error",i)}):e.emit("error",i);return}let o=e._reopening;e.fd=a,e.file=t,e._reopening=!1,e._opening=!1,e._writing=!1,e.sync?process.nextTick(()=>e.emit("ready")):e.emit("ready"),!e.destroyed&&(!e._writing&&e._len>e.minLength||e._flushPending?e._actualWrite():o&&process.nextTick(()=>e.emit("drain")))}let n=e.append?"a":"w",s=e.mode;if(e.sync)try{e.mkdir&&os.mkdirSync(Wpe.dirname(t),{recursive:!0});let i=os.openSync(t,n,s);r(null,i)}catch(i){throw r(i),i}else e.mkdir?os.mkdir(Wpe.dirname(t),{recursive:!0},i=>{if(i)return r(i);os.open(t,n,s,r)}):os.open(t,n,s,r)}function Mc(t){if(!(this instanceof Mc))return new Mc(t);let{fd:e,dest:r,minLength:n,maxLength:s,maxWrite:i,sync:a,append:o=!0,mkdir:c,retryEAGAIN:u,fsync:l,contentMode:d,mode:f}=t||{};e=e||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||DAt,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 p,m;if(d===$pe)this._writingBuf=bR,this.write=BAt,this.flush=WAt,this.flushSync=FAt,this._actualWrite=qAt,p=()=>os.writeSync(this.fd,this._writingBuf),m=()=>os.write(this.fd,this._writingBuf,this.release);else if(d===void 0||d===Fpe)this._writingBuf="",this.write=LAt,this.flush=MAt,this.flushSync=$At,this._actualWrite=UAt,p=()=>os.writeSync(this.fd,this._writingBuf,"utf8"),m=()=>os.write(this.fd,this._writingBuf,"utf8",this.release);else throw new Error(`SonicBoom supports "${Fpe}" and "${$pe}", but passed ${d}`);if(typeof e=="number")this.fd=e,process.nextTick(()=>this.emit("ready"));else if(typeof e=="string")Upe(e,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=(h,A)=>{if(h){if((h.code==="EAGAIN"||h.code==="EBUSY")&&this.retryEAGAIN(h,this._writingBuf.length,this._len-this._writingBuf.length))if(this.sync)try{I5(xR),this.release(void 0,0)}catch(y){this.release(y)}else setTimeout(m,xR);else this._writing=!1,this.emit("error",h);return}this.emit("write",A);let g=C5(this._writingBuf,this._len,A);if(this._len=g.len,this._writingBuf=g.writingBuf,this._writingBuf.length){if(!this.sync){m();return}try{do{let y=p(),x=C5(this._writingBuf,this._len,y);this._len=x.len,this._writingBuf=x.writingBuf}while(this._writingBuf.length)}catch(y){this.release(y);return}}this._fsync&&os.fsyncSync(this.fd);let b=this._len;this._reopening?(this._writing=!1,this._reopening=!1,this.reopen()):b>this.minLength?this._actualWrite():this._ending?b>0?this._actualWrite():(this._writing=!1,ER(this)):(this._writing=!1,this.sync?this._asyncDrainScheduled||(this._asyncDrainScheduled=!0,process.nextTick(kAt,this)):this.emit("drain"))},this.on("newListener",function(h){h==="drain"&&(this._asyncDrainScheduled=!1)})}function C5(t,e,r){return typeof t=="string"&&Buffer.byteLength(t)!==r&&(r=Buffer.from(t).subarray(0,r).toString().length),e=Math.max(e-r,0),t=t.slice(r),{writingBuf:t,len:e}}function kAt(t){t.listenerCount("drain")>0&&(t._asyncDrainScheduled=!1,t.emit("drain"))}PAt(Mc,OAt);function qpe(t,e){return t.length===0?bR:t.length===1?t[0]:Buffer.concat(t,e)}function LAt(t){if(this.destroyed)throw new Error("SonicBoom destroyed");let e=this._len+t.length,r=this._bufs;return this.maxLength&&e>this.maxLength?(this.emit("drop",t),this._lenthis.maxWrite?r.push(""+t):r[r.length-1]+=t,this._len=e,!this._writing&&this._len>=this.minLength&&this._actualWrite(),this._lenthis.maxLength?(this.emit("drop",t),this._lenthis.maxWrite?(r.push([t]),n.push(t.length)):(r[r.length-1].push(t),n[n.length-1]+=t.length),this._len=e,!this._writing&&this._len>=this.minLength&&this._actualWrite(),this._len{this._fsync?(this._flushPending=!1,t()):os.fsync(this.fd,n=>{this._flushPending=!1,t(n)}),this.off("error",r)},r=n=>{this._flushPending=!1,t(n),this.off("drain",e)};this.once("drain",e),this.once("error",r)}function MAt(t){if(t!=null&&typeof t!="function")throw new Error("flush cb must be a function");if(this.destroyed){let e=new Error("SonicBoom destroyed");if(t){t(e);return}throw e}if(this.minLength<=0){t?.();return}t&&jpe.call(this,t),!this._writing&&(this._bufs.length===0&&this._bufs.push(""),this._actualWrite())}function WAt(t){if(t!=null&&typeof t!="function")throw new Error("flush cb must be a function");if(this.destroyed){let e=new Error("SonicBoom destroyed");if(t){t(e);return}throw e}if(this.minLength<=0){t?.();return}t&&jpe.call(this,t),!this._writing&&(this._bufs.length===0&&(this._bufs.push([]),this._lens.push(0)),this._actualWrite())}Mc.prototype.reopen=function(t){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this._opening){this.once("ready",()=>{this.reopen(t)});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(t&&(this.file=t),this._reopening=!0,this._writing)return;let e=this.fd;this.once("ready",()=>{e!==this.fd&&os.close(e,r=>{if(r)return this.emit("error",r)})}),Upe(this.file,this)};Mc.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():ER(this)))};function $At(){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 t="";for(;this._bufs.length||t;){t.length<=0&&(t=this._bufs[0]);try{let e=os.writeSync(this.fd,t,"utf8"),r=C5(t,this._len,e);t=r.writingBuf,this._len=r.len,t.length<=0&&this._bufs.shift()}catch(e){if((e.code==="EAGAIN"||e.code==="EBUSY")&&!this.retryEAGAIN(e,t.length,this._len-t.length))throw e;I5(xR)}}try{os.fsyncSync(this.fd)}catch{}}function FAt(){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=bR);let t=bR;for(;this._bufs.length||t.length;){t.length<=0&&(t=qpe(this._bufs[0],this._lens[0]));try{let e=os.writeSync(this.fd,t);t=t.subarray(e),this._len=Math.max(this._len-e,0),t.length<=0&&(this._bufs.shift(),this._lens.shift())}catch(e){if((e.code==="EAGAIN"||e.code==="EBUSY")&&!this.retryEAGAIN(e,t.length,this._len-t.length))throw e;I5(xR)}}}Mc.prototype.destroy=function(){this.destroyed||ER(this)};function UAt(){let t=this.release;if(this._writing=!0,this._writingBuf=this._writingBuf||this._bufs.shift()||"",this.sync)try{let e=os.writeSync(this.fd,this._writingBuf,"utf8");t(null,e)}catch(e){t(e)}else os.write(this.fd,this._writingBuf,"utf8",t)}function qAt(){let t=this.release;if(this._writing=!0,this._writingBuf=this._writingBuf.length?this._writingBuf:qpe(this._bufs.shift(),this._lens.shift()),this.sync)try{let e=os.writeSync(this.fd,this._writingBuf);t(null,e)}catch(e){t(e)}else os.write(this.fd,this._writingBuf,t)}function ER(t){if(t.fd===-1){t.once("ready",ER.bind(null,t));return}t.destroyed=!0,t._bufs=[],t._lens=[],os.fsync(t.fd,e);function e(){t.fd!==1&&t.fd!==2?os.close(t.fd,r):r()}function r(n){if(n){t.emit("error",n);return}t._ending&&!t._writing&&t.emit("finish"),t.emit("close")}}Mc.SonicBoom=Mc;Mc.default=Mc;Hpe.exports=Mc});var T5=E((cPr,Ype)=>{"use strict";var Wc={exit:[],beforeExit:[]},Gpe={exit:QAt,beforeExit:GAt},FA;function jAt(){FA===void 0&&(FA=new FinalizationRegistry(VAt))}function HAt(t){Wc[t].length>0||process.on(t,Gpe[t])}function Vpe(t){Wc[t].length>0||(process.removeListener(t,Gpe[t]),Wc.exit.length===0&&Wc.beforeExit.length===0&&(FA=void 0))}function QAt(){zpe("exit")}function GAt(){zpe("beforeExit")}function zpe(t){for(let e of Wc[t]){let r=e.deref(),n=e.fn;r!==void 0&&n(r,t)}Wc[t]=[]}function VAt(t){for(let e of["exit","beforeExit"]){let r=Wc[e].indexOf(t);Wc[e].splice(r,r+1),Vpe(e)}}function Kpe(t,e,r){if(e===void 0)throw new Error("the object can't be undefined");HAt(t);let n=new WeakRef(e);n.fn=r,jAt(),FA.register(e,n),Wc[t].push(n)}function zAt(t,e){Kpe("exit",t,e)}function KAt(t,e){Kpe("beforeExit",t,e)}function YAt(t){if(FA!==void 0){FA.unregister(t);for(let e of["exit","beforeExit"])Wc[e]=Wc[e].filter(r=>{let n=r.deref();return n&&n!==t}),Vpe(e)}}Ype.exports={register:zAt,registerBeforeExit:KAt,unregister:YAt}});var Jpe=E((uPr,JAt)=>{JAt.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 Zpe=E((lPr,Xpe)=>{"use strict";function XAt(t,e,r,n,s){let i=Date.now()+n,a=Atomics.load(t,e);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(t,e),a===o?c(u>=1e3?1e3:u*2):a===r?s(null,"ok"):s(null,"not-equal")},u)};c(1)}function ZAt(t,e,r,n,s){let i=Date.now()+n,a=Atomics.load(t,e);if(a!==r){s(null,"ok");return}let o=c=>{Date.now()>i?s(null,"timed-out"):setTimeout(()=>{a=Atomics.load(t,e),a!==r?s(null,"ok"):o(c>=1e3?1e3:c*2)},c)};o(1)}Xpe.exports={wait:XAt,waitDiff:ZAt}});var t0e=E((dPr,e0e)=>{"use strict";e0e.exports={WRITE_INDEX:4,READ_INDEX:8}});var a0e=E((fPr,i0e)=>{"use strict";var{version:eyt}=Jpe(),{EventEmitter:tyt}=require("events"),{Worker:ryt}=require("worker_threads"),{join:nyt}=require("path"),{pathToFileURL:syt}=require("url"),{wait:iyt}=Zpe(),{WRITE_INDEX:Oa,READ_INDEX:Mu}=t0e(),ayt=require("buffer"),oyt=require("assert"),Se=Symbol("kImpl"),cyt=ayt.constants.MAX_STRING_LENGTH,a1=class{constructor(e){this._value=e}deref(){return this._value}},SR=class{register(){}unregister(){}},uyt=process.env.NODE_V8_COVERAGE?SR:global.FinalizationRegistry||SR,lyt=process.env.NODE_V8_COVERAGE?a1:global.WeakRef||a1,r0e=new uyt(t=>{t.exited||t.terminate()});function dyt(t,e){let{filename:r,workerData:n}=e,i=("__bundlerPathsOverrides"in globalThis?globalThis.__bundlerPathsOverrides:{})["thread-stream-worker"]||nyt(__dirname,"lib","worker.js"),a=new ryt(i,{...e.workerOpts,trackUnmanagedFds:!1,workerData:{filename:r.indexOf("file://")===0?r:syt(r).href,dataBuf:t[Se].dataBuf,stateBuf:t[Se].stateBuf,workerData:{$context:{threadStreamVersion:eyt},...n}}});return a.stream=new a1(t),a.on("message",fyt),a.on("exit",s0e),r0e.register(t,a),a}function n0e(t){oyt(!t[Se].sync),t[Se].needDrain&&(t[Se].needDrain=!1,t.emit("drain"))}function _R(t){let e=Atomics.load(t[Se].state,Oa),r=t[Se].data.length-e;if(r>0){if(t[Se].buf.length===0){t[Se].flushing=!1,t[Se].ending?P5(t):t[Se].needDrain&&process.nextTick(n0e,t);return}let n=t[Se].buf.slice(0,r),s=Buffer.byteLength(n);s<=r?(t[Se].buf=t[Se].buf.slice(r),vR(t,n,_R.bind(null,t))):t.flush(()=>{if(!t.destroyed){for(Atomics.store(t[Se].state,Mu,0),Atomics.store(t[Se].state,Oa,0);s>t[Se].data.length;)r=r/2,n=t[Se].buf.slice(0,r),s=Buffer.byteLength(n);t[Se].buf=t[Se].buf.slice(r),vR(t,n,_R.bind(null,t))}})}else if(r===0){if(e===0&&t[Se].buf.length===0)return;t.flush(()=>{Atomics.store(t[Se].state,Mu,0),Atomics.store(t[Se].state,Oa,0),_R(t)})}else Wu(t,new Error("overwritten"))}function fyt(t){let e=this.stream.deref();if(e===void 0){this.exited=!0,this.terminate();return}switch(t.code){case"READY":this.stream=new lyt(e),e.flush(()=>{e[Se].ready=!0,e.emit("ready")});break;case"ERROR":Wu(e,t.err);break;case"EVENT":Array.isArray(t.args)?e.emit(t.name,...t.args):e.emit(t.name,t.args);break;case"WARNING":process.emitWarning(t.err);break;default:Wu(e,new Error("this should not happen: "+t.code))}}function s0e(t){let e=this.stream.deref();e!==void 0&&(r0e.unregister(e),e.worker.exited=!0,e.worker.off("exit",s0e),Wu(e,t!==0?new Error("the worker thread exited"):null))}var R5=class extends tyt{constructor(e={}){if(super(),e.bufferSize<4)throw new Error("bufferSize must at least fit a 4-byte utf-8 char");this[Se]={},this[Se].stateBuf=new SharedArrayBuffer(128),this[Se].state=new Int32Array(this[Se].stateBuf),this[Se].dataBuf=new SharedArrayBuffer(e.bufferSize||4*1024*1024),this[Se].data=Buffer.from(this[Se].dataBuf),this[Se].sync=e.sync||!1,this[Se].ending=!1,this[Se].ended=!1,this[Se].needDrain=!1,this[Se].destroyed=!1,this[Se].flushing=!1,this[Se].ready=!1,this[Se].finished=!1,this[Se].errored=null,this[Se].closed=!1,this[Se].buf="",this.worker=dyt(this,e),this.on("message",(r,n)=>{this.worker.postMessage(r,n)})}write(e){if(this[Se].destroyed)return N5(this,new Error("the worker has exited")),!1;if(this[Se].ending)return N5(this,new Error("the worker is ending")),!1;if(this[Se].flushing&&this[Se].buf.length+e.length>=cyt)try{w5(this),this[Se].flushing=!0}catch(r){return Wu(this,r),!1}if(this[Se].buf+=e,this[Se].sync)try{return w5(this),!0}catch(r){return Wu(this,r),!1}return this[Se].flushing||(this[Se].flushing=!0,setImmediate(_R,this)),this[Se].needDrain=this[Se].data.length-this[Se].buf.length-Atomics.load(this[Se].state,Oa)<=0,!this[Se].needDrain}end(){this[Se].destroyed||(this[Se].ending=!0,P5(this))}flush(e){if(this[Se].destroyed){typeof e=="function"&&process.nextTick(e,new Error("the worker has exited"));return}let r=Atomics.load(this[Se].state,Oa);iyt(this[Se].state,Mu,r,1/0,(n,s)=>{if(n){Wu(this,n),process.nextTick(e,n);return}if(s==="not-equal"){this.flush(e);return}process.nextTick(e)})}flushSync(){this[Se].destroyed||(w5(this),O5(this))}unref(){this.worker.unref()}ref(){this.worker.ref()}get ready(){return this[Se].ready}get destroyed(){return this[Se].destroyed}get closed(){return this[Se].closed}get writable(){return!this[Se].destroyed&&!this[Se].ending}get writableEnded(){return this[Se].ending}get writableFinished(){return this[Se].finished}get writableNeedDrain(){return this[Se].needDrain}get writableObjectMode(){return!1}get writableErrored(){return this[Se].errored}};function N5(t,e){setImmediate(()=>{t.emit("error",e)})}function Wu(t,e){t[Se].destroyed||(t[Se].destroyed=!0,e&&(t[Se].errored=e,N5(t,e)),t.worker.exited?setImmediate(()=>{t[Se].closed=!0,t.emit("close")}):t.worker.terminate().catch(()=>{}).then(()=>{t[Se].closed=!0,t.emit("close")}))}function vR(t,e,r){let n=Atomics.load(t[Se].state,Oa),s=Buffer.byteLength(e);return t[Se].data.write(e,n),Atomics.store(t[Se].state,Oa,n+s),Atomics.notify(t[Se].state,Oa),r(),!0}function P5(t){if(!(t[Se].ended||!t[Se].ending||t[Se].flushing)){t[Se].ended=!0;try{t.flushSync();let e=Atomics.load(t[Se].state,Mu);Atomics.store(t[Se].state,Oa,-1),Atomics.notify(t[Se].state,Oa);let r=0;for(;e!==-1;){if(Atomics.wait(t[Se].state,Mu,e,1e3),e=Atomics.load(t[Se].state,Mu),e===-2){Wu(t,new Error("end() failed"));return}if(++r===10){Wu(t,new Error("end() took too long (10s)"));return}}process.nextTick(()=>{t[Se].finished=!0,t.emit("finish")})}catch(e){Wu(t,e)}}}function w5(t){let e=()=>{t[Se].ending?P5(t):t[Se].needDrain&&process.nextTick(n0e,t)};for(t[Se].flushing=!1;t[Se].buf.length!==0;){let r=Atomics.load(t[Se].state,Oa),n=t[Se].data.length-r;if(n===0){O5(t),Atomics.store(t[Se].state,Mu,0),Atomics.store(t[Se].state,Oa,0);continue}else if(n<0)throw new Error("overwritten");let s=t[Se].buf.slice(0,n),i=Buffer.byteLength(s);if(i<=n)t[Se].buf=t[Se].buf.slice(n),vR(t,s,e);else{for(O5(t),Atomics.store(t[Se].state,Mu,0),Atomics.store(t[Se].state,Oa,0);i>t[Se].buf.length;)n=n/2,s=t[Se].buf.slice(0,n),i=Buffer.byteLength(s);t[Se].buf=t[Se].buf.slice(n),vR(t,s,e)}}}function O5(t){if(t[Se].flushing)throw new Error("unable to flush while flushing");let e=Atomics.load(t[Se].state,Oa),r=0;for(;;){let n=Atomics.load(t[Se].state,Mu);if(n===-2)throw Error("_flushSync failed");if(n!==e)Atomics.wait(t[Se].state,Mu,n,1e3);else break;if(++r===10)throw new Error("_flushSync took too long (10s)")}}i0e.exports=R5});var L5=E((pPr,o0e)=>{"use strict";var{createRequire:pyt}=require("module"),myt=h5(),{join:D5,isAbsolute:hyt,sep:gyt}=require("path"),Ayt=v5(),k5=T5(),yyt=a0e();function xyt(t){k5.register(t,Eyt),k5.registerBeforeExit(t,_yt),t.on("close",function(){k5.unregister(t)})}function byt(t,e,r){let n=new yyt({filename:t,workerData:e,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&&xyt(n)}function i(){n.closed||(n.flushSync(),Ayt(100),n.end())}return n}function Eyt(t){t.ref(),t.flushSync(),t.end(),t.once("close",function(){t.unref()})}function _yt(t){t.flushSync()}function Syt(t){let{pipeline:e,targets:r,levels:n,dedupe:s,options:i={},worker:a={},caller:o=myt()}=t,c=typeof o=="string"?[o]:o,u="__bundlerPathsOverrides"in globalThis?globalThis.__bundlerPathsOverrides:{},l=t.target;if(l&&r)throw new Error("only one of target or targets can be specified");return r?(l=u["pino-worker"]||D5(__dirname,"worker.js"),i.targets=r.map(f=>({...f,target:d(f.target)}))):e&&(l=u["pino-pipeline-worker"]||D5(__dirname,"worker-pipeline.js"),i.targets=e.map(f=>({...f,target:d(f.target)}))),n&&(i.levels=n),s&&(i.dedupe=s),i.pinoWillSendConfig=!0,byt(d(l),i,a);function d(f){if(f=u[f]||f,hyt(f)||f.indexOf("file://")===0)return f;if(f==="pino/file")return D5(__dirname,"..","file.js");let p;for(let m of c)try{let h=m==="node:repl"?process.cwd()+gyt:m;p=pyt(h).resolve(f);break}catch{continue}if(!p)throw new Error(`unable to determine transport target for "${f}"`);return p}}o0e.exports=Syt});var TR=E((mPr,y0e)=>{"use strict";var c0e=Mpe(),{mapHttpRequest:vyt,mapHttpResponse:Cyt}=m5(),M5=Qpe(),u0e=T5(),{lsCacheSym:Iyt,chindingsSym:f0e,writeSym:l0e,serializersSym:p0e,formatOptsSym:d0e,endSym:Tyt,stringifiersSym:m0e,stringifySym:h0e,stringifySafeSym:W5,wildcardFirstSym:g0e,nestedKeySym:wyt,formattersSym:A0e,messageKeySym:Ryt,errorKeySym:Nyt,nestedKeyStrSym:Oyt,msgPrefixSym:CR}=$A(),{isMainThread:Pyt}=require("worker_threads"),Dyt=L5();function UA(){}function kyt(t,e){if(!e)return r;return function(...s){e.call(this,s,r,t)};function r(n,...s){if(typeof n=="object"){let i=n;n!==null&&(n.method&&n.headers&&n.socket?n=vyt(n):typeof n.setHeader=="function"&&(n=Cyt(n)));let a;i===null&&s.length===0?a=[null]:(i=s.shift(),a=s),typeof this[CR]=="string"&&i!==void 0&&i!==null&&(i=this[CR]+i),this[l0e](n,c0e(i,a,this[d0e]),t)}else{let i=n===void 0?s.shift():n;typeof this[CR]=="string"&&i!==void 0&&i!==null&&(i=this[CR]+i),this[l0e](null,c0e(i,s,this[d0e]),t)}}}function B5(t){let e="",r=0,n=!1,s=255,i=t.length;if(i>100)return JSON.stringify(t);for(var a=0;a=32;a++)s=t.charCodeAt(a),(s===34||s===92)&&(e+=t.slice(r,a)+"\\",r=a,n=!0);return n?e+=t.slice(r):e=t,s<32?JSON.stringify(t):'"'+e+'"'}function Lyt(t,e,r,n){let s=this[h0e],i=this[W5],a=this[m0e],o=this[Tyt],c=this[f0e],u=this[p0e],l=this[A0e],d=this[Ryt],f=this[Nyt],p=this[Iyt][r]+n;p=p+c;let m;l.log&&(t=l.log(t));let h=a[g0e],A="";for(let b in t)if(m=t[b],Object.prototype.hasOwnProperty.call(t,b)&&m!==void 0){u[b]?m=u[b](m):b===f&&u.err&&(m=u.err(m));let y=a[b]||h;switch(typeof m){case"undefined":case"function":continue;case"number":Number.isFinite(m)===!1&&(m=null);case"boolean":y&&(m=y(m));break;case"string":m=(y||B5)(m);break;default:m=(y||s)(m,i)}if(m===void 0)continue;let x=B5(b);A+=","+x+":"+m}let g="";if(e!==void 0){m=u[d]?u[d](e):e;let b=a[d]||h;switch(typeof m){case"function":break;case"number":Number.isFinite(m)===!1&&(m=null);case"boolean":b&&(m=b(m)),g=',"'+d+'":'+m;break;case"string":m=(b||B5)(m),g=',"'+d+'":'+m;break;default:m=(b||s)(m,i),g=',"'+d+'":'+m}}return this[wyt]&&A?p+this[Oyt]+A.slice(1)+"}"+g+o:p+A+g+o}function Byt(t,e){let r,n=t[f0e],s=t[h0e],i=t[W5],a=t[m0e],o=a[g0e],c=t[p0e],u=t[A0e].bindings;e=u(e);for(let l in e)if(r=e[l],(l!=="level"&&l!=="serializers"&&l!=="formatters"&&l!=="customLevels"&&e.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 Myt(t){return t.write!==t.constructor.prototype.write}var Wyt=process.env.NODE_V8_COVERAGE||process.env.V8_COVERAGE;function IR(t){let e=new M5(t);return e.on("error",r),!Wyt&&!t.sync&&Pyt&&(u0e.register(e,$yt),e.on("close",function(){u0e.unregister(e)})),e;function r(n){if(n.code==="EPIPE"){e.write=UA,e.end=UA,e.flushSync=UA,e.destroy=UA;return}e.removeListener("error",r),e.emit("error",n)}}function $yt(t,e){t.destroyed||(e==="beforeExit"?(t.flush(),t.on("drain",function(){t.end()})):t.flushSync())}function Fyt(t){return function(r,n,s={},i){if(typeof s=="string")i=IR({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=IR({dest:i})}else if(s instanceof M5||s.writable||s._writableState)i=s,s={};else if(s.transport){if(s.transport instanceof M5||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=Dyt({caller:n,...s.transport,levels:c})}if(s=Object.assign({},t,s),s.serializers=Object.assign({},t.serializers,s.serializers),s.formatters=Object.assign({},t.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=UA),i||(Myt(process.stdout)?i=process.stdout:i=IR({fd:process.stdout.fd||1})),{opts:s,stream:i}}}function Uyt(t,e){try{return JSON.stringify(t)}catch{try{return(e||this[W5])(t)}catch{return'"[unable to serialize, circular reference is too complex to analyze]"'}}}function qyt(t,e,r){return{level:t,bindings:e,log:r}}function jyt(t){let e=Number(t);return typeof t=="string"&&Number.isFinite(e)?e:t===void 0?1:t}y0e.exports={noop:UA,buildSafeSonicBoom:IR,asChindings:Byt,asJson:Lyt,genLog:kyt,createArgsNormalizer:Fyt,stringify:Uyt,buildFormatters:qyt,normalizeDestFileDescriptor:jyt}});var wR=E((hPr,x0e)=>{var Hyt={trace:10,debug:20,info:30,warn:40,error:50,fatal:60},Qyt={ASC:"ASC",DESC:"DESC"};x0e.exports={DEFAULT_LEVELS:Hyt,SORTING_ORDER:Qyt}});var U5=E((gPr,S0e)=>{"use strict";var{lsCacheSym:Gyt,levelValSym:$5,useOnlyCustomLevelsSym:Vyt,streamSym:zyt,formattersSym:Kyt,hooksSym:Yyt,levelCompSym:b0e}=$A(),{noop:Jyt,genLog:xm}=TR(),{DEFAULT_LEVELS:$u,SORTING_ORDER:E0e}=wR(),_0e={fatal:t=>{let e=xm($u.fatal,t);return function(...r){let n=this[zyt];if(e.call(this,...r),typeof n.flushSync=="function")try{n.flushSync()}catch{}}},error:t=>xm($u.error,t),warn:t=>xm($u.warn,t),info:t=>xm($u.info,t),debug:t=>xm($u.debug,t),trace:t=>xm($u.trace,t)},F5=Object.keys($u).reduce((t,e)=>(t[$u[e]]=e,t),{}),Xyt=Object.keys(F5).reduce((t,e)=>(t[e]='{"level":'+Number(e),t),{});function Zyt(t){let e=t[Kyt].level,{labels:r}=t.levels,n={};for(let s in r){let i=e(r[s],Number(s));n[s]=JSON.stringify(i).slice(0,-1)}return t[Gyt]=n,t}function ext(t,e){if(e)return!1;switch(t){case"fatal":case"error":case"warn":case"info":case"debug":case"trace":return!0;default:return!1}}function txt(t){let{labels:e,values:r}=this.levels;if(typeof t=="number"){if(e[t]===void 0)throw Error("unknown level value"+t);t=e[t]}if(r[t]===void 0)throw Error("unknown level "+t);let n=this[$5],s=this[$5]=r[t],i=this[Vyt],a=this[b0e],o=this[Yyt].logMethod;for(let c in r){if(a(r[c],s)===!1){this[c]=Jyt;continue}this[c]=ext(c,i)?_0e[c](o):xm(r[c],o)}this.emit("level-change",t,s,e[n],n,this)}function rxt(t){let{levels:e,levelVal:r}=this;return e&&e.labels?e.labels[r]:""}function nxt(t){let{values:e}=this.levels,r=e[t];return r!==void 0&&this[b0e](r,this[$5])}function sxt(t,e,r){return t===E0e.DESC?e<=r:e>=r}function ixt(t){return typeof t=="string"?sxt.bind(null,t):t}function axt(t=null,e=!1){let r=t?Object.keys(t).reduce((i,a)=>(i[t[a]]=a,i),{}):null,n=Object.assign(Object.create(Object.prototype,{Infinity:{value:"silent"}}),e?null:F5,r),s=Object.assign(Object.create(Object.prototype,{silent:{value:1/0}}),e?null:$u,t);return{labels:n,values:s}}function oxt(t,e,r){if(typeof t=="number"){if(![].concat(Object.keys(e||{}).map(i=>e[i]),r?[]:Object.keys(F5).map(i=>+i),1/0).includes(t))throw Error(`default level:${t} must be included in custom levels`);return}let n=Object.assign(Object.create(Object.prototype,{silent:{value:1/0}}),r?null:$u,e);if(!(t in n))throw Error(`default level:${t} must be included in custom levels`)}function cxt(t,e){let{labels:r,values:n}=t;for(let s in e){if(s in n)throw Error("levels cannot be overridden");if(e[s]in r)throw Error("pre-existing level values cannot be used for new levels")}}function uxt(t){if(typeof t!="function"&&!(typeof t=="string"&&Object.values(E0e).includes(t)))throw new Error('Levels comparison should be one of "ASC", "DESC" or "function" type')}S0e.exports={initialLsCache:Xyt,genLsCache:Zyt,levelMethods:_0e,getLevel:rxt,setLevel:txt,isLevelEnabled:nxt,mappings:axt,assertNoLevelCollisions:cxt,assertDefaultLevelFound:oxt,genLevelComparison:ixt,assertLevelComparison:uxt}});var q5=E((APr,v0e)=>{"use strict";v0e.exports={version:"8.21.0"}});var L0e=E((xPr,k0e)=>{"use strict";var{EventEmitter:lxt}=require("events"),{lsCacheSym:dxt,levelValSym:fxt,setLevelSym:H5,getLevelSym:C0e,chindingsSym:Q5,parsedChindingsSym:pxt,mixinSym:mxt,asJsonSym:N0e,writeSym:hxt,mixinMergeStrategySym:gxt,timeSym:Axt,timeSliceIndexSym:yxt,streamSym:O0e,serializersSym:bm,formattersSym:j5,errorKeySym:xxt,messageKeySym:bxt,useOnlyCustomLevelsSym:Ext,needsMetadataGsym:_xt,redactFmtSym:Sxt,stringifySym:vxt,formatOptsSym:Cxt,stringifiersSym:Ixt,msgPrefixSym:I0e}=$A(),{getLevel:Txt,setLevel:wxt,isLevelEnabled:Rxt,mappings:Nxt,initialLsCache:Oxt,genLsCache:Pxt,assertNoLevelCollisions:Dxt}=U5(),{asChindings:P0e,asJson:kxt,buildFormatters:T0e,stringify:w0e}=TR(),{version:Lxt}=q5(),Bxt=_5(),Mxt=class{},D0e={constructor:Mxt,child:Wxt,bindings:$xt,setBindings:Fxt,flush:Hxt,isLevelEnabled:Rxt,version:Lxt,get level(){return this[C0e]()},set level(t){this[H5](t)},get levelVal(){return this[fxt]},set levelVal(t){throw Error("levelVal is read-only")},[dxt]:Oxt,[hxt]:qxt,[N0e]:kxt,[C0e]:Txt,[H5]:wxt};Object.setPrototypeOf(D0e,lxt.prototype);k0e.exports=function(){return Object.create(D0e)};var R0e=t=>t;function Wxt(t,e){if(!t)throw Error("missing bindings for child Pino");e=e||{};let r=this[bm],n=this[j5],s=Object.create(this);if(e.hasOwnProperty("serializers")===!0){s[bm]=Object.create(null);for(let l in r)s[bm][l]=r[l];let c=Object.getOwnPropertySymbols(r);for(var i=0;i{"use strict";var{hasOwnProperty:o1}=Object.prototype,_m=z5();_m.configure=z5;_m.stringify=_m;_m.default=_m;K5.stringify=_m;K5.configure=z5;W0e.exports=_m;var Qxt=/[\u0000-\u001f\u0022\u005c\ud800-\udfff]/;function pp(t){return t.length<5e3&&!Qxt.test(t)?`"${t}"`:JSON.stringify(t)}function G5(t,e){if(t.length>200||e)return t.sort(e);for(let r=1;rn;)t[s]=t[s-1],s--;t[s]=n}return t}var Gxt=Object.getOwnPropertyDescriptor(Object.getPrototypeOf(Object.getPrototypeOf(new Int8Array)),Symbol.toStringTag).get;function V5(t){return Gxt.call(t)!==void 0&&t.length!==0}function B0e(t,e,r){t.length= 1`)}return r===void 0?1/0:r}function Em(t){return t===1?"1 item":`${t} items`}function Yxt(t){let e=new Set;for(let r of t)(typeof r=="string"||typeof r=="number")&&e.add(String(r));return e}function Jxt(t){if(o1.call(t,"strict")){let e=t.strict;if(typeof e!="boolean")throw new TypeError('The "strict" argument must be of type boolean');if(e)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 z5(t){t={...t};let e=Jxt(t);e&&(t.bigint===void 0&&(t.bigint=!1),"circularValue"in t||(t.circularValue=Error));let r=Vxt(t),n=Kxt(t,"bigint"),s=zxt(t),i=typeof s=="function"?s:void 0,a=M0e(t,"maximumDepth"),o=M0e(t,"maximumBreadth");function c(p,m,h,A,g,b){let y=m[p];switch(typeof y=="object"&&y!==null&&typeof y.toJSON=="function"&&(y=y.toJSON(p)),y=A.call(m,p,y),typeof y){case"string":return pp(y);case"object":{if(y===null)return"null";if(h.indexOf(y)!==-1)return r;let x="",v=",",C=b;if(Array.isArray(y)){if(y.length===0)return"[]";if(ao){let Z=y.length-o-1;x+=`${v}"... ${Em(Z)} not stringified"`}return g!==""&&(x+=` -${C}`),h.pop(),`[${x}]`}let R=Object.keys(y),w=R.length;if(w===0)return"{}";if(ao){let M=w-o;x+=`${P}"...":${N}"${Em(M)} not stringified"`,P=v}return g!==""&&P.length>1&&(x=` -${b}${x} -${C}`),h.pop(),`{${x}}`}case"number":return isFinite(y)?String(y):e?e(y):"null";case"boolean":return y===!0?"true":"false";case"undefined":return;case"bigint":if(n)return String(y);default:return e?e(y):void 0}}function u(p,m,h,A,g,b){switch(typeof m=="object"&&m!==null&&typeof m.toJSON=="function"&&(m=m.toJSON(p)),typeof m){case"string":return pp(m);case"object":{if(m===null)return"null";if(h.indexOf(m)!==-1)return r;let y=b,x="",v=",";if(Array.isArray(m)){if(m.length===0)return"[]";if(ao){let L=m.length-o-1;x+=`${v}"... ${Em(L)} not stringified"`}return g!==""&&(x+=` -${y}`),h.pop(),`[${x}]`}h.push(m);let C="";g!==""&&(b+=g,v=`, -${b}`,C=" ");let R="";for(let w of A){let N=u(w,m[w],h,A,g,b);N!==void 0&&(x+=`${R}${pp(w)}:${C}${N}`,R=v)}return g!==""&&R.length>1&&(x=` -${b}${x} -${y}`),h.pop(),`{${x}}`}case"number":return isFinite(m)?String(m):e?e(m):"null";case"boolean":return m===!0?"true":"false";case"undefined":return;case"bigint":if(n)return String(m);default:return e?e(m):void 0}}function l(p,m,h,A,g){switch(typeof m){case"string":return pp(m);case"object":{if(m===null)return"null";if(typeof m.toJSON=="function"){if(m=m.toJSON(p),typeof m!="object")return l(p,m,h,A,g);if(m===null)return"null"}if(h.indexOf(m)!==-1)return r;let b=g;if(Array.isArray(m)){if(m.length===0)return"[]";if(ao){let B=m.length-o-1;N+=`${P}"... ${Em(B)} not stringified"`}return N+=` -${b}`,h.pop(),`[${N}]`}let y=Object.keys(m),x=y.length;if(x===0)return"{}";if(ao){let N=x-o;C+=`${R}"...": "${Em(N)} not stringified"`,R=v}return R!==""&&(C=` -${g}${C} -${b}`),h.pop(),`{${C}}`}case"number":return isFinite(m)?String(m):e?e(m):"null";case"boolean":return m===!0?"true":"false";case"undefined":return;case"bigint":if(n)return String(m);default:return e?e(m):void 0}}function d(p,m,h){switch(typeof m){case"string":return pp(m);case"object":{if(m===null)return"null";if(typeof m.toJSON=="function"){if(m=m.toJSON(p),typeof m!="object")return d(p,m,h);if(m===null)return"null"}if(h.indexOf(m)!==-1)return r;let A="",g=m.length!==void 0;if(g&&Array.isArray(m)){if(m.length===0)return"[]";if(ao){let N=m.length-o-1;A+=`,"... ${Em(N)} not stringified"`}return h.pop(),`[${A}]`}let b=Object.keys(m),y=b.length;if(y===0)return"{}";if(ao){let C=y-o;A+=`${x}"...":"${Em(C)} not stringified"`}return h.pop(),`{${A}}`}case"number":return isFinite(m)?String(m):e?e(m):"null";case"boolean":return m===!0?"true":"false";case"undefined":return;case"bigint":if(n)return String(m);default:return e?e(m):void 0}}function f(p,m,h){if(arguments.length>1){let A="";if(typeof h=="number"?A=" ".repeat(Math.min(h,10)):typeof h=="string"&&(A=h.slice(0,10)),m!=null){if(typeof m=="function")return c("",{"":p},[],m,A,"");if(Array.isArray(m))return u("",p,[],Yxt(m),A,"")}if(A.length!==0)return l("",p,[],A,"")}return d("",p,[])}return f}});var q0e=E((bPr,U0e)=>{"use strict";var Y5=Symbol.for("pino.metadata"),{DEFAULT_LEVELS:F0e}=wR(),Xxt=F0e.info;function Zxt(t,e){let r=0;t=t||[],e=e||{dedupe:!1};let n=Object.create(F0e);n.silent=1/0,e.levels&&typeof e.levels=="object"&&Object.keys(e.levels).forEach(d=>{n[d]=e.levels[d]});let s={write:i,add:c,emit:a,flushSync:o,end:u,minLevel:0,streams:[],clone:l,[Y5]:!0,streamLevels:n};return Array.isArray(t)?t.forEach(c,s):c.call(s,t),t=null,s;function i(d){let f,p=this.lastLevel,{streams:m}=this,h=0,A;for(let g=tbt(m.length,e.dedupe);nbt(g,m.length,e.dedupe);g=rbt(g,e.dedupe))if(f=m[g],f.level<=p){if(h!==0&&h!==f.level)break;if(A=f.stream,A[Y5]){let{lastTime:b,lastMsg:y,lastObj:x,lastLogger:v}=this;A.lastLevel=p,A.lastTime=b,A.lastMsg=y,A.lastObj=x,A.lastLogger=v}A.write(d),e.dedupe&&(h=f.level)}else if(!e.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,p=d.write?d:d.stream;if(!f)throw Error("stream object needs to implement either StreamEntry or DestinationStream interface");let{streams:m,streamLevels:h}=this,A;typeof d.levelVal=="number"?A=d.levelVal:typeof d.level=="string"?A=h[d.level]:typeof d.level=="number"?A=d.level:A=Xxt;let g={stream:p,level:A,levelVal:void 0,id:r++};return m.unshift(g),m.sort(ebt),this.minLevel=m[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 p=0;p=0:t{"use strict";var sbt=require("os"),Y0e=m5(),ibt=h5(),abt=_5(),J0e=Lpe(),obt=L0e(),X0e=$A(),{configure:cbt}=$0e(),{assertDefaultLevelFound:ubt,mappings:Z0e,genLsCache:lbt,genLevelComparison:dbt,assertLevelComparison:fbt}=U5(),{DEFAULT_LEVELS:pbt,SORTING_ORDER:mbt}=wR(),{createArgsNormalizer:hbt,asChindings:gbt,buildSafeSonicBoom:j0e,buildFormatters:Abt,stringify:J5,normalizeDestFileDescriptor:H0e,noop:ybt}=TR(),{version:xbt}=q5(),{chindingsSym:Q0e,redactFmtSym:bbt,serializersSym:G0e,timeSym:Ebt,timeSliceIndexSym:_bt,streamSym:Sbt,stringifySym:V0e,stringifySafeSym:X5,stringifiersSym:z0e,setLevelSym:vbt,endSym:Cbt,formatOptsSym:Ibt,messageKeySym:Tbt,errorKeySym:wbt,nestedKeySym:Rbt,mixinSym:Nbt,levelCompSym:Obt,useOnlyCustomLevelsSym:Pbt,formattersSym:K0e,hooksSym:Dbt,nestedKeyStrSym:kbt,mixinMergeStrategySym:Lbt,msgPrefixSym:Bbt}=X0e,{epochTime:eme,nullTime:Mbt}=J0e,{pid:Wbt}=process,$bt=sbt.hostname(),Fbt=Y0e.err,Ubt={level:"info",levelComparison:mbt.ASC,levels:pbt,messageKey:"msg",errorKey:"err",nestedKey:null,enabled:!0,base:{pid:Wbt,hostname:$bt},serializers:Object.assign(Object.create(null),{err:Fbt}),formatters:Object.assign(Object.create(null),{bindings(t){return t},level(t,e){return{level:e}}}),hooks:{logMethod:void 0},timestamp:eme,name:void 0,redact:null,customLevels:null,useOnlyCustomLevels:!1,depthLimit:5,edgeLimit:100},qbt=hbt(Ubt),jbt=Object.assign(Object.create(null),Y0e);function Z5(...t){let e={},{opts:r,stream:n}=qbt(e,ibt(),...t),{redact:s,crlf:i,serializers:a,timestamp:o,messageKey:c,errorKey:u,nestedKey:l,base:d,name:f,level:p,customLevels:m,levelComparison:h,mixin:A,mixinMergeStrategy:g,useOnlyCustomLevels:b,formatters:y,hooks:x,depthLimit:v,edgeLimit:C,onChild:R,msgPrefix:w}=r,N=cbt({maximumDepth:v,maximumBreadth:C}),P=Abt(y.level,y.bindings,y.log),L=J5.bind({[X5]:N}),M=s?abt(s,L):{},k=s?{stringify:M[bbt]}:{stringify:L},B="}"+(i?`\r + `}});var yhe=_((lWr,ghe)=>{"use strict";ghe.exports=j1t;function j1t(t){let{secret:e,censor:r,compileRestore:n,serialize:s,groupRedact:i,nestedRedact:a,wildcards:o,wcLen:c}=t,u=[{secret:e,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 bhe=_((dWr,xhe)=>{"use strict";var Ahe=ihe(),Q1t=che(),H1t=lhe(),G1t=hhe(),{groupRedact:z1t,nestedRedact:K1t}=x8(),V1t=yhe(),Y1t=FN(),J1t=Ahe(),b8=t=>t;b8.restore=b8;var X1t="[REDACTED]";_8.rx=Y1t;_8.validator=Ahe;xhe.exports=_8;function _8(t={}){let e=Array.from(new Set(t.paths||[])),r="serialize"in t&&(t.serialize===!1||typeof t.serialize=="function")?t.serialize:JSON.stringify,n=t.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 t?t.censor:X1t,i=typeof s=="function",a=i&&s.length>1;if(e.length===0)return r||b8;J1t({paths:e,serialize:r,censor:s});let{wildcards:o,wcLen:c,secret:u}=Q1t({paths:e,censor:s}),l=G1t(),d="strict"in t?t.strict:!0;return H1t({secret:u,wcLen:c,serialize:r,strict:d,isCensorFct:i,censorFctTakesPath:a},V1t({secret:u,censor:s,compileRestore:l,serialize:r,groupRedact:z1t,nestedRedact:K1t,wildcards:o,wcLen:c}))}});var bA=_((fWr,_he)=>{"use strict";var Z1t=Symbol("pino.setLevel"),e_t=Symbol("pino.getLevel"),t_t=Symbol("pino.levelVal"),r_t=Symbol("pino.levelComp"),n_t=Symbol("pino.useLevelLabels"),s_t=Symbol("pino.useOnlyCustomLevels"),i_t=Symbol("pino.mixin"),a_t=Symbol("pino.lsCache"),o_t=Symbol("pino.chindings"),c_t=Symbol("pino.asJson"),u_t=Symbol("pino.write"),l_t=Symbol("pino.redactFmt"),d_t=Symbol("pino.time"),f_t=Symbol("pino.timeSliceIndex"),p_t=Symbol("pino.stream"),m_t=Symbol("pino.stringify"),h_t=Symbol("pino.stringifySafe"),g_t=Symbol("pino.stringifiers"),y_t=Symbol("pino.end"),A_t=Symbol("pino.formatOpts"),x_t=Symbol("pino.messageKey"),b_t=Symbol("pino.errorKey"),__t=Symbol("pino.nestedKey"),E_t=Symbol("pino.nestedKeyStr"),v_t=Symbol("pino.mixinMergeStrategy"),S_t=Symbol("pino.msgPrefix"),I_t=Symbol("pino.wildcardFirst"),C_t=Symbol.for("pino.serializers"),T_t=Symbol.for("pino.formatters"),w_t=Symbol.for("pino.hooks"),R_t=Symbol.for("pino.metadata");_he.exports={setLevelSym:Z1t,getLevelSym:e_t,levelValSym:t_t,levelCompSym:r_t,useLevelLabelsSym:n_t,mixinSym:i_t,lsCacheSym:a_t,chindingsSym:o_t,asJsonSym:c_t,writeSym:u_t,serializersSym:C_t,redactFmtSym:l_t,timeSym:d_t,timeSliceIndexSym:f_t,streamSym:p_t,stringifySym:m_t,stringifySafeSym:h_t,stringifiersSym:g_t,endSym:y_t,formatOptsSym:A_t,messageKeySym:x_t,errorKeySym:b_t,nestedKeySym:__t,wildcardFirstSym:I_t,needsMetadataGsym:R_t,useOnlyCustomLevelsSym:s_t,formattersSym:T_t,hooksSym:w_t,nestedKeyStrSym:E_t,mixinMergeStrategySym:v_t,msgPrefixSym:S_t}});var S8=_((pWr,Ihe)=>{"use strict";var v8=bhe(),{redactFmtSym:N_t,wildcardFirstSym:qN}=bA(),{rx:E8,validator:O_t}=v8,Ehe=O_t({ERR_PATHS_MUST_BE_STRINGS:()=>"pino \u2013 redacted paths must be strings",ERR_INVALID_PATH:t=>`pino \u2013 redact paths array contains an invalid path (${t})`}),vhe="[Redacted]",She=!1;function k_t(t,e){let{paths:r,censor:n}=P_t(t),s=r.reduce((o,c)=>{E8.lastIndex=0;let u=E8.exec(c),l=E8.exec(c),d=u[1]!==void 0?u[1].replace(/^(?:"|'|`)(.*)(?:"|'|`)$/,"$1"):u[0];if(d==="*"&&(d=qN),l===null)return o[d]=null,o;if(o[d]===null)return o;let{index:f}=l,p=`${c.substr(f,c.length-1)}`;return o[d]=o[d]||[],d!==qN&&o[d].length===0&&o[d].push(...o[qN]||[]),d===qN&&Object.keys(o).forEach(function(m){o[m]&&o[m].push(p)}),o[d].push(p),o},{}),i={[N_t]:v8({paths:r,censor:n,serialize:e,strict:She})},a=(...o)=>e(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]=v8({paths:s[c],censor:u,serialize:e,strict:She})}return o},i)}function P_t(t){if(Array.isArray(t))return t={paths:t,censor:vhe},Ehe(t),t;let{paths:e,censor:r=vhe,remove:n}=t;if(Array.isArray(e)===!1)throw Error("pino \u2013 redact must contain an array of strings");return n===!0&&(r=void 0),Ehe({paths:e,censor:r}),{paths:e,censor:r}}Ihe.exports=k_t});var The=_((mWr,Che)=>{"use strict";var D_t=()=>"",B_t=()=>`,"time":${Date.now()}`,L_t=()=>`,"time":${Math.round(Date.now()/1e3)}`,M_t=()=>`,"time":"${new Date(Date.now()).toISOString()}"`;Che.exports={nullTime:D_t,epochTime:B_t,unixTime:L_t,isoTime:M_t}});var Rhe=_((hWr,whe)=>{"use strict";function W_t(t){try{return JSON.stringify(t)}catch{return'"[Circular]"'}}whe.exports=$_t;function $_t(t,e,r){var n=r&&r.stringify||W_t,s=1;if(typeof t=="object"&&t!==null){var i=e.length+s;if(i===1)return t;var a=new Array(i);a[0]=n(t);for(var o=1;o-1?d:0,t.charCodeAt(p+1)){case 100:case 102:if(l>=c||e[l]==null)break;d=c||e[l]==null)break;d=c||e[l]===void 0)break;d",d=p+2,p++;break}u+=n(e[l]),d=p+2,p++;break;case 115:if(l>=c)break;d{"use strict";if(typeof SharedArrayBuffer<"u"&&typeof Atomics<"u"){let e=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(t,0,0,Number(r))},t=new Int32Array(new SharedArrayBuffer(4));I8.exports=e}else{let t=function(e){if((e>0&&e<1/0)===!1)throw typeof e!="number"&&typeof e!="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(e);for(;n>Date.now(););};I8.exports=t}});var Mhe=_((yWr,Lhe)=>{"use strict";var us=require("fs"),U_t=require("events"),F_t=require("util").inherits,Nhe=require("path"),w8=C8(),jN=100,QN=Buffer.allocUnsafe(0),q_t=16*1024,Ohe="buffer",khe="utf8";function Phe(t,e){e._opening=!0,e._writing=!0,e._asyncDrainScheduled=!1;function r(i,a){if(i){e._reopening=!1,e._writing=!1,e._opening=!1,e.sync?process.nextTick(()=>{e.listenerCount("error")>0&&e.emit("error",i)}):e.emit("error",i);return}let o=e._reopening;e.fd=a,e.file=t,e._reopening=!1,e._opening=!1,e._writing=!1,e.sync?process.nextTick(()=>e.emit("ready")):e.emit("ready"),!e.destroyed&&(!e._writing&&e._len>e.minLength||e._flushPending?e._actualWrite():o&&process.nextTick(()=>e.emit("drain")))}let n=e.append?"a":"w",s=e.mode;if(e.sync)try{e.mkdir&&us.mkdirSync(Nhe.dirname(t),{recursive:!0});let i=us.openSync(t,n,s);r(null,i)}catch(i){throw r(i),i}else e.mkdir?us.mkdir(Nhe.dirname(t),{recursive:!0},i=>{if(i)return r(i);us.open(t,n,s,r)}):us.open(t,n,s,r)}function Vc(t){if(!(this instanceof Vc))return new Vc(t);let{fd:e,dest:r,minLength:n,maxLength:s,maxWrite:i,sync:a,append:o=!0,mkdir:c,retryEAGAIN:u,fsync:l,contentMode:d,mode:f}=t||{};e=e||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||q_t,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 p,m;if(d===Ohe)this._writingBuf=QN,this.write=H_t,this.flush=z_t,this.flushSync=V_t,this._actualWrite=J_t,p=()=>us.writeSync(this.fd,this._writingBuf),m=()=>us.write(this.fd,this._writingBuf,this.release);else if(d===void 0||d===khe)this._writingBuf="",this.write=Q_t,this.flush=G_t,this.flushSync=K_t,this._actualWrite=Y_t,p=()=>us.writeSync(this.fd,this._writingBuf,"utf8"),m=()=>us.write(this.fd,this._writingBuf,"utf8",this.release);else throw new Error(`SonicBoom supports "${khe}" and "${Ohe}", but passed ${d}`);if(typeof e=="number")this.fd=e,process.nextTick(()=>this.emit("ready"));else if(typeof e=="string")Phe(e,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=(h,y)=>{if(h){if((h.code==="EAGAIN"||h.code==="EBUSY")&&this.retryEAGAIN(h,this._writingBuf.length,this._len-this._writingBuf.length))if(this.sync)try{w8(jN),this.release(void 0,0)}catch(x){this.release(x)}else setTimeout(m,jN);else this._writing=!1,this.emit("error",h);return}this.emit("write",y);let g=T8(this._writingBuf,this._len,y);if(this._len=g.len,this._writingBuf=g.writingBuf,this._writingBuf.length){if(!this.sync){m();return}try{do{let x=p(),A=T8(this._writingBuf,this._len,x);this._len=A.len,this._writingBuf=A.writingBuf}while(this._writingBuf.length)}catch(x){this.release(x);return}}this._fsync&&us.fsyncSync(this.fd);let b=this._len;this._reopening?(this._writing=!1,this._reopening=!1,this.reopen()):b>this.minLength?this._actualWrite():this._ending?b>0?this._actualWrite():(this._writing=!1,HN(this)):(this._writing=!1,this.sync?this._asyncDrainScheduled||(this._asyncDrainScheduled=!0,process.nextTick(j_t,this)):this.emit("drain"))},this.on("newListener",function(h){h==="drain"&&(this._asyncDrainScheduled=!1)})}function T8(t,e,r){return typeof t=="string"&&Buffer.byteLength(t)!==r&&(r=Buffer.from(t).subarray(0,r).toString().length),e=Math.max(e-r,0),t=t.slice(r),{writingBuf:t,len:e}}function j_t(t){t.listenerCount("drain")>0&&(t._asyncDrainScheduled=!1,t.emit("drain"))}F_t(Vc,U_t);function Dhe(t,e){return t.length===0?QN:t.length===1?t[0]:Buffer.concat(t,e)}function Q_t(t){if(this.destroyed)throw new Error("SonicBoom destroyed");let e=this._len+t.length,r=this._bufs;return this.maxLength&&e>this.maxLength?(this.emit("drop",t),this._lenthis.maxWrite?r.push(""+t):r[r.length-1]+=t,this._len=e,!this._writing&&this._len>=this.minLength&&this._actualWrite(),this._lenthis.maxLength?(this.emit("drop",t),this._lenthis.maxWrite?(r.push([t]),n.push(t.length)):(r[r.length-1].push(t),n[n.length-1]+=t.length),this._len=e,!this._writing&&this._len>=this.minLength&&this._actualWrite(),this._len{this._fsync?(this._flushPending=!1,t()):us.fsync(this.fd,n=>{this._flushPending=!1,t(n)}),this.off("error",r)},r=n=>{this._flushPending=!1,t(n),this.off("drain",e)};this.once("drain",e),this.once("error",r)}function G_t(t){if(t!=null&&typeof t!="function")throw new Error("flush cb must be a function");if(this.destroyed){let e=new Error("SonicBoom destroyed");if(t){t(e);return}throw e}if(this.minLength<=0){t?.();return}t&&Bhe.call(this,t),!this._writing&&(this._bufs.length===0&&this._bufs.push(""),this._actualWrite())}function z_t(t){if(t!=null&&typeof t!="function")throw new Error("flush cb must be a function");if(this.destroyed){let e=new Error("SonicBoom destroyed");if(t){t(e);return}throw e}if(this.minLength<=0){t?.();return}t&&Bhe.call(this,t),!this._writing&&(this._bufs.length===0&&(this._bufs.push([]),this._lens.push(0)),this._actualWrite())}Vc.prototype.reopen=function(t){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this._opening){this.once("ready",()=>{this.reopen(t)});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(t&&(this.file=t),this._reopening=!0,this._writing)return;let e=this.fd;this.once("ready",()=>{e!==this.fd&&us.close(e,r=>{if(r)return this.emit("error",r)})}),Phe(this.file,this)};Vc.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():HN(this)))};function K_t(){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 t="";for(;this._bufs.length||t;){t.length<=0&&(t=this._bufs[0]);try{let e=us.writeSync(this.fd,t,"utf8"),r=T8(t,this._len,e);t=r.writingBuf,this._len=r.len,t.length<=0&&this._bufs.shift()}catch(e){if((e.code==="EAGAIN"||e.code==="EBUSY")&&!this.retryEAGAIN(e,t.length,this._len-t.length))throw e;w8(jN)}}try{us.fsyncSync(this.fd)}catch{}}function V_t(){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=QN);let t=QN;for(;this._bufs.length||t.length;){t.length<=0&&(t=Dhe(this._bufs[0],this._lens[0]));try{let e=us.writeSync(this.fd,t);t=t.subarray(e),this._len=Math.max(this._len-e,0),t.length<=0&&(this._bufs.shift(),this._lens.shift())}catch(e){if((e.code==="EAGAIN"||e.code==="EBUSY")&&!this.retryEAGAIN(e,t.length,this._len-t.length))throw e;w8(jN)}}}Vc.prototype.destroy=function(){this.destroyed||HN(this)};function Y_t(){let t=this.release;if(this._writing=!0,this._writingBuf=this._writingBuf||this._bufs.shift()||"",this.sync)try{let e=us.writeSync(this.fd,this._writingBuf,"utf8");t(null,e)}catch(e){t(e)}else us.write(this.fd,this._writingBuf,"utf8",t)}function J_t(){let t=this.release;if(this._writing=!0,this._writingBuf=this._writingBuf.length?this._writingBuf:Dhe(this._bufs.shift(),this._lens.shift()),this.sync)try{let e=us.writeSync(this.fd,this._writingBuf);t(null,e)}catch(e){t(e)}else us.write(this.fd,this._writingBuf,t)}function HN(t){if(t.fd===-1){t.once("ready",HN.bind(null,t));return}t.destroyed=!0,t._bufs=[],t._lens=[],us.fsync(t.fd,e);function e(){t.fd!==1&&t.fd!==2?us.close(t.fd,r):r()}function r(n){if(n){t.emit("error",n);return}t._ending&&!t._writing&&t.emit("finish"),t.emit("close")}}Vc.SonicBoom=Vc;Vc.default=Vc;Lhe.exports=Vc});var R8=_((AWr,qhe)=>{"use strict";var Yc={exit:[],beforeExit:[]},Whe={exit:eEt,beforeExit:tEt},_A;function X_t(){_A===void 0&&(_A=new FinalizationRegistry(rEt))}function Z_t(t){Yc[t].length>0||process.on(t,Whe[t])}function $he(t){Yc[t].length>0||(process.removeListener(t,Whe[t]),Yc.exit.length===0&&Yc.beforeExit.length===0&&(_A=void 0))}function eEt(){Uhe("exit")}function tEt(){Uhe("beforeExit")}function Uhe(t){for(let e of Yc[t]){let r=e.deref(),n=e.fn;r!==void 0&&n(r,t)}Yc[t]=[]}function rEt(t){for(let e of["exit","beforeExit"]){let r=Yc[e].indexOf(t);Yc[e].splice(r,r+1),$he(e)}}function Fhe(t,e,r){if(e===void 0)throw new Error("the object can't be undefined");Z_t(t);let n=new WeakRef(e);n.fn=r,X_t(),_A.register(e,n),Yc[t].push(n)}function nEt(t,e){Fhe("exit",t,e)}function sEt(t,e){Fhe("beforeExit",t,e)}function iEt(t){if(_A!==void 0){_A.unregister(t);for(let e of["exit","beforeExit"])Yc[e]=Yc[e].filter(r=>{let n=r.deref();return n&&n!==t}),$he(e)}}qhe.exports={register:nEt,registerBeforeExit:sEt,unregister:iEt}});var jhe=_((xWr,aEt)=>{aEt.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 Hhe=_((bWr,Qhe)=>{"use strict";function oEt(t,e,r,n,s){let i=Date.now()+n,a=Atomics.load(t,e);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(t,e),a===o?c(u>=1e3?1e3:u*2):a===r?s(null,"ok"):s(null,"not-equal")},u)};c(1)}function cEt(t,e,r,n,s){let i=Date.now()+n,a=Atomics.load(t,e);if(a!==r){s(null,"ok");return}let o=c=>{Date.now()>i?s(null,"timed-out"):setTimeout(()=>{a=Atomics.load(t,e),a!==r?s(null,"ok"):o(c>=1e3?1e3:c*2)},c)};o(1)}Qhe.exports={wait:oEt,waitDiff:cEt}});var zhe=_((_Wr,Ghe)=>{"use strict";Ghe.exports={WRITE_INDEX:4,READ_INDEX:8}});var Xhe=_((EWr,Jhe)=>{"use strict";var{version:uEt}=jhe(),{EventEmitter:lEt}=require("events"),{Worker:dEt}=require("worker_threads"),{join:fEt}=require("path"),{pathToFileURL:pEt}=require("url"),{wait:mEt}=Hhe(),{WRITE_INDEX:Ua,READ_INDEX:Yu}=zhe(),hEt=require("buffer"),gEt=require("assert"),Se=Symbol("kImpl"),yEt=hEt.constants.MAX_STRING_LENGTH,fE=class{constructor(e){this._value=e}deref(){return this._value}},zN=class{register(){}unregister(){}},AEt=process.env.NODE_V8_COVERAGE?zN:global.FinalizationRegistry||zN,xEt=process.env.NODE_V8_COVERAGE?fE:global.WeakRef||fE,Khe=new AEt(t=>{t.exited||t.terminate()});function bEt(t,e){let{filename:r,workerData:n}=e,i=("__bundlerPathsOverrides"in globalThis?globalThis.__bundlerPathsOverrides:{})["thread-stream-worker"]||fEt(__dirname,"lib","worker.js"),a=new dEt(i,{...e.workerOpts,trackUnmanagedFds:!1,workerData:{filename:r.indexOf("file://")===0?r:pEt(r).href,dataBuf:t[Se].dataBuf,stateBuf:t[Se].stateBuf,workerData:{$context:{threadStreamVersion:uEt},...n}}});return a.stream=new fE(t),a.on("message",_Et),a.on("exit",Yhe),Khe.register(t,a),a}function Vhe(t){gEt(!t[Se].sync),t[Se].needDrain&&(t[Se].needDrain=!1,t.emit("drain"))}function GN(t){let e=Atomics.load(t[Se].state,Ua),r=t[Se].data.length-e;if(r>0){if(t[Se].buf.length===0){t[Se].flushing=!1,t[Se].ending?D8(t):t[Se].needDrain&&process.nextTick(Vhe,t);return}let n=t[Se].buf.slice(0,r),s=Buffer.byteLength(n);s<=r?(t[Se].buf=t[Se].buf.slice(r),KN(t,n,GN.bind(null,t))):t.flush(()=>{if(!t.destroyed){for(Atomics.store(t[Se].state,Yu,0),Atomics.store(t[Se].state,Ua,0);s>t[Se].data.length;)r=r/2,n=t[Se].buf.slice(0,r),s=Buffer.byteLength(n);t[Se].buf=t[Se].buf.slice(r),KN(t,n,GN.bind(null,t))}})}else if(r===0){if(e===0&&t[Se].buf.length===0)return;t.flush(()=>{Atomics.store(t[Se].state,Yu,0),Atomics.store(t[Se].state,Ua,0),GN(t)})}else Ju(t,new Error("overwritten"))}function _Et(t){let e=this.stream.deref();if(e===void 0){this.exited=!0,this.terminate();return}switch(t.code){case"READY":this.stream=new xEt(e),e.flush(()=>{e[Se].ready=!0,e.emit("ready")});break;case"ERROR":Ju(e,t.err);break;case"EVENT":Array.isArray(t.args)?e.emit(t.name,...t.args):e.emit(t.name,t.args);break;case"WARNING":process.emitWarning(t.err);break;default:Ju(e,new Error("this should not happen: "+t.code))}}function Yhe(t){let e=this.stream.deref();e!==void 0&&(Khe.unregister(e),e.worker.exited=!0,e.worker.off("exit",Yhe),Ju(e,t!==0?new Error("the worker thread exited"):null))}var O8=class extends lEt{constructor(e={}){if(super(),e.bufferSize<4)throw new Error("bufferSize must at least fit a 4-byte utf-8 char");this[Se]={},this[Se].stateBuf=new SharedArrayBuffer(128),this[Se].state=new Int32Array(this[Se].stateBuf),this[Se].dataBuf=new SharedArrayBuffer(e.bufferSize||4*1024*1024),this[Se].data=Buffer.from(this[Se].dataBuf),this[Se].sync=e.sync||!1,this[Se].ending=!1,this[Se].ended=!1,this[Se].needDrain=!1,this[Se].destroyed=!1,this[Se].flushing=!1,this[Se].ready=!1,this[Se].finished=!1,this[Se].errored=null,this[Se].closed=!1,this[Se].buf="",this.worker=bEt(this,e),this.on("message",(r,n)=>{this.worker.postMessage(r,n)})}write(e){if(this[Se].destroyed)return k8(this,new Error("the worker has exited")),!1;if(this[Se].ending)return k8(this,new Error("the worker is ending")),!1;if(this[Se].flushing&&this[Se].buf.length+e.length>=yEt)try{N8(this),this[Se].flushing=!0}catch(r){return Ju(this,r),!1}if(this[Se].buf+=e,this[Se].sync)try{return N8(this),!0}catch(r){return Ju(this,r),!1}return this[Se].flushing||(this[Se].flushing=!0,setImmediate(GN,this)),this[Se].needDrain=this[Se].data.length-this[Se].buf.length-Atomics.load(this[Se].state,Ua)<=0,!this[Se].needDrain}end(){this[Se].destroyed||(this[Se].ending=!0,D8(this))}flush(e){if(this[Se].destroyed){typeof e=="function"&&process.nextTick(e,new Error("the worker has exited"));return}let r=Atomics.load(this[Se].state,Ua);mEt(this[Se].state,Yu,r,1/0,(n,s)=>{if(n){Ju(this,n),process.nextTick(e,n);return}if(s==="not-equal"){this.flush(e);return}process.nextTick(e)})}flushSync(){this[Se].destroyed||(N8(this),P8(this))}unref(){this.worker.unref()}ref(){this.worker.ref()}get ready(){return this[Se].ready}get destroyed(){return this[Se].destroyed}get closed(){return this[Se].closed}get writable(){return!this[Se].destroyed&&!this[Se].ending}get writableEnded(){return this[Se].ending}get writableFinished(){return this[Se].finished}get writableNeedDrain(){return this[Se].needDrain}get writableObjectMode(){return!1}get writableErrored(){return this[Se].errored}};function k8(t,e){setImmediate(()=>{t.emit("error",e)})}function Ju(t,e){t[Se].destroyed||(t[Se].destroyed=!0,e&&(t[Se].errored=e,k8(t,e)),t.worker.exited?setImmediate(()=>{t[Se].closed=!0,t.emit("close")}):t.worker.terminate().catch(()=>{}).then(()=>{t[Se].closed=!0,t.emit("close")}))}function KN(t,e,r){let n=Atomics.load(t[Se].state,Ua),s=Buffer.byteLength(e);return t[Se].data.write(e,n),Atomics.store(t[Se].state,Ua,n+s),Atomics.notify(t[Se].state,Ua),r(),!0}function D8(t){if(!(t[Se].ended||!t[Se].ending||t[Se].flushing)){t[Se].ended=!0;try{t.flushSync();let e=Atomics.load(t[Se].state,Yu);Atomics.store(t[Se].state,Ua,-1),Atomics.notify(t[Se].state,Ua);let r=0;for(;e!==-1;){if(Atomics.wait(t[Se].state,Yu,e,1e3),e=Atomics.load(t[Se].state,Yu),e===-2){Ju(t,new Error("end() failed"));return}if(++r===10){Ju(t,new Error("end() took too long (10s)"));return}}process.nextTick(()=>{t[Se].finished=!0,t.emit("finish")})}catch(e){Ju(t,e)}}}function N8(t){let e=()=>{t[Se].ending?D8(t):t[Se].needDrain&&process.nextTick(Vhe,t)};for(t[Se].flushing=!1;t[Se].buf.length!==0;){let r=Atomics.load(t[Se].state,Ua),n=t[Se].data.length-r;if(n===0){P8(t),Atomics.store(t[Se].state,Yu,0),Atomics.store(t[Se].state,Ua,0);continue}else if(n<0)throw new Error("overwritten");let s=t[Se].buf.slice(0,n),i=Buffer.byteLength(s);if(i<=n)t[Se].buf=t[Se].buf.slice(n),KN(t,s,e);else{for(P8(t),Atomics.store(t[Se].state,Yu,0),Atomics.store(t[Se].state,Ua,0);i>t[Se].buf.length;)n=n/2,s=t[Se].buf.slice(0,n),i=Buffer.byteLength(s);t[Se].buf=t[Se].buf.slice(n),KN(t,s,e)}}}function P8(t){if(t[Se].flushing)throw new Error("unable to flush while flushing");let e=Atomics.load(t[Se].state,Ua),r=0;for(;;){let n=Atomics.load(t[Se].state,Yu);if(n===-2)throw Error("_flushSync failed");if(n!==e)Atomics.wait(t[Se].state,Yu,n,1e3);else break;if(++r===10)throw new Error("_flushSync took too long (10s)")}}Jhe.exports=O8});var M8=_((vWr,Zhe)=>{"use strict";var{createRequire:EEt}=require("module"),vEt=y8(),{join:B8,isAbsolute:SEt,sep:IEt}=require("path"),CEt=C8(),L8=R8(),TEt=Xhe();function wEt(t){L8.register(t,NEt),L8.registerBeforeExit(t,OEt),t.on("close",function(){L8.unregister(t)})}function REt(t,e,r){let n=new TEt({filename:t,workerData:e,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&&wEt(n)}function i(){n.closed||(n.flushSync(),CEt(100),n.end())}return n}function NEt(t){t.ref(),t.flushSync(),t.end(),t.once("close",function(){t.unref()})}function OEt(t){t.flushSync()}function kEt(t){let{pipeline:e,targets:r,levels:n,dedupe:s,options:i={},worker:a={},caller:o=vEt()}=t,c=typeof o=="string"?[o]:o,u="__bundlerPathsOverrides"in globalThis?globalThis.__bundlerPathsOverrides:{},l=t.target;if(l&&r)throw new Error("only one of target or targets can be specified");return r?(l=u["pino-worker"]||B8(__dirname,"worker.js"),i.targets=r.map(f=>({...f,target:d(f.target)}))):e&&(l=u["pino-pipeline-worker"]||B8(__dirname,"worker-pipeline.js"),i.targets=e.map(f=>({...f,target:d(f.target)}))),n&&(i.levels=n),s&&(i.dedupe=s),i.pinoWillSendConfig=!0,REt(d(l),i,a);function d(f){if(f=u[f]||f,SEt(f)||f.indexOf("file://")===0)return f;if(f==="pino/file")return B8(__dirname,"..","file.js");let p;for(let m of c)try{let h=m==="node:repl"?process.cwd()+IEt:m;p=EEt(h).resolve(f);break}catch{continue}if(!p)throw new Error(`unable to determine transport target for "${f}"`);return p}}Zhe.exports=kEt});var JN=_((SWr,lge)=>{"use strict";var ege=Rhe(),{mapHttpRequest:PEt,mapHttpResponse:DEt}=g8(),$8=Mhe(),tge=R8(),{lsCacheSym:BEt,chindingsSym:sge,writeSym:rge,serializersSym:ige,formatOptsSym:nge,endSym:LEt,stringifiersSym:age,stringifySym:oge,stringifySafeSym:U8,wildcardFirstSym:cge,nestedKeySym:MEt,formattersSym:uge,messageKeySym:WEt,errorKeySym:$Et,nestedKeyStrSym:UEt,msgPrefixSym:VN}=bA(),{isMainThread:FEt}=require("worker_threads"),qEt=M8();function EA(){}function jEt(t,e){if(!e)return r;return function(...s){e.call(this,s,r,t)};function r(n,...s){if(typeof n=="object"){let i=n;n!==null&&(n.method&&n.headers&&n.socket?n=PEt(n):typeof n.setHeader=="function"&&(n=DEt(n)));let a;i===null&&s.length===0?a=[null]:(i=s.shift(),a=s),typeof this[VN]=="string"&&i!==void 0&&i!==null&&(i=this[VN]+i),this[rge](n,ege(i,a,this[nge]),t)}else{let i=n===void 0?s.shift():n;typeof this[VN]=="string"&&i!==void 0&&i!==null&&(i=this[VN]+i),this[rge](null,ege(i,s,this[nge]),t)}}}function W8(t){let e="",r=0,n=!1,s=255,i=t.length;if(i>100)return JSON.stringify(t);for(var a=0;a=32;a++)s=t.charCodeAt(a),(s===34||s===92)&&(e+=t.slice(r,a)+"\\",r=a,n=!0);return n?e+=t.slice(r):e=t,s<32?JSON.stringify(t):'"'+e+'"'}function QEt(t,e,r,n){let s=this[oge],i=this[U8],a=this[age],o=this[LEt],c=this[sge],u=this[ige],l=this[uge],d=this[WEt],f=this[$Et],p=this[BEt][r]+n;p=p+c;let m;l.log&&(t=l.log(t));let h=a[cge],y="";for(let b in t)if(m=t[b],Object.prototype.hasOwnProperty.call(t,b)&&m!==void 0){u[b]?m=u[b](m):b===f&&u.err&&(m=u.err(m));let x=a[b]||h;switch(typeof m){case"undefined":case"function":continue;case"number":Number.isFinite(m)===!1&&(m=null);case"boolean":x&&(m=x(m));break;case"string":m=(x||W8)(m);break;default:m=(x||s)(m,i)}if(m===void 0)continue;let A=W8(b);y+=","+A+":"+m}let g="";if(e!==void 0){m=u[d]?u[d](e):e;let b=a[d]||h;switch(typeof m){case"function":break;case"number":Number.isFinite(m)===!1&&(m=null);case"boolean":b&&(m=b(m)),g=',"'+d+'":'+m;break;case"string":m=(b||W8)(m),g=',"'+d+'":'+m;break;default:m=(b||s)(m,i),g=',"'+d+'":'+m}}return this[MEt]&&y?p+this[UEt]+y.slice(1)+"}"+g+o:p+y+g+o}function HEt(t,e){let r,n=t[sge],s=t[oge],i=t[U8],a=t[age],o=a[cge],c=t[ige],u=t[uge].bindings;e=u(e);for(let l in e)if(r=e[l],(l!=="level"&&l!=="serializers"&&l!=="formatters"&&l!=="customLevels"&&e.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 GEt(t){return t.write!==t.constructor.prototype.write}var zEt=process.env.NODE_V8_COVERAGE||process.env.V8_COVERAGE;function YN(t){let e=new $8(t);return e.on("error",r),!zEt&&!t.sync&&FEt&&(tge.register(e,KEt),e.on("close",function(){tge.unregister(e)})),e;function r(n){if(n.code==="EPIPE"){e.write=EA,e.end=EA,e.flushSync=EA,e.destroy=EA;return}e.removeListener("error",r),e.emit("error",n)}}function KEt(t,e){t.destroyed||(e==="beforeExit"?(t.flush(),t.on("drain",function(){t.end()})):t.flushSync())}function VEt(t){return function(r,n,s={},i){if(typeof s=="string")i=YN({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=YN({dest:i})}else if(s instanceof $8||s.writable||s._writableState)i=s,s={};else if(s.transport){if(s.transport instanceof $8||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=qEt({caller:n,...s.transport,levels:c})}if(s=Object.assign({},t,s),s.serializers=Object.assign({},t.serializers,s.serializers),s.formatters=Object.assign({},t.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=EA),i||(GEt(process.stdout)?i=process.stdout:i=YN({fd:process.stdout.fd||1})),{opts:s,stream:i}}}function YEt(t,e){try{return JSON.stringify(t)}catch{try{return(e||this[U8])(t)}catch{return'"[unable to serialize, circular reference is too complex to analyze]"'}}}function JEt(t,e,r){return{level:t,bindings:e,log:r}}function XEt(t){let e=Number(t);return typeof t=="string"&&Number.isFinite(e)?e:t===void 0?1:t}lge.exports={noop:EA,buildSafeSonicBoom:YN,asChindings:HEt,asJson:QEt,genLog:jEt,createArgsNormalizer:VEt,stringify:YEt,buildFormatters:JEt,normalizeDestFileDescriptor:XEt}});var XN=_((IWr,dge)=>{var ZEt={trace:10,debug:20,info:30,warn:40,error:50,fatal:60},evt={ASC:"ASC",DESC:"DESC"};dge.exports={DEFAULT_LEVELS:ZEt,SORTING_ORDER:evt}});var j8=_((CWr,hge)=>{"use strict";var{lsCacheSym:tvt,levelValSym:F8,useOnlyCustomLevelsSym:rvt,streamSym:nvt,formattersSym:svt,hooksSym:ivt,levelCompSym:fge}=bA(),{noop:avt,genLog:qm}=JN(),{DEFAULT_LEVELS:Xu,SORTING_ORDER:pge}=XN(),mge={fatal:t=>{let e=qm(Xu.fatal,t);return function(...r){let n=this[nvt];if(e.call(this,...r),typeof n.flushSync=="function")try{n.flushSync()}catch{}}},error:t=>qm(Xu.error,t),warn:t=>qm(Xu.warn,t),info:t=>qm(Xu.info,t),debug:t=>qm(Xu.debug,t),trace:t=>qm(Xu.trace,t)},q8=Object.keys(Xu).reduce((t,e)=>(t[Xu[e]]=e,t),{}),ovt=Object.keys(q8).reduce((t,e)=>(t[e]='{"level":'+Number(e),t),{});function cvt(t){let e=t[svt].level,{labels:r}=t.levels,n={};for(let s in r){let i=e(r[s],Number(s));n[s]=JSON.stringify(i).slice(0,-1)}return t[tvt]=n,t}function uvt(t,e){if(e)return!1;switch(t){case"fatal":case"error":case"warn":case"info":case"debug":case"trace":return!0;default:return!1}}function lvt(t){let{labels:e,values:r}=this.levels;if(typeof t=="number"){if(e[t]===void 0)throw Error("unknown level value"+t);t=e[t]}if(r[t]===void 0)throw Error("unknown level "+t);let n=this[F8],s=this[F8]=r[t],i=this[rvt],a=this[fge],o=this[ivt].logMethod;for(let c in r){if(a(r[c],s)===!1){this[c]=avt;continue}this[c]=uvt(c,i)?mge[c](o):qm(r[c],o)}this.emit("level-change",t,s,e[n],n,this)}function dvt(t){let{levels:e,levelVal:r}=this;return e&&e.labels?e.labels[r]:""}function fvt(t){let{values:e}=this.levels,r=e[t];return r!==void 0&&this[fge](r,this[F8])}function pvt(t,e,r){return t===pge.DESC?e<=r:e>=r}function mvt(t){return typeof t=="string"?pvt.bind(null,t):t}function hvt(t=null,e=!1){let r=t?Object.keys(t).reduce((i,a)=>(i[t[a]]=a,i),{}):null,n=Object.assign(Object.create(Object.prototype,{Infinity:{value:"silent"}}),e?null:q8,r),s=Object.assign(Object.create(Object.prototype,{silent:{value:1/0}}),e?null:Xu,t);return{labels:n,values:s}}function gvt(t,e,r){if(typeof t=="number"){if(![].concat(Object.keys(e||{}).map(i=>e[i]),r?[]:Object.keys(q8).map(i=>+i),1/0).includes(t))throw Error(`default level:${t} must be included in custom levels`);return}let n=Object.assign(Object.create(Object.prototype,{silent:{value:1/0}}),r?null:Xu,e);if(!(t in n))throw Error(`default level:${t} must be included in custom levels`)}function yvt(t,e){let{labels:r,values:n}=t;for(let s in e){if(s in n)throw Error("levels cannot be overridden");if(e[s]in r)throw Error("pre-existing level values cannot be used for new levels")}}function Avt(t){if(typeof t!="function"&&!(typeof t=="string"&&Object.values(pge).includes(t)))throw new Error('Levels comparison should be one of "ASC", "DESC" or "function" type')}hge.exports={initialLsCache:ovt,genLsCache:cvt,levelMethods:mge,getLevel:dvt,setLevel:lvt,isLevelEnabled:fvt,mappings:hvt,assertNoLevelCollisions:yvt,assertDefaultLevelFound:gvt,genLevelComparison:mvt,assertLevelComparison:Avt}});var Q8=_((TWr,gge)=>{"use strict";gge.exports={version:"8.21.0"}});var Tge=_((RWr,Cge)=>{"use strict";var{EventEmitter:xvt}=require("events"),{lsCacheSym:bvt,levelValSym:_vt,setLevelSym:G8,getLevelSym:yge,chindingsSym:z8,parsedChindingsSym:Evt,mixinSym:vvt,asJsonSym:Ege,writeSym:Svt,mixinMergeStrategySym:Ivt,timeSym:Cvt,timeSliceIndexSym:Tvt,streamSym:vge,serializersSym:jm,formattersSym:H8,errorKeySym:wvt,messageKeySym:Rvt,useOnlyCustomLevelsSym:Nvt,needsMetadataGsym:Ovt,redactFmtSym:kvt,stringifySym:Pvt,formatOptsSym:Dvt,stringifiersSym:Bvt,msgPrefixSym:Age}=bA(),{getLevel:Lvt,setLevel:Mvt,isLevelEnabled:Wvt,mappings:$vt,initialLsCache:Uvt,genLsCache:Fvt,assertNoLevelCollisions:qvt}=j8(),{asChindings:Sge,asJson:jvt,buildFormatters:xge,stringify:bge}=JN(),{version:Qvt}=Q8(),Hvt=S8(),Gvt=class{},Ige={constructor:Gvt,child:zvt,bindings:Kvt,setBindings:Vvt,flush:Zvt,isLevelEnabled:Wvt,version:Qvt,get level(){return this[yge]()},set level(t){this[G8](t)},get levelVal(){return this[_vt]},set levelVal(t){throw Error("levelVal is read-only")},[bvt]:Uvt,[Svt]:Jvt,[Ege]:jvt,[yge]:Lvt,[G8]:Mvt};Object.setPrototypeOf(Ige,xvt.prototype);Cge.exports=function(){return Object.create(Ige)};var _ge=t=>t;function zvt(t,e){if(!t)throw Error("missing bindings for child Pino");e=e||{};let r=this[jm],n=this[H8],s=Object.create(this);if(e.hasOwnProperty("serializers")===!0){s[jm]=Object.create(null);for(let l in r)s[jm][l]=r[l];let c=Object.getOwnPropertySymbols(r);for(var i=0;i{"use strict";var{hasOwnProperty:pE}=Object.prototype,Hm=Y8();Hm.configure=Y8;Hm.stringify=Hm;Hm.default=Hm;J8.stringify=Hm;J8.configure=Y8;Nge.exports=Hm;var eSt=/[\u0000-\u001f\u0022\u005c\ud800-\udfff]/;function Pp(t){return t.length<5e3&&!eSt.test(t)?`"${t}"`:JSON.stringify(t)}function K8(t,e){if(t.length>200||e)return t.sort(e);for(let r=1;rn;)t[s]=t[s-1],s--;t[s]=n}return t}var tSt=Object.getOwnPropertyDescriptor(Object.getPrototypeOf(Object.getPrototypeOf(new Int8Array)),Symbol.toStringTag).get;function V8(t){return tSt.call(t)!==void 0&&t.length!==0}function wge(t,e,r){t.length= 1`)}return r===void 0?1/0:r}function Qm(t){return t===1?"1 item":`${t} items`}function iSt(t){let e=new Set;for(let r of t)(typeof r=="string"||typeof r=="number")&&e.add(String(r));return e}function aSt(t){if(pE.call(t,"strict")){let e=t.strict;if(typeof e!="boolean")throw new TypeError('The "strict" argument must be of type boolean');if(e)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 Y8(t){t={...t};let e=aSt(t);e&&(t.bigint===void 0&&(t.bigint=!1),"circularValue"in t||(t.circularValue=Error));let r=rSt(t),n=sSt(t,"bigint"),s=nSt(t),i=typeof s=="function"?s:void 0,a=Rge(t,"maximumDepth"),o=Rge(t,"maximumBreadth");function c(p,m,h,y,g,b){let x=m[p];switch(typeof x=="object"&&x!==null&&typeof x.toJSON=="function"&&(x=x.toJSON(p)),x=y.call(m,p,x),typeof x){case"string":return Pp(x);case"object":{if(x===null)return"null";if(h.indexOf(x)!==-1)return r;let A="",S=",",I=b;if(Array.isArray(x)){if(x.length===0)return"[]";if(ao){let Z=x.length-o-1;A+=`${S}"... ${Qm(Z)} not stringified"`}return g!==""&&(A+=` +${I}`),h.pop(),`[${A}]`}let R=Object.keys(x),w=R.length;if(w===0)return"{}";if(ao){let M=w-o;A+=`${k}"...":${N}"${Qm(M)} not stringified"`,k=S}return g!==""&&k.length>1&&(A=` +${b}${A} +${I}`),h.pop(),`{${A}}`}case"number":return isFinite(x)?String(x):e?e(x):"null";case"boolean":return x===!0?"true":"false";case"undefined":return;case"bigint":if(n)return String(x);default:return e?e(x):void 0}}function u(p,m,h,y,g,b){switch(typeof m=="object"&&m!==null&&typeof m.toJSON=="function"&&(m=m.toJSON(p)),typeof m){case"string":return Pp(m);case"object":{if(m===null)return"null";if(h.indexOf(m)!==-1)return r;let x=b,A="",S=",";if(Array.isArray(m)){if(m.length===0)return"[]";if(ao){let B=m.length-o-1;A+=`${S}"... ${Qm(B)} not stringified"`}return g!==""&&(A+=` +${x}`),h.pop(),`[${A}]`}h.push(m);let I="";g!==""&&(b+=g,S=`, +${b}`,I=" ");let R="";for(let w of y){let N=u(w,m[w],h,y,g,b);N!==void 0&&(A+=`${R}${Pp(w)}:${I}${N}`,R=S)}return g!==""&&R.length>1&&(A=` +${b}${A} +${x}`),h.pop(),`{${A}}`}case"number":return isFinite(m)?String(m):e?e(m):"null";case"boolean":return m===!0?"true":"false";case"undefined":return;case"bigint":if(n)return String(m);default:return e?e(m):void 0}}function l(p,m,h,y,g){switch(typeof m){case"string":return Pp(m);case"object":{if(m===null)return"null";if(typeof m.toJSON=="function"){if(m=m.toJSON(p),typeof m!="object")return l(p,m,h,y,g);if(m===null)return"null"}if(h.indexOf(m)!==-1)return r;let b=g;if(Array.isArray(m)){if(m.length===0)return"[]";if(ao){let L=m.length-o-1;N+=`${k}"... ${Qm(L)} not stringified"`}return N+=` +${b}`,h.pop(),`[${N}]`}let x=Object.keys(m),A=x.length;if(A===0)return"{}";if(ao){let N=A-o;I+=`${R}"...": "${Qm(N)} not stringified"`,R=S}return R!==""&&(I=` +${g}${I} +${b}`),h.pop(),`{${I}}`}case"number":return isFinite(m)?String(m):e?e(m):"null";case"boolean":return m===!0?"true":"false";case"undefined":return;case"bigint":if(n)return String(m);default:return e?e(m):void 0}}function d(p,m,h){switch(typeof m){case"string":return Pp(m);case"object":{if(m===null)return"null";if(typeof m.toJSON=="function"){if(m=m.toJSON(p),typeof m!="object")return d(p,m,h);if(m===null)return"null"}if(h.indexOf(m)!==-1)return r;let y="",g=m.length!==void 0;if(g&&Array.isArray(m)){if(m.length===0)return"[]";if(ao){let N=m.length-o-1;y+=`,"... ${Qm(N)} not stringified"`}return h.pop(),`[${y}]`}let b=Object.keys(m),x=b.length;if(x===0)return"{}";if(ao){let I=x-o;y+=`${A}"...":"${Qm(I)} not stringified"`}return h.pop(),`{${y}}`}case"number":return isFinite(m)?String(m):e?e(m):"null";case"boolean":return m===!0?"true":"false";case"undefined":return;case"bigint":if(n)return String(m);default:return e?e(m):void 0}}function f(p,m,h){if(arguments.length>1){let y="";if(typeof h=="number"?y=" ".repeat(Math.min(h,10)):typeof h=="string"&&(y=h.slice(0,10)),m!=null){if(typeof m=="function")return c("",{"":p},[],m,y,"");if(Array.isArray(m))return u("",p,[],iSt(m),y,"")}if(y.length!==0)return l("",p,[],y,"")}return d("",p,[])}return f}});var Dge=_((NWr,Pge)=>{"use strict";var X8=Symbol.for("pino.metadata"),{DEFAULT_LEVELS:kge}=XN(),oSt=kge.info;function cSt(t,e){let r=0;t=t||[],e=e||{dedupe:!1};let n=Object.create(kge);n.silent=1/0,e.levels&&typeof e.levels=="object"&&Object.keys(e.levels).forEach(d=>{n[d]=e.levels[d]});let s={write:i,add:c,emit:a,flushSync:o,end:u,minLevel:0,streams:[],clone:l,[X8]:!0,streamLevels:n};return Array.isArray(t)?t.forEach(c,s):c.call(s,t),t=null,s;function i(d){let f,p=this.lastLevel,{streams:m}=this,h=0,y;for(let g=lSt(m.length,e.dedupe);fSt(g,m.length,e.dedupe);g=dSt(g,e.dedupe))if(f=m[g],f.level<=p){if(h!==0&&h!==f.level)break;if(y=f.stream,y[X8]){let{lastTime:b,lastMsg:x,lastObj:A,lastLogger:S}=this;y.lastLevel=p,y.lastTime=b,y.lastMsg=x,y.lastObj=A,y.lastLogger=S}y.write(d),e.dedupe&&(h=f.level)}else if(!e.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,p=d.write?d:d.stream;if(!f)throw Error("stream object needs to implement either StreamEntry or DestinationStream interface");let{streams:m,streamLevels:h}=this,y;typeof d.levelVal=="number"?y=d.levelVal:typeof d.level=="string"?y=h[d.level]:typeof d.level=="number"?y=d.level:y=oSt;let g={stream:p,level:y,levelVal:void 0,id:r++};return m.unshift(g),m.sort(uSt),this.minLevel=m[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 p=0;p=0:t{"use strict";var pSt=require("os"),qge=g8(),mSt=y8(),hSt=S8(),jge=The(),gSt=Tge(),Qge=bA(),{configure:ySt}=Oge(),{assertDefaultLevelFound:ASt,mappings:Hge,genLsCache:xSt,genLevelComparison:bSt,assertLevelComparison:_St}=j8(),{DEFAULT_LEVELS:ESt,SORTING_ORDER:vSt}=XN(),{createArgsNormalizer:SSt,asChindings:ISt,buildSafeSonicBoom:Bge,buildFormatters:CSt,stringify:Z8,normalizeDestFileDescriptor:Lge,noop:TSt}=JN(),{version:wSt}=Q8(),{chindingsSym:Mge,redactFmtSym:RSt,serializersSym:Wge,timeSym:NSt,timeSliceIndexSym:OSt,streamSym:kSt,stringifySym:$ge,stringifySafeSym:e$,stringifiersSym:Uge,setLevelSym:PSt,endSym:DSt,formatOptsSym:BSt,messageKeySym:LSt,errorKeySym:MSt,nestedKeySym:WSt,mixinSym:$St,levelCompSym:USt,useOnlyCustomLevelsSym:FSt,formattersSym:Fge,hooksSym:qSt,nestedKeyStrSym:jSt,mixinMergeStrategySym:QSt,msgPrefixSym:HSt}=Qge,{epochTime:Gge,nullTime:GSt}=jge,{pid:zSt}=process,KSt=pSt.hostname(),VSt=qge.err,YSt={level:"info",levelComparison:vSt.ASC,levels:ESt,messageKey:"msg",errorKey:"err",nestedKey:null,enabled:!0,base:{pid:zSt,hostname:KSt},serializers:Object.assign(Object.create(null),{err:VSt}),formatters:Object.assign(Object.create(null),{bindings(t){return t},level(t,e){return{level:e}}}),hooks:{logMethod:void 0},timestamp:Gge,name:void 0,redact:null,customLevels:null,useOnlyCustomLevels:!1,depthLimit:5,edgeLimit:100},JSt=SSt(YSt),XSt=Object.assign(Object.create(null),qge);function t$(...t){let e={},{opts:r,stream:n}=JSt(e,mSt(),...t),{redact:s,crlf:i,serializers:a,timestamp:o,messageKey:c,errorKey:u,nestedKey:l,base:d,name:f,level:p,customLevels:m,levelComparison:h,mixin:y,mixinMergeStrategy:g,useOnlyCustomLevels:b,formatters:x,hooks:A,depthLimit:S,edgeLimit:I,onChild:R,msgPrefix:w}=r,N=ySt({maximumDepth:S,maximumBreadth:I}),k=CSt(x.level,x.bindings,x.log),B=Z8.bind({[e$]:N}),M=s?hSt(s,B):{},D=s?{stringify:M[RSt]}:{stringify:B},L="}"+(i?`\r `:` -`),Z=gbt.bind(null,{[Q0e]:"",[G0e]:a,[z0e]:M,[V0e]:J5,[X5]:N,[K0e]:P}),W="";d!==null&&(f===void 0?W=Z(d):W=Z(Object.assign({},d,{name:f})));let F=o instanceof Function?o:o?eme:Mbt,V=F().indexOf(":")+1;if(b&&!m)throw Error("customLevels is required if useOnlyCustomLevels is set true");if(A&&typeof A!="function")throw Error(`Unknown mixin type "${typeof A}" - expected "function"`);if(w&&typeof w!="string")throw Error(`Unknown msgPrefix type "${typeof w}" - expected "string"`);ubt(p,m,b);let j=Z0e(m,b);typeof n.emit=="function"&&n.emit("message",{code:"PINO_CONFIG",config:{levels:j,messageKey:c,errorKey:u}}),fbt(h);let J=dbt(h);return Object.assign(e,{levels:j,[Obt]:J,[Pbt]:b,[Sbt]:n,[Ebt]:F,[_bt]:V,[V0e]:J5,[X5]:N,[z0e]:M,[Cbt]:B,[Ibt]:k,[Tbt]:c,[wbt]:u,[Rbt]:l,[kbt]:l?`,${JSON.stringify(l)}:{`:"",[G0e]:a,[Nbt]:A,[Lbt]:g,[Q0e]:W,[K0e]:P,[Dbt]:x,silent:ybt,onChild:R,[Bbt]:w}),Object.setPrototypeOf(e,obt()),lbt(e),e[vbt](p),e}jo.exports=Z5;jo.exports.destination=(t=process.stdout.fd)=>typeof t=="object"?(t.dest=H0e(t.dest||process.stdout.fd),j0e(t)):j0e({dest:H0e(t),minLength:0});jo.exports.transport=L5();jo.exports.multistream=q0e();jo.exports.levels=Z0e();jo.exports.stdSerializers=jbt;jo.exports.stdTimeFunctions=Object.assign({},J0e);jo.exports.symbols=X0e;jo.exports.version=xbt;jo.exports.default=Z5;jo.exports.pino=Z5});var c1=E((_Pr,ame)=>{"use strict";var Hbt=Qfe(),RR=tme(),{serializersSym:rme}=RR.symbols,{FST_ERR_LOG_INVALID_DESTINATION:Qbt,FST_ERR_LOG_INVALID_LOGGER:Gbt}=Ci();function nme(t){if(t.stream&&t.file)throw new Qbt;t.file&&(t.stream=RR.destination(t.file),delete t.file);let e=t.logger,r=t.genReqId,n=null;return e?(t.logger=void 0,t.genReqId=void 0,e[rme]&&(t.serializers=Object.assign({},t.serializers,e[rme])),n=e.child({},t),t.logger=e,t.genReqId=r):n=RR(t,t.stream),n}var e8={req:function(e){return{method:e.method,url:e.url,version:e.headers&&e.headers["accept-version"],hostname:e.hostname,remoteAddress:e.ip,remotePort:e.socket?e.socket.remotePort:void 0}},err:RR.stdSerializers.err,res:function(e){return{statusCode:e.statusCode}}};function Vbt(){let t=process.hrtime();return t[0]*1e3+t[1]/1e6}function zbt(t){if(!t.logger){let n=Hbt;return n.child=()=>n,{logger:n,hasLogger:!1}}if(sme(t.logger))return{logger:nme({logger:t.logger,serializers:Object.assign({},e8,t.logger.serializers)}),hasLogger:!0};let e={};return Object.prototype.toString.call(t.logger)==="[object Object]"&&Reflect.ownKeys(t.logger).forEach(n=>{Object.defineProperty(e,n,{value:t.logger[n],writable:!0,enumerable:!0,configurable:!0})}),e.level=e.level||"info",e.serializers=Object.assign({},e8,e.serializers),t.logger=e,{logger:nme(t.logger),hasLogger:!0}}function sme(t,e){let r=["info","error","debug","fatal","warn","trace","child"],n=t?r.filter(s=>!t[s]||typeof t[s]!="function"):r;if(n.length){if(n.length===r.length&&!e)return!1;throw Gbt(n.join(","))}else return!0}function Kbt(t,e,r,n,s){let i={[t.requestIdLogLabel]:n},a=t.childLoggerFactory.call(t.server,e,i,s||{},r);return t.childLoggerFactory!==ime&&sme(a,!0),a}function ime(t,e,r){return t.child(e,r)}ame.exports={createLogger:zbt,createChildLogger:Kbt,defaultChildLoggerFactory:ime,serializers:e8,now:Vbt}});var NR=E((SPr,ome)=>{"use strict";ome.exports=Ybt;function qA(t){return t instanceof Buffer?Buffer.from(t):new t.constructor(t.buffer.slice(),t.byteOffset,t.length)}function Ybt(t){if(t=t||{},t.circles)return Jbt(t);let e=new Map;if(e.set(Date,a=>new Date(a)),e.set(Map,(a,o)=>new Map(n(Array.from(a),o))),e.set(Set,(a,o)=>new Set(n(Array.from(a),o))),t.constructorHandlers)for(let a of t.constructorHandlers)e.set(a[0],a[1]);let r=null;return t.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))),t.constructorHandlers)for(let c of t.constructorHandlers)n.set(c[0],c[1]);let s=null;return t.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 Xbt=NR()({circles:!1,proto:!0}),{kSchemaVisited:cme,kSchemaResponse:Zbt}=Qs(),r8=Symbol.for("fluent-schema-object"),{FST_ERR_SCH_MISSING_ID:eEt,FST_ERR_SCH_ALREADY_PRESENT:tEt,FST_ERR_SCH_DUPLICATE:rEt,FST_ERR_SCH_CONTENT_MISSING_SCHEMA:nEt}=Ci(),lme=["params","body","querystring","query","headers"];function OR(t){this.store=t||{}}OR.prototype.add=function(t){let e=Xbt(t.isFluentSchema||t.isFluentJSONSchema||t[r8]?t.valueOf():t),r=e.$id;if(!r)throw new eEt;if(this.store[r])throw new tEt(r);this.store[r]=e};OR.prototype.getSchemas=function(){return Object.assign({},this.store)};OR.prototype.getSchema=function(t){return this.store[t]};function ume(t){return typeof t=="object"&&Object.getPrototypeOf(t)!==Object.prototype}function sEt(t,e){if(t[cme])return t;if(t.query){if(t.querystring)throw new rEt("querystring");t.querystring=t.query}iEt(t);for(let r of lme){let n=t[r];n&&!ume(n)&&(t[r]=t8(n,e.jsonShorthand))}if(t.response){let r=Object.keys(t.response);for(let n of r){if(ume(t.response[n]))continue;let s=t.response[n].content,i=!1;if(s){let a=Object.keys(s);for(let o=0;o{"use strict";var oEt=/[\u0000-\u001f\u0022\u005c\ud800-\udfff]/;pme.exports=class fme{constructor(e){switch(e&&e.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=e}asInteger(e){if(Number.isInteger(e))return""+e;if(typeof e=="bigint")return e.toString();let r=this.parseInteger(e);if(r===1/0||r===-1/0||r!==r)throw new Error(`The value "${e}" cannot be converted to an integer.`);return""+r}asNumber(e){let r=Number(e);if(r!==r)throw new Error(`The value "${e}" cannot be converted to a number.`);return r===1/0||r===-1/0?"null":""+r}asBoolean(e){return e&&"true"||"false"}asDateTime(e){if(e===null)return'""';if(e instanceof Date)return'"'+e.toISOString()+'"';if(typeof e=="string")return'"'+e+'"';throw new Error(`The value "${e}" cannot be converted to a date-time.`)}asDate(e){if(e===null)return'""';if(e instanceof Date)return'"'+new Date(e.getTime()-e.getTimezoneOffset()*6e4).toISOString().slice(0,10)+'"';if(typeof e=="string")return'"'+e+'"';throw new Error(`The value "${e}" cannot be converted to a date.`)}asTime(e){if(e===null)return'""';if(e instanceof Date)return'"'+new Date(e.getTime()-e.getTimezoneOffset()*6e4).toISOString().slice(11,19)+'"';if(typeof e=="string")return'"'+e+'"';throw new Error(`The value "${e}" cannot be converted to a time.`)}asString(e){let r=e.length;if(r<42){let s="",i=-1,a=255;for(var n=0;n=55296&&a<=57343)return JSON.stringify(e);return i===-1&&'"'+e+'"'||'"'+s+e.slice(i)+'"'}else return r<5e3&&oEt.test(e)===!1?'"'+e+'"':JSON.stringify(e)}asUnsafeString(e){return'"'+e+'"'}getState(){return this._options}static restoreFromState(e){return new fme(e)}}});var f1=E(kr=>{"use strict";Object.defineProperty(kr,"__esModule",{value:!0});kr.regexpCode=kr.getEsmExportName=kr.getProperty=kr.safeStringify=kr.stringify=kr.strConcat=kr.addCodeArg=kr.str=kr._=kr.nil=kr._Code=kr.Name=kr.IDENTIFIER=kr._CodeOrName=void 0;var l1=class{};kr._CodeOrName=l1;kr.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Sm=class extends l1{constructor(e){if(super(),!kr.IDENTIFIER.test(e))throw new Error("CodeGen: name must be a valid identifier");this.str=e}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};kr.Name=Sm;var Ho=class extends l1{constructor(e){super(),this._items=typeof e=="string"?[e]:e}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let e=this._items[0];return e===""||e==='""'}get str(){var e;return(e=this._str)!==null&&e!==void 0?e:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var e;return(e=this._names)!==null&&e!==void 0?e:this._names=this._items.reduce((r,n)=>(n instanceof Sm&&(r[n.str]=(r[n.str]||0)+1),r),{})}};kr._Code=Ho;kr.nil=new Ho("");function mme(t,...e){let r=[t[0]],n=0;for(;n{"use strict";Object.defineProperty(Da,"__esModule",{value:!0});Da.ValueScope=Da.ValueScopeName=Da.Scope=Da.varKinds=Da.UsedValueState=void 0;var Pa=f1(),a8=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},PR;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(PR||(Da.UsedValueState=PR={}));Da.varKinds={const:new Pa.Name("const"),let:new Pa.Name("let"),var:new Pa.Name("var")};var DR=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof Pa.Name?e:this.name(e)}name(e){return new Pa.Name(this._newName(e))}_newName(e){let r=this._names[e]||this._nameGroup(e);return`${e}${r.index++}`}_nameGroup(e){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(e)||this._prefixes&&!this._prefixes.has(e))throw new Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};Da.Scope=DR;var kR=class extends Pa.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,Pa._)`.${new Pa.Name(r)}[${n}]`}};Da.ValueScopeName=kR;var gEt=(0,Pa._)`\n`,o8=class extends DR{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?gEt:Pa.nil}}get(){return this._scope}name(e){return new kR(e,this._newName(e))}value(e,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let s=this.toName(e),{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(e,r){let n=this._values[e];if(n)return n.get(r)}scopeRefs(e,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,Pa._)`${e}${n.scopePath}`})}scopeCode(e=this._values,r,n){return this._reduceValues(e,s=>{if(s.value===void 0)throw new Error(`CodeGen: name "${s}" has no value`);return s.value.code},r,n)}_reduceValues(e,r,n={},s){let i=Pa.nil;for(let a in e){let o=e[a];if(!o)continue;let c=n[a]=n[a]||new Map;o.forEach(u=>{if(c.has(u))return;c.set(u,PR.Started);let l=r(u);if(l){let d=this.opts.es5?Da.varKinds.var:Da.varKinds.const;i=(0,Pa._)`${i}${d} ${u} = ${l};${this.opts._n}`}else if(l=s?.(u))i=(0,Pa._)`${i}${l}${this.opts._n}`;else throw new a8(u);c.set(u,PR.Completed)})}return i}};Da.ValueScope=o8});var zt=E(Xt=>{"use strict";Object.defineProperty(Xt,"__esModule",{value:!0});Xt.or=Xt.and=Xt.not=Xt.CodeGen=Xt.operators=Xt.varKinds=Xt.ValueScopeName=Xt.ValueScope=Xt.Scope=Xt.Name=Xt.regexpCode=Xt.stringify=Xt.getProperty=Xt.nil=Xt.strConcat=Xt.str=Xt._=void 0;var Ar=f1(),$c=c8(),mp=f1();Object.defineProperty(Xt,"_",{enumerable:!0,get:function(){return mp._}});Object.defineProperty(Xt,"str",{enumerable:!0,get:function(){return mp.str}});Object.defineProperty(Xt,"strConcat",{enumerable:!0,get:function(){return mp.strConcat}});Object.defineProperty(Xt,"nil",{enumerable:!0,get:function(){return mp.nil}});Object.defineProperty(Xt,"getProperty",{enumerable:!0,get:function(){return mp.getProperty}});Object.defineProperty(Xt,"stringify",{enumerable:!0,get:function(){return mp.stringify}});Object.defineProperty(Xt,"regexpCode",{enumerable:!0,get:function(){return mp.regexpCode}});Object.defineProperty(Xt,"Name",{enumerable:!0,get:function(){return mp.Name}});var WR=c8();Object.defineProperty(Xt,"Scope",{enumerable:!0,get:function(){return WR.Scope}});Object.defineProperty(Xt,"ValueScope",{enumerable:!0,get:function(){return WR.ValueScope}});Object.defineProperty(Xt,"ValueScopeName",{enumerable:!0,get:function(){return WR.ValueScopeName}});Object.defineProperty(Xt,"varKinds",{enumerable:!0,get:function(){return WR.varKinds}});Xt.operators={GT:new Ar._Code(">"),GTE:new Ar._Code(">="),LT:new Ar._Code("<"),LTE:new Ar._Code("<="),EQ:new Ar._Code("==="),NEQ:new Ar._Code("!=="),NOT:new Ar._Code("!"),OR:new Ar._Code("||"),AND:new Ar._Code("&&"),ADD:new Ar._Code("+")};var ld=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},u8=class extends ld{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?$c.varKinds.var:this.varKind,s=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${s};`+r}optimizeNames(e,r){if(e[this.name.str])return this.rhs&&(this.rhs=HA(this.rhs,e,r)),this}get names(){return this.rhs instanceof Ar._CodeOrName?this.rhs.names:{}}},LR=class extends ld{constructor(e,r,n){super(),this.lhs=e,this.rhs=r,this.sideEffects=n}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,r){if(!(this.lhs instanceof Ar.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=HA(this.rhs,e,r),this}get names(){let e=this.lhs instanceof Ar.Name?{}:{...this.lhs.names};return MR(e,this.rhs)}},l8=class extends LR{constructor(e,r,n,s){super(e,n,s),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},d8=class extends ld{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},f8=class extends ld{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},p8=class extends ld{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},m8=class extends ld{constructor(e){super(),this.code=e}render({_n:e}){return`${this.code};`+e}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(e,r){return this.code=HA(this.code,e,r),this}get names(){return this.code instanceof Ar._CodeOrName?this.code.names:{}}},p1=class extends ld{constructor(e=[]){super(),this.nodes=e}render(e){return this.nodes.reduce((r,n)=>r+n.render(e),"")}optimizeNodes(){let{nodes:e}=this,r=e.length;for(;r--;){let n=e[r].optimizeNodes();Array.isArray(n)?e.splice(r,1,...n):n?e[r]=n:e.splice(r,1)}return e.length>0?this:void 0}optimizeNames(e,r){let{nodes:n}=this,s=n.length;for(;s--;){let i=n[s];i.optimizeNames(e,r)||(AEt(e,i.names),n.splice(s,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>Im(e,r.names),{})}},dd=class extends p1{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},h8=class extends p1{},jA=class extends dd{};jA.kind="else";var vm=class t extends dd{constructor(e,r){super(r),this.condition=e}render(e){let r=`if(${this.condition})`+super.render(e);return this.else&&(r+="else "+this.else.render(e)),r}optimizeNodes(){super.optimizeNodes();let e=this.condition;if(e===!0)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new jA(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(gme(e),r instanceof t?[r]:r.nodes);if(!(e===!1||!this.nodes.length))return this}optimizeNames(e,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(e,r),!!(super.optimizeNames(e,r)||this.else))return this.condition=HA(this.condition,e,r),this}get names(){let e=super.names;return MR(e,this.condition),this.else&&Im(e,this.else.names),e}};vm.kind="if";var Cm=class extends dd{};Cm.kind="for";var g8=class extends Cm{constructor(e){super(),this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iteration=HA(this.iteration,e,r),this}get names(){return Im(super.names,this.iteration.names)}},A8=class extends Cm{constructor(e,r,n,s){super(),this.varKind=e,this.name=r,this.from=n,this.to=s}render(e){let r=e.es5?$c.varKinds.var:this.varKind,{name:n,from:s,to:i}=this;return`for(${r} ${n}=${s}; ${n}<${i}; ${n}++)`+super.render(e)}get names(){let e=MR(super.names,this.from);return MR(e,this.to)}},BR=class extends Cm{constructor(e,r,n,s){super(),this.loop=e,this.varKind=r,this.name=n,this.iterable=s}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iterable=HA(this.iterable,e,r),this}get names(){return Im(super.names,this.iterable.names)}},m1=class extends dd{constructor(e,r,n){super(),this.name=e,this.args=r,this.async=n}render(e){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(e)}};m1.kind="func";var h1=class extends p1{render(e){return"return "+super.render(e)}};h1.kind="return";var y8=class extends dd{render(e){let r="try"+super.render(e);return this.catch&&(r+=this.catch.render(e)),this.finally&&(r+=this.finally.render(e)),r}optimizeNodes(){var e,r;return super.optimizeNodes(),(e=this.catch)===null||e===void 0||e.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(e,r){var n,s;return super.optimizeNames(e,r),(n=this.catch)===null||n===void 0||n.optimizeNames(e,r),(s=this.finally)===null||s===void 0||s.optimizeNames(e,r),this}get names(){let e=super.names;return this.catch&&Im(e,this.catch.names),this.finally&&Im(e,this.finally.names),e}},g1=class extends dd{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};g1.kind="catch";var A1=class extends dd{render(e){return"finally"+super.render(e)}};A1.kind="finally";var x8=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?` -`:""},this._extScope=e,this._scope=new $c.Scope({parent:e}),this._nodes=[new h8]}toString(){return this._root.render(this.opts)}name(e){return this._scope.name(e)}scopeName(e){return this._extScope.name(e)}scopeValue(e,r){let n=this._extScope.value(e,r);return(this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(e,r){return this._extScope.getValue(e,r)}scopeRefs(e){return this._extScope.scopeRefs(e,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(e,r,n,s){let i=this._scope.toName(r);return n!==void 0&&s&&(this._constants[i.str]=n),this._leafNode(new u8(e,i,n)),i}const(e,r,n){return this._def($c.varKinds.const,e,r,n)}let(e,r,n){return this._def($c.varKinds.let,e,r,n)}var(e,r,n){return this._def($c.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new LR(e,r,n))}add(e,r){return this._leafNode(new l8(e,Xt.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==Ar.nil&&this._leafNode(new m8(e)),this}object(...e){let r=["{"];for(let[n,s]of e)r.length>1&&r.push(","),r.push(n),(n!==s||this.opts.es5)&&(r.push(":"),(0,Ar.addCodeArg)(r,s));return r.push("}"),new Ar._Code(r)}if(e,r,n){if(this._blockNode(new vm(e)),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(e){return this._elseNode(new vm(e))}else(){return this._elseNode(new jA)}endIf(){return this._endBlockNode(vm,jA)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new g8(e),r)}forRange(e,r,n,s,i=this.opts.es5?$c.varKinds.var:$c.varKinds.let){let a=this._scope.toName(e);return this._for(new A8(i,a,r,n),()=>s(a))}forOf(e,r,n,s=$c.varKinds.const){let i=this._scope.toName(e);if(this.opts.es5){let a=r instanceof Ar.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,Ar._)`${a}.length`,o=>{this.var(i,(0,Ar._)`${a}[${o}]`),n(i)})}return this._for(new BR("of",s,i,r),()=>n(i))}forIn(e,r,n,s=this.opts.es5?$c.varKinds.var:$c.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,Ar._)`Object.keys(${r})`,n);let i=this._scope.toName(e);return this._for(new BR("in",s,i,r),()=>n(i))}endFor(){return this._endBlockNode(Cm)}label(e){return this._leafNode(new d8(e))}break(e){return this._leafNode(new f8(e))}return(e){let r=new h1;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(h1)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let s=new y8;if(this._blockNode(s),this.code(e),r){let i=this.name("e");this._currNode=s.catch=new g1(i),r(i)}return n&&(this._currNode=s.finally=new A1,this.code(n)),this._endBlockNode(g1,A1)}throw(e){return this._leafNode(new p8(e))}block(e,r){return this._blockStarts.push(this._nodes.length),e&&this.code(e).endBlock(r),this}endBlock(e){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||e!==void 0&&n!==e)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${e} expected`);return this._nodes.length=r,this}func(e,r=Ar.nil,n,s){return this._blockNode(new m1(e,r,n)),s&&this.code(s).endFunc(),this}endFunc(){return this._endBlockNode(m1)}optimize(e=1){for(;e-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(e){return this._currNode.nodes.push(e),this}_blockNode(e){this._currNode.nodes.push(e),this._nodes.push(e)}_endBlockNode(e,r){let n=this._currNode;if(n instanceof e||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${e.kind}/${r.kind}`:e.kind}"`)}_elseNode(e){let r=this._currNode;if(!(r instanceof vm))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let r=this._nodes;r[r.length-1]=e}};Xt.CodeGen=x8;function Im(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function MR(t,e){return e instanceof Ar._CodeOrName?Im(t,e.names):t}function HA(t,e,r){if(t instanceof Ar.Name)return n(t);if(!s(t))return t;return new Ar._Code(t._items.reduce((i,a)=>(a instanceof Ar.Name&&(a=n(a)),a instanceof Ar._Code?i.push(...a._items):i.push(a),i),[]));function n(i){let a=r[i.str];return a===void 0||e[i.str]!==1?i:(delete e[i.str],a)}function s(i){return i instanceof Ar._Code&&i._items.some(a=>a instanceof Ar.Name&&e[a.str]===1&&r[a.str]!==void 0)}}function AEt(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function gme(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,Ar._)`!${b8(t)}`}Xt.not=gme;var yEt=Ame(Xt.operators.AND);function xEt(...t){return t.reduce(yEt)}Xt.and=xEt;var bEt=Ame(Xt.operators.OR);function EEt(...t){return t.reduce(bEt)}Xt.or=EEt;function Ame(t){return(e,r)=>e===Ar.nil?r:r===Ar.nil?e:(0,Ar._)`${b8(e)} ${t} ${b8(r)}`}function b8(t){return t instanceof Ar.Name?t:(0,Ar._)`(${t})`}});var Lr=E(tr=>{"use strict";Object.defineProperty(tr,"__esModule",{value:!0});tr.checkStrictMode=tr.getErrorPath=tr.Type=tr.useFunc=tr.setEvaluated=tr.evaluatedPropsToName=tr.mergeEvaluated=tr.eachItem=tr.unescapeJsonPointer=tr.escapeJsonPointer=tr.escapeFragment=tr.unescapeFragment=tr.schemaRefOrVal=tr.schemaHasRulesButRef=tr.schemaHasRules=tr.checkUnknownRules=tr.alwaysValidSchema=tr.toHash=void 0;var ln=zt(),_Et=f1();function SEt(t){let e={};for(let r of t)e[r]=!0;return e}tr.toHash=SEt;function vEt(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(bme(t,e),!Eme(e,t.self.RULES.all))}tr.alwaysValidSchema=vEt;function bme(t,e=t.schema){let{opts:r,self:n}=t;if(!r.strictSchema||typeof e=="boolean")return;let s=n.RULES.keywords;for(let i in e)s[i]||vme(t,`unknown keyword: "${i}"`)}tr.checkUnknownRules=bme;function Eme(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}tr.schemaHasRules=Eme;function CEt(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}tr.schemaHasRulesButRef=CEt;function IEt({topSchemaRef:t,schemaPath:e},r,n,s){if(!s){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,ln._)`${r}`}return(0,ln._)`${t}${e}${(0,ln.getProperty)(n)}`}tr.schemaRefOrVal=IEt;function TEt(t){return _me(decodeURIComponent(t))}tr.unescapeFragment=TEt;function wEt(t){return encodeURIComponent(_8(t))}tr.escapeFragment=wEt;function _8(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}tr.escapeJsonPointer=_8;function _me(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}tr.unescapeJsonPointer=_me;function REt(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}tr.eachItem=REt;function yme({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(s,i,a,o)=>{let c=a===void 0?i:a instanceof ln.Name?(i instanceof ln.Name?t(s,i,a):e(s,i,a),a):i instanceof ln.Name?(e(s,a,i),i):r(i,a);return o===ln.Name&&!(c instanceof ln.Name)?n(s,c):c}}tr.mergeEvaluated={props:yme({mergeNames:(t,e,r)=>t.if((0,ln._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,ln._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,ln._)`${r} || {}`).code((0,ln._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,ln._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,ln._)`${r} || {}`),S8(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:Sme}),items:yme({mergeNames:(t,e,r)=>t.if((0,ln._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,ln._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,ln._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,ln._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function Sme(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,ln._)`{}`);return e!==void 0&&S8(t,r,e),r}tr.evaluatedPropsToName=Sme;function S8(t,e,r){Object.keys(r).forEach(n=>t.assign((0,ln._)`${e}${(0,ln.getProperty)(n)}`,!0))}tr.setEvaluated=S8;var xme={};function NEt(t,e){return t.scopeValue("func",{ref:e,code:xme[e.code]||(xme[e.code]=new _Et._Code(e.code))})}tr.useFunc=NEt;var E8;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(E8||(tr.Type=E8={}));function OEt(t,e,r){if(t instanceof ln.Name){let n=e===E8.Num;return r?n?(0,ln._)`"[" + ${t} + "]"`:(0,ln._)`"['" + ${t} + "']"`:n?(0,ln._)`"/" + ${t}`:(0,ln._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,ln.getProperty)(t).toString():"/"+_8(t)}tr.getErrorPath=OEt;function vme(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}tr.checkStrictMode=vme});var fd=E(v8=>{"use strict";Object.defineProperty(v8,"__esModule",{value:!0});var Ti=zt(),PEt={data:new Ti.Name("data"),valCxt:new Ti.Name("valCxt"),instancePath:new Ti.Name("instancePath"),parentData:new Ti.Name("parentData"),parentDataProperty:new Ti.Name("parentDataProperty"),rootData:new Ti.Name("rootData"),dynamicAnchors:new Ti.Name("dynamicAnchors"),vErrors:new Ti.Name("vErrors"),errors:new Ti.Name("errors"),this:new Ti.Name("this"),self:new Ti.Name("self"),scope:new Ti.Name("scope"),json:new Ti.Name("json"),jsonPos:new Ti.Name("jsonPos"),jsonLen:new Ti.Name("jsonLen"),jsonPart:new Ti.Name("jsonPart")};v8.default=PEt});var y1=E(wi=>{"use strict";Object.defineProperty(wi,"__esModule",{value:!0});wi.extendErrors=wi.resetErrorsCount=wi.reportExtraError=wi.reportError=wi.keyword$DataError=wi.keywordError=void 0;var vr=zt(),$R=Lr(),ea=fd();wi.keywordError={message:({keyword:t})=>(0,vr.str)`must pass "${t}" keyword validation`};wi.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,vr.str)`"${t}" keyword must be ${e} ($data)`:(0,vr.str)`"${t}" keyword is invalid ($data)`};function DEt(t,e=wi.keywordError,r,n){let{it:s}=t,{gen:i,compositeRule:a,allErrors:o}=s,c=Tme(t,e,r);n??(a||o)?Cme(i,c):Ime(s,(0,vr._)`[${c}]`)}wi.reportError=DEt;function kEt(t,e=wi.keywordError,r){let{it:n}=t,{gen:s,compositeRule:i,allErrors:a}=n,o=Tme(t,e,r);Cme(s,o),i||a||Ime(n,ea.default.vErrors)}wi.reportExtraError=kEt;function LEt(t,e){t.assign(ea.default.errors,e),t.if((0,vr._)`${ea.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,vr._)`${ea.default.vErrors}.length`,e),()=>t.assign(ea.default.vErrors,null)))}wi.resetErrorsCount=LEt;function BEt({gen:t,keyword:e,schemaValue:r,data:n,errsCount:s,it:i}){if(s===void 0)throw new Error("ajv implementation error");let a=t.name("err");t.forRange("i",s,ea.default.errors,o=>{t.const(a,(0,vr._)`${ea.default.vErrors}[${o}]`),t.if((0,vr._)`${a}.instancePath === undefined`,()=>t.assign((0,vr._)`${a}.instancePath`,(0,vr.strConcat)(ea.default.instancePath,i.errorPath))),t.assign((0,vr._)`${a}.schemaPath`,(0,vr.str)`${i.errSchemaPath}/${e}`),i.opts.verbose&&(t.assign((0,vr._)`${a}.schema`,r),t.assign((0,vr._)`${a}.data`,n))})}wi.extendErrors=BEt;function Cme(t,e){let r=t.const("err",e);t.if((0,vr._)`${ea.default.vErrors} === null`,()=>t.assign(ea.default.vErrors,(0,vr._)`[${r}]`),(0,vr._)`${ea.default.vErrors}.push(${r})`),t.code((0,vr._)`${ea.default.errors}++`)}function Ime(t,e){let{gen:r,validateName:n,schemaEnv:s}=t;s.$async?r.throw((0,vr._)`new ${t.ValidationError}(${e})`):(r.assign((0,vr._)`${n}.errors`,e),r.return(!1))}var Tm={keyword:new vr.Name("keyword"),schemaPath:new vr.Name("schemaPath"),params:new vr.Name("params"),propertyName:new vr.Name("propertyName"),message:new vr.Name("message"),schema:new vr.Name("schema"),parentSchema:new vr.Name("parentSchema")};function Tme(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,vr._)`{}`:MEt(t,e,r)}function MEt(t,e,r={}){let{gen:n,it:s}=t,i=[WEt(s,r),$Et(t,r)];return FEt(t,e,i),n.object(...i)}function WEt({errorPath:t},{instancePath:e}){let r=e?(0,vr.str)`${t}${(0,$R.getErrorPath)(e,$R.Type.Str)}`:t;return[ea.default.instancePath,(0,vr.strConcat)(ea.default.instancePath,r)]}function $Et({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let s=n?e:(0,vr.str)`${e}/${t}`;return r&&(s=(0,vr.str)`${s}${(0,$R.getErrorPath)(r,$R.Type.Str)}`),[Tm.schemaPath,s]}function FEt(t,{params:e,message:r},n){let{keyword:s,data:i,schemaValue:a,it:o}=t,{opts:c,propertyName:u,topSchemaRef:l,schemaPath:d}=o;n.push([Tm.keyword,s],[Tm.params,typeof e=="function"?e(t):e||(0,vr._)`{}`]),c.messages&&n.push([Tm.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([Tm.schema,a],[Tm.parentSchema,(0,vr._)`${l}${d}`],[ea.default.data,i]),u&&n.push([Tm.propertyName,u])}});var Rme=E(QA=>{"use strict";Object.defineProperty(QA,"__esModule",{value:!0});QA.boolOrEmptySchema=QA.topBoolOrEmptySchema=void 0;var UEt=y1(),qEt=zt(),jEt=fd(),HEt={message:"boolean schema is false"};function QEt(t){let{gen:e,schema:r,validateName:n}=t;r===!1?wme(t,!1):typeof r=="object"&&r.$async===!0?e.return(jEt.default.data):(e.assign((0,qEt._)`${n}.errors`,null),e.return(!0))}QA.topBoolOrEmptySchema=QEt;function GEt(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),wme(t)):r.var(e,!0)}QA.boolOrEmptySchema=GEt;function wme(t,e){let{gen:r,data:n}=t,s={gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:t};(0,UEt.reportError)(s,HEt,void 0,e)}});var C8=E(GA=>{"use strict";Object.defineProperty(GA,"__esModule",{value:!0});GA.getRules=GA.isJSONType=void 0;var VEt=["string","number","integer","boolean","null","object","array"],zEt=new Set(VEt);function KEt(t){return typeof t=="string"&&zEt.has(t)}GA.isJSONType=KEt;function YEt(){let t={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...t,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},t.number,t.string,t.array,t.object],post:{rules:[]},all:{},keywords:{}}}GA.getRules=YEt});var I8=E(hp=>{"use strict";Object.defineProperty(hp,"__esModule",{value:!0});hp.shouldUseRule=hp.shouldUseGroup=hp.schemaHasRulesForType=void 0;function JEt({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&Nme(t,n)}hp.schemaHasRulesForType=JEt;function Nme(t,e){return e.rules.some(r=>Ome(t,r))}hp.shouldUseGroup=Nme;function Ome(t,e){var r;return t[e.keyword]!==void 0||((r=e.definition.implements)===null||r===void 0?void 0:r.some(n=>t[n]!==void 0))}hp.shouldUseRule=Ome});var x1=E(Ri=>{"use strict";Object.defineProperty(Ri,"__esModule",{value:!0});Ri.reportTypeError=Ri.checkDataTypes=Ri.checkDataType=Ri.coerceAndCheckDataType=Ri.getJSONTypes=Ri.getSchemaTypes=Ri.DataType=void 0;var XEt=C8(),ZEt=I8(),e1t=y1(),jt=zt(),Pme=Lr(),VA;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(VA||(Ri.DataType=VA={}));function t1t(t){let e=Dme(t.type);if(e.includes("null")){if(t.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!e.length&&t.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');t.nullable===!0&&e.push("null")}return e}Ri.getSchemaTypes=t1t;function Dme(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(XEt.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}Ri.getJSONTypes=Dme;function r1t(t,e){let{gen:r,data:n,opts:s}=t,i=n1t(e,s.coerceTypes),a=e.length>0&&!(i.length===0&&e.length===1&&(0,ZEt.schemaHasRulesForType)(t,e[0]));if(a){let o=w8(e,n,s.strictNumbers,VA.Wrong);r.if(o,()=>{i.length?s1t(t,e,i):R8(t)})}return a}Ri.coerceAndCheckDataType=r1t;var kme=new Set(["string","number","integer","boolean","null"]);function n1t(t,e){return e?t.filter(r=>kme.has(r)||e==="array"&&r==="array"):[]}function s1t(t,e,r){let{gen:n,data:s,opts:i}=t,a=n.let("dataType",(0,jt._)`typeof ${s}`),o=n.let("coerced",(0,jt._)`undefined`);i.coerceTypes==="array"&&n.if((0,jt._)`${a} == 'object' && Array.isArray(${s}) && ${s}.length == 1`,()=>n.assign(s,(0,jt._)`${s}[0]`).assign(a,(0,jt._)`typeof ${s}`).if(w8(e,s,i.strictNumbers),()=>n.assign(o,s))),n.if((0,jt._)`${o} !== undefined`);for(let u of r)(kme.has(u)||u==="array"&&i.coerceTypes==="array")&&c(u);n.else(),R8(t),n.endIf(),n.if((0,jt._)`${o} !== undefined`,()=>{n.assign(s,o),i1t(t,o)});function c(u){switch(u){case"string":n.elseIf((0,jt._)`${a} == "number" || ${a} == "boolean"`).assign(o,(0,jt._)`"" + ${s}`).elseIf((0,jt._)`${s} === null`).assign(o,(0,jt._)`""`);return;case"number":n.elseIf((0,jt._)`${a} == "boolean" || ${s} === null +`),Z=ISt.bind(null,{[Mge]:"",[Wge]:a,[Uge]:M,[$ge]:Z8,[e$]:N,[Fge]:k}),W="";d!==null&&(f===void 0?W=Z(d):W=Z(Object.assign({},d,{name:f})));let U=o instanceof Function?o:o?Gge:GSt,z=U().indexOf(":")+1;if(b&&!m)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(w&&typeof w!="string")throw Error(`Unknown msgPrefix type "${typeof w}" - expected "string"`);ASt(p,m,b);let j=Hge(m,b);typeof n.emit=="function"&&n.emit("message",{code:"PINO_CONFIG",config:{levels:j,messageKey:c,errorKey:u}}),_St(h);let J=bSt(h);return Object.assign(e,{levels:j,[USt]:J,[FSt]:b,[kSt]:n,[NSt]:U,[OSt]:z,[$ge]:Z8,[e$]:N,[Uge]:M,[DSt]:L,[BSt]:D,[LSt]:c,[MSt]:u,[WSt]:l,[jSt]:l?`,${JSON.stringify(l)}:{`:"",[Wge]:a,[$St]:y,[QSt]:g,[Mge]:W,[Fge]:k,[qSt]:A,silent:TSt,onChild:R,[HSt]:w}),Object.setPrototypeOf(e,gSt()),xSt(e),e[PSt](p),e}tc.exports=t$;tc.exports.destination=(t=process.stdout.fd)=>typeof t=="object"?(t.dest=Lge(t.dest||process.stdout.fd),Bge(t)):Bge({dest:Lge(t),minLength:0});tc.exports.transport=M8();tc.exports.multistream=Dge();tc.exports.levels=Hge();tc.exports.stdSerializers=XSt;tc.exports.stdTimeFunctions=Object.assign({},jge);tc.exports.symbols=Qge;tc.exports.version=wSt;tc.exports.default=t$;tc.exports.pino=t$});var mE=_((kWr,Xge)=>{"use strict";var ZSt=Mme(),ZN=zge(),{serializersSym:Kge}=ZN.symbols,{FST_ERR_LOG_INVALID_DESTINATION:eIt,FST_ERR_LOG_INVALID_LOGGER:tIt}=Di();function Vge(t){if(t.stream&&t.file)throw new eIt;t.file&&(t.stream=ZN.destination(t.file),delete t.file);let e=t.logger,r=t.genReqId,n=null;return e?(t.logger=void 0,t.genReqId=void 0,e[Kge]&&(t.serializers=Object.assign({},t.serializers,e[Kge])),n=e.child({},t),t.logger=e,t.genReqId=r):n=ZN(t,t.stream),n}var r$={req:function(e){return{method:e.method,url:e.url,version:e.headers&&e.headers["accept-version"],hostname:e.hostname,remoteAddress:e.ip,remotePort:e.socket?e.socket.remotePort:void 0}},err:ZN.stdSerializers.err,res:function(e){return{statusCode:e.statusCode}}};function rIt(){let t=process.hrtime();return t[0]*1e3+t[1]/1e6}function nIt(t){if(!t.logger){let n=ZSt;return n.child=()=>n,{logger:n,hasLogger:!1}}if(Yge(t.logger))return{logger:Vge({logger:t.logger,serializers:Object.assign({},r$,t.logger.serializers)}),hasLogger:!0};let e={};return Object.prototype.toString.call(t.logger)==="[object Object]"&&Reflect.ownKeys(t.logger).forEach(n=>{Object.defineProperty(e,n,{value:t.logger[n],writable:!0,enumerable:!0,configurable:!0})}),e.level=e.level||"info",e.serializers=Object.assign({},r$,e.serializers),t.logger=e,{logger:Vge(t.logger),hasLogger:!0}}function Yge(t,e){let r=["info","error","debug","fatal","warn","trace","child"],n=t?r.filter(s=>!t[s]||typeof t[s]!="function"):r;if(n.length){if(n.length===r.length&&!e)return!1;throw tIt(n.join(","))}else return!0}function sIt(t,e,r,n,s){let i={[t.requestIdLogLabel]:n},a=t.childLoggerFactory.call(t.server,e,i,s||{},r);return t.childLoggerFactory!==Jge&&Yge(a,!0),a}function Jge(t,e,r){return t.child(e,r)}Xge.exports={createLogger:nIt,createChildLogger:sIt,defaultChildLoggerFactory:Jge,serializers:r$,now:rIt}});var eO=_((PWr,Zge)=>{"use strict";Zge.exports=iIt;function vA(t){return t instanceof Buffer?Buffer.from(t):new t.constructor(t.buffer.slice(),t.byteOffset,t.length)}function iIt(t){if(t=t||{},t.circles)return aIt(t);let e=new Map;if(e.set(Date,a=>new Date(a)),e.set(Map,(a,o)=>new Map(n(Array.from(a),o))),e.set(Set,(a,o)=>new Set(n(Array.from(a),o))),t.constructorHandlers)for(let a of t.constructorHandlers)e.set(a[0],a[1]);let r=null;return t.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))),t.constructorHandlers)for(let c of t.constructorHandlers)n.set(c[0],c[1]);let s=null;return t.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 oIt=eO()({circles:!1,proto:!0}),{kSchemaVisited:eye,kSchemaResponse:cIt}=zs(),s$=Symbol.for("fluent-schema-object"),{FST_ERR_SCH_MISSING_ID:uIt,FST_ERR_SCH_ALREADY_PRESENT:lIt,FST_ERR_SCH_DUPLICATE:dIt,FST_ERR_SCH_CONTENT_MISSING_SCHEMA:fIt}=Di(),rye=["params","body","querystring","query","headers"];function tO(t){this.store=t||{}}tO.prototype.add=function(t){let e=oIt(t.isFluentSchema||t.isFluentJSONSchema||t[s$]?t.valueOf():t),r=e.$id;if(!r)throw new uIt;if(this.store[r])throw new lIt(r);this.store[r]=e};tO.prototype.getSchemas=function(){return Object.assign({},this.store)};tO.prototype.getSchema=function(t){return this.store[t]};function tye(t){return typeof t=="object"&&Object.getPrototypeOf(t)!==Object.prototype}function pIt(t,e){if(t[eye])return t;if(t.query){if(t.querystring)throw new dIt("querystring");t.querystring=t.query}mIt(t);for(let r of rye){let n=t[r];n&&!tye(n)&&(t[r]=n$(n,e.jsonShorthand))}if(t.response){let r=Object.keys(t.response);for(let n of r){if(tye(t.response[n]))continue;let s=t.response[n].content,i=!1;if(s){let a=Object.keys(s);for(let o=0;o{"use strict";var gIt=/[\u0000-\u001f\u0022\u005c\ud800-\udfff]/;iye.exports=class sye{constructor(e){switch(e&&e.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=e}asInteger(e){if(Number.isInteger(e))return""+e;if(typeof e=="bigint")return e.toString();let r=this.parseInteger(e);if(r===1/0||r===-1/0||r!==r)throw new Error(`The value "${e}" cannot be converted to an integer.`);return""+r}asNumber(e){let r=Number(e);if(r!==r)throw new Error(`The value "${e}" cannot be converted to a number.`);return r===1/0||r===-1/0?"null":""+r}asBoolean(e){return e&&"true"||"false"}asDateTime(e){if(e===null)return'""';if(e instanceof Date)return'"'+e.toISOString()+'"';if(typeof e=="string")return'"'+e+'"';throw new Error(`The value "${e}" cannot be converted to a date-time.`)}asDate(e){if(e===null)return'""';if(e instanceof Date)return'"'+new Date(e.getTime()-e.getTimezoneOffset()*6e4).toISOString().slice(0,10)+'"';if(typeof e=="string")return'"'+e+'"';throw new Error(`The value "${e}" cannot be converted to a date.`)}asTime(e){if(e===null)return'""';if(e instanceof Date)return'"'+new Date(e.getTime()-e.getTimezoneOffset()*6e4).toISOString().slice(11,19)+'"';if(typeof e=="string")return'"'+e+'"';throw new Error(`The value "${e}" cannot be converted to a time.`)}asString(e){let r=e.length;if(r<42){let s="",i=-1,a=255;for(var n=0;n=55296&&a<=57343)return JSON.stringify(e);return i===-1&&'"'+e+'"'||'"'+s+e.slice(i)+'"'}else return r<5e3&&gIt.test(e)===!1?'"'+e+'"':JSON.stringify(e)}asUnsafeString(e){return'"'+e+'"'}getState(){return this._options}static restoreFromState(e){return new sye(e)}}});var AE=_(Mr=>{"use strict";Object.defineProperty(Mr,"__esModule",{value:!0});Mr.regexpCode=Mr.getEsmExportName=Mr.getProperty=Mr.safeStringify=Mr.stringify=Mr.strConcat=Mr.addCodeArg=Mr.str=Mr._=Mr.nil=Mr._Code=Mr.Name=Mr.IDENTIFIER=Mr._CodeOrName=void 0;var gE=class{};Mr._CodeOrName=gE;Mr.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Gm=class extends gE{constructor(e){if(super(),!Mr.IDENTIFIER.test(e))throw new Error("CodeGen: name must be a valid identifier");this.str=e}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};Mr.Name=Gm;var rc=class extends gE{constructor(e){super(),this._items=typeof e=="string"?[e]:e}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let e=this._items[0];return e===""||e==='""'}get str(){var e;return(e=this._str)!==null&&e!==void 0?e:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var e;return(e=this._names)!==null&&e!==void 0?e:this._names=this._items.reduce((r,n)=>(n instanceof Gm&&(r[n.str]=(r[n.str]||0)+1),r),{})}};Mr._Code=rc;Mr.nil=new rc("");function aye(t,...e){let r=[t[0]],n=0;for(;n{"use strict";Object.defineProperty(qa,"__esModule",{value:!0});qa.ValueScope=qa.ValueScopeName=qa.Scope=qa.varKinds=qa.UsedValueState=void 0;var Fa=AE(),c$=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},rO;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(rO||(qa.UsedValueState=rO={}));qa.varKinds={const:new Fa.Name("const"),let:new Fa.Name("let"),var:new Fa.Name("var")};var nO=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof Fa.Name?e:this.name(e)}name(e){return new Fa.Name(this._newName(e))}_newName(e){let r=this._names[e]||this._nameGroup(e);return`${e}${r.index++}`}_nameGroup(e){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(e)||this._prefixes&&!this._prefixes.has(e))throw new Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};qa.Scope=nO;var sO=class extends Fa.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,Fa._)`.${new Fa.Name(r)}[${n}]`}};qa.ValueScopeName=sO;var IIt=(0,Fa._)`\n`,u$=class extends nO{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?IIt:Fa.nil}}get(){return this._scope}name(e){return new sO(e,this._newName(e))}value(e,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let s=this.toName(e),{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(e,r){let n=this._values[e];if(n)return n.get(r)}scopeRefs(e,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,Fa._)`${e}${n.scopePath}`})}scopeCode(e=this._values,r,n){return this._reduceValues(e,s=>{if(s.value===void 0)throw new Error(`CodeGen: name "${s}" has no value`);return s.value.code},r,n)}_reduceValues(e,r,n={},s){let i=Fa.nil;for(let a in e){let o=e[a];if(!o)continue;let c=n[a]=n[a]||new Map;o.forEach(u=>{if(c.has(u))return;c.set(u,rO.Started);let l=r(u);if(l){let d=this.opts.es5?qa.varKinds.var:qa.varKinds.const;i=(0,Fa._)`${i}${d} ${u} = ${l};${this.opts._n}`}else if(l=s?.(u))i=(0,Fa._)`${i}${l}${this.opts._n}`;else throw new c$(u);c.set(u,rO.Completed)})}return i}};qa.ValueScope=u$});var Vt=_(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 Er=AE(),Jc=l$(),Dp=AE();Object.defineProperty(rr,"_",{enumerable:!0,get:function(){return Dp._}});Object.defineProperty(rr,"str",{enumerable:!0,get:function(){return Dp.str}});Object.defineProperty(rr,"strConcat",{enumerable:!0,get:function(){return Dp.strConcat}});Object.defineProperty(rr,"nil",{enumerable:!0,get:function(){return Dp.nil}});Object.defineProperty(rr,"getProperty",{enumerable:!0,get:function(){return Dp.getProperty}});Object.defineProperty(rr,"stringify",{enumerable:!0,get:function(){return Dp.stringify}});Object.defineProperty(rr,"regexpCode",{enumerable:!0,get:function(){return Dp.regexpCode}});Object.defineProperty(rr,"Name",{enumerable:!0,get:function(){return Dp.Name}});var cO=l$();Object.defineProperty(rr,"Scope",{enumerable:!0,get:function(){return cO.Scope}});Object.defineProperty(rr,"ValueScope",{enumerable:!0,get:function(){return cO.ValueScope}});Object.defineProperty(rr,"ValueScopeName",{enumerable:!0,get:function(){return cO.ValueScopeName}});Object.defineProperty(rr,"varKinds",{enumerable:!0,get:function(){return cO.varKinds}});rr.operators={GT:new Er._Code(">"),GTE:new Er._Code(">="),LT:new Er._Code("<"),LTE:new Er._Code("<="),EQ:new Er._Code("==="),NEQ:new Er._Code("!=="),NOT:new Er._Code("!"),OR:new Er._Code("||"),AND:new Er._Code("&&"),ADD:new Er._Code("+")};var Nd=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},d$=class extends Nd{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?Jc.varKinds.var:this.varKind,s=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${s};`+r}optimizeNames(e,r){if(e[this.name.str])return this.rhs&&(this.rhs=IA(this.rhs,e,r)),this}get names(){return this.rhs instanceof Er._CodeOrName?this.rhs.names:{}}},iO=class extends Nd{constructor(e,r,n){super(),this.lhs=e,this.rhs=r,this.sideEffects=n}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,r){if(!(this.lhs instanceof Er.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=IA(this.rhs,e,r),this}get names(){let e=this.lhs instanceof Er.Name?{}:{...this.lhs.names};return oO(e,this.rhs)}},f$=class extends iO{constructor(e,r,n,s){super(e,n,s),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},p$=class extends Nd{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},m$=class extends Nd{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},h$=class extends Nd{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},g$=class extends Nd{constructor(e){super(),this.code=e}render({_n:e}){return`${this.code};`+e}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(e,r){return this.code=IA(this.code,e,r),this}get names(){return this.code instanceof Er._CodeOrName?this.code.names:{}}},xE=class extends Nd{constructor(e=[]){super(),this.nodes=e}render(e){return this.nodes.reduce((r,n)=>r+n.render(e),"")}optimizeNodes(){let{nodes:e}=this,r=e.length;for(;r--;){let n=e[r].optimizeNodes();Array.isArray(n)?e.splice(r,1,...n):n?e[r]=n:e.splice(r,1)}return e.length>0?this:void 0}optimizeNames(e,r){let{nodes:n}=this,s=n.length;for(;s--;){let i=n[s];i.optimizeNames(e,r)||(CIt(e,i.names),n.splice(s,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>Vm(e,r.names),{})}},Od=class extends xE{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},y$=class extends xE{},SA=class extends Od{};SA.kind="else";var zm=class t extends Od{constructor(e,r){super(r),this.condition=e}render(e){let r=`if(${this.condition})`+super.render(e);return this.else&&(r+="else "+this.else.render(e)),r}optimizeNodes(){super.optimizeNodes();let e=this.condition;if(e===!0)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new SA(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(cye(e),r instanceof t?[r]:r.nodes);if(!(e===!1||!this.nodes.length))return this}optimizeNames(e,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(e,r),!!(super.optimizeNames(e,r)||this.else))return this.condition=IA(this.condition,e,r),this}get names(){let e=super.names;return oO(e,this.condition),this.else&&Vm(e,this.else.names),e}};zm.kind="if";var Km=class extends Od{};Km.kind="for";var A$=class extends Km{constructor(e){super(),this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iteration=IA(this.iteration,e,r),this}get names(){return Vm(super.names,this.iteration.names)}},x$=class extends Km{constructor(e,r,n,s){super(),this.varKind=e,this.name=r,this.from=n,this.to=s}render(e){let r=e.es5?Jc.varKinds.var:this.varKind,{name:n,from:s,to:i}=this;return`for(${r} ${n}=${s}; ${n}<${i}; ${n}++)`+super.render(e)}get names(){let e=oO(super.names,this.from);return oO(e,this.to)}},aO=class extends Km{constructor(e,r,n,s){super(),this.loop=e,this.varKind=r,this.name=n,this.iterable=s}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iterable=IA(this.iterable,e,r),this}get names(){return Vm(super.names,this.iterable.names)}},bE=class extends Od{constructor(e,r,n){super(),this.name=e,this.args=r,this.async=n}render(e){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(e)}};bE.kind="func";var _E=class extends xE{render(e){return"return "+super.render(e)}};_E.kind="return";var b$=class extends Od{render(e){let r="try"+super.render(e);return this.catch&&(r+=this.catch.render(e)),this.finally&&(r+=this.finally.render(e)),r}optimizeNodes(){var e,r;return super.optimizeNodes(),(e=this.catch)===null||e===void 0||e.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(e,r){var n,s;return super.optimizeNames(e,r),(n=this.catch)===null||n===void 0||n.optimizeNames(e,r),(s=this.finally)===null||s===void 0||s.optimizeNames(e,r),this}get names(){let e=super.names;return this.catch&&Vm(e,this.catch.names),this.finally&&Vm(e,this.finally.names),e}},EE=class extends Od{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};EE.kind="catch";var vE=class extends Od{render(e){return"finally"+super.render(e)}};vE.kind="finally";var _$=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?` +`:""},this._extScope=e,this._scope=new Jc.Scope({parent:e}),this._nodes=[new y$]}toString(){return this._root.render(this.opts)}name(e){return this._scope.name(e)}scopeName(e){return this._extScope.name(e)}scopeValue(e,r){let n=this._extScope.value(e,r);return(this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(e,r){return this._extScope.getValue(e,r)}scopeRefs(e){return this._extScope.scopeRefs(e,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(e,r,n,s){let i=this._scope.toName(r);return n!==void 0&&s&&(this._constants[i.str]=n),this._leafNode(new d$(e,i,n)),i}const(e,r,n){return this._def(Jc.varKinds.const,e,r,n)}let(e,r,n){return this._def(Jc.varKinds.let,e,r,n)}var(e,r,n){return this._def(Jc.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new iO(e,r,n))}add(e,r){return this._leafNode(new f$(e,rr.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==Er.nil&&this._leafNode(new g$(e)),this}object(...e){let r=["{"];for(let[n,s]of e)r.length>1&&r.push(","),r.push(n),(n!==s||this.opts.es5)&&(r.push(":"),(0,Er.addCodeArg)(r,s));return r.push("}"),new Er._Code(r)}if(e,r,n){if(this._blockNode(new zm(e)),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(e){return this._elseNode(new zm(e))}else(){return this._elseNode(new SA)}endIf(){return this._endBlockNode(zm,SA)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new A$(e),r)}forRange(e,r,n,s,i=this.opts.es5?Jc.varKinds.var:Jc.varKinds.let){let a=this._scope.toName(e);return this._for(new x$(i,a,r,n),()=>s(a))}forOf(e,r,n,s=Jc.varKinds.const){let i=this._scope.toName(e);if(this.opts.es5){let a=r instanceof Er.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,Er._)`${a}.length`,o=>{this.var(i,(0,Er._)`${a}[${o}]`),n(i)})}return this._for(new aO("of",s,i,r),()=>n(i))}forIn(e,r,n,s=this.opts.es5?Jc.varKinds.var:Jc.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,Er._)`Object.keys(${r})`,n);let i=this._scope.toName(e);return this._for(new aO("in",s,i,r),()=>n(i))}endFor(){return this._endBlockNode(Km)}label(e){return this._leafNode(new p$(e))}break(e){return this._leafNode(new m$(e))}return(e){let r=new _E;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(_E)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let s=new b$;if(this._blockNode(s),this.code(e),r){let i=this.name("e");this._currNode=s.catch=new EE(i),r(i)}return n&&(this._currNode=s.finally=new vE,this.code(n)),this._endBlockNode(EE,vE)}throw(e){return this._leafNode(new h$(e))}block(e,r){return this._blockStarts.push(this._nodes.length),e&&this.code(e).endBlock(r),this}endBlock(e){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||e!==void 0&&n!==e)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${e} expected`);return this._nodes.length=r,this}func(e,r=Er.nil,n,s){return this._blockNode(new bE(e,r,n)),s&&this.code(s).endFunc(),this}endFunc(){return this._endBlockNode(bE)}optimize(e=1){for(;e-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(e){return this._currNode.nodes.push(e),this}_blockNode(e){this._currNode.nodes.push(e),this._nodes.push(e)}_endBlockNode(e,r){let n=this._currNode;if(n instanceof e||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${e.kind}/${r.kind}`:e.kind}"`)}_elseNode(e){let r=this._currNode;if(!(r instanceof zm))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let r=this._nodes;r[r.length-1]=e}};rr.CodeGen=_$;function Vm(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function oO(t,e){return e instanceof Er._CodeOrName?Vm(t,e.names):t}function IA(t,e,r){if(t instanceof Er.Name)return n(t);if(!s(t))return t;return new Er._Code(t._items.reduce((i,a)=>(a instanceof Er.Name&&(a=n(a)),a instanceof Er._Code?i.push(...a._items):i.push(a),i),[]));function n(i){let a=r[i.str];return a===void 0||e[i.str]!==1?i:(delete e[i.str],a)}function s(i){return i instanceof Er._Code&&i._items.some(a=>a instanceof Er.Name&&e[a.str]===1&&r[a.str]!==void 0)}}function CIt(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function cye(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,Er._)`!${E$(t)}`}rr.not=cye;var TIt=uye(rr.operators.AND);function wIt(...t){return t.reduce(TIt)}rr.and=wIt;var RIt=uye(rr.operators.OR);function NIt(...t){return t.reduce(RIt)}rr.or=NIt;function uye(t){return(e,r)=>e===Er.nil?r:r===Er.nil?e:(0,Er._)`${E$(e)} ${t} ${E$(r)}`}function E$(t){return t instanceof Er.Name?t:(0,Er._)`(${t})`}});var Wr=_(ir=>{"use strict";Object.defineProperty(ir,"__esModule",{value:!0});ir.checkStrictMode=ir.getErrorPath=ir.Type=ir.useFunc=ir.setEvaluated=ir.evaluatedPropsToName=ir.mergeEvaluated=ir.eachItem=ir.unescapeJsonPointer=ir.escapeJsonPointer=ir.escapeFragment=ir.unescapeFragment=ir.schemaRefOrVal=ir.schemaHasRulesButRef=ir.schemaHasRules=ir.checkUnknownRules=ir.alwaysValidSchema=ir.toHash=void 0;var un=Vt(),OIt=AE();function kIt(t){let e={};for(let r of t)e[r]=!0;return e}ir.toHash=kIt;function PIt(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(fye(t,e),!pye(e,t.self.RULES.all))}ir.alwaysValidSchema=PIt;function fye(t,e=t.schema){let{opts:r,self:n}=t;if(!r.strictSchema||typeof e=="boolean")return;let s=n.RULES.keywords;for(let i in e)s[i]||gye(t,`unknown keyword: "${i}"`)}ir.checkUnknownRules=fye;function pye(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}ir.schemaHasRules=pye;function DIt(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}ir.schemaHasRulesButRef=DIt;function BIt({topSchemaRef:t,schemaPath:e},r,n,s){if(!s){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,un._)`${r}`}return(0,un._)`${t}${e}${(0,un.getProperty)(n)}`}ir.schemaRefOrVal=BIt;function LIt(t){return mye(decodeURIComponent(t))}ir.unescapeFragment=LIt;function MIt(t){return encodeURIComponent(S$(t))}ir.escapeFragment=MIt;function S$(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}ir.escapeJsonPointer=S$;function mye(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}ir.unescapeJsonPointer=mye;function WIt(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}ir.eachItem=WIt;function lye({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(s,i,a,o)=>{let c=a===void 0?i:a instanceof un.Name?(i instanceof un.Name?t(s,i,a):e(s,i,a),a):i instanceof un.Name?(e(s,a,i),i):r(i,a);return o===un.Name&&!(c instanceof un.Name)?n(s,c):c}}ir.mergeEvaluated={props:lye({mergeNames:(t,e,r)=>t.if((0,un._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,un._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,un._)`${r} || {}`).code((0,un._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,un._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,un._)`${r} || {}`),I$(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:hye}),items:lye({mergeNames:(t,e,r)=>t.if((0,un._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,un._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,un._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,un._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function hye(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,un._)`{}`);return e!==void 0&&I$(t,r,e),r}ir.evaluatedPropsToName=hye;function I$(t,e,r){Object.keys(r).forEach(n=>t.assign((0,un._)`${e}${(0,un.getProperty)(n)}`,!0))}ir.setEvaluated=I$;var dye={};function $It(t,e){return t.scopeValue("func",{ref:e,code:dye[e.code]||(dye[e.code]=new OIt._Code(e.code))})}ir.useFunc=$It;var v$;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(v$||(ir.Type=v$={}));function UIt(t,e,r){if(t instanceof un.Name){let n=e===v$.Num;return r?n?(0,un._)`"[" + ${t} + "]"`:(0,un._)`"['" + ${t} + "']"`:n?(0,un._)`"/" + ${t}`:(0,un._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,un.getProperty)(t).toString():"/"+S$(t)}ir.getErrorPath=UIt;function gye(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}ir.checkStrictMode=gye});var kd=_(C$=>{"use strict";Object.defineProperty(C$,"__esModule",{value:!0});var Li=Vt(),FIt={data:new Li.Name("data"),valCxt:new Li.Name("valCxt"),instancePath:new Li.Name("instancePath"),parentData:new Li.Name("parentData"),parentDataProperty:new Li.Name("parentDataProperty"),rootData:new Li.Name("rootData"),dynamicAnchors:new Li.Name("dynamicAnchors"),vErrors:new Li.Name("vErrors"),errors:new Li.Name("errors"),this:new Li.Name("this"),self:new Li.Name("self"),scope:new Li.Name("scope"),json:new Li.Name("json"),jsonPos:new Li.Name("jsonPos"),jsonLen:new Li.Name("jsonLen"),jsonPart:new Li.Name("jsonPart")};C$.default=FIt});var SE=_(Mi=>{"use strict";Object.defineProperty(Mi,"__esModule",{value:!0});Mi.extendErrors=Mi.resetErrorsCount=Mi.reportExtraError=Mi.reportError=Mi.keyword$DataError=Mi.keywordError=void 0;var Rr=Vt(),uO=Wr(),ua=kd();Mi.keywordError={message:({keyword:t})=>(0,Rr.str)`must pass "${t}" keyword validation`};Mi.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,Rr.str)`"${t}" keyword must be ${e} ($data)`:(0,Rr.str)`"${t}" keyword is invalid ($data)`};function qIt(t,e=Mi.keywordError,r,n){let{it:s}=t,{gen:i,compositeRule:a,allErrors:o}=s,c=xye(t,e,r);n??(a||o)?yye(i,c):Aye(s,(0,Rr._)`[${c}]`)}Mi.reportError=qIt;function jIt(t,e=Mi.keywordError,r){let{it:n}=t,{gen:s,compositeRule:i,allErrors:a}=n,o=xye(t,e,r);yye(s,o),i||a||Aye(n,ua.default.vErrors)}Mi.reportExtraError=jIt;function QIt(t,e){t.assign(ua.default.errors,e),t.if((0,Rr._)`${ua.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,Rr._)`${ua.default.vErrors}.length`,e),()=>t.assign(ua.default.vErrors,null)))}Mi.resetErrorsCount=QIt;function HIt({gen:t,keyword:e,schemaValue:r,data:n,errsCount:s,it:i}){if(s===void 0)throw new Error("ajv implementation error");let a=t.name("err");t.forRange("i",s,ua.default.errors,o=>{t.const(a,(0,Rr._)`${ua.default.vErrors}[${o}]`),t.if((0,Rr._)`${a}.instancePath === undefined`,()=>t.assign((0,Rr._)`${a}.instancePath`,(0,Rr.strConcat)(ua.default.instancePath,i.errorPath))),t.assign((0,Rr._)`${a}.schemaPath`,(0,Rr.str)`${i.errSchemaPath}/${e}`),i.opts.verbose&&(t.assign((0,Rr._)`${a}.schema`,r),t.assign((0,Rr._)`${a}.data`,n))})}Mi.extendErrors=HIt;function yye(t,e){let r=t.const("err",e);t.if((0,Rr._)`${ua.default.vErrors} === null`,()=>t.assign(ua.default.vErrors,(0,Rr._)`[${r}]`),(0,Rr._)`${ua.default.vErrors}.push(${r})`),t.code((0,Rr._)`${ua.default.errors}++`)}function Aye(t,e){let{gen:r,validateName:n,schemaEnv:s}=t;s.$async?r.throw((0,Rr._)`new ${t.ValidationError}(${e})`):(r.assign((0,Rr._)`${n}.errors`,e),r.return(!1))}var Ym={keyword:new Rr.Name("keyword"),schemaPath:new Rr.Name("schemaPath"),params:new Rr.Name("params"),propertyName:new Rr.Name("propertyName"),message:new Rr.Name("message"),schema:new Rr.Name("schema"),parentSchema:new Rr.Name("parentSchema")};function xye(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,Rr._)`{}`:GIt(t,e,r)}function GIt(t,e,r={}){let{gen:n,it:s}=t,i=[zIt(s,r),KIt(t,r)];return VIt(t,e,i),n.object(...i)}function zIt({errorPath:t},{instancePath:e}){let r=e?(0,Rr.str)`${t}${(0,uO.getErrorPath)(e,uO.Type.Str)}`:t;return[ua.default.instancePath,(0,Rr.strConcat)(ua.default.instancePath,r)]}function KIt({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let s=n?e:(0,Rr.str)`${e}/${t}`;return r&&(s=(0,Rr.str)`${s}${(0,uO.getErrorPath)(r,uO.Type.Str)}`),[Ym.schemaPath,s]}function VIt(t,{params:e,message:r},n){let{keyword:s,data:i,schemaValue:a,it:o}=t,{opts:c,propertyName:u,topSchemaRef:l,schemaPath:d}=o;n.push([Ym.keyword,s],[Ym.params,typeof e=="function"?e(t):e||(0,Rr._)`{}`]),c.messages&&n.push([Ym.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([Ym.schema,a],[Ym.parentSchema,(0,Rr._)`${l}${d}`],[ua.default.data,i]),u&&n.push([Ym.propertyName,u])}});var _ye=_(CA=>{"use strict";Object.defineProperty(CA,"__esModule",{value:!0});CA.boolOrEmptySchema=CA.topBoolOrEmptySchema=void 0;var YIt=SE(),JIt=Vt(),XIt=kd(),ZIt={message:"boolean schema is false"};function eCt(t){let{gen:e,schema:r,validateName:n}=t;r===!1?bye(t,!1):typeof r=="object"&&r.$async===!0?e.return(XIt.default.data):(e.assign((0,JIt._)`${n}.errors`,null),e.return(!0))}CA.topBoolOrEmptySchema=eCt;function tCt(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),bye(t)):r.var(e,!0)}CA.boolOrEmptySchema=tCt;function bye(t,e){let{gen:r,data:n}=t,s={gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:t};(0,YIt.reportError)(s,ZIt,void 0,e)}});var T$=_(TA=>{"use strict";Object.defineProperty(TA,"__esModule",{value:!0});TA.getRules=TA.isJSONType=void 0;var rCt=["string","number","integer","boolean","null","object","array"],nCt=new Set(rCt);function sCt(t){return typeof t=="string"&&nCt.has(t)}TA.isJSONType=sCt;function iCt(){let t={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...t,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},t.number,t.string,t.array,t.object],post:{rules:[]},all:{},keywords:{}}}TA.getRules=iCt});var w$=_(Bp=>{"use strict";Object.defineProperty(Bp,"__esModule",{value:!0});Bp.shouldUseRule=Bp.shouldUseGroup=Bp.schemaHasRulesForType=void 0;function aCt({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&Eye(t,n)}Bp.schemaHasRulesForType=aCt;function Eye(t,e){return e.rules.some(r=>vye(t,r))}Bp.shouldUseGroup=Eye;function vye(t,e){var r;return t[e.keyword]!==void 0||((r=e.definition.implements)===null||r===void 0?void 0:r.some(n=>t[n]!==void 0))}Bp.shouldUseRule=vye});var IE=_(Wi=>{"use strict";Object.defineProperty(Wi,"__esModule",{value:!0});Wi.reportTypeError=Wi.checkDataTypes=Wi.checkDataType=Wi.coerceAndCheckDataType=Wi.getJSONTypes=Wi.getSchemaTypes=Wi.DataType=void 0;var oCt=T$(),cCt=w$(),uCt=SE(),jt=Vt(),Sye=Wr(),wA;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(wA||(Wi.DataType=wA={}));function lCt(t){let e=Iye(t.type);if(e.includes("null")){if(t.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!e.length&&t.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');t.nullable===!0&&e.push("null")}return e}Wi.getSchemaTypes=lCt;function Iye(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(oCt.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}Wi.getJSONTypes=Iye;function dCt(t,e){let{gen:r,data:n,opts:s}=t,i=fCt(e,s.coerceTypes),a=e.length>0&&!(i.length===0&&e.length===1&&(0,cCt.schemaHasRulesForType)(t,e[0]));if(a){let o=N$(e,n,s.strictNumbers,wA.Wrong);r.if(o,()=>{i.length?pCt(t,e,i):O$(t)})}return a}Wi.coerceAndCheckDataType=dCt;var Cye=new Set(["string","number","integer","boolean","null"]);function fCt(t,e){return e?t.filter(r=>Cye.has(r)||e==="array"&&r==="array"):[]}function pCt(t,e,r){let{gen:n,data:s,opts:i}=t,a=n.let("dataType",(0,jt._)`typeof ${s}`),o=n.let("coerced",(0,jt._)`undefined`);i.coerceTypes==="array"&&n.if((0,jt._)`${a} == 'object' && Array.isArray(${s}) && ${s}.length == 1`,()=>n.assign(s,(0,jt._)`${s}[0]`).assign(a,(0,jt._)`typeof ${s}`).if(N$(e,s,i.strictNumbers),()=>n.assign(o,s))),n.if((0,jt._)`${o} !== undefined`);for(let u of r)(Cye.has(u)||u==="array"&&i.coerceTypes==="array")&&c(u);n.else(),O$(t),n.endIf(),n.if((0,jt._)`${o} !== undefined`,()=>{n.assign(s,o),mCt(t,o)});function c(u){switch(u){case"string":n.elseIf((0,jt._)`${a} == "number" || ${a} == "boolean"`).assign(o,(0,jt._)`"" + ${s}`).elseIf((0,jt._)`${s} === null`).assign(o,(0,jt._)`""`);return;case"number":n.elseIf((0,jt._)`${a} == "boolean" || ${s} === null || (${a} == "string" && ${s} && ${s} == +${s})`).assign(o,(0,jt._)`+${s}`);return;case"integer":n.elseIf((0,jt._)`${a} === "boolean" || ${s} === null || (${a} === "string" && ${s} && ${s} == +${s} && !(${s} % 1))`).assign(o,(0,jt._)`+${s}`);return;case"boolean":n.elseIf((0,jt._)`${s} === "false" || ${s} === 0 || ${s} === null`).assign(o,!1).elseIf((0,jt._)`${s} === "true" || ${s} === 1`).assign(o,!0);return;case"null":n.elseIf((0,jt._)`${s} === "" || ${s} === 0 || ${s} === false`),n.assign(o,null);return;case"array":n.elseIf((0,jt._)`${a} === "string" || ${a} === "number" - || ${a} === "boolean" || ${s} === null`).assign(o,(0,jt._)`[${s}]`)}}}function i1t({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,jt._)`${e} !== undefined`,()=>t.assign((0,jt._)`${e}[${r}]`,n))}function T8(t,e,r,n=VA.Correct){let s=n===VA.Correct?jt.operators.EQ:jt.operators.NEQ,i;switch(t){case"null":return(0,jt._)`${e} ${s} null`;case"array":i=(0,jt._)`Array.isArray(${e})`;break;case"object":i=(0,jt._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":i=a((0,jt._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":i=a();break;default:return(0,jt._)`typeof ${e} ${s} ${t}`}return n===VA.Correct?i:(0,jt.not)(i);function a(o=jt.nil){return(0,jt.and)((0,jt._)`typeof ${e} == "number"`,o,r?(0,jt._)`isFinite(${e})`:jt.nil)}}Ri.checkDataType=T8;function w8(t,e,r,n){if(t.length===1)return T8(t[0],e,r,n);let s,i=(0,Pme.toHash)(t);if(i.array&&i.object){let a=(0,jt._)`typeof ${e} != "object"`;s=i.null?a:(0,jt._)`!${e} || ${a}`,delete i.null,delete i.array,delete i.object}else s=jt.nil;i.number&&delete i.integer;for(let a in i)s=(0,jt.and)(s,T8(a,e,r,n));return s}Ri.checkDataTypes=w8;var a1t={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,jt._)`{type: ${t}}`:(0,jt._)`{type: ${e}}`};function R8(t){let e=o1t(t);(0,e1t.reportError)(e,a1t)}Ri.reportTypeError=R8;function o1t(t){let{gen:e,data:r,schema:n}=t,s=(0,Pme.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:s,schemaValue:s,parentSchema:n,params:{},it:t}}});var Bme=E(FR=>{"use strict";Object.defineProperty(FR,"__esModule",{value:!0});FR.assignDefaults=void 0;var zA=zt(),c1t=Lr();function u1t(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let s in r)Lme(t,s,r[s].default);else e==="array"&&Array.isArray(n)&&n.forEach((s,i)=>Lme(t,i,s.default))}FR.assignDefaults=u1t;function Lme(t,e,r){let{gen:n,compositeRule:s,data:i,opts:a}=t;if(r===void 0)return;let o=(0,zA._)`${i}${(0,zA.getProperty)(e)}`;if(s){(0,c1t.checkStrictMode)(t,`default is ignored for: ${o}`);return}let c=(0,zA._)`${o} === undefined`;a.useDefaults==="empty"&&(c=(0,zA._)`${c} || ${o} === null || ${o} === ""`),n.if(c,(0,zA._)`${o} = ${(0,zA.stringify)(r)}`)}});var Qo=E(Zr=>{"use strict";Object.defineProperty(Zr,"__esModule",{value:!0});Zr.validateUnion=Zr.validateArray=Zr.usePattern=Zr.callValidateCode=Zr.schemaProperties=Zr.allSchemaProperties=Zr.noPropertyInData=Zr.propertyInData=Zr.isOwnProperty=Zr.hasPropFunc=Zr.reportMissingProp=Zr.checkMissingProp=Zr.checkReportMissingProp=void 0;var Rn=zt(),N8=Lr(),gp=fd(),l1t=Lr();function d1t(t,e){let{gen:r,data:n,it:s}=t;r.if(P8(r,n,e,s.opts.ownProperties),()=>{t.setParams({missingProperty:(0,Rn._)`${e}`},!0),t.error()})}Zr.checkReportMissingProp=d1t;function f1t({gen:t,data:e,it:{opts:r}},n,s){return(0,Rn.or)(...n.map(i=>(0,Rn.and)(P8(t,e,i,r.ownProperties),(0,Rn._)`${s} = ${i}`)))}Zr.checkMissingProp=f1t;function p1t(t,e){t.setParams({missingProperty:e},!0),t.error()}Zr.reportMissingProp=p1t;function Mme(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,Rn._)`Object.prototype.hasOwnProperty`})}Zr.hasPropFunc=Mme;function O8(t,e,r){return(0,Rn._)`${Mme(t)}.call(${e}, ${r})`}Zr.isOwnProperty=O8;function m1t(t,e,r,n){let s=(0,Rn._)`${e}${(0,Rn.getProperty)(r)} !== undefined`;return n?(0,Rn._)`${s} && ${O8(t,e,r)}`:s}Zr.propertyInData=m1t;function P8(t,e,r,n){let s=(0,Rn._)`${e}${(0,Rn.getProperty)(r)} === undefined`;return n?(0,Rn.or)(s,(0,Rn.not)(O8(t,e,r))):s}Zr.noPropertyInData=P8;function Wme(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}Zr.allSchemaProperties=Wme;function h1t(t,e){return Wme(e).filter(r=>!(0,N8.alwaysValidSchema)(t,e[r]))}Zr.schemaProperties=h1t;function g1t({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:s,errorPath:i},it:a},o,c,u){let l=u?(0,Rn._)`${t}, ${e}, ${n}${s}`:e,d=[[gp.default.instancePath,(0,Rn.strConcat)(gp.default.instancePath,i)],[gp.default.parentData,a.parentData],[gp.default.parentDataProperty,a.parentDataProperty],[gp.default.rootData,gp.default.rootData]];a.opts.dynamicRef&&d.push([gp.default.dynamicAnchors,gp.default.dynamicAnchors]);let f=(0,Rn._)`${l}, ${r.object(...d)}`;return c!==Rn.nil?(0,Rn._)`${o}.call(${c}, ${f})`:(0,Rn._)`${o}(${f})`}Zr.callValidateCode=g1t;var A1t=(0,Rn._)`new RegExp`;function y1t({gen:t,it:{opts:e}},r){let n=e.unicodeRegExp?"u":"",{regExp:s}=e.code,i=s(r,n);return t.scopeValue("pattern",{key:i.toString(),ref:i,code:(0,Rn._)`${s.code==="new RegExp"?A1t:(0,l1t.useFunc)(t,s)}(${r}, ${n})`})}Zr.usePattern=y1t;function x1t(t){let{gen:e,data:r,keyword:n,it:s}=t,i=e.name("valid");if(s.allErrors){let o=e.let("valid",!0);return a(()=>e.assign(o,!1)),o}return e.var(i,!0),a(()=>e.break()),i;function a(o){let c=e.const("len",(0,Rn._)`${r}.length`);e.forRange("i",0,c,u=>{t.subschema({keyword:n,dataProp:u,dataPropType:N8.Type.Num},i),e.if((0,Rn.not)(i),o)})}}Zr.validateArray=x1t;function b1t(t){let{gen:e,schema:r,keyword:n,it:s}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(c=>(0,N8.alwaysValidSchema)(s,c))&&!s.opts.unevaluated)return;let a=e.let("valid",!1),o=e.name("_valid");e.block(()=>r.forEach((c,u)=>{let l=t.subschema({keyword:n,schemaProp:u,compositeRule:!0},o);e.assign(a,(0,Rn._)`${a} || ${o}`),t.mergeValidEvaluated(l,o)||e.if((0,Rn.not)(a))})),t.result(a,()=>t.reset(),()=>t.error(!0))}Zr.validateUnion=b1t});var Ume=E(Fu=>{"use strict";Object.defineProperty(Fu,"__esModule",{value:!0});Fu.validateKeywordUsage=Fu.validSchemaType=Fu.funcKeywordCode=Fu.macroKeywordCode=void 0;var ta=zt(),wm=fd(),E1t=Qo(),_1t=y1();function S1t(t,e){let{gen:r,keyword:n,schema:s,parentSchema:i,it:a}=t,o=e.macro.call(a.self,s,i,a),c=Fme(r,n,o);a.opts.validateSchema!==!1&&a.self.validateSchema(o,!0);let u=r.name("valid");t.subschema({schema:o,schemaPath:ta.nil,errSchemaPath:`${a.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}Fu.macroKeywordCode=S1t;function v1t(t,e){var r;let{gen:n,keyword:s,schema:i,parentSchema:a,$data:o,it:c}=t;I1t(c,e);let u=!o&&e.compile?e.compile.call(c.self,i,a,c):e.validate,l=Fme(n,s,u),d=n.let("valid");t.block$data(d,f),t.ok((r=e.valid)!==null&&r!==void 0?r:d);function f(){if(e.errors===!1)h(),e.modifying&&$me(t),A(()=>t.error());else{let g=e.async?p():m();e.modifying&&$me(t),A(()=>C1t(t,g))}}function p(){let g=n.let("ruleErrs",null);return n.try(()=>h((0,ta._)`await `),b=>n.assign(d,!1).if((0,ta._)`${b} instanceof ${c.ValidationError}`,()=>n.assign(g,(0,ta._)`${b}.errors`),()=>n.throw(b))),g}function m(){let g=(0,ta._)`${l}.errors`;return n.assign(g,null),h(ta.nil),g}function h(g=e.async?(0,ta._)`await `:ta.nil){let b=c.opts.passContext?wm.default.this:wm.default.self,y=!("compile"in e&&!o||e.schema===!1);n.assign(d,(0,ta._)`${g}${(0,E1t.callValidateCode)(t,l,b,y)}`,e.modifying)}function A(g){var b;n.if((0,ta.not)((b=e.valid)!==null&&b!==void 0?b:d),g)}}Fu.funcKeywordCode=v1t;function $me(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,ta._)`${n.parentData}[${n.parentDataProperty}]`))}function C1t(t,e){let{gen:r}=t;r.if((0,ta._)`Array.isArray(${e})`,()=>{r.assign(wm.default.vErrors,(0,ta._)`${wm.default.vErrors} === null ? ${e} : ${wm.default.vErrors}.concat(${e})`).assign(wm.default.errors,(0,ta._)`${wm.default.vErrors}.length`),(0,_1t.extendErrors)(t)},()=>t.error())}function I1t({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function Fme(t,e,r){if(r===void 0)throw new Error(`keyword "${e}" failed to compile`);return t.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,ta.stringify)(r)})}function T1t(t,e,r=!1){return!e.length||e.some(n=>n==="array"?Array.isArray(t):n==="object"?t&&typeof t=="object"&&!Array.isArray(t):typeof t==n||r&&typeof t>"u")}Fu.validSchemaType=T1t;function w1t({schema:t,opts:e,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(t,o)))throw new Error(`parent schema must have dependencies of ${i}: ${a.join(",")}`);if(s.validateSchema&&!s.validateSchema(t[i])){let c=`keyword "${i}" value is invalid at path "${n}": `+r.errorsText(s.validateSchema.errors);if(e.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}Fu.validateKeywordUsage=w1t});var jme=E(Ap=>{"use strict";Object.defineProperty(Ap,"__esModule",{value:!0});Ap.extendSubschemaMode=Ap.extendSubschemaData=Ap.getSubschema=void 0;var Uu=zt(),qme=Lr();function R1t(t,{keyword:e,schemaProp:r,schema:n,schemaPath:s,errSchemaPath:i,topSchemaRef:a}){if(e!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(e!==void 0){let o=t.schema[e];return r===void 0?{schema:o,schemaPath:(0,Uu._)`${t.schemaPath}${(0,Uu.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:o[r],schemaPath:(0,Uu._)`${t.schemaPath}${(0,Uu.getProperty)(e)}${(0,Uu.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,qme.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')}Ap.getSubschema=R1t;function N1t(t,e,{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}=e;if(r!==void 0){let{errorPath:u,dataPathArr:l,opts:d}=e,f=o.let("data",(0,Uu._)`${e.data}${(0,Uu.getProperty)(r)}`,!0);c(f),t.errorPath=(0,Uu.str)`${u}${(0,qme.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,Uu._)`${r}`,t.dataPathArr=[...l,t.parentDataProperty]}if(s!==void 0){let u=s instanceof Uu.Name?s:o.let("data",s,!0);c(u),a!==void 0&&(t.propertyName=a)}i&&(t.dataTypes=i);function c(u){t.data=u,t.dataLevel=e.dataLevel+1,t.dataTypes=[],e.definedProperties=new Set,t.parentData=e.data,t.dataNames=[...e.dataNames,u]}}Ap.extendSubschemaData=N1t;function O1t(t,{jtdDiscriminator:e,jtdMetadata:r,compositeRule:n,createErrors:s,allErrors:i}){n!==void 0&&(t.compositeRule=n),s!==void 0&&(t.createErrors=s),i!==void 0&&(t.allErrors=i),t.jtdDiscriminator=e,t.jtdMetadata=r}Ap.extendSubschemaMode=O1t});var Go=E((FPr,Hme)=>{"use strict";Hme.exports=function t(e,r){if(e===r)return!0;if(e&&r&&typeof e=="object"&&typeof r=="object"){if(e.constructor!==r.constructor)return!1;var n,s,i;if(Array.isArray(e)){if(n=e.length,n!=r.length)return!1;for(s=n;s--!==0;)if(!t(e[s],r[s]))return!1;return!0}if(e.constructor===RegExp)return e.source===r.source&&e.flags===r.flags;if(e.valueOf!==Object.prototype.valueOf)return e.valueOf()===r.valueOf();if(e.toString!==Object.prototype.toString)return e.toString()===r.toString();if(i=Object.keys(e),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(!t(e[a],r[a]))return!1}return!0}return e!==e&&r!==r}});var Gme=E((UPr,Qme)=>{"use strict";var yp=Qme.exports=function(t,e,r){typeof e=="function"&&(r=e,e={}),r=e.cb||r;var n=typeof r=="function"?r:r.pre||function(){},s=r.post||function(){};UR(e,n,s,t,"",t)};yp.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};yp.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};yp.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};yp.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 UR(t,e,r,n,s,i,a,o,c,u){if(n&&typeof n=="object"&&!Array.isArray(n)){e(n,s,i,a,o,c,u);for(var l in n){var d=n[l];if(Array.isArray(d)){if(l in yp.arrayKeywords)for(var f=0;f{"use strict";Object.defineProperty(ka,"__esModule",{value:!0});ka.getSchemaRefs=ka.resolveUrl=ka.normalizeId=ka._getFullPath=ka.getFullPath=ka.inlineRef=void 0;var D1t=Lr(),k1t=Go(),L1t=Gme(),B1t=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function M1t(t,e=!0){return typeof t=="boolean"?!0:e===!0?!D8(t):e?Vme(t)<=e:!1}ka.inlineRef=M1t;var W1t=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function D8(t){for(let e in t){if(W1t.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(D8)||typeof r=="object"&&D8(r))return!0}return!1}function Vme(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!B1t.has(r)&&(typeof t[r]=="object"&&(0,D1t.eachItem)(t[r],n=>e+=Vme(n)),e===1/0))return 1/0}return e}function zme(t,e="",r){r!==!1&&(e=KA(e));let n=t.parse(e);return Kme(t,n)}ka.getFullPath=zme;function Kme(t,e){return t.serialize(e).split("#")[0]+"#"}ka._getFullPath=Kme;var $1t=/#\/?$/;function KA(t){return t?t.replace($1t,""):""}ka.normalizeId=KA;function F1t(t,e,r){return r=KA(r),t.resolve(e,r)}ka.resolveUrl=F1t;var U1t=/^[a-z_][-a-z0-9._]*$/i;function q1t(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,s=KA(t[r]||e),i={"":s},a=zme(n,s,!1),o={},c=new Set;return L1t(t,{allKeys:!0},(d,f,p,m)=>{if(m===void 0)return;let h=a+f,A=i[m];typeof d[r]=="string"&&(A=g.call(this,d[r])),b.call(this,d.$anchor),b.call(this,d.$dynamicAnchor),i[f]=A;function g(y){let x=this.opts.uriResolver.resolve;if(y=KA(A?x(A,y):y),c.has(y))throw l(y);c.add(y);let v=this.refs[y];return typeof v=="string"&&(v=this.refs[v]),typeof v=="object"?u(d,v.schema,y):y!==KA(h)&&(y[0]==="#"?(u(d,o[y],y),o[y]=d):this.refs[y]=h),y}function b(y){if(typeof y=="string"){if(!U1t.test(y))throw new Error(`invalid anchor "${y}"`);g.call(this,`#${y}`)}}}),o;function u(d,f,p){if(f!==void 0&&!k1t(d,f))throw l(p)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}ka.getSchemaRefs=q1t});var S1=E(xp=>{"use strict";Object.defineProperty(xp,"__esModule",{value:!0});xp.getData=xp.KeywordCxt=xp.validateFunctionCode=void 0;var ehe=Rme(),Yme=x1(),L8=I8(),qR=x1(),j1t=Bme(),_1=Ume(),k8=jme(),it=zt(),Rt=fd(),H1t=b1(),pd=Lr(),E1=y1();function Q1t(t){if(nhe(t)&&(she(t),rhe(t))){z1t(t);return}the(t,()=>(0,ehe.topBoolOrEmptySchema)(t))}xp.validateFunctionCode=Q1t;function the({gen:t,validateName:e,schema:r,schemaEnv:n,opts:s},i){s.code.es5?t.func(e,(0,it._)`${Rt.default.data}, ${Rt.default.valCxt}`,n.$async,()=>{t.code((0,it._)`"use strict"; ${Jme(r,s)}`),V1t(t,s),t.code(i)}):t.func(e,(0,it._)`${Rt.default.data}, ${G1t(s)}`,n.$async,()=>t.code(Jme(r,s)).code(i))}function G1t(t){return(0,it._)`{${Rt.default.instancePath}="", ${Rt.default.parentData}, ${Rt.default.parentDataProperty}, ${Rt.default.rootData}=${Rt.default.data}${t.dynamicRef?(0,it._)`, ${Rt.default.dynamicAnchors}={}`:it.nil}}={}`}function V1t(t,e){t.if(Rt.default.valCxt,()=>{t.var(Rt.default.instancePath,(0,it._)`${Rt.default.valCxt}.${Rt.default.instancePath}`),t.var(Rt.default.parentData,(0,it._)`${Rt.default.valCxt}.${Rt.default.parentData}`),t.var(Rt.default.parentDataProperty,(0,it._)`${Rt.default.valCxt}.${Rt.default.parentDataProperty}`),t.var(Rt.default.rootData,(0,it._)`${Rt.default.valCxt}.${Rt.default.rootData}`),e.dynamicRef&&t.var(Rt.default.dynamicAnchors,(0,it._)`${Rt.default.valCxt}.${Rt.default.dynamicAnchors}`)},()=>{t.var(Rt.default.instancePath,(0,it._)`""`),t.var(Rt.default.parentData,(0,it._)`undefined`),t.var(Rt.default.parentDataProperty,(0,it._)`undefined`),t.var(Rt.default.rootData,Rt.default.data),e.dynamicRef&&t.var(Rt.default.dynamicAnchors,(0,it._)`{}`)})}function z1t(t){let{schema:e,opts:r,gen:n}=t;the(t,()=>{r.$comment&&e.$comment&&ahe(t),Z1t(t),n.let(Rt.default.vErrors,null),n.let(Rt.default.errors,0),r.unevaluated&&K1t(t),ihe(t),r_t(t)})}function K1t(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,it._)`${r}.evaluated`),e.if((0,it._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,it._)`${t.evaluated}.props`,(0,it._)`undefined`)),e.if((0,it._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,it._)`${t.evaluated}.items`,(0,it._)`undefined`))}function Jme(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,it._)`/*# sourceURL=${r} */`:it.nil}function Y1t(t,e){if(nhe(t)&&(she(t),rhe(t))){J1t(t,e);return}(0,ehe.boolOrEmptySchema)(t,e)}function rhe({schema:t,self:e}){if(typeof t=="boolean")return!t;for(let r in t)if(e.RULES.all[r])return!0;return!1}function nhe(t){return typeof t.schema!="boolean"}function J1t(t,e){let{schema:r,gen:n,opts:s}=t;s.$comment&&r.$comment&&ahe(t),e_t(t),t_t(t);let i=n.const("_errs",Rt.default.errors);ihe(t,i),n.var(e,(0,it._)`${i} === ${Rt.default.errors}`)}function she(t){(0,pd.checkUnknownRules)(t),X1t(t)}function ihe(t,e){if(t.opts.jtd)return Xme(t,[],!1,e);let r=(0,Yme.getSchemaTypes)(t.schema),n=(0,Yme.coerceAndCheckDataType)(t,r);Xme(t,r,!n,e)}function X1t(t){let{schema:e,errSchemaPath:r,opts:n,self:s}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,pd.schemaHasRulesButRef)(e,s.RULES)&&s.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function Z1t(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,pd.checkStrictMode)(t,"default is ignored in the schema root")}function e_t(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,H1t.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function t_t(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function ahe({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:s}){let i=r.$comment;if(s.$comment===!0)t.code((0,it._)`${Rt.default.self}.logger.log(${i})`);else if(typeof s.$comment=="function"){let a=(0,it.str)`${n}/$comment`,o=t.scopeValue("root",{ref:e.root});t.code((0,it._)`${Rt.default.self}.opts.$comment(${i}, ${a}, ${o}.schema)`)}}function r_t(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:s,opts:i}=t;r.$async?e.if((0,it._)`${Rt.default.errors} === 0`,()=>e.return(Rt.default.data),()=>e.throw((0,it._)`new ${s}(${Rt.default.vErrors})`)):(e.assign((0,it._)`${n}.errors`,Rt.default.vErrors),i.unevaluated&&n_t(t),e.return((0,it._)`${Rt.default.errors} === 0`))}function n_t({gen:t,evaluated:e,props:r,items:n}){r instanceof it.Name&&t.assign((0,it._)`${e}.props`,r),n instanceof it.Name&&t.assign((0,it._)`${e}.items`,n)}function Xme(t,e,r,n){let{gen:s,schema:i,data:a,allErrors:o,opts:c,self:u}=t,{RULES:l}=u;if(i.$ref&&(c.ignoreKeywordsWithRef||!(0,pd.schemaHasRulesButRef)(i,l))){s.block(()=>che(t,"$ref",l.all.$ref.definition));return}c.jtd||s_t(t,e),s.block(()=>{for(let f of l.rules)d(f);d(l.post)});function d(f){(0,L8.shouldUseGroup)(i,f)&&(f.type?(s.if((0,qR.checkDataType)(f.type,a,c.strictNumbers)),Zme(t,f),e.length===1&&e[0]===f.type&&r&&(s.else(),(0,qR.reportTypeError)(t)),s.endIf()):Zme(t,f),o||s.if((0,it._)`${Rt.default.errors} === ${n||0}`))}}function Zme(t,e){let{gen:r,schema:n,opts:{useDefaults:s}}=t;s&&(0,j1t.assignDefaults)(t,e.type),r.block(()=>{for(let i of e.rules)(0,L8.shouldUseRule)(n,i)&&che(t,i.keyword,i.definition,e.type)})}function s_t(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(i_t(t,e),t.opts.allowUnionTypes||a_t(t,e),o_t(t,t.dataTypes))}function i_t(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{ohe(t.dataTypes,r)||B8(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),u_t(t,e)}}function a_t(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&B8(t,"use allowUnionTypes to allow union type keyword")}function o_t(t,e){let r=t.self.RULES.all;for(let n in r){let s=r[n];if(typeof s=="object"&&(0,L8.shouldUseRule)(t.schema,s)){let{type:i}=s.definition;i.length&&!i.some(a=>c_t(e,a))&&B8(t,`missing type "${i.join(",")}" for keyword "${n}"`)}}}function c_t(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function ohe(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function u_t(t,e){let r=[];for(let n of t.dataTypes)ohe(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function B8(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,pd.checkStrictMode)(t,e,t.opts.strictTypes)}var jR=class{constructor(e,r,n){if((0,_1.validateKeywordUsage)(e,r,n),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=n,this.data=e.data,this.schema=e.schema[n],this.$data=r.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,pd.schemaRefOrVal)(e,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=e.schema,this.params={},this.it=e,this.def=r,this.$data)this.schemaCode=e.gen.const("vSchema",uhe(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,_1.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=e.gen.const("_errs",Rt.default.errors))}result(e,r,n){this.failResult((0,it.not)(e),r,n)}failResult(e,r,n){this.gen.if(e),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(e,r){this.failResult((0,it.not)(e),void 0,r)}fail(e){if(e===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(e),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(e){if(!this.$data)return this.fail(e);let{schemaCode:r}=this;this.fail((0,it._)`${r} !== undefined && (${(0,it.or)(this.invalid$data(),e)})`)}error(e,r,n){if(r){this.setParams(r),this._error(e,n),this.setParams({});return}this._error(e,n)}_error(e,r){(e?E1.reportExtraError:E1.reportError)(this,this.def.error,r)}$dataError(){(0,E1.reportError)(this,this.def.$dataError||E1.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,E1.resetErrorsCount)(this.gen,this.errsCount)}ok(e){this.allErrors||this.gen.if(e)}setParams(e,r){r?Object.assign(this.params,e):this.params=e}block$data(e,r,n=it.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=it.nil,r=it.nil){if(!this.$data)return;let{gen:n,schemaCode:s,schemaType:i,def:a}=this;n.if((0,it.or)((0,it._)`${s} === undefined`,r)),e!==it.nil&&n.assign(e,!0),(i.length||a.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==it.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:s,it:i}=this;return(0,it.or)(a(),o());function a(){if(n.length){if(!(r instanceof it.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,it._)`${(0,qR.checkDataTypes)(c,r,i.opts.strictNumbers,qR.DataType.Wrong)}`}return it.nil}function o(){if(s.validateSchema){let c=e.scopeValue("validate$data",{ref:s.validateSchema});return(0,it._)`!${c}(${r})`}return it.nil}}subschema(e,r){let n=(0,k8.getSubschema)(this.it,e);(0,k8.extendSubschemaData)(n,this.it,e),(0,k8.extendSubschemaMode)(n,e);let s={...this.it,...n,items:void 0,props:void 0};return Y1t(s,r),s}mergeEvaluated(e,r){let{it:n,gen:s}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=pd.mergeEvaluated.props(s,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=pd.mergeEvaluated.items(s,e.items,n.items,r)))}mergeValidEvaluated(e,r){let{it:n,gen:s}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return s.if(r,()=>this.mergeEvaluated(e,it.Name)),!0}};xp.KeywordCxt=jR;function che(t,e,r,n){let s=new jR(t,r,e);"code"in r?r.code(s,n):s.$data&&r.validate?(0,_1.funcKeywordCode)(s,r):"macro"in r?(0,_1.macroKeywordCode)(s,r):(r.compile||r.validate)&&(0,_1.funcKeywordCode)(s,r)}var l_t=/^\/(?:[^~]|~0|~1)*$/,d_t=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function uhe(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let s,i;if(t==="")return Rt.default.rootData;if(t[0]==="/"){if(!l_t.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);s=t,i=Rt.default.rootData}else{let u=d_t.exec(t);if(!u)throw new Error(`Invalid JSON-pointer: ${t}`);let l=+u[1];if(s=u[2],s==="#"){if(l>=e)throw new Error(c("property/index",l));return n[e-l]}if(l>e)throw new Error(c("data",l));if(i=r[e-l],!s)return i}let a=i,o=s.split("/");for(let u of o)u&&(i=(0,it._)`${i}${(0,it.getProperty)((0,pd.unescapeJsonPointer)(u))}`,a=(0,it._)`${a} && ${i}`);return a;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${e}`}}xp.getData=uhe});var HR=E(W8=>{"use strict";Object.defineProperty(W8,"__esModule",{value:!0});var M8=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};W8.default=M8});var v1=E(U8=>{"use strict";Object.defineProperty(U8,"__esModule",{value:!0});var $8=b1(),F8=class extends Error{constructor(e,r,n,s){super(s||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,$8.resolveUrl)(e,r,n),this.missingSchema=(0,$8.normalizeId)((0,$8.getFullPath)(e,this.missingRef))}};U8.default=F8});var GR=E(Vo=>{"use strict";Object.defineProperty(Vo,"__esModule",{value:!0});Vo.resolveSchema=Vo.getCompilingSchema=Vo.resolveRef=Vo.compileSchema=Vo.SchemaEnv=void 0;var Fc=zt(),f_t=HR(),Rm=fd(),Uc=b1(),lhe=Lr(),p_t=S1(),YA=class{constructor(e){var r;this.refs={},this.dynamicAnchors={};let n;typeof e.schema=="object"&&(n=e.schema),this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=(r=e.baseId)!==null&&r!==void 0?r:(0,Uc.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};Vo.SchemaEnv=YA;function j8(t){let e=dhe.call(this,t);if(e)return e;let r=(0,Uc.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:s}=this.opts.code,{ownProperties:i}=this.opts,a=new Fc.CodeGen(this.scope,{es5:n,lines:s,ownProperties:i}),o;t.$async&&(o=a.scopeValue("Error",{ref:f_t.default,code:(0,Fc._)`require("ajv/dist/runtime/validation_error").default`}));let c=a.scopeName("validate");t.validateName=c;let u={gen:a,allErrors:this.opts.allErrors,data:Rm.default.data,parentData:Rm.default.parentData,parentDataProperty:Rm.default.parentDataProperty,dataNames:[Rm.default.data],dataPathArr:[Fc.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:a.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,Fc.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:o,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:Fc.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,Fc._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,p_t.validateFunctionCode)(u),a.optimize(this.opts.code.optimize);let d=a.toString();l=`${a.scopeRefs(Rm.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,t));let p=new Function(`${Rm.default.self}`,`${Rm.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:p}),p.errors=null,p.schema=t.schema,p.schemaEnv=t,t.$async&&(p.$async=!0),this.opts.code.source===!0&&(p.source={validateName:c,validateCode:d,scopeValues:a._values}),this.opts.unevaluated){let{props:m,items:h}=u;p.evaluated={props:m instanceof Fc.Name?void 0:m,items:h instanceof Fc.Name?void 0:h,dynamicProps:m instanceof Fc.Name,dynamicItems:h instanceof Fc.Name},p.source&&(p.source.evaluated=(0,Fc.stringify)(p.evaluated))}return t.validate=p,t}catch(d){throw delete t.validate,delete t.validateName,l&&this.logger.error("Error compiling schema, function code:",l),d}finally{this._compilations.delete(t)}}Vo.compileSchema=j8;function m_t(t,e,r){var n;r=(0,Uc.resolveUrl)(this.opts.uriResolver,e,r);let s=t.refs[r];if(s)return s;let i=A_t.call(this,t,r);if(i===void 0){let a=(n=t.localRefs)===null||n===void 0?void 0:n[r],{schemaId:o}=this.opts;a&&(i=new YA({schema:a,schemaId:o,root:t,baseId:e}))}if(i!==void 0)return t.refs[r]=h_t.call(this,i)}Vo.resolveRef=m_t;function h_t(t){return(0,Uc.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:j8.call(this,t)}function dhe(t){for(let e of this._compilations)if(g_t(e,t))return e}Vo.getCompilingSchema=dhe;function g_t(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function A_t(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||QR.call(this,t,e)}function QR(t,e){let r=this.opts.uriResolver.parse(e),n=(0,Uc._getFullPath)(this.opts.uriResolver,r),s=(0,Uc.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===s)return q8.call(this,r,t);let i=(0,Uc.normalizeId)(n),a=this.refs[i]||this.schemas[i];if(typeof a=="string"){let o=QR.call(this,t,a);return typeof o?.schema!="object"?void 0:q8.call(this,r,o)}if(typeof a?.schema=="object"){if(a.validate||j8.call(this,a),i===(0,Uc.normalizeId)(e)){let{schema:o}=a,{schemaId:c}=this.opts,u=o[c];return u&&(s=(0,Uc.resolveUrl)(this.opts.uriResolver,s,u)),new YA({schema:o,schemaId:c,root:t,baseId:s})}return q8.call(this,r,a)}}Vo.resolveSchema=QR;var y_t=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function q8(t,{baseId:e,schema:r,root:n}){var s;if(((s=t.fragment)===null||s===void 0?void 0:s[0])!=="/")return;for(let o of t.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let c=r[(0,lhe.unescapeFragment)(o)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!y_t.has(o)&&u&&(e=(0,Uc.resolveUrl)(this.opts.uriResolver,e,u))}let i;if(typeof r!="boolean"&&r.$ref&&!(0,lhe.schemaHasRulesButRef)(r,this.RULES)){let o=(0,Uc.resolveUrl)(this.opts.uriResolver,e,r.$ref);i=QR.call(this,n,o)}let{schemaId:a}=this.opts;if(i=i||new YA({schema:r,schemaId:a,root:n,baseId:e}),i.schema!==i.root.schema)return i}});var fhe=E((VPr,x_t)=>{x_t.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 Q8=E((zPr,ghe)=>{"use strict";var b_t=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),mhe=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 H8(t){let e="",r=0,n=0;for(n=0;n=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";e+=t[n];break}for(n+=1;n=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";e+=t[n]}return e}var E_t=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function phe(t){return t.length=0,!0}function __t(t,e,r){if(t.length){let n=H8(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function S_t(t){let e=0,r={error:!1,address:"",zone:""},n=[],s=[],i=!1,a=!1,o=__t;for(let c=0;c7){r.error=!0;break}c>0&&t[c-1]===":"&&(i=!0),n.push(":");continue}else if(u==="%"){if(!o(s,n,r))break;o=phe}else{s.push(u);continue}}return s.length&&(o===phe?r.zone=s.join(""):a?n.push(s.join("")):n.push(H8(s))),r.address=n.join(""),r}function hhe(t){if(v_t(t,":")<2)return{host:t,isIPV6:!1};let e=S_t(t);if(e.error)return{host:t,isIPV6:!1};{let r=e.address,n=e.address;return e.zone&&(r+="%"+e.zone,n+="%25"+e.zone),{host:r,isIPV6:!0,escapedHost:n}}}function v_t(t,e){let r=0;for(let n=0;n{"use strict";var{isUUID:w_t}=Q8(),R_t=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,N_t=["http","https","ws","wss","urn","urn:uuid"];function O_t(t){return N_t.indexOf(t)!==-1}function G8(t){return t.secure===!0?!0:t.secure===!1?!1:t.scheme?t.scheme.length===3&&(t.scheme[0]==="w"||t.scheme[0]==="W")&&(t.scheme[1]==="s"||t.scheme[1]==="S")&&(t.scheme[2]==="s"||t.scheme[2]==="S"):!1}function Ahe(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function yhe(t){let e=String(t.scheme).toLowerCase()==="https";return(t.port===(e?443:80)||t.port==="")&&(t.port=void 0),t.path||(t.path="/"),t}function P_t(t){return t.secure=G8(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function D_t(t){if((t.port===(G8(t)?443:80)||t.port==="")&&(t.port=void 0),typeof t.secure=="boolean"&&(t.scheme=t.secure?"wss":"ws",t.secure=void 0),t.resourceName){let[e,r]=t.resourceName.split("?");t.path=e&&e!=="/"?e:void 0,t.query=r,t.resourceName=void 0}return t.fragment=void 0,t}function k_t(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(R_t);if(r){let n=e.scheme||t.scheme||"urn";t.nid=r[1].toLowerCase(),t.nss=r[2];let s=`${n}:${e.nid||t.nid}`,i=V8(s);t.path=void 0,i&&(t=i.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function L_t(t,e){if(t.nid===void 0)throw new Error("URN without nid cannot be serialized");let r=e.scheme||t.scheme||"urn",n=t.nid.toLowerCase(),s=`${r}:${e.nid||n}`,i=V8(s);i&&(t=i.serialize(t,e));let a=t,o=t.nss;return a.path=`${n||e.nid}:${o}`,e.skipEscape=!0,a}function B_t(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!w_t(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function M_t(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var xhe={scheme:"http",domainHost:!0,parse:Ahe,serialize:yhe},W_t={scheme:"https",domainHost:xhe.domainHost,parse:Ahe,serialize:yhe},VR={scheme:"ws",domainHost:!0,parse:P_t,serialize:D_t},$_t={scheme:"wss",domainHost:VR.domainHost,parse:VR.parse,serialize:VR.serialize},F_t={scheme:"urn",parse:k_t,serialize:L_t,skipNormalize:!0},U_t={scheme:"urn:uuid",parse:B_t,serialize:M_t,skipNormalize:!0},zR={http:xhe,https:W_t,ws:VR,wss:$_t,urn:F_t,"urn:uuid":U_t};Object.setPrototypeOf(zR,null);function V8(t){return t&&(zR[t]||zR[t.toLowerCase()])||void 0}bhe.exports={wsIsSecure:G8,SCHEMES:zR,isValidSchemeName:O_t,getSchemeHandler:V8}});var vhe=E((YPr,YR)=>{"use strict";var{normalizeIPv6:q_t,removeDotSegments:C1,recomposeAuthority:j_t,normalizeComponentEncoding:KR,isIPv4:H_t,nonSimpleDomain:Q_t}=Q8(),{SCHEMES:G_t,getSchemeHandler:_he}=Ehe();function V_t(t,e){return typeof t=="string"?t=qu(md(t,e),e):typeof t=="object"&&(t=md(qu(t,e),e)),t}function z_t(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},s=She(md(t,n),md(e,n),n,!0);return n.skipEscape=!0,qu(s,n)}function She(t,e,r,n){let s={};return n||(t=md(qu(t,r),r),e=md(qu(e,r),r)),r=r||{},!r.tolerant&&e.scheme?(s.scheme=e.scheme,s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=C1(e.path||""),s.query=e.query):(e.userinfo!==void 0||e.host!==void 0||e.port!==void 0?(s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=C1(e.path||""),s.query=e.query):(e.path?(e.path[0]==="/"?s.path=C1(e.path):((t.userinfo!==void 0||t.host!==void 0||t.port!==void 0)&&!t.path?s.path="/"+e.path:t.path?s.path=t.path.slice(0,t.path.lastIndexOf("/")+1)+e.path:s.path=e.path,s.path=C1(s.path)),s.query=e.query):(s.path=t.path,e.query!==void 0?s.query=e.query:s.query=t.query),s.userinfo=t.userinfo,s.host=t.host,s.port=t.port),s.scheme=t.scheme),s.fragment=e.fragment,s}function K_t(t,e,r){return typeof t=="string"?(t=unescape(t),t=qu(KR(md(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=qu(KR(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=qu(KR(md(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=qu(KR(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function qu(t,e){let r={host:t.host,scheme:t.scheme,userinfo:t.userinfo,port:t.port,path:t.path,query:t.query,nid:t.nid,nss:t.nss,uuid:t.uuid,fragment:t.fragment,reference:t.reference,resourceName:t.resourceName,secure:t.secure,error:""},n=Object.assign({},e),s=[],i=_he(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=j_t(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=C1(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 Y_t=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function md(t,e){let r=Object.assign({},e),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?t=r.scheme+":"+t:t="//"+t);let i=t.match(Y_t);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(H_t(n.host)===!1){let c=q_t(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=_he(r.scheme||n.scheme);if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&s===!1&&Q_t(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)&&(t.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 z8={SCHEMES:G_t,normalize:V_t,resolve:z_t,resolveComponent:She,equal:K_t,serialize:qu,parse:md};YR.exports=z8;YR.exports.default=z8;YR.exports.fastUri=z8});var Ihe=E(K8=>{"use strict";Object.defineProperty(K8,"__esModule",{value:!0});var Che=vhe();Che.code='require("ajv/dist/runtime/uri").default';K8.default=Che});var khe=E(ui=>{"use strict";Object.defineProperty(ui,"__esModule",{value:!0});ui.CodeGen=ui.Name=ui.nil=ui.stringify=ui.str=ui._=ui.KeywordCxt=void 0;var J_t=S1();Object.defineProperty(ui,"KeywordCxt",{enumerable:!0,get:function(){return J_t.KeywordCxt}});var JA=zt();Object.defineProperty(ui,"_",{enumerable:!0,get:function(){return JA._}});Object.defineProperty(ui,"str",{enumerable:!0,get:function(){return JA.str}});Object.defineProperty(ui,"stringify",{enumerable:!0,get:function(){return JA.stringify}});Object.defineProperty(ui,"nil",{enumerable:!0,get:function(){return JA.nil}});Object.defineProperty(ui,"Name",{enumerable:!0,get:function(){return JA.Name}});Object.defineProperty(ui,"CodeGen",{enumerable:!0,get:function(){return JA.CodeGen}});var X_t=HR(),Ohe=v1(),Z_t=C8(),I1=GR(),eSt=zt(),T1=b1(),JR=x1(),J8=Lr(),The=fhe(),tSt=Ihe(),Phe=(t,e)=>new RegExp(t,e);Phe.code="new RegExp";var rSt=["removeAdditional","useDefaults","coerceTypes"],nSt=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),sSt={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."},iSt={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},whe=200;function aSt(t){var e,r,n,s,i,a,o,c,u,l,d,f,p,m,h,A,g,b,y,x,v,C,R,w,N;let P=t.strict,L=(e=t.code)===null||e===void 0?void 0:e.optimize,M=L===!0||L===void 0?1:L||0,k=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:Phe,B=(s=t.uriResolver)!==null&&s!==void 0?s:tSt.default;return{strictSchema:(a=(i=t.strictSchema)!==null&&i!==void 0?i:P)!==null&&a!==void 0?a:!0,strictNumbers:(c=(o=t.strictNumbers)!==null&&o!==void 0?o:P)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:P)!==null&&l!==void 0?l:"log",strictTuples:(f=(d=t.strictTuples)!==null&&d!==void 0?d:P)!==null&&f!==void 0?f:"log",strictRequired:(m=(p=t.strictRequired)!==null&&p!==void 0?p:P)!==null&&m!==void 0?m:!1,code:t.code?{...t.code,optimize:M,regExp:k}:{optimize:M,regExp:k},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:whe,loopEnum:(A=t.loopEnum)!==null&&A!==void 0?A:whe,meta:(g=t.meta)!==null&&g!==void 0?g:!0,messages:(b=t.messages)!==null&&b!==void 0?b:!0,inlineRefs:(y=t.inlineRefs)!==null&&y!==void 0?y:!0,schemaId:(x=t.schemaId)!==null&&x!==void 0?x:"$id",addUsedSchema:(v=t.addUsedSchema)!==null&&v!==void 0?v:!0,validateSchema:(C=t.validateSchema)!==null&&C!==void 0?C:!0,validateFormats:(R=t.validateFormats)!==null&&R!==void 0?R:!0,unicodeRegExp:(w=t.unicodeRegExp)!==null&&w!==void 0?w:!0,int32range:(N=t.int32range)!==null&&N!==void 0?N:!0,uriResolver:B}}var w1=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...aSt(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new eSt.ValueScope({scope:{},prefixes:nSt,es5:r,lines:n}),this.logger=fSt(e.logger);let s=e.validateFormats;e.validateFormats=!1,this.RULES=(0,Z_t.getRules)(),Rhe.call(this,sSt,e,"NOT SUPPORTED"),Rhe.call(this,iSt,e,"DEPRECATED","warn"),this._metaOpts=lSt.call(this),e.formats&&cSt.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&uSt.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),oSt.call(this),e.validateFormats=s}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,s=The;n==="id"&&(s={...The},s.id=s.$id,delete s.$id),r&&e&&this.addMetaSchema(s,s[n],!1)}defaultMeta(){let{meta:e,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof e=="object"?e[r]||e:void 0}validate(e,r){let n;if(typeof e=="string"){if(n=this.getSchema(e),!n)throw new Error(`no schema with key or ref "${e}"`)}else n=this.compile(e);let s=n(r);return"$async"in n||(this.errors=n.errors),s}compile(e,r){let n=this._addSchema(e,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(e,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,e,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 Ohe.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(e,r,n,s=this.opts.validateSchema){if(Array.isArray(e)){for(let a of e)this.addSchema(a,void 0,n,s);return this}let i;if(typeof e=="object"){let{schemaId:a}=this.opts;if(i=e[a],i!==void 0&&typeof i!="string")throw new Error(`schema ${a} must be string`)}return r=(0,T1.normalizeId)(r||i),this._checkUnique(r),this.schemas[r]=this._addSchema(e,n,r,s,!0),this}addMetaSchema(e,r,n=this.opts.validateSchema){return this.addSchema(e,r,!0,n),this}validateSchema(e,r){if(typeof e=="boolean")return!0;let n;if(n=e.$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,e);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(e){let r;for(;typeof(r=Nhe.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,s=new I1.SchemaEnv({schema:{},schemaId:n});if(r=I1.resolveSchema.call(this,s,e),!r)return;this.refs[e]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(e){if(e instanceof RegExp)return this._removeAllSchemas(this.schemas,e),this._removeAllSchemas(this.refs,e),this;switch(typeof e){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=Nhe.call(this,e);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[e],delete this.refs[e],this}case"object":{let r=e;this._cache.delete(r);let n=e[this.opts.schemaId];return n&&(n=(0,T1.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(e){for(let r of e)this.addKeyword(r);return this}addKeyword(e,r){let n;if(typeof e=="string")n=e,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof e=="object"&&r===void 0){if(r=e,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(mSt.call(this,n,r),!r)return(0,J8.eachItem)(n,i=>Y8.call(this,i)),this;gSt.call(this,r);let s={...r,type:(0,JR.getJSONTypes)(r.type),schemaType:(0,JR.getJSONTypes)(r.schemaType)};return(0,J8.eachItem)(n,s.type.length===0?i=>Y8.call(this,i,s):i=>s.type.forEach(a=>Y8.call(this,i,s,a))),this}getKeyword(e){let r=this.RULES.all[e];return typeof r=="object"?r.definition:!!r}removeKeyword(e){let{RULES:r}=this;delete r.keywords[e],delete r.all[e];for(let n of r.rules){let s=n.rules.findIndex(i=>i.keyword===e);s>=0&&n.rules.splice(s,1)}return this}addFormat(e,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[e]=r,this}errorsText(e=this.errors,{separator:r=", ",dataVar:n="data"}={}){return!e||e.length===0?"No errors":e.map(s=>`${n}${s.instancePath} ${s.message}`).reduce((s,i)=>s+r+i)}$dataMetaSchema(e,r){let n=this.RULES.all;e=JSON.parse(JSON.stringify(e));for(let s of r){let i=s.split("/").slice(1),a=e;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]=Dhe(l))}}return e}_removeAllSchemas(e,r){for(let n in e){let s=e[n];(!r||r.test(n))&&(typeof s=="string"?delete e[n]:s&&!s.meta&&(this._cache.delete(s.schema),delete e[n]))}}_addSchema(e,r,n,s=this.opts.validateSchema,i=this.opts.addUsedSchema){let a,{schemaId:o}=this.opts;if(typeof e=="object")a=e[o];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof e!="boolean")throw new Error("schema must be object or boolean")}let c=this._cache.get(e);if(c!==void 0)return c;n=(0,T1.normalizeId)(a||n);let u=T1.getSchemaRefs.call(this,e,n);return c=new I1.SchemaEnv({schema:e,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(e,!0),c}_checkUnique(e){if(this.schemas[e]||this.refs[e])throw new Error(`schema with key or id "${e}" already exists`)}_compileSchemaEnv(e){if(e.meta?this._compileMetaSchema(e):I1.compileSchema.call(this,e),!e.validate)throw new Error("ajv implementation error");return e.validate}_compileMetaSchema(e){let r=this.opts;this.opts=this._metaOpts;try{I1.compileSchema.call(this,e)}finally{this.opts=r}}};w1.ValidationError=X_t.default;w1.MissingRefError=Ohe.default;ui.default=w1;function Rhe(t,e,r,n="error"){for(let s in t){let i=s;i in e&&this.logger[n](`${r}: option ${s}. ${t[i]}`)}}function Nhe(t){return t=(0,T1.normalizeId)(t),this.schemas[t]||this.refs[t]}function oSt(){let t=this.opts.schemas;if(t)if(Array.isArray(t))this.addSchema(t);else for(let e in t)this.addSchema(t[e],e)}function cSt(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function uSt(t){if(Array.isArray(t)){this.addVocabulary(t);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let e in t){let r=t[e];r.keyword||(r.keyword=e),this.addKeyword(r)}}function lSt(){let t={...this.opts};for(let e of rSt)delete t[e];return t}var dSt={log(){},warn(){},error(){}};function fSt(t){if(t===!1)return dSt;if(t===void 0)return console;if(t.log&&t.warn&&t.error)return t;throw new Error("logger must implement log, warn and error methods")}var pSt=/^[a-z_$][a-z0-9_$:-]*$/i;function mSt(t,e){let{RULES:r}=this;if((0,J8.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!pSt.test(n))throw new Error(`Keyword ${n} has invalid name`)}),!!e&&e.$data&&!("code"in e||"validate"in e))throw new Error('$data keyword must have "code" or "validate" function')}function Y8(t,e,r){var n;let s=e?.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[t]=!0,!e)return;let o={keyword:t,definition:{...e,type:(0,JR.getJSONTypes)(e.type),schemaType:(0,JR.getJSONTypes)(e.schemaType)}};e.before?hSt.call(this,a,o,e.before):a.rules.push(o),i.all[t]=o,(n=e.implements)===null||n===void 0||n.forEach(c=>this.addKeyword(c))}function hSt(t,e,r){let n=t.rules.findIndex(s=>s.keyword===r);n>=0?t.rules.splice(n,0,e):(t.rules.push(e),this.logger.warn(`rule ${r} is not defined`))}function gSt(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=Dhe(e)),t.validateSchema=this.compile(e,!0))}var ASt={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function Dhe(t){return{anyOf:[t,ASt]}}});var Lhe=E(X8=>{"use strict";Object.defineProperty(X8,"__esModule",{value:!0});var ySt={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};X8.default=ySt});var $he=E(Nm=>{"use strict";Object.defineProperty(Nm,"__esModule",{value:!0});Nm.callRef=Nm.getValidate=void 0;var xSt=v1(),Bhe=Qo(),La=zt(),XA=fd(),Mhe=GR(),XR=Lr(),bSt={keyword:"$ref",schemaType:"string",code(t){let{gen:e,schema:r,it:n}=t,{baseId:s,schemaEnv:i,validateName:a,opts:o,self:c}=n,{root:u}=i;if((r==="#"||r==="#/")&&s===u.baseId)return d();let l=Mhe.resolveRef.call(c,u,s,r);if(l===void 0)throw new xSt.default(n.opts.uriResolver,s,r);if(l instanceof Mhe.SchemaEnv)return f(l);return p(l);function d(){if(i===u)return ZR(t,a,i,i.$async);let m=e.scopeValue("root",{ref:u});return ZR(t,(0,La._)`${m}.validate`,u,u.$async)}function f(m){let h=Whe(t,m);ZR(t,h,m,m.$async)}function p(m){let h=e.scopeValue("schema",o.code.source===!0?{ref:m,code:(0,La.stringify)(m)}:{ref:m}),A=e.name("valid"),g=t.subschema({schema:m,dataTypes:[],schemaPath:La.nil,topSchemaRef:h,errSchemaPath:r},A);t.mergeEvaluated(g),t.ok(A)}}};function Whe(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,La._)`${r.scopeValue("wrapper",{ref:e})}.validate`}Nm.getValidate=Whe;function ZR(t,e,r,n){let{gen:s,it:i}=t,{allErrors:a,schemaEnv:o,opts:c}=i,u=c.passContext?XA.default.this:La.nil;n?l():d();function l(){if(!o.$async)throw new Error("async schema referenced by sync schema");let m=s.let("valid");s.try(()=>{s.code((0,La._)`await ${(0,Bhe.callValidateCode)(t,e,u)}`),p(e),a||s.assign(m,!0)},h=>{s.if((0,La._)`!(${h} instanceof ${i.ValidationError})`,()=>s.throw(h)),f(h),a||s.assign(m,!1)}),t.ok(m)}function d(){t.result((0,Bhe.callValidateCode)(t,e,u),()=>p(e),()=>f(e))}function f(m){let h=(0,La._)`${m}.errors`;s.assign(XA.default.vErrors,(0,La._)`${XA.default.vErrors} === null ? ${h} : ${XA.default.vErrors}.concat(${h})`),s.assign(XA.default.errors,(0,La._)`${XA.default.vErrors}.length`)}function p(m){var h;if(!i.opts.unevaluated)return;let A=(h=r?.validate)===null||h===void 0?void 0:h.evaluated;if(i.props!==!0)if(A&&!A.dynamicProps)A.props!==void 0&&(i.props=XR.mergeEvaluated.props(s,A.props,i.props));else{let g=s.var("props",(0,La._)`${m}.evaluated.props`);i.props=XR.mergeEvaluated.props(s,g,i.props,La.Name)}if(i.items!==!0)if(A&&!A.dynamicItems)A.items!==void 0&&(i.items=XR.mergeEvaluated.items(s,A.items,i.items));else{let g=s.var("items",(0,La._)`${m}.evaluated.items`);i.items=XR.mergeEvaluated.items(s,g,i.items,La.Name)}}}Nm.callRef=ZR;Nm.default=bSt});var Fhe=E(Z8=>{"use strict";Object.defineProperty(Z8,"__esModule",{value:!0});var ESt=Lhe(),_St=$he(),SSt=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",ESt.default,_St.default];Z8.default=SSt});var Uhe=E(eW=>{"use strict";Object.defineProperty(eW,"__esModule",{value:!0});var eN=zt(),bp=eN.operators,tN={maximum:{okStr:"<=",ok:bp.LTE,fail:bp.GT},minimum:{okStr:">=",ok:bp.GTE,fail:bp.LT},exclusiveMaximum:{okStr:"<",ok:bp.LT,fail:bp.GTE},exclusiveMinimum:{okStr:">",ok:bp.GT,fail:bp.LTE}},vSt={message:({keyword:t,schemaCode:e})=>(0,eN.str)`must be ${tN[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,eN._)`{comparison: ${tN[t].okStr}, limit: ${e}}`},CSt={keyword:Object.keys(tN),type:"number",schemaType:"number",$data:!0,error:vSt,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,eN._)`${r} ${tN[e].fail} ${n} || isNaN(${r})`)}};eW.default=CSt});var qhe=E(tW=>{"use strict";Object.defineProperty(tW,"__esModule",{value:!0});var R1=zt(),ISt={message:({schemaCode:t})=>(0,R1.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,R1._)`{multipleOf: ${t}}`},TSt={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:ISt,code(t){let{gen:e,data:r,schemaCode:n,it:s}=t,i=s.opts.multipleOfPrecision,a=e.let("res"),o=i?(0,R1._)`Math.abs(Math.round(${a}) - ${a}) > 1e-${i}`:(0,R1._)`${a} !== parseInt(${a})`;t.fail$data((0,R1._)`(${n} === 0 || (${a} = ${r}/${n}, ${o}))`)}};tW.default=TSt});var Hhe=E(rW=>{"use strict";Object.defineProperty(rW,"__esModule",{value:!0});function jhe(t){let e=t.length,r=0,n=0,s;for(;n=55296&&s<=56319&&n{"use strict";Object.defineProperty(nW,"__esModule",{value:!0});var Om=zt(),wSt=Lr(),RSt=Hhe(),NSt={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,Om.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,Om._)`{limit: ${t}}`},OSt={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:NSt,code(t){let{keyword:e,data:r,schemaCode:n,it:s}=t,i=e==="maxLength"?Om.operators.GT:Om.operators.LT,a=s.opts.unicode===!1?(0,Om._)`${r}.length`:(0,Om._)`${(0,wSt.useFunc)(t.gen,RSt.default)}(${r})`;t.fail$data((0,Om._)`${a} ${i} ${n}`)}};nW.default=OSt});var Ghe=E(sW=>{"use strict";Object.defineProperty(sW,"__esModule",{value:!0});var PSt=Qo(),rN=zt(),DSt={message:({schemaCode:t})=>(0,rN.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,rN._)`{pattern: ${t}}`},kSt={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:DSt,code(t){let{data:e,$data:r,schema:n,schemaCode:s,it:i}=t,a=i.opts.unicodeRegExp?"u":"",o=r?(0,rN._)`(new RegExp(${s}, ${a}))`:(0,PSt.usePattern)(t,n);t.fail$data((0,rN._)`!${o}.test(${e})`)}};sW.default=kSt});var Vhe=E(iW=>{"use strict";Object.defineProperty(iW,"__esModule",{value:!0});var N1=zt(),LSt={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,N1.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,N1._)`{limit: ${t}}`},BSt={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:LSt,code(t){let{keyword:e,data:r,schemaCode:n}=t,s=e==="maxProperties"?N1.operators.GT:N1.operators.LT;t.fail$data((0,N1._)`Object.keys(${r}).length ${s} ${n}`)}};iW.default=BSt});var zhe=E(aW=>{"use strict";Object.defineProperty(aW,"__esModule",{value:!0});var O1=Qo(),P1=zt(),MSt=Lr(),WSt={message:({params:{missingProperty:t}})=>(0,P1.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,P1._)`{missingProperty: ${t}}`},$St={keyword:"required",type:"object",schemaType:"array",$data:!0,error:WSt,code(t){let{gen:e,schema:r,schemaCode:n,data:s,$data:i,it:a}=t,{opts:o}=a;if(!i&&r.length===0)return;let c=r.length>=o.loopRequired;if(a.allErrors?u():l(),o.strictRequired){let p=t.parentSchema.properties,{definedProperties:m}=t.it;for(let h of r)if(p?.[h]===void 0&&!m.has(h)){let A=a.schemaEnv.baseId+a.errSchemaPath,g=`required property "${h}" is not defined at "${A}" (strictRequired)`;(0,MSt.checkStrictMode)(a,g,a.opts.strictRequired)}}function u(){if(c||i)t.block$data(P1.nil,d);else for(let p of r)(0,O1.checkReportMissingProp)(t,p)}function l(){let p=e.let("missing");if(c||i){let m=e.let("valid",!0);t.block$data(m,()=>f(p,m)),t.ok(m)}else e.if((0,O1.checkMissingProp)(t,r,p)),(0,O1.reportMissingProp)(t,p),e.else()}function d(){e.forOf("prop",n,p=>{t.setParams({missingProperty:p}),e.if((0,O1.noPropertyInData)(e,s,p,o.ownProperties),()=>t.error())})}function f(p,m){t.setParams({missingProperty:p}),e.forOf(p,n,()=>{e.assign(m,(0,O1.propertyInData)(e,s,p,o.ownProperties)),e.if((0,P1.not)(m),()=>{t.error(),e.break()})},P1.nil)}}};aW.default=$St});var Khe=E(oW=>{"use strict";Object.defineProperty(oW,"__esModule",{value:!0});var D1=zt(),FSt={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,D1.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,D1._)`{limit: ${t}}`},USt={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:FSt,code(t){let{keyword:e,data:r,schemaCode:n}=t,s=e==="maxItems"?D1.operators.GT:D1.operators.LT;t.fail$data((0,D1._)`${r}.length ${s} ${n}`)}};oW.default=USt});var k1=E(cW=>{"use strict";Object.defineProperty(cW,"__esModule",{value:!0});var Yhe=Go();Yhe.code='require("ajv/dist/runtime/equal").default';cW.default=Yhe});var Jhe=E(lW=>{"use strict";Object.defineProperty(lW,"__esModule",{value:!0});var uW=x1(),li=zt(),qSt=Lr(),jSt=k1(),HSt={message:({params:{i:t,j:e}})=>(0,li.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,li._)`{i: ${t}, j: ${e}}`},QSt={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:HSt,code(t){let{gen:e,data:r,$data:n,schema:s,parentSchema:i,schemaCode:a,it:o}=t;if(!n&&!s)return;let c=e.let("valid"),u=i.items?(0,uW.getSchemaTypes)(i.items):[];t.block$data(c,l,(0,li._)`${a} === false`),t.ok(c);function l(){let m=e.let("i",(0,li._)`${r}.length`),h=e.let("j");t.setParams({i:m,j:h}),e.assign(c,!0),e.if((0,li._)`${m} > 1`,()=>(d()?f:p)(m,h))}function d(){return u.length>0&&!u.some(m=>m==="object"||m==="array")}function f(m,h){let A=e.name("item"),g=(0,uW.checkDataTypes)(u,A,o.opts.strictNumbers,uW.DataType.Wrong),b=e.const("indices",(0,li._)`{}`);e.for((0,li._)`;${m}--;`,()=>{e.let(A,(0,li._)`${r}[${m}]`),e.if(g,(0,li._)`continue`),u.length>1&&e.if((0,li._)`typeof ${A} == "string"`,(0,li._)`${A} += "_"`),e.if((0,li._)`typeof ${b}[${A}] == "number"`,()=>{e.assign(h,(0,li._)`${b}[${A}]`),t.error(),e.assign(c,!1).break()}).code((0,li._)`${b}[${A}] = ${m}`)})}function p(m,h){let A=(0,qSt.useFunc)(e,jSt.default),g=e.name("outer");e.label(g).for((0,li._)`;${m}--;`,()=>e.for((0,li._)`${h} = ${m}; ${h}--;`,()=>e.if((0,li._)`${A}(${r}[${m}], ${r}[${h}])`,()=>{t.error(),e.assign(c,!1).break(g)})))}}};lW.default=QSt});var Xhe=E(fW=>{"use strict";Object.defineProperty(fW,"__esModule",{value:!0});var dW=zt(),GSt=Lr(),VSt=k1(),zSt={message:"must be equal to constant",params:({schemaCode:t})=>(0,dW._)`{allowedValue: ${t}}`},KSt={keyword:"const",$data:!0,error:zSt,code(t){let{gen:e,data:r,$data:n,schemaCode:s,schema:i}=t;n||i&&typeof i=="object"?t.fail$data((0,dW._)`!${(0,GSt.useFunc)(e,VSt.default)}(${r}, ${s})`):t.fail((0,dW._)`${i} !== ${r}`)}};fW.default=KSt});var Zhe=E(pW=>{"use strict";Object.defineProperty(pW,"__esModule",{value:!0});var L1=zt(),YSt=Lr(),JSt=k1(),XSt={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,L1._)`{allowedValues: ${t}}`},ZSt={keyword:"enum",schemaType:"array",$data:!0,error:XSt,code(t){let{gen:e,data:r,$data:n,schema:s,schemaCode:i,it:a}=t;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,YSt.useFunc)(e,JSt.default)),l;if(o||n)l=e.let("valid"),t.block$data(l,d);else{if(!Array.isArray(s))throw new Error("ajv implementation error");let p=e.const("vSchema",i);l=(0,L1.or)(...s.map((m,h)=>f(p,h)))}t.pass(l);function d(){e.assign(l,!1),e.forOf("v",i,p=>e.if((0,L1._)`${u()}(${r}, ${p})`,()=>e.assign(l,!0).break()))}function f(p,m){let h=s[m];return typeof h=="object"&&h!==null?(0,L1._)`${u()}(${r}, ${p}[${m}])`:(0,L1._)`${r} === ${h}`}}};pW.default=ZSt});var ege=E(mW=>{"use strict";Object.defineProperty(mW,"__esModule",{value:!0});var evt=Uhe(),tvt=qhe(),rvt=Qhe(),nvt=Ghe(),svt=Vhe(),ivt=zhe(),avt=Khe(),ovt=Jhe(),cvt=Xhe(),uvt=Zhe(),lvt=[evt.default,tvt.default,rvt.default,nvt.default,svt.default,ivt.default,avt.default,ovt.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},cvt.default,uvt.default];mW.default=lvt});var gW=E(B1=>{"use strict";Object.defineProperty(B1,"__esModule",{value:!0});B1.validateAdditionalItems=void 0;var Pm=zt(),hW=Lr(),dvt={message:({params:{len:t}})=>(0,Pm.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,Pm._)`{limit: ${t}}`},fvt={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:dvt,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,hW.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}tge(t,n)}};function tge(t,e){let{gen:r,schema:n,data:s,keyword:i,it:a}=t;a.items=!0;let o=r.const("len",(0,Pm._)`${s}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,Pm._)`${o} <= ${e.length}`);else if(typeof n=="object"&&!(0,hW.alwaysValidSchema)(a,n)){let u=r.var("valid",(0,Pm._)`${o} <= ${e.length}`);r.if((0,Pm.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,o,l=>{t.subschema({keyword:i,dataProp:l,dataPropType:hW.Type.Num},u),a.allErrors||r.if((0,Pm.not)(u),()=>r.break())})}}B1.validateAdditionalItems=tge;B1.default=fvt});var AW=E(M1=>{"use strict";Object.defineProperty(M1,"__esModule",{value:!0});M1.validateTuple=void 0;var rge=zt(),nN=Lr(),pvt=Qo(),mvt={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return nge(t,"additionalItems",e);r.items=!0,!(0,nN.alwaysValidSchema)(r,e)&&t.ok((0,pvt.validateArray)(t))}};function nge(t,e,r=t.schema){let{gen:n,parentSchema:s,data:i,keyword:a,it:o}=t;l(s),o.opts.unevaluated&&r.length&&o.items!==!0&&(o.items=nN.mergeEvaluated.items(n,r.length,o.items));let c=n.name("valid"),u=n.const("len",(0,rge._)`${i}.length`);r.forEach((d,f)=>{(0,nN.alwaysValidSchema)(o,d)||(n.if((0,rge._)`${u} > ${f}`,()=>t.subschema({keyword:a,schemaProp:f,dataProp:f},c)),t.ok(c))});function l(d){let{opts:f,errSchemaPath:p}=o,m=r.length,h=m===d.minItems&&(m===d.maxItems||d[e]===!1);if(f.strictTuples&&!h){let A=`"${a}" is ${m}-tuple, but minItems or maxItems/${e} are not specified or different at path "${p}"`;(0,nN.checkStrictMode)(o,A,f.strictTuples)}}}M1.validateTuple=nge;M1.default=mvt});var sge=E(yW=>{"use strict";Object.defineProperty(yW,"__esModule",{value:!0});var hvt=AW(),gvt={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,hvt.validateTuple)(t,"items")};yW.default=gvt});var age=E(xW=>{"use strict";Object.defineProperty(xW,"__esModule",{value:!0});var ige=zt(),Avt=Lr(),yvt=Qo(),xvt=gW(),bvt={message:({params:{len:t}})=>(0,ige.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,ige._)`{limit: ${t}}`},Evt={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:bvt,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:s}=r;n.items=!0,!(0,Avt.alwaysValidSchema)(n,e)&&(s?(0,xvt.validateAdditionalItems)(t,s):t.ok((0,yvt.validateArray)(t)))}};xW.default=Evt});var oge=E(bW=>{"use strict";Object.defineProperty(bW,"__esModule",{value:!0});var zo=zt(),sN=Lr(),_vt={message:({params:{min:t,max:e}})=>e===void 0?(0,zo.str)`must contain at least ${t} valid item(s)`:(0,zo.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,zo._)`{minContains: ${t}}`:(0,zo._)`{minContains: ${t}, maxContains: ${e}}`},Svt={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:_vt,code(t){let{gen:e,schema:r,parentSchema:n,data:s,it:i}=t,a,o,{minContains:c,maxContains:u}=n;i.opts.next?(a=c===void 0?1:c,o=u):a=1;let l=e.const("len",(0,zo._)`${s}.length`);if(t.setParams({min:a,max:o}),o===void 0&&a===0){(0,sN.checkStrictMode)(i,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(o!==void 0&&a>o){(0,sN.checkStrictMode)(i,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,sN.alwaysValidSchema)(i,r)){let h=(0,zo._)`${l} >= ${a}`;o!==void 0&&(h=(0,zo._)`${h} && ${l} <= ${o}`),t.pass(h);return}i.items=!0;let d=e.name("valid");o===void 0&&a===1?p(d,()=>e.if(d,()=>e.break())):a===0?(e.let(d,!0),o!==void 0&&e.if((0,zo._)`${s}.length > 0`,f)):(e.let(d,!1),f()),t.result(d,()=>t.reset());function f(){let h=e.name("_valid"),A=e.let("count",0);p(h,()=>e.if(h,()=>m(A)))}function p(h,A){e.forRange("i",0,l,g=>{t.subschema({keyword:"contains",dataProp:g,dataPropType:sN.Type.Num,compositeRule:!0},h),A()})}function m(h){e.code((0,zo._)`${h}++`),o===void 0?e.if((0,zo._)`${h} >= ${a}`,()=>e.assign(d,!0).break()):(e.if((0,zo._)`${h} > ${o}`,()=>e.assign(d,!1).break()),a===1?e.assign(d,!0):e.if((0,zo._)`${h} >= ${a}`,()=>e.assign(d,!0)))}}};bW.default=Svt});var lge=E(ju=>{"use strict";Object.defineProperty(ju,"__esModule",{value:!0});ju.validateSchemaDeps=ju.validatePropertyDeps=ju.error=void 0;var EW=zt(),vvt=Lr(),W1=Qo();ju.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,EW.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,EW._)`{property: ${t}, + || ${a} === "boolean" || ${s} === null`).assign(o,(0,jt._)`[${s}]`)}}}function mCt({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,jt._)`${e} !== undefined`,()=>t.assign((0,jt._)`${e}[${r}]`,n))}function R$(t,e,r,n=wA.Correct){let s=n===wA.Correct?jt.operators.EQ:jt.operators.NEQ,i;switch(t){case"null":return(0,jt._)`${e} ${s} null`;case"array":i=(0,jt._)`Array.isArray(${e})`;break;case"object":i=(0,jt._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":i=a((0,jt._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":i=a();break;default:return(0,jt._)`typeof ${e} ${s} ${t}`}return n===wA.Correct?i:(0,jt.not)(i);function a(o=jt.nil){return(0,jt.and)((0,jt._)`typeof ${e} == "number"`,o,r?(0,jt._)`isFinite(${e})`:jt.nil)}}Wi.checkDataType=R$;function N$(t,e,r,n){if(t.length===1)return R$(t[0],e,r,n);let s,i=(0,Sye.toHash)(t);if(i.array&&i.object){let a=(0,jt._)`typeof ${e} != "object"`;s=i.null?a:(0,jt._)`!${e} || ${a}`,delete i.null,delete i.array,delete i.object}else s=jt.nil;i.number&&delete i.integer;for(let a in i)s=(0,jt.and)(s,R$(a,e,r,n));return s}Wi.checkDataTypes=N$;var hCt={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,jt._)`{type: ${t}}`:(0,jt._)`{type: ${e}}`};function O$(t){let e=gCt(t);(0,uCt.reportError)(e,hCt)}Wi.reportTypeError=O$;function gCt(t){let{gen:e,data:r,schema:n}=t,s=(0,Sye.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:s,schemaValue:s,parentSchema:n,params:{},it:t}}});var wye=_(lO=>{"use strict";Object.defineProperty(lO,"__esModule",{value:!0});lO.assignDefaults=void 0;var RA=Vt(),yCt=Wr();function ACt(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let s in r)Tye(t,s,r[s].default);else e==="array"&&Array.isArray(n)&&n.forEach((s,i)=>Tye(t,i,s.default))}lO.assignDefaults=ACt;function Tye(t,e,r){let{gen:n,compositeRule:s,data:i,opts:a}=t;if(r===void 0)return;let o=(0,RA._)`${i}${(0,RA.getProperty)(e)}`;if(s){(0,yCt.checkStrictMode)(t,`default is ignored for: ${o}`);return}let c=(0,RA._)`${o} === undefined`;a.useDefaults==="empty"&&(c=(0,RA._)`${c} || ${o} === null || ${o} === ""`),n.if(c,(0,RA._)`${o} = ${(0,RA.stringify)(r)}`)}});var nc=_(Xr=>{"use strict";Object.defineProperty(Xr,"__esModule",{value:!0});Xr.validateUnion=Xr.validateArray=Xr.usePattern=Xr.callValidateCode=Xr.schemaProperties=Xr.allSchemaProperties=Xr.noPropertyInData=Xr.propertyInData=Xr.isOwnProperty=Xr.hasPropFunc=Xr.reportMissingProp=Xr.checkMissingProp=Xr.checkReportMissingProp=void 0;var Rn=Vt(),k$=Wr(),Lp=kd(),xCt=Wr();function bCt(t,e){let{gen:r,data:n,it:s}=t;r.if(D$(r,n,e,s.opts.ownProperties),()=>{t.setParams({missingProperty:(0,Rn._)`${e}`},!0),t.error()})}Xr.checkReportMissingProp=bCt;function _Ct({gen:t,data:e,it:{opts:r}},n,s){return(0,Rn.or)(...n.map(i=>(0,Rn.and)(D$(t,e,i,r.ownProperties),(0,Rn._)`${s} = ${i}`)))}Xr.checkMissingProp=_Ct;function ECt(t,e){t.setParams({missingProperty:e},!0),t.error()}Xr.reportMissingProp=ECt;function Rye(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,Rn._)`Object.prototype.hasOwnProperty`})}Xr.hasPropFunc=Rye;function P$(t,e,r){return(0,Rn._)`${Rye(t)}.call(${e}, ${r})`}Xr.isOwnProperty=P$;function vCt(t,e,r,n){let s=(0,Rn._)`${e}${(0,Rn.getProperty)(r)} !== undefined`;return n?(0,Rn._)`${s} && ${P$(t,e,r)}`:s}Xr.propertyInData=vCt;function D$(t,e,r,n){let s=(0,Rn._)`${e}${(0,Rn.getProperty)(r)} === undefined`;return n?(0,Rn.or)(s,(0,Rn.not)(P$(t,e,r))):s}Xr.noPropertyInData=D$;function Nye(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}Xr.allSchemaProperties=Nye;function SCt(t,e){return Nye(e).filter(r=>!(0,k$.alwaysValidSchema)(t,e[r]))}Xr.schemaProperties=SCt;function ICt({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:s,errorPath:i},it:a},o,c,u){let l=u?(0,Rn._)`${t}, ${e}, ${n}${s}`:e,d=[[Lp.default.instancePath,(0,Rn.strConcat)(Lp.default.instancePath,i)],[Lp.default.parentData,a.parentData],[Lp.default.parentDataProperty,a.parentDataProperty],[Lp.default.rootData,Lp.default.rootData]];a.opts.dynamicRef&&d.push([Lp.default.dynamicAnchors,Lp.default.dynamicAnchors]);let f=(0,Rn._)`${l}, ${r.object(...d)}`;return c!==Rn.nil?(0,Rn._)`${o}.call(${c}, ${f})`:(0,Rn._)`${o}(${f})`}Xr.callValidateCode=ICt;var CCt=(0,Rn._)`new RegExp`;function TCt({gen:t,it:{opts:e}},r){let n=e.unicodeRegExp?"u":"",{regExp:s}=e.code,i=s(r,n);return t.scopeValue("pattern",{key:i.toString(),ref:i,code:(0,Rn._)`${s.code==="new RegExp"?CCt:(0,xCt.useFunc)(t,s)}(${r}, ${n})`})}Xr.usePattern=TCt;function wCt(t){let{gen:e,data:r,keyword:n,it:s}=t,i=e.name("valid");if(s.allErrors){let o=e.let("valid",!0);return a(()=>e.assign(o,!1)),o}return e.var(i,!0),a(()=>e.break()),i;function a(o){let c=e.const("len",(0,Rn._)`${r}.length`);e.forRange("i",0,c,u=>{t.subschema({keyword:n,dataProp:u,dataPropType:k$.Type.Num},i),e.if((0,Rn.not)(i),o)})}}Xr.validateArray=wCt;function RCt(t){let{gen:e,schema:r,keyword:n,it:s}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(c=>(0,k$.alwaysValidSchema)(s,c))&&!s.opts.unevaluated)return;let a=e.let("valid",!1),o=e.name("_valid");e.block(()=>r.forEach((c,u)=>{let l=t.subschema({keyword:n,schemaProp:u,compositeRule:!0},o);e.assign(a,(0,Rn._)`${a} || ${o}`),t.mergeValidEvaluated(l,o)||e.if((0,Rn.not)(a))})),t.result(a,()=>t.reset(),()=>t.error(!0))}Xr.validateUnion=RCt});var Pye=_(Zu=>{"use strict";Object.defineProperty(Zu,"__esModule",{value:!0});Zu.validateKeywordUsage=Zu.validSchemaType=Zu.funcKeywordCode=Zu.macroKeywordCode=void 0;var la=Vt(),Jm=kd(),NCt=nc(),OCt=SE();function kCt(t,e){let{gen:r,keyword:n,schema:s,parentSchema:i,it:a}=t,o=e.macro.call(a.self,s,i,a),c=kye(r,n,o);a.opts.validateSchema!==!1&&a.self.validateSchema(o,!0);let u=r.name("valid");t.subschema({schema:o,schemaPath:la.nil,errSchemaPath:`${a.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}Zu.macroKeywordCode=kCt;function PCt(t,e){var r;let{gen:n,keyword:s,schema:i,parentSchema:a,$data:o,it:c}=t;BCt(c,e);let u=!o&&e.compile?e.compile.call(c.self,i,a,c):e.validate,l=kye(n,s,u),d=n.let("valid");t.block$data(d,f),t.ok((r=e.valid)!==null&&r!==void 0?r:d);function f(){if(e.errors===!1)h(),e.modifying&&Oye(t),y(()=>t.error());else{let g=e.async?p():m();e.modifying&&Oye(t),y(()=>DCt(t,g))}}function p(){let g=n.let("ruleErrs",null);return n.try(()=>h((0,la._)`await `),b=>n.assign(d,!1).if((0,la._)`${b} instanceof ${c.ValidationError}`,()=>n.assign(g,(0,la._)`${b}.errors`),()=>n.throw(b))),g}function m(){let g=(0,la._)`${l}.errors`;return n.assign(g,null),h(la.nil),g}function h(g=e.async?(0,la._)`await `:la.nil){let b=c.opts.passContext?Jm.default.this:Jm.default.self,x=!("compile"in e&&!o||e.schema===!1);n.assign(d,(0,la._)`${g}${(0,NCt.callValidateCode)(t,l,b,x)}`,e.modifying)}function y(g){var b;n.if((0,la.not)((b=e.valid)!==null&&b!==void 0?b:d),g)}}Zu.funcKeywordCode=PCt;function Oye(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,la._)`${n.parentData}[${n.parentDataProperty}]`))}function DCt(t,e){let{gen:r}=t;r.if((0,la._)`Array.isArray(${e})`,()=>{r.assign(Jm.default.vErrors,(0,la._)`${Jm.default.vErrors} === null ? ${e} : ${Jm.default.vErrors}.concat(${e})`).assign(Jm.default.errors,(0,la._)`${Jm.default.vErrors}.length`),(0,OCt.extendErrors)(t)},()=>t.error())}function BCt({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function kye(t,e,r){if(r===void 0)throw new Error(`keyword "${e}" failed to compile`);return t.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,la.stringify)(r)})}function LCt(t,e,r=!1){return!e.length||e.some(n=>n==="array"?Array.isArray(t):n==="object"?t&&typeof t=="object"&&!Array.isArray(t):typeof t==n||r&&typeof t>"u")}Zu.validSchemaType=LCt;function MCt({schema:t,opts:e,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(t,o)))throw new Error(`parent schema must have dependencies of ${i}: ${a.join(",")}`);if(s.validateSchema&&!s.validateSchema(t[i])){let c=`keyword "${i}" value is invalid at path "${n}": `+r.errorsText(s.validateSchema.errors);if(e.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}Zu.validateKeywordUsage=MCt});var Bye=_(Mp=>{"use strict";Object.defineProperty(Mp,"__esModule",{value:!0});Mp.extendSubschemaMode=Mp.extendSubschemaData=Mp.getSubschema=void 0;var el=Vt(),Dye=Wr();function WCt(t,{keyword:e,schemaProp:r,schema:n,schemaPath:s,errSchemaPath:i,topSchemaRef:a}){if(e!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(e!==void 0){let o=t.schema[e];return r===void 0?{schema:o,schemaPath:(0,el._)`${t.schemaPath}${(0,el.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:o[r],schemaPath:(0,el._)`${t.schemaPath}${(0,el.getProperty)(e)}${(0,el.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,Dye.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')}Mp.getSubschema=WCt;function $Ct(t,e,{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}=e;if(r!==void 0){let{errorPath:u,dataPathArr:l,opts:d}=e,f=o.let("data",(0,el._)`${e.data}${(0,el.getProperty)(r)}`,!0);c(f),t.errorPath=(0,el.str)`${u}${(0,Dye.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,el._)`${r}`,t.dataPathArr=[...l,t.parentDataProperty]}if(s!==void 0){let u=s instanceof el.Name?s:o.let("data",s,!0);c(u),a!==void 0&&(t.propertyName=a)}i&&(t.dataTypes=i);function c(u){t.data=u,t.dataLevel=e.dataLevel+1,t.dataTypes=[],e.definedProperties=new Set,t.parentData=e.data,t.dataNames=[...e.dataNames,u]}}Mp.extendSubschemaData=$Ct;function UCt(t,{jtdDiscriminator:e,jtdMetadata:r,compositeRule:n,createErrors:s,allErrors:i}){n!==void 0&&(t.compositeRule=n),s!==void 0&&(t.createErrors=s),i!==void 0&&(t.allErrors=i),t.jtdDiscriminator=e,t.jtdMetadata=r}Mp.extendSubschemaMode=UCt});var sc=_((YWr,Lye)=>{"use strict";Lye.exports=function t(e,r){if(e===r)return!0;if(e&&r&&typeof e=="object"&&typeof r=="object"){if(e.constructor!==r.constructor)return!1;var n,s,i;if(Array.isArray(e)){if(n=e.length,n!=r.length)return!1;for(s=n;s--!==0;)if(!t(e[s],r[s]))return!1;return!0}if(e.constructor===RegExp)return e.source===r.source&&e.flags===r.flags;if(e.valueOf!==Object.prototype.valueOf)return e.valueOf()===r.valueOf();if(e.toString!==Object.prototype.toString)return e.toString()===r.toString();if(i=Object.keys(e),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(!t(e[a],r[a]))return!1}return!0}return e!==e&&r!==r}});var Wye=_((JWr,Mye)=>{"use strict";var Wp=Mye.exports=function(t,e,r){typeof e=="function"&&(r=e,e={}),r=e.cb||r;var n=typeof r=="function"?r:r.pre||function(){},s=r.post||function(){};dO(e,n,s,t,"",t)};Wp.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};Wp.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};Wp.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};Wp.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 dO(t,e,r,n,s,i,a,o,c,u){if(n&&typeof n=="object"&&!Array.isArray(n)){e(n,s,i,a,o,c,u);for(var l in n){var d=n[l];if(Array.isArray(d)){if(l in Wp.arrayKeywords)for(var f=0;f{"use strict";Object.defineProperty(ja,"__esModule",{value:!0});ja.getSchemaRefs=ja.resolveUrl=ja.normalizeId=ja._getFullPath=ja.getFullPath=ja.inlineRef=void 0;var qCt=Wr(),jCt=sc(),QCt=Wye(),HCt=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function GCt(t,e=!0){return typeof t=="boolean"?!0:e===!0?!B$(t):e?$ye(t)<=e:!1}ja.inlineRef=GCt;var zCt=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function B$(t){for(let e in t){if(zCt.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(B$)||typeof r=="object"&&B$(r))return!0}return!1}function $ye(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!HCt.has(r)&&(typeof t[r]=="object"&&(0,qCt.eachItem)(t[r],n=>e+=$ye(n)),e===1/0))return 1/0}return e}function Uye(t,e="",r){r!==!1&&(e=NA(e));let n=t.parse(e);return Fye(t,n)}ja.getFullPath=Uye;function Fye(t,e){return t.serialize(e).split("#")[0]+"#"}ja._getFullPath=Fye;var KCt=/#\/?$/;function NA(t){return t?t.replace(KCt,""):""}ja.normalizeId=NA;function VCt(t,e,r){return r=NA(r),t.resolve(e,r)}ja.resolveUrl=VCt;var YCt=/^[a-z_][-a-z0-9._]*$/i;function JCt(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,s=NA(t[r]||e),i={"":s},a=Uye(n,s,!1),o={},c=new Set;return QCt(t,{allKeys:!0},(d,f,p,m)=>{if(m===void 0)return;let h=a+f,y=i[m];typeof d[r]=="string"&&(y=g.call(this,d[r])),b.call(this,d.$anchor),b.call(this,d.$dynamicAnchor),i[f]=y;function g(x){let A=this.opts.uriResolver.resolve;if(x=NA(y?A(y,x):x),c.has(x))throw l(x);c.add(x);let S=this.refs[x];return typeof S=="string"&&(S=this.refs[S]),typeof S=="object"?u(d,S.schema,x):x!==NA(h)&&(x[0]==="#"?(u(d,o[x],x),o[x]=d):this.refs[x]=h),x}function b(x){if(typeof x=="string"){if(!YCt.test(x))throw new Error(`invalid anchor "${x}"`);g.call(this,`#${x}`)}}}),o;function u(d,f,p){if(f!==void 0&&!jCt(d,f))throw l(p)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}ja.getSchemaRefs=JCt});var RE=_($p=>{"use strict";Object.defineProperty($p,"__esModule",{value:!0});$p.getData=$p.KeywordCxt=$p.validateFunctionCode=void 0;var Gye=_ye(),qye=IE(),M$=w$(),fO=IE(),XCt=wye(),wE=Pye(),L$=Bye(),at=Vt(),Rt=kd(),ZCt=CE(),Pd=Wr(),TE=SE();function e2t(t){if(Vye(t)&&(Yye(t),Kye(t))){n2t(t);return}zye(t,()=>(0,Gye.topBoolOrEmptySchema)(t))}$p.validateFunctionCode=e2t;function zye({gen:t,validateName:e,schema:r,schemaEnv:n,opts:s},i){s.code.es5?t.func(e,(0,at._)`${Rt.default.data}, ${Rt.default.valCxt}`,n.$async,()=>{t.code((0,at._)`"use strict"; ${jye(r,s)}`),r2t(t,s),t.code(i)}):t.func(e,(0,at._)`${Rt.default.data}, ${t2t(s)}`,n.$async,()=>t.code(jye(r,s)).code(i))}function t2t(t){return(0,at._)`{${Rt.default.instancePath}="", ${Rt.default.parentData}, ${Rt.default.parentDataProperty}, ${Rt.default.rootData}=${Rt.default.data}${t.dynamicRef?(0,at._)`, ${Rt.default.dynamicAnchors}={}`:at.nil}}={}`}function r2t(t,e){t.if(Rt.default.valCxt,()=>{t.var(Rt.default.instancePath,(0,at._)`${Rt.default.valCxt}.${Rt.default.instancePath}`),t.var(Rt.default.parentData,(0,at._)`${Rt.default.valCxt}.${Rt.default.parentData}`),t.var(Rt.default.parentDataProperty,(0,at._)`${Rt.default.valCxt}.${Rt.default.parentDataProperty}`),t.var(Rt.default.rootData,(0,at._)`${Rt.default.valCxt}.${Rt.default.rootData}`),e.dynamicRef&&t.var(Rt.default.dynamicAnchors,(0,at._)`${Rt.default.valCxt}.${Rt.default.dynamicAnchors}`)},()=>{t.var(Rt.default.instancePath,(0,at._)`""`),t.var(Rt.default.parentData,(0,at._)`undefined`),t.var(Rt.default.parentDataProperty,(0,at._)`undefined`),t.var(Rt.default.rootData,Rt.default.data),e.dynamicRef&&t.var(Rt.default.dynamicAnchors,(0,at._)`{}`)})}function n2t(t){let{schema:e,opts:r,gen:n}=t;zye(t,()=>{r.$comment&&e.$comment&&Xye(t),c2t(t),n.let(Rt.default.vErrors,null),n.let(Rt.default.errors,0),r.unevaluated&&s2t(t),Jye(t),d2t(t)})}function s2t(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,at._)`${r}.evaluated`),e.if((0,at._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,at._)`${t.evaluated}.props`,(0,at._)`undefined`)),e.if((0,at._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,at._)`${t.evaluated}.items`,(0,at._)`undefined`))}function jye(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,at._)`/*# sourceURL=${r} */`:at.nil}function i2t(t,e){if(Vye(t)&&(Yye(t),Kye(t))){a2t(t,e);return}(0,Gye.boolOrEmptySchema)(t,e)}function Kye({schema:t,self:e}){if(typeof t=="boolean")return!t;for(let r in t)if(e.RULES.all[r])return!0;return!1}function Vye(t){return typeof t.schema!="boolean"}function a2t(t,e){let{schema:r,gen:n,opts:s}=t;s.$comment&&r.$comment&&Xye(t),u2t(t),l2t(t);let i=n.const("_errs",Rt.default.errors);Jye(t,i),n.var(e,(0,at._)`${i} === ${Rt.default.errors}`)}function Yye(t){(0,Pd.checkUnknownRules)(t),o2t(t)}function Jye(t,e){if(t.opts.jtd)return Qye(t,[],!1,e);let r=(0,qye.getSchemaTypes)(t.schema),n=(0,qye.coerceAndCheckDataType)(t,r);Qye(t,r,!n,e)}function o2t(t){let{schema:e,errSchemaPath:r,opts:n,self:s}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,Pd.schemaHasRulesButRef)(e,s.RULES)&&s.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function c2t(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,Pd.checkStrictMode)(t,"default is ignored in the schema root")}function u2t(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,ZCt.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function l2t(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function Xye({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:s}){let i=r.$comment;if(s.$comment===!0)t.code((0,at._)`${Rt.default.self}.logger.log(${i})`);else if(typeof s.$comment=="function"){let a=(0,at.str)`${n}/$comment`,o=t.scopeValue("root",{ref:e.root});t.code((0,at._)`${Rt.default.self}.opts.$comment(${i}, ${a}, ${o}.schema)`)}}function d2t(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:s,opts:i}=t;r.$async?e.if((0,at._)`${Rt.default.errors} === 0`,()=>e.return(Rt.default.data),()=>e.throw((0,at._)`new ${s}(${Rt.default.vErrors})`)):(e.assign((0,at._)`${n}.errors`,Rt.default.vErrors),i.unevaluated&&f2t(t),e.return((0,at._)`${Rt.default.errors} === 0`))}function f2t({gen:t,evaluated:e,props:r,items:n}){r instanceof at.Name&&t.assign((0,at._)`${e}.props`,r),n instanceof at.Name&&t.assign((0,at._)`${e}.items`,n)}function Qye(t,e,r,n){let{gen:s,schema:i,data:a,allErrors:o,opts:c,self:u}=t,{RULES:l}=u;if(i.$ref&&(c.ignoreKeywordsWithRef||!(0,Pd.schemaHasRulesButRef)(i,l))){s.block(()=>eAe(t,"$ref",l.all.$ref.definition));return}c.jtd||p2t(t,e),s.block(()=>{for(let f of l.rules)d(f);d(l.post)});function d(f){(0,M$.shouldUseGroup)(i,f)&&(f.type?(s.if((0,fO.checkDataType)(f.type,a,c.strictNumbers)),Hye(t,f),e.length===1&&e[0]===f.type&&r&&(s.else(),(0,fO.reportTypeError)(t)),s.endIf()):Hye(t,f),o||s.if((0,at._)`${Rt.default.errors} === ${n||0}`))}}function Hye(t,e){let{gen:r,schema:n,opts:{useDefaults:s}}=t;s&&(0,XCt.assignDefaults)(t,e.type),r.block(()=>{for(let i of e.rules)(0,M$.shouldUseRule)(n,i)&&eAe(t,i.keyword,i.definition,e.type)})}function p2t(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(m2t(t,e),t.opts.allowUnionTypes||h2t(t,e),g2t(t,t.dataTypes))}function m2t(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{Zye(t.dataTypes,r)||W$(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),A2t(t,e)}}function h2t(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&W$(t,"use allowUnionTypes to allow union type keyword")}function g2t(t,e){let r=t.self.RULES.all;for(let n in r){let s=r[n];if(typeof s=="object"&&(0,M$.shouldUseRule)(t.schema,s)){let{type:i}=s.definition;i.length&&!i.some(a=>y2t(e,a))&&W$(t,`missing type "${i.join(",")}" for keyword "${n}"`)}}}function y2t(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function Zye(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function A2t(t,e){let r=[];for(let n of t.dataTypes)Zye(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function W$(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,Pd.checkStrictMode)(t,e,t.opts.strictTypes)}var pO=class{constructor(e,r,n){if((0,wE.validateKeywordUsage)(e,r,n),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=n,this.data=e.data,this.schema=e.schema[n],this.$data=r.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,Pd.schemaRefOrVal)(e,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=e.schema,this.params={},this.it=e,this.def=r,this.$data)this.schemaCode=e.gen.const("vSchema",tAe(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,wE.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=e.gen.const("_errs",Rt.default.errors))}result(e,r,n){this.failResult((0,at.not)(e),r,n)}failResult(e,r,n){this.gen.if(e),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(e,r){this.failResult((0,at.not)(e),void 0,r)}fail(e){if(e===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(e),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(e){if(!this.$data)return this.fail(e);let{schemaCode:r}=this;this.fail((0,at._)`${r} !== undefined && (${(0,at.or)(this.invalid$data(),e)})`)}error(e,r,n){if(r){this.setParams(r),this._error(e,n),this.setParams({});return}this._error(e,n)}_error(e,r){(e?TE.reportExtraError:TE.reportError)(this,this.def.error,r)}$dataError(){(0,TE.reportError)(this,this.def.$dataError||TE.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,TE.resetErrorsCount)(this.gen,this.errsCount)}ok(e){this.allErrors||this.gen.if(e)}setParams(e,r){r?Object.assign(this.params,e):this.params=e}block$data(e,r,n=at.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=at.nil,r=at.nil){if(!this.$data)return;let{gen:n,schemaCode:s,schemaType:i,def:a}=this;n.if((0,at.or)((0,at._)`${s} === undefined`,r)),e!==at.nil&&n.assign(e,!0),(i.length||a.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==at.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:s,it:i}=this;return(0,at.or)(a(),o());function a(){if(n.length){if(!(r instanceof at.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,at._)`${(0,fO.checkDataTypes)(c,r,i.opts.strictNumbers,fO.DataType.Wrong)}`}return at.nil}function o(){if(s.validateSchema){let c=e.scopeValue("validate$data",{ref:s.validateSchema});return(0,at._)`!${c}(${r})`}return at.nil}}subschema(e,r){let n=(0,L$.getSubschema)(this.it,e);(0,L$.extendSubschemaData)(n,this.it,e),(0,L$.extendSubschemaMode)(n,e);let s={...this.it,...n,items:void 0,props:void 0};return i2t(s,r),s}mergeEvaluated(e,r){let{it:n,gen:s}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=Pd.mergeEvaluated.props(s,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=Pd.mergeEvaluated.items(s,e.items,n.items,r)))}mergeValidEvaluated(e,r){let{it:n,gen:s}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return s.if(r,()=>this.mergeEvaluated(e,at.Name)),!0}};$p.KeywordCxt=pO;function eAe(t,e,r,n){let s=new pO(t,r,e);"code"in r?r.code(s,n):s.$data&&r.validate?(0,wE.funcKeywordCode)(s,r):"macro"in r?(0,wE.macroKeywordCode)(s,r):(r.compile||r.validate)&&(0,wE.funcKeywordCode)(s,r)}var x2t=/^\/(?:[^~]|~0|~1)*$/,b2t=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function tAe(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let s,i;if(t==="")return Rt.default.rootData;if(t[0]==="/"){if(!x2t.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);s=t,i=Rt.default.rootData}else{let u=b2t.exec(t);if(!u)throw new Error(`Invalid JSON-pointer: ${t}`);let l=+u[1];if(s=u[2],s==="#"){if(l>=e)throw new Error(c("property/index",l));return n[e-l]}if(l>e)throw new Error(c("data",l));if(i=r[e-l],!s)return i}let a=i,o=s.split("/");for(let u of o)u&&(i=(0,at._)`${i}${(0,at.getProperty)((0,Pd.unescapeJsonPointer)(u))}`,a=(0,at._)`${a} && ${i}`);return a;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${e}`}}$p.getData=tAe});var mO=_(U$=>{"use strict";Object.defineProperty(U$,"__esModule",{value:!0});var $$=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};U$.default=$$});var NE=_(j$=>{"use strict";Object.defineProperty(j$,"__esModule",{value:!0});var F$=CE(),q$=class extends Error{constructor(e,r,n,s){super(s||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,F$.resolveUrl)(e,r,n),this.missingSchema=(0,F$.normalizeId)((0,F$.getFullPath)(e,this.missingRef))}};j$.default=q$});var gO=_(ic=>{"use strict";Object.defineProperty(ic,"__esModule",{value:!0});ic.resolveSchema=ic.getCompilingSchema=ic.resolveRef=ic.compileSchema=ic.SchemaEnv=void 0;var Xc=Vt(),_2t=mO(),Xm=kd(),Zc=CE(),rAe=Wr(),E2t=RE(),OA=class{constructor(e){var r;this.refs={},this.dynamicAnchors={};let n;typeof e.schema=="object"&&(n=e.schema),this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=(r=e.baseId)!==null&&r!==void 0?r:(0,Zc.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};ic.SchemaEnv=OA;function H$(t){let e=nAe.call(this,t);if(e)return e;let r=(0,Zc.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:s}=this.opts.code,{ownProperties:i}=this.opts,a=new Xc.CodeGen(this.scope,{es5:n,lines:s,ownProperties:i}),o;t.$async&&(o=a.scopeValue("Error",{ref:_2t.default,code:(0,Xc._)`require("ajv/dist/runtime/validation_error").default`}));let c=a.scopeName("validate");t.validateName=c;let u={gen:a,allErrors:this.opts.allErrors,data:Xm.default.data,parentData:Xm.default.parentData,parentDataProperty:Xm.default.parentDataProperty,dataNames:[Xm.default.data],dataPathArr:[Xc.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:a.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,Xc.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:o,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:Xc.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,Xc._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,E2t.validateFunctionCode)(u),a.optimize(this.opts.code.optimize);let d=a.toString();l=`${a.scopeRefs(Xm.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,t));let p=new Function(`${Xm.default.self}`,`${Xm.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:p}),p.errors=null,p.schema=t.schema,p.schemaEnv=t,t.$async&&(p.$async=!0),this.opts.code.source===!0&&(p.source={validateName:c,validateCode:d,scopeValues:a._values}),this.opts.unevaluated){let{props:m,items:h}=u;p.evaluated={props:m instanceof Xc.Name?void 0:m,items:h instanceof Xc.Name?void 0:h,dynamicProps:m instanceof Xc.Name,dynamicItems:h instanceof Xc.Name},p.source&&(p.source.evaluated=(0,Xc.stringify)(p.evaluated))}return t.validate=p,t}catch(d){throw delete t.validate,delete t.validateName,l&&this.logger.error("Error compiling schema, function code:",l),d}finally{this._compilations.delete(t)}}ic.compileSchema=H$;function v2t(t,e,r){var n;r=(0,Zc.resolveUrl)(this.opts.uriResolver,e,r);let s=t.refs[r];if(s)return s;let i=C2t.call(this,t,r);if(i===void 0){let a=(n=t.localRefs)===null||n===void 0?void 0:n[r],{schemaId:o}=this.opts;a&&(i=new OA({schema:a,schemaId:o,root:t,baseId:e}))}if(i!==void 0)return t.refs[r]=S2t.call(this,i)}ic.resolveRef=v2t;function S2t(t){return(0,Zc.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:H$.call(this,t)}function nAe(t){for(let e of this._compilations)if(I2t(e,t))return e}ic.getCompilingSchema=nAe;function I2t(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function C2t(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||hO.call(this,t,e)}function hO(t,e){let r=this.opts.uriResolver.parse(e),n=(0,Zc._getFullPath)(this.opts.uriResolver,r),s=(0,Zc.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===s)return Q$.call(this,r,t);let i=(0,Zc.normalizeId)(n),a=this.refs[i]||this.schemas[i];if(typeof a=="string"){let o=hO.call(this,t,a);return typeof o?.schema!="object"?void 0:Q$.call(this,r,o)}if(typeof a?.schema=="object"){if(a.validate||H$.call(this,a),i===(0,Zc.normalizeId)(e)){let{schema:o}=a,{schemaId:c}=this.opts,u=o[c];return u&&(s=(0,Zc.resolveUrl)(this.opts.uriResolver,s,u)),new OA({schema:o,schemaId:c,root:t,baseId:s})}return Q$.call(this,r,a)}}ic.resolveSchema=hO;var T2t=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function Q$(t,{baseId:e,schema:r,root:n}){var s;if(((s=t.fragment)===null||s===void 0?void 0:s[0])!=="/")return;for(let o of t.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let c=r[(0,rAe.unescapeFragment)(o)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!T2t.has(o)&&u&&(e=(0,Zc.resolveUrl)(this.opts.uriResolver,e,u))}let i;if(typeof r!="boolean"&&r.$ref&&!(0,rAe.schemaHasRulesButRef)(r,this.RULES)){let o=(0,Zc.resolveUrl)(this.opts.uriResolver,e,r.$ref);i=hO.call(this,n,o)}let{schemaId:a}=this.opts;if(i=i||new OA({schema:r,schemaId:a,root:n,baseId:e}),i.schema!==i.root.schema)return i}});var sAe=_((n8r,w2t)=>{w2t.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 z$=_((s8r,cAe)=>{"use strict";var R2t=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),aAe=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 G$(t){let e="",r=0,n=0;for(n=0;n=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";e+=t[n];break}for(n+=1;n=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";e+=t[n]}return e}var N2t=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function iAe(t){return t.length=0,!0}function O2t(t,e,r){if(t.length){let n=G$(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function k2t(t){let e=0,r={error:!1,address:"",zone:""},n=[],s=[],i=!1,a=!1,o=O2t;for(let c=0;c7){r.error=!0;break}c>0&&t[c-1]===":"&&(i=!0),n.push(":");continue}else if(u==="%"){if(!o(s,n,r))break;o=iAe}else{s.push(u);continue}}return s.length&&(o===iAe?r.zone=s.join(""):a?n.push(s.join("")):n.push(G$(s))),r.address=n.join(""),r}function oAe(t){if(P2t(t,":")<2)return{host:t,isIPV6:!1};let e=k2t(t);if(e.error)return{host:t,isIPV6:!1};{let r=e.address,n=e.address;return e.zone&&(r+="%"+e.zone,n+="%25"+e.zone),{host:r,isIPV6:!0,escapedHost:n}}}function P2t(t,e){let r=0;for(let n=0;n{"use strict";var{isUUID:M2t}=z$(),W2t=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,$2t=["http","https","ws","wss","urn","urn:uuid"];function U2t(t){return $2t.indexOf(t)!==-1}function K$(t){return t.secure===!0?!0:t.secure===!1?!1:t.scheme?t.scheme.length===3&&(t.scheme[0]==="w"||t.scheme[0]==="W")&&(t.scheme[1]==="s"||t.scheme[1]==="S")&&(t.scheme[2]==="s"||t.scheme[2]==="S"):!1}function uAe(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function lAe(t){let e=String(t.scheme).toLowerCase()==="https";return(t.port===(e?443:80)||t.port==="")&&(t.port=void 0),t.path||(t.path="/"),t}function F2t(t){return t.secure=K$(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function q2t(t){if((t.port===(K$(t)?443:80)||t.port==="")&&(t.port=void 0),typeof t.secure=="boolean"&&(t.scheme=t.secure?"wss":"ws",t.secure=void 0),t.resourceName){let[e,r]=t.resourceName.split("?");t.path=e&&e!=="/"?e:void 0,t.query=r,t.resourceName=void 0}return t.fragment=void 0,t}function j2t(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(W2t);if(r){let n=e.scheme||t.scheme||"urn";t.nid=r[1].toLowerCase(),t.nss=r[2];let s=`${n}:${e.nid||t.nid}`,i=V$(s);t.path=void 0,i&&(t=i.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function Q2t(t,e){if(t.nid===void 0)throw new Error("URN without nid cannot be serialized");let r=e.scheme||t.scheme||"urn",n=t.nid.toLowerCase(),s=`${r}:${e.nid||n}`,i=V$(s);i&&(t=i.serialize(t,e));let a=t,o=t.nss;return a.path=`${n||e.nid}:${o}`,e.skipEscape=!0,a}function H2t(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!M2t(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function G2t(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var dAe={scheme:"http",domainHost:!0,parse:uAe,serialize:lAe},z2t={scheme:"https",domainHost:dAe.domainHost,parse:uAe,serialize:lAe},yO={scheme:"ws",domainHost:!0,parse:F2t,serialize:q2t},K2t={scheme:"wss",domainHost:yO.domainHost,parse:yO.parse,serialize:yO.serialize},V2t={scheme:"urn",parse:j2t,serialize:Q2t,skipNormalize:!0},Y2t={scheme:"urn:uuid",parse:H2t,serialize:G2t,skipNormalize:!0},AO={http:dAe,https:z2t,ws:yO,wss:K2t,urn:V2t,"urn:uuid":Y2t};Object.setPrototypeOf(AO,null);function V$(t){return t&&(AO[t]||AO[t.toLowerCase()])||void 0}fAe.exports={wsIsSecure:K$,SCHEMES:AO,isValidSchemeName:U2t,getSchemeHandler:V$}});var gAe=_((a8r,bO)=>{"use strict";var{normalizeIPv6:J2t,removeDotSegments:OE,recomposeAuthority:X2t,normalizeComponentEncoding:xO,isIPv4:Z2t,nonSimpleDomain:eTt}=z$(),{SCHEMES:tTt,getSchemeHandler:mAe}=pAe();function rTt(t,e){return typeof t=="string"?t=tl(Dd(t,e),e):typeof t=="object"&&(t=Dd(tl(t,e),e)),t}function nTt(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},s=hAe(Dd(t,n),Dd(e,n),n,!0);return n.skipEscape=!0,tl(s,n)}function hAe(t,e,r,n){let s={};return n||(t=Dd(tl(t,r),r),e=Dd(tl(e,r),r)),r=r||{},!r.tolerant&&e.scheme?(s.scheme=e.scheme,s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=OE(e.path||""),s.query=e.query):(e.userinfo!==void 0||e.host!==void 0||e.port!==void 0?(s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=OE(e.path||""),s.query=e.query):(e.path?(e.path[0]==="/"?s.path=OE(e.path):((t.userinfo!==void 0||t.host!==void 0||t.port!==void 0)&&!t.path?s.path="/"+e.path:t.path?s.path=t.path.slice(0,t.path.lastIndexOf("/")+1)+e.path:s.path=e.path,s.path=OE(s.path)),s.query=e.query):(s.path=t.path,e.query!==void 0?s.query=e.query:s.query=t.query),s.userinfo=t.userinfo,s.host=t.host,s.port=t.port),s.scheme=t.scheme),s.fragment=e.fragment,s}function sTt(t,e,r){return typeof t=="string"?(t=unescape(t),t=tl(xO(Dd(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=tl(xO(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=tl(xO(Dd(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=tl(xO(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function tl(t,e){let r={host:t.host,scheme:t.scheme,userinfo:t.userinfo,port:t.port,path:t.path,query:t.query,nid:t.nid,nss:t.nss,uuid:t.uuid,fragment:t.fragment,reference:t.reference,resourceName:t.resourceName,secure:t.secure,error:""},n=Object.assign({},e),s=[],i=mAe(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=X2t(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=OE(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 iTt=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function Dd(t,e){let r=Object.assign({},e),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?t=r.scheme+":"+t:t="//"+t);let i=t.match(iTt);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(Z2t(n.host)===!1){let c=J2t(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=mAe(r.scheme||n.scheme);if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&s===!1&&eTt(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)&&(t.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 Y$={SCHEMES:tTt,normalize:rTt,resolve:nTt,resolveComponent:hAe,equal:sTt,serialize:tl,parse:Dd};bO.exports=Y$;bO.exports.default=Y$;bO.exports.fastUri=Y$});var AAe=_(J$=>{"use strict";Object.defineProperty(J$,"__esModule",{value:!0});var yAe=gAe();yAe.code='require("ajv/dist/runtime/uri").default';J$.default=yAe});var CAe=_(gi=>{"use strict";Object.defineProperty(gi,"__esModule",{value:!0});gi.CodeGen=gi.Name=gi.nil=gi.stringify=gi.str=gi._=gi.KeywordCxt=void 0;var aTt=RE();Object.defineProperty(gi,"KeywordCxt",{enumerable:!0,get:function(){return aTt.KeywordCxt}});var kA=Vt();Object.defineProperty(gi,"_",{enumerable:!0,get:function(){return kA._}});Object.defineProperty(gi,"str",{enumerable:!0,get:function(){return kA.str}});Object.defineProperty(gi,"stringify",{enumerable:!0,get:function(){return kA.stringify}});Object.defineProperty(gi,"nil",{enumerable:!0,get:function(){return kA.nil}});Object.defineProperty(gi,"Name",{enumerable:!0,get:function(){return kA.Name}});Object.defineProperty(gi,"CodeGen",{enumerable:!0,get:function(){return kA.CodeGen}});var oTt=mO(),vAe=NE(),cTt=T$(),kE=gO(),uTt=Vt(),PE=CE(),_O=IE(),Z$=Wr(),xAe=sAe(),lTt=AAe(),SAe=(t,e)=>new RegExp(t,e);SAe.code="new RegExp";var dTt=["removeAdditional","useDefaults","coerceTypes"],fTt=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),pTt={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."},mTt={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},bAe=200;function hTt(t){var e,r,n,s,i,a,o,c,u,l,d,f,p,m,h,y,g,b,x,A,S,I,R,w,N;let k=t.strict,B=(e=t.code)===null||e===void 0?void 0:e.optimize,M=B===!0||B===void 0?1:B||0,D=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:SAe,L=(s=t.uriResolver)!==null&&s!==void 0?s:lTt.default;return{strictSchema:(a=(i=t.strictSchema)!==null&&i!==void 0?i:k)!==null&&a!==void 0?a:!0,strictNumbers:(c=(o=t.strictNumbers)!==null&&o!==void 0?o:k)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:k)!==null&&l!==void 0?l:"log",strictTuples:(f=(d=t.strictTuples)!==null&&d!==void 0?d:k)!==null&&f!==void 0?f:"log",strictRequired:(m=(p=t.strictRequired)!==null&&p!==void 0?p:k)!==null&&m!==void 0?m:!1,code:t.code?{...t.code,optimize:M,regExp:D}:{optimize:M,regExp:D},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:bAe,loopEnum:(y=t.loopEnum)!==null&&y!==void 0?y:bAe,meta:(g=t.meta)!==null&&g!==void 0?g:!0,messages:(b=t.messages)!==null&&b!==void 0?b:!0,inlineRefs:(x=t.inlineRefs)!==null&&x!==void 0?x:!0,schemaId:(A=t.schemaId)!==null&&A!==void 0?A:"$id",addUsedSchema:(S=t.addUsedSchema)!==null&&S!==void 0?S:!0,validateSchema:(I=t.validateSchema)!==null&&I!==void 0?I:!0,validateFormats:(R=t.validateFormats)!==null&&R!==void 0?R:!0,unicodeRegExp:(w=t.unicodeRegExp)!==null&&w!==void 0?w:!0,int32range:(N=t.int32range)!==null&&N!==void 0?N:!0,uriResolver:L}}var DE=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...hTt(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new uTt.ValueScope({scope:{},prefixes:fTt,es5:r,lines:n}),this.logger=_Tt(e.logger);let s=e.validateFormats;e.validateFormats=!1,this.RULES=(0,cTt.getRules)(),_Ae.call(this,pTt,e,"NOT SUPPORTED"),_Ae.call(this,mTt,e,"DEPRECATED","warn"),this._metaOpts=xTt.call(this),e.formats&&yTt.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&ATt.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),gTt.call(this),e.validateFormats=s}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,s=xAe;n==="id"&&(s={...xAe},s.id=s.$id,delete s.$id),r&&e&&this.addMetaSchema(s,s[n],!1)}defaultMeta(){let{meta:e,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof e=="object"?e[r]||e:void 0}validate(e,r){let n;if(typeof e=="string"){if(n=this.getSchema(e),!n)throw new Error(`no schema with key or ref "${e}"`)}else n=this.compile(e);let s=n(r);return"$async"in n||(this.errors=n.errors),s}compile(e,r){let n=this._addSchema(e,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(e,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,e,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 vAe.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(e,r,n,s=this.opts.validateSchema){if(Array.isArray(e)){for(let a of e)this.addSchema(a,void 0,n,s);return this}let i;if(typeof e=="object"){let{schemaId:a}=this.opts;if(i=e[a],i!==void 0&&typeof i!="string")throw new Error(`schema ${a} must be string`)}return r=(0,PE.normalizeId)(r||i),this._checkUnique(r),this.schemas[r]=this._addSchema(e,n,r,s,!0),this}addMetaSchema(e,r,n=this.opts.validateSchema){return this.addSchema(e,r,!0,n),this}validateSchema(e,r){if(typeof e=="boolean")return!0;let n;if(n=e.$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,e);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(e){let r;for(;typeof(r=EAe.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,s=new kE.SchemaEnv({schema:{},schemaId:n});if(r=kE.resolveSchema.call(this,s,e),!r)return;this.refs[e]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(e){if(e instanceof RegExp)return this._removeAllSchemas(this.schemas,e),this._removeAllSchemas(this.refs,e),this;switch(typeof e){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=EAe.call(this,e);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[e],delete this.refs[e],this}case"object":{let r=e;this._cache.delete(r);let n=e[this.opts.schemaId];return n&&(n=(0,PE.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(e){for(let r of e)this.addKeyword(r);return this}addKeyword(e,r){let n;if(typeof e=="string")n=e,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof e=="object"&&r===void 0){if(r=e,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(vTt.call(this,n,r),!r)return(0,Z$.eachItem)(n,i=>X$.call(this,i)),this;ITt.call(this,r);let s={...r,type:(0,_O.getJSONTypes)(r.type),schemaType:(0,_O.getJSONTypes)(r.schemaType)};return(0,Z$.eachItem)(n,s.type.length===0?i=>X$.call(this,i,s):i=>s.type.forEach(a=>X$.call(this,i,s,a))),this}getKeyword(e){let r=this.RULES.all[e];return typeof r=="object"?r.definition:!!r}removeKeyword(e){let{RULES:r}=this;delete r.keywords[e],delete r.all[e];for(let n of r.rules){let s=n.rules.findIndex(i=>i.keyword===e);s>=0&&n.rules.splice(s,1)}return this}addFormat(e,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[e]=r,this}errorsText(e=this.errors,{separator:r=", ",dataVar:n="data"}={}){return!e||e.length===0?"No errors":e.map(s=>`${n}${s.instancePath} ${s.message}`).reduce((s,i)=>s+r+i)}$dataMetaSchema(e,r){let n=this.RULES.all;e=JSON.parse(JSON.stringify(e));for(let s of r){let i=s.split("/").slice(1),a=e;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]=IAe(l))}}return e}_removeAllSchemas(e,r){for(let n in e){let s=e[n];(!r||r.test(n))&&(typeof s=="string"?delete e[n]:s&&!s.meta&&(this._cache.delete(s.schema),delete e[n]))}}_addSchema(e,r,n,s=this.opts.validateSchema,i=this.opts.addUsedSchema){let a,{schemaId:o}=this.opts;if(typeof e=="object")a=e[o];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof e!="boolean")throw new Error("schema must be object or boolean")}let c=this._cache.get(e);if(c!==void 0)return c;n=(0,PE.normalizeId)(a||n);let u=PE.getSchemaRefs.call(this,e,n);return c=new kE.SchemaEnv({schema:e,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(e,!0),c}_checkUnique(e){if(this.schemas[e]||this.refs[e])throw new Error(`schema with key or id "${e}" already exists`)}_compileSchemaEnv(e){if(e.meta?this._compileMetaSchema(e):kE.compileSchema.call(this,e),!e.validate)throw new Error("ajv implementation error");return e.validate}_compileMetaSchema(e){let r=this.opts;this.opts=this._metaOpts;try{kE.compileSchema.call(this,e)}finally{this.opts=r}}};DE.ValidationError=oTt.default;DE.MissingRefError=vAe.default;gi.default=DE;function _Ae(t,e,r,n="error"){for(let s in t){let i=s;i in e&&this.logger[n](`${r}: option ${s}. ${t[i]}`)}}function EAe(t){return t=(0,PE.normalizeId)(t),this.schemas[t]||this.refs[t]}function gTt(){let t=this.opts.schemas;if(t)if(Array.isArray(t))this.addSchema(t);else for(let e in t)this.addSchema(t[e],e)}function yTt(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function ATt(t){if(Array.isArray(t)){this.addVocabulary(t);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let e in t){let r=t[e];r.keyword||(r.keyword=e),this.addKeyword(r)}}function xTt(){let t={...this.opts};for(let e of dTt)delete t[e];return t}var bTt={log(){},warn(){},error(){}};function _Tt(t){if(t===!1)return bTt;if(t===void 0)return console;if(t.log&&t.warn&&t.error)return t;throw new Error("logger must implement log, warn and error methods")}var ETt=/^[a-z_$][a-z0-9_$:-]*$/i;function vTt(t,e){let{RULES:r}=this;if((0,Z$.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!ETt.test(n))throw new Error(`Keyword ${n} has invalid name`)}),!!e&&e.$data&&!("code"in e||"validate"in e))throw new Error('$data keyword must have "code" or "validate" function')}function X$(t,e,r){var n;let s=e?.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[t]=!0,!e)return;let o={keyword:t,definition:{...e,type:(0,_O.getJSONTypes)(e.type),schemaType:(0,_O.getJSONTypes)(e.schemaType)}};e.before?STt.call(this,a,o,e.before):a.rules.push(o),i.all[t]=o,(n=e.implements)===null||n===void 0||n.forEach(c=>this.addKeyword(c))}function STt(t,e,r){let n=t.rules.findIndex(s=>s.keyword===r);n>=0?t.rules.splice(n,0,e):(t.rules.push(e),this.logger.warn(`rule ${r} is not defined`))}function ITt(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=IAe(e)),t.validateSchema=this.compile(e,!0))}var CTt={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function IAe(t){return{anyOf:[t,CTt]}}});var TAe=_(eU=>{"use strict";Object.defineProperty(eU,"__esModule",{value:!0});var TTt={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};eU.default=TTt});var OAe=_(Zm=>{"use strict";Object.defineProperty(Zm,"__esModule",{value:!0});Zm.callRef=Zm.getValidate=void 0;var wTt=NE(),wAe=nc(),Qa=Vt(),PA=kd(),RAe=gO(),EO=Wr(),RTt={keyword:"$ref",schemaType:"string",code(t){let{gen:e,schema:r,it:n}=t,{baseId:s,schemaEnv:i,validateName:a,opts:o,self:c}=n,{root:u}=i;if((r==="#"||r==="#/")&&s===u.baseId)return d();let l=RAe.resolveRef.call(c,u,s,r);if(l===void 0)throw new wTt.default(n.opts.uriResolver,s,r);if(l instanceof RAe.SchemaEnv)return f(l);return p(l);function d(){if(i===u)return vO(t,a,i,i.$async);let m=e.scopeValue("root",{ref:u});return vO(t,(0,Qa._)`${m}.validate`,u,u.$async)}function f(m){let h=NAe(t,m);vO(t,h,m,m.$async)}function p(m){let h=e.scopeValue("schema",o.code.source===!0?{ref:m,code:(0,Qa.stringify)(m)}:{ref:m}),y=e.name("valid"),g=t.subschema({schema:m,dataTypes:[],schemaPath:Qa.nil,topSchemaRef:h,errSchemaPath:r},y);t.mergeEvaluated(g),t.ok(y)}}};function NAe(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,Qa._)`${r.scopeValue("wrapper",{ref:e})}.validate`}Zm.getValidate=NAe;function vO(t,e,r,n){let{gen:s,it:i}=t,{allErrors:a,schemaEnv:o,opts:c}=i,u=c.passContext?PA.default.this:Qa.nil;n?l():d();function l(){if(!o.$async)throw new Error("async schema referenced by sync schema");let m=s.let("valid");s.try(()=>{s.code((0,Qa._)`await ${(0,wAe.callValidateCode)(t,e,u)}`),p(e),a||s.assign(m,!0)},h=>{s.if((0,Qa._)`!(${h} instanceof ${i.ValidationError})`,()=>s.throw(h)),f(h),a||s.assign(m,!1)}),t.ok(m)}function d(){t.result((0,wAe.callValidateCode)(t,e,u),()=>p(e),()=>f(e))}function f(m){let h=(0,Qa._)`${m}.errors`;s.assign(PA.default.vErrors,(0,Qa._)`${PA.default.vErrors} === null ? ${h} : ${PA.default.vErrors}.concat(${h})`),s.assign(PA.default.errors,(0,Qa._)`${PA.default.vErrors}.length`)}function p(m){var h;if(!i.opts.unevaluated)return;let y=(h=r?.validate)===null||h===void 0?void 0:h.evaluated;if(i.props!==!0)if(y&&!y.dynamicProps)y.props!==void 0&&(i.props=EO.mergeEvaluated.props(s,y.props,i.props));else{let g=s.var("props",(0,Qa._)`${m}.evaluated.props`);i.props=EO.mergeEvaluated.props(s,g,i.props,Qa.Name)}if(i.items!==!0)if(y&&!y.dynamicItems)y.items!==void 0&&(i.items=EO.mergeEvaluated.items(s,y.items,i.items));else{let g=s.var("items",(0,Qa._)`${m}.evaluated.items`);i.items=EO.mergeEvaluated.items(s,g,i.items,Qa.Name)}}}Zm.callRef=vO;Zm.default=RTt});var kAe=_(tU=>{"use strict";Object.defineProperty(tU,"__esModule",{value:!0});var NTt=TAe(),OTt=OAe(),kTt=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",NTt.default,OTt.default];tU.default=kTt});var PAe=_(rU=>{"use strict";Object.defineProperty(rU,"__esModule",{value:!0});var SO=Vt(),Up=SO.operators,IO={maximum:{okStr:"<=",ok:Up.LTE,fail:Up.GT},minimum:{okStr:">=",ok:Up.GTE,fail:Up.LT},exclusiveMaximum:{okStr:"<",ok:Up.LT,fail:Up.GTE},exclusiveMinimum:{okStr:">",ok:Up.GT,fail:Up.LTE}},PTt={message:({keyword:t,schemaCode:e})=>(0,SO.str)`must be ${IO[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,SO._)`{comparison: ${IO[t].okStr}, limit: ${e}}`},DTt={keyword:Object.keys(IO),type:"number",schemaType:"number",$data:!0,error:PTt,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,SO._)`${r} ${IO[e].fail} ${n} || isNaN(${r})`)}};rU.default=DTt});var DAe=_(nU=>{"use strict";Object.defineProperty(nU,"__esModule",{value:!0});var BE=Vt(),BTt={message:({schemaCode:t})=>(0,BE.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,BE._)`{multipleOf: ${t}}`},LTt={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:BTt,code(t){let{gen:e,data:r,schemaCode:n,it:s}=t,i=s.opts.multipleOfPrecision,a=e.let("res"),o=i?(0,BE._)`Math.abs(Math.round(${a}) - ${a}) > 1e-${i}`:(0,BE._)`${a} !== parseInt(${a})`;t.fail$data((0,BE._)`(${n} === 0 || (${a} = ${r}/${n}, ${o}))`)}};nU.default=LTt});var LAe=_(sU=>{"use strict";Object.defineProperty(sU,"__esModule",{value:!0});function BAe(t){let e=t.length,r=0,n=0,s;for(;n=55296&&s<=56319&&n{"use strict";Object.defineProperty(iU,"__esModule",{value:!0});var eh=Vt(),MTt=Wr(),WTt=LAe(),$Tt={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,eh.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,eh._)`{limit: ${t}}`},UTt={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:$Tt,code(t){let{keyword:e,data:r,schemaCode:n,it:s}=t,i=e==="maxLength"?eh.operators.GT:eh.operators.LT,a=s.opts.unicode===!1?(0,eh._)`${r}.length`:(0,eh._)`${(0,MTt.useFunc)(t.gen,WTt.default)}(${r})`;t.fail$data((0,eh._)`${a} ${i} ${n}`)}};iU.default=UTt});var WAe=_(aU=>{"use strict";Object.defineProperty(aU,"__esModule",{value:!0});var FTt=nc(),CO=Vt(),qTt={message:({schemaCode:t})=>(0,CO.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,CO._)`{pattern: ${t}}`},jTt={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:qTt,code(t){let{data:e,$data:r,schema:n,schemaCode:s,it:i}=t,a=i.opts.unicodeRegExp?"u":"",o=r?(0,CO._)`(new RegExp(${s}, ${a}))`:(0,FTt.usePattern)(t,n);t.fail$data((0,CO._)`!${o}.test(${e})`)}};aU.default=jTt});var $Ae=_(oU=>{"use strict";Object.defineProperty(oU,"__esModule",{value:!0});var LE=Vt(),QTt={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,LE.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,LE._)`{limit: ${t}}`},HTt={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:QTt,code(t){let{keyword:e,data:r,schemaCode:n}=t,s=e==="maxProperties"?LE.operators.GT:LE.operators.LT;t.fail$data((0,LE._)`Object.keys(${r}).length ${s} ${n}`)}};oU.default=HTt});var UAe=_(cU=>{"use strict";Object.defineProperty(cU,"__esModule",{value:!0});var ME=nc(),WE=Vt(),GTt=Wr(),zTt={message:({params:{missingProperty:t}})=>(0,WE.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,WE._)`{missingProperty: ${t}}`},KTt={keyword:"required",type:"object",schemaType:"array",$data:!0,error:zTt,code(t){let{gen:e,schema:r,schemaCode:n,data:s,$data:i,it:a}=t,{opts:o}=a;if(!i&&r.length===0)return;let c=r.length>=o.loopRequired;if(a.allErrors?u():l(),o.strictRequired){let p=t.parentSchema.properties,{definedProperties:m}=t.it;for(let h of r)if(p?.[h]===void 0&&!m.has(h)){let y=a.schemaEnv.baseId+a.errSchemaPath,g=`required property "${h}" is not defined at "${y}" (strictRequired)`;(0,GTt.checkStrictMode)(a,g,a.opts.strictRequired)}}function u(){if(c||i)t.block$data(WE.nil,d);else for(let p of r)(0,ME.checkReportMissingProp)(t,p)}function l(){let p=e.let("missing");if(c||i){let m=e.let("valid",!0);t.block$data(m,()=>f(p,m)),t.ok(m)}else e.if((0,ME.checkMissingProp)(t,r,p)),(0,ME.reportMissingProp)(t,p),e.else()}function d(){e.forOf("prop",n,p=>{t.setParams({missingProperty:p}),e.if((0,ME.noPropertyInData)(e,s,p,o.ownProperties),()=>t.error())})}function f(p,m){t.setParams({missingProperty:p}),e.forOf(p,n,()=>{e.assign(m,(0,ME.propertyInData)(e,s,p,o.ownProperties)),e.if((0,WE.not)(m),()=>{t.error(),e.break()})},WE.nil)}}};cU.default=KTt});var FAe=_(uU=>{"use strict";Object.defineProperty(uU,"__esModule",{value:!0});var $E=Vt(),VTt={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,$E.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,$E._)`{limit: ${t}}`},YTt={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:VTt,code(t){let{keyword:e,data:r,schemaCode:n}=t,s=e==="maxItems"?$E.operators.GT:$E.operators.LT;t.fail$data((0,$E._)`${r}.length ${s} ${n}`)}};uU.default=YTt});var UE=_(lU=>{"use strict";Object.defineProperty(lU,"__esModule",{value:!0});var qAe=sc();qAe.code='require("ajv/dist/runtime/equal").default';lU.default=qAe});var jAe=_(fU=>{"use strict";Object.defineProperty(fU,"__esModule",{value:!0});var dU=IE(),yi=Vt(),JTt=Wr(),XTt=UE(),ZTt={message:({params:{i:t,j:e}})=>(0,yi.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,yi._)`{i: ${t}, j: ${e}}`},ewt={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:ZTt,code(t){let{gen:e,data:r,$data:n,schema:s,parentSchema:i,schemaCode:a,it:o}=t;if(!n&&!s)return;let c=e.let("valid"),u=i.items?(0,dU.getSchemaTypes)(i.items):[];t.block$data(c,l,(0,yi._)`${a} === false`),t.ok(c);function l(){let m=e.let("i",(0,yi._)`${r}.length`),h=e.let("j");t.setParams({i:m,j:h}),e.assign(c,!0),e.if((0,yi._)`${m} > 1`,()=>(d()?f:p)(m,h))}function d(){return u.length>0&&!u.some(m=>m==="object"||m==="array")}function f(m,h){let y=e.name("item"),g=(0,dU.checkDataTypes)(u,y,o.opts.strictNumbers,dU.DataType.Wrong),b=e.const("indices",(0,yi._)`{}`);e.for((0,yi._)`;${m}--;`,()=>{e.let(y,(0,yi._)`${r}[${m}]`),e.if(g,(0,yi._)`continue`),u.length>1&&e.if((0,yi._)`typeof ${y} == "string"`,(0,yi._)`${y} += "_"`),e.if((0,yi._)`typeof ${b}[${y}] == "number"`,()=>{e.assign(h,(0,yi._)`${b}[${y}]`),t.error(),e.assign(c,!1).break()}).code((0,yi._)`${b}[${y}] = ${m}`)})}function p(m,h){let y=(0,JTt.useFunc)(e,XTt.default),g=e.name("outer");e.label(g).for((0,yi._)`;${m}--;`,()=>e.for((0,yi._)`${h} = ${m}; ${h}--;`,()=>e.if((0,yi._)`${y}(${r}[${m}], ${r}[${h}])`,()=>{t.error(),e.assign(c,!1).break(g)})))}}};fU.default=ewt});var QAe=_(mU=>{"use strict";Object.defineProperty(mU,"__esModule",{value:!0});var pU=Vt(),twt=Wr(),rwt=UE(),nwt={message:"must be equal to constant",params:({schemaCode:t})=>(0,pU._)`{allowedValue: ${t}}`},swt={keyword:"const",$data:!0,error:nwt,code(t){let{gen:e,data:r,$data:n,schemaCode:s,schema:i}=t;n||i&&typeof i=="object"?t.fail$data((0,pU._)`!${(0,twt.useFunc)(e,rwt.default)}(${r}, ${s})`):t.fail((0,pU._)`${i} !== ${r}`)}};mU.default=swt});var HAe=_(hU=>{"use strict";Object.defineProperty(hU,"__esModule",{value:!0});var FE=Vt(),iwt=Wr(),awt=UE(),owt={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,FE._)`{allowedValues: ${t}}`},cwt={keyword:"enum",schemaType:"array",$data:!0,error:owt,code(t){let{gen:e,data:r,$data:n,schema:s,schemaCode:i,it:a}=t;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,iwt.useFunc)(e,awt.default)),l;if(o||n)l=e.let("valid"),t.block$data(l,d);else{if(!Array.isArray(s))throw new Error("ajv implementation error");let p=e.const("vSchema",i);l=(0,FE.or)(...s.map((m,h)=>f(p,h)))}t.pass(l);function d(){e.assign(l,!1),e.forOf("v",i,p=>e.if((0,FE._)`${u()}(${r}, ${p})`,()=>e.assign(l,!0).break()))}function f(p,m){let h=s[m];return typeof h=="object"&&h!==null?(0,FE._)`${u()}(${r}, ${p}[${m}])`:(0,FE._)`${r} === ${h}`}}};hU.default=cwt});var GAe=_(gU=>{"use strict";Object.defineProperty(gU,"__esModule",{value:!0});var uwt=PAe(),lwt=DAe(),dwt=MAe(),fwt=WAe(),pwt=$Ae(),mwt=UAe(),hwt=FAe(),gwt=jAe(),ywt=QAe(),Awt=HAe(),xwt=[uwt.default,lwt.default,dwt.default,fwt.default,pwt.default,mwt.default,hwt.default,gwt.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},ywt.default,Awt.default];gU.default=xwt});var AU=_(qE=>{"use strict";Object.defineProperty(qE,"__esModule",{value:!0});qE.validateAdditionalItems=void 0;var th=Vt(),yU=Wr(),bwt={message:({params:{len:t}})=>(0,th.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,th._)`{limit: ${t}}`},_wt={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:bwt,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,yU.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}zAe(t,n)}};function zAe(t,e){let{gen:r,schema:n,data:s,keyword:i,it:a}=t;a.items=!0;let o=r.const("len",(0,th._)`${s}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,th._)`${o} <= ${e.length}`);else if(typeof n=="object"&&!(0,yU.alwaysValidSchema)(a,n)){let u=r.var("valid",(0,th._)`${o} <= ${e.length}`);r.if((0,th.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,o,l=>{t.subschema({keyword:i,dataProp:l,dataPropType:yU.Type.Num},u),a.allErrors||r.if((0,th.not)(u),()=>r.break())})}}qE.validateAdditionalItems=zAe;qE.default=_wt});var xU=_(jE=>{"use strict";Object.defineProperty(jE,"__esModule",{value:!0});jE.validateTuple=void 0;var KAe=Vt(),TO=Wr(),Ewt=nc(),vwt={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return VAe(t,"additionalItems",e);r.items=!0,!(0,TO.alwaysValidSchema)(r,e)&&t.ok((0,Ewt.validateArray)(t))}};function VAe(t,e,r=t.schema){let{gen:n,parentSchema:s,data:i,keyword:a,it:o}=t;l(s),o.opts.unevaluated&&r.length&&o.items!==!0&&(o.items=TO.mergeEvaluated.items(n,r.length,o.items));let c=n.name("valid"),u=n.const("len",(0,KAe._)`${i}.length`);r.forEach((d,f)=>{(0,TO.alwaysValidSchema)(o,d)||(n.if((0,KAe._)`${u} > ${f}`,()=>t.subschema({keyword:a,schemaProp:f,dataProp:f},c)),t.ok(c))});function l(d){let{opts:f,errSchemaPath:p}=o,m=r.length,h=m===d.minItems&&(m===d.maxItems||d[e]===!1);if(f.strictTuples&&!h){let y=`"${a}" is ${m}-tuple, but minItems or maxItems/${e} are not specified or different at path "${p}"`;(0,TO.checkStrictMode)(o,y,f.strictTuples)}}}jE.validateTuple=VAe;jE.default=vwt});var YAe=_(bU=>{"use strict";Object.defineProperty(bU,"__esModule",{value:!0});var Swt=xU(),Iwt={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,Swt.validateTuple)(t,"items")};bU.default=Iwt});var XAe=_(_U=>{"use strict";Object.defineProperty(_U,"__esModule",{value:!0});var JAe=Vt(),Cwt=Wr(),Twt=nc(),wwt=AU(),Rwt={message:({params:{len:t}})=>(0,JAe.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,JAe._)`{limit: ${t}}`},Nwt={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:Rwt,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:s}=r;n.items=!0,!(0,Cwt.alwaysValidSchema)(n,e)&&(s?(0,wwt.validateAdditionalItems)(t,s):t.ok((0,Twt.validateArray)(t)))}};_U.default=Nwt});var ZAe=_(EU=>{"use strict";Object.defineProperty(EU,"__esModule",{value:!0});var ac=Vt(),wO=Wr(),Owt={message:({params:{min:t,max:e}})=>e===void 0?(0,ac.str)`must contain at least ${t} valid item(s)`:(0,ac.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,ac._)`{minContains: ${t}}`:(0,ac._)`{minContains: ${t}, maxContains: ${e}}`},kwt={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:Owt,code(t){let{gen:e,schema:r,parentSchema:n,data:s,it:i}=t,a,o,{minContains:c,maxContains:u}=n;i.opts.next?(a=c===void 0?1:c,o=u):a=1;let l=e.const("len",(0,ac._)`${s}.length`);if(t.setParams({min:a,max:o}),o===void 0&&a===0){(0,wO.checkStrictMode)(i,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(o!==void 0&&a>o){(0,wO.checkStrictMode)(i,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,wO.alwaysValidSchema)(i,r)){let h=(0,ac._)`${l} >= ${a}`;o!==void 0&&(h=(0,ac._)`${h} && ${l} <= ${o}`),t.pass(h);return}i.items=!0;let d=e.name("valid");o===void 0&&a===1?p(d,()=>e.if(d,()=>e.break())):a===0?(e.let(d,!0),o!==void 0&&e.if((0,ac._)`${s}.length > 0`,f)):(e.let(d,!1),f()),t.result(d,()=>t.reset());function f(){let h=e.name("_valid"),y=e.let("count",0);p(h,()=>e.if(h,()=>m(y)))}function p(h,y){e.forRange("i",0,l,g=>{t.subschema({keyword:"contains",dataProp:g,dataPropType:wO.Type.Num,compositeRule:!0},h),y()})}function m(h){e.code((0,ac._)`${h}++`),o===void 0?e.if((0,ac._)`${h} >= ${a}`,()=>e.assign(d,!0).break()):(e.if((0,ac._)`${h} > ${o}`,()=>e.assign(d,!1).break()),a===1?e.assign(d,!0):e.if((0,ac._)`${h} >= ${a}`,()=>e.assign(d,!0)))}}};EU.default=kwt});var rxe=_(rl=>{"use strict";Object.defineProperty(rl,"__esModule",{value:!0});rl.validateSchemaDeps=rl.validatePropertyDeps=rl.error=void 0;var vU=Vt(),Pwt=Wr(),QE=nc();rl.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,vU.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,vU._)`{property: ${t}, missingProperty: ${n}, depsCount: ${e}, - deps: ${r}}`};var Cvt={keyword:"dependencies",type:"object",schemaType:"object",error:ju.error,code(t){let[e,r]=Ivt(t);cge(t,e),uge(t,r)}};function Ivt({schema:t}){let e={},r={};for(let n in t){if(n==="__proto__")continue;let s=Array.isArray(t[n])?e:r;s[n]=t[n]}return[e,r]}function cge(t,e=t.schema){let{gen:r,data:n,it:s}=t;if(Object.keys(e).length===0)return;let i=r.let("missing");for(let a in e){let o=e[a];if(o.length===0)continue;let c=(0,W1.propertyInData)(r,n,a,s.opts.ownProperties);t.setParams({property:a,depsCount:o.length,deps:o.join(", ")}),s.allErrors?r.if(c,()=>{for(let u of o)(0,W1.checkReportMissingProp)(t,u)}):(r.if((0,EW._)`${c} && (${(0,W1.checkMissingProp)(t,o,i)})`),(0,W1.reportMissingProp)(t,i),r.else())}}ju.validatePropertyDeps=cge;function uge(t,e=t.schema){let{gen:r,data:n,keyword:s,it:i}=t,a=r.name("valid");for(let o in e)(0,vvt.alwaysValidSchema)(i,e[o])||(r.if((0,W1.propertyInData)(r,n,o,i.opts.ownProperties),()=>{let c=t.subschema({keyword:s,schemaProp:o},a);t.mergeValidEvaluated(c,a)},()=>r.var(a,!0)),t.ok(a))}ju.validateSchemaDeps=uge;ju.default=Cvt});var fge=E(_W=>{"use strict";Object.defineProperty(_W,"__esModule",{value:!0});var dge=zt(),Tvt=Lr(),wvt={message:"property name must be valid",params:({params:t})=>(0,dge._)`{propertyName: ${t.propertyName}}`},Rvt={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:wvt,code(t){let{gen:e,schema:r,data:n,it:s}=t;if((0,Tvt.alwaysValidSchema)(s,r))return;let i=e.name("valid");e.forIn("key",n,a=>{t.setParams({propertyName:a}),t.subschema({keyword:"propertyNames",data:a,dataTypes:["string"],propertyName:a,compositeRule:!0},i),e.if((0,dge.not)(i),()=>{t.error(!0),s.allErrors||e.break()})}),t.ok(i)}};_W.default=Rvt});var vW=E(SW=>{"use strict";Object.defineProperty(SW,"__esModule",{value:!0});var iN=Qo(),qc=zt(),Nvt=fd(),aN=Lr(),Ovt={message:"must NOT have additional properties",params:({params:t})=>(0,qc._)`{additionalProperty: ${t.additionalProperty}}`},Pvt={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:Ovt,code(t){let{gen:e,schema:r,parentSchema:n,data:s,errsCount:i,it:a}=t;if(!i)throw new Error("ajv implementation error");let{allErrors:o,opts:c}=a;if(a.props=!0,c.removeAdditional!=="all"&&(0,aN.alwaysValidSchema)(a,r))return;let u=(0,iN.allSchemaProperties)(n.properties),l=(0,iN.allSchemaProperties)(n.patternProperties);d(),t.ok((0,qc._)`${i} === ${Nvt.default.errors}`);function d(){e.forIn("key",s,A=>{!u.length&&!l.length?m(A):e.if(f(A),()=>m(A))})}function f(A){let g;if(u.length>8){let b=(0,aN.schemaRefOrVal)(a,n.properties,"properties");g=(0,iN.isOwnProperty)(e,b,A)}else u.length?g=(0,qc.or)(...u.map(b=>(0,qc._)`${A} === ${b}`)):g=qc.nil;return l.length&&(g=(0,qc.or)(g,...l.map(b=>(0,qc._)`${(0,iN.usePattern)(t,b)}.test(${A})`))),(0,qc.not)(g)}function p(A){e.code((0,qc._)`delete ${s}[${A}]`)}function m(A){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){p(A);return}if(r===!1){t.setParams({additionalProperty:A}),t.error(),o||e.break();return}if(typeof r=="object"&&!(0,aN.alwaysValidSchema)(a,r)){let g=e.name("valid");c.removeAdditional==="failing"?(h(A,g,!1),e.if((0,qc.not)(g),()=>{t.reset(),p(A)})):(h(A,g),o||e.if((0,qc.not)(g),()=>e.break()))}}function h(A,g,b){let y={keyword:"additionalProperties",dataProp:A,dataPropType:aN.Type.Str};b===!1&&Object.assign(y,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(y,g)}}};SW.default=Pvt});var hge=E(IW=>{"use strict";Object.defineProperty(IW,"__esModule",{value:!0});var Dvt=S1(),pge=Qo(),CW=Lr(),mge=vW(),kvt={keyword:"properties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,parentSchema:n,data:s,it:i}=t;i.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&mge.default.code(new Dvt.KeywordCxt(i,mge.default,"additionalProperties"));let a=(0,pge.allSchemaProperties)(r);for(let d of a)i.definedProperties.add(d);i.opts.unevaluated&&a.length&&i.props!==!0&&(i.props=CW.mergeEvaluated.props(e,(0,CW.toHash)(a),i.props));let o=a.filter(d=>!(0,CW.alwaysValidSchema)(i,r[d]));if(o.length===0)return;let c=e.name("valid");for(let d of o)u(d)?l(d):(e.if((0,pge.propertyInData)(e,s,d,i.opts.ownProperties)),l(d),i.allErrors||e.else().var(c,!0),e.endIf()),t.it.definedProperties.add(d),t.ok(c);function u(d){return i.opts.useDefaults&&!i.compositeRule&&r[d].default!==void 0}function l(d){t.subschema({keyword:"properties",schemaProp:d,dataProp:d},c)}}};IW.default=kvt});var xge=E(TW=>{"use strict";Object.defineProperty(TW,"__esModule",{value:!0});var gge=Qo(),oN=zt(),Age=Lr(),yge=Lr(),Lvt={keyword:"patternProperties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,data:n,parentSchema:s,it:i}=t,{opts:a}=i,o=(0,gge.allSchemaProperties)(r),c=o.filter(h=>(0,Age.alwaysValidSchema)(i,r[h]));if(o.length===0||c.length===o.length&&(!i.opts.unevaluated||i.props===!0))return;let u=a.strictSchema&&!a.allowMatchingProperties&&s.properties,l=e.name("valid");i.props!==!0&&!(i.props instanceof oN.Name)&&(i.props=(0,yge.evaluatedPropsToName)(e,i.props));let{props:d}=i;f();function f(){for(let h of o)u&&p(h),i.allErrors?m(h):(e.var(l,!0),m(h),e.if(l))}function p(h){for(let A in u)new RegExp(h).test(A)&&(0,Age.checkStrictMode)(i,`property ${A} matches pattern ${h} (use allowMatchingProperties)`)}function m(h){e.forIn("key",n,A=>{e.if((0,oN._)`${(0,gge.usePattern)(t,h)}.test(${A})`,()=>{let g=c.includes(h);g||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:A,dataPropType:yge.Type.Str},l),i.opts.unevaluated&&d!==!0?e.assign((0,oN._)`${d}[${A}]`,!0):!g&&!i.allErrors&&e.if((0,oN.not)(l),()=>e.break())})})}}};TW.default=Lvt});var bge=E(wW=>{"use strict";Object.defineProperty(wW,"__esModule",{value:!0});var Bvt=Lr(),Mvt={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,Bvt.alwaysValidSchema)(n,r)){t.fail();return}let s=e.name("valid");t.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},s),t.failResult(s,()=>t.reset(),()=>t.error())},error:{message:"must NOT be valid"}};wW.default=Mvt});var Ege=E(RW=>{"use strict";Object.defineProperty(RW,"__esModule",{value:!0});var Wvt=Qo(),$vt={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:Wvt.validateUnion,error:{message:"must match a schema in anyOf"}};RW.default=$vt});var _ge=E(NW=>{"use strict";Object.defineProperty(NW,"__esModule",{value:!0});var cN=zt(),Fvt=Lr(),Uvt={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,cN._)`{passingSchemas: ${t.passing}}`},qvt={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:Uvt,code(t){let{gen:e,schema:r,parentSchema:n,it:s}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(s.opts.discriminator&&n.discriminator)return;let i=r,a=e.let("valid",!1),o=e.let("passing",null),c=e.name("_valid");t.setParams({passing:o}),e.block(u),t.result(a,()=>t.reset(),()=>t.error(!0));function u(){i.forEach((l,d)=>{let f;(0,Fvt.alwaysValidSchema)(s,l)?e.var(c,!0):f=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,cN._)`${c} && ${a}`).assign(a,!1).assign(o,(0,cN._)`[${o}, ${d}]`).else(),e.if(c,()=>{e.assign(a,!0),e.assign(o,d),f&&t.mergeEvaluated(f,cN.Name)})})}}};NW.default=qvt});var Sge=E(OW=>{"use strict";Object.defineProperty(OW,"__esModule",{value:!0});var jvt=Lr(),Hvt={keyword:"allOf",schemaType:"array",code(t){let{gen:e,schema:r,it:n}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");let s=e.name("valid");r.forEach((i,a)=>{if((0,jvt.alwaysValidSchema)(n,i))return;let o=t.subschema({keyword:"allOf",schemaProp:a},s);t.ok(s),t.mergeEvaluated(o)})}};OW.default=Hvt});var Ige=E(PW=>{"use strict";Object.defineProperty(PW,"__esModule",{value:!0});var uN=zt(),Cge=Lr(),Qvt={message:({params:t})=>(0,uN.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,uN._)`{failingKeyword: ${t.ifClause}}`},Gvt={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:Qvt,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,Cge.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let s=vge(n,"then"),i=vge(n,"else");if(!s&&!i)return;let a=e.let("valid",!0),o=e.name("_valid");if(c(),t.reset(),s&&i){let l=e.let("ifClause");t.setParams({ifClause:l}),e.if(o,u("then",l),u("else",l))}else s?e.if(o,u("then")):e.if((0,uN.not)(o),u("else"));t.pass(a,()=>t.error(!0));function c(){let l=t.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},o);t.mergeEvaluated(l)}function u(l,d){return()=>{let f=t.subschema({keyword:l},o);e.assign(a,o),t.mergeValidEvaluated(f,a),d?e.assign(d,(0,uN._)`${l}`):t.setParams({ifClause:l})}}}};function vge(t,e){let r=t.schema[e];return r!==void 0&&!(0,Cge.alwaysValidSchema)(t,r)}PW.default=Gvt});var Tge=E(DW=>{"use strict";Object.defineProperty(DW,"__esModule",{value:!0});var Vvt=Lr(),zvt={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,Vvt.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};DW.default=zvt});var wge=E(kW=>{"use strict";Object.defineProperty(kW,"__esModule",{value:!0});var Kvt=gW(),Yvt=sge(),Jvt=AW(),Xvt=age(),Zvt=oge(),eCt=lge(),tCt=fge(),rCt=vW(),nCt=hge(),sCt=xge(),iCt=bge(),aCt=Ege(),oCt=_ge(),cCt=Sge(),uCt=Ige(),lCt=Tge();function dCt(t=!1){let e=[iCt.default,aCt.default,oCt.default,cCt.default,uCt.default,lCt.default,tCt.default,rCt.default,eCt.default,nCt.default,sCt.default];return t?e.push(Yvt.default,Xvt.default):e.push(Kvt.default,Jvt.default),e.push(Zvt.default),e}kW.default=dCt});var Rge=E(LW=>{"use strict";Object.defineProperty(LW,"__esModule",{value:!0});var cs=zt(),fCt={message:({schemaCode:t})=>(0,cs.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,cs._)`{format: ${t}}`},pCt={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:fCt,code(t,e){let{gen:r,data:n,$data:s,schema:i,schemaCode:a,it:o}=t,{opts:c,errSchemaPath:u,schemaEnv:l,self:d}=o;if(!c.validateFormats)return;s?f():p();function f(){let m=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),h=r.const("fDef",(0,cs._)`${m}[${a}]`),A=r.let("fType"),g=r.let("format");r.if((0,cs._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(A,(0,cs._)`${h}.type || "string"`).assign(g,(0,cs._)`${h}.validate`),()=>r.assign(A,(0,cs._)`"string"`).assign(g,h)),t.fail$data((0,cs.or)(b(),y()));function b(){return c.strictSchema===!1?cs.nil:(0,cs._)`${a} && !${g}`}function y(){let x=l.$async?(0,cs._)`(${h}.async ? await ${g}(${n}) : ${g}(${n}))`:(0,cs._)`${g}(${n})`,v=(0,cs._)`(typeof ${g} == "function" ? ${x} : ${g}.test(${n}))`;return(0,cs._)`${g} && ${g} !== true && ${A} === ${e} && !${v}`}}function p(){let m=d.formats[i];if(!m){b();return}if(m===!0)return;let[h,A,g]=y(m);h===e&&t.pass(x());function b(){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 y(v){let C=v instanceof RegExp?(0,cs.regexpCode)(v):c.code.formats?(0,cs._)`${c.code.formats}${(0,cs.getProperty)(i)}`:void 0,R=r.scopeValue("formats",{key:i,ref:v,code:C});return typeof v=="object"&&!(v instanceof RegExp)?[v.type||"string",v.validate,(0,cs._)`${R}.validate`]:["string",v,R]}function x(){if(typeof m=="object"&&!(m instanceof RegExp)&&m.async){if(!l.$async)throw new Error("async format in sync schema");return(0,cs._)`await ${g}(${n})`}return typeof A=="function"?(0,cs._)`${g}(${n})`:(0,cs._)`${g}.test(${n})`}}}};LW.default=pCt});var Nge=E(BW=>{"use strict";Object.defineProperty(BW,"__esModule",{value:!0});var mCt=Rge(),hCt=[mCt.default];BW.default=hCt});var Oge=E(ZA=>{"use strict";Object.defineProperty(ZA,"__esModule",{value:!0});ZA.contentVocabulary=ZA.metadataVocabulary=void 0;ZA.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];ZA.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var Dge=E(MW=>{"use strict";Object.defineProperty(MW,"__esModule",{value:!0});var gCt=Fhe(),ACt=ege(),yCt=wge(),xCt=Nge(),Pge=Oge(),bCt=[gCt.default,ACt.default,(0,yCt.default)(),xCt.default,Pge.metadataVocabulary,Pge.contentVocabulary];MW.default=bCt});var Lge=E(lN=>{"use strict";Object.defineProperty(lN,"__esModule",{value:!0});lN.DiscrError=void 0;var kge;(function(t){t.Tag="tag",t.Mapping="mapping"})(kge||(lN.DiscrError=kge={}))});var Mge=E($W=>{"use strict";Object.defineProperty($W,"__esModule",{value:!0});var ey=zt(),WW=Lge(),Bge=GR(),ECt=v1(),_Ct=Lr(),SCt={message:({params:{discrError:t,tagName:e}})=>t===WW.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,ey._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},vCt={keyword:"discriminator",type:"object",schemaType:"object",error:SCt,code(t){let{gen:e,data:r,schema:n,parentSchema:s,it:i}=t,{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=e.let("valid",!1),u=e.const("tag",(0,ey._)`${r}${(0,ey.getProperty)(o)}`);e.if((0,ey._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:WW.DiscrError.Tag,tag:u,tagName:o})),t.ok(c);function l(){let p=f();e.if(!1);for(let m in p)e.elseIf((0,ey._)`${u} === ${m}`),e.assign(c,d(p[m]));e.else(),t.error(!1,{discrError:WW.DiscrError.Mapping,tag:u,tagName:o}),e.endIf()}function d(p){let m=e.name("valid"),h=t.subschema({keyword:"oneOf",schemaProp:p},m);return t.mergeEvaluated(h,ey.Name),m}function f(){var p;let m={},h=g(s),A=!0;for(let x=0;x{CCt.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 UW=E((Nn,FW)=>{"use strict";Object.defineProperty(Nn,"__esModule",{value:!0});Nn.MissingRefError=Nn.ValidationError=Nn.CodeGen=Nn.Name=Nn.nil=Nn.stringify=Nn.str=Nn._=Nn.KeywordCxt=Nn.Ajv=void 0;var ICt=khe(),TCt=Dge(),wCt=Mge(),$ge=Wge(),RCt=["/properties"],dN="http://json-schema.org/draft-07/schema",ty=class extends ICt.default{_addVocabularies(){super._addVocabularies(),TCt.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(wCt.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema($ge,RCt):$ge;this.addMetaSchema(e,dN,!1),this.refs["http://json-schema.org/schema"]=dN}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(dN)?dN:void 0)}};Nn.Ajv=ty;FW.exports=Nn=ty;FW.exports.Ajv=ty;Object.defineProperty(Nn,"__esModule",{value:!0});Nn.default=ty;var NCt=S1();Object.defineProperty(Nn,"KeywordCxt",{enumerable:!0,get:function(){return NCt.KeywordCxt}});var ry=zt();Object.defineProperty(Nn,"_",{enumerable:!0,get:function(){return ry._}});Object.defineProperty(Nn,"str",{enumerable:!0,get:function(){return ry.str}});Object.defineProperty(Nn,"stringify",{enumerable:!0,get:function(){return ry.stringify}});Object.defineProperty(Nn,"nil",{enumerable:!0,get:function(){return ry.nil}});Object.defineProperty(Nn,"Name",{enumerable:!0,get:function(){return ry.Name}});Object.defineProperty(Nn,"CodeGen",{enumerable:!0,get:function(){return ry.CodeGen}});var OCt=HR();Object.defineProperty(Nn,"ValidationError",{enumerable:!0,get:function(){return OCt.default}});var PCt=v1();Object.defineProperty(Nn,"MissingRefError",{enumerable:!0,get:function(){return PCt.default}})});var Uge=E(($3r,Fge)=>{"use strict";var DCt={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};Fge.exports={HEX:DCt}});var Kge=E((F3r,zge)=>{"use strict";var{HEX:kCt}=Uge();function Qge(t){if(Vge(t,".")<3)return{host:t,isIPV4:!1};let e=t.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]=e;return r?{host:BCt(r,"."),isIPV4:!0}:{host:t,isIPV4:!1}}function qW(t){let e="",r=!0;for(let n of t){if(n!=="0"&&r===!0&&(r=!1),kCt[n]===void 0)return;r||(e+=n)}return e}function LCt(t){let e=0,r={error:!1,address:"",zone:""},n=[],s=[],i=!1,a=!1,o=!1;function c(){if(s.length){if(i===!1){let u=qW(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&&t[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(qW(s.join("")))),r.address=n.join(""),r}function Gge(t,e={}){if(Vge(t,":")<2)return{host:t,isIPV6:!1};let r=LCt(t);if(r.error)return{host:t,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 BCt(t,e){let r="",n=!0,s=t.length;for(let i=0;i{"use strict";var UCt=/^[\da-f]{8}\b-[\da-f]{4}\b-[\da-f]{4}\b-[\da-f]{4}\b-[\da-f]{12}$/iu,qCt=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu;function Yge(t){return typeof t.secure=="boolean"?t.secure:String(t.scheme).toLowerCase()==="wss"}function Jge(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function Xge(t){let e=String(t.scheme).toLowerCase()==="https";return(t.port===(e?443:80)||t.port==="")&&(t.port=void 0),t.path||(t.path="/"),t}function jCt(t){return t.secure=Yge(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function HCt(t){if((t.port===(Yge(t)?443:80)||t.port==="")&&(t.port=void 0),typeof t.secure=="boolean"&&(t.scheme=t.secure?"wss":"ws",t.secure=void 0),t.resourceName){let[e,r]=t.resourceName.split("?");t.path=e&&e!=="/"?e:void 0,t.query=r,t.resourceName=void 0}return t.fragment=void 0,t}function QCt(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(qCt);if(r){let n=e.scheme||t.scheme||"urn";t.nid=r[1].toLowerCase(),t.nss=r[2];let s=`${n}:${e.nid||t.nid}`,i=jW[s];t.path=void 0,i&&(t=i.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function GCt(t,e){let r=e.scheme||t.scheme||"urn",n=t.nid.toLowerCase(),s=`${r}:${e.nid||n}`,i=jW[s];i&&(t=i.serialize(t,e));let a=t,o=t.nss;return a.path=`${n||e.nid}:${o}`,e.skipEscape=!0,a}function VCt(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!UCt.test(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function zCt(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var Zge={scheme:"http",domainHost:!0,parse:Jge,serialize:Xge},KCt={scheme:"https",domainHost:Zge.domainHost,parse:Jge,serialize:Xge},fN={scheme:"ws",domainHost:!0,parse:jCt,serialize:HCt},YCt={scheme:"wss",domainHost:fN.domainHost,parse:fN.parse,serialize:fN.serialize},JCt={scheme:"urn",parse:QCt,serialize:GCt,skipNormalize:!0},XCt={scheme:"urn:uuid",parse:VCt,serialize:zCt,skipNormalize:!0},jW={http:Zge,https:KCt,ws:fN,wss:YCt,urn:JCt,"urn:uuid":XCt};eAe.exports=jW});var QW=E((q3r,mN)=>{"use strict";var{normalizeIPv6:ZCt,normalizeIPv4:eIt,removeDotSegments:$1,recomposeAuthority:tIt,normalizeComponentEncoding:pN}=Kge(),rAe=tAe();function rIt(t,e){return typeof t=="string"?t=Hu(hd(t,e),e):typeof t=="object"&&(t=hd(Hu(t,e),e)),t}function nIt(t,e,r){let n=Object.assign({scheme:"null"},r),s=nAe(hd(t,n),hd(e,n),n,!0);return Hu(s,{...n,skipEscape:!0})}function nAe(t,e,r,n){let s={};return n||(t=hd(Hu(t,r),r),e=hd(Hu(e,r),r)),r=r||{},!r.tolerant&&e.scheme?(s.scheme=e.scheme,s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=$1(e.path||""),s.query=e.query):(e.userinfo!==void 0||e.host!==void 0||e.port!==void 0?(s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=$1(e.path||""),s.query=e.query):(e.path?(e.path.charAt(0)==="/"?s.path=$1(e.path):((t.userinfo!==void 0||t.host!==void 0||t.port!==void 0)&&!t.path?s.path="/"+e.path:t.path?s.path=t.path.slice(0,t.path.lastIndexOf("/")+1)+e.path:s.path=e.path,s.path=$1(s.path)),s.query=e.query):(s.path=t.path,e.query!==void 0?s.query=e.query:s.query=t.query),s.userinfo=t.userinfo,s.host=t.host,s.port=t.port),s.scheme=t.scheme),s.fragment=e.fragment,s}function sIt(t,e,r){return typeof t=="string"?(t=unescape(t),t=Hu(pN(hd(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=Hu(pN(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=Hu(pN(hd(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=Hu(pN(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function Hu(t,e){let r={host:t.host,scheme:t.scheme,userinfo:t.userinfo,port:t.port,path:t.path,query:t.query,nid:t.nid,nss:t.nss,uuid:t.uuid,fragment:t.fragment,reference:t.reference,resourceName:t.resourceName,secure:t.secure,error:""},n=Object.assign({},e),s=[],i=rAe[(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=tIt(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=$1(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 iIt=Array.from({length:127},(t,e)=>/[^!"$&'()*+,\-.;=_`a-z{}~]/u.test(String.fromCharCode(e)));function aIt(t){let e=0;for(let r=0,n=t.length;r126||iIt[e])return!0;return!1}var oIt=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function hd(t,e){let r=Object.assign({},e),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},s=t.indexOf("%")!==-1;r.reference==="suffix"&&(t=(r.scheme?r.scheme+":":"")+"//"+t);let i=t.match(oIt);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=eIt(n.host);o.isIPV4===!1?n.host=ZCt(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=rAe[(r.scheme||n.scheme||"").toLowerCase()];if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&aIt(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 HW={normalize:rIt,resolve:nIt,resolveComponents:nAe,equal:sIt,serialize:Hu,parse:hd};mN.exports=HW;mN.exports.default=HW;mN.exports.fastUri=HW});var hN=E(Gu=>{"use strict";Object.defineProperty(Gu,"__esModule",{value:!0});Gu.formatNames=Gu.fastFormats=Gu.fullFormats=void 0;function Qu(t,e){return{validate:t,compare:e}}Gu.fullFormats={date:Qu(oAe,KW),time:Qu(VW(!0),YW),"date-time":Qu(sAe(!0),uAe),"iso-time":Qu(VW(),cAe),"iso-date-time":Qu(sAe(),lAe),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:pIt,"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:bIt,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:mIt,int32:{type:"number",validate:AIt},int64:{type:"number",validate:yIt},float:{type:"number",validate:aAe},double:{type:"number",validate:aAe},password:!0,binary:!0};Gu.fastFormats={...Gu.fullFormats,date:Qu(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,KW),time:Qu(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,YW),"date-time":Qu(/^\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,uAe),"iso-time":Qu(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,cAe),"iso-date-time":Qu(/^\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,lAe),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};Gu.formatNames=Object.keys(Gu.fullFormats);function cIt(t){return t%4===0&&(t%100!==0||t%400===0)}var uIt=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,lIt=[0,31,28,31,30,31,30,31,31,30,31,30,31];function oAe(t){let e=uIt.exec(t);if(!e)return!1;let r=+e[1],n=+e[2],s=+e[3];return n>=1&&n<=12&&s>=1&&s<=(n===2&&cIt(r)?29:lIt[n])}function KW(t,e){if(t&&e)return t>e?1:t23||l>59||t&&!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 YW(t,e){if(!(t&&e))return;let r=new Date("2020-01-01T"+t).valueOf(),n=new Date("2020-01-01T"+e).valueOf();if(r&&n)return r-n}function cAe(t,e){if(!(t&&e))return;let r=GW.exec(t),n=GW.exec(e);if(r&&n)return t=r[1]+r[2]+r[3],e=n[1]+n[2]+n[3],t>e?1:t=hIt}function yIt(t){return Number.isInteger(t)}function aAe(){return!0}var xIt=/[^\\]\\Z/;function bIt(t){if(xIt.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var dAe=E(ny=>{"use strict";Object.defineProperty(ny,"__esModule",{value:!0});ny.formatLimitDefinition=void 0;var EIt=UW(),jc=zt(),Ep=jc.operators,gN={formatMaximum:{okStr:"<=",ok:Ep.LTE,fail:Ep.GT},formatMinimum:{okStr:">=",ok:Ep.GTE,fail:Ep.LT},formatExclusiveMaximum:{okStr:"<",ok:Ep.LT,fail:Ep.GTE},formatExclusiveMinimum:{okStr:">",ok:Ep.GT,fail:Ep.LTE}},_It={message:({keyword:t,schemaCode:e})=>(0,jc.str)`should be ${gN[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,jc._)`{comparison: ${gN[t].okStr}, limit: ${e}}`};ny.formatLimitDefinition={keyword:Object.keys(gN),type:"string",schemaType:"string",$data:!0,error:_It,code(t){let{gen:e,data:r,schemaCode:n,keyword:s,it:i}=t,{opts:a,self:o}=i;if(!a.validateFormats)return;let c=new EIt.KeywordCxt(i,o.RULES.all.format.definition,"format");c.$data?u():l();function u(){let f=e.scopeValue("formats",{ref:o.formats,code:a.code.formats}),p=e.const("fmt",(0,jc._)`${f}[${c.schemaCode}]`);t.fail$data((0,jc.or)((0,jc._)`typeof ${p} != "object"`,(0,jc._)`${p} instanceof RegExp`,(0,jc._)`typeof ${p}.compare != "function"`,d(p)))}function l(){let f=c.schema,p=o.formats[f];if(!p||p===!0)return;if(typeof p!="object"||p instanceof RegExp||typeof p.compare!="function")throw new Error(`"${s}": format "${f}" does not define "compare" function`);let m=e.scopeValue("formats",{key:f,ref:p,code:a.code.formats?(0,jc._)`${a.code.formats}${(0,jc.getProperty)(f)}`:void 0});t.fail$data(d(m))}function d(f){return(0,jc._)`${f}.compare(${r}, ${n}) ${gN[s].fail} 0`}},dependencies:["format"]};var SIt=t=>(t.addKeyword(ny.formatLimitDefinition),t);ny.default=SIt});var hAe=E((F1,mAe)=>{"use strict";Object.defineProperty(F1,"__esModule",{value:!0});var sy=hN(),vIt=dAe(),JW=zt(),fAe=new JW.Name("fullFormats"),CIt=new JW.Name("fastFormats"),XW=(t,e={keywords:!0})=>{if(Array.isArray(e))return pAe(t,e,sy.fullFormats,fAe),t;let[r,n]=e.mode==="fast"?[sy.fastFormats,CIt]:[sy.fullFormats,fAe],s=e.formats||sy.formatNames;return pAe(t,s,r,n),e.keywords&&(0,vIt.default)(t),t};XW.get=(t,e="full")=>{let n=(e==="fast"?sy.fastFormats:sy.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function pAe(t,e,r,n){var s,i;(s=(i=t.opts.code).formats)!==null&&s!==void 0||(i.formats=(0,JW._)`require("ajv-formats/dist/formats").${n}`);for(let a of e)t.addFormat(a,r[a])}mAe.exports=F1=XW;Object.defineProperty(F1,"__esModule",{value:!0});F1.default=XW});var e$=E((Q3r,gAe)=>{"use strict";var IIt=UW(),TIt=QW(),wIt=hAe(),RIt=NR()({proto:!0}),ZW=class t{constructor(e){this.ajv=new IIt({...e,strictSchema:!1,validateSchema:!1,allowUnionTypes:!0,uriResolver:TIt}),wIt(this.ajv),this.ajv.addKeyword({keyword:"fjs_type",type:"object",errors:!1,validate:(r,n)=>n instanceof Date}),this._ajvSchemas={},this._ajvOptions=e||{}}addSchema(e,r){let n=e.$id||r;if(e.$id!==void 0&&e.$id[0]==="#"&&(n=r+e.$id),this.ajv.refs[n]===void 0&&this.ajv.schemas[n]===void 0){let s=RIt(e);this.convertSchemaToAjvFormat(s),this.ajv.addSchema(s,n),this._ajvSchemas[n]=e}}validate(e,r){return this.ajv.validate(e,r)}convertSchemaToAjvFormat(e){if(e!==null){e.type==="string"?(e.fjs_type="string",e.type=["string","object"]):Array.isArray(e.type)&&e.type.includes("string")&&!e.type.includes("object")&&(e.fjs_type="string",e.type.push("object"));for(let r in e)typeof e[r]=="object"&&this.convertSchemaToAjvFormat(e[r])}}getState(){return{ajvOptions:this._ajvOptions,ajvSchemas:this._ajvSchemas}}static restoreFromState(e){let r=new t(e.ajvOptions);for(let[n,s]of Object.entries(e.ajvSchemas))r.ajv.addSchema(s,n);return r}};gAe.exports=ZW});var r$=E((G3r,t$)=>{"use strict";function NIt(t,e,r,n){let s="";e.validatorSchemasIds.size>0?(s+=`const Validator = require('fast-json-stringify/lib/validator') + deps: ${r}}`};var Dwt={keyword:"dependencies",type:"object",schemaType:"object",error:rl.error,code(t){let[e,r]=Bwt(t);exe(t,e),txe(t,r)}};function Bwt({schema:t}){let e={},r={};for(let n in t){if(n==="__proto__")continue;let s=Array.isArray(t[n])?e:r;s[n]=t[n]}return[e,r]}function exe(t,e=t.schema){let{gen:r,data:n,it:s}=t;if(Object.keys(e).length===0)return;let i=r.let("missing");for(let a in e){let o=e[a];if(o.length===0)continue;let c=(0,QE.propertyInData)(r,n,a,s.opts.ownProperties);t.setParams({property:a,depsCount:o.length,deps:o.join(", ")}),s.allErrors?r.if(c,()=>{for(let u of o)(0,QE.checkReportMissingProp)(t,u)}):(r.if((0,vU._)`${c} && (${(0,QE.checkMissingProp)(t,o,i)})`),(0,QE.reportMissingProp)(t,i),r.else())}}rl.validatePropertyDeps=exe;function txe(t,e=t.schema){let{gen:r,data:n,keyword:s,it:i}=t,a=r.name("valid");for(let o in e)(0,Pwt.alwaysValidSchema)(i,e[o])||(r.if((0,QE.propertyInData)(r,n,o,i.opts.ownProperties),()=>{let c=t.subschema({keyword:s,schemaProp:o},a);t.mergeValidEvaluated(c,a)},()=>r.var(a,!0)),t.ok(a))}rl.validateSchemaDeps=txe;rl.default=Dwt});var sxe=_(SU=>{"use strict";Object.defineProperty(SU,"__esModule",{value:!0});var nxe=Vt(),Lwt=Wr(),Mwt={message:"property name must be valid",params:({params:t})=>(0,nxe._)`{propertyName: ${t.propertyName}}`},Wwt={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:Mwt,code(t){let{gen:e,schema:r,data:n,it:s}=t;if((0,Lwt.alwaysValidSchema)(s,r))return;let i=e.name("valid");e.forIn("key",n,a=>{t.setParams({propertyName:a}),t.subschema({keyword:"propertyNames",data:a,dataTypes:["string"],propertyName:a,compositeRule:!0},i),e.if((0,nxe.not)(i),()=>{t.error(!0),s.allErrors||e.break()})}),t.ok(i)}};SU.default=Wwt});var CU=_(IU=>{"use strict";Object.defineProperty(IU,"__esModule",{value:!0});var RO=nc(),eu=Vt(),$wt=kd(),NO=Wr(),Uwt={message:"must NOT have additional properties",params:({params:t})=>(0,eu._)`{additionalProperty: ${t.additionalProperty}}`},Fwt={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:Uwt,code(t){let{gen:e,schema:r,parentSchema:n,data:s,errsCount:i,it:a}=t;if(!i)throw new Error("ajv implementation error");let{allErrors:o,opts:c}=a;if(a.props=!0,c.removeAdditional!=="all"&&(0,NO.alwaysValidSchema)(a,r))return;let u=(0,RO.allSchemaProperties)(n.properties),l=(0,RO.allSchemaProperties)(n.patternProperties);d(),t.ok((0,eu._)`${i} === ${$wt.default.errors}`);function d(){e.forIn("key",s,y=>{!u.length&&!l.length?m(y):e.if(f(y),()=>m(y))})}function f(y){let g;if(u.length>8){let b=(0,NO.schemaRefOrVal)(a,n.properties,"properties");g=(0,RO.isOwnProperty)(e,b,y)}else u.length?g=(0,eu.or)(...u.map(b=>(0,eu._)`${y} === ${b}`)):g=eu.nil;return l.length&&(g=(0,eu.or)(g,...l.map(b=>(0,eu._)`${(0,RO.usePattern)(t,b)}.test(${y})`))),(0,eu.not)(g)}function p(y){e.code((0,eu._)`delete ${s}[${y}]`)}function m(y){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){p(y);return}if(r===!1){t.setParams({additionalProperty:y}),t.error(),o||e.break();return}if(typeof r=="object"&&!(0,NO.alwaysValidSchema)(a,r)){let g=e.name("valid");c.removeAdditional==="failing"?(h(y,g,!1),e.if((0,eu.not)(g),()=>{t.reset(),p(y)})):(h(y,g),o||e.if((0,eu.not)(g),()=>e.break()))}}function h(y,g,b){let x={keyword:"additionalProperties",dataProp:y,dataPropType:NO.Type.Str};b===!1&&Object.assign(x,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(x,g)}}};IU.default=Fwt});var oxe=_(wU=>{"use strict";Object.defineProperty(wU,"__esModule",{value:!0});var qwt=RE(),ixe=nc(),TU=Wr(),axe=CU(),jwt={keyword:"properties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,parentSchema:n,data:s,it:i}=t;i.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&axe.default.code(new qwt.KeywordCxt(i,axe.default,"additionalProperties"));let a=(0,ixe.allSchemaProperties)(r);for(let d of a)i.definedProperties.add(d);i.opts.unevaluated&&a.length&&i.props!==!0&&(i.props=TU.mergeEvaluated.props(e,(0,TU.toHash)(a),i.props));let o=a.filter(d=>!(0,TU.alwaysValidSchema)(i,r[d]));if(o.length===0)return;let c=e.name("valid");for(let d of o)u(d)?l(d):(e.if((0,ixe.propertyInData)(e,s,d,i.opts.ownProperties)),l(d),i.allErrors||e.else().var(c,!0),e.endIf()),t.it.definedProperties.add(d),t.ok(c);function u(d){return i.opts.useDefaults&&!i.compositeRule&&r[d].default!==void 0}function l(d){t.subschema({keyword:"properties",schemaProp:d,dataProp:d},c)}}};wU.default=jwt});var dxe=_(RU=>{"use strict";Object.defineProperty(RU,"__esModule",{value:!0});var cxe=nc(),OO=Vt(),uxe=Wr(),lxe=Wr(),Qwt={keyword:"patternProperties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,data:n,parentSchema:s,it:i}=t,{opts:a}=i,o=(0,cxe.allSchemaProperties)(r),c=o.filter(h=>(0,uxe.alwaysValidSchema)(i,r[h]));if(o.length===0||c.length===o.length&&(!i.opts.unevaluated||i.props===!0))return;let u=a.strictSchema&&!a.allowMatchingProperties&&s.properties,l=e.name("valid");i.props!==!0&&!(i.props instanceof OO.Name)&&(i.props=(0,lxe.evaluatedPropsToName)(e,i.props));let{props:d}=i;f();function f(){for(let h of o)u&&p(h),i.allErrors?m(h):(e.var(l,!0),m(h),e.if(l))}function p(h){for(let y in u)new RegExp(h).test(y)&&(0,uxe.checkStrictMode)(i,`property ${y} matches pattern ${h} (use allowMatchingProperties)`)}function m(h){e.forIn("key",n,y=>{e.if((0,OO._)`${(0,cxe.usePattern)(t,h)}.test(${y})`,()=>{let g=c.includes(h);g||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:y,dataPropType:lxe.Type.Str},l),i.opts.unevaluated&&d!==!0?e.assign((0,OO._)`${d}[${y}]`,!0):!g&&!i.allErrors&&e.if((0,OO.not)(l),()=>e.break())})})}}};RU.default=Qwt});var fxe=_(NU=>{"use strict";Object.defineProperty(NU,"__esModule",{value:!0});var Hwt=Wr(),Gwt={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,Hwt.alwaysValidSchema)(n,r)){t.fail();return}let s=e.name("valid");t.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},s),t.failResult(s,()=>t.reset(),()=>t.error())},error:{message:"must NOT be valid"}};NU.default=Gwt});var pxe=_(OU=>{"use strict";Object.defineProperty(OU,"__esModule",{value:!0});var zwt=nc(),Kwt={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:zwt.validateUnion,error:{message:"must match a schema in anyOf"}};OU.default=Kwt});var mxe=_(kU=>{"use strict";Object.defineProperty(kU,"__esModule",{value:!0});var kO=Vt(),Vwt=Wr(),Ywt={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,kO._)`{passingSchemas: ${t.passing}}`},Jwt={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:Ywt,code(t){let{gen:e,schema:r,parentSchema:n,it:s}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(s.opts.discriminator&&n.discriminator)return;let i=r,a=e.let("valid",!1),o=e.let("passing",null),c=e.name("_valid");t.setParams({passing:o}),e.block(u),t.result(a,()=>t.reset(),()=>t.error(!0));function u(){i.forEach((l,d)=>{let f;(0,Vwt.alwaysValidSchema)(s,l)?e.var(c,!0):f=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,kO._)`${c} && ${a}`).assign(a,!1).assign(o,(0,kO._)`[${o}, ${d}]`).else(),e.if(c,()=>{e.assign(a,!0),e.assign(o,d),f&&t.mergeEvaluated(f,kO.Name)})})}}};kU.default=Jwt});var hxe=_(PU=>{"use strict";Object.defineProperty(PU,"__esModule",{value:!0});var Xwt=Wr(),Zwt={keyword:"allOf",schemaType:"array",code(t){let{gen:e,schema:r,it:n}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");let s=e.name("valid");r.forEach((i,a)=>{if((0,Xwt.alwaysValidSchema)(n,i))return;let o=t.subschema({keyword:"allOf",schemaProp:a},s);t.ok(s),t.mergeEvaluated(o)})}};PU.default=Zwt});var Axe=_(DU=>{"use strict";Object.defineProperty(DU,"__esModule",{value:!0});var PO=Vt(),yxe=Wr(),eRt={message:({params:t})=>(0,PO.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,PO._)`{failingKeyword: ${t.ifClause}}`},tRt={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:eRt,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,yxe.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let s=gxe(n,"then"),i=gxe(n,"else");if(!s&&!i)return;let a=e.let("valid",!0),o=e.name("_valid");if(c(),t.reset(),s&&i){let l=e.let("ifClause");t.setParams({ifClause:l}),e.if(o,u("then",l),u("else",l))}else s?e.if(o,u("then")):e.if((0,PO.not)(o),u("else"));t.pass(a,()=>t.error(!0));function c(){let l=t.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},o);t.mergeEvaluated(l)}function u(l,d){return()=>{let f=t.subschema({keyword:l},o);e.assign(a,o),t.mergeValidEvaluated(f,a),d?e.assign(d,(0,PO._)`${l}`):t.setParams({ifClause:l})}}}};function gxe(t,e){let r=t.schema[e];return r!==void 0&&!(0,yxe.alwaysValidSchema)(t,r)}DU.default=tRt});var xxe=_(BU=>{"use strict";Object.defineProperty(BU,"__esModule",{value:!0});var rRt=Wr(),nRt={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,rRt.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};BU.default=nRt});var bxe=_(LU=>{"use strict";Object.defineProperty(LU,"__esModule",{value:!0});var sRt=AU(),iRt=YAe(),aRt=xU(),oRt=XAe(),cRt=ZAe(),uRt=rxe(),lRt=sxe(),dRt=CU(),fRt=oxe(),pRt=dxe(),mRt=fxe(),hRt=pxe(),gRt=mxe(),yRt=hxe(),ARt=Axe(),xRt=xxe();function bRt(t=!1){let e=[mRt.default,hRt.default,gRt.default,yRt.default,ARt.default,xRt.default,lRt.default,dRt.default,uRt.default,fRt.default,pRt.default];return t?e.push(iRt.default,oRt.default):e.push(sRt.default,aRt.default),e.push(cRt.default),e}LU.default=bRt});var _xe=_(MU=>{"use strict";Object.defineProperty(MU,"__esModule",{value:!0});var ls=Vt(),_Rt={message:({schemaCode:t})=>(0,ls.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,ls._)`{format: ${t}}`},ERt={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:_Rt,code(t,e){let{gen:r,data:n,$data:s,schema:i,schemaCode:a,it:o}=t,{opts:c,errSchemaPath:u,schemaEnv:l,self:d}=o;if(!c.validateFormats)return;s?f():p();function f(){let m=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),h=r.const("fDef",(0,ls._)`${m}[${a}]`),y=r.let("fType"),g=r.let("format");r.if((0,ls._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(y,(0,ls._)`${h}.type || "string"`).assign(g,(0,ls._)`${h}.validate`),()=>r.assign(y,(0,ls._)`"string"`).assign(g,h)),t.fail$data((0,ls.or)(b(),x()));function b(){return c.strictSchema===!1?ls.nil:(0,ls._)`${a} && !${g}`}function x(){let A=l.$async?(0,ls._)`(${h}.async ? await ${g}(${n}) : ${g}(${n}))`:(0,ls._)`${g}(${n})`,S=(0,ls._)`(typeof ${g} == "function" ? ${A} : ${g}.test(${n}))`;return(0,ls._)`${g} && ${g} !== true && ${y} === ${e} && !${S}`}}function p(){let m=d.formats[i];if(!m){b();return}if(m===!0)return;let[h,y,g]=x(m);h===e&&t.pass(A());function b(){if(c.strictSchema===!1){d.logger.warn(S());return}throw new Error(S());function S(){return`unknown format "${i}" ignored in schema at path "${u}"`}}function x(S){let I=S instanceof RegExp?(0,ls.regexpCode)(S):c.code.formats?(0,ls._)`${c.code.formats}${(0,ls.getProperty)(i)}`:void 0,R=r.scopeValue("formats",{key:i,ref:S,code:I});return typeof S=="object"&&!(S instanceof RegExp)?[S.type||"string",S.validate,(0,ls._)`${R}.validate`]:["string",S,R]}function A(){if(typeof m=="object"&&!(m instanceof RegExp)&&m.async){if(!l.$async)throw new Error("async format in sync schema");return(0,ls._)`await ${g}(${n})`}return typeof y=="function"?(0,ls._)`${g}(${n})`:(0,ls._)`${g}.test(${n})`}}}};MU.default=ERt});var Exe=_(WU=>{"use strict";Object.defineProperty(WU,"__esModule",{value:!0});var vRt=_xe(),SRt=[vRt.default];WU.default=SRt});var vxe=_(DA=>{"use strict";Object.defineProperty(DA,"__esModule",{value:!0});DA.contentVocabulary=DA.metadataVocabulary=void 0;DA.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];DA.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var Ixe=_($U=>{"use strict";Object.defineProperty($U,"__esModule",{value:!0});var IRt=kAe(),CRt=GAe(),TRt=bxe(),wRt=Exe(),Sxe=vxe(),RRt=[IRt.default,CRt.default,(0,TRt.default)(),wRt.default,Sxe.metadataVocabulary,Sxe.contentVocabulary];$U.default=RRt});var Txe=_(DO=>{"use strict";Object.defineProperty(DO,"__esModule",{value:!0});DO.DiscrError=void 0;var Cxe;(function(t){t.Tag="tag",t.Mapping="mapping"})(Cxe||(DO.DiscrError=Cxe={}))});var Rxe=_(FU=>{"use strict";Object.defineProperty(FU,"__esModule",{value:!0});var BA=Vt(),UU=Txe(),wxe=gO(),NRt=NE(),ORt=Wr(),kRt={message:({params:{discrError:t,tagName:e}})=>t===UU.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,BA._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},PRt={keyword:"discriminator",type:"object",schemaType:"object",error:kRt,code(t){let{gen:e,data:r,schema:n,parentSchema:s,it:i}=t,{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=e.let("valid",!1),u=e.const("tag",(0,BA._)`${r}${(0,BA.getProperty)(o)}`);e.if((0,BA._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:UU.DiscrError.Tag,tag:u,tagName:o})),t.ok(c);function l(){let p=f();e.if(!1);for(let m in p)e.elseIf((0,BA._)`${u} === ${m}`),e.assign(c,d(p[m]));e.else(),t.error(!1,{discrError:UU.DiscrError.Mapping,tag:u,tagName:o}),e.endIf()}function d(p){let m=e.name("valid"),h=t.subschema({keyword:"oneOf",schemaProp:p},m);return t.mergeEvaluated(h,BA.Name),m}function f(){var p;let m={},h=g(s),y=!0;for(let A=0;A{DRt.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 jU=_((Nn,qU)=>{"use strict";Object.defineProperty(Nn,"__esModule",{value:!0});Nn.MissingRefError=Nn.ValidationError=Nn.CodeGen=Nn.Name=Nn.nil=Nn.stringify=Nn.str=Nn._=Nn.KeywordCxt=Nn.Ajv=void 0;var BRt=CAe(),LRt=Ixe(),MRt=Rxe(),Oxe=Nxe(),WRt=["/properties"],BO="http://json-schema.org/draft-07/schema",LA=class extends BRt.default{_addVocabularies(){super._addVocabularies(),LRt.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(MRt.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(Oxe,WRt):Oxe;this.addMetaSchema(e,BO,!1),this.refs["http://json-schema.org/schema"]=BO}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(BO)?BO:void 0)}};Nn.Ajv=LA;qU.exports=Nn=LA;qU.exports.Ajv=LA;Object.defineProperty(Nn,"__esModule",{value:!0});Nn.default=LA;var $Rt=RE();Object.defineProperty(Nn,"KeywordCxt",{enumerable:!0,get:function(){return $Rt.KeywordCxt}});var MA=Vt();Object.defineProperty(Nn,"_",{enumerable:!0,get:function(){return MA._}});Object.defineProperty(Nn,"str",{enumerable:!0,get:function(){return MA.str}});Object.defineProperty(Nn,"stringify",{enumerable:!0,get:function(){return MA.stringify}});Object.defineProperty(Nn,"nil",{enumerable:!0,get:function(){return MA.nil}});Object.defineProperty(Nn,"Name",{enumerable:!0,get:function(){return MA.Name}});Object.defineProperty(Nn,"CodeGen",{enumerable:!0,get:function(){return MA.CodeGen}});var URt=mO();Object.defineProperty(Nn,"ValidationError",{enumerable:!0,get:function(){return URt.default}});var FRt=NE();Object.defineProperty(Nn,"MissingRefError",{enumerable:!0,get:function(){return FRt.default}})});var Pxe=_((V8r,kxe)=>{"use strict";var qRt={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};kxe.exports={HEX:qRt}});var Fxe=_((Y8r,Uxe)=>{"use strict";var{HEX:jRt}=Pxe();function Mxe(t){if($xe(t,".")<3)return{host:t,isIPV4:!1};let e=t.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]=e;return r?{host:HRt(r,"."),isIPV4:!0}:{host:t,isIPV4:!1}}function QU(t){let e="",r=!0;for(let n of t){if(n!=="0"&&r===!0&&(r=!1),jRt[n]===void 0)return;r||(e+=n)}return e}function QRt(t){let e=0,r={error:!1,address:"",zone:""},n=[],s=[],i=!1,a=!1,o=!1;function c(){if(s.length){if(i===!1){let u=QU(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&&t[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(QU(s.join("")))),r.address=n.join(""),r}function Wxe(t,e={}){if($xe(t,":")<2)return{host:t,isIPV6:!1};let r=QRt(t);if(r.error)return{host:t,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 HRt(t,e){let r="",n=!0,s=t.length;for(let i=0;i{"use strict";var YRt=/^[\da-f]{8}\b-[\da-f]{4}\b-[\da-f]{4}\b-[\da-f]{4}\b-[\da-f]{12}$/iu,JRt=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu;function qxe(t){return typeof t.secure=="boolean"?t.secure:String(t.scheme).toLowerCase()==="wss"}function jxe(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function Qxe(t){let e=String(t.scheme).toLowerCase()==="https";return(t.port===(e?443:80)||t.port==="")&&(t.port=void 0),t.path||(t.path="/"),t}function XRt(t){return t.secure=qxe(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function ZRt(t){if((t.port===(qxe(t)?443:80)||t.port==="")&&(t.port=void 0),typeof t.secure=="boolean"&&(t.scheme=t.secure?"wss":"ws",t.secure=void 0),t.resourceName){let[e,r]=t.resourceName.split("?");t.path=e&&e!=="/"?e:void 0,t.query=r,t.resourceName=void 0}return t.fragment=void 0,t}function eNt(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(JRt);if(r){let n=e.scheme||t.scheme||"urn";t.nid=r[1].toLowerCase(),t.nss=r[2];let s=`${n}:${e.nid||t.nid}`,i=HU[s];t.path=void 0,i&&(t=i.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function tNt(t,e){let r=e.scheme||t.scheme||"urn",n=t.nid.toLowerCase(),s=`${r}:${e.nid||n}`,i=HU[s];i&&(t=i.serialize(t,e));let a=t,o=t.nss;return a.path=`${n||e.nid}:${o}`,e.skipEscape=!0,a}function rNt(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!YRt.test(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function nNt(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var Hxe={scheme:"http",domainHost:!0,parse:jxe,serialize:Qxe},sNt={scheme:"https",domainHost:Hxe.domainHost,parse:jxe,serialize:Qxe},LO={scheme:"ws",domainHost:!0,parse:XRt,serialize:ZRt},iNt={scheme:"wss",domainHost:LO.domainHost,parse:LO.parse,serialize:LO.serialize},aNt={scheme:"urn",parse:eNt,serialize:tNt,skipNormalize:!0},oNt={scheme:"urn:uuid",parse:rNt,serialize:nNt,skipNormalize:!0},HU={http:Hxe,https:sNt,ws:LO,wss:iNt,urn:aNt,"urn:uuid":oNt};Gxe.exports=HU});var zU=_((X8r,WO)=>{"use strict";var{normalizeIPv6:cNt,normalizeIPv4:uNt,removeDotSegments:HE,recomposeAuthority:lNt,normalizeComponentEncoding:MO}=Fxe(),Kxe=zxe();function dNt(t,e){return typeof t=="string"?t=nl(Bd(t,e),e):typeof t=="object"&&(t=Bd(nl(t,e),e)),t}function fNt(t,e,r){let n=Object.assign({scheme:"null"},r),s=Vxe(Bd(t,n),Bd(e,n),n,!0);return nl(s,{...n,skipEscape:!0})}function Vxe(t,e,r,n){let s={};return n||(t=Bd(nl(t,r),r),e=Bd(nl(e,r),r)),r=r||{},!r.tolerant&&e.scheme?(s.scheme=e.scheme,s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=HE(e.path||""),s.query=e.query):(e.userinfo!==void 0||e.host!==void 0||e.port!==void 0?(s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=HE(e.path||""),s.query=e.query):(e.path?(e.path.charAt(0)==="/"?s.path=HE(e.path):((t.userinfo!==void 0||t.host!==void 0||t.port!==void 0)&&!t.path?s.path="/"+e.path:t.path?s.path=t.path.slice(0,t.path.lastIndexOf("/")+1)+e.path:s.path=e.path,s.path=HE(s.path)),s.query=e.query):(s.path=t.path,e.query!==void 0?s.query=e.query:s.query=t.query),s.userinfo=t.userinfo,s.host=t.host,s.port=t.port),s.scheme=t.scheme),s.fragment=e.fragment,s}function pNt(t,e,r){return typeof t=="string"?(t=unescape(t),t=nl(MO(Bd(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=nl(MO(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=nl(MO(Bd(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=nl(MO(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function nl(t,e){let r={host:t.host,scheme:t.scheme,userinfo:t.userinfo,port:t.port,path:t.path,query:t.query,nid:t.nid,nss:t.nss,uuid:t.uuid,fragment:t.fragment,reference:t.reference,resourceName:t.resourceName,secure:t.secure,error:""},n=Object.assign({},e),s=[],i=Kxe[(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=lNt(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=HE(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 mNt=Array.from({length:127},(t,e)=>/[^!"$&'()*+,\-.;=_`a-z{}~]/u.test(String.fromCharCode(e)));function hNt(t){let e=0;for(let r=0,n=t.length;r126||mNt[e])return!0;return!1}var gNt=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function Bd(t,e){let r=Object.assign({},e),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},s=t.indexOf("%")!==-1;r.reference==="suffix"&&(t=(r.scheme?r.scheme+":":"")+"//"+t);let i=t.match(gNt);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=uNt(n.host);o.isIPV4===!1?n.host=cNt(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=Kxe[(r.scheme||n.scheme||"").toLowerCase()];if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&hNt(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 GU={normalize:dNt,resolve:fNt,resolveComponents:Vxe,equal:pNt,serialize:nl,parse:Bd};WO.exports=GU;WO.exports.default=GU;WO.exports.fastUri=GU});var $O=_(il=>{"use strict";Object.defineProperty(il,"__esModule",{value:!0});il.formatNames=il.fastFormats=il.fullFormats=void 0;function sl(t,e){return{validate:t,compare:e}}il.fullFormats={date:sl(Zxe,JU),time:sl(VU(!0),XU),"date-time":sl(Yxe(!0),tbe),"iso-time":sl(VU(),ebe),"iso-date-time":sl(Yxe(),rbe),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:ENt,"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:RNt,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:vNt,int32:{type:"number",validate:CNt},int64:{type:"number",validate:TNt},float:{type:"number",validate:Xxe},double:{type:"number",validate:Xxe},password:!0,binary:!0};il.fastFormats={...il.fullFormats,date:sl(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,JU),time:sl(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,XU),"date-time":sl(/^\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,tbe),"iso-time":sl(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,ebe),"iso-date-time":sl(/^\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,rbe),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};il.formatNames=Object.keys(il.fullFormats);function yNt(t){return t%4===0&&(t%100!==0||t%400===0)}var ANt=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,xNt=[0,31,28,31,30,31,30,31,31,30,31,30,31];function Zxe(t){let e=ANt.exec(t);if(!e)return!1;let r=+e[1],n=+e[2],s=+e[3];return n>=1&&n<=12&&s>=1&&s<=(n===2&&yNt(r)?29:xNt[n])}function JU(t,e){if(t&&e)return t>e?1:t23||l>59||t&&!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 XU(t,e){if(!(t&&e))return;let r=new Date("2020-01-01T"+t).valueOf(),n=new Date("2020-01-01T"+e).valueOf();if(r&&n)return r-n}function ebe(t,e){if(!(t&&e))return;let r=KU.exec(t),n=KU.exec(e);if(r&&n)return t=r[1]+r[2]+r[3],e=n[1]+n[2]+n[3],t>e?1:t=SNt}function TNt(t){return Number.isInteger(t)}function Xxe(){return!0}var wNt=/[^\\]\\Z/;function RNt(t){if(wNt.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var nbe=_(WA=>{"use strict";Object.defineProperty(WA,"__esModule",{value:!0});WA.formatLimitDefinition=void 0;var NNt=jU(),tu=Vt(),Fp=tu.operators,UO={formatMaximum:{okStr:"<=",ok:Fp.LTE,fail:Fp.GT},formatMinimum:{okStr:">=",ok:Fp.GTE,fail:Fp.LT},formatExclusiveMaximum:{okStr:"<",ok:Fp.LT,fail:Fp.GTE},formatExclusiveMinimum:{okStr:">",ok:Fp.GT,fail:Fp.LTE}},ONt={message:({keyword:t,schemaCode:e})=>(0,tu.str)`should be ${UO[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,tu._)`{comparison: ${UO[t].okStr}, limit: ${e}}`};WA.formatLimitDefinition={keyword:Object.keys(UO),type:"string",schemaType:"string",$data:!0,error:ONt,code(t){let{gen:e,data:r,schemaCode:n,keyword:s,it:i}=t,{opts:a,self:o}=i;if(!a.validateFormats)return;let c=new NNt.KeywordCxt(i,o.RULES.all.format.definition,"format");c.$data?u():l();function u(){let f=e.scopeValue("formats",{ref:o.formats,code:a.code.formats}),p=e.const("fmt",(0,tu._)`${f}[${c.schemaCode}]`);t.fail$data((0,tu.or)((0,tu._)`typeof ${p} != "object"`,(0,tu._)`${p} instanceof RegExp`,(0,tu._)`typeof ${p}.compare != "function"`,d(p)))}function l(){let f=c.schema,p=o.formats[f];if(!p||p===!0)return;if(typeof p!="object"||p instanceof RegExp||typeof p.compare!="function")throw new Error(`"${s}": format "${f}" does not define "compare" function`);let m=e.scopeValue("formats",{key:f,ref:p,code:a.code.formats?(0,tu._)`${a.code.formats}${(0,tu.getProperty)(f)}`:void 0});t.fail$data(d(m))}function d(f){return(0,tu._)`${f}.compare(${r}, ${n}) ${UO[s].fail} 0`}},dependencies:["format"]};var kNt=t=>(t.addKeyword(WA.formatLimitDefinition),t);WA.default=kNt});var obe=_((GE,abe)=>{"use strict";Object.defineProperty(GE,"__esModule",{value:!0});var $A=$O(),PNt=nbe(),ZU=Vt(),sbe=new ZU.Name("fullFormats"),DNt=new ZU.Name("fastFormats"),eF=(t,e={keywords:!0})=>{if(Array.isArray(e))return ibe(t,e,$A.fullFormats,sbe),t;let[r,n]=e.mode==="fast"?[$A.fastFormats,DNt]:[$A.fullFormats,sbe],s=e.formats||$A.formatNames;return ibe(t,s,r,n),e.keywords&&(0,PNt.default)(t),t};eF.get=(t,e="full")=>{let n=(e==="fast"?$A.fastFormats:$A.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function ibe(t,e,r,n){var s,i;(s=(i=t.opts.code).formats)!==null&&s!==void 0||(i.formats=(0,ZU._)`require("ajv-formats/dist/formats").${n}`);for(let a of e)t.addFormat(a,r[a])}abe.exports=GE=eF;Object.defineProperty(GE,"__esModule",{value:!0});GE.default=eF});var rF=_((t$r,cbe)=>{"use strict";var BNt=jU(),LNt=zU(),MNt=obe(),WNt=eO()({proto:!0}),tF=class t{constructor(e){this.ajv=new BNt({...e,strictSchema:!1,validateSchema:!1,allowUnionTypes:!0,uriResolver:LNt}),MNt(this.ajv),this.ajv.addKeyword({keyword:"fjs_type",type:"object",errors:!1,validate:(r,n)=>n instanceof Date}),this._ajvSchemas={},this._ajvOptions=e||{}}addSchema(e,r){let n=e.$id||r;if(e.$id!==void 0&&e.$id[0]==="#"&&(n=r+e.$id),this.ajv.refs[n]===void 0&&this.ajv.schemas[n]===void 0){let s=WNt(e);this.convertSchemaToAjvFormat(s),this.ajv.addSchema(s,n),this._ajvSchemas[n]=e}}validate(e,r){return this.ajv.validate(e,r)}convertSchemaToAjvFormat(e){if(e!==null){e.type==="string"?(e.fjs_type="string",e.type=["string","object"]):Array.isArray(e.type)&&e.type.includes("string")&&!e.type.includes("object")&&(e.fjs_type="string",e.type.push("object"));for(let r in e)typeof e[r]=="object"&&this.convertSchemaToAjvFormat(e[r])}}getState(){return{ajvOptions:this._ajvOptions,ajvSchemas:this._ajvSchemas}}static restoreFromState(e){let r=new t(e.ajvOptions);for(let[n,s]of Object.entries(e.ajvSchemas))r.ajv.addSchema(s,n);return r}};cbe.exports=tF});var sF=_((r$r,nF)=>{"use strict";function $Nt(t,e,r,n){let s="";e.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 @@ -147,7 +147,7 @@ ${b}`),h.pop(),`{${C}}`}case"number":return isFinite(m)?String(m):e?e(m):"null"; ${s} - module.exports = ${t.toString()}(validator, serializer)`}t$.exports=NIt;t$.exports.dependencies={Serializer:n8(),Validator:e$()}});var yAe=E((z3r,AAe)=>{"use strict";var{dependencies:OIt}=r$(),{Serializer:PIt,Validator:V3r}=OIt,DIt={mode:"standalone"},kIt=PIt.restoreFromState(DIt),LIt=null;AAe.exports=function(e,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}(LIt,kIt)});var U1=E((K3r,_Ae)=>{"use strict";var xAe=require("node:http").STATUS_CODES,BIt=e5(),{kReplyHeaders:Dm,kReplyNextErrorHandler:AN,kReplyIsRunningOnErrorHook:MIt,kReplyHasStatusCode:WIt,kRouteContext:EAe}=Qs(),{FST_ERR_REP_INVALID_PAYLOAD_TYPE:$It,FST_ERR_FAILED_ERROR_SERIALIZATION:FIt}=Ci(),{getSchemaSerializer:UIt}=u1(),n$=yAe(),qIt={func:HIt,toJSON(){return this.func.name.toString()+"()"}};function jIt(t,e,r){t[MIt]=!1;let n=t[EAe];if(t[AN]===!1){bAe(e,t,function(o,c){try{o.raw.writeHead(o.raw.statusCode,o[Dm])}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=t[AN]||n.errorHandler;t[AN]=Object.getPrototypeOf(s),delete t[Dm]["content-type"],delete t[Dm]["content-length"];let i=s.func;if(!i){t[AN]=!1,bAe(e,t,r);return}let a=i(e,t.request,t);a!==void 0&&(a!==null&&typeof a.then=="function"?BIt(a,t):t.send(a))}function HIt(t,e,r){if(GIt(t,r),!r[WIt]||r.statusCode===200){let n=t.statusCode||t.status;r.code(n>=400?n:500)}r.statusCode<500?r.log.info({res:r,err:t},t&&t.message):r.log.error({req:e,res:r,err:t},t&&t.message),r.send(t)}function bAe(t,e,r){let n=e.raw,s=e.statusCode;e[Dm]["content-type"]=e[Dm]["content-type"]??"application/json; charset=utf-8";let i;try{let a=UIt(e[EAe],s,e[Dm]["content-type"]);i=a===!1?n$({error:xAe[s+""],code:t.code,message:t.message,statusCode:s}):a(Object.create(t,{error:{value:xAe[s+""]},message:{value:t.message},statusCode:{value:s}}))}catch(a){e.log.error({err:a,statusCode:n.statusCode},"The serializer for the given status code failed"),e.code(500),i=n$(new FIt(a.message,t.message))}typeof i!="string"&&!Buffer.isBuffer(i)&&(i=n$(new $It(typeof i))),e[Dm]["content-length"]=""+Buffer.byteLength(i),r(e,i)}function QIt(t=qIt,e){if(!e)return t;let r=Object.create(t);return r.func=e,r}function GIt(t,e){let r=e.raw,n=r.statusCode;n=n>=400?n:500,t!=null&&(t.headers!==void 0&&e.headers(t.headers),t.status>=400?n=t.status:t.statusCode>=400&&(n=t.statusCode)),r.statusCode=n}_Ae.exports={buildErrorHandler:QIt,handleError:jIt}});var SN=E((Y3r,_N)=>{"use strict";var o$=require("node:stream").finished,VIt=require("node:stream").Readable,{kFourOhFourContext:SAe,kPublicRouteContext:vAe,kReplyErrorHandlerCalled:PAe,kReplyHijacked:q1,kReplyStartTime:j1,kReplyEndTime:u$,kReplySerializer:gd,kReplySerializerDefault:xN,kReplyIsError:bN,kReplyHeaders:bn,kReplyTrailers:Gs,kReplyHasStatusCode:l$,kReplyIsRunningOnErrorHook:d$,kReplyNextErrorHandler:zIt,kDisableRequestLogging:DAe,kSchemaResponse:EN,kReplyCacheSerializeFns:_p,kSchemaController:s$,kOptions:KIt,kRouteContext:rr}=Qs(),{onSendHookRunner:kAe,onResponseHookRunner:YIt,preHandlerHookRunner:JIt,preSerializationHookRunner:XIt}=up(),CAe=s5()[Symbol.for("internals")],ZIt=c1(),c$=ZIt.now,{handleError:IAe}=U1(),{getSchemaSerializer:eTt}=u1(),i$={JSON:"application/json; charset=utf-8",PLAIN:"text/plain; charset=utf-8",OCTET:"application/octet-stream"},{FST_ERR_REP_INVALID_PAYLOAD_TYPE:tTt,FST_ERR_REP_RESPONSE_BODY_CONSUMED:rTt,FST_ERR_REP_ALREADY_SENT:LAe,FST_ERR_REP_SENT_VALUE:nTt,FST_ERR_SEND_INSIDE_ONERR:sTt,FST_ERR_BAD_STATUS_CODE:iTt,FST_ERR_BAD_TRAILER_NAME:aTt,FST_ERR_BAD_TRAILER_VALUE:oTt,FST_ERR_MISSING_SERIALIZATION_FN:cTt,FST_ERR_MISSING_CONTENTTYPE_SERIALIZATION_FN:uTt}=Ci(),{FSTDEP010:lTt,FSTDEP013:dTt,FSTDEP019:fTt,FSTDEP020:pTt}=cd(),BAe=Object.prototype.toString;function dn(t,e,r){this.raw=t,this[gd]=null,this[PAe]=!1,this[bN]=!1,this[d$]=!1,this.request=e,this[bn]={},this[Gs]=null,this[l$]=!1,this[j1]=void 0,this.log=r}dn.props=[];Object.defineProperties(dn.prototype,{[rr]:{get(){return this.request[rr]}},context:{get(){return fTt(),this.request[rr]}},elapsedTime:{get(){return this[j1]===void 0?0:(this[u$]||c$())-this[j1]}},server:{get(){return this.request[rr].server}},sent:{enumerable:!0,get(){return(this[q1]||this.raw.writableEnded)===!0},set(t){if(lTt(),t!==!0)throw new nTt;if(this.sent&&this[q1])throw new LAe(this.request.url,this.request.method);this[q1]=!0}},statusCode:{get(){return this.raw.statusCode},set(t){this.code(t)}},[vAe]:{get(){return this.request[vAe]}}});dn.prototype.hijack=function(){return this[q1]=!0,this};dn.prototype.send=function(t){if(this[d$]===!0)throw new sTt;if(this.sent)return this.log.warn({err:new LAe(this.request.url,this.request.method)}),this;if(t instanceof Error||this[bN]===!0)return this[bN]=!1,H1(this,t,km),this;if(t===void 0)return km(this,t),this;let e=this.getHeader("content-type"),r=e!==void 0;if(t!==null){if(typeof t.pipe=="function"||typeof t.getReader=="function"||BAe.call(t)==="[object Response]")return km(this,t),this;if(t?.buffer instanceof ArrayBuffer){r===!1&&(this[bn]["content-type"]=i$.OCTET);let n=Buffer.isBuffer(t)?t:Buffer.from(t.buffer,t.byteOffset,t.byteLength);return km(this,n),this}if(r===!1&&typeof t=="string")return this[bn]["content-type"]=i$.PLAIN,km(this,t),this}if(this[gd]!==null){if(typeof t!="string")return TAe(this,t),this;t=this[gd](t)}else if(r===!1||e.indexOf("json")>-1){if(r===!1)this[bn]["content-type"]=i$.JSON;else if(e.indexOf("charset")===-1){let n=e.trim();n.endsWith(";")?this[bn]["content-type"]=`${n} charset=utf-8`:this[bn]["content-type"]=`${n}; charset=utf-8`}if(typeof t!="string")return TAe(this,t),this}return km(this,t),this};dn.prototype.getHeader=function(t){t=t.toLowerCase();let e=this.raw,r=this[bn][t];return r===void 0&&e.hasHeader(t)&&(r=e.getHeader(t)),r};dn.prototype.getHeaders=function(){return{...this.raw.getHeaders(),...this[bn]}};dn.prototype.hasHeader=function(t){return t=t.toLowerCase(),this[bn][t]!==void 0||this.raw.hasHeader(t)};dn.prototype.removeHeader=function(t){return delete this[bn][t.toLowerCase()],this};dn.prototype.header=function(t,e=""){return t=t.toLowerCase(),this[bn][t]&&t==="set-cookie"?(typeof this[bn][t]=="string"&&(this[bn][t]=[this[bn][t]]),Array.isArray(e)?Array.prototype.push.apply(this[bn][t],e):this[bn][t].push(e)):this[bn][t]=e,this};dn.prototype.headers=function(t){let e=Object.keys(t);for(var r=0;r!==e.length;++r){let n=e[r];this.header(n,t[n])}return this};var mTt=new Set(["transfer-encoding","content-length","host","cache-control","max-forwards","te","authorization","set-cookie","content-encoding","content-type","content-range","trailer"]);dn.prototype.trailer=function(t,e){if(t=t.toLowerCase(),mTt.has(t))throw new aTt(t);if(typeof e!="function")throw new oTt(t,typeof e);return this[Gs]===null&&(this[Gs]={}),this[Gs][t]=e,this};dn.prototype.hasTrailer=function(t){return this[Gs]?.[t.toLowerCase()]!==void 0};dn.prototype.removeTrailer=function(t){return this[Gs]===null?this:(this[Gs][t.toLowerCase()]=void 0,this)};dn.prototype.code=function(t){let e=Number(t);if(isNaN(e)||e<100||e>599)throw new iTt(t||String(t));return this.raw.statusCode=e,this[l$]=!0,this};dn.prototype.status=dn.prototype.code;dn.prototype.getSerializationFunction=function(t,e){let r;return typeof t=="string"||typeof t=="number"?typeof e=="string"?r=this[rr][EN]?.[t]?.[e]:r=this[rr][EN]?.[t]:typeof t=="object"&&(r=this[rr][_p]?.get(t)),r};dn.prototype.compileSerializationSchema=function(t,e=null,r=null){let{request:n}=this,{method:s,url:i}=n;if(this[rr][_p]?.has(t))return this[rr][_p].get(t);let o=(this[rr].serializerCompiler||this.server[s$].serializerCompiler||this.server[s$].setupSerializer(this.server[KIt])||this.server[s$].serializerCompiler)({schema:t,method:s,url:i,httpStatus:e,contentType:r});return this[rr][_p]==null&&(this[rr][_p]=new WeakMap),this[rr][_p].set(t,o),o};dn.prototype.serializeInput=function(t,e,r,n){let s=r,i;if(r=typeof e=="string"||typeof e=="number"?e:r,n=r&&s!==r?s:n,r!=null){if(n!=null?i=this[rr][EN]?.[r]?.[n]:i=this[rr][EN]?.[r],i==null)throw n?new uTt(r,n):new cTt(r)}else this[rr][_p]?.has(e)?i=this[rr][_p].get(e):i=this.compileSerializationSchema(e,r,n);return i(t)};dn.prototype.serialize=function(t){return this[gd]!==null?this[gd](t):this[rr]&&this[rr][xN]?this[rr][xN](t,this.raw.statusCode):$Ae(this[rr],t,this.raw.statusCode)};dn.prototype.serializer=function(t){return this[gd]=t,this};dn.prototype.type=function(t){return this[bn]["content-type"]=t,this};dn.prototype.redirect=function(t,e){return typeof t=="string"&&(e=t,t=this[l$]?this.raw.statusCode:302),this.header("location",e).code(t).send()};dn.prototype.callNotFound=function(){return bTt(this),this};dn.prototype.getResponseTime=function(){return pTt(),this.elapsedTime};dn.prototype.then=function(t,e){if(this.sent){t();return}o$(this.raw,r=>{r&&r.code!=="ERR_STREAM_PREMATURE_CLOSE"?e?e(r):this.log&&this.log.warn("unhandled rejection on reply.then"):t()})};function TAe(t,e){t[rr].preSerialization!==null?XIt(t[rr].preSerialization,t.request,t,e,wAe):wAe(null,t.request,t,e)}function wAe(t,e,r,n){if(t!=null){H1(r,t);return}try{r[gd]!==null?n=r[gd](n):r[rr]&&r[rr][xN]?n=r[rr][xN](n,r.raw.statusCode):n=$Ae(r[rr],n,r.raw.statusCode,r[bn]["content-type"])}catch(s){hTt(s,r),H1(r,s);return}km(r,n)}function hTt(t,e){t.serialization=e[rr].config}function km(t,e){t[rr].onSend!==null?kAe(t[rr].onSend,t.request,t,e,gTt):MAe(t,e)}function gTt(t,e,r,n){t!=null?H1(r,t):MAe(r,n)}function a$(t,e){let r=t.raw;try{r.writeHead(e,t[bn])}catch(n){throw n.code==="ERR_HTTP_HEADERS_SENT"&&t.log.warn(`Reply was already sent, did you forget to "return reply" in the "${t.request.raw.url}" (${t.request.raw.method}) route?`),n}}function MAe(t,e){let r=t.raw,n=t.request;if(t[Gs]!==null){let a=Object.keys(t[Gs]),o="";for(let c of a)typeof t[Gs][c]=="function"&&(o+=" ",o+=c);t.header("Transfer-Encoding","chunked"),t.header("Trailer",o.trim())}let s=BAe.call(e)==="[object Response]";s&&typeof e.status=="number"&&t.code(e.status);let i=r.statusCode;if(e==null){i>=200&&i!==204&&i!==304&&n.method!=="HEAD"&&t[Gs]===null&&(t[bn]["content-length"]="0"),a$(t,i),yN(e,r,t);return}if(i>=100&&i<200||i===204){t.removeHeader("content-type"),t.removeHeader("content-length"),a$(t,i),yN(void 0,r,t),typeof e.resume=="function"&&(e.on("error",FAe),e.resume());return}if(typeof e.pipe=="function"){WAe(e,r,t);return}if(typeof e.getReader=="function"){NAe(e,r,t);return}if(s){if(typeof e.headers=="object"&&typeof e.headers.forEach=="function")for(let[a,o]of e.headers)t.header(a,o);if(e.body!=null){if(e.bodyUsed)throw new rTt;NAe(e.body,r,t)}return}if(typeof e!="string"&&!Buffer.isBuffer(e))throw new tTt(typeof e);if(t[Gs]===null){let a=t[bn]["content-length"];(!a||n.raw.method!=="HEAD"&&Number(a)!==Buffer.byteLength(e))&&(t[bn]["content-length"]=""+Buffer.byteLength(e))}a$(t,i),r.write(e),yN(e,r,t)}function RAe(t,e,r){e.code==="ERR_STREAM_PREMATURE_CLOSE"?t[DAe]||t.info({res:r},"stream closed prematurely"):t.warn({err:e},"response terminated with an error with headers already sent")}function NAe(t,e,r){let n=VIt.fromWeb(t);WAe(n,e,r)}function WAe(t,e,r){let n=!0,s=!1;if(ATt(t,e,r),o$(t,{readable:!0,writable:!1},function(i){n=!1,i!=null&&(e.headersSent||r.request.raw.aborted===!0?(s||(s=!0,RAe(r.log,i,e)),e.destroy()):H1(r,i))}),o$(e,function(i){n&&(i!=null&&e.headersSent&&!s&&(s=!0,RAe(r.log,i,e)),typeof t.destroy=="function"?t.destroy():typeof t.close=="function"?t.close(FAe):typeof t.abort=="function"?t.abort():r.log.warn("stream payload does not end properly"))}),e.headersSent)r.log.warn("response will send, but you shouldn't use res.writeHead in stream mode");else for(let i in r[bn])e.setHeader(i,r[bn][i]);t.pipe(e)}function yN(t,e,r){if(r[Gs]===null){e.end(null,null,null);return}let n=Object.keys(r[Gs]),s={},i=0,a=!0;function o(){i===0&&(e.addTrailers(s),e.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[Gs][c]!="function")continue;a=!1,i--;let l=r[Gs][c](r,t,u);typeof l=="object"&&typeof l.then=="function"?l.then(d=>u(null,d),u):l!=null&&(dTt(),u(null,l))}a&&e.end(null,null,null)}function ATt(t,e,r){r[Gs]!==null&&t.on("end",()=>yN(null,e,r))}function H1(t,e,r){t[rr].onError!==null&&!t[zIt]?(t[d$]=!0,kAe(t[rr].onError,t.request,t,e,()=>IAe(t,e,r))):IAe(t,e,r)}function yTt(t){t[j1]=c$();let e=r=>{t[u$]=c$(),t.raw.removeListener("finish",e),t.raw.removeListener("error",e);let n=t[rr];n&&n.onResponse!==null?YIt(n.onResponse,t.request,t,OAe):OAe(r,t.request,t)};t.raw.on("finish",e),t.raw.on("error",e)}function OAe(t,e,r){if(r.log[DAe])return;let n=r.elapsedTime;if(t!=null){r.log.error({res:r,err:t,responseTime:n},"request errored");return}r.log.info({res:r,responseTime:n},"request completed")}function xTt(t){let e=t.props.slice();function r(n,s,i){this.raw=n,this[bN]=!1,this[PAe]=!1,this[q1]=!1,this[gd]=null,this.request=s,this[bn]={},this[Gs]=null,this[j1]=void 0,this[u$]=void 0,this.log=i;for(var a,o=0;o{"use strict";UAe.exports=ETt;function ETt(t){if(!t)throw new TypeError("argument req is required");var e=STt(t.headers["x-forwarded-for"]||""),r=_Tt(t),n=[r].concat(e);return n}function _Tt(t){return t.socket?t.socket.remoteAddress:t.connection.remoteAddress}function STt(t){for(var e=t.length,r=[],n=t.length,s=t.length-1;s>=0;s--)switch(t.charCodeAt(s)){case 32:n===e&&(n=e=s);break;case 44:n!==e&&r.push(t.substring(n,e)),n=e=s;break;default:n=s;break}return n!==e&&r.push(t.substring(n,e)),r}});var HAe=E((jAe,Q1)=>{(function(){var t,e,r,n,s,i,a,o,c;e={},o=this,typeof Q1<"u"&&Q1!==null&&Q1.exports?Q1.exports=e:o.ipaddr=e,a=function(u,l,d,f){var p,m;if(u.length!==l.length)throw new Error("ipaddr: cannot match CIDR for objects with different lengths");for(p=0;f>0;){if(m=d-f,m<0&&(m=0),u[p]>>m!==l[p]>>m)return!1;f-=d,p+=1}return!0},e.subnetMatch=function(u,l,d){var f,p,m,h,A;d==null&&(d="unicast");for(m in l)for(h=l[m],h[0]&&!(h[0]instanceof Array)&&(h=[h]),f=0,p=h.length;f=0;d=f+=-1)if(p=this.octets[d],p in A){if(h=A[p],m&&h!==0)return null;h!==8&&(m=!0),l+=h}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")},e.IPv4.parser=function(u){var l,d,f,p,m;if(d=function(h){return h[0]==="0"&&h[1]!=="x"?parseInt(h,8):parseInt(h)},l=u.match(n.fourOctet))return function(){var h,A,g,b;for(g=l.slice(1,6),b=[],h=0,A=g.length;h4294967295||m<0)throw new Error("ipaddr: address outside defined range");return function(){var h,A;for(A=[],p=h=0;h<=24;p=h+=8)A.push(m>>p&255);return A}().reverse()}else return null},e.IPv6=function(){function u(l,d){var f,p,m,h,A,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,m=0,h=g.length;md&&(l=f.index,d=f[0].length);return d<0?m:m.substring(0,l)+"::"+m.substring(l+d)},u.prototype.toByteArray=function(){var l,d,f,p,m;for(l=[],m=this.parts,d=0,f=m.length;d>8),l.push(p&255);return l},u.prototype.toNormalizedString=function(){var l,d,f;return l=function(){var p,m,h,A;for(h=this.parts,A=[],p=0,m=h.length;p>8,l&255,d>>8,d&255])},u.prototype.prefixLengthFromSubnetMask=function(){var l,d,f,p,m,h,A;for(A={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,m=!1,d=f=7;f>=0;d=f+=-1)if(p=this.parts[d],p in A){if(h=A[p],m&&h!==0)return null;h!==16&&(m=!0),l+=h}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")},t=function(u,l){var d,f,p,m,h,A;if(u.indexOf("::")!==u.lastIndexOf("::"))return null;for(A=(u.match(i.zoneIndex)||[])[0],A&&(A=A.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(h=l-d,m=":";h--;)m+="0:";return u=u.replace("::",m),u[0]===":"&&(u=u.slice(1)),u[u.length-1]===":"&&(u=u.slice(0,-1)),l=function(){var g,b,y,x;for(y=u.split(":"),x=[],g=0,b=y.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")},e.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")},e.isValid=function(u){return e.IPv6.isValid(u)||e.IPv4.isValid(u)},e.parse=function(u){if(e.IPv6.isValid(u))return e.IPv6.parse(u);if(e.IPv4.isValid(u))return e.IPv4.parse(u);throw new Error("ipaddr: the address has neither IPv6 nor IPv4 format")},e.parseCIDR=function(u){var l;try{return e.IPv6.parseCIDR(u)}catch(d){l=d;try{return e.IPv4.parseCIDR(u)}catch(f){throw l=f,new Error("ipaddr: the address has neither IPv6 nor IPv4 CIDR format")}}},e.fromByteArray=function(u){var l;if(l=u.length,l===4)return new e.IPv4(u);if(l===16)return new e.IPv6(u);throw new Error("ipaddr: the binary input is neither an IPv6 nor IPv4 address")},e.process=function(u){var l;return l=this.parse(u),l.kind()==="ipv6"&&l.isIPv4MappedAddress()?l.toIPv4Address():l}}).call(jAe)});var KAe=E((X3r,IN)=>{"use strict";IN.exports=NTt;IN.exports.all=VAe;IN.exports.compile=zAe;var vTt=qAe(),GAe=HAe(),CTt=/^[0-9]+$/,vN=GAe.isValid,CN=GAe.parse,QAe={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 VAe(t,e){var r=vTt(t);if(!e)return r;typeof e!="function"&&(e=zAe(e));for(var n=0;ns)throw new TypeError("invalid range on address: "+t);return[n,i]}function RTt(t){var e=CN(t),r=e.kind();return r==="ipv4"?e.prefixLengthFromSubnetMask():null}function NTt(t,e){if(!t)throw new TypeError("req argument is required");if(!e)throw new TypeError("trust argument is required");var r=VAe(t,e),n=r[r.length-1];return n}function OTt(){return!1}function PTt(t){return function(r){if(!vN(r))return!1;for(var n=CN(r),s,i=n.kind(),a=0;a{"use strict";var kTt="2.0.0",LTt=Number.MAX_SAFE_INTEGER||9007199254740991,BTt=16,MTt=250,WTt=["major","premajor","minor","preminor","patch","prepatch","prerelease"];YAe.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:BTt,MAX_SAFE_BUILD_LENGTH:MTt,MAX_SAFE_INTEGER:LTt,RELEASE_TYPES:WTt,SEMVER_SPEC_VERSION:kTt,FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var V1=E((eDr,JAe)=>{"use strict";var $Tt=typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...t)=>console.error("SEMVER",...t):()=>{};JAe.exports=$Tt});var iy=E((Vu,XAe)=>{"use strict";var{MAX_SAFE_COMPONENT_LENGTH:f$,MAX_SAFE_BUILD_LENGTH:FTt,MAX_LENGTH:UTt}=G1(),qTt=V1();Vu=XAe.exports={};var jTt=Vu.re=[],HTt=Vu.safeRe=[],Ge=Vu.src=[],QTt=Vu.safeSrc=[],Ve=Vu.t={},GTt=0,p$="[a-zA-Z0-9-]",VTt=[["\\s",1],["\\d",UTt],[p$,FTt]],zTt=t=>{for(let[e,r]of VTt)t=t.split(`${e}*`).join(`${e}{0,${r}}`).split(`${e}+`).join(`${e}{1,${r}}`);return t},Mt=(t,e,r)=>{let n=zTt(e),s=GTt++;qTt(t,s,e),Ve[t]=s,Ge[s]=e,QTt[s]=n,jTt[s]=new RegExp(e,r?"g":void 0),HTt[s]=new RegExp(n,r?"g":void 0)};Mt("NUMERICIDENTIFIER","0|[1-9]\\d*");Mt("NUMERICIDENTIFIERLOOSE","\\d+");Mt("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${p$}*`);Mt("MAINVERSION",`(${Ge[Ve.NUMERICIDENTIFIER]})\\.(${Ge[Ve.NUMERICIDENTIFIER]})\\.(${Ge[Ve.NUMERICIDENTIFIER]})`);Mt("MAINVERSIONLOOSE",`(${Ge[Ve.NUMERICIDENTIFIERLOOSE]})\\.(${Ge[Ve.NUMERICIDENTIFIERLOOSE]})\\.(${Ge[Ve.NUMERICIDENTIFIERLOOSE]})`);Mt("PRERELEASEIDENTIFIER",`(?:${Ge[Ve.NONNUMERICIDENTIFIER]}|${Ge[Ve.NUMERICIDENTIFIER]})`);Mt("PRERELEASEIDENTIFIERLOOSE",`(?:${Ge[Ve.NONNUMERICIDENTIFIER]}|${Ge[Ve.NUMERICIDENTIFIERLOOSE]})`);Mt("PRERELEASE",`(?:-(${Ge[Ve.PRERELEASEIDENTIFIER]}(?:\\.${Ge[Ve.PRERELEASEIDENTIFIER]})*))`);Mt("PRERELEASELOOSE",`(?:-?(${Ge[Ve.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${Ge[Ve.PRERELEASEIDENTIFIERLOOSE]})*))`);Mt("BUILDIDENTIFIER",`${p$}+`);Mt("BUILD",`(?:\\+(${Ge[Ve.BUILDIDENTIFIER]}(?:\\.${Ge[Ve.BUILDIDENTIFIER]})*))`);Mt("FULLPLAIN",`v?${Ge[Ve.MAINVERSION]}${Ge[Ve.PRERELEASE]}?${Ge[Ve.BUILD]}?`);Mt("FULL",`^${Ge[Ve.FULLPLAIN]}$`);Mt("LOOSEPLAIN",`[v=\\s]*${Ge[Ve.MAINVERSIONLOOSE]}${Ge[Ve.PRERELEASELOOSE]}?${Ge[Ve.BUILD]}?`);Mt("LOOSE",`^${Ge[Ve.LOOSEPLAIN]}$`);Mt("GTLT","((?:<|>)?=?)");Mt("XRANGEIDENTIFIERLOOSE",`${Ge[Ve.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);Mt("XRANGEIDENTIFIER",`${Ge[Ve.NUMERICIDENTIFIER]}|x|X|\\*`);Mt("XRANGEPLAIN",`[v=\\s]*(${Ge[Ve.XRANGEIDENTIFIER]})(?:\\.(${Ge[Ve.XRANGEIDENTIFIER]})(?:\\.(${Ge[Ve.XRANGEIDENTIFIER]})(?:${Ge[Ve.PRERELEASE]})?${Ge[Ve.BUILD]}?)?)?`);Mt("XRANGEPLAINLOOSE",`[v=\\s]*(${Ge[Ve.XRANGEIDENTIFIERLOOSE]})(?:\\.(${Ge[Ve.XRANGEIDENTIFIERLOOSE]})(?:\\.(${Ge[Ve.XRANGEIDENTIFIERLOOSE]})(?:${Ge[Ve.PRERELEASELOOSE]})?${Ge[Ve.BUILD]}?)?)?`);Mt("XRANGE",`^${Ge[Ve.GTLT]}\\s*${Ge[Ve.XRANGEPLAIN]}$`);Mt("XRANGELOOSE",`^${Ge[Ve.GTLT]}\\s*${Ge[Ve.XRANGEPLAINLOOSE]}$`);Mt("COERCEPLAIN",`(^|[^\\d])(\\d{1,${f$}})(?:\\.(\\d{1,${f$}}))?(?:\\.(\\d{1,${f$}}))?`);Mt("COERCE",`${Ge[Ve.COERCEPLAIN]}(?:$|[^\\d])`);Mt("COERCEFULL",Ge[Ve.COERCEPLAIN]+`(?:${Ge[Ve.PRERELEASE]})?(?:${Ge[Ve.BUILD]})?(?:$|[^\\d])`);Mt("COERCERTL",Ge[Ve.COERCE],!0);Mt("COERCERTLFULL",Ge[Ve.COERCEFULL],!0);Mt("LONETILDE","(?:~>?)");Mt("TILDETRIM",`(\\s*)${Ge[Ve.LONETILDE]}\\s+`,!0);Vu.tildeTrimReplace="$1~";Mt("TILDE",`^${Ge[Ve.LONETILDE]}${Ge[Ve.XRANGEPLAIN]}$`);Mt("TILDELOOSE",`^${Ge[Ve.LONETILDE]}${Ge[Ve.XRANGEPLAINLOOSE]}$`);Mt("LONECARET","(?:\\^)");Mt("CARETTRIM",`(\\s*)${Ge[Ve.LONECARET]}\\s+`,!0);Vu.caretTrimReplace="$1^";Mt("CARET",`^${Ge[Ve.LONECARET]}${Ge[Ve.XRANGEPLAIN]}$`);Mt("CARETLOOSE",`^${Ge[Ve.LONECARET]}${Ge[Ve.XRANGEPLAINLOOSE]}$`);Mt("COMPARATORLOOSE",`^${Ge[Ve.GTLT]}\\s*(${Ge[Ve.LOOSEPLAIN]})$|^$`);Mt("COMPARATOR",`^${Ge[Ve.GTLT]}\\s*(${Ge[Ve.FULLPLAIN]})$|^$`);Mt("COMPARATORTRIM",`(\\s*)${Ge[Ve.GTLT]}\\s*(${Ge[Ve.LOOSEPLAIN]}|${Ge[Ve.XRANGEPLAIN]})`,!0);Vu.comparatorTrimReplace="$1$2$3";Mt("HYPHENRANGE",`^\\s*(${Ge[Ve.XRANGEPLAIN]})\\s+-\\s+(${Ge[Ve.XRANGEPLAIN]})\\s*$`);Mt("HYPHENRANGELOOSE",`^\\s*(${Ge[Ve.XRANGEPLAINLOOSE]})\\s+-\\s+(${Ge[Ve.XRANGEPLAINLOOSE]})\\s*$`);Mt("STAR","(<|>)?=?\\s*\\*");Mt("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");Mt("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var TN=E((tDr,ZAe)=>{"use strict";var KTt=Object.freeze({loose:!0}),YTt=Object.freeze({}),JTt=t=>t?typeof t!="object"?KTt:t:YTt;ZAe.exports=JTt});var m$=E((rDr,rye)=>{"use strict";var eye=/^[0-9]+$/,tye=(t,e)=>{if(typeof t=="number"&&typeof e=="number")return t===e?0:ttye(e,t);rye.exports={compareIdentifiers:tye,rcompareIdentifiers:XTt}});var Ni=E((nDr,sye)=>{"use strict";var wN=V1(),{MAX_LENGTH:nye,MAX_SAFE_INTEGER:RN}=G1(),{safeRe:NN,t:ON}=iy(),ZTt=TN(),{compareIdentifiers:h$}=m$(),g$=class t{constructor(e,r){if(r=ZTt(r),e instanceof t){if(e.loose===!!r.loose&&e.includePrerelease===!!r.includePrerelease)return e;e=e.version}else if(typeof e!="string")throw new TypeError(`Invalid version. Must be a string. Got type "${typeof e}".`);if(e.length>nye)throw new TypeError(`version is longer than ${nye} characters`);wN("SemVer",e,r),this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease;let n=e.trim().match(r.loose?NN[ON.LOOSE]:NN[ON.FULL]);if(!n)throw new TypeError(`Invalid Version: ${e}`);if(this.raw=e,this.major=+n[1],this.minor=+n[2],this.patch=+n[3],this.major>RN||this.major<0)throw new TypeError("Invalid major version");if(this.minor>RN||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>RN||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&&ie.major?1:this.minore.minor?1:this.patche.patch?1:0}comparePre(e){if(e instanceof t||(e=new t(e,this.options)),this.prerelease.length&&!e.prerelease.length)return-1;if(!this.prerelease.length&&e.prerelease.length)return 1;if(!this.prerelease.length&&!e.prerelease.length)return 0;let r=0;do{let n=this.prerelease[r],s=e.prerelease[r];if(wN("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 h$(n,s)}while(++r)}compareBuild(e){e instanceof t||(e=new t(e,this.options));let r=0;do{let n=this.build[r],s=e.build[r];if(wN("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 h$(n,s)}while(++r)}inc(e,r,n){if(e.startsWith("pre")){if(!r&&n===!1)throw new Error("invalid increment argument: identifier is empty");if(r){let s=`-${r}`.match(this.options.loose?NN[ON.PRERELEASELOOSE]:NN[ON.PRERELEASE]);if(!s||s[1]!==r)throw new Error(`invalid identifier: ${r}`)}}switch(e){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]),h$(this.prerelease[0],r)===0?isNaN(this.prerelease[1])&&(this.prerelease=i):this.prerelease=i}break}default:throw new Error(`invalid increment argument: ${e}`)}return this.raw=this.format(),this.build.length&&(this.raw+=`+${this.build.join(".")}`),this}};sye.exports=g$});var Lm=E((sDr,aye)=>{"use strict";var iye=Ni(),ewt=(t,e,r=!1)=>{if(t instanceof iye)return t;try{return new iye(t,e)}catch(n){if(!r)return null;throw n}};aye.exports=ewt});var cye=E((iDr,oye)=>{"use strict";var twt=Lm(),rwt=(t,e)=>{let r=twt(t,e);return r?r.version:null};oye.exports=rwt});var lye=E((aDr,uye)=>{"use strict";var nwt=Lm(),swt=(t,e)=>{let r=nwt(t.trim().replace(/^[=v]+/,""),e);return r?r.version:null};uye.exports=swt});var pye=E((oDr,fye)=>{"use strict";var dye=Ni(),iwt=(t,e,r,n,s)=>{typeof r=="string"&&(s=n,n=r,r=void 0);try{return new dye(t instanceof dye?t.version:t,r).inc(e,n,s).version}catch{return null}};fye.exports=iwt});var gye=E((cDr,hye)=>{"use strict";var mye=Lm(),awt=(t,e)=>{let r=mye(t,null,!0),n=mye(e,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"};hye.exports=awt});var yye=E((uDr,Aye)=>{"use strict";var owt=Ni(),cwt=(t,e)=>new owt(t,e).major;Aye.exports=cwt});var bye=E((lDr,xye)=>{"use strict";var uwt=Ni(),lwt=(t,e)=>new uwt(t,e).minor;xye.exports=lwt});var _ye=E((dDr,Eye)=>{"use strict";var dwt=Ni(),fwt=(t,e)=>new dwt(t,e).patch;Eye.exports=fwt});var vye=E((fDr,Sye)=>{"use strict";var pwt=Lm(),mwt=(t,e)=>{let r=pwt(t,e);return r&&r.prerelease.length?r.prerelease:null};Sye.exports=mwt});var Ko=E((pDr,Iye)=>{"use strict";var Cye=Ni(),hwt=(t,e,r)=>new Cye(t,r).compare(new Cye(e,r));Iye.exports=hwt});var wye=E((mDr,Tye)=>{"use strict";var gwt=Ko(),Awt=(t,e,r)=>gwt(e,t,r);Tye.exports=Awt});var Nye=E((hDr,Rye)=>{"use strict";var ywt=Ko(),xwt=(t,e)=>ywt(t,e,!0);Rye.exports=xwt});var PN=E((gDr,Pye)=>{"use strict";var Oye=Ni(),bwt=(t,e,r)=>{let n=new Oye(t,r),s=new Oye(e,r);return n.compare(s)||n.compareBuild(s)};Pye.exports=bwt});var kye=E((ADr,Dye)=>{"use strict";var Ewt=PN(),_wt=(t,e)=>t.sort((r,n)=>Ewt(r,n,e));Dye.exports=_wt});var Bye=E((yDr,Lye)=>{"use strict";var Swt=PN(),vwt=(t,e)=>t.sort((r,n)=>Swt(n,r,e));Lye.exports=vwt});var z1=E((xDr,Mye)=>{"use strict";var Cwt=Ko(),Iwt=(t,e,r)=>Cwt(t,e,r)>0;Mye.exports=Iwt});var DN=E((bDr,Wye)=>{"use strict";var Twt=Ko(),wwt=(t,e,r)=>Twt(t,e,r)<0;Wye.exports=wwt});var A$=E((EDr,$ye)=>{"use strict";var Rwt=Ko(),Nwt=(t,e,r)=>Rwt(t,e,r)===0;$ye.exports=Nwt});var y$=E((_Dr,Fye)=>{"use strict";var Owt=Ko(),Pwt=(t,e,r)=>Owt(t,e,r)!==0;Fye.exports=Pwt});var kN=E((SDr,Uye)=>{"use strict";var Dwt=Ko(),kwt=(t,e,r)=>Dwt(t,e,r)>=0;Uye.exports=kwt});var LN=E((vDr,qye)=>{"use strict";var Lwt=Ko(),Bwt=(t,e,r)=>Lwt(t,e,r)<=0;qye.exports=Bwt});var x$=E((CDr,jye)=>{"use strict";var Mwt=A$(),Wwt=y$(),$wt=z1(),Fwt=kN(),Uwt=DN(),qwt=LN(),jwt=(t,e,r,n)=>{switch(e){case"===":return typeof t=="object"&&(t=t.version),typeof r=="object"&&(r=r.version),t===r;case"!==":return typeof t=="object"&&(t=t.version),typeof r=="object"&&(r=r.version),t!==r;case"":case"=":case"==":return Mwt(t,r,n);case"!=":return Wwt(t,r,n);case">":return $wt(t,r,n);case">=":return Fwt(t,r,n);case"<":return Uwt(t,r,n);case"<=":return qwt(t,r,n);default:throw new TypeError(`Invalid operator: ${e}`)}};jye.exports=jwt});var Qye=E((IDr,Hye)=>{"use strict";var Hwt=Ni(),Qwt=Lm(),{safeRe:BN,t:MN}=iy(),Gwt=(t,e)=>{if(t instanceof Hwt)return t;if(typeof t=="number"&&(t=String(t)),typeof t!="string")return null;e=e||{};let r=null;if(!e.rtl)r=t.match(e.includePrerelease?BN[MN.COERCEFULL]:BN[MN.COERCE]);else{let c=e.includePrerelease?BN[MN.COERCERTLFULL]:BN[MN.COERCERTL],u;for(;(u=c.exec(t))&&(!r||r.index+r[0].length!==t.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=e.includePrerelease&&r[5]?`-${r[5]}`:"",o=e.includePrerelease&&r[6]?`+${r[6]}`:"";return Qwt(`${n}.${s}.${i}${a}${o}`,e)};Hye.exports=Gwt});var Vye=E((TDr,Gye)=>{"use strict";var b$=class{constructor(){this.max=1e3,this.map=new Map}get(e){let r=this.map.get(e);if(r!==void 0)return this.map.delete(e),this.map.set(e,r),r}delete(e){return this.map.delete(e)}set(e,r){if(!this.delete(e)&&r!==void 0){if(this.map.size>=this.max){let s=this.map.keys().next().value;this.delete(s)}this.map.set(e,r)}return this}};Gye.exports=b$});var Yo=E((wDr,Jye)=>{"use strict";var Vwt=/\s+/g,E$=class t{constructor(e,r){if(r=Kwt(r),e instanceof t)return e.loose===!!r.loose&&e.includePrerelease===!!r.includePrerelease?e:new t(e.raw,r);if(e instanceof _$)return this.raw=e.value,this.set=[[e]],this.formatted=void 0,this;if(this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease,this.raw=e.trim().replace(Vwt," "),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=>!Kye(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&&r2t(s[0])){this.set=[s];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let e=0;e0&&(this.formatted+="||");let r=this.set[e];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(e){let n=((this.options.includePrerelease&&e2t)|(this.options.loose&&t2t))+":"+e,s=zye.get(n);if(s)return s;let i=this.options.loose,a=i?ra[Oi.HYPHENRANGELOOSE]:ra[Oi.HYPHENRANGE];e=e.replace(a,f2t(this.options.includePrerelease)),On("hyphen replace",e),e=e.replace(ra[Oi.COMPARATORTRIM],Jwt),On("comparator trim",e),e=e.replace(ra[Oi.TILDETRIM],Xwt),On("tilde trim",e),e=e.replace(ra[Oi.CARETTRIM],Zwt),On("caret trim",e);let o=e.split(" ").map(d=>n2t(d,this.options)).join(" ").split(/\s+/).map(d=>d2t(d,this.options));i&&(o=o.filter(d=>(On("loose invalid filter",d,this.options),!!d.match(ra[Oi.COMPARATORLOOSE])))),On("range list",o);let c=new Map,u=o.map(d=>new _$(d,this.options));for(let d of u){if(Kye(d))return[d];c.set(d.value,d)}c.size>1&&c.has("")&&c.delete("");let l=[...c.values()];return zye.set(n,l),l}intersects(e,r){if(!(e instanceof t))throw new TypeError("a Range is required");return this.set.some(n=>Yye(n,r)&&e.set.some(s=>Yye(s,r)&&n.every(i=>s.every(a=>i.intersects(a,r)))))}test(e){if(!e)return!1;if(typeof e=="string")try{e=new Ywt(e,this.options)}catch{return!1}for(let r=0;rt.value==="<0.0.0-0",r2t=t=>t.value==="",Yye=(t,e)=>{let r=!0,n=t.slice(),s=n.pop();for(;r&&n.length;)r=n.every(i=>s.intersects(i,e)),s=n.pop();return r},n2t=(t,e)=>(t=t.replace(ra[Oi.BUILD],""),On("comp",t,e),t=a2t(t,e),On("caret",t),t=s2t(t,e),On("tildes",t),t=c2t(t,e),On("xrange",t),t=l2t(t,e),On("stars",t),t),na=t=>!t||t.toLowerCase()==="x"||t==="*",s2t=(t,e)=>t.trim().split(/\s+/).map(r=>i2t(r,e)).join(" "),i2t=(t,e)=>{let r=e.loose?ra[Oi.TILDELOOSE]:ra[Oi.TILDE];return t.replace(r,(n,s,i,a,o)=>{On("tilde",t,n,s,i,a,o);let c;return na(s)?c="":na(i)?c=`>=${s}.0.0 <${+s+1}.0.0-0`:na(a)?c=`>=${s}.${i}.0 <${s}.${+i+1}.0-0`:o?(On("replaceTilde pr",o),c=`>=${s}.${i}.${a}-${o} <${s}.${+i+1}.0-0`):c=`>=${s}.${i}.${a} <${s}.${+i+1}.0-0`,On("tilde return",c),c})},a2t=(t,e)=>t.trim().split(/\s+/).map(r=>o2t(r,e)).join(" "),o2t=(t,e)=>{On("caret",t,e);let r=e.loose?ra[Oi.CARETLOOSE]:ra[Oi.CARET],n=e.includePrerelease?"-0":"";return t.replace(r,(s,i,a,o,c)=>{On("caret",t,s,i,a,o,c);let u;return na(i)?u="":na(a)?u=`>=${i}.0.0${n} <${+i+1}.0.0-0`:na(o)?i==="0"?u=`>=${i}.${a}.0${n} <${i}.${+a+1}.0-0`:u=`>=${i}.${a}.0${n} <${+i+1}.0.0-0`:c?(On("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`):(On("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`),On("caret return",u),u})},c2t=(t,e)=>(On("replaceXRanges",t,e),t.split(/\s+/).map(r=>u2t(r,e)).join(" ")),u2t=(t,e)=>{t=t.trim();let r=e.loose?ra[Oi.XRANGELOOSE]:ra[Oi.XRANGE];return t.replace(r,(n,s,i,a,o,c)=>{On("xRange",t,n,s,i,a,o,c);let u=na(i),l=u||na(a),d=l||na(o),f=d;return s==="="&&f&&(s=""),c=e.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`),On("xRange return",n),n})},l2t=(t,e)=>(On("replaceStars",t,e),t.trim().replace(ra[Oi.STAR],"")),d2t=(t,e)=>(On("replaceGTE0",t,e),t.trim().replace(ra[e.includePrerelease?Oi.GTE0PRE:Oi.GTE0],"")),f2t=t=>(e,r,n,s,i,a,o,c,u,l,d,f)=>(na(n)?r="":na(s)?r=`>=${n}.0.0${t?"-0":""}`:na(i)?r=`>=${n}.${s}.0${t?"-0":""}`:a?r=`>=${r}`:r=`>=${r}${t?"-0":""}`,na(u)?c="":na(l)?c=`<${+u+1}.0.0-0`:na(d)?c=`<${u}.${+l+1}.0-0`:f?c=`<=${u}.${l}.${d}-${f}`:t?c=`<${u}.${l}.${+d+1}-0`:c=`<=${c}`,`${r} ${c}`.trim()),p2t=(t,e,r)=>{for(let n=0;n0){let s=t[n].semver;if(s.major===e.major&&s.minor===e.minor&&s.patch===e.patch)return!0}return!1}return!0}});var K1=E((RDr,nxe)=>{"use strict";var Y1=Symbol("SemVer ANY"),C$=class t{static get ANY(){return Y1}constructor(e,r){if(r=Xye(r),e instanceof t){if(e.loose===!!r.loose)return e;e=e.value}e=e.trim().split(/\s+/).join(" "),v$("comparator",e,r),this.options=r,this.loose=!!r.loose,this.parse(e),this.semver===Y1?this.value="":this.value=this.operator+this.semver.version,v$("comp",this)}parse(e){let r=this.options.loose?Zye[exe.COMPARATORLOOSE]:Zye[exe.COMPARATOR],n=e.match(r);if(!n)throw new TypeError(`Invalid comparator: ${e}`);this.operator=n[1]!==void 0?n[1]:"",this.operator==="="&&(this.operator=""),n[2]?this.semver=new txe(n[2],this.options.loose):this.semver=Y1}toString(){return this.value}test(e){if(v$("Comparator.test",e,this.options.loose),this.semver===Y1||e===Y1)return!0;if(typeof e=="string")try{e=new txe(e,this.options)}catch{return!1}return S$(e,this.operator,this.semver,this.options)}intersects(e,r){if(!(e instanceof t))throw new TypeError("a Comparator is required");return this.operator===""?this.value===""?!0:new rxe(e.value,r).test(this.value):e.operator===""?e.value===""?!0:new rxe(this.value,r).test(e.semver):(r=Xye(r),r.includePrerelease&&(this.value==="<0.0.0-0"||e.value==="<0.0.0-0")||!r.includePrerelease&&(this.value.startsWith("<0.0.0")||e.value.startsWith("<0.0.0"))?!1:!!(this.operator.startsWith(">")&&e.operator.startsWith(">")||this.operator.startsWith("<")&&e.operator.startsWith("<")||this.semver.version===e.semver.version&&this.operator.includes("=")&&e.operator.includes("=")||S$(this.semver,"<",e.semver,r)&&this.operator.startsWith(">")&&e.operator.startsWith("<")||S$(this.semver,">",e.semver,r)&&this.operator.startsWith("<")&&e.operator.startsWith(">")))}};nxe.exports=C$;var Xye=TN(),{safeRe:Zye,t:exe}=iy(),S$=x$(),v$=V1(),txe=Ni(),rxe=Yo()});var J1=E((NDr,sxe)=>{"use strict";var m2t=Yo(),h2t=(t,e,r)=>{try{e=new m2t(e,r)}catch{return!1}return e.test(t)};sxe.exports=h2t});var axe=E((ODr,ixe)=>{"use strict";var g2t=Yo(),A2t=(t,e)=>new g2t(t,e).set.map(r=>r.map(n=>n.value).join(" ").trim().split(" "));ixe.exports=A2t});var cxe=E((PDr,oxe)=>{"use strict";var y2t=Ni(),x2t=Yo(),b2t=(t,e,r)=>{let n=null,s=null,i=null;try{i=new x2t(e,r)}catch{return null}return t.forEach(a=>{i.test(a)&&(!n||s.compare(a)===-1)&&(n=a,s=new y2t(n,r))}),n};oxe.exports=b2t});var lxe=E((DDr,uxe)=>{"use strict";var E2t=Ni(),_2t=Yo(),S2t=(t,e,r)=>{let n=null,s=null,i=null;try{i=new _2t(e,r)}catch{return null}return t.forEach(a=>{i.test(a)&&(!n||s.compare(a)===1)&&(n=a,s=new E2t(n,r))}),n};uxe.exports=S2t});var pxe=E((kDr,fxe)=>{"use strict";var I$=Ni(),v2t=Yo(),dxe=z1(),C2t=(t,e)=>{t=new v2t(t,e);let r=new I$("0.0.0");if(t.test(r)||(r=new I$("0.0.0-0"),t.test(r)))return r;r=null;for(let n=0;n{let o=new I$(a.semver.version);switch(a.operator){case">":o.prerelease.length===0?o.patch++:o.prerelease.push(0),o.raw=o.format();case"":case">=":(!i||dxe(o,i))&&(i=o);break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${a.operator}`)}}),i&&(!r||dxe(r,i))&&(r=i)}return r&&t.test(r)?r:null};fxe.exports=C2t});var hxe=E((LDr,mxe)=>{"use strict";var I2t=Yo(),T2t=(t,e)=>{try{return new I2t(t,e).range||"*"}catch{return null}};mxe.exports=T2t});var WN=E((BDr,xxe)=>{"use strict";var w2t=Ni(),yxe=K1(),{ANY:R2t}=yxe,N2t=Yo(),O2t=J1(),gxe=z1(),Axe=DN(),P2t=LN(),D2t=kN(),k2t=(t,e,r,n)=>{t=new w2t(t,n),e=new N2t(e,n);let s,i,a,o,c;switch(r){case">":s=gxe,i=P2t,a=Axe,o=">",c=">=";break;case"<":s=Axe,i=D2t,a=gxe,o="<",c="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(O2t(t,e,n))return!1;for(let u=0;u{p.semver===R2t&&(p=new yxe(">=0.0.0")),d=d||p,f=f||p,s(p.semver,d.semver,n)?d=p:a(p.semver,f.semver,n)&&(f=p)}),d.operator===o||d.operator===c||(!f.operator||f.operator===o)&&i(t,f.semver))return!1;if(f.operator===c&&a(t,f.semver))return!1}return!0};xxe.exports=k2t});var Exe=E((MDr,bxe)=>{"use strict";var L2t=WN(),B2t=(t,e,r)=>L2t(t,e,">",r);bxe.exports=B2t});var Sxe=E((WDr,_xe)=>{"use strict";var M2t=WN(),W2t=(t,e,r)=>M2t(t,e,"<",r);_xe.exports=W2t});var Ixe=E(($Dr,Cxe)=>{"use strict";var vxe=Yo(),$2t=(t,e,r)=>(t=new vxe(t,r),e=new vxe(e,r),t.intersects(e,r));Cxe.exports=$2t});var wxe=E((FDr,Txe)=>{"use strict";var F2t=J1(),U2t=Ko();Txe.exports=(t,e,r)=>{let n=[],s=null,i=null,a=t.sort((l,d)=>U2t(l,d,r));for(let l of a)F2t(l,e,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 e.raw=="string"?e.raw:String(e);return c.length{"use strict";var Rxe=Yo(),w$=K1(),{ANY:T$}=w$,X1=J1(),R$=Ko(),q2t=(t,e,r={})=>{if(t===e)return!0;t=new Rxe(t,r),e=new Rxe(e,r);let n=!1;e:for(let s of t.set){for(let i of e.set){let a=H2t(s,i,r);if(n=n||a!==null,a)continue e}if(n)return!1}return!0},j2t=[new w$(">=0.0.0-0")],Nxe=[new w$(">=0.0.0")],H2t=(t,e,r)=>{if(t===e)return!0;if(t.length===1&&t[0].semver===T$){if(e.length===1&&e[0].semver===T$)return!0;r.includePrerelease?t=j2t:t=Nxe}if(e.length===1&&e[0].semver===T$){if(r.includePrerelease)return!0;e=Nxe}let n=new Set,s,i;for(let p of t)p.operator===">"||p.operator===">="?s=Oxe(s,p,r):p.operator==="<"||p.operator==="<="?i=Pxe(i,p,r):n.add(p.semver);if(n.size>1)return null;let a;if(s&&i){if(a=R$(s.semver,i.semver,r),a>0)return null;if(a===0&&(s.operator!==">="||i.operator!=="<="))return null}for(let p of n){if(s&&!X1(p,String(s),r)||i&&!X1(p,String(i),r))return null;for(let m of e)if(!X1(p,String(m),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 p of e){if(l=l||p.operator===">"||p.operator===">=",u=u||p.operator==="<"||p.operator==="<=",s){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=Oxe(s,p,r),o===p&&o!==s)return!1}else if(s.operator===">="&&!X1(s.semver,String(p),r))return!1}if(i){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(c=Pxe(i,p,r),c===p&&c!==i)return!1}else if(i.operator==="<="&&!X1(i.semver,String(p),r))return!1}if(!p.operator&&(i||s)&&a!==0)return!1}return!(s&&u&&!i&&a!==0||i&&l&&!s&&a!==0||f||d)},Oxe=(t,e,r)=>{if(!t)return e;let n=R$(t.semver,e.semver,r);return n>0?t:n<0||e.operator===">"&&t.operator===">="?e:t},Pxe=(t,e,r)=>{if(!t)return e;let n=R$(t.semver,e.semver,r);return n<0?t:n>0||e.operator==="<"&&t.operator==="<="?e:t};Dxe.exports=q2t});var O$=E((qDr,Mxe)=>{"use strict";var N$=iy(),Lxe=G1(),Q2t=Ni(),Bxe=m$(),G2t=Lm(),V2t=cye(),z2t=lye(),K2t=pye(),Y2t=gye(),J2t=yye(),X2t=bye(),Z2t=_ye(),eRt=vye(),tRt=Ko(),rRt=wye(),nRt=Nye(),sRt=PN(),iRt=kye(),aRt=Bye(),oRt=z1(),cRt=DN(),uRt=A$(),lRt=y$(),dRt=kN(),fRt=LN(),pRt=x$(),mRt=Qye(),hRt=K1(),gRt=Yo(),ARt=J1(),yRt=axe(),xRt=cxe(),bRt=lxe(),ERt=pxe(),_Rt=hxe(),SRt=WN(),vRt=Exe(),CRt=Sxe(),IRt=Ixe(),TRt=wxe(),wRt=kxe();Mxe.exports={parse:G2t,valid:V2t,clean:z2t,inc:K2t,diff:Y2t,major:J2t,minor:X2t,patch:Z2t,prerelease:eRt,compare:tRt,rcompare:rRt,compareLoose:nRt,compareBuild:sRt,sort:iRt,rsort:aRt,gt:oRt,lt:cRt,eq:uRt,neq:lRt,gte:dRt,lte:fRt,cmp:pRt,coerce:mRt,Comparator:hRt,Range:gRt,satisfies:ARt,toComparators:yRt,maxSatisfying:xRt,minSatisfying:bRt,minVersion:ERt,validRange:_Rt,outside:SRt,gtr:vRt,ltr:CRt,intersects:IRt,simplifyRange:TRt,subset:wRt,SemVer:Q2t,re:N$.re,src:N$.src,tokens:N$.t,SEMVER_SPEC_VERSION:Lxe.SEMVER_SPEC_VERSION,RELEASE_TYPES:Lxe.RELEASE_TYPES,compareIdentifiers:Bxe.compareIdentifiers,rcompareIdentifiers:Bxe.rcompareIdentifiers}});var FN=E((jDr,L$)=>{"use strict";var $N=KAe(),RRt=O$(),{FSTDEP005:NRt,FSTDEP012:ORt,FSTDEP015:PRt,FSTDEP016:DRt,FSTDEP017:kRt,FSTDEP018:LRt}=cd(),{kHasBeenDecorated:BRt,kSchemaBody:MRt,kSchemaHeaders:WRt,kSchemaParams:$Rt,kSchemaQuerystring:Wxe,kSchemaController:P$,kOptions:FRt,kRequestCacheValidateFns:Sp,kRouteContext:us,kPublicRouteContext:$xe,kRequestOriginalUrl:D$}=Qs(),{FST_ERR_REQ_INVALID_VALIDATION_INVOCATION:URt}=Ci(),Fxe={body:MRt,headers:WRt,params:$Rt,querystring:Wxe,query:Wxe};function k$(t,e,r,n,s,i){this.id=t,this[us]=i,this.params=e,this.raw=r,this.query=n,this.log=s,this.body=void 0}k$.props=[];function qRt(t){if(typeof t=="function")return t;if(t===!0)return function(){return!0};if(typeof t=="number")return function(e,r){return rr.trim());return $N.compile(e)}return $N.compile(t)}function jRt(t,e){return e?HRt(t,e):qxe(t)}function qxe(t){let e=t.props.slice();function r(n,s,i,a,o,c){this.id=n,this[us]=c,this.params=s,this.raw=i,this.query=a,this.log=o,this.body=void 0;for(var u,l=0;lt.config},schema:{get:()=>t.schema}}),Object.freeze(s)}},routerMethod:{get(){return LRt(),this[us].config?.method}},routeConfig:{get(){return DRt(),this[us][$xe]?.config}},routeSchema:{get(){return PRt(),this[us][$xe].schema}},is404:{get(){return this[us].config?.url===void 0}},connection:{get(){return RRt.gte(process.versions.node,"13.0.0")&&NRt(),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(t){this.additionalHeaders=t}},getValidationFunction:{value:function(t){if(typeof t=="string"){let e=Fxe[t];return this[us][e]}else if(typeof t=="object")return this[us][Sp]?.get(t)}},compileValidationSchema:{value:function(t,e=null){let{method:r,url:n}=this;if(this[us][Sp]?.has(t))return this[us][Sp].get(t);let i=(this[us].validatorCompiler||this.server[P$].validatorCompiler||this.server[P$].setupValidator(this.server[FRt])||this.server[P$].validatorCompiler)({schema:t,method:r,url:n,httpPart:e});return this[us][Sp]==null&&(this[us][Sp]=new WeakMap),this[us][Sp].set(t,i),i}},validateInput:{value:function(t,e,r){r=typeof e=="string"?e:r;let n=r!=null&&typeof r=="string"&&Fxe[r],s;if(n&&(s=this[us][n]),s==null&&(e==null||typeof e!="object"||Array.isArray(e)))throw new URt(r);return s==null&&(this[us][Sp]?.has(e)?s=this[us][Sp].get(e):s=this.compileValidationSchema(e,r)),s(t)}}});L$.exports=k$;L$.exports.buildRequest=jRt});var UN=E((HDr,jxe)=>{"use strict";var{kFourOhFourContext:QRt,kReplySerializerDefault:GRt,kSchemaErrorFormatter:VRt,kErrorHandler:zRt,kChildLoggerFactory:KRt,kOptions:YRt,kReply:JRt,kRequest:XRt,kBodyLimit:ZRt,kLogLevel:eNt,kContentTypeParser:tNt,kRouteByFastify:rNt,kRequestCacheValidateFns:nNt,kReplyCacheSerializeFns:sNt,kPublicRouteContext:iNt}=Qs();function aNt({schema:t,handler:e,config:r,requestIdLogLabel:n,childLoggerFactory:s,errorHandler:i,bodyLimit:a,logLevel:o,logSerializers:c,attachValidation:u,validatorCompiler:l,serializerCompiler:d,replySerializer:f,schemaErrorFormatter:p,exposeHeadRoute:m,prefixTrailingSlash:h,server:A,isFastify:g}){this.schema=t,this.handler=e,this.Reply=A[JRt],this.Request=A[XRt],this.contentTypeParser=A[tNt],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||A[zRt],this.requestIdLogLabel=n||A[YRt].requestIdLogLabel,this.childLoggerFactory=s||A[KRt],this._middie=null,this._parserOptions={limit:a||A[ZRt]},this.exposeHeadRoute=m,this.prefixTrailingSlash=h,this.logLevel=o||A[eNt],this.logSerializers=c,this[QRt]=null,this.attachValidation=u,this[GRt]=f,this.schemaErrorFormatter=p||A[VRt]||cNt,this[rNt]=g,this[nNt]=null,this[sNt]=null,this.validatorCompiler=l||null,this.serializerCompiler=d||null,this[iNt]=oNt(this),this.server=A}function oNt(t){return Object.create(null,{schema:{enumerable:!0,get(){return t.schema}},config:{enumerable:!0,get(){return t.config}}})}function cNt(t,e){let r="",n=", ";for(var s=0;s!==t.length;++s){let i=t[s];r+=e+(i.instancePath||"")+" "+i.message+n}return new Error(r.slice(0,-n.length))}jxe.exports=aNt});var B$=E((QDr,Hxe)=>{"use strict";Hxe.exports={supportedMethods:["DELETE","GET","HEAD","PATCH","POST","PUT","OPTIONS","PROPFIND","PROPPATCH","MKCOL","COPY","MOVE","LOCK","UNLOCK","TRACE","SEARCH"]}});var U$=E((GDr,zxe)=>{"use strict";var{kReply:M$,kRequest:W$,kState:uNt,kHasBeenDecorated:lNt}=Qs(),{FST_ERR_DEC_ALREADY_PRESENT:Qxe,FST_ERR_DEC_MISSING_DEPENDENCY:dNt,FST_ERR_DEC_AFTER_START:fNt,FST_ERR_DEC_DEPENDENCY_INVALID_TYPE:pNt}=Ci(),{FSTDEP006:mNt}=cd();function hNt(t,e,r,n){if(Object.prototype.hasOwnProperty.call(t,e))throw new Qxe(e);$$(t,e,n),r&&(typeof r.getter=="function"||typeof r.setter=="function")?Object.defineProperty(t,e,{get:r.getter,set:r.setter}):t[e]=r}function Gxe(t,e,r,n){let s=t.prototype;if(Object.prototype.hasOwnProperty.call(s,e)||jN(t,e))throw new Qxe(e);t[lNt]=!0,$$(t,e,n),r&&(typeof r.getter=="function"||typeof r.setter=="function")?Object.defineProperty(s,e,{get:r.getter,set:r.setter}):typeof r=="function"?s[e]=r:t.props.push({key:e,value:r})}function Vxe(t,e){typeof e=="object"&&e&&!(typeof e.getter=="function"||typeof e.setter=="function")&&mNt(t)}function gNt(t,e,r){return F$(this,t),hNt(this,t,e,r),this}function qN(t,e){return e?e in t||t.prototype&&e in t.prototype||jN(t,e):t in this}function jN(t,e){return t.props?t.props.find(({key:r})=>r===e):!1}function ANt(t){return t&&jN(this[W$],t)?!0:qN(this[W$].prototype,t)}function yNt(t){return t&&jN(this[M$],t)?!0:qN(this[M$].prototype,t)}function $$(t,e,r){if(r!=null){if(!Array.isArray(r))throw new pNt(e);for(var n=0;n!==r.length;++n)if(!qN(t,r[n]))throw new dNt(r[n])}}function xNt(t,e,r){return F$(this,t),Vxe(t,e),Gxe(this[M$],t,e,r),this}function bNt(t,e,r){return F$(this,t),Vxe(t,e),Gxe(this[W$],t,e,r),this}function F$(t,e){if(t[uNt].started)throw new fNt(e)}zxe.exports={add:gNt,exist:qN,existRequest:ANt,existReply:yNt,dependencies:$$,decorateReply:xNt,decorateRequest:bNt}});var Yxe=E(zu=>{"use strict";var q$=class{constructor(e=1e3,r=0){if(isNaN(e)||e<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=e,this.ttl=r}get size(){return this.items.size}clear(){this.items=new Map,this.first=null,this.last=null}delete(e){if(this.items.has(e)){let r=this.items.get(e);this.items.delete(e),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(e){for(var r=0;r0){let e=this.first;this.items.delete(e.key),this.size===0?(this.first=null,this.last=null):(this.first=e.next,this.first.prev=null)}}expiresAt(e){if(this.items.has(e))return this.items.get(e).expiry}get(e){if(this.items.has(e)){let r=this.items.get(e);if(this.ttl>0&&r.expiry<=Date.now()){this.delete(e);return}return r.value}}getMany(e){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:e,prev:this.last,next:null,value:r};this.items.set(e,n),this.size===1?this.first=n:this.last.next=n,this.last=n}},j$=class{constructor(e=1e3,r=0){if(isNaN(e)||e<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=e,this.ttl=r}get size(){return this.items.size}bumpLru(e){if(this.last===e)return;let r=this.last,n=e.next,s=e.prev;this.first===e&&(this.first=n),e.next=null,e.prev=r,r.next=e,s!==null&&(s.next=n),n!==null&&(n.prev=s),this.last=e}clear(){this.items=new Map,this.first=null,this.last=null}delete(e){if(this.items.has(e)){let r=this.items.get(e);this.items.delete(e),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(e){for(var r=0;r0){let e=this.first;this.items.delete(e.key),this.size===0?(this.first=null,this.last=null):(this.first=e.next,this.first.prev=null)}}expiresAt(e){if(this.items.has(e))return this.items.get(e).expiry}get(e){if(this.items.has(e)){let r=this.items.get(e);if(this.ttl>0&&r.expiry<=Date.now()){this.delete(e);return}return this.bumpLru(r),r.value}}getMany(e){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:e,prev:this.last,next:null,value:r};this.items.set(e,n),this.size===1?this.first=n:this.last.next=n,this.last=n}},Z1=class{constructor(e=1e3,r=0){if(isNaN(e)||e<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=e,this.ttl=r}bumpLru(e){if(this.last===e)return;let r=this.last,n=e.next,s=e.prev;this.first===e&&(this.first=n),e.next=null,e.prev=r,r.next=e,s!==null&&(s.next=n),n!==null&&(n.prev=s),this.last=e}clear(){this.items=Object.create(null),this.first=null,this.last=null,this.size=0}delete(e){if(Object.prototype.hasOwnProperty.call(this.items,e)){let r=this.items[e];delete this.items[e],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(e){for(var r=0;r0){let e=this.first;delete this.items[e.key],--this.size===0?(this.first=null,this.last=null):(this.first=e.next,this.first.prev=null)}}expiresAt(e){if(Object.prototype.hasOwnProperty.call(this.items,e))return this.items[e].expiry}get(e){if(Object.prototype.hasOwnProperty.call(this.items,e)){let r=this.items[e];if(this.ttl>0&&r.expiry<=Date.now()){this.delete(e);return}return this.bumpLru(r),r.value}}getMany(e){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:e,prev:this.last,next:null,value:r};this.items[e]=n,++this.size===1?this.first=n:this.last.next=n,this.last=n}},HN=class{constructor(){this.records={}}initForCache(e,r){this.records[e]={[r]:{cacheSize:0,hits:0,falsyHits:0,emptyHits:0,misses:0,expirations:0,evictions:0,invalidateOne:0,invalidateAll:0,sets:0}}}resetForCache(e){for(let r of Object.keys(this.records[e]))this.records[e][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 Kxe(t){return`${t.getFullYear()}-${(t.getMonth()+1).toString().padStart(2,"0")}-${t.getDate().toString().padStart(2,"0")}`}var H$=class{constructor(e,r,n){this.cacheId=e,this.statisticTtlInHours=r,this.collectionStart=new Date,this.currentTimeStamp=Kxe(this.collectionStart),this.records=n||new HN,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(e){this.archiveIfNeeded(),this.currentRecord.cacheSize=e}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=Kxe(this.collectionStart),this.records.initForCache(this.cacheId,this.currentTimeStamp))}},QN=class extends Z1{constructor(e,r,n,s,i){if(super(e||1e3,r||0),!n)throw new Error("Cache id is mandatory");this.hitStatistics=new H$(n,i!==void 0?i:24,s)}getStatistics(){return this.hitStatistics.getStatistics()}set(e,r){super.set(e,r),this.hitStatistics.addSet(),this.hitStatistics.setCacheSize(this.size)}evict(){super.evict(),this.hitStatistics.addEviction(),this.hitStatistics.setCacheSize(this.size)}delete(e,r=!1){super.delete(e),r||this.hitStatistics.addInvalidateOne(),this.hitStatistics.setCacheSize(this.size)}clear(){super.clear(),this.hitStatistics.addInvalidateAll(),this.hitStatistics.setCacheSize(this.size)}get(e){if(Object.prototype.hasOwnProperty.call(this.items,e)){let r=this.items[e];if(this.ttl>0&&r.expiry<=Date.now()){this.delete(e,!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()}},GN=class{constructor(e=1e3,r=0){if(isNaN(e)||e<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=e,this.ttl=r}clear(){this.items=Object.create(null),this.first=null,this.last=null,this.size=0}delete(e){if(Object.prototype.hasOwnProperty.call(this.items,e)){let r=this.items[e];delete this.items[e],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(e){for(var r=0;r0){let e=this.first;delete this.items[e.key],--this.size===0?(this.first=null,this.last=null):(this.first=e.next,this.first.prev=null)}}expiresAt(e){if(Object.prototype.hasOwnProperty.call(this.items,e))return this.items[e].expiry}get(e){if(Object.prototype.hasOwnProperty.call(this.items,e)){let r=this.items[e];if(this.ttl>0&&r.expiry<=Date.now()){this.delete(e);return}return r.value}}getMany(e){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:e,prev:this.last,next:null,value:r};this.items[e]=n,++this.size===1?this.first=n:this.last.next=n,this.last=n}};zu.Fifo=GN;zu.FifoMap=q$;zu.FifoObject=GN;zu.HitStatisticsRecord=HN;zu.Lru=Z1;zu.LruHitStatistics=QN;zu.LruMap=j$;zu.LruObject=Z1;zu.LruObjectHitStatistics=QN});var ebe=E((zDr,e_)=>{"use strict";var KN=function(){};KN.prototype=Object.create(null);var VN=/; *([!#$%&'*+.^\w`|~-]+)=("(?:[\v\u0020\u0021\u0023-\u005b\u005d-\u007e\u0080-\u00ff]|\\[\v\u0020-\u00ff])*"|[!#$%&'*+.^\w`|~-]+) */gu,zN=/\\([\v\u0020-\u00ff])/gu,Jxe=/^[!#$%&'*+.^\w|~-]+\/[!#$%&'*+.^\w|~-]+$/u,Bm={type:"",parameters:new KN};Object.freeze(Bm.parameters);Object.freeze(Bm);function Xxe(t){if(typeof t!="string")throw new TypeError("argument header is required and must be a string");let e=t.indexOf(";"),r=e!==-1?t.slice(0,e).trim():t.trim();if(Jxe.test(r)===!1)throw new TypeError("invalid media type");let n={type:r.toLowerCase(),parameters:new KN};if(e===-1)return n;let s,i,a;for(VN.lastIndex=e;i=VN.exec(t);){if(i.index!==e)throw new TypeError("invalid parameter format");e+=i[0].length,s=i[1].toLowerCase(),a=i[2],a[0]==='"'&&(a=a.slice(1,a.length-1),zN.test(a)&&(a=a.replace(zN,"$1"))),n.parameters[s]=a}if(e!==t.length)throw new TypeError("invalid parameter format");return n}function Zxe(t){if(typeof t!="string")return Bm;let e=t.indexOf(";"),r=e!==-1?t.slice(0,e).trim():t.trim();if(Jxe.test(r)===!1)return Bm;let n={type:r.toLowerCase(),parameters:new KN};if(e===-1)return n;let s,i,a;for(VN.lastIndex=e;i=VN.exec(t);){if(i.index!==e)return Bm;e+=i[0].length,s=i[1].toLowerCase(),a=i[2],a[0]==='"'&&(a=a.slice(1,a.length-1),zN.test(a)&&(a=a.replace(zN,"$1"))),n.parameters[s]=a}return e!==t.length?Bm:n}e_.exports.default={parse:Xxe,safeParse:Zxe};e_.exports.parse=Xxe;e_.exports.safeParse=Zxe;e_.exports.defaultContentType=Bm});var ibe=E((KDr,ay)=>{"use strict";var ENt=typeof Buffer<"u",tbe=/"(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])"\s*:/,rbe=/"(?: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 nbe(t,e,r){r==null&&e!==null&&typeof e=="object"&&(r=e,e=void 0),ENt&&Buffer.isBuffer(t)&&(t=t.toString()),t&&t.charCodeAt(0)===65279&&(t=t.slice(1));let n=JSON.parse(t,e);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(tbe.test(t)===!1&&rbe.test(t)===!1)return n}else if(s!=="ignore"&&i==="ignore"){if(tbe.test(t)===!1)return n}else if(rbe.test(t)===!1)return n;return sbe(n,{protoAction:s,constructorAction:i,safe:r&&r.safe})}function sbe(t,{protoAction:e="error",constructorAction:r="error",safe:n}={}){let s=[t];for(;s.length;){let i=s;s=[];for(let a of i){if(e!=="ignore"&&Object.prototype.hasOwnProperty.call(a,"__proto__")){if(n===!0)return null;if(e==="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 t}function Q$(t,e,r){let n=Error.stackTraceLimit;Error.stackTraceLimit=0;try{return nbe(t,e,r)}finally{Error.stackTraceLimit=n}}function _Nt(t,e){let r=Error.stackTraceLimit;Error.stackTraceLimit=0;try{return nbe(t,e,{safe:!0})}catch{return null}finally{Error.stackTraceLimit=r}}ay.exports=Q$;ay.exports.default=Q$;ay.exports.parse=Q$;ay.exports.safeParse=_Nt;ay.exports.scan=sbe});var Y$=E((YDr,r_)=>{"use strict";var{AsyncResource:SNt}=require("node:async_hooks"),{Fifo:obe}=Yxe(),{safeParse:cbe,defaultContentType:vNt}=ebe(),CNt=ibe(),{kDefaultJsonParse:t_,kContentTypeParser:oy,kBodyLimit:INt,kRequestPayloadStream:ube,kState:V$,kTestInternals:TNt,kReplyIsError:lbe,kRouteContext:wNt}=Qs(),{FST_ERR_CTP_INVALID_TYPE:dbe,FST_ERR_CTP_EMPTY_TYPE:RNt,FST_ERR_CTP_ALREADY_PRESENT:NNt,FST_ERR_CTP_INVALID_HANDLER:ONt,FST_ERR_CTP_INVALID_PARSE_TYPE:PNt,FST_ERR_CTP_BODY_TOO_LARGE:abe,FST_ERR_CTP_INVALID_MEDIA_TYPE:DNt,FST_ERR_CTP_INVALID_CONTENT_LENGTH:kNt,FST_ERR_CTP_EMPTY_JSON_BODY:LNt,FST_ERR_CTP_INSTANCE_ALREADY_STARTED:z$}=Ci();function Ad(t,e,r){this[t_]=pbe(e,r),this.customParsers=new Map,this.customParsers.set("application/json",new G$(!0,!1,t,this[t_])),this.customParsers.set("text/plain",new G$(!0,!1,t,K$)),this.parserList=[new YN("application/json"),new YN("text/plain")],this.parserRegExpList=[],this.cache=new obe(100)}Ad.prototype.add=function(t,e,r){let n=typeof t=="string";if(!n&&!(t instanceof RegExp))throw new dbe;if(n&&t.length===0)throw new RNt;if(typeof r!="function")throw new ONt;if(this.existingParser(t))throw new NNt(t);if(e.parseAs!==void 0&&e.parseAs!=="string"&&e.parseAs!=="buffer")throw new PNt(e.parseAs);let s=new G$(e.parseAs==="string",e.parseAs==="buffer",e.bodyLimit,r);n&&t==="*"?this.customParsers.set("",s):(n?this.parserList.unshift(new YN(t)):(t.isEssence=t.source.indexOf(";")===-1,this.parserRegExpList.unshift(t)),this.customParsers.set(t.toString(),s))};Ad.prototype.hasParser=function(t){return this.customParsers.has(typeof t=="string"?t:t.toString())};Ad.prototype.existingParser=function(t){return t==="application/json"&&this.customParsers.has(t)?this.customParsers.get(t).fn!==this[t_]:t==="text/plain"&&this.customParsers.has(t)?this.customParsers.get(t).fn!==K$:this.hasParser(t)};Ad.prototype.getParser=function(t){if(this.hasParser(t))return this.customParsers.get(t);let e=this.cache.get(t);if(e!==void 0)return e;let r=cbe(t);if(r===vNt)return this.customParsers.get("");for(var n=0;n!==this.parserList.length;++n){let i=this.parserList[n];if(UNt(r,i)){let a=this.customParsers.get(i.name);return this.cache.set(t,a),a}}for(var s=0;s!==this.parserRegExpList.length;++s){let i=this.parserRegExpList[s];if(qNt(t,r.type,i)){let a=this.customParsers.get(i.toString());return this.cache.set(t,a),a}}return this.customParsers.get("")};Ad.prototype.removeAll=function(){this.customParsers=new Map,this.parserRegExpList=[],this.parserList=[],this.cache=new obe(100)};Ad.prototype.remove=function(t){if(!(typeof t=="string"||t instanceof RegExp))throw new dbe;let e=this.customParsers.delete(t.toString()),r=typeof t=="string"?this.parserList:this.parserRegExpList,n=r.findIndex(s=>s.toString()===t.toString());return n>-1&&r.splice(n,1),e||n>-1};Ad.prototype.run=function(t,e,r,n){let s=this.getParser(t);if(s===void 0){r.is404?e(r,n):n.send(new DNt(t||void 0));return}let i=new SNt("content-type-parser:run",r);if(s.asString===!0||s.asBuffer===!0)fbe(r,n,n[wNt]._parserOptions,s,a);else{let o=s.fn(r,r[ube],a);o&&typeof o.then=="function"&&o.then(c=>a(null,c),a)}function a(o,c){i.runInAsyncScope(()=>{i.emitDestroy(),o?(n[lbe]=!0,n.send(o)):(r.body=c,e(r,n))})}};function fbe(t,e,r,n,s){let i=n.asString,a=r.limit===null?n.bodyLimit:r.limit,o=t.headers["content-length"]===void 0?NaN:Number(t.headers["content-length"]);if(o>a){e.header("connection","close"),e.send(new abe);return}let c=0,u=i===!0?"":[],l=t[ube]||t.raw;i===!0&&l.setEncoding("utf8"),l.on("data",d),l.on("end",f),l.on("error",f),l.resume();function d(p){c+=p.length;let{receivedEncodedLength:m=0}=l;if(c>a||m>a){l.removeListener("data",d),l.removeListener("end",f),l.removeListener("error",f),e.send(new abe);return}i===!0?u+=p:u.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),e[lbe]=!0,e.code(p.statusCode).send(p);return}if(i===!0&&(c=Buffer.byteLength(u)),!Number.isNaN(o)&&(l.receivedEncodedLength||c)!==o){e.header("connection","close"),e.send(new kNt);return}i===!1&&(u=Buffer.concat(u));let m=n.fn(t,u,s);m&&typeof m.then=="function"&&m.then(h=>s(null,h),s)}}function pbe(t,e){return r;function r(n,s,i){if(s===""||s==null||Buffer.isBuffer(s)&&s.length===0)return i(new LNt,void 0);let a;try{a=CNt.parse(s,{protoAction:t,constructorAction:e})}catch(o){return o.statusCode=400,i(o,void 0)}i(null,a)}}function K$(t,e,r){r(null,e)}function G$(t,e,r,n){this.asString=t,this.asBuffer=e,this.bodyLimit=r,this.fn=n}function BNt(t){let e=new Ad;return e[t_]=t[t_],e.customParsers=new Map(t.customParsers.entries()),e.parserList=t.parserList.slice(),e.parserRegExpList=t.parserRegExpList.slice(),e}function MNt(t,e,r){if(this[V$].started)throw new z$("addContentTypeParser");return typeof e=="function"&&(r=e,e={}),e||(e={}),e.bodyLimit||(e.bodyLimit=this[INt]),Array.isArray(t)?t.forEach(n=>this[oy].add(n,e,r)):this[oy].add(t,e,r),this}function WNt(t){return this[oy].hasParser(t)}function $Nt(t){if(this[V$].started)throw new z$("removeContentTypeParser");if(Array.isArray(t))for(let e of t)this[oy].remove(e);else this[oy].remove(t)}function FNt(){if(this[V$].started)throw new z$("removeAllContentTypeParsers");this[oy].removeAll()}function UNt(t,e){if(e.isEssence)return t.type.indexOf(e)!==-1;if(t.type.indexOf(e.type)===-1)return!1;for(let r of e.parameterKeys)if(!(r in t.parameters)||t.parameters[r]!==e.parameters[r])return!1;return!0}function qNt(t,e,r){return r.isEssence?r.test(e):r.test(t)}function YN(t){this.name=t;let e=cbe(t);if(this.isEssence=t.indexOf(";")===-1,this.isEssence===!1&&e.type===""){let r=t.split(";",1)[0];this.type=r===""?t:r}else this.type=e.type;this.parameters=e.parameters,this.parameterKeys=Object.keys(e.parameters)}YN.prototype.toString=function(){return this.name};r_.exports=Ad;r_.exports.helpers={buildContentTypeParser:BNt,addContentTypeParser:MNt,hasContentTypeParser:WNt,removeContentTypeParser:$Nt,removeAllContentTypeParsers:FNt};r_.exports.defaultParsers={getDefaultJsonParser:pbe,defaultTextParser:K$};r_.exports[TNt]={rawBody:fbe}});var Abe=E((JDr,gbe)=>{"use strict";var mbe=Go(),jNt=Symbol.for("json-schema-ref"),J$=class{#e;#t;#r;#n;#a;constructor(e={}){this.#e={},this.#t={},this.#r=e.insertRefSymbol??!1,this.#n=e.allowEqualDuplicates??!0,this.#a=e.cloneSchemaWithoutRefs??!1}addSchema(e,r){e.$id!==void 0&&e.$id.charAt(0)!=="#"?r=e.$id:this.#l(e,r),this.#s(e,r)}getSchema(e,r="#"){let n=this.#e[e];if(n===void 0)throw new Error(`Cannot resolve ref "${e}${r}". Schema with id "${e}" is not found.`);return n.anchors[r]!==void 0?n.anchors[r]:hbe(n.schema,r)}hasSchema(e){return this.#e[e]!==void 0}getSchemaRefs(e){let r=this.#e[e];if(r===void 0)throw new Error(`Schema with id "${e}" is not found.`);return r.refs}getSchemaDependencies(e,r={}){let n=this.#e[e];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(e){if(this.#t[e]!==void 0)return;let r=this.#e[e];if(r===void 0)throw new Error(`Schema with id "${e}" is not found.`);!this.#a&&r.refs.length===0&&(this.#t[e]={schema:r.schema,anchors:r.anchors});let n=[];this.#i(r.schema,e,n);let s=this.getSchemaDependencies(e);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(e,r="#"){let n=this.#t[e];return n===void 0&&(this.derefSchema(e),n=this.#t[e]),n.anchors[r]!==void 0?n.anchors[r]:hbe(n.schema,r)}#o(e,r){let n=e.indexOf("#");return n===-1?{refSchemaId:e,refJsonPointer:"#"}:n===0?{refSchemaId:r,refJsonPointer:e}:{refSchemaId:e.slice(0,n),refJsonPointer:e.slice(n)}}#s(e,r){let n=e.$id;n!==void 0&&typeof n=="string"&&(n.charAt(0)==="#"?this.#h(e,r,n):(this.#l(e,n),r=n));let s=e.$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 e)typeof e[i]=="object"&&e[i]!==null&&this.#s(e[i],r)}#i(e,r,n=[]){let s=Array.isArray(e)?[...e]:{...e},i=s.$id;i!==void 0&&typeof i=="string"&&(i.charAt(0)==="#"?this.#d(s,r,i):(this.#p(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(e,r){let{sourceSchema:n,targetSchema:s}=e;if(n.$ref){if(this.#r&&(n[jNt]=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(mbe(n[i],s[i]))continue;throw new Error(`Cannot resolve ref "${e.ref}". Property "${i}" is already exist in schema "${e.sourceSchemaId}".`)}n[i]=s[i]}e.isResolved=!0}}#l(e,r){let n=this.#e[r];if(n!==void 0){if(this.#n&&mbe(e,n.schema))return;throw new Error(`There is already another schema with id "${r}".`)}this.#e[r]={schema:e,anchors:{},refs:[]}}#h(e,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]=e}#p(e,r){this.#t[r]===void 0&&(this.#t[r]={schema:e,anchors:{}})}#d(e,r,n){let{anchors:s}=this.#t[r];s[n]=e}};function hbe(t,e){let r=e.split("/"),n=t;for(let s of r)if(!(s===""||s==="#")){if(typeof n!="object"||n===null)return null;n=n[s]}return n??null}gbe.exports={RefResolver:J$}});var xbe=E((XDr,ybe)=>{"use strict";var X$=class t{constructor(e,r,n="#"){this.schema=e,this.schemaId=r,this.jsonPointer=n}getPropertyLocation(e){return new t(this.schema[e],this.schemaId,this.jsonPointer+"/"+e)}getSchemaRef(){return this.schemaId+this.jsonPointer}};ybe.exports=X$});var vbe=E((ZDr,eF)=>{"use strict";eF.exports=ke;eF.exports.default=ke;var HNt={$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},bbe={enum:["array","boolean","integer","null","number","object","string"]},Ebe=/^(?:[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,QNt=hN().fullFormats.uri,_be=hN().fullFormats.regex;function Jo(t,{instancePath:e="",parentData:r,parentDataProperty:n,rootData:s=t}={}){let i=null,a=0,o=a;return typeof t=="number"&&!(t%1)&&!isNaN(t)&&isFinite(t)?a===o&&typeof t=="number"&&isFinite(t)&&(t<0||isNaN(t))?(Jo.errors=[{instancePath:e,schemaPath:"#/definitions/nonNegativeInteger/minimum",keyword:"minimum",params:{comparison:">=",limit:0},message:"must be >= 0"}],!1):(Jo.errors=i,a===0):(Jo.errors=[{instancePath:e,schemaPath:"#/definitions/nonNegativeInteger/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1)}var Z$={validate:ke};function sa(t,{instancePath:e="",parentData:r,parentDataProperty:n,rootData:s=t}={}){let i=null,a=0;if(a===0)if(Array.isArray(t)){if(t.length<1)return sa.errors=[{instancePath:e,schemaPath:"#/minItems",keyword:"minItems",params:{limit:1},message:"must NOT have fewer than 1 items"}],!1;{var o=!0;let c=t.length;for(let u=0;u",limit:0},message:"must be > 0"}],!1}else return ke.errors=[{instancePath:e+"/multipleOf",schemaPath:"#/properties/multipleOf/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var o=x===a}else var o=!0;if(o){if(t.maximum!==void 0){let y=t.maximum,x=a;if(!(typeof y=="number"&&isFinite(y)))return ke.errors=[{instancePath:e+"/maximum",schemaPath:"#/properties/maximum/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var o=x===a}else var o=!0;if(o){if(t.exclusiveMaximum!==void 0){let y=t.exclusiveMaximum,x=a;if(!(typeof y=="number"&&isFinite(y)))return ke.errors=[{instancePath:e+"/exclusiveMaximum",schemaPath:"#/properties/exclusiveMaximum/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var o=x===a}else var o=!0;if(o){if(t.minimum!==void 0){let y=t.minimum,x=a;if(!(typeof y=="number"&&isFinite(y)))return ke.errors=[{instancePath:e+"/minimum",schemaPath:"#/properties/minimum/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var o=x===a}else var o=!0;if(o){if(t.exclusiveMinimum!==void 0){let y=t.exclusiveMinimum,x=a;if(!(typeof y=="number"&&isFinite(y)))return ke.errors=[{instancePath:e+"/exclusiveMinimum",schemaPath:"#/properties/exclusiveMinimum/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var o=x===a}else var o=!0;if(o){if(t.maxLength!==void 0){let y=t.maxLength,x=a,v=a;if(!(typeof y=="number"&&!(y%1)&&!isNaN(y)&&isFinite(y)))return ke.errors=[{instancePath:e+"/maxLength",schemaPath:"#/definitions/nonNegativeInteger/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;if(a===v&&typeof y=="number"&&isFinite(y)&&(y<0||isNaN(y)))return ke.errors=[{instancePath:e+"/maxLength",schemaPath:"#/definitions/nonNegativeInteger/minimum",keyword:"minimum",params:{comparison:">=",limit:0},message:"must be >= 0"}],!1;var o=x===a}else var o=!0;if(o){if(t.minLength!==void 0){let y=a;Jo(t.minLength,{instancePath:e+"/minLength",parentData:t,parentDataProperty:"minLength",rootData:s})||(i=i===null?Jo.errors:i.concat(Jo.errors),a=i.length);var o=y===a}else var o=!0;if(o){if(t.pattern!==void 0){let y=t.pattern,x=a;if(a===x&&a===x)if(typeof y=="string"){if(!_be(y))return ke.errors=[{instancePath:e+"/pattern",schemaPath:"#/properties/pattern/format",keyword:"format",params:{format:"regex"},message:'must match format "regex"'}],!1}else return ke.errors=[{instancePath:e+"/pattern",schemaPath:"#/properties/pattern/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var o=x===a}else var o=!0;if(o){if(t.additionalItems!==void 0){let y=a;ke(t.additionalItems,{instancePath:e+"/additionalItems",parentData:t,parentDataProperty:"additionalItems",rootData:s})||(i=i===null?ke.errors:i.concat(ke.errors),a=i.length);var o=y===a}else var o=!0;if(o){if(t.items!==void 0){let y=t.items,x=a,v=a,C=!1,R=a;ke(y,{instancePath:e+"/items",parentData:t,parentDataProperty:"items",rootData:s})||(i=i===null?ke.errors:i.concat(ke.errors),a=i.length);var c=R===a;if(C=C||c,!C){let N=a;sa(y,{instancePath:e+"/items",parentData:t,parentDataProperty:"items",rootData:s})||(i=i===null?sa.errors:i.concat(sa.errors),a=i.length);var c=N===a;C=C||c}if(C)a=v,i!==null&&(v?i.length=v:i=null);else{let N={instancePath:e+"/items",schemaPath:"#/properties/items/anyOf",keyword:"anyOf",params:{},message:"must match a schema in anyOf"};return i===null?i=[N]:i.push(N),a++,ke.errors=i,!1}var o=x===a}else var o=!0;if(o){if(t.maxItems!==void 0){let y=t.maxItems,x=a,v=a;if(!(typeof y=="number"&&!(y%1)&&!isNaN(y)&&isFinite(y)))return ke.errors=[{instancePath:e+"/maxItems",schemaPath:"#/definitions/nonNegativeInteger/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;if(a===v&&typeof y=="number"&&isFinite(y)&&(y<0||isNaN(y)))return ke.errors=[{instancePath:e+"/maxItems",schemaPath:"#/definitions/nonNegativeInteger/minimum",keyword:"minimum",params:{comparison:">=",limit:0},message:"must be >= 0"}],!1;var o=x===a}else var o=!0;if(o){if(t.minItems!==void 0){let y=a;Jo(t.minItems,{instancePath:e+"/minItems",parentData:t,parentDataProperty:"minItems",rootData:s})||(i=i===null?Jo.errors:i.concat(Jo.errors),a=i.length);var o=y===a}else var o=!0;if(o){if(t.uniqueItems!==void 0){let y=a;if(typeof t.uniqueItems!="boolean")return ke.errors=[{instancePath:e+"/uniqueItems",schemaPath:"#/properties/uniqueItems/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;var o=y===a}else var o=!0;if(o){if(t.contains!==void 0){let y=a;ke(t.contains,{instancePath:e+"/contains",parentData:t,parentDataProperty:"contains",rootData:s})||(i=i===null?ke.errors:i.concat(ke.errors),a=i.length);var o=y===a}else var o=!0;if(o){if(t.maxProperties!==void 0){let y=t.maxProperties,x=a,v=a;if(!(typeof y=="number"&&!(y%1)&&!isNaN(y)&&isFinite(y)))return ke.errors=[{instancePath:e+"/maxProperties",schemaPath:"#/definitions/nonNegativeInteger/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;if(a===v&&typeof y=="number"&&isFinite(y)&&(y<0||isNaN(y)))return ke.errors=[{instancePath:e+"/maxProperties",schemaPath:"#/definitions/nonNegativeInteger/minimum",keyword:"minimum",params:{comparison:">=",limit:0},message:"must be >= 0"}],!1;var o=x===a}else var o=!0;if(o){if(t.minProperties!==void 0){let y=a;Jo(t.minProperties,{instancePath:e+"/minProperties",parentData:t,parentDataProperty:"minProperties",rootData:s})||(i=i===null?Jo.errors:i.concat(Jo.errors),a=i.length);var o=y===a}else var o=!0;if(o){if(t.required!==void 0){let y=t.required,x=a;if(a===a)if(Array.isArray(y)){var u=!0;let R=y.length;for(let w=0;w1){let P={};for(;w--;){let L=y[w];if(typeof L=="string"){if(typeof P[L]=="number"){return N=P[L],ke.errors=[{instancePath:e+"/required",schemaPath:"#/definitions/stringArray/uniqueItems",keyword:"uniqueItems",params:{i:w,j:N},message:"must NOT have duplicate items (items ## "+N+" and "+w+" are identical)"}],!1;break}P[L]=w}}}}}else return ke.errors=[{instancePath:e+"/required",schemaPath:"#/definitions/stringArray/type",keyword:"type",params:{type:"array"},message:"must be array"}],!1;var o=x===a}else var o=!0;if(o){if(t.additionalProperties!==void 0){let y=a;ke(t.additionalProperties,{instancePath:e+"/additionalProperties",parentData:t,parentDataProperty:"additionalProperties",rootData:s})||(i=i===null?ke.errors:i.concat(ke.errors),a=i.length);var o=y===a}else var o=!0;if(o){if(t.definitions!==void 0){let y=t.definitions,x=a;if(a===x)if(y&&typeof y=="object"&&!Array.isArray(y))for(let C in y){let R=a;ke(y[C],{instancePath:e+"/definitions/"+C.replace(/~/g,"~0").replace(/\//g,"~1"),parentData:y,parentDataProperty:C,rootData:s})||(i=i===null?ke.errors:i.concat(ke.errors),a=i.length);var l=R===a;if(!l)break}else return ke.errors=[{instancePath:e+"/definitions",schemaPath:"#/properties/definitions/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=x===a}else var o=!0;if(o){if(t.properties!==void 0){let y=t.properties,x=a;if(a===x)if(y&&typeof y=="object"&&!Array.isArray(y))for(let C in y){let R=a;ke(y[C],{instancePath:e+"/properties/"+C.replace(/~/g,"~0").replace(/\//g,"~1"),parentData:y,parentDataProperty:C,rootData:s})||(i=i===null?ke.errors:i.concat(ke.errors),a=i.length);var d=R===a;if(!d)break}else return ke.errors=[{instancePath:e+"/properties",schemaPath:"#/properties/properties/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=x===a}else var o=!0;if(o){if(t.patternProperties!==void 0){let y=t.patternProperties,x=a;if(a===x)if(y&&typeof y=="object"&&!Array.isArray(y)){for(let C in y){let R=a;if(a===R&&typeof C=="string"&&!_be(C)){let w={instancePath:e+"/patternProperties",schemaPath:"#/properties/patternProperties/propertyNames/format",keyword:"format",params:{format:"regex"},message:'must match format "regex"',propertyName:C};i===null?i=[w]:i.push(w),a++}var f=R===a;if(!f){let w={instancePath:e+"/patternProperties",schemaPath:"#/properties/patternProperties/propertyNames",keyword:"propertyNames",params:{propertyName:C},message:"property name must be valid"};return i===null?i=[w]:i.push(w),a++,ke.errors=i,!1;break}}if(f)for(let C in y){let R=a;ke(y[C],{instancePath:e+"/patternProperties/"+C.replace(/~/g,"~0").replace(/\//g,"~1"),parentData:y,parentDataProperty:C,rootData:s})||(i=i===null?ke.errors:i.concat(ke.errors),a=i.length);var p=R===a;if(!p)break}}else return ke.errors=[{instancePath:e+"/patternProperties",schemaPath:"#/properties/patternProperties/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=x===a}else var o=!0;if(o){if(t.dependencies!==void 0){let y=t.dependencies,x=a;if(a===x)if(y&&typeof y=="object"&&!Array.isArray(y))for(let C in y){let R=y[C],w=a,N=a,P=!1,L=a;ke(R,{instancePath:e+"/dependencies/"+C.replace(/~/g,"~0").replace(/\//g,"~1"),parentData:y,parentDataProperty:C,rootData:s})||(i=i===null?ke.errors:i.concat(ke.errors),a=i.length);var m=L===a;if(P=P||m,!P){let M=a;if(a===a)if(Array.isArray(R)){var h=!0;let Z=R.length;for(let W=0;W1){let V={};for(;W--;){let j=R[W];if(typeof j=="string"){if(typeof V[j]=="number"){F=V[j];let J={instancePath:e+"/dependencies/"+C.replace(/~/g,"~0").replace(/\//g,"~1"),schemaPath:"#/definitions/stringArray/uniqueItems",keyword:"uniqueItems",params:{i:W,j:F},message:"must NOT have duplicate items (items ## "+F+" and "+W+" are identical)"};i===null?i=[J]:i.push(J),a++;break}V[j]=W}}}}}else{let Z={instancePath:e+"/dependencies/"+C.replace(/~/g,"~0").replace(/\//g,"~1"),schemaPath:"#/definitions/stringArray/type",keyword:"type",params:{type:"array"},message:"must be array"};i===null?i=[Z]:i.push(Z),a++}var m=M===a;P=P||m}if(P)a=N,i!==null&&(N?i.length=N:i=null);else{let M={instancePath:e+"/dependencies/"+C.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++,ke.errors=i,!1}var A=w===a;if(!A)break}else return ke.errors=[{instancePath:e+"/dependencies",schemaPath:"#/properties/dependencies/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=x===a}else var o=!0;if(o){if(t.propertyNames!==void 0){let y=a;ke(t.propertyNames,{instancePath:e+"/propertyNames",parentData:t,parentDataProperty:"propertyNames",rootData:s})||(i=i===null?ke.errors:i.concat(ke.errors),a=i.length);var o=y===a}else var o=!0;if(o){if(t.enum!==void 0){let y=t.enum,x=a;if(a===x)if(Array.isArray(y)){if(y.length<1)return ke.errors=[{instancePath:e+"/enum",schemaPath:"#/properties/enum/minItems",keyword:"minItems",params:{limit:1},message:"must NOT have fewer than 1 items"}],!1;{let C=y.length,R;if(C>1){e:for(;C--;)for(R=C;R--;)if(Sbe(y[C],y[R])){return ke.errors=[{instancePath:e+"/enum",schemaPath:"#/properties/enum/uniqueItems",keyword:"uniqueItems",params:{i:C,j:R},message:"must NOT have duplicate items (items ## "+R+" and "+C+" are identical)"}],!1;break e}}}}else return ke.errors=[{instancePath:e+"/enum",schemaPath:"#/properties/enum/type",keyword:"type",params:{type:"array"},message:"must be array"}],!1;var o=x===a}else var o=!0;if(o){if(t.type!==void 0){let y=t.type,x=a,v=a,C=!1,R=a;if(!(y==="array"||y==="boolean"||y==="integer"||y==="null"||y==="number"||y==="object"||y==="string")){let N={instancePath:e+"/type",schemaPath:"#/definitions/simpleTypes/enum",keyword:"enum",params:{allowedValues:bbe.enum},message:"must be equal to one of the allowed values"};i===null?i=[N]:i.push(N),a++}var g=R===a;if(C=C||g,!C){let N=a;if(a===N)if(Array.isArray(y))if(y.length<1){let L={instancePath:e+"/type",schemaPath:"#/properties/type/anyOf/1/minItems",keyword:"minItems",params:{limit:1},message:"must NOT have fewer than 1 items"};i===null?i=[L]:i.push(L),a++}else{var b=!0;let L=y.length;for(let M=0;M1){e:for(;M--;)for(k=M;k--;)if(Sbe(y[M],y[k])){let B={instancePath:e+"/type",schemaPath:"#/properties/type/anyOf/1/uniqueItems",keyword:"uniqueItems",params:{i:M,j:k},message:"must NOT have duplicate items (items ## "+k+" and "+M+" are identical)"};i===null?i=[B]:i.push(B),a++;break e}}}}else{let L={instancePath:e+"/type",schemaPath:"#/properties/type/anyOf/1/type",keyword:"type",params:{type:"array"},message:"must be array"};i===null?i=[L]:i.push(L),a++}var g=N===a;C=C||g}if(C)a=v,i!==null&&(v?i.length=v:i=null);else{let N={instancePath:e+"/type",schemaPath:"#/properties/type/anyOf",keyword:"anyOf",params:{},message:"must match a schema in anyOf"};return i===null?i=[N]:i.push(N),a++,ke.errors=i,!1}var o=x===a}else var o=!0;if(o){if(t.format!==void 0){let y=a;if(typeof t.format!="string")return ke.errors=[{instancePath:e+"/format",schemaPath:"#/properties/format/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var o=y===a}else var o=!0;if(o){if(t.contentMediaType!==void 0){let y=a;if(typeof t.contentMediaType!="string")return ke.errors=[{instancePath:e+"/contentMediaType",schemaPath:"#/properties/contentMediaType/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var o=y===a}else var o=!0;if(o){if(t.contentEncoding!==void 0){let y=a;if(typeof t.contentEncoding!="string")return ke.errors=[{instancePath:e+"/contentEncoding",schemaPath:"#/properties/contentEncoding/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var o=y===a}else var o=!0;if(o){if(t.if!==void 0){let y=a;ke(t.if,{instancePath:e+"/if",parentData:t,parentDataProperty:"if",rootData:s})||(i=i===null?ke.errors:i.concat(ke.errors),a=i.length);var o=y===a}else var o=!0;if(o){if(t.then!==void 0){let y=a;ke(t.then,{instancePath:e+"/then",parentData:t,parentDataProperty:"then",rootData:s})||(i=i===null?ke.errors:i.concat(ke.errors),a=i.length);var o=y===a}else var o=!0;if(o){if(t.else!==void 0){let y=a;ke(t.else,{instancePath:e+"/else",parentData:t,parentDataProperty:"else",rootData:s})||(i=i===null?ke.errors:i.concat(ke.errors),a=i.length);var o=y===a}else var o=!0;if(o){if(t.allOf!==void 0){let y=a;sa(t.allOf,{instancePath:e+"/allOf",parentData:t,parentDataProperty:"allOf",rootData:s})||(i=i===null?sa.errors:i.concat(sa.errors),a=i.length);var o=y===a}else var o=!0;if(o){if(t.anyOf!==void 0){let y=a;sa(t.anyOf,{instancePath:e+"/anyOf",parentData:t,parentDataProperty:"anyOf",rootData:s})||(i=i===null?sa.errors:i.concat(sa.errors),a=i.length);var o=y===a}else var o=!0;if(o){if(t.oneOf!==void 0){let y=a;sa(t.oneOf,{instancePath:e+"/oneOf",parentData:t,parentDataProperty:"oneOf",rootData:s})||(i=i===null?sa.errors:i.concat(sa.errors),a=i.length);var o=y===a}else var o=!0;if(o)if(t.not!==void 0){let y=a;ke(t.not,{instancePath:e+"/not",parentData:t,parentDataProperty:"not",rootData:s})||(i=i===null?ke.errors:i.concat(ke.errors),a=i.length);var o=y===a}else var o=!0}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}return ke.errors=i,a===0}});var sF=E((ekr,Cbe)=>{"use strict";var tF=class extends Error{constructor(e,r){super(),this.name="JsonSchemaMergeError",this.code="JSON_SCHEMA_MERGE_ERROR",this.message=`Failed to merge "${e}" keyword schemas.`,this.schemas=r}},rF=class extends Error{constructor(e,r){super(),this.name="JsonSchemaMergeError",this.code="JSON_SCHEMA_MERGE_ERROR",this.message=`Resolver for "${e}" keyword not found.`,this.schemas=r}},nF=class extends Error{constructor(e){super(),this.name="JsonSchemaMergeError",this.code="JSON_SCHEMA_MERGE_ERROR",this.message=`Invalid "onConflict" option: "${e}".`}};Cbe.exports={MergeError:tF,ResolverNotFoundError:rF,InvalidOnConflictOptionError:nF}});var wbe=E((tkr,Tbe)=>{"use strict";var GNt=Go(),{MergeError:iF}=sF();function Ibe(t){let e=t[0];for(let r=1;rt[r].includes(n));return e}function VNt(t,e,r){let n=Ibe(e);if(n.length===0)throw new iF(t,e);r[t]=n}function zNt(t,e,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 e)for(;o*i%1!==0;)i*=10;let a=e[0]*i;for(let o of e)a=s(a,o*i);r[t]=a/i}function ZNt(t,e,r){let n=e[0];for(let s=1;s{"use strict";var nOt=Go(),jn=wbe(),ZN=sF(),Obe={$id:jn.skip,type:jn.hybridArraysIntersection,enum:jn.arraysIntersection,minLength:jn.maxNumber,maxLength:jn.minNumber,minimum:jn.maxNumber,maximum:jn.minNumber,multipleOf:jn.commonMultiple,exclusiveMinimum:jn.maxNumber,exclusiveMaximum:jn.minNumber,minItems:jn.maxNumber,maxItems:jn.minNumber,maxProperties:jn.minNumber,minProperties:jn.maxNumber,const:jn.allEqual,default:jn.allEqual,format:jn.allEqual,required:jn.arraysUnion,properties:uOt,patternProperties:XN,additionalProperties:JN,items:aOt,additionalItems:oOt,definitions:XN,$defs:XN,nullable:jn.booleanAnd,oneOf:Rbe,anyOf:Rbe,allOf:jn.arraysUnion,not:JN,if:lOt,then:jn.skip,else:jn.skip,dependencies:Nbe,dependentRequired:Nbe,dependentSchemas:XN,propertyNames:JN,uniqueItems:jn.booleanOr,contains:JN};function JN(t,e,r,n,s){r[t]=Hc(e,s)}function sOt(t){let e=[[]];for(let r of t){let n=[];for(let s of e)for(let i of r)n.push([...s,i]);e=n}return e}function Rbe(t,e,r,n,s){if(e.length===1){r[t]=e[0];return}let i=sOt(e),a=[];for(let o of i)try{let c=Hc(o,s);c!==void 0&&a.push(c)}catch(c){if(c instanceof ZN.MergeError)continue;throw c}r[t]=a}function iOt(t,e){let{items:r,additionalItems:n}=t;return Array.isArray(r)?e{"use strict";var{mergeSchemas:fOt}=kbe();function pOt(t){return fOt(t,{onConflict:"skip"})}Lbe.exports=pOt});var Qbe=E((skr,cy)=>{"use strict";var{RefResolver:mOt}=Abe(),hOt=n8(),gOt=e$(),Mm=xbe(),Mbe=vbe(),AOt=Bbe(),yOt=/'/g,eO=2e4,$be="default",xOt=["floor","ceil","round","trunc"],Fbe=["default","json-stringify"],n_=0;function aF(t,e){if(!Mbe(t)){e?e=`"${e}" `:e="";let r=Mbe.errors[0],n=new Error(`${e}schema is invalid: data${r.instancePath} ${r.message}`);throw n.errors=aF.errors,n}}function s_(t,e){let r=e.schema.$ref,n=r.indexOf("#");n===-1&&(n=r.length);let s=r.slice(0,n)||e.schemaId,i=r.slice(n)||"#",a=t.refResolver.getSchema(s,i);if(a===null)throw new Error(`Cannot find reference "${r}"`);let o=new Mm(a,s,i);return a.$ref!==void 0?s_(t,o):o}function tO(t,e){let r=t.refResolver.getSchema(e,"#");return new Mm(r,e,"#")}function Wbe(t,e){return t.$id&&t.$id.charAt(0)!=="#"?t.$id:e}function oF(t,e){aF(t),e=e||{};let r={functions:[],functionsCounter:0,functionsNamesBySchema:new Map,options:e,refResolver:new mOt,rootSchemaId:t.$id||`__fjs_root_${n_++}`,validatorSchemasIds:new Set,mergedSchemasIds:new Map},n=Wbe(t,r.rootSchemaId);if(r.refResolver.hasSchema(n)||r.refResolver.addSchema(t,r.rootSchemaId),e.schema)for(let l in e.schema){let d=e.schema[l],f=Wbe(d,l);r.refResolver.hasSchema(f)||(aF(d,l),r.refResolver.addSchema(d,l))}if(e.rounding&&!xOt.includes(e.rounding))throw new Error(`Unsupported integer rounding method ${e.rounding}`);if(e.largeArrayMechanism)if(Fbe.includes(e.largeArrayMechanism))$be=e.largeArrayMechanism;else throw new Error(`Unsupported large array mechanism ${e.largeArrayMechanism}`);if(e.largeArraySize)if(typeof e.largeArraySize=="string"&&Number.isFinite(Number.parseInt(e.largeArraySize,10)))eO=Number.parseInt(e.largeArraySize,10);else if(typeof e.largeArraySize=="number"&&Number.isInteger(e.largeArraySize))eO=e.largeArraySize;else if(typeof e.largeArraySize=="bigint")eO=Number(e.largeArraySize);else throw new Error(`Unsupported large array size. Expected integer-like, got ${typeof e.largeArraySize} with value ${e.largeArraySize}`);let s=new Mm(t,r.rootSchemaId),i=xo(r,s,"input"),a=` + module.exports = ${t.toString()}(validator, serializer)`}nF.exports=$Nt;nF.exports.dependencies={Serializer:i$(),Validator:rF()}});var lbe=_((s$r,ube)=>{"use strict";var{dependencies:UNt}=sF(),{Serializer:FNt,Validator:n$r}=UNt,qNt={mode:"standalone"},jNt=FNt.restoreFromState(qNt),QNt=null;ube.exports=function(e,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}(QNt,jNt)});var zE=_((i$r,mbe)=>{"use strict";var dbe=require("node:http").STATUS_CODES,HNt=r8(),{kReplyHeaders:rh,kReplyNextErrorHandler:FO,kReplyIsRunningOnErrorHook:GNt,kReplyHasStatusCode:zNt,kRouteContext:pbe}=zs(),{FST_ERR_REP_INVALID_PAYLOAD_TYPE:KNt,FST_ERR_FAILED_ERROR_SERIALIZATION:VNt}=Di(),{getSchemaSerializer:YNt}=hE(),iF=lbe(),JNt={func:ZNt,toJSON(){return this.func.name.toString()+"()"}};function XNt(t,e,r){t[GNt]=!1;let n=t[pbe];if(t[FO]===!1){fbe(e,t,function(o,c){try{o.raw.writeHead(o.raw.statusCode,o[rh])}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=t[FO]||n.errorHandler;t[FO]=Object.getPrototypeOf(s),delete t[rh]["content-type"],delete t[rh]["content-length"];let i=s.func;if(!i){t[FO]=!1,fbe(e,t,r);return}let a=i(e,t.request,t);a!==void 0&&(a!==null&&typeof a.then=="function"?HNt(a,t):t.send(a))}function ZNt(t,e,r){if(tOt(t,r),!r[zNt]||r.statusCode===200){let n=t.statusCode||t.status;r.code(n>=400?n:500)}r.statusCode<500?r.log.info({res:r,err:t},t&&t.message):r.log.error({req:e,res:r,err:t},t&&t.message),r.send(t)}function fbe(t,e,r){let n=e.raw,s=e.statusCode;e[rh]["content-type"]=e[rh]["content-type"]??"application/json; charset=utf-8";let i;try{let a=YNt(e[pbe],s,e[rh]["content-type"]);i=a===!1?iF({error:dbe[s+""],code:t.code,message:t.message,statusCode:s}):a(Object.create(t,{error:{value:dbe[s+""]},message:{value:t.message},statusCode:{value:s}}))}catch(a){e.log.error({err:a,statusCode:n.statusCode},"The serializer for the given status code failed"),e.code(500),i=iF(new VNt(a.message,t.message))}typeof i!="string"&&!Buffer.isBuffer(i)&&(i=iF(new KNt(typeof i))),e[rh]["content-length"]=""+Buffer.byteLength(i),r(e,i)}function eOt(t=JNt,e){if(!e)return t;let r=Object.create(t);return r.func=e,r}function tOt(t,e){let r=e.raw,n=r.statusCode;n=n>=400?n:500,t!=null&&(t.headers!==void 0&&e.headers(t.headers),t.status>=400?n=t.status:t.statusCode>=400&&(n=t.statusCode)),r.statusCode=n}mbe.exports={buildErrorHandler:eOt,handleError:XNt}});var zO=_((a$r,GO)=>{"use strict";var uF=require("node:stream").finished,rOt=require("node:stream").Readable,{kFourOhFourContext:hbe,kPublicRouteContext:gbe,kReplyErrorHandlerCalled:Sbe,kReplyHijacked:KE,kReplyStartTime:VE,kReplyEndTime:dF,kReplySerializer:Ld,kReplySerializerDefault:jO,kReplyIsError:QO,kReplyHeaders:bn,kReplyTrailers:Ks,kReplyHasStatusCode:fF,kReplyIsRunningOnErrorHook:pF,kReplyNextErrorHandler:nOt,kDisableRequestLogging:Ibe,kSchemaResponse:HO,kReplyCacheSerializeFns:qp,kSchemaController:aF,kOptions:sOt,kRouteContext:ar}=zs(),{onSendHookRunner:Cbe,onResponseHookRunner:iOt,preHandlerHookRunner:aOt,preSerializationHookRunner:oOt}=Rp(),ybe=a8()[Symbol.for("internals")],cOt=mE(),lF=cOt.now,{handleError:Abe}=zE(),{getSchemaSerializer:uOt}=hE(),oF={JSON:"application/json; charset=utf-8",PLAIN:"text/plain; charset=utf-8",OCTET:"application/octet-stream"},{FST_ERR_REP_INVALID_PAYLOAD_TYPE:lOt,FST_ERR_REP_RESPONSE_BODY_CONSUMED:dOt,FST_ERR_REP_ALREADY_SENT:Tbe,FST_ERR_REP_SENT_VALUE:fOt,FST_ERR_SEND_INSIDE_ONERR:pOt,FST_ERR_BAD_STATUS_CODE:mOt,FST_ERR_BAD_TRAILER_NAME:hOt,FST_ERR_BAD_TRAILER_VALUE:gOt,FST_ERR_MISSING_SERIALIZATION_FN:yOt,FST_ERR_MISSING_CONTENTTYPE_SERIALIZATION_FN:AOt}=Di(),{FSTDEP010:xOt,FSTDEP013:bOt,FSTDEP019:_Ot,FSTDEP020:EOt}=wd(),wbe=Object.prototype.toString;function ln(t,e,r){this.raw=t,this[Ld]=null,this[Sbe]=!1,this[QO]=!1,this[pF]=!1,this.request=e,this[bn]={},this[Ks]=null,this[fF]=!1,this[VE]=void 0,this.log=r}ln.props=[];Object.defineProperties(ln.prototype,{[ar]:{get(){return this.request[ar]}},context:{get(){return _Ot(),this.request[ar]}},elapsedTime:{get(){return this[VE]===void 0?0:(this[dF]||lF())-this[VE]}},server:{get(){return this.request[ar].server}},sent:{enumerable:!0,get(){return(this[KE]||this.raw.writableEnded)===!0},set(t){if(xOt(),t!==!0)throw new fOt;if(this.sent&&this[KE])throw new Tbe(this.request.url,this.request.method);this[KE]=!0}},statusCode:{get(){return this.raw.statusCode},set(t){this.code(t)}},[gbe]:{get(){return this.request[gbe]}}});ln.prototype.hijack=function(){return this[KE]=!0,this};ln.prototype.send=function(t){if(this[pF]===!0)throw new pOt;if(this.sent)return this.log.warn({err:new Tbe(this.request.url,this.request.method)}),this;if(t instanceof Error||this[QO]===!0)return this[QO]=!1,YE(this,t,nh),this;if(t===void 0)return nh(this,t),this;let e=this.getHeader("content-type"),r=e!==void 0;if(t!==null){if(typeof t.pipe=="function"||typeof t.getReader=="function"||wbe.call(t)==="[object Response]")return nh(this,t),this;if(t?.buffer instanceof ArrayBuffer){r===!1&&(this[bn]["content-type"]=oF.OCTET);let n=Buffer.isBuffer(t)?t:Buffer.from(t.buffer,t.byteOffset,t.byteLength);return nh(this,n),this}if(r===!1&&typeof t=="string")return this[bn]["content-type"]=oF.PLAIN,nh(this,t),this}if(this[Ld]!==null){if(typeof t!="string")return xbe(this,t),this;t=this[Ld](t)}else if(r===!1||e.indexOf("json")>-1){if(r===!1)this[bn]["content-type"]=oF.JSON;else if(e.indexOf("charset")===-1){let n=e.trim();n.endsWith(";")?this[bn]["content-type"]=`${n} charset=utf-8`:this[bn]["content-type"]=`${n}; charset=utf-8`}if(typeof t!="string")return xbe(this,t),this}return nh(this,t),this};ln.prototype.getHeader=function(t){t=t.toLowerCase();let e=this.raw,r=this[bn][t];return r===void 0&&e.hasHeader(t)&&(r=e.getHeader(t)),r};ln.prototype.getHeaders=function(){return{...this.raw.getHeaders(),...this[bn]}};ln.prototype.hasHeader=function(t){return t=t.toLowerCase(),this[bn][t]!==void 0||this.raw.hasHeader(t)};ln.prototype.removeHeader=function(t){return delete this[bn][t.toLowerCase()],this};ln.prototype.header=function(t,e=""){return t=t.toLowerCase(),this[bn][t]&&t==="set-cookie"?(typeof this[bn][t]=="string"&&(this[bn][t]=[this[bn][t]]),Array.isArray(e)?Array.prototype.push.apply(this[bn][t],e):this[bn][t].push(e)):this[bn][t]=e,this};ln.prototype.headers=function(t){let e=Object.keys(t);for(var r=0;r!==e.length;++r){let n=e[r];this.header(n,t[n])}return this};var vOt=new Set(["transfer-encoding","content-length","host","cache-control","max-forwards","te","authorization","set-cookie","content-encoding","content-type","content-range","trailer"]);ln.prototype.trailer=function(t,e){if(t=t.toLowerCase(),vOt.has(t))throw new hOt(t);if(typeof e!="function")throw new gOt(t,typeof e);return this[Ks]===null&&(this[Ks]={}),this[Ks][t]=e,this};ln.prototype.hasTrailer=function(t){return this[Ks]?.[t.toLowerCase()]!==void 0};ln.prototype.removeTrailer=function(t){return this[Ks]===null?this:(this[Ks][t.toLowerCase()]=void 0,this)};ln.prototype.code=function(t){let e=Number(t);if(isNaN(e)||e<100||e>599)throw new mOt(t||String(t));return this.raw.statusCode=e,this[fF]=!0,this};ln.prototype.status=ln.prototype.code;ln.prototype.getSerializationFunction=function(t,e){let r;return typeof t=="string"||typeof t=="number"?typeof e=="string"?r=this[ar][HO]?.[t]?.[e]:r=this[ar][HO]?.[t]:typeof t=="object"&&(r=this[ar][qp]?.get(t)),r};ln.prototype.compileSerializationSchema=function(t,e=null,r=null){let{request:n}=this,{method:s,url:i}=n;if(this[ar][qp]?.has(t))return this[ar][qp].get(t);let o=(this[ar].serializerCompiler||this.server[aF].serializerCompiler||this.server[aF].setupSerializer(this.server[sOt])||this.server[aF].serializerCompiler)({schema:t,method:s,url:i,httpStatus:e,contentType:r});return this[ar][qp]==null&&(this[ar][qp]=new WeakMap),this[ar][qp].set(t,o),o};ln.prototype.serializeInput=function(t,e,r,n){let s=r,i;if(r=typeof e=="string"||typeof e=="number"?e:r,n=r&&s!==r?s:n,r!=null){if(n!=null?i=this[ar][HO]?.[r]?.[n]:i=this[ar][HO]?.[r],i==null)throw n?new AOt(r,n):new yOt(r)}else this[ar][qp]?.has(e)?i=this[ar][qp].get(e):i=this.compileSerializationSchema(e,r,n);return i(t)};ln.prototype.serialize=function(t){return this[Ld]!==null?this[Ld](t):this[ar]&&this[ar][jO]?this[ar][jO](t,this.raw.statusCode):Obe(this[ar],t,this.raw.statusCode)};ln.prototype.serializer=function(t){return this[Ld]=t,this};ln.prototype.type=function(t){return this[bn]["content-type"]=t,this};ln.prototype.redirect=function(t,e){return typeof t=="string"&&(e=t,t=this[fF]?this.raw.statusCode:302),this.header("location",e).code(t).send()};ln.prototype.callNotFound=function(){return ROt(this),this};ln.prototype.getResponseTime=function(){return EOt(),this.elapsedTime};ln.prototype.then=function(t,e){if(this.sent){t();return}uF(this.raw,r=>{r&&r.code!=="ERR_STREAM_PREMATURE_CLOSE"?e?e(r):this.log&&this.log.warn("unhandled rejection on reply.then"):t()})};function xbe(t,e){t[ar].preSerialization!==null?oOt(t[ar].preSerialization,t.request,t,e,bbe):bbe(null,t.request,t,e)}function bbe(t,e,r,n){if(t!=null){YE(r,t);return}try{r[Ld]!==null?n=r[Ld](n):r[ar]&&r[ar][jO]?n=r[ar][jO](n,r.raw.statusCode):n=Obe(r[ar],n,r.raw.statusCode,r[bn]["content-type"])}catch(s){SOt(s,r),YE(r,s);return}nh(r,n)}function SOt(t,e){t.serialization=e[ar].config}function nh(t,e){t[ar].onSend!==null?Cbe(t[ar].onSend,t.request,t,e,IOt):Rbe(t,e)}function IOt(t,e,r,n){t!=null?YE(r,t):Rbe(r,n)}function cF(t,e){let r=t.raw;try{r.writeHead(e,t[bn])}catch(n){throw n.code==="ERR_HTTP_HEADERS_SENT"&&t.log.warn(`Reply was already sent, did you forget to "return reply" in the "${t.request.raw.url}" (${t.request.raw.method}) route?`),n}}function Rbe(t,e){let r=t.raw,n=t.request;if(t[Ks]!==null){let a=Object.keys(t[Ks]),o="";for(let c of a)typeof t[Ks][c]=="function"&&(o+=" ",o+=c);t.header("Transfer-Encoding","chunked"),t.header("Trailer",o.trim())}let s=wbe.call(e)==="[object Response]";s&&typeof e.status=="number"&&t.code(e.status);let i=r.statusCode;if(e==null){i>=200&&i!==204&&i!==304&&n.method!=="HEAD"&&t[Ks]===null&&(t[bn]["content-length"]="0"),cF(t,i),qO(e,r,t);return}if(i>=100&&i<200||i===204){t.removeHeader("content-type"),t.removeHeader("content-length"),cF(t,i),qO(void 0,r,t),typeof e.resume=="function"&&(e.on("error",kbe),e.resume());return}if(typeof e.pipe=="function"){Nbe(e,r,t);return}if(typeof e.getReader=="function"){Ebe(e,r,t);return}if(s){if(typeof e.headers=="object"&&typeof e.headers.forEach=="function")for(let[a,o]of e.headers)t.header(a,o);if(e.body!=null){if(e.bodyUsed)throw new dOt;Ebe(e.body,r,t)}return}if(typeof e!="string"&&!Buffer.isBuffer(e))throw new lOt(typeof e);if(t[Ks]===null){let a=t[bn]["content-length"];(!a||n.raw.method!=="HEAD"&&Number(a)!==Buffer.byteLength(e))&&(t[bn]["content-length"]=""+Buffer.byteLength(e))}cF(t,i),r.write(e),qO(e,r,t)}function _be(t,e,r){e.code==="ERR_STREAM_PREMATURE_CLOSE"?t[Ibe]||t.info({res:r},"stream closed prematurely"):t.warn({err:e},"response terminated with an error with headers already sent")}function Ebe(t,e,r){let n=rOt.fromWeb(t);Nbe(n,e,r)}function Nbe(t,e,r){let n=!0,s=!1;if(COt(t,e,r),uF(t,{readable:!0,writable:!1},function(i){n=!1,i!=null&&(e.headersSent||r.request.raw.aborted===!0?(s||(s=!0,_be(r.log,i,e)),e.destroy()):YE(r,i))}),uF(e,function(i){n&&(i!=null&&e.headersSent&&!s&&(s=!0,_be(r.log,i,e)),typeof t.destroy=="function"?t.destroy():typeof t.close=="function"?t.close(kbe):typeof t.abort=="function"?t.abort():r.log.warn("stream payload does not end properly"))}),e.headersSent)r.log.warn("response will send, but you shouldn't use res.writeHead in stream mode");else for(let i in r[bn])e.setHeader(i,r[bn][i]);t.pipe(e)}function qO(t,e,r){if(r[Ks]===null){e.end(null,null,null);return}let n=Object.keys(r[Ks]),s={},i=0,a=!0;function o(){i===0&&(e.addTrailers(s),e.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[Ks][c]!="function")continue;a=!1,i--;let l=r[Ks][c](r,t,u);typeof l=="object"&&typeof l.then=="function"?l.then(d=>u(null,d),u):l!=null&&(bOt(),u(null,l))}a&&e.end(null,null,null)}function COt(t,e,r){r[Ks]!==null&&t.on("end",()=>qO(null,e,r))}function YE(t,e,r){t[ar].onError!==null&&!t[nOt]?(t[pF]=!0,Cbe(t[ar].onError,t.request,t,e,()=>Abe(t,e,r))):Abe(t,e,r)}function TOt(t){t[VE]=lF();let e=r=>{t[dF]=lF(),t.raw.removeListener("finish",e),t.raw.removeListener("error",e);let n=t[ar];n&&n.onResponse!==null?iOt(n.onResponse,t.request,t,vbe):vbe(r,t.request,t)};t.raw.on("finish",e),t.raw.on("error",e)}function vbe(t,e,r){if(r.log[Ibe])return;let n=r.elapsedTime;if(t!=null){r.log.error({res:r,err:t,responseTime:n},"request errored");return}r.log.info({res:r,responseTime:n},"request completed")}function wOt(t){let e=t.props.slice();function r(n,s,i){this.raw=n,this[QO]=!1,this[Sbe]=!1,this[KE]=!1,this[Ld]=null,this.request=s,this[bn]={},this[Ks]=null,this[VE]=void 0,this[dF]=void 0,this.log=i;for(var a,o=0;o{"use strict";Pbe.exports=NOt;function NOt(t){if(!t)throw new TypeError("argument req is required");var e=kOt(t.headers["x-forwarded-for"]||""),r=OOt(t),n=[r].concat(e);return n}function OOt(t){return t.socket?t.socket.remoteAddress:t.connection.remoteAddress}function kOt(t){for(var e=t.length,r=[],n=t.length,s=t.length-1;s>=0;s--)switch(t.charCodeAt(s)){case 32:n===e&&(n=e=s);break;case 44:n!==e&&r.push(t.substring(n,e)),n=e=s;break;default:n=s;break}return n!==e&&r.push(t.substring(n,e)),r}});var Lbe=_((Bbe,JE)=>{(function(){var t,e,r,n,s,i,a,o,c;e={},o=this,typeof JE<"u"&&JE!==null&&JE.exports?JE.exports=e:o.ipaddr=e,a=function(u,l,d,f){var p,m;if(u.length!==l.length)throw new Error("ipaddr: cannot match CIDR for objects with different lengths");for(p=0;f>0;){if(m=d-f,m<0&&(m=0),u[p]>>m!==l[p]>>m)return!1;f-=d,p+=1}return!0},e.subnetMatch=function(u,l,d){var f,p,m,h,y;d==null&&(d="unicast");for(m in l)for(h=l[m],h[0]&&!(h[0]instanceof Array)&&(h=[h]),f=0,p=h.length;f=0;d=f+=-1)if(p=this.octets[d],p in y){if(h=y[p],m&&h!==0)return null;h!==8&&(m=!0),l+=h}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")},e.IPv4.parser=function(u){var l,d,f,p,m;if(d=function(h){return h[0]==="0"&&h[1]!=="x"?parseInt(h,8):parseInt(h)},l=u.match(n.fourOctet))return function(){var h,y,g,b;for(g=l.slice(1,6),b=[],h=0,y=g.length;h4294967295||m<0)throw new Error("ipaddr: address outside defined range");return function(){var h,y;for(y=[],p=h=0;h<=24;p=h+=8)y.push(m>>p&255);return y}().reverse()}else return null},e.IPv6=function(){function u(l,d){var f,p,m,h,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,m=0,h=g.length;md&&(l=f.index,d=f[0].length);return d<0?m:m.substring(0,l)+"::"+m.substring(l+d)},u.prototype.toByteArray=function(){var l,d,f,p,m;for(l=[],m=this.parts,d=0,f=m.length;d>8),l.push(p&255);return l},u.prototype.toNormalizedString=function(){var l,d,f;return l=function(){var p,m,h,y;for(h=this.parts,y=[],p=0,m=h.length;p>8,l&255,d>>8,d&255])},u.prototype.prefixLengthFromSubnetMask=function(){var l,d,f,p,m,h,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,m=!1,d=f=7;f>=0;d=f+=-1)if(p=this.parts[d],p in y){if(h=y[p],m&&h!==0)return null;h!==16&&(m=!0),l+=h}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")},t=function(u,l){var d,f,p,m,h,y;if(u.indexOf("::")!==u.lastIndexOf("::"))return null;for(y=(u.match(i.zoneIndex)||[])[0],y&&(y=y.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(h=l-d,m=":";h--;)m+="0:";return u=u.replace("::",m),u[0]===":"&&(u=u.slice(1)),u[u.length-1]===":"&&(u=u.slice(0,-1)),l=function(){var g,b,x,A;for(x=u.split(":"),A=[],g=0,b=x.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")},e.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")},e.isValid=function(u){return e.IPv6.isValid(u)||e.IPv4.isValid(u)},e.parse=function(u){if(e.IPv6.isValid(u))return e.IPv6.parse(u);if(e.IPv4.isValid(u))return e.IPv4.parse(u);throw new Error("ipaddr: the address has neither IPv6 nor IPv4 format")},e.parseCIDR=function(u){var l;try{return e.IPv6.parseCIDR(u)}catch(d){l=d;try{return e.IPv4.parseCIDR(u)}catch(f){throw l=f,new Error("ipaddr: the address has neither IPv6 nor IPv4 CIDR format")}}},e.fromByteArray=function(u){var l;if(l=u.length,l===4)return new e.IPv4(u);if(l===16)return new e.IPv6(u);throw new Error("ipaddr: the binary input is neither an IPv6 nor IPv4 address")},e.process=function(u){var l;return l=this.parse(u),l.kind()==="ipv6"&&l.isIPv4MappedAddress()?l.toIPv4Address():l}}).call(Bbe)});var Fbe=_((c$r,YO)=>{"use strict";YO.exports=$Ot;YO.exports.all=$be;YO.exports.compile=Ube;var POt=Dbe(),Wbe=Lbe(),DOt=/^[0-9]+$/,KO=Wbe.isValid,VO=Wbe.parse,Mbe={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 $be(t,e){var r=POt(t);if(!e)return r;typeof e!="function"&&(e=Ube(e));for(var n=0;ns)throw new TypeError("invalid range on address: "+t);return[n,i]}function WOt(t){var e=VO(t),r=e.kind();return r==="ipv4"?e.prefixLengthFromSubnetMask():null}function $Ot(t,e){if(!t)throw new TypeError("req argument is required");if(!e)throw new TypeError("trust argument is required");var r=$be(t,e),n=r[r.length-1];return n}function UOt(){return!1}function FOt(t){return function(r){if(!KO(r))return!1;for(var n=VO(r),s,i=n.kind(),a=0;a{"use strict";var jOt="2.0.0",QOt=Number.MAX_SAFE_INTEGER||9007199254740991,HOt=16,GOt=250,zOt=["major","premajor","minor","preminor","patch","prepatch","prerelease"];qbe.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:HOt,MAX_SAFE_BUILD_LENGTH:GOt,MAX_SAFE_INTEGER:QOt,RELEASE_TYPES:zOt,SEMVER_SPEC_VERSION:jOt,FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var ZE=_((l$r,jbe)=>{"use strict";var KOt=typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...t)=>console.error("SEMVER",...t):()=>{};jbe.exports=KOt});var UA=_((al,Qbe)=>{"use strict";var{MAX_SAFE_COMPONENT_LENGTH:mF,MAX_SAFE_BUILD_LENGTH:VOt,MAX_LENGTH:YOt}=XE(),JOt=ZE();al=Qbe.exports={};var XOt=al.re=[],ZOt=al.safeRe=[],ze=al.src=[],ekt=al.safeSrc=[],Ke=al.t={},tkt=0,hF="[a-zA-Z0-9-]",rkt=[["\\s",1],["\\d",YOt],[hF,VOt]],nkt=t=>{for(let[e,r]of rkt)t=t.split(`${e}*`).join(`${e}{0,${r}}`).split(`${e}+`).join(`${e}{1,${r}}`);return t},Mt=(t,e,r)=>{let n=nkt(e),s=tkt++;JOt(t,s,e),Ke[t]=s,ze[s]=e,ekt[s]=n,XOt[s]=new RegExp(e,r?"g":void 0),ZOt[s]=new RegExp(n,r?"g":void 0)};Mt("NUMERICIDENTIFIER","0|[1-9]\\d*");Mt("NUMERICIDENTIFIERLOOSE","\\d+");Mt("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${hF}*`);Mt("MAINVERSION",`(${ze[Ke.NUMERICIDENTIFIER]})\\.(${ze[Ke.NUMERICIDENTIFIER]})\\.(${ze[Ke.NUMERICIDENTIFIER]})`);Mt("MAINVERSIONLOOSE",`(${ze[Ke.NUMERICIDENTIFIERLOOSE]})\\.(${ze[Ke.NUMERICIDENTIFIERLOOSE]})\\.(${ze[Ke.NUMERICIDENTIFIERLOOSE]})`);Mt("PRERELEASEIDENTIFIER",`(?:${ze[Ke.NONNUMERICIDENTIFIER]}|${ze[Ke.NUMERICIDENTIFIER]})`);Mt("PRERELEASEIDENTIFIERLOOSE",`(?:${ze[Ke.NONNUMERICIDENTIFIER]}|${ze[Ke.NUMERICIDENTIFIERLOOSE]})`);Mt("PRERELEASE",`(?:-(${ze[Ke.PRERELEASEIDENTIFIER]}(?:\\.${ze[Ke.PRERELEASEIDENTIFIER]})*))`);Mt("PRERELEASELOOSE",`(?:-?(${ze[Ke.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${ze[Ke.PRERELEASEIDENTIFIERLOOSE]})*))`);Mt("BUILDIDENTIFIER",`${hF}+`);Mt("BUILD",`(?:\\+(${ze[Ke.BUILDIDENTIFIER]}(?:\\.${ze[Ke.BUILDIDENTIFIER]})*))`);Mt("FULLPLAIN",`v?${ze[Ke.MAINVERSION]}${ze[Ke.PRERELEASE]}?${ze[Ke.BUILD]}?`);Mt("FULL",`^${ze[Ke.FULLPLAIN]}$`);Mt("LOOSEPLAIN",`[v=\\s]*${ze[Ke.MAINVERSIONLOOSE]}${ze[Ke.PRERELEASELOOSE]}?${ze[Ke.BUILD]}?`);Mt("LOOSE",`^${ze[Ke.LOOSEPLAIN]}$`);Mt("GTLT","((?:<|>)?=?)");Mt("XRANGEIDENTIFIERLOOSE",`${ze[Ke.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);Mt("XRANGEIDENTIFIER",`${ze[Ke.NUMERICIDENTIFIER]}|x|X|\\*`);Mt("XRANGEPLAIN",`[v=\\s]*(${ze[Ke.XRANGEIDENTIFIER]})(?:\\.(${ze[Ke.XRANGEIDENTIFIER]})(?:\\.(${ze[Ke.XRANGEIDENTIFIER]})(?:${ze[Ke.PRERELEASE]})?${ze[Ke.BUILD]}?)?)?`);Mt("XRANGEPLAINLOOSE",`[v=\\s]*(${ze[Ke.XRANGEIDENTIFIERLOOSE]})(?:\\.(${ze[Ke.XRANGEIDENTIFIERLOOSE]})(?:\\.(${ze[Ke.XRANGEIDENTIFIERLOOSE]})(?:${ze[Ke.PRERELEASELOOSE]})?${ze[Ke.BUILD]}?)?)?`);Mt("XRANGE",`^${ze[Ke.GTLT]}\\s*${ze[Ke.XRANGEPLAIN]}$`);Mt("XRANGELOOSE",`^${ze[Ke.GTLT]}\\s*${ze[Ke.XRANGEPLAINLOOSE]}$`);Mt("COERCEPLAIN",`(^|[^\\d])(\\d{1,${mF}})(?:\\.(\\d{1,${mF}}))?(?:\\.(\\d{1,${mF}}))?`);Mt("COERCE",`${ze[Ke.COERCEPLAIN]}(?:$|[^\\d])`);Mt("COERCEFULL",ze[Ke.COERCEPLAIN]+`(?:${ze[Ke.PRERELEASE]})?(?:${ze[Ke.BUILD]})?(?:$|[^\\d])`);Mt("COERCERTL",ze[Ke.COERCE],!0);Mt("COERCERTLFULL",ze[Ke.COERCEFULL],!0);Mt("LONETILDE","(?:~>?)");Mt("TILDETRIM",`(\\s*)${ze[Ke.LONETILDE]}\\s+`,!0);al.tildeTrimReplace="$1~";Mt("TILDE",`^${ze[Ke.LONETILDE]}${ze[Ke.XRANGEPLAIN]}$`);Mt("TILDELOOSE",`^${ze[Ke.LONETILDE]}${ze[Ke.XRANGEPLAINLOOSE]}$`);Mt("LONECARET","(?:\\^)");Mt("CARETTRIM",`(\\s*)${ze[Ke.LONECARET]}\\s+`,!0);al.caretTrimReplace="$1^";Mt("CARET",`^${ze[Ke.LONECARET]}${ze[Ke.XRANGEPLAIN]}$`);Mt("CARETLOOSE",`^${ze[Ke.LONECARET]}${ze[Ke.XRANGEPLAINLOOSE]}$`);Mt("COMPARATORLOOSE",`^${ze[Ke.GTLT]}\\s*(${ze[Ke.LOOSEPLAIN]})$|^$`);Mt("COMPARATOR",`^${ze[Ke.GTLT]}\\s*(${ze[Ke.FULLPLAIN]})$|^$`);Mt("COMPARATORTRIM",`(\\s*)${ze[Ke.GTLT]}\\s*(${ze[Ke.LOOSEPLAIN]}|${ze[Ke.XRANGEPLAIN]})`,!0);al.comparatorTrimReplace="$1$2$3";Mt("HYPHENRANGE",`^\\s*(${ze[Ke.XRANGEPLAIN]})\\s+-\\s+(${ze[Ke.XRANGEPLAIN]})\\s*$`);Mt("HYPHENRANGELOOSE",`^\\s*(${ze[Ke.XRANGEPLAINLOOSE]})\\s+-\\s+(${ze[Ke.XRANGEPLAINLOOSE]})\\s*$`);Mt("STAR","(<|>)?=?\\s*\\*");Mt("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");Mt("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var JO=_((d$r,Hbe)=>{"use strict";var skt=Object.freeze({loose:!0}),ikt=Object.freeze({}),akt=t=>t?typeof t!="object"?skt:t:ikt;Hbe.exports=akt});var gF=_((f$r,Kbe)=>{"use strict";var Gbe=/^[0-9]+$/,zbe=(t,e)=>{if(typeof t=="number"&&typeof e=="number")return t===e?0:tzbe(e,t);Kbe.exports={compareIdentifiers:zbe,rcompareIdentifiers:okt}});var $i=_((p$r,Ybe)=>{"use strict";var XO=ZE(),{MAX_LENGTH:Vbe,MAX_SAFE_INTEGER:ZO}=XE(),{safeRe:ek,t:tk}=UA(),ckt=JO(),{compareIdentifiers:yF}=gF(),AF=class t{constructor(e,r){if(r=ckt(r),e instanceof t){if(e.loose===!!r.loose&&e.includePrerelease===!!r.includePrerelease)return e;e=e.version}else if(typeof e!="string")throw new TypeError(`Invalid version. Must be a string. Got type "${typeof e}".`);if(e.length>Vbe)throw new TypeError(`version is longer than ${Vbe} characters`);XO("SemVer",e,r),this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease;let n=e.trim().match(r.loose?ek[tk.LOOSE]:ek[tk.FULL]);if(!n)throw new TypeError(`Invalid Version: ${e}`);if(this.raw=e,this.major=+n[1],this.minor=+n[2],this.patch=+n[3],this.major>ZO||this.major<0)throw new TypeError("Invalid major version");if(this.minor>ZO||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>ZO||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&&ie.major?1:this.minore.minor?1:this.patche.patch?1:0}comparePre(e){if(e instanceof t||(e=new t(e,this.options)),this.prerelease.length&&!e.prerelease.length)return-1;if(!this.prerelease.length&&e.prerelease.length)return 1;if(!this.prerelease.length&&!e.prerelease.length)return 0;let r=0;do{let n=this.prerelease[r],s=e.prerelease[r];if(XO("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 yF(n,s)}while(++r)}compareBuild(e){e instanceof t||(e=new t(e,this.options));let r=0;do{let n=this.build[r],s=e.build[r];if(XO("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 yF(n,s)}while(++r)}inc(e,r,n){if(e.startsWith("pre")){if(!r&&n===!1)throw new Error("invalid increment argument: identifier is empty");if(r){let s=`-${r}`.match(this.options.loose?ek[tk.PRERELEASELOOSE]:ek[tk.PRERELEASE]);if(!s||s[1]!==r)throw new Error(`invalid identifier: ${r}`)}}switch(e){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]),yF(this.prerelease[0],r)===0?isNaN(this.prerelease[1])&&(this.prerelease=i):this.prerelease=i}break}default:throw new Error(`invalid increment argument: ${e}`)}return this.raw=this.format(),this.build.length&&(this.raw+=`+${this.build.join(".")}`),this}};Ybe.exports=AF});var sh=_((m$r,Xbe)=>{"use strict";var Jbe=$i(),ukt=(t,e,r=!1)=>{if(t instanceof Jbe)return t;try{return new Jbe(t,e)}catch(n){if(!r)return null;throw n}};Xbe.exports=ukt});var e1e=_((h$r,Zbe)=>{"use strict";var lkt=sh(),dkt=(t,e)=>{let r=lkt(t,e);return r?r.version:null};Zbe.exports=dkt});var r1e=_((g$r,t1e)=>{"use strict";var fkt=sh(),pkt=(t,e)=>{let r=fkt(t.trim().replace(/^[=v]+/,""),e);return r?r.version:null};t1e.exports=pkt});var i1e=_((y$r,s1e)=>{"use strict";var n1e=$i(),mkt=(t,e,r,n,s)=>{typeof r=="string"&&(s=n,n=r,r=void 0);try{return new n1e(t instanceof n1e?t.version:t,r).inc(e,n,s).version}catch{return null}};s1e.exports=mkt});var c1e=_((A$r,o1e)=>{"use strict";var a1e=sh(),hkt=(t,e)=>{let r=a1e(t,null,!0),n=a1e(e,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"};o1e.exports=hkt});var l1e=_((x$r,u1e)=>{"use strict";var gkt=$i(),ykt=(t,e)=>new gkt(t,e).major;u1e.exports=ykt});var f1e=_((b$r,d1e)=>{"use strict";var Akt=$i(),xkt=(t,e)=>new Akt(t,e).minor;d1e.exports=xkt});var m1e=_((_$r,p1e)=>{"use strict";var bkt=$i(),_kt=(t,e)=>new bkt(t,e).patch;p1e.exports=_kt});var g1e=_((E$r,h1e)=>{"use strict";var Ekt=sh(),vkt=(t,e)=>{let r=Ekt(t,e);return r&&r.prerelease.length?r.prerelease:null};h1e.exports=vkt});var oc=_((v$r,A1e)=>{"use strict";var y1e=$i(),Skt=(t,e,r)=>new y1e(t,r).compare(new y1e(e,r));A1e.exports=Skt});var b1e=_((S$r,x1e)=>{"use strict";var Ikt=oc(),Ckt=(t,e,r)=>Ikt(e,t,r);x1e.exports=Ckt});var E1e=_((I$r,_1e)=>{"use strict";var Tkt=oc(),wkt=(t,e)=>Tkt(t,e,!0);_1e.exports=wkt});var rk=_((C$r,S1e)=>{"use strict";var v1e=$i(),Rkt=(t,e,r)=>{let n=new v1e(t,r),s=new v1e(e,r);return n.compare(s)||n.compareBuild(s)};S1e.exports=Rkt});var C1e=_((T$r,I1e)=>{"use strict";var Nkt=rk(),Okt=(t,e)=>t.sort((r,n)=>Nkt(r,n,e));I1e.exports=Okt});var w1e=_((w$r,T1e)=>{"use strict";var kkt=rk(),Pkt=(t,e)=>t.sort((r,n)=>kkt(n,r,e));T1e.exports=Pkt});var ev=_((R$r,R1e)=>{"use strict";var Dkt=oc(),Bkt=(t,e,r)=>Dkt(t,e,r)>0;R1e.exports=Bkt});var nk=_((N$r,N1e)=>{"use strict";var Lkt=oc(),Mkt=(t,e,r)=>Lkt(t,e,r)<0;N1e.exports=Mkt});var xF=_((O$r,O1e)=>{"use strict";var Wkt=oc(),$kt=(t,e,r)=>Wkt(t,e,r)===0;O1e.exports=$kt});var bF=_((k$r,k1e)=>{"use strict";var Ukt=oc(),Fkt=(t,e,r)=>Ukt(t,e,r)!==0;k1e.exports=Fkt});var sk=_((P$r,P1e)=>{"use strict";var qkt=oc(),jkt=(t,e,r)=>qkt(t,e,r)>=0;P1e.exports=jkt});var ik=_((D$r,D1e)=>{"use strict";var Qkt=oc(),Hkt=(t,e,r)=>Qkt(t,e,r)<=0;D1e.exports=Hkt});var _F=_((B$r,B1e)=>{"use strict";var Gkt=xF(),zkt=bF(),Kkt=ev(),Vkt=sk(),Ykt=nk(),Jkt=ik(),Xkt=(t,e,r,n)=>{switch(e){case"===":return typeof t=="object"&&(t=t.version),typeof r=="object"&&(r=r.version),t===r;case"!==":return typeof t=="object"&&(t=t.version),typeof r=="object"&&(r=r.version),t!==r;case"":case"=":case"==":return Gkt(t,r,n);case"!=":return zkt(t,r,n);case">":return Kkt(t,r,n);case">=":return Vkt(t,r,n);case"<":return Ykt(t,r,n);case"<=":return Jkt(t,r,n);default:throw new TypeError(`Invalid operator: ${e}`)}};B1e.exports=Xkt});var M1e=_((L$r,L1e)=>{"use strict";var Zkt=$i(),ePt=sh(),{safeRe:ak,t:ok}=UA(),tPt=(t,e)=>{if(t instanceof Zkt)return t;if(typeof t=="number"&&(t=String(t)),typeof t!="string")return null;e=e||{};let r=null;if(!e.rtl)r=t.match(e.includePrerelease?ak[ok.COERCEFULL]:ak[ok.COERCE]);else{let c=e.includePrerelease?ak[ok.COERCERTLFULL]:ak[ok.COERCERTL],u;for(;(u=c.exec(t))&&(!r||r.index+r[0].length!==t.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=e.includePrerelease&&r[5]?`-${r[5]}`:"",o=e.includePrerelease&&r[6]?`+${r[6]}`:"";return ePt(`${n}.${s}.${i}${a}${o}`,e)};L1e.exports=tPt});var $1e=_((M$r,W1e)=>{"use strict";var EF=class{constructor(){this.max=1e3,this.map=new Map}get(e){let r=this.map.get(e);if(r!==void 0)return this.map.delete(e),this.map.set(e,r),r}delete(e){return this.map.delete(e)}set(e,r){if(!this.delete(e)&&r!==void 0){if(this.map.size>=this.max){let s=this.map.keys().next().value;this.delete(s)}this.map.set(e,r)}return this}};W1e.exports=EF});var cc=_((W$r,j1e)=>{"use strict";var rPt=/\s+/g,vF=class t{constructor(e,r){if(r=sPt(r),e instanceof t)return e.loose===!!r.loose&&e.includePrerelease===!!r.includePrerelease?e:new t(e.raw,r);if(e instanceof SF)return this.raw=e.value,this.set=[[e]],this.formatted=void 0,this;if(this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease,this.raw=e.trim().replace(rPt," "),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=>!F1e(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&&dPt(s[0])){this.set=[s];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let e=0;e0&&(this.formatted+="||");let r=this.set[e];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(e){let n=((this.options.includePrerelease&&uPt)|(this.options.loose&&lPt))+":"+e,s=U1e.get(n);if(s)return s;let i=this.options.loose,a=i?da[Ui.HYPHENRANGELOOSE]:da[Ui.HYPHENRANGE];e=e.replace(a,_Pt(this.options.includePrerelease)),On("hyphen replace",e),e=e.replace(da[Ui.COMPARATORTRIM],aPt),On("comparator trim",e),e=e.replace(da[Ui.TILDETRIM],oPt),On("tilde trim",e),e=e.replace(da[Ui.CARETTRIM],cPt),On("caret trim",e);let o=e.split(" ").map(d=>fPt(d,this.options)).join(" ").split(/\s+/).map(d=>bPt(d,this.options));i&&(o=o.filter(d=>(On("loose invalid filter",d,this.options),!!d.match(da[Ui.COMPARATORLOOSE])))),On("range list",o);let c=new Map,u=o.map(d=>new SF(d,this.options));for(let d of u){if(F1e(d))return[d];c.set(d.value,d)}c.size>1&&c.has("")&&c.delete("");let l=[...c.values()];return U1e.set(n,l),l}intersects(e,r){if(!(e instanceof t))throw new TypeError("a Range is required");return this.set.some(n=>q1e(n,r)&&e.set.some(s=>q1e(s,r)&&n.every(i=>s.every(a=>i.intersects(a,r)))))}test(e){if(!e)return!1;if(typeof e=="string")try{e=new iPt(e,this.options)}catch{return!1}for(let r=0;rt.value==="<0.0.0-0",dPt=t=>t.value==="",q1e=(t,e)=>{let r=!0,n=t.slice(),s=n.pop();for(;r&&n.length;)r=n.every(i=>s.intersects(i,e)),s=n.pop();return r},fPt=(t,e)=>(t=t.replace(da[Ui.BUILD],""),On("comp",t,e),t=hPt(t,e),On("caret",t),t=pPt(t,e),On("tildes",t),t=yPt(t,e),On("xrange",t),t=xPt(t,e),On("stars",t),t),fa=t=>!t||t.toLowerCase()==="x"||t==="*",pPt=(t,e)=>t.trim().split(/\s+/).map(r=>mPt(r,e)).join(" "),mPt=(t,e)=>{let r=e.loose?da[Ui.TILDELOOSE]:da[Ui.TILDE];return t.replace(r,(n,s,i,a,o)=>{On("tilde",t,n,s,i,a,o);let c;return fa(s)?c="":fa(i)?c=`>=${s}.0.0 <${+s+1}.0.0-0`:fa(a)?c=`>=${s}.${i}.0 <${s}.${+i+1}.0-0`:o?(On("replaceTilde pr",o),c=`>=${s}.${i}.${a}-${o} <${s}.${+i+1}.0-0`):c=`>=${s}.${i}.${a} <${s}.${+i+1}.0-0`,On("tilde return",c),c})},hPt=(t,e)=>t.trim().split(/\s+/).map(r=>gPt(r,e)).join(" "),gPt=(t,e)=>{On("caret",t,e);let r=e.loose?da[Ui.CARETLOOSE]:da[Ui.CARET],n=e.includePrerelease?"-0":"";return t.replace(r,(s,i,a,o,c)=>{On("caret",t,s,i,a,o,c);let u;return fa(i)?u="":fa(a)?u=`>=${i}.0.0${n} <${+i+1}.0.0-0`:fa(o)?i==="0"?u=`>=${i}.${a}.0${n} <${i}.${+a+1}.0-0`:u=`>=${i}.${a}.0${n} <${+i+1}.0.0-0`:c?(On("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`):(On("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`),On("caret return",u),u})},yPt=(t,e)=>(On("replaceXRanges",t,e),t.split(/\s+/).map(r=>APt(r,e)).join(" ")),APt=(t,e)=>{t=t.trim();let r=e.loose?da[Ui.XRANGELOOSE]:da[Ui.XRANGE];return t.replace(r,(n,s,i,a,o,c)=>{On("xRange",t,n,s,i,a,o,c);let u=fa(i),l=u||fa(a),d=l||fa(o),f=d;return s==="="&&f&&(s=""),c=e.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`),On("xRange return",n),n})},xPt=(t,e)=>(On("replaceStars",t,e),t.trim().replace(da[Ui.STAR],"")),bPt=(t,e)=>(On("replaceGTE0",t,e),t.trim().replace(da[e.includePrerelease?Ui.GTE0PRE:Ui.GTE0],"")),_Pt=t=>(e,r,n,s,i,a,o,c,u,l,d,f)=>(fa(n)?r="":fa(s)?r=`>=${n}.0.0${t?"-0":""}`:fa(i)?r=`>=${n}.${s}.0${t?"-0":""}`:a?r=`>=${r}`:r=`>=${r}${t?"-0":""}`,fa(u)?c="":fa(l)?c=`<${+u+1}.0.0-0`:fa(d)?c=`<${u}.${+l+1}.0-0`:f?c=`<=${u}.${l}.${d}-${f}`:t?c=`<${u}.${l}.${+d+1}-0`:c=`<=${c}`,`${r} ${c}`.trim()),EPt=(t,e,r)=>{for(let n=0;n0){let s=t[n].semver;if(s.major===e.major&&s.minor===e.minor&&s.patch===e.patch)return!0}return!1}return!0}});var tv=_(($$r,V1e)=>{"use strict";var rv=Symbol("SemVer ANY"),TF=class t{static get ANY(){return rv}constructor(e,r){if(r=Q1e(r),e instanceof t){if(e.loose===!!r.loose)return e;e=e.value}e=e.trim().split(/\s+/).join(" "),CF("comparator",e,r),this.options=r,this.loose=!!r.loose,this.parse(e),this.semver===rv?this.value="":this.value=this.operator+this.semver.version,CF("comp",this)}parse(e){let r=this.options.loose?H1e[G1e.COMPARATORLOOSE]:H1e[G1e.COMPARATOR],n=e.match(r);if(!n)throw new TypeError(`Invalid comparator: ${e}`);this.operator=n[1]!==void 0?n[1]:"",this.operator==="="&&(this.operator=""),n[2]?this.semver=new z1e(n[2],this.options.loose):this.semver=rv}toString(){return this.value}test(e){if(CF("Comparator.test",e,this.options.loose),this.semver===rv||e===rv)return!0;if(typeof e=="string")try{e=new z1e(e,this.options)}catch{return!1}return IF(e,this.operator,this.semver,this.options)}intersects(e,r){if(!(e instanceof t))throw new TypeError("a Comparator is required");return this.operator===""?this.value===""?!0:new K1e(e.value,r).test(this.value):e.operator===""?e.value===""?!0:new K1e(this.value,r).test(e.semver):(r=Q1e(r),r.includePrerelease&&(this.value==="<0.0.0-0"||e.value==="<0.0.0-0")||!r.includePrerelease&&(this.value.startsWith("<0.0.0")||e.value.startsWith("<0.0.0"))?!1:!!(this.operator.startsWith(">")&&e.operator.startsWith(">")||this.operator.startsWith("<")&&e.operator.startsWith("<")||this.semver.version===e.semver.version&&this.operator.includes("=")&&e.operator.includes("=")||IF(this.semver,"<",e.semver,r)&&this.operator.startsWith(">")&&e.operator.startsWith("<")||IF(this.semver,">",e.semver,r)&&this.operator.startsWith("<")&&e.operator.startsWith(">")))}};V1e.exports=TF;var Q1e=JO(),{safeRe:H1e,t:G1e}=UA(),IF=_F(),CF=ZE(),z1e=$i(),K1e=cc()});var nv=_((U$r,Y1e)=>{"use strict";var vPt=cc(),SPt=(t,e,r)=>{try{e=new vPt(e,r)}catch{return!1}return e.test(t)};Y1e.exports=SPt});var X1e=_((F$r,J1e)=>{"use strict";var IPt=cc(),CPt=(t,e)=>new IPt(t,e).set.map(r=>r.map(n=>n.value).join(" ").trim().split(" "));J1e.exports=CPt});var e_e=_((q$r,Z1e)=>{"use strict";var TPt=$i(),wPt=cc(),RPt=(t,e,r)=>{let n=null,s=null,i=null;try{i=new wPt(e,r)}catch{return null}return t.forEach(a=>{i.test(a)&&(!n||s.compare(a)===-1)&&(n=a,s=new TPt(n,r))}),n};Z1e.exports=RPt});var r_e=_((j$r,t_e)=>{"use strict";var NPt=$i(),OPt=cc(),kPt=(t,e,r)=>{let n=null,s=null,i=null;try{i=new OPt(e,r)}catch{return null}return t.forEach(a=>{i.test(a)&&(!n||s.compare(a)===1)&&(n=a,s=new NPt(n,r))}),n};t_e.exports=kPt});var i_e=_((Q$r,s_e)=>{"use strict";var wF=$i(),PPt=cc(),n_e=ev(),DPt=(t,e)=>{t=new PPt(t,e);let r=new wF("0.0.0");if(t.test(r)||(r=new wF("0.0.0-0"),t.test(r)))return r;r=null;for(let n=0;n{let o=new wF(a.semver.version);switch(a.operator){case">":o.prerelease.length===0?o.patch++:o.prerelease.push(0),o.raw=o.format();case"":case">=":(!i||n_e(o,i))&&(i=o);break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${a.operator}`)}}),i&&(!r||n_e(r,i))&&(r=i)}return r&&t.test(r)?r:null};s_e.exports=DPt});var o_e=_((H$r,a_e)=>{"use strict";var BPt=cc(),LPt=(t,e)=>{try{return new BPt(t,e).range||"*"}catch{return null}};a_e.exports=LPt});var ck=_((G$r,d_e)=>{"use strict";var MPt=$i(),l_e=tv(),{ANY:WPt}=l_e,$Pt=cc(),UPt=nv(),c_e=ev(),u_e=nk(),FPt=ik(),qPt=sk(),jPt=(t,e,r,n)=>{t=new MPt(t,n),e=new $Pt(e,n);let s,i,a,o,c;switch(r){case">":s=c_e,i=FPt,a=u_e,o=">",c=">=";break;case"<":s=u_e,i=qPt,a=c_e,o="<",c="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(UPt(t,e,n))return!1;for(let u=0;u{p.semver===WPt&&(p=new l_e(">=0.0.0")),d=d||p,f=f||p,s(p.semver,d.semver,n)?d=p:a(p.semver,f.semver,n)&&(f=p)}),d.operator===o||d.operator===c||(!f.operator||f.operator===o)&&i(t,f.semver))return!1;if(f.operator===c&&a(t,f.semver))return!1}return!0};d_e.exports=jPt});var p_e=_((z$r,f_e)=>{"use strict";var QPt=ck(),HPt=(t,e,r)=>QPt(t,e,">",r);f_e.exports=HPt});var h_e=_((K$r,m_e)=>{"use strict";var GPt=ck(),zPt=(t,e,r)=>GPt(t,e,"<",r);m_e.exports=zPt});var A_e=_((V$r,y_e)=>{"use strict";var g_e=cc(),KPt=(t,e,r)=>(t=new g_e(t,r),e=new g_e(e,r),t.intersects(e,r));y_e.exports=KPt});var b_e=_((Y$r,x_e)=>{"use strict";var VPt=nv(),YPt=oc();x_e.exports=(t,e,r)=>{let n=[],s=null,i=null,a=t.sort((l,d)=>YPt(l,d,r));for(let l of a)VPt(l,e,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 e.raw=="string"?e.raw:String(e);return c.length{"use strict";var __e=cc(),NF=tv(),{ANY:RF}=NF,sv=nv(),OF=oc(),JPt=(t,e,r={})=>{if(t===e)return!0;t=new __e(t,r),e=new __e(e,r);let n=!1;e:for(let s of t.set){for(let i of e.set){let a=ZPt(s,i,r);if(n=n||a!==null,a)continue e}if(n)return!1}return!0},XPt=[new NF(">=0.0.0-0")],E_e=[new NF(">=0.0.0")],ZPt=(t,e,r)=>{if(t===e)return!0;if(t.length===1&&t[0].semver===RF){if(e.length===1&&e[0].semver===RF)return!0;r.includePrerelease?t=XPt:t=E_e}if(e.length===1&&e[0].semver===RF){if(r.includePrerelease)return!0;e=E_e}let n=new Set,s,i;for(let p of t)p.operator===">"||p.operator===">="?s=v_e(s,p,r):p.operator==="<"||p.operator==="<="?i=S_e(i,p,r):n.add(p.semver);if(n.size>1)return null;let a;if(s&&i){if(a=OF(s.semver,i.semver,r),a>0)return null;if(a===0&&(s.operator!==">="||i.operator!=="<="))return null}for(let p of n){if(s&&!sv(p,String(s),r)||i&&!sv(p,String(i),r))return null;for(let m of e)if(!sv(p,String(m),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 p of e){if(l=l||p.operator===">"||p.operator===">=",u=u||p.operator==="<"||p.operator==="<=",s){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=v_e(s,p,r),o===p&&o!==s)return!1}else if(s.operator===">="&&!sv(s.semver,String(p),r))return!1}if(i){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(c=S_e(i,p,r),c===p&&c!==i)return!1}else if(i.operator==="<="&&!sv(i.semver,String(p),r))return!1}if(!p.operator&&(i||s)&&a!==0)return!1}return!(s&&u&&!i&&a!==0||i&&l&&!s&&a!==0||f||d)},v_e=(t,e,r)=>{if(!t)return e;let n=OF(t.semver,e.semver,r);return n>0?t:n<0||e.operator===">"&&t.operator===">="?e:t},S_e=(t,e,r)=>{if(!t)return e;let n=OF(t.semver,e.semver,r);return n<0?t:n>0||e.operator==="<"&&t.operator==="<="?e:t};I_e.exports=JPt});var PF=_((X$r,R_e)=>{"use strict";var kF=UA(),T_e=XE(),e3t=$i(),w_e=gF(),t3t=sh(),r3t=e1e(),n3t=r1e(),s3t=i1e(),i3t=c1e(),a3t=l1e(),o3t=f1e(),c3t=m1e(),u3t=g1e(),l3t=oc(),d3t=b1e(),f3t=E1e(),p3t=rk(),m3t=C1e(),h3t=w1e(),g3t=ev(),y3t=nk(),A3t=xF(),x3t=bF(),b3t=sk(),_3t=ik(),E3t=_F(),v3t=M1e(),S3t=tv(),I3t=cc(),C3t=nv(),T3t=X1e(),w3t=e_e(),R3t=r_e(),N3t=i_e(),O3t=o_e(),k3t=ck(),P3t=p_e(),D3t=h_e(),B3t=A_e(),L3t=b_e(),M3t=C_e();R_e.exports={parse:t3t,valid:r3t,clean:n3t,inc:s3t,diff:i3t,major:a3t,minor:o3t,patch:c3t,prerelease:u3t,compare:l3t,rcompare:d3t,compareLoose:f3t,compareBuild:p3t,sort:m3t,rsort:h3t,gt:g3t,lt:y3t,eq:A3t,neq:x3t,gte:b3t,lte:_3t,cmp:E3t,coerce:v3t,Comparator:S3t,Range:I3t,satisfies:C3t,toComparators:T3t,maxSatisfying:w3t,minSatisfying:R3t,minVersion:N3t,validRange:O3t,outside:k3t,gtr:P3t,ltr:D3t,intersects:B3t,simplifyRange:L3t,subset:M3t,SemVer:e3t,re:kF.re,src:kF.src,tokens:kF.t,SEMVER_SPEC_VERSION:T_e.SEMVER_SPEC_VERSION,RELEASE_TYPES:T_e.RELEASE_TYPES,compareIdentifiers:w_e.compareIdentifiers,rcompareIdentifiers:w_e.rcompareIdentifiers}});var lk=_((Z$r,MF)=>{"use strict";var uk=Fbe(),W3t=PF(),{FSTDEP005:$3t,FSTDEP012:U3t,FSTDEP015:F3t,FSTDEP016:q3t,FSTDEP017:j3t,FSTDEP018:Q3t}=wd(),{kHasBeenDecorated:H3t,kSchemaBody:G3t,kSchemaHeaders:z3t,kSchemaParams:K3t,kSchemaQuerystring:N_e,kSchemaController:DF,kOptions:V3t,kRequestCacheValidateFns:jp,kRouteContext:ds,kPublicRouteContext:O_e,kRequestOriginalUrl:BF}=zs(),{FST_ERR_REQ_INVALID_VALIDATION_INVOCATION:Y3t}=Di(),k_e={body:G3t,headers:z3t,params:K3t,querystring:N_e,query:N_e};function LF(t,e,r,n,s,i){this.id=t,this[ds]=i,this.params=e,this.raw=r,this.query=n,this.log=s,this.body=void 0}LF.props=[];function J3t(t){if(typeof t=="function")return t;if(t===!0)return function(){return!0};if(typeof t=="number")return function(e,r){return rr.trim());return uk.compile(e)}return uk.compile(t)}function X3t(t,e){return e?Z3t(t,e):D_e(t)}function D_e(t){let e=t.props.slice();function r(n,s,i,a,o,c){this.id=n,this[ds]=c,this.params=s,this.raw=i,this.query=a,this.log=o,this.body=void 0;for(var u,l=0;lt.config},schema:{get:()=>t.schema}}),Object.freeze(s)}},routerMethod:{get(){return Q3t(),this[ds].config?.method}},routeConfig:{get(){return q3t(),this[ds][O_e]?.config}},routeSchema:{get(){return F3t(),this[ds][O_e].schema}},is404:{get(){return this[ds].config?.url===void 0}},connection:{get(){return W3t.gte(process.versions.node,"13.0.0")&&$3t(),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(t){this.additionalHeaders=t}},getValidationFunction:{value:function(t){if(typeof t=="string"){let e=k_e[t];return this[ds][e]}else if(typeof t=="object")return this[ds][jp]?.get(t)}},compileValidationSchema:{value:function(t,e=null){let{method:r,url:n}=this;if(this[ds][jp]?.has(t))return this[ds][jp].get(t);let i=(this[ds].validatorCompiler||this.server[DF].validatorCompiler||this.server[DF].setupValidator(this.server[V3t])||this.server[DF].validatorCompiler)({schema:t,method:r,url:n,httpPart:e});return this[ds][jp]==null&&(this[ds][jp]=new WeakMap),this[ds][jp].set(t,i),i}},validateInput:{value:function(t,e,r){r=typeof e=="string"?e:r;let n=r!=null&&typeof r=="string"&&k_e[r],s;if(n&&(s=this[ds][n]),s==null&&(e==null||typeof e!="object"||Array.isArray(e)))throw new Y3t(r);return s==null&&(this[ds][jp]?.has(e)?s=this[ds][jp].get(e):s=this.compileValidationSchema(e,r)),s(t)}}});MF.exports=LF;MF.exports.buildRequest=X3t});var dk=_((eUr,B_e)=>{"use strict";var{kFourOhFourContext:eDt,kReplySerializerDefault:tDt,kSchemaErrorFormatter:rDt,kErrorHandler:nDt,kChildLoggerFactory:sDt,kOptions:iDt,kReply:aDt,kRequest:oDt,kBodyLimit:cDt,kLogLevel:uDt,kContentTypeParser:lDt,kRouteByFastify:dDt,kRequestCacheValidateFns:fDt,kReplyCacheSerializeFns:pDt,kPublicRouteContext:mDt}=zs();function hDt({schema:t,handler:e,config:r,requestIdLogLabel:n,childLoggerFactory:s,errorHandler:i,bodyLimit:a,logLevel:o,logSerializers:c,attachValidation:u,validatorCompiler:l,serializerCompiler:d,replySerializer:f,schemaErrorFormatter:p,exposeHeadRoute:m,prefixTrailingSlash:h,server:y,isFastify:g}){this.schema=t,this.handler=e,this.Reply=y[aDt],this.Request=y[oDt],this.contentTypeParser=y[lDt],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||y[nDt],this.requestIdLogLabel=n||y[iDt].requestIdLogLabel,this.childLoggerFactory=s||y[sDt],this._middie=null,this._parserOptions={limit:a||y[cDt]},this.exposeHeadRoute=m,this.prefixTrailingSlash=h,this.logLevel=o||y[uDt],this.logSerializers=c,this[eDt]=null,this.attachValidation=u,this[tDt]=f,this.schemaErrorFormatter=p||y[rDt]||yDt,this[dDt]=g,this[fDt]=null,this[pDt]=null,this.validatorCompiler=l||null,this.serializerCompiler=d||null,this[mDt]=gDt(this),this.server=y}function gDt(t){return Object.create(null,{schema:{enumerable:!0,get(){return t.schema}},config:{enumerable:!0,get(){return t.config}}})}function yDt(t,e){let r="",n=", ";for(var s=0;s!==t.length;++s){let i=t[s];r+=e+(i.instancePath||"")+" "+i.message+n}return new Error(r.slice(0,-n.length))}B_e.exports=hDt});var WF=_((tUr,L_e)=>{"use strict";L_e.exports={supportedMethods:["DELETE","GET","HEAD","PATCH","POST","PUT","OPTIONS","PROPFIND","PROPPATCH","MKCOL","COPY","MOVE","LOCK","UNLOCK","TRACE","SEARCH"]}});var jF=_((rUr,U_e)=>{"use strict";var{kReply:$F,kRequest:UF,kState:ADt,kHasBeenDecorated:xDt}=zs(),{FST_ERR_DEC_ALREADY_PRESENT:M_e,FST_ERR_DEC_MISSING_DEPENDENCY:bDt,FST_ERR_DEC_AFTER_START:_Dt,FST_ERR_DEC_DEPENDENCY_INVALID_TYPE:EDt}=Di(),{FSTDEP006:vDt}=wd();function SDt(t,e,r,n){if(Object.prototype.hasOwnProperty.call(t,e))throw new M_e(e);FF(t,e,n),r&&(typeof r.getter=="function"||typeof r.setter=="function")?Object.defineProperty(t,e,{get:r.getter,set:r.setter}):t[e]=r}function W_e(t,e,r,n){let s=t.prototype;if(Object.prototype.hasOwnProperty.call(s,e)||pk(t,e))throw new M_e(e);t[xDt]=!0,FF(t,e,n),r&&(typeof r.getter=="function"||typeof r.setter=="function")?Object.defineProperty(s,e,{get:r.getter,set:r.setter}):typeof r=="function"?s[e]=r:t.props.push({key:e,value:r})}function $_e(t,e){typeof e=="object"&&e&&!(typeof e.getter=="function"||typeof e.setter=="function")&&vDt(t)}function IDt(t,e,r){return qF(this,t),SDt(this,t,e,r),this}function fk(t,e){return e?e in t||t.prototype&&e in t.prototype||pk(t,e):t in this}function pk(t,e){return t.props?t.props.find(({key:r})=>r===e):!1}function CDt(t){return t&&pk(this[UF],t)?!0:fk(this[UF].prototype,t)}function TDt(t){return t&&pk(this[$F],t)?!0:fk(this[$F].prototype,t)}function FF(t,e,r){if(r!=null){if(!Array.isArray(r))throw new EDt(e);for(var n=0;n!==r.length;++n)if(!fk(t,r[n]))throw new bDt(r[n])}}function wDt(t,e,r){return qF(this,t),$_e(t,e),W_e(this[$F],t,e,r),this}function RDt(t,e,r){return qF(this,t),$_e(t,e),W_e(this[UF],t,e,r),this}function qF(t,e){if(t[ADt].started)throw new _Dt(e)}U_e.exports={add:IDt,exist:fk,existRequest:CDt,existReply:TDt,dependencies:FF,decorateReply:wDt,decorateRequest:RDt}});var q_e=_(ol=>{"use strict";var QF=class{constructor(e=1e3,r=0){if(isNaN(e)||e<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=e,this.ttl=r}get size(){return this.items.size}clear(){this.items=new Map,this.first=null,this.last=null}delete(e){if(this.items.has(e)){let r=this.items.get(e);this.items.delete(e),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(e){for(var r=0;r0){let e=this.first;this.items.delete(e.key),this.size===0?(this.first=null,this.last=null):(this.first=e.next,this.first.prev=null)}}expiresAt(e){if(this.items.has(e))return this.items.get(e).expiry}get(e){if(this.items.has(e)){let r=this.items.get(e);if(this.ttl>0&&r.expiry<=Date.now()){this.delete(e);return}return r.value}}getMany(e){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:e,prev:this.last,next:null,value:r};this.items.set(e,n),this.size===1?this.first=n:this.last.next=n,this.last=n}},HF=class{constructor(e=1e3,r=0){if(isNaN(e)||e<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=e,this.ttl=r}get size(){return this.items.size}bumpLru(e){if(this.last===e)return;let r=this.last,n=e.next,s=e.prev;this.first===e&&(this.first=n),e.next=null,e.prev=r,r.next=e,s!==null&&(s.next=n),n!==null&&(n.prev=s),this.last=e}clear(){this.items=new Map,this.first=null,this.last=null}delete(e){if(this.items.has(e)){let r=this.items.get(e);this.items.delete(e),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(e){for(var r=0;r0){let e=this.first;this.items.delete(e.key),this.size===0?(this.first=null,this.last=null):(this.first=e.next,this.first.prev=null)}}expiresAt(e){if(this.items.has(e))return this.items.get(e).expiry}get(e){if(this.items.has(e)){let r=this.items.get(e);if(this.ttl>0&&r.expiry<=Date.now()){this.delete(e);return}return this.bumpLru(r),r.value}}getMany(e){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:e,prev:this.last,next:null,value:r};this.items.set(e,n),this.size===1?this.first=n:this.last.next=n,this.last=n}},iv=class{constructor(e=1e3,r=0){if(isNaN(e)||e<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=e,this.ttl=r}bumpLru(e){if(this.last===e)return;let r=this.last,n=e.next,s=e.prev;this.first===e&&(this.first=n),e.next=null,e.prev=r,r.next=e,s!==null&&(s.next=n),n!==null&&(n.prev=s),this.last=e}clear(){this.items=Object.create(null),this.first=null,this.last=null,this.size=0}delete(e){if(Object.prototype.hasOwnProperty.call(this.items,e)){let r=this.items[e];delete this.items[e],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(e){for(var r=0;r0){let e=this.first;delete this.items[e.key],--this.size===0?(this.first=null,this.last=null):(this.first=e.next,this.first.prev=null)}}expiresAt(e){if(Object.prototype.hasOwnProperty.call(this.items,e))return this.items[e].expiry}get(e){if(Object.prototype.hasOwnProperty.call(this.items,e)){let r=this.items[e];if(this.ttl>0&&r.expiry<=Date.now()){this.delete(e);return}return this.bumpLru(r),r.value}}getMany(e){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:e,prev:this.last,next:null,value:r};this.items[e]=n,++this.size===1?this.first=n:this.last.next=n,this.last=n}},mk=class{constructor(){this.records={}}initForCache(e,r){this.records[e]={[r]:{cacheSize:0,hits:0,falsyHits:0,emptyHits:0,misses:0,expirations:0,evictions:0,invalidateOne:0,invalidateAll:0,sets:0}}}resetForCache(e){for(let r of Object.keys(this.records[e]))this.records[e][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 F_e(t){return`${t.getFullYear()}-${(t.getMonth()+1).toString().padStart(2,"0")}-${t.getDate().toString().padStart(2,"0")}`}var GF=class{constructor(e,r,n){this.cacheId=e,this.statisticTtlInHours=r,this.collectionStart=new Date,this.currentTimeStamp=F_e(this.collectionStart),this.records=n||new mk,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(e){this.archiveIfNeeded(),this.currentRecord.cacheSize=e}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=F_e(this.collectionStart),this.records.initForCache(this.cacheId,this.currentTimeStamp))}},hk=class extends iv{constructor(e,r,n,s,i){if(super(e||1e3,r||0),!n)throw new Error("Cache id is mandatory");this.hitStatistics=new GF(n,i!==void 0?i:24,s)}getStatistics(){return this.hitStatistics.getStatistics()}set(e,r){super.set(e,r),this.hitStatistics.addSet(),this.hitStatistics.setCacheSize(this.size)}evict(){super.evict(),this.hitStatistics.addEviction(),this.hitStatistics.setCacheSize(this.size)}delete(e,r=!1){super.delete(e),r||this.hitStatistics.addInvalidateOne(),this.hitStatistics.setCacheSize(this.size)}clear(){super.clear(),this.hitStatistics.addInvalidateAll(),this.hitStatistics.setCacheSize(this.size)}get(e){if(Object.prototype.hasOwnProperty.call(this.items,e)){let r=this.items[e];if(this.ttl>0&&r.expiry<=Date.now()){this.delete(e,!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()}},gk=class{constructor(e=1e3,r=0){if(isNaN(e)||e<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=e,this.ttl=r}clear(){this.items=Object.create(null),this.first=null,this.last=null,this.size=0}delete(e){if(Object.prototype.hasOwnProperty.call(this.items,e)){let r=this.items[e];delete this.items[e],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(e){for(var r=0;r0){let e=this.first;delete this.items[e.key],--this.size===0?(this.first=null,this.last=null):(this.first=e.next,this.first.prev=null)}}expiresAt(e){if(Object.prototype.hasOwnProperty.call(this.items,e))return this.items[e].expiry}get(e){if(Object.prototype.hasOwnProperty.call(this.items,e)){let r=this.items[e];if(this.ttl>0&&r.expiry<=Date.now()){this.delete(e);return}return r.value}}getMany(e){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:e,prev:this.last,next:null,value:r};this.items[e]=n,++this.size===1?this.first=n:this.last.next=n,this.last=n}};ol.Fifo=gk;ol.FifoMap=QF;ol.FifoObject=gk;ol.HitStatisticsRecord=mk;ol.Lru=iv;ol.LruHitStatistics=hk;ol.LruMap=HF;ol.LruObject=iv;ol.LruObjectHitStatistics=hk});var G_e=_((sUr,av)=>{"use strict";var xk=function(){};xk.prototype=Object.create(null);var yk=/; *([!#$%&'*+.^\w`|~-]+)=("(?:[\v\u0020\u0021\u0023-\u005b\u005d-\u007e\u0080-\u00ff]|\\[\v\u0020-\u00ff])*"|[!#$%&'*+.^\w`|~-]+) */gu,Ak=/\\([\v\u0020-\u00ff])/gu,j_e=/^[!#$%&'*+.^\w|~-]+\/[!#$%&'*+.^\w|~-]+$/u,ih={type:"",parameters:new xk};Object.freeze(ih.parameters);Object.freeze(ih);function Q_e(t){if(typeof t!="string")throw new TypeError("argument header is required and must be a string");let e=t.indexOf(";"),r=e!==-1?t.slice(0,e).trim():t.trim();if(j_e.test(r)===!1)throw new TypeError("invalid media type");let n={type:r.toLowerCase(),parameters:new xk};if(e===-1)return n;let s,i,a;for(yk.lastIndex=e;i=yk.exec(t);){if(i.index!==e)throw new TypeError("invalid parameter format");e+=i[0].length,s=i[1].toLowerCase(),a=i[2],a[0]==='"'&&(a=a.slice(1,a.length-1),Ak.test(a)&&(a=a.replace(Ak,"$1"))),n.parameters[s]=a}if(e!==t.length)throw new TypeError("invalid parameter format");return n}function H_e(t){if(typeof t!="string")return ih;let e=t.indexOf(";"),r=e!==-1?t.slice(0,e).trim():t.trim();if(j_e.test(r)===!1)return ih;let n={type:r.toLowerCase(),parameters:new xk};if(e===-1)return n;let s,i,a;for(yk.lastIndex=e;i=yk.exec(t);){if(i.index!==e)return ih;e+=i[0].length,s=i[1].toLowerCase(),a=i[2],a[0]==='"'&&(a=a.slice(1,a.length-1),Ak.test(a)&&(a=a.replace(Ak,"$1"))),n.parameters[s]=a}return e!==t.length?ih:n}av.exports.default={parse:Q_e,safeParse:H_e};av.exports.parse=Q_e;av.exports.safeParse=H_e;av.exports.defaultContentType=ih});var J_e=_((iUr,FA)=>{"use strict";var NDt=typeof Buffer<"u",z_e=/"(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])"\s*:/,K_e=/"(?: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 V_e(t,e,r){r==null&&e!==null&&typeof e=="object"&&(r=e,e=void 0),NDt&&Buffer.isBuffer(t)&&(t=t.toString()),t&&t.charCodeAt(0)===65279&&(t=t.slice(1));let n=JSON.parse(t,e);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(z_e.test(t)===!1&&K_e.test(t)===!1)return n}else if(s!=="ignore"&&i==="ignore"){if(z_e.test(t)===!1)return n}else if(K_e.test(t)===!1)return n;return Y_e(n,{protoAction:s,constructorAction:i,safe:r&&r.safe})}function Y_e(t,{protoAction:e="error",constructorAction:r="error",safe:n}={}){let s=[t];for(;s.length;){let i=s;s=[];for(let a of i){if(e!=="ignore"&&Object.prototype.hasOwnProperty.call(a,"__proto__")){if(n===!0)return null;if(e==="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 t}function zF(t,e,r){let n=Error.stackTraceLimit;Error.stackTraceLimit=0;try{return V_e(t,e,r)}finally{Error.stackTraceLimit=n}}function ODt(t,e){let r=Error.stackTraceLimit;Error.stackTraceLimit=0;try{return V_e(t,e,{safe:!0})}catch{return null}finally{Error.stackTraceLimit=r}}FA.exports=zF;FA.exports.default=zF;FA.exports.parse=zF;FA.exports.safeParse=ODt;FA.exports.scan=Y_e});var XF=_((aUr,cv)=>{"use strict";var{AsyncResource:kDt}=require("node:async_hooks"),{Fifo:Z_e}=q_e(),{safeParse:eEe,defaultContentType:PDt}=G_e(),DDt=J_e(),{kDefaultJsonParse:ov,kContentTypeParser:qA,kBodyLimit:BDt,kRequestPayloadStream:tEe,kState:VF,kTestInternals:LDt,kReplyIsError:rEe,kRouteContext:MDt}=zs(),{FST_ERR_CTP_INVALID_TYPE:nEe,FST_ERR_CTP_EMPTY_TYPE:WDt,FST_ERR_CTP_ALREADY_PRESENT:$Dt,FST_ERR_CTP_INVALID_HANDLER:UDt,FST_ERR_CTP_INVALID_PARSE_TYPE:FDt,FST_ERR_CTP_BODY_TOO_LARGE:X_e,FST_ERR_CTP_INVALID_MEDIA_TYPE:qDt,FST_ERR_CTP_INVALID_CONTENT_LENGTH:jDt,FST_ERR_CTP_EMPTY_JSON_BODY:QDt,FST_ERR_CTP_INSTANCE_ALREADY_STARTED:YF}=Di();function Md(t,e,r){this[ov]=iEe(e,r),this.customParsers=new Map,this.customParsers.set("application/json",new KF(!0,!1,t,this[ov])),this.customParsers.set("text/plain",new KF(!0,!1,t,JF)),this.parserList=[new bk("application/json"),new bk("text/plain")],this.parserRegExpList=[],this.cache=new Z_e(100)}Md.prototype.add=function(t,e,r){let n=typeof t=="string";if(!n&&!(t instanceof RegExp))throw new nEe;if(n&&t.length===0)throw new WDt;if(typeof r!="function")throw new UDt;if(this.existingParser(t))throw new $Dt(t);if(e.parseAs!==void 0&&e.parseAs!=="string"&&e.parseAs!=="buffer")throw new FDt(e.parseAs);let s=new KF(e.parseAs==="string",e.parseAs==="buffer",e.bodyLimit,r);n&&t==="*"?this.customParsers.set("",s):(n?this.parserList.unshift(new bk(t)):(t.isEssence=t.source.indexOf(";")===-1,this.parserRegExpList.unshift(t)),this.customParsers.set(t.toString(),s))};Md.prototype.hasParser=function(t){return this.customParsers.has(typeof t=="string"?t:t.toString())};Md.prototype.existingParser=function(t){return t==="application/json"&&this.customParsers.has(t)?this.customParsers.get(t).fn!==this[ov]:t==="text/plain"&&this.customParsers.has(t)?this.customParsers.get(t).fn!==JF:this.hasParser(t)};Md.prototype.getParser=function(t){if(this.hasParser(t))return this.customParsers.get(t);let e=this.cache.get(t);if(e!==void 0)return e;let r=eEe(t);if(r===PDt)return this.customParsers.get("");for(var n=0;n!==this.parserList.length;++n){let i=this.parserList[n];if(YDt(r,i)){let a=this.customParsers.get(i.name);return this.cache.set(t,a),a}}for(var s=0;s!==this.parserRegExpList.length;++s){let i=this.parserRegExpList[s];if(JDt(t,r.type,i)){let a=this.customParsers.get(i.toString());return this.cache.set(t,a),a}}return this.customParsers.get("")};Md.prototype.removeAll=function(){this.customParsers=new Map,this.parserRegExpList=[],this.parserList=[],this.cache=new Z_e(100)};Md.prototype.remove=function(t){if(!(typeof t=="string"||t instanceof RegExp))throw new nEe;let e=this.customParsers.delete(t.toString()),r=typeof t=="string"?this.parserList:this.parserRegExpList,n=r.findIndex(s=>s.toString()===t.toString());return n>-1&&r.splice(n,1),e||n>-1};Md.prototype.run=function(t,e,r,n){let s=this.getParser(t);if(s===void 0){r.is404?e(r,n):n.send(new qDt(t||void 0));return}let i=new kDt("content-type-parser:run",r);if(s.asString===!0||s.asBuffer===!0)sEe(r,n,n[MDt]._parserOptions,s,a);else{let o=s.fn(r,r[tEe],a);o&&typeof o.then=="function"&&o.then(c=>a(null,c),a)}function a(o,c){i.runInAsyncScope(()=>{i.emitDestroy(),o?(n[rEe]=!0,n.send(o)):(r.body=c,e(r,n))})}};function sEe(t,e,r,n,s){let i=n.asString,a=r.limit===null?n.bodyLimit:r.limit,o=t.headers["content-length"]===void 0?NaN:Number(t.headers["content-length"]);if(o>a){e.header("connection","close"),e.send(new X_e);return}let c=0,u=i===!0?"":[],l=t[tEe]||t.raw;i===!0&&l.setEncoding("utf8"),l.on("data",d),l.on("end",f),l.on("error",f),l.resume();function d(p){c+=p.length;let{receivedEncodedLength:m=0}=l;if(c>a||m>a){l.removeListener("data",d),l.removeListener("end",f),l.removeListener("error",f),e.send(new X_e);return}i===!0?u+=p:u.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),e[rEe]=!0,e.code(p.statusCode).send(p);return}if(i===!0&&(c=Buffer.byteLength(u)),!Number.isNaN(o)&&(l.receivedEncodedLength||c)!==o){e.header("connection","close"),e.send(new jDt);return}i===!1&&(u=Buffer.concat(u));let m=n.fn(t,u,s);m&&typeof m.then=="function"&&m.then(h=>s(null,h),s)}}function iEe(t,e){return r;function r(n,s,i){if(s===""||s==null||Buffer.isBuffer(s)&&s.length===0)return i(new QDt,void 0);let a;try{a=DDt.parse(s,{protoAction:t,constructorAction:e})}catch(o){return o.statusCode=400,i(o,void 0)}i(null,a)}}function JF(t,e,r){r(null,e)}function KF(t,e,r,n){this.asString=t,this.asBuffer=e,this.bodyLimit=r,this.fn=n}function HDt(t){let e=new Md;return e[ov]=t[ov],e.customParsers=new Map(t.customParsers.entries()),e.parserList=t.parserList.slice(),e.parserRegExpList=t.parserRegExpList.slice(),e}function GDt(t,e,r){if(this[VF].started)throw new YF("addContentTypeParser");return typeof e=="function"&&(r=e,e={}),e||(e={}),e.bodyLimit||(e.bodyLimit=this[BDt]),Array.isArray(t)?t.forEach(n=>this[qA].add(n,e,r)):this[qA].add(t,e,r),this}function zDt(t){return this[qA].hasParser(t)}function KDt(t){if(this[VF].started)throw new YF("removeContentTypeParser");if(Array.isArray(t))for(let e of t)this[qA].remove(e);else this[qA].remove(t)}function VDt(){if(this[VF].started)throw new YF("removeAllContentTypeParsers");this[qA].removeAll()}function YDt(t,e){if(e.isEssence)return t.type.indexOf(e)!==-1;if(t.type.indexOf(e.type)===-1)return!1;for(let r of e.parameterKeys)if(!(r in t.parameters)||t.parameters[r]!==e.parameters[r])return!1;return!0}function JDt(t,e,r){return r.isEssence?r.test(e):r.test(t)}function bk(t){this.name=t;let e=eEe(t);if(this.isEssence=t.indexOf(";")===-1,this.isEssence===!1&&e.type===""){let r=t.split(";",1)[0];this.type=r===""?t:r}else this.type=e.type;this.parameters=e.parameters,this.parameterKeys=Object.keys(e.parameters)}bk.prototype.toString=function(){return this.name};cv.exports=Md;cv.exports.helpers={buildContentTypeParser:HDt,addContentTypeParser:GDt,hasContentTypeParser:zDt,removeContentTypeParser:KDt,removeAllContentTypeParsers:VDt};cv.exports.defaultParsers={getDefaultJsonParser:iEe,defaultTextParser:JF};cv.exports[LDt]={rawBody:sEe}});var uEe=_((oUr,cEe)=>{"use strict";var aEe=sc(),XDt=Symbol.for("json-schema-ref"),ZF=class{#e;#t;#r;#n;#a;constructor(e={}){this.#e={},this.#t={},this.#r=e.insertRefSymbol??!1,this.#n=e.allowEqualDuplicates??!0,this.#a=e.cloneSchemaWithoutRefs??!1}addSchema(e,r){e.$id!==void 0&&e.$id.charAt(0)!=="#"?r=e.$id:this.#l(e,r),this.#s(e,r)}getSchema(e,r="#"){let n=this.#e[e];if(n===void 0)throw new Error(`Cannot resolve ref "${e}${r}". Schema with id "${e}" is not found.`);return n.anchors[r]!==void 0?n.anchors[r]:oEe(n.schema,r)}hasSchema(e){return this.#e[e]!==void 0}getSchemaRefs(e){let r=this.#e[e];if(r===void 0)throw new Error(`Schema with id "${e}" is not found.`);return r.refs}getSchemaDependencies(e,r={}){let n=this.#e[e];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(e){if(this.#t[e]!==void 0)return;let r=this.#e[e];if(r===void 0)throw new Error(`Schema with id "${e}" is not found.`);!this.#a&&r.refs.length===0&&(this.#t[e]={schema:r.schema,anchors:r.anchors});let n=[];this.#i(r.schema,e,n);let s=this.getSchemaDependencies(e);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(e,r="#"){let n=this.#t[e];return n===void 0&&(this.derefSchema(e),n=this.#t[e]),n.anchors[r]!==void 0?n.anchors[r]:oEe(n.schema,r)}#o(e,r){let n=e.indexOf("#");return n===-1?{refSchemaId:e,refJsonPointer:"#"}:n===0?{refSchemaId:r,refJsonPointer:e}:{refSchemaId:e.slice(0,n),refJsonPointer:e.slice(n)}}#s(e,r){let n=e.$id;n!==void 0&&typeof n=="string"&&(n.charAt(0)==="#"?this.#h(e,r,n):(this.#l(e,n),r=n));let s=e.$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 e)typeof e[i]=="object"&&e[i]!==null&&this.#s(e[i],r)}#i(e,r,n=[]){let s=Array.isArray(e)?[...e]:{...e},i=s.$id;i!==void 0&&typeof i=="string"&&(i.charAt(0)==="#"?this.#d(s,r,i):(this.#p(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(e,r){let{sourceSchema:n,targetSchema:s}=e;if(n.$ref){if(this.#r&&(n[XDt]=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(aEe(n[i],s[i]))continue;throw new Error(`Cannot resolve ref "${e.ref}". Property "${i}" is already exist in schema "${e.sourceSchemaId}".`)}n[i]=s[i]}e.isResolved=!0}}#l(e,r){let n=this.#e[r];if(n!==void 0){if(this.#n&&aEe(e,n.schema))return;throw new Error(`There is already another schema with id "${r}".`)}this.#e[r]={schema:e,anchors:{},refs:[]}}#h(e,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]=e}#p(e,r){this.#t[r]===void 0&&(this.#t[r]={schema:e,anchors:{}})}#d(e,r,n){let{anchors:s}=this.#t[r];s[n]=e}};function oEe(t,e){let r=e.split("/"),n=t;for(let s of r)if(!(s===""||s==="#")){if(typeof n!="object"||n===null)return null;n=n[s]}return n??null}cEe.exports={RefResolver:ZF}});var dEe=_((cUr,lEe)=>{"use strict";var e7=class t{constructor(e,r,n="#"){this.schema=e,this.schemaId=r,this.jsonPointer=n}getPropertyLocation(e){return new t(this.schema[e],this.schemaId,this.jsonPointer+"/"+e)}getSchemaRef(){return this.schemaId+this.jsonPointer}};lEe.exports=e7});var gEe=_((uUr,r7)=>{"use strict";r7.exports=Le;r7.exports.default=Le;var ZDt={$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},fEe={enum:["array","boolean","integer","null","number","object","string"]},pEe=/^(?:[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,e4t=$O().fullFormats.uri,mEe=$O().fullFormats.regex;function uc(t,{instancePath:e="",parentData:r,parentDataProperty:n,rootData:s=t}={}){let i=null,a=0,o=a;return typeof t=="number"&&!(t%1)&&!isNaN(t)&&isFinite(t)?a===o&&typeof t=="number"&&isFinite(t)&&(t<0||isNaN(t))?(uc.errors=[{instancePath:e,schemaPath:"#/definitions/nonNegativeInteger/minimum",keyword:"minimum",params:{comparison:">=",limit:0},message:"must be >= 0"}],!1):(uc.errors=i,a===0):(uc.errors=[{instancePath:e,schemaPath:"#/definitions/nonNegativeInteger/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1)}var t7={validate:Le};function pa(t,{instancePath:e="",parentData:r,parentDataProperty:n,rootData:s=t}={}){let i=null,a=0;if(a===0)if(Array.isArray(t)){if(t.length<1)return pa.errors=[{instancePath:e,schemaPath:"#/minItems",keyword:"minItems",params:{limit:1},message:"must NOT have fewer than 1 items"}],!1;{var o=!0;let c=t.length;for(let u=0;u",limit:0},message:"must be > 0"}],!1}else return Le.errors=[{instancePath:e+"/multipleOf",schemaPath:"#/properties/multipleOf/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var o=A===a}else var o=!0;if(o){if(t.maximum!==void 0){let x=t.maximum,A=a;if(!(typeof x=="number"&&isFinite(x)))return Le.errors=[{instancePath:e+"/maximum",schemaPath:"#/properties/maximum/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var o=A===a}else var o=!0;if(o){if(t.exclusiveMaximum!==void 0){let x=t.exclusiveMaximum,A=a;if(!(typeof x=="number"&&isFinite(x)))return Le.errors=[{instancePath:e+"/exclusiveMaximum",schemaPath:"#/properties/exclusiveMaximum/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var o=A===a}else var o=!0;if(o){if(t.minimum!==void 0){let x=t.minimum,A=a;if(!(typeof x=="number"&&isFinite(x)))return Le.errors=[{instancePath:e+"/minimum",schemaPath:"#/properties/minimum/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var o=A===a}else var o=!0;if(o){if(t.exclusiveMinimum!==void 0){let x=t.exclusiveMinimum,A=a;if(!(typeof x=="number"&&isFinite(x)))return Le.errors=[{instancePath:e+"/exclusiveMinimum",schemaPath:"#/properties/exclusiveMinimum/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var o=A===a}else var o=!0;if(o){if(t.maxLength!==void 0){let x=t.maxLength,A=a,S=a;if(!(typeof x=="number"&&!(x%1)&&!isNaN(x)&&isFinite(x)))return Le.errors=[{instancePath:e+"/maxLength",schemaPath:"#/definitions/nonNegativeInteger/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;if(a===S&&typeof x=="number"&&isFinite(x)&&(x<0||isNaN(x)))return Le.errors=[{instancePath:e+"/maxLength",schemaPath:"#/definitions/nonNegativeInteger/minimum",keyword:"minimum",params:{comparison:">=",limit:0},message:"must be >= 0"}],!1;var o=A===a}else var o=!0;if(o){if(t.minLength!==void 0){let x=a;uc(t.minLength,{instancePath:e+"/minLength",parentData:t,parentDataProperty:"minLength",rootData:s})||(i=i===null?uc.errors:i.concat(uc.errors),a=i.length);var o=x===a}else var o=!0;if(o){if(t.pattern!==void 0){let x=t.pattern,A=a;if(a===A&&a===A)if(typeof x=="string"){if(!mEe(x))return Le.errors=[{instancePath:e+"/pattern",schemaPath:"#/properties/pattern/format",keyword:"format",params:{format:"regex"},message:'must match format "regex"'}],!1}else return Le.errors=[{instancePath:e+"/pattern",schemaPath:"#/properties/pattern/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var o=A===a}else var o=!0;if(o){if(t.additionalItems!==void 0){let x=a;Le(t.additionalItems,{instancePath:e+"/additionalItems",parentData:t,parentDataProperty:"additionalItems",rootData:s})||(i=i===null?Le.errors:i.concat(Le.errors),a=i.length);var o=x===a}else var o=!0;if(o){if(t.items!==void 0){let x=t.items,A=a,S=a,I=!1,R=a;Le(x,{instancePath:e+"/items",parentData:t,parentDataProperty:"items",rootData:s})||(i=i===null?Le.errors:i.concat(Le.errors),a=i.length);var c=R===a;if(I=I||c,!I){let N=a;pa(x,{instancePath:e+"/items",parentData:t,parentDataProperty:"items",rootData:s})||(i=i===null?pa.errors:i.concat(pa.errors),a=i.length);var c=N===a;I=I||c}if(I)a=S,i!==null&&(S?i.length=S:i=null);else{let N={instancePath:e+"/items",schemaPath:"#/properties/items/anyOf",keyword:"anyOf",params:{},message:"must match a schema in anyOf"};return i===null?i=[N]:i.push(N),a++,Le.errors=i,!1}var o=A===a}else var o=!0;if(o){if(t.maxItems!==void 0){let x=t.maxItems,A=a,S=a;if(!(typeof x=="number"&&!(x%1)&&!isNaN(x)&&isFinite(x)))return Le.errors=[{instancePath:e+"/maxItems",schemaPath:"#/definitions/nonNegativeInteger/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;if(a===S&&typeof x=="number"&&isFinite(x)&&(x<0||isNaN(x)))return Le.errors=[{instancePath:e+"/maxItems",schemaPath:"#/definitions/nonNegativeInteger/minimum",keyword:"minimum",params:{comparison:">=",limit:0},message:"must be >= 0"}],!1;var o=A===a}else var o=!0;if(o){if(t.minItems!==void 0){let x=a;uc(t.minItems,{instancePath:e+"/minItems",parentData:t,parentDataProperty:"minItems",rootData:s})||(i=i===null?uc.errors:i.concat(uc.errors),a=i.length);var o=x===a}else var o=!0;if(o){if(t.uniqueItems!==void 0){let x=a;if(typeof t.uniqueItems!="boolean")return Le.errors=[{instancePath:e+"/uniqueItems",schemaPath:"#/properties/uniqueItems/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;var o=x===a}else var o=!0;if(o){if(t.contains!==void 0){let x=a;Le(t.contains,{instancePath:e+"/contains",parentData:t,parentDataProperty:"contains",rootData:s})||(i=i===null?Le.errors:i.concat(Le.errors),a=i.length);var o=x===a}else var o=!0;if(o){if(t.maxProperties!==void 0){let x=t.maxProperties,A=a,S=a;if(!(typeof x=="number"&&!(x%1)&&!isNaN(x)&&isFinite(x)))return Le.errors=[{instancePath:e+"/maxProperties",schemaPath:"#/definitions/nonNegativeInteger/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;if(a===S&&typeof x=="number"&&isFinite(x)&&(x<0||isNaN(x)))return Le.errors=[{instancePath:e+"/maxProperties",schemaPath:"#/definitions/nonNegativeInteger/minimum",keyword:"minimum",params:{comparison:">=",limit:0},message:"must be >= 0"}],!1;var o=A===a}else var o=!0;if(o){if(t.minProperties!==void 0){let x=a;uc(t.minProperties,{instancePath:e+"/minProperties",parentData:t,parentDataProperty:"minProperties",rootData:s})||(i=i===null?uc.errors:i.concat(uc.errors),a=i.length);var o=x===a}else var o=!0;if(o){if(t.required!==void 0){let x=t.required,A=a;if(a===a)if(Array.isArray(x)){var u=!0;let R=x.length;for(let w=0;w1){let k={};for(;w--;){let B=x[w];if(typeof B=="string"){if(typeof k[B]=="number"){return N=k[B],Le.errors=[{instancePath:e+"/required",schemaPath:"#/definitions/stringArray/uniqueItems",keyword:"uniqueItems",params:{i:w,j:N},message:"must NOT have duplicate items (items ## "+N+" and "+w+" are identical)"}],!1;break}k[B]=w}}}}}else return Le.errors=[{instancePath:e+"/required",schemaPath:"#/definitions/stringArray/type",keyword:"type",params:{type:"array"},message:"must be array"}],!1;var o=A===a}else var o=!0;if(o){if(t.additionalProperties!==void 0){let x=a;Le(t.additionalProperties,{instancePath:e+"/additionalProperties",parentData:t,parentDataProperty:"additionalProperties",rootData:s})||(i=i===null?Le.errors:i.concat(Le.errors),a=i.length);var o=x===a}else var o=!0;if(o){if(t.definitions!==void 0){let x=t.definitions,A=a;if(a===A)if(x&&typeof x=="object"&&!Array.isArray(x))for(let I in x){let R=a;Le(x[I],{instancePath:e+"/definitions/"+I.replace(/~/g,"~0").replace(/\//g,"~1"),parentData:x,parentDataProperty:I,rootData:s})||(i=i===null?Le.errors:i.concat(Le.errors),a=i.length);var l=R===a;if(!l)break}else return Le.errors=[{instancePath:e+"/definitions",schemaPath:"#/properties/definitions/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=A===a}else var o=!0;if(o){if(t.properties!==void 0){let x=t.properties,A=a;if(a===A)if(x&&typeof x=="object"&&!Array.isArray(x))for(let I in x){let R=a;Le(x[I],{instancePath:e+"/properties/"+I.replace(/~/g,"~0").replace(/\//g,"~1"),parentData:x,parentDataProperty:I,rootData:s})||(i=i===null?Le.errors:i.concat(Le.errors),a=i.length);var d=R===a;if(!d)break}else return Le.errors=[{instancePath:e+"/properties",schemaPath:"#/properties/properties/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=A===a}else var o=!0;if(o){if(t.patternProperties!==void 0){let x=t.patternProperties,A=a;if(a===A)if(x&&typeof x=="object"&&!Array.isArray(x)){for(let I in x){let R=a;if(a===R&&typeof I=="string"&&!mEe(I)){let w={instancePath:e+"/patternProperties",schemaPath:"#/properties/patternProperties/propertyNames/format",keyword:"format",params:{format:"regex"},message:'must match format "regex"',propertyName:I};i===null?i=[w]:i.push(w),a++}var f=R===a;if(!f){let w={instancePath:e+"/patternProperties",schemaPath:"#/properties/patternProperties/propertyNames",keyword:"propertyNames",params:{propertyName:I},message:"property name must be valid"};return i===null?i=[w]:i.push(w),a++,Le.errors=i,!1;break}}if(f)for(let I in x){let R=a;Le(x[I],{instancePath:e+"/patternProperties/"+I.replace(/~/g,"~0").replace(/\//g,"~1"),parentData:x,parentDataProperty:I,rootData:s})||(i=i===null?Le.errors:i.concat(Le.errors),a=i.length);var p=R===a;if(!p)break}}else return Le.errors=[{instancePath:e+"/patternProperties",schemaPath:"#/properties/patternProperties/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=A===a}else var o=!0;if(o){if(t.dependencies!==void 0){let x=t.dependencies,A=a;if(a===A)if(x&&typeof x=="object"&&!Array.isArray(x))for(let I in x){let R=x[I],w=a,N=a,k=!1,B=a;Le(R,{instancePath:e+"/dependencies/"+I.replace(/~/g,"~0").replace(/\//g,"~1"),parentData:x,parentDataProperty:I,rootData:s})||(i=i===null?Le.errors:i.concat(Le.errors),a=i.length);var m=B===a;if(k=k||m,!k){let M=a;if(a===a)if(Array.isArray(R)){var h=!0;let Z=R.length;for(let W=0;W1){let z={};for(;W--;){let j=R[W];if(typeof j=="string"){if(typeof z[j]=="number"){U=z[j];let J={instancePath:e+"/dependencies/"+I.replace(/~/g,"~0").replace(/\//g,"~1"),schemaPath:"#/definitions/stringArray/uniqueItems",keyword:"uniqueItems",params:{i:W,j:U},message:"must NOT have duplicate items (items ## "+U+" and "+W+" are identical)"};i===null?i=[J]:i.push(J),a++;break}z[j]=W}}}}}else{let Z={instancePath:e+"/dependencies/"+I.replace(/~/g,"~0").replace(/\//g,"~1"),schemaPath:"#/definitions/stringArray/type",keyword:"type",params:{type:"array"},message:"must be array"};i===null?i=[Z]:i.push(Z),a++}var m=M===a;k=k||m}if(k)a=N,i!==null&&(N?i.length=N:i=null);else{let M={instancePath:e+"/dependencies/"+I.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++,Le.errors=i,!1}var y=w===a;if(!y)break}else return Le.errors=[{instancePath:e+"/dependencies",schemaPath:"#/properties/dependencies/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=A===a}else var o=!0;if(o){if(t.propertyNames!==void 0){let x=a;Le(t.propertyNames,{instancePath:e+"/propertyNames",parentData:t,parentDataProperty:"propertyNames",rootData:s})||(i=i===null?Le.errors:i.concat(Le.errors),a=i.length);var o=x===a}else var o=!0;if(o){if(t.enum!==void 0){let x=t.enum,A=a;if(a===A)if(Array.isArray(x)){if(x.length<1)return Le.errors=[{instancePath:e+"/enum",schemaPath:"#/properties/enum/minItems",keyword:"minItems",params:{limit:1},message:"must NOT have fewer than 1 items"}],!1;{let I=x.length,R;if(I>1){e:for(;I--;)for(R=I;R--;)if(hEe(x[I],x[R])){return Le.errors=[{instancePath:e+"/enum",schemaPath:"#/properties/enum/uniqueItems",keyword:"uniqueItems",params:{i:I,j:R},message:"must NOT have duplicate items (items ## "+R+" and "+I+" are identical)"}],!1;break e}}}}else return Le.errors=[{instancePath:e+"/enum",schemaPath:"#/properties/enum/type",keyword:"type",params:{type:"array"},message:"must be array"}],!1;var o=A===a}else var o=!0;if(o){if(t.type!==void 0){let x=t.type,A=a,S=a,I=!1,R=a;if(!(x==="array"||x==="boolean"||x==="integer"||x==="null"||x==="number"||x==="object"||x==="string")){let N={instancePath:e+"/type",schemaPath:"#/definitions/simpleTypes/enum",keyword:"enum",params:{allowedValues:fEe.enum},message:"must be equal to one of the allowed values"};i===null?i=[N]:i.push(N),a++}var g=R===a;if(I=I||g,!I){let N=a;if(a===N)if(Array.isArray(x))if(x.length<1){let B={instancePath:e+"/type",schemaPath:"#/properties/type/anyOf/1/minItems",keyword:"minItems",params:{limit:1},message:"must NOT have fewer than 1 items"};i===null?i=[B]:i.push(B),a++}else{var b=!0;let B=x.length;for(let M=0;M1){e:for(;M--;)for(D=M;D--;)if(hEe(x[M],x[D])){let L={instancePath:e+"/type",schemaPath:"#/properties/type/anyOf/1/uniqueItems",keyword:"uniqueItems",params:{i:M,j:D},message:"must NOT have duplicate items (items ## "+D+" and "+M+" are identical)"};i===null?i=[L]:i.push(L),a++;break e}}}}else{let B={instancePath:e+"/type",schemaPath:"#/properties/type/anyOf/1/type",keyword:"type",params:{type:"array"},message:"must be array"};i===null?i=[B]:i.push(B),a++}var g=N===a;I=I||g}if(I)a=S,i!==null&&(S?i.length=S:i=null);else{let N={instancePath:e+"/type",schemaPath:"#/properties/type/anyOf",keyword:"anyOf",params:{},message:"must match a schema in anyOf"};return i===null?i=[N]:i.push(N),a++,Le.errors=i,!1}var o=A===a}else var o=!0;if(o){if(t.format!==void 0){let x=a;if(typeof t.format!="string")return Le.errors=[{instancePath:e+"/format",schemaPath:"#/properties/format/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var o=x===a}else var o=!0;if(o){if(t.contentMediaType!==void 0){let x=a;if(typeof t.contentMediaType!="string")return Le.errors=[{instancePath:e+"/contentMediaType",schemaPath:"#/properties/contentMediaType/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var o=x===a}else var o=!0;if(o){if(t.contentEncoding!==void 0){let x=a;if(typeof t.contentEncoding!="string")return Le.errors=[{instancePath:e+"/contentEncoding",schemaPath:"#/properties/contentEncoding/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var o=x===a}else var o=!0;if(o){if(t.if!==void 0){let x=a;Le(t.if,{instancePath:e+"/if",parentData:t,parentDataProperty:"if",rootData:s})||(i=i===null?Le.errors:i.concat(Le.errors),a=i.length);var o=x===a}else var o=!0;if(o){if(t.then!==void 0){let x=a;Le(t.then,{instancePath:e+"/then",parentData:t,parentDataProperty:"then",rootData:s})||(i=i===null?Le.errors:i.concat(Le.errors),a=i.length);var o=x===a}else var o=!0;if(o){if(t.else!==void 0){let x=a;Le(t.else,{instancePath:e+"/else",parentData:t,parentDataProperty:"else",rootData:s})||(i=i===null?Le.errors:i.concat(Le.errors),a=i.length);var o=x===a}else var o=!0;if(o){if(t.allOf!==void 0){let x=a;pa(t.allOf,{instancePath:e+"/allOf",parentData:t,parentDataProperty:"allOf",rootData:s})||(i=i===null?pa.errors:i.concat(pa.errors),a=i.length);var o=x===a}else var o=!0;if(o){if(t.anyOf!==void 0){let x=a;pa(t.anyOf,{instancePath:e+"/anyOf",parentData:t,parentDataProperty:"anyOf",rootData:s})||(i=i===null?pa.errors:i.concat(pa.errors),a=i.length);var o=x===a}else var o=!0;if(o){if(t.oneOf!==void 0){let x=a;pa(t.oneOf,{instancePath:e+"/oneOf",parentData:t,parentDataProperty:"oneOf",rootData:s})||(i=i===null?pa.errors:i.concat(pa.errors),a=i.length);var o=x===a}else var o=!0;if(o)if(t.not!==void 0){let x=a;Le(t.not,{instancePath:e+"/not",parentData:t,parentDataProperty:"not",rootData:s})||(i=i===null?Le.errors:i.concat(Le.errors),a=i.length);var o=x===a}else var o=!0}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}return Le.errors=i,a===0}});var a7=_((lUr,yEe)=>{"use strict";var n7=class extends Error{constructor(e,r){super(),this.name="JsonSchemaMergeError",this.code="JSON_SCHEMA_MERGE_ERROR",this.message=`Failed to merge "${e}" keyword schemas.`,this.schemas=r}},s7=class extends Error{constructor(e,r){super(),this.name="JsonSchemaMergeError",this.code="JSON_SCHEMA_MERGE_ERROR",this.message=`Resolver for "${e}" keyword not found.`,this.schemas=r}},i7=class extends Error{constructor(e){super(),this.name="JsonSchemaMergeError",this.code="JSON_SCHEMA_MERGE_ERROR",this.message=`Invalid "onConflict" option: "${e}".`}};yEe.exports={MergeError:n7,ResolverNotFoundError:s7,InvalidOnConflictOptionError:i7}});var bEe=_((dUr,xEe)=>{"use strict";var t4t=sc(),{MergeError:o7}=a7();function AEe(t){let e=t[0];for(let r=1;rt[r].includes(n));return e}function r4t(t,e,r){let n=AEe(e);if(n.length===0)throw new o7(t,e);r[t]=n}function n4t(t,e,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 e)for(;o*i%1!==0;)i*=10;let a=e[0]*i;for(let o of e)a=s(a,o*i);r[t]=a/i}function c4t(t,e,r){let n=e[0];for(let s=1;s{"use strict";var f4t=sc(),Qn=bEe(),vk=a7(),vEe={$id:Qn.skip,type:Qn.hybridArraysIntersection,enum:Qn.arraysIntersection,minLength:Qn.maxNumber,maxLength:Qn.minNumber,minimum:Qn.maxNumber,maximum:Qn.minNumber,multipleOf:Qn.commonMultiple,exclusiveMinimum:Qn.maxNumber,exclusiveMaximum:Qn.minNumber,minItems:Qn.maxNumber,maxItems:Qn.minNumber,maxProperties:Qn.minNumber,minProperties:Qn.maxNumber,const:Qn.allEqual,default:Qn.allEqual,format:Qn.allEqual,required:Qn.arraysUnion,properties:A4t,patternProperties:Ek,additionalProperties:_k,items:h4t,additionalItems:g4t,definitions:Ek,$defs:Ek,nullable:Qn.booleanAnd,oneOf:_Ee,anyOf:_Ee,allOf:Qn.arraysUnion,not:_k,if:x4t,then:Qn.skip,else:Qn.skip,dependencies:EEe,dependentRequired:EEe,dependentSchemas:Ek,propertyNames:_k,uniqueItems:Qn.booleanOr,contains:_k};function _k(t,e,r,n,s){r[t]=ru(e,s)}function p4t(t){let e=[[]];for(let r of t){let n=[];for(let s of e)for(let i of r)n.push([...s,i]);e=n}return e}function _Ee(t,e,r,n,s){if(e.length===1){r[t]=e[0];return}let i=p4t(e),a=[];for(let o of i)try{let c=ru(o,s);c!==void 0&&a.push(c)}catch(c){if(c instanceof vk.MergeError)continue;throw c}r[t]=a}function m4t(t,e){let{items:r,additionalItems:n}=t;return Array.isArray(r)?e{"use strict";var{mergeSchemas:_4t}=CEe();function E4t(t){return _4t(t,{onConflict:"skip"})}TEe.exports=E4t});var MEe=_((mUr,jA)=>{"use strict";var{RefResolver:v4t}=uEe(),S4t=i$(),I4t=rF(),ah=dEe(),REe=gEe(),C4t=wEe(),T4t=/'/g,Sk=2e4,OEe="default",w4t=["floor","ceil","round","trunc"],kEe=["default","json-stringify"],uv=0;function c7(t,e){if(!REe(t)){e?e=`"${e}" `:e="";let r=REe.errors[0],n=new Error(`${e}schema is invalid: data${r.instancePath} ${r.message}`);throw n.errors=c7.errors,n}}function lv(t,e){let r=e.schema.$ref,n=r.indexOf("#");n===-1&&(n=r.length);let s=r.slice(0,n)||e.schemaId,i=r.slice(n)||"#",a=t.refResolver.getSchema(s,i);if(a===null)throw new Error(`Cannot find reference "${r}"`);let o=new ah(a,s,i);return a.$ref!==void 0?lv(t,o):o}function Ik(t,e){let r=t.refResolver.getSchema(e,"#");return new ah(r,e,"#")}function NEe(t,e){return t.$id&&t.$id.charAt(0)!=="#"?t.$id:e}function u7(t,e){c7(t),e=e||{};let r={functions:[],functionsCounter:0,functionsNamesBySchema:new Map,options:e,refResolver:new v4t,rootSchemaId:t.$id||`__fjs_root_${uv++}`,validatorSchemasIds:new Set,mergedSchemasIds:new Map},n=NEe(t,r.rootSchemaId);if(r.refResolver.hasSchema(n)||r.refResolver.addSchema(t,r.rootSchemaId),e.schema)for(let l in e.schema){let d=e.schema[l],f=NEe(d,l);r.refResolver.hasSchema(f)||(c7(d,l),r.refResolver.addSchema(d,l))}if(e.rounding&&!w4t.includes(e.rounding))throw new Error(`Unsupported integer rounding method ${e.rounding}`);if(e.largeArrayMechanism)if(kEe.includes(e.largeArrayMechanism))OEe=e.largeArrayMechanism;else throw new Error(`Unsupported large array mechanism ${e.largeArrayMechanism}`);if(e.largeArraySize)if(typeof e.largeArraySize=="string"&&Number.isFinite(Number.parseInt(e.largeArraySize,10)))Sk=Number.parseInt(e.largeArraySize,10);else if(typeof e.largeArraySize=="number"&&Number.isInteger(e.largeArraySize))Sk=e.largeArraySize;else if(typeof e.largeArraySize=="bigint")Sk=Number(e.largeArraySize);else throw new Error(`Unsupported large array size. Expected integer-like, got ${typeof e.largeArraySize} with value ${e.largeArraySize}`);let s=new ah(t,r.rootSchemaId),i=Ro(r,s,"input"),a=` const JSON_STR_BEGIN_OBJECT = '{' const JSON_STR_END_OBJECT = '}' const JSON_STR_BEGIN_ARRAY = '[' @@ -173,9 +173,9 @@ ${b}`),h.pop(),`{${C}}`}case"number":return isFinite(m)?String(m):e?e(m):"null"; ${r.functions.join(` `)} return main - `;let o=new hOt(e),c=new gOt(e.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[p,m]of Object.entries(f))c.addSchema(m,p)}if(e.debugMode&&(e.mode="debug"),e.mode==="debug")return{validator:c,serializer:o,code:`validator + `;let o=new S4t(e),c=new I4t(e.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[p,m]of Object.entries(f))c.addSchema(m,p)}if(e.debugMode&&(e.mode="debug"),e.mode==="debug")return{validator:c,serializer:o,code:`validator serializer -${a}`,ajv:c.ajv};let u=new Function("validator","serializer",a);return e.mode==="standalone"?r$()(u,r,o,c):u(c,o)}var bOt=["properties","required","additionalProperties","patternProperties","maxProperties","minProperties","dependencies"],EOt=["items","additionalItems","maxItems","minItems","uniqueItems","contains"],_Ot=["maxLength","minLength","pattern"],SOt=["multipleOf","maximum","exclusiveMaximum","minimum","exclusiveMinimum"];function vOt(t){for(var e of bOt)if(e in t)return"object";for(var e of EOt)if(e in t)return"array";for(var e of _Ot)if(e in t)return"string";for(var e of SOt)if(e in t)return"number";return t.type}function COt(t,e,r){let n=e.schema,s=Object.keys(n.properties||{}),i=` +${a}`,ajv:c.ajv};let u=new Function("validator","serializer",a);return e.mode==="standalone"?sF()(u,r,o,c):u(c,o)}var R4t=["properties","required","additionalProperties","patternProperties","maxProperties","minProperties","dependencies"],N4t=["items","additionalItems","maxItems","minItems","uniqueItems","contains"],O4t=["maxLength","minLength","pattern"],k4t=["multipleOf","maximum","exclusiveMaximum","minimum","exclusiveMinimum"];function P4t(t){for(var e of R4t)if(e in t)return"object";for(var e of N4t)if(e in t)return"array";for(var e of O4t)if(e in t)return"string";for(var e of k4t)if(e in t)return"number";return t.type}function D4t(t,e,r){let n=e.schema,s=Object.keys(n.properties||{}),i=` const propertiesKeys = ${JSON.stringify(s)} for (const [key, value] of Object.entries(obj)) { if ( @@ -188,7 +188,7 @@ ${a}`,ajv:c.ajv};let u=new Function("validator","serializer",a);return e.mode=== if (/${l.replace(/\\*\//g,"\\/")}/.test(key)) { ${r} json += serializer.asString(key) + JSON_STR_COLONS - ${xo(t,d,"value")} + ${Ro(t,d,"value")} continue } `}let u=e.getPropertyLocation("additionalProperties").schema;if(u!==void 0)if(u===!0)i+=` @@ -197,19 +197,19 @@ ${a}`,ajv:c.ajv};let u=new Function("validator","serializer",a);return e.mode=== `;else{let l=e.getPropertyLocation("additionalProperties");i+=` ${r} json += serializer.asString(key) + JSON_STR_COLONS - ${xo(t,l,"value")} + ${Ro(t,l,"value")} `}return i+=` } - `,i}function IOt(t,e){let r=e.schema,n=e.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 + `,i}function B4t(t,e){let r=e.schema,n=e.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=s_(t,l));let d=JSON.stringify(u),f=l.schema.default,p=s.includes(u);o+=` +`,c="!addComma && (addComma = true) || (json += JSON_STR_COMMA)");for(let u of i){let l=n.getPropertyLocation(u);l.schema.$ref&&(l=lv(t,l));let d=JSON.stringify(u),f=l.schema.default,p=s.includes(u);o+=` value = obj[${d}] if (value !== undefined) { ${c} json += ${JSON.stringify(d+":")} - ${xo(t,l,"value")} + ${Ro(t,l,"value")} }`,f!==void 0?o+=` else { ${c} json += ${JSON.stringify(d+":"+JSON.stringify(f))} @@ -218,21 +218,21 @@ ${a}`,ajv:c.ajv};let u=new Function("validator","serializer",a);return e.mode=== throw new Error('${d.replace(/'/g,"\\'")} is required!') } `:o+=` -`,a&&(c="json += ','")}return(r.patternProperties||r.additionalProperties)&&(o+=COt(t,e,c)),o+=` +`,a&&(c="json += ','")}return(r.patternProperties||r.additionalProperties)&&(o+=D4t(t,e,c)),o+=` return json + JSON_STR_END_OBJECT - `,o}function rO(t,e,r){for(let a=0;a ${s.length}) { throw new Error(\`Item at ${s.length} does not match schema definition.\`) } - `),$be==="json-stringify"&&(o+=`if (arrayLength >= ${eO}) return JSON.stringify(obj) + `),OEe==="json-stringify"&&(o+=`if (arrayLength >= ${Sk}) return JSON.stringify(obj) `),o+=` const arrayEnd = arrayLength - 1 let value let json = '' - `,Array.isArray(s)){for(let u=0;uqbe(s,e)).join(" || ")})`)}return r}function jbe(t){return"anonymous"+t.functionsCounter++}function NOt(t,e,r){let s=e.schema.type.sort(o=>o==="null"?-1:1),i="";s.forEach((o,c)=>{e.schema={...e.schema,type:o};let u=Hbe(t,e,r),l=c===0?"if":"else if";switch(o){case"null":i+=` + )`;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(t)&&(r=`(${t.map(s=>DEe(s,e)).join(" || ")})`)}return r}function BEe(t){return"anonymous"+t.functionsCounter++}function $4t(t,e,r){let s=e.schema.type.sort(o=>o==="null"?-1:1),i="";s.forEach((o,c)=>{e.schema={...e.schema,type:o};let u=LEe(t,e,r),l=c===0?"if":"else if";switch(o){case"null":i+=` ${l} (${r} === null) ${u} `;break;case"string":{i+=` @@ -310,7 +310,7 @@ ${a}`,ajv:c.ajv};let u=new Function("validator","serializer",a);return e.mode=== ${u} `;break}}});let a=e.getSchemaRef();return a.startsWith(t.rootSchemaId)&&(a=a.replace(t.rootSchemaId,"")),i+=` else throw new TypeError(\`The value of '${a}' does not match schema definition.\`) - `,i}function Hbe(t,e,r){let n=e.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 LEe(t,e,r){let n=e.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 @@ -324,57 +324,57 @@ ${a}`,ajv:c.ajv};let u=new Function("validator","serializer",a);return e.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 += ${wOt(t,e)}(${r})`;case"array":return`json += ${ROt(t,e)}(${r})`;case void 0:return`json += JSON.stringify(${r})`;default:throw new Error(`${n.type} unsupported`)}}function OOt(t,e){let r=t.schema,n=r.type,s=Array.isArray(n)&&n.includes("null"),i="";return s&&(i+=` + `;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 += ${M4t(t,e)}(${r})`;case"array":return`json += ${W4t(t,e)}(${r})`;case void 0:return`json += JSON.stringify(${r})`;default:throw new Error(`${n.type} unsupported`)}}function U4t(t,e){let r=t.schema,n=r.type,s=Array.isArray(n)&&n.includes("null"),i="";return s&&(i+=` if (${e} === null) { json += JSON_STR_NULL } else { - `),i+=`json += '${JSON.stringify(r.const).replace(yOt,"\\'")}'`,s&&(i+=` + `),i+=`json += '${JSON.stringify(r.const).replace(T4t,"\\'")}'`,s&&(i+=` } - `),i}function POt(t,e,r){let n=e.schema,s=t.mergedSchemasIds.get(n);if(s){let l=tO(t,s);return xo(t,l,r)}s=`__fjs_merged_${n_++}`,t.mergedSchemasIds.set(n,s);let{allOf:i,...a}=e.schema,o=[new Mm(a,e.schemaId,e.jsonPointer)],c=e.getPropertyLocation("allOf");for(let l=0;l{"use strict";var LOt=uF();function Gbe(t={readMode:!0}){if(t.readMode===!0&&typeof t.restoreFunction!="function")throw new Error("You must provide a function for the restoreFunction-option when readMode ON");if(t.readMode!==!0&&typeof t.storeFunction!="function")throw new Error("You must provide a function for the storeFunction-option when readMode OFF");if(t.readMode===!0)return function(){return function(n){return t.restoreFunction(n)}};let e=LOt();return function(n,s={}){s.mode="standalone";let i=e(n,s);return function(a){let o=i(a);return t.storeFunction(a,o),new Function(o)}}}cF.exports=Gbe;cF.exports.default=Gbe});var uF=E((akr,i_)=>{"use strict";var BOt=Qbe();function lF(){return function(e,r){let n=Object.assign({},r,{schema:e});return MOt.bind(null,n)}}function MOt(t,{schema:e}){return t.schema&&e.$id&&t.schema[e.$id]&&(t.schema={...t.schema},delete t.schema[e.$id]),BOt(e,t)}i_.exports=lF;i_.exports.default=lF;i_.exports.SerializerSelector=lF;i_.exports.StandaloneSerializer=Vbe()});var uy=E(Br=>{"use strict";Object.defineProperty(Br,"__esModule",{value:!0});Br.regexpCode=Br.getEsmExportName=Br.getProperty=Br.safeStringify=Br.stringify=Br.strConcat=Br.addCodeArg=Br.str=Br._=Br.nil=Br._Code=Br.Name=Br.IDENTIFIER=Br._CodeOrName=void 0;var a_=class{};Br._CodeOrName=a_;Br.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Wm=class extends a_{constructor(e){if(super(),!Br.IDENTIFIER.test(e))throw new Error("CodeGen: name must be a valid identifier");this.str=e}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};Br.Name=Wm;var Xo=class extends a_{constructor(e){super(),this._items=typeof e=="string"?[e]:e}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let e=this._items[0];return e===""||e==='""'}get str(){var e;return(e=this._str)!==null&&e!==void 0?e:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var e;return(e=this._names)!==null&&e!==void 0?e:this._names=this._items.reduce((r,n)=>(n instanceof Wm&&(r[n.str]=(r[n.str]||0)+1),r),{})}};Br._Code=Xo;Br.nil=new Xo("");function zbe(t,...e){let r=[t[0]],n=0;for(;n{"use strict";Object.defineProperty(Ma,"__esModule",{value:!0});Ma.ValueScope=Ma.ValueScopeName=Ma.Scope=Ma.varKinds=Ma.UsedValueState=void 0;var Ba=uy(),pF=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},nO;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(nO||(Ma.UsedValueState=nO={}));Ma.varKinds={const:new Ba.Name("const"),let:new Ba.Name("let"),var:new Ba.Name("var")};var sO=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof Ba.Name?e:this.name(e)}name(e){return new Ba.Name(this._newName(e))}_newName(e){let r=this._names[e]||this._nameGroup(e);return`${e}${r.index++}`}_nameGroup(e){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(e)||this._prefixes&&!this._prefixes.has(e))throw new Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};Ma.Scope=sO;var iO=class extends Ba.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,Ba._)`.${new Ba.Name(r)}[${n}]`}};Ma.ValueScopeName=iO;var GOt=(0,Ba._)`\n`,mF=class extends sO{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?GOt:Ba.nil}}get(){return this._scope}name(e){return new iO(e,this._newName(e))}value(e,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let s=this.toName(e),{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(e,r){let n=this._values[e];if(n)return n.get(r)}scopeRefs(e,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,Ba._)`${e}${n.scopePath}`})}scopeCode(e=this._values,r,n){return this._reduceValues(e,s=>{if(s.value===void 0)throw new Error(`CodeGen: name "${s}" has no value`);return s.value.code},r,n)}_reduceValues(e,r,n={},s){let i=Ba.nil;for(let a in e){let o=e[a];if(!o)continue;let c=n[a]=n[a]||new Map;o.forEach(u=>{if(c.has(u))return;c.set(u,nO.Started);let l=r(u);if(l){let d=this.opts.es5?Ma.varKinds.var:Ma.varKinds.const;i=(0,Ba._)`${i}${d} ${u} = ${l};${this.opts._n}`}else if(l=s?.(u))i=(0,Ba._)`${i}${l}${this.opts._n}`;else throw new pF(u);c.set(u,nO.Completed)})}return i}};Ma.ValueScope=mF});var Et=E(Zt=>{"use strict";Object.defineProperty(Zt,"__esModule",{value:!0});Zt.or=Zt.and=Zt.not=Zt.CodeGen=Zt.operators=Zt.varKinds=Zt.ValueScopeName=Zt.ValueScope=Zt.Scope=Zt.Name=Zt.regexpCode=Zt.stringify=Zt.getProperty=Zt.nil=Zt.strConcat=Zt.str=Zt._=void 0;var yr=uy(),Qc=aO(),vp=uy();Object.defineProperty(Zt,"_",{enumerable:!0,get:function(){return vp._}});Object.defineProperty(Zt,"str",{enumerable:!0,get:function(){return vp.str}});Object.defineProperty(Zt,"strConcat",{enumerable:!0,get:function(){return vp.strConcat}});Object.defineProperty(Zt,"nil",{enumerable:!0,get:function(){return vp.nil}});Object.defineProperty(Zt,"getProperty",{enumerable:!0,get:function(){return vp.getProperty}});Object.defineProperty(Zt,"stringify",{enumerable:!0,get:function(){return vp.stringify}});Object.defineProperty(Zt,"regexpCode",{enumerable:!0,get:function(){return vp.regexpCode}});Object.defineProperty(Zt,"Name",{enumerable:!0,get:function(){return vp.Name}});var lO=aO();Object.defineProperty(Zt,"Scope",{enumerable:!0,get:function(){return lO.Scope}});Object.defineProperty(Zt,"ValueScope",{enumerable:!0,get:function(){return lO.ValueScope}});Object.defineProperty(Zt,"ValueScopeName",{enumerable:!0,get:function(){return lO.ValueScopeName}});Object.defineProperty(Zt,"varKinds",{enumerable:!0,get:function(){return lO.varKinds}});Zt.operators={GT:new yr._Code(">"),GTE:new yr._Code(">="),LT:new yr._Code("<"),LTE:new yr._Code("<="),EQ:new yr._Code("==="),NEQ:new yr._Code("!=="),NOT:new yr._Code("!"),OR:new yr._Code("||"),AND:new yr._Code("&&"),ADD:new yr._Code("+")};var yd=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},hF=class extends yd{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?Qc.varKinds.var:this.varKind,s=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${s};`+r}optimizeNames(e,r){if(e[this.name.str])return this.rhs&&(this.rhs=dy(this.rhs,e,r)),this}get names(){return this.rhs instanceof yr._CodeOrName?this.rhs.names:{}}},oO=class extends yd{constructor(e,r,n){super(),this.lhs=e,this.rhs=r,this.sideEffects=n}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,r){if(!(this.lhs instanceof yr.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=dy(this.rhs,e,r),this}get names(){let e=this.lhs instanceof yr.Name?{}:{...this.lhs.names};return uO(e,this.rhs)}},gF=class extends oO{constructor(e,r,n,s){super(e,n,s),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},AF=class extends yd{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},yF=class extends yd{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},xF=class extends yd{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},bF=class extends yd{constructor(e){super(),this.code=e}render({_n:e}){return`${this.code};`+e}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(e,r){return this.code=dy(this.code,e,r),this}get names(){return this.code instanceof yr._CodeOrName?this.code.names:{}}},c_=class extends yd{constructor(e=[]){super(),this.nodes=e}render(e){return this.nodes.reduce((r,n)=>r+n.render(e),"")}optimizeNodes(){let{nodes:e}=this,r=e.length;for(;r--;){let n=e[r].optimizeNodes();Array.isArray(n)?e.splice(r,1,...n):n?e[r]=n:e.splice(r,1)}return e.length>0?this:void 0}optimizeNames(e,r){let{nodes:n}=this,s=n.length;for(;s--;){let i=n[s];i.optimizeNames(e,r)||(VOt(e,i.names),n.splice(s,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>Um(e,r.names),{})}},xd=class extends c_{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},EF=class extends c_{},ly=class extends xd{};ly.kind="else";var $m=class t extends xd{constructor(e,r){super(r),this.condition=e}render(e){let r=`if(${this.condition})`+super.render(e);return this.else&&(r+="else "+this.else.render(e)),r}optimizeNodes(){super.optimizeNodes();let e=this.condition;if(e===!0)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new ly(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(Ybe(e),r instanceof t?[r]:r.nodes);if(!(e===!1||!this.nodes.length))return this}optimizeNames(e,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(e,r),!!(super.optimizeNames(e,r)||this.else))return this.condition=dy(this.condition,e,r),this}get names(){let e=super.names;return uO(e,this.condition),this.else&&Um(e,this.else.names),e}};$m.kind="if";var Fm=class extends xd{};Fm.kind="for";var _F=class extends Fm{constructor(e){super(),this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iteration=dy(this.iteration,e,r),this}get names(){return Um(super.names,this.iteration.names)}},SF=class extends Fm{constructor(e,r,n,s){super(),this.varKind=e,this.name=r,this.from=n,this.to=s}render(e){let r=e.es5?Qc.varKinds.var:this.varKind,{name:n,from:s,to:i}=this;return`for(${r} ${n}=${s}; ${n}<${i}; ${n}++)`+super.render(e)}get names(){let e=uO(super.names,this.from);return uO(e,this.to)}},cO=class extends Fm{constructor(e,r,n,s){super(),this.loop=e,this.varKind=r,this.name=n,this.iterable=s}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iterable=dy(this.iterable,e,r),this}get names(){return Um(super.names,this.iterable.names)}},u_=class extends xd{constructor(e,r,n){super(),this.name=e,this.args=r,this.async=n}render(e){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(e)}};u_.kind="func";var l_=class extends c_{render(e){return"return "+super.render(e)}};l_.kind="return";var vF=class extends xd{render(e){let r="try"+super.render(e);return this.catch&&(r+=this.catch.render(e)),this.finally&&(r+=this.finally.render(e)),r}optimizeNodes(){var e,r;return super.optimizeNodes(),(e=this.catch)===null||e===void 0||e.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(e,r){var n,s;return super.optimizeNames(e,r),(n=this.catch)===null||n===void 0||n.optimizeNames(e,r),(s=this.finally)===null||s===void 0||s.optimizeNames(e,r),this}get names(){let e=super.names;return this.catch&&Um(e,this.catch.names),this.finally&&Um(e,this.finally.names),e}},d_=class extends xd{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};d_.kind="catch";var f_=class extends xd{render(e){return"finally"+super.render(e)}};f_.kind="finally";var CF=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?` -`:""},this._extScope=e,this._scope=new Qc.Scope({parent:e}),this._nodes=[new EF]}toString(){return this._root.render(this.opts)}name(e){return this._scope.name(e)}scopeName(e){return this._extScope.name(e)}scopeValue(e,r){let n=this._extScope.value(e,r);return(this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(e,r){return this._extScope.getValue(e,r)}scopeRefs(e){return this._extScope.scopeRefs(e,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(e,r,n,s){let i=this._scope.toName(r);return n!==void 0&&s&&(this._constants[i.str]=n),this._leafNode(new hF(e,i,n)),i}const(e,r,n){return this._def(Qc.varKinds.const,e,r,n)}let(e,r,n){return this._def(Qc.varKinds.let,e,r,n)}var(e,r,n){return this._def(Qc.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new oO(e,r,n))}add(e,r){return this._leafNode(new gF(e,Zt.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==yr.nil&&this._leafNode(new bF(e)),this}object(...e){let r=["{"];for(let[n,s]of e)r.length>1&&r.push(","),r.push(n),(n!==s||this.opts.es5)&&(r.push(":"),(0,yr.addCodeArg)(r,s));return r.push("}"),new yr._Code(r)}if(e,r,n){if(this._blockNode(new $m(e)),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(e){return this._elseNode(new $m(e))}else(){return this._elseNode(new ly)}endIf(){return this._endBlockNode($m,ly)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new _F(e),r)}forRange(e,r,n,s,i=this.opts.es5?Qc.varKinds.var:Qc.varKinds.let){let a=this._scope.toName(e);return this._for(new SF(i,a,r,n),()=>s(a))}forOf(e,r,n,s=Qc.varKinds.const){let i=this._scope.toName(e);if(this.opts.es5){let a=r instanceof yr.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,yr._)`${a}.length`,o=>{this.var(i,(0,yr._)`${a}[${o}]`),n(i)})}return this._for(new cO("of",s,i,r),()=>n(i))}forIn(e,r,n,s=this.opts.es5?Qc.varKinds.var:Qc.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,yr._)`Object.keys(${r})`,n);let i=this._scope.toName(e);return this._for(new cO("in",s,i,r),()=>n(i))}endFor(){return this._endBlockNode(Fm)}label(e){return this._leafNode(new AF(e))}break(e){return this._leafNode(new yF(e))}return(e){let r=new l_;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(l_)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let s=new vF;if(this._blockNode(s),this.code(e),r){let i=this.name("e");this._currNode=s.catch=new d_(i),r(i)}return n&&(this._currNode=s.finally=new f_,this.code(n)),this._endBlockNode(d_,f_)}throw(e){return this._leafNode(new xF(e))}block(e,r){return this._blockStarts.push(this._nodes.length),e&&this.code(e).endBlock(r),this}endBlock(e){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||e!==void 0&&n!==e)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${e} expected`);return this._nodes.length=r,this}func(e,r=yr.nil,n,s){return this._blockNode(new u_(e,r,n)),s&&this.code(s).endFunc(),this}endFunc(){return this._endBlockNode(u_)}optimize(e=1){for(;e-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(e){return this._currNode.nodes.push(e),this}_blockNode(e){this._currNode.nodes.push(e),this._nodes.push(e)}_endBlockNode(e,r){let n=this._currNode;if(n instanceof e||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${e.kind}/${r.kind}`:e.kind}"`)}_elseNode(e){let r=this._currNode;if(!(r instanceof $m))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let r=this._nodes;r[r.length-1]=e}};Zt.CodeGen=CF;function Um(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function uO(t,e){return e instanceof yr._CodeOrName?Um(t,e.names):t}function dy(t,e,r){if(t instanceof yr.Name)return n(t);if(!s(t))return t;return new yr._Code(t._items.reduce((i,a)=>(a instanceof yr.Name&&(a=n(a)),a instanceof yr._Code?i.push(...a._items):i.push(a),i),[]));function n(i){let a=r[i.str];return a===void 0||e[i.str]!==1?i:(delete e[i.str],a)}function s(i){return i instanceof yr._Code&&i._items.some(a=>a instanceof yr.Name&&e[a.str]===1&&r[a.str]!==void 0)}}function VOt(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function Ybe(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,yr._)`!${IF(t)}`}Zt.not=Ybe;var zOt=Jbe(Zt.operators.AND);function KOt(...t){return t.reduce(zOt)}Zt.and=KOt;var YOt=Jbe(Zt.operators.OR);function JOt(...t){return t.reduce(YOt)}Zt.or=JOt;function Jbe(t){return(e,r)=>e===yr.nil?r:r===yr.nil?e:(0,yr._)`${IF(e)} ${t} ${IF(r)}`}function IF(t){return t instanceof yr.Name?t:(0,yr._)`(${t})`}});var Kt=E(nr=>{"use strict";Object.defineProperty(nr,"__esModule",{value:!0});nr.checkStrictMode=nr.getErrorPath=nr.Type=nr.useFunc=nr.setEvaluated=nr.evaluatedPropsToName=nr.mergeEvaluated=nr.eachItem=nr.unescapeJsonPointer=nr.escapeJsonPointer=nr.escapeFragment=nr.unescapeFragment=nr.schemaRefOrVal=nr.schemaHasRulesButRef=nr.schemaHasRules=nr.checkUnknownRules=nr.alwaysValidSchema=nr.toHash=void 0;var fn=Et(),XOt=uy();function ZOt(t){let e={};for(let r of t)e[r]=!0;return e}nr.toHash=ZOt;function ePt(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(eEe(t,e),!tEe(e,t.self.RULES.all))}nr.alwaysValidSchema=ePt;function eEe(t,e=t.schema){let{opts:r,self:n}=t;if(!r.strictSchema||typeof e=="boolean")return;let s=n.RULES.keywords;for(let i in e)s[i]||sEe(t,`unknown keyword: "${i}"`)}nr.checkUnknownRules=eEe;function tEe(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}nr.schemaHasRules=tEe;function tPt(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}nr.schemaHasRulesButRef=tPt;function rPt({topSchemaRef:t,schemaPath:e},r,n,s){if(!s){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,fn._)`${r}`}return(0,fn._)`${t}${e}${(0,fn.getProperty)(n)}`}nr.schemaRefOrVal=rPt;function nPt(t){return rEe(decodeURIComponent(t))}nr.unescapeFragment=nPt;function sPt(t){return encodeURIComponent(wF(t))}nr.escapeFragment=sPt;function wF(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}nr.escapeJsonPointer=wF;function rEe(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}nr.unescapeJsonPointer=rEe;function iPt(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}nr.eachItem=iPt;function Xbe({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(s,i,a,o)=>{let c=a===void 0?i:a instanceof fn.Name?(i instanceof fn.Name?t(s,i,a):e(s,i,a),a):i instanceof fn.Name?(e(s,a,i),i):r(i,a);return o===fn.Name&&!(c instanceof fn.Name)?n(s,c):c}}nr.mergeEvaluated={props:Xbe({mergeNames:(t,e,r)=>t.if((0,fn._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,fn._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,fn._)`${r} || {}`).code((0,fn._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,fn._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,fn._)`${r} || {}`),RF(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:nEe}),items:Xbe({mergeNames:(t,e,r)=>t.if((0,fn._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,fn._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,fn._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,fn._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function nEe(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,fn._)`{}`);return e!==void 0&&RF(t,r,e),r}nr.evaluatedPropsToName=nEe;function RF(t,e,r){Object.keys(r).forEach(n=>t.assign((0,fn._)`${e}${(0,fn.getProperty)(n)}`,!0))}nr.setEvaluated=RF;var Zbe={};function aPt(t,e){return t.scopeValue("func",{ref:e,code:Zbe[e.code]||(Zbe[e.code]=new XOt._Code(e.code))})}nr.useFunc=aPt;var TF;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(TF||(nr.Type=TF={}));function oPt(t,e,r){if(t instanceof fn.Name){let n=e===TF.Num;return r?n?(0,fn._)`"[" + ${t} + "]"`:(0,fn._)`"['" + ${t} + "']"`:n?(0,fn._)`"/" + ${t}`:(0,fn._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,fn.getProperty)(t).toString():"/"+wF(t)}nr.getErrorPath=oPt;function sEe(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}nr.checkStrictMode=sEe});var Zo=E(NF=>{"use strict";Object.defineProperty(NF,"__esModule",{value:!0});var Pi=Et(),cPt={data:new Pi.Name("data"),valCxt:new Pi.Name("valCxt"),instancePath:new Pi.Name("instancePath"),parentData:new Pi.Name("parentData"),parentDataProperty:new Pi.Name("parentDataProperty"),rootData:new Pi.Name("rootData"),dynamicAnchors:new Pi.Name("dynamicAnchors"),vErrors:new Pi.Name("vErrors"),errors:new Pi.Name("errors"),this:new Pi.Name("this"),self:new Pi.Name("self"),scope:new Pi.Name("scope"),json:new Pi.Name("json"),jsonPos:new Pi.Name("jsonPos"),jsonLen:new Pi.Name("jsonLen"),jsonPart:new Pi.Name("jsonPart")};NF.default=cPt});var p_=E(Di=>{"use strict";Object.defineProperty(Di,"__esModule",{value:!0});Di.extendErrors=Di.resetErrorsCount=Di.reportExtraError=Di.reportError=Di.keyword$DataError=Di.keywordError=void 0;var Cr=Et(),dO=Kt(),ia=Zo();Di.keywordError={message:({keyword:t})=>(0,Cr.str)`must pass "${t}" keyword validation`};Di.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,Cr.str)`"${t}" keyword must be ${e} ($data)`:(0,Cr.str)`"${t}" keyword is invalid ($data)`};function uPt(t,e=Di.keywordError,r,n){let{it:s}=t,{gen:i,compositeRule:a,allErrors:o}=s,c=oEe(t,e,r);n??(a||o)?iEe(i,c):aEe(s,(0,Cr._)`[${c}]`)}Di.reportError=uPt;function lPt(t,e=Di.keywordError,r){let{it:n}=t,{gen:s,compositeRule:i,allErrors:a}=n,o=oEe(t,e,r);iEe(s,o),i||a||aEe(n,ia.default.vErrors)}Di.reportExtraError=lPt;function dPt(t,e){t.assign(ia.default.errors,e),t.if((0,Cr._)`${ia.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,Cr._)`${ia.default.vErrors}.length`,e),()=>t.assign(ia.default.vErrors,null)))}Di.resetErrorsCount=dPt;function fPt({gen:t,keyword:e,schemaValue:r,data:n,errsCount:s,it:i}){if(s===void 0)throw new Error("ajv implementation error");let a=t.name("err");t.forRange("i",s,ia.default.errors,o=>{t.const(a,(0,Cr._)`${ia.default.vErrors}[${o}]`),t.if((0,Cr._)`${a}.instancePath === undefined`,()=>t.assign((0,Cr._)`${a}.instancePath`,(0,Cr.strConcat)(ia.default.instancePath,i.errorPath))),t.assign((0,Cr._)`${a}.schemaPath`,(0,Cr.str)`${i.errSchemaPath}/${e}`),i.opts.verbose&&(t.assign((0,Cr._)`${a}.schema`,r),t.assign((0,Cr._)`${a}.data`,n))})}Di.extendErrors=fPt;function iEe(t,e){let r=t.const("err",e);t.if((0,Cr._)`${ia.default.vErrors} === null`,()=>t.assign(ia.default.vErrors,(0,Cr._)`[${r}]`),(0,Cr._)`${ia.default.vErrors}.push(${r})`),t.code((0,Cr._)`${ia.default.errors}++`)}function aEe(t,e){let{gen:r,validateName:n,schemaEnv:s}=t;s.$async?r.throw((0,Cr._)`new ${t.ValidationError}(${e})`):(r.assign((0,Cr._)`${n}.errors`,e),r.return(!1))}var qm={keyword:new Cr.Name("keyword"),schemaPath:new Cr.Name("schemaPath"),params:new Cr.Name("params"),propertyName:new Cr.Name("propertyName"),message:new Cr.Name("message"),schema:new Cr.Name("schema"),parentSchema:new Cr.Name("parentSchema")};function oEe(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,Cr._)`{}`:pPt(t,e,r)}function pPt(t,e,r={}){let{gen:n,it:s}=t,i=[mPt(s,r),hPt(t,r)];return gPt(t,e,i),n.object(...i)}function mPt({errorPath:t},{instancePath:e}){let r=e?(0,Cr.str)`${t}${(0,dO.getErrorPath)(e,dO.Type.Str)}`:t;return[ia.default.instancePath,(0,Cr.strConcat)(ia.default.instancePath,r)]}function hPt({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let s=n?e:(0,Cr.str)`${e}/${t}`;return r&&(s=(0,Cr.str)`${s}${(0,dO.getErrorPath)(r,dO.Type.Str)}`),[qm.schemaPath,s]}function gPt(t,{params:e,message:r},n){let{keyword:s,data:i,schemaValue:a,it:o}=t,{opts:c,propertyName:u,topSchemaRef:l,schemaPath:d}=o;n.push([qm.keyword,s],[qm.params,typeof e=="function"?e(t):e||(0,Cr._)`{}`]),c.messages&&n.push([qm.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([qm.schema,a],[qm.parentSchema,(0,Cr._)`${l}${d}`],[ia.default.data,i]),u&&n.push([qm.propertyName,u])}});var uEe=E(fy=>{"use strict";Object.defineProperty(fy,"__esModule",{value:!0});fy.boolOrEmptySchema=fy.topBoolOrEmptySchema=void 0;var APt=p_(),yPt=Et(),xPt=Zo(),bPt={message:"boolean schema is false"};function EPt(t){let{gen:e,schema:r,validateName:n}=t;r===!1?cEe(t,!1):typeof r=="object"&&r.$async===!0?e.return(xPt.default.data):(e.assign((0,yPt._)`${n}.errors`,null),e.return(!0))}fy.topBoolOrEmptySchema=EPt;function _Pt(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),cEe(t)):r.var(e,!0)}fy.boolOrEmptySchema=_Pt;function cEe(t,e){let{gen:r,data:n}=t,s={gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:t};(0,APt.reportError)(s,bPt,void 0,e)}});var OF=E(py=>{"use strict";Object.defineProperty(py,"__esModule",{value:!0});py.getRules=py.isJSONType=void 0;var SPt=["string","number","integer","boolean","null","object","array"],vPt=new Set(SPt);function CPt(t){return typeof t=="string"&&vPt.has(t)}py.isJSONType=CPt;function IPt(){let t={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...t,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},t.number,t.string,t.array,t.object],post:{rules:[]},all:{},keywords:{}}}py.getRules=IPt});var PF=E(Cp=>{"use strict";Object.defineProperty(Cp,"__esModule",{value:!0});Cp.shouldUseRule=Cp.shouldUseGroup=Cp.schemaHasRulesForType=void 0;function TPt({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&lEe(t,n)}Cp.schemaHasRulesForType=TPt;function lEe(t,e){return e.rules.some(r=>dEe(t,r))}Cp.shouldUseGroup=lEe;function dEe(t,e){var r;return t[e.keyword]!==void 0||((r=e.definition.implements)===null||r===void 0?void 0:r.some(n=>t[n]!==void 0))}Cp.shouldUseRule=dEe});var m_=E(ki=>{"use strict";Object.defineProperty(ki,"__esModule",{value:!0});ki.reportTypeError=ki.checkDataTypes=ki.checkDataType=ki.coerceAndCheckDataType=ki.getJSONTypes=ki.getSchemaTypes=ki.DataType=void 0;var wPt=OF(),RPt=PF(),NPt=p_(),Ht=Et(),fEe=Kt(),my;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(my||(ki.DataType=my={}));function OPt(t){let e=pEe(t.type);if(e.includes("null")){if(t.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!e.length&&t.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');t.nullable===!0&&e.push("null")}return e}ki.getSchemaTypes=OPt;function pEe(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(wPt.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}ki.getJSONTypes=pEe;function PPt(t,e){let{gen:r,data:n,opts:s}=t,i=DPt(e,s.coerceTypes),a=e.length>0&&!(i.length===0&&e.length===1&&(0,RPt.schemaHasRulesForType)(t,e[0]));if(a){let o=kF(e,n,s.strictNumbers,my.Wrong);r.if(o,()=>{i.length?kPt(t,e,i):LF(t)})}return a}ki.coerceAndCheckDataType=PPt;var mEe=new Set(["string","number","integer","boolean","null"]);function DPt(t,e){return e?t.filter(r=>mEe.has(r)||e==="array"&&r==="array"):[]}function kPt(t,e,r){let{gen:n,data:s,opts:i}=t,a=n.let("dataType",(0,Ht._)`typeof ${s}`),o=n.let("coerced",(0,Ht._)`undefined`);i.coerceTypes==="array"&&n.if((0,Ht._)`${a} == 'object' && Array.isArray(${s}) && ${s}.length == 1`,()=>n.assign(s,(0,Ht._)`${s}[0]`).assign(a,(0,Ht._)`typeof ${s}`).if(kF(e,s,i.strictNumbers),()=>n.assign(o,s))),n.if((0,Ht._)`${o} !== undefined`);for(let u of r)(mEe.has(u)||u==="array"&&i.coerceTypes==="array")&&c(u);n.else(),LF(t),n.endIf(),n.if((0,Ht._)`${o} !== undefined`,()=>{n.assign(s,o),LPt(t,o)});function c(u){switch(u){case"string":n.elseIf((0,Ht._)`${a} == "number" || ${a} == "boolean"`).assign(o,(0,Ht._)`"" + ${s}`).elseIf((0,Ht._)`${s} === null`).assign(o,(0,Ht._)`""`);return;case"number":n.elseIf((0,Ht._)`${a} == "boolean" || ${s} === null - || (${a} == "string" && ${s} && ${s} == +${s})`).assign(o,(0,Ht._)`+${s}`);return;case"integer":n.elseIf((0,Ht._)`${a} === "boolean" || ${s} === null - || (${a} === "string" && ${s} && ${s} == +${s} && !(${s} % 1))`).assign(o,(0,Ht._)`+${s}`);return;case"boolean":n.elseIf((0,Ht._)`${s} === "false" || ${s} === 0 || ${s} === null`).assign(o,!1).elseIf((0,Ht._)`${s} === "true" || ${s} === 1`).assign(o,!0);return;case"null":n.elseIf((0,Ht._)`${s} === "" || ${s} === 0 || ${s} === false`),n.assign(o,null);return;case"array":n.elseIf((0,Ht._)`${a} === "string" || ${a} === "number" - || ${a} === "boolean" || ${s} === null`).assign(o,(0,Ht._)`[${s}]`)}}}function LPt({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,Ht._)`${e} !== undefined`,()=>t.assign((0,Ht._)`${e}[${r}]`,n))}function DF(t,e,r,n=my.Correct){let s=n===my.Correct?Ht.operators.EQ:Ht.operators.NEQ,i;switch(t){case"null":return(0,Ht._)`${e} ${s} null`;case"array":i=(0,Ht._)`Array.isArray(${e})`;break;case"object":i=(0,Ht._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":i=a((0,Ht._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":i=a();break;default:return(0,Ht._)`typeof ${e} ${s} ${t}`}return n===my.Correct?i:(0,Ht.not)(i);function a(o=Ht.nil){return(0,Ht.and)((0,Ht._)`typeof ${e} == "number"`,o,r?(0,Ht._)`isFinite(${e})`:Ht.nil)}}ki.checkDataType=DF;function kF(t,e,r,n){if(t.length===1)return DF(t[0],e,r,n);let s,i=(0,fEe.toHash)(t);if(i.array&&i.object){let a=(0,Ht._)`typeof ${e} != "object"`;s=i.null?a:(0,Ht._)`!${e} || ${a}`,delete i.null,delete i.array,delete i.object}else s=Ht.nil;i.number&&delete i.integer;for(let a in i)s=(0,Ht.and)(s,DF(a,e,r,n));return s}ki.checkDataTypes=kF;var BPt={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,Ht._)`{type: ${t}}`:(0,Ht._)`{type: ${e}}`};function LF(t){let e=MPt(t);(0,NPt.reportError)(e,BPt)}ki.reportTypeError=LF;function MPt(t){let{gen:e,data:r,schema:n}=t,s=(0,fEe.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:s,schemaValue:s,parentSchema:n,params:{},it:t}}});var gEe=E(fO=>{"use strict";Object.defineProperty(fO,"__esModule",{value:!0});fO.assignDefaults=void 0;var hy=Et(),WPt=Kt();function $Pt(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let s in r)hEe(t,s,r[s].default);else e==="array"&&Array.isArray(n)&&n.forEach((s,i)=>hEe(t,i,s.default))}fO.assignDefaults=$Pt;function hEe(t,e,r){let{gen:n,compositeRule:s,data:i,opts:a}=t;if(r===void 0)return;let o=(0,hy._)`${i}${(0,hy.getProperty)(e)}`;if(s){(0,WPt.checkStrictMode)(t,`default is ignored for: ${o}`);return}let c=(0,hy._)`${o} === undefined`;a.useDefaults==="empty"&&(c=(0,hy._)`${c} || ${o} === null || ${o} === ""`),n.if(c,(0,hy._)`${o} = ${(0,hy.stringify)(r)}`)}});var di=E(en=>{"use strict";Object.defineProperty(en,"__esModule",{value:!0});en.validateUnion=en.validateArray=en.usePattern=en.callValidateCode=en.schemaProperties=en.allSchemaProperties=en.noPropertyInData=en.propertyInData=en.isOwnProperty=en.hasPropFunc=en.reportMissingProp=en.checkMissingProp=en.checkReportMissingProp=void 0;var Pn=Et(),BF=Kt(),Ip=Zo(),FPt=Kt();function UPt(t,e){let{gen:r,data:n,it:s}=t;r.if(WF(r,n,e,s.opts.ownProperties),()=>{t.setParams({missingProperty:(0,Pn._)`${e}`},!0),t.error()})}en.checkReportMissingProp=UPt;function qPt({gen:t,data:e,it:{opts:r}},n,s){return(0,Pn.or)(...n.map(i=>(0,Pn.and)(WF(t,e,i,r.ownProperties),(0,Pn._)`${s} = ${i}`)))}en.checkMissingProp=qPt;function jPt(t,e){t.setParams({missingProperty:e},!0),t.error()}en.reportMissingProp=jPt;function AEe(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,Pn._)`Object.prototype.hasOwnProperty`})}en.hasPropFunc=AEe;function MF(t,e,r){return(0,Pn._)`${AEe(t)}.call(${e}, ${r})`}en.isOwnProperty=MF;function HPt(t,e,r,n){let s=(0,Pn._)`${e}${(0,Pn.getProperty)(r)} !== undefined`;return n?(0,Pn._)`${s} && ${MF(t,e,r)}`:s}en.propertyInData=HPt;function WF(t,e,r,n){let s=(0,Pn._)`${e}${(0,Pn.getProperty)(r)} === undefined`;return n?(0,Pn.or)(s,(0,Pn.not)(MF(t,e,r))):s}en.noPropertyInData=WF;function yEe(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}en.allSchemaProperties=yEe;function QPt(t,e){return yEe(e).filter(r=>!(0,BF.alwaysValidSchema)(t,e[r]))}en.schemaProperties=QPt;function GPt({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:s,errorPath:i},it:a},o,c,u){let l=u?(0,Pn._)`${t}, ${e}, ${n}${s}`:e,d=[[Ip.default.instancePath,(0,Pn.strConcat)(Ip.default.instancePath,i)],[Ip.default.parentData,a.parentData],[Ip.default.parentDataProperty,a.parentDataProperty],[Ip.default.rootData,Ip.default.rootData]];a.opts.dynamicRef&&d.push([Ip.default.dynamicAnchors,Ip.default.dynamicAnchors]);let f=(0,Pn._)`${l}, ${r.object(...d)}`;return c!==Pn.nil?(0,Pn._)`${o}.call(${c}, ${f})`:(0,Pn._)`${o}(${f})`}en.callValidateCode=GPt;var VPt=(0,Pn._)`new RegExp`;function zPt({gen:t,it:{opts:e}},r){let n=e.unicodeRegExp?"u":"",{regExp:s}=e.code,i=s(r,n);return t.scopeValue("pattern",{key:i.toString(),ref:i,code:(0,Pn._)`${s.code==="new RegExp"?VPt:(0,FPt.useFunc)(t,s)}(${r}, ${n})`})}en.usePattern=zPt;function KPt(t){let{gen:e,data:r,keyword:n,it:s}=t,i=e.name("valid");if(s.allErrors){let o=e.let("valid",!0);return a(()=>e.assign(o,!1)),o}return e.var(i,!0),a(()=>e.break()),i;function a(o){let c=e.const("len",(0,Pn._)`${r}.length`);e.forRange("i",0,c,u=>{t.subschema({keyword:n,dataProp:u,dataPropType:BF.Type.Num},i),e.if((0,Pn.not)(i),o)})}}en.validateArray=KPt;function YPt(t){let{gen:e,schema:r,keyword:n,it:s}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(c=>(0,BF.alwaysValidSchema)(s,c))&&!s.opts.unevaluated)return;let a=e.let("valid",!1),o=e.name("_valid");e.block(()=>r.forEach((c,u)=>{let l=t.subschema({keyword:n,schemaProp:u,compositeRule:!0},o);e.assign(a,(0,Pn._)`${a} || ${o}`),t.mergeValidEvaluated(l,o)||e.if((0,Pn.not)(a))})),t.result(a,()=>t.reset(),()=>t.error(!0))}en.validateUnion=YPt});var EEe=E(Ku=>{"use strict";Object.defineProperty(Ku,"__esModule",{value:!0});Ku.validateKeywordUsage=Ku.validSchemaType=Ku.funcKeywordCode=Ku.macroKeywordCode=void 0;var aa=Et(),jm=Zo(),JPt=di(),XPt=p_();function ZPt(t,e){let{gen:r,keyword:n,schema:s,parentSchema:i,it:a}=t,o=e.macro.call(a.self,s,i,a),c=bEe(r,n,o);a.opts.validateSchema!==!1&&a.self.validateSchema(o,!0);let u=r.name("valid");t.subschema({schema:o,schemaPath:aa.nil,errSchemaPath:`${a.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}Ku.macroKeywordCode=ZPt;function e3t(t,e){var r;let{gen:n,keyword:s,schema:i,parentSchema:a,$data:o,it:c}=t;r3t(c,e);let u=!o&&e.compile?e.compile.call(c.self,i,a,c):e.validate,l=bEe(n,s,u),d=n.let("valid");t.block$data(d,f),t.ok((r=e.valid)!==null&&r!==void 0?r:d);function f(){if(e.errors===!1)h(),e.modifying&&xEe(t),A(()=>t.error());else{let g=e.async?p():m();e.modifying&&xEe(t),A(()=>t3t(t,g))}}function p(){let g=n.let("ruleErrs",null);return n.try(()=>h((0,aa._)`await `),b=>n.assign(d,!1).if((0,aa._)`${b} instanceof ${c.ValidationError}`,()=>n.assign(g,(0,aa._)`${b}.errors`),()=>n.throw(b))),g}function m(){let g=(0,aa._)`${l}.errors`;return n.assign(g,null),h(aa.nil),g}function h(g=e.async?(0,aa._)`await `:aa.nil){let b=c.opts.passContext?jm.default.this:jm.default.self,y=!("compile"in e&&!o||e.schema===!1);n.assign(d,(0,aa._)`${g}${(0,JPt.callValidateCode)(t,l,b,y)}`,e.modifying)}function A(g){var b;n.if((0,aa.not)((b=e.valid)!==null&&b!==void 0?b:d),g)}}Ku.funcKeywordCode=e3t;function xEe(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,aa._)`${n.parentData}[${n.parentDataProperty}]`))}function t3t(t,e){let{gen:r}=t;r.if((0,aa._)`Array.isArray(${e})`,()=>{r.assign(jm.default.vErrors,(0,aa._)`${jm.default.vErrors} === null ? ${e} : ${jm.default.vErrors}.concat(${e})`).assign(jm.default.errors,(0,aa._)`${jm.default.vErrors}.length`),(0,XPt.extendErrors)(t)},()=>t.error())}function r3t({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function bEe(t,e,r){if(r===void 0)throw new Error(`keyword "${e}" failed to compile`);return t.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,aa.stringify)(r)})}function n3t(t,e,r=!1){return!e.length||e.some(n=>n==="array"?Array.isArray(t):n==="object"?t&&typeof t=="object"&&!Array.isArray(t):typeof t==n||r&&typeof t>"u")}Ku.validSchemaType=n3t;function s3t({schema:t,opts:e,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(t,o)))throw new Error(`parent schema must have dependencies of ${i}: ${a.join(",")}`);if(s.validateSchema&&!s.validateSchema(t[i])){let c=`keyword "${i}" value is invalid at path "${n}": `+r.errorsText(s.validateSchema.errors);if(e.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}Ku.validateKeywordUsage=s3t});var SEe=E(Tp=>{"use strict";Object.defineProperty(Tp,"__esModule",{value:!0});Tp.extendSubschemaMode=Tp.extendSubschemaData=Tp.getSubschema=void 0;var Yu=Et(),_Ee=Kt();function i3t(t,{keyword:e,schemaProp:r,schema:n,schemaPath:s,errSchemaPath:i,topSchemaRef:a}){if(e!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(e!==void 0){let o=t.schema[e];return r===void 0?{schema:o,schemaPath:(0,Yu._)`${t.schemaPath}${(0,Yu.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:o[r],schemaPath:(0,Yu._)`${t.schemaPath}${(0,Yu.getProperty)(e)}${(0,Yu.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,_Ee.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')}Tp.getSubschema=i3t;function a3t(t,e,{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}=e;if(r!==void 0){let{errorPath:u,dataPathArr:l,opts:d}=e,f=o.let("data",(0,Yu._)`${e.data}${(0,Yu.getProperty)(r)}`,!0);c(f),t.errorPath=(0,Yu.str)`${u}${(0,_Ee.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,Yu._)`${r}`,t.dataPathArr=[...l,t.parentDataProperty]}if(s!==void 0){let u=s instanceof Yu.Name?s:o.let("data",s,!0);c(u),a!==void 0&&(t.propertyName=a)}i&&(t.dataTypes=i);function c(u){t.data=u,t.dataLevel=e.dataLevel+1,t.dataTypes=[],e.definedProperties=new Set,t.parentData=e.data,t.dataNames=[...e.dataNames,u]}}Tp.extendSubschemaData=a3t;function o3t(t,{jtdDiscriminator:e,jtdMetadata:r,compositeRule:n,createErrors:s,allErrors:i}){n!==void 0&&(t.compositeRule=n),s!==void 0&&(t.createErrors=s),i!==void 0&&(t.allErrors=i),t.jtdDiscriminator=e,t.jtdMetadata=r}Tp.extendSubschemaMode=o3t});var CEe=E((Ekr,vEe)=>{"use strict";var wp=vEe.exports=function(t,e,r){typeof e=="function"&&(r=e,e={}),r=e.cb||r;var n=typeof r=="function"?r:r.pre||function(){},s=r.post||function(){};pO(e,n,s,t,"",t)};wp.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};wp.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};wp.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};wp.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 pO(t,e,r,n,s,i,a,o,c,u){if(n&&typeof n=="object"&&!Array.isArray(n)){e(n,s,i,a,o,c,u);for(var l in n){var d=n[l];if(Array.isArray(d)){if(l in wp.arrayKeywords)for(var f=0;f{"use strict";Object.defineProperty(Wa,"__esModule",{value:!0});Wa.getSchemaRefs=Wa.resolveUrl=Wa.normalizeId=Wa._getFullPath=Wa.getFullPath=Wa.inlineRef=void 0;var u3t=Kt(),l3t=Go(),d3t=CEe(),f3t=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function p3t(t,e=!0){return typeof t=="boolean"?!0:e===!0?!$F(t):e?IEe(t)<=e:!1}Wa.inlineRef=p3t;var m3t=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function $F(t){for(let e in t){if(m3t.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some($F)||typeof r=="object"&&$F(r))return!0}return!1}function IEe(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!f3t.has(r)&&(typeof t[r]=="object"&&(0,u3t.eachItem)(t[r],n=>e+=IEe(n)),e===1/0))return 1/0}return e}function TEe(t,e="",r){r!==!1&&(e=gy(e));let n=t.parse(e);return wEe(t,n)}Wa.getFullPath=TEe;function wEe(t,e){return t.serialize(e).split("#")[0]+"#"}Wa._getFullPath=wEe;var h3t=/#\/?$/;function gy(t){return t?t.replace(h3t,""):""}Wa.normalizeId=gy;function g3t(t,e,r){return r=gy(r),t.resolve(e,r)}Wa.resolveUrl=g3t;var A3t=/^[a-z_][-a-z0-9._]*$/i;function y3t(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,s=gy(t[r]||e),i={"":s},a=TEe(n,s,!1),o={},c=new Set;return d3t(t,{allKeys:!0},(d,f,p,m)=>{if(m===void 0)return;let h=a+f,A=i[m];typeof d[r]=="string"&&(A=g.call(this,d[r])),b.call(this,d.$anchor),b.call(this,d.$dynamicAnchor),i[f]=A;function g(y){let x=this.opts.uriResolver.resolve;if(y=gy(A?x(A,y):y),c.has(y))throw l(y);c.add(y);let v=this.refs[y];return typeof v=="string"&&(v=this.refs[v]),typeof v=="object"?u(d,v.schema,y):y!==gy(h)&&(y[0]==="#"?(u(d,o[y],y),o[y]=d):this.refs[y]=h),y}function b(y){if(typeof y=="string"){if(!A3t.test(y))throw new Error(`invalid anchor "${y}"`);g.call(this,`#${y}`)}}}),o;function u(d,f,p){if(f!==void 0&&!l3t(d,f))throw l(p)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}Wa.getSchemaRefs=y3t});var Ay=E(Rp=>{"use strict";Object.defineProperty(Rp,"__esModule",{value:!0});Rp.getData=Rp.KeywordCxt=Rp.validateFunctionCode=void 0;var DEe=uEe(),REe=m_(),UF=PF(),mO=m_(),x3t=gEe(),A_=EEe(),FF=SEe(),at=Et(),Nt=Zo(),b3t=h_(),bd=Kt(),g_=p_();function E3t(t){if(BEe(t)&&(MEe(t),LEe(t))){v3t(t);return}kEe(t,()=>(0,DEe.topBoolOrEmptySchema)(t))}Rp.validateFunctionCode=E3t;function kEe({gen:t,validateName:e,schema:r,schemaEnv:n,opts:s},i){s.code.es5?t.func(e,(0,at._)`${Nt.default.data}, ${Nt.default.valCxt}`,n.$async,()=>{t.code((0,at._)`"use strict"; ${NEe(r,s)}`),S3t(t,s),t.code(i)}):t.func(e,(0,at._)`${Nt.default.data}, ${_3t(s)}`,n.$async,()=>t.code(NEe(r,s)).code(i))}function _3t(t){return(0,at._)`{${Nt.default.instancePath}="", ${Nt.default.parentData}, ${Nt.default.parentDataProperty}, ${Nt.default.rootData}=${Nt.default.data}${t.dynamicRef?(0,at._)`, ${Nt.default.dynamicAnchors}={}`:at.nil}}={}`}function S3t(t,e){t.if(Nt.default.valCxt,()=>{t.var(Nt.default.instancePath,(0,at._)`${Nt.default.valCxt}.${Nt.default.instancePath}`),t.var(Nt.default.parentData,(0,at._)`${Nt.default.valCxt}.${Nt.default.parentData}`),t.var(Nt.default.parentDataProperty,(0,at._)`${Nt.default.valCxt}.${Nt.default.parentDataProperty}`),t.var(Nt.default.rootData,(0,at._)`${Nt.default.valCxt}.${Nt.default.rootData}`),e.dynamicRef&&t.var(Nt.default.dynamicAnchors,(0,at._)`${Nt.default.valCxt}.${Nt.default.dynamicAnchors}`)},()=>{t.var(Nt.default.instancePath,(0,at._)`""`),t.var(Nt.default.parentData,(0,at._)`undefined`),t.var(Nt.default.parentDataProperty,(0,at._)`undefined`),t.var(Nt.default.rootData,Nt.default.data),e.dynamicRef&&t.var(Nt.default.dynamicAnchors,(0,at._)`{}`)})}function v3t(t){let{schema:e,opts:r,gen:n}=t;kEe(t,()=>{r.$comment&&e.$comment&&$Ee(t),R3t(t),n.let(Nt.default.vErrors,null),n.let(Nt.default.errors,0),r.unevaluated&&C3t(t),WEe(t),P3t(t)})}function C3t(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,at._)`${r}.evaluated`),e.if((0,at._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,at._)`${t.evaluated}.props`,(0,at._)`undefined`)),e.if((0,at._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,at._)`${t.evaluated}.items`,(0,at._)`undefined`))}function NEe(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,at._)`/*# sourceURL=${r} */`:at.nil}function I3t(t,e){if(BEe(t)&&(MEe(t),LEe(t))){T3t(t,e);return}(0,DEe.boolOrEmptySchema)(t,e)}function LEe({schema:t,self:e}){if(typeof t=="boolean")return!t;for(let r in t)if(e.RULES.all[r])return!0;return!1}function BEe(t){return typeof t.schema!="boolean"}function T3t(t,e){let{schema:r,gen:n,opts:s}=t;s.$comment&&r.$comment&&$Ee(t),N3t(t),O3t(t);let i=n.const("_errs",Nt.default.errors);WEe(t,i),n.var(e,(0,at._)`${i} === ${Nt.default.errors}`)}function MEe(t){(0,bd.checkUnknownRules)(t),w3t(t)}function WEe(t,e){if(t.opts.jtd)return OEe(t,[],!1,e);let r=(0,REe.getSchemaTypes)(t.schema),n=(0,REe.coerceAndCheckDataType)(t,r);OEe(t,r,!n,e)}function w3t(t){let{schema:e,errSchemaPath:r,opts:n,self:s}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,bd.schemaHasRulesButRef)(e,s.RULES)&&s.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function R3t(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,bd.checkStrictMode)(t,"default is ignored in the schema root")}function N3t(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,b3t.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function O3t(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function $Ee({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:s}){let i=r.$comment;if(s.$comment===!0)t.code((0,at._)`${Nt.default.self}.logger.log(${i})`);else if(typeof s.$comment=="function"){let a=(0,at.str)`${n}/$comment`,o=t.scopeValue("root",{ref:e.root});t.code((0,at._)`${Nt.default.self}.opts.$comment(${i}, ${a}, ${o}.schema)`)}}function P3t(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:s,opts:i}=t;r.$async?e.if((0,at._)`${Nt.default.errors} === 0`,()=>e.return(Nt.default.data),()=>e.throw((0,at._)`new ${s}(${Nt.default.vErrors})`)):(e.assign((0,at._)`${n}.errors`,Nt.default.vErrors),i.unevaluated&&D3t(t),e.return((0,at._)`${Nt.default.errors} === 0`))}function D3t({gen:t,evaluated:e,props:r,items:n}){r instanceof at.Name&&t.assign((0,at._)`${e}.props`,r),n instanceof at.Name&&t.assign((0,at._)`${e}.items`,n)}function OEe(t,e,r,n){let{gen:s,schema:i,data:a,allErrors:o,opts:c,self:u}=t,{RULES:l}=u;if(i.$ref&&(c.ignoreKeywordsWithRef||!(0,bd.schemaHasRulesButRef)(i,l))){s.block(()=>UEe(t,"$ref",l.all.$ref.definition));return}c.jtd||k3t(t,e),s.block(()=>{for(let f of l.rules)d(f);d(l.post)});function d(f){(0,UF.shouldUseGroup)(i,f)&&(f.type?(s.if((0,mO.checkDataType)(f.type,a,c.strictNumbers)),PEe(t,f),e.length===1&&e[0]===f.type&&r&&(s.else(),(0,mO.reportTypeError)(t)),s.endIf()):PEe(t,f),o||s.if((0,at._)`${Nt.default.errors} === ${n||0}`))}}function PEe(t,e){let{gen:r,schema:n,opts:{useDefaults:s}}=t;s&&(0,x3t.assignDefaults)(t,e.type),r.block(()=>{for(let i of e.rules)(0,UF.shouldUseRule)(n,i)&&UEe(t,i.keyword,i.definition,e.type)})}function k3t(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(L3t(t,e),t.opts.allowUnionTypes||B3t(t,e),M3t(t,t.dataTypes))}function L3t(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{FEe(t.dataTypes,r)||qF(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),$3t(t,e)}}function B3t(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&qF(t,"use allowUnionTypes to allow union type keyword")}function M3t(t,e){let r=t.self.RULES.all;for(let n in r){let s=r[n];if(typeof s=="object"&&(0,UF.shouldUseRule)(t.schema,s)){let{type:i}=s.definition;i.length&&!i.some(a=>W3t(e,a))&&qF(t,`missing type "${i.join(",")}" for keyword "${n}"`)}}}function W3t(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function FEe(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function $3t(t,e){let r=[];for(let n of t.dataTypes)FEe(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function qF(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,bd.checkStrictMode)(t,e,t.opts.strictTypes)}var hO=class{constructor(e,r,n){if((0,A_.validateKeywordUsage)(e,r,n),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=n,this.data=e.data,this.schema=e.schema[n],this.$data=r.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,bd.schemaRefOrVal)(e,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=e.schema,this.params={},this.it=e,this.def=r,this.$data)this.schemaCode=e.gen.const("vSchema",qEe(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,A_.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=e.gen.const("_errs",Nt.default.errors))}result(e,r,n){this.failResult((0,at.not)(e),r,n)}failResult(e,r,n){this.gen.if(e),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(e,r){this.failResult((0,at.not)(e),void 0,r)}fail(e){if(e===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(e),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(e){if(!this.$data)return this.fail(e);let{schemaCode:r}=this;this.fail((0,at._)`${r} !== undefined && (${(0,at.or)(this.invalid$data(),e)})`)}error(e,r,n){if(r){this.setParams(r),this._error(e,n),this.setParams({});return}this._error(e,n)}_error(e,r){(e?g_.reportExtraError:g_.reportError)(this,this.def.error,r)}$dataError(){(0,g_.reportError)(this,this.def.$dataError||g_.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,g_.resetErrorsCount)(this.gen,this.errsCount)}ok(e){this.allErrors||this.gen.if(e)}setParams(e,r){r?Object.assign(this.params,e):this.params=e}block$data(e,r,n=at.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=at.nil,r=at.nil){if(!this.$data)return;let{gen:n,schemaCode:s,schemaType:i,def:a}=this;n.if((0,at.or)((0,at._)`${s} === undefined`,r)),e!==at.nil&&n.assign(e,!0),(i.length||a.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==at.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:s,it:i}=this;return(0,at.or)(a(),o());function a(){if(n.length){if(!(r instanceof at.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,at._)`${(0,mO.checkDataTypes)(c,r,i.opts.strictNumbers,mO.DataType.Wrong)}`}return at.nil}function o(){if(s.validateSchema){let c=e.scopeValue("validate$data",{ref:s.validateSchema});return(0,at._)`!${c}(${r})`}return at.nil}}subschema(e,r){let n=(0,FF.getSubschema)(this.it,e);(0,FF.extendSubschemaData)(n,this.it,e),(0,FF.extendSubschemaMode)(n,e);let s={...this.it,...n,items:void 0,props:void 0};return I3t(s,r),s}mergeEvaluated(e,r){let{it:n,gen:s}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=bd.mergeEvaluated.props(s,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=bd.mergeEvaluated.items(s,e.items,n.items,r)))}mergeValidEvaluated(e,r){let{it:n,gen:s}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return s.if(r,()=>this.mergeEvaluated(e,at.Name)),!0}};Rp.KeywordCxt=hO;function UEe(t,e,r,n){let s=new hO(t,r,e);"code"in r?r.code(s,n):s.$data&&r.validate?(0,A_.funcKeywordCode)(s,r):"macro"in r?(0,A_.macroKeywordCode)(s,r):(r.compile||r.validate)&&(0,A_.funcKeywordCode)(s,r)}var F3t=/^\/(?:[^~]|~0|~1)*$/,U3t=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function qEe(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let s,i;if(t==="")return Nt.default.rootData;if(t[0]==="/"){if(!F3t.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);s=t,i=Nt.default.rootData}else{let u=U3t.exec(t);if(!u)throw new Error(`Invalid JSON-pointer: ${t}`);let l=+u[1];if(s=u[2],s==="#"){if(l>=e)throw new Error(c("property/index",l));return n[e-l]}if(l>e)throw new Error(c("data",l));if(i=r[e-l],!s)return i}let a=i,o=s.split("/");for(let u of o)u&&(i=(0,at._)`${i}${(0,at.getProperty)((0,bd.unescapeJsonPointer)(u))}`,a=(0,at._)`${a} && ${i}`);return a;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${e}`}}Rp.getData=qEe});var y_=E(HF=>{"use strict";Object.defineProperty(HF,"__esModule",{value:!0});var jF=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};HF.default=jF});var Ed=E(VF=>{"use strict";Object.defineProperty(VF,"__esModule",{value:!0});var QF=h_(),GF=class extends Error{constructor(e,r,n,s){super(s||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,QF.resolveUrl)(e,r,n),this.missingSchema=(0,QF.normalizeId)((0,QF.getFullPath)(e,this.missingRef))}};VF.default=GF});var Qm=E(ec=>{"use strict";Object.defineProperty(ec,"__esModule",{value:!0});ec.resolveSchema=ec.getCompilingSchema=ec.resolveRef=ec.compileSchema=ec.SchemaEnv=void 0;var Gc=Et(),q3t=y_(),Hm=Zo(),Vc=h_(),jEe=Kt(),j3t=Ay(),yy=class{constructor(e){var r;this.refs={},this.dynamicAnchors={};let n;typeof e.schema=="object"&&(n=e.schema),this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=(r=e.baseId)!==null&&r!==void 0?r:(0,Vc.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};ec.SchemaEnv=yy;function KF(t){let e=HEe.call(this,t);if(e)return e;let r=(0,Vc.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:s}=this.opts.code,{ownProperties:i}=this.opts,a=new Gc.CodeGen(this.scope,{es5:n,lines:s,ownProperties:i}),o;t.$async&&(o=a.scopeValue("Error",{ref:q3t.default,code:(0,Gc._)`require("ajv/dist/runtime/validation_error").default`}));let c=a.scopeName("validate");t.validateName=c;let u={gen:a,allErrors:this.opts.allErrors,data:Hm.default.data,parentData:Hm.default.parentData,parentDataProperty:Hm.default.parentDataProperty,dataNames:[Hm.default.data],dataPathArr:[Gc.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:a.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,Gc.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:o,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:Gc.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,Gc._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,j3t.validateFunctionCode)(u),a.optimize(this.opts.code.optimize);let d=a.toString();l=`${a.scopeRefs(Hm.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,t));let p=new Function(`${Hm.default.self}`,`${Hm.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:p}),p.errors=null,p.schema=t.schema,p.schemaEnv=t,t.$async&&(p.$async=!0),this.opts.code.source===!0&&(p.source={validateName:c,validateCode:d,scopeValues:a._values}),this.opts.unevaluated){let{props:m,items:h}=u;p.evaluated={props:m instanceof Gc.Name?void 0:m,items:h instanceof Gc.Name?void 0:h,dynamicProps:m instanceof Gc.Name,dynamicItems:h instanceof Gc.Name},p.source&&(p.source.evaluated=(0,Gc.stringify)(p.evaluated))}return t.validate=p,t}catch(d){throw delete t.validate,delete t.validateName,l&&this.logger.error("Error compiling schema, function code:",l),d}finally{this._compilations.delete(t)}}ec.compileSchema=KF;function H3t(t,e,r){var n;r=(0,Vc.resolveUrl)(this.opts.uriResolver,e,r);let s=t.refs[r];if(s)return s;let i=V3t.call(this,t,r);if(i===void 0){let a=(n=t.localRefs)===null||n===void 0?void 0:n[r],{schemaId:o}=this.opts;a&&(i=new yy({schema:a,schemaId:o,root:t,baseId:e}))}if(i!==void 0)return t.refs[r]=Q3t.call(this,i)}ec.resolveRef=H3t;function Q3t(t){return(0,Vc.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:KF.call(this,t)}function HEe(t){for(let e of this._compilations)if(G3t(e,t))return e}ec.getCompilingSchema=HEe;function G3t(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function V3t(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||gO.call(this,t,e)}function gO(t,e){let r=this.opts.uriResolver.parse(e),n=(0,Vc._getFullPath)(this.opts.uriResolver,r),s=(0,Vc.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===s)return zF.call(this,r,t);let i=(0,Vc.normalizeId)(n),a=this.refs[i]||this.schemas[i];if(typeof a=="string"){let o=gO.call(this,t,a);return typeof o?.schema!="object"?void 0:zF.call(this,r,o)}if(typeof a?.schema=="object"){if(a.validate||KF.call(this,a),i===(0,Vc.normalizeId)(e)){let{schema:o}=a,{schemaId:c}=this.opts,u=o[c];return u&&(s=(0,Vc.resolveUrl)(this.opts.uriResolver,s,u)),new yy({schema:o,schemaId:c,root:t,baseId:s})}return zF.call(this,r,a)}}ec.resolveSchema=gO;var z3t=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function zF(t,{baseId:e,schema:r,root:n}){var s;if(((s=t.fragment)===null||s===void 0?void 0:s[0])!=="/")return;for(let o of t.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let c=r[(0,jEe.unescapeFragment)(o)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!z3t.has(o)&&u&&(e=(0,Vc.resolveUrl)(this.opts.uriResolver,e,u))}let i;if(typeof r!="boolean"&&r.$ref&&!(0,jEe.schemaHasRulesButRef)(r,this.RULES)){let o=(0,Vc.resolveUrl)(this.opts.uriResolver,e,r.$ref);i=gO.call(this,n,o)}let{schemaId:a}=this.opts;if(i=i||new yy({schema:r,schemaId:a,root:n,baseId:e}),i.schema!==i.root.schema)return i}});var QEe=E((Tkr,K3t)=>{K3t.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 JF=E((wkr,KEe)=>{"use strict";var Y3t=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),VEe=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 YF(t){let e="",r=0,n=0;for(n=0;n=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";e+=t[n];break}for(n+=1;n=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";e+=t[n]}return e}var J3t=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function GEe(t){return t.length=0,!0}function X3t(t,e,r){if(t.length){let n=YF(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function Z3t(t){let e=0,r={error:!1,address:"",zone:""},n=[],s=[],i=!1,a=!1,o=X3t;for(let c=0;c7){r.error=!0;break}c>0&&t[c-1]===":"&&(i=!0),n.push(":");continue}else if(u==="%"){if(!o(s,n,r))break;o=GEe}else{s.push(u);continue}}return s.length&&(o===GEe?r.zone=s.join(""):a?n.push(s.join("")):n.push(YF(s))),r.address=n.join(""),r}function zEe(t){if(eDt(t,":")<2)return{host:t,isIPV6:!1};let e=Z3t(t);if(e.error)return{host:t,isIPV6:!1};{let r=e.address,n=e.address;return e.zone&&(r+="%"+e.zone,n+="%25"+e.zone),{host:r,isIPV6:!0,escapedHost:n}}}function eDt(t,e){let r=0;for(let n=0;n{"use strict";var{isUUID:sDt}=JF(),iDt=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,aDt=["http","https","ws","wss","urn","urn:uuid"];function oDt(t){return aDt.indexOf(t)!==-1}function XF(t){return t.secure===!0?!0:t.secure===!1?!1:t.scheme?t.scheme.length===3&&(t.scheme[0]==="w"||t.scheme[0]==="W")&&(t.scheme[1]==="s"||t.scheme[1]==="S")&&(t.scheme[2]==="s"||t.scheme[2]==="S"):!1}function YEe(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function JEe(t){let e=String(t.scheme).toLowerCase()==="https";return(t.port===(e?443:80)||t.port==="")&&(t.port=void 0),t.path||(t.path="/"),t}function cDt(t){return t.secure=XF(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function uDt(t){if((t.port===(XF(t)?443:80)||t.port==="")&&(t.port=void 0),typeof t.secure=="boolean"&&(t.scheme=t.secure?"wss":"ws",t.secure=void 0),t.resourceName){let[e,r]=t.resourceName.split("?");t.path=e&&e!=="/"?e:void 0,t.query=r,t.resourceName=void 0}return t.fragment=void 0,t}function lDt(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(iDt);if(r){let n=e.scheme||t.scheme||"urn";t.nid=r[1].toLowerCase(),t.nss=r[2];let s=`${n}:${e.nid||t.nid}`,i=ZF(s);t.path=void 0,i&&(t=i.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function dDt(t,e){if(t.nid===void 0)throw new Error("URN without nid cannot be serialized");let r=e.scheme||t.scheme||"urn",n=t.nid.toLowerCase(),s=`${r}:${e.nid||n}`,i=ZF(s);i&&(t=i.serialize(t,e));let a=t,o=t.nss;return a.path=`${n||e.nid}:${o}`,e.skipEscape=!0,a}function fDt(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!sDt(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function pDt(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var XEe={scheme:"http",domainHost:!0,parse:YEe,serialize:JEe},mDt={scheme:"https",domainHost:XEe.domainHost,parse:YEe,serialize:JEe},AO={scheme:"ws",domainHost:!0,parse:cDt,serialize:uDt},hDt={scheme:"wss",domainHost:AO.domainHost,parse:AO.parse,serialize:AO.serialize},gDt={scheme:"urn",parse:lDt,serialize:dDt,skipNormalize:!0},ADt={scheme:"urn:uuid",parse:fDt,serialize:pDt,skipNormalize:!0},yO={http:XEe,https:mDt,ws:AO,wss:hDt,urn:gDt,"urn:uuid":ADt};Object.setPrototypeOf(yO,null);function ZF(t){return t&&(yO[t]||yO[t.toLowerCase()])||void 0}ZEe.exports={wsIsSecure:XF,SCHEMES:yO,isValidSchemeName:oDt,getSchemeHandler:ZF}});var n1e=E((Nkr,bO)=>{"use strict";var{normalizeIPv6:yDt,removeDotSegments:x_,recomposeAuthority:xDt,normalizeComponentEncoding:xO,isIPv4:bDt,nonSimpleDomain:EDt}=JF(),{SCHEMES:_Dt,getSchemeHandler:t1e}=e1e();function SDt(t,e){return typeof t=="string"?t=Ju(_d(t,e),e):typeof t=="object"&&(t=_d(Ju(t,e),e)),t}function vDt(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},s=r1e(_d(t,n),_d(e,n),n,!0);return n.skipEscape=!0,Ju(s,n)}function r1e(t,e,r,n){let s={};return n||(t=_d(Ju(t,r),r),e=_d(Ju(e,r),r)),r=r||{},!r.tolerant&&e.scheme?(s.scheme=e.scheme,s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=x_(e.path||""),s.query=e.query):(e.userinfo!==void 0||e.host!==void 0||e.port!==void 0?(s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=x_(e.path||""),s.query=e.query):(e.path?(e.path[0]==="/"?s.path=x_(e.path):((t.userinfo!==void 0||t.host!==void 0||t.port!==void 0)&&!t.path?s.path="/"+e.path:t.path?s.path=t.path.slice(0,t.path.lastIndexOf("/")+1)+e.path:s.path=e.path,s.path=x_(s.path)),s.query=e.query):(s.path=t.path,e.query!==void 0?s.query=e.query:s.query=t.query),s.userinfo=t.userinfo,s.host=t.host,s.port=t.port),s.scheme=t.scheme),s.fragment=e.fragment,s}function CDt(t,e,r){return typeof t=="string"?(t=unescape(t),t=Ju(xO(_d(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=Ju(xO(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=Ju(xO(_d(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=Ju(xO(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function Ju(t,e){let r={host:t.host,scheme:t.scheme,userinfo:t.userinfo,port:t.port,path:t.path,query:t.query,nid:t.nid,nss:t.nss,uuid:t.uuid,fragment:t.fragment,reference:t.reference,resourceName:t.resourceName,secure:t.secure,error:""},n=Object.assign({},e),s=[],i=t1e(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=xDt(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=x_(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 IDt=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function _d(t,e){let r=Object.assign({},e),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?t=r.scheme+":"+t:t="//"+t);let i=t.match(IDt);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(bDt(n.host)===!1){let c=yDt(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=t1e(r.scheme||n.scheme);if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&s===!1&&EDt(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)&&(t.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 eU={SCHEMES:_Dt,normalize:SDt,resolve:vDt,resolveComponent:r1e,equal:CDt,serialize:Ju,parse:_d};bO.exports=eU;bO.exports.default=eU;bO.exports.fastUri=eU});var i1e=E(tU=>{"use strict";Object.defineProperty(tU,"__esModule",{value:!0});var s1e=n1e();s1e.code='require("ajv/dist/runtime/uri").default';tU.default=s1e});var sU=E(fi=>{"use strict";Object.defineProperty(fi,"__esModule",{value:!0});fi.CodeGen=fi.Name=fi.nil=fi.stringify=fi.str=fi._=fi.KeywordCxt=void 0;var TDt=Ay();Object.defineProperty(fi,"KeywordCxt",{enumerable:!0,get:function(){return TDt.KeywordCxt}});var xy=Et();Object.defineProperty(fi,"_",{enumerable:!0,get:function(){return xy._}});Object.defineProperty(fi,"str",{enumerable:!0,get:function(){return xy.str}});Object.defineProperty(fi,"stringify",{enumerable:!0,get:function(){return xy.stringify}});Object.defineProperty(fi,"nil",{enumerable:!0,get:function(){return xy.nil}});Object.defineProperty(fi,"Name",{enumerable:!0,get:function(){return xy.Name}});Object.defineProperty(fi,"CodeGen",{enumerable:!0,get:function(){return xy.CodeGen}});var wDt=y_(),l1e=Ed(),RDt=OF(),b_=Qm(),NDt=Et(),E_=h_(),EO=m_(),nU=Kt(),a1e=QEe(),ODt=i1e(),d1e=(t,e)=>new RegExp(t,e);d1e.code="new RegExp";var PDt=["removeAdditional","useDefaults","coerceTypes"],DDt=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),kDt={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."},LDt={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},o1e=200;function BDt(t){var e,r,n,s,i,a,o,c,u,l,d,f,p,m,h,A,g,b,y,x,v,C,R,w,N;let P=t.strict,L=(e=t.code)===null||e===void 0?void 0:e.optimize,M=L===!0||L===void 0?1:L||0,k=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:d1e,B=(s=t.uriResolver)!==null&&s!==void 0?s:ODt.default;return{strictSchema:(a=(i=t.strictSchema)!==null&&i!==void 0?i:P)!==null&&a!==void 0?a:!0,strictNumbers:(c=(o=t.strictNumbers)!==null&&o!==void 0?o:P)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:P)!==null&&l!==void 0?l:"log",strictTuples:(f=(d=t.strictTuples)!==null&&d!==void 0?d:P)!==null&&f!==void 0?f:"log",strictRequired:(m=(p=t.strictRequired)!==null&&p!==void 0?p:P)!==null&&m!==void 0?m:!1,code:t.code?{...t.code,optimize:M,regExp:k}:{optimize:M,regExp:k},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:o1e,loopEnum:(A=t.loopEnum)!==null&&A!==void 0?A:o1e,meta:(g=t.meta)!==null&&g!==void 0?g:!0,messages:(b=t.messages)!==null&&b!==void 0?b:!0,inlineRefs:(y=t.inlineRefs)!==null&&y!==void 0?y:!0,schemaId:(x=t.schemaId)!==null&&x!==void 0?x:"$id",addUsedSchema:(v=t.addUsedSchema)!==null&&v!==void 0?v:!0,validateSchema:(C=t.validateSchema)!==null&&C!==void 0?C:!0,validateFormats:(R=t.validateFormats)!==null&&R!==void 0?R:!0,unicodeRegExp:(w=t.unicodeRegExp)!==null&&w!==void 0?w:!0,int32range:(N=t.int32range)!==null&&N!==void 0?N:!0,uriResolver:B}}var __=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...BDt(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new NDt.ValueScope({scope:{},prefixes:DDt,es5:r,lines:n}),this.logger=qDt(e.logger);let s=e.validateFormats;e.validateFormats=!1,this.RULES=(0,RDt.getRules)(),c1e.call(this,kDt,e,"NOT SUPPORTED"),c1e.call(this,LDt,e,"DEPRECATED","warn"),this._metaOpts=FDt.call(this),e.formats&&WDt.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&$Dt.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),MDt.call(this),e.validateFormats=s}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,s=a1e;n==="id"&&(s={...a1e},s.id=s.$id,delete s.$id),r&&e&&this.addMetaSchema(s,s[n],!1)}defaultMeta(){let{meta:e,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof e=="object"?e[r]||e:void 0}validate(e,r){let n;if(typeof e=="string"){if(n=this.getSchema(e),!n)throw new Error(`no schema with key or ref "${e}"`)}else n=this.compile(e);let s=n(r);return"$async"in n||(this.errors=n.errors),s}compile(e,r){let n=this._addSchema(e,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(e,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,e,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 l1e.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(e,r,n,s=this.opts.validateSchema){if(Array.isArray(e)){for(let a of e)this.addSchema(a,void 0,n,s);return this}let i;if(typeof e=="object"){let{schemaId:a}=this.opts;if(i=e[a],i!==void 0&&typeof i!="string")throw new Error(`schema ${a} must be string`)}return r=(0,E_.normalizeId)(r||i),this._checkUnique(r),this.schemas[r]=this._addSchema(e,n,r,s,!0),this}addMetaSchema(e,r,n=this.opts.validateSchema){return this.addSchema(e,r,!0,n),this}validateSchema(e,r){if(typeof e=="boolean")return!0;let n;if(n=e.$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,e);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(e){let r;for(;typeof(r=u1e.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,s=new b_.SchemaEnv({schema:{},schemaId:n});if(r=b_.resolveSchema.call(this,s,e),!r)return;this.refs[e]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(e){if(e instanceof RegExp)return this._removeAllSchemas(this.schemas,e),this._removeAllSchemas(this.refs,e),this;switch(typeof e){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=u1e.call(this,e);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[e],delete this.refs[e],this}case"object":{let r=e;this._cache.delete(r);let n=e[this.opts.schemaId];return n&&(n=(0,E_.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(e){for(let r of e)this.addKeyword(r);return this}addKeyword(e,r){let n;if(typeof e=="string")n=e,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof e=="object"&&r===void 0){if(r=e,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(HDt.call(this,n,r),!r)return(0,nU.eachItem)(n,i=>rU.call(this,i)),this;GDt.call(this,r);let s={...r,type:(0,EO.getJSONTypes)(r.type),schemaType:(0,EO.getJSONTypes)(r.schemaType)};return(0,nU.eachItem)(n,s.type.length===0?i=>rU.call(this,i,s):i=>s.type.forEach(a=>rU.call(this,i,s,a))),this}getKeyword(e){let r=this.RULES.all[e];return typeof r=="object"?r.definition:!!r}removeKeyword(e){let{RULES:r}=this;delete r.keywords[e],delete r.all[e];for(let n of r.rules){let s=n.rules.findIndex(i=>i.keyword===e);s>=0&&n.rules.splice(s,1)}return this}addFormat(e,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[e]=r,this}errorsText(e=this.errors,{separator:r=", ",dataVar:n="data"}={}){return!e||e.length===0?"No errors":e.map(s=>`${n}${s.instancePath} ${s.message}`).reduce((s,i)=>s+r+i)}$dataMetaSchema(e,r){let n=this.RULES.all;e=JSON.parse(JSON.stringify(e));for(let s of r){let i=s.split("/").slice(1),a=e;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]=f1e(l))}}return e}_removeAllSchemas(e,r){for(let n in e){let s=e[n];(!r||r.test(n))&&(typeof s=="string"?delete e[n]:s&&!s.meta&&(this._cache.delete(s.schema),delete e[n]))}}_addSchema(e,r,n,s=this.opts.validateSchema,i=this.opts.addUsedSchema){let a,{schemaId:o}=this.opts;if(typeof e=="object")a=e[o];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof e!="boolean")throw new Error("schema must be object or boolean")}let c=this._cache.get(e);if(c!==void 0)return c;n=(0,E_.normalizeId)(a||n);let u=E_.getSchemaRefs.call(this,e,n);return c=new b_.SchemaEnv({schema:e,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(e,!0),c}_checkUnique(e){if(this.schemas[e]||this.refs[e])throw new Error(`schema with key or id "${e}" already exists`)}_compileSchemaEnv(e){if(e.meta?this._compileMetaSchema(e):b_.compileSchema.call(this,e),!e.validate)throw new Error("ajv implementation error");return e.validate}_compileMetaSchema(e){let r=this.opts;this.opts=this._metaOpts;try{b_.compileSchema.call(this,e)}finally{this.opts=r}}};__.ValidationError=wDt.default;__.MissingRefError=l1e.default;fi.default=__;function c1e(t,e,r,n="error"){for(let s in t){let i=s;i in e&&this.logger[n](`${r}: option ${s}. ${t[i]}`)}}function u1e(t){return t=(0,E_.normalizeId)(t),this.schemas[t]||this.refs[t]}function MDt(){let t=this.opts.schemas;if(t)if(Array.isArray(t))this.addSchema(t);else for(let e in t)this.addSchema(t[e],e)}function WDt(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function $Dt(t){if(Array.isArray(t)){this.addVocabulary(t);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let e in t){let r=t[e];r.keyword||(r.keyword=e),this.addKeyword(r)}}function FDt(){let t={...this.opts};for(let e of PDt)delete t[e];return t}var UDt={log(){},warn(){},error(){}};function qDt(t){if(t===!1)return UDt;if(t===void 0)return console;if(t.log&&t.warn&&t.error)return t;throw new Error("logger must implement log, warn and error methods")}var jDt=/^[a-z_$][a-z0-9_$:-]*$/i;function HDt(t,e){let{RULES:r}=this;if((0,nU.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!jDt.test(n))throw new Error(`Keyword ${n} has invalid name`)}),!!e&&e.$data&&!("code"in e||"validate"in e))throw new Error('$data keyword must have "code" or "validate" function')}function rU(t,e,r){var n;let s=e?.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[t]=!0,!e)return;let o={keyword:t,definition:{...e,type:(0,EO.getJSONTypes)(e.type),schemaType:(0,EO.getJSONTypes)(e.schemaType)}};e.before?QDt.call(this,a,o,e.before):a.rules.push(o),i.all[t]=o,(n=e.implements)===null||n===void 0||n.forEach(c=>this.addKeyword(c))}function QDt(t,e,r){let n=t.rules.findIndex(s=>s.keyword===r);n>=0?t.rules.splice(n,0,e):(t.rules.push(e),this.logger.warn(`rule ${r} is not defined`))}function GDt(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=f1e(e)),t.validateSchema=this.compile(e,!0))}var VDt={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function f1e(t){return{anyOf:[t,VDt]}}});var p1e=E(iU=>{"use strict";Object.defineProperty(iU,"__esModule",{value:!0});var zDt={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};iU.default=zDt});var aU=E(Gm=>{"use strict";Object.defineProperty(Gm,"__esModule",{value:!0});Gm.callRef=Gm.getValidate=void 0;var KDt=Ed(),m1e=di(),$a=Et(),by=Zo(),h1e=Qm(),_O=Kt(),YDt={keyword:"$ref",schemaType:"string",code(t){let{gen:e,schema:r,it:n}=t,{baseId:s,schemaEnv:i,validateName:a,opts:o,self:c}=n,{root:u}=i;if((r==="#"||r==="#/")&&s===u.baseId)return d();let l=h1e.resolveRef.call(c,u,s,r);if(l===void 0)throw new KDt.default(n.opts.uriResolver,s,r);if(l instanceof h1e.SchemaEnv)return f(l);return p(l);function d(){if(i===u)return SO(t,a,i,i.$async);let m=e.scopeValue("root",{ref:u});return SO(t,(0,$a._)`${m}.validate`,u,u.$async)}function f(m){let h=g1e(t,m);SO(t,h,m,m.$async)}function p(m){let h=e.scopeValue("schema",o.code.source===!0?{ref:m,code:(0,$a.stringify)(m)}:{ref:m}),A=e.name("valid"),g=t.subschema({schema:m,dataTypes:[],schemaPath:$a.nil,topSchemaRef:h,errSchemaPath:r},A);t.mergeEvaluated(g),t.ok(A)}}};function g1e(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,$a._)`${r.scopeValue("wrapper",{ref:e})}.validate`}Gm.getValidate=g1e;function SO(t,e,r,n){let{gen:s,it:i}=t,{allErrors:a,schemaEnv:o,opts:c}=i,u=c.passContext?by.default.this:$a.nil;n?l():d();function l(){if(!o.$async)throw new Error("async schema referenced by sync schema");let m=s.let("valid");s.try(()=>{s.code((0,$a._)`await ${(0,m1e.callValidateCode)(t,e,u)}`),p(e),a||s.assign(m,!0)},h=>{s.if((0,$a._)`!(${h} instanceof ${i.ValidationError})`,()=>s.throw(h)),f(h),a||s.assign(m,!1)}),t.ok(m)}function d(){t.result((0,m1e.callValidateCode)(t,e,u),()=>p(e),()=>f(e))}function f(m){let h=(0,$a._)`${m}.errors`;s.assign(by.default.vErrors,(0,$a._)`${by.default.vErrors} === null ? ${h} : ${by.default.vErrors}.concat(${h})`),s.assign(by.default.errors,(0,$a._)`${by.default.vErrors}.length`)}function p(m){var h;if(!i.opts.unevaluated)return;let A=(h=r?.validate)===null||h===void 0?void 0:h.evaluated;if(i.props!==!0)if(A&&!A.dynamicProps)A.props!==void 0&&(i.props=_O.mergeEvaluated.props(s,A.props,i.props));else{let g=s.var("props",(0,$a._)`${m}.evaluated.props`);i.props=_O.mergeEvaluated.props(s,g,i.props,$a.Name)}if(i.items!==!0)if(A&&!A.dynamicItems)A.items!==void 0&&(i.items=_O.mergeEvaluated.items(s,A.items,i.items));else{let g=s.var("items",(0,$a._)`${m}.evaluated.items`);i.items=_O.mergeEvaluated.items(s,g,i.items,$a.Name)}}}Gm.callRef=SO;Gm.default=YDt});var A1e=E(oU=>{"use strict";Object.defineProperty(oU,"__esModule",{value:!0});var JDt=p1e(),XDt=aU(),ZDt=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",JDt.default,XDt.default];oU.default=ZDt});var y1e=E(cU=>{"use strict";Object.defineProperty(cU,"__esModule",{value:!0});var vO=Et(),Np=vO.operators,CO={maximum:{okStr:"<=",ok:Np.LTE,fail:Np.GT},minimum:{okStr:">=",ok:Np.GTE,fail:Np.LT},exclusiveMaximum:{okStr:"<",ok:Np.LT,fail:Np.GTE},exclusiveMinimum:{okStr:">",ok:Np.GT,fail:Np.LTE}},ekt={message:({keyword:t,schemaCode:e})=>(0,vO.str)`must be ${CO[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,vO._)`{comparison: ${CO[t].okStr}, limit: ${e}}`},tkt={keyword:Object.keys(CO),type:"number",schemaType:"number",$data:!0,error:ekt,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,vO._)`${r} ${CO[e].fail} ${n} || isNaN(${r})`)}};cU.default=tkt});var x1e=E(uU=>{"use strict";Object.defineProperty(uU,"__esModule",{value:!0});var S_=Et(),rkt={message:({schemaCode:t})=>(0,S_.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,S_._)`{multipleOf: ${t}}`},nkt={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:rkt,code(t){let{gen:e,data:r,schemaCode:n,it:s}=t,i=s.opts.multipleOfPrecision,a=e.let("res"),o=i?(0,S_._)`Math.abs(Math.round(${a}) - ${a}) > 1e-${i}`:(0,S_._)`${a} !== parseInt(${a})`;t.fail$data((0,S_._)`(${n} === 0 || (${a} = ${r}/${n}, ${o}))`)}};uU.default=nkt});var E1e=E(lU=>{"use strict";Object.defineProperty(lU,"__esModule",{value:!0});function b1e(t){let e=t.length,r=0,n=0,s;for(;n=55296&&s<=56319&&n{"use strict";Object.defineProperty(dU,"__esModule",{value:!0});var Vm=Et(),skt=Kt(),ikt=E1e(),akt={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,Vm.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,Vm._)`{limit: ${t}}`},okt={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:akt,code(t){let{keyword:e,data:r,schemaCode:n,it:s}=t,i=e==="maxLength"?Vm.operators.GT:Vm.operators.LT,a=s.opts.unicode===!1?(0,Vm._)`${r}.length`:(0,Vm._)`${(0,skt.useFunc)(t.gen,ikt.default)}(${r})`;t.fail$data((0,Vm._)`${a} ${i} ${n}`)}};dU.default=okt});var S1e=E(fU=>{"use strict";Object.defineProperty(fU,"__esModule",{value:!0});var ckt=di(),IO=Et(),ukt={message:({schemaCode:t})=>(0,IO.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,IO._)`{pattern: ${t}}`},lkt={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:ukt,code(t){let{data:e,$data:r,schema:n,schemaCode:s,it:i}=t,a=i.opts.unicodeRegExp?"u":"",o=r?(0,IO._)`(new RegExp(${s}, ${a}))`:(0,ckt.usePattern)(t,n);t.fail$data((0,IO._)`!${o}.test(${e})`)}};fU.default=lkt});var v1e=E(pU=>{"use strict";Object.defineProperty(pU,"__esModule",{value:!0});var v_=Et(),dkt={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,v_.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,v_._)`{limit: ${t}}`},fkt={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:dkt,code(t){let{keyword:e,data:r,schemaCode:n}=t,s=e==="maxProperties"?v_.operators.GT:v_.operators.LT;t.fail$data((0,v_._)`Object.keys(${r}).length ${s} ${n}`)}};pU.default=fkt});var C1e=E(mU=>{"use strict";Object.defineProperty(mU,"__esModule",{value:!0});var C_=di(),I_=Et(),pkt=Kt(),mkt={message:({params:{missingProperty:t}})=>(0,I_.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,I_._)`{missingProperty: ${t}}`},hkt={keyword:"required",type:"object",schemaType:"array",$data:!0,error:mkt,code(t){let{gen:e,schema:r,schemaCode:n,data:s,$data:i,it:a}=t,{opts:o}=a;if(!i&&r.length===0)return;let c=r.length>=o.loopRequired;if(a.allErrors?u():l(),o.strictRequired){let p=t.parentSchema.properties,{definedProperties:m}=t.it;for(let h of r)if(p?.[h]===void 0&&!m.has(h)){let A=a.schemaEnv.baseId+a.errSchemaPath,g=`required property "${h}" is not defined at "${A}" (strictRequired)`;(0,pkt.checkStrictMode)(a,g,a.opts.strictRequired)}}function u(){if(c||i)t.block$data(I_.nil,d);else for(let p of r)(0,C_.checkReportMissingProp)(t,p)}function l(){let p=e.let("missing");if(c||i){let m=e.let("valid",!0);t.block$data(m,()=>f(p,m)),t.ok(m)}else e.if((0,C_.checkMissingProp)(t,r,p)),(0,C_.reportMissingProp)(t,p),e.else()}function d(){e.forOf("prop",n,p=>{t.setParams({missingProperty:p}),e.if((0,C_.noPropertyInData)(e,s,p,o.ownProperties),()=>t.error())})}function f(p,m){t.setParams({missingProperty:p}),e.forOf(p,n,()=>{e.assign(m,(0,C_.propertyInData)(e,s,p,o.ownProperties)),e.if((0,I_.not)(m),()=>{t.error(),e.break()})},I_.nil)}}};mU.default=hkt});var I1e=E(hU=>{"use strict";Object.defineProperty(hU,"__esModule",{value:!0});var T_=Et(),gkt={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,T_.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,T_._)`{limit: ${t}}`},Akt={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:gkt,code(t){let{keyword:e,data:r,schemaCode:n}=t,s=e==="maxItems"?T_.operators.GT:T_.operators.LT;t.fail$data((0,T_._)`${r}.length ${s} ${n}`)}};hU.default=Akt});var TO=E(gU=>{"use strict";Object.defineProperty(gU,"__esModule",{value:!0});var T1e=Go();T1e.code='require("ajv/dist/runtime/equal").default';gU.default=T1e});var w1e=E(yU=>{"use strict";Object.defineProperty(yU,"__esModule",{value:!0});var AU=m_(),pi=Et(),ykt=Kt(),xkt=TO(),bkt={message:({params:{i:t,j:e}})=>(0,pi.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,pi._)`{i: ${t}, j: ${e}}`},Ekt={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:bkt,code(t){let{gen:e,data:r,$data:n,schema:s,parentSchema:i,schemaCode:a,it:o}=t;if(!n&&!s)return;let c=e.let("valid"),u=i.items?(0,AU.getSchemaTypes)(i.items):[];t.block$data(c,l,(0,pi._)`${a} === false`),t.ok(c);function l(){let m=e.let("i",(0,pi._)`${r}.length`),h=e.let("j");t.setParams({i:m,j:h}),e.assign(c,!0),e.if((0,pi._)`${m} > 1`,()=>(d()?f:p)(m,h))}function d(){return u.length>0&&!u.some(m=>m==="object"||m==="array")}function f(m,h){let A=e.name("item"),g=(0,AU.checkDataTypes)(u,A,o.opts.strictNumbers,AU.DataType.Wrong),b=e.const("indices",(0,pi._)`{}`);e.for((0,pi._)`;${m}--;`,()=>{e.let(A,(0,pi._)`${r}[${m}]`),e.if(g,(0,pi._)`continue`),u.length>1&&e.if((0,pi._)`typeof ${A} == "string"`,(0,pi._)`${A} += "_"`),e.if((0,pi._)`typeof ${b}[${A}] == "number"`,()=>{e.assign(h,(0,pi._)`${b}[${A}]`),t.error(),e.assign(c,!1).break()}).code((0,pi._)`${b}[${A}] = ${m}`)})}function p(m,h){let A=(0,ykt.useFunc)(e,xkt.default),g=e.name("outer");e.label(g).for((0,pi._)`;${m}--;`,()=>e.for((0,pi._)`${h} = ${m}; ${h}--;`,()=>e.if((0,pi._)`${A}(${r}[${m}], ${r}[${h}])`,()=>{t.error(),e.assign(c,!1).break(g)})))}}};yU.default=Ekt});var R1e=E(bU=>{"use strict";Object.defineProperty(bU,"__esModule",{value:!0});var xU=Et(),_kt=Kt(),Skt=TO(),vkt={message:"must be equal to constant",params:({schemaCode:t})=>(0,xU._)`{allowedValue: ${t}}`},Ckt={keyword:"const",$data:!0,error:vkt,code(t){let{gen:e,data:r,$data:n,schemaCode:s,schema:i}=t;n||i&&typeof i=="object"?t.fail$data((0,xU._)`!${(0,_kt.useFunc)(e,Skt.default)}(${r}, ${s})`):t.fail((0,xU._)`${i} !== ${r}`)}};bU.default=Ckt});var N1e=E(EU=>{"use strict";Object.defineProperty(EU,"__esModule",{value:!0});var w_=Et(),Ikt=Kt(),Tkt=TO(),wkt={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,w_._)`{allowedValues: ${t}}`},Rkt={keyword:"enum",schemaType:"array",$data:!0,error:wkt,code(t){let{gen:e,data:r,$data:n,schema:s,schemaCode:i,it:a}=t;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,Ikt.useFunc)(e,Tkt.default)),l;if(o||n)l=e.let("valid"),t.block$data(l,d);else{if(!Array.isArray(s))throw new Error("ajv implementation error");let p=e.const("vSchema",i);l=(0,w_.or)(...s.map((m,h)=>f(p,h)))}t.pass(l);function d(){e.assign(l,!1),e.forOf("v",i,p=>e.if((0,w_._)`${u()}(${r}, ${p})`,()=>e.assign(l,!0).break()))}function f(p,m){let h=s[m];return typeof h=="object"&&h!==null?(0,w_._)`${u()}(${r}, ${p}[${m}])`:(0,w_._)`${r} === ${h}`}}};EU.default=Rkt});var O1e=E(_U=>{"use strict";Object.defineProperty(_U,"__esModule",{value:!0});var Nkt=y1e(),Okt=x1e(),Pkt=_1e(),Dkt=S1e(),kkt=v1e(),Lkt=C1e(),Bkt=I1e(),Mkt=w1e(),Wkt=R1e(),$kt=N1e(),Fkt=[Nkt.default,Okt.default,Pkt.default,Dkt.default,kkt.default,Lkt.default,Bkt.default,Mkt.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},Wkt.default,$kt.default];_U.default=Fkt});var vU=E(R_=>{"use strict";Object.defineProperty(R_,"__esModule",{value:!0});R_.validateAdditionalItems=void 0;var zm=Et(),SU=Kt(),Ukt={message:({params:{len:t}})=>(0,zm.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,zm._)`{limit: ${t}}`},qkt={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:Ukt,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,SU.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}P1e(t,n)}};function P1e(t,e){let{gen:r,schema:n,data:s,keyword:i,it:a}=t;a.items=!0;let o=r.const("len",(0,zm._)`${s}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,zm._)`${o} <= ${e.length}`);else if(typeof n=="object"&&!(0,SU.alwaysValidSchema)(a,n)){let u=r.var("valid",(0,zm._)`${o} <= ${e.length}`);r.if((0,zm.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,o,l=>{t.subschema({keyword:i,dataProp:l,dataPropType:SU.Type.Num},u),a.allErrors||r.if((0,zm.not)(u),()=>r.break())})}}R_.validateAdditionalItems=P1e;R_.default=qkt});var CU=E(N_=>{"use strict";Object.defineProperty(N_,"__esModule",{value:!0});N_.validateTuple=void 0;var D1e=Et(),wO=Kt(),jkt=di(),Hkt={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return k1e(t,"additionalItems",e);r.items=!0,!(0,wO.alwaysValidSchema)(r,e)&&t.ok((0,jkt.validateArray)(t))}};function k1e(t,e,r=t.schema){let{gen:n,parentSchema:s,data:i,keyword:a,it:o}=t;l(s),o.opts.unevaluated&&r.length&&o.items!==!0&&(o.items=wO.mergeEvaluated.items(n,r.length,o.items));let c=n.name("valid"),u=n.const("len",(0,D1e._)`${i}.length`);r.forEach((d,f)=>{(0,wO.alwaysValidSchema)(o,d)||(n.if((0,D1e._)`${u} > ${f}`,()=>t.subschema({keyword:a,schemaProp:f,dataProp:f},c)),t.ok(c))});function l(d){let{opts:f,errSchemaPath:p}=o,m=r.length,h=m===d.minItems&&(m===d.maxItems||d[e]===!1);if(f.strictTuples&&!h){let A=`"${a}" is ${m}-tuple, but minItems or maxItems/${e} are not specified or different at path "${p}"`;(0,wO.checkStrictMode)(o,A,f.strictTuples)}}}N_.validateTuple=k1e;N_.default=Hkt});var L1e=E(IU=>{"use strict";Object.defineProperty(IU,"__esModule",{value:!0});var Qkt=CU(),Gkt={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,Qkt.validateTuple)(t,"items")};IU.default=Gkt});var M1e=E(TU=>{"use strict";Object.defineProperty(TU,"__esModule",{value:!0});var B1e=Et(),Vkt=Kt(),zkt=di(),Kkt=vU(),Ykt={message:({params:{len:t}})=>(0,B1e.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,B1e._)`{limit: ${t}}`},Jkt={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:Ykt,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:s}=r;n.items=!0,!(0,Vkt.alwaysValidSchema)(n,e)&&(s?(0,Kkt.validateAdditionalItems)(t,s):t.ok((0,zkt.validateArray)(t)))}};TU.default=Jkt});var W1e=E(wU=>{"use strict";Object.defineProperty(wU,"__esModule",{value:!0});var tc=Et(),RO=Kt(),Xkt={message:({params:{min:t,max:e}})=>e===void 0?(0,tc.str)`must contain at least ${t} valid item(s)`:(0,tc.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,tc._)`{minContains: ${t}}`:(0,tc._)`{minContains: ${t}, maxContains: ${e}}`},Zkt={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:Xkt,code(t){let{gen:e,schema:r,parentSchema:n,data:s,it:i}=t,a,o,{minContains:c,maxContains:u}=n;i.opts.next?(a=c===void 0?1:c,o=u):a=1;let l=e.const("len",(0,tc._)`${s}.length`);if(t.setParams({min:a,max:o}),o===void 0&&a===0){(0,RO.checkStrictMode)(i,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(o!==void 0&&a>o){(0,RO.checkStrictMode)(i,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,RO.alwaysValidSchema)(i,r)){let h=(0,tc._)`${l} >= ${a}`;o!==void 0&&(h=(0,tc._)`${h} && ${l} <= ${o}`),t.pass(h);return}i.items=!0;let d=e.name("valid");o===void 0&&a===1?p(d,()=>e.if(d,()=>e.break())):a===0?(e.let(d,!0),o!==void 0&&e.if((0,tc._)`${s}.length > 0`,f)):(e.let(d,!1),f()),t.result(d,()=>t.reset());function f(){let h=e.name("_valid"),A=e.let("count",0);p(h,()=>e.if(h,()=>m(A)))}function p(h,A){e.forRange("i",0,l,g=>{t.subschema({keyword:"contains",dataProp:g,dataPropType:RO.Type.Num,compositeRule:!0},h),A()})}function m(h){e.code((0,tc._)`${h}++`),o===void 0?e.if((0,tc._)`${h} >= ${a}`,()=>e.assign(d,!0).break()):(e.if((0,tc._)`${h} > ${o}`,()=>e.assign(d,!1).break()),a===1?e.assign(d,!0):e.if((0,tc._)`${h} >= ${a}`,()=>e.assign(d,!0)))}}};wU.default=Zkt});var U1e=E(Xu=>{"use strict";Object.defineProperty(Xu,"__esModule",{value:!0});Xu.validateSchemaDeps=Xu.validatePropertyDeps=Xu.error=void 0;var RU=Et(),eLt=Kt(),O_=di();Xu.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,RU.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,RU._)`{property: ${t}, - missingProperty: ${n}, - depsCount: ${e}, - deps: ${r}}`};var tLt={keyword:"dependencies",type:"object",schemaType:"object",error:Xu.error,code(t){let[e,r]=rLt(t);$1e(t,e),F1e(t,r)}};function rLt({schema:t}){let e={},r={};for(let n in t){if(n==="__proto__")continue;let s=Array.isArray(t[n])?e:r;s[n]=t[n]}return[e,r]}function $1e(t,e=t.schema){let{gen:r,data:n,it:s}=t;if(Object.keys(e).length===0)return;let i=r.let("missing");for(let a in e){let o=e[a];if(o.length===0)continue;let c=(0,O_.propertyInData)(r,n,a,s.opts.ownProperties);t.setParams({property:a,depsCount:o.length,deps:o.join(", ")}),s.allErrors?r.if(c,()=>{for(let u of o)(0,O_.checkReportMissingProp)(t,u)}):(r.if((0,RU._)`${c} && (${(0,O_.checkMissingProp)(t,o,i)})`),(0,O_.reportMissingProp)(t,i),r.else())}}Xu.validatePropertyDeps=$1e;function F1e(t,e=t.schema){let{gen:r,data:n,keyword:s,it:i}=t,a=r.name("valid");for(let o in e)(0,eLt.alwaysValidSchema)(i,e[o])||(r.if((0,O_.propertyInData)(r,n,o,i.opts.ownProperties),()=>{let c=t.subschema({keyword:s,schemaProp:o},a);t.mergeValidEvaluated(c,a)},()=>r.var(a,!0)),t.ok(a))}Xu.validateSchemaDeps=F1e;Xu.default=tLt});var j1e=E(NU=>{"use strict";Object.defineProperty(NU,"__esModule",{value:!0});var q1e=Et(),nLt=Kt(),sLt={message:"property name must be valid",params:({params:t})=>(0,q1e._)`{propertyName: ${t.propertyName}}`},iLt={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:sLt,code(t){let{gen:e,schema:r,data:n,it:s}=t;if((0,nLt.alwaysValidSchema)(s,r))return;let i=e.name("valid");e.forIn("key",n,a=>{t.setParams({propertyName:a}),t.subschema({keyword:"propertyNames",data:a,dataTypes:["string"],propertyName:a,compositeRule:!0},i),e.if((0,q1e.not)(i),()=>{t.error(!0),s.allErrors||e.break()})}),t.ok(i)}};NU.default=iLt});var PU=E(OU=>{"use strict";Object.defineProperty(OU,"__esModule",{value:!0});var NO=di(),zc=Et(),aLt=Zo(),OO=Kt(),oLt={message:"must NOT have additional properties",params:({params:t})=>(0,zc._)`{additionalProperty: ${t.additionalProperty}}`},cLt={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:oLt,code(t){let{gen:e,schema:r,parentSchema:n,data:s,errsCount:i,it:a}=t;if(!i)throw new Error("ajv implementation error");let{allErrors:o,opts:c}=a;if(a.props=!0,c.removeAdditional!=="all"&&(0,OO.alwaysValidSchema)(a,r))return;let u=(0,NO.allSchemaProperties)(n.properties),l=(0,NO.allSchemaProperties)(n.patternProperties);d(),t.ok((0,zc._)`${i} === ${aLt.default.errors}`);function d(){e.forIn("key",s,A=>{!u.length&&!l.length?m(A):e.if(f(A),()=>m(A))})}function f(A){let g;if(u.length>8){let b=(0,OO.schemaRefOrVal)(a,n.properties,"properties");g=(0,NO.isOwnProperty)(e,b,A)}else u.length?g=(0,zc.or)(...u.map(b=>(0,zc._)`${A} === ${b}`)):g=zc.nil;return l.length&&(g=(0,zc.or)(g,...l.map(b=>(0,zc._)`${(0,NO.usePattern)(t,b)}.test(${A})`))),(0,zc.not)(g)}function p(A){e.code((0,zc._)`delete ${s}[${A}]`)}function m(A){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){p(A);return}if(r===!1){t.setParams({additionalProperty:A}),t.error(),o||e.break();return}if(typeof r=="object"&&!(0,OO.alwaysValidSchema)(a,r)){let g=e.name("valid");c.removeAdditional==="failing"?(h(A,g,!1),e.if((0,zc.not)(g),()=>{t.reset(),p(A)})):(h(A,g),o||e.if((0,zc.not)(g),()=>e.break()))}}function h(A,g,b){let y={keyword:"additionalProperties",dataProp:A,dataPropType:OO.Type.Str};b===!1&&Object.assign(y,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(y,g)}}};OU.default=cLt});var G1e=E(kU=>{"use strict";Object.defineProperty(kU,"__esModule",{value:!0});var uLt=Ay(),H1e=di(),DU=Kt(),Q1e=PU(),lLt={keyword:"properties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,parentSchema:n,data:s,it:i}=t;i.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&Q1e.default.code(new uLt.KeywordCxt(i,Q1e.default,"additionalProperties"));let a=(0,H1e.allSchemaProperties)(r);for(let d of a)i.definedProperties.add(d);i.opts.unevaluated&&a.length&&i.props!==!0&&(i.props=DU.mergeEvaluated.props(e,(0,DU.toHash)(a),i.props));let o=a.filter(d=>!(0,DU.alwaysValidSchema)(i,r[d]));if(o.length===0)return;let c=e.name("valid");for(let d of o)u(d)?l(d):(e.if((0,H1e.propertyInData)(e,s,d,i.opts.ownProperties)),l(d),i.allErrors||e.else().var(c,!0),e.endIf()),t.it.definedProperties.add(d),t.ok(c);function u(d){return i.opts.useDefaults&&!i.compositeRule&&r[d].default!==void 0}function l(d){t.subschema({keyword:"properties",schemaProp:d,dataProp:d},c)}}};kU.default=lLt});var Y1e=E(LU=>{"use strict";Object.defineProperty(LU,"__esModule",{value:!0});var V1e=di(),PO=Et(),z1e=Kt(),K1e=Kt(),dLt={keyword:"patternProperties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,data:n,parentSchema:s,it:i}=t,{opts:a}=i,o=(0,V1e.allSchemaProperties)(r),c=o.filter(h=>(0,z1e.alwaysValidSchema)(i,r[h]));if(o.length===0||c.length===o.length&&(!i.opts.unevaluated||i.props===!0))return;let u=a.strictSchema&&!a.allowMatchingProperties&&s.properties,l=e.name("valid");i.props!==!0&&!(i.props instanceof PO.Name)&&(i.props=(0,K1e.evaluatedPropsToName)(e,i.props));let{props:d}=i;f();function f(){for(let h of o)u&&p(h),i.allErrors?m(h):(e.var(l,!0),m(h),e.if(l))}function p(h){for(let A in u)new RegExp(h).test(A)&&(0,z1e.checkStrictMode)(i,`property ${A} matches pattern ${h} (use allowMatchingProperties)`)}function m(h){e.forIn("key",n,A=>{e.if((0,PO._)`${(0,V1e.usePattern)(t,h)}.test(${A})`,()=>{let g=c.includes(h);g||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:A,dataPropType:K1e.Type.Str},l),i.opts.unevaluated&&d!==!0?e.assign((0,PO._)`${d}[${A}]`,!0):!g&&!i.allErrors&&e.if((0,PO.not)(l),()=>e.break())})})}}};LU.default=dLt});var J1e=E(BU=>{"use strict";Object.defineProperty(BU,"__esModule",{value:!0});var fLt=Kt(),pLt={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,fLt.alwaysValidSchema)(n,r)){t.fail();return}let s=e.name("valid");t.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},s),t.failResult(s,()=>t.reset(),()=>t.error())},error:{message:"must NOT be valid"}};BU.default=pLt});var X1e=E(MU=>{"use strict";Object.defineProperty(MU,"__esModule",{value:!0});var mLt=di(),hLt={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:mLt.validateUnion,error:{message:"must match a schema in anyOf"}};MU.default=hLt});var Z1e=E(WU=>{"use strict";Object.defineProperty(WU,"__esModule",{value:!0});var DO=Et(),gLt=Kt(),ALt={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,DO._)`{passingSchemas: ${t.passing}}`},yLt={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:ALt,code(t){let{gen:e,schema:r,parentSchema:n,it:s}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(s.opts.discriminator&&n.discriminator)return;let i=r,a=e.let("valid",!1),o=e.let("passing",null),c=e.name("_valid");t.setParams({passing:o}),e.block(u),t.result(a,()=>t.reset(),()=>t.error(!0));function u(){i.forEach((l,d)=>{let f;(0,gLt.alwaysValidSchema)(s,l)?e.var(c,!0):f=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,DO._)`${c} && ${a}`).assign(a,!1).assign(o,(0,DO._)`[${o}, ${d}]`).else(),e.if(c,()=>{e.assign(a,!0),e.assign(o,d),f&&t.mergeEvaluated(f,DO.Name)})})}}};WU.default=yLt});var e_e=E($U=>{"use strict";Object.defineProperty($U,"__esModule",{value:!0});var xLt=Kt(),bLt={keyword:"allOf",schemaType:"array",code(t){let{gen:e,schema:r,it:n}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");let s=e.name("valid");r.forEach((i,a)=>{if((0,xLt.alwaysValidSchema)(n,i))return;let o=t.subschema({keyword:"allOf",schemaProp:a},s);t.ok(s),t.mergeEvaluated(o)})}};$U.default=bLt});var n_e=E(FU=>{"use strict";Object.defineProperty(FU,"__esModule",{value:!0});var kO=Et(),r_e=Kt(),ELt={message:({params:t})=>(0,kO.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,kO._)`{failingKeyword: ${t.ifClause}}`},_Lt={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:ELt,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,r_e.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let s=t_e(n,"then"),i=t_e(n,"else");if(!s&&!i)return;let a=e.let("valid",!0),o=e.name("_valid");if(c(),t.reset(),s&&i){let l=e.let("ifClause");t.setParams({ifClause:l}),e.if(o,u("then",l),u("else",l))}else s?e.if(o,u("then")):e.if((0,kO.not)(o),u("else"));t.pass(a,()=>t.error(!0));function c(){let l=t.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},o);t.mergeEvaluated(l)}function u(l,d){return()=>{let f=t.subschema({keyword:l},o);e.assign(a,o),t.mergeValidEvaluated(f,a),d?e.assign(d,(0,kO._)`${l}`):t.setParams({ifClause:l})}}}};function t_e(t,e){let r=t.schema[e];return r!==void 0&&!(0,r_e.alwaysValidSchema)(t,r)}FU.default=_Lt});var s_e=E(UU=>{"use strict";Object.defineProperty(UU,"__esModule",{value:!0});var SLt=Kt(),vLt={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,SLt.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};UU.default=vLt});var i_e=E(qU=>{"use strict";Object.defineProperty(qU,"__esModule",{value:!0});var CLt=vU(),ILt=L1e(),TLt=CU(),wLt=M1e(),RLt=W1e(),NLt=U1e(),OLt=j1e(),PLt=PU(),DLt=G1e(),kLt=Y1e(),LLt=J1e(),BLt=X1e(),MLt=Z1e(),WLt=e_e(),$Lt=n_e(),FLt=s_e();function ULt(t=!1){let e=[LLt.default,BLt.default,MLt.default,WLt.default,$Lt.default,FLt.default,OLt.default,PLt.default,NLt.default,DLt.default,kLt.default];return t?e.push(ILt.default,wLt.default):e.push(CLt.default,TLt.default),e.push(RLt.default),e}qU.default=ULt});var a_e=E(jU=>{"use strict";Object.defineProperty(jU,"__esModule",{value:!0});var ls=Et(),qLt={message:({schemaCode:t})=>(0,ls.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,ls._)`{format: ${t}}`},jLt={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:qLt,code(t,e){let{gen:r,data:n,$data:s,schema:i,schemaCode:a,it:o}=t,{opts:c,errSchemaPath:u,schemaEnv:l,self:d}=o;if(!c.validateFormats)return;s?f():p();function f(){let m=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),h=r.const("fDef",(0,ls._)`${m}[${a}]`),A=r.let("fType"),g=r.let("format");r.if((0,ls._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(A,(0,ls._)`${h}.type || "string"`).assign(g,(0,ls._)`${h}.validate`),()=>r.assign(A,(0,ls._)`"string"`).assign(g,h)),t.fail$data((0,ls.or)(b(),y()));function b(){return c.strictSchema===!1?ls.nil:(0,ls._)`${a} && !${g}`}function y(){let x=l.$async?(0,ls._)`(${h}.async ? await ${g}(${n}) : ${g}(${n}))`:(0,ls._)`${g}(${n})`,v=(0,ls._)`(typeof ${g} == "function" ? ${x} : ${g}.test(${n}))`;return(0,ls._)`${g} && ${g} !== true && ${A} === ${e} && !${v}`}}function p(){let m=d.formats[i];if(!m){b();return}if(m===!0)return;let[h,A,g]=y(m);h===e&&t.pass(x());function b(){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 y(v){let C=v instanceof RegExp?(0,ls.regexpCode)(v):c.code.formats?(0,ls._)`${c.code.formats}${(0,ls.getProperty)(i)}`:void 0,R=r.scopeValue("formats",{key:i,ref:v,code:C});return typeof v=="object"&&!(v instanceof RegExp)?[v.type||"string",v.validate,(0,ls._)`${R}.validate`]:["string",v,R]}function x(){if(typeof m=="object"&&!(m instanceof RegExp)&&m.async){if(!l.$async)throw new Error("async format in sync schema");return(0,ls._)`await ${g}(${n})`}return typeof A=="function"?(0,ls._)`${g}(${n})`:(0,ls._)`${g}.test(${n})`}}}};jU.default=jLt});var o_e=E(HU=>{"use strict";Object.defineProperty(HU,"__esModule",{value:!0});var HLt=a_e(),QLt=[HLt.default];HU.default=QLt});var c_e=E(Ey=>{"use strict";Object.defineProperty(Ey,"__esModule",{value:!0});Ey.contentVocabulary=Ey.metadataVocabulary=void 0;Ey.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Ey.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var l_e=E(QU=>{"use strict";Object.defineProperty(QU,"__esModule",{value:!0});var GLt=A1e(),VLt=O1e(),zLt=i_e(),KLt=o_e(),u_e=c_e(),YLt=[GLt.default,VLt.default,(0,zLt.default)(),KLt.default,u_e.metadataVocabulary,u_e.contentVocabulary];QU.default=YLt});var GU=E(LO=>{"use strict";Object.defineProperty(LO,"__esModule",{value:!0});LO.DiscrError=void 0;var d_e;(function(t){t.Tag="tag",t.Mapping="mapping"})(d_e||(LO.DiscrError=d_e={}))});var p_e=E(zU=>{"use strict";Object.defineProperty(zU,"__esModule",{value:!0});var _y=Et(),VU=GU(),f_e=Qm(),JLt=Ed(),XLt=Kt(),ZLt={message:({params:{discrError:t,tagName:e}})=>t===VU.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,_y._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},eBt={keyword:"discriminator",type:"object",schemaType:"object",error:ZLt,code(t){let{gen:e,data:r,schema:n,parentSchema:s,it:i}=t,{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=e.let("valid",!1),u=e.const("tag",(0,_y._)`${r}${(0,_y.getProperty)(o)}`);e.if((0,_y._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:VU.DiscrError.Tag,tag:u,tagName:o})),t.ok(c);function l(){let p=f();e.if(!1);for(let m in p)e.elseIf((0,_y._)`${u} === ${m}`),e.assign(c,d(p[m]));e.else(),t.error(!1,{discrError:VU.DiscrError.Mapping,tag:u,tagName:o}),e.endIf()}function d(p){let m=e.name("valid"),h=t.subschema({keyword:"oneOf",schemaProp:p},m);return t.mergeEvaluated(h,_y.Name),m}function f(){var p;let m={},h=g(s),A=!0;for(let x=0;x{tBt.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 g_e=E((Dn,KU)=>{"use strict";Object.defineProperty(Dn,"__esModule",{value:!0});Dn.MissingRefError=Dn.ValidationError=Dn.CodeGen=Dn.Name=Dn.nil=Dn.stringify=Dn.str=Dn._=Dn.KeywordCxt=Dn.Ajv=void 0;var rBt=sU(),nBt=l_e(),sBt=p_e(),h_e=m_e(),iBt=["/properties"],BO="http://json-schema.org/draft-07/schema",Sy=class extends rBt.default{_addVocabularies(){super._addVocabularies(),nBt.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(sBt.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(h_e,iBt):h_e;this.addMetaSchema(e,BO,!1),this.refs["http://json-schema.org/schema"]=BO}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(BO)?BO:void 0)}};Dn.Ajv=Sy;KU.exports=Dn=Sy;KU.exports.Ajv=Sy;Object.defineProperty(Dn,"__esModule",{value:!0});Dn.default=Sy;var aBt=Ay();Object.defineProperty(Dn,"KeywordCxt",{enumerable:!0,get:function(){return aBt.KeywordCxt}});var vy=Et();Object.defineProperty(Dn,"_",{enumerable:!0,get:function(){return vy._}});Object.defineProperty(Dn,"str",{enumerable:!0,get:function(){return vy.str}});Object.defineProperty(Dn,"stringify",{enumerable:!0,get:function(){return vy.stringify}});Object.defineProperty(Dn,"nil",{enumerable:!0,get:function(){return vy.nil}});Object.defineProperty(Dn,"Name",{enumerable:!0,get:function(){return vy.Name}});Object.defineProperty(Dn,"CodeGen",{enumerable:!0,get:function(){return vy.CodeGen}});var oBt=y_();Object.defineProperty(Dn,"ValidationError",{enumerable:!0,get:function(){return oBt.default}});var cBt=Ed();Object.defineProperty(Dn,"MissingRefError",{enumerable:!0,get:function(){return cBt.default}})});var Sd=E(P_=>{"use strict";Object.defineProperty(P_,"__esModule",{value:!0});P_.checkMetadata=void 0;var uBt=Kt(),lBt={keyword:"metadata",schemaType:"object",code(t){A_e(t);let{gen:e,schema:r,it:n}=t;if((0,uBt.alwaysValidSchema)(n,r))return;let s=e.name("valid");t.subschema({keyword:"metadata",jtdMetadata:!0},s),t.ok(s)}};function A_e({it:t,keyword:e},r){if(t.jtdMetadata!==r)throw new Error(`JTD: "${e}" cannot be used in this schema location`)}P_.checkMetadata=A_e;P_.default=lBt});var MO=E(k_=>{"use strict";Object.defineProperty(k_,"__esModule",{value:!0});k_.hasRef=void 0;var y_e=Qm(),D_=Et(),dBt=Ed(),x_e=Zo(),b_e=aU(),fBt=Sd(),pBt={keyword:"ref",schemaType:"string",code(t){(0,fBt.checkMetadata)(t);let{gen:e,data:r,schema:n,parentSchema:s,it:i}=t,{schemaEnv:{root:a}}=i,o=e.name("valid");s.nullable?(e.var(o,(0,D_._)`${r} === null`),e.if((0,D_.not)(o),c)):(e.var(o,!1),c()),t.ok(o);function c(){var d;let f=(d=a.schema.definitions)===null||d===void 0?void 0:d[n];if(!f)throw new dBt.default(i.opts.uriResolver,"",n,`No definition ${n}`);YU(f)||!i.opts.inlineRefs?u(f):l(f)}function u(d){let f=y_e.compileSchema.call(i.self,new y_e.SchemaEnv({schema:d,root:a,schemaPath:`/definitions/${n}`})),p=(0,b_e.getValidate)(t,f),m=e.const("_errs",x_e.default.errors);(0,b_e.callRef)(t,p,f,f.$async),e.assign(o,(0,D_._)`${m} === ${x_e.default.errors}`)}function l(d){let f=e.scopeValue("schema",i.opts.code.source===!0?{ref:d,code:(0,D_.stringify)(d)}:{ref:d});t.subschema({schema:d,dataTypes:[],schemaPath:D_.nil,topSchemaRef:f,errSchemaPath:`/definitions/${n}`},o)}}};function YU(t){for(let e in t){let r;if(e==="ref"||typeof(r=t[e])=="object"&&YU(r))return!0}return!1}k_.hasRef=YU;k_.default=pBt});var XU=E(JU=>{"use strict";Object.defineProperty(JU,"__esModule",{value:!0});var mBt=/t|\s/i,hBt=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,gBt=/^(\d\d):(\d\d):(\d\d)(?:\.\d+)?(?:z|([+-]\d\d)(?::?(\d\d))?)$/i,ABt=[0,31,28,31,30,31,30,31,31,30,31,30,31];function __e(t,e){let r=t.split(mBt);return r.length===2&&E_e(r[0])&&yBt(r[1])||e&&r.length===1&&E_e(r[0])}JU.default=__e;function E_e(t){let e=hBt.exec(t);if(!e)return!1;let r=+e[1],n=+e[2],s=+e[3];return n>=1&&n<=12&&s>=1&&(s<=ABt[n]||n===2&&s===29&&(r%100===0?r%400===0:r%4===0))}function yBt(t){let e=gBt.exec(t);if(!e)return!1;let r=+e[1],n=+e[2],s=+e[3],i=+(e[4]||0),a=+(e[5]||0);return r<=23&&n<=59&&s<=59||r-i===23&&n-a===59&&s===60}__e.code='require("ajv/dist/runtime/timestamp").default'});var Cy=E(Op=>{"use strict";Object.defineProperty(Op,"__esModule",{value:!0});Op.typeErrorParams=Op.typeErrorMessage=Op.typeError=void 0;var xBt=Et();function bBt(t){return{message:e=>S_e(e,t),params:e=>v_e(e,t)}}Op.typeError=bBt;function S_e({parentSchema:t},e){return t?.nullable?`must be ${e} or null`:`must be ${e}`}Op.typeErrorMessage=S_e;function v_e({parentSchema:t},e){return(0,xBt._)`{type: ${e}, nullable: ${!!t?.nullable}}`}Op.typeErrorParams=v_e});var ZU=E(Iy=>{"use strict";Object.defineProperty(Iy,"__esModule",{value:!0});Iy.intRange=void 0;var bo=Et(),EBt=XU(),_Bt=Kt(),SBt=Sd(),C_e=Cy();Iy.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 vBt={message:t=>(0,C_e.typeErrorMessage)(t,t.schema),params:t=>(0,C_e.typeErrorParams)(t,t.schema)};function CBt(t){let{gen:e,data:r,it:n}=t,{timestamp:s,allowDate:i}=n.opts;if(s==="date")return(0,bo._)`${r} instanceof Date `;let a=(0,_Bt.useFunc)(e,EBt.default),o=i?(0,bo._)`, true`:bo.nil,c=(0,bo._)`typeof ${r} == "string" && ${a}(${r}${o})`;return s==="string"?c:(0,bo.or)((0,bo._)`${r} instanceof Date`,c)}var IBt={keyword:"type",schemaType:"string",error:vBt,code(t){(0,SBt.checkMetadata)(t);let{data:e,schema:r,parentSchema:n,it:s}=t,i;switch(r){case"boolean":case"string":i=(0,bo._)`typeof ${e} == ${r}`;break;case"timestamp":{i=CBt(t);break}case"float32":case"float64":i=(0,bo._)`typeof ${e} == "number"`;break;default:{let a=r;if(i=(0,bo._)`typeof ${e} == "number" && isFinite(${e}) && !(${e} % 1)`,!s.opts.int32range&&(a==="int32"||a==="uint32"))a==="uint32"&&(i=(0,bo._)`${i} && ${e} >= 0`);else{let[o,c]=Iy.intRange[a];i=(0,bo._)`${i} && ${e} >= ${o} && ${e} <= ${c}`}}}t.pass(n.nullable?(0,bo.or)((0,bo._)`${e} === null`,i):i)}};Iy.default=IBt});var wy=E(Ty=>{"use strict";Object.defineProperty(Ty,"__esModule",{value:!0});Ty.checkNullableObject=Ty.checkNullable=void 0;var WO=Et();function I_e({gen:t,data:e,parentSchema:r},n=WO.nil){let s=t.name("valid");return r.nullable?(t.let(s,(0,WO._)`${e} === null`),n=(0,WO.not)(s)):t.let(s,!1),[s,n]}Ty.checkNullable=I_e;function TBt(t,e){let[r,n]=I_e(t,e);return[r,(0,WO._)`${n} && typeof ${t.data} == "object" && !Array.isArray(${t.data})`]}Ty.checkNullableObject=TBt});var T_e=E(e7=>{"use strict";Object.defineProperty(e7,"__esModule",{value:!0});var Pp=Et(),wBt=Sd(),RBt=wy(),NBt={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,Pp._)`{allowedValues: ${t}}`},OBt={keyword:"enum",schemaType:"array",error:NBt,code(t){(0,wBt.checkMetadata)(t);let{gen:e,data:r,schema:n,schemaValue:s,parentSchema:i,it:a}=t;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,Pp._)`typeof ${r} == "string"`;if(n.length>=a.opts.loopEnum){let l;[o,l]=(0,RBt.checkNullable)(t,c),e.if(l,u)}else{if(!Array.isArray(n))throw new Error("ajv implementation error");o=(0,Pp.and)(c,(0,Pp.or)(...n.map(l=>(0,Pp._)`${r} === ${l}`))),i.nullable&&(o=(0,Pp.or)((0,Pp._)`${r} === null`,o))}t.pass(o);function u(){e.forOf("v",s,l=>e.if((0,Pp._)`${o} = ${r} === ${l}`,()=>e.break()))}}};e7.default=OBt});var R_e=E(t7=>{"use strict";Object.defineProperty(t7,"__esModule",{value:!0});var PBt=Kt(),DBt=di(),w_e=Et(),kBt=Sd(),LBt=wy(),BBt=Cy(),MBt={keyword:"elements",schemaType:"object",error:(0,BBt.typeError)("array"),code(t){(0,kBt.checkMetadata)(t);let{gen:e,data:r,schema:n,it:s}=t;if((0,PBt.alwaysValidSchema)(s,n))return;let[i]=(0,LBt.checkNullable)(t);e.if((0,w_e.not)(i),()=>e.if((0,w_e._)`Array.isArray(${r})`,()=>e.assign(i,(0,DBt.validateArray)(t)),()=>t.error())),t.ok(i)}};t7.default=MBt});var n7=E(Dp=>{"use strict";Object.defineProperty(Dp,"__esModule",{value:!0});Dp.validateProperties=Dp.error=void 0;var r7=di(),N_e=Kt(),vd=Et(),WBt=Sd(),$Bt=wy(),O_e=Cy(),Ry;(function(t){t.Additional="additional",t.Missing="missing"})(Ry||(Ry={}));Dp.error={message:t=>{let{params:e}=t;return e.propError?e.propError===Ry.Additional?"must NOT have additional properties":`must have property '${e.missingProperty}'`:(0,O_e.typeErrorMessage)(t,"object")},params:t=>{let{params:e}=t;return e.propError?e.propError===Ry.Additional?(0,vd._)`{error: ${e.propError}, additionalProperty: ${e.additionalProperty}}`:(0,vd._)`{error: ${e.propError}, missingProperty: ${e.missingProperty}}`:(0,O_e.typeErrorParams)(t,"object")}};var FBt={keyword:"properties",schemaType:"object",error:Dp.error,code:P_e};function P_e(t){(0,WBt.checkMetadata)(t);let{gen:e,data:r,parentSchema:n,it:s}=t,{additionalProperties:i,nullable:a}=n;if(s.jtdDiscriminator&&a)throw new Error("JTD: nullable inside discriminator mapping");if(p())throw new Error("JTD: properties and optionalProperties have common members");let[o,c]=m("properties"),[u,l]=m("optionalProperties");if(c.length===0&&l.length===0&&i)return;let[d,f]=s.jtdDiscriminator===void 0?(0,$Bt.checkNullableObject)(t,r):[e.let("valid",!1),!0];e.if(f,()=>e.assign(d,!0).block(()=>{h(c,"properties",!0),h(l,"optionalProperties"),i||g()})),t.pass(d);function p(){let y=n.properties,x=n.optionalProperties;if(!(y&&x))return!1;for(let v in y)if(Object.prototype.hasOwnProperty.call(x,v))return!0;return!1}function m(y){let x=n[y],v=x?(0,r7.allSchemaProperties)(x):[];if(s.jtdDiscriminator&&v.some(R=>R===s.jtdDiscriminator))throw new Error(`JTD: discriminator tag used in ${y}`);let C=v.filter(R=>!(0,N_e.alwaysValidSchema)(s,x[R]));return[v,C]}function h(y,x,v){let C=e.var("valid");for(let w of y)e.if((0,r7.propertyInData)(e,r,w,s.opts.ownProperties),()=>A(w,x,C),()=>R(w)),t.ok(C);function R(w){v?(e.assign(C,!1),t.error(!1,{propError:Ry.Missing,missingProperty:w},{schemaPath:w})):e.assign(C,!0)}}function A(y,x,v){t.subschema({keyword:x,schemaProp:y,dataProp:y},v)}function g(){e.forIn("key",r,y=>{let x=b(y,o,"properties",s.jtdDiscriminator),v=b(y,u,"optionalProperties"),C=x===!0?v:v===!0?x:(0,vd.and)(x,v);e.if(C,()=>{s.opts.removeAdditional?e.code((0,vd._)`delete ${r}[${y}]`):(t.error(!1,{propError:Ry.Additional,additionalProperty:y},{instancePath:y,parentSchema:!0}),s.opts.allErrors||e.break())})})}function b(y,x,v,C){let R;if(x.length>8){let w=(0,N_e.schemaRefOrVal)(s,n[v],v);R=(0,vd.not)((0,r7.isOwnProperty)(e,w,y)),C!==void 0&&(R=(0,vd.and)(R,(0,vd._)`${y} !== ${C}`))}else if(x.length||C!==void 0){let w=C===void 0?x:[C].concat(x);R=(0,vd.and)(...w.map(N=>(0,vd._)`${y} !== ${N}`))}else R=!0;return R}}Dp.validateProperties=P_e;Dp.default=FBt});var k_e=E(s7=>{"use strict";Object.defineProperty(s7,"__esModule",{value:!0});var D_e=n7(),UBt={keyword:"optionalProperties",schemaType:"object",error:D_e.error,code(t){t.parentSchema.properties||(0,D_e.validateProperties)(t)}};s7.default=UBt});var B_e=E(i7=>{"use strict";Object.defineProperty(i7,"__esModule",{value:!0});var Km=Et(),qBt=Sd(),jBt=wy(),L_e=Cy(),$O=GU(),HBt={message:t=>{let{schema:e,params:r}=t;return r.discrError?r.discrError===$O.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in mapping`:(0,L_e.typeErrorMessage)(t,"object")},params:t=>{let{schema:e,params:r}=t;return r.discrError?(0,Km._)`{error: ${r.discrError}, tag: ${e}, tagValue: ${r.tag}}`:(0,L_e.typeErrorParams)(t,"object")}},QBt={keyword:"discriminator",schemaType:"string",implements:["mapping"],error:HBt,code(t){(0,qBt.checkMetadata)(t);let{gen:e,data:r,schema:n,parentSchema:s}=t,[i,a]=(0,jBt.checkNullableObject)(t,r);e.if(a),o(),e.elseIf((0,Km.not)(i)),t.error(),e.endIf(),t.ok(i);function o(){let l=e.const("tag",(0,Km._)`${r}${(0,Km.getProperty)(n)}`);e.if((0,Km._)`${l} === undefined`),t.error(!1,{discrError:$O.DiscrError.Tag,tag:l}),e.elseIf((0,Km._)`typeof ${l} == "string"`),c(l),e.else(),t.error(!1,{discrError:$O.DiscrError.Tag,tag:l},{instancePath:n}),e.endIf()}function c(l){e.if(!1);for(let d in s.mapping)e.elseIf((0,Km._)`${l} === ${d}`),e.assign(i,u(d));e.else(),t.error(!1,{discrError:$O.DiscrError.Mapping,tag:l},{instancePath:n,schemaPath:"mapping",parentSchema:!0}),e.endIf()}function u(l){let d=e.name("valid");return t.subschema({keyword:"mapping",schemaProp:l,jtdDiscriminator:n},d),d}}};i7.default=QBt});var W_e=E(a7=>{"use strict";Object.defineProperty(a7,"__esModule",{value:!0});var M_e=Kt(),FO=Et(),GBt=Sd(),VBt=wy(),zBt=Cy(),KBt={keyword:"values",schemaType:"object",error:(0,zBt.typeError)("object"),code(t){(0,GBt.checkMetadata)(t);let{gen:e,data:r,schema:n,it:s}=t,[i,a]=(0,VBt.checkNullableObject)(t,r);(0,M_e.alwaysValidSchema)(s,n)?e.if((0,FO.not)((0,FO.or)(a,i)),()=>t.error()):(e.if(a),e.assign(i,o()),e.elseIf((0,FO.not)(i)),t.error(),e.endIf()),t.ok(i);function o(){let c=e.name("valid");if(s.allErrors){let l=e.let("valid",!0);return u(()=>e.assign(l,!1)),l}return e.var(c,!0),u(()=>e.break()),c;function u(l){e.forIn("key",r,d=>{t.subschema({keyword:"values",dataProp:d,dataPropType:M_e.Type.Str},c),e.if((0,FO.not)(c),l)})}}}};a7.default=KBt});var $_e=E(o7=>{"use strict";Object.defineProperty(o7,"__esModule",{value:!0});var YBt=di(),JBt={keyword:"union",schemaType:"array",trackErrors:!0,code:YBt.validateUnion,error:{message:"must match a schema in union"}};o7.default=JBt});var F_e=E(c7=>{"use strict";Object.defineProperty(c7,"__esModule",{value:!0});var XBt=MO(),ZBt=ZU(),e4t=T_e(),t4t=R_e(),r4t=n7(),n4t=k_e(),s4t=B_e(),i4t=W_e(),a4t=$_e(),o4t=Sd(),c4t=["definitions",XBt.default,ZBt.default,e4t.default,t4t.default,r4t.default,n4t.default,s4t.default,i4t.default,a4t.default,o4t.default,{keyword:"additionalProperties",schemaType:"boolean"},{keyword:"nullable",schemaType:"boolean"}];c7.default=c4t});var H_e=E(u7=>{"use strict";Object.defineProperty(u7,"__esModule",{value:!0});var Cd=t=>{let e={nullable:{type:"boolean"},metadata:{optionalProperties:{union:{elements:{ref:"schema"}}},additionalProperties:!0}};return t&&(e.definitions={values:{ref:"schema"}}),e},u4t=t=>({optionalProperties:Cd(t)}),l4t=t=>({properties:{ref:{type:"string"}},optionalProperties:Cd(t)}),d4t=t=>({properties:{type:{enum:["boolean","timestamp","string","float32","float64","int8","uint8","int16","uint16","int32","uint32"]}},optionalProperties:Cd(t)}),f4t=t=>({properties:{enum:{elements:{type:"string"}}},optionalProperties:Cd(t)}),p4t=t=>({properties:{elements:{ref:"schema"}},optionalProperties:Cd(t)}),q_e=t=>({properties:{properties:{values:{ref:"schema"}}},optionalProperties:{optionalProperties:{values:{ref:"schema"}},additionalProperties:{type:"boolean"},...Cd(t)}}),j_e=t=>({properties:{optionalProperties:{values:{ref:"schema"}}},optionalProperties:{additionalProperties:{type:"boolean"},...Cd(t)}}),m4t=t=>({properties:{discriminator:{type:"string"},mapping:{values:{metadata:{union:[q_e(!1),j_e(!1)]}}}},optionalProperties:Cd(t)}),h4t=t=>({properties:{values:{ref:"schema"}},optionalProperties:Cd(t)}),U_e=t=>({metadata:{union:[u4t,l4t,d4t,f4t,p4t,q_e,j_e,m4t,h4t].map(e=>e(t))}}),g4t={definitions:{schema:U_e(!1)},...U_e(!0)};u7.default=g4t});var l7=E(UO=>{"use strict";Object.defineProperty(UO,"__esModule",{value:!0});UO.jtdForms=void 0;UO.jtdForms=["elements","values","discriminator","properties","optionalProperties","enum","type","ref"]});var G_e=E(f7=>{"use strict";Object.defineProperty(f7,"__esModule",{value:!0});var d7=/[\\"\u0000-\u001f\u007f-\u009f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,A4t={"\b":"\\b"," ":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"};function Q_e(t){return d7.lastIndex=0,'"'+(d7.test(t)?t.replace(d7,e=>{let r=A4t[e];return typeof r=="string"?r:"\\u"+("0000"+e.charCodeAt(0).toString(16)).slice(-4)}):t)+'"'}f7.default=Q_e;Q_e.code='require("ajv/dist/runtime/quote").default'});var X_e=E(m7=>{"use strict";Object.defineProperty(m7,"__esModule",{value:!0});var y4t=l7(),z_e=Qm(),fr=Et(),x4t=Ed(),En=Zo(),b4t=di(),E4t=MO(),_4t=Kt(),S4t=G_e(),v4t={elements:I4t,values:T4t,discriminator:w4t,properties:V_e,optionalProperties:V_e,enum:L_,type:R4t,ref:O4t};function K_e(t,e){let r=z_e.getCompilingSchema.call(this,t);if(r)return r;let{es5:n,lines:s}=this.opts.code,{ownProperties:i}=this.opts,a=new fr.CodeGen(this.scope,{es5:n,lines:s,ownProperties:i}),o=a.scopeName("serialize"),c={self:this,gen:a,schema:t.schema,schemaEnv:t,definitions:e,data:En.default.data},u;try{this._compilations.add(t),t.serializeName=o,a.func(o,En.default.data,!1,()=>{a.let(En.default.json,(0,fr.str)``),B_(c),a.return(En.default.json)}),a.optimize(this.opts.code.optimize);let l=a.toString();u=`${a.scopeRefs(En.default.scope)}return ${l}`;let f=new Function(`${En.default.scope}`,u)(this.scope.get());this.scope.value(o,{ref:f}),t.serialize=f}catch(l){throw u&&this.logger.error("Error compiling serializer, function code:",u),delete t.serialize,delete t.serializeName,l}finally{this._compilations.delete(t)}return t}m7.default=K_e;function B_(t){let e;for(let r of y4t.jtdForms)if(r in t.schema){e=r;break}C4t(t,e?v4t[e]:D4t)}function C4t(t,e){let{gen:r,schema:n,data:s}=t;if(!n.nullable)return e(t);r.if((0,fr._)`${s} === undefined || ${s} === null`,()=>r.add(En.default.json,(0,fr._)`"null"`),()=>e(t))}function I4t(t){let{gen:e,schema:r,data:n}=t;e.add(En.default.json,(0,fr.str)`[`);let s=e.let("first",!0);e.forOf("el",n,i=>{p7(t,s),B_({...t,schema:r.elements,data:i})}),e.add(En.default.json,(0,fr.str)`]`)}function T4t(t){let{gen:e,schema:r,data:n}=t;e.add(En.default.json,(0,fr.str)`{`);let s=e.let("first",!0);e.forIn("key",n,i=>Y_e(t,i,r.values,s)),e.add(En.default.json,(0,fr.str)`}`)}function Y_e(t,e,r,n){let{gen:s,data:i}=t;p7(t,n),L_({...t,data:e}),s.add(En.default.json,(0,fr.str)`:`);let a=s.const("value",(0,fr._)`${i}${(0,fr.getProperty)(e)}`);B_({...t,schema:r,data:a})}function w4t(t){let{gen:e,schema:r,data:n}=t,{discriminator:s}=r;e.add(En.default.json,(0,fr.str)`{${JSON.stringify(s)}:`);let i=e.const("tag",(0,fr._)`${n}${(0,fr.getProperty)(s)}`);L_({...t,data:i}),e.if(!1);for(let a in r.mapping){e.elseIf((0,fr._)`${i} === ${a}`);let o=r.mapping[a];J_e({...t,schema:o},s)}e.endIf(),e.add(En.default.json,(0,fr.str)`}`)}function V_e(t){let{gen:e}=t;e.add(En.default.json,(0,fr.str)`{`),J_e(t),e.add(En.default.json,(0,fr.str)`}`)}function J_e(t,e){let{gen:r,schema:n,data:s}=t,{properties:i,optionalProperties:a}=n,o=f(i),c=f(a),u=p(o.concat(c)),l=!e,d;for(let g of o)l?l=!1:r.add(En.default.json,(0,fr.str)`,`),h(g,i[g],m(g));l&&(d=r.let("first",!0));for(let g of c){let b=m(g);r.if((0,fr.and)((0,fr._)`${b} !== undefined`,(0,b4t.isOwnProperty)(r,s,g)),()=>{p7(t,d),h(g,a[g],b)})}n.additionalProperties&&r.forIn("key",s,g=>r.if(A(g,u),()=>Y_e(t,g,{},d)));function f(g){return g?Object.keys(g):[]}function p(g){if(e&&g.push(e),new Set(g).size!==g.length)throw new Error("JTD: properties/optionalProperties/disciminator overlap");return g}function m(g){return r.const("value",(0,fr._)`${s}${(0,fr.getProperty)(g)}`)}function h(g,b,y){r.add(En.default.json,(0,fr.str)`${JSON.stringify(g)}:`),B_({...t,schema:b,data:y})}function A(g,b){return b.length?(0,fr.and)(...b.map(y=>(0,fr._)`${g} !== ${y}`)):!0}}function R4t(t){let{gen:e,schema:r,data:n}=t;switch(r.type){case"boolean":e.add(En.default.json,(0,fr._)`${n} ? "true" : "false"`);break;case"string":L_(t);break;case"timestamp":e.if((0,fr._)`${n} instanceof Date`,()=>e.add(En.default.json,(0,fr._)`'"' + ${n}.toISOString() + '"'`),()=>L_(t));break;default:N4t(t)}}function L_({gen:t,data:e}){t.add(En.default.json,(0,fr._)`${(0,_4t.useFunc)(t,S4t.default)}(${e})`)}function N4t({gen:t,data:e}){t.add(En.default.json,(0,fr._)`"" + ${e}`)}function O4t(t){let{gen:e,self:r,data:n,definitions:s,schema:i,schemaEnv:a}=t,{ref:o}=i,c=s[o];if(!c)throw new x4t.default(r.opts.uriResolver,"",o,`No definition ${o}`);if(!(0,E4t.hasRef)(c))return B_({...t,schema:c});let{root:u}=a,l=K_e.call(r,new z_e.SchemaEnv({schema:c,root:u}),s);e.add(En.default.json,(0,fr._)`${P4t(e,l)}(${n})`)}function P4t(t,e){return e.serialize?t.scopeValue("serialize",{ref:e.serialize}):(0,fr._)`${t.scopeValue("wrapper",{ref:e})}.serialize`}function D4t({gen:t,data:e}){t.add(En.default.json,(0,fr._)`JSON.stringify(${e})`)}function p7({gen:t},e){e?t.if(e,()=>t.assign(e,!1),()=>t.add(En.default.json,(0,fr.str)`,`)):t.add(En.default.json,(0,fr.str)`,`)}});var eSe=E(Lp=>{"use strict";Object.defineProperty(Lp,"__esModule",{value:!0});Lp.parseJsonString=Lp.parseJsonNumber=Lp.parseJson=void 0;var k4t=/position\s(\d+)(?: \(line \d+ column \d+\))?$/;function Id(t,e){let r;Id.message=void 0;let n;e&&(t=t.slice(e));try{return Id.position=e+t.length,JSON.parse(t)}catch(s){if(n=k4t.exec(s.message),!n){Id.message="unexpected end";return}r=+n[1];let i=t[r];t=t.slice(0,r),Id.position=e+r;try{return JSON.parse(t)}catch{Id.message=`unexpected token ${i}`;return}}}Lp.parseJson=Id;Id.message=void 0;Id.position=0;Id.code='require("ajv/dist/runtime/parseJson").parseJson';function Td(t,e,r){let n="",s;if(Td.message=void 0,t[e]==="-"&&(n+="-",e++),t[e]==="0")n+="0",e++;else if(!i(r)){a();return}if(r)return Td.position=e,+n;if(t[e]==="."&&(n+=".",e++,!i())){a();return}if(s=t[e],(s==="e"||s==="E")&&(n+="e",e++,s=t[e],(s==="+"||s==="-")&&(n+=s,e++),!i())){a();return}return Td.position=e,+n;function i(o){let c=!1;for(;s=t[e],s>="0"&&s<="9"&&(o===void 0||o-- >0);)c=!0,n+=s,e++;return c}function a(){Td.position=e,Td.message=e="a"&&n<="f")a+=n.charCodeAt(0)-L4t+10;else if(n>="0"&&n<="9")a+=n.charCodeAt(0)-B4t;else{s(`unexpected token ${n}`);return}e++}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 kp.position=e,r;function s(i){kp.position=e,kp.message=i}}Lp.parseJsonString=kp;kp.message=void 0;kp.position=0;kp.code='require("ajv/dist/runtime/parseJson").parseJsonString'});var dSe=E(_7=>{"use strict";Object.defineProperty(_7,"__esModule",{value:!0});var M4t=l7(),sSe=Qm(),ut=Et(),W4t=Ed(),cr=Zo(),$4t=di(),F4t=MO(),U4t=ZU(),A7=eSe(),iSe=Kt(),q4t=XU(),j4t={elements:V4t,values:z4t,discriminator:Y4t,properties:tSe,optionalProperties:tSe,enum:X4t,type:J4t,ref:Z4t};function aSe(t,e){let r=sSe.getCompilingSchema.call(this,t);if(r)return r;let{es5:n,lines:s}=this.opts.code,{ownProperties:i}=this.opts,a=new ut.CodeGen(this.scope,{es5:n,lines:s,ownProperties:i}),o=a.scopeName("parse"),c={self:this,gen:a,schema:t.schema,schemaEnv:t,definitions:e,data:cr.default.data,parseName:o,char:a.name("c")},u;try{this._compilations.add(t),t.parseName=o,H4t(c),a.optimize(this.opts.code.optimize);let l=a.toString();u=`${a.scopeRefs(cr.default.scope)}return ${l}`;let f=new Function(`${cr.default.scope}`,u)(this.scope.get());this.scope.value(o,{ref:f}),t.parse=f}catch(l){throw u&&this.logger.error("Error compiling parser, function code:",u),delete t.parse,delete t.parseName,l}finally{this._compilations.delete(t)}return t}_7.default=aSe;var g7=(0,ut._)`undefined`;function H4t(t){let{gen:e,parseName:r,char:n}=t;e.func(r,(0,ut._)`${cr.default.json}, ${cr.default.jsonPos}, ${cr.default.jsonPart}`,!1,()=>{e.let(cr.default.data),e.let(n),e.assign((0,ut._)`${r}.message`,g7),e.assign((0,ut._)`${r}.position`,g7),e.assign(cr.default.jsonPos,(0,ut._)`${cr.default.jsonPos} || 0`),e.const(cr.default.jsonLen,(0,ut._)`${cr.default.json}.length`),qO(t),E7(t),e.if(cr.default.jsonPart,()=>{e.assign((0,ut._)`${r}.position`,cr.default.jsonPos),e.return(cr.default.data)}),e.if((0,ut._)`${cr.default.jsonPos} === ${cr.default.jsonLen}`,()=>e.return(cr.default.data)),Ny(t)})}function qO(t){let e;for(let r of M4t.jtdForms)if(r in t.schema){e=r;break}e?G4t(t,j4t[e]):x7(t)}var Q4t=nSe(!0,nSe(!1,Ny));function G4t(t,e){let{gen:r,schema:n,data:s}=t;if(!n.nullable)return e(t);M_(t,"null",e,()=>r.assign(s,null))}function V4t(t){let{gen:e,schema:r,data:n}=t;Zu(t,"[");let s=e.let("i",0);e.assign(n,(0,ut._)`[]`),y7(t,"]",()=>{let i=e.let("el");qO({...t,schema:r.elements,data:i}),e.assign((0,ut._)`${n}[${s}++]`,i)})}function z4t(t){let{gen:e,schema:r,data:n}=t;Zu(t,"{"),e.assign(n,(0,ut._)`{}`),y7(t,"}",()=>K4t(t,r.values))}function y7(t,e,r){oSe(t,e,r),Zu(t,e)}function oSe(t,e,r){let{gen:n}=t;n.for((0,ut._)`;${cr.default.jsonPos}<${cr.default.jsonLen} && ${jO(1)}!==${e};`,()=>{r(),M_(t,",",()=>n.break(),s)});function s(){M_(t,e,()=>{},Ny)}}function K4t(t,e){let{gen:r}=t,n=r.let("key");Ym({...t,data:n}),Zu(t,":"),uSe(t,n,e)}function Y4t(t){let{gen:e,data:r,schema:n}=t,{discriminator:s,mapping:i}=n;Zu(t,"{"),e.assign(r,(0,ut._)`{}`);let a=e.const("pos",cr.default.jsonPos),o=e.let("value"),c=e.let("tag");oSe(t,"}",()=>{let u=e.let("key");Ym({...t,data:u}),Zu(t,":"),e.if((0,ut._)`${u} === ${s}`,()=>{Ym({...t,data:c}),e.assign((0,ut._)`${r}[${u}]`,c),e.break()},()=>x7({...t,data:o}))}),e.assign(cr.default.jsonPos,a),e.if((0,ut._)`${c} === undefined`),wd(t,(0,ut.str)`discriminator tag not found`);for(let u in i)e.elseIf((0,ut._)`${c} === ${u}`),cSe({...t,schema:i[u]},s);e.else(),wd(t,(0,ut.str)`discriminator value not in schema`),e.endIf()}function tSe(t){let{gen:e,data:r}=t;Zu(t,"{"),e.assign(r,(0,ut._)`{}`),cSe(t)}function cSe(t,e){let{gen:r,schema:n,data:s}=t,{properties:i,optionalProperties:a,additionalProperties:o}=n;if(y7(t,"}",()=>{let c=r.let("key");if(Ym({...t,data:c}),Zu(t,":"),r.if(!1),rSe(t,c,i),rSe(t,c,a),e){r.elseIf((0,ut._)`${c} === ${e}`);let u=r.let("tag");Ym({...t,data:u})}r.else(),o?x7({...t,data:(0,ut._)`${s}[${c}]`}):wd(t,(0,ut.str)`property ${c} not allowed`),r.endIf()}),i){let c=(0,$4t.hasPropFunc)(r),u=(0,ut.and)(...Object.keys(i).map(l=>(0,ut._)`${c}.call(${s}, ${l})`));r.if((0,ut.not)(u),()=>wd(t,(0,ut.str)`missing required properties`))}}function rSe(t,e,r={}){let{gen:n}=t;for(let s in r)n.elseIf((0,ut._)`${e} === ${s}`),uSe(t,e,r[s])}function uSe(t,e,r){qO({...t,schema:r,data:(0,ut._)`${t.data}[${e}]`})}function J4t(t){let{gen:e,schema:r,data:n,self:s}=t;switch(r.type){case"boolean":Q4t(t);break;case"string":Ym(t);break;case"timestamp":{Ym(t);let i=(0,iSe.useFunc)(e,q4t.default),{allowDate:a,parseDate:o}=s.opts,c=a?(0,ut._)`!${i}(${n}, true)`:(0,ut._)`!${i}(${n})`,u=o?(0,ut.or)(c,(0,ut._)`(${n} = new Date(${n}), false)`,(0,ut._)`isNaN(${n}.valueOf())`):c;e.if(u,()=>wd(t,(0,ut.str)`invalid timestamp`));break}case"float32":case"float64":h7(t);break;default:{let i=r.type;if(!s.opts.int32range&&(i==="int32"||i==="uint32"))h7(t,16),i==="uint32"&&e.if((0,ut._)`${n} < 0`,()=>wd(t,(0,ut.str)`integer out of range`));else{let[a,o,c]=U4t.intRange[i];h7(t,c),e.if((0,ut._)`${n} < ${a} || ${n} > ${o}`,()=>wd(t,(0,ut.str)`integer out of range`))}}}}function Ym(t){Zu(t,'"'),b7(t,A7.parseJsonString)}function X4t(t){let{gen:e,data:r,schema:n}=t,s=n.enum;Zu(t,'"'),e.if(!1);for(let i of s){let a=JSON.stringify(i).slice(1);e.elseIf((0,ut._)`${jO(a.length)} === ${a}`),e.assign(r,(0,ut.str)`${i}`),e.add(cr.default.jsonPos,a.length)}e.else(),Ny(t),e.endIf()}function h7(t,e){let{gen:r}=t;E7(t),r.if((0,ut._)`"-0123456789".indexOf(${jO(1)}) < 0`,()=>Ny(t),()=>b7(t,A7.parseJsonNumber,e))}function nSe(t,e){return r=>{let{gen:n,data:s}=r;M_(r,`${t}`,()=>e(r),()=>n.assign(s,t))}}function Z4t(t){let{gen:e,self:r,definitions:n,schema:s,schemaEnv:i}=t,{ref:a}=s,o=n[a];if(!o)throw new W4t.default(r.opts.uriResolver,"",a,`No definition ${a}`);if(!(0,F4t.hasRef)(o))return qO({...t,schema:o});let{root:c}=i,u=aSe.call(r,new sSe.SchemaEnv({schema:o,root:c}),n);lSe(t,eMt(e,u),!0)}function eMt(t,e){return e.parse?t.scopeValue("parse",{ref:e.parse}):(0,ut._)`${t.scopeValue("wrapper",{ref:e})}.parse`}function x7(t){b7(t,A7.parseJson)}function b7(t,e,r){lSe(t,(0,iSe.useFunc)(t.gen,e),r)}function lSe(t,e,r){let{gen:n,data:s}=t;n.assign(s,(0,ut._)`${e}(${cr.default.json}, ${cr.default.jsonPos}${r?(0,ut._)`, ${r}`:ut.nil})`),n.assign(cr.default.jsonPos,(0,ut._)`${e}.position`),n.if((0,ut._)`${s} === undefined`,()=>wd(t,(0,ut._)`${e}.message`))}function Zu(t,e){M_(t,e,Ny)}function M_(t,e,r,n){let{gen:s}=t,i=e.length;E7(t),s.if((0,ut._)`${jO(i)} === ${e}`,()=>{s.add(cr.default.jsonPos,i),n?.(t)},()=>r(t))}function E7({gen:t,char:e}){t.code((0,ut._)`while((${e}=${cr.default.json}[${cr.default.jsonPos}],${e}===" "||${e}==="\\n"||${e}==="\\r"||${e}==="\\t"))${cr.default.jsonPos}++;`)}function jO(t){return t===1?(0,ut._)`${cr.default.json}[${cr.default.jsonPos}]`:(0,ut._)`${cr.default.json}.slice(${cr.default.jsonPos}, ${cr.default.jsonPos}+${t})`}function Ny(t){wd(t,(0,ut._)`"unexpected token " + ${cr.default.json}[${cr.default.jsonPos}]`)}function wd({gen:t,parseName:e},r){t.assign((0,ut._)`${e}.message`,r),t.assign((0,ut._)`${e}.position`,cr.default.jsonPos),t.return(g7)}});var C7=E((kn,v7)=>{"use strict";Object.defineProperty(kn,"__esModule",{value:!0});kn.MissingRefError=kn.ValidationError=kn.CodeGen=kn.Name=kn.nil=kn.stringify=kn.str=kn._=kn.KeywordCxt=kn.Ajv=void 0;var tMt=sU(),rMt=F_e(),nMt=H_e(),sMt=X_e(),iMt=dSe(),S7="JTD-meta-schema",Oy=class extends tMt.default{constructor(e={}){super({...e,jtd:!0})}_addVocabularies(){super._addVocabularies(),this.addVocabulary(rMt.default)}_addDefaultMetaSchema(){super._addDefaultMetaSchema(),this.opts.meta&&this.addMetaSchema(nMt.default,S7,!1)}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(S7)?S7:void 0)}compileSerializer(e){let r=this._addSchema(e);return r.serialize||this._compileSerializer(r)}compileParser(e){let r=this._addSchema(e);return r.parse||this._compileParser(r)}_compileSerializer(e){if(sMt.default.call(this,e,e.schema.definitions||{}),!e.serialize)throw new Error("ajv implementation error");return e.serialize}_compileParser(e){if(iMt.default.call(this,e,e.schema.definitions||{}),!e.parse)throw new Error("ajv implementation error");return e.parse}};kn.Ajv=Oy;v7.exports=kn=Oy;v7.exports.Ajv=Oy;Object.defineProperty(kn,"__esModule",{value:!0});kn.default=Oy;var aMt=Ay();Object.defineProperty(kn,"KeywordCxt",{enumerable:!0,get:function(){return aMt.KeywordCxt}});var Py=Et();Object.defineProperty(kn,"_",{enumerable:!0,get:function(){return Py._}});Object.defineProperty(kn,"str",{enumerable:!0,get:function(){return Py.str}});Object.defineProperty(kn,"stringify",{enumerable:!0,get:function(){return Py.stringify}});Object.defineProperty(kn,"nil",{enumerable:!0,get:function(){return Py.nil}});Object.defineProperty(kn,"Name",{enumerable:!0,get:function(){return Py.Name}});Object.defineProperty(kn,"CodeGen",{enumerable:!0,get:function(){return Py.CodeGen}});var oMt=y_();Object.defineProperty(kn,"ValidationError",{enumerable:!0,get:function(){return oMt.default}});var cMt=Ed();Object.defineProperty(kn,"MissingRefError",{enumerable:!0,get:function(){return cMt.default}})});var I7=E(($Lr,fSe)=>{"use strict";var uMt=QW();fSe.exports=Object.freeze({coerceTypes:"array",useDefaults:!0,removeAdditional:!0,uriResolver:uMt,addUsedSchema:!1,allErrors:!1})});var ySe=E(el=>{"use strict";Object.defineProperty(el,"__esModule",{value:!0});el.formatNames=el.fastFormats=el.fullFormats=void 0;function Dy(t,e){return{validate:t,compare:e}}el.fullFormats={date:Dy(hSe,R7),time:Dy(gSe,N7),"date-time":Dy(pMt,ASe),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:gMt,"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:SMt,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:AMt,int32:{type:"number",validate:bMt},int64:{type:"number",validate:EMt},float:{type:"number",validate:mSe},double:{type:"number",validate:mSe},password:!0,binary:!0};el.fastFormats={...el.fullFormats,date:Dy(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,R7),time:Dy(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,N7),"date-time":Dy(/^\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,ASe),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};el.formatNames=Object.keys(el.fullFormats);function lMt(t){return t%4===0&&(t%100!==0||t%400===0)}var dMt=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,fMt=[0,31,28,31,30,31,30,31,31,30,31,30,31];function hSe(t){let e=dMt.exec(t);if(!e)return!1;let r=+e[1],n=+e[2],s=+e[3];return n>=1&&n<=12&&s>=1&&s<=(n===2&&lMt(r)?29:fMt[n])}function R7(t,e){if(t&&e)return t>e?1:te?1:t=yMt}function EMt(t){return Number.isInteger(t)}function mSe(){return!0}var _Mt=/[^\\]\\Z/;function SMt(t){if(_Mt.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var F_=E(Mr=>{"use strict";Object.defineProperty(Mr,"__esModule",{value:!0});Mr.regexpCode=Mr.getEsmExportName=Mr.getProperty=Mr.safeStringify=Mr.stringify=Mr.strConcat=Mr.addCodeArg=Mr.str=Mr._=Mr.nil=Mr._Code=Mr.Name=Mr.IDENTIFIER=Mr._CodeOrName=void 0;var W_=class{};Mr._CodeOrName=W_;Mr.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Jm=class extends W_{constructor(e){if(super(),!Mr.IDENTIFIER.test(e))throw new Error("CodeGen: name must be a valid identifier");this.str=e}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};Mr.Name=Jm;var rc=class extends W_{constructor(e){super(),this._items=typeof e=="string"?[e]:e}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let e=this._items[0];return e===""||e==='""'}get str(){var e;return(e=this._str)!==null&&e!==void 0?e:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var e;return(e=this._names)!==null&&e!==void 0?e:this._names=this._items.reduce((r,n)=>(n instanceof Jm&&(r[n.str]=(r[n.str]||0)+1),r),{})}};Mr._Code=rc;Mr.nil=new rc("");function xSe(t,...e){let r=[t[0]],n=0;for(;n{"use strict";Object.defineProperty(Ua,"__esModule",{value:!0});Ua.ValueScope=Ua.ValueScopeName=Ua.Scope=Ua.varKinds=Ua.UsedValueState=void 0;var Fa=F_(),D7=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},HO;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(HO||(Ua.UsedValueState=HO={}));Ua.varKinds={const:new Fa.Name("const"),let:new Fa.Name("let"),var:new Fa.Name("var")};var QO=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof Fa.Name?e:this.name(e)}name(e){return new Fa.Name(this._newName(e))}_newName(e){let r=this._names[e]||this._nameGroup(e);return`${e}${r.index++}`}_nameGroup(e){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(e)||this._prefixes&&!this._prefixes.has(e))throw new Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};Ua.Scope=QO;var GO=class extends Fa.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,Fa._)`.${new Fa.Name(r)}[${n}]`}};Ua.ValueScopeName=GO;var PMt=(0,Fa._)`\n`,k7=class extends QO{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?PMt:Fa.nil}}get(){return this._scope}name(e){return new GO(e,this._newName(e))}value(e,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let s=this.toName(e),{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(e,r){let n=this._values[e];if(n)return n.get(r)}scopeRefs(e,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,Fa._)`${e}${n.scopePath}`})}scopeCode(e=this._values,r,n){return this._reduceValues(e,s=>{if(s.value===void 0)throw new Error(`CodeGen: name "${s}" has no value`);return s.value.code},r,n)}_reduceValues(e,r,n={},s){let i=Fa.nil;for(let a in e){let o=e[a];if(!o)continue;let c=n[a]=n[a]||new Map;o.forEach(u=>{if(c.has(u))return;c.set(u,HO.Started);let l=r(u);if(l){let d=this.opts.es5?Ua.varKinds.var:Ua.varKinds.const;i=(0,Fa._)`${i}${d} ${u} = ${l};${this.opts._n}`}else if(l=s?.(u))i=(0,Fa._)`${i}${l}${this.opts._n}`;else throw new D7(u);c.set(u,HO.Completed)})}return i}};Ua.ValueScope=k7});var Yt=E(er=>{"use strict";Object.defineProperty(er,"__esModule",{value:!0});er.or=er.and=er.not=er.CodeGen=er.operators=er.varKinds=er.ValueScopeName=er.ValueScope=er.Scope=er.Name=er.regexpCode=er.stringify=er.getProperty=er.nil=er.strConcat=er.str=er._=void 0;var xr=F_(),Kc=L7(),Bp=F_();Object.defineProperty(er,"_",{enumerable:!0,get:function(){return Bp._}});Object.defineProperty(er,"str",{enumerable:!0,get:function(){return Bp.str}});Object.defineProperty(er,"strConcat",{enumerable:!0,get:function(){return Bp.strConcat}});Object.defineProperty(er,"nil",{enumerable:!0,get:function(){return Bp.nil}});Object.defineProperty(er,"getProperty",{enumerable:!0,get:function(){return Bp.getProperty}});Object.defineProperty(er,"stringify",{enumerable:!0,get:function(){return Bp.stringify}});Object.defineProperty(er,"regexpCode",{enumerable:!0,get:function(){return Bp.regexpCode}});Object.defineProperty(er,"Name",{enumerable:!0,get:function(){return Bp.Name}});var YO=L7();Object.defineProperty(er,"Scope",{enumerable:!0,get:function(){return YO.Scope}});Object.defineProperty(er,"ValueScope",{enumerable:!0,get:function(){return YO.ValueScope}});Object.defineProperty(er,"ValueScopeName",{enumerable:!0,get:function(){return YO.ValueScopeName}});Object.defineProperty(er,"varKinds",{enumerable:!0,get:function(){return YO.varKinds}});er.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 Rd=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},B7=class extends Rd{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?Kc.varKinds.var:this.varKind,s=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${s};`+r}optimizeNames(e,r){if(e[this.name.str])return this.rhs&&(this.rhs=Ly(this.rhs,e,r)),this}get names(){return this.rhs instanceof xr._CodeOrName?this.rhs.names:{}}},VO=class extends Rd{constructor(e,r,n){super(),this.lhs=e,this.rhs=r,this.sideEffects=n}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,r){if(!(this.lhs instanceof xr.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=Ly(this.rhs,e,r),this}get names(){let e=this.lhs instanceof xr.Name?{}:{...this.lhs.names};return KO(e,this.rhs)}},M7=class extends VO{constructor(e,r,n,s){super(e,n,s),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},W7=class extends Rd{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},$7=class extends Rd{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},F7=class extends Rd{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},U7=class extends Rd{constructor(e){super(),this.code=e}render({_n:e}){return`${this.code};`+e}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(e,r){return this.code=Ly(this.code,e,r),this}get names(){return this.code instanceof xr._CodeOrName?this.code.names:{}}},U_=class extends Rd{constructor(e=[]){super(),this.nodes=e}render(e){return this.nodes.reduce((r,n)=>r+n.render(e),"")}optimizeNodes(){let{nodes:e}=this,r=e.length;for(;r--;){let n=e[r].optimizeNodes();Array.isArray(n)?e.splice(r,1,...n):n?e[r]=n:e.splice(r,1)}return e.length>0?this:void 0}optimizeNames(e,r){let{nodes:n}=this,s=n.length;for(;s--;){let i=n[s];i.optimizeNames(e,r)||(DMt(e,i.names),n.splice(s,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>eh(e,r.names),{})}},Nd=class extends U_{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},q7=class extends U_{},ky=class extends Nd{};ky.kind="else";var Xm=class t extends Nd{constructor(e,r){super(r),this.condition=e}render(e){let r=`if(${this.condition})`+super.render(e);return this.else&&(r+="else "+this.else.render(e)),r}optimizeNodes(){super.optimizeNodes();let e=this.condition;if(e===!0)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new ky(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(ESe(e),r instanceof t?[r]:r.nodes);if(!(e===!1||!this.nodes.length))return this}optimizeNames(e,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(e,r),!!(super.optimizeNames(e,r)||this.else))return this.condition=Ly(this.condition,e,r),this}get names(){let e=super.names;return KO(e,this.condition),this.else&&eh(e,this.else.names),e}};Xm.kind="if";var Zm=class extends Nd{};Zm.kind="for";var j7=class extends Zm{constructor(e){super(),this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iteration=Ly(this.iteration,e,r),this}get names(){return eh(super.names,this.iteration.names)}},H7=class extends Zm{constructor(e,r,n,s){super(),this.varKind=e,this.name=r,this.from=n,this.to=s}render(e){let r=e.es5?Kc.varKinds.var:this.varKind,{name:n,from:s,to:i}=this;return`for(${r} ${n}=${s}; ${n}<${i}; ${n}++)`+super.render(e)}get names(){let e=KO(super.names,this.from);return KO(e,this.to)}},zO=class extends Zm{constructor(e,r,n,s){super(),this.loop=e,this.varKind=r,this.name=n,this.iterable=s}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iterable=Ly(this.iterable,e,r),this}get names(){return eh(super.names,this.iterable.names)}},q_=class extends Nd{constructor(e,r,n){super(),this.name=e,this.args=r,this.async=n}render(e){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(e)}};q_.kind="func";var j_=class extends U_{render(e){return"return "+super.render(e)}};j_.kind="return";var Q7=class extends Nd{render(e){let r="try"+super.render(e);return this.catch&&(r+=this.catch.render(e)),this.finally&&(r+=this.finally.render(e)),r}optimizeNodes(){var e,r;return super.optimizeNodes(),(e=this.catch)===null||e===void 0||e.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(e,r){var n,s;return super.optimizeNames(e,r),(n=this.catch)===null||n===void 0||n.optimizeNames(e,r),(s=this.finally)===null||s===void 0||s.optimizeNames(e,r),this}get names(){let e=super.names;return this.catch&&eh(e,this.catch.names),this.finally&&eh(e,this.finally.names),e}},H_=class extends Nd{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};H_.kind="catch";var Q_=class extends Nd{render(e){return"finally"+super.render(e)}};Q_.kind="finally";var G7=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?` -`:""},this._extScope=e,this._scope=new Kc.Scope({parent:e}),this._nodes=[new q7]}toString(){return this._root.render(this.opts)}name(e){return this._scope.name(e)}scopeName(e){return this._extScope.name(e)}scopeValue(e,r){let n=this._extScope.value(e,r);return(this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(e,r){return this._extScope.getValue(e,r)}scopeRefs(e){return this._extScope.scopeRefs(e,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(e,r,n,s){let i=this._scope.toName(r);return n!==void 0&&s&&(this._constants[i.str]=n),this._leafNode(new B7(e,i,n)),i}const(e,r,n){return this._def(Kc.varKinds.const,e,r,n)}let(e,r,n){return this._def(Kc.varKinds.let,e,r,n)}var(e,r,n){return this._def(Kc.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new VO(e,r,n))}add(e,r){return this._leafNode(new M7(e,er.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==xr.nil&&this._leafNode(new U7(e)),this}object(...e){let r=["{"];for(let[n,s]of e)r.length>1&&r.push(","),r.push(n),(n!==s||this.opts.es5)&&(r.push(":"),(0,xr.addCodeArg)(r,s));return r.push("}"),new xr._Code(r)}if(e,r,n){if(this._blockNode(new Xm(e)),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(e){return this._elseNode(new Xm(e))}else(){return this._elseNode(new ky)}endIf(){return this._endBlockNode(Xm,ky)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new j7(e),r)}forRange(e,r,n,s,i=this.opts.es5?Kc.varKinds.var:Kc.varKinds.let){let a=this._scope.toName(e);return this._for(new H7(i,a,r,n),()=>s(a))}forOf(e,r,n,s=Kc.varKinds.const){let i=this._scope.toName(e);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(i,(0,xr._)`${a}[${o}]`),n(i)})}return this._for(new zO("of",s,i,r),()=>n(i))}forIn(e,r,n,s=this.opts.es5?Kc.varKinds.var:Kc.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,xr._)`Object.keys(${r})`,n);let i=this._scope.toName(e);return this._for(new zO("in",s,i,r),()=>n(i))}endFor(){return this._endBlockNode(Zm)}label(e){return this._leafNode(new W7(e))}break(e){return this._leafNode(new $7(e))}return(e){let r=new j_;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(j_)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let s=new Q7;if(this._blockNode(s),this.code(e),r){let i=this.name("e");this._currNode=s.catch=new H_(i),r(i)}return n&&(this._currNode=s.finally=new Q_,this.code(n)),this._endBlockNode(H_,Q_)}throw(e){return this._leafNode(new F7(e))}block(e,r){return this._blockStarts.push(this._nodes.length),e&&this.code(e).endBlock(r),this}endBlock(e){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||e!==void 0&&n!==e)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${e} expected`);return this._nodes.length=r,this}func(e,r=xr.nil,n,s){return this._blockNode(new q_(e,r,n)),s&&this.code(s).endFunc(),this}endFunc(){return this._endBlockNode(q_)}optimize(e=1){for(;e-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(e){return this._currNode.nodes.push(e),this}_blockNode(e){this._currNode.nodes.push(e),this._nodes.push(e)}_endBlockNode(e,r){let n=this._currNode;if(n instanceof e||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${e.kind}/${r.kind}`:e.kind}"`)}_elseNode(e){let r=this._currNode;if(!(r instanceof Xm))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let r=this._nodes;r[r.length-1]=e}};er.CodeGen=G7;function eh(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function KO(t,e){return e instanceof xr._CodeOrName?eh(t,e.names):t}function Ly(t,e,r){if(t instanceof xr.Name)return n(t);if(!s(t))return t;return new xr._Code(t._items.reduce((i,a)=>(a instanceof xr.Name&&(a=n(a)),a instanceof xr._Code?i.push(...a._items):i.push(a),i),[]));function n(i){let a=r[i.str];return a===void 0||e[i.str]!==1?i:(delete e[i.str],a)}function s(i){return i instanceof xr._Code&&i._items.some(a=>a instanceof xr.Name&&e[a.str]===1&&r[a.str]!==void 0)}}function DMt(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function ESe(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,xr._)`!${V7(t)}`}er.not=ESe;var kMt=_Se(er.operators.AND);function LMt(...t){return t.reduce(kMt)}er.and=LMt;var BMt=_Se(er.operators.OR);function MMt(...t){return t.reduce(BMt)}er.or=MMt;function _Se(t){return(e,r)=>e===xr.nil?r:r===xr.nil?e:(0,xr._)`${V7(e)} ${t} ${V7(r)}`}function V7(t){return t instanceof xr.Name?t:(0,xr._)`(${t})`}});var Wr=E(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 pn=Yt(),WMt=F_();function $Mt(t){let e={};for(let r of t)e[r]=!0;return e}sr.toHash=$Mt;function FMt(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(CSe(t,e),!ISe(e,t.self.RULES.all))}sr.alwaysValidSchema=FMt;function CSe(t,e=t.schema){let{opts:r,self:n}=t;if(!r.strictSchema||typeof e=="boolean")return;let s=n.RULES.keywords;for(let i in e)s[i]||RSe(t,`unknown keyword: "${i}"`)}sr.checkUnknownRules=CSe;function ISe(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}sr.schemaHasRules=ISe;function UMt(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}sr.schemaHasRulesButRef=UMt;function qMt({topSchemaRef:t,schemaPath:e},r,n,s){if(!s){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,pn._)`${r}`}return(0,pn._)`${t}${e}${(0,pn.getProperty)(n)}`}sr.schemaRefOrVal=qMt;function jMt(t){return TSe(decodeURIComponent(t))}sr.unescapeFragment=jMt;function HMt(t){return encodeURIComponent(K7(t))}sr.escapeFragment=HMt;function K7(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}sr.escapeJsonPointer=K7;function TSe(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}sr.unescapeJsonPointer=TSe;function QMt(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}sr.eachItem=QMt;function SSe({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(s,i,a,o)=>{let c=a===void 0?i:a instanceof pn.Name?(i instanceof pn.Name?t(s,i,a):e(s,i,a),a):i instanceof pn.Name?(e(s,a,i),i):r(i,a);return o===pn.Name&&!(c instanceof pn.Name)?n(s,c):c}}sr.mergeEvaluated={props:SSe({mergeNames:(t,e,r)=>t.if((0,pn._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,pn._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,pn._)`${r} || {}`).code((0,pn._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,pn._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,pn._)`${r} || {}`),Y7(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:wSe}),items:SSe({mergeNames:(t,e,r)=>t.if((0,pn._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,pn._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,pn._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,pn._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function wSe(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,pn._)`{}`);return e!==void 0&&Y7(t,r,e),r}sr.evaluatedPropsToName=wSe;function Y7(t,e,r){Object.keys(r).forEach(n=>t.assign((0,pn._)`${e}${(0,pn.getProperty)(n)}`,!0))}sr.setEvaluated=Y7;var vSe={};function GMt(t,e){return t.scopeValue("func",{ref:e,code:vSe[e.code]||(vSe[e.code]=new WMt._Code(e.code))})}sr.useFunc=GMt;var z7;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(z7||(sr.Type=z7={}));function VMt(t,e,r){if(t instanceof pn.Name){let n=e===z7.Num;return r?n?(0,pn._)`"[" + ${t} + "]"`:(0,pn._)`"['" + ${t} + "']"`:n?(0,pn._)`"/" + ${t}`:(0,pn._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,pn.getProperty)(t).toString():"/"+K7(t)}sr.getErrorPath=VMt;function RSe(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}sr.checkStrictMode=RSe});var Od=E(J7=>{"use strict";Object.defineProperty(J7,"__esModule",{value:!0});var Li=Yt(),zMt={data:new Li.Name("data"),valCxt:new Li.Name("valCxt"),instancePath:new Li.Name("instancePath"),parentData:new Li.Name("parentData"),parentDataProperty:new Li.Name("parentDataProperty"),rootData:new Li.Name("rootData"),dynamicAnchors:new Li.Name("dynamicAnchors"),vErrors:new Li.Name("vErrors"),errors:new Li.Name("errors"),this:new Li.Name("this"),self:new Li.Name("self"),scope:new Li.Name("scope"),json:new Li.Name("json"),jsonPos:new Li.Name("jsonPos"),jsonLen:new Li.Name("jsonLen"),jsonPart:new Li.Name("jsonPart")};J7.default=zMt});var G_=E(Bi=>{"use strict";Object.defineProperty(Bi,"__esModule",{value:!0});Bi.extendErrors=Bi.resetErrorsCount=Bi.reportExtraError=Bi.reportError=Bi.keyword$DataError=Bi.keywordError=void 0;var Ir=Yt(),JO=Wr(),oa=Od();Bi.keywordError={message:({keyword:t})=>(0,Ir.str)`must pass "${t}" keyword validation`};Bi.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,Ir.str)`"${t}" keyword must be ${e} ($data)`:(0,Ir.str)`"${t}" keyword is invalid ($data)`};function KMt(t,e=Bi.keywordError,r,n){let{it:s}=t,{gen:i,compositeRule:a,allErrors:o}=s,c=PSe(t,e,r);n??(a||o)?NSe(i,c):OSe(s,(0,Ir._)`[${c}]`)}Bi.reportError=KMt;function YMt(t,e=Bi.keywordError,r){let{it:n}=t,{gen:s,compositeRule:i,allErrors:a}=n,o=PSe(t,e,r);NSe(s,o),i||a||OSe(n,oa.default.vErrors)}Bi.reportExtraError=YMt;function JMt(t,e){t.assign(oa.default.errors,e),t.if((0,Ir._)`${oa.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,Ir._)`${oa.default.vErrors}.length`,e),()=>t.assign(oa.default.vErrors,null)))}Bi.resetErrorsCount=JMt;function XMt({gen:t,keyword:e,schemaValue:r,data:n,errsCount:s,it:i}){if(s===void 0)throw new Error("ajv implementation error");let a=t.name("err");t.forRange("i",s,oa.default.errors,o=>{t.const(a,(0,Ir._)`${oa.default.vErrors}[${o}]`),t.if((0,Ir._)`${a}.instancePath === undefined`,()=>t.assign((0,Ir._)`${a}.instancePath`,(0,Ir.strConcat)(oa.default.instancePath,i.errorPath))),t.assign((0,Ir._)`${a}.schemaPath`,(0,Ir.str)`${i.errSchemaPath}/${e}`),i.opts.verbose&&(t.assign((0,Ir._)`${a}.schema`,r),t.assign((0,Ir._)`${a}.data`,n))})}Bi.extendErrors=XMt;function NSe(t,e){let r=t.const("err",e);t.if((0,Ir._)`${oa.default.vErrors} === null`,()=>t.assign(oa.default.vErrors,(0,Ir._)`[${r}]`),(0,Ir._)`${oa.default.vErrors}.push(${r})`),t.code((0,Ir._)`${oa.default.errors}++`)}function OSe(t,e){let{gen:r,validateName:n,schemaEnv:s}=t;s.$async?r.throw((0,Ir._)`new ${t.ValidationError}(${e})`):(r.assign((0,Ir._)`${n}.errors`,e),r.return(!1))}var th={keyword:new Ir.Name("keyword"),schemaPath:new Ir.Name("schemaPath"),params:new Ir.Name("params"),propertyName:new Ir.Name("propertyName"),message:new Ir.Name("message"),schema:new Ir.Name("schema"),parentSchema:new Ir.Name("parentSchema")};function PSe(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,Ir._)`{}`:ZMt(t,e,r)}function ZMt(t,e,r={}){let{gen:n,it:s}=t,i=[e6t(s,r),t6t(t,r)];return r6t(t,e,i),n.object(...i)}function e6t({errorPath:t},{instancePath:e}){let r=e?(0,Ir.str)`${t}${(0,JO.getErrorPath)(e,JO.Type.Str)}`:t;return[oa.default.instancePath,(0,Ir.strConcat)(oa.default.instancePath,r)]}function t6t({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let s=n?e:(0,Ir.str)`${e}/${t}`;return r&&(s=(0,Ir.str)`${s}${(0,JO.getErrorPath)(r,JO.Type.Str)}`),[th.schemaPath,s]}function r6t(t,{params:e,message:r},n){let{keyword:s,data:i,schemaValue:a,it:o}=t,{opts:c,propertyName:u,topSchemaRef:l,schemaPath:d}=o;n.push([th.keyword,s],[th.params,typeof e=="function"?e(t):e||(0,Ir._)`{}`]),c.messages&&n.push([th.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([th.schema,a],[th.parentSchema,(0,Ir._)`${l}${d}`],[oa.default.data,i]),u&&n.push([th.propertyName,u])}});var kSe=E(By=>{"use strict";Object.defineProperty(By,"__esModule",{value:!0});By.boolOrEmptySchema=By.topBoolOrEmptySchema=void 0;var n6t=G_(),s6t=Yt(),i6t=Od(),a6t={message:"boolean schema is false"};function o6t(t){let{gen:e,schema:r,validateName:n}=t;r===!1?DSe(t,!1):typeof r=="object"&&r.$async===!0?e.return(i6t.default.data):(e.assign((0,s6t._)`${n}.errors`,null),e.return(!0))}By.topBoolOrEmptySchema=o6t;function c6t(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),DSe(t)):r.var(e,!0)}By.boolOrEmptySchema=c6t;function DSe(t,e){let{gen:r,data:n}=t,s={gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:t};(0,n6t.reportError)(s,a6t,void 0,e)}});var X7=E(My=>{"use strict";Object.defineProperty(My,"__esModule",{value:!0});My.getRules=My.isJSONType=void 0;var u6t=["string","number","integer","boolean","null","object","array"],l6t=new Set(u6t);function d6t(t){return typeof t=="string"&&l6t.has(t)}My.isJSONType=d6t;function f6t(){let t={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...t,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},t.number,t.string,t.array,t.object],post:{rules:[]},all:{},keywords:{}}}My.getRules=f6t});var Z7=E(Mp=>{"use strict";Object.defineProperty(Mp,"__esModule",{value:!0});Mp.shouldUseRule=Mp.shouldUseGroup=Mp.schemaHasRulesForType=void 0;function p6t({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&LSe(t,n)}Mp.schemaHasRulesForType=p6t;function LSe(t,e){return e.rules.some(r=>BSe(t,r))}Mp.shouldUseGroup=LSe;function BSe(t,e){var r;return t[e.keyword]!==void 0||((r=e.definition.implements)===null||r===void 0?void 0:r.some(n=>t[n]!==void 0))}Mp.shouldUseRule=BSe});var V_=E(Mi=>{"use strict";Object.defineProperty(Mi,"__esModule",{value:!0});Mi.reportTypeError=Mi.checkDataTypes=Mi.checkDataType=Mi.coerceAndCheckDataType=Mi.getJSONTypes=Mi.getSchemaTypes=Mi.DataType=void 0;var m6t=X7(),h6t=Z7(),g6t=G_(),Qt=Yt(),MSe=Wr(),Wy;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(Wy||(Mi.DataType=Wy={}));function A6t(t){let e=WSe(t.type);if(e.includes("null")){if(t.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!e.length&&t.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');t.nullable===!0&&e.push("null")}return e}Mi.getSchemaTypes=A6t;function WSe(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(m6t.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}Mi.getJSONTypes=WSe;function y6t(t,e){let{gen:r,data:n,opts:s}=t,i=x6t(e,s.coerceTypes),a=e.length>0&&!(i.length===0&&e.length===1&&(0,h6t.schemaHasRulesForType)(t,e[0]));if(a){let o=t9(e,n,s.strictNumbers,Wy.Wrong);r.if(o,()=>{i.length?b6t(t,e,i):r9(t)})}return a}Mi.coerceAndCheckDataType=y6t;var $Se=new Set(["string","number","integer","boolean","null"]);function x6t(t,e){return e?t.filter(r=>$Se.has(r)||e==="array"&&r==="array"):[]}function b6t(t,e,r){let{gen:n,data:s,opts:i}=t,a=n.let("dataType",(0,Qt._)`typeof ${s}`),o=n.let("coerced",(0,Qt._)`undefined`);i.coerceTypes==="array"&&n.if((0,Qt._)`${a} == 'object' && Array.isArray(${s}) && ${s}.length == 1`,()=>n.assign(s,(0,Qt._)`${s}[0]`).assign(a,(0,Qt._)`typeof ${s}`).if(t9(e,s,i.strictNumbers),()=>n.assign(o,s))),n.if((0,Qt._)`${o} !== undefined`);for(let u of r)($Se.has(u)||u==="array"&&i.coerceTypes==="array")&&c(u);n.else(),r9(t),n.endIf(),n.if((0,Qt._)`${o} !== undefined`,()=>{n.assign(s,o),E6t(t,o)});function c(u){switch(u){case"string":n.elseIf((0,Qt._)`${a} == "number" || ${a} == "boolean"`).assign(o,(0,Qt._)`"" + ${s}`).elseIf((0,Qt._)`${s} === null`).assign(o,(0,Qt._)`""`);return;case"number":n.elseIf((0,Qt._)`${a} == "boolean" || ${s} === null + `),s}jA.exports=u7;jA.exports.default=u7;jA.exports.build=u7;jA.exports.validLargeArrayMechanisms=kEe;jA.exports.restore=function({code:t,validator:e,serializer:r}){return Function.apply(null,["validator","serializer",t]).apply(null,[e,r])}});var $Ee=_((hUr,l7)=>{"use strict";var Q4t=d7();function WEe(t={readMode:!0}){if(t.readMode===!0&&typeof t.restoreFunction!="function")throw new Error("You must provide a function for the restoreFunction-option when readMode ON");if(t.readMode!==!0&&typeof t.storeFunction!="function")throw new Error("You must provide a function for the storeFunction-option when readMode OFF");if(t.readMode===!0)return function(){return function(n){return t.restoreFunction(n)}};let e=Q4t();return function(n,s={}){s.mode="standalone";let i=e(n,s);return function(a){let o=i(a);return t.storeFunction(a,o),new Function(o)}}}l7.exports=WEe;l7.exports.default=WEe});var d7=_((gUr,dv)=>{"use strict";var H4t=MEe();function f7(){return function(e,r){let n=Object.assign({},r,{schema:e});return G4t.bind(null,n)}}function G4t(t,{schema:e}){return t.schema&&e.$id&&t.schema[e.$id]&&(t.schema={...t.schema},delete t.schema[e.$id]),H4t(e,t)}dv.exports=f7;dv.exports.default=f7;dv.exports.SerializerSelector=f7;dv.exports.StandaloneSerializer=$Ee()});var QA=_($r=>{"use strict";Object.defineProperty($r,"__esModule",{value:!0});$r.regexpCode=$r.getEsmExportName=$r.getProperty=$r.safeStringify=$r.stringify=$r.strConcat=$r.addCodeArg=$r.str=$r._=$r.nil=$r._Code=$r.Name=$r.IDENTIFIER=$r._CodeOrName=void 0;var fv=class{};$r._CodeOrName=fv;$r.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var oh=class extends fv{constructor(e){if(super(),!$r.IDENTIFIER.test(e))throw new Error("CodeGen: name must be a valid identifier");this.str=e}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};$r.Name=oh;var lc=class extends fv{constructor(e){super(),this._items=typeof e=="string"?[e]:e}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let e=this._items[0];return e===""||e==='""'}get str(){var e;return(e=this._str)!==null&&e!==void 0?e:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var e;return(e=this._names)!==null&&e!==void 0?e:this._names=this._items.reduce((r,n)=>(n instanceof oh&&(r[n.str]=(r[n.str]||0)+1),r),{})}};$r._Code=lc;$r.nil=new lc("");function UEe(t,...e){let r=[t[0]],n=0;for(;n{"use strict";Object.defineProperty(Ga,"__esModule",{value:!0});Ga.ValueScope=Ga.ValueScopeName=Ga.Scope=Ga.varKinds=Ga.UsedValueState=void 0;var Ha=QA(),h7=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},Tk;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(Tk||(Ga.UsedValueState=Tk={}));Ga.varKinds={const:new Ha.Name("const"),let:new Ha.Name("let"),var:new Ha.Name("var")};var wk=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof Ha.Name?e:this.name(e)}name(e){return new Ha.Name(this._newName(e))}_newName(e){let r=this._names[e]||this._nameGroup(e);return`${e}${r.index++}`}_nameGroup(e){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(e)||this._prefixes&&!this._prefixes.has(e))throw new Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};Ga.Scope=wk;var Rk=class extends Ha.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,Ha._)`.${new Ha.Name(r)}[${n}]`}};Ga.ValueScopeName=Rk;var tBt=(0,Ha._)`\n`,g7=class extends wk{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?tBt:Ha.nil}}get(){return this._scope}name(e){return new Rk(e,this._newName(e))}value(e,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let s=this.toName(e),{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(e,r){let n=this._values[e];if(n)return n.get(r)}scopeRefs(e,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,Ha._)`${e}${n.scopePath}`})}scopeCode(e=this._values,r,n){return this._reduceValues(e,s=>{if(s.value===void 0)throw new Error(`CodeGen: name "${s}" has no value`);return s.value.code},r,n)}_reduceValues(e,r,n={},s){let i=Ha.nil;for(let a in e){let o=e[a];if(!o)continue;let c=n[a]=n[a]||new Map;o.forEach(u=>{if(c.has(u))return;c.set(u,Tk.Started);let l=r(u);if(l){let d=this.opts.es5?Ga.varKinds.var:Ga.varKinds.const;i=(0,Ha._)`${i}${d} ${u} = ${l};${this.opts._n}`}else if(l=s?.(u))i=(0,Ha._)`${i}${l}${this.opts._n}`;else throw new h7(u);c.set(u,Tk.Completed)})}return i}};Ga.ValueScope=g7});var Et=_(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 vr=QA(),nu=Nk(),Qp=QA();Object.defineProperty(nr,"_",{enumerable:!0,get:function(){return Qp._}});Object.defineProperty(nr,"str",{enumerable:!0,get:function(){return Qp.str}});Object.defineProperty(nr,"strConcat",{enumerable:!0,get:function(){return Qp.strConcat}});Object.defineProperty(nr,"nil",{enumerable:!0,get:function(){return Qp.nil}});Object.defineProperty(nr,"getProperty",{enumerable:!0,get:function(){return Qp.getProperty}});Object.defineProperty(nr,"stringify",{enumerable:!0,get:function(){return Qp.stringify}});Object.defineProperty(nr,"regexpCode",{enumerable:!0,get:function(){return Qp.regexpCode}});Object.defineProperty(nr,"Name",{enumerable:!0,get:function(){return Qp.Name}});var Dk=Nk();Object.defineProperty(nr,"Scope",{enumerable:!0,get:function(){return Dk.Scope}});Object.defineProperty(nr,"ValueScope",{enumerable:!0,get:function(){return Dk.ValueScope}});Object.defineProperty(nr,"ValueScopeName",{enumerable:!0,get:function(){return Dk.ValueScopeName}});Object.defineProperty(nr,"varKinds",{enumerable:!0,get:function(){return Dk.varKinds}});nr.operators={GT:new vr._Code(">"),GTE:new vr._Code(">="),LT:new vr._Code("<"),LTE:new vr._Code("<="),EQ:new vr._Code("==="),NEQ:new vr._Code("!=="),NOT:new vr._Code("!"),OR:new vr._Code("||"),AND:new vr._Code("&&"),ADD:new vr._Code("+")};var Wd=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},y7=class extends Wd{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?nu.varKinds.var:this.varKind,s=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${s};`+r}optimizeNames(e,r){if(e[this.name.str])return this.rhs&&(this.rhs=GA(this.rhs,e,r)),this}get names(){return this.rhs instanceof vr._CodeOrName?this.rhs.names:{}}},Ok=class extends Wd{constructor(e,r,n){super(),this.lhs=e,this.rhs=r,this.sideEffects=n}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,r){if(!(this.lhs instanceof vr.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=GA(this.rhs,e,r),this}get names(){let e=this.lhs instanceof vr.Name?{}:{...this.lhs.names};return Pk(e,this.rhs)}},A7=class extends Ok{constructor(e,r,n,s){super(e,n,s),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},x7=class extends Wd{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},b7=class extends Wd{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},_7=class extends Wd{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},E7=class extends Wd{constructor(e){super(),this.code=e}render({_n:e}){return`${this.code};`+e}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(e,r){return this.code=GA(this.code,e,r),this}get names(){return this.code instanceof vr._CodeOrName?this.code.names:{}}},mv=class extends Wd{constructor(e=[]){super(),this.nodes=e}render(e){return this.nodes.reduce((r,n)=>r+n.render(e),"")}optimizeNodes(){let{nodes:e}=this,r=e.length;for(;r--;){let n=e[r].optimizeNodes();Array.isArray(n)?e.splice(r,1,...n):n?e[r]=n:e.splice(r,1)}return e.length>0?this:void 0}optimizeNames(e,r){let{nodes:n}=this,s=n.length;for(;s--;){let i=n[s];i.optimizeNames(e,r)||(rBt(e,i.names),n.splice(s,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>lh(e,r.names),{})}},$d=class extends mv{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},v7=class extends mv{},HA=class extends $d{};HA.kind="else";var ch=class t extends $d{constructor(e,r){super(r),this.condition=e}render(e){let r=`if(${this.condition})`+super.render(e);return this.else&&(r+="else "+this.else.render(e)),r}optimizeNodes(){super.optimizeNodes();let e=this.condition;if(e===!0)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new HA(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(qEe(e),r instanceof t?[r]:r.nodes);if(!(e===!1||!this.nodes.length))return this}optimizeNames(e,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(e,r),!!(super.optimizeNames(e,r)||this.else))return this.condition=GA(this.condition,e,r),this}get names(){let e=super.names;return Pk(e,this.condition),this.else&&lh(e,this.else.names),e}};ch.kind="if";var uh=class extends $d{};uh.kind="for";var S7=class extends uh{constructor(e){super(),this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iteration=GA(this.iteration,e,r),this}get names(){return lh(super.names,this.iteration.names)}},I7=class extends uh{constructor(e,r,n,s){super(),this.varKind=e,this.name=r,this.from=n,this.to=s}render(e){let r=e.es5?nu.varKinds.var:this.varKind,{name:n,from:s,to:i}=this;return`for(${r} ${n}=${s}; ${n}<${i}; ${n}++)`+super.render(e)}get names(){let e=Pk(super.names,this.from);return Pk(e,this.to)}},kk=class extends uh{constructor(e,r,n,s){super(),this.loop=e,this.varKind=r,this.name=n,this.iterable=s}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iterable=GA(this.iterable,e,r),this}get names(){return lh(super.names,this.iterable.names)}},hv=class extends $d{constructor(e,r,n){super(),this.name=e,this.args=r,this.async=n}render(e){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(e)}};hv.kind="func";var gv=class extends mv{render(e){return"return "+super.render(e)}};gv.kind="return";var C7=class extends $d{render(e){let r="try"+super.render(e);return this.catch&&(r+=this.catch.render(e)),this.finally&&(r+=this.finally.render(e)),r}optimizeNodes(){var e,r;return super.optimizeNodes(),(e=this.catch)===null||e===void 0||e.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(e,r){var n,s;return super.optimizeNames(e,r),(n=this.catch)===null||n===void 0||n.optimizeNames(e,r),(s=this.finally)===null||s===void 0||s.optimizeNames(e,r),this}get names(){let e=super.names;return this.catch&&lh(e,this.catch.names),this.finally&&lh(e,this.finally.names),e}},yv=class extends $d{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};yv.kind="catch";var Av=class extends $d{render(e){return"finally"+super.render(e)}};Av.kind="finally";var T7=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?` +`:""},this._extScope=e,this._scope=new nu.Scope({parent:e}),this._nodes=[new v7]}toString(){return this._root.render(this.opts)}name(e){return this._scope.name(e)}scopeName(e){return this._extScope.name(e)}scopeValue(e,r){let n=this._extScope.value(e,r);return(this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(e,r){return this._extScope.getValue(e,r)}scopeRefs(e){return this._extScope.scopeRefs(e,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(e,r,n,s){let i=this._scope.toName(r);return n!==void 0&&s&&(this._constants[i.str]=n),this._leafNode(new y7(e,i,n)),i}const(e,r,n){return this._def(nu.varKinds.const,e,r,n)}let(e,r,n){return this._def(nu.varKinds.let,e,r,n)}var(e,r,n){return this._def(nu.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new Ok(e,r,n))}add(e,r){return this._leafNode(new A7(e,nr.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==vr.nil&&this._leafNode(new E7(e)),this}object(...e){let r=["{"];for(let[n,s]of e)r.length>1&&r.push(","),r.push(n),(n!==s||this.opts.es5)&&(r.push(":"),(0,vr.addCodeArg)(r,s));return r.push("}"),new vr._Code(r)}if(e,r,n){if(this._blockNode(new ch(e)),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(e){return this._elseNode(new ch(e))}else(){return this._elseNode(new HA)}endIf(){return this._endBlockNode(ch,HA)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new S7(e),r)}forRange(e,r,n,s,i=this.opts.es5?nu.varKinds.var:nu.varKinds.let){let a=this._scope.toName(e);return this._for(new I7(i,a,r,n),()=>s(a))}forOf(e,r,n,s=nu.varKinds.const){let i=this._scope.toName(e);if(this.opts.es5){let a=r instanceof vr.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,vr._)`${a}.length`,o=>{this.var(i,(0,vr._)`${a}[${o}]`),n(i)})}return this._for(new kk("of",s,i,r),()=>n(i))}forIn(e,r,n,s=this.opts.es5?nu.varKinds.var:nu.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,vr._)`Object.keys(${r})`,n);let i=this._scope.toName(e);return this._for(new kk("in",s,i,r),()=>n(i))}endFor(){return this._endBlockNode(uh)}label(e){return this._leafNode(new x7(e))}break(e){return this._leafNode(new b7(e))}return(e){let r=new gv;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(gv)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let s=new C7;if(this._blockNode(s),this.code(e),r){let i=this.name("e");this._currNode=s.catch=new yv(i),r(i)}return n&&(this._currNode=s.finally=new Av,this.code(n)),this._endBlockNode(yv,Av)}throw(e){return this._leafNode(new _7(e))}block(e,r){return this._blockStarts.push(this._nodes.length),e&&this.code(e).endBlock(r),this}endBlock(e){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||e!==void 0&&n!==e)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${e} expected`);return this._nodes.length=r,this}func(e,r=vr.nil,n,s){return this._blockNode(new hv(e,r,n)),s&&this.code(s).endFunc(),this}endFunc(){return this._endBlockNode(hv)}optimize(e=1){for(;e-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(e){return this._currNode.nodes.push(e),this}_blockNode(e){this._currNode.nodes.push(e),this._nodes.push(e)}_endBlockNode(e,r){let n=this._currNode;if(n instanceof e||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${e.kind}/${r.kind}`:e.kind}"`)}_elseNode(e){let r=this._currNode;if(!(r instanceof ch))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let r=this._nodes;r[r.length-1]=e}};nr.CodeGen=T7;function lh(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function Pk(t,e){return e instanceof vr._CodeOrName?lh(t,e.names):t}function GA(t,e,r){if(t instanceof vr.Name)return n(t);if(!s(t))return t;return new vr._Code(t._items.reduce((i,a)=>(a instanceof vr.Name&&(a=n(a)),a instanceof vr._Code?i.push(...a._items):i.push(a),i),[]));function n(i){let a=r[i.str];return a===void 0||e[i.str]!==1?i:(delete e[i.str],a)}function s(i){return i instanceof vr._Code&&i._items.some(a=>a instanceof vr.Name&&e[a.str]===1&&r[a.str]!==void 0)}}function rBt(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function qEe(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,vr._)`!${w7(t)}`}nr.not=qEe;var nBt=jEe(nr.operators.AND);function sBt(...t){return t.reduce(nBt)}nr.and=sBt;var iBt=jEe(nr.operators.OR);function aBt(...t){return t.reduce(iBt)}nr.or=aBt;function jEe(t){return(e,r)=>e===vr.nil?r:r===vr.nil?e:(0,vr._)`${w7(e)} ${t} ${w7(r)}`}function w7(t){return t instanceof vr.Name?t:(0,vr._)`(${t})`}});var Yt=_(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 dn=Et(),oBt=QA();function cBt(t){let e={};for(let r of t)e[r]=!0;return e}or.toHash=cBt;function uBt(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(GEe(t,e),!zEe(e,t.self.RULES.all))}or.alwaysValidSchema=uBt;function GEe(t,e=t.schema){let{opts:r,self:n}=t;if(!r.strictSchema||typeof e=="boolean")return;let s=n.RULES.keywords;for(let i in e)s[i]||YEe(t,`unknown keyword: "${i}"`)}or.checkUnknownRules=GEe;function zEe(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}or.schemaHasRules=zEe;function lBt(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}or.schemaHasRulesButRef=lBt;function dBt({topSchemaRef:t,schemaPath:e},r,n,s){if(!s){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,dn._)`${r}`}return(0,dn._)`${t}${e}${(0,dn.getProperty)(n)}`}or.schemaRefOrVal=dBt;function fBt(t){return KEe(decodeURIComponent(t))}or.unescapeFragment=fBt;function pBt(t){return encodeURIComponent(N7(t))}or.escapeFragment=pBt;function N7(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}or.escapeJsonPointer=N7;function KEe(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}or.unescapeJsonPointer=KEe;function mBt(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}or.eachItem=mBt;function QEe({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(s,i,a,o)=>{let c=a===void 0?i:a instanceof dn.Name?(i instanceof dn.Name?t(s,i,a):e(s,i,a),a):i instanceof dn.Name?(e(s,a,i),i):r(i,a);return o===dn.Name&&!(c instanceof dn.Name)?n(s,c):c}}or.mergeEvaluated={props:QEe({mergeNames:(t,e,r)=>t.if((0,dn._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,dn._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,dn._)`${r} || {}`).code((0,dn._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,dn._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,dn._)`${r} || {}`),O7(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:VEe}),items:QEe({mergeNames:(t,e,r)=>t.if((0,dn._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,dn._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,dn._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,dn._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function VEe(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,dn._)`{}`);return e!==void 0&&O7(t,r,e),r}or.evaluatedPropsToName=VEe;function O7(t,e,r){Object.keys(r).forEach(n=>t.assign((0,dn._)`${e}${(0,dn.getProperty)(n)}`,!0))}or.setEvaluated=O7;var HEe={};function hBt(t,e){return t.scopeValue("func",{ref:e,code:HEe[e.code]||(HEe[e.code]=new oBt._Code(e.code))})}or.useFunc=hBt;var R7;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(R7||(or.Type=R7={}));function gBt(t,e,r){if(t instanceof dn.Name){let n=e===R7.Num;return r?n?(0,dn._)`"[" + ${t} + "]"`:(0,dn._)`"['" + ${t} + "']"`:n?(0,dn._)`"/" + ${t}`:(0,dn._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,dn.getProperty)(t).toString():"/"+N7(t)}or.getErrorPath=gBt;function YEe(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}or.checkStrictMode=YEe});var dc=_(k7=>{"use strict";Object.defineProperty(k7,"__esModule",{value:!0});var Fi=Et(),yBt={data:new Fi.Name("data"),valCxt:new Fi.Name("valCxt"),instancePath:new Fi.Name("instancePath"),parentData:new Fi.Name("parentData"),parentDataProperty:new Fi.Name("parentDataProperty"),rootData:new Fi.Name("rootData"),dynamicAnchors:new Fi.Name("dynamicAnchors"),vErrors:new Fi.Name("vErrors"),errors:new Fi.Name("errors"),this:new Fi.Name("this"),self:new Fi.Name("self"),scope:new Fi.Name("scope"),json:new Fi.Name("json"),jsonPos:new Fi.Name("jsonPos"),jsonLen:new Fi.Name("jsonLen"),jsonPart:new Fi.Name("jsonPart")};k7.default=yBt});var xv=_(qi=>{"use strict";Object.defineProperty(qi,"__esModule",{value:!0});qi.extendErrors=qi.resetErrorsCount=qi.reportExtraError=qi.reportError=qi.keyword$DataError=qi.keywordError=void 0;var Nr=Et(),Bk=Yt(),ma=dc();qi.keywordError={message:({keyword:t})=>(0,Nr.str)`must pass "${t}" keyword validation`};qi.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,Nr.str)`"${t}" keyword must be ${e} ($data)`:(0,Nr.str)`"${t}" keyword is invalid ($data)`};function ABt(t,e=qi.keywordError,r,n){let{it:s}=t,{gen:i,compositeRule:a,allErrors:o}=s,c=ZEe(t,e,r);n??(a||o)?JEe(i,c):XEe(s,(0,Nr._)`[${c}]`)}qi.reportError=ABt;function xBt(t,e=qi.keywordError,r){let{it:n}=t,{gen:s,compositeRule:i,allErrors:a}=n,o=ZEe(t,e,r);JEe(s,o),i||a||XEe(n,ma.default.vErrors)}qi.reportExtraError=xBt;function bBt(t,e){t.assign(ma.default.errors,e),t.if((0,Nr._)`${ma.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,Nr._)`${ma.default.vErrors}.length`,e),()=>t.assign(ma.default.vErrors,null)))}qi.resetErrorsCount=bBt;function _Bt({gen:t,keyword:e,schemaValue:r,data:n,errsCount:s,it:i}){if(s===void 0)throw new Error("ajv implementation error");let a=t.name("err");t.forRange("i",s,ma.default.errors,o=>{t.const(a,(0,Nr._)`${ma.default.vErrors}[${o}]`),t.if((0,Nr._)`${a}.instancePath === undefined`,()=>t.assign((0,Nr._)`${a}.instancePath`,(0,Nr.strConcat)(ma.default.instancePath,i.errorPath))),t.assign((0,Nr._)`${a}.schemaPath`,(0,Nr.str)`${i.errSchemaPath}/${e}`),i.opts.verbose&&(t.assign((0,Nr._)`${a}.schema`,r),t.assign((0,Nr._)`${a}.data`,n))})}qi.extendErrors=_Bt;function JEe(t,e){let r=t.const("err",e);t.if((0,Nr._)`${ma.default.vErrors} === null`,()=>t.assign(ma.default.vErrors,(0,Nr._)`[${r}]`),(0,Nr._)`${ma.default.vErrors}.push(${r})`),t.code((0,Nr._)`${ma.default.errors}++`)}function XEe(t,e){let{gen:r,validateName:n,schemaEnv:s}=t;s.$async?r.throw((0,Nr._)`new ${t.ValidationError}(${e})`):(r.assign((0,Nr._)`${n}.errors`,e),r.return(!1))}var dh={keyword:new Nr.Name("keyword"),schemaPath:new Nr.Name("schemaPath"),params:new Nr.Name("params"),propertyName:new Nr.Name("propertyName"),message:new Nr.Name("message"),schema:new Nr.Name("schema"),parentSchema:new Nr.Name("parentSchema")};function ZEe(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,Nr._)`{}`:EBt(t,e,r)}function EBt(t,e,r={}){let{gen:n,it:s}=t,i=[vBt(s,r),SBt(t,r)];return IBt(t,e,i),n.object(...i)}function vBt({errorPath:t},{instancePath:e}){let r=e?(0,Nr.str)`${t}${(0,Bk.getErrorPath)(e,Bk.Type.Str)}`:t;return[ma.default.instancePath,(0,Nr.strConcat)(ma.default.instancePath,r)]}function SBt({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let s=n?e:(0,Nr.str)`${e}/${t}`;return r&&(s=(0,Nr.str)`${s}${(0,Bk.getErrorPath)(r,Bk.Type.Str)}`),[dh.schemaPath,s]}function IBt(t,{params:e,message:r},n){let{keyword:s,data:i,schemaValue:a,it:o}=t,{opts:c,propertyName:u,topSchemaRef:l,schemaPath:d}=o;n.push([dh.keyword,s],[dh.params,typeof e=="function"?e(t):e||(0,Nr._)`{}`]),c.messages&&n.push([dh.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([dh.schema,a],[dh.parentSchema,(0,Nr._)`${l}${d}`],[ma.default.data,i]),u&&n.push([dh.propertyName,u])}});var tve=_(zA=>{"use strict";Object.defineProperty(zA,"__esModule",{value:!0});zA.boolOrEmptySchema=zA.topBoolOrEmptySchema=void 0;var CBt=xv(),TBt=Et(),wBt=dc(),RBt={message:"boolean schema is false"};function NBt(t){let{gen:e,schema:r,validateName:n}=t;r===!1?eve(t,!1):typeof r=="object"&&r.$async===!0?e.return(wBt.default.data):(e.assign((0,TBt._)`${n}.errors`,null),e.return(!0))}zA.topBoolOrEmptySchema=NBt;function OBt(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),eve(t)):r.var(e,!0)}zA.boolOrEmptySchema=OBt;function eve(t,e){let{gen:r,data:n}=t,s={gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:t};(0,CBt.reportError)(s,RBt,void 0,e)}});var P7=_(KA=>{"use strict";Object.defineProperty(KA,"__esModule",{value:!0});KA.getRules=KA.isJSONType=void 0;var kBt=["string","number","integer","boolean","null","object","array"],PBt=new Set(kBt);function DBt(t){return typeof t=="string"&&PBt.has(t)}KA.isJSONType=DBt;function BBt(){let t={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...t,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},t.number,t.string,t.array,t.object],post:{rules:[]},all:{},keywords:{}}}KA.getRules=BBt});var D7=_(Hp=>{"use strict";Object.defineProperty(Hp,"__esModule",{value:!0});Hp.shouldUseRule=Hp.shouldUseGroup=Hp.schemaHasRulesForType=void 0;function LBt({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&rve(t,n)}Hp.schemaHasRulesForType=LBt;function rve(t,e){return e.rules.some(r=>nve(t,r))}Hp.shouldUseGroup=rve;function nve(t,e){var r;return t[e.keyword]!==void 0||((r=e.definition.implements)===null||r===void 0?void 0:r.some(n=>t[n]!==void 0))}Hp.shouldUseRule=nve});var bv=_(ji=>{"use strict";Object.defineProperty(ji,"__esModule",{value:!0});ji.reportTypeError=ji.checkDataTypes=ji.checkDataType=ji.coerceAndCheckDataType=ji.getJSONTypes=ji.getSchemaTypes=ji.DataType=void 0;var MBt=P7(),WBt=D7(),$Bt=xv(),Qt=Et(),sve=Yt(),VA;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(VA||(ji.DataType=VA={}));function UBt(t){let e=ive(t.type);if(e.includes("null")){if(t.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!e.length&&t.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');t.nullable===!0&&e.push("null")}return e}ji.getSchemaTypes=UBt;function ive(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(MBt.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}ji.getJSONTypes=ive;function FBt(t,e){let{gen:r,data:n,opts:s}=t,i=qBt(e,s.coerceTypes),a=e.length>0&&!(i.length===0&&e.length===1&&(0,WBt.schemaHasRulesForType)(t,e[0]));if(a){let o=L7(e,n,s.strictNumbers,VA.Wrong);r.if(o,()=>{i.length?jBt(t,e,i):M7(t)})}return a}ji.coerceAndCheckDataType=FBt;var ave=new Set(["string","number","integer","boolean","null"]);function qBt(t,e){return e?t.filter(r=>ave.has(r)||e==="array"&&r==="array"):[]}function jBt(t,e,r){let{gen:n,data:s,opts:i}=t,a=n.let("dataType",(0,Qt._)`typeof ${s}`),o=n.let("coerced",(0,Qt._)`undefined`);i.coerceTypes==="array"&&n.if((0,Qt._)`${a} == 'object' && Array.isArray(${s}) && ${s}.length == 1`,()=>n.assign(s,(0,Qt._)`${s}[0]`).assign(a,(0,Qt._)`typeof ${s}`).if(L7(e,s,i.strictNumbers),()=>n.assign(o,s))),n.if((0,Qt._)`${o} !== undefined`);for(let u of r)(ave.has(u)||u==="array"&&i.coerceTypes==="array")&&c(u);n.else(),M7(t),n.endIf(),n.if((0,Qt._)`${o} !== undefined`,()=>{n.assign(s,o),QBt(t,o)});function c(u){switch(u){case"string":n.elseIf((0,Qt._)`${a} == "number" || ${a} == "boolean"`).assign(o,(0,Qt._)`"" + ${s}`).elseIf((0,Qt._)`${s} === null`).assign(o,(0,Qt._)`""`);return;case"number":n.elseIf((0,Qt._)`${a} == "boolean" || ${s} === null || (${a} == "string" && ${s} && ${s} == +${s})`).assign(o,(0,Qt._)`+${s}`);return;case"integer":n.elseIf((0,Qt._)`${a} === "boolean" || ${s} === null || (${a} === "string" && ${s} && ${s} == +${s} && !(${s} % 1))`).assign(o,(0,Qt._)`+${s}`);return;case"boolean":n.elseIf((0,Qt._)`${s} === "false" || ${s} === 0 || ${s} === null`).assign(o,!1).elseIf((0,Qt._)`${s} === "true" || ${s} === 1`).assign(o,!0);return;case"null":n.elseIf((0,Qt._)`${s} === "" || ${s} === 0 || ${s} === false`),n.assign(o,null);return;case"array":n.elseIf((0,Qt._)`${a} === "string" || ${a} === "number" - || ${a} === "boolean" || ${s} === null`).assign(o,(0,Qt._)`[${s}]`)}}}function E6t({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,Qt._)`${e} !== undefined`,()=>t.assign((0,Qt._)`${e}[${r}]`,n))}function e9(t,e,r,n=Wy.Correct){let s=n===Wy.Correct?Qt.operators.EQ:Qt.operators.NEQ,i;switch(t){case"null":return(0,Qt._)`${e} ${s} null`;case"array":i=(0,Qt._)`Array.isArray(${e})`;break;case"object":i=(0,Qt._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":i=a((0,Qt._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":i=a();break;default:return(0,Qt._)`typeof ${e} ${s} ${t}`}return n===Wy.Correct?i:(0,Qt.not)(i);function a(o=Qt.nil){return(0,Qt.and)((0,Qt._)`typeof ${e} == "number"`,o,r?(0,Qt._)`isFinite(${e})`:Qt.nil)}}Mi.checkDataType=e9;function t9(t,e,r,n){if(t.length===1)return e9(t[0],e,r,n);let s,i=(0,MSe.toHash)(t);if(i.array&&i.object){let a=(0,Qt._)`typeof ${e} != "object"`;s=i.null?a:(0,Qt._)`!${e} || ${a}`,delete i.null,delete i.array,delete i.object}else s=Qt.nil;i.number&&delete i.integer;for(let a in i)s=(0,Qt.and)(s,e9(a,e,r,n));return s}Mi.checkDataTypes=t9;var _6t={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,Qt._)`{type: ${t}}`:(0,Qt._)`{type: ${e}}`};function r9(t){let e=S6t(t);(0,g6t.reportError)(e,_6t)}Mi.reportTypeError=r9;function S6t(t){let{gen:e,data:r,schema:n}=t,s=(0,MSe.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:s,schemaValue:s,parentSchema:n,params:{},it:t}}});var USe=E(XO=>{"use strict";Object.defineProperty(XO,"__esModule",{value:!0});XO.assignDefaults=void 0;var $y=Yt(),v6t=Wr();function C6t(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let s in r)FSe(t,s,r[s].default);else e==="array"&&Array.isArray(n)&&n.forEach((s,i)=>FSe(t,i,s.default))}XO.assignDefaults=C6t;function FSe(t,e,r){let{gen:n,compositeRule:s,data:i,opts:a}=t;if(r===void 0)return;let o=(0,$y._)`${i}${(0,$y.getProperty)(e)}`;if(s){(0,v6t.checkStrictMode)(t,`default is ignored for: ${o}`);return}let c=(0,$y._)`${o} === undefined`;a.useDefaults==="empty"&&(c=(0,$y._)`${c} || ${o} === null || ${o} === ""`),n.if(c,(0,$y._)`${o} = ${(0,$y.stringify)(r)}`)}});var nc=E(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 Ln=Yt(),n9=Wr(),Wp=Od(),I6t=Wr();function T6t(t,e){let{gen:r,data:n,it:s}=t;r.if(i9(r,n,e,s.opts.ownProperties),()=>{t.setParams({missingProperty:(0,Ln._)`${e}`},!0),t.error()})}tn.checkReportMissingProp=T6t;function w6t({gen:t,data:e,it:{opts:r}},n,s){return(0,Ln.or)(...n.map(i=>(0,Ln.and)(i9(t,e,i,r.ownProperties),(0,Ln._)`${s} = ${i}`)))}tn.checkMissingProp=w6t;function R6t(t,e){t.setParams({missingProperty:e},!0),t.error()}tn.reportMissingProp=R6t;function qSe(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,Ln._)`Object.prototype.hasOwnProperty`})}tn.hasPropFunc=qSe;function s9(t,e,r){return(0,Ln._)`${qSe(t)}.call(${e}, ${r})`}tn.isOwnProperty=s9;function N6t(t,e,r,n){let s=(0,Ln._)`${e}${(0,Ln.getProperty)(r)} !== undefined`;return n?(0,Ln._)`${s} && ${s9(t,e,r)}`:s}tn.propertyInData=N6t;function i9(t,e,r,n){let s=(0,Ln._)`${e}${(0,Ln.getProperty)(r)} === undefined`;return n?(0,Ln.or)(s,(0,Ln.not)(s9(t,e,r))):s}tn.noPropertyInData=i9;function jSe(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}tn.allSchemaProperties=jSe;function O6t(t,e){return jSe(e).filter(r=>!(0,n9.alwaysValidSchema)(t,e[r]))}tn.schemaProperties=O6t;function P6t({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:s,errorPath:i},it:a},o,c,u){let l=u?(0,Ln._)`${t}, ${e}, ${n}${s}`:e,d=[[Wp.default.instancePath,(0,Ln.strConcat)(Wp.default.instancePath,i)],[Wp.default.parentData,a.parentData],[Wp.default.parentDataProperty,a.parentDataProperty],[Wp.default.rootData,Wp.default.rootData]];a.opts.dynamicRef&&d.push([Wp.default.dynamicAnchors,Wp.default.dynamicAnchors]);let f=(0,Ln._)`${l}, ${r.object(...d)}`;return c!==Ln.nil?(0,Ln._)`${o}.call(${c}, ${f})`:(0,Ln._)`${o}(${f})`}tn.callValidateCode=P6t;var D6t=(0,Ln._)`new RegExp`;function k6t({gen:t,it:{opts:e}},r){let n=e.unicodeRegExp?"u":"",{regExp:s}=e.code,i=s(r,n);return t.scopeValue("pattern",{key:i.toString(),ref:i,code:(0,Ln._)`${s.code==="new RegExp"?D6t:(0,I6t.useFunc)(t,s)}(${r}, ${n})`})}tn.usePattern=k6t;function L6t(t){let{gen:e,data:r,keyword:n,it:s}=t,i=e.name("valid");if(s.allErrors){let o=e.let("valid",!0);return a(()=>e.assign(o,!1)),o}return e.var(i,!0),a(()=>e.break()),i;function a(o){let c=e.const("len",(0,Ln._)`${r}.length`);e.forRange("i",0,c,u=>{t.subschema({keyword:n,dataProp:u,dataPropType:n9.Type.Num},i),e.if((0,Ln.not)(i),o)})}}tn.validateArray=L6t;function B6t(t){let{gen:e,schema:r,keyword:n,it:s}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(c=>(0,n9.alwaysValidSchema)(s,c))&&!s.opts.unevaluated)return;let a=e.let("valid",!1),o=e.name("_valid");e.block(()=>r.forEach((c,u)=>{let l=t.subschema({keyword:n,schemaProp:u,compositeRule:!0},o);e.assign(a,(0,Ln._)`${a} || ${o}`),t.mergeValidEvaluated(l,o)||e.if((0,Ln.not)(a))})),t.result(a,()=>t.reset(),()=>t.error(!0))}tn.validateUnion=B6t});var GSe=E(tl=>{"use strict";Object.defineProperty(tl,"__esModule",{value:!0});tl.validateKeywordUsage=tl.validSchemaType=tl.funcKeywordCode=tl.macroKeywordCode=void 0;var ca=Yt(),rh=Od(),M6t=nc(),W6t=G_();function $6t(t,e){let{gen:r,keyword:n,schema:s,parentSchema:i,it:a}=t,o=e.macro.call(a.self,s,i,a),c=QSe(r,n,o);a.opts.validateSchema!==!1&&a.self.validateSchema(o,!0);let u=r.name("valid");t.subschema({schema:o,schemaPath:ca.nil,errSchemaPath:`${a.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}tl.macroKeywordCode=$6t;function F6t(t,e){var r;let{gen:n,keyword:s,schema:i,parentSchema:a,$data:o,it:c}=t;q6t(c,e);let u=!o&&e.compile?e.compile.call(c.self,i,a,c):e.validate,l=QSe(n,s,u),d=n.let("valid");t.block$data(d,f),t.ok((r=e.valid)!==null&&r!==void 0?r:d);function f(){if(e.errors===!1)h(),e.modifying&&HSe(t),A(()=>t.error());else{let g=e.async?p():m();e.modifying&&HSe(t),A(()=>U6t(t,g))}}function p(){let g=n.let("ruleErrs",null);return n.try(()=>h((0,ca._)`await `),b=>n.assign(d,!1).if((0,ca._)`${b} instanceof ${c.ValidationError}`,()=>n.assign(g,(0,ca._)`${b}.errors`),()=>n.throw(b))),g}function m(){let g=(0,ca._)`${l}.errors`;return n.assign(g,null),h(ca.nil),g}function h(g=e.async?(0,ca._)`await `:ca.nil){let b=c.opts.passContext?rh.default.this:rh.default.self,y=!("compile"in e&&!o||e.schema===!1);n.assign(d,(0,ca._)`${g}${(0,M6t.callValidateCode)(t,l,b,y)}`,e.modifying)}function A(g){var b;n.if((0,ca.not)((b=e.valid)!==null&&b!==void 0?b:d),g)}}tl.funcKeywordCode=F6t;function HSe(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,ca._)`${n.parentData}[${n.parentDataProperty}]`))}function U6t(t,e){let{gen:r}=t;r.if((0,ca._)`Array.isArray(${e})`,()=>{r.assign(rh.default.vErrors,(0,ca._)`${rh.default.vErrors} === null ? ${e} : ${rh.default.vErrors}.concat(${e})`).assign(rh.default.errors,(0,ca._)`${rh.default.vErrors}.length`),(0,W6t.extendErrors)(t)},()=>t.error())}function q6t({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function QSe(t,e,r){if(r===void 0)throw new Error(`keyword "${e}" failed to compile`);return t.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,ca.stringify)(r)})}function j6t(t,e,r=!1){return!e.length||e.some(n=>n==="array"?Array.isArray(t):n==="object"?t&&typeof t=="object"&&!Array.isArray(t):typeof t==n||r&&typeof t>"u")}tl.validSchemaType=j6t;function H6t({schema:t,opts:e,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(t,o)))throw new Error(`parent schema must have dependencies of ${i}: ${a.join(",")}`);if(s.validateSchema&&!s.validateSchema(t[i])){let c=`keyword "${i}" value is invalid at path "${n}": `+r.errorsText(s.validateSchema.errors);if(e.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}tl.validateKeywordUsage=H6t});var zSe=E($p=>{"use strict";Object.defineProperty($p,"__esModule",{value:!0});$p.extendSubschemaMode=$p.extendSubschemaData=$p.getSubschema=void 0;var rl=Yt(),VSe=Wr();function Q6t(t,{keyword:e,schemaProp:r,schema:n,schemaPath:s,errSchemaPath:i,topSchemaRef:a}){if(e!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(e!==void 0){let o=t.schema[e];return r===void 0?{schema:o,schemaPath:(0,rl._)`${t.schemaPath}${(0,rl.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:o[r],schemaPath:(0,rl._)`${t.schemaPath}${(0,rl.getProperty)(e)}${(0,rl.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,VSe.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')}$p.getSubschema=Q6t;function G6t(t,e,{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}=e;if(r!==void 0){let{errorPath:u,dataPathArr:l,opts:d}=e,f=o.let("data",(0,rl._)`${e.data}${(0,rl.getProperty)(r)}`,!0);c(f),t.errorPath=(0,rl.str)`${u}${(0,VSe.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,rl._)`${r}`,t.dataPathArr=[...l,t.parentDataProperty]}if(s!==void 0){let u=s instanceof rl.Name?s:o.let("data",s,!0);c(u),a!==void 0&&(t.propertyName=a)}i&&(t.dataTypes=i);function c(u){t.data=u,t.dataLevel=e.dataLevel+1,t.dataTypes=[],e.definedProperties=new Set,t.parentData=e.data,t.dataNames=[...e.dataNames,u]}}$p.extendSubschemaData=G6t;function V6t(t,{jtdDiscriminator:e,jtdMetadata:r,compositeRule:n,createErrors:s,allErrors:i}){n!==void 0&&(t.compositeRule=n),s!==void 0&&(t.createErrors=s),i!==void 0&&(t.allErrors=i),t.jtdDiscriminator=e,t.jtdMetadata=r}$p.extendSubschemaMode=V6t});var YSe=E((tBr,KSe)=>{"use strict";var Fp=KSe.exports=function(t,e,r){typeof e=="function"&&(r=e,e={}),r=e.cb||r;var n=typeof r=="function"?r:r.pre||function(){},s=r.post||function(){};ZO(e,n,s,t,"",t)};Fp.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};Fp.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};Fp.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};Fp.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 ZO(t,e,r,n,s,i,a,o,c,u){if(n&&typeof n=="object"&&!Array.isArray(n)){e(n,s,i,a,o,c,u);for(var l in n){var d=n[l];if(Array.isArray(d)){if(l in Fp.arrayKeywords)for(var f=0;f{"use strict";Object.defineProperty(qa,"__esModule",{value:!0});qa.getSchemaRefs=qa.resolveUrl=qa.normalizeId=qa._getFullPath=qa.getFullPath=qa.inlineRef=void 0;var K6t=Wr(),Y6t=Go(),J6t=YSe(),X6t=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function Z6t(t,e=!0){return typeof t=="boolean"?!0:e===!0?!a9(t):e?JSe(t)<=e:!1}qa.inlineRef=Z6t;var e5t=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function a9(t){for(let e in t){if(e5t.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(a9)||typeof r=="object"&&a9(r))return!0}return!1}function JSe(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!X6t.has(r)&&(typeof t[r]=="object"&&(0,K6t.eachItem)(t[r],n=>e+=JSe(n)),e===1/0))return 1/0}return e}function XSe(t,e="",r){r!==!1&&(e=Fy(e));let n=t.parse(e);return ZSe(t,n)}qa.getFullPath=XSe;function ZSe(t,e){return t.serialize(e).split("#")[0]+"#"}qa._getFullPath=ZSe;var t5t=/#\/?$/;function Fy(t){return t?t.replace(t5t,""):""}qa.normalizeId=Fy;function r5t(t,e,r){return r=Fy(r),t.resolve(e,r)}qa.resolveUrl=r5t;var n5t=/^[a-z_][-a-z0-9._]*$/i;function s5t(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,s=Fy(t[r]||e),i={"":s},a=XSe(n,s,!1),o={},c=new Set;return J6t(t,{allKeys:!0},(d,f,p,m)=>{if(m===void 0)return;let h=a+f,A=i[m];typeof d[r]=="string"&&(A=g.call(this,d[r])),b.call(this,d.$anchor),b.call(this,d.$dynamicAnchor),i[f]=A;function g(y){let x=this.opts.uriResolver.resolve;if(y=Fy(A?x(A,y):y),c.has(y))throw l(y);c.add(y);let v=this.refs[y];return typeof v=="string"&&(v=this.refs[v]),typeof v=="object"?u(d,v.schema,y):y!==Fy(h)&&(y[0]==="#"?(u(d,o[y],y),o[y]=d):this.refs[y]=h),y}function b(y){if(typeof y=="string"){if(!n5t.test(y))throw new Error(`invalid anchor "${y}"`);g.call(this,`#${y}`)}}}),o;function u(d,f,p){if(f!==void 0&&!Y6t(d,f))throw l(p)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}qa.getSchemaRefs=s5t});var J_=E(Up=>{"use strict";Object.defineProperty(Up,"__esModule",{value:!0});Up.getData=Up.KeywordCxt=Up.validateFunctionCode=void 0;var sve=kSe(),eve=V_(),c9=Z7(),eP=V_(),i5t=USe(),Y_=GSe(),o9=zSe(),ot=Yt(),Ot=Od(),a5t=z_(),Pd=Wr(),K_=G_();function o5t(t){if(ove(t)&&(cve(t),ave(t))){l5t(t);return}ive(t,()=>(0,sve.topBoolOrEmptySchema)(t))}Up.validateFunctionCode=o5t;function ive({gen:t,validateName:e,schema:r,schemaEnv:n,opts:s},i){s.code.es5?t.func(e,(0,ot._)`${Ot.default.data}, ${Ot.default.valCxt}`,n.$async,()=>{t.code((0,ot._)`"use strict"; ${tve(r,s)}`),u5t(t,s),t.code(i)}):t.func(e,(0,ot._)`${Ot.default.data}, ${c5t(s)}`,n.$async,()=>t.code(tve(r,s)).code(i))}function c5t(t){return(0,ot._)`{${Ot.default.instancePath}="", ${Ot.default.parentData}, ${Ot.default.parentDataProperty}, ${Ot.default.rootData}=${Ot.default.data}${t.dynamicRef?(0,ot._)`, ${Ot.default.dynamicAnchors}={}`:ot.nil}}={}`}function u5t(t,e){t.if(Ot.default.valCxt,()=>{t.var(Ot.default.instancePath,(0,ot._)`${Ot.default.valCxt}.${Ot.default.instancePath}`),t.var(Ot.default.parentData,(0,ot._)`${Ot.default.valCxt}.${Ot.default.parentData}`),t.var(Ot.default.parentDataProperty,(0,ot._)`${Ot.default.valCxt}.${Ot.default.parentDataProperty}`),t.var(Ot.default.rootData,(0,ot._)`${Ot.default.valCxt}.${Ot.default.rootData}`),e.dynamicRef&&t.var(Ot.default.dynamicAnchors,(0,ot._)`${Ot.default.valCxt}.${Ot.default.dynamicAnchors}`)},()=>{t.var(Ot.default.instancePath,(0,ot._)`""`),t.var(Ot.default.parentData,(0,ot._)`undefined`),t.var(Ot.default.parentDataProperty,(0,ot._)`undefined`),t.var(Ot.default.rootData,Ot.default.data),e.dynamicRef&&t.var(Ot.default.dynamicAnchors,(0,ot._)`{}`)})}function l5t(t){let{schema:e,opts:r,gen:n}=t;ive(t,()=>{r.$comment&&e.$comment&&lve(t),h5t(t),n.let(Ot.default.vErrors,null),n.let(Ot.default.errors,0),r.unevaluated&&d5t(t),uve(t),y5t(t)})}function d5t(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,ot._)`${r}.evaluated`),e.if((0,ot._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,ot._)`${t.evaluated}.props`,(0,ot._)`undefined`)),e.if((0,ot._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,ot._)`${t.evaluated}.items`,(0,ot._)`undefined`))}function tve(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,ot._)`/*# sourceURL=${r} */`:ot.nil}function f5t(t,e){if(ove(t)&&(cve(t),ave(t))){p5t(t,e);return}(0,sve.boolOrEmptySchema)(t,e)}function ave({schema:t,self:e}){if(typeof t=="boolean")return!t;for(let r in t)if(e.RULES.all[r])return!0;return!1}function ove(t){return typeof t.schema!="boolean"}function p5t(t,e){let{schema:r,gen:n,opts:s}=t;s.$comment&&r.$comment&&lve(t),g5t(t),A5t(t);let i=n.const("_errs",Ot.default.errors);uve(t,i),n.var(e,(0,ot._)`${i} === ${Ot.default.errors}`)}function cve(t){(0,Pd.checkUnknownRules)(t),m5t(t)}function uve(t,e){if(t.opts.jtd)return rve(t,[],!1,e);let r=(0,eve.getSchemaTypes)(t.schema),n=(0,eve.coerceAndCheckDataType)(t,r);rve(t,r,!n,e)}function m5t(t){let{schema:e,errSchemaPath:r,opts:n,self:s}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,Pd.schemaHasRulesButRef)(e,s.RULES)&&s.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function h5t(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,Pd.checkStrictMode)(t,"default is ignored in the schema root")}function g5t(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,a5t.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function A5t(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function lve({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:s}){let i=r.$comment;if(s.$comment===!0)t.code((0,ot._)`${Ot.default.self}.logger.log(${i})`);else if(typeof s.$comment=="function"){let a=(0,ot.str)`${n}/$comment`,o=t.scopeValue("root",{ref:e.root});t.code((0,ot._)`${Ot.default.self}.opts.$comment(${i}, ${a}, ${o}.schema)`)}}function y5t(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:s,opts:i}=t;r.$async?e.if((0,ot._)`${Ot.default.errors} === 0`,()=>e.return(Ot.default.data),()=>e.throw((0,ot._)`new ${s}(${Ot.default.vErrors})`)):(e.assign((0,ot._)`${n}.errors`,Ot.default.vErrors),i.unevaluated&&x5t(t),e.return((0,ot._)`${Ot.default.errors} === 0`))}function x5t({gen:t,evaluated:e,props:r,items:n}){r instanceof ot.Name&&t.assign((0,ot._)`${e}.props`,r),n instanceof ot.Name&&t.assign((0,ot._)`${e}.items`,n)}function rve(t,e,r,n){let{gen:s,schema:i,data:a,allErrors:o,opts:c,self:u}=t,{RULES:l}=u;if(i.$ref&&(c.ignoreKeywordsWithRef||!(0,Pd.schemaHasRulesButRef)(i,l))){s.block(()=>fve(t,"$ref",l.all.$ref.definition));return}c.jtd||b5t(t,e),s.block(()=>{for(let f of l.rules)d(f);d(l.post)});function d(f){(0,c9.shouldUseGroup)(i,f)&&(f.type?(s.if((0,eP.checkDataType)(f.type,a,c.strictNumbers)),nve(t,f),e.length===1&&e[0]===f.type&&r&&(s.else(),(0,eP.reportTypeError)(t)),s.endIf()):nve(t,f),o||s.if((0,ot._)`${Ot.default.errors} === ${n||0}`))}}function nve(t,e){let{gen:r,schema:n,opts:{useDefaults:s}}=t;s&&(0,i5t.assignDefaults)(t,e.type),r.block(()=>{for(let i of e.rules)(0,c9.shouldUseRule)(n,i)&&fve(t,i.keyword,i.definition,e.type)})}function b5t(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(E5t(t,e),t.opts.allowUnionTypes||_5t(t,e),S5t(t,t.dataTypes))}function E5t(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{dve(t.dataTypes,r)||u9(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),C5t(t,e)}}function _5t(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&u9(t,"use allowUnionTypes to allow union type keyword")}function S5t(t,e){let r=t.self.RULES.all;for(let n in r){let s=r[n];if(typeof s=="object"&&(0,c9.shouldUseRule)(t.schema,s)){let{type:i}=s.definition;i.length&&!i.some(a=>v5t(e,a))&&u9(t,`missing type "${i.join(",")}" for keyword "${n}"`)}}}function v5t(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function dve(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function C5t(t,e){let r=[];for(let n of t.dataTypes)dve(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function u9(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,Pd.checkStrictMode)(t,e,t.opts.strictTypes)}var tP=class{constructor(e,r,n){if((0,Y_.validateKeywordUsage)(e,r,n),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=n,this.data=e.data,this.schema=e.schema[n],this.$data=r.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,Pd.schemaRefOrVal)(e,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=e.schema,this.params={},this.it=e,this.def=r,this.$data)this.schemaCode=e.gen.const("vSchema",pve(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,Y_.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=e.gen.const("_errs",Ot.default.errors))}result(e,r,n){this.failResult((0,ot.not)(e),r,n)}failResult(e,r,n){this.gen.if(e),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(e,r){this.failResult((0,ot.not)(e),void 0,r)}fail(e){if(e===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(e),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(e){if(!this.$data)return this.fail(e);let{schemaCode:r}=this;this.fail((0,ot._)`${r} !== undefined && (${(0,ot.or)(this.invalid$data(),e)})`)}error(e,r,n){if(r){this.setParams(r),this._error(e,n),this.setParams({});return}this._error(e,n)}_error(e,r){(e?K_.reportExtraError:K_.reportError)(this,this.def.error,r)}$dataError(){(0,K_.reportError)(this,this.def.$dataError||K_.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,K_.resetErrorsCount)(this.gen,this.errsCount)}ok(e){this.allErrors||this.gen.if(e)}setParams(e,r){r?Object.assign(this.params,e):this.params=e}block$data(e,r,n=ot.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=ot.nil,r=ot.nil){if(!this.$data)return;let{gen:n,schemaCode:s,schemaType:i,def:a}=this;n.if((0,ot.or)((0,ot._)`${s} === undefined`,r)),e!==ot.nil&&n.assign(e,!0),(i.length||a.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==ot.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:s,it:i}=this;return(0,ot.or)(a(),o());function a(){if(n.length){if(!(r instanceof ot.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,ot._)`${(0,eP.checkDataTypes)(c,r,i.opts.strictNumbers,eP.DataType.Wrong)}`}return ot.nil}function o(){if(s.validateSchema){let c=e.scopeValue("validate$data",{ref:s.validateSchema});return(0,ot._)`!${c}(${r})`}return ot.nil}}subschema(e,r){let n=(0,o9.getSubschema)(this.it,e);(0,o9.extendSubschemaData)(n,this.it,e),(0,o9.extendSubschemaMode)(n,e);let s={...this.it,...n,items:void 0,props:void 0};return f5t(s,r),s}mergeEvaluated(e,r){let{it:n,gen:s}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=Pd.mergeEvaluated.props(s,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=Pd.mergeEvaluated.items(s,e.items,n.items,r)))}mergeValidEvaluated(e,r){let{it:n,gen:s}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return s.if(r,()=>this.mergeEvaluated(e,ot.Name)),!0}};Up.KeywordCxt=tP;function fve(t,e,r,n){let s=new tP(t,r,e);"code"in r?r.code(s,n):s.$data&&r.validate?(0,Y_.funcKeywordCode)(s,r):"macro"in r?(0,Y_.macroKeywordCode)(s,r):(r.compile||r.validate)&&(0,Y_.funcKeywordCode)(s,r)}var I5t=/^\/(?:[^~]|~0|~1)*$/,T5t=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function pve(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let s,i;if(t==="")return Ot.default.rootData;if(t[0]==="/"){if(!I5t.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);s=t,i=Ot.default.rootData}else{let u=T5t.exec(t);if(!u)throw new Error(`Invalid JSON-pointer: ${t}`);let l=+u[1];if(s=u[2],s==="#"){if(l>=e)throw new Error(c("property/index",l));return n[e-l]}if(l>e)throw new Error(c("data",l));if(i=r[e-l],!s)return i}let a=i,o=s.split("/");for(let u of o)u&&(i=(0,ot._)`${i}${(0,ot.getProperty)((0,Pd.unescapeJsonPointer)(u))}`,a=(0,ot._)`${a} && ${i}`);return a;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${e}`}}Up.getData=pve});var rP=E(d9=>{"use strict";Object.defineProperty(d9,"__esModule",{value:!0});var l9=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};d9.default=l9});var X_=E(m9=>{"use strict";Object.defineProperty(m9,"__esModule",{value:!0});var f9=z_(),p9=class extends Error{constructor(e,r,n,s){super(s||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,f9.resolveUrl)(e,r,n),this.missingSchema=(0,f9.normalizeId)((0,f9.getFullPath)(e,this.missingRef))}};m9.default=p9});var sP=E(sc=>{"use strict";Object.defineProperty(sc,"__esModule",{value:!0});sc.resolveSchema=sc.getCompilingSchema=sc.resolveRef=sc.compileSchema=sc.SchemaEnv=void 0;var Yc=Yt(),w5t=rP(),nh=Od(),Jc=z_(),mve=Wr(),R5t=J_(),Uy=class{constructor(e){var r;this.refs={},this.dynamicAnchors={};let n;typeof e.schema=="object"&&(n=e.schema),this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=(r=e.baseId)!==null&&r!==void 0?r:(0,Jc.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};sc.SchemaEnv=Uy;function g9(t){let e=hve.call(this,t);if(e)return e;let r=(0,Jc.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:s}=this.opts.code,{ownProperties:i}=this.opts,a=new Yc.CodeGen(this.scope,{es5:n,lines:s,ownProperties:i}),o;t.$async&&(o=a.scopeValue("Error",{ref:w5t.default,code:(0,Yc._)`require("ajv/dist/runtime/validation_error").default`}));let c=a.scopeName("validate");t.validateName=c;let u={gen:a,allErrors:this.opts.allErrors,data:nh.default.data,parentData:nh.default.parentData,parentDataProperty:nh.default.parentDataProperty,dataNames:[nh.default.data],dataPathArr:[Yc.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:a.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,Yc.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:o,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:Yc.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,Yc._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,R5t.validateFunctionCode)(u),a.optimize(this.opts.code.optimize);let d=a.toString();l=`${a.scopeRefs(nh.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,t));let p=new Function(`${nh.default.self}`,`${nh.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:p}),p.errors=null,p.schema=t.schema,p.schemaEnv=t,t.$async&&(p.$async=!0),this.opts.code.source===!0&&(p.source={validateName:c,validateCode:d,scopeValues:a._values}),this.opts.unevaluated){let{props:m,items:h}=u;p.evaluated={props:m instanceof Yc.Name?void 0:m,items:h instanceof Yc.Name?void 0:h,dynamicProps:m instanceof Yc.Name,dynamicItems:h instanceof Yc.Name},p.source&&(p.source.evaluated=(0,Yc.stringify)(p.evaluated))}return t.validate=p,t}catch(d){throw delete t.validate,delete t.validateName,l&&this.logger.error("Error compiling schema, function code:",l),d}finally{this._compilations.delete(t)}}sc.compileSchema=g9;function N5t(t,e,r){var n;r=(0,Jc.resolveUrl)(this.opts.uriResolver,e,r);let s=t.refs[r];if(s)return s;let i=D5t.call(this,t,r);if(i===void 0){let a=(n=t.localRefs)===null||n===void 0?void 0:n[r],{schemaId:o}=this.opts;a&&(i=new Uy({schema:a,schemaId:o,root:t,baseId:e}))}if(i!==void 0)return t.refs[r]=O5t.call(this,i)}sc.resolveRef=N5t;function O5t(t){return(0,Jc.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:g9.call(this,t)}function hve(t){for(let e of this._compilations)if(P5t(e,t))return e}sc.getCompilingSchema=hve;function P5t(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function D5t(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||nP.call(this,t,e)}function nP(t,e){let r=this.opts.uriResolver.parse(e),n=(0,Jc._getFullPath)(this.opts.uriResolver,r),s=(0,Jc.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===s)return h9.call(this,r,t);let i=(0,Jc.normalizeId)(n),a=this.refs[i]||this.schemas[i];if(typeof a=="string"){let o=nP.call(this,t,a);return typeof o?.schema!="object"?void 0:h9.call(this,r,o)}if(typeof a?.schema=="object"){if(a.validate||g9.call(this,a),i===(0,Jc.normalizeId)(e)){let{schema:o}=a,{schemaId:c}=this.opts,u=o[c];return u&&(s=(0,Jc.resolveUrl)(this.opts.uriResolver,s,u)),new Uy({schema:o,schemaId:c,root:t,baseId:s})}return h9.call(this,r,a)}}sc.resolveSchema=nP;var k5t=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function h9(t,{baseId:e,schema:r,root:n}){var s;if(((s=t.fragment)===null||s===void 0?void 0:s[0])!=="/")return;for(let o of t.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let c=r[(0,mve.unescapeFragment)(o)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!k5t.has(o)&&u&&(e=(0,Jc.resolveUrl)(this.opts.uriResolver,e,u))}let i;if(typeof r!="boolean"&&r.$ref&&!(0,mve.schemaHasRulesButRef)(r,this.RULES)){let o=(0,Jc.resolveUrl)(this.opts.uriResolver,e,r.$ref);i=nP.call(this,n,o)}let{schemaId:a}=this.opts;if(i=i||new Uy({schema:r,schemaId:a,root:n,baseId:e}),i.schema!==i.root.schema)return i}});var gve=E((oBr,L5t)=>{L5t.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 y9=E((cBr,bve)=>{"use strict";var B5t=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),yve=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 A9(t){let e="",r=0,n=0;for(n=0;n=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";e+=t[n];break}for(n+=1;n=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";e+=t[n]}return e}var M5t=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function Ave(t){return t.length=0,!0}function W5t(t,e,r){if(t.length){let n=A9(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function $5t(t){let e=0,r={error:!1,address:"",zone:""},n=[],s=[],i=!1,a=!1,o=W5t;for(let c=0;c7){r.error=!0;break}c>0&&t[c-1]===":"&&(i=!0),n.push(":");continue}else if(u==="%"){if(!o(s,n,r))break;o=Ave}else{s.push(u);continue}}return s.length&&(o===Ave?r.zone=s.join(""):a?n.push(s.join("")):n.push(A9(s))),r.address=n.join(""),r}function xve(t){if(F5t(t,":")<2)return{host:t,isIPV6:!1};let e=$5t(t);if(e.error)return{host:t,isIPV6:!1};{let r=e.address,n=e.address;return e.zone&&(r+="%"+e.zone,n+="%25"+e.zone),{host:r,isIPV6:!0,escapedHost:n}}}function F5t(t,e){let r=0;for(let n=0;n{"use strict";var{isUUID:H5t}=y9(),Q5t=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,G5t=["http","https","ws","wss","urn","urn:uuid"];function V5t(t){return G5t.indexOf(t)!==-1}function x9(t){return t.secure===!0?!0:t.secure===!1?!1:t.scheme?t.scheme.length===3&&(t.scheme[0]==="w"||t.scheme[0]==="W")&&(t.scheme[1]==="s"||t.scheme[1]==="S")&&(t.scheme[2]==="s"||t.scheme[2]==="S"):!1}function Eve(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function _ve(t){let e=String(t.scheme).toLowerCase()==="https";return(t.port===(e?443:80)||t.port==="")&&(t.port=void 0),t.path||(t.path="/"),t}function z5t(t){return t.secure=x9(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function K5t(t){if((t.port===(x9(t)?443:80)||t.port==="")&&(t.port=void 0),typeof t.secure=="boolean"&&(t.scheme=t.secure?"wss":"ws",t.secure=void 0),t.resourceName){let[e,r]=t.resourceName.split("?");t.path=e&&e!=="/"?e:void 0,t.query=r,t.resourceName=void 0}return t.fragment=void 0,t}function Y5t(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(Q5t);if(r){let n=e.scheme||t.scheme||"urn";t.nid=r[1].toLowerCase(),t.nss=r[2];let s=`${n}:${e.nid||t.nid}`,i=b9(s);t.path=void 0,i&&(t=i.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function J5t(t,e){if(t.nid===void 0)throw new Error("URN without nid cannot be serialized");let r=e.scheme||t.scheme||"urn",n=t.nid.toLowerCase(),s=`${r}:${e.nid||n}`,i=b9(s);i&&(t=i.serialize(t,e));let a=t,o=t.nss;return a.path=`${n||e.nid}:${o}`,e.skipEscape=!0,a}function X5t(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!H5t(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function Z5t(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var Sve={scheme:"http",domainHost:!0,parse:Eve,serialize:_ve},e8t={scheme:"https",domainHost:Sve.domainHost,parse:Eve,serialize:_ve},iP={scheme:"ws",domainHost:!0,parse:z5t,serialize:K5t},t8t={scheme:"wss",domainHost:iP.domainHost,parse:iP.parse,serialize:iP.serialize},r8t={scheme:"urn",parse:Y5t,serialize:J5t,skipNormalize:!0},n8t={scheme:"urn:uuid",parse:X5t,serialize:Z5t,skipNormalize:!0},aP={http:Sve,https:e8t,ws:iP,wss:t8t,urn:r8t,"urn:uuid":n8t};Object.setPrototypeOf(aP,null);function b9(t){return t&&(aP[t]||aP[t.toLowerCase()])||void 0}vve.exports={wsIsSecure:x9,SCHEMES:aP,isValidSchemeName:V5t,getSchemeHandler:b9}});var wve=E((lBr,cP)=>{"use strict";var{normalizeIPv6:s8t,removeDotSegments:Z_,recomposeAuthority:i8t,normalizeComponentEncoding:oP,isIPv4:a8t,nonSimpleDomain:o8t}=y9(),{SCHEMES:c8t,getSchemeHandler:Ive}=Cve();function u8t(t,e){return typeof t=="string"?t=nl(Dd(t,e),e):typeof t=="object"&&(t=Dd(nl(t,e),e)),t}function l8t(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},s=Tve(Dd(t,n),Dd(e,n),n,!0);return n.skipEscape=!0,nl(s,n)}function Tve(t,e,r,n){let s={};return n||(t=Dd(nl(t,r),r),e=Dd(nl(e,r),r)),r=r||{},!r.tolerant&&e.scheme?(s.scheme=e.scheme,s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=Z_(e.path||""),s.query=e.query):(e.userinfo!==void 0||e.host!==void 0||e.port!==void 0?(s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=Z_(e.path||""),s.query=e.query):(e.path?(e.path[0]==="/"?s.path=Z_(e.path):((t.userinfo!==void 0||t.host!==void 0||t.port!==void 0)&&!t.path?s.path="/"+e.path:t.path?s.path=t.path.slice(0,t.path.lastIndexOf("/")+1)+e.path:s.path=e.path,s.path=Z_(s.path)),s.query=e.query):(s.path=t.path,e.query!==void 0?s.query=e.query:s.query=t.query),s.userinfo=t.userinfo,s.host=t.host,s.port=t.port),s.scheme=t.scheme),s.fragment=e.fragment,s}function d8t(t,e,r){return typeof t=="string"?(t=unescape(t),t=nl(oP(Dd(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=nl(oP(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=nl(oP(Dd(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=nl(oP(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function nl(t,e){let r={host:t.host,scheme:t.scheme,userinfo:t.userinfo,port:t.port,path:t.path,query:t.query,nid:t.nid,nss:t.nss,uuid:t.uuid,fragment:t.fragment,reference:t.reference,resourceName:t.resourceName,secure:t.secure,error:""},n=Object.assign({},e),s=[],i=Ive(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=i8t(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=Z_(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 f8t=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function Dd(t,e){let r=Object.assign({},e),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?t=r.scheme+":"+t:t="//"+t);let i=t.match(f8t);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(a8t(n.host)===!1){let c=s8t(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=Ive(r.scheme||n.scheme);if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&s===!1&&o8t(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)&&(t.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 E9={SCHEMES:c8t,normalize:u8t,resolve:l8t,resolveComponent:Tve,equal:d8t,serialize:nl,parse:Dd};cP.exports=E9;cP.exports.default=E9;cP.exports.fastUri=E9});var Nve=E(_9=>{"use strict";Object.defineProperty(_9,"__esModule",{value:!0});var Rve=wve();Rve.code='require("ajv/dist/runtime/uri").default';_9.default=Rve});var Wve=E(mi=>{"use strict";Object.defineProperty(mi,"__esModule",{value:!0});mi.CodeGen=mi.Name=mi.nil=mi.stringify=mi.str=mi._=mi.KeywordCxt=void 0;var p8t=J_();Object.defineProperty(mi,"KeywordCxt",{enumerable:!0,get:function(){return p8t.KeywordCxt}});var qy=Yt();Object.defineProperty(mi,"_",{enumerable:!0,get:function(){return qy._}});Object.defineProperty(mi,"str",{enumerable:!0,get:function(){return qy.str}});Object.defineProperty(mi,"stringify",{enumerable:!0,get:function(){return qy.stringify}});Object.defineProperty(mi,"nil",{enumerable:!0,get:function(){return qy.nil}});Object.defineProperty(mi,"Name",{enumerable:!0,get:function(){return qy.Name}});Object.defineProperty(mi,"CodeGen",{enumerable:!0,get:function(){return qy.CodeGen}});var m8t=rP(),Lve=X_(),h8t=X7(),eS=sP(),g8t=Yt(),tS=z_(),uP=V_(),v9=Wr(),Ove=gve(),A8t=Nve(),Bve=(t,e)=>new RegExp(t,e);Bve.code="new RegExp";var y8t=["removeAdditional","useDefaults","coerceTypes"],x8t=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),b8t={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."},E8t={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},Pve=200;function _8t(t){var e,r,n,s,i,a,o,c,u,l,d,f,p,m,h,A,g,b,y,x,v,C,R,w,N;let P=t.strict,L=(e=t.code)===null||e===void 0?void 0:e.optimize,M=L===!0||L===void 0?1:L||0,k=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:Bve,B=(s=t.uriResolver)!==null&&s!==void 0?s:A8t.default;return{strictSchema:(a=(i=t.strictSchema)!==null&&i!==void 0?i:P)!==null&&a!==void 0?a:!0,strictNumbers:(c=(o=t.strictNumbers)!==null&&o!==void 0?o:P)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:P)!==null&&l!==void 0?l:"log",strictTuples:(f=(d=t.strictTuples)!==null&&d!==void 0?d:P)!==null&&f!==void 0?f:"log",strictRequired:(m=(p=t.strictRequired)!==null&&p!==void 0?p:P)!==null&&m!==void 0?m:!1,code:t.code?{...t.code,optimize:M,regExp:k}:{optimize:M,regExp:k},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:Pve,loopEnum:(A=t.loopEnum)!==null&&A!==void 0?A:Pve,meta:(g=t.meta)!==null&&g!==void 0?g:!0,messages:(b=t.messages)!==null&&b!==void 0?b:!0,inlineRefs:(y=t.inlineRefs)!==null&&y!==void 0?y:!0,schemaId:(x=t.schemaId)!==null&&x!==void 0?x:"$id",addUsedSchema:(v=t.addUsedSchema)!==null&&v!==void 0?v:!0,validateSchema:(C=t.validateSchema)!==null&&C!==void 0?C:!0,validateFormats:(R=t.validateFormats)!==null&&R!==void 0?R:!0,unicodeRegExp:(w=t.unicodeRegExp)!==null&&w!==void 0?w:!0,int32range:(N=t.int32range)!==null&&N!==void 0?N:!0,uriResolver:B}}var rS=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,..._8t(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new g8t.ValueScope({scope:{},prefixes:x8t,es5:r,lines:n}),this.logger=w8t(e.logger);let s=e.validateFormats;e.validateFormats=!1,this.RULES=(0,h8t.getRules)(),Dve.call(this,b8t,e,"NOT SUPPORTED"),Dve.call(this,E8t,e,"DEPRECATED","warn"),this._metaOpts=I8t.call(this),e.formats&&v8t.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&C8t.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),S8t.call(this),e.validateFormats=s}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,s=Ove;n==="id"&&(s={...Ove},s.id=s.$id,delete s.$id),r&&e&&this.addMetaSchema(s,s[n],!1)}defaultMeta(){let{meta:e,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof e=="object"?e[r]||e:void 0}validate(e,r){let n;if(typeof e=="string"){if(n=this.getSchema(e),!n)throw new Error(`no schema with key or ref "${e}"`)}else n=this.compile(e);let s=n(r);return"$async"in n||(this.errors=n.errors),s}compile(e,r){let n=this._addSchema(e,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(e,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,e,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 Lve.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(e,r,n,s=this.opts.validateSchema){if(Array.isArray(e)){for(let a of e)this.addSchema(a,void 0,n,s);return this}let i;if(typeof e=="object"){let{schemaId:a}=this.opts;if(i=e[a],i!==void 0&&typeof i!="string")throw new Error(`schema ${a} must be string`)}return r=(0,tS.normalizeId)(r||i),this._checkUnique(r),this.schemas[r]=this._addSchema(e,n,r,s,!0),this}addMetaSchema(e,r,n=this.opts.validateSchema){return this.addSchema(e,r,!0,n),this}validateSchema(e,r){if(typeof e=="boolean")return!0;let n;if(n=e.$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,e);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(e){let r;for(;typeof(r=kve.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,s=new eS.SchemaEnv({schema:{},schemaId:n});if(r=eS.resolveSchema.call(this,s,e),!r)return;this.refs[e]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(e){if(e instanceof RegExp)return this._removeAllSchemas(this.schemas,e),this._removeAllSchemas(this.refs,e),this;switch(typeof e){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=kve.call(this,e);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[e],delete this.refs[e],this}case"object":{let r=e;this._cache.delete(r);let n=e[this.opts.schemaId];return n&&(n=(0,tS.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(e){for(let r of e)this.addKeyword(r);return this}addKeyword(e,r){let n;if(typeof e=="string")n=e,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof e=="object"&&r===void 0){if(r=e,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(N8t.call(this,n,r),!r)return(0,v9.eachItem)(n,i=>S9.call(this,i)),this;P8t.call(this,r);let s={...r,type:(0,uP.getJSONTypes)(r.type),schemaType:(0,uP.getJSONTypes)(r.schemaType)};return(0,v9.eachItem)(n,s.type.length===0?i=>S9.call(this,i,s):i=>s.type.forEach(a=>S9.call(this,i,s,a))),this}getKeyword(e){let r=this.RULES.all[e];return typeof r=="object"?r.definition:!!r}removeKeyword(e){let{RULES:r}=this;delete r.keywords[e],delete r.all[e];for(let n of r.rules){let s=n.rules.findIndex(i=>i.keyword===e);s>=0&&n.rules.splice(s,1)}return this}addFormat(e,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[e]=r,this}errorsText(e=this.errors,{separator:r=", ",dataVar:n="data"}={}){return!e||e.length===0?"No errors":e.map(s=>`${n}${s.instancePath} ${s.message}`).reduce((s,i)=>s+r+i)}$dataMetaSchema(e,r){let n=this.RULES.all;e=JSON.parse(JSON.stringify(e));for(let s of r){let i=s.split("/").slice(1),a=e;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]=Mve(l))}}return e}_removeAllSchemas(e,r){for(let n in e){let s=e[n];(!r||r.test(n))&&(typeof s=="string"?delete e[n]:s&&!s.meta&&(this._cache.delete(s.schema),delete e[n]))}}_addSchema(e,r,n,s=this.opts.validateSchema,i=this.opts.addUsedSchema){let a,{schemaId:o}=this.opts;if(typeof e=="object")a=e[o];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof e!="boolean")throw new Error("schema must be object or boolean")}let c=this._cache.get(e);if(c!==void 0)return c;n=(0,tS.normalizeId)(a||n);let u=tS.getSchemaRefs.call(this,e,n);return c=new eS.SchemaEnv({schema:e,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(e,!0),c}_checkUnique(e){if(this.schemas[e]||this.refs[e])throw new Error(`schema with key or id "${e}" already exists`)}_compileSchemaEnv(e){if(e.meta?this._compileMetaSchema(e):eS.compileSchema.call(this,e),!e.validate)throw new Error("ajv implementation error");return e.validate}_compileMetaSchema(e){let r=this.opts;this.opts=this._metaOpts;try{eS.compileSchema.call(this,e)}finally{this.opts=r}}};rS.ValidationError=m8t.default;rS.MissingRefError=Lve.default;mi.default=rS;function Dve(t,e,r,n="error"){for(let s in t){let i=s;i in e&&this.logger[n](`${r}: option ${s}. ${t[i]}`)}}function kve(t){return t=(0,tS.normalizeId)(t),this.schemas[t]||this.refs[t]}function S8t(){let t=this.opts.schemas;if(t)if(Array.isArray(t))this.addSchema(t);else for(let e in t)this.addSchema(t[e],e)}function v8t(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function C8t(t){if(Array.isArray(t)){this.addVocabulary(t);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let e in t){let r=t[e];r.keyword||(r.keyword=e),this.addKeyword(r)}}function I8t(){let t={...this.opts};for(let e of y8t)delete t[e];return t}var T8t={log(){},warn(){},error(){}};function w8t(t){if(t===!1)return T8t;if(t===void 0)return console;if(t.log&&t.warn&&t.error)return t;throw new Error("logger must implement log, warn and error methods")}var R8t=/^[a-z_$][a-z0-9_$:-]*$/i;function N8t(t,e){let{RULES:r}=this;if((0,v9.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!R8t.test(n))throw new Error(`Keyword ${n} has invalid name`)}),!!e&&e.$data&&!("code"in e||"validate"in e))throw new Error('$data keyword must have "code" or "validate" function')}function S9(t,e,r){var n;let s=e?.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[t]=!0,!e)return;let o={keyword:t,definition:{...e,type:(0,uP.getJSONTypes)(e.type),schemaType:(0,uP.getJSONTypes)(e.schemaType)}};e.before?O8t.call(this,a,o,e.before):a.rules.push(o),i.all[t]=o,(n=e.implements)===null||n===void 0||n.forEach(c=>this.addKeyword(c))}function O8t(t,e,r){let n=t.rules.findIndex(s=>s.keyword===r);n>=0?t.rules.splice(n,0,e):(t.rules.push(e),this.logger.warn(`rule ${r} is not defined`))}function P8t(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=Mve(e)),t.validateSchema=this.compile(e,!0))}var D8t={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function Mve(t){return{anyOf:[t,D8t]}}});var $ve=E(C9=>{"use strict";Object.defineProperty(C9,"__esModule",{value:!0});var k8t={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};C9.default=k8t});var jve=E(sh=>{"use strict";Object.defineProperty(sh,"__esModule",{value:!0});sh.callRef=sh.getValidate=void 0;var L8t=X_(),Fve=nc(),ja=Yt(),jy=Od(),Uve=sP(),lP=Wr(),B8t={keyword:"$ref",schemaType:"string",code(t){let{gen:e,schema:r,it:n}=t,{baseId:s,schemaEnv:i,validateName:a,opts:o,self:c}=n,{root:u}=i;if((r==="#"||r==="#/")&&s===u.baseId)return d();let l=Uve.resolveRef.call(c,u,s,r);if(l===void 0)throw new L8t.default(n.opts.uriResolver,s,r);if(l instanceof Uve.SchemaEnv)return f(l);return p(l);function d(){if(i===u)return dP(t,a,i,i.$async);let m=e.scopeValue("root",{ref:u});return dP(t,(0,ja._)`${m}.validate`,u,u.$async)}function f(m){let h=qve(t,m);dP(t,h,m,m.$async)}function p(m){let h=e.scopeValue("schema",o.code.source===!0?{ref:m,code:(0,ja.stringify)(m)}:{ref:m}),A=e.name("valid"),g=t.subschema({schema:m,dataTypes:[],schemaPath:ja.nil,topSchemaRef:h,errSchemaPath:r},A);t.mergeEvaluated(g),t.ok(A)}}};function qve(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,ja._)`${r.scopeValue("wrapper",{ref:e})}.validate`}sh.getValidate=qve;function dP(t,e,r,n){let{gen:s,it:i}=t,{allErrors:a,schemaEnv:o,opts:c}=i,u=c.passContext?jy.default.this:ja.nil;n?l():d();function l(){if(!o.$async)throw new Error("async schema referenced by sync schema");let m=s.let("valid");s.try(()=>{s.code((0,ja._)`await ${(0,Fve.callValidateCode)(t,e,u)}`),p(e),a||s.assign(m,!0)},h=>{s.if((0,ja._)`!(${h} instanceof ${i.ValidationError})`,()=>s.throw(h)),f(h),a||s.assign(m,!1)}),t.ok(m)}function d(){t.result((0,Fve.callValidateCode)(t,e,u),()=>p(e),()=>f(e))}function f(m){let h=(0,ja._)`${m}.errors`;s.assign(jy.default.vErrors,(0,ja._)`${jy.default.vErrors} === null ? ${h} : ${jy.default.vErrors}.concat(${h})`),s.assign(jy.default.errors,(0,ja._)`${jy.default.vErrors}.length`)}function p(m){var h;if(!i.opts.unevaluated)return;let A=(h=r?.validate)===null||h===void 0?void 0:h.evaluated;if(i.props!==!0)if(A&&!A.dynamicProps)A.props!==void 0&&(i.props=lP.mergeEvaluated.props(s,A.props,i.props));else{let g=s.var("props",(0,ja._)`${m}.evaluated.props`);i.props=lP.mergeEvaluated.props(s,g,i.props,ja.Name)}if(i.items!==!0)if(A&&!A.dynamicItems)A.items!==void 0&&(i.items=lP.mergeEvaluated.items(s,A.items,i.items));else{let g=s.var("items",(0,ja._)`${m}.evaluated.items`);i.items=lP.mergeEvaluated.items(s,g,i.items,ja.Name)}}}sh.callRef=dP;sh.default=B8t});var Hve=E(I9=>{"use strict";Object.defineProperty(I9,"__esModule",{value:!0});var M8t=$ve(),W8t=jve(),$8t=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",M8t.default,W8t.default];I9.default=$8t});var Qve=E(T9=>{"use strict";Object.defineProperty(T9,"__esModule",{value:!0});var fP=Yt(),qp=fP.operators,pP={maximum:{okStr:"<=",ok:qp.LTE,fail:qp.GT},minimum:{okStr:">=",ok:qp.GTE,fail:qp.LT},exclusiveMaximum:{okStr:"<",ok:qp.LT,fail:qp.GTE},exclusiveMinimum:{okStr:">",ok:qp.GT,fail:qp.LTE}},F8t={message:({keyword:t,schemaCode:e})=>(0,fP.str)`must be ${pP[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,fP._)`{comparison: ${pP[t].okStr}, limit: ${e}}`},U8t={keyword:Object.keys(pP),type:"number",schemaType:"number",$data:!0,error:F8t,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,fP._)`${r} ${pP[e].fail} ${n} || isNaN(${r})`)}};T9.default=U8t});var Gve=E(w9=>{"use strict";Object.defineProperty(w9,"__esModule",{value:!0});var nS=Yt(),q8t={message:({schemaCode:t})=>(0,nS.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,nS._)`{multipleOf: ${t}}`},j8t={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:q8t,code(t){let{gen:e,data:r,schemaCode:n,it:s}=t,i=s.opts.multipleOfPrecision,a=e.let("res"),o=i?(0,nS._)`Math.abs(Math.round(${a}) - ${a}) > 1e-${i}`:(0,nS._)`${a} !== parseInt(${a})`;t.fail$data((0,nS._)`(${n} === 0 || (${a} = ${r}/${n}, ${o}))`)}};w9.default=j8t});var zve=E(R9=>{"use strict";Object.defineProperty(R9,"__esModule",{value:!0});function Vve(t){let e=t.length,r=0,n=0,s;for(;n=55296&&s<=56319&&n{"use strict";Object.defineProperty(N9,"__esModule",{value:!0});var ih=Yt(),H8t=Wr(),Q8t=zve(),G8t={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,ih.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,ih._)`{limit: ${t}}`},V8t={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:G8t,code(t){let{keyword:e,data:r,schemaCode:n,it:s}=t,i=e==="maxLength"?ih.operators.GT:ih.operators.LT,a=s.opts.unicode===!1?(0,ih._)`${r}.length`:(0,ih._)`${(0,H8t.useFunc)(t.gen,Q8t.default)}(${r})`;t.fail$data((0,ih._)`${a} ${i} ${n}`)}};N9.default=V8t});var Yve=E(O9=>{"use strict";Object.defineProperty(O9,"__esModule",{value:!0});var z8t=nc(),mP=Yt(),K8t={message:({schemaCode:t})=>(0,mP.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,mP._)`{pattern: ${t}}`},Y8t={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:K8t,code(t){let{data:e,$data:r,schema:n,schemaCode:s,it:i}=t,a=i.opts.unicodeRegExp?"u":"",o=r?(0,mP._)`(new RegExp(${s}, ${a}))`:(0,z8t.usePattern)(t,n);t.fail$data((0,mP._)`!${o}.test(${e})`)}};O9.default=Y8t});var Jve=E(P9=>{"use strict";Object.defineProperty(P9,"__esModule",{value:!0});var sS=Yt(),J8t={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,sS.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,sS._)`{limit: ${t}}`},X8t={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:J8t,code(t){let{keyword:e,data:r,schemaCode:n}=t,s=e==="maxProperties"?sS.operators.GT:sS.operators.LT;t.fail$data((0,sS._)`Object.keys(${r}).length ${s} ${n}`)}};P9.default=X8t});var Xve=E(D9=>{"use strict";Object.defineProperty(D9,"__esModule",{value:!0});var iS=nc(),aS=Yt(),Z8t=Wr(),eWt={message:({params:{missingProperty:t}})=>(0,aS.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,aS._)`{missingProperty: ${t}}`},tWt={keyword:"required",type:"object",schemaType:"array",$data:!0,error:eWt,code(t){let{gen:e,schema:r,schemaCode:n,data:s,$data:i,it:a}=t,{opts:o}=a;if(!i&&r.length===0)return;let c=r.length>=o.loopRequired;if(a.allErrors?u():l(),o.strictRequired){let p=t.parentSchema.properties,{definedProperties:m}=t.it;for(let h of r)if(p?.[h]===void 0&&!m.has(h)){let A=a.schemaEnv.baseId+a.errSchemaPath,g=`required property "${h}" is not defined at "${A}" (strictRequired)`;(0,Z8t.checkStrictMode)(a,g,a.opts.strictRequired)}}function u(){if(c||i)t.block$data(aS.nil,d);else for(let p of r)(0,iS.checkReportMissingProp)(t,p)}function l(){let p=e.let("missing");if(c||i){let m=e.let("valid",!0);t.block$data(m,()=>f(p,m)),t.ok(m)}else e.if((0,iS.checkMissingProp)(t,r,p)),(0,iS.reportMissingProp)(t,p),e.else()}function d(){e.forOf("prop",n,p=>{t.setParams({missingProperty:p}),e.if((0,iS.noPropertyInData)(e,s,p,o.ownProperties),()=>t.error())})}function f(p,m){t.setParams({missingProperty:p}),e.forOf(p,n,()=>{e.assign(m,(0,iS.propertyInData)(e,s,p,o.ownProperties)),e.if((0,aS.not)(m),()=>{t.error(),e.break()})},aS.nil)}}};D9.default=tWt});var Zve=E(k9=>{"use strict";Object.defineProperty(k9,"__esModule",{value:!0});var oS=Yt(),rWt={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,oS.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,oS._)`{limit: ${t}}`},nWt={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:rWt,code(t){let{keyword:e,data:r,schemaCode:n}=t,s=e==="maxItems"?oS.operators.GT:oS.operators.LT;t.fail$data((0,oS._)`${r}.length ${s} ${n}`)}};k9.default=nWt});var hP=E(L9=>{"use strict";Object.defineProperty(L9,"__esModule",{value:!0});var eCe=Go();eCe.code='require("ajv/dist/runtime/equal").default';L9.default=eCe});var tCe=E(M9=>{"use strict";Object.defineProperty(M9,"__esModule",{value:!0});var B9=V_(),hi=Yt(),sWt=Wr(),iWt=hP(),aWt={message:({params:{i:t,j:e}})=>(0,hi.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,hi._)`{i: ${t}, j: ${e}}`},oWt={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:aWt,code(t){let{gen:e,data:r,$data:n,schema:s,parentSchema:i,schemaCode:a,it:o}=t;if(!n&&!s)return;let c=e.let("valid"),u=i.items?(0,B9.getSchemaTypes)(i.items):[];t.block$data(c,l,(0,hi._)`${a} === false`),t.ok(c);function l(){let m=e.let("i",(0,hi._)`${r}.length`),h=e.let("j");t.setParams({i:m,j:h}),e.assign(c,!0),e.if((0,hi._)`${m} > 1`,()=>(d()?f:p)(m,h))}function d(){return u.length>0&&!u.some(m=>m==="object"||m==="array")}function f(m,h){let A=e.name("item"),g=(0,B9.checkDataTypes)(u,A,o.opts.strictNumbers,B9.DataType.Wrong),b=e.const("indices",(0,hi._)`{}`);e.for((0,hi._)`;${m}--;`,()=>{e.let(A,(0,hi._)`${r}[${m}]`),e.if(g,(0,hi._)`continue`),u.length>1&&e.if((0,hi._)`typeof ${A} == "string"`,(0,hi._)`${A} += "_"`),e.if((0,hi._)`typeof ${b}[${A}] == "number"`,()=>{e.assign(h,(0,hi._)`${b}[${A}]`),t.error(),e.assign(c,!1).break()}).code((0,hi._)`${b}[${A}] = ${m}`)})}function p(m,h){let A=(0,sWt.useFunc)(e,iWt.default),g=e.name("outer");e.label(g).for((0,hi._)`;${m}--;`,()=>e.for((0,hi._)`${h} = ${m}; ${h}--;`,()=>e.if((0,hi._)`${A}(${r}[${m}], ${r}[${h}])`,()=>{t.error(),e.assign(c,!1).break(g)})))}}};M9.default=oWt});var rCe=E($9=>{"use strict";Object.defineProperty($9,"__esModule",{value:!0});var W9=Yt(),cWt=Wr(),uWt=hP(),lWt={message:"must be equal to constant",params:({schemaCode:t})=>(0,W9._)`{allowedValue: ${t}}`},dWt={keyword:"const",$data:!0,error:lWt,code(t){let{gen:e,data:r,$data:n,schemaCode:s,schema:i}=t;n||i&&typeof i=="object"?t.fail$data((0,W9._)`!${(0,cWt.useFunc)(e,uWt.default)}(${r}, ${s})`):t.fail((0,W9._)`${i} !== ${r}`)}};$9.default=dWt});var nCe=E(F9=>{"use strict";Object.defineProperty(F9,"__esModule",{value:!0});var cS=Yt(),fWt=Wr(),pWt=hP(),mWt={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,cS._)`{allowedValues: ${t}}`},hWt={keyword:"enum",schemaType:"array",$data:!0,error:mWt,code(t){let{gen:e,data:r,$data:n,schema:s,schemaCode:i,it:a}=t;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,fWt.useFunc)(e,pWt.default)),l;if(o||n)l=e.let("valid"),t.block$data(l,d);else{if(!Array.isArray(s))throw new Error("ajv implementation error");let p=e.const("vSchema",i);l=(0,cS.or)(...s.map((m,h)=>f(p,h)))}t.pass(l);function d(){e.assign(l,!1),e.forOf("v",i,p=>e.if((0,cS._)`${u()}(${r}, ${p})`,()=>e.assign(l,!0).break()))}function f(p,m){let h=s[m];return typeof h=="object"&&h!==null?(0,cS._)`${u()}(${r}, ${p}[${m}])`:(0,cS._)`${r} === ${h}`}}};F9.default=hWt});var sCe=E(U9=>{"use strict";Object.defineProperty(U9,"__esModule",{value:!0});var gWt=Qve(),AWt=Gve(),yWt=Kve(),xWt=Yve(),bWt=Jve(),EWt=Xve(),_Wt=Zve(),SWt=tCe(),vWt=rCe(),CWt=nCe(),IWt=[gWt.default,AWt.default,yWt.default,xWt.default,bWt.default,EWt.default,_Wt.default,SWt.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},vWt.default,CWt.default];U9.default=IWt});var j9=E(uS=>{"use strict";Object.defineProperty(uS,"__esModule",{value:!0});uS.validateAdditionalItems=void 0;var ah=Yt(),q9=Wr(),TWt={message:({params:{len:t}})=>(0,ah.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,ah._)`{limit: ${t}}`},wWt={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:TWt,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,q9.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}iCe(t,n)}};function iCe(t,e){let{gen:r,schema:n,data:s,keyword:i,it:a}=t;a.items=!0;let o=r.const("len",(0,ah._)`${s}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,ah._)`${o} <= ${e.length}`);else if(typeof n=="object"&&!(0,q9.alwaysValidSchema)(a,n)){let u=r.var("valid",(0,ah._)`${o} <= ${e.length}`);r.if((0,ah.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,o,l=>{t.subschema({keyword:i,dataProp:l,dataPropType:q9.Type.Num},u),a.allErrors||r.if((0,ah.not)(u),()=>r.break())})}}uS.validateAdditionalItems=iCe;uS.default=wWt});var H9=E(lS=>{"use strict";Object.defineProperty(lS,"__esModule",{value:!0});lS.validateTuple=void 0;var aCe=Yt(),gP=Wr(),RWt=nc(),NWt={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return oCe(t,"additionalItems",e);r.items=!0,!(0,gP.alwaysValidSchema)(r,e)&&t.ok((0,RWt.validateArray)(t))}};function oCe(t,e,r=t.schema){let{gen:n,parentSchema:s,data:i,keyword:a,it:o}=t;l(s),o.opts.unevaluated&&r.length&&o.items!==!0&&(o.items=gP.mergeEvaluated.items(n,r.length,o.items));let c=n.name("valid"),u=n.const("len",(0,aCe._)`${i}.length`);r.forEach((d,f)=>{(0,gP.alwaysValidSchema)(o,d)||(n.if((0,aCe._)`${u} > ${f}`,()=>t.subschema({keyword:a,schemaProp:f,dataProp:f},c)),t.ok(c))});function l(d){let{opts:f,errSchemaPath:p}=o,m=r.length,h=m===d.minItems&&(m===d.maxItems||d[e]===!1);if(f.strictTuples&&!h){let A=`"${a}" is ${m}-tuple, but minItems or maxItems/${e} are not specified or different at path "${p}"`;(0,gP.checkStrictMode)(o,A,f.strictTuples)}}}lS.validateTuple=oCe;lS.default=NWt});var cCe=E(Q9=>{"use strict";Object.defineProperty(Q9,"__esModule",{value:!0});var OWt=H9(),PWt={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,OWt.validateTuple)(t,"items")};Q9.default=PWt});var lCe=E(G9=>{"use strict";Object.defineProperty(G9,"__esModule",{value:!0});var uCe=Yt(),DWt=Wr(),kWt=nc(),LWt=j9(),BWt={message:({params:{len:t}})=>(0,uCe.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,uCe._)`{limit: ${t}}`},MWt={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:BWt,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:s}=r;n.items=!0,!(0,DWt.alwaysValidSchema)(n,e)&&(s?(0,LWt.validateAdditionalItems)(t,s):t.ok((0,kWt.validateArray)(t)))}};G9.default=MWt});var dCe=E(V9=>{"use strict";Object.defineProperty(V9,"__esModule",{value:!0});var ic=Yt(),AP=Wr(),WWt={message:({params:{min:t,max:e}})=>e===void 0?(0,ic.str)`must contain at least ${t} valid item(s)`:(0,ic.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,ic._)`{minContains: ${t}}`:(0,ic._)`{minContains: ${t}, maxContains: ${e}}`},$Wt={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:WWt,code(t){let{gen:e,schema:r,parentSchema:n,data:s,it:i}=t,a,o,{minContains:c,maxContains:u}=n;i.opts.next?(a=c===void 0?1:c,o=u):a=1;let l=e.const("len",(0,ic._)`${s}.length`);if(t.setParams({min:a,max:o}),o===void 0&&a===0){(0,AP.checkStrictMode)(i,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(o!==void 0&&a>o){(0,AP.checkStrictMode)(i,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,AP.alwaysValidSchema)(i,r)){let h=(0,ic._)`${l} >= ${a}`;o!==void 0&&(h=(0,ic._)`${h} && ${l} <= ${o}`),t.pass(h);return}i.items=!0;let d=e.name("valid");o===void 0&&a===1?p(d,()=>e.if(d,()=>e.break())):a===0?(e.let(d,!0),o!==void 0&&e.if((0,ic._)`${s}.length > 0`,f)):(e.let(d,!1),f()),t.result(d,()=>t.reset());function f(){let h=e.name("_valid"),A=e.let("count",0);p(h,()=>e.if(h,()=>m(A)))}function p(h,A){e.forRange("i",0,l,g=>{t.subschema({keyword:"contains",dataProp:g,dataPropType:AP.Type.Num,compositeRule:!0},h),A()})}function m(h){e.code((0,ic._)`${h}++`),o===void 0?e.if((0,ic._)`${h} >= ${a}`,()=>e.assign(d,!0).break()):(e.if((0,ic._)`${h} > ${o}`,()=>e.assign(d,!1).break()),a===1?e.assign(d,!0):e.if((0,ic._)`${h} >= ${a}`,()=>e.assign(d,!0)))}}};V9.default=$Wt});var mCe=E(sl=>{"use strict";Object.defineProperty(sl,"__esModule",{value:!0});sl.validateSchemaDeps=sl.validatePropertyDeps=sl.error=void 0;var z9=Yt(),FWt=Wr(),dS=nc();sl.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,z9.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,z9._)`{property: ${t}, + || ${a} === "boolean" || ${s} === null`).assign(o,(0,Qt._)`[${s}]`)}}}function QBt({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,Qt._)`${e} !== undefined`,()=>t.assign((0,Qt._)`${e}[${r}]`,n))}function B7(t,e,r,n=VA.Correct){let s=n===VA.Correct?Qt.operators.EQ:Qt.operators.NEQ,i;switch(t){case"null":return(0,Qt._)`${e} ${s} null`;case"array":i=(0,Qt._)`Array.isArray(${e})`;break;case"object":i=(0,Qt._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":i=a((0,Qt._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":i=a();break;default:return(0,Qt._)`typeof ${e} ${s} ${t}`}return n===VA.Correct?i:(0,Qt.not)(i);function a(o=Qt.nil){return(0,Qt.and)((0,Qt._)`typeof ${e} == "number"`,o,r?(0,Qt._)`isFinite(${e})`:Qt.nil)}}ji.checkDataType=B7;function L7(t,e,r,n){if(t.length===1)return B7(t[0],e,r,n);let s,i=(0,sve.toHash)(t);if(i.array&&i.object){let a=(0,Qt._)`typeof ${e} != "object"`;s=i.null?a:(0,Qt._)`!${e} || ${a}`,delete i.null,delete i.array,delete i.object}else s=Qt.nil;i.number&&delete i.integer;for(let a in i)s=(0,Qt.and)(s,B7(a,e,r,n));return s}ji.checkDataTypes=L7;var HBt={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,Qt._)`{type: ${t}}`:(0,Qt._)`{type: ${e}}`};function M7(t){let e=GBt(t);(0,$Bt.reportError)(e,HBt)}ji.reportTypeError=M7;function GBt(t){let{gen:e,data:r,schema:n}=t,s=(0,sve.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:s,schemaValue:s,parentSchema:n,params:{},it:t}}});var cve=_(Lk=>{"use strict";Object.defineProperty(Lk,"__esModule",{value:!0});Lk.assignDefaults=void 0;var YA=Et(),zBt=Yt();function KBt(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let s in r)ove(t,s,r[s].default);else e==="array"&&Array.isArray(n)&&n.forEach((s,i)=>ove(t,i,s.default))}Lk.assignDefaults=KBt;function ove(t,e,r){let{gen:n,compositeRule:s,data:i,opts:a}=t;if(r===void 0)return;let o=(0,YA._)`${i}${(0,YA.getProperty)(e)}`;if(s){(0,zBt.checkStrictMode)(t,`default is ignored for: ${o}`);return}let c=(0,YA._)`${o} === undefined`;a.useDefaults==="empty"&&(c=(0,YA._)`${c} || ${o} === null || ${o} === ""`),n.if(c,(0,YA._)`${o} = ${(0,YA.stringify)(r)}`)}});var Ai=_(Zr=>{"use strict";Object.defineProperty(Zr,"__esModule",{value:!0});Zr.validateUnion=Zr.validateArray=Zr.usePattern=Zr.callValidateCode=Zr.schemaProperties=Zr.allSchemaProperties=Zr.noPropertyInData=Zr.propertyInData=Zr.isOwnProperty=Zr.hasPropFunc=Zr.reportMissingProp=Zr.checkMissingProp=Zr.checkReportMissingProp=void 0;var kn=Et(),W7=Yt(),Gp=dc(),VBt=Yt();function YBt(t,e){let{gen:r,data:n,it:s}=t;r.if(U7(r,n,e,s.opts.ownProperties),()=>{t.setParams({missingProperty:(0,kn._)`${e}`},!0),t.error()})}Zr.checkReportMissingProp=YBt;function JBt({gen:t,data:e,it:{opts:r}},n,s){return(0,kn.or)(...n.map(i=>(0,kn.and)(U7(t,e,i,r.ownProperties),(0,kn._)`${s} = ${i}`)))}Zr.checkMissingProp=JBt;function XBt(t,e){t.setParams({missingProperty:e},!0),t.error()}Zr.reportMissingProp=XBt;function uve(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,kn._)`Object.prototype.hasOwnProperty`})}Zr.hasPropFunc=uve;function $7(t,e,r){return(0,kn._)`${uve(t)}.call(${e}, ${r})`}Zr.isOwnProperty=$7;function ZBt(t,e,r,n){let s=(0,kn._)`${e}${(0,kn.getProperty)(r)} !== undefined`;return n?(0,kn._)`${s} && ${$7(t,e,r)}`:s}Zr.propertyInData=ZBt;function U7(t,e,r,n){let s=(0,kn._)`${e}${(0,kn.getProperty)(r)} === undefined`;return n?(0,kn.or)(s,(0,kn.not)($7(t,e,r))):s}Zr.noPropertyInData=U7;function lve(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}Zr.allSchemaProperties=lve;function eLt(t,e){return lve(e).filter(r=>!(0,W7.alwaysValidSchema)(t,e[r]))}Zr.schemaProperties=eLt;function tLt({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:s,errorPath:i},it:a},o,c,u){let l=u?(0,kn._)`${t}, ${e}, ${n}${s}`:e,d=[[Gp.default.instancePath,(0,kn.strConcat)(Gp.default.instancePath,i)],[Gp.default.parentData,a.parentData],[Gp.default.parentDataProperty,a.parentDataProperty],[Gp.default.rootData,Gp.default.rootData]];a.opts.dynamicRef&&d.push([Gp.default.dynamicAnchors,Gp.default.dynamicAnchors]);let f=(0,kn._)`${l}, ${r.object(...d)}`;return c!==kn.nil?(0,kn._)`${o}.call(${c}, ${f})`:(0,kn._)`${o}(${f})`}Zr.callValidateCode=tLt;var rLt=(0,kn._)`new RegExp`;function nLt({gen:t,it:{opts:e}},r){let n=e.unicodeRegExp?"u":"",{regExp:s}=e.code,i=s(r,n);return t.scopeValue("pattern",{key:i.toString(),ref:i,code:(0,kn._)`${s.code==="new RegExp"?rLt:(0,VBt.useFunc)(t,s)}(${r}, ${n})`})}Zr.usePattern=nLt;function sLt(t){let{gen:e,data:r,keyword:n,it:s}=t,i=e.name("valid");if(s.allErrors){let o=e.let("valid",!0);return a(()=>e.assign(o,!1)),o}return e.var(i,!0),a(()=>e.break()),i;function a(o){let c=e.const("len",(0,kn._)`${r}.length`);e.forRange("i",0,c,u=>{t.subschema({keyword:n,dataProp:u,dataPropType:W7.Type.Num},i),e.if((0,kn.not)(i),o)})}}Zr.validateArray=sLt;function iLt(t){let{gen:e,schema:r,keyword:n,it:s}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(c=>(0,W7.alwaysValidSchema)(s,c))&&!s.opts.unevaluated)return;let a=e.let("valid",!1),o=e.name("_valid");e.block(()=>r.forEach((c,u)=>{let l=t.subschema({keyword:n,schemaProp:u,compositeRule:!0},o);e.assign(a,(0,kn._)`${a} || ${o}`),t.mergeValidEvaluated(l,o)||e.if((0,kn.not)(a))})),t.result(a,()=>t.reset(),()=>t.error(!0))}Zr.validateUnion=iLt});var pve=_(cl=>{"use strict";Object.defineProperty(cl,"__esModule",{value:!0});cl.validateKeywordUsage=cl.validSchemaType=cl.funcKeywordCode=cl.macroKeywordCode=void 0;var ha=Et(),fh=dc(),aLt=Ai(),oLt=xv();function cLt(t,e){let{gen:r,keyword:n,schema:s,parentSchema:i,it:a}=t,o=e.macro.call(a.self,s,i,a),c=fve(r,n,o);a.opts.validateSchema!==!1&&a.self.validateSchema(o,!0);let u=r.name("valid");t.subschema({schema:o,schemaPath:ha.nil,errSchemaPath:`${a.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}cl.macroKeywordCode=cLt;function uLt(t,e){var r;let{gen:n,keyword:s,schema:i,parentSchema:a,$data:o,it:c}=t;dLt(c,e);let u=!o&&e.compile?e.compile.call(c.self,i,a,c):e.validate,l=fve(n,s,u),d=n.let("valid");t.block$data(d,f),t.ok((r=e.valid)!==null&&r!==void 0?r:d);function f(){if(e.errors===!1)h(),e.modifying&&dve(t),y(()=>t.error());else{let g=e.async?p():m();e.modifying&&dve(t),y(()=>lLt(t,g))}}function p(){let g=n.let("ruleErrs",null);return n.try(()=>h((0,ha._)`await `),b=>n.assign(d,!1).if((0,ha._)`${b} instanceof ${c.ValidationError}`,()=>n.assign(g,(0,ha._)`${b}.errors`),()=>n.throw(b))),g}function m(){let g=(0,ha._)`${l}.errors`;return n.assign(g,null),h(ha.nil),g}function h(g=e.async?(0,ha._)`await `:ha.nil){let b=c.opts.passContext?fh.default.this:fh.default.self,x=!("compile"in e&&!o||e.schema===!1);n.assign(d,(0,ha._)`${g}${(0,aLt.callValidateCode)(t,l,b,x)}`,e.modifying)}function y(g){var b;n.if((0,ha.not)((b=e.valid)!==null&&b!==void 0?b:d),g)}}cl.funcKeywordCode=uLt;function dve(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,ha._)`${n.parentData}[${n.parentDataProperty}]`))}function lLt(t,e){let{gen:r}=t;r.if((0,ha._)`Array.isArray(${e})`,()=>{r.assign(fh.default.vErrors,(0,ha._)`${fh.default.vErrors} === null ? ${e} : ${fh.default.vErrors}.concat(${e})`).assign(fh.default.errors,(0,ha._)`${fh.default.vErrors}.length`),(0,oLt.extendErrors)(t)},()=>t.error())}function dLt({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function fve(t,e,r){if(r===void 0)throw new Error(`keyword "${e}" failed to compile`);return t.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,ha.stringify)(r)})}function fLt(t,e,r=!1){return!e.length||e.some(n=>n==="array"?Array.isArray(t):n==="object"?t&&typeof t=="object"&&!Array.isArray(t):typeof t==n||r&&typeof t>"u")}cl.validSchemaType=fLt;function pLt({schema:t,opts:e,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(t,o)))throw new Error(`parent schema must have dependencies of ${i}: ${a.join(",")}`);if(s.validateSchema&&!s.validateSchema(t[i])){let c=`keyword "${i}" value is invalid at path "${n}": `+r.errorsText(s.validateSchema.errors);if(e.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}cl.validateKeywordUsage=pLt});var hve=_(zp=>{"use strict";Object.defineProperty(zp,"__esModule",{value:!0});zp.extendSubschemaMode=zp.extendSubschemaData=zp.getSubschema=void 0;var ul=Et(),mve=Yt();function mLt(t,{keyword:e,schemaProp:r,schema:n,schemaPath:s,errSchemaPath:i,topSchemaRef:a}){if(e!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(e!==void 0){let o=t.schema[e];return r===void 0?{schema:o,schemaPath:(0,ul._)`${t.schemaPath}${(0,ul.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:o[r],schemaPath:(0,ul._)`${t.schemaPath}${(0,ul.getProperty)(e)}${(0,ul.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,mve.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')}zp.getSubschema=mLt;function hLt(t,e,{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}=e;if(r!==void 0){let{errorPath:u,dataPathArr:l,opts:d}=e,f=o.let("data",(0,ul._)`${e.data}${(0,ul.getProperty)(r)}`,!0);c(f),t.errorPath=(0,ul.str)`${u}${(0,mve.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,ul._)`${r}`,t.dataPathArr=[...l,t.parentDataProperty]}if(s!==void 0){let u=s instanceof ul.Name?s:o.let("data",s,!0);c(u),a!==void 0&&(t.propertyName=a)}i&&(t.dataTypes=i);function c(u){t.data=u,t.dataLevel=e.dataLevel+1,t.dataTypes=[],e.definedProperties=new Set,t.parentData=e.data,t.dataNames=[...e.dataNames,u]}}zp.extendSubschemaData=hLt;function gLt(t,{jtdDiscriminator:e,jtdMetadata:r,compositeRule:n,createErrors:s,allErrors:i}){n!==void 0&&(t.compositeRule=n),s!==void 0&&(t.createErrors=s),i!==void 0&&(t.allErrors=i),t.jtdDiscriminator=e,t.jtdMetadata=r}zp.extendSubschemaMode=gLt});var yve=_((OUr,gve)=>{"use strict";var Kp=gve.exports=function(t,e,r){typeof e=="function"&&(r=e,e={}),r=e.cb||r;var n=typeof r=="function"?r:r.pre||function(){},s=r.post||function(){};Mk(e,n,s,t,"",t)};Kp.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};Kp.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};Kp.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};Kp.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 Mk(t,e,r,n,s,i,a,o,c,u){if(n&&typeof n=="object"&&!Array.isArray(n)){e(n,s,i,a,o,c,u);for(var l in n){var d=n[l];if(Array.isArray(d)){if(l in Kp.arrayKeywords)for(var f=0;f{"use strict";Object.defineProperty(za,"__esModule",{value:!0});za.getSchemaRefs=za.resolveUrl=za.normalizeId=za._getFullPath=za.getFullPath=za.inlineRef=void 0;var ALt=Yt(),xLt=sc(),bLt=yve(),_Lt=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function ELt(t,e=!0){return typeof t=="boolean"?!0:e===!0?!F7(t):e?Ave(t)<=e:!1}za.inlineRef=ELt;var vLt=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function F7(t){for(let e in t){if(vLt.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(F7)||typeof r=="object"&&F7(r))return!0}return!1}function Ave(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!_Lt.has(r)&&(typeof t[r]=="object"&&(0,ALt.eachItem)(t[r],n=>e+=Ave(n)),e===1/0))return 1/0}return e}function xve(t,e="",r){r!==!1&&(e=JA(e));let n=t.parse(e);return bve(t,n)}za.getFullPath=xve;function bve(t,e){return t.serialize(e).split("#")[0]+"#"}za._getFullPath=bve;var SLt=/#\/?$/;function JA(t){return t?t.replace(SLt,""):""}za.normalizeId=JA;function ILt(t,e,r){return r=JA(r),t.resolve(e,r)}za.resolveUrl=ILt;var CLt=/^[a-z_][-a-z0-9._]*$/i;function TLt(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,s=JA(t[r]||e),i={"":s},a=xve(n,s,!1),o={},c=new Set;return bLt(t,{allKeys:!0},(d,f,p,m)=>{if(m===void 0)return;let h=a+f,y=i[m];typeof d[r]=="string"&&(y=g.call(this,d[r])),b.call(this,d.$anchor),b.call(this,d.$dynamicAnchor),i[f]=y;function g(x){let A=this.opts.uriResolver.resolve;if(x=JA(y?A(y,x):x),c.has(x))throw l(x);c.add(x);let S=this.refs[x];return typeof S=="string"&&(S=this.refs[S]),typeof S=="object"?u(d,S.schema,x):x!==JA(h)&&(x[0]==="#"?(u(d,o[x],x),o[x]=d):this.refs[x]=h),x}function b(x){if(typeof x=="string"){if(!CLt.test(x))throw new Error(`invalid anchor "${x}"`);g.call(this,`#${x}`)}}}),o;function u(d,f,p){if(f!==void 0&&!xLt(d,f))throw l(p)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}za.getSchemaRefs=TLt});var XA=_(Vp=>{"use strict";Object.defineProperty(Vp,"__esModule",{value:!0});Vp.getData=Vp.KeywordCxt=Vp.validateFunctionCode=void 0;var Ive=tve(),_ve=bv(),j7=D7(),Wk=bv(),wLt=cve(),vv=pve(),q7=hve(),ot=Et(),Nt=dc(),RLt=_v(),Ud=Yt(),Ev=xv();function NLt(t){if(wve(t)&&(Rve(t),Tve(t))){PLt(t);return}Cve(t,()=>(0,Ive.topBoolOrEmptySchema)(t))}Vp.validateFunctionCode=NLt;function Cve({gen:t,validateName:e,schema:r,schemaEnv:n,opts:s},i){s.code.es5?t.func(e,(0,ot._)`${Nt.default.data}, ${Nt.default.valCxt}`,n.$async,()=>{t.code((0,ot._)`"use strict"; ${Eve(r,s)}`),kLt(t,s),t.code(i)}):t.func(e,(0,ot._)`${Nt.default.data}, ${OLt(s)}`,n.$async,()=>t.code(Eve(r,s)).code(i))}function OLt(t){return(0,ot._)`{${Nt.default.instancePath}="", ${Nt.default.parentData}, ${Nt.default.parentDataProperty}, ${Nt.default.rootData}=${Nt.default.data}${t.dynamicRef?(0,ot._)`, ${Nt.default.dynamicAnchors}={}`:ot.nil}}={}`}function kLt(t,e){t.if(Nt.default.valCxt,()=>{t.var(Nt.default.instancePath,(0,ot._)`${Nt.default.valCxt}.${Nt.default.instancePath}`),t.var(Nt.default.parentData,(0,ot._)`${Nt.default.valCxt}.${Nt.default.parentData}`),t.var(Nt.default.parentDataProperty,(0,ot._)`${Nt.default.valCxt}.${Nt.default.parentDataProperty}`),t.var(Nt.default.rootData,(0,ot._)`${Nt.default.valCxt}.${Nt.default.rootData}`),e.dynamicRef&&t.var(Nt.default.dynamicAnchors,(0,ot._)`${Nt.default.valCxt}.${Nt.default.dynamicAnchors}`)},()=>{t.var(Nt.default.instancePath,(0,ot._)`""`),t.var(Nt.default.parentData,(0,ot._)`undefined`),t.var(Nt.default.parentDataProperty,(0,ot._)`undefined`),t.var(Nt.default.rootData,Nt.default.data),e.dynamicRef&&t.var(Nt.default.dynamicAnchors,(0,ot._)`{}`)})}function PLt(t){let{schema:e,opts:r,gen:n}=t;Cve(t,()=>{r.$comment&&e.$comment&&Ove(t),WLt(t),n.let(Nt.default.vErrors,null),n.let(Nt.default.errors,0),r.unevaluated&&DLt(t),Nve(t),FLt(t)})}function DLt(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,ot._)`${r}.evaluated`),e.if((0,ot._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,ot._)`${t.evaluated}.props`,(0,ot._)`undefined`)),e.if((0,ot._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,ot._)`${t.evaluated}.items`,(0,ot._)`undefined`))}function Eve(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,ot._)`/*# sourceURL=${r} */`:ot.nil}function BLt(t,e){if(wve(t)&&(Rve(t),Tve(t))){LLt(t,e);return}(0,Ive.boolOrEmptySchema)(t,e)}function Tve({schema:t,self:e}){if(typeof t=="boolean")return!t;for(let r in t)if(e.RULES.all[r])return!0;return!1}function wve(t){return typeof t.schema!="boolean"}function LLt(t,e){let{schema:r,gen:n,opts:s}=t;s.$comment&&r.$comment&&Ove(t),$Lt(t),ULt(t);let i=n.const("_errs",Nt.default.errors);Nve(t,i),n.var(e,(0,ot._)`${i} === ${Nt.default.errors}`)}function Rve(t){(0,Ud.checkUnknownRules)(t),MLt(t)}function Nve(t,e){if(t.opts.jtd)return vve(t,[],!1,e);let r=(0,_ve.getSchemaTypes)(t.schema),n=(0,_ve.coerceAndCheckDataType)(t,r);vve(t,r,!n,e)}function MLt(t){let{schema:e,errSchemaPath:r,opts:n,self:s}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,Ud.schemaHasRulesButRef)(e,s.RULES)&&s.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function WLt(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,Ud.checkStrictMode)(t,"default is ignored in the schema root")}function $Lt(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,RLt.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function ULt(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function Ove({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:s}){let i=r.$comment;if(s.$comment===!0)t.code((0,ot._)`${Nt.default.self}.logger.log(${i})`);else if(typeof s.$comment=="function"){let a=(0,ot.str)`${n}/$comment`,o=t.scopeValue("root",{ref:e.root});t.code((0,ot._)`${Nt.default.self}.opts.$comment(${i}, ${a}, ${o}.schema)`)}}function FLt(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:s,opts:i}=t;r.$async?e.if((0,ot._)`${Nt.default.errors} === 0`,()=>e.return(Nt.default.data),()=>e.throw((0,ot._)`new ${s}(${Nt.default.vErrors})`)):(e.assign((0,ot._)`${n}.errors`,Nt.default.vErrors),i.unevaluated&&qLt(t),e.return((0,ot._)`${Nt.default.errors} === 0`))}function qLt({gen:t,evaluated:e,props:r,items:n}){r instanceof ot.Name&&t.assign((0,ot._)`${e}.props`,r),n instanceof ot.Name&&t.assign((0,ot._)`${e}.items`,n)}function vve(t,e,r,n){let{gen:s,schema:i,data:a,allErrors:o,opts:c,self:u}=t,{RULES:l}=u;if(i.$ref&&(c.ignoreKeywordsWithRef||!(0,Ud.schemaHasRulesButRef)(i,l))){s.block(()=>Pve(t,"$ref",l.all.$ref.definition));return}c.jtd||jLt(t,e),s.block(()=>{for(let f of l.rules)d(f);d(l.post)});function d(f){(0,j7.shouldUseGroup)(i,f)&&(f.type?(s.if((0,Wk.checkDataType)(f.type,a,c.strictNumbers)),Sve(t,f),e.length===1&&e[0]===f.type&&r&&(s.else(),(0,Wk.reportTypeError)(t)),s.endIf()):Sve(t,f),o||s.if((0,ot._)`${Nt.default.errors} === ${n||0}`))}}function Sve(t,e){let{gen:r,schema:n,opts:{useDefaults:s}}=t;s&&(0,wLt.assignDefaults)(t,e.type),r.block(()=>{for(let i of e.rules)(0,j7.shouldUseRule)(n,i)&&Pve(t,i.keyword,i.definition,e.type)})}function jLt(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(QLt(t,e),t.opts.allowUnionTypes||HLt(t,e),GLt(t,t.dataTypes))}function QLt(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{kve(t.dataTypes,r)||Q7(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),KLt(t,e)}}function HLt(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&Q7(t,"use allowUnionTypes to allow union type keyword")}function GLt(t,e){let r=t.self.RULES.all;for(let n in r){let s=r[n];if(typeof s=="object"&&(0,j7.shouldUseRule)(t.schema,s)){let{type:i}=s.definition;i.length&&!i.some(a=>zLt(e,a))&&Q7(t,`missing type "${i.join(",")}" for keyword "${n}"`)}}}function zLt(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function kve(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function KLt(t,e){let r=[];for(let n of t.dataTypes)kve(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function Q7(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,Ud.checkStrictMode)(t,e,t.opts.strictTypes)}var $k=class{constructor(e,r,n){if((0,vv.validateKeywordUsage)(e,r,n),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=n,this.data=e.data,this.schema=e.schema[n],this.$data=r.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,Ud.schemaRefOrVal)(e,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=e.schema,this.params={},this.it=e,this.def=r,this.$data)this.schemaCode=e.gen.const("vSchema",Dve(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,vv.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=e.gen.const("_errs",Nt.default.errors))}result(e,r,n){this.failResult((0,ot.not)(e),r,n)}failResult(e,r,n){this.gen.if(e),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(e,r){this.failResult((0,ot.not)(e),void 0,r)}fail(e){if(e===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(e),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(e){if(!this.$data)return this.fail(e);let{schemaCode:r}=this;this.fail((0,ot._)`${r} !== undefined && (${(0,ot.or)(this.invalid$data(),e)})`)}error(e,r,n){if(r){this.setParams(r),this._error(e,n),this.setParams({});return}this._error(e,n)}_error(e,r){(e?Ev.reportExtraError:Ev.reportError)(this,this.def.error,r)}$dataError(){(0,Ev.reportError)(this,this.def.$dataError||Ev.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,Ev.resetErrorsCount)(this.gen,this.errsCount)}ok(e){this.allErrors||this.gen.if(e)}setParams(e,r){r?Object.assign(this.params,e):this.params=e}block$data(e,r,n=ot.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=ot.nil,r=ot.nil){if(!this.$data)return;let{gen:n,schemaCode:s,schemaType:i,def:a}=this;n.if((0,ot.or)((0,ot._)`${s} === undefined`,r)),e!==ot.nil&&n.assign(e,!0),(i.length||a.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==ot.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:s,it:i}=this;return(0,ot.or)(a(),o());function a(){if(n.length){if(!(r instanceof ot.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,ot._)`${(0,Wk.checkDataTypes)(c,r,i.opts.strictNumbers,Wk.DataType.Wrong)}`}return ot.nil}function o(){if(s.validateSchema){let c=e.scopeValue("validate$data",{ref:s.validateSchema});return(0,ot._)`!${c}(${r})`}return ot.nil}}subschema(e,r){let n=(0,q7.getSubschema)(this.it,e);(0,q7.extendSubschemaData)(n,this.it,e),(0,q7.extendSubschemaMode)(n,e);let s={...this.it,...n,items:void 0,props:void 0};return BLt(s,r),s}mergeEvaluated(e,r){let{it:n,gen:s}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=Ud.mergeEvaluated.props(s,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=Ud.mergeEvaluated.items(s,e.items,n.items,r)))}mergeValidEvaluated(e,r){let{it:n,gen:s}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return s.if(r,()=>this.mergeEvaluated(e,ot.Name)),!0}};Vp.KeywordCxt=$k;function Pve(t,e,r,n){let s=new $k(t,r,e);"code"in r?r.code(s,n):s.$data&&r.validate?(0,vv.funcKeywordCode)(s,r):"macro"in r?(0,vv.macroKeywordCode)(s,r):(r.compile||r.validate)&&(0,vv.funcKeywordCode)(s,r)}var VLt=/^\/(?:[^~]|~0|~1)*$/,YLt=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function Dve(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let s,i;if(t==="")return Nt.default.rootData;if(t[0]==="/"){if(!VLt.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);s=t,i=Nt.default.rootData}else{let u=YLt.exec(t);if(!u)throw new Error(`Invalid JSON-pointer: ${t}`);let l=+u[1];if(s=u[2],s==="#"){if(l>=e)throw new Error(c("property/index",l));return n[e-l]}if(l>e)throw new Error(c("data",l));if(i=r[e-l],!s)return i}let a=i,o=s.split("/");for(let u of o)u&&(i=(0,ot._)`${i}${(0,ot.getProperty)((0,Ud.unescapeJsonPointer)(u))}`,a=(0,ot._)`${a} && ${i}`);return a;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${e}`}}Vp.getData=Dve});var Sv=_(G7=>{"use strict";Object.defineProperty(G7,"__esModule",{value:!0});var H7=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};G7.default=H7});var Fd=_(V7=>{"use strict";Object.defineProperty(V7,"__esModule",{value:!0});var z7=_v(),K7=class extends Error{constructor(e,r,n,s){super(s||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,z7.resolveUrl)(e,r,n),this.missingSchema=(0,z7.normalizeId)((0,z7.getFullPath)(e,this.missingRef))}};V7.default=K7});var mh=_(fc=>{"use strict";Object.defineProperty(fc,"__esModule",{value:!0});fc.resolveSchema=fc.getCompilingSchema=fc.resolveRef=fc.compileSchema=fc.SchemaEnv=void 0;var su=Et(),JLt=Sv(),ph=dc(),iu=_v(),Bve=Yt(),XLt=XA(),ZA=class{constructor(e){var r;this.refs={},this.dynamicAnchors={};let n;typeof e.schema=="object"&&(n=e.schema),this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=(r=e.baseId)!==null&&r!==void 0?r:(0,iu.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};fc.SchemaEnv=ZA;function J7(t){let e=Lve.call(this,t);if(e)return e;let r=(0,iu.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:s}=this.opts.code,{ownProperties:i}=this.opts,a=new su.CodeGen(this.scope,{es5:n,lines:s,ownProperties:i}),o;t.$async&&(o=a.scopeValue("Error",{ref:JLt.default,code:(0,su._)`require("ajv/dist/runtime/validation_error").default`}));let c=a.scopeName("validate");t.validateName=c;let u={gen:a,allErrors:this.opts.allErrors,data:ph.default.data,parentData:ph.default.parentData,parentDataProperty:ph.default.parentDataProperty,dataNames:[ph.default.data],dataPathArr:[su.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:a.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,su.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:o,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:su.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,su._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,XLt.validateFunctionCode)(u),a.optimize(this.opts.code.optimize);let d=a.toString();l=`${a.scopeRefs(ph.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,t));let p=new Function(`${ph.default.self}`,`${ph.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:p}),p.errors=null,p.schema=t.schema,p.schemaEnv=t,t.$async&&(p.$async=!0),this.opts.code.source===!0&&(p.source={validateName:c,validateCode:d,scopeValues:a._values}),this.opts.unevaluated){let{props:m,items:h}=u;p.evaluated={props:m instanceof su.Name?void 0:m,items:h instanceof su.Name?void 0:h,dynamicProps:m instanceof su.Name,dynamicItems:h instanceof su.Name},p.source&&(p.source.evaluated=(0,su.stringify)(p.evaluated))}return t.validate=p,t}catch(d){throw delete t.validate,delete t.validateName,l&&this.logger.error("Error compiling schema, function code:",l),d}finally{this._compilations.delete(t)}}fc.compileSchema=J7;function ZLt(t,e,r){var n;r=(0,iu.resolveUrl)(this.opts.uriResolver,e,r);let s=t.refs[r];if(s)return s;let i=r5t.call(this,t,r);if(i===void 0){let a=(n=t.localRefs)===null||n===void 0?void 0:n[r],{schemaId:o}=this.opts;a&&(i=new ZA({schema:a,schemaId:o,root:t,baseId:e}))}if(i!==void 0)return t.refs[r]=e5t.call(this,i)}fc.resolveRef=ZLt;function e5t(t){return(0,iu.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:J7.call(this,t)}function Lve(t){for(let e of this._compilations)if(t5t(e,t))return e}fc.getCompilingSchema=Lve;function t5t(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function r5t(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||Uk.call(this,t,e)}function Uk(t,e){let r=this.opts.uriResolver.parse(e),n=(0,iu._getFullPath)(this.opts.uriResolver,r),s=(0,iu.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===s)return Y7.call(this,r,t);let i=(0,iu.normalizeId)(n),a=this.refs[i]||this.schemas[i];if(typeof a=="string"){let o=Uk.call(this,t,a);return typeof o?.schema!="object"?void 0:Y7.call(this,r,o)}if(typeof a?.schema=="object"){if(a.validate||J7.call(this,a),i===(0,iu.normalizeId)(e)){let{schema:o}=a,{schemaId:c}=this.opts,u=o[c];return u&&(s=(0,iu.resolveUrl)(this.opts.uriResolver,s,u)),new ZA({schema:o,schemaId:c,root:t,baseId:s})}return Y7.call(this,r,a)}}fc.resolveSchema=Uk;var n5t=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function Y7(t,{baseId:e,schema:r,root:n}){var s;if(((s=t.fragment)===null||s===void 0?void 0:s[0])!=="/")return;for(let o of t.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let c=r[(0,Bve.unescapeFragment)(o)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!n5t.has(o)&&u&&(e=(0,iu.resolveUrl)(this.opts.uriResolver,e,u))}let i;if(typeof r!="boolean"&&r.$ref&&!(0,Bve.schemaHasRulesButRef)(r,this.RULES)){let o=(0,iu.resolveUrl)(this.opts.uriResolver,e,r.$ref);i=Uk.call(this,n,o)}let{schemaId:a}=this.opts;if(i=i||new ZA({schema:r,schemaId:a,root:n,baseId:e}),i.schema!==i.root.schema)return i}});var Mve=_((MUr,s5t)=>{s5t.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 Z7=_((WUr,Fve)=>{"use strict";var i5t=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),$ve=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 X7(t){let e="",r=0,n=0;for(n=0;n=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";e+=t[n];break}for(n+=1;n=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";e+=t[n]}return e}var a5t=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function Wve(t){return t.length=0,!0}function o5t(t,e,r){if(t.length){let n=X7(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function c5t(t){let e=0,r={error:!1,address:"",zone:""},n=[],s=[],i=!1,a=!1,o=o5t;for(let c=0;c7){r.error=!0;break}c>0&&t[c-1]===":"&&(i=!0),n.push(":");continue}else if(u==="%"){if(!o(s,n,r))break;o=Wve}else{s.push(u);continue}}return s.length&&(o===Wve?r.zone=s.join(""):a?n.push(s.join("")):n.push(X7(s))),r.address=n.join(""),r}function Uve(t){if(u5t(t,":")<2)return{host:t,isIPV6:!1};let e=c5t(t);if(e.error)return{host:t,isIPV6:!1};{let r=e.address,n=e.address;return e.zone&&(r+="%"+e.zone,n+="%25"+e.zone),{host:r,isIPV6:!0,escapedHost:n}}}function u5t(t,e){let r=0;for(let n=0;n{"use strict";var{isUUID:p5t}=Z7(),m5t=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,h5t=["http","https","ws","wss","urn","urn:uuid"];function g5t(t){return h5t.indexOf(t)!==-1}function e9(t){return t.secure===!0?!0:t.secure===!1?!1:t.scheme?t.scheme.length===3&&(t.scheme[0]==="w"||t.scheme[0]==="W")&&(t.scheme[1]==="s"||t.scheme[1]==="S")&&(t.scheme[2]==="s"||t.scheme[2]==="S"):!1}function qve(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function jve(t){let e=String(t.scheme).toLowerCase()==="https";return(t.port===(e?443:80)||t.port==="")&&(t.port=void 0),t.path||(t.path="/"),t}function y5t(t){return t.secure=e9(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function A5t(t){if((t.port===(e9(t)?443:80)||t.port==="")&&(t.port=void 0),typeof t.secure=="boolean"&&(t.scheme=t.secure?"wss":"ws",t.secure=void 0),t.resourceName){let[e,r]=t.resourceName.split("?");t.path=e&&e!=="/"?e:void 0,t.query=r,t.resourceName=void 0}return t.fragment=void 0,t}function x5t(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(m5t);if(r){let n=e.scheme||t.scheme||"urn";t.nid=r[1].toLowerCase(),t.nss=r[2];let s=`${n}:${e.nid||t.nid}`,i=t9(s);t.path=void 0,i&&(t=i.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function b5t(t,e){if(t.nid===void 0)throw new Error("URN without nid cannot be serialized");let r=e.scheme||t.scheme||"urn",n=t.nid.toLowerCase(),s=`${r}:${e.nid||n}`,i=t9(s);i&&(t=i.serialize(t,e));let a=t,o=t.nss;return a.path=`${n||e.nid}:${o}`,e.skipEscape=!0,a}function _5t(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!p5t(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function E5t(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var Qve={scheme:"http",domainHost:!0,parse:qve,serialize:jve},v5t={scheme:"https",domainHost:Qve.domainHost,parse:qve,serialize:jve},Fk={scheme:"ws",domainHost:!0,parse:y5t,serialize:A5t},S5t={scheme:"wss",domainHost:Fk.domainHost,parse:Fk.parse,serialize:Fk.serialize},I5t={scheme:"urn",parse:x5t,serialize:b5t,skipNormalize:!0},C5t={scheme:"urn:uuid",parse:_5t,serialize:E5t,skipNormalize:!0},qk={http:Qve,https:v5t,ws:Fk,wss:S5t,urn:I5t,"urn:uuid":C5t};Object.setPrototypeOf(qk,null);function t9(t){return t&&(qk[t]||qk[t.toLowerCase()])||void 0}Hve.exports={wsIsSecure:e9,SCHEMES:qk,isValidSchemeName:g5t,getSchemeHandler:t9}});var Vve=_((UUr,Qk)=>{"use strict";var{normalizeIPv6:T5t,removeDotSegments:Iv,recomposeAuthority:w5t,normalizeComponentEncoding:jk,isIPv4:R5t,nonSimpleDomain:N5t}=Z7(),{SCHEMES:O5t,getSchemeHandler:zve}=Gve();function k5t(t,e){return typeof t=="string"?t=ll(qd(t,e),e):typeof t=="object"&&(t=qd(ll(t,e),e)),t}function P5t(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},s=Kve(qd(t,n),qd(e,n),n,!0);return n.skipEscape=!0,ll(s,n)}function Kve(t,e,r,n){let s={};return n||(t=qd(ll(t,r),r),e=qd(ll(e,r),r)),r=r||{},!r.tolerant&&e.scheme?(s.scheme=e.scheme,s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=Iv(e.path||""),s.query=e.query):(e.userinfo!==void 0||e.host!==void 0||e.port!==void 0?(s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=Iv(e.path||""),s.query=e.query):(e.path?(e.path[0]==="/"?s.path=Iv(e.path):((t.userinfo!==void 0||t.host!==void 0||t.port!==void 0)&&!t.path?s.path="/"+e.path:t.path?s.path=t.path.slice(0,t.path.lastIndexOf("/")+1)+e.path:s.path=e.path,s.path=Iv(s.path)),s.query=e.query):(s.path=t.path,e.query!==void 0?s.query=e.query:s.query=t.query),s.userinfo=t.userinfo,s.host=t.host,s.port=t.port),s.scheme=t.scheme),s.fragment=e.fragment,s}function D5t(t,e,r){return typeof t=="string"?(t=unescape(t),t=ll(jk(qd(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=ll(jk(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=ll(jk(qd(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=ll(jk(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function ll(t,e){let r={host:t.host,scheme:t.scheme,userinfo:t.userinfo,port:t.port,path:t.path,query:t.query,nid:t.nid,nss:t.nss,uuid:t.uuid,fragment:t.fragment,reference:t.reference,resourceName:t.resourceName,secure:t.secure,error:""},n=Object.assign({},e),s=[],i=zve(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=w5t(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=Iv(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 B5t=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function qd(t,e){let r=Object.assign({},e),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?t=r.scheme+":"+t:t="//"+t);let i=t.match(B5t);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(R5t(n.host)===!1){let c=T5t(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=zve(r.scheme||n.scheme);if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&s===!1&&N5t(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)&&(t.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 r9={SCHEMES:O5t,normalize:k5t,resolve:P5t,resolveComponent:Kve,equal:D5t,serialize:ll,parse:qd};Qk.exports=r9;Qk.exports.default=r9;Qk.exports.fastUri=r9});var Jve=_(n9=>{"use strict";Object.defineProperty(n9,"__esModule",{value:!0});var Yve=Vve();Yve.code='require("ajv/dist/runtime/uri").default';n9.default=Yve});var a9=_(xi=>{"use strict";Object.defineProperty(xi,"__esModule",{value:!0});xi.CodeGen=xi.Name=xi.nil=xi.stringify=xi.str=xi._=xi.KeywordCxt=void 0;var L5t=XA();Object.defineProperty(xi,"KeywordCxt",{enumerable:!0,get:function(){return L5t.KeywordCxt}});var ex=Et();Object.defineProperty(xi,"_",{enumerable:!0,get:function(){return ex._}});Object.defineProperty(xi,"str",{enumerable:!0,get:function(){return ex.str}});Object.defineProperty(xi,"stringify",{enumerable:!0,get:function(){return ex.stringify}});Object.defineProperty(xi,"nil",{enumerable:!0,get:function(){return ex.nil}});Object.defineProperty(xi,"Name",{enumerable:!0,get:function(){return ex.Name}});Object.defineProperty(xi,"CodeGen",{enumerable:!0,get:function(){return ex.CodeGen}});var M5t=Sv(),rSe=Fd(),W5t=P7(),Cv=mh(),$5t=Et(),Tv=_v(),Hk=bv(),i9=Yt(),Xve=Mve(),U5t=Jve(),nSe=(t,e)=>new RegExp(t,e);nSe.code="new RegExp";var F5t=["removeAdditional","useDefaults","coerceTypes"],q5t=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),j5t={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."},Q5t={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},Zve=200;function H5t(t){var e,r,n,s,i,a,o,c,u,l,d,f,p,m,h,y,g,b,x,A,S,I,R,w,N;let k=t.strict,B=(e=t.code)===null||e===void 0?void 0:e.optimize,M=B===!0||B===void 0?1:B||0,D=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:nSe,L=(s=t.uriResolver)!==null&&s!==void 0?s:U5t.default;return{strictSchema:(a=(i=t.strictSchema)!==null&&i!==void 0?i:k)!==null&&a!==void 0?a:!0,strictNumbers:(c=(o=t.strictNumbers)!==null&&o!==void 0?o:k)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:k)!==null&&l!==void 0?l:"log",strictTuples:(f=(d=t.strictTuples)!==null&&d!==void 0?d:k)!==null&&f!==void 0?f:"log",strictRequired:(m=(p=t.strictRequired)!==null&&p!==void 0?p:k)!==null&&m!==void 0?m:!1,code:t.code?{...t.code,optimize:M,regExp:D}:{optimize:M,regExp:D},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:Zve,loopEnum:(y=t.loopEnum)!==null&&y!==void 0?y:Zve,meta:(g=t.meta)!==null&&g!==void 0?g:!0,messages:(b=t.messages)!==null&&b!==void 0?b:!0,inlineRefs:(x=t.inlineRefs)!==null&&x!==void 0?x:!0,schemaId:(A=t.schemaId)!==null&&A!==void 0?A:"$id",addUsedSchema:(S=t.addUsedSchema)!==null&&S!==void 0?S:!0,validateSchema:(I=t.validateSchema)!==null&&I!==void 0?I:!0,validateFormats:(R=t.validateFormats)!==null&&R!==void 0?R:!0,unicodeRegExp:(w=t.unicodeRegExp)!==null&&w!==void 0?w:!0,int32range:(N=t.int32range)!==null&&N!==void 0?N:!0,uriResolver:L}}var wv=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...H5t(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new $5t.ValueScope({scope:{},prefixes:q5t,es5:r,lines:n}),this.logger=J5t(e.logger);let s=e.validateFormats;e.validateFormats=!1,this.RULES=(0,W5t.getRules)(),eSe.call(this,j5t,e,"NOT SUPPORTED"),eSe.call(this,Q5t,e,"DEPRECATED","warn"),this._metaOpts=V5t.call(this),e.formats&&z5t.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&K5t.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),G5t.call(this),e.validateFormats=s}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,s=Xve;n==="id"&&(s={...Xve},s.id=s.$id,delete s.$id),r&&e&&this.addMetaSchema(s,s[n],!1)}defaultMeta(){let{meta:e,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof e=="object"?e[r]||e:void 0}validate(e,r){let n;if(typeof e=="string"){if(n=this.getSchema(e),!n)throw new Error(`no schema with key or ref "${e}"`)}else n=this.compile(e);let s=n(r);return"$async"in n||(this.errors=n.errors),s}compile(e,r){let n=this._addSchema(e,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(e,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,e,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 rSe.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(e,r,n,s=this.opts.validateSchema){if(Array.isArray(e)){for(let a of e)this.addSchema(a,void 0,n,s);return this}let i;if(typeof e=="object"){let{schemaId:a}=this.opts;if(i=e[a],i!==void 0&&typeof i!="string")throw new Error(`schema ${a} must be string`)}return r=(0,Tv.normalizeId)(r||i),this._checkUnique(r),this.schemas[r]=this._addSchema(e,n,r,s,!0),this}addMetaSchema(e,r,n=this.opts.validateSchema){return this.addSchema(e,r,!0,n),this}validateSchema(e,r){if(typeof e=="boolean")return!0;let n;if(n=e.$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,e);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(e){let r;for(;typeof(r=tSe.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,s=new Cv.SchemaEnv({schema:{},schemaId:n});if(r=Cv.resolveSchema.call(this,s,e),!r)return;this.refs[e]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(e){if(e instanceof RegExp)return this._removeAllSchemas(this.schemas,e),this._removeAllSchemas(this.refs,e),this;switch(typeof e){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=tSe.call(this,e);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[e],delete this.refs[e],this}case"object":{let r=e;this._cache.delete(r);let n=e[this.opts.schemaId];return n&&(n=(0,Tv.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(e){for(let r of e)this.addKeyword(r);return this}addKeyword(e,r){let n;if(typeof e=="string")n=e,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof e=="object"&&r===void 0){if(r=e,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(Z5t.call(this,n,r),!r)return(0,i9.eachItem)(n,i=>s9.call(this,i)),this;t6t.call(this,r);let s={...r,type:(0,Hk.getJSONTypes)(r.type),schemaType:(0,Hk.getJSONTypes)(r.schemaType)};return(0,i9.eachItem)(n,s.type.length===0?i=>s9.call(this,i,s):i=>s.type.forEach(a=>s9.call(this,i,s,a))),this}getKeyword(e){let r=this.RULES.all[e];return typeof r=="object"?r.definition:!!r}removeKeyword(e){let{RULES:r}=this;delete r.keywords[e],delete r.all[e];for(let n of r.rules){let s=n.rules.findIndex(i=>i.keyword===e);s>=0&&n.rules.splice(s,1)}return this}addFormat(e,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[e]=r,this}errorsText(e=this.errors,{separator:r=", ",dataVar:n="data"}={}){return!e||e.length===0?"No errors":e.map(s=>`${n}${s.instancePath} ${s.message}`).reduce((s,i)=>s+r+i)}$dataMetaSchema(e,r){let n=this.RULES.all;e=JSON.parse(JSON.stringify(e));for(let s of r){let i=s.split("/").slice(1),a=e;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]=sSe(l))}}return e}_removeAllSchemas(e,r){for(let n in e){let s=e[n];(!r||r.test(n))&&(typeof s=="string"?delete e[n]:s&&!s.meta&&(this._cache.delete(s.schema),delete e[n]))}}_addSchema(e,r,n,s=this.opts.validateSchema,i=this.opts.addUsedSchema){let a,{schemaId:o}=this.opts;if(typeof e=="object")a=e[o];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof e!="boolean")throw new Error("schema must be object or boolean")}let c=this._cache.get(e);if(c!==void 0)return c;n=(0,Tv.normalizeId)(a||n);let u=Tv.getSchemaRefs.call(this,e,n);return c=new Cv.SchemaEnv({schema:e,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(e,!0),c}_checkUnique(e){if(this.schemas[e]||this.refs[e])throw new Error(`schema with key or id "${e}" already exists`)}_compileSchemaEnv(e){if(e.meta?this._compileMetaSchema(e):Cv.compileSchema.call(this,e),!e.validate)throw new Error("ajv implementation error");return e.validate}_compileMetaSchema(e){let r=this.opts;this.opts=this._metaOpts;try{Cv.compileSchema.call(this,e)}finally{this.opts=r}}};wv.ValidationError=M5t.default;wv.MissingRefError=rSe.default;xi.default=wv;function eSe(t,e,r,n="error"){for(let s in t){let i=s;i in e&&this.logger[n](`${r}: option ${s}. ${t[i]}`)}}function tSe(t){return t=(0,Tv.normalizeId)(t),this.schemas[t]||this.refs[t]}function G5t(){let t=this.opts.schemas;if(t)if(Array.isArray(t))this.addSchema(t);else for(let e in t)this.addSchema(t[e],e)}function z5t(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function K5t(t){if(Array.isArray(t)){this.addVocabulary(t);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let e in t){let r=t[e];r.keyword||(r.keyword=e),this.addKeyword(r)}}function V5t(){let t={...this.opts};for(let e of F5t)delete t[e];return t}var Y5t={log(){},warn(){},error(){}};function J5t(t){if(t===!1)return Y5t;if(t===void 0)return console;if(t.log&&t.warn&&t.error)return t;throw new Error("logger must implement log, warn and error methods")}var X5t=/^[a-z_$][a-z0-9_$:-]*$/i;function Z5t(t,e){let{RULES:r}=this;if((0,i9.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!X5t.test(n))throw new Error(`Keyword ${n} has invalid name`)}),!!e&&e.$data&&!("code"in e||"validate"in e))throw new Error('$data keyword must have "code" or "validate" function')}function s9(t,e,r){var n;let s=e?.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[t]=!0,!e)return;let o={keyword:t,definition:{...e,type:(0,Hk.getJSONTypes)(e.type),schemaType:(0,Hk.getJSONTypes)(e.schemaType)}};e.before?e6t.call(this,a,o,e.before):a.rules.push(o),i.all[t]=o,(n=e.implements)===null||n===void 0||n.forEach(c=>this.addKeyword(c))}function e6t(t,e,r){let n=t.rules.findIndex(s=>s.keyword===r);n>=0?t.rules.splice(n,0,e):(t.rules.push(e),this.logger.warn(`rule ${r} is not defined`))}function t6t(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=sSe(e)),t.validateSchema=this.compile(e,!0))}var r6t={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function sSe(t){return{anyOf:[t,r6t]}}});var iSe=_(o9=>{"use strict";Object.defineProperty(o9,"__esModule",{value:!0});var n6t={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};o9.default=n6t});var c9=_(hh=>{"use strict";Object.defineProperty(hh,"__esModule",{value:!0});hh.callRef=hh.getValidate=void 0;var s6t=Fd(),aSe=Ai(),Ka=Et(),tx=dc(),oSe=mh(),Gk=Yt(),i6t={keyword:"$ref",schemaType:"string",code(t){let{gen:e,schema:r,it:n}=t,{baseId:s,schemaEnv:i,validateName:a,opts:o,self:c}=n,{root:u}=i;if((r==="#"||r==="#/")&&s===u.baseId)return d();let l=oSe.resolveRef.call(c,u,s,r);if(l===void 0)throw new s6t.default(n.opts.uriResolver,s,r);if(l instanceof oSe.SchemaEnv)return f(l);return p(l);function d(){if(i===u)return zk(t,a,i,i.$async);let m=e.scopeValue("root",{ref:u});return zk(t,(0,Ka._)`${m}.validate`,u,u.$async)}function f(m){let h=cSe(t,m);zk(t,h,m,m.$async)}function p(m){let h=e.scopeValue("schema",o.code.source===!0?{ref:m,code:(0,Ka.stringify)(m)}:{ref:m}),y=e.name("valid"),g=t.subschema({schema:m,dataTypes:[],schemaPath:Ka.nil,topSchemaRef:h,errSchemaPath:r},y);t.mergeEvaluated(g),t.ok(y)}}};function cSe(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,Ka._)`${r.scopeValue("wrapper",{ref:e})}.validate`}hh.getValidate=cSe;function zk(t,e,r,n){let{gen:s,it:i}=t,{allErrors:a,schemaEnv:o,opts:c}=i,u=c.passContext?tx.default.this:Ka.nil;n?l():d();function l(){if(!o.$async)throw new Error("async schema referenced by sync schema");let m=s.let("valid");s.try(()=>{s.code((0,Ka._)`await ${(0,aSe.callValidateCode)(t,e,u)}`),p(e),a||s.assign(m,!0)},h=>{s.if((0,Ka._)`!(${h} instanceof ${i.ValidationError})`,()=>s.throw(h)),f(h),a||s.assign(m,!1)}),t.ok(m)}function d(){t.result((0,aSe.callValidateCode)(t,e,u),()=>p(e),()=>f(e))}function f(m){let h=(0,Ka._)`${m}.errors`;s.assign(tx.default.vErrors,(0,Ka._)`${tx.default.vErrors} === null ? ${h} : ${tx.default.vErrors}.concat(${h})`),s.assign(tx.default.errors,(0,Ka._)`${tx.default.vErrors}.length`)}function p(m){var h;if(!i.opts.unevaluated)return;let y=(h=r?.validate)===null||h===void 0?void 0:h.evaluated;if(i.props!==!0)if(y&&!y.dynamicProps)y.props!==void 0&&(i.props=Gk.mergeEvaluated.props(s,y.props,i.props));else{let g=s.var("props",(0,Ka._)`${m}.evaluated.props`);i.props=Gk.mergeEvaluated.props(s,g,i.props,Ka.Name)}if(i.items!==!0)if(y&&!y.dynamicItems)y.items!==void 0&&(i.items=Gk.mergeEvaluated.items(s,y.items,i.items));else{let g=s.var("items",(0,Ka._)`${m}.evaluated.items`);i.items=Gk.mergeEvaluated.items(s,g,i.items,Ka.Name)}}}hh.callRef=zk;hh.default=i6t});var uSe=_(u9=>{"use strict";Object.defineProperty(u9,"__esModule",{value:!0});var a6t=iSe(),o6t=c9(),c6t=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",a6t.default,o6t.default];u9.default=c6t});var lSe=_(l9=>{"use strict";Object.defineProperty(l9,"__esModule",{value:!0});var Kk=Et(),Yp=Kk.operators,Vk={maximum:{okStr:"<=",ok:Yp.LTE,fail:Yp.GT},minimum:{okStr:">=",ok:Yp.GTE,fail:Yp.LT},exclusiveMaximum:{okStr:"<",ok:Yp.LT,fail:Yp.GTE},exclusiveMinimum:{okStr:">",ok:Yp.GT,fail:Yp.LTE}},u6t={message:({keyword:t,schemaCode:e})=>(0,Kk.str)`must be ${Vk[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,Kk._)`{comparison: ${Vk[t].okStr}, limit: ${e}}`},l6t={keyword:Object.keys(Vk),type:"number",schemaType:"number",$data:!0,error:u6t,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,Kk._)`${r} ${Vk[e].fail} ${n} || isNaN(${r})`)}};l9.default=l6t});var dSe=_(d9=>{"use strict";Object.defineProperty(d9,"__esModule",{value:!0});var Rv=Et(),d6t={message:({schemaCode:t})=>(0,Rv.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,Rv._)`{multipleOf: ${t}}`},f6t={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:d6t,code(t){let{gen:e,data:r,schemaCode:n,it:s}=t,i=s.opts.multipleOfPrecision,a=e.let("res"),o=i?(0,Rv._)`Math.abs(Math.round(${a}) - ${a}) > 1e-${i}`:(0,Rv._)`${a} !== parseInt(${a})`;t.fail$data((0,Rv._)`(${n} === 0 || (${a} = ${r}/${n}, ${o}))`)}};d9.default=f6t});var pSe=_(f9=>{"use strict";Object.defineProperty(f9,"__esModule",{value:!0});function fSe(t){let e=t.length,r=0,n=0,s;for(;n=55296&&s<=56319&&n{"use strict";Object.defineProperty(p9,"__esModule",{value:!0});var gh=Et(),p6t=Yt(),m6t=pSe(),h6t={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,gh.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,gh._)`{limit: ${t}}`},g6t={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:h6t,code(t){let{keyword:e,data:r,schemaCode:n,it:s}=t,i=e==="maxLength"?gh.operators.GT:gh.operators.LT,a=s.opts.unicode===!1?(0,gh._)`${r}.length`:(0,gh._)`${(0,p6t.useFunc)(t.gen,m6t.default)}(${r})`;t.fail$data((0,gh._)`${a} ${i} ${n}`)}};p9.default=g6t});var hSe=_(m9=>{"use strict";Object.defineProperty(m9,"__esModule",{value:!0});var y6t=Ai(),Yk=Et(),A6t={message:({schemaCode:t})=>(0,Yk.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,Yk._)`{pattern: ${t}}`},x6t={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:A6t,code(t){let{data:e,$data:r,schema:n,schemaCode:s,it:i}=t,a=i.opts.unicodeRegExp?"u":"",o=r?(0,Yk._)`(new RegExp(${s}, ${a}))`:(0,y6t.usePattern)(t,n);t.fail$data((0,Yk._)`!${o}.test(${e})`)}};m9.default=x6t});var gSe=_(h9=>{"use strict";Object.defineProperty(h9,"__esModule",{value:!0});var Nv=Et(),b6t={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,Nv.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,Nv._)`{limit: ${t}}`},_6t={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:b6t,code(t){let{keyword:e,data:r,schemaCode:n}=t,s=e==="maxProperties"?Nv.operators.GT:Nv.operators.LT;t.fail$data((0,Nv._)`Object.keys(${r}).length ${s} ${n}`)}};h9.default=_6t});var ySe=_(g9=>{"use strict";Object.defineProperty(g9,"__esModule",{value:!0});var Ov=Ai(),kv=Et(),E6t=Yt(),v6t={message:({params:{missingProperty:t}})=>(0,kv.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,kv._)`{missingProperty: ${t}}`},S6t={keyword:"required",type:"object",schemaType:"array",$data:!0,error:v6t,code(t){let{gen:e,schema:r,schemaCode:n,data:s,$data:i,it:a}=t,{opts:o}=a;if(!i&&r.length===0)return;let c=r.length>=o.loopRequired;if(a.allErrors?u():l(),o.strictRequired){let p=t.parentSchema.properties,{definedProperties:m}=t.it;for(let h of r)if(p?.[h]===void 0&&!m.has(h)){let y=a.schemaEnv.baseId+a.errSchemaPath,g=`required property "${h}" is not defined at "${y}" (strictRequired)`;(0,E6t.checkStrictMode)(a,g,a.opts.strictRequired)}}function u(){if(c||i)t.block$data(kv.nil,d);else for(let p of r)(0,Ov.checkReportMissingProp)(t,p)}function l(){let p=e.let("missing");if(c||i){let m=e.let("valid",!0);t.block$data(m,()=>f(p,m)),t.ok(m)}else e.if((0,Ov.checkMissingProp)(t,r,p)),(0,Ov.reportMissingProp)(t,p),e.else()}function d(){e.forOf("prop",n,p=>{t.setParams({missingProperty:p}),e.if((0,Ov.noPropertyInData)(e,s,p,o.ownProperties),()=>t.error())})}function f(p,m){t.setParams({missingProperty:p}),e.forOf(p,n,()=>{e.assign(m,(0,Ov.propertyInData)(e,s,p,o.ownProperties)),e.if((0,kv.not)(m),()=>{t.error(),e.break()})},kv.nil)}}};g9.default=S6t});var ASe=_(y9=>{"use strict";Object.defineProperty(y9,"__esModule",{value:!0});var Pv=Et(),I6t={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,Pv.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,Pv._)`{limit: ${t}}`},C6t={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:I6t,code(t){let{keyword:e,data:r,schemaCode:n}=t,s=e==="maxItems"?Pv.operators.GT:Pv.operators.LT;t.fail$data((0,Pv._)`${r}.length ${s} ${n}`)}};y9.default=C6t});var Jk=_(A9=>{"use strict";Object.defineProperty(A9,"__esModule",{value:!0});var xSe=sc();xSe.code='require("ajv/dist/runtime/equal").default';A9.default=xSe});var bSe=_(b9=>{"use strict";Object.defineProperty(b9,"__esModule",{value:!0});var x9=bv(),bi=Et(),T6t=Yt(),w6t=Jk(),R6t={message:({params:{i:t,j:e}})=>(0,bi.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,bi._)`{i: ${t}, j: ${e}}`},N6t={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:R6t,code(t){let{gen:e,data:r,$data:n,schema:s,parentSchema:i,schemaCode:a,it:o}=t;if(!n&&!s)return;let c=e.let("valid"),u=i.items?(0,x9.getSchemaTypes)(i.items):[];t.block$data(c,l,(0,bi._)`${a} === false`),t.ok(c);function l(){let m=e.let("i",(0,bi._)`${r}.length`),h=e.let("j");t.setParams({i:m,j:h}),e.assign(c,!0),e.if((0,bi._)`${m} > 1`,()=>(d()?f:p)(m,h))}function d(){return u.length>0&&!u.some(m=>m==="object"||m==="array")}function f(m,h){let y=e.name("item"),g=(0,x9.checkDataTypes)(u,y,o.opts.strictNumbers,x9.DataType.Wrong),b=e.const("indices",(0,bi._)`{}`);e.for((0,bi._)`;${m}--;`,()=>{e.let(y,(0,bi._)`${r}[${m}]`),e.if(g,(0,bi._)`continue`),u.length>1&&e.if((0,bi._)`typeof ${y} == "string"`,(0,bi._)`${y} += "_"`),e.if((0,bi._)`typeof ${b}[${y}] == "number"`,()=>{e.assign(h,(0,bi._)`${b}[${y}]`),t.error(),e.assign(c,!1).break()}).code((0,bi._)`${b}[${y}] = ${m}`)})}function p(m,h){let y=(0,T6t.useFunc)(e,w6t.default),g=e.name("outer");e.label(g).for((0,bi._)`;${m}--;`,()=>e.for((0,bi._)`${h} = ${m}; ${h}--;`,()=>e.if((0,bi._)`${y}(${r}[${m}], ${r}[${h}])`,()=>{t.error(),e.assign(c,!1).break(g)})))}}};b9.default=N6t});var _Se=_(E9=>{"use strict";Object.defineProperty(E9,"__esModule",{value:!0});var _9=Et(),O6t=Yt(),k6t=Jk(),P6t={message:"must be equal to constant",params:({schemaCode:t})=>(0,_9._)`{allowedValue: ${t}}`},D6t={keyword:"const",$data:!0,error:P6t,code(t){let{gen:e,data:r,$data:n,schemaCode:s,schema:i}=t;n||i&&typeof i=="object"?t.fail$data((0,_9._)`!${(0,O6t.useFunc)(e,k6t.default)}(${r}, ${s})`):t.fail((0,_9._)`${i} !== ${r}`)}};E9.default=D6t});var ESe=_(v9=>{"use strict";Object.defineProperty(v9,"__esModule",{value:!0});var Dv=Et(),B6t=Yt(),L6t=Jk(),M6t={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,Dv._)`{allowedValues: ${t}}`},W6t={keyword:"enum",schemaType:"array",$data:!0,error:M6t,code(t){let{gen:e,data:r,$data:n,schema:s,schemaCode:i,it:a}=t;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,B6t.useFunc)(e,L6t.default)),l;if(o||n)l=e.let("valid"),t.block$data(l,d);else{if(!Array.isArray(s))throw new Error("ajv implementation error");let p=e.const("vSchema",i);l=(0,Dv.or)(...s.map((m,h)=>f(p,h)))}t.pass(l);function d(){e.assign(l,!1),e.forOf("v",i,p=>e.if((0,Dv._)`${u()}(${r}, ${p})`,()=>e.assign(l,!0).break()))}function f(p,m){let h=s[m];return typeof h=="object"&&h!==null?(0,Dv._)`${u()}(${r}, ${p}[${m}])`:(0,Dv._)`${r} === ${h}`}}};v9.default=W6t});var vSe=_(S9=>{"use strict";Object.defineProperty(S9,"__esModule",{value:!0});var $6t=lSe(),U6t=dSe(),F6t=mSe(),q6t=hSe(),j6t=gSe(),Q6t=ySe(),H6t=ASe(),G6t=bSe(),z6t=_Se(),K6t=ESe(),V6t=[$6t.default,U6t.default,F6t.default,q6t.default,j6t.default,Q6t.default,H6t.default,G6t.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},z6t.default,K6t.default];S9.default=V6t});var C9=_(Bv=>{"use strict";Object.defineProperty(Bv,"__esModule",{value:!0});Bv.validateAdditionalItems=void 0;var yh=Et(),I9=Yt(),Y6t={message:({params:{len:t}})=>(0,yh.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,yh._)`{limit: ${t}}`},J6t={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:Y6t,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,I9.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}SSe(t,n)}};function SSe(t,e){let{gen:r,schema:n,data:s,keyword:i,it:a}=t;a.items=!0;let o=r.const("len",(0,yh._)`${s}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,yh._)`${o} <= ${e.length}`);else if(typeof n=="object"&&!(0,I9.alwaysValidSchema)(a,n)){let u=r.var("valid",(0,yh._)`${o} <= ${e.length}`);r.if((0,yh.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,o,l=>{t.subschema({keyword:i,dataProp:l,dataPropType:I9.Type.Num},u),a.allErrors||r.if((0,yh.not)(u),()=>r.break())})}}Bv.validateAdditionalItems=SSe;Bv.default=J6t});var T9=_(Lv=>{"use strict";Object.defineProperty(Lv,"__esModule",{value:!0});Lv.validateTuple=void 0;var ISe=Et(),Xk=Yt(),X6t=Ai(),Z6t={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return CSe(t,"additionalItems",e);r.items=!0,!(0,Xk.alwaysValidSchema)(r,e)&&t.ok((0,X6t.validateArray)(t))}};function CSe(t,e,r=t.schema){let{gen:n,parentSchema:s,data:i,keyword:a,it:o}=t;l(s),o.opts.unevaluated&&r.length&&o.items!==!0&&(o.items=Xk.mergeEvaluated.items(n,r.length,o.items));let c=n.name("valid"),u=n.const("len",(0,ISe._)`${i}.length`);r.forEach((d,f)=>{(0,Xk.alwaysValidSchema)(o,d)||(n.if((0,ISe._)`${u} > ${f}`,()=>t.subschema({keyword:a,schemaProp:f,dataProp:f},c)),t.ok(c))});function l(d){let{opts:f,errSchemaPath:p}=o,m=r.length,h=m===d.minItems&&(m===d.maxItems||d[e]===!1);if(f.strictTuples&&!h){let y=`"${a}" is ${m}-tuple, but minItems or maxItems/${e} are not specified or different at path "${p}"`;(0,Xk.checkStrictMode)(o,y,f.strictTuples)}}}Lv.validateTuple=CSe;Lv.default=Z6t});var TSe=_(w9=>{"use strict";Object.defineProperty(w9,"__esModule",{value:!0});var eMt=T9(),tMt={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,eMt.validateTuple)(t,"items")};w9.default=tMt});var RSe=_(R9=>{"use strict";Object.defineProperty(R9,"__esModule",{value:!0});var wSe=Et(),rMt=Yt(),nMt=Ai(),sMt=C9(),iMt={message:({params:{len:t}})=>(0,wSe.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,wSe._)`{limit: ${t}}`},aMt={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:iMt,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:s}=r;n.items=!0,!(0,rMt.alwaysValidSchema)(n,e)&&(s?(0,sMt.validateAdditionalItems)(t,s):t.ok((0,nMt.validateArray)(t)))}};R9.default=aMt});var NSe=_(N9=>{"use strict";Object.defineProperty(N9,"__esModule",{value:!0});var pc=Et(),Zk=Yt(),oMt={message:({params:{min:t,max:e}})=>e===void 0?(0,pc.str)`must contain at least ${t} valid item(s)`:(0,pc.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,pc._)`{minContains: ${t}}`:(0,pc._)`{minContains: ${t}, maxContains: ${e}}`},cMt={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:oMt,code(t){let{gen:e,schema:r,parentSchema:n,data:s,it:i}=t,a,o,{minContains:c,maxContains:u}=n;i.opts.next?(a=c===void 0?1:c,o=u):a=1;let l=e.const("len",(0,pc._)`${s}.length`);if(t.setParams({min:a,max:o}),o===void 0&&a===0){(0,Zk.checkStrictMode)(i,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(o!==void 0&&a>o){(0,Zk.checkStrictMode)(i,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,Zk.alwaysValidSchema)(i,r)){let h=(0,pc._)`${l} >= ${a}`;o!==void 0&&(h=(0,pc._)`${h} && ${l} <= ${o}`),t.pass(h);return}i.items=!0;let d=e.name("valid");o===void 0&&a===1?p(d,()=>e.if(d,()=>e.break())):a===0?(e.let(d,!0),o!==void 0&&e.if((0,pc._)`${s}.length > 0`,f)):(e.let(d,!1),f()),t.result(d,()=>t.reset());function f(){let h=e.name("_valid"),y=e.let("count",0);p(h,()=>e.if(h,()=>m(y)))}function p(h,y){e.forRange("i",0,l,g=>{t.subschema({keyword:"contains",dataProp:g,dataPropType:Zk.Type.Num,compositeRule:!0},h),y()})}function m(h){e.code((0,pc._)`${h}++`),o===void 0?e.if((0,pc._)`${h} >= ${a}`,()=>e.assign(d,!0).break()):(e.if((0,pc._)`${h} > ${o}`,()=>e.assign(d,!1).break()),a===1?e.assign(d,!0):e.if((0,pc._)`${h} >= ${a}`,()=>e.assign(d,!0)))}}};N9.default=cMt});var PSe=_(dl=>{"use strict";Object.defineProperty(dl,"__esModule",{value:!0});dl.validateSchemaDeps=dl.validatePropertyDeps=dl.error=void 0;var O9=Et(),uMt=Yt(),Mv=Ai();dl.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,O9.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,O9._)`{property: ${t}, missingProperty: ${n}, depsCount: ${e}, - deps: ${r}}`};var UWt={keyword:"dependencies",type:"object",schemaType:"object",error:sl.error,code(t){let[e,r]=qWt(t);fCe(t,e),pCe(t,r)}};function qWt({schema:t}){let e={},r={};for(let n in t){if(n==="__proto__")continue;let s=Array.isArray(t[n])?e:r;s[n]=t[n]}return[e,r]}function fCe(t,e=t.schema){let{gen:r,data:n,it:s}=t;if(Object.keys(e).length===0)return;let i=r.let("missing");for(let a in e){let o=e[a];if(o.length===0)continue;let c=(0,dS.propertyInData)(r,n,a,s.opts.ownProperties);t.setParams({property:a,depsCount:o.length,deps:o.join(", ")}),s.allErrors?r.if(c,()=>{for(let u of o)(0,dS.checkReportMissingProp)(t,u)}):(r.if((0,z9._)`${c} && (${(0,dS.checkMissingProp)(t,o,i)})`),(0,dS.reportMissingProp)(t,i),r.else())}}sl.validatePropertyDeps=fCe;function pCe(t,e=t.schema){let{gen:r,data:n,keyword:s,it:i}=t,a=r.name("valid");for(let o in e)(0,FWt.alwaysValidSchema)(i,e[o])||(r.if((0,dS.propertyInData)(r,n,o,i.opts.ownProperties),()=>{let c=t.subschema({keyword:s,schemaProp:o},a);t.mergeValidEvaluated(c,a)},()=>r.var(a,!0)),t.ok(a))}sl.validateSchemaDeps=pCe;sl.default=UWt});var gCe=E(K9=>{"use strict";Object.defineProperty(K9,"__esModule",{value:!0});var hCe=Yt(),jWt=Wr(),HWt={message:"property name must be valid",params:({params:t})=>(0,hCe._)`{propertyName: ${t.propertyName}}`},QWt={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:HWt,code(t){let{gen:e,schema:r,data:n,it:s}=t;if((0,jWt.alwaysValidSchema)(s,r))return;let i=e.name("valid");e.forIn("key",n,a=>{t.setParams({propertyName:a}),t.subschema({keyword:"propertyNames",data:a,dataTypes:["string"],propertyName:a,compositeRule:!0},i),e.if((0,hCe.not)(i),()=>{t.error(!0),s.allErrors||e.break()})}),t.ok(i)}};K9.default=QWt});var J9=E(Y9=>{"use strict";Object.defineProperty(Y9,"__esModule",{value:!0});var yP=nc(),Xc=Yt(),GWt=Od(),xP=Wr(),VWt={message:"must NOT have additional properties",params:({params:t})=>(0,Xc._)`{additionalProperty: ${t.additionalProperty}}`},zWt={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:VWt,code(t){let{gen:e,schema:r,parentSchema:n,data:s,errsCount:i,it:a}=t;if(!i)throw new Error("ajv implementation error");let{allErrors:o,opts:c}=a;if(a.props=!0,c.removeAdditional!=="all"&&(0,xP.alwaysValidSchema)(a,r))return;let u=(0,yP.allSchemaProperties)(n.properties),l=(0,yP.allSchemaProperties)(n.patternProperties);d(),t.ok((0,Xc._)`${i} === ${GWt.default.errors}`);function d(){e.forIn("key",s,A=>{!u.length&&!l.length?m(A):e.if(f(A),()=>m(A))})}function f(A){let g;if(u.length>8){let b=(0,xP.schemaRefOrVal)(a,n.properties,"properties");g=(0,yP.isOwnProperty)(e,b,A)}else u.length?g=(0,Xc.or)(...u.map(b=>(0,Xc._)`${A} === ${b}`)):g=Xc.nil;return l.length&&(g=(0,Xc.or)(g,...l.map(b=>(0,Xc._)`${(0,yP.usePattern)(t,b)}.test(${A})`))),(0,Xc.not)(g)}function p(A){e.code((0,Xc._)`delete ${s}[${A}]`)}function m(A){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){p(A);return}if(r===!1){t.setParams({additionalProperty:A}),t.error(),o||e.break();return}if(typeof r=="object"&&!(0,xP.alwaysValidSchema)(a,r)){let g=e.name("valid");c.removeAdditional==="failing"?(h(A,g,!1),e.if((0,Xc.not)(g),()=>{t.reset(),p(A)})):(h(A,g),o||e.if((0,Xc.not)(g),()=>e.break()))}}function h(A,g,b){let y={keyword:"additionalProperties",dataProp:A,dataPropType:xP.Type.Str};b===!1&&Object.assign(y,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(y,g)}}};Y9.default=zWt});var xCe=E(Z9=>{"use strict";Object.defineProperty(Z9,"__esModule",{value:!0});var KWt=J_(),ACe=nc(),X9=Wr(),yCe=J9(),YWt={keyword:"properties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,parentSchema:n,data:s,it:i}=t;i.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&yCe.default.code(new KWt.KeywordCxt(i,yCe.default,"additionalProperties"));let a=(0,ACe.allSchemaProperties)(r);for(let d of a)i.definedProperties.add(d);i.opts.unevaluated&&a.length&&i.props!==!0&&(i.props=X9.mergeEvaluated.props(e,(0,X9.toHash)(a),i.props));let o=a.filter(d=>!(0,X9.alwaysValidSchema)(i,r[d]));if(o.length===0)return;let c=e.name("valid");for(let d of o)u(d)?l(d):(e.if((0,ACe.propertyInData)(e,s,d,i.opts.ownProperties)),l(d),i.allErrors||e.else().var(c,!0),e.endIf()),t.it.definedProperties.add(d),t.ok(c);function u(d){return i.opts.useDefaults&&!i.compositeRule&&r[d].default!==void 0}function l(d){t.subschema({keyword:"properties",schemaProp:d,dataProp:d},c)}}};Z9.default=YWt});var SCe=E(eq=>{"use strict";Object.defineProperty(eq,"__esModule",{value:!0});var bCe=nc(),bP=Yt(),ECe=Wr(),_Ce=Wr(),JWt={keyword:"patternProperties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,data:n,parentSchema:s,it:i}=t,{opts:a}=i,o=(0,bCe.allSchemaProperties)(r),c=o.filter(h=>(0,ECe.alwaysValidSchema)(i,r[h]));if(o.length===0||c.length===o.length&&(!i.opts.unevaluated||i.props===!0))return;let u=a.strictSchema&&!a.allowMatchingProperties&&s.properties,l=e.name("valid");i.props!==!0&&!(i.props instanceof bP.Name)&&(i.props=(0,_Ce.evaluatedPropsToName)(e,i.props));let{props:d}=i;f();function f(){for(let h of o)u&&p(h),i.allErrors?m(h):(e.var(l,!0),m(h),e.if(l))}function p(h){for(let A in u)new RegExp(h).test(A)&&(0,ECe.checkStrictMode)(i,`property ${A} matches pattern ${h} (use allowMatchingProperties)`)}function m(h){e.forIn("key",n,A=>{e.if((0,bP._)`${(0,bCe.usePattern)(t,h)}.test(${A})`,()=>{let g=c.includes(h);g||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:A,dataPropType:_Ce.Type.Str},l),i.opts.unevaluated&&d!==!0?e.assign((0,bP._)`${d}[${A}]`,!0):!g&&!i.allErrors&&e.if((0,bP.not)(l),()=>e.break())})})}}};eq.default=JWt});var vCe=E(tq=>{"use strict";Object.defineProperty(tq,"__esModule",{value:!0});var XWt=Wr(),ZWt={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,XWt.alwaysValidSchema)(n,r)){t.fail();return}let s=e.name("valid");t.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},s),t.failResult(s,()=>t.reset(),()=>t.error())},error:{message:"must NOT be valid"}};tq.default=ZWt});var CCe=E(rq=>{"use strict";Object.defineProperty(rq,"__esModule",{value:!0});var e$t=nc(),t$t={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:e$t.validateUnion,error:{message:"must match a schema in anyOf"}};rq.default=t$t});var ICe=E(nq=>{"use strict";Object.defineProperty(nq,"__esModule",{value:!0});var EP=Yt(),r$t=Wr(),n$t={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,EP._)`{passingSchemas: ${t.passing}}`},s$t={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:n$t,code(t){let{gen:e,schema:r,parentSchema:n,it:s}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(s.opts.discriminator&&n.discriminator)return;let i=r,a=e.let("valid",!1),o=e.let("passing",null),c=e.name("_valid");t.setParams({passing:o}),e.block(u),t.result(a,()=>t.reset(),()=>t.error(!0));function u(){i.forEach((l,d)=>{let f;(0,r$t.alwaysValidSchema)(s,l)?e.var(c,!0):f=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,EP._)`${c} && ${a}`).assign(a,!1).assign(o,(0,EP._)`[${o}, ${d}]`).else(),e.if(c,()=>{e.assign(a,!0),e.assign(o,d),f&&t.mergeEvaluated(f,EP.Name)})})}}};nq.default=s$t});var TCe=E(sq=>{"use strict";Object.defineProperty(sq,"__esModule",{value:!0});var i$t=Wr(),a$t={keyword:"allOf",schemaType:"array",code(t){let{gen:e,schema:r,it:n}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");let s=e.name("valid");r.forEach((i,a)=>{if((0,i$t.alwaysValidSchema)(n,i))return;let o=t.subschema({keyword:"allOf",schemaProp:a},s);t.ok(s),t.mergeEvaluated(o)})}};sq.default=a$t});var NCe=E(iq=>{"use strict";Object.defineProperty(iq,"__esModule",{value:!0});var _P=Yt(),RCe=Wr(),o$t={message:({params:t})=>(0,_P.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,_P._)`{failingKeyword: ${t.ifClause}}`},c$t={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:o$t,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,RCe.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let s=wCe(n,"then"),i=wCe(n,"else");if(!s&&!i)return;let a=e.let("valid",!0),o=e.name("_valid");if(c(),t.reset(),s&&i){let l=e.let("ifClause");t.setParams({ifClause:l}),e.if(o,u("then",l),u("else",l))}else s?e.if(o,u("then")):e.if((0,_P.not)(o),u("else"));t.pass(a,()=>t.error(!0));function c(){let l=t.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},o);t.mergeEvaluated(l)}function u(l,d){return()=>{let f=t.subschema({keyword:l},o);e.assign(a,o),t.mergeValidEvaluated(f,a),d?e.assign(d,(0,_P._)`${l}`):t.setParams({ifClause:l})}}}};function wCe(t,e){let r=t.schema[e];return r!==void 0&&!(0,RCe.alwaysValidSchema)(t,r)}iq.default=c$t});var OCe=E(aq=>{"use strict";Object.defineProperty(aq,"__esModule",{value:!0});var u$t=Wr(),l$t={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,u$t.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};aq.default=l$t});var PCe=E(oq=>{"use strict";Object.defineProperty(oq,"__esModule",{value:!0});var d$t=j9(),f$t=cCe(),p$t=H9(),m$t=lCe(),h$t=dCe(),g$t=mCe(),A$t=gCe(),y$t=J9(),x$t=xCe(),b$t=SCe(),E$t=vCe(),_$t=CCe(),S$t=ICe(),v$t=TCe(),C$t=NCe(),I$t=OCe();function T$t(t=!1){let e=[E$t.default,_$t.default,S$t.default,v$t.default,C$t.default,I$t.default,A$t.default,y$t.default,g$t.default,x$t.default,b$t.default];return t?e.push(f$t.default,m$t.default):e.push(d$t.default,p$t.default),e.push(h$t.default),e}oq.default=T$t});var DCe=E(cq=>{"use strict";Object.defineProperty(cq,"__esModule",{value:!0});var ds=Yt(),w$t={message:({schemaCode:t})=>(0,ds.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,ds._)`{format: ${t}}`},R$t={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:w$t,code(t,e){let{gen:r,data:n,$data:s,schema:i,schemaCode:a,it:o}=t,{opts:c,errSchemaPath:u,schemaEnv:l,self:d}=o;if(!c.validateFormats)return;s?f():p();function f(){let m=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),h=r.const("fDef",(0,ds._)`${m}[${a}]`),A=r.let("fType"),g=r.let("format");r.if((0,ds._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(A,(0,ds._)`${h}.type || "string"`).assign(g,(0,ds._)`${h}.validate`),()=>r.assign(A,(0,ds._)`"string"`).assign(g,h)),t.fail$data((0,ds.or)(b(),y()));function b(){return c.strictSchema===!1?ds.nil:(0,ds._)`${a} && !${g}`}function y(){let x=l.$async?(0,ds._)`(${h}.async ? await ${g}(${n}) : ${g}(${n}))`:(0,ds._)`${g}(${n})`,v=(0,ds._)`(typeof ${g} == "function" ? ${x} : ${g}.test(${n}))`;return(0,ds._)`${g} && ${g} !== true && ${A} === ${e} && !${v}`}}function p(){let m=d.formats[i];if(!m){b();return}if(m===!0)return;let[h,A,g]=y(m);h===e&&t.pass(x());function b(){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 y(v){let C=v instanceof RegExp?(0,ds.regexpCode)(v):c.code.formats?(0,ds._)`${c.code.formats}${(0,ds.getProperty)(i)}`:void 0,R=r.scopeValue("formats",{key:i,ref:v,code:C});return typeof v=="object"&&!(v instanceof RegExp)?[v.type||"string",v.validate,(0,ds._)`${R}.validate`]:["string",v,R]}function x(){if(typeof m=="object"&&!(m instanceof RegExp)&&m.async){if(!l.$async)throw new Error("async format in sync schema");return(0,ds._)`await ${g}(${n})`}return typeof A=="function"?(0,ds._)`${g}(${n})`:(0,ds._)`${g}.test(${n})`}}}};cq.default=R$t});var kCe=E(uq=>{"use strict";Object.defineProperty(uq,"__esModule",{value:!0});var N$t=DCe(),O$t=[N$t.default];uq.default=O$t});var LCe=E(Hy=>{"use strict";Object.defineProperty(Hy,"__esModule",{value:!0});Hy.contentVocabulary=Hy.metadataVocabulary=void 0;Hy.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Hy.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var MCe=E(lq=>{"use strict";Object.defineProperty(lq,"__esModule",{value:!0});var P$t=Hve(),D$t=sCe(),k$t=PCe(),L$t=kCe(),BCe=LCe(),B$t=[P$t.default,D$t.default,(0,k$t.default)(),L$t.default,BCe.metadataVocabulary,BCe.contentVocabulary];lq.default=B$t});var $Ce=E(SP=>{"use strict";Object.defineProperty(SP,"__esModule",{value:!0});SP.DiscrError=void 0;var WCe;(function(t){t.Tag="tag",t.Mapping="mapping"})(WCe||(SP.DiscrError=WCe={}))});var UCe=E(fq=>{"use strict";Object.defineProperty(fq,"__esModule",{value:!0});var Qy=Yt(),dq=$Ce(),FCe=sP(),M$t=X_(),W$t=Wr(),$$t={message:({params:{discrError:t,tagName:e}})=>t===dq.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,Qy._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},F$t={keyword:"discriminator",type:"object",schemaType:"object",error:$$t,code(t){let{gen:e,data:r,schema:n,parentSchema:s,it:i}=t,{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=e.let("valid",!1),u=e.const("tag",(0,Qy._)`${r}${(0,Qy.getProperty)(o)}`);e.if((0,Qy._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:dq.DiscrError.Tag,tag:u,tagName:o})),t.ok(c);function l(){let p=f();e.if(!1);for(let m in p)e.elseIf((0,Qy._)`${u} === ${m}`),e.assign(c,d(p[m]));e.else(),t.error(!1,{discrError:dq.DiscrError.Mapping,tag:u,tagName:o}),e.endIf()}function d(p){let m=e.name("valid"),h=t.subschema({keyword:"oneOf",schemaProp:p},m);return t.mergeEvaluated(h,Qy.Name),m}function f(){var p;let m={},h=g(s),A=!0;for(let x=0;x{U$t.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 HCe=E((Bn,pq)=>{"use strict";Object.defineProperty(Bn,"__esModule",{value:!0});Bn.MissingRefError=Bn.ValidationError=Bn.CodeGen=Bn.Name=Bn.nil=Bn.stringify=Bn.str=Bn._=Bn.KeywordCxt=Bn.Ajv=void 0;var q$t=Wve(),j$t=MCe(),H$t=UCe(),jCe=qCe(),Q$t=["/properties"],vP="http://json-schema.org/draft-07/schema",Gy=class extends q$t.default{_addVocabularies(){super._addVocabularies(),j$t.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(H$t.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(jCe,Q$t):jCe;this.addMetaSchema(e,vP,!1),this.refs["http://json-schema.org/schema"]=vP}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(vP)?vP:void 0)}};Bn.Ajv=Gy;pq.exports=Bn=Gy;pq.exports.Ajv=Gy;Object.defineProperty(Bn,"__esModule",{value:!0});Bn.default=Gy;var G$t=J_();Object.defineProperty(Bn,"KeywordCxt",{enumerable:!0,get:function(){return G$t.KeywordCxt}});var Vy=Yt();Object.defineProperty(Bn,"_",{enumerable:!0,get:function(){return Vy._}});Object.defineProperty(Bn,"str",{enumerable:!0,get:function(){return Vy.str}});Object.defineProperty(Bn,"stringify",{enumerable:!0,get:function(){return Vy.stringify}});Object.defineProperty(Bn,"nil",{enumerable:!0,get:function(){return Vy.nil}});Object.defineProperty(Bn,"Name",{enumerable:!0,get:function(){return Vy.Name}});Object.defineProperty(Bn,"CodeGen",{enumerable:!0,get:function(){return Vy.CodeGen}});var V$t=rP();Object.defineProperty(Bn,"ValidationError",{enumerable:!0,get:function(){return V$t.default}});var z$t=X_();Object.defineProperty(Bn,"MissingRefError",{enumerable:!0,get:function(){return z$t.default}})});var QCe=E(zy=>{"use strict";Object.defineProperty(zy,"__esModule",{value:!0});zy.formatLimitDefinition=void 0;var K$t=HCe(),Zc=Yt(),jp=Zc.operators,CP={formatMaximum:{okStr:"<=",ok:jp.LTE,fail:jp.GT},formatMinimum:{okStr:">=",ok:jp.GTE,fail:jp.LT},formatExclusiveMaximum:{okStr:"<",ok:jp.LT,fail:jp.GTE},formatExclusiveMinimum:{okStr:">",ok:jp.GT,fail:jp.LTE}},Y$t={message:({keyword:t,schemaCode:e})=>Zc.str`should be ${CP[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>Zc._`{comparison: ${CP[t].okStr}, limit: ${e}}`};zy.formatLimitDefinition={keyword:Object.keys(CP),type:"string",schemaType:"string",$data:!0,error:Y$t,code(t){let{gen:e,data:r,schemaCode:n,keyword:s,it:i}=t,{opts:a,self:o}=i;if(!a.validateFormats)return;let c=new K$t.KeywordCxt(i,o.RULES.all.format.definition,"format");c.$data?u():l();function u(){let f=e.scopeValue("formats",{ref:o.formats,code:a.code.formats}),p=e.const("fmt",Zc._`${f}[${c.schemaCode}]`);t.fail$data(Zc.or(Zc._`typeof ${p} != "object"`,Zc._`${p} instanceof RegExp`,Zc._`typeof ${p}.compare != "function"`,d(p)))}function l(){let f=c.schema,p=o.formats[f];if(!p||p===!0)return;if(typeof p!="object"||p instanceof RegExp||typeof p.compare!="function")throw new Error(`"${s}": format "${f}" does not define "compare" function`);let m=e.scopeValue("formats",{key:f,ref:p,code:a.code.formats?Zc._`${a.code.formats}${Zc.getProperty(f)}`:void 0});t.fail$data(d(m))}function d(f){return Zc._`${f}.compare(${r}, ${n}) ${CP[s].fail} 0`}},dependencies:["format"]};var J$t=t=>(t.addKeyword(zy.formatLimitDefinition),t);zy.default=J$t});var KCe=E((fS,zCe)=>{"use strict";Object.defineProperty(fS,"__esModule",{value:!0});var Ky=ySe(),X$t=QCe(),mq=Yt(),GCe=new mq.Name("fullFormats"),Z$t=new mq.Name("fastFormats"),hq=(t,e={keywords:!0})=>{if(Array.isArray(e))return VCe(t,e,Ky.fullFormats,GCe),t;let[r,n]=e.mode==="fast"?[Ky.fastFormats,Z$t]:[Ky.fullFormats,GCe],s=e.formats||Ky.formatNames;return VCe(t,s,r,n),e.keywords&&X$t.default(t),t};hq.get=(t,e="full")=>{let n=(e==="fast"?Ky.fastFormats:Ky.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function VCe(t,e,r,n){var s,i;(s=(i=t.opts.code).formats)!==null&&s!==void 0||(i.formats=mq._`require("ajv-formats/dist/formats").${n}`);for(let a of e)t.addFormat(a,r[a])}zCe.exports=fS=hq;Object.defineProperty(fS,"__esModule",{value:!0});fS.default=hq});var XCe=E((e4r,JCe)=>{"use strict";var eFt=g_e().default,tFt=C7(),YCe=I7(),gq=class{constructor(e,r){r.mode==="JTD"?this.ajv=new tFt(Object.assign({},YCe,r.customOptions)):this.ajv=new eFt(Object.assign({},YCe,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&&KCe()(this.ajv),r.onCreate?.(this.ajv);let s=Object.values(e);for(let i of s)this.ajv.addSchema(i)}buildValidatorFunction({schema:e}){if(e.$id){let r=this.ajv.getSchema(e.$id);if(r)return r}return this.ajv.compile(e)}};JCe.exports=gq});var eIe=E((t4r,ZCe)=>{"use strict";var rFt=C7(),nFt=I7(),Aq=class{constructor(e,r){this.ajv=new rFt(Object.assign({},nFt,r))}buildSerializerFunction({schema:e}){return this.ajv.compileSerializer(e)}};ZCe.exports=Aq});var nIe=E((mS,rIe)=>{"use strict";Object.defineProperty(mS,"__esModule",{value:!0});var pS=aO(),eu=uy();function tIe(t,e){if(!t.opts.code.source)throw new Error("moduleCode: ajv instance must have code.source option");let{_n:r}=t.scope.opts;return typeof e=="function"?s(e.source):e!==void 0?i(e,n):i(t.schemas,o=>o.meta?void 0:t.compile(o.schema));function n(o){let c=t.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 t.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,eu._)`"use strict";`;for(let f in o){let p=c(o[f]);if(p){let m=a(l,p.source),h=t.opts.code.esm?(0,eu._)`export const ${(0,eu.getEsmExportName)(f)}`:(0,eu._)`exports${(0,eu.getProperty)(f)}`;d=(0,eu._)`${d}${r}${h} = ${(u=p.source)===null||u===void 0?void 0:u.validateName};${r}${m}`}}return`${d}`}function a(o,c){if(!c)throw new Error('moduleCode: function does not have "source" property');if(f(c.validateName)===pS.UsedValueState.Completed)return eu.nil;p(c.validateName,pS.UsedValueState.Started);let u=t.scope.scopeCode(c.scopeValues,o,d),l=new eu._Code(`${u}${r}${c.validateCode}`);return c.evaluated?(0,eu._)`${l}${c.validateName}.evaluated = ${c.evaluated};${r}`:l;function d(m){var h;let A=(h=m.value)===null||h===void 0?void 0:h.ref;if(m.prefix==="validate"&&typeof A=="function")return a(o,A.source);if((m.prefix==="root"||m.prefix==="wrapper")&&typeof A=="object"){let{validate:g,validateName:b}=A;if(!b)throw new Error("ajv internal error");let y=t.opts.code.es5?pS.varKinds.var:pS.varKinds.const,x=(0,eu._)`${y} ${m} = {validate: ${b}};`;if(f(b)===pS.UsedValueState.Started)return x;let v=a(o,g?.source);return(0,eu._)`${x}${r}${v}`}}function f(m){var h;return(h=o[m.prefix])===null||h===void 0?void 0:h.get(m)}function p(m,h){let{prefix:A}=m;(o[A]=o[A]||new Map).set(m,h)}}}rIe.exports=mS=tIe;Object.defineProperty(mS,"__esModule",{value:!0});mS.default=tIe});var aIe=E((r4r,iIe)=>{"use strict";var sIe=yq(),sFt=nIe().default;function iFt(t={readMode:!0}){if(t.readMode===!0&&!t.restoreFunction)throw new Error("You must provide a restoreFunction options when readMode ON");if(t.readMode!==!0&&!t.storeFunction)throw new Error("You must provide a storeFunction options when readMode OFF");if(t.readMode===!0)return function(){return function(n){return t.restoreFunction(n)}};let e=sIe();return function(n,s={}){(!s.customOptions||!s.customOptions.code)&&(s.customOptions=Object.assign({},s.customOptions,{code:{source:!0}}));let i=e(n,s);return function(a){let o=i(a),c=sFt(i[sIe.AjvReference].ajv,o);return t.storeFunction(a,c),o}}}iIe.exports=iFt});var yq=E((n4r,Yy)=>{"use strict";var cIe=Symbol.for("fastify.ajv-compiler.reference"),aFt=XCe(),oFt=eIe();function xq(t){let e=new Map,r=new Map;return t&&t.jtdSerializer===!0?function(s,i){let a=oIe({},i);if(r.has(a))return r.get(a);let o=new oFt(s,i),c=o.buildSerializerFunction.bind(o);return r.set(a,c),c}:function(s,i){let a=oIe(s,i.customOptions);if(e.has(a))return e.get(a);let o=new aFt(s,i),c=o.buildValidatorFunction.bind(o);return e.set(a,c),i.customOptions.code!==void 0&&(c[cIe]=o),c}}function oIe(t,e){let r=JSON.stringify(t),n=JSON.stringify(e);return`${r}${n}`}Yy.exports=xq;Yy.exports.default=xq;Yy.exports.AjvCompiler=xq;Yy.exports.AjvReference=cIe;Yy.exports.StandaloneValidator=aIe()});var bq=E((s4r,uIe)=>{"use strict";var{buildSchemas:cFt}=u1(),uFt=uF(),lFt=yq();function dFt(t,e){if(t)return new Jy(t,e);let r=Object.assign({buildValidator:null,buildSerializer:null},e?.compilersFactory);r.buildValidator||(r.buildValidator=lFt()),r.buildSerializer||(r.buildSerializer=uFt());let n={bucket:e&&e.bucket||cFt,compilersFactory:r,isCustomValidatorCompiler:typeof e?.compilersFactory?.buildValidator=="function",isCustomSerializerCompiler:typeof e?.compilersFactory?.buildValidator=="function"};return new Jy(void 0,n)}var Jy=class{constructor(e,r){this.opts=r||e?.opts,this.addedSchemas=!1,this.compilersFactory=this.opts.compilersFactory,e?(this.schemaBucket=this.opts.bucket(e.getSchemas()),this.validatorCompiler=e.getValidatorCompiler(),this.serializerCompiler=e.getSerializerCompiler(),this.isCustomValidatorCompiler=e.isCustomValidatorCompiler,this.isCustomSerializerCompiler=e.isCustomSerializerCompiler,this.parent=e):(this.schemaBucket=this.opts.bucket(),this.isCustomValidatorCompiler=this.opts.isCustomValidatorCompiler||!1,this.isCustomSerializerCompiler=this.opts.isCustomSerializerCompiler||!1)}add(e){return this.addedSchemas=!0,this.schemaBucket.add(e)}getSchema(e){return this.schemaBucket.getSchema(e)}getSchemas(){return this.schemaBucket.getSchemas()}setValidatorCompiler(e){this.compilersFactory=Object.assign({},this.compilersFactory,{buildValidator:()=>e}),this.validatorCompiler=e,this.isCustomValidatorCompiler=!0}setSerializerCompiler(e){this.compilersFactory=Object.assign({},this.compilersFactory,{buildSerializer:()=>e}),this.serializerCompiler=e,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(e){this.validatorCompiler!==void 0&&!this.addedSchemas||(this.validatorCompiler=this.getValidatorBuilder()(this.schemaBucket.getSchemas(),e.ajv))}setupSerializer(e){this.serializerCompiler!==void 0&&!this.addedSchemas||(this.serializerCompiler=this.getSerializerBuilder()(this.schemaBucket.getSchemas(),e.serializerOpts))}};Jy.buildSchemaController=dFt;uIe.exports=Jy});var Iq=E((i4r,Cq)=>{"use strict";var Eq=O$(),Sq=require("node:assert"),vq=Symbol.for("registered-plugin"),{kTestInternals:fFt}=Qs(),{exist:pFt,existReply:mFt,existRequest:hFt}=U$(),{FST_ERR_PLUGIN_VERSION_MISMATCH:gFt,FST_ERR_PLUGIN_NOT_PRESENT_IN_INSTANCE:AFt}=Ci(),{FSTWRN002:yFt}=cd();function hS(t){return t[Symbol.for("plugin-meta")]}function lIe(t){let e=dIe(t);if(e)return e;let r=require.cache;if(r){let n=Object.keys(r);for(let s=0;se.trim()).join(" -- ")}function dIe(t){return t[Symbol.for("fastify.display-name")]}function fIe(t){return!!t[Symbol.for("skip-override")]}function pIe(t){let e=hS(t);if(!e)return;let r=e.dependencies;r&&(Sq(Array.isArray(r),"The dependencies should be an array of strings"),r.forEach(n=>{Sq(this[vq].indexOf(n)>-1,`The dependency '${n}' of plugin '${e.name}' is not registered`)}))}function mIe(t){let e=hS(t);if(!e)return;let{decorators:r,name:n}=e;r&&(r.fastify&&_q(this,"Fastify",r.fastify,n),r.reply&&_q(this,"Reply",r.reply,n),r.request&&_q(this,"Request",r.request,n))}var bFt={Fastify:pFt,Request:hFt,Reply:mFt};function _q(t,e,r,n){Sq(Array.isArray(r),"The decorators should be an array of strings"),r.forEach(s=>{let i=typeof n=="string"?` required by '${n}'`:"";if(!bFt[e].call(t,s))throw new AFt(s,i,e)})}function EFt(t){let e=hS(t);if(!e)return;let r=e.fastify,n=/-rc.+$/.test(this.version);if(!(n===!0&&Eq.gt(this.version,Eq.coerce(r))===!0)&&r&&Eq.satisfies(this.version,r,{includePrerelease:n})===!1)throw new gFt(e.name,r,this.version)}function _Ft(t){let e=hS(t);if(!e)return;let r=e.name;if(r)return this[vq].push(r),r}function SFt(t,e){t.constructor.name==="AsyncFunction"&&t.length===3&&yFt(e||"anonymous")}function vFt(t){let e=_Ft.call(this,t)||lIe(t);return SFt.call(this,t,e),EFt.call(this,t),mIe.call(this,t),pIe.call(this,t),fIe(t)}Cq.exports={getPluginName:lIe,getFuncPreview:xFt,kRegisteredPlugins:vq,getDisplayName:dIe,registerPlugin:vFt};Cq.exports[fFt]={shouldSkipOverride:fIe,getMeta:hS,checkDecorators:mIe,checkDependencies:pIe}});var IP=E((a4r,hIe)=>{"use strict";function CFt(t,e){let r=e||TFt();return t?wFt(t,r):r}function IFt(t,e){return t.genReqId(e)}function TFt(){let e=0;return function(){return e=e+1&2147483647,`req-${e.toString(36)}`}}function wFt(t,e){return function(r){return r.headers[t]||e(r)}}hIe.exports={getGenReqId:IFt,reqIdGenFactory:CFt}});var xIe=E((o4r,yIe)=>{"use strict";var gIe=12,RFt=0,Tq=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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 NFt(t){var e=t.indexOf("%");if(e===-1)return t;for(var r=t.length,n="",s=0,i=0,a=e,o=gIe;e>-1&&e>10),56320+(i&1023)),i=0,s=e+3,e=a=t.indexOf("%",s);else{if(o===RFt)return null;if(e+=3,e{"use strict";var bIe=xIe(),EIe=/\+/g,_Ie=function(){};_Ie.prototype=Object.create(null);function PFt(t){let e=new _Ie;if(typeof t!="string")return e;let r=t.length,n="",s="",i=-1,a=-1,o=!1,c=!1,u=!1,l=!1,d=!1,f=0;for(let p=0;pi,d||(a=p),n=t.slice(i+1,a),d||n.length>0){u&&(n=n.replace(EIe," ")),o&&(n=bIe(n)||n),d&&(s=t.slice(a+1,p),l&&(s=s.replace(EIe," ")),c&&(s=bIe(s)||s));let m=e[n];m===void 0?e[n]=s:m.pop?m.push(s):e[n]=[m,s]}s="",i=p,a=p,o=!1,c=!1,u=!1,l=!1}else f===61?a<=i?a=p:c=!0:f===43?a>i?l=!0:u=!0:f===37&&(a>i?c=!0:o=!0);return e}SIe.exports=PFt});var IIe=E((u4r,CIe)=>{var il=Array.from({length:256},(t,e)=>"%"+((e<16?"0":"")+e.toString(16)).toUpperCase()),DFt=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 kFt(t){let e=t.length;if(e===0)return"";let r="",n=0,s=0;e:for(;s>6]+il[128|i&63];continue}if(i<55296||i>=57344){n=s+1,r+=il[224|i>>12]+il[128|i>>6&63]+il[128|i&63];continue}if(++s,s>=e)throw new Error("URI malformed");let a=t.charCodeAt(s)&1023;n=s+1,i=65536+((i&1023)<<10|a),r+=il[240|i>>18]+il[128|i>>12&63]+il[128|i>>6&63]+il[128|i&63]}return n===0?t:n{"use strict";var{encodeString:wq}=IIe();function TIe(t){let e=typeof t;return e==="string"?wq(t):e==="bigint"?t.toString():e==="boolean"?t?"true":"false":e==="number"&&Number.isFinite(t)?t<1e21?""+t:wq(""+t):""}function LFt(t){let e="";if(t===null||typeof t!="object")return e;let r="&",n=Object.keys(t),s=n.length,i=0;for(let a=0;a{"use strict";var NIe=vIe(),OIe=RIe(),PIe={parse:NIe,stringify:OIe};gS.exports=PIe;gS.exports.default=PIe;gS.exports.parse=NIe;gS.exports.stringify=OIe});var LIe=E(kIe=>{"use strict";Object.defineProperty(kIe,"__esModule",{value:!0})});var BIe=E(AS=>{"use strict";Object.defineProperty(AS,"__esModule",{value:!0});AS.types=void 0;var BFt;(function(t){t[t.ROOT=0]="ROOT",t[t.GROUP=1]="GROUP",t[t.POSITION=2]="POSITION",t[t.SET=3]="SET",t[t.RANGE=4]="RANGE",t[t.REPETITION=5]="REPETITION",t[t.REFERENCE=6]="REFERENCE",t[t.CHAR=7]="CHAR"})(BFt=AS.types||(AS.types={}))});var WIe=E(MIe=>{"use strict";Object.defineProperty(MIe,"__esModule",{value:!0})});var Ld=E(kd=>{"use strict";var MFt=kd&&kd.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Rq=kd&&kd.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&MFt(e,t,r)};Object.defineProperty(kd,"__esModule",{value:!0});Rq(LIe(),kd);Rq(BIe(),kd);Rq(WIe(),kd)});var TP=E(Wi=>{"use strict";Object.defineProperty(Wi,"__esModule",{value:!0});Wi.anyChar=Wi.notWhitespace=Wi.whitespace=Wi.notInts=Wi.ints=Wi.notWords=Wi.words=void 0;var Hr=Ld(),$Ie=()=>[{type:Hr.types.RANGE,from:48,to:57}],FIe=()=>[{type:Hr.types.CHAR,value:95},{type:Hr.types.RANGE,from:97,to:122},{type:Hr.types.RANGE,from:65,to:90},{type:Hr.types.RANGE,from:48,to:57}],UIe=()=>[{type:Hr.types.CHAR,value:9},{type:Hr.types.CHAR,value:10},{type:Hr.types.CHAR,value:11},{type:Hr.types.CHAR,value:12},{type:Hr.types.CHAR,value:13},{type:Hr.types.CHAR,value:32},{type:Hr.types.CHAR,value:160},{type:Hr.types.CHAR,value:5760},{type:Hr.types.RANGE,from:8192,to:8202},{type:Hr.types.CHAR,value:8232},{type:Hr.types.CHAR,value:8233},{type:Hr.types.CHAR,value:8239},{type:Hr.types.CHAR,value:8287},{type:Hr.types.CHAR,value:12288},{type:Hr.types.CHAR,value:65279}],WFt=()=>[{type:Hr.types.CHAR,value:10},{type:Hr.types.CHAR,value:13},{type:Hr.types.CHAR,value:8232},{type:Hr.types.CHAR,value:8233}];Wi.words=()=>({type:Hr.types.SET,set:FIe(),not:!1});Wi.notWords=()=>({type:Hr.types.SET,set:FIe(),not:!0});Wi.ints=()=>({type:Hr.types.SET,set:$Ie(),not:!1});Wi.notInts=()=>({type:Hr.types.SET,set:$Ie(),not:!0});Wi.whitespace=()=>({type:Hr.types.SET,set:UIe(),not:!1});Wi.notWhitespace=()=>({type:Hr.types.SET,set:UIe(),not:!0});Wi.anyChar=()=>({type:Hr.types.SET,set:WFt(),not:!0})});var jIe=E(ac=>{"use strict";var $Ft=ac&&ac.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),FFt=ac&&ac.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),UFt=ac&&ac.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&$Ft(e,t,r);return FFt(e,t),e};Object.defineProperty(ac,"__esModule",{value:!0});ac.tokenizeClass=ac.strToChars=void 0;var qIe=Ld(),Xy=UFt(TP()),qFt="@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^ ?";ac.strToChars=t=>{let e=/(\[\\b\])|(\\)?\\(?:u([A-F0-9]{4})|x([A-F0-9]{2})|c([@A-Z[\\\]^?])|([0tnvfr]))/g;return t.replace(e,(r,n,s,i,a,o,c)=>{if(s)return r;let u=n?8:i?parseInt(i,16):a?parseInt(a,16):o?qFt.indexOf(o):{0:0,t:9,n:10,v:11,f:12,r:13}[c],l=String.fromCharCode(u);return/[[\]{}^$.|?*+()]/.test(l)?`\\${l}`:l})};ac.tokenizeClass=(t,e)=>{var r,n,s,i,a,o,c;let u=[],l,d,f=/\\(?:(w)|(d)|(s)|(W)|(D)|(S))|((?:(?:\\)(.)|([^\]\\]))-(((?:\\)])|(((?:\\)?([^\]])))))|(\])|(?:\\)?([^])/g;for(;(l=f.exec(t))!==null;){let p=(c=(o=(a=(i=(s=(n=(r=l[1]&&Xy.words())!==null&&r!==void 0?r:l[2]&&Xy.ints())!==null&&n!==void 0?n:l[3]&&Xy.whitespace())!==null&&s!==void 0?s:l[4]&&Xy.notWords())!==null&&i!==void 0?i:l[5]&&Xy.notInts())!==null&&a!==void 0?a:l[6]&&Xy.notWhitespace())!==null&&o!==void 0?o:l[7]&&{type:qIe.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:qIe.types.CHAR,value:d.charCodeAt(0)};if(p)u.push(p);else return[u,f.lastIndex]}throw new SyntaxError(`Invalid regular expression: /${e}/: Unterminated character class`)}});var Nq=E(al=>{"use strict";var jFt=al&&al.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),HFt=al&&al.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),QIe=al&&al.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&jFt(e,t,r);return HFt(e,t),e};Object.defineProperty(al,"__esModule",{value:!0});al.tokenizer=void 0;var HIe=QIe(jIe()),gi=Ld(),oh=QIe(TP());al.tokenizer=t=>{let e=0,r,n={type:gi.types.ROOT,stack:[]},s=n,i=n.stack,a=[],o=[],c=0,u=d=>{throw new SyntaxError(`Invalid regular expression: /${t}/: Nothing to repeat at column ${d-1}`)},l=HIe.strToChars(t);for(;es){let i=r.stack.splice(r.index+1);for(let a of n.slice(s))r.stack.push({type:gi.types.CHAR,value:a.charCodeAt(0)});r.stack.push(...i)}}}}});var VIe=E($i=>{"use strict";var GFt=$i&&$i.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),VFt=$i&&$i.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),zFt=$i&&$i.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&GFt(e,t,r);return VFt(e,t),e};Object.defineProperty($i,"__esModule",{value:!0});$i.NOTANYCHAR=$i.WHITESPACE=$i.WORDS=$i.INTS=void 0;var wP=zFt(TP()),GIe=Ld();function RP(t){let e={},r=0;for(let n of t)n.type===GIe.types.CHAR&&(e[n.value]=!0),n.type===GIe.types.RANGE&&(e[`${n.from}-${n.to}`]=!0),r+=1;return{lookup:()=>Object.assign({},e),len:r}}$i.INTS=RP(wP.ints().set);$i.WORDS=RP(wP.words().set);$i.WHITESPACE=RP(wP.whitespace().set);$i.NOTANYCHAR=RP(wP.anyChar().set)});var KIe=E(oc=>{"use strict";var KFt=oc&&oc.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),YFt=oc&&oc.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),JFt=oc&&oc.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&KFt(e,t,r);return YFt(e,t),e};Object.defineProperty(oc,"__esModule",{value:!0});oc.writeSetTokens=oc.setChar=void 0;var DP=Ld(),NP=JFt(VIe());function PP(t){return t===94?"\\^":t===92?"\\\\":t===93?"\\]":t===45?"\\-":String.fromCharCode(t)}oc.setChar=PP;function OP(t,{lookup:e,len:r}){if(r!==t.length)return!1;let n=e();for(let s of t){if(s.type===DP.types.SET)return!1;let i=s.type===DP.types.CHAR?s.value:`${s.from}-${s.to}`;if(n[i])n[i]=!1;else return!1}return!0}function zIe(t,e=!1){if(OP(t.set,NP.INTS))return t.not?"\\D":"\\d";if(OP(t.set,NP.WORDS))return t.not?"\\W":"\\w";if(t.not&&OP(t.set,NP.NOTANYCHAR))return".";if(OP(t.set,NP.WHITESPACE))return t.not?"\\S":"\\s";let r="";for(let s=0;s{"use strict";Object.defineProperty(Zy,"__esModule",{value:!0});Zy.reconstruct=void 0;var Hp=Ld(),Oq=KIe(),YIe=t=>t.map(Zy.reconstruct).join(""),JIe=t=>{if("options"in t)return t.options.map(YIe).join("|");if("stack"in t)return YIe(t.stack);throw new Error("options or stack must be Root or Group token")};Zy.reconstruct=t=>{switch(t.type){case Hp.types.ROOT:return JIe(t);case Hp.types.CHAR:{let e=String.fromCharCode(t.value);return(/[[\\{}$^.|?*+()]/.test(e)?"\\":"")+e}case Hp.types.POSITION:return t.value==="^"||t.value==="$"?t.value:`\\${t.value}`;case Hp.types.REFERENCE:return`\\${t.value}`;case Hp.types.SET:return Oq.writeSetTokens(t);case Hp.types.GROUP:return`(${t.remember?"":t.followedBy?"?=":t.notFollowedBy?"?!":"?:"}${JIe(t)})`;case Hp.types.REPETITION:{let{min:e,max:r}=t,n;return e===0&&r===1?n="?":e===1&&r===1/0?n="+":e===0&&r===1/0?n="*":r===1/0?n=`{${e},}`:e===r?n=`{${e}}`:n=`{${e},${r}}`,`${Zy.reconstruct(t.value)}${n}`}case Hp.types.RANGE:return`${Oq.setChar(t.from)}-${Oq.setChar(t.to)}`;default:throw new Error(`Invalid token type ${t}`)}}});var eTe=E((cc,kP)=>{"use strict";var ZFt=cc&&cc.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Dq=cc&&cc.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&ZFt(e,t,r)};Object.defineProperty(cc,"__esModule",{value:!0});cc.types=void 0;var XIe=Ld();Object.defineProperty(cc,"types",{enumerable:!0,get:function(){return XIe.types}});Dq(Nq(),cc);Dq(Pq(),cc);var ZIe=Nq(),eUt=Pq();Dq(Ld(),cc);cc.default=ZIe.tokenizer;kP.exports=ZIe.tokenizer;kP.exports.types=XIe.types;kP.exports.reconstruct=eUt.reconstruct});var rTe=E((_4r,LP)=>{"use strict";var tTe=eTe(),tUt=tTe.types;function kq(t,e){e||(e={});let r=e.limit===void 0?25:e.limit;rUt(t)?t=t.source:typeof t!="string"&&(t=String(t));try{t=tTe(t)}catch{return!1}let n=0;return function s(i,a){let o,c,u;if(i.type===tUt.REPETITION&&(a++,n++,a>1||n>r))return!1;if(i.options){for(o=0,u=i.options.length;o{"use strict";nTe.exports={name:"__fmw_internal_strategy_merged_tree_http_method__",storage:function(){let t={};return{get:e=>t[e]||null,set:(e,r)=>{t[e]=r}}},deriveConstraint:t=>t.method,mustMatchWhenDerived:!0}});var lTe=E((v4r,uTe)=>{"use strict";var sTe=Go(),iTe=BP(),aTe=Symbol("treeData");function oTe(t,e=""){let r="",n=Object.keys(t);for(let s=0;s{for(let u of o)(0,Mv.checkReportMissingProp)(t,u)}):(r.if((0,O9._)`${c} && (${(0,Mv.checkMissingProp)(t,o,i)})`),(0,Mv.reportMissingProp)(t,i),r.else())}}dl.validatePropertyDeps=OSe;function kSe(t,e=t.schema){let{gen:r,data:n,keyword:s,it:i}=t,a=r.name("valid");for(let o in e)(0,uMt.alwaysValidSchema)(i,e[o])||(r.if((0,Mv.propertyInData)(r,n,o,i.opts.ownProperties),()=>{let c=t.subschema({keyword:s,schemaProp:o},a);t.mergeValidEvaluated(c,a)},()=>r.var(a,!0)),t.ok(a))}dl.validateSchemaDeps=kSe;dl.default=lMt});var BSe=_(k9=>{"use strict";Object.defineProperty(k9,"__esModule",{value:!0});var DSe=Et(),fMt=Yt(),pMt={message:"property name must be valid",params:({params:t})=>(0,DSe._)`{propertyName: ${t.propertyName}}`},mMt={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:pMt,code(t){let{gen:e,schema:r,data:n,it:s}=t;if((0,fMt.alwaysValidSchema)(s,r))return;let i=e.name("valid");e.forIn("key",n,a=>{t.setParams({propertyName:a}),t.subschema({keyword:"propertyNames",data:a,dataTypes:["string"],propertyName:a,compositeRule:!0},i),e.if((0,DSe.not)(i),()=>{t.error(!0),s.allErrors||e.break()})}),t.ok(i)}};k9.default=mMt});var D9=_(P9=>{"use strict";Object.defineProperty(P9,"__esModule",{value:!0});var eP=Ai(),au=Et(),hMt=dc(),tP=Yt(),gMt={message:"must NOT have additional properties",params:({params:t})=>(0,au._)`{additionalProperty: ${t.additionalProperty}}`},yMt={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:gMt,code(t){let{gen:e,schema:r,parentSchema:n,data:s,errsCount:i,it:a}=t;if(!i)throw new Error("ajv implementation error");let{allErrors:o,opts:c}=a;if(a.props=!0,c.removeAdditional!=="all"&&(0,tP.alwaysValidSchema)(a,r))return;let u=(0,eP.allSchemaProperties)(n.properties),l=(0,eP.allSchemaProperties)(n.patternProperties);d(),t.ok((0,au._)`${i} === ${hMt.default.errors}`);function d(){e.forIn("key",s,y=>{!u.length&&!l.length?m(y):e.if(f(y),()=>m(y))})}function f(y){let g;if(u.length>8){let b=(0,tP.schemaRefOrVal)(a,n.properties,"properties");g=(0,eP.isOwnProperty)(e,b,y)}else u.length?g=(0,au.or)(...u.map(b=>(0,au._)`${y} === ${b}`)):g=au.nil;return l.length&&(g=(0,au.or)(g,...l.map(b=>(0,au._)`${(0,eP.usePattern)(t,b)}.test(${y})`))),(0,au.not)(g)}function p(y){e.code((0,au._)`delete ${s}[${y}]`)}function m(y){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){p(y);return}if(r===!1){t.setParams({additionalProperty:y}),t.error(),o||e.break();return}if(typeof r=="object"&&!(0,tP.alwaysValidSchema)(a,r)){let g=e.name("valid");c.removeAdditional==="failing"?(h(y,g,!1),e.if((0,au.not)(g),()=>{t.reset(),p(y)})):(h(y,g),o||e.if((0,au.not)(g),()=>e.break()))}}function h(y,g,b){let x={keyword:"additionalProperties",dataProp:y,dataPropType:tP.Type.Str};b===!1&&Object.assign(x,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(x,g)}}};P9.default=yMt});var WSe=_(L9=>{"use strict";Object.defineProperty(L9,"__esModule",{value:!0});var AMt=XA(),LSe=Ai(),B9=Yt(),MSe=D9(),xMt={keyword:"properties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,parentSchema:n,data:s,it:i}=t;i.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&MSe.default.code(new AMt.KeywordCxt(i,MSe.default,"additionalProperties"));let a=(0,LSe.allSchemaProperties)(r);for(let d of a)i.definedProperties.add(d);i.opts.unevaluated&&a.length&&i.props!==!0&&(i.props=B9.mergeEvaluated.props(e,(0,B9.toHash)(a),i.props));let o=a.filter(d=>!(0,B9.alwaysValidSchema)(i,r[d]));if(o.length===0)return;let c=e.name("valid");for(let d of o)u(d)?l(d):(e.if((0,LSe.propertyInData)(e,s,d,i.opts.ownProperties)),l(d),i.allErrors||e.else().var(c,!0),e.endIf()),t.it.definedProperties.add(d),t.ok(c);function u(d){return i.opts.useDefaults&&!i.compositeRule&&r[d].default!==void 0}function l(d){t.subschema({keyword:"properties",schemaProp:d,dataProp:d},c)}}};L9.default=xMt});var qSe=_(M9=>{"use strict";Object.defineProperty(M9,"__esModule",{value:!0});var $Se=Ai(),rP=Et(),USe=Yt(),FSe=Yt(),bMt={keyword:"patternProperties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,data:n,parentSchema:s,it:i}=t,{opts:a}=i,o=(0,$Se.allSchemaProperties)(r),c=o.filter(h=>(0,USe.alwaysValidSchema)(i,r[h]));if(o.length===0||c.length===o.length&&(!i.opts.unevaluated||i.props===!0))return;let u=a.strictSchema&&!a.allowMatchingProperties&&s.properties,l=e.name("valid");i.props!==!0&&!(i.props instanceof rP.Name)&&(i.props=(0,FSe.evaluatedPropsToName)(e,i.props));let{props:d}=i;f();function f(){for(let h of o)u&&p(h),i.allErrors?m(h):(e.var(l,!0),m(h),e.if(l))}function p(h){for(let y in u)new RegExp(h).test(y)&&(0,USe.checkStrictMode)(i,`property ${y} matches pattern ${h} (use allowMatchingProperties)`)}function m(h){e.forIn("key",n,y=>{e.if((0,rP._)`${(0,$Se.usePattern)(t,h)}.test(${y})`,()=>{let g=c.includes(h);g||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:y,dataPropType:FSe.Type.Str},l),i.opts.unevaluated&&d!==!0?e.assign((0,rP._)`${d}[${y}]`,!0):!g&&!i.allErrors&&e.if((0,rP.not)(l),()=>e.break())})})}}};M9.default=bMt});var jSe=_(W9=>{"use strict";Object.defineProperty(W9,"__esModule",{value:!0});var _Mt=Yt(),EMt={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,_Mt.alwaysValidSchema)(n,r)){t.fail();return}let s=e.name("valid");t.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},s),t.failResult(s,()=>t.reset(),()=>t.error())},error:{message:"must NOT be valid"}};W9.default=EMt});var QSe=_($9=>{"use strict";Object.defineProperty($9,"__esModule",{value:!0});var vMt=Ai(),SMt={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:vMt.validateUnion,error:{message:"must match a schema in anyOf"}};$9.default=SMt});var HSe=_(U9=>{"use strict";Object.defineProperty(U9,"__esModule",{value:!0});var nP=Et(),IMt=Yt(),CMt={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,nP._)`{passingSchemas: ${t.passing}}`},TMt={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:CMt,code(t){let{gen:e,schema:r,parentSchema:n,it:s}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(s.opts.discriminator&&n.discriminator)return;let i=r,a=e.let("valid",!1),o=e.let("passing",null),c=e.name("_valid");t.setParams({passing:o}),e.block(u),t.result(a,()=>t.reset(),()=>t.error(!0));function u(){i.forEach((l,d)=>{let f;(0,IMt.alwaysValidSchema)(s,l)?e.var(c,!0):f=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,nP._)`${c} && ${a}`).assign(a,!1).assign(o,(0,nP._)`[${o}, ${d}]`).else(),e.if(c,()=>{e.assign(a,!0),e.assign(o,d),f&&t.mergeEvaluated(f,nP.Name)})})}}};U9.default=TMt});var GSe=_(F9=>{"use strict";Object.defineProperty(F9,"__esModule",{value:!0});var wMt=Yt(),RMt={keyword:"allOf",schemaType:"array",code(t){let{gen:e,schema:r,it:n}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");let s=e.name("valid");r.forEach((i,a)=>{if((0,wMt.alwaysValidSchema)(n,i))return;let o=t.subschema({keyword:"allOf",schemaProp:a},s);t.ok(s),t.mergeEvaluated(o)})}};F9.default=RMt});var VSe=_(q9=>{"use strict";Object.defineProperty(q9,"__esModule",{value:!0});var sP=Et(),KSe=Yt(),NMt={message:({params:t})=>(0,sP.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,sP._)`{failingKeyword: ${t.ifClause}}`},OMt={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:NMt,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,KSe.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let s=zSe(n,"then"),i=zSe(n,"else");if(!s&&!i)return;let a=e.let("valid",!0),o=e.name("_valid");if(c(),t.reset(),s&&i){let l=e.let("ifClause");t.setParams({ifClause:l}),e.if(o,u("then",l),u("else",l))}else s?e.if(o,u("then")):e.if((0,sP.not)(o),u("else"));t.pass(a,()=>t.error(!0));function c(){let l=t.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},o);t.mergeEvaluated(l)}function u(l,d){return()=>{let f=t.subschema({keyword:l},o);e.assign(a,o),t.mergeValidEvaluated(f,a),d?e.assign(d,(0,sP._)`${l}`):t.setParams({ifClause:l})}}}};function zSe(t,e){let r=t.schema[e];return r!==void 0&&!(0,KSe.alwaysValidSchema)(t,r)}q9.default=OMt});var YSe=_(j9=>{"use strict";Object.defineProperty(j9,"__esModule",{value:!0});var kMt=Yt(),PMt={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,kMt.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};j9.default=PMt});var JSe=_(Q9=>{"use strict";Object.defineProperty(Q9,"__esModule",{value:!0});var DMt=C9(),BMt=TSe(),LMt=T9(),MMt=RSe(),WMt=NSe(),$Mt=PSe(),UMt=BSe(),FMt=D9(),qMt=WSe(),jMt=qSe(),QMt=jSe(),HMt=QSe(),GMt=HSe(),zMt=GSe(),KMt=VSe(),VMt=YSe();function YMt(t=!1){let e=[QMt.default,HMt.default,GMt.default,zMt.default,KMt.default,VMt.default,UMt.default,FMt.default,$Mt.default,qMt.default,jMt.default];return t?e.push(BMt.default,MMt.default):e.push(DMt.default,LMt.default),e.push(WMt.default),e}Q9.default=YMt});var XSe=_(H9=>{"use strict";Object.defineProperty(H9,"__esModule",{value:!0});var fs=Et(),JMt={message:({schemaCode:t})=>(0,fs.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,fs._)`{format: ${t}}`},XMt={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:JMt,code(t,e){let{gen:r,data:n,$data:s,schema:i,schemaCode:a,it:o}=t,{opts:c,errSchemaPath:u,schemaEnv:l,self:d}=o;if(!c.validateFormats)return;s?f():p();function f(){let m=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),h=r.const("fDef",(0,fs._)`${m}[${a}]`),y=r.let("fType"),g=r.let("format");r.if((0,fs._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(y,(0,fs._)`${h}.type || "string"`).assign(g,(0,fs._)`${h}.validate`),()=>r.assign(y,(0,fs._)`"string"`).assign(g,h)),t.fail$data((0,fs.or)(b(),x()));function b(){return c.strictSchema===!1?fs.nil:(0,fs._)`${a} && !${g}`}function x(){let A=l.$async?(0,fs._)`(${h}.async ? await ${g}(${n}) : ${g}(${n}))`:(0,fs._)`${g}(${n})`,S=(0,fs._)`(typeof ${g} == "function" ? ${A} : ${g}.test(${n}))`;return(0,fs._)`${g} && ${g} !== true && ${y} === ${e} && !${S}`}}function p(){let m=d.formats[i];if(!m){b();return}if(m===!0)return;let[h,y,g]=x(m);h===e&&t.pass(A());function b(){if(c.strictSchema===!1){d.logger.warn(S());return}throw new Error(S());function S(){return`unknown format "${i}" ignored in schema at path "${u}"`}}function x(S){let I=S instanceof RegExp?(0,fs.regexpCode)(S):c.code.formats?(0,fs._)`${c.code.formats}${(0,fs.getProperty)(i)}`:void 0,R=r.scopeValue("formats",{key:i,ref:S,code:I});return typeof S=="object"&&!(S instanceof RegExp)?[S.type||"string",S.validate,(0,fs._)`${R}.validate`]:["string",S,R]}function A(){if(typeof m=="object"&&!(m instanceof RegExp)&&m.async){if(!l.$async)throw new Error("async format in sync schema");return(0,fs._)`await ${g}(${n})`}return typeof y=="function"?(0,fs._)`${g}(${n})`:(0,fs._)`${g}.test(${n})`}}}};H9.default=XMt});var ZSe=_(G9=>{"use strict";Object.defineProperty(G9,"__esModule",{value:!0});var ZMt=XSe(),eWt=[ZMt.default];G9.default=eWt});var eIe=_(rx=>{"use strict";Object.defineProperty(rx,"__esModule",{value:!0});rx.contentVocabulary=rx.metadataVocabulary=void 0;rx.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];rx.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var rIe=_(z9=>{"use strict";Object.defineProperty(z9,"__esModule",{value:!0});var tWt=uSe(),rWt=vSe(),nWt=JSe(),sWt=ZSe(),tIe=eIe(),iWt=[tWt.default,rWt.default,(0,nWt.default)(),sWt.default,tIe.metadataVocabulary,tIe.contentVocabulary];z9.default=iWt});var K9=_(iP=>{"use strict";Object.defineProperty(iP,"__esModule",{value:!0});iP.DiscrError=void 0;var nIe;(function(t){t.Tag="tag",t.Mapping="mapping"})(nIe||(iP.DiscrError=nIe={}))});var iIe=_(Y9=>{"use strict";Object.defineProperty(Y9,"__esModule",{value:!0});var nx=Et(),V9=K9(),sIe=mh(),aWt=Fd(),oWt=Yt(),cWt={message:({params:{discrError:t,tagName:e}})=>t===V9.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,nx._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},uWt={keyword:"discriminator",type:"object",schemaType:"object",error:cWt,code(t){let{gen:e,data:r,schema:n,parentSchema:s,it:i}=t,{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=e.let("valid",!1),u=e.const("tag",(0,nx._)`${r}${(0,nx.getProperty)(o)}`);e.if((0,nx._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:V9.DiscrError.Tag,tag:u,tagName:o})),t.ok(c);function l(){let p=f();e.if(!1);for(let m in p)e.elseIf((0,nx._)`${u} === ${m}`),e.assign(c,d(p[m]));e.else(),t.error(!1,{discrError:V9.DiscrError.Mapping,tag:u,tagName:o}),e.endIf()}function d(p){let m=e.name("valid"),h=t.subschema({keyword:"oneOf",schemaProp:p},m);return t.mergeEvaluated(h,nx.Name),m}function f(){var p;let m={},h=g(s),y=!0;for(let A=0;A{lWt.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 cIe=_((Pn,J9)=>{"use strict";Object.defineProperty(Pn,"__esModule",{value:!0});Pn.MissingRefError=Pn.ValidationError=Pn.CodeGen=Pn.Name=Pn.nil=Pn.stringify=Pn.str=Pn._=Pn.KeywordCxt=Pn.Ajv=void 0;var dWt=a9(),fWt=rIe(),pWt=iIe(),oIe=aIe(),mWt=["/properties"],aP="http://json-schema.org/draft-07/schema",sx=class extends dWt.default{_addVocabularies(){super._addVocabularies(),fWt.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(pWt.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(oIe,mWt):oIe;this.addMetaSchema(e,aP,!1),this.refs["http://json-schema.org/schema"]=aP}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(aP)?aP:void 0)}};Pn.Ajv=sx;J9.exports=Pn=sx;J9.exports.Ajv=sx;Object.defineProperty(Pn,"__esModule",{value:!0});Pn.default=sx;var hWt=XA();Object.defineProperty(Pn,"KeywordCxt",{enumerable:!0,get:function(){return hWt.KeywordCxt}});var ix=Et();Object.defineProperty(Pn,"_",{enumerable:!0,get:function(){return ix._}});Object.defineProperty(Pn,"str",{enumerable:!0,get:function(){return ix.str}});Object.defineProperty(Pn,"stringify",{enumerable:!0,get:function(){return ix.stringify}});Object.defineProperty(Pn,"nil",{enumerable:!0,get:function(){return ix.nil}});Object.defineProperty(Pn,"Name",{enumerable:!0,get:function(){return ix.Name}});Object.defineProperty(Pn,"CodeGen",{enumerable:!0,get:function(){return ix.CodeGen}});var gWt=Sv();Object.defineProperty(Pn,"ValidationError",{enumerable:!0,get:function(){return gWt.default}});var yWt=Fd();Object.defineProperty(Pn,"MissingRefError",{enumerable:!0,get:function(){return yWt.default}})});var jd=_(Wv=>{"use strict";Object.defineProperty(Wv,"__esModule",{value:!0});Wv.checkMetadata=void 0;var AWt=Yt(),xWt={keyword:"metadata",schemaType:"object",code(t){uIe(t);let{gen:e,schema:r,it:n}=t;if((0,AWt.alwaysValidSchema)(n,r))return;let s=e.name("valid");t.subschema({keyword:"metadata",jtdMetadata:!0},s),t.ok(s)}};function uIe({it:t,keyword:e},r){if(t.jtdMetadata!==r)throw new Error(`JTD: "${e}" cannot be used in this schema location`)}Wv.checkMetadata=uIe;Wv.default=xWt});var oP=_(Uv=>{"use strict";Object.defineProperty(Uv,"__esModule",{value:!0});Uv.hasRef=void 0;var lIe=mh(),$v=Et(),bWt=Fd(),dIe=dc(),fIe=c9(),_Wt=jd(),EWt={keyword:"ref",schemaType:"string",code(t){(0,_Wt.checkMetadata)(t);let{gen:e,data:r,schema:n,parentSchema:s,it:i}=t,{schemaEnv:{root:a}}=i,o=e.name("valid");s.nullable?(e.var(o,(0,$v._)`${r} === null`),e.if((0,$v.not)(o),c)):(e.var(o,!1),c()),t.ok(o);function c(){var d;let f=(d=a.schema.definitions)===null||d===void 0?void 0:d[n];if(!f)throw new bWt.default(i.opts.uriResolver,"",n,`No definition ${n}`);X9(f)||!i.opts.inlineRefs?u(f):l(f)}function u(d){let f=lIe.compileSchema.call(i.self,new lIe.SchemaEnv({schema:d,root:a,schemaPath:`/definitions/${n}`})),p=(0,fIe.getValidate)(t,f),m=e.const("_errs",dIe.default.errors);(0,fIe.callRef)(t,p,f,f.$async),e.assign(o,(0,$v._)`${m} === ${dIe.default.errors}`)}function l(d){let f=e.scopeValue("schema",i.opts.code.source===!0?{ref:d,code:(0,$v.stringify)(d)}:{ref:d});t.subschema({schema:d,dataTypes:[],schemaPath:$v.nil,topSchemaRef:f,errSchemaPath:`/definitions/${n}`},o)}}};function X9(t){for(let e in t){let r;if(e==="ref"||typeof(r=t[e])=="object"&&X9(r))return!0}return!1}Uv.hasRef=X9;Uv.default=EWt});var eq=_(Z9=>{"use strict";Object.defineProperty(Z9,"__esModule",{value:!0});var vWt=/t|\s/i,SWt=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,IWt=/^(\d\d):(\d\d):(\d\d)(?:\.\d+)?(?:z|([+-]\d\d)(?::?(\d\d))?)$/i,CWt=[0,31,28,31,30,31,30,31,31,30,31,30,31];function mIe(t,e){let r=t.split(vWt);return r.length===2&&pIe(r[0])&&TWt(r[1])||e&&r.length===1&&pIe(r[0])}Z9.default=mIe;function pIe(t){let e=SWt.exec(t);if(!e)return!1;let r=+e[1],n=+e[2],s=+e[3];return n>=1&&n<=12&&s>=1&&(s<=CWt[n]||n===2&&s===29&&(r%100===0?r%400===0:r%4===0))}function TWt(t){let e=IWt.exec(t);if(!e)return!1;let r=+e[1],n=+e[2],s=+e[3],i=+(e[4]||0),a=+(e[5]||0);return r<=23&&n<=59&&s<=59||r-i===23&&n-a===59&&s===60}mIe.code='require("ajv/dist/runtime/timestamp").default'});var ax=_(Jp=>{"use strict";Object.defineProperty(Jp,"__esModule",{value:!0});Jp.typeErrorParams=Jp.typeErrorMessage=Jp.typeError=void 0;var wWt=Et();function RWt(t){return{message:e=>hIe(e,t),params:e=>gIe(e,t)}}Jp.typeError=RWt;function hIe({parentSchema:t},e){return t?.nullable?`must be ${e} or null`:`must be ${e}`}Jp.typeErrorMessage=hIe;function gIe({parentSchema:t},e){return(0,wWt._)`{type: ${e}, nullable: ${!!t?.nullable}}`}Jp.typeErrorParams=gIe});var tq=_(ox=>{"use strict";Object.defineProperty(ox,"__esModule",{value:!0});ox.intRange=void 0;var No=Et(),NWt=eq(),OWt=Yt(),kWt=jd(),yIe=ax();ox.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 PWt={message:t=>(0,yIe.typeErrorMessage)(t,t.schema),params:t=>(0,yIe.typeErrorParams)(t,t.schema)};function DWt(t){let{gen:e,data:r,it:n}=t,{timestamp:s,allowDate:i}=n.opts;if(s==="date")return(0,No._)`${r} instanceof Date `;let a=(0,OWt.useFunc)(e,NWt.default),o=i?(0,No._)`, true`:No.nil,c=(0,No._)`typeof ${r} == "string" && ${a}(${r}${o})`;return s==="string"?c:(0,No.or)((0,No._)`${r} instanceof Date`,c)}var BWt={keyword:"type",schemaType:"string",error:PWt,code(t){(0,kWt.checkMetadata)(t);let{data:e,schema:r,parentSchema:n,it:s}=t,i;switch(r){case"boolean":case"string":i=(0,No._)`typeof ${e} == ${r}`;break;case"timestamp":{i=DWt(t);break}case"float32":case"float64":i=(0,No._)`typeof ${e} == "number"`;break;default:{let a=r;if(i=(0,No._)`typeof ${e} == "number" && isFinite(${e}) && !(${e} % 1)`,!s.opts.int32range&&(a==="int32"||a==="uint32"))a==="uint32"&&(i=(0,No._)`${i} && ${e} >= 0`);else{let[o,c]=ox.intRange[a];i=(0,No._)`${i} && ${e} >= ${o} && ${e} <= ${c}`}}}t.pass(n.nullable?(0,No.or)((0,No._)`${e} === null`,i):i)}};ox.default=BWt});var ux=_(cx=>{"use strict";Object.defineProperty(cx,"__esModule",{value:!0});cx.checkNullableObject=cx.checkNullable=void 0;var cP=Et();function AIe({gen:t,data:e,parentSchema:r},n=cP.nil){let s=t.name("valid");return r.nullable?(t.let(s,(0,cP._)`${e} === null`),n=(0,cP.not)(s)):t.let(s,!1),[s,n]}cx.checkNullable=AIe;function LWt(t,e){let[r,n]=AIe(t,e);return[r,(0,cP._)`${n} && typeof ${t.data} == "object" && !Array.isArray(${t.data})`]}cx.checkNullableObject=LWt});var xIe=_(rq=>{"use strict";Object.defineProperty(rq,"__esModule",{value:!0});var Xp=Et(),MWt=jd(),WWt=ux(),$Wt={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,Xp._)`{allowedValues: ${t}}`},UWt={keyword:"enum",schemaType:"array",error:$Wt,code(t){(0,MWt.checkMetadata)(t);let{gen:e,data:r,schema:n,schemaValue:s,parentSchema:i,it:a}=t;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,Xp._)`typeof ${r} == "string"`;if(n.length>=a.opts.loopEnum){let l;[o,l]=(0,WWt.checkNullable)(t,c),e.if(l,u)}else{if(!Array.isArray(n))throw new Error("ajv implementation error");o=(0,Xp.and)(c,(0,Xp.or)(...n.map(l=>(0,Xp._)`${r} === ${l}`))),i.nullable&&(o=(0,Xp.or)((0,Xp._)`${r} === null`,o))}t.pass(o);function u(){e.forOf("v",s,l=>e.if((0,Xp._)`${o} = ${r} === ${l}`,()=>e.break()))}}};rq.default=UWt});var _Ie=_(nq=>{"use strict";Object.defineProperty(nq,"__esModule",{value:!0});var FWt=Yt(),qWt=Ai(),bIe=Et(),jWt=jd(),QWt=ux(),HWt=ax(),GWt={keyword:"elements",schemaType:"object",error:(0,HWt.typeError)("array"),code(t){(0,jWt.checkMetadata)(t);let{gen:e,data:r,schema:n,it:s}=t;if((0,FWt.alwaysValidSchema)(s,n))return;let[i]=(0,QWt.checkNullable)(t);e.if((0,bIe.not)(i),()=>e.if((0,bIe._)`Array.isArray(${r})`,()=>e.assign(i,(0,qWt.validateArray)(t)),()=>t.error())),t.ok(i)}};nq.default=GWt});var iq=_(Zp=>{"use strict";Object.defineProperty(Zp,"__esModule",{value:!0});Zp.validateProperties=Zp.error=void 0;var sq=Ai(),EIe=Yt(),Qd=Et(),zWt=jd(),KWt=ux(),vIe=ax(),lx;(function(t){t.Additional="additional",t.Missing="missing"})(lx||(lx={}));Zp.error={message:t=>{let{params:e}=t;return e.propError?e.propError===lx.Additional?"must NOT have additional properties":`must have property '${e.missingProperty}'`:(0,vIe.typeErrorMessage)(t,"object")},params:t=>{let{params:e}=t;return e.propError?e.propError===lx.Additional?(0,Qd._)`{error: ${e.propError}, additionalProperty: ${e.additionalProperty}}`:(0,Qd._)`{error: ${e.propError}, missingProperty: ${e.missingProperty}}`:(0,vIe.typeErrorParams)(t,"object")}};var VWt={keyword:"properties",schemaType:"object",error:Zp.error,code:SIe};function SIe(t){(0,zWt.checkMetadata)(t);let{gen:e,data:r,parentSchema:n,it:s}=t,{additionalProperties:i,nullable:a}=n;if(s.jtdDiscriminator&&a)throw new Error("JTD: nullable inside discriminator mapping");if(p())throw new Error("JTD: properties and optionalProperties have common members");let[o,c]=m("properties"),[u,l]=m("optionalProperties");if(c.length===0&&l.length===0&&i)return;let[d,f]=s.jtdDiscriminator===void 0?(0,KWt.checkNullableObject)(t,r):[e.let("valid",!1),!0];e.if(f,()=>e.assign(d,!0).block(()=>{h(c,"properties",!0),h(l,"optionalProperties"),i||g()})),t.pass(d);function p(){let x=n.properties,A=n.optionalProperties;if(!(x&&A))return!1;for(let S in x)if(Object.prototype.hasOwnProperty.call(A,S))return!0;return!1}function m(x){let A=n[x],S=A?(0,sq.allSchemaProperties)(A):[];if(s.jtdDiscriminator&&S.some(R=>R===s.jtdDiscriminator))throw new Error(`JTD: discriminator tag used in ${x}`);let I=S.filter(R=>!(0,EIe.alwaysValidSchema)(s,A[R]));return[S,I]}function h(x,A,S){let I=e.var("valid");for(let w of x)e.if((0,sq.propertyInData)(e,r,w,s.opts.ownProperties),()=>y(w,A,I),()=>R(w)),t.ok(I);function R(w){S?(e.assign(I,!1),t.error(!1,{propError:lx.Missing,missingProperty:w},{schemaPath:w})):e.assign(I,!0)}}function y(x,A,S){t.subschema({keyword:A,schemaProp:x,dataProp:x},S)}function g(){e.forIn("key",r,x=>{let A=b(x,o,"properties",s.jtdDiscriminator),S=b(x,u,"optionalProperties"),I=A===!0?S:S===!0?A:(0,Qd.and)(A,S);e.if(I,()=>{s.opts.removeAdditional?e.code((0,Qd._)`delete ${r}[${x}]`):(t.error(!1,{propError:lx.Additional,additionalProperty:x},{instancePath:x,parentSchema:!0}),s.opts.allErrors||e.break())})})}function b(x,A,S,I){let R;if(A.length>8){let w=(0,EIe.schemaRefOrVal)(s,n[S],S);R=(0,Qd.not)((0,sq.isOwnProperty)(e,w,x)),I!==void 0&&(R=(0,Qd.and)(R,(0,Qd._)`${x} !== ${I}`))}else if(A.length||I!==void 0){let w=I===void 0?A:[I].concat(A);R=(0,Qd.and)(...w.map(N=>(0,Qd._)`${x} !== ${N}`))}else R=!0;return R}}Zp.validateProperties=SIe;Zp.default=VWt});var CIe=_(aq=>{"use strict";Object.defineProperty(aq,"__esModule",{value:!0});var IIe=iq(),YWt={keyword:"optionalProperties",schemaType:"object",error:IIe.error,code(t){t.parentSchema.properties||(0,IIe.validateProperties)(t)}};aq.default=YWt});var wIe=_(oq=>{"use strict";Object.defineProperty(oq,"__esModule",{value:!0});var Ah=Et(),JWt=jd(),XWt=ux(),TIe=ax(),uP=K9(),ZWt={message:t=>{let{schema:e,params:r}=t;return r.discrError?r.discrError===uP.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in mapping`:(0,TIe.typeErrorMessage)(t,"object")},params:t=>{let{schema:e,params:r}=t;return r.discrError?(0,Ah._)`{error: ${r.discrError}, tag: ${e}, tagValue: ${r.tag}}`:(0,TIe.typeErrorParams)(t,"object")}},e8t={keyword:"discriminator",schemaType:"string",implements:["mapping"],error:ZWt,code(t){(0,JWt.checkMetadata)(t);let{gen:e,data:r,schema:n,parentSchema:s}=t,[i,a]=(0,XWt.checkNullableObject)(t,r);e.if(a),o(),e.elseIf((0,Ah.not)(i)),t.error(),e.endIf(),t.ok(i);function o(){let l=e.const("tag",(0,Ah._)`${r}${(0,Ah.getProperty)(n)}`);e.if((0,Ah._)`${l} === undefined`),t.error(!1,{discrError:uP.DiscrError.Tag,tag:l}),e.elseIf((0,Ah._)`typeof ${l} == "string"`),c(l),e.else(),t.error(!1,{discrError:uP.DiscrError.Tag,tag:l},{instancePath:n}),e.endIf()}function c(l){e.if(!1);for(let d in s.mapping)e.elseIf((0,Ah._)`${l} === ${d}`),e.assign(i,u(d));e.else(),t.error(!1,{discrError:uP.DiscrError.Mapping,tag:l},{instancePath:n,schemaPath:"mapping",parentSchema:!0}),e.endIf()}function u(l){let d=e.name("valid");return t.subschema({keyword:"mapping",schemaProp:l,jtdDiscriminator:n},d),d}}};oq.default=e8t});var NIe=_(cq=>{"use strict";Object.defineProperty(cq,"__esModule",{value:!0});var RIe=Yt(),lP=Et(),t8t=jd(),r8t=ux(),n8t=ax(),s8t={keyword:"values",schemaType:"object",error:(0,n8t.typeError)("object"),code(t){(0,t8t.checkMetadata)(t);let{gen:e,data:r,schema:n,it:s}=t,[i,a]=(0,r8t.checkNullableObject)(t,r);(0,RIe.alwaysValidSchema)(s,n)?e.if((0,lP.not)((0,lP.or)(a,i)),()=>t.error()):(e.if(a),e.assign(i,o()),e.elseIf((0,lP.not)(i)),t.error(),e.endIf()),t.ok(i);function o(){let c=e.name("valid");if(s.allErrors){let l=e.let("valid",!0);return u(()=>e.assign(l,!1)),l}return e.var(c,!0),u(()=>e.break()),c;function u(l){e.forIn("key",r,d=>{t.subschema({keyword:"values",dataProp:d,dataPropType:RIe.Type.Str},c),e.if((0,lP.not)(c),l)})}}}};cq.default=s8t});var OIe=_(uq=>{"use strict";Object.defineProperty(uq,"__esModule",{value:!0});var i8t=Ai(),a8t={keyword:"union",schemaType:"array",trackErrors:!0,code:i8t.validateUnion,error:{message:"must match a schema in union"}};uq.default=a8t});var kIe=_(lq=>{"use strict";Object.defineProperty(lq,"__esModule",{value:!0});var o8t=oP(),c8t=tq(),u8t=xIe(),l8t=_Ie(),d8t=iq(),f8t=CIe(),p8t=wIe(),m8t=NIe(),h8t=OIe(),g8t=jd(),y8t=["definitions",o8t.default,c8t.default,u8t.default,l8t.default,d8t.default,f8t.default,p8t.default,m8t.default,h8t.default,g8t.default,{keyword:"additionalProperties",schemaType:"boolean"},{keyword:"nullable",schemaType:"boolean"}];lq.default=y8t});var LIe=_(dq=>{"use strict";Object.defineProperty(dq,"__esModule",{value:!0});var Hd=t=>{let e={nullable:{type:"boolean"},metadata:{optionalProperties:{union:{elements:{ref:"schema"}}},additionalProperties:!0}};return t&&(e.definitions={values:{ref:"schema"}}),e},A8t=t=>({optionalProperties:Hd(t)}),x8t=t=>({properties:{ref:{type:"string"}},optionalProperties:Hd(t)}),b8t=t=>({properties:{type:{enum:["boolean","timestamp","string","float32","float64","int8","uint8","int16","uint16","int32","uint32"]}},optionalProperties:Hd(t)}),_8t=t=>({properties:{enum:{elements:{type:"string"}}},optionalProperties:Hd(t)}),E8t=t=>({properties:{elements:{ref:"schema"}},optionalProperties:Hd(t)}),DIe=t=>({properties:{properties:{values:{ref:"schema"}}},optionalProperties:{optionalProperties:{values:{ref:"schema"}},additionalProperties:{type:"boolean"},...Hd(t)}}),BIe=t=>({properties:{optionalProperties:{values:{ref:"schema"}}},optionalProperties:{additionalProperties:{type:"boolean"},...Hd(t)}}),v8t=t=>({properties:{discriminator:{type:"string"},mapping:{values:{metadata:{union:[DIe(!1),BIe(!1)]}}}},optionalProperties:Hd(t)}),S8t=t=>({properties:{values:{ref:"schema"}},optionalProperties:Hd(t)}),PIe=t=>({metadata:{union:[A8t,x8t,b8t,_8t,E8t,DIe,BIe,v8t,S8t].map(e=>e(t))}}),I8t={definitions:{schema:PIe(!1)},...PIe(!0)};dq.default=I8t});var fq=_(dP=>{"use strict";Object.defineProperty(dP,"__esModule",{value:!0});dP.jtdForms=void 0;dP.jtdForms=["elements","values","discriminator","properties","optionalProperties","enum","type","ref"]});var WIe=_(mq=>{"use strict";Object.defineProperty(mq,"__esModule",{value:!0});var pq=/[\\"\u0000-\u001f\u007f-\u009f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,C8t={"\b":"\\b"," ":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"};function MIe(t){return pq.lastIndex=0,'"'+(pq.test(t)?t.replace(pq,e=>{let r=C8t[e];return typeof r=="string"?r:"\\u"+("0000"+e.charCodeAt(0).toString(16)).slice(-4)}):t)+'"'}mq.default=MIe;MIe.code='require("ajv/dist/runtime/quote").default'});var QIe=_(gq=>{"use strict";Object.defineProperty(gq,"__esModule",{value:!0});var T8t=fq(),UIe=mh(),yr=Et(),w8t=Fd(),_n=dc(),R8t=Ai(),N8t=oP(),O8t=Yt(),k8t=WIe(),P8t={elements:B8t,values:L8t,discriminator:M8t,properties:$Ie,optionalProperties:$Ie,enum:Fv,type:W8t,ref:U8t};function FIe(t,e){let r=UIe.getCompilingSchema.call(this,t);if(r)return r;let{es5:n,lines:s}=this.opts.code,{ownProperties:i}=this.opts,a=new yr.CodeGen(this.scope,{es5:n,lines:s,ownProperties:i}),o=a.scopeName("serialize"),c={self:this,gen:a,schema:t.schema,schemaEnv:t,definitions:e,data:_n.default.data},u;try{this._compilations.add(t),t.serializeName=o,a.func(o,_n.default.data,!1,()=>{a.let(_n.default.json,(0,yr.str)``),qv(c),a.return(_n.default.json)}),a.optimize(this.opts.code.optimize);let l=a.toString();u=`${a.scopeRefs(_n.default.scope)}return ${l}`;let f=new Function(`${_n.default.scope}`,u)(this.scope.get());this.scope.value(o,{ref:f}),t.serialize=f}catch(l){throw u&&this.logger.error("Error compiling serializer, function code:",u),delete t.serialize,delete t.serializeName,l}finally{this._compilations.delete(t)}return t}gq.default=FIe;function qv(t){let e;for(let r of T8t.jtdForms)if(r in t.schema){e=r;break}D8t(t,e?P8t[e]:q8t)}function D8t(t,e){let{gen:r,schema:n,data:s}=t;if(!n.nullable)return e(t);r.if((0,yr._)`${s} === undefined || ${s} === null`,()=>r.add(_n.default.json,(0,yr._)`"null"`),()=>e(t))}function B8t(t){let{gen:e,schema:r,data:n}=t;e.add(_n.default.json,(0,yr.str)`[`);let s=e.let("first",!0);e.forOf("el",n,i=>{hq(t,s),qv({...t,schema:r.elements,data:i})}),e.add(_n.default.json,(0,yr.str)`]`)}function L8t(t){let{gen:e,schema:r,data:n}=t;e.add(_n.default.json,(0,yr.str)`{`);let s=e.let("first",!0);e.forIn("key",n,i=>qIe(t,i,r.values,s)),e.add(_n.default.json,(0,yr.str)`}`)}function qIe(t,e,r,n){let{gen:s,data:i}=t;hq(t,n),Fv({...t,data:e}),s.add(_n.default.json,(0,yr.str)`:`);let a=s.const("value",(0,yr._)`${i}${(0,yr.getProperty)(e)}`);qv({...t,schema:r,data:a})}function M8t(t){let{gen:e,schema:r,data:n}=t,{discriminator:s}=r;e.add(_n.default.json,(0,yr.str)`{${JSON.stringify(s)}:`);let i=e.const("tag",(0,yr._)`${n}${(0,yr.getProperty)(s)}`);Fv({...t,data:i}),e.if(!1);for(let a in r.mapping){e.elseIf((0,yr._)`${i} === ${a}`);let o=r.mapping[a];jIe({...t,schema:o},s)}e.endIf(),e.add(_n.default.json,(0,yr.str)`}`)}function $Ie(t){let{gen:e}=t;e.add(_n.default.json,(0,yr.str)`{`),jIe(t),e.add(_n.default.json,(0,yr.str)`}`)}function jIe(t,e){let{gen:r,schema:n,data:s}=t,{properties:i,optionalProperties:a}=n,o=f(i),c=f(a),u=p(o.concat(c)),l=!e,d;for(let g of o)l?l=!1:r.add(_n.default.json,(0,yr.str)`,`),h(g,i[g],m(g));l&&(d=r.let("first",!0));for(let g of c){let b=m(g);r.if((0,yr.and)((0,yr._)`${b} !== undefined`,(0,R8t.isOwnProperty)(r,s,g)),()=>{hq(t,d),h(g,a[g],b)})}n.additionalProperties&&r.forIn("key",s,g=>r.if(y(g,u),()=>qIe(t,g,{},d)));function f(g){return g?Object.keys(g):[]}function p(g){if(e&&g.push(e),new Set(g).size!==g.length)throw new Error("JTD: properties/optionalProperties/disciminator overlap");return g}function m(g){return r.const("value",(0,yr._)`${s}${(0,yr.getProperty)(g)}`)}function h(g,b,x){r.add(_n.default.json,(0,yr.str)`${JSON.stringify(g)}:`),qv({...t,schema:b,data:x})}function y(g,b){return b.length?(0,yr.and)(...b.map(x=>(0,yr._)`${g} !== ${x}`)):!0}}function W8t(t){let{gen:e,schema:r,data:n}=t;switch(r.type){case"boolean":e.add(_n.default.json,(0,yr._)`${n} ? "true" : "false"`);break;case"string":Fv(t);break;case"timestamp":e.if((0,yr._)`${n} instanceof Date`,()=>e.add(_n.default.json,(0,yr._)`'"' + ${n}.toISOString() + '"'`),()=>Fv(t));break;default:$8t(t)}}function Fv({gen:t,data:e}){t.add(_n.default.json,(0,yr._)`${(0,O8t.useFunc)(t,k8t.default)}(${e})`)}function $8t({gen:t,data:e}){t.add(_n.default.json,(0,yr._)`"" + ${e}`)}function U8t(t){let{gen:e,self:r,data:n,definitions:s,schema:i,schemaEnv:a}=t,{ref:o}=i,c=s[o];if(!c)throw new w8t.default(r.opts.uriResolver,"",o,`No definition ${o}`);if(!(0,N8t.hasRef)(c))return qv({...t,schema:c});let{root:u}=a,l=FIe.call(r,new UIe.SchemaEnv({schema:c,root:u}),s);e.add(_n.default.json,(0,yr._)`${F8t(e,l)}(${n})`)}function F8t(t,e){return e.serialize?t.scopeValue("serialize",{ref:e.serialize}):(0,yr._)`${t.scopeValue("wrapper",{ref:e})}.serialize`}function q8t({gen:t,data:e}){t.add(_n.default.json,(0,yr._)`JSON.stringify(${e})`)}function hq({gen:t},e){e?t.if(e,()=>t.assign(e,!1),()=>t.add(_n.default.json,(0,yr.str)`,`)):t.add(_n.default.json,(0,yr.str)`,`)}});var GIe=_(t0=>{"use strict";Object.defineProperty(t0,"__esModule",{value:!0});t0.parseJsonString=t0.parseJsonNumber=t0.parseJson=void 0;var j8t=/position\s(\d+)(?: \(line \d+ column \d+\))?$/;function Gd(t,e){let r;Gd.message=void 0;let n;e&&(t=t.slice(e));try{return Gd.position=e+t.length,JSON.parse(t)}catch(s){if(n=j8t.exec(s.message),!n){Gd.message="unexpected end";return}r=+n[1];let i=t[r];t=t.slice(0,r),Gd.position=e+r;try{return JSON.parse(t)}catch{Gd.message=`unexpected token ${i}`;return}}}t0.parseJson=Gd;Gd.message=void 0;Gd.position=0;Gd.code='require("ajv/dist/runtime/parseJson").parseJson';function zd(t,e,r){let n="",s;if(zd.message=void 0,t[e]==="-"&&(n+="-",e++),t[e]==="0")n+="0",e++;else if(!i(r)){a();return}if(r)return zd.position=e,+n;if(t[e]==="."&&(n+=".",e++,!i())){a();return}if(s=t[e],(s==="e"||s==="E")&&(n+="e",e++,s=t[e],(s==="+"||s==="-")&&(n+=s,e++),!i())){a();return}return zd.position=e,+n;function i(o){let c=!1;for(;s=t[e],s>="0"&&s<="9"&&(o===void 0||o-- >0);)c=!0,n+=s,e++;return c}function a(){zd.position=e,zd.message=e="a"&&n<="f")a+=n.charCodeAt(0)-Q8t+10;else if(n>="0"&&n<="9")a+=n.charCodeAt(0)-H8t;else{s(`unexpected token ${n}`);return}e++}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 e0.position=e,r;function s(i){e0.position=e,e0.message=i}}t0.parseJsonString=e0;e0.message=void 0;e0.position=0;e0.code='require("ajv/dist/runtime/parseJson").parseJsonString'});var nCe=_(Sq=>{"use strict";Object.defineProperty(Sq,"__esModule",{value:!0});var G8t=fq(),YIe=mh(),lt=Et(),z8t=Fd(),pr=dc(),K8t=Ai(),V8t=oP(),Y8t=tq(),xq=GIe(),JIe=Yt(),J8t=eq(),X8t={elements:r$t,values:n$t,discriminator:i$t,properties:zIe,optionalProperties:zIe,enum:o$t,type:a$t,ref:c$t};function XIe(t,e){let r=YIe.getCompilingSchema.call(this,t);if(r)return r;let{es5:n,lines:s}=this.opts.code,{ownProperties:i}=this.opts,a=new lt.CodeGen(this.scope,{es5:n,lines:s,ownProperties:i}),o=a.scopeName("parse"),c={self:this,gen:a,schema:t.schema,schemaEnv:t,definitions:e,data:pr.default.data,parseName:o,char:a.name("c")},u;try{this._compilations.add(t),t.parseName=o,Z8t(c),a.optimize(this.opts.code.optimize);let l=a.toString();u=`${a.scopeRefs(pr.default.scope)}return ${l}`;let f=new Function(`${pr.default.scope}`,u)(this.scope.get());this.scope.value(o,{ref:f}),t.parse=f}catch(l){throw u&&this.logger.error("Error compiling parser, function code:",u),delete t.parse,delete t.parseName,l}finally{this._compilations.delete(t)}return t}Sq.default=XIe;var Aq=(0,lt._)`undefined`;function Z8t(t){let{gen:e,parseName:r,char:n}=t;e.func(r,(0,lt._)`${pr.default.json}, ${pr.default.jsonPos}, ${pr.default.jsonPart}`,!1,()=>{e.let(pr.default.data),e.let(n),e.assign((0,lt._)`${r}.message`,Aq),e.assign((0,lt._)`${r}.position`,Aq),e.assign(pr.default.jsonPos,(0,lt._)`${pr.default.jsonPos} || 0`),e.const(pr.default.jsonLen,(0,lt._)`${pr.default.json}.length`),fP(t),vq(t),e.if(pr.default.jsonPart,()=>{e.assign((0,lt._)`${r}.position`,pr.default.jsonPos),e.return(pr.default.data)}),e.if((0,lt._)`${pr.default.jsonPos} === ${pr.default.jsonLen}`,()=>e.return(pr.default.data)),dx(t)})}function fP(t){let e;for(let r of G8t.jtdForms)if(r in t.schema){e=r;break}e?t$t(t,X8t[e]):_q(t)}var e$t=VIe(!0,VIe(!1,dx));function t$t(t,e){let{gen:r,schema:n,data:s}=t;if(!n.nullable)return e(t);jv(t,"null",e,()=>r.assign(s,null))}function r$t(t){let{gen:e,schema:r,data:n}=t;fl(t,"[");let s=e.let("i",0);e.assign(n,(0,lt._)`[]`),bq(t,"]",()=>{let i=e.let("el");fP({...t,schema:r.elements,data:i}),e.assign((0,lt._)`${n}[${s}++]`,i)})}function n$t(t){let{gen:e,schema:r,data:n}=t;fl(t,"{"),e.assign(n,(0,lt._)`{}`),bq(t,"}",()=>s$t(t,r.values))}function bq(t,e,r){ZIe(t,e,r),fl(t,e)}function ZIe(t,e,r){let{gen:n}=t;n.for((0,lt._)`;${pr.default.jsonPos}<${pr.default.jsonLen} && ${pP(1)}!==${e};`,()=>{r(),jv(t,",",()=>n.break(),s)});function s(){jv(t,e,()=>{},dx)}}function s$t(t,e){let{gen:r}=t,n=r.let("key");xh({...t,data:n}),fl(t,":"),tCe(t,n,e)}function i$t(t){let{gen:e,data:r,schema:n}=t,{discriminator:s,mapping:i}=n;fl(t,"{"),e.assign(r,(0,lt._)`{}`);let a=e.const("pos",pr.default.jsonPos),o=e.let("value"),c=e.let("tag");ZIe(t,"}",()=>{let u=e.let("key");xh({...t,data:u}),fl(t,":"),e.if((0,lt._)`${u} === ${s}`,()=>{xh({...t,data:c}),e.assign((0,lt._)`${r}[${u}]`,c),e.break()},()=>_q({...t,data:o}))}),e.assign(pr.default.jsonPos,a),e.if((0,lt._)`${c} === undefined`),Kd(t,(0,lt.str)`discriminator tag not found`);for(let u in i)e.elseIf((0,lt._)`${c} === ${u}`),eCe({...t,schema:i[u]},s);e.else(),Kd(t,(0,lt.str)`discriminator value not in schema`),e.endIf()}function zIe(t){let{gen:e,data:r}=t;fl(t,"{"),e.assign(r,(0,lt._)`{}`),eCe(t)}function eCe(t,e){let{gen:r,schema:n,data:s}=t,{properties:i,optionalProperties:a,additionalProperties:o}=n;if(bq(t,"}",()=>{let c=r.let("key");if(xh({...t,data:c}),fl(t,":"),r.if(!1),KIe(t,c,i),KIe(t,c,a),e){r.elseIf((0,lt._)`${c} === ${e}`);let u=r.let("tag");xh({...t,data:u})}r.else(),o?_q({...t,data:(0,lt._)`${s}[${c}]`}):Kd(t,(0,lt.str)`property ${c} not allowed`),r.endIf()}),i){let c=(0,K8t.hasPropFunc)(r),u=(0,lt.and)(...Object.keys(i).map(l=>(0,lt._)`${c}.call(${s}, ${l})`));r.if((0,lt.not)(u),()=>Kd(t,(0,lt.str)`missing required properties`))}}function KIe(t,e,r={}){let{gen:n}=t;for(let s in r)n.elseIf((0,lt._)`${e} === ${s}`),tCe(t,e,r[s])}function tCe(t,e,r){fP({...t,schema:r,data:(0,lt._)`${t.data}[${e}]`})}function a$t(t){let{gen:e,schema:r,data:n,self:s}=t;switch(r.type){case"boolean":e$t(t);break;case"string":xh(t);break;case"timestamp":{xh(t);let i=(0,JIe.useFunc)(e,J8t.default),{allowDate:a,parseDate:o}=s.opts,c=a?(0,lt._)`!${i}(${n}, true)`:(0,lt._)`!${i}(${n})`,u=o?(0,lt.or)(c,(0,lt._)`(${n} = new Date(${n}), false)`,(0,lt._)`isNaN(${n}.valueOf())`):c;e.if(u,()=>Kd(t,(0,lt.str)`invalid timestamp`));break}case"float32":case"float64":yq(t);break;default:{let i=r.type;if(!s.opts.int32range&&(i==="int32"||i==="uint32"))yq(t,16),i==="uint32"&&e.if((0,lt._)`${n} < 0`,()=>Kd(t,(0,lt.str)`integer out of range`));else{let[a,o,c]=Y8t.intRange[i];yq(t,c),e.if((0,lt._)`${n} < ${a} || ${n} > ${o}`,()=>Kd(t,(0,lt.str)`integer out of range`))}}}}function xh(t){fl(t,'"'),Eq(t,xq.parseJsonString)}function o$t(t){let{gen:e,data:r,schema:n}=t,s=n.enum;fl(t,'"'),e.if(!1);for(let i of s){let a=JSON.stringify(i).slice(1);e.elseIf((0,lt._)`${pP(a.length)} === ${a}`),e.assign(r,(0,lt.str)`${i}`),e.add(pr.default.jsonPos,a.length)}e.else(),dx(t),e.endIf()}function yq(t,e){let{gen:r}=t;vq(t),r.if((0,lt._)`"-0123456789".indexOf(${pP(1)}) < 0`,()=>dx(t),()=>Eq(t,xq.parseJsonNumber,e))}function VIe(t,e){return r=>{let{gen:n,data:s}=r;jv(r,`${t}`,()=>e(r),()=>n.assign(s,t))}}function c$t(t){let{gen:e,self:r,definitions:n,schema:s,schemaEnv:i}=t,{ref:a}=s,o=n[a];if(!o)throw new z8t.default(r.opts.uriResolver,"",a,`No definition ${a}`);if(!(0,V8t.hasRef)(o))return fP({...t,schema:o});let{root:c}=i,u=XIe.call(r,new YIe.SchemaEnv({schema:o,root:c}),n);rCe(t,u$t(e,u),!0)}function u$t(t,e){return e.parse?t.scopeValue("parse",{ref:e.parse}):(0,lt._)`${t.scopeValue("wrapper",{ref:e})}.parse`}function _q(t){Eq(t,xq.parseJson)}function Eq(t,e,r){rCe(t,(0,JIe.useFunc)(t.gen,e),r)}function rCe(t,e,r){let{gen:n,data:s}=t;n.assign(s,(0,lt._)`${e}(${pr.default.json}, ${pr.default.jsonPos}${r?(0,lt._)`, ${r}`:lt.nil})`),n.assign(pr.default.jsonPos,(0,lt._)`${e}.position`),n.if((0,lt._)`${s} === undefined`,()=>Kd(t,(0,lt._)`${e}.message`))}function fl(t,e){jv(t,e,dx)}function jv(t,e,r,n){let{gen:s}=t,i=e.length;vq(t),s.if((0,lt._)`${pP(i)} === ${e}`,()=>{s.add(pr.default.jsonPos,i),n?.(t)},()=>r(t))}function vq({gen:t,char:e}){t.code((0,lt._)`while((${e}=${pr.default.json}[${pr.default.jsonPos}],${e}===" "||${e}==="\\n"||${e}==="\\r"||${e}==="\\t"))${pr.default.jsonPos}++;`)}function pP(t){return t===1?(0,lt._)`${pr.default.json}[${pr.default.jsonPos}]`:(0,lt._)`${pr.default.json}.slice(${pr.default.jsonPos}, ${pr.default.jsonPos}+${t})`}function dx(t){Kd(t,(0,lt._)`"unexpected token " + ${pr.default.json}[${pr.default.jsonPos}]`)}function Kd({gen:t,parseName:e},r){t.assign((0,lt._)`${e}.message`,r),t.assign((0,lt._)`${e}.position`,pr.default.jsonPos),t.return(Aq)}});var Tq=_((Dn,Cq)=>{"use strict";Object.defineProperty(Dn,"__esModule",{value:!0});Dn.MissingRefError=Dn.ValidationError=Dn.CodeGen=Dn.Name=Dn.nil=Dn.stringify=Dn.str=Dn._=Dn.KeywordCxt=Dn.Ajv=void 0;var l$t=a9(),d$t=kIe(),f$t=LIe(),p$t=QIe(),m$t=nCe(),Iq="JTD-meta-schema",fx=class extends l$t.default{constructor(e={}){super({...e,jtd:!0})}_addVocabularies(){super._addVocabularies(),this.addVocabulary(d$t.default)}_addDefaultMetaSchema(){super._addDefaultMetaSchema(),this.opts.meta&&this.addMetaSchema(f$t.default,Iq,!1)}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(Iq)?Iq:void 0)}compileSerializer(e){let r=this._addSchema(e);return r.serialize||this._compileSerializer(r)}compileParser(e){let r=this._addSchema(e);return r.parse||this._compileParser(r)}_compileSerializer(e){if(p$t.default.call(this,e,e.schema.definitions||{}),!e.serialize)throw new Error("ajv implementation error");return e.serialize}_compileParser(e){if(m$t.default.call(this,e,e.schema.definitions||{}),!e.parse)throw new Error("ajv implementation error");return e.parse}};Dn.Ajv=fx;Cq.exports=Dn=fx;Cq.exports.Ajv=fx;Object.defineProperty(Dn,"__esModule",{value:!0});Dn.default=fx;var h$t=XA();Object.defineProperty(Dn,"KeywordCxt",{enumerable:!0,get:function(){return h$t.KeywordCxt}});var px=Et();Object.defineProperty(Dn,"_",{enumerable:!0,get:function(){return px._}});Object.defineProperty(Dn,"str",{enumerable:!0,get:function(){return px.str}});Object.defineProperty(Dn,"stringify",{enumerable:!0,get:function(){return px.stringify}});Object.defineProperty(Dn,"nil",{enumerable:!0,get:function(){return px.nil}});Object.defineProperty(Dn,"Name",{enumerable:!0,get:function(){return px.Name}});Object.defineProperty(Dn,"CodeGen",{enumerable:!0,get:function(){return px.CodeGen}});var g$t=Sv();Object.defineProperty(Dn,"ValidationError",{enumerable:!0,get:function(){return g$t.default}});var y$t=Fd();Object.defineProperty(Dn,"MissingRefError",{enumerable:!0,get:function(){return y$t.default}})});var wq=_((VFr,sCe)=>{"use strict";var A$t=zU();sCe.exports=Object.freeze({coerceTypes:"array",useDefaults:!0,removeAdditional:!0,uriResolver:A$t,addUsedSchema:!1,allErrors:!1})});var lCe=_(pl=>{"use strict";Object.defineProperty(pl,"__esModule",{value:!0});pl.formatNames=pl.fastFormats=pl.fullFormats=void 0;function mx(t,e){return{validate:t,compare:e}}pl.fullFormats={date:mx(oCe,Oq),time:mx(cCe,kq),"date-time":mx(E$t,uCe),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:I$t,"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:k$t,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:C$t,int32:{type:"number",validate:R$t},int64:{type:"number",validate:N$t},float:{type:"number",validate:aCe},double:{type:"number",validate:aCe},password:!0,binary:!0};pl.fastFormats={...pl.fullFormats,date:mx(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,Oq),time:mx(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,kq),"date-time":mx(/^\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,uCe),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};pl.formatNames=Object.keys(pl.fullFormats);function x$t(t){return t%4===0&&(t%100!==0||t%400===0)}var b$t=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,_$t=[0,31,28,31,30,31,30,31,31,30,31,30,31];function oCe(t){let e=b$t.exec(t);if(!e)return!1;let r=+e[1],n=+e[2],s=+e[3];return n>=1&&n<=12&&s>=1&&s<=(n===2&&x$t(r)?29:_$t[n])}function Oq(t,e){if(t&&e)return t>e?1:te?1:t=T$t}function N$t(t){return Number.isInteger(t)}function aCe(){return!0}var O$t=/[^\\]\\Z/;function k$t(t){if(O$t.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var Gv=_(Ur=>{"use strict";Object.defineProperty(Ur,"__esModule",{value:!0});Ur.regexpCode=Ur.getEsmExportName=Ur.getProperty=Ur.safeStringify=Ur.stringify=Ur.strConcat=Ur.addCodeArg=Ur.str=Ur._=Ur.nil=Ur._Code=Ur.Name=Ur.IDENTIFIER=Ur._CodeOrName=void 0;var Qv=class{};Ur._CodeOrName=Qv;Ur.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var bh=class extends Qv{constructor(e){if(super(),!Ur.IDENTIFIER.test(e))throw new Error("CodeGen: name must be a valid identifier");this.str=e}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};Ur.Name=bh;var mc=class extends Qv{constructor(e){super(),this._items=typeof e=="string"?[e]:e}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let e=this._items[0];return e===""||e==='""'}get str(){var e;return(e=this._str)!==null&&e!==void 0?e:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var e;return(e=this._names)!==null&&e!==void 0?e:this._names=this._items.reduce((r,n)=>(n instanceof bh&&(r[n.str]=(r[n.str]||0)+1),r),{})}};Ur._Code=mc;Ur.nil=new mc("");function dCe(t,...e){let r=[t[0]],n=0;for(;n{"use strict";Object.defineProperty(Ya,"__esModule",{value:!0});Ya.ValueScope=Ya.ValueScopeName=Ya.Scope=Ya.varKinds=Ya.UsedValueState=void 0;var Va=Gv(),Bq=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},mP;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(mP||(Ya.UsedValueState=mP={}));Ya.varKinds={const:new Va.Name("const"),let:new Va.Name("let"),var:new Va.Name("var")};var hP=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof Va.Name?e:this.name(e)}name(e){return new Va.Name(this._newName(e))}_newName(e){let r=this._names[e]||this._nameGroup(e);return`${e}${r.index++}`}_nameGroup(e){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(e)||this._prefixes&&!this._prefixes.has(e))throw new Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};Ya.Scope=hP;var gP=class extends Va.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,Va._)`.${new Va.Name(r)}[${n}]`}};Ya.ValueScopeName=gP;var F$t=(0,Va._)`\n`,Lq=class extends hP{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?F$t:Va.nil}}get(){return this._scope}name(e){return new gP(e,this._newName(e))}value(e,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let s=this.toName(e),{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(e,r){let n=this._values[e];if(n)return n.get(r)}scopeRefs(e,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,Va._)`${e}${n.scopePath}`})}scopeCode(e=this._values,r,n){return this._reduceValues(e,s=>{if(s.value===void 0)throw new Error(`CodeGen: name "${s}" has no value`);return s.value.code},r,n)}_reduceValues(e,r,n={},s){let i=Va.nil;for(let a in e){let o=e[a];if(!o)continue;let c=n[a]=n[a]||new Map;o.forEach(u=>{if(c.has(u))return;c.set(u,mP.Started);let l=r(u);if(l){let d=this.opts.es5?Ya.varKinds.var:Ya.varKinds.const;i=(0,Va._)`${i}${d} ${u} = ${l};${this.opts._n}`}else if(l=s?.(u))i=(0,Va._)`${i}${l}${this.opts._n}`;else throw new Bq(u);c.set(u,mP.Completed)})}return i}};Ya.ValueScope=Lq});var Jt=_(sr=>{"use strict";Object.defineProperty(sr,"__esModule",{value:!0});sr.or=sr.and=sr.not=sr.CodeGen=sr.operators=sr.varKinds=sr.ValueScopeName=sr.ValueScope=sr.Scope=sr.Name=sr.regexpCode=sr.stringify=sr.getProperty=sr.nil=sr.strConcat=sr.str=sr._=void 0;var Sr=Gv(),ou=Mq(),r0=Gv();Object.defineProperty(sr,"_",{enumerable:!0,get:function(){return r0._}});Object.defineProperty(sr,"str",{enumerable:!0,get:function(){return r0.str}});Object.defineProperty(sr,"strConcat",{enumerable:!0,get:function(){return r0.strConcat}});Object.defineProperty(sr,"nil",{enumerable:!0,get:function(){return r0.nil}});Object.defineProperty(sr,"getProperty",{enumerable:!0,get:function(){return r0.getProperty}});Object.defineProperty(sr,"stringify",{enumerable:!0,get:function(){return r0.stringify}});Object.defineProperty(sr,"regexpCode",{enumerable:!0,get:function(){return r0.regexpCode}});Object.defineProperty(sr,"Name",{enumerable:!0,get:function(){return r0.Name}});var bP=Mq();Object.defineProperty(sr,"Scope",{enumerable:!0,get:function(){return bP.Scope}});Object.defineProperty(sr,"ValueScope",{enumerable:!0,get:function(){return bP.ValueScope}});Object.defineProperty(sr,"ValueScopeName",{enumerable:!0,get:function(){return bP.ValueScopeName}});Object.defineProperty(sr,"varKinds",{enumerable:!0,get:function(){return bP.varKinds}});sr.operators={GT:new Sr._Code(">"),GTE:new Sr._Code(">="),LT:new Sr._Code("<"),LTE:new Sr._Code("<="),EQ:new Sr._Code("==="),NEQ:new Sr._Code("!=="),NOT:new Sr._Code("!"),OR:new Sr._Code("||"),AND:new Sr._Code("&&"),ADD:new Sr._Code("+")};var Vd=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},Wq=class extends Vd{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?ou.varKinds.var:this.varKind,s=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${s};`+r}optimizeNames(e,r){if(e[this.name.str])return this.rhs&&(this.rhs=gx(this.rhs,e,r)),this}get names(){return this.rhs instanceof Sr._CodeOrName?this.rhs.names:{}}},yP=class extends Vd{constructor(e,r,n){super(),this.lhs=e,this.rhs=r,this.sideEffects=n}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,r){if(!(this.lhs instanceof Sr.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=gx(this.rhs,e,r),this}get names(){let e=this.lhs instanceof Sr.Name?{}:{...this.lhs.names};return xP(e,this.rhs)}},$q=class extends yP{constructor(e,r,n,s){super(e,n,s),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},Uq=class extends Vd{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},Fq=class extends Vd{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},qq=class extends Vd{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},jq=class extends Vd{constructor(e){super(),this.code=e}render({_n:e}){return`${this.code};`+e}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(e,r){return this.code=gx(this.code,e,r),this}get names(){return this.code instanceof Sr._CodeOrName?this.code.names:{}}},zv=class extends Vd{constructor(e=[]){super(),this.nodes=e}render(e){return this.nodes.reduce((r,n)=>r+n.render(e),"")}optimizeNodes(){let{nodes:e}=this,r=e.length;for(;r--;){let n=e[r].optimizeNodes();Array.isArray(n)?e.splice(r,1,...n):n?e[r]=n:e.splice(r,1)}return e.length>0?this:void 0}optimizeNames(e,r){let{nodes:n}=this,s=n.length;for(;s--;){let i=n[s];i.optimizeNames(e,r)||(q$t(e,i.names),n.splice(s,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>vh(e,r.names),{})}},Yd=class extends zv{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},Qq=class extends zv{},hx=class extends Yd{};hx.kind="else";var _h=class t extends Yd{constructor(e,r){super(r),this.condition=e}render(e){let r=`if(${this.condition})`+super.render(e);return this.else&&(r+="else "+this.else.render(e)),r}optimizeNodes(){super.optimizeNodes();let e=this.condition;if(e===!0)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new hx(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(pCe(e),r instanceof t?[r]:r.nodes);if(!(e===!1||!this.nodes.length))return this}optimizeNames(e,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(e,r),!!(super.optimizeNames(e,r)||this.else))return this.condition=gx(this.condition,e,r),this}get names(){let e=super.names;return xP(e,this.condition),this.else&&vh(e,this.else.names),e}};_h.kind="if";var Eh=class extends Yd{};Eh.kind="for";var Hq=class extends Eh{constructor(e){super(),this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iteration=gx(this.iteration,e,r),this}get names(){return vh(super.names,this.iteration.names)}},Gq=class extends Eh{constructor(e,r,n,s){super(),this.varKind=e,this.name=r,this.from=n,this.to=s}render(e){let r=e.es5?ou.varKinds.var:this.varKind,{name:n,from:s,to:i}=this;return`for(${r} ${n}=${s}; ${n}<${i}; ${n}++)`+super.render(e)}get names(){let e=xP(super.names,this.from);return xP(e,this.to)}},AP=class extends Eh{constructor(e,r,n,s){super(),this.loop=e,this.varKind=r,this.name=n,this.iterable=s}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iterable=gx(this.iterable,e,r),this}get names(){return vh(super.names,this.iterable.names)}},Kv=class extends Yd{constructor(e,r,n){super(),this.name=e,this.args=r,this.async=n}render(e){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(e)}};Kv.kind="func";var Vv=class extends zv{render(e){return"return "+super.render(e)}};Vv.kind="return";var zq=class extends Yd{render(e){let r="try"+super.render(e);return this.catch&&(r+=this.catch.render(e)),this.finally&&(r+=this.finally.render(e)),r}optimizeNodes(){var e,r;return super.optimizeNodes(),(e=this.catch)===null||e===void 0||e.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(e,r){var n,s;return super.optimizeNames(e,r),(n=this.catch)===null||n===void 0||n.optimizeNames(e,r),(s=this.finally)===null||s===void 0||s.optimizeNames(e,r),this}get names(){let e=super.names;return this.catch&&vh(e,this.catch.names),this.finally&&vh(e,this.finally.names),e}},Yv=class extends Yd{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};Yv.kind="catch";var Jv=class extends Yd{render(e){return"finally"+super.render(e)}};Jv.kind="finally";var Kq=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?` +`:""},this._extScope=e,this._scope=new ou.Scope({parent:e}),this._nodes=[new Qq]}toString(){return this._root.render(this.opts)}name(e){return this._scope.name(e)}scopeName(e){return this._extScope.name(e)}scopeValue(e,r){let n=this._extScope.value(e,r);return(this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(e,r){return this._extScope.getValue(e,r)}scopeRefs(e){return this._extScope.scopeRefs(e,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(e,r,n,s){let i=this._scope.toName(r);return n!==void 0&&s&&(this._constants[i.str]=n),this._leafNode(new Wq(e,i,n)),i}const(e,r,n){return this._def(ou.varKinds.const,e,r,n)}let(e,r,n){return this._def(ou.varKinds.let,e,r,n)}var(e,r,n){return this._def(ou.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new yP(e,r,n))}add(e,r){return this._leafNode(new $q(e,sr.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==Sr.nil&&this._leafNode(new jq(e)),this}object(...e){let r=["{"];for(let[n,s]of e)r.length>1&&r.push(","),r.push(n),(n!==s||this.opts.es5)&&(r.push(":"),(0,Sr.addCodeArg)(r,s));return r.push("}"),new Sr._Code(r)}if(e,r,n){if(this._blockNode(new _h(e)),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(e){return this._elseNode(new _h(e))}else(){return this._elseNode(new hx)}endIf(){return this._endBlockNode(_h,hx)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new Hq(e),r)}forRange(e,r,n,s,i=this.opts.es5?ou.varKinds.var:ou.varKinds.let){let a=this._scope.toName(e);return this._for(new Gq(i,a,r,n),()=>s(a))}forOf(e,r,n,s=ou.varKinds.const){let i=this._scope.toName(e);if(this.opts.es5){let a=r instanceof Sr.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,Sr._)`${a}.length`,o=>{this.var(i,(0,Sr._)`${a}[${o}]`),n(i)})}return this._for(new AP("of",s,i,r),()=>n(i))}forIn(e,r,n,s=this.opts.es5?ou.varKinds.var:ou.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,Sr._)`Object.keys(${r})`,n);let i=this._scope.toName(e);return this._for(new AP("in",s,i,r),()=>n(i))}endFor(){return this._endBlockNode(Eh)}label(e){return this._leafNode(new Uq(e))}break(e){return this._leafNode(new Fq(e))}return(e){let r=new Vv;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(Vv)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let s=new zq;if(this._blockNode(s),this.code(e),r){let i=this.name("e");this._currNode=s.catch=new Yv(i),r(i)}return n&&(this._currNode=s.finally=new Jv,this.code(n)),this._endBlockNode(Yv,Jv)}throw(e){return this._leafNode(new qq(e))}block(e,r){return this._blockStarts.push(this._nodes.length),e&&this.code(e).endBlock(r),this}endBlock(e){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||e!==void 0&&n!==e)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${e} expected`);return this._nodes.length=r,this}func(e,r=Sr.nil,n,s){return this._blockNode(new Kv(e,r,n)),s&&this.code(s).endFunc(),this}endFunc(){return this._endBlockNode(Kv)}optimize(e=1){for(;e-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(e){return this._currNode.nodes.push(e),this}_blockNode(e){this._currNode.nodes.push(e),this._nodes.push(e)}_endBlockNode(e,r){let n=this._currNode;if(n instanceof e||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${e.kind}/${r.kind}`:e.kind}"`)}_elseNode(e){let r=this._currNode;if(!(r instanceof _h))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let r=this._nodes;r[r.length-1]=e}};sr.CodeGen=Kq;function vh(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function xP(t,e){return e instanceof Sr._CodeOrName?vh(t,e.names):t}function gx(t,e,r){if(t instanceof Sr.Name)return n(t);if(!s(t))return t;return new Sr._Code(t._items.reduce((i,a)=>(a instanceof Sr.Name&&(a=n(a)),a instanceof Sr._Code?i.push(...a._items):i.push(a),i),[]));function n(i){let a=r[i.str];return a===void 0||e[i.str]!==1?i:(delete e[i.str],a)}function s(i){return i instanceof Sr._Code&&i._items.some(a=>a instanceof Sr.Name&&e[a.str]===1&&r[a.str]!==void 0)}}function q$t(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function pCe(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,Sr._)`!${Vq(t)}`}sr.not=pCe;var j$t=mCe(sr.operators.AND);function Q$t(...t){return t.reduce(j$t)}sr.and=Q$t;var H$t=mCe(sr.operators.OR);function G$t(...t){return t.reduce(H$t)}sr.or=G$t;function mCe(t){return(e,r)=>e===Sr.nil?r:r===Sr.nil?e:(0,Sr._)`${Vq(e)} ${t} ${Vq(r)}`}function Vq(t){return t instanceof Sr.Name?t:(0,Sr._)`(${t})`}});var Fr=_(cr=>{"use strict";Object.defineProperty(cr,"__esModule",{value:!0});cr.checkStrictMode=cr.getErrorPath=cr.Type=cr.useFunc=cr.setEvaluated=cr.evaluatedPropsToName=cr.mergeEvaluated=cr.eachItem=cr.unescapeJsonPointer=cr.escapeJsonPointer=cr.escapeFragment=cr.unescapeFragment=cr.schemaRefOrVal=cr.schemaHasRulesButRef=cr.schemaHasRules=cr.checkUnknownRules=cr.alwaysValidSchema=cr.toHash=void 0;var fn=Jt(),z$t=Gv();function K$t(t){let e={};for(let r of t)e[r]=!0;return e}cr.toHash=K$t;function V$t(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(yCe(t,e),!ACe(e,t.self.RULES.all))}cr.alwaysValidSchema=V$t;function yCe(t,e=t.schema){let{opts:r,self:n}=t;if(!r.strictSchema||typeof e=="boolean")return;let s=n.RULES.keywords;for(let i in e)s[i]||_Ce(t,`unknown keyword: "${i}"`)}cr.checkUnknownRules=yCe;function ACe(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}cr.schemaHasRules=ACe;function Y$t(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}cr.schemaHasRulesButRef=Y$t;function J$t({topSchemaRef:t,schemaPath:e},r,n,s){if(!s){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,fn._)`${r}`}return(0,fn._)`${t}${e}${(0,fn.getProperty)(n)}`}cr.schemaRefOrVal=J$t;function X$t(t){return xCe(decodeURIComponent(t))}cr.unescapeFragment=X$t;function Z$t(t){return encodeURIComponent(Jq(t))}cr.escapeFragment=Z$t;function Jq(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}cr.escapeJsonPointer=Jq;function xCe(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}cr.unescapeJsonPointer=xCe;function eUt(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}cr.eachItem=eUt;function hCe({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(s,i,a,o)=>{let c=a===void 0?i:a instanceof fn.Name?(i instanceof fn.Name?t(s,i,a):e(s,i,a),a):i instanceof fn.Name?(e(s,a,i),i):r(i,a);return o===fn.Name&&!(c instanceof fn.Name)?n(s,c):c}}cr.mergeEvaluated={props:hCe({mergeNames:(t,e,r)=>t.if((0,fn._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,fn._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,fn._)`${r} || {}`).code((0,fn._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,fn._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,fn._)`${r} || {}`),Xq(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:bCe}),items:hCe({mergeNames:(t,e,r)=>t.if((0,fn._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,fn._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,fn._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,fn._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function bCe(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,fn._)`{}`);return e!==void 0&&Xq(t,r,e),r}cr.evaluatedPropsToName=bCe;function Xq(t,e,r){Object.keys(r).forEach(n=>t.assign((0,fn._)`${e}${(0,fn.getProperty)(n)}`,!0))}cr.setEvaluated=Xq;var gCe={};function tUt(t,e){return t.scopeValue("func",{ref:e,code:gCe[e.code]||(gCe[e.code]=new z$t._Code(e.code))})}cr.useFunc=tUt;var Yq;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(Yq||(cr.Type=Yq={}));function rUt(t,e,r){if(t instanceof fn.Name){let n=e===Yq.Num;return r?n?(0,fn._)`"[" + ${t} + "]"`:(0,fn._)`"['" + ${t} + "']"`:n?(0,fn._)`"/" + ${t}`:(0,fn._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,fn.getProperty)(t).toString():"/"+Jq(t)}cr.getErrorPath=rUt;function _Ce(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}cr.checkStrictMode=_Ce});var Jd=_(Zq=>{"use strict";Object.defineProperty(Zq,"__esModule",{value:!0});var Qi=Jt(),nUt={data:new Qi.Name("data"),valCxt:new Qi.Name("valCxt"),instancePath:new Qi.Name("instancePath"),parentData:new Qi.Name("parentData"),parentDataProperty:new Qi.Name("parentDataProperty"),rootData:new Qi.Name("rootData"),dynamicAnchors:new Qi.Name("dynamicAnchors"),vErrors:new Qi.Name("vErrors"),errors:new Qi.Name("errors"),this:new Qi.Name("this"),self:new Qi.Name("self"),scope:new Qi.Name("scope"),json:new Qi.Name("json"),jsonPos:new Qi.Name("jsonPos"),jsonLen:new Qi.Name("jsonLen"),jsonPart:new Qi.Name("jsonPart")};Zq.default=nUt});var Xv=_(Hi=>{"use strict";Object.defineProperty(Hi,"__esModule",{value:!0});Hi.extendErrors=Hi.resetErrorsCount=Hi.reportExtraError=Hi.reportError=Hi.keyword$DataError=Hi.keywordError=void 0;var Or=Jt(),_P=Fr(),ga=Jd();Hi.keywordError={message:({keyword:t})=>(0,Or.str)`must pass "${t}" keyword validation`};Hi.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,Or.str)`"${t}" keyword must be ${e} ($data)`:(0,Or.str)`"${t}" keyword is invalid ($data)`};function sUt(t,e=Hi.keywordError,r,n){let{it:s}=t,{gen:i,compositeRule:a,allErrors:o}=s,c=SCe(t,e,r);n??(a||o)?ECe(i,c):vCe(s,(0,Or._)`[${c}]`)}Hi.reportError=sUt;function iUt(t,e=Hi.keywordError,r){let{it:n}=t,{gen:s,compositeRule:i,allErrors:a}=n,o=SCe(t,e,r);ECe(s,o),i||a||vCe(n,ga.default.vErrors)}Hi.reportExtraError=iUt;function aUt(t,e){t.assign(ga.default.errors,e),t.if((0,Or._)`${ga.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,Or._)`${ga.default.vErrors}.length`,e),()=>t.assign(ga.default.vErrors,null)))}Hi.resetErrorsCount=aUt;function oUt({gen:t,keyword:e,schemaValue:r,data:n,errsCount:s,it:i}){if(s===void 0)throw new Error("ajv implementation error");let a=t.name("err");t.forRange("i",s,ga.default.errors,o=>{t.const(a,(0,Or._)`${ga.default.vErrors}[${o}]`),t.if((0,Or._)`${a}.instancePath === undefined`,()=>t.assign((0,Or._)`${a}.instancePath`,(0,Or.strConcat)(ga.default.instancePath,i.errorPath))),t.assign((0,Or._)`${a}.schemaPath`,(0,Or.str)`${i.errSchemaPath}/${e}`),i.opts.verbose&&(t.assign((0,Or._)`${a}.schema`,r),t.assign((0,Or._)`${a}.data`,n))})}Hi.extendErrors=oUt;function ECe(t,e){let r=t.const("err",e);t.if((0,Or._)`${ga.default.vErrors} === null`,()=>t.assign(ga.default.vErrors,(0,Or._)`[${r}]`),(0,Or._)`${ga.default.vErrors}.push(${r})`),t.code((0,Or._)`${ga.default.errors}++`)}function vCe(t,e){let{gen:r,validateName:n,schemaEnv:s}=t;s.$async?r.throw((0,Or._)`new ${t.ValidationError}(${e})`):(r.assign((0,Or._)`${n}.errors`,e),r.return(!1))}var Sh={keyword:new Or.Name("keyword"),schemaPath:new Or.Name("schemaPath"),params:new Or.Name("params"),propertyName:new Or.Name("propertyName"),message:new Or.Name("message"),schema:new Or.Name("schema"),parentSchema:new Or.Name("parentSchema")};function SCe(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,Or._)`{}`:cUt(t,e,r)}function cUt(t,e,r={}){let{gen:n,it:s}=t,i=[uUt(s,r),lUt(t,r)];return dUt(t,e,i),n.object(...i)}function uUt({errorPath:t},{instancePath:e}){let r=e?(0,Or.str)`${t}${(0,_P.getErrorPath)(e,_P.Type.Str)}`:t;return[ga.default.instancePath,(0,Or.strConcat)(ga.default.instancePath,r)]}function lUt({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let s=n?e:(0,Or.str)`${e}/${t}`;return r&&(s=(0,Or.str)`${s}${(0,_P.getErrorPath)(r,_P.Type.Str)}`),[Sh.schemaPath,s]}function dUt(t,{params:e,message:r},n){let{keyword:s,data:i,schemaValue:a,it:o}=t,{opts:c,propertyName:u,topSchemaRef:l,schemaPath:d}=o;n.push([Sh.keyword,s],[Sh.params,typeof e=="function"?e(t):e||(0,Or._)`{}`]),c.messages&&n.push([Sh.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([Sh.schema,a],[Sh.parentSchema,(0,Or._)`${l}${d}`],[ga.default.data,i]),u&&n.push([Sh.propertyName,u])}});var CCe=_(yx=>{"use strict";Object.defineProperty(yx,"__esModule",{value:!0});yx.boolOrEmptySchema=yx.topBoolOrEmptySchema=void 0;var fUt=Xv(),pUt=Jt(),mUt=Jd(),hUt={message:"boolean schema is false"};function gUt(t){let{gen:e,schema:r,validateName:n}=t;r===!1?ICe(t,!1):typeof r=="object"&&r.$async===!0?e.return(mUt.default.data):(e.assign((0,pUt._)`${n}.errors`,null),e.return(!0))}yx.topBoolOrEmptySchema=gUt;function yUt(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),ICe(t)):r.var(e,!0)}yx.boolOrEmptySchema=yUt;function ICe(t,e){let{gen:r,data:n}=t,s={gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:t};(0,fUt.reportError)(s,hUt,void 0,e)}});var ej=_(Ax=>{"use strict";Object.defineProperty(Ax,"__esModule",{value:!0});Ax.getRules=Ax.isJSONType=void 0;var AUt=["string","number","integer","boolean","null","object","array"],xUt=new Set(AUt);function bUt(t){return typeof t=="string"&&xUt.has(t)}Ax.isJSONType=bUt;function _Ut(){let t={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...t,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},t.number,t.string,t.array,t.object],post:{rules:[]},all:{},keywords:{}}}Ax.getRules=_Ut});var tj=_(n0=>{"use strict";Object.defineProperty(n0,"__esModule",{value:!0});n0.shouldUseRule=n0.shouldUseGroup=n0.schemaHasRulesForType=void 0;function EUt({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&TCe(t,n)}n0.schemaHasRulesForType=EUt;function TCe(t,e){return e.rules.some(r=>wCe(t,r))}n0.shouldUseGroup=TCe;function wCe(t,e){var r;return t[e.keyword]!==void 0||((r=e.definition.implements)===null||r===void 0?void 0:r.some(n=>t[n]!==void 0))}n0.shouldUseRule=wCe});var Zv=_(Gi=>{"use strict";Object.defineProperty(Gi,"__esModule",{value:!0});Gi.reportTypeError=Gi.checkDataTypes=Gi.checkDataType=Gi.coerceAndCheckDataType=Gi.getJSONTypes=Gi.getSchemaTypes=Gi.DataType=void 0;var vUt=ej(),SUt=tj(),IUt=Xv(),Ht=Jt(),RCe=Fr(),xx;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(xx||(Gi.DataType=xx={}));function CUt(t){let e=NCe(t.type);if(e.includes("null")){if(t.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!e.length&&t.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');t.nullable===!0&&e.push("null")}return e}Gi.getSchemaTypes=CUt;function NCe(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(vUt.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}Gi.getJSONTypes=NCe;function TUt(t,e){let{gen:r,data:n,opts:s}=t,i=wUt(e,s.coerceTypes),a=e.length>0&&!(i.length===0&&e.length===1&&(0,SUt.schemaHasRulesForType)(t,e[0]));if(a){let o=nj(e,n,s.strictNumbers,xx.Wrong);r.if(o,()=>{i.length?RUt(t,e,i):sj(t)})}return a}Gi.coerceAndCheckDataType=TUt;var OCe=new Set(["string","number","integer","boolean","null"]);function wUt(t,e){return e?t.filter(r=>OCe.has(r)||e==="array"&&r==="array"):[]}function RUt(t,e,r){let{gen:n,data:s,opts:i}=t,a=n.let("dataType",(0,Ht._)`typeof ${s}`),o=n.let("coerced",(0,Ht._)`undefined`);i.coerceTypes==="array"&&n.if((0,Ht._)`${a} == 'object' && Array.isArray(${s}) && ${s}.length == 1`,()=>n.assign(s,(0,Ht._)`${s}[0]`).assign(a,(0,Ht._)`typeof ${s}`).if(nj(e,s,i.strictNumbers),()=>n.assign(o,s))),n.if((0,Ht._)`${o} !== undefined`);for(let u of r)(OCe.has(u)||u==="array"&&i.coerceTypes==="array")&&c(u);n.else(),sj(t),n.endIf(),n.if((0,Ht._)`${o} !== undefined`,()=>{n.assign(s,o),NUt(t,o)});function c(u){switch(u){case"string":n.elseIf((0,Ht._)`${a} == "number" || ${a} == "boolean"`).assign(o,(0,Ht._)`"" + ${s}`).elseIf((0,Ht._)`${s} === null`).assign(o,(0,Ht._)`""`);return;case"number":n.elseIf((0,Ht._)`${a} == "boolean" || ${s} === null + || (${a} == "string" && ${s} && ${s} == +${s})`).assign(o,(0,Ht._)`+${s}`);return;case"integer":n.elseIf((0,Ht._)`${a} === "boolean" || ${s} === null + || (${a} === "string" && ${s} && ${s} == +${s} && !(${s} % 1))`).assign(o,(0,Ht._)`+${s}`);return;case"boolean":n.elseIf((0,Ht._)`${s} === "false" || ${s} === 0 || ${s} === null`).assign(o,!1).elseIf((0,Ht._)`${s} === "true" || ${s} === 1`).assign(o,!0);return;case"null":n.elseIf((0,Ht._)`${s} === "" || ${s} === 0 || ${s} === false`),n.assign(o,null);return;case"array":n.elseIf((0,Ht._)`${a} === "string" || ${a} === "number" + || ${a} === "boolean" || ${s} === null`).assign(o,(0,Ht._)`[${s}]`)}}}function NUt({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,Ht._)`${e} !== undefined`,()=>t.assign((0,Ht._)`${e}[${r}]`,n))}function rj(t,e,r,n=xx.Correct){let s=n===xx.Correct?Ht.operators.EQ:Ht.operators.NEQ,i;switch(t){case"null":return(0,Ht._)`${e} ${s} null`;case"array":i=(0,Ht._)`Array.isArray(${e})`;break;case"object":i=(0,Ht._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":i=a((0,Ht._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":i=a();break;default:return(0,Ht._)`typeof ${e} ${s} ${t}`}return n===xx.Correct?i:(0,Ht.not)(i);function a(o=Ht.nil){return(0,Ht.and)((0,Ht._)`typeof ${e} == "number"`,o,r?(0,Ht._)`isFinite(${e})`:Ht.nil)}}Gi.checkDataType=rj;function nj(t,e,r,n){if(t.length===1)return rj(t[0],e,r,n);let s,i=(0,RCe.toHash)(t);if(i.array&&i.object){let a=(0,Ht._)`typeof ${e} != "object"`;s=i.null?a:(0,Ht._)`!${e} || ${a}`,delete i.null,delete i.array,delete i.object}else s=Ht.nil;i.number&&delete i.integer;for(let a in i)s=(0,Ht.and)(s,rj(a,e,r,n));return s}Gi.checkDataTypes=nj;var OUt={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,Ht._)`{type: ${t}}`:(0,Ht._)`{type: ${e}}`};function sj(t){let e=kUt(t);(0,IUt.reportError)(e,OUt)}Gi.reportTypeError=sj;function kUt(t){let{gen:e,data:r,schema:n}=t,s=(0,RCe.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:s,schemaValue:s,parentSchema:n,params:{},it:t}}});var PCe=_(EP=>{"use strict";Object.defineProperty(EP,"__esModule",{value:!0});EP.assignDefaults=void 0;var bx=Jt(),PUt=Fr();function DUt(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let s in r)kCe(t,s,r[s].default);else e==="array"&&Array.isArray(n)&&n.forEach((s,i)=>kCe(t,i,s.default))}EP.assignDefaults=DUt;function kCe(t,e,r){let{gen:n,compositeRule:s,data:i,opts:a}=t;if(r===void 0)return;let o=(0,bx._)`${i}${(0,bx.getProperty)(e)}`;if(s){(0,PUt.checkStrictMode)(t,`default is ignored for: ${o}`);return}let c=(0,bx._)`${o} === undefined`;a.useDefaults==="empty"&&(c=(0,bx._)`${c} || ${o} === null || ${o} === ""`),n.if(c,(0,bx._)`${o} = ${(0,bx.stringify)(r)}`)}});var hc=_(en=>{"use strict";Object.defineProperty(en,"__esModule",{value:!0});en.validateUnion=en.validateArray=en.usePattern=en.callValidateCode=en.schemaProperties=en.allSchemaProperties=en.noPropertyInData=en.propertyInData=en.isOwnProperty=en.hasPropFunc=en.reportMissingProp=en.checkMissingProp=en.checkReportMissingProp=void 0;var Bn=Jt(),ij=Fr(),s0=Jd(),BUt=Fr();function LUt(t,e){let{gen:r,data:n,it:s}=t;r.if(oj(r,n,e,s.opts.ownProperties),()=>{t.setParams({missingProperty:(0,Bn._)`${e}`},!0),t.error()})}en.checkReportMissingProp=LUt;function MUt({gen:t,data:e,it:{opts:r}},n,s){return(0,Bn.or)(...n.map(i=>(0,Bn.and)(oj(t,e,i,r.ownProperties),(0,Bn._)`${s} = ${i}`)))}en.checkMissingProp=MUt;function WUt(t,e){t.setParams({missingProperty:e},!0),t.error()}en.reportMissingProp=WUt;function DCe(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,Bn._)`Object.prototype.hasOwnProperty`})}en.hasPropFunc=DCe;function aj(t,e,r){return(0,Bn._)`${DCe(t)}.call(${e}, ${r})`}en.isOwnProperty=aj;function $Ut(t,e,r,n){let s=(0,Bn._)`${e}${(0,Bn.getProperty)(r)} !== undefined`;return n?(0,Bn._)`${s} && ${aj(t,e,r)}`:s}en.propertyInData=$Ut;function oj(t,e,r,n){let s=(0,Bn._)`${e}${(0,Bn.getProperty)(r)} === undefined`;return n?(0,Bn.or)(s,(0,Bn.not)(aj(t,e,r))):s}en.noPropertyInData=oj;function BCe(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}en.allSchemaProperties=BCe;function UUt(t,e){return BCe(e).filter(r=>!(0,ij.alwaysValidSchema)(t,e[r]))}en.schemaProperties=UUt;function FUt({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:s,errorPath:i},it:a},o,c,u){let l=u?(0,Bn._)`${t}, ${e}, ${n}${s}`:e,d=[[s0.default.instancePath,(0,Bn.strConcat)(s0.default.instancePath,i)],[s0.default.parentData,a.parentData],[s0.default.parentDataProperty,a.parentDataProperty],[s0.default.rootData,s0.default.rootData]];a.opts.dynamicRef&&d.push([s0.default.dynamicAnchors,s0.default.dynamicAnchors]);let f=(0,Bn._)`${l}, ${r.object(...d)}`;return c!==Bn.nil?(0,Bn._)`${o}.call(${c}, ${f})`:(0,Bn._)`${o}(${f})`}en.callValidateCode=FUt;var qUt=(0,Bn._)`new RegExp`;function jUt({gen:t,it:{opts:e}},r){let n=e.unicodeRegExp?"u":"",{regExp:s}=e.code,i=s(r,n);return t.scopeValue("pattern",{key:i.toString(),ref:i,code:(0,Bn._)`${s.code==="new RegExp"?qUt:(0,BUt.useFunc)(t,s)}(${r}, ${n})`})}en.usePattern=jUt;function QUt(t){let{gen:e,data:r,keyword:n,it:s}=t,i=e.name("valid");if(s.allErrors){let o=e.let("valid",!0);return a(()=>e.assign(o,!1)),o}return e.var(i,!0),a(()=>e.break()),i;function a(o){let c=e.const("len",(0,Bn._)`${r}.length`);e.forRange("i",0,c,u=>{t.subschema({keyword:n,dataProp:u,dataPropType:ij.Type.Num},i),e.if((0,Bn.not)(i),o)})}}en.validateArray=QUt;function HUt(t){let{gen:e,schema:r,keyword:n,it:s}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(c=>(0,ij.alwaysValidSchema)(s,c))&&!s.opts.unevaluated)return;let a=e.let("valid",!1),o=e.name("_valid");e.block(()=>r.forEach((c,u)=>{let l=t.subschema({keyword:n,schemaProp:u,compositeRule:!0},o);e.assign(a,(0,Bn._)`${a} || ${o}`),t.mergeValidEvaluated(l,o)||e.if((0,Bn.not)(a))})),t.result(a,()=>t.reset(),()=>t.error(!0))}en.validateUnion=HUt});var WCe=_(ml=>{"use strict";Object.defineProperty(ml,"__esModule",{value:!0});ml.validateKeywordUsage=ml.validSchemaType=ml.funcKeywordCode=ml.macroKeywordCode=void 0;var ya=Jt(),Ih=Jd(),GUt=hc(),zUt=Xv();function KUt(t,e){let{gen:r,keyword:n,schema:s,parentSchema:i,it:a}=t,o=e.macro.call(a.self,s,i,a),c=MCe(r,n,o);a.opts.validateSchema!==!1&&a.self.validateSchema(o,!0);let u=r.name("valid");t.subschema({schema:o,schemaPath:ya.nil,errSchemaPath:`${a.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}ml.macroKeywordCode=KUt;function VUt(t,e){var r;let{gen:n,keyword:s,schema:i,parentSchema:a,$data:o,it:c}=t;JUt(c,e);let u=!o&&e.compile?e.compile.call(c.self,i,a,c):e.validate,l=MCe(n,s,u),d=n.let("valid");t.block$data(d,f),t.ok((r=e.valid)!==null&&r!==void 0?r:d);function f(){if(e.errors===!1)h(),e.modifying&&LCe(t),y(()=>t.error());else{let g=e.async?p():m();e.modifying&&LCe(t),y(()=>YUt(t,g))}}function p(){let g=n.let("ruleErrs",null);return n.try(()=>h((0,ya._)`await `),b=>n.assign(d,!1).if((0,ya._)`${b} instanceof ${c.ValidationError}`,()=>n.assign(g,(0,ya._)`${b}.errors`),()=>n.throw(b))),g}function m(){let g=(0,ya._)`${l}.errors`;return n.assign(g,null),h(ya.nil),g}function h(g=e.async?(0,ya._)`await `:ya.nil){let b=c.opts.passContext?Ih.default.this:Ih.default.self,x=!("compile"in e&&!o||e.schema===!1);n.assign(d,(0,ya._)`${g}${(0,GUt.callValidateCode)(t,l,b,x)}`,e.modifying)}function y(g){var b;n.if((0,ya.not)((b=e.valid)!==null&&b!==void 0?b:d),g)}}ml.funcKeywordCode=VUt;function LCe(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,ya._)`${n.parentData}[${n.parentDataProperty}]`))}function YUt(t,e){let{gen:r}=t;r.if((0,ya._)`Array.isArray(${e})`,()=>{r.assign(Ih.default.vErrors,(0,ya._)`${Ih.default.vErrors} === null ? ${e} : ${Ih.default.vErrors}.concat(${e})`).assign(Ih.default.errors,(0,ya._)`${Ih.default.vErrors}.length`),(0,zUt.extendErrors)(t)},()=>t.error())}function JUt({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function MCe(t,e,r){if(r===void 0)throw new Error(`keyword "${e}" failed to compile`);return t.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,ya.stringify)(r)})}function XUt(t,e,r=!1){return!e.length||e.some(n=>n==="array"?Array.isArray(t):n==="object"?t&&typeof t=="object"&&!Array.isArray(t):typeof t==n||r&&typeof t>"u")}ml.validSchemaType=XUt;function ZUt({schema:t,opts:e,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(t,o)))throw new Error(`parent schema must have dependencies of ${i}: ${a.join(",")}`);if(s.validateSchema&&!s.validateSchema(t[i])){let c=`keyword "${i}" value is invalid at path "${n}": `+r.errorsText(s.validateSchema.errors);if(e.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}ml.validateKeywordUsage=ZUt});var UCe=_(i0=>{"use strict";Object.defineProperty(i0,"__esModule",{value:!0});i0.extendSubschemaMode=i0.extendSubschemaData=i0.getSubschema=void 0;var hl=Jt(),$Ce=Fr();function eFt(t,{keyword:e,schemaProp:r,schema:n,schemaPath:s,errSchemaPath:i,topSchemaRef:a}){if(e!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(e!==void 0){let o=t.schema[e];return r===void 0?{schema:o,schemaPath:(0,hl._)`${t.schemaPath}${(0,hl.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:o[r],schemaPath:(0,hl._)`${t.schemaPath}${(0,hl.getProperty)(e)}${(0,hl.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,$Ce.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')}i0.getSubschema=eFt;function tFt(t,e,{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}=e;if(r!==void 0){let{errorPath:u,dataPathArr:l,opts:d}=e,f=o.let("data",(0,hl._)`${e.data}${(0,hl.getProperty)(r)}`,!0);c(f),t.errorPath=(0,hl.str)`${u}${(0,$Ce.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,hl._)`${r}`,t.dataPathArr=[...l,t.parentDataProperty]}if(s!==void 0){let u=s instanceof hl.Name?s:o.let("data",s,!0);c(u),a!==void 0&&(t.propertyName=a)}i&&(t.dataTypes=i);function c(u){t.data=u,t.dataLevel=e.dataLevel+1,t.dataTypes=[],e.definedProperties=new Set,t.parentData=e.data,t.dataNames=[...e.dataNames,u]}}i0.extendSubschemaData=tFt;function rFt(t,{jtdDiscriminator:e,jtdMetadata:r,compositeRule:n,createErrors:s,allErrors:i}){n!==void 0&&(t.compositeRule=n),s!==void 0&&(t.createErrors=s),i!==void 0&&(t.allErrors=i),t.jtdDiscriminator=e,t.jtdMetadata=r}i0.extendSubschemaMode=rFt});var qCe=_((d7r,FCe)=>{"use strict";var a0=FCe.exports=function(t,e,r){typeof e=="function"&&(r=e,e={}),r=e.cb||r;var n=typeof r=="function"?r:r.pre||function(){},s=r.post||function(){};vP(e,n,s,t,"",t)};a0.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};a0.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};a0.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};a0.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 vP(t,e,r,n,s,i,a,o,c,u){if(n&&typeof n=="object"&&!Array.isArray(n)){e(n,s,i,a,o,c,u);for(var l in n){var d=n[l];if(Array.isArray(d)){if(l in a0.arrayKeywords)for(var f=0;f{"use strict";Object.defineProperty(Ja,"__esModule",{value:!0});Ja.getSchemaRefs=Ja.resolveUrl=Ja.normalizeId=Ja._getFullPath=Ja.getFullPath=Ja.inlineRef=void 0;var sFt=Fr(),iFt=sc(),aFt=qCe(),oFt=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function cFt(t,e=!0){return typeof t=="boolean"?!0:e===!0?!cj(t):e?jCe(t)<=e:!1}Ja.inlineRef=cFt;var uFt=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function cj(t){for(let e in t){if(uFt.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(cj)||typeof r=="object"&&cj(r))return!0}return!1}function jCe(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!oFt.has(r)&&(typeof t[r]=="object"&&(0,sFt.eachItem)(t[r],n=>e+=jCe(n)),e===1/0))return 1/0}return e}function QCe(t,e="",r){r!==!1&&(e=_x(e));let n=t.parse(e);return HCe(t,n)}Ja.getFullPath=QCe;function HCe(t,e){return t.serialize(e).split("#")[0]+"#"}Ja._getFullPath=HCe;var lFt=/#\/?$/;function _x(t){return t?t.replace(lFt,""):""}Ja.normalizeId=_x;function dFt(t,e,r){return r=_x(r),t.resolve(e,r)}Ja.resolveUrl=dFt;var fFt=/^[a-z_][-a-z0-9._]*$/i;function pFt(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,s=_x(t[r]||e),i={"":s},a=QCe(n,s,!1),o={},c=new Set;return aFt(t,{allKeys:!0},(d,f,p,m)=>{if(m===void 0)return;let h=a+f,y=i[m];typeof d[r]=="string"&&(y=g.call(this,d[r])),b.call(this,d.$anchor),b.call(this,d.$dynamicAnchor),i[f]=y;function g(x){let A=this.opts.uriResolver.resolve;if(x=_x(y?A(y,x):x),c.has(x))throw l(x);c.add(x);let S=this.refs[x];return typeof S=="string"&&(S=this.refs[S]),typeof S=="object"?u(d,S.schema,x):x!==_x(h)&&(x[0]==="#"?(u(d,o[x],x),o[x]=d):this.refs[x]=h),x}function b(x){if(typeof x=="string"){if(!fFt.test(x))throw new Error(`invalid anchor "${x}"`);g.call(this,`#${x}`)}}}),o;function u(d,f,p){if(f!==void 0&&!iFt(d,f))throw l(p)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}Ja.getSchemaRefs=pFt});var nS=_(o0=>{"use strict";Object.defineProperty(o0,"__esModule",{value:!0});o0.getData=o0.KeywordCxt=o0.validateFunctionCode=void 0;var YCe=CCe(),GCe=Zv(),lj=tj(),SP=Zv(),mFt=PCe(),rS=WCe(),uj=UCe(),ct=Jt(),Ot=Jd(),hFt=eS(),Xd=Fr(),tS=Xv();function gFt(t){if(ZCe(t)&&(e2e(t),XCe(t))){xFt(t);return}JCe(t,()=>(0,YCe.topBoolOrEmptySchema)(t))}o0.validateFunctionCode=gFt;function JCe({gen:t,validateName:e,schema:r,schemaEnv:n,opts:s},i){s.code.es5?t.func(e,(0,ct._)`${Ot.default.data}, ${Ot.default.valCxt}`,n.$async,()=>{t.code((0,ct._)`"use strict"; ${zCe(r,s)}`),AFt(t,s),t.code(i)}):t.func(e,(0,ct._)`${Ot.default.data}, ${yFt(s)}`,n.$async,()=>t.code(zCe(r,s)).code(i))}function yFt(t){return(0,ct._)`{${Ot.default.instancePath}="", ${Ot.default.parentData}, ${Ot.default.parentDataProperty}, ${Ot.default.rootData}=${Ot.default.data}${t.dynamicRef?(0,ct._)`, ${Ot.default.dynamicAnchors}={}`:ct.nil}}={}`}function AFt(t,e){t.if(Ot.default.valCxt,()=>{t.var(Ot.default.instancePath,(0,ct._)`${Ot.default.valCxt}.${Ot.default.instancePath}`),t.var(Ot.default.parentData,(0,ct._)`${Ot.default.valCxt}.${Ot.default.parentData}`),t.var(Ot.default.parentDataProperty,(0,ct._)`${Ot.default.valCxt}.${Ot.default.parentDataProperty}`),t.var(Ot.default.rootData,(0,ct._)`${Ot.default.valCxt}.${Ot.default.rootData}`),e.dynamicRef&&t.var(Ot.default.dynamicAnchors,(0,ct._)`${Ot.default.valCxt}.${Ot.default.dynamicAnchors}`)},()=>{t.var(Ot.default.instancePath,(0,ct._)`""`),t.var(Ot.default.parentData,(0,ct._)`undefined`),t.var(Ot.default.parentDataProperty,(0,ct._)`undefined`),t.var(Ot.default.rootData,Ot.default.data),e.dynamicRef&&t.var(Ot.default.dynamicAnchors,(0,ct._)`{}`)})}function xFt(t){let{schema:e,opts:r,gen:n}=t;JCe(t,()=>{r.$comment&&e.$comment&&r2e(t),SFt(t),n.let(Ot.default.vErrors,null),n.let(Ot.default.errors,0),r.unevaluated&&bFt(t),t2e(t),TFt(t)})}function bFt(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,ct._)`${r}.evaluated`),e.if((0,ct._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,ct._)`${t.evaluated}.props`,(0,ct._)`undefined`)),e.if((0,ct._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,ct._)`${t.evaluated}.items`,(0,ct._)`undefined`))}function zCe(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,ct._)`/*# sourceURL=${r} */`:ct.nil}function _Ft(t,e){if(ZCe(t)&&(e2e(t),XCe(t))){EFt(t,e);return}(0,YCe.boolOrEmptySchema)(t,e)}function XCe({schema:t,self:e}){if(typeof t=="boolean")return!t;for(let r in t)if(e.RULES.all[r])return!0;return!1}function ZCe(t){return typeof t.schema!="boolean"}function EFt(t,e){let{schema:r,gen:n,opts:s}=t;s.$comment&&r.$comment&&r2e(t),IFt(t),CFt(t);let i=n.const("_errs",Ot.default.errors);t2e(t,i),n.var(e,(0,ct._)`${i} === ${Ot.default.errors}`)}function e2e(t){(0,Xd.checkUnknownRules)(t),vFt(t)}function t2e(t,e){if(t.opts.jtd)return KCe(t,[],!1,e);let r=(0,GCe.getSchemaTypes)(t.schema),n=(0,GCe.coerceAndCheckDataType)(t,r);KCe(t,r,!n,e)}function vFt(t){let{schema:e,errSchemaPath:r,opts:n,self:s}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,Xd.schemaHasRulesButRef)(e,s.RULES)&&s.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function SFt(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,Xd.checkStrictMode)(t,"default is ignored in the schema root")}function IFt(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,hFt.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function CFt(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function r2e({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:s}){let i=r.$comment;if(s.$comment===!0)t.code((0,ct._)`${Ot.default.self}.logger.log(${i})`);else if(typeof s.$comment=="function"){let a=(0,ct.str)`${n}/$comment`,o=t.scopeValue("root",{ref:e.root});t.code((0,ct._)`${Ot.default.self}.opts.$comment(${i}, ${a}, ${o}.schema)`)}}function TFt(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:s,opts:i}=t;r.$async?e.if((0,ct._)`${Ot.default.errors} === 0`,()=>e.return(Ot.default.data),()=>e.throw((0,ct._)`new ${s}(${Ot.default.vErrors})`)):(e.assign((0,ct._)`${n}.errors`,Ot.default.vErrors),i.unevaluated&&wFt(t),e.return((0,ct._)`${Ot.default.errors} === 0`))}function wFt({gen:t,evaluated:e,props:r,items:n}){r instanceof ct.Name&&t.assign((0,ct._)`${e}.props`,r),n instanceof ct.Name&&t.assign((0,ct._)`${e}.items`,n)}function KCe(t,e,r,n){let{gen:s,schema:i,data:a,allErrors:o,opts:c,self:u}=t,{RULES:l}=u;if(i.$ref&&(c.ignoreKeywordsWithRef||!(0,Xd.schemaHasRulesButRef)(i,l))){s.block(()=>s2e(t,"$ref",l.all.$ref.definition));return}c.jtd||RFt(t,e),s.block(()=>{for(let f of l.rules)d(f);d(l.post)});function d(f){(0,lj.shouldUseGroup)(i,f)&&(f.type?(s.if((0,SP.checkDataType)(f.type,a,c.strictNumbers)),VCe(t,f),e.length===1&&e[0]===f.type&&r&&(s.else(),(0,SP.reportTypeError)(t)),s.endIf()):VCe(t,f),o||s.if((0,ct._)`${Ot.default.errors} === ${n||0}`))}}function VCe(t,e){let{gen:r,schema:n,opts:{useDefaults:s}}=t;s&&(0,mFt.assignDefaults)(t,e.type),r.block(()=>{for(let i of e.rules)(0,lj.shouldUseRule)(n,i)&&s2e(t,i.keyword,i.definition,e.type)})}function RFt(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(NFt(t,e),t.opts.allowUnionTypes||OFt(t,e),kFt(t,t.dataTypes))}function NFt(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{n2e(t.dataTypes,r)||dj(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),DFt(t,e)}}function OFt(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&dj(t,"use allowUnionTypes to allow union type keyword")}function kFt(t,e){let r=t.self.RULES.all;for(let n in r){let s=r[n];if(typeof s=="object"&&(0,lj.shouldUseRule)(t.schema,s)){let{type:i}=s.definition;i.length&&!i.some(a=>PFt(e,a))&&dj(t,`missing type "${i.join(",")}" for keyword "${n}"`)}}}function PFt(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function n2e(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function DFt(t,e){let r=[];for(let n of t.dataTypes)n2e(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function dj(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,Xd.checkStrictMode)(t,e,t.opts.strictTypes)}var IP=class{constructor(e,r,n){if((0,rS.validateKeywordUsage)(e,r,n),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=n,this.data=e.data,this.schema=e.schema[n],this.$data=r.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,Xd.schemaRefOrVal)(e,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=e.schema,this.params={},this.it=e,this.def=r,this.$data)this.schemaCode=e.gen.const("vSchema",i2e(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,rS.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=e.gen.const("_errs",Ot.default.errors))}result(e,r,n){this.failResult((0,ct.not)(e),r,n)}failResult(e,r,n){this.gen.if(e),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(e,r){this.failResult((0,ct.not)(e),void 0,r)}fail(e){if(e===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(e),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(e){if(!this.$data)return this.fail(e);let{schemaCode:r}=this;this.fail((0,ct._)`${r} !== undefined && (${(0,ct.or)(this.invalid$data(),e)})`)}error(e,r,n){if(r){this.setParams(r),this._error(e,n),this.setParams({});return}this._error(e,n)}_error(e,r){(e?tS.reportExtraError:tS.reportError)(this,this.def.error,r)}$dataError(){(0,tS.reportError)(this,this.def.$dataError||tS.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,tS.resetErrorsCount)(this.gen,this.errsCount)}ok(e){this.allErrors||this.gen.if(e)}setParams(e,r){r?Object.assign(this.params,e):this.params=e}block$data(e,r,n=ct.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=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)),e!==ct.nil&&n.assign(e,!0),(i.length||a.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==ct.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,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,SP.checkDataTypes)(c,r,i.opts.strictNumbers,SP.DataType.Wrong)}`}return ct.nil}function o(){if(s.validateSchema){let c=e.scopeValue("validate$data",{ref:s.validateSchema});return(0,ct._)`!${c}(${r})`}return ct.nil}}subschema(e,r){let n=(0,uj.getSubschema)(this.it,e);(0,uj.extendSubschemaData)(n,this.it,e),(0,uj.extendSubschemaMode)(n,e);let s={...this.it,...n,items:void 0,props:void 0};return _Ft(s,r),s}mergeEvaluated(e,r){let{it:n,gen:s}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=Xd.mergeEvaluated.props(s,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=Xd.mergeEvaluated.items(s,e.items,n.items,r)))}mergeValidEvaluated(e,r){let{it:n,gen:s}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return s.if(r,()=>this.mergeEvaluated(e,ct.Name)),!0}};o0.KeywordCxt=IP;function s2e(t,e,r,n){let s=new IP(t,r,e);"code"in r?r.code(s,n):s.$data&&r.validate?(0,rS.funcKeywordCode)(s,r):"macro"in r?(0,rS.macroKeywordCode)(s,r):(r.compile||r.validate)&&(0,rS.funcKeywordCode)(s,r)}var BFt=/^\/(?:[^~]|~0|~1)*$/,LFt=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function i2e(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let s,i;if(t==="")return Ot.default.rootData;if(t[0]==="/"){if(!BFt.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);s=t,i=Ot.default.rootData}else{let u=LFt.exec(t);if(!u)throw new Error(`Invalid JSON-pointer: ${t}`);let l=+u[1];if(s=u[2],s==="#"){if(l>=e)throw new Error(c("property/index",l));return n[e-l]}if(l>e)throw new Error(c("data",l));if(i=r[e-l],!s)return i}let a=i,o=s.split("/");for(let u of o)u&&(i=(0,ct._)`${i}${(0,ct.getProperty)((0,Xd.unescapeJsonPointer)(u))}`,a=(0,ct._)`${a} && ${i}`);return a;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${e}`}}o0.getData=i2e});var CP=_(pj=>{"use strict";Object.defineProperty(pj,"__esModule",{value:!0});var fj=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};pj.default=fj});var sS=_(gj=>{"use strict";Object.defineProperty(gj,"__esModule",{value:!0});var mj=eS(),hj=class extends Error{constructor(e,r,n,s){super(s||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,mj.resolveUrl)(e,r,n),this.missingSchema=(0,mj.normalizeId)((0,mj.getFullPath)(e,this.missingRef))}};gj.default=hj});var wP=_(gc=>{"use strict";Object.defineProperty(gc,"__esModule",{value:!0});gc.resolveSchema=gc.getCompilingSchema=gc.resolveRef=gc.compileSchema=gc.SchemaEnv=void 0;var cu=Jt(),MFt=CP(),Ch=Jd(),uu=eS(),a2e=Fr(),WFt=nS(),Ex=class{constructor(e){var r;this.refs={},this.dynamicAnchors={};let n;typeof e.schema=="object"&&(n=e.schema),this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=(r=e.baseId)!==null&&r!==void 0?r:(0,uu.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};gc.SchemaEnv=Ex;function Aj(t){let e=o2e.call(this,t);if(e)return e;let r=(0,uu.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:s}=this.opts.code,{ownProperties:i}=this.opts,a=new cu.CodeGen(this.scope,{es5:n,lines:s,ownProperties:i}),o;t.$async&&(o=a.scopeValue("Error",{ref:MFt.default,code:(0,cu._)`require("ajv/dist/runtime/validation_error").default`}));let c=a.scopeName("validate");t.validateName=c;let u={gen:a,allErrors:this.opts.allErrors,data:Ch.default.data,parentData:Ch.default.parentData,parentDataProperty:Ch.default.parentDataProperty,dataNames:[Ch.default.data],dataPathArr:[cu.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:a.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,cu.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:o,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:cu.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,cu._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,WFt.validateFunctionCode)(u),a.optimize(this.opts.code.optimize);let d=a.toString();l=`${a.scopeRefs(Ch.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,t));let p=new Function(`${Ch.default.self}`,`${Ch.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:p}),p.errors=null,p.schema=t.schema,p.schemaEnv=t,t.$async&&(p.$async=!0),this.opts.code.source===!0&&(p.source={validateName:c,validateCode:d,scopeValues:a._values}),this.opts.unevaluated){let{props:m,items:h}=u;p.evaluated={props:m instanceof cu.Name?void 0:m,items:h instanceof cu.Name?void 0:h,dynamicProps:m instanceof cu.Name,dynamicItems:h instanceof cu.Name},p.source&&(p.source.evaluated=(0,cu.stringify)(p.evaluated))}return t.validate=p,t}catch(d){throw delete t.validate,delete t.validateName,l&&this.logger.error("Error compiling schema, function code:",l),d}finally{this._compilations.delete(t)}}gc.compileSchema=Aj;function $Ft(t,e,r){var n;r=(0,uu.resolveUrl)(this.opts.uriResolver,e,r);let s=t.refs[r];if(s)return s;let i=qFt.call(this,t,r);if(i===void 0){let a=(n=t.localRefs)===null||n===void 0?void 0:n[r],{schemaId:o}=this.opts;a&&(i=new Ex({schema:a,schemaId:o,root:t,baseId:e}))}if(i!==void 0)return t.refs[r]=UFt.call(this,i)}gc.resolveRef=$Ft;function UFt(t){return(0,uu.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:Aj.call(this,t)}function o2e(t){for(let e of this._compilations)if(FFt(e,t))return e}gc.getCompilingSchema=o2e;function FFt(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function qFt(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||TP.call(this,t,e)}function TP(t,e){let r=this.opts.uriResolver.parse(e),n=(0,uu._getFullPath)(this.opts.uriResolver,r),s=(0,uu.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===s)return yj.call(this,r,t);let i=(0,uu.normalizeId)(n),a=this.refs[i]||this.schemas[i];if(typeof a=="string"){let o=TP.call(this,t,a);return typeof o?.schema!="object"?void 0:yj.call(this,r,o)}if(typeof a?.schema=="object"){if(a.validate||Aj.call(this,a),i===(0,uu.normalizeId)(e)){let{schema:o}=a,{schemaId:c}=this.opts,u=o[c];return u&&(s=(0,uu.resolveUrl)(this.opts.uriResolver,s,u)),new Ex({schema:o,schemaId:c,root:t,baseId:s})}return yj.call(this,r,a)}}gc.resolveSchema=TP;var jFt=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function yj(t,{baseId:e,schema:r,root:n}){var s;if(((s=t.fragment)===null||s===void 0?void 0:s[0])!=="/")return;for(let o of t.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let c=r[(0,a2e.unescapeFragment)(o)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!jFt.has(o)&&u&&(e=(0,uu.resolveUrl)(this.opts.uriResolver,e,u))}let i;if(typeof r!="boolean"&&r.$ref&&!(0,a2e.schemaHasRulesButRef)(r,this.RULES)){let o=(0,uu.resolveUrl)(this.opts.uriResolver,e,r.$ref);i=TP.call(this,n,o)}let{schemaId:a}=this.opts;if(i=i||new Ex({schema:r,schemaId:a,root:n,baseId:e}),i.schema!==i.root.schema)return i}});var c2e=_((y7r,QFt)=>{QFt.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 bj=_((A7r,f2e)=>{"use strict";var HFt=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),l2e=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 xj(t){let e="",r=0,n=0;for(n=0;n=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";e+=t[n];break}for(n+=1;n=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";e+=t[n]}return e}var GFt=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function u2e(t){return t.length=0,!0}function zFt(t,e,r){if(t.length){let n=xj(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function KFt(t){let e=0,r={error:!1,address:"",zone:""},n=[],s=[],i=!1,a=!1,o=zFt;for(let c=0;c7){r.error=!0;break}c>0&&t[c-1]===":"&&(i=!0),n.push(":");continue}else if(u==="%"){if(!o(s,n,r))break;o=u2e}else{s.push(u);continue}}return s.length&&(o===u2e?r.zone=s.join(""):a?n.push(s.join("")):n.push(xj(s))),r.address=n.join(""),r}function d2e(t){if(VFt(t,":")<2)return{host:t,isIPV6:!1};let e=KFt(t);if(e.error)return{host:t,isIPV6:!1};{let r=e.address,n=e.address;return e.zone&&(r+="%"+e.zone,n+="%25"+e.zone),{host:r,isIPV6:!0,escapedHost:n}}}function VFt(t,e){let r=0;for(let n=0;n{"use strict";var{isUUID:ZFt}=bj(),e7t=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,t7t=["http","https","ws","wss","urn","urn:uuid"];function r7t(t){return t7t.indexOf(t)!==-1}function _j(t){return t.secure===!0?!0:t.secure===!1?!1:t.scheme?t.scheme.length===3&&(t.scheme[0]==="w"||t.scheme[0]==="W")&&(t.scheme[1]==="s"||t.scheme[1]==="S")&&(t.scheme[2]==="s"||t.scheme[2]==="S"):!1}function p2e(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function m2e(t){let e=String(t.scheme).toLowerCase()==="https";return(t.port===(e?443:80)||t.port==="")&&(t.port=void 0),t.path||(t.path="/"),t}function n7t(t){return t.secure=_j(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function s7t(t){if((t.port===(_j(t)?443:80)||t.port==="")&&(t.port=void 0),typeof t.secure=="boolean"&&(t.scheme=t.secure?"wss":"ws",t.secure=void 0),t.resourceName){let[e,r]=t.resourceName.split("?");t.path=e&&e!=="/"?e:void 0,t.query=r,t.resourceName=void 0}return t.fragment=void 0,t}function i7t(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(e7t);if(r){let n=e.scheme||t.scheme||"urn";t.nid=r[1].toLowerCase(),t.nss=r[2];let s=`${n}:${e.nid||t.nid}`,i=Ej(s);t.path=void 0,i&&(t=i.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function a7t(t,e){if(t.nid===void 0)throw new Error("URN without nid cannot be serialized");let r=e.scheme||t.scheme||"urn",n=t.nid.toLowerCase(),s=`${r}:${e.nid||n}`,i=Ej(s);i&&(t=i.serialize(t,e));let a=t,o=t.nss;return a.path=`${n||e.nid}:${o}`,e.skipEscape=!0,a}function o7t(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!ZFt(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function c7t(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var h2e={scheme:"http",domainHost:!0,parse:p2e,serialize:m2e},u7t={scheme:"https",domainHost:h2e.domainHost,parse:p2e,serialize:m2e},RP={scheme:"ws",domainHost:!0,parse:n7t,serialize:s7t},l7t={scheme:"wss",domainHost:RP.domainHost,parse:RP.parse,serialize:RP.serialize},d7t={scheme:"urn",parse:i7t,serialize:a7t,skipNormalize:!0},f7t={scheme:"urn:uuid",parse:o7t,serialize:c7t,skipNormalize:!0},NP={http:h2e,https:u7t,ws:RP,wss:l7t,urn:d7t,"urn:uuid":f7t};Object.setPrototypeOf(NP,null);function Ej(t){return t&&(NP[t]||NP[t.toLowerCase()])||void 0}g2e.exports={wsIsSecure:_j,SCHEMES:NP,isValidSchemeName:r7t,getSchemeHandler:Ej}});var b2e=_((b7r,kP)=>{"use strict";var{normalizeIPv6:p7t,removeDotSegments:iS,recomposeAuthority:m7t,normalizeComponentEncoding:OP,isIPv4:h7t,nonSimpleDomain:g7t}=bj(),{SCHEMES:y7t,getSchemeHandler:A2e}=y2e();function A7t(t,e){return typeof t=="string"?t=gl(Zd(t,e),e):typeof t=="object"&&(t=Zd(gl(t,e),e)),t}function x7t(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},s=x2e(Zd(t,n),Zd(e,n),n,!0);return n.skipEscape=!0,gl(s,n)}function x2e(t,e,r,n){let s={};return n||(t=Zd(gl(t,r),r),e=Zd(gl(e,r),r)),r=r||{},!r.tolerant&&e.scheme?(s.scheme=e.scheme,s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=iS(e.path||""),s.query=e.query):(e.userinfo!==void 0||e.host!==void 0||e.port!==void 0?(s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=iS(e.path||""),s.query=e.query):(e.path?(e.path[0]==="/"?s.path=iS(e.path):((t.userinfo!==void 0||t.host!==void 0||t.port!==void 0)&&!t.path?s.path="/"+e.path:t.path?s.path=t.path.slice(0,t.path.lastIndexOf("/")+1)+e.path:s.path=e.path,s.path=iS(s.path)),s.query=e.query):(s.path=t.path,e.query!==void 0?s.query=e.query:s.query=t.query),s.userinfo=t.userinfo,s.host=t.host,s.port=t.port),s.scheme=t.scheme),s.fragment=e.fragment,s}function b7t(t,e,r){return typeof t=="string"?(t=unescape(t),t=gl(OP(Zd(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=gl(OP(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=gl(OP(Zd(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=gl(OP(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function gl(t,e){let r={host:t.host,scheme:t.scheme,userinfo:t.userinfo,port:t.port,path:t.path,query:t.query,nid:t.nid,nss:t.nss,uuid:t.uuid,fragment:t.fragment,reference:t.reference,resourceName:t.resourceName,secure:t.secure,error:""},n=Object.assign({},e),s=[],i=A2e(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=m7t(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=iS(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 _7t=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function Zd(t,e){let r=Object.assign({},e),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?t=r.scheme+":"+t:t="//"+t);let i=t.match(_7t);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(h7t(n.host)===!1){let c=p7t(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=A2e(r.scheme||n.scheme);if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&s===!1&&g7t(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)&&(t.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 vj={SCHEMES:y7t,normalize:A7t,resolve:x7t,resolveComponent:x2e,equal:b7t,serialize:gl,parse:Zd};kP.exports=vj;kP.exports.default=vj;kP.exports.fastUri=vj});var E2e=_(Sj=>{"use strict";Object.defineProperty(Sj,"__esModule",{value:!0});var _2e=b2e();_2e.code='require("ajv/dist/runtime/uri").default';Sj.default=_2e});var N2e=_(_i=>{"use strict";Object.defineProperty(_i,"__esModule",{value:!0});_i.CodeGen=_i.Name=_i.nil=_i.stringify=_i.str=_i._=_i.KeywordCxt=void 0;var E7t=nS();Object.defineProperty(_i,"KeywordCxt",{enumerable:!0,get:function(){return E7t.KeywordCxt}});var vx=Jt();Object.defineProperty(_i,"_",{enumerable:!0,get:function(){return vx._}});Object.defineProperty(_i,"str",{enumerable:!0,get:function(){return vx.str}});Object.defineProperty(_i,"stringify",{enumerable:!0,get:function(){return vx.stringify}});Object.defineProperty(_i,"nil",{enumerable:!0,get:function(){return vx.nil}});Object.defineProperty(_i,"Name",{enumerable:!0,get:function(){return vx.Name}});Object.defineProperty(_i,"CodeGen",{enumerable:!0,get:function(){return vx.CodeGen}});var v7t=CP(),T2e=sS(),S7t=ej(),aS=wP(),I7t=Jt(),oS=eS(),PP=Zv(),Cj=Fr(),v2e=c2e(),C7t=E2e(),w2e=(t,e)=>new RegExp(t,e);w2e.code="new RegExp";var T7t=["removeAdditional","useDefaults","coerceTypes"],w7t=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),R7t={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."},N7t={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},S2e=200;function O7t(t){var e,r,n,s,i,a,o,c,u,l,d,f,p,m,h,y,g,b,x,A,S,I,R,w,N;let k=t.strict,B=(e=t.code)===null||e===void 0?void 0:e.optimize,M=B===!0||B===void 0?1:B||0,D=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:w2e,L=(s=t.uriResolver)!==null&&s!==void 0?s:C7t.default;return{strictSchema:(a=(i=t.strictSchema)!==null&&i!==void 0?i:k)!==null&&a!==void 0?a:!0,strictNumbers:(c=(o=t.strictNumbers)!==null&&o!==void 0?o:k)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:k)!==null&&l!==void 0?l:"log",strictTuples:(f=(d=t.strictTuples)!==null&&d!==void 0?d:k)!==null&&f!==void 0?f:"log",strictRequired:(m=(p=t.strictRequired)!==null&&p!==void 0?p:k)!==null&&m!==void 0?m:!1,code:t.code?{...t.code,optimize:M,regExp:D}:{optimize:M,regExp:D},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:S2e,loopEnum:(y=t.loopEnum)!==null&&y!==void 0?y:S2e,meta:(g=t.meta)!==null&&g!==void 0?g:!0,messages:(b=t.messages)!==null&&b!==void 0?b:!0,inlineRefs:(x=t.inlineRefs)!==null&&x!==void 0?x:!0,schemaId:(A=t.schemaId)!==null&&A!==void 0?A:"$id",addUsedSchema:(S=t.addUsedSchema)!==null&&S!==void 0?S:!0,validateSchema:(I=t.validateSchema)!==null&&I!==void 0?I:!0,validateFormats:(R=t.validateFormats)!==null&&R!==void 0?R:!0,unicodeRegExp:(w=t.unicodeRegExp)!==null&&w!==void 0?w:!0,int32range:(N=t.int32range)!==null&&N!==void 0?N:!0,uriResolver:L}}var cS=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...O7t(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new I7t.ValueScope({scope:{},prefixes:w7t,es5:r,lines:n}),this.logger=M7t(e.logger);let s=e.validateFormats;e.validateFormats=!1,this.RULES=(0,S7t.getRules)(),I2e.call(this,R7t,e,"NOT SUPPORTED"),I2e.call(this,N7t,e,"DEPRECATED","warn"),this._metaOpts=B7t.call(this),e.formats&&P7t.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&D7t.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),k7t.call(this),e.validateFormats=s}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,s=v2e;n==="id"&&(s={...v2e},s.id=s.$id,delete s.$id),r&&e&&this.addMetaSchema(s,s[n],!1)}defaultMeta(){let{meta:e,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof e=="object"?e[r]||e:void 0}validate(e,r){let n;if(typeof e=="string"){if(n=this.getSchema(e),!n)throw new Error(`no schema with key or ref "${e}"`)}else n=this.compile(e);let s=n(r);return"$async"in n||(this.errors=n.errors),s}compile(e,r){let n=this._addSchema(e,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(e,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,e,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 T2e.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(e,r,n,s=this.opts.validateSchema){if(Array.isArray(e)){for(let a of e)this.addSchema(a,void 0,n,s);return this}let i;if(typeof e=="object"){let{schemaId:a}=this.opts;if(i=e[a],i!==void 0&&typeof i!="string")throw new Error(`schema ${a} must be string`)}return r=(0,oS.normalizeId)(r||i),this._checkUnique(r),this.schemas[r]=this._addSchema(e,n,r,s,!0),this}addMetaSchema(e,r,n=this.opts.validateSchema){return this.addSchema(e,r,!0,n),this}validateSchema(e,r){if(typeof e=="boolean")return!0;let n;if(n=e.$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,e);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(e){let r;for(;typeof(r=C2e.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,s=new aS.SchemaEnv({schema:{},schemaId:n});if(r=aS.resolveSchema.call(this,s,e),!r)return;this.refs[e]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(e){if(e instanceof RegExp)return this._removeAllSchemas(this.schemas,e),this._removeAllSchemas(this.refs,e),this;switch(typeof e){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=C2e.call(this,e);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[e],delete this.refs[e],this}case"object":{let r=e;this._cache.delete(r);let n=e[this.opts.schemaId];return n&&(n=(0,oS.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(e){for(let r of e)this.addKeyword(r);return this}addKeyword(e,r){let n;if(typeof e=="string")n=e,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof e=="object"&&r===void 0){if(r=e,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($7t.call(this,n,r),!r)return(0,Cj.eachItem)(n,i=>Ij.call(this,i)),this;F7t.call(this,r);let s={...r,type:(0,PP.getJSONTypes)(r.type),schemaType:(0,PP.getJSONTypes)(r.schemaType)};return(0,Cj.eachItem)(n,s.type.length===0?i=>Ij.call(this,i,s):i=>s.type.forEach(a=>Ij.call(this,i,s,a))),this}getKeyword(e){let r=this.RULES.all[e];return typeof r=="object"?r.definition:!!r}removeKeyword(e){let{RULES:r}=this;delete r.keywords[e],delete r.all[e];for(let n of r.rules){let s=n.rules.findIndex(i=>i.keyword===e);s>=0&&n.rules.splice(s,1)}return this}addFormat(e,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[e]=r,this}errorsText(e=this.errors,{separator:r=", ",dataVar:n="data"}={}){return!e||e.length===0?"No errors":e.map(s=>`${n}${s.instancePath} ${s.message}`).reduce((s,i)=>s+r+i)}$dataMetaSchema(e,r){let n=this.RULES.all;e=JSON.parse(JSON.stringify(e));for(let s of r){let i=s.split("/").slice(1),a=e;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]=R2e(l))}}return e}_removeAllSchemas(e,r){for(let n in e){let s=e[n];(!r||r.test(n))&&(typeof s=="string"?delete e[n]:s&&!s.meta&&(this._cache.delete(s.schema),delete e[n]))}}_addSchema(e,r,n,s=this.opts.validateSchema,i=this.opts.addUsedSchema){let a,{schemaId:o}=this.opts;if(typeof e=="object")a=e[o];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof e!="boolean")throw new Error("schema must be object or boolean")}let c=this._cache.get(e);if(c!==void 0)return c;n=(0,oS.normalizeId)(a||n);let u=oS.getSchemaRefs.call(this,e,n);return c=new aS.SchemaEnv({schema:e,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(e,!0),c}_checkUnique(e){if(this.schemas[e]||this.refs[e])throw new Error(`schema with key or id "${e}" already exists`)}_compileSchemaEnv(e){if(e.meta?this._compileMetaSchema(e):aS.compileSchema.call(this,e),!e.validate)throw new Error("ajv implementation error");return e.validate}_compileMetaSchema(e){let r=this.opts;this.opts=this._metaOpts;try{aS.compileSchema.call(this,e)}finally{this.opts=r}}};cS.ValidationError=v7t.default;cS.MissingRefError=T2e.default;_i.default=cS;function I2e(t,e,r,n="error"){for(let s in t){let i=s;i in e&&this.logger[n](`${r}: option ${s}. ${t[i]}`)}}function C2e(t){return t=(0,oS.normalizeId)(t),this.schemas[t]||this.refs[t]}function k7t(){let t=this.opts.schemas;if(t)if(Array.isArray(t))this.addSchema(t);else for(let e in t)this.addSchema(t[e],e)}function P7t(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function D7t(t){if(Array.isArray(t)){this.addVocabulary(t);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let e in t){let r=t[e];r.keyword||(r.keyword=e),this.addKeyword(r)}}function B7t(){let t={...this.opts};for(let e of T7t)delete t[e];return t}var L7t={log(){},warn(){},error(){}};function M7t(t){if(t===!1)return L7t;if(t===void 0)return console;if(t.log&&t.warn&&t.error)return t;throw new Error("logger must implement log, warn and error methods")}var W7t=/^[a-z_$][a-z0-9_$:-]*$/i;function $7t(t,e){let{RULES:r}=this;if((0,Cj.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!W7t.test(n))throw new Error(`Keyword ${n} has invalid name`)}),!!e&&e.$data&&!("code"in e||"validate"in e))throw new Error('$data keyword must have "code" or "validate" function')}function Ij(t,e,r){var n;let s=e?.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[t]=!0,!e)return;let o={keyword:t,definition:{...e,type:(0,PP.getJSONTypes)(e.type),schemaType:(0,PP.getJSONTypes)(e.schemaType)}};e.before?U7t.call(this,a,o,e.before):a.rules.push(o),i.all[t]=o,(n=e.implements)===null||n===void 0||n.forEach(c=>this.addKeyword(c))}function U7t(t,e,r){let n=t.rules.findIndex(s=>s.keyword===r);n>=0?t.rules.splice(n,0,e):(t.rules.push(e),this.logger.warn(`rule ${r} is not defined`))}function F7t(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=R2e(e)),t.validateSchema=this.compile(e,!0))}var q7t={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function R2e(t){return{anyOf:[t,q7t]}}});var O2e=_(Tj=>{"use strict";Object.defineProperty(Tj,"__esModule",{value:!0});var j7t={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};Tj.default=j7t});var B2e=_(Th=>{"use strict";Object.defineProperty(Th,"__esModule",{value:!0});Th.callRef=Th.getValidate=void 0;var Q7t=sS(),k2e=hc(),Xa=Jt(),Sx=Jd(),P2e=wP(),DP=Fr(),H7t={keyword:"$ref",schemaType:"string",code(t){let{gen:e,schema:r,it:n}=t,{baseId:s,schemaEnv:i,validateName:a,opts:o,self:c}=n,{root:u}=i;if((r==="#"||r==="#/")&&s===u.baseId)return d();let l=P2e.resolveRef.call(c,u,s,r);if(l===void 0)throw new Q7t.default(n.opts.uriResolver,s,r);if(l instanceof P2e.SchemaEnv)return f(l);return p(l);function d(){if(i===u)return BP(t,a,i,i.$async);let m=e.scopeValue("root",{ref:u});return BP(t,(0,Xa._)`${m}.validate`,u,u.$async)}function f(m){let h=D2e(t,m);BP(t,h,m,m.$async)}function p(m){let h=e.scopeValue("schema",o.code.source===!0?{ref:m,code:(0,Xa.stringify)(m)}:{ref:m}),y=e.name("valid"),g=t.subschema({schema:m,dataTypes:[],schemaPath:Xa.nil,topSchemaRef:h,errSchemaPath:r},y);t.mergeEvaluated(g),t.ok(y)}}};function D2e(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,Xa._)`${r.scopeValue("wrapper",{ref:e})}.validate`}Th.getValidate=D2e;function BP(t,e,r,n){let{gen:s,it:i}=t,{allErrors:a,schemaEnv:o,opts:c}=i,u=c.passContext?Sx.default.this:Xa.nil;n?l():d();function l(){if(!o.$async)throw new Error("async schema referenced by sync schema");let m=s.let("valid");s.try(()=>{s.code((0,Xa._)`await ${(0,k2e.callValidateCode)(t,e,u)}`),p(e),a||s.assign(m,!0)},h=>{s.if((0,Xa._)`!(${h} instanceof ${i.ValidationError})`,()=>s.throw(h)),f(h),a||s.assign(m,!1)}),t.ok(m)}function d(){t.result((0,k2e.callValidateCode)(t,e,u),()=>p(e),()=>f(e))}function f(m){let h=(0,Xa._)`${m}.errors`;s.assign(Sx.default.vErrors,(0,Xa._)`${Sx.default.vErrors} === null ? ${h} : ${Sx.default.vErrors}.concat(${h})`),s.assign(Sx.default.errors,(0,Xa._)`${Sx.default.vErrors}.length`)}function p(m){var h;if(!i.opts.unevaluated)return;let y=(h=r?.validate)===null||h===void 0?void 0:h.evaluated;if(i.props!==!0)if(y&&!y.dynamicProps)y.props!==void 0&&(i.props=DP.mergeEvaluated.props(s,y.props,i.props));else{let g=s.var("props",(0,Xa._)`${m}.evaluated.props`);i.props=DP.mergeEvaluated.props(s,g,i.props,Xa.Name)}if(i.items!==!0)if(y&&!y.dynamicItems)y.items!==void 0&&(i.items=DP.mergeEvaluated.items(s,y.items,i.items));else{let g=s.var("items",(0,Xa._)`${m}.evaluated.items`);i.items=DP.mergeEvaluated.items(s,g,i.items,Xa.Name)}}}Th.callRef=BP;Th.default=H7t});var L2e=_(wj=>{"use strict";Object.defineProperty(wj,"__esModule",{value:!0});var G7t=O2e(),z7t=B2e(),K7t=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",G7t.default,z7t.default];wj.default=K7t});var M2e=_(Rj=>{"use strict";Object.defineProperty(Rj,"__esModule",{value:!0});var LP=Jt(),c0=LP.operators,MP={maximum:{okStr:"<=",ok:c0.LTE,fail:c0.GT},minimum:{okStr:">=",ok:c0.GTE,fail:c0.LT},exclusiveMaximum:{okStr:"<",ok:c0.LT,fail:c0.GTE},exclusiveMinimum:{okStr:">",ok:c0.GT,fail:c0.LTE}},V7t={message:({keyword:t,schemaCode:e})=>(0,LP.str)`must be ${MP[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,LP._)`{comparison: ${MP[t].okStr}, limit: ${e}}`},Y7t={keyword:Object.keys(MP),type:"number",schemaType:"number",$data:!0,error:V7t,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,LP._)`${r} ${MP[e].fail} ${n} || isNaN(${r})`)}};Rj.default=Y7t});var W2e=_(Nj=>{"use strict";Object.defineProperty(Nj,"__esModule",{value:!0});var uS=Jt(),J7t={message:({schemaCode:t})=>(0,uS.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,uS._)`{multipleOf: ${t}}`},X7t={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:J7t,code(t){let{gen:e,data:r,schemaCode:n,it:s}=t,i=s.opts.multipleOfPrecision,a=e.let("res"),o=i?(0,uS._)`Math.abs(Math.round(${a}) - ${a}) > 1e-${i}`:(0,uS._)`${a} !== parseInt(${a})`;t.fail$data((0,uS._)`(${n} === 0 || (${a} = ${r}/${n}, ${o}))`)}};Nj.default=X7t});var U2e=_(Oj=>{"use strict";Object.defineProperty(Oj,"__esModule",{value:!0});function $2e(t){let e=t.length,r=0,n=0,s;for(;n=55296&&s<=56319&&n{"use strict";Object.defineProperty(kj,"__esModule",{value:!0});var wh=Jt(),Z7t=Fr(),e9t=U2e(),t9t={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,wh.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,wh._)`{limit: ${t}}`},r9t={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:t9t,code(t){let{keyword:e,data:r,schemaCode:n,it:s}=t,i=e==="maxLength"?wh.operators.GT:wh.operators.LT,a=s.opts.unicode===!1?(0,wh._)`${r}.length`:(0,wh._)`${(0,Z7t.useFunc)(t.gen,e9t.default)}(${r})`;t.fail$data((0,wh._)`${a} ${i} ${n}`)}};kj.default=r9t});var q2e=_(Pj=>{"use strict";Object.defineProperty(Pj,"__esModule",{value:!0});var n9t=hc(),WP=Jt(),s9t={message:({schemaCode:t})=>(0,WP.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,WP._)`{pattern: ${t}}`},i9t={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:s9t,code(t){let{data:e,$data:r,schema:n,schemaCode:s,it:i}=t,a=i.opts.unicodeRegExp?"u":"",o=r?(0,WP._)`(new RegExp(${s}, ${a}))`:(0,n9t.usePattern)(t,n);t.fail$data((0,WP._)`!${o}.test(${e})`)}};Pj.default=i9t});var j2e=_(Dj=>{"use strict";Object.defineProperty(Dj,"__esModule",{value:!0});var lS=Jt(),a9t={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,lS.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,lS._)`{limit: ${t}}`},o9t={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:a9t,code(t){let{keyword:e,data:r,schemaCode:n}=t,s=e==="maxProperties"?lS.operators.GT:lS.operators.LT;t.fail$data((0,lS._)`Object.keys(${r}).length ${s} ${n}`)}};Dj.default=o9t});var Q2e=_(Bj=>{"use strict";Object.defineProperty(Bj,"__esModule",{value:!0});var dS=hc(),fS=Jt(),c9t=Fr(),u9t={message:({params:{missingProperty:t}})=>(0,fS.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,fS._)`{missingProperty: ${t}}`},l9t={keyword:"required",type:"object",schemaType:"array",$data:!0,error:u9t,code(t){let{gen:e,schema:r,schemaCode:n,data:s,$data:i,it:a}=t,{opts:o}=a;if(!i&&r.length===0)return;let c=r.length>=o.loopRequired;if(a.allErrors?u():l(),o.strictRequired){let p=t.parentSchema.properties,{definedProperties:m}=t.it;for(let h of r)if(p?.[h]===void 0&&!m.has(h)){let y=a.schemaEnv.baseId+a.errSchemaPath,g=`required property "${h}" is not defined at "${y}" (strictRequired)`;(0,c9t.checkStrictMode)(a,g,a.opts.strictRequired)}}function u(){if(c||i)t.block$data(fS.nil,d);else for(let p of r)(0,dS.checkReportMissingProp)(t,p)}function l(){let p=e.let("missing");if(c||i){let m=e.let("valid",!0);t.block$data(m,()=>f(p,m)),t.ok(m)}else e.if((0,dS.checkMissingProp)(t,r,p)),(0,dS.reportMissingProp)(t,p),e.else()}function d(){e.forOf("prop",n,p=>{t.setParams({missingProperty:p}),e.if((0,dS.noPropertyInData)(e,s,p,o.ownProperties),()=>t.error())})}function f(p,m){t.setParams({missingProperty:p}),e.forOf(p,n,()=>{e.assign(m,(0,dS.propertyInData)(e,s,p,o.ownProperties)),e.if((0,fS.not)(m),()=>{t.error(),e.break()})},fS.nil)}}};Bj.default=l9t});var H2e=_(Lj=>{"use strict";Object.defineProperty(Lj,"__esModule",{value:!0});var pS=Jt(),d9t={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,pS.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,pS._)`{limit: ${t}}`},f9t={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:d9t,code(t){let{keyword:e,data:r,schemaCode:n}=t,s=e==="maxItems"?pS.operators.GT:pS.operators.LT;t.fail$data((0,pS._)`${r}.length ${s} ${n}`)}};Lj.default=f9t});var $P=_(Mj=>{"use strict";Object.defineProperty(Mj,"__esModule",{value:!0});var G2e=sc();G2e.code='require("ajv/dist/runtime/equal").default';Mj.default=G2e});var z2e=_($j=>{"use strict";Object.defineProperty($j,"__esModule",{value:!0});var Wj=Zv(),Ei=Jt(),p9t=Fr(),m9t=$P(),h9t={message:({params:{i:t,j:e}})=>(0,Ei.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,Ei._)`{i: ${t}, j: ${e}}`},g9t={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:h9t,code(t){let{gen:e,data:r,$data:n,schema:s,parentSchema:i,schemaCode:a,it:o}=t;if(!n&&!s)return;let c=e.let("valid"),u=i.items?(0,Wj.getSchemaTypes)(i.items):[];t.block$data(c,l,(0,Ei._)`${a} === false`),t.ok(c);function l(){let m=e.let("i",(0,Ei._)`${r}.length`),h=e.let("j");t.setParams({i:m,j:h}),e.assign(c,!0),e.if((0,Ei._)`${m} > 1`,()=>(d()?f:p)(m,h))}function d(){return u.length>0&&!u.some(m=>m==="object"||m==="array")}function f(m,h){let y=e.name("item"),g=(0,Wj.checkDataTypes)(u,y,o.opts.strictNumbers,Wj.DataType.Wrong),b=e.const("indices",(0,Ei._)`{}`);e.for((0,Ei._)`;${m}--;`,()=>{e.let(y,(0,Ei._)`${r}[${m}]`),e.if(g,(0,Ei._)`continue`),u.length>1&&e.if((0,Ei._)`typeof ${y} == "string"`,(0,Ei._)`${y} += "_"`),e.if((0,Ei._)`typeof ${b}[${y}] == "number"`,()=>{e.assign(h,(0,Ei._)`${b}[${y}]`),t.error(),e.assign(c,!1).break()}).code((0,Ei._)`${b}[${y}] = ${m}`)})}function p(m,h){let y=(0,p9t.useFunc)(e,m9t.default),g=e.name("outer");e.label(g).for((0,Ei._)`;${m}--;`,()=>e.for((0,Ei._)`${h} = ${m}; ${h}--;`,()=>e.if((0,Ei._)`${y}(${r}[${m}], ${r}[${h}])`,()=>{t.error(),e.assign(c,!1).break(g)})))}}};$j.default=g9t});var K2e=_(Fj=>{"use strict";Object.defineProperty(Fj,"__esModule",{value:!0});var Uj=Jt(),y9t=Fr(),A9t=$P(),x9t={message:"must be equal to constant",params:({schemaCode:t})=>(0,Uj._)`{allowedValue: ${t}}`},b9t={keyword:"const",$data:!0,error:x9t,code(t){let{gen:e,data:r,$data:n,schemaCode:s,schema:i}=t;n||i&&typeof i=="object"?t.fail$data((0,Uj._)`!${(0,y9t.useFunc)(e,A9t.default)}(${r}, ${s})`):t.fail((0,Uj._)`${i} !== ${r}`)}};Fj.default=b9t});var V2e=_(qj=>{"use strict";Object.defineProperty(qj,"__esModule",{value:!0});var mS=Jt(),_9t=Fr(),E9t=$P(),v9t={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,mS._)`{allowedValues: ${t}}`},S9t={keyword:"enum",schemaType:"array",$data:!0,error:v9t,code(t){let{gen:e,data:r,$data:n,schema:s,schemaCode:i,it:a}=t;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,_9t.useFunc)(e,E9t.default)),l;if(o||n)l=e.let("valid"),t.block$data(l,d);else{if(!Array.isArray(s))throw new Error("ajv implementation error");let p=e.const("vSchema",i);l=(0,mS.or)(...s.map((m,h)=>f(p,h)))}t.pass(l);function d(){e.assign(l,!1),e.forOf("v",i,p=>e.if((0,mS._)`${u()}(${r}, ${p})`,()=>e.assign(l,!0).break()))}function f(p,m){let h=s[m];return typeof h=="object"&&h!==null?(0,mS._)`${u()}(${r}, ${p}[${m}])`:(0,mS._)`${r} === ${h}`}}};qj.default=S9t});var Y2e=_(jj=>{"use strict";Object.defineProperty(jj,"__esModule",{value:!0});var I9t=M2e(),C9t=W2e(),T9t=F2e(),w9t=q2e(),R9t=j2e(),N9t=Q2e(),O9t=H2e(),k9t=z2e(),P9t=K2e(),D9t=V2e(),B9t=[I9t.default,C9t.default,T9t.default,w9t.default,R9t.default,N9t.default,O9t.default,k9t.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},P9t.default,D9t.default];jj.default=B9t});var Hj=_(hS=>{"use strict";Object.defineProperty(hS,"__esModule",{value:!0});hS.validateAdditionalItems=void 0;var Rh=Jt(),Qj=Fr(),L9t={message:({params:{len:t}})=>(0,Rh.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,Rh._)`{limit: ${t}}`},M9t={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:L9t,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,Qj.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}J2e(t,n)}};function J2e(t,e){let{gen:r,schema:n,data:s,keyword:i,it:a}=t;a.items=!0;let o=r.const("len",(0,Rh._)`${s}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,Rh._)`${o} <= ${e.length}`);else if(typeof n=="object"&&!(0,Qj.alwaysValidSchema)(a,n)){let u=r.var("valid",(0,Rh._)`${o} <= ${e.length}`);r.if((0,Rh.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,o,l=>{t.subschema({keyword:i,dataProp:l,dataPropType:Qj.Type.Num},u),a.allErrors||r.if((0,Rh.not)(u),()=>r.break())})}}hS.validateAdditionalItems=J2e;hS.default=M9t});var Gj=_(gS=>{"use strict";Object.defineProperty(gS,"__esModule",{value:!0});gS.validateTuple=void 0;var X2e=Jt(),UP=Fr(),W9t=hc(),$9t={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return Z2e(t,"additionalItems",e);r.items=!0,!(0,UP.alwaysValidSchema)(r,e)&&t.ok((0,W9t.validateArray)(t))}};function Z2e(t,e,r=t.schema){let{gen:n,parentSchema:s,data:i,keyword:a,it:o}=t;l(s),o.opts.unevaluated&&r.length&&o.items!==!0&&(o.items=UP.mergeEvaluated.items(n,r.length,o.items));let c=n.name("valid"),u=n.const("len",(0,X2e._)`${i}.length`);r.forEach((d,f)=>{(0,UP.alwaysValidSchema)(o,d)||(n.if((0,X2e._)`${u} > ${f}`,()=>t.subschema({keyword:a,schemaProp:f,dataProp:f},c)),t.ok(c))});function l(d){let{opts:f,errSchemaPath:p}=o,m=r.length,h=m===d.minItems&&(m===d.maxItems||d[e]===!1);if(f.strictTuples&&!h){let y=`"${a}" is ${m}-tuple, but minItems or maxItems/${e} are not specified or different at path "${p}"`;(0,UP.checkStrictMode)(o,y,f.strictTuples)}}}gS.validateTuple=Z2e;gS.default=$9t});var eTe=_(zj=>{"use strict";Object.defineProperty(zj,"__esModule",{value:!0});var U9t=Gj(),F9t={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,U9t.validateTuple)(t,"items")};zj.default=F9t});var rTe=_(Kj=>{"use strict";Object.defineProperty(Kj,"__esModule",{value:!0});var tTe=Jt(),q9t=Fr(),j9t=hc(),Q9t=Hj(),H9t={message:({params:{len:t}})=>(0,tTe.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,tTe._)`{limit: ${t}}`},G9t={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:H9t,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:s}=r;n.items=!0,!(0,q9t.alwaysValidSchema)(n,e)&&(s?(0,Q9t.validateAdditionalItems)(t,s):t.ok((0,j9t.validateArray)(t)))}};Kj.default=G9t});var nTe=_(Vj=>{"use strict";Object.defineProperty(Vj,"__esModule",{value:!0});var yc=Jt(),FP=Fr(),z9t={message:({params:{min:t,max:e}})=>e===void 0?(0,yc.str)`must contain at least ${t} valid item(s)`:(0,yc.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,yc._)`{minContains: ${t}}`:(0,yc._)`{minContains: ${t}, maxContains: ${e}}`},K9t={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:z9t,code(t){let{gen:e,schema:r,parentSchema:n,data:s,it:i}=t,a,o,{minContains:c,maxContains:u}=n;i.opts.next?(a=c===void 0?1:c,o=u):a=1;let l=e.const("len",(0,yc._)`${s}.length`);if(t.setParams({min:a,max:o}),o===void 0&&a===0){(0,FP.checkStrictMode)(i,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(o!==void 0&&a>o){(0,FP.checkStrictMode)(i,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,FP.alwaysValidSchema)(i,r)){let h=(0,yc._)`${l} >= ${a}`;o!==void 0&&(h=(0,yc._)`${h} && ${l} <= ${o}`),t.pass(h);return}i.items=!0;let d=e.name("valid");o===void 0&&a===1?p(d,()=>e.if(d,()=>e.break())):a===0?(e.let(d,!0),o!==void 0&&e.if((0,yc._)`${s}.length > 0`,f)):(e.let(d,!1),f()),t.result(d,()=>t.reset());function f(){let h=e.name("_valid"),y=e.let("count",0);p(h,()=>e.if(h,()=>m(y)))}function p(h,y){e.forRange("i",0,l,g=>{t.subschema({keyword:"contains",dataProp:g,dataPropType:FP.Type.Num,compositeRule:!0},h),y()})}function m(h){e.code((0,yc._)`${h}++`),o===void 0?e.if((0,yc._)`${h} >= ${a}`,()=>e.assign(d,!0).break()):(e.if((0,yc._)`${h} > ${o}`,()=>e.assign(d,!1).break()),a===1?e.assign(d,!0):e.if((0,yc._)`${h} >= ${a}`,()=>e.assign(d,!0)))}}};Vj.default=K9t});var aTe=_(yl=>{"use strict";Object.defineProperty(yl,"__esModule",{value:!0});yl.validateSchemaDeps=yl.validatePropertyDeps=yl.error=void 0;var Yj=Jt(),V9t=Fr(),yS=hc();yl.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,Yj.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,Yj._)`{property: ${t}, + missingProperty: ${n}, + depsCount: ${e}, + deps: ${r}}`};var Y9t={keyword:"dependencies",type:"object",schemaType:"object",error:yl.error,code(t){let[e,r]=J9t(t);sTe(t,e),iTe(t,r)}};function J9t({schema:t}){let e={},r={};for(let n in t){if(n==="__proto__")continue;let s=Array.isArray(t[n])?e:r;s[n]=t[n]}return[e,r]}function sTe(t,e=t.schema){let{gen:r,data:n,it:s}=t;if(Object.keys(e).length===0)return;let i=r.let("missing");for(let a in e){let o=e[a];if(o.length===0)continue;let c=(0,yS.propertyInData)(r,n,a,s.opts.ownProperties);t.setParams({property:a,depsCount:o.length,deps:o.join(", ")}),s.allErrors?r.if(c,()=>{for(let u of o)(0,yS.checkReportMissingProp)(t,u)}):(r.if((0,Yj._)`${c} && (${(0,yS.checkMissingProp)(t,o,i)})`),(0,yS.reportMissingProp)(t,i),r.else())}}yl.validatePropertyDeps=sTe;function iTe(t,e=t.schema){let{gen:r,data:n,keyword:s,it:i}=t,a=r.name("valid");for(let o in e)(0,V9t.alwaysValidSchema)(i,e[o])||(r.if((0,yS.propertyInData)(r,n,o,i.opts.ownProperties),()=>{let c=t.subschema({keyword:s,schemaProp:o},a);t.mergeValidEvaluated(c,a)},()=>r.var(a,!0)),t.ok(a))}yl.validateSchemaDeps=iTe;yl.default=Y9t});var cTe=_(Jj=>{"use strict";Object.defineProperty(Jj,"__esModule",{value:!0});var oTe=Jt(),X9t=Fr(),Z9t={message:"property name must be valid",params:({params:t})=>(0,oTe._)`{propertyName: ${t.propertyName}}`},eqt={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:Z9t,code(t){let{gen:e,schema:r,data:n,it:s}=t;if((0,X9t.alwaysValidSchema)(s,r))return;let i=e.name("valid");e.forIn("key",n,a=>{t.setParams({propertyName:a}),t.subschema({keyword:"propertyNames",data:a,dataTypes:["string"],propertyName:a,compositeRule:!0},i),e.if((0,oTe.not)(i),()=>{t.error(!0),s.allErrors||e.break()})}),t.ok(i)}};Jj.default=eqt});var Zj=_(Xj=>{"use strict";Object.defineProperty(Xj,"__esModule",{value:!0});var qP=hc(),lu=Jt(),tqt=Jd(),jP=Fr(),rqt={message:"must NOT have additional properties",params:({params:t})=>(0,lu._)`{additionalProperty: ${t.additionalProperty}}`},nqt={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:rqt,code(t){let{gen:e,schema:r,parentSchema:n,data:s,errsCount:i,it:a}=t;if(!i)throw new Error("ajv implementation error");let{allErrors:o,opts:c}=a;if(a.props=!0,c.removeAdditional!=="all"&&(0,jP.alwaysValidSchema)(a,r))return;let u=(0,qP.allSchemaProperties)(n.properties),l=(0,qP.allSchemaProperties)(n.patternProperties);d(),t.ok((0,lu._)`${i} === ${tqt.default.errors}`);function d(){e.forIn("key",s,y=>{!u.length&&!l.length?m(y):e.if(f(y),()=>m(y))})}function f(y){let g;if(u.length>8){let b=(0,jP.schemaRefOrVal)(a,n.properties,"properties");g=(0,qP.isOwnProperty)(e,b,y)}else u.length?g=(0,lu.or)(...u.map(b=>(0,lu._)`${y} === ${b}`)):g=lu.nil;return l.length&&(g=(0,lu.or)(g,...l.map(b=>(0,lu._)`${(0,qP.usePattern)(t,b)}.test(${y})`))),(0,lu.not)(g)}function p(y){e.code((0,lu._)`delete ${s}[${y}]`)}function m(y){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){p(y);return}if(r===!1){t.setParams({additionalProperty:y}),t.error(),o||e.break();return}if(typeof r=="object"&&!(0,jP.alwaysValidSchema)(a,r)){let g=e.name("valid");c.removeAdditional==="failing"?(h(y,g,!1),e.if((0,lu.not)(g),()=>{t.reset(),p(y)})):(h(y,g),o||e.if((0,lu.not)(g),()=>e.break()))}}function h(y,g,b){let x={keyword:"additionalProperties",dataProp:y,dataPropType:jP.Type.Str};b===!1&&Object.assign(x,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(x,g)}}};Xj.default=nqt});var dTe=_(tQ=>{"use strict";Object.defineProperty(tQ,"__esModule",{value:!0});var sqt=nS(),uTe=hc(),eQ=Fr(),lTe=Zj(),iqt={keyword:"properties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,parentSchema:n,data:s,it:i}=t;i.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&lTe.default.code(new sqt.KeywordCxt(i,lTe.default,"additionalProperties"));let a=(0,uTe.allSchemaProperties)(r);for(let d of a)i.definedProperties.add(d);i.opts.unevaluated&&a.length&&i.props!==!0&&(i.props=eQ.mergeEvaluated.props(e,(0,eQ.toHash)(a),i.props));let o=a.filter(d=>!(0,eQ.alwaysValidSchema)(i,r[d]));if(o.length===0)return;let c=e.name("valid");for(let d of o)u(d)?l(d):(e.if((0,uTe.propertyInData)(e,s,d,i.opts.ownProperties)),l(d),i.allErrors||e.else().var(c,!0),e.endIf()),t.it.definedProperties.add(d),t.ok(c);function u(d){return i.opts.useDefaults&&!i.compositeRule&&r[d].default!==void 0}function l(d){t.subschema({keyword:"properties",schemaProp:d,dataProp:d},c)}}};tQ.default=iqt});var hTe=_(rQ=>{"use strict";Object.defineProperty(rQ,"__esModule",{value:!0});var fTe=hc(),QP=Jt(),pTe=Fr(),mTe=Fr(),aqt={keyword:"patternProperties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,data:n,parentSchema:s,it:i}=t,{opts:a}=i,o=(0,fTe.allSchemaProperties)(r),c=o.filter(h=>(0,pTe.alwaysValidSchema)(i,r[h]));if(o.length===0||c.length===o.length&&(!i.opts.unevaluated||i.props===!0))return;let u=a.strictSchema&&!a.allowMatchingProperties&&s.properties,l=e.name("valid");i.props!==!0&&!(i.props instanceof QP.Name)&&(i.props=(0,mTe.evaluatedPropsToName)(e,i.props));let{props:d}=i;f();function f(){for(let h of o)u&&p(h),i.allErrors?m(h):(e.var(l,!0),m(h),e.if(l))}function p(h){for(let y in u)new RegExp(h).test(y)&&(0,pTe.checkStrictMode)(i,`property ${y} matches pattern ${h} (use allowMatchingProperties)`)}function m(h){e.forIn("key",n,y=>{e.if((0,QP._)`${(0,fTe.usePattern)(t,h)}.test(${y})`,()=>{let g=c.includes(h);g||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:y,dataPropType:mTe.Type.Str},l),i.opts.unevaluated&&d!==!0?e.assign((0,QP._)`${d}[${y}]`,!0):!g&&!i.allErrors&&e.if((0,QP.not)(l),()=>e.break())})})}}};rQ.default=aqt});var gTe=_(nQ=>{"use strict";Object.defineProperty(nQ,"__esModule",{value:!0});var oqt=Fr(),cqt={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,oqt.alwaysValidSchema)(n,r)){t.fail();return}let s=e.name("valid");t.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},s),t.failResult(s,()=>t.reset(),()=>t.error())},error:{message:"must NOT be valid"}};nQ.default=cqt});var yTe=_(sQ=>{"use strict";Object.defineProperty(sQ,"__esModule",{value:!0});var uqt=hc(),lqt={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:uqt.validateUnion,error:{message:"must match a schema in anyOf"}};sQ.default=lqt});var ATe=_(iQ=>{"use strict";Object.defineProperty(iQ,"__esModule",{value:!0});var HP=Jt(),dqt=Fr(),fqt={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,HP._)`{passingSchemas: ${t.passing}}`},pqt={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:fqt,code(t){let{gen:e,schema:r,parentSchema:n,it:s}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(s.opts.discriminator&&n.discriminator)return;let i=r,a=e.let("valid",!1),o=e.let("passing",null),c=e.name("_valid");t.setParams({passing:o}),e.block(u),t.result(a,()=>t.reset(),()=>t.error(!0));function u(){i.forEach((l,d)=>{let f;(0,dqt.alwaysValidSchema)(s,l)?e.var(c,!0):f=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,HP._)`${c} && ${a}`).assign(a,!1).assign(o,(0,HP._)`[${o}, ${d}]`).else(),e.if(c,()=>{e.assign(a,!0),e.assign(o,d),f&&t.mergeEvaluated(f,HP.Name)})})}}};iQ.default=pqt});var xTe=_(aQ=>{"use strict";Object.defineProperty(aQ,"__esModule",{value:!0});var mqt=Fr(),hqt={keyword:"allOf",schemaType:"array",code(t){let{gen:e,schema:r,it:n}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");let s=e.name("valid");r.forEach((i,a)=>{if((0,mqt.alwaysValidSchema)(n,i))return;let o=t.subschema({keyword:"allOf",schemaProp:a},s);t.ok(s),t.mergeEvaluated(o)})}};aQ.default=hqt});var ETe=_(oQ=>{"use strict";Object.defineProperty(oQ,"__esModule",{value:!0});var GP=Jt(),_Te=Fr(),gqt={message:({params:t})=>(0,GP.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,GP._)`{failingKeyword: ${t.ifClause}}`},yqt={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:gqt,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,_Te.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let s=bTe(n,"then"),i=bTe(n,"else");if(!s&&!i)return;let a=e.let("valid",!0),o=e.name("_valid");if(c(),t.reset(),s&&i){let l=e.let("ifClause");t.setParams({ifClause:l}),e.if(o,u("then",l),u("else",l))}else s?e.if(o,u("then")):e.if((0,GP.not)(o),u("else"));t.pass(a,()=>t.error(!0));function c(){let l=t.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},o);t.mergeEvaluated(l)}function u(l,d){return()=>{let f=t.subschema({keyword:l},o);e.assign(a,o),t.mergeValidEvaluated(f,a),d?e.assign(d,(0,GP._)`${l}`):t.setParams({ifClause:l})}}}};function bTe(t,e){let r=t.schema[e];return r!==void 0&&!(0,_Te.alwaysValidSchema)(t,r)}oQ.default=yqt});var vTe=_(cQ=>{"use strict";Object.defineProperty(cQ,"__esModule",{value:!0});var Aqt=Fr(),xqt={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,Aqt.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};cQ.default=xqt});var STe=_(uQ=>{"use strict";Object.defineProperty(uQ,"__esModule",{value:!0});var bqt=Hj(),_qt=eTe(),Eqt=Gj(),vqt=rTe(),Sqt=nTe(),Iqt=aTe(),Cqt=cTe(),Tqt=Zj(),wqt=dTe(),Rqt=hTe(),Nqt=gTe(),Oqt=yTe(),kqt=ATe(),Pqt=xTe(),Dqt=ETe(),Bqt=vTe();function Lqt(t=!1){let e=[Nqt.default,Oqt.default,kqt.default,Pqt.default,Dqt.default,Bqt.default,Cqt.default,Tqt.default,Iqt.default,wqt.default,Rqt.default];return t?e.push(_qt.default,vqt.default):e.push(bqt.default,Eqt.default),e.push(Sqt.default),e}uQ.default=Lqt});var ITe=_(lQ=>{"use strict";Object.defineProperty(lQ,"__esModule",{value:!0});var ps=Jt(),Mqt={message:({schemaCode:t})=>(0,ps.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,ps._)`{format: ${t}}`},Wqt={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:Mqt,code(t,e){let{gen:r,data:n,$data:s,schema:i,schemaCode:a,it:o}=t,{opts:c,errSchemaPath:u,schemaEnv:l,self:d}=o;if(!c.validateFormats)return;s?f():p();function f(){let m=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),h=r.const("fDef",(0,ps._)`${m}[${a}]`),y=r.let("fType"),g=r.let("format");r.if((0,ps._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(y,(0,ps._)`${h}.type || "string"`).assign(g,(0,ps._)`${h}.validate`),()=>r.assign(y,(0,ps._)`"string"`).assign(g,h)),t.fail$data((0,ps.or)(b(),x()));function b(){return c.strictSchema===!1?ps.nil:(0,ps._)`${a} && !${g}`}function x(){let A=l.$async?(0,ps._)`(${h}.async ? await ${g}(${n}) : ${g}(${n}))`:(0,ps._)`${g}(${n})`,S=(0,ps._)`(typeof ${g} == "function" ? ${A} : ${g}.test(${n}))`;return(0,ps._)`${g} && ${g} !== true && ${y} === ${e} && !${S}`}}function p(){let m=d.formats[i];if(!m){b();return}if(m===!0)return;let[h,y,g]=x(m);h===e&&t.pass(A());function b(){if(c.strictSchema===!1){d.logger.warn(S());return}throw new Error(S());function S(){return`unknown format "${i}" ignored in schema at path "${u}"`}}function x(S){let I=S instanceof RegExp?(0,ps.regexpCode)(S):c.code.formats?(0,ps._)`${c.code.formats}${(0,ps.getProperty)(i)}`:void 0,R=r.scopeValue("formats",{key:i,ref:S,code:I});return typeof S=="object"&&!(S instanceof RegExp)?[S.type||"string",S.validate,(0,ps._)`${R}.validate`]:["string",S,R]}function A(){if(typeof m=="object"&&!(m instanceof RegExp)&&m.async){if(!l.$async)throw new Error("async format in sync schema");return(0,ps._)`await ${g}(${n})`}return typeof y=="function"?(0,ps._)`${g}(${n})`:(0,ps._)`${g}.test(${n})`}}}};lQ.default=Wqt});var CTe=_(dQ=>{"use strict";Object.defineProperty(dQ,"__esModule",{value:!0});var $qt=ITe(),Uqt=[$qt.default];dQ.default=Uqt});var TTe=_(Ix=>{"use strict";Object.defineProperty(Ix,"__esModule",{value:!0});Ix.contentVocabulary=Ix.metadataVocabulary=void 0;Ix.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Ix.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var RTe=_(fQ=>{"use strict";Object.defineProperty(fQ,"__esModule",{value:!0});var Fqt=L2e(),qqt=Y2e(),jqt=STe(),Qqt=CTe(),wTe=TTe(),Hqt=[Fqt.default,qqt.default,(0,jqt.default)(),Qqt.default,wTe.metadataVocabulary,wTe.contentVocabulary];fQ.default=Hqt});var OTe=_(zP=>{"use strict";Object.defineProperty(zP,"__esModule",{value:!0});zP.DiscrError=void 0;var NTe;(function(t){t.Tag="tag",t.Mapping="mapping"})(NTe||(zP.DiscrError=NTe={}))});var PTe=_(mQ=>{"use strict";Object.defineProperty(mQ,"__esModule",{value:!0});var Cx=Jt(),pQ=OTe(),kTe=wP(),Gqt=sS(),zqt=Fr(),Kqt={message:({params:{discrError:t,tagName:e}})=>t===pQ.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,Cx._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},Vqt={keyword:"discriminator",type:"object",schemaType:"object",error:Kqt,code(t){let{gen:e,data:r,schema:n,parentSchema:s,it:i}=t,{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=e.let("valid",!1),u=e.const("tag",(0,Cx._)`${r}${(0,Cx.getProperty)(o)}`);e.if((0,Cx._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:pQ.DiscrError.Tag,tag:u,tagName:o})),t.ok(c);function l(){let p=f();e.if(!1);for(let m in p)e.elseIf((0,Cx._)`${u} === ${m}`),e.assign(c,d(p[m]));e.else(),t.error(!1,{discrError:pQ.DiscrError.Mapping,tag:u,tagName:o}),e.endIf()}function d(p){let m=e.name("valid"),h=t.subschema({keyword:"oneOf",schemaProp:p},m);return t.mergeEvaluated(h,Cx.Name),m}function f(){var p;let m={},h=g(s),y=!0;for(let A=0;A{Yqt.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 LTe=_((Ln,hQ)=>{"use strict";Object.defineProperty(Ln,"__esModule",{value:!0});Ln.MissingRefError=Ln.ValidationError=Ln.CodeGen=Ln.Name=Ln.nil=Ln.stringify=Ln.str=Ln._=Ln.KeywordCxt=Ln.Ajv=void 0;var Jqt=N2e(),Xqt=RTe(),Zqt=PTe(),BTe=DTe(),ejt=["/properties"],KP="http://json-schema.org/draft-07/schema",Tx=class extends Jqt.default{_addVocabularies(){super._addVocabularies(),Xqt.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(Zqt.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(BTe,ejt):BTe;this.addMetaSchema(e,KP,!1),this.refs["http://json-schema.org/schema"]=KP}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(KP)?KP:void 0)}};Ln.Ajv=Tx;hQ.exports=Ln=Tx;hQ.exports.Ajv=Tx;Object.defineProperty(Ln,"__esModule",{value:!0});Ln.default=Tx;var tjt=nS();Object.defineProperty(Ln,"KeywordCxt",{enumerable:!0,get:function(){return tjt.KeywordCxt}});var wx=Jt();Object.defineProperty(Ln,"_",{enumerable:!0,get:function(){return wx._}});Object.defineProperty(Ln,"str",{enumerable:!0,get:function(){return wx.str}});Object.defineProperty(Ln,"stringify",{enumerable:!0,get:function(){return wx.stringify}});Object.defineProperty(Ln,"nil",{enumerable:!0,get:function(){return wx.nil}});Object.defineProperty(Ln,"Name",{enumerable:!0,get:function(){return wx.Name}});Object.defineProperty(Ln,"CodeGen",{enumerable:!0,get:function(){return wx.CodeGen}});var rjt=CP();Object.defineProperty(Ln,"ValidationError",{enumerable:!0,get:function(){return rjt.default}});var njt=sS();Object.defineProperty(Ln,"MissingRefError",{enumerable:!0,get:function(){return njt.default}})});var MTe=_(Rx=>{"use strict";Object.defineProperty(Rx,"__esModule",{value:!0});Rx.formatLimitDefinition=void 0;var sjt=LTe(),du=Jt(),u0=du.operators,VP={formatMaximum:{okStr:"<=",ok:u0.LTE,fail:u0.GT},formatMinimum:{okStr:">=",ok:u0.GTE,fail:u0.LT},formatExclusiveMaximum:{okStr:"<",ok:u0.LT,fail:u0.GTE},formatExclusiveMinimum:{okStr:">",ok:u0.GT,fail:u0.LTE}},ijt={message:({keyword:t,schemaCode:e})=>du.str`should be ${VP[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>du._`{comparison: ${VP[t].okStr}, limit: ${e}}`};Rx.formatLimitDefinition={keyword:Object.keys(VP),type:"string",schemaType:"string",$data:!0,error:ijt,code(t){let{gen:e,data:r,schemaCode:n,keyword:s,it:i}=t,{opts:a,self:o}=i;if(!a.validateFormats)return;let c=new sjt.KeywordCxt(i,o.RULES.all.format.definition,"format");c.$data?u():l();function u(){let f=e.scopeValue("formats",{ref:o.formats,code:a.code.formats}),p=e.const("fmt",du._`${f}[${c.schemaCode}]`);t.fail$data(du.or(du._`typeof ${p} != "object"`,du._`${p} instanceof RegExp`,du._`typeof ${p}.compare != "function"`,d(p)))}function l(){let f=c.schema,p=o.formats[f];if(!p||p===!0)return;if(typeof p!="object"||p instanceof RegExp||typeof p.compare!="function")throw new Error(`"${s}": format "${f}" does not define "compare" function`);let m=e.scopeValue("formats",{key:f,ref:p,code:a.code.formats?du._`${a.code.formats}${du.getProperty(f)}`:void 0});t.fail$data(d(m))}function d(f){return du._`${f}.compare(${r}, ${n}) ${VP[s].fail} 0`}},dependencies:["format"]};var ajt=t=>(t.addKeyword(Rx.formatLimitDefinition),t);Rx.default=ajt});var FTe=_((AS,UTe)=>{"use strict";Object.defineProperty(AS,"__esModule",{value:!0});var Nx=lCe(),ojt=MTe(),gQ=Jt(),WTe=new gQ.Name("fullFormats"),cjt=new gQ.Name("fastFormats"),yQ=(t,e={keywords:!0})=>{if(Array.isArray(e))return $Te(t,e,Nx.fullFormats,WTe),t;let[r,n]=e.mode==="fast"?[Nx.fastFormats,cjt]:[Nx.fullFormats,WTe],s=e.formats||Nx.formatNames;return $Te(t,s,r,n),e.keywords&&ojt.default(t),t};yQ.get=(t,e="full")=>{let n=(e==="fast"?Nx.fastFormats:Nx.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function $Te(t,e,r,n){var s,i;(s=(i=t.opts.code).formats)!==null&&s!==void 0||(i.formats=gQ._`require("ajv-formats/dist/formats").${n}`);for(let a of e)t.addFormat(a,r[a])}UTe.exports=AS=yQ;Object.defineProperty(AS,"__esModule",{value:!0});AS.default=yQ});var QTe=_((l9r,jTe)=>{"use strict";var ujt=cIe().default,ljt=Tq(),qTe=wq(),AQ=class{constructor(e,r){r.mode==="JTD"?this.ajv=new ljt(Object.assign({},qTe,r.customOptions)):this.ajv=new ujt(Object.assign({},qTe,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&&FTe()(this.ajv),r.onCreate?.(this.ajv);let s=Object.values(e);for(let i of s)this.ajv.addSchema(i)}buildValidatorFunction({schema:e}){if(e.$id){let r=this.ajv.getSchema(e.$id);if(r)return r}return this.ajv.compile(e)}};jTe.exports=AQ});var GTe=_((d9r,HTe)=>{"use strict";var djt=Tq(),fjt=wq(),xQ=class{constructor(e,r){this.ajv=new djt(Object.assign({},fjt,r))}buildSerializerFunction({schema:e}){return this.ajv.compileSerializer(e)}};HTe.exports=xQ});var VTe=_((bS,KTe)=>{"use strict";Object.defineProperty(bS,"__esModule",{value:!0});var xS=Nk(),fu=QA();function zTe(t,e){if(!t.opts.code.source)throw new Error("moduleCode: ajv instance must have code.source option");let{_n:r}=t.scope.opts;return typeof e=="function"?s(e.source):e!==void 0?i(e,n):i(t.schemas,o=>o.meta?void 0:t.compile(o.schema));function n(o){let c=t.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 t.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,fu._)`"use strict";`;for(let f in o){let p=c(o[f]);if(p){let m=a(l,p.source),h=t.opts.code.esm?(0,fu._)`export const ${(0,fu.getEsmExportName)(f)}`:(0,fu._)`exports${(0,fu.getProperty)(f)}`;d=(0,fu._)`${d}${r}${h} = ${(u=p.source)===null||u===void 0?void 0:u.validateName};${r}${m}`}}return`${d}`}function a(o,c){if(!c)throw new Error('moduleCode: function does not have "source" property');if(f(c.validateName)===xS.UsedValueState.Completed)return fu.nil;p(c.validateName,xS.UsedValueState.Started);let u=t.scope.scopeCode(c.scopeValues,o,d),l=new fu._Code(`${u}${r}${c.validateCode}`);return c.evaluated?(0,fu._)`${l}${c.validateName}.evaluated = ${c.evaluated};${r}`:l;function d(m){var h;let y=(h=m.value)===null||h===void 0?void 0:h.ref;if(m.prefix==="validate"&&typeof y=="function")return a(o,y.source);if((m.prefix==="root"||m.prefix==="wrapper")&&typeof y=="object"){let{validate:g,validateName:b}=y;if(!b)throw new Error("ajv internal error");let x=t.opts.code.es5?xS.varKinds.var:xS.varKinds.const,A=(0,fu._)`${x} ${m} = {validate: ${b}};`;if(f(b)===xS.UsedValueState.Started)return A;let S=a(o,g?.source);return(0,fu._)`${A}${r}${S}`}}function f(m){var h;return(h=o[m.prefix])===null||h===void 0?void 0:h.get(m)}function p(m,h){let{prefix:y}=m;(o[y]=o[y]||new Map).set(m,h)}}}KTe.exports=bS=zTe;Object.defineProperty(bS,"__esModule",{value:!0});bS.default=zTe});var XTe=_((f9r,JTe)=>{"use strict";var YTe=bQ(),pjt=VTe().default;function mjt(t={readMode:!0}){if(t.readMode===!0&&!t.restoreFunction)throw new Error("You must provide a restoreFunction options when readMode ON");if(t.readMode!==!0&&!t.storeFunction)throw new Error("You must provide a storeFunction options when readMode OFF");if(t.readMode===!0)return function(){return function(n){return t.restoreFunction(n)}};let e=YTe();return function(n,s={}){(!s.customOptions||!s.customOptions.code)&&(s.customOptions=Object.assign({},s.customOptions,{code:{source:!0}}));let i=e(n,s);return function(a){let o=i(a),c=pjt(i[YTe.AjvReference].ajv,o);return t.storeFunction(a,c),o}}}JTe.exports=mjt});var bQ=_((p9r,Ox)=>{"use strict";var ewe=Symbol.for("fastify.ajv-compiler.reference"),hjt=QTe(),gjt=GTe();function _Q(t){let e=new Map,r=new Map;return t&&t.jtdSerializer===!0?function(s,i){let a=ZTe({},i);if(r.has(a))return r.get(a);let o=new gjt(s,i),c=o.buildSerializerFunction.bind(o);return r.set(a,c),c}:function(s,i){let a=ZTe(s,i.customOptions);if(e.has(a))return e.get(a);let o=new hjt(s,i),c=o.buildValidatorFunction.bind(o);return e.set(a,c),i.customOptions.code!==void 0&&(c[ewe]=o),c}}function ZTe(t,e){let r=JSON.stringify(t),n=JSON.stringify(e);return`${r}${n}`}Ox.exports=_Q;Ox.exports.default=_Q;Ox.exports.AjvCompiler=_Q;Ox.exports.AjvReference=ewe;Ox.exports.StandaloneValidator=XTe()});var EQ=_((m9r,twe)=>{"use strict";var{buildSchemas:yjt}=hE(),Ajt=d7(),xjt=bQ();function bjt(t,e){if(t)return new kx(t,e);let r=Object.assign({buildValidator:null,buildSerializer:null},e?.compilersFactory);r.buildValidator||(r.buildValidator=xjt()),r.buildSerializer||(r.buildSerializer=Ajt());let n={bucket:e&&e.bucket||yjt,compilersFactory:r,isCustomValidatorCompiler:typeof e?.compilersFactory?.buildValidator=="function",isCustomSerializerCompiler:typeof e?.compilersFactory?.buildValidator=="function"};return new kx(void 0,n)}var kx=class{constructor(e,r){this.opts=r||e?.opts,this.addedSchemas=!1,this.compilersFactory=this.opts.compilersFactory,e?(this.schemaBucket=this.opts.bucket(e.getSchemas()),this.validatorCompiler=e.getValidatorCompiler(),this.serializerCompiler=e.getSerializerCompiler(),this.isCustomValidatorCompiler=e.isCustomValidatorCompiler,this.isCustomSerializerCompiler=e.isCustomSerializerCompiler,this.parent=e):(this.schemaBucket=this.opts.bucket(),this.isCustomValidatorCompiler=this.opts.isCustomValidatorCompiler||!1,this.isCustomSerializerCompiler=this.opts.isCustomSerializerCompiler||!1)}add(e){return this.addedSchemas=!0,this.schemaBucket.add(e)}getSchema(e){return this.schemaBucket.getSchema(e)}getSchemas(){return this.schemaBucket.getSchemas()}setValidatorCompiler(e){this.compilersFactory=Object.assign({},this.compilersFactory,{buildValidator:()=>e}),this.validatorCompiler=e,this.isCustomValidatorCompiler=!0}setSerializerCompiler(e){this.compilersFactory=Object.assign({},this.compilersFactory,{buildSerializer:()=>e}),this.serializerCompiler=e,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(e){this.validatorCompiler!==void 0&&!this.addedSchemas||(this.validatorCompiler=this.getValidatorBuilder()(this.schemaBucket.getSchemas(),e.ajv))}setupSerializer(e){this.serializerCompiler!==void 0&&!this.addedSchemas||(this.serializerCompiler=this.getSerializerBuilder()(this.schemaBucket.getSchemas(),e.serializerOpts))}};kx.buildSchemaController=bjt;twe.exports=kx});var wQ=_((h9r,TQ)=>{"use strict";var vQ=PF(),IQ=require("node:assert"),CQ=Symbol.for("registered-plugin"),{kTestInternals:_jt}=zs(),{exist:Ejt,existReply:vjt,existRequest:Sjt}=jF(),{FST_ERR_PLUGIN_VERSION_MISMATCH:Ijt,FST_ERR_PLUGIN_NOT_PRESENT_IN_INSTANCE:Cjt}=Di(),{FSTWRN002:Tjt}=wd();function _S(t){return t[Symbol.for("plugin-meta")]}function rwe(t){let e=nwe(t);if(e)return e;let r=require.cache;if(r){let n=Object.keys(r);for(let s=0;se.trim()).join(" -- ")}function nwe(t){return t[Symbol.for("fastify.display-name")]}function swe(t){return!!t[Symbol.for("skip-override")]}function iwe(t){let e=_S(t);if(!e)return;let r=e.dependencies;r&&(IQ(Array.isArray(r),"The dependencies should be an array of strings"),r.forEach(n=>{IQ(this[CQ].indexOf(n)>-1,`The dependency '${n}' of plugin '${e.name}' is not registered`)}))}function awe(t){let e=_S(t);if(!e)return;let{decorators:r,name:n}=e;r&&(r.fastify&&SQ(this,"Fastify",r.fastify,n),r.reply&&SQ(this,"Reply",r.reply,n),r.request&&SQ(this,"Request",r.request,n))}var Rjt={Fastify:Ejt,Request:Sjt,Reply:vjt};function SQ(t,e,r,n){IQ(Array.isArray(r),"The decorators should be an array of strings"),r.forEach(s=>{let i=typeof n=="string"?` required by '${n}'`:"";if(!Rjt[e].call(t,s))throw new Cjt(s,i,e)})}function Njt(t){let e=_S(t);if(!e)return;let r=e.fastify,n=/-rc.+$/.test(this.version);if(!(n===!0&&vQ.gt(this.version,vQ.coerce(r))===!0)&&r&&vQ.satisfies(this.version,r,{includePrerelease:n})===!1)throw new Ijt(e.name,r,this.version)}function Ojt(t){let e=_S(t);if(!e)return;let r=e.name;if(r)return this[CQ].push(r),r}function kjt(t,e){t.constructor.name==="AsyncFunction"&&t.length===3&&Tjt(e||"anonymous")}function Pjt(t){let e=Ojt.call(this,t)||rwe(t);return kjt.call(this,t,e),Njt.call(this,t),awe.call(this,t),iwe.call(this,t),swe(t)}TQ.exports={getPluginName:rwe,getFuncPreview:wjt,kRegisteredPlugins:CQ,getDisplayName:nwe,registerPlugin:Pjt};TQ.exports[_jt]={shouldSkipOverride:swe,getMeta:_S,checkDecorators:awe,checkDependencies:iwe}});var YP=_((g9r,owe)=>{"use strict";function Djt(t,e){let r=e||Ljt();return t?Mjt(t,r):r}function Bjt(t,e){return t.genReqId(e)}function Ljt(){let e=0;return function(){return e=e+1&2147483647,`req-${e.toString(36)}`}}function Mjt(t,e){return function(r){return r.headers[t]||e(r)}}owe.exports={getGenReqId:Bjt,reqIdGenFactory:Djt}});var dwe=_((y9r,lwe)=>{"use strict";var cwe=12,Wjt=0,RQ=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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 $jt(t){var e=t.indexOf("%");if(e===-1)return t;for(var r=t.length,n="",s=0,i=0,a=e,o=cwe;e>-1&&e>10),56320+(i&1023)),i=0,s=e+3,e=a=t.indexOf("%",s);else{if(o===Wjt)return null;if(e+=3,e{"use strict";var fwe=dwe(),pwe=/\+/g,mwe=function(){};mwe.prototype=Object.create(null);function Fjt(t){let e=new mwe;if(typeof t!="string")return e;let r=t.length,n="",s="",i=-1,a=-1,o=!1,c=!1,u=!1,l=!1,d=!1,f=0;for(let p=0;pi,d||(a=p),n=t.slice(i+1,a),d||n.length>0){u&&(n=n.replace(pwe," ")),o&&(n=fwe(n)||n),d&&(s=t.slice(a+1,p),l&&(s=s.replace(pwe," ")),c&&(s=fwe(s)||s));let m=e[n];m===void 0?e[n]=s:m.pop?m.push(s):e[n]=[m,s]}s="",i=p,a=p,o=!1,c=!1,u=!1,l=!1}else f===61?a<=i?a=p:c=!0:f===43?a>i?l=!0:u=!0:f===37&&(a>i?c=!0:o=!0);return e}hwe.exports=Fjt});var Awe=_((x9r,ywe)=>{var Al=Array.from({length:256},(t,e)=>"%"+((e<16?"0":"")+e.toString(16)).toUpperCase()),qjt=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 jjt(t){let e=t.length;if(e===0)return"";let r="",n=0,s=0;e:for(;s>6]+Al[128|i&63];continue}if(i<55296||i>=57344){n=s+1,r+=Al[224|i>>12]+Al[128|i>>6&63]+Al[128|i&63];continue}if(++s,s>=e)throw new Error("URI malformed");let a=t.charCodeAt(s)&1023;n=s+1,i=65536+((i&1023)<<10|a),r+=Al[240|i>>18]+Al[128|i>>12&63]+Al[128|i>>6&63]+Al[128|i&63]}return n===0?t:n{"use strict";var{encodeString:NQ}=Awe();function xwe(t){let e=typeof t;return e==="string"?NQ(t):e==="bigint"?t.toString():e==="boolean"?t?"true":"false":e==="number"&&Number.isFinite(t)?t<1e21?""+t:NQ(""+t):""}function Qjt(t){let e="";if(t===null||typeof t!="object")return e;let r="&",n=Object.keys(t),s=n.length,i=0;for(let a=0;a{"use strict";var Ewe=gwe(),vwe=_we(),Swe={parse:Ewe,stringify:vwe};ES.exports=Swe;ES.exports.default=Swe;ES.exports.parse=Ewe;ES.exports.stringify=vwe});var Twe=_(Cwe=>{"use strict";Object.defineProperty(Cwe,"__esModule",{value:!0})});var wwe=_(vS=>{"use strict";Object.defineProperty(vS,"__esModule",{value:!0});vS.types=void 0;var Hjt;(function(t){t[t.ROOT=0]="ROOT",t[t.GROUP=1]="GROUP",t[t.POSITION=2]="POSITION",t[t.SET=3]="SET",t[t.RANGE=4]="RANGE",t[t.REPETITION=5]="REPETITION",t[t.REFERENCE=6]="REFERENCE",t[t.CHAR=7]="CHAR"})(Hjt=vS.types||(vS.types={}))});var Nwe=_(Rwe=>{"use strict";Object.defineProperty(Rwe,"__esModule",{value:!0})});var tf=_(ef=>{"use strict";var Gjt=ef&&ef.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),OQ=ef&&ef.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&Gjt(e,t,r)};Object.defineProperty(ef,"__esModule",{value:!0});OQ(Twe(),ef);OQ(wwe(),ef);OQ(Nwe(),ef)});var JP=_(zi=>{"use strict";Object.defineProperty(zi,"__esModule",{value:!0});zi.anyChar=zi.notWhitespace=zi.whitespace=zi.notInts=zi.ints=zi.notWords=zi.words=void 0;var Qr=tf(),Owe=()=>[{type:Qr.types.RANGE,from:48,to:57}],kwe=()=>[{type:Qr.types.CHAR,value:95},{type:Qr.types.RANGE,from:97,to:122},{type:Qr.types.RANGE,from:65,to:90},{type:Qr.types.RANGE,from:48,to:57}],Pwe=()=>[{type:Qr.types.CHAR,value:9},{type:Qr.types.CHAR,value:10},{type:Qr.types.CHAR,value:11},{type:Qr.types.CHAR,value:12},{type:Qr.types.CHAR,value:13},{type:Qr.types.CHAR,value:32},{type:Qr.types.CHAR,value:160},{type:Qr.types.CHAR,value:5760},{type:Qr.types.RANGE,from:8192,to:8202},{type:Qr.types.CHAR,value:8232},{type:Qr.types.CHAR,value:8233},{type:Qr.types.CHAR,value:8239},{type:Qr.types.CHAR,value:8287},{type:Qr.types.CHAR,value:12288},{type:Qr.types.CHAR,value:65279}],zjt=()=>[{type:Qr.types.CHAR,value:10},{type:Qr.types.CHAR,value:13},{type:Qr.types.CHAR,value:8232},{type:Qr.types.CHAR,value:8233}];zi.words=()=>({type:Qr.types.SET,set:kwe(),not:!1});zi.notWords=()=>({type:Qr.types.SET,set:kwe(),not:!0});zi.ints=()=>({type:Qr.types.SET,set:Owe(),not:!1});zi.notInts=()=>({type:Qr.types.SET,set:Owe(),not:!0});zi.whitespace=()=>({type:Qr.types.SET,set:Pwe(),not:!1});zi.notWhitespace=()=>({type:Qr.types.SET,set:Pwe(),not:!0});zi.anyChar=()=>({type:Qr.types.SET,set:zjt(),not:!0})});var Bwe=_(Ac=>{"use strict";var Kjt=Ac&&Ac.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Vjt=Ac&&Ac.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Yjt=Ac&&Ac.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Kjt(e,t,r);return Vjt(e,t),e};Object.defineProperty(Ac,"__esModule",{value:!0});Ac.tokenizeClass=Ac.strToChars=void 0;var Dwe=tf(),Px=Yjt(JP()),Jjt="@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^ ?";Ac.strToChars=t=>{let e=/(\[\\b\])|(\\)?\\(?:u([A-F0-9]{4})|x([A-F0-9]{2})|c([@A-Z[\\\]^?])|([0tnvfr]))/g;return t.replace(e,(r,n,s,i,a,o,c)=>{if(s)return r;let u=n?8:i?parseInt(i,16):a?parseInt(a,16):o?Jjt.indexOf(o):{0:0,t:9,n:10,v:11,f:12,r:13}[c],l=String.fromCharCode(u);return/[[\]{}^$.|?*+()]/.test(l)?`\\${l}`:l})};Ac.tokenizeClass=(t,e)=>{var r,n,s,i,a,o,c;let u=[],l,d,f=/\\(?:(w)|(d)|(s)|(W)|(D)|(S))|((?:(?:\\)(.)|([^\]\\]))-(((?:\\)])|(((?:\\)?([^\]])))))|(\])|(?:\\)?([^])/g;for(;(l=f.exec(t))!==null;){let p=(c=(o=(a=(i=(s=(n=(r=l[1]&&Px.words())!==null&&r!==void 0?r:l[2]&&Px.ints())!==null&&n!==void 0?n:l[3]&&Px.whitespace())!==null&&s!==void 0?s:l[4]&&Px.notWords())!==null&&i!==void 0?i:l[5]&&Px.notInts())!==null&&a!==void 0?a:l[6]&&Px.notWhitespace())!==null&&o!==void 0?o:l[7]&&{type:Dwe.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:Dwe.types.CHAR,value:d.charCodeAt(0)};if(p)u.push(p);else return[u,f.lastIndex]}throw new SyntaxError(`Invalid regular expression: /${e}/: Unterminated character class`)}});var kQ=_(xl=>{"use strict";var Xjt=xl&&xl.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Zjt=xl&&xl.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Mwe=xl&&xl.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Xjt(e,t,r);return Zjt(e,t),e};Object.defineProperty(xl,"__esModule",{value:!0});xl.tokenizer=void 0;var Lwe=Mwe(Bwe()),vi=tf(),Nh=Mwe(JP());xl.tokenizer=t=>{let e=0,r,n={type:vi.types.ROOT,stack:[]},s=n,i=n.stack,a=[],o=[],c=0,u=d=>{throw new SyntaxError(`Invalid regular expression: /${t}/: Nothing to repeat at column ${d-1}`)},l=Lwe.strToChars(t);for(;es){let i=r.stack.splice(r.index+1);for(let a of n.slice(s))r.stack.push({type:vi.types.CHAR,value:a.charCodeAt(0)});r.stack.push(...i)}}}}});var $we=_(Ki=>{"use strict";var tQt=Ki&&Ki.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),rQt=Ki&&Ki.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),nQt=Ki&&Ki.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&tQt(e,t,r);return rQt(e,t),e};Object.defineProperty(Ki,"__esModule",{value:!0});Ki.NOTANYCHAR=Ki.WHITESPACE=Ki.WORDS=Ki.INTS=void 0;var XP=nQt(JP()),Wwe=tf();function ZP(t){let e={},r=0;for(let n of t)n.type===Wwe.types.CHAR&&(e[n.value]=!0),n.type===Wwe.types.RANGE&&(e[`${n.from}-${n.to}`]=!0),r+=1;return{lookup:()=>Object.assign({},e),len:r}}Ki.INTS=ZP(XP.ints().set);Ki.WORDS=ZP(XP.words().set);Ki.WHITESPACE=ZP(XP.whitespace().set);Ki.NOTANYCHAR=ZP(XP.anyChar().set)});var Fwe=_(xc=>{"use strict";var sQt=xc&&xc.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),iQt=xc&&xc.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),aQt=xc&&xc.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&sQt(e,t,r);return iQt(e,t),e};Object.defineProperty(xc,"__esModule",{value:!0});xc.writeSetTokens=xc.setChar=void 0;var n3=tf(),e3=aQt($we());function r3(t){return t===94?"\\^":t===92?"\\\\":t===93?"\\]":t===45?"\\-":String.fromCharCode(t)}xc.setChar=r3;function t3(t,{lookup:e,len:r}){if(r!==t.length)return!1;let n=e();for(let s of t){if(s.type===n3.types.SET)return!1;let i=s.type===n3.types.CHAR?s.value:`${s.from}-${s.to}`;if(n[i])n[i]=!1;else return!1}return!0}function Uwe(t,e=!1){if(t3(t.set,e3.INTS))return t.not?"\\D":"\\d";if(t3(t.set,e3.WORDS))return t.not?"\\W":"\\w";if(t.not&&t3(t.set,e3.NOTANYCHAR))return".";if(t3(t.set,e3.WHITESPACE))return t.not?"\\S":"\\s";let r="";for(let s=0;s{"use strict";Object.defineProperty(Dx,"__esModule",{value:!0});Dx.reconstruct=void 0;var l0=tf(),PQ=Fwe(),qwe=t=>t.map(Dx.reconstruct).join(""),jwe=t=>{if("options"in t)return t.options.map(qwe).join("|");if("stack"in t)return qwe(t.stack);throw new Error("options or stack must be Root or Group token")};Dx.reconstruct=t=>{switch(t.type){case l0.types.ROOT:return jwe(t);case l0.types.CHAR:{let e=String.fromCharCode(t.value);return(/[[\\{}$^.|?*+()]/.test(e)?"\\":"")+e}case l0.types.POSITION:return t.value==="^"||t.value==="$"?t.value:`\\${t.value}`;case l0.types.REFERENCE:return`\\${t.value}`;case l0.types.SET:return PQ.writeSetTokens(t);case l0.types.GROUP:return`(${t.remember?"":t.followedBy?"?=":t.notFollowedBy?"?!":"?:"}${jwe(t)})`;case l0.types.REPETITION:{let{min:e,max:r}=t,n;return e===0&&r===1?n="?":e===1&&r===1/0?n="+":e===0&&r===1/0?n="*":r===1/0?n=`{${e},}`:e===r?n=`{${e}}`:n=`{${e},${r}}`,`${Dx.reconstruct(t.value)}${n}`}case l0.types.RANGE:return`${PQ.setChar(t.from)}-${PQ.setChar(t.to)}`;default:throw new Error(`Invalid token type ${t}`)}}});var Gwe=_((bc,s3)=>{"use strict";var cQt=bc&&bc.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),BQ=bc&&bc.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&cQt(e,t,r)};Object.defineProperty(bc,"__esModule",{value:!0});bc.types=void 0;var Qwe=tf();Object.defineProperty(bc,"types",{enumerable:!0,get:function(){return Qwe.types}});BQ(kQ(),bc);BQ(DQ(),bc);var Hwe=kQ(),uQt=DQ();BQ(tf(),bc);bc.default=Hwe.tokenizer;s3.exports=Hwe.tokenizer;s3.exports.types=Qwe.types;s3.exports.reconstruct=uQt.reconstruct});var Kwe=_((k9r,i3)=>{"use strict";var zwe=Gwe(),lQt=zwe.types;function LQ(t,e){e||(e={});let r=e.limit===void 0?25:e.limit;dQt(t)?t=t.source:typeof t!="string"&&(t=String(t));try{t=zwe(t)}catch{return!1}let n=0;return function s(i,a){let o,c,u;if(i.type===lQt.REPETITION&&(a++,n++,a>1||n>r))return!1;if(i.options){for(o=0,u=i.options.length;o{"use strict";Vwe.exports={name:"__fmw_internal_strategy_merged_tree_http_method__",storage:function(){let t={};return{get:e=>t[e]||null,set:(e,r)=>{t[e]=r}}},deriveConstraint:t=>t.method,mustMatchWhenDerived:!0}});var rRe=_((D9r,tRe)=>{"use strict";var Ywe=sc(),Jwe=a3(),Xwe=Symbol("treeData");function Zwe(t,e=""){let r="",n=Object.keys(t);for(let s=0;scTe(e)):typeof t=="symbol"?t.toString():typeof t=="function"?nUt(t):t}function sUt(t,e){if(!e.includeMeta)return{};let r=e.buildPrettyMeta(t),n={},s=e.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(cTe(o));n[a]=c}}return n}function iUt(t){let e="";for(let[r,n]of Object.entries(t))e+=` -\u2022 (${r}) ${n}`;return e}function aUt(t){let e={...t.opts.constraints},r=e[iTe.name];return delete e[iTe.name],{...t,method:r,opts:{constraints:e}}}function oUt(t){let e=` (${t.method})`,r=t.opts.constraints||{};return Object.keys(r).length!==0&&(e+=" "+JSON.stringify(r)),e+=iUt(t.metaData),e}function cUt(t){return t.reduce((e,r)=>{for(let n of e)if(sTe(r.opts.constraints,n.opts.constraints)&&sTe(r.metaData,n.metaData))return n.method+=", "+r.method,e;return e.push(r),e},[])}function uUt(t,e,r){let n=t.routes;return r.method===void 0&&(n=n.map(aUt)),n=n.map(s=>(s.metaData=sUt(s,r),s)),r.method===void 0&&(n=cUt(n)),n.map(oUt).join(` -${e}`)}function MP(t,e,r,n){if((t.isLeafNode||n.commonPrefix!==!1)&&(r=r||"(empty root node)",e=e[r]={},t.isLeafNode&&(e[aTe]=uUt(t,r,n)),r=""),t.staticChildren)for(let s of Object.values(t.staticChildren))MP(s,e,r+s.prefix,n);if(t.parametricChildren)for(let s of Object.values(t.parametricChildren)){let i=Array.from(s.nodePaths).join("|");MP(s,e,r+i,n)}t.wildcardChild&&MP(t.wildcardChild,e,"*",n)}function lUt(t,e){let r={};return MP(t,r,t.prefix,e),oTe(r)}uTe.exports={prettyPrintTree:lUt}});var fTe=E((C4r,dTe)=>{"use strict";var dUt=BP(),Lq=class{constructor(){this.unconstrainedHandler=null,this.constraints=[],this.handlers=[],this.constrainedHandlerStores=null}getMatchingHandler(e){return e===void 0?this.unconstrainedHandler:this._getHandlerMatchingConstraints(e)}addHandler(e,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(dUt.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(e,s)}_compileCreateParamsObject(e){let r=[];for(let n=0;neRe(e)):typeof t=="symbol"?t.toString():typeof t=="function"?fQt(t):t}function pQt(t,e){if(!e.includeMeta)return{};let r=e.buildPrettyMeta(t),n={},s=e.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(eRe(o));n[a]=c}}return n}function mQt(t){let e="";for(let[r,n]of Object.entries(t))e+=` +\u2022 (${r}) ${n}`;return e}function hQt(t){let e={...t.opts.constraints},r=e[Jwe.name];return delete e[Jwe.name],{...t,method:r,opts:{constraints:e}}}function gQt(t){let e=` (${t.method})`,r=t.opts.constraints||{};return Object.keys(r).length!==0&&(e+=" "+JSON.stringify(r)),e+=mQt(t.metaData),e}function yQt(t){return t.reduce((e,r)=>{for(let n of e)if(Ywe(r.opts.constraints,n.opts.constraints)&&Ywe(r.metaData,n.metaData))return n.method+=", "+r.method,e;return e.push(r),e},[])}function AQt(t,e,r){let n=t.routes;return r.method===void 0&&(n=n.map(hQt)),n=n.map(s=>(s.metaData=pQt(s,r),s)),r.method===void 0&&(n=yQt(n)),n.map(gQt).join(` +${e}`)}function o3(t,e,r,n){if((t.isLeafNode||n.commonPrefix!==!1)&&(r=r||"(empty root node)",e=e[r]={},t.isLeafNode&&(e[Xwe]=AQt(t,r,n)),r=""),t.staticChildren)for(let s of Object.values(t.staticChildren))o3(s,e,r+s.prefix,n);if(t.parametricChildren)for(let s of Object.values(t.parametricChildren)){let i=Array.from(s.nodePaths).join("|");o3(s,e,r+i,n)}t.wildcardChild&&o3(t.wildcardChild,e,"*",n)}function xQt(t,e){let r={};return o3(t,r,t.prefix,e),Zwe(r)}tRe.exports={prettyPrintTree:xQt}});var sRe=_((B9r,nRe)=>{"use strict";var bQt=a3(),MQ=class{constructor(){this.unconstrainedHandler=null,this.constraints=[],this.handlers=[],this.constrainedHandlerStores=null}getMatchingHandler(e){return e===void 0?this.unconstrainedHandler:this._getHandlerMatchingConstraints(e)}addHandler(e,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(bQt.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(e,s)}_compileCreateParamsObject(e){let r=[];for(let n=0;n{"use strict";var fUt=fTe(),jP={STATIC:0,PARAMETRIC:1,WILDCARD:2},WP=class{constructor(){this.isLeafNode=!1,this.routes=null,this.handlerStorage=null}addRoute(e,r){this.routes===null&&(this.routes=[]),this.handlerStorage===null&&(this.handlerStorage=new fUt),this.isLeafNode=!0,this.routes.push(e),this.handlerStorage.addHandler(r,e)}},$P=class extends WP{constructor(){super(),this.staticChildren={}}findStaticMatchingChild(e,r){let n=this.staticChildren[e.charAt(r)];return n===void 0||!n.matchPrefix(e,r)?null:n}getStaticChild(e,r=0){if(e.length===r)return this;let n=this.findStaticMatchingChild(e,r);return n?n.getStaticChild(e,r+n.prefix.length):null}createStaticChild(e){if(e.length===0)return this;let r=this.staticChildren[e.charAt(0)];if(r){let s=1;for(;s(s.regex&&s.regex.source)===r);return n||null}createParametricChild(e,r,n){let s=this.getParametricChild(e);return s?(s.nodePaths.add(n),s):(s=new UP(e,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 qP,this.wildcardChild}split(e,r){let n=this.prefix.slice(0,r),s=this.prefix.slice(r);this.prefix=s,this._compilePrefixMatch();let i=new t(n);return i.staticChildren[s.charAt(0)]=this,e.staticChildren[n.charAt(0)]=i,i}getNextNode(e,r,n,s){let i=this.findStaticMatchingChild(e,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 e=[];for(let r=1;r{"use strict";var pUt=require("node:assert");function yS(){if(!(this instanceof yS))return new yS;this.store={},this.maxMajor=0,this.maxMinors={},this.maxPatches={}}yS.prototype.set=function(t,e){if(typeof t!="string")throw new TypeError("Version should be a string");let[r,n,s]=t.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=e,this.store["*"]=e,this.store["x.x"]=e,this.store["x.x.x"]=e),n>=(this.maxMinors[r]||0)&&(this.maxMinors[r]=n,this.store[`${r}.x`]=e,this.store[`${r}.x.x`]=e),s>=(this.maxPatches[`${r}.${n}`]||0)&&(this.maxPatches[`${r}.${n}`]=s,this.store[`${r}.${n}.x`]=e),this.store[`${r}.${n}.${s}`]=e,this};yS.prototype.get=function(t){return this.store[t]};hTe.exports={name:"version",mustMatchWhenDerived:!0,storage:yS,validate(t){pUt(typeof t=="string","Version should be a string")}}});var yTe=E((w4r,ATe)=>{"use strict";var mUt=require("node:assert");function hUt(){let t={},e=[];return{get:r=>{let n=t[r];if(n)return n;for(let s of e)if(s.host.test(r))return s.value},set:(r,n)=>{r instanceof RegExp?e.push({host:r,value:n}):t[r]=n}}}ATe.exports={name:"host",mustMatchWhenDerived:!1,storage:hUt,validate(t){mUt(typeof t=="string"||Object.prototype.toString.call(t)==="[object RegExp]","Host should be a string or a RegExp")}}});var bTe=E((R4r,xTe)=>{"use strict";var gUt=gTe(),AUt=yTe(),Bq=require("node:assert"),Mq=class{constructor(e){if(this.strategies={version:gUt,host:AUt},this.strategiesInUse=new Set,this.asyncStrategiesInUse=new Set,e)for(let r of Object.values(e))this.addConstraintStrategy(r)}isStrategyUsed(e){return this.strategiesInUse.has(e)||this.asyncStrategiesInUse.has(e)}hasConstraintStrategy(e){let r=this.strategies[e];return r!==void 0?r.isCustom||this.isStrategyUsed(e):!1}addConstraintStrategy(e){if(Bq(typeof e.name=="string"&&e.name!=="","strategy.name is required."),Bq(e.storage&&typeof e.storage=="function","strategy.storage function is required."),Bq(e.deriveConstraint&&typeof e.deriveConstraint=="function","strategy.deriveConstraint function is required."),this.strategies[e.name]&&this.strategies[e.name].isCustom)throw new Error(`There already exists a custom constraint with the name ${e.name}.`);if(this.isStrategyUsed(e.name))throw new Error(`There already exists a route with ${e.name} constraint.`);e.isCustom=!0,e.isAsync=e.deriveConstraint.length===3,this.strategies[e.name]=e,e.mustMatchWhenDerived&&this.noteUsage({[e.name]:e})}deriveConstraints(e,r,n){let s=this.deriveSyncConstraints(e,r);if(n===void 0)return s;this.deriveAsyncConstraints(s,e,r,n)}deriveSyncConstraints(e,r){}noteUsage(e){if(e){let r=this.strategiesInUse.size;for(let n in e)this.strategies[n].isAsync?this.asyncStrategiesInUse.add(n):this.strategiesInUse.add(n);r!==this.strategiesInUse.size&&this._buildDeriveConstraints()}}newStoreForConstraint(e){if(!this.strategies[e])throw new Error(`No strategy registered for constraint key ${e}`);return this.strategies[e].storage()}validateConstraints(e){for(let r in e){let n=e[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(e,r,n,s){let i=this.asyncStrategiesInUse.size;if(i===0){s(null,e);return}e=e||{};for(let a of this.asyncStrategiesInUse)this.strategies[a].deriveConstraint(r,n,(c,u)=>{if(c!==null){s(c);return}e[a]=u,--i===0&&s(null,e)})}_buildDeriveConstraints(){if(this.strategiesInUse.size===0)return;let e=["return {"];for(let r of this.strategiesInUse){let n=this.strategies[r];n.isCustom?e.push(` ${n.name}: this.strategies.${r}.deriveConstraint(req, ctx),`):r==="version"?e.push(" version: req.headers['accept-version'],"):e.push(" host: req.headers.host || req.headers[':authority'],")}e.push("}"),this.deriveSyncConstraints=new Function("req","ctx",e.join(` -`)).bind(this)}};xTe.exports=Mq});var _Te=E((N4r,ETe)=>{"use strict";var yUt=["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"];ETe.exports=yUt});var CTe=E((O4r,vTe)=>{"use strict";function STe(t,e){return t===50?e===53?"%":e===51?"#":e===52?"$":e===54?"&":e===66||e===98?"+":e===67||e===99?",":e===70||e===102?"/":null:t===51?e===65||e===97?":":e===66||e===98?";":e===68||e===100?"=":e===70||e===102?"?":null:t===52&&e===48?"@":null}function xUt(t,e){let r=!1,n=!1,s="";for(let a=1;a{"use strict";var fs=require("node:assert"),EUt=DIe(),HP=rTe(),$q=Go(),{prettyPrintTree:_Ut}=lTe(),{StaticNode:ITe,NODE_TYPES:TTe}=mTe(),SUt=bTe(),ex=_Te(),Wq=BP(),{safeDecodeURI:vUt,safeDecodeURIComponent:wTe}=CTe(),RTe=/^https?:\/\/.*?\//,ch=/(\/:[^/()]*?)\?(\/?)/;if(!HP(RTe))throw new Error("the FULL_PATH_REGEXP is not safe, update this module");if(!HP(ch))throw new Error("the OPTIONAL_PARAM_REGEXP is not safe, update this module");function zn(t){if(!(this instanceof zn))return new zn(t);t=t||{},this._opts=t,t.defaultRoute?(fs(typeof t.defaultRoute=="function","The default route must be a function"),this.defaultRoute=t.defaultRoute):this.defaultRoute=null,t.onBadUrl?(fs(typeof t.onBadUrl=="function","The bad url handler must be a function"),this.onBadUrl=t.onBadUrl):this.onBadUrl=null,t.buildPrettyMeta?(fs(typeof t.buildPrettyMeta=="function","buildPrettyMeta must be a function"),this.buildPrettyMeta=t.buildPrettyMeta):this.buildPrettyMeta=CUt,t.querystringParser?(fs(typeof t.querystringParser=="function","querystringParser must be a function"),this.querystringParser=t.querystringParser):this.querystringParser=e=>e===""?{}:EUt.parse(e),this.caseSensitive=t.caseSensitive===void 0?!0:t.caseSensitive,this.ignoreTrailingSlash=t.ignoreTrailingSlash||!1,this.ignoreDuplicateSlashes=t.ignoreDuplicateSlashes||!1,this.maxParamLength=t.maxParamLength||100,this.allowUnsafeRegex=t.allowUnsafeRegex||!1,this.constrainer=new SUt(t.constraints),this.useSemicolonDelimiter=t.useSemicolonDelimiter||!1,this.routes=[],this.trees={}}zn.prototype.on=function(e,r,n,s,i){typeof n=="function"&&(s!==void 0&&(i=s),s=n,n={}),fs(typeof r=="string","Path should be a string"),fs(r.length>0,"The path could not be empty"),fs(r[0]==="/"||r[0]==="*","The first character of a path should be `/` or `*`"),fs(typeof s=="function","Handler should be a function");let a=r.match(ch);if(a){fs(r.length===a.index+a[0].length,"Optional Parameter needs to be the last parameter of the path");let u=r.replace(ch,"$1$2"),l=r.replace(ch,"$2")||"/";this.on(e,u,n,s,i),this.on(e,l,n,s,i);return}let o=r;this.ignoreDuplicateSlashes&&(r=Fq(r)),this.ignoreTrailingSlash&&(r=Uq(r));let c=Array.isArray(e)?e:[e];for(let u of c)fs(typeof u=="string","Method should be a string"),fs(ex.includes(u),`Method '${u}' is not an http method.`),this._on(u,r,n,s,i,o)};zn.prototype._on=function(e,r,n,s,i){let a={};n.constraints!==void 0&&(fs(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[e]===void 0&&(this.trees[e]=new ITe("/"));let o=r;if(o==="*"&&this.trees[e].prefix.length!==0){let f=this.trees[e];this.trees[e]=new ITe(""),this.trees[e].staticChildren["/"]=f}let c=this.trees[e],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 p=o.charCodeAt(f)===58&&o.charCodeAt(f+1)!==58,m=o.charCodeAt(f)===42;if(p||m||f===o.length&&f!==u){let h=o.slice(u,f);this.caseSensitive||(h=h.toLowerCase()),h=h.split("::").join(":"),h=h.split("%").join("%25"),c=c.createStaticChild(h)}if(p){let h=!1,A=!0,g="",b=[],y=f+1;for(let x=y;;x++){let v=o.charCodeAt(x),C=v===40,R=v===45||v===46,w=v===47||x===o.length;if(C||R||w){let N=o.slice(y,x);if(l.push(N),h=h||C||R,C){let M=PTe(o,x),k=o.slice(x,M+1);this.allowUnsafeRegex||fs(HP(new RegExp(k)),`The regex '${k}' is not safe!`),b.push(OTe(k)),x=M+1,A=!0}else b.push(A?"(.*?)":`(${g}|(?:(?!${g}).)*)`),A=!1;let P=x;for(;x0,"The path could not be empty"),fs(r[0]==="/"||r[0]==="*","The first character of a path should be `/` or `*`"),fs(typeof n>"u"||typeof n=="object"&&!Array.isArray(n)&&n!==null,"Constraints should be an object or undefined.");let s=r.match(ch);if(s){fs(r.length===s.index+s[0].length,"Optional Parameter needs to be the last parameter of the path");let a=r.replace(ch,"$1$2"),o=r.replace(ch,"$2");this.off(e,a,n),this.off(e,o,n);return}this.ignoreDuplicateSlashes&&(r=Fq(r)),this.ignoreTrailingSlash&&(r=Uq(r));let i=Array.isArray(e)?e:[e];for(let a of i)this._off(a,r,n)};zn.prototype._off=function(e,r,n){fs(typeof e=="string","Method should be a string"),fs(ex.includes(e),`Method '${e}' is not an http method.`);function s(c){return e!==c.method||r!==c.path}function i(c){return s(c)||!$q(n,c.opts.constraints||{})}let a=n?i:s,o=this.routes.filter(a);this._rebuild(o)};zn.prototype.lookup=function(e,r,n,s){if(typeof n=="function"&&(s=n,n=void 0),s===void 0){let i=this.constrainer.deriveConstraints(e,n),a=this.find(e.method,e.url,i);return this.callHandler(a,e,r,n)}this.constrainer.deriveConstraints(e,n,(i,a)=>{if(i!==null){s(i);return}try{let o=this.find(e.method,e.url,a),c=this.callHandler(o,e,r,n);s(null,c)}catch(o){s(o)}})};zn.prototype.callHandler=function(e,r,n,s){return e===null?this._defaultRoute(r,n,s):s===void 0?e.handler(r,n,e.params,e.store,e.searchParams):e.handler.call(s,r,n,e.params,e.store,e.searchParams)};zn.prototype.find=function(e,r,n){let s=this.trees[e];if(s===void 0)return null;r.charCodeAt(0)!==47&&(r=r.replace(RTe,"/")),this.ignoreDuplicateSlashes&&(r=Fq(r));let i,a,o;try{i=vUt(r,this.useSemicolonDelimiter),r=i.path,a=i.querystring,o=i.shouldDecodeParam}catch{return this._onBadUrl(r)}this.ignoreTrailingSlash&&(r=Uq(r));let c=r;this.caseSensitive===!1&&(r=r.toLowerCase());let u=this.maxParamLength,l=s.prefix.length,d=[],f=r.length,p=[];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 m=s.getNextNode(r,l,p,d.length);if(m===null){if(p.length===0)return null;let g=p.pop();l=g.brotherPathIndex,d.splice(g.paramsCount),m=g.brotherNode}if(s=m,s.kind===TTe.STATIC){l+=s.prefix.length;continue}if(s.kind===TTe.WILDCARD){let g=c.slice(l);o&&(g=wTe(g)),d.push(g),l=f;continue}let h=c.indexOf("/",l);h===-1&&(h=f);let A=c.slice(l,h);if(o&&(A=wTe(A)),s.isRegex){let g=s.regex.exec(A);if(g===null)continue;for(let b=1;bu)return null;d.push(y)}}else{if(A.length>u)return null;d.push(A)}l=h}};zn.prototype._rebuild=function(t){this.reset();for(let e of t){let{method:r,path:n,opts:s,handler:i,store:a}=e;this._on(r,n,s,i,a)}};zn.prototype._defaultRoute=function(t,e,r){if(this.defaultRoute!==null)return r===void 0?this.defaultRoute(t,e):this.defaultRoute.call(r,t,e);e.statusCode=404,e.end()};zn.prototype._onBadUrl=function(t){if(this.onBadUrl===null)return null;let e=this.onBadUrl;return{handler:(r,n,s)=>e(t,r,n),params:{},store:null}};zn.prototype.prettyPrint=function(t={}){let e=t.method;t.buildPrettyMeta=this.buildPrettyMeta.bind(this);let r=null;if(e===void 0){let{version:n,host:s,...i}=this.constrainer.strategies;i[Wq.name]=Wq;let a=new zn({...this._opts,constraints:i}),o=this.routes.map(c=>{let u={...c.opts.constraints,[Wq.name]:c.method};return{...c,method:"MERGED",opts:{constraints:u}}});a._rebuild(o),r=a.trees.MERGED}else r=this.trees[e];return r==null?"(empty tree)":_Ut(r,t)};for(let t in ex){if(!ex.hasOwnProperty(t))continue;let e=ex[t],r=e.toLowerCase();zn.prototype[r]=function(n,s,i){return this.on(e,n,s,i)}}zn.prototype.all=function(t,e,r){this.on(ex,t,e,r)};DTe.exports=zn;function NTe(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Fq(t){return t.replace(/\/\/+/g,"/")}function Uq(t){return t.length>1&&t.charCodeAt(t.length-1)===47?t.slice(0,-1):t}function OTe(t){return t.charCodeAt(1)===94&&(t=t.slice(0,1)+t.slice(2)),t.charCodeAt(t.length-2)===36&&(t=t.slice(0,t.length-2)+t.slice(t.length-1)),t}function PTe(t,e){let r=1;for(;e{"use strict";function jq(t,e,r,n){if(r===void 0)return e.header("content-length","0"),n(null,null);if(typeof r.resume=="function")return r.on("error",i=>{e.log.error({err:i},"Error on Stream found for HEAD route")}),r.resume(),n(null,null);let s=""+Buffer.byteLength(r);e.header("content-length",s),n(null,null)}function IUt(t){return t==null?jq:Array.isArray(t)?[...t,jq]:[t,jq]}kTe.exports={parseHeadOnSendHandlers:IUt}});var XTe=E((k4r,JTe)=>{"use strict";var TUt=qq(),wUt=UN(),BTe=s5(),{onRequestAbortHookRunner:RUt,lifecycleHooks:MTe,preParsingHookRunner:NUt,onTimeoutHookRunner:OUt,onRequestHookRunner:PUt}=up(),{supportedMethods:DUt}=B$(),{normalizeSchema:kUt}=u1(),{parseHeadOnSendHandlers:LUt}=LTe(),{FSTDEP007:BUt,FSTDEP008:MUt,FSTDEP014:WTe}=cd(),{compileSchemasForValidation:WUt,compileSchemasForSerialization:$Ut}=Z6(),{FST_ERR_SCH_VALIDATION_BUILD:FUt,FST_ERR_SCH_SERIALIZATION_BUILD:UUt,FST_ERR_DEFAULT_ROUTE_INVALID_TYPE:qUt,FST_ERR_DUPLICATED_ROUTE:jUt,FST_ERR_INVALID_URL:HUt,FST_ERR_HOOK_INVALID_HANDLER:$Te,FST_ERR_ROUTE_OPTIONS_NOT_OBJ:QUt,FST_ERR_ROUTE_DUPLICATED_HANDLER:GUt,FST_ERR_ROUTE_HANDLER_NOT_FN:FTe,FST_ERR_ROUTE_MISSING_HANDLER:VUt,FST_ERR_ROUTE_METHOD_NOT_SUPPORTED:zUt,FST_ERR_ROUTE_METHOD_INVALID:KUt,FST_ERR_ROUTE_BODY_VALIDATION_SCHEMA_NOT_SUPPORTED:YUt,FST_ERR_ROUTE_BODY_LIMIT_OPTION_NOT_INT:JUt,FST_ERR_HOOK_INVALID_ASYNC_HANDLER:Hq}=Ci(),{kRoutePrefix:XUt,kLogLevel:ZUt,kLogSerializers:UTe,kHooks:qTe,kSchemaController:e7t,kOptions:jTe,kReplySerializerDefault:Qq,kReplyIsError:t7t,kRequestPayloadStream:r7t,kDisableRequestLogging:n7t,kSchemaErrorFormatter:s7t,kErrorHandler:HTe,kHasBeenDecorated:QTe,kRequestAcceptVersion:Gq,kRouteByFastify:Vq,kRouteContext:GTe}=Qs(),{buildErrorHandler:i7t}=U1(),{createChildLogger:a7t}=c1(),{getGenReqId:o7t}=IP();function c7t(t){let e=TUt(t.config),r,n,s,i,a,o,c,u,l,d,f,p,m,h=!1;return{setup(w,N){r=N.avvio,n=N.fourOhFour,s=N.logger,i=N.hasLogger,a=N.setupResponseListeners,o=N.throwIfAlreadyStarted,p=N.validateHTTPVersion,f=w.exposeHeadRoutes,c=w.disableRequestLogging,u=w.ignoreTrailingSlash,l=w.ignoreDuplicateSlashes,d=Object.prototype.hasOwnProperty.call(w,"return503OnClosing")?w.return503OnClosing:!0,m=N.keepAliveConnections},routing:e.lookup.bind(e),route:C,hasRoute:x,prepareRoute:y,getDefaultRoute:function(){return WTe(),e.defaultRoute},setDefaultRoute:function(w){if(WTe(),typeof w!="function")throw new qUt;e.defaultRoute=w},routeHandler:R,closeRoutes:()=>{h=!0},printRoutes:e.prettyPrint.bind(e),addConstraintStrategy:A,hasConstraintStrategy:g,isAsyncConstraint:b,findRoute:v};function A(w){return o("Cannot add constraint strategy!"),e.addConstraintStrategy(w)}function g(w){return e.hasConstraintStrategy(w)}function b(){return e.constrainer.asyncStrategiesInUse.size>0}function y({method:w,url:N,options:P,handler:L,isFastify:M}){if(typeof N!="string")throw new HUt(typeof N);if(!L&&typeof P=="function")L=P,P={};else if(L&&typeof L=="function"){if(Object.prototype.toString.call(P)!=="[object Object]")throw new QUt(w,N);if(P.handler)throw typeof P.handler=="function"?new GUt(w,N):new FTe(w,N)}return P=Object.assign({},P,{method:w,url:N,path:N,handler:L||P&&P.handler}),C.call(this,{options:P,isFastify:M})}function x({options:w}){return v(w)!==null}function v(w){let N=e.find(w.method,w.url||"",w.constraints);return N?{handler:N.handler,params:N.params,searchParams:N.searchParams}:null}function C({options:w,isFastify:N}){let P={...w},{exposeHeadRoute:L}=P,k=L!=null?L:f,B=P.method==="GET"||Array.isArray(P.method)&&P.method.includes("GET"),Z=P.method==="HEAD"||Array.isArray(P.method)&&P.method.includes("HEAD"),W=k&&B?{...w}:null;o("Cannot add route!");let F=P.url||P.path||"";if(Array.isArray(P.method))for(var V=0;V0&&P.method!=="HEAD")switch(P.prefixTrailingSlash){case"slash":J.call(this,{path:F,isFastify:N});break;case"no-slash":J.call(this,{path:"",isFastify:N});break;case"both":default:J.call(this,{path:"",isFastify:N}),u!==!0&&(l!==!0||!j.endsWith("/"))&&J.call(this,{path:F,prefixing:!0,isFastify:N})}else F[0]==="/"&&j.endsWith("/")?J.call(this,{path:F.slice(1),isFastify:N}):J.call(this,{path:F,isFastify:N});return this;function J({path:se,prefixing:oe=!1,isFastify:ue=!1}){let Ce=j+se;if(P.url=Ce,P.path=Ce,P.routePath=se,P.prefix=j,P.logLevel=P.logLevel||this[ZUt],(this[UTe]||P.logSerializers)&&(P.logSerializers=Object.assign(Object.create(this[UTe]),P.logSerializers)),P.attachValidation==null&&(P.attachValidation=!1),oe===!1)for(let G of this[qTe].onRoute)G.call(this,P);for(let G of MTe)if(P&&G in P){if(Array.isArray(P[G]))for(let z of P[G]){if(typeof z!="function")throw new $Te(G,Object.prototype.toString.call(z));if(G==="onSend"||G==="preSerialization"||G==="onError"||G==="preParsing"){if(z.constructor.name==="AsyncFunction"&&z.length===4)throw new Hq}else if(G==="onRequestAbort"){if(z.constructor.name==="AsyncFunction"&&z.length!==1)throw new Hq}else if(z.constructor.name==="AsyncFunction"&&z.length===3)throw new Hq}else if(P[G]!==void 0&&typeof P[G]!="function")throw new $Te(G,Object.prototype.toString.call(P[G]))}let we=P.constraints||{},qe={...P.config,url:Ce,method:P.method},Fe=new wUt({schema:P.schema,handler:P.handler.bind(this),config:qe,errorHandler:P.errorHandler,childLoggerFactory:P.childLoggerFactory,bodyLimit:P.bodyLimit,logLevel:P.logLevel,logSerializers:P.logSerializers,attachValidation:P.attachValidation,schemaErrorFormatter:P.schemaErrorFormatter,replySerializer:this[Qq],validatorCompiler:P.validatorCompiler,serializerCompiler:P.serializerCompiler,exposeHeadRoute:k,prefixTrailingSlash:P.prefixTrailingSlash||"both",server:this,isFastify:ue});P.version&&(MUt(),we.version=P.version);let _e=e.findRoute("HEAD",P.url,we),U=_e!==null;Z&&U&&!Fe[Vq]&&_e.store[Vq]&&e.off("HEAD",P.url,we);try{e.on(P.method,P.url,{constraints:we},R,Fe)}catch(G){if(!Fe[Vq])throw G.message.includes(`Method '${P.method}' already declared for route '${P.url}'`)?new jUt(P.method,P.url):G}if(this.after((G,z)=>{Fe.errorHandler=P.errorHandler?i7t(this[HTe],P.errorHandler):this[HTe],Fe._parserOptions.limit=P.bodyLimit||null,Fe.logLevel=P.logLevel,Fe.logSerializers=P.logSerializers,Fe.attachValidation=P.attachValidation,Fe[Qq]=this[Qq],Fe.schemaErrorFormatter=P.schemaErrorFormatter||this[s7t]||Fe.schemaErrorFormatter,r.once("preReady",()=>{for(let q of MTe){let H=this[qTe][q].concat(P[q]||[]).map(ee=>ee.bind(this));Fe[q]=H.length?H:null}for(;!Fe.Request[QTe]&&Fe.Request.parent;)Fe.Request=Fe.Request.parent;for(;!Fe.Reply[QTe]&&Fe.Reply.parent;)Fe.Reply=Fe.Reply.parent;if(n.setContext(this,Fe),P.schema){Fe.schema=kUt(Fe.schema,this.initialConfig);let q=this[e7t];!P.validatorCompiler&&(P.schema.body||P.schema.headers||P.schema.querystring||P.schema.params)&&q.setupValidator(this[jTe]);try{let H=typeof P?.validatorCompiler=="function"||q.isCustomValidatorCompiler;WUt(Fe,P.validatorCompiler||q.validatorCompiler,H)}catch(H){throw new FUt(P.method,Ce,H.message)}P.schema.response&&!P.serializerCompiler&&q.setupSerializer(this[jTe]);try{$Ut(Fe,P.serializerCompiler||q.serializerCompiler)}catch(H){throw new UUt(P.method,Ce,H.message)}}}),z(G)}),k&&B&&!Z&&!U){let G=LUt(W.onSend);y.call(this,{method:"HEAD",url:se,options:{...W,onSend:G},isFastify:!0})}else U&&L&&BUt()}}function R(w,N,P,L,M){let k=o7t(L.server,w),B={level:L.logLevel};L.logSerializers&&(B.serializers=L.logSerializers);let Z=a7t(L,s,w,k,B);if(Z[n7t]=c,!p(w.httpVersion)){Z.info({res:{statusCode:505}},"request aborted - invalid HTTP version");let j='{"error":"HTTP Version Not Supported","message":"HTTP Version Not Supported","statusCode":505}',J={"Content-Type":"application/json","Content-Length":j.length};N.writeHead(505,J),N.end(j);return}if(h===!0&&(w.httpVersionMajor!==2&&N.setHeader("Connection","close"),d)){let j={"Content-Type":"application/json","Content-Length":"80"};N.writeHead(503,j),N.end('{"error":"Service Unavailable","message":"Service Unavailable","statusCode":503}'),Z.info({res:{statusCode:503}},"request aborted - refusing to accept new requests as server is closing");return}String.prototype.toLowerCase.call(w.headers.connection||"")==="keep-alive"&&m.has(w.socket)===!1&&(m.add(w.socket),w.socket.on("close",d7t.bind({keepAliveConnections:m,socket:w.socket}))),w.headers[Gq]!==void 0&&(w.headers["accept-version"]=w.headers[Gq],w.headers[Gq]=void 0);let F=new L.Request(k,P,w,M,Z,L),V=new L.Reply(N,F,Z);c===!1&&Z.info({req:F},"incoming request"),(i===!0||L.onResponse!==null)&&a(V),L.onRequest!==null?PUt(L.onRequest,F,V,KTe):KTe(null,F,V),L.onRequestAbort!==null&&w.on("close",()=>{w.aborted&&RUt(L.onRequestAbort,F,u7t.bind(null,V))}),L.onTimeout!==null&&(F.raw.socket._meta||F.raw.socket.on("timeout",l7t),F.raw.socket._meta={context:L,request:F,reply:V})}}function u7t(t,e){e&&t.log.error({err:e},"onRequestAborted hook failed")}function l7t(){let{context:t,request:e,reply:r}=this._meta;OUt(t.onTimeout,e,r,f7t)}function VTe(t){if(typeof t!="string")throw new KUt;if(t=t.toUpperCase(),DUt.indexOf(t)===-1)throw new zUt(t);return t}function zTe(t,e,r){if((t==="GET"||t==="HEAD")&&r&&r.body)throw new YUt(t,e)}function YTe(t){if(t!==void 0&&(!Number.isInteger(t)||t<=0))throw new JUt(t)}function KTe(t,e,r){if(r.sent!==!0){if(t!=null){r[t7t]=!0,r.send(t);return}e[r7t]=e.raw,e[GTe].preParsing!==null?NUt(e[GTe].preParsing,e,r,BTe):BTe(null,e,r)}}function d7t(){this.keepAliveConnections.delete(this.socket)}function f7t(){}JTe.exports={buildRouting:c7t,validateBodyLimitOption:YTe}});var iwe=E((L4r,swe)=>{"use strict";var p7t=qq(),ZTe=SN(),ewe=FN(),m7t=UN(),{kRoutePrefix:h7t,kCanSetNotFoundHandler:xS,kFourOhFourLevelInstance:bS,kFourOhFourContext:ol,kHooks:g7t,kErrorHandler:twe}=Qs(),{lifecycleHooks:A7t}=up(),{buildErrorHandler:y7t}=U1(),{FST_ERR_NOT_FOUND:x7t}=Ci(),{createChildLogger:rwe}=c1(),{getGenReqId:nwe}=IP();function b7t(t){let{logger:e}=t,r=p7t({onBadUrl:a(),defaultRoute:l}),n=null;return{router:r,setNotFoundHandler:c,setContext:o,arrange404:s};function s(d){d[bS]=d,d[xS]=!0,r.onBadUrl=r.onBadUrl.bind(d),r.defaultRoute=r.defaultRoute.bind(d)}function i(d,f){let{url:p,method:m}=d.raw,h=`Route ${m}:${p} not found`;d.log.info(h),f.code(404).send({message:h,error:"Not Found",statusCode:404})}function a(){return function(f,p,m){let h=this[bS][ol],A=nwe(h.server,p),g=rwe(h,e,p,A),b=new ewe(A,null,p,null,g,h),y=new ZTe(m,b,g);n(b,y)}}function o(d,f){let p=Object.assign({},d[ol]);p.onSend=f.onSend,f[ol]=p}function c(d,f,p,m){this[xS]===void 0&&(this[xS]=!0),this[ol]===void 0&&(this[ol]=null);let h=this,A=this[h7t]||"/";if(this[xS]===!1)throw new Error(`Not found handler already set for Fastify instance with prefix: '${A}'`);typeof d=="object"&&(d.preHandler&&(Array.isArray(d.preHandler)?d.preHandler=d.preHandler.map(g=>g.bind(h)):d.preHandler=d.preHandler.bind(h)),d.preValidation&&(Array.isArray(d.preValidation)?d.preValidation=d.preValidation.map(g=>g.bind(h)):d.preValidation=d.preValidation.bind(h))),typeof d=="function"&&(f=d,d=void 0),d=d||{},f?(this[bS][xS]=!1,f=f.bind(this),n=f):(f=i,n=i),this.after((g,b)=>{u.call(this,A,d,f,p,m),b(g)})}function u(d,f,p,m,h){let A=new m7t({schema:f.schema,handler:p,config:f.config||{},server:this});if(m.once("preReady",()=>{let g=this[ol];for(let b of A7t){let y=this[g7t][b].concat(f[b]||[]).map(x=>x.bind(this));g[b]=y.length?y:null}g.errorHandler=f.errorHandler?y7t(this[twe],f.errorHandler):this[twe]}),this[ol]!==null&&d==="/"){Object.assign(this[ol],A);return}this[bS][ol]=A,r.all(d+(d.endsWith("/")?"*":"/*"),h,A),r.all(d,h,A)}function l(d,f){let p=this[bS][ol],m=nwe(p.server,d),h=rwe(p,e,d,m);h.info({req:d},"incoming request");let A=new ewe(m,null,d,null,h,p),g=new ZTe(f,A,h);A.log.warn("the default handler for 404 did not catch this, this is likely a fastify bug, please report it"),A.log.warn(r.prettyPrint()),g.code(404).send(new x7t)}}swe.exports=b7t});var owe=E((B4r,QP)=>{"use strict";QP.exports=$r;QP.exports.default=$r;var awe={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:{}}}}}},E7t=Object.prototype.hasOwnProperty,_7t=new RegExp("idle","u");function $r(t,{instancePath:e="",parentData:r,parentDataProperty:n,rootData:s=t}={}){let i=null,a=0;if(a===0)if(t&&typeof t=="object"&&!Array.isArray(t)){t.connectionTimeout===void 0&&(t.connectionTimeout=0),t.keepAliveTimeout===void 0&&(t.keepAliveTimeout=72e3),t.maxRequestsPerSocket===void 0&&(t.maxRequestsPerSocket=0),t.requestTimeout===void 0&&(t.requestTimeout=0),t.bodyLimit===void 0&&(t.bodyLimit=1048576),t.caseSensitive===void 0&&(t.caseSensitive=!0),t.allowUnsafeRegex===void 0&&(t.allowUnsafeRegex=!1),t.ignoreTrailingSlash===void 0&&(t.ignoreTrailingSlash=!1),t.ignoreDuplicateSlashes===void 0&&(t.ignoreDuplicateSlashes=!1),t.disableRequestLogging===void 0&&(t.disableRequestLogging=!1),t.jsonShorthand===void 0&&(t.jsonShorthand=!0),t.maxParamLength===void 0&&(t.maxParamLength=100),t.onProtoPoisoning===void 0&&(t.onProtoPoisoning="error"),t.onConstructorPoisoning===void 0&&(t.onConstructorPoisoning="error"),t.pluginTimeout===void 0&&(t.pluginTimeout=1e4),t.requestIdHeader===void 0&&(t.requestIdHeader="request-id"),t.requestIdLogLabel===void 0&&(t.requestIdLogLabel="reqId"),t.http2SessionTimeout===void 0&&(t.http2SessionTimeout=72e3),t.exposeHeadRoutes===void 0&&(t.exposeHeadRoutes=!0),t.useSemicolonDelimiter===void 0&&(t.useSemicolonDelimiter=!0);let m=a;for(let h in t)E7t.call(awe.properties,h)||delete t[h];if(m===a){let h=t.connectionTimeout,A=a;if(!(typeof h=="number"&&!(h%1)&&!isNaN(h)&&isFinite(h))){let g=typeof h,b;if(b===void 0)if(g==="boolean"||h===null||g==="string"&&h&&h==+h&&!(h%1))b=+h;else return $r.errors=[{instancePath:e+"/connectionTimeout",schemaPath:"#/properties/connectionTimeout/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;b!==void 0&&(h=b,t!==void 0&&(t.connectionTimeout=b))}var o=A===a;if(o){let g=t.keepAliveTimeout,b=a;if(!(typeof g=="number"&&!(g%1)&&!isNaN(g)&&isFinite(g))){let x=typeof g,v;if(v===void 0)if(x==="boolean"||g===null||x==="string"&&g&&g==+g&&!(g%1))v=+g;else return $r.errors=[{instancePath:e+"/keepAliveTimeout",schemaPath:"#/properties/keepAliveTimeout/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;v!==void 0&&(g=v,t!==void 0&&(t.keepAliveTimeout=v))}var o=b===a;if(o){if(t.forceCloseConnections!==void 0){let x=t.forceCloseConnections,v=a,C=a,R=!1,w=null,N=a;if(typeof x!="string"){let M=typeof x,k;if(k===void 0)if(M=="number"||M=="boolean")k=""+x;else if(x===null)k="";else{let B={instancePath:e+"/forceCloseConnections",schemaPath:"#/properties/forceCloseConnections/oneOf/0/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[B]:i.push(B),a++}k!==void 0&&(x=k,t!==void 0&&(t.forceCloseConnections=k))}if(a===N&&typeof x=="string"&&!_7t.test(x)){let M={instancePath:e+"/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=N===a;c&&(R=!0,w=0);let P=a;if(typeof x!="boolean"){let M;if(M===void 0)if(x==="false"||x===0||x===null)M=!1;else if(x==="true"||x===1)M=!0;else{let k={instancePath:e+"/forceCloseConnections",schemaPath:"#/properties/forceCloseConnections/oneOf/1/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"};i===null?i=[k]:i.push(k),a++}M!==void 0&&(x=M,t!==void 0&&(t.forceCloseConnections=M))}var c=P===a;if(c&&R?(R=!1,w=[w,1]):c&&(R=!0,w=1),R)a=C,i!==null&&(C?i.length=C:i=null);else{let M={instancePath:e+"/forceCloseConnections",schemaPath:"#/properties/forceCloseConnections/oneOf",keyword:"oneOf",params:{passingSchemas:w},message:"must match exactly one schema in oneOf"};return i===null?i=[M]:i.push(M),a++,$r.errors=i,!1}var o=v===a}else var o=!0;if(o){let x=t.maxRequestsPerSocket,v=a;if(!(typeof x=="number"&&!(x%1)&&!isNaN(x)&&isFinite(x))&&x!==null){let R=typeof x,w;if(w===void 0)if(R==="boolean"||x===null||R==="string"&&x&&x==+x&&!(x%1))w=+x;else if(x===""||x===0||x===!1)w=null;else return $r.errors=[{instancePath:e+"/maxRequestsPerSocket",schemaPath:"#/properties/maxRequestsPerSocket/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;w!==void 0&&(x=w,t!==void 0&&(t.maxRequestsPerSocket=w))}var o=v===a;if(o){let R=t.requestTimeout,w=a;if(!(typeof R=="number"&&!(R%1)&&!isNaN(R)&&isFinite(R))){let P=typeof R,L;if(L===void 0)if(P==="boolean"||R===null||P==="string"&&R&&R==+R&&!(R%1))L=+R;else return $r.errors=[{instancePath:e+"/requestTimeout",schemaPath:"#/properties/requestTimeout/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;L!==void 0&&(R=L,t!==void 0&&(t.requestTimeout=L))}var o=w===a;if(o){let P=t.bodyLimit,L=a;if(!(typeof P=="number"&&!(P%1)&&!isNaN(P)&&isFinite(P))){let k=typeof P,B;if(B===void 0)if(k==="boolean"||P===null||k==="string"&&P&&P==+P&&!(P%1))B=+P;else return $r.errors=[{instancePath:e+"/bodyLimit",schemaPath:"#/properties/bodyLimit/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;B!==void 0&&(P=B,t!==void 0&&(t.bodyLimit=B))}var o=L===a;if(o){let k=t.caseSensitive,B=a;if(typeof k!="boolean"){let W;if(W===void 0)if(k==="false"||k===0||k===null)W=!1;else if(k==="true"||k===1)W=!0;else return $r.errors=[{instancePath:e+"/caseSensitive",schemaPath:"#/properties/caseSensitive/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;W!==void 0&&(k=W,t!==void 0&&(t.caseSensitive=W))}var o=B===a;if(o){let W=t.allowUnsafeRegex,F=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 $r.errors=[{instancePath:e+"/allowUnsafeRegex",schemaPath:"#/properties/allowUnsafeRegex/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;j!==void 0&&(W=j,t!==void 0&&(t.allowUnsafeRegex=j))}var o=F===a;if(o){if(t.http2!==void 0){let j=t.http2,J=a;if(typeof j!="boolean"){let oe;if(oe===void 0)if(j==="false"||j===0||j===null)oe=!1;else if(j==="true"||j===1)oe=!0;else return $r.errors=[{instancePath:e+"/http2",schemaPath:"#/properties/http2/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;oe!==void 0&&(j=oe,t!==void 0&&(t.http2=oe))}var o=J===a}else var o=!0;if(o){if(t.https!==void 0){let j=t.https,J=a,se=a,oe=!0,ue=a,Ce=a,we=a,qe=a,Fe=!1,_e=null,U=a;if(typeof j!="boolean"){let q;if(q===void 0)if(j==="false"||j===0||j===null)q=!1;else if(j==="true"||j===1)q=!0;else{let H={};i===null?i=[H]:i.push(H),a++}q!==void 0&&(j=q,t!==void 0&&(t.https=q))}var u=U===a;u&&(Fe=!0,_e=0);let G=a;if(j!==null){let q;if(q===void 0)if(j===""||j===0||j===!1)q=null;else{let H={};i===null?i=[H]:i.push(H),a++}q!==void 0&&(j=q,t!==void 0&&(t.https=q))}var u=G===a;if(u&&Fe)Fe=!1,_e=[_e,1];else{u&&(Fe=!0,_e=1);let q=a;if(a===q)if(j&&typeof j=="object"&&!Array.isArray(j)){let ee;if(j.allowHTTP1===void 0&&(ee="allowHTTP1")){let ne={};i===null?i=[ne]:i.push(ne),a++}else{let ne=a;for(let re in j)re!=="allowHTTP1"&&delete j[re];if(ne===a&&j.allowHTTP1!==void 0){let re=j.allowHTTP1;if(typeof re!="boolean"){let X;if(X===void 0)if(re==="false"||re===0||re===null)X=!1;else if(re==="true"||re===1)X=!0;else{let ie={};i===null?i=[ie]:i.push(ie),a++}X!==void 0&&(re=X,j!==void 0&&(j.allowHTTP1=X))}}}}else{let ee={};i===null?i=[ee]:i.push(ee),a++}var u=q===a;u&&Fe?(Fe=!1,_e=[_e,2]):u&&(Fe=!0,_e=2)}if(Fe)a=qe,i!==null&&(qe?i.length=qe:i=null);else{let q={};i===null?i=[q]:i.push(q),a++}var l=we===a;if(l){let q={};i===null?i=[q]:i.push(q),a++}else a=Ce,i!==null&&(Ce?i.length=Ce:i=null);var d=ue===a;if(a=se,i!==null&&(se?i.length=se:i=null),d){let q=a;t.https=!0;var d=q===a;oe=d}if(!oe){let q={instancePath:e+"/https",schemaPath:"#/properties/https/if",keyword:"if",params:{failingKeyword:"then"},message:'must match "then" schema'};return i===null?i=[q]:i.push(q),a++,$r.errors=i,!1}var o=J===a}else var o=!0;if(o){let j=t.ignoreTrailingSlash,J=a;if(typeof j!="boolean"){let oe;if(oe===void 0)if(j==="false"||j===0||j===null)oe=!1;else if(j==="true"||j===1)oe=!0;else return $r.errors=[{instancePath:e+"/ignoreTrailingSlash",schemaPath:"#/properties/ignoreTrailingSlash/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;oe!==void 0&&(j=oe,t!==void 0&&(t.ignoreTrailingSlash=oe))}var o=J===a;if(o){let oe=t.ignoreDuplicateSlashes,ue=a;if(typeof oe!="boolean"){let we;if(we===void 0)if(oe==="false"||oe===0||oe===null)we=!1;else if(oe==="true"||oe===1)we=!0;else return $r.errors=[{instancePath:e+"/ignoreDuplicateSlashes",schemaPath:"#/properties/ignoreDuplicateSlashes/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;we!==void 0&&(oe=we,t!==void 0&&(t.ignoreDuplicateSlashes=we))}var o=ue===a;if(o){let we=t.disableRequestLogging,qe=a;if(typeof we!="boolean"){let _e;if(_e===void 0)if(we==="false"||we===0||we===null)_e=!1;else if(we==="true"||we===1)_e=!0;else return $r.errors=[{instancePath:e+"/disableRequestLogging",schemaPath:"#/properties/disableRequestLogging/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;_e!==void 0&&(we=_e,t!==void 0&&(t.disableRequestLogging=_e))}var o=qe===a;if(o){let _e=t.jsonShorthand,U=a;if(typeof _e!="boolean"){let z;if(z===void 0)if(_e==="false"||_e===0||_e===null)z=!1;else if(_e==="true"||_e===1)z=!0;else return $r.errors=[{instancePath:e+"/jsonShorthand",schemaPath:"#/properties/jsonShorthand/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;z!==void 0&&(_e=z,t!==void 0&&(t.jsonShorthand=z))}var o=U===a;if(o){let z=t.maxParamLength,q=a;if(!(typeof z=="number"&&!(z%1)&&!isNaN(z)&&isFinite(z))){let ee=typeof z,ne;if(ne===void 0)if(ee==="boolean"||z===null||ee==="string"&&z&&z==+z&&!(z%1))ne=+z;else return $r.errors=[{instancePath:e+"/maxParamLength",schemaPath:"#/properties/maxParamLength/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;ne!==void 0&&(z=ne,t!==void 0&&(t.maxParamLength=ne))}var o=q===a;if(o){let ee=t.onProtoPoisoning,ne=a;if(typeof ee!="string"){let X=typeof ee,ie;if(ie===void 0)if(X=="number"||X=="boolean")ie=""+ee;else if(ee===null)ie="";else return $r.errors=[{instancePath:e+"/onProtoPoisoning",schemaPath:"#/properties/onProtoPoisoning/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;ie!==void 0&&(ee=ie,t!==void 0&&(t.onProtoPoisoning=ie))}var o=ne===a;if(o){let X=t.onConstructorPoisoning,ie=a;if(typeof X!="string"){let fe=typeof X,Ne;if(Ne===void 0)if(fe=="number"||fe=="boolean")Ne=""+X;else if(X===null)Ne="";else return $r.errors=[{instancePath:e+"/onConstructorPoisoning",schemaPath:"#/properties/onConstructorPoisoning/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;Ne!==void 0&&(X=Ne,t!==void 0&&(t.onConstructorPoisoning=Ne))}var o=ie===a;if(o){let fe=t.pluginTimeout,Ne=a;if(!(typeof fe=="number"&&!(fe%1)&&!isNaN(fe)&&isFinite(fe))){let Ue=typeof fe,Ke;if(Ke===void 0)if(Ue==="boolean"||fe===null||Ue==="string"&&fe&&fe==+fe&&!(fe%1))Ke=+fe;else return $r.errors=[{instancePath:e+"/pluginTimeout",schemaPath:"#/properties/pluginTimeout/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;Ke!==void 0&&(fe=Ke,t!==void 0&&(t.pluginTimeout=Ke))}var o=Ne===a;if(o){let Ue=t.requestIdHeader,Ke=a,Ye=a,Ze=!1,nt=a;if(Ue!==!1){let tt={instancePath:e+"/requestIdHeader",schemaPath:"#/properties/requestIdHeader/anyOf/0/enum",keyword:"enum",params:{allowedValues:awe.properties.requestIdHeader.anyOf[0].enum},message:"must be equal to one of the allowed values"};i===null?i=[tt]:i.push(tt),a++}var f=nt===a;if(Ze=Ze||f,!Ze){let tt=a;if(typeof Ue!="string"){let lt=typeof Ue,De;if(De===void 0)if(lt=="number"||lt=="boolean")De=""+Ue;else if(Ue===null)De="";else{let Je={instancePath:e+"/requestIdHeader",schemaPath:"#/properties/requestIdHeader/anyOf/1/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[Je]:i.push(Je),a++}De!==void 0&&(Ue=De,t!==void 0&&(t.requestIdHeader=De))}var f=tt===a;Ze=Ze||f}if(Ze)a=Ye,i!==null&&(Ye?i.length=Ye:i=null);else{let tt={instancePath:e+"/requestIdHeader",schemaPath:"#/properties/requestIdHeader/anyOf",keyword:"anyOf",params:{},message:"must match a schema in anyOf"};return i===null?i=[tt]:i.push(tt),a++,$r.errors=i,!1}var o=Ke===a;if(o){let tt=t.requestIdLogLabel,Dt=a;if(typeof tt!="string"){let De=typeof tt,Je;if(Je===void 0)if(De=="number"||De=="boolean")Je=""+tt;else if(tt===null)Je="";else return $r.errors=[{instancePath:e+"/requestIdLogLabel",schemaPath:"#/properties/requestIdLogLabel/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;Je!==void 0&&(tt=Je,t!==void 0&&(t.requestIdLogLabel=Je))}var o=Dt===a;if(o){let De=t.http2SessionTimeout,Je=a;if(!(typeof De=="number"&&!(De%1)&&!isNaN(De)&&isFinite(De))){let rt=typeof De,bt;if(bt===void 0)if(rt==="boolean"||De===null||rt==="string"&&De&&De==+De&&!(De%1))bt=+De;else return $r.errors=[{instancePath:e+"/http2SessionTimeout",schemaPath:"#/properties/http2SessionTimeout/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;bt!==void 0&&(De=bt,t!==void 0&&(t.http2SessionTimeout=bt))}var o=Je===a;if(o){let rt=t.exposeHeadRoutes,bt=a;if(typeof rt!="boolean"){let Ct;if(Ct===void 0)if(rt==="false"||rt===0||rt===null)Ct=!1;else if(rt==="true"||rt===1)Ct=!0;else return $r.errors=[{instancePath:e+"/exposeHeadRoutes",schemaPath:"#/properties/exposeHeadRoutes/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;Ct!==void 0&&(rt=Ct,t!==void 0&&(t.exposeHeadRoutes=Ct))}var o=bt===a;if(o){let Ct=t.useSemicolonDelimiter,Sr=a;if(typeof Ct!="boolean"){let Dr;if(Dr===void 0)if(Ct==="false"||Ct===0||Ct===null)Dr=!1;else if(Ct==="true"||Ct===1)Dr=!0;else return $r.errors=[{instancePath:e+"/useSemicolonDelimiter",schemaPath:"#/properties/useSemicolonDelimiter/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;Dr!==void 0&&(Ct=Dr,t!==void 0&&(t.useSemicolonDelimiter=Dr))}var o=Sr===a;if(o){if(t.versioning!==void 0){let Dr=t.versioning,qs=a;if(a===qs)if(Dr&&typeof Dr=="object"&&!Array.isArray(Dr)){let ys;if(Dr.storage===void 0&&(ys="storage")||Dr.deriveVersion===void 0&&(ys="deriveVersion"))return $r.errors=[{instancePath:e+"/versioning",schemaPath:"#/properties/versioning/required",keyword:"required",params:{missingProperty:ys},message:"must have required property '"+ys+"'"}],!1}else return $r.errors=[{instancePath:e+"/versioning",schemaPath:"#/properties/versioning/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=qs===a}else var o=!0;if(o)if(t.constraints!==void 0){let Dr=t.constraints,qs=a;if(a===qs)if(Dr&&typeof Dr=="object"&&!Array.isArray(Dr))for(let ys in Dr){let Hs=Dr[ys],Lu=a;if(a===Lu)if(Hs&&typeof Hs=="object"&&!Array.isArray(Hs)){let go;if(Hs.name===void 0&&(go="name")||Hs.storage===void 0&&(go="storage")||Hs.validate===void 0&&(go="validate")||Hs.deriveConstraint===void 0&&(go="deriveConstraint"))return $r.errors=[{instancePath:e+"/constraints/"+ys.replace(/~/g,"~0").replace(/\//g,"~1"),schemaPath:"#/properties/constraints/additionalProperties/required",keyword:"required",params:{missingProperty:go},message:"must have required property '"+go+"'"}],!1;if(Hs.name!==void 0){let Dc=Hs.name;if(typeof Dc!="string"){let Ta=typeof Dc,yn;if(yn===void 0)if(Ta=="number"||Ta=="boolean")yn=""+Dc;else if(Dc===null)yn="";else return $r.errors=[{instancePath:e+"/constraints/"+ys.replace(/~/g,"~0").replace(/\//g,"~1")+"/name",schemaPath:"#/properties/constraints/additionalProperties/properties/name/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;yn!==void 0&&(Dc=yn,Hs!==void 0&&(Hs.name=yn))}}}else return $r.errors=[{instancePath:e+"/constraints/"+ys.replace(/~/g,"~0").replace(/\//g,"~1"),schemaPath:"#/properties/constraints/additionalProperties/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var p=Lu===a;if(!p)break}else return $r.errors=[{instancePath:e+"/constraints",schemaPath:"#/properties/constraints/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=qs===a}else var o=!0}}}}}}}}}}}}}}}}}}}}}}}}}else return $r.errors=[{instancePath:e,schemaPath:"#/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;return $r.errors=i,a===0}QP.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 cwe=E((M4r,VP)=>{"use strict";var GP=owe(),S7t=NR()({circles:!0,proto:!1}),{FST_ERR_INIT_OPTS_INVALID:v7t}=Ci();function C7t(t){let e=S7t(t);if(!GP(e)){let r=new v7t(JSON.stringify(GP.errors.map(n=>n.message)));throw r.errors=GP.errors,r}return zq(e)}function zq(t){let e=Object.getOwnPropertyNames(t);for(let r of e){let n=t[r];ArrayBuffer.isView(n)&&!(n instanceof DataView)||(t[r]=n&&typeof n=="object"?zq(n):n)}return Object.freeze(t)}VP.exports=C7t;VP.exports.defaultInitOptions=GP.defaultInitOptions;VP.exports.utils={deepFreezeObject:zq}});var Awe=E((W4r,gwe)=>{"use strict";var{kAvvioBoot:I7t,kChildren:uwe,kRoutePrefix:lwe,kLogLevel:dwe,kLogSerializers:Kq,kHooks:Yq,kSchemaController:tx,kContentTypeParser:fwe,kReply:pwe,kRequest:mwe,kFourOhFour:T7t,kPluginNameChain:hwe}=Qs(),w7t=SN(),R7t=FN(),N7t=bq(),O7t=Y$(),{buildHooks:P7t}=up(),ES=Iq();gwe.exports=function(e,r,n){let s=ES.registerPlugin.call(e,r),i=ES.getPluginName(r)||ES.getFuncPreview(r);if(s)return e[hwe].push(i),e;let a=Object.create(e);e[uwe].push(a),a.ready=e[I7t].bind(a),a[uwe]=[],a[pwe]=w7t.buildReply(a[pwe]),a[mwe]=R7t.buildRequest(a[mwe]),a[fwe]=O7t.helpers.buildContentTypeParser(a[fwe]),a[Yq]=P7t(a[Yq]),a[lwe]=D7t(a[lwe],n.prefix),a[dwe]=n.logLevel||a[dwe],a[tx]=N7t.buildSchemaController(e[tx]),a.getSchema=a[tx].getSchema.bind(a[tx]),a.getSchemas=a[tx].getSchemas.bind(a[tx]),a[ES.kRegisteredPlugins]=Object.create(a[ES.kRegisteredPlugins]),a[hwe]=[i],(a[Kq]||n.logSerializers)&&(a[Kq]=Object.assign(Object.create(a[Kq]),n.logSerializers)),n.prefix&&a[T7t].arrange404(a);for(let o of a[Yq].onRegister)o.call(this,a,n);return a};function D7t(t,e){return e?(t.endsWith("/")&&e[0]==="/"?e=e.slice(1):e[0]!=="/"&&(e="/"+e),t+e):t}});var xwe=E(($4r,ywe)=>{"use strict";ywe.exports=function(){return{[Symbol.iterator]:function*(){},add(){},delete(){},has(){return!0}}}});var _we=E(Jq=>{"use strict";Jq.parse=F7t;Jq.serialize=U7t;var k7t=Object.prototype.toString,L7t=Object.prototype.hasOwnProperty,B7t=/^[!#$%&'*+\-.^_`|~0-9A-Za-z]+$/,M7t=/^("?)[\u0021\u0023-\u002B\u002D-\u003A\u003C-\u005B\u005D-\u007E]*\1$/,W7t=/^([.]?[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)([.][a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)*$/i,$7t=/^[\u0020-\u003A\u003D-\u007E]*$/;function F7t(t,e){if(typeof t!="string")throw new TypeError("argument str must be a string");var r={},n=t.length;if(n<2)return r;var s=e&&e.decode||q7t,i=0,a=0,o=0;do{if(a=t.indexOf("=",i),a===-1)break;if(o=t.indexOf(";",i),o===-1)o=n;else if(a>o){i=t.lastIndexOf(";",a-1)+1;continue}var c=bwe(t,i,a),u=Ewe(t,a,c),l=t.slice(c,u);if(!L7t.call(r,l)){var d=bwe(t,a+1,o),f=Ewe(t,o,d);t.charCodeAt(d)===34&&t.charCodeAt(f-1)===34&&(d++,f--);var p=t.slice(d,f);r[l]=H7t(p,s)}i=o+1}while(ir;){var n=t.charCodeAt(--e);if(n!==32&&n!==9)return e+1}return r}function U7t(t,e,r){var n=r&&r.encode||encodeURIComponent;if(typeof n!="function")throw new TypeError("option encode is invalid");if(!B7t.test(t))throw new TypeError("argument name is invalid");var s=n(e);if(!M7t.test(s))throw new TypeError("argument val is invalid");var i=t+"="+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(!W7t.test(r.domain))throw new TypeError("option domain is invalid");i+="; Domain="+r.domain}if(r.path){if(!$7t.test(r.path))throw new TypeError("option path is invalid");i+="; Path="+r.path}if(r.expires){var o=r.expires;if(!j7t(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 q7t(t){return t.indexOf("%")!==-1?decodeURIComponent(t):t}function j7t(t){return k7t.call(t)==="[object Date]"}function H7t(t,e){try{return e(t)}catch{return t}}});var Cwe=E((U4r,vwe)=>{"use strict";var{URL:Swe}=require("node:url"),Xq="http://localhost";vwe.exports=function(e,r){(typeof e=="string"||Object.prototype.toString.call(e)==="[object String]")&&e.startsWith("//")&&(e=Xq+e);let n=typeof e=="object"?Object.assign(new Swe(Xq),e):new Swe(e,Xq);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({},e.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 Iwe=E((q4r,Zq)=>{"use strict";var{randomUUID:Q7t}=require("node:crypto"),{Readable:G7t}=require("node:stream"),rx;function V7t(t){return t&&typeof t=="object"&&typeof t.append=="function"&&typeof t.delete=="function"&&typeof t.get=="function"&&typeof t.getAll=="function"&&typeof t.has=="function"&&typeof t.set=="function"&&t[Symbol.toStringTag]==="FormData"}function z7t(t){rx=rx??new TextEncoder;let e=`----formdata-${Q7t()}`,r=`--${e}\r +`))}};nRe.exports=MQ});var aRe=_((L9r,iRe)=>{"use strict";var _Qt=sRe(),p3={STATIC:0,PARAMETRIC:1,WILDCARD:2},c3=class{constructor(){this.isLeafNode=!1,this.routes=null,this.handlerStorage=null}addRoute(e,r){this.routes===null&&(this.routes=[]),this.handlerStorage===null&&(this.handlerStorage=new _Qt),this.isLeafNode=!0,this.routes.push(e),this.handlerStorage.addHandler(r,e)}},u3=class extends c3{constructor(){super(),this.staticChildren={}}findStaticMatchingChild(e,r){let n=this.staticChildren[e.charAt(r)];return n===void 0||!n.matchPrefix(e,r)?null:n}getStaticChild(e,r=0){if(e.length===r)return this;let n=this.findStaticMatchingChild(e,r);return n?n.getStaticChild(e,r+n.prefix.length):null}createStaticChild(e){if(e.length===0)return this;let r=this.staticChildren[e.charAt(0)];if(r){let s=1;for(;s(s.regex&&s.regex.source)===r);return n||null}createParametricChild(e,r,n){let s=this.getParametricChild(e);return s?(s.nodePaths.add(n),s):(s=new d3(e,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 f3,this.wildcardChild}split(e,r){let n=this.prefix.slice(0,r),s=this.prefix.slice(r);this.prefix=s,this._compilePrefixMatch();let i=new t(n);return i.staticChildren[s.charAt(0)]=this,e.staticChildren[n.charAt(0)]=i,i}getNextNode(e,r,n,s){let i=this.findStaticMatchingChild(e,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 e=[];for(let r=1;r{"use strict";var EQt=require("node:assert");function SS(){if(!(this instanceof SS))return new SS;this.store={},this.maxMajor=0,this.maxMinors={},this.maxPatches={}}SS.prototype.set=function(t,e){if(typeof t!="string")throw new TypeError("Version should be a string");let[r,n,s]=t.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=e,this.store["*"]=e,this.store["x.x"]=e,this.store["x.x.x"]=e),n>=(this.maxMinors[r]||0)&&(this.maxMinors[r]=n,this.store[`${r}.x`]=e,this.store[`${r}.x.x`]=e),s>=(this.maxPatches[`${r}.${n}`]||0)&&(this.maxPatches[`${r}.${n}`]=s,this.store[`${r}.${n}.x`]=e),this.store[`${r}.${n}.${s}`]=e,this};SS.prototype.get=function(t){return this.store[t]};oRe.exports={name:"version",mustMatchWhenDerived:!0,storage:SS,validate(t){EQt(typeof t=="string","Version should be a string")}}});var lRe=_((W9r,uRe)=>{"use strict";var vQt=require("node:assert");function SQt(){let t={},e=[];return{get:r=>{let n=t[r];if(n)return n;for(let s of e)if(s.host.test(r))return s.value},set:(r,n)=>{r instanceof RegExp?e.push({host:r,value:n}):t[r]=n}}}uRe.exports={name:"host",mustMatchWhenDerived:!1,storage:SQt,validate(t){vQt(typeof t=="string"||Object.prototype.toString.call(t)==="[object RegExp]","Host should be a string or a RegExp")}}});var fRe=_(($9r,dRe)=>{"use strict";var IQt=cRe(),CQt=lRe(),WQ=require("node:assert"),$Q=class{constructor(e){if(this.strategies={version:IQt,host:CQt},this.strategiesInUse=new Set,this.asyncStrategiesInUse=new Set,e)for(let r of Object.values(e))this.addConstraintStrategy(r)}isStrategyUsed(e){return this.strategiesInUse.has(e)||this.asyncStrategiesInUse.has(e)}hasConstraintStrategy(e){let r=this.strategies[e];return r!==void 0?r.isCustom||this.isStrategyUsed(e):!1}addConstraintStrategy(e){if(WQ(typeof e.name=="string"&&e.name!=="","strategy.name is required."),WQ(e.storage&&typeof e.storage=="function","strategy.storage function is required."),WQ(e.deriveConstraint&&typeof e.deriveConstraint=="function","strategy.deriveConstraint function is required."),this.strategies[e.name]&&this.strategies[e.name].isCustom)throw new Error(`There already exists a custom constraint with the name ${e.name}.`);if(this.isStrategyUsed(e.name))throw new Error(`There already exists a route with ${e.name} constraint.`);e.isCustom=!0,e.isAsync=e.deriveConstraint.length===3,this.strategies[e.name]=e,e.mustMatchWhenDerived&&this.noteUsage({[e.name]:e})}deriveConstraints(e,r,n){let s=this.deriveSyncConstraints(e,r);if(n===void 0)return s;this.deriveAsyncConstraints(s,e,r,n)}deriveSyncConstraints(e,r){}noteUsage(e){if(e){let r=this.strategiesInUse.size;for(let n in e)this.strategies[n].isAsync?this.asyncStrategiesInUse.add(n):this.strategiesInUse.add(n);r!==this.strategiesInUse.size&&this._buildDeriveConstraints()}}newStoreForConstraint(e){if(!this.strategies[e])throw new Error(`No strategy registered for constraint key ${e}`);return this.strategies[e].storage()}validateConstraints(e){for(let r in e){let n=e[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(e,r,n,s){let i=this.asyncStrategiesInUse.size;if(i===0){s(null,e);return}e=e||{};for(let a of this.asyncStrategiesInUse)this.strategies[a].deriveConstraint(r,n,(c,u)=>{if(c!==null){s(c);return}e[a]=u,--i===0&&s(null,e)})}_buildDeriveConstraints(){if(this.strategiesInUse.size===0)return;let e=["return {"];for(let r of this.strategiesInUse){let n=this.strategies[r];n.isCustom?e.push(` ${n.name}: this.strategies.${r}.deriveConstraint(req, ctx),`):r==="version"?e.push(" version: req.headers['accept-version'],"):e.push(" host: req.headers.host || req.headers[':authority'],")}e.push("}"),this.deriveSyncConstraints=new Function("req","ctx",e.join(` +`)).bind(this)}};dRe.exports=$Q});var mRe=_((U9r,pRe)=>{"use strict";var TQt=["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"];pRe.exports=TQt});var yRe=_((F9r,gRe)=>{"use strict";function hRe(t,e){return t===50?e===53?"%":e===51?"#":e===52?"$":e===54?"&":e===66||e===98?"+":e===67||e===99?",":e===70||e===102?"/":null:t===51?e===65||e===97?":":e===66||e===98?";":e===68||e===100?"=":e===70||e===102?"?":null:t===52&&e===48?"@":null}function wQt(t,e){let r=!1,n=!1,s="";for(let a=1;a{"use strict";var ms=require("node:assert"),NQt=Iwe(),m3=Kwe(),FQ=sc(),{prettyPrintTree:OQt}=rRe(),{StaticNode:ARe,NODE_TYPES:xRe}=aRe(),kQt=fRe(),Bx=mRe(),UQ=a3(),{safeDecodeURI:PQt,safeDecodeURIComponent:bRe}=yRe(),_Re=/^https?:\/\/.*?\//,Oh=/(\/:[^/()]*?)\?(\/?)/;if(!m3(_Re))throw new Error("the FULL_PATH_REGEXP is not safe, update this module");if(!m3(Oh))throw new Error("the OPTIONAL_PARAM_REGEXP is not safe, update this module");function Vn(t){if(!(this instanceof Vn))return new Vn(t);t=t||{},this._opts=t,t.defaultRoute?(ms(typeof t.defaultRoute=="function","The default route must be a function"),this.defaultRoute=t.defaultRoute):this.defaultRoute=null,t.onBadUrl?(ms(typeof t.onBadUrl=="function","The bad url handler must be a function"),this.onBadUrl=t.onBadUrl):this.onBadUrl=null,t.buildPrettyMeta?(ms(typeof t.buildPrettyMeta=="function","buildPrettyMeta must be a function"),this.buildPrettyMeta=t.buildPrettyMeta):this.buildPrettyMeta=DQt,t.querystringParser?(ms(typeof t.querystringParser=="function","querystringParser must be a function"),this.querystringParser=t.querystringParser):this.querystringParser=e=>e===""?{}:NQt.parse(e),this.caseSensitive=t.caseSensitive===void 0?!0:t.caseSensitive,this.ignoreTrailingSlash=t.ignoreTrailingSlash||!1,this.ignoreDuplicateSlashes=t.ignoreDuplicateSlashes||!1,this.maxParamLength=t.maxParamLength||100,this.allowUnsafeRegex=t.allowUnsafeRegex||!1,this.constrainer=new kQt(t.constraints),this.useSemicolonDelimiter=t.useSemicolonDelimiter||!1,this.routes=[],this.trees={}}Vn.prototype.on=function(e,r,n,s,i){typeof n=="function"&&(s!==void 0&&(i=s),s=n,n={}),ms(typeof r=="string","Path should be a string"),ms(r.length>0,"The path could not be empty"),ms(r[0]==="/"||r[0]==="*","The first character of a path should be `/` or `*`"),ms(typeof s=="function","Handler should be a function");let a=r.match(Oh);if(a){ms(r.length===a.index+a[0].length,"Optional Parameter needs to be the last parameter of the path");let u=r.replace(Oh,"$1$2"),l=r.replace(Oh,"$2")||"/";this.on(e,u,n,s,i),this.on(e,l,n,s,i);return}let o=r;this.ignoreDuplicateSlashes&&(r=qQ(r)),this.ignoreTrailingSlash&&(r=jQ(r));let c=Array.isArray(e)?e:[e];for(let u of c)ms(typeof u=="string","Method should be a string"),ms(Bx.includes(u),`Method '${u}' is not an http method.`),this._on(u,r,n,s,i,o)};Vn.prototype._on=function(e,r,n,s,i){let a={};n.constraints!==void 0&&(ms(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[e]===void 0&&(this.trees[e]=new ARe("/"));let o=r;if(o==="*"&&this.trees[e].prefix.length!==0){let f=this.trees[e];this.trees[e]=new ARe(""),this.trees[e].staticChildren["/"]=f}let c=this.trees[e],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 p=o.charCodeAt(f)===58&&o.charCodeAt(f+1)!==58,m=o.charCodeAt(f)===42;if(p||m||f===o.length&&f!==u){let h=o.slice(u,f);this.caseSensitive||(h=h.toLowerCase()),h=h.split("::").join(":"),h=h.split("%").join("%25"),c=c.createStaticChild(h)}if(p){let h=!1,y=!0,g="",b=[],x=f+1;for(let A=x;;A++){let S=o.charCodeAt(A),I=S===40,R=S===45||S===46,w=S===47||A===o.length;if(I||R||w){let N=o.slice(x,A);if(l.push(N),h=h||I||R,I){let M=SRe(o,A),D=o.slice(A,M+1);this.allowUnsafeRegex||ms(m3(new RegExp(D)),`The regex '${D}' is not safe!`),b.push(vRe(D)),A=M+1,y=!0}else b.push(y?"(.*?)":`(${g}|(?:(?!${g}).)*)`),y=!1;let k=A;for(;A0,"The path could not be empty"),ms(r[0]==="/"||r[0]==="*","The first character of a path should be `/` or `*`"),ms(typeof n>"u"||typeof n=="object"&&!Array.isArray(n)&&n!==null,"Constraints should be an object or undefined.");let s=r.match(Oh);if(s){ms(r.length===s.index+s[0].length,"Optional Parameter needs to be the last parameter of the path");let a=r.replace(Oh,"$1$2"),o=r.replace(Oh,"$2");this.off(e,a,n),this.off(e,o,n);return}this.ignoreDuplicateSlashes&&(r=qQ(r)),this.ignoreTrailingSlash&&(r=jQ(r));let i=Array.isArray(e)?e:[e];for(let a of i)this._off(a,r,n)};Vn.prototype._off=function(e,r,n){ms(typeof e=="string","Method should be a string"),ms(Bx.includes(e),`Method '${e}' is not an http method.`);function s(c){return e!==c.method||r!==c.path}function i(c){return s(c)||!FQ(n,c.opts.constraints||{})}let a=n?i:s,o=this.routes.filter(a);this._rebuild(o)};Vn.prototype.lookup=function(e,r,n,s){if(typeof n=="function"&&(s=n,n=void 0),s===void 0){let i=this.constrainer.deriveConstraints(e,n),a=this.find(e.method,e.url,i);return this.callHandler(a,e,r,n)}this.constrainer.deriveConstraints(e,n,(i,a)=>{if(i!==null){s(i);return}try{let o=this.find(e.method,e.url,a),c=this.callHandler(o,e,r,n);s(null,c)}catch(o){s(o)}})};Vn.prototype.callHandler=function(e,r,n,s){return e===null?this._defaultRoute(r,n,s):s===void 0?e.handler(r,n,e.params,e.store,e.searchParams):e.handler.call(s,r,n,e.params,e.store,e.searchParams)};Vn.prototype.find=function(e,r,n){let s=this.trees[e];if(s===void 0)return null;r.charCodeAt(0)!==47&&(r=r.replace(_Re,"/")),this.ignoreDuplicateSlashes&&(r=qQ(r));let i,a,o;try{i=PQt(r,this.useSemicolonDelimiter),r=i.path,a=i.querystring,o=i.shouldDecodeParam}catch{return this._onBadUrl(r)}this.ignoreTrailingSlash&&(r=jQ(r));let c=r;this.caseSensitive===!1&&(r=r.toLowerCase());let u=this.maxParamLength,l=s.prefix.length,d=[],f=r.length,p=[];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 m=s.getNextNode(r,l,p,d.length);if(m===null){if(p.length===0)return null;let g=p.pop();l=g.brotherPathIndex,d.splice(g.paramsCount),m=g.brotherNode}if(s=m,s.kind===xRe.STATIC){l+=s.prefix.length;continue}if(s.kind===xRe.WILDCARD){let g=c.slice(l);o&&(g=bRe(g)),d.push(g),l=f;continue}let h=c.indexOf("/",l);h===-1&&(h=f);let y=c.slice(l,h);if(o&&(y=bRe(y)),s.isRegex){let g=s.regex.exec(y);if(g===null)continue;for(let b=1;bu)return null;d.push(x)}}else{if(y.length>u)return null;d.push(y)}l=h}};Vn.prototype._rebuild=function(t){this.reset();for(let e of t){let{method:r,path:n,opts:s,handler:i,store:a}=e;this._on(r,n,s,i,a)}};Vn.prototype._defaultRoute=function(t,e,r){if(this.defaultRoute!==null)return r===void 0?this.defaultRoute(t,e):this.defaultRoute.call(r,t,e);e.statusCode=404,e.end()};Vn.prototype._onBadUrl=function(t){if(this.onBadUrl===null)return null;let e=this.onBadUrl;return{handler:(r,n,s)=>e(t,r,n),params:{},store:null}};Vn.prototype.prettyPrint=function(t={}){let e=t.method;t.buildPrettyMeta=this.buildPrettyMeta.bind(this);let r=null;if(e===void 0){let{version:n,host:s,...i}=this.constrainer.strategies;i[UQ.name]=UQ;let a=new Vn({...this._opts,constraints:i}),o=this.routes.map(c=>{let u={...c.opts.constraints,[UQ.name]:c.method};return{...c,method:"MERGED",opts:{constraints:u}}});a._rebuild(o),r=a.trees.MERGED}else r=this.trees[e];return r==null?"(empty tree)":OQt(r,t)};for(let t in Bx){if(!Bx.hasOwnProperty(t))continue;let e=Bx[t],r=e.toLowerCase();Vn.prototype[r]=function(n,s,i){return this.on(e,n,s,i)}}Vn.prototype.all=function(t,e,r){this.on(Bx,t,e,r)};IRe.exports=Vn;function ERe(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function qQ(t){return t.replace(/\/\/+/g,"/")}function jQ(t){return t.length>1&&t.charCodeAt(t.length-1)===47?t.slice(0,-1):t}function vRe(t){return t.charCodeAt(1)===94&&(t=t.slice(0,1)+t.slice(2)),t.charCodeAt(t.length-2)===36&&(t=t.slice(0,t.length-2)+t.slice(t.length-1)),t}function SRe(t,e){let r=1;for(;e{"use strict";function HQ(t,e,r,n){if(r===void 0)return e.header("content-length","0"),n(null,null);if(typeof r.resume=="function")return r.on("error",i=>{e.log.error({err:i},"Error on Stream found for HEAD route")}),r.resume(),n(null,null);let s=""+Buffer.byteLength(r);e.header("content-length",s),n(null,null)}function BQt(t){return t==null?HQ:Array.isArray(t)?[...t,HQ]:[t,HQ]}CRe.exports={parseHeadOnSendHandlers:BQt}});var QRe=_((Q9r,jRe)=>{"use strict";var LQt=QQ(),MQt=dk(),wRe=a8(),{onRequestAbortHookRunner:WQt,lifecycleHooks:RRe,preParsingHookRunner:$Qt,onTimeoutHookRunner:UQt,onRequestHookRunner:FQt}=Rp(),{supportedMethods:qQt}=WF(),{normalizeSchema:jQt}=hE(),{parseHeadOnSendHandlers:QQt}=TRe(),{FSTDEP007:HQt,FSTDEP008:GQt,FSTDEP014:NRe}=wd(),{compileSchemasForValidation:zQt,compileSchemasForSerialization:KQt}=t8(),{FST_ERR_SCH_VALIDATION_BUILD:VQt,FST_ERR_SCH_SERIALIZATION_BUILD:YQt,FST_ERR_DEFAULT_ROUTE_INVALID_TYPE:JQt,FST_ERR_DUPLICATED_ROUTE:XQt,FST_ERR_INVALID_URL:ZQt,FST_ERR_HOOK_INVALID_HANDLER:ORe,FST_ERR_ROUTE_OPTIONS_NOT_OBJ:eHt,FST_ERR_ROUTE_DUPLICATED_HANDLER:tHt,FST_ERR_ROUTE_HANDLER_NOT_FN:kRe,FST_ERR_ROUTE_MISSING_HANDLER:rHt,FST_ERR_ROUTE_METHOD_NOT_SUPPORTED:nHt,FST_ERR_ROUTE_METHOD_INVALID:sHt,FST_ERR_ROUTE_BODY_VALIDATION_SCHEMA_NOT_SUPPORTED:iHt,FST_ERR_ROUTE_BODY_LIMIT_OPTION_NOT_INT:aHt,FST_ERR_HOOK_INVALID_ASYNC_HANDLER:GQ}=Di(),{kRoutePrefix:oHt,kLogLevel:cHt,kLogSerializers:PRe,kHooks:DRe,kSchemaController:uHt,kOptions:BRe,kReplySerializerDefault:zQ,kReplyIsError:lHt,kRequestPayloadStream:dHt,kDisableRequestLogging:fHt,kSchemaErrorFormatter:pHt,kErrorHandler:LRe,kHasBeenDecorated:MRe,kRequestAcceptVersion:KQ,kRouteByFastify:VQ,kRouteContext:WRe}=zs(),{buildErrorHandler:mHt}=zE(),{createChildLogger:hHt}=mE(),{getGenReqId:gHt}=YP();function yHt(t){let e=LQt(t.config),r,n,s,i,a,o,c,u,l,d,f,p,m,h=!1;return{setup(w,N){r=N.avvio,n=N.fourOhFour,s=N.logger,i=N.hasLogger,a=N.setupResponseListeners,o=N.throwIfAlreadyStarted,p=N.validateHTTPVersion,f=w.exposeHeadRoutes,c=w.disableRequestLogging,u=w.ignoreTrailingSlash,l=w.ignoreDuplicateSlashes,d=Object.prototype.hasOwnProperty.call(w,"return503OnClosing")?w.return503OnClosing:!0,m=N.keepAliveConnections},routing:e.lookup.bind(e),route:I,hasRoute:A,prepareRoute:x,getDefaultRoute:function(){return NRe(),e.defaultRoute},setDefaultRoute:function(w){if(NRe(),typeof w!="function")throw new JQt;e.defaultRoute=w},routeHandler:R,closeRoutes:()=>{h=!0},printRoutes:e.prettyPrint.bind(e),addConstraintStrategy:y,hasConstraintStrategy:g,isAsyncConstraint:b,findRoute:S};function y(w){return o("Cannot add constraint strategy!"),e.addConstraintStrategy(w)}function g(w){return e.hasConstraintStrategy(w)}function b(){return e.constrainer.asyncStrategiesInUse.size>0}function x({method:w,url:N,options:k,handler:B,isFastify:M}){if(typeof N!="string")throw new ZQt(typeof N);if(!B&&typeof k=="function")B=k,k={};else if(B&&typeof B=="function"){if(Object.prototype.toString.call(k)!=="[object Object]")throw new eHt(w,N);if(k.handler)throw typeof k.handler=="function"?new tHt(w,N):new kRe(w,N)}return k=Object.assign({},k,{method:w,url:N,path:N,handler:B||k&&k.handler}),I.call(this,{options:k,isFastify:M})}function A({options:w}){return S(w)!==null}function S(w){let N=e.find(w.method,w.url||"",w.constraints);return N?{handler:N.handler,params:N.params,searchParams:N.searchParams}:null}function I({options:w,isFastify:N}){let k={...w},{exposeHeadRoute:B}=k,D=B!=null?B:f,L=k.method==="GET"||Array.isArray(k.method)&&k.method.includes("GET"),Z=k.method==="HEAD"||Array.isArray(k.method)&&k.method.includes("HEAD"),W=D&&L?{...w}:null;o("Cannot add route!");let U=k.url||k.path||"";if(Array.isArray(k.method))for(var z=0;z0&&k.method!=="HEAD")switch(k.prefixTrailingSlash){case"slash":J.call(this,{path:U,isFastify:N});break;case"no-slash":J.call(this,{path:"",isFastify:N});break;case"both":default:J.call(this,{path:"",isFastify:N}),u!==!0&&(l!==!0||!j.endsWith("/"))&&J.call(this,{path:U,prefixing:!0,isFastify:N})}else U[0]==="/"&&j.endsWith("/")?J.call(this,{path:U.slice(1),isFastify:N}):J.call(this,{path:U,isFastify:N});return this;function J({path:se,prefixing:oe=!1,isFastify:ue=!1}){let Te=j+se;if(k.url=Te,k.path=Te,k.routePath=se,k.prefix=j,k.logLevel=k.logLevel||this[cHt],(this[PRe]||k.logSerializers)&&(k.logSerializers=Object.assign(Object.create(this[PRe]),k.logSerializers)),k.attachValidation==null&&(k.attachValidation=!1),oe===!1)for(let G of this[DRe].onRoute)G.call(this,k);for(let G of RRe)if(k&&G in k){if(Array.isArray(k[G]))for(let K of k[G]){if(typeof K!="function")throw new ORe(G,Object.prototype.toString.call(K));if(G==="onSend"||G==="preSerialization"||G==="onError"||G==="preParsing"){if(K.constructor.name==="AsyncFunction"&&K.length===4)throw new GQ}else if(G==="onRequestAbort"){if(K.constructor.name==="AsyncFunction"&&K.length!==1)throw new GQ}else if(K.constructor.name==="AsyncFunction"&&K.length===3)throw new GQ}else if(k[G]!==void 0&&typeof k[G]!="function")throw new ORe(G,Object.prototype.toString.call(k[G]))}let Ne=k.constraints||{},je={...k.config,url:Te,method:k.method},Fe=new MQt({schema:k.schema,handler:k.handler.bind(this),config:je,errorHandler:k.errorHandler,childLoggerFactory:k.childLoggerFactory,bodyLimit:k.bodyLimit,logLevel:k.logLevel,logSerializers:k.logSerializers,attachValidation:k.attachValidation,schemaErrorFormatter:k.schemaErrorFormatter,replySerializer:this[zQ],validatorCompiler:k.validatorCompiler,serializerCompiler:k.serializerCompiler,exposeHeadRoute:D,prefixTrailingSlash:k.prefixTrailingSlash||"both",server:this,isFastify:ue});k.version&&(GQt(),Ne.version=k.version);let ve=e.findRoute("HEAD",k.url,Ne),F=ve!==null;Z&&F&&!Fe[VQ]&&ve.store[VQ]&&e.off("HEAD",k.url,Ne);try{e.on(k.method,k.url,{constraints:Ne},R,Fe)}catch(G){if(!Fe[VQ])throw G.message.includes(`Method '${k.method}' already declared for route '${k.url}'`)?new XQt(k.method,k.url):G}if(this.after((G,K)=>{Fe.errorHandler=k.errorHandler?mHt(this[LRe],k.errorHandler):this[LRe],Fe._parserOptions.limit=k.bodyLimit||null,Fe.logLevel=k.logLevel,Fe.logSerializers=k.logSerializers,Fe.attachValidation=k.attachValidation,Fe[zQ]=this[zQ],Fe.schemaErrorFormatter=k.schemaErrorFormatter||this[pHt]||Fe.schemaErrorFormatter,r.once("preReady",()=>{for(let q of RRe){let Q=this[DRe][q].concat(k[q]||[]).map(ee=>ee.bind(this));Fe[q]=Q.length?Q:null}for(;!Fe.Request[MRe]&&Fe.Request.parent;)Fe.Request=Fe.Request.parent;for(;!Fe.Reply[MRe]&&Fe.Reply.parent;)Fe.Reply=Fe.Reply.parent;if(n.setContext(this,Fe),k.schema){Fe.schema=jQt(Fe.schema,this.initialConfig);let q=this[uHt];!k.validatorCompiler&&(k.schema.body||k.schema.headers||k.schema.querystring||k.schema.params)&&q.setupValidator(this[BRe]);try{let Q=typeof k?.validatorCompiler=="function"||q.isCustomValidatorCompiler;zQt(Fe,k.validatorCompiler||q.validatorCompiler,Q)}catch(Q){throw new VQt(k.method,Te,Q.message)}k.schema.response&&!k.serializerCompiler&&q.setupSerializer(this[BRe]);try{KQt(Fe,k.serializerCompiler||q.serializerCompiler)}catch(Q){throw new YQt(k.method,Te,Q.message)}}}),K(G)}),D&&L&&!Z&&!F){let G=QQt(W.onSend);x.call(this,{method:"HEAD",url:se,options:{...W,onSend:G},isFastify:!0})}else F&&B&&HQt()}}function R(w,N,k,B,M){let D=gHt(B.server,w),L={level:B.logLevel};B.logSerializers&&(L.serializers=B.logSerializers);let Z=hHt(B,s,w,D,L);if(Z[fHt]=c,!p(w.httpVersion)){Z.info({res:{statusCode:505}},"request aborted - invalid HTTP version");let j='{"error":"HTTP Version Not Supported","message":"HTTP Version Not Supported","statusCode":505}',J={"Content-Type":"application/json","Content-Length":j.length};N.writeHead(505,J),N.end(j);return}if(h===!0&&(w.httpVersionMajor!==2&&N.setHeader("Connection","close"),d)){let j={"Content-Type":"application/json","Content-Length":"80"};N.writeHead(503,j),N.end('{"error":"Service Unavailable","message":"Service Unavailable","statusCode":503}'),Z.info({res:{statusCode:503}},"request aborted - refusing to accept new requests as server is closing");return}String.prototype.toLowerCase.call(w.headers.connection||"")==="keep-alive"&&m.has(w.socket)===!1&&(m.add(w.socket),w.socket.on("close",bHt.bind({keepAliveConnections:m,socket:w.socket}))),w.headers[KQ]!==void 0&&(w.headers["accept-version"]=w.headers[KQ],w.headers[KQ]=void 0);let U=new B.Request(D,k,w,M,Z,B),z=new B.Reply(N,U,Z);c===!1&&Z.info({req:U},"incoming request"),(i===!0||B.onResponse!==null)&&a(z),B.onRequest!==null?FQt(B.onRequest,U,z,FRe):FRe(null,U,z),B.onRequestAbort!==null&&w.on("close",()=>{w.aborted&&WQt(B.onRequestAbort,U,AHt.bind(null,z))}),B.onTimeout!==null&&(U.raw.socket._meta||U.raw.socket.on("timeout",xHt),U.raw.socket._meta={context:B,request:U,reply:z})}}function AHt(t,e){e&&t.log.error({err:e},"onRequestAborted hook failed")}function xHt(){let{context:t,request:e,reply:r}=this._meta;UQt(t.onTimeout,e,r,_Ht)}function $Re(t){if(typeof t!="string")throw new sHt;if(t=t.toUpperCase(),qQt.indexOf(t)===-1)throw new nHt(t);return t}function URe(t,e,r){if((t==="GET"||t==="HEAD")&&r&&r.body)throw new iHt(t,e)}function qRe(t){if(t!==void 0&&(!Number.isInteger(t)||t<=0))throw new aHt(t)}function FRe(t,e,r){if(r.sent!==!0){if(t!=null){r[lHt]=!0,r.send(t);return}e[dHt]=e.raw,e[WRe].preParsing!==null?$Qt(e[WRe].preParsing,e,r,wRe):wRe(null,e,r)}}function bHt(){this.keepAliveConnections.delete(this.socket)}function _Ht(){}jRe.exports={buildRouting:yHt,validateBodyLimitOption:qRe}});var JRe=_((H9r,YRe)=>{"use strict";var EHt=QQ(),HRe=zO(),GRe=lk(),vHt=dk(),{kRoutePrefix:SHt,kCanSetNotFoundHandler:IS,kFourOhFourLevelInstance:CS,kFourOhFourContext:bl,kHooks:IHt,kErrorHandler:zRe}=zs(),{lifecycleHooks:CHt}=Rp(),{buildErrorHandler:THt}=zE(),{FST_ERR_NOT_FOUND:wHt}=Di(),{createChildLogger:KRe}=mE(),{getGenReqId:VRe}=YP();function RHt(t){let{logger:e}=t,r=EHt({onBadUrl:a(),defaultRoute:l}),n=null;return{router:r,setNotFoundHandler:c,setContext:o,arrange404:s};function s(d){d[CS]=d,d[IS]=!0,r.onBadUrl=r.onBadUrl.bind(d),r.defaultRoute=r.defaultRoute.bind(d)}function i(d,f){let{url:p,method:m}=d.raw,h=`Route ${m}:${p} not found`;d.log.info(h),f.code(404).send({message:h,error:"Not Found",statusCode:404})}function a(){return function(f,p,m){let h=this[CS][bl],y=VRe(h.server,p),g=KRe(h,e,p,y),b=new GRe(y,null,p,null,g,h),x=new HRe(m,b,g);n(b,x)}}function o(d,f){let p=Object.assign({},d[bl]);p.onSend=f.onSend,f[bl]=p}function c(d,f,p,m){this[IS]===void 0&&(this[IS]=!0),this[bl]===void 0&&(this[bl]=null);let h=this,y=this[SHt]||"/";if(this[IS]===!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(h)):d.preHandler=d.preHandler.bind(h)),d.preValidation&&(Array.isArray(d.preValidation)?d.preValidation=d.preValidation.map(g=>g.bind(h)):d.preValidation=d.preValidation.bind(h))),typeof d=="function"&&(f=d,d=void 0),d=d||{},f?(this[CS][IS]=!1,f=f.bind(this),n=f):(f=i,n=i),this.after((g,b)=>{u.call(this,y,d,f,p,m),b(g)})}function u(d,f,p,m,h){let y=new vHt({schema:f.schema,handler:p,config:f.config||{},server:this});if(m.once("preReady",()=>{let g=this[bl];for(let b of CHt){let x=this[IHt][b].concat(f[b]||[]).map(A=>A.bind(this));g[b]=x.length?x:null}g.errorHandler=f.errorHandler?THt(this[zRe],f.errorHandler):this[zRe]}),this[bl]!==null&&d==="/"){Object.assign(this[bl],y);return}this[CS][bl]=y,r.all(d+(d.endsWith("/")?"*":"/*"),h,y),r.all(d,h,y)}function l(d,f){let p=this[CS][bl],m=VRe(p.server,d),h=KRe(p,e,d,m);h.info({req:d},"incoming request");let y=new GRe(m,null,d,null,h,p),g=new HRe(f,y,h);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 wHt)}}YRe.exports=RHt});var ZRe=_((G9r,h3)=>{"use strict";h3.exports=qr;h3.exports.default=qr;var XRe={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:{}}}}}},NHt=Object.prototype.hasOwnProperty,OHt=new RegExp("idle","u");function qr(t,{instancePath:e="",parentData:r,parentDataProperty:n,rootData:s=t}={}){let i=null,a=0;if(a===0)if(t&&typeof t=="object"&&!Array.isArray(t)){t.connectionTimeout===void 0&&(t.connectionTimeout=0),t.keepAliveTimeout===void 0&&(t.keepAliveTimeout=72e3),t.maxRequestsPerSocket===void 0&&(t.maxRequestsPerSocket=0),t.requestTimeout===void 0&&(t.requestTimeout=0),t.bodyLimit===void 0&&(t.bodyLimit=1048576),t.caseSensitive===void 0&&(t.caseSensitive=!0),t.allowUnsafeRegex===void 0&&(t.allowUnsafeRegex=!1),t.ignoreTrailingSlash===void 0&&(t.ignoreTrailingSlash=!1),t.ignoreDuplicateSlashes===void 0&&(t.ignoreDuplicateSlashes=!1),t.disableRequestLogging===void 0&&(t.disableRequestLogging=!1),t.jsonShorthand===void 0&&(t.jsonShorthand=!0),t.maxParamLength===void 0&&(t.maxParamLength=100),t.onProtoPoisoning===void 0&&(t.onProtoPoisoning="error"),t.onConstructorPoisoning===void 0&&(t.onConstructorPoisoning="error"),t.pluginTimeout===void 0&&(t.pluginTimeout=1e4),t.requestIdHeader===void 0&&(t.requestIdHeader="request-id"),t.requestIdLogLabel===void 0&&(t.requestIdLogLabel="reqId"),t.http2SessionTimeout===void 0&&(t.http2SessionTimeout=72e3),t.exposeHeadRoutes===void 0&&(t.exposeHeadRoutes=!0),t.useSemicolonDelimiter===void 0&&(t.useSemicolonDelimiter=!0);let m=a;for(let h in t)NHt.call(XRe.properties,h)||delete t[h];if(m===a){let h=t.connectionTimeout,y=a;if(!(typeof h=="number"&&!(h%1)&&!isNaN(h)&&isFinite(h))){let g=typeof h,b;if(b===void 0)if(g==="boolean"||h===null||g==="string"&&h&&h==+h&&!(h%1))b=+h;else return qr.errors=[{instancePath:e+"/connectionTimeout",schemaPath:"#/properties/connectionTimeout/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;b!==void 0&&(h=b,t!==void 0&&(t.connectionTimeout=b))}var o=y===a;if(o){let g=t.keepAliveTimeout,b=a;if(!(typeof g=="number"&&!(g%1)&&!isNaN(g)&&isFinite(g))){let A=typeof g,S;if(S===void 0)if(A==="boolean"||g===null||A==="string"&&g&&g==+g&&!(g%1))S=+g;else return qr.errors=[{instancePath:e+"/keepAliveTimeout",schemaPath:"#/properties/keepAliveTimeout/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;S!==void 0&&(g=S,t!==void 0&&(t.keepAliveTimeout=S))}var o=b===a;if(o){if(t.forceCloseConnections!==void 0){let A=t.forceCloseConnections,S=a,I=a,R=!1,w=null,N=a;if(typeof A!="string"){let M=typeof A,D;if(D===void 0)if(M=="number"||M=="boolean")D=""+A;else if(A===null)D="";else{let L={instancePath:e+"/forceCloseConnections",schemaPath:"#/properties/forceCloseConnections/oneOf/0/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[L]:i.push(L),a++}D!==void 0&&(A=D,t!==void 0&&(t.forceCloseConnections=D))}if(a===N&&typeof A=="string"&&!OHt.test(A)){let M={instancePath:e+"/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=N===a;c&&(R=!0,w=0);let k=a;if(typeof A!="boolean"){let M;if(M===void 0)if(A==="false"||A===0||A===null)M=!1;else if(A==="true"||A===1)M=!0;else{let D={instancePath:e+"/forceCloseConnections",schemaPath:"#/properties/forceCloseConnections/oneOf/1/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"};i===null?i=[D]:i.push(D),a++}M!==void 0&&(A=M,t!==void 0&&(t.forceCloseConnections=M))}var c=k===a;if(c&&R?(R=!1,w=[w,1]):c&&(R=!0,w=1),R)a=I,i!==null&&(I?i.length=I:i=null);else{let M={instancePath:e+"/forceCloseConnections",schemaPath:"#/properties/forceCloseConnections/oneOf",keyword:"oneOf",params:{passingSchemas:w},message:"must match exactly one schema in oneOf"};return i===null?i=[M]:i.push(M),a++,qr.errors=i,!1}var o=S===a}else var o=!0;if(o){let A=t.maxRequestsPerSocket,S=a;if(!(typeof A=="number"&&!(A%1)&&!isNaN(A)&&isFinite(A))&&A!==null){let R=typeof A,w;if(w===void 0)if(R==="boolean"||A===null||R==="string"&&A&&A==+A&&!(A%1))w=+A;else if(A===""||A===0||A===!1)w=null;else return qr.errors=[{instancePath:e+"/maxRequestsPerSocket",schemaPath:"#/properties/maxRequestsPerSocket/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;w!==void 0&&(A=w,t!==void 0&&(t.maxRequestsPerSocket=w))}var o=S===a;if(o){let R=t.requestTimeout,w=a;if(!(typeof R=="number"&&!(R%1)&&!isNaN(R)&&isFinite(R))){let k=typeof R,B;if(B===void 0)if(k==="boolean"||R===null||k==="string"&&R&&R==+R&&!(R%1))B=+R;else return qr.errors=[{instancePath:e+"/requestTimeout",schemaPath:"#/properties/requestTimeout/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;B!==void 0&&(R=B,t!==void 0&&(t.requestTimeout=B))}var o=w===a;if(o){let k=t.bodyLimit,B=a;if(!(typeof k=="number"&&!(k%1)&&!isNaN(k)&&isFinite(k))){let D=typeof k,L;if(L===void 0)if(D==="boolean"||k===null||D==="string"&&k&&k==+k&&!(k%1))L=+k;else return qr.errors=[{instancePath:e+"/bodyLimit",schemaPath:"#/properties/bodyLimit/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;L!==void 0&&(k=L,t!==void 0&&(t.bodyLimit=L))}var o=B===a;if(o){let D=t.caseSensitive,L=a;if(typeof D!="boolean"){let W;if(W===void 0)if(D==="false"||D===0||D===null)W=!1;else if(D==="true"||D===1)W=!0;else return qr.errors=[{instancePath:e+"/caseSensitive",schemaPath:"#/properties/caseSensitive/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;W!==void 0&&(D=W,t!==void 0&&(t.caseSensitive=W))}var o=L===a;if(o){let W=t.allowUnsafeRegex,U=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 qr.errors=[{instancePath:e+"/allowUnsafeRegex",schemaPath:"#/properties/allowUnsafeRegex/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;j!==void 0&&(W=j,t!==void 0&&(t.allowUnsafeRegex=j))}var o=U===a;if(o){if(t.http2!==void 0){let j=t.http2,J=a;if(typeof j!="boolean"){let oe;if(oe===void 0)if(j==="false"||j===0||j===null)oe=!1;else if(j==="true"||j===1)oe=!0;else return qr.errors=[{instancePath:e+"/http2",schemaPath:"#/properties/http2/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;oe!==void 0&&(j=oe,t!==void 0&&(t.http2=oe))}var o=J===a}else var o=!0;if(o){if(t.https!==void 0){let j=t.https,J=a,se=a,oe=!0,ue=a,Te=a,Ne=a,je=a,Fe=!1,ve=null,F=a;if(typeof j!="boolean"){let q;if(q===void 0)if(j==="false"||j===0||j===null)q=!1;else if(j==="true"||j===1)q=!0;else{let Q={};i===null?i=[Q]:i.push(Q),a++}q!==void 0&&(j=q,t!==void 0&&(t.https=q))}var u=F===a;u&&(Fe=!0,ve=0);let G=a;if(j!==null){let q;if(q===void 0)if(j===""||j===0||j===!1)q=null;else{let Q={};i===null?i=[Q]:i.push(Q),a++}q!==void 0&&(j=q,t!==void 0&&(t.https=q))}var u=G===a;if(u&&Fe)Fe=!1,ve=[ve,1];else{u&&(Fe=!0,ve=1);let q=a;if(a===q)if(j&&typeof j=="object"&&!Array.isArray(j)){let ee;if(j.allowHTTP1===void 0&&(ee="allowHTTP1")){let ne={};i===null?i=[ne]:i.push(ne),a++}else{let ne=a;for(let re in j)re!=="allowHTTP1"&&delete j[re];if(ne===a&&j.allowHTTP1!==void 0){let re=j.allowHTTP1;if(typeof re!="boolean"){let X;if(X===void 0)if(re==="false"||re===0||re===null)X=!1;else if(re==="true"||re===1)X=!0;else{let ie={};i===null?i=[ie]:i.push(ie),a++}X!==void 0&&(re=X,j!==void 0&&(j.allowHTTP1=X))}}}}else{let ee={};i===null?i=[ee]:i.push(ee),a++}var u=q===a;u&&Fe?(Fe=!1,ve=[ve,2]):u&&(Fe=!0,ve=2)}if(Fe)a=je,i!==null&&(je?i.length=je:i=null);else{let q={};i===null?i=[q]:i.push(q),a++}var l=Ne===a;if(l){let q={};i===null?i=[q]:i.push(q),a++}else a=Te,i!==null&&(Te?i.length=Te:i=null);var d=ue===a;if(a=se,i!==null&&(se?i.length=se:i=null),d){let q=a;t.https=!0;var d=q===a;oe=d}if(!oe){let q={instancePath:e+"/https",schemaPath:"#/properties/https/if",keyword:"if",params:{failingKeyword:"then"},message:'must match "then" schema'};return i===null?i=[q]:i.push(q),a++,qr.errors=i,!1}var o=J===a}else var o=!0;if(o){let j=t.ignoreTrailingSlash,J=a;if(typeof j!="boolean"){let oe;if(oe===void 0)if(j==="false"||j===0||j===null)oe=!1;else if(j==="true"||j===1)oe=!0;else return qr.errors=[{instancePath:e+"/ignoreTrailingSlash",schemaPath:"#/properties/ignoreTrailingSlash/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;oe!==void 0&&(j=oe,t!==void 0&&(t.ignoreTrailingSlash=oe))}var o=J===a;if(o){let oe=t.ignoreDuplicateSlashes,ue=a;if(typeof oe!="boolean"){let Ne;if(Ne===void 0)if(oe==="false"||oe===0||oe===null)Ne=!1;else if(oe==="true"||oe===1)Ne=!0;else return qr.errors=[{instancePath:e+"/ignoreDuplicateSlashes",schemaPath:"#/properties/ignoreDuplicateSlashes/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;Ne!==void 0&&(oe=Ne,t!==void 0&&(t.ignoreDuplicateSlashes=Ne))}var o=ue===a;if(o){let Ne=t.disableRequestLogging,je=a;if(typeof Ne!="boolean"){let ve;if(ve===void 0)if(Ne==="false"||Ne===0||Ne===null)ve=!1;else if(Ne==="true"||Ne===1)ve=!0;else return qr.errors=[{instancePath:e+"/disableRequestLogging",schemaPath:"#/properties/disableRequestLogging/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;ve!==void 0&&(Ne=ve,t!==void 0&&(t.disableRequestLogging=ve))}var o=je===a;if(o){let ve=t.jsonShorthand,F=a;if(typeof ve!="boolean"){let K;if(K===void 0)if(ve==="false"||ve===0||ve===null)K=!1;else if(ve==="true"||ve===1)K=!0;else return qr.errors=[{instancePath:e+"/jsonShorthand",schemaPath:"#/properties/jsonShorthand/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;K!==void 0&&(ve=K,t!==void 0&&(t.jsonShorthand=K))}var o=F===a;if(o){let K=t.maxParamLength,q=a;if(!(typeof K=="number"&&!(K%1)&&!isNaN(K)&&isFinite(K))){let ee=typeof K,ne;if(ne===void 0)if(ee==="boolean"||K===null||ee==="string"&&K&&K==+K&&!(K%1))ne=+K;else return qr.errors=[{instancePath:e+"/maxParamLength",schemaPath:"#/properties/maxParamLength/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;ne!==void 0&&(K=ne,t!==void 0&&(t.maxParamLength=ne))}var o=q===a;if(o){let ee=t.onProtoPoisoning,ne=a;if(typeof ee!="string"){let X=typeof ee,ie;if(ie===void 0)if(X=="number"||X=="boolean")ie=""+ee;else if(ee===null)ie="";else return qr.errors=[{instancePath:e+"/onProtoPoisoning",schemaPath:"#/properties/onProtoPoisoning/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;ie!==void 0&&(ee=ie,t!==void 0&&(t.onProtoPoisoning=ie))}var o=ne===a;if(o){let X=t.onConstructorPoisoning,ie=a;if(typeof X!="string"){let me=typeof X,Oe;if(Oe===void 0)if(me=="number"||me=="boolean")Oe=""+X;else if(X===null)Oe="";else return qr.errors=[{instancePath:e+"/onConstructorPoisoning",schemaPath:"#/properties/onConstructorPoisoning/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;Oe!==void 0&&(X=Oe,t!==void 0&&(t.onConstructorPoisoning=Oe))}var o=ie===a;if(o){let me=t.pluginTimeout,Oe=a;if(!(typeof me=="number"&&!(me%1)&&!isNaN(me)&&isFinite(me))){let qe=typeof me,Ye;if(Ye===void 0)if(qe==="boolean"||me===null||qe==="string"&&me&&me==+me&&!(me%1))Ye=+me;else return qr.errors=[{instancePath:e+"/pluginTimeout",schemaPath:"#/properties/pluginTimeout/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;Ye!==void 0&&(me=Ye,t!==void 0&&(t.pluginTimeout=Ye))}var o=Oe===a;if(o){let qe=t.requestIdHeader,Ye=a,Je=a,et=!1,st=a;if(qe!==!1){let rt={instancePath:e+"/requestIdHeader",schemaPath:"#/properties/requestIdHeader/anyOf/0/enum",keyword:"enum",params:{allowedValues:XRe.properties.requestIdHeader.anyOf[0].enum},message:"must be equal to one of the allowed values"};i===null?i=[rt]:i.push(rt),a++}var f=st===a;if(et=et||f,!et){let rt=a;if(typeof qe!="string"){let dt=typeof qe,Be;if(Be===void 0)if(dt=="number"||dt=="boolean")Be=""+qe;else if(qe===null)Be="";else{let Xe={instancePath:e+"/requestIdHeader",schemaPath:"#/properties/requestIdHeader/anyOf/1/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[Xe]:i.push(Xe),a++}Be!==void 0&&(qe=Be,t!==void 0&&(t.requestIdHeader=Be))}var f=rt===a;et=et||f}if(et)a=Je,i!==null&&(Je?i.length=Je:i=null);else{let rt={instancePath:e+"/requestIdHeader",schemaPath:"#/properties/requestIdHeader/anyOf",keyword:"anyOf",params:{},message:"must match a schema in anyOf"};return i===null?i=[rt]:i.push(rt),a++,qr.errors=i,!1}var o=Ye===a;if(o){let rt=t.requestIdLogLabel,Pt=a;if(typeof rt!="string"){let Be=typeof rt,Xe;if(Xe===void 0)if(Be=="number"||Be=="boolean")Xe=""+rt;else if(rt===null)Xe="";else return qr.errors=[{instancePath:e+"/requestIdLogLabel",schemaPath:"#/properties/requestIdLogLabel/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;Xe!==void 0&&(rt=Xe,t!==void 0&&(t.requestIdLogLabel=Xe))}var o=Pt===a;if(o){let Be=t.http2SessionTimeout,Xe=a;if(!(typeof Be=="number"&&!(Be%1)&&!isNaN(Be)&&isFinite(Be))){let nt=typeof Be,_t;if(_t===void 0)if(nt==="boolean"||Be===null||nt==="string"&&Be&&Be==+Be&&!(Be%1))_t=+Be;else return qr.errors=[{instancePath:e+"/http2SessionTimeout",schemaPath:"#/properties/http2SessionTimeout/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;_t!==void 0&&(Be=_t,t!==void 0&&(t.http2SessionTimeout=_t))}var o=Xe===a;if(o){let nt=t.exposeHeadRoutes,_t=a;if(typeof nt!="boolean"){let It;if(It===void 0)if(nt==="false"||nt===0||nt===null)It=!1;else if(nt==="true"||nt===1)It=!0;else return qr.errors=[{instancePath:e+"/exposeHeadRoutes",schemaPath:"#/properties/exposeHeadRoutes/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;It!==void 0&&(nt=It,t!==void 0&&(t.exposeHeadRoutes=It))}var o=_t===a;if(o){let It=t.useSemicolonDelimiter,wr=a;if(typeof It!="boolean"){let Lr;if(Lr===void 0)if(It==="false"||It===0||It===null)Lr=!1;else if(It==="true"||It===1)Lr=!0;else return qr.errors=[{instancePath:e+"/useSemicolonDelimiter",schemaPath:"#/properties/useSemicolonDelimiter/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;Lr!==void 0&&(It=Lr,t!==void 0&&(t.useSemicolonDelimiter=Lr))}var o=wr===a;if(o){if(t.versioning!==void 0){let Lr=t.versioning,Qs=a;if(a===Qs)if(Lr&&typeof Lr=="object"&&!Array.isArray(Lr)){let bs;if(Lr.storage===void 0&&(bs="storage")||Lr.deriveVersion===void 0&&(bs="deriveVersion"))return qr.errors=[{instancePath:e+"/versioning",schemaPath:"#/properties/versioning/required",keyword:"required",params:{missingProperty:bs},message:"must have required property '"+bs+"'"}],!1}else return qr.errors=[{instancePath:e+"/versioning",schemaPath:"#/properties/versioning/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=Qs===a}else var o=!0;if(o)if(t.constraints!==void 0){let Lr=t.constraints,Qs=a;if(a===Qs)if(Lr&&typeof Lr=="object"&&!Array.isArray(Lr))for(let bs in Lr){let Gs=Lr[bs],Ku=a;if(a===Ku)if(Gs&&typeof Gs=="object"&&!Array.isArray(Gs)){let Co;if(Gs.name===void 0&&(Co="name")||Gs.storage===void 0&&(Co="storage")||Gs.validate===void 0&&(Co="validate")||Gs.deriveConstraint===void 0&&(Co="deriveConstraint"))return qr.errors=[{instancePath:e+"/constraints/"+bs.replace(/~/g,"~0").replace(/\//g,"~1"),schemaPath:"#/properties/constraints/additionalProperties/required",keyword:"required",params:{missingProperty:Co},message:"must have required property '"+Co+"'"}],!1;if(Gs.name!==void 0){let Hc=Gs.name;if(typeof Hc!="string"){let La=typeof Hc,An;if(An===void 0)if(La=="number"||La=="boolean")An=""+Hc;else if(Hc===null)An="";else return qr.errors=[{instancePath:e+"/constraints/"+bs.replace(/~/g,"~0").replace(/\//g,"~1")+"/name",schemaPath:"#/properties/constraints/additionalProperties/properties/name/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;An!==void 0&&(Hc=An,Gs!==void 0&&(Gs.name=An))}}}else return qr.errors=[{instancePath:e+"/constraints/"+bs.replace(/~/g,"~0").replace(/\//g,"~1"),schemaPath:"#/properties/constraints/additionalProperties/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var p=Ku===a;if(!p)break}else return qr.errors=[{instancePath:e+"/constraints",schemaPath:"#/properties/constraints/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=Qs===a}else var o=!0}}}}}}}}}}}}}}}}}}}}}}}}}else return qr.errors=[{instancePath:e,schemaPath:"#/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;return qr.errors=i,a===0}h3.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 eNe=_((z9r,y3)=>{"use strict";var g3=ZRe(),kHt=eO()({circles:!0,proto:!1}),{FST_ERR_INIT_OPTS_INVALID:PHt}=Di();function DHt(t){let e=kHt(t);if(!g3(e)){let r=new PHt(JSON.stringify(g3.errors.map(n=>n.message)));throw r.errors=g3.errors,r}return YQ(e)}function YQ(t){let e=Object.getOwnPropertyNames(t);for(let r of e){let n=t[r];ArrayBuffer.isView(n)&&!(n instanceof DataView)||(t[r]=n&&typeof n=="object"?YQ(n):n)}return Object.freeze(t)}y3.exports=DHt;y3.exports.defaultInitOptions=g3.defaultInitOptions;y3.exports.utils={deepFreezeObject:YQ}});var uNe=_((K9r,cNe)=>{"use strict";var{kAvvioBoot:BHt,kChildren:tNe,kRoutePrefix:rNe,kLogLevel:nNe,kLogSerializers:JQ,kHooks:XQ,kSchemaController:Lx,kContentTypeParser:sNe,kReply:iNe,kRequest:aNe,kFourOhFour:LHt,kPluginNameChain:oNe}=zs(),MHt=zO(),WHt=lk(),$Ht=EQ(),UHt=XF(),{buildHooks:FHt}=Rp(),TS=wQ();cNe.exports=function(e,r,n){let s=TS.registerPlugin.call(e,r),i=TS.getPluginName(r)||TS.getFuncPreview(r);if(s)return e[oNe].push(i),e;let a=Object.create(e);e[tNe].push(a),a.ready=e[BHt].bind(a),a[tNe]=[],a[iNe]=MHt.buildReply(a[iNe]),a[aNe]=WHt.buildRequest(a[aNe]),a[sNe]=UHt.helpers.buildContentTypeParser(a[sNe]),a[XQ]=FHt(a[XQ]),a[rNe]=qHt(a[rNe],n.prefix),a[nNe]=n.logLevel||a[nNe],a[Lx]=$Ht.buildSchemaController(e[Lx]),a.getSchema=a[Lx].getSchema.bind(a[Lx]),a.getSchemas=a[Lx].getSchemas.bind(a[Lx]),a[TS.kRegisteredPlugins]=Object.create(a[TS.kRegisteredPlugins]),a[oNe]=[i],(a[JQ]||n.logSerializers)&&(a[JQ]=Object.assign(Object.create(a[JQ]),n.logSerializers)),n.prefix&&a[LHt].arrange404(a);for(let o of a[XQ].onRegister)o.call(this,a,n);return a};function qHt(t,e){return e?(t.endsWith("/")&&e[0]==="/"?e=e.slice(1):e[0]!=="/"&&(e="/"+e),t+e):t}});var dNe=_((V9r,lNe)=>{"use strict";lNe.exports=function(){return{[Symbol.iterator]:function*(){},add(){},delete(){},has(){return!0}}}});var mNe=_(ZQ=>{"use strict";ZQ.parse=VHt;ZQ.serialize=YHt;var jHt=Object.prototype.toString,QHt=Object.prototype.hasOwnProperty,HHt=/^[!#$%&'*+\-.^_`|~0-9A-Za-z]+$/,GHt=/^("?)[\u0021\u0023-\u002B\u002D-\u003A\u003C-\u005B\u005D-\u007E]*\1$/,zHt=/^([.]?[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)([.][a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)*$/i,KHt=/^[\u0020-\u003A\u003D-\u007E]*$/;function VHt(t,e){if(typeof t!="string")throw new TypeError("argument str must be a string");var r={},n=t.length;if(n<2)return r;var s=e&&e.decode||JHt,i=0,a=0,o=0;do{if(a=t.indexOf("=",i),a===-1)break;if(o=t.indexOf(";",i),o===-1)o=n;else if(a>o){i=t.lastIndexOf(";",a-1)+1;continue}var c=fNe(t,i,a),u=pNe(t,a,c),l=t.slice(c,u);if(!QHt.call(r,l)){var d=fNe(t,a+1,o),f=pNe(t,o,d);t.charCodeAt(d)===34&&t.charCodeAt(f-1)===34&&(d++,f--);var p=t.slice(d,f);r[l]=ZHt(p,s)}i=o+1}while(ir;){var n=t.charCodeAt(--e);if(n!==32&&n!==9)return e+1}return r}function YHt(t,e,r){var n=r&&r.encode||encodeURIComponent;if(typeof n!="function")throw new TypeError("option encode is invalid");if(!HHt.test(t))throw new TypeError("argument name is invalid");var s=n(e);if(!GHt.test(s))throw new TypeError("argument val is invalid");var i=t+"="+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(!zHt.test(r.domain))throw new TypeError("option domain is invalid");i+="; Domain="+r.domain}if(r.path){if(!KHt.test(r.path))throw new TypeError("option path is invalid");i+="; Path="+r.path}if(r.expires){var o=r.expires;if(!XHt(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 JHt(t){return t.indexOf("%")!==-1?decodeURIComponent(t):t}function XHt(t){return jHt.call(t)==="[object Date]"}function ZHt(t,e){try{return e(t)}catch{return t}}});var yNe=_((J9r,gNe)=>{"use strict";var{URL:hNe}=require("node:url"),eH="http://localhost";gNe.exports=function(e,r){(typeof e=="string"||Object.prototype.toString.call(e)==="[object String]")&&e.startsWith("//")&&(e=eH+e);let n=typeof e=="object"?Object.assign(new hNe(eH),e):new hNe(e,eH);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({},e.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 ANe=_((X9r,tH)=>{"use strict";var{randomUUID:eGt}=require("node:crypto"),{Readable:tGt}=require("node:stream"),Mx;function rGt(t){return t&&typeof t=="object"&&typeof t.append=="function"&&typeof t.delete=="function"&&typeof t.get=="function"&&typeof t.getAll=="function"&&typeof t.has=="function"&&typeof t.set=="function"&&t[Symbol.toStringTag]==="FormData"}function nGt(t){Mx=Mx??new TextEncoder;let e=`----formdata-${eGt()}`,r=`--${e}\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 t)if(typeof u=="string")yield rx.encode(`${r}; name="${n(s(c))}"\r +`),i=new Uint8Array([13,10]);async function*a(){for(let[c,u]of t)if(typeof u=="string")yield Mx.encode(`${r}; name="${n(s(c))}"\r \r -`),yield rx.encode(`${s(u)}\r +`),yield Mx.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 rx.encode(l),u.stream?yield*u.stream():yield u,yield i}yield rx.encode(`--${e}--`)}return{stream:G7t.from(a()),contentType:`multipart/form-data; boundary=${e}`}}Zq.exports.isFormDataLike=V7t;Zq.exports.formDataToStream=z7t});var Rwe=E((j4r,zP)=>{"use strict";var{Readable:Twe,addAbortSignal:K7t}=require("node:stream"),tj=require("node:util"),Y7t=_we(),J7t=require("node:assert"),{createDeprecation:X7t}=V6(),Z7t=Cwe(),{isFormDataLike:e9t,formDataToStream:t9t}=Iwe(),{EventEmitter:r9t}=require("node:events"),n9t=X7t({name:"FastifyDeprecationLightMyRequest",code:"FST_LIGHTMYREQUEST_DEP01",message:'You are accessing "request.connection", use "request.socket" instead.'});function s9t(t){return t.port?t.host:t.hostname+(t.protocol==="https:"?":443":":80")}var ej=class extends r9t{constructor(e){super(),this.remoteAddress=e}};function wwe(t){return new e(this);function e(r){cl.call(r,{...t,Request:void 0}),Object.assign(this,r);for(let n of Object.keys(cl.prototype))this.constructor.prototype[n]=cl.prototype[n];return tj.inherits(this.constructor,t.Request),this}}function cl(t){Twe.call(this,{autoDestroy:!1});let e=Z7t(t.url||t.path,t.query);this.url=e.pathname+e.search,this.aborted=!1,this.httpVersionMajor=1,this.httpVersionMinor=1,this.httpVersion="1.1",this.method=t.method?t.method.toUpperCase():"GET",this.headers={},this.rawHeaders=[];let r=t.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];J7t(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||t.authority||s9t(e),t.cookies){let{cookies:a}=t,o=Object.keys(a).map(c=>Y7t.serialize(c,a[c]));this.headers.cookie&&o.unshift(this.headers.cookie),this.headers.cookie=o.join("; ")}this.socket=new ej(t.remoteAddress||"127.0.0.1"),Object.defineProperty(this,"connection",{get(){return n9t(),this.socket},configurable:!0});let n=t.payload||t.body||null,s=n&&typeof n.resume=="function";if(e9t(n)){let a=t9t(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:t.simulate||{}};let i=t.signal;return i&&K7t(i,this),this}tj.inherits(cl,Twe);tj.inherits(wwe,cl);cl.prototype.prepare=function(t){let e=this._lightMyRequest.payload;if(!e||typeof e.resume!="function")return t();let r=[];e.on("data",n=>r.push(Buffer.from(n))),e.on("end",()=>{let n=Buffer.concat(r);return this.headers["content-length"]=this.headers["content-length"]||""+n.length,this._lightMyRequest.payload=n,t()}),e.resume()};cl.prototype._read=function(t){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)})};cl.prototype.destroy=function(t){this.destroyed||this._lightMyRequest.isDone||(this.destroyed=!0,t&&(this._error=!0,process.nextTick(()=>this.emit("error",t))),process.nextTick(()=>this.emit("close")))};zP.exports=cl;zP.exports.Request=cl;zP.exports.CustomRequest=wwe});var Owe=E((H4r,_S)=>{"use strict";var KP={decodeValues:!0,map:!1,silent:!1};function rj(t){return typeof t!="string"||t in{}}function nj(){return Object.create(null)}function sj(t){return typeof t=="string"&&!!t.trim()}function ij(t,e){var r=t.split(";").filter(sj),n=r.shift(),s=i9t(n),i=s.name,a=s.value;if(e=e?Object.assign({},KP,e):KP,rj(i))return null;try{a=e.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=nj();return o.name=i,o.value=a,r.forEach(function(c){var u=c.split("="),l=u.shift().trimLeft().toLowerCase();if(!rj(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 i9t(t){var e="",r="",n=t.split("=");return n.length>1?(e=n.shift(),r=n.join("=")):r=t,{name:e,value:r}}function Nwe(t,e){if(e=e?Object.assign({},KP,e):KP,!t)return e.map?nj():[];if(t.headers)if(typeof t.headers.getSetCookie=="function")t=t.headers.getSetCookie();else if(t.headers["set-cookie"])t=t.headers["set-cookie"];else{var r=t.headers[Object.keys(t.headers).find(function(s){return s.toLowerCase()==="set-cookie"})];!r&&t.headers.cookie&&!e.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."),t=r}if(Array.isArray(t)||(t=[t]),e.map){var n=nj();return t.filter(sj).reduce(function(s,i){var a=ij(i,e);return a&&!rj(a.name)&&(s[a.name]=a),s},n)}else return t.filter(sj).map(function(s){return ij(s,e)}).filter(Boolean)}function a9t(t){if(Array.isArray(t))return t;if(typeof t!="string")return[];var e=[],r=0,n,s,i,a,o;function c(){for(;r=t.length)&&e.push(t.substring(n,t.length))}return e}_S.exports=Nwe;_S.exports.parse=Nwe;_S.exports.parseString=ij;_S.exports.splitCookiesString=a9t});var kwe=E((Q4r,Dwe)=>{"use strict";var SS=require("node:http"),{Writable:o9t,Readable:c9t}=require("node:stream"),u9t=require("node:util"),l9t=Owe();function Qp(t,e,r){SS.ServerResponse.call(this,t),this._lightMyRequest={headers:null,trailers:{},payloadChunks:[]},this.setHeader("foo","bar"),this.removeHeader("foo"),this.assignSocket(f9t()),this._promiseCallback=typeof r=="function";let n=!1,s=a=>{if(n=!0,this._promiseCallback)return process.nextTick(()=>e(a));process.nextTick(()=>e(null,a))},i=a=>{if(!n){if(n=!0,this._promiseCallback)return process.nextTick(()=>r(a));process.nextTick(()=>e(a,null))}};this.once("finish",()=>{let a=d9t(this);a.raw.req=t,s(a)}),this.connection.once("error",i),this.once("error",i),this.once("close",i)}u9t.inherits(Qp,SS.ServerResponse);Qp.prototype.setTimeout=function(t,e){return this.timeoutHandle=setTimeout(()=>{this.emit("timeout")},t),this.on("timeout",e),this};Qp.prototype.writeHead=function(){let t=SS.ServerResponse.prototype.writeHead.apply(this,arguments);return Pwe(this),t};Qp.prototype.write=function(t,e,r){return this.timeoutHandle&&clearTimeout(this.timeoutHandle),SS.ServerResponse.prototype.write.call(this,t,e,r),this._lightMyRequest.payloadChunks.push(Buffer.from(t,e)),!0};Qp.prototype.end=function(t,e,r){t&&this.write(t,e),SS.ServerResponse.prototype.end.call(this,r),this.emit("finish"),this.destroy()};Qp.prototype.destroy=function(t){this.destroyed||(this.destroyed=!0,t&&process.nextTick(()=>this.emit("error",t)),process.nextTick(()=>this.emit("close")))};Qp.prototype.addTrailers=function(t){for(let e in t)this._lightMyRequest.trailers[e.toLowerCase().trim()]=t[e].toString().trim()};function d9t(t){t._lightMyRequest.headers===null&&Pwe(t),p9t(t);let e={raw:{res:t},headers:t._lightMyRequest.headers,statusCode:t.statusCode,statusMessage:t.statusMessage,trailers:{},get cookies(){return l9t.parse(this)}},r=Buffer.concat(t._lightMyRequest.payloadChunks);return e.rawPayload=r,e.payload=r.toString(),e.body=e.payload,e.trailers=t._lightMyRequest.trailers,e.json=function(){return JSON.parse(e.payload)},e.stream=function(){return c9t.from(t._lightMyRequest.payloadChunks)},e}function f9t(){return new o9t({write(t,e,r){setImmediate(r)}})}function p9t(t){let e=t._lightMyRequest.headers;for(let r of Object.keys(e)){let n=e[r];Array.isArray(n)?e[r]=n.map(s=>""+s):e[r]=""+n}}function Pwe(t){t._lightMyRequest.headers=Object.assign({},t.getHeaders()),["Date","Connection","Transfer-Encoding"].forEach(e=>{let r=new RegExp("\\r\\n"+e+": ([^\\r]*)\\r\\n"),n=t._header.match(r);n&&(t._lightMyRequest.headers[e.toLowerCase()]=n[1])})}Dwe.exports=Qp});var Lwe=E((G4r,aj)=>{"use strict";aj.exports=xs;aj.exports.default=xs;var m9t={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 xs(t,{instancePath:e="",parentData:r,parentDataProperty:n,rootData:s=t}={}){let i=null,a=0,o=a,c=!1,u=null,l=a;if(t&&typeof t=="object"&&!Array.isArray(t)){let x;if(t.url===void 0&&(x="url")){let v={instancePath:e,schemaPath:"#/oneOf/0/required",keyword:"required",params:{missingProperty:x},message:"must have required property '"+x+"'"};i===null?i=[v]:i.push(v),a++}}var f=l===a;f&&(c=!0,u=0);let d=a;if(t&&typeof t=="object"&&!Array.isArray(t)){let x;if(t.path===void 0&&(x="path")){let v={instancePath:e,schemaPath:"#/oneOf/1/required",keyword:"required",params:{missingProperty:x},message:"must have required property '"+x+"'"};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 x={instancePath:e,schemaPath:"#/oneOf",keyword:"oneOf",params:{passingSchemas:u},message:"must match exactly one schema in oneOf"};return i===null?i=[x]:i.push(x),a++,xs.errors=i,!1}if(a===0)if(t&&typeof t=="object"&&!Array.isArray(t)){if(t.url!==void 0){let x=t.url,v=a,C=a,R=!1,w=null,N=a;if(typeof x!="string"){let L=typeof x,M;if(M===void 0)if(L=="number"||L=="boolean")M=""+x;else if(x===null)M="";else{let k={instancePath:e+"/url",schemaPath:"#/properties/url/oneOf/0/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[k]:i.push(k),a++}M!==void 0&&(x=M,t!==void 0&&(t.url=M))}var m=N===a;m&&(R=!0,w=0);let P=a;if(a===P)if(x&&typeof x=="object"&&!Array.isArray(x)){let L;if(x.pathname===void 0&&(L="pathname")){let M={instancePath:e+"/url",schemaPath:"#/properties/url/oneOf/1/required",keyword:"required",params:{missingProperty:L},message:"must have required property '"+L+"'"};i===null?i=[M]:i.push(M),a++}else{if(x.protocol!==void 0){let M=x.protocol,k=a;if(typeof M!="string"){let B=typeof M,Z;if(Z===void 0)if(B=="number"||B=="boolean")Z=""+M;else if(M===null)Z="";else{let W={instancePath:e+"/url/protocol",schemaPath:"#/properties/url/oneOf/1/properties/protocol/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[W]:i.push(W),a++}Z!==void 0&&(M=Z,x!==void 0&&(x.protocol=Z))}var p=k===a}else var p=!0;if(p){if(x.hostname!==void 0){let M=x.hostname,k=a;if(typeof M!="string"){let Z=typeof M,W;if(W===void 0)if(Z=="number"||Z=="boolean")W=""+M;else if(M===null)W="";else{let F={instancePath:e+"/url/hostname",schemaPath:"#/properties/url/oneOf/1/properties/hostname/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[F]:i.push(F),a++}W!==void 0&&(M=W,x!==void 0&&(x.hostname=W))}var p=k===a}else var p=!0;if(p)if(x.pathname!==void 0){let M=x.pathname,k=a;if(typeof M!="string"){let Z=typeof M,W;if(W===void 0)if(Z=="number"||Z=="boolean")W=""+M;else if(M===null)W="";else{let F={instancePath:e+"/url/pathname",schemaPath:"#/properties/url/oneOf/1/properties/pathname/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[F]:i.push(F),a++}W!==void 0&&(M=W,x!==void 0&&(x.pathname=W))}var p=k===a}else var p=!0}}}else{let L={instancePath:e+"/url",schemaPath:"#/properties/url/oneOf/1/type",keyword:"type",params:{type:"object"},message:"must be object"};i===null?i=[L]:i.push(L),a++}var m=P===a;if(m&&R?(R=!1,w=[w,1]):m&&(R=!0,w=1),R)a=C,i!==null&&(C?i.length=C:i=null);else{let L={instancePath:e+"/url",schemaPath:"#/properties/url/oneOf",keyword:"oneOf",params:{passingSchemas:w},message:"must match exactly one schema in oneOf"};return i===null?i=[L]:i.push(L),a++,xs.errors=i,!1}var h=v===a}else var h=!0;if(h){if(t.path!==void 0){let x=t.path,v=a,C=a,R=!1,w=null,N=a;if(typeof x!="string"){let M=typeof x,k;if(k===void 0)if(M=="number"||M=="boolean")k=""+x;else if(x===null)k="";else{let B={instancePath:e+"/path",schemaPath:"#/properties/path/oneOf/0/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[B]:i.push(B),a++}k!==void 0&&(x=k,t!==void 0&&(t.path=k))}var g=N===a;g&&(R=!0,w=0);let P=a;if(a===P)if(x&&typeof x=="object"&&!Array.isArray(x)){let M;if(x.pathname===void 0&&(M="pathname")){let k={instancePath:e+"/path",schemaPath:"#/properties/path/oneOf/1/required",keyword:"required",params:{missingProperty:M},message:"must have required property '"+M+"'"};i===null?i=[k]:i.push(k),a++}else{if(x.protocol!==void 0){let k=x.protocol,B=a;if(typeof k!="string"){let Z=typeof k,W;if(W===void 0)if(Z=="number"||Z=="boolean")W=""+k;else if(k===null)W="";else{let F={instancePath:e+"/path/protocol",schemaPath:"#/properties/path/oneOf/1/properties/protocol/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[F]:i.push(F),a++}W!==void 0&&(k=W,x!==void 0&&(x.protocol=W))}var A=B===a}else var A=!0;if(A){if(x.hostname!==void 0){let k=x.hostname,B=a;if(typeof k!="string"){let W=typeof k,F;if(F===void 0)if(W=="number"||W=="boolean")F=""+k;else if(k===null)F="";else{let V={instancePath:e+"/path/hostname",schemaPath:"#/properties/path/oneOf/1/properties/hostname/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[V]:i.push(V),a++}F!==void 0&&(k=F,x!==void 0&&(x.hostname=F))}var A=B===a}else var A=!0;if(A)if(x.pathname!==void 0){let k=x.pathname,B=a;if(typeof k!="string"){let W=typeof k,F;if(F===void 0)if(W=="number"||W=="boolean")F=""+k;else if(k===null)F="";else{let V={instancePath:e+"/path/pathname",schemaPath:"#/properties/path/oneOf/1/properties/pathname/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[V]:i.push(V),a++}F!==void 0&&(k=F,x!==void 0&&(x.pathname=F))}var A=B===a}else var A=!0}}}else{let M={instancePath:e+"/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=P===a;if(g&&R?(R=!1,w=[w,1]):g&&(R=!0,w=1),R)a=C,i!==null&&(C?i.length=C:i=null);else{let M={instancePath:e+"/path",schemaPath:"#/properties/path/oneOf",keyword:"oneOf",params:{passingSchemas:w},message:"must match exactly one schema in oneOf"};return i===null?i=[M]:i.push(M),a++,xs.errors=i,!1}var h=v===a}else var h=!0;if(h){if(t.cookies!==void 0){let x=t.cookies,v=a;if(a===v&&!(x&&typeof x=="object"&&!Array.isArray(x)))return xs.errors=[{instancePath:e+"/cookies",schemaPath:"#/properties/cookies/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var h=v===a}else var h=!0;if(h){if(t.headers!==void 0){let x=t.headers,v=a;if(a===v&&!(x&&typeof x=="object"&&!Array.isArray(x)))return xs.errors=[{instancePath:e+"/headers",schemaPath:"#/properties/headers/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var h=v===a}else var h=!0;if(h){if(t.query!==void 0){let x=t.query,v=a,C=a,R=!1,w=a;if(a===w&&!(x&&typeof x=="object"&&!Array.isArray(x))){let P={instancePath:e+"/query",schemaPath:"#/properties/query/anyOf/0/type",keyword:"type",params:{type:"object"},message:"must be object"};i===null?i=[P]:i.push(P),a++}var b=w===a;if(R=R||b,!R){let P=a;if(typeof x!="string"){let M=typeof x,k;if(k===void 0)if(M=="number"||M=="boolean")k=""+x;else if(x===null)k="";else{let B={instancePath:e+"/query",schemaPath:"#/properties/query/anyOf/1/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[B]:i.push(B),a++}k!==void 0&&(x=k,t!==void 0&&(t.query=k))}var b=P===a;R=R||b}if(R)a=C,i!==null&&(C?i.length=C:i=null);else{let P={instancePath:e+"/query",schemaPath:"#/properties/query/anyOf",keyword:"anyOf",params:{},message:"must match a schema in anyOf"};return i===null?i=[P]:i.push(P),a++,xs.errors=i,!1}var h=v===a}else var h=!0;if(h){if(t.simulate!==void 0){let x=t.simulate,v=a;if(a===v)if(x&&typeof x=="object"&&!Array.isArray(x)){if(x.end!==void 0){let R=x.end,w=a;if(typeof R!="boolean"){let N;if(N===void 0)if(R==="false"||R===0||R===null)N=!1;else if(R==="true"||R===1)N=!0;else return xs.errors=[{instancePath:e+"/simulate/end",schemaPath:"#/properties/simulate/properties/end/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;N!==void 0&&(R=N,x!==void 0&&(x.end=N))}var y=w===a}else var y=!0;if(y){if(x.split!==void 0){let R=x.split,w=a;if(typeof R!="boolean"){let P;if(P===void 0)if(R==="false"||R===0||R===null)P=!1;else if(R==="true"||R===1)P=!0;else return xs.errors=[{instancePath:e+"/simulate/split",schemaPath:"#/properties/simulate/properties/split/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;P!==void 0&&(R=P,x!==void 0&&(x.split=P))}var y=w===a}else var y=!0;if(y){if(x.error!==void 0){let R=x.error,w=a;if(typeof R!="boolean"){let P;if(P===void 0)if(R==="false"||R===0||R===null)P=!1;else if(R==="true"||R===1)P=!0;else return xs.errors=[{instancePath:e+"/simulate/error",schemaPath:"#/properties/simulate/properties/error/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;P!==void 0&&(R=P,x!==void 0&&(x.error=P))}var y=w===a}else var y=!0;if(y)if(x.close!==void 0){let R=x.close,w=a;if(typeof R!="boolean"){let P;if(P===void 0)if(R==="false"||R===0||R===null)P=!1;else if(R==="true"||R===1)P=!0;else return xs.errors=[{instancePath:e+"/simulate/close",schemaPath:"#/properties/simulate/properties/close/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;P!==void 0&&(R=P,x!==void 0&&(x.close=P))}var y=w===a}else var y=!0}}}else return xs.errors=[{instancePath:e+"/simulate",schemaPath:"#/properties/simulate/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var h=v===a}else var h=!0;if(h){if(t.authority!==void 0){let x=t.authority,v=a;if(typeof x!="string"){let R=typeof x,w;if(w===void 0)if(R=="number"||R=="boolean")w=""+x;else if(x===null)w="";else return xs.errors=[{instancePath:e+"/authority",schemaPath:"#/properties/authority/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;w!==void 0&&(x=w,t!==void 0&&(t.authority=w))}var h=v===a}else var h=!0;if(h){if(t.remoteAddress!==void 0){let x=t.remoteAddress,v=a;if(typeof x!="string"){let R=typeof x,w;if(w===void 0)if(R=="number"||R=="boolean")w=""+x;else if(x===null)w="";else return xs.errors=[{instancePath:e+"/remoteAddress",schemaPath:"#/properties/remoteAddress/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;w!==void 0&&(x=w,t!==void 0&&(t.remoteAddress=w))}var h=v===a}else var h=!0;if(h){if(t.method!==void 0){let x=t.method,v=a;if(typeof x!="string"){let R=typeof x,w;if(w===void 0)if(R=="number"||R=="boolean")w=""+x;else if(x===null)w="";else return xs.errors=[{instancePath:e+"/method",schemaPath:"#/properties/method/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;w!==void 0&&(x=w,t!==void 0&&(t.method=w))}if(!(x==="ACL"||x==="BIND"||x==="CHECKOUT"||x==="CONNECT"||x==="COPY"||x==="DELETE"||x==="GET"||x==="HEAD"||x==="LINK"||x==="LOCK"||x==="M-SEARCH"||x==="MERGE"||x==="MKACTIVITY"||x==="MKCALENDAR"||x==="MKCOL"||x==="MOVE"||x==="NOTIFY"||x==="OPTIONS"||x==="PATCH"||x==="POST"||x==="PROPFIND"||x==="PROPPATCH"||x==="PURGE"||x==="PUT"||x==="REBIND"||x==="REPORT"||x==="SEARCH"||x==="SOURCE"||x==="SUBSCRIBE"||x==="TRACE"||x==="UNBIND"||x==="UNLINK"||x==="UNLOCK"||x==="UNSUBSCRIBE"||x==="acl"||x==="bind"||x==="checkout"||x==="connect"||x==="copy"||x==="delete"||x==="get"||x==="head"||x==="link"||x==="lock"||x==="m-search"||x==="merge"||x==="mkactivity"||x==="mkcalendar"||x==="mkcol"||x==="move"||x==="notify"||x==="options"||x==="patch"||x==="post"||x==="propfind"||x==="proppatch"||x==="purge"||x==="put"||x==="rebind"||x==="report"||x==="search"||x==="source"||x==="subscribe"||x==="trace"||x==="unbind"||x==="unlink"||x==="unlock"||x==="unsubscribe"))return xs.errors=[{instancePath:e+"/method",schemaPath:"#/properties/method/enum",keyword:"enum",params:{allowedValues:m9t.properties.method.enum},message:"must be equal to one of the allowed values"}],!1;var h=v===a}else var h=!0;if(h)if(t.validate!==void 0){let x=t.validate,v=a;if(typeof x!="boolean"){let R;if(R===void 0)if(x==="false"||x===0||x===null)R=!1;else if(x==="true"||x===1)R=!0;else return xs.errors=[{instancePath:e+"/validate",schemaPath:"#/properties/validate/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;R!==void 0&&(x=R,t!==void 0&&(t.validate=R))}var h=v===a}else var h=!0}}}}}}}}}else return xs.errors=[{instancePath:e,schemaPath:"#/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;return xs.errors=i,a===0}});var Wwe=E((V4r,CS)=>{"use strict";var h9t=require("node:assert"),oj=Rwe(),YP=kwe(),XP="The dispatch function has already been invoked",Bwe=Lwe();function cj(t,e,r){return r===void 0?new vS(t,e):JP(t,e,r)}function Mwe(t,e,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(()=>t.call(e,r,n))}function JP(t,e,r){if(e=typeof e=="string"?{url:e}:e,e.validate!==!1&&(h9t(typeof t=="function","dispatchFunc should be a function"),!Bwe(e)))throw new Error(Bwe.errors.map(a=>a.message));let n=e.server||{},s=e.Request?oj.CustomRequest:oj;if(t.request&&t.request.app===t&&(Object.setPrototypeOf(Object.getPrototypeOf(t.request),s.prototype),Object.setPrototypeOf(Object.getPrototypeOf(t.response),YP.prototype)),typeof r=="function"){let i=new s(e),a=new YP(i,r);return Mwe(t,n,i,a)}else return new Promise((i,a)=>{let o=new s(e),c=new YP(o,i,a);Mwe(t,n,o,c)})}function vS(t,e){typeof e=="string"?this.option={url:e}:this.option=Object.assign({},e),this.dispatch=t,this._hasInvoked=!1,this._promise=null,this.option.autoStart!==!1&&process.nextTick(()=>{this._hasInvoked||this.end()})}var g9t=["delete","get","head","options","patch","post","put","trace"];g9t.forEach(t=>{vS.prototype[t]=function(e){if(this._hasInvoked===!0||this._promise)throw new Error(XP);return this.option.url=e,this.option.method=t.toUpperCase(),this}});var A9t=["body","cookies","headers","payload","query"];A9t.forEach(t=>{vS.prototype[t]=function(e){if(this._hasInvoked===!0||this._promise)throw new Error(XP);return this.option[t]=e,this}});vS.prototype.end=function(t){if(this._hasInvoked===!0||this._promise)throw new Error(XP);if(this._hasInvoked=!0,typeof t=="function")JP(this.dispatch,this.option,t);else return this._promise=JP(this.dispatch,this.option),this._promise};Object.getOwnPropertyNames(Promise.prototype).forEach(t=>{t!=="constructor"&&(vS.prototype[t]=function(...e){if(!this._promise){if(this._hasInvoked===!0)throw new Error(XP);this._hasInvoked=!0,this._promise=JP(this.dispatch,this.option)}return this._promise[t](...e)})});function y9t(t){return t instanceof oj||t instanceof YP||t&&t.constructor&&t.constructor.name==="_CustomLMRRequest"}CS.exports=cj;CS.exports.default=cj;CS.exports.inject=cj;CS.exports.isInjection=y9t});var Zwe=E((z4r,r3)=>{"use strict";var x9t="4.26.0",b9t=hfe(),uj=require("node:http"),IS,{kAvvioBoot:TS,kChildren:lj,kServerBindings:$we,kBodyLimit:E9t,kRoutePrefix:Fwe,kLogLevel:_9t,kLogSerializers:S9t,kHooks:dj,kSchemaController:Gp,kRequestAcceptVersion:v9t,kReplySerializerDefault:Uwe,kContentTypeParser:C9t,kReply:I9t,kRequest:T9t,kFourOhFour:w9t,kState:ps,kOptions:fj,kPluginNameChain:wS,kSchemaErrorFormatter:pj,kErrorHandler:ZP,kKeepAliveConnections:mj,kChildLoggerFactory:hj,kGenReqId:gj}=Qs(),{createServer:R9t,compileValidateHTTPVersion:N9t}=Wfe(),RS=SN(),e3=FN(),O9t=UN(),{supportedMethods:P9t}=B$(),nx=U$(),uh=Y$(),qwe=bq(),{Hooks:D9t,hookRunnerApplication:jwe,supportedHooks:Aj}=up(),{createLogger:k9t,createChildLogger:Hwe,defaultChildLoggerFactory:L9t}=c1(),Qwe=Iq(),{getGenReqId:Gwe,reqIdGenFactory:Vwe}=IP(),{buildRouting:B9t,validateBodyLimitOption:M9t}=XTe(),W9t=iwe(),Xwe=cwe(),$9t=Awe(),{FSTDEP009:F9t}=cd(),U9t=xwe(),{appendStackTrace:q9t,AVVIO_ERRORS_MAP:zwe,...lh}=Ci(),{defaultInitOptions:Ha}=Xwe,{FST_ERR_ASYNC_CONSTRAINT:j9t,FST_ERR_BAD_URL:H9t,FST_ERR_FORCE_CLOSE_CONNECTIONS_IDLE_NOT_AVAILABLE:Q9t,FST_ERR_OPTIONS_NOT_OBJ:G9t,FST_ERR_QSP_NOT_FN:V9t,FST_ERR_SCHEMA_CONTROLLER_BUCKET_OPT_NOT_FN:z9t,FST_ERR_AJV_CUSTOM_OPTIONS_OPT_NOT_OBJ:K9t,FST_ERR_AJV_CUSTOM_OPTIONS_OPT_NOT_ARR:Y9t,FST_ERR_VERSION_CONSTRAINT_NOT_STR:J9t,FST_ERR_INSTANCE_ALREADY_LISTENING:X9t,FST_ERR_REOPENED_CLOSE_SERVER:Z9t,FST_ERR_ROUTE_REWRITE_NOT_STR:eqt,FST_ERR_SCHEMA_ERROR_FORMATTER_NOT_FN:Kwe}=lh,{buildErrorHandler:Ywe}=U1();function tqt(t){let e={};return["errorHandler","logLevel","logSerializers"].concat(Aj).forEach(n=>{e[n]=t.store[n]}),Object.assign({},e)}function t3(t){if(t=t||{},typeof t!="object")throw new G9t;if(t.querystringParser&&typeof t.querystringParser!="function")throw new V9t(typeof t.querystringParser);if(t.schemaController&&t.schemaController.bucket&&typeof t.schemaController.bucket!="function")throw new z9t(typeof t.schemaController.bucket);M9t(t.bodyLimit);let e=t.requestIdHeader===!1?!1:(t.requestIdHeader||Ha.requestIdHeader).toLowerCase(),r=Vwe(e,t.genReqId),n=t.requestIdLogLabel||"reqId",s=t.bodyLimit||Ha.bodyLimit,i=t.disableRequestLogging||!1,a=Object.assign({customOptions:{},plugins:[]},t.ajv),o=t.frameworkErrors;if(!a.customOptions||Object.prototype.toString.call(a.customOptions)!=="[object Object]")throw new K9t(typeof a.customOptions);if(!a.plugins||!Array.isArray(a.plugins))throw new Y9t(typeof a.plugins);let{logger:c,hasLogger:u}=k9t(t);t.connectionTimeout=t.connectionTimeout||Ha.connectionTimeout,t.keepAliveTimeout=t.keepAliveTimeout||Ha.keepAliveTimeout,t.maxRequestsPerSocket=t.maxRequestsPerSocket||Ha.maxRequestsPerSocket,t.requestTimeout=t.requestTimeout||Ha.requestTimeout,t.logger=c,t.requestIdHeader=e,t.requestIdLogLabel=n,t.disableRequestLogging=i,t.ajv=a,t.clientErrorHandler=t.clientErrorHandler||F;let l=Xwe(t);t.exposeHeadRoutes=l.exposeHeadRoutes;let d=t.constraints;t.versioning&&(F9t(),d={...d,version:{name:"version",mustMatchWhenDerived:!0,storage:t.versioning.storage,deriveConstraint:t.versioning.deriveVersion,validate(q){if(typeof q!="string")throw new J9t}}});let f=B9t({config:{defaultRoute:V,onBadUrl:j,constraints:d,ignoreTrailingSlash:t.ignoreTrailingSlash||Ha.ignoreTrailingSlash,ignoreDuplicateSlashes:t.ignoreDuplicateSlashes||Ha.ignoreDuplicateSlashes,maxParamLength:t.maxParamLength||Ha.maxParamLength,caseSensitive:t.caseSensitive,allowUnsafeRegex:t.allowUnsafeRegex||Ha.allowUnsafeRegex,buildPrettyMeta:tqt,querystringParser:t.querystringParser,useSemicolonDelimiter:t.useSemicolonDelimiter??Ha.useSemicolonDelimiter}}),p=W9t(t),m=G(f,t);t.http2SessionTimeout=l.http2SessionTimeout;let{server:h,listen:A}=R9t(t,m),g=typeof h.closeAllConnections=="function",b=typeof h.closeIdleConnections=="function",y=t.forceCloseConnections;if(y==="idle"&&!b)throw new Q9t;typeof y!="boolean"&&(y=b?"idle":!1);let x=!g&&y===!0?new Set:U9t(),v=RS.setupResponseListeners,C=qwe.buildSchemaController(null,t.schemaController),R={[ps]:{listening:!1,closing:!1,started:!1,ready:!1,booting:!1,readyPromise:null},[mj]:x,[fj]:t,[lj]:[],[$we]:[],[E9t]:s,[Fwe]:"",[_9t]:"",[S9t]:null,[dj]:new D9t,[Gp]:C,[pj]:null,[ZP]:Ywe(),[hj]:L9t,[Uwe]:null,[C9t]:new uh(s,t.onProtoPoisoning||Ha.onProtoPoisoning,t.onConstructorPoisoning||Ha.onConstructorPoisoning),[I9t]:RS.buildReply(RS),[T9t]:e3.buildRequest(e3,t.trustProxy),[w9t]:p,[Qwe.kRegisteredPlugins]:[],[wS]:["fastify"],[TS]:null,[gj]:r,routing:m,getDefaultRoute:f.getDefaultRoute.bind(f),setDefaultRoute:f.setDefaultRoute.bind(f),delete:function(H,ee,ne){return f.prepareRoute.call(this,{method:"DELETE",url:H,options:ee,handler:ne})},get:function(H,ee,ne){return f.prepareRoute.call(this,{method:"GET",url:H,options:ee,handler:ne})},head:function(H,ee,ne){return f.prepareRoute.call(this,{method:"HEAD",url:H,options:ee,handler:ne})},patch:function(H,ee,ne){return f.prepareRoute.call(this,{method:"PATCH",url:H,options:ee,handler:ne})},post:function(H,ee,ne){return f.prepareRoute.call(this,{method:"POST",url:H,options:ee,handler:ne})},put:function(H,ee,ne){return f.prepareRoute.call(this,{method:"PUT",url:H,options:ee,handler:ne})},options:function(H,ee,ne){return f.prepareRoute.call(this,{method:"OPTIONS",url:H,options:ee,handler:ne})},all:function(H,ee,ne){return f.prepareRoute.call(this,{method:P9t,url:H,options:ee,handler:ne})},route:function(H){return f.route.call(this,{options:H})},hasRoute:function(H){return f.hasRoute.call(this,{options:H})},findRoute:function(H){return f.findRoute(H)},log:c,withTypeProvider:B,addHook:Z,addSchema:W,getSchema:C.getSchema.bind(C),getSchemas:C.getSchemas.bind(C),setValidatorCompiler:oe,setSerializerCompiler:Ce,setSchemaController:we,setReplySerializer:qe,setSchemaErrorFormatter:ue,setGenReqId:z,addContentTypeParser:uh.helpers.addContentTypeParser,hasContentTypeParser:uh.helpers.hasContentTypeParser,getDefaultJsonParser:uh.defaultParsers.getDefaultJsonParser,defaultTextParser:uh.defaultParsers.defaultTextParser,removeContentTypeParser:uh.helpers.removeContentTypeParser,removeAllContentTypeParsers:uh.helpers.removeAllContentTypeParsers,register:null,after:null,ready:null,onClose:null,close:null,printPlugins:null,hasPlugin:function(q){return this[Qwe.kRegisteredPlugins].includes(q)||this[wS].includes(q)},listen:A,server:h,addresses:function(){let q=this[$we].map(H=>H.address());return q.push(this.server.address()),q.filter(H=>H)},decorate:nx.add,hasDecorator:nx.exist,decorateReply:nx.decorateReply,decorateRequest:nx.decorateRequest,hasRequestDecorator:nx.existRequest,hasReplyDecorator:nx.existReply,inject:M,printRoutes:U,setNotFoundHandler:se,setErrorHandler:Fe,setChildLoggerFactory:_e,initialConfig:l,addConstraintStrategy:f.addConstraintStrategy.bind(f),hasConstraintStrategy:f.hasConstraintStrategy.bind(f)};Object.defineProperties(R,{listeningOrigin:{get(){let q=this.addresses().slice(-1).pop();if(typeof q=="string")return q;let H=q.family==="IPv6"?`[${q.address}]`:q.address;return`${this[fj].https?"https":"http"}://${H}:${q.port}`}},pluginName:{configurable:!0,get(){return this[wS].length>1?this[wS].join(" -> "):this[wS][0]}},prefix:{configurable:!0,get(){return this[Fwe]}},validatorCompiler:{configurable:!0,get(){return this[Gp].getValidatorCompiler()}},serializerCompiler:{configurable:!0,get(){return this[Gp].getSerializerCompiler()}},childLoggerFactory:{configurable:!0,get(){return this[hj]}},version:{configurable:!0,get(){return x9t}},errorHandler:{configurable:!0,get(){return this[ZP].func}},genReqId:{configurable:!0,get(){return this[gj]}}}),t.schemaErrorFormatter&&(Jwe(t.schemaErrorFormatter),R[pj]=t.schemaErrorFormatter.bind(R));let w=Number(t.pluginTimeout),N=b9t(R,{autostart:!1,timeout:isNaN(w)===!1?w:Ha.pluginTimeout,expose:{use:"register"}});N.override=$9t,N.on("start",()=>R[ps].started=!0),R[TS]=R.ready,R.ready=k,R.printPlugins=N.prettyPrint.bind(N),N.once("preReady",()=>{R.onClose((q,H)=>{R[ps].closing=!0,f.closeRoutes(),jwe("preClose",R[TS],R,function(){if(R[ps].listening){if(y==="idle")q.server.closeIdleConnections();else if(g&&y)q.server.closeAllConnections();else if(y===!0)for(let ee of R[mj])ee.destroy(),R[mj].delete(ee)}!t.serverFactory||R[ps].listening?q.server.close(function(ee){ee&&ee.code!=="ERR_SERVER_NOT_RUNNING"?H(null):H()}):process.nextTick(H,null)})})});let P=new O9t({server:R,config:{}});R.setNotFoundHandler(),p.arrange404(R),f.setup(t,{avvio:N,fourOhFour:p,logger:c,hasLogger:u,setupResponseListeners:v,throwIfAlreadyStarted:L,validateHTTPVersion:N9t(t),keepAliveConnections:x}),h.on("clientError",t.clientErrorHandler.bind(R));try{let H=require("node:diagnostics_channel").channel("fastify.initialization");H.hasSubscribers&&H.publish({fastify:R})}catch{}return"asyncDispose"in Symbol&&(R[Symbol.asyncDispose]=function(){return R.close()}),R;function L(q){if(R[ps].started)throw new X9t(q)}function M(q,H){if(IS===void 0&&(IS=Wwe()),R[ps].started){if(R[ps].closing){let ee=new Z9t;if(H){H(ee);return}else return Promise.reject(ee)}return IS(m,q,H)}if(H)this.ready(ee=>{ee?H(ee,null):IS(m,q,H)});else return IS((ee,ne)=>{this.ready(function(re){if(re){ne.emit("error",re);return}m(ee,ne)})},q)}function k(q){if(this[ps].readyPromise!==null){if(q!=null){this[ps].readyPromise.then(()=>q(null,R),q);return}return this[ps].readyPromise}let H,ee;if(process.nextTick(ne),this[ps].readyPromise=new Promise(function(X,ie){H=X,ee=ie}),q)this[ps].readyPromise.then(()=>q(null,R),q);else return this[ps].readyPromise;function ne(){R[TS]((X,ie)=>{X||R[ps].started||R[ps].ready||R[ps].booting?re(X):(R[ps].booting=!0,jwe("onReady",R[TS],R,re)),ie()})}function re(X){if(X=X!=null&&zwe[X.code]!=null?q9t(X,new zwe[X.code](X.message)):X,X)return ee(X);H(R),R[ps].booting=!1,R[ps].ready=!0,R[ps].promise=null}}function B(){return this}function Z(q,H){if(L('Cannot call "addHook"!'),H==null)throw new lh.FST_ERR_HOOK_INVALID_HANDLER(q,H);if(q==="onSend"||q==="preSerialization"||q==="onError"||q==="preParsing"){if(H.constructor.name==="AsyncFunction"&&H.length===4)throw new lh.FST_ERR_HOOK_INVALID_ASYNC_HANDLER}else if(q==="onReady"||q==="onListen"){if(H.constructor.name==="AsyncFunction"&&H.length!==0)throw new lh.FST_ERR_HOOK_INVALID_ASYNC_HANDLER}else if(q==="onRequestAbort"){if(H.constructor.name==="AsyncFunction"&&H.length!==1)throw new lh.FST_ERR_HOOK_INVALID_ASYNC_HANDLER}else if(H.constructor.name==="AsyncFunction"&&H.length===3)throw new lh.FST_ERR_HOOK_INVALID_ASYNC_HANDLER;return q==="onClose"?this.onClose(H):q==="onReady"||q==="onListen"||q==="onRoute"?this[dj].add(q,H):this.after((ne,re)=>{ee.call(this,q,H),re(ne)}),this;function ee(ne,re){this[dj].add(ne,re),this[lj].forEach(X=>ee.call(X,ne,re))}}function W(q){return L('Cannot call "addSchema"!'),this[Gp].add(q),this[lj].forEach(H=>H.addSchema(q)),this}function F(q,H){if(q.code==="ECONNRESET"||H.destroyed)return;let ee,ne,re,X;q.code==="ERR_HTTP_REQUEST_TIMEOUT"?(ne="408",re=uj.STATUS_CODES[ne],ee=`{"error":"${re}","message":"Client Timeout","statusCode":408}`,X="timeout"):q.code==="HPE_HEADER_OVERFLOW"?(ne="431",re=uj.STATUS_CODES[ne],ee=`{"error":"${re}","message":"Exceeded maximum allowed HTTP header size","statusCode":431}`,X="header_overflow"):(ne="400",re=uj.STATUS_CODES[ne],ee=`{"error":"${re}","message":"Client Error","statusCode":400}`,X="error"),this.log.trace({err:q},`client ${X}`),H.writable&&H.write(`HTTP/1.1 ${ne} ${re}\r +`,yield Mx.encode(l),u.stream?yield*u.stream():yield u,yield i}yield Mx.encode(`--${e}--`)}return{stream:tGt.from(a()),contentType:`multipart/form-data; boundary=${e}`}}tH.exports.isFormDataLike=rGt;tH.exports.formDataToStream=nGt});var _Ne=_((Z9r,A3)=>{"use strict";var{Readable:xNe,addAbortSignal:sGt}=require("node:stream"),nH=require("node:util"),iGt=mNe(),aGt=require("node:assert"),{createDeprecation:oGt}=VW(),cGt=yNe(),{isFormDataLike:uGt,formDataToStream:lGt}=ANe(),{EventEmitter:dGt}=require("node:events"),fGt=oGt({name:"FastifyDeprecationLightMyRequest",code:"FST_LIGHTMYREQUEST_DEP01",message:'You are accessing "request.connection", use "request.socket" instead.'});function pGt(t){return t.port?t.host:t.hostname+(t.protocol==="https:"?":443":":80")}var rH=class extends dGt{constructor(e){super(),this.remoteAddress=e}};function bNe(t){return new e(this);function e(r){_l.call(r,{...t,Request:void 0}),Object.assign(this,r);for(let n of Object.keys(_l.prototype))this.constructor.prototype[n]=_l.prototype[n];return nH.inherits(this.constructor,t.Request),this}}function _l(t){xNe.call(this,{autoDestroy:!1});let e=cGt(t.url||t.path,t.query);this.url=e.pathname+e.search,this.aborted=!1,this.httpVersionMajor=1,this.httpVersionMinor=1,this.httpVersion="1.1",this.method=t.method?t.method.toUpperCase():"GET",this.headers={},this.rawHeaders=[];let r=t.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];aGt(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||t.authority||pGt(e),t.cookies){let{cookies:a}=t,o=Object.keys(a).map(c=>iGt.serialize(c,a[c]));this.headers.cookie&&o.unshift(this.headers.cookie),this.headers.cookie=o.join("; ")}this.socket=new rH(t.remoteAddress||"127.0.0.1"),Object.defineProperty(this,"connection",{get(){return fGt(),this.socket},configurable:!0});let n=t.payload||t.body||null,s=n&&typeof n.resume=="function";if(uGt(n)){let a=lGt(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:t.simulate||{}};let i=t.signal;return i&&sGt(i,this),this}nH.inherits(_l,xNe);nH.inherits(bNe,_l);_l.prototype.prepare=function(t){let e=this._lightMyRequest.payload;if(!e||typeof e.resume!="function")return t();let r=[];e.on("data",n=>r.push(Buffer.from(n))),e.on("end",()=>{let n=Buffer.concat(r);return this.headers["content-length"]=this.headers["content-length"]||""+n.length,this._lightMyRequest.payload=n,t()}),e.resume()};_l.prototype._read=function(t){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)})};_l.prototype.destroy=function(t){this.destroyed||this._lightMyRequest.isDone||(this.destroyed=!0,t&&(this._error=!0,process.nextTick(()=>this.emit("error",t))),process.nextTick(()=>this.emit("close")))};A3.exports=_l;A3.exports.Request=_l;A3.exports.CustomRequest=bNe});var vNe=_((eqr,wS)=>{"use strict";var x3={decodeValues:!0,map:!1,silent:!1};function sH(t){return typeof t!="string"||t in{}}function iH(){return Object.create(null)}function aH(t){return typeof t=="string"&&!!t.trim()}function oH(t,e){var r=t.split(";").filter(aH),n=r.shift(),s=mGt(n),i=s.name,a=s.value;if(e=e?Object.assign({},x3,e):x3,sH(i))return null;try{a=e.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=iH();return o.name=i,o.value=a,r.forEach(function(c){var u=c.split("="),l=u.shift().trimLeft().toLowerCase();if(!sH(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 mGt(t){var e="",r="",n=t.split("=");return n.length>1?(e=n.shift(),r=n.join("=")):r=t,{name:e,value:r}}function ENe(t,e){if(e=e?Object.assign({},x3,e):x3,!t)return e.map?iH():[];if(t.headers)if(typeof t.headers.getSetCookie=="function")t=t.headers.getSetCookie();else if(t.headers["set-cookie"])t=t.headers["set-cookie"];else{var r=t.headers[Object.keys(t.headers).find(function(s){return s.toLowerCase()==="set-cookie"})];!r&&t.headers.cookie&&!e.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."),t=r}if(Array.isArray(t)||(t=[t]),e.map){var n=iH();return t.filter(aH).reduce(function(s,i){var a=oH(i,e);return a&&!sH(a.name)&&(s[a.name]=a),s},n)}else return t.filter(aH).map(function(s){return oH(s,e)}).filter(Boolean)}function hGt(t){if(Array.isArray(t))return t;if(typeof t!="string")return[];var e=[],r=0,n,s,i,a,o;function c(){for(;r=t.length)&&e.push(t.substring(n,t.length))}return e}wS.exports=ENe;wS.exports.parse=ENe;wS.exports.parseString=oH;wS.exports.splitCookiesString=hGt});var CNe=_((tqr,INe)=>{"use strict";var RS=require("node:http"),{Writable:gGt,Readable:yGt}=require("node:stream"),AGt=require("node:util"),xGt=vNe();function d0(t,e,r){RS.ServerResponse.call(this,t),this._lightMyRequest={headers:null,trailers:{},payloadChunks:[]},this.setHeader("foo","bar"),this.removeHeader("foo"),this.assignSocket(_Gt()),this._promiseCallback=typeof r=="function";let n=!1,s=a=>{if(n=!0,this._promiseCallback)return process.nextTick(()=>e(a));process.nextTick(()=>e(null,a))},i=a=>{if(!n){if(n=!0,this._promiseCallback)return process.nextTick(()=>r(a));process.nextTick(()=>e(a,null))}};this.once("finish",()=>{let a=bGt(this);a.raw.req=t,s(a)}),this.connection.once("error",i),this.once("error",i),this.once("close",i)}AGt.inherits(d0,RS.ServerResponse);d0.prototype.setTimeout=function(t,e){return this.timeoutHandle=setTimeout(()=>{this.emit("timeout")},t),this.on("timeout",e),this};d0.prototype.writeHead=function(){let t=RS.ServerResponse.prototype.writeHead.apply(this,arguments);return SNe(this),t};d0.prototype.write=function(t,e,r){return this.timeoutHandle&&clearTimeout(this.timeoutHandle),RS.ServerResponse.prototype.write.call(this,t,e,r),this._lightMyRequest.payloadChunks.push(Buffer.from(t,e)),!0};d0.prototype.end=function(t,e,r){t&&this.write(t,e),RS.ServerResponse.prototype.end.call(this,r),this.emit("finish"),this.destroy()};d0.prototype.destroy=function(t){this.destroyed||(this.destroyed=!0,t&&process.nextTick(()=>this.emit("error",t)),process.nextTick(()=>this.emit("close")))};d0.prototype.addTrailers=function(t){for(let e in t)this._lightMyRequest.trailers[e.toLowerCase().trim()]=t[e].toString().trim()};function bGt(t){t._lightMyRequest.headers===null&&SNe(t),EGt(t);let e={raw:{res:t},headers:t._lightMyRequest.headers,statusCode:t.statusCode,statusMessage:t.statusMessage,trailers:{},get cookies(){return xGt.parse(this)}},r=Buffer.concat(t._lightMyRequest.payloadChunks);return e.rawPayload=r,e.payload=r.toString(),e.body=e.payload,e.trailers=t._lightMyRequest.trailers,e.json=function(){return JSON.parse(e.payload)},e.stream=function(){return yGt.from(t._lightMyRequest.payloadChunks)},e}function _Gt(){return new gGt({write(t,e,r){setImmediate(r)}})}function EGt(t){let e=t._lightMyRequest.headers;for(let r of Object.keys(e)){let n=e[r];Array.isArray(n)?e[r]=n.map(s=>""+s):e[r]=""+n}}function SNe(t){t._lightMyRequest.headers=Object.assign({},t.getHeaders()),["Date","Connection","Transfer-Encoding"].forEach(e=>{let r=new RegExp("\\r\\n"+e+": ([^\\r]*)\\r\\n"),n=t._header.match(r);n&&(t._lightMyRequest.headers[e.toLowerCase()]=n[1])})}INe.exports=d0});var TNe=_((rqr,cH)=>{"use strict";cH.exports=_s;cH.exports.default=_s;var vGt={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(t,{instancePath:e="",parentData:r,parentDataProperty:n,rootData:s=t}={}){let i=null,a=0,o=a,c=!1,u=null,l=a;if(t&&typeof t=="object"&&!Array.isArray(t)){let A;if(t.url===void 0&&(A="url")){let S={instancePath:e,schemaPath:"#/oneOf/0/required",keyword:"required",params:{missingProperty:A},message:"must have required property '"+A+"'"};i===null?i=[S]:i.push(S),a++}}var f=l===a;f&&(c=!0,u=0);let d=a;if(t&&typeof t=="object"&&!Array.isArray(t)){let A;if(t.path===void 0&&(A="path")){let S={instancePath:e,schemaPath:"#/oneOf/1/required",keyword:"required",params:{missingProperty:A},message:"must have required property '"+A+"'"};i===null?i=[S]:i.push(S),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 A={instancePath:e,schemaPath:"#/oneOf",keyword:"oneOf",params:{passingSchemas:u},message:"must match exactly one schema in oneOf"};return i===null?i=[A]:i.push(A),a++,_s.errors=i,!1}if(a===0)if(t&&typeof t=="object"&&!Array.isArray(t)){if(t.url!==void 0){let A=t.url,S=a,I=a,R=!1,w=null,N=a;if(typeof A!="string"){let B=typeof A,M;if(M===void 0)if(B=="number"||B=="boolean")M=""+A;else if(A===null)M="";else{let D={instancePath:e+"/url",schemaPath:"#/properties/url/oneOf/0/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[D]:i.push(D),a++}M!==void 0&&(A=M,t!==void 0&&(t.url=M))}var m=N===a;m&&(R=!0,w=0);let k=a;if(a===k)if(A&&typeof A=="object"&&!Array.isArray(A)){let B;if(A.pathname===void 0&&(B="pathname")){let M={instancePath:e+"/url",schemaPath:"#/properties/url/oneOf/1/required",keyword:"required",params:{missingProperty:B},message:"must have required property '"+B+"'"};i===null?i=[M]:i.push(M),a++}else{if(A.protocol!==void 0){let M=A.protocol,D=a;if(typeof M!="string"){let L=typeof M,Z;if(Z===void 0)if(L=="number"||L=="boolean")Z=""+M;else if(M===null)Z="";else{let W={instancePath:e+"/url/protocol",schemaPath:"#/properties/url/oneOf/1/properties/protocol/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[W]:i.push(W),a++}Z!==void 0&&(M=Z,A!==void 0&&(A.protocol=Z))}var p=D===a}else var p=!0;if(p){if(A.hostname!==void 0){let M=A.hostname,D=a;if(typeof M!="string"){let Z=typeof M,W;if(W===void 0)if(Z=="number"||Z=="boolean")W=""+M;else if(M===null)W="";else{let U={instancePath:e+"/url/hostname",schemaPath:"#/properties/url/oneOf/1/properties/hostname/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[U]:i.push(U),a++}W!==void 0&&(M=W,A!==void 0&&(A.hostname=W))}var p=D===a}else var p=!0;if(p)if(A.pathname!==void 0){let M=A.pathname,D=a;if(typeof M!="string"){let Z=typeof M,W;if(W===void 0)if(Z=="number"||Z=="boolean")W=""+M;else if(M===null)W="";else{let U={instancePath:e+"/url/pathname",schemaPath:"#/properties/url/oneOf/1/properties/pathname/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[U]:i.push(U),a++}W!==void 0&&(M=W,A!==void 0&&(A.pathname=W))}var p=D===a}else var p=!0}}}else{let B={instancePath:e+"/url",schemaPath:"#/properties/url/oneOf/1/type",keyword:"type",params:{type:"object"},message:"must be object"};i===null?i=[B]:i.push(B),a++}var m=k===a;if(m&&R?(R=!1,w=[w,1]):m&&(R=!0,w=1),R)a=I,i!==null&&(I?i.length=I:i=null);else{let B={instancePath:e+"/url",schemaPath:"#/properties/url/oneOf",keyword:"oneOf",params:{passingSchemas:w},message:"must match exactly one schema in oneOf"};return i===null?i=[B]:i.push(B),a++,_s.errors=i,!1}var h=S===a}else var h=!0;if(h){if(t.path!==void 0){let A=t.path,S=a,I=a,R=!1,w=null,N=a;if(typeof A!="string"){let M=typeof A,D;if(D===void 0)if(M=="number"||M=="boolean")D=""+A;else if(A===null)D="";else{let L={instancePath:e+"/path",schemaPath:"#/properties/path/oneOf/0/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[L]:i.push(L),a++}D!==void 0&&(A=D,t!==void 0&&(t.path=D))}var g=N===a;g&&(R=!0,w=0);let k=a;if(a===k)if(A&&typeof A=="object"&&!Array.isArray(A)){let M;if(A.pathname===void 0&&(M="pathname")){let D={instancePath:e+"/path",schemaPath:"#/properties/path/oneOf/1/required",keyword:"required",params:{missingProperty:M},message:"must have required property '"+M+"'"};i===null?i=[D]:i.push(D),a++}else{if(A.protocol!==void 0){let D=A.protocol,L=a;if(typeof D!="string"){let Z=typeof D,W;if(W===void 0)if(Z=="number"||Z=="boolean")W=""+D;else if(D===null)W="";else{let U={instancePath:e+"/path/protocol",schemaPath:"#/properties/path/oneOf/1/properties/protocol/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[U]:i.push(U),a++}W!==void 0&&(D=W,A!==void 0&&(A.protocol=W))}var y=L===a}else var y=!0;if(y){if(A.hostname!==void 0){let D=A.hostname,L=a;if(typeof D!="string"){let W=typeof D,U;if(U===void 0)if(W=="number"||W=="boolean")U=""+D;else if(D===null)U="";else{let z={instancePath:e+"/path/hostname",schemaPath:"#/properties/path/oneOf/1/properties/hostname/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[z]:i.push(z),a++}U!==void 0&&(D=U,A!==void 0&&(A.hostname=U))}var y=L===a}else var y=!0;if(y)if(A.pathname!==void 0){let D=A.pathname,L=a;if(typeof D!="string"){let W=typeof D,U;if(U===void 0)if(W=="number"||W=="boolean")U=""+D;else if(D===null)U="";else{let z={instancePath:e+"/path/pathname",schemaPath:"#/properties/path/oneOf/1/properties/pathname/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[z]:i.push(z),a++}U!==void 0&&(D=U,A!==void 0&&(A.pathname=U))}var y=L===a}else var y=!0}}}else{let M={instancePath:e+"/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=k===a;if(g&&R?(R=!1,w=[w,1]):g&&(R=!0,w=1),R)a=I,i!==null&&(I?i.length=I:i=null);else{let M={instancePath:e+"/path",schemaPath:"#/properties/path/oneOf",keyword:"oneOf",params:{passingSchemas:w},message:"must match exactly one schema in oneOf"};return i===null?i=[M]:i.push(M),a++,_s.errors=i,!1}var h=S===a}else var h=!0;if(h){if(t.cookies!==void 0){let A=t.cookies,S=a;if(a===S&&!(A&&typeof A=="object"&&!Array.isArray(A)))return _s.errors=[{instancePath:e+"/cookies",schemaPath:"#/properties/cookies/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var h=S===a}else var h=!0;if(h){if(t.headers!==void 0){let A=t.headers,S=a;if(a===S&&!(A&&typeof A=="object"&&!Array.isArray(A)))return _s.errors=[{instancePath:e+"/headers",schemaPath:"#/properties/headers/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var h=S===a}else var h=!0;if(h){if(t.query!==void 0){let A=t.query,S=a,I=a,R=!1,w=a;if(a===w&&!(A&&typeof A=="object"&&!Array.isArray(A))){let k={instancePath:e+"/query",schemaPath:"#/properties/query/anyOf/0/type",keyword:"type",params:{type:"object"},message:"must be object"};i===null?i=[k]:i.push(k),a++}var b=w===a;if(R=R||b,!R){let k=a;if(typeof A!="string"){let M=typeof A,D;if(D===void 0)if(M=="number"||M=="boolean")D=""+A;else if(A===null)D="";else{let L={instancePath:e+"/query",schemaPath:"#/properties/query/anyOf/1/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[L]:i.push(L),a++}D!==void 0&&(A=D,t!==void 0&&(t.query=D))}var b=k===a;R=R||b}if(R)a=I,i!==null&&(I?i.length=I:i=null);else{let k={instancePath:e+"/query",schemaPath:"#/properties/query/anyOf",keyword:"anyOf",params:{},message:"must match a schema in anyOf"};return i===null?i=[k]:i.push(k),a++,_s.errors=i,!1}var h=S===a}else var h=!0;if(h){if(t.simulate!==void 0){let A=t.simulate,S=a;if(a===S)if(A&&typeof A=="object"&&!Array.isArray(A)){if(A.end!==void 0){let R=A.end,w=a;if(typeof R!="boolean"){let N;if(N===void 0)if(R==="false"||R===0||R===null)N=!1;else if(R==="true"||R===1)N=!0;else return _s.errors=[{instancePath:e+"/simulate/end",schemaPath:"#/properties/simulate/properties/end/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;N!==void 0&&(R=N,A!==void 0&&(A.end=N))}var x=w===a}else var x=!0;if(x){if(A.split!==void 0){let R=A.split,w=a;if(typeof R!="boolean"){let k;if(k===void 0)if(R==="false"||R===0||R===null)k=!1;else if(R==="true"||R===1)k=!0;else return _s.errors=[{instancePath:e+"/simulate/split",schemaPath:"#/properties/simulate/properties/split/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;k!==void 0&&(R=k,A!==void 0&&(A.split=k))}var x=w===a}else var x=!0;if(x){if(A.error!==void 0){let R=A.error,w=a;if(typeof R!="boolean"){let k;if(k===void 0)if(R==="false"||R===0||R===null)k=!1;else if(R==="true"||R===1)k=!0;else return _s.errors=[{instancePath:e+"/simulate/error",schemaPath:"#/properties/simulate/properties/error/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;k!==void 0&&(R=k,A!==void 0&&(A.error=k))}var x=w===a}else var x=!0;if(x)if(A.close!==void 0){let R=A.close,w=a;if(typeof R!="boolean"){let k;if(k===void 0)if(R==="false"||R===0||R===null)k=!1;else if(R==="true"||R===1)k=!0;else return _s.errors=[{instancePath:e+"/simulate/close",schemaPath:"#/properties/simulate/properties/close/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;k!==void 0&&(R=k,A!==void 0&&(A.close=k))}var x=w===a}else var x=!0}}}else return _s.errors=[{instancePath:e+"/simulate",schemaPath:"#/properties/simulate/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var h=S===a}else var h=!0;if(h){if(t.authority!==void 0){let A=t.authority,S=a;if(typeof A!="string"){let R=typeof A,w;if(w===void 0)if(R=="number"||R=="boolean")w=""+A;else if(A===null)w="";else return _s.errors=[{instancePath:e+"/authority",schemaPath:"#/properties/authority/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;w!==void 0&&(A=w,t!==void 0&&(t.authority=w))}var h=S===a}else var h=!0;if(h){if(t.remoteAddress!==void 0){let A=t.remoteAddress,S=a;if(typeof A!="string"){let R=typeof A,w;if(w===void 0)if(R=="number"||R=="boolean")w=""+A;else if(A===null)w="";else return _s.errors=[{instancePath:e+"/remoteAddress",schemaPath:"#/properties/remoteAddress/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;w!==void 0&&(A=w,t!==void 0&&(t.remoteAddress=w))}var h=S===a}else var h=!0;if(h){if(t.method!==void 0){let A=t.method,S=a;if(typeof A!="string"){let R=typeof A,w;if(w===void 0)if(R=="number"||R=="boolean")w=""+A;else if(A===null)w="";else return _s.errors=[{instancePath:e+"/method",schemaPath:"#/properties/method/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;w!==void 0&&(A=w,t!==void 0&&(t.method=w))}if(!(A==="ACL"||A==="BIND"||A==="CHECKOUT"||A==="CONNECT"||A==="COPY"||A==="DELETE"||A==="GET"||A==="HEAD"||A==="LINK"||A==="LOCK"||A==="M-SEARCH"||A==="MERGE"||A==="MKACTIVITY"||A==="MKCALENDAR"||A==="MKCOL"||A==="MOVE"||A==="NOTIFY"||A==="OPTIONS"||A==="PATCH"||A==="POST"||A==="PROPFIND"||A==="PROPPATCH"||A==="PURGE"||A==="PUT"||A==="REBIND"||A==="REPORT"||A==="SEARCH"||A==="SOURCE"||A==="SUBSCRIBE"||A==="TRACE"||A==="UNBIND"||A==="UNLINK"||A==="UNLOCK"||A==="UNSUBSCRIBE"||A==="acl"||A==="bind"||A==="checkout"||A==="connect"||A==="copy"||A==="delete"||A==="get"||A==="head"||A==="link"||A==="lock"||A==="m-search"||A==="merge"||A==="mkactivity"||A==="mkcalendar"||A==="mkcol"||A==="move"||A==="notify"||A==="options"||A==="patch"||A==="post"||A==="propfind"||A==="proppatch"||A==="purge"||A==="put"||A==="rebind"||A==="report"||A==="search"||A==="source"||A==="subscribe"||A==="trace"||A==="unbind"||A==="unlink"||A==="unlock"||A==="unsubscribe"))return _s.errors=[{instancePath:e+"/method",schemaPath:"#/properties/method/enum",keyword:"enum",params:{allowedValues:vGt.properties.method.enum},message:"must be equal to one of the allowed values"}],!1;var h=S===a}else var h=!0;if(h)if(t.validate!==void 0){let A=t.validate,S=a;if(typeof A!="boolean"){let R;if(R===void 0)if(A==="false"||A===0||A===null)R=!1;else if(A==="true"||A===1)R=!0;else return _s.errors=[{instancePath:e+"/validate",schemaPath:"#/properties/validate/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;R!==void 0&&(A=R,t!==void 0&&(t.validate=R))}var h=S===a}else var h=!0}}}}}}}}}else return _s.errors=[{instancePath:e,schemaPath:"#/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;return _s.errors=i,a===0}});var NNe=_((nqr,OS)=>{"use strict";var SGt=require("node:assert"),uH=_Ne(),b3=CNe(),E3="The dispatch function has already been invoked",wNe=TNe();function lH(t,e,r){return r===void 0?new NS(t,e):_3(t,e,r)}function RNe(t,e,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(()=>t.call(e,r,n))}function _3(t,e,r){if(e=typeof e=="string"?{url:e}:e,e.validate!==!1&&(SGt(typeof t=="function","dispatchFunc should be a function"),!wNe(e)))throw new Error(wNe.errors.map(a=>a.message));let n=e.server||{},s=e.Request?uH.CustomRequest:uH;if(t.request&&t.request.app===t&&(Object.setPrototypeOf(Object.getPrototypeOf(t.request),s.prototype),Object.setPrototypeOf(Object.getPrototypeOf(t.response),b3.prototype)),typeof r=="function"){let i=new s(e),a=new b3(i,r);return RNe(t,n,i,a)}else return new Promise((i,a)=>{let o=new s(e),c=new b3(o,i,a);RNe(t,n,o,c)})}function NS(t,e){typeof e=="string"?this.option={url:e}:this.option=Object.assign({},e),this.dispatch=t,this._hasInvoked=!1,this._promise=null,this.option.autoStart!==!1&&process.nextTick(()=>{this._hasInvoked||this.end()})}var IGt=["delete","get","head","options","patch","post","put","trace"];IGt.forEach(t=>{NS.prototype[t]=function(e){if(this._hasInvoked===!0||this._promise)throw new Error(E3);return this.option.url=e,this.option.method=t.toUpperCase(),this}});var CGt=["body","cookies","headers","payload","query"];CGt.forEach(t=>{NS.prototype[t]=function(e){if(this._hasInvoked===!0||this._promise)throw new Error(E3);return this.option[t]=e,this}});NS.prototype.end=function(t){if(this._hasInvoked===!0||this._promise)throw new Error(E3);if(this._hasInvoked=!0,typeof t=="function")_3(this.dispatch,this.option,t);else return this._promise=_3(this.dispatch,this.option),this._promise};Object.getOwnPropertyNames(Promise.prototype).forEach(t=>{t!=="constructor"&&(NS.prototype[t]=function(...e){if(!this._promise){if(this._hasInvoked===!0)throw new Error(E3);this._hasInvoked=!0,this._promise=_3(this.dispatch,this.option)}return this._promise[t](...e)})});function TGt(t){return t instanceof uH||t instanceof b3||t&&t.constructor&&t.constructor.name==="_CustomLMRRequest"}OS.exports=lH;OS.exports.default=lH;OS.exports.inject=lH;OS.exports.isInjection=TGt});var HNe=_((sqr,C3)=>{"use strict";var wGt="4.26.0",RGt=ome(),dH=require("node:http"),kS,{kAvvioBoot:PS,kChildren:fH,kServerBindings:ONe,kBodyLimit:NGt,kRoutePrefix:kNe,kLogLevel:OGt,kLogSerializers:kGt,kHooks:pH,kSchemaController:f0,kRequestAcceptVersion:PGt,kReplySerializerDefault:PNe,kContentTypeParser:DGt,kReply:BGt,kRequest:LGt,kFourOhFour:MGt,kState:hs,kOptions:mH,kPluginNameChain:DS,kSchemaErrorFormatter:hH,kErrorHandler:v3,kKeepAliveConnections:gH,kChildLoggerFactory:yH,kGenReqId:AH}=zs(),{createServer:WGt,compileValidateHTTPVersion:$Gt}=Nme(),BS=zO(),S3=lk(),UGt=dk(),{supportedMethods:FGt}=WF(),Wx=jF(),kh=XF(),DNe=EQ(),{Hooks:qGt,hookRunnerApplication:BNe,supportedHooks:xH}=Rp(),{createLogger:jGt,createChildLogger:LNe,defaultChildLoggerFactory:QGt}=mE(),MNe=wQ(),{getGenReqId:WNe,reqIdGenFactory:$Ne}=YP(),{buildRouting:HGt,validateBodyLimitOption:GGt}=QRe(),zGt=JRe(),QNe=eNe(),KGt=uNe(),{FSTDEP009:VGt}=wd(),YGt=dNe(),{appendStackTrace:JGt,AVVIO_ERRORS_MAP:UNe,...Ph}=Di(),{defaultInitOptions:Za}=QNe,{FST_ERR_ASYNC_CONSTRAINT:XGt,FST_ERR_BAD_URL:ZGt,FST_ERR_FORCE_CLOSE_CONNECTIONS_IDLE_NOT_AVAILABLE:ezt,FST_ERR_OPTIONS_NOT_OBJ:tzt,FST_ERR_QSP_NOT_FN:rzt,FST_ERR_SCHEMA_CONTROLLER_BUCKET_OPT_NOT_FN:nzt,FST_ERR_AJV_CUSTOM_OPTIONS_OPT_NOT_OBJ:szt,FST_ERR_AJV_CUSTOM_OPTIONS_OPT_NOT_ARR:izt,FST_ERR_VERSION_CONSTRAINT_NOT_STR:azt,FST_ERR_INSTANCE_ALREADY_LISTENING:ozt,FST_ERR_REOPENED_CLOSE_SERVER:czt,FST_ERR_ROUTE_REWRITE_NOT_STR:uzt,FST_ERR_SCHEMA_ERROR_FORMATTER_NOT_FN:FNe}=Ph,{buildErrorHandler:qNe}=zE();function lzt(t){let e={};return["errorHandler","logLevel","logSerializers"].concat(xH).forEach(n=>{e[n]=t.store[n]}),Object.assign({},e)}function I3(t){if(t=t||{},typeof t!="object")throw new tzt;if(t.querystringParser&&typeof t.querystringParser!="function")throw new rzt(typeof t.querystringParser);if(t.schemaController&&t.schemaController.bucket&&typeof t.schemaController.bucket!="function")throw new nzt(typeof t.schemaController.bucket);GGt(t.bodyLimit);let e=t.requestIdHeader===!1?!1:(t.requestIdHeader||Za.requestIdHeader).toLowerCase(),r=$Ne(e,t.genReqId),n=t.requestIdLogLabel||"reqId",s=t.bodyLimit||Za.bodyLimit,i=t.disableRequestLogging||!1,a=Object.assign({customOptions:{},plugins:[]},t.ajv),o=t.frameworkErrors;if(!a.customOptions||Object.prototype.toString.call(a.customOptions)!=="[object Object]")throw new szt(typeof a.customOptions);if(!a.plugins||!Array.isArray(a.plugins))throw new izt(typeof a.plugins);let{logger:c,hasLogger:u}=jGt(t);t.connectionTimeout=t.connectionTimeout||Za.connectionTimeout,t.keepAliveTimeout=t.keepAliveTimeout||Za.keepAliveTimeout,t.maxRequestsPerSocket=t.maxRequestsPerSocket||Za.maxRequestsPerSocket,t.requestTimeout=t.requestTimeout||Za.requestTimeout,t.logger=c,t.requestIdHeader=e,t.requestIdLogLabel=n,t.disableRequestLogging=i,t.ajv=a,t.clientErrorHandler=t.clientErrorHandler||U;let l=QNe(t);t.exposeHeadRoutes=l.exposeHeadRoutes;let d=t.constraints;t.versioning&&(VGt(),d={...d,version:{name:"version",mustMatchWhenDerived:!0,storage:t.versioning.storage,deriveConstraint:t.versioning.deriveVersion,validate(q){if(typeof q!="string")throw new azt}}});let f=HGt({config:{defaultRoute:z,onBadUrl:j,constraints:d,ignoreTrailingSlash:t.ignoreTrailingSlash||Za.ignoreTrailingSlash,ignoreDuplicateSlashes:t.ignoreDuplicateSlashes||Za.ignoreDuplicateSlashes,maxParamLength:t.maxParamLength||Za.maxParamLength,caseSensitive:t.caseSensitive,allowUnsafeRegex:t.allowUnsafeRegex||Za.allowUnsafeRegex,buildPrettyMeta:lzt,querystringParser:t.querystringParser,useSemicolonDelimiter:t.useSemicolonDelimiter??Za.useSemicolonDelimiter}}),p=zGt(t),m=G(f,t);t.http2SessionTimeout=l.http2SessionTimeout;let{server:h,listen:y}=WGt(t,m),g=typeof h.closeAllConnections=="function",b=typeof h.closeIdleConnections=="function",x=t.forceCloseConnections;if(x==="idle"&&!b)throw new ezt;typeof x!="boolean"&&(x=b?"idle":!1);let A=!g&&x===!0?new Set:YGt(),S=BS.setupResponseListeners,I=DNe.buildSchemaController(null,t.schemaController),R={[hs]:{listening:!1,closing:!1,started:!1,ready:!1,booting:!1,readyPromise:null},[gH]:A,[mH]:t,[fH]:[],[ONe]:[],[NGt]:s,[kNe]:"",[OGt]:"",[kGt]:null,[pH]:new qGt,[f0]:I,[hH]:null,[v3]:qNe(),[yH]:QGt,[PNe]:null,[DGt]:new kh(s,t.onProtoPoisoning||Za.onProtoPoisoning,t.onConstructorPoisoning||Za.onConstructorPoisoning),[BGt]:BS.buildReply(BS),[LGt]:S3.buildRequest(S3,t.trustProxy),[MGt]:p,[MNe.kRegisteredPlugins]:[],[DS]:["fastify"],[PS]:null,[AH]:r,routing:m,getDefaultRoute:f.getDefaultRoute.bind(f),setDefaultRoute:f.setDefaultRoute.bind(f),delete:function(Q,ee,ne){return f.prepareRoute.call(this,{method:"DELETE",url:Q,options:ee,handler:ne})},get:function(Q,ee,ne){return f.prepareRoute.call(this,{method:"GET",url:Q,options:ee,handler:ne})},head:function(Q,ee,ne){return f.prepareRoute.call(this,{method:"HEAD",url:Q,options:ee,handler:ne})},patch:function(Q,ee,ne){return f.prepareRoute.call(this,{method:"PATCH",url:Q,options:ee,handler:ne})},post:function(Q,ee,ne){return f.prepareRoute.call(this,{method:"POST",url:Q,options:ee,handler:ne})},put:function(Q,ee,ne){return f.prepareRoute.call(this,{method:"PUT",url:Q,options:ee,handler:ne})},options:function(Q,ee,ne){return f.prepareRoute.call(this,{method:"OPTIONS",url:Q,options:ee,handler:ne})},all:function(Q,ee,ne){return f.prepareRoute.call(this,{method:FGt,url:Q,options:ee,handler:ne})},route:function(Q){return f.route.call(this,{options:Q})},hasRoute:function(Q){return f.hasRoute.call(this,{options:Q})},findRoute:function(Q){return f.findRoute(Q)},log:c,withTypeProvider:L,addHook:Z,addSchema:W,getSchema:I.getSchema.bind(I),getSchemas:I.getSchemas.bind(I),setValidatorCompiler:oe,setSerializerCompiler:Te,setSchemaController:Ne,setReplySerializer:je,setSchemaErrorFormatter:ue,setGenReqId:K,addContentTypeParser:kh.helpers.addContentTypeParser,hasContentTypeParser:kh.helpers.hasContentTypeParser,getDefaultJsonParser:kh.defaultParsers.getDefaultJsonParser,defaultTextParser:kh.defaultParsers.defaultTextParser,removeContentTypeParser:kh.helpers.removeContentTypeParser,removeAllContentTypeParsers:kh.helpers.removeAllContentTypeParsers,register:null,after:null,ready:null,onClose:null,close:null,printPlugins:null,hasPlugin:function(q){return this[MNe.kRegisteredPlugins].includes(q)||this[DS].includes(q)},listen:y,server:h,addresses:function(){let q=this[ONe].map(Q=>Q.address());return q.push(this.server.address()),q.filter(Q=>Q)},decorate:Wx.add,hasDecorator:Wx.exist,decorateReply:Wx.decorateReply,decorateRequest:Wx.decorateRequest,hasRequestDecorator:Wx.existRequest,hasReplyDecorator:Wx.existReply,inject:M,printRoutes:F,setNotFoundHandler:se,setErrorHandler:Fe,setChildLoggerFactory:ve,initialConfig:l,addConstraintStrategy:f.addConstraintStrategy.bind(f),hasConstraintStrategy:f.hasConstraintStrategy.bind(f)};Object.defineProperties(R,{listeningOrigin:{get(){let q=this.addresses().slice(-1).pop();if(typeof q=="string")return q;let Q=q.family==="IPv6"?`[${q.address}]`:q.address;return`${this[mH].https?"https":"http"}://${Q}:${q.port}`}},pluginName:{configurable:!0,get(){return this[DS].length>1?this[DS].join(" -> "):this[DS][0]}},prefix:{configurable:!0,get(){return this[kNe]}},validatorCompiler:{configurable:!0,get(){return this[f0].getValidatorCompiler()}},serializerCompiler:{configurable:!0,get(){return this[f0].getSerializerCompiler()}},childLoggerFactory:{configurable:!0,get(){return this[yH]}},version:{configurable:!0,get(){return wGt}},errorHandler:{configurable:!0,get(){return this[v3].func}},genReqId:{configurable:!0,get(){return this[AH]}}}),t.schemaErrorFormatter&&(jNe(t.schemaErrorFormatter),R[hH]=t.schemaErrorFormatter.bind(R));let w=Number(t.pluginTimeout),N=RGt(R,{autostart:!1,timeout:isNaN(w)===!1?w:Za.pluginTimeout,expose:{use:"register"}});N.override=KGt,N.on("start",()=>R[hs].started=!0),R[PS]=R.ready,R.ready=D,R.printPlugins=N.prettyPrint.bind(N),N.once("preReady",()=>{R.onClose((q,Q)=>{R[hs].closing=!0,f.closeRoutes(),BNe("preClose",R[PS],R,function(){if(R[hs].listening){if(x==="idle")q.server.closeIdleConnections();else if(g&&x)q.server.closeAllConnections();else if(x===!0)for(let ee of R[gH])ee.destroy(),R[gH].delete(ee)}!t.serverFactory||R[hs].listening?q.server.close(function(ee){ee&&ee.code!=="ERR_SERVER_NOT_RUNNING"?Q(null):Q()}):process.nextTick(Q,null)})})});let k=new UGt({server:R,config:{}});R.setNotFoundHandler(),p.arrange404(R),f.setup(t,{avvio:N,fourOhFour:p,logger:c,hasLogger:u,setupResponseListeners:S,throwIfAlreadyStarted:B,validateHTTPVersion:$Gt(t),keepAliveConnections:A}),h.on("clientError",t.clientErrorHandler.bind(R));try{let Q=require("node:diagnostics_channel").channel("fastify.initialization");Q.hasSubscribers&&Q.publish({fastify:R})}catch{}return"asyncDispose"in Symbol&&(R[Symbol.asyncDispose]=function(){return R.close()}),R;function B(q){if(R[hs].started)throw new ozt(q)}function M(q,Q){if(kS===void 0&&(kS=NNe()),R[hs].started){if(R[hs].closing){let ee=new czt;if(Q){Q(ee);return}else return Promise.reject(ee)}return kS(m,q,Q)}if(Q)this.ready(ee=>{ee?Q(ee,null):kS(m,q,Q)});else return kS((ee,ne)=>{this.ready(function(re){if(re){ne.emit("error",re);return}m(ee,ne)})},q)}function D(q){if(this[hs].readyPromise!==null){if(q!=null){this[hs].readyPromise.then(()=>q(null,R),q);return}return this[hs].readyPromise}let Q,ee;if(process.nextTick(ne),this[hs].readyPromise=new Promise(function(X,ie){Q=X,ee=ie}),q)this[hs].readyPromise.then(()=>q(null,R),q);else return this[hs].readyPromise;function ne(){R[PS]((X,ie)=>{X||R[hs].started||R[hs].ready||R[hs].booting?re(X):(R[hs].booting=!0,BNe("onReady",R[PS],R,re)),ie()})}function re(X){if(X=X!=null&&UNe[X.code]!=null?JGt(X,new UNe[X.code](X.message)):X,X)return ee(X);Q(R),R[hs].booting=!1,R[hs].ready=!0,R[hs].promise=null}}function L(){return this}function Z(q,Q){if(B('Cannot call "addHook"!'),Q==null)throw new Ph.FST_ERR_HOOK_INVALID_HANDLER(q,Q);if(q==="onSend"||q==="preSerialization"||q==="onError"||q==="preParsing"){if(Q.constructor.name==="AsyncFunction"&&Q.length===4)throw new Ph.FST_ERR_HOOK_INVALID_ASYNC_HANDLER}else if(q==="onReady"||q==="onListen"){if(Q.constructor.name==="AsyncFunction"&&Q.length!==0)throw new Ph.FST_ERR_HOOK_INVALID_ASYNC_HANDLER}else if(q==="onRequestAbort"){if(Q.constructor.name==="AsyncFunction"&&Q.length!==1)throw new Ph.FST_ERR_HOOK_INVALID_ASYNC_HANDLER}else if(Q.constructor.name==="AsyncFunction"&&Q.length===3)throw new Ph.FST_ERR_HOOK_INVALID_ASYNC_HANDLER;return q==="onClose"?this.onClose(Q):q==="onReady"||q==="onListen"||q==="onRoute"?this[pH].add(q,Q):this.after((ne,re)=>{ee.call(this,q,Q),re(ne)}),this;function ee(ne,re){this[pH].add(ne,re),this[fH].forEach(X=>ee.call(X,ne,re))}}function W(q){return B('Cannot call "addSchema"!'),this[f0].add(q),this[fH].forEach(Q=>Q.addSchema(q)),this}function U(q,Q){if(q.code==="ECONNRESET"||Q.destroyed)return;let ee,ne,re,X;q.code==="ERR_HTTP_REQUEST_TIMEOUT"?(ne="408",re=dH.STATUS_CODES[ne],ee=`{"error":"${re}","message":"Client Timeout","statusCode":408}`,X="timeout"):q.code==="HPE_HEADER_OVERFLOW"?(ne="431",re=dH.STATUS_CODES[ne],ee=`{"error":"${re}","message":"Exceeded maximum allowed HTTP header size","statusCode":431}`,X="header_overflow"):(ne="400",re=dH.STATUS_CODES[ne],ee=`{"error":"${re}","message":"Client Error","statusCode":400}`,X="error"),this.log.trace({err:q},`client ${X}`),Q.writable&&Q.write(`HTTP/1.1 ${ne} ${re}\r Content-Length: ${ee.length}\r Content-Type: application/json\r \r -${ee}`),H.destroy(q)}function V(q,H){q.headers["accept-version"]!==void 0&&(q.headers[v9t]=q.headers["accept-version"],q.headers["accept-version"]=void 0),p.router.lookup(q,H)}function j(q,H,ee){if(o){let re=Gwe(P.server,H),X=Hwe(P,c,H,re),ie=new e3(re,null,H,null,X,P),ce=new RS(ee,ie,X);return i===!1&&X.info({req:ie},"incoming request"),o(new H9t(q),ie,ce)}let ne=`{"error":"Bad Request","code":"FST_ERR_BAD_URL","message":"'${q}' is not a valid url component","statusCode":400}`;ee.writeHead(400,{"Content-Type":"application/json","Content-Length":ne.length}),ee.end(ne)}function J(q,H,ee){if(q!==!1)return function(re){if(re){if(o){let ie=Gwe(P.server,H),ce=Hwe(P,c,H,ie),fe=new e3(ie,null,H,null,ce,P),Ne=new RS(ee,fe,ce);return i===!1&&ce.info({req:fe},"incoming request"),o(new j9t,fe,Ne)}let X='{"error":"Internal Server Error","message":"Unexpected error from async constraint","statusCode":500}';ee.writeHead(500,{"Content-Type":"application/json","Content-Length":X.length}),ee.end(X)}}}function se(q,H){return L('Cannot call "setNotFoundHandler"!'),p.setNotFoundHandler.call(this,q,H,N,f.routeHandler),this}function oe(q){return L('Cannot call "setValidatorCompiler"!'),this[Gp].setValidatorCompiler(q),this}function ue(q){return L('Cannot call "setSchemaErrorFormatter"!'),Jwe(q),this[pj]=q.bind(this),this}function Ce(q){return L('Cannot call "setSerializerCompiler"!'),this[Gp].setSerializerCompiler(q),this}function we(q){L('Cannot call "setSchemaController"!');let H=this[Gp],ee=qwe.buildSchemaController(H,Object.assign({},H.opts,q));return this[Gp]=ee,this.getSchema=ee.getSchema.bind(ee),this.getSchemas=ee.getSchemas.bind(ee),this}function qe(q){return L('Cannot call "setReplySerializer"!'),this[Uwe]=q,this}function Fe(q){return L('Cannot call "setErrorHandler"!'),this[ZP]=Ywe(this[ZP],q.bind(this)),this}function _e(q){return L('Cannot call "setChildLoggerFactory"!'),this[hj]=q,this}function U(q={}){return q.includeMeta=q.includeHooks?q.includeMeta?Aj.concat(q.includeMeta):Aj:q.includeMeta,f.printRoutes(q)}function G(q,{rewriteUrl:H,logger:ee}){let ne;return function(X,ie){if(ne===void 0&&(ne=q.isAsyncConstraint()),H){X.originalUrl=X.url;let ce=H.call(R,X);if(typeof ce=="string")X.url=ce;else{let fe=new eqt(X.url,typeof ce);X.destroy(fe)}}q.routing(X,ie,J(ne,X,ie))}}function z(q){return L('Cannot call "setGenReqId"!'),this[gj]=Vwe(this[fj].requestIdHeader,q),this}}t3.errorCodes=lh;function Jwe(t){if(typeof t!="function")throw new Kwe(typeof t);if(t.constructor.name==="AsyncFunction")throw new Kwe("AsyncFunction")}r3.exports=t3;r3.exports.fastify=t3;r3.exports.default=t3});var p2e=E((eMr,f2e)=>{var d2e=require("stream").Stream,Bqt=require("util");f2e.exports=tu;function tu(){this.source=null,this.dataSize=0,this.maxDataSize=1024*1024,this.pauseStream=!0,this._maxDataSizeExceeded=!1,this._released=!1,this._bufferedEvents=[]}Bqt.inherits(tu,d2e);tu.create=function(t,e){var r=new this;e=e||{};for(var n in e)r[n]=e[n];r.source=t;var s=t.emit;return t.emit=function(){return r._handleEmit(arguments),s.apply(t,arguments)},t.on("error",function(){}),r.pauseStream&&t.pause(),r};Object.defineProperty(tu.prototype,"readable",{configurable:!0,enumerable:!0,get:function(){return this.source.readable}});tu.prototype.setEncoding=function(){return this.source.setEncoding.apply(this.source,arguments)};tu.prototype.resume=function(){this._released||this.release(),this.source.resume()};tu.prototype.pause=function(){this.source.pause()};tu.prototype.release=function(){this._released=!0,this._bufferedEvents.forEach(function(t){this.emit.apply(this,t)}.bind(this)),this._bufferedEvents=[]};tu.prototype.pipe=function(){var t=d2e.prototype.pipe.apply(this,arguments);return this.resume(),t};tu.prototype._handleEmit=function(t){if(this._released){this.emit.apply(this,t);return}t[0]==="data"&&(this.dataSize+=t[1].length,this._checkIfMaxDataSizeExceeded()),this._bufferedEvents.push(t)};tu.prototype._checkIfMaxDataSizeExceeded=function(){if(!this._maxDataSizeExceeded&&!(this.dataSize<=this.maxDataSize)){this._maxDataSizeExceeded=!0;var t="DelayedStream#maxDataSize of "+this.maxDataSize+" bytes exceeded.";this.emit("error",new Error(t))}}});var A2e=E((tMr,g2e)=>{var Mqt=require("util"),h2e=require("stream").Stream,m2e=p2e();g2e.exports=Kn;function Kn(){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}Mqt.inherits(Kn,h2e);Kn.create=function(t){var e=new this;t=t||{};for(var r in t)e[r]=t[r];return e};Kn.isStreamLike=function(t){return typeof t!="function"&&typeof t!="string"&&typeof t!="boolean"&&typeof t!="number"&&!Buffer.isBuffer(t)};Kn.prototype.append=function(t){var e=Kn.isStreamLike(t);if(e){if(!(t instanceof m2e)){var r=m2e.create(t,{maxDataSize:1/0,pauseStream:this.pauseStreams});t.on("data",this._checkDataSize.bind(this)),t=r}this._handleErrors(t),this.pauseStreams&&t.pause()}return this._streams.push(t),this};Kn.prototype.pipe=function(t,e){return h2e.prototype.pipe.call(this,t,e),this.resume(),t};Kn.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}};Kn.prototype._realGetNext=function(){var t=this._streams.shift();if(typeof t>"u"){this.end();return}if(typeof t!="function"){this._pipeNext(t);return}var e=t;e(function(r){var n=Kn.isStreamLike(r);n&&(r.on("data",this._checkDataSize.bind(this)),this._handleErrors(r)),this._pipeNext(r)}.bind(this))};Kn.prototype._pipeNext=function(t){this._currentStream=t;var e=Kn.isStreamLike(t);if(e){t.on("end",this._getNext.bind(this)),t.pipe(this,{end:!1});return}var r=t;this.write(r),this._getNext()};Kn.prototype._handleErrors=function(t){var e=this;t.on("error",function(r){e._emitError(r)})};Kn.prototype.write=function(t){this.emit("data",t)};Kn.prototype.pause=function(){this.pauseStreams&&(this.pauseStreams&&this._currentStream&&typeof this._currentStream.pause=="function"&&this._currentStream.pause(),this.emit("pause"))};Kn.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")};Kn.prototype.end=function(){this._reset(),this.emit("end")};Kn.prototype.destroy=function(){this._reset(),this.emit("close")};Kn.prototype._reset=function(){this.writable=!1,this._streams=[],this._currentStream=null};Kn.prototype._checkDataSize=function(){if(this._updateDataSize(),!(this.dataSize<=this.maxDataSize)){var t="DelayedStream#maxDataSize of "+this.maxDataSize+" bytes exceeded.";this._emitError(new Error(t))}};Kn.prototype._updateDataSize=function(){this.dataSize=0;var t=this;this._streams.forEach(function(e){e.dataSize&&(t.dataSize+=e.dataSize)}),this._currentStream&&this._currentStream.dataSize&&(this.dataSize+=this._currentStream.dataSize)};Kn.prototype._emitError=function(t){this._reset(),this.emit("error",t)}});var y2e=E((rMr,Wqt)=>{Wqt.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 b2e=E((nMr,x2e)=>{x2e.exports=y2e()});var S2e=E(Qa=>{"use strict";var o3=b2e(),$qt=require("path").extname,E2e=/^\s*([^;\s]*)(?:;|\s|$)/,Fqt=/^text\//i;Qa.charset=_2e;Qa.charsets={lookup:_2e};Qa.contentType=Uqt;Qa.extension=qqt;Qa.extensions=Object.create(null);Qa.lookup=jqt;Qa.types=Object.create(null);Hqt(Qa.extensions,Qa.types);function _2e(t){if(!t||typeof t!="string")return!1;var e=E2e.exec(t),r=e&&o3[e[1].toLowerCase()];return r&&r.charset?r.charset:e&&Fqt.test(e[1])?"UTF-8":!1}function Uqt(t){if(!t||typeof t!="string")return!1;var e=t.indexOf("/")===-1?Qa.lookup(t):t;if(!e)return!1;if(e.indexOf("charset")===-1){var r=Qa.charset(e);r&&(e+="; charset="+r.toLowerCase())}return e}function qqt(t){if(!t||typeof t!="string")return!1;var e=E2e.exec(t),r=e&&Qa.extensions[e[1].toLowerCase()];return!r||!r.length?!1:r[0]}function jqt(t){if(!t||typeof t!="string")return!1;var e=$qt("x."+t).toLowerCase().substr(1);return e&&Qa.types[e]||!1}function Hqt(t,e){var r=["nginx","apache",void 0,"iana"];Object.keys(o3).forEach(function(s){var i=o3[s],a=i.extensions;if(!(!a||!a.length)){t[s]=a;for(var o=0;ol||u===l&&e[c].substr(0,12)==="application/"))continue}e[c]=s}}})}});var C2e=E((iMr,v2e)=>{v2e.exports=Qqt;function Qqt(t){var e=typeof setImmediate=="function"?setImmediate:typeof process=="object"&&typeof process.nextTick=="function"?process.nextTick:null;e?e(t):setTimeout(t,0)}});var Ej=E((aMr,T2e)=>{var I2e=C2e();T2e.exports=Gqt;function Gqt(t){var e=!1;return I2e(function(){e=!0}),function(n,s){e?t(n,s):I2e(function(){t(n,s)})}}});var _j=E((oMr,w2e)=>{w2e.exports=Vqt;function Vqt(t){Object.keys(t.jobs).forEach(zqt.bind(t)),t.jobs={}}function zqt(t){typeof this.jobs[t]=="function"&&this.jobs[t]()}});var Sj=E((cMr,N2e)=>{var R2e=Ej(),Kqt=_j();N2e.exports=Yqt;function Yqt(t,e,r,n){var s=r.keyedList?r.keyedList[r.index]:r.index;r.jobs[s]=Jqt(e,s,t[s],function(i,a){s in r.jobs&&(delete r.jobs[s],i?Kqt(r):r.results[s]=a,n(i,r.results))})}function Jqt(t,e,r,n){var s;return t.length==2?s=t(r,R2e(n)):s=t(r,e,R2e(n)),s}});var vj=E((uMr,O2e)=>{O2e.exports=Xqt;function Xqt(t,e){var r=!Array.isArray(t),n={index:0,keyedList:r||e?Object.keys(t):null,jobs:{},results:r?{}:[],size:r?Object.keys(t).length:t.length};return e&&n.keyedList.sort(r?e:function(s,i){return e(t[s],t[i])}),n}});var Cj=E((lMr,P2e)=>{var Zqt=_j(),ejt=Ej();P2e.exports=tjt;function tjt(t){Object.keys(this.jobs).length&&(this.index=this.size,Zqt(this),ejt(t)(null,this.results))}});var k2e=E((dMr,D2e)=>{var rjt=Sj(),njt=vj(),sjt=Cj();D2e.exports=ijt;function ijt(t,e,r){for(var n=njt(t);n.index<(n.keyedList||t).length;)rjt(t,e,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 sjt.bind(n,r)}});var Ij=E((fMr,c3)=>{var L2e=Sj(),ajt=vj(),ojt=Cj();c3.exports=cjt;c3.exports.ascending=B2e;c3.exports.descending=ujt;function cjt(t,e,r,n){var s=ajt(t,r);return L2e(t,e,s,function i(a,o){if(a){n(a,o);return}if(s.index++,s.index<(s.keyedList||t).length){L2e(t,e,s,i);return}n(null,s.results)}),ojt.bind(s,n)}function B2e(t,e){return te?1:0}function ujt(t,e){return-1*B2e(t,e)}});var W2e=E((pMr,M2e)=>{var ljt=Ij();M2e.exports=djt;function djt(t,e,r){return ljt(t,e,null,r)}});var F2e=E((mMr,$2e)=>{$2e.exports={parallel:k2e(),serial:W2e(),serialOrdered:Ij()}});var Tj=E((hMr,U2e)=>{"use strict";U2e.exports=Object});var j2e=E((gMr,q2e)=>{"use strict";q2e.exports=Error});var Q2e=E((AMr,H2e)=>{"use strict";H2e.exports=EvalError});var V2e=E((yMr,G2e)=>{"use strict";G2e.exports=RangeError});var K2e=E((xMr,z2e)=>{"use strict";z2e.exports=ReferenceError});var J2e=E((bMr,Y2e)=>{"use strict";Y2e.exports=SyntaxError});var Vp=E((EMr,X2e)=>{"use strict";X2e.exports=TypeError});var eRe=E((_Mr,Z2e)=>{"use strict";Z2e.exports=URIError});var rRe=E((SMr,tRe)=>{"use strict";tRe.exports=Math.abs});var sRe=E((vMr,nRe)=>{"use strict";nRe.exports=Math.floor});var aRe=E((CMr,iRe)=>{"use strict";iRe.exports=Math.max});var cRe=E((IMr,oRe)=>{"use strict";oRe.exports=Math.min});var lRe=E((TMr,uRe)=>{"use strict";uRe.exports=Math.pow});var fRe=E((wMr,dRe)=>{"use strict";dRe.exports=Math.round});var mRe=E((RMr,pRe)=>{"use strict";pRe.exports=Number.isNaN||function(e){return e!==e}});var gRe=E((NMr,hRe)=>{"use strict";var fjt=mRe();hRe.exports=function(e){return fjt(e)||e===0?e:e<0?-1:1}});var yRe=E((OMr,ARe)=>{"use strict";ARe.exports=Object.getOwnPropertyDescriptor});var wj=E((PMr,xRe)=>{"use strict";var u3=yRe();if(u3)try{u3([],"length")}catch{u3=null}xRe.exports=u3});var ERe=E((DMr,bRe)=>{"use strict";var l3=Object.defineProperty||!1;if(l3)try{l3({},"a",{value:1})}catch{l3=!1}bRe.exports=l3});var Rj=E((kMr,_Re)=>{"use strict";_Re.exports=function(){if(typeof Symbol!="function"||typeof Object.getOwnPropertySymbols!="function")return!1;if(typeof Symbol.iterator=="symbol")return!0;var e={},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;e[r]=s;for(var i in e)return!1;if(typeof Object.keys=="function"&&Object.keys(e).length!==0||typeof Object.getOwnPropertyNames=="function"&&Object.getOwnPropertyNames(e).length!==0)return!1;var a=Object.getOwnPropertySymbols(e);if(a.length!==1||a[0]!==r||!Object.prototype.propertyIsEnumerable.call(e,r))return!1;if(typeof Object.getOwnPropertyDescriptor=="function"){var o=Object.getOwnPropertyDescriptor(e,r);if(o.value!==s||o.enumerable!==!0)return!1}return!0}});var CRe=E((LMr,vRe)=>{"use strict";var SRe=typeof Symbol<"u"&&Symbol,pjt=Rj();vRe.exports=function(){return typeof SRe!="function"||typeof Symbol!="function"||typeof SRe("foo")!="symbol"||typeof Symbol("bar")!="symbol"?!1:pjt()}});var Nj=E((BMr,IRe)=>{"use strict";IRe.exports=typeof Reflect<"u"&&Reflect.getPrototypeOf||null});var Oj=E((MMr,TRe)=>{"use strict";var mjt=Tj();TRe.exports=mjt.getPrototypeOf||null});var NRe=E((WMr,RRe)=>{"use strict";var hjt="Function.prototype.bind called on incompatible ",gjt=Object.prototype.toString,Ajt=Math.max,yjt="[object Function]",wRe=function(e,r){for(var n=[],s=0;s{"use strict";var Ejt=NRe();ORe.exports=Function.prototype.bind||Ejt});var d3=E((FMr,PRe)=>{"use strict";PRe.exports=Function.prototype.call});var Pj=E((UMr,DRe)=>{"use strict";DRe.exports=Function.prototype.apply});var LRe=E((qMr,kRe)=>{"use strict";kRe.exports=typeof Reflect<"u"&&Reflect&&Reflect.apply});var MRe=E((jMr,BRe)=>{"use strict";var _jt=DS(),Sjt=Pj(),vjt=d3(),Cjt=LRe();BRe.exports=Cjt||_jt.call(vjt,Sjt)});var Dj=E((HMr,WRe)=>{"use strict";var Ijt=DS(),Tjt=Vp(),wjt=d3(),Rjt=MRe();WRe.exports=function(e){if(e.length<1||typeof e[0]!="function")throw new Tjt("a function is required");return Rjt(Ijt,wjt,e)}});var HRe=E((QMr,jRe)=>{"use strict";var Njt=Dj(),$Re=wj(),URe;try{URe=[].__proto__===Array.prototype}catch(t){if(!t||typeof t!="object"||!("code"in t)||t.code!=="ERR_PROTO_ACCESS")throw t}var kj=!!URe&&$Re&&$Re(Object.prototype,"__proto__"),qRe=Object,FRe=qRe.getPrototypeOf;jRe.exports=kj&&typeof kj.get=="function"?Njt([kj.get]):typeof FRe=="function"?function(e){return FRe(e==null?e:qRe(e))}:!1});var KRe=E((GMr,zRe)=>{"use strict";var QRe=Nj(),GRe=Oj(),VRe=HRe();zRe.exports=QRe?function(e){return QRe(e)}:GRe?function(e){if(!e||typeof e!="object"&&typeof e!="function")throw new TypeError("getProto: not an object");return GRe(e)}:VRe?function(e){return VRe(e)}:null});var f3=E((VMr,YRe)=>{"use strict";var Ojt=Function.prototype.call,Pjt=Object.prototype.hasOwnProperty,Djt=DS();YRe.exports=Djt.call(Ojt,Pjt)});var MS=E((zMr,rNe)=>{"use strict";var ur,kjt=Tj(),Ljt=j2e(),Bjt=Q2e(),Mjt=V2e(),Wjt=K2e(),ux=J2e(),cx=Vp(),$jt=eRe(),Fjt=rRe(),Ujt=sRe(),qjt=aRe(),jjt=cRe(),Hjt=lRe(),Qjt=fRe(),Gjt=gRe(),eNe=Function,Lj=function(t){try{return eNe('"use strict"; return ('+t+").constructor;")()}catch{}},kS=wj(),Vjt=ERe(),Bj=function(){throw new cx},zjt=kS?function(){try{return arguments.callee,Bj}catch{try{return kS(arguments,"callee").get}catch{return Bj}}}():Bj,ax=CRe()(),Vs=KRe(),Kjt=Oj(),Yjt=Nj(),tNe=Pj(),LS=d3(),ox={},Jjt=typeof Uint8Array>"u"||!Vs?ur:Vs(Uint8Array),dh={__proto__:null,"%AggregateError%":typeof AggregateError>"u"?ur:AggregateError,"%Array%":Array,"%ArrayBuffer%":typeof ArrayBuffer>"u"?ur:ArrayBuffer,"%ArrayIteratorPrototype%":ax&&Vs?Vs([][Symbol.iterator]()):ur,"%AsyncFromSyncIteratorPrototype%":ur,"%AsyncFunction%":ox,"%AsyncGenerator%":ox,"%AsyncGeneratorFunction%":ox,"%AsyncIteratorPrototype%":ox,"%Atomics%":typeof Atomics>"u"?ur:Atomics,"%BigInt%":typeof BigInt>"u"?ur:BigInt,"%BigInt64Array%":typeof BigInt64Array>"u"?ur:BigInt64Array,"%BigUint64Array%":typeof BigUint64Array>"u"?ur:BigUint64Array,"%Boolean%":Boolean,"%DataView%":typeof DataView>"u"?ur:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":Ljt,"%eval%":eval,"%EvalError%":Bjt,"%Float16Array%":typeof Float16Array>"u"?ur:Float16Array,"%Float32Array%":typeof Float32Array>"u"?ur:Float32Array,"%Float64Array%":typeof Float64Array>"u"?ur:Float64Array,"%FinalizationRegistry%":typeof FinalizationRegistry>"u"?ur:FinalizationRegistry,"%Function%":eNe,"%GeneratorFunction%":ox,"%Int8Array%":typeof Int8Array>"u"?ur:Int8Array,"%Int16Array%":typeof Int16Array>"u"?ur:Int16Array,"%Int32Array%":typeof Int32Array>"u"?ur:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":ax&&Vs?Vs(Vs([][Symbol.iterator]())):ur,"%JSON%":typeof JSON=="object"?JSON:ur,"%Map%":typeof Map>"u"?ur:Map,"%MapIteratorPrototype%":typeof Map>"u"||!ax||!Vs?ur:Vs(new Map()[Symbol.iterator]()),"%Math%":Math,"%Number%":Number,"%Object%":kjt,"%Object.getOwnPropertyDescriptor%":kS,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":typeof Promise>"u"?ur:Promise,"%Proxy%":typeof Proxy>"u"?ur:Proxy,"%RangeError%":Mjt,"%ReferenceError%":Wjt,"%Reflect%":typeof Reflect>"u"?ur:Reflect,"%RegExp%":RegExp,"%Set%":typeof Set>"u"?ur:Set,"%SetIteratorPrototype%":typeof Set>"u"||!ax||!Vs?ur:Vs(new Set()[Symbol.iterator]()),"%SharedArrayBuffer%":typeof SharedArrayBuffer>"u"?ur:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":ax&&Vs?Vs(""[Symbol.iterator]()):ur,"%Symbol%":ax?Symbol:ur,"%SyntaxError%":ux,"%ThrowTypeError%":zjt,"%TypedArray%":Jjt,"%TypeError%":cx,"%Uint8Array%":typeof Uint8Array>"u"?ur:Uint8Array,"%Uint8ClampedArray%":typeof Uint8ClampedArray>"u"?ur:Uint8ClampedArray,"%Uint16Array%":typeof Uint16Array>"u"?ur:Uint16Array,"%Uint32Array%":typeof Uint32Array>"u"?ur:Uint32Array,"%URIError%":$jt,"%WeakMap%":typeof WeakMap>"u"?ur:WeakMap,"%WeakRef%":typeof WeakRef>"u"?ur:WeakRef,"%WeakSet%":typeof WeakSet>"u"?ur:WeakSet,"%Function.prototype.call%":LS,"%Function.prototype.apply%":tNe,"%Object.defineProperty%":Vjt,"%Object.getPrototypeOf%":Kjt,"%Math.abs%":Fjt,"%Math.floor%":Ujt,"%Math.max%":qjt,"%Math.min%":jjt,"%Math.pow%":Hjt,"%Math.round%":Qjt,"%Math.sign%":Gjt,"%Reflect.getPrototypeOf%":Yjt};if(Vs)try{null.error}catch(t){JRe=Vs(Vs(t)),dh["%Error.prototype%"]=JRe}var JRe,Xjt=function t(e){var r;if(e==="%AsyncFunction%")r=Lj("async function () {}");else if(e==="%GeneratorFunction%")r=Lj("function* () {}");else if(e==="%AsyncGeneratorFunction%")r=Lj("async function* () {}");else if(e==="%AsyncGenerator%"){var n=t("%AsyncGeneratorFunction%");n&&(r=n.prototype)}else if(e==="%AsyncIteratorPrototype%"){var s=t("%AsyncGenerator%");s&&Vs&&(r=Vs(s.prototype))}return dh[e]=r,r},XRe={__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"]},BS=DS(),p3=f3(),Zjt=BS.call(LS,Array.prototype.concat),eHt=BS.call(tNe,Array.prototype.splice),ZRe=BS.call(LS,String.prototype.replace),m3=BS.call(LS,String.prototype.slice),tHt=BS.call(LS,RegExp.prototype.exec),rHt=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,nHt=/\\(\\)?/g,sHt=function(e){var r=m3(e,0,1),n=m3(e,-1);if(r==="%"&&n!=="%")throw new ux("invalid intrinsic syntax, expected closing `%`");if(n==="%"&&r!=="%")throw new ux("invalid intrinsic syntax, expected opening `%`");var s=[];return ZRe(e,rHt,function(i,a,o,c){s[s.length]=o?ZRe(c,nHt,"$1"):a||i}),s},iHt=function(e,r){var n=e,s;if(p3(XRe,n)&&(s=XRe[n],n="%"+s[0]+"%"),p3(dh,n)){var i=dh[n];if(i===ox&&(i=Xjt(n)),typeof i>"u"&&!r)throw new cx("intrinsic "+e+" exists, but is not available. Please file an issue!");return{alias:s,name:n,value:i}}throw new ux("intrinsic "+e+" does not exist!")};rNe.exports=function(e,r){if(typeof e!="string"||e.length===0)throw new cx("intrinsic name must be a non-empty string");if(arguments.length>1&&typeof r!="boolean")throw new cx('"allowMissing" argument must be a boolean');if(tHt(/^%?[^%]*%?$/,e)===null)throw new ux("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var n=sHt(e),s=n.length>0?n[0]:"",i=iHt("%"+s+"%",r),a=i.name,o=i.value,c=!1,u=i.alias;u&&(s=u[0],eHt(n,Zjt([0,1],u)));for(var l=1,d=!0;l=n.length){var h=kS(o,f);d=!!h,d&&"get"in h&&!("originalValue"in h.get)?o=h.get:o=o[f]}else d=p3(o,f),o=o[f];d&&!c&&(dh[a]=o)}}return o}});var sNe=E((KMr,nNe)=>{"use strict";var aHt=Rj();nNe.exports=function(){return aHt()&&!!Symbol.toStringTag}});var oNe=E((YMr,aNe)=>{"use strict";var oHt=MS(),iNe=oHt("%Object.defineProperty%",!0),cHt=sNe()(),uHt=f3(),lHt=Vp(),h3=cHt?Symbol.toStringTag:null;aNe.exports=function(e,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 lHt("if provided, the `overrideIfSet` and `nonConfigurable` options must be booleans");h3&&(n||!uHt(e,h3))&&(iNe?iNe(e,h3,{configurable:!s,enumerable:!1,value:r,writable:!1}):e[h3]=r)}});var uNe=E((JMr,cNe)=>{"use strict";cNe.exports=function(t,e){return Object.keys(e).forEach(function(r){t[r]=t[r]||e[r]}),t}});var dNe=E((XMr,lNe)=>{"use strict";var Fj=A2e(),dHt=require("util"),Mj=require("path"),fHt=require("http"),pHt=require("https"),mHt=require("url").parse,hHt=require("fs"),gHt=require("stream").Stream,AHt=require("crypto"),Wj=S2e(),yHt=F2e(),xHt=oNe(),zp=f3(),$j=uNe();function Tr(t){if(!(this instanceof Tr))return new Tr(t);this._overheadLength=0,this._valueLength=0,this._valuesToMeasure=[],Fj.call(this),t=t||{};for(var e in t)this[e]=t[e]}dHt.inherits(Tr,Fj);Tr.LINE_BREAK=`\r -`;Tr.DEFAULT_CONTENT_TYPE="application/octet-stream";Tr.prototype.append=function(t,e,r){r=r||{},typeof r=="string"&&(r={filename:r});var n=Fj.prototype.append.bind(this);if((typeof e=="number"||e==null)&&(e=String(e)),Array.isArray(e)){this._error(new Error("Arrays are not supported."));return}var s=this._multiPartHeader(t,e,r),i=this._multiPartFooter();n(s),n(e),n(i),this._trackLength(s,e,r)};Tr.prototype._trackLength=function(t,e,r){var n=0;r.knownLength!=null?n+=Number(r.knownLength):Buffer.isBuffer(e)?n=e.length:typeof e=="string"&&(n=Buffer.byteLength(e)),this._valueLength+=n,this._overheadLength+=Buffer.byteLength(t)+Tr.LINE_BREAK.length,!(!e||!e.path&&!(e.readable&&zp(e,"httpVersion"))&&!(e instanceof gHt))&&(r.knownLength||this._valuesToMeasure.push(e))};Tr.prototype._lengthRetriever=function(t,e){zp(t,"fd")?t.end!=null&&t.end!=1/0&&t.start!=null?e(null,t.end+1-(t.start?t.start:0)):hHt.stat(t.path,function(r,n){if(r){e(r);return}var s=n.size-(t.start?t.start:0);e(null,s)}):zp(t,"httpVersion")?e(null,Number(t.headers["content-length"])):zp(t,"httpModule")?(t.on("response",function(r){t.pause(),e(null,Number(r.headers["content-length"]))}),t.resume()):e("Unknown stream")};Tr.prototype._multiPartHeader=function(t,e,r){if(typeof r.header=="string")return r.header;var n=this._getContentDisposition(e,r),s=this._getContentType(e,r),i="",a={"Content-Disposition":["form-data",'name="'+t+'"'].concat(n||[]),"Content-Type":[].concat(s||[])};typeof r.header=="object"&&$j(a,r.header);var o;for(var c in a)if(zp(a,c)){if(o=a[c],o==null)continue;Array.isArray(o)||(o=[o]),o.length&&(i+=c+": "+o.join("; ")+Tr.LINE_BREAK)}return"--"+this.getBoundary()+Tr.LINE_BREAK+i+Tr.LINE_BREAK};Tr.prototype._getContentDisposition=function(t,e){var r;if(typeof e.filepath=="string"?r=Mj.normalize(e.filepath).replace(/\\/g,"/"):e.filename||t&&(t.name||t.path)?r=Mj.basename(e.filename||t&&(t.name||t.path)):t&&t.readable&&zp(t,"httpVersion")&&(r=Mj.basename(t.client._httpMessage.path||"")),r)return'filename="'+r+'"'};Tr.prototype._getContentType=function(t,e){var r=e.contentType;return!r&&t&&t.name&&(r=Wj.lookup(t.name)),!r&&t&&t.path&&(r=Wj.lookup(t.path)),!r&&t&&t.readable&&zp(t,"httpVersion")&&(r=t.headers["content-type"]),!r&&(e.filepath||e.filename)&&(r=Wj.lookup(e.filepath||e.filename)),!r&&t&&typeof t=="object"&&(r=Tr.DEFAULT_CONTENT_TYPE),r};Tr.prototype._multiPartFooter=function(){return function(t){var e=Tr.LINE_BREAK,r=this._streams.length===0;r&&(e+=this._lastBoundary()),t(e)}.bind(this)};Tr.prototype._lastBoundary=function(){return"--"+this.getBoundary()+"--"+Tr.LINE_BREAK};Tr.prototype.getHeaders=function(t){var e,r={"content-type":"multipart/form-data; boundary="+this.getBoundary()};for(e in t)zp(t,e)&&(r[e.toLowerCase()]=t[e]);return r};Tr.prototype.setBoundary=function(t){if(typeof t!="string")throw new TypeError("FormData boundary must be a string");this._boundary=t};Tr.prototype.getBoundary=function(){return this._boundary||this._generateBoundary(),this._boundary};Tr.prototype.getBuffer=function(){for(var t=new Buffer.alloc(0),e=this.getBoundary(),r=0,n=this._streams.length;r{"use strict";var LHt=require("url").parse,BHt={ftp:21,gopher:70,http:80,https:443,ws:80,wss:443},MHt=String.prototype.endsWith||function(t){return t.length<=this.length&&this.indexOf(t,this.length-t.length)!==-1};function WHt(t){var e=typeof t=="string"?LHt(t):t||{},r=e.protocol,n=e.host,s=e.port;if(typeof n!="string"||!n||typeof r!="string"||(r=r.split(":",1)[0],n=n.replace(/:\d*$/,""),s=parseInt(s)||BHt[r]||0,!$Ht(n,s)))return"";var i=px("npm_config_"+r+"_proxy")||px(r+"_proxy")||px("npm_config_proxy")||px("all_proxy");return i&&i.indexOf("://")===-1&&(i=r+"://"+i),i}function $Ht(t,e){var r=(px("npm_config_no_proxy")||px("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!==e?!0:/^[.*]/.test(i)?(i.charAt(0)==="*"&&(i=i.slice(1)),!MHt.call(t,i)):t!==i}):!0}function px(t){return process.env[t.toLowerCase()]||process.env[t.toUpperCase()]||""}INe.getProxyForUrl=WHt});var RNe=E((Z6r,wNe)=>{var mx=1e3,hx=mx*60,gx=hx*60,mh=gx*24,FHt=mh*7,UHt=mh*365.25;wNe.exports=function(t,e){e=e||{};var r=typeof t;if(r==="string"&&t.length>0)return qHt(t);if(r==="number"&&isFinite(t))return e.long?HHt(t):jHt(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))};function qHt(t){if(t=String(t),!(t.length>100)){var e=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(t);if(e){var r=parseFloat(e[1]),n=(e[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*UHt;case"weeks":case"week":case"w":return r*FHt;case"days":case"day":case"d":return r*mh;case"hours":case"hour":case"hrs":case"hr":case"h":return r*gx;case"minutes":case"minute":case"mins":case"min":case"m":return r*hx;case"seconds":case"second":case"secs":case"sec":case"s":return r*mx;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function jHt(t){var e=Math.abs(t);return e>=mh?Math.round(t/mh)+"d":e>=gx?Math.round(t/gx)+"h":e>=hx?Math.round(t/hx)+"m":e>=mx?Math.round(t/mx)+"s":t+"ms"}function HHt(t){var e=Math.abs(t);return e>=mh?x3(t,e,mh,"day"):e>=gx?x3(t,e,gx,"hour"):e>=hx?x3(t,e,hx,"minute"):e>=mx?x3(t,e,mx,"second"):t+" ms"}function x3(t,e,r,n){var s=e>=r*1.5;return Math.round(t/r)+" "+n+(s?"s":"")}});var Yj=E((e5r,NNe)=>{function QHt(t){r.debug=r,r.default=r,r.coerce=c,r.disable=a,r.enable=s,r.enabled=o,r.humanize=RNe(),r.destroy=u,Object.keys(t).forEach(l=>{r[l]=t[l]}),r.names=[],r.skips=[],r.formatters={};function e(l){let d=0;for(let f=0;f{if(C==="%%")return"%";x++;let w=r.formatters[R];if(typeof w=="function"){let N=A[x];C=w.call(g,N),A.splice(x,1),x--}return C}),r.formatArgs.call(g,A),(g.log||r.log).apply(g,A)}return h.namespace=l,h.useColors=r.useColors(),h.color=r.selectColor(l),h.extend=n,h.destroy=r.destroy,Object.defineProperty(h,"enabled",{enumerable:!0,configurable:!1,get:()=>f!==null?f:(p!==r.namespaces&&(p=r.namespaces,m=r.enabled(l)),m),set:A=>{f=A}}),typeof r.init=="function"&&r.init(h),h}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,p=0,m=-1,h=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}NNe.exports=QHt});var ONe=E((Ga,b3)=>{Ga.formatArgs=VHt;Ga.save=zHt;Ga.load=KHt;Ga.useColors=GHt;Ga.storage=YHt();Ga.destroy=(()=>{let t=!1;return()=>{t||(t=!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`."))}})();Ga.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 GHt(){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 t;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&&(t=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(t[1],10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function VHt(t){if(t[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+t[0]+(this.useColors?"%c ":" ")+"+"+b3.exports.humanize(this.diff),!this.useColors)return;let e="color: "+this.color;t.splice(1,0,e,"color: inherit");let r=0,n=0;t[0].replace(/%[a-zA-Z%]/g,s=>{s!=="%%"&&(r++,s==="%c"&&(n=r))}),t.splice(n,0,e)}Ga.log=console.debug||console.log||(()=>{});function zHt(t){try{t?Ga.storage.setItem("debug",t):Ga.storage.removeItem("debug")}catch{}}function KHt(){let t;try{t=Ga.storage.getItem("debug")||Ga.storage.getItem("DEBUG")}catch{}return!t&&typeof process<"u"&&"env"in process&&(t=process.env.DEBUG),t}function YHt(){try{return localStorage}catch{}}b3.exports=Yj()(Ga);var{formatters:JHt}=b3.exports;JHt.j=function(t){try{return JSON.stringify(t)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}});var DNe=E((t5r,PNe)=>{"use strict";PNe.exports=(t,e=process.argv)=>{let r=t.startsWith("-")?"":t.length===1?"-":"--",n=e.indexOf(r+t),s=e.indexOf("--");return n!==-1&&(s===-1||n{"use strict";var XHt=require("os"),kNe=require("tty"),lc=DNe(),{env:zs}=process,Jp;lc("no-color")||lc("no-colors")||lc("color=false")||lc("color=never")?Jp=0:(lc("color")||lc("colors")||lc("color=true")||lc("color=always"))&&(Jp=1);"FORCE_COLOR"in zs&&(zs.FORCE_COLOR==="true"?Jp=1:zs.FORCE_COLOR==="false"?Jp=0:Jp=zs.FORCE_COLOR.length===0?1:Math.min(parseInt(zs.FORCE_COLOR,10),3));function Jj(t){return t===0?!1:{level:t,hasBasic:!0,has256:t>=2,has16m:t>=3}}function Xj(t,e){if(Jp===0)return 0;if(lc("color=16m")||lc("color=full")||lc("color=truecolor"))return 3;if(lc("color=256"))return 2;if(t&&!e&&Jp===void 0)return 0;let r=Jp||0;if(zs.TERM==="dumb")return r;if(process.platform==="win32"){let n=XHt.release().split(".");return Number(n[0])>=10&&Number(n[2])>=10586?Number(n[2])>=14931?3:2:1}if("CI"in zs)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE"].some(n=>n in zs)||zs.CI_NAME==="codeship"?1:r;if("TEAMCITY_VERSION"in zs)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(zs.TEAMCITY_VERSION)?1:0;if(zs.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in zs){let n=parseInt((zs.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(zs.TERM_PROGRAM){case"iTerm.app":return n>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(zs.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(zs.TERM)||"COLORTERM"in zs?1:r}function ZHt(t){let e=Xj(t,t&&t.isTTY);return Jj(e)}LNe.exports={supportsColor:ZHt,stdout:Jj(Xj(!0,kNe.isatty(1))),stderr:Jj(Xj(!0,kNe.isatty(2)))}});var WNe=E((Ks,_3)=>{var eQt=require("tty"),E3=require("util");Ks.init=oQt;Ks.log=sQt;Ks.formatArgs=rQt;Ks.save=iQt;Ks.load=aQt;Ks.useColors=tQt;Ks.destroy=E3.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");Ks.colors=[6,2,3,4,5,1];try{let t=BNe();t&&(t.stderr||t).level>=2&&(Ks.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{}Ks.inspectOpts=Object.keys(process.env).filter(t=>/^debug_/i.test(t)).reduce((t,e)=>{let r=e.substring(6).toLowerCase().replace(/_([a-z])/g,(s,i)=>i.toUpperCase()),n=process.env[e];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),t[r]=n,t},{});function tQt(){return"colors"in Ks.inspectOpts?!!Ks.inspectOpts.colors:eQt.isatty(process.stderr.fd)}function rQt(t){let{namespace:e,useColors:r}=this;if(r){let n=this.color,s="\x1B[3"+(n<8?n:"8;5;"+n),i=` ${s};1m${e} \x1B[0m`;t[0]=i+t[0].split(` +${ee}`),Q.destroy(q)}function z(q,Q){q.headers["accept-version"]!==void 0&&(q.headers[PGt]=q.headers["accept-version"],q.headers["accept-version"]=void 0),p.router.lookup(q,Q)}function j(q,Q,ee){if(o){let re=WNe(k.server,Q),X=LNe(k,c,Q,re),ie=new S3(re,null,Q,null,X,k),ce=new BS(ee,ie,X);return i===!1&&X.info({req:ie},"incoming request"),o(new ZGt(q),ie,ce)}let ne=`{"error":"Bad Request","code":"FST_ERR_BAD_URL","message":"'${q}' is not a valid url component","statusCode":400}`;ee.writeHead(400,{"Content-Type":"application/json","Content-Length":ne.length}),ee.end(ne)}function J(q,Q,ee){if(q!==!1)return function(re){if(re){if(o){let ie=WNe(k.server,Q),ce=LNe(k,c,Q,ie),me=new S3(ie,null,Q,null,ce,k),Oe=new BS(ee,me,ce);return i===!1&&ce.info({req:me},"incoming request"),o(new XGt,me,Oe)}let X='{"error":"Internal Server Error","message":"Unexpected error from async constraint","statusCode":500}';ee.writeHead(500,{"Content-Type":"application/json","Content-Length":X.length}),ee.end(X)}}}function se(q,Q){return B('Cannot call "setNotFoundHandler"!'),p.setNotFoundHandler.call(this,q,Q,N,f.routeHandler),this}function oe(q){return B('Cannot call "setValidatorCompiler"!'),this[f0].setValidatorCompiler(q),this}function ue(q){return B('Cannot call "setSchemaErrorFormatter"!'),jNe(q),this[hH]=q.bind(this),this}function Te(q){return B('Cannot call "setSerializerCompiler"!'),this[f0].setSerializerCompiler(q),this}function Ne(q){B('Cannot call "setSchemaController"!');let Q=this[f0],ee=DNe.buildSchemaController(Q,Object.assign({},Q.opts,q));return this[f0]=ee,this.getSchema=ee.getSchema.bind(ee),this.getSchemas=ee.getSchemas.bind(ee),this}function je(q){return B('Cannot call "setReplySerializer"!'),this[PNe]=q,this}function Fe(q){return B('Cannot call "setErrorHandler"!'),this[v3]=qNe(this[v3],q.bind(this)),this}function ve(q){return B('Cannot call "setChildLoggerFactory"!'),this[yH]=q,this}function F(q={}){return q.includeMeta=q.includeHooks?q.includeMeta?xH.concat(q.includeMeta):xH:q.includeMeta,f.printRoutes(q)}function G(q,{rewriteUrl:Q,logger:ee}){let ne;return function(X,ie){if(ne===void 0&&(ne=q.isAsyncConstraint()),Q){X.originalUrl=X.url;let ce=Q.call(R,X);if(typeof ce=="string")X.url=ce;else{let me=new uzt(X.url,typeof ce);X.destroy(me)}}q.routing(X,ie,J(ne,X,ie))}}function K(q){return B('Cannot call "setGenReqId"!'),this[AH]=$Ne(this[mH].requestIdHeader,q),this}}I3.errorCodes=Ph;function jNe(t){if(typeof t!="function")throw new FNe(typeof t);if(t.constructor.name==="AsyncFunction")throw new FNe("AsyncFunction")}C3.exports=I3;C3.exports.fastify=I3;C3.exports.default=I3});var iOe=_((lqr,sOe)=>{var nOe=require("stream").Stream,Hzt=require("util");sOe.exports=pu;function pu(){this.source=null,this.dataSize=0,this.maxDataSize=1024*1024,this.pauseStream=!0,this._maxDataSizeExceeded=!1,this._released=!1,this._bufferedEvents=[]}Hzt.inherits(pu,nOe);pu.create=function(t,e){var r=new this;e=e||{};for(var n in e)r[n]=e[n];r.source=t;var s=t.emit;return t.emit=function(){return r._handleEmit(arguments),s.apply(t,arguments)},t.on("error",function(){}),r.pauseStream&&t.pause(),r};Object.defineProperty(pu.prototype,"readable",{configurable:!0,enumerable:!0,get:function(){return this.source.readable}});pu.prototype.setEncoding=function(){return this.source.setEncoding.apply(this.source,arguments)};pu.prototype.resume=function(){this._released||this.release(),this.source.resume()};pu.prototype.pause=function(){this.source.pause()};pu.prototype.release=function(){this._released=!0,this._bufferedEvents.forEach(function(t){this.emit.apply(this,t)}.bind(this)),this._bufferedEvents=[]};pu.prototype.pipe=function(){var t=nOe.prototype.pipe.apply(this,arguments);return this.resume(),t};pu.prototype._handleEmit=function(t){if(this._released){this.emit.apply(this,t);return}t[0]==="data"&&(this.dataSize+=t[1].length,this._checkIfMaxDataSizeExceeded()),this._bufferedEvents.push(t)};pu.prototype._checkIfMaxDataSizeExceeded=function(){if(!this._maxDataSizeExceeded&&!(this.dataSize<=this.maxDataSize)){this._maxDataSizeExceeded=!0;var t="DelayedStream#maxDataSize of "+this.maxDataSize+" bytes exceeded.";this.emit("error",new Error(t))}}});var uOe=_((dqr,cOe)=>{var Gzt=require("util"),oOe=require("stream").Stream,aOe=iOe();cOe.exports=Yn;function Yn(){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}Gzt.inherits(Yn,oOe);Yn.create=function(t){var e=new this;t=t||{};for(var r in t)e[r]=t[r];return e};Yn.isStreamLike=function(t){return typeof t!="function"&&typeof t!="string"&&typeof t!="boolean"&&typeof t!="number"&&!Buffer.isBuffer(t)};Yn.prototype.append=function(t){var e=Yn.isStreamLike(t);if(e){if(!(t instanceof aOe)){var r=aOe.create(t,{maxDataSize:1/0,pauseStream:this.pauseStreams});t.on("data",this._checkDataSize.bind(this)),t=r}this._handleErrors(t),this.pauseStreams&&t.pause()}return this._streams.push(t),this};Yn.prototype.pipe=function(t,e){return oOe.prototype.pipe.call(this,t,e),this.resume(),t};Yn.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}};Yn.prototype._realGetNext=function(){var t=this._streams.shift();if(typeof t>"u"){this.end();return}if(typeof t!="function"){this._pipeNext(t);return}var e=t;e(function(r){var n=Yn.isStreamLike(r);n&&(r.on("data",this._checkDataSize.bind(this)),this._handleErrors(r)),this._pipeNext(r)}.bind(this))};Yn.prototype._pipeNext=function(t){this._currentStream=t;var e=Yn.isStreamLike(t);if(e){t.on("end",this._getNext.bind(this)),t.pipe(this,{end:!1});return}var r=t;this.write(r),this._getNext()};Yn.prototype._handleErrors=function(t){var e=this;t.on("error",function(r){e._emitError(r)})};Yn.prototype.write=function(t){this.emit("data",t)};Yn.prototype.pause=function(){this.pauseStreams&&(this.pauseStreams&&this._currentStream&&typeof this._currentStream.pause=="function"&&this._currentStream.pause(),this.emit("pause"))};Yn.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")};Yn.prototype.end=function(){this._reset(),this.emit("end")};Yn.prototype.destroy=function(){this._reset(),this.emit("close")};Yn.prototype._reset=function(){this.writable=!1,this._streams=[],this._currentStream=null};Yn.prototype._checkDataSize=function(){if(this._updateDataSize(),!(this.dataSize<=this.maxDataSize)){var t="DelayedStream#maxDataSize of "+this.maxDataSize+" bytes exceeded.";this._emitError(new Error(t))}};Yn.prototype._updateDataSize=function(){this.dataSize=0;var t=this;this._streams.forEach(function(e){e.dataSize&&(t.dataSize+=e.dataSize)}),this._currentStream&&this._currentStream.dataSize&&(this.dataSize+=this._currentStream.dataSize)};Yn.prototype._emitError=function(t){this._reset(),this.emit("error",t)}});var lOe=_((fqr,zzt)=>{zzt.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 fOe=_((pqr,dOe)=>{dOe.exports=lOe()});var hOe=_(eo=>{"use strict";var O3=fOe(),Kzt=require("path").extname,pOe=/^\s*([^;\s]*)(?:;|\s|$)/,Vzt=/^text\//i;eo.charset=mOe;eo.charsets={lookup:mOe};eo.contentType=Yzt;eo.extension=Jzt;eo.extensions=Object.create(null);eo.lookup=Xzt;eo.types=Object.create(null);Zzt(eo.extensions,eo.types);function mOe(t){if(!t||typeof t!="string")return!1;var e=pOe.exec(t),r=e&&O3[e[1].toLowerCase()];return r&&r.charset?r.charset:e&&Vzt.test(e[1])?"UTF-8":!1}function Yzt(t){if(!t||typeof t!="string")return!1;var e=t.indexOf("/")===-1?eo.lookup(t):t;if(!e)return!1;if(e.indexOf("charset")===-1){var r=eo.charset(e);r&&(e+="; charset="+r.toLowerCase())}return e}function Jzt(t){if(!t||typeof t!="string")return!1;var e=pOe.exec(t),r=e&&eo.extensions[e[1].toLowerCase()];return!r||!r.length?!1:r[0]}function Xzt(t){if(!t||typeof t!="string")return!1;var e=Kzt("x."+t).toLowerCase().substr(1);return e&&eo.types[e]||!1}function Zzt(t,e){var r=["nginx","apache",void 0,"iana"];Object.keys(O3).forEach(function(s){var i=O3[s],a=i.extensions;if(!(!a||!a.length)){t[s]=a;for(var o=0;ol||u===l&&e[c].substr(0,12)==="application/"))continue}e[c]=s}}})}});var yOe=_((hqr,gOe)=>{gOe.exports=eKt;function eKt(t){var e=typeof setImmediate=="function"?setImmediate:typeof process=="object"&&typeof process.nextTick=="function"?process.nextTick:null;e?e(t):setTimeout(t,0)}});var vH=_((gqr,xOe)=>{var AOe=yOe();xOe.exports=tKt;function tKt(t){var e=!1;return AOe(function(){e=!0}),function(n,s){e?t(n,s):AOe(function(){t(n,s)})}}});var SH=_((yqr,bOe)=>{bOe.exports=rKt;function rKt(t){Object.keys(t.jobs).forEach(nKt.bind(t)),t.jobs={}}function nKt(t){typeof this.jobs[t]=="function"&&this.jobs[t]()}});var IH=_((Aqr,EOe)=>{var _Oe=vH(),sKt=SH();EOe.exports=iKt;function iKt(t,e,r,n){var s=r.keyedList?r.keyedList[r.index]:r.index;r.jobs[s]=aKt(e,s,t[s],function(i,a){s in r.jobs&&(delete r.jobs[s],i?sKt(r):r.results[s]=a,n(i,r.results))})}function aKt(t,e,r,n){var s;return t.length==2?s=t(r,_Oe(n)):s=t(r,e,_Oe(n)),s}});var CH=_((xqr,vOe)=>{vOe.exports=oKt;function oKt(t,e){var r=!Array.isArray(t),n={index:0,keyedList:r||e?Object.keys(t):null,jobs:{},results:r?{}:[],size:r?Object.keys(t).length:t.length};return e&&n.keyedList.sort(r?e:function(s,i){return e(t[s],t[i])}),n}});var TH=_((bqr,SOe)=>{var cKt=SH(),uKt=vH();SOe.exports=lKt;function lKt(t){Object.keys(this.jobs).length&&(this.index=this.size,cKt(this),uKt(t)(null,this.results))}});var COe=_((_qr,IOe)=>{var dKt=IH(),fKt=CH(),pKt=TH();IOe.exports=mKt;function mKt(t,e,r){for(var n=fKt(t);n.index<(n.keyedList||t).length;)dKt(t,e,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 pKt.bind(n,r)}});var wH=_((Eqr,k3)=>{var TOe=IH(),hKt=CH(),gKt=TH();k3.exports=yKt;k3.exports.ascending=wOe;k3.exports.descending=AKt;function yKt(t,e,r,n){var s=hKt(t,r);return TOe(t,e,s,function i(a,o){if(a){n(a,o);return}if(s.index++,s.index<(s.keyedList||t).length){TOe(t,e,s,i);return}n(null,s.results)}),gKt.bind(s,n)}function wOe(t,e){return te?1:0}function AKt(t,e){return-1*wOe(t,e)}});var NOe=_((vqr,ROe)=>{var xKt=wH();ROe.exports=bKt;function bKt(t,e,r){return xKt(t,e,null,r)}});var kOe=_((Sqr,OOe)=>{OOe.exports={parallel:COe(),serial:NOe(),serialOrdered:wH()}});var RH=_((Iqr,POe)=>{"use strict";POe.exports=Object});var BOe=_((Cqr,DOe)=>{"use strict";DOe.exports=Error});var MOe=_((Tqr,LOe)=>{"use strict";LOe.exports=EvalError});var $Oe=_((wqr,WOe)=>{"use strict";WOe.exports=RangeError});var FOe=_((Rqr,UOe)=>{"use strict";UOe.exports=ReferenceError});var jOe=_((Nqr,qOe)=>{"use strict";qOe.exports=SyntaxError});var p0=_((Oqr,QOe)=>{"use strict";QOe.exports=TypeError});var GOe=_((kqr,HOe)=>{"use strict";HOe.exports=URIError});var KOe=_((Pqr,zOe)=>{"use strict";zOe.exports=Math.abs});var YOe=_((Dqr,VOe)=>{"use strict";VOe.exports=Math.floor});var XOe=_((Bqr,JOe)=>{"use strict";JOe.exports=Math.max});var eke=_((Lqr,ZOe)=>{"use strict";ZOe.exports=Math.min});var rke=_((Mqr,tke)=>{"use strict";tke.exports=Math.pow});var ske=_((Wqr,nke)=>{"use strict";nke.exports=Math.round});var ake=_(($qr,ike)=>{"use strict";ike.exports=Number.isNaN||function(e){return e!==e}});var cke=_((Uqr,oke)=>{"use strict";var _Kt=ake();oke.exports=function(e){return _Kt(e)||e===0?e:e<0?-1:1}});var lke=_((Fqr,uke)=>{"use strict";uke.exports=Object.getOwnPropertyDescriptor});var NH=_((qqr,dke)=>{"use strict";var P3=lke();if(P3)try{P3([],"length")}catch{P3=null}dke.exports=P3});var pke=_((jqr,fke)=>{"use strict";var D3=Object.defineProperty||!1;if(D3)try{D3({},"a",{value:1})}catch{D3=!1}fke.exports=D3});var OH=_((Qqr,mke)=>{"use strict";mke.exports=function(){if(typeof Symbol!="function"||typeof Object.getOwnPropertySymbols!="function")return!1;if(typeof Symbol.iterator=="symbol")return!0;var e={},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;e[r]=s;for(var i in e)return!1;if(typeof Object.keys=="function"&&Object.keys(e).length!==0||typeof Object.getOwnPropertyNames=="function"&&Object.getOwnPropertyNames(e).length!==0)return!1;var a=Object.getOwnPropertySymbols(e);if(a.length!==1||a[0]!==r||!Object.prototype.propertyIsEnumerable.call(e,r))return!1;if(typeof Object.getOwnPropertyDescriptor=="function"){var o=Object.getOwnPropertyDescriptor(e,r);if(o.value!==s||o.enumerable!==!0)return!1}return!0}});var yke=_((Hqr,gke)=>{"use strict";var hke=typeof Symbol<"u"&&Symbol,EKt=OH();gke.exports=function(){return typeof hke!="function"||typeof Symbol!="function"||typeof hke("foo")!="symbol"||typeof Symbol("bar")!="symbol"?!1:EKt()}});var kH=_((Gqr,Ake)=>{"use strict";Ake.exports=typeof Reflect<"u"&&Reflect.getPrototypeOf||null});var PH=_((zqr,xke)=>{"use strict";var vKt=RH();xke.exports=vKt.getPrototypeOf||null});var Eke=_((Kqr,_ke)=>{"use strict";var SKt="Function.prototype.bind called on incompatible ",IKt=Object.prototype.toString,CKt=Math.max,TKt="[object Function]",bke=function(e,r){for(var n=[],s=0;s{"use strict";var NKt=Eke();vke.exports=Function.prototype.bind||NKt});var B3=_((Yqr,Ske)=>{"use strict";Ske.exports=Function.prototype.call});var DH=_((Jqr,Ike)=>{"use strict";Ike.exports=Function.prototype.apply});var Tke=_((Xqr,Cke)=>{"use strict";Cke.exports=typeof Reflect<"u"&&Reflect&&Reflect.apply});var Rke=_((Zqr,wke)=>{"use strict";var OKt=$S(),kKt=DH(),PKt=B3(),DKt=Tke();wke.exports=DKt||OKt.call(PKt,kKt)});var BH=_((ejr,Nke)=>{"use strict";var BKt=$S(),LKt=p0(),MKt=B3(),WKt=Rke();Nke.exports=function(e){if(e.length<1||typeof e[0]!="function")throw new LKt("a function is required");return WKt(BKt,MKt,e)}});var Lke=_((tjr,Bke)=>{"use strict";var $Kt=BH(),Oke=NH(),Pke;try{Pke=[].__proto__===Array.prototype}catch(t){if(!t||typeof t!="object"||!("code"in t)||t.code!=="ERR_PROTO_ACCESS")throw t}var LH=!!Pke&&Oke&&Oke(Object.prototype,"__proto__"),Dke=Object,kke=Dke.getPrototypeOf;Bke.exports=LH&&typeof LH.get=="function"?$Kt([LH.get]):typeof kke=="function"?function(e){return kke(e==null?e:Dke(e))}:!1});var Fke=_((rjr,Uke)=>{"use strict";var Mke=kH(),Wke=PH(),$ke=Lke();Uke.exports=Mke?function(e){return Mke(e)}:Wke?function(e){if(!e||typeof e!="object"&&typeof e!="function")throw new TypeError("getProto: not an object");return Wke(e)}:$ke?function(e){return $ke(e)}:null});var L3=_((njr,qke)=>{"use strict";var UKt=Function.prototype.call,FKt=Object.prototype.hasOwnProperty,qKt=$S();qke.exports=qKt.call(UKt,FKt)});var jS=_((sjr,Kke)=>{"use strict";var mr,jKt=RH(),QKt=BOe(),HKt=MOe(),GKt=$Oe(),zKt=FOe(),Qx=jOe(),jx=p0(),KKt=GOe(),VKt=KOe(),YKt=YOe(),JKt=XOe(),XKt=eke(),ZKt=rke(),eVt=ske(),tVt=cke(),Gke=Function,MH=function(t){try{return Gke('"use strict"; return ('+t+").constructor;")()}catch{}},US=NH(),rVt=pke(),WH=function(){throw new jx},nVt=US?function(){try{return arguments.callee,WH}catch{try{return US(arguments,"callee").get}catch{return WH}}}():WH,Fx=yke()(),Vs=Fke(),sVt=PH(),iVt=kH(),zke=DH(),FS=B3(),qx={},aVt=typeof Uint8Array>"u"||!Vs?mr:Vs(Uint8Array),Dh={__proto__:null,"%AggregateError%":typeof AggregateError>"u"?mr:AggregateError,"%Array%":Array,"%ArrayBuffer%":typeof ArrayBuffer>"u"?mr:ArrayBuffer,"%ArrayIteratorPrototype%":Fx&&Vs?Vs([][Symbol.iterator]()):mr,"%AsyncFromSyncIteratorPrototype%":mr,"%AsyncFunction%":qx,"%AsyncGenerator%":qx,"%AsyncGeneratorFunction%":qx,"%AsyncIteratorPrototype%":qx,"%Atomics%":typeof Atomics>"u"?mr:Atomics,"%BigInt%":typeof BigInt>"u"?mr:BigInt,"%BigInt64Array%":typeof BigInt64Array>"u"?mr:BigInt64Array,"%BigUint64Array%":typeof BigUint64Array>"u"?mr:BigUint64Array,"%Boolean%":Boolean,"%DataView%":typeof DataView>"u"?mr:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":QKt,"%eval%":eval,"%EvalError%":HKt,"%Float16Array%":typeof Float16Array>"u"?mr:Float16Array,"%Float32Array%":typeof Float32Array>"u"?mr:Float32Array,"%Float64Array%":typeof Float64Array>"u"?mr:Float64Array,"%FinalizationRegistry%":typeof FinalizationRegistry>"u"?mr:FinalizationRegistry,"%Function%":Gke,"%GeneratorFunction%":qx,"%Int8Array%":typeof Int8Array>"u"?mr:Int8Array,"%Int16Array%":typeof Int16Array>"u"?mr:Int16Array,"%Int32Array%":typeof Int32Array>"u"?mr:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":Fx&&Vs?Vs(Vs([][Symbol.iterator]())):mr,"%JSON%":typeof JSON=="object"?JSON:mr,"%Map%":typeof Map>"u"?mr:Map,"%MapIteratorPrototype%":typeof Map>"u"||!Fx||!Vs?mr:Vs(new Map()[Symbol.iterator]()),"%Math%":Math,"%Number%":Number,"%Object%":jKt,"%Object.getOwnPropertyDescriptor%":US,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":typeof Promise>"u"?mr:Promise,"%Proxy%":typeof Proxy>"u"?mr:Proxy,"%RangeError%":GKt,"%ReferenceError%":zKt,"%Reflect%":typeof Reflect>"u"?mr:Reflect,"%RegExp%":RegExp,"%Set%":typeof Set>"u"?mr:Set,"%SetIteratorPrototype%":typeof Set>"u"||!Fx||!Vs?mr:Vs(new Set()[Symbol.iterator]()),"%SharedArrayBuffer%":typeof SharedArrayBuffer>"u"?mr:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":Fx&&Vs?Vs(""[Symbol.iterator]()):mr,"%Symbol%":Fx?Symbol:mr,"%SyntaxError%":Qx,"%ThrowTypeError%":nVt,"%TypedArray%":aVt,"%TypeError%":jx,"%Uint8Array%":typeof Uint8Array>"u"?mr:Uint8Array,"%Uint8ClampedArray%":typeof Uint8ClampedArray>"u"?mr:Uint8ClampedArray,"%Uint16Array%":typeof Uint16Array>"u"?mr:Uint16Array,"%Uint32Array%":typeof Uint32Array>"u"?mr:Uint32Array,"%URIError%":KKt,"%WeakMap%":typeof WeakMap>"u"?mr:WeakMap,"%WeakRef%":typeof WeakRef>"u"?mr:WeakRef,"%WeakSet%":typeof WeakSet>"u"?mr:WeakSet,"%Function.prototype.call%":FS,"%Function.prototype.apply%":zke,"%Object.defineProperty%":rVt,"%Object.getPrototypeOf%":sVt,"%Math.abs%":VKt,"%Math.floor%":YKt,"%Math.max%":JKt,"%Math.min%":XKt,"%Math.pow%":ZKt,"%Math.round%":eVt,"%Math.sign%":tVt,"%Reflect.getPrototypeOf%":iVt};if(Vs)try{null.error}catch(t){jke=Vs(Vs(t)),Dh["%Error.prototype%"]=jke}var jke,oVt=function t(e){var r;if(e==="%AsyncFunction%")r=MH("async function () {}");else if(e==="%GeneratorFunction%")r=MH("function* () {}");else if(e==="%AsyncGeneratorFunction%")r=MH("async function* () {}");else if(e==="%AsyncGenerator%"){var n=t("%AsyncGeneratorFunction%");n&&(r=n.prototype)}else if(e==="%AsyncIteratorPrototype%"){var s=t("%AsyncGenerator%");s&&Vs&&(r=Vs(s.prototype))}return Dh[e]=r,r},Qke={__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"]},qS=$S(),M3=L3(),cVt=qS.call(FS,Array.prototype.concat),uVt=qS.call(zke,Array.prototype.splice),Hke=qS.call(FS,String.prototype.replace),W3=qS.call(FS,String.prototype.slice),lVt=qS.call(FS,RegExp.prototype.exec),dVt=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,fVt=/\\(\\)?/g,pVt=function(e){var r=W3(e,0,1),n=W3(e,-1);if(r==="%"&&n!=="%")throw new Qx("invalid intrinsic syntax, expected closing `%`");if(n==="%"&&r!=="%")throw new Qx("invalid intrinsic syntax, expected opening `%`");var s=[];return Hke(e,dVt,function(i,a,o,c){s[s.length]=o?Hke(c,fVt,"$1"):a||i}),s},mVt=function(e,r){var n=e,s;if(M3(Qke,n)&&(s=Qke[n],n="%"+s[0]+"%"),M3(Dh,n)){var i=Dh[n];if(i===qx&&(i=oVt(n)),typeof i>"u"&&!r)throw new jx("intrinsic "+e+" exists, but is not available. Please file an issue!");return{alias:s,name:n,value:i}}throw new Qx("intrinsic "+e+" does not exist!")};Kke.exports=function(e,r){if(typeof e!="string"||e.length===0)throw new jx("intrinsic name must be a non-empty string");if(arguments.length>1&&typeof r!="boolean")throw new jx('"allowMissing" argument must be a boolean');if(lVt(/^%?[^%]*%?$/,e)===null)throw new Qx("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var n=pVt(e),s=n.length>0?n[0]:"",i=mVt("%"+s+"%",r),a=i.name,o=i.value,c=!1,u=i.alias;u&&(s=u[0],uVt(n,cVt([0,1],u)));for(var l=1,d=!0;l=n.length){var h=US(o,f);d=!!h,d&&"get"in h&&!("originalValue"in h.get)?o=h.get:o=o[f]}else d=M3(o,f),o=o[f];d&&!c&&(Dh[a]=o)}}return o}});var Yke=_((ijr,Vke)=>{"use strict";var hVt=OH();Vke.exports=function(){return hVt()&&!!Symbol.toStringTag}});var Zke=_((ajr,Xke)=>{"use strict";var gVt=jS(),Jke=gVt("%Object.defineProperty%",!0),yVt=Yke()(),AVt=L3(),xVt=p0(),$3=yVt?Symbol.toStringTag:null;Xke.exports=function(e,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 xVt("if provided, the `overrideIfSet` and `nonConfigurable` options must be booleans");$3&&(n||!AVt(e,$3))&&(Jke?Jke(e,$3,{configurable:!s,enumerable:!1,value:r,writable:!1}):e[$3]=r)}});var tPe=_((ojr,ePe)=>{"use strict";ePe.exports=function(t,e){return Object.keys(e).forEach(function(r){t[r]=t[r]||e[r]}),t}});var nPe=_((cjr,rPe)=>{"use strict";var qH=uOe(),bVt=require("util"),$H=require("path"),_Vt=require("http"),EVt=require("https"),vVt=require("url").parse,SVt=require("fs"),IVt=require("stream").Stream,CVt=require("crypto"),UH=hOe(),TVt=kOe(),wVt=Zke(),m0=L3(),FH=tPe();function kr(t){if(!(this instanceof kr))return new kr(t);this._overheadLength=0,this._valueLength=0,this._valuesToMeasure=[],qH.call(this),t=t||{};for(var e in t)this[e]=t[e]}bVt.inherits(kr,qH);kr.LINE_BREAK=`\r +`;kr.DEFAULT_CONTENT_TYPE="application/octet-stream";kr.prototype.append=function(t,e,r){r=r||{},typeof r=="string"&&(r={filename:r});var n=qH.prototype.append.bind(this);if((typeof e=="number"||e==null)&&(e=String(e)),Array.isArray(e)){this._error(new Error("Arrays are not supported."));return}var s=this._multiPartHeader(t,e,r),i=this._multiPartFooter();n(s),n(e),n(i),this._trackLength(s,e,r)};kr.prototype._trackLength=function(t,e,r){var n=0;r.knownLength!=null?n+=Number(r.knownLength):Buffer.isBuffer(e)?n=e.length:typeof e=="string"&&(n=Buffer.byteLength(e)),this._valueLength+=n,this._overheadLength+=Buffer.byteLength(t)+kr.LINE_BREAK.length,!(!e||!e.path&&!(e.readable&&m0(e,"httpVersion"))&&!(e instanceof IVt))&&(r.knownLength||this._valuesToMeasure.push(e))};kr.prototype._lengthRetriever=function(t,e){m0(t,"fd")?t.end!=null&&t.end!=1/0&&t.start!=null?e(null,t.end+1-(t.start?t.start:0)):SVt.stat(t.path,function(r,n){if(r){e(r);return}var s=n.size-(t.start?t.start:0);e(null,s)}):m0(t,"httpVersion")?e(null,Number(t.headers["content-length"])):m0(t,"httpModule")?(t.on("response",function(r){t.pause(),e(null,Number(r.headers["content-length"]))}),t.resume()):e("Unknown stream")};kr.prototype._multiPartHeader=function(t,e,r){if(typeof r.header=="string")return r.header;var n=this._getContentDisposition(e,r),s=this._getContentType(e,r),i="",a={"Content-Disposition":["form-data",'name="'+t+'"'].concat(n||[]),"Content-Type":[].concat(s||[])};typeof r.header=="object"&&FH(a,r.header);var o;for(var c in a)if(m0(a,c)){if(o=a[c],o==null)continue;Array.isArray(o)||(o=[o]),o.length&&(i+=c+": "+o.join("; ")+kr.LINE_BREAK)}return"--"+this.getBoundary()+kr.LINE_BREAK+i+kr.LINE_BREAK};kr.prototype._getContentDisposition=function(t,e){var r;if(typeof e.filepath=="string"?r=$H.normalize(e.filepath).replace(/\\/g,"/"):e.filename||t&&(t.name||t.path)?r=$H.basename(e.filename||t&&(t.name||t.path)):t&&t.readable&&m0(t,"httpVersion")&&(r=$H.basename(t.client._httpMessage.path||"")),r)return'filename="'+r+'"'};kr.prototype._getContentType=function(t,e){var r=e.contentType;return!r&&t&&t.name&&(r=UH.lookup(t.name)),!r&&t&&t.path&&(r=UH.lookup(t.path)),!r&&t&&t.readable&&m0(t,"httpVersion")&&(r=t.headers["content-type"]),!r&&(e.filepath||e.filename)&&(r=UH.lookup(e.filepath||e.filename)),!r&&t&&typeof t=="object"&&(r=kr.DEFAULT_CONTENT_TYPE),r};kr.prototype._multiPartFooter=function(){return function(t){var e=kr.LINE_BREAK,r=this._streams.length===0;r&&(e+=this._lastBoundary()),t(e)}.bind(this)};kr.prototype._lastBoundary=function(){return"--"+this.getBoundary()+"--"+kr.LINE_BREAK};kr.prototype.getHeaders=function(t){var e,r={"content-type":"multipart/form-data; boundary="+this.getBoundary()};for(e in t)m0(t,e)&&(r[e.toLowerCase()]=t[e]);return r};kr.prototype.setBoundary=function(t){if(typeof t!="string")throw new TypeError("FormData boundary must be a string");this._boundary=t};kr.prototype.getBoundary=function(){return this._boundary||this._generateBoundary(),this._boundary};kr.prototype.getBuffer=function(){for(var t=new Buffer.alloc(0),e=this.getBoundary(),r=0,n=this._streams.length;r{"use strict";var QVt=require("url").parse,HVt={ftp:21,gopher:70,http:80,https:443,ws:80,wss:443},GVt=String.prototype.endsWith||function(t){return t.length<=this.length&&this.indexOf(t,this.length-t.length)!==-1};function zVt(t){var e=typeof t=="string"?QVt(t):t||{},r=e.protocol,n=e.host,s=e.port;if(typeof n!="string"||!n||typeof r!="string"||(r=r.split(":",1)[0],n=n.replace(/:\d*$/,""),s=parseInt(s)||HVt[r]||0,!KVt(n,s)))return"";var i=Kx("npm_config_"+r+"_proxy")||Kx(r+"_proxy")||Kx("npm_config_proxy")||Kx("all_proxy");return i&&i.indexOf("://")===-1&&(i=r+"://"+i),i}function KVt(t,e){var r=(Kx("npm_config_no_proxy")||Kx("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!==e?!0:/^[.*]/.test(i)?(i.charAt(0)==="*"&&(i=i.slice(1)),!GVt.call(t,i)):t!==i}):!0}function Kx(t){return process.env[t.toLowerCase()]||process.env[t.toUpperCase()]||""}APe.getProxyForUrl=zVt});var _Pe=_((uQr,bPe)=>{var Vx=1e3,Yx=Vx*60,Jx=Yx*60,Mh=Jx*24,VVt=Mh*7,YVt=Mh*365.25;bPe.exports=function(t,e){e=e||{};var r=typeof t;if(r==="string"&&t.length>0)return JVt(t);if(r==="number"&&isFinite(t))return e.long?ZVt(t):XVt(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))};function JVt(t){if(t=String(t),!(t.length>100)){var e=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(t);if(e){var r=parseFloat(e[1]),n=(e[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*YVt;case"weeks":case"week":case"w":return r*VVt;case"days":case"day":case"d":return r*Mh;case"hours":case"hour":case"hrs":case"hr":case"h":return r*Jx;case"minutes":case"minute":case"mins":case"min":case"m":return r*Yx;case"seconds":case"second":case"secs":case"sec":case"s":return r*Vx;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function XVt(t){var e=Math.abs(t);return e>=Mh?Math.round(t/Mh)+"d":e>=Jx?Math.round(t/Jx)+"h":e>=Yx?Math.round(t/Yx)+"m":e>=Vx?Math.round(t/Vx)+"s":t+"ms"}function ZVt(t){var e=Math.abs(t);return e>=Mh?j3(t,e,Mh,"day"):e>=Jx?j3(t,e,Jx,"hour"):e>=Yx?j3(t,e,Yx,"minute"):e>=Vx?j3(t,e,Vx,"second"):t+" ms"}function j3(t,e,r,n){var s=e>=r*1.5;return Math.round(t/r)+" "+n+(s?"s":"")}});var XH=_((lQr,EPe)=>{function eYt(t){r.debug=r,r.default=r,r.coerce=c,r.disable=a,r.enable=s,r.enabled=o,r.humanize=_Pe(),r.destroy=u,Object.keys(t).forEach(l=>{r[l]=t[l]}),r.names=[],r.skips=[],r.formatters={};function e(l){let d=0;for(let f=0;f{if(I==="%%")return"%";A++;let w=r.formatters[R];if(typeof w=="function"){let N=y[A];I=w.call(g,N),y.splice(A,1),A--}return I}),r.formatArgs.call(g,y),(g.log||r.log).apply(g,y)}return h.namespace=l,h.useColors=r.useColors(),h.color=r.selectColor(l),h.extend=n,h.destroy=r.destroy,Object.defineProperty(h,"enabled",{enumerable:!0,configurable:!1,get:()=>f!==null?f:(p!==r.namespaces&&(p=r.namespaces,m=r.enabled(l)),m),set:y=>{f=y}}),typeof r.init=="function"&&r.init(h),h}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,p=0,m=-1,h=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}EPe.exports=eYt});var vPe=_((to,Q3)=>{to.formatArgs=rYt;to.save=nYt;to.load=sYt;to.useColors=tYt;to.storage=iYt();to.destroy=(()=>{let t=!1;return()=>{t||(t=!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`."))}})();to.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 tYt(){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 t;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&&(t=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(t[1],10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function rYt(t){if(t[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+t[0]+(this.useColors?"%c ":" ")+"+"+Q3.exports.humanize(this.diff),!this.useColors)return;let e="color: "+this.color;t.splice(1,0,e,"color: inherit");let r=0,n=0;t[0].replace(/%[a-zA-Z%]/g,s=>{s!=="%%"&&(r++,s==="%c"&&(n=r))}),t.splice(n,0,e)}to.log=console.debug||console.log||(()=>{});function nYt(t){try{t?to.storage.setItem("debug",t):to.storage.removeItem("debug")}catch{}}function sYt(){let t;try{t=to.storage.getItem("debug")||to.storage.getItem("DEBUG")}catch{}return!t&&typeof process<"u"&&"env"in process&&(t=process.env.DEBUG),t}function iYt(){try{return localStorage}catch{}}Q3.exports=XH()(to);var{formatters:aYt}=Q3.exports;aYt.j=function(t){try{return JSON.stringify(t)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}});var IPe=_((dQr,SPe)=>{"use strict";SPe.exports=(t,e=process.argv)=>{let r=t.startsWith("-")?"":t.length===1?"-":"--",n=e.indexOf(r+t),s=e.indexOf("--");return n!==-1&&(s===-1||n{"use strict";var oYt=require("os"),CPe=require("tty"),Ec=IPe(),{env:Ys}=process,y0;Ec("no-color")||Ec("no-colors")||Ec("color=false")||Ec("color=never")?y0=0:(Ec("color")||Ec("colors")||Ec("color=true")||Ec("color=always"))&&(y0=1);"FORCE_COLOR"in Ys&&(Ys.FORCE_COLOR==="true"?y0=1:Ys.FORCE_COLOR==="false"?y0=0:y0=Ys.FORCE_COLOR.length===0?1:Math.min(parseInt(Ys.FORCE_COLOR,10),3));function ZH(t){return t===0?!1:{level:t,hasBasic:!0,has256:t>=2,has16m:t>=3}}function eG(t,e){if(y0===0)return 0;if(Ec("color=16m")||Ec("color=full")||Ec("color=truecolor"))return 3;if(Ec("color=256"))return 2;if(t&&!e&&y0===void 0)return 0;let r=y0||0;if(Ys.TERM==="dumb")return r;if(process.platform==="win32"){let n=oYt.release().split(".");return Number(n[0])>=10&&Number(n[2])>=10586?Number(n[2])>=14931?3:2:1}if("CI"in Ys)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE"].some(n=>n in Ys)||Ys.CI_NAME==="codeship"?1:r;if("TEAMCITY_VERSION"in Ys)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(Ys.TEAMCITY_VERSION)?1:0;if(Ys.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in Ys){let n=parseInt((Ys.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(Ys.TERM_PROGRAM){case"iTerm.app":return n>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(Ys.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(Ys.TERM)||"COLORTERM"in Ys?1:r}function cYt(t){let e=eG(t,t&&t.isTTY);return ZH(e)}TPe.exports={supportsColor:cYt,stdout:ZH(eG(!0,CPe.isatty(1))),stderr:ZH(eG(!0,CPe.isatty(2)))}});var NPe=_((Js,G3)=>{var uYt=require("tty"),H3=require("util");Js.init=gYt;Js.log=pYt;Js.formatArgs=dYt;Js.save=mYt;Js.load=hYt;Js.useColors=lYt;Js.destroy=H3.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");Js.colors=[6,2,3,4,5,1];try{let t=wPe();t&&(t.stderr||t).level>=2&&(Js.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{}Js.inspectOpts=Object.keys(process.env).filter(t=>/^debug_/i.test(t)).reduce((t,e)=>{let r=e.substring(6).toLowerCase().replace(/_([a-z])/g,(s,i)=>i.toUpperCase()),n=process.env[e];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),t[r]=n,t},{});function lYt(){return"colors"in Js.inspectOpts?!!Js.inspectOpts.colors:uYt.isatty(process.stderr.fd)}function dYt(t){let{namespace:e,useColors:r}=this;if(r){let n=this.color,s="\x1B[3"+(n<8?n:"8;5;"+n),i=` ${s};1m${e} \x1B[0m`;t[0]=i+t[0].split(` `).join(` -`+i),t.push(s+"m+"+_3.exports.humanize(this.diff)+"\x1B[0m")}else t[0]=nQt()+e+" "+t[0]}function nQt(){return Ks.inspectOpts.hideDate?"":new Date().toISOString()+" "}function sQt(...t){return process.stderr.write(E3.formatWithOptions(Ks.inspectOpts,...t)+` -`)}function iQt(t){t?process.env.DEBUG=t:delete process.env.DEBUG}function aQt(){return process.env.DEBUG}function oQt(t){t.inspectOpts={};let e=Object.keys(Ks.inspectOpts);for(let r=0;re.trim()).join(" ")};MNe.O=function(t){return this.inspectOpts.colors=this.useColors,E3.inspect(t,this.inspectOpts)}});var $Ne=E((n5r,Zj)=>{typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs?Zj.exports=ONe():Zj.exports=WNe()});var UNe=E((s5r,FNe)=>{var US;FNe.exports=function(){if(!US){try{US=$Ne()("follow-redirects")}catch{}typeof US!="function"&&(US=function(){})}US.apply(null,arguments)}});var GNe=E((i5r,dH)=>{var jS=require("url"),qS=jS.URL,cQt=require("http"),uQt=require("https"),sH=require("stream").Writable,iH=require("assert"),qNe=UNe();(function(){var e=typeof process<"u",r=typeof window<"u"&&typeof document<"u",n=gh(Error.captureStackTrace);!e&&(r||!n)&&console.warn("The follow-redirects package should be excluded from browser builds.")})();var aH=!1;try{iH(new qS(""))}catch(t){aH=t.code==="ERR_INVALID_URL"}var lQt=["auth","host","hostname","href","path","pathname","port","protocol","query","search","hash"],oH=["abort","aborted","connect","error","socket","timeout"],cH=Object.create(null);oH.forEach(function(t){cH[t]=function(e,r,n){this._redirectable.emit(t,e,r,n)}});var tH=HS("ERR_INVALID_URL","Invalid URL",TypeError),rH=HS("ERR_FR_REDIRECTION_FAILURE","Redirected request failed"),dQt=HS("ERR_FR_TOO_MANY_REDIRECTS","Maximum number of redirects exceeded",rH),fQt=HS("ERR_FR_MAX_BODY_LENGTH_EXCEEDED","Request body larger than maxBodyLength limit"),pQt=HS("ERR_STREAM_WRITE_AFTER_END","write after end"),mQt=sH.prototype.destroy||HNe;function Va(t,e){sH.call(this),this._sanitizeOptions(t),this._options=t,this._ended=!1,this._ending=!1,this._redirectCount=0,this._redirects=[],this._requestBodyLength=0,this._requestBodyBuffers=[],e&&this.on("response",e);var r=this;this._onNativeResponse=function(n){try{r._processResponse(n)}catch(s){r.emit("error",s instanceof rH?s:new rH({cause:s}))}},this._performRequest()}Va.prototype=Object.create(sH.prototype);Va.prototype.abort=function(){lH(this._currentRequest),this._currentRequest.abort(),this.emit("abort")};Va.prototype.destroy=function(t){return lH(this._currentRequest,t),mQt.call(this,t),this};Va.prototype.write=function(t,e,r){if(this._ending)throw new pQt;if(!hh(t)&&!AQt(t))throw new TypeError("data should be a string, Buffer or Uint8Array");if(gh(e)&&(r=e,e=null),t.length===0){r&&r();return}this._requestBodyLength+t.length<=this._options.maxBodyLength?(this._requestBodyLength+=t.length,this._requestBodyBuffers.push({data:t,encoding:e}),this._currentRequest.write(t,e,r)):(this.emit("error",new fQt),this.abort())};Va.prototype.end=function(t,e,r){if(gh(t)?(r=t,t=e=null):gh(e)&&(r=e,e=null),!t)this._ended=this._ending=!0,this._currentRequest.end(null,null,r);else{var n=this,s=this._currentRequest;this.write(t,e,function(){n._ended=!0,s.end(null,null,r)}),this._ending=!0}};Va.prototype.setHeader=function(t,e){this._options.headers[t]=e,this._currentRequest.setHeader(t,e)};Va.prototype.removeHeader=function(t){delete this._options.headers[t],this._currentRequest.removeHeader(t)};Va.prototype.setTimeout=function(t,e){var r=this;function n(a){a.setTimeout(t),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()},t),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),e&&r.removeListener("timeout",e),r.socket||r._currentRequest.removeListener("socket",s)}return e&&this.on("timeout",e),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(t){Va.prototype[t]=function(e,r){return this._currentRequest[t](e,r)}});["aborted","connection","socket"].forEach(function(t){Object.defineProperty(Va.prototype,t,{get:function(){return this._currentRequest[t]}})});Va.prototype._sanitizeOptions=function(t){if(t.headers||(t.headers={}),t.host&&(t.hostname||(t.hostname=t.host),delete t.host),!t.pathname&&t.path){var e=t.path.indexOf("?");e<0?t.pathname=t.path:(t.pathname=t.path.substring(0,e),t.search=t.path.substring(e))}};Va.prototype._performRequest=function(){var t=this._options.protocol,e=this._options.nativeProtocols[t];if(!e)throw new TypeError("Unsupported protocol "+t);if(this._options.agents){var r=t.slice(0,-1);this._options.agent=this._options.agents[r]}var n=this._currentRequest=e.request(this._options,this._onNativeResponse);n._redirectable=this;for(var s of oH)n.on(s,cH[s]);if(this._currentUrl=/^\//.test(this._options.path)?jS.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){t.responseUrl=this._currentUrl,t.redirects=this._redirects,this.emit("response",t),this._requestBodyBuffers=[];return}if(lH(this._currentRequest),t.destroy(),++this._redirectCount>this._options.maxRedirects)throw new dQt;var n,s=this._options.beforeRedirect;s&&(n=Object.assign({Host:t.req.getHeader("host")},this._options.headers));var i=this._options.method;((e===301||e===302)&&this._options.method==="POST"||e===303&&!/^(?:GET|HEAD)$/.test(this._options.method))&&(this._options.method="GET",this._requestBodyBuffers=[],eH(/^content-/i,this._options.headers));var a=eH(/^host$/i,this._options.headers),o=uH(this._currentUrl),c=a||o.host,u=/^\w+:/.test(r)?this._currentUrl:jS.format(Object.assign(o,{host:c})),l=hQt(r,u);if(qNe("redirecting to",l.href),this._isRedirect=!0,nH(l,this._options),(l.protocol!==o.protocol&&l.protocol!=="https:"||l.host!==c&&!gQt(l.host,c))&&eH(/^(?:(?:proxy-)?authorization|cookie)$/i,this._options.headers),gh(s)){var d={headers:t.headers,statusCode:e},f={url:u,method:i,headers:n};s(this._options,d,f),this._sanitizeOptions(this._options)}this._performRequest()};function jNe(t){var e={maxRedirects:21,maxBodyLength:10485760},r={};return Object.keys(t).forEach(function(n){var s=n+":",i=r[s]=t[n],a=e[n]=Object.create(i);function o(u,l,d){return yQt(u)?u=nH(u):hh(u)?u=nH(uH(u)):(d=l,l=QNe(u),u={protocol:s}),gh(l)&&(d=l,l=null),l=Object.assign({maxRedirects:e.maxRedirects,maxBodyLength:e.maxBodyLength},u,l),l.nativeProtocols=r,!hh(l.host)&&!hh(l.hostname)&&(l.hostname="::1"),iH.equal(l.protocol,s,"protocol mismatch"),qNe("options",l),new Va(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}})}),e}function HNe(){}function uH(t){var e;if(aH)e=new qS(t);else if(e=QNe(jS.parse(t)),!hh(e.protocol))throw new tH({input:t});return e}function hQt(t,e){return aH?new qS(t,e):uH(jS.resolve(e,t))}function QNe(t){if(/^\[/.test(t.hostname)&&!/^\[[:0-9a-f]+\]$/i.test(t.hostname))throw new tH({input:t.href||t});if(/^\[/.test(t.host)&&!/^\[[:0-9a-f]+\](:\d+)?$/i.test(t.host))throw new tH({input:t.href||t});return t}function nH(t,e){var r=e||{};for(var n of lQt)r[n]=t[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 eH(t,e){var r;for(var n in e)t.test(n)&&(r=e[n],delete e[n]);return r===null||typeof r>"u"?void 0:String(r).trim()}function HS(t,e,r){function n(s){gh(Error.captureStackTrace)&&Error.captureStackTrace(this,this.constructor),Object.assign(this,s||{}),this.code=t,this.message=this.cause?e+": "+this.cause.message:e}return n.prototype=new(r||Error),Object.defineProperties(n.prototype,{constructor:{value:n,enumerable:!1},name:{value:"Error ["+t+"]",enumerable:!1}}),n}function lH(t,e){for(var r of oH)t.removeListener(r,cH[r]);t.on("error",HNe),t.destroy(e)}function gQt(t,e){iH(hh(t)&&hh(e));var r=t.length-e.length-1;return r>0&&t[r]==="."&&t.endsWith(e)}function hh(t){return typeof t=="string"||t instanceof String}function gh(t){return typeof t=="function"}function AQt(t){return typeof t=="object"&&"length"in t}function yQt(t){return qS&&t instanceof qS}dH.exports=jNe({http:cQt,https:uQt});dH.exports.wrap=jNe});var z3=E(dl=>{"use strict";Object.defineProperty(dl,"__esModule",{value:!0});dl.AttributeAction=dl.IgnoreCaseMode=dl.SelectorType=void 0;var FGt;(function(t){t.Attribute="attribute",t.Pseudo="pseudo",t.PseudoElement="pseudo-element",t.Tag="tag",t.Universal="universal",t.Adjacent="adjacent",t.Child="child",t.Descendant="descendant",t.Parent="parent",t.Sibling="sibling",t.ColumnCombinator="column-combinator"})(FGt=dl.SelectorType||(dl.SelectorType={}));dl.IgnoreCaseMode={Unknown:null,QuirksMode:"quirks",IgnoreCase:!0,CaseSensitive:!1};var UGt;(function(t){t.Any="any",t.Element="element",t.End="end",t.Equals="equals",t.Exists="exists",t.Hyphen="hyphen",t.Not="not",t.Start="start"})(UGt=dl.AttributeAction||(dl.AttributeAction={}))});var yPe=E(Cx=>{"use strict";Object.defineProperty(Cx,"__esModule",{value:!0});Cx.parse=Cx.isTraversal=void 0;var Qr=z3(),mPe=/^[^\\#]?(?:\\(?:[\da-f]{1,6}\s?|.)|[\w\-\u00b0-\uFFFF])+/,qGt=/\\([\da-f]{1,6}\s?|(\s)|.)/gi,jGt=new Map([[126,Qr.AttributeAction.Element],[94,Qr.AttributeAction.Start],[36,Qr.AttributeAction.End],[42,Qr.AttributeAction.Any],[33,Qr.AttributeAction.Not],[124,Qr.AttributeAction.Hyphen]]),HGt=new Set(["has","not","matches","is","where","host","host-context"]);function gPe(t){switch(t.type){case Qr.SelectorType.Adjacent:case Qr.SelectorType.Child:case Qr.SelectorType.Descendant:case Qr.SelectorType.Parent:case Qr.SelectorType.Sibling:case Qr.SelectorType.ColumnCombinator:return!0;default:return!1}}Cx.isTraversal=gPe;var QGt=new Set(["contains","icontains"]);function GGt(t,e,r){var n=parseInt(e,16)-65536;return n!==n||r?e:n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,n&1023|56320)}function iv(t){return t.replace(qGt,GGt)}function jH(t){return t===39||t===34}function hPe(t){return t===32||t===9||t===10||t===12||t===13}function VGt(t){var e=[],r=APe(e,"".concat(t),0);if(r0&&r0&&gPe(n[n.length-1]))throw new Error("Did not expect successive traversals.")}function u(k){if(n.length>0&&n[n.length-1].type===Qr.SelectorType.Descendant){n[n.length-1].type=k;return}c(),n.push({type:k})}function l(k,B){n.push({type:Qr.SelectorType.Attribute,name:k,action:B,value:s(1),namespace:null,ignoreCase:"quirks"})}function d(){if(n.length&&n[n.length-1].type===Qr.SelectorType.Descendant&&n.pop(),n.length===0)throw new Error("Empty sub-selector");t.push(n)}if(i(0),e.length===r)return r;e:for(;r{"use strict";var K3=Tx&&Tx.__spreadArray||function(t,e,r){if(r||arguments.length===2)for(var n=0,s=e.length,i;n ":" > ";case Yn.SelectorType.Parent:return e===0?"< ":" < ";case Yn.SelectorType.Sibling:return e===0?"~ ":" ~ ";case Yn.SelectorType.Adjacent:return e===0?"+ ":" + ";case Yn.SelectorType.Descendant:return" ";case Yn.SelectorType.ColumnCombinator:return e===0?"|| ":" || ";case Yn.SelectorType.Universal:return t.namespace==="*"&&e+10?n+t.slice(r):t}});var wx=E(So=>{"use strict";var JGt=So&&So.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),XGt=So&&So.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&JGt(e,t,r)};Object.defineProperty(So,"__esModule",{value:!0});So.stringify=So.parse=So.isTraversal=void 0;XGt(z3(),So);var IPe=yPe();Object.defineProperty(So,"isTraversal",{enumerable:!0,get:function(){return IPe.isTraversal}});Object.defineProperty(So,"parse",{enumerable:!0,get:function(){return IPe.parse}});var ZGt=CPe();Object.defineProperty(So,"stringify",{enumerable:!0,get:function(){return ZGt.stringify}})});var s0=E((H$r,TPe)=>{TPe.exports={trueFunc:function(){return!0},falseFunc:function(){return!1}}});var Cv=E((OQ,PQ)=>{(function(t,e){typeof OQ=="object"&&typeof PQ<"u"?PQ.exports=e():typeof define=="function"&&define.amd?define(e):(t=typeof globalThis<"u"?globalThis:t||self).dayjs=e()})(OQ,function(){"use strict";var t=1e3,e=6e4,r=36e5,n="millisecond",s="second",i="minute",a="hour",o="day",c="week",u="month",l="quarter",d="year",f="date",p="Invalid Date",m=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,h=/\[([^\]]+)]|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,A={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 k=["th","st","nd","rd"],B=M%100;return"["+M+(k[(B-20)%10]||k[B]||k[0])+"]"}},g=function(M,k,B){var Z=String(M);return!Z||Z.length>=k?M:""+Array(k+1-Z.length).join(B)+M},b={s:g,z:function(M){var k=-M.utcOffset(),B=Math.abs(k),Z=Math.floor(B/60),W=B%60;return(k<=0?"+":"-")+g(Z,2,"0")+":"+g(W,2,"0")},m:function M(k,B){if(k.date()1)return M(V[0])}else{var j=k.name;x[j]=k,W=j}return!Z&&W&&(y=W),W||!Z&&y},w=function(M,k){if(C(M))return M.clone();var B=typeof k=="object"?k:{};return B.date=M,B.args=arguments,new P(B)},N=b;N.l=R,N.i=C,N.w=function(M,k){return w(M,{locale:k.$L,utc:k.$u,x:k.$x,$offset:k.$offset})};var P=function(){function M(B){this.$L=R(B.locale,null,!0),this.parse(B),this.$x=this.$x||B.x||{},this[v]=!0}var k=M.prototype;return k.parse=function(B){this.$d=function(Z){var W=Z.date,F=Z.utc;if(W===null)return new Date(NaN);if(N.u(W))return new Date;if(W instanceof Date)return new Date(W);if(typeof W=="string"&&!/Z$/i.test(W)){var V=W.match(m);if(V){var j=V[2]-1||0,J=(V[7]||"0").substring(0,3);return F?new Date(Date.UTC(V[1],j,V[3]||1,V[4]||0,V[5]||0,V[6]||0,J)):new Date(V[1],j,V[3]||1,V[4]||0,V[5]||0,V[6]||0,J)}}return new Date(W)}(B),this.init()},k.init=function(){var B=this.$d;this.$y=B.getFullYear(),this.$M=B.getMonth(),this.$D=B.getDate(),this.$W=B.getDay(),this.$H=B.getHours(),this.$m=B.getMinutes(),this.$s=B.getSeconds(),this.$ms=B.getMilliseconds()},k.$utils=function(){return N},k.isValid=function(){return this.$d.toString()!==p},k.isSame=function(B,Z){var W=w(B);return this.startOf(Z)<=W&&W<=this.endOf(Z)},k.isAfter=function(B,Z){return w(B){(function(t,e){typeof TD=="object"?uDe.exports=TD=e():typeof define=="function"&&define.amd?define([],e):t.CryptoJS=e()})(TD,function(){var t=t||function(e,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(b){var y;return g.prototype=b,y=new g,g.prototype=null,y}}(),a={},o=a.lib={},c=o.Base=function(){return{extend:function(g){var b=i(this);return g&&b.mixIn(g),(!b.hasOwnProperty("init")||this.init===b.init)&&(b.init=function(){b.$super.init.apply(this,arguments)}),b.init.prototype=b,b.$super=this,b},create:function(){var g=this.extend();return g.init.apply(g,arguments),g},init:function(){},mixIn:function(g){for(var b in g)g.hasOwnProperty(b)&&(this[b]=g[b]);g.hasOwnProperty("toString")&&(this.toString=g.toString)},clone:function(){return this.init.prototype.extend(this)}}}(),u=o.WordArray=c.extend({init:function(g,b){g=this.words=g||[],b!=r?this.sigBytes=b:this.sigBytes=g.length*4},toString:function(g){return(g||d).stringify(this)},concat:function(g){var b=this.words,y=g.words,x=this.sigBytes,v=g.sigBytes;if(this.clamp(),x%4)for(var C=0;C>>2]>>>24-C%4*8&255;b[x+C>>>2]|=R<<24-(x+C)%4*8}else for(var w=0;w>>2]=y[w>>>2];return this.sigBytes+=v,this},clamp:function(){var g=this.words,b=this.sigBytes;g[b>>>2]&=4294967295<<32-b%4*8,g.length=e.ceil(b/4)},clone:function(){var g=c.clone.call(this);return g.words=this.words.slice(0),g},random:function(g){for(var b=[],y=0;y>>2]>>>24-v%4*8&255;x.push((C>>>4).toString(16)),x.push((C&15).toString(16))}return x.join("")},parse:function(g){for(var b=g.length,y=[],x=0;x>>3]|=parseInt(g.substr(x,2),16)<<24-x%8*4;return new u.init(y,b/2)}},f=l.Latin1={stringify:function(g){for(var b=g.words,y=g.sigBytes,x=[],v=0;v>>2]>>>24-v%4*8&255;x.push(String.fromCharCode(C))}return x.join("")},parse:function(g){for(var b=g.length,y=[],x=0;x>>2]|=(g.charCodeAt(x)&255)<<24-x%4*8;return new u.init(y,b)}},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)))}},m=o.BufferedBlockAlgorithm=c.extend({reset:function(){this._data=new u.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 b,y=this._data,x=y.words,v=y.sigBytes,C=this.blockSize,R=C*4,w=v/R;g?w=e.ceil(w):w=e.max((w|0)-this._minBufferSize,0);var N=w*C,P=e.min(N*4,v);if(N){for(var L=0;L{(function(t,e){typeof wD=="object"?lDe.exports=wD=e(pr()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(wD,function(t){return function(e){var r=t,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!=e?this.sigBytes=l:this.sigBytes=u.length*8},toX32:function(){for(var u=this.words,l=u.length,d=[],f=0;f{(function(t,e){typeof RD=="object"?dDe.exports=RD=e(pr()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(RD,function(t){return function(){if(typeof ArrayBuffer=="function"){var e=t,r=e.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}}(),t.lib.WordArray})});var mDe=E((ND,pDe)=>{(function(t,e){typeof ND=="object"?pDe.exports=ND=e(pr()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(ND,function(t){return function(){var e=t,r=e.lib,n=r.WordArray,s=e.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}}(),t.enc.Utf16})});var f0=E((OD,hDe)=>{(function(t,e){typeof OD=="object"?hDe.exports=OD=e(pr()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(OD,function(t){return function(){var e=t,r=e.lib,n=r.WordArray,s=e.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,m=c[f+1>>>2]>>>24-(f+1)%4*8&255,h=c[f+2>>>2]>>>24-(f+2)%4*8&255,A=p<<16|m<<8|h,g=0;g<4&&f+g*.75>>6*(3-g)&63));var b=l.charAt(64);if(b)for(;d.length%4;)d.push(b);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,h=p|m;l[d>>>2]|=h<<24-d%4*8,d++}return n.create(l,d)}}(),t.enc.Base64})});var ADe=E((PD,gDe)=>{(function(t,e){typeof PD=="object"?gDe.exports=PD=e(pr()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(PD,function(t){return function(){var e=t,r=e.lib,n=r.WordArray,s=e.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=[],p=0;p>>2]>>>24-p%4*8&255,h=u[p+1>>>2]>>>24-(p+1)%4*8&255,A=u[p+2>>>2]>>>24-(p+2)%4*8&255,g=m<<16|h<<8|A,b=0;b<4&&p+b*.75>>6*(3-b)&63));var y=d.charAt(64);if(y)for(;f.length%4;)f.push(y);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,h=p|m;l[d>>>2]|=h<<24-d%4*8,d++}return n.create(l,d)}}(),t.enc.Base64url})});var p0=E((DD,yDe)=>{(function(t,e){typeof DD=="object"?yDe.exports=DD=e(pr()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(DD,function(t){return function(e){var r=t,n=r.lib,s=n.WordArray,i=n.Hasher,a=r.algo,o=[];(function(){for(var p=0;p<64;p++)o[p]=e.abs(e.sin(p+1))*4294967296|0})();var c=a.MD5=i.extend({_doReset:function(){this._hash=new s.init([1732584193,4023233417,2562383102,271733878])},_doProcessBlock:function(p,m){for(var h=0;h<16;h++){var A=m+h,g=p[A];p[A]=(g<<8|g>>>24)&16711935|(g<<24|g>>>8)&4278255360}var b=this._hash.words,y=p[m+0],x=p[m+1],v=p[m+2],C=p[m+3],R=p[m+4],w=p[m+5],N=p[m+6],P=p[m+7],L=p[m+8],M=p[m+9],k=p[m+10],B=p[m+11],Z=p[m+12],W=p[m+13],F=p[m+14],V=p[m+15],j=b[0],J=b[1],se=b[2],oe=b[3];j=u(j,J,se,oe,y,7,o[0]),oe=u(oe,j,J,se,x,12,o[1]),se=u(se,oe,j,J,v,17,o[2]),J=u(J,se,oe,j,C,22,o[3]),j=u(j,J,se,oe,R,7,o[4]),oe=u(oe,j,J,se,w,12,o[5]),se=u(se,oe,j,J,N,17,o[6]),J=u(J,se,oe,j,P,22,o[7]),j=u(j,J,se,oe,L,7,o[8]),oe=u(oe,j,J,se,M,12,o[9]),se=u(se,oe,j,J,k,17,o[10]),J=u(J,se,oe,j,B,22,o[11]),j=u(j,J,se,oe,Z,7,o[12]),oe=u(oe,j,J,se,W,12,o[13]),se=u(se,oe,j,J,F,17,o[14]),J=u(J,se,oe,j,V,22,o[15]),j=l(j,J,se,oe,x,5,o[16]),oe=l(oe,j,J,se,N,9,o[17]),se=l(se,oe,j,J,B,14,o[18]),J=l(J,se,oe,j,y,20,o[19]),j=l(j,J,se,oe,w,5,o[20]),oe=l(oe,j,J,se,k,9,o[21]),se=l(se,oe,j,J,V,14,o[22]),J=l(J,se,oe,j,R,20,o[23]),j=l(j,J,se,oe,M,5,o[24]),oe=l(oe,j,J,se,F,9,o[25]),se=l(se,oe,j,J,C,14,o[26]),J=l(J,se,oe,j,L,20,o[27]),j=l(j,J,se,oe,W,5,o[28]),oe=l(oe,j,J,se,v,9,o[29]),se=l(se,oe,j,J,P,14,o[30]),J=l(J,se,oe,j,Z,20,o[31]),j=d(j,J,se,oe,w,4,o[32]),oe=d(oe,j,J,se,L,11,o[33]),se=d(se,oe,j,J,B,16,o[34]),J=d(J,se,oe,j,F,23,o[35]),j=d(j,J,se,oe,x,4,o[36]),oe=d(oe,j,J,se,R,11,o[37]),se=d(se,oe,j,J,P,16,o[38]),J=d(J,se,oe,j,k,23,o[39]),j=d(j,J,se,oe,W,4,o[40]),oe=d(oe,j,J,se,y,11,o[41]),se=d(se,oe,j,J,C,16,o[42]),J=d(J,se,oe,j,N,23,o[43]),j=d(j,J,se,oe,M,4,o[44]),oe=d(oe,j,J,se,Z,11,o[45]),se=d(se,oe,j,J,V,16,o[46]),J=d(J,se,oe,j,v,23,o[47]),j=f(j,J,se,oe,y,6,o[48]),oe=f(oe,j,J,se,P,10,o[49]),se=f(se,oe,j,J,F,15,o[50]),J=f(J,se,oe,j,w,21,o[51]),j=f(j,J,se,oe,Z,6,o[52]),oe=f(oe,j,J,se,C,10,o[53]),se=f(se,oe,j,J,k,15,o[54]),J=f(J,se,oe,j,x,21,o[55]),j=f(j,J,se,oe,L,6,o[56]),oe=f(oe,j,J,se,V,10,o[57]),se=f(se,oe,j,J,N,15,o[58]),J=f(J,se,oe,j,W,21,o[59]),j=f(j,J,se,oe,R,6,o[60]),oe=f(oe,j,J,se,B,10,o[61]),se=f(se,oe,j,J,v,15,o[62]),J=f(J,se,oe,j,M,21,o[63]),b[0]=b[0]+j|0,b[1]=b[1]+J|0,b[2]=b[2]+se|0,b[3]=b[3]+oe|0},_doFinalize:function(){var p=this._data,m=p.words,h=this._nDataBytes*8,A=p.sigBytes*8;m[A>>>5]|=128<<24-A%32;var g=e.floor(h/4294967296),b=h;m[(A+64>>>9<<4)+15]=(g<<8|g>>>24)&16711935|(g<<24|g>>>8)&4278255360,m[(A+64>>>9<<4)+14]=(b<<8|b>>>24)&16711935|(b<<24|b>>>8)&4278255360,p.sigBytes=(m.length+1)*4,this._process();for(var y=this._hash,x=y.words,v=0;v<4;v++){var C=x[v];x[v]=(C<<8|C>>>24)&16711935|(C<<24|C>>>8)&4278255360}return y},clone:function(){var p=i.clone.call(this);return p._hash=this._hash.clone(),p}});function u(p,m,h,A,g,b,y){var x=p+(m&h|~m&A)+g+y;return(x<>>32-b)+m}function l(p,m,h,A,g,b,y){var x=p+(m&A|h&~A)+g+y;return(x<>>32-b)+m}function d(p,m,h,A,g,b,y){var x=p+(m^h^A)+g+y;return(x<>>32-b)+m}function f(p,m,h,A,g,b,y){var x=p+(h^(m|~A))+g+y;return(x<>>32-b)+m}r.MD5=i._createHelper(c),r.HmacMD5=i._createHmacHelper(c)}(Math),t.MD5})});var DQ=E((kD,xDe)=>{(function(t,e){typeof kD=="object"?xDe.exports=kD=e(pr()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(kD,function(t){return function(){var e=t,r=e.lib,n=r.WordArray,s=r.Hasher,i=e.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],p=l[2],m=l[3],h=l[4],A=0;A<80;A++){if(A<16)a[A]=c[u+A]|0;else{var g=a[A-3]^a[A-8]^a[A-14]^a[A-16];a[A]=g<<1|g>>>31}var b=(d<<5|d>>>27)+h+a[A];A<20?b+=(f&p|~f&m)+1518500249:A<40?b+=(f^p^m)+1859775393:A<60?b+=(f&p|f&m|p&m)-1894007588:b+=(f^p^m)-899497514,h=m,m=p,p=f<<30|f>>>2,f=d,d=b}l[0]=l[0]+d|0,l[1]=l[1]+f|0,l[2]=l[2]+p|0,l[3]=l[3]+m|0,l[4]=l[4]+h|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}});e.SHA1=s._createHelper(o),e.HmacSHA1=s._createHmacHelper(o)}(),t.SHA1})});var BD=E((LD,bDe)=>{(function(t,e){typeof LD=="object"?bDe.exports=LD=e(pr()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(LD,function(t){return function(e){var r=t,n=r.lib,s=n.WordArray,i=n.Hasher,a=r.algo,o=[],c=[];(function(){function d(h){for(var A=e.sqrt(h),g=2;g<=A;g++)if(!(h%g))return!1;return!0}function f(h){return(h-(h|0))*4294967296|0}for(var p=2,m=0;m<64;)d(p)&&(m<8&&(o[m]=f(e.pow(p,1/2))),c[m]=f(e.pow(p,1/3)),m++),p++})();var u=[],l=a.SHA256=i.extend({_doReset:function(){this._hash=new s.init(o.slice(0))},_doProcessBlock:function(d,f){for(var p=this._hash.words,m=p[0],h=p[1],A=p[2],g=p[3],b=p[4],y=p[5],x=p[6],v=p[7],C=0;C<64;C++){if(C<16)u[C]=d[f+C]|0;else{var R=u[C-15],w=(R<<25|R>>>7)^(R<<14|R>>>18)^R>>>3,N=u[C-2],P=(N<<15|N>>>17)^(N<<13|N>>>19)^N>>>10;u[C]=w+u[C-7]+P+u[C-16]}var L=b&y^~b&x,M=m&h^m&A^h&A,k=(m<<30|m>>>2)^(m<<19|m>>>13)^(m<<10|m>>>22),B=(b<<26|b>>>6)^(b<<21|b>>>11)^(b<<7|b>>>25),Z=v+B+L+c[C]+u[C],W=k+M;v=x,x=y,y=b,b=g+Z|0,g=A,A=h,h=m,m=Z+W|0}p[0]=p[0]+m|0,p[1]=p[1]+h|0,p[2]=p[2]+A|0,p[3]=p[3]+g|0,p[4]=p[4]+b|0,p[5]=p[5]+y|0,p[6]=p[6]+x|0,p[7]=p[7]+v|0},_doFinalize:function(){var d=this._data,f=d.words,p=this._nDataBytes*8,m=d.sigBytes*8;return f[m>>>5]|=128<<24-m%32,f[(m+64>>>9<<4)+14]=e.floor(p/4294967296),f[(m+64>>>9<<4)+15]=p,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),t.SHA256})});var _De=E((MD,EDe)=>{(function(t,e,r){typeof MD=="object"?EDe.exports=MD=e(pr(),BD()):typeof define=="function"&&define.amd?define(["./core","./sha256"],e):e(t.CryptoJS)})(MD,function(t){return function(){var e=t,r=e.lib,n=r.WordArray,s=e.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}});e.SHA224=i._createHelper(a),e.HmacSHA224=i._createHmacHelper(a)}(),t.SHA224})});var kQ=E((WD,SDe)=>{(function(t,e,r){typeof WD=="object"?SDe.exports=WD=e(pr(),Iv()):typeof define=="function"&&define.amd?define(["./core","./x64-core"],e):e(t.CryptoJS)})(WD,function(t){return function(){var e=t,r=e.lib,n=r.Hasher,s=e.x64,i=s.Word,a=s.WordArray,o=e.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,p){for(var m=this._hash.words,h=m[0],A=m[1],g=m[2],b=m[3],y=m[4],x=m[5],v=m[6],C=m[7],R=h.high,w=h.low,N=A.high,P=A.low,L=g.high,M=g.low,k=b.high,B=b.low,Z=y.high,W=y.low,F=x.high,V=x.low,j=v.high,J=v.low,se=C.high,oe=C.low,ue=R,Ce=w,we=N,qe=P,Fe=L,_e=M,U=k,G=B,z=Z,q=W,H=F,ee=V,ne=j,re=J,X=se,ie=oe,ce=0;ce<80;ce++){var fe,Ne,Pe=l[ce];if(ce<16)Ne=Pe.high=f[p+ce*2]|0,fe=Pe.low=f[p+ce*2+1]|0;else{var Ue=l[ce-15],Ke=Ue.high,Ye=Ue.low,Ze=(Ke>>>1|Ye<<31)^(Ke>>>8|Ye<<24)^Ke>>>7,nt=(Ye>>>1|Ke<<31)^(Ye>>>8|Ke<<24)^(Ye>>>7|Ke<<25),ct=l[ce-2],tt=ct.high,Dt=ct.low,lt=(tt>>>19|Dt<<13)^(tt<<3|Dt>>>29)^tt>>>6,De=(Dt>>>19|tt<<13)^(Dt<<3|tt>>>29)^(Dt>>>6|tt<<26),Je=l[ce-7],ft=Je.high,rt=Je.low,bt=l[ce-16],An=bt.high,Ct=bt.low;fe=nt+rt,Ne=Ze+ft+(fe>>>0>>0?1:0),fe=fe+De,Ne=Ne+lt+(fe>>>0>>0?1:0),fe=fe+Ct,Ne=Ne+An+(fe>>>0>>0?1:0),Pe.high=Ne,Pe.low=fe}var Sr=z&H^~z&ne,Us=q&ee^~q&re,Dr=ue&we^ue&Fe^we&Fe,qs=Ce&qe^Ce&_e^qe&_e,js=(ue>>>28|Ce<<4)^(ue<<30|Ce>>>2)^(ue<<25|Ce>>>7),ys=(Ce>>>28|ue<<4)^(Ce<<30|ue>>>2)^(Ce<<25|ue>>>7),Hs=(z>>>14|q<<18)^(z>>>18|q<<14)^(z<<23|q>>>9),Lu=(q>>>14|z<<18)^(q>>>18|z<<14)^(q<<23|z>>>9),go=u[ce],Dc=go.high,Ta=go.low,yn=ie+Lu,wa=X+Hs+(yn>>>0>>0?1:0),yn=yn+Us,wa=wa+Sr+(yn>>>0>>0?1:0),yn=yn+Ta,wa=wa+Dc+(yn>>>0>>0?1:0),yn=yn+fe,wa=wa+Ne+(yn>>>0>>0?1:0),rd=ys+qs,Ao=js+Dr+(rd>>>0>>0?1:0);X=ne,ie=re,ne=H,re=ee,H=z,ee=q,q=G+yn|0,z=U+wa+(q>>>0>>0?1:0)|0,U=Fe,G=_e,Fe=we,_e=qe,we=ue,qe=Ce,Ce=yn+rd|0,ue=wa+Ao+(Ce>>>0>>0?1:0)|0}w=h.low=w+Ce,h.high=R+ue+(w>>>0>>0?1:0),P=A.low=P+qe,A.high=N+we+(P>>>0>>0?1:0),M=g.low=M+_e,g.high=L+Fe+(M>>>0<_e>>>0?1:0),B=b.low=B+G,b.high=k+U+(B>>>0>>0?1:0),W=y.low=W+q,y.high=Z+z+(W>>>0>>0?1:0),V=x.low=V+ee,x.high=F+H+(V>>>0>>0?1:0),J=v.low=J+re,v.high=j+ne+(J>>>0>>0?1:0),oe=C.low=oe+ie,C.high=se+X+(oe>>>0>>0?1:0)},_doFinalize:function(){var f=this._data,p=f.words,m=this._nDataBytes*8,h=f.sigBytes*8;p[h>>>5]|=128<<24-h%32,p[(h+128>>>10<<5)+30]=Math.floor(m/4294967296),p[(h+128>>>10<<5)+31]=m,f.sigBytes=p.length*4,this._process();var A=this._hash.toX32();return A},clone:function(){var f=n.clone.call(this);return f._hash=this._hash.clone(),f},blockSize:1024/32});e.SHA512=n._createHelper(d),e.HmacSHA512=n._createHmacHelper(d)}(),t.SHA512})});var CDe=E(($D,vDe)=>{(function(t,e,r){typeof $D=="object"?vDe.exports=$D=e(pr(),Iv(),kQ()):typeof define=="function"&&define.amd?define(["./core","./x64-core","./sha512"],e):e(t.CryptoJS)})($D,function(t){return function(){var e=t,r=e.x64,n=r.Word,s=r.WordArray,i=e.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}});e.SHA384=a._createHelper(o),e.HmacSHA384=a._createHmacHelper(o)}(),t.SHA384})});var TDe=E((FD,IDe)=>{(function(t,e,r){typeof FD=="object"?IDe.exports=FD=e(pr(),Iv()):typeof define=="function"&&define.amd?define(["./core","./x64-core"],e):e(t.CryptoJS)})(FD,function(t){return function(e){var r=t,n=r.lib,s=n.WordArray,i=n.Hasher,a=r.x64,o=a.Word,c=r.algo,u=[],l=[],d=[];(function(){for(var m=1,h=0,A=0;A<24;A++){u[m+5*h]=(A+1)*(A+2)/2%64;var g=h%5,b=(2*m+3*h)%5;m=g,h=b}for(var m=0;m<5;m++)for(var h=0;h<5;h++)l[m+5*h]=h+(2*m+3*h)%5*5;for(var y=1,x=0;x<24;x++){for(var v=0,C=0,R=0;R<7;R++){if(y&1){var w=(1<>>24)&16711935|(y<<24|y>>>8)&4278255360,x=(x<<8|x>>>24)&16711935|(x<<24|x>>>8)&4278255360;var v=A[b];v.high^=x,v.low^=y}for(var C=0;C<24;C++){for(var R=0;R<5;R++){for(var w=0,N=0,P=0;P<5;P++){var v=A[R+5*P];w^=v.high,N^=v.low}var L=f[R];L.high=w,L.low=N}for(var R=0;R<5;R++)for(var M=f[(R+4)%5],k=f[(R+1)%5],B=k.high,Z=k.low,w=M.high^(B<<1|Z>>>31),N=M.low^(Z<<1|B>>>31),P=0;P<5;P++){var v=A[R+5*P];v.high^=w,v.low^=N}for(var W=1;W<25;W++){var w,N,v=A[W],F=v.high,V=v.low,j=u[W];j<32?(w=F<>>32-j,N=V<>>32-j):(w=V<>>64-j,N=F<>>64-j);var J=f[l[W]];J.high=w,J.low=N}var se=f[0],oe=A[0];se.high=oe.high,se.low=oe.low;for(var R=0;R<5;R++)for(var P=0;P<5;P++){var W=R+5*P,v=A[W],ue=f[W],Ce=f[(R+1)%5+5*P],we=f[(R+2)%5+5*P];v.high=ue.high^~Ce.high&we.high,v.low=ue.low^~Ce.low&we.low}var v=A[0],qe=d[C];v.high^=qe.high,v.low^=qe.low}},_doFinalize:function(){var m=this._data,h=m.words,A=this._nDataBytes*8,g=m.sigBytes*8,b=this.blockSize*32;h[g>>>5]|=1<<24-g%32,h[(e.ceil((g+1)/b)*b>>>5)-1]|=128,m.sigBytes=h.length*4,this._process();for(var y=this._state,x=this.cfg.outputLength/8,v=x/8,C=[],R=0;R>>24)&16711935|(N<<24|N>>>8)&4278255360,P=(P<<8|P>>>24)&16711935|(P<<24|P>>>8)&4278255360,C.push(P),C.push(N)}return new s.init(C,x)},clone:function(){for(var m=i.clone.call(this),h=m._state=this._state.slice(0),A=0;A<25;A++)h[A]=h[A].clone();return m}});r.SHA3=i._createHelper(p),r.HmacSHA3=i._createHmacHelper(p)}(Math),t.SHA3})});var RDe=E((UD,wDe)=>{(function(t,e){typeof UD=="object"?wDe.exports=UD=e(pr()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(UD,function(t){return function(e){var r=t,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]),p=a.RIPEMD160=i.extend({_doReset:function(){this._hash=s.create([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(x,v){for(var C=0;C<16;C++){var R=v+C,w=x[R];x[R]=(w<<8|w>>>24)&16711935|(w<<24|w>>>8)&4278255360}var N=this._hash.words,P=d.words,L=f.words,M=o.words,k=c.words,B=u.words,Z=l.words,W,F,V,j,J,se,oe,ue,Ce,we;se=W=N[0],oe=F=N[1],ue=V=N[2],Ce=j=N[3],we=J=N[4];for(var qe,C=0;C<80;C+=1)qe=W+x[v+M[C]]|0,C<16?qe+=m(F,V,j)+P[0]:C<32?qe+=h(F,V,j)+P[1]:C<48?qe+=A(F,V,j)+P[2]:C<64?qe+=g(F,V,j)+P[3]:qe+=b(F,V,j)+P[4],qe=qe|0,qe=y(qe,B[C]),qe=qe+J|0,W=J,J=j,j=y(V,10),V=F,F=qe,qe=se+x[v+k[C]]|0,C<16?qe+=b(oe,ue,Ce)+L[0]:C<32?qe+=g(oe,ue,Ce)+L[1]:C<48?qe+=A(oe,ue,Ce)+L[2]:C<64?qe+=h(oe,ue,Ce)+L[3]:qe+=m(oe,ue,Ce)+L[4],qe=qe|0,qe=y(qe,Z[C]),qe=qe+we|0,se=we,we=Ce,Ce=y(ue,10),ue=oe,oe=qe;qe=N[1]+V+Ce|0,N[1]=N[2]+j+we|0,N[2]=N[3]+J+se|0,N[3]=N[4]+W+oe|0,N[4]=N[0]+F+ue|0,N[0]=qe},_doFinalize:function(){var x=this._data,v=x.words,C=this._nDataBytes*8,R=x.sigBytes*8;v[R>>>5]|=128<<24-R%32,v[(R+64>>>9<<4)+14]=(C<<8|C>>>24)&16711935|(C<<24|C>>>8)&4278255360,x.sigBytes=(v.length+1)*4,this._process();for(var w=this._hash,N=w.words,P=0;P<5;P++){var L=N[P];N[P]=(L<<8|L>>>24)&16711935|(L<<24|L>>>8)&4278255360}return w},clone:function(){var x=i.clone.call(this);return x._hash=this._hash.clone(),x}});function m(x,v,C){return x^v^C}function h(x,v,C){return x&v|~x&C}function A(x,v,C){return(x|~v)^C}function g(x,v,C){return x&C|v&~C}function b(x,v,C){return x^(v|~C)}function y(x,v){return x<>>32-v}r.RIPEMD160=i._createHelper(p),r.HmacRIPEMD160=i._createHmacHelper(p)}(Math),t.RIPEMD160})});var jD=E((qD,NDe)=>{(function(t,e){typeof qD=="object"?NDe.exports=qD=e(pr()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(qD,function(t){(function(){var e=t,r=e.lib,n=r.Base,s=e.enc,i=s.Utf8,a=e.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(),p=this._iKey=u.clone(),m=f.words,h=p.words,A=0;A{(function(t,e,r){typeof HD=="object"?ODe.exports=HD=e(pr(),BD(),jD()):typeof define=="function"&&define.amd?define(["./core","./sha256","./hmac"],e):e(t.CryptoJS)})(HD,function(t){return function(){var e=t,r=e.lib,n=r.Base,s=r.WordArray,i=e.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),p=s.create(),m=s.create([1]),h=p.words,A=m.words,g=d.keySize,b=d.iterations;h.length{(function(t,e,r){typeof QD=="object"?DDe.exports=QD=e(pr(),DQ(),jD()):typeof define=="function"&&define.amd?define(["./core","./sha1","./hmac"],e):e(t.CryptoJS)})(QD,function(t){return function(){var e=t,r=e.lib,n=r.Base,s=r.WordArray,i=e.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(),p=s.create(),m=p.words,h=d.keySize,A=d.iterations;m.length{(function(t,e,r){typeof GD=="object"?kDe.exports=GD=e(pr(),Vd()):typeof define=="function"&&define.amd?define(["./core","./evpkdf"],e):e(t.CryptoJS)})(GD,function(t){t.lib.Cipher||function(e){var r=t,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(L,M){return this.create(this._ENC_XFORM_MODE,L,M)},createDecryptor:function(L,M){return this.create(this._DEC_XFORM_MODE,L,M)},init:function(L,M,k){this.cfg=this.cfg.extend(k),this._xformMode=L,this._key=M,this.reset()},reset:function(){a.reset.call(this),this._doReset()},process:function(L){return this._append(L),this._process()},finalize:function(L){L&&this._append(L);var M=this._doFinalize();return M},keySize:128/32,ivSize:128/32,_ENC_XFORM_MODE:1,_DEC_XFORM_MODE:2,_createHelper:function(){function L(M){return typeof M=="string"?P:R}return function(M){return{encrypt:function(k,B,Z){return L(B).encrypt(M,k,B,Z)},decrypt:function(k,B,Z){return L(B).decrypt(M,k,B,Z)}}}}()}),p=n.StreamCipher=f.extend({_doFinalize:function(){var L=this._process(!0);return L},blockSize:1}),m=r.mode={},h=n.BlockCipherMode=s.extend({createEncryptor:function(L,M){return this.Encryptor.create(L,M)},createDecryptor:function(L,M){return this.Decryptor.create(L,M)},init:function(L,M){this._cipher=L,this._iv=M}}),A=m.CBC=function(){var L=h.extend();L.Encryptor=L.extend({processBlock:function(k,B){var Z=this._cipher,W=Z.blockSize;M.call(this,k,B,W),Z.encryptBlock(k,B),this._prevBlock=k.slice(B,B+W)}}),L.Decryptor=L.extend({processBlock:function(k,B){var Z=this._cipher,W=Z.blockSize,F=k.slice(B,B+W);Z.decryptBlock(k,B),M.call(this,k,B,W),this._prevBlock=F}});function M(k,B,Z){var W,F=this._iv;F?(W=F,this._iv=e):W=this._prevBlock;for(var V=0;V>>2]&255;L.sigBytes-=M}},y=n.BlockCipher=f.extend({cfg:f.cfg.extend({mode:A,padding:b}),reset:function(){var L;f.reset.call(this);var M=this.cfg,k=M.iv,B=M.mode;this._xformMode==this._ENC_XFORM_MODE?L=B.createEncryptor:(L=B.createDecryptor,this._minBufferSize=1),this._mode&&this._mode.__creator==L?this._mode.init(this,k&&k.words):(this._mode=L.call(B,this,k&&k.words),this._mode.__creator=L)},_doProcessBlock:function(L,M){this._mode.processBlock(L,M)},_doFinalize:function(){var L,M=this.cfg.padding;return this._xformMode==this._ENC_XFORM_MODE?(M.pad(this._data,this.blockSize),L=this._process(!0)):(L=this._process(!0),M.unpad(L)),L},blockSize:128/32}),x=n.CipherParams=s.extend({init:function(L){this.mixIn(L)},toString:function(L){return(L||this.formatter).stringify(this)}}),v=r.format={},C=v.OpenSSL={stringify:function(L){var M,k=L.ciphertext,B=L.salt;return B?M=i.create([1398893684,1701076831]).concat(B).concat(k):M=k,M.toString(u)},parse:function(L){var M,k=u.parse(L),B=k.words;return B[0]==1398893684&&B[1]==1701076831&&(M=i.create(B.slice(2,4)),B.splice(0,4),k.sigBytes-=16),x.create({ciphertext:k,salt:M})}},R=n.SerializableCipher=s.extend({cfg:s.extend({format:C}),encrypt:function(L,M,k,B){B=this.cfg.extend(B);var Z=L.createEncryptor(k,B),W=Z.finalize(M),F=Z.cfg;return x.create({ciphertext:W,key:k,iv:F.iv,algorithm:L,mode:F.mode,padding:F.padding,blockSize:L.blockSize,formatter:B.format})},decrypt:function(L,M,k,B){B=this.cfg.extend(B),M=this._parse(M,B.format);var Z=L.createDecryptor(k,B).finalize(M.ciphertext);return Z},_parse:function(L,M){return typeof L=="string"?M.parse(L,this):L}}),w=r.kdf={},N=w.OpenSSL={execute:function(L,M,k,B,Z){if(B||(B=i.random(64/8)),Z)var W=d.create({keySize:M+k,hasher:Z}).compute(L,B);else var W=d.create({keySize:M+k}).compute(L,B);var F=i.create(W.words.slice(M),k*4);return W.sigBytes=M*4,x.create({key:W,iv:F,salt:B})}},P=n.PasswordBasedCipher=R.extend({cfg:R.cfg.extend({kdf:N}),encrypt:function(L,M,k,B){B=this.cfg.extend(B);var Z=B.kdf.execute(k,L.keySize,L.ivSize,B.salt,B.hasher);B.iv=Z.iv;var W=R.encrypt.call(this,L,M,Z.key,B);return W.mixIn(Z),W},decrypt:function(L,M,k,B){B=this.cfg.extend(B),M=this._parse(M,B.format);var Z=B.kdf.execute(k,L.keySize,L.ivSize,M.salt,B.hasher);B.iv=Z.iv;var W=R.decrypt.call(this,L,M,Z.key,B);return W}})}()})});var BDe=E((VD,LDe)=>{(function(t,e,r){typeof VD=="object"?LDe.exports=VD=e(pr(),Ns()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(VD,function(t){return t.mode.CFB=function(){var e=t.lib.BlockCipherMode.extend();e.Encryptor=e.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)}}),e.Decryptor=e.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(t,e,r){typeof zD=="object"?MDe.exports=zD=e(pr(),Ns()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(zD,function(t){return t.mode.CTR=function(){var e=t.lib.BlockCipherMode.extend(),r=e.Encryptor=e.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(t,e,r){typeof KD=="object"?$De.exports=KD=e(pr(),Ns()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(KD,function(t){return t.mode.CTRGladman=function(){var e=t.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=e.Encryptor=e.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(t,e,r){typeof YD=="object"?UDe.exports=YD=e(pr(),Ns()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(YD,function(t){return t.mode.OFB=function(){var e=t.lib.BlockCipherMode.extend(),r=e.Encryptor=e.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(t,e,r){typeof JD=="object"?jDe.exports=JD=e(pr(),Ns()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(JD,function(t){return t.mode.ECB=function(){var e=t.lib.BlockCipherMode.extend();return e.Encryptor=e.extend({processBlock:function(r,n){this._cipher.encryptBlock(r,n)}}),e.Decryptor=e.extend({processBlock:function(r,n){this._cipher.decryptBlock(r,n)}}),e}(),t.mode.ECB})});var GDe=E((XD,QDe)=>{(function(t,e,r){typeof XD=="object"?QDe.exports=XD=e(pr(),Ns()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(XD,function(t){return t.pad.AnsiX923={pad:function(e,r){var n=e.sigBytes,s=r*4,i=s-n%s,a=n+i-1;e.clamp(),e.words[a>>>2]|=i<<24-a%4*8,e.sigBytes+=i},unpad:function(e){var r=e.words[e.sigBytes-1>>>2]&255;e.sigBytes-=r}},t.pad.Ansix923})});var zDe=E((ZD,VDe)=>{(function(t,e,r){typeof ZD=="object"?VDe.exports=ZD=e(pr(),Ns()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(ZD,function(t){return t.pad.Iso10126={pad:function(e,r){var n=r*4,s=n-e.sigBytes%n;e.concat(t.lib.WordArray.random(s-1)).concat(t.lib.WordArray.create([s<<24],1))},unpad:function(e){var r=e.words[e.sigBytes-1>>>2]&255;e.sigBytes-=r}},t.pad.Iso10126})});var YDe=E((ek,KDe)=>{(function(t,e,r){typeof ek=="object"?KDe.exports=ek=e(pr(),Ns()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(ek,function(t){return t.pad.Iso97971={pad:function(e,r){e.concat(t.lib.WordArray.create([2147483648],1)),t.pad.ZeroPadding.pad(e,r)},unpad:function(e){t.pad.ZeroPadding.unpad(e),e.sigBytes--}},t.pad.Iso97971})});var XDe=E((tk,JDe)=>{(function(t,e,r){typeof tk=="object"?JDe.exports=tk=e(pr(),Ns()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(tk,function(t){return t.pad.ZeroPadding={pad:function(e,r){var n=r*4;e.clamp(),e.sigBytes+=n-(e.sigBytes%n||n)},unpad:function(e){for(var r=e.words,n=e.sigBytes-1,n=e.sigBytes-1;n>=0;n--)if(r[n>>>2]>>>24-n%4*8&255){e.sigBytes=n+1;break}}},t.pad.ZeroPadding})});var eke=E((rk,ZDe)=>{(function(t,e,r){typeof rk=="object"?ZDe.exports=rk=e(pr(),Ns()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(rk,function(t){return t.pad.NoPadding={pad:function(){},unpad:function(){}},t.pad.NoPadding})});var rke=E((nk,tke)=>{(function(t,e,r){typeof nk=="object"?tke.exports=nk=e(pr(),Ns()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(nk,function(t){return function(e){var r=t,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})}}}(),t.format.Hex})});var ske=E((sk,nke)=>{(function(t,e,r){typeof sk=="object"?nke.exports=sk=e(pr(),f0(),p0(),Vd(),Ns()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],e):e(t.CryptoJS)})(sk,function(t){return function(){var e=t,r=e.lib,n=r.BlockCipher,s=e.algo,i=[],a=[],o=[],c=[],u=[],l=[],d=[],f=[],p=[],m=[];(function(){for(var g=[],b=0;b<256;b++)b<128?g[b]=b<<1:g[b]=b<<1^283;for(var y=0,x=0,b=0;b<256;b++){var v=x^x<<1^x<<2^x<<3^x<<4;v=v>>>8^v&255^99,i[y]=v,a[v]=y;var C=g[y],R=g[C],w=g[R],N=g[v]*257^v*16843008;o[y]=N<<24|N>>>8,c[y]=N<<16|N>>>16,u[y]=N<<8|N>>>24,l[y]=N;var N=w*16843009^R*65537^C*257^y*16843008;d[v]=N<<24|N>>>8,f[v]=N<<16|N>>>16,p[v]=N<<8|N>>>24,m[v]=N,y?(y=C^g[g[g[w^C]]],x^=g[g[x]]):y=x=1}})();var h=[0,1,2,4,8,16,32,64,128,27,54],A=s.AES=n.extend({_doReset:function(){var g;if(!(this._nRounds&&this._keyPriorReset===this._key)){for(var b=this._keyPriorReset=this._key,y=b.words,x=b.sigBytes/4,v=this._nRounds=x+6,C=(v+1)*4,R=this._keySchedule=[],w=0;w6&&w%x==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^=h[w/x|0]<<24),R[w]=R[w-x]^g);for(var N=this._invKeySchedule=[],P=0;P>>24]]^f[i[g>>>16&255]]^p[i[g>>>8&255]]^m[i[g&255]]}}},encryptBlock:function(g,b){this._doCryptBlock(g,b,this._keySchedule,o,c,u,l,i)},decryptBlock:function(g,b){var y=g[b+1];g[b+1]=g[b+3],g[b+3]=y,this._doCryptBlock(g,b,this._invKeySchedule,d,f,p,m,a);var y=g[b+1];g[b+1]=g[b+3],g[b+3]=y},_doCryptBlock:function(g,b,y,x,v,C,R,w){for(var N=this._nRounds,P=g[b]^y[0],L=g[b+1]^y[1],M=g[b+2]^y[2],k=g[b+3]^y[3],B=4,Z=1;Z>>24]^v[L>>>16&255]^C[M>>>8&255]^R[k&255]^y[B++],F=x[L>>>24]^v[M>>>16&255]^C[k>>>8&255]^R[P&255]^y[B++],V=x[M>>>24]^v[k>>>16&255]^C[P>>>8&255]^R[L&255]^y[B++],j=x[k>>>24]^v[P>>>16&255]^C[L>>>8&255]^R[M&255]^y[B++];P=W,L=F,M=V,k=j}var W=(w[P>>>24]<<24|w[L>>>16&255]<<16|w[M>>>8&255]<<8|w[k&255])^y[B++],F=(w[L>>>24]<<24|w[M>>>16&255]<<16|w[k>>>8&255]<<8|w[P&255])^y[B++],V=(w[M>>>24]<<24|w[k>>>16&255]<<16|w[P>>>8&255]<<8|w[L&255])^y[B++],j=(w[k>>>24]<<24|w[P>>>16&255]<<16|w[L>>>8&255]<<8|w[M&255])^y[B++];g[b]=W,g[b+1]=F,g[b+2]=V,g[b+3]=j},keySize:256/32});e.AES=n._createHelper(A)}(),t.AES})});var ake=E((ik,ike)=>{(function(t,e,r){typeof ik=="object"?ike.exports=ik=e(pr(),f0(),p0(),Vd(),Ns()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],e):e(t.CryptoJS)})(ik,function(t){return function(){var e=t,r=e.lib,n=r.WordArray,s=r.BlockCipher,i=e.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 h=this._key,A=h.words,g=[],b=0;b<56;b++){var y=a[b]-1;g[b]=A[y>>>5]>>>31-y%32&1}for(var x=this._subKeys=[],v=0;v<16;v++){for(var C=x[v]=[],R=c[v],b=0;b<24;b++)C[b/6|0]|=g[(o[b]-1+R)%28]<<31-b%6,C[4+(b/6|0)]|=g[28+(o[b+24]-1+R)%28]<<31-b%6;C[0]=C[0]<<1|C[0]>>>31;for(var b=1;b<7;b++)C[b]=C[b]>>>(b-1)*4+3;C[7]=C[7]<<5|C[7]>>>27}for(var w=this._invSubKeys=[],b=0;b<16;b++)w[b]=x[15-b]},encryptBlock:function(h,A){this._doCryptBlock(h,A,this._subKeys)},decryptBlock:function(h,A){this._doCryptBlock(h,A,this._invSubKeys)},_doCryptBlock:function(h,A,g){this._lBlock=h[A],this._rBlock=h[A+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 b=0;b<16;b++){for(var y=g[b],x=this._lBlock,v=this._rBlock,C=0,R=0;R<8;R++)C|=u[R][((v^y[R])&l[R])>>>0];this._lBlock=v,this._rBlock=x^C}var w=this._lBlock;this._lBlock=this._rBlock,this._rBlock=w,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),h[A]=this._lBlock,h[A+1]=this._rBlock},keySize:64/32,ivSize:64/32,blockSize:64/32});function f(h,A){var g=(this._lBlock>>>h^this._rBlock)&A;this._rBlock^=g,this._lBlock^=g<>>h^this._lBlock)&A;this._lBlock^=g,this._rBlock^=g<192.");var g=A.slice(0,2),b=A.length<4?A.slice(0,2):A.slice(2,4),y=A.length<6?A.slice(0,2):A.slice(4,6);this._des1=d.createEncryptor(n.create(g)),this._des2=d.createEncryptor(n.create(b)),this._des3=d.createEncryptor(n.create(y))},encryptBlock:function(h,A){this._des1.encryptBlock(h,A),this._des2.decryptBlock(h,A),this._des3.encryptBlock(h,A)},decryptBlock:function(h,A){this._des3.decryptBlock(h,A),this._des2.encryptBlock(h,A),this._des1.decryptBlock(h,A)},keySize:192/32,ivSize:64/32,blockSize:64/32});e.TripleDES=s._createHelper(m)}(),t.TripleDES})});var cke=E((ak,oke)=>{(function(t,e,r){typeof ak=="object"?oke.exports=ak=e(pr(),f0(),p0(),Vd(),Ns()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],e):e(t.CryptoJS)})(ak,function(t){return function(){var e=t,r=e.lib,n=r.StreamCipher,s=e.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,p=0;f<256;f++){var m=f%l,h=u[m>>>2]>>>24-m%4*8&255;p=(p+d[f]+h)%256;var A=d[f];d[f]=d[p],d[p]=A}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 p=c[u];c[u]=c[l],c[l]=p,d|=c[(c[u]+c[l])%256]<<24-f*8}return this._i=u,this._j=l,d}e.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)}});e.RC4Drop=n._createHelper(o)}(),t.RC4})});var lke=E((ok,uke)=>{(function(t,e,r){typeof ok=="object"?uke.exports=ok=e(pr(),f0(),p0(),Vd(),Ns()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],e):e(t.CryptoJS)})(ok,function(t){return function(){var e=t,r=e.lib,n=r.StreamCipher,s=e.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 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],m=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++)m[f]^=p[f+4&7];if(d){var h=d.words,A=h[0],g=h[1],b=(A<<8|A>>>24)&16711935|(A<<24|A>>>8)&4278255360,y=(g<<8|g>>>24)&16711935|(g<<24|g>>>8)&4278255360,x=b>>>16|y&4294901760,v=y<<16|b&65535;m[0]^=b,m[1]^=x,m[2]^=y,m[3]^=v,m[4]^=b,m[5]^=x,m[6]^=y,m[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 p=0;p<4;p++)i[p]=(i[p]<<8|i[p]>>>24)&16711935|(i[p]<<24|i[p]>>>8)&4278255360,l[d+p]^=i[p]},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 p=l[f]+d[f],m=p&65535,h=p>>>16,A=((m*m>>>17)+m*h>>>15)+h*h,g=((p&4294901760)*p|0)+((p&65535)*p|0);o[f]=A^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}e.Rabbit=n._createHelper(c)}(),t.Rabbit})});var fke=E((ck,dke)=>{(function(t,e,r){typeof ck=="object"?dke.exports=ck=e(pr(),f0(),p0(),Vd(),Ns()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],e):e(t.CryptoJS)})(ck,function(t){return function(){var e=t,r=e.lib,n=r.StreamCipher,s=e.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],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 m=0;m<4;m++)u.call(this);for(var m=0;m<8;m++)p[m]^=f[m+4&7];if(d){var h=d.words,A=h[0],g=h[1],b=(A<<8|A>>>24)&16711935|(A<<24|A>>>8)&4278255360,y=(g<<8|g>>>24)&16711935|(g<<24|g>>>8)&4278255360,x=b>>>16|y&4294901760,v=y<<16|b&65535;p[0]^=b,p[1]^=x,p[2]^=y,p[3]^=v,p[4]^=b,p[5]^=x,p[6]^=y,p[7]^=v;for(var m=0;m<4;m++)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 p=0;p<4;p++)i[p]=(i[p]<<8|i[p]>>>24)&16711935|(i[p]<<24|i[p]>>>8)&4278255360,l[d+p]^=i[p]},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 p=l[f]+d[f],m=p&65535,h=p>>>16,A=((m*m>>>17)+m*h>>>15)+h*h,g=((p&4294901760)*p|0)+((p&65535)*p|0);o[f]=A^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}e.RabbitLegacy=n._createHelper(c)}(),t.RabbitLegacy})});var mke=E((uk,pke)=>{(function(t,e,r){typeof uk=="object"?pke.exports=uk=e(pr(),f0(),p0(),Vd(),Ns()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],e):e(t.CryptoJS)})(uk,function(t){return function(){var e=t,r=e.lib,n=r.BlockCipher,s=e.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(m,h){let A=h>>24&255,g=h>>16&255,b=h>>8&255,y=h&255,x=m.sbox[0][A]+m.sbox[1][g];return x=x^m.sbox[2][b],x=x+m.sbox[3][y],x}function l(m,h,A){let g=h,b=A,y;for(let x=0;x1;--x)g=g^m.pbox[x],b=u(m,g)^b,y=g,g=b,b=y;return y=g,g=b,b=y,b=b^m.pbox[1],g=g^m.pbox[0],{left:g,right:b}}function f(m,h,A){for(let v=0;v<4;v++){m.sbox[v]=[];for(let C=0;C<256;C++)m.sbox[v][C]=o[v][C]}let g=0;for(let v=0;v=A&&(g=0);let b=0,y=0,x=0;for(let v=0;v{(function(t,e,r){typeof lk=="object"?hke.exports=lk=e(pr(),Iv(),fDe(),mDe(),f0(),ADe(),p0(),DQ(),BD(),_De(),kQ(),CDe(),TDe(),RDe(),jD(),PDe(),Vd(),Ns(),BDe(),WDe(),FDe(),qDe(),HDe(),GDe(),zDe(),YDe(),XDe(),eke(),rke(),ske(),ake(),cke(),lke(),fke(),mke()):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"],e):t.CryptoJS=e(t.CryptoJS)})(lk,function(t){return t})});var Rv=E(ir=>{"use strict";Object.defineProperty(ir,"__esModule",{value:!0});ir.getOptions=ir.setOptions=ir.hasOwnProp=ir.formatDate=ir.camelify=ir.splitByCommaWithPreservingQuotes=ir.trim=ir.splitAt=ir.tryCatch=ir.byteSequenceToHex=ir.hexToByteSequence=ir.toNumber=ir.INVALIDPLAYLIST=ir.CONDITIONALPARAMCHECK=ir.PARAMCHECK=ir.CONDITIONALASSERT=ir.ASSERT=ir.THROW=void 0;var wv={};function Nh(t){if(!wv.strictMode){wv.silent||console.error(t.message);return}throw t}ir.THROW=Nh;function fJt(t,...e){for(let[r,n]of e.entries())n||Nh(new Error(`${t} : Failed at [${r}]`))}ir.ASSERT=fJt;function pJt(...t){for(let[e,[r,n]]of t.entries())r&&(n||Nh(new Error(`Conditional Assert : Failed at [${e}]`)))}ir.CONDITIONALASSERT=pJt;function mJt(...t){for(let[e,r]of t.entries())r===void 0&&Nh(new Error(`Param Check : Failed at [${e}]`))}ir.PARAMCHECK=mJt;function hJt(...t){for(let[e,[r,n]]of t.entries())r&&n===void 0&&Nh(new Error(`Conditional Param Check : Failed at [${e}]`))}ir.CONDITIONALPARAMCHECK=hJt;function gJt(t){Nh(new Error(`Invalid Playlist : ${t}`))}ir.INVALIDPLAYLIST=gJt;function xke(t,e=10){if(typeof t=="number")return t;let r=e===10?Number.parseFloat(t):Number.parseInt(t,e);return Number.isNaN(r)?0:r}ir.toNumber=xke;function AJt(t){(t.startsWith("0x")||t.startsWith("0X"))&&(t=t.slice(2));let e=[];for(let r=0;r{"use strict";var wJt=mr&&mr.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),RJt=mr&&mr.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),NJt=mr&&mr.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&wJt(e,t,r);return RJt(e,t),e};Object.defineProperty(mr,"__esModule",{value:!0});mr.RenditionReport=mr.PrefetchSegment=mr.PartialSegment=mr.Segment=mr.MediaPlaylist=mr.MasterPlaylist=mr.Playlist=mr.SpliceInfo=mr.DateRange=mr.MediaInitializationSection=mr.Key=mr.SessionData=mr.Variant=mr.Rendition=void 0;var Es=NJt(Rv()),BQ=class{constructor({type:e,uri:r,groupId:n,language:s,assocLanguage:i,name:a,isDefault:o,autoselect:c,forced:u,instreamId:l,characteristics:d,channels:f}){Es.PARAMCHECK(e,n,a),Es.CONDITIONALASSERT([e==="SUBTITLES",r],[e==="CLOSED-CAPTIONS",l],[e==="CLOSED-CAPTIONS",!r],[u,e==="SUBTITLES"]),this.type=e,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}};mr.Rendition=BQ;var MQ=class{constructor({uri:e,isIFrameOnly:r=!1,bandwidth:n,averageBandwidth:s,score:i,codecs:a,resolution:o,frameRate:c,hdcpLevel:u,allowedCpc:l,videoRange:d,stableVariantId:f,programId:p,audio:m=[],video:h=[],subtitles:A=[],closedCaptions:g=[],currentRenditions:b={audio:0,video:0,subtitles:0,closedCaptions:0}}){Es.PARAMCHECK(e,n),this.uri=e,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=p,this.audio=m,this.video=h,this.subtitles=A,this.closedCaptions=g,this.currentRenditions=b}};mr.Variant=MQ;var WQ=class{constructor({id:e,value:r,uri:n,language:s}){Es.PARAMCHECK(e,r||n),Es.ASSERT("SessionData cannot have both value and uri, shoud be either.",!(r&&n)),this.id=e,this.value=r,this.uri=n,this.language=s}};mr.SessionData=WQ;var $Q=class{constructor({method:e,uri:r,iv:n,format:s,formatVersion:i}){Es.PARAMCHECK(e),Es.CONDITIONALPARAMCHECK([e!=="NONE",r]),Es.CONDITIONALASSERT([e==="NONE",!(r||n||s||i)]),this.method=e,this.uri=r,this.iv=n,this.format=s,this.formatVersion=i}};mr.Key=$Q;var FQ=class{constructor({hint:e=!1,uri:r,mimeType:n,byterange:s}){Es.PARAMCHECK(r),this.hint=e,this.uri=r,this.mimeType=n,this.byterange=s}};mr.MediaInitializationSection=FQ;var UQ=class{constructor({id:e,classId:r,start:n,end:s,duration:i,plannedDuration:a,endOnNext:o,attributes:c={}}){Es.PARAMCHECK(e),Es.CONDITIONALPARAMCHECK([o===!0,r]),Es.CONDITIONALASSERT([s,n],[s,n<=s],[i,i>=0],[a,a>=0]),this.id=e,this.classId=r,this.start=n,this.end=s,this.duration=i,this.plannedDuration=a,this.endOnNext=o,this.attributes=c}};mr.DateRange=UQ;var qQ=class{constructor({type:e,duration:r,tagName:n,value:s}){Es.PARAMCHECK(e),Es.CONDITIONALPARAMCHECK([e==="OUT",r]),Es.CONDITIONALPARAMCHECK([e==="RAW",n]),this.type=e,this.duration=r,this.tagName=n,this.value=s}};mr.SpliceInfo=qQ;var $x=class{constructor(e){Es.PARAMCHECK(e),this.type=e}},Nv=class extends $x{constructor({isMasterPlaylist:e,uri:r,version:n,independentSegments:s=!1,start:i,source:a}){super("playlist"),Es.PARAMCHECK(e),this.isMasterPlaylist=e,this.uri=r,this.version=n,this.independentSegments=s,this.start=i,this.source=a}};mr.Playlist=Nv;var jQ=class extends Nv{constructor(e={}){super({...e,isMasterPlaylist:!0});let{variants:r=[],currentVariant:n,sessionDataList:s=[],sessionKeyList:i=[]}=e;this.variants=r,this.currentVariant=n,this.sessionDataList=s,this.sessionKeyList=i}};mr.MasterPlaylist=jQ;var HQ=class extends Nv{constructor(e={}){super({...e,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:p=0,hash:m}=e;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=p,this.hash=m}};mr.MediaPlaylist=HQ;var QQ=class extends $x{constructor({uri:e,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:p,markers:m=[],parts:h=[]}){super("segment"),this.uri=e,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=p,this.markers=m,this.parts=h}};mr.Segment=QQ;var GQ=class extends $x{constructor({hint:e=!1,uri:r,duration:n,independent:s,byterange:i,gap:a}){super("part"),Es.PARAMCHECK(r),this.hint=e,this.uri=r,this.duration=n,this.independent=s,this.duration=n,this.byterange=i,this.gap=a}};mr.PartialSegment=GQ;var VQ=class extends $x{constructor({uri:e,discontinuity:r,mediaSequenceNumber:n=0,discontinuitySequence:s=0,key:i}){super("prefetch"),Es.PARAMCHECK(e),this.uri=e,this.discontinuity=r,this.mediaSequenceNumber=n,this.discontinuitySequence=s,this.key=i}};mr.PrefetchSegment=VQ;var zQ=class{constructor({uri:e,lastMSN:r,lastPart:n}){Es.PARAMCHECK(e),this.uri=e,this.lastMSN=r,this.lastPart=n}};mr.RenditionReport=zQ});var Tke=E(zd=>{"use strict";var OJt=zd&&zd.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),PJt=zd&&zd.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),DJt=zd&&zd.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&OJt(e,t,r);return PJt(e,t),e};Object.defineProperty(zd,"__esModule",{value:!0});var We=DJt(Rv()),ei=KQ();function Cke(t){return We.trim(t,'"')}function kJt(t){switch(t){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 LJt(t){let e=We.splitAt(t,",");return{duration:We.toNumber(e[0]),title:decodeURIComponent(escape(e[1]))}}function Ike(t){let e=We.splitAt(t,"@");return{length:We.toNumber(e[0]),offset:e[1]?We.toNumber(e[1]):-1}}function BJt(t){let e=We.splitAt(t,"x");return{width:We.toNumber(e[0]),height:We.toNumber(e[1])}}function MJt(t){let e="ALLOWED-CPC: Each entry must consit of KEYFORMAT and Content Protection Configuration",r=t.split(",");r.length===0&&We.INVALIDPLAYLIST(e);let n=[];for(let s of r){let[i,a]=We.splitAt(s,":");if(!i||!a){We.INVALIDPLAYLIST(e);continue}n.push({format:i,cpcList:a.split("/")})}return n}function WJt(t){let e=We.hexToByteSequence(t);return e.length!==16&&We.INVALIDPLAYLIST("IV must be a 128-bit unsigned integer"),e}function $Jt(t){return t.startsWith('"')?Cke(t):t.startsWith("0x")||t.startsWith("0X")?We.hexToByteSequence(t):We.toNumber(t)}function YQ(t,e){e.IV&&t.compatibleVersion<2&&(t.compatibleVersion=2),(e.KEYFORMAT||e.KEYFORMATVERSIONS)&&t.compatibleVersion<5&&(t.compatibleVersion=5)}function bke(t){let e={};for(let r of We.splitByCommaWithPreservingQuotes(t)){let[n,s]=We.splitAt(r,"="),i=Cke(s);switch(n){case"URI":e[n]=i;break;case"START-DATE":case"END-DATE":e[n]=new Date(i);break;case"IV":e[n]=WJt(i);break;case"BYTERANGE":e[n]=Ike(i);break;case"RESOLUTION":e[n]=BJt(i);break;case"ALLOWED-CPC":e[n]=MJt(i);break;case"END-ON-NEXT":case"DEFAULT":case"AUTOSELECT":case"FORCED":case"PRECISE":case"CAN-BLOCK-RELOAD":case"INDEPENDENT":case"GAP":e[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":e[n]=We.toNumber(i);break;default:n.startsWith("SCTE35-")?e[n]=We.hexToByteSequence(i):n.startsWith("X-")?e[n]=$Jt(s):(n==="VIDEO-RANGE"&&i!=="SDR"&&i!=="HLG"&&i!=="PQ"&&We.INVALIDPLAYLIST(`VIDEO-RANGE: unknown value "${i}"`),e[n]=i)}}return e}function FJt(t,e){switch(t){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[We.toNumber(e),null];case"EXT-X-CUE-OUT":return Number.isNaN(Number(e))?[null,bke(e)]:[We.toNumber(e),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,bke(e)];case"EXTINF":return[LJt(e),null];case"EXT-X-BYTERANGE":return[Ike(e),null];case"EXT-X-PROGRAM-DATE-TIME":return[new Date(e),null];case"EXT-X-PLAYLIST-TYPE":return[e,null];default:return[e,null]}}function Eke(){We.INVALIDPLAYLIST("The file contains both media and master playlist tags.")}function UJt(t){let e=t.indexOf(":");return e===-1?[t.slice(1).trim(),null]:[t.slice(1,e).trim(),t.slice(e+1).trim()]}function qJt({attributes:t}){return new ei.Rendition({type:t.TYPE,uri:t.URI,groupId:t["GROUP-ID"],language:t.LANGUAGE,assocLanguage:t["ASSOC-LANGUAGE"],name:t.NAME,isDefault:t.DEFAULT,autoselect:t.AUTOSELECT,forced:t.FORCED,instreamId:t["INSTREAM-ID"],characteristics:t.CHARACTERISTICS,channels:t.CHANNELS})}function jJt(t,e){let r=!1;for(let n of t){if(n.name===e.name)return"All EXT-X-MEDIA tags in the same Group MUST have different NAME attributes.";n.isDefault&&(r=!0)}return r&&e.isDefault?"EXT-X-MEDIA A Group MUST NOT have more than one member with a DEFAULT attribute of YES.":""}function HJt(t,e,r){let n=qJt(e),s=t[We.camelify(r)],i=jJt(s,n);i&&We.INVALIDPLAYLIST(i),s.push(n),n.isDefault&&(t.currentRenditions[We.camelify(r)]=s.length-1)}function QJt(t,e,r){for(let n of["AUDIO","VIDEO","SUBTITLES","CLOSED-CAPTIONS"])n==="CLOSED-CAPTIONS"&&t[n]==="NONE"?(r.isClosedCaptionsNone=!0,e.closedCaptions=[]):t[n]&&!e[We.camelify(n)].some(s=>s.groupId===t[n])&&We.INVALIDPLAYLIST(`${n} attribute MUST match the value of the GROUP-ID attribute of an EXT-X-MEDIA tag whose TYPE attribute is ${n}.`)}function _ke(t,e,r,n,s){let i=new ei.Variant({uri:r,bandwidth:e.BANDWIDTH,averageBandwidth:e["AVERAGE-BANDWIDTH"],score:e.SCORE,codecs:e.CODECS,resolution:e.RESOLUTION,frameRate:e["FRAME-RATE"],hdcpLevel:e["HDCP-LEVEL"],allowedCpc:e["ALLOWED-CPC"],videoRange:e["VIDEO-RANGE"],stableVariantId:e["STABLE-VARIANT-ID"],programId:e["PROGRAM-ID"]});for(let a of t)if(a.name==="EXT-X-MEDIA"){let o=a.attributes,c=o.TYPE;if((!c||!o["GROUP-ID"])&&We.INVALIDPLAYLIST("EXT-X-MEDIA TYPE attribute is REQUIRED."),e[c]===o["GROUP-ID"]&&(HJt(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 QJt(e,i,s),i.isIFrameOnly=n,i}function GJt(t,e){if(t.method!==e.method||t.uri!==e.uri)return!1;if(t.iv){if(!e.iv||t.iv.length!==e.iv.length)return!1;for(let r=0;ru.id===c.id&&u.language===c.language)&&We.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"&&We.INVALIDPLAYLIST("EXT-X-SESSION-KEY: The value of the METHOD attribute MUST NOT be NONE");let c=new ei.Key({method:o.METHOD,uri:o.URI,iv:o.IV,format:o.KEYFORMAT,formatVersion:o.KEYFORMATVERSIONS});r.sessionKeyList.some(u=>GJt(u,c))&&We.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."),YQ(e,o),r.sessionKeyList.push(c)}else i==="EXT-X-INDEPENDENT-SEGMENTS"?(r.independentSegments&&We.INVALIDPLAYLIST("EXT-X-INDEPENDENT-SEGMENTS tag MUST NOT appear more than once in a Playlist"),r.independentSegments=!0):i==="EXT-X-START"&&(r.start&&We.INVALIDPLAYLIST("EXT-X-START tag MUST NOT appear more than once in a Playlist"),typeof o["TIME-OFFSET"]!="number"&&We.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"&&We.INVALIDPLAYLIST("If any Variant Stream contains the SCORE attribute, then all Variant Streams in the Master Playlist SHOULD have a SCORE attribute");if(e.isClosedCaptionsNone)for(let s of r.variants)s.closedCaptions.length>0&&We.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 Ske(t,e,r,n,s,i,a){let o=new ei.Segment({uri:e,mediaSequenceNumber:s,discontinuitySequence:i}),c=!1,u=!1;for(let l=r;l<=n;l++){let{name:d,value:f,attributes:p}=t[l];if(d==="EXTINF")!Number.isInteger(f.duration)&&a.compatibleVersion<3&&(a.compatibleVersion=3),Math.round(f.duration)>a.targetDuration&&We.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&&We.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&&We.INVALIDPLAYLIST("EXT-X-KEY must appear before the first EXT-X-PART tag of the Parent Segment."),YQ(a,p),o.key=new ei.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&&We.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 ei.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 m={};for(let h of Object.keys(p))(h.startsWith("SCTE35-")||h.startsWith("X-"))&&(m[h]=p[h]);o.dateRange=new ei.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:m})}else if(d==="EXT-X-CUE-OUT")o.markers.push(new ei.SpliceInfo({type:"OUT",duration:p&&p.DURATION||f}));else if(d==="EXT-X-CUE-IN")o.markers.push(new ei.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 ei.SpliceInfo({type:"RAW",tagName:d,value:f}));else if(d==="EXT-X-PRELOAD-HINT"&&!p.TYPE)We.INVALIDPLAYLIST("EXT-X-PRELOAD-HINT: TYPE attribute is mandatory");else if(d==="EXT-X-PRELOAD-HINT"&&p.TYPE==="PART"&&u)We.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)We.INVALIDPLAYLIST("EXT-X-PART / EXT-X-PRELOAD-HINT: URI attribute is mandatory");else if(d==="EXT-X-PRELOAD-HINT"&&p.TYPE==="MAP")c&&We.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 ei.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&&We.INVALIDPLAYLIST("EXT-X-PART: DURATION attribute is mandatory"),d==="EXT-X-PRELOAD-HINT"&&(u=!0);let m=new ei.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(m)}}return o}function zJt(t,e,r,n,s,i,a){let o=new ei.PrefetchSegment({uri:e,mediaSequenceNumber:s,discontinuitySequence:i});for(let c=r;c<=n;c++){let{name:u,attributes:l}=t[c];u==="EXTINF"?We.INVALIDPLAYLIST("A prefetch segment must not be advertised with an EXTINF tag."):u==="EXT-X-DISCONTINUITY"?We.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"?(YQ(a,l),o.key=new ei.Key({method:l.METHOD,uri:l.URI,iv:l.IV,format:l.KEYFORMAT,formatVersion:l.KEYFORMATVERSIONS})):u==="EXT-X-MAP"&&We.INVALIDPLAYLIST("Prefetch segments must not be advertised with an EXT-X-MAP tag.")}return o}function KJt(t,e){let r=new ei.MediaPlaylist,n=-1,s=0,i=!1,a=!1,o=0,c=null,u=null,l=!1;for(let[d,f]of t.entries()){let{name:p,value:m,attributes:h,category:A}=f;if(A==="Segment"){n===-1&&(n=d),p==="EXT-X-DISCONTINUITY"&&(i=!0);continue}if(p==="EXT-X-VERSION")r.version===void 0?r.version=m:We.INVALIDPLAYLIST("A Playlist file MUST NOT contain more than one EXT-X-VERSION tag.");else if(p==="EXT-X-TARGETDURATION")r.targetDuration=e.targetDuration=m;else if(p==="EXT-X-MEDIA-SEQUENCE")r.segments.length>0&&We.INVALIDPLAYLIST("The EXT-X-MEDIA-SEQUENCE tag MUST appear before the first Media Segment in the Playlist."),r.mediaSequenceBase=s=m;else if(p==="EXT-X-DISCONTINUITY-SEQUENCE")r.segments.length>0&&We.INVALIDPLAYLIST("The EXT-X-DISCONTINUITY-SEQUENCE tag MUST appear before the first Media Segment in the Playlist."),i&&We.INVALIDPLAYLIST("The EXT-X-DISCONTINUITY-SEQUENCE tag MUST appear before any EXT-X-DISCONTINUITY tag."),r.discontinuitySequenceBase=o=m;else if(p==="EXT-X-ENDLIST")r.endlist=!0;else if(p==="EXT-X-PLAYLIST-TYPE")r.playlistType=m;else if(p==="EXT-X-I-FRAMES-ONLY")e.compatibleVersion<4&&(e.compatibleVersion=4),r.isIFrame=!0;else if(p==="EXT-X-INDEPENDENT-SEGMENTS")r.independentSegments&&We.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&&We.INVALIDPLAYLIST("EXT-X-START tag MUST NOT appear more than once in a Playlist"),typeof h["TIME-OFFSET"]!="number"&&We.INVALIDPLAYLIST("EXT-X-START: TIME-OFFSET attribute is REQUIRED"),r.start={offset:h["TIME-OFFSET"],precise:h.PRECISE||!1};else if(p==="EXT-X-SERVER-CONTROL")h["CAN-BLOCK-RELOAD"]||We.INVALIDPLAYLIST("EXT-X-SERVER-CONTROL: CAN-BLOCK-RELOAD=YES is mandatory for Low-Latency HLS"),r.lowLatencyCompatibility={canBlockReload:h["CAN-BLOCK-RELOAD"],canSkipUntil:h["CAN-SKIP-UNTIL"],holdBack:h["HOLD-BACK"],partHoldBack:h["PART-HOLD-BACK"]};else if(p==="EXT-X-PART-INF")h["PART-TARGET"]||We.INVALIDPLAYLIST("EXT-X-PART-INF: PART-TARGET attribute is mandatory"),r.partTargetDuration=h["PART-TARGET"];else if(p==="EXT-X-RENDITION-REPORT")h.URI||We.INVALIDPLAYLIST("EXT-X-RENDITION-REPORT: URI attribute is mandatory"),h.URI.search(/^[a-z]+:/)===0&&We.INVALIDPLAYLIST("EXT-X-RENDITION-REPORT: URI must be relative to the playlist uri"),r.renditionReports.push(new ei.RenditionReport({uri:h.URI,lastMSN:h["LAST-MSN"],lastPart:h["LAST-PART"]}));else if(p==="EXT-X-SKIP")h["SKIPPED-SEGMENTS"]||We.INVALIDPLAYLIST("EXT-X-SKIP: SKIPPED-SEGMENTS attribute is mandatory"),e.compatibleVersion<9&&(e.compatibleVersion=9),r.skip=h["SKIPPED-SEGMENTS"],s+=r.skip;else if(p==="EXT-X-PREFETCH"){let g=zJt(t,m,n===-1?d:n,d-1,s++,o,e);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&&We.INVALIDPLAYLIST("A URI line is not preceded by any segment tags"),r.targetDuration||We.INVALIDPLAYLIST("The EXT-X-TARGETDURATION tag is REQUIRED"),a&&We.INVALIDPLAYLIST("These segments must appear after all complete segments.");let g=Ske(t,f,n,d-1,s++,o,e);g&&([o,c,u]=vke(r,g,o,c,u),!l&&g.parts.length>0&&(l=!0)),n=-1}}if(n!==-1){let d=Ske(t,"",n,t.length-1,s++,o,e);if(d){let{parts:f}=d;f.length>0&&!r.endlist&&!f.at(-1)?.hint&&We.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"),vke(r,d,c,u),!l&&d.parts.length>0&&(l=!0)}}return YJt(r.segments),r.lowLatencyCompatibility&&JJt(r,l),r}function vke(t,e,r,n,s){let{discontinuity:i,key:a,map:o,byterange:c,uri:u}=e;if(i&&(e.discontinuitySequence=r+1),a||(e.key=n),o||(e.map=s),c&&c.offset===-1){let{segments:l}=t;if(l.length>0){let d=l.at(-1);d.byterange&&d.uri===u?c.offset=d.byterange.offset+d.byterange.length:We.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 We.INVALIDPLAYLIST("If offset of EXT-X-BYTERANGE is not present, a previous Media Segment MUST appear in the Playlist file")}return t.segments.push(e),[e.discontinuitySequence,e.key,e.map]}function YJt(t){let e=new Map,r=new Map,n=!1,s=!1;for(let i=t.length-1;i>=0;i--){let{programDateTime:a,dateRange:o}=t[i];if(a&&(s=!0),o&&o.start){n=!0,o.endOnNext&&(o.end||o.duration)&&We.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()&&We.INVALIDPLAYLIST("END-DATE MUST be equal to the value of the START-DATE attribute plus the value of the DURATION"),o.endOnNext&&(o.end=e.get(o.classId)),e.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&&We.INVALIDPLAYLIST("PART-TARGET is the maximum duration of any Partial Segment"),d0&&(u.lastPart=l.parts.length-1)}}function XJt(t,e){if(t==="Segment"||t==="MediaPlaylist"){if(e.isMasterPlaylist===void 0){e.isMasterPlaylist=!1;return}e.isMasterPlaylist&&Eke();return}if(t==="MasterPlaylist"){if(e.isMasterPlaylist===void 0){e.isMasterPlaylist=!0;return}e.isMasterPlaylist===!1&&Eke()}}function ZJt(t,e){let[r,n]=UJt(t),s=kJt(r);if(XJt(s,e),s==="Unknown")return null;s==="MediaPlaylist"&&r!=="EXT-X-RENDITION-REPORT"&&r!=="EXT-X-PREFETCH"&&(e.hash[r]&&We.INVALIDPLAYLIST("There MUST NOT be more than one Media Playlist tag of each type in any Media Playlist"),e.hash[r]=!0);let[i,a]=FJt(r,n);return{name:r,category:s,value:i,attributes:a}}function eXt(t,e){let r=[];for(let n of t.split(` -`)){let s=Buffer.from(n.trim()).toString();if(s){if(s.startsWith("#")){if(s.startsWith("#EXT")){let i=ZJt(s,e);i&&r.push(i)}continue}r.push(s)}}return(r.length===0||r[0].name!=="EXTM3U")&&We.INVALIDPLAYLIST("The EXTM3U tag MUST be the first line."),r}function tXt(t,e){let r;return e.isMasterPlaylist?r=VJt(t,e):(r=KJt(t,e),!r.isIFrame&&e.hasMap&&e.compatibleVersion<6&&(e.compatibleVersion=6)),e.compatibleVersion>1&&(!r.version||r.version{"use strict";var nXt=Kd&&Kd.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),sXt=Kd&&Kd.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),iXt=Kd&&Kd.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&nXt(e,t,r);return sXt(e,t),e};Object.defineProperty(Kd,"__esModule",{value:!0});var cu=iXt(Rv()),aXt=["#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"],oXt=["#EXT-X-MEDIA"],JQ=class extends Array{constructor(e){super(),this.baseUri=e}push(...e){for(let r of e){if(!r.startsWith("#")){super.push(r);continue}if(aXt.some(n=>r.startsWith(n))){super.push(r);continue}if(this.includes(r)){if(oXt.some(n=>r.startsWith(n)))continue;cu.INVALIDPLAYLIST(`Redundant item (${r})`)}super.push(r)}return this.length}};function XQ(t,e){let r=1e3;e&&(r=10**e);let n=Math.round(t*r)/r;return e?n.toFixed(e):n}function cXt(t){let e=t.toString(10),r=e.indexOf(".");return r===-1?0:e.length-r-1}function uXt(t,e){for(let r of e.sessionDataList)t.push(lXt(r));for(let r of e.sessionKeyList)t.push(wke(r,!0));for(let r of e.variants)dXt(t,r)}function lXt(t){let e=[`DATA-ID="${t.id}"`];return t.language&&e.push(`LANGUAGE="${t.language}"`),t.value?e.push(`VALUE="${t.value}"`):t.uri&&e.push(`URI="${t.uri}"`),`#EXT-X-SESSION-DATA:${e.join(",")}`}function wke(t,e){let r=e?"#EXT-X-SESSION-KEY":"#EXT-X-KEY",n=[`METHOD=${t.method}`];return t.uri&&n.push(`URI="${t.uri}"`),t.iv&&(t.iv.length!==16&&cu.INVALIDPLAYLIST("IV must be a 128-bit unsigned integer"),n.push(`IV=${cu.byteSequenceToHex(t.iv)}`)),t.format&&n.push(`KEYFORMAT="${t.format}"`),t.formatVersion&&n.push(`KEYFORMATVERSIONS="${t.formatVersion}"`),`${r}:${n.join(",")}`}function dXt(t,e){let r=e.isIFrameOnly?"#EXT-X-I-FRAME-STREAM-INF":"#EXT-X-STREAM-INF",n=[`BANDWIDTH=${e.bandwidth}`];if(e.averageBandwidth&&n.push(`AVERAGE-BANDWIDTH=${e.averageBandwidth}`),e.isIFrameOnly&&n.push(`URI="${e.uri}"`),e.codecs&&n.push(`CODECS="${e.codecs}"`),e.resolution&&n.push(`RESOLUTION=${e.resolution.width}x${e.resolution.height}`),e.frameRate&&n.push(`FRAME-RATE=${XQ(e.frameRate,3)}`),e.hdcpLevel&&n.push(`HDCP-LEVEL=${e.hdcpLevel}`),e.audio.length>0){n.push(`AUDIO="${e.audio[0].groupId}"`);for(let s of e.audio)t.push(dk(s))}if(e.video.length>0){n.push(`VIDEO="${e.video[0].groupId}"`);for(let s of e.video)t.push(dk(s))}if(e.subtitles.length>0){n.push(`SUBTITLES="${e.subtitles[0].groupId}"`);for(let s of e.subtitles)t.push(dk(s))}if(cu.getOptions().allowClosedCaptionsNone&&e.closedCaptions.length===0)n.push("CLOSED-CAPTIONS=NONE");else if(e.closedCaptions.length>0){n.push(`CLOSED-CAPTIONS="${e.closedCaptions[0].groupId}"`);for(let s of e.closedCaptions)t.push(dk(s))}if(e.score&&n.push(`SCORE=${e.score}`),e.allowedCpc){let s=[];for(let{format:i,cpcList:a}of e.allowedCpc)s.push(`${i}:${a.join("/")}`);n.push(`ALLOWED-CPC="${s.join(",")}"`)}e.videoRange&&n.push(`VIDEO-RANGE=${e.videoRange}`),e.stableVariantId&&n.push(`STABLE-VARIANT-ID="${e.stableVariantId}"`),e.programId&&n.push(`PROGRAM-ID=${e.programId}`),t.push(`${r}:${n.join(",")}`),e.isIFrameOnly||t.push(`${e.uri}`)}function dk(t){let e=[`TYPE=${t.type}`,`GROUP-ID="${t.groupId}"`,`NAME="${t.name}"`];return t.isDefault!==void 0&&e.push(`DEFAULT=${t.isDefault?"YES":"NO"}`),t.autoselect!==void 0&&e.push(`AUTOSELECT=${t.autoselect?"YES":"NO"}`),t.forced!==void 0&&e.push(`FORCED=${t.forced?"YES":"NO"}`),t.language&&e.push(`LANGUAGE="${t.language}"`),t.assocLanguage&&e.push(`ASSOC-LANGUAGE="${t.assocLanguage}"`),t.instreamId&&e.push(`INSTREAM-ID="${t.instreamId}"`),t.characteristics&&e.push(`CHARACTERISTICS="${t.characteristics}"`),t.channels&&e.push(`CHANNELS="${t.channels}"`),t.uri&&e.push(`URI="${t.uri}"`),`#EXT-X-MEDIA:${e.join(",")}`}function fXt(t,e){let r="",n="",s=!1;if(e.targetDuration&&t.push(`#EXT-X-TARGETDURATION:${e.targetDuration}`),e.lowLatencyCompatibility){let{canBlockReload:i,canSkipUntil:a,holdBack:o,partHoldBack:c}=e.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}`),t.push(`#EXT-X-SERVER-CONTROL:${u.join(",")}`)}e.partTargetDuration&&t.push(`#EXT-X-PART-INF:PART-TARGET=${e.partTargetDuration}`),e.mediaSequenceBase&&t.push(`#EXT-X-MEDIA-SEQUENCE:${e.mediaSequenceBase}`),e.discontinuitySequenceBase&&t.push(`#EXT-X-DISCONTINUITY-SEQUENCE:${e.discontinuitySequenceBase}`),e.playlistType&&t.push(`#EXT-X-PLAYLIST-TYPE:${e.playlistType}`),e.isIFrame&&t.push("#EXT-X-I-FRAMES-ONLY"),e.skip>0&&t.push(`#EXT-X-SKIP:SKIPPED-SEGMENTS=${e.skip}`);for(let i of e.segments){let a="";[r,n,a]=pXt(t,i,r,n,e.version),a==="OUT"?s=!0:a==="IN"&&s&&(s=!1)}e.playlistType==="VOD"&&s&&t.push("#EXT-X-CUE-IN"),e.prefetchSegments.length>2&&cu.INVALIDPLAYLIST("The server must deliver no more than two prefetch segments");for(let i of e.prefetchSegments)i.discontinuity&&t.push("#EXT-X-PREFETCH-DISCONTINUITY"),t.push(`#EXT-X-PREFETCH:${i.uri}`);e.endlist&&t.push("#EXT-X-ENDLIST");for(let i of e.renditionReports){let a=[];a.push(`URI="${i.uri}"`,`LAST-MSN=${i.lastMSN}`),i.lastPart!==void 0&&a.push(`LAST-PART=${i.lastPart}`),t.push(`#EXT-X-RENDITION-REPORT:${a.join(",")}`)}}function pXt(t,e,r,n,s=1){let i=!1,a="";if(e.discontinuity&&t.push("#EXT-X-DISCONTINUITY"),e.key){let c=wke(e.key);c!==r&&(t.push(c),r=c)}if(e.map){let c=mXt(e.map);c!==n&&(t.push(c),n=c)}if(e.programDateTime&&t.push(`#EXT-X-PROGRAM-DATE-TIME:${cu.formatDate(e.programDateTime)}`),e.dateRange&&t.push(hXt(e.dateRange)),e.markers.length>0&&(a=gXt(t,e.markers)),e.parts.length>0&&(i=AXt(t,e.parts)),i)return[r,n];let o=s<3?Math.round(e.duration):XQ(e.duration,cXt(e.duration));return t.push(`#EXTINF:${o},${unescape(encodeURIComponent(e.title||""))}`),e.byterange&&t.push(`#EXT-X-BYTERANGE:${ZQ(e.byterange)}`),Array.prototype.push.call(t,`${e.uri}`),[r,n,a]}function mXt(t){let e=[`URI="${t.uri}"`];return t.byterange&&e.push(`BYTERANGE="${ZQ(t.byterange)}"`),`#EXT-X-MAP:${e.join(",")}`}function ZQ({offset:t,length:e}){return`${e}@${t}`}function hXt(t){let e=[`ID="${t.id}"`];t.start&&e.push(`START-DATE="${cu.formatDate(t.start)}"`),t.end&&e.push(`END-DATE="${cu.formatDate(t.end)}"`),t.duration&&e.push(`DURATION=${t.duration}`),t.plannedDuration&&e.push(`PLANNED-DURATION=${t.plannedDuration}`),t.classId&&e.push(`CLASS="${t.classId}"`),t.endOnNext&&e.push("END-ON-NEXT=YES");for(let r of Object.keys(t.attributes))r.startsWith("X-")?typeof t.attributes[r]=="number"?e.push(`${r}=${t.attributes[r]}`):e.push(`${r}="${t.attributes[r]}"`):r.startsWith("SCTE35-")&&e.push(`${r}=${cu.byteSequenceToHex(t.attributes[r])}`);return`#EXT-X-DATERANGE:${e.join(",")}`}function gXt(t,e){let r="";for(let n of e)if(n.type==="OUT")r="OUT",t.push(`#EXT-X-CUE-OUT:DURATION=${n.duration}`);else if(n.type==="IN")r="IN",t.push("#EXT-X-CUE-IN");else if(n.type==="RAW"){let s=n.value?`:${n.value}`:"";t.push(`#${n.tagName}${s}`)}return r}function AXt(t,e){let r=!1;for(let n of e)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}`)}t.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=${ZQ(n.byterange)}`),n.independent&&s.push("INDEPENDENT=YES"),n.gap&&s.push("GAP=YES"),t.push(`#EXT-X-PART:${s.join(",")}`)}return r}function yXt(t){cu.PARAMCHECK(t),cu.ASSERT("Not a playlist",t.type==="playlist");let e=new JQ(t.uri);return e.push("#EXTM3U"),t.version&&e.push(`#EXT-X-VERSION:${t.version}`),t.independentSegments&&e.push("#EXT-X-INDEPENDENT-SEGMENTS"),t.start&&e.push(`#EXT-X-START:TIME-OFFSET=${XQ(t.start.offset)}${t.start.precise?",PRECISE=YES":""}`),t.isMasterPlaylist?uXt(e,t):fXt(e,t),e.join(` -`)}Kd.default=yXt});var Pke=E(_s=>{"use strict";var xXt=_s&&_s.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),bXt=_s&&_s.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),EXt=_s&&_s.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&xXt(e,t,r);return bXt(e,t),e},Nke=_s&&_s.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(_s,"__esModule",{value:!0});_s.setOptions=_s.getOptions=_s.types=_s.stringify=_s.parse=void 0;var Oke=Rv();Object.defineProperty(_s,"getOptions",{enumerable:!0,get:function(){return Oke.getOptions}});Object.defineProperty(_s,"setOptions",{enumerable:!0,get:function(){return Oke.setOptions}});var _Xt=Nke(Tke());_s.parse=_Xt.default;var SXt=Nke(Rke());_s.stringify=SXt.default;var vXt=EXt(KQ());_s.types=vXt});var pG=E((j7r,bLe)=>{bLe.exports=function(){return typeof Promise=="function"&&Promise.prototype&&Promise.prototype.then}});var A0=E(Bh=>{var mG,nZt=[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];Bh.getSymbolSize=function(e){if(!e)throw new Error('"version" cannot be null or undefined');if(e<1||e>40)throw new Error('"version" should be in range from 1 to 40');return e*4+17};Bh.getSymbolTotalCodewords=function(e){return nZt[e]};Bh.getBCHDigit=function(t){let e=0;for(;t!==0;)e++,t>>>=1;return e};Bh.setToSJISFunction=function(e){if(typeof e!="function")throw new Error('"toSJISFunc" is not a valid function.');mG=e};Bh.isKanjiModeEnabled=function(){return typeof mG<"u"};Bh.toSJIS=function(e){return mG(e)}});var Ck=E(yc=>{yc.L={bit:1};yc.M={bit:0};yc.Q={bit:3};yc.H={bit:2};function sZt(t){if(typeof t!="string")throw new Error("Param is not a string");switch(t.toLowerCase()){case"l":case"low":return yc.L;case"m":case"medium":return yc.M;case"q":case"quartile":return yc.Q;case"h":case"high":return yc.H;default:throw new Error("Unknown EC Level: "+t)}}yc.isValid=function(e){return e&&typeof e.bit<"u"&&e.bit>=0&&e.bit<4};yc.from=function(e,r){if(yc.isValid(e))return e;try{return sZt(e)}catch{return r}}});var SLe=E((G7r,_Le)=>{function ELe(){this.buffer=[],this.length=0}ELe.prototype={get:function(t){let e=Math.floor(t/8);return(this.buffer[e]>>>7-t%8&1)===1},put:function(t,e){for(let r=0;r>>e-r-1&1)===1)},getLengthInBits:function(){return this.length},putBit:function(t){let e=Math.floor(this.length/8);this.buffer.length<=e&&this.buffer.push(0),t&&(this.buffer[e]|=128>>>this.length%8),this.length++}};_Le.exports=ELe});var CLe=E((V7r,vLe)=>{function Lv(t){if(!t||t<1)throw new Error("BitMatrix size must be defined and greater than 0");this.size=t,this.data=new Uint8Array(t*t),this.reservedBit=new Uint8Array(t*t)}Lv.prototype.set=function(t,e,r,n){let s=t*this.size+e;this.data[s]=r,n&&(this.reservedBit[s]=!0)};Lv.prototype.get=function(t,e){return this.data[t*this.size+e]};Lv.prototype.xor=function(t,e,r){this.data[t*this.size+e]^=r};Lv.prototype.isReserved=function(t,e){return this.reservedBit[t*this.size+e]};vLe.exports=Lv});var ILe=E(Ik=>{var iZt=A0().getSymbolSize;Ik.getRowColCoords=function(e){if(e===1)return[];let r=Math.floor(e/7)+2,n=iZt(e),s=n===145?26:Math.ceil((n-13)/(2*r-2))*2,i=[n-7];for(let a=1;a{var aZt=A0().getSymbolSize,TLe=7;wLe.getPositions=function(e){let r=aZt(e);return[[0,0],[r-TLe,0],[0,r-TLe]]}});var NLe=E(Sn=>{Sn.Patterns={PATTERN000:0,PATTERN001:1,PATTERN010:2,PATTERN011:3,PATTERN100:4,PATTERN101:5,PATTERN110:6,PATTERN111:7};var Mh={N1:3,N2:3,N3:40,N4:10};Sn.isValid=function(e){return e!=null&&e!==""&&!isNaN(e)&&e>=0&&e<=7};Sn.from=function(e){return Sn.isValid(e)?parseInt(e,10):void 0};Sn.getPenaltyN1=function(e){let r=e.size,n=0,s=0,i=0,a=null,o=null;for(let c=0;c=5&&(n+=Mh.N1+(s-5)),a=l,s=1),l=e.get(u,c),l===o?i++:(i>=5&&(n+=Mh.N1+(i-5)),o=l,i=1)}s>=5&&(n+=Mh.N1+(s-5)),i>=5&&(n+=Mh.N1+(i-5))}return n};Sn.getPenaltyN2=function(e){let r=e.size,n=0;for(let s=0;s=10&&(s===1488||s===93)&&n++,i=i<<1&2047|e.get(o,a),o>=10&&(i===1488||i===93)&&n++}return n*Mh.N3};Sn.getPenaltyN4=function(e){let r=0,n=e.data.length;for(let i=0;i{var y0=Ck(),Tk=[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],wk=[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];hG.getBlocksCount=function(e,r){switch(r){case y0.L:return Tk[(e-1)*4+0];case y0.M:return Tk[(e-1)*4+1];case y0.Q:return Tk[(e-1)*4+2];case y0.H:return Tk[(e-1)*4+3];default:return}};hG.getTotalCodewordsCount=function(e,r){switch(r){case y0.L:return wk[(e-1)*4+0];case y0.M:return wk[(e-1)*4+1];case y0.Q:return wk[(e-1)*4+2];case y0.H:return wk[(e-1)*4+3];default:return}}});var OLe=E(Nk=>{var Bv=new Uint8Array(512),Rk=new Uint8Array(256);(function(){let e=1;for(let r=0;r<255;r++)Bv[r]=e,Rk[e]=r,e<<=1,e&256&&(e^=285);for(let r=255;r<512;r++)Bv[r]=Bv[r-255]})();Nk.log=function(e){if(e<1)throw new Error("log("+e+")");return Rk[e]};Nk.exp=function(e){return Bv[e]};Nk.mul=function(e,r){return e===0||r===0?0:Bv[Rk[e]+Rk[r]]}});var PLe=E(Mv=>{var AG=OLe();Mv.mul=function(e,r){let n=new Uint8Array(e.length+r.length-1);for(let s=0;s=0;){let s=n[0];for(let a=0;a{var DLe=PLe();function yG(t){this.genPoly=void 0,this.degree=t,this.degree&&this.initialize(this.degree)}yG.prototype.initialize=function(e){this.degree=e,this.genPoly=DLe.generateECPolynomial(this.degree)};yG.prototype.encode=function(e){if(!this.genPoly)throw new Error("Encoder not initialized");let r=new Uint8Array(e.length+this.degree);r.set(e);let n=DLe.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};kLe.exports=yG});var xG=E(BLe=>{BLe.isValid=function(e){return!isNaN(e)&&e>=1&&e<=40}});var bG=E(Jd=>{var MLe="[0-9]+",cZt="[A-Z $%*+\\-./:]+",Wv="(?:[u3000-u303F]|[u3040-u309F]|[u30A0-u30FF]|[uFF00-uFFEF]|[u4E00-u9FAF]|[u2605-u2606]|[u2190-u2195]|u203B|[u2010u2015u2018u2019u2025u2026u201Cu201Du2225u2260]|[u0391-u0451]|[u00A7u00A8u00B1u00B4u00D7u00F7])+";Wv=Wv.replace(/u/g,"\\u");var uZt="(?:(?![A-Z0-9 $%*+\\-./:]|"+Wv+`)(?:.|[\r -]))+`;Jd.KANJI=new RegExp(Wv,"g");Jd.BYTE_KANJI=new RegExp("[^A-Z0-9 $%*+\\-./:]+","g");Jd.BYTE=new RegExp(uZt,"g");Jd.NUMERIC=new RegExp(MLe,"g");Jd.ALPHANUMERIC=new RegExp(cZt,"g");var lZt=new RegExp("^"+Wv+"$"),dZt=new RegExp("^"+MLe+"$"),fZt=new RegExp("^[A-Z0-9 $%*+\\-./:]+$");Jd.testKanji=function(e){return lZt.test(e)};Jd.testNumeric=function(e){return dZt.test(e)};Jd.testAlphanumeric=function(e){return fZt.test(e)}});var x0=E(vs=>{var pZt=xG(),EG=bG();vs.NUMERIC={id:"Numeric",bit:1,ccBits:[10,12,14]};vs.ALPHANUMERIC={id:"Alphanumeric",bit:2,ccBits:[9,11,13]};vs.BYTE={id:"Byte",bit:4,ccBits:[8,16,16]};vs.KANJI={id:"Kanji",bit:8,ccBits:[8,10,12]};vs.MIXED={bit:-1};vs.getCharCountIndicator=function(e,r){if(!e.ccBits)throw new Error("Invalid mode: "+e);if(!pZt.isValid(r))throw new Error("Invalid version: "+r);return r>=1&&r<10?e.ccBits[0]:r<27?e.ccBits[1]:e.ccBits[2]};vs.getBestModeForData=function(e){return EG.testNumeric(e)?vs.NUMERIC:EG.testAlphanumeric(e)?vs.ALPHANUMERIC:EG.testKanji(e)?vs.KANJI:vs.BYTE};vs.toString=function(e){if(e&&e.id)return e.id;throw new Error("Invalid mode")};vs.isValid=function(e){return e&&e.bit&&e.ccBits};function mZt(t){if(typeof t!="string")throw new Error("Param is not a string");switch(t.toLowerCase()){case"numeric":return vs.NUMERIC;case"alphanumeric":return vs.ALPHANUMERIC;case"kanji":return vs.KANJI;case"byte":return vs.BYTE;default:throw new Error("Unknown mode: "+t)}}vs.from=function(e,r){if(vs.isValid(e))return e;try{return mZt(e)}catch{return r}}});var qLe=E(Wh=>{var Ok=A0(),hZt=gG(),WLe=Ck(),b0=x0(),_G=xG(),FLe=7973,$Le=Ok.getBCHDigit(FLe);function gZt(t,e,r){for(let n=1;n<=40;n++)if(e<=Wh.getCapacity(n,r,t))return n}function ULe(t,e){return b0.getCharCountIndicator(t,e)+4}function AZt(t,e){let r=0;return t.forEach(function(n){let s=ULe(n.mode,e);r+=s+n.getBitsLength()}),r}function yZt(t,e){for(let r=1;r<=40;r++)if(AZt(t,r)<=Wh.getCapacity(r,e,b0.MIXED))return r}Wh.from=function(e,r){return _G.isValid(e)?parseInt(e,10):r};Wh.getCapacity=function(e,r,n){if(!_G.isValid(e))throw new Error("Invalid QR Code version");typeof n>"u"&&(n=b0.BYTE);let s=Ok.getSymbolTotalCodewords(e),i=hZt.getTotalCodewordsCount(e,r),a=(s-i)*8;if(n===b0.MIXED)return a;let o=a-ULe(n,e);switch(n){case b0.NUMERIC:return Math.floor(o/10*3);case b0.ALPHANUMERIC:return Math.floor(o/11*2);case b0.KANJI:return Math.floor(o/13);case b0.BYTE:default:return Math.floor(o/8)}};Wh.getBestVersionForData=function(e,r){let n,s=WLe.from(r,WLe.M);if(Array.isArray(e)){if(e.length>1)return yZt(e,s);if(e.length===0)return 1;n=e[0]}else n=e;return gZt(n.mode,n.getLength(),s)};Wh.getEncodedBits=function(e){if(!_G.isValid(e)||e<7)throw new Error("Invalid QR Code version");let r=e<<12;for(;Ok.getBCHDigit(r)-$Le>=0;)r^=FLe<{var SG=A0(),HLe=1335,xZt=21522,jLe=SG.getBCHDigit(HLe);QLe.getEncodedBits=function(e,r){let n=e.bit<<3|r,s=n<<10;for(;SG.getBCHDigit(s)-jLe>=0;)s^=HLe<{var bZt=x0();function jx(t){this.mode=bZt.NUMERIC,this.data=t.toString()}jx.getBitsLength=function(e){return 10*Math.floor(e/3)+(e%3?e%3*3+1:0)};jx.prototype.getLength=function(){return this.data.length};jx.prototype.getBitsLength=function(){return jx.getBitsLength(this.data.length)};jx.prototype.write=function(e){let r,n,s;for(r=0;r+3<=this.data.length;r+=3)n=this.data.substr(r,3),s=parseInt(n,10),e.put(s,10);let i=this.data.length-r;i>0&&(n=this.data.substr(r),s=parseInt(n,10),e.put(s,i*3+1))};VLe.exports=jx});var YLe=E((o9r,KLe)=>{var EZt=x0(),vG=["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 Hx(t){this.mode=EZt.ALPHANUMERIC,this.data=t}Hx.getBitsLength=function(e){return 11*Math.floor(e/2)+6*(e%2)};Hx.prototype.getLength=function(){return this.data.length};Hx.prototype.getBitsLength=function(){return Hx.getBitsLength(this.data.length)};Hx.prototype.write=function(e){let r;for(r=0;r+2<=this.data.length;r+=2){let n=vG.indexOf(this.data[r])*45;n+=vG.indexOf(this.data[r+1]),e.put(n,11)}this.data.length%2&&e.put(vG.indexOf(this.data[r]),6)};KLe.exports=Hx});var XLe=E((c9r,JLe)=>{var _Zt=x0();function Qx(t){this.mode=_Zt.BYTE,typeof t=="string"?this.data=new TextEncoder().encode(t):this.data=new Uint8Array(t)}Qx.getBitsLength=function(e){return e*8};Qx.prototype.getLength=function(){return this.data.length};Qx.prototype.getBitsLength=function(){return Qx.getBitsLength(this.data.length)};Qx.prototype.write=function(t){for(let e=0,r=this.data.length;e{var SZt=x0(),vZt=A0();function Gx(t){this.mode=SZt.KANJI,this.data=t}Gx.getBitsLength=function(e){return e*13};Gx.prototype.getLength=function(){return this.data.length};Gx.prototype.getBitsLength=function(){return Gx.getBitsLength(this.data.length)};Gx.prototype.write=function(t){let e;for(e=0;e=33088&&r<=40956)r-=33088;else if(r>=57408&&r<=60351)r-=49472;else throw new Error("Invalid SJIS character: "+this.data[e]+` -Make sure your charset is UTF-8`);r=(r>>>8&255)*192+(r&255),t.put(r,13)}};ZLe.exports=Gx});var tBe=E((l9r,CG)=>{"use strict";var $v={single_source_shortest_paths:function(t,e,r){var n={},s={};s[e]=0;var i=$v.PriorityQueue.make();i.push(e,0);for(var a,o,c,u,l,d,f,p,m;!i.empty();){a=i.pop(),o=a.value,u=a.cost,l=t[o]||{};for(c in l)l.hasOwnProperty(c)&&(d=l[c],f=u+d,p=s[c],m=typeof s[c]>"u",(m||p>f)&&(s[c]=f,i.push(c,f),n[c]=o))}if(typeof r<"u"&&typeof s[r]>"u"){var h=["Could not find a path from ",e," to ",r,"."].join("");throw new Error(h)}return n},extract_shortest_path_from_predecessor_list:function(t,e){for(var r=[],n=e,s;n;)r.push(n),s=t[n],n=t[n];return r.reverse(),r},find_path:function(t,e,r){var n=$v.single_source_shortest_paths(t,e,r);return $v.extract_shortest_path_from_predecessor_list(n,r)},PriorityQueue:{make:function(t){var e=$v.PriorityQueue,r={},n;t=t||{};for(n in e)e.hasOwnProperty(n)&&(r[n]=e[n]);return r.queue=[],r.sorter=t.sorter||e.default_sorter,r},default_sorter:function(t,e){return t.cost-e.cost},push:function(t,e){var r={value:t,cost:e};this.queue.push(r),this.queue.sort(this.sorter)},pop:function(){return this.queue.shift()},empty:function(){return this.queue.length===0}}};typeof CG<"u"&&(CG.exports=$v)});var uBe=E(Vx=>{var zr=x0(),sBe=zLe(),iBe=YLe(),aBe=XLe(),oBe=eBe(),Fv=bG(),Pk=A0(),CZt=tBe();function rBe(t){return unescape(encodeURIComponent(t)).length}function Uv(t,e,r){let n=[],s;for(;(s=t.exec(r))!==null;)n.push({data:s[0],index:s.index,mode:e,length:s[0].length});return n}function cBe(t){let e=Uv(Fv.NUMERIC,zr.NUMERIC,t),r=Uv(Fv.ALPHANUMERIC,zr.ALPHANUMERIC,t),n,s;return Pk.isKanjiModeEnabled()?(n=Uv(Fv.BYTE,zr.BYTE,t),s=Uv(Fv.KANJI,zr.KANJI,t)):(n=Uv(Fv.BYTE_KANJI,zr.BYTE,t),s=[]),e.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 IG(t,e){switch(e){case zr.NUMERIC:return sBe.getBitsLength(t);case zr.ALPHANUMERIC:return iBe.getBitsLength(t);case zr.KANJI:return oBe.getBitsLength(t);case zr.BYTE:return aBe.getBitsLength(t)}}function IZt(t){return t.reduce(function(e,r){let n=e.length-1>=0?e[e.length-1]:null;return n&&n.mode===r.mode?(e[e.length-1].data+=r.data,e):(e.push(r),e)},[])}function TZt(t){let e=[];for(let r=0;r{var kk=A0(),TG=Ck(),RZt=SLe(),NZt=CLe(),OZt=ILe(),PZt=RLe(),NG=NLe(),OG=gG(),DZt=LLe(),Dk=qLe(),kZt=GLe(),LZt=x0(),wG=uBe();function BZt(t,e){let r=t.size,n=PZt.getPositions(e);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?t.set(i+o,a+c,!0,!0):t.set(i+o,a+c,!1,!0))}}function MZt(t){let e=t.size;for(let r=8;r>o&1)===1,t.set(s,i,a,!0),t.set(i,s,a,!0)}function RG(t,e,r){let n=t.size,s=kZt.getEncodedBits(e,r),i,a;for(i=0;i<15;i++)a=(s>>i&1)===1,i<6?t.set(i,8,a,!0):i<8?t.set(i+1,8,a,!0):t.set(n-15+i,8,a,!0),i<8?t.set(8,n-i-1,a,!0):i<9?t.set(8,15-i-1+1,a,!0):t.set(8,15-i-1,a,!0);t.set(n-8,8,1,!0)}function FZt(t,e){let r=t.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(!t.isReserved(s,o-c)){let u=!1;a>>i&1)===1),t.set(s,o-c,u),i--,i===-1&&(a++,i=7)}if(s+=n,s<0||r<=s){s-=n,n=-n;break}}}function UZt(t,e,r){let n=new RZt;r.forEach(function(c){n.put(c.mode.bit,4),n.put(c.getLength(),LZt.getCharCountIndicator(c.mode,t)),c.write(n)});let s=kk.getSymbolTotalCodewords(t),i=OG.getTotalCodewordsCount(t,e),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;ce.trim()).join(" ")};RPe.O=function(t){return this.inspectOpts.colors=this.useColors,H3.inspect(t,this.inspectOpts)}});var OPe=_((pQr,tG)=>{typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs?tG.exports=vPe():tG.exports=NPe()});var PPe=_((mQr,kPe)=>{var zS;kPe.exports=function(){if(!zS){try{zS=OPe()("follow-redirects")}catch{}typeof zS!="function"&&(zS=function(){})}zS.apply(null,arguments)}});var WPe=_((hQr,pG)=>{var VS=require("url"),KS=VS.URL,yYt=require("http"),AYt=require("https"),aG=require("stream").Writable,oG=require("assert"),DPe=PPe();(function(){var e=typeof process<"u",r=typeof window<"u"&&typeof document<"u",n=$h(Error.captureStackTrace);!e&&(r||!n)&&console.warn("The follow-redirects package should be excluded from browser builds.")})();var cG=!1;try{oG(new KS(""))}catch(t){cG=t.code==="ERR_INVALID_URL"}var xYt=["auth","host","hostname","href","path","pathname","port","protocol","query","search","hash"],uG=["abort","aborted","connect","error","socket","timeout"],lG=Object.create(null);uG.forEach(function(t){lG[t]=function(e,r,n){this._redirectable.emit(t,e,r,n)}});var nG=YS("ERR_INVALID_URL","Invalid URL",TypeError),sG=YS("ERR_FR_REDIRECTION_FAILURE","Redirected request failed"),bYt=YS("ERR_FR_TOO_MANY_REDIRECTS","Maximum number of redirects exceeded",sG),_Yt=YS("ERR_FR_MAX_BODY_LENGTH_EXCEEDED","Request body larger than maxBodyLength limit"),EYt=YS("ERR_STREAM_WRITE_AFTER_END","write after end"),vYt=aG.prototype.destroy||LPe;function ro(t,e){aG.call(this),this._sanitizeOptions(t),this._options=t,this._ended=!1,this._ending=!1,this._redirectCount=0,this._redirects=[],this._requestBodyLength=0,this._requestBodyBuffers=[],e&&this.on("response",e);var r=this;this._onNativeResponse=function(n){try{r._processResponse(n)}catch(s){r.emit("error",s instanceof sG?s:new sG({cause:s}))}},this._performRequest()}ro.prototype=Object.create(aG.prototype);ro.prototype.abort=function(){fG(this._currentRequest),this._currentRequest.abort(),this.emit("abort")};ro.prototype.destroy=function(t){return fG(this._currentRequest,t),vYt.call(this,t),this};ro.prototype.write=function(t,e,r){if(this._ending)throw new EYt;if(!Wh(t)&&!CYt(t))throw new TypeError("data should be a string, Buffer or Uint8Array");if($h(e)&&(r=e,e=null),t.length===0){r&&r();return}this._requestBodyLength+t.length<=this._options.maxBodyLength?(this._requestBodyLength+=t.length,this._requestBodyBuffers.push({data:t,encoding:e}),this._currentRequest.write(t,e,r)):(this.emit("error",new _Yt),this.abort())};ro.prototype.end=function(t,e,r){if($h(t)?(r=t,t=e=null):$h(e)&&(r=e,e=null),!t)this._ended=this._ending=!0,this._currentRequest.end(null,null,r);else{var n=this,s=this._currentRequest;this.write(t,e,function(){n._ended=!0,s.end(null,null,r)}),this._ending=!0}};ro.prototype.setHeader=function(t,e){this._options.headers[t]=e,this._currentRequest.setHeader(t,e)};ro.prototype.removeHeader=function(t){delete this._options.headers[t],this._currentRequest.removeHeader(t)};ro.prototype.setTimeout=function(t,e){var r=this;function n(a){a.setTimeout(t),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()},t),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),e&&r.removeListener("timeout",e),r.socket||r._currentRequest.removeListener("socket",s)}return e&&this.on("timeout",e),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(t){ro.prototype[t]=function(e,r){return this._currentRequest[t](e,r)}});["aborted","connection","socket"].forEach(function(t){Object.defineProperty(ro.prototype,t,{get:function(){return this._currentRequest[t]}})});ro.prototype._sanitizeOptions=function(t){if(t.headers||(t.headers={}),t.host&&(t.hostname||(t.hostname=t.host),delete t.host),!t.pathname&&t.path){var e=t.path.indexOf("?");e<0?t.pathname=t.path:(t.pathname=t.path.substring(0,e),t.search=t.path.substring(e))}};ro.prototype._performRequest=function(){var t=this._options.protocol,e=this._options.nativeProtocols[t];if(!e)throw new TypeError("Unsupported protocol "+t);if(this._options.agents){var r=t.slice(0,-1);this._options.agent=this._options.agents[r]}var n=this._currentRequest=e.request(this._options,this._onNativeResponse);n._redirectable=this;for(var s of uG)n.on(s,lG[s]);if(this._currentUrl=/^\//.test(this._options.path)?VS.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){t.responseUrl=this._currentUrl,t.redirects=this._redirects,this.emit("response",t),this._requestBodyBuffers=[];return}if(fG(this._currentRequest),t.destroy(),++this._redirectCount>this._options.maxRedirects)throw new bYt;var n,s=this._options.beforeRedirect;s&&(n=Object.assign({Host:t.req.getHeader("host")},this._options.headers));var i=this._options.method;((e===301||e===302)&&this._options.method==="POST"||e===303&&!/^(?:GET|HEAD)$/.test(this._options.method))&&(this._options.method="GET",this._requestBodyBuffers=[],rG(/^content-/i,this._options.headers));var a=rG(/^host$/i,this._options.headers),o=dG(this._currentUrl),c=a||o.host,u=/^\w+:/.test(r)?this._currentUrl:VS.format(Object.assign(o,{host:c})),l=SYt(r,u);if(DPe("redirecting to",l.href),this._isRedirect=!0,iG(l,this._options),(l.protocol!==o.protocol&&l.protocol!=="https:"||l.host!==c&&!IYt(l.host,c))&&rG(/^(?:(?:proxy-)?authorization|cookie)$/i,this._options.headers),$h(s)){var d={headers:t.headers,statusCode:e},f={url:u,method:i,headers:n};s(this._options,d,f),this._sanitizeOptions(this._options)}this._performRequest()};function BPe(t){var e={maxRedirects:21,maxBodyLength:10485760},r={};return Object.keys(t).forEach(function(n){var s=n+":",i=r[s]=t[n],a=e[n]=Object.create(i);function o(u,l,d){return TYt(u)?u=iG(u):Wh(u)?u=iG(dG(u)):(d=l,l=MPe(u),u={protocol:s}),$h(l)&&(d=l,l=null),l=Object.assign({maxRedirects:e.maxRedirects,maxBodyLength:e.maxBodyLength},u,l),l.nativeProtocols=r,!Wh(l.host)&&!Wh(l.hostname)&&(l.hostname="::1"),oG.equal(l.protocol,s,"protocol mismatch"),DPe("options",l),new ro(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}})}),e}function LPe(){}function dG(t){var e;if(cG)e=new KS(t);else if(e=MPe(VS.parse(t)),!Wh(e.protocol))throw new nG({input:t});return e}function SYt(t,e){return cG?new KS(t,e):dG(VS.resolve(e,t))}function MPe(t){if(/^\[/.test(t.hostname)&&!/^\[[:0-9a-f]+\]$/i.test(t.hostname))throw new nG({input:t.href||t});if(/^\[/.test(t.host)&&!/^\[[:0-9a-f]+\](:\d+)?$/i.test(t.host))throw new nG({input:t.href||t});return t}function iG(t,e){var r=e||{};for(var n of xYt)r[n]=t[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 rG(t,e){var r;for(var n in e)t.test(n)&&(r=e[n],delete e[n]);return r===null||typeof r>"u"?void 0:String(r).trim()}function YS(t,e,r){function n(s){$h(Error.captureStackTrace)&&Error.captureStackTrace(this,this.constructor),Object.assign(this,s||{}),this.code=t,this.message=this.cause?e+": "+this.cause.message:e}return n.prototype=new(r||Error),Object.defineProperties(n.prototype,{constructor:{value:n,enumerable:!1},name:{value:"Error ["+t+"]",enumerable:!1}}),n}function fG(t,e){for(var r of uG)t.removeListener(r,lG[r]);t.on("error",LPe),t.destroy(e)}function IYt(t,e){oG(Wh(t)&&Wh(e));var r=t.length-e.length-1;return r>0&&t[r]==="."&&t.endsWith(e)}function Wh(t){return typeof t=="string"||t instanceof String}function $h(t){return typeof t=="function"}function CYt(t){return typeof t=="object"&&"length"in t}function TYt(t){return KS&&t instanceof KS}pG.exports=BPe({http:yYt,https:AYt});pG.exports.wrap=BPe});var AD=_(Sl=>{"use strict";Object.defineProperty(Sl,"__esModule",{value:!0});Sl.AttributeAction=Sl.IgnoreCaseMode=Sl.SelectorType=void 0;var VJt;(function(t){t.Attribute="attribute",t.Pseudo="pseudo",t.PseudoElement="pseudo-element",t.Tag="tag",t.Universal="universal",t.Adjacent="adjacent",t.Child="child",t.Descendant="descendant",t.Parent="parent",t.Sibling="sibling",t.ColumnCombinator="column-combinator"})(VJt=Sl.SelectorType||(Sl.SelectorType={}));Sl.IgnoreCaseMode={Unknown:null,QuirksMode:"quirks",IgnoreCase:!0,CaseSensitive:!1};var YJt;(function(t){t.Any="any",t.Element="element",t.End="end",t.Equals="equals",t.Exists="exists",t.Hyphen="hyphen",t.Not="not",t.Start="start"})(YJt=Sl.AttributeAction||(Sl.AttributeAction={}))});var lDe=_(ab=>{"use strict";Object.defineProperty(ab,"__esModule",{value:!0});ab.parse=ab.isTraversal=void 0;var Hr=AD(),aDe=/^[^\\#]?(?:\\(?:[\da-f]{1,6}\s?|.)|[\w\-\u00b0-\uFFFF])+/,JJt=/\\([\da-f]{1,6}\s?|(\s)|.)/gi,XJt=new Map([[126,Hr.AttributeAction.Element],[94,Hr.AttributeAction.Start],[36,Hr.AttributeAction.End],[42,Hr.AttributeAction.Any],[33,Hr.AttributeAction.Not],[124,Hr.AttributeAction.Hyphen]]),ZJt=new Set(["has","not","matches","is","where","host","host-context"]);function cDe(t){switch(t.type){case Hr.SelectorType.Adjacent:case Hr.SelectorType.Child:case Hr.SelectorType.Descendant:case Hr.SelectorType.Parent:case Hr.SelectorType.Sibling:case Hr.SelectorType.ColumnCombinator:return!0;default:return!1}}ab.isTraversal=cDe;var eXt=new Set(["contains","icontains"]);function tXt(t,e,r){var n=parseInt(e,16)-65536;return n!==n||r?e:n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,n&1023|56320)}function dI(t){return t.replace(JJt,tXt)}function HG(t){return t===39||t===34}function oDe(t){return t===32||t===9||t===10||t===12||t===13}function rXt(t){var e=[],r=uDe(e,"".concat(t),0);if(r0&&r0&&cDe(n[n.length-1]))throw new Error("Did not expect successive traversals.")}function u(D){if(n.length>0&&n[n.length-1].type===Hr.SelectorType.Descendant){n[n.length-1].type=D;return}c(),n.push({type:D})}function l(D,L){n.push({type:Hr.SelectorType.Attribute,name:D,action:L,value:s(1),namespace:null,ignoreCase:"quirks"})}function d(){if(n.length&&n[n.length-1].type===Hr.SelectorType.Descendant&&n.pop(),n.length===0)throw new Error("Empty sub-selector");t.push(n)}if(i(0),e.length===r)return r;e:for(;r{"use strict";var xD=cb&&cb.__spreadArray||function(t,e,r){if(r||arguments.length===2)for(var n=0,s=e.length,i;n ":" > ";case Jn.SelectorType.Parent:return e===0?"< ":" < ";case Jn.SelectorType.Sibling:return e===0?"~ ":" ~ ";case Jn.SelectorType.Adjacent:return e===0?"+ ":" + ";case Jn.SelectorType.Descendant:return" ";case Jn.SelectorType.ColumnCombinator:return e===0?"|| ":" || ";case Jn.SelectorType.Universal:return t.namespace==="*"&&e+10?n+t.slice(r):t}});var ub=_(Po=>{"use strict";var aXt=Po&&Po.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),oXt=Po&&Po.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&aXt(e,t,r)};Object.defineProperty(Po,"__esModule",{value:!0});Po.stringify=Po.parse=Po.isTraversal=void 0;oXt(AD(),Po);var ADe=lDe();Object.defineProperty(Po,"isTraversal",{enumerable:!0,get:function(){return ADe.isTraversal}});Object.defineProperty(Po,"parse",{enumerable:!0,get:function(){return ADe.parse}});var cXt=yDe();Object.defineProperty(Po,"stringify",{enumerable:!0,get:function(){return cXt.stringify}})});var S0=_((eKr,xDe)=>{xDe.exports={trueFunc:function(){return!0},falseFunc:function(){return!1}}});var NI=_((Pz,Dz)=>{(function(t,e){typeof Pz=="object"&&typeof Dz<"u"?Dz.exports=e():typeof define=="function"&&define.amd?define(e):(t=typeof globalThis<"u"?globalThis:t||self).dayjs=e()})(Pz,function(){"use strict";var t=1e3,e=6e4,r=36e5,n="millisecond",s="second",i="minute",a="hour",o="day",c="week",u="month",l="quarter",d="year",f="date",p="Invalid Date",m=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,h=/\[([^\]]+)]|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(M){var D=["th","st","nd","rd"],L=M%100;return"["+M+(D[(L-20)%10]||D[L]||D[0])+"]"}},g=function(M,D,L){var Z=String(M);return!Z||Z.length>=D?M:""+Array(D+1-Z.length).join(L)+M},b={s:g,z:function(M){var D=-M.utcOffset(),L=Math.abs(D),Z=Math.floor(L/60),W=L%60;return(D<=0?"+":"-")+g(Z,2,"0")+":"+g(W,2,"0")},m:function M(D,L){if(D.date()1)return M(z[0])}else{var j=D.name;A[j]=D,W=j}return!Z&&W&&(x=W),W||!Z&&x},w=function(M,D){if(I(M))return M.clone();var L=typeof D=="object"?D:{};return L.date=M,L.args=arguments,new k(L)},N=b;N.l=R,N.i=I,N.w=function(M,D){return w(M,{locale:D.$L,utc:D.$u,x:D.$x,$offset:D.$offset})};var k=function(){function M(L){this.$L=R(L.locale,null,!0),this.parse(L),this.$x=this.$x||L.x||{},this[S]=!0}var D=M.prototype;return D.parse=function(L){this.$d=function(Z){var W=Z.date,U=Z.utc;if(W===null)return new Date(NaN);if(N.u(W))return new Date;if(W instanceof Date)return new Date(W);if(typeof W=="string"&&!/Z$/i.test(W)){var z=W.match(m);if(z){var j=z[2]-1||0,J=(z[7]||"0").substring(0,3);return U?new Date(Date.UTC(z[1],j,z[3]||1,z[4]||0,z[5]||0,z[6]||0,J)):new Date(z[1],j,z[3]||1,z[4]||0,z[5]||0,z[6]||0,J)}}return new Date(W)}(L),this.init()},D.init=function(){var L=this.$d;this.$y=L.getFullYear(),this.$M=L.getMonth(),this.$D=L.getDate(),this.$W=L.getDay(),this.$H=L.getHours(),this.$m=L.getMinutes(),this.$s=L.getSeconds(),this.$ms=L.getMilliseconds()},D.$utils=function(){return N},D.isValid=function(){return this.$d.toString()!==p},D.isSame=function(L,Z){var W=w(L);return this.startOf(Z)<=W&&W<=this.endOf(Z)},D.isAfter=function(L,Z){return w(L){(function(t,e){typeof ZD=="object"?eBe.exports=ZD=e():typeof define=="function"&&define.amd?define([],e):t.CryptoJS=e()})(ZD,function(){var t=t||function(e,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(b){var x;return g.prototype=b,x=new g,g.prototype=null,x}}(),a={},o=a.lib={},c=o.Base=function(){return{extend:function(g){var b=i(this);return g&&b.mixIn(g),(!b.hasOwnProperty("init")||this.init===b.init)&&(b.init=function(){b.$super.init.apply(this,arguments)}),b.init.prototype=b,b.$super=this,b},create:function(){var g=this.extend();return g.init.apply(g,arguments),g},init:function(){},mixIn:function(g){for(var b in g)g.hasOwnProperty(b)&&(this[b]=g[b]);g.hasOwnProperty("toString")&&(this.toString=g.toString)},clone:function(){return this.init.prototype.extend(this)}}}(),u=o.WordArray=c.extend({init:function(g,b){g=this.words=g||[],b!=r?this.sigBytes=b:this.sigBytes=g.length*4},toString:function(g){return(g||d).stringify(this)},concat:function(g){var b=this.words,x=g.words,A=this.sigBytes,S=g.sigBytes;if(this.clamp(),A%4)for(var I=0;I>>2]>>>24-I%4*8&255;b[A+I>>>2]|=R<<24-(A+I)%4*8}else for(var w=0;w>>2]=x[w>>>2];return this.sigBytes+=S,this},clamp:function(){var g=this.words,b=this.sigBytes;g[b>>>2]&=4294967295<<32-b%4*8,g.length=e.ceil(b/4)},clone:function(){var g=c.clone.call(this);return g.words=this.words.slice(0),g},random:function(g){for(var b=[],x=0;x>>2]>>>24-S%4*8&255;A.push((I>>>4).toString(16)),A.push((I&15).toString(16))}return A.join("")},parse:function(g){for(var b=g.length,x=[],A=0;A>>3]|=parseInt(g.substr(A,2),16)<<24-A%8*4;return new u.init(x,b/2)}},f=l.Latin1={stringify:function(g){for(var b=g.words,x=g.sigBytes,A=[],S=0;S>>2]>>>24-S%4*8&255;A.push(String.fromCharCode(I))}return A.join("")},parse:function(g){for(var b=g.length,x=[],A=0;A>>2]|=(g.charCodeAt(A)&255)<<24-A%4*8;return new u.init(x,b)}},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)))}},m=o.BufferedBlockAlgorithm=c.extend({reset:function(){this._data=new u.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 b,x=this._data,A=x.words,S=x.sigBytes,I=this.blockSize,R=I*4,w=S/R;g?w=e.ceil(w):w=e.max((w|0)-this._minBufferSize,0);var N=w*I,k=e.min(N*4,S);if(N){for(var B=0;B{(function(t,e){typeof e4=="object"?tBe.exports=e4=e(Ar()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(e4,function(t){return function(e){var r=t,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!=e?this.sigBytes=l:this.sigBytes=u.length*8},toX32:function(){for(var u=this.words,l=u.length,d=[],f=0;f{(function(t,e){typeof t4=="object"?rBe.exports=t4=e(Ar()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(t4,function(t){return function(){if(typeof ArrayBuffer=="function"){var e=t,r=e.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}}(),t.lib.WordArray})});var iBe=_((r4,sBe)=>{(function(t,e){typeof r4=="object"?sBe.exports=r4=e(Ar()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(r4,function(t){return function(){var e=t,r=e.lib,n=r.WordArray,s=e.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}}(),t.enc.Utf16})});var k0=_((n4,aBe)=>{(function(t,e){typeof n4=="object"?aBe.exports=n4=e(Ar()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(n4,function(t){return function(){var e=t,r=e.lib,n=r.WordArray,s=e.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,m=c[f+1>>>2]>>>24-(f+1)%4*8&255,h=c[f+2>>>2]>>>24-(f+2)%4*8&255,y=p<<16|m<<8|h,g=0;g<4&&f+g*.75>>6*(3-g)&63));var b=l.charAt(64);if(b)for(;d.length%4;)d.push(b);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,h=p|m;l[d>>>2]|=h<<24-d%4*8,d++}return n.create(l,d)}}(),t.enc.Base64})});var cBe=_((s4,oBe)=>{(function(t,e){typeof s4=="object"?oBe.exports=s4=e(Ar()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(s4,function(t){return function(){var e=t,r=e.lib,n=r.WordArray,s=e.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=[],p=0;p>>2]>>>24-p%4*8&255,h=u[p+1>>>2]>>>24-(p+1)%4*8&255,y=u[p+2>>>2]>>>24-(p+2)%4*8&255,g=m<<16|h<<8|y,b=0;b<4&&p+b*.75>>6*(3-b)&63));var x=d.charAt(64);if(x)for(;f.length%4;)f.push(x);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,h=p|m;l[d>>>2]|=h<<24-d%4*8,d++}return n.create(l,d)}}(),t.enc.Base64url})});var P0=_((i4,uBe)=>{(function(t,e){typeof i4=="object"?uBe.exports=i4=e(Ar()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(i4,function(t){return function(e){var r=t,n=r.lib,s=n.WordArray,i=n.Hasher,a=r.algo,o=[];(function(){for(var p=0;p<64;p++)o[p]=e.abs(e.sin(p+1))*4294967296|0})();var c=a.MD5=i.extend({_doReset:function(){this._hash=new s.init([1732584193,4023233417,2562383102,271733878])},_doProcessBlock:function(p,m){for(var h=0;h<16;h++){var y=m+h,g=p[y];p[y]=(g<<8|g>>>24)&16711935|(g<<24|g>>>8)&4278255360}var b=this._hash.words,x=p[m+0],A=p[m+1],S=p[m+2],I=p[m+3],R=p[m+4],w=p[m+5],N=p[m+6],k=p[m+7],B=p[m+8],M=p[m+9],D=p[m+10],L=p[m+11],Z=p[m+12],W=p[m+13],U=p[m+14],z=p[m+15],j=b[0],J=b[1],se=b[2],oe=b[3];j=u(j,J,se,oe,x,7,o[0]),oe=u(oe,j,J,se,A,12,o[1]),se=u(se,oe,j,J,S,17,o[2]),J=u(J,se,oe,j,I,22,o[3]),j=u(j,J,se,oe,R,7,o[4]),oe=u(oe,j,J,se,w,12,o[5]),se=u(se,oe,j,J,N,17,o[6]),J=u(J,se,oe,j,k,22,o[7]),j=u(j,J,se,oe,B,7,o[8]),oe=u(oe,j,J,se,M,12,o[9]),se=u(se,oe,j,J,D,17,o[10]),J=u(J,se,oe,j,L,22,o[11]),j=u(j,J,se,oe,Z,7,o[12]),oe=u(oe,j,J,se,W,12,o[13]),se=u(se,oe,j,J,U,17,o[14]),J=u(J,se,oe,j,z,22,o[15]),j=l(j,J,se,oe,A,5,o[16]),oe=l(oe,j,J,se,N,9,o[17]),se=l(se,oe,j,J,L,14,o[18]),J=l(J,se,oe,j,x,20,o[19]),j=l(j,J,se,oe,w,5,o[20]),oe=l(oe,j,J,se,D,9,o[21]),se=l(se,oe,j,J,z,14,o[22]),J=l(J,se,oe,j,R,20,o[23]),j=l(j,J,se,oe,M,5,o[24]),oe=l(oe,j,J,se,U,9,o[25]),se=l(se,oe,j,J,I,14,o[26]),J=l(J,se,oe,j,B,20,o[27]),j=l(j,J,se,oe,W,5,o[28]),oe=l(oe,j,J,se,S,9,o[29]),se=l(se,oe,j,J,k,14,o[30]),J=l(J,se,oe,j,Z,20,o[31]),j=d(j,J,se,oe,w,4,o[32]),oe=d(oe,j,J,se,B,11,o[33]),se=d(se,oe,j,J,L,16,o[34]),J=d(J,se,oe,j,U,23,o[35]),j=d(j,J,se,oe,A,4,o[36]),oe=d(oe,j,J,se,R,11,o[37]),se=d(se,oe,j,J,k,16,o[38]),J=d(J,se,oe,j,D,23,o[39]),j=d(j,J,se,oe,W,4,o[40]),oe=d(oe,j,J,se,x,11,o[41]),se=d(se,oe,j,J,I,16,o[42]),J=d(J,se,oe,j,N,23,o[43]),j=d(j,J,se,oe,M,4,o[44]),oe=d(oe,j,J,se,Z,11,o[45]),se=d(se,oe,j,J,z,16,o[46]),J=d(J,se,oe,j,S,23,o[47]),j=f(j,J,se,oe,x,6,o[48]),oe=f(oe,j,J,se,k,10,o[49]),se=f(se,oe,j,J,U,15,o[50]),J=f(J,se,oe,j,w,21,o[51]),j=f(j,J,se,oe,Z,6,o[52]),oe=f(oe,j,J,se,I,10,o[53]),se=f(se,oe,j,J,D,15,o[54]),J=f(J,se,oe,j,A,21,o[55]),j=f(j,J,se,oe,B,6,o[56]),oe=f(oe,j,J,se,z,10,o[57]),se=f(se,oe,j,J,N,15,o[58]),J=f(J,se,oe,j,W,21,o[59]),j=f(j,J,se,oe,R,6,o[60]),oe=f(oe,j,J,se,L,10,o[61]),se=f(se,oe,j,J,S,15,o[62]),J=f(J,se,oe,j,M,21,o[63]),b[0]=b[0]+j|0,b[1]=b[1]+J|0,b[2]=b[2]+se|0,b[3]=b[3]+oe|0},_doFinalize:function(){var p=this._data,m=p.words,h=this._nDataBytes*8,y=p.sigBytes*8;m[y>>>5]|=128<<24-y%32;var g=e.floor(h/4294967296),b=h;m[(y+64>>>9<<4)+15]=(g<<8|g>>>24)&16711935|(g<<24|g>>>8)&4278255360,m[(y+64>>>9<<4)+14]=(b<<8|b>>>24)&16711935|(b<<24|b>>>8)&4278255360,p.sigBytes=(m.length+1)*4,this._process();for(var x=this._hash,A=x.words,S=0;S<4;S++){var I=A[S];A[S]=(I<<8|I>>>24)&16711935|(I<<24|I>>>8)&4278255360}return x},clone:function(){var p=i.clone.call(this);return p._hash=this._hash.clone(),p}});function u(p,m,h,y,g,b,x){var A=p+(m&h|~m&y)+g+x;return(A<>>32-b)+m}function l(p,m,h,y,g,b,x){var A=p+(m&y|h&~y)+g+x;return(A<>>32-b)+m}function d(p,m,h,y,g,b,x){var A=p+(m^h^y)+g+x;return(A<>>32-b)+m}function f(p,m,h,y,g,b,x){var A=p+(h^(m|~y))+g+x;return(A<>>32-b)+m}r.MD5=i._createHelper(c),r.HmacMD5=i._createHmacHelper(c)}(Math),t.MD5})});var Bz=_((a4,lBe)=>{(function(t,e){typeof a4=="object"?lBe.exports=a4=e(Ar()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(a4,function(t){return function(){var e=t,r=e.lib,n=r.WordArray,s=r.Hasher,i=e.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],p=l[2],m=l[3],h=l[4],y=0;y<80;y++){if(y<16)a[y]=c[u+y]|0;else{var g=a[y-3]^a[y-8]^a[y-14]^a[y-16];a[y]=g<<1|g>>>31}var b=(d<<5|d>>>27)+h+a[y];y<20?b+=(f&p|~f&m)+1518500249:y<40?b+=(f^p^m)+1859775393:y<60?b+=(f&p|f&m|p&m)-1894007588:b+=(f^p^m)-899497514,h=m,m=p,p=f<<30|f>>>2,f=d,d=b}l[0]=l[0]+d|0,l[1]=l[1]+f|0,l[2]=l[2]+p|0,l[3]=l[3]+m|0,l[4]=l[4]+h|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}});e.SHA1=s._createHelper(o),e.HmacSHA1=s._createHmacHelper(o)}(),t.SHA1})});var c4=_((o4,dBe)=>{(function(t,e){typeof o4=="object"?dBe.exports=o4=e(Ar()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(o4,function(t){return function(e){var r=t,n=r.lib,s=n.WordArray,i=n.Hasher,a=r.algo,o=[],c=[];(function(){function d(h){for(var y=e.sqrt(h),g=2;g<=y;g++)if(!(h%g))return!1;return!0}function f(h){return(h-(h|0))*4294967296|0}for(var p=2,m=0;m<64;)d(p)&&(m<8&&(o[m]=f(e.pow(p,1/2))),c[m]=f(e.pow(p,1/3)),m++),p++})();var u=[],l=a.SHA256=i.extend({_doReset:function(){this._hash=new s.init(o.slice(0))},_doProcessBlock:function(d,f){for(var p=this._hash.words,m=p[0],h=p[1],y=p[2],g=p[3],b=p[4],x=p[5],A=p[6],S=p[7],I=0;I<64;I++){if(I<16)u[I]=d[f+I]|0;else{var R=u[I-15],w=(R<<25|R>>>7)^(R<<14|R>>>18)^R>>>3,N=u[I-2],k=(N<<15|N>>>17)^(N<<13|N>>>19)^N>>>10;u[I]=w+u[I-7]+k+u[I-16]}var B=b&x^~b&A,M=m&h^m&y^h&y,D=(m<<30|m>>>2)^(m<<19|m>>>13)^(m<<10|m>>>22),L=(b<<26|b>>>6)^(b<<21|b>>>11)^(b<<7|b>>>25),Z=S+L+B+c[I]+u[I],W=D+M;S=A,A=x,x=b,b=g+Z|0,g=y,y=h,h=m,m=Z+W|0}p[0]=p[0]+m|0,p[1]=p[1]+h|0,p[2]=p[2]+y|0,p[3]=p[3]+g|0,p[4]=p[4]+b|0,p[5]=p[5]+x|0,p[6]=p[6]+A|0,p[7]=p[7]+S|0},_doFinalize:function(){var d=this._data,f=d.words,p=this._nDataBytes*8,m=d.sigBytes*8;return f[m>>>5]|=128<<24-m%32,f[(m+64>>>9<<4)+14]=e.floor(p/4294967296),f[(m+64>>>9<<4)+15]=p,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),t.SHA256})});var pBe=_((u4,fBe)=>{(function(t,e,r){typeof u4=="object"?fBe.exports=u4=e(Ar(),c4()):typeof define=="function"&&define.amd?define(["./core","./sha256"],e):e(t.CryptoJS)})(u4,function(t){return function(){var e=t,r=e.lib,n=r.WordArray,s=e.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}});e.SHA224=i._createHelper(a),e.HmacSHA224=i._createHmacHelper(a)}(),t.SHA224})});var Lz=_((l4,mBe)=>{(function(t,e,r){typeof l4=="object"?mBe.exports=l4=e(Ar(),OI()):typeof define=="function"&&define.amd?define(["./core","./x64-core"],e):e(t.CryptoJS)})(l4,function(t){return function(){var e=t,r=e.lib,n=r.Hasher,s=e.x64,i=s.Word,a=s.WordArray,o=e.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,p){for(var m=this._hash.words,h=m[0],y=m[1],g=m[2],b=m[3],x=m[4],A=m[5],S=m[6],I=m[7],R=h.high,w=h.low,N=y.high,k=y.low,B=g.high,M=g.low,D=b.high,L=b.low,Z=x.high,W=x.low,U=A.high,z=A.low,j=S.high,J=S.low,se=I.high,oe=I.low,ue=R,Te=w,Ne=N,je=k,Fe=B,ve=M,F=D,G=L,K=Z,q=W,Q=U,ee=z,ne=j,re=J,X=se,ie=oe,ce=0;ce<80;ce++){var me,Oe,Pe=l[ce];if(ce<16)Oe=Pe.high=f[p+ce*2]|0,me=Pe.low=f[p+ce*2+1]|0;else{var qe=l[ce-15],Ye=qe.high,Je=qe.low,et=(Ye>>>1|Je<<31)^(Ye>>>8|Je<<24)^Ye>>>7,st=(Je>>>1|Ye<<31)^(Je>>>8|Ye<<24)^(Je>>>7|Ye<<25),ut=l[ce-2],rt=ut.high,Pt=ut.low,dt=(rt>>>19|Pt<<13)^(rt<<3|Pt>>>29)^rt>>>6,Be=(Pt>>>19|rt<<13)^(Pt<<3|rt>>>29)^(Pt>>>6|rt<<26),Xe=l[ce-7],pt=Xe.high,nt=Xe.low,_t=l[ce-16],yn=_t.high,It=_t.low;me=st+nt,Oe=et+pt+(me>>>0>>0?1:0),me=me+Be,Oe=Oe+dt+(me>>>0>>0?1:0),me=me+It,Oe=Oe+yn+(me>>>0>>0?1:0),Pe.high=Oe,Pe.low=me}var wr=K&Q^~K&ne,js=q&ee^~q&re,Lr=ue&Ne^ue&Fe^Ne&Fe,Qs=Te&je^Te&ve^je&ve,Hs=(ue>>>28|Te<<4)^(ue<<30|Te>>>2)^(ue<<25|Te>>>7),bs=(Te>>>28|ue<<4)^(Te<<30|ue>>>2)^(Te<<25|ue>>>7),Gs=(K>>>14|q<<18)^(K>>>18|q<<14)^(K<<23|q>>>9),Ku=(q>>>14|K<<18)^(q>>>18|K<<14)^(q<<23|K>>>9),Co=u[ce],Hc=Co.high,La=Co.low,An=ie+Ku,Ma=X+Gs+(An>>>0>>0?1:0),An=An+js,Ma=Ma+wr+(An>>>0>>0?1:0),An=An+La,Ma=Ma+Hc+(An>>>0>>0?1:0),An=An+me,Ma=Ma+Oe+(An>>>0>>0?1:0),Ed=bs+Qs,To=Hs+Lr+(Ed>>>0>>0?1:0);X=ne,ie=re,ne=Q,re=ee,Q=K,ee=q,q=G+An|0,K=F+Ma+(q>>>0>>0?1:0)|0,F=Fe,G=ve,Fe=Ne,ve=je,Ne=ue,je=Te,Te=An+Ed|0,ue=Ma+To+(Te>>>0>>0?1:0)|0}w=h.low=w+Te,h.high=R+ue+(w>>>0>>0?1:0),k=y.low=k+je,y.high=N+Ne+(k>>>0>>0?1:0),M=g.low=M+ve,g.high=B+Fe+(M>>>0>>0?1:0),L=b.low=L+G,b.high=D+F+(L>>>0>>0?1:0),W=x.low=W+q,x.high=Z+K+(W>>>0>>0?1:0),z=A.low=z+ee,A.high=U+Q+(z>>>0>>0?1:0),J=S.low=J+re,S.high=j+ne+(J>>>0>>0?1:0),oe=I.low=oe+ie,I.high=se+X+(oe>>>0>>0?1:0)},_doFinalize:function(){var f=this._data,p=f.words,m=this._nDataBytes*8,h=f.sigBytes*8;p[h>>>5]|=128<<24-h%32,p[(h+128>>>10<<5)+30]=Math.floor(m/4294967296),p[(h+128>>>10<<5)+31]=m,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});e.SHA512=n._createHelper(d),e.HmacSHA512=n._createHmacHelper(d)}(),t.SHA512})});var gBe=_((d4,hBe)=>{(function(t,e,r){typeof d4=="object"?hBe.exports=d4=e(Ar(),OI(),Lz()):typeof define=="function"&&define.amd?define(["./core","./x64-core","./sha512"],e):e(t.CryptoJS)})(d4,function(t){return function(){var e=t,r=e.x64,n=r.Word,s=r.WordArray,i=e.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}});e.SHA384=a._createHelper(o),e.HmacSHA384=a._createHmacHelper(o)}(),t.SHA384})});var ABe=_((f4,yBe)=>{(function(t,e,r){typeof f4=="object"?yBe.exports=f4=e(Ar(),OI()):typeof define=="function"&&define.amd?define(["./core","./x64-core"],e):e(t.CryptoJS)})(f4,function(t){return function(e){var r=t,n=r.lib,s=n.WordArray,i=n.Hasher,a=r.x64,o=a.Word,c=r.algo,u=[],l=[],d=[];(function(){for(var m=1,h=0,y=0;y<24;y++){u[m+5*h]=(y+1)*(y+2)/2%64;var g=h%5,b=(2*m+3*h)%5;m=g,h=b}for(var m=0;m<5;m++)for(var h=0;h<5;h++)l[m+5*h]=h+(2*m+3*h)%5*5;for(var x=1,A=0;A<24;A++){for(var S=0,I=0,R=0;R<7;R++){if(x&1){var w=(1<>>24)&16711935|(x<<24|x>>>8)&4278255360,A=(A<<8|A>>>24)&16711935|(A<<24|A>>>8)&4278255360;var S=y[b];S.high^=A,S.low^=x}for(var I=0;I<24;I++){for(var R=0;R<5;R++){for(var w=0,N=0,k=0;k<5;k++){var S=y[R+5*k];w^=S.high,N^=S.low}var B=f[R];B.high=w,B.low=N}for(var R=0;R<5;R++)for(var M=f[(R+4)%5],D=f[(R+1)%5],L=D.high,Z=D.low,w=M.high^(L<<1|Z>>>31),N=M.low^(Z<<1|L>>>31),k=0;k<5;k++){var S=y[R+5*k];S.high^=w,S.low^=N}for(var W=1;W<25;W++){var w,N,S=y[W],U=S.high,z=S.low,j=u[W];j<32?(w=U<>>32-j,N=z<>>32-j):(w=z<>>64-j,N=U<>>64-j);var J=f[l[W]];J.high=w,J.low=N}var se=f[0],oe=y[0];se.high=oe.high,se.low=oe.low;for(var R=0;R<5;R++)for(var k=0;k<5;k++){var W=R+5*k,S=y[W],ue=f[W],Te=f[(R+1)%5+5*k],Ne=f[(R+2)%5+5*k];S.high=ue.high^~Te.high&Ne.high,S.low=ue.low^~Te.low&Ne.low}var S=y[0],je=d[I];S.high^=je.high,S.low^=je.low}},_doFinalize:function(){var m=this._data,h=m.words,y=this._nDataBytes*8,g=m.sigBytes*8,b=this.blockSize*32;h[g>>>5]|=1<<24-g%32,h[(e.ceil((g+1)/b)*b>>>5)-1]|=128,m.sigBytes=h.length*4,this._process();for(var x=this._state,A=this.cfg.outputLength/8,S=A/8,I=[],R=0;R>>24)&16711935|(N<<24|N>>>8)&4278255360,k=(k<<8|k>>>24)&16711935|(k<<24|k>>>8)&4278255360,I.push(k),I.push(N)}return new s.init(I,A)},clone:function(){for(var m=i.clone.call(this),h=m._state=this._state.slice(0),y=0;y<25;y++)h[y]=h[y].clone();return m}});r.SHA3=i._createHelper(p),r.HmacSHA3=i._createHmacHelper(p)}(Math),t.SHA3})});var bBe=_((p4,xBe)=>{(function(t,e){typeof p4=="object"?xBe.exports=p4=e(Ar()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(p4,function(t){return function(e){var r=t,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]),p=a.RIPEMD160=i.extend({_doReset:function(){this._hash=s.create([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(A,S){for(var I=0;I<16;I++){var R=S+I,w=A[R];A[R]=(w<<8|w>>>24)&16711935|(w<<24|w>>>8)&4278255360}var N=this._hash.words,k=d.words,B=f.words,M=o.words,D=c.words,L=u.words,Z=l.words,W,U,z,j,J,se,oe,ue,Te,Ne;se=W=N[0],oe=U=N[1],ue=z=N[2],Te=j=N[3],Ne=J=N[4];for(var je,I=0;I<80;I+=1)je=W+A[S+M[I]]|0,I<16?je+=m(U,z,j)+k[0]:I<32?je+=h(U,z,j)+k[1]:I<48?je+=y(U,z,j)+k[2]:I<64?je+=g(U,z,j)+k[3]:je+=b(U,z,j)+k[4],je=je|0,je=x(je,L[I]),je=je+J|0,W=J,J=j,j=x(z,10),z=U,U=je,je=se+A[S+D[I]]|0,I<16?je+=b(oe,ue,Te)+B[0]:I<32?je+=g(oe,ue,Te)+B[1]:I<48?je+=y(oe,ue,Te)+B[2]:I<64?je+=h(oe,ue,Te)+B[3]:je+=m(oe,ue,Te)+B[4],je=je|0,je=x(je,Z[I]),je=je+Ne|0,se=Ne,Ne=Te,Te=x(ue,10),ue=oe,oe=je;je=N[1]+z+Te|0,N[1]=N[2]+j+Ne|0,N[2]=N[3]+J+se|0,N[3]=N[4]+W+oe|0,N[4]=N[0]+U+ue|0,N[0]=je},_doFinalize:function(){var A=this._data,S=A.words,I=this._nDataBytes*8,R=A.sigBytes*8;S[R>>>5]|=128<<24-R%32,S[(R+64>>>9<<4)+14]=(I<<8|I>>>24)&16711935|(I<<24|I>>>8)&4278255360,A.sigBytes=(S.length+1)*4,this._process();for(var w=this._hash,N=w.words,k=0;k<5;k++){var B=N[k];N[k]=(B<<8|B>>>24)&16711935|(B<<24|B>>>8)&4278255360}return w},clone:function(){var A=i.clone.call(this);return A._hash=this._hash.clone(),A}});function m(A,S,I){return A^S^I}function h(A,S,I){return A&S|~A&I}function y(A,S,I){return(A|~S)^I}function g(A,S,I){return A&I|S&~I}function b(A,S,I){return A^(S|~I)}function x(A,S){return A<>>32-S}r.RIPEMD160=i._createHelper(p),r.HmacRIPEMD160=i._createHmacHelper(p)}(Math),t.RIPEMD160})});var h4=_((m4,_Be)=>{(function(t,e){typeof m4=="object"?_Be.exports=m4=e(Ar()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(m4,function(t){(function(){var e=t,r=e.lib,n=r.Base,s=e.enc,i=s.Utf8,a=e.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(),p=this._iKey=u.clone(),m=f.words,h=p.words,y=0;y{(function(t,e,r){typeof g4=="object"?EBe.exports=g4=e(Ar(),c4(),h4()):typeof define=="function"&&define.amd?define(["./core","./sha256","./hmac"],e):e(t.CryptoJS)})(g4,function(t){return function(){var e=t,r=e.lib,n=r.Base,s=r.WordArray,i=e.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),p=s.create(),m=s.create([1]),h=p.words,y=m.words,g=d.keySize,b=d.iterations;h.length{(function(t,e,r){typeof y4=="object"?SBe.exports=y4=e(Ar(),Bz(),h4()):typeof define=="function"&&define.amd?define(["./core","./sha1","./hmac"],e):e(t.CryptoJS)})(y4,function(t){return function(){var e=t,r=e.lib,n=r.Base,s=r.WordArray,i=e.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(),p=s.create(),m=p.words,h=d.keySize,y=d.iterations;m.length{(function(t,e,r){typeof A4=="object"?IBe.exports=A4=e(Ar(),mf()):typeof define=="function"&&define.amd?define(["./core","./evpkdf"],e):e(t.CryptoJS)})(A4,function(t){t.lib.Cipher||function(e){var r=t,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(B,M){return this.create(this._ENC_XFORM_MODE,B,M)},createDecryptor:function(B,M){return this.create(this._DEC_XFORM_MODE,B,M)},init:function(B,M,D){this.cfg=this.cfg.extend(D),this._xformMode=B,this._key=M,this.reset()},reset:function(){a.reset.call(this),this._doReset()},process:function(B){return this._append(B),this._process()},finalize:function(B){B&&this._append(B);var M=this._doFinalize();return M},keySize:128/32,ivSize:128/32,_ENC_XFORM_MODE:1,_DEC_XFORM_MODE:2,_createHelper:function(){function B(M){return typeof M=="string"?k:R}return function(M){return{encrypt:function(D,L,Z){return B(L).encrypt(M,D,L,Z)},decrypt:function(D,L,Z){return B(L).decrypt(M,D,L,Z)}}}}()}),p=n.StreamCipher=f.extend({_doFinalize:function(){var B=this._process(!0);return B},blockSize:1}),m=r.mode={},h=n.BlockCipherMode=s.extend({createEncryptor:function(B,M){return this.Encryptor.create(B,M)},createDecryptor:function(B,M){return this.Decryptor.create(B,M)},init:function(B,M){this._cipher=B,this._iv=M}}),y=m.CBC=function(){var B=h.extend();B.Encryptor=B.extend({processBlock:function(D,L){var Z=this._cipher,W=Z.blockSize;M.call(this,D,L,W),Z.encryptBlock(D,L),this._prevBlock=D.slice(L,L+W)}}),B.Decryptor=B.extend({processBlock:function(D,L){var Z=this._cipher,W=Z.blockSize,U=D.slice(L,L+W);Z.decryptBlock(D,L),M.call(this,D,L,W),this._prevBlock=U}});function M(D,L,Z){var W,U=this._iv;U?(W=U,this._iv=e):W=this._prevBlock;for(var z=0;z>>2]&255;B.sigBytes-=M}},x=n.BlockCipher=f.extend({cfg:f.cfg.extend({mode:y,padding:b}),reset:function(){var B;f.reset.call(this);var M=this.cfg,D=M.iv,L=M.mode;this._xformMode==this._ENC_XFORM_MODE?B=L.createEncryptor:(B=L.createDecryptor,this._minBufferSize=1),this._mode&&this._mode.__creator==B?this._mode.init(this,D&&D.words):(this._mode=B.call(L,this,D&&D.words),this._mode.__creator=B)},_doProcessBlock:function(B,M){this._mode.processBlock(B,M)},_doFinalize:function(){var B,M=this.cfg.padding;return this._xformMode==this._ENC_XFORM_MODE?(M.pad(this._data,this.blockSize),B=this._process(!0)):(B=this._process(!0),M.unpad(B)),B},blockSize:128/32}),A=n.CipherParams=s.extend({init:function(B){this.mixIn(B)},toString:function(B){return(B||this.formatter).stringify(this)}}),S=r.format={},I=S.OpenSSL={stringify:function(B){var M,D=B.ciphertext,L=B.salt;return L?M=i.create([1398893684,1701076831]).concat(L).concat(D):M=D,M.toString(u)},parse:function(B){var M,D=u.parse(B),L=D.words;return L[0]==1398893684&&L[1]==1701076831&&(M=i.create(L.slice(2,4)),L.splice(0,4),D.sigBytes-=16),A.create({ciphertext:D,salt:M})}},R=n.SerializableCipher=s.extend({cfg:s.extend({format:I}),encrypt:function(B,M,D,L){L=this.cfg.extend(L);var Z=B.createEncryptor(D,L),W=Z.finalize(M),U=Z.cfg;return A.create({ciphertext:W,key:D,iv:U.iv,algorithm:B,mode:U.mode,padding:U.padding,blockSize:B.blockSize,formatter:L.format})},decrypt:function(B,M,D,L){L=this.cfg.extend(L),M=this._parse(M,L.format);var Z=B.createDecryptor(D,L).finalize(M.ciphertext);return Z},_parse:function(B,M){return typeof B=="string"?M.parse(B,this):B}}),w=r.kdf={},N=w.OpenSSL={execute:function(B,M,D,L,Z){if(L||(L=i.random(64/8)),Z)var W=d.create({keySize:M+D,hasher:Z}).compute(B,L);else var W=d.create({keySize:M+D}).compute(B,L);var U=i.create(W.words.slice(M),D*4);return W.sigBytes=M*4,A.create({key:W,iv:U,salt:L})}},k=n.PasswordBasedCipher=R.extend({cfg:R.cfg.extend({kdf:N}),encrypt:function(B,M,D,L){L=this.cfg.extend(L);var Z=L.kdf.execute(D,B.keySize,B.ivSize,L.salt,L.hasher);L.iv=Z.iv;var W=R.encrypt.call(this,B,M,Z.key,L);return W.mixIn(Z),W},decrypt:function(B,M,D,L){L=this.cfg.extend(L),M=this._parse(M,L.format);var Z=L.kdf.execute(D,B.keySize,B.ivSize,M.salt,L.hasher);L.iv=Z.iv;var W=R.decrypt.call(this,B,M,Z.key,L);return W}})}()})});var TBe=_((x4,CBe)=>{(function(t,e,r){typeof x4=="object"?CBe.exports=x4=e(Ar(),Ps()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(x4,function(t){return t.mode.CFB=function(){var e=t.lib.BlockCipherMode.extend();e.Encryptor=e.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)}}),e.Decryptor=e.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(t,e,r){typeof b4=="object"?wBe.exports=b4=e(Ar(),Ps()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(b4,function(t){return t.mode.CTR=function(){var e=t.lib.BlockCipherMode.extend(),r=e.Encryptor=e.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(t,e,r){typeof _4=="object"?NBe.exports=_4=e(Ar(),Ps()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(_4,function(t){return t.mode.CTRGladman=function(){var e=t.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=e.Encryptor=e.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(t,e,r){typeof E4=="object"?kBe.exports=E4=e(Ar(),Ps()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(E4,function(t){return t.mode.OFB=function(){var e=t.lib.BlockCipherMode.extend(),r=e.Encryptor=e.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(t,e,r){typeof v4=="object"?DBe.exports=v4=e(Ar(),Ps()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(v4,function(t){return t.mode.ECB=function(){var e=t.lib.BlockCipherMode.extend();return e.Encryptor=e.extend({processBlock:function(r,n){this._cipher.encryptBlock(r,n)}}),e.Decryptor=e.extend({processBlock:function(r,n){this._cipher.decryptBlock(r,n)}}),e}(),t.mode.ECB})});var MBe=_((S4,LBe)=>{(function(t,e,r){typeof S4=="object"?LBe.exports=S4=e(Ar(),Ps()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(S4,function(t){return t.pad.AnsiX923={pad:function(e,r){var n=e.sigBytes,s=r*4,i=s-n%s,a=n+i-1;e.clamp(),e.words[a>>>2]|=i<<24-a%4*8,e.sigBytes+=i},unpad:function(e){var r=e.words[e.sigBytes-1>>>2]&255;e.sigBytes-=r}},t.pad.Ansix923})});var $Be=_((I4,WBe)=>{(function(t,e,r){typeof I4=="object"?WBe.exports=I4=e(Ar(),Ps()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(I4,function(t){return t.pad.Iso10126={pad:function(e,r){var n=r*4,s=n-e.sigBytes%n;e.concat(t.lib.WordArray.random(s-1)).concat(t.lib.WordArray.create([s<<24],1))},unpad:function(e){var r=e.words[e.sigBytes-1>>>2]&255;e.sigBytes-=r}},t.pad.Iso10126})});var FBe=_((C4,UBe)=>{(function(t,e,r){typeof C4=="object"?UBe.exports=C4=e(Ar(),Ps()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(C4,function(t){return t.pad.Iso97971={pad:function(e,r){e.concat(t.lib.WordArray.create([2147483648],1)),t.pad.ZeroPadding.pad(e,r)},unpad:function(e){t.pad.ZeroPadding.unpad(e),e.sigBytes--}},t.pad.Iso97971})});var jBe=_((T4,qBe)=>{(function(t,e,r){typeof T4=="object"?qBe.exports=T4=e(Ar(),Ps()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(T4,function(t){return t.pad.ZeroPadding={pad:function(e,r){var n=r*4;e.clamp(),e.sigBytes+=n-(e.sigBytes%n||n)},unpad:function(e){for(var r=e.words,n=e.sigBytes-1,n=e.sigBytes-1;n>=0;n--)if(r[n>>>2]>>>24-n%4*8&255){e.sigBytes=n+1;break}}},t.pad.ZeroPadding})});var HBe=_((w4,QBe)=>{(function(t,e,r){typeof w4=="object"?QBe.exports=w4=e(Ar(),Ps()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(w4,function(t){return t.pad.NoPadding={pad:function(){},unpad:function(){}},t.pad.NoPadding})});var zBe=_((R4,GBe)=>{(function(t,e,r){typeof R4=="object"?GBe.exports=R4=e(Ar(),Ps()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(R4,function(t){return function(e){var r=t,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})}}}(),t.format.Hex})});var VBe=_((N4,KBe)=>{(function(t,e,r){typeof N4=="object"?KBe.exports=N4=e(Ar(),k0(),P0(),mf(),Ps()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],e):e(t.CryptoJS)})(N4,function(t){return function(){var e=t,r=e.lib,n=r.BlockCipher,s=e.algo,i=[],a=[],o=[],c=[],u=[],l=[],d=[],f=[],p=[],m=[];(function(){for(var g=[],b=0;b<256;b++)b<128?g[b]=b<<1:g[b]=b<<1^283;for(var x=0,A=0,b=0;b<256;b++){var S=A^A<<1^A<<2^A<<3^A<<4;S=S>>>8^S&255^99,i[x]=S,a[S]=x;var I=g[x],R=g[I],w=g[R],N=g[S]*257^S*16843008;o[x]=N<<24|N>>>8,c[x]=N<<16|N>>>16,u[x]=N<<8|N>>>24,l[x]=N;var N=w*16843009^R*65537^I*257^x*16843008;d[S]=N<<24|N>>>8,f[S]=N<<16|N>>>16,p[S]=N<<8|N>>>24,m[S]=N,x?(x=I^g[g[g[w^I]]],A^=g[g[A]]):x=A=1}})();var h=[0,1,2,4,8,16,32,64,128,27,54],y=s.AES=n.extend({_doReset:function(){var g;if(!(this._nRounds&&this._keyPriorReset===this._key)){for(var b=this._keyPriorReset=this._key,x=b.words,A=b.sigBytes/4,S=this._nRounds=A+6,I=(S+1)*4,R=this._keySchedule=[],w=0;w6&&w%A==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^=h[w/A|0]<<24),R[w]=R[w-A]^g);for(var N=this._invKeySchedule=[],k=0;k>>24]]^f[i[g>>>16&255]]^p[i[g>>>8&255]]^m[i[g&255]]}}},encryptBlock:function(g,b){this._doCryptBlock(g,b,this._keySchedule,o,c,u,l,i)},decryptBlock:function(g,b){var x=g[b+1];g[b+1]=g[b+3],g[b+3]=x,this._doCryptBlock(g,b,this._invKeySchedule,d,f,p,m,a);var x=g[b+1];g[b+1]=g[b+3],g[b+3]=x},_doCryptBlock:function(g,b,x,A,S,I,R,w){for(var N=this._nRounds,k=g[b]^x[0],B=g[b+1]^x[1],M=g[b+2]^x[2],D=g[b+3]^x[3],L=4,Z=1;Z>>24]^S[B>>>16&255]^I[M>>>8&255]^R[D&255]^x[L++],U=A[B>>>24]^S[M>>>16&255]^I[D>>>8&255]^R[k&255]^x[L++],z=A[M>>>24]^S[D>>>16&255]^I[k>>>8&255]^R[B&255]^x[L++],j=A[D>>>24]^S[k>>>16&255]^I[B>>>8&255]^R[M&255]^x[L++];k=W,B=U,M=z,D=j}var W=(w[k>>>24]<<24|w[B>>>16&255]<<16|w[M>>>8&255]<<8|w[D&255])^x[L++],U=(w[B>>>24]<<24|w[M>>>16&255]<<16|w[D>>>8&255]<<8|w[k&255])^x[L++],z=(w[M>>>24]<<24|w[D>>>16&255]<<16|w[k>>>8&255]<<8|w[B&255])^x[L++],j=(w[D>>>24]<<24|w[k>>>16&255]<<16|w[B>>>8&255]<<8|w[M&255])^x[L++];g[b]=W,g[b+1]=U,g[b+2]=z,g[b+3]=j},keySize:256/32});e.AES=n._createHelper(y)}(),t.AES})});var JBe=_((O4,YBe)=>{(function(t,e,r){typeof O4=="object"?YBe.exports=O4=e(Ar(),k0(),P0(),mf(),Ps()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],e):e(t.CryptoJS)})(O4,function(t){return function(){var e=t,r=e.lib,n=r.WordArray,s=r.BlockCipher,i=e.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 h=this._key,y=h.words,g=[],b=0;b<56;b++){var x=a[b]-1;g[b]=y[x>>>5]>>>31-x%32&1}for(var A=this._subKeys=[],S=0;S<16;S++){for(var I=A[S]=[],R=c[S],b=0;b<24;b++)I[b/6|0]|=g[(o[b]-1+R)%28]<<31-b%6,I[4+(b/6|0)]|=g[28+(o[b+24]-1+R)%28]<<31-b%6;I[0]=I[0]<<1|I[0]>>>31;for(var b=1;b<7;b++)I[b]=I[b]>>>(b-1)*4+3;I[7]=I[7]<<5|I[7]>>>27}for(var w=this._invSubKeys=[],b=0;b<16;b++)w[b]=A[15-b]},encryptBlock:function(h,y){this._doCryptBlock(h,y,this._subKeys)},decryptBlock:function(h,y){this._doCryptBlock(h,y,this._invSubKeys)},_doCryptBlock:function(h,y,g){this._lBlock=h[y],this._rBlock=h[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 b=0;b<16;b++){for(var x=g[b],A=this._lBlock,S=this._rBlock,I=0,R=0;R<8;R++)I|=u[R][((S^x[R])&l[R])>>>0];this._lBlock=S,this._rBlock=A^I}var w=this._lBlock;this._lBlock=this._rBlock,this._rBlock=w,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),h[y]=this._lBlock,h[y+1]=this._rBlock},keySize:64/32,ivSize:64/32,blockSize:64/32});function f(h,y){var g=(this._lBlock>>>h^this._rBlock)&y;this._rBlock^=g,this._lBlock^=g<>>h^this._lBlock)&y;this._lBlock^=g,this._rBlock^=g<192.");var g=y.slice(0,2),b=y.length<4?y.slice(0,2):y.slice(2,4),x=y.length<6?y.slice(0,2):y.slice(4,6);this._des1=d.createEncryptor(n.create(g)),this._des2=d.createEncryptor(n.create(b)),this._des3=d.createEncryptor(n.create(x))},encryptBlock:function(h,y){this._des1.encryptBlock(h,y),this._des2.decryptBlock(h,y),this._des3.encryptBlock(h,y)},decryptBlock:function(h,y){this._des3.decryptBlock(h,y),this._des2.encryptBlock(h,y),this._des1.decryptBlock(h,y)},keySize:192/32,ivSize:64/32,blockSize:64/32});e.TripleDES=s._createHelper(m)}(),t.TripleDES})});var ZBe=_((k4,XBe)=>{(function(t,e,r){typeof k4=="object"?XBe.exports=k4=e(Ar(),k0(),P0(),mf(),Ps()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],e):e(t.CryptoJS)})(k4,function(t){return function(){var e=t,r=e.lib,n=r.StreamCipher,s=e.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,p=0;f<256;f++){var m=f%l,h=u[m>>>2]>>>24-m%4*8&255;p=(p+d[f]+h)%256;var y=d[f];d[f]=d[p],d[p]=y}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 p=c[u];c[u]=c[l],c[l]=p,d|=c[(c[u]+c[l])%256]<<24-f*8}return this._i=u,this._j=l,d}e.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)}});e.RC4Drop=n._createHelper(o)}(),t.RC4})});var tLe=_((P4,eLe)=>{(function(t,e,r){typeof P4=="object"?eLe.exports=P4=e(Ar(),k0(),P0(),mf(),Ps()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],e):e(t.CryptoJS)})(P4,function(t){return function(){var e=t,r=e.lib,n=r.StreamCipher,s=e.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 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],m=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++)m[f]^=p[f+4&7];if(d){var h=d.words,y=h[0],g=h[1],b=(y<<8|y>>>24)&16711935|(y<<24|y>>>8)&4278255360,x=(g<<8|g>>>24)&16711935|(g<<24|g>>>8)&4278255360,A=b>>>16|x&4294901760,S=x<<16|b&65535;m[0]^=b,m[1]^=A,m[2]^=x,m[3]^=S,m[4]^=b,m[5]^=A,m[6]^=x,m[7]^=S;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 p=0;p<4;p++)i[p]=(i[p]<<8|i[p]>>>24)&16711935|(i[p]<<24|i[p]>>>8)&4278255360,l[d+p]^=i[p]},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 p=l[f]+d[f],m=p&65535,h=p>>>16,y=((m*m>>>17)+m*h>>>15)+h*h,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}e.Rabbit=n._createHelper(c)}(),t.Rabbit})});var nLe=_((D4,rLe)=>{(function(t,e,r){typeof D4=="object"?rLe.exports=D4=e(Ar(),k0(),P0(),mf(),Ps()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],e):e(t.CryptoJS)})(D4,function(t){return function(){var e=t,r=e.lib,n=r.StreamCipher,s=e.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],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 m=0;m<4;m++)u.call(this);for(var m=0;m<8;m++)p[m]^=f[m+4&7];if(d){var h=d.words,y=h[0],g=h[1],b=(y<<8|y>>>24)&16711935|(y<<24|y>>>8)&4278255360,x=(g<<8|g>>>24)&16711935|(g<<24|g>>>8)&4278255360,A=b>>>16|x&4294901760,S=x<<16|b&65535;p[0]^=b,p[1]^=A,p[2]^=x,p[3]^=S,p[4]^=b,p[5]^=A,p[6]^=x,p[7]^=S;for(var m=0;m<4;m++)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 p=0;p<4;p++)i[p]=(i[p]<<8|i[p]>>>24)&16711935|(i[p]<<24|i[p]>>>8)&4278255360,l[d+p]^=i[p]},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 p=l[f]+d[f],m=p&65535,h=p>>>16,y=((m*m>>>17)+m*h>>>15)+h*h,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}e.RabbitLegacy=n._createHelper(c)}(),t.RabbitLegacy})});var iLe=_((B4,sLe)=>{(function(t,e,r){typeof B4=="object"?sLe.exports=B4=e(Ar(),k0(),P0(),mf(),Ps()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],e):e(t.CryptoJS)})(B4,function(t){return function(){var e=t,r=e.lib,n=r.BlockCipher,s=e.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(m,h){let y=h>>24&255,g=h>>16&255,b=h>>8&255,x=h&255,A=m.sbox[0][y]+m.sbox[1][g];return A=A^m.sbox[2][b],A=A+m.sbox[3][x],A}function l(m,h,y){let g=h,b=y,x;for(let A=0;A1;--A)g=g^m.pbox[A],b=u(m,g)^b,x=g,g=b,b=x;return x=g,g=b,b=x,b=b^m.pbox[1],g=g^m.pbox[0],{left:g,right:b}}function f(m,h,y){for(let S=0;S<4;S++){m.sbox[S]=[];for(let I=0;I<256;I++)m.sbox[S][I]=o[S][I]}let g=0;for(let S=0;S=y&&(g=0);let b=0,x=0,A=0;for(let S=0;S{(function(t,e,r){typeof L4=="object"?aLe.exports=L4=e(Ar(),OI(),nBe(),iBe(),k0(),cBe(),P0(),Bz(),c4(),pBe(),Lz(),gBe(),ABe(),bBe(),h4(),vBe(),mf(),Ps(),TBe(),RBe(),OBe(),PBe(),BBe(),MBe(),$Be(),FBe(),jBe(),HBe(),zBe(),VBe(),JBe(),ZBe(),tLe(),nLe(),iLe()):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"],e):t.CryptoJS=e(t.CryptoJS)})(L4,function(t){return t})});var DI=_(ur=>{"use strict";Object.defineProperty(ur,"__esModule",{value:!0});ur.getOptions=ur.setOptions=ur.hasOwnProp=ur.formatDate=ur.camelify=ur.splitByCommaWithPreservingQuotes=ur.trim=ur.splitAt=ur.tryCatch=ur.byteSequenceToHex=ur.hexToByteSequence=ur.toNumber=ur.INVALIDPLAYLIST=ur.CONDITIONALPARAMCHECK=ur.PARAMCHECK=ur.CONDITIONALASSERT=ur.ASSERT=ur.THROW=void 0;var PI={};function Zh(t){if(!PI.strictMode){PI.silent||console.error(t.message);return}throw t}ur.THROW=Zh;function _rr(t,...e){for(let[r,n]of e.entries())n||Zh(new Error(`${t} : Failed at [${r}]`))}ur.ASSERT=_rr;function Err(...t){for(let[e,[r,n]]of t.entries())r&&(n||Zh(new Error(`Conditional Assert : Failed at [${e}]`)))}ur.CONDITIONALASSERT=Err;function vrr(...t){for(let[e,r]of t.entries())r===void 0&&Zh(new Error(`Param Check : Failed at [${e}]`))}ur.PARAMCHECK=vrr;function Srr(...t){for(let[e,[r,n]]of t.entries())r&&n===void 0&&Zh(new Error(`Conditional Param Check : Failed at [${e}]`))}ur.CONDITIONALPARAMCHECK=Srr;function Irr(t){Zh(new Error(`Invalid Playlist : ${t}`))}ur.INVALIDPLAYLIST=Irr;function lLe(t,e=10){if(typeof t=="number")return t;let r=e===10?Number.parseFloat(t):Number.parseInt(t,e);return Number.isNaN(r)?0:r}ur.toNumber=lLe;function Crr(t){(t.startsWith("0x")||t.startsWith("0X"))&&(t=t.slice(2));let e=[];for(let r=0;r{"use strict";var Mrr=xr&&xr.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Wrr=xr&&xr.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),$rr=xr&&xr.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Mrr(e,t,r);return Wrr(e,t),e};Object.defineProperty(xr,"__esModule",{value:!0});xr.RenditionReport=xr.PrefetchSegment=xr.PartialSegment=xr.Segment=xr.MediaPlaylist=xr.MasterPlaylist=xr.Playlist=xr.SpliceInfo=xr.DateRange=xr.MediaInitializationSection=xr.Key=xr.SessionData=xr.Variant=xr.Rendition=void 0;var vs=$rr(DI()),Wz=class{constructor({type:e,uri:r,groupId:n,language:s,assocLanguage:i,name:a,isDefault:o,autoselect:c,forced:u,instreamId:l,characteristics:d,channels:f}){vs.PARAMCHECK(e,n,a),vs.CONDITIONALASSERT([e==="SUBTITLES",r],[e==="CLOSED-CAPTIONS",l],[e==="CLOSED-CAPTIONS",!r],[u,e==="SUBTITLES"]),this.type=e,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}};xr.Rendition=Wz;var $z=class{constructor({uri:e,isIFrameOnly:r=!1,bandwidth:n,averageBandwidth:s,score:i,codecs:a,resolution:o,frameRate:c,hdcpLevel:u,allowedCpc:l,videoRange:d,stableVariantId:f,programId:p,audio:m=[],video:h=[],subtitles:y=[],closedCaptions:g=[],currentRenditions:b={audio:0,video:0,subtitles:0,closedCaptions:0}}){vs.PARAMCHECK(e,n),this.uri=e,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=p,this.audio=m,this.video=h,this.subtitles=y,this.closedCaptions=g,this.currentRenditions=b}};xr.Variant=$z;var Uz=class{constructor({id:e,value:r,uri:n,language:s}){vs.PARAMCHECK(e,r||n),vs.ASSERT("SessionData cannot have both value and uri, shoud be either.",!(r&&n)),this.id=e,this.value=r,this.uri=n,this.language=s}};xr.SessionData=Uz;var Fz=class{constructor({method:e,uri:r,iv:n,format:s,formatVersion:i}){vs.PARAMCHECK(e),vs.CONDITIONALPARAMCHECK([e!=="NONE",r]),vs.CONDITIONALASSERT([e==="NONE",!(r||n||s||i)]),this.method=e,this.uri=r,this.iv=n,this.format=s,this.formatVersion=i}};xr.Key=Fz;var qz=class{constructor({hint:e=!1,uri:r,mimeType:n,byterange:s}){vs.PARAMCHECK(r),this.hint=e,this.uri=r,this.mimeType=n,this.byterange=s}};xr.MediaInitializationSection=qz;var jz=class{constructor({id:e,classId:r,start:n,end:s,duration:i,plannedDuration:a,endOnNext:o,attributes:c={}}){vs.PARAMCHECK(e),vs.CONDITIONALPARAMCHECK([o===!0,r]),vs.CONDITIONALASSERT([s,n],[s,n<=s],[i,i>=0],[a,a>=0]),this.id=e,this.classId=r,this.start=n,this.end=s,this.duration=i,this.plannedDuration=a,this.endOnNext=o,this.attributes=c}};xr.DateRange=jz;var Qz=class{constructor({type:e,duration:r,tagName:n,value:s}){vs.PARAMCHECK(e),vs.CONDITIONALPARAMCHECK([e==="OUT",r]),vs.CONDITIONALPARAMCHECK([e==="RAW",n]),this.type=e,this.duration=r,this.tagName=n,this.value=s}};xr.SpliceInfo=Qz;var bb=class{constructor(e){vs.PARAMCHECK(e),this.type=e}},BI=class extends bb{constructor({isMasterPlaylist:e,uri:r,version:n,independentSegments:s=!1,start:i,source:a}){super("playlist"),vs.PARAMCHECK(e),this.isMasterPlaylist=e,this.uri=r,this.version=n,this.independentSegments=s,this.start=i,this.source=a}};xr.Playlist=BI;var Hz=class extends BI{constructor(e={}){super({...e,isMasterPlaylist:!0});let{variants:r=[],currentVariant:n,sessionDataList:s=[],sessionKeyList:i=[]}=e;this.variants=r,this.currentVariant=n,this.sessionDataList=s,this.sessionKeyList=i}};xr.MasterPlaylist=Hz;var Gz=class extends BI{constructor(e={}){super({...e,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:p=0,hash:m}=e;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=p,this.hash=m}};xr.MediaPlaylist=Gz;var zz=class extends bb{constructor({uri:e,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:p,markers:m=[],parts:h=[]}){super("segment"),this.uri=e,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=p,this.markers=m,this.parts=h}};xr.Segment=zz;var Kz=class extends bb{constructor({hint:e=!1,uri:r,duration:n,independent:s,byterange:i,gap:a}){super("part"),vs.PARAMCHECK(r),this.hint=e,this.uri=r,this.duration=n,this.independent=s,this.duration=n,this.byterange=i,this.gap=a}};xr.PartialSegment=Kz;var Vz=class extends bb{constructor({uri:e,discontinuity:r,mediaSequenceNumber:n=0,discontinuitySequence:s=0,key:i}){super("prefetch"),vs.PARAMCHECK(e),this.uri=e,this.discontinuity=r,this.mediaSequenceNumber=n,this.discontinuitySequence=s,this.key=i}};xr.PrefetchSegment=Vz;var Yz=class{constructor({uri:e,lastMSN:r,lastPart:n}){vs.PARAMCHECK(e),this.uri=e,this.lastMSN=r,this.lastPart=n}};xr.RenditionReport=Yz});var ALe=_(hf=>{"use strict";var Urr=hf&&hf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Frr=hf&&hf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),qrr=hf&&hf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Urr(e,t,r);return Frr(e,t),e};Object.defineProperty(hf,"__esModule",{value:!0});var $e=qrr(DI()),ri=Jz();function gLe(t){return $e.trim(t,'"')}function jrr(t){switch(t){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 Qrr(t){let e=$e.splitAt(t,",");return{duration:$e.toNumber(e[0]),title:decodeURIComponent(escape(e[1]))}}function yLe(t){let e=$e.splitAt(t,"@");return{length:$e.toNumber(e[0]),offset:e[1]?$e.toNumber(e[1]):-1}}function Hrr(t){let e=$e.splitAt(t,"x");return{width:$e.toNumber(e[0]),height:$e.toNumber(e[1])}}function Grr(t){let e="ALLOWED-CPC: Each entry must consit of KEYFORMAT and Content Protection Configuration",r=t.split(",");r.length===0&&$e.INVALIDPLAYLIST(e);let n=[];for(let s of r){let[i,a]=$e.splitAt(s,":");if(!i||!a){$e.INVALIDPLAYLIST(e);continue}n.push({format:i,cpcList:a.split("/")})}return n}function zrr(t){let e=$e.hexToByteSequence(t);return e.length!==16&&$e.INVALIDPLAYLIST("IV must be a 128-bit unsigned integer"),e}function Krr(t){return t.startsWith('"')?gLe(t):t.startsWith("0x")||t.startsWith("0X")?$e.hexToByteSequence(t):$e.toNumber(t)}function Xz(t,e){e.IV&&t.compatibleVersion<2&&(t.compatibleVersion=2),(e.KEYFORMAT||e.KEYFORMATVERSIONS)&&t.compatibleVersion<5&&(t.compatibleVersion=5)}function dLe(t){let e={};for(let r of $e.splitByCommaWithPreservingQuotes(t)){let[n,s]=$e.splitAt(r,"="),i=gLe(s);switch(n){case"URI":e[n]=i;break;case"START-DATE":case"END-DATE":e[n]=new Date(i);break;case"IV":e[n]=zrr(i);break;case"BYTERANGE":e[n]=yLe(i);break;case"RESOLUTION":e[n]=Hrr(i);break;case"ALLOWED-CPC":e[n]=Grr(i);break;case"END-ON-NEXT":case"DEFAULT":case"AUTOSELECT":case"FORCED":case"PRECISE":case"CAN-BLOCK-RELOAD":case"INDEPENDENT":case"GAP":e[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":e[n]=$e.toNumber(i);break;default:n.startsWith("SCTE35-")?e[n]=$e.hexToByteSequence(i):n.startsWith("X-")?e[n]=Krr(s):(n==="VIDEO-RANGE"&&i!=="SDR"&&i!=="HLG"&&i!=="PQ"&&$e.INVALIDPLAYLIST(`VIDEO-RANGE: unknown value "${i}"`),e[n]=i)}}return e}function Vrr(t,e){switch(t){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[$e.toNumber(e),null];case"EXT-X-CUE-OUT":return Number.isNaN(Number(e))?[null,dLe(e)]:[$e.toNumber(e),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,dLe(e)];case"EXTINF":return[Qrr(e),null];case"EXT-X-BYTERANGE":return[yLe(e),null];case"EXT-X-PROGRAM-DATE-TIME":return[new Date(e),null];case"EXT-X-PLAYLIST-TYPE":return[e,null];default:return[e,null]}}function fLe(){$e.INVALIDPLAYLIST("The file contains both media and master playlist tags.")}function Yrr(t){let e=t.indexOf(":");return e===-1?[t.slice(1).trim(),null]:[t.slice(1,e).trim(),t.slice(e+1).trim()]}function Jrr({attributes:t}){return new ri.Rendition({type:t.TYPE,uri:t.URI,groupId:t["GROUP-ID"],language:t.LANGUAGE,assocLanguage:t["ASSOC-LANGUAGE"],name:t.NAME,isDefault:t.DEFAULT,autoselect:t.AUTOSELECT,forced:t.FORCED,instreamId:t["INSTREAM-ID"],characteristics:t.CHARACTERISTICS,channels:t.CHANNELS})}function Xrr(t,e){let r=!1;for(let n of t){if(n.name===e.name)return"All EXT-X-MEDIA tags in the same Group MUST have different NAME attributes.";n.isDefault&&(r=!0)}return r&&e.isDefault?"EXT-X-MEDIA A Group MUST NOT have more than one member with a DEFAULT attribute of YES.":""}function Zrr(t,e,r){let n=Jrr(e),s=t[$e.camelify(r)],i=Xrr(s,n);i&&$e.INVALIDPLAYLIST(i),s.push(n),n.isDefault&&(t.currentRenditions[$e.camelify(r)]=s.length-1)}function enr(t,e,r){for(let n of["AUDIO","VIDEO","SUBTITLES","CLOSED-CAPTIONS"])n==="CLOSED-CAPTIONS"&&t[n]==="NONE"?(r.isClosedCaptionsNone=!0,e.closedCaptions=[]):t[n]&&!e[$e.camelify(n)].some(s=>s.groupId===t[n])&&$e.INVALIDPLAYLIST(`${n} attribute MUST match the value of the GROUP-ID attribute of an EXT-X-MEDIA tag whose TYPE attribute is ${n}.`)}function pLe(t,e,r,n,s){let i=new ri.Variant({uri:r,bandwidth:e.BANDWIDTH,averageBandwidth:e["AVERAGE-BANDWIDTH"],score:e.SCORE,codecs:e.CODECS,resolution:e.RESOLUTION,frameRate:e["FRAME-RATE"],hdcpLevel:e["HDCP-LEVEL"],allowedCpc:e["ALLOWED-CPC"],videoRange:e["VIDEO-RANGE"],stableVariantId:e["STABLE-VARIANT-ID"],programId:e["PROGRAM-ID"]});for(let a of t)if(a.name==="EXT-X-MEDIA"){let o=a.attributes,c=o.TYPE;if((!c||!o["GROUP-ID"])&&$e.INVALIDPLAYLIST("EXT-X-MEDIA TYPE attribute is REQUIRED."),e[c]===o["GROUP-ID"]&&(Zrr(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 enr(e,i,s),i.isIFrameOnly=n,i}function tnr(t,e){if(t.method!==e.method||t.uri!==e.uri)return!1;if(t.iv){if(!e.iv||t.iv.length!==e.iv.length)return!1;for(let r=0;ru.id===c.id&&u.language===c.language)&&$e.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"&&$e.INVALIDPLAYLIST("EXT-X-SESSION-KEY: The value of the METHOD attribute MUST NOT be NONE");let c=new ri.Key({method:o.METHOD,uri:o.URI,iv:o.IV,format:o.KEYFORMAT,formatVersion:o.KEYFORMATVERSIONS});r.sessionKeyList.some(u=>tnr(u,c))&&$e.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."),Xz(e,o),r.sessionKeyList.push(c)}else i==="EXT-X-INDEPENDENT-SEGMENTS"?(r.independentSegments&&$e.INVALIDPLAYLIST("EXT-X-INDEPENDENT-SEGMENTS tag MUST NOT appear more than once in a Playlist"),r.independentSegments=!0):i==="EXT-X-START"&&(r.start&&$e.INVALIDPLAYLIST("EXT-X-START tag MUST NOT appear more than once in a Playlist"),typeof o["TIME-OFFSET"]!="number"&&$e.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"&&$e.INVALIDPLAYLIST("If any Variant Stream contains the SCORE attribute, then all Variant Streams in the Master Playlist SHOULD have a SCORE attribute");if(e.isClosedCaptionsNone)for(let s of r.variants)s.closedCaptions.length>0&&$e.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 mLe(t,e,r,n,s,i,a){let o=new ri.Segment({uri:e,mediaSequenceNumber:s,discontinuitySequence:i}),c=!1,u=!1;for(let l=r;l<=n;l++){let{name:d,value:f,attributes:p}=t[l];if(d==="EXTINF")!Number.isInteger(f.duration)&&a.compatibleVersion<3&&(a.compatibleVersion=3),Math.round(f.duration)>a.targetDuration&&$e.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&&$e.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&&$e.INVALIDPLAYLIST("EXT-X-KEY must appear before the first EXT-X-PART tag of the Parent Segment."),Xz(a,p),o.key=new ri.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&&$e.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 ri.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 m={};for(let h of Object.keys(p))(h.startsWith("SCTE35-")||h.startsWith("X-"))&&(m[h]=p[h]);o.dateRange=new ri.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:m})}else if(d==="EXT-X-CUE-OUT")o.markers.push(new ri.SpliceInfo({type:"OUT",duration:p&&p.DURATION||f}));else if(d==="EXT-X-CUE-IN")o.markers.push(new ri.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 ri.SpliceInfo({type:"RAW",tagName:d,value:f}));else if(d==="EXT-X-PRELOAD-HINT"&&!p.TYPE)$e.INVALIDPLAYLIST("EXT-X-PRELOAD-HINT: TYPE attribute is mandatory");else if(d==="EXT-X-PRELOAD-HINT"&&p.TYPE==="PART"&&u)$e.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)$e.INVALIDPLAYLIST("EXT-X-PART / EXT-X-PRELOAD-HINT: URI attribute is mandatory");else if(d==="EXT-X-PRELOAD-HINT"&&p.TYPE==="MAP")c&&$e.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 ri.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&&$e.INVALIDPLAYLIST("EXT-X-PART: DURATION attribute is mandatory"),d==="EXT-X-PRELOAD-HINT"&&(u=!0);let m=new ri.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(m)}}return o}function nnr(t,e,r,n,s,i,a){let o=new ri.PrefetchSegment({uri:e,mediaSequenceNumber:s,discontinuitySequence:i});for(let c=r;c<=n;c++){let{name:u,attributes:l}=t[c];u==="EXTINF"?$e.INVALIDPLAYLIST("A prefetch segment must not be advertised with an EXTINF tag."):u==="EXT-X-DISCONTINUITY"?$e.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"?(Xz(a,l),o.key=new ri.Key({method:l.METHOD,uri:l.URI,iv:l.IV,format:l.KEYFORMAT,formatVersion:l.KEYFORMATVERSIONS})):u==="EXT-X-MAP"&&$e.INVALIDPLAYLIST("Prefetch segments must not be advertised with an EXT-X-MAP tag.")}return o}function snr(t,e){let r=new ri.MediaPlaylist,n=-1,s=0,i=!1,a=!1,o=0,c=null,u=null,l=!1;for(let[d,f]of t.entries()){let{name:p,value:m,attributes:h,category:y}=f;if(y==="Segment"){n===-1&&(n=d),p==="EXT-X-DISCONTINUITY"&&(i=!0);continue}if(p==="EXT-X-VERSION")r.version===void 0?r.version=m:$e.INVALIDPLAYLIST("A Playlist file MUST NOT contain more than one EXT-X-VERSION tag.");else if(p==="EXT-X-TARGETDURATION")r.targetDuration=e.targetDuration=m;else if(p==="EXT-X-MEDIA-SEQUENCE")r.segments.length>0&&$e.INVALIDPLAYLIST("The EXT-X-MEDIA-SEQUENCE tag MUST appear before the first Media Segment in the Playlist."),r.mediaSequenceBase=s=m;else if(p==="EXT-X-DISCONTINUITY-SEQUENCE")r.segments.length>0&&$e.INVALIDPLAYLIST("The EXT-X-DISCONTINUITY-SEQUENCE tag MUST appear before the first Media Segment in the Playlist."),i&&$e.INVALIDPLAYLIST("The EXT-X-DISCONTINUITY-SEQUENCE tag MUST appear before any EXT-X-DISCONTINUITY tag."),r.discontinuitySequenceBase=o=m;else if(p==="EXT-X-ENDLIST")r.endlist=!0;else if(p==="EXT-X-PLAYLIST-TYPE")r.playlistType=m;else if(p==="EXT-X-I-FRAMES-ONLY")e.compatibleVersion<4&&(e.compatibleVersion=4),r.isIFrame=!0;else if(p==="EXT-X-INDEPENDENT-SEGMENTS")r.independentSegments&&$e.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&&$e.INVALIDPLAYLIST("EXT-X-START tag MUST NOT appear more than once in a Playlist"),typeof h["TIME-OFFSET"]!="number"&&$e.INVALIDPLAYLIST("EXT-X-START: TIME-OFFSET attribute is REQUIRED"),r.start={offset:h["TIME-OFFSET"],precise:h.PRECISE||!1};else if(p==="EXT-X-SERVER-CONTROL")h["CAN-BLOCK-RELOAD"]||$e.INVALIDPLAYLIST("EXT-X-SERVER-CONTROL: CAN-BLOCK-RELOAD=YES is mandatory for Low-Latency HLS"),r.lowLatencyCompatibility={canBlockReload:h["CAN-BLOCK-RELOAD"],canSkipUntil:h["CAN-SKIP-UNTIL"],holdBack:h["HOLD-BACK"],partHoldBack:h["PART-HOLD-BACK"]};else if(p==="EXT-X-PART-INF")h["PART-TARGET"]||$e.INVALIDPLAYLIST("EXT-X-PART-INF: PART-TARGET attribute is mandatory"),r.partTargetDuration=h["PART-TARGET"];else if(p==="EXT-X-RENDITION-REPORT")h.URI||$e.INVALIDPLAYLIST("EXT-X-RENDITION-REPORT: URI attribute is mandatory"),h.URI.search(/^[a-z]+:/)===0&&$e.INVALIDPLAYLIST("EXT-X-RENDITION-REPORT: URI must be relative to the playlist uri"),r.renditionReports.push(new ri.RenditionReport({uri:h.URI,lastMSN:h["LAST-MSN"],lastPart:h["LAST-PART"]}));else if(p==="EXT-X-SKIP")h["SKIPPED-SEGMENTS"]||$e.INVALIDPLAYLIST("EXT-X-SKIP: SKIPPED-SEGMENTS attribute is mandatory"),e.compatibleVersion<9&&(e.compatibleVersion=9),r.skip=h["SKIPPED-SEGMENTS"],s+=r.skip;else if(p==="EXT-X-PREFETCH"){let g=nnr(t,m,n===-1?d:n,d-1,s++,o,e);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&&$e.INVALIDPLAYLIST("A URI line is not preceded by any segment tags"),r.targetDuration||$e.INVALIDPLAYLIST("The EXT-X-TARGETDURATION tag is REQUIRED"),a&&$e.INVALIDPLAYLIST("These segments must appear after all complete segments.");let g=mLe(t,f,n,d-1,s++,o,e);g&&([o,c,u]=hLe(r,g,o,c,u),!l&&g.parts.length>0&&(l=!0)),n=-1}}if(n!==-1){let d=mLe(t,"",n,t.length-1,s++,o,e);if(d){let{parts:f}=d;f.length>0&&!r.endlist&&!f.at(-1)?.hint&&$e.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"),hLe(r,d,c,u),!l&&d.parts.length>0&&(l=!0)}}return inr(r.segments),r.lowLatencyCompatibility&&anr(r,l),r}function hLe(t,e,r,n,s){let{discontinuity:i,key:a,map:o,byterange:c,uri:u}=e;if(i&&(e.discontinuitySequence=r+1),a||(e.key=n),o||(e.map=s),c&&c.offset===-1){let{segments:l}=t;if(l.length>0){let d=l.at(-1);d.byterange&&d.uri===u?c.offset=d.byterange.offset+d.byterange.length:$e.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 $e.INVALIDPLAYLIST("If offset of EXT-X-BYTERANGE is not present, a previous Media Segment MUST appear in the Playlist file")}return t.segments.push(e),[e.discontinuitySequence,e.key,e.map]}function inr(t){let e=new Map,r=new Map,n=!1,s=!1;for(let i=t.length-1;i>=0;i--){let{programDateTime:a,dateRange:o}=t[i];if(a&&(s=!0),o&&o.start){n=!0,o.endOnNext&&(o.end||o.duration)&&$e.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()&&$e.INVALIDPLAYLIST("END-DATE MUST be equal to the value of the START-DATE attribute plus the value of the DURATION"),o.endOnNext&&(o.end=e.get(o.classId)),e.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&&$e.INVALIDPLAYLIST("PART-TARGET is the maximum duration of any Partial Segment"),d0&&(u.lastPart=l.parts.length-1)}}function onr(t,e){if(t==="Segment"||t==="MediaPlaylist"){if(e.isMasterPlaylist===void 0){e.isMasterPlaylist=!1;return}e.isMasterPlaylist&&fLe();return}if(t==="MasterPlaylist"){if(e.isMasterPlaylist===void 0){e.isMasterPlaylist=!0;return}e.isMasterPlaylist===!1&&fLe()}}function cnr(t,e){let[r,n]=Yrr(t),s=jrr(r);if(onr(s,e),s==="Unknown")return null;s==="MediaPlaylist"&&r!=="EXT-X-RENDITION-REPORT"&&r!=="EXT-X-PREFETCH"&&(e.hash[r]&&$e.INVALIDPLAYLIST("There MUST NOT be more than one Media Playlist tag of each type in any Media Playlist"),e.hash[r]=!0);let[i,a]=Vrr(r,n);return{name:r,category:s,value:i,attributes:a}}function unr(t,e){let r=[];for(let n of t.split(` +`)){let s=Buffer.from(n.trim()).toString();if(s){if(s.startsWith("#")){if(s.startsWith("#EXT")){let i=cnr(s,e);i&&r.push(i)}continue}r.push(s)}}return(r.length===0||r[0].name!=="EXTM3U")&&$e.INVALIDPLAYLIST("The EXTM3U tag MUST be the first line."),r}function lnr(t,e){let r;return e.isMasterPlaylist?r=rnr(t,e):(r=snr(t,e),!r.isIFrame&&e.hasMap&&e.compatibleVersion<6&&(e.compatibleVersion=6)),e.compatibleVersion>1&&(!r.version||r.version{"use strict";var fnr=gf&&gf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),pnr=gf&&gf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),mnr=gf&&gf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&fnr(e,t,r);return pnr(e,t),e};Object.defineProperty(gf,"__esModule",{value:!0});var bu=mnr(DI()),hnr=["#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"],gnr=["#EXT-X-MEDIA"],Zz=class extends Array{constructor(e){super(),this.baseUri=e}push(...e){for(let r of e){if(!r.startsWith("#")){super.push(r);continue}if(hnr.some(n=>r.startsWith(n))){super.push(r);continue}if(this.includes(r)){if(gnr.some(n=>r.startsWith(n)))continue;bu.INVALIDPLAYLIST(`Redundant item (${r})`)}super.push(r)}return this.length}};function eK(t,e){let r=1e3;e&&(r=10**e);let n=Math.round(t*r)/r;return e?n.toFixed(e):n}function ynr(t){let e=t.toString(10),r=e.indexOf(".");return r===-1?0:e.length-r-1}function Anr(t,e){for(let r of e.sessionDataList)t.push(xnr(r));for(let r of e.sessionKeyList)t.push(xLe(r,!0));for(let r of e.variants)bnr(t,r)}function xnr(t){let e=[`DATA-ID="${t.id}"`];return t.language&&e.push(`LANGUAGE="${t.language}"`),t.value?e.push(`VALUE="${t.value}"`):t.uri&&e.push(`URI="${t.uri}"`),`#EXT-X-SESSION-DATA:${e.join(",")}`}function xLe(t,e){let r=e?"#EXT-X-SESSION-KEY":"#EXT-X-KEY",n=[`METHOD=${t.method}`];return t.uri&&n.push(`URI="${t.uri}"`),t.iv&&(t.iv.length!==16&&bu.INVALIDPLAYLIST("IV must be a 128-bit unsigned integer"),n.push(`IV=${bu.byteSequenceToHex(t.iv)}`)),t.format&&n.push(`KEYFORMAT="${t.format}"`),t.formatVersion&&n.push(`KEYFORMATVERSIONS="${t.formatVersion}"`),`${r}:${n.join(",")}`}function bnr(t,e){let r=e.isIFrameOnly?"#EXT-X-I-FRAME-STREAM-INF":"#EXT-X-STREAM-INF",n=[`BANDWIDTH=${e.bandwidth}`];if(e.averageBandwidth&&n.push(`AVERAGE-BANDWIDTH=${e.averageBandwidth}`),e.isIFrameOnly&&n.push(`URI="${e.uri}"`),e.codecs&&n.push(`CODECS="${e.codecs}"`),e.resolution&&n.push(`RESOLUTION=${e.resolution.width}x${e.resolution.height}`),e.frameRate&&n.push(`FRAME-RATE=${eK(e.frameRate,3)}`),e.hdcpLevel&&n.push(`HDCP-LEVEL=${e.hdcpLevel}`),e.audio.length>0){n.push(`AUDIO="${e.audio[0].groupId}"`);for(let s of e.audio)t.push(M4(s))}if(e.video.length>0){n.push(`VIDEO="${e.video[0].groupId}"`);for(let s of e.video)t.push(M4(s))}if(e.subtitles.length>0){n.push(`SUBTITLES="${e.subtitles[0].groupId}"`);for(let s of e.subtitles)t.push(M4(s))}if(bu.getOptions().allowClosedCaptionsNone&&e.closedCaptions.length===0)n.push("CLOSED-CAPTIONS=NONE");else if(e.closedCaptions.length>0){n.push(`CLOSED-CAPTIONS="${e.closedCaptions[0].groupId}"`);for(let s of e.closedCaptions)t.push(M4(s))}if(e.score&&n.push(`SCORE=${e.score}`),e.allowedCpc){let s=[];for(let{format:i,cpcList:a}of e.allowedCpc)s.push(`${i}:${a.join("/")}`);n.push(`ALLOWED-CPC="${s.join(",")}"`)}e.videoRange&&n.push(`VIDEO-RANGE=${e.videoRange}`),e.stableVariantId&&n.push(`STABLE-VARIANT-ID="${e.stableVariantId}"`),e.programId&&n.push(`PROGRAM-ID=${e.programId}`),t.push(`${r}:${n.join(",")}`),e.isIFrameOnly||t.push(`${e.uri}`)}function M4(t){let e=[`TYPE=${t.type}`,`GROUP-ID="${t.groupId}"`,`NAME="${t.name}"`];return t.isDefault!==void 0&&e.push(`DEFAULT=${t.isDefault?"YES":"NO"}`),t.autoselect!==void 0&&e.push(`AUTOSELECT=${t.autoselect?"YES":"NO"}`),t.forced!==void 0&&e.push(`FORCED=${t.forced?"YES":"NO"}`),t.language&&e.push(`LANGUAGE="${t.language}"`),t.assocLanguage&&e.push(`ASSOC-LANGUAGE="${t.assocLanguage}"`),t.instreamId&&e.push(`INSTREAM-ID="${t.instreamId}"`),t.characteristics&&e.push(`CHARACTERISTICS="${t.characteristics}"`),t.channels&&e.push(`CHANNELS="${t.channels}"`),t.uri&&e.push(`URI="${t.uri}"`),`#EXT-X-MEDIA:${e.join(",")}`}function _nr(t,e){let r="",n="",s=!1;if(e.targetDuration&&t.push(`#EXT-X-TARGETDURATION:${e.targetDuration}`),e.lowLatencyCompatibility){let{canBlockReload:i,canSkipUntil:a,holdBack:o,partHoldBack:c}=e.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}`),t.push(`#EXT-X-SERVER-CONTROL:${u.join(",")}`)}e.partTargetDuration&&t.push(`#EXT-X-PART-INF:PART-TARGET=${e.partTargetDuration}`),e.mediaSequenceBase&&t.push(`#EXT-X-MEDIA-SEQUENCE:${e.mediaSequenceBase}`),e.discontinuitySequenceBase&&t.push(`#EXT-X-DISCONTINUITY-SEQUENCE:${e.discontinuitySequenceBase}`),e.playlistType&&t.push(`#EXT-X-PLAYLIST-TYPE:${e.playlistType}`),e.isIFrame&&t.push("#EXT-X-I-FRAMES-ONLY"),e.skip>0&&t.push(`#EXT-X-SKIP:SKIPPED-SEGMENTS=${e.skip}`);for(let i of e.segments){let a="";[r,n,a]=Enr(t,i,r,n,e.version),a==="OUT"?s=!0:a==="IN"&&s&&(s=!1)}e.playlistType==="VOD"&&s&&t.push("#EXT-X-CUE-IN"),e.prefetchSegments.length>2&&bu.INVALIDPLAYLIST("The server must deliver no more than two prefetch segments");for(let i of e.prefetchSegments)i.discontinuity&&t.push("#EXT-X-PREFETCH-DISCONTINUITY"),t.push(`#EXT-X-PREFETCH:${i.uri}`);e.endlist&&t.push("#EXT-X-ENDLIST");for(let i of e.renditionReports){let a=[];a.push(`URI="${i.uri}"`,`LAST-MSN=${i.lastMSN}`),i.lastPart!==void 0&&a.push(`LAST-PART=${i.lastPart}`),t.push(`#EXT-X-RENDITION-REPORT:${a.join(",")}`)}}function Enr(t,e,r,n,s=1){let i=!1,a="";if(e.discontinuity&&t.push("#EXT-X-DISCONTINUITY"),e.key){let c=xLe(e.key);c!==r&&(t.push(c),r=c)}if(e.map){let c=vnr(e.map);c!==n&&(t.push(c),n=c)}if(e.programDateTime&&t.push(`#EXT-X-PROGRAM-DATE-TIME:${bu.formatDate(e.programDateTime)}`),e.dateRange&&t.push(Snr(e.dateRange)),e.markers.length>0&&(a=Inr(t,e.markers)),e.parts.length>0&&(i=Cnr(t,e.parts)),i)return[r,n];let o=s<3?Math.round(e.duration):eK(e.duration,ynr(e.duration));return t.push(`#EXTINF:${o},${unescape(encodeURIComponent(e.title||""))}`),e.byterange&&t.push(`#EXT-X-BYTERANGE:${tK(e.byterange)}`),Array.prototype.push.call(t,`${e.uri}`),[r,n,a]}function vnr(t){let e=[`URI="${t.uri}"`];return t.byterange&&e.push(`BYTERANGE="${tK(t.byterange)}"`),`#EXT-X-MAP:${e.join(",")}`}function tK({offset:t,length:e}){return`${e}@${t}`}function Snr(t){let e=[`ID="${t.id}"`];t.start&&e.push(`START-DATE="${bu.formatDate(t.start)}"`),t.end&&e.push(`END-DATE="${bu.formatDate(t.end)}"`),t.duration&&e.push(`DURATION=${t.duration}`),t.plannedDuration&&e.push(`PLANNED-DURATION=${t.plannedDuration}`),t.classId&&e.push(`CLASS="${t.classId}"`),t.endOnNext&&e.push("END-ON-NEXT=YES");for(let r of Object.keys(t.attributes))r.startsWith("X-")?typeof t.attributes[r]=="number"?e.push(`${r}=${t.attributes[r]}`):e.push(`${r}="${t.attributes[r]}"`):r.startsWith("SCTE35-")&&e.push(`${r}=${bu.byteSequenceToHex(t.attributes[r])}`);return`#EXT-X-DATERANGE:${e.join(",")}`}function Inr(t,e){let r="";for(let n of e)if(n.type==="OUT")r="OUT",t.push(`#EXT-X-CUE-OUT:DURATION=${n.duration}`);else if(n.type==="IN")r="IN",t.push("#EXT-X-CUE-IN");else if(n.type==="RAW"){let s=n.value?`:${n.value}`:"";t.push(`#${n.tagName}${s}`)}return r}function Cnr(t,e){let r=!1;for(let n of e)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}`)}t.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=${tK(n.byterange)}`),n.independent&&s.push("INDEPENDENT=YES"),n.gap&&s.push("GAP=YES"),t.push(`#EXT-X-PART:${s.join(",")}`)}return r}function Tnr(t){bu.PARAMCHECK(t),bu.ASSERT("Not a playlist",t.type==="playlist");let e=new Zz(t.uri);return e.push("#EXTM3U"),t.version&&e.push(`#EXT-X-VERSION:${t.version}`),t.independentSegments&&e.push("#EXT-X-INDEPENDENT-SEGMENTS"),t.start&&e.push(`#EXT-X-START:TIME-OFFSET=${eK(t.start.offset)}${t.start.precise?",PRECISE=YES":""}`),t.isMasterPlaylist?Anr(e,t):_nr(e,t),e.join(` +`)}gf.default=Tnr});var vLe=_(Ss=>{"use strict";var wnr=Ss&&Ss.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Rnr=Ss&&Ss.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Nnr=Ss&&Ss.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&wnr(e,t,r);return Rnr(e,t),e},_Le=Ss&&Ss.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Ss,"__esModule",{value:!0});Ss.setOptions=Ss.getOptions=Ss.types=Ss.stringify=Ss.parse=void 0;var ELe=DI();Object.defineProperty(Ss,"getOptions",{enumerable:!0,get:function(){return ELe.getOptions}});Object.defineProperty(Ss,"setOptions",{enumerable:!0,get:function(){return ELe.setOptions}});var Onr=_Le(ALe());Ss.parse=Onr.default;var knr=_Le(bLe());Ss.stringify=knr.default;var Pnr=Nnr(Jz());Ss.types=Pnr});var hK=_((ZYr,d5e)=>{d5e.exports=function(){return typeof Promise=="function"&&Promise.prototype&&Promise.prototype.then}});var M0=_(sg=>{var gK,fsr=[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];sg.getSymbolSize=function(e){if(!e)throw new Error('"version" cannot be null or undefined');if(e<1||e>40)throw new Error('"version" should be in range from 1 to 40');return e*4+17};sg.getSymbolTotalCodewords=function(e){return fsr[e]};sg.getBCHDigit=function(t){let e=0;for(;t!==0;)e++,t>>>=1;return e};sg.setToSJISFunction=function(e){if(typeof e!="function")throw new Error('"toSJISFunc" is not a valid function.');gK=e};sg.isKanjiModeEnabled=function(){return typeof gK<"u"};sg.toSJIS=function(e){return gK(e)}});var Y4=_(Nc=>{Nc.L={bit:1};Nc.M={bit:0};Nc.Q={bit:3};Nc.H={bit:2};function psr(t){if(typeof t!="string")throw new Error("Param is not a string");switch(t.toLowerCase()){case"l":case"low":return Nc.L;case"m":case"medium":return Nc.M;case"q":case"quartile":return Nc.Q;case"h":case"high":return Nc.H;default:throw new Error("Unknown EC Level: "+t)}}Nc.isValid=function(e){return e&&typeof e.bit<"u"&&e.bit>=0&&e.bit<4};Nc.from=function(e,r){if(Nc.isValid(e))return e;try{return psr(e)}catch{return r}}});var m5e=_((rJr,p5e)=>{function f5e(){this.buffer=[],this.length=0}f5e.prototype={get:function(t){let e=Math.floor(t/8);return(this.buffer[e]>>>7-t%8&1)===1},put:function(t,e){for(let r=0;r>>e-r-1&1)===1)},getLengthInBits:function(){return this.length},putBit:function(t){let e=Math.floor(this.length/8);this.buffer.length<=e&&this.buffer.push(0),t&&(this.buffer[e]|=128>>>this.length%8),this.length++}};p5e.exports=f5e});var g5e=_((nJr,h5e)=>{function UI(t){if(!t||t<1)throw new Error("BitMatrix size must be defined and greater than 0");this.size=t,this.data=new Uint8Array(t*t),this.reservedBit=new Uint8Array(t*t)}UI.prototype.set=function(t,e,r,n){let s=t*this.size+e;this.data[s]=r,n&&(this.reservedBit[s]=!0)};UI.prototype.get=function(t,e){return this.data[t*this.size+e]};UI.prototype.xor=function(t,e,r){this.data[t*this.size+e]^=r};UI.prototype.isReserved=function(t,e){return this.reservedBit[t*this.size+e]};h5e.exports=UI});var y5e=_(J4=>{var msr=M0().getSymbolSize;J4.getRowColCoords=function(e){if(e===1)return[];let r=Math.floor(e/7)+2,n=msr(e),s=n===145?26:Math.ceil((n-13)/(2*r-2))*2,i=[n-7];for(let a=1;a{var hsr=M0().getSymbolSize,A5e=7;x5e.getPositions=function(e){let r=hsr(e);return[[0,0],[r-A5e,0],[0,r-A5e]]}});var _5e=_(vn=>{vn.Patterns={PATTERN000:0,PATTERN001:1,PATTERN010:2,PATTERN011:3,PATTERN100:4,PATTERN101:5,PATTERN110:6,PATTERN111:7};var ig={N1:3,N2:3,N3:40,N4:10};vn.isValid=function(e){return e!=null&&e!==""&&!isNaN(e)&&e>=0&&e<=7};vn.from=function(e){return vn.isValid(e)?parseInt(e,10):void 0};vn.getPenaltyN1=function(e){let r=e.size,n=0,s=0,i=0,a=null,o=null;for(let c=0;c=5&&(n+=ig.N1+(s-5)),a=l,s=1),l=e.get(u,c),l===o?i++:(i>=5&&(n+=ig.N1+(i-5)),o=l,i=1)}s>=5&&(n+=ig.N1+(s-5)),i>=5&&(n+=ig.N1+(i-5))}return n};vn.getPenaltyN2=function(e){let r=e.size,n=0;for(let s=0;s=10&&(s===1488||s===93)&&n++,i=i<<1&2047|e.get(o,a),o>=10&&(i===1488||i===93)&&n++}return n*ig.N3};vn.getPenaltyN4=function(e){let r=0,n=e.data.length;for(let i=0;i{var W0=Y4(),X4=[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],Z4=[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];yK.getBlocksCount=function(e,r){switch(r){case W0.L:return X4[(e-1)*4+0];case W0.M:return X4[(e-1)*4+1];case W0.Q:return X4[(e-1)*4+2];case W0.H:return X4[(e-1)*4+3];default:return}};yK.getTotalCodewordsCount=function(e,r){switch(r){case W0.L:return Z4[(e-1)*4+0];case W0.M:return Z4[(e-1)*4+1];case W0.Q:return Z4[(e-1)*4+2];case W0.H:return Z4[(e-1)*4+3];default:return}}});var E5e=_(tB=>{var FI=new Uint8Array(512),eB=new Uint8Array(256);(function(){let e=1;for(let r=0;r<255;r++)FI[r]=e,eB[e]=r,e<<=1,e&256&&(e^=285);for(let r=255;r<512;r++)FI[r]=FI[r-255]})();tB.log=function(e){if(e<1)throw new Error("log("+e+")");return eB[e]};tB.exp=function(e){return FI[e]};tB.mul=function(e,r){return e===0||r===0?0:FI[eB[e]+eB[r]]}});var v5e=_(qI=>{var xK=E5e();qI.mul=function(e,r){let n=new Uint8Array(e.length+r.length-1);for(let s=0;s=0;){let s=n[0];for(let a=0;a{var S5e=v5e();function bK(t){this.genPoly=void 0,this.degree=t,this.degree&&this.initialize(this.degree)}bK.prototype.initialize=function(e){this.degree=e,this.genPoly=S5e.generateECPolynomial(this.degree)};bK.prototype.encode=function(e){if(!this.genPoly)throw new Error("Encoder not initialized");let r=new Uint8Array(e.length+this.degree);r.set(e);let n=S5e.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};I5e.exports=bK});var _K=_(T5e=>{T5e.isValid=function(e){return!isNaN(e)&&e>=1&&e<=40}});var EK=_(yf=>{var w5e="[0-9]+",ysr="[A-Z $%*+\\-./:]+",jI="(?:[u3000-u303F]|[u3040-u309F]|[u30A0-u30FF]|[uFF00-uFFEF]|[u4E00-u9FAF]|[u2605-u2606]|[u2190-u2195]|u203B|[u2010u2015u2018u2019u2025u2026u201Cu201Du2225u2260]|[u0391-u0451]|[u00A7u00A8u00B1u00B4u00D7u00F7])+";jI=jI.replace(/u/g,"\\u");var Asr="(?:(?![A-Z0-9 $%*+\\-./:]|"+jI+`)(?:.|[\r +]))+`;yf.KANJI=new RegExp(jI,"g");yf.BYTE_KANJI=new RegExp("[^A-Z0-9 $%*+\\-./:]+","g");yf.BYTE=new RegExp(Asr,"g");yf.NUMERIC=new RegExp(w5e,"g");yf.ALPHANUMERIC=new RegExp(ysr,"g");var xsr=new RegExp("^"+jI+"$"),bsr=new RegExp("^"+w5e+"$"),_sr=new RegExp("^[A-Z0-9 $%*+\\-./:]+$");yf.testKanji=function(e){return xsr.test(e)};yf.testNumeric=function(e){return bsr.test(e)};yf.testAlphanumeric=function(e){return _sr.test(e)}});var $0=_(Ts=>{var Esr=_K(),vK=EK();Ts.NUMERIC={id:"Numeric",bit:1,ccBits:[10,12,14]};Ts.ALPHANUMERIC={id:"Alphanumeric",bit:2,ccBits:[9,11,13]};Ts.BYTE={id:"Byte",bit:4,ccBits:[8,16,16]};Ts.KANJI={id:"Kanji",bit:8,ccBits:[8,10,12]};Ts.MIXED={bit:-1};Ts.getCharCountIndicator=function(e,r){if(!e.ccBits)throw new Error("Invalid mode: "+e);if(!Esr.isValid(r))throw new Error("Invalid version: "+r);return r>=1&&r<10?e.ccBits[0]:r<27?e.ccBits[1]:e.ccBits[2]};Ts.getBestModeForData=function(e){return vK.testNumeric(e)?Ts.NUMERIC:vK.testAlphanumeric(e)?Ts.ALPHANUMERIC:vK.testKanji(e)?Ts.KANJI:Ts.BYTE};Ts.toString=function(e){if(e&&e.id)return e.id;throw new Error("Invalid mode")};Ts.isValid=function(e){return e&&e.bit&&e.ccBits};function vsr(t){if(typeof t!="string")throw new Error("Param is not a string");switch(t.toLowerCase()){case"numeric":return Ts.NUMERIC;case"alphanumeric":return Ts.ALPHANUMERIC;case"kanji":return Ts.KANJI;case"byte":return Ts.BYTE;default:throw new Error("Unknown mode: "+t)}}Ts.from=function(e,r){if(Ts.isValid(e))return e;try{return vsr(e)}catch{return r}}});var P5e=_(ag=>{var rB=M0(),Ssr=AK(),R5e=Y4(),U0=$0(),SK=_K(),O5e=7973,N5e=rB.getBCHDigit(O5e);function Isr(t,e,r){for(let n=1;n<=40;n++)if(e<=ag.getCapacity(n,r,t))return n}function k5e(t,e){return U0.getCharCountIndicator(t,e)+4}function Csr(t,e){let r=0;return t.forEach(function(n){let s=k5e(n.mode,e);r+=s+n.getBitsLength()}),r}function Tsr(t,e){for(let r=1;r<=40;r++)if(Csr(t,r)<=ag.getCapacity(r,e,U0.MIXED))return r}ag.from=function(e,r){return SK.isValid(e)?parseInt(e,10):r};ag.getCapacity=function(e,r,n){if(!SK.isValid(e))throw new Error("Invalid QR Code version");typeof n>"u"&&(n=U0.BYTE);let s=rB.getSymbolTotalCodewords(e),i=Ssr.getTotalCodewordsCount(e,r),a=(s-i)*8;if(n===U0.MIXED)return a;let o=a-k5e(n,e);switch(n){case U0.NUMERIC:return Math.floor(o/10*3);case U0.ALPHANUMERIC:return Math.floor(o/11*2);case U0.KANJI:return Math.floor(o/13);case U0.BYTE:default:return Math.floor(o/8)}};ag.getBestVersionForData=function(e,r){let n,s=R5e.from(r,R5e.M);if(Array.isArray(e)){if(e.length>1)return Tsr(e,s);if(e.length===0)return 1;n=e[0]}else n=e;return Isr(n.mode,n.getLength(),s)};ag.getEncodedBits=function(e){if(!SK.isValid(e)||e<7)throw new Error("Invalid QR Code version");let r=e<<12;for(;rB.getBCHDigit(r)-N5e>=0;)r^=O5e<{var IK=M0(),B5e=1335,wsr=21522,D5e=IK.getBCHDigit(B5e);L5e.getEncodedBits=function(e,r){let n=e.bit<<3|r,s=n<<10;for(;IK.getBCHDigit(s)-D5e>=0;)s^=B5e<{var Rsr=$0();function Sb(t){this.mode=Rsr.NUMERIC,this.data=t.toString()}Sb.getBitsLength=function(e){return 10*Math.floor(e/3)+(e%3?e%3*3+1:0)};Sb.prototype.getLength=function(){return this.data.length};Sb.prototype.getBitsLength=function(){return Sb.getBitsLength(this.data.length)};Sb.prototype.write=function(e){let r,n,s;for(r=0;r+3<=this.data.length;r+=3)n=this.data.substr(r,3),s=parseInt(n,10),e.put(s,10);let i=this.data.length-r;i>0&&(n=this.data.substr(r),s=parseInt(n,10),e.put(s,i*3+1))};W5e.exports=Sb});var F5e=_((yJr,U5e)=>{var Nsr=$0(),CK=["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 Ib(t){this.mode=Nsr.ALPHANUMERIC,this.data=t}Ib.getBitsLength=function(e){return 11*Math.floor(e/2)+6*(e%2)};Ib.prototype.getLength=function(){return this.data.length};Ib.prototype.getBitsLength=function(){return Ib.getBitsLength(this.data.length)};Ib.prototype.write=function(e){let r;for(r=0;r+2<=this.data.length;r+=2){let n=CK.indexOf(this.data[r])*45;n+=CK.indexOf(this.data[r+1]),e.put(n,11)}this.data.length%2&&e.put(CK.indexOf(this.data[r]),6)};U5e.exports=Ib});var j5e=_((AJr,q5e)=>{var Osr=$0();function Cb(t){this.mode=Osr.BYTE,typeof t=="string"?this.data=new TextEncoder().encode(t):this.data=new Uint8Array(t)}Cb.getBitsLength=function(e){return e*8};Cb.prototype.getLength=function(){return this.data.length};Cb.prototype.getBitsLength=function(){return Cb.getBitsLength(this.data.length)};Cb.prototype.write=function(t){for(let e=0,r=this.data.length;e{var ksr=$0(),Psr=M0();function Tb(t){this.mode=ksr.KANJI,this.data=t}Tb.getBitsLength=function(e){return e*13};Tb.prototype.getLength=function(){return this.data.length};Tb.prototype.getBitsLength=function(){return Tb.getBitsLength(this.data.length)};Tb.prototype.write=function(t){let e;for(e=0;e=33088&&r<=40956)r-=33088;else if(r>=57408&&r<=60351)r-=49472;else throw new Error("Invalid SJIS character: "+this.data[e]+` +Make sure your charset is UTF-8`);r=(r>>>8&255)*192+(r&255),t.put(r,13)}};Q5e.exports=Tb});var G5e=_((bJr,TK)=>{"use strict";var QI={single_source_shortest_paths:function(t,e,r){var n={},s={};s[e]=0;var i=QI.PriorityQueue.make();i.push(e,0);for(var a,o,c,u,l,d,f,p,m;!i.empty();){a=i.pop(),o=a.value,u=a.cost,l=t[o]||{};for(c in l)l.hasOwnProperty(c)&&(d=l[c],f=u+d,p=s[c],m=typeof s[c]>"u",(m||p>f)&&(s[c]=f,i.push(c,f),n[c]=o))}if(typeof r<"u"&&typeof s[r]>"u"){var h=["Could not find a path from ",e," to ",r,"."].join("");throw new Error(h)}return n},extract_shortest_path_from_predecessor_list:function(t,e){for(var r=[],n=e,s;n;)r.push(n),s=t[n],n=t[n];return r.reverse(),r},find_path:function(t,e,r){var n=QI.single_source_shortest_paths(t,e,r);return QI.extract_shortest_path_from_predecessor_list(n,r)},PriorityQueue:{make:function(t){var e=QI.PriorityQueue,r={},n;t=t||{};for(n in e)e.hasOwnProperty(n)&&(r[n]=e[n]);return r.queue=[],r.sorter=t.sorter||e.default_sorter,r},default_sorter:function(t,e){return t.cost-e.cost},push:function(t,e){var r={value:t,cost:e};this.queue.push(r),this.queue.sort(this.sorter)},pop:function(){return this.queue.shift()},empty:function(){return this.queue.length===0}}};typeof TK<"u"&&(TK.exports=QI)});var e6e=_(wb=>{var zr=$0(),V5e=$5e(),Y5e=F5e(),J5e=j5e(),X5e=H5e(),HI=EK(),nB=M0(),Dsr=G5e();function z5e(t){return unescape(encodeURIComponent(t)).length}function GI(t,e,r){let n=[],s;for(;(s=t.exec(r))!==null;)n.push({data:s[0],index:s.index,mode:e,length:s[0].length});return n}function Z5e(t){let e=GI(HI.NUMERIC,zr.NUMERIC,t),r=GI(HI.ALPHANUMERIC,zr.ALPHANUMERIC,t),n,s;return nB.isKanjiModeEnabled()?(n=GI(HI.BYTE,zr.BYTE,t),s=GI(HI.KANJI,zr.KANJI,t)):(n=GI(HI.BYTE_KANJI,zr.BYTE,t),s=[]),e.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 wK(t,e){switch(e){case zr.NUMERIC:return V5e.getBitsLength(t);case zr.ALPHANUMERIC:return Y5e.getBitsLength(t);case zr.KANJI:return X5e.getBitsLength(t);case zr.BYTE:return J5e.getBitsLength(t)}}function Bsr(t){return t.reduce(function(e,r){let n=e.length-1>=0?e[e.length-1]:null;return n&&n.mode===r.mode?(e[e.length-1].data+=r.data,e):(e.push(r),e)},[])}function Lsr(t){let e=[];for(let r=0;r{var iB=M0(),RK=Y4(),Wsr=m5e(),$sr=g5e(),Usr=y5e(),Fsr=b5e(),kK=_5e(),PK=AK(),qsr=C5e(),sB=P5e(),jsr=M5e(),Qsr=$0(),NK=e6e();function Hsr(t,e){let r=t.size,n=Fsr.getPositions(e);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?t.set(i+o,a+c,!0,!0):t.set(i+o,a+c,!1,!0))}}function Gsr(t){let e=t.size;for(let r=8;r>o&1)===1,t.set(s,i,a,!0),t.set(i,s,a,!0)}function OK(t,e,r){let n=t.size,s=jsr.getEncodedBits(e,r),i,a;for(i=0;i<15;i++)a=(s>>i&1)===1,i<6?t.set(i,8,a,!0):i<8?t.set(i+1,8,a,!0):t.set(n-15+i,8,a,!0),i<8?t.set(8,n-i-1,a,!0):i<9?t.set(8,15-i-1+1,a,!0):t.set(8,15-i-1,a,!0);t.set(n-8,8,1,!0)}function Vsr(t,e){let r=t.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(!t.isReserved(s,o-c)){let u=!1;a>>i&1)===1),t.set(s,o-c,u),i--,i===-1&&(a++,i=7)}if(s+=n,s<0||r<=s){s-=n,n=-n;break}}}function Ysr(t,e,r){let n=new Wsr;r.forEach(function(c){n.put(c.mode.bit,4),n.put(c.getLength(),Qsr.getCharCountIndicator(c.mode,t)),c.write(n)});let s=iB.getSymbolTotalCodewords(t),i=PK.getTotalCodewordsCount(t,e),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&&$Zt(c,e),FZt(c,a),isNaN(n)&&(n=NG.getBestMask(c,RG.bind(null,c,r))),NG.applyMask(n,c),RG(c,r,n),{modules:c,version:e,errorCorrectionLevel:r,maskPattern:n,segments:s}}lBe.create=function(e,r){if(typeof e>"u"||e==="")throw new Error("No input text");let n=TG.M,s,i;return typeof r<"u"&&(n=TG.from(r.errorCorrectionLevel,TG.M),s=Dk.from(r.version),i=NG.from(r.maskPattern),r.toSJISFunc&&kk.setToSJISFunction(r.toSJISFunc)),jZt(e,s,n,i)}});var DG=E((p9r,fBe)=>{"use strict";var HZt=require("util"),dBe=require("stream"),du=fBe.exports=function(){dBe.call(this),this._buffers=[],this._buffered=0,this._reads=[],this._paused=!1,this._encoding="utf8",this.writable=!0};HZt.inherits(du,dBe);du.prototype.read=function(t,e){this._reads.push({length:Math.abs(t),allowLess:t<0,func:e}),process.nextTick(function(){this._process(),this._paused&&this._reads&&this._reads.length>0&&(this._paused=!1,this.emit("drain"))}.bind(this))};du.prototype.write=function(t,e){if(!this.writable)return this.emit("error",new Error("Stream not writable")),!1;let r;return Buffer.isBuffer(t)?r=t:r=Buffer.from(t,e||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};du.prototype.end=function(t,e){t&&this.write(t,e),this.writable=!1,this._buffers&&(this._buffers.length===0?this._end():(this._buffers.push(null),this._process()))};du.prototype.destroySoon=du.prototype.end;du.prototype._end=function(){this._reads.length>0&&this.emit("error",new Error("Unexpected end of input")),this.destroy()};du.prototype.destroy=function(){this._buffers&&(this.writable=!1,this._reads=null,this._buffers=null,this.emit("close"))};du.prototype._processReadAllowingLess=function(t){this._reads.shift();let e=this._buffers[0];e.length>t.length?(this._buffered-=t.length,this._buffers[0]=e.slice(t.length),t.func.call(this,e.slice(0,t.length))):(this._buffered-=e.length,this._buffers.shift(),t.func.call(this,e))};du.prototype._processRead=function(t){this._reads.shift();let e=0,r=0,n=Buffer.alloc(t.length);for(;e0&&this._buffers.splice(0,r),this._buffered-=t.length,t.func.call(this,n)};du.prototype._process=function(){try{for(;this._buffered>0&&this._reads&&this._reads.length>0;){let t=this._reads[0];if(t.allowLess)this._processReadAllowingLess(t);else if(this._buffered>=t.length)this._processRead(t);else break}this._buffers&&!this.writable&&this._end()}catch(t){this.emit("error",t)}}});var LG=E(kG=>{"use strict";var E0=[{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]}];kG.getImagePasses=function(t,e){let r=[],n=t%8,s=e%8,i=(t-n)/8,a=(e-s)/8;for(let o=0;o0&&l>0&&r.push({width:u,height:l,index:o})}return r};kG.getInterlaceIterator=function(t){return function(e,r,n){let s=e%E0[n].x.length,i=(e-s)/E0[n].x.length*8+E0[n].x[s],a=r%E0[n].y.length,o=(r-a)/E0[n].y.length*8+E0[n].y[a];return i*4+o*t*4}}});var BG=E((h9r,pBe)=>{"use strict";pBe.exports=function(e,r,n){let s=e+r-n,i=Math.abs(s-e),a=Math.abs(s-r),o=Math.abs(s-n);return i<=a&&i<=o?e:a<=o?r:n}});var MG=E((g9r,hBe)=>{"use strict";var QZt=LG(),GZt=BG();function mBe(t,e,r){let n=t*e;return r!==8&&(n=Math.ceil(n/(8/r))),n}var zx=hBe.exports=function(t,e){let r=t.width,n=t.height,s=t.interlace,i=t.bpp,a=t.depth;if(this.read=e.read,this.write=e.write,this.complete=e.complete,this._imageIndex=0,this._images=[],s){let o=QZt.getImagePasses(r,n);for(let c=0;cs?e[i-n]:0;e[i]=a+o}};zx.prototype._unFilterType2=function(t,e,r){let n=this._lastLine;for(let s=0;ss?e[a-n]:0,l=Math.floor((u+c)/2);e[a]=o+l}};zx.prototype._unFilterType4=function(t,e,r){let n=this._xComparison,s=n-1,i=this._lastLine;for(let a=0;as?e[a-n]:0,l=a>s&&i?i[a-n]:0,d=GZt(u,c,l);e[a]=o+d}};zx.prototype._reverseFilterLine=function(t){let e=t[0],r,n=this._images[this._imageIndex],s=n.byteWidth;if(e===0)r=t.slice(1,s+1);else switch(r=Buffer.alloc(s),e){case 1:this._unFilterType1(t,r,s);break;case 2:this._unFilterType2(t,r,s);break;case 3:this._unFilterType3(t,r,s);break;case 4:this._unFilterType4(t,r,s);break;default:throw new Error("Unrecognised filter type - "+e)}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 yBe=E((A9r,ABe)=>{"use strict";var VZt=require("util"),gBe=DG(),zZt=MG(),KZt=ABe.exports=function(t){gBe.call(this);let e=[],r=this;this._filter=new zZt(t,{read:this.read.bind(this),write:function(n){e.push(n)},complete:function(){r.emit("complete",Buffer.concat(e))}}),this._filter.start()};VZt.inherits(KZt,gBe)});var Kx=E((y9r,xBe)=>{"use strict";xBe.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 FG=E((x9r,bBe)=>{"use strict";var WG=[];(function(){for(let t=0;t<256;t++){let e=t;for(let r=0;r<8;r++)e&1?e=3988292384^e>>>1:e=e>>>1;WG[t]=e}})();var $G=bBe.exports=function(){this._crc=-1};$G.prototype.write=function(t){for(let e=0;e>>8;return!0};$G.prototype.crc32=function(){return this._crc^-1};$G.crc32=function(t){let e=-1;for(let r=0;r>>8;return e^-1}});var UG=E((b9r,EBe)=>{"use strict";var Ps=Kx(),YZt=FG(),ti=EBe.exports=function(t,e){this._options=t,t.checkCRC=t.checkCRC!==!1,this._hasIHDR=!1,this._hasIEND=!1,this._emittedHeadersFinished=!1,this._palette=[],this._colorType=0,this._chunks={},this._chunks[Ps.TYPE_IHDR]=this._handleIHDR.bind(this),this._chunks[Ps.TYPE_IEND]=this._handleIEND.bind(this),this._chunks[Ps.TYPE_IDAT]=this._handleIDAT.bind(this),this._chunks[Ps.TYPE_PLTE]=this._handlePLTE.bind(this),this._chunks[Ps.TYPE_tRNS]=this._handleTRNS.bind(this),this._chunks[Ps.TYPE_gAMA]=this._handleGAMA.bind(this),this.read=e.read,this.error=e.error,this.metadata=e.metadata,this.gamma=e.gamma,this.transColor=e.transColor,this.palette=e.palette,this.parsed=e.parsed,this.inflateData=e.inflateData,this.finished=e.finished,this.simpleTransparency=e.simpleTransparency,this.headersFinished=e.headersFinished||function(){}};ti.prototype.start=function(){this.read(Ps.PNG_SIGNATURE.length,this._parseSignature.bind(this))};ti.prototype._parseSignature=function(t){let e=Ps.PNG_SIGNATURE;for(let r=0;rthis._palette.length){this.error(new Error("More transparent colors than palette size"));return}for(let e=0;e0?this._handleIDAT(r):this._handleChunkEnd()};ti.prototype._handleIEND=function(t){this.read(t,this._parseIEND.bind(this))};ti.prototype._parseIEND=function(t){this._crc.write(t),this._hasIEND=!0,this._handleChunkEnd(),this.finished&&this.finished()}});var qG=E(SBe=>{"use strict";var _Be=LG(),JZt=[function(){},function(t,e,r,n){if(n===e.length)throw new Error("Ran out of data");let s=e[n];t[r]=s,t[r+1]=s,t[r+2]=s,t[r+3]=255},function(t,e,r,n){if(n+1>=e.length)throw new Error("Ran out of data");let s=e[n];t[r]=s,t[r+1]=s,t[r+2]=s,t[r+3]=e[n+1]},function(t,e,r,n){if(n+2>=e.length)throw new Error("Ran out of data");t[r]=e[n],t[r+1]=e[n+1],t[r+2]=e[n+2],t[r+3]=255},function(t,e,r,n){if(n+3>=e.length)throw new Error("Ran out of data");t[r]=e[n],t[r+1]=e[n+1],t[r+2]=e[n+2],t[r+3]=e[n+3]}],XZt=[function(){},function(t,e,r,n){let s=e[0];t[r]=s,t[r+1]=s,t[r+2]=s,t[r+3]=n},function(t,e,r){let n=e[0];t[r]=n,t[r+1]=n,t[r+2]=n,t[r+3]=e[1]},function(t,e,r,n){t[r]=e[0],t[r+1]=e[1],t[r+2]=e[2],t[r+3]=n},function(t,e,r){t[r]=e[0],t[r+1]=e[1],t[r+2]=e[2],t[r+3]=e[3]}];function ZZt(t,e){let r=[],n=0;function s(){if(n===t.length)throw new Error("Ran out of data");let i=t[n];n++;let a,o,c,u,l,d,f,p;switch(e){default:throw new Error("unrecognised depth");case 16:f=t[n],n++,r.push((i<<8)+f);break;case 4:f=i&15,p=i>>4,r.push(p,f);break;case 2:l=i&3,d=i>>2&3,f=i>>4&3,p=i>>6&3,r.push(p,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,p=i>>7&1,r.push(p,f,d,l,u,c,o,a);break}}return{get:function(i){for(;r.length{"use strict";function rer(t,e,r,n,s){let i=0;for(let a=0;a{"use strict";var ier=require("util"),HG=require("zlib"),CBe=DG(),aer=yBe(),oer=UG(),cer=qG(),uer=jG(),yl=IBe.exports=function(t){CBe.call(this),this._parser=new oer(t,{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=t,this.writable=!0,this._parser.start()};ier.inherits(yl,CBe);yl.prototype._handleError=function(t){this.emit("error",t),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};yl.prototype._inflateData=function(t){if(!this._inflate)if(this._bitmapInfo.interlace)this._inflate=HG.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,HG.Z_MIN_CHUNK);this._inflate=HG.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(t)};yl.prototype._handleMetaData=function(t){this._metaData=t,this._bitmapInfo=Object.create(t),this._filter=new aer(this._bitmapInfo)};yl.prototype._handleTransColor=function(t){this._bitmapInfo.transColor=t};yl.prototype._handlePalette=function(t){this._bitmapInfo.palette=t};yl.prototype._simpleTransparency=function(){this._metaData.alpha=!0};yl.prototype._headersFinished=function(){this.emit("metadata",this._metaData)};yl.prototype._finished=function(){this.errord||(this._inflate?this._inflate.end():this.emit("error","No Inflate block"))};yl.prototype._complete=function(t){if(this.errord)return;let e;try{let r=cer.dataToBitMap(t,this._bitmapInfo);e=uer(r,this._bitmapInfo),r=null}catch(r){this._handleError(r);return}this.emit("parsed",e)}});var RBe=E((v9r,wBe)=>{"use strict";var xc=Kx();wBe.exports=function(t,e,r,n){let s=[xc.COLORTYPE_COLOR_ALPHA,xc.COLORTYPE_ALPHA].indexOf(n.colorType)!==-1;if(n.colorType===n.inputColorType){let m=function(){let h=new ArrayBuffer(2);return new DataView(h).setInt16(0,256,!0),new Int16Array(h)[0]!==256}();if(n.bitDepth===8||n.bitDepth===16&&m)return t}let i=n.bitDepth!==16?t:new Uint16Array(t.buffer),a=255,o=xc.COLORTYPE_TO_BPP_MAP[n.inputColorType];o===4&&!n.inputHasAlpha&&(o=3);let c=xc.COLORTYPE_TO_BPP_MAP[n.colorType];n.bitDepth===16&&(a=65535,c*=2);let u=Buffer.alloc(e*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 p(){let m,h,A,g=a;switch(n.inputColorType){case xc.COLORTYPE_COLOR_ALPHA:g=i[l+3],m=i[l],h=i[l+1],A=i[l+2];break;case xc.COLORTYPE_COLOR:m=i[l],h=i[l+1],A=i[l+2];break;case xc.COLORTYPE_ALPHA:g=i[l+1],m=i[l],h=m,A=m;break;case xc.COLORTYPE_GRAYSCALE:m=i[l],h=m,A=m;break;default:throw new Error("input color type:"+n.inputColorType+" is not supported at present")}return n.inputHasAlpha&&(s||(g/=a,m=Math.min(Math.max(Math.round((1-g)*f.red+g*m),0),a),h=Math.min(Math.max(Math.round((1-g)*f.green+g*h),0),a),A=Math.min(Math.max(Math.round((1-g)*f.blue+g*A),0),a))),{red:m,green:h,blue:A,alpha:g}}for(let m=0;m{"use strict";var NBe=BG();function ler(t,e,r,n,s){for(let i=0;i=i?t[e+a-i]:0,c=t[e+a]-o;n[s+a]=c}}function per(t,e,r,n){let s=0;for(let i=0;i=n?t[e+i-n]:0,o=t[e+i]-a;s+=Math.abs(o)}return s}function mer(t,e,r,n,s){for(let i=0;i0?t[e+i-r]:0,o=t[e+i]-a;n[s+i]=o}}function her(t,e,r){let n=0,s=e+r;for(let i=e;i0?t[i-r]:0,o=t[i]-a;n+=Math.abs(o)}return n}function ger(t,e,r,n,s,i){for(let a=0;a=i?t[e+a-i]:0,c=e>0?t[e+a-r]:0,u=t[e+a]-(o+c>>1);n[s+a]=u}}function Aer(t,e,r,n){let s=0;for(let i=0;i=n?t[e+i-n]:0,o=e>0?t[e+i-r]:0,c=t[e+i]-(a+o>>1);s+=Math.abs(c)}return s}function yer(t,e,r,n,s,i){for(let a=0;a=i?t[e+a-i]:0,c=e>0?t[e+a-r]:0,u=e>0&&a>=i?t[e+a-(r+i)]:0,l=t[e+a]-NBe(o,c,u);n[s+a]=l}}function xer(t,e,r,n){let s=0;for(let i=0;i=n?t[e+i-n]:0,o=e>0?t[e+i-r]:0,c=e>0&&i>=n?t[e+i-(r+n)]:0,u=t[e+i]-NBe(a,o,c);s+=Math.abs(u)}return s}var ber={0:ler,1:fer,2:mer,3:ger,4:yer},Eer={0:der,1:per,2:her,3:Aer,4:xer};OBe.exports=function(t,e,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=e*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 p=0;p{"use strict";var Hi=Kx(),_er=FG(),Ser=RBe(),ver=PBe(),Cer=require("zlib"),_0=DBe.exports=function(t){if(this._options=t,t.deflateChunkSize=t.deflateChunkSize||32*1024,t.deflateLevel=t.deflateLevel!=null?t.deflateLevel:9,t.deflateStrategy=t.deflateStrategy!=null?t.deflateStrategy:3,t.inputHasAlpha=t.inputHasAlpha!=null?t.inputHasAlpha:!0,t.deflateFactory=t.deflateFactory||Cer.createDeflate,t.bitDepth=t.bitDepth||8,t.colorType=typeof t.colorType=="number"?t.colorType:Hi.COLORTYPE_COLOR_ALPHA,t.inputColorType=typeof t.inputColorType=="number"?t.inputColorType:Hi.COLORTYPE_COLOR_ALPHA,[Hi.COLORTYPE_GRAYSCALE,Hi.COLORTYPE_COLOR,Hi.COLORTYPE_COLOR_ALPHA,Hi.COLORTYPE_ALPHA].indexOf(t.colorType)===-1)throw new Error("option color type:"+t.colorType+" is not supported at present");if([Hi.COLORTYPE_GRAYSCALE,Hi.COLORTYPE_COLOR,Hi.COLORTYPE_COLOR_ALPHA,Hi.COLORTYPE_ALPHA].indexOf(t.inputColorType)===-1)throw new Error("option input color type:"+t.inputColorType+" is not supported at present");if(t.bitDepth!==8&&t.bitDepth!==16)throw new Error("option bit depth:"+t.bitDepth+" is not supported at present")};_0.prototype.getDeflateOptions=function(){return{chunkSize:this._options.deflateChunkSize,level:this._options.deflateLevel,strategy:this._options.deflateStrategy}};_0.prototype.createDeflate=function(){return this._options.deflateFactory(this.getDeflateOptions())};_0.prototype.filterData=function(t,e,r){let n=Ser(t,e,r,this._options),s=Hi.COLORTYPE_TO_BPP_MAP[this._options.colorType];return ver(n,e,r,this._options,s)};_0.prototype._packChunk=function(t,e){let r=e?e.length:0,n=Buffer.alloc(r+12);return n.writeUInt32BE(r,0),n.writeUInt32BE(t,4),e&&e.copy(n,8),n.writeInt32BE(_er.crc32(n.slice(4,n.length-4)),n.length-4),n};_0.prototype.packGAMA=function(t){let e=Buffer.alloc(4);return e.writeUInt32BE(Math.floor(t*Hi.GAMMA_DIVISION),0),this._packChunk(Hi.TYPE_gAMA,e)};_0.prototype.packIHDR=function(t,e){let r=Buffer.alloc(13);return r.writeUInt32BE(t,0),r.writeUInt32BE(e,4),r[8]=this._options.bitDepth,r[9]=this._options.colorType,r[10]=0,r[11]=0,r[12]=0,this._packChunk(Hi.TYPE_IHDR,r)};_0.prototype.packIDAT=function(t){return this._packChunk(Hi.TYPE_IDAT,t)};_0.prototype.packIEND=function(){return this._packChunk(Hi.TYPE_IEND,null)}});var MBe=E((T9r,BBe)=>{"use strict";var Ier=require("util"),kBe=require("stream"),Ter=Kx(),wer=QG(),LBe=BBe.exports=function(t){kBe.call(this);let e=t||{};this._packer=new wer(e),this._deflate=this._packer.createDeflate(),this.readable=!0};Ier.inherits(LBe,kBe);LBe.prototype.pack=function(t,e,r,n){this.emit("data",Buffer.from(Ter.PNG_SIGNATURE)),this.emit("data",this._packer.packIHDR(e,r)),n&&this.emit("data",this._packer.packGAMA(n));let s=this._packer.filterData(t,e,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 jBe=E((qv,qBe)=>{"use strict";var WBe=require("assert").ok,Yx=require("zlib"),Rer=require("util"),$Be=require("buffer").kMaxLength;function $h(t){if(!(this instanceof $h))return new $h(t);t&&t.chunkSize=0,"have should not go down"),A>0){let g=n._buffer.slice(n._offset,n._offset+A);if(n._offset+=A,g.length>a&&(g=g.slice(0,a)),c.push(g),u+=g.length,a-=g.length,a===0)return!1}return(h===0||n._offset>=n._chunkSize)&&(i=n._chunkSize,n._offset=0,n._buffer=Buffer.allocUnsafe(n._chunkSize)),h===0?(o+=s-m,s=m,!0):!1}WBe(this._handle,"zlib binding closed");let f;do f=this._handle.writeSync(e,t,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>=$Be)throw FBe(this),new RangeError("Cannot create final Buffer. It would be larger than 0x"+$Be.toString(16)+" bytes");let p=Buffer.concat(c,u);return FBe(this),p};Rer.inherits($h,Yx.Inflate);function Oer(t,e){if(typeof e=="string"&&(e=Buffer.from(e)),!(e instanceof Buffer))throw new TypeError("Not a string or buffer");let r=t._finishFlushFlag;return r==null&&(r=Yx.Z_FINISH),t._processChunk(e,r)}function UBe(t,e){return Oer(new $h(e),t)}qBe.exports=qv=UBe;qv.Inflate=$h;qv.createInflate=Ner;qv.inflateSync=UBe});var GG=E((w9r,QBe)=>{"use strict";var HBe=QBe.exports=function(t){this._buffer=t,this._reads=[]};HBe.prototype.read=function(t,e){this._reads.push({length:Math.abs(t),allowLess:t<0,func:e})};HBe.prototype.process=function(){for(;this._reads.length>0&&this._buffer.length;){let t=this._reads[0];if(this._buffer.length&&(this._buffer.length>=t.length||t.allowLess)){this._reads.shift();let e=this._buffer;this._buffer=e.slice(t.length),t.func.call(this,e.slice(0,t.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 VBe=E(GBe=>{"use strict";var Per=GG(),Der=MG();GBe.process=function(t,e){let r=[],n=new Per(t);return new Der(e,{read:n.read.bind(n),write:function(i){r.push(i)},complete:function(){}}).start(),n.process(),Buffer.concat(r)}});var JBe=E((N9r,YBe)=>{"use strict";var zBe=!0,KBe=require("zlib"),ker=jBe();KBe.deflateSync||(zBe=!1);var Ler=GG(),Ber=VBe(),Mer=UG(),Wer=qG(),$er=jG();YBe.exports=function(t,e){if(!zBe)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(x){r=x}let s;function i(x){s=x}function a(x){s.transColor=x}function o(x){s.palette=x}function c(){s.alpha=!0}let u;function l(x){u=x}let d=[];function f(x){d.push(x)}let p=new Ler(t);if(new Mer(e,{read:p.read.bind(p),error:n,metadata:i,gamma:l,palette:o,transColor:a,inflateData:f,simpleTransparency:c}).start(),p.process(),r)throw r;let h=Buffer.concat(d);d.length=0;let A;if(s.interlace)A=KBe.inflateSync(h);else{let v=((s.width*s.bpp*s.depth+7>>3)+1)*s.height;A=ker(h,{chunkSize:v,maxLength:v})}if(h=null,!A||!A.length)throw new Error("bad png - invalid inflate data response");let g=Ber.process(A,s);h=null;let b=Wer.dataToBitMap(g,s);g=null;let y=$er(b,s);return s.data=y,s.gamma=u||0,s}});var t4e=E((O9r,e4e)=>{"use strict";var XBe=!0,ZBe=require("zlib");ZBe.deflateSync||(XBe=!1);var Fer=Kx(),Uer=QG();e4e.exports=function(t,e){if(!XBe)throw new Error("To use the sync capability of this library in old node versions, please pin pngjs to v2.3.0");let r=e||{},n=new Uer(r),s=[];s.push(Buffer.from(Fer.PNG_SIGNATURE)),s.push(n.packIHDR(t.width,t.height)),t.gamma&&s.push(n.packGAMA(t.gamma));let i=n.filterData(t.data,t.width,t.height),a=ZBe.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 r4e=E(VG=>{"use strict";var qer=JBe(),jer=t4e();VG.read=function(t,e){return qer(t,e||{})};VG.write=function(t,e){return jer(t,e)}});var i4e=E(s4e=>{"use strict";var Her=require("util"),n4e=require("stream"),Qer=TBe(),Ger=MBe(),Ver=r4e(),da=s4e.PNG=function(t){n4e.call(this),t=t||{},this.width=t.width|0,this.height=t.height|0,this.data=this.width>0&&this.height>0?Buffer.alloc(4*this.width*this.height):null,t.fill&&this.data&&this.data.fill(0),this.gamma=0,this.readable=this.writable=!0,this._parser=new Qer(t),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(e){this.data=e,this.emit("parsed",e)}.bind(this)),this._packer=new Ger(t),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"))};Her.inherits(da,n4e);da.sync=Ver;da.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)};da.prototype.parse=function(t,e){if(e){let r,n;r=function(s){this.removeListener("error",n),this.data=s,e(null,this)}.bind(this),n=function(s){this.removeListener("parsed",r),e(s,null)}.bind(this),this.once("parsed",r),this.once("error",n)}return this.end(t),this};da.prototype.write=function(t){return this._parser.write(t),!0};da.prototype.end=function(t){this._parser.end(t)};da.prototype._metadata=function(t){this.width=t.width,this.height=t.height,this.emit("metadata",t)};da.prototype._gamma=function(t){this.gamma=t};da.prototype._handleClose=function(){!this._parser.writable&&!this._packer.readable&&this.emit("close")};da.bitblt=function(t,e,r,n,s,i,a,o){if(r|=0,n|=0,s|=0,i|=0,a|=0,o|=0,r>t.width||n>t.height||r+s>t.width||n+i>t.height)throw new Error("bitblt reading outside image");if(a>e.width||o>e.height||a+s>e.width||o+i>e.height)throw new Error("bitblt writing outside image");for(let c=0;c{function a4e(t){if(typeof t=="number"&&(t=t.toString()),typeof t!="string")throw new Error("Color should be defined as hex string");let e=t.slice().replace("#","").split("");if(e.length<3||e.length===5||e.length>8)throw new Error("Invalid hex color: "+t);(e.length===3||e.length===4)&&(e=Array.prototype.concat.apply([],e.map(function(n){return[n,n]}))),e.length===6&&e.push("F","F");let r=parseInt(e.join(""),16);return{r:r>>24&255,g:r>>16&255,b:r>>8&255,a:r&255,hex:"#"+e.slice(0,6).join("")}}Fh.getOptions=function(e){e||(e={}),e.color||(e.color={});let r=typeof e.margin>"u"||e.margin===null||e.margin<0?4:e.margin,n=e.width&&e.width>=21?e.width:void 0,s=e.scale||4;return{width:n,scale:n?4:s,margin:r,color:{dark:a4e(e.color.dark||"#000000ff"),light:a4e(e.color.light||"#ffffffff")},type:e.type,rendererOpts:e.rendererOpts||{}}};Fh.getScale=function(e,r){return r.width&&r.width>=e+r.margin*2?r.width/(e+r.margin*2):r.scale};Fh.getImageWidth=function(e,r){let n=Fh.getScale(e,r);return Math.floor((e+r.margin*2)*n)};Fh.qrToImageData=function(e,r,n){let s=r.modules.size,i=r.modules.data,a=Fh.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 zer=require("fs"),Ker=i4e().PNG,zG=jv();xl.render=function(e,r){let n=zG.getOptions(r),s=n.rendererOpts,i=zG.getImageWidth(e.modules.size,n);s.width=i,s.height=i;let a=new Ker(s);return zG.qrToImageData(a.data,e,n),a};xl.renderToDataURL=function(e,r,n){typeof n>"u"&&(n=r,r=void 0),xl.renderToBuffer(e,r,function(s,i){s&&n(s);let a="data:image/png;base64,";a+=i.toString("base64"),n(null,a)})};xl.renderToBuffer=function(e,r,n){typeof n>"u"&&(n=r,r=void 0);let s=xl.render(e,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()};xl.renderToFile=function(e,r,n,s){typeof s>"u"&&(s=n,n=void 0);let i=!1,a=(...c)=>{i||(i=!0,s.apply(null,c))},o=zer.createWriteStream(e);o.on("error",a),o.on("close",a),xl.renderToFileStream(o,r,n)};xl.renderToFileStream=function(e,r,n){xl.render(r,n).pack().pipe(e)}});var c4e=E(Lk=>{var Yer=jv(),Jer={WW:" ",WB:"\u2584",BB:"\u2588",BW:"\u2580"},Xer={BB:" ",BW:"\u2584",WW:"\u2588",WB:"\u2580"};function Zer(t,e,r){return t&&e?r.BB:t&&!e?r.BW:!t&&e?r.WB:r.WW}Lk.render=function(t,e,r){let n=Yer.getOptions(e),s=Jer;(n.color.dark.hex==="#ffffff"||n.color.light.hex==="#000000")&&(s=Xer);let i=t.modules.size,a=t.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=Lk.render(r,n);i.writeFile(e,a,s)}});var l4e=E(u4e=>{u4e.render=function(t,e,r){let n=t.modules.size,s=t.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+` +`);let a=Ysr(e,r,s),o=iB.getSymbolSize(e),c=new $sr(o);return Hsr(c,e),Gsr(c),zsr(c,e),OK(c,r,0),e>=7&&Ksr(c,e),Vsr(c,a),isNaN(n)&&(n=kK.getBestMask(c,OK.bind(null,c,r))),kK.applyMask(n,c),OK(c,r,n),{modules:c,version:e,errorCorrectionLevel:r,maskPattern:n,segments:s}}t6e.create=function(e,r){if(typeof e>"u"||e==="")throw new Error("No input text");let n=RK.M,s,i;return typeof r<"u"&&(n=RK.from(r.errorCorrectionLevel,RK.M),s=sB.from(r.version),i=kK.from(r.maskPattern),r.toSJISFunc&&iB.setToSJISFunction(r.toSJISFunc)),Xsr(e,s,n,i)}});var BK=_((vJr,n6e)=>{"use strict";var Zsr=require("util"),r6e=require("stream"),vu=n6e.exports=function(){r6e.call(this),this._buffers=[],this._buffered=0,this._reads=[],this._paused=!1,this._encoding="utf8",this.writable=!0};Zsr.inherits(vu,r6e);vu.prototype.read=function(t,e){this._reads.push({length:Math.abs(t),allowLess:t<0,func:e}),process.nextTick(function(){this._process(),this._paused&&this._reads&&this._reads.length>0&&(this._paused=!1,this.emit("drain"))}.bind(this))};vu.prototype.write=function(t,e){if(!this.writable)return this.emit("error",new Error("Stream not writable")),!1;let r;return Buffer.isBuffer(t)?r=t:r=Buffer.from(t,e||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};vu.prototype.end=function(t,e){t&&this.write(t,e),this.writable=!1,this._buffers&&(this._buffers.length===0?this._end():(this._buffers.push(null),this._process()))};vu.prototype.destroySoon=vu.prototype.end;vu.prototype._end=function(){this._reads.length>0&&this.emit("error",new Error("Unexpected end of input")),this.destroy()};vu.prototype.destroy=function(){this._buffers&&(this.writable=!1,this._reads=null,this._buffers=null,this.emit("close"))};vu.prototype._processReadAllowingLess=function(t){this._reads.shift();let e=this._buffers[0];e.length>t.length?(this._buffered-=t.length,this._buffers[0]=e.slice(t.length),t.func.call(this,e.slice(0,t.length))):(this._buffered-=e.length,this._buffers.shift(),t.func.call(this,e))};vu.prototype._processRead=function(t){this._reads.shift();let e=0,r=0,n=Buffer.alloc(t.length);for(;e0&&this._buffers.splice(0,r),this._buffered-=t.length,t.func.call(this,n)};vu.prototype._process=function(){try{for(;this._buffered>0&&this._reads&&this._reads.length>0;){let t=this._reads[0];if(t.allowLess)this._processReadAllowingLess(t);else if(this._buffered>=t.length)this._processRead(t);else break}this._buffers&&!this.writable&&this._end()}catch(t){this.emit("error",t)}}});var MK=_(LK=>{"use strict";var F0=[{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]}];LK.getImagePasses=function(t,e){let r=[],n=t%8,s=e%8,i=(t-n)/8,a=(e-s)/8;for(let o=0;o0&&l>0&&r.push({width:u,height:l,index:o})}return r};LK.getInterlaceIterator=function(t){return function(e,r,n){let s=e%F0[n].x.length,i=(e-s)/F0[n].x.length*8+F0[n].x[s],a=r%F0[n].y.length,o=(r-a)/F0[n].y.length*8+F0[n].y[a];return i*4+o*t*4}}});var WK=_((IJr,s6e)=>{"use strict";s6e.exports=function(e,r,n){let s=e+r-n,i=Math.abs(s-e),a=Math.abs(s-r),o=Math.abs(s-n);return i<=a&&i<=o?e:a<=o?r:n}});var $K=_((CJr,a6e)=>{"use strict";var eir=MK(),tir=WK();function i6e(t,e,r){let n=t*e;return r!==8&&(n=Math.ceil(n/(8/r))),n}var Rb=a6e.exports=function(t,e){let r=t.width,n=t.height,s=t.interlace,i=t.bpp,a=t.depth;if(this.read=e.read,this.write=e.write,this.complete=e.complete,this._imageIndex=0,this._images=[],s){let o=eir.getImagePasses(r,n);for(let c=0;cs?e[i-n]:0;e[i]=a+o}};Rb.prototype._unFilterType2=function(t,e,r){let n=this._lastLine;for(let s=0;ss?e[a-n]:0,l=Math.floor((u+c)/2);e[a]=o+l}};Rb.prototype._unFilterType4=function(t,e,r){let n=this._xComparison,s=n-1,i=this._lastLine;for(let a=0;as?e[a-n]:0,l=a>s&&i?i[a-n]:0,d=tir(u,c,l);e[a]=o+d}};Rb.prototype._reverseFilterLine=function(t){let e=t[0],r,n=this._images[this._imageIndex],s=n.byteWidth;if(e===0)r=t.slice(1,s+1);else switch(r=Buffer.alloc(s),e){case 1:this._unFilterType1(t,r,s);break;case 2:this._unFilterType2(t,r,s);break;case 3:this._unFilterType3(t,r,s);break;case 4:this._unFilterType4(t,r,s);break;default:throw new Error("Unrecognised filter type - "+e)}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 u6e=_((TJr,c6e)=>{"use strict";var rir=require("util"),o6e=BK(),nir=$K(),sir=c6e.exports=function(t){o6e.call(this);let e=[],r=this;this._filter=new nir(t,{read:this.read.bind(this),write:function(n){e.push(n)},complete:function(){r.emit("complete",Buffer.concat(e))}}),this._filter.start()};rir.inherits(sir,o6e)});var Nb=_((wJr,l6e)=>{"use strict";l6e.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 qK=_((RJr,d6e)=>{"use strict";var UK=[];(function(){for(let t=0;t<256;t++){let e=t;for(let r=0;r<8;r++)e&1?e=3988292384^e>>>1:e=e>>>1;UK[t]=e}})();var FK=d6e.exports=function(){this._crc=-1};FK.prototype.write=function(t){for(let e=0;e>>8;return!0};FK.prototype.crc32=function(){return this._crc^-1};FK.crc32=function(t){let e=-1;for(let r=0;r>>8;return e^-1}});var jK=_((NJr,f6e)=>{"use strict";var Ds=Nb(),iir=qK(),ni=f6e.exports=function(t,e){this._options=t,t.checkCRC=t.checkCRC!==!1,this._hasIHDR=!1,this._hasIEND=!1,this._emittedHeadersFinished=!1,this._palette=[],this._colorType=0,this._chunks={},this._chunks[Ds.TYPE_IHDR]=this._handleIHDR.bind(this),this._chunks[Ds.TYPE_IEND]=this._handleIEND.bind(this),this._chunks[Ds.TYPE_IDAT]=this._handleIDAT.bind(this),this._chunks[Ds.TYPE_PLTE]=this._handlePLTE.bind(this),this._chunks[Ds.TYPE_tRNS]=this._handleTRNS.bind(this),this._chunks[Ds.TYPE_gAMA]=this._handleGAMA.bind(this),this.read=e.read,this.error=e.error,this.metadata=e.metadata,this.gamma=e.gamma,this.transColor=e.transColor,this.palette=e.palette,this.parsed=e.parsed,this.inflateData=e.inflateData,this.finished=e.finished,this.simpleTransparency=e.simpleTransparency,this.headersFinished=e.headersFinished||function(){}};ni.prototype.start=function(){this.read(Ds.PNG_SIGNATURE.length,this._parseSignature.bind(this))};ni.prototype._parseSignature=function(t){let e=Ds.PNG_SIGNATURE;for(let r=0;rthis._palette.length){this.error(new Error("More transparent colors than palette size"));return}for(let e=0;e0?this._handleIDAT(r):this._handleChunkEnd()};ni.prototype._handleIEND=function(t){this.read(t,this._parseIEND.bind(this))};ni.prototype._parseIEND=function(t){this._crc.write(t),this._hasIEND=!0,this._handleChunkEnd(),this.finished&&this.finished()}});var QK=_(m6e=>{"use strict";var p6e=MK(),air=[function(){},function(t,e,r,n){if(n===e.length)throw new Error("Ran out of data");let s=e[n];t[r]=s,t[r+1]=s,t[r+2]=s,t[r+3]=255},function(t,e,r,n){if(n+1>=e.length)throw new Error("Ran out of data");let s=e[n];t[r]=s,t[r+1]=s,t[r+2]=s,t[r+3]=e[n+1]},function(t,e,r,n){if(n+2>=e.length)throw new Error("Ran out of data");t[r]=e[n],t[r+1]=e[n+1],t[r+2]=e[n+2],t[r+3]=255},function(t,e,r,n){if(n+3>=e.length)throw new Error("Ran out of data");t[r]=e[n],t[r+1]=e[n+1],t[r+2]=e[n+2],t[r+3]=e[n+3]}],oir=[function(){},function(t,e,r,n){let s=e[0];t[r]=s,t[r+1]=s,t[r+2]=s,t[r+3]=n},function(t,e,r){let n=e[0];t[r]=n,t[r+1]=n,t[r+2]=n,t[r+3]=e[1]},function(t,e,r,n){t[r]=e[0],t[r+1]=e[1],t[r+2]=e[2],t[r+3]=n},function(t,e,r){t[r]=e[0],t[r+1]=e[1],t[r+2]=e[2],t[r+3]=e[3]}];function cir(t,e){let r=[],n=0;function s(){if(n===t.length)throw new Error("Ran out of data");let i=t[n];n++;let a,o,c,u,l,d,f,p;switch(e){default:throw new Error("unrecognised depth");case 16:f=t[n],n++,r.push((i<<8)+f);break;case 4:f=i&15,p=i>>4,r.push(p,f);break;case 2:l=i&3,d=i>>2&3,f=i>>4&3,p=i>>6&3,r.push(p,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,p=i>>7&1,r.push(p,f,d,l,u,c,o,a);break}}return{get:function(i){for(;r.length{"use strict";function dir(t,e,r,n,s){let i=0;for(let a=0;a{"use strict";var mir=require("util"),GK=require("zlib"),g6e=BK(),hir=u6e(),gir=jK(),yir=QK(),Air=HK(),Ol=y6e.exports=function(t){g6e.call(this),this._parser=new gir(t,{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=t,this.writable=!0,this._parser.start()};mir.inherits(Ol,g6e);Ol.prototype._handleError=function(t){this.emit("error",t),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};Ol.prototype._inflateData=function(t){if(!this._inflate)if(this._bitmapInfo.interlace)this._inflate=GK.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,GK.Z_MIN_CHUNK);this._inflate=GK.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(t)};Ol.prototype._handleMetaData=function(t){this._metaData=t,this._bitmapInfo=Object.create(t),this._filter=new hir(this._bitmapInfo)};Ol.prototype._handleTransColor=function(t){this._bitmapInfo.transColor=t};Ol.prototype._handlePalette=function(t){this._bitmapInfo.palette=t};Ol.prototype._simpleTransparency=function(){this._metaData.alpha=!0};Ol.prototype._headersFinished=function(){this.emit("metadata",this._metaData)};Ol.prototype._finished=function(){this.errord||(this._inflate?this._inflate.end():this.emit("error","No Inflate block"))};Ol.prototype._complete=function(t){if(this.errord)return;let e;try{let r=yir.dataToBitMap(t,this._bitmapInfo);e=Air(r,this._bitmapInfo),r=null}catch(r){this._handleError(r);return}this.emit("parsed",e)}});var b6e=_((DJr,x6e)=>{"use strict";var Oc=Nb();x6e.exports=function(t,e,r,n){let s=[Oc.COLORTYPE_COLOR_ALPHA,Oc.COLORTYPE_ALPHA].indexOf(n.colorType)!==-1;if(n.colorType===n.inputColorType){let m=function(){let h=new ArrayBuffer(2);return new DataView(h).setInt16(0,256,!0),new Int16Array(h)[0]!==256}();if(n.bitDepth===8||n.bitDepth===16&&m)return t}let i=n.bitDepth!==16?t:new Uint16Array(t.buffer),a=255,o=Oc.COLORTYPE_TO_BPP_MAP[n.inputColorType];o===4&&!n.inputHasAlpha&&(o=3);let c=Oc.COLORTYPE_TO_BPP_MAP[n.colorType];n.bitDepth===16&&(a=65535,c*=2);let u=Buffer.alloc(e*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 p(){let m,h,y,g=a;switch(n.inputColorType){case Oc.COLORTYPE_COLOR_ALPHA:g=i[l+3],m=i[l],h=i[l+1],y=i[l+2];break;case Oc.COLORTYPE_COLOR:m=i[l],h=i[l+1],y=i[l+2];break;case Oc.COLORTYPE_ALPHA:g=i[l+1],m=i[l],h=m,y=m;break;case Oc.COLORTYPE_GRAYSCALE:m=i[l],h=m,y=m;break;default:throw new Error("input color type:"+n.inputColorType+" is not supported at present")}return n.inputHasAlpha&&(s||(g/=a,m=Math.min(Math.max(Math.round((1-g)*f.red+g*m),0),a),h=Math.min(Math.max(Math.round((1-g)*f.green+g*h),0),a),y=Math.min(Math.max(Math.round((1-g)*f.blue+g*y),0),a))),{red:m,green:h,blue:y,alpha:g}}for(let m=0;m{"use strict";var _6e=WK();function xir(t,e,r,n,s){for(let i=0;i=i?t[e+a-i]:0,c=t[e+a]-o;n[s+a]=c}}function Eir(t,e,r,n){let s=0;for(let i=0;i=n?t[e+i-n]:0,o=t[e+i]-a;s+=Math.abs(o)}return s}function vir(t,e,r,n,s){for(let i=0;i0?t[e+i-r]:0,o=t[e+i]-a;n[s+i]=o}}function Sir(t,e,r){let n=0,s=e+r;for(let i=e;i0?t[i-r]:0,o=t[i]-a;n+=Math.abs(o)}return n}function Iir(t,e,r,n,s,i){for(let a=0;a=i?t[e+a-i]:0,c=e>0?t[e+a-r]:0,u=t[e+a]-(o+c>>1);n[s+a]=u}}function Cir(t,e,r,n){let s=0;for(let i=0;i=n?t[e+i-n]:0,o=e>0?t[e+i-r]:0,c=t[e+i]-(a+o>>1);s+=Math.abs(c)}return s}function Tir(t,e,r,n,s,i){for(let a=0;a=i?t[e+a-i]:0,c=e>0?t[e+a-r]:0,u=e>0&&a>=i?t[e+a-(r+i)]:0,l=t[e+a]-_6e(o,c,u);n[s+a]=l}}function wir(t,e,r,n){let s=0;for(let i=0;i=n?t[e+i-n]:0,o=e>0?t[e+i-r]:0,c=e>0&&i>=n?t[e+i-(r+n)]:0,u=t[e+i]-_6e(a,o,c);s+=Math.abs(u)}return s}var Rir={0:xir,1:_ir,2:vir,3:Iir,4:Tir},Nir={0:bir,1:Eir,2:Sir,3:Cir,4:wir};E6e.exports=function(t,e,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=e*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 p=0;p{"use strict";var Zi=Nb(),Oir=qK(),kir=b6e(),Pir=v6e(),Dir=require("zlib"),q0=S6e.exports=function(t){if(this._options=t,t.deflateChunkSize=t.deflateChunkSize||32*1024,t.deflateLevel=t.deflateLevel!=null?t.deflateLevel:9,t.deflateStrategy=t.deflateStrategy!=null?t.deflateStrategy:3,t.inputHasAlpha=t.inputHasAlpha!=null?t.inputHasAlpha:!0,t.deflateFactory=t.deflateFactory||Dir.createDeflate,t.bitDepth=t.bitDepth||8,t.colorType=typeof t.colorType=="number"?t.colorType:Zi.COLORTYPE_COLOR_ALPHA,t.inputColorType=typeof t.inputColorType=="number"?t.inputColorType:Zi.COLORTYPE_COLOR_ALPHA,[Zi.COLORTYPE_GRAYSCALE,Zi.COLORTYPE_COLOR,Zi.COLORTYPE_COLOR_ALPHA,Zi.COLORTYPE_ALPHA].indexOf(t.colorType)===-1)throw new Error("option color type:"+t.colorType+" is not supported at present");if([Zi.COLORTYPE_GRAYSCALE,Zi.COLORTYPE_COLOR,Zi.COLORTYPE_COLOR_ALPHA,Zi.COLORTYPE_ALPHA].indexOf(t.inputColorType)===-1)throw new Error("option input color type:"+t.inputColorType+" is not supported at present");if(t.bitDepth!==8&&t.bitDepth!==16)throw new Error("option bit depth:"+t.bitDepth+" is not supported at present")};q0.prototype.getDeflateOptions=function(){return{chunkSize:this._options.deflateChunkSize,level:this._options.deflateLevel,strategy:this._options.deflateStrategy}};q0.prototype.createDeflate=function(){return this._options.deflateFactory(this.getDeflateOptions())};q0.prototype.filterData=function(t,e,r){let n=kir(t,e,r,this._options),s=Zi.COLORTYPE_TO_BPP_MAP[this._options.colorType];return Pir(n,e,r,this._options,s)};q0.prototype._packChunk=function(t,e){let r=e?e.length:0,n=Buffer.alloc(r+12);return n.writeUInt32BE(r,0),n.writeUInt32BE(t,4),e&&e.copy(n,8),n.writeInt32BE(Oir.crc32(n.slice(4,n.length-4)),n.length-4),n};q0.prototype.packGAMA=function(t){let e=Buffer.alloc(4);return e.writeUInt32BE(Math.floor(t*Zi.GAMMA_DIVISION),0),this._packChunk(Zi.TYPE_gAMA,e)};q0.prototype.packIHDR=function(t,e){let r=Buffer.alloc(13);return r.writeUInt32BE(t,0),r.writeUInt32BE(e,4),r[8]=this._options.bitDepth,r[9]=this._options.colorType,r[10]=0,r[11]=0,r[12]=0,this._packChunk(Zi.TYPE_IHDR,r)};q0.prototype.packIDAT=function(t){return this._packChunk(Zi.TYPE_IDAT,t)};q0.prototype.packIEND=function(){return this._packChunk(Zi.TYPE_IEND,null)}});var w6e=_((MJr,T6e)=>{"use strict";var Bir=require("util"),I6e=require("stream"),Lir=Nb(),Mir=zK(),C6e=T6e.exports=function(t){I6e.call(this);let e=t||{};this._packer=new Mir(e),this._deflate=this._packer.createDeflate(),this.readable=!0};Bir.inherits(C6e,I6e);C6e.prototype.pack=function(t,e,r,n){this.emit("data",Buffer.from(Lir.PNG_SIGNATURE)),this.emit("data",this._packer.packIHDR(e,r)),n&&this.emit("data",this._packer.packGAMA(n));let s=this._packer.filterData(t,e,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 D6e=_((zI,P6e)=>{"use strict";var R6e=require("assert").ok,Ob=require("zlib"),Wir=require("util"),N6e=require("buffer").kMaxLength;function og(t){if(!(this instanceof og))return new og(t);t&&t.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)),c.push(g),u+=g.length,a-=g.length,a===0)return!1}return(h===0||n._offset>=n._chunkSize)&&(i=n._chunkSize,n._offset=0,n._buffer=Buffer.allocUnsafe(n._chunkSize)),h===0?(o+=s-m,s=m,!0):!1}R6e(this._handle,"zlib binding closed");let f;do f=this._handle.writeSync(e,t,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>=N6e)throw O6e(this),new RangeError("Cannot create final Buffer. It would be larger than 0x"+N6e.toString(16)+" bytes");let p=Buffer.concat(c,u);return O6e(this),p};Wir.inherits(og,Ob.Inflate);function Uir(t,e){if(typeof e=="string"&&(e=Buffer.from(e)),!(e instanceof Buffer))throw new TypeError("Not a string or buffer");let r=t._finishFlushFlag;return r==null&&(r=Ob.Z_FINISH),t._processChunk(e,r)}function k6e(t,e){return Uir(new og(e),t)}P6e.exports=zI=k6e;zI.Inflate=og;zI.createInflate=$ir;zI.inflateSync=k6e});var KK=_((WJr,L6e)=>{"use strict";var B6e=L6e.exports=function(t){this._buffer=t,this._reads=[]};B6e.prototype.read=function(t,e){this._reads.push({length:Math.abs(t),allowLess:t<0,func:e})};B6e.prototype.process=function(){for(;this._reads.length>0&&this._buffer.length;){let t=this._reads[0];if(this._buffer.length&&(this._buffer.length>=t.length||t.allowLess)){this._reads.shift();let e=this._buffer;this._buffer=e.slice(t.length),t.func.call(this,e.slice(0,t.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 W6e=_(M6e=>{"use strict";var Fir=KK(),qir=$K();M6e.process=function(t,e){let r=[],n=new Fir(t);return new qir(e,{read:n.read.bind(n),write:function(i){r.push(i)},complete:function(){}}).start(),n.process(),Buffer.concat(r)}});var q6e=_((UJr,F6e)=>{"use strict";var $6e=!0,U6e=require("zlib"),jir=D6e();U6e.deflateSync||($6e=!1);var Qir=KK(),Hir=W6e(),Gir=jK(),zir=QK(),Kir=HK();F6e.exports=function(t,e){if(!$6e)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(A){r=A}let s;function i(A){s=A}function a(A){s.transColor=A}function o(A){s.palette=A}function c(){s.alpha=!0}let u;function l(A){u=A}let d=[];function f(A){d.push(A)}let p=new Qir(t);if(new Gir(e,{read:p.read.bind(p),error:n,metadata:i,gamma:l,palette:o,transColor:a,inflateData:f,simpleTransparency:c}).start(),p.process(),r)throw r;let h=Buffer.concat(d);d.length=0;let y;if(s.interlace)y=U6e.inflateSync(h);else{let S=((s.width*s.bpp*s.depth+7>>3)+1)*s.height;y=jir(h,{chunkSize:S,maxLength:S})}if(h=null,!y||!y.length)throw new Error("bad png - invalid inflate data response");let g=Hir.process(y,s);h=null;let b=zir.dataToBitMap(g,s);g=null;let x=Kir(b,s);return s.data=x,s.gamma=u||0,s}});var G6e=_((FJr,H6e)=>{"use strict";var j6e=!0,Q6e=require("zlib");Q6e.deflateSync||(j6e=!1);var Vir=Nb(),Yir=zK();H6e.exports=function(t,e){if(!j6e)throw new Error("To use the sync capability of this library in old node versions, please pin pngjs to v2.3.0");let r=e||{},n=new Yir(r),s=[];s.push(Buffer.from(Vir.PNG_SIGNATURE)),s.push(n.packIHDR(t.width,t.height)),t.gamma&&s.push(n.packGAMA(t.gamma));let i=n.filterData(t.data,t.width,t.height),a=Q6e.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 z6e=_(VK=>{"use strict";var Jir=q6e(),Xir=G6e();VK.read=function(t,e){return Jir(t,e||{})};VK.write=function(t,e){return Xir(t,e)}});var Y6e=_(V6e=>{"use strict";var Zir=require("util"),K6e=require("stream"),ear=A6e(),tar=w6e(),rar=z6e(),ba=V6e.PNG=function(t){K6e.call(this),t=t||{},this.width=t.width|0,this.height=t.height|0,this.data=this.width>0&&this.height>0?Buffer.alloc(4*this.width*this.height):null,t.fill&&this.data&&this.data.fill(0),this.gamma=0,this.readable=this.writable=!0,this._parser=new ear(t),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(e){this.data=e,this.emit("parsed",e)}.bind(this)),this._packer=new tar(t),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"))};Zir.inherits(ba,K6e);ba.sync=rar;ba.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)};ba.prototype.parse=function(t,e){if(e){let r,n;r=function(s){this.removeListener("error",n),this.data=s,e(null,this)}.bind(this),n=function(s){this.removeListener("parsed",r),e(s,null)}.bind(this),this.once("parsed",r),this.once("error",n)}return this.end(t),this};ba.prototype.write=function(t){return this._parser.write(t),!0};ba.prototype.end=function(t){this._parser.end(t)};ba.prototype._metadata=function(t){this.width=t.width,this.height=t.height,this.emit("metadata",t)};ba.prototype._gamma=function(t){this.gamma=t};ba.prototype._handleClose=function(){!this._parser.writable&&!this._packer.readable&&this.emit("close")};ba.bitblt=function(t,e,r,n,s,i,a,o){if(r|=0,n|=0,s|=0,i|=0,a|=0,o|=0,r>t.width||n>t.height||r+s>t.width||n+i>t.height)throw new Error("bitblt reading outside image");if(a>e.width||o>e.height||a+s>e.width||o+i>e.height)throw new Error("bitblt writing outside image");for(let c=0;c{function J6e(t){if(typeof t=="number"&&(t=t.toString()),typeof t!="string")throw new Error("Color should be defined as hex string");let e=t.slice().replace("#","").split("");if(e.length<3||e.length===5||e.length>8)throw new Error("Invalid hex color: "+t);(e.length===3||e.length===4)&&(e=Array.prototype.concat.apply([],e.map(function(n){return[n,n]}))),e.length===6&&e.push("F","F");let r=parseInt(e.join(""),16);return{r:r>>24&255,g:r>>16&255,b:r>>8&255,a:r&255,hex:"#"+e.slice(0,6).join("")}}cg.getOptions=function(e){e||(e={}),e.color||(e.color={});let r=typeof e.margin>"u"||e.margin===null||e.margin<0?4:e.margin,n=e.width&&e.width>=21?e.width:void 0,s=e.scale||4;return{width:n,scale:n?4:s,margin:r,color:{dark:J6e(e.color.dark||"#000000ff"),light:J6e(e.color.light||"#ffffffff")},type:e.type,rendererOpts:e.rendererOpts||{}}};cg.getScale=function(e,r){return r.width&&r.width>=e+r.margin*2?r.width/(e+r.margin*2):r.scale};cg.getImageWidth=function(e,r){let n=cg.getScale(e,r);return Math.floor((e+r.margin*2)*n)};cg.qrToImageData=function(e,r,n){let s=r.modules.size,i=r.modules.data,a=cg.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 nar=require("fs"),sar=Y6e().PNG,YK=KI();kl.render=function(e,r){let n=YK.getOptions(r),s=n.rendererOpts,i=YK.getImageWidth(e.modules.size,n);s.width=i,s.height=i;let a=new sar(s);return YK.qrToImageData(a.data,e,n),a};kl.renderToDataURL=function(e,r,n){typeof n>"u"&&(n=r,r=void 0),kl.renderToBuffer(e,r,function(s,i){s&&n(s);let a="data:image/png;base64,";a+=i.toString("base64"),n(null,a)})};kl.renderToBuffer=function(e,r,n){typeof n>"u"&&(n=r,r=void 0);let s=kl.render(e,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()};kl.renderToFile=function(e,r,n,s){typeof s>"u"&&(s=n,n=void 0);let i=!1,a=(...c)=>{i||(i=!0,s.apply(null,c))},o=nar.createWriteStream(e);o.on("error",a),o.on("close",a),kl.renderToFileStream(o,r,n)};kl.renderToFileStream=function(e,r,n){kl.render(r,n).pack().pipe(e)}});var Z6e=_(aB=>{var iar=KI(),aar={WW:" ",WB:"\u2584",BB:"\u2588",BW:"\u2580"},oar={BB:" ",BW:"\u2584",WW:"\u2588",WB:"\u2580"};function car(t,e,r){return t&&e?r.BB:t&&!e?r.BW:!t&&e?r.WB:r.WW}aB.render=function(t,e,r){let n=iar.getOptions(e),s=aar;(n.color.dark.hex==="#ffffff"||n.color.light.hex==="#000000")&&(s=oar);let i=t.modules.size,a=t.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=aB.render(r,n);i.writeFile(e,a,s)}});var tMe=_(eMe=>{eMe.render=function(t,e,r){let n=t.modules.size,s=t.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 etr="\x1B[47m",ttr="\x1B[40m",KG="\x1B[37m",YG="\x1B[30m",Uh="\x1B[0m",rtr=etr+YG,ntr=ttr+KG,str=function(t,e,r){return{"00":Uh+" "+t,"01":Uh+e+"\u2584"+t,"02":Uh+r+"\u2584"+t,10:Uh+e+"\u2580"+t,11:" ",12:"\u2584",20:Uh+r+"\u2580"+t,21:"\u2580",22:"\u2588"}},d4e=function(t,e,r,n){let s=e+1;if(r>=s||n>=s||n<-1||r<-1)return"0";if(r>=e||n>=e||n<0||r<0)return"1";let i=n*e+r;return t[i]?"2":"1"},f4e=function(t,e,r,n){return d4e(t,e,r,n)+d4e(t,e,r,n+1)};p4e.render=function(t,e,r){let n=t.modules.size,s=t.modules.data,i=!!(e&&e.inverse),a=e&&e.inverse?ntr:rtr,u=str(a,i?YG:KG,i?KG:YG),l=Uh+` -`+a,d=a;for(let f=-1;f{var itr=l4e(),atr=m4e();h4e.render=function(t,e,r){return e&&e.small?atr.render(t,e,r):itr.render(t,e,r)}});var XG=E(y4e=>{var otr=jv();function A4e(t,e){let r=t.a/255,n=e+'="'+t.hex+'"';return r<1?n+" "+e+'-opacity="'+r.toFixed(2).slice(1)+'"':n}function JG(t,e,r){let n=t+e;return typeof r<"u"&&(n+=" "+r),n}function ctr(t,e,r){let n="",s=0,i=!1,a=0;for(let o=0;o0&&c>0&&t[o-1]||(n+=i?JG("M",c+r,.5+u+r):JG("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 x4e=E(Bk=>{var utr=XG();Bk.render=utr.render;Bk.renderToFile=function(e,r,n,s){typeof s>"u"&&(s=n,n=void 0);let i=require("fs"),o=''+Bk.render(r,n);i.writeFile(e,o,s)}});var b4e=E(Mk=>{var ZG=jv();function ltr(t,e,r){t.clearRect(0,0,e.width,e.height),e.style||(e.style={}),e.height=r,e.width=r,e.style.height=r+"px",e.style.width=r+"px"}function dtr(){try{return document.createElement("canvas")}catch{throw new Error("You need to specify a canvas element")}}Mk.render=function(e,r,n){let s=n,i=r;typeof s>"u"&&(!r||!r.getContext)&&(s=r,r=void 0),r||(i=dtr()),s=ZG.getOptions(s);let a=ZG.getImageWidth(e.modules.size,s),o=i.getContext("2d"),c=o.createImageData(a,a);return ZG.qrToImageData(c.data,e,s),ltr(o,i,a),o.putImageData(c,0,0),i};Mk.renderToDataURL=function(e,r,n){let s=n;typeof s>"u"&&(!r||!r.getContext)&&(s=r,r=void 0),s||(s={});let i=Mk.render(e,r,s),a=s.type||"image/png",o=s.rendererOpts||{};return i.toDataURL(a,o.quality)}});var _4e=E(Hv=>{var ftr=pG(),eV=PG(),E4e=b4e(),ptr=XG();function tV(t,e,r,n,s){let i=[].slice.call(arguments,1),a=i.length,o=typeof i[a-1]=="function";if(!o&&!ftr())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=e,e=n=void 0):a===3&&(e.getContext&&typeof s>"u"?(s=n,n=void 0):(s=n,n=r,r=e,e=void 0))}else{if(a<1)throw new Error("Too few arguments provided");return a===1?(r=e,e=n=void 0):a===2&&!e.getContext&&(n=r,r=e,e=void 0),new Promise(function(c,u){try{let l=eV.create(r,n);c(t(l,e,n))}catch(l){u(l)}})}try{let c=eV.create(r,n);s(null,t(c,e,n))}catch(c){s(c)}}Hv.create=eV.create;Hv.toCanvas=tV.bind(null,E4e.render);Hv.toDataURL=tV.bind(null,E4e.renderToDataURL);Hv.toString=tV.bind(null,function(t,e,r){return ptr.render(t,r)})});var I4e=E(S0=>{var S4e=pG(),rV=PG(),mtr=o4e(),v4e=c4e(),htr=g4e(),C4e=x4e();function Qv(t,e,r){if(typeof t>"u")throw new Error("String required as first argument");if(typeof r>"u"&&(r=e,e={}),typeof r!="function")if(S4e())e=r||{},r=null;else throw new Error("Callback required as last argument");return{opts:e,cb:r}}function gtr(t){return t.slice((t.lastIndexOf(".")-1>>>0)+2).toLowerCase()}function Wk(t){switch(t){case"svg":return C4e;case"txt":case"utf8":return v4e;case"png":case"image/png":default:return mtr}}function Atr(t){switch(t){case"svg":return C4e;case"terminal":return htr;case"utf8":default:return v4e}}function Gv(t,e,r){if(!r.cb)return new Promise(function(n,s){try{let i=rV.create(e,r.opts);return t(i,r.opts,function(a,o){return a?s(a):n(o)})}catch(i){s(i)}});try{let n=rV.create(e,r.opts);return t(n,r.opts,r.cb)}catch(n){r.cb(n)}}S0.create=rV.create;S0.toCanvas=_4e().toCanvas;S0.toString=function(e,r,n){let s=Qv(e,r,n),i=s.opts?s.opts.type:void 0,a=Atr(i);return Gv(a.render,e,s)};S0.toDataURL=function(e,r,n){let s=Qv(e,r,n),i=Wk(s.opts.type);return Gv(i.renderToDataURL,e,s)};S0.toBuffer=function(e,r,n){let s=Qv(e,r,n),i=Wk(s.opts.type);return Gv(i.renderToBuffer,e,s)};S0.toFile=function(e,r,n,s){if(typeof e!="string"||!(typeof r=="string"||typeof r=="object"))throw new Error("Invalid argument");if(arguments.length<3&&!S4e())throw new Error("Too few arguments provided");let i=Qv(r,n,s),a=i.opts.type||gtr(e),c=Wk(a).renderToFile.bind(null,e);return Gv(c,r,i)};S0.toFileStream=function(e,r,n){if(arguments.length<2)throw new Error("Too few arguments provided");let s=Qv(r,n,e.emit.bind(e,"error")),a=Wk("png").renderToFileStream.bind(null,e);Gv(a,r,s)}});var v0=E((Q9r,T4e)=>{T4e.exports=I4e()});var H4e=E((rqr,j4e)=>{j4e.exports=require("util").inspect});var eC=E((nqr,lMe)=>{var xV=typeof Map=="function"&&Map.prototype,lV=Object.getOwnPropertyDescriptor&&xV?Object.getOwnPropertyDescriptor(Map.prototype,"size"):null,Qk=xV&&lV&&typeof lV.get=="function"?lV.get:null,Q4e=xV&&Map.prototype.forEach,bV=typeof Set=="function"&&Set.prototype,dV=Object.getOwnPropertyDescriptor&&bV?Object.getOwnPropertyDescriptor(Set.prototype,"size"):null,Gk=bV&&dV&&typeof dV.get=="function"?dV.get:null,G4e=bV&&Set.prototype.forEach,Ttr=typeof WeakMap=="function"&&WeakMap.prototype,Jv=Ttr?WeakMap.prototype.has:null,wtr=typeof WeakSet=="function"&&WeakSet.prototype,Xv=wtr?WeakSet.prototype.has:null,Rtr=typeof WeakRef=="function"&&WeakRef.prototype,V4e=Rtr?WeakRef.prototype.deref:null,Ntr=Boolean.prototype.valueOf,Otr=Object.prototype.toString,Ptr=Function.prototype.toString,Dtr=String.prototype.match,EV=String.prototype.slice,I0=String.prototype.replace,ktr=String.prototype.toUpperCase,z4e=String.prototype.toLowerCase,nMe=RegExp.prototype.test,K4e=Array.prototype.concat,_l=Array.prototype.join,Ltr=Array.prototype.slice,Y4e=Math.floor,mV=typeof BigInt=="function"?BigInt.prototype.valueOf:null,fV=Object.getOwnPropertySymbols,hV=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?Symbol.prototype.toString:null,Jx=typeof Symbol=="function"&&typeof Symbol.iterator=="object",Zv=typeof Symbol=="function"&&Symbol.toStringTag&&(typeof Symbol.toStringTag===Jx||!0)?Symbol.toStringTag:null,sMe=Object.prototype.propertyIsEnumerable,J4e=(typeof Reflect=="function"?Reflect.getPrototypeOf:Object.getPrototypeOf)||([].__proto__===Array.prototype?function(t){return t.__proto__}:null);function X4e(t,e){if(t===1/0||t===-1/0||t!==t||t&&t>-1e3&&t<1e3||nMe.call(/e/,e))return e;var r=/[0-9](?=(?:[0-9]{3})+(?![0-9]))/g;if(typeof t=="number"){var n=t<0?-Y4e(-t):Y4e(t);if(n!==t){var s=String(n),i=EV.call(e,s.length+1);return I0.call(s,r,"$&_")+"."+I0.call(I0.call(i,/([0-9]{3})/g,"$&_"),/_$/,"")}}return I0.call(e,r,"$&_")}var gV=H4e(),Z4e=gV.custom,eMe=oMe(Z4e)?Z4e:null,iMe={__proto__:null,double:'"',single:"'"},Btr={__proto__:null,double:/(["\\])/g,single:/(['\\])/g};lMe.exports=function t(e,r,n,s){var i=r||{};if(tf(i,"quoteStyle")&&!tf(iMe,i.quoteStyle))throw new TypeError('option "quoteStyle" must be "single" or "double"');if(tf(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=tf(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(tf(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(tf(i,"numericSeparator")&&typeof i.numericSeparator!="boolean")throw new TypeError('option "numericSeparator", if provided, must be `true` or `false`');var o=i.numericSeparator;if(typeof e>"u")return"undefined";if(e===null)return"null";if(typeof e=="boolean")return e?"true":"false";if(typeof e=="string")return uMe(e,i);if(typeof e=="number"){if(e===0)return 1/0/e>0?"0":"-0";var c=String(e);return o?X4e(e,c):c}if(typeof e=="bigint"){var u=String(e)+"n";return o?X4e(e,u):u}var l=typeof i.depth>"u"?5:i.depth;if(typeof n>"u"&&(n=0),n>=l&&l>0&&typeof e=="object")return AV(e)?"[Array]":"[Object]";var d=err(i,n);if(typeof s>"u")s=[];else if(cMe(s,e)>=0)return"[Circular]";function f(k,B,Z){if(B&&(s=Ltr.call(s),s.push(B)),Z){var W={depth:i.depth};return tf(i,"quoteStyle")&&(W.quoteStyle=i.quoteStyle),t(k,W,n+1,s)}return t(k,i,n+1,s)}if(typeof e=="function"&&!tMe(e)){var p=Qtr(e),m=Hk(e,f);return"[Function"+(p?": "+p:" (anonymous)")+"]"+(m.length>0?" { "+_l.call(m,", ")+" }":"")}if(oMe(e)){var h=Jx?I0.call(String(e),/^(Symbol\(.*\))_[^)]*$/,"$1"):hV.call(e);return typeof e=="object"&&!Jx?Yv(h):h}if(Jtr(e)){for(var A="<"+z4e.call(String(e.nodeName)),g=e.attributes||[],b=0;b",A}if(AV(e)){if(e.length===0)return"[]";var y=Hk(e,f);return d&&!Ztr(y)?"["+yV(y,d)+"]":"[ "+_l.call(y,", ")+" ]"}if($tr(e)){var x=Hk(e,f);return!("cause"in Error.prototype)&&"cause"in e&&!sMe.call(e,"cause")?"{ ["+String(e)+"] "+_l.call(K4e.call("[cause]: "+f(e.cause),x),", ")+" }":x.length===0?"["+String(e)+"]":"{ ["+String(e)+"] "+_l.call(x,", ")+" }"}if(typeof e=="object"&&a){if(eMe&&typeof e[eMe]=="function"&&gV)return gV(e,{depth:l-n});if(a!=="symbol"&&typeof e.inspect=="function")return e.inspect()}if(Gtr(e)){var v=[];return Q4e&&Q4e.call(e,function(k,B){v.push(f(B,e,!0)+" => "+f(k,e))}),rMe("Map",Qk.call(e),v,d)}if(Ktr(e)){var C=[];return G4e&&G4e.call(e,function(k){C.push(f(k,e))}),rMe("Set",Gk.call(e),C,d)}if(Vtr(e))return pV("WeakMap");if(Ytr(e))return pV("WeakSet");if(ztr(e))return pV("WeakRef");if(Utr(e))return Yv(f(Number(e)));if(jtr(e))return Yv(f(mV.call(e)));if(qtr(e))return Yv(Ntr.call(e));if(Ftr(e))return Yv(f(String(e)));if(typeof window<"u"&&e===window)return"{ [object Window] }";if(typeof globalThis<"u"&&e===globalThis||typeof global<"u"&&e===global)return"{ [object globalThis] }";if(!Wtr(e)&&!tMe(e)){var R=Hk(e,f),w=J4e?J4e(e)===Object.prototype:e instanceof Object||e.constructor===Object,N=e instanceof Object?"":"null prototype",P=!w&&Zv&&Object(e)===e&&Zv in e?EV.call(T0(e),8,-1):N?"Object":"",L=w||typeof e.constructor!="function"?"":e.constructor.name?e.constructor.name+" ":"",M=L+(P||N?"["+_l.call(K4e.call([],P||[],N||[]),": ")+"] ":"");return R.length===0?M+"{}":d?M+"{"+yV(R,d)+"}":M+"{ "+_l.call(R,", ")+" }"}return String(e)};function aMe(t,e,r){var n=r.quoteStyle||e,s=iMe[n];return s+t+s}function Mtr(t){return I0.call(String(t),/"/g,""")}function jh(t){return!Zv||!(typeof t=="object"&&(Zv in t||typeof t[Zv]<"u"))}function AV(t){return T0(t)==="[object Array]"&&jh(t)}function Wtr(t){return T0(t)==="[object Date]"&&jh(t)}function tMe(t){return T0(t)==="[object RegExp]"&&jh(t)}function $tr(t){return T0(t)==="[object Error]"&&jh(t)}function Ftr(t){return T0(t)==="[object String]"&&jh(t)}function Utr(t){return T0(t)==="[object Number]"&&jh(t)}function qtr(t){return T0(t)==="[object Boolean]"&&jh(t)}function oMe(t){if(Jx)return t&&typeof t=="object"&&t instanceof Symbol;if(typeof t=="symbol")return!0;if(!t||typeof t!="object"||!hV)return!1;try{return hV.call(t),!0}catch{}return!1}function jtr(t){if(!t||typeof t!="object"||!mV)return!1;try{return mV.call(t),!0}catch{}return!1}var Htr=Object.prototype.hasOwnProperty||function(t){return t in this};function tf(t,e){return Htr.call(t,e)}function T0(t){return Otr.call(t)}function Qtr(t){if(t.name)return t.name;var e=Dtr.call(Ptr.call(t),/^function\s*([\w$]+)/);return e?e[1]:null}function cMe(t,e){if(t.indexOf)return t.indexOf(e);for(var r=0,n=t.length;re.maxStringLength){var r=t.length-e.maxStringLength,n="... "+r+" more character"+(r>1?"s":"");return uMe(EV.call(t,0,e.maxStringLength),e)+n}var s=Btr[e.quoteStyle||"single"];s.lastIndex=0;var i=I0.call(I0.call(t,s,"\\$1"),/[\x00-\x1f]/g,Xtr);return aMe(i,"single",e)}function Xtr(t){var e=t.charCodeAt(0),r={8:"b",9:"t",10:"n",12:"f",13:"r"}[e];return r?"\\"+r:"\\x"+(e<16?"0":"")+ktr.call(e.toString(16))}function Yv(t){return"Object("+t+")"}function pV(t){return t+" { ? }"}function rMe(t,e,r,n){var s=n?yV(r,n):_l.call(r,", ");return t+" ("+e+") {"+s+"}"}function Ztr(t){for(var e=0;e=0)return!1;return!0}function err(t,e){var r;if(t.indent===" ")r=" ";else if(typeof t.indent=="number"&&t.indent>0)r=_l.call(Array(t.indent+1)," ");else return null;return{base:r,prev:_l.call(Array(e+1),r)}}function yV(t,e){if(t.length===0)return"";var r=` -`+e.prev+e.base;return r+_l.call(t,","+r)+` -`+e.prev}function Hk(t,e){var r=AV(t),n=[];if(r){n.length=t.length;for(var s=0;s{"use strict";var trr=eC(),rrr=Vp(),Vk=function(t,e,r){for(var n=t,s;(s=n.next)!=null;n=s)if(s.key===e)return n.next=s.next,r||(s.next=t.next,t.next=s),s},nrr=function(t,e){if(t){var r=Vk(t,e);return r&&r.value}},srr=function(t,e,r){var n=Vk(t,e);n?n.value=r:t.next={key:e,next:t.next,value:r}},irr=function(t,e){return t?!!Vk(t,e):!1},arr=function(t,e){if(t)return Vk(t,e,!0)};dMe.exports=function(){var e,r={assert:function(n){if(!r.has(n))throw new rrr("Side channel does not contain "+trr(n))},delete:function(n){var s=e&&e.next,i=arr(e,n);return i&&s&&s===i&&(e=void 0),!!i},get:function(n){return nrr(e,n)},has:function(n){return irr(e,n)},set:function(n,s){e||(e={next:void 0}),srr(e,n,s)}};return r}});var _V=E((iqr,hMe)=>{"use strict";var pMe=MS(),mMe=Dj(),orr=mMe([pMe("%String.prototype.indexOf%")]);hMe.exports=function(e,r){var n=pMe(e,!!r);return typeof n=="function"&&orr(e,".prototype.")>-1?mMe([n]):n}});var SV=E((aqr,AMe)=>{"use strict";var crr=MS(),tC=_V(),urr=eC(),lrr=Vp(),gMe=crr("%Map%",!0),drr=tC("Map.prototype.get",!0),frr=tC("Map.prototype.set",!0),prr=tC("Map.prototype.has",!0),mrr=tC("Map.prototype.delete",!0),hrr=tC("Map.prototype.size",!0);AMe.exports=!!gMe&&function(){var e,r={assert:function(n){if(!r.has(n))throw new lrr("Side channel does not contain "+urr(n))},delete:function(n){if(e){var s=mrr(e,n);return hrr(e)===0&&(e=void 0),s}return!1},get:function(n){if(e)return drr(e,n)},has:function(n){return e?prr(e,n):!1},set:function(n,s){e||(e=new gMe),frr(e,n,s)}};return r}});var xMe=E((oqr,yMe)=>{"use strict";var grr=MS(),Kk=_V(),Arr=eC(),zk=SV(),yrr=Vp(),Xx=grr("%WeakMap%",!0),xrr=Kk("WeakMap.prototype.get",!0),brr=Kk("WeakMap.prototype.set",!0),Err=Kk("WeakMap.prototype.has",!0),_rr=Kk("WeakMap.prototype.delete",!0);yMe.exports=Xx?function(){var e,r,n={assert:function(s){if(!n.has(s))throw new yrr("Side channel does not contain "+Arr(s))},delete:function(s){if(Xx&&s&&(typeof s=="object"||typeof s=="function")){if(e)return _rr(e,s)}else if(zk&&r)return r.delete(s);return!1},get:function(s){return Xx&&s&&(typeof s=="object"||typeof s=="function")&&e?xrr(e,s):r&&r.get(s)},has:function(s){return Xx&&s&&(typeof s=="object"||typeof s=="function")&&e?Err(e,s):!!r&&r.has(s)},set:function(s,i){Xx&&s&&(typeof s=="object"||typeof s=="function")?(e||(e=new Xx),brr(e,s,i)):zk&&(r||(r=zk()),r.set(s,i))}};return n}:zk});var EMe=E((cqr,bMe)=>{"use strict";var Srr=Vp(),vrr=eC(),Crr=fMe(),Irr=SV(),Trr=xMe(),wrr=Trr||Irr||Crr;bMe.exports=function(){var e,r={assert:function(n){if(!r.has(n))throw new Srr("Side channel does not contain "+vrr(n))},delete:function(n){return!!e&&e.delete(n)},get:function(n){return e&&e.get(n)},has:function(n){return!!e&&e.has(n)},set:function(n,s){e||(e=wrr()),e.set(n,s)}};return r}});var Yk=E((uqr,_Me)=>{"use strict";var Rrr=String.prototype.replace,Nrr=/%20/g,vV={RFC1738:"RFC1738",RFC3986:"RFC3986"};_Me.exports={default:vV.RFC3986,formatters:{RFC1738:function(t){return Rrr.call(t,Nrr,"+")},RFC3986:function(t){return String(t)}},RFC1738:vV.RFC1738,RFC3986:vV.RFC3986}});var TV=E((lqr,vMe)=>{"use strict";var Orr=Yk(),CV=Object.prototype.hasOwnProperty,Hh=Array.isArray,Sl=function(){for(var t=[],e=0;e<256;++e)t.push("%"+((e<16?"0":"")+e.toString(16)).toUpperCase());return t}(),Prr=function(e){for(;e.length>1;){var r=e.pop(),n=r.obj[r.prop];if(Hh(n)){for(var s=[],i=0;i=IV?a.slice(c,c+IV):a,l=[],d=0;d=48&&f<=57||f>=65&&f<=90||f>=97&&f<=122||i===Orr.RFC1738&&(f===40||f===41)){l[l.length]=u.charAt(d);continue}if(f<128){l[l.length]=Sl[f];continue}if(f<2048){l[l.length]=Sl[192|f>>6]+Sl[128|f&63];continue}if(f<55296||f>=57344){l[l.length]=Sl[224|f>>12]+Sl[128|f>>6&63]+Sl[128|f&63];continue}d+=1,f=65536+((f&1023)<<10|u.charCodeAt(d)&1023),l[l.length]=Sl[240|f>>18]+Sl[128|f>>12&63]+Sl[128|f>>6&63]+Sl[128|f&63]}o+=l.join("")}return o},Mrr=function(e){for(var r=[{obj:{o:e},prop:"o"}],n=[],s=0;s{"use strict";var IMe=EMe(),Jk=TV(),rC=Yk(),qrr=Object.prototype.hasOwnProperty,TMe={brackets:function(e){return e+"[]"},comma:"comma",indices:function(e,r){return e+"["+r+"]"},repeat:function(e){return e}},vl=Array.isArray,jrr=Array.prototype.push,wMe=function(t,e){jrr.apply(t,vl(e)?e:[e])},Hrr=Date.prototype.toISOString,CMe=rC.default,Ds={addQueryPrefix:!1,allowDots:!1,allowEmptyArrays:!1,arrayFormat:"indices",charset:"utf-8",charsetSentinel:!1,commaRoundTrip:!1,delimiter:"&",encode:!0,encodeDotInKeys:!1,encoder:Jk.encode,encodeValuesOnly:!1,filter:void 0,format:CMe,formatter:rC.formatters[CMe],indices:!1,serializeDate:function(e){return Hrr.call(e)},skipNulls:!1,strictNullHandling:!1},Qrr=function(e){return typeof e=="string"||typeof e=="number"||typeof e=="boolean"||typeof e=="symbol"||typeof e=="bigint"},wV={},Grr=function t(e,r,n,s,i,a,o,c,u,l,d,f,p,m,h,A,g,b){for(var y=e,x=b,v=0,C=!1;(x=x.get(wV))!==void 0&&!C;){var R=x.get(e);if(v+=1,typeof R<"u"){if(R===v)throw new RangeError("Cyclic object value");C=!0}typeof x.get(wV)>"u"&&(v=0)}if(typeof l=="function"?y=l(r,y):y instanceof Date?y=p(y):n==="comma"&&vl(y)&&(y=Jk.maybeMap(y,function(J){return J instanceof Date?p(J):J})),y===null){if(a)return u&&!A?u(r,Ds.encoder,g,"key",m):r;y=""}if(Qrr(y)||Jk.isBuffer(y)){if(u){var w=A?r:u(r,Ds.encoder,g,"key",m);return[h(w)+"="+h(u(y,Ds.encoder,g,"value",m))]}return[h(r)+"="+h(String(y))]}var N=[];if(typeof y>"u")return N;var P;if(n==="comma"&&vl(y))A&&u&&(y=Jk.maybeMap(y,u)),P=[{value:y.length>0?y.join(",")||null:void 0}];else if(vl(l))P=l;else{var L=Object.keys(y);P=d?L.sort(d):L}var M=c?String(r).replace(/\./g,"%2E"):String(r),k=s&&vl(y)&&y.length===1?M+"[]":M;if(i&&vl(y)&&y.length===0)return k+"[]";for(var B=0;B"u"?e.encodeDotInKeys===!0?!0:Ds.allowDots:!!e.allowDots;return{addQueryPrefix:typeof e.addQueryPrefix=="boolean"?e.addQueryPrefix:Ds.addQueryPrefix,allowDots:o,allowEmptyArrays:typeof e.allowEmptyArrays=="boolean"?!!e.allowEmptyArrays:Ds.allowEmptyArrays,arrayFormat:a,charset:r,charsetSentinel:typeof e.charsetSentinel=="boolean"?e.charsetSentinel:Ds.charsetSentinel,commaRoundTrip:!!e.commaRoundTrip,delimiter:typeof e.delimiter>"u"?Ds.delimiter:e.delimiter,encode:typeof e.encode=="boolean"?e.encode:Ds.encode,encodeDotInKeys:typeof e.encodeDotInKeys=="boolean"?e.encodeDotInKeys:Ds.encodeDotInKeys,encoder:typeof e.encoder=="function"?e.encoder:Ds.encoder,encodeValuesOnly:typeof e.encodeValuesOnly=="boolean"?e.encodeValuesOnly:Ds.encodeValuesOnly,filter:i,format:n,formatter:s,serializeDate:typeof e.serializeDate=="function"?e.serializeDate:Ds.serializeDate,skipNulls:typeof e.skipNulls=="boolean"?e.skipNulls:Ds.skipNulls,sort:typeof e.sort=="function"?e.sort:null,strictNullHandling:typeof e.strictNullHandling=="boolean"?e.strictNullHandling:Ds.strictNullHandling}};RMe.exports=function(t,e){var r=t,n=Vrr(e),s,i;typeof n.filter=="function"?(i=n.filter,r=i("",r)):vl(n.filter)&&(i=n.filter,s=i);var a=[];if(typeof r!="object"||r===null)return"";var o=TMe[n.arrayFormat],c=o==="comma"&&n.commaRoundTrip;s||(s=Object.keys(r)),n.sort&&s.sort(n.sort);for(var u=IMe(),l=0;l0?m+p:""}});var kMe=E((fqr,DMe)=>{"use strict";var Qh=TV(),RV=Object.prototype.hasOwnProperty,OMe=Array.isArray,Zn={allowDots:!1,allowEmptyArrays:!1,allowPrototypes:!1,allowSparse:!1,arrayLimit:20,charset:"utf-8",charsetSentinel:!1,comma:!1,decodeDotInKeys:!1,decoder:Qh.decode,delimiter:"&",depth:5,duplicates:"combine",ignoreQueryPrefix:!1,interpretNumericEntities:!1,parameterLimit:1e3,parseArrays:!0,plainObjects:!1,strictDepth:!1,strictNullHandling:!1,throwOnLimitExceeded:!1},zrr=function(t){return t.replace(/&#(\d+);/g,function(e,r){return String.fromCharCode(parseInt(r,10))})},PMe=function(t,e,r){if(t&&typeof t=="string"&&e.comma&&t.indexOf(",")>-1)return t.split(",");if(e.throwOnLimitExceeded&&r>=e.arrayLimit)throw new RangeError("Array limit exceeded. Only "+e.arrayLimit+" element"+(e.arrayLimit===1?"":"s")+" allowed in an array.");return t},Krr="utf8=%26%2310003%3B",Yrr="utf8=%E2%9C%93",Jrr=function(e,r){var n={__proto__:null},s=r.ignoreQueryPrefix?e.replace(/^\?/,""):e;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&&(m=OMe(m)?[m]:m);var h=RV.call(n,p);h&&r.duplicates==="combine"?n[p]=Qh.combine(n[p],m):(!h||r.duplicates==="last")&&(n[p]=m)}return n},Xrr=function(t,e,r,n){var s=0;if(t.length>0&&t[t.length-1]==="[]"){var i=t.slice(0,-1).join("");s=Array.isArray(e)&&e[i]?e[i].length:0}for(var a=n?e:PMe(e,r,s),o=t.length-1;o>=0;--o){var c,u=t[o];if(u==="[]"&&r.parseArrays)c=r.allowEmptyArrays&&(a===""||r.strictNullHandling&&a===null)?[]:Qh.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},Zrr=function(e,r,n,s){if(e){var i=n.allowDots?e.replace(/\.([^.[]+)/g,"[$1]"):e,a=/(\[[^[\]]*])/,o=/(\[[^[\]]*])/g,c=n.depth>0&&a.exec(i),u=c?i.slice(0,c.index):i,l=[];if(u){if(!n.plainObjects&&RV.call(Object.prototype,u)&&!n.allowPrototypes)return;l.push(u)}for(var d=0;n.depth>0&&(c=o.exec(i))!==null&&d"u"?Zn.charset:e.charset,n=typeof e.duplicates>"u"?Zn.duplicates:e.duplicates;if(n!=="combine"&&n!=="first"&&n!=="last")throw new TypeError("The duplicates option must be either combine, first, or last");var s=typeof e.allowDots>"u"?e.decodeDotInKeys===!0?!0:Zn.allowDots:!!e.allowDots;return{allowDots:s,allowEmptyArrays:typeof e.allowEmptyArrays=="boolean"?!!e.allowEmptyArrays:Zn.allowEmptyArrays,allowPrototypes:typeof e.allowPrototypes=="boolean"?e.allowPrototypes:Zn.allowPrototypes,allowSparse:typeof e.allowSparse=="boolean"?e.allowSparse:Zn.allowSparse,arrayLimit:typeof e.arrayLimit=="number"?e.arrayLimit:Zn.arrayLimit,charset:r,charsetSentinel:typeof e.charsetSentinel=="boolean"?e.charsetSentinel:Zn.charsetSentinel,comma:typeof e.comma=="boolean"?e.comma:Zn.comma,decodeDotInKeys:typeof e.decodeDotInKeys=="boolean"?e.decodeDotInKeys:Zn.decodeDotInKeys,decoder:typeof e.decoder=="function"?e.decoder:Zn.decoder,delimiter:typeof e.delimiter=="string"||Qh.isRegExp(e.delimiter)?e.delimiter:Zn.delimiter,depth:typeof e.depth=="number"||e.depth===!1?+e.depth:Zn.depth,duplicates:n,ignoreQueryPrefix:e.ignoreQueryPrefix===!0,interpretNumericEntities:typeof e.interpretNumericEntities=="boolean"?e.interpretNumericEntities:Zn.interpretNumericEntities,parameterLimit:typeof e.parameterLimit=="number"?e.parameterLimit:Zn.parameterLimit,parseArrays:e.parseArrays!==!1,plainObjects:typeof e.plainObjects=="boolean"?e.plainObjects:Zn.plainObjects,strictDepth:typeof e.strictDepth=="boolean"?!!e.strictDepth:Zn.strictDepth,strictNullHandling:typeof e.strictNullHandling=="boolean"?e.strictNullHandling:Zn.strictNullHandling,throwOnLimitExceeded:typeof e.throwOnLimitExceeded=="boolean"?e.throwOnLimitExceeded:!1}};DMe.exports=function(t,e){var r=enr(e);if(t===""||t===null||typeof t>"u")return r.plainObjects?{__proto__:null}:{};for(var n=typeof t=="string"?Jrr(t,r):t,s=r.plainObjects?{__proto__:null}:{},i=Object.keys(n),a=0;a{"use strict";var tnr=NMe(),rnr=kMe(),nnr=Yk();LMe.exports={formats:nnr,parse:rnr,stringify:tnr}});var NV=E((BMe,Xk)=>{(function(t){"use strict";var e,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 p(v){var C,R,w,N=ue.prototype={constructor:ue,toString:null,valueOf:null},P=new ue(1),L=20,M=4,k=-7,B=21,Z=-1e7,W=1e7,F=!1,V=1,j=0,J={prefix:"",groupSize:3,secondaryGroupSize:0,groupSeparator:",",decimalSeparator:".",fractionGroupSize:0,fractionGroupSeparator:"\xA0",suffix:""},se="0123456789abcdefghijklmnopqrstuvwxyz",oe=!0;function ue(U,G){var z,q,H,ee,ne,re,X,ie,ce=this;if(!(ce instanceof ue))return new ue(U,G);if(G==null){if(U&&U._isBigNumber===!0){ce.s=U.s,!U.c||U.e>W?ce.c=ce.e=null:U.e=10;ne/=10,ee++);ee>W?ce.c=ce.e=null:(ce.e=ee,ce.c=[U]);return}ie=String(U)}else{if(!r.test(ie=String(U)))return w(ce,ie,re);ce.s=ie.charCodeAt(0)==45?(ie=ie.slice(1),-1):1}(ee=ie.indexOf("."))>-1&&(ie=ie.replace(".","")),(ne=ie.search(/e/i))>0?(ee<0&&(ee=ne),ee+=+ie.slice(ne+1),ie=ie.substring(0,ne)):ee<0&&(ee=ie.length)}else{if(g(G,2,se.length,"Base"),G==10&&oe)return ce=new ue(U),Fe(ce,L+ce.e+1,M);if(ie=String(U),re=typeof U=="number"){if(U*0!=0)return w(ce,ie,re,G);if(ce.s=1/U<0?(ie=ie.slice(1),-1):1,ue.DEBUG&&ie.replace(/^0\.0*|\./,"").length>15)throw Error(a+U)}else ce.s=ie.charCodeAt(0)===45?(ie=ie.slice(1),-1):1;for(z=se.slice(0,G),ee=ne=0,X=ie.length;neee){ee=X;continue}}else if(!H&&(ie==ie.toUpperCase()&&(ie=ie.toLowerCase())||ie==ie.toLowerCase()&&(ie=ie.toUpperCase()))){H=!0,ne=-1,ee=0;continue}return w(ce,String(U),re,G)}re=!1,ie=R(ie,G,10,ce.s),(ee=ie.indexOf("."))>-1?ie=ie.replace(".",""):ee=ie.length}for(ne=0;ie.charCodeAt(ne)===48;ne++);for(X=ie.length;ie.charCodeAt(--X)===48;);if(ie=ie.slice(ne,++X)){if(X-=ne,re&&ue.DEBUG&&X>15&&(U>u||U!==s(U)))throw Error(a+ce.s*U);if((ee=ee-ne-1)>W)ce.c=ce.e=null;else if(ee=-f&&H<=f&&H===s(H)){if(q[0]===0){if(H===0&&q.length===1)return!0;break e}if(G=(H+1)%c,G<1&&(G+=c),String(q[0]).length==G){for(G=0;G=o||z!==s(z))break e;if(z!==0)return!0}}}else if(q===null&&H===null&&(ee===null||ee===1||ee===-1))return!0;throw Error(i+"Invalid BigNumber: "+U)},ue.maximum=ue.max=function(){return we(arguments,-1)},ue.minimum=ue.min=function(){return we(arguments,1)},ue.random=function(){var U=9007199254740992,G=Math.random()*U&2097151?function(){return s(Math.random()*U)}:function(){return(Math.random()*1073741824|0)*8388608+(Math.random()*8388608|0)};return function(z){var q,H,ee,ne,re,X=0,ie=[],ce=new ue(P);if(z==null?z=L:g(z,0,f),ne=n(z/c),F)if(crypto.getRandomValues){for(q=crypto.getRandomValues(new Uint32Array(ne*=2));X>>11),re>=9e15?(H=crypto.getRandomValues(new Uint32Array(2)),q[X]=H[0],q[X+1]=H[1]):(ie.push(re%1e14),X+=2);X=ne/2}else if(crypto.randomBytes){for(q=crypto.randomBytes(ne*=7);X=9e15?crypto.randomBytes(7).copy(q,X):(ie.push(re%1e14),X+=7);X=ne/7}else throw F=!1,Error(i+"crypto unavailable");if(!F)for(;X=10;re/=10,X++);XH-1&&(re[ne+1]==null&&(re[ne+1]=0),re[ne+1]+=re[ne]/H|0,re[ne]%=H)}return re.reverse()}return function(z,q,H,ee,ne){var re,X,ie,ce,fe,Ne,Pe,Ue,Ke=z.indexOf("."),Ye=L,Ze=M;for(Ke>=0&&(ce=j,j=0,z=z.replace(".",""),Ue=new ue(q),Ne=Ue.pow(z.length-Ke),j=ce,Ue.c=G(x(h(Ne.c),Ne.e,"0"),10,H,U),Ue.e=Ue.c.length),Pe=G(z,q,H,ne?(re=se,U):(re=U,se)),ie=ce=Pe.length;Pe[--ce]==0;Pe.pop());if(!Pe[0])return re.charAt(0);if(Ke<0?--ie:(Ne.c=Pe,Ne.e=ie,Ne.s=ee,Ne=C(Ne,Ue,Ye,Ze,H),Pe=Ne.c,fe=Ne.r,ie=Ne.e),X=ie+Ye+1,Ke=Pe[X],ce=H/2,fe=fe||X<0||Pe[X+1]!=null,fe=Ze<4?(Ke!=null||fe)&&(Ze==0||Ze==(Ne.s<0?3:2)):Ke>ce||Ke==ce&&(Ze==4||fe||Ze==6&&Pe[X-1]&1||Ze==(Ne.s<0?8:7)),X<1||!Pe[0])z=fe?x(re.charAt(1),-Ye,re.charAt(0)):re.charAt(0);else{if(Pe.length=X,fe)for(--H;++Pe[--X]>H;)Pe[X]=0,X||(++ie,Pe=[1].concat(Pe));for(ce=Pe.length;!Pe[--ce];);for(Ke=0,z="";Ke<=ce;z+=re.charAt(Pe[Ke++]));z=x(z,ie,re.charAt(0))}return z}}(),C=function(){function U(q,H,ee){var ne,re,X,ie,ce=0,fe=q.length,Ne=H%d,Pe=H/d|0;for(q=q.slice();fe--;)X=q[fe]%d,ie=q[fe]/d|0,ne=Pe*X+ie*Ne,re=Ne*X+ne%d*d+ce,ce=(re/ee|0)+(ne/d|0)+Pe*ie,q[fe]=re%ee;return ce&&(q=[ce].concat(q)),q}function G(q,H,ee,ne){var re,X;if(ee!=ne)X=ee>ne?1:-1;else for(re=X=0;reH[re]?1:-1;break}return X}function z(q,H,ee,ne){for(var re=0;ee--;)q[ee]-=re,re=q[ee]1;q.splice(0,1));}return function(q,H,ee,ne,re){var X,ie,ce,fe,Ne,Pe,Ue,Ke,Ye,Ze,nt,ct,tt,Dt,lt,De,Je,ft=q.s==H.s?1:-1,rt=q.c,bt=H.c;if(!rt||!rt[0]||!bt||!bt[0])return new ue(!q.s||!H.s||(rt?bt&&rt[0]==bt[0]:!bt)?NaN:rt&&rt[0]==0||!bt?ft*0:ft/0);for(Ke=new ue(ft),Ye=Ke.c=[],ie=q.e-H.e,ft=ee+ie+1,re||(re=o,ie=m(q.e/c)-m(H.e/c),ft=ft/c|0),ce=0;bt[ce]==(rt[ce]||0);ce++);if(bt[ce]>(rt[ce]||0)&&ie--,ft<0)Ye.push(1),fe=!0;else{for(Dt=rt.length,De=bt.length,ce=0,ft+=2,Ne=s(re/(bt[0]+1)),Ne>1&&(bt=U(bt,Ne,re),rt=U(rt,Ne,re),De=bt.length,Dt=rt.length),tt=De,Ze=rt.slice(0,De),nt=Ze.length;nt=re/2&<++;do{if(Ne=0,X=G(bt,Ze,De,nt),X<0){if(ct=Ze[0],De!=nt&&(ct=ct*re+(Ze[1]||0)),Ne=s(ct/lt),Ne>1)for(Ne>=re&&(Ne=re-1),Pe=U(bt,Ne,re),Ue=Pe.length,nt=Ze.length;G(Pe,Ze,Ue,nt)==1;)Ne--,z(Pe,De=10;ft/=10,ce++);Fe(Ke,ee+(Ke.e=ce+ie*c-1)+1,ne,fe)}else Ke.e=ie,Ke.r=+fe;return Ke}}();function Ce(U,G,z,q){var H,ee,ne,re,X;if(z==null?z=M:g(z,0,8),!U.c)return U.toString();if(H=U.c[0],ne=U.e,G==null)X=h(U.c),X=q==1||q==2&&(ne<=k||ne>=B)?y(X,ne):x(X,ne,"0");else if(U=Fe(new ue(U),G,z),ee=U.e,X=h(U.c),re=X.length,q==1||q==2&&(G<=ee||ee<=k)){for(;rene),X=x(X,ee,"0"),ee+1>re){if(--G>0)for(X+=".";G--;X+="0");}else if(G+=ee-re,G>0)for(ee+1==re&&(X+=".");G--;X+="0");return U.s<0&&H?"-"+X:X}function we(U,G){for(var z,q,H=1,ee=new ue(U[0]);H=10;H/=10,q++);return(z=q+z*c-1)>W?U.c=U.e=null:z=10;re/=10,H++);if(ee=G-H,ee<0)ee+=c,ne=G,X=fe[ie=0],ce=s(X/Ne[H-ne-1]%10);else if(ie=n((ee+1)/c),ie>=fe.length)if(q){for(;fe.length<=ie;fe.push(0));X=ce=0,H=1,ee%=c,ne=ee-c+1}else break e;else{for(X=re=fe[ie],H=1;re>=10;re/=10,H++);ee%=c,ne=ee-c+H,ce=ne<0?0:s(X/Ne[H-ne-1]%10)}if(q=q||G<0||fe[ie+1]!=null||(ne<0?X:X%Ne[H-ne-1]),q=z<4?(ce||q)&&(z==0||z==(U.s<0?3:2)):ce>5||ce==5&&(z==4||q||z==6&&(ee>0?ne>0?X/Ne[H-ne]:0:fe[ie-1])%10&1||z==(U.s<0?8:7)),G<1||!fe[0])return fe.length=0,q?(G-=U.e+1,fe[0]=Ne[(c-G%c)%c],U.e=-G||0):fe[0]=U.e=0,U;if(ee==0?(fe.length=ie,re=1,ie--):(fe.length=ie+1,re=Ne[c-ee],fe[ie]=ne>0?s(X/Ne[H-ne]%Ne[ne])*re:0),q)for(;;)if(ie==0){for(ee=1,ne=fe[0];ne>=10;ne/=10,ee++);for(ne=fe[0]+=re,re=1;ne>=10;ne/=10,re++);ee!=re&&(U.e++,fe[0]==o&&(fe[0]=1));break}else{if(fe[ie]+=re,fe[ie]!=o)break;fe[ie--]=0,re=1}for(ee=fe.length;fe[--ee]===0;fe.pop());}U.e>W?U.c=U.e=null:U.e=B?y(G,z):x(G,z,"0"),U.s<0?"-"+G:G)}return N.absoluteValue=N.abs=function(){var U=new ue(this);return U.s<0&&(U.s=1),U},N.comparedTo=function(U,G){return A(this,new ue(U,G))},N.decimalPlaces=N.dp=function(U,G){var z,q,H,ee=this;if(U!=null)return g(U,0,f),G==null?G=M:g(G,0,8),Fe(new ue(ee),U+ee.e+1,G);if(!(z=ee.c))return null;if(q=((H=z.length-1)-m(this.e/c))*c,H=z[H])for(;H%10==0;H/=10,q--);return q<0&&(q=0),q},N.dividedBy=N.div=function(U,G){return C(this,new ue(U,G),L,M)},N.dividedToIntegerBy=N.idiv=function(U,G){return C(this,new ue(U,G),0,1)},N.exponentiatedBy=N.pow=function(U,G){var z,q,H,ee,ne,re,X,ie,ce,fe=this;if(U=new ue(U),U.c&&!U.isInteger())throw Error(i+"Exponent not an integer: "+_e(U));if(G!=null&&(G=new ue(G)),re=U.e>14,!fe.c||!fe.c[0]||fe.c[0]==1&&!fe.e&&fe.c.length==1||!U.c||!U.c[0])return ce=new ue(Math.pow(+_e(fe),re?U.s*(2-b(U)):+_e(U))),G?ce.mod(G):ce;if(X=U.s<0,G){if(G.c?!G.c[0]:!G.s)return new ue(NaN);q=!X&&fe.isInteger()&&G.isInteger(),q&&(fe=fe.mod(G))}else{if(U.e>9&&(fe.e>0||fe.e<-1||(fe.e==0?fe.c[0]>1||re&&fe.c[1]>=24e7:fe.c[0]<8e13||re&&fe.c[0]<=9999975e7)))return ee=fe.s<0&&b(U)?-0:0,fe.e>-1&&(ee=1/ee),new ue(X?1/ee:ee);j&&(ee=n(j/c+2))}for(re?(z=new ue(.5),X&&(U.s=1),ie=b(U)):(H=Math.abs(+_e(U)),ie=H%2),ce=new ue(P);;){if(ie){if(ce=ce.times(fe),!ce.c)break;ee?ce.c.length>ee&&(ce.c.length=ee):q&&(ce=ce.mod(G))}if(H){if(H=s(H/2),H===0)break;ie=H%2}else if(U=U.times(z),Fe(U,U.e+1,1),U.e>14)ie=b(U);else{if(H=+_e(U),H===0)break;ie=H%2}fe=fe.times(fe),ee?fe.c&&fe.c.length>ee&&(fe.c.length=ee):q&&(fe=fe.mod(G))}return q?ce:(X&&(ce=P.div(ce)),G?ce.mod(G):ee?Fe(ce,j,M,ne):ce)},N.integerValue=function(U){var G=new ue(this);return U==null?U=M:g(U,0,8),Fe(G,G.e+1,U)},N.isEqualTo=N.eq=function(U,G){return A(this,new ue(U,G))===0},N.isFinite=function(){return!!this.c},N.isGreaterThan=N.gt=function(U,G){return A(this,new ue(U,G))>0},N.isGreaterThanOrEqualTo=N.gte=function(U,G){return(G=A(this,new ue(U,G)))===1||G===0},N.isInteger=function(){return!!this.c&&m(this.e/c)>this.c.length-2},N.isLessThan=N.lt=function(U,G){return A(this,new ue(U,G))<0},N.isLessThanOrEqualTo=N.lte=function(U,G){return(G=A(this,new ue(U,G)))===-1||G===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(U,G){var z,q,H,ee,ne=this,re=ne.s;if(U=new ue(U,G),G=U.s,!re||!G)return new ue(NaN);if(re!=G)return U.s=-G,ne.plus(U);var X=ne.e/c,ie=U.e/c,ce=ne.c,fe=U.c;if(!X||!ie){if(!ce||!fe)return ce?(U.s=-G,U):new ue(fe?ne:NaN);if(!ce[0]||!fe[0])return fe[0]?(U.s=-G,U):new ue(ce[0]?ne:M==3?-0:0)}if(X=m(X),ie=m(ie),ce=ce.slice(),re=X-ie){for((ee=re<0)?(re=-re,H=ce):(ie=X,H=fe),H.reverse(),G=re;G--;H.push(0));H.reverse()}else for(q=(ee=(re=ce.length)<(G=fe.length))?re:G,re=G=0;G0)for(;G--;ce[z++]=0);for(G=o-1;q>re;){if(ce[--q]=0;){for(z=0,Ne=ct[H]%Ye,Pe=ct[H]/Ye|0,ne=X,ee=H+ne;ee>H;)ie=nt[--ne]%Ye,ce=nt[ne]/Ye|0,re=Pe*ie+ce*Ne,ie=Ne*ie+re%Ye*Ye+Ue[ee]+z,z=(ie/Ke|0)+(re/Ye|0)+Pe*ce,Ue[ee--]=ie%Ke;Ue[ee]=z}return z?++q:Ue.splice(0,1),qe(U,Ue,q)},N.negated=function(){var U=new ue(this);return U.s=-U.s||null,U},N.plus=function(U,G){var z,q=this,H=q.s;if(U=new ue(U,G),G=U.s,!H||!G)return new ue(NaN);if(H!=G)return U.s=-G,q.minus(U);var ee=q.e/c,ne=U.e/c,re=q.c,X=U.c;if(!ee||!ne){if(!re||!X)return new ue(H/0);if(!re[0]||!X[0])return X[0]?U:new ue(re[0]?q:H*0)}if(ee=m(ee),ne=m(ne),re=re.slice(),H=ee-ne){for(H>0?(ne=ee,z=X):(H=-H,z=re),z.reverse();H--;z.push(0));z.reverse()}for(H=re.length,G=X.length,H-G<0&&(z=X,X=re,re=z,G=H),H=0;G;)H=(re[--G]=re[G]+X[G]+H)/o|0,re[G]=o===re[G]?0:re[G]%o;return H&&(re=[H].concat(re),++ne),qe(U,re,ne)},N.precision=N.sd=function(U,G){var z,q,H,ee=this;if(U!=null&&U!==!!U)return g(U,1,f),G==null?G=M:g(G,0,8),Fe(new ue(ee),U,G);if(!(z=ee.c))return null;if(H=z.length-1,q=H*c+1,H=z[H]){for(;H%10==0;H/=10,q--);for(H=z[0];H>=10;H/=10,q++);}return U&&ee.e+1>q&&(q=ee.e+1),q},N.shiftedBy=function(U){return g(U,-u,u),this.times("1e"+U)},N.squareRoot=N.sqrt=function(){var U,G,z,q,H,ee=this,ne=ee.c,re=ee.s,X=ee.e,ie=L+4,ce=new ue("0.5");if(re!==1||!ne||!ne[0])return new ue(!re||re<0&&(!ne||ne[0])?NaN:ne?ee:1/0);if(re=Math.sqrt(+_e(ee)),re==0||re==1/0?(G=h(ne),(G.length+X)%2==0&&(G+="0"),re=Math.sqrt(+G),X=m((X+1)/2)-(X<0||X%2),re==1/0?G="5e"+X:(G=re.toExponential(),G=G.slice(0,G.indexOf("e")+1)+X),z=new ue(G)):z=new ue(re+""),z.c[0]){for(X=z.e,re=X+ie,re<3&&(re=0);;)if(H=z,z=ce.times(H.plus(C(ee,H,ie,1))),h(H.c).slice(0,re)===(G=h(z.c)).slice(0,re))if(z.e0&&Ue>0){for(ee=Ue%re||re,ce=Pe.substr(0,ee);ee0&&(ce+=ie+Pe.slice(ee)),Ne&&(ce="-"+ce)}q=fe?ce+(z.decimalSeparator||"")+((X=+z.fractionGroupSize)?fe.replace(new RegExp("\\d{"+X+"}\\B","g"),"$&"+(z.fractionGroupSeparator||"")):fe):ce}return(z.prefix||"")+q+(z.suffix||"")},N.toFraction=function(U){var G,z,q,H,ee,ne,re,X,ie,ce,fe,Ne,Pe=this,Ue=Pe.c;if(U!=null&&(re=new ue(U),!re.isInteger()&&(re.c||re.s!==1)||re.lt(P)))throw Error(i+"Argument "+(re.isInteger()?"out of range: ":"not an integer: ")+_e(re));if(!Ue)return new ue(Pe);for(G=new ue(P),ie=z=new ue(P),q=X=new ue(P),Ne=h(Ue),ee=G.e=Ne.length-Pe.e-1,G.c[0]=l[(ne=ee%c)<0?c+ne:ne],U=!U||re.comparedTo(G)>0?ee>0?G:ie:re,ne=W,W=1/0,re=new ue(Ne),X.c[0]=0;ce=C(re,G,0,1),H=z.plus(ce.times(q)),H.comparedTo(U)!=1;)z=q,q=H,ie=X.plus(ce.times(H=ie)),X=H,G=re.minus(ce.times(H=G)),re=H;return H=C(U.minus(z),q,0,1),X=X.plus(H.times(ie)),z=z.plus(H.times(q)),X.s=ie.s=Pe.s,ee=ee*2,fe=C(ie,q,ee,M).minus(Pe).abs().comparedTo(C(X,z,ee,M).minus(Pe).abs())<1?[ie,q]:[X,z],W=ne,fe},N.toNumber=function(){return+_e(this)},N.toPrecision=function(U,G){return U!=null&&g(U,1,f),Ce(this,U,G,2)},N.toString=function(U){var G,z=this,q=z.s,H=z.e;return H===null?q?(G="Infinity",q<0&&(G="-"+G)):G="NaN":(U==null?G=H<=k||H>=B?y(h(z.c),H):x(h(z.c),H,"0"):U===10&&oe?(z=Fe(new ue(z),L+H+1,M),G=x(h(z.c),z.e,"0")):(g(U,2,se.length,"Base"),G=R(x(h(z.c),H,"0"),10,U,q,!0)),q<0&&z.c[0]&&(G="-"+G)),G},N.valueOf=N.toJSON=function(){return _e(this)},N._isBigNumber=!0,v!=null&&ue.set(v),ue}function m(v){var C=v|0;return v>0||v===C?C:C-1}function h(v){for(var C,R,w=1,N=v.length,P=v[0]+"";wB^R?1:-1;for(M=(k=N.length)<(B=P.length)?k:B,L=0;LP[L]^R?1:-1;return k==B?0:k>B^R?1:-1}function g(v,C,R,w){if(vR||v!==s(v))throw Error(i+(w||"Argument")+(typeof v=="number"?vR?" out of range: ":" not an integer: ":" not a primitive number: ")+String(v))}function b(v){var C=v.c.length-1;return m(v.e/c)==C&&v.c[C]%2!=0}function y(v,C){return(v.length>1?v.charAt(0)+"."+v.slice(1):v)+(C<0?"e":"e+")+C}function x(v,C,R){var w,N;if(C<0){for(N=R+".";++C;N+=R);v=N+v}else if(w=v.length,++C>w){for(N=R,C-=w;--C;N+=R);v+=N}else C{var MMe=NV(),WMe=$Me.exports;(function(){"use strict";function t(u){return u<10?"0"+u:u}var e=/[\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,p,m,h=n,A,g=l[u],b=g!=null&&(g instanceof MMe||MMe.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 b?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,A=[],Object.prototype.toString.apply(g)==="[object Array]"){for(m=g.length,d=0;d{var uar="\x1B[47m",lar="\x1B[40m",JK="\x1B[37m",XK="\x1B[30m",ug="\x1B[0m",dar=uar+XK,far=lar+JK,par=function(t,e,r){return{"00":ug+" "+t,"01":ug+e+"\u2584"+t,"02":ug+r+"\u2584"+t,10:ug+e+"\u2580"+t,11:" ",12:"\u2584",20:ug+r+"\u2580"+t,21:"\u2580",22:"\u2588"}},rMe=function(t,e,r,n){let s=e+1;if(r>=s||n>=s||n<-1||r<-1)return"0";if(r>=e||n>=e||n<0||r<0)return"1";let i=n*e+r;return t[i]?"2":"1"},nMe=function(t,e,r,n){return rMe(t,e,r,n)+rMe(t,e,r,n+1)};sMe.render=function(t,e,r){let n=t.modules.size,s=t.modules.data,i=!!(e&&e.inverse),a=e&&e.inverse?far:dar,u=par(a,i?XK:JK,i?JK:XK),l=ug+` +`+a,d=a;for(let f=-1;f{var mar=tMe(),har=iMe();aMe.render=function(t,e,r){return e&&e.small?har.render(t,e,r):mar.render(t,e,r)}});var eV=_(uMe=>{var gar=KI();function cMe(t,e){let r=t.a/255,n=e+'="'+t.hex+'"';return r<1?n+" "+e+'-opacity="'+r.toFixed(2).slice(1)+'"':n}function ZK(t,e,r){let n=t+e;return typeof r<"u"&&(n+=" "+r),n}function yar(t,e,r){let n="",s=0,i=!1,a=0;for(let o=0;o0&&c>0&&t[o-1]||(n+=i?ZK("M",c+r,.5+u+r):ZK("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 lMe=_(oB=>{var Aar=eV();oB.render=Aar.render;oB.renderToFile=function(e,r,n,s){typeof s>"u"&&(s=n,n=void 0);let i=require("fs"),o=''+oB.render(r,n);i.writeFile(e,o,s)}});var dMe=_(cB=>{var tV=KI();function xar(t,e,r){t.clearRect(0,0,e.width,e.height),e.style||(e.style={}),e.height=r,e.width=r,e.style.height=r+"px",e.style.width=r+"px"}function bar(){try{return document.createElement("canvas")}catch{throw new Error("You need to specify a canvas element")}}cB.render=function(e,r,n){let s=n,i=r;typeof s>"u"&&(!r||!r.getContext)&&(s=r,r=void 0),r||(i=bar()),s=tV.getOptions(s);let a=tV.getImageWidth(e.modules.size,s),o=i.getContext("2d"),c=o.createImageData(a,a);return tV.qrToImageData(c.data,e,s),xar(o,i,a),o.putImageData(c,0,0),i};cB.renderToDataURL=function(e,r,n){let s=n;typeof s>"u"&&(!r||!r.getContext)&&(s=r,r=void 0),s||(s={});let i=cB.render(e,r,s),a=s.type||"image/png",o=s.rendererOpts||{};return i.toDataURL(a,o.quality)}});var pMe=_(VI=>{var _ar=hK(),rV=DK(),fMe=dMe(),Ear=eV();function nV(t,e,r,n,s){let i=[].slice.call(arguments,1),a=i.length,o=typeof i[a-1]=="function";if(!o&&!_ar())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=e,e=n=void 0):a===3&&(e.getContext&&typeof s>"u"?(s=n,n=void 0):(s=n,n=r,r=e,e=void 0))}else{if(a<1)throw new Error("Too few arguments provided");return a===1?(r=e,e=n=void 0):a===2&&!e.getContext&&(n=r,r=e,e=void 0),new Promise(function(c,u){try{let l=rV.create(r,n);c(t(l,e,n))}catch(l){u(l)}})}try{let c=rV.create(r,n);s(null,t(c,e,n))}catch(c){s(c)}}VI.create=rV.create;VI.toCanvas=nV.bind(null,fMe.render);VI.toDataURL=nV.bind(null,fMe.renderToDataURL);VI.toString=nV.bind(null,function(t,e,r){return Ear.render(t,r)})});var yMe=_(j0=>{var mMe=hK(),sV=DK(),Sar=X6e(),hMe=Z6e(),Iar=oMe(),gMe=lMe();function YI(t,e,r){if(typeof t>"u")throw new Error("String required as first argument");if(typeof r>"u"&&(r=e,e={}),typeof r!="function")if(mMe())e=r||{},r=null;else throw new Error("Callback required as last argument");return{opts:e,cb:r}}function Car(t){return t.slice((t.lastIndexOf(".")-1>>>0)+2).toLowerCase()}function uB(t){switch(t){case"svg":return gMe;case"txt":case"utf8":return hMe;case"png":case"image/png":default:return Sar}}function Tar(t){switch(t){case"svg":return gMe;case"terminal":return Iar;case"utf8":default:return hMe}}function JI(t,e,r){if(!r.cb)return new Promise(function(n,s){try{let i=sV.create(e,r.opts);return t(i,r.opts,function(a,o){return a?s(a):n(o)})}catch(i){s(i)}});try{let n=sV.create(e,r.opts);return t(n,r.opts,r.cb)}catch(n){r.cb(n)}}j0.create=sV.create;j0.toCanvas=pMe().toCanvas;j0.toString=function(e,r,n){let s=YI(e,r,n),i=s.opts?s.opts.type:void 0,a=Tar(i);return JI(a.render,e,s)};j0.toDataURL=function(e,r,n){let s=YI(e,r,n),i=uB(s.opts.type);return JI(i.renderToDataURL,e,s)};j0.toBuffer=function(e,r,n){let s=YI(e,r,n),i=uB(s.opts.type);return JI(i.renderToBuffer,e,s)};j0.toFile=function(e,r,n,s){if(typeof e!="string"||!(typeof r=="string"||typeof r=="object"))throw new Error("Invalid argument");if(arguments.length<3&&!mMe())throw new Error("Too few arguments provided");let i=YI(r,n,s),a=i.opts.type||Car(e),c=uB(a).renderToFile.bind(null,e);return JI(c,r,i)};j0.toFileStream=function(e,r,n){if(arguments.length<2)throw new Error("Too few arguments provided");let s=YI(r,n,e.emit.bind(e,"error")),a=uB("png").renderToFileStream.bind(null,e);JI(a,r,s)}});var Q0=_((tXr,AMe)=>{AMe.exports=yMe()});var UMe=_((fXr,$Me)=>{$Me.exports=require("util").inspect});var sC=_((pXr,aWe)=>{var bV=typeof Map=="function"&&Map.prototype,dV=Object.getOwnPropertyDescriptor&&bV?Object.getOwnPropertyDescriptor(Map.prototype,"size"):null,gB=bV&&dV&&typeof dV.get=="function"?dV.get:null,FMe=bV&&Map.prototype.forEach,_V=typeof Set=="function"&&Set.prototype,fV=Object.getOwnPropertyDescriptor&&_V?Object.getOwnPropertyDescriptor(Set.prototype,"size"):null,yB=_V&&fV&&typeof fV.get=="function"?fV.get:null,qMe=_V&&Set.prototype.forEach,jar=typeof WeakMap=="function"&&WeakMap.prototype,tC=jar?WeakMap.prototype.has:null,Qar=typeof WeakSet=="function"&&WeakSet.prototype,rC=Qar?WeakSet.prototype.has:null,Har=typeof WeakRef=="function"&&WeakRef.prototype,jMe=Har?WeakRef.prototype.deref:null,Gar=Boolean.prototype.valueOf,zar=Object.prototype.toString,Kar=Function.prototype.toString,Var=String.prototype.match,EV=String.prototype.slice,H0=String.prototype.replace,Yar=String.prototype.toUpperCase,QMe=String.prototype.toLowerCase,ZMe=RegExp.prototype.test,HMe=Array.prototype.concat,Ll=Array.prototype.join,Jar=Array.prototype.slice,GMe=Math.floor,hV=typeof BigInt=="function"?BigInt.prototype.valueOf:null,pV=Object.getOwnPropertySymbols,gV=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?Symbol.prototype.toString:null,Pb=typeof Symbol=="function"&&typeof Symbol.iterator=="object",nC=typeof Symbol=="function"&&Symbol.toStringTag&&(typeof Symbol.toStringTag===Pb||!0)?Symbol.toStringTag:null,eWe=Object.prototype.propertyIsEnumerable,zMe=(typeof Reflect=="function"?Reflect.getPrototypeOf:Object.getPrototypeOf)||([].__proto__===Array.prototype?function(t){return t.__proto__}:null);function KMe(t,e){if(t===1/0||t===-1/0||t!==t||t&&t>-1e3&&t<1e3||ZMe.call(/e/,e))return e;var r=/[0-9](?=(?:[0-9]{3})+(?![0-9]))/g;if(typeof t=="number"){var n=t<0?-GMe(-t):GMe(t);if(n!==t){var s=String(n),i=EV.call(e,s.length+1);return H0.call(s,r,"$&_")+"."+H0.call(H0.call(i,/([0-9]{3})/g,"$&_"),/_$/,"")}}return H0.call(e,r,"$&_")}var yV=UMe(),VMe=yV.custom,YMe=nWe(VMe)?VMe:null,tWe={__proto__:null,double:'"',single:"'"},Xar={__proto__:null,double:/(["\\])/g,single:/(['\\])/g};aWe.exports=function t(e,r,n,s){var i=r||{};if(bf(i,"quoteStyle")&&!bf(tWe,i.quoteStyle))throw new TypeError('option "quoteStyle" must be "single" or "double"');if(bf(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=bf(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(bf(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(bf(i,"numericSeparator")&&typeof i.numericSeparator!="boolean")throw new TypeError('option "numericSeparator", if provided, must be `true` or `false`');var o=i.numericSeparator;if(typeof e>"u")return"undefined";if(e===null)return"null";if(typeof e=="boolean")return e?"true":"false";if(typeof e=="string")return iWe(e,i);if(typeof e=="number"){if(e===0)return 1/0/e>0?"0":"-0";var c=String(e);return o?KMe(e,c):c}if(typeof e=="bigint"){var u=String(e)+"n";return o?KMe(e,u):u}var l=typeof i.depth>"u"?5:i.depth;if(typeof n>"u"&&(n=0),n>=l&&l>0&&typeof e=="object")return AV(e)?"[Array]":"[Object]";var d=yor(i,n);if(typeof s>"u")s=[];else if(sWe(s,e)>=0)return"[Circular]";function f(D,L,Z){if(L&&(s=Jar.call(s),s.push(L)),Z){var W={depth:i.depth};return bf(i,"quoteStyle")&&(W.quoteStyle=i.quoteStyle),t(D,W,n+1,s)}return t(D,i,n+1,s)}if(typeof e=="function"&&!JMe(e)){var p=oor(e),m=hB(e,f);return"[Function"+(p?": "+p:" (anonymous)")+"]"+(m.length>0?" { "+Ll.call(m,", ")+" }":"")}if(nWe(e)){var h=Pb?H0.call(String(e),/^(Symbol\(.*\))_[^)]*$/,"$1"):gV.call(e);return typeof e=="object"&&!Pb?eC(h):h}if(mor(e)){for(var y="<"+QMe.call(String(e.nodeName)),g=e.attributes||[],b=0;b",y}if(AV(e)){if(e.length===0)return"[]";var x=hB(e,f);return d&&!gor(x)?"["+xV(x,d)+"]":"[ "+Ll.call(x,", ")+" ]"}if(tor(e)){var A=hB(e,f);return!("cause"in Error.prototype)&&"cause"in e&&!eWe.call(e,"cause")?"{ ["+String(e)+"] "+Ll.call(HMe.call("[cause]: "+f(e.cause),A),", ")+" }":A.length===0?"["+String(e)+"]":"{ ["+String(e)+"] "+Ll.call(A,", ")+" }"}if(typeof e=="object"&&a){if(YMe&&typeof e[YMe]=="function"&&yV)return yV(e,{depth:l-n});if(a!=="symbol"&&typeof e.inspect=="function")return e.inspect()}if(cor(e)){var S=[];return FMe&&FMe.call(e,function(D,L){S.push(f(L,e,!0)+" => "+f(D,e))}),XMe("Map",gB.call(e),S,d)}if(dor(e)){var I=[];return qMe&&qMe.call(e,function(D){I.push(f(D,e))}),XMe("Set",yB.call(e),I,d)}if(uor(e))return mV("WeakMap");if(por(e))return mV("WeakSet");if(lor(e))return mV("WeakRef");if(nor(e))return eC(f(Number(e)));if(ior(e))return eC(f(hV.call(e)));if(sor(e))return eC(Gar.call(e));if(ror(e))return eC(f(String(e)));if(typeof window<"u"&&e===window)return"{ [object Window] }";if(typeof globalThis<"u"&&e===globalThis||typeof global<"u"&&e===global)return"{ [object globalThis] }";if(!eor(e)&&!JMe(e)){var R=hB(e,f),w=zMe?zMe(e)===Object.prototype:e instanceof Object||e.constructor===Object,N=e instanceof Object?"":"null prototype",k=!w&&nC&&Object(e)===e&&nC in e?EV.call(G0(e),8,-1):N?"Object":"",B=w||typeof e.constructor!="function"?"":e.constructor.name?e.constructor.name+" ":"",M=B+(k||N?"["+Ll.call(HMe.call([],k||[],N||[]),": ")+"] ":"");return R.length===0?M+"{}":d?M+"{"+xV(R,d)+"}":M+"{ "+Ll.call(R,", ")+" }"}return String(e)};function rWe(t,e,r){var n=r.quoteStyle||e,s=tWe[n];return s+t+s}function Zar(t){return H0.call(String(t),/"/g,""")}function pg(t){return!nC||!(typeof t=="object"&&(nC in t||typeof t[nC]<"u"))}function AV(t){return G0(t)==="[object Array]"&&pg(t)}function eor(t){return G0(t)==="[object Date]"&&pg(t)}function JMe(t){return G0(t)==="[object RegExp]"&&pg(t)}function tor(t){return G0(t)==="[object Error]"&&pg(t)}function ror(t){return G0(t)==="[object String]"&&pg(t)}function nor(t){return G0(t)==="[object Number]"&&pg(t)}function sor(t){return G0(t)==="[object Boolean]"&&pg(t)}function nWe(t){if(Pb)return t&&typeof t=="object"&&t instanceof Symbol;if(typeof t=="symbol")return!0;if(!t||typeof t!="object"||!gV)return!1;try{return gV.call(t),!0}catch{}return!1}function ior(t){if(!t||typeof t!="object"||!hV)return!1;try{return hV.call(t),!0}catch{}return!1}var aor=Object.prototype.hasOwnProperty||function(t){return t in this};function bf(t,e){return aor.call(t,e)}function G0(t){return zar.call(t)}function oor(t){if(t.name)return t.name;var e=Var.call(Kar.call(t),/^function\s*([\w$]+)/);return e?e[1]:null}function sWe(t,e){if(t.indexOf)return t.indexOf(e);for(var r=0,n=t.length;re.maxStringLength){var r=t.length-e.maxStringLength,n="... "+r+" more character"+(r>1?"s":"");return iWe(EV.call(t,0,e.maxStringLength),e)+n}var s=Xar[e.quoteStyle||"single"];s.lastIndex=0;var i=H0.call(H0.call(t,s,"\\$1"),/[\x00-\x1f]/g,hor);return rWe(i,"single",e)}function hor(t){var e=t.charCodeAt(0),r={8:"b",9:"t",10:"n",12:"f",13:"r"}[e];return r?"\\"+r:"\\x"+(e<16?"0":"")+Yar.call(e.toString(16))}function eC(t){return"Object("+t+")"}function mV(t){return t+" { ? }"}function XMe(t,e,r,n){var s=n?xV(r,n):Ll.call(r,", ");return t+" ("+e+") {"+s+"}"}function gor(t){for(var e=0;e=0)return!1;return!0}function yor(t,e){var r;if(t.indent===" ")r=" ";else if(typeof t.indent=="number"&&t.indent>0)r=Ll.call(Array(t.indent+1)," ");else return null;return{base:r,prev:Ll.call(Array(e+1),r)}}function xV(t,e){if(t.length===0)return"";var r=` +`+e.prev+e.base;return r+Ll.call(t,","+r)+` +`+e.prev}function hB(t,e){var r=AV(t),n=[];if(r){n.length=t.length;for(var s=0;s{"use strict";var Aor=sC(),xor=p0(),AB=function(t,e,r){for(var n=t,s;(s=n.next)!=null;n=s)if(s.key===e)return n.next=s.next,r||(s.next=t.next,t.next=s),s},bor=function(t,e){if(t){var r=AB(t,e);return r&&r.value}},_or=function(t,e,r){var n=AB(t,e);n?n.value=r:t.next={key:e,next:t.next,value:r}},Eor=function(t,e){return t?!!AB(t,e):!1},vor=function(t,e){if(t)return AB(t,e,!0)};oWe.exports=function(){var e,r={assert:function(n){if(!r.has(n))throw new xor("Side channel does not contain "+Aor(n))},delete:function(n){var s=e&&e.next,i=vor(e,n);return i&&s&&s===i&&(e=void 0),!!i},get:function(n){return bor(e,n)},has:function(n){return Eor(e,n)},set:function(n,s){e||(e={next:void 0}),_or(e,n,s)}};return r}});var vV=_((hXr,dWe)=>{"use strict";var uWe=jS(),lWe=BH(),Sor=lWe([uWe("%String.prototype.indexOf%")]);dWe.exports=function(e,r){var n=uWe(e,!!r);return typeof n=="function"&&Sor(e,".prototype.")>-1?lWe([n]):n}});var SV=_((gXr,pWe)=>{"use strict";var Ior=jS(),iC=vV(),Cor=sC(),Tor=p0(),fWe=Ior("%Map%",!0),wor=iC("Map.prototype.get",!0),Ror=iC("Map.prototype.set",!0),Nor=iC("Map.prototype.has",!0),Oor=iC("Map.prototype.delete",!0),kor=iC("Map.prototype.size",!0);pWe.exports=!!fWe&&function(){var e,r={assert:function(n){if(!r.has(n))throw new Tor("Side channel does not contain "+Cor(n))},delete:function(n){if(e){var s=Oor(e,n);return kor(e)===0&&(e=void 0),s}return!1},get:function(n){if(e)return wor(e,n)},has:function(n){return e?Nor(e,n):!1},set:function(n,s){e||(e=new fWe),Ror(e,n,s)}};return r}});var hWe=_((yXr,mWe)=>{"use strict";var Por=jS(),bB=vV(),Dor=sC(),xB=SV(),Bor=p0(),Db=Por("%WeakMap%",!0),Lor=bB("WeakMap.prototype.get",!0),Mor=bB("WeakMap.prototype.set",!0),Wor=bB("WeakMap.prototype.has",!0),$or=bB("WeakMap.prototype.delete",!0);mWe.exports=Db?function(){var e,r,n={assert:function(s){if(!n.has(s))throw new Bor("Side channel does not contain "+Dor(s))},delete:function(s){if(Db&&s&&(typeof s=="object"||typeof s=="function")){if(e)return $or(e,s)}else if(xB&&r)return r.delete(s);return!1},get:function(s){return Db&&s&&(typeof s=="object"||typeof s=="function")&&e?Lor(e,s):r&&r.get(s)},has:function(s){return Db&&s&&(typeof s=="object"||typeof s=="function")&&e?Wor(e,s):!!r&&r.has(s)},set:function(s,i){Db&&s&&(typeof s=="object"||typeof s=="function")?(e||(e=new Db),Mor(e,s,i)):xB&&(r||(r=xB()),r.set(s,i))}};return n}:xB});var yWe=_((AXr,gWe)=>{"use strict";var Uor=p0(),For=sC(),qor=cWe(),jor=SV(),Qor=hWe(),Hor=Qor||jor||qor;gWe.exports=function(){var e,r={assert:function(n){if(!r.has(n))throw new Uor("Side channel does not contain "+For(n))},delete:function(n){return!!e&&e.delete(n)},get:function(n){return e&&e.get(n)},has:function(n){return!!e&&e.has(n)},set:function(n,s){e||(e=Hor()),e.set(n,s)}};return r}});var _B=_((xXr,AWe)=>{"use strict";var Gor=String.prototype.replace,zor=/%20/g,IV={RFC1738:"RFC1738",RFC3986:"RFC3986"};AWe.exports={default:IV.RFC3986,formatters:{RFC1738:function(t){return Gor.call(t,zor,"+")},RFC3986:function(t){return String(t)}},RFC1738:IV.RFC1738,RFC3986:IV.RFC3986}});var wV=_((bXr,bWe)=>{"use strict";var Kor=_B(),CV=Object.prototype.hasOwnProperty,mg=Array.isArray,Ml=function(){for(var t=[],e=0;e<256;++e)t.push("%"+((e<16?"0":"")+e.toString(16)).toUpperCase());return t}(),Vor=function(e){for(;e.length>1;){var r=e.pop(),n=r.obj[r.prop];if(mg(n)){for(var s=[],i=0;i=TV?a.slice(c,c+TV):a,l=[],d=0;d=48&&f<=57||f>=65&&f<=90||f>=97&&f<=122||i===Kor.RFC1738&&(f===40||f===41)){l[l.length]=u.charAt(d);continue}if(f<128){l[l.length]=Ml[f];continue}if(f<2048){l[l.length]=Ml[192|f>>6]+Ml[128|f&63];continue}if(f<55296||f>=57344){l[l.length]=Ml[224|f>>12]+Ml[128|f>>6&63]+Ml[128|f&63];continue}d+=1,f=65536+((f&1023)<<10|u.charCodeAt(d)&1023),l[l.length]=Ml[240|f>>18]+Ml[128|f>>12&63]+Ml[128|f>>6&63]+Ml[128|f&63]}o+=l.join("")}return o},ecr=function(e){for(var r=[{obj:{o:e},prop:"o"}],n=[],s=0;s{"use strict";var EWe=yWe(),EB=wV(),aC=_B(),icr=Object.prototype.hasOwnProperty,vWe={brackets:function(e){return e+"[]"},comma:"comma",indices:function(e,r){return e+"["+r+"]"},repeat:function(e){return e}},Wl=Array.isArray,acr=Array.prototype.push,SWe=function(t,e){acr.apply(t,Wl(e)?e:[e])},ocr=Date.prototype.toISOString,_We=aC.default,Bs={addQueryPrefix:!1,allowDots:!1,allowEmptyArrays:!1,arrayFormat:"indices",charset:"utf-8",charsetSentinel:!1,commaRoundTrip:!1,delimiter:"&",encode:!0,encodeDotInKeys:!1,encoder:EB.encode,encodeValuesOnly:!1,filter:void 0,format:_We,formatter:aC.formatters[_We],indices:!1,serializeDate:function(e){return ocr.call(e)},skipNulls:!1,strictNullHandling:!1},ccr=function(e){return typeof e=="string"||typeof e=="number"||typeof e=="boolean"||typeof e=="symbol"||typeof e=="bigint"},RV={},ucr=function t(e,r,n,s,i,a,o,c,u,l,d,f,p,m,h,y,g,b){for(var x=e,A=b,S=0,I=!1;(A=A.get(RV))!==void 0&&!I;){var R=A.get(e);if(S+=1,typeof R<"u"){if(R===S)throw new RangeError("Cyclic object value");I=!0}typeof A.get(RV)>"u"&&(S=0)}if(typeof l=="function"?x=l(r,x):x instanceof Date?x=p(x):n==="comma"&&Wl(x)&&(x=EB.maybeMap(x,function(J){return J instanceof Date?p(J):J})),x===null){if(a)return u&&!y?u(r,Bs.encoder,g,"key",m):r;x=""}if(ccr(x)||EB.isBuffer(x)){if(u){var w=y?r:u(r,Bs.encoder,g,"key",m);return[h(w)+"="+h(u(x,Bs.encoder,g,"value",m))]}return[h(r)+"="+h(String(x))]}var N=[];if(typeof x>"u")return N;var k;if(n==="comma"&&Wl(x))y&&u&&(x=EB.maybeMap(x,u)),k=[{value:x.length>0?x.join(",")||null:void 0}];else if(Wl(l))k=l;else{var B=Object.keys(x);k=d?B.sort(d):B}var M=c?String(r).replace(/\./g,"%2E"):String(r),D=s&&Wl(x)&&x.length===1?M+"[]":M;if(i&&Wl(x)&&x.length===0)return D+"[]";for(var L=0;L"u"?e.encodeDotInKeys===!0?!0:Bs.allowDots:!!e.allowDots;return{addQueryPrefix:typeof e.addQueryPrefix=="boolean"?e.addQueryPrefix:Bs.addQueryPrefix,allowDots:o,allowEmptyArrays:typeof e.allowEmptyArrays=="boolean"?!!e.allowEmptyArrays:Bs.allowEmptyArrays,arrayFormat:a,charset:r,charsetSentinel:typeof e.charsetSentinel=="boolean"?e.charsetSentinel:Bs.charsetSentinel,commaRoundTrip:!!e.commaRoundTrip,delimiter:typeof e.delimiter>"u"?Bs.delimiter:e.delimiter,encode:typeof e.encode=="boolean"?e.encode:Bs.encode,encodeDotInKeys:typeof e.encodeDotInKeys=="boolean"?e.encodeDotInKeys:Bs.encodeDotInKeys,encoder:typeof e.encoder=="function"?e.encoder:Bs.encoder,encodeValuesOnly:typeof e.encodeValuesOnly=="boolean"?e.encodeValuesOnly:Bs.encodeValuesOnly,filter:i,format:n,formatter:s,serializeDate:typeof e.serializeDate=="function"?e.serializeDate:Bs.serializeDate,skipNulls:typeof e.skipNulls=="boolean"?e.skipNulls:Bs.skipNulls,sort:typeof e.sort=="function"?e.sort:null,strictNullHandling:typeof e.strictNullHandling=="boolean"?e.strictNullHandling:Bs.strictNullHandling}};IWe.exports=function(t,e){var r=t,n=lcr(e),s,i;typeof n.filter=="function"?(i=n.filter,r=i("",r)):Wl(n.filter)&&(i=n.filter,s=i);var a=[];if(typeof r!="object"||r===null)return"";var o=vWe[n.arrayFormat],c=o==="comma"&&n.commaRoundTrip;s||(s=Object.keys(r)),n.sort&&s.sort(n.sort);for(var u=EWe(),l=0;l0?m+p:""}});var NWe=_((EXr,RWe)=>{"use strict";var hg=wV(),NV=Object.prototype.hasOwnProperty,TWe=Array.isArray,es={allowDots:!1,allowEmptyArrays:!1,allowPrototypes:!1,allowSparse:!1,arrayLimit:20,charset:"utf-8",charsetSentinel:!1,comma:!1,decodeDotInKeys:!1,decoder:hg.decode,delimiter:"&",depth:5,duplicates:"combine",ignoreQueryPrefix:!1,interpretNumericEntities:!1,parameterLimit:1e3,parseArrays:!0,plainObjects:!1,strictDepth:!1,strictNullHandling:!1,throwOnLimitExceeded:!1},dcr=function(t){return t.replace(/&#(\d+);/g,function(e,r){return String.fromCharCode(parseInt(r,10))})},wWe=function(t,e,r){if(t&&typeof t=="string"&&e.comma&&t.indexOf(",")>-1)return t.split(",");if(e.throwOnLimitExceeded&&r>=e.arrayLimit)throw new RangeError("Array limit exceeded. Only "+e.arrayLimit+" element"+(e.arrayLimit===1?"":"s")+" allowed in an array.");return t},fcr="utf8=%26%2310003%3B",pcr="utf8=%E2%9C%93",mcr=function(e,r){var n={__proto__:null},s=r.ignoreQueryPrefix?e.replace(/^\?/,""):e;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&&(m=TWe(m)?[m]:m);var h=NV.call(n,p);h&&r.duplicates==="combine"?n[p]=hg.combine(n[p],m):(!h||r.duplicates==="last")&&(n[p]=m)}return n},hcr=function(t,e,r,n){var s=0;if(t.length>0&&t[t.length-1]==="[]"){var i=t.slice(0,-1).join("");s=Array.isArray(e)&&e[i]?e[i].length:0}for(var a=n?e:wWe(e,r,s),o=t.length-1;o>=0;--o){var c,u=t[o];if(u==="[]"&&r.parseArrays)c=r.allowEmptyArrays&&(a===""||r.strictNullHandling&&a===null)?[]:hg.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},gcr=function(e,r,n,s){if(e){var i=n.allowDots?e.replace(/\.([^.[]+)/g,"[$1]"):e,a=/(\[[^[\]]*])/,o=/(\[[^[\]]*])/g,c=n.depth>0&&a.exec(i),u=c?i.slice(0,c.index):i,l=[];if(u){if(!n.plainObjects&&NV.call(Object.prototype,u)&&!n.allowPrototypes)return;l.push(u)}for(var d=0;n.depth>0&&(c=o.exec(i))!==null&&d"u"?es.charset:e.charset,n=typeof e.duplicates>"u"?es.duplicates:e.duplicates;if(n!=="combine"&&n!=="first"&&n!=="last")throw new TypeError("The duplicates option must be either combine, first, or last");var s=typeof e.allowDots>"u"?e.decodeDotInKeys===!0?!0:es.allowDots:!!e.allowDots;return{allowDots:s,allowEmptyArrays:typeof e.allowEmptyArrays=="boolean"?!!e.allowEmptyArrays:es.allowEmptyArrays,allowPrototypes:typeof e.allowPrototypes=="boolean"?e.allowPrototypes:es.allowPrototypes,allowSparse:typeof e.allowSparse=="boolean"?e.allowSparse:es.allowSparse,arrayLimit:typeof e.arrayLimit=="number"?e.arrayLimit:es.arrayLimit,charset:r,charsetSentinel:typeof e.charsetSentinel=="boolean"?e.charsetSentinel:es.charsetSentinel,comma:typeof e.comma=="boolean"?e.comma:es.comma,decodeDotInKeys:typeof e.decodeDotInKeys=="boolean"?e.decodeDotInKeys:es.decodeDotInKeys,decoder:typeof e.decoder=="function"?e.decoder:es.decoder,delimiter:typeof e.delimiter=="string"||hg.isRegExp(e.delimiter)?e.delimiter:es.delimiter,depth:typeof e.depth=="number"||e.depth===!1?+e.depth:es.depth,duplicates:n,ignoreQueryPrefix:e.ignoreQueryPrefix===!0,interpretNumericEntities:typeof e.interpretNumericEntities=="boolean"?e.interpretNumericEntities:es.interpretNumericEntities,parameterLimit:typeof e.parameterLimit=="number"?e.parameterLimit:es.parameterLimit,parseArrays:e.parseArrays!==!1,plainObjects:typeof e.plainObjects=="boolean"?e.plainObjects:es.plainObjects,strictDepth:typeof e.strictDepth=="boolean"?!!e.strictDepth:es.strictDepth,strictNullHandling:typeof e.strictNullHandling=="boolean"?e.strictNullHandling:es.strictNullHandling,throwOnLimitExceeded:typeof e.throwOnLimitExceeded=="boolean"?e.throwOnLimitExceeded:!1}};RWe.exports=function(t,e){var r=ycr(e);if(t===""||t===null||typeof t>"u")return r.plainObjects?{__proto__:null}:{};for(var n=typeof t=="string"?mcr(t,r):t,s=r.plainObjects?{__proto__:null}:{},i=Object.keys(n),a=0;a{"use strict";var Acr=CWe(),xcr=NWe(),bcr=_B();OWe.exports={formats:bcr,parse:xcr,stringify:Acr}});var OV=_((kWe,vB)=>{(function(t){"use strict";var e,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 p(S){var I,R,w,N=ue.prototype={constructor:ue,toString:null,valueOf:null},k=new ue(1),B=20,M=4,D=-7,L=21,Z=-1e7,W=1e7,U=!1,z=1,j=0,J={prefix:"",groupSize:3,secondaryGroupSize:0,groupSeparator:",",decimalSeparator:".",fractionGroupSize:0,fractionGroupSeparator:"\xA0",suffix:""},se="0123456789abcdefghijklmnopqrstuvwxyz",oe=!0;function ue(F,G){var K,q,Q,ee,ne,re,X,ie,ce=this;if(!(ce instanceof ue))return new ue(F,G);if(G==null){if(F&&F._isBigNumber===!0){ce.s=F.s,!F.c||F.e>W?ce.c=ce.e=null:F.e=10;ne/=10,ee++);ee>W?ce.c=ce.e=null:(ce.e=ee,ce.c=[F]);return}ie=String(F)}else{if(!r.test(ie=String(F)))return w(ce,ie,re);ce.s=ie.charCodeAt(0)==45?(ie=ie.slice(1),-1):1}(ee=ie.indexOf("."))>-1&&(ie=ie.replace(".","")),(ne=ie.search(/e/i))>0?(ee<0&&(ee=ne),ee+=+ie.slice(ne+1),ie=ie.substring(0,ne)):ee<0&&(ee=ie.length)}else{if(g(G,2,se.length,"Base"),G==10&&oe)return ce=new ue(F),Fe(ce,B+ce.e+1,M);if(ie=String(F),re=typeof F=="number"){if(F*0!=0)return w(ce,ie,re,G);if(ce.s=1/F<0?(ie=ie.slice(1),-1):1,ue.DEBUG&&ie.replace(/^0\.0*|\./,"").length>15)throw Error(a+F)}else ce.s=ie.charCodeAt(0)===45?(ie=ie.slice(1),-1):1;for(K=se.slice(0,G),ee=ne=0,X=ie.length;neee){ee=X;continue}}else if(!Q&&(ie==ie.toUpperCase()&&(ie=ie.toLowerCase())||ie==ie.toLowerCase()&&(ie=ie.toUpperCase()))){Q=!0,ne=-1,ee=0;continue}return w(ce,String(F),re,G)}re=!1,ie=R(ie,G,10,ce.s),(ee=ie.indexOf("."))>-1?ie=ie.replace(".",""):ee=ie.length}for(ne=0;ie.charCodeAt(ne)===48;ne++);for(X=ie.length;ie.charCodeAt(--X)===48;);if(ie=ie.slice(ne,++X)){if(X-=ne,re&&ue.DEBUG&&X>15&&(F>u||F!==s(F)))throw Error(a+ce.s*F);if((ee=ee-ne-1)>W)ce.c=ce.e=null;else if(ee=-f&&Q<=f&&Q===s(Q)){if(q[0]===0){if(Q===0&&q.length===1)return!0;break e}if(G=(Q+1)%c,G<1&&(G+=c),String(q[0]).length==G){for(G=0;G=o||K!==s(K))break e;if(K!==0)return!0}}}else if(q===null&&Q===null&&(ee===null||ee===1||ee===-1))return!0;throw Error(i+"Invalid BigNumber: "+F)},ue.maximum=ue.max=function(){return Ne(arguments,-1)},ue.minimum=ue.min=function(){return Ne(arguments,1)},ue.random=function(){var F=9007199254740992,G=Math.random()*F&2097151?function(){return s(Math.random()*F)}:function(){return(Math.random()*1073741824|0)*8388608+(Math.random()*8388608|0)};return function(K){var q,Q,ee,ne,re,X=0,ie=[],ce=new ue(k);if(K==null?K=B:g(K,0,f),ne=n(K/c),U)if(crypto.getRandomValues){for(q=crypto.getRandomValues(new Uint32Array(ne*=2));X>>11),re>=9e15?(Q=crypto.getRandomValues(new Uint32Array(2)),q[X]=Q[0],q[X+1]=Q[1]):(ie.push(re%1e14),X+=2);X=ne/2}else if(crypto.randomBytes){for(q=crypto.randomBytes(ne*=7);X=9e15?crypto.randomBytes(7).copy(q,X):(ie.push(re%1e14),X+=7);X=ne/7}else throw U=!1,Error(i+"crypto unavailable");if(!U)for(;X=10;re/=10,X++);XQ-1&&(re[ne+1]==null&&(re[ne+1]=0),re[ne+1]+=re[ne]/Q|0,re[ne]%=Q)}return re.reverse()}return function(K,q,Q,ee,ne){var re,X,ie,ce,me,Oe,Pe,qe,Ye=K.indexOf("."),Je=B,et=M;for(Ye>=0&&(ce=j,j=0,K=K.replace(".",""),qe=new ue(q),Oe=qe.pow(K.length-Ye),j=ce,qe.c=G(A(h(Oe.c),Oe.e,"0"),10,Q,F),qe.e=qe.c.length),Pe=G(K,q,Q,ne?(re=se,F):(re=F,se)),ie=ce=Pe.length;Pe[--ce]==0;Pe.pop());if(!Pe[0])return re.charAt(0);if(Ye<0?--ie:(Oe.c=Pe,Oe.e=ie,Oe.s=ee,Oe=I(Oe,qe,Je,et,Q),Pe=Oe.c,me=Oe.r,ie=Oe.e),X=ie+Je+1,Ye=Pe[X],ce=Q/2,me=me||X<0||Pe[X+1]!=null,me=et<4?(Ye!=null||me)&&(et==0||et==(Oe.s<0?3:2)):Ye>ce||Ye==ce&&(et==4||me||et==6&&Pe[X-1]&1||et==(Oe.s<0?8:7)),X<1||!Pe[0])K=me?A(re.charAt(1),-Je,re.charAt(0)):re.charAt(0);else{if(Pe.length=X,me)for(--Q;++Pe[--X]>Q;)Pe[X]=0,X||(++ie,Pe=[1].concat(Pe));for(ce=Pe.length;!Pe[--ce];);for(Ye=0,K="";Ye<=ce;K+=re.charAt(Pe[Ye++]));K=A(K,ie,re.charAt(0))}return K}}(),I=function(){function F(q,Q,ee){var ne,re,X,ie,ce=0,me=q.length,Oe=Q%d,Pe=Q/d|0;for(q=q.slice();me--;)X=q[me]%d,ie=q[me]/d|0,ne=Pe*X+ie*Oe,re=Oe*X+ne%d*d+ce,ce=(re/ee|0)+(ne/d|0)+Pe*ie,q[me]=re%ee;return ce&&(q=[ce].concat(q)),q}function G(q,Q,ee,ne){var re,X;if(ee!=ne)X=ee>ne?1:-1;else for(re=X=0;reQ[re]?1:-1;break}return X}function K(q,Q,ee,ne){for(var re=0;ee--;)q[ee]-=re,re=q[ee]1;q.splice(0,1));}return function(q,Q,ee,ne,re){var X,ie,ce,me,Oe,Pe,qe,Ye,Je,et,st,ut,rt,Pt,dt,Be,Xe,pt=q.s==Q.s?1:-1,nt=q.c,_t=Q.c;if(!nt||!nt[0]||!_t||!_t[0])return new ue(!q.s||!Q.s||(nt?_t&&nt[0]==_t[0]:!_t)?NaN:nt&&nt[0]==0||!_t?pt*0:pt/0);for(Ye=new ue(pt),Je=Ye.c=[],ie=q.e-Q.e,pt=ee+ie+1,re||(re=o,ie=m(q.e/c)-m(Q.e/c),pt=pt/c|0),ce=0;_t[ce]==(nt[ce]||0);ce++);if(_t[ce]>(nt[ce]||0)&&ie--,pt<0)Je.push(1),me=!0;else{for(Pt=nt.length,Be=_t.length,ce=0,pt+=2,Oe=s(re/(_t[0]+1)),Oe>1&&(_t=F(_t,Oe,re),nt=F(nt,Oe,re),Be=_t.length,Pt=nt.length),rt=Be,et=nt.slice(0,Be),st=et.length;st=re/2&&dt++;do{if(Oe=0,X=G(_t,et,Be,st),X<0){if(ut=et[0],Be!=st&&(ut=ut*re+(et[1]||0)),Oe=s(ut/dt),Oe>1)for(Oe>=re&&(Oe=re-1),Pe=F(_t,Oe,re),qe=Pe.length,st=et.length;G(Pe,et,qe,st)==1;)Oe--,K(Pe,Be=10;pt/=10,ce++);Fe(Ye,ee+(Ye.e=ce+ie*c-1)+1,ne,me)}else Ye.e=ie,Ye.r=+me;return Ye}}();function Te(F,G,K,q){var Q,ee,ne,re,X;if(K==null?K=M:g(K,0,8),!F.c)return F.toString();if(Q=F.c[0],ne=F.e,G==null)X=h(F.c),X=q==1||q==2&&(ne<=D||ne>=L)?x(X,ne):A(X,ne,"0");else if(F=Fe(new ue(F),G,K),ee=F.e,X=h(F.c),re=X.length,q==1||q==2&&(G<=ee||ee<=D)){for(;rene),X=A(X,ee,"0"),ee+1>re){if(--G>0)for(X+=".";G--;X+="0");}else if(G+=ee-re,G>0)for(ee+1==re&&(X+=".");G--;X+="0");return F.s<0&&Q?"-"+X:X}function Ne(F,G){for(var K,q,Q=1,ee=new ue(F[0]);Q=10;Q/=10,q++);return(K=q+K*c-1)>W?F.c=F.e=null:K=10;re/=10,Q++);if(ee=G-Q,ee<0)ee+=c,ne=G,X=me[ie=0],ce=s(X/Oe[Q-ne-1]%10);else if(ie=n((ee+1)/c),ie>=me.length)if(q){for(;me.length<=ie;me.push(0));X=ce=0,Q=1,ee%=c,ne=ee-c+1}else break e;else{for(X=re=me[ie],Q=1;re>=10;re/=10,Q++);ee%=c,ne=ee-c+Q,ce=ne<0?0:s(X/Oe[Q-ne-1]%10)}if(q=q||G<0||me[ie+1]!=null||(ne<0?X:X%Oe[Q-ne-1]),q=K<4?(ce||q)&&(K==0||K==(F.s<0?3:2)):ce>5||ce==5&&(K==4||q||K==6&&(ee>0?ne>0?X/Oe[Q-ne]:0:me[ie-1])%10&1||K==(F.s<0?8:7)),G<1||!me[0])return me.length=0,q?(G-=F.e+1,me[0]=Oe[(c-G%c)%c],F.e=-G||0):me[0]=F.e=0,F;if(ee==0?(me.length=ie,re=1,ie--):(me.length=ie+1,re=Oe[c-ee],me[ie]=ne>0?s(X/Oe[Q-ne]%Oe[ne])*re:0),q)for(;;)if(ie==0){for(ee=1,ne=me[0];ne>=10;ne/=10,ee++);for(ne=me[0]+=re,re=1;ne>=10;ne/=10,re++);ee!=re&&(F.e++,me[0]==o&&(me[0]=1));break}else{if(me[ie]+=re,me[ie]!=o)break;me[ie--]=0,re=1}for(ee=me.length;me[--ee]===0;me.pop());}F.e>W?F.c=F.e=null:F.e=L?x(G,K):A(G,K,"0"),F.s<0?"-"+G:G)}return N.absoluteValue=N.abs=function(){var F=new ue(this);return F.s<0&&(F.s=1),F},N.comparedTo=function(F,G){return y(this,new ue(F,G))},N.decimalPlaces=N.dp=function(F,G){var K,q,Q,ee=this;if(F!=null)return g(F,0,f),G==null?G=M:g(G,0,8),Fe(new ue(ee),F+ee.e+1,G);if(!(K=ee.c))return null;if(q=((Q=K.length-1)-m(this.e/c))*c,Q=K[Q])for(;Q%10==0;Q/=10,q--);return q<0&&(q=0),q},N.dividedBy=N.div=function(F,G){return I(this,new ue(F,G),B,M)},N.dividedToIntegerBy=N.idiv=function(F,G){return I(this,new ue(F,G),0,1)},N.exponentiatedBy=N.pow=function(F,G){var K,q,Q,ee,ne,re,X,ie,ce,me=this;if(F=new ue(F),F.c&&!F.isInteger())throw Error(i+"Exponent not an integer: "+ve(F));if(G!=null&&(G=new ue(G)),re=F.e>14,!me.c||!me.c[0]||me.c[0]==1&&!me.e&&me.c.length==1||!F.c||!F.c[0])return ce=new ue(Math.pow(+ve(me),re?F.s*(2-b(F)):+ve(F))),G?ce.mod(G):ce;if(X=F.s<0,G){if(G.c?!G.c[0]:!G.s)return new ue(NaN);q=!X&&me.isInteger()&&G.isInteger(),q&&(me=me.mod(G))}else{if(F.e>9&&(me.e>0||me.e<-1||(me.e==0?me.c[0]>1||re&&me.c[1]>=24e7:me.c[0]<8e13||re&&me.c[0]<=9999975e7)))return ee=me.s<0&&b(F)?-0:0,me.e>-1&&(ee=1/ee),new ue(X?1/ee:ee);j&&(ee=n(j/c+2))}for(re?(K=new ue(.5),X&&(F.s=1),ie=b(F)):(Q=Math.abs(+ve(F)),ie=Q%2),ce=new ue(k);;){if(ie){if(ce=ce.times(me),!ce.c)break;ee?ce.c.length>ee&&(ce.c.length=ee):q&&(ce=ce.mod(G))}if(Q){if(Q=s(Q/2),Q===0)break;ie=Q%2}else if(F=F.times(K),Fe(F,F.e+1,1),F.e>14)ie=b(F);else{if(Q=+ve(F),Q===0)break;ie=Q%2}me=me.times(me),ee?me.c&&me.c.length>ee&&(me.c.length=ee):q&&(me=me.mod(G))}return q?ce:(X&&(ce=k.div(ce)),G?ce.mod(G):ee?Fe(ce,j,M,ne):ce)},N.integerValue=function(F){var G=new ue(this);return F==null?F=M:g(F,0,8),Fe(G,G.e+1,F)},N.isEqualTo=N.eq=function(F,G){return y(this,new ue(F,G))===0},N.isFinite=function(){return!!this.c},N.isGreaterThan=N.gt=function(F,G){return y(this,new ue(F,G))>0},N.isGreaterThanOrEqualTo=N.gte=function(F,G){return(G=y(this,new ue(F,G)))===1||G===0},N.isInteger=function(){return!!this.c&&m(this.e/c)>this.c.length-2},N.isLessThan=N.lt=function(F,G){return y(this,new ue(F,G))<0},N.isLessThanOrEqualTo=N.lte=function(F,G){return(G=y(this,new ue(F,G)))===-1||G===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(F,G){var K,q,Q,ee,ne=this,re=ne.s;if(F=new ue(F,G),G=F.s,!re||!G)return new ue(NaN);if(re!=G)return F.s=-G,ne.plus(F);var X=ne.e/c,ie=F.e/c,ce=ne.c,me=F.c;if(!X||!ie){if(!ce||!me)return ce?(F.s=-G,F):new ue(me?ne:NaN);if(!ce[0]||!me[0])return me[0]?(F.s=-G,F):new ue(ce[0]?ne:M==3?-0:0)}if(X=m(X),ie=m(ie),ce=ce.slice(),re=X-ie){for((ee=re<0)?(re=-re,Q=ce):(ie=X,Q=me),Q.reverse(),G=re;G--;Q.push(0));Q.reverse()}else for(q=(ee=(re=ce.length)<(G=me.length))?re:G,re=G=0;G0)for(;G--;ce[K++]=0);for(G=o-1;q>re;){if(ce[--q]=0;){for(K=0,Oe=ut[Q]%Je,Pe=ut[Q]/Je|0,ne=X,ee=Q+ne;ee>Q;)ie=st[--ne]%Je,ce=st[ne]/Je|0,re=Pe*ie+ce*Oe,ie=Oe*ie+re%Je*Je+qe[ee]+K,K=(ie/Ye|0)+(re/Je|0)+Pe*ce,qe[ee--]=ie%Ye;qe[ee]=K}return K?++q:qe.splice(0,1),je(F,qe,q)},N.negated=function(){var F=new ue(this);return F.s=-F.s||null,F},N.plus=function(F,G){var K,q=this,Q=q.s;if(F=new ue(F,G),G=F.s,!Q||!G)return new ue(NaN);if(Q!=G)return F.s=-G,q.minus(F);var ee=q.e/c,ne=F.e/c,re=q.c,X=F.c;if(!ee||!ne){if(!re||!X)return new ue(Q/0);if(!re[0]||!X[0])return X[0]?F:new ue(re[0]?q:Q*0)}if(ee=m(ee),ne=m(ne),re=re.slice(),Q=ee-ne){for(Q>0?(ne=ee,K=X):(Q=-Q,K=re),K.reverse();Q--;K.push(0));K.reverse()}for(Q=re.length,G=X.length,Q-G<0&&(K=X,X=re,re=K,G=Q),Q=0;G;)Q=(re[--G]=re[G]+X[G]+Q)/o|0,re[G]=o===re[G]?0:re[G]%o;return Q&&(re=[Q].concat(re),++ne),je(F,re,ne)},N.precision=N.sd=function(F,G){var K,q,Q,ee=this;if(F!=null&&F!==!!F)return g(F,1,f),G==null?G=M:g(G,0,8),Fe(new ue(ee),F,G);if(!(K=ee.c))return null;if(Q=K.length-1,q=Q*c+1,Q=K[Q]){for(;Q%10==0;Q/=10,q--);for(Q=K[0];Q>=10;Q/=10,q++);}return F&&ee.e+1>q&&(q=ee.e+1),q},N.shiftedBy=function(F){return g(F,-u,u),this.times("1e"+F)},N.squareRoot=N.sqrt=function(){var F,G,K,q,Q,ee=this,ne=ee.c,re=ee.s,X=ee.e,ie=B+4,ce=new ue("0.5");if(re!==1||!ne||!ne[0])return new ue(!re||re<0&&(!ne||ne[0])?NaN:ne?ee:1/0);if(re=Math.sqrt(+ve(ee)),re==0||re==1/0?(G=h(ne),(G.length+X)%2==0&&(G+="0"),re=Math.sqrt(+G),X=m((X+1)/2)-(X<0||X%2),re==1/0?G="5e"+X:(G=re.toExponential(),G=G.slice(0,G.indexOf("e")+1)+X),K=new ue(G)):K=new ue(re+""),K.c[0]){for(X=K.e,re=X+ie,re<3&&(re=0);;)if(Q=K,K=ce.times(Q.plus(I(ee,Q,ie,1))),h(Q.c).slice(0,re)===(G=h(K.c)).slice(0,re))if(K.e0&&qe>0){for(ee=qe%re||re,ce=Pe.substr(0,ee);ee0&&(ce+=ie+Pe.slice(ee)),Oe&&(ce="-"+ce)}q=me?ce+(K.decimalSeparator||"")+((X=+K.fractionGroupSize)?me.replace(new RegExp("\\d{"+X+"}\\B","g"),"$&"+(K.fractionGroupSeparator||"")):me):ce}return(K.prefix||"")+q+(K.suffix||"")},N.toFraction=function(F){var G,K,q,Q,ee,ne,re,X,ie,ce,me,Oe,Pe=this,qe=Pe.c;if(F!=null&&(re=new ue(F),!re.isInteger()&&(re.c||re.s!==1)||re.lt(k)))throw Error(i+"Argument "+(re.isInteger()?"out of range: ":"not an integer: ")+ve(re));if(!qe)return new ue(Pe);for(G=new ue(k),ie=K=new ue(k),q=X=new ue(k),Oe=h(qe),ee=G.e=Oe.length-Pe.e-1,G.c[0]=l[(ne=ee%c)<0?c+ne:ne],F=!F||re.comparedTo(G)>0?ee>0?G:ie:re,ne=W,W=1/0,re=new ue(Oe),X.c[0]=0;ce=I(re,G,0,1),Q=K.plus(ce.times(q)),Q.comparedTo(F)!=1;)K=q,q=Q,ie=X.plus(ce.times(Q=ie)),X=Q,G=re.minus(ce.times(Q=G)),re=Q;return Q=I(F.minus(K),q,0,1),X=X.plus(Q.times(ie)),K=K.plus(Q.times(q)),X.s=ie.s=Pe.s,ee=ee*2,me=I(ie,q,ee,M).minus(Pe).abs().comparedTo(I(X,K,ee,M).minus(Pe).abs())<1?[ie,q]:[X,K],W=ne,me},N.toNumber=function(){return+ve(this)},N.toPrecision=function(F,G){return F!=null&&g(F,1,f),Te(this,F,G,2)},N.toString=function(F){var G,K=this,q=K.s,Q=K.e;return Q===null?q?(G="Infinity",q<0&&(G="-"+G)):G="NaN":(F==null?G=Q<=D||Q>=L?x(h(K.c),Q):A(h(K.c),Q,"0"):F===10&&oe?(K=Fe(new ue(K),B+Q+1,M),G=A(h(K.c),K.e,"0")):(g(F,2,se.length,"Base"),G=R(A(h(K.c),Q,"0"),10,F,q,!0)),q<0&&K.c[0]&&(G="-"+G)),G},N.valueOf=N.toJSON=function(){return ve(this)},N._isBigNumber=!0,S!=null&&ue.set(S),ue}function m(S){var I=S|0;return S>0||S===I?I:I-1}function h(S){for(var I,R,w=1,N=S.length,k=S[0]+"";wL^R?1:-1;for(M=(D=N.length)<(L=k.length)?D:L,B=0;Bk[B]^R?1:-1;return D==L?0:D>L^R?1:-1}function g(S,I,R,w){if(SR||S!==s(S))throw Error(i+(w||"Argument")+(typeof S=="number"?SR?" out of range: ":" not an integer: ":" not a primitive number: ")+String(S))}function b(S){var I=S.c.length-1;return m(S.e/c)==I&&S.c[I]%2!=0}function x(S,I){return(S.length>1?S.charAt(0)+"."+S.slice(1):S)+(I<0?"e":"e+")+I}function A(S,I,R){var w,N;if(I<0){for(N=R+".";++I;N+=R);S=N+S}else if(w=S.length,++I>w){for(N=R,I-=w;--I;N+=R);S+=N}else I{var PWe=OV(),DWe=BWe.exports;(function(){"use strict";function t(u){return u<10?"0"+u:u}var e=/[\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,p,m,h=n,y,g=l[u],b=g!=null&&(g instanceof PWe||PWe.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 b?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,y=[],Object.prototype.toString.apply(g)==="[object Array]"){for(m=g.length,d=0;d{var Zk=null,snr=/(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])/,inr=/(?: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)/,anr=function(t){"use strict";var e={strict:!1,storeAsString:!1,alwaysParseAsBig:!1,useNativeBigInt:!1,protoAction:"error",constructorAction:"error"};if(t!=null){if(t.strict===!0&&(e.strict=!0),t.storeAsString===!0&&(e.storeAsString=!0),e.alwaysParseAsBig=t.alwaysParseAsBig===!0?t.alwaysParseAsBig:!1,e.useNativeBigInt=t.useNativeBigInt===!0?t.useNativeBigInt:!1,typeof t.constructorAction<"u")if(t.constructorAction==="error"||t.constructorAction==="ignore"||t.constructorAction==="preserve")e.constructorAction=t.constructorAction;else throw new Error(`Incorrect value for constructorAction option, must be "error", "ignore" or undefined but passed ${t.constructorAction}`);if(typeof t.protoAction<"u")if(t.protoAction==="error"||t.protoAction==="ignore"||t.protoAction==="preserve")e.protoAction=t.protoAction;else throw new Error(`Incorrect value for protoAction option, must be "error", "ignore" or undefined but passed ${t.protoAction}`)}var r,n,s={'"':'"',"\\":"\\","/":"/",b:"\b",f:"\f",n:` -`,r:"\r",t:" "},i,a=function(h){throw{name:"SyntaxError",message:h,at:r,text:i}},o=function(h){return h&&h!==n&&a("Expected '"+h+"' instead of '"+n+"'"),n=i.charAt(r),r+=1,n},c=function(){var h,A="";for(n==="-"&&(A="-",o("-"));n>="0"&&n<="9";)A+=n,o();if(n===".")for(A+=".";o()&&n>="0"&&n<="9";)A+=n;if(n==="e"||n==="E")for(A+=n,o(),(n==="-"||n==="+")&&(A+=n,o());n>="0"&&n<="9";)A+=n,o();if(h=+A,!isFinite(h))a("Bad number");else return Zk==null&&(Zk=NV()),A.length>15?e.storeAsString?A:e.useNativeBigInt?BigInt(A):new Zk(A):e.alwaysParseAsBig?e.useNativeBigInt?BigInt(h):new Zk(h):h},u=function(){var h,A,g="",b;if(n==='"')for(var y=r;o();){if(n==='"')return r-1>y&&(g+=i.substring(y,r-1)),o(),g;if(n==="\\"){if(r-1>y&&(g+=i.substring(y,r-1)),o(),n==="u"){for(b=0,A=0;A<4&&(h=parseInt(o(),16),!!isFinite(h));A+=1)b=b*16+h;g+=String.fromCharCode(b)}else if(typeof s[n]=="string")g+=s[n];else break;y=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 h=[];if(n==="["){if(o("["),l(),n==="]")return o("]"),h;for(;n;){if(h.push(f()),l(),n==="]")return o("]"),h;o(","),l()}}a("Bad array")},m=function(){var h,A=Object.create(null);if(n==="{"){if(o("{"),l(),n==="}")return o("}"),A;for(;n;){if(h=u(),l(),o(":"),e.strict===!0&&Object.hasOwnProperty.call(A,h)&&a('Duplicate key "'+h+'"'),snr.test(h)===!0?e.protoAction==="error"?a("Object contains forbidden prototype property"):e.protoAction==="ignore"?f():A[h]=f():inr.test(h)===!0?e.constructorAction==="error"?a("Object contains forbidden constructor property"):e.constructorAction==="ignore"?f():A[h]=f():A[h]=f(),l(),n==="}")return o("}"),A;o(","),l()}}a("Bad object")};return f=function(){switch(l(),n){case"{":return m();case"[":return p();case'"':return u();case"-":return c();default:return n>="0"&&n<="9"?c():d()}},function(h,A){var g;return i=h+"",r=0,n=" ",g=f(),l(),n&&a("Syntax error"),typeof A=="function"?function b(y,x){var v,C,R=y[x];return R&&typeof R=="object"&&Object.keys(R).forEach(function(w){C=b(R,w),C!==void 0?R[w]=C:delete R[w]}),A.call(y,x,R)}({"":g},""):g}};UMe.exports=anr});var QMe=E((gqr,eL)=>{var jMe=FMe().stringify,HMe=qMe();eL.exports=function(t){return{parse:HMe(t),stringify:jMe}};eL.exports.parse=HMe();eL.exports.stringify=jMe});function I5e(t){let e=t.match(/^S(\d+)$/i);if(e)return`S${String(parseInt(e[1])).padStart(2,"0")}`;let r=t.match(/^E(\d+)$/i);return r?`E${String(parseInt(r[1])).padStart(2,"0")}`:t}function T5e(t){return!t||typeof t!="string"?[]:t.split(",").map(e=>{let r=e.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(b=>b.trim()).filter(Boolean),f=!1,d.length===0)return null}else l=c,d=null,f=!1;let p=l.trim().split("/"),m=p[0]||null;if(!m)return null;let h=p[1]?I5e(p[1]):null,A=p[2]?I5e(p[2]):null;return{anime:m,season:h,episode:A,sources:d,all:f,offset:a,usePercent:o}}).filter(Boolean)}function Ez(t,{anime:e,season:r,episode:n,source:s}){if(!Array.isArray(t)||t.length===0||!e)return null;let i=new Set;if(s)for(let o of s.split("&")){let c=o.trim().toLowerCase();c&&(i.add(c),C5e[c]&&i.add(C5e[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 t)if(d.anime===e){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 _z(t,e,r={}){let n=Number(e);if(!n||!Array.isArray(t)||t.length===0)return t;let s=r?.usePercent===!0,i=Number(r?.videoDuration||0),a=m=>{if(!m||typeof m!="object")return null;if(typeof m.p=="string"){let h=m.p.split(","),A=parseFloat(h[0]);if(Number.isFinite(A))return A}if(m.t!==void 0&&m.t!==null){let h=Number(m.t);if(Number.isFinite(h))return h}if(m.progress!==void 0&&m.progress!==null){let h=Number(m.progress);if(Number.isFinite(h))return h/1e3}if(m.timepoint!==void 0&&m.timepoint!==null){let h=Number(m.timepoint);if(Number.isFinite(h))return h}return null},o=i>0?i:a(t[t.length-1])||0,c=s&&Number.isFinite(o)&&o>0?(o+n)/o:null;if(s&&c===null)return t;let u=n*1e3,l=m=>Math.max(0,m),d=(m,h=2)=>Number(m.toFixed(h)),f=m=>{let h=l(c!==null?m*c:m+n);return c!==null?d(h,2):h},p=m=>{let h=l(c!==null?m*c:m+u);return c!==null?Math.round(h):h};return t.map(m=>{if(!m||typeof m!="object")return m;let h={...m};if(typeof h.p=="string"){let A=h.p.split(","),g=parseFloat(A[0]);Number.isFinite(g)&&(A[0]=f(g).toFixed(2),h.p=A.join(","))}if(h.t!==void 0&&h.t!==null){let A=Number(h.t);Number.isFinite(A)&&(h.t=f(A))}if(h.progress!==void 0&&h.progress!==null){let A=Number(h.progress);Number.isFinite(A)&&(h.progress=p(A))}if(h.timepoint!==void 0&&h.timepoint!==null){let A=Number(h.timepoint);Number.isFinite(A)&&(h.timepoint=f(A))}return h})}var C5e,Sz=dr(()=>{C5e={tencent:"qq",iqiyi:"qiyi",bilibili:"bilibili1"}});var sf,w5e=dr(()=>{Sz();sf=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 +`+h+"}":"{"+y.join(",")+"}",n=h,p}}typeof DWe.stringify!="function"&&(DWe.stringify=function(u,l,d){var f;if(n="",s="",typeof d=="number")for(f=0;f{var SB=null,_cr=/(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])/,Ecr=/(?: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)/,vcr=function(t){"use strict";var e={strict:!1,storeAsString:!1,alwaysParseAsBig:!1,useNativeBigInt:!1,protoAction:"error",constructorAction:"error"};if(t!=null){if(t.strict===!0&&(e.strict=!0),t.storeAsString===!0&&(e.storeAsString=!0),e.alwaysParseAsBig=t.alwaysParseAsBig===!0?t.alwaysParseAsBig:!1,e.useNativeBigInt=t.useNativeBigInt===!0?t.useNativeBigInt:!1,typeof t.constructorAction<"u")if(t.constructorAction==="error"||t.constructorAction==="ignore"||t.constructorAction==="preserve")e.constructorAction=t.constructorAction;else throw new Error(`Incorrect value for constructorAction option, must be "error", "ignore" or undefined but passed ${t.constructorAction}`);if(typeof t.protoAction<"u")if(t.protoAction==="error"||t.protoAction==="ignore"||t.protoAction==="preserve")e.protoAction=t.protoAction;else throw new Error(`Incorrect value for protoAction option, must be "error", "ignore" or undefined but passed ${t.protoAction}`)}var r,n,s={'"':'"',"\\":"\\","/":"/",b:"\b",f:"\f",n:` +`,r:"\r",t:" "},i,a=function(h){throw{name:"SyntaxError",message:h,at:r,text:i}},o=function(h){return h&&h!==n&&a("Expected '"+h+"' instead of '"+n+"'"),n=i.charAt(r),r+=1,n},c=function(){var h,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(h=+y,!isFinite(h))a("Bad number");else return SB==null&&(SB=OV()),y.length>15?e.storeAsString?y:e.useNativeBigInt?BigInt(y):new SB(y):e.alwaysParseAsBig?e.useNativeBigInt?BigInt(h):new SB(h):h},u=function(){var h,y,g="",b;if(n==='"')for(var x=r;o();){if(n==='"')return r-1>x&&(g+=i.substring(x,r-1)),o(),g;if(n==="\\"){if(r-1>x&&(g+=i.substring(x,r-1)),o(),n==="u"){for(b=0,y=0;y<4&&(h=parseInt(o(),16),!!isFinite(h));y+=1)b=b*16+h;g+=String.fromCharCode(b)}else if(typeof s[n]=="string")g+=s[n];else break;x=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 h=[];if(n==="["){if(o("["),l(),n==="]")return o("]"),h;for(;n;){if(h.push(f()),l(),n==="]")return o("]"),h;o(","),l()}}a("Bad array")},m=function(){var h,y=Object.create(null);if(n==="{"){if(o("{"),l(),n==="}")return o("}"),y;for(;n;){if(h=u(),l(),o(":"),e.strict===!0&&Object.hasOwnProperty.call(y,h)&&a('Duplicate key "'+h+'"'),_cr.test(h)===!0?e.protoAction==="error"?a("Object contains forbidden prototype property"):e.protoAction==="ignore"?f():y[h]=f():Ecr.test(h)===!0?e.constructorAction==="error"?a("Object contains forbidden constructor property"):e.constructorAction==="ignore"?f():y[h]=f():y[h]=f(),l(),n==="}")return o("}"),y;o(","),l()}}a("Bad object")};return f=function(){switch(l(),n){case"{":return m();case"[":return p();case'"':return u();case"-":return c();default:return n>="0"&&n<="9"?c():d()}},function(h,y){var g;return i=h+"",r=0,n=" ",g=f(),l(),n&&a("Syntax error"),typeof y=="function"?function b(x,A){var S,I,R=x[A];return R&&typeof R=="object"&&Object.keys(R).forEach(function(w){I=b(R,w),I!==void 0?R[w]=I:delete R[w]}),y.call(x,A,R)}({"":g},""):g}};MWe.exports=vcr});var FWe=_((CXr,IB)=>{var $We=LWe().stringify,UWe=WWe();IB.exports=function(t){return{parse:UWe(t),stringify:$We}};IB.exports.parse=UWe();IB.exports.stringify=$We});function w$e(t){let e=t.match(/^S(\d+)$/i);if(e)return`S${String(parseInt(e[1])).padStart(2,"0")}`;let r=t.match(/^E(\d+)$/i);return r?`E${String(parseInt(r[1])).padStart(2,"0")}`:t}function R$e(t){return!t||typeof t!="string"?[]:t.split(",").map(e=>{let r=e.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(b=>b.trim()).filter(Boolean),f=!1,d.length===0)return null}else l=c,d=null,f=!1;let p=l.trim().split("/"),m=p[0]||null;if(!m)return null;let h=p[1]?w$e(p[1]):null,y=p[2]?w$e(p[2]):null;return{anime:m,season:h,episode:y,sources:d,all:f,offset:a,usePercent:o}}).filter(Boolean)}function SY(t,{anime:e,season:r,episode:n,source:s}){if(!Array.isArray(t)||t.length===0||!e)return null;let i=new Set;if(s)for(let o of s.split("&")){let c=o.trim().toLowerCase();c&&(i.add(c),T$e[c]&&i.add(T$e[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 t)if(d.anime===e){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 IY(t,e,r={}){let n=Number(e);if(!n||!Array.isArray(t)||t.length===0)return t;let s=r?.usePercent===!0,i=Number(r?.videoDuration||0),a=m=>{if(!m||typeof m!="object")return null;if(typeof m.p=="string"){let h=m.p.split(","),y=parseFloat(h[0]);if(Number.isFinite(y))return y}if(m.t!==void 0&&m.t!==null){let h=Number(m.t);if(Number.isFinite(h))return h}if(m.progress!==void 0&&m.progress!==null){let h=Number(m.progress);if(Number.isFinite(h))return h/1e3}if(m.timepoint!==void 0&&m.timepoint!==null){let h=Number(m.timepoint);if(Number.isFinite(h))return h}return null},o=i>0?i:a(t[t.length-1])||0,c=s&&Number.isFinite(o)&&o>0?(o+n)/o:null;if(s&&c===null)return t;let u=n*1e3,l=m=>Math.max(0,m),d=(m,h=2)=>Number(m.toFixed(h)),f=m=>{let h=l(c!==null?m*c:m+n);return c!==null?d(h,2):h},p=m=>{let h=l(c!==null?m*c:m+u);return c!==null?Math.round(h):h};return t.map(m=>{if(!m||typeof m!="object")return m;let h={...m};if(typeof h.p=="string"){let y=h.p.split(","),g=parseFloat(y[0]);Number.isFinite(g)&&(y[0]=f(g).toFixed(2),h.p=y.join(","))}if(h.t!==void 0&&h.t!==null){let y=Number(h.t);Number.isFinite(y)&&(h.t=f(y))}if(h.progress!==void 0&&h.progress!==null){let y=Number(h.progress);Number.isFinite(y)&&(h.progress=p(y))}if(h.timepoint!==void 0&&h.timepoint!==null){let y=Number(h.timepoint);Number.isFinite(y)&&(h.timepoint=f(y))}return h})}var T$e,CY=gr(()=>{T$e={tencent:"qq",iqiyi:"qiyi",bilibili:"bilibili1"}});var Ef,N$e=gr(()=>{CY();Ef=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 @@ -468,7 +468,7 @@ Minimum version required to store current data is: `+i+`. \u5982\u679C\u6CA1\u6709\u627E\u5230\u5408\u9002\u7684\u5339\u914D\uFF0C\u8FD4\u56DE\uFF1A { "animeIndex": null -}`;static get(e,r,n="string",s=!1){let i;typeof this.env<"u"&&this.env[e]?(i=this.env[e],this.originalEnvVars.set(e,i)):typeof process<"u"&&process.env?.[e]?(i=process.env[e],this.originalEnvVars.set(e,i)):(i=r,this.originalEnvVars.set(e,""));let a;switch(n){case"number":if(a=Number(i),isNaN(a))throw new Error(`Environment variable ${e} 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(e,o),a}static set(e,r){typeof process<"u"&&(process.env[e]=String(r)),this.accessedEnvVars.set(e,r)}static encryptStr(e){return"*".repeat(e.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","douban,360,renren,hanjutv","string").split(",").map(n=>n.trim()).filter(n=>this.ALLOWED_SOURCES.includes(n));return this.accessedEnvVars.set("SOURCE_ORDER",r),r.length>0?r:["douban","360","renren","hanjutv"]}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 e=this.get("MERGE_SOURCE_PAIRS","","string");return e?e.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 resolveCustomMergeRules(){let e=this.get("CUSTOM_MERGE_RULES","","string").trim();if(!e)return[];let r=[],n=e.split(";");for(let s of n)if(s.trim())try{let i=s.split("|"),a=i[0],o=i[1]||"",c,u,l="merge";if(a.includes("->"))[c,u]=a.split("->").map(A=>A.trim());else if(a.includes("\xD7"))[c,u]=a.split("\xD7").map(A=>A.trim()),l="block";else continue;if(!c||!u)continue;let d=A=>{let g=A.match(/^(.+?)(?:\/S(\d+))?@([a-zA-Z0-9_&]+)$/i);return g?{title:g[1].trim(),season:g[2]?parseInt(g[2],10):null,source:g[3].toLowerCase()}:null},f=d(c),p=d(u);if(!f||!p)continue;let m=[],h=!1;if(l==="merge"&&o.trim()){h=!0;let A=o.split(",");for(let g of A){if(!g.trim())continue;let[b,y]=g.split(">").map(R=>R.trim());if(!b||!y)continue;let x=R=>{let w=R.match(/^E(\d+)(?:~E(\d+))?$/i);return w?{start:parseInt(w[1],10),end:w[2]?parseInt(w[2],10):parseInt(w[1],10)}:null},v=x(b),C=x(y);v&&C&&m.push({sec:v,prim:C})}}r.push({action:l,secondary:f,primary:p,routes:m,hasRoutes:h})}catch(i){console.warn(`[Envs] \u89E3\u6790\u5408\u5E76\u6620\u5C04\u8868\u89C4\u5219\u5931\u8D25: ${s}`,i)}return this.accessedEnvVars.set("CUSTOM_MERGE_RULES",e),r}static resolveEpisodeTitleFilter(){let e="(\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(e){if(!e||typeof e!="string")return!1;let r=e.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(e){if(!e||typeof e!="string")return!1;let r=e.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 p=f.split(".").map(A=>Number(A)),m=(p[0]<<8|p[1]).toString(16),h=(p[2]<<8|p[3]).toString(16);return[...d.slice(0,-1),m,h]},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 e=this.get("ANIME_TITLE_FILTER","","string",!1).trim();if(!e)return this.accessedEnvVars.set("ANIME_TITLE_FILTER",""),null;this.accessedEnvVars.set("ANIME_TITLE_FILTER",e);try{return new RegExp(`^(.*?)(?:${e})(.*?)$`,"i")}catch{return console.warn("Invalid ANIME_TITLE_FILTER format, returning null."),null}}static getOriginalEnvVars(){return this.originalEnvVars}static resolveTitleMappingTable(){let e=this.get("TITLE_MAPPING_TABLE","","string").trim(),r=new Map;if(!e)return r;let n=e.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(e={}){this.env=e;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\u8BA43",min:0,max:50},SOURCE_ORDER:{category:"source",type:"multi-select",options:this.ALLOWED_SOURCES,description:"\u6E90\u6392\u5E8F\u914D\u7F6E\uFF0C\u9ED8\u8BA4douban,360,renren,hanjutv"},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(e,r,n="string",s=!1){let i;typeof this.env<"u"&&this.env[e]?(i=this.env[e],this.originalEnvVars.set(e,i)):typeof process<"u"&&process.env?.[e]?(i=process.env[e],this.originalEnvVars.set(e,i)):(i=r,this.originalEnvVars.set(e,""));let a;switch(n){case"number":if(a=Number(i),isNaN(a))throw new Error(`Environment variable ${e} 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(e,o),a}static set(e,r){typeof process<"u"&&(process.env[e]=String(r)),this.accessedEnvVars.set(e,r)}static encryptStr(e){return"*".repeat(e.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","douban,360,renren,hanjutv","string").split(",").map(n=>n.trim()).filter(n=>this.ALLOWED_SOURCES.includes(n));return this.accessedEnvVars.set("SOURCE_ORDER",r),r.length>0?r:["douban","360","renren","hanjutv"]}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 e=this.get("MERGE_SOURCE_PAIRS","","string");return e?e.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 resolveCustomMergeRules(){let e=this.get("CUSTOM_MERGE_RULES","","string").trim();if(!e)return[];let r=[],n=e.split(";");for(let s of n)if(s.trim())try{let i=s.split("|"),a=i[0],o=i[1]||"",c,u,l="merge";if(a.includes("->"))[c,u]=a.split("->").map(y=>y.trim());else if(a.includes("\xD7"))[c,u]=a.split("\xD7").map(y=>y.trim()),l="block";else continue;if(!c||!u)continue;let d=y=>{let g=y.match(/^(.+?)(?:\/S(\d+))?@([a-zA-Z0-9_&]+)$/i);return g?{title:g[1].trim(),season:g[2]?parseInt(g[2],10):null,source:g[3].toLowerCase()}:null},f=d(c),p=d(u);if(!f||!p)continue;let m=[],h=!1;if(l==="merge"&&o.trim()){h=!0;let y=o.split(",");for(let g of y){if(!g.trim())continue;let[b,x]=g.split(">").map(R=>R.trim());if(!b||!x)continue;let A=R=>{let w=R.match(/^E(\d+)(?:~E(\d+))?$/i);return w?{start:parseInt(w[1],10),end:w[2]?parseInt(w[2],10):parseInt(w[1],10)}:null},S=A(b),I=A(x);S&&I&&m.push({sec:S,prim:I})}}r.push({action:l,secondary:f,primary:p,routes:m,hasRoutes:h})}catch(i){console.warn(`[Envs] \u89E3\u6790\u5408\u5E76\u6620\u5C04\u8868\u89C4\u5219\u5931\u8D25: ${s}`,i)}return this.accessedEnvVars.set("CUSTOM_MERGE_RULES",e),r}static resolveEpisodeTitleFilter(){let e="(\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(e){if(!e||typeof e!="string")return!1;let r=e.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(e){if(!e||typeof e!="string")return!1;let r=e.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 p=f.split(".").map(y=>Number(y)),m=(p[0]<<8|p[1]).toString(16),h=(p[2]<<8|p[3]).toString(16);return[...d.slice(0,-1),m,h]},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 e=this.get("ANIME_TITLE_FILTER","","string",!1).trim();if(!e)return this.accessedEnvVars.set("ANIME_TITLE_FILTER",""),null;this.accessedEnvVars.set("ANIME_TITLE_FILTER",e);try{return new RegExp(`^(.*?)(?:${e})(.*?)$`,"i")}catch{return console.warn("Invalid ANIME_TITLE_FILTER format, returning null."),null}}static getOriginalEnvVars(){return this.originalEnvVars}static resolveTitleMappingTable(){let e=this.get("TITLE_MAPPING_TABLE","","string").trim(),r=new Map;if(!e)return r;let n=e.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(e={}){this.env=e;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\u8BA43",min:0,max:50},SOURCE_ORDER:{category:"source",type:"multi-select",options:this.ALLOWED_SOURCES,description:"\u6E90\u6392\u5E8F\u914D\u7F6E\uFF0C\u9ED8\u8BA4douban,360,renren,hanjutv"},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`},CUSTOM_MERGE_RULES:{category:"source",type:"text",sources:this.MERGE_ALLOWED_SOURCES,description:`\u5408\u5E76\u6620\u5C04\u8868\uFF0C\u7528\u4E8E\u81EA\u5B9A\u4E49\u6E90\u5408\u5E76\u884C\u4E3A\u3002 \u683C\u5F0F1(\u5408\u5E76)\uFF1A\u526F\u6E90\u5267\u540D/S\u5B63\u6570@\u6765\u6E90 -> \u4E3B\u6E90\u5267\u540D/S\u5B63\u6570@\u6765\u6E90 | E\u526F\u6E90\u96C6\u6570>E\u4E3B\u6E90\u96C6\u6570 @@ -482,61 +482,61 @@ Minimum version required to store current data is: `+i+`. \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"},USE_BANGUMI_DATA:{category:"match",type:"boolean",description:`Bangumi Data \u52A0\u901F\u5339\u914D\u5F00\u5173\uFF0C\u5F00\u542F\u540E\u5C06\u52A8\u753B\u5143\u6570\u636E\u7F13\u5B58\u81F3\u672C\u5730\u6216\u5185\u5B58\u4E2D\u7ED9\u6E90\u8C03\u7528\uFF0C\u63D0\u5347\u52A8\u753B\u6E90\u7684\u68C0\u7D22\u4E0E\u5339\u914D\u901F\u5EA6\u5E76\u89E3\u9501\u9690\u85CF/\u533A\u57DF\u756A\u5267\u3002 -\u672C\u5730\u548CDocker\u90E8\u7F72\u4F7F\u7528\u65F6\u8BF7\u5148\u6302\u8F7D.cache\u76EE\u5F55\u83B7\u5F97\u6700\u4F73\u4F53\u9A8C\uFF0C\u4E91\u90E8\u7F72\u4F7F\u7528\u65F6\u4F1A\u5C06\u6570\u636E\u7F13\u5B58\u81F3\u4E34\u65F6\u5185\u5B58\u4E2D\u5982\u679C\u4F53\u9A8C\u4E0D\u4F73\u8BF7\u5173\u95ED\u3002`},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\u3002\u652F\u6301\u767E\u5206\u6BD4\u6A21\u5F0F\uFF1A\u5728\u8DEF\u5F84\u6216\u6765\u6E90\u672B\u5C3E\u8FFD\u52A0 %\uFF0C\u5982 \u4E1C\u65B9/S03/E02@tencent%:11\uFF0C\u6309\u516C\u5F0F \u539F\u65F6\u95F4 * (\u89C6\u9891\u65F6\u957F + \u504F\u79FB\u79D2\u6570) / \u89C6\u9891\u65F6\u957F \u7F29\u653E\u5168\u90E8\u5F39\u5E55\u65F6\u95F4\u3002\u793A\u4F8B\uFF1Aoverlord/S01:90,re-zero/S02@bilibili:120,re-zero/S02/E03@dandan&bilibili:10,\u4E1C\u65B9/S03/E02@tencent%:11"},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"},BANGUMI_DATA_CACHE_DAYS:{category:"cache",type:"number",description:"Bangumi Data \u7F13\u5B58\u6709\u6548\u671F(\u5929)\uFF0C\u8BBE\u7F6E0\u5219\u6BCF\u6B21\u8BF7\u6C42\u65F6\u5F3A\u5236\u5F02\u6B65\u66F4\u65B0\uFF0C\u9ED8\u8BA47\u5929",min:0,max:30},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(),customMergeRules:this.resolveCustomMergeRules(),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),doubanCookie:this.get("DOUBAN_COOKIE","","string",!0),youkuConcurrency:Math.min(this.get("YOUKU_CONCURRENCY",8,"number"),16),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:T5e(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",3,"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"),useBangumiData:this.get("USE_BANGUMI_DATA",!1,"boolean"),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"),bangumiDataCacheDays:this.get("BANGUMI_DATA_CACHE_DAYS",7,"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 Kh,O,Pt=dr(()=>{w5e();Kh={env:{},envs:{},originalEnvVars:{},accessedEnvVars:{},VERSION:"1.19.13",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(t={}){return this.env=t,this.envs=sf.load(this.env),this.originalEnvVars=Object.fromEntries(sf.getOriginalEnvVars()),this.accessedEnvVars=Object.fromEntries(sf.getAccessedEnvVars()),this.getConfig()},reInit(){return this.envs=sf.load(this.env),this.originalEnvVars=Object.fromEntries(sf.getOriginalEnvVars()),this.accessedEnvVars=Object.fromEntries(sf.getAccessedEnvVars()),this.getConfig()},makeProxyUrl(t){let e=this.envs.proxyUrl||"";if(!e||!t)return t;let r=e.split(",").map(c=>c.trim()).filter(c=>c),n=null,s=null,i=null,a;try{a=new URL(t)}catch{return t}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 t}return i?`${i.replace(/\/$/,"")}/${t}`:n?`http://127.0.0.1:5321/proxy?url=${encodeURIComponent(t)}`:t},getConfig(){if(this._configProxy)return this._configProxy;let t=this;return this._configProxy=new Proxy({},{get(e,r){return r in t.envs?t.envs[r]:r==="version"?t.VERSION:r==="maxLogs"?t.MAX_LOGS:r==="maxAnimes"?t.envs.MAX_ANIMES:r==="maxRecords"?t.MAX_RECORDS:r==="maxLastSelectMap"?t.MAX_LAST_SELECT_MAP:r==="makeProxyUrl"?t.makeProxyUrl.bind(t):t[r]},set(e,r,n){return r in t.envs?t.envs[r]=n:t[r]=n,!0}}),this._configProxy}},O=new Proxy({},{get(t,e){return Kh.getConfig()[e]},set(t,e,r){return Kh.getConfig()[e]=r,!0},has(t,e){return e in Kh.getConfig()},ownKeys(t){return Reflect.ownKeys(Kh.getConfig())},getOwnPropertyDescriptor(t,e){return Object.getOwnPropertyDescriptor(Kh.getConfig(),e)}})});function _(t,...e){let r={error:0,warn:1,info:2},n=r[O.logLevel]!==void 0?r[O.logLevel]:1;if((r[t]||0)>n)return;let s=e.map(u=>{if(typeof u=="object"){let l=JSON.stringify(u);return R5e(l)}else return typeof u=="string"?R5e(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");O.logBuffer.push({timestamp:c,level:t,message:i}),O.logBuffer.length>O.MAX_LOGS&&O.logBuffer.shift(),console[t](...s)}function R5e(t){let e=t;if(O.originalEnvVars&&O.accessedEnvVars)for(let[r,n]of Object.entries(O.originalEnvVars)){let s=O.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");e=e.replace(a,i)}}return e}function N5e(t){try{let e=JSON.parse(t);return JSON.stringify(e,null,2).replace(/\n/g,` - `)}catch{return t}}var St=dr(()=>{Pt()});function eir(t){if(!/^data:/i.test(t))throw new TypeError('`uri` does not appear to be a Data URI (must begin with "data:")');t=t.replace(/\r?\n/g,"");let e=t.indexOf(",");if(e===-1||e<=4)throw new TypeError("malformed data: URI");let r=t.substring(5,e).split(";"),n="",s=!1,i=r[0]||"text/plain",a=i;for(let l=1;l{O5e=eir});var k5e=E((gL,D5e)=>{(function(t,e){typeof gL=="object"&&typeof D5e<"u"?e(gL):typeof define=="function"&&define.amd?define(["exports"],e):(t=typeof globalThis<"u"?globalThis:t||self,e(t.WebStreamsPolyfill={}))})(gL,function(t){"use strict";function e(){}function r(S){return typeof S=="object"&&S!==null||typeof S=="function"}let n=e;function s(S,T){try{Object.defineProperty(S,"name",{value:T,configurable:!0})}catch{}}let i=Promise,a=Promise.prototype.then,o=Promise.reject.bind(i);function c(S){return new i(S)}function u(S){return c(T=>T(S))}function l(S){return o(S)}function d(S,T,D){return a.call(S,T,D)}function f(S,T,D){d(d(S,T,D),void 0,n)}function p(S,T){f(S,T)}function m(S,T){f(S,void 0,T)}function h(S,T,D){return d(S,T,D)}function A(S){d(S,void 0,n)}let g=S=>{if(typeof queueMicrotask=="function")g=queueMicrotask;else{let T=u(void 0);g=D=>d(T,D)}return g(S)};function b(S,T,D){if(typeof S!="function")throw new TypeError("Argument is not a function");return Function.prototype.apply.call(S,T,D)}function y(S,T,D){try{return u(b(S,T,D))}catch(K){return l(K)}}let x=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(T){let D=this._back,K=D;D._elements.length===x-1&&(K={_elements:[],_next:void 0}),D._elements.push(T),K!==D&&(this._back=K,D._next=K),++this._size}shift(){let T=this._front,D=T,K=this._cursor,ae=K+1,pe=T._elements,xe=pe[K];return ae===x&&(D=T._next,ae=0),--this._size,this._cursor=ae,T!==D&&(this._front=D),pe[K]=void 0,xe}forEach(T){let D=this._cursor,K=this._front,ae=K._elements;for(;(D!==ae.length||K._next!==void 0)&&!(D===ae.length&&(K=K._next,ae=K._elements,D=0,ae.length===0));)T(ae[D]),++D}peek(){let T=this._front,D=this._cursor;return T._elements[D]}}let C=Symbol("[[AbortSteps]]"),R=Symbol("[[ErrorSteps]]"),w=Symbol("[[CancelSteps]]"),N=Symbol("[[PullSteps]]"),P=Symbol("[[ReleaseSteps]]");function L(S,T){S._ownerReadableStream=T,T._reader=S,T._state==="readable"?Z(S):T._state==="closed"?F(S):W(S,T._storedError)}function M(S,T){let D=S._ownerReadableStream;return Lc(D,T)}function k(S){let T=S._ownerReadableStream;T._state==="readable"?V(S,new TypeError("Reader was released and can no longer be used to monitor the stream's closedness")):j(S,new TypeError("Reader was released and can no longer be used to monitor the stream's closedness")),T._readableStreamController[P](),T._reader=void 0,S._ownerReadableStream=void 0}function B(S){return new TypeError("Cannot "+S+" a stream using a released reader")}function Z(S){S._closedPromise=c((T,D)=>{S._closedPromise_resolve=T,S._closedPromise_reject=D})}function W(S,T){Z(S),V(S,T)}function F(S){Z(S),J(S)}function V(S,T){S._closedPromise_reject!==void 0&&(A(S._closedPromise),S._closedPromise_reject(T),S._closedPromise_resolve=void 0,S._closedPromise_reject=void 0)}function j(S,T){W(S,T)}function J(S){S._closedPromise_resolve!==void 0&&(S._closedPromise_resolve(void 0),S._closedPromise_resolve=void 0,S._closedPromise_reject=void 0)}let se=Number.isFinite||function(S){return typeof S=="number"&&isFinite(S)},oe=Math.trunc||function(S){return S<0?Math.ceil(S):Math.floor(S)};function ue(S){return typeof S=="object"||typeof S=="function"}function Ce(S,T){if(S!==void 0&&!ue(S))throw new TypeError(`${T} is not an object.`)}function we(S,T){if(typeof S!="function")throw new TypeError(`${T} is not a function.`)}function qe(S){return typeof S=="object"&&S!==null||typeof S=="function"}function Fe(S,T){if(!qe(S))throw new TypeError(`${T} is not an object.`)}function _e(S,T,D){if(S===void 0)throw new TypeError(`Parameter ${T} is required in '${D}'.`)}function U(S,T,D){if(S===void 0)throw new TypeError(`${T} is required in '${D}'.`)}function G(S){return Number(S)}function z(S){return S===0?0:S}function q(S){return z(oe(S))}function H(S,T){let K=Number.MAX_SAFE_INTEGER,ae=Number(S);if(ae=z(ae),!se(ae))throw new TypeError(`${T} is not a finite number`);if(ae=q(ae),ae<0||ae>K)throw new TypeError(`${T} is outside the accepted range of 0 to ${K}, inclusive`);return!se(ae)||ae===0?0:ae}function ee(S,T){if(!sp(S))throw new TypeError(`${T} is not a ReadableStream.`)}function ne(S){return new fe(S)}function re(S,T){S._reader._readRequests.push(T)}function X(S,T,D){let ae=S._reader._readRequests.shift();D?ae._closeSteps():ae._chunkSteps(T)}function ie(S){return S._reader._readRequests.length}function ce(S){let T=S._reader;return!(T===void 0||!Ne(T))}class fe{constructor(T){if(_e(T,1,"ReadableStreamDefaultReader"),ee(T,"First parameter"),ip(T))throw new TypeError("This stream has already been locked for exclusive reading by another reader");L(this,T),this._readRequests=new v}get closed(){return Ne(this)?this._closedPromise:l(Ye("closed"))}cancel(T=void 0){return Ne(this)?this._ownerReadableStream===void 0?l(B("cancel")):M(this,T):l(Ye("cancel"))}read(){if(!Ne(this))return l(Ye("read"));if(this._ownerReadableStream===void 0)return l(B("read from"));let T,D,K=c((pe,xe)=>{T=pe,D=xe});return Pe(this,{_chunkSteps:pe=>T({value:pe,done:!1}),_closeSteps:()=>T({value:void 0,done:!0}),_errorSteps:pe=>D(pe)}),K}releaseLock(){if(!Ne(this))throw Ye("releaseLock");this._ownerReadableStream!==void 0&&Ue(this)}}Object.defineProperties(fe.prototype,{cancel:{enumerable:!0},read:{enumerable:!0},releaseLock:{enumerable:!0},closed:{enumerable:!0}}),s(fe.prototype.cancel,"cancel"),s(fe.prototype.read,"read"),s(fe.prototype.releaseLock,"releaseLock"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(fe.prototype,Symbol.toStringTag,{value:"ReadableStreamDefaultReader",configurable:!0});function Ne(S){return!r(S)||!Object.prototype.hasOwnProperty.call(S,"_readRequests")?!1:S instanceof fe}function Pe(S,T){let D=S._ownerReadableStream;D._disturbed=!0,D._state==="closed"?T._closeSteps():D._state==="errored"?T._errorSteps(D._storedError):D._readableStreamController[N](T)}function Ue(S){k(S);let T=new TypeError("Reader was released");Ke(S,T)}function Ke(S,T){let D=S._readRequests;S._readRequests=new v,D.forEach(K=>{K._errorSteps(T)})}function Ye(S){return new TypeError(`ReadableStreamDefaultReader.prototype.${S} can only be used on a ReadableStreamDefaultReader`)}let Ze=Object.getPrototypeOf(Object.getPrototypeOf(async function*(){}).prototype);class nt{constructor(T,D){this._ongoingPromise=void 0,this._isFinished=!1,this._reader=T,this._preventCancel=D}next(){let T=()=>this._nextSteps();return this._ongoingPromise=this._ongoingPromise?h(this._ongoingPromise,T,T):T(),this._ongoingPromise}return(T){let D=()=>this._returnSteps(T);return this._ongoingPromise?h(this._ongoingPromise,D,D):D()}_nextSteps(){if(this._isFinished)return Promise.resolve({value:void 0,done:!0});let T=this._reader,D,K,ae=c((xe,Qe)=>{D=xe,K=Qe});return Pe(T,{_chunkSteps:xe=>{this._ongoingPromise=void 0,g(()=>D({value:xe,done:!1}))},_closeSteps:()=>{this._ongoingPromise=void 0,this._isFinished=!0,k(T),D({value:void 0,done:!0})},_errorSteps:xe=>{this._ongoingPromise=void 0,this._isFinished=!0,k(T),K(xe)}}),ae}_returnSteps(T){if(this._isFinished)return Promise.resolve({value:T,done:!0});this._isFinished=!0;let D=this._reader;if(!this._preventCancel){let K=M(D,T);return k(D),h(K,()=>({value:T,done:!0}))}return k(D),u({value:T,done:!0})}}let ct={next(){return Dt(this)?this._asyncIteratorImpl.next():l(lt("next"))},return(S){return Dt(this)?this._asyncIteratorImpl.return(S):l(lt("return"))}};Object.setPrototypeOf(ct,Ze);function tt(S,T){let D=ne(S),K=new nt(D,T),ae=Object.create(ct);return ae._asyncIteratorImpl=K,ae}function Dt(S){if(!r(S)||!Object.prototype.hasOwnProperty.call(S,"_asyncIteratorImpl"))return!1;try{return S._asyncIteratorImpl instanceof nt}catch{return!1}}function lt(S){return new TypeError(`ReadableStreamAsyncIterator.${S} can only be used on a ReadableSteamAsyncIterator`)}let De=Number.isNaN||function(S){return S!==S};var Je,ft,rt;function bt(S){return S.slice()}function An(S,T,D,K,ae){new Uint8Array(S).set(new Uint8Array(D,K,ae),T)}let Ct=S=>(typeof S.transfer=="function"?Ct=T=>T.transfer():typeof structuredClone=="function"?Ct=T=>structuredClone(T,{transfer:[T]}):Ct=T=>T,Ct(S)),Sr=S=>(typeof S.detached=="boolean"?Sr=T=>T.detached:Sr=T=>T.byteLength===0,Sr(S));function Us(S,T,D){if(S.slice)return S.slice(T,D);let K=D-T,ae=new ArrayBuffer(K);return An(ae,0,S,T,K),ae}function Dr(S,T){let D=S[T];if(D!=null){if(typeof D!="function")throw new TypeError(`${String(T)} is not a function`);return D}}function qs(S){let T={[Symbol.iterator]:()=>S.iterator},D=async function*(){return yield*T}(),K=D.next;return{iterator:D,nextMethod:K,done:!1}}let js=(rt=(Je=Symbol.asyncIterator)!==null&&Je!==void 0?Je:(ft=Symbol.for)===null||ft===void 0?void 0:ft.call(Symbol,"Symbol.asyncIterator"))!==null&&rt!==void 0?rt:"@@asyncIterator";function ys(S,T="sync",D){if(D===void 0)if(T==="async"){if(D=Dr(S,js),D===void 0){let pe=Dr(S,Symbol.iterator),xe=ys(S,"sync",pe);return qs(xe)}}else D=Dr(S,Symbol.iterator);if(D===void 0)throw new TypeError("The object is not iterable");let K=b(D,S,[]);if(!r(K))throw new TypeError("The iterator method must return an object");let ae=K.next;return{iterator:K,nextMethod:ae,done:!1}}function Hs(S){let T=b(S.nextMethod,S.iterator,[]);if(!r(T))throw new TypeError("The iterator.next() method must return an object");return T}function Lu(S){return!!S.done}function go(S){return S.value}function Dc(S){return!(typeof S!="number"||De(S)||S<0)}function Ta(S){let T=Us(S.buffer,S.byteOffset,S.byteOffset+S.byteLength);return new Uint8Array(T)}function yn(S){let T=S._queue.shift();return S._queueTotalSize-=T.size,S._queueTotalSize<0&&(S._queueTotalSize=0),T.value}function wa(S,T,D){if(!Dc(D)||D===1/0)throw new RangeError("Size must be a finite, non-NaN, non-negative number.");S._queue.push({value:T,size:D}),S._queueTotalSize+=D}function rd(S){return S._queue.peek().value}function Ao(S){S._queue=new v,S._queueTotalSize=0}function bA(S){return S===DataView}function l6(S){return bA(S.constructor)}function gpt(S){return bA(S)?1:S.BYTES_PER_ELEMENT}class dm{constructor(){throw new TypeError("Illegal constructor")}get view(){if(!d6(this))throw g6("view");return this._view}respond(T){if(!d6(this))throw g6("respond");if(_e(T,1,"respond"),T=H(T,"First parameter"),this._associatedReadableByteStreamController===void 0)throw new TypeError("This BYOB request has been invalidated");if(Sr(this._view.buffer))throw new TypeError("The BYOB request's buffer has been detached and so cannot be used as a response");w2(this._associatedReadableByteStreamController,T)}respondWithNewView(T){if(!d6(this))throw g6("respondWithNewView");if(_e(T,1,"respondWithNewView"),!ArrayBuffer.isView(T))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(Sr(T.buffer))throw new TypeError("The given view's buffer has been detached and so cannot be used as a response");R2(this._associatedReadableByteStreamController,T)}}Object.defineProperties(dm.prototype,{respond:{enumerable:!0},respondWithNewView:{enumerable:!0},view:{enumerable:!0}}),s(dm.prototype.respond,"respond"),s(dm.prototype.respondWithNewView,"respondWithNewView"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(dm.prototype,Symbol.toStringTag,{value:"ReadableStreamBYOBRequest",configurable:!0});class nd{constructor(){throw new TypeError("Illegal constructor")}get byobRequest(){if(!fm(this))throw VE("byobRequest");return h6(this)}get desiredSize(){if(!fm(this))throw VE("desiredSize");return jle(this)}close(){if(!fm(this))throw VE("close");if(this._closeRequested)throw new TypeError("The stream has already been closed; do not close it again!");let T=this._controlledReadableByteStream._state;if(T!=="readable")throw new TypeError(`The stream (in ${T} state) is not in the readable state and cannot be closed`);GE(this)}enqueue(T){if(!fm(this))throw VE("enqueue");if(_e(T,1,"enqueue"),!ArrayBuffer.isView(T))throw new TypeError("chunk must be an array buffer view");if(T.byteLength===0)throw new TypeError("chunk must have non-zero byteLength");if(T.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 D=this._controlledReadableByteStream._state;if(D!=="readable")throw new TypeError(`The stream (in ${D} state) is not in the readable state and cannot be enqueued to`);T2(this,T)}error(T=void 0){if(!fm(this))throw VE("error");Uo(this,T)}[w](T){kle(this),Ao(this);let D=this._cancelAlgorithm(T);return I2(this),D}[N](T){let D=this._controlledReadableByteStream;if(this._queueTotalSize>0){qle(this,T);return}let K=this._autoAllocateChunkSize;if(K!==void 0){let ae;try{ae=new ArrayBuffer(K)}catch(xe){T._errorSteps(xe);return}let pe={buffer:ae,bufferByteLength:K,byteOffset:0,byteLength:K,bytesFilled:0,minimumFill:1,elementSize:1,viewConstructor:Uint8Array,readerType:"default"};this._pendingPullIntos.push(pe)}re(D,T),pm(this)}[P](){if(this._pendingPullIntos.length>0){let T=this._pendingPullIntos.peek();T.readerType="none",this._pendingPullIntos=new v,this._pendingPullIntos.push(T)}}}Object.defineProperties(nd.prototype,{close:{enumerable:!0},enqueue:{enumerable:!0},error:{enumerable:!0},byobRequest:{enumerable:!0},desiredSize:{enumerable:!0}}),s(nd.prototype.close,"close"),s(nd.prototype.enqueue,"enqueue"),s(nd.prototype.error,"error"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(nd.prototype,Symbol.toStringTag,{value:"ReadableByteStreamController",configurable:!0});function fm(S){return!r(S)||!Object.prototype.hasOwnProperty.call(S,"_controlledReadableByteStream")?!1:S instanceof nd}function d6(S){return!r(S)||!Object.prototype.hasOwnProperty.call(S,"_associatedReadableByteStreamController")?!1:S instanceof dm}function pm(S){if(!Ept(S))return;if(S._pulling){S._pullAgain=!0;return}S._pulling=!0;let D=S._pullAlgorithm();f(D,()=>(S._pulling=!1,S._pullAgain&&(S._pullAgain=!1,pm(S)),null),K=>(Uo(S,K),null))}function kle(S){p6(S),S._pendingPullIntos=new v}function f6(S,T){let D=!1;S._state==="closed"&&(D=!0);let K=Lle(T);T.readerType==="default"?X(S,K,D):Tpt(S,K,D)}function Lle(S){let T=S.bytesFilled,D=S.elementSize;return new S.viewConstructor(S.buffer,S.byteOffset,T/D)}function C2(S,T,D,K){S._queue.push({buffer:T,byteOffset:D,byteLength:K}),S._queueTotalSize+=K}function Ble(S,T,D,K){let ae;try{ae=Us(T,D,D+K)}catch(pe){throw Uo(S,pe),pe}C2(S,ae,0,K)}function Mle(S,T){T.bytesFilled>0&&Ble(S,T.buffer,T.byteOffset,T.bytesFilled),EA(S)}function Wle(S,T){let D=Math.min(S._queueTotalSize,T.byteLength-T.bytesFilled),K=T.bytesFilled+D,ae=D,pe=!1,xe=K%T.elementSize,Qe=K-xe;Qe>=T.minimumFill&&(ae=Qe-T.bytesFilled,pe=!0);let It=S._queue;for(;ae>0;){let dt=It.peek(),Bt=Math.min(ae,dt.byteLength),Jt=T.byteOffset+T.bytesFilled;An(T.buffer,Jt,dt.buffer,dt.byteOffset,Bt),dt.byteLength===Bt?It.shift():(dt.byteOffset+=Bt,dt.byteLength-=Bt),S._queueTotalSize-=Bt,$le(S,Bt,T),ae-=Bt}return pe}function $le(S,T,D){D.bytesFilled+=T}function Fle(S){S._queueTotalSize===0&&S._closeRequested?(I2(S),ZE(S._controlledReadableByteStream)):pm(S)}function p6(S){S._byobRequest!==null&&(S._byobRequest._associatedReadableByteStreamController=void 0,S._byobRequest._view=null,S._byobRequest=null)}function m6(S){for(;S._pendingPullIntos.length>0;){if(S._queueTotalSize===0)return;let T=S._pendingPullIntos.peek();Wle(S,T)&&(EA(S),f6(S._controlledReadableByteStream,T))}}function Apt(S){let T=S._controlledReadableByteStream._reader;for(;T._readRequests.length>0;){if(S._queueTotalSize===0)return;let D=T._readRequests.shift();qle(S,D)}}function ypt(S,T,D,K){let ae=S._controlledReadableByteStream,pe=T.constructor,xe=gpt(pe),{byteOffset:Qe,byteLength:It}=T,dt=D*xe,Bt;try{Bt=Ct(T.buffer)}catch(un){K._errorSteps(un);return}let Jt={buffer:Bt,bufferByteLength:Bt.byteLength,byteOffset:Qe,byteLength:It,bytesFilled:0,minimumFill:dt,elementSize:xe,viewConstructor:pe,readerType:"byob"};if(S._pendingPullIntos.length>0){S._pendingPullIntos.push(Jt),Gle(ae,K);return}if(ae._state==="closed"){let un=new pe(Jt.buffer,Jt.byteOffset,0);K._closeSteps(un);return}if(S._queueTotalSize>0){if(Wle(S,Jt)){let un=Lle(Jt);Fle(S),K._chunkSteps(un);return}if(S._closeRequested){let un=new TypeError("Insufficient bytes to fill elements in the given buffer");Uo(S,un),K._errorSteps(un);return}}S._pendingPullIntos.push(Jt),Gle(ae,K),pm(S)}function xpt(S,T){T.readerType==="none"&&EA(S);let D=S._controlledReadableByteStream;if(A6(D))for(;Vle(D)>0;){let K=EA(S);f6(D,K)}}function bpt(S,T,D){if($le(S,T,D),D.readerType==="none"){Mle(S,D),m6(S);return}if(D.bytesFilled0){let ae=D.byteOffset+D.bytesFilled;Ble(S,D.buffer,ae-K,K)}D.bytesFilled-=K,f6(S._controlledReadableByteStream,D),m6(S)}function Ule(S,T){let D=S._pendingPullIntos.peek();p6(S),S._controlledReadableByteStream._state==="closed"?xpt(S,D):bpt(S,T,D),pm(S)}function EA(S){return S._pendingPullIntos.shift()}function Ept(S){let T=S._controlledReadableByteStream;return T._state!=="readable"||S._closeRequested||!S._started?!1:!!(ce(T)&&ie(T)>0||A6(T)&&Vle(T)>0||jle(S)>0)}function I2(S){S._pullAlgorithm=void 0,S._cancelAlgorithm=void 0}function GE(S){let T=S._controlledReadableByteStream;if(!(S._closeRequested||T._state!=="readable")){if(S._queueTotalSize>0){S._closeRequested=!0;return}if(S._pendingPullIntos.length>0){let D=S._pendingPullIntos.peek();if(D.bytesFilled%D.elementSize!==0){let K=new TypeError("Insufficient bytes to fill elements in the given buffer");throw Uo(S,K),K}}I2(S),ZE(T)}}function T2(S,T){let D=S._controlledReadableByteStream;if(S._closeRequested||D._state!=="readable")return;let{buffer:K,byteOffset:ae,byteLength:pe}=T;if(Sr(K))throw new TypeError("chunk's buffer is detached and so cannot be enqueued");let xe=Ct(K);if(S._pendingPullIntos.length>0){let Qe=S._pendingPullIntos.peek();if(Sr(Qe.buffer))throw new TypeError("The BYOB request's buffer has been detached and so cannot be filled with an enqueued chunk");p6(S),Qe.buffer=Ct(Qe.buffer),Qe.readerType==="none"&&Mle(S,Qe)}if(ce(D))if(Apt(S),ie(D)===0)C2(S,xe,ae,pe);else{S._pendingPullIntos.length>0&&EA(S);let Qe=new Uint8Array(xe,ae,pe);X(D,Qe,!1)}else A6(D)?(C2(S,xe,ae,pe),m6(S)):C2(S,xe,ae,pe);pm(S)}function Uo(S,T){let D=S._controlledReadableByteStream;D._state==="readable"&&(kle(S),Ao(S),I2(S),Ade(D,T))}function qle(S,T){let D=S._queue.shift();S._queueTotalSize-=D.byteLength,Fle(S);let K=new Uint8Array(D.buffer,D.byteOffset,D.byteLength);T._chunkSteps(K)}function h6(S){if(S._byobRequest===null&&S._pendingPullIntos.length>0){let T=S._pendingPullIntos.peek(),D=new Uint8Array(T.buffer,T.byteOffset+T.bytesFilled,T.byteLength-T.bytesFilled),K=Object.create(dm.prototype);Spt(K,S,D),S._byobRequest=K}return S._byobRequest}function jle(S){let T=S._controlledReadableByteStream._state;return T==="errored"?null:T==="closed"?0:S._strategyHWM-S._queueTotalSize}function w2(S,T){let D=S._pendingPullIntos.peek();if(S._controlledReadableByteStream._state==="closed"){if(T!==0)throw new TypeError("bytesWritten must be 0 when calling respond() on a closed stream")}else{if(T===0)throw new TypeError("bytesWritten must be greater than 0 when calling respond() on a readable stream");if(D.bytesFilled+T>D.byteLength)throw new RangeError("bytesWritten out of range")}D.buffer=Ct(D.buffer),Ule(S,T)}function R2(S,T){let D=S._pendingPullIntos.peek();if(S._controlledReadableByteStream._state==="closed"){if(T.byteLength!==0)throw new TypeError("The view's length must be 0 when calling respondWithNewView() on a closed stream")}else if(T.byteLength===0)throw new TypeError("The view's length must be greater than 0 when calling respondWithNewView() on a readable stream");if(D.byteOffset+D.bytesFilled!==T.byteOffset)throw new RangeError("The region specified by view does not match byobRequest");if(D.bufferByteLength!==T.buffer.byteLength)throw new RangeError("The buffer of view has different capacity than byobRequest");if(D.bytesFilled+T.byteLength>D.byteLength)throw new RangeError("The region specified by view is larger than byobRequest");let ae=T.byteLength;D.buffer=Ct(T.buffer),Ule(S,ae)}function Hle(S,T,D,K,ae,pe,xe){T._controlledReadableByteStream=S,T._pullAgain=!1,T._pulling=!1,T._byobRequest=null,T._queue=T._queueTotalSize=void 0,Ao(T),T._closeRequested=!1,T._started=!1,T._strategyHWM=pe,T._pullAlgorithm=K,T._cancelAlgorithm=ae,T._autoAllocateChunkSize=xe,T._pendingPullIntos=new v,S._readableStreamController=T;let Qe=D();f(u(Qe),()=>(T._started=!0,pm(T),null),It=>(Uo(T,It),null))}function _pt(S,T,D){let K=Object.create(nd.prototype),ae,pe,xe;T.start!==void 0?ae=()=>T.start(K):ae=()=>{},T.pull!==void 0?pe=()=>T.pull(K):pe=()=>u(void 0),T.cancel!==void 0?xe=It=>T.cancel(It):xe=()=>u(void 0);let Qe=T.autoAllocateChunkSize;if(Qe===0)throw new TypeError("autoAllocateChunkSize must be greater than 0");Hle(S,K,ae,pe,xe,D,Qe)}function Spt(S,T,D){S._associatedReadableByteStreamController=T,S._view=D}function g6(S){return new TypeError(`ReadableStreamBYOBRequest.prototype.${S} can only be used on a ReadableStreamBYOBRequest`)}function VE(S){return new TypeError(`ReadableByteStreamController.prototype.${S} can only be used on a ReadableByteStreamController`)}function vpt(S,T){Ce(S,T);let D=S?.mode;return{mode:D===void 0?void 0:Cpt(D,`${T} has member 'mode' that`)}}function Cpt(S,T){if(S=`${S}`,S!=="byob")throw new TypeError(`${T} '${S}' is not a valid enumeration value for ReadableStreamReaderMode`);return S}function Ipt(S,T){var D;Ce(S,T);let K=(D=S?.min)!==null&&D!==void 0?D:1;return{min:H(K,`${T} has member 'min' that`)}}function Qle(S){return new rp(S)}function Gle(S,T){S._reader._readIntoRequests.push(T)}function Tpt(S,T,D){let ae=S._reader._readIntoRequests.shift();D?ae._closeSteps(T):ae._chunkSteps(T)}function Vle(S){return S._reader._readIntoRequests.length}function A6(S){let T=S._reader;return!(T===void 0||!mm(T))}class rp{constructor(T){if(_e(T,1,"ReadableStreamBYOBReader"),ee(T,"First parameter"),ip(T))throw new TypeError("This stream has already been locked for exclusive reading by another reader");if(!fm(T._readableStreamController))throw new TypeError("Cannot construct a ReadableStreamBYOBReader for a stream not constructed with a byte source");L(this,T),this._readIntoRequests=new v}get closed(){return mm(this)?this._closedPromise:l(N2("closed"))}cancel(T=void 0){return mm(this)?this._ownerReadableStream===void 0?l(B("cancel")):M(this,T):l(N2("cancel"))}read(T,D={}){if(!mm(this))return l(N2("read"));if(!ArrayBuffer.isView(T))return l(new TypeError("view must be an array buffer view"));if(T.byteLength===0)return l(new TypeError("view must have non-zero byteLength"));if(T.buffer.byteLength===0)return l(new TypeError("view's buffer must have non-zero byteLength"));if(Sr(T.buffer))return l(new TypeError("view's buffer has been detached"));let K;try{K=Ipt(D,"options")}catch(dt){return l(dt)}let ae=K.min;if(ae===0)return l(new TypeError("options.min must be greater than 0"));if(l6(T)){if(ae>T.byteLength)return l(new RangeError("options.min must be less than or equal to view's byteLength"))}else if(ae>T.length)return l(new RangeError("options.min must be less than or equal to view's length"));if(this._ownerReadableStream===void 0)return l(B("read from"));let pe,xe,Qe=c((dt,Bt)=>{pe=dt,xe=Bt});return zle(this,T,ae,{_chunkSteps:dt=>pe({value:dt,done:!1}),_closeSteps:dt=>pe({value:dt,done:!0}),_errorSteps:dt=>xe(dt)}),Qe}releaseLock(){if(!mm(this))throw N2("releaseLock");this._ownerReadableStream!==void 0&&wpt(this)}}Object.defineProperties(rp.prototype,{cancel:{enumerable:!0},read:{enumerable:!0},releaseLock:{enumerable:!0},closed:{enumerable:!0}}),s(rp.prototype.cancel,"cancel"),s(rp.prototype.read,"read"),s(rp.prototype.releaseLock,"releaseLock"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(rp.prototype,Symbol.toStringTag,{value:"ReadableStreamBYOBReader",configurable:!0});function mm(S){return!r(S)||!Object.prototype.hasOwnProperty.call(S,"_readIntoRequests")?!1:S instanceof rp}function zle(S,T,D,K){let ae=S._ownerReadableStream;ae._disturbed=!0,ae._state==="errored"?K._errorSteps(ae._storedError):ypt(ae._readableStreamController,T,D,K)}function wpt(S){k(S);let T=new TypeError("Reader was released");Kle(S,T)}function Kle(S,T){let D=S._readIntoRequests;S._readIntoRequests=new v,D.forEach(K=>{K._errorSteps(T)})}function N2(S){return new TypeError(`ReadableStreamBYOBReader.prototype.${S} can only be used on a ReadableStreamBYOBReader`)}function zE(S,T){let{highWaterMark:D}=S;if(D===void 0)return T;if(De(D)||D<0)throw new RangeError("Invalid highWaterMark");return D}function O2(S){let{size:T}=S;return T||(()=>1)}function P2(S,T){Ce(S,T);let D=S?.highWaterMark,K=S?.size;return{highWaterMark:D===void 0?void 0:G(D),size:K===void 0?void 0:Rpt(K,`${T} has member 'size' that`)}}function Rpt(S,T){return we(S,T),D=>G(S(D))}function Npt(S,T){Ce(S,T);let D=S?.abort,K=S?.close,ae=S?.start,pe=S?.type,xe=S?.write;return{abort:D===void 0?void 0:Opt(D,S,`${T} has member 'abort' that`),close:K===void 0?void 0:Ppt(K,S,`${T} has member 'close' that`),start:ae===void 0?void 0:Dpt(ae,S,`${T} has member 'start' that`),write:xe===void 0?void 0:kpt(xe,S,`${T} has member 'write' that`),type:pe}}function Opt(S,T,D){return we(S,D),K=>y(S,T,[K])}function Ppt(S,T,D){return we(S,D),()=>y(S,T,[])}function Dpt(S,T,D){return we(S,D),K=>b(S,T,[K])}function kpt(S,T,D){return we(S,D),(K,ae)=>y(S,T,[K,ae])}function Yle(S,T){if(!_A(S))throw new TypeError(`${T} is not a WritableStream.`)}function Lpt(S){if(typeof S!="object"||S===null)return!1;try{return typeof S.aborted=="boolean"}catch{return!1}}let Bpt=typeof AbortController=="function";function Mpt(){if(Bpt)return new AbortController}class np{constructor(T={},D={}){T===void 0?T=null:Fe(T,"First parameter");let K=P2(D,"Second parameter"),ae=Npt(T,"First parameter");if(Xle(this),ae.type!==void 0)throw new RangeError("Invalid type is specified");let xe=O2(K),Qe=zE(K,1);Jpt(this,ae,Qe,xe)}get locked(){if(!_A(this))throw M2("locked");return SA(this)}abort(T=void 0){return _A(this)?SA(this)?l(new TypeError("Cannot abort a stream that already has a writer")):D2(this,T):l(M2("abort"))}close(){return _A(this)?SA(this)?l(new TypeError("Cannot close a stream that already has a writer")):Bu(this)?l(new TypeError("Cannot close an already-closing stream")):Zle(this):l(M2("close"))}getWriter(){if(!_A(this))throw M2("getWriter");return Jle(this)}}Object.defineProperties(np.prototype,{abort:{enumerable:!0},close:{enumerable:!0},getWriter:{enumerable:!0},locked:{enumerable:!0}}),s(np.prototype.abort,"abort"),s(np.prototype.close,"close"),s(np.prototype.getWriter,"getWriter"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(np.prototype,Symbol.toStringTag,{value:"WritableStream",configurable:!0});function Jle(S){return new sd(S)}function Wpt(S,T,D,K,ae=1,pe=()=>1){let xe=Object.create(np.prototype);Xle(xe);let Qe=Object.create(vA.prototype);return ide(xe,Qe,S,T,D,K,ae,pe),xe}function Xle(S){S._state="writable",S._storedError=void 0,S._writer=void 0,S._writableStreamController=void 0,S._writeRequests=new v,S._inFlightWriteRequest=void 0,S._closeRequest=void 0,S._inFlightCloseRequest=void 0,S._pendingAbortRequest=void 0,S._backpressure=!1}function _A(S){return!r(S)||!Object.prototype.hasOwnProperty.call(S,"_writableStreamController")?!1:S instanceof np}function SA(S){return S._writer!==void 0}function D2(S,T){var D;if(S._state==="closed"||S._state==="errored")return u(void 0);S._writableStreamController._abortReason=T,(D=S._writableStreamController._abortController)===null||D===void 0||D.abort(T);let K=S._state;if(K==="closed"||K==="errored")return u(void 0);if(S._pendingAbortRequest!==void 0)return S._pendingAbortRequest._promise;let ae=!1;K==="erroring"&&(ae=!0,T=void 0);let pe=c((xe,Qe)=>{S._pendingAbortRequest={_promise:void 0,_resolve:xe,_reject:Qe,_reason:T,_wasAlreadyErroring:ae}});return S._pendingAbortRequest._promise=pe,ae||x6(S,T),pe}function Zle(S){let T=S._state;if(T==="closed"||T==="errored")return l(new TypeError(`The stream (in ${T} state) is not in the writable state and cannot be closed`));let D=c((ae,pe)=>{let xe={_resolve:ae,_reject:pe};S._closeRequest=xe}),K=S._writer;return K!==void 0&&S._backpressure&&T==="writable"&&T6(K),Xpt(S._writableStreamController),D}function $pt(S){return c((D,K)=>{let ae={_resolve:D,_reject:K};S._writeRequests.push(ae)})}function y6(S,T){if(S._state==="writable"){x6(S,T);return}b6(S)}function x6(S,T){let D=S._writableStreamController;S._state="erroring",S._storedError=T;let K=S._writer;K!==void 0&&tde(K,T),!Hpt(S)&&D._started&&b6(S)}function b6(S){S._state="errored",S._writableStreamController[R]();let T=S._storedError;if(S._writeRequests.forEach(ae=>{ae._reject(T)}),S._writeRequests=new v,S._pendingAbortRequest===void 0){k2(S);return}let D=S._pendingAbortRequest;if(S._pendingAbortRequest=void 0,D._wasAlreadyErroring){D._reject(T),k2(S);return}let K=S._writableStreamController[C](D._reason);f(K,()=>(D._resolve(),k2(S),null),ae=>(D._reject(ae),k2(S),null))}function Fpt(S){S._inFlightWriteRequest._resolve(void 0),S._inFlightWriteRequest=void 0}function Upt(S,T){S._inFlightWriteRequest._reject(T),S._inFlightWriteRequest=void 0,y6(S,T)}function qpt(S){S._inFlightCloseRequest._resolve(void 0),S._inFlightCloseRequest=void 0,S._state==="erroring"&&(S._storedError=void 0,S._pendingAbortRequest!==void 0&&(S._pendingAbortRequest._resolve(),S._pendingAbortRequest=void 0)),S._state="closed";let D=S._writer;D!==void 0&&ude(D)}function jpt(S,T){S._inFlightCloseRequest._reject(T),S._inFlightCloseRequest=void 0,S._pendingAbortRequest!==void 0&&(S._pendingAbortRequest._reject(T),S._pendingAbortRequest=void 0),y6(S,T)}function Bu(S){return!(S._closeRequest===void 0&&S._inFlightCloseRequest===void 0)}function Hpt(S){return!(S._inFlightWriteRequest===void 0&&S._inFlightCloseRequest===void 0)}function Qpt(S){S._inFlightCloseRequest=S._closeRequest,S._closeRequest=void 0}function Gpt(S){S._inFlightWriteRequest=S._writeRequests.shift()}function k2(S){S._closeRequest!==void 0&&(S._closeRequest._reject(S._storedError),S._closeRequest=void 0);let T=S._writer;T!==void 0&&C6(T,S._storedError)}function E6(S,T){let D=S._writer;D!==void 0&&T!==S._backpressure&&(T?i0t(D):T6(D)),S._backpressure=T}class sd{constructor(T){if(_e(T,1,"WritableStreamDefaultWriter"),Yle(T,"First parameter"),SA(T))throw new TypeError("This stream has already been locked for exclusive writing by another writer");this._ownerWritableStream=T,T._writer=this;let D=T._state;if(D==="writable")!Bu(T)&&T._backpressure?$2(this):lde(this),W2(this);else if(D==="erroring")I6(this,T._storedError),W2(this);else if(D==="closed")lde(this),n0t(this);else{let K=T._storedError;I6(this,K),cde(this,K)}}get closed(){return hm(this)?this._closedPromise:l(gm("closed"))}get desiredSize(){if(!hm(this))throw gm("desiredSize");if(this._ownerWritableStream===void 0)throw YE("desiredSize");return Ypt(this)}get ready(){return hm(this)?this._readyPromise:l(gm("ready"))}abort(T=void 0){return hm(this)?this._ownerWritableStream===void 0?l(YE("abort")):Vpt(this,T):l(gm("abort"))}close(){if(!hm(this))return l(gm("close"));let T=this._ownerWritableStream;return T===void 0?l(YE("close")):Bu(T)?l(new TypeError("Cannot close an already-closing stream")):ede(this)}releaseLock(){if(!hm(this))throw gm("releaseLock");this._ownerWritableStream!==void 0&&rde(this)}write(T=void 0){return hm(this)?this._ownerWritableStream===void 0?l(YE("write to")):nde(this,T):l(gm("write"))}}Object.defineProperties(sd.prototype,{abort:{enumerable:!0},close:{enumerable:!0},releaseLock:{enumerable:!0},write:{enumerable:!0},closed:{enumerable:!0},desiredSize:{enumerable:!0},ready:{enumerable:!0}}),s(sd.prototype.abort,"abort"),s(sd.prototype.close,"close"),s(sd.prototype.releaseLock,"releaseLock"),s(sd.prototype.write,"write"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(sd.prototype,Symbol.toStringTag,{value:"WritableStreamDefaultWriter",configurable:!0});function hm(S){return!r(S)||!Object.prototype.hasOwnProperty.call(S,"_ownerWritableStream")?!1:S instanceof sd}function Vpt(S,T){let D=S._ownerWritableStream;return D2(D,T)}function ede(S){let T=S._ownerWritableStream;return Zle(T)}function zpt(S){let T=S._ownerWritableStream,D=T._state;return Bu(T)||D==="closed"?u(void 0):D==="errored"?l(T._storedError):ede(S)}function Kpt(S,T){S._closedPromiseState==="pending"?C6(S,T):s0t(S,T)}function tde(S,T){S._readyPromiseState==="pending"?dde(S,T):a0t(S,T)}function Ypt(S){let T=S._ownerWritableStream,D=T._state;return D==="errored"||D==="erroring"?null:D==="closed"?0:ade(T._writableStreamController)}function rde(S){let T=S._ownerWritableStream,D=new TypeError("Writer was released and can no longer be used to monitor the stream's closedness");tde(S,D),Kpt(S,D),T._writer=void 0,S._ownerWritableStream=void 0}function nde(S,T){let D=S._ownerWritableStream,K=D._writableStreamController,ae=Zpt(K,T);if(D!==S._ownerWritableStream)return l(YE("write to"));let pe=D._state;if(pe==="errored")return l(D._storedError);if(Bu(D)||pe==="closed")return l(new TypeError("The stream is closing or closed and cannot be written to"));if(pe==="erroring")return l(D._storedError);let xe=$pt(D);return e0t(K,T,ae),xe}let sde={};class vA{constructor(){throw new TypeError("Illegal constructor")}get abortReason(){if(!_6(this))throw v6("abortReason");return this._abortReason}get signal(){if(!_6(this))throw v6("signal");if(this._abortController===void 0)throw new TypeError("WritableStreamDefaultController.prototype.signal is not supported");return this._abortController.signal}error(T=void 0){if(!_6(this))throw v6("error");this._controlledWritableStream._state==="writable"&&ode(this,T)}[C](T){let D=this._abortAlgorithm(T);return L2(this),D}[R](){Ao(this)}}Object.defineProperties(vA.prototype,{abortReason:{enumerable:!0},signal:{enumerable:!0},error:{enumerable:!0}}),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(vA.prototype,Symbol.toStringTag,{value:"WritableStreamDefaultController",configurable:!0});function _6(S){return!r(S)||!Object.prototype.hasOwnProperty.call(S,"_controlledWritableStream")?!1:S instanceof vA}function ide(S,T,D,K,ae,pe,xe,Qe){T._controlledWritableStream=S,S._writableStreamController=T,T._queue=void 0,T._queueTotalSize=void 0,Ao(T),T._abortReason=void 0,T._abortController=Mpt(),T._started=!1,T._strategySizeAlgorithm=Qe,T._strategyHWM=xe,T._writeAlgorithm=K,T._closeAlgorithm=ae,T._abortAlgorithm=pe;let It=S6(T);E6(S,It);let dt=D(),Bt=u(dt);f(Bt,()=>(T._started=!0,B2(T),null),Jt=>(T._started=!0,y6(S,Jt),null))}function Jpt(S,T,D,K){let ae=Object.create(vA.prototype),pe,xe,Qe,It;T.start!==void 0?pe=()=>T.start(ae):pe=()=>{},T.write!==void 0?xe=dt=>T.write(dt,ae):xe=()=>u(void 0),T.close!==void 0?Qe=()=>T.close():Qe=()=>u(void 0),T.abort!==void 0?It=dt=>T.abort(dt):It=()=>u(void 0),ide(S,ae,pe,xe,Qe,It,D,K)}function L2(S){S._writeAlgorithm=void 0,S._closeAlgorithm=void 0,S._abortAlgorithm=void 0,S._strategySizeAlgorithm=void 0}function Xpt(S){wa(S,sde,0),B2(S)}function Zpt(S,T){try{return S._strategySizeAlgorithm(T)}catch(D){return KE(S,D),1}}function ade(S){return S._strategyHWM-S._queueTotalSize}function e0t(S,T,D){try{wa(S,T,D)}catch(ae){KE(S,ae);return}let K=S._controlledWritableStream;if(!Bu(K)&&K._state==="writable"){let ae=S6(S);E6(K,ae)}B2(S)}function B2(S){let T=S._controlledWritableStream;if(!S._started||T._inFlightWriteRequest!==void 0)return;if(T._state==="erroring"){b6(T);return}if(S._queue.length===0)return;let K=rd(S);K===sde?t0t(S):r0t(S,K)}function KE(S,T){S._controlledWritableStream._state==="writable"&&ode(S,T)}function t0t(S){let T=S._controlledWritableStream;Qpt(T),yn(S);let D=S._closeAlgorithm();L2(S),f(D,()=>(qpt(T),null),K=>(jpt(T,K),null))}function r0t(S,T){let D=S._controlledWritableStream;Gpt(D);let K=S._writeAlgorithm(T);f(K,()=>{Fpt(D);let ae=D._state;if(yn(S),!Bu(D)&&ae==="writable"){let pe=S6(S);E6(D,pe)}return B2(S),null},ae=>(D._state==="writable"&&L2(S),Upt(D,ae),null))}function S6(S){return ade(S)<=0}function ode(S,T){let D=S._controlledWritableStream;L2(S),x6(D,T)}function M2(S){return new TypeError(`WritableStream.prototype.${S} can only be used on a WritableStream`)}function v6(S){return new TypeError(`WritableStreamDefaultController.prototype.${S} can only be used on a WritableStreamDefaultController`)}function gm(S){return new TypeError(`WritableStreamDefaultWriter.prototype.${S} can only be used on a WritableStreamDefaultWriter`)}function YE(S){return new TypeError("Cannot "+S+" a stream using a released writer")}function W2(S){S._closedPromise=c((T,D)=>{S._closedPromise_resolve=T,S._closedPromise_reject=D,S._closedPromiseState="pending"})}function cde(S,T){W2(S),C6(S,T)}function n0t(S){W2(S),ude(S)}function C6(S,T){S._closedPromise_reject!==void 0&&(A(S._closedPromise),S._closedPromise_reject(T),S._closedPromise_resolve=void 0,S._closedPromise_reject=void 0,S._closedPromiseState="rejected")}function s0t(S,T){cde(S,T)}function ude(S){S._closedPromise_resolve!==void 0&&(S._closedPromise_resolve(void 0),S._closedPromise_resolve=void 0,S._closedPromise_reject=void 0,S._closedPromiseState="resolved")}function $2(S){S._readyPromise=c((T,D)=>{S._readyPromise_resolve=T,S._readyPromise_reject=D}),S._readyPromiseState="pending"}function I6(S,T){$2(S),dde(S,T)}function lde(S){$2(S),T6(S)}function dde(S,T){S._readyPromise_reject!==void 0&&(A(S._readyPromise),S._readyPromise_reject(T),S._readyPromise_resolve=void 0,S._readyPromise_reject=void 0,S._readyPromiseState="rejected")}function i0t(S){$2(S)}function a0t(S,T){I6(S,T)}function T6(S){S._readyPromise_resolve!==void 0&&(S._readyPromise_resolve(void 0),S._readyPromise_resolve=void 0,S._readyPromise_reject=void 0,S._readyPromiseState="fulfilled")}function o0t(){if(typeof globalThis<"u")return globalThis;if(typeof self<"u")return self;if(typeof global<"u")return global}let w6=o0t();function c0t(S){if(!(typeof S=="function"||typeof S=="object")||S.name!=="DOMException")return!1;try{return new S,!0}catch{return!1}}function u0t(){let S=w6?.DOMException;return c0t(S)?S:void 0}function l0t(){let S=function(D,K){this.message=D||"",this.name=K||"Error",Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)};return s(S,"DOMException"),S.prototype=Object.create(Error.prototype),Object.defineProperty(S.prototype,"constructor",{value:S,writable:!0,configurable:!0}),S}let d0t=u0t()||l0t();function fde(S,T,D,K,ae,pe){let xe=ne(S),Qe=Jle(T);S._disturbed=!0;let It=!1,dt=u(void 0);return c((Bt,Jt)=>{let un;if(pe!==void 0){if(un=()=>{let ht=pe.reason!==void 0?pe.reason:new d0t("Aborted","AbortError"),lr=[];K||lr.push(()=>T._state==="writable"?D2(T,ht):u(void 0)),ae||lr.push(()=>S._state==="readable"?Lc(S,ht):u(void 0)),Ra(()=>Promise.all(lr.map(xn=>xn())),!0,ht)},pe.aborted){un();return}pe.addEventListener("abort",un)}function Bc(){return c((ht,lr)=>{function xn(yo){yo?ht():d(wA(),xn,lr)}xn(!1)})}function wA(){return It?u(!0):d(Qe._readyPromise,()=>c((ht,lr)=>{Pe(xe,{_chunkSteps:xn=>{dt=d(nde(Qe,xn),void 0,e),ht(!1)},_closeSteps:()=>ht(!0),_errorSteps:lr})}))}if(ad(S,xe._closedPromise,ht=>(K?qo(!0,ht):Ra(()=>D2(T,ht),!0,ht),null)),ad(T,Qe._closedPromise,ht=>(ae?qo(!0,ht):Ra(()=>Lc(S,ht),!0,ht),null)),Zi(S,xe._closedPromise,()=>(D?qo():Ra(()=>zpt(Qe)),null)),Bu(T)||T._state==="closed"){let ht=new TypeError("the destination writable stream closed before all data could be piped to it");ae?qo(!0,ht):Ra(()=>Lc(S,ht),!0,ht)}A(Bc());function op(){let ht=dt;return d(dt,()=>ht!==dt?op():void 0)}function ad(ht,lr,xn){ht._state==="errored"?xn(ht._storedError):m(lr,xn)}function Zi(ht,lr,xn){ht._state==="closed"?xn():p(lr,xn)}function Ra(ht,lr,xn){if(It)return;It=!0,T._state==="writable"&&!Bu(T)?p(op(),yo):yo();function yo(){return f(ht(),()=>od(lr,xn),RA=>od(!0,RA)),null}}function qo(ht,lr){It||(It=!0,T._state==="writable"&&!Bu(T)?p(op(),()=>od(ht,lr)):od(ht,lr))}function od(ht,lr){return rde(Qe),k(xe),pe!==void 0&&pe.removeEventListener("abort",un),ht?Jt(lr):Bt(void 0),null}})}class id{constructor(){throw new TypeError("Illegal constructor")}get desiredSize(){if(!F2(this))throw q2("desiredSize");return R6(this)}close(){if(!F2(this))throw q2("close");if(!IA(this))throw new TypeError("The stream is not in a state that permits close");Am(this)}enqueue(T=void 0){if(!F2(this))throw q2("enqueue");if(!IA(this))throw new TypeError("The stream is not in a state that permits enqueue");return CA(this,T)}error(T=void 0){if(!F2(this))throw q2("error");kc(this,T)}[w](T){Ao(this);let D=this._cancelAlgorithm(T);return U2(this),D}[N](T){let D=this._controlledReadableStream;if(this._queue.length>0){let K=yn(this);this._closeRequested&&this._queue.length===0?(U2(this),ZE(D)):JE(this),T._chunkSteps(K)}else re(D,T),JE(this)}[P](){}}Object.defineProperties(id.prototype,{close:{enumerable:!0},enqueue:{enumerable:!0},error:{enumerable:!0},desiredSize:{enumerable:!0}}),s(id.prototype.close,"close"),s(id.prototype.enqueue,"enqueue"),s(id.prototype.error,"error"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(id.prototype,Symbol.toStringTag,{value:"ReadableStreamDefaultController",configurable:!0});function F2(S){return!r(S)||!Object.prototype.hasOwnProperty.call(S,"_controlledReadableStream")?!1:S instanceof id}function JE(S){if(!pde(S))return;if(S._pulling){S._pullAgain=!0;return}S._pulling=!0;let D=S._pullAlgorithm();f(D,()=>(S._pulling=!1,S._pullAgain&&(S._pullAgain=!1,JE(S)),null),K=>(kc(S,K),null))}function pde(S){let T=S._controlledReadableStream;return!IA(S)||!S._started?!1:!!(ip(T)&&ie(T)>0||R6(S)>0)}function U2(S){S._pullAlgorithm=void 0,S._cancelAlgorithm=void 0,S._strategySizeAlgorithm=void 0}function Am(S){if(!IA(S))return;let T=S._controlledReadableStream;S._closeRequested=!0,S._queue.length===0&&(U2(S),ZE(T))}function CA(S,T){if(!IA(S))return;let D=S._controlledReadableStream;if(ip(D)&&ie(D)>0)X(D,T,!1);else{let K;try{K=S._strategySizeAlgorithm(T)}catch(ae){throw kc(S,ae),ae}try{wa(S,T,K)}catch(ae){throw kc(S,ae),ae}}JE(S)}function kc(S,T){let D=S._controlledReadableStream;D._state==="readable"&&(Ao(S),U2(S),Ade(D,T))}function R6(S){let T=S._controlledReadableStream._state;return T==="errored"?null:T==="closed"?0:S._strategyHWM-S._queueTotalSize}function f0t(S){return!pde(S)}function IA(S){let T=S._controlledReadableStream._state;return!S._closeRequested&&T==="readable"}function mde(S,T,D,K,ae,pe,xe){T._controlledReadableStream=S,T._queue=void 0,T._queueTotalSize=void 0,Ao(T),T._started=!1,T._closeRequested=!1,T._pullAgain=!1,T._pulling=!1,T._strategySizeAlgorithm=xe,T._strategyHWM=pe,T._pullAlgorithm=K,T._cancelAlgorithm=ae,S._readableStreamController=T;let Qe=D();f(u(Qe),()=>(T._started=!0,JE(T),null),It=>(kc(T,It),null))}function p0t(S,T,D,K){let ae=Object.create(id.prototype),pe,xe,Qe;T.start!==void 0?pe=()=>T.start(ae):pe=()=>{},T.pull!==void 0?xe=()=>T.pull(ae):xe=()=>u(void 0),T.cancel!==void 0?Qe=It=>T.cancel(It):Qe=()=>u(void 0),mde(S,ae,pe,xe,Qe,D,K)}function q2(S){return new TypeError(`ReadableStreamDefaultController.prototype.${S} can only be used on a ReadableStreamDefaultController`)}function m0t(S,T){return fm(S._readableStreamController)?g0t(S):h0t(S)}function h0t(S,T){let D=ne(S),K=!1,ae=!1,pe=!1,xe=!1,Qe,It,dt,Bt,Jt,un=c(Zi=>{Jt=Zi});function Bc(){return K?(ae=!0,u(void 0)):(K=!0,Pe(D,{_chunkSteps:Ra=>{g(()=>{ae=!1;let qo=Ra,od=Ra;pe||CA(dt._readableStreamController,qo),xe||CA(Bt._readableStreamController,od),K=!1,ae&&Bc()})},_closeSteps:()=>{K=!1,pe||Am(dt._readableStreamController),xe||Am(Bt._readableStreamController),(!pe||!xe)&&Jt(void 0)},_errorSteps:()=>{K=!1}}),u(void 0))}function wA(Zi){if(pe=!0,Qe=Zi,xe){let Ra=bt([Qe,It]),qo=Lc(S,Ra);Jt(qo)}return un}function op(Zi){if(xe=!0,It=Zi,pe){let Ra=bt([Qe,It]),qo=Lc(S,Ra);Jt(qo)}return un}function ad(){}return dt=XE(ad,Bc,wA),Bt=XE(ad,Bc,op),m(D._closedPromise,Zi=>(kc(dt._readableStreamController,Zi),kc(Bt._readableStreamController,Zi),(!pe||!xe)&&Jt(void 0),null)),[dt,Bt]}function g0t(S){let T=ne(S),D=!1,K=!1,ae=!1,pe=!1,xe=!1,Qe,It,dt,Bt,Jt,un=c(ht=>{Jt=ht});function Bc(ht){m(ht._closedPromise,lr=>(ht!==T||(Uo(dt._readableStreamController,lr),Uo(Bt._readableStreamController,lr),(!pe||!xe)&&Jt(void 0)),null))}function wA(){mm(T)&&(k(T),T=ne(S),Bc(T)),Pe(T,{_chunkSteps:lr=>{g(()=>{K=!1,ae=!1;let xn=lr,yo=lr;if(!pe&&!xe)try{yo=Ta(lr)}catch(RA){Uo(dt._readableStreamController,RA),Uo(Bt._readableStreamController,RA),Jt(Lc(S,RA));return}pe||T2(dt._readableStreamController,xn),xe||T2(Bt._readableStreamController,yo),D=!1,K?ad():ae&&Zi()})},_closeSteps:()=>{D=!1,pe||GE(dt._readableStreamController),xe||GE(Bt._readableStreamController),dt._readableStreamController._pendingPullIntos.length>0&&w2(dt._readableStreamController,0),Bt._readableStreamController._pendingPullIntos.length>0&&w2(Bt._readableStreamController,0),(!pe||!xe)&&Jt(void 0)},_errorSteps:()=>{D=!1}})}function op(ht,lr){Ne(T)&&(k(T),T=Qle(S),Bc(T));let xn=lr?Bt:dt,yo=lr?dt:Bt;zle(T,ht,1,{_chunkSteps:NA=>{g(()=>{K=!1,ae=!1;let OA=lr?xe:pe;if(lr?pe:xe)OA||R2(xn._readableStreamController,NA);else{let Nde;try{Nde=Ta(NA)}catch(k6){Uo(xn._readableStreamController,k6),Uo(yo._readableStreamController,k6),Jt(Lc(S,k6));return}OA||R2(xn._readableStreamController,NA),T2(yo._readableStreamController,Nde)}D=!1,K?ad():ae&&Zi()})},_closeSteps:NA=>{D=!1;let OA=lr?xe:pe,Y2=lr?pe:xe;OA||GE(xn._readableStreamController),Y2||GE(yo._readableStreamController),NA!==void 0&&(OA||R2(xn._readableStreamController,NA),!Y2&&yo._readableStreamController._pendingPullIntos.length>0&&w2(yo._readableStreamController,0)),(!OA||!Y2)&&Jt(void 0)},_errorSteps:()=>{D=!1}})}function ad(){if(D)return K=!0,u(void 0);D=!0;let ht=h6(dt._readableStreamController);return ht===null?wA():op(ht._view,!1),u(void 0)}function Zi(){if(D)return ae=!0,u(void 0);D=!0;let ht=h6(Bt._readableStreamController);return ht===null?wA():op(ht._view,!0),u(void 0)}function Ra(ht){if(pe=!0,Qe=ht,xe){let lr=bt([Qe,It]),xn=Lc(S,lr);Jt(xn)}return un}function qo(ht){if(xe=!0,It=ht,pe){let lr=bt([Qe,It]),xn=Lc(S,lr);Jt(xn)}return un}function od(){}return dt=gde(od,ad,Ra),Bt=gde(od,Zi,qo),Bc(T),[dt,Bt]}function A0t(S){return r(S)&&typeof S.getReader<"u"}function y0t(S){return A0t(S)?b0t(S.getReader()):x0t(S)}function x0t(S){let T,D=ys(S,"async"),K=e;function ae(){let xe;try{xe=Hs(D)}catch(It){return l(It)}let Qe=u(xe);return h(Qe,It=>{if(!r(It))throw new TypeError("The promise returned by the iterator.next() method must fulfill with an object");if(Lu(It))Am(T._readableStreamController);else{let Bt=go(It);CA(T._readableStreamController,Bt)}})}function pe(xe){let Qe=D.iterator,It;try{It=Dr(Qe,"return")}catch(Jt){return l(Jt)}if(It===void 0)return u(void 0);let dt;try{dt=b(It,Qe,[xe])}catch(Jt){return l(Jt)}let Bt=u(dt);return h(Bt,Jt=>{if(!r(Jt))throw new TypeError("The promise returned by the iterator.return() method must fulfill with an object")})}return T=XE(K,ae,pe,0),T}function b0t(S){let T,D=e;function K(){let pe;try{pe=S.read()}catch(xe){return l(xe)}return h(pe,xe=>{if(!r(xe))throw new TypeError("The promise returned by the reader.read() method must fulfill with an object");if(xe.done)Am(T._readableStreamController);else{let Qe=xe.value;CA(T._readableStreamController,Qe)}})}function ae(pe){try{return u(S.cancel(pe))}catch(xe){return l(xe)}}return T=XE(D,K,ae,0),T}function E0t(S,T){Ce(S,T);let D=S,K=D?.autoAllocateChunkSize,ae=D?.cancel,pe=D?.pull,xe=D?.start,Qe=D?.type;return{autoAllocateChunkSize:K===void 0?void 0:H(K,`${T} has member 'autoAllocateChunkSize' that`),cancel:ae===void 0?void 0:_0t(ae,D,`${T} has member 'cancel' that`),pull:pe===void 0?void 0:S0t(pe,D,`${T} has member 'pull' that`),start:xe===void 0?void 0:v0t(xe,D,`${T} has member 'start' that`),type:Qe===void 0?void 0:C0t(Qe,`${T} has member 'type' that`)}}function _0t(S,T,D){return we(S,D),K=>y(S,T,[K])}function S0t(S,T,D){return we(S,D),K=>y(S,T,[K])}function v0t(S,T,D){return we(S,D),K=>b(S,T,[K])}function C0t(S,T){if(S=`${S}`,S!=="bytes")throw new TypeError(`${T} '${S}' is not a valid enumeration value for ReadableStreamType`);return S}function I0t(S,T){return Ce(S,T),{preventCancel:!!S?.preventCancel}}function hde(S,T){Ce(S,T);let D=S?.preventAbort,K=S?.preventCancel,ae=S?.preventClose,pe=S?.signal;return pe!==void 0&&T0t(pe,`${T} has member 'signal' that`),{preventAbort:!!D,preventCancel:!!K,preventClose:!!ae,signal:pe}}function T0t(S,T){if(!Lpt(S))throw new TypeError(`${T} is not an AbortSignal.`)}function w0t(S,T){Ce(S,T);let D=S?.readable;U(D,"readable","ReadableWritablePair"),ee(D,`${T} has member 'readable' that`);let K=S?.writable;return U(K,"writable","ReadableWritablePair"),Yle(K,`${T} has member 'writable' that`),{readable:D,writable:K}}class Si{constructor(T={},D={}){T===void 0?T=null:Fe(T,"First parameter");let K=P2(D,"Second parameter"),ae=E0t(T,"First parameter");if(N6(this),ae.type==="bytes"){if(K.size!==void 0)throw new RangeError("The strategy for a byte stream cannot have a size function");let pe=zE(K,0);_pt(this,ae,pe)}else{let pe=O2(K),xe=zE(K,1);p0t(this,ae,xe,pe)}}get locked(){if(!sp(this))throw ym("locked");return ip(this)}cancel(T=void 0){return sp(this)?ip(this)?l(new TypeError("Cannot cancel a stream that already has a reader")):Lc(this,T):l(ym("cancel"))}getReader(T=void 0){if(!sp(this))throw ym("getReader");return vpt(T,"First parameter").mode===void 0?ne(this):Qle(this)}pipeThrough(T,D={}){if(!sp(this))throw ym("pipeThrough");_e(T,1,"pipeThrough");let K=w0t(T,"First parameter"),ae=hde(D,"Second parameter");if(ip(this))throw new TypeError("ReadableStream.prototype.pipeThrough cannot be used on a locked ReadableStream");if(SA(K.writable))throw new TypeError("ReadableStream.prototype.pipeThrough cannot be used on a locked WritableStream");let pe=fde(this,K.writable,ae.preventClose,ae.preventAbort,ae.preventCancel,ae.signal);return A(pe),K.readable}pipeTo(T,D={}){if(!sp(this))return l(ym("pipeTo"));if(T===void 0)return l("Parameter 1 is required in 'pipeTo'.");if(!_A(T))return l(new TypeError("ReadableStream.prototype.pipeTo's first argument must be a WritableStream"));let K;try{K=hde(D,"Second parameter")}catch(ae){return l(ae)}return ip(this)?l(new TypeError("ReadableStream.prototype.pipeTo cannot be used on a locked ReadableStream")):SA(T)?l(new TypeError("ReadableStream.prototype.pipeTo cannot be used on a locked WritableStream")):fde(this,T,K.preventClose,K.preventAbort,K.preventCancel,K.signal)}tee(){if(!sp(this))throw ym("tee");let T=m0t(this);return bt(T)}values(T=void 0){if(!sp(this))throw ym("values");let D=I0t(T,"First parameter");return tt(this,D.preventCancel)}[js](T){return this.values(T)}static from(T){return y0t(T)}}Object.defineProperties(Si,{from:{enumerable:!0}}),Object.defineProperties(Si.prototype,{cancel:{enumerable:!0},getReader:{enumerable:!0},pipeThrough:{enumerable:!0},pipeTo:{enumerable:!0},tee:{enumerable:!0},values:{enumerable:!0},locked:{enumerable:!0}}),s(Si.from,"from"),s(Si.prototype.cancel,"cancel"),s(Si.prototype.getReader,"getReader"),s(Si.prototype.pipeThrough,"pipeThrough"),s(Si.prototype.pipeTo,"pipeTo"),s(Si.prototype.tee,"tee"),s(Si.prototype.values,"values"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(Si.prototype,Symbol.toStringTag,{value:"ReadableStream",configurable:!0}),Object.defineProperty(Si.prototype,js,{value:Si.prototype.values,writable:!0,configurable:!0});function XE(S,T,D,K=1,ae=()=>1){let pe=Object.create(Si.prototype);N6(pe);let xe=Object.create(id.prototype);return mde(pe,xe,S,T,D,K,ae),pe}function gde(S,T,D){let K=Object.create(Si.prototype);N6(K);let ae=Object.create(nd.prototype);return Hle(K,ae,S,T,D,0,void 0),K}function N6(S){S._state="readable",S._reader=void 0,S._storedError=void 0,S._disturbed=!1}function sp(S){return!r(S)||!Object.prototype.hasOwnProperty.call(S,"_readableStreamController")?!1:S instanceof Si}function ip(S){return S._reader!==void 0}function Lc(S,T){if(S._disturbed=!0,S._state==="closed")return u(void 0);if(S._state==="errored")return l(S._storedError);ZE(S);let D=S._reader;if(D!==void 0&&mm(D)){let ae=D._readIntoRequests;D._readIntoRequests=new v,ae.forEach(pe=>{pe._closeSteps(void 0)})}let K=S._readableStreamController[w](T);return h(K,e)}function ZE(S){S._state="closed";let T=S._reader;if(T!==void 0&&(J(T),Ne(T))){let D=T._readRequests;T._readRequests=new v,D.forEach(K=>{K._closeSteps()})}}function Ade(S,T){S._state="errored",S._storedError=T;let D=S._reader;D!==void 0&&(V(D,T),Ne(D)?Ke(D,T):Kle(D,T))}function ym(S){return new TypeError(`ReadableStream.prototype.${S} can only be used on a ReadableStream`)}function yde(S,T){Ce(S,T);let D=S?.highWaterMark;return U(D,"highWaterMark","QueuingStrategyInit"),{highWaterMark:G(D)}}let xde=S=>S.byteLength;s(xde,"size");class j2{constructor(T){_e(T,1,"ByteLengthQueuingStrategy"),T=yde(T,"First parameter"),this._byteLengthQueuingStrategyHighWaterMark=T.highWaterMark}get highWaterMark(){if(!Ede(this))throw bde("highWaterMark");return this._byteLengthQueuingStrategyHighWaterMark}get size(){if(!Ede(this))throw bde("size");return xde}}Object.defineProperties(j2.prototype,{highWaterMark:{enumerable:!0},size:{enumerable:!0}}),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(j2.prototype,Symbol.toStringTag,{value:"ByteLengthQueuingStrategy",configurable:!0});function bde(S){return new TypeError(`ByteLengthQueuingStrategy.prototype.${S} can only be used on a ByteLengthQueuingStrategy`)}function Ede(S){return!r(S)||!Object.prototype.hasOwnProperty.call(S,"_byteLengthQueuingStrategyHighWaterMark")?!1:S instanceof j2}let _de=()=>1;s(_de,"size");class H2{constructor(T){_e(T,1,"CountQueuingStrategy"),T=yde(T,"First parameter"),this._countQueuingStrategyHighWaterMark=T.highWaterMark}get highWaterMark(){if(!vde(this))throw Sde("highWaterMark");return this._countQueuingStrategyHighWaterMark}get size(){if(!vde(this))throw Sde("size");return _de}}Object.defineProperties(H2.prototype,{highWaterMark:{enumerable:!0},size:{enumerable:!0}}),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(H2.prototype,Symbol.toStringTag,{value:"CountQueuingStrategy",configurable:!0});function Sde(S){return new TypeError(`CountQueuingStrategy.prototype.${S} can only be used on a CountQueuingStrategy`)}function vde(S){return!r(S)||!Object.prototype.hasOwnProperty.call(S,"_countQueuingStrategyHighWaterMark")?!1:S instanceof H2}function R0t(S,T){Ce(S,T);let D=S?.cancel,K=S?.flush,ae=S?.readableType,pe=S?.start,xe=S?.transform,Qe=S?.writableType;return{cancel:D===void 0?void 0:D0t(D,S,`${T} has member 'cancel' that`),flush:K===void 0?void 0:N0t(K,S,`${T} has member 'flush' that`),readableType:ae,start:pe===void 0?void 0:O0t(pe,S,`${T} has member 'start' that`),transform:xe===void 0?void 0:P0t(xe,S,`${T} has member 'transform' that`),writableType:Qe}}function N0t(S,T,D){return we(S,D),K=>y(S,T,[K])}function O0t(S,T,D){return we(S,D),K=>b(S,T,[K])}function P0t(S,T,D){return we(S,D),(K,ae)=>y(S,T,[K,ae])}function D0t(S,T,D){return we(S,D),K=>y(S,T,[K])}class Q2{constructor(T={},D={},K={}){T===void 0&&(T=null);let ae=P2(D,"Second parameter"),pe=P2(K,"Third parameter"),xe=R0t(T,"First parameter");if(xe.readableType!==void 0)throw new RangeError("Invalid readableType specified");if(xe.writableType!==void 0)throw new RangeError("Invalid writableType specified");let Qe=zE(pe,0),It=O2(pe),dt=zE(ae,1),Bt=O2(ae),Jt,un=c(Bc=>{Jt=Bc});k0t(this,un,dt,Bt,Qe,It),B0t(this,xe),xe.start!==void 0?Jt(xe.start(this._transformStreamController)):Jt(void 0)}get readable(){if(!Cde(this))throw Rde("readable");return this._readable}get writable(){if(!Cde(this))throw Rde("writable");return this._writable}}Object.defineProperties(Q2.prototype,{readable:{enumerable:!0},writable:{enumerable:!0}}),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(Q2.prototype,Symbol.toStringTag,{value:"TransformStream",configurable:!0});function k0t(S,T,D,K,ae,pe){function xe(){return T}function Qe(un){return $0t(S,un)}function It(un){return F0t(S,un)}function dt(){return U0t(S)}S._writable=Wpt(xe,Qe,dt,It,D,K);function Bt(){return q0t(S)}function Jt(un){return j0t(S,un)}S._readable=XE(xe,Bt,Jt,ae,pe),S._backpressure=void 0,S._backpressureChangePromise=void 0,S._backpressureChangePromise_resolve=void 0,G2(S,!0),S._transformStreamController=void 0}function Cde(S){return!r(S)||!Object.prototype.hasOwnProperty.call(S,"_transformStreamController")?!1:S instanceof Q2}function Ide(S,T){kc(S._readable._readableStreamController,T),O6(S,T)}function O6(S,T){z2(S._transformStreamController),KE(S._writable._writableStreamController,T),P6(S)}function P6(S){S._backpressure&&G2(S,!1)}function G2(S,T){S._backpressureChangePromise!==void 0&&S._backpressureChangePromise_resolve(),S._backpressureChangePromise=c(D=>{S._backpressureChangePromise_resolve=D}),S._backpressure=T}class ap{constructor(){throw new TypeError("Illegal constructor")}get desiredSize(){if(!V2(this))throw K2("desiredSize");let T=this._controlledTransformStream._readable._readableStreamController;return R6(T)}enqueue(T=void 0){if(!V2(this))throw K2("enqueue");Tde(this,T)}error(T=void 0){if(!V2(this))throw K2("error");M0t(this,T)}terminate(){if(!V2(this))throw K2("terminate");W0t(this)}}Object.defineProperties(ap.prototype,{enqueue:{enumerable:!0},error:{enumerable:!0},terminate:{enumerable:!0},desiredSize:{enumerable:!0}}),s(ap.prototype.enqueue,"enqueue"),s(ap.prototype.error,"error"),s(ap.prototype.terminate,"terminate"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(ap.prototype,Symbol.toStringTag,{value:"TransformStreamDefaultController",configurable:!0});function V2(S){return!r(S)||!Object.prototype.hasOwnProperty.call(S,"_controlledTransformStream")?!1:S instanceof ap}function L0t(S,T,D,K,ae){T._controlledTransformStream=S,S._transformStreamController=T,T._transformAlgorithm=D,T._flushAlgorithm=K,T._cancelAlgorithm=ae,T._finishPromise=void 0,T._finishPromise_resolve=void 0,T._finishPromise_reject=void 0}function B0t(S,T){let D=Object.create(ap.prototype),K,ae,pe;T.transform!==void 0?K=xe=>T.transform(xe,D):K=xe=>{try{return Tde(D,xe),u(void 0)}catch(Qe){return l(Qe)}},T.flush!==void 0?ae=()=>T.flush(D):ae=()=>u(void 0),T.cancel!==void 0?pe=xe=>T.cancel(xe):pe=()=>u(void 0),L0t(S,D,K,ae,pe)}function z2(S){S._transformAlgorithm=void 0,S._flushAlgorithm=void 0,S._cancelAlgorithm=void 0}function Tde(S,T){let D=S._controlledTransformStream,K=D._readable._readableStreamController;if(!IA(K))throw new TypeError("Readable side is not in a state that permits enqueue");try{CA(K,T)}catch(pe){throw O6(D,pe),D._readable._storedError}f0t(K)!==D._backpressure&&G2(D,!0)}function M0t(S,T){Ide(S._controlledTransformStream,T)}function wde(S,T){let D=S._transformAlgorithm(T);return h(D,void 0,K=>{throw Ide(S._controlledTransformStream,K),K})}function W0t(S){let T=S._controlledTransformStream,D=T._readable._readableStreamController;Am(D);let K=new TypeError("TransformStream terminated");O6(T,K)}function $0t(S,T){let D=S._transformStreamController;if(S._backpressure){let K=S._backpressureChangePromise;return h(K,()=>{let ae=S._writable;if(ae._state==="erroring")throw ae._storedError;return wde(D,T)})}return wde(D,T)}function F0t(S,T){let D=S._transformStreamController;if(D._finishPromise!==void 0)return D._finishPromise;let K=S._readable;D._finishPromise=c((pe,xe)=>{D._finishPromise_resolve=pe,D._finishPromise_reject=xe});let ae=D._cancelAlgorithm(T);return z2(D),f(ae,()=>(K._state==="errored"?TA(D,K._storedError):(kc(K._readableStreamController,T),D6(D)),null),pe=>(kc(K._readableStreamController,pe),TA(D,pe),null)),D._finishPromise}function U0t(S){let T=S._transformStreamController;if(T._finishPromise!==void 0)return T._finishPromise;let D=S._readable;T._finishPromise=c((ae,pe)=>{T._finishPromise_resolve=ae,T._finishPromise_reject=pe});let K=T._flushAlgorithm();return z2(T),f(K,()=>(D._state==="errored"?TA(T,D._storedError):(Am(D._readableStreamController),D6(T)),null),ae=>(kc(D._readableStreamController,ae),TA(T,ae),null)),T._finishPromise}function q0t(S){return G2(S,!1),S._backpressureChangePromise}function j0t(S,T){let D=S._transformStreamController;if(D._finishPromise!==void 0)return D._finishPromise;let K=S._writable;D._finishPromise=c((pe,xe)=>{D._finishPromise_resolve=pe,D._finishPromise_reject=xe});let ae=D._cancelAlgorithm(T);return z2(D),f(ae,()=>(K._state==="errored"?TA(D,K._storedError):(KE(K._writableStreamController,T),P6(S),D6(D)),null),pe=>(KE(K._writableStreamController,pe),P6(S),TA(D,pe),null)),D._finishPromise}function K2(S){return new TypeError(`TransformStreamDefaultController.prototype.${S} can only be used on a TransformStreamDefaultController`)}function D6(S){S._finishPromise_resolve!==void 0&&(S._finishPromise_resolve(),S._finishPromise_resolve=void 0,S._finishPromise_reject=void 0)}function TA(S,T){S._finishPromise_reject!==void 0&&(A(S._finishPromise),S._finishPromise_reject(T),S._finishPromise_resolve=void 0,S._finishPromise_reject=void 0)}function Rde(S){return new TypeError(`TransformStream.prototype.${S} can only be used on a TransformStream`)}t.ByteLengthQueuingStrategy=j2,t.CountQueuingStrategy=H2,t.ReadableByteStreamController=nd,t.ReadableStream=Si,t.ReadableStreamBYOBReader=rp,t.ReadableStreamBYOBRequest=dm,t.ReadableStreamDefaultController=id,t.ReadableStreamDefaultReader=fe,t.TransformStream=Q2,t.TransformStreamDefaultController=ap,t.WritableStream=np,t.WritableStreamDefaultController=vA,t.WritableStreamDefaultWriter=sd})});var L5e=E(()=>{if(!globalThis.ReadableStream)try{let t=require("node:process"),{emitWarning:e}=t;try{t.emitWarning=()=>{},Object.assign(globalThis,require("node:stream/web")),t.emitWarning=e}catch(r){throw t.emitWarning=e,r}}catch{Object.assign(globalThis,k5e())}try{let{Blob:t}=require("buffer");t&&!t.prototype.stream&&(t.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*vz(t,e=!0){for(let r of t)if("stream"in r)yield*r.stream();else if(ArrayBuffer.isView(r))if(e){let n=r.byteOffset,s=r.byteOffset+r.byteLength;for(;n!==s;){let i=Math.min(s-n,B5e),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+B5e)).arrayBuffer();n+=a.byteLength,yield new Uint8Array(a)}}}var ljr,B5e,M5e,tir,hu,pC=dr(()=>{ljr=Re(L5e(),1);B5e=65536;M5e=class Cz{#e=[];#t="";#r=0;#n="transparent";constructor(e=[],r={}){if(typeof e!="object"||e===null)throw new TypeError("Failed to construct 'Blob': The provided value cannot be converted to a sequence.");if(typeof e[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 e){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 Cz?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 e=new TextDecoder,r="";for await(let n of vz(this.#e,!1))r+=e.decode(n,{stream:!0});return r+=e.decode(),r}async arrayBuffer(){let e=new Uint8Array(this.size),r=0;for await(let n of vz(this.#e,!1))e.set(n,r),r+=n.length;return e.buffer}stream(){let e=vz(this.#e,!0);return new globalThis.ReadableStream({type:"bytes",async pull(r){let n=await e.next();n.done?r.close():r.enqueue(n.value)},async cancel(){await e.return()}})}slice(e=0,r=this.size,n=""){let{size:s}=this,i=e<0?Math.max(s+e,0):Math.min(e,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 p=ArrayBuffer.isView(f)?f.byteLength:f.size;if(i&&p<=i)i-=p,a-=p;else{let m;ArrayBuffer.isView(f)?(m=f.subarray(i,Math.min(p,a)),l+=m.byteLength):(m=f.slice(i,Math.min(p,a)),l+=m.size),a-=p,u.push(m),i=0}}let d=new Cz([],{type:String(n).toLowerCase()});return d.#r=o,d.#e=u,d}get[Symbol.toStringTag](){return"Blob"}static[Symbol.hasInstance](e){return e&&typeof e=="object"&&typeof e.constructor=="function"&&(typeof e.stream=="function"||typeof e.arrayBuffer=="function")&&/^(Blob|File)$/.test(e[Symbol.toStringTag])}};Object.defineProperties(M5e.prototype,{size:{enumerable:!0},type:{enumerable:!0},slice:{enumerable:!0}});tir=M5e,hu=tir});var rir,nir,k0,Iz=dr(()=>{pC();rir=class extends hu{#e=0;#t="";constructor(e,r,n={}){if(arguments.length<2)throw new TypeError(`Failed to construct 'File': 2 arguments required, but only ${arguments.length} present.`);super(e,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](e){return!!e&&e instanceof hu&&/^(File)$/.test(e[Symbol.toStringTag])}},nir=rir,k0=nir});function F5e(t,e=hu){var r=`${W5e()}${W5e()}`.replace(/\./g,"").slice(-28).padStart(32,"-"),n=[],s=`--${r}\r -Content-Disposition: form-data; name="`;return t.forEach((i,a)=>typeof i=="string"?n.push(s+Tz(a)+`"\r +\u672C\u5730\u548CDocker\u90E8\u7F72\u4F7F\u7528\u65F6\u8BF7\u5148\u6302\u8F7D.cache\u76EE\u5F55\u83B7\u5F97\u6700\u4F73\u4F53\u9A8C\uFF0C\u4E91\u90E8\u7F72\u4F7F\u7528\u65F6\u4F1A\u5C06\u6570\u636E\u7F13\u5B58\u81F3\u4E34\u65F6\u5185\u5B58\u4E2D\u5982\u679C\u4F53\u9A8C\u4E0D\u4F73\u8BF7\u5173\u95ED\u3002`},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\u3002\u652F\u6301\u767E\u5206\u6BD4\u6A21\u5F0F\uFF1A\u5728\u8DEF\u5F84\u6216\u6765\u6E90\u672B\u5C3E\u8FFD\u52A0 %\uFF0C\u5982 \u4E1C\u65B9/S03/E02@tencent%:11\uFF0C\u6309\u516C\u5F0F \u539F\u65F6\u95F4 * (\u89C6\u9891\u65F6\u957F + \u504F\u79FB\u79D2\u6570) / \u89C6\u9891\u65F6\u957F \u7F29\u653E\u5168\u90E8\u5F39\u5E55\u65F6\u95F4\u3002\u793A\u4F8B\uFF1Aoverlord/S01:90,re-zero/S02@bilibili:120,re-zero/S02/E03@dandan&bilibili:10,\u4E1C\u65B9/S03/E02@tencent%:11"},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"},BANGUMI_DATA_CACHE_DAYS:{category:"cache",type:"number",description:"Bangumi Data \u7F13\u5B58\u6709\u6548\u671F(\u5929)\uFF0C\u8BBE\u7F6E0\u5219\u6BCF\u6B21\u8BF7\u6C42\u65F6\u5F3A\u5236\u5F02\u6B65\u66F4\u65B0\uFF0C\u9ED8\u8BA47\u5929",min:0,max:30},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(),customMergeRules:this.resolveCustomMergeRules(),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),doubanCookie:this.get("DOUBAN_COOKIE","","string",!0),youkuConcurrency:Math.min(this.get("YOUKU_CONCURRENCY",8,"number"),16),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:R$e(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",3,"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"),useBangumiData:this.get("USE_BANGUMI_DATA",!1,"boolean"),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"),bangumiDataCacheDays:this.get("BANGUMI_DATA_CACHE_DAYS",7,"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 _g,O,kt=gr(()=>{N$e();_g={env:{},envs:{},originalEnvVars:{},accessedEnvVars:{},VERSION:"1.19.14",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(t={}){return this.env=t,this.envs=Ef.load(this.env),this.originalEnvVars=Object.fromEntries(Ef.getOriginalEnvVars()),this.accessedEnvVars=Object.fromEntries(Ef.getAccessedEnvVars()),this.getConfig()},reInit(){return this.envs=Ef.load(this.env),this.originalEnvVars=Object.fromEntries(Ef.getOriginalEnvVars()),this.accessedEnvVars=Object.fromEntries(Ef.getAccessedEnvVars()),this.getConfig()},makeProxyUrl(t){let e=this.envs.proxyUrl||"";if(!e||!t)return t;let r=e.split(",").map(c=>c.trim()).filter(c=>c),n=null,s=null,i=null,a;try{a=new URL(t)}catch{return t}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 t}return i?`${i.replace(/\/$/,"")}/${t}`:n?`http://127.0.0.1:5321/proxy?url=${encodeURIComponent(t)}`:t},getConfig(){if(this._configProxy)return this._configProxy;let t=this;return this._configProxy=new Proxy({},{get(e,r){return r in t.envs?t.envs[r]:r==="version"?t.VERSION:r==="maxLogs"?t.MAX_LOGS:r==="maxAnimes"?t.envs.MAX_ANIMES:r==="maxRecords"?t.MAX_RECORDS:r==="maxLastSelectMap"?t.MAX_LAST_SELECT_MAP:r==="makeProxyUrl"?t.makeProxyUrl.bind(t):t[r]},set(e,r,n){return r in t.envs?t.envs[r]=n:t[r]=n,!0}}),this._configProxy}},O=new Proxy({},{get(t,e){return _g.getConfig()[e]},set(t,e,r){return _g.getConfig()[e]=r,!0},has(t,e){return e in _g.getConfig()},ownKeys(t){return Reflect.ownKeys(_g.getConfig())},getOwnPropertyDescriptor(t,e){return Object.getOwnPropertyDescriptor(_g.getConfig(),e)}})});function E(t,...e){let r={error:0,warn:1,info:2},n=r[O.logLevel]!==void 0?r[O.logLevel]:1;if((r[t]||0)>n)return;let s=e.map(u=>{if(typeof u=="object"){let l=JSON.stringify(u);return O$e(l)}else return typeof u=="string"?O$e(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");O.logBuffer.push({timestamp:c,level:t,message:i}),O.logBuffer.length>O.MAX_LOGS&&O.logBuffer.shift(),console[t](...s)}function O$e(t){let e=t;if(O.originalEnvVars&&O.accessedEnvVars)for(let[r,n]of Object.entries(O.originalEnvVars)){let s=O.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");e=e.replace(a,i)}}return e}function k$e(t){try{let e=JSON.parse(t);return JSON.stringify(e,null,2).replace(/\n/g,` + `)}catch{return t}}var vt=gr(()=>{kt()});function qlr(t){if(!/^data:/i.test(t))throw new TypeError('`uri` does not appear to be a Data URI (must begin with "data:")');t=t.replace(/\r?\n/g,"");let e=t.indexOf(",");if(e===-1||e<=4)throw new TypeError("malformed data: URI");let r=t.substring(5,e).split(";"),n="",s=!1,i=r[0]||"text/plain",a=i;for(let l=1;l{P$e=qlr});var L$e=_((GB,B$e)=>{(function(t,e){typeof GB=="object"&&typeof B$e<"u"?e(GB):typeof define=="function"&&define.amd?define(["exports"],e):(t=typeof globalThis<"u"?globalThis:t||self,e(t.WebStreamsPolyfill={}))})(GB,function(t){"use strict";function e(){}function r(v){return typeof v=="object"&&v!==null||typeof v=="function"}let n=e;function s(v,T){try{Object.defineProperty(v,"name",{value:T,configurable:!0})}catch{}}let i=Promise,a=Promise.prototype.then,o=Promise.reject.bind(i);function c(v){return new i(v)}function u(v){return c(T=>T(v))}function l(v){return o(v)}function d(v,T,P){return a.call(v,T,P)}function f(v,T,P){d(d(v,T,P),void 0,n)}function p(v,T){f(v,T)}function m(v,T){f(v,void 0,T)}function h(v,T,P){return d(v,T,P)}function y(v){d(v,void 0,n)}let g=v=>{if(typeof queueMicrotask=="function")g=queueMicrotask;else{let T=u(void 0);g=P=>d(T,P)}return g(v)};function b(v,T,P){if(typeof v!="function")throw new TypeError("Argument is not a function");return Function.prototype.apply.call(v,T,P)}function x(v,T,P){try{return u(b(v,T,P))}catch(V){return l(V)}}let A=16384;class S{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(T){let P=this._back,V=P;P._elements.length===A-1&&(V={_elements:[],_next:void 0}),P._elements.push(T),V!==P&&(this._back=V,P._next=V),++this._size}shift(){let T=this._front,P=T,V=this._cursor,ae=V+1,ge=T._elements,be=ge[V];return ae===A&&(P=T._next,ae=0),--this._size,this._cursor=ae,T!==P&&(this._front=P),ge[V]=void 0,be}forEach(T){let P=this._cursor,V=this._front,ae=V._elements;for(;(P!==ae.length||V._next!==void 0)&&!(P===ae.length&&(V=V._next,ae=V._elements,P=0,ae.length===0));)T(ae[P]),++P}peek(){let T=this._front,P=this._cursor;return T._elements[P]}}let I=Symbol("[[AbortSteps]]"),R=Symbol("[[ErrorSteps]]"),w=Symbol("[[CancelSteps]]"),N=Symbol("[[PullSteps]]"),k=Symbol("[[ReleaseSteps]]");function B(v,T){v._ownerReadableStream=T,T._reader=v,T._state==="readable"?Z(v):T._state==="closed"?U(v):W(v,T._storedError)}function M(v,T){let P=v._ownerReadableStream;return zc(P,T)}function D(v){let T=v._ownerReadableStream;T._state==="readable"?z(v,new TypeError("Reader was released and can no longer be used to monitor the stream's closedness")):j(v,new TypeError("Reader was released and can no longer be used to monitor the stream's closedness")),T._readableStreamController[k](),T._reader=void 0,v._ownerReadableStream=void 0}function L(v){return new TypeError("Cannot "+v+" a stream using a released reader")}function Z(v){v._closedPromise=c((T,P)=>{v._closedPromise_resolve=T,v._closedPromise_reject=P})}function W(v,T){Z(v),z(v,T)}function U(v){Z(v),J(v)}function z(v,T){v._closedPromise_reject!==void 0&&(y(v._closedPromise),v._closedPromise_reject(T),v._closedPromise_resolve=void 0,v._closedPromise_reject=void 0)}function j(v,T){W(v,T)}function J(v){v._closedPromise_resolve!==void 0&&(v._closedPromise_resolve(void 0),v._closedPromise_resolve=void 0,v._closedPromise_reject=void 0)}let se=Number.isFinite||function(v){return typeof v=="number"&&isFinite(v)},oe=Math.trunc||function(v){return v<0?Math.ceil(v):Math.floor(v)};function ue(v){return typeof v=="object"||typeof v=="function"}function Te(v,T){if(v!==void 0&&!ue(v))throw new TypeError(`${T} is not an object.`)}function Ne(v,T){if(typeof v!="function")throw new TypeError(`${T} is not a function.`)}function je(v){return typeof v=="object"&&v!==null||typeof v=="function"}function Fe(v,T){if(!je(v))throw new TypeError(`${T} is not an object.`)}function ve(v,T,P){if(v===void 0)throw new TypeError(`Parameter ${T} is required in '${P}'.`)}function F(v,T,P){if(v===void 0)throw new TypeError(`${T} is required in '${P}'.`)}function G(v){return Number(v)}function K(v){return v===0?0:v}function q(v){return K(oe(v))}function Q(v,T){let V=Number.MAX_SAFE_INTEGER,ae=Number(v);if(ae=K(ae),!se(ae))throw new TypeError(`${T} is not a finite number`);if(ae=q(ae),ae<0||ae>V)throw new TypeError(`${T} is outside the accepted range of 0 to ${V}, inclusive`);return!se(ae)||ae===0?0:ae}function ee(v,T){if(!Sp(v))throw new TypeError(`${T} is not a ReadableStream.`)}function ne(v){return new me(v)}function re(v,T){v._reader._readRequests.push(T)}function X(v,T,P){let ae=v._reader._readRequests.shift();P?ae._closeSteps():ae._chunkSteps(T)}function ie(v){return v._reader._readRequests.length}function ce(v){let T=v._reader;return!(T===void 0||!Oe(T))}class me{constructor(T){if(ve(T,1,"ReadableStreamDefaultReader"),ee(T,"First parameter"),Ip(T))throw new TypeError("This stream has already been locked for exclusive reading by another reader");B(this,T),this._readRequests=new S}get closed(){return Oe(this)?this._closedPromise:l(Je("closed"))}cancel(T=void 0){return Oe(this)?this._ownerReadableStream===void 0?l(L("cancel")):M(this,T):l(Je("cancel"))}read(){if(!Oe(this))return l(Je("read"));if(this._ownerReadableStream===void 0)return l(L("read from"));let T,P,V=c((ge,be)=>{T=ge,P=be});return Pe(this,{_chunkSteps:ge=>T({value:ge,done:!1}),_closeSteps:()=>T({value:void 0,done:!0}),_errorSteps:ge=>P(ge)}),V}releaseLock(){if(!Oe(this))throw Je("releaseLock");this._ownerReadableStream!==void 0&&qe(this)}}Object.defineProperties(me.prototype,{cancel:{enumerable:!0},read:{enumerable:!0},releaseLock:{enumerable:!0},closed:{enumerable:!0}}),s(me.prototype.cancel,"cancel"),s(me.prototype.read,"read"),s(me.prototype.releaseLock,"releaseLock"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(me.prototype,Symbol.toStringTag,{value:"ReadableStreamDefaultReader",configurable:!0});function Oe(v){return!r(v)||!Object.prototype.hasOwnProperty.call(v,"_readRequests")?!1:v instanceof me}function Pe(v,T){let P=v._ownerReadableStream;P._disturbed=!0,P._state==="closed"?T._closeSteps():P._state==="errored"?T._errorSteps(P._storedError):P._readableStreamController[N](T)}function qe(v){D(v);let T=new TypeError("Reader was released");Ye(v,T)}function Ye(v,T){let P=v._readRequests;v._readRequests=new S,P.forEach(V=>{V._errorSteps(T)})}function Je(v){return new TypeError(`ReadableStreamDefaultReader.prototype.${v} can only be used on a ReadableStreamDefaultReader`)}let et=Object.getPrototypeOf(Object.getPrototypeOf(async function*(){}).prototype);class st{constructor(T,P){this._ongoingPromise=void 0,this._isFinished=!1,this._reader=T,this._preventCancel=P}next(){let T=()=>this._nextSteps();return this._ongoingPromise=this._ongoingPromise?h(this._ongoingPromise,T,T):T(),this._ongoingPromise}return(T){let P=()=>this._returnSteps(T);return this._ongoingPromise?h(this._ongoingPromise,P,P):P()}_nextSteps(){if(this._isFinished)return Promise.resolve({value:void 0,done:!0});let T=this._reader,P,V,ae=c((be,Ge)=>{P=be,V=Ge});return Pe(T,{_chunkSteps:be=>{this._ongoingPromise=void 0,g(()=>P({value:be,done:!1}))},_closeSteps:()=>{this._ongoingPromise=void 0,this._isFinished=!0,D(T),P({value:void 0,done:!0})},_errorSteps:be=>{this._ongoingPromise=void 0,this._isFinished=!0,D(T),V(be)}}),ae}_returnSteps(T){if(this._isFinished)return Promise.resolve({value:T,done:!0});this._isFinished=!0;let P=this._reader;if(!this._preventCancel){let V=M(P,T);return D(P),h(V,()=>({value:T,done:!0}))}return D(P),u({value:T,done:!0})}}let ut={next(){return Pt(this)?this._asyncIteratorImpl.next():l(dt("next"))},return(v){return Pt(this)?this._asyncIteratorImpl.return(v):l(dt("return"))}};Object.setPrototypeOf(ut,et);function rt(v,T){let P=ne(v),V=new st(P,T),ae=Object.create(ut);return ae._asyncIteratorImpl=V,ae}function Pt(v){if(!r(v)||!Object.prototype.hasOwnProperty.call(v,"_asyncIteratorImpl"))return!1;try{return v._asyncIteratorImpl instanceof st}catch{return!1}}function dt(v){return new TypeError(`ReadableStreamAsyncIterator.${v} can only be used on a ReadableSteamAsyncIterator`)}let Be=Number.isNaN||function(v){return v!==v};var Xe,pt,nt;function _t(v){return v.slice()}function yn(v,T,P,V,ae){new Uint8Array(v).set(new Uint8Array(P,V,ae),T)}let It=v=>(typeof v.transfer=="function"?It=T=>T.transfer():typeof structuredClone=="function"?It=T=>structuredClone(T,{transfer:[T]}):It=T=>T,It(v)),wr=v=>(typeof v.detached=="boolean"?wr=T=>T.detached:wr=T=>T.byteLength===0,wr(v));function js(v,T,P){if(v.slice)return v.slice(T,P);let V=P-T,ae=new ArrayBuffer(V);return yn(ae,0,v,T,V),ae}function Lr(v,T){let P=v[T];if(P!=null){if(typeof P!="function")throw new TypeError(`${String(T)} is not a function`);return P}}function Qs(v){let T={[Symbol.iterator]:()=>v.iterator},P=async function*(){return yield*T}(),V=P.next;return{iterator:P,nextMethod:V,done:!1}}let Hs=(nt=(Xe=Symbol.asyncIterator)!==null&&Xe!==void 0?Xe:(pt=Symbol.for)===null||pt===void 0?void 0:pt.call(Symbol,"Symbol.asyncIterator"))!==null&&nt!==void 0?nt:"@@asyncIterator";function bs(v,T="sync",P){if(P===void 0)if(T==="async"){if(P=Lr(v,Hs),P===void 0){let ge=Lr(v,Symbol.iterator),be=bs(v,"sync",ge);return Qs(be)}}else P=Lr(v,Symbol.iterator);if(P===void 0)throw new TypeError("The object is not iterable");let V=b(P,v,[]);if(!r(V))throw new TypeError("The iterator method must return an object");let ae=V.next;return{iterator:V,nextMethod:ae,done:!1}}function Gs(v){let T=b(v.nextMethod,v.iterator,[]);if(!r(T))throw new TypeError("The iterator.next() method must return an object");return T}function Ku(v){return!!v.done}function Co(v){return v.value}function Hc(v){return!(typeof v!="number"||Be(v)||v<0)}function La(v){let T=js(v.buffer,v.byteOffset,v.byteOffset+v.byteLength);return new Uint8Array(T)}function An(v){let T=v._queue.shift();return v._queueTotalSize-=T.size,v._queueTotalSize<0&&(v._queueTotalSize=0),T.value}function Ma(v,T,P){if(!Hc(P)||P===1/0)throw new RangeError("Size must be a finite, non-NaN, non-negative number.");v._queue.push({value:T,size:P}),v._queueTotalSize+=P}function Ed(v){return v._queue.peek().value}function To(v){v._queue=new S,v._queueTotalSize=0}function tA(v){return v===DataView}function fW(v){return tA(v.constructor)}function Iyt(v){return tA(v)?1:v.BYTES_PER_ELEMENT}class Dm{constructor(){throw new TypeError("Illegal constructor")}get view(){if(!pW(this))throw AW("view");return this._view}respond(T){if(!pW(this))throw AW("respond");if(ve(T,1,"respond"),T=Q(T,"First parameter"),this._associatedReadableByteStreamController===void 0)throw new TypeError("This BYOB request has been invalidated");if(wr(this._view.buffer))throw new TypeError("The BYOB request's buffer has been detached and so cannot be used as a response");XR(this._associatedReadableByteStreamController,T)}respondWithNewView(T){if(!pW(this))throw AW("respondWithNewView");if(ve(T,1,"respondWithNewView"),!ArrayBuffer.isView(T))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(wr(T.buffer))throw new TypeError("The given view's buffer has been detached and so cannot be used as a response");ZR(this._associatedReadableByteStreamController,T)}}Object.defineProperties(Dm.prototype,{respond:{enumerable:!0},respondWithNewView:{enumerable:!0},view:{enumerable:!0}}),s(Dm.prototype.respond,"respond"),s(Dm.prototype.respondWithNewView,"respondWithNewView"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(Dm.prototype,Symbol.toStringTag,{value:"ReadableStreamBYOBRequest",configurable:!0});class vd{constructor(){throw new TypeError("Illegal constructor")}get byobRequest(){if(!Bm(this))throw Z_("byobRequest");return yW(this)}get desiredSize(){if(!Bm(this))throw Z_("desiredSize");return Bpe(this)}close(){if(!Bm(this))throw Z_("close");if(this._closeRequested)throw new TypeError("The stream has already been closed; do not close it again!");let T=this._controlledReadableByteStream._state;if(T!=="readable")throw new TypeError(`The stream (in ${T} state) is not in the readable state and cannot be closed`);X_(this)}enqueue(T){if(!Bm(this))throw Z_("enqueue");if(ve(T,1,"enqueue"),!ArrayBuffer.isView(T))throw new TypeError("chunk must be an array buffer view");if(T.byteLength===0)throw new TypeError("chunk must have non-zero byteLength");if(T.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 P=this._controlledReadableByteStream._state;if(P!=="readable")throw new TypeError(`The stream (in ${P} state) is not in the readable state and cannot be enqueued to`);JR(this,T)}error(T=void 0){if(!Bm(this))throw Z_("error");Zo(this,T)}[w](T){Cpe(this),To(this);let P=this._cancelAlgorithm(T);return YR(this),P}[N](T){let P=this._controlledReadableByteStream;if(this._queueTotalSize>0){Dpe(this,T);return}let V=this._autoAllocateChunkSize;if(V!==void 0){let ae;try{ae=new ArrayBuffer(V)}catch(be){T._errorSteps(be);return}let ge={buffer:ae,bufferByteLength:V,byteOffset:0,byteLength:V,bytesFilled:0,minimumFill:1,elementSize:1,viewConstructor:Uint8Array,readerType:"default"};this._pendingPullIntos.push(ge)}re(P,T),Lm(this)}[k](){if(this._pendingPullIntos.length>0){let T=this._pendingPullIntos.peek();T.readerType="none",this._pendingPullIntos=new S,this._pendingPullIntos.push(T)}}}Object.defineProperties(vd.prototype,{close:{enumerable:!0},enqueue:{enumerable:!0},error:{enumerable:!0},byobRequest:{enumerable:!0},desiredSize:{enumerable:!0}}),s(vd.prototype.close,"close"),s(vd.prototype.enqueue,"enqueue"),s(vd.prototype.error,"error"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(vd.prototype,Symbol.toStringTag,{value:"ReadableByteStreamController",configurable:!0});function Bm(v){return!r(v)||!Object.prototype.hasOwnProperty.call(v,"_controlledReadableByteStream")?!1:v instanceof vd}function pW(v){return!r(v)||!Object.prototype.hasOwnProperty.call(v,"_associatedReadableByteStreamController")?!1:v instanceof Dm}function Lm(v){if(!Nyt(v))return;if(v._pulling){v._pullAgain=!0;return}v._pulling=!0;let P=v._pullAlgorithm();f(P,()=>(v._pulling=!1,v._pullAgain&&(v._pullAgain=!1,Lm(v)),null),V=>(Zo(v,V),null))}function Cpe(v){hW(v),v._pendingPullIntos=new S}function mW(v,T){let P=!1;v._state==="closed"&&(P=!0);let V=Tpe(T);T.readerType==="default"?X(v,V,P):Lyt(v,V,P)}function Tpe(v){let T=v.bytesFilled,P=v.elementSize;return new v.viewConstructor(v.buffer,v.byteOffset,T/P)}function VR(v,T,P,V){v._queue.push({buffer:T,byteOffset:P,byteLength:V}),v._queueTotalSize+=V}function wpe(v,T,P,V){let ae;try{ae=js(T,P,P+V)}catch(ge){throw Zo(v,ge),ge}VR(v,ae,0,V)}function Rpe(v,T){T.bytesFilled>0&&wpe(v,T.buffer,T.byteOffset,T.bytesFilled),rA(v)}function Npe(v,T){let P=Math.min(v._queueTotalSize,T.byteLength-T.bytesFilled),V=T.bytesFilled+P,ae=P,ge=!1,be=V%T.elementSize,Ge=V-be;Ge>=T.minimumFill&&(ae=Ge-T.bytesFilled,ge=!0);let Ct=v._queue;for(;ae>0;){let ft=Ct.peek(),Lt=Math.min(ae,ft.byteLength),tr=T.byteOffset+T.bytesFilled;yn(T.buffer,tr,ft.buffer,ft.byteOffset,Lt),ft.byteLength===Lt?Ct.shift():(ft.byteOffset+=Lt,ft.byteLength-=Lt),v._queueTotalSize-=Lt,Ope(v,Lt,T),ae-=Lt}return ge}function Ope(v,T,P){P.bytesFilled+=T}function kpe(v){v._queueTotalSize===0&&v._closeRequested?(YR(v),iE(v._controlledReadableByteStream)):Lm(v)}function hW(v){v._byobRequest!==null&&(v._byobRequest._associatedReadableByteStreamController=void 0,v._byobRequest._view=null,v._byobRequest=null)}function gW(v){for(;v._pendingPullIntos.length>0;){if(v._queueTotalSize===0)return;let T=v._pendingPullIntos.peek();Npe(v,T)&&(rA(v),mW(v._controlledReadableByteStream,T))}}function Cyt(v){let T=v._controlledReadableByteStream._reader;for(;T._readRequests.length>0;){if(v._queueTotalSize===0)return;let P=T._readRequests.shift();Dpe(v,P)}}function Tyt(v,T,P,V){let ae=v._controlledReadableByteStream,ge=T.constructor,be=Iyt(ge),{byteOffset:Ge,byteLength:Ct}=T,ft=P*be,Lt;try{Lt=It(T.buffer)}catch(cn){V._errorSteps(cn);return}let tr={buffer:Lt,bufferByteLength:Lt.byteLength,byteOffset:Ge,byteLength:Ct,bytesFilled:0,minimumFill:ft,elementSize:be,viewConstructor:ge,readerType:"byob"};if(v._pendingPullIntos.length>0){v._pendingPullIntos.push(tr),Wpe(ae,V);return}if(ae._state==="closed"){let cn=new ge(tr.buffer,tr.byteOffset,0);V._closeSteps(cn);return}if(v._queueTotalSize>0){if(Npe(v,tr)){let cn=Tpe(tr);kpe(v),V._chunkSteps(cn);return}if(v._closeRequested){let cn=new TypeError("Insufficient bytes to fill elements in the given buffer");Zo(v,cn),V._errorSteps(cn);return}}v._pendingPullIntos.push(tr),Wpe(ae,V),Lm(v)}function wyt(v,T){T.readerType==="none"&&rA(v);let P=v._controlledReadableByteStream;if(xW(P))for(;$pe(P)>0;){let V=rA(v);mW(P,V)}}function Ryt(v,T,P){if(Ope(v,T,P),P.readerType==="none"){Rpe(v,P),gW(v);return}if(P.bytesFilled0){let ae=P.byteOffset+P.bytesFilled;wpe(v,P.buffer,ae-V,V)}P.bytesFilled-=V,mW(v._controlledReadableByteStream,P),gW(v)}function Ppe(v,T){let P=v._pendingPullIntos.peek();hW(v),v._controlledReadableByteStream._state==="closed"?wyt(v,P):Ryt(v,T,P),Lm(v)}function rA(v){return v._pendingPullIntos.shift()}function Nyt(v){let T=v._controlledReadableByteStream;return T._state!=="readable"||v._closeRequested||!v._started?!1:!!(ce(T)&&ie(T)>0||xW(T)&&$pe(T)>0||Bpe(v)>0)}function YR(v){v._pullAlgorithm=void 0,v._cancelAlgorithm=void 0}function X_(v){let T=v._controlledReadableByteStream;if(!(v._closeRequested||T._state!=="readable")){if(v._queueTotalSize>0){v._closeRequested=!0;return}if(v._pendingPullIntos.length>0){let P=v._pendingPullIntos.peek();if(P.bytesFilled%P.elementSize!==0){let V=new TypeError("Insufficient bytes to fill elements in the given buffer");throw Zo(v,V),V}}YR(v),iE(T)}}function JR(v,T){let P=v._controlledReadableByteStream;if(v._closeRequested||P._state!=="readable")return;let{buffer:V,byteOffset:ae,byteLength:ge}=T;if(wr(V))throw new TypeError("chunk's buffer is detached and so cannot be enqueued");let be=It(V);if(v._pendingPullIntos.length>0){let Ge=v._pendingPullIntos.peek();if(wr(Ge.buffer))throw new TypeError("The BYOB request's buffer has been detached and so cannot be filled with an enqueued chunk");hW(v),Ge.buffer=It(Ge.buffer),Ge.readerType==="none"&&Rpe(v,Ge)}if(ce(P))if(Cyt(v),ie(P)===0)VR(v,be,ae,ge);else{v._pendingPullIntos.length>0&&rA(v);let Ge=new Uint8Array(be,ae,ge);X(P,Ge,!1)}else xW(P)?(VR(v,be,ae,ge),gW(v)):VR(v,be,ae,ge);Lm(v)}function Zo(v,T){let P=v._controlledReadableByteStream;P._state==="readable"&&(Cpe(v),To(v),YR(v),u0e(P,T))}function Dpe(v,T){let P=v._queue.shift();v._queueTotalSize-=P.byteLength,kpe(v);let V=new Uint8Array(P.buffer,P.byteOffset,P.byteLength);T._chunkSteps(V)}function yW(v){if(v._byobRequest===null&&v._pendingPullIntos.length>0){let T=v._pendingPullIntos.peek(),P=new Uint8Array(T.buffer,T.byteOffset+T.bytesFilled,T.byteLength-T.bytesFilled),V=Object.create(Dm.prototype);kyt(V,v,P),v._byobRequest=V}return v._byobRequest}function Bpe(v){let T=v._controlledReadableByteStream._state;return T==="errored"?null:T==="closed"?0:v._strategyHWM-v._queueTotalSize}function XR(v,T){let P=v._pendingPullIntos.peek();if(v._controlledReadableByteStream._state==="closed"){if(T!==0)throw new TypeError("bytesWritten must be 0 when calling respond() on a closed stream")}else{if(T===0)throw new TypeError("bytesWritten must be greater than 0 when calling respond() on a readable stream");if(P.bytesFilled+T>P.byteLength)throw new RangeError("bytesWritten out of range")}P.buffer=It(P.buffer),Ppe(v,T)}function ZR(v,T){let P=v._pendingPullIntos.peek();if(v._controlledReadableByteStream._state==="closed"){if(T.byteLength!==0)throw new TypeError("The view's length must be 0 when calling respondWithNewView() on a closed stream")}else if(T.byteLength===0)throw new TypeError("The view's length must be greater than 0 when calling respondWithNewView() on a readable stream");if(P.byteOffset+P.bytesFilled!==T.byteOffset)throw new RangeError("The region specified by view does not match byobRequest");if(P.bufferByteLength!==T.buffer.byteLength)throw new RangeError("The buffer of view has different capacity than byobRequest");if(P.bytesFilled+T.byteLength>P.byteLength)throw new RangeError("The region specified by view is larger than byobRequest");let ae=T.byteLength;P.buffer=It(T.buffer),Ppe(v,ae)}function Lpe(v,T,P,V,ae,ge,be){T._controlledReadableByteStream=v,T._pullAgain=!1,T._pulling=!1,T._byobRequest=null,T._queue=T._queueTotalSize=void 0,To(T),T._closeRequested=!1,T._started=!1,T._strategyHWM=ge,T._pullAlgorithm=V,T._cancelAlgorithm=ae,T._autoAllocateChunkSize=be,T._pendingPullIntos=new S,v._readableStreamController=T;let Ge=P();f(u(Ge),()=>(T._started=!0,Lm(T),null),Ct=>(Zo(T,Ct),null))}function Oyt(v,T,P){let V=Object.create(vd.prototype),ae,ge,be;T.start!==void 0?ae=()=>T.start(V):ae=()=>{},T.pull!==void 0?ge=()=>T.pull(V):ge=()=>u(void 0),T.cancel!==void 0?be=Ct=>T.cancel(Ct):be=()=>u(void 0);let Ge=T.autoAllocateChunkSize;if(Ge===0)throw new TypeError("autoAllocateChunkSize must be greater than 0");Lpe(v,V,ae,ge,be,P,Ge)}function kyt(v,T,P){v._associatedReadableByteStreamController=T,v._view=P}function AW(v){return new TypeError(`ReadableStreamBYOBRequest.prototype.${v} can only be used on a ReadableStreamBYOBRequest`)}function Z_(v){return new TypeError(`ReadableByteStreamController.prototype.${v} can only be used on a ReadableByteStreamController`)}function Pyt(v,T){Te(v,T);let P=v?.mode;return{mode:P===void 0?void 0:Dyt(P,`${T} has member 'mode' that`)}}function Dyt(v,T){if(v=`${v}`,v!=="byob")throw new TypeError(`${T} '${v}' is not a valid enumeration value for ReadableStreamReaderMode`);return v}function Byt(v,T){var P;Te(v,T);let V=(P=v?.min)!==null&&P!==void 0?P:1;return{min:Q(V,`${T} has member 'min' that`)}}function Mpe(v){return new Ep(v)}function Wpe(v,T){v._reader._readIntoRequests.push(T)}function Lyt(v,T,P){let ae=v._reader._readIntoRequests.shift();P?ae._closeSteps(T):ae._chunkSteps(T)}function $pe(v){return v._reader._readIntoRequests.length}function xW(v){let T=v._reader;return!(T===void 0||!Mm(T))}class Ep{constructor(T){if(ve(T,1,"ReadableStreamBYOBReader"),ee(T,"First parameter"),Ip(T))throw new TypeError("This stream has already been locked for exclusive reading by another reader");if(!Bm(T._readableStreamController))throw new TypeError("Cannot construct a ReadableStreamBYOBReader for a stream not constructed with a byte source");B(this,T),this._readIntoRequests=new S}get closed(){return Mm(this)?this._closedPromise:l(eN("closed"))}cancel(T=void 0){return Mm(this)?this._ownerReadableStream===void 0?l(L("cancel")):M(this,T):l(eN("cancel"))}read(T,P={}){if(!Mm(this))return l(eN("read"));if(!ArrayBuffer.isView(T))return l(new TypeError("view must be an array buffer view"));if(T.byteLength===0)return l(new TypeError("view must have non-zero byteLength"));if(T.buffer.byteLength===0)return l(new TypeError("view's buffer must have non-zero byteLength"));if(wr(T.buffer))return l(new TypeError("view's buffer has been detached"));let V;try{V=Byt(P,"options")}catch(ft){return l(ft)}let ae=V.min;if(ae===0)return l(new TypeError("options.min must be greater than 0"));if(fW(T)){if(ae>T.byteLength)return l(new RangeError("options.min must be less than or equal to view's byteLength"))}else if(ae>T.length)return l(new RangeError("options.min must be less than or equal to view's length"));if(this._ownerReadableStream===void 0)return l(L("read from"));let ge,be,Ge=c((ft,Lt)=>{ge=ft,be=Lt});return Upe(this,T,ae,{_chunkSteps:ft=>ge({value:ft,done:!1}),_closeSteps:ft=>ge({value:ft,done:!0}),_errorSteps:ft=>be(ft)}),Ge}releaseLock(){if(!Mm(this))throw eN("releaseLock");this._ownerReadableStream!==void 0&&Myt(this)}}Object.defineProperties(Ep.prototype,{cancel:{enumerable:!0},read:{enumerable:!0},releaseLock:{enumerable:!0},closed:{enumerable:!0}}),s(Ep.prototype.cancel,"cancel"),s(Ep.prototype.read,"read"),s(Ep.prototype.releaseLock,"releaseLock"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(Ep.prototype,Symbol.toStringTag,{value:"ReadableStreamBYOBReader",configurable:!0});function Mm(v){return!r(v)||!Object.prototype.hasOwnProperty.call(v,"_readIntoRequests")?!1:v instanceof Ep}function Upe(v,T,P,V){let ae=v._ownerReadableStream;ae._disturbed=!0,ae._state==="errored"?V._errorSteps(ae._storedError):Tyt(ae._readableStreamController,T,P,V)}function Myt(v){D(v);let T=new TypeError("Reader was released");Fpe(v,T)}function Fpe(v,T){let P=v._readIntoRequests;v._readIntoRequests=new S,P.forEach(V=>{V._errorSteps(T)})}function eN(v){return new TypeError(`ReadableStreamBYOBReader.prototype.${v} can only be used on a ReadableStreamBYOBReader`)}function eE(v,T){let{highWaterMark:P}=v;if(P===void 0)return T;if(Be(P)||P<0)throw new RangeError("Invalid highWaterMark");return P}function tN(v){let{size:T}=v;return T||(()=>1)}function rN(v,T){Te(v,T);let P=v?.highWaterMark,V=v?.size;return{highWaterMark:P===void 0?void 0:G(P),size:V===void 0?void 0:Wyt(V,`${T} has member 'size' that`)}}function Wyt(v,T){return Ne(v,T),P=>G(v(P))}function $yt(v,T){Te(v,T);let P=v?.abort,V=v?.close,ae=v?.start,ge=v?.type,be=v?.write;return{abort:P===void 0?void 0:Uyt(P,v,`${T} has member 'abort' that`),close:V===void 0?void 0:Fyt(V,v,`${T} has member 'close' that`),start:ae===void 0?void 0:qyt(ae,v,`${T} has member 'start' that`),write:be===void 0?void 0:jyt(be,v,`${T} has member 'write' that`),type:ge}}function Uyt(v,T,P){return Ne(v,P),V=>x(v,T,[V])}function Fyt(v,T,P){return Ne(v,P),()=>x(v,T,[])}function qyt(v,T,P){return Ne(v,P),V=>b(v,T,[V])}function jyt(v,T,P){return Ne(v,P),(V,ae)=>x(v,T,[V,ae])}function qpe(v,T){if(!nA(v))throw new TypeError(`${T} is not a WritableStream.`)}function Qyt(v){if(typeof v!="object"||v===null)return!1;try{return typeof v.aborted=="boolean"}catch{return!1}}let Hyt=typeof AbortController=="function";function Gyt(){if(Hyt)return new AbortController}class vp{constructor(T={},P={}){T===void 0?T=null:Fe(T,"First parameter");let V=rN(P,"Second parameter"),ae=$yt(T,"First parameter");if(Qpe(this),ae.type!==void 0)throw new RangeError("Invalid type is specified");let be=tN(V),Ge=eE(V,1);aAt(this,ae,Ge,be)}get locked(){if(!nA(this))throw oN("locked");return sA(this)}abort(T=void 0){return nA(this)?sA(this)?l(new TypeError("Cannot abort a stream that already has a writer")):nN(this,T):l(oN("abort"))}close(){return nA(this)?sA(this)?l(new TypeError("Cannot close a stream that already has a writer")):Vu(this)?l(new TypeError("Cannot close an already-closing stream")):Hpe(this):l(oN("close"))}getWriter(){if(!nA(this))throw oN("getWriter");return jpe(this)}}Object.defineProperties(vp.prototype,{abort:{enumerable:!0},close:{enumerable:!0},getWriter:{enumerable:!0},locked:{enumerable:!0}}),s(vp.prototype.abort,"abort"),s(vp.prototype.close,"close"),s(vp.prototype.getWriter,"getWriter"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(vp.prototype,Symbol.toStringTag,{value:"WritableStream",configurable:!0});function jpe(v){return new Sd(v)}function zyt(v,T,P,V,ae=1,ge=()=>1){let be=Object.create(vp.prototype);Qpe(be);let Ge=Object.create(iA.prototype);return Jpe(be,Ge,v,T,P,V,ae,ge),be}function Qpe(v){v._state="writable",v._storedError=void 0,v._writer=void 0,v._writableStreamController=void 0,v._writeRequests=new S,v._inFlightWriteRequest=void 0,v._closeRequest=void 0,v._inFlightCloseRequest=void 0,v._pendingAbortRequest=void 0,v._backpressure=!1}function nA(v){return!r(v)||!Object.prototype.hasOwnProperty.call(v,"_writableStreamController")?!1:v instanceof vp}function sA(v){return v._writer!==void 0}function nN(v,T){var P;if(v._state==="closed"||v._state==="errored")return u(void 0);v._writableStreamController._abortReason=T,(P=v._writableStreamController._abortController)===null||P===void 0||P.abort(T);let V=v._state;if(V==="closed"||V==="errored")return u(void 0);if(v._pendingAbortRequest!==void 0)return v._pendingAbortRequest._promise;let ae=!1;V==="erroring"&&(ae=!0,T=void 0);let ge=c((be,Ge)=>{v._pendingAbortRequest={_promise:void 0,_resolve:be,_reject:Ge,_reason:T,_wasAlreadyErroring:ae}});return v._pendingAbortRequest._promise=ge,ae||_W(v,T),ge}function Hpe(v){let T=v._state;if(T==="closed"||T==="errored")return l(new TypeError(`The stream (in ${T} state) is not in the writable state and cannot be closed`));let P=c((ae,ge)=>{let be={_resolve:ae,_reject:ge};v._closeRequest=be}),V=v._writer;return V!==void 0&&v._backpressure&&T==="writable"&&RW(V),oAt(v._writableStreamController),P}function Kyt(v){return c((P,V)=>{let ae={_resolve:P,_reject:V};v._writeRequests.push(ae)})}function bW(v,T){if(v._state==="writable"){_W(v,T);return}EW(v)}function _W(v,T){let P=v._writableStreamController;v._state="erroring",v._storedError=T;let V=v._writer;V!==void 0&&zpe(V,T),!Zyt(v)&&P._started&&EW(v)}function EW(v){v._state="errored",v._writableStreamController[R]();let T=v._storedError;if(v._writeRequests.forEach(ae=>{ae._reject(T)}),v._writeRequests=new S,v._pendingAbortRequest===void 0){sN(v);return}let P=v._pendingAbortRequest;if(v._pendingAbortRequest=void 0,P._wasAlreadyErroring){P._reject(T),sN(v);return}let V=v._writableStreamController[I](P._reason);f(V,()=>(P._resolve(),sN(v),null),ae=>(P._reject(ae),sN(v),null))}function Vyt(v){v._inFlightWriteRequest._resolve(void 0),v._inFlightWriteRequest=void 0}function Yyt(v,T){v._inFlightWriteRequest._reject(T),v._inFlightWriteRequest=void 0,bW(v,T)}function Jyt(v){v._inFlightCloseRequest._resolve(void 0),v._inFlightCloseRequest=void 0,v._state==="erroring"&&(v._storedError=void 0,v._pendingAbortRequest!==void 0&&(v._pendingAbortRequest._resolve(),v._pendingAbortRequest=void 0)),v._state="closed";let P=v._writer;P!==void 0&&t0e(P)}function Xyt(v,T){v._inFlightCloseRequest._reject(T),v._inFlightCloseRequest=void 0,v._pendingAbortRequest!==void 0&&(v._pendingAbortRequest._reject(T),v._pendingAbortRequest=void 0),bW(v,T)}function Vu(v){return!(v._closeRequest===void 0&&v._inFlightCloseRequest===void 0)}function Zyt(v){return!(v._inFlightWriteRequest===void 0&&v._inFlightCloseRequest===void 0)}function eAt(v){v._inFlightCloseRequest=v._closeRequest,v._closeRequest=void 0}function tAt(v){v._inFlightWriteRequest=v._writeRequests.shift()}function sN(v){v._closeRequest!==void 0&&(v._closeRequest._reject(v._storedError),v._closeRequest=void 0);let T=v._writer;T!==void 0&&TW(T,v._storedError)}function vW(v,T){let P=v._writer;P!==void 0&&T!==v._backpressure&&(T?mAt(P):RW(P)),v._backpressure=T}class Sd{constructor(T){if(ve(T,1,"WritableStreamDefaultWriter"),qpe(T,"First parameter"),sA(T))throw new TypeError("This stream has already been locked for exclusive writing by another writer");this._ownerWritableStream=T,T._writer=this;let P=T._state;if(P==="writable")!Vu(T)&&T._backpressure?uN(this):r0e(this),cN(this);else if(P==="erroring")wW(this,T._storedError),cN(this);else if(P==="closed")r0e(this),fAt(this);else{let V=T._storedError;wW(this,V),e0e(this,V)}}get closed(){return Wm(this)?this._closedPromise:l($m("closed"))}get desiredSize(){if(!Wm(this))throw $m("desiredSize");if(this._ownerWritableStream===void 0)throw rE("desiredSize");return iAt(this)}get ready(){return Wm(this)?this._readyPromise:l($m("ready"))}abort(T=void 0){return Wm(this)?this._ownerWritableStream===void 0?l(rE("abort")):rAt(this,T):l($m("abort"))}close(){if(!Wm(this))return l($m("close"));let T=this._ownerWritableStream;return T===void 0?l(rE("close")):Vu(T)?l(new TypeError("Cannot close an already-closing stream")):Gpe(this)}releaseLock(){if(!Wm(this))throw $m("releaseLock");this._ownerWritableStream!==void 0&&Kpe(this)}write(T=void 0){return Wm(this)?this._ownerWritableStream===void 0?l(rE("write to")):Vpe(this,T):l($m("write"))}}Object.defineProperties(Sd.prototype,{abort:{enumerable:!0},close:{enumerable:!0},releaseLock:{enumerable:!0},write:{enumerable:!0},closed:{enumerable:!0},desiredSize:{enumerable:!0},ready:{enumerable:!0}}),s(Sd.prototype.abort,"abort"),s(Sd.prototype.close,"close"),s(Sd.prototype.releaseLock,"releaseLock"),s(Sd.prototype.write,"write"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(Sd.prototype,Symbol.toStringTag,{value:"WritableStreamDefaultWriter",configurable:!0});function Wm(v){return!r(v)||!Object.prototype.hasOwnProperty.call(v,"_ownerWritableStream")?!1:v instanceof Sd}function rAt(v,T){let P=v._ownerWritableStream;return nN(P,T)}function Gpe(v){let T=v._ownerWritableStream;return Hpe(T)}function nAt(v){let T=v._ownerWritableStream,P=T._state;return Vu(T)||P==="closed"?u(void 0):P==="errored"?l(T._storedError):Gpe(v)}function sAt(v,T){v._closedPromiseState==="pending"?TW(v,T):pAt(v,T)}function zpe(v,T){v._readyPromiseState==="pending"?n0e(v,T):hAt(v,T)}function iAt(v){let T=v._ownerWritableStream,P=T._state;return P==="errored"||P==="erroring"?null:P==="closed"?0:Xpe(T._writableStreamController)}function Kpe(v){let T=v._ownerWritableStream,P=new TypeError("Writer was released and can no longer be used to monitor the stream's closedness");zpe(v,P),sAt(v,P),T._writer=void 0,v._ownerWritableStream=void 0}function Vpe(v,T){let P=v._ownerWritableStream,V=P._writableStreamController,ae=cAt(V,T);if(P!==v._ownerWritableStream)return l(rE("write to"));let ge=P._state;if(ge==="errored")return l(P._storedError);if(Vu(P)||ge==="closed")return l(new TypeError("The stream is closing or closed and cannot be written to"));if(ge==="erroring")return l(P._storedError);let be=Kyt(P);return uAt(V,T,ae),be}let Ype={};class iA{constructor(){throw new TypeError("Illegal constructor")}get abortReason(){if(!SW(this))throw CW("abortReason");return this._abortReason}get signal(){if(!SW(this))throw CW("signal");if(this._abortController===void 0)throw new TypeError("WritableStreamDefaultController.prototype.signal is not supported");return this._abortController.signal}error(T=void 0){if(!SW(this))throw CW("error");this._controlledWritableStream._state==="writable"&&Zpe(this,T)}[I](T){let P=this._abortAlgorithm(T);return iN(this),P}[R](){To(this)}}Object.defineProperties(iA.prototype,{abortReason:{enumerable:!0},signal:{enumerable:!0},error:{enumerable:!0}}),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(iA.prototype,Symbol.toStringTag,{value:"WritableStreamDefaultController",configurable:!0});function SW(v){return!r(v)||!Object.prototype.hasOwnProperty.call(v,"_controlledWritableStream")?!1:v instanceof iA}function Jpe(v,T,P,V,ae,ge,be,Ge){T._controlledWritableStream=v,v._writableStreamController=T,T._queue=void 0,T._queueTotalSize=void 0,To(T),T._abortReason=void 0,T._abortController=Gyt(),T._started=!1,T._strategySizeAlgorithm=Ge,T._strategyHWM=be,T._writeAlgorithm=V,T._closeAlgorithm=ae,T._abortAlgorithm=ge;let Ct=IW(T);vW(v,Ct);let ft=P(),Lt=u(ft);f(Lt,()=>(T._started=!0,aN(T),null),tr=>(T._started=!0,bW(v,tr),null))}function aAt(v,T,P,V){let ae=Object.create(iA.prototype),ge,be,Ge,Ct;T.start!==void 0?ge=()=>T.start(ae):ge=()=>{},T.write!==void 0?be=ft=>T.write(ft,ae):be=()=>u(void 0),T.close!==void 0?Ge=()=>T.close():Ge=()=>u(void 0),T.abort!==void 0?Ct=ft=>T.abort(ft):Ct=()=>u(void 0),Jpe(v,ae,ge,be,Ge,Ct,P,V)}function iN(v){v._writeAlgorithm=void 0,v._closeAlgorithm=void 0,v._abortAlgorithm=void 0,v._strategySizeAlgorithm=void 0}function oAt(v){Ma(v,Ype,0),aN(v)}function cAt(v,T){try{return v._strategySizeAlgorithm(T)}catch(P){return tE(v,P),1}}function Xpe(v){return v._strategyHWM-v._queueTotalSize}function uAt(v,T,P){try{Ma(v,T,P)}catch(ae){tE(v,ae);return}let V=v._controlledWritableStream;if(!Vu(V)&&V._state==="writable"){let ae=IW(v);vW(V,ae)}aN(v)}function aN(v){let T=v._controlledWritableStream;if(!v._started||T._inFlightWriteRequest!==void 0)return;if(T._state==="erroring"){EW(T);return}if(v._queue.length===0)return;let V=Ed(v);V===Ype?lAt(v):dAt(v,V)}function tE(v,T){v._controlledWritableStream._state==="writable"&&Zpe(v,T)}function lAt(v){let T=v._controlledWritableStream;eAt(T),An(v);let P=v._closeAlgorithm();iN(v),f(P,()=>(Jyt(T),null),V=>(Xyt(T,V),null))}function dAt(v,T){let P=v._controlledWritableStream;tAt(P);let V=v._writeAlgorithm(T);f(V,()=>{Vyt(P);let ae=P._state;if(An(v),!Vu(P)&&ae==="writable"){let ge=IW(v);vW(P,ge)}return aN(v),null},ae=>(P._state==="writable"&&iN(v),Yyt(P,ae),null))}function IW(v){return Xpe(v)<=0}function Zpe(v,T){let P=v._controlledWritableStream;iN(v),_W(P,T)}function oN(v){return new TypeError(`WritableStream.prototype.${v} can only be used on a WritableStream`)}function CW(v){return new TypeError(`WritableStreamDefaultController.prototype.${v} can only be used on a WritableStreamDefaultController`)}function $m(v){return new TypeError(`WritableStreamDefaultWriter.prototype.${v} can only be used on a WritableStreamDefaultWriter`)}function rE(v){return new TypeError("Cannot "+v+" a stream using a released writer")}function cN(v){v._closedPromise=c((T,P)=>{v._closedPromise_resolve=T,v._closedPromise_reject=P,v._closedPromiseState="pending"})}function e0e(v,T){cN(v),TW(v,T)}function fAt(v){cN(v),t0e(v)}function TW(v,T){v._closedPromise_reject!==void 0&&(y(v._closedPromise),v._closedPromise_reject(T),v._closedPromise_resolve=void 0,v._closedPromise_reject=void 0,v._closedPromiseState="rejected")}function pAt(v,T){e0e(v,T)}function t0e(v){v._closedPromise_resolve!==void 0&&(v._closedPromise_resolve(void 0),v._closedPromise_resolve=void 0,v._closedPromise_reject=void 0,v._closedPromiseState="resolved")}function uN(v){v._readyPromise=c((T,P)=>{v._readyPromise_resolve=T,v._readyPromise_reject=P}),v._readyPromiseState="pending"}function wW(v,T){uN(v),n0e(v,T)}function r0e(v){uN(v),RW(v)}function n0e(v,T){v._readyPromise_reject!==void 0&&(y(v._readyPromise),v._readyPromise_reject(T),v._readyPromise_resolve=void 0,v._readyPromise_reject=void 0,v._readyPromiseState="rejected")}function mAt(v){uN(v)}function hAt(v,T){wW(v,T)}function RW(v){v._readyPromise_resolve!==void 0&&(v._readyPromise_resolve(void 0),v._readyPromise_resolve=void 0,v._readyPromise_reject=void 0,v._readyPromiseState="fulfilled")}function gAt(){if(typeof globalThis<"u")return globalThis;if(typeof self<"u")return self;if(typeof global<"u")return global}let NW=gAt();function yAt(v){if(!(typeof v=="function"||typeof v=="object")||v.name!=="DOMException")return!1;try{return new v,!0}catch{return!1}}function AAt(){let v=NW?.DOMException;return yAt(v)?v:void 0}function xAt(){let v=function(P,V){this.message=P||"",this.name=V||"Error",Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)};return s(v,"DOMException"),v.prototype=Object.create(Error.prototype),Object.defineProperty(v.prototype,"constructor",{value:v,writable:!0,configurable:!0}),v}let bAt=AAt()||xAt();function s0e(v,T,P,V,ae,ge){let be=ne(v),Ge=jpe(T);v._disturbed=!0;let Ct=!1,ft=u(void 0);return c((Lt,tr)=>{let cn;if(ge!==void 0){if(cn=()=>{let gt=ge.reason!==void 0?ge.reason:new bAt("Aborted","AbortError"),hr=[];V||hr.push(()=>T._state==="writable"?nN(T,gt):u(void 0)),ae||hr.push(()=>v._state==="readable"?zc(v,gt):u(void 0)),Wa(()=>Promise.all(hr.map(xn=>xn())),!0,gt)},ge.aborted){cn();return}ge.addEventListener("abort",cn)}function Kc(){return c((gt,hr)=>{function xn(wo){wo?gt():d(uA(),xn,hr)}xn(!1)})}function uA(){return Ct?u(!0):d(Ge._readyPromise,()=>c((gt,hr)=>{Pe(be,{_chunkSteps:xn=>{ft=d(Vpe(Ge,xn),void 0,e),gt(!1)},_closeSteps:()=>gt(!0),_errorSteps:hr})}))}if(Cd(v,be._closedPromise,gt=>(V?ec(!0,gt):Wa(()=>nN(T,gt),!0,gt),null)),Cd(T,Ge._closedPromise,gt=>(ae?ec(!0,gt):Wa(()=>zc(v,gt),!0,gt),null)),ca(v,be._closedPromise,()=>(P?ec():Wa(()=>nAt(Ge)),null)),Vu(T)||T._state==="closed"){let gt=new TypeError("the destination writable stream closed before all data could be piped to it");ae?ec(!0,gt):Wa(()=>zc(v,gt),!0,gt)}y(Kc());function Tp(){let gt=ft;return d(ft,()=>gt!==ft?Tp():void 0)}function Cd(gt,hr,xn){gt._state==="errored"?xn(gt._storedError):m(hr,xn)}function ca(gt,hr,xn){gt._state==="closed"?xn():p(hr,xn)}function Wa(gt,hr,xn){if(Ct)return;Ct=!0,T._state==="writable"&&!Vu(T)?p(Tp(),wo):wo();function wo(){return f(gt(),()=>Td(hr,xn),lA=>Td(!0,lA)),null}}function ec(gt,hr){Ct||(Ct=!0,T._state==="writable"&&!Vu(T)?p(Tp(),()=>Td(gt,hr)):Td(gt,hr))}function Td(gt,hr){return Kpe(Ge),D(be),ge!==void 0&&ge.removeEventListener("abort",cn),gt?tr(hr):Lt(void 0),null}})}class Id{constructor(){throw new TypeError("Illegal constructor")}get desiredSize(){if(!lN(this))throw fN("desiredSize");return OW(this)}close(){if(!lN(this))throw fN("close");if(!oA(this))throw new TypeError("The stream is not in a state that permits close");Um(this)}enqueue(T=void 0){if(!lN(this))throw fN("enqueue");if(!oA(this))throw new TypeError("The stream is not in a state that permits enqueue");return aA(this,T)}error(T=void 0){if(!lN(this))throw fN("error");Gc(this,T)}[w](T){To(this);let P=this._cancelAlgorithm(T);return dN(this),P}[N](T){let P=this._controlledReadableStream;if(this._queue.length>0){let V=An(this);this._closeRequested&&this._queue.length===0?(dN(this),iE(P)):nE(this),T._chunkSteps(V)}else re(P,T),nE(this)}[k](){}}Object.defineProperties(Id.prototype,{close:{enumerable:!0},enqueue:{enumerable:!0},error:{enumerable:!0},desiredSize:{enumerable:!0}}),s(Id.prototype.close,"close"),s(Id.prototype.enqueue,"enqueue"),s(Id.prototype.error,"error"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(Id.prototype,Symbol.toStringTag,{value:"ReadableStreamDefaultController",configurable:!0});function lN(v){return!r(v)||!Object.prototype.hasOwnProperty.call(v,"_controlledReadableStream")?!1:v instanceof Id}function nE(v){if(!i0e(v))return;if(v._pulling){v._pullAgain=!0;return}v._pulling=!0;let P=v._pullAlgorithm();f(P,()=>(v._pulling=!1,v._pullAgain&&(v._pullAgain=!1,nE(v)),null),V=>(Gc(v,V),null))}function i0e(v){let T=v._controlledReadableStream;return!oA(v)||!v._started?!1:!!(Ip(T)&&ie(T)>0||OW(v)>0)}function dN(v){v._pullAlgorithm=void 0,v._cancelAlgorithm=void 0,v._strategySizeAlgorithm=void 0}function Um(v){if(!oA(v))return;let T=v._controlledReadableStream;v._closeRequested=!0,v._queue.length===0&&(dN(v),iE(T))}function aA(v,T){if(!oA(v))return;let P=v._controlledReadableStream;if(Ip(P)&&ie(P)>0)X(P,T,!1);else{let V;try{V=v._strategySizeAlgorithm(T)}catch(ae){throw Gc(v,ae),ae}try{Ma(v,T,V)}catch(ae){throw Gc(v,ae),ae}}nE(v)}function Gc(v,T){let P=v._controlledReadableStream;P._state==="readable"&&(To(v),dN(v),u0e(P,T))}function OW(v){let T=v._controlledReadableStream._state;return T==="errored"?null:T==="closed"?0:v._strategyHWM-v._queueTotalSize}function _At(v){return!i0e(v)}function oA(v){let T=v._controlledReadableStream._state;return!v._closeRequested&&T==="readable"}function a0e(v,T,P,V,ae,ge,be){T._controlledReadableStream=v,T._queue=void 0,T._queueTotalSize=void 0,To(T),T._started=!1,T._closeRequested=!1,T._pullAgain=!1,T._pulling=!1,T._strategySizeAlgorithm=be,T._strategyHWM=ge,T._pullAlgorithm=V,T._cancelAlgorithm=ae,v._readableStreamController=T;let Ge=P();f(u(Ge),()=>(T._started=!0,nE(T),null),Ct=>(Gc(T,Ct),null))}function EAt(v,T,P,V){let ae=Object.create(Id.prototype),ge,be,Ge;T.start!==void 0?ge=()=>T.start(ae):ge=()=>{},T.pull!==void 0?be=()=>T.pull(ae):be=()=>u(void 0),T.cancel!==void 0?Ge=Ct=>T.cancel(Ct):Ge=()=>u(void 0),a0e(v,ae,ge,be,Ge,P,V)}function fN(v){return new TypeError(`ReadableStreamDefaultController.prototype.${v} can only be used on a ReadableStreamDefaultController`)}function vAt(v,T){return Bm(v._readableStreamController)?IAt(v):SAt(v)}function SAt(v,T){let P=ne(v),V=!1,ae=!1,ge=!1,be=!1,Ge,Ct,ft,Lt,tr,cn=c(ca=>{tr=ca});function Kc(){return V?(ae=!0,u(void 0)):(V=!0,Pe(P,{_chunkSteps:Wa=>{g(()=>{ae=!1;let ec=Wa,Td=Wa;ge||aA(ft._readableStreamController,ec),be||aA(Lt._readableStreamController,Td),V=!1,ae&&Kc()})},_closeSteps:()=>{V=!1,ge||Um(ft._readableStreamController),be||Um(Lt._readableStreamController),(!ge||!be)&&tr(void 0)},_errorSteps:()=>{V=!1}}),u(void 0))}function uA(ca){if(ge=!0,Ge=ca,be){let Wa=_t([Ge,Ct]),ec=zc(v,Wa);tr(ec)}return cn}function Tp(ca){if(be=!0,Ct=ca,ge){let Wa=_t([Ge,Ct]),ec=zc(v,Wa);tr(ec)}return cn}function Cd(){}return ft=sE(Cd,Kc,uA),Lt=sE(Cd,Kc,Tp),m(P._closedPromise,ca=>(Gc(ft._readableStreamController,ca),Gc(Lt._readableStreamController,ca),(!ge||!be)&&tr(void 0),null)),[ft,Lt]}function IAt(v){let T=ne(v),P=!1,V=!1,ae=!1,ge=!1,be=!1,Ge,Ct,ft,Lt,tr,cn=c(gt=>{tr=gt});function Kc(gt){m(gt._closedPromise,hr=>(gt!==T||(Zo(ft._readableStreamController,hr),Zo(Lt._readableStreamController,hr),(!ge||!be)&&tr(void 0)),null))}function uA(){Mm(T)&&(D(T),T=ne(v),Kc(T)),Pe(T,{_chunkSteps:hr=>{g(()=>{V=!1,ae=!1;let xn=hr,wo=hr;if(!ge&&!be)try{wo=La(hr)}catch(lA){Zo(ft._readableStreamController,lA),Zo(Lt._readableStreamController,lA),tr(zc(v,lA));return}ge||JR(ft._readableStreamController,xn),be||JR(Lt._readableStreamController,wo),P=!1,V?Cd():ae&&ca()})},_closeSteps:()=>{P=!1,ge||X_(ft._readableStreamController),be||X_(Lt._readableStreamController),ft._readableStreamController._pendingPullIntos.length>0&&XR(ft._readableStreamController,0),Lt._readableStreamController._pendingPullIntos.length>0&&XR(Lt._readableStreamController,0),(!ge||!be)&&tr(void 0)},_errorSteps:()=>{P=!1}})}function Tp(gt,hr){Oe(T)&&(D(T),T=Mpe(v),Kc(T));let xn=hr?Lt:ft,wo=hr?ft:Lt;Upe(T,gt,1,{_chunkSteps:dA=>{g(()=>{V=!1,ae=!1;let fA=hr?be:ge;if(hr?ge:be)fA||ZR(xn._readableStreamController,dA);else{let E0e;try{E0e=La(dA)}catch(LW){Zo(xn._readableStreamController,LW),Zo(wo._readableStreamController,LW),tr(zc(v,LW));return}fA||ZR(xn._readableStreamController,dA),JR(wo._readableStreamController,E0e)}P=!1,V?Cd():ae&&ca()})},_closeSteps:dA=>{P=!1;let fA=hr?be:ge,bN=hr?ge:be;fA||X_(xn._readableStreamController),bN||X_(wo._readableStreamController),dA!==void 0&&(fA||ZR(xn._readableStreamController,dA),!bN&&wo._readableStreamController._pendingPullIntos.length>0&&XR(wo._readableStreamController,0)),(!fA||!bN)&&tr(void 0)},_errorSteps:()=>{P=!1}})}function Cd(){if(P)return V=!0,u(void 0);P=!0;let gt=yW(ft._readableStreamController);return gt===null?uA():Tp(gt._view,!1),u(void 0)}function ca(){if(P)return ae=!0,u(void 0);P=!0;let gt=yW(Lt._readableStreamController);return gt===null?uA():Tp(gt._view,!0),u(void 0)}function Wa(gt){if(ge=!0,Ge=gt,be){let hr=_t([Ge,Ct]),xn=zc(v,hr);tr(xn)}return cn}function ec(gt){if(be=!0,Ct=gt,ge){let hr=_t([Ge,Ct]),xn=zc(v,hr);tr(xn)}return cn}function Td(){}return ft=c0e(Td,Cd,Wa),Lt=c0e(Td,ca,ec),Kc(T),[ft,Lt]}function CAt(v){return r(v)&&typeof v.getReader<"u"}function TAt(v){return CAt(v)?RAt(v.getReader()):wAt(v)}function wAt(v){let T,P=bs(v,"async"),V=e;function ae(){let be;try{be=Gs(P)}catch(Ct){return l(Ct)}let Ge=u(be);return h(Ge,Ct=>{if(!r(Ct))throw new TypeError("The promise returned by the iterator.next() method must fulfill with an object");if(Ku(Ct))Um(T._readableStreamController);else{let Lt=Co(Ct);aA(T._readableStreamController,Lt)}})}function ge(be){let Ge=P.iterator,Ct;try{Ct=Lr(Ge,"return")}catch(tr){return l(tr)}if(Ct===void 0)return u(void 0);let ft;try{ft=b(Ct,Ge,[be])}catch(tr){return l(tr)}let Lt=u(ft);return h(Lt,tr=>{if(!r(tr))throw new TypeError("The promise returned by the iterator.return() method must fulfill with an object")})}return T=sE(V,ae,ge,0),T}function RAt(v){let T,P=e;function V(){let ge;try{ge=v.read()}catch(be){return l(be)}return h(ge,be=>{if(!r(be))throw new TypeError("The promise returned by the reader.read() method must fulfill with an object");if(be.done)Um(T._readableStreamController);else{let Ge=be.value;aA(T._readableStreamController,Ge)}})}function ae(ge){try{return u(v.cancel(ge))}catch(be){return l(be)}}return T=sE(P,V,ae,0),T}function NAt(v,T){Te(v,T);let P=v,V=P?.autoAllocateChunkSize,ae=P?.cancel,ge=P?.pull,be=P?.start,Ge=P?.type;return{autoAllocateChunkSize:V===void 0?void 0:Q(V,`${T} has member 'autoAllocateChunkSize' that`),cancel:ae===void 0?void 0:OAt(ae,P,`${T} has member 'cancel' that`),pull:ge===void 0?void 0:kAt(ge,P,`${T} has member 'pull' that`),start:be===void 0?void 0:PAt(be,P,`${T} has member 'start' that`),type:Ge===void 0?void 0:DAt(Ge,`${T} has member 'type' that`)}}function OAt(v,T,P){return Ne(v,P),V=>x(v,T,[V])}function kAt(v,T,P){return Ne(v,P),V=>x(v,T,[V])}function PAt(v,T,P){return Ne(v,P),V=>b(v,T,[V])}function DAt(v,T){if(v=`${v}`,v!=="bytes")throw new TypeError(`${T} '${v}' is not a valid enumeration value for ReadableStreamType`);return v}function BAt(v,T){return Te(v,T),{preventCancel:!!v?.preventCancel}}function o0e(v,T){Te(v,T);let P=v?.preventAbort,V=v?.preventCancel,ae=v?.preventClose,ge=v?.signal;return ge!==void 0&&LAt(ge,`${T} has member 'signal' that`),{preventAbort:!!P,preventCancel:!!V,preventClose:!!ae,signal:ge}}function LAt(v,T){if(!Qyt(v))throw new TypeError(`${T} is not an AbortSignal.`)}function MAt(v,T){Te(v,T);let P=v?.readable;F(P,"readable","ReadableWritablePair"),ee(P,`${T} has member 'readable' that`);let V=v?.writable;return F(V,"writable","ReadableWritablePair"),qpe(V,`${T} has member 'writable' that`),{readable:P,writable:V}}class ki{constructor(T={},P={}){T===void 0?T=null:Fe(T,"First parameter");let V=rN(P,"Second parameter"),ae=NAt(T,"First parameter");if(kW(this),ae.type==="bytes"){if(V.size!==void 0)throw new RangeError("The strategy for a byte stream cannot have a size function");let ge=eE(V,0);Oyt(this,ae,ge)}else{let ge=tN(V),be=eE(V,1);EAt(this,ae,be,ge)}}get locked(){if(!Sp(this))throw Fm("locked");return Ip(this)}cancel(T=void 0){return Sp(this)?Ip(this)?l(new TypeError("Cannot cancel a stream that already has a reader")):zc(this,T):l(Fm("cancel"))}getReader(T=void 0){if(!Sp(this))throw Fm("getReader");return Pyt(T,"First parameter").mode===void 0?ne(this):Mpe(this)}pipeThrough(T,P={}){if(!Sp(this))throw Fm("pipeThrough");ve(T,1,"pipeThrough");let V=MAt(T,"First parameter"),ae=o0e(P,"Second parameter");if(Ip(this))throw new TypeError("ReadableStream.prototype.pipeThrough cannot be used on a locked ReadableStream");if(sA(V.writable))throw new TypeError("ReadableStream.prototype.pipeThrough cannot be used on a locked WritableStream");let ge=s0e(this,V.writable,ae.preventClose,ae.preventAbort,ae.preventCancel,ae.signal);return y(ge),V.readable}pipeTo(T,P={}){if(!Sp(this))return l(Fm("pipeTo"));if(T===void 0)return l("Parameter 1 is required in 'pipeTo'.");if(!nA(T))return l(new TypeError("ReadableStream.prototype.pipeTo's first argument must be a WritableStream"));let V;try{V=o0e(P,"Second parameter")}catch(ae){return l(ae)}return Ip(this)?l(new TypeError("ReadableStream.prototype.pipeTo cannot be used on a locked ReadableStream")):sA(T)?l(new TypeError("ReadableStream.prototype.pipeTo cannot be used on a locked WritableStream")):s0e(this,T,V.preventClose,V.preventAbort,V.preventCancel,V.signal)}tee(){if(!Sp(this))throw Fm("tee");let T=vAt(this);return _t(T)}values(T=void 0){if(!Sp(this))throw Fm("values");let P=BAt(T,"First parameter");return rt(this,P.preventCancel)}[Hs](T){return this.values(T)}static from(T){return TAt(T)}}Object.defineProperties(ki,{from:{enumerable:!0}}),Object.defineProperties(ki.prototype,{cancel:{enumerable:!0},getReader:{enumerable:!0},pipeThrough:{enumerable:!0},pipeTo:{enumerable:!0},tee:{enumerable:!0},values:{enumerable:!0},locked:{enumerable:!0}}),s(ki.from,"from"),s(ki.prototype.cancel,"cancel"),s(ki.prototype.getReader,"getReader"),s(ki.prototype.pipeThrough,"pipeThrough"),s(ki.prototype.pipeTo,"pipeTo"),s(ki.prototype.tee,"tee"),s(ki.prototype.values,"values"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(ki.prototype,Symbol.toStringTag,{value:"ReadableStream",configurable:!0}),Object.defineProperty(ki.prototype,Hs,{value:ki.prototype.values,writable:!0,configurable:!0});function sE(v,T,P,V=1,ae=()=>1){let ge=Object.create(ki.prototype);kW(ge);let be=Object.create(Id.prototype);return a0e(ge,be,v,T,P,V,ae),ge}function c0e(v,T,P){let V=Object.create(ki.prototype);kW(V);let ae=Object.create(vd.prototype);return Lpe(V,ae,v,T,P,0,void 0),V}function kW(v){v._state="readable",v._reader=void 0,v._storedError=void 0,v._disturbed=!1}function Sp(v){return!r(v)||!Object.prototype.hasOwnProperty.call(v,"_readableStreamController")?!1:v instanceof ki}function Ip(v){return v._reader!==void 0}function zc(v,T){if(v._disturbed=!0,v._state==="closed")return u(void 0);if(v._state==="errored")return l(v._storedError);iE(v);let P=v._reader;if(P!==void 0&&Mm(P)){let ae=P._readIntoRequests;P._readIntoRequests=new S,ae.forEach(ge=>{ge._closeSteps(void 0)})}let V=v._readableStreamController[w](T);return h(V,e)}function iE(v){v._state="closed";let T=v._reader;if(T!==void 0&&(J(T),Oe(T))){let P=T._readRequests;T._readRequests=new S,P.forEach(V=>{V._closeSteps()})}}function u0e(v,T){v._state="errored",v._storedError=T;let P=v._reader;P!==void 0&&(z(P,T),Oe(P)?Ye(P,T):Fpe(P,T))}function Fm(v){return new TypeError(`ReadableStream.prototype.${v} can only be used on a ReadableStream`)}function l0e(v,T){Te(v,T);let P=v?.highWaterMark;return F(P,"highWaterMark","QueuingStrategyInit"),{highWaterMark:G(P)}}let d0e=v=>v.byteLength;s(d0e,"size");class pN{constructor(T){ve(T,1,"ByteLengthQueuingStrategy"),T=l0e(T,"First parameter"),this._byteLengthQueuingStrategyHighWaterMark=T.highWaterMark}get highWaterMark(){if(!p0e(this))throw f0e("highWaterMark");return this._byteLengthQueuingStrategyHighWaterMark}get size(){if(!p0e(this))throw f0e("size");return d0e}}Object.defineProperties(pN.prototype,{highWaterMark:{enumerable:!0},size:{enumerable:!0}}),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(pN.prototype,Symbol.toStringTag,{value:"ByteLengthQueuingStrategy",configurable:!0});function f0e(v){return new TypeError(`ByteLengthQueuingStrategy.prototype.${v} can only be used on a ByteLengthQueuingStrategy`)}function p0e(v){return!r(v)||!Object.prototype.hasOwnProperty.call(v,"_byteLengthQueuingStrategyHighWaterMark")?!1:v instanceof pN}let m0e=()=>1;s(m0e,"size");class mN{constructor(T){ve(T,1,"CountQueuingStrategy"),T=l0e(T,"First parameter"),this._countQueuingStrategyHighWaterMark=T.highWaterMark}get highWaterMark(){if(!g0e(this))throw h0e("highWaterMark");return this._countQueuingStrategyHighWaterMark}get size(){if(!g0e(this))throw h0e("size");return m0e}}Object.defineProperties(mN.prototype,{highWaterMark:{enumerable:!0},size:{enumerable:!0}}),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(mN.prototype,Symbol.toStringTag,{value:"CountQueuingStrategy",configurable:!0});function h0e(v){return new TypeError(`CountQueuingStrategy.prototype.${v} can only be used on a CountQueuingStrategy`)}function g0e(v){return!r(v)||!Object.prototype.hasOwnProperty.call(v,"_countQueuingStrategyHighWaterMark")?!1:v instanceof mN}function WAt(v,T){Te(v,T);let P=v?.cancel,V=v?.flush,ae=v?.readableType,ge=v?.start,be=v?.transform,Ge=v?.writableType;return{cancel:P===void 0?void 0:qAt(P,v,`${T} has member 'cancel' that`),flush:V===void 0?void 0:$At(V,v,`${T} has member 'flush' that`),readableType:ae,start:ge===void 0?void 0:UAt(ge,v,`${T} has member 'start' that`),transform:be===void 0?void 0:FAt(be,v,`${T} has member 'transform' that`),writableType:Ge}}function $At(v,T,P){return Ne(v,P),V=>x(v,T,[V])}function UAt(v,T,P){return Ne(v,P),V=>b(v,T,[V])}function FAt(v,T,P){return Ne(v,P),(V,ae)=>x(v,T,[V,ae])}function qAt(v,T,P){return Ne(v,P),V=>x(v,T,[V])}class hN{constructor(T={},P={},V={}){T===void 0&&(T=null);let ae=rN(P,"Second parameter"),ge=rN(V,"Third parameter"),be=WAt(T,"First parameter");if(be.readableType!==void 0)throw new RangeError("Invalid readableType specified");if(be.writableType!==void 0)throw new RangeError("Invalid writableType specified");let Ge=eE(ge,0),Ct=tN(ge),ft=eE(ae,1),Lt=tN(ae),tr,cn=c(Kc=>{tr=Kc});jAt(this,cn,ft,Lt,Ge,Ct),HAt(this,be),be.start!==void 0?tr(be.start(this._transformStreamController)):tr(void 0)}get readable(){if(!y0e(this))throw _0e("readable");return this._readable}get writable(){if(!y0e(this))throw _0e("writable");return this._writable}}Object.defineProperties(hN.prototype,{readable:{enumerable:!0},writable:{enumerable:!0}}),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(hN.prototype,Symbol.toStringTag,{value:"TransformStream",configurable:!0});function jAt(v,T,P,V,ae,ge){function be(){return T}function Ge(cn){return KAt(v,cn)}function Ct(cn){return VAt(v,cn)}function ft(){return YAt(v)}v._writable=zyt(be,Ge,ft,Ct,P,V);function Lt(){return JAt(v)}function tr(cn){return XAt(v,cn)}v._readable=sE(be,Lt,tr,ae,ge),v._backpressure=void 0,v._backpressureChangePromise=void 0,v._backpressureChangePromise_resolve=void 0,gN(v,!0),v._transformStreamController=void 0}function y0e(v){return!r(v)||!Object.prototype.hasOwnProperty.call(v,"_transformStreamController")?!1:v instanceof hN}function A0e(v,T){Gc(v._readable._readableStreamController,T),PW(v,T)}function PW(v,T){AN(v._transformStreamController),tE(v._writable._writableStreamController,T),DW(v)}function DW(v){v._backpressure&&gN(v,!1)}function gN(v,T){v._backpressureChangePromise!==void 0&&v._backpressureChangePromise_resolve(),v._backpressureChangePromise=c(P=>{v._backpressureChangePromise_resolve=P}),v._backpressure=T}class Cp{constructor(){throw new TypeError("Illegal constructor")}get desiredSize(){if(!yN(this))throw xN("desiredSize");let T=this._controlledTransformStream._readable._readableStreamController;return OW(T)}enqueue(T=void 0){if(!yN(this))throw xN("enqueue");x0e(this,T)}error(T=void 0){if(!yN(this))throw xN("error");GAt(this,T)}terminate(){if(!yN(this))throw xN("terminate");zAt(this)}}Object.defineProperties(Cp.prototype,{enqueue:{enumerable:!0},error:{enumerable:!0},terminate:{enumerable:!0},desiredSize:{enumerable:!0}}),s(Cp.prototype.enqueue,"enqueue"),s(Cp.prototype.error,"error"),s(Cp.prototype.terminate,"terminate"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(Cp.prototype,Symbol.toStringTag,{value:"TransformStreamDefaultController",configurable:!0});function yN(v){return!r(v)||!Object.prototype.hasOwnProperty.call(v,"_controlledTransformStream")?!1:v instanceof Cp}function QAt(v,T,P,V,ae){T._controlledTransformStream=v,v._transformStreamController=T,T._transformAlgorithm=P,T._flushAlgorithm=V,T._cancelAlgorithm=ae,T._finishPromise=void 0,T._finishPromise_resolve=void 0,T._finishPromise_reject=void 0}function HAt(v,T){let P=Object.create(Cp.prototype),V,ae,ge;T.transform!==void 0?V=be=>T.transform(be,P):V=be=>{try{return x0e(P,be),u(void 0)}catch(Ge){return l(Ge)}},T.flush!==void 0?ae=()=>T.flush(P):ae=()=>u(void 0),T.cancel!==void 0?ge=be=>T.cancel(be):ge=()=>u(void 0),QAt(v,P,V,ae,ge)}function AN(v){v._transformAlgorithm=void 0,v._flushAlgorithm=void 0,v._cancelAlgorithm=void 0}function x0e(v,T){let P=v._controlledTransformStream,V=P._readable._readableStreamController;if(!oA(V))throw new TypeError("Readable side is not in a state that permits enqueue");try{aA(V,T)}catch(ge){throw PW(P,ge),P._readable._storedError}_At(V)!==P._backpressure&&gN(P,!0)}function GAt(v,T){A0e(v._controlledTransformStream,T)}function b0e(v,T){let P=v._transformAlgorithm(T);return h(P,void 0,V=>{throw A0e(v._controlledTransformStream,V),V})}function zAt(v){let T=v._controlledTransformStream,P=T._readable._readableStreamController;Um(P);let V=new TypeError("TransformStream terminated");PW(T,V)}function KAt(v,T){let P=v._transformStreamController;if(v._backpressure){let V=v._backpressureChangePromise;return h(V,()=>{let ae=v._writable;if(ae._state==="erroring")throw ae._storedError;return b0e(P,T)})}return b0e(P,T)}function VAt(v,T){let P=v._transformStreamController;if(P._finishPromise!==void 0)return P._finishPromise;let V=v._readable;P._finishPromise=c((ge,be)=>{P._finishPromise_resolve=ge,P._finishPromise_reject=be});let ae=P._cancelAlgorithm(T);return AN(P),f(ae,()=>(V._state==="errored"?cA(P,V._storedError):(Gc(V._readableStreamController,T),BW(P)),null),ge=>(Gc(V._readableStreamController,ge),cA(P,ge),null)),P._finishPromise}function YAt(v){let T=v._transformStreamController;if(T._finishPromise!==void 0)return T._finishPromise;let P=v._readable;T._finishPromise=c((ae,ge)=>{T._finishPromise_resolve=ae,T._finishPromise_reject=ge});let V=T._flushAlgorithm();return AN(T),f(V,()=>(P._state==="errored"?cA(T,P._storedError):(Um(P._readableStreamController),BW(T)),null),ae=>(Gc(P._readableStreamController,ae),cA(T,ae),null)),T._finishPromise}function JAt(v){return gN(v,!1),v._backpressureChangePromise}function XAt(v,T){let P=v._transformStreamController;if(P._finishPromise!==void 0)return P._finishPromise;let V=v._writable;P._finishPromise=c((ge,be)=>{P._finishPromise_resolve=ge,P._finishPromise_reject=be});let ae=P._cancelAlgorithm(T);return AN(P),f(ae,()=>(V._state==="errored"?cA(P,V._storedError):(tE(V._writableStreamController,T),DW(v),BW(P)),null),ge=>(tE(V._writableStreamController,ge),DW(v),cA(P,ge),null)),P._finishPromise}function xN(v){return new TypeError(`TransformStreamDefaultController.prototype.${v} can only be used on a TransformStreamDefaultController`)}function BW(v){v._finishPromise_resolve!==void 0&&(v._finishPromise_resolve(),v._finishPromise_resolve=void 0,v._finishPromise_reject=void 0)}function cA(v,T){v._finishPromise_reject!==void 0&&(y(v._finishPromise),v._finishPromise_reject(T),v._finishPromise_resolve=void 0,v._finishPromise_reject=void 0)}function _0e(v){return new TypeError(`TransformStream.prototype.${v} can only be used on a TransformStream`)}t.ByteLengthQueuingStrategy=pN,t.CountQueuingStrategy=mN,t.ReadableByteStreamController=vd,t.ReadableStream=ki,t.ReadableStreamBYOBReader=Ep,t.ReadableStreamBYOBRequest=Dm,t.ReadableStreamDefaultController=Id,t.ReadableStreamDefaultReader=me,t.TransformStream=hN,t.TransformStreamDefaultController=Cp,t.WritableStream=vp,t.WritableStreamDefaultController=iA,t.WritableStreamDefaultWriter=Sd})});var M$e=_(()=>{if(!globalThis.ReadableStream)try{let t=require("node:process"),{emitWarning:e}=t;try{t.emitWarning=()=>{},Object.assign(globalThis,require("node:stream/web")),t.emitWarning=e}catch(r){throw t.emitWarning=e,r}}catch{Object.assign(globalThis,L$e())}try{let{Blob:t}=require("buffer");t&&!t.prototype.stream&&(t.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*TY(t,e=!0){for(let r of t)if("stream"in r)yield*r.stream();else if(ArrayBuffer.isView(r))if(e){let n=r.byteOffset,s=r.byteOffset+r.byteLength;for(;n!==s;){let i=Math.min(s-n,W$e),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+W$e)).arrayBuffer();n+=a.byteLength,yield new Uint8Array(a)}}}var _Zr,W$e,$$e,jlr,Tu,AC=gr(()=>{_Zr=Ce(M$e(),1);W$e=65536;$$e=class wY{#e=[];#t="";#r=0;#n="transparent";constructor(e=[],r={}){if(typeof e!="object"||e===null)throw new TypeError("Failed to construct 'Blob': The provided value cannot be converted to a sequence.");if(typeof e[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 e){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 wY?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 e=new TextDecoder,r="";for await(let n of TY(this.#e,!1))r+=e.decode(n,{stream:!0});return r+=e.decode(),r}async arrayBuffer(){let e=new Uint8Array(this.size),r=0;for await(let n of TY(this.#e,!1))e.set(n,r),r+=n.length;return e.buffer}stream(){let e=TY(this.#e,!0);return new globalThis.ReadableStream({type:"bytes",async pull(r){let n=await e.next();n.done?r.close():r.enqueue(n.value)},async cancel(){await e.return()}})}slice(e=0,r=this.size,n=""){let{size:s}=this,i=e<0?Math.max(s+e,0):Math.min(e,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 p=ArrayBuffer.isView(f)?f.byteLength:f.size;if(i&&p<=i)i-=p,a-=p;else{let m;ArrayBuffer.isView(f)?(m=f.subarray(i,Math.min(p,a)),l+=m.byteLength):(m=f.slice(i,Math.min(p,a)),l+=m.size),a-=p,u.push(m),i=0}}let d=new wY([],{type:String(n).toLowerCase()});return d.#r=o,d.#e=u,d}get[Symbol.toStringTag](){return"Blob"}static[Symbol.hasInstance](e){return e&&typeof e=="object"&&typeof e.constructor=="function"&&(typeof e.stream=="function"||typeof e.arrayBuffer=="function")&&/^(Blob|File)$/.test(e[Symbol.toStringTag])}};Object.defineProperties($$e.prototype,{size:{enumerable:!0},type:{enumerable:!0},slice:{enumerable:!0}});jlr=$$e,Tu=jlr});var Qlr,Hlr,em,RY=gr(()=>{AC();Qlr=class extends Tu{#e=0;#t="";constructor(e,r,n={}){if(arguments.length<2)throw new TypeError(`Failed to construct 'File': 2 arguments required, but only ${arguments.length} present.`);super(e,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](e){return!!e&&e instanceof Tu&&/^(File)$/.test(e[Symbol.toStringTag])}},Hlr=Qlr,em=Hlr});function q$e(t,e=Tu){var r=`${U$e()}${U$e()}`.replace(/\./g,"").slice(-28).padStart(32,"-"),n=[],s=`--${r}\r +Content-Disposition: form-data; name="`;return t.forEach((i,a)=>typeof i=="string"?n.push(s+NY(a)+`"\r \r ${i.replace(/\r(?!\n)|(?{pC();Iz();({toStringTag:mC,iterator:sir,hasInstance:iir}=Symbol),W5e=Math.random,air="append,set,get,getAll,delete,keys,values,entries,forEach,constructor".split(","),$5e=(t,e,r)=>(t+="",/^(Blob|File)$/.test(e&&e[mC])?[(r=r!==void 0?r+"":e[mC]=="File"?e.name:"blob",t),e.name!==r||e[mC]=="blob"?new k0([e],r,e):e]:[t,e+""]),Tz=(t,e)=>(e?t:t.replace(/\r?\n|\r/g,`\r -`)).replace(/\n/g,"%0A").replace(/\r/g,"%0D").replace(/"/g,"%22"),Yh=(t,e,r)=>{if(e.lengthtypeof e[r]!="function")}append(...e){Yh("append",arguments,2),this.#e.push($5e(...e))}delete(e){Yh("delete",arguments,1),e+="",this.#e=this.#e.filter(([r])=>r!==e)}get(e){Yh("get",arguments,1),e+="";for(var r=this.#e,n=r.length,s=0;sn[0]===e&&r.push(n[1])),r}has(e){return Yh("has",arguments,1),e+="",this.#e.some(r=>r[0]===e)}forEach(e,r){Yh("forEach",arguments,1);for(var[n,s]of this)e.call(r,s,n,this)}set(...e){Yh("set",arguments,2);var r=[],n=!0;e=$5e(...e),this.#e.forEach(s=>{s[0]===e[0]?n&&(n=!r.push(e)):r.push(s)}),n&&r.push(e),this.#e=r}*entries(){yield*this.#e}*keys(){for(var[e]of this)yield e}*values(){for(var[,e]of this)yield e}}});var af,yL=dr(()=>{af=class extends Error{constructor(e,r){super(e),Error.captureStackTrace(this,this.constructor),this.type=r}get name(){return this.constructor.name}get[Symbol.toStringTag](){return this.constructor.name}}});var ha,wz=dr(()=>{yL();ha=class extends af{constructor(e,r,n){super(e,r),n&&(this.code=this.errno=n.code,this.erroredSysCall=n.syscall)}}});var xL,Rz,hC,U5e,q5e,j5e,bL=dr(()=>{xL=Symbol.toStringTag,Rz=t=>typeof t=="object"&&typeof t.append=="function"&&typeof t.delete=="function"&&typeof t.get=="function"&&typeof t.getAll=="function"&&typeof t.has=="function"&&typeof t.set=="function"&&typeof t.sort=="function"&&t[xL]==="URLSearchParams",hC=t=>t&&typeof t=="object"&&typeof t.arrayBuffer=="function"&&typeof t.type=="string"&&typeof t.stream=="function"&&typeof t.constructor=="function"&&/^(Blob|File)$/.test(t[xL]),U5e=t=>typeof t=="object"&&(t[xL]==="AbortSignal"||t[xL]==="EventTarget"),q5e=(t,e)=>{let r=new URL(e).hostname,n=new URL(t).hostname;return r===n||r.endsWith(`.${n}`)},j5e=(t,e)=>{let r=new URL(e).protocol,n=new URL(t).protocol;return r===n}});var Q5e=E((Sjr,H5e)=>{if(!globalThis.DOMException)try{let{MessageChannel:t}=require("worker_threads"),e=new t().port1,r=new ArrayBuffer;e.postMessage(r,[r,r])}catch(t){t.constructor.name==="DOMException"&&(globalThis.DOMException=t.constructor)}H5e.exports=globalThis.DOMException});var Jh,G5e,V5e,Nz,z5e,K5e,Y5e,J5e,X5e,Z5e,EL,Oz=dr(()=>{Jh=require("node:fs"),G5e=require("node:path"),V5e=Re(Q5e(),1);Iz();pC();({stat:Nz}=Jh.promises),z5e=(t,e)=>X5e((0,Jh.statSync)(t),t,e),K5e=(t,e)=>Nz(t).then(r=>X5e(r,t,e)),Y5e=(t,e)=>Nz(t).then(r=>Z5e(r,t,e)),J5e=(t,e)=>Z5e((0,Jh.statSync)(t),t,e),X5e=(t,e,r="")=>new hu([new EL({path:e,size:t.size,lastModified:t.mtimeMs,start:0})],{type:r}),Z5e=(t,e,r="")=>new k0([new EL({path:e,size:t.size,lastModified:t.mtimeMs,start:0})],(0,G5e.basename)(e),{type:r,lastModified:t.mtimeMs}),EL=class t{#e;#t;constructor(e){this.#e=e.path,this.#t=e.start,this.size=e.size,this.lastModified=e.lastModified}slice(e,r){return new t({path:this.#e,lastModified:this.lastModified,size:r-e,start:this.#t+e})}async*stream(){let{mtimeMs:e}=await Nz(this.#e);if(e>this.lastModified)throw new V5e.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,Jh.createReadStream)(this.#e,{start:this.#t,end:this.#t+this.size-1})}get[Symbol.toStringTag](){return"Blob"}}});var t8e={};is(t8e,{toFormData:()=>pir});function fir(t){let e=t.match(/\bfilename=("(.*?)"|([^()<>@,;:\\"/[\]?={}\s\t]+))($|;\s)/i);if(!e)return;let r=e[2]||e[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 pir(t,e){if(!/multipart/i.test(e))throw new TypeError("Failed to fetch");let r=e.match(/boundary=(?:"([^"]+)"|([^;]+))/i);if(!r)throw new TypeError("no or bad content-type header, no multipart boundary");let n=new Pz(r[1]||r[2]),s,i,a,o,c,u,l=[],d=new L0,f=g=>{a+=A.decode(g,{stream:!0})},p=g=>{l.push(g)},m=()=>{let g=new k0(l,u,{type:c});d.append(o,g)},h=()=>{d.append(o,a)},A=new TextDecoder("utf-8");A.decode(),n.onPartBegin=function(){n.onPartData=f,n.onPartEnd=h,s="",i="",a="",o="",c="",u=null,l.length=0},n.onHeaderField=function(g){s+=A.decode(g,{stream:!0})},n.onHeaderValue=function(g){i+=A.decode(g,{stream:!0})},n.onHeaderEnd=function(){if(i+=A.decode(),s=s.toLowerCase(),s==="content-disposition"){let g=i.match(/\bname=("([^"]*)"|([^()<>@,;:\\"/[\]?={}\s\t]+))/i);g&&(o=g[2]||g[3]||""),u=fir(i),u&&(n.onPartData=p,n.onPartEnd=m)}else s==="content-type"&&(c=i);i="",s=""};for await(let g of t)n.write(g);return n.end(),d}var Nl,vn,e8e,B0,_L,SL,oir,gC,cir,uir,lir,dir,Xh,Pz,r8e=dr(()=>{Oz();AL();Nl=0,vn={START_BOUNDARY:Nl++,HEADER_FIELD_START:Nl++,HEADER_FIELD:Nl++,HEADER_VALUE_START:Nl++,HEADER_VALUE:Nl++,HEADER_VALUE_ALMOST_DONE:Nl++,HEADERS_ALMOST_DONE:Nl++,PART_DATA_START:Nl++,PART_DATA:Nl++,END:Nl++},e8e=1,B0={PART_BOUNDARY:e8e,LAST_BOUNDARY:e8e*=2},_L=10,SL=13,oir=32,gC=45,cir=58,uir=97,lir=122,dir=t=>t|32,Xh=()=>{},Pz=class{constructor(e){this.index=0,this.flags=0,this.onHeaderEnd=Xh,this.onHeaderField=Xh,this.onHeadersEnd=Xh,this.onHeaderValue=Xh,this.onPartBegin=Xh,this.onPartData=Xh,this.onPartEnd=Xh,this.boundaryChars={},e=`\r ---`+e;let r=new Uint8Array(e.length);for(let n=0;n{this[x+"Mark"]=r},g=x=>{delete this[x+"Mark"]},b=(x,v,C,R)=>{(v===void 0||v!==C)&&this[x](R&&R.subarray(v,C))},y=(x,v)=>{let C=x+"Mark";C in this&&(v?(b(x,this[C],r,e),delete this[C]):(b(x,this[C],e.length,e),this[C]=0))};for(r=0;rlir)return;break;case vn.HEADER_VALUE_START:if(m===oir)break;A("onHeaderValue"),u=vn.HEADER_VALUE;case vn.HEADER_VALUE:m===SL&&(y("onHeaderValue",!0),b("onHeaderEnd"),u=vn.HEADER_VALUE_ALMOST_DONE);break;case vn.HEADER_VALUE_ALMOST_DONE:if(m!==_L)return;u=vn.HEADER_FIELD_START;break;case vn.HEADERS_ALMOST_DONE:if(m!==_L)return;b("onHeadersEnd"),u=vn.PART_DATA_START;break;case vn.PART_DATA_START:u=vn.PART_DATA,A("onPartData");case vn.PART_DATA:if(s=c,c===0){for(r+=f;r0)i[c-1]=m;else if(s>0){let x=new Uint8Array(i.buffer,i.byteOffset,i.byteLength);b("onPartData",0,s,x),s=0,A("onPartData"),r--}break;case vn.END:break;default:throw new Error(`Unexpected state entered: ${u}`)}y("onHeaderField"),y("onHeaderValue"),y("onPartData"),this.index=c,this.state=u,this.flags=l}end(){if(this.state===vn.HEADER_FIELD_START&&this.index===0||this.state===vn.PART_DATA&&this.index===this.boundary.length)this.onPartEnd();else if(this.state!==vn.END)throw new Error("MultipartParser.end(): stream ended unexpectedly")}}});async function Dz(t){if(t[to].disturbed)throw new TypeError(`body used already for: ${t.url}`);if(t[to].disturbed=!0,t[to].error)throw t[to].error;let{body:e}=t;if(e===null)return Io.Buffer.alloc(0);if(!(e instanceof vc.default))return Io.Buffer.alloc(0);let r=[],n=0;try{for await(let s of e){if(t.size>0&&n+s.length>t.size){let i=new ha(`content size at ${t.url} over limit: ${t.size}`,"max-size");throw e.destroy(i),i}n+=s.length,r.push(s)}}catch(s){throw s instanceof af?s:new ha(`Invalid response body while trying to fetch ${t.url}: ${s.message}`,"system",s)}if(e.readableEnded===!0||e._readableState.ended===!0)try{return r.every(s=>typeof s=="string")?Io.Buffer.from(r.join("")):Io.Buffer.concat(r,n)}catch(s){throw new ha(`Could not create Buffer from response body for ${t.url}: ${s.message}`,"system",s)}else throw new ha(`Premature close of server response while trying to fetch ${t.url}`)}var vc,of,Io,mir,to,Ol,ob,hir,vL,n8e,s8e,CL=dr(()=>{vc=Re(require("node:stream"),1),of=require("node:util"),Io=require("node:buffer");pC();AL();wz();yL();bL();mir=(0,of.promisify)(vc.default.pipeline),to=Symbol("Body internals"),Ol=class{constructor(e,{size:r=0}={}){let n=null;e===null?e=null:Rz(e)?e=Io.Buffer.from(e.toString()):hC(e)||Io.Buffer.isBuffer(e)||(of.types.isAnyArrayBuffer(e)?e=Io.Buffer.from(e):ArrayBuffer.isView(e)?e=Io.Buffer.from(e.buffer,e.byteOffset,e.byteLength):e instanceof vc.default||(e instanceof L0?(e=F5e(e),n=e.type.split("=")[1]):e=Io.Buffer.from(String(e))));let s=e;Io.Buffer.isBuffer(e)?s=vc.default.Readable.from(e):hC(e)&&(s=vc.default.Readable.from(e.stream())),this[to]={body:e,stream:s,boundary:n,disturbed:!1,error:null},this.size=r,e instanceof vc.default&&e.on("error",i=>{let a=i instanceof af?i:new ha(`Invalid response body while trying to fetch ${this.url}: ${i.message}`,"system",i);this[to].error=a})}get body(){return this[to].stream}get bodyUsed(){return this[to].disturbed}async arrayBuffer(){let{buffer:e,byteOffset:r,byteLength:n}=await Dz(this);return e.slice(r,r+n)}async formData(){let e=this.headers.get("content-type");if(e.startsWith("application/x-www-form-urlencoded")){let n=new L0,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(()=>(r8e(),t8e));return r(this.body,e)}async blob(){let e=this.headers&&this.headers.get("content-type")||this[to].body&&this[to].body.type||"",r=await this.arrayBuffer();return new hu([r],{type:e})}async json(){let e=await this.text();return JSON.parse(e)}async text(){let e=await Dz(this);return new TextDecoder().decode(e)}buffer(){return Dz(this)}};Ol.prototype.buffer=(0,of.deprecate)(Ol.prototype.buffer,"Please use 'response.arrayBuffer()' instead of 'response.buffer()'","node-fetch#buffer");Object.defineProperties(Ol.prototype,{body:{enumerable:!0},bodyUsed:{enumerable:!0},arrayBuffer:{enumerable:!0},blob:{enumerable:!0},json:{enumerable:!0},text:{enumerable:!0},data:{get:(0,of.deprecate)(()=>{},"data doesn't exist, use json(), text(), arrayBuffer(), or body instead","https://github.com/node-fetch/node-fetch/issues/1000 (response)")}});ob=(t,e)=>{let r,n,{body:s}=t[to];if(t.bodyUsed)throw new Error("cannot clone body after it is used");return s instanceof vc.default&&typeof s.getBoundary!="function"&&(r=new vc.PassThrough({highWaterMark:e}),n=new vc.PassThrough({highWaterMark:e}),s.pipe(r),s.pipe(n),t[to].stream=r,s=n),s},hir=(0,of.deprecate)(t=>t.getBoundary(),"form-data doesn't follow the spec and requires special treatment. Use alternative package","https://github.com/node-fetch/node-fetch/issues/1167"),vL=(t,e)=>t===null?null:typeof t=="string"?"text/plain;charset=UTF-8":Rz(t)?"application/x-www-form-urlencoded;charset=UTF-8":hC(t)?t.type||null:Io.Buffer.isBuffer(t)||of.types.isAnyArrayBuffer(t)||ArrayBuffer.isView(t)?null:t instanceof L0?`multipart/form-data; boundary=${e[to].boundary}`:t&&typeof t.getBoundary=="function"?`multipart/form-data;boundary=${hir(t)}`:t instanceof vc.default?null:"text/plain;charset=UTF-8",n8e=t=>{let{body:e}=t[to];return e===null?0:hC(e)?e.size:Io.Buffer.isBuffer(e)?e.length:e&&typeof e.getLengthSync=="function"&&e.hasKnownLength&&e.hasKnownLength()?e.getLengthSync():null},s8e=async(t,{body:e})=>{e===null?t.end():await mir(e,t)}});function i8e(t=[]){return new ro(t.reduce((e,r,n,s)=>(n%2===0&&e.push(s.slice(n,n+2)),e),[]).filter(([e,r])=>{try{return IL(e),Lz(e,String(r)),!0}catch{return!1}}))}var kz,AC,IL,Lz,ro,TL=dr(()=>{kz=require("node:util"),AC=Re(require("node:http"),1),IL=typeof AC.default.validateHeaderName=="function"?AC.default.validateHeaderName:t=>{if(!/^[\^`\-\w!#$%&'*+.|~]+$/.test(t)){let e=new TypeError(`Header name must be a valid HTTP token [${t}]`);throw Object.defineProperty(e,"code",{value:"ERR_INVALID_HTTP_TOKEN"}),e}},Lz=typeof AC.default.validateHeaderValue=="function"?AC.default.validateHeaderValue:(t,e)=>{if(/[^\t\u0020-\u007E\u0080-\u00FF]/.test(e)){let r=new TypeError(`Invalid character in header content ["${t}"]`);throw Object.defineProperty(r,"code",{value:"ERR_INVALID_CHAR"}),r}},ro=class t extends URLSearchParams{constructor(e){let r=[];if(e instanceof t){let n=e.raw();for(let[s,i]of Object.entries(n))r.push(...i.map(a=>[s,a]))}else if(e!=null)if(typeof e=="object"&&!kz.types.isBoxedPrimitive(e)){let n=e[Symbol.iterator];if(n==null)r.push(...Object.entries(e));else{if(typeof n!="function")throw new TypeError("Header pairs must be iterable");r=[...e].map(s=>{if(typeof s!="object"||kz.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])=>(IL(n),Lz(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)=>(IL(a),Lz(a,String(o)),URLSearchParams.prototype[s].call(n,String(a).toLowerCase(),String(o)));case"delete":case"has":case"getAll":return a=>(IL(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(e){let r=this.getAll(e);if(r.length===0)return null;let n=r.join(", ");return/^content-encoding$/i.test(e)&&(n=n.toLowerCase()),n}forEach(e,r=void 0){for(let n of this.keys())Reflect.apply(e,r,[this.get(n),n,this])}*values(){for(let e of this.keys())yield this.get(e)}*entries(){for(let e of this.keys())yield[e,this.get(e)]}[Symbol.iterator](){return this.entries()}raw(){return[...this.keys()].reduce((e,r)=>(e[r]=this.getAll(r),e),{})}[Symbol.for("nodejs.util.inspect.custom")](){return[...this.keys()].reduce((e,r)=>{let n=this.getAll(r);return r==="host"?e[r]=n[0]:e[r]=n.length>1?n:n[0],e},{})}};Object.defineProperties(ro.prototype,["get","entries","forEach","values"].reduce((t,e)=>(t[e]={enumerable:!0},t),{}))});var gir,yC,Bz=dr(()=>{gir=new Set([301,302,303,307,308]),yC=t=>gir.has(t)});var gu,To,a8e=dr(()=>{TL();CL();Bz();gu=Symbol("Response internals"),To=class t extends Ol{constructor(e=null,r={}){super(e,r);let n=r.status!=null?r.status:200,s=new ro(r.headers);if(e!==null&&!s.has("Content-Type")){let i=vL(e,this);i&&s.append("Content-Type",i)}this[gu]={type:"default",url:r.url,status:n,statusText:r.statusText||"",headers:s,counter:r.counter,highWaterMark:r.highWaterMark}}get type(){return this[gu].type}get url(){return this[gu].url||""}get status(){return this[gu].status}get ok(){return this[gu].status>=200&&this[gu].status<300}get redirected(){return this[gu].counter>0}get statusText(){return this[gu].statusText}get headers(){return this[gu].headers}get highWaterMark(){return this[gu].highWaterMark}clone(){return new t(ob(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(e,r=302){if(!yC(r))throw new RangeError('Failed to execute "redirect" on "response": Invalid status code');return new t(null,{headers:{location:new URL(e).toString()},status:r})}static error(){let e=new t(null,{status:0,statusText:""});return e[gu].type="error",e}static json(e=void 0,r={}){let n=JSON.stringify(e);if(n===void 0)throw new TypeError("data is not JSON serializable");let s=new ro(r&&r.headers);return s.has("content-type")||s.set("content-type","application/json"),new t(n,{...r,headers:s})}get[Symbol.toStringTag](){return"Response"}};Object.defineProperties(To.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 o8e,c8e=dr(()=>{o8e=t=>{if(t.search)return t.search;let e=t.href.length-1,r=t.hash||(t.href[e]==="#"?"#":"");return t.href[e-r.length]==="?"?"?":""}});function u8e(t,e=!1){return t==null||(t=new URL(t),/^(about|blob|data):$/.test(t.protocol))?"no-referrer":(t.username="",t.password="",t.hash="",e&&(t.pathname="",t.search=""),t)}function p8e(t){if(!d8e.has(t))throw new TypeError(`Invalid referrerPolicy: ${t}`);return t}function Air(t){if(/^(http|ws)s:$/.test(t.protocol))return!0;let e=t.host.replace(/(^\[)|(]$)/g,""),r=(0,l8e.isIP)(e);return r===4&&/^127\./.test(e)||r===6&&/^(((0+:){7})|(::(0+:){0,6}))0*1$/.test(e)?!0:t.host==="localhost"||t.host.endsWith(".localhost")?!1:t.protocol==="file:"}function cb(t){return/^about:(blank|srcdoc)$/.test(t)||t.protocol==="data:"||/^(blob|filesystem):$/.test(t.protocol)?!0:Air(t)}function m8e(t,{referrerURLCallback:e,referrerOriginCallback:r}={}){if(t.referrer==="no-referrer"||t.referrerPolicy==="")return null;let n=t.referrerPolicy;if(t.referrer==="about:client")return"no-referrer";let s=t.referrer,i=u8e(s),a=u8e(s,!0);i.toString().length>4096&&(i=a),e&&(i=e(i)),r&&(a=r(a));let o=new URL(t.url);switch(n){case"no-referrer":return"no-referrer";case"origin":return a;case"unsafe-url":return i;case"strict-origin":return cb(i)&&!cb(o)?"no-referrer":a.toString();case"strict-origin-when-cross-origin":return i.origin===o.origin?i:cb(i)&&!cb(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 cb(i)&&!cb(o)?"no-referrer":i;default:throw new TypeError(`Invalid referrerPolicy: ${n}`)}}function h8e(t){let e=(t.get("referrer-policy")||"").split(/[,\s]+/),r="";for(let n of e)n&&d8e.has(n)&&(r=n);return r}var l8e,d8e,f8e,Mz=dr(()=>{l8e=require("node:net");d8e=new Set(["","no-referrer","no-referrer-when-downgrade","same-origin","origin","strict-origin","origin-when-cross-origin","strict-origin-when-cross-origin","unsafe-url"]),f8e="strict-origin-when-cross-origin"});var g8e,A8e,ri,xC,yir,M0,y8e,x8e=dr(()=>{g8e=require("node:url"),A8e=require("node:util");TL();CL();bL();c8e();Mz();ri=Symbol("Request internals"),xC=t=>typeof t=="object"&&typeof t[ri]=="object",yir=(0,A8e.deprecate)(()=>{},".data is not a valid RequestInit property, use .body instead","https://github.com/node-fetch/node-fetch/issues/1000 (request)"),M0=class t extends Ol{constructor(e,r={}){let n;if(xC(e)?n=new URL(e.url):(n=new URL(e),e={}),n.username!==""||n.password!=="")throw new TypeError(`${n} is an url with embedded credentials.`);let s=r.method||e.method||"GET";if(/^(delete|get|head|options|post|put)$/i.test(s)&&(s=s.toUpperCase()),!xC(r)&&"data"in r&&yir(),(r.body!=null||xC(e)&&e.body!==null)&&(s==="GET"||s==="HEAD"))throw new TypeError("Request with GET/HEAD method cannot have body");let i=r.body?r.body:xC(e)&&e.body!==null?ob(e):null;super(i,{size:r.size||e.size||0});let a=new ro(r.headers||e.headers||{});if(i!==null&&!a.has("Content-Type")){let u=vL(i,this);u&&a.set("Content-Type",u)}let o=xC(e)?e.signal:null;if("signal"in r&&(o=r.signal),o!=null&&!U5e(o))throw new TypeError("Expected signal to be an instanceof AbortSignal or EventTarget");let c=r.referrer==null?e.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[ri]={method:s,redirect:r.redirect||e.redirect||"follow",headers:a,parsedURL:n,signal:o,referrer:c},this.follow=r.follow===void 0?e.follow===void 0?20:e.follow:r.follow,this.compress=r.compress===void 0?e.compress===void 0?!0:e.compress:r.compress,this.counter=r.counter||e.counter||0,this.agent=r.agent||e.agent,this.highWaterMark=r.highWaterMark||e.highWaterMark||16384,this.insecureHTTPParser=r.insecureHTTPParser||e.insecureHTTPParser||!1,this.referrerPolicy=r.referrerPolicy||e.referrerPolicy||""}get method(){return this[ri].method}get url(){return(0,g8e.format)(this[ri].parsedURL)}get headers(){return this[ri].headers}get redirect(){return this[ri].redirect}get signal(){return this[ri].signal}get referrer(){if(this[ri].referrer==="no-referrer")return"";if(this[ri].referrer==="client")return"about:client";if(this[ri].referrer)return this[ri].referrer.toString()}get referrerPolicy(){return this[ri].referrerPolicy}set referrerPolicy(e){this[ri].referrerPolicy=p8e(e)}clone(){return new t(this)}get[Symbol.toStringTag](){return"Request"}};Object.defineProperties(M0.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}});y8e=t=>{let{parsedURL:e}=t[ri],r=new ro(t[ri].headers);r.has("Accept")||r.set("Accept","*/*");let n=null;if(t.body===null&&/^(post|put)$/i.test(t.method)&&(n="0"),t.body!==null){let o=n8e(t);typeof o=="number"&&!Number.isNaN(o)&&(n=String(o))}n&&r.set("Content-Length",n),t.referrerPolicy===""&&(t.referrerPolicy=f8e),t.referrer&&t.referrer!=="no-referrer"?t[ri].referrer=m8e(t):t[ri].referrer="no-referrer",t[ri].referrer instanceof URL&&r.set("Referer",t.referrer),r.has("User-Agent")||r.set("User-Agent","node-fetch"),t.compress&&!r.has("Accept-Encoding")&&r.set("Accept-Encoding","gzip, deflate, br");let{agent:s}=t;typeof s=="function"&&(s=s(e));let i=o8e(e),a={path:e.pathname+i,method:t.method,headers:r[Symbol.for("nodejs.util.inspect.custom")](),insecureHTTPParser:t.insecureHTTPParser,agent:s};return{parsedURL:e,options:a}}});var bC,b8e=dr(()=>{yL();bC=class extends af{constructor(e,r="aborted"){super(e,r)}}});var wL={};is(wL,{AbortError:()=>bC,Blob:()=>hu,FetchError:()=>ha,File:()=>k0,FormData:()=>L0,Headers:()=>ro,Request:()=>M0,Response:()=>To,blobFrom:()=>K5e,blobFromSync:()=>z5e,default:()=>ub,fileFrom:()=>Y5e,fileFromSync:()=>J5e,isRedirect:()=>yC});async function ub(t,e){return new Promise((r,n)=>{let s=new M0(t,e),{parsedURL:i,options:a}=y8e(s);if(!xir.has(i.protocol))throw new TypeError(`node-fetch cannot load ${t}. URL scheme "${i.protocol.replace(/:$/,"")}" is not supported.`);if(i.protocol==="data:"){let m=O5e(s.url),h=new To(m,{headers:{"Content-Type":m.typeFull}});r(h);return}let o=(i.protocol==="https:"?_8e.default:E8e.default).request,{signal:c}=s,u=null,l=()=>{let m=new bC("The operation was aborted.");n(m),s.body&&s.body instanceof wo.default.Readable&&s.body.destroy(m),!(!u||!u.body)&&u.body.emit("error",m)};if(c&&c.aborted){l();return}let d=()=>{l(),p()},f=o(i.toString(),a);c&&c.addEventListener("abort",d);let p=()=>{f.abort(),c&&c.removeEventListener("abort",d)};f.on("error",m=>{n(new ha(`request to ${s.url} failed, reason: ${m.message}`,"system",m)),p()}),bir(f,m=>{u&&u.body&&u.body.destroy(m)}),process.version<"v14"&&f.on("socket",m=>{let h;m.prependListener("end",()=>{h=m._eventsCount}),m.prependListener("close",A=>{if(u&&h{f.setTimeout(0);let h=i8e(m.rawHeaders);if(yC(m.statusCode)){let x=h.get("Location"),v=null;try{v=x===null?null:new URL(x,s.url)}catch{if(s.redirect!=="manual"){n(new ha(`uri requested responds with an invalid redirect URL: ${x}`,"invalid-redirect")),p();return}}switch(s.redirect){case"error":n(new ha(`uri requested responds with a redirect, redirect mode is set to error: ${s.url}`,"no-redirect")),p();return;case"manual":break;case"follow":{if(v===null)break;if(s.counter>=s.follow){n(new ha(`maximum redirect reached at: ${s.url}`,"max-redirect")),p();return}let C={headers:new ro(s.headers),follow:s.follow,counter:s.counter+1,agent:s.agent,compress:s.compress,method:s.method,body:ob(s),signal:s.signal,size:s.size,referrer:s.referrer,referrerPolicy:s.referrerPolicy};if(!q5e(s.url,v)||!j5e(s.url,v))for(let w of["authorization","www-authenticate","cookie","cookie2"])C.headers.delete(w);if(m.statusCode!==303&&s.body&&e.body instanceof wo.default.Readable){n(new ha("Cannot follow redirect with body being a readable stream","unsupported-redirect")),p();return}(m.statusCode===303||(m.statusCode===301||m.statusCode===302)&&s.method==="POST")&&(C.method="GET",C.body=void 0,C.headers.delete("content-length"));let R=h8e(h);R&&(C.referrerPolicy=R),r(ub(new M0(v,C))),p();return}default:return n(new TypeError(`Redirect option '${s.redirect}' is not a valid value of RequestRedirect`))}}c&&m.once("end",()=>{c.removeEventListener("abort",d)});let A=(0,wo.pipeline)(m,new wo.PassThrough,x=>{x&&n(x)});process.version<"v12.10"&&m.on("aborted",d);let g={url:s.url,status:m.statusCode,statusText:m.statusMessage,headers:h,size:s.size,counter:s.counter,highWaterMark:s.highWaterMark},b=h.get("Content-Encoding");if(!s.compress||s.method==="HEAD"||b===null||m.statusCode===204||m.statusCode===304){u=new To(A,g),r(u);return}let y={flush:Zh.default.Z_SYNC_FLUSH,finishFlush:Zh.default.Z_SYNC_FLUSH};if(b==="gzip"||b==="x-gzip"){A=(0,wo.pipeline)(A,Zh.default.createGunzip(y),x=>{x&&n(x)}),u=new To(A,g),r(u);return}if(b==="deflate"||b==="x-deflate"){let x=(0,wo.pipeline)(m,new wo.PassThrough,v=>{v&&n(v)});x.once("data",v=>{(v[0]&15)===8?A=(0,wo.pipeline)(A,Zh.default.createInflate(),C=>{C&&n(C)}):A=(0,wo.pipeline)(A,Zh.default.createInflateRaw(),C=>{C&&n(C)}),u=new To(A,g),r(u)}),x.once("end",()=>{u||(u=new To(A,g),r(u))});return}if(b==="br"){A=(0,wo.pipeline)(A,Zh.default.createBrotliDecompress(),x=>{x&&n(x)}),u=new To(A,g),r(u);return}u=new To(A,g),r(u)}),s8e(f,s).catch(n)})}function bir(t,e){let r=EC.Buffer.from(`0\r +`)),n.push(`--${r}--`),new e(n,{type:"multipart/form-data; boundary="+r})}var xC,Glr,zlr,U$e,Klr,F$e,NY,Eg,tm,zB=gr(()=>{AC();RY();({toStringTag:xC,iterator:Glr,hasInstance:zlr}=Symbol),U$e=Math.random,Klr="append,set,get,getAll,delete,keys,values,entries,forEach,constructor".split(","),F$e=(t,e,r)=>(t+="",/^(Blob|File)$/.test(e&&e[xC])?[(r=r!==void 0?r+"":e[xC]=="File"?e.name:"blob",t),e.name!==r||e[xC]=="blob"?new em([e],r,e):e]:[t,e+""]),NY=(t,e)=>(e?t:t.replace(/\r?\n|\r/g,`\r +`)).replace(/\n/g,"%0A").replace(/\r/g,"%0D").replace(/"/g,"%22"),Eg=(t,e,r)=>{if(e.lengthtypeof e[r]!="function")}append(...e){Eg("append",arguments,2),this.#e.push(F$e(...e))}delete(e){Eg("delete",arguments,1),e+="",this.#e=this.#e.filter(([r])=>r!==e)}get(e){Eg("get",arguments,1),e+="";for(var r=this.#e,n=r.length,s=0;sn[0]===e&&r.push(n[1])),r}has(e){return Eg("has",arguments,1),e+="",this.#e.some(r=>r[0]===e)}forEach(e,r){Eg("forEach",arguments,1);for(var[n,s]of this)e.call(r,s,n,this)}set(...e){Eg("set",arguments,2);var r=[],n=!0;e=F$e(...e),this.#e.forEach(s=>{s[0]===e[0]?n&&(n=!r.push(e)):r.push(s)}),n&&r.push(e),this.#e=r}*entries(){yield*this.#e}*keys(){for(var[e]of this)yield e}*values(){for(var[,e]of this)yield e}}});var vf,KB=gr(()=>{vf=class extends Error{constructor(e,r){super(e),Error.captureStackTrace(this,this.constructor),this.type=r}get name(){return this.constructor.name}get[Symbol.toStringTag](){return this.constructor.name}}});var Sa,OY=gr(()=>{KB();Sa=class extends vf{constructor(e,r,n){super(e,r),n&&(this.code=this.errno=n.code,this.erroredSysCall=n.syscall)}}});var VB,kY,bC,j$e,Q$e,H$e,YB=gr(()=>{VB=Symbol.toStringTag,kY=t=>typeof t=="object"&&typeof t.append=="function"&&typeof t.delete=="function"&&typeof t.get=="function"&&typeof t.getAll=="function"&&typeof t.has=="function"&&typeof t.set=="function"&&typeof t.sort=="function"&&t[VB]==="URLSearchParams",bC=t=>t&&typeof t=="object"&&typeof t.arrayBuffer=="function"&&typeof t.type=="string"&&typeof t.stream=="function"&&typeof t.constructor=="function"&&/^(Blob|File)$/.test(t[VB]),j$e=t=>typeof t=="object"&&(t[VB]==="AbortSignal"||t[VB]==="EventTarget"),Q$e=(t,e)=>{let r=new URL(e).hostname,n=new URL(t).hostname;return r===n||r.endsWith(`.${n}`)},H$e=(t,e)=>{let r=new URL(e).protocol,n=new URL(t).protocol;return r===n}});var z$e=_((DZr,G$e)=>{if(!globalThis.DOMException)try{let{MessageChannel:t}=require("worker_threads"),e=new t().port1,r=new ArrayBuffer;e.postMessage(r,[r,r])}catch(t){t.constructor.name==="DOMException"&&(globalThis.DOMException=t.constructor)}G$e.exports=globalThis.DOMException});var vg,K$e,V$e,PY,Y$e,J$e,X$e,Z$e,eUe,tUe,JB,DY=gr(()=>{vg=require("node:fs"),K$e=require("node:path"),V$e=Ce(z$e(),1);RY();AC();({stat:PY}=vg.promises),Y$e=(t,e)=>eUe((0,vg.statSync)(t),t,e),J$e=(t,e)=>PY(t).then(r=>eUe(r,t,e)),X$e=(t,e)=>PY(t).then(r=>tUe(r,t,e)),Z$e=(t,e)=>tUe((0,vg.statSync)(t),t,e),eUe=(t,e,r="")=>new Tu([new JB({path:e,size:t.size,lastModified:t.mtimeMs,start:0})],{type:r}),tUe=(t,e,r="")=>new em([new JB({path:e,size:t.size,lastModified:t.mtimeMs,start:0})],(0,K$e.basename)(e),{type:r,lastModified:t.mtimeMs}),JB=class t{#e;#t;constructor(e){this.#e=e.path,this.#t=e.start,this.size=e.size,this.lastModified=e.lastModified}slice(e,r){return new t({path:this.#e,lastModified:this.lastModified,size:r-e,start:this.#t+e})}async*stream(){let{mtimeMs:e}=await PY(this.#e);if(e>this.lastModified)throw new V$e.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,vg.createReadStream)(this.#e,{start:this.#t,end:this.#t+this.size-1})}get[Symbol.toStringTag](){return"Blob"}}});var nUe={};os(nUe,{toFormData:()=>tdr});function edr(t){let e=t.match(/\bfilename=("(.*?)"|([^()<>@,;:\\"/[\]?={}\s\t]+))($|;\s)/i);if(!e)return;let r=e[2]||e[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 tdr(t,e){if(!/multipart/i.test(e))throw new TypeError("Failed to fetch");let r=e.match(/boundary=(?:"([^"]+)"|([^;]+))/i);if(!r)throw new TypeError("no or bad content-type header, no multipart boundary");let n=new BY(r[1]||r[2]),s,i,a,o,c,u,l=[],d=new tm,f=g=>{a+=y.decode(g,{stream:!0})},p=g=>{l.push(g)},m=()=>{let g=new em(l,u,{type:c});d.append(o,g)},h=()=>{d.append(o,a)},y=new TextDecoder("utf-8");y.decode(),n.onPartBegin=function(){n.onPartData=f,n.onPartEnd=h,s="",i="",a="",o="",c="",u=null,l.length=0},n.onHeaderField=function(g){s+=y.decode(g,{stream:!0})},n.onHeaderValue=function(g){i+=y.decode(g,{stream:!0})},n.onHeaderEnd=function(){if(i+=y.decode(),s=s.toLowerCase(),s==="content-disposition"){let g=i.match(/\bname=("([^"]*)"|([^()<>@,;:\\"/[\]?={}\s\t]+))/i);g&&(o=g[2]||g[3]||""),u=edr(i),u&&(n.onPartData=p,n.onPartEnd=m)}else s==="content-type"&&(c=i);i="",s=""};for await(let g of t)n.write(g);return n.end(),d}var Ql,Sn,rUe,rm,XB,ZB,Vlr,_C,Ylr,Jlr,Xlr,Zlr,Sg,BY,sUe=gr(()=>{DY();zB();Ql=0,Sn={START_BOUNDARY:Ql++,HEADER_FIELD_START:Ql++,HEADER_FIELD:Ql++,HEADER_VALUE_START:Ql++,HEADER_VALUE:Ql++,HEADER_VALUE_ALMOST_DONE:Ql++,HEADERS_ALMOST_DONE:Ql++,PART_DATA_START:Ql++,PART_DATA:Ql++,END:Ql++},rUe=1,rm={PART_BOUNDARY:rUe,LAST_BOUNDARY:rUe*=2},XB=10,ZB=13,Vlr=32,_C=45,Ylr=58,Jlr=97,Xlr=122,Zlr=t=>t|32,Sg=()=>{},BY=class{constructor(e){this.index=0,this.flags=0,this.onHeaderEnd=Sg,this.onHeaderField=Sg,this.onHeadersEnd=Sg,this.onHeaderValue=Sg,this.onPartBegin=Sg,this.onPartData=Sg,this.onPartEnd=Sg,this.boundaryChars={},e=`\r +--`+e;let r=new Uint8Array(e.length);for(let n=0;n{this[A+"Mark"]=r},g=A=>{delete this[A+"Mark"]},b=(A,S,I,R)=>{(S===void 0||S!==I)&&this[A](R&&R.subarray(S,I))},x=(A,S)=>{let I=A+"Mark";I in this&&(S?(b(A,this[I],r,e),delete this[I]):(b(A,this[I],e.length,e),this[I]=0))};for(r=0;rXlr)return;break;case Sn.HEADER_VALUE_START:if(m===Vlr)break;y("onHeaderValue"),u=Sn.HEADER_VALUE;case Sn.HEADER_VALUE:m===ZB&&(x("onHeaderValue",!0),b("onHeaderEnd"),u=Sn.HEADER_VALUE_ALMOST_DONE);break;case Sn.HEADER_VALUE_ALMOST_DONE:if(m!==XB)return;u=Sn.HEADER_FIELD_START;break;case Sn.HEADERS_ALMOST_DONE:if(m!==XB)return;b("onHeadersEnd"),u=Sn.PART_DATA_START;break;case Sn.PART_DATA_START:u=Sn.PART_DATA,y("onPartData");case Sn.PART_DATA:if(s=c,c===0){for(r+=f;r0)i[c-1]=m;else if(s>0){let A=new Uint8Array(i.buffer,i.byteOffset,i.byteLength);b("onPartData",0,s,A),s=0,y("onPartData"),r--}break;case Sn.END:break;default:throw new Error(`Unexpected state entered: ${u}`)}x("onHeaderField"),x("onHeaderValue"),x("onPartData"),this.index=c,this.state=u,this.flags=l}end(){if(this.state===Sn.HEADER_FIELD_START&&this.index===0||this.state===Sn.PART_DATA&&this.index===this.boundary.length)this.onPartEnd();else if(this.state!==Sn.END)throw new Error("MultipartParser.end(): stream ended unexpectedly")}}});async function LY(t){if(t[fo].disturbed)throw new TypeError(`body used already for: ${t.url}`);if(t[fo].disturbed=!0,t[fo].error)throw t[fo].error;let{body:e}=t;if(e===null)return Lo.Buffer.alloc(0);if(!(e instanceof Bc.default))return Lo.Buffer.alloc(0);let r=[],n=0;try{for await(let s of e){if(t.size>0&&n+s.length>t.size){let i=new Sa(`content size at ${t.url} over limit: ${t.size}`,"max-size");throw e.destroy(i),i}n+=s.length,r.push(s)}}catch(s){throw s instanceof vf?s:new Sa(`Invalid response body while trying to fetch ${t.url}: ${s.message}`,"system",s)}if(e.readableEnded===!0||e._readableState.ended===!0)try{return r.every(s=>typeof s=="string")?Lo.Buffer.from(r.join("")):Lo.Buffer.concat(r,n)}catch(s){throw new Sa(`Could not create Buffer from response body for ${t.url}: ${s.message}`,"system",s)}else throw new Sa(`Premature close of server response while trying to fetch ${t.url}`)}var Bc,Sf,Lo,rdr,fo,Hl,qb,ndr,eL,iUe,aUe,tL=gr(()=>{Bc=Ce(require("node:stream"),1),Sf=require("node:util"),Lo=require("node:buffer");AC();zB();OY();KB();YB();rdr=(0,Sf.promisify)(Bc.default.pipeline),fo=Symbol("Body internals"),Hl=class{constructor(e,{size:r=0}={}){let n=null;e===null?e=null:kY(e)?e=Lo.Buffer.from(e.toString()):bC(e)||Lo.Buffer.isBuffer(e)||(Sf.types.isAnyArrayBuffer(e)?e=Lo.Buffer.from(e):ArrayBuffer.isView(e)?e=Lo.Buffer.from(e.buffer,e.byteOffset,e.byteLength):e instanceof Bc.default||(e instanceof tm?(e=q$e(e),n=e.type.split("=")[1]):e=Lo.Buffer.from(String(e))));let s=e;Lo.Buffer.isBuffer(e)?s=Bc.default.Readable.from(e):bC(e)&&(s=Bc.default.Readable.from(e.stream())),this[fo]={body:e,stream:s,boundary:n,disturbed:!1,error:null},this.size=r,e instanceof Bc.default&&e.on("error",i=>{let a=i instanceof vf?i:new Sa(`Invalid response body while trying to fetch ${this.url}: ${i.message}`,"system",i);this[fo].error=a})}get body(){return this[fo].stream}get bodyUsed(){return this[fo].disturbed}async arrayBuffer(){let{buffer:e,byteOffset:r,byteLength:n}=await LY(this);return e.slice(r,r+n)}async formData(){let e=this.headers.get("content-type");if(e.startsWith("application/x-www-form-urlencoded")){let n=new tm,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(()=>(sUe(),nUe));return r(this.body,e)}async blob(){let e=this.headers&&this.headers.get("content-type")||this[fo].body&&this[fo].body.type||"",r=await this.arrayBuffer();return new Tu([r],{type:e})}async json(){let e=await this.text();return JSON.parse(e)}async text(){let e=await LY(this);return new TextDecoder().decode(e)}buffer(){return LY(this)}};Hl.prototype.buffer=(0,Sf.deprecate)(Hl.prototype.buffer,"Please use 'response.arrayBuffer()' instead of 'response.buffer()'","node-fetch#buffer");Object.defineProperties(Hl.prototype,{body:{enumerable:!0},bodyUsed:{enumerable:!0},arrayBuffer:{enumerable:!0},blob:{enumerable:!0},json:{enumerable:!0},text:{enumerable:!0},data:{get:(0,Sf.deprecate)(()=>{},"data doesn't exist, use json(), text(), arrayBuffer(), or body instead","https://github.com/node-fetch/node-fetch/issues/1000 (response)")}});qb=(t,e)=>{let r,n,{body:s}=t[fo];if(t.bodyUsed)throw new Error("cannot clone body after it is used");return s instanceof Bc.default&&typeof s.getBoundary!="function"&&(r=new Bc.PassThrough({highWaterMark:e}),n=new Bc.PassThrough({highWaterMark:e}),s.pipe(r),s.pipe(n),t[fo].stream=r,s=n),s},ndr=(0,Sf.deprecate)(t=>t.getBoundary(),"form-data doesn't follow the spec and requires special treatment. Use alternative package","https://github.com/node-fetch/node-fetch/issues/1167"),eL=(t,e)=>t===null?null:typeof t=="string"?"text/plain;charset=UTF-8":kY(t)?"application/x-www-form-urlencoded;charset=UTF-8":bC(t)?t.type||null:Lo.Buffer.isBuffer(t)||Sf.types.isAnyArrayBuffer(t)||ArrayBuffer.isView(t)?null:t instanceof tm?`multipart/form-data; boundary=${e[fo].boundary}`:t&&typeof t.getBoundary=="function"?`multipart/form-data;boundary=${ndr(t)}`:t instanceof Bc.default?null:"text/plain;charset=UTF-8",iUe=t=>{let{body:e}=t[fo];return e===null?0:bC(e)?e.size:Lo.Buffer.isBuffer(e)?e.length:e&&typeof e.getLengthSync=="function"&&e.hasKnownLength&&e.hasKnownLength()?e.getLengthSync():null},aUe=async(t,{body:e})=>{e===null?t.end():await rdr(e,t)}});function oUe(t=[]){return new po(t.reduce((e,r,n,s)=>(n%2===0&&e.push(s.slice(n,n+2)),e),[]).filter(([e,r])=>{try{return rL(e),WY(e,String(r)),!0}catch{return!1}}))}var MY,EC,rL,WY,po,nL=gr(()=>{MY=require("node:util"),EC=Ce(require("node:http"),1),rL=typeof EC.default.validateHeaderName=="function"?EC.default.validateHeaderName:t=>{if(!/^[\^`\-\w!#$%&'*+.|~]+$/.test(t)){let e=new TypeError(`Header name must be a valid HTTP token [${t}]`);throw Object.defineProperty(e,"code",{value:"ERR_INVALID_HTTP_TOKEN"}),e}},WY=typeof EC.default.validateHeaderValue=="function"?EC.default.validateHeaderValue:(t,e)=>{if(/[^\t\u0020-\u007E\u0080-\u00FF]/.test(e)){let r=new TypeError(`Invalid character in header content ["${t}"]`);throw Object.defineProperty(r,"code",{value:"ERR_INVALID_CHAR"}),r}},po=class t extends URLSearchParams{constructor(e){let r=[];if(e instanceof t){let n=e.raw();for(let[s,i]of Object.entries(n))r.push(...i.map(a=>[s,a]))}else if(e!=null)if(typeof e=="object"&&!MY.types.isBoxedPrimitive(e)){let n=e[Symbol.iterator];if(n==null)r.push(...Object.entries(e));else{if(typeof n!="function")throw new TypeError("Header pairs must be iterable");r=[...e].map(s=>{if(typeof s!="object"||MY.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])=>(rL(n),WY(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)=>(rL(a),WY(a,String(o)),URLSearchParams.prototype[s].call(n,String(a).toLowerCase(),String(o)));case"delete":case"has":case"getAll":return a=>(rL(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(e){let r=this.getAll(e);if(r.length===0)return null;let n=r.join(", ");return/^content-encoding$/i.test(e)&&(n=n.toLowerCase()),n}forEach(e,r=void 0){for(let n of this.keys())Reflect.apply(e,r,[this.get(n),n,this])}*values(){for(let e of this.keys())yield this.get(e)}*entries(){for(let e of this.keys())yield[e,this.get(e)]}[Symbol.iterator](){return this.entries()}raw(){return[...this.keys()].reduce((e,r)=>(e[r]=this.getAll(r),e),{})}[Symbol.for("nodejs.util.inspect.custom")](){return[...this.keys()].reduce((e,r)=>{let n=this.getAll(r);return r==="host"?e[r]=n[0]:e[r]=n.length>1?n:n[0],e},{})}};Object.defineProperties(po.prototype,["get","entries","forEach","values"].reduce((t,e)=>(t[e]={enumerable:!0},t),{}))});var sdr,vC,$Y=gr(()=>{sdr=new Set([301,302,303,307,308]),vC=t=>sdr.has(t)});var wu,Mo,cUe=gr(()=>{nL();tL();$Y();wu=Symbol("Response internals"),Mo=class t extends Hl{constructor(e=null,r={}){super(e,r);let n=r.status!=null?r.status:200,s=new po(r.headers);if(e!==null&&!s.has("Content-Type")){let i=eL(e,this);i&&s.append("Content-Type",i)}this[wu]={type:"default",url:r.url,status:n,statusText:r.statusText||"",headers:s,counter:r.counter,highWaterMark:r.highWaterMark}}get type(){return this[wu].type}get url(){return this[wu].url||""}get status(){return this[wu].status}get ok(){return this[wu].status>=200&&this[wu].status<300}get redirected(){return this[wu].counter>0}get statusText(){return this[wu].statusText}get headers(){return this[wu].headers}get highWaterMark(){return this[wu].highWaterMark}clone(){return new t(qb(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(e,r=302){if(!vC(r))throw new RangeError('Failed to execute "redirect" on "response": Invalid status code');return new t(null,{headers:{location:new URL(e).toString()},status:r})}static error(){let e=new t(null,{status:0,statusText:""});return e[wu].type="error",e}static json(e=void 0,r={}){let n=JSON.stringify(e);if(n===void 0)throw new TypeError("data is not JSON serializable");let s=new po(r&&r.headers);return s.has("content-type")||s.set("content-type","application/json"),new t(n,{...r,headers:s})}get[Symbol.toStringTag](){return"Response"}};Object.defineProperties(Mo.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 uUe,lUe=gr(()=>{uUe=t=>{if(t.search)return t.search;let e=t.href.length-1,r=t.hash||(t.href[e]==="#"?"#":"");return t.href[e-r.length]==="?"?"?":""}});function dUe(t,e=!1){return t==null||(t=new URL(t),/^(about|blob|data):$/.test(t.protocol))?"no-referrer":(t.username="",t.password="",t.hash="",e&&(t.pathname="",t.search=""),t)}function hUe(t){if(!pUe.has(t))throw new TypeError(`Invalid referrerPolicy: ${t}`);return t}function idr(t){if(/^(http|ws)s:$/.test(t.protocol))return!0;let e=t.host.replace(/(^\[)|(]$)/g,""),r=(0,fUe.isIP)(e);return r===4&&/^127\./.test(e)||r===6&&/^(((0+:){7})|(::(0+:){0,6}))0*1$/.test(e)?!0:t.host==="localhost"||t.host.endsWith(".localhost")?!1:t.protocol==="file:"}function jb(t){return/^about:(blank|srcdoc)$/.test(t)||t.protocol==="data:"||/^(blob|filesystem):$/.test(t.protocol)?!0:idr(t)}function gUe(t,{referrerURLCallback:e,referrerOriginCallback:r}={}){if(t.referrer==="no-referrer"||t.referrerPolicy==="")return null;let n=t.referrerPolicy;if(t.referrer==="about:client")return"no-referrer";let s=t.referrer,i=dUe(s),a=dUe(s,!0);i.toString().length>4096&&(i=a),e&&(i=e(i)),r&&(a=r(a));let o=new URL(t.url);switch(n){case"no-referrer":return"no-referrer";case"origin":return a;case"unsafe-url":return i;case"strict-origin":return jb(i)&&!jb(o)?"no-referrer":a.toString();case"strict-origin-when-cross-origin":return i.origin===o.origin?i:jb(i)&&!jb(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 jb(i)&&!jb(o)?"no-referrer":i;default:throw new TypeError(`Invalid referrerPolicy: ${n}`)}}function yUe(t){let e=(t.get("referrer-policy")||"").split(/[,\s]+/),r="";for(let n of e)n&&pUe.has(n)&&(r=n);return r}var fUe,pUe,mUe,UY=gr(()=>{fUe=require("node:net");pUe=new Set(["","no-referrer","no-referrer-when-downgrade","same-origin","origin","strict-origin","origin-when-cross-origin","strict-origin-when-cross-origin","unsafe-url"]),mUe="strict-origin-when-cross-origin"});var AUe,xUe,oi,SC,adr,nm,bUe,_Ue=gr(()=>{AUe=require("node:url"),xUe=require("node:util");nL();tL();YB();lUe();UY();oi=Symbol("Request internals"),SC=t=>typeof t=="object"&&typeof t[oi]=="object",adr=(0,xUe.deprecate)(()=>{},".data is not a valid RequestInit property, use .body instead","https://github.com/node-fetch/node-fetch/issues/1000 (request)"),nm=class t extends Hl{constructor(e,r={}){let n;if(SC(e)?n=new URL(e.url):(n=new URL(e),e={}),n.username!==""||n.password!=="")throw new TypeError(`${n} is an url with embedded credentials.`);let s=r.method||e.method||"GET";if(/^(delete|get|head|options|post|put)$/i.test(s)&&(s=s.toUpperCase()),!SC(r)&&"data"in r&&adr(),(r.body!=null||SC(e)&&e.body!==null)&&(s==="GET"||s==="HEAD"))throw new TypeError("Request with GET/HEAD method cannot have body");let i=r.body?r.body:SC(e)&&e.body!==null?qb(e):null;super(i,{size:r.size||e.size||0});let a=new po(r.headers||e.headers||{});if(i!==null&&!a.has("Content-Type")){let u=eL(i,this);u&&a.set("Content-Type",u)}let o=SC(e)?e.signal:null;if("signal"in r&&(o=r.signal),o!=null&&!j$e(o))throw new TypeError("Expected signal to be an instanceof AbortSignal or EventTarget");let c=r.referrer==null?e.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[oi]={method:s,redirect:r.redirect||e.redirect||"follow",headers:a,parsedURL:n,signal:o,referrer:c},this.follow=r.follow===void 0?e.follow===void 0?20:e.follow:r.follow,this.compress=r.compress===void 0?e.compress===void 0?!0:e.compress:r.compress,this.counter=r.counter||e.counter||0,this.agent=r.agent||e.agent,this.highWaterMark=r.highWaterMark||e.highWaterMark||16384,this.insecureHTTPParser=r.insecureHTTPParser||e.insecureHTTPParser||!1,this.referrerPolicy=r.referrerPolicy||e.referrerPolicy||""}get method(){return this[oi].method}get url(){return(0,AUe.format)(this[oi].parsedURL)}get headers(){return this[oi].headers}get redirect(){return this[oi].redirect}get signal(){return this[oi].signal}get referrer(){if(this[oi].referrer==="no-referrer")return"";if(this[oi].referrer==="client")return"about:client";if(this[oi].referrer)return this[oi].referrer.toString()}get referrerPolicy(){return this[oi].referrerPolicy}set referrerPolicy(e){this[oi].referrerPolicy=hUe(e)}clone(){return new t(this)}get[Symbol.toStringTag](){return"Request"}};Object.defineProperties(nm.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}});bUe=t=>{let{parsedURL:e}=t[oi],r=new po(t[oi].headers);r.has("Accept")||r.set("Accept","*/*");let n=null;if(t.body===null&&/^(post|put)$/i.test(t.method)&&(n="0"),t.body!==null){let o=iUe(t);typeof o=="number"&&!Number.isNaN(o)&&(n=String(o))}n&&r.set("Content-Length",n),t.referrerPolicy===""&&(t.referrerPolicy=mUe),t.referrer&&t.referrer!=="no-referrer"?t[oi].referrer=gUe(t):t[oi].referrer="no-referrer",t[oi].referrer instanceof URL&&r.set("Referer",t.referrer),r.has("User-Agent")||r.set("User-Agent","node-fetch"),t.compress&&!r.has("Accept-Encoding")&&r.set("Accept-Encoding","gzip, deflate, br");let{agent:s}=t;typeof s=="function"&&(s=s(e));let i=uUe(e),a={path:e.pathname+i,method:t.method,headers:r[Symbol.for("nodejs.util.inspect.custom")](),insecureHTTPParser:t.insecureHTTPParser,agent:s};return{parsedURL:e,options:a}}});var IC,EUe=gr(()=>{KB();IC=class extends vf{constructor(e,r="aborted"){super(e,r)}}});var sL={};os(sL,{AbortError:()=>IC,Blob:()=>Tu,FetchError:()=>Sa,File:()=>em,FormData:()=>tm,Headers:()=>po,Request:()=>nm,Response:()=>Mo,blobFrom:()=>J$e,blobFromSync:()=>Y$e,default:()=>Qb,fileFrom:()=>X$e,fileFromSync:()=>Z$e,isRedirect:()=>vC});async function Qb(t,e){return new Promise((r,n)=>{let s=new nm(t,e),{parsedURL:i,options:a}=bUe(s);if(!odr.has(i.protocol))throw new TypeError(`node-fetch cannot load ${t}. URL scheme "${i.protocol.replace(/:$/,"")}" is not supported.`);if(i.protocol==="data:"){let m=P$e(s.url),h=new Mo(m,{headers:{"Content-Type":m.typeFull}});r(h);return}let o=(i.protocol==="https:"?SUe.default:vUe.default).request,{signal:c}=s,u=null,l=()=>{let m=new IC("The operation was aborted.");n(m),s.body&&s.body instanceof Wo.default.Readable&&s.body.destroy(m),!(!u||!u.body)&&u.body.emit("error",m)};if(c&&c.aborted){l();return}let d=()=>{l(),p()},f=o(i.toString(),a);c&&c.addEventListener("abort",d);let p=()=>{f.abort(),c&&c.removeEventListener("abort",d)};f.on("error",m=>{n(new Sa(`request to ${s.url} failed, reason: ${m.message}`,"system",m)),p()}),cdr(f,m=>{u&&u.body&&u.body.destroy(m)}),process.version<"v14"&&f.on("socket",m=>{let h;m.prependListener("end",()=>{h=m._eventsCount}),m.prependListener("close",y=>{if(u&&h{f.setTimeout(0);let h=oUe(m.rawHeaders);if(vC(m.statusCode)){let A=h.get("Location"),S=null;try{S=A===null?null:new URL(A,s.url)}catch{if(s.redirect!=="manual"){n(new Sa(`uri requested responds with an invalid redirect URL: ${A}`,"invalid-redirect")),p();return}}switch(s.redirect){case"error":n(new Sa(`uri requested responds with a redirect, redirect mode is set to error: ${s.url}`,"no-redirect")),p();return;case"manual":break;case"follow":{if(S===null)break;if(s.counter>=s.follow){n(new Sa(`maximum redirect reached at: ${s.url}`,"max-redirect")),p();return}let I={headers:new po(s.headers),follow:s.follow,counter:s.counter+1,agent:s.agent,compress:s.compress,method:s.method,body:qb(s),signal:s.signal,size:s.size,referrer:s.referrer,referrerPolicy:s.referrerPolicy};if(!Q$e(s.url,S)||!H$e(s.url,S))for(let w of["authorization","www-authenticate","cookie","cookie2"])I.headers.delete(w);if(m.statusCode!==303&&s.body&&e.body instanceof Wo.default.Readable){n(new Sa("Cannot follow redirect with body being a readable stream","unsupported-redirect")),p();return}(m.statusCode===303||(m.statusCode===301||m.statusCode===302)&&s.method==="POST")&&(I.method="GET",I.body=void 0,I.headers.delete("content-length"));let R=yUe(h);R&&(I.referrerPolicy=R),r(Qb(new nm(S,I))),p();return}default:return n(new TypeError(`Redirect option '${s.redirect}' is not a valid value of RequestRedirect`))}}c&&m.once("end",()=>{c.removeEventListener("abort",d)});let y=(0,Wo.pipeline)(m,new Wo.PassThrough,A=>{A&&n(A)});process.version<"v12.10"&&m.on("aborted",d);let g={url:s.url,status:m.statusCode,statusText:m.statusMessage,headers:h,size:s.size,counter:s.counter,highWaterMark:s.highWaterMark},b=h.get("Content-Encoding");if(!s.compress||s.method==="HEAD"||b===null||m.statusCode===204||m.statusCode===304){u=new Mo(y,g),r(u);return}let x={flush:Ig.default.Z_SYNC_FLUSH,finishFlush:Ig.default.Z_SYNC_FLUSH};if(b==="gzip"||b==="x-gzip"){y=(0,Wo.pipeline)(y,Ig.default.createGunzip(x),A=>{A&&n(A)}),u=new Mo(y,g),r(u);return}if(b==="deflate"||b==="x-deflate"){let A=(0,Wo.pipeline)(m,new Wo.PassThrough,S=>{S&&n(S)});A.once("data",S=>{(S[0]&15)===8?y=(0,Wo.pipeline)(y,Ig.default.createInflate(),I=>{I&&n(I)}):y=(0,Wo.pipeline)(y,Ig.default.createInflateRaw(),I=>{I&&n(I)}),u=new Mo(y,g),r(u)}),A.once("end",()=>{u||(u=new Mo(y,g),r(u))});return}if(b==="br"){y=(0,Wo.pipeline)(y,Ig.default.createBrotliDecompress(),A=>{A&&n(A)}),u=new Mo(y,g),r(u);return}u=new Mo(y,g),r(u)}),aUe(f,s).catch(n)})}function cdr(t,e){let r=CC.Buffer.from(`0\r \r -`),n=!1,s=!1,i;t.on("response",a=>{let{headers:o}=a;n=o["transfer-encoding"]==="chunked"&&!o["content-length"]}),t.on("socket",a=>{let o=()=>{if(n&&!s){let u=new Error("Premature close");u.code="ERR_STREAM_PREMATURE_CLOSE",e(u)}},c=u=>{s=EC.Buffer.compare(u.slice(-5),r)===0,!s&&i&&(s=EC.Buffer.compare(i.slice(-3),r.slice(0,3))===0&&EC.Buffer.compare(u.slice(-2),r.slice(3))===0),i=u};a.prependListener("close",o),a.on("data",c),t.on("close",()=>{a.removeListener("close",o),a.removeListener("data",c)})})}var E8e,_8e,Zh,wo,EC,xir,_C=dr(()=>{E8e=Re(require("node:http"),1),_8e=Re(require("node:https"),1),Zh=Re(require("node:zlib"),1),wo=Re(require("node:stream"),1),EC=require("node:buffer");P5e();CL();a8e();TL();x8e();wz();b8e();Bz();AL();bL();Mz();Oz();xir=new Set(["data:","http:","https:"])});function Cn(t){return Eir[t]||t}function Wz(t,e){if(!t)return()=>{};if(t.aborted)return e.abort(),()=>{};let r=()=>{e.abort()};return t.addEventListener("abort",r,{once:!0}),()=>{t.removeEventListener("abort",r)}}async function ge(t,e={}){let r=parseInt(e.retries||"0",10)||0,n=Array.isArray(e.validStatusCodes)?e.validStatusCodes:[],s;for(let a=0;a<=r;a++){let o=be.getStore()||"system";a>0?(_("info",`[${o}] [\u8BF7\u6C42\u6A21\u62DF] \u7B2C ${a} \u6B21\u91CD\u8BD5: ${t}`),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)))):_("info",`[${o}] [\u8BF7\u6C42\u6A21\u62DF] HTTP GET: ${t}`);let c=parseInt(e.timeout||O.vodRequestTimeout||"5000",10)||5e3,u=new AbortController,l=setTimeout(()=>u.abort(),c),d=Wz(e.signal,u);try{let f;if(typeof WebAssembly>"u"){_("info","[Utils] [HTTP] iOS\u73AF\u5883\u964D\u7EA7\u4F7F\u7528node-fetch");let g=(await Promise.resolve().then(()=>(_C(),wL))).default;f=await g(t,{method:"GET",headers:{...e.headers},signal:u.signal})}else f=await fetch(t,{method:"GET",headers:{...e.headers},signal:u.signal});if(clearTimeout(l),!f.ok&&!n.includes(f.status))throw new Error(`HTTP error! status: ${f.status}`);let p;if(e.base64Data){_("info","[Utils] [HTTP] base64\u6A21\u5F0F");let g=await f.arrayBuffer(),b=new Uint8Array(g),y="",x=32768;for(let v=0;v0&&(h["set-cookie"]=A.join(";")),a>0&&_("info",`[${o}] [\u8BF7\u6C42\u6A21\u62DF] \u91CD\u8BD5\u6210\u529F`),{data:m,status:f.status,headers:h}}catch(f){clearTimeout(l),s=f;let p=be.getStore()||"system";if(e.signal?.aborted)throw f;if(f.name==="AbortError"?(_("error",`[${p}] [\u8BF7\u6C42\u6A21\u62DF] \u8BF7\u6C42\u8D85\u65F6:`,f.message),_("error","\u8BE6\u7EC6\u8BCA\u65AD:"),_("error","- URL:",t),_("error","- \u8D85\u65F6\u65F6\u95F4:",`${c}ms`),_("error",`- \u5F53\u524D\u5C1D\u8BD5: ${a+1}/${r+1}`)):(_("error",`[${p}] [\u8BF7\u6C42\u6A21\u62DF] \u8BF7\u6C42\u5931\u8D25:`,f.message),_("error","\u8BE6\u7EC6\u8BCA\u65AD:"),_("error","- URL:",t),_("error","- \u9519\u8BEF\u7C7B\u578B:",f.name),_("error","- \u6D88\u606F:",f.message),_("error",`- \u5F53\u524D\u5C1D\u8BD5: ${a+1}/${r+1}`),f.cause&&(_("error","- \u7801:",f.cause.code),_("error","- \u539F\u56E0:",f.cause.message))),a0?(_("info",`[${c}] [\u8BF7\u6C42\u6A21\u62DF] \u7B2C ${o} \u6B21\u91CD\u8BD5: ${t}`),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)))):_("info",`[${c}] [\u8BF7\u6C42\u6A21\u62DF] HTTP POST: ${t}`);let u=parseInt(r.timeout||O.vodRequestTimeout||"5000",10)||5e3,l=new AbortController,d=setTimeout(()=>l.abort(),u),f=Wz(r.signal,l),{headers:p={},params:m,allow_redirects:h=!0}=r,A={method:"POST",headers:{...p},body:e,signal:l.signal};h||(A.redirect="manual");try{let g;if(typeof WebAssembly>"u"){_("info","[Utils] [HTTP] iOS\u73AF\u5883\u964D\u7EA7\u4F7F\u7528node-fetch");let x=(await Promise.resolve().then(()=>(_C(),wL))).default;g=await x(t,A)}else g=await fetch(t,A);clearTimeout(d);let b=await g.text();if(!g.ok&&!s.includes(g.status))throw _("error",`[${c}] [\u8BF7\u6C42\u6A21\u62DF] response data: `,b),new Error(`HTTP error! status: ${g.status}`);let y;try{y=JSON.parse(b)}catch{y=b}return o>0&&_("info",`[${c}] [\u8BF7\u6C42\u6A21\u62DF] \u91CD\u8BD5\u6210\u529F`),{data:y,status:g.status,headers:Object.fromEntries(g.headers.entries())}}catch(g){clearTimeout(d),i=g;let b=be.getStore()||"system";if(r.signal?.aborted)throw g;if(g.name==="AbortError"?(_("error",`[${b}] [\u8BF7\u6C42\u6A21\u62DF] \u8BF7\u6C42\u8D85\u65F6:`,g.message),_("error","\u8BE6\u7EC6\u8BCA\u65AD:"),_("error","- URL:",t),_("error","- \u8D85\u65F6\u65F6\u95F4:",`${u}ms`),_("error",`- \u5F53\u524D\u5C1D\u8BD5: ${o+1}/${n+1}`)):(_("error",`[${b}] [\u8BF7\u6C42\u6A21\u62DF] \u8BF7\u6C42\u5931\u8D25:`,g.message),_("error","\u8BE6\u7EC6\u8BCA\u65AD:"),_("error","- URL:",t),_("error","- \u9519\u8BEF\u7C7B\u578B:",g.name),_("error","- \u6D88\u606F:",g.message),_("error",`- \u5F53\u524D\u5C1D\u8BD5: ${o+1}/${n+1}`),g.cause&&(_("error","- \u7801:",g.cause.code),_("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():t}catch(e){let r=be.getStore()||"system";return _("error",`[${r}] \u83B7\u53D6\u6807\u9898\u5931\u8D25: ${e.message}`),t}}function Be(t,e=200){return new Response(JSON.stringify(t),{status:e,headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*"}})}function I8e(t,e=200){if(typeof t!="string"||!t.trim().startsWith("s,n="";for(let s in t)t.hasOwnProperty(s)&&(n.length>0&&(n+="&"),n+=r(s)+"="+r(t[s]));return n}function SC(t={}){let e={};for(let[s,i]of Object.entries(t))typeof i=="boolean"?e[s]=i?"true":"false":i==null?e[s]="":e[s]=String(i);let r=[];for(let s in e)Object.prototype.hasOwnProperty.call(e,s)&&r.push(s);r.sort();let n=[];for(let s of r){let i=encodeURIComponent(s),a=encodeURIComponent(e[s]);n.push(`${i}=${a}`)}return n.join("&")}function db(t,e){let r=t,n="",s=t.indexOf("#"),i="";s!==-1&&(r=t.substring(0,s),i=t.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 e)Object.prototype.hasOwnProperty.call(e,u)&&(o[u]=e[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 T8e(t){let e=t.indexOf("//")+2;e===1&&(e=0);let r=t.indexOf("/",e);if(r===-1)return"/";let n=t.indexOf("?",r),s=t.indexOf("#",r),i=n!==-1?n:s!==-1?s:t.length;return t.substring(r,i)||"/"}async function Fz(t,e={},r){let{headers:n={},sniffLimit:s}=e,i=parseInt(s||"32768",10)||32768,a=parseInt(e.timeout||O.vodRequestTimeout||"5000",10)||5e3,o=new AbortController,c=setTimeout(()=>o.abort(),a),u=Wz(e.signal,o);try{let l=be.getStore()||"system";_("info",`[${l}] [\u6D41\u5F0F\u8BF7\u6C42] HTTP GET: ${t}`);let d=await fetch(t,{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=be.getStore()||"system";_("warn",`[${v}] [\u6D41\u5F0F\u8BF7\u6C42] \u73AF\u5883\u4E0D\u652F\u6301\u6D41\u5F0F\u8BFB\u53D6,\u56DE\u9000\u5230\u666E\u901A\u8BF7\u6C42`);let C=await d.text();if(clearTimeout(c),r&&!r(C.slice(0,i)))return _("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(C)}catch{return C}}let p=0,m=[],h=!1,A="",g=!1;for(;;){let{done:v,value:C}=await f.read();if(v)break;if(p+=C.length,!g&&r){let R=new TextDecoder("utf-8").decode(C,{stream:!0});if(A+=R,!r(A)){let w=be.getStore()||"system";_("info",`[${w}] [\u6D41\u5F0F\u8BF7\u6C42] \u55C5\u63A2\u5230\u65E0\u6548\u7279\u5F81(\u5DF2\u8BFB${p}\u5B57\u8282),\u7ACB\u5373\u7194\u65AD`),o.abort(),h=!0;break}p>i&&(g=!0,A=null)}m.push(C)}if(clearTimeout(c),h)return null;let b=new Uint8Array(p),y=0;for(let v of m)b.set(v,y),y+=v.length;let x=new TextDecoder("utf-8").decode(b);try{return JSON.parse(x)}catch{return x}}catch(l){let d=be.getStore()||"system";return clearTimeout(c),l.name==="AbortError"||_("error",`[${d}] [\u6D41\u5F0F\u8BF7\u6C42] \u5931\u8D25: ${l.message}`),null}finally{u()}}var S8e,be,Eir,ar=dr(()=>{Pt();St();S8e=require("node:async_hooks"),be=new S8e.AsyncLocalStorage,Eir={360:"360kan",imgo:"mango"}});function an(t){let e=0;for(let r=0;r>>0}return e.toString(16)}function fb(t,e){return t==="lastSelectMap"&&e instanceof Map?JSON.stringify(Object.fromEntries(e)):JSON.stringify(e)}function Ls(t){function e(y){let x="";for(let v=0;v>6),x+=String.fromCharCode(128|C&63)):(x+=String.fromCharCode(224|C>>12),x+=String.fromCharCode(128|C>>6&63),x+=String.fromCharCode(128|C&63))}return x}t=e(t);function r(y,x){return y<>>32-x}function n(y,x){let v=y&1073741824,C=x&1073741824,R=y&2147483648,w=x&2147483648,N=(y&1073741823)+(x&1073741823);return v&C?N^2147483648^R^w:v|C?N&1073741824?N^3221225472^R^w:N^1073741824^R^w:N^R^w}function s(y,x,v){return y&x|~y&v}function i(y,x,v){return y&v|x&~v}function a(y,x,v){return y^x^v}function o(y,x,v){return x^(y|~v)}function c(y,x,v,C,R,w,N){return y=n(y,n(n(s(x,v,C),R),N)),n(r(y,w),x)}function u(y,x,v,C,R,w,N){return y=n(y,n(n(i(x,v,C),R),N)),n(r(y,w),x)}function l(y,x,v,C,R,w,N){return y=n(y,n(n(a(x,v,C),R),N)),n(r(y,w),x)}function d(y,x,v,C,R,w,N){return y=n(y,n(n(o(x,v,C),R),N)),n(r(y,w),x)}function f(y){let x=y.length,v=((x+8>>>6)+1)*16,C=new Array(v).fill(0);for(let R=0;R>2]|=y.charCodeAt(R)<>2]|=128<>>v*8&255).toString(16);x+=R.substr(R.length-2,2)}return x}let m=f(t),h=1732584193,A=4023233417,g=2562383102,b=271733878;for(let y=0;y>3,d=u&7;if(d===0){let[f,p]=jz(i,o);switch(o=p,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,p]=w8e(i,o);switch(o=p,l){case 6:c.midHash=Cc(f);break;case 7:c.content=Cc(f);break;case 10:c.action=Cc(f);break;case 12:c.idStr=Cc(f);break;case 14:c.animation=Cc(f);break;case 16:c.color_v2=Cc(f);break}}else{let[f,p]=jz(i,o);o=p}}r.push(c)}return r}function jz(t,e){let r=0n,n=0n,s=e;for(;;){let i=t[s++];if(r|=BigInt(i&127)<>>0)%9999999,e<1e4?e+1e4:e}function R8e(t,e){let r=new Uint8Array(t.length);for(let n=0;nP8e[e]))}function OL(t){let s=new Array(44);for(let i=0;i<4;i++)s[i]=t.slice(4*i,4*i+4);for(let i=4;i<4*11;i++){let a=s[i-1];i%4===0&&(a=R8e(NL(Sir(a)),Uint8Array.from([_ir[i/4],0,0,0]))),s[i]=R8e(s[i-4],a)}return s}function vir(t,e){let s=new Uint8Array(t);s=Uz(s,e.slice(10*4,11*4));for(let i=9;i>=1;i--)s=CC(s),s=vC(s),s=Uz(s,e.slice(i*4,(i+1)*4)),s=Cir(s);return s=CC(s),s=vC(s),s=Uz(s,e.slice(0,4)),s}function Uz(t,e){let r=new Uint8Array(16);for(let n=0;n<4;n++)for(let s=0;s<4;s++)r[s+4*n]=t[s+4*n]^e[n][s];return r}function vC(t){let e=new Array(256);for(let r=0;r<256;r++)e[P8e[r]]=r;return Uint8Array.from(t.map(r=>e[r]))}function CC(t){let e=new Uint8Array(16);for(let r=0;r<4;r++)for(let n=0;n<4;n++)e[r+4*n]=t[r+4*((n-r+4)%4)];return e}function Cir(t){function e(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=t.slice(4*n,4*n+4);r[4*n+0]=e(s[0],14)^e(s[1],11)^e(s[2],13)^e(s[3],9),r[4*n+1]=e(s[0],9)^e(s[1],14)^e(s[2],11)^e(s[3],13),r[4*n+2]=e(s[0],13)^e(s[1],9)^e(s[2],14)^e(s[3],11),r[4*n+3]=e(s[0],11)^e(s[1],13)^e(s[2],9)^e(s[3],14)}return r}function Iir(t,e){let r=OL(e),n=16,s=new Uint8Array(t.length);for(let i=0;i=8&&(s-=8,r+=String.fromCharCode(n>>s&255))}return r}function Cc(t){let e="",r=0;for(;r=192&&n<224){let s=t[r++];e+=String.fromCharCode((n&31)<<6|s&63)}else if(n>=224&&n<240){let s=t[r++],i=t[r++];e+=String.fromCharCode((n&15)<<12|(s&63)<<6|i&63)}else if(n>=240){let s=t[r++],i=t[r++],a=t[r++],c=((n&7)<<18|(s&63)<<12|(i&63)<<6|a&63)-65536;e+=String.fromCharCode(55296+(c>>10),56320+(c&1023))}}return e}function eg(t){let e=[];for(let r=0;r>6),e.push(128|n&63);else if(n<55296||n>=57344)e.push(224|n>>12),e.push(128|n>>6&63),e.push(128|n&63);else{r++;let s=t.charCodeAt(r),i=65536+((n&1023)<<10|s&1023);e.push(240|i>>18),e.push(128|i>>12&63),e.push(128|i>>6&63),e.push(128|i&63)}}return new Uint8Array(e)}function Rir(t,e){try{let r=IC(t),n=eg(e),s=Iir(r,n),i=Tir(s);return Cc(i)}catch(r){return _("error","[Utils] [Codec]",r),null}}function TC(t){let e=typeof t=="string"?t.trim():JSON.stringify(t??"");try{return JSON.parse(e)}catch{}let n=Rir(e,"3b744389882a4067");if(n!=null)try{return JSON.parse(n)}catch{return n}return e}function Nir(t){let e=[];for(let r=0;r>6),e.push(128|n&63)):n<65536&&(e.push(224|n>>12),e.push(128|n>>6&63),e.push(128|n&63))}return e}function PL(t){let e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",r="",n;for(n=0;n+2>2],r+=e[(t[n]&3)<<4|t[n+1]>>4],r+=e[(t[n+1]&15)<<2|t[n+2]>>6],r+=e[t[n+2]&63];return n>2],n+1>4],r+=e[(t[n+1]&15)<<2],r+="="):(r+=e[(t[n]&3)<<4],r+="==")),r}function qz(t){function e(u,l){return l>>>u|l<<32-u}let r=Math.pow(2,32),n=[],s=t.length*8;for(let u=0;u>2]|=t.charCodeAt(u)<<(3-u)%4*8;n[t.length>>2]|=128<<(3-t.length%4)*8,n[(t.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,P=e(17,i[b-2])^e(19,i[b-2])^i[b-2]>>>10;i[b]=i[b-16]+N+i[b-7]+P|0}let y=e(6,m)^e(11,m)^e(25,m),x=m&h^~m&A,v=g+y+x+o[b]+i[b]|0,C=e(2,l)^e(13,l)^e(22,l),R=l&d^l&f^d&f,w=C+R|0;g=A,A=h,h=m,m=p+v|0,p=f,f=d,d=l,l=v+w|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]+m|0,a[5]=a[5]+h|0,a[6]=a[6]+A|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 D8e(t,e){let n=Nir(t);n.length>64&&(n=qz(t)),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=qz(String.fromCharCode(...i)+e),o=qz(String.fromCharCode(...s)+String.fromCharCode(...a));return PL(o)}function wC(t,e,r,n){let s=t+"t"+e;return r&&Object.keys(r).sort().forEach(a=>{s+=a+r[a]}),s+=n,Ls(s)}function N8e(t){if(t<=65535)return String.fromCharCode(t);t-=65536;let e=(t>>10)+55296,r=(t&1023)+56320;return String.fromCharCode(e,r)}function cf(t){if(!t)return t;let e={"<":"<",">":">","&":"&",""":'"',"'":"'"};return t.replace(/&[a-zA-Z]+;/g,r=>e[r]||r).replace(/&#(\d+);/g,(r,n)=>N8e(parseInt(n,10))).replace(/&#x([0-9a-fA-F]+);/g,(r,n)=>N8e(parseInt(n,16)))}var P8e,_ir,Is=dr(()=>{St();P8e=[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],_ir=[0,1,2,4,8,16,32,64,128,27,54]});var L8e={};is(L8e,{getRedisCaches:()=>Gz,getRedisKey:()=>Oir,judgeRedisValid:()=>Vz,pingRedis:()=>k8e,runPipeline:()=>Qz,setRedisKey:()=>Hz,setRedisKeyWithExpiry:()=>Pir,updateRedisCaches:()=>DL});async function k8e(){let t=`${O.redisUrl}/ping`;_("info","[Utils] [Redis] \u5F00\u59CB\u53D1\u9001 PING \u8BF7\u6C42:",t);try{return await(await fetch(t,{method:"GET",headers:{Authorization:`Bearer ${O.redisToken}`}})).json()}catch(e){_("error","[Utils] [Redis] \u8BF7\u6C42\u5931\u8D25:",e.message),_("error","- [Utils] [Redis] \u9519\u8BEF\u7C7B\u578B:",e.name),e.cause&&(_("error","- [Utils] [Redis] \u7801:",e.cause.code),_("error","- [Utils] [Redis] \u539F\u56E0:",e.cause.message))}}async function Oir(t){let e=`${O.redisUrl}/get/${t}`;_("info","[Utils] [Redis] \u5F00\u59CB\u53D1\u9001 GET \u8BF7\u6C42:",e);try{return await(await fetch(e,{method:"GET",headers:{Authorization:`Bearer ${O.redisToken}`}})).json()}catch(r){_("error","[Utils] [Redis] \u8BF7\u6C42\u5931\u8D25:",r.message),_("error","- [Utils] [Redis] \u9519\u8BEF\u7C7B\u578B:",r.name),r.cause&&(_("error","- [Utils] [Redis] \u7801:",r.cause.code),_("error","- [Utils] [Redis] \u539F\u56E0:",r.cause.message))}}async function Hz(t,e){let r=fb(t,e),n=an(r);if(O.lastHashes[t]===n)return _("info",`[Utils] [Redis] \u952E ${t} \u65E0\u53D8\u5316\uFF0C\u8DF3\u8FC7 SET \u8BF7\u6C42`),{result:"OK"};let s=`${O.redisUrl}/set/${t}`;_("info","[Utils] [Redis] \u5F00\u59CB\u53D1\u9001 SET \u8BF7\u6C42:",s);try{let a=await(await fetch(s,{method:"POST",headers:{Authorization:`Bearer ${O.redisToken}`,"Content-Type":"application/json"},body:r})).json();return O.lastHashes[t]=n,_("info",`[Utils] [Redis] \u952E ${t} \u66F4\u65B0\u6210\u529F`),a}catch(i){_("error","[Utils] [Redis] SET \u8BF7\u6C42\u5931\u8D25:",i.message),_("error","- [Utils] [Redis] \u9519\u8BEF\u7C7B\u578B:",i.name),i.cause&&(_("error","- [Utils] [Redis] \u7801:",i.cause.code),_("error","- [Utils] [Redis] \u539F\u56E0:",i.cause.message))}}async function Pir(t,e,r){let n=fb(t,e),s=an(n);if(O.lastHashes[t]===s)return _("info",`[Utils] [Redis] \u952E ${t} \u65E0\u53D8\u5316\uFF0C\u8DF3\u8FC7 SETEX \u8BF7\u6C42`),{result:"OK"};let i=`${O.redisUrl}/set/${t}?EX=${r}`;_("info","[Utils] [Redis] \u5F00\u59CB\u53D1\u9001 SETEX \u8BF7\u6C42:",i);try{let o=await(await fetch(i,{method:"POST",headers:{Authorization:`Bearer ${O.redisToken}`,"Content-Type":"application/json"},body:n})).json();return O.lastHashes[t]=s,_("info",`[Utils] [Redis] \u952E ${t} \u66F4\u65B0\u6210\u529F\uFF08\u5E26\u8FC7\u671F\u65F6\u95F4 ${r}s\uFF09`),o}catch(a){_("error","[Utils] [Redis] SETEX \u8BF7\u6C42\u5931\u8D25:",a.message),_("error","- [Utils] [Redis] \u9519\u8BEF\u7C7B\u578B:",a.name),a.cause&&(_("error","- [Utils] [Redis] \u7801:",a.cause.code),_("error","- [Utils] [Redis] \u539F\u56E0:",a.cause.message))}}async function Qz(t){let e=`${O.redisUrl}/pipeline`;_("info","[Utils] [Redis] \u5F00\u59CB\u53D1\u9001 PIPELINE \u8BF7\u6C42:",e);try{return await(await fetch(e,{method:"POST",headers:{Authorization:`Bearer ${O.redisToken}`,"Content-Type":"application/json"},body:JSON.stringify(t)})).json()}catch(r){_("error","[Utils] [Redis] Pipeline \u8BF7\u6C42\u5931\u8D25:",r.message),_("error","- [Utils] [Redis] \u9519\u8BEF\u7C7B\u578B:",r.name),r.cause&&(_("error","- [Utils] [Redis] \u7801:",r.cause.code),_("error","- [Utils] [Redis] \u539F\u56E0:",r.cause.message))}}async function Gz(){if(!O.redisCacheInitialized)try{_("info","[Utils] [Redis] getRedisCaches start.");let e=["animes","episodeIds","episodeNum","reqRecords","lastSelectMap","todayReqNum"].map(s=>["GET",s]),r=await Qz(e);O.animes=r[0].result?JSON.parse(r[0].result):O.animes,O.episodeIds=r[1].result?JSON.parse(r[1].result):O.episodeIds,O.episodeNum=r[2].result?JSON.parse(r[2].result):O.episodeNum,O.reqRecords=r[3].result?JSON.parse(r[3].result):O.reqRecords;let n=r[4].result?JSON.parse(r[4].result):null;n&&typeof n=="object"&&(O.lastSelectMap=new Map(Object.entries(n)),_("info",`[Utils] [Redis] Restored lastSelectMap from Redis with ${O.lastSelectMap.size} entries`)),O.todayReqNum=r[5].result?parseInt(r[5].result,10):O.todayReqNum,O.lastHashes.animes=an(JSON.stringify(O.animes)),O.lastHashes.episodeIds=an(JSON.stringify(O.episodeIds)),O.lastHashes.episodeNum=an(JSON.stringify(O.episodeNum)),O.lastHashes.reqRecords=an(JSON.stringify(O.reqRecords)),O.lastHashes.lastSelectMap=an(JSON.stringify(Object.fromEntries(O.lastSelectMap))),O.lastHashes.todayReqNum=an(JSON.stringify(O.todayReqNum)),O.redisCacheInitialized=!0,_("info","[Utils] [Redis] getRedisCaches completed successfully.")}catch(t){_("error",`[Utils] [Redis] getRedisCaches failed: ${t.message}`,t.stack),O.redisCacheInitialized=!0}}async function DL(){try{_("info","[Utils] [Redis] updateCaches start.");let t=[],e=[],r=[{key:"animes",value:O.animes},{key:"episodeIds",value:O.episodeIds},{key:"episodeNum",value:O.episodeNum},{key:"reqRecords",value:O.reqRecords},{key:"lastSelectMap",value:O.lastSelectMap},{key:"todayReqNum",value:O.todayReqNum}];for(let{key:n,value:s}of r){let i=JSON.stringify(n==="lastSelectMap"?Object.fromEntries(s):s),a=an(i);a!==O.lastHashes[n]&&(t.push(["SET",n,i]),e.push({key:n,hash:a}))}if(t.length>0){_("info",`[Utils] [Redis] Updating ${t.length} changed keys: ${e.map(a=>a.key).join(", ")}`);let n=await Qz(t),s=0,i=0;Array.isArray(n)&&n.forEach((a,o)=>{a&&a.result==="OK"?s++:(i++,_("warn",`[Utils] [Redis] Failed to update Redis key: ${e[o]?.key}, result: ${JSON.stringify(a)}`))}),i===0?(e.forEach(({key:a,hash:o})=>{O.lastHashes[a]=o}),_("info",`[Utils] [Redis] Redis update completed successfully: ${s} keys updated`)):_("warn",`[Utils] [Redis] Redis update partially failed: ${s} succeeded, ${i} failed`)}else _("info","[Utils] [Redis] No changes detected, skipping Redis update.")}catch(t){_("error",`[Utils] [Redis] updateRedisCaches failed: ${t.message}`,t.stack),_("error",`[Utils] [Redis] Error details - Name: ${t.name}, Cause: ${t.cause?t.cause.message:"N/A"}`)}}async function Vz(t){if(!O.redisValid&&O.redisUrl&&O.redisToken&&t!=="/favicon.ico"&&t!=="/robots.txt"){let e=await k8e();e&&e.result&&e.result==="PONG"&&(O.redisValid=!0)}}var kL=dr(()=>{Pt();St();Is()});function B8e(){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 zz(){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 Ro(t){let e="";for(let r=0;r{Dir=new Map([["\u5403","\u5403"],["\u6CE8","\u6CE8"]])});function ts(t){let e;if(typeof t=="string")e=t;else if(Array.isArray(t))e=JSON.stringify(t);else if(typeof t=="object")e=JSON.stringify(t);else{_("error","[Utils] [Common] Unsupported data type");return}_("info","[Utils] [Common]",e.slice(0,200))}function W0(t){let e=t.match(/\((\d{4})\)/);return e?parseInt(e[1]):null}function tg(t){if(/^\d+$/.test(t))return Number(t);let e={\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 M8e(t){if(!t||typeof t!="string")return{cleanFileName:"",preferredPlatform:""};let e=t.indexOf("@");if(e===-1)return{cleanFileName:t.trim(),preferredPlatform:""};let r=t.substring(0,e).trim(),n=t.substring(e+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:Kz(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:Kz(n)}}else return{cleanFileName:r,preferredPlatform:Kz(n)}}}function Kz(t){if(!t||typeof t!="string")return"";let e=t.trim();return O.allowedPlatforms.includes(e)?e:""}function W8e(t){if(!t)return[...O.platformOrderArr];if(!O.allowedPlatforms.includes(t))return _("warn",`[Utils] [Common] Invalid platform: ${t}, using default order`),[...O.platformOrderArr];let e=[t];for(let r of O.platformOrderArr)r!==t&&r!==null&&e.push(r);return e.push(null),e}function $8e(t){return t?String(t).replace(/[\u200B-\u200F\uFEFF]/g,"").trim():""}function Fr(t){return t?String(t).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 $0(t,e){if(!t||!e)return!1;let r=Fr(t),n=Fr(e);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 $t(t){if(!t)return null;let e=t.match(/(?:第\s*([0-9一二三四五六七八九十百千万]+)\s*[季期部])|(?:S(?:eason)?\s*(\d+))|(?:Part\s*(\d+))/i);if(e){let r=e[1]||e[2]||e[3];if(r)return tg(r)}return null}function yt(t,e,r=null){if(O.strictTitleMatch)return $0(t,e);let n=Fr(t).toLowerCase(),i=[Fr(e).toLowerCase()];try{i=[...new Set([e,Gt(e),Ro(e)])].map(o=>Fr(o).toLowerCase()).filter(Boolean)}catch{}if(i.some(o=>n.includes(o)))return!0;let a=r!==null?r:$t(e);if(a!==null){let o=$t(t);if(a>1){if((o||1)!==a)return!1}else if(a===1&&o!==null&&o!==1)return!1}return i.some(o=>{if(Math.abs(n.length-o.length)>Math.max(n.length,o.length)*.7||/^[a-zA-Z0-9]+$/.test(o))return!1;let c=0,u=0;for(let l of o){let d=n.indexOf(l,u);d!==-1&&(c++,u=d+1)}return c/o.length>.8})}function et(t,e){let r=t?.constructor?.name;if(e==="array"){if(!Array.isArray(t))throw new TypeError(`${t} \u5FC5\u987B\u662F\u4E00\u4E2A\u6570\u7EC4\uFF0C\u4F46\u4F20\u5165\u7684\u662F ${r}`)}else if(e==="boolean"){if(typeof t!="boolean"&&typeof t!="number")throw new TypeError(`${t} \u5FC5\u987B\u662F boolean \u6216 number\uFF0C\u4F46\u4F20\u5165\u7684\u662F ${r}`)}else if(typeof t!==e)throw new TypeError(`${t} \u5FC5\u987B\u662F ${e}\uFF0C\u4F46\u4F20\u5165\u7684\u662F ${r}`)}function Tt(t){if(!t)return{season:null,baseTitle:null};let e=t.match(/^(.*?)\(\d{4}\)/),r=e?e[1].trim():t.split("(")[0].trim(),n=Fr(r),s=n.match(/第\s*([0-9一二三四五六七八九十壹贰叁肆伍陆柒捌玖拾]+)\s*[季期部]/);if(s)return{season:tg(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:tg(c[1]),baseTitle:n.replace(c[0],"").trim()}:{season:null,baseTitle:n}}function lf(t){if(!t)return null;let e=t.match(/第(\d+)集/);if(e)return parseInt(e[1],10);let r=t.match(/[Ee][Pp]?(\d+)/);if(r)return parseInt(r[1],10);let n=t.match(/(?:^|\s)(\d+)(?:\s|$)/);return n?parseInt(n[1],10):null}function Jz(t,e){let{season:r,baseTitle:n}=Tt(t),s=lf(e);return{baseTitle:n,season:r,episode:s}}var rg,Yz,hn=dr(()=>{Pt();St();no();rg=t=>{let e=t.match(/【(.*?)】/);return e?e[1]:null},Yz=t=>t.split("(")[0].trim()});var F0,LL,BL,ML,WL,Xz,Zz,$L,vt,pb,hs=dr(()=>{hn();F0=class t{constructor({animeId:e=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:p=[],isHiddenChild:m=!1}={}){et(e,"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(p,"array"),et(m,"boolean"),this.links=f.map(h=>LL.fromJson(h)),Object.assign(this,{animeId:e,bangumiId:r,animeTitle:n,type:s,typeDescription:i,imageUrl:a,startDate:o,episodeCount:c,rating:u,isFavorited:l,source:d,mergedChildren:p,isHiddenChild:m})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");let r=(e.links||[]).map(n=>LL.fromJson(n));return new t({...e,links:r})}toJson(){return{...this,links:this.links.map(e=>e.toJson())}}},LL=class t{constructor({name:e="",url:r="",title:n="",id:s=10001}={}){et(e,"string"),et(r,"string"),et(n,"string"),et(s,"number"),Object.assign(this,{name:e,url:r,title:n,id:s})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new t(e)}toJson(){return{...this}}},BL=class t{constructor({episodeId:e=10001,animeId:r=111,animeTitle:n="",episodeTitle:s="",type:i="",typeDescription:a="",shift:o=1,imageUrl:c=""}={}){et(e,"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:e,animeId:r,animeTitle:n,episodeTitle:s,type:i,typeDescription:a,shift:o,imageUrl:c})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new t(e)}toJson(){return{...this}}},ML=class{constructor({episodeId:e="",episodeTitle:r=""}={}){this.episodeId=e,this.episodeTitle=r}};ML.prototype.toJson=function(){return{episodeId:this.episodeId,episodeTitle:this.episodeTitle}};WL=class t{constructor({animeId:e=111,animeTitle:r="",type:n="",typeDescription:s="",episodes:i=[]}={}){et(e,"number"),et(r,"string"),et(n,"string"),et(s,"string"),et(i,"array"),Object.assign(this,{animeId:e,animeTitle:r,type:n,typeDescription:s,episodes:i.map(a=>new ML(a))})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new t(e)}toJson(){return{...this,episodes:this.episodes.map(e=>e.toJson())}}},Xz=class t{constructor({id:e="",airDate:r="",name:n="",episodeCount:s=0}={}){et(e,"string"),et(r,"string"),et(n,"string"),et(s,"number"),Object.assign(this,{id:e,airDate:r,name:n,episodeCount:s})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new t(e)}toJson(){return{...this}}},Zz=class t{constructor({seasonId:e="",episodeId:r=10001,episodeTitle:n="",episodeNumber:s="",airDate:i=""}={}){et(e,"string"),et(r,"number"),et(n,"string"),et(s,"string"),et(i,"string"),Object.assign(this,{seasonId:e,episodeId:r,episodeTitle:n,episodeNumber:s,airDate:i})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new t(e)}toJson(){return{...this}}},$L=class t{constructor({animeId:e=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(e,"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 p=d.map(m=>Xz.fromJson(m));Object.assign(this,{animeId:e,bangumiId:r,animeTitle:n,imageUrl:s,isOnAir:i,airDay:a,isFavorited:o,rating:c,type:u,typeDescription:l,seasons:p,episodes:f})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");let r=e.episodes.map(n=>Zz.fromJson(n));return new t({...e,episodes:r})}toJson(){return{...this,seasons:this.seasons.map(e=>e.toJson()),episodes:this.episodes.map(e=>e.toJson())}}},vt=class t{constructor({type:e="",segmentList:r=[],duration:n=0}={}){et(e,"string"),et(r,"array"),et(n,"number"),this.segmentList=r.map(s=>pb.fromJson(s)),Object.assign(this,{type:e,duration:n})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");let r=(e.segmentList||[]).map(n=>pb.fromJson(n));return new t({...e,segmentList:r})}toJson(){return{...this,segmentList:this.segmentList.map(e=>e.toJson())}}},pb=class t{constructor({type:e,segment_start:r,segment_end:n,url:s,data:i,_m_h5_tk:a,_m_h5_tk_enc:o}={}){et(e,"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:e,segment_start:r,segment_end:n,url:s,data:i,_m_h5_tk:a,_m_h5_tk_enc:o})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new t(e)}toJson(){return{...this}}}});var V8e={};is(V8e,{addAnime:()=>Lt,addEpisode:()=>Q8e,cleanupExpiredIPs:()=>jL,findAnimeIdByCommentId:()=>qL,findAnimeTitleById:()=>nK,findIndexById:()=>UL,findTitleById:()=>rK,findUrlById:()=>BC,getCommentCache:()=>df,getDirname:()=>HL,getLastSearch:()=>tK,getLocalCaches:()=>oK,getPreferAnimeId:()=>aK,getSearchCache:()=>DC,isCommentCacheValid:()=>H8e,isSearchCacheValid:()=>j8e,judgeLocalCacheValid:()=>cK,readCacheFromFile:()=>ng,removeEarliestAnime:()=>Ft,removeEpisodeByUrl:()=>G8e,resolveAnimeById:()=>sg,resolveAnimeByIdFromDetailStore:()=>ig,resolveEpisodeContextById:()=>hb,setCommentCache:()=>LC,setLastSearch:()=>eK,setPreferByAnimeId:()=>iK,setSearchCache:()=>kC,storeAnimeIdsToMap:()=>sK,updateLocalCaches:()=>GL,writeCacheToFile:()=>QL});function eK(t,e){if(RC.set(t,{...e,timestamp:Date.now()}),RC.size>200)for(let[r,n]of RC)Date.now()-n.timestamp>3600*1e3&&RC.delete(r)}function tK(t){return RC.get(t)}function mb(t){if(!t||typeof t!="object")return"";let e=t.source?String(t.source)+":":"";return t.bangumiId!==void 0&&t.bangumiId!==null&&String(t.bangumiId)!==""?"bangumi:"+e+String(t.bangumiId):t.animeId!==void 0&&t.animeId!==null&&String(t.animeId)!==""?"anime:"+e+String(t.animeId):""}function F8e(t,e){if(!(t instanceof Map)||!e)return;let r=mb(e);r&&t.set(r,e)}function*PC(t){if(!(t instanceof Map))return;let e=new Set;for(let r of t.values()){let n=mb(r);n&&e.has(n)||(n&&e.add(n),yield r)}}function kir(t){let e=[];for(let r of PC(t))e.push(r);return e}function Lir(){let t=Date.now(),e=[];for(let[r,n]of O.searchCache.entries()){let s=(t-n.timestamp)/6e4;if(s>O.searchCacheMinutes){O.searchCache.delete(r),_("info",`[Cache] Search cache for "${r}" expired after ${s.toFixed(2)} minutes`);continue}e.push(n)}return e.sort((r,n)=>(n.timestamp||0)-(r.timestamp||0)),e}function U8e(t,e,r){let n=Date.now(),s=0;for(let[i,a]of t.entries())(n-a.timestamp)/6e4>e&&(t.delete(i),s++);s>0&&_("info",`[Cache] ${r} TTL \u626B\u63CF\u5B8C\u6BD5\uFF0C\u5DF2\u79FB\u9664 ${s} \u4E2A\u8FC7\u671F\u6761\u76EE\uFF0C\u5269\u4F59 ${t.size} \u4E2A`)}function Bir(t,e){return String(t?.animeId)===e||String(t?.bangumiId)===e}function FL(t,e,r=null){let n=null;for(let s of t)if(Bir(s,e)){if(r&&s?.source===r)return s;n||(n=s)}return n}function*q8e(){let t=new Set;for(let e of Lir())if(Array.isArray(e.details))for(let r of e.details){let n=mb(r);n&&t.has(n)||(n&&t.add(n),yield r)}}function sg(t,e=null,r=null){let n=String(t),s=FL(O.animes,n,r);return s||(s=FL(PC(e),n,r),s)?s:FL(q8e(),n,r)}function ig(t,e=null,r=null){let n=String(t);return FL(PC(e),n,r)}function hb(t,e=null){let r=Number(t);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 O.animes){let a=n(i);if(a)return a}for(let i of PC(e)){let a=n(i);if(a)return a}let s=new Set;for(let i of O.animes){let a=mb(i);a&&s.add(a)}for(let i of PC(e)){let a=mb(i);a&&s.add(a)}for(let i of q8e()){let a=mb(i);if(a&&s.has(a))continue;a&&s.add(a);let o=n(i);if(o)return o}return null}function j8e(t){if(!O.searchCache.has(t))return!1;let e=O.searchCache.get(t),n=(Date.now()-e.timestamp)/(1e3*60);return n>O.searchCacheMinutes?(O.searchCache.delete(t),_("info",`[Cache] Search cache for "${t}" expired after ${n.toFixed(2)} minutes`),!1):!0}function DC(t,e=null){if(j8e(t)){_("info",`[Cache] Using search cache for "${t}"`);let r=O.searchCache.get(t);return e instanceof Map&&Array.isArray(r.details)&&r.details.forEach(n=>{F8e(e,n)}),r.results}return null}function kC(t,e,r=null){let n=kir(r);if(U8e(O.searchCache,O.searchCacheMinutes,"searchCache"),O.searchCache.set(t,{results:e,details:n,timestamp:Date.now()}),O.searchCache.size>500){let s=O.searchCache.keys().next().value;O.searchCache.delete(s),_("info",`[Cache] searchCache TTL\u6E05\u7406\u540E\u4ECD\u8FBE\u4E0A\u9650\uFF0C\u5DF2\u79FB\u9664\u6700\u65E9\u6761\u76EE: ${s}`)}_("info",`[Cache] Cached search results for "${t}" (${e.length} animes)`)}function H8e(t){if(!O.commentCache.has(t))return!1;let e=O.commentCache.get(t),n=(Date.now()-e.timestamp)/(1e3*60);return n>O.commentCacheMinutes?(O.commentCache.delete(t),_("info",`[Cache] Comment cache for "${t}" expired after ${n.toFixed(2)} minutes`),!1):!0}function df(t){return H8e(t)?(_("info",`[Cache] Using comment cache for "${t}"`),O.commentCache.get(t).comments):null}function LC(t,e){if(U8e(O.commentCache,O.commentCacheMinutes,"commentCache"),O.commentCache.set(t,{comments:e,timestamp:Date.now()}),O.commentCache.size>500){let r=O.commentCache.keys().next().value;O.commentCache.delete(r),_("info",`[Cache] commentCache TTL\u6E05\u7406\u540E\u4ECD\u8FBE\u4E0A\u9650\uFF0C\u5DF2\u79FB\u9664\u6700\u65E9\u6761\u76EE: ${r}`)}_("info",`[Cache] Cached comments for "${t}" (${e.length} comments)`)}function Q8e(t,e){let r=O.episodeIds.find(s=>s.url===t&&s.title===e);if(r)return _("info",`[Cache] Episode with URL ${t} and title ${e} already exists in episodeIds, returning existing episode.`),r;O.episodeNum++;let n={id:O.episodeNum,url:t,title:e};return O.episodeIds.push(n),_("info",`[Cache] Added to episodeIds: ${JSON.stringify(n)}`),n}function G8e(t){let e=O.episodeIds.length;O.episodeIds=O.episodeIds.filter(n=>n.url!==t);let r=e-O.episodeIds.length;return r>0?(_("info",`[Cache] Removed ${r} episode(s) from episodeIds with URL: ${t}`),!0):(_("error",`[Cache] No episode found in episodeIds with URL: ${t}`),!1)}function BC(t){let e=O.episodeIds.find(n=>n.id===t);if(e)return _("info",`[Cache] Found URL for ID ${t}: ${e.url}`),e.url;let r=hb(t);return r?.link?.url?(_("info",`[Cache] Found URL for ID ${t} via cached anime details: ${r.link.url}`),r.link.url):(_("error",`[Cache] No URL found for ID: ${t}`),null)}function UL(t){let e=O.episodeIds.findIndex(n=>n.id===t);if(e!==-1)return _("info",`[Cache] Found index for ID ${t}: ${e}`),e;let r=hb(t);return r?(_("info",`[Cache] Found index for ID ${t} via cached anime details: ${r.index}`),r.index):(_("error",`[Cache] No index found for ID: ${t}`),-1)}function rK(t){let e=O.episodeIds.find(n=>n.id===t);if(e)return _("info",`[Cache] Found TITLE for ID ${t}: ${e.title}`),e.title;let r=hb(t);return r?.link?.title?(_("info",`[Cache] Found TITLE for ID ${t} via cached anime details: ${r.link.title}`),r.link.title):(_("error",`[Cache] No TITLE found for ID: ${t}`),null)}function nK(t){let e=hb(t);return e?.anime?.animeTitle?(_("info",`[Cache] Found animeTitle for ID ${t}: ${e.anime.animeTitle}`),e.anime.animeTitle):(_("error",`[Cache] No animeTitle found for ID: ${t}`),null)}function Lt(t,e=null){t=F0.fromJson(t);try{if(!t.links||!Array.isArray(t.links))return _("error",`[Cache] Invalid or missing links in anime: ${JSON.stringify(t)}`),!1;let r=[];t.links.forEach(i=>{if(i.url){let a=Q8e(i.url,i.title);a&&r.push(a)}else _("error",`[Cache] Invalid link in anime, missing url: ${JSON.stringify(i)}`)});let n=F0.fromJson({...t,links:r});F8e(e,n);let s=O.animes.findIndex(i=>i.animeId===t.animeId);return s!==-1&&(O.animes.splice(s,1),_("info",`[Cache] Removed old anime at index: ${s}`)),O.animes.push(n),_("info",`[Cache] Added anime to latest position: ${t.animeId}`),O.animes.length>O.MAX_ANIMES&&(Ft()||_("error","[Cache] Failed to remove earliest anime, but continuing")),_("info",`[Cache] animes: ${JSON.stringify(O.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 _("error",`[Cache] addAnime failed: ${r.message}`),!1}}function Ft(){if(O.animes.length===0)return _("error","[Cache] No animes to remove."),!1;let t=O.animes.shift();return _("info",`[Cache] Removed earliest anime: ${JSON.stringify(t)}`),t.links&&Array.isArray(t.links)&&t.links.forEach(e=>{e.url&&G8e(e.url)}),!0}function sK(t,e){let r=new Set,n=O.lastSelectMap.get(e);if(n&&Array.isArray(n.animeIds))for(let d of n.animeIds)r.add(d);for(let d of t)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),O.lastSelectMap.has(e)&&O.lastSelectMap.delete(e),O.lastSelectMap.set(e,{animeIds:[...r],...Object.keys(u).length>0&&{preferBySeason:u},...Object.keys(l).length>0&&{sourceBySeason:l},...c!==void 0&&{offsets:c}}),O.lastSelectMap.size>O.MAX_LAST_SELECT_MAP){let d=O.lastSelectMap.keys().next().value;O.lastSelectMap.delete(d),_("info",`[Cache] Removed earliest entry from lastSelectMap: ${d}`)}}function qL(t){let e=hb(t);return e?[e.anime.animeId,e.anime.source,e.link.title,e.anime.aliases||[]]:[null,null,null,[]]}function iK(t,e,r=null,n=null){for(let[s,i]of O.lastSelectMap.entries())if(i.animeIds&&i.animeIds.includes(t)){let a=r===null?"default":String(r);return i.preferBySeason=i.preferBySeason||{},i.sourceBySeason=i.sourceBySeason||{},i.preferBySeason[a]=t,i.sourceBySeason[a]=e,r!==null&&n!==null&&(i.offsets=i.offsets||{},i.offsets[a]=n),O.lastSelectMap.set(s,i),s}return null}function aK(t,e=null){let r=O.lastSelectMap.get(t);if(!r)return[null,null,null];let n=e===null?"default":String(e),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 jL(t){let r=0;for(let[n,s]of O.requestHistory.entries()){let i=s.filter(a=>t-a<=6e4);i.length===0?(O.requestHistory.delete(n),r++,_("info",`[Utils] [Rate Limit] Cleaned up expired IP record: ${n}`)):i.length0&&_("info",`[Utils] [Rate Limit] Cleanup completed: removed ${r} expired IP records`)}function HL(){return typeof __dirname<"u"?__dirname:OC.join(process.cwd(),"danmu_api","utils")}function ng(t){let e=OC.join(HL(),"..","..",".cache",`${t}`);if(NC.existsSync(e)){let r=NC.readFileSync(e,"utf8");return JSON.parse(r)}return null}function QL(t,e){let r=OC.join(HL(),"..","..",".cache",`${t}`);NC.writeFileSync(r,JSON.stringify(e),"utf8")}async function oK(){if(!O.localCacheInitialized)try{_("info","[Cache] getLocalCaches start."),O.animes=JSON.parse(ng("animes"))||O.animes,O.episodeIds=JSON.parse(ng("episodeIds"))||O.episodeIds,O.episodeNum=JSON.parse(ng("episodeNum"))||O.episodeNum,O.reqRecords=JSON.parse(ng("reqRecords"))||O.reqRecords,O.todayReqNum=JSON.parse(ng("todayReqNum"))||O.todayReqNum;let t=ng("lastSelectMap");t&&(O.lastSelectMap=new Map(Object.entries(JSON.parse(t))),_("info",`[Cache] Restored lastSelectMap from local cache with ${O.lastSelectMap.size} entries`)),O.lastHashes.animes=an(JSON.stringify(O.animes)),O.lastHashes.episodeIds=an(JSON.stringify(O.episodeIds)),O.lastHashes.episodeNum=an(JSON.stringify(O.episodeNum)),O.lastHashes.reqRecords=an(JSON.stringify(O.reqRecords)),O.lastHashes.todayReqNum=an(JSON.stringify(O.todayReqNum)),O.lastHashes.lastSelectMap=an(JSON.stringify(Object.fromEntries(O.lastSelectMap))),O.localCacheInitialized=!0,_("info","[Cache] getLocalCaches completed successfully.")}catch(t){_("error",`[Cache] getLocalCaches failed: ${t.message}`,t.stack),O.localCacheInitialized=!0}}async function GL(){try{_("info","[Cache] updateLocalCaches start.");let t=[],e=[{key:"animes",value:O.animes},{key:"episodeIds",value:O.episodeIds},{key:"episodeNum",value:O.episodeNum},{key:"reqRecords",value:O.reqRecords},{key:"lastSelectMap",value:O.lastSelectMap},{key:"todayReqNum",value:O.todayReqNum}];for(let{key:r,value:n}of e){let s=JSON.stringify(r==="lastSelectMap"?Object.fromEntries(n):n),i=an(s);i!==O.lastHashes[r]&&(QL(r,s),t.push({key:r,hash:i}))}t.length>0?(_("info",`[Cache] Updated local caches for keys: ${t.map(r=>r.key).join(", ")}`),t.forEach(({key:r,hash:n})=>{O.lastHashes[r]=n})):_("info","[Cache] No changes detected, skipping local cache update.")}catch(t){_("error",`[Cache] updateLocalCaches failed: ${t.message}`,t.stack),_("error",`[Cache] Error details - Name: ${t.name}, Cause: ${t.cause?t.cause.message:"N/A"}`)}}async function cK(t,e){if(e==="node")try{if(NC=await import("fs"),OC=await import("path"),!O.localCacheValid&&t!=="/favicon.ico"&&t!=="/robots.txt"){let r=OC.join(HL(),"..","..",".cache");NC.existsSync(r)?O.localCacheValid=!0:O.localCacheValid=!1}}catch(r){_("warn","[Cache] Node.js modules not available:",r.message),O.localCacheValid=!1}}var NC,OC,RC,$n=dr(()=>{Pt();St();hs();Is();RC=new Map});var pK=E(XL=>{"use strict";Object.defineProperty(XL,"__esModule",{value:!0});XL.VerbatimString=void 0;var fK=class extends String{format;constructor(e,r){super(r),this.format=e}};XL.VerbatimString=fK});var Pl=E(hr=>{"use strict";Object.defineProperty(hr,"__esModule",{value:!0});hr.MultiErrorReply=hr.CommandTimeoutDuringMaintenanceError=hr.SocketTimeoutDuringMaintenanceError=hr.TimeoutError=hr.BlobError=hr.SimpleError=hr.ErrorReply=hr.ReconnectStrategyError=hr.RootNodesUnavailableError=hr.SocketClosedUnexpectedlyError=hr.DisconnectsClientError=hr.ClientOfflineError=hr.ClientClosedError=hr.SocketTimeoutError=hr.ConnectionTimeoutError=hr.WatchError=hr.AbortError=void 0;var mK=class extends Error{constructor(){super("The command was aborted")}};hr.AbortError=mK;var hK=class extends Error{constructor(e="One (or more) of the watched keys has been changed"){super(e)}};hr.WatchError=hK;var gK=class extends Error{constructor(){super("Connection timeout")}};hr.ConnectionTimeoutError=gK;var AK=class extends Error{constructor(e){super(`Socket timeout timeout. Expecting data, but didn't receive any in ${e}ms.`)}};hr.SocketTimeoutError=AK;var yK=class extends Error{constructor(){super("The client is closed")}};hr.ClientClosedError=yK;var xK=class extends Error{constructor(){super("The client is offline")}};hr.ClientOfflineError=xK;var bK=class extends Error{constructor(){super("Disconnects client")}};hr.DisconnectsClientError=bK;var EK=class extends Error{constructor(){super("Socket closed unexpectedly")}};hr.SocketClosedUnexpectedlyError=EK;var _K=class extends Error{constructor(){super("All the root nodes are unavailable")}};hr.RootNodesUnavailableError=_K;var SK=class extends Error{originalError;socketError;constructor(e,r){super(e.message),this.originalError=e,this.socketError=r}};hr.ReconnectStrategyError=SK;var yb=class extends Error{};hr.ErrorReply=yb;var vK=class extends yb{};hr.SimpleError=vK;var CK=class extends yb{};hr.BlobError=CK;var $C=class extends Error{};hr.TimeoutError=$C;var IK=class extends $C{constructor(e){super(`Socket timeout during maintenance. Expecting data, but didn't receive any in ${e}ms.`)}};hr.SocketTimeoutDuringMaintenanceError=IK;var TK=class extends $C{constructor(e){super(`Command timeout during maintenance. Waited to write command for more than ${e}ms.`)}};hr.CommandTimeoutDuringMaintenanceError=TK;var wK=class extends yb{replies;errorIndexes;constructor(e,r){super(`${r.length} commands failed, see .replies and .errorIndexes for more information`),this.replies=e,this.errorIndexes=r}*errors(){for(let e of this.errorIndexes)yield this.replies[e]}};hr.MultiErrorReply=wK});var tB=E(pt=>{"use strict";var RK;Object.defineProperty(pt,"__esModule",{value:!0});pt.Decoder=pt.PUSH_TYPE_MAPPING=pt.RESP_TYPES=void 0;var sWe=pK(),ZL=Pl();pt.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 Jr={"\r":13,t:116,"+":43,"-":45,0:48,".":46,i:105,n:110,E:69,e:101};pt.PUSH_TYPE_MAPPING={[pt.RESP_TYPES.BLOB_STRING]:Buffer};var eB=class{onReply;onErrorReply;onPush;getTypeMapping;#e=0;#t;constructor(e){this.onReply=e.onReply,this.onErrorReply=e.onErrorReply,this.onPush=e.onPush,this.getTypeMapping=e.getTypeMapping}reset(){this.#e=0,this.#t=void 0}write(e){if(this.#e>=e.length){this.#e-=e.length;return}if(this.#t&&(this.#t(e)||this.#e>=e.length)){this.#e-=e.length;return}do{let r=e[this.#e];if(++this.#e===e.length){this.#t=this.#r.bind(this,r);break}if(this.#n(r,e))break}while(this.#e=r.length?this.#R.bind(this,n,e):this.#R(n,e,r)}#I(e,r,n){let s=e(n);return typeof s=="function"?this.#I.bind(this,s,r):this.#e>=n.length?this.#R.bind(this,s,r):this.#R(s,r,n)}#N(e,r,n,s){let i=this.#e+e;if(i>=s.length){let o=s.subarray(this.#e);return this.#e=s.length,this.#M.bind(this,e-o.length,[o],r,n)}let a=s.subarray(this.#e,i);return this.#e=i+r,n===Buffer?a:a.toString()}#M(e,r,n,s,i){let a=this.#e+e;if(a>=i.length){let c=i.subarray(this.#e);return r.push(c),this.#e=i.length,this.#M.bind(this,e-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()}#R(e,r,n){return this.#N(e,2,r,n)}#O(e,r){return this.#D(this.#p.bind(this,0),e,r)}#D(e,r,n){let s=e(n);return typeof s=="function"?this.#D.bind(this,s,r):this.#ce(s,r,n)}#ce(e,r,n){let s=e-4;return r===sWe.VerbatimString?this.#ue(s,n):(this.#e+=4,this.#e>=n.length?this.#R.bind(this,s,r):this.#R(s,r,n))}#ue(e,r){let n=this.#N.bind(this,3,1,String);return this.#e>=r.length?this.#F.bind(this,e,n):this.#F(e,n,r)}#F(e,r,n){let s=r(n);return typeof s=="function"?this.#F.bind(this,e,s):this.#le(e,s,n)}#le(e,r,n){return this.#H(r,this.#R.bind(this,e,String),n)}#H(e,r,n){let s=r(n);return typeof s=="function"?this.#H.bind(this,e,s):new sWe.VerbatimString(e,s)}#Q(e){let r=this.#x(String,e);return typeof r=="function"?this.#G.bind(this,r):new ZL.SimpleError(r)}#G(e,r){let n=e(r);return typeof n=="function"?this.#G.bind(this,n):new ZL.SimpleError(n)}#V(e){let r=this.#T(String,e);return typeof r=="function"?this.#z.bind(this,r):new ZL.BlobError(r)}#z(e,r){let n=e(r);return typeof n=="function"?this.#z.bind(this,n):new ZL.BlobError(n)}#w(e,r){let n=r[this.#e];return++this.#e===r.length?this.#U.bind(this,n,e):this.#U(n,e,r)}#U(e,r,n){switch(e){case pt.RESP_TYPES.NULL:return this.#s();case pt.RESP_TYPES.BOOLEAN:return this.#i(n);case pt.RESP_TYPES.NUMBER:return this.#c(r[pt.RESP_TYPES.NUMBER],n);case pt.RESP_TYPES.BIG_NUMBER:return this.#d(r[pt.RESP_TYPES.BIG_NUMBER],n);case pt.RESP_TYPES.DOUBLE:return this.#g(r[pt.RESP_TYPES.DOUBLE],n);case pt.RESP_TYPES.SIMPLE_STRING:return this.#x(r[pt.RESP_TYPES.SIMPLE_STRING],n);case pt.RESP_TYPES.BLOB_STRING:return this.#T(r[pt.RESP_TYPES.BLOB_STRING],n);case pt.RESP_TYPES.VERBATIM_STRING:return this.#O(r[pt.RESP_TYPES.VERBATIM_STRING],n);case pt.RESP_TYPES.SIMPLE_ERROR:return this.#Q(n);case pt.RESP_TYPES.BLOB_ERROR:return this.#V(n);case pt.RESP_TYPES.ARRAY:return this.#q(r,n);case pt.RESP_TYPES.SET:return this.#J(r,n);case pt.RESP_TYPES.MAP:return this.#te(r,n);default:throw new Error(`Unknown RESP type ${e} "${String.fromCharCode(e)}"`)}}#q(e,r){return r[this.#e]===Jr["-"]?(this.#e+=4,null):this.#K(this.#p(0,r),e,r)}#K(e,r,n){return typeof e=="function"?this.#de.bind(this,e,r):this.#k(new Array(e),0,r,n)}#de(e,r,n){return this.#K(e(n),r,n)}#k(e,r,n,s){for(let i=r;i=s.length)return this.#k.bind(this,e,i,n);let a=this.#w(n,s);if(typeof a=="function")return this.#Y.bind(this,e,i,a,n);e[i]=a}return e}#Y(e,r,n,s,i){let a=n(i);return typeof a=="function"?this.#Y.bind(this,e,r,a,s):(e[r++]=a,this.#k(e,r,s,i))}#J(e,r){let n=this.#p(0,r);return typeof n=="function"?this.#X.bind(this,n,e):this.#Z(n,e,r)}#X(e,r,n){let s=e(n);return typeof s=="function"?this.#X.bind(this,s,r):this.#Z(s,r,n)}#Z(e,r,n){return r[pt.RESP_TYPES.SET]===Set?this.#j(new Set,e,r,n):this.#k(new Array(e),0,r,n)}#j(e,r,n,s){for(;r>0;){if(this.#e>=s.length)return this.#j.bind(this,e,r,n);let i=this.#w(n,s);if(typeof i=="function")return this.#ee.bind(this,e,r,i,n);e.add(i),--r}return e}#ee(e,r,n,s,i){let a=n(i);return typeof a=="function"?this.#ee.bind(this,e,r,a,s):(e.add(a),this.#j(e,r-1,s,i))}#te(e,r){let n=this.#p(0,r);return typeof n=="function"?this.#re.bind(this,n,e):this.#ne(n,e,r)}#re(e,r,n){let s=e(n);return typeof s=="function"?this.#re.bind(this,s,r):this.#ne(s,r,n)}#ne(e,r,n){switch(r[pt.RESP_TYPES.MAP]){case Map:return this.#W(new Map,e,r,n);case Array:return this.#k(new Array(e*2),0,r,n);default:return this.#$(Object.create(null),e,r,n)}}#W(e,r,n,s){for(;r>0;){if(this.#e>=s.length)return this.#W.bind(this,e,r,n);let i=this.#se(n,s);if(typeof i=="function")return this.#ae.bind(this,e,r,i,n);if(this.#e>=s.length)return this.#L.bind(this,e,r,i,this.#w.bind(this,n),n);let a=this.#w(n,s);if(typeof a=="function")return this.#L.bind(this,e,r,i,a,n);e.set(i,a),--r}return e}#se(e,r){let n=r[this.#e];return++this.#e===r.length?this.#ie.bind(this,n,e):this.#ie(n,e,r)}#ie(e,r,n){switch(e){case pt.RESP_TYPES.SIMPLE_STRING:return this.#x(String,n);case pt.RESP_TYPES.BLOB_STRING:return this.#T(String,n);default:return this.#U(e,r,n)}}#ae(e,r,n,s,i){let a=n(i);if(typeof a=="function")return this.#ae.bind(this,e,r,a,s);if(this.#e>=i.length)return this.#L.bind(this,e,r,a,this.#w.bind(this,s),s);let o=this.#w(s,i);return typeof o=="function"?this.#L.bind(this,e,r,a,o,s):(e.set(a,o),this.#W(e,r-1,s,i))}#L(e,r,n,s,i,a){let o=s(a);return typeof o=="function"?this.#L.bind(this,e,r,n,o,i):(e.set(n,o),this.#W(e,r-1,i,a))}#$(e,r,n,s){for(;r>0;){if(this.#e>=s.length)return this.#$.bind(this,e,r,n);let i=this.#se(n,s);if(typeof i=="function")return this.#oe.bind(this,e,r,i,n);if(this.#e>=s.length)return this.#B.bind(this,e,r,i,this.#w.bind(this,n),n);let a=this.#w(n,s);if(typeof a=="function")return this.#B.bind(this,e,r,i,a,n);e[i]=a,--r}return e}#oe(e,r,n,s,i){let a=n(i);if(typeof a=="function")return this.#oe.bind(this,e,r,a,s);if(this.#e>=i.length)return this.#B.bind(this,e,r,a,this.#w.bind(this,s),s);let o=this.#w(s,i);return typeof o=="function"?this.#B.bind(this,e,r,a,o,s):(e[a]=o,this.#$(e,r-1,s,i))}#B(e,r,n,s,i,a){let o=s(a);return typeof o=="function"?this.#B.bind(this,e,r,n,o,i):(e[n]=o,this.#$(e,r-1,i,a))}};pt.Decoder=eB;RK=eB});var aWe=E(xb=>{"use strict";Object.defineProperty(xb,"__esModule",{value:!0});xb.scriptSha1=xb.defineScript=void 0;var tar=require("node:crypto");function rar(t){return{...t,SHA1:iWe(t.SCRIPT)}}xb.defineScript=rar;function iWe(t){return(0,tar.createHash)("sha1").update(t).digest("hex")}xb.scriptSha1=iWe});var oWe=E(rB=>{"use strict";Object.defineProperty(rB,"__esModule",{value:!0});rB.digest=void 0;var NK=null;async function nar(){if(!NK)try{NK=(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 NK}async function sar(t){let e=await nar(),r=typeof t=="string"?t:new Uint8Array(t);return e.xxh64(r).toString(16).padStart(16,"0")}rB.digest=sar});var cWe=E(OK=>{"use strict";Object.defineProperty(OK,"__esModule",{value:!0});OK.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("ACL","CAT"),e&&t.push(e)},transformReply:void 0}});var uWe=E(PK=>{"use strict";Object.defineProperty(PK,"__esModule",{value:!0});PK.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("ACL","DELUSER"),t.pushVariadic(e)},transformReply:void 0}});var lWe=E(DK=>{"use strict";Object.defineProperty(DK,"__esModule",{value:!0});DK.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ACL","DRYRUN",e,...r)},transformReply:void 0}});var dWe=E(kK=>{"use strict";Object.defineProperty(kK,"__esModule",{value:!0});kK.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("ACL","GENPASS"),e&&t.push(e.toString())},transformReply:void 0}});var fWe=E(LK=>{"use strict";Object.defineProperty(LK,"__esModule",{value:!0});LK.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("ACL","GETUSER",e)},transformReply:{2:t=>({flags:t[1],passwords:t[3],commands:t[5],keys:t[7],channels:t[9],selectors:t[11]?.map(e=>{let r=e;return{commands:r[1],keys:r[3],channels:r[5]}})}),3:void 0}}});var pWe=E(BK=>{"use strict";Object.defineProperty(BK,"__esModule",{value:!0});BK.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("ACL","LIST")},transformReply:void 0}});var mWe=E(MK=>{"use strict";Object.defineProperty(MK,"__esModule",{value:!0});MK.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("ACL","LOAD")},transformReply:void 0}});var Dl=E(nB=>{"use strict";Object.defineProperty(nB,"__esModule",{value:!0});nB.BasicCommandParser=void 0;var WK=class{#e=[];#t=[];preserve;get redisArgs(){return this.#e}get keys(){return this.#t}get firstKey(){return this.#t[0]}get cacheKey(){let e=new Array(this.#e.length*2);for(let r=0;r{"use strict";Object.defineProperty(Le,"__esModule",{value:!0});Le.transformRedisJsonNullReply=Le.transformRedisJsonReply=Le.transformRedisJsonArgument=Le.transformStreamsMessagesReplyResp3=Le.transformStreamsMessagesReplyResp2=Le.transformStreamMessagesReply=Le.transformStreamMessageNullReply=Le.transformStreamMessageReply=Le.parseArgs=Le.parseZKeysArguments=Le.transformRangeReply=Le.parseSlotRangesArguments=Le.transformFunctionListItemReply=Le.RedisFunctionFlags=Le.transformCommandReply=Le.CommandCategories=Le.CommandFlags=Le.parseOptionalVariadicArgument=Le.pushVariadicArgument=Le.pushVariadicNumberArguments=Le.pushVariadicArguments=Le.pushEvalArguments=Le.evalFirstKeyIndex=Le.transformPXAT=Le.transformEXAT=Le.transformSortedSetReply=Le.transformTuplesReply=Le.createTransformTuplesReplyFunc=Le.transformTuplesToMap=Le.transformNullableDoubleReply=Le.createTransformNullableDoubleReplyResp2Func=Le.transformDoubleArrayReply=Le.createTransformDoubleReplyResp2Func=Le.transformDoubleReply=Le.transformStringDoubleArgument=Le.transformDoubleArgument=Le.transformBooleanArrayReply=Le.transformBooleanReply=Le.isArrayReply=Le.isNullReply=void 0;var iar=Dl(),$K=tB();function FK(t){return t===null}Le.isNullReply=FK;function aar(t){return Array.isArray(t)}Le.isArrayReply=aar;Le.transformBooleanReply={2:t=>t===1,3:void 0};Le.transformBooleanArrayReply={2:t=>t.map(Le.transformBooleanReply[2]),3:void 0};function sB(t){switch(t){case 1/0:return"+inf";case-1/0:return"-inf";default:return t.toString()}}Le.transformDoubleArgument=sB;function oar(t){return typeof t!="number"?t:sB(t)}Le.transformStringDoubleArgument=oar;Le.transformDoubleReply={2:(t,e,r)=>{switch(r?r[$K.RESP_TYPES.DOUBLE]:void 0){case String:return t;default:{let s;switch(t.toString()){case"inf":case"+inf":s=1/0;case"-inf":s=-1/0;case"nan":s=NaN;default:s=Number(t)}return s}}},3:void 0};function xWe(t,e){return r=>Le.transformDoubleReply[2](r,t,e)}Le.createTransformDoubleReplyResp2Func=xWe;Le.transformDoubleArrayReply={2:(t,e,r)=>t.map(xWe(e,r)),3:void 0};function car(t,e){return r=>Le.transformNullableDoubleReply[2](r,t,e)}Le.createTransformNullableDoubleReplyResp2Func=car;Le.transformNullableDoubleReply={2:(t,e,r)=>t===null?null:Le.transformDoubleReply[2](t,e,r),3:void 0};function uar(t,e){let r=Object.create(null);for(let n=0;nUK(r,t,e)}Le.createTransformTuplesReplyFunc=lar;function UK(t,e,r){let n=r?r[$K.RESP_TYPES.MAP]:void 0,s=t;switch(n){case Array:return t;case Map:{let i=new Map;for(let a=0;a{let n=t,s=[];for(let i=0;it.map(e=>{let[r,n]=e;return{value:r,score:n}})};function dar(t){return(typeof t=="number"?t:Math.floor(t.getTime()/1e3)).toString()}Le.transformEXAT=dar;function far(t){return(typeof t=="number"?t:t.getTime()).toString()}Le.transformPXAT=far;function par(t){return t?.keys?.[0]}Le.evalFirstKeyIndex=par;function mar(t,e){return e?.keys?t.push(e.keys.length.toString(),...e.keys):t.push("0"),e?.arguments&&t.push(...e.arguments),t}Le.pushEvalArguments=mar;function har(t,e){return Array.isArray(e)?t=t.concat(e):t.push(e),t}Le.pushVariadicArguments=har;function gar(t,e){if(Array.isArray(e))for(let r of e)t.push(r.toString());else t.push(e.toString());return t}Le.pushVariadicNumberArguments=gar;function Aar(t,e){return Array.isArray(e)?t.push(e.length.toString(),...e):t.push("1",e),t}Le.pushVariadicArgument=Aar;function yar(t,e,r){r!==void 0&&(t.push(e),t.pushVariadicWithLength(r))}Le.parseOptionalVariadicArgument=yar;var hWe;(function(t){t.WRITE="write",t.READONLY="readonly",t.DENYOOM="denyoom",t.ADMIN="admin",t.PUBSUB="pubsub",t.NOSCRIPT="noscript",t.RANDOM="random",t.SORT_FOR_SCRIPT="sort_for_script",t.LOADING="loading",t.STALE="stale",t.SKIP_MONITOR="skip_monitor",t.ASKING="asking",t.FAST="fast",t.MOVABLEKEYS="movablekeys"})(hWe||(Le.CommandFlags=hWe={}));var gWe;(function(t){t.KEYSPACE="@keyspace",t.READ="@read",t.WRITE="@write",t.SET="@set",t.SORTEDSET="@sortedset",t.LIST="@list",t.HASH="@hash",t.STRING="@string",t.BITMAP="@bitmap",t.HYPERLOGLOG="@hyperloglog",t.GEO="@geo",t.STREAM="@stream",t.PUBSUB="@pubsub",t.ADMIN="@admin",t.FAST="@fast",t.SLOW="@slow",t.BLOCKING="@blocking",t.DANGEROUS="@dangerous",t.CONNECTION="@connection",t.TRANSACTION="@transaction",t.SCRIPTING="@scripting"})(gWe||(Le.CommandCategories=gWe={}));function xar([t,e,r,n,s,i,a]){return{name:t,arity:e,flags:new Set(r),firstKeyIndex:n,lastKeyIndex:s,step:i,categories:new Set(a)}}Le.transformCommandReply=xar;var AWe;(function(t){t.NO_WRITES="no-writes",t.ALLOW_OOM="allow-oom",t.ALLOW_STALE="allow-stale",t.NO_CLUSTER="no-cluster"})(AWe||(Le.RedisFunctionFlags=AWe={}));function bar(t){return{libraryName:t[1],engine:t[3],functions:t[5].map(e=>({name:e[1],description:e[3],flags:e[5]}))}}Le.transformFunctionListItemReply=bar;function yWe(t,e){t.push(e.start.toString(),e.end.toString())}function Ear(t,e){if(Array.isArray(e))for(let r of e)yWe(t,r);else yWe(t,e)}Le.parseSlotRangesArguments=Ear;function _ar([t,e]){return{start:t,end:e}}Le.transformRangeReply=_ar;function Sar(t,e){if(Array.isArray(e)){if(t.push(e.length.toString()),e.length)if(Car(e))t.pushKeys(e);else{for(let r=0;r{"use strict";Object.defineProperty(jK,"__esModule",{value:!0});var Par=Ie();jK.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("ACL","LOG"),e!=null&&t.push(e.toString())},transformReply:{2:(t,e,r)=>t.map(n=>{let s=n;return{count:s[1],reason:s[3],context:s[5],object:s[7],username:s[9],"age-seconds":Par.transformDoubleReply[2](s[11],e,r),"client-info":s[13],"entry-id":s[15],"timestamp-created":s[17],"timestamp-last-updated":s[19]}}),3:void 0}}});var _We=E(UC=>{"use strict";var Dar=UC&&UC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(UC,"__esModule",{value:!0});var kar=Dar(HK());UC.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:kar.default.IS_READ_ONLY,parseCommand(t){t.push("ACL","LOG","RESET")},transformReply:void 0}});var SWe=E(QK=>{"use strict";Object.defineProperty(QK,"__esModule",{value:!0});QK.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("ACL","SAVE")},transformReply:void 0}});var vWe=E(GK=>{"use strict";Object.defineProperty(GK,"__esModule",{value:!0});GK.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ACL","SETUSER",e),t.pushVariadic(r)},transformReply:void 0}});var CWe=E(VK=>{"use strict";Object.defineProperty(VK,"__esModule",{value:!0});VK.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("ACL","USERS")},transformReply:void 0}});var IWe=E(zK=>{"use strict";Object.defineProperty(zK,"__esModule",{value:!0});zK.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("ACL","WHOAMI")},transformReply:void 0}});var TWe=E(KK=>{"use strict";Object.defineProperty(KK,"__esModule",{value:!0});KK.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("APPEND",e,r)},transformReply:void 0}});var YK=E(bb=>{"use strict";Object.defineProperty(bb,"__esModule",{value:!0});bb.ASKING_CMD=void 0;bb.ASKING_CMD="ASKING";bb.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push(bb.ASKING_CMD)},transformReply:void 0}});var wWe=E(JK=>{"use strict";Object.defineProperty(JK,"__esModule",{value:!0});JK.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,{username:e,password:r}){t.push("AUTH"),e!==void 0&&t.push(e),t.push(r)},transformReply:void 0}});var RWe=E(XK=>{"use strict";Object.defineProperty(XK,"__esModule",{value:!0});XK.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("BGREWRITEAOF")},transformReply:void 0}});var NWe=E(ZK=>{"use strict";Object.defineProperty(ZK,"__esModule",{value:!0});ZK.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("BGSAVE"),e?.SCHEDULE&&t.push("SCHEDULE")},transformReply:void 0}});var OWe=E(eY=>{"use strict";Object.defineProperty(eY,"__esModule",{value:!0});eY.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("BITCOUNT"),t.pushKey(e),r&&(t.push(r.start.toString()),t.push(r.end.toString()),r.mode&&t.push(r.mode))},transformReply:void 0}});var PWe=E(tY=>{"use strict";Object.defineProperty(tY,"__esModule",{value:!0});tY.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("BITFIELD_RO"),t.pushKey(e);for(let n of r)t.push("GET"),t.push(n.encoding),t.push(n.offset.toString())},transformReply:void 0}});var DWe=E(rY=>{"use strict";Object.defineProperty(rY,"__esModule",{value:!0});rY.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("BITFIELD"),t.pushKey(e);for(let n of r)switch(n.operation){case"GET":t.push("GET",n.encoding,n.offset.toString());break;case"SET":t.push("SET",n.encoding,n.offset.toString(),n.value.toString());break;case"INCRBY":t.push("INCRBY",n.encoding,n.offset.toString(),n.increment.toString());break;case"OVERFLOW":t.push("OVERFLOW",n.behavior);break}},transformReply:void 0}});var kWe=E(nY=>{"use strict";Object.defineProperty(nY,"__esModule",{value:!0});nY.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("BITOP",e),t.pushKey(r),t.pushKeys(n)},transformReply:void 0}});var LWe=E(sY=>{"use strict";Object.defineProperty(sY,"__esModule",{value:!0});sY.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n,s,i){t.push("BITPOS"),t.pushKey(e),t.push(r.toString()),n!==void 0&&t.push(n.toString()),s!==void 0&&t.push(s.toString()),i&&t.push(i)},transformReply:void 0}});var BWe=E(iY=>{"use strict";Object.defineProperty(iY,"__esModule",{value:!0});iY.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,i){t.push("BLMOVE"),t.pushKeys([e,r]),t.push(n,s,i.toString())},transformReply:void 0}});var aY=E(qC=>{"use strict";Object.defineProperty(qC,"__esModule",{value:!0});qC.parseLMPopArguments=void 0;function MWe(t,e,r,n){t.pushKeysLength(e),t.push(r),n?.COUNT!==void 0&&t.push("COUNT",n.COUNT.toString())}qC.parseLMPopArguments=MWe;qC.default={IS_READ_ONLY:!1,parseCommand(t,...e){t.push("LMPOP"),MWe(t,...e)},transformReply:void 0}});var $We=E(pf=>{"use strict";var Lar=pf&&pf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Bar=pf&&pf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Mar=pf&&pf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Lar(e,t,r);return Bar(e,t),e};Object.defineProperty(pf,"__esModule",{value:!0});var WWe=Mar(aY());pf.default={IS_READ_ONLY:!1,parseCommand(t,e,...r){t.push("BLMPOP",e.toString()),(0,WWe.parseLMPopArguments)(t,...r)},transformReply:WWe.default.transformReply}});var cY=E(oY=>{"use strict";Object.defineProperty(oY,"__esModule",{value:!0});oY.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("BLPOP"),t.pushKeys(e),t.push(r.toString())},transformReply(t){return t===null?null:{key:t[0],element:t[1]}}}});var FWe=E(jC=>{"use strict";var War=jC&&jC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(jC,"__esModule",{value:!0});var $ar=War(cY());jC.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("BRPOP"),t.pushKeys(e),t.push(r.toString())},transformReply:$ar.default.transformReply}});var UWe=E(uY=>{"use strict";Object.defineProperty(uY,"__esModule",{value:!0});uY.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("BRPOPLPUSH"),t.pushKeys([e,r]),t.push(n.toString())},transformReply:void 0}});var lY=E(HC=>{"use strict";Object.defineProperty(HC,"__esModule",{value:!0});HC.parseZMPopArguments=void 0;var qWe=Ie();function jWe(t,e,r,n){t.pushKeysLength(e),t.push(r),n?.COUNT&&t.push("COUNT",n.COUNT.toString())}HC.parseZMPopArguments=jWe;HC.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("ZMPOP"),jWe(t,e,r,n)},transformReply:{2(t,e,r){return t===null?null:{key:t[0],members:t[1].map(n=>{let[s,i]=n;return{value:s,score:qWe.transformDoubleReply[2](i,e,r)}})}},3(t){return t===null?null:{key:t[0],members:qWe.transformSortedSetReply[3](t[1])}}}}});var QWe=E(mf=>{"use strict";var Far=mf&&mf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Uar=mf&&mf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),qar=mf&&mf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Far(e,t,r);return Uar(e,t),e};Object.defineProperty(mf,"__esModule",{value:!0});var HWe=qar(lY());mf.default={IS_READ_ONLY:!1,parseCommand(t,e,...r){t.push("BZMPOP",e.toString()),(0,HWe.parseZMPopArguments)(t,...r)},transformReply:HWe.default.transformReply}});var fY=E(dY=>{"use strict";Object.defineProperty(dY,"__esModule",{value:!0});var jar=Ie();dY.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("BZPOPMAX"),t.pushKeys(e),t.push(r.toString())},transformReply:{2(t,e,r){return t===null?null:{key:t[0],value:t[1],score:jar.transformDoubleReply[2](t[2],e,r)}},3(t){return t===null?null:{key:t[0],value:t[1],score:t[2]}}}}});var VWe=E(QC=>{"use strict";var Har=QC&&QC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(QC,"__esModule",{value:!0});var GWe=Har(fY());QC.default={IS_READ_ONLY:GWe.default.IS_READ_ONLY,parseCommand(t,e,r){t.push("BZPOPMIN"),t.pushKeys(e),t.push(r.toString())},transformReply:GWe.default.transformReply}});var zWe=E(pY=>{"use strict";Object.defineProperty(pY,"__esModule",{value:!0});pY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLIENT","CACHING",e?"YES":"NO")},transformReply:void 0}});var KWe=E(mY=>{"use strict";Object.defineProperty(mY,"__esModule",{value:!0});mY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLIENT","GETNAME")},transformReply:void 0}});var YWe=E(hY=>{"use strict";Object.defineProperty(hY,"__esModule",{value:!0});hY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLIENT","GETREDIR")},transformReply:void 0}});var JWe=E(gY=>{"use strict";Object.defineProperty(gY,"__esModule",{value:!0});gY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLIENT","ID")},transformReply:void 0}});var yY=E(AY=>{"use strict";Object.defineProperty(AY,"__esModule",{value:!0});var Qar=/([^\s=]+)=([^\s]*)/g;AY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLIENT","INFO")},transformReply(t){let e={};for(let n of t.toString().matchAll(Qar))e[n[1]]=n[2];let r={id:Number(e.id),addr:e.addr,fd:Number(e.fd),name:e.name,age:Number(e.age),idle:Number(e.idle),flags:e.flags,db:Number(e.db),sub:Number(e.sub),psub:Number(e.psub),multi:Number(e.multi),qbuf:Number(e.qbuf),qbufFree:Number(e["qbuf-free"]),argvMem:Number(e["argv-mem"]),obl:Number(e.obl),oll:Number(e.oll),omem:Number(e.omem),totMem:Number(e["tot-mem"]),events:e.events,cmd:e.cmd,user:e.user,libName:e["lib-name"],libVer:e["lib-ver"]};return e.laddr!==void 0&&(r.laddr=e.laddr),e.redir!==void 0&&(r.redir=Number(e.redir)),e.ssub!==void 0&&(r.ssub=Number(e.ssub)),e["multi-mem"]!==void 0&&(r.multiMem=Number(e["multi-mem"])),e.resp!==void 0&&(r.resp=Number(e.resp)),r}}});var ZWe=E(Oo=>{"use strict";Object.defineProperty(Oo,"__esModule",{value:!0});Oo.CLIENT_KILL_FILTERS=void 0;Oo.CLIENT_KILL_FILTERS={ADDRESS:"ADDR",LOCAL_ADDRESS:"LADDR",ID:"ID",TYPE:"TYPE",USER:"USER",SKIP_ME:"SKIPME",MAXAGE:"MAXAGE"};Oo.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){if(t.push("CLIENT","KILL"),Array.isArray(e))for(let r of e)XWe(t,r);else XWe(t,e)},transformReply:void 0};function XWe(t,e){if(e===Oo.CLIENT_KILL_FILTERS.SKIP_ME){t.push("SKIPME");return}switch(t.push(e.filter),e.filter){case Oo.CLIENT_KILL_FILTERS.ADDRESS:t.push(e.address);break;case Oo.CLIENT_KILL_FILTERS.LOCAL_ADDRESS:t.push(e.localAddress);break;case Oo.CLIENT_KILL_FILTERS.ID:t.push(typeof e.id=="number"?e.id.toString():e.id);break;case Oo.CLIENT_KILL_FILTERS.TYPE:t.push(e.type);break;case Oo.CLIENT_KILL_FILTERS.USER:t.push(e.username);break;case Oo.CLIENT_KILL_FILTERS.SKIP_ME:t.push(e.skipMe?"yes":"no");break;case Oo.CLIENT_KILL_FILTERS.MAXAGE:t.push(e.maxAge.toString());break}}});var e$e=E(GC=>{"use strict";var Gar=GC&&GC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(GC,"__esModule",{value:!0});var Var=Gar(yY());GC.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLIENT","LIST"),e&&(e.TYPE!==void 0?t.push("TYPE",e.TYPE):(t.push("ID"),t.pushVariadic(e.ID)))},transformReply(t){let e=t.toString().split(` -`),r=e.length-1,n=[];for(let s=0;s{"use strict";Object.defineProperty(xY,"__esModule",{value:!0});xY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLIENT","NO-EVICT",e?"ON":"OFF")},transformReply:void 0}});var r$e=E(bY=>{"use strict";Object.defineProperty(bY,"__esModule",{value:!0});bY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLIENT","NO-TOUCH",e?"ON":"OFF")},transformReply:void 0}});var n$e=E(EY=>{"use strict";Object.defineProperty(EY,"__esModule",{value:!0});EY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("CLIENT","PAUSE",e.toString()),r&&t.push(r)},transformReply:void 0}});var s$e=E(_Y=>{"use strict";Object.defineProperty(_Y,"__esModule",{value:!0});_Y.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLIENT","SETNAME",e)},transformReply:void 0}});var i$e=E(SY=>{"use strict";Object.defineProperty(SY,"__esModule",{value:!0});SY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){if(t.push("CLIENT","TRACKING",e?"ON":"OFF"),e){if(r?.REDIRECT&&t.push("REDIRECT",r.REDIRECT.toString()),zar(r)){if(t.push("BCAST"),r?.PREFIX)if(Array.isArray(r.PREFIX))for(let n of r.PREFIX)t.push("PREFIX",n);else t.push("PREFIX",r.PREFIX)}else Kar(r)?t.push("OPTIN"):Yar(r)&&t.push("OPTOUT");r?.NOLOOP&&t.push("NOLOOP")}},transformReply:void 0};function zar(t){return t?.BCAST===!0}function Kar(t){return t?.OPTIN===!0}function Yar(t){return t?.OPTOUT===!0}});var a$e=E(vY=>{"use strict";Object.defineProperty(vY,"__esModule",{value:!0});vY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLIENT","TRACKINGINFO")},transformReply:{2:t=>({flags:t[1],redirect:t[3],prefixes:t[5]}),3:void 0}}});var o$e=E(CY=>{"use strict";Object.defineProperty(CY,"__esModule",{value:!0});CY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLIENT","UNPAUSE")},transformReply:void 0}});var c$e=E(IY=>{"use strict";Object.defineProperty(IY,"__esModule",{value:!0});IY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","ADDSLOTS"),t.pushVariadicNumber(e)},transformReply:void 0}});var u$e=E(TY=>{"use strict";Object.defineProperty(TY,"__esModule",{value:!0});var Jar=Ie();TY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","ADDSLOTSRANGE"),(0,Jar.parseSlotRangesArguments)(t,e)},transformReply:void 0}});var l$e=E(wY=>{"use strict";Object.defineProperty(wY,"__esModule",{value:!0});wY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","BUMPEPOCH")},transformReply:void 0}});var d$e=E(RY=>{"use strict";Object.defineProperty(RY,"__esModule",{value:!0});RY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","COUNT-FAILURE-REPORTS",e)},transformReply:void 0}});var f$e=E(NY=>{"use strict";Object.defineProperty(NY,"__esModule",{value:!0});NY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","COUNTKEYSINSLOT",e.toString())},transformReply:void 0}});var p$e=E(OY=>{"use strict";Object.defineProperty(OY,"__esModule",{value:!0});OY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","DELSLOTS"),t.pushVariadicNumber(e)},transformReply:void 0}});var m$e=E(PY=>{"use strict";Object.defineProperty(PY,"__esModule",{value:!0});var Xar=Ie();PY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","DELSLOTSRANGE"),(0,Xar.parseSlotRangesArguments)(t,e)},transformReply:void 0}});var h$e=E(VC=>{"use strict";Object.defineProperty(VC,"__esModule",{value:!0});VC.FAILOVER_MODES=void 0;VC.FAILOVER_MODES={FORCE:"FORCE",TAKEOVER:"TAKEOVER"};VC.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","FAILOVER"),e?.mode&&t.push(e.mode)},transformReply:void 0}});var g$e=E(DY=>{"use strict";Object.defineProperty(DY,"__esModule",{value:!0});DY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","FLUSHSLOTS")},transformReply:void 0}});var A$e=E(kY=>{"use strict";Object.defineProperty(kY,"__esModule",{value:!0});kY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","FORGET",e)},transformReply:void 0}});var y$e=E(LY=>{"use strict";Object.defineProperty(LY,"__esModule",{value:!0});LY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("CLUSTER","GETKEYSINSLOT",e.toString(),r.toString())},transformReply:void 0}});var x$e=E(BY=>{"use strict";Object.defineProperty(BY,"__esModule",{value:!0});BY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","INFO")},transformReply:void 0}});var b$e=E(MY=>{"use strict";Object.defineProperty(MY,"__esModule",{value:!0});MY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","KEYSLOT",e)},transformReply:void 0}});var E$e=E(WY=>{"use strict";Object.defineProperty(WY,"__esModule",{value:!0});WY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","LINKS")},transformReply:{2:t=>t.map(e=>{let r=e;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 _$e=E($Y=>{"use strict";Object.defineProperty($Y,"__esModule",{value:!0});$Y.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("CLUSTER","MEET",e,r.toString())},transformReply:void 0}});var S$e=E(FY=>{"use strict";Object.defineProperty(FY,"__esModule",{value:!0});FY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","MYID")},transformReply:void 0}});var v$e=E(UY=>{"use strict";Object.defineProperty(UY,"__esModule",{value:!0});UY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","MYSHARDID")},transformReply:void 0}});var C$e=E(qY=>{"use strict";Object.defineProperty(qY,"__esModule",{value:!0});qY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","NODES")},transformReply:void 0}});var I$e=E(jY=>{"use strict";Object.defineProperty(jY,"__esModule",{value:!0});jY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","REPLICAS",e)},transformReply:void 0}});var T$e=E(HY=>{"use strict";Object.defineProperty(HY,"__esModule",{value:!0});HY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","REPLICATE",e)},transformReply:void 0}});var w$e=E(QY=>{"use strict";Object.defineProperty(QY,"__esModule",{value:!0});QY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","RESET"),e?.mode&&t.push(e.mode)},transformReply:void 0}});var R$e=E(GY=>{"use strict";Object.defineProperty(GY,"__esModule",{value:!0});GY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","SAVECONFIG")},transformReply:void 0}});var N$e=E(VY=>{"use strict";Object.defineProperty(VY,"__esModule",{value:!0});VY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","SET-CONFIG-EPOCH",e.toString())},transformReply:void 0}});var O$e=E(zC=>{"use strict";Object.defineProperty(zC,"__esModule",{value:!0});zC.CLUSTER_SLOT_STATES=void 0;zC.CLUSTER_SLOT_STATES={IMPORTING:"IMPORTING",MIGRATING:"MIGRATING",STABLE:"STABLE",NODE:"NODE"};zC.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("CLUSTER","SETSLOT",e.toString(),r),n&&t.push(n)},transformReply:void 0}});var D$e=E(zY=>{"use strict";Object.defineProperty(zY,"__esModule",{value:!0});zY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","SLOTS")},transformReply(t){return t.map(([e,r,n,...s])=>({from:e,to:r,master:P$e(n),replicas:s.map(P$e)}))}};function P$e(t){let[e,r,n]=t;return{host:e,port:r,id:n}}});var k$e=E(KY=>{"use strict";Object.defineProperty(KY,"__esModule",{value:!0});KY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("COMMAND","COUNT")},transformReply:void 0}});var L$e=E(YY=>{"use strict";Object.defineProperty(YY,"__esModule",{value:!0});YY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("COMMAND","GETKEYS"),t.push(...e)},transformReply:void 0}});var B$e=E(JY=>{"use strict";Object.defineProperty(JY,"__esModule",{value:!0});JY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("COMMAND","GETKEYSANDFLAGS"),t.push(...e)},transformReply(t){return t.map(e=>{let[r,n]=e;return{key:r,flags:n}})}}});var M$e=E(XY=>{"use strict";Object.defineProperty(XY,"__esModule",{value:!0});var Zar=Ie();XY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("COMMAND","INFO",...e)},transformReply(t){return t.map(e=>e?(0,Zar.transformCommandReply)(e):null)}}});var W$e=E(KC=>{"use strict";Object.defineProperty(KC,"__esModule",{value:!0});KC.COMMAND_LIST_FILTER_BY=void 0;KC.COMMAND_LIST_FILTER_BY={MODULE:"MODULE",ACLCAT:"ACLCAT",PATTERN:"PATTERN"};KC.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("COMMAND","LIST"),e?.FILTERBY&&t.push("FILTERBY",e.FILTERBY.type,e.FILTERBY.value)},transformReply:void 0}});var $$e=E(ZY=>{"use strict";Object.defineProperty(ZY,"__esModule",{value:!0});var eor=Ie();ZY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("COMMAND")},transformReply(t){return t.map(eor.transformCommandReply)}}});var F$e=E(eJ=>{"use strict";Object.defineProperty(eJ,"__esModule",{value:!0});var tor=Ie();eJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CONFIG","GET"),t.pushVariadic(e)},transformReply:{2:tor.transformTuplesReply,3:void 0}}});var U$e=E(tJ=>{"use strict";Object.defineProperty(tJ,"__esModule",{value:!0});tJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CONFIG","RESETSTAT")},transformReply:void 0}});var q$e=E(rJ=>{"use strict";Object.defineProperty(rJ,"__esModule",{value:!0});rJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CONFIG","REWRITE")},transformReply:void 0}});var j$e=E(nJ=>{"use strict";Object.defineProperty(nJ,"__esModule",{value:!0});nJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,...[e,r]){if(t.push("CONFIG","SET"),typeof e=="string"||e instanceof Buffer)t.push(e,r);else for(let[n,s]of Object.entries(e))t.push(n,s)},transformReply:void 0}});var H$e=E(sJ=>{"use strict";Object.defineProperty(sJ,"__esModule",{value:!0});sJ.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("COPY"),t.pushKeys([e,r]),n?.DB&&t.push("DB",n.DB.toString()),n?.REPLACE&&t.push("REPLACE")},transformReply:void 0}});var Q$e=E(iJ=>{"use strict";Object.defineProperty(iJ,"__esModule",{value:!0});iJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("DBSIZE")},transformReply:void 0}});var G$e=E(aJ=>{"use strict";Object.defineProperty(aJ,"__esModule",{value:!0});aJ.default={parseCommand(t,e){t.push("DECR"),t.pushKey(e)},transformReply:void 0}});var V$e=E(oJ=>{"use strict";Object.defineProperty(oJ,"__esModule",{value:!0});oJ.default={parseCommand(t,e,r){t.push("DECRBY"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var z$e=E(cJ=>{"use strict";Object.defineProperty(cJ,"__esModule",{value:!0});cJ.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("DEL"),t.pushKeys(e)},transformReply:void 0}});var K$e=E(YC=>{"use strict";Object.defineProperty(YC,"__esModule",{value:!0});YC.DelexCondition=void 0;YC.DelexCondition={IFEQ:"IFEQ",IFNE:"IFNE",IFDEQ:"IFDEQ",IFDNE:"IFDNE"};YC.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("DELEX"),t.pushKey(e),r&&(t.push(r.condition),t.push(r.matchValue))},transformReply:void 0}});var Y$e=E(uJ=>{"use strict";Object.defineProperty(uJ,"__esModule",{value:!0});uJ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("DIGEST"),t.pushKey(e)},transformReply:void 0}});var J$e=E(lJ=>{"use strict";Object.defineProperty(lJ,"__esModule",{value:!0});lJ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("DUMP"),t.pushKey(e)},transformReply:void 0}});var X$e=E(dJ=>{"use strict";Object.defineProperty(dJ,"__esModule",{value:!0});dJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("ECHO",e)},transformReply:void 0}});var cg=E(JC=>{"use strict";Object.defineProperty(JC,"__esModule",{value:!0});JC.parseEvalArguments=void 0;function Z$e(t,e,r){t.push(e),r?.keys?t.pushKeysLength(r.keys):t.push("0"),r?.arguments&&t.push(...r.arguments)}JC.parseEvalArguments=Z$e;JC.default={IS_READ_ONLY:!1,parseCommand(...t){t[0].push("EVAL"),Z$e(...t)},transformReply:void 0}});var tFe=E(hf=>{"use strict";var ror=hf&&hf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),nor=hf&&hf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),sor=hf&&hf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&ror(e,t,r);return nor(e,t),e};Object.defineProperty(hf,"__esModule",{value:!0});var eFe=sor(cg());hf.default={IS_READ_ONLY:!0,parseCommand(...t){t[0].push("EVAL_RO"),(0,eFe.parseEvalArguments)(...t)},transformReply:eFe.default.transformReply}});var nFe=E(gf=>{"use strict";var ior=gf&&gf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),aor=gf&&gf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),oor=gf&&gf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&ior(e,t,r);return aor(e,t),e};Object.defineProperty(gf,"__esModule",{value:!0});var rFe=oor(cg());gf.default={IS_READ_ONLY:!0,parseCommand(...t){t[0].push("EVALSHA_RO"),(0,rFe.parseEvalArguments)(...t)},transformReply:rFe.default.transformReply}});var iFe=E(Af=>{"use strict";var cor=Af&&Af.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),uor=Af&&Af.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),lor=Af&&Af.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&cor(e,t,r);return uor(e,t),e};Object.defineProperty(Af,"__esModule",{value:!0});var sFe=lor(cg());Af.default={IS_READ_ONLY:!1,parseCommand(...t){t[0].push("EVALSHA"),(0,sFe.parseEvalArguments)(...t)},transformReply:sFe.default.transformReply}});var oFe=E(fJ=>{"use strict";Object.defineProperty(fJ,"__esModule",{value:!0});fJ.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){if(t.push("GEOADD"),t.pushKey(e),n?.condition?t.push(n.condition):n?.NX?t.push("NX"):n?.XX&&t.push("XX"),n?.CH&&t.push("CH"),Array.isArray(r))for(let s of r)aFe(t,s);else aFe(t,r)},transformReply:void 0};function aFe(t,{longitude:e,latitude:r,member:n}){t.push(e.toString(),r.toString(),n)}});var cFe=E(pJ=>{"use strict";Object.defineProperty(pJ,"__esModule",{value:!0});pJ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("GEODIST"),t.pushKey(e),t.push(r,n),s&&t.push(s)},transformReply(t){return t===null?null:Number(t)}}});var uFe=E(mJ=>{"use strict";Object.defineProperty(mJ,"__esModule",{value:!0});mJ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("GEOHASH"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var lFe=E(hJ=>{"use strict";Object.defineProperty(hJ,"__esModule",{value:!0});hJ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("GEOPOS"),t.pushKey(e),t.pushVariadic(r)},transformReply(t){return t.map(e=>{let r=e;return r===null?null:{longitude:r[0],latitude:r[1]}})}}});var lg=E(ug=>{"use strict";Object.defineProperty(ug,"__esModule",{value:!0});ug.parseGeoSearchOptions=ug.parseGeoSearchArguments=void 0;function dFe(t,e,r,n,s){t.pushKey(e),typeof r=="string"||r instanceof Buffer?t.push("FROMMEMBER",r):t.push("FROMLONLAT",r.longitude.toString(),r.latitude.toString()),"radius"in n?t.push("BYRADIUS",n.radius.toString(),n.unit):t.push("BYBOX",n.width.toString(),n.height.toString(),n.unit),fFe(t,s)}ug.parseGeoSearchArguments=dFe;function fFe(t,e){e?.SORT&&t.push(e.SORT),e?.COUNT&&(typeof e.COUNT=="number"?t.push("COUNT",e.COUNT.toString()):(t.push("COUNT",e.COUNT.value.toString()),e.COUNT.ANY&&t.push("ANY")))}ug.parseGeoSearchOptions=fFe;ug.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("GEOSEARCH"),dFe(t,e,r,n,s)},transformReply:void 0}});var ZC=E(XC=>{"use strict";Object.defineProperty(XC,"__esModule",{value:!0});XC.parseGeoRadiusArguments=void 0;var dor=lg();function pFe(t,e,r,n,s,i){t.pushKey(e),t.push(r.longitude.toString(),r.latitude.toString(),n.toString(),s),(0,dor.parseGeoSearchOptions)(t,i)}XC.parseGeoRadiusArguments=pFe;XC.default={IS_READ_ONLY:!1,parseCommand(...t){return t[0].push("GEORADIUS"),pFe(...t)},transformReply:void 0}});var eI=E(kl=>{"use strict";var por=kl&&kl.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(kl,"__esModule",{value:!0});kl.GEO_REPLY_WITH=void 0;var mFe=por(lg());kl.GEO_REPLY_WITH={DISTANCE:"WITHDIST",HASH:"WITHHASH",COORDINATES:"WITHCOORD"};kl.default={IS_READ_ONLY:mFe.default.IS_READ_ONLY,parseCommand(t,e,r,n,s,i){mFe.default.parseCommand(t,e,r,n,i),t.push(...s),t.preserve=s},transformReply(t,e){let r=new Set(e),n=0,s=r.has(kl.GEO_REPLY_WITH.DISTANCE)&&++n,i=r.has(kl.GEO_REPLY_WITH.HASH)&&++n,a=r.has(kl.GEO_REPLY_WITH.COORDINATES)&&++n;return t.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 iB=E(Po=>{"use strict";var mor=Po&&Po.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),hor=Po&&Po.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),gor=Po&&Po.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&mor(e,t,r);return hor(e,t),e},Aor=Po&&Po.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Po,"__esModule",{value:!0});Po.parseGeoRadiusWithArguments=void 0;var hFe=gor(ZC()),yor=Aor(eI());function gFe(t,e,r,n,s,i,a){(0,hFe.parseGeoRadiusArguments)(t,e,r,n,s,a),t.pushVariadic(i),t.preserve=i}Po.parseGeoRadiusWithArguments=gFe;Po.default={IS_READ_ONLY:hFe.default.IS_READ_ONLY,parseCommand(t,e,r,n,s,i,a){t.push("GEORADIUS"),gFe(t,e,r,n,s,i,a)},transformReply:yor.default.transformReply}});var AFe=E(tI=>{"use strict";var xor=tI&&tI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(tI,"__esModule",{value:!0});var bor=iB(),Eor=xor(iB());tI.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(...t){t[0].push("GEORADIUS_RO"),(0,bor.parseGeoRadiusWithArguments)(...t)},transformReply:Eor.default.transformReply}});var xFe=E(yf=>{"use strict";var _or=yf&&yf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Sor=yf&&yf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),vor=yf&&yf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&_or(e,t,r);return Sor(e,t),e};Object.defineProperty(yf,"__esModule",{value:!0});var yFe=vor(ZC());yf.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(...t){t[0].push("GEORADIUS_RO"),(0,yFe.parseGeoRadiusArguments)(...t)},transformReply:yFe.default.transformReply}});var EFe=E(xf=>{"use strict";var Cor=xf&&xf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Ior=xf&&xf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Tor=xf&&xf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Cor(e,t,r);return Ior(e,t),e};Object.defineProperty(xf,"__esModule",{value:!0});var bFe=Tor(ZC());xf.default={IS_READ_ONLY:bFe.default.IS_READ_ONLY,parseCommand(t,e,r,n,s,i,a){t.push("GEORADIUS"),(0,bFe.parseGeoRadiusArguments)(t,e,r,n,s,a),a?.STOREDIST?(t.push("STOREDIST"),t.pushKey(i)):(t.push("STORE"),t.pushKey(i))},transformReply:void 0}});var nI=E(rI=>{"use strict";Object.defineProperty(rI,"__esModule",{value:!0});rI.parseGeoRadiusByMemberArguments=void 0;var wor=lg();function _Fe(t,e,r,n,s,i){t.pushKey(e),t.push(r,n.toString(),s),(0,wor.parseGeoSearchOptions)(t,i)}rI.parseGeoRadiusByMemberArguments=_Fe;rI.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,i){t.push("GEORADIUSBYMEMBER"),_Fe(t,e,r,n,s,i)},transformReply:void 0}});var gJ=E(dg=>{"use strict";var SFe=dg&&dg.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(dg,"__esModule",{value:!0});dg.parseGeoRadiusByMemberWithArguments=void 0;var Ror=SFe(nI()),Nor=lg(),Oor=SFe(eI());function vFe(t,e,r,n,s,i,a){t.pushKey(e),t.push(r,n.toString(),s),(0,Nor.parseGeoSearchOptions)(t,a),t.push(...i),t.preserve=i}dg.parseGeoRadiusByMemberWithArguments=vFe;dg.default={IS_READ_ONLY:Ror.default.IS_READ_ONLY,parseCommand(t,e,r,n,s,i,a){t.push("GEORADIUSBYMEMBER"),vFe(t,e,r,n,s,i,a)},transformReply:Oor.default.transformReply}});var IFe=E(bf=>{"use strict";var Por=bf&&bf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Dor=bf&&bf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),kor=bf&&bf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Por(e,t,r);return Dor(e,t),e};Object.defineProperty(bf,"__esModule",{value:!0});var CFe=kor(gJ());bf.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(...t){t[0].push("GEORADIUSBYMEMBER_RO"),(0,CFe.parseGeoRadiusByMemberWithArguments)(...t)},transformReply:CFe.default.transformReply}});var wFe=E(Ef=>{"use strict";var Lor=Ef&&Ef.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Bor=Ef&&Ef.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Mor=Ef&&Ef.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Lor(e,t,r);return Bor(e,t),e};Object.defineProperty(Ef,"__esModule",{value:!0});var TFe=Mor(nI());Ef.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(...t){t[0].push("GEORADIUSBYMEMBER_RO"),(0,TFe.parseGeoRadiusByMemberArguments)(...t)},transformReply:TFe.default.transformReply}});var NFe=E(_f=>{"use strict";var Wor=_f&&_f.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),$or=_f&&_f.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),For=_f&&_f.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Wor(e,t,r);return $or(e,t),e};Object.defineProperty(_f,"__esModule",{value:!0});var RFe=For(nI());_f.default={IS_READ_ONLY:RFe.default.IS_READ_ONLY,parseCommand(t,e,r,n,s,i,a){t.push("GEORADIUSBYMEMBER"),(0,RFe.parseGeoRadiusByMemberArguments)(t,e,r,n,s,a),a?.STOREDIST?(t.push("STOREDIST"),t.pushKey(i)):(t.push("STORE"),t.pushKey(i))},transformReply:void 0}});var OFe=E(AJ=>{"use strict";Object.defineProperty(AJ,"__esModule",{value:!0});var Uor=lg();AJ.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,i){t.push("GEOSEARCHSTORE"),e!==void 0&&t.pushKey(e),(0,Uor.parseGeoSearchArguments)(t,r,n,s,i),i?.STOREDIST&&t.push("STOREDIST")},transformReply:void 0}});var PFe=E(yJ=>{"use strict";Object.defineProperty(yJ,"__esModule",{value:!0});yJ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("GET"),t.pushKey(e)},transformReply:void 0}});var DFe=E(xJ=>{"use strict";Object.defineProperty(xJ,"__esModule",{value:!0});xJ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("GETBIT"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var kFe=E(bJ=>{"use strict";Object.defineProperty(bJ,"__esModule",{value:!0});bJ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("GETDEL"),t.pushKey(e)},transformReply:void 0}});var LFe=E(_J=>{"use strict";Object.defineProperty(_J,"__esModule",{value:!0});var EJ=Ie();_J.default={IS_READ_ONLY:!0,parseCommand(t,e,r){if(t.push("GETEX"),t.pushKey(e),"type"in r)switch(r.type){case"EX":case"PX":t.push(r.type,r.value.toString());break;case"EXAT":case"PXAT":t.push(r.type,(0,EJ.transformEXAT)(r.value));break;case"PERSIST":t.push("PERSIST");break}else"EX"in r?t.push("EX",r.EX.toString()):"PX"in r?t.push("PX",r.PX.toString()):"EXAT"in r?t.push("EXAT",(0,EJ.transformEXAT)(r.EXAT)):"PXAT"in r?t.push("PXAT",(0,EJ.transformPXAT)(r.PXAT)):t.push("PERSIST")},transformReply:void 0}});var BFe=E(SJ=>{"use strict";Object.defineProperty(SJ,"__esModule",{value:!0});SJ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("GETRANGE"),t.pushKey(e),t.push(r.toString(),n.toString())},transformReply:void 0}});var MFe=E(vJ=>{"use strict";Object.defineProperty(vJ,"__esModule",{value:!0});vJ.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("GETSET"),t.pushKey(e),t.push(r)},transformReply:void 0}});var WFe=E(CJ=>{"use strict";Object.defineProperty(CJ,"__esModule",{value:!0});CJ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("EXISTS"),t.pushKeys(e)},transformReply:void 0}});var $Fe=E(IJ=>{"use strict";Object.defineProperty(IJ,"__esModule",{value:!0});IJ.default={parseCommand(t,e,r,n){t.push("EXPIRE"),t.pushKey(e),t.push(r.toString()),n&&t.push(n)},transformReply:void 0}});var FFe=E(TJ=>{"use strict";Object.defineProperty(TJ,"__esModule",{value:!0});var qor=Ie();TJ.default={parseCommand(t,e,r,n){t.push("EXPIREAT"),t.pushKey(e),t.push((0,qor.transformEXAT)(r)),n&&t.push(n)},transformReply:void 0}});var UFe=E(wJ=>{"use strict";Object.defineProperty(wJ,"__esModule",{value:!0});wJ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("EXPIRETIME"),t.pushKey(e)},transformReply:void 0}});var qFe=E(sI=>{"use strict";Object.defineProperty(sI,"__esModule",{value:!0});sI.REDIS_FLUSH_MODES=void 0;sI.REDIS_FLUSH_MODES={ASYNC:"ASYNC",SYNC:"SYNC"};sI.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e){t.push("FLUSHALL"),e&&t.push(e)},transformReply:void 0}});var jFe=E(RJ=>{"use strict";Object.defineProperty(RJ,"__esModule",{value:!0});RJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e){t.push("FLUSHDB"),e&&t.push(e)},transformReply:void 0}});var QFe=E(Sf=>{"use strict";var jor=Sf&&Sf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Hor=Sf&&Sf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Qor=Sf&&Sf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&jor(e,t,r);return Hor(e,t),e};Object.defineProperty(Sf,"__esModule",{value:!0});var HFe=Qor(cg());Sf.default={IS_READ_ONLY:!1,parseCommand(...t){t[0].push("FCALL"),(0,HFe.parseEvalArguments)(...t)},transformReply:HFe.default.transformReply}});var VFe=E(vf=>{"use strict";var Gor=vf&&vf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Vor=vf&&vf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),zor=vf&&vf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Gor(e,t,r);return Vor(e,t),e};Object.defineProperty(vf,"__esModule",{value:!0});var GFe=zor(cg());vf.default={IS_READ_ONLY:!1,parseCommand(...t){t[0].push("FCALL_RO"),(0,GFe.parseEvalArguments)(...t)},transformReply:GFe.default.transformReply}});var zFe=E(NJ=>{"use strict";Object.defineProperty(NJ,"__esModule",{value:!0});NJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e){t.push("FUNCTION","DELETE",e)},transformReply:void 0}});var KFe=E(OJ=>{"use strict";Object.defineProperty(OJ,"__esModule",{value:!0});OJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("FUNCTION","DUMP")},transformReply:void 0}});var YFe=E(PJ=>{"use strict";Object.defineProperty(PJ,"__esModule",{value:!0});PJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e){t.push("FUNCTION","FLUSH"),e&&t.push(e)},transformReply:void 0}});var JFe=E(DJ=>{"use strict";Object.defineProperty(DJ,"__esModule",{value:!0});DJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("FUNCTION","KILL")},transformReply:void 0}});var LJ=E(kJ=>{"use strict";Object.defineProperty(kJ,"__esModule",{value:!0});kJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e){t.push("FUNCTION","LIST"),e?.LIBRARYNAME&&t.push("LIBRARYNAME",e.LIBRARYNAME)},transformReply:{2:t=>t.map(e=>{let r=e;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 XFe=E(iI=>{"use strict";var Kor=iI&&iI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(iI,"__esModule",{value:!0});var BJ=Kor(LJ());iI.default={NOT_KEYED_COMMAND:BJ.default.NOT_KEYED_COMMAND,IS_READ_ONLY:BJ.default.IS_READ_ONLY,parseCommand(...t){BJ.default.parseCommand(...t),t[0].push("WITHCODE")},transformReply:{2:t=>t.map(e=>{let r=e;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 ZFe=E(MJ=>{"use strict";Object.defineProperty(MJ,"__esModule",{value:!0});MJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("FUNCTION","LOAD"),r?.REPLACE&&t.push("REPLACE"),t.push(e)},transformReply:void 0}});var eUe=E(WJ=>{"use strict";Object.defineProperty(WJ,"__esModule",{value:!0});WJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("FUNCTION","RESTORE",e),r?.mode&&t.push(r.mode)},transformReply:void 0}});var tUe=E($J=>{"use strict";Object.defineProperty($J,"__esModule",{value:!0});var Yor=Ie();$J.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("FUNCTION","STATS")},transformReply:{2:t=>({running_script:Jor(t[1]),engines:Xor(t[3])}),3:void 0}};function Jor(t){if((0,Yor.isNullReply)(t))return null;let e=t;return{name:e[1],command:e[3],duration_ms:e[5]}}function Xor(t){let e=t,r=Object.create(null);for(let n=0;n{"use strict";Object.defineProperty(FJ,"__esModule",{value:!0});FJ.default={parseCommand(t,e,r){t.push("HDEL"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var qJ=E(UJ=>{"use strict";Object.defineProperty(UJ,"__esModule",{value:!0});UJ.default={parseCommand(t,e,r){t.push("HELLO"),e&&(t.push(e.toString()),r?.AUTH&&t.push("AUTH",r.AUTH.username,r.AUTH.password),r?.SETNAME&&t.push("SETNAME",r.SETNAME))},transformReply:{2:t=>({server:t[1],version:t[3],proto:t[5],id:t[7],mode:t[9],role:t[11],modules:t[13]}),3:void 0}}});var nUe=E(jJ=>{"use strict";Object.defineProperty(jJ,"__esModule",{value:!0});jJ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HEXISTS"),t.pushKey(e),t.push(r)},transformReply:void 0}});var sUe=E(aI=>{"use strict";Object.defineProperty(aI,"__esModule",{value:!0});aI.HASH_EXPIRATION=void 0;aI.HASH_EXPIRATION={FIELD_NOT_EXISTS:-2,CONDITION_NOT_MET:0,UPDATED:1,DELETED:2};aI.default={parseCommand(t,e,r,n,s){t.push("HEXPIRE"),t.pushKey(e),t.push(n.toString()),s&&t.push(s),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var iUe=E(HJ=>{"use strict";Object.defineProperty(HJ,"__esModule",{value:!0});var Zor=Ie();HJ.default={parseCommand(t,e,r,n,s){t.push("HEXPIREAT"),t.pushKey(e),t.push((0,Zor.transformEXAT)(n)),s&&t.push(s),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var aUe=E(oI=>{"use strict";Object.defineProperty(oI,"__esModule",{value:!0});oI.HASH_EXPIRATION_TIME=void 0;oI.HASH_EXPIRATION_TIME={FIELD_NOT_EXISTS:-2,NO_EXPIRATION:-1};oI.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HEXPIRETIME"),t.pushKey(e),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var oUe=E(QJ=>{"use strict";Object.defineProperty(QJ,"__esModule",{value:!0});QJ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HGET"),t.pushKey(e),t.push(r)},transformReply:void 0}});var cUe=E(GJ=>{"use strict";Object.defineProperty(GJ,"__esModule",{value:!0});var ecr=Ie();GJ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("HGETALL"),t.pushKey(e)},TRANSFORM_LEGACY_REPLY:!0,transformReply:{2:ecr.transformTuplesReply,3:void 0}}});var uUe=E(VJ=>{"use strict";Object.defineProperty(VJ,"__esModule",{value:!0});VJ.default={parseCommand(t,e,r){t.push("HGETDEL"),t.pushKey(e),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var lUe=E(zJ=>{"use strict";Object.defineProperty(zJ,"__esModule",{value:!0});zJ.default={parseCommand(t,e,r,n){t.push("HGETEX"),t.pushKey(e),n?.expiration&&(typeof n.expiration=="string"?t.push(n.expiration):n.expiration.type==="PERSIST"?t.push("PERSIST"):t.push(n.expiration.type,n.expiration.value.toString())),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var dUe=E(KJ=>{"use strict";Object.defineProperty(KJ,"__esModule",{value:!0});KJ.default={parseCommand(t,e,r,n){t.push("HINCRBY"),t.pushKey(e),t.push(r,n.toString())},transformReply:void 0}});var fUe=E(YJ=>{"use strict";Object.defineProperty(YJ,"__esModule",{value:!0});YJ.default={parseCommand(t,e,r,n){t.push("HINCRBYFLOAT"),t.pushKey(e),t.push(r,n.toString())},transformReply:void 0}});var pUe=E(JJ=>{"use strict";Object.defineProperty(JJ,"__esModule",{value:!0});JJ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("HKEYS"),t.pushKey(e)},transformReply:void 0}});var mUe=E(XJ=>{"use strict";Object.defineProperty(XJ,"__esModule",{value:!0});XJ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("HLEN"),t.pushKey(e)},transformReply:void 0}});var hUe=E(ZJ=>{"use strict";Object.defineProperty(ZJ,"__esModule",{value:!0});ZJ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HMGET"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var gUe=E(eX=>{"use strict";Object.defineProperty(eX,"__esModule",{value:!0});eX.default={parseCommand(t,e,r){t.push("HPERSIST"),t.pushKey(e),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var AUe=E(tX=>{"use strict";Object.defineProperty(tX,"__esModule",{value:!0});tX.default={parseCommand(t,e,r,n,s){t.push("HPEXPIRE"),t.pushKey(e),t.push(n.toString()),s&&t.push(s),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var yUe=E(rX=>{"use strict";Object.defineProperty(rX,"__esModule",{value:!0});var tcr=Ie();rX.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("HPEXPIREAT"),t.pushKey(e),t.push((0,tcr.transformPXAT)(n)),s&&t.push(s),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var xUe=E(nX=>{"use strict";Object.defineProperty(nX,"__esModule",{value:!0});nX.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HPEXPIRETIME"),t.pushKey(e),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var bUe=E(sX=>{"use strict";Object.defineProperty(sX,"__esModule",{value:!0});sX.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HPTTL"),t.pushKey(e),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var EUe=E(iX=>{"use strict";Object.defineProperty(iX,"__esModule",{value:!0});iX.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HRANDFIELD"),t.pushKey(e),t.push(r.toString(),"WITHVALUES")},transformReply:{2:t=>{let e=[],r=0;for(;rt.map(e=>{let[r,n]=e;return{field:r,value:n}})}}});var _Ue=E(aX=>{"use strict";Object.defineProperty(aX,"__esModule",{value:!0});aX.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HRANDFIELD"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var SUe=E(oX=>{"use strict";Object.defineProperty(oX,"__esModule",{value:!0});oX.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("HRANDFIELD"),t.pushKey(e)},transformReply:void 0}});var cI=E(fg=>{"use strict";Object.defineProperty(fg,"__esModule",{value:!0});fg.pushScanArguments=fg.parseScanArguments=void 0;function vUe(t,e,r){t.push(e),r?.MATCH&&t.push("MATCH",r.MATCH),r?.COUNT&&t.push("COUNT",r.COUNT.toString())}fg.parseScanArguments=vUe;function rcr(t,e,r){return t.push(e.toString()),r?.MATCH&&t.push("MATCH",r.MATCH),r?.COUNT&&t.push("COUNT",r.COUNT.toString()),t}fg.pushScanArguments=rcr;fg.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("SCAN"),vUe(t,e,r),r?.TYPE&&t.push("TYPE",r.TYPE)},transformReply([t,e]){return{cursor:t,keys:e}}}});var uX=E(cX=>{"use strict";Object.defineProperty(cX,"__esModule",{value:!0});var ncr=cI();cX.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("HSCAN"),t.pushKey(e),(0,ncr.parseScanArguments)(t,r,n)},transformReply([t,e]){let r=[],n=0;for(;n{"use strict";var scr=uI&&uI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(uI,"__esModule",{value:!0});var icr=scr(uX());uI.default={IS_READ_ONLY:!0,parseCommand(...t){let e=t[0];icr.default.parseCommand(...t),e.push("NOVALUES")},transformReply([t,e]){return{cursor:t,fields:e}}}});var TUe=E(lX=>{"use strict";Object.defineProperty(lX,"__esModule",{value:!0});lX.default={parseCommand(t,...[e,r,n]){t.push("HSET"),t.pushKey(e),typeof r=="string"||typeof r=="number"||r instanceof Buffer?t.push(pg(r),pg(n)):r instanceof Map?acr(t,r):Array.isArray(r)?IUe(t,r):ocr(t,r)},transformReply:void 0};function acr(t,e){for(let[r,n]of e.entries())t.push(pg(r),pg(n))}function IUe(t,e){for(let r of e){if(Array.isArray(r)){IUe(t,r);continue}t.push(pg(r))}}function ocr(t,e){for(let r of Object.keys(e))t.push(pg(r),pg(e[r]))}function pg(t){return typeof t=="number"?t.toString():t}});var RUe=E(dX=>{"use strict";Object.defineProperty(dX,"__esModule",{value:!0});var ccr=Dl();dX.default={parseCommand(t,e,r,n){t.push("HSETEX"),t.pushKey(e),n?.mode&&t.push(n.mode),n?.expiration&&(typeof n.expiration=="string"?t.push(n.expiration):n.expiration.type==="KEEPTTL"?t.push("KEEPTTL"):t.push(n.expiration.type,n.expiration.value.toString())),t.push("FIELDS"),r instanceof Map?ucr(t,r):Array.isArray(r)?lcr(t,r):dcr(t,r)},transformReply:void 0};function ucr(t,e){t.push(e.size.toString());for(let[r,n]of e.entries())t.push(lI(r),lI(n))}function lcr(t,e){let r=new ccr.BasicCommandParser;if(wUe(r,e),r.redisArgs.length%2!=0)throw Error("invalid number of arguments, expected key value ....[key value] pairs, got key without value");t.push((r.redisArgs.length/2).toString()),t.push(...r.redisArgs)}function wUe(t,e){for(let r of e){if(Array.isArray(r)){wUe(t,r);continue}t.push(lI(r))}}function dcr(t,e){let r=Object.keys(e).length;if(r==0)throw Error("object without keys");t.push(r.toString());for(let n of Object.keys(e))t.push(lI(n),lI(e[n]))}function lI(t){return typeof t=="number"?t.toString():t}});var NUe=E(fX=>{"use strict";Object.defineProperty(fX,"__esModule",{value:!0});fX.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("HSETNX"),t.pushKey(e),t.push(r,n)},transformReply:void 0}});var OUe=E(pX=>{"use strict";Object.defineProperty(pX,"__esModule",{value:!0});pX.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HSTRLEN"),t.pushKey(e),t.push(r)},transformReply:void 0}});var PUe=E(mX=>{"use strict";Object.defineProperty(mX,"__esModule",{value:!0});mX.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HTTL"),t.pushKey(e),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var DUe=E(hX=>{"use strict";Object.defineProperty(hX,"__esModule",{value:!0});hX.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("HVALS"),t.pushKey(e)},transformReply:void 0}});var LUe=E(gX=>{"use strict";Object.defineProperty(gX,"__esModule",{value:!0});function kUe(t){let e=[];for(let r=0;r{let r=e;return r.length===1?{start:Number(r[0]),end:Number(r[0])}:{start:Number(r[0]),end:Number(r[1])}})}function pcr(t){let e={},r=t[0];for(let n=0;nt===null?null:pcr(t),3:void 0},unstableResp3:!0}});var BUe=E(AX=>{"use strict";Object.defineProperty(AX,"__esModule",{value:!0});AX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t){t.push("HOTKEYS","RESET")},transformReply:void 0}});var MUe=E(dI=>{"use strict";Object.defineProperty(dI,"__esModule",{value:!0});dI.HOTKEYS_METRICS=void 0;dI.HOTKEYS_METRICS={CPU:"CPU",NET:"NET"};dI.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e){if(t.push("HOTKEYS","START"),t.push("METRICS",e.METRICS.count.toString()),e.METRICS.CPU&&t.push("CPU"),e.METRICS.NET&&t.push("NET"),e.COUNT!==void 0&&t.push("COUNT",e.COUNT.toString()),e.DURATION!==void 0&&t.push("DURATION",e.DURATION.toString()),e.SAMPLE!==void 0&&t.push("SAMPLE",e.SAMPLE.toString()),e.SLOTS!==void 0){t.push("SLOTS",e.SLOTS.count.toString());for(let r of e.SLOTS.slots)t.push(r.toString())}},transformReply:void 0}});var WUe=E(yX=>{"use strict";Object.defineProperty(yX,"__esModule",{value:!0});yX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t){t.push("HOTKEYS","STOP")},transformReply:void 0}});var $Ue=E(xX=>{"use strict";Object.defineProperty(xX,"__esModule",{value:!0});xX.default={parseCommand(t,e){t.push("INCR"),t.pushKey(e)},transformReply:void 0}});var FUe=E(bX=>{"use strict";Object.defineProperty(bX,"__esModule",{value:!0});bX.default={parseCommand(t,e,r){t.push("INCRBY"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var UUe=E(EX=>{"use strict";Object.defineProperty(EX,"__esModule",{value:!0});EX.default={parseCommand(t,e,r){t.push("INCRBYFLOAT"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var qUe=E(_X=>{"use strict";Object.defineProperty(_X,"__esModule",{value:!0});_X.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("INFO"),e&&t.push(e)},transformReply:void 0}});var jUe=E(SX=>{"use strict";Object.defineProperty(SX,"__esModule",{value:!0});SX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("KEYS",e)},transformReply:void 0}});var HUe=E(vX=>{"use strict";Object.defineProperty(vX,"__esModule",{value:!0});vX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("LASTSAVE")},transformReply:void 0}});var QUe=E(CX=>{"use strict";Object.defineProperty(CX,"__esModule",{value:!0});CX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("LATENCY","DOCTOR")},transformReply:void 0}});var IX=E(fI=>{"use strict";Object.defineProperty(fI,"__esModule",{value:!0});fI.LATENCY_EVENTS=void 0;fI.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"};fI.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("LATENCY","GRAPH",e)},transformReply:void 0}});var GUe=E(TX=>{"use strict";Object.defineProperty(TX,"__esModule",{value:!0});TX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("LATENCY","HISTORY",e)},transformReply:void 0}});var VUe=E(wX=>{"use strict";Object.defineProperty(wX,"__esModule",{value:!0});wX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("LATENCY","LATEST")},transformReply:void 0}});var zUe=E(pI=>{"use strict";Object.defineProperty(pI,"__esModule",{value:!0});pI.LATENCY_EVENTS=void 0;var mcr=IX();Object.defineProperty(pI,"LATENCY_EVENTS",{enumerable:!0,get:function(){return mcr.LATENCY_EVENTS}});pI.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,...e){let r=["LATENCY","RESET"];e.length>0&&r.push(...e),t.push(...r)},transformReply:void 0}});var aB=E(RX=>{"use strict";Object.defineProperty(RX,"__esModule",{value:!0});RX.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("LCS"),t.pushKeys([e,r])},transformReply:void 0}});var NX=E(mI=>{"use strict";var hcr=mI&&mI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(mI,"__esModule",{value:!0});var KUe=hcr(aB());mI.default={IS_READ_ONLY:KUe.default.IS_READ_ONLY,parseCommand(t,e,r,n){KUe.default.parseCommand(t,e,r),t.push("IDX"),n?.MINMATCHLEN&&t.push("MINMATCHLEN",n.MINMATCHLEN.toString())},transformReply:{2:t=>({matches:t[1],len:t[3]}),3:void 0}}});var JUe=E(hI=>{"use strict";var gcr=hI&&hI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(hI,"__esModule",{value:!0});var YUe=gcr(NX());hI.default={IS_READ_ONLY:YUe.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];YUe.default.parseCommand(...t),e.push("WITHMATCHLEN")},transformReply:{2:t=>({matches:t[1],len:t[3]}),3:void 0}}});var ZUe=E(gI=>{"use strict";var Acr=gI&&gI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(gI,"__esModule",{value:!0});var XUe=Acr(aB());gI.default={IS_READ_ONLY:XUe.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];XUe.default.parseCommand(...t),e.push("LEN")},transformReply:void 0}});var e7e=E(OX=>{"use strict";Object.defineProperty(OX,"__esModule",{value:!0});OX.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("LINDEX"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var t7e=E(PX=>{"use strict";Object.defineProperty(PX,"__esModule",{value:!0});PX.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("LINSERT"),t.pushKey(e),t.push(r,n,s)},transformReply:void 0}});var r7e=E(DX=>{"use strict";Object.defineProperty(DX,"__esModule",{value:!0});DX.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("LLEN"),t.pushKey(e)},transformReply:void 0}});var n7e=E(kX=>{"use strict";Object.defineProperty(kX,"__esModule",{value:!0});kX.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("LMOVE"),t.pushKeys([e,r]),t.push(n,s)},transformReply:void 0}});var s7e=E(LX=>{"use strict";Object.defineProperty(LX,"__esModule",{value:!0});LX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,...r){t.push("LOLWUT"),e&&(t.push("VERSION",e.toString()),t.pushVariadic(r.map(String)))},transformReply:void 0}});var MX=E(BX=>{"use strict";Object.defineProperty(BX,"__esModule",{value:!0});BX.default={parseCommand(t,e){t.push("LPOP"),t.pushKey(e)},transformReply:void 0}});var i7e=E(AI=>{"use strict";var ycr=AI&&AI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(AI,"__esModule",{value:!0});var xcr=ycr(MX());AI.default={IS_READ_ONLY:!1,parseCommand(t,e,r){xcr.default.parseCommand(t,e),t.push(r.toString())},transformReply:void 0}});var $X=E(WX=>{"use strict";Object.defineProperty(WX,"__esModule",{value:!0});WX.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("LPOS"),t.pushKey(e),t.push(r),n?.RANK!==void 0&&t.push("RANK",n.RANK.toString()),n?.MAXLEN!==void 0&&t.push("MAXLEN",n.MAXLEN.toString())},transformReply:void 0}});var a7e=E(yI=>{"use strict";var bcr=yI&&yI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(yI,"__esModule",{value:!0});var FX=bcr($X());yI.default={CACHEABLE:FX.default.CACHEABLE,IS_READ_ONLY:FX.default.IS_READ_ONLY,parseCommand(t,e,r,n,s){FX.default.parseCommand(t,e,r,s),t.push("COUNT",n.toString())},transformReply:void 0}});var o7e=E(UX=>{"use strict";Object.defineProperty(UX,"__esModule",{value:!0});UX.default={parseCommand(t,e,r){t.push("LPUSH"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var c7e=E(qX=>{"use strict";Object.defineProperty(qX,"__esModule",{value:!0});qX.default={parseCommand(t,e,r){t.push("LPUSHX"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var u7e=E(jX=>{"use strict";Object.defineProperty(jX,"__esModule",{value:!0});jX.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("LRANGE"),t.pushKey(e),t.push(r.toString(),n.toString())},transformReply:void 0}});var l7e=E(HX=>{"use strict";Object.defineProperty(HX,"__esModule",{value:!0});HX.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("LREM"),t.pushKey(e),t.push(r.toString()),t.push(n)},transformReply:void 0}});var d7e=E(QX=>{"use strict";Object.defineProperty(QX,"__esModule",{value:!0});QX.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("LSET"),t.pushKey(e),t.push(r.toString(),n)},transformReply:void 0}});var f7e=E(GX=>{"use strict";Object.defineProperty(GX,"__esModule",{value:!0});GX.default={parseCommand(t,e,r,n){t.push("LTRIM"),t.pushKey(e),t.push(r.toString(),n.toString())},transformReply:void 0}});var p7e=E(VX=>{"use strict";Object.defineProperty(VX,"__esModule",{value:!0});VX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("MEMORY","DOCTOR")},transformReply:void 0}});var m7e=E(zX=>{"use strict";Object.defineProperty(zX,"__esModule",{value:!0});zX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("MEMORY","MALLOC-STATS")},transformReply:void 0}});var h7e=E(KX=>{"use strict";Object.defineProperty(KX,"__esModule",{value:!0});KX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t){t.push("MEMORY","PURGE")},transformReply:void 0}});var g7e=E(YX=>{"use strict";Object.defineProperty(YX,"__esModule",{value:!0});var Ecr=Ie();YX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("MEMORY","STATS")},transformReply:{2:(t,e,r)=>{let n={},s=0;for(;s{"use strict";Object.defineProperty(JX,"__esModule",{value:!0});JX.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("MEMORY","USAGE"),t.pushKey(e),r?.SAMPLES&&t.push("SAMPLES",r.SAMPLES.toString())},transformReply:void 0}});var y7e=E(XX=>{"use strict";Object.defineProperty(XX,"__esModule",{value:!0});XX.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("MGET"),t.pushKeys(e)},transformReply:void 0}});var x7e=E(ZX=>{"use strict";Object.defineProperty(ZX,"__esModule",{value:!0});ZX.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,i,a){t.push("MIGRATE",e,r.toString());let o=Array.isArray(n);o?t.push(""):t.push(n),t.push(s.toString(),i.toString()),a?.COPY&&t.push("COPY"),a?.REPLACE&&t.push("REPLACE"),a?.AUTH&&(a.AUTH.username?t.push("AUTH2",a.AUTH.username,a.AUTH.password):t.push("AUTH",a.AUTH.password)),o&&(t.push("KEYS"),t.pushVariadic(n))},transformReply:void 0}});var b7e=E(eZ=>{"use strict";Object.defineProperty(eZ,"__esModule",{value:!0});eZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("MODULE","LIST")},transformReply:{2:t=>t.map(e=>{let r=e;return{name:r[1],ver:r[3]}}),3:void 0}}});var E7e=E(tZ=>{"use strict";Object.defineProperty(tZ,"__esModule",{value:!0});tZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("MODULE","LOAD",e),r&&t.push(...r)},transformReply:void 0}});var _7e=E(rZ=>{"use strict";Object.defineProperty(rZ,"__esModule",{value:!0});rZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("MODULE","UNLOAD",e)},transformReply:void 0}});var S7e=E(nZ=>{"use strict";Object.defineProperty(nZ,"__esModule",{value:!0});nZ.default={parseCommand(t,e,r){t.push("MOVE"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var sZ=E(xI=>{"use strict";Object.defineProperty(xI,"__esModule",{value:!0});xI.parseMSetArguments=void 0;function v7e(t,e){if(Array.isArray(e)){if(e.length==0)throw new Error("empty toSet Argument");if(Array.isArray(e[0]))for(let r of e)t.pushKey(r[0]),t.push(r[1]);else{let r=e;for(let n=0;n{"use strict";Object.defineProperty(yi,"__esModule",{value:!0});yi.parseMSetExArguments=yi.ExpirationMode=yi.SetMode=void 0;var C7e=Ie();yi.SetMode={XX:"XX",NX:"NX"};yi.ExpirationMode={EX:"EX",PX:"PX",EXAT:"EXAT",PXAT:"PXAT",KEEPTTL:"KEEPTTL"};function I7e(t,e){let r=[];if(Array.isArray(e)){if(e.length==0)throw new Error("empty keyValuePairs Argument");if(Array.isArray(e[0]))r=e;else{let n=e;for(let s=0;s{"use strict";Object.defineProperty(iZ,"__esModule",{value:!0});var _cr=sZ();iZ.default={IS_READ_ONLY:!0,parseCommand(t,e){return t.push("MSETNX"),(0,_cr.parseMSetArguments)(t,e)},transformReply:void 0}});var R7e=E(aZ=>{"use strict";Object.defineProperty(aZ,"__esModule",{value:!0});aZ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("OBJECT","ENCODING"),t.pushKey(e)},transformReply:void 0}});var N7e=E(oZ=>{"use strict";Object.defineProperty(oZ,"__esModule",{value:!0});oZ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("OBJECT","FREQ"),t.pushKey(e)},transformReply:void 0}});var O7e=E(cZ=>{"use strict";Object.defineProperty(cZ,"__esModule",{value:!0});cZ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("OBJECT","IDLETIME"),t.pushKey(e)},transformReply:void 0}});var P7e=E(uZ=>{"use strict";Object.defineProperty(uZ,"__esModule",{value:!0});uZ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("OBJECT","REFCOUNT"),t.pushKey(e)},transformReply:void 0}});var D7e=E(lZ=>{"use strict";Object.defineProperty(lZ,"__esModule",{value:!0});lZ.default={parseCommand(t,e){t.push("PERSIST"),t.pushKey(e)},transformReply:void 0}});var k7e=E(dZ=>{"use strict";Object.defineProperty(dZ,"__esModule",{value:!0});dZ.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("PEXPIRE"),t.pushKey(e),t.push(r.toString()),n&&t.push(n)},transformReply:void 0}});var L7e=E(fZ=>{"use strict";Object.defineProperty(fZ,"__esModule",{value:!0});var Scr=Ie();fZ.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("PEXPIREAT"),t.pushKey(e),t.push((0,Scr.transformPXAT)(r)),n&&t.push(n)},transformReply:void 0}});var B7e=E(pZ=>{"use strict";Object.defineProperty(pZ,"__esModule",{value:!0});pZ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("PEXPIRETIME"),t.pushKey(e)},transformReply:void 0}});var M7e=E(mZ=>{"use strict";Object.defineProperty(mZ,"__esModule",{value:!0});mZ.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("PFADD"),t.pushKey(e),r&&t.pushVariadic(r)},transformReply:void 0}});var W7e=E(hZ=>{"use strict";Object.defineProperty(hZ,"__esModule",{value:!0});hZ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("PFCOUNT"),t.pushKeys(e)},transformReply:void 0}});var $7e=E(gZ=>{"use strict";Object.defineProperty(gZ,"__esModule",{value:!0});gZ.default={parseCommand(t,e,r){t.push("PFMERGE"),t.pushKey(e),r&&t.pushKeys(r)},transformReply:void 0}});var F7e=E(AZ=>{"use strict";Object.defineProperty(AZ,"__esModule",{value:!0});AZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("PING"),e&&t.push(e)},transformReply:void 0}});var U7e=E(yZ=>{"use strict";Object.defineProperty(yZ,"__esModule",{value:!0});yZ.default={parseCommand(t,e,r,n){t.push("PSETEX"),t.pushKey(e),t.push(r.toString(),n)},transformReply:void 0}});var q7e=E(xZ=>{"use strict";Object.defineProperty(xZ,"__esModule",{value:!0});xZ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("PTTL"),t.pushKey(e)},transformReply:void 0}});var j7e=E(bZ=>{"use strict";Object.defineProperty(bZ,"__esModule",{value:!0});bZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,IS_FORWARD_COMMAND:!0,parseCommand(t,e,r){t.push("PUBLISH",e,r)},transformReply:void 0}});var H7e=E(EZ=>{"use strict";Object.defineProperty(EZ,"__esModule",{value:!0});EZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("PUBSUB","CHANNELS"),e&&t.push(e)},transformReply:void 0}});var Q7e=E(_Z=>{"use strict";Object.defineProperty(_Z,"__esModule",{value:!0});_Z.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("PUBSUB","NUMPAT")},transformReply:void 0}});var G7e=E(SZ=>{"use strict";Object.defineProperty(SZ,"__esModule",{value:!0});SZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("PUBSUB","NUMSUB"),e&&t.pushVariadic(e)},transformReply(t){let e=Object.create(null),r=0;for(;r{"use strict";Object.defineProperty(vZ,"__esModule",{value:!0});vZ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("PUBSUB","SHARDNUMSUB"),e&&t.pushVariadic(e)},transformReply(t){let e=Object.create(null);for(let r=0;r{"use strict";Object.defineProperty(CZ,"__esModule",{value:!0});CZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("PUBSUB","SHARDCHANNELS"),e&&t.push(e)},transformReply:void 0}});var K7e=E(IZ=>{"use strict";Object.defineProperty(IZ,"__esModule",{value:!0});IZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("RANDOMKEY")},transformReply:void 0}});var Y7e=E(TZ=>{"use strict";Object.defineProperty(TZ,"__esModule",{value:!0});TZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("READONLY")},transformReply:void 0}});var J7e=E(wZ=>{"use strict";Object.defineProperty(wZ,"__esModule",{value:!0});wZ.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("RENAME"),t.pushKeys([e,r])},transformReply:void 0}});var X7e=E(RZ=>{"use strict";Object.defineProperty(RZ,"__esModule",{value:!0});RZ.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("RENAMENX"),t.pushKeys([e,r])},transformReply:void 0}});var Z7e=E(NZ=>{"use strict";Object.defineProperty(NZ,"__esModule",{value:!0});NZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("REPLICAOF",e,r.toString())},transformReply:void 0}});var e9e=E(OZ=>{"use strict";Object.defineProperty(OZ,"__esModule",{value:!0});OZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("RESTORE-ASKING")},transformReply:void 0}});var t9e=E(PZ=>{"use strict";Object.defineProperty(PZ,"__esModule",{value:!0});PZ.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("RESTORE"),t.pushKey(e),t.push(r.toString(),n),s?.REPLACE&&t.push("REPLACE"),s?.ABSTTL&&t.push("ABSTTL"),s?.IDLETIME&&t.push("IDLETIME",s.IDLETIME.toString()),s?.FREQ&&t.push("FREQ",s.FREQ.toString())},transformReply:void 0}});var r9e=E(DZ=>{"use strict";Object.defineProperty(DZ,"__esModule",{value:!0});DZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("ROLE")},transformReply(t){switch(t[0]){case"master":{let[e,r,n]=t;return{role:e,replicationOffest:r,replicas:n.map(s=>{let[i,a,o]=s;return{host:i,port:Number(a),replicationOffest:Number(o)}})}}case"slave":{let[e,r,n,s,i]=t;return{role:e,master:{host:r,port:n},state:s,dataReceived:i}}case"sentinel":{let[e,r]=t;return{role:e,masterNames:r}}}}}});var n9e=E(kZ=>{"use strict";Object.defineProperty(kZ,"__esModule",{value:!0});kZ.default={parseCommand(t,e,r){t.push("RPOP"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var s9e=E(LZ=>{"use strict";Object.defineProperty(LZ,"__esModule",{value:!0});LZ.default={parseCommand(t,e){t.push("RPOP"),t.pushKey(e)},transformReply:void 0}});var i9e=E(BZ=>{"use strict";Object.defineProperty(BZ,"__esModule",{value:!0});BZ.default={parseCommand(t,e,r){t.push("RPOPLPUSH"),t.pushKeys([e,r])},transformReply:void 0}});var a9e=E(MZ=>{"use strict";Object.defineProperty(MZ,"__esModule",{value:!0});MZ.default={parseCommand(t,e,r){t.push("RPUSH"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var o9e=E(WZ=>{"use strict";Object.defineProperty(WZ,"__esModule",{value:!0});WZ.default={parseCommand(t,e,r){t.push("RPUSHX"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var c9e=E($Z=>{"use strict";Object.defineProperty($Z,"__esModule",{value:!0});$Z.default={parseCommand(t,e,r){t.push("SADD"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var u9e=E(FZ=>{"use strict";Object.defineProperty(FZ,"__esModule",{value:!0});FZ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SCARD"),t.pushKey(e)},transformReply:void 0}});var l9e=E(UZ=>{"use strict";Object.defineProperty(UZ,"__esModule",{value:!0});UZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SCRIPT","DEBUG",e)},transformReply:void 0}});var d9e=E(qZ=>{"use strict";Object.defineProperty(qZ,"__esModule",{value:!0});qZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SCRIPT","EXISTS"),t.pushVariadic(e)},transformReply:void 0}});var f9e=E(jZ=>{"use strict";Object.defineProperty(jZ,"__esModule",{value:!0});jZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SCRIPT","FLUSH"),e&&t.push(e)},transformReply:void 0}});var p9e=E(HZ=>{"use strict";Object.defineProperty(HZ,"__esModule",{value:!0});HZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("SCRIPT","KILL")},transformReply:void 0}});var m9e=E(QZ=>{"use strict";Object.defineProperty(QZ,"__esModule",{value:!0});QZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SCRIPT","LOAD",e)},transformReply:void 0}});var h9e=E(GZ=>{"use strict";Object.defineProperty(GZ,"__esModule",{value:!0});GZ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SDIFF"),t.pushKeys(e)},transformReply:void 0}});var g9e=E(VZ=>{"use strict";Object.defineProperty(VZ,"__esModule",{value:!0});VZ.default={parseCommand(t,e,r){t.push("SDIFFSTORE"),t.pushKey(e),t.pushKeys(r)},transformReply:void 0}});var A9e=E(zZ=>{"use strict";Object.defineProperty(zZ,"__esModule",{value:!0});zZ.default={parseCommand(t,e,r,n){t.push("SET"),t.pushKey(e),t.push(typeof r=="number"?r.toString():r),n?.expiration?typeof n.expiration=="string"?t.push(n.expiration):n.expiration.type==="KEEPTTL"?t.push("KEEPTTL"):t.push(n.expiration.type,n.expiration.value.toString()):n?.EX!==void 0?t.push("EX",n.EX.toString()):n?.PX!==void 0?t.push("PX",n.PX.toString()):n?.EXAT!==void 0?t.push("EXAT",n.EXAT.toString()):n?.PXAT!==void 0?t.push("PXAT",n.PXAT.toString()):n?.KEEPTTL&&t.push("KEEPTTL"),n?.condition?(t.push(n.condition),n?.matchValue!==void 0&&t.push(n.matchValue)):n?.NX?t.push("NX"):n?.XX&&t.push("XX"),n?.GET&&t.push("GET")},transformReply:void 0}});var y9e=E(KZ=>{"use strict";Object.defineProperty(KZ,"__esModule",{value:!0});KZ.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("SETBIT"),t.pushKey(e),t.push(r.toString(),n.toString())},transformReply:void 0}});var x9e=E(YZ=>{"use strict";Object.defineProperty(YZ,"__esModule",{value:!0});YZ.default={parseCommand(t,e,r,n){t.push("SETEX"),t.pushKey(e),t.push(r.toString(),n)},transformReply:void 0}});var b9e=E(JZ=>{"use strict";Object.defineProperty(JZ,"__esModule",{value:!0});JZ.default={parseCommand(t,e,r){t.push("SETNX"),t.pushKey(e),t.push(r)},transformReply:void 0}});var E9e=E(XZ=>{"use strict";Object.defineProperty(XZ,"__esModule",{value:!0});XZ.default={parseCommand(t,e,r,n){t.push("SETRANGE"),t.pushKey(e),t.push(r.toString(),n)},transformReply:void 0}});var _9e=E(ZZ=>{"use strict";Object.defineProperty(ZZ,"__esModule",{value:!0});ZZ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SINTER"),t.pushKeys(e)},transformReply:void 0}});var S9e=E(eee=>{"use strict";Object.defineProperty(eee,"__esModule",{value:!0});eee.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("SINTERCARD"),t.pushKeysLength(e),typeof r=="number"?t.push("LIMIT",r.toString()):r?.LIMIT!==void 0&&t.push("LIMIT",r.LIMIT.toString())},transformReply:void 0}});var v9e=E(tee=>{"use strict";Object.defineProperty(tee,"__esModule",{value:!0});tee.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("SINTERSTORE"),t.pushKey(e),t.pushKeys(r)},transformReply:void 0}});var C9e=E(ree=>{"use strict";Object.defineProperty(ree,"__esModule",{value:!0});ree.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("SISMEMBER"),t.pushKey(e),t.push(r)},transformReply:void 0}});var I9e=E(nee=>{"use strict";Object.defineProperty(nee,"__esModule",{value:!0});nee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SMEMBERS"),t.pushKey(e)},transformReply:{2:void 0,3:void 0}}});var T9e=E(see=>{"use strict";Object.defineProperty(see,"__esModule",{value:!0});see.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("SMISMEMBER"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var w9e=E(iee=>{"use strict";Object.defineProperty(iee,"__esModule",{value:!0});iee.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("SMOVE"),t.pushKeys([e,r]),t.push(n)},transformReply:void 0}});var oB=E(bI=>{"use strict";Object.defineProperty(bI,"__esModule",{value:!0});bI.parseSortArguments=void 0;function R9e(t,e,r){if(t.pushKey(e),r?.BY&&t.push("BY",r.BY),r?.LIMIT&&t.push("LIMIT",r.LIMIT.offset.toString(),r.LIMIT.count.toString()),r?.GET)if(Array.isArray(r.GET))for(let n of r.GET)t.push("GET",n);else t.push("GET",r.GET);r?.DIRECTION&&t.push(r.DIRECTION),r?.ALPHA&&t.push("ALPHA")}bI.parseSortArguments=R9e;bI.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("SORT"),R9e(t,e,r)},transformReply:void 0}});var O9e=E(Cf=>{"use strict";var vcr=Cf&&Cf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Ccr=Cf&&Cf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Icr=Cf&&Cf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&vcr(e,t,r);return Ccr(e,t),e};Object.defineProperty(Cf,"__esModule",{value:!0});var N9e=Icr(oB());Cf.default={IS_READ_ONLY:!0,parseCommand(...t){t[0].push("SORT_RO"),(0,N9e.parseSortArguments)(...t)},transformReply:N9e.default.transformReply}});var P9e=E(EI=>{"use strict";var Tcr=EI&&EI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(EI,"__esModule",{value:!0});var wcr=Tcr(oB());EI.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){wcr.default.parseCommand(t,e,n),t.push("STORE",r)},transformReply:void 0}});var D9e=E(aee=>{"use strict";Object.defineProperty(aee,"__esModule",{value:!0});aee.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("SPOP"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var k9e=E(oee=>{"use strict";Object.defineProperty(oee,"__esModule",{value:!0});oee.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("SPOP"),t.pushKey(e)},transformReply:void 0}});var L9e=E(cee=>{"use strict";Object.defineProperty(cee,"__esModule",{value:!0});cee.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("SPUBLISH"),t.pushKey(e),t.push(r)},transformReply:void 0}});var lee=E(uee=>{"use strict";Object.defineProperty(uee,"__esModule",{value:!0});uee.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("SRANDMEMBER"),t.pushKey(e)},transformReply:void 0}});var M9e=E(_I=>{"use strict";var Rcr=_I&&_I.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(_I,"__esModule",{value:!0});var B9e=Rcr(lee());_I.default={IS_READ_ONLY:B9e.default.IS_READ_ONLY,parseCommand(t,e,r){B9e.default.parseCommand(t,e),t.push(r.toString())},transformReply:void 0}});var W9e=E(dee=>{"use strict";Object.defineProperty(dee,"__esModule",{value:!0});dee.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("SREM"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var $9e=E(fee=>{"use strict";Object.defineProperty(fee,"__esModule",{value:!0});var Ncr=cI();fee.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("SSCAN"),t.pushKey(e),(0,Ncr.parseScanArguments)(t,r,n)},transformReply([t,e]){return{cursor:t,members:e}}}});var F9e=E(pee=>{"use strict";Object.defineProperty(pee,"__esModule",{value:!0});pee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("STRLEN"),t.pushKey(e)},transformReply:void 0}});var U9e=E(mee=>{"use strict";Object.defineProperty(mee,"__esModule",{value:!0});mee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SUNION"),t.pushKeys(e)},transformReply:void 0}});var q9e=E(hee=>{"use strict";Object.defineProperty(hee,"__esModule",{value:!0});hee.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("SUNIONSTORE"),t.pushKey(e),t.pushKeys(r)},transformReply:void 0}});var j9e=E(gee=>{"use strict";Object.defineProperty(gee,"__esModule",{value:!0});gee.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("SWAPDB",e.toString(),r.toString())},transformReply:void 0}});var H9e=E(Aee=>{"use strict";Object.defineProperty(Aee,"__esModule",{value:!0});Aee.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("TIME")},transformReply:void 0}});var Q9e=E(yee=>{"use strict";Object.defineProperty(yee,"__esModule",{value:!0});yee.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("TOUCH"),t.pushKeys(e)},transformReply:void 0}});var G9e=E(xee=>{"use strict";Object.defineProperty(xee,"__esModule",{value:!0});xee.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("TTL"),t.pushKey(e)},transformReply:void 0}});var V9e=E(bee=>{"use strict";Object.defineProperty(bee,"__esModule",{value:!0});bee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("TYPE"),t.pushKey(e)},transformReply:void 0}});var z9e=E(Eee=>{"use strict";Object.defineProperty(Eee,"__esModule",{value:!0});Eee.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("UNLINK"),t.pushKeys(e)},transformReply:void 0}});var K9e=E(_ee=>{"use strict";Object.defineProperty(_ee,"__esModule",{value:!0});_ee.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("WAIT",e.toString(),r.toString())},transformReply:void 0}});var Y9e=E(See=>{"use strict";Object.defineProperty(See,"__esModule",{value:!0});See.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("XACK"),t.pushKey(e),t.push(r),t.pushVariadic(n)},transformReply:void 0}});var J9e=E(vee=>{"use strict";Object.defineProperty(vee,"__esModule",{value:!0});vee.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("XACKDEL"),t.pushKey(e),t.push(r),s&&t.push(s),t.push("IDS"),t.pushVariadicWithLength(n)},transformReply:void 0}});var Cee=E(SI=>{"use strict";Object.defineProperty(SI,"__esModule",{value:!0});SI.parseXAddArguments=void 0;function X9e(t,e,r,n,s,i){e.push("XADD"),e.pushKey(r),t&&e.push(t),i?.policy&&e.push(i.policy),i?.IDMPAUTO?e.push("IDMPAUTO",i.IDMPAUTO.pid):i?.IDMP&&e.push("IDMP",i.IDMP.pid,i.IDMP.iid),i?.TRIM&&(i.TRIM.strategy&&e.push(i.TRIM.strategy),i.TRIM.strategyModifier&&e.push(i.TRIM.strategyModifier),e.push(i.TRIM.threshold.toString()),i.TRIM.limit&&e.push("LIMIT",i.TRIM.limit.toString()),i.TRIM.policy&&e.push(i.TRIM.policy)),e.push(n);for(let[a,o]of Object.entries(s))e.push(a,o)}SI.parseXAddArguments=X9e;SI.default={IS_READ_ONLY:!1,parseCommand(...t){return X9e(void 0,...t)},transformReply:void 0}});var Z9e=E(Iee=>{"use strict";Object.defineProperty(Iee,"__esModule",{value:!0});var Ocr=Cee();Iee.default={IS_READ_ONLY:!1,parseCommand(...t){return(0,Ocr.parseXAddArguments)("NOMKSTREAM",...t)},transformReply:void 0}});var wee=E(Tee=>{"use strict";Object.defineProperty(Tee,"__esModule",{value:!0});var Pcr=Ie();Tee.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,i,a){t.push("XAUTOCLAIM"),t.pushKey(e),t.push(r,n,s.toString(),i),a?.COUNT&&t.push("COUNT",a.COUNT.toString())},transformReply(t,e,r){return{nextId:t[0],messages:t[1].map(Pcr.transformStreamMessageNullReply.bind(void 0,r)),deletedMessages:t[2]}}}});var tqe=E(vI=>{"use strict";var Dcr=vI&&vI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(vI,"__esModule",{value:!0});var eqe=Dcr(wee());vI.default={IS_READ_ONLY:eqe.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];eqe.default.parseCommand(...t),e.push("JUSTID")},transformReply(t){return{nextId:t[0],messages:t[1],deletedMessages:t[2]}}}});var Nee=E(Ree=>{"use strict";Object.defineProperty(Ree,"__esModule",{value:!0});var kcr=Ie();Ree.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,i,a){t.push("XCLAIM"),t.pushKey(e),t.push(r,n,s.toString()),t.pushVariadic(i),a?.IDLE!==void 0&&t.push("IDLE",a.IDLE.toString()),a?.TIME!==void 0&&t.push("TIME",(a.TIME instanceof Date?a.TIME.getTime():a.TIME).toString()),a?.RETRYCOUNT!==void 0&&t.push("RETRYCOUNT",a.RETRYCOUNT.toString()),a?.FORCE&&t.push("FORCE"),a?.LASTID!==void 0&&t.push("LASTID",a.LASTID)},transformReply(t,e,r){return t.map(kcr.transformStreamMessageNullReply.bind(void 0,r))}}});var nqe=E(CI=>{"use strict";var Lcr=CI&&CI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(CI,"__esModule",{value:!0});var rqe=Lcr(Nee());CI.default={IS_READ_ONLY:rqe.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];rqe.default.parseCommand(...t),e.push("JUSTID")},transformReply:void 0}});var sqe=E(Oee=>{"use strict";Object.defineProperty(Oee,"__esModule",{value:!0});Oee.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("XCFGSET"),t.pushKey(e),r?.IDMP_DURATION!==void 0&&t.push("IDMP-DURATION",r.IDMP_DURATION.toString()),r?.IDMP_MAXSIZE!==void 0&&t.push("IDMP-MAXSIZE",r.IDMP_MAXSIZE.toString())},transformReply:void 0}});var iqe=E(Pee=>{"use strict";Object.defineProperty(Pee,"__esModule",{value:!0});Pee.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("XDEL"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var aqe=E(Dee=>{"use strict";Object.defineProperty(Dee,"__esModule",{value:!0});Dee.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("XDELEX"),t.pushKey(e),n&&t.push(n),t.push("IDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var oqe=E(kee=>{"use strict";Object.defineProperty(kee,"__esModule",{value:!0});kee.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("XGROUP","CREATE"),t.pushKey(e),t.push(r,n),s?.MKSTREAM&&t.push("MKSTREAM"),s?.ENTRIESREAD&&t.push("ENTRIESREAD",s.ENTRIESREAD.toString())},transformReply:void 0}});var cqe=E(Lee=>{"use strict";Object.defineProperty(Lee,"__esModule",{value:!0});Lee.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("XGROUP","CREATECONSUMER"),t.pushKey(e),t.push(r,n)},transformReply:void 0}});var uqe=E(Bee=>{"use strict";Object.defineProperty(Bee,"__esModule",{value:!0});Bee.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("XGROUP","DELCONSUMER"),t.pushKey(e),t.push(r,n)},transformReply:void 0}});var lqe=E(Mee=>{"use strict";Object.defineProperty(Mee,"__esModule",{value:!0});Mee.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("XGROUP","DESTROY"),t.pushKey(e),t.push(r)},transformReply:void 0}});var dqe=E(Wee=>{"use strict";Object.defineProperty(Wee,"__esModule",{value:!0});Wee.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("XGROUP","SETID"),t.pushKey(e),t.push(r,n),s?.ENTRIESREAD&&t.push("ENTRIESREAD",s.ENTRIESREAD.toString())},transformReply:void 0}});var fqe=E($ee=>{"use strict";Object.defineProperty($ee,"__esModule",{value:!0});$ee.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("XINFO","CONSUMERS"),t.pushKey(e),t.push(r)},transformReply:{2:t=>t.map(e=>{let r=e;return{name:r[1],pending:r[3],idle:r[5],inactive:r[7]}}),3:void 0}}});var pqe=E(Fee=>{"use strict";Object.defineProperty(Fee,"__esModule",{value:!0});Fee.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("XINFO","GROUPS"),t.pushKey(e)},transformReply:{2:t=>t.map(e=>{let r=e;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 hqe=E(Uee=>{"use strict";Object.defineProperty(Uee,"__esModule",{value:!0});var mqe=Ie();Uee.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("XINFO","STREAM"),t.pushKey(e)},transformReply:{2(t){let e={};for(let r=0;r{"use strict";Object.defineProperty(qee,"__esModule",{value:!0});qee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("XLEN"),t.pushKey(e)},transformReply:void 0}});var Aqe=E(jee=>{"use strict";Object.defineProperty(jee,"__esModule",{value:!0});jee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n,s,i,a){t.push("XPENDING"),t.pushKey(e),t.push(r),a?.IDLE!==void 0&&t.push("IDLE",a.IDLE.toString()),t.push(n,s,i.toString()),a?.consumer&&t.push(a.consumer)},transformReply(t){return t.map(e=>{let r=e;return{id:r[0],consumer:r[1],millisecondsSinceLastDelivery:r[2],deliveriesCounter:r[3]}})}}});var yqe=E(Hee=>{"use strict";Object.defineProperty(Hee,"__esModule",{value:!0});Hee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("XPENDING"),t.pushKey(e),t.push(r)},transformReply(t){let e=t[3];return{pending:t[0],firstId:t[1],lastId:t[2],consumers:e===null?null:e.map(r=>{let[n,s]=r;return{name:n,deliveriesCounter:Number(s)}})}}}});var Qee=E(II=>{"use strict";Object.defineProperty(II,"__esModule",{value:!0});II.xRangeArguments=void 0;var Bcr=Ie();function xqe(t,e,r){let n=[t,e];return r?.COUNT&&n.push("COUNT",r.COUNT.toString()),n}II.xRangeArguments=xqe;II.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,...r){t.push("XRANGE"),t.pushKey(e),t.pushVariadic(xqe(r[0],r[1],r[2]))},transformReply(t,e,r){return t.map(Bcr.transformStreamMessageReply.bind(void 0,r))}}});var Gee=E(TI=>{"use strict";Object.defineProperty(TI,"__esModule",{value:!0});TI.pushXReadStreams=void 0;var Mcr=Ie();function bqe(t,e){if(t.push("STREAMS"),Array.isArray(e)){for(let r=0;r{"use strict";Object.defineProperty(Vee,"__esModule",{value:!0});var Wcr=Gee(),$cr=Ie();Vee.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("XREADGROUP","GROUP",e,r),s?.COUNT!==void 0&&t.push("COUNT",s.COUNT.toString()),s?.BLOCK!==void 0&&t.push("BLOCK",s.BLOCK.toString()),s?.NOACK&&t.push("NOACK"),s?.CLAIM!==void 0&&t.push("CLAIM",s.CLAIM.toString()),(0,Wcr.pushXReadStreams)(t,n)},transformReply:{2:$cr.transformStreamsMessagesReplyResp2,3:void 0}}});var _qe=E(If=>{"use strict";var Fcr=If&&If.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Ucr=If&&If.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),qcr=If&&If.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Fcr(e,t,r);return Ucr(e,t),e};Object.defineProperty(If,"__esModule",{value:!0});var cB=qcr(Qee());If.default={CACHEABLE:cB.default.CACHEABLE,IS_READ_ONLY:cB.default.IS_READ_ONLY,parseCommand(t,e,...r){t.push("XREVRANGE"),t.pushKey(e),t.pushVariadic((0,cB.xRangeArguments)(r[0],r[1],r[2]))},transformReply:cB.default.transformReply}});var Sqe=E(zee=>{"use strict";Object.defineProperty(zee,"__esModule",{value:!0});zee.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("XSETID"),t.pushKey(e),t.push(r),n?.ENTRIESADDED&&t.push("ENTRIESADDED",n.ENTRIESADDED.toString()),n?.MAXDELETEDID&&t.push("MAXDELETEDID",n.MAXDELETEDID)},transformReply:void 0}});var vqe=E(Kee=>{"use strict";Object.defineProperty(Kee,"__esModule",{value:!0});Kee.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("XTRIM"),t.pushKey(e),t.push(r),s?.strategyModifier&&t.push(s.strategyModifier),t.push(n.toString()),s?.LIMIT&&t.push("LIMIT",s.LIMIT.toString()),s?.policy&&t.push(s.policy)},transformReply:void 0}});var Yee=E(wI=>{"use strict";Object.defineProperty(wI,"__esModule",{value:!0});wI.pushMembers=void 0;var Iqe=Ie();wI.default={parseCommand(t,e,r,n){t.push("ZADD"),t.pushKey(e),n?.condition?t.push(n.condition):n?.NX?t.push("NX"):n?.XX&&t.push("XX"),n?.comparison?t.push(n.comparison):n?.LT?t.push("LT"):n?.GT&&t.push("GT"),n?.CH&&t.push("CH"),Tqe(t,r)},transformReply:Iqe.transformDoubleReply};function Tqe(t,e){if(Array.isArray(e))for(let r of e)Cqe(t,r);else Cqe(t,e)}wI.pushMembers=Tqe;function Cqe(t,e){t.push((0,Iqe.transformDoubleArgument)(e.score),e.value)}});var wqe=E(Jee=>{"use strict";Object.defineProperty(Jee,"__esModule",{value:!0});var jcr=Yee(),Hcr=Ie();Jee.default={parseCommand(t,e,r,n){t.push("ZADD"),t.pushKey(e),n?.condition&&t.push(n.condition),n?.comparison&&t.push(n.comparison),n?.CH&&t.push("CH"),t.push("INCR"),(0,jcr.pushMembers)(t,r)},transformReply:Hcr.transformNullableDoubleReply}});var Rqe=E(Xee=>{"use strict";Object.defineProperty(Xee,"__esModule",{value:!0});Xee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("ZCARD"),t.pushKey(e)},transformReply:void 0}});var Oqe=E(Zee=>{"use strict";Object.defineProperty(Zee,"__esModule",{value:!0});var Nqe=Ie();Zee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("ZCOUNT"),t.pushKey(e),t.push((0,Nqe.transformStringDoubleArgument)(r),(0,Nqe.transformStringDoubleArgument)(n))},transformReply:void 0}});var tte=E(ete=>{"use strict";Object.defineProperty(ete,"__esModule",{value:!0});ete.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("ZDIFF"),t.pushKeysLength(e)},transformReply:void 0}});var Dqe=E(RI=>{"use strict";var Qcr=RI&&RI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(RI,"__esModule",{value:!0});var Gcr=Ie(),Pqe=Qcr(tte());RI.default={IS_READ_ONLY:Pqe.default.IS_READ_ONLY,parseCommand(t,e){Pqe.default.parseCommand(t,e),t.push("WITHSCORES")},transformReply:Gcr.transformSortedSetReply}});var kqe=E(rte=>{"use strict";Object.defineProperty(rte,"__esModule",{value:!0});rte.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ZDIFFSTORE"),t.pushKey(e),t.pushKeysLength(r)},transformReply:void 0}});var Bqe=E(nte=>{"use strict";Object.defineProperty(nte,"__esModule",{value:!0});var Lqe=Ie();nte.default={parseCommand(t,e,r,n){t.push("ZINCRBY"),t.pushKey(e),t.push((0,Lqe.transformDoubleArgument)(r),n)},transformReply:Lqe.transformDoubleReply}});var uB=E(NI=>{"use strict";Object.defineProperty(NI,"__esModule",{value:!0});NI.parseZInterArguments=void 0;var Vcr=Ie();function Mqe(t,e,r){(0,Vcr.parseZKeysArguments)(t,e),r?.AGGREGATE&&t.push("AGGREGATE",r.AGGREGATE)}NI.parseZInterArguments=Mqe;NI.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ZINTER"),Mqe(t,e,r)},transformReply:void 0}});var $qe=E(OI=>{"use strict";var zcr=OI&&OI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(OI,"__esModule",{value:!0});var Kcr=Ie(),Wqe=zcr(uB());OI.default={IS_READ_ONLY:Wqe.default.IS_READ_ONLY,parseCommand(...t){Wqe.default.parseCommand(...t),t[0].push("WITHSCORES")},transformReply:Kcr.transformSortedSetReply}});var Fqe=E(ste=>{"use strict";Object.defineProperty(ste,"__esModule",{value:!0});ste.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ZINTERCARD"),t.pushKeysLength(e),typeof r=="number"?t.push("LIMIT",r.toString()):r?.LIMIT&&t.push("LIMIT",r.LIMIT.toString())},transformReply:void 0}});var Uqe=E(ite=>{"use strict";Object.defineProperty(ite,"__esModule",{value:!0});var Ycr=uB();ite.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("ZINTERSTORE"),t.pushKey(e),(0,Ycr.parseZInterArguments)(t,r,n)},transformReply:void 0}});var qqe=E(ate=>{"use strict";Object.defineProperty(ate,"__esModule",{value:!0});ate.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("ZLEXCOUNT"),t.pushKey(e),t.push(r),t.push(n)},transformReply:void 0}});var jqe=E(ote=>{"use strict";Object.defineProperty(ote,"__esModule",{value:!0});var Jcr=Ie();ote.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ZMSCORE"),t.pushKey(e),t.pushVariadic(r)},transformReply:{2:(t,e,r)=>t.map((0,Jcr.createTransformNullableDoubleReplyResp2Func)(e,r)),3:void 0}}});var Hqe=E(cte=>{"use strict";Object.defineProperty(cte,"__esModule",{value:!0});var Xcr=Ie();cte.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("ZPOPMAX"),t.pushKey(e),t.push(r.toString())},transformReply:Xcr.transformSortedSetReply}});var lte=E(ute=>{"use strict";Object.defineProperty(ute,"__esModule",{value:!0});var Zcr=Ie();ute.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("ZPOPMAX"),t.pushKey(e)},transformReply:{2:(t,e,r)=>t.length===0?null:{value:t[0],score:Zcr.transformDoubleReply[2](t[1],e,r)},3:t=>t.length===0?null:{value:t[0],score:t[1]}}}});var Qqe=E(dte=>{"use strict";Object.defineProperty(dte,"__esModule",{value:!0});var eur=Ie();dte.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("ZPOPMIN"),t.pushKey(e),t.push(r.toString())},transformReply:eur.transformSortedSetReply}});var Gqe=E(PI=>{"use strict";var tur=PI&&PI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(PI,"__esModule",{value:!0});var rur=tur(lte());PI.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("ZPOPMIN"),t.pushKey(e)},transformReply:rur.default.transformReply}});var pte=E(fte=>{"use strict";Object.defineProperty(fte,"__esModule",{value:!0});fte.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("ZRANDMEMBER"),t.pushKey(e)},transformReply:void 0}});var mte=E(DI=>{"use strict";var nur=DI&&DI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(DI,"__esModule",{value:!0});var Vqe=nur(pte());DI.default={IS_READ_ONLY:Vqe.default.IS_READ_ONLY,parseCommand(t,e,r){Vqe.default.parseCommand(t,e),t.push(r.toString())},transformReply:void 0}});var Kqe=E(kI=>{"use strict";var sur=kI&&kI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(kI,"__esModule",{value:!0});var iur=Ie(),zqe=sur(mte());kI.default={IS_READ_ONLY:zqe.default.IS_READ_ONLY,parseCommand(t,e,r){zqe.default.parseCommand(t,e,r),t.push("WITHSCORES")},transformReply:iur.transformSortedSetReply}});var hte=E(LI=>{"use strict";Object.defineProperty(LI,"__esModule",{value:!0});LI.zRangeArgument=void 0;var Yqe=Ie();function Jqe(t,e,r){let n=[(0,Yqe.transformStringDoubleArgument)(t),(0,Yqe.transformStringDoubleArgument)(e)];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}LI.zRangeArgument=Jqe;LI.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("ZRANGE"),t.pushKey(e),t.pushVariadic(Jqe(r,n,s))},transformReply:void 0}});var Xqe=E(BI=>{"use strict";var aur=BI&&BI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(BI,"__esModule",{value:!0});var our=Ie(),gte=aur(hte());BI.default={CACHEABLE:gte.default.CACHEABLE,IS_READ_ONLY:gte.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];gte.default.parseCommand(...t),e.push("WITHSCORES")},transformReply:our.transformSortedSetReply}});var eje=E(Ate=>{"use strict";Object.defineProperty(Ate,"__esModule",{value:!0});var Zqe=Ie();Ate.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("ZRANGEBYLEX"),t.pushKey(e),t.push((0,Zqe.transformStringDoubleArgument)(r),(0,Zqe.transformStringDoubleArgument)(n)),s?.LIMIT&&t.push("LIMIT",s.LIMIT.offset.toString(),s.LIMIT.count.toString())},transformReply:void 0}});var xte=E(yte=>{"use strict";Object.defineProperty(yte,"__esModule",{value:!0});var tje=Ie();yte.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("ZRANGEBYSCORE"),t.pushKey(e),t.push((0,tje.transformStringDoubleArgument)(r),(0,tje.transformStringDoubleArgument)(n)),s?.LIMIT&&t.push("LIMIT",s.LIMIT.offset.toString(),s.LIMIT.count.toString())},transformReply:void 0}});var rje=E(MI=>{"use strict";var cur=MI&&MI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(MI,"__esModule",{value:!0});var uur=Ie(),bte=cur(xte());MI.default={CACHEABLE:bte.default.CACHEABLE,IS_READ_ONLY:bte.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];bte.default.parseCommand(...t),e.push("WITHSCORES")},transformReply:uur.transformSortedSetReply}});var sje=E(Ete=>{"use strict";Object.defineProperty(Ete,"__esModule",{value:!0});var nje=Ie();Ete.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,i){switch(t.push("ZRANGESTORE"),t.pushKey(e),t.pushKey(r),t.push((0,nje.transformStringDoubleArgument)(n),(0,nje.transformStringDoubleArgument)(s)),i?.BY){case"SCORE":t.push("BYSCORE");break;case"LEX":t.push("BYLEX");break}i?.REV&&t.push("REV"),i?.LIMIT&&t.push("LIMIT",i.LIMIT.offset.toString(),i.LIMIT.count.toString())},transformReply:void 0}});var aje=E(_te=>{"use strict";Object.defineProperty(_te,"__esModule",{value:!0});var ije=Ie();_te.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("ZREMRANGEBYSCORE"),t.pushKey(e),t.push((0,ije.transformStringDoubleArgument)(r),(0,ije.transformStringDoubleArgument)(n))},transformReply:void 0}});var vte=E(Ste=>{"use strict";Object.defineProperty(Ste,"__esModule",{value:!0});Ste.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ZRANK"),t.pushKey(e),t.push(r)},transformReply:void 0}});var oje=E(WI=>{"use strict";var lur=WI&&WI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(WI,"__esModule",{value:!0});var Cte=lur(vte());WI.default={CACHEABLE:Cte.default.CACHEABLE,IS_READ_ONLY:Cte.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];Cte.default.parseCommand(...t),e.push("WITHSCORE")},transformReply:{2:t=>t===null?null:{rank:t[0],score:Number(t[1])},3:t=>t===null?null:{rank:t[0],score:t[1]}}}});var cje=E(Ite=>{"use strict";Object.defineProperty(Ite,"__esModule",{value:!0});Ite.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("ZREM"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var lje=E(Tte=>{"use strict";Object.defineProperty(Tte,"__esModule",{value:!0});var uje=Ie();Tte.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("ZREMRANGEBYLEX"),t.pushKey(e),t.push((0,uje.transformStringDoubleArgument)(r),(0,uje.transformStringDoubleArgument)(n))},transformReply:void 0}});var dje=E(wte=>{"use strict";Object.defineProperty(wte,"__esModule",{value:!0});wte.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("ZREMRANGEBYRANK"),t.pushKey(e),t.push(r.toString(),n.toString())},transformReply:void 0}});var fje=E(Rte=>{"use strict";Object.defineProperty(Rte,"__esModule",{value:!0});Rte.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ZREVRANK"),t.pushKey(e),t.push(r)},transformReply:void 0}});var pje=E(Nte=>{"use strict";Object.defineProperty(Nte,"__esModule",{value:!0});var dur=cI(),fur=Ie();Nte.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("ZSCAN"),t.pushKey(e),(0,dur.parseScanArguments)(t,r,n)},transformReply([t,e]){return{cursor:t,members:fur.transformSortedSetReply[2](e)}}}});var mje=E(Ote=>{"use strict";Object.defineProperty(Ote,"__esModule",{value:!0});var pur=Ie();Ote.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ZSCORE"),t.pushKey(e),t.push(r)},transformReply:pur.transformNullableDoubleReply}});var Dte=E(Pte=>{"use strict";Object.defineProperty(Pte,"__esModule",{value:!0});var mur=Ie();Pte.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ZUNION"),(0,mur.parseZKeysArguments)(t,e),r?.AGGREGATE&&t.push("AGGREGATE",r.AGGREGATE)},transformReply:void 0}});var gje=E($I=>{"use strict";var hur=$I&&$I.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty($I,"__esModule",{value:!0});var gur=Ie(),hje=hur(Dte());$I.default={IS_READ_ONLY:hje.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];hje.default.parseCommand(...t),e.push("WITHSCORES")},transformReply:gur.transformSortedSetReply}});var Aje=E(kte=>{"use strict";Object.defineProperty(kte,"__esModule",{value:!0});var Aur=Ie();kte.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("ZUNIONSTORE"),t.pushKey(e),(0,Aur.parseZKeysArguments)(t,r),n?.AGGREGATE&&t.push("AGGREGATE",n.AGGREGATE)},transformReply:void 0}});var xje=E(Lte=>{"use strict";Object.defineProperty(Lte,"__esModule",{value:!0});var yje=Ie();Lte.default={parseCommand(t,e,r,n,s){t.push("VADD"),t.pushKey(e),s?.REDUCE!==void 0&&t.push("REDUCE",s.REDUCE.toString()),t.push("VALUES",r.length.toString());for(let i of r)t.push((0,yje.transformDoubleArgument)(i));t.push(n),s?.CAS&&t.push("CAS"),s?.QUANT&&t.push(s.QUANT),s?.EF!==void 0&&t.push("EF",s.EF.toString()),s?.SETATTR&&t.push("SETATTR",JSON.stringify(s.SETATTR)),s?.M!==void 0&&t.push("M",s.M.toString())},transformReply:yje.transformBooleanReply}});var bje=E(Bte=>{"use strict";Object.defineProperty(Bte,"__esModule",{value:!0});Bte.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("VCARD"),t.pushKey(e)},transformReply:void 0}});var Eje=E(Mte=>{"use strict";Object.defineProperty(Mte,"__esModule",{value:!0});Mte.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("VDIM"),t.pushKey(e)},transformReply:void 0}});var $te=E(Wte=>{"use strict";Object.defineProperty(Wte,"__esModule",{value:!0});var yur=Ie();Wte.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("VEMB"),t.pushKey(e),t.push(r)},transformReply:yur.transformDoubleArrayReply}});var Sje=E(FI=>{"use strict";var xur=FI&&FI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(FI,"__esModule",{value:!0});var _je=Ie(),bur=xur($te()),Eur={2:t=>({quantization:t[0],raw:t[1],l2Norm:_je.transformDoubleReply[2](t[2]),...t[3]!==void 0&&{quantizationRange:_je.transformDoubleReply[2](t[3])}}),3:t=>({quantization:t[0],raw:t[1],l2Norm:t[2],quantizationRange:t[3]})};FI.default={IS_READ_ONLY:!0,parseCommand(t,e,r){bur.default.parseCommand(t,e,r),t.push("RAW")},transformReply:Eur}});var vje=E(Fte=>{"use strict";Object.defineProperty(Fte,"__esModule",{value:!0});var _ur=Ie();Fte.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("VGETATTR"),t.pushKey(e),t.push(r)},transformReply:_ur.transformRedisJsonNullReply}});var Cje=E(Ute=>{"use strict";Object.defineProperty(Ute,"__esModule",{value:!0});Ute.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("VINFO"),t.pushKey(e)},transformReply:{2:t=>{let e=Object.create(null);for(let r=0;r{"use strict";Object.defineProperty(qte,"__esModule",{value:!0});qte.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("VLINKS"),t.pushKey(e),t.push(r)},transformReply:void 0}});var Tje=E(UI=>{"use strict";var Sur=UI&&UI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(UI,"__esModule",{value:!0});var vur=Ie(),Ije=Sur(jte());function Cur(t){let e=[];for(let r of t){let n=Object.create(null);for(let s=0;s{"use strict";Object.defineProperty(Hte,"__esModule",{value:!0});Hte.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("VRANDMEMBER"),t.pushKey(e),r!==void 0&&t.push(r.toString())},transformReply:void 0}});var Rje=E(Qte=>{"use strict";Object.defineProperty(Qte,"__esModule",{value:!0});Qte.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("VRANGE"),t.pushKey(e),t.push(r,n),s!==void 0&&t.push(s.toString())},transformReply:void 0}});var Nje=E(Gte=>{"use strict";Object.defineProperty(Gte,"__esModule",{value:!0});var Iur=Ie();Gte.default={parseCommand(t,e,r){t.push("VREM"),t.pushKey(e),t.push(r)},transformReply:Iur.transformBooleanReply}});var Oje=E(Vte=>{"use strict";Object.defineProperty(Vte,"__esModule",{value:!0});var Tur=Ie();Vte.default={parseCommand(t,e,r,n){t.push("VSETATTR"),t.pushKey(e),t.push(r),typeof n=="object"&&n!==null?t.push(JSON.stringify(n)):t.push(n)},transformReply:Tur.transformBooleanReply}});var Kte=E(zte=>{"use strict";Object.defineProperty(zte,"__esModule",{value:!0});var wur=Ie();zte.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){if(t.push("VSIM"),t.pushKey(e),Array.isArray(r)){t.push("VALUES",r.length.toString());for(let s of r)t.push((0,wur.transformDoubleArgument)(s))}else t.push("ELE",r);n?.COUNT!==void 0&&t.push("COUNT",n.COUNT.toString()),n?.EPSILON!==void 0&&t.push("EPSILON",n.EPSILON.toString()),n?.EF!==void 0&&t.push("EF",n.EF.toString()),n?.FILTER&&t.push("FILTER",n.FILTER),n?.["FILTER-EF"]!==void 0&&t.push("FILTER-EF",n["FILTER-EF"].toString()),n?.TRUTH&&t.push("TRUTH"),n?.NOTHREAD&&t.push("NOTHREAD")},transformReply:void 0}});var Dje=E(qI=>{"use strict";var Rur=qI&&qI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(qI,"__esModule",{value:!0});var Nur=Ie(),Pje=Rur(Kte());qI.default={IS_READ_ONLY:Pje.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];Pje.default.parseCommand(...t),e.push("WITHSCORES")},transformReply:{2:t=>{let e=t,r={};for(let n=0;n{"use strict";Object.defineProperty(Yte,"__esModule",{value:!0});var Our=Ie(),Pur=t=>t;Yte.default={CACHEABLE:!1,IS_READ_ONLY:!0,parseCommand(t,...e){let r=["LATENCY","HISTOGRAM"];e.length!==0&&r.push(...e),t.push(...r)},transformReply:{2:t=>{let e={};if(t.length===0)return e;for(let r=1;r{"use strict";var Dur=Qn&&Qn.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),kur=Qn&&Qn.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),jI=Qn&&Qn.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Dur(e,t,r);return kur(e,t),e},$=Qn&&Qn.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Qn,"__esModule",{value:!0});Qn.NON_STICKY_COMMANDS=Qn.REDIS_FLUSH_MODES=Qn.COMMAND_LIST_FILTER_BY=Qn.CLUSTER_SLOT_STATES=Qn.FAILOVER_MODES=Qn.CLIENT_KILL_FILTERS=void 0;var Lje=$(cWe()),Bje=$(uWe()),Mje=$(lWe()),Wje=$(dWe()),$je=$(fWe()),Fje=$(pWe()),Uje=$(mWe()),qje=$(_We()),jje=$(HK()),Hje=$(SWe()),Qje=$(vWe()),Gje=$(CWe()),Vje=$(IWe()),zje=$(TWe()),Kje=$(YK()),Yje=$(wWe()),Jje=$(RWe()),Xje=$(NWe()),Zje=$(OWe()),eHe=$(PWe()),tHe=$(DWe()),rHe=$(kWe()),nHe=$(LWe()),sHe=$(BWe()),iHe=$($We()),aHe=$(cY()),oHe=$(FWe()),cHe=$(UWe()),uHe=$(QWe()),lHe=$(fY()),dHe=$(VWe()),fHe=$(zWe()),pHe=$(KWe()),mHe=$(YWe()),hHe=$(JWe()),gHe=$(yY()),Jte=jI(ZWe());Object.defineProperty(Qn,"CLIENT_KILL_FILTERS",{enumerable:!0,get:function(){return Jte.CLIENT_KILL_FILTERS}});var AHe=$(e$e()),yHe=$(t$e()),xHe=$(r$e()),bHe=$(n$e()),EHe=$(s$e()),_He=$(i$e()),SHe=$(a$e()),vHe=$(o$e()),CHe=$(c$e()),IHe=$(u$e()),THe=$(l$e()),wHe=$(d$e()),RHe=$(f$e()),NHe=$(p$e()),OHe=$(m$e()),Xte=jI(h$e());Object.defineProperty(Qn,"FAILOVER_MODES",{enumerable:!0,get:function(){return Xte.FAILOVER_MODES}});var PHe=$(g$e()),DHe=$(A$e()),kHe=$(y$e()),LHe=$(x$e()),BHe=$(b$e()),MHe=$(E$e()),WHe=$(_$e()),$He=$(S$e()),FHe=$(v$e()),UHe=$(C$e()),qHe=$(I$e()),jHe=$(T$e()),HHe=$(w$e()),QHe=$(R$e()),GHe=$(N$e()),Zte=jI(O$e());Object.defineProperty(Qn,"CLUSTER_SLOT_STATES",{enumerable:!0,get:function(){return Zte.CLUSTER_SLOT_STATES}});var VHe=$(D$e()),zHe=$(k$e()),KHe=$(L$e()),YHe=$(B$e()),JHe=$(M$e()),ere=jI(W$e());Object.defineProperty(Qn,"COMMAND_LIST_FILTER_BY",{enumerable:!0,get:function(){return ere.COMMAND_LIST_FILTER_BY}});var XHe=$($$e()),ZHe=$(F$e()),eQe=$(U$e()),tQe=$(q$e()),rQe=$(j$e()),nQe=$(H$e()),sQe=$(Q$e()),iQe=$(G$e()),aQe=$(V$e()),oQe=$(z$e()),cQe=$(K$e()),uQe=$(Y$e()),lQe=$(J$e()),dQe=$(X$e()),fQe=$(tFe()),pQe=$(cg()),mQe=$(nFe()),hQe=$(iFe()),gQe=$(oFe()),AQe=$(cFe()),yQe=$(uFe()),xQe=$(lFe()),bQe=$(AFe()),EQe=$(xFe()),_Qe=$(EFe()),SQe=$(iB()),vQe=$(ZC()),CQe=$(IFe()),IQe=$(wFe()),TQe=$(NFe()),wQe=$(gJ()),RQe=$(nI()),NQe=$(eI()),OQe=$(lg()),PQe=$(OFe()),DQe=$(PFe()),kQe=$(DFe()),LQe=$(kFe()),BQe=$(LFe()),MQe=$(BFe()),WQe=$(MFe()),$Qe=$(WFe()),FQe=$($Fe()),UQe=$(FFe()),qQe=$(UFe()),tre=jI(qFe());Object.defineProperty(Qn,"REDIS_FLUSH_MODES",{enumerable:!0,get:function(){return tre.REDIS_FLUSH_MODES}});var jQe=$(jFe()),HQe=$(QFe()),QQe=$(VFe()),GQe=$(zFe()),VQe=$(KFe()),zQe=$(YFe()),KQe=$(JFe()),YQe=$(XFe()),JQe=$(LJ()),XQe=$(ZFe()),ZQe=$(eUe()),eGe=$(tUe()),tGe=$(rUe()),rGe=$(qJ()),nGe=$(nUe()),sGe=$(sUe()),iGe=$(iUe()),aGe=$(aUe()),oGe=$(oUe()),cGe=$(cUe()),uGe=$(uUe()),lGe=$(lUe()),dGe=$(dUe()),fGe=$(fUe()),pGe=$(pUe()),mGe=$(mUe()),hGe=$(hUe()),gGe=$(gUe()),AGe=$(AUe()),yGe=$(yUe()),xGe=$(xUe()),bGe=$(bUe()),EGe=$(EUe()),_Ge=$(_Ue()),SGe=$(SUe()),vGe=$(uX()),CGe=$(CUe()),IGe=$(TUe()),TGe=$(RUe()),wGe=$(NUe()),RGe=$(OUe()),NGe=$(PUe()),OGe=$(DUe()),PGe=$(LUe()),DGe=$(BUe()),kGe=$(MUe()),LGe=$(WUe()),BGe=$($Ue()),MGe=$(FUe()),WGe=$(UUe()),$Ge=$(qUe()),FGe=$(jUe()),UGe=$(HUe()),qGe=$(QUe()),jGe=$(IX()),HGe=$(GUe()),QGe=$(VUe()),GGe=$(zUe()),VGe=$(JUe()),zGe=$(NX()),KGe=$(ZUe()),YGe=$(aB()),JGe=$(e7e()),XGe=$(t7e()),ZGe=$(r7e()),eVe=$(n7e()),tVe=$(aY()),Lur=$(s7e()),rVe=$(i7e()),nVe=$(MX()),sVe=$(a7e()),iVe=$($X()),aVe=$(o7e()),oVe=$(c7e()),cVe=$(u7e()),uVe=$(l7e()),lVe=$(d7e()),dVe=$(f7e()),fVe=$(p7e()),pVe=$(m7e()),mVe=$(h7e()),hVe=$(g7e()),gVe=$(A7e()),AVe=$(y7e()),yVe=$(x7e()),xVe=$(b7e()),bVe=$(E7e()),EVe=$(_7e()),_Ve=$(S7e()),SVe=$(sZ()),vVe=$(T7e()),CVe=$(w7e()),IVe=$(R7e()),TVe=$(N7e()),wVe=$(O7e()),RVe=$(P7e()),NVe=$(D7e()),OVe=$(k7e()),PVe=$(L7e()),DVe=$(B7e()),kVe=$(M7e()),LVe=$(W7e()),BVe=$($7e()),MVe=$(F7e()),WVe=$(U7e()),$Ve=$(q7e()),FVe=$(j7e()),UVe=$(H7e()),qVe=$(Q7e()),jVe=$(G7e()),HVe=$(V7e()),QVe=$(z7e()),GVe=$(K7e()),VVe=$(Y7e()),zVe=$(J7e()),KVe=$(X7e()),YVe=$(Z7e()),JVe=$(e9e()),XVe=$(t9e()),ZVe=$(r9e()),eze=$(n9e()),tze=$(s9e()),rze=$(i9e()),nze=$(a9e()),sze=$(o9e()),ize=$(c9e()),aze=$(cI()),oze=$(u9e()),cze=$(l9e()),uze=$(d9e()),lze=$(f9e()),dze=$(p9e()),fze=$(m9e()),pze=$(h9e()),mze=$(g9e()),hze=$(A9e()),gze=$(y9e()),Aze=$(x9e()),yze=$(b9e()),xze=$(E9e()),bze=$(_9e()),Eze=$(S9e()),_ze=$(v9e()),Sze=$(C9e()),vze=$(I9e()),Cze=$(T9e()),Ize=$(w9e()),Tze=$(O9e()),wze=$(P9e()),Rze=$(oB()),Nze=$(D9e()),Oze=$(k9e()),Pze=$(L9e()),Dze=$(M9e()),kze=$(lee()),Lze=$(W9e()),Bze=$($9e()),Mze=$(F9e()),Wze=$(U9e()),$ze=$(q9e()),Fze=$(j9e()),Uze=$(H9e()),qze=$(Q9e()),jze=$(G9e()),Hze=$(V9e()),Qze=$(z9e()),Gze=$(K9e()),Vze=$(Y9e()),zze=$(J9e()),Kze=$(Z9e()),Yze=$(Cee()),Jze=$(tqe()),Xze=$(wee()),Zze=$(nqe()),eKe=$(Nee()),tKe=$(sqe()),rKe=$(iqe()),nKe=$(aqe()),sKe=$(oqe()),iKe=$(cqe()),aKe=$(uqe()),oKe=$(lqe()),cKe=$(dqe()),uKe=$(fqe()),lKe=$(pqe()),dKe=$(hqe()),fKe=$(gqe()),pKe=$(Aqe()),mKe=$(yqe()),hKe=$(Qee()),gKe=$(Gee()),AKe=$(Eqe()),yKe=$(_qe()),xKe=$(Sqe()),bKe=$(vqe()),EKe=$(wqe()),_Ke=$(Yee()),SKe=$(Rqe()),vKe=$(Oqe()),CKe=$(Dqe()),IKe=$(tte()),TKe=$(kqe()),wKe=$(Bqe()),RKe=$($qe()),NKe=$(uB()),OKe=$(Fqe()),PKe=$(Uqe()),DKe=$(qqe()),kKe=$(lY()),LKe=$(jqe()),BKe=$(Hqe()),MKe=$(lte()),WKe=$(Qqe()),$Ke=$(Gqe()),FKe=$(Kqe()),UKe=$(mte()),qKe=$(pte()),jKe=$(Xqe()),HKe=$(hte()),QKe=$(eje()),GKe=$(rje()),VKe=$(xte()),zKe=$(sje()),KKe=$(aje()),YKe=$(oje()),JKe=$(vte()),XKe=$(cje()),ZKe=$(lje()),eYe=$(dje()),tYe=$(fje()),rYe=$(pje()),nYe=$(mje()),sYe=$(gje()),iYe=$(Dte()),aYe=$(Aje()),oYe=$(xje()),cYe=$(bje()),uYe=$(Eje()),lYe=$($te()),dYe=$(Sje()),fYe=$(vje()),pYe=$(Cje()),mYe=$(jte()),hYe=$(Tje()),gYe=$(wje()),AYe=$(Rje()),yYe=$(Nje()),xYe=$(Oje()),bYe=$(Kte()),EYe=$(Dje()),_Ye=$(kje());Qn.default={ACL_CAT:Lje.default,aclCat:Lje.default,ACL_DELUSER:Bje.default,aclDelUser:Bje.default,ACL_DRYRUN:Mje.default,aclDryRun:Mje.default,ACL_GENPASS:Wje.default,aclGenPass:Wje.default,ACL_GETUSER:$je.default,aclGetUser:$je.default,ACL_LIST:Fje.default,aclList:Fje.default,ACL_LOAD:Uje.default,aclLoad:Uje.default,ACL_LOG_RESET:qje.default,aclLogReset:qje.default,ACL_LOG:jje.default,aclLog:jje.default,ACL_SAVE:Hje.default,aclSave:Hje.default,ACL_SETUSER:Qje.default,aclSetUser:Qje.default,ACL_USERS:Gje.default,aclUsers:Gje.default,ACL_WHOAMI:Vje.default,aclWhoAmI:Vje.default,APPEND:zje.default,append:zje.default,ASKING:Kje.default,asking:Kje.default,AUTH:Yje.default,auth:Yje.default,BGREWRITEAOF:Jje.default,bgRewriteAof:Jje.default,BGSAVE:Xje.default,bgSave:Xje.default,BITCOUNT:Zje.default,bitCount:Zje.default,BITFIELD_RO:eHe.default,bitFieldRo:eHe.default,BITFIELD:tHe.default,bitField:tHe.default,BITOP:rHe.default,bitOp:rHe.default,BITPOS:nHe.default,bitPos:nHe.default,BLMOVE:sHe.default,blMove:sHe.default,BLMPOP:iHe.default,blmPop:iHe.default,BLPOP:aHe.default,blPop:aHe.default,BRPOP:oHe.default,brPop:oHe.default,BRPOPLPUSH:cHe.default,brPopLPush:cHe.default,BZMPOP:uHe.default,bzmPop:uHe.default,BZPOPMAX:lHe.default,bzPopMax:lHe.default,BZPOPMIN:dHe.default,bzPopMin:dHe.default,CLIENT_CACHING:fHe.default,clientCaching:fHe.default,CLIENT_GETNAME:pHe.default,clientGetName:pHe.default,CLIENT_GETREDIR:mHe.default,clientGetRedir:mHe.default,CLIENT_ID:hHe.default,clientId:hHe.default,CLIENT_INFO:gHe.default,clientInfo:gHe.default,CLIENT_KILL:Jte.default,clientKill:Jte.default,CLIENT_LIST:AHe.default,clientList:AHe.default,"CLIENT_NO-EVICT":yHe.default,clientNoEvict:yHe.default,"CLIENT_NO-TOUCH":xHe.default,clientNoTouch:xHe.default,CLIENT_PAUSE:bHe.default,clientPause:bHe.default,CLIENT_SETNAME:EHe.default,clientSetName:EHe.default,CLIENT_TRACKING:_He.default,clientTracking:_He.default,CLIENT_TRACKINGINFO:SHe.default,clientTrackingInfo:SHe.default,CLIENT_UNPAUSE:vHe.default,clientUnpause:vHe.default,CLUSTER_ADDSLOTS:CHe.default,clusterAddSlots:CHe.default,CLUSTER_ADDSLOTSRANGE:IHe.default,clusterAddSlotsRange:IHe.default,CLUSTER_BUMPEPOCH:THe.default,clusterBumpEpoch:THe.default,"CLUSTER_COUNT-FAILURE-REPORTS":wHe.default,clusterCountFailureReports:wHe.default,CLUSTER_COUNTKEYSINSLOT:RHe.default,clusterCountKeysInSlot:RHe.default,CLUSTER_DELSLOTS:NHe.default,clusterDelSlots:NHe.default,CLUSTER_DELSLOTSRANGE:OHe.default,clusterDelSlotsRange:OHe.default,CLUSTER_FAILOVER:Xte.default,clusterFailover:Xte.default,CLUSTER_FLUSHSLOTS:PHe.default,clusterFlushSlots:PHe.default,CLUSTER_FORGET:DHe.default,clusterForget:DHe.default,CLUSTER_GETKEYSINSLOT:kHe.default,clusterGetKeysInSlot:kHe.default,CLUSTER_INFO:LHe.default,clusterInfo:LHe.default,CLUSTER_KEYSLOT:BHe.default,clusterKeySlot:BHe.default,CLUSTER_LINKS:MHe.default,clusterLinks:MHe.default,CLUSTER_MEET:WHe.default,clusterMeet:WHe.default,CLUSTER_MYID:$He.default,clusterMyId:$He.default,CLUSTER_MYSHARDID:FHe.default,clusterMyShardId:FHe.default,CLUSTER_NODES:UHe.default,clusterNodes:UHe.default,CLUSTER_REPLICAS:qHe.default,clusterReplicas:qHe.default,CLUSTER_REPLICATE:jHe.default,clusterReplicate:jHe.default,CLUSTER_RESET:HHe.default,clusterReset:HHe.default,CLUSTER_SAVECONFIG:QHe.default,clusterSaveConfig:QHe.default,"CLUSTER_SET-CONFIG-EPOCH":GHe.default,clusterSetConfigEpoch:GHe.default,CLUSTER_SETSLOT:Zte.default,clusterSetSlot:Zte.default,CLUSTER_SLOTS:VHe.default,clusterSlots:VHe.default,COMMAND_COUNT:zHe.default,commandCount:zHe.default,COMMAND_GETKEYS:KHe.default,commandGetKeys:KHe.default,COMMAND_GETKEYSANDFLAGS:YHe.default,commandGetKeysAndFlags:YHe.default,COMMAND_INFO:JHe.default,commandInfo:JHe.default,COMMAND_LIST:ere.default,commandList:ere.default,COMMAND:XHe.default,command:XHe.default,CONFIG_GET:ZHe.default,configGet:ZHe.default,CONFIG_RESETASTAT:eQe.default,configResetStat:eQe.default,CONFIG_REWRITE:tQe.default,configRewrite:tQe.default,CONFIG_SET:rQe.default,configSet:rQe.default,COPY:nQe.default,copy:nQe.default,DBSIZE:sQe.default,dbSize:sQe.default,DECR:iQe.default,decr:iQe.default,DECRBY:aQe.default,decrBy:aQe.default,DEL:oQe.default,del:oQe.default,DELEX:cQe.default,delEx:cQe.default,DIGEST:uQe.default,digest:uQe.default,DUMP:lQe.default,dump:lQe.default,ECHO:dQe.default,echo:dQe.default,EVAL_RO:fQe.default,evalRo:fQe.default,EVAL:pQe.default,eval:pQe.default,EVALSHA_RO:mQe.default,evalShaRo:mQe.default,EVALSHA:hQe.default,evalSha:hQe.default,EXISTS:$Qe.default,exists:$Qe.default,EXPIRE:FQe.default,expire:FQe.default,EXPIREAT:UQe.default,expireAt:UQe.default,EXPIRETIME:qQe.default,expireTime:qQe.default,FLUSHALL:tre.default,flushAll:tre.default,FLUSHDB:jQe.default,flushDb:jQe.default,FCALL:HQe.default,fCall:HQe.default,FCALL_RO:QQe.default,fCallRo:QQe.default,FUNCTION_DELETE:GQe.default,functionDelete:GQe.default,FUNCTION_DUMP:VQe.default,functionDump:VQe.default,FUNCTION_FLUSH:zQe.default,functionFlush:zQe.default,FUNCTION_KILL:KQe.default,functionKill:KQe.default,FUNCTION_LIST_WITHCODE:YQe.default,functionListWithCode:YQe.default,FUNCTION_LIST:JQe.default,functionList:JQe.default,FUNCTION_LOAD:XQe.default,functionLoad:XQe.default,FUNCTION_RESTORE:ZQe.default,functionRestore:ZQe.default,FUNCTION_STATS:eGe.default,functionStats:eGe.default,GEOADD:gQe.default,geoAdd:gQe.default,GEODIST:AQe.default,geoDist:AQe.default,GEOHASH:yQe.default,geoHash:yQe.default,GEOPOS:xQe.default,geoPos:xQe.default,GEORADIUS_RO_WITH:bQe.default,geoRadiusRoWith:bQe.default,GEORADIUS_RO:EQe.default,geoRadiusRo:EQe.default,GEORADIUS_STORE:_Qe.default,geoRadiusStore:_Qe.default,GEORADIUS_WITH:SQe.default,geoRadiusWith:SQe.default,GEORADIUS:vQe.default,geoRadius:vQe.default,GEORADIUSBYMEMBER_RO_WITH:CQe.default,geoRadiusByMemberRoWith:CQe.default,GEORADIUSBYMEMBER_RO:IQe.default,geoRadiusByMemberRo:IQe.default,GEORADIUSBYMEMBER_STORE:TQe.default,geoRadiusByMemberStore:TQe.default,GEORADIUSBYMEMBER_WITH:wQe.default,geoRadiusByMemberWith:wQe.default,GEORADIUSBYMEMBER:RQe.default,geoRadiusByMember:RQe.default,GEOSEARCH_WITH:NQe.default,geoSearchWith:NQe.default,GEOSEARCH:OQe.default,geoSearch:OQe.default,GEOSEARCHSTORE:PQe.default,geoSearchStore:PQe.default,GET:DQe.default,get:DQe.default,GETBIT:kQe.default,getBit:kQe.default,GETDEL:LQe.default,getDel:LQe.default,GETEX:BQe.default,getEx:BQe.default,GETRANGE:MQe.default,getRange:MQe.default,GETSET:WQe.default,getSet:WQe.default,HDEL:tGe.default,hDel:tGe.default,HELLO:rGe.default,hello:rGe.default,HEXISTS:nGe.default,hExists:nGe.default,HEXPIRE:sGe.default,hExpire:sGe.default,HEXPIREAT:iGe.default,hExpireAt:iGe.default,HEXPIRETIME:aGe.default,hExpireTime:aGe.default,HGET:oGe.default,hGet:oGe.default,HGETALL:cGe.default,hGetAll:cGe.default,HGETDEL:uGe.default,hGetDel:uGe.default,HGETEX:lGe.default,hGetEx:lGe.default,HINCRBY:dGe.default,hIncrBy:dGe.default,HINCRBYFLOAT:fGe.default,hIncrByFloat:fGe.default,HKEYS:pGe.default,hKeys:pGe.default,HLEN:mGe.default,hLen:mGe.default,HMGET:hGe.default,hmGet:hGe.default,HPERSIST:gGe.default,hPersist:gGe.default,HPEXPIRE:AGe.default,hpExpire:AGe.default,HPEXPIREAT:yGe.default,hpExpireAt:yGe.default,HPEXPIRETIME:xGe.default,hpExpireTime:xGe.default,HPTTL:bGe.default,hpTTL:bGe.default,HRANDFIELD_COUNT_WITHVALUES:EGe.default,hRandFieldCountWithValues:EGe.default,HRANDFIELD_COUNT:_Ge.default,hRandFieldCount:_Ge.default,HRANDFIELD:SGe.default,hRandField:SGe.default,HSCAN:vGe.default,hScan:vGe.default,HSCAN_NOVALUES:CGe.default,hScanNoValues:CGe.default,HSET:IGe.default,hSet:IGe.default,HSETEX:TGe.default,hSetEx:TGe.default,HSETNX:wGe.default,hSetNX:wGe.default,HSTRLEN:RGe.default,hStrLen:RGe.default,HTTL:NGe.default,hTTL:NGe.default,HVALS:OGe.default,hVals:OGe.default,HOTKEYS_GET:PGe.default,hotkeysGet:PGe.default,HOTKEYS_RESET:DGe.default,hotkeysReset:DGe.default,HOTKEYS_START:kGe.default,hotkeysStart:kGe.default,HOTKEYS_STOP:LGe.default,hotkeysStop:LGe.default,INCR:BGe.default,incr:BGe.default,INCRBY:MGe.default,incrBy:MGe.default,INCRBYFLOAT:WGe.default,incrByFloat:WGe.default,INFO:$Ge.default,info:$Ge.default,KEYS:FGe.default,keys:FGe.default,LASTSAVE:UGe.default,lastSave:UGe.default,LATENCY_DOCTOR:qGe.default,latencyDoctor:qGe.default,LATENCY_GRAPH:jGe.default,latencyGraph:jGe.default,LATENCY_HISTORY:HGe.default,latencyHistory:HGe.default,LATENCY_HISTOGRAM:_Ye.default,latencyHistogram:_Ye.default,LATENCY_LATEST:QGe.default,latencyLatest:QGe.default,LATENCY_RESET:GGe.default,latencyReset:GGe.default,LCS_IDX_WITHMATCHLEN:VGe.default,lcsIdxWithMatchLen:VGe.default,LCS_IDX:zGe.default,lcsIdx:zGe.default,LCS_LEN:KGe.default,lcsLen:KGe.default,LCS:YGe.default,lcs:YGe.default,LINDEX:JGe.default,lIndex:JGe.default,LINSERT:XGe.default,lInsert:XGe.default,LLEN:ZGe.default,lLen:ZGe.default,LMOVE:eVe.default,lMove:eVe.default,LMPOP:tVe.default,lmPop:tVe.default,LOLWUT:Lur.default,LPOP_COUNT:rVe.default,lPopCount:rVe.default,LPOP:nVe.default,lPop:nVe.default,LPOS_COUNT:sVe.default,lPosCount:sVe.default,LPOS:iVe.default,lPos:iVe.default,LPUSH:aVe.default,lPush:aVe.default,LPUSHX:oVe.default,lPushX:oVe.default,LRANGE:cVe.default,lRange:cVe.default,LREM:uVe.default,lRem:uVe.default,LSET:lVe.default,lSet:lVe.default,LTRIM:dVe.default,lTrim:dVe.default,MEMORY_DOCTOR:fVe.default,memoryDoctor:fVe.default,"MEMORY_MALLOC-STATS":pVe.default,memoryMallocStats:pVe.default,MEMORY_PURGE:mVe.default,memoryPurge:mVe.default,MEMORY_STATS:hVe.default,memoryStats:hVe.default,MEMORY_USAGE:gVe.default,memoryUsage:gVe.default,MGET:AVe.default,mGet:AVe.default,MIGRATE:yVe.default,migrate:yVe.default,MODULE_LIST:xVe.default,moduleList:xVe.default,MODULE_LOAD:bVe.default,moduleLoad:bVe.default,MODULE_UNLOAD:EVe.default,moduleUnload:EVe.default,MOVE:_Ve.default,move:_Ve.default,MSET:SVe.default,mSet:SVe.default,MSETEX:vVe.default,mSetEx:vVe.default,MSETNX:CVe.default,mSetNX:CVe.default,OBJECT_ENCODING:IVe.default,objectEncoding:IVe.default,OBJECT_FREQ:TVe.default,objectFreq:TVe.default,OBJECT_IDLETIME:wVe.default,objectIdleTime:wVe.default,OBJECT_REFCOUNT:RVe.default,objectRefCount:RVe.default,PERSIST:NVe.default,persist:NVe.default,PEXPIRE:OVe.default,pExpire:OVe.default,PEXPIREAT:PVe.default,pExpireAt:PVe.default,PEXPIRETIME:DVe.default,pExpireTime:DVe.default,PFADD:kVe.default,pfAdd:kVe.default,PFCOUNT:LVe.default,pfCount:LVe.default,PFMERGE:BVe.default,pfMerge:BVe.default,PING:MVe.default,ping:MVe.default,PSETEX:WVe.default,pSetEx:WVe.default,PTTL:$Ve.default,pTTL:$Ve.default,PUBLISH:FVe.default,publish:FVe.default,PUBSUB_CHANNELS:UVe.default,pubSubChannels:UVe.default,PUBSUB_NUMPAT:qVe.default,pubSubNumPat:qVe.default,PUBSUB_NUMSUB:jVe.default,pubSubNumSub:jVe.default,PUBSUB_SHARDNUMSUB:HVe.default,pubSubShardNumSub:HVe.default,PUBSUB_SHARDCHANNELS:QVe.default,pubSubShardChannels:QVe.default,RANDOMKEY:GVe.default,randomKey:GVe.default,READONLY:VVe.default,readonly:VVe.default,RENAME:zVe.default,rename:zVe.default,RENAMENX:KVe.default,renameNX:KVe.default,REPLICAOF:YVe.default,replicaOf:YVe.default,"RESTORE-ASKING":JVe.default,restoreAsking:JVe.default,RESTORE:XVe.default,restore:XVe.default,RPOP_COUNT:eze.default,rPopCount:eze.default,ROLE:ZVe.default,role:ZVe.default,RPOP:tze.default,rPop:tze.default,RPOPLPUSH:rze.default,rPopLPush:rze.default,RPUSH:nze.default,rPush:nze.default,RPUSHX:sze.default,rPushX:sze.default,SADD:ize.default,sAdd:ize.default,SCAN:aze.default,scan:aze.default,SCARD:oze.default,sCard:oze.default,SCRIPT_DEBUG:cze.default,scriptDebug:cze.default,SCRIPT_EXISTS:uze.default,scriptExists:uze.default,SCRIPT_FLUSH:lze.default,scriptFlush:lze.default,SCRIPT_KILL:dze.default,scriptKill:dze.default,SCRIPT_LOAD:fze.default,scriptLoad:fze.default,SDIFF:pze.default,sDiff:pze.default,SDIFFSTORE:mze.default,sDiffStore:mze.default,SET:hze.default,set:hze.default,SETBIT:gze.default,setBit:gze.default,SETEX:Aze.default,setEx:Aze.default,SETNX:yze.default,setNX:yze.default,SETRANGE:xze.default,setRange:xze.default,SINTER:bze.default,sInter:bze.default,SINTERCARD:Eze.default,sInterCard:Eze.default,SINTERSTORE:_ze.default,sInterStore:_ze.default,SISMEMBER:Sze.default,sIsMember:Sze.default,SMEMBERS:vze.default,sMembers:vze.default,SMISMEMBER:Cze.default,smIsMember:Cze.default,SMOVE:Ize.default,sMove:Ize.default,SORT_RO:Tze.default,sortRo:Tze.default,SORT_STORE:wze.default,sortStore:wze.default,SORT:Rze.default,sort:Rze.default,SPOP_COUNT:Nze.default,sPopCount:Nze.default,SPOP:Oze.default,sPop:Oze.default,SPUBLISH:Pze.default,sPublish:Pze.default,SRANDMEMBER_COUNT:Dze.default,sRandMemberCount:Dze.default,SRANDMEMBER:kze.default,sRandMember:kze.default,SREM:Lze.default,sRem:Lze.default,SSCAN:Bze.default,sScan:Bze.default,STRLEN:Mze.default,strLen:Mze.default,SUNION:Wze.default,sUnion:Wze.default,SUNIONSTORE:$ze.default,sUnionStore:$ze.default,SWAPDB:Fze.default,swapDb:Fze.default,TIME:Uze.default,time:Uze.default,TOUCH:qze.default,touch:qze.default,TTL:jze.default,ttl:jze.default,TYPE:Hze.default,type:Hze.default,UNLINK:Qze.default,unlink:Qze.default,WAIT:Gze.default,wait:Gze.default,XACK:Vze.default,xAck:Vze.default,XACKDEL:zze.default,xAckDel:zze.default,XADD_NOMKSTREAM:Kze.default,xAddNoMkStream:Kze.default,XADD:Yze.default,xAdd:Yze.default,XAUTOCLAIM_JUSTID:Jze.default,xAutoClaimJustId:Jze.default,XAUTOCLAIM:Xze.default,xAutoClaim:Xze.default,XCLAIM_JUSTID:Zze.default,xClaimJustId:Zze.default,XCLAIM:eKe.default,xClaim:eKe.default,XCFGSET:tKe.default,xCfgSet:tKe.default,XDEL:rKe.default,xDel:rKe.default,XDELEX:nKe.default,xDelEx:nKe.default,XGROUP_CREATE:sKe.default,xGroupCreate:sKe.default,XGROUP_CREATECONSUMER:iKe.default,xGroupCreateConsumer:iKe.default,XGROUP_DELCONSUMER:aKe.default,xGroupDelConsumer:aKe.default,XGROUP_DESTROY:oKe.default,xGroupDestroy:oKe.default,XGROUP_SETID:cKe.default,xGroupSetId:cKe.default,XINFO_CONSUMERS:uKe.default,xInfoConsumers:uKe.default,XINFO_GROUPS:lKe.default,xInfoGroups:lKe.default,XINFO_STREAM:dKe.default,xInfoStream:dKe.default,XLEN:fKe.default,xLen:fKe.default,XPENDING_RANGE:pKe.default,xPendingRange:pKe.default,XPENDING:mKe.default,xPending:mKe.default,XRANGE:hKe.default,xRange:hKe.default,XREAD:gKe.default,xRead:gKe.default,XREADGROUP:AKe.default,xReadGroup:AKe.default,XREVRANGE:yKe.default,xRevRange:yKe.default,XSETID:xKe.default,xSetId:xKe.default,XTRIM:bKe.default,xTrim:bKe.default,ZADD_INCR:EKe.default,zAddIncr:EKe.default,ZADD:_Ke.default,zAdd:_Ke.default,ZCARD:SKe.default,zCard:SKe.default,ZCOUNT:vKe.default,zCount:vKe.default,ZDIFF_WITHSCORES:CKe.default,zDiffWithScores:CKe.default,ZDIFF:IKe.default,zDiff:IKe.default,ZDIFFSTORE:TKe.default,zDiffStore:TKe.default,ZINCRBY:wKe.default,zIncrBy:wKe.default,ZINTER_WITHSCORES:RKe.default,zInterWithScores:RKe.default,ZINTER:NKe.default,zInter:NKe.default,ZINTERCARD:OKe.default,zInterCard:OKe.default,ZINTERSTORE:PKe.default,zInterStore:PKe.default,ZLEXCOUNT:DKe.default,zLexCount:DKe.default,ZMPOP:kKe.default,zmPop:kKe.default,ZMSCORE:LKe.default,zmScore:LKe.default,ZPOPMAX_COUNT:BKe.default,zPopMaxCount:BKe.default,ZPOPMAX:MKe.default,zPopMax:MKe.default,ZPOPMIN_COUNT:WKe.default,zPopMinCount:WKe.default,ZPOPMIN:$Ke.default,zPopMin:$Ke.default,ZRANDMEMBER_COUNT_WITHSCORES:FKe.default,zRandMemberCountWithScores:FKe.default,ZRANDMEMBER_COUNT:UKe.default,zRandMemberCount:UKe.default,ZRANDMEMBER:qKe.default,zRandMember:qKe.default,ZRANGE_WITHSCORES:jKe.default,zRangeWithScores:jKe.default,ZRANGE:HKe.default,zRange:HKe.default,ZRANGEBYLEX:QKe.default,zRangeByLex:QKe.default,ZRANGEBYSCORE_WITHSCORES:GKe.default,zRangeByScoreWithScores:GKe.default,ZRANGEBYSCORE:VKe.default,zRangeByScore:VKe.default,ZRANGESTORE:zKe.default,zRangeStore:zKe.default,ZRANK_WITHSCORE:YKe.default,zRankWithScore:YKe.default,ZRANK:JKe.default,zRank:JKe.default,ZREM:XKe.default,zRem:XKe.default,ZREMRANGEBYLEX:ZKe.default,zRemRangeByLex:ZKe.default,ZREMRANGEBYRANK:eYe.default,zRemRangeByRank:eYe.default,ZREMRANGEBYSCORE:KKe.default,zRemRangeByScore:KKe.default,ZREVRANK:tYe.default,zRevRank:tYe.default,ZSCAN:rYe.default,zScan:rYe.default,ZSCORE:nYe.default,zScore:nYe.default,ZUNION_WITHSCORES:sYe.default,zUnionWithScores:sYe.default,ZUNION:iYe.default,zUnion:iYe.default,ZUNIONSTORE:aYe.default,zUnionStore:aYe.default,VADD:oYe.default,vAdd:oYe.default,VCARD:cYe.default,vCard:cYe.default,VDIM:uYe.default,vDim:uYe.default,VEMB:lYe.default,vEmb:lYe.default,VEMB_RAW:dYe.default,vEmbRaw:dYe.default,VGETATTR:fYe.default,vGetAttr:fYe.default,VINFO:pYe.default,vInfo:pYe.default,VLINKS:mYe.default,vLinks:mYe.default,VLINKS_WITHSCORES:hYe.default,vLinksWithScores:hYe.default,VRANDMEMBER:gYe.default,vRandMember:gYe.default,VRANGE:AYe.default,vRange:AYe.default,VREM:yYe.default,vRem:yYe.default,VSETATTR:xYe.default,vSetAttr:xYe.default,VSIM:bYe.default,vSim:bYe.default,VSIM_WITHSCORES:EYe.default,vSimWithScores:EYe.default};var Bur=$(yu()),{HOTKEYS_GET:qJr,hotkeysGet:jJr,HOTKEYS_RESET:HJr,hotkeysReset:QJr,HOTKEYS_START:GJr,hotkeysStart:VJr,HOTKEYS_STOP:zJr,hotkeysStop:KJr,...Mur}=Bur.default;Qn.NON_STICKY_COMMANDS=Mur});var HI=E(or=>{"use strict";var SYe=or&&or.__importDefault||function(t){return t&&t.__esModule?t:{default:t}},vYe;Object.defineProperty(or,"__esModule",{value:!0});or.emitDiagnostics=or.dbgMaintenance=or.MAINTENANCE_EVENTS=or.SMIGRATED_EVENT=void 0;var CYe=require("net"),Wur=require("dns/promises"),_b=SYe(require("node:assert")),$ur=require("node:timers/promises"),Fur=SYe(require("node:diagnostics_channel"));or.SMIGRATED_EVENT="__SMIGRATED";or.MAINTENANCE_EVENTS={PAUSE_WRITING:"pause-writing",RESUME_WRITING:"resume-writing",TIMEOUTS_UPDATE:"timeouts-update"};var q0={MOVING:"MOVING",MIGRATING:"MIGRATING",MIGRATED:"MIGRATED",FAILING_OVER:"FAILING_OVER",FAILED_OVER:"FAILED_OVER",SMIGRATING:"SMIGRATING",SMIGRATED:"SMIGRATED"},Uur=(...t)=>{if(process.env.REDIS_DEBUG_MAINTENANCE)return console.log(new Date().toISOString().slice(11,23),"[MNT]",...t)};or.dbgMaintenance=Uur;var qur=t=>{if(!process.env.REDIS_EMIT_DIAGNOSTICS)return;Fur.default.channel("redis.maintenance").publish(t)};or.emitDiagnostics=qur;var lB=class{#e;#t;#r=0;#n;static setupDefaultMaintOptions(e){e.maintNotifications===void 0&&(e.maintNotifications=e?.RESP===3?"auto":"disabled"),e.maintEndpointType===void 0&&(e.maintEndpointType="auto"),e.maintRelaxedSocketTimeout===void 0&&(e.maintRelaxedSocketTimeout=1e4),e.maintRelaxedCommandTimeout===void 0&&(e.maintRelaxedCommandTimeout=1e4)}static async getHandshakeCommand(e){if(e.maintNotifications==="disabled")return;let r=e.url?new URL(e.url).hostname:e.socket?.host;if(!r)return;let n=e.socket?.tls??!1;return{cmd:["CLIENT","MAINT_NOTIFICATIONS","ON","moving-endpoint-type",await Hur(n,r,e)],errorHandler:i=>{if((0,or.dbgMaintenance)("handshake failed:",i),e.maintNotifications==="enabled")throw i}}}constructor(e,r,n){this.#e=e,this.#t=n,this.#n=r,this.#e.addPushHandler(this.#a)}#a=e=>{if((0,or.dbgMaintenance)("ONPUSH:",e.map(String)),!Array.isArray(e)||!Object.values(q0).includes(String(e[0])))return!1;let r=String(e[0]);switch((0,or.emitDiagnostics)({type:r,timestamp:Date.now(),data:{push:e.map(String)}}),r){case q0.MOVING:{let n=e[2],s=e[3]?String(e[3]):null;return(0,or.dbgMaintenance)("Received MOVING:",n,s),this.#o(n,s),!0}case q0.MIGRATING:case q0.SMIGRATING:case q0.FAILING_OVER:return(0,or.dbgMaintenance)("Received MIGRATING|SMIGRATING|FAILING_OVER"),this.#s(),!0;case q0.MIGRATED:case q0.FAILED_OVER:return(0,or.dbgMaintenance)("Received MIGRATED|FAILED_OVER"),this.#i(),!0;case q0.SMIGRATED:return(0,or.dbgMaintenance)("Received SMIGRATED"),this.#c(e),this.#i(),!0}return!1};#o=async(e,r)=>{this.#s();let n,s;if(r===null){(0,_b.default)(this.#t.maintEndpointType==="none");let{host:u,port:l}=this.#l();n=u,s=l;let d=e*1e3/2;(0,or.dbgMaintenance)(`Wait for ${d}ms`),await(0,$ur.setTimeout)(d)}else{let u=r.split(":");n=u[0],s=Number(u[1])}(0,or.dbgMaintenance)("Pausing writing of new commands to old socket"),this.#n._pause(),(0,or.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,or.dbgMaintenance)("[ERR]",u)}),(0,or.dbgMaintenance)(`Tmp client created in ${(performance.now()-i).toFixed(2)}ms`),(0,or.dbgMaintenance)(`Set timeout for tmp client to ${this.#t.maintRelaxedSocketTimeout}`),a._maintenanceUpdate({relaxedCommandTimeout:this.#t.maintRelaxedCommandTimeout,relaxedSocketTimeout:this.#t.maintRelaxedSocketTimeout}),(0,or.dbgMaintenance)(`Connecting tmp client: ${n}:${s}`),i=performance.now(),await a.connect(),(0,or.dbgMaintenance)(`Connected to tmp client in ${(performance.now()-i).toFixed(2)}ms`),(0,or.dbgMaintenance)("Wait for all in-flight commands to complete"),await this.#e.waitForInflightCommandsToComplete(),(0,or.dbgMaintenance)("In-flight commands completed"),(0,or.dbgMaintenance)("Swap client sockets...");let o=this.#n._ejectSocket(),c=a._ejectSocket();this.#n._insertSocket(c),a._insertSocket(o),a.destroy(),(0,or.dbgMaintenance)("Swap client sockets done."),(0,or.dbgMaintenance)("Resume writing"),this.#n._unpause(),this.#i()};#s=()=>{if(this.#r++,this.#r>1){(0,or.dbgMaintenance)("Timeout relaxation already done");return}let e={relaxedCommandTimeout:this.#t.maintRelaxedCommandTimeout,relaxedSocketTimeout:this.#t.maintRelaxedSocketTimeout};this.#n._maintenanceUpdate(e)};#i=()=>{if(this.#r=Math.max(this.#r-1,0),this.#r>0){(0,or.dbgMaintenance)("Not ready to unrelax timeouts yet");return}let e={relaxedCommandTimeout:void 0,relaxedSocketTimeout:void 0};this.#n._maintenanceUpdate(e)};#c=e=>{let r=vYe.parseSMigratedPush(e);(0,or.dbgMaintenance)("emit smigratedEvent",r),this.#n._handleSmigrated(r)};static parseSMigratedPush(e){let r=new Map;for(let[s,i,a]of e[2]){let o=String(s),[c,u]=String(i).split(":"),l=String(a).split(",").map(p=>{let m=p.indexOf("-");return m===-1?Number(p):[Number(p.substring(0,m)),Number(p.substring(m+1))]}),d=r.get(o)??[],f=d.find(p=>p.addr.host===c&&p.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:e[1],entries:n}}#l(){(0,_b.default)(this.#t.socket!==void 0),(0,_b.default)("host"in this.#t.socket),(0,_b.default)(typeof this.#t.socket.host=="string");let e=this.#t.socket.host;(0,_b.default)(typeof this.#t.socket.port=="number");let r=this.#t.socket.port;return{host:e,port:r}}};vYe=lB;or.default=lB;function jur(t){let e=(0,CYe.isIP)(t);if(e===4){let r=t.split(".").map(Number);return r[0]===10||r[0]===172&&r[1]>=16&&r[1]<=31||r[0]===192&&r[1]===168}return e===6?t.startsWith("fc")||t.startsWith("fd")||t==="::1"||t.startsWith("fe80"):!1}async function Hur(t,e,r){if((0,_b.default)(r.maintEndpointType!==void 0),r.maintEndpointType!=="auto")return(0,or.dbgMaintenance)(`Determine endpoint type: ${r.maintEndpointType}`),r.maintEndpointType;let n=(0,CYe.isIP)(e)?e:(await(0,Wur.lookup)(e,{family:0})).address,s=jur(n),i;return t?i=s?"internal-fqdn":"external-fqdn":i=s?"internal-ip":"external-ip",(0,or.dbgMaintenance)(`Determine endpoint type: ${i}`),i}});var OYe=E(QI=>{"use strict";var NYe=QI&&QI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(QI,"__esModule",{value:!0});var IYe=require("node:events"),TYe=NYe(require("node:net")),Qur=NYe(require("node:tls")),Ll=Pl(),wYe=require("node:timers/promises"),RYe=HI(),rre=class extends IYe.EventEmitter{#e;#t;#r;#n;#a;#o;#s;#i=!1;get isOpen(){return this.#i}#c=!1;get isReady(){return this.#c}#l=!1;#h=0;get socketEpoch(){return this.#h}constructor(e,r){super(),this.#e=e,this.#t=r?.connectTimeout??5e3,this.#r=this.#p(r),this.#n=this.#d(r),this.#a=r?.socketTimeout}#p(e){let r=e?.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(e){if(e?.tls===!0){let n={...e,port:e?.port??6379,noDelay:e?.noDelay??!0,keepAlive:e?.keepAlive??!0,keepAliveInitialDelay:e?.keepAliveInitialDelay??5e3,timeout:void 0,onread:void 0,readable:!0,writable:!0};return{create(){return Qur.default.connect(n)},event:"secureConnect"}}if(e&&"path"in e){let n={...e,timeout:void 0,onread:void 0,readable:!0,writable:!0};return{create(){return TYe.default.createConnection(n)},event:"connect"}}let r={...e,port:e?.port??6379,noDelay:e?.noDelay??!0,keepAlive:e?.keepAlive??!0,keepAliveInitialDelay:e?.keepAliveInitialDelay??5e3,timeout:void 0,onread:void 0,readable:!0,writable:!0};return{create(){return TYe.default.createConnection(r)},event:"connect"}}#f(e,r){let n=this.#r(e,r);return n===!1?(this.#i=!1,this.emit("error",r),r):n instanceof Error?(this.#i=!1,this.emit("error",r),new Ll.ReconnectStrategyError(n,r)):n}async connect(){if(this.#i)throw new Error("Socket already opened");return this.#i=!0,this.#m()}async#m(){let e=0;do try{this.#s=await this.#y(),this.emit("connect");try{if(await this.#e(),!this.#s||this.#s.destroyed||!this.#s.readable||!this.#s.writable){let r=this.#f(e++,new Ll.SocketClosedUnexpectedlyError);if(typeof r!="number")throw r;await(0,wYe.setTimeout)(r),this.emit("reconnecting");continue}}catch(r){throw this.#s.destroy(),this.#s=void 0,r}this.#c=!0,this.#h++,this.emit("ready")}catch(r){let n=this.#f(e++,r);if(typeof n!="number")throw n;this.emit("error",r),await(0,wYe.setTimeout)(n),this.emit("reconnecting")}while(this.#i&&!this.#c)}setMaintenanceTimeout(e){if((0,RYe.dbgMaintenance)(`Set socket timeout to ${e}`),this.#o===e){(0,RYe.dbgMaintenance)(`Socket already set maintenanceCommandTimeout to ${e}, skipping`);return}this.#o=e,e!==void 0?this.#s?.setTimeout(e):this.#s?.setTimeout(this.#a??0)}async#y(){let e=this.#n.create(),r;return this.#t!==void 0&&(r=()=>e.destroy(new Ll.ConnectionTimeoutError),e.once("timeout",r),e.setTimeout(this.#t)),this.#l&&e.unref(),await(0,IYe.once)(e,this.#n.event),r&&e.removeListener("timeout",r),this.#a&&(e.once("timeout",()=>{let n=this.#o?new Ll.SocketTimeoutDuringMaintenanceError(this.#o):new Ll.SocketTimeoutError(this.#a);e.destroy(n)}),e.setTimeout(this.#a)),e.once("error",n=>this.#g(n)).once("close",n=>{n||!this.#i||this.#s!==e||this.#g(new Ll.SocketClosedUnexpectedlyError)}).on("drain",()=>this.emit("drain")).on("data",n=>this.emit("data",n)),e}#g(e){let r=this.#c;this.#c=!1,this.emit("error",e),!(!r||!this.#i||typeof this.#f(0,e)!="number")&&(this.emit("reconnecting"),this.#m().catch(()=>{}))}write(e){if(this.#s){this.#s.cork();for(let r of e){for(let n of r)this.#s.write(n);if(this.#s.writableNeedDrain)break}this.#s.uncork()}}async quit(e){if(!this.#i)throw new Ll.ClientClosedError;this.#i=!1;let r=await e();return this.destroySocket(),r}close(){if(!this.#i)throw new Ll.ClientClosedError;this.#i=!1}destroy(){if(!this.#i)throw new Ll.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(e,r){if(r instanceof Ll.SocketTimeoutError)return!1;let n=Math.floor(Math.random()*200);return Math.min(Math.pow(2,e)*50,2e3)+n}};QI.default=rre});var sre=E(dB=>{"use strict";Object.defineProperty(dB,"__esModule",{value:!0});dB.Token=void 0;var nre=class{value;expiresAtMs;receivedAtMs;constructor(e,r,n){this.value=e,this.expiresAtMs=r,this.receivedAtMs=n}getTtlMs(e){return this.expiresAtMs{"use strict";Object.defineProperty(Sb,"__esModule",{value:!0});Sb.TokenManager=Sb.IDPError=void 0;var Gur=sre(),fB=class extends Error{message;isRetryable;constructor(e,r){super(e),this.message=e,this.isRetryable=r,this.name="IDPError"}};Sb.IDPError=fB;var ire=class{identityProvider;config;currentToken=null;refreshTimeout=null;listener=null;retryAttempt=0;constructor(e,r){if(this.identityProvider=e,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(e,r=0){return this.listener&&this.stop(),this.listener=e,this.retryAttempt=0,this.scheduleNextRefresh(r),{dispose:()=>this.stop()}}calculateRetryDelay(){if(!this.config.retry)return 0;let{initialDelayMs:e,maxDelayMs:r,backoffMultiplier:n,jitterPercentage:s}=this.config.retry,i=e*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(e){if(!this.config.retry)return!1;let{maxAttempts:r,isRetryable:n}=this.config.retry;return this.retryAttempt>=r?!1:n?n(e,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(e){if(this.shouldRetry(e)){this.retryAttempt++;let r=this.calculateRetryDelay();this.notifyError(`Token refresh failed (attempt ${this.retryAttempt}), retrying in ${r}ms: ${e}`,!0),this.scheduleNextRefresh(r)}else this.notifyError(e,!1),this.stop()}}handleNewToken=async({token:e,ttlMs:r})=>{if(!this.listener)throw new Error("TokenManager is not running, but a new token was received");let n=this.wrapAndSetCurrentToken(e,r);this.listener.onNext(n),this.scheduleNextRefresh(this.calculateRefreshTime(n))};wrapAndSetCurrentToken(e,r){let n=Date.now(),s=new Gur.Token(e,n+r,n);return this.currentToken=s,s}scheduleNextRefresh(e){this.refreshTimeout&&(clearTimeout(this.refreshTimeout),this.refreshTimeout=null),e===0?this.refresh():this.refreshTimeout=setTimeout(()=>this.refresh(),e)}calculateRefreshTime(e,r=Date.now()){let n=e.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(e,r){let n=e instanceof Error?e.message:String(e);if(!this.listener)throw new Error(`TokenManager is not running but received an error: ${n}`);this.listener.onError(new fB(n,r))}};Sb.TokenManager=ire});var DYe=E(vb=>{"use strict";Object.defineProperty(vb,"__esModule",{value:!0});vb.UnableToObtainNewCredentialsError=vb.CredentialsError=void 0;var are=class extends Error{constructor(e){super(`Re-authentication with latest credentials failed: ${e}`),this.name="CredentialsError"}};vb.CredentialsError=are;var ore=class extends Error{constructor(e){super(`Unable to obtain new credentials : ${e}`),this.name="UnableToObtainNewCredentialsError"}};vb.UnableToObtainNewCredentialsError=ore});var BYe=E(Ic=>{"use strict";Object.defineProperty(Ic,"__esModule",{value:!0});Ic.Token=Ic.CredentialsError=Ic.UnableToObtainNewCredentialsError=Ic.IDPError=Ic.TokenManager=void 0;var kYe=PYe();Object.defineProperty(Ic,"TokenManager",{enumerable:!0,get:function(){return kYe.TokenManager}});Object.defineProperty(Ic,"IDPError",{enumerable:!0,get:function(){return kYe.IDPError}});var LYe=DYe();Object.defineProperty(Ic,"UnableToObtainNewCredentialsError",{enumerable:!0,get:function(){return LYe.UnableToObtainNewCredentialsError}});Object.defineProperty(Ic,"CredentialsError",{enumerable:!0,get:function(){return LYe.CredentialsError}});var Vur=sre();Object.defineProperty(Ic,"Token",{enumerable:!0,get:function(){return Vur.Token}})});var mB=E(Bl=>{"use strict";var zur=Bl&&Bl.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Bl,"__esModule",{value:!0});Bl.EmptyAwareSinglyLinkedList=Bl.SinglyLinkedList=Bl.DoublyLinkedList=void 0;var Kur=zur(require("events")),cre=class{#e=0;get length(){return this.#e}#t;get head(){return this.#t}#r;get tail(){return this.#r}push(e){return++this.#e,this.#r===void 0?this.#t=this.#r={previous:this.#t,next:void 0,value:e}:this.#r=this.#r.next={previous:this.#r,next:void 0,value:e}}unshift(e){return++this.#e,this.#t===void 0?this.#t=this.#r={previous:void 0,next:void 0,value:e}:this.#t=this.#t.previous={previous:void 0,next:this.#t,value:e}}add(e,r=!1){return r?this.unshift(e):this.push(e)}shift(){if(this.#t===void 0)return;--this.#e;let e=this.#t;return e.next?(e.next.previous=void 0,this.#t=e.next,e.next=void 0):this.#t=this.#r=void 0,e.value}remove(e){this.#e!==0&&(--this.#e,this.#r===e&&(this.#r=e.previous),this.#t===e?this.#t=e.next:(e.previous&&(e.previous.next=e.next),e.next&&(e.next.previous=e.previous)),e.previous=void 0,e.next=void 0)}reset(){this.#e=0,this.#t=this.#r=void 0}*[Symbol.iterator](){let e=this.#t;for(;e!==void 0;)yield e.value,e=e.next}*nodes(){let e=this.#t;for(;e;){let r=e.next;yield e,e=r}}};Bl.DoublyLinkedList=cre;var pB=class{#e=0;get length(){return this.#e}#t;get head(){return this.#t}#r;get tail(){return this.#r}push(e){++this.#e;let r={value:e,next:void 0,removed:!1};return this.#t===void 0?this.#t=this.#r=r:this.#r.next=this.#r=r}remove(e,r){if(e.removed)throw new Error("node already removed");--this.#e,this.#t===e?this.#r===e?this.#t=this.#r=void 0:this.#t=e.next:this.#r===e?(this.#r=r,r.next=void 0):r.next=e.next,e.removed=!0}shift(){if(this.#t===void 0)return;let e=this.#t;return--this.#e===0?this.#t=this.#r=void 0:this.#t=e.next,e.removed=!0,e.value}reset(){this.#e=0,this.#t=this.#r=void 0}*[Symbol.iterator](){let e=this.#t;for(;e!==void 0;)yield e.value,e=e.next}};Bl.SinglyLinkedList=pB;var ure=class extends pB{events=new Kur.default;reset(){let e=this.length;super.reset(),e!==this.length&&this.length===0&&this.events.emit("empty")}shift(){let e=this.length,r=super.shift();return e!==this.length&&this.length===0&&this.events.emit("empty"),r}remove(e,r){let n=this.length;super.remove(e,r),n!==this.length&&this.length===0&&this.events.emit("empty")}};Bl.EmptyAwareSinglyLinkedList=ure});var MYe=E(lre=>{"use strict";Object.defineProperty(lre,"__esModule",{value:!0});var GI=`\r -`;function Yur(t){let e=[],r="*"+t.length+GI;for(let n=0;n{var WYe=[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],Jur=function(e){for(var r,n=0,s=0,i=[],a=e.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},$Ye=dre.exports=function(e){for(var r,n=0,s=-1,i=0,a=0,o=typeof e=="string"?Jur(e):e,c=o.length;n>8)&255]^a<<8;else if(n-1!==s)return a&16383;i=WYe[(r^i>>8)&255]^i<<8}return i&16383};dre.exports.generateMulti=function(e){for(var r=1,n=e.length,s=$Ye(e[0]);r{"use strict";var Xur=kt&&kt.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(kt,"__esModule",{value:!0});kt.PubSub=kt.PUBSUB_TYPE=void 0;var Zur=Xur(fre());kt.PUBSUB_TYPE={CHANNELS:"CHANNELS",PATTERNS:"PATTERNS",SHARDED:"SHARDED"};var xi={[kt.PUBSUB_TYPE.CHANNELS]:{subscribe:Buffer.from("subscribe"),unsubscribe:Buffer.from("unsubscribe"),message:Buffer.from("message")},[kt.PUBSUB_TYPE.PATTERNS]:{subscribe:Buffer.from("psubscribe"),unsubscribe:Buffer.from("punsubscribe"),message:Buffer.from("pmessage")},[kt.PUBSUB_TYPE.SHARDED]:{subscribe:Buffer.from("ssubscribe"),unsubscribe:Buffer.from("sunsubscribe"),message:Buffer.from("smessage")}},pre=class t{static isStatusReply(e){let r=typeof e[0]=="string"?Buffer.from(e[0]):e[0];return xi[kt.PUBSUB_TYPE.CHANNELS].subscribe.equals(r)||xi[kt.PUBSUB_TYPE.CHANNELS].unsubscribe.equals(r)||xi[kt.PUBSUB_TYPE.PATTERNS].subscribe.equals(r)||xi[kt.PUBSUB_TYPE.PATTERNS].unsubscribe.equals(r)||xi[kt.PUBSUB_TYPE.SHARDED].subscribe.equals(r)}static isShardedUnsubscribe(e){let r=typeof e[0]=="string"?Buffer.from(e[0]):e[0];return xi[kt.PUBSUB_TYPE.SHARDED].unsubscribe.equals(r)}static#e(e){return Array.isArray(e)?e:[e]}static#t(e,r){return r?e.buffers:e.strings}#r=0;#n=!1;get isActive(){return this.#n}listeners={[kt.PUBSUB_TYPE.CHANNELS]:new Map,[kt.PUBSUB_TYPE.PATTERNS]:new Map,[kt.PUBSUB_TYPE.SHARDED]:new Map};subscribe(e,r,n,s){let i=[xi[e].subscribe],a=t.#e(r);for(let o of a){let c=this.listeners[e].get(o);(!c||c.unsubscribing)&&i.push(o)}if(i.length===1){for(let o of a)t.#t(this.listeners[e].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[e].get(o);c||(c={unsubscribing:!1,buffers:new Set,strings:new Set},this.listeners[e].set(o,c)),t.#t(c,s).add(n)}},reject:()=>{this.#r--,this.#s()}}}extendChannelListeners(e,r,n){if(this.#a(e,r,n))return this.#n=!0,this.#r++,{args:[xi[e].subscribe,r],channelsCounter:1,resolve:()=>this.#r--,reject:()=>{this.#r--,this.#s()}}}#a(e,r,n){let s=this.listeners[e].get(r);if(!s)return this.listeners[e].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(e,r){let n=[xi[e].subscribe];for(let[s,i]of r)this.#a(e,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(e,r,n,s){let i=this.listeners[e];if(!r)return this.#o([xi[e].unsubscribe],NaN,()=>i.clear());let a=t.#e(r);if(!n)return this.#o([xi[e].unsubscribe,...a],a.length,()=>{for(let c of a)i.delete(c)});let o=[xi[e].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)t.#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(e,r,n){return{args:e,channelsCounter:r,resolve:()=>{n(),this.#s()},reject:void 0}}#s(){this.#n=this.listeners[kt.PUBSUB_TYPE.CHANNELS].size!==0||this.listeners[kt.PUBSUB_TYPE.PATTERNS].size!==0||this.listeners[kt.PUBSUB_TYPE.SHARDED].size!==0||this.#r!==0}reset(){this.#n=!1,this.#r=0}resubscribe(){let e=[];for(let[r,n]of Object.entries(this.listeners))n.size&&(this.#n=!0,r===kt.PUBSUB_TYPE.SHARDED?this.#c(e,n):this.#i(e,r,n));return e}#i(e,r,n){this.#r++;let s=()=>this.#r--;e.push({args:[xi[r].subscribe,...n.keys()],channelsCounter:n.size,resolve:s,reject:s})}#c(e,r){let n=()=>this.#r--;for(let s of r.keys())this.#r++,e.push({args:[xi[kt.PUBSUB_TYPE.SHARDED].subscribe,s],channelsCounter:1,resolve:n,reject:n})}handleMessageReply(e){let r=typeof e[0]=="string"?Buffer.from(e[0]):e[0];return xi[kt.PUBSUB_TYPE.CHANNELS].message.equals(r)?(this.#l(kt.PUBSUB_TYPE.CHANNELS,e[2],e[1]),!0):xi[kt.PUBSUB_TYPE.PATTERNS].message.equals(r)?(this.#l(kt.PUBSUB_TYPE.PATTERNS,e[3],e[2],e[1]),!0):xi[kt.PUBSUB_TYPE.SHARDED].message.equals(r)?(this.#l(kt.PUBSUB_TYPE.SHARDED,e[2],e[1]),!0):!1}removeShardedListeners(e){let r=this.listeners[kt.PUBSUB_TYPE.SHARDED].get(e);return this.listeners[kt.PUBSUB_TYPE.SHARDED].delete(e),this.#s(),r}removeAllListeners(){let e={[kt.PUBSUB_TYPE.CHANNELS]:this.listeners[kt.PUBSUB_TYPE.CHANNELS],[kt.PUBSUB_TYPE.PATTERNS]:this.listeners[kt.PUBSUB_TYPE.PATTERNS],[kt.PUBSUB_TYPE.SHARDED]:this.listeners[kt.PUBSUB_TYPE.SHARDED]};return this.#s(),this.listeners[kt.PUBSUB_TYPE.CHANNELS]=new Map,this.listeners[kt.PUBSUB_TYPE.PATTERNS]=new Map,this.listeners[kt.PUBSUB_TYPE.SHARDED]=new Map,e}removeShardedPubSubListenersForSlots(e){let r=new Map;for(let[n,s]of this.listeners[kt.PUBSUB_TYPE.SHARDED])e.has((0,Zur.default)(n))&&(r.set(n,s),this.listeners[kt.PUBSUB_TYPE.SHARDED].delete(n));return this.#s(),{[kt.PUBSUB_TYPE.SHARDED]:r}}#l(e,r,n,s){let i=(s??n).toString(),a=this.listeners[e].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)}};kt.PubSub=pre});var UYe=E(KI=>{"use strict";var elr=KI&&KI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(KI,"__esModule",{value:!0});var FYe=mB(),tlr=elr(MYe()),zI=tB(),mre=VI(),Cb=Pl(),Ib=HI(),rlr=Buffer.from("pong"),nlr=Buffer.from("RESET"),slr={...zI.PUSH_TYPE_MAPPING,[zI.RESP_TYPES.SIMPLE_STRING]:Buffer},hre=class t{#e;#t;#r=new FYe.DoublyLinkedList;#n=new FYe.EmptyAwareSinglyLinkedList;#a;#o;decoder;#s=new mre.PubSub;#i=[this.#p.bind(this)];#c;setMaintenanceCommandTimeout(e){if(this.#c===e){(0,Ib.dbgMaintenance)(`Queue already set maintenanceCommandTimeout to ${e}, skipping`);return}if((0,Ib.dbgMaintenance)(`Setting maintenance command timeout to ${e}`),this.#c=e,this.#c===void 0){(0,Ib.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;t.#C(i),r++;let a=this.#c,o=AbortSignal.timeout(a);i.timeout={signal:o,listener:()=>{this.#r.remove(s),i.reject(new Cb.CommandTimeoutDuringMaintenanceError(a))},originalTimeout:i.timeout?.originalTimeout},o.addEventListener("abort",i.timeout.listener,{once:!0})}(0,Ib.dbgMaintenance)(`Total of ${r} of ${n} timeouts reset to ${e}`)}get isPubSubActive(){return this.#s.isActive}constructor(e,r,n){this.#e=e,this.#t=r,this.#a=n,this.decoder=this.#f()}#l(e){this.#n.shift().resolve(e)}#h(e){this.#n.shift().reject(e)}#p(e){if(this.#s.handleMessageReply(e))return!0;let r=mre.PubSub.isShardedUnsubscribe(e);if(r&&!this.#n.length){let n=e[1].toString();return this.#a(n,this.#s.removeShardedListeners(n)),!0}else if(r||mre.PubSub.isStatusReply(e)){let n=this.#n.head.value;return(Number.isNaN(n.channelsCounter)&&e[2]===0||--n.channelsCounter===0)&&this.#n.shift().resolve(),!0}return!1}#d(){return this.#n.head.value.typeMapping??{}}#f(){return new zI.Decoder({onReply:e=>this.#l(e),onErrorReply:e=>this.#h(e),onPush:e=>{for(let r of this.#i)if(r(e))return},getTypeMapping:()=>this.#d()})}addPushHandler(e){this.#i.push(e)}async waitForInflightCommandsToComplete(e){if(this.#n.length!==0)return new Promise(r=>{let n=()=>{s&&clearTimeout(s),r()},s,i=e?.timeoutMs;i!==void 0&&i>0&&(s=setTimeout(()=>{this.#n.events.off("empty",n);let a=this.#n.length;(0,Ib.dbgMaintenance)(`waitForInflightCommandsToComplete timed out after ${i}ms with ${a} commands still waiting`),e?.flushOnTimeout&&a>0&&((0,Ib.dbgMaintenance)(`Flushing ${a} commands that timed out waiting for reply`),this.#S(new Cb.TimeoutError)),r()},i)),this.#n.events.once("empty",n)})}addCommand(e,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 Cb.AbortError):new Promise((n,s)=>{let i,a={args:e,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 Cb.CommandTimeoutDuringMaintenanceError(o):new Cb.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 Cb.AbortError)}},u.addEventListener("abort",a.abort.listener,{once:!0})),i=this.#r.add(a,r?.asap)})}#m(e,r=!1,n){return new Promise((s,i)=>{this.#r.add({args:e.args,chainId:n,abort:void 0,timeout:void 0,resolve(){e.resolve(),s()},reject(a){e.reject?.(),i(a)},channelsCounter:e.channelsCounter,typeMapping:zI.PUSH_TYPE_MAPPING},r)})}#y(){this.#e===2&&(this.decoder.onReply=e=>{if(Array.isArray(e)){if(this.#p(e))return;let r=typeof e[0]=="string"?Buffer.from(e[0]):e[0];if(rlr.equals(r)){let{resolve:n,typeMapping:s}=this.#n.shift(),i=e[1].length===0?e[0]:e[1];n(s?.[zI.RESP_TYPES.SIMPLE_STRING]===Buffer?i:i.toString());return}}return this.#l(e)},this.decoder.getTypeMapping=()=>slr)}subscribe(e,r,n,s){let i=this.#s.subscribe(e,r,n,s);if(i)return this.#y(),this.#m(i)}#g(){this.decoder.onReply=e=>this.#l(e),this.decoder.getTypeMapping=()=>this.#d()}unsubscribe(e,r,n,s){let i=this.#s.unsubscribe(e,r,n,s);if(i){if(i&&this.#e===2){let{resolve:a}=i;i.resolve=()=>{this.#s.isActive||this.#g(),a()}}return this.#m(i)}}removeAllPubSubListeners(){return this.#s.removeAllListeners()}removeShardedPubSubListenersForSlots(e){return this.#s.removeShardedPubSubListenersForSlots(e)}resubscribe(e){let r=this.#s.resubscribe();if(r.length)return this.#y(),Promise.all(r.map(n=>this.#m(n,!0,e)))}extendPubSubChannelListeners(e,r,n){let s=this.#s.extendChannelListeners(e,r,n);if(s)return this.#y(),this.#m(s)}extendPubSubListeners(e,r){let n=this.#s.extendTypeListeners(e,r);if(n)return this.#y(),this.#m(n)}getPubSubListeners(e){return this.#s.listeners[e]}monitor(e,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.#E?this.#E=e:this.decoder.onReply=e,this.decoder.getTypeMapping=()=>i,n()},reject:s,channelsCounter:void 0,typeMapping:i},r?.asap)})}resetDecoder(){this.#g(),this.decoder.reset()}#E;async reset(e,r){return new Promise((n,s)=>{this.#E=this.decoder.onReply,this.decoder.onReply=i=>{if(typeof i=="string"&&i==="RESET"||i instanceof Buffer&&nlr.equals(i)){this.#g(),this.#E=void 0,this.#s.reset(),this.#n.shift().resolve(i);return}this.#E(i)},this.#r.push({args:["RESET"],chainId:e,abort:void 0,timeout:void 0,resolve:n,reject:s,channelsCounter:void 0,typeMapping:r})})}isWaitingToWrite(){return this.#r.length>0}*commandsToWrite(){let e=this.#r.shift();for(;e;){let r;try{r=(0,tlr.default)(e.args)}catch(n){e.reject(n),e=this.#r.shift();continue}e.args=void 0,e.abort&&(t.#A(e),e.abort=void 0),e.timeout&&(t.#C(e),e.timeout=void 0),this.#o=e.chainId,e.chainId=void 0,this.#n.push(e),yield r,e=this.#r.shift()}}#S(e){for(let r of this.#n)r.reject(e);this.#n.reset()}static#A(e){e.abort.signal.removeEventListener("abort",e.abort.listener)}static#C(e){e.timeout?.signal.removeEventListener("abort",e.timeout.listener)}static#_(e,r){e.abort&&t.#A(e),e.timeout&&t.#C(e),e.reject(r)}flushWaitingForReply(e){if(this.resetDecoder(),this.#s.reset(),this.#S(e),!!this.#o){for(;this.#r.head?.value.chainId===this.#o;)t.#_(this.#r.shift(),e);this.#o=void 0}}flushAll(e){this.resetDecoder(),this.#s.reset(),this.#S(e);for(let r of this.#r)t.#_(r,e);this.#r.reset()}isEmpty(){return this.#r.length===0&&this.#n.length===0}extractCommandsForSlots(e){let r=[],n=this.#r.head;for(;n!==void 0;)if(n.value.slotNumber!==void 0&&e.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 e=[],r=this.#r.head;for(;r;)e.push(r.value),this.#r.remove(r),r=r.next;return e}prependCommandsToWrite(e){if(e.length)for(let r=e.length-1;r>=0;r--)this.#r.unshift(e[r])}};KI.default=hre});var Wl=E(Ml=>{"use strict";Object.defineProperty(Ml,"__esModule",{value:!0});Ml.scriptArgumentsPrefix=Ml.functionArgumentsPrefix=Ml.getTransformReply=Ml.attachConfig=void 0;function qYe(){throw new Error("Some RESP3 results for Redis Query Engine responses may change. Refer to the readme for guidance")}function ilr({BaseClass:t,commands:e,createCommand:r,createModuleCommand:n,createFunctionCommand:s,createScriptCommand:i,config:a}){let o=a?.RESP??2,c=class extends t{};for(let[u,l]of Object.entries(e))a?.RESP==3&&l.unstableResp3&&!a.unstableResp3?c.prototype[u]=qYe: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,p]of Object.entries(l))a.RESP==3&&p.unstableResp3&&!a.unstableResp3?d[f]=qYe:d[f]=n(p,o);jYe(c.prototype,u,d)}if(a?.functions)for(let[u,l]of Object.entries(a.functions)){let d=Object.create(null);for(let[f,p]of Object.entries(l))d[f]=s(f,p,o);jYe(c.prototype,u,d)}if(a?.scripts)for(let[u,l]of Object.entries(a.scripts))c.prototype[u]=i(l,o);return c}Ml.attachConfig=ilr;function jYe(t,e,r){Object.defineProperty(t,e,{get(){let n=Object.create(r);return n._self=this,Object.defineProperty(this,e,{value:n}),n}})}function alr(t,e){switch(typeof t.transformReply){case"function":return t.transformReply;case"object":return t.transformReply[e]}}Ml.getTransformReply=alr;function olr(t,e){let r=[e.IS_READ_ONLY?"FCALL_RO":"FCALL",t];return e.NUMBER_OF_KEYS!==void 0&&r.push(e.NUMBER_OF_KEYS.toString()),r}Ml.functionArgumentsPrefix=olr;function clr(t){let e=[t.IS_READ_ONLY?"EVALSHA_RO":"EVALSHA",t.SHA1];return t.NUMBER_OF_KEYS!==void 0&&e.push(t.NUMBER_OF_KEYS.toString()),e}Ml.scriptArgumentsPrefix=clr});var YI=E(Are=>{"use strict";Object.defineProperty(Are,"__esModule",{value:!0});var HYe=Pl(),gre=class{typeMapping;constructor(e){this.typeMapping=e}queue=[];scriptsInUse=new Set;addCommand(e,r){this.queue.push({args:e,transformReply:r})}addScript(e,r,n){let s=[];s.preserve=r.preserve,this.scriptsInUse.has(e.SHA1)?s.push("EVALSHA",e.SHA1):(this.scriptsInUse.add(e.SHA1),s.push("EVAL",e.SCRIPT)),e.NUMBER_OF_KEYS!==void 0&&s.push(e.NUMBER_OF_KEYS.toString()),s.push(...r),this.addCommand(s,n)}transformReplies(e){let r=[],n=e.map((s,i)=>{if(s instanceof HYe.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 HYe.MultiErrorReply(n,r);return n}};Are.default=gre});var xre=E(JI=>{"use strict";var QYe=JI&&JI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(JI,"__esModule",{value:!0});var ulr=QYe(yu()),llr=QYe(YI()),Tb=Wl(),hB=Dl(),yre=class t{static#e(e,r){let n=(0,Tb.getTransformReply)(e,r);return function(...s){let i=new hB.BasicCommandParser;e.parseCommand(i,...s);let a=i.redisArgs;return a.preserve=i.preserve,this.addCommand(a,n)}}static#t(e,r){let n=(0,Tb.getTransformReply)(e,r);return function(...s){let i=new hB.BasicCommandParser;e.parseCommand(i,...s);let a=i.redisArgs;return a.preserve=i.preserve,this._self.addCommand(a,n)}}static#r(e,r,n){let s=(0,Tb.functionArgumentsPrefix)(e,r),i=(0,Tb.getTransformReply)(r,n);return function(...a){let o=new hB.BasicCommandParser;o.push(...s),r.parseCommand(o,...a);let c=o.redisArgs;return c.preserve=o.preserve,this._self.addCommand(c,i)}}static#n(e,r){let n=(0,Tb.getTransformReply)(e,r);return function(...s){let i=new hB.BasicCommandParser;e.parseCommand(i,...s);let a=i.redisArgs;return a.preserve=i.preserve,this.#c(e,a,n)}}static extend(e){return(0,Tb.attachConfig)({BaseClass:t,commands:ulr.default,createCommand:t.#e,createModuleCommand:t.#t,createFunctionCommand:t.#r,createScriptCommand:t.#n,config:e})}#a;#o;#s;#i;constructor(e,r,n){this.#a=new llr.default(n),this.#o=e,this.#s=r}SELECT(e,r){return this.#i=e,this.#a.addCommand(["SELECT",e.toString()],r),this}select=this.SELECT;addCommand(e,r){return this.#a.addCommand(e,r),this}#c(e,r,n){return this.#a.addScript(e,r,n),this}async exec(e=!1){return e?this.execAsPipeline():this.#a.transformReplies(await this.#o(this.#a.queue,this.#i))}EXEC=this.exec;execTyped(e=!1){return this.exec(e)}async execAsPipeline(){return this.#a.queue.length===0?[]:this.#a.transformReplies(await this.#s(this.#a.queue,this.#i))}execAsPipelineTyped(){return this.execAsPipeline()}};JI.default=yre});var zYe=E(Rb=>{"use strict";var GYe=Rb&&Rb.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Rb,"__esModule",{value:!0});Rb.RedisLegacyClient=void 0;var dlr=Wl(),VYe=GYe(yu()),flr=GYe(YI()),wb=class t{static#e(e,r){let n;return typeof r[r.length-1]=="function"&&(n=r.pop()),t.pushArguments(e,r),n}static pushArguments(e,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(e){this.#r=e;let r=e.options?.RESP??2;for(let[n,s]of Object.entries(VYe.default))this[n]=t.#t(n,s,r);this.#n=bre.factory(r)}sendCommand(...e){let r=[],n=t.#e(r,e),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)}};Rb.RedisLegacyClient=wb;var bre=class t{static#e(e,r,n){let s=wb.getTransformReply(r,n);return function(...i){let a=[e];return wb.pushArguments(a,i),this.#t.addCommand(a,s),this}}static factory(e){let r=class extends t{};for(let[n,s]of Object.entries(VYe.default))r.prototype[n]=t.#e(n,s,e);return n=>new r(n)}#t=new flr.default;#r;constructor(e){this.#r=e}sendCommand(...e){let r=[];return wb.pushArguments(r,e),this.#t.addCommand(r),this}exec(e){let r=this.#r._executeMulti(this.#t.queue);if(!e){r.catch(n=>this.#r.emit("error",n));return}r.then(n=>e(null,this.#t.transformReplies(n))).catch(n=>e?.(n))}}});var Nb=E(so=>{"use strict";Object.defineProperty(so,"__esModule",{value:!0});so.PooledNoRedirectClientSideCache=so.BasicPooledClientSideCache=so.PooledClientSideCacheProvider=so.BasicClientSideCache=so.ClientSideCacheProvider=so.CacheStats=void 0;var plr=require("stream"),XI=class t{hitCount;missCount;loadSuccessCount;loadFailureCount;totalLoadTime;evictionCount;constructor(e,r,n,s,i,a){if(this.hitCount=e,this.missCount=r,this.loadSuccessCount=n,this.loadFailureCount=s,this.totalLoadTime=i,this.evictionCount=a,e<0||r<0||n<0||s<0||i<0||a<0)throw new Error("All statistics values must be non-negative")}static of(e=0,r=0,n=0,s=0,i=0,a=0){return new t(e,r,n,s,i,a)}static empty(){return t.EMPTY_STATS}static EMPTY_STATS=new t(0,0,0,0,0,0);requestCount(){return this.hitCount+this.missCount}hitRate(){let e=this.requestCount();return e===0?1:this.hitCount/e}missRate(){let e=this.requestCount();return e===0?0:this.missCount/e}loadCount(){return this.loadSuccessCount+this.loadFailureCount}loadFailureRate(){let e=this.loadCount();return e===0?0:this.loadFailureCount/e}averageLoadPenalty(){let e=this.loadCount();return e===0?0:this.totalLoadTime/e}minus(e){return t.of(Math.max(0,this.hitCount-e.hitCount),Math.max(0,this.missCount-e.missCount),Math.max(0,this.loadSuccessCount-e.loadSuccessCount),Math.max(0,this.loadFailureCount-e.loadFailureCount),Math.max(0,this.totalLoadTime-e.totalLoadTime),Math.max(0,this.evictionCount-e.evictionCount))}plus(e){return t.of(this.hitCount+e.hitCount,this.missCount+e.missCount,this.loadSuccessCount+e.loadSuccessCount,this.loadFailureCount+e.loadFailureCount,this.totalLoadTime+e.totalLoadTime,this.evictionCount+e.evictionCount)}};so.CacheStats=XI;var gB=class t{static INSTANCE=new t;constructor(){}recordHits(e){}recordMisses(e){}recordLoadSuccess(e){}recordLoadFailure(e){}recordEvictions(e){}snapshot(){return XI.empty()}};function mlr(){return gB.INSTANCE}var AB=class t{#e=0;#t=0;#r=0;#n=0;#a=0;#o=0;recordHits(e){this.#e+=e}recordMisses(e){this.#t+=e}recordLoadSuccess(e){this.#r++,this.#a+=e}recordLoadFailure(e){this.#n++,this.#a+=e}recordEvictions(e){this.#o+=e}snapshot(){return XI.of(this.#e,this.#t,this.#r,this.#n,this.#a,this.#o)}static create(){return new t}};function hlr(t){let e=new Array(t.length*2);for(let r=0;r0&&this.#r.recordEvictions(r)}get(e){let r=this.#e.get(e);if(r&&!r.validate()){this.delete(e),this.#r.recordEvictions(1),this.emit("cache-evict",e);return}return r!==void 0&&this.lru&&(this.#e.delete(e),this.#e.set(e,r)),r}delete(e){let r=this.#e.get(e);r&&(r.invalidate(),this.#e.delete(e))}has(e){return this.#e.has(e)}set(e,r,n){let s=this.#e.size,i=this.#e.get(e);i&&(s--,i.invalidate()),this.maxEntries>0&&s>=this.maxEntries&&(this.deleteOldest(),this.#r.recordEvictions(1)),this.#e.set(e,r);for(let a of n)this.#t.has(a.toString())||this.#t.set(a.toString(),new Set),this.#t.get(a.toString()).add(e)}size(){return this.#e.size}createValueEntry(e,r){return new ZI(this.ttl,r)}createPromiseEntry(e,r){return new eT(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()}};so.BasicClientSideCache=bB;var EB=class extends bB{#e=!1;disable(){this.#e=!0}enable(){this.#e=!1}get(e){if(!this.#e)return super.get(e)}has(e){return this.#e?!1:super.has(e)}onPoolClose(){this.clear()}};so.PooledClientSideCacheProvider=EB;var _B=class extends EB{onError(){this.clear(!1)}onClose(){this.clear(!1)}};so.BasicPooledClientSideCache=_B;var Ere=class extends ZI{#e;constructor(e,r,n){super(e,n),this.#e=r}validate(){let e=super.validate();return this.#e&&(e=e&&this.#e.client.isReady&&this.#e.client.socketEpoch==this.#e.epoch),e}},_re=class extends eT{#e;constructor(e,r,n){super(e,n),this.#e=r}validate(){return super.validate()&&this.#e.client.isReady&&this.#e.client.socketEpoch==this.#e.epoch}},Sre=class extends _B{createValueEntry(e,r){let n={epoch:e.socketEpoch,client:e};return new Ere(this.ttl,n,r)}createPromiseEntry(e,r){let n={epoch:e.socketEpoch,client:e};return new _re(this.ttl,n,r)}onError(){}onClose(){}};so.PooledNoRedirectClientSideCache=Sre});var SB=E(Cre=>{"use strict";Object.defineProperty(Cre,"__esModule",{value:!0});var vre=class{#e;#t;get(e){return JSON.stringify(e,KYe())===this.#t?this.#e:void 0}set(e,r){this.#e=r,this.#t=JSON.stringify(e,KYe())}};Cre.default=vre;function KYe(){let t=new WeakSet;return function(r,n){return n&&typeof n=="object"?t.has(n)?"circular":(t.add(n),n):n}}});var Rre=E(Ob=>{"use strict";var wre=Ob&&Ob.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Ob,"__esModule",{value:!0});Ob.RedisClientPool=void 0;var glr=yu(),Alr=wre(Pb()),ylr=require("node:events"),Ire=mB(),xlr=Pl(),mg=Wl(),blr=wre(xre()),YYe=Nb(),vB=Dl(),Elr=wre(SB()),Tre=class t extends ylr.EventEmitter{static#e(e,r){let n=(0,mg.getTransformReply)(e,r);return async function(...s){let i=new vB.BasicCommandParser;return e.parseCommand(i,...s),this.execute(a=>a._executeCommand(e,i,this._commandOptions,n))}}static#t(e,r){let n=(0,mg.getTransformReply)(e,r);return async function(...s){let i=new vB.BasicCommandParser;return e.parseCommand(i,...s),this._self.execute(a=>a._executeCommand(e,i,this._self._commandOptions,n))}}static#r(e,r,n){let s=(0,mg.functionArgumentsPrefix)(e,r),i=(0,mg.getTransformReply)(r,n);return async function(...a){let o=new vB.BasicCommandParser;return o.push(...s),r.parseCommand(o,...a),this._self.execute(c=>c._executeCommand(r,o,this._self._commandOptions,i))}}static#n(e,r){let n=(0,mg.scriptArgumentsPrefix)(e),s=(0,mg.getTransformReply)(e,r);return async function(...i){let a=new vB.BasicCommandParser;return a.pushVariadic(n),e.parseCommand(a,...i),this.execute(o=>o._executeScript(e,a,this._commandOptions,s))}}static#a=new Elr.default;static create(e,r){let n=t.#a.get(e);return n||(n=(0,mg.attachConfig)({BaseClass:t,commands:glr.NON_STICKY_COMMANDS,createCommand:t.#e,createModuleCommand:t.#t,createFunctionCommand:t.#r,createScriptCommand:t.#n,config:e}),n.prototype.Multi=blr.default.extend(e),t.#a.set(e,n)),Object.create(new n(e,r))}static#o={minimum:1,maximum:100,acquireTimeout:3e3,cleanupDelay:3e3};#s;#i;#c=new Ire.SinglyLinkedList;get idleClients(){return this._self.#c.length}#l=new Ire.DoublyLinkedList;get clientsInUse(){return this._self.#l.length}get totalClients(){return this._self.#c.length+this._self.#l.length}#h=new Ire.SinglyLinkedList;get tasksQueueLength(){return this._self.#h.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(e,r){if(super(),this.#i={...t.#o,...r},r?.clientSideCache)if(e===void 0&&(e={}),r.clientSideCache instanceof YYe.PooledClientSideCacheProvider)this.#f=e.clientSideCache=r.clientSideCache;else{let n=r.clientSideCache;this.#f=e.clientSideCache=new YYe.BasicPooledClientSideCache(n)}this.#s=Alr.default.factory(e).bind(void 0,e)}_self=this;_commandOptions;withCommandOptions(e){let r=Object.create(this._self);return r._commandOptions=e,r}#m(e,r){let n=Object.create(this._self);return n._commandOptions=Object.create(this._commandOptions??null),n._commandOptions[e]=r,n}withTypeMapping(e){return this._self.#m("typeMapping",e)}withAbortSignal(e){return this._self.#m("abortSignal",e)}asap(){return this._self.#m("asap",!0)}async connect(){if(this._self.#p)return;this._self.#p=!0;let e=[];for(;e.lengththis.emit("error",r)));try{await e.value.connect()}catch(r){throw this._self.#l.remove(e),r}this._self.#E(e)}execute(e){return new Promise((r,n)=>{let s=this._self.#c.shift(),{tail:i}=this._self.#h;if(!s){let o;this._self.#i.acquireTimeout>0&&(o=setTimeout(()=>{this._self.#h.remove(c,i),n(new xlr.TimeoutError("Timeout waiting for a client"))},this._self.#i.acquireTimeout));let c=this._self.#h.push({timeout:o,resolve:r,reject:n,fn:e});this.totalClientsthis.#E(e)):(r(i),this.#E(e))}#E(e){let r=this.#h.shift();if(r){clearTimeout(r.timeout),this.#g(e,r.resolve,r.reject,r.fn);return}this.#l.remove(e),this.#c.push(e.value),this.#S()}cleanupTimeout;#S(){this.totalClients<=this.#i.minimum||(clearTimeout(this.cleanupTimeout),this.cleanupTimeout=setTimeout(()=>this.#A(),this.#i.cleanupDelay))}#A(){let e=Math.min(this.#c.length,this.totalClients-this.#i.minimum);for(let r=0;rn.sendCommand(e,r))}MULTI(){return new this.Multi((e,r)=>this.execute(n=>n._executeMulti(e,r)),e=>this.execute(r=>r._executePipeline(e)),this._commandOptions?.typeMapping)}multi=this.MULTI;async close(){if(!this._self.#d&&this._self.#p){this._self.#d=!0;try{let e=[];for(let r of this._self.#c)e.push(r.close());for(let r of this._self.#l)e.push(r.close());await Promise.all(e),this._self.#f?.onPoolClose(),this._self.#c.reset(),this._self.#l.reset()}catch{}finally{this._self.#d=!1}}}destroy(){for(let e of this._self.#c)e.destroy();this._self.#c.reset();for(let e of this._self.#l)e.destroy();this._self.#f?.onPoolClose(),this._self.#l.reset(),this._self.#p=!1}};Ob.RedisClientPool=Tre});var JYe=E((AXr,_lr)=>{_lr.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 Pb=E(bu=>{"use strict";var Slr=bu&&bu.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),vlr=bu&&bu.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Clr=bu&&bu.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Slr(e,t,r);return vlr(e,t),e},Lb=bu&&bu.__importDefault||function(t){return t&&t.__esModule?t:{default:t}},xu;Object.defineProperty(bu,"__esModule",{value:!0});var Db=Lb(yu()),Ilr=Lb(OYe()),XYe=BYe(),Tlr=Lb(UYe()),wlr=require("node:events"),hg=Wl(),j0=Pl(),Rlr=require("node:url"),kb=VI(),Nlr=Lb(xre()),Olr=Lb(qJ()),Plr=zYe(),Dlr=Rre(),gg=Ie(),ZYe=Nb(),CB=Dl(),klr=Lb(SB()),Llr=JYe(),IB=Clr(HI()),TB=class extends wlr.EventEmitter{static#e(e,r){let n=(0,hg.getTransformReply)(e,r);return async function(...s){let i=new CB.BasicCommandParser;return e.parseCommand(i,...s),this._self._executeCommand(e,i,this._commandOptions,n)}}static#t(e,r){let n=(0,hg.getTransformReply)(e,r);return async function(...s){let i=new CB.BasicCommandParser;return e.parseCommand(i,...s),this._self._executeCommand(e,i,this._self._commandOptions,n)}}static#r(e,r,n){let s=(0,hg.functionArgumentsPrefix)(e,r),i=(0,hg.getTransformReply)(r,n);return async function(...a){let o=new CB.BasicCommandParser;return o.push(...s),r.parseCommand(o,...a),this._self._executeCommand(r,o,this._self._commandOptions,i)}}static#n(e,r){let n=(0,hg.scriptArgumentsPrefix)(e),s=(0,hg.getTransformReply)(e,r);return async function(...i){let a=new CB.BasicCommandParser;return a.push(...n),e.parseCommand(a,...i),this._executeScript(e,a,this._commandOptions,s)}}static#a=new klr.default;static factory(e){let r=xu.#a.get(e);return r||(r=(0,hg.attachConfig)({BaseClass:xu,commands:Db.default,createCommand:xu.#e,createModuleCommand:xu.#t,createFunctionCommand:xu.#r,createScriptCommand:xu.#n,config:e}),r.prototype.Multi=Nlr.default.extend(e),xu.#a.set(e,r)),n=>Object.create(new r(n))}static create(e){return xu.factory(e)(e)}static parseOptions(e){if(e?.url){let r=xu.parseURL(e.url);if(e.socket){if(e.socket.tls!==void 0&&e.socket.tls!==r.socket.tls)throw new TypeError(`tls socket option is set to ${e.socket.tls} which is mismatch with protocol or the URL ${e.url} passed`);r.socket=Object.assign(e.socket,r.socket)}Object.assign(e,r)}return e}static parseURL(e){let{hostname:r,port:n,protocol:s,username:i,password:a,pathname:o}=new Rlr.URL(e),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;#h;#p;#d;#f=null;#m=!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.#p!==void 0}get isDirtyWatch(){return this._self.#h!==void 0}setDirtyWatch(e){this._self.#h=e}constructor(e){if(super(),this.#y(e),this.#o=this.#g(e),this.#i=this.#E(),this.#s=this.#v(),this.#o.maintNotifications!=="disabled"&&new IB.default(this.#i,this,this.#o),this.#o.clientSideCache){if(this.#o.clientSideCache instanceof ZYe.ClientSideCacheProvider)this.#d=this.#o.clientSideCache;else{let r=this.#o.clientSideCache;this.#d=new ZYe.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 e?.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})}#y(e){if(e?.clientSideCache&&e?.RESP!==3)throw new Error("Client Side Caching is only supported with RESP3");if(e?.emitInvalidate&&e?.RESP!==3)throw new Error("emitInvalidate is only supported with RESP3");if(e?.clientSideCache&&e?.emitInvalidate)throw new Error("emitInvalidate is not supported (or necessary) when clientSideCache is enabled");if(e?.maintNotifications&&e?.maintNotifications!=="disabled"&&e?.RESP!==3)throw new Error("Graceful Maintenance is only supported with RESP3")}#g(e={}){if(!e.credentialsProvider&&(e.username||e.password)&&(e.credentialsProvider={type:"async-credentials-provider",credentials:async()=>({username:e.username,password:e.password})}),e.database&&(this._self.#c=e.database),e.commandOptions&&(this._commandOptions=e.commandOptions),e.maintNotifications!=="disabled"&&IB.default.setupDefaultMaintOptions(e),e.url){let r=xu.parseOptions(e);return r?.database&&(this._self.#c=r.database),r}return e}#E(){return new Tlr.default(this.#o.RESP??2,this.#o.commandsQueueMaxLength,(e,r)=>this.emit("sharded-channel-moved",e,r))}reAuthenticate=async e=>{this.isPubSubActive&&!this.#o.RESP||await this.sendCommand((0,gg.parseArgs)(Db.default.AUTH,{username:e.username,password:e.password??""}))};#S(e){return e.subscribe({onNext:r=>{this.reAuthenticate(r).catch(n=>{let s=n instanceof Error?n.message:String(n);e.onReAuthenticationError(new XYe.CredentialsError(s))})},onError:r=>{let n=`Error from streaming credentials provider: ${r.message}`;e.onReAuthenticationError(new XYe.UnableToObtainNewCredentialsError(n))}})}async#A(e,r){let n=[],s=await this.#C();r&&s.reverse();for(let{cmd:i,errorHandler:a}of s)n.push(this.#i.addCommand(i,{chainId:e,asap:r}).catch(a));return n}async#C(){let e=[],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.#S(r);this.#f=a,i.password&&(s.AUTH={username:i.username??"default",password:i.password})}this.#o.name&&(s.SETNAME=this.#o.name),e.push({cmd:(0,gg.parseArgs)(Olr.default,this.#o.RESP,s)})}else{if(r&&r.type==="async-credentials-provider"){let s=await r.credentials();(s.username||s.password)&&e.push({cmd:(0,gg.parseArgs)(Db.default.AUTH,{username:s.username,password:s.password??""})})}if(r&&r.type==="streaming-credentials-provider"){let[s,i]=await this.#S(r);this.#f=i,(s.username||s.password)&&e.push({cmd:(0,gg.parseArgs)(Db.default.AUTH,{username:s.username,password:s.password??""})})}this.#o.name&&e.push({cmd:(0,gg.parseArgs)(Db.default.CLIENT_SETNAME,this.#o.name)})}this.#c!==0&&e.push({cmd:["SELECT",this.#c.toString()]}),this.#o.readonly&&e.push({cmd:(0,gg.parseArgs)(Db.default.READONLY)}),this.#o.disableClientInfo||(e.push({cmd:["CLIENT","SETINFO","LIB-VER",Llr.version],errorHandler:()=>{}}),e.push({cmd:["CLIENT","SETINFO","LIB-NAME",this.#o.clientInfoTag?`node-redis(${this.#o.clientInfoTag})`:"node-redis"],errorHandler:()=>{}})),this.#d&&e.push({cmd:this.#d.trackingOn()}),this.#o?.emitInvalidate&&e.push({cmd:["CLIENT","TRACKING","ON"]});let n=await IB.default.getHandshakeCommand(this.#o);return n&&e.push(n),e}#_(e){e.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"))}#v(){let e=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.#A(s,!0)),n.length)return this.#P(),Promise.all(n)},r=new Ilr.default(e,this.#o.socket);return this.#_(r),r}#b;#u(){!this.#o.pingInterval||!this.#s.isReady||(clearTimeout(this.#b),this.#b=setTimeout(()=>{this.#s.isReady&&this.sendCommand(["PING"]).then(e=>this.emit("ping-interval",e)).catch(e=>this.emit("error",e)).finally(()=>this.#u())},this.#o.pingInterval))}withCommandOptions(e){let r=Object.create(this._self);return r._commandOptions=e,r}_commandOptionsProxy(e,r){let n=Object.create(this._self);return n._commandOptions=Object.create(this._commandOptions??null),n._commandOptions[e]=r,n}withTypeMapping(e){return this._commandOptionsProxy("typeMapping",e)}withAbortSignal(e){return this._commandOptionsProxy("abortSignal",e)}asap(){return this._commandOptionsProxy("asap",!0)}legacy(){return new Plr.RedisLegacyClient(this)}createPool(e){return Dlr.RedisClientPool.create(this._self.#o,e)}duplicate(e){return new(Object.getPrototypeOf(this)).constructor({...this._self.#o,commandOptions:this._commandOptions,...e})}async connect(){return await this._self.#s.connect(),this}_ejectSocket(){let e=this._self.#s;return this._self.#s=null,e.removeAllListeners(),e}_insertSocket(e){this._self.#s&&this._self._ejectSocket().destroy(),this._self.#s=e,this._self.#_(this._self.#s)}_maintenanceUpdate(e){this._self.#s.setMaintenanceTimeout(e.relaxedSocketTimeout),this._self.#i.setMaintenanceCommandTimeout(e.relaxedCommandTimeout)}_pause(){this._self.#m=!0}_unpause(){this._self.#m=!1,this._self.#N()}_handleSmigrated(e){this._self.emit(IB.SMIGRATED_EVENT,e)}_getQueue(){return this._self.#i}async _executeCommand(e,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&&e.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(e,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]=e.SCRIPT,a=await this.sendCommand(i,n)}return s?s(a,r.preserve,n?.typeMapping):a}sendCommand(e,r){if(this._self.#s.isOpen){if(!this._self.#s.isReady&&this._self.#o.disableOfflineQueue)return Promise.reject(new j0.ClientOfflineError)}else return Promise.reject(new j0.ClientClosedError);let n={...this._self._commandOptions,...r},s=this._self.#i.addCommand(e,n);return this._self.#I(),s}async SELECT(e){await this.sendCommand(["SELECT",e.toString()]),this._self.#c=e}select=this.SELECT;#x(e){return e===void 0?Promise.resolve():(this.#I(),e)}SUBSCRIBE(e,r,n){return this._self.#x(this._self.#i.subscribe(kb.PUBSUB_TYPE.CHANNELS,e,r,n))}subscribe=this.SUBSCRIBE;UNSUBSCRIBE(e,r,n){return this._self.#x(this._self.#i.unsubscribe(kb.PUBSUB_TYPE.CHANNELS,e,r,n))}unsubscribe=this.UNSUBSCRIBE;PSUBSCRIBE(e,r,n){return this._self.#x(this._self.#i.subscribe(kb.PUBSUB_TYPE.PATTERNS,e,r,n))}pSubscribe=this.PSUBSCRIBE;PUNSUBSCRIBE(e,r,n){return this._self.#x(this._self.#i.unsubscribe(kb.PUBSUB_TYPE.PATTERNS,e,r,n))}pUnsubscribe=this.PUNSUBSCRIBE;SSUBSCRIBE(e,r,n){return this._self.#x(this._self.#i.subscribe(kb.PUBSUB_TYPE.SHARDED,e,r,n))}sSubscribe=this.SSUBSCRIBE;SUNSUBSCRIBE(e,r,n){return this._self.#x(this._self.#i.unsubscribe(kb.PUBSUB_TYPE.SHARDED,e,r,n))}sUnsubscribe=this.SUNSUBSCRIBE;async WATCH(e){let r=await this._self.sendCommand((0,gg.pushVariadicArguments)(["WATCH"],e));return this._self.#p??=this._self.socketEpoch,r}watch=this.WATCH;async UNWATCH(){let e=await this._self.sendCommand(["UNWATCH"]);return this._self.#p=void 0,e}unwatch=this.UNWATCH;getPubSubListeners(e){return this._self.#i.getPubSubListeners(e)}extendPubSubChannelListeners(e,r,n){return this._self.#x(this._self.#i.extendPubSubChannelListeners(e,r,n))}extendPubSubListeners(e,r){return this._self.#x(this._self.#i.extendPubSubListeners(e,r))}#P(){this.#m||this.#s.write(this.#i.commandsToWrite())}#T;#I(){!this.#s.isReady||this.#T||(this.#T=setImmediate(()=>{this.#P(),this.#T=void 0}))}#N(){this.#i.isWaitingToWrite()&&this.#I()}async _executePipeline(e,r){if(!this._self.#s.isOpen)return Promise.reject(new j0.ClientClosedError);let n=Symbol("Pipeline Chain"),s=Promise.all(e.map(({args:a})=>this._self.#i.addCommand(a,{chainId:n,typeMapping:this._commandOptions?.typeMapping})));this._self.#I();let i=await s;return r!==void 0&&(this._self.#c=r),i}async _executeMulti(e,r){let n=this._self.#h;this._self.#h=void 0;let s=this._self.#p;if(this._self.#p=void 0,!this._self.#s.isOpen)throw new j0.ClientClosedError;if(n)throw new j0.WatchError(n);if(s&&s!==this._self.socketEpoch)throw new j0.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 e)o.push(this._self.#i.addCommand(l,{chainId:a,typeMapping:i}));o.push(this._self.#i.addCommand(["EXEC"],{chainId:a})),this._self.#I();let c=await Promise.all(o),u=c[c.length-1];if(u===null)throw new j0.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(e){let r=e?.cursor??"0";do{let n=await this.scan(r,e);r=n.cursor,yield n.keys}while(r!=="0")}async*hScanIterator(e,r){let n=r?.cursor??"0";do{let s=await this.hScan(e,n,r);n=s.cursor,yield s.entries}while(n!=="0")}async*hScanValuesIterator(e,r){let n=r?.cursor??"0";do{let s=await this.hScanNoValues(e,n,r);n=s.cursor,yield s.fields}while(n!=="0")}async*hScanNoValuesIterator(e,r){let n=r?.cursor??"0";do{let s=await this.hScanNoValues(e,n,r);n=s.cursor,yield s.fields}while(n!=="0")}async*sScanIterator(e,r){let n=r?.cursor??"0";do{let s=await this.sScan(e,n,r);n=s.cursor,yield s.members}while(n!=="0")}async*zScanIterator(e,r){let n=r?.cursor??"0";do{let s=await this.zScan(e,n,r);n=s.cursor,yield s.members}while(n!=="0")}async MONITOR(e){let r=this._self.#i.monitor(e,{typeMapping:this._commandOptions?.typeMapping});this._self.#I(),await r,this._self.#l=e}monitor=this.MONITOR;async reset(){let e=Symbol("Reset Chain"),r=[this._self.#i.reset(e)],n=this._self.#o?.database??0;this._self.#f?.dispose(),this._self.#f=null,r.push(...await this._self.#A(e,!1)),this._self.#I(),await Promise.all(r),this._self.#c=n,this._self.#l=void 0,this._self.#h=void 0,this._self.#p=void 0}resetIfDirty(){let e=!1;if(this._self.#c!==(this._self.#o?.database??0)&&(console.warn("Returning a client with a different selected DB"),e=!0),this._self.#l&&(console.warn("Returning a client with active MONITOR"),e=!0),this._self.#i.isPubSubActive&&(console.warn("Returning a client with active PubSub"),e=!0),(this._self.#h||this._self.#p)&&(console.warn("Returning a client with active WATCH"),e=!0),e)return this.reset()}QUIT(){return this._self.#f?.dispose(),this._self.#f=null,this._self.#s.quit(async()=>{clearTimeout(this._self.#b);let e=this._self.#i.addCommand(["QUIT"]);return this._self.#I(),e})}quit=this.QUIT;disconnect(){return Promise.resolve(this.destroy())}close(){return new Promise(e=>{if(clearTimeout(this._self.#b),this._self.#s.close(),this._self.#d?.onClose(),this._self.#i.isEmpty())return this._self.#s.destroySocket(),e();let r=()=>{this._self.#i.isEmpty()&&(this._self.#s.off("data",r),this._self.#s.destroySocket(),e())};this._self.#s.on("data",r),this._self.#f?.dispose(),this._self.#f=null})}destroy(){clearTimeout(this._self.#b),this._self.#i.flushAll(new j0.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()}};xu=TB;bu.default=TB});var rJe=E($l=>{"use strict";var tJe=$l&&$l.__importDefault||function(t){return t&&t.__esModule?t:{default:t}},Ore;Object.defineProperty($l,"__esModule",{value:!0});$l.RESUBSCRIBE_LISTENERS_EVENT=void 0;var Blr=Pl(),Mlr=tJe(Pb()),Do=VI(),Nre=tJe(fre()),eJe=Nb(),io=HI();$l.RESUBSCRIBE_LISTENERS_EVENT="__resubscribeListeners";var wB=class{static#e=16384;#t;#r;#n;slots=new Array(Ore.#e);masters=new Array;replicas=new Array;nodeByAddress=new Map;pubSubNode;clientSideCache;smigratedSeqIdsSeen=new Set;#a=!1;get isOpen(){return this.#a}#o(e){if(e?.clientSideCache&&e?.RESP!==3)throw new Error("Client Side Caching is only supported with RESP3")}constructor(e,r){this.#o(e),this.#t=e,e?.clientSideCache&&(e.clientSideCache instanceof eJe.PooledClientSideCacheProvider?this.clientSideCache=e.clientSideCache:this.clientSideCache=new eJe.BasicPooledClientSideCache(e.clientSideCache)),this.#r=Mlr.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(e){throw this.#a=!1,e}}async#s(){let e=Math.floor(Math.random()*this.#t.rootNodes.length);for(let r=e;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(Do.PUBSUB_TYPE.CHANNELS),o=this.pubSubNode.client.getPubSubListeners(Do.PUBSUB_TYPE.PATTERNS);this.pubSubNode.client.destroy(),(a.size||o.size)&&n.push(this.#v({[Do.PUBSUB_TYPE.CHANNELS]:a,[Do.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 e=>{if((0,io.dbgMaintenance)("[CSlots]: handle smigrated",JSON.stringify(e,null,2)),this.smigratedSeqIdsSeen.has(e.seqId)){(0,io.dbgMaintenance)(`[CSlots]: sequence id ${e.seqId} already seen, abort`);return}this.smigratedSeqIdsSeen.add(e.seqId);for(let r of e.entries){let n=`${r.source.host}:${r.source.port}`,s=this.nodeByAddress.get(n);if((0,io.dbgMaintenance)(`[CSlots]: Looking for sourceAddress=${n}. Available addresses in nodeByAddress: ${Array.from(this.nodeByAddress.keys()).join(", ")}`),!s){(0,io.dbgMaintenance)(`[CSlots]: address ${n} not in 'nodeByAddress', skipping this entry`);continue}if(s.client===void 0){(0,io.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:p}of r.destinations){let m=`${d}:${f}`,h=this.nodeByAddress.get(m);(0,io.dbgMaintenance)(`[CSlots]: Looking for destAddress=${m}. Found in nodeByAddress: ${h?"YES":"NO"}`);let A;if(h){let y=[...new Set(this.slots)].map(v=>`${v.master.host}:${v.master.port}`);(0,io.dbgMaintenance)(`[CSlots]: Searching for shard with host=${d}, port=${f}. Available masters in slots: ${y.join(", ")}`);let x=this.slots.find(v=>v.master.host===d&&v.master.port===f);if(!x)throw(0,io.dbgMaintenance)("Could not find shard"),new Error("Could not find shard");A=x,h.client?._pause(),h.pubSub?.client._pause()}else{let y=[];h=this.#f({host:d,port:f,id:`smigrated-${d}:${f}`},!1,!0,new Set,y),await Promise.all([...y,this.#b(h)]),h.client?._pause(),h.pubSub?.client._pause(),A={master:h}}a=h;let g=new Set;for(let y of p)if(typeof y=="number")this.slots[y]=A,g.add(y),i.add(y);else for(let x=y[0];x<=y[1];x++)this.slots[x]=A,g.add(x),i.add(x);(0,io.dbgMaintenance)(`[CSlots]: Updated slots to point to destination ${h.address}. Sample slots: ${Array.from(p).slice(0,5).join(", ")}${p.length>5?"...":""}`);let b=s.client._getQueue().extractCommandsForSlots(g);h.client?._getQueue().prependCommandsToWrite(b),(0,io.dbgMaintenance)(`[CSlots]: Extracted ${b.length} commands for ${g.size} slots, prepended to ${h.address}`),h.client?._unpause(),h.pubSub?.client._unpause()}(0,io.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($l.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,io.dbgMaintenance)(`[CSlots]: Moved ${d.length} remaining slotless commands to ${a.address}`)),"pubSub"in s){let f=s.pubSub?.client._getQueue().removeAllPubSubListeners();this.#n($l.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(Do.PUBSUB_TYPE.CHANNELS),p=this.pubSubNode.client.getPubSubListeners(Do.PUBSUB_TYPE.PATTERNS),m=this.pubSubNode.client;f.size||p.size?await this.#v({[Do.PUBSUB_TYPE.CHANNELS]:f,[Do.PUBSUB_TYPE.PATTERNS]:p}):this.pubSubNode=void 0,m.destroy()}s.client?.destroy(),"pubSub"in s&&s.pubSub?.client.destroy()}}catch(a){(0,io.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#h(e){let r=this.#d(e);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()}}#p(e){switch(typeof this.#t.nodeAddressMap){case"object":return this.#t.nodeAddressMap[e];case"function":return this.#t.nodeAddressMap(e)}}#d(e){if(!this.#t.defaults)return e;let r;return this.#t.defaults.socket?r={...this.#t.defaults.socket,...e?.socket}:r=e?.socket,{...this.#t.defaults,...e,socket:r}}#f(e,r,n,s,i){let a=`${e.host}:${e.port}`,o=this.nodeByAddress.get(a);return o||(o={...e,address:a,readonly:r,client:void 0,connectPromise:void 0},n&&i.push(this.#y(o)),this.nodeByAddress.set(a,o)),s.has(a)||(s.add(a),(r?this.replicas:this.masters).push(o)),o}#m(e,r=e.readonly){let n=this.#p(e.address)??{host:e.host,port:e.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(io.SMIGRATED_EVENT,this.#l).on("__MOVED",async o=>{await this.rediscover(a),this.#n($l.RESUBSCRIBE_LISTENERS_EVENT,o)});return a}#y(e,r){let n=e.client=this.#m(e,r);return e.connectPromise=n.connect().finally(()=>e.connectPromise=void 0)}nodeClient(e){return e.connectPromise?e.connectPromise:e.client?Promise.resolve(e.client):this.#y(e)}#g;async rediscover(e){return this.#g??=this.#E(e).finally(()=>{this.#g=void 0}),this.#g}async#E(e){if(!await this.#c(e.options))return this.#s()}quit(){return this.#A(e=>e.quit())}disconnect(){return this.#A(e=>e.disconnect())}close(){return this.#A(e=>e.close())}destroy(){this.#a=!1;for(let e of this.#S())e.destroy();this.pubSubNode&&(this.pubSubNode.client.destroy(),this.pubSubNode=void 0),this.#i(),this.nodeByAddress.clear(),this.#n("disconnect")}*#S(){for(let e of this.masters)e.client&&(yield e.client),e.pubSub&&(yield e.pubSub.client);for(let e of this.replicas)e.client&&(yield e.client)}async#A(e){this.#a=!1;let r=[];for(let n of this.#S())r.push(e(n));this.pubSubNode&&(r.push(e(this.pubSubNode.client)),this.pubSubNode=void 0),this.#i(),this.nodeByAddress.clear(),await Promise.allSettled(r),this.#n("disconnect")}async getClientAndSlotNumber(e,r){if(!e)return{client:await this.nodeClient(this.getRandomNode())};let n=(0,Nre.default)(e);return r?{client:await this.nodeClient(this.getSlotRandomNode(n)),slotNumber:n}:{client:await this.nodeClient(this.slots[n].master),slotNumber:n}}*#C(){if(this.masters.length+this.replicas.length===0)return;let e=Math.floor(Math.random()*(this.masters.length+this.replicas.length));if(e(e&&await Promise.all([i.extendPubSubListeners(Do.PUBSUB_TYPE.CHANNELS,e[Do.PUBSUB_TYPE.CHANNELS]),i.extendPubSubListeners(Do.PUBSUB_TYPE.PATTERNS,e[Do.PUBSUB_TYPE.PATTERNS])]),this.pubSubNode.connectPromise=void 0,i)).catch(i=>{throw this.pubSubNode=void 0,i})},this.pubSubNode.connectPromise}async executeUnsubscribeCommand(e){let r=await this.getPubSubClient();await e(r),r.isPubSubActive||(r.destroy(),this.pubSubNode=void 0)}getShardedPubSubClient(e){let{master:r}=this.slots[(0,Nre.default)(e)];return r.pubSub?r.pubSub.connectPromise??Promise.resolve(r.pubSub.client):this.#b(r)}async#b(e){let r=this.#m(e,!1).on("server-sunsubscribe",async(n,s)=>{try{await this.rediscover(r),await(await this.getShardedPubSubClient(n)).extendPubSubChannelListeners(Do.PUBSUB_TYPE.SHARDED,n,s)}catch(i){this.#n("sharded-shannel-moved-error",i,n,s)}});return e.pubSub={client:r,connectPromise:r.connect().then(n=>(e.pubSub.connectPromise=void 0,n)).catch(n=>{throw e.pubSub=void 0,n})},e.pubSub.connectPromise}async executeShardedUnsubscribeCommand(e,r){let{master:n}=this.slots[(0,Nre.default)(e)];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)}};Ore=wB;$l.default=wB});var nJe=E(tT=>{"use strict";var Wlr=tT&&tT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(tT,"__esModule",{value:!0});var $lr=yu(),Flr=Wlr(YI()),Bb=Wl(),RB=Dl(),Pre=class t{static#e(e,r){let n=(0,Bb.getTransformReply)(e,r);return function(...s){let i=new RB.BasicCommandParser;e.parseCommand(i,...s);let a=i.redisArgs;a.preserve=i.preserve;let o=i.firstKey;return this.addCommand(o,e.IS_READ_ONLY,a,n)}}static#t(e,r){let n=(0,Bb.getTransformReply)(e,r);return function(...s){let i=new RB.BasicCommandParser;e.parseCommand(i,...s);let a=i.redisArgs;a.preserve=i.preserve;let o=i.firstKey;return this._self.addCommand(o,e.IS_READ_ONLY,a,n)}}static#r(e,r,n){let s=(0,Bb.functionArgumentsPrefix)(e,r),i=(0,Bb.getTransformReply)(r,n);return function(...a){let o=new RB.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(e,r){let n=(0,Bb.getTransformReply)(e,r);return function(...s){let i=new RB.BasicCommandParser;e.parseCommand(i,...s);let a=i.redisArgs;a.preserve=i.preserve;let o=i.firstKey;return this.#h(o,e.IS_READ_ONLY,e,a,n)}}static extend(e){return(0,Bb.attachConfig)({BaseClass:t,commands:$lr.NON_STICKY_COMMANDS,createCommand:t.#e,createModuleCommand:t.#t,createFunctionCommand:t.#r,createScriptCommand:t.#n,config:e})}#a;#o;#s;#i;#c=!0;constructor(e,r,n,s){this.#a=new Flr.default(s),this.#o=e,this.#s=r,this.#i=n}#l(e,r){this.#i??=e,this.#c&&=r}addCommand(e,r,n,s){return this.#l(e,r),this.#a.addCommand(n,s),this}#h(e,r,n,s,i){return this.#l(e,r),this.#a.addScript(n,s,i),this}async exec(e=!1){return e?this.execAsPipeline():this.#a.transformReplies(await this.#o(this.#i,this.#c,this.#a.queue))}EXEC=this.exec;execTyped(e=!1){return this.exec(e)}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()}};tT.default=Pre});var aJe=E(Eu=>{"use strict";var Ulr=Eu&&Eu.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),qlr=Eu&&Eu.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),jlr=Eu&&Eu.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Ulr(e,t,r);return qlr(e,t),e},iJe=Eu&&Eu.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Eu,"__esModule",{value:!0});var Hlr=yu(),Qlr=require("node:events"),Ag=Wl(),sJe=jlr(rJe()),Glr=iJe(nJe()),Vlr=Pl(),NB=Dl(),zlr=YK(),Klr=iJe(SB()),Dre=class t extends Qlr.EventEmitter{static#e(e,r){let n=(0,Ag.getTransformReply)(e,r);return async function(...s){let i=new NB.BasicCommandParser;return e.parseCommand(i,...s),this._self._execute(i.firstKey,e.IS_READ_ONLY,this._commandOptions,(a,o)=>a._executeCommand(e,i,o,n))}}static#t(e,r){let n=(0,Ag.getTransformReply)(e,r);return async function(...s){let i=new NB.BasicCommandParser;return e.parseCommand(i,...s),this._self._execute(i.firstKey,e.IS_READ_ONLY,this._self._commandOptions,(a,o)=>a._executeCommand(e,i,o,n))}}static#r(e,r,n){let s=(0,Ag.functionArgumentsPrefix)(e,r),i=(0,Ag.getTransformReply)(r,n);return async function(...a){let o=new NB.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(e,r){let n=(0,Ag.scriptArgumentsPrefix)(e),s=(0,Ag.getTransformReply)(e,r);return async function(...i){let a=new NB.BasicCommandParser;return a.push(...n),e.parseCommand(a,...i),this._self._execute(a.firstKey,e.IS_READ_ONLY,this._commandOptions,(o,c)=>o._executeScript(e,a,c,s))}}static#a=new Klr.default;static factory(e){let r=t.#a.get(e);return r||(r=(0,Ag.attachConfig)({BaseClass:t,commands:Hlr.NON_STICKY_COMMANDS,createCommand:t.#e,createModuleCommand:t.#t,createFunctionCommand:t.#r,createScriptCommand:t.#n,config:e}),r.prototype.Multi=Glr.default.extend(e),t.#a.set(e,r)),n=>Object.create(new r(n))}static create(e){return t.factory(e)(e)}_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(e){super(),this._options=e,this._slots=new sJe.default(e,this.emit.bind(this)),this.on(sJe.RESUBSCRIBE_LISTENERS_EVENT,this.resubscribeAllPubSubListeners.bind(this)),e?.commandOptions&&(this._commandOptions=e.commandOptions)}duplicate(e){return new(Object.getPrototypeOf(this)).constructor({...this._self._options,commandOptions:this._commandOptions,...e})}async connect(){return await this._self._slots.connect(),this}withCommandOptions(e){let r=Object.create(this);return r._commandOptions=e,r}_commandOptionsProxy(e,r){let n=Object.create(this);return n._commandOptions=Object.create(this._commandOptions??null),n._commandOptions[e]=r,n}withTypeMapping(e){return this._commandOptionsProxy("typeMapping",e)}_handleAsk(e){return async(r,n)=>{let s=Symbol("asking chain"),i=n?{...n}:{};return i.chainId=s,(await Promise.all([r.sendCommand([zlr.ASKING_CMD],{chainId:s}),e(r,i)]))[1]}}async _execute(e,r,n,s){let i=this._options.maxCommandRedirections??16,{client:a,slotNumber:o}=await this._slots.getClientAndSlotNumber(e,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(e,r);a=d.client,o=d.slotNumber;continue}throw l}}async sendCommand(e,r,n,s){let i={...this._self._commandOptions,...s};return this._self._execute(e,r,i,(a,o)=>a.sendCommand(n,o))}MULTI(e){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)},e,this._commandOptions?.typeMapping)}multi=this.MULTI;async SUBSCRIBE(e,r,n){return(await this._self._slots.getPubSubClient()).SUBSCRIBE(e,r,n)}subscribe=this.SUBSCRIBE;async UNSUBSCRIBE(e,r,n){return this._self._slots.executeUnsubscribeCommand(s=>s.UNSUBSCRIBE(e,r,n))}unsubscribe=this.UNSUBSCRIBE;async PSUBSCRIBE(e,r,n){return(await this._self._slots.getPubSubClient()).PSUBSCRIBE(e,r,n)}pSubscribe=this.PSUBSCRIBE;async PUNSUBSCRIBE(e,r,n){return this._self._slots.executeUnsubscribeCommand(s=>s.PUNSUBSCRIBE(e,r,n))}pUnsubscribe=this.PUNSUBSCRIBE;async SSUBSCRIBE(e,r,n){let s=this._self._options.maxCommandRedirections??16,i=Array.isArray(e)?e[0]:e,a=await this._self._slots.getShardedPubSubClient(i);for(let o=0;;o++)try{return await a.SSUBSCRIBE(e,r,n)}catch(c){if(++o>s||!(c instanceof Vlr.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(e,r,n){return this._self._slots.executeShardedUnsubscribeCommand(Array.isArray(e)?e[0]:e,s=>s.SUNSUBSCRIBE(e,r,n))}resubscribeAllPubSubListeners(e){if(e.CHANNELS)for(let[r,n]of e.CHANNELS)n.buffers.forEach(s=>{this.subscribe(r,s,!0)}),n.strings.forEach(s=>{this.subscribe(r,s)});if(e.PATTERNS)for(let[r,n]of e.PATTERNS)n.buffers.forEach(s=>{this.pSubscribe(r,s,!0)}),n.strings.forEach(s=>{this.pSubscribe(r,s)});if(e.SHARDED)for(let[r,n]of e.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(e){return this._self._slots.nodeClient(e)}getRandomNode(){return this._self._slots.getRandomNode()}getSlotRandomNode(e){return this._self._slots.getSlotRandomNode(e)}getMasters(){return this.masters}getSlotMaster(e){return this.slots[e].master}};Eu.default=Dre});var cJe=E(ni=>{"use strict";Object.defineProperty(ni,"__esModule",{value:!0});ni.getMappedNode=ni.createScriptCommand=ni.createModuleCommand=ni.createFunctionCommand=ni.createCommand=ni.clientSocketToNode=ni.createNodeList=ni.parseNode=void 0;var OB=Dl(),Mb=Wl();function oJe(t){if(!(t.flags.includes("s_down")||t.flags.includes("disconnected")||t.flags.includes("failover_in_progress")))return{host:t.ip,port:Number(t.port)}}ni.parseNode=oJe;function Ylr(t){var e=[];for(let r of t){let n=oJe(r);n!==void 0&&e.push(n)}return e}ni.createNodeList=Ylr;function Jlr(t){let e=t;return{host:e.host,port:e.port}}ni.clientSocketToNode=Jlr;function Xlr(t,e){let r=(0,Mb.getTransformReply)(t,e);return async function(...n){let s=new OB.BasicCommandParser;return t.parseCommand(s,...n),this._self._execute(t.IS_READ_ONLY,i=>i._executeCommand(t,s,this.commandOptions,r))}}ni.createCommand=Xlr;function Zlr(t,e,r){let n=(0,Mb.functionArgumentsPrefix)(t,e),s=(0,Mb.getTransformReply)(e,r);return async function(...i){let a=new OB.BasicCommandParser;return a.push(...n),e.parseCommand(a,...i),this._self._execute(e.IS_READ_ONLY,o=>o._executeCommand(e,a,this._self.commandOptions,s))}}ni.createFunctionCommand=Zlr;function edr(t,e){let r=(0,Mb.getTransformReply)(t,e);return async function(...n){let s=new OB.BasicCommandParser;return t.parseCommand(s,...n),this._self._execute(t.IS_READ_ONLY,i=>i._executeCommand(t,s,this._self.commandOptions,r))}}ni.createModuleCommand=edr;function tdr(t,e){let r=(0,Mb.scriptArgumentsPrefix)(t),n=(0,Mb.getTransformReply)(t,e);return async function(...s){let i=new OB.BasicCommandParser;return i.push(...r),t.parseCommand(i,...s),this._self._execute(t.IS_READ_ONLY,a=>a._executeScript(t,i,this.commandOptions,n))}}ni.createScriptCommand=tdr;function rdr(t,e,r){if(r===void 0)return{host:t,port:e};let n=`${t}:${e}`;switch(typeof r){case"object":return r[n]??{host:t,port:e};case"function":return r(n)??{host:t,port:e}}}ni.getMappedNode=rdr});var lJe=E(rT=>{"use strict";var ndr=rT&&rT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(rT,"__esModule",{value:!0});var sdr=yu(),uJe=ndr(YI()),Wb=Wl(),PB=Dl(),kre=class t{static _createCommand(e,r){let n=(0,Wb.getTransformReply)(e,r);return function(...s){let i=new PB.BasicCommandParser;e.parseCommand(i,...s);let a=i.redisArgs;return a.preserve=i.preserve,this.addCommand(e.IS_READ_ONLY,a,n)}}static _createModuleCommand(e,r){let n=(0,Wb.getTransformReply)(e,r);return function(...s){let i=new PB.BasicCommandParser;e.parseCommand(i,...s);let a=i.redisArgs;return a.preserve=i.preserve,this._self.addCommand(e.IS_READ_ONLY,a,n)}}static _createFunctionCommand(e,r,n){let s=(0,Wb.functionArgumentsPrefix)(e,r),i=(0,Wb.getTransformReply)(r,n);return function(...a){let o=new PB.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(e,r){let n=(0,Wb.getTransformReply)(e,r);return function(...s){let i=new PB.BasicCommandParser;e.parseCommand(i,...s);let a=i.redisArgs;return a.preserve=i.preserve,this.#a(e.IS_READ_ONLY,e,a,n)}}static extend(e){return(0,Wb.attachConfig)({BaseClass:t,commands:sdr.NON_STICKY_COMMANDS,createCommand:t._createCommand,createModuleCommand:t._createModuleCommand,createFunctionCommand:t._createFunctionCommand,createScriptCommand:t._createScriptCommand,config:e})}#e=new uJe.default;#t;#r=!0;constructor(e,r){this.#e=new uJe.default(r),this.#t=e}#n(e){this.#r&&=e}addCommand(e,r,n){return this.#n(e),this.#e.addCommand(r,n),this}#a(e,r,n,s){return this.#n(e),this.#e.addScript(r,n,s),this}async exec(e=!1){return e?this.execAsPipeline():this.#e.transformReplies(await this.#t._executeMulti(this.#r,this.#e.queue))}EXEC=this.exec;execTyped(e=!1){return this.exec(e)}async execAsPipeline(){return this.#e.queue.length===0?[]:this.#e.transformReplies(await this.#t._executePipeline(this.#r,this.#e.queue))}execAsPipelineTyped(){return this.execAsPipeline()}};rT.default=kre});var pJe=E($b=>{"use strict";var fJe=$b&&$b.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty($b,"__esModule",{value:!0});$b.PubSubProxy=void 0;var idr=fJe(require("node:events")),H0=VI(),dJe=fJe(Pb()),Lre=class extends idr.default{#e;#t;#r;#n;#a;constructor(e,r){super(),this.#e=e,this.#t=r}#o(){if(this.#r===void 0)throw new Error("pubSubProxy: didn't define node to do pubsub against");return new dJe.default({...this.#e,socket:{...this.#e.socket,host:this.#r.host,port:this.#r.port}})}async#s(e=!1){let r=this.#o().on("error",this.#t),n=r.connect().then(async s=>this.#n?.client!==s?(s.destroy(),this.#n?.connectPromise):(e&&this.#a&&await Promise.all([s.extendPubSubListeners(H0.PUBSUB_TYPE.CHANNELS,this.#a[H0.PUBSUB_TYPE.CHANNELS]),s.extendPubSubListeners(H0.PUBSUB_TYPE.PATTERNS,this.#a[H0.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(e){this.#r=e,this.#n&&(this.#n.connectPromise===void 0&&(this.#a={[H0.PUBSUB_TYPE.CHANNELS]:this.#n.client.getPubSubListeners(H0.PUBSUB_TYPE.CHANNELS),[H0.PUBSUB_TYPE.PATTERNS]:this.#n.client.getPubSubListeners(H0.PUBSUB_TYPE.PATTERNS)},this.#n.client.destroy()),await this.#s(!0))}#c(e){let r=this.#i();return r instanceof dJe.default?e(r):r.then(n=>{if(n!==void 0)return e(n)}).catch(n=>{throw this.#n?.client.isPubSubActive&&(this.#n.client.destroy(),this.#n=void 0),n})}subscribe(e,r,n){return this.#c(s=>s.SUBSCRIBE(e,r,n))}#l(e){return this.#c(async r=>{let n=await e(r);return r.isPubSubActive||(r.destroy(),this.#n=void 0),n})}async unsubscribe(e,r,n){return this.#l(s=>s.UNSUBSCRIBE(e,r,n))}async pSubscribe(e,r,n){return this.#c(s=>s.PSUBSCRIBE(e,r,n))}async pUnsubscribe(e,r,n){return this.#l(s=>s.PUNSUBSCRIBE(e,r,n))}destroy(){this.#a=void 0,this.#n!==void 0&&(this.#n.connectPromise||this.#n.client.destroy(),this.#n=void 0)}};$b.PubSubProxy=Lre});var mJe=E(Bre=>{"use strict";Object.defineProperty(Bre,"__esModule",{value:!0});var adr=Ie();Bre.default={parseCommand(t,e){t.push("SENTINEL","MASTER",e)},transformReply:{2:adr.transformTuplesReply,3:void 0}}});var hJe=E(Mre=>{"use strict";Object.defineProperty(Mre,"__esModule",{value:!0});Mre.default={parseCommand(t,e,r,n,s){t.push("SENTINEL","MONITOR",e,r,n,s)},transformReply:void 0}});var gJe=E(Wre=>{"use strict";Object.defineProperty(Wre,"__esModule",{value:!0});var odr=Ie();Wre.default={parseCommand(t,e){t.push("SENTINEL","REPLICAS",e)},transformReply:{2:(t,e,r)=>{let n=t,s=[];return n.reduce((i,a)=>(i.push((0,odr.transformTuplesReply)(a,void 0,r)),i),s)},3:void 0}}});var AJe=E($re=>{"use strict";Object.defineProperty($re,"__esModule",{value:!0});var cdr=Ie();$re.default={parseCommand(t,e){t.push("SENTINEL","SENTINELS",e)},transformReply:{2:(t,e,r)=>{let n=t,s=[];return n.reduce((i,a)=>(i.push((0,cdr.transformTuplesReply)(a,void 0,r)),i),s)},3:void 0}}});var yJe=E(Fre=>{"use strict";Object.defineProperty(Fre,"__esModule",{value:!0});Fre.default={parseCommand(t,e,r){t.push("SENTINEL","SET",e);for(let n of r)t.push(n.option,n.value)},transformReply:void 0}});var vJe=E(nT=>{"use strict";var sT=nT&&nT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(nT,"__esModule",{value:!0});var xJe=sT(mJe()),bJe=sT(hJe()),EJe=sT(gJe()),_Je=sT(AJe()),SJe=sT(yJe());nT.default={SENTINEL_SENTINELS:_Je.default,sentinelSentinels:_Je.default,SENTINEL_MASTER:xJe.default,sentinelMaster:xJe.default,SENTINEL_REPLICAS:EJe.default,sentinelReplicas:EJe.default,SENTINEL_MONITOR:bJe.default,sentinelMonitor:bJe.default,SENTINEL_SET:SJe.default,sentinelSet:SJe.default}});var CJe=E(iT=>{"use strict";var udr=iT&&iT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(iT,"__esModule",{value:!0});var ldr=udr(vJe());iT.default={sentinel:ldr.default}});var TJe=E(DB=>{"use strict";Object.defineProperty(DB,"__esModule",{value:!0});DB.WaitQueue=void 0;var IJe=mB(),Ure=class{#e=new IJe.SinglyLinkedList;#t=new IJe.SinglyLinkedList;push(e){let r=this.#t.shift();if(r!==void 0){r(e);return}this.#e.push(e)}shift(){return this.#e.shift()}wait(){return new Promise(e=>this.#t.push(e))}};DB.WaitQueue=Ure});var PJe=E(Tf=>{"use strict";var Qre=Tf&&Tf.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Tf,"__esModule",{value:!0});Tf.RedisSentinelFactory=Tf.RedisSentinelClient=void 0;var Gre=require("node:events"),Fb=Qre(Pb()),RJe=Wl(),NJe=yu(),Fn=cJe(),OJe=Qre(lJe()),ddr=pJe(),fdr=require("node:timers/promises"),kB=Qre(CJe()),pdr=TJe(),wJe=Nb(),aT=class t{#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(e,r,n){this._self=this,this.#t=e,this.#e=r,this.#r=n}static factory(e){let r=(0,RJe.attachConfig)({BaseClass:t,commands:NJe.NON_STICKY_COMMANDS,createCommand:Fn.createCommand,createModuleCommand:Fn.createModuleCommand,createFunctionCommand:Fn.createFunctionCommand,createScriptCommand:Fn.createScriptCommand,config:e});return r.prototype.Multi=OJe.default.extend(e),(n,s,i)=>Object.create(new r(n,s,i))}static create(e,r,n,s){return t.factory(e)(r,n,s)}withCommandOptions(e){let r=Object.create(this);return r._commandOptions=e,r}_commandOptionsProxy(e,r){let n=Object.create(this);return n._commandOptions=Object.create(this._self.#r??null),n._commandOptions[e]=r,n}withTypeMapping(e){return this._commandOptionsProxy("typeMapping",e)}async _execute(e,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(e,r,n){return this._execute(e,s=>s.sendCommand(r,n))}async _executePipeline(e,r){return this._execute(e,n=>n._executePipeline(r))}async _executeMulti(e,r){return this._execute(e,n=>n._executeMulti(r))}MULTI(){return new this.Multi(this)}multi=this.MULTI;WATCH(e){if(this._self.#e===void 0)throw new Error("Attempted execution on released RedisSentinelClient lease");return this._execute(!1,r=>r.watch(e))}watch=this.WATCH;UNWATCH(){if(this._self.#e===void 0)throw new Error("Attempted execution on released RedisSentinelClient lease");return this._execute(!1,e=>e.unwatch())}unwatch=this.UNWATCH;release(){if(this._self.#e===void 0)throw new Error("RedisSentinelClient lease already released");let e=this._self.#t.releaseClientLease(this._self.#e);return this._self.#e=void 0,e}};Tf.RedisSentinelClient=aT;var qre=class t extends Gre.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(e){super(),this._self=this,this.#t=e,e.commandOptions&&(this.#r=e.commandOptions),this.#e=new jre(e),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(e){let r=(0,RJe.attachConfig)({BaseClass:t,commands:NJe.NON_STICKY_COMMANDS,createCommand:Fn.createCommand,createModuleCommand:Fn.createModuleCommand,createFunctionCommand:Fn.createFunctionCommand,createScriptCommand:Fn.createScriptCommand,config:e});return r.prototype.Multi=OJe.default.extend(e),n=>Object.create(new r(n))}static create(e){return t.factory(e)(e)}withCommandOptions(e){let r=Object.create(this);return r._commandOptions=e,r}_commandOptionsProxy(e,r){let n=Object.create(this);return n._self.#r={...this._self.#r||{},[e]:r},n}withTypeMapping(e){return this._commandOptionsProxy("typeMapping",e)}async connect(){return await this._self.#e.connect(),this._self.#t.reserveClient&&(this._self.#a=await this._self.#e.getClientLease()),this}async _execute(e,r){let n;(!e||!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(e){let r=await this._self.#e.getClientLease();try{return await e(aT.create(this._self.#t,this._self.#e,r,this._self.#r))}finally{let n=this._self.#e.releaseClientLease(r);n&&await n}}async sendCommand(e,r,n){return this._execute(e,s=>s.sendCommand(r,n))}async _executePipeline(e,r){return this._execute(e,n=>n._executePipeline(r))}async _executeMulti(e,r){return this._execute(e,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(e,r,n){return this._self.#e.subscribe(e,r,n)}subscribe=this.SUBSCRIBE;async UNSUBSCRIBE(e,r,n){return this._self.#e.unsubscribe(e,r,n)}unsubscribe=this.UNSUBSCRIBE;async PSUBSCRIBE(e,r,n){return this._self.#e.pSubscribe(e,r,n)}pSubscribe=this.PSUBSCRIBE;async PUNSUBSCRIBE(e,r,n){return this._self.#e.pUnsubscribe(e,r,n)}pUnsubscribe=this.PUNSUBSCRIBE;async acquire(){let e=await this._self.#e.getClientLease();return aT.create(this._self.#t,this._self.#e,e,this._self.#r)}getSentinelNode(){return this._self.#e.getSentinelNode()}getMasterNode(){return this._self.#e.getMasterNode()}getReplicaNodes(){return this._self.#e.getReplicaNodes()}setTracer(e){e?this._self.#n=r=>{e.push(r)}:this._self.#n=()=>{},this._self.#e.setTracer(e)}};Tf.default=qre;var jre=class extends Gre.EventEmitter{#e=!1;get isOpen(){return this.#e}#t=!1;get isReady(){return this.#t}#r;#n;#a;#o;#s;#i;#c;#l=!1;#h=0;#p;#d;#f=[];#m;#y;#g=[];#E=0;#S;get useReplicas(){return this.#S>0}#A;#C;#_;#v;#b=!1;#u=()=>{};#x;get clientSideCache(){return this.#x}#P(e){if(e?.clientSideCache&&e?.RESP!==3)throw new Error("Client Side Caching is only supported with RESP3")}constructor(e){if(super(),this.#P(e),this.#r=e.name,this.#c=e.RESP,this.#p=Array.from(e.sentinelRootNodes),this.#C=e.maxCommandRediscovers??16,this.#y=e.masterPoolSize??1,this.#S=e.replicaPoolSize??0,this.#o=e.nodeAddressMap,this.#s=e.scanInterval??0,this.#i=e.passthroughClientErrorEvents??!1,this.#n=e.nodeClientOptions?{...e.nodeClientOptions}:{},this.#n.url!==void 0)throw new Error("invalid nodeClientOptions for Sentinel");if(e.clientSideCache)if(e.clientSideCache instanceof wJe.PooledClientSideCacheProvider)this.#x=this.#n.clientSideCache=e.clientSideCache;else{let r=e.clientSideCache;this.#x=this.#n.clientSideCache=new wJe.BasicPooledClientSideCache(r)}if(this.#a=e.sentinelClientOptions?Object.assign({},e.sentinelClientOptions):{},this.#a.modules=kB.default,this.#a.url!==void 0)throw new Error("invalid sentinelClientOptions for Sentinel");this.#m=new pdr.WaitQueue;for(let r=0;rthis.emit("error",r))}#T(e,r,n){let s=(0,Fn.getMappedNode)(e.host,e.port,this.#o);return Fb.default.create({RESP:this.#c,...r,socket:{...r.socket,host:s.host,port:s.port,...n!==void 0&&{reconnectStrategy:n}}})}getClientLease(){let e=this.#m.shift();return e!==void 0?Promise.resolve({id:e}):this.#m.wait().then(r=>({id:r}))}releaseClientLease(e){let r=this.#f[e.id];if(r!==void 0){let n=r.resetIfDirty();if(n)return n.then(()=>this.#m.push(e.id))}this.#m.push(e.id)}async connect(){if(this.#e)throw new Error("already attempting to open");try{this.#e=!0,this.#A=this.#I(),await this.#A,this.#t=!0}finally{this.#A=void 0,this.#s>0&&(this.#v=setInterval(this.#O.bind(this),this.#s))}}async#I(){let e=0;for(;;){if(this.#u("starting connect loop"),e+=1,this.#b){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&&e>this.#C)throw r;r.message!=="no valid master node"&&console.log(r),await(0,fdr.setTimeout)(1e3)}finally{this.#u("finished connect")}}}async execute(e,r){let n=0;for(;;){this.#A!==void 0&&await this.#A;let s=this.#R(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 e(s)}catch(a){if(++n>this.#C||!(a instanceof Error))throw a;if(r!==void 0&&(a.message.startsWith("READONLY")||!s.isReady)){await this.#O();continue}throw a}}}async#N(e){return await e.pSubscribe(["switch-master","[-+]sdown","+slave","+sentinel","[-+]odown","+slave-reconf-done"],(r,n)=>{this.#M(n,r)},!0),e}async#M(e,r){this.#u("pubsub control channel message on "+e),this.#O()}#R(e){if(e!==void 0)return this.#f[e.id];if(this.#E>=this.#g.length&&(this.#E=0),this.#g.length==0)throw new Error("no replicas available for read");return this.#g[this.#E++]}async#O(){if(!(this.#t==!1||this.#b==!0)){if(this.#A!==void 0)return this.#l=!0,await this.#A;try{return this.#A=this.#I(),await this.#A}finally{this.#u("finished reconfgure"),this.#A=void 0}}}#D(e){let r=this.#p.findIndex(n=>n.host===e.host&&n.port===e.port);r!==-1&&this.#p.splice(r,1),this.#O()}async close(){this.#b=!0,this.#A!=null&&await this.#A,this.#t=!1,this.#x?.onPoolClose(),this.#v&&(clearInterval(this.#v),this.#v=void 0);let e=[];this.#d!==void 0&&(this.#d.isOpen&&e.push(this.#d.close()),this.#d=void 0);for(let r of this.#f)r.isOpen&&e.push(r.close());this.#f=[];for(let r of this.#g)r.isOpen&&e.push(r.close());this.#g=[],await Promise.all(e),this.#_.destroy(),this.#e=!1}async destroy(){this.#b=!0,this.#A!=null&&await this.#A,this.#t=!1,this.#x?.onPoolClose(),this.#v&&(clearInterval(this.#v),this.#v=void 0),this.#d!==void 0&&(this.#d.isOpen&&this.#d.destroy(),this.#d=void 0);for(let e of this.#f)e.isOpen&&e.destroy();this.#f=[];for(let e of this.#g)e.isOpen&&e.destroy();this.#g=[],this.#_.destroy(),this.#e=!1,this.#b=!1}async subscribe(e,r,n){return this.#_.subscribe(e,r,n)}async unsubscribe(e,r,n){return this.#_.unsubscribe(e,r,n)}async pSubscribe(e,r,n){return this.#_.pSubscribe(e,r,n)}async pUnsubscribe(e,r,n){return this.#_.pUnsubscribe(e,r,n)}async observe(){for(let e of this.#p){let r;try{this.#u(`observe: trying to connect to sentinel: ${e.host}:${e.port}`),r=this.#T(e,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:e,sentinelData:n,masterData:s,replicaData:i,currentMaster:this.getMasterNode(),currentReplicas:this.getReplicaNodes(),currentSentinel:this.getSentinelNode(),replicaPoolSize:this.#S,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(e){let r=(0,Fn.parseNode)(e.masterData);if(r===void 0)throw this.#u(`analyze: no valid master node because ${e.masterData.flags}`),new Error("no valid master node");r.host===e.currentMaster?.host&&r.port===e.currentMaster?.port?(this.#u(`analyze: master node hasn't changed from ${e.currentMaster?.host}:${e.currentMaster?.port}`),r=void 0):this.#u(`analyze: master node has changed to ${r.host}:${r.port} from ${e.currentMaster?.host}:${e.currentMaster?.port}`);let n=e.sentinelConnected;n.host===e.currentSentinel?.host&&n.port===e.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(e.useReplicas){let u=(0,Fn.createNodeList)(e.replicaData);for(let l of u)a.add(JSON.stringify(l));for(let[l,d]of e.currentReplicas)a.has(JSON.stringify(l))?(o.add(JSON.stringify(l)),d!=e.replicaPoolSize&&(i.set(l,e.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,e.replicaPoolSize),this.#u(`analyze: adding ${l.host}:${l.port} to replicsToOpen`))}return{sentinelList:[e.sentinelConnected].concat((0,Fn.createNodeList)(e.sentinelData)),epoch:Number(e.masterData["config-epoch"]),sentinelToOpen:n,masterToOpen:r,replicasToClose:s,replicasToOpen:i}}async transform(e){this.#u("transform: enter");let r=[];if(e.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 ${e.sentinelToOpen.host}:${e.sentinelToOpen.port}`);let a=e.sentinelToOpen,o=this.#T(e.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,Fn.clientSocketToNode)(o.options.socket),error:l};this.emit("client-error",d),this.#D(a)}).on("end",()=>this.#D(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 ${e.sentinelToOpen.host}:${e.sentinelToOpen.port}`);let u={type:"SENTINEL_CHANGE",node:e.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(e.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 p={type:"MASTER",node:(0,Fn.clientSocketToNode)(d.options.socket),error:f};this.emit("client-error",p)}),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 ${e.masterToOpen.host}:${e.masterToOpen.port}`)}this.#u("transform: adding promise to change #pubSubProxy node"),a.push(this.#_.changeNode(e.masterToOpen)),r.push(...a);let c={type:"MASTER_CHANGE",node:e.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.#h++}let n=new Set;for(let a of e.replicasToClose){let o=JSON.stringify(a);n.add(o)}let s=[],i=new Set;for(let a of this.#g){let o=(0,Fn.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,e.replicasToOpen.size!=0)for(let[a,o]of e.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,Fn.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(e.sentinelList.length!=this.#p.length){this.#p=e.sentinelList;let a={type:"SENTINE_LIST_CHANGE",size:e.sentinelList.length};this.emit("topology-change",a)}await Promise.all(r),this.#u("transform: exit")}getMasterNode(){if(this.#f.length!=0){for(let e of this.#f)if(e.isReady)return(0,Fn.clientSocketToNode)(e.options.socket)}}getSentinelNode(){if(this.#d!==void 0)return(0,Fn.clientSocketToNode)(this.#d.options.socket)}getReplicaNodes(){let e=new Map,r=new Map;for(let n of this.#g){let s=(0,Fn.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)e.set(JSON.parse(n),s);return e}setTracer(e){e?this.#u=r=>{e.push(r)}:this.#u=()=>{}}},Hre=class extends Gre.EventEmitter{options;#e;#t=-1;constructor(e){super(),this.options=e,this.#e=e.sentinelRootNodes}async updateSentinelRootNodes(){for(let e of this.#e){let r=Fb.default.create({...this.options.sentinelClientOptions,socket:{...this.options.sentinelClientOptions?.socket,host:e.host,port:e.port,reconnectStrategy:!1},modules:kB.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=[e].concat((0,Fn.createNodeList)(n));return}finally{r.destroy()}}throw new Error("Couldn't connect to any sentinel node")}async getMasterNode(){let e=!1;for(let r of this.#e){let n=Fb.default.create({...this.options.sentinelClientOptions,socket:{...this.options.sentinelClientOptions?.socket,host:r.host,port:r.port,reconnectStrategy:!1},modules:kB.default}).on("error",s=>this.emit(`getMasterNode: ${s}`));try{await n.connect()}catch{n.isOpen&&n.destroy();continue}e=!0;try{let s=await n.sentinel.sentinelMaster(this.options.name),i=(0,Fn.parseNode)(s);if(i===void 0)continue;return i}finally{n.destroy()}}throw e?new Error("Master Node Not Enumerated"):new Error("couldn't connect to any sentinels")}async getMasterClient(){let e=await this.getMasterNode(),r=(0,Fn.getMappedNode)(e.host,e.port,this.options.nodeAddressMap);return Fb.default.create({...this.options.nodeClientOptions,socket:{...this.options.nodeClientOptions?.socket,host:r.host,port:r.port}})}async getReplicaNodes(){let e=!1;for(let r of this.#e){let n=Fb.default.create({...this.options.sentinelClientOptions,socket:{...this.options.sentinelClientOptions?.socket,host:r.host,port:r.port,reconnectStrategy:!1},modules:kB.default}).on("error",s=>this.emit(`getReplicaNodes: ${s}`));try{await n.connect()}catch{n.isOpen&&n.destroy();continue}e=!0;try{let s=await n.sentinel.sentinelReplicas(this.options.name),i=(0,Fn.createNodeList)(s);if(i.length==0)continue;return i}finally{n.destroy()}}throw e?new Error("No Replicas Nodes Enumerated"):new Error("couldn't connect to any sentinels")}async getReplicaClient(){let e=await this.getReplicaNodes();if(e.length==0)throw new Error("no available replicas");this.#t++,this.#t>=e.length&&(this.#t=0);let r=e[this.#t],n=(0,Fn.getMappedNode)(r.host,r.port,this.options.nodeAddressMap);return Fb.default.create({...this.options.nodeClientOptions,socket:{...this.options.nodeClientOptions?.socket,host:n.host,port:n.port}})}};Tf.RedisSentinelFactory=Hre});var cT=E(Vt=>{"use strict";var mdr=Vt&&Vt.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),hdr=Vt&&Vt.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&mdr(e,t,r)},Vre=Vt&&Vt.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Vt,"__esModule",{value:!0});Vt.BasicPooledClientSideCache=Vt.BasicClientSideCache=Vt.REDIS_FLUSH_MODES=Vt.COMMAND_LIST_FILTER_BY=Vt.CLUSTER_SLOT_STATES=Vt.FAILOVER_MODES=Vt.CLIENT_KILL_FILTERS=Vt.GEO_REPLY_WITH=Vt.createSentinel=Vt.createCluster=Vt.createClientPool=Vt.createClient=Vt.digest=Vt.defineScript=Vt.VerbatimString=Vt.RESP_TYPES=void 0;var gdr=tB();Object.defineProperty(Vt,"RESP_TYPES",{enumerable:!0,get:function(){return gdr.RESP_TYPES}});var Adr=pK();Object.defineProperty(Vt,"VerbatimString",{enumerable:!0,get:function(){return Adr.VerbatimString}});var ydr=aWe();Object.defineProperty(Vt,"defineScript",{enumerable:!0,get:function(){return ydr.defineScript}});var xdr=oWe();Object.defineProperty(Vt,"digest",{enumerable:!0,get:function(){return xdr.digest}});hdr(Pl(),Vt);var bdr=Vre(Pb());Vt.createClient=bdr.default.create;var Edr=Rre();Vt.createClientPool=Edr.RedisClientPool.create;var _dr=Vre(aJe());Vt.createCluster=_dr.default.create;var Sdr=Vre(PJe());Vt.createSentinel=Sdr.default.create;var vdr=eI();Object.defineProperty(Vt,"GEO_REPLY_WITH",{enumerable:!0,get:function(){return vdr.GEO_REPLY_WITH}});var oT=yu();Object.defineProperty(Vt,"CLIENT_KILL_FILTERS",{enumerable:!0,get:function(){return oT.CLIENT_KILL_FILTERS}});Object.defineProperty(Vt,"FAILOVER_MODES",{enumerable:!0,get:function(){return oT.FAILOVER_MODES}});Object.defineProperty(Vt,"CLUSTER_SLOT_STATES",{enumerable:!0,get:function(){return oT.CLUSTER_SLOT_STATES}});Object.defineProperty(Vt,"COMMAND_LIST_FILTER_BY",{enumerable:!0,get:function(){return oT.COMMAND_LIST_FILTER_BY}});Object.defineProperty(Vt,"REDIS_FLUSH_MODES",{enumerable:!0,get:function(){return oT.REDIS_FLUSH_MODES}});var DJe=Nb();Object.defineProperty(Vt,"BasicClientSideCache",{enumerable:!0,get:function(){return DJe.BasicClientSideCache}});Object.defineProperty(Vt,"BasicPooledClientSideCache",{enumerable:!0,get:function(){return DJe.BasicPooledClientSideCache}})});var kJe=E(zre=>{"use strict";Object.defineProperty(zre,"__esModule",{value:!0});var Cdr=Ie();zre.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("BF.ADD"),t.pushKey(e),t.push(r)},transformReply:Cdr.transformBooleanReply}});var LJe=E(Kre=>{"use strict";Object.defineProperty(Kre,"__esModule",{value:!0});Kre.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("BF.CARD"),t.pushKey(e)},transformReply:void 0}});var BJe=E(Yre=>{"use strict";Object.defineProperty(Yre,"__esModule",{value:!0});var Idr=Ie();Yre.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("BF.EXISTS"),t.pushKey(e),t.push(r)},transformReply:Idr.transformBooleanReply}});var Jre=E(LB=>{"use strict";Object.defineProperty(LB,"__esModule",{value:!0});LB.transformInfoV2Reply=void 0;var Tdr=cT();function wdr(t,e){switch(e?e[Tdr.RESP_TYPES.MAP]:void 0){case Array:return t;case Map:{let n=new Map;for(let s=0;s{"use strict";Object.defineProperty(Xre,"__esModule",{value:!0});var Rdr=Jre();Xre.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("BF.INFO"),t.pushKey(e)},transformReply:{2:(t,e,r)=>(0,Rdr.transformInfoV2Reply)(t,r),3:void 0}}});var WJe=E(Zre=>{"use strict";Object.defineProperty(Zre,"__esModule",{value:!0});var Ndr=Ie();Zre.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("BF.INSERT"),t.pushKey(e),n?.CAPACITY!==void 0&&t.push("CAPACITY",n.CAPACITY.toString()),n?.ERROR!==void 0&&t.push("ERROR",n.ERROR.toString()),n?.EXPANSION!==void 0&&t.push("EXPANSION",n.EXPANSION.toString()),n?.NOCREATE&&t.push("NOCREATE"),n?.NONSCALING&&t.push("NONSCALING"),t.push("ITEMS"),t.pushVariadic(r)},transformReply:Ndr.transformBooleanArrayReply}});var $Je=E(ene=>{"use strict";Object.defineProperty(ene,"__esModule",{value:!0});ene.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("BF.LOADCHUNK"),t.pushKey(e),t.push(r.toString(),n)},transformReply:void 0}});var FJe=E(tne=>{"use strict";Object.defineProperty(tne,"__esModule",{value:!0});var Odr=Ie();tne.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("BF.MADD"),t.pushKey(e),t.pushVariadic(r)},transformReply:Odr.transformBooleanArrayReply}});var UJe=E(rne=>{"use strict";Object.defineProperty(rne,"__esModule",{value:!0});var Pdr=Ie();rne.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("BF.MEXISTS"),t.pushKey(e),t.pushVariadic(r)},transformReply:Pdr.transformBooleanArrayReply}});var qJe=E(nne=>{"use strict";Object.defineProperty(nne,"__esModule",{value:!0});nne.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("BF.RESERVE"),t.pushKey(e),t.push(r.toString(),n.toString()),s?.EXPANSION&&t.push("EXPANSION",s.EXPANSION.toString()),s?.NONSCALING&&t.push("NONSCALING")},transformReply:void 0}});var jJe=E(sne=>{"use strict";Object.defineProperty(sne,"__esModule",{value:!0});sne.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("BF.SCANDUMP"),t.pushKey(e),t.push(r.toString())},transformReply(t){return{iterator:t[0],chunk:t[1]}}}});var Ub=E(Fl=>{"use strict";var Ddr=Fl&&Fl.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),kdr=Fl&&Fl.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&Ddr(e,t,r)},Ul=Fl&&Fl.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Fl,"__esModule",{value:!0});var HJe=Ul(kJe()),QJe=Ul(LJe()),GJe=Ul(BJe()),VJe=Ul(MJe()),zJe=Ul(WJe()),KJe=Ul($Je()),YJe=Ul(FJe()),JJe=Ul(UJe()),XJe=Ul(qJe()),ZJe=Ul(jJe());kdr(Jre(),Fl);Fl.default={ADD:HJe.default,add:HJe.default,CARD:QJe.default,card:QJe.default,EXISTS:GJe.default,exists:GJe.default,INFO:VJe.default,info:VJe.default,INSERT:zJe.default,insert:zJe.default,LOADCHUNK:KJe.default,loadChunk:KJe.default,MADD:YJe.default,mAdd:YJe.default,MEXISTS:JJe.default,mExists:JJe.default,RESERVE:XJe.default,reserve:XJe.default,SCANDUMP:ZJe.default,scanDump:ZJe.default}});var tXe=E(ine=>{"use strict";Object.defineProperty(ine,"__esModule",{value:!0});ine.default={IS_READ_ONLY:!1,parseCommand(t,e,r){if(t.push("CMS.INCRBY"),t.pushKey(e),Array.isArray(r))for(let n of r)eXe(t,n);else eXe(t,r)},transformReply:void 0};function eXe(t,{item:e,incrementBy:r}){t.push(e,r.toString())}});var rXe=E(ane=>{"use strict";Object.defineProperty(ane,"__esModule",{value:!0});var Ldr=Ub();ane.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("CMS.INFO"),t.pushKey(e)},transformReply:{2:(t,e,r)=>(0,Ldr.transformInfoV2Reply)(t,r),3:void 0}}});var nXe=E(one=>{"use strict";Object.defineProperty(one,"__esModule",{value:!0});one.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("CMS.INITBYDIM"),t.pushKey(e),t.push(r.toString(),n.toString())},transformReply:void 0}});var sXe=E(cne=>{"use strict";Object.defineProperty(cne,"__esModule",{value:!0});cne.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("CMS.INITBYPROB"),t.pushKey(e),t.push(r.toString(),n.toString())},transformReply:void 0}});var iXe=E(une=>{"use strict";Object.defineProperty(une,"__esModule",{value:!0});une.default={IS_READ_ONLY:!1,parseCommand(t,e,r){if(t.push("CMS.MERGE"),t.pushKey(e),t.push(r.length.toString()),Bdr(r))t.pushVariadic(r);else{for(let n=0;n{"use strict";Object.defineProperty(lne,"__esModule",{value:!0});lne.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("CMS.QUERY"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var pXe=E(uT=>{"use strict";var qb=uT&&uT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(uT,"__esModule",{value:!0});var oXe=qb(tXe()),cXe=qb(rXe()),uXe=qb(nXe()),lXe=qb(sXe()),dXe=qb(iXe()),fXe=qb(aXe());uT.default={INCRBY:oXe.default,incrBy:oXe.default,INFO:cXe.default,info:cXe.default,INITBYDIM:uXe.default,initByDim:uXe.default,INITBYPROB:lXe.default,initByProb:lXe.default,MERGE:dXe.default,merge:dXe.default,QUERY:fXe.default,query:fXe.default}});var mXe=E(dne=>{"use strict";Object.defineProperty(dne,"__esModule",{value:!0});var Mdr=Ie();dne.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("CF.ADD"),t.pushKey(e),t.push(r)},transformReply:Mdr.transformBooleanReply}});var hXe=E(fne=>{"use strict";Object.defineProperty(fne,"__esModule",{value:!0});var Wdr=Ie();fne.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("CF.ADDNX"),t.pushKey(e),t.push(r)},transformReply:Wdr.transformBooleanReply}});var gXe=E(pne=>{"use strict";Object.defineProperty(pne,"__esModule",{value:!0});pne.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("CF.COUNT"),t.pushKey(e),t.push(r)},transformReply:void 0}});var AXe=E(mne=>{"use strict";Object.defineProperty(mne,"__esModule",{value:!0});var $dr=Ie();mne.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("CF.DEL"),t.pushKey(e),t.push(r)},transformReply:$dr.transformBooleanReply}});var yXe=E(hne=>{"use strict";Object.defineProperty(hne,"__esModule",{value:!0});var Fdr=Ie();hne.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("CF.EXISTS"),t.pushKey(e),t.push(r)},transformReply:Fdr.transformBooleanReply}});var xXe=E(gne=>{"use strict";Object.defineProperty(gne,"__esModule",{value:!0});var Udr=Ub();gne.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("CF.INFO"),t.pushKey(e)},transformReply:{2:(t,e,r)=>(0,Udr.transformInfoV2Reply)(t,r),3:void 0}}});var Ane=E(lT=>{"use strict";Object.defineProperty(lT,"__esModule",{value:!0});lT.parseCfInsertArguments=void 0;var qdr=Ie();function bXe(t,e,r,n){t.pushKey(e),n?.CAPACITY!==void 0&&t.push("CAPACITY",n.CAPACITY.toString()),n?.NOCREATE&&t.push("NOCREATE"),t.push("ITEMS"),t.pushVariadic(r)}lT.parseCfInsertArguments=bXe;lT.default={IS_READ_ONLY:!1,parseCommand(...t){t[0].push("CF.INSERT"),bXe(...t)},transformReply:qdr.transformBooleanArrayReply}});var EXe=E(wf=>{"use strict";var jdr=wf&&wf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Hdr=wf&&wf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Qdr=wf&&wf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&jdr(e,t,r);return Hdr(e,t),e};Object.defineProperty(wf,"__esModule",{value:!0});var yne=Qdr(Ane());wf.default={IS_READ_ONLY:yne.default.IS_READ_ONLY,parseCommand(...t){t[0].push("CF.INSERTNX"),(0,yne.parseCfInsertArguments)(...t)},transformReply:yne.default.transformReply}});var _Xe=E(xne=>{"use strict";Object.defineProperty(xne,"__esModule",{value:!0});xne.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("CF.LOADCHUNK"),t.pushKey(e),t.push(r.toString(),n)},transformReply:void 0}});var SXe=E(bne=>{"use strict";Object.defineProperty(bne,"__esModule",{value:!0});bne.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("CF.RESERVE"),t.pushKey(e),t.push(r.toString()),n?.BUCKETSIZE!==void 0&&t.push("BUCKETSIZE",n.BUCKETSIZE.toString()),n?.MAXITERATIONS!==void 0&&t.push("MAXITERATIONS",n.MAXITERATIONS.toString()),n?.EXPANSION!==void 0&&t.push("EXPANSION",n.EXPANSION.toString())},transformReply:void 0}});var vXe=E(Ene=>{"use strict";Object.defineProperty(Ene,"__esModule",{value:!0});Ene.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("CF.SCANDUMP"),t.pushKey(e),t.push(r.toString())},transformReply(t){return{iterator:t[0],chunk:t[1]}}}});var BXe=E(dT=>{"use strict";var _u=dT&&dT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(dT,"__esModule",{value:!0});var CXe=_u(mXe()),IXe=_u(hXe()),TXe=_u(gXe()),wXe=_u(AXe()),RXe=_u(yXe()),NXe=_u(xXe()),OXe=_u(Ane()),PXe=_u(EXe()),DXe=_u(_Xe()),kXe=_u(SXe()),LXe=_u(vXe());dT.default={ADD:CXe.default,add:CXe.default,ADDNX:IXe.default,addNX:IXe.default,COUNT:TXe.default,count:TXe.default,DEL:wXe.default,del:wXe.default,EXISTS:RXe.default,exists:RXe.default,INFO:NXe.default,info:NXe.default,INSERT:OXe.default,insert:OXe.default,INSERTNX:PXe.default,insertNX:PXe.default,LOADCHUNK:DXe.default,loadChunk:DXe.default,RESERVE:kXe.default,reserve:kXe.default,SCANDUMP:LXe.default,scanDump:LXe.default}});var MXe=E(_ne=>{"use strict";Object.defineProperty(_ne,"__esModule",{value:!0});_ne.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("TDIGEST.ADD"),t.pushKey(e);for(let n of r)t.push(n.toString())},transformReply:void 0}});var Sne=E(fT=>{"use strict";Object.defineProperty(fT,"__esModule",{value:!0});fT.transformByRankArguments=void 0;var Gdr=Ie();function WXe(t,e,r){t.pushKey(e);for(let n of r)t.push(n.toString())}fT.transformByRankArguments=WXe;fT.default={IS_READ_ONLY:!0,parseCommand(...t){t[0].push("TDIGEST.BYRANK"),WXe(...t)},transformReply:Gdr.transformDoubleArrayReply}});var $Xe=E(Rf=>{"use strict";var Vdr=Rf&&Rf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),zdr=Rf&&Rf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Kdr=Rf&&Rf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Vdr(e,t,r);return zdr(e,t),e};Object.defineProperty(Rf,"__esModule",{value:!0});var vne=Kdr(Sne());Rf.default={IS_READ_ONLY:vne.default.IS_READ_ONLY,parseCommand(...t){t[0].push("TDIGEST.BYREVRANK"),(0,vne.transformByRankArguments)(...t)},transformReply:vne.default.transformReply}});var FXe=E(Cne=>{"use strict";Object.defineProperty(Cne,"__esModule",{value:!0});var Ydr=Ie();Cne.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("TDIGEST.CDF"),t.pushKey(e);for(let n of r)t.push(n.toString())},transformReply:Ydr.transformDoubleArrayReply}});var UXe=E(Ine=>{"use strict";Object.defineProperty(Ine,"__esModule",{value:!0});Ine.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("TDIGEST.CREATE"),t.pushKey(e),r?.COMPRESSION!==void 0&&t.push("COMPRESSION",r.COMPRESSION.toString())},transformReply:void 0}});var qXe=E(Tne=>{"use strict";Object.defineProperty(Tne,"__esModule",{value:!0});var Jdr=Ub();Tne.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("TDIGEST.INFO"),t.pushKey(e)},transformReply:{2:(t,e,r)=>(0,Jdr.transformInfoV2Reply)(t,r),3:void 0}}});var jXe=E(wne=>{"use strict";Object.defineProperty(wne,"__esModule",{value:!0});var Xdr=Ie();wne.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("TDIGEST.MAX"),t.pushKey(e)},transformReply:Xdr.transformDoubleReply}});var HXe=E(Rne=>{"use strict";Object.defineProperty(Rne,"__esModule",{value:!0});Rne.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("TDIGEST.MERGE"),t.pushKey(e),t.pushKeysLength(r),n?.COMPRESSION!==void 0&&t.push("COMPRESSION",n.COMPRESSION.toString()),n?.OVERRIDE&&t.push("OVERRIDE")},transformReply:void 0}});var QXe=E(Nne=>{"use strict";Object.defineProperty(Nne,"__esModule",{value:!0});var Zdr=Ie();Nne.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("TDIGEST.MIN"),t.pushKey(e)},transformReply:Zdr.transformDoubleReply}});var GXe=E(One=>{"use strict";Object.defineProperty(One,"__esModule",{value:!0});var efr=Ie();One.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("TDIGEST.QUANTILE"),t.pushKey(e);for(let n of r)t.push(n.toString())},transformReply:efr.transformDoubleArrayReply}});var Pne=E(pT=>{"use strict";Object.defineProperty(pT,"__esModule",{value:!0});pT.transformRankArguments=void 0;function VXe(t,e,r){t.pushKey(e);for(let n of r)t.push(n.toString())}pT.transformRankArguments=VXe;pT.default={IS_READ_ONLY:!0,parseCommand(...t){t[0].push("TDIGEST.RANK"),VXe(...t)},transformReply:void 0}});var zXe=E(Dne=>{"use strict";Object.defineProperty(Dne,"__esModule",{value:!0});Dne.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("TDIGEST.RESET"),t.pushKey(e)},transformReply:void 0}});var KXe=E(Nf=>{"use strict";var tfr=Nf&&Nf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),rfr=Nf&&Nf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),nfr=Nf&&Nf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&tfr(e,t,r);return rfr(e,t),e};Object.defineProperty(Nf,"__esModule",{value:!0});var kne=nfr(Pne());Nf.default={IS_READ_ONLY:kne.default.IS_READ_ONLY,parseCommand(...t){t[0].push("TDIGEST.REVRANK"),(0,kne.transformRankArguments)(...t)},transformReply:kne.default.transformReply}});var YXe=E(Lne=>{"use strict";Object.defineProperty(Lne,"__esModule",{value:!0});var sfr=Ie();Lne.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("TDIGEST.TRIMMED_MEAN"),t.pushKey(e),t.push(r.toString(),n.toString())},transformReply:sfr.transformDoubleReply}});var dZe=E(mT=>{"use strict";var ao=mT&&mT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(mT,"__esModule",{value:!0});var JXe=ao(MXe()),XXe=ao(Sne()),ZXe=ao($Xe()),eZe=ao(FXe()),tZe=ao(UXe()),rZe=ao(qXe()),nZe=ao(jXe()),sZe=ao(HXe()),iZe=ao(QXe()),aZe=ao(GXe()),oZe=ao(Pne()),cZe=ao(zXe()),uZe=ao(KXe()),lZe=ao(YXe());mT.default={ADD:JXe.default,add:JXe.default,BYRANK:XXe.default,byRank:XXe.default,BYREVRANK:ZXe.default,byRevRank:ZXe.default,CDF:eZe.default,cdf:eZe.default,CREATE:tZe.default,create:tZe.default,INFO:rZe.default,info:rZe.default,MAX:nZe.default,max:nZe.default,MERGE:sZe.default,merge:sZe.default,MIN:iZe.default,min:iZe.default,QUANTILE:aZe.default,quantile:aZe.default,RANK:oZe.default,rank:oZe.default,RESET:cZe.default,reset:cZe.default,REVRANK:uZe.default,revRank:uZe.default,TRIMMED_MEAN:lZe.default,trimmedMean:lZe.default}});var fZe=E(Bne=>{"use strict";Object.defineProperty(Bne,"__esModule",{value:!0});Bne.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("TOPK.ADD"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var pZe=E(Mne=>{"use strict";Object.defineProperty(Mne,"__esModule",{value:!0});Mne.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("TOPK.COUNT"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var hZe=E(Wne=>{"use strict";Object.defineProperty(Wne,"__esModule",{value:!0});function mZe(t,{item:e,incrementBy:r}){t.push(e,r.toString())}Wne.default={IS_READ_ONLY:!1,parseCommand(t,e,r){if(t.push("TOPK.INCRBY"),t.pushKey(e),Array.isArray(r))for(let n of r)mZe(t,n);else mZe(t,r)},transformReply:void 0}});var gZe=E($ne=>{"use strict";Object.defineProperty($ne,"__esModule",{value:!0});var ifr=Ie(),afr=Ub();$ne.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("TOPK.INFO"),t.pushKey(e)},transformReply:{2:(t,e,r)=>(t[7]=ifr.transformDoubleReply[2](t[7],e,r),(0,afr.transformInfoV2Reply)(t,r)),3:void 0}}});var AZe=E(Fne=>{"use strict";Object.defineProperty(Fne,"__esModule",{value:!0});Fne.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("TOPK.LIST"),t.pushKey(e),t.push("WITHCOUNT")},transformReply(t){let e=[];for(let r=0;r{"use strict";Object.defineProperty(Une,"__esModule",{value:!0});Une.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("TOPK.LIST"),t.pushKey(e)},transformReply:void 0}});var xZe=E(qne=>{"use strict";Object.defineProperty(qne,"__esModule",{value:!0});var ofr=Ie();qne.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("TOPK.QUERY"),t.pushKey(e),t.pushVariadic(r)},transformReply:ofr.transformBooleanArrayReply}});var bZe=E(jne=>{"use strict";Object.defineProperty(jne,"__esModule",{value:!0});jne.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("TOPK.RESERVE"),t.pushKey(e),t.push(r.toString()),n&&t.push(n.width.toString(),n.depth.toString(),n.decay.toString())},transformReply:void 0}});var RZe=E(hT=>{"use strict";var Q0=hT&&hT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(hT,"__esModule",{value:!0});var EZe=Q0(fZe()),_Ze=Q0(pZe()),SZe=Q0(hZe()),vZe=Q0(gZe()),CZe=Q0(AZe()),IZe=Q0(yZe()),TZe=Q0(xZe()),wZe=Q0(bZe());hT.default={ADD:EZe.default,add:EZe.default,COUNT:_Ze.default,count:_Ze.default,INCRBY:SZe.default,incrBy:SZe.default,INFO:vZe.default,info:vZe.default,LIST_WITHCOUNT:CZe.default,listWithCount:CZe.default,LIST:IZe.default,list:IZe.default,QUERY:TZe.default,query:TZe.default,RESERVE:wZe.default,reserve:wZe.default}});var NZe=E(gT=>{"use strict";var AT=gT&&gT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(gT,"__esModule",{value:!0});var cfr=AT(Ub()),ufr=AT(pXe()),lfr=AT(BXe()),dfr=AT(dZe()),ffr=AT(RZe());gT.default={bf:cfr.default,cms:ufr.default,cf:lfr.default,tDigest:dfr.default,topK:ffr.default}});var Hne=E(jb=>{"use strict";var pfr=jb&&jb.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(jb,"__esModule",{value:!0});jb.default=void 0;var mfr=NZe();Object.defineProperty(jb,"default",{enumerable:!0,get:function(){return pfr(mfr).default}})});var PZe=E(Qne=>{"use strict";Object.defineProperty(Qne,"__esModule",{value:!0});var OZe=Ie();Qne.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,...s){t.push("JSON.ARRAPPEND"),t.pushKey(e),t.push(r,(0,OZe.transformRedisJsonArgument)(n));for(let i=0;i{"use strict";Object.defineProperty(Gne,"__esModule",{value:!0});var hfr=Ie();Gne.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("JSON.ARRINDEX"),t.pushKey(e),t.push(r,(0,hfr.transformRedisJsonArgument)(n)),s?.range&&(t.push(s.range.start.toString()),s.range.stop!==void 0&&t.push(s.range.stop.toString()))},transformReply:void 0}});var LZe=E(Vne=>{"use strict";Object.defineProperty(Vne,"__esModule",{value:!0});var kZe=Ie();Vne.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,...i){t.push("JSON.ARRINSERT"),t.pushKey(e),t.push(r,n.toString(),(0,kZe.transformRedisJsonArgument)(s));for(let a=0;a{"use strict";Object.defineProperty(zne,"__esModule",{value:!0});zne.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("JSON.ARRLEN"),t.pushKey(e),r?.path!==void 0&&t.push(r.path)},transformReply:void 0}});var MZe=E(Yne=>{"use strict";Object.defineProperty(Yne,"__esModule",{value:!0});var Kne=Ie();Yne.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("JSON.ARRPOP"),t.pushKey(e),r&&(t.push(r.path),r.index!==void 0&&t.push(r.index.toString()))},transformReply(t){return(0,Kne.isArrayReply)(t)?t.map(e=>(0,Kne.transformRedisJsonNullReply)(e)):(0,Kne.transformRedisJsonNullReply)(t)}}});var WZe=E(Jne=>{"use strict";Object.defineProperty(Jne,"__esModule",{value:!0});Jne.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("JSON.ARRTRIM"),t.pushKey(e),t.push(r,n.toString(),s.toString())},transformReply:void 0}});var $Ze=E(Xne=>{"use strict";Object.defineProperty(Xne,"__esModule",{value:!0});Xne.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("JSON.CLEAR"),t.pushKey(e),r?.path!==void 0&&t.push(r.path)},transformReply:void 0}});var FZe=E(Zne=>{"use strict";Object.defineProperty(Zne,"__esModule",{value:!0});Zne.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("JSON.DEBUG","MEMORY"),t.pushKey(e),r?.path!==void 0&&t.push(r.path)},transformReply:void 0}});var UZe=E(ese=>{"use strict";Object.defineProperty(ese,"__esModule",{value:!0});ese.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("JSON.DEL"),t.pushKey(e),r?.path!==void 0&&t.push(r.path)},transformReply:void 0}});var qZe=E(tse=>{"use strict";Object.defineProperty(tse,"__esModule",{value:!0});tse.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("JSON.FORGET"),t.pushKey(e),r?.path!==void 0&&t.push(r.path)},transformReply:void 0}});var jZe=E(rse=>{"use strict";Object.defineProperty(rse,"__esModule",{value:!0});var gfr=Ie();rse.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("JSON.GET"),t.pushKey(e),r?.path!==void 0&&t.pushVariadic(r.path)},transformReply:gfr.transformRedisJsonNullReply}});var HZe=E(nse=>{"use strict";Object.defineProperty(nse,"__esModule",{value:!0});var Afr=Ie();nse.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("JSON.MERGE"),t.pushKey(e),t.push(r,(0,Afr.transformRedisJsonArgument)(n))},transformReply:void 0}});var QZe=E(sse=>{"use strict";Object.defineProperty(sse,"__esModule",{value:!0});var yfr=Ie();sse.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("JSON.MGET"),t.pushKeys(e),t.push(r)},transformReply(t){return t.map(e=>(0,yfr.transformRedisJsonNullReply)(e))}}});var GZe=E(ise=>{"use strict";Object.defineProperty(ise,"__esModule",{value:!0});var xfr=Ie();ise.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("JSON.MSET");for(let r=0;r{"use strict";Object.defineProperty(ase,"__esModule",{value:!0});ase.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("JSON.NUMINCRBY"),t.pushKey(e),t.push(r,n.toString())},transformReply:{2:t=>JSON.parse(t.toString()),3:void 0}}});var VZe=E(yT=>{"use strict";var bfr=yT&&yT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(yT,"__esModule",{value:!0});var Efr=bfr(ose());yT.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("JSON.NUMMULTBY"),t.pushKey(e),t.push(r,n.toString())},transformReply:Efr.default.transformReply}});var zZe=E(cse=>{"use strict";Object.defineProperty(cse,"__esModule",{value:!0});cse.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("JSON.OBJKEYS"),t.pushKey(e),r?.path!==void 0&&t.push(r.path)},transformReply:void 0}});var KZe=E(use=>{"use strict";Object.defineProperty(use,"__esModule",{value:!0});use.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("JSON.OBJLEN"),t.pushKey(e),r?.path!==void 0&&t.push(r.path)},transformReply:void 0}});var YZe=E(lse=>{"use strict";Object.defineProperty(lse,"__esModule",{value:!0});var _fr=Ie();lse.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("JSON.SET"),t.pushKey(e),t.push(r,(0,_fr.transformRedisJsonArgument)(n)),s?.condition?t.push(s?.condition):s?.NX?t.push("NX"):s?.XX&&t.push("XX")},transformReply:void 0}});var JZe=E(dse=>{"use strict";Object.defineProperty(dse,"__esModule",{value:!0});var Sfr=Ie();dse.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("JSON.STRAPPEND"),t.pushKey(e),n?.path!==void 0&&t.push(n.path),t.push((0,Sfr.transformRedisJsonArgument)(r))},transformReply:void 0}});var XZe=E(fse=>{"use strict";Object.defineProperty(fse,"__esModule",{value:!0});fse.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("JSON.STRLEN"),t.pushKey(e),r?.path&&t.push(r.path)},transformReply:void 0}});var ZZe=E(pse=>{"use strict";Object.defineProperty(pse,"__esModule",{value:!0});pse.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("JSON.TOGGLE"),t.pushKey(e),t.push(r)},transformReply:void 0}});var eet=E(mse=>{"use strict";Object.defineProperty(mse,"__esModule",{value:!0});mse.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("JSON.TYPE"),t.pushKey(e),r?.path&&t.push(r.path)},transformReply:{2:void 0,3:t=>t[0]}}});var Iet=E(Su=>{"use strict";var Gn=Su&&Su.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Su,"__esModule",{value:!0});Su.transformRedisJsonNullReply=Su.transformRedisJsonReply=Su.transformRedisJsonArgument=void 0;var tet=Gn(PZe()),ret=Gn(DZe()),net=Gn(LZe()),set=Gn(BZe()),iet=Gn(MZe()),aet=Gn(WZe()),oet=Gn($Ze()),cet=Gn(FZe()),uet=Gn(UZe()),det=Gn(qZe()),fet=Gn(jZe()),pet=Gn(HZe()),met=Gn(QZe()),het=Gn(GZe()),get=Gn(ose()),Aet=Gn(VZe()),yet=Gn(zZe()),xet=Gn(KZe()),bet=Gn(YZe()),Eet=Gn(JZe()),_et=Gn(XZe()),vet=Gn(ZZe()),Cet=Gn(eet()),hse=Ie();Object.defineProperty(Su,"transformRedisJsonArgument",{enumerable:!0,get:function(){return hse.transformRedisJsonArgument}});Object.defineProperty(Su,"transformRedisJsonReply",{enumerable:!0,get:function(){return hse.transformRedisJsonReply}});Object.defineProperty(Su,"transformRedisJsonNullReply",{enumerable:!0,get:function(){return hse.transformRedisJsonNullReply}});Su.default={ARRAPPEND:tet.default,arrAppend:tet.default,ARRINDEX:ret.default,arrIndex:ret.default,ARRINSERT:net.default,arrInsert:net.default,ARRLEN:set.default,arrLen:set.default,ARRPOP:iet.default,arrPop:iet.default,ARRTRIM:aet.default,arrTrim:aet.default,CLEAR:oet.default,clear:oet.default,DEBUG_MEMORY:cet.default,debugMemory:cet.default,DEL:uet.default,del:uet.default,FORGET:det.default,forget:det.default,GET:fet.default,get:fet.default,MERGE:pet.default,merge:pet.default,MGET:met.default,mGet:met.default,MSET:het.default,mSet:het.default,NUMINCRBY:get.default,numIncrBy:get.default,NUMMULTBY:Aet.default,numMultBy:Aet.default,OBJKEYS:yet.default,objKeys:yet.default,OBJLEN:xet.default,objLen:xet.default,SET:bet.default,set:bet.default,STRAPPEND:Eet.default,strAppend:Eet.default,STRLEN:_et.default,strLen:_et.default,TOGGLE:vet.default,toggle:vet.default,TYPE:Cet.default,type:Cet.default}});var gse=E(Hb=>{"use strict";var vfr=Hb&&Hb.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Hb,"__esModule",{value:!0});Hb.default=void 0;var Cfr=Iet();Object.defineProperty(Hb,"default",{enumerable:!0,get:function(){return vfr(Cfr).default}})});var Tet=E(Ase=>{"use strict";Object.defineProperty(Ase,"__esModule",{value:!0});Ase.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("FT._LIST")},transformReply:{2:void 0,3:void 0}}});var BB=E(In=>{"use strict";Object.defineProperty(In,"__esModule",{value:!0});In.REDISEARCH_LANGUAGE=In.parseSchema=In.SCHEMA_GEO_SHAPE_COORD_SYSTEM=In.VAMANA_COMPRESSION_ALGORITHM=In.SCHEMA_VECTOR_FIELD_ALGORITHM=In.SCHEMA_TEXT_FIELD_PHONETIC=In.SCHEMA_FIELD_TYPE=void 0;var wet=Ie();In.SCHEMA_FIELD_TYPE={TEXT:"TEXT",NUMERIC:"NUMERIC",GEO:"GEO",TAG:"TAG",VECTOR:"VECTOR",GEOSHAPE:"GEOSHAPE"};In.SCHEMA_TEXT_FIELD_PHONETIC={DM_EN:"dm:en",DM_FR:"dm:fr",DM_PT:"dm:pt",DM_ES:"dm:es"};In.SCHEMA_VECTOR_FIELD_ALGORITHM={FLAT:"FLAT",HNSW:"HNSW",VAMANA:"SVS-VAMANA"};In.VAMANA_COMPRESSION_ALGORITHM={LVQ4:"LVQ4",LVQ8:"LVQ8",LVQ4x4:"LVQ4x4",LVQ4x8:"LVQ4x8",LeanVec4x8:"LeanVec4x8",LeanVec8x8:"LeanVec8x8"};In.SCHEMA_GEO_SHAPE_COORD_SYSTEM={SPHERICAL:"SPHERICAL",FLAT:"FLAT"};function yse(t,e){e.SORTABLE&&(t.push("SORTABLE"),e.SORTABLE==="UNF"&&t.push("UNF")),e.NOINDEX&&t.push("NOINDEX")}function Ret(t,e){for(let[r,n]of Object.entries(e)){let s=Array.isArray(n)?n:[n];for(let i of s){if(t.push(r),typeof i=="string"){t.push(i);continue}switch(i.AS&&t.push("AS",i.AS),t.push(i.type),i.INDEXMISSING&&t.push("INDEXMISSING"),i.type){case In.SCHEMA_FIELD_TYPE.TEXT:i.NOSTEM&&t.push("NOSTEM"),i.WEIGHT!==void 0&&t.push("WEIGHT",i.WEIGHT.toString()),i.PHONETIC&&t.push("PHONETIC",i.PHONETIC),i.WITHSUFFIXTRIE&&t.push("WITHSUFFIXTRIE"),i.INDEXEMPTY&&t.push("INDEXEMPTY"),yse(t,i);break;case In.SCHEMA_FIELD_TYPE.NUMERIC:case In.SCHEMA_FIELD_TYPE.GEO:yse(t,i);break;case In.SCHEMA_FIELD_TYPE.TAG:i.SEPARATOR&&t.push("SEPARATOR",i.SEPARATOR),i.CASESENSITIVE&&t.push("CASESENSITIVE"),i.WITHSUFFIXTRIE&&t.push("WITHSUFFIXTRIE"),i.INDEXEMPTY&&t.push("INDEXEMPTY"),yse(t,i);break;case In.SCHEMA_FIELD_TYPE.VECTOR:t.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 In.SCHEMA_VECTOR_FIELD_ALGORITHM.FLAT:i.BLOCK_SIZE!==void 0&&a.push("BLOCK_SIZE",i.BLOCK_SIZE.toString());break;case In.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 In.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}t.pushVariadicWithLength(a);break;case In.SCHEMA_FIELD_TYPE.GEOSHAPE:i.COORD_SYSTEM!==void 0&&t.push("COORD_SYSTEM",i.COORD_SYSTEM);break}}}}In.parseSchema=Ret;In.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"};In.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("FT.CREATE",e),n?.ON&&t.push("ON",n.ON),(0,wet.parseOptionalVariadicArgument)(t,"PREFIX",n?.PREFIX),n?.FILTER&&t.push("FILTER",n.FILTER),n?.LANGUAGE&&t.push("LANGUAGE",n.LANGUAGE),n?.LANGUAGE_FIELD&&t.push("LANGUAGE_FIELD",n.LANGUAGE_FIELD),n?.SCORE&&t.push("SCORE",n.SCORE.toString()),n?.SCORE_FIELD&&t.push("SCORE_FIELD",n.SCORE_FIELD),n?.MAXTEXTFIELDS&&t.push("MAXTEXTFIELDS"),n?.TEMPORARY&&t.push("TEMPORARY",n.TEMPORARY.toString()),n?.NOOFFSETS&&t.push("NOOFFSETS"),n?.NOHL&&t.push("NOHL"),n?.NOFIELDS&&t.push("NOFIELDS"),n?.NOFREQS&&t.push("NOFREQS"),n?.SKIPINITIALSCAN&&t.push("SKIPINITIALSCAN"),(0,wet.parseOptionalVariadicArgument)(t,"STOPWORDS",n?.STOPWORDS),t.push("SCHEMA"),Ret(t,r)},transformReply:void 0}});var Net=E(xse=>{"use strict";Object.defineProperty(xse,"__esModule",{value:!0});var Ifr=BB();xse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.ALTER",e,"SCHEMA","ADD"),(0,Ifr.parseSchema)(t,r)},transformReply:void 0}});var Qb=E(MB=>{"use strict";Object.defineProperty(MB,"__esModule",{value:!0});MB.DEFAULT_DIALECT=void 0;MB.DEFAULT_DIALECT="2"});var xg=E(yg=>{"use strict";Object.defineProperty(yg,"__esModule",{value:!0});yg.parseSearchOptions=yg.parseParamsArgument=void 0;var xT=Ie(),Tfr=Qb();function Oet(t,e){if(e){t.push("PARAMS");let r=[];for(let n in e){if(!Object.hasOwn(e,n))continue;let s=e[n];r.push(n,typeof s=="number"?s.toString():s)}t.pushVariadicWithLength(r)}}yg.parseParamsArgument=Oet;function Pet(t,e){e?.VERBATIM&&t.push("VERBATIM"),e?.NOSTOPWORDS&&t.push("NOSTOPWORDS"),(0,xT.parseOptionalVariadicArgument)(t,"INKEYS",e?.INKEYS),(0,xT.parseOptionalVariadicArgument)(t,"INFIELDS",e?.INFIELDS),(0,xT.parseOptionalVariadicArgument)(t,"RETURN",e?.RETURN),e?.SUMMARIZE&&(t.push("SUMMARIZE"),typeof e.SUMMARIZE=="object"&&((0,xT.parseOptionalVariadicArgument)(t,"FIELDS",e.SUMMARIZE.FIELDS),e.SUMMARIZE.FRAGS!==void 0&&t.push("FRAGS",e.SUMMARIZE.FRAGS.toString()),e.SUMMARIZE.LEN!==void 0&&t.push("LEN",e.SUMMARIZE.LEN.toString()),e.SUMMARIZE.SEPARATOR!==void 0&&t.push("SEPARATOR",e.SUMMARIZE.SEPARATOR))),e?.HIGHLIGHT&&(t.push("HIGHLIGHT"),typeof e.HIGHLIGHT=="object"&&((0,xT.parseOptionalVariadicArgument)(t,"FIELDS",e.HIGHLIGHT.FIELDS),e.HIGHLIGHT.TAGS&&t.push("TAGS",e.HIGHLIGHT.TAGS.open,e.HIGHLIGHT.TAGS.close))),e?.SLOP!==void 0&&t.push("SLOP",e.SLOP.toString()),e?.TIMEOUT!==void 0&&t.push("TIMEOUT",e.TIMEOUT.toString()),e?.INORDER&&t.push("INORDER"),e?.LANGUAGE&&t.push("LANGUAGE",e.LANGUAGE),e?.EXPANDER&&t.push("EXPANDER",e.EXPANDER),e?.SCORER&&t.push("SCORER",e.SCORER),e?.SORTBY&&(t.push("SORTBY"),typeof e.SORTBY=="string"||e.SORTBY instanceof Buffer?t.push(e.SORTBY):(t.push(e.SORTBY.BY),e.SORTBY.DIRECTION&&t.push(e.SORTBY.DIRECTION))),e?.LIMIT&&t.push("LIMIT",e.LIMIT.from.toString(),e.LIMIT.size.toString()),Oet(t,e?.PARAMS),e?.DIALECT?t.push("DIALECT",e.DIALECT.toString()):t.push("DIALECT",Tfr.DEFAULT_DIALECT)}yg.parseSearchOptions=Pet;yg.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("FT.SEARCH",e,r),Pet(t,n)},transformReply:{2:t=>{let e=t.length>2&&!Array.isArray(t[2]),r=[],n=1;for(;n{"use strict";Object.defineProperty(on,"__esModule",{value:!0});on.parseGroupByReducer=on.parseAggregateOptions=on.FT_AGGREGATE_GROUP_BY_REDUCERS=on.FT_AGGREGATE_STEPS=void 0;var Rfr=xg(),Nfr=Ie(),Ofr=Qb();on.FT_AGGREGATE_STEPS={GROUPBY:"GROUPBY",SORTBY:"SORTBY",APPLY:"APPLY",LIMIT:"LIMIT",FILTER:"FILTER"};on.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"};on.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e,r,n){return t.push("FT.AGGREGATE",e,r),Let(t,n)},transformReply:{2:(t,e,r)=>{let n=[];for(let s=1;s{"use strict";var Pfr=bT&&bT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(bT,"__esModule",{value:!0});var Ese=Pfr(Gb());bT.default={IS_READ_ONLY:Ese.default.IS_READ_ONLY,parseCommand(t,e,r,n){Ese.default.parseCommand(t,e,r,n),t.push("WITHCURSOR"),n?.COUNT!==void 0&&t.push("COUNT",n.COUNT.toString()),n?.MAXIDLE!==void 0&&t.push("MAXIDLE",n.MAXIDLE.toString())},transformReply:{2:t=>({...Ese.default.transformReply[2](t[0]),cursor:t[1]}),3:void 0},unstableResp3:!0}});var Bet=E(Sse=>{"use strict";Object.defineProperty(Sse,"__esModule",{value:!0});Sse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.ALIASADD",e,r)},transformReply:void 0}});var Met=E(vse=>{"use strict";Object.defineProperty(vse,"__esModule",{value:!0});vse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("FT.ALIASDEL",e)},transformReply:void 0}});var Wet=E(Cse=>{"use strict";Object.defineProperty(Cse,"__esModule",{value:!0});Cse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.ALIASUPDATE",e,r)},transformReply:void 0}});var $et=E(Ise=>{"use strict";Object.defineProperty(Ise,"__esModule",{value:!0});Ise.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("FT.CONFIG","GET",e)},transformReply(t){let e=Object.create(null);for(let r of t){let[n,s]=r;e[n.toString()]=s}return e}}});var Fet=E(Tse=>{"use strict";Object.defineProperty(Tse,"__esModule",{value:!0});Tse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.CONFIG","SET",e,r)},transformReply:void 0}});var Uet=E(wse=>{"use strict";Object.defineProperty(wse,"__esModule",{value:!0});wse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.CURSOR","DEL",e,r.toString())},transformReply:void 0}});var qet=E(ET=>{"use strict";var Dfr=ET&&ET.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(ET,"__esModule",{value:!0});var kfr=Dfr(_se());ET.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("FT.CURSOR","READ",e,r.toString()),n?.COUNT!==void 0&&t.push("COUNT",n.COUNT.toString())},transformReply:kfr.default.transformReply,unstableResp3:!0}});var jet=E(Rse=>{"use strict";Object.defineProperty(Rse,"__esModule",{value:!0});Rse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.DICTADD",e),t.pushVariadic(r)},transformReply:void 0}});var Het=E(Nse=>{"use strict";Object.defineProperty(Nse,"__esModule",{value:!0});Nse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.DICTDEL",e),t.pushVariadic(r)},transformReply:void 0}});var Qet=E(Ose=>{"use strict";Object.defineProperty(Ose,"__esModule",{value:!0});Ose.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("FT.DICTDUMP",e)},transformReply:{2:void 0,3:void 0}}});var Get=E(Pse=>{"use strict";Object.defineProperty(Pse,"__esModule",{value:!0});Pse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.DROPINDEX",e),r?.DD&&t.push("DD")},transformReply:{2:void 0,3:void 0}}});var Vet=E(Dse=>{"use strict";Object.defineProperty(Dse,"__esModule",{value:!0});var Lfr=xg(),Bfr=Qb();Dse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("FT.EXPLAIN",e,r),(0,Lfr.parseParamsArgument)(t,n?.PARAMS),n?.DIALECT?t.push("DIALECT",n.DIALECT.toString()):t.push("DIALECT",Bfr.DEFAULT_DIALECT)},transformReply:void 0}});var zet=E(kse=>{"use strict";Object.defineProperty(kse,"__esModule",{value:!0});var Mfr=Qb();kse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("FT.EXPLAINCLI",e,r),n?.DIALECT?t.push("DIALECT",n.DIALECT.toString()):t.push("DIALECT",Mfr.DEFAULT_DIALECT)},transformReply:void 0}});var Jet=E(vu=>{"use strict";Object.defineProperty(vu,"__esModule",{value:!0});vu.FT_HYBRID_COMBINE_METHOD=vu.FT_HYBRID_VECTOR_METHOD=void 0;var Ket=Ie(),Wfr=xg(),$fr=Gb();vu.FT_HYBRID_VECTOR_METHOD={KNN:"KNN",RANGE:"RANGE"};vu.FT_HYBRID_COMBINE_METHOD={RRF:"RRF",LINEAR:"LINEAR"};function Ffr(t,e){t.push("SEARCH",e.query),e.SCORER&&t.push("SCORER",e.SCORER),e.YIELD_SCORE_AS&&t.push("YIELD_SCORE_AS",e.YIELD_SCORE_AS)}function Ufr(t,e){if(t.push("VSIM",e.field,e.vector),e.method){if(e.method.type===vu.FT_HYBRID_VECTOR_METHOD.KNN){let r=2;e.method.EF_RUNTIME!==void 0&&(r+=2),t.push("KNN",r.toString(),"K",e.method.K.toString()),e.method.EF_RUNTIME!==void 0&&t.push("EF_RUNTIME",e.method.EF_RUNTIME.toString())}if(e.method.type===vu.FT_HYBRID_VECTOR_METHOD.RANGE){let r=2;e.method.EPSILON!==void 0&&(r+=2),t.push("RANGE",r.toString(),"RADIUS",e.method.RADIUS.toString()),e.method.EPSILON!==void 0&&t.push("EPSILON",e.method.EPSILON.toString())}}e.FILTER&&t.push("FILTER",e.FILTER),e.YIELD_SCORE_AS&&t.push("YIELD_SCORE_AS",e.YIELD_SCORE_AS)}function qfr(t,e){if(e){if(t.push("COMBINE"),e.method.type===vu.FT_HYBRID_COMBINE_METHOD.RRF){let r=0;e.method.WINDOW!==void 0&&(r+=2),e.method.CONSTANT!==void 0&&(r+=2),e.YIELD_SCORE_AS&&(r+=2),t.push("RRF",r.toString()),e.method.WINDOW!==void 0&&t.push("WINDOW",e.method.WINDOW.toString()),e.method.CONSTANT!==void 0&&t.push("CONSTANT",e.method.CONSTANT.toString())}if(e.method.type===vu.FT_HYBRID_COMBINE_METHOD.LINEAR){let r=0;e.method.ALPHA!==void 0&&(r+=2),e.method.BETA!==void 0&&(r+=2),e.method.WINDOW!==void 0&&(r+=2),e.YIELD_SCORE_AS&&(r+=2),t.push("LINEAR",r.toString()),e.method.ALPHA!==void 0&&t.push("ALPHA",e.method.ALPHA.toString()),e.method.BETA!==void 0&&t.push("BETA",e.method.BETA.toString()),e.method.WINDOW!==void 0&&t.push("WINDOW",e.method.WINDOW.toString())}e.YIELD_SCORE_AS&&t.push("YIELD_SCORE_AS",e.YIELD_SCORE_AS)}}function jfr(t,e){t.push("APPLY",e.expression),e.AS&&t.push("AS",e.AS)}function Hfr(t,e){if(Ffr(t,e.SEARCH),Ufr(t,e.VSIM),e.COMBINE&&qfr(t,e.COMBINE),e.LOAD&&(e.LOAD==="*"?t.push("LOAD","*"):(0,Ket.parseOptionalVariadicArgument)(t,"LOAD",e.LOAD)),e.GROUPBY&&((0,Ket.parseOptionalVariadicArgument)(t,"GROUPBY",e.GROUPBY.fields),e.GROUPBY.REDUCE)){let n=Array.isArray(e.GROUPBY.REDUCE)?e.GROUPBY.REDUCE:[e.GROUPBY.REDUCE];for(let s of n)(0,$fr.parseGroupByReducer)(t,s)}if(e.APPLY){let n=Array.isArray(e.APPLY)?e.APPLY:[e.APPLY];for(let s of n)jfr(t,s)}if(e.SORTBY){let n=e.SORTBY.fields.reduce((s,i)=>i.direction?s+2:s+1,0);t.push("SORTBY",n.toString());for(let s of e.SORTBY.fields)t.push(s.field),s.direction&&t.push(s.direction)}e.NOSORT&&t.push("NOSORT"),e.FILTER&&t.push("FILTER",e.FILTER),e.LIMIT&&t.push("LIMIT",e.LIMIT.offset.toString(),e.LIMIT.count.toString());let r=e.PARAMS&&Object.keys(e.PARAMS).length>0;(0,Wfr.parseParamsArgument)(t,r?e.PARAMS:void 0),e.TIMEOUT!==void 0&&t.push("TIMEOUT",e.TIMEOUT.toString())}vu.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.HYBRID",e),Hfr(t,r)},transformReply:{2:t=>Qfr(t),3:void 0},unstableResp3:!0};function Qfr(t){let e=Yet(t),r=e.total_results??0,n=e.results??[],s=e.warnings??[],i=e.execution_time?Number.parseFloat(e.execution_time):0,a=[];for(let o of n){let c=Yet(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 Yet(t){let e={};if(!Array.isArray(t))return e;for(let r=0;r{"use strict";Object.defineProperty(Bse,"__esModule",{value:!0});var Lse=Ie();Bse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("FT.INFO",e)},transformReply:{2:Gfr,3:void 0},unstableResp3:!0};function Gfr(t,e,r){let n=(0,Lse.createTransformTuplesReplyFunc)(e,r),s={};for(let i=0;in(o));break;case"gc_stats":{let o={},c=t[i+1];for(let u=0;u{"use strict";var Vfr=Of&&Of.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),zfr=Of&&Of.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Kfr=Of&&Of.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Vfr(e,t,r);return zfr(e,t),e};Object.defineProperty(Of,"__esModule",{value:!0});var Zet=Kfr(xg());Of.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("FT.PROFILE",e,"SEARCH"),n?.LIMITED&&t.push("LIMITED"),t.push("QUERY",r),(0,Zet.parseSearchOptions)(t,n)},transformReply:{2:t=>({results:Zet.default.transformReply[2](t[0]),profile:t[1]}),3:t=>t},unstableResp3:!0}});var rtt=E(Pf=>{"use strict";var Yfr=Pf&&Pf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Jfr=Pf&&Pf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Xfr=Pf&&Pf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Yfr(e,t,r);return Jfr(e,t),e};Object.defineProperty(Pf,"__esModule",{value:!0});var ttt=Xfr(Gb());Pf.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("FT.PROFILE",e,"AGGREGATE"),n?.LIMITED&&t.push("LIMITED"),t.push("QUERY",r),(0,ttt.parseAggregateOptions)(t,n)},transformReply:{2:t=>({results:ttt.default.transformReply[2](t[0]),profile:t[1]}),3:t=>t},unstableResp3:!0}});var ntt=E(_T=>{"use strict";var Zfr=_T&&_T.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(_T,"__esModule",{value:!0});var Mse=Zfr(xg());_T.default={NOT_KEYED_COMMAND:Mse.default.NOT_KEYED_COMMAND,IS_READ_ONLY:Mse.default.IS_READ_ONLY,parseCommand(...t){Mse.default.parseCommand(...t),t[0].push("NOCONTENT")},transformReply:{2:t=>({total:t[0],documents:t.slice(1)}),3:void 0},unstableResp3:!0}});var itt=E(Wse=>{"use strict";Object.defineProperty(Wse,"__esModule",{value:!0});var epr=Qb();Wse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){if(t.push("FT.SPELLCHECK",e,r),n?.DISTANCE&&t.push("DISTANCE",n.DISTANCE.toString()),n?.TERMS)if(Array.isArray(n.TERMS))for(let s of n.TERMS)stt(t,s);else stt(t,n.TERMS);n?.DIALECT?t.push("DIALECT",n.DIALECT.toString()):t.push("DIALECT",epr.DEFAULT_DIALECT)},transformReply:{2:t=>t.map(([,e,r])=>({term:e,suggestions:r.map(([n,s])=>({score:Number(n),suggestion:s}))})),3:void 0},unstableResp3:!0};function stt(t,{mode:e,dictionary:r}){t.push("TERMS",e,r)}});var att=E($se=>{"use strict";Object.defineProperty($se,"__esModule",{value:!0});$se.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("FT.SUGADD"),t.pushKey(e),t.push(r,n.toString()),s?.INCR&&t.push("INCR"),s?.PAYLOAD&&t.push("PAYLOAD",s.PAYLOAD)},transformReply:void 0}});var ott=E(Fse=>{"use strict";Object.defineProperty(Fse,"__esModule",{value:!0});Fse.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.SUGDEL"),t.pushKey(e),t.push(r)},transformReply:void 0}});var ST=E(Use=>{"use strict";Object.defineProperty(Use,"__esModule",{value:!0});Use.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("FT.SUGGET"),t.pushKey(e),t.push(r),n?.FUZZY&&t.push("FUZZY"),n?.MAX!==void 0&&t.push("MAX",n.MAX.toString())},transformReply:void 0}});var utt=E(vT=>{"use strict";var tpr=vT&&vT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(vT,"__esModule",{value:!0});var rpr=Ie(),ctt=tpr(ST());vT.default={IS_READ_ONLY:ctt.default.IS_READ_ONLY,parseCommand(...t){ctt.default.parseCommand(...t),t[0].push("WITHPAYLOADS")},transformReply(t){if((0,rpr.isNullReply)(t))return null;let e=new Array(t.length/2),r=0,n=0;for(;r{"use strict";var npr=CT&&CT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(CT,"__esModule",{value:!0});var qse=Ie(),ltt=npr(ST());CT.default={IS_READ_ONLY:ltt.default.IS_READ_ONLY,parseCommand(...t){ltt.default.parseCommand(...t),t[0].push("WITHSCORES","WITHPAYLOADS")},transformReply:{2:(t,e,r)=>{if((0,qse.isNullReply)(t))return null;let n=new Array(t.length/3),s=0,i=0;for(;s{if((0,qse.isNullReply)(t))return null;let e=new Array(t.length/3),r=0,n=0;for(;r{"use strict";var spr=IT&&IT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(IT,"__esModule",{value:!0});var jse=Ie(),ftt=spr(ST());IT.default={IS_READ_ONLY:ftt.default.IS_READ_ONLY,parseCommand(...t){ftt.default.parseCommand(...t),t[0].push("WITHSCORES")},transformReply:{2:(t,e,r)=>{if((0,jse.isNullReply)(t))return null;let n=new Array(t.length/2),s=0,i=0;for(;s{if((0,jse.isNullReply)(t))return null;let e=new Array(t.length/2),r=0,n=0;for(;r{"use strict";Object.defineProperty(Hse,"__esModule",{value:!0});Hse.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("FT.SUGLEN",e)},transformReply:void 0}});var htt=E(Qse=>{"use strict";Object.defineProperty(Qse,"__esModule",{value:!0});Qse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("FT.SYNDUMP",e)},transformReply:{2:t=>{let e={},r=0;for(;r{"use strict";Object.defineProperty(Gse,"__esModule",{value:!0});Gse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("FT.SYNUPDATE",e,r),s?.SKIPINITIALSCAN&&t.push("SKIPINITIALSCAN"),t.pushVariadic(n)},transformReply:void 0}});var Att=E(Vse=>{"use strict";Object.defineProperty(Vse,"__esModule",{value:!0});Vse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.TAGVALS",e,r)},transformReply:{2:void 0,3:void 0}}});var Ztt=E(TT=>{"use strict";var _r=TT&&TT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(TT,"__esModule",{value:!0});var ytt=_r(Tet()),xtt=_r(Net()),btt=_r(_se()),Ett=_r(Gb()),_tt=_r(Bet()),Stt=_r(Met()),vtt=_r(Wet()),Ctt=_r($et()),Itt=_r(Fet()),Ttt=_r(BB()),wtt=_r(Uet()),Rtt=_r(qet()),Ntt=_r(jet()),Ott=_r(Het()),Ptt=_r(Qet()),Dtt=_r(Get()),ktt=_r(Vet()),Ltt=_r(zet()),Btt=_r(Jet()),Mtt=_r(Xet()),Wtt=_r(ett()),$tt=_r(rtt()),Ftt=_r(ntt()),Utt=_r(xg()),qtt=_r(itt()),jtt=_r(att()),Htt=_r(ott()),Qtt=_r(utt()),Gtt=_r(dtt()),Vtt=_r(ptt()),ztt=_r(ST()),Ktt=_r(mtt()),Ytt=_r(htt()),Jtt=_r(gtt()),Xtt=_r(Att());TT.default={_LIST:ytt.default,_list:ytt.default,ALTER:xtt.default,alter:xtt.default,AGGREGATE_WITHCURSOR:btt.default,aggregateWithCursor:btt.default,AGGREGATE:Ett.default,aggregate:Ett.default,ALIASADD:_tt.default,aliasAdd:_tt.default,ALIASDEL:Stt.default,aliasDel:Stt.default,ALIASUPDATE:vtt.default,aliasUpdate:vtt.default,CONFIG_GET:Ctt.default,configGet:Ctt.default,CONFIG_SET:Itt.default,configSet:Itt.default,CREATE:Ttt.default,create:Ttt.default,CURSOR_DEL:wtt.default,cursorDel:wtt.default,CURSOR_READ:Rtt.default,cursorRead:Rtt.default,DICTADD:Ntt.default,dictAdd:Ntt.default,DICTDEL:Ott.default,dictDel:Ott.default,DICTDUMP:Ptt.default,dictDump:Ptt.default,DROPINDEX:Dtt.default,dropIndex:Dtt.default,EXPLAIN:ktt.default,explain:ktt.default,EXPLAINCLI:Ltt.default,explainCli:Ltt.default,HYBRID:Btt.default,hybrid:Btt.default,INFO:Mtt.default,info:Mtt.default,PROFILESEARCH:Wtt.default,profileSearch:Wtt.default,PROFILEAGGREGATE:$tt.default,profileAggregate:$tt.default,SEARCH_NOCONTENT:Ftt.default,searchNoContent:Ftt.default,SEARCH:Utt.default,search:Utt.default,SPELLCHECK:qtt.default,spellCheck:qtt.default,SUGADD:jtt.default,sugAdd:jtt.default,SUGDEL:Htt.default,sugDel:Htt.default,SUGGET_WITHPAYLOADS:Qtt.default,sugGetWithPayloads:Qtt.default,SUGGET_WITHSCORES_WITHPAYLOADS:Gtt.default,sugGetWithScoresWithPayloads:Gtt.default,SUGGET_WITHSCORES:Vtt.default,sugGetWithScores:Vtt.default,SUGGET:ztt.default,sugGet:ztt.default,SUGLEN:Ktt.default,sugLen:Ktt.default,SYNDUMP:Ytt.default,synDump:Ytt.default,SYNUPDATE:Jtt.default,synUpdate:Jtt.default,TAGVALS:Xtt.default,tagVals:Xtt.default}});var zse=E(si=>{"use strict";var ipr=si&&si.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(si,"__esModule",{value:!0});si.FT_AGGREGATE_STEPS=si.FT_AGGREGATE_GROUP_BY_REDUCERS=si.SCHEMA_VECTOR_FIELD_ALGORITHM=si.SCHEMA_TEXT_FIELD_PHONETIC=si.SCHEMA_FIELD_TYPE=si.REDISEARCH_LANGUAGE=si.default=void 0;var apr=Ztt();Object.defineProperty(si,"default",{enumerable:!0,get:function(){return ipr(apr).default}});var WB=BB();Object.defineProperty(si,"REDISEARCH_LANGUAGE",{enumerable:!0,get:function(){return WB.REDISEARCH_LANGUAGE}});Object.defineProperty(si,"SCHEMA_FIELD_TYPE",{enumerable:!0,get:function(){return WB.SCHEMA_FIELD_TYPE}});Object.defineProperty(si,"SCHEMA_TEXT_FIELD_PHONETIC",{enumerable:!0,get:function(){return WB.SCHEMA_TEXT_FIELD_PHONETIC}});Object.defineProperty(si,"SCHEMA_VECTOR_FIELD_ALGORITHM",{enumerable:!0,get:function(){return WB.SCHEMA_VECTOR_FIELD_ALGORITHM}});var ert=Gb();Object.defineProperty(si,"FT_AGGREGATE_GROUP_BY_REDUCERS",{enumerable:!0,get:function(){return ert.FT_AGGREGATE_GROUP_BY_REDUCERS}});Object.defineProperty(si,"FT_AGGREGATE_STEPS",{enumerable:!0,get:function(){return ert.FT_AGGREGATE_STEPS}})});var ii=E(gr=>{"use strict";Object.defineProperty(gr,"__esModule",{value:!0});gr.transformRESP2LabelsWithSources=gr.transformRESP2Labels=gr.parseSelectedLabelsArguments=gr.resp3MapToValue=gr.resp2MapToValue=gr.transformSamplesReply=gr.transformSampleReply=gr.parseLabelsArgument=gr.transformTimestampArgument=gr.parseDuplicatePolicy=gr.TIME_SERIES_DUPLICATE_POLICIES=gr.parseChunkSizeArgument=gr.parseEncodingArgument=gr.TIME_SERIES_ENCODING=gr.parseRetentionArgument=gr.parseIgnoreArgument=void 0;var Kse=cT();function opr(t,e){e!==void 0&&t.push("IGNORE",e.maxTimeDiff.toString(),e.maxValDiff.toString())}gr.parseIgnoreArgument=opr;function cpr(t,e){e!==void 0&&t.push("RETENTION",e.toString())}gr.parseRetentionArgument=cpr;gr.TIME_SERIES_ENCODING={COMPRESSED:"COMPRESSED",UNCOMPRESSED:"UNCOMPRESSED"};function upr(t,e){e!==void 0&&t.push("ENCODING",e)}gr.parseEncodingArgument=upr;function lpr(t,e){e!==void 0&&t.push("CHUNK_SIZE",e.toString())}gr.parseChunkSizeArgument=lpr;gr.TIME_SERIES_DUPLICATE_POLICIES={BLOCK:"BLOCK",FIRST:"FIRST",LAST:"LAST",MIN:"MIN",MAX:"MAX",SUM:"SUM"};function dpr(t,e){e!==void 0&&t.push("DUPLICATE_POLICY",e)}gr.parseDuplicatePolicy=dpr;function fpr(t){return typeof t=="string"?t:(typeof t=="number"?t:t.getTime()).toString()}gr.transformTimestampArgument=fpr;function ppr(t,e){if(e){t.push("LABELS");for(let[r,n]of Object.entries(e))t.push(r,n)}}gr.parseLabelsArgument=ppr;gr.transformSampleReply={2(t){let[e,r]=t;return{timestamp:e,value:Number(r)}},3(t){let[e,r]=t;return{timestamp:e,value:r}}};gr.transformSamplesReply={2(t){return t.map(e=>gr.transformSampleReply[2](e))},3(t){return t.map(e=>gr.transformSampleReply[3](e))}};function mpr(t,e,r){let n=t;switch(r?.[Kse.RESP_TYPES.MAP]){case Map:{let s=new Map;for(let i of n){let a=i,o=a[0];s.set(o.toString(),e(a))}return s}case Array:{for(let s of n){let i=s;i[1]=e(i)}return n}default:{let s=Object.create(null);for(let i of n){let a=i,o=a[0];s[o.toString()]=e(a)}return s}}}gr.resp2MapToValue=mpr;function hpr(t,e){let r=t;if(r instanceof Array)for(let n=1;n{"use strict";Object.defineProperty(Yse,"__esModule",{value:!0});var Vb=ii();Yse.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("TS.ADD"),t.pushKey(e),t.push((0,Vb.transformTimestampArgument)(r),n.toString()),(0,Vb.parseRetentionArgument)(t,s?.RETENTION),(0,Vb.parseEncodingArgument)(t,s?.ENCODING),(0,Vb.parseChunkSizeArgument)(t,s?.CHUNK_SIZE),s?.ON_DUPLICATE&&t.push("ON_DUPLICATE",s.ON_DUPLICATE),(0,Vb.parseLabelsArgument)(t,s?.LABELS),(0,Vb.parseIgnoreArgument)(t,s?.IGNORE)},transformReply:void 0}});var rrt=E(Jse=>{"use strict";Object.defineProperty(Jse,"__esModule",{value:!0});var wT=ii();Jse.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("TS.ALTER"),t.pushKey(e),(0,wT.parseRetentionArgument)(t,r?.RETENTION),(0,wT.parseChunkSizeArgument)(t,r?.CHUNK_SIZE),(0,wT.parseDuplicatePolicy)(t,r?.DUPLICATE_POLICY),(0,wT.parseLabelsArgument)(t,r?.LABELS),(0,wT.parseIgnoreArgument)(t,r?.IGNORE)},transformReply:void 0}});var nrt=E(Xse=>{"use strict";Object.defineProperty(Xse,"__esModule",{value:!0});var zb=ii();Xse.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("TS.CREATE"),t.pushKey(e),(0,zb.parseRetentionArgument)(t,r?.RETENTION),(0,zb.parseEncodingArgument)(t,r?.ENCODING),(0,zb.parseChunkSizeArgument)(t,r?.CHUNK_SIZE),(0,zb.parseDuplicatePolicy)(t,r?.DUPLICATE_POLICY),(0,zb.parseLabelsArgument)(t,r?.LABELS),(0,zb.parseIgnoreArgument)(t,r?.IGNORE)},transformReply:void 0}});var Zse=E(RT=>{"use strict";Object.defineProperty(RT,"__esModule",{value:!0});RT.TIME_SERIES_AGGREGATION_TYPE=void 0;RT.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"};RT.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,i){t.push("TS.CREATERULE"),t.pushKeys([e,r]),t.push("AGGREGATION",n,s.toString()),i!==void 0&&t.push(i.toString())},transformReply:void 0}});var eie=E(OT=>{"use strict";Object.defineProperty(OT,"__esModule",{value:!0});OT.parseIncrByArguments=void 0;var NT=ii();function srt(t,e,r,n){t.pushKey(e),t.push(r.toString()),n?.TIMESTAMP!==void 0&&n?.TIMESTAMP!==null&&t.push("TIMESTAMP",(0,NT.transformTimestampArgument)(n.TIMESTAMP)),(0,NT.parseRetentionArgument)(t,n?.RETENTION),n?.UNCOMPRESSED&&t.push("UNCOMPRESSED"),(0,NT.parseChunkSizeArgument)(t,n?.CHUNK_SIZE),(0,NT.parseLabelsArgument)(t,n?.LABELS),(0,NT.parseIgnoreArgument)(t,n?.IGNORE)}OT.parseIncrByArguments=srt;OT.default={IS_READ_ONLY:!1,parseCommand(...t){t[0].push("TS.INCRBY"),srt(...t)},transformReply:void 0}});var irt=E(Df=>{"use strict";var bpr=Df&&Df.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Epr=Df&&Df.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),_pr=Df&&Df.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&bpr(e,t,r);return Epr(e,t),e};Object.defineProperty(Df,"__esModule",{value:!0});var tie=_pr(eie());Df.default={IS_READ_ONLY:tie.default.IS_READ_ONLY,parseCommand(...t){t[0].push("TS.DECRBY"),(0,tie.parseIncrByArguments)(...t)},transformReply:tie.default.transformReply}});var ort=E(rie=>{"use strict";Object.defineProperty(rie,"__esModule",{value:!0});var art=ii();rie.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("TS.DEL"),t.pushKey(e),t.push((0,art.transformTimestampArgument)(r),(0,art.transformTimestampArgument)(n))},transformReply:void 0}});var crt=E(nie=>{"use strict";Object.defineProperty(nie,"__esModule",{value:!0});nie.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("TS.DELETERULE"),t.pushKeys([e,r])},transformReply:void 0}});var urt=E(sie=>{"use strict";Object.defineProperty(sie,"__esModule",{value:!0});sie.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("TS.GET"),t.pushKey(e),r?.LATEST&&t.push("LATEST")},transformReply:{2(t){return t.length===0?null:{timestamp:t[0],value:Number(t[1])}},3(t){return t.length===0?null:{timestamp:t[0],value:t[1]}}}}});var aie=E(iie=>{"use strict";Object.defineProperty(iie,"__esModule",{value:!0});var Spr=Ie();iie.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("TS.INFO"),t.pushKey(e)},transformReply:{2:(t,e,r)=>{let n={};for(let s=0;s({name:a,value:o}));break;case"rules":n[i]=t[s+1].map(([a,o,c])=>({key:a,timeBucket:o,aggregationType:c}));break;case"ignoreMaxValDiff":n[i]=Spr.transformDoubleReply[2](t[27],void 0,r);break}}return n},3:void 0},unstableResp3:!0}});var lrt=E(PT=>{"use strict";var vpr=PT&&PT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(PT,"__esModule",{value:!0});var oie=vpr(aie());PT.default={IS_READ_ONLY:oie.default.IS_READ_ONLY,parseCommand(t,e){oie.default.parseCommand(t,e),t.push("DEBUG")},transformReply:{2:(t,e,r)=>{let n=oie.default.transformReply[2](t,e,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 drt=E(cie=>{"use strict";Object.defineProperty(cie,"__esModule",{value:!0});var Cpr=ii();cie.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("TS.MADD");for(let{key:r,timestamp:n,value:s}of e)t.pushKey(r),t.push((0,Cpr.transformTimestampArgument)(n),s.toString())},transformReply:void 0}});var ql=E(bg=>{"use strict";Object.defineProperty(bg,"__esModule",{value:!0});bg.parseFilterArgument=bg.parseLatestArgument=void 0;var $B=ii();function frt(t,e){e&&t.push("LATEST")}bg.parseLatestArgument=frt;function prt(t,e){t.push("FILTER"),t.pushVariadic(e)}bg.parseFilterArgument=prt;bg.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("TS.MGET"),frt(t,r?.LATEST),prt(t,e)},transformReply:{2(t,e,r){return(0,$B.resp2MapToValue)(t,([,,n])=>({sample:$B.transformSampleReply[2](n)}),r)},3(t){return(0,$B.resp3MapToValue)(t,([,e])=>({sample:$B.transformSampleReply[3](e)}))}}}});var uie=E(kT=>{"use strict";Object.defineProperty(kT,"__esModule",{value:!0});kT.createTransformMGetLabelsReply=void 0;var mrt=ql(),DT=ii();function hrt(){return{2(t,e,r){return(0,DT.resp2MapToValue)(t,([,n,s])=>({labels:(0,DT.transformRESP2Labels)(n),sample:DT.transformSampleReply[2](s)}),r)},3(t){return(0,DT.resp3MapToValue)(t,([e,r])=>({labels:e,sample:DT.transformSampleReply[3](r)}))}}}kT.createTransformMGetLabelsReply=hrt;kT.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("TS.MGET"),(0,mrt.parseLatestArgument)(t,r?.LATEST),t.push("WITHLABELS"),(0,mrt.parseFilterArgument)(t,e)},transformReply:hrt()}});var Art=E(lie=>{"use strict";Object.defineProperty(lie,"__esModule",{value:!0});var grt=ql(),Ipr=ii(),Tpr=uie();lie.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("TS.MGET"),(0,grt.parseLatestArgument)(t,n?.LATEST),(0,Ipr.parseSelectedLabelsArguments)(t,r),(0,grt.parseFilterArgument)(t,e)},transformReply:(0,Tpr.createTransformMGetLabelsReply)()}});var jl=E(kf=>{"use strict";Object.defineProperty(kf,"__esModule",{value:!0});kf.transformRangeArguments=kf.parseRangeArguments=kf.TIME_SERIES_BUCKET_TIMESTAMP=void 0;var Eg=ii();kf.TIME_SERIES_BUCKET_TIMESTAMP={LOW:"-",MIDDLE:"~",END:"+"};function yrt(t,e,r,n){if(t.push((0,Eg.transformTimestampArgument)(e),(0,Eg.transformTimestampArgument)(r)),n?.LATEST&&t.push("LATEST"),n?.FILTER_BY_TS){t.push("FILTER_BY_TS");for(let s of n.FILTER_BY_TS)t.push((0,Eg.transformTimestampArgument)(s))}n?.FILTER_BY_VALUE&&t.push("FILTER_BY_VALUE",n.FILTER_BY_VALUE.min.toString(),n.FILTER_BY_VALUE.max.toString()),n?.COUNT!==void 0&&t.push("COUNT",n.COUNT.toString()),n?.AGGREGATION&&(n?.ALIGN!==void 0&&t.push("ALIGN",(0,Eg.transformTimestampArgument)(n.ALIGN)),t.push("AGGREGATION",n.AGGREGATION.type,(0,Eg.transformTimestampArgument)(n.AGGREGATION.timeBucket)),n.AGGREGATION.BUCKETTIMESTAMP&&t.push("BUCKETTIMESTAMP",n.AGGREGATION.BUCKETTIMESTAMP),n.AGGREGATION.EMPTY&&t.push("EMPTY"))}kf.parseRangeArguments=yrt;function xrt(t,e,r,n,s){t.pushKey(e),yrt(t,r,n,s)}kf.transformRangeArguments=xrt;kf.default={IS_READ_ONLY:!0,parseCommand(...t){t[0].push("TS.RANGE"),xrt(...t)},transformReply:{2(t){return Eg.transformSamplesReply[2](t)},3(t){return Eg.transformSamplesReply[3](t)}}}});var Kb=E(Cu=>{"use strict";Object.defineProperty(Cu,"__esModule",{value:!0});Cu.extractResp3MRangeSources=Cu.createTransformMRangeGroupByArguments=Cu.parseGroupByArguments=Cu.TIME_SERIES_REDUCERS=void 0;var FB=ii(),wpr=jl(),Rpr=ql();Cu.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 brt(t,e){t.push("GROUPBY",e.label,"REDUCE",e.REDUCE)}Cu.parseGroupByArguments=brt;function Ert(t){return(e,r,n,s,i,a)=>{e.push(t),(0,wpr.parseRangeArguments)(e,r,n,a),(0,Rpr.parseFilterArgument)(e,s),brt(e,i)}}Cu.createTransformMRangeGroupByArguments=Ert;function _rt(t){let e=t;return e instanceof Map?e.get("sources"):e instanceof Array?e[1]:e.sources}Cu.extractResp3MRangeSources=_rt;Cu.default={IS_READ_ONLY:!0,parseCommand:Ert("TS.MRANGE"),transformReply:{2(t,e,r){return(0,FB.resp2MapToValue)(t,([n,s,i])=>({samples:FB.transformSamplesReply[2](i)}),r)},3(t){return(0,FB.resp3MapToValue)(t,([e,r,n,s])=>({sources:_rt(n),samples:FB.transformSamplesReply[3](s)}))}}}});var UB=E(LT=>{"use strict";Object.defineProperty(LT,"__esModule",{value:!0});LT.createTransformMRangeSelectedLabelsArguments=void 0;var Yb=ii(),Npr=jl(),Opr=ql();function Srt(t){return(e,r,n,s,i,a)=>{e.push(t),(0,Npr.parseRangeArguments)(e,r,n,a),(0,Yb.parseSelectedLabelsArguments)(e,s),(0,Opr.parseFilterArgument)(e,i)}}LT.createTransformMRangeSelectedLabelsArguments=Srt;LT.default={IS_READ_ONLY:!0,parseCommand:Srt("TS.MRANGE"),transformReply:{2(t,e,r){return(0,Yb.resp2MapToValue)(t,([n,s,i])=>({labels:(0,Yb.transformRESP2Labels)(s,r),samples:Yb.transformSamplesReply[2](i)}),r)},3(t){return(0,Yb.resp3MapToValue)(t,([e,r,n])=>({labels:r,samples:Yb.transformSamplesReply[3](n)}))}}}});var fie=E(_g=>{"use strict";var Ppr=_g&&_g.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(_g,"__esModule",{value:!0});_g.createMRangeSelectedLabelsGroupByTransformArguments=void 0;var die=ii(),Dpr=jl(),vrt=Kb(),kpr=ql(),Lpr=Ppr(UB());function Crt(t){return(e,r,n,s,i,a,o)=>{e.push(t),(0,Dpr.parseRangeArguments)(e,r,n,o),(0,die.parseSelectedLabelsArguments)(e,s),(0,kpr.parseFilterArgument)(e,i),(0,vrt.parseGroupByArguments)(e,a)}}_g.createMRangeSelectedLabelsGroupByTransformArguments=Crt;_g.default={IS_READ_ONLY:!0,parseCommand:Crt("TS.MRANGE"),transformReply:{2:Lpr.default.transformReply[2],3(t){return(0,die.resp3MapToValue)(t,([e,r,n,s])=>({labels:e,sources:(0,vrt.extractResp3MRangeSources)(n),samples:die.transformSamplesReply[3](s)}))}}}});var pie=E(MT=>{"use strict";Object.defineProperty(MT,"__esModule",{value:!0});MT.createMRangeWithLabelsGroupByTransformArguments=void 0;var BT=ii(),Bpr=jl(),Irt=Kb(),Mpr=ql();function Trt(t){return(e,r,n,s,i,a)=>{e.push(t),(0,Bpr.parseRangeArguments)(e,r,n,a),e.push("WITHLABELS"),(0,Mpr.parseFilterArgument)(e,s),(0,Irt.parseGroupByArguments)(e,i)}}MT.createMRangeWithLabelsGroupByTransformArguments=Trt;MT.default={IS_READ_ONLY:!0,parseCommand:Trt("TS.MRANGE"),transformReply:{2(t,e,r){return(0,BT.resp2MapToValue)(t,([n,s,i])=>{let a=(0,BT.transformRESP2LabelsWithSources)(s);return{labels:a.labels,sources:a.sources,samples:BT.transformSamplesReply[2](i)}},r)},3(t){return(0,BT.resp3MapToValue)(t,([e,r,n,s])=>({labels:e,sources:(0,Irt.extractResp3MRangeSources)(n),samples:BT.transformSamplesReply[3](s)}))}}}});var mie=E(WT=>{"use strict";Object.defineProperty(WT,"__esModule",{value:!0});WT.createTransformMRangeWithLabelsArguments=void 0;var qB=ii(),Wpr=jl(),$pr=ql();function wrt(t){return(e,r,n,s,i)=>{e.push(t),(0,Wpr.parseRangeArguments)(e,r,n,i),e.push("WITHLABELS"),(0,$pr.parseFilterArgument)(e,s)}}WT.createTransformMRangeWithLabelsArguments=wrt;WT.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand:wrt("TS.MRANGE"),transformReply:{2(t,e,r){return(0,qB.resp2MapToValue)(t,([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:qB.transformSamplesReply[2](i)}},r)},3(t){return(0,qB.resp3MapToValue)(t,([e,r,n])=>({labels:e,samples:qB.transformSamplesReply[3](n)}))}}}});var hie=E($T=>{"use strict";Object.defineProperty($T,"__esModule",{value:!0});$T.createTransformMRangeArguments=void 0;var jB=ii(),Fpr=jl(),Upr=ql();function Rrt(t){return(e,r,n,s,i)=>{e.push(t),(0,Fpr.parseRangeArguments)(e,r,n,i),(0,Upr.parseFilterArgument)(e,s)}}$T.createTransformMRangeArguments=Rrt;$T.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand:Rrt("TS.MRANGE"),transformReply:{2(t,e,r){return(0,jB.resp2MapToValue)(t,([n,s,i])=>jB.transformSamplesReply[2](i),r)},3(t){return(0,jB.resp3MapToValue)(t,([e,r,n])=>jB.transformSamplesReply[3](n))}}}});var Nrt=E(Lf=>{"use strict";var qpr=Lf&&Lf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),jpr=Lf&&Lf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Hpr=Lf&&Lf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&qpr(e,t,r);return jpr(e,t),e};Object.defineProperty(Lf,"__esModule",{value:!0});var gie=Hpr(Kb());Lf.default={IS_READ_ONLY:gie.default.IS_READ_ONLY,parseCommand:(0,gie.createTransformMRangeGroupByArguments)("TS.MREVRANGE"),transformReply:gie.default.transformReply}});var Ort=E(Bf=>{"use strict";var Qpr=Bf&&Bf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Gpr=Bf&&Bf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Vpr=Bf&&Bf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Qpr(e,t,r);return Gpr(e,t),e};Object.defineProperty(Bf,"__esModule",{value:!0});var Aie=Vpr(fie());Bf.default={IS_READ_ONLY:Aie.default.IS_READ_ONLY,parseCommand:(0,Aie.createMRangeSelectedLabelsGroupByTransformArguments)("TS.MREVRANGE"),transformReply:Aie.default.transformReply}});var Prt=E(Mf=>{"use strict";var zpr=Mf&&Mf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Kpr=Mf&&Mf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Ypr=Mf&&Mf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&zpr(e,t,r);return Kpr(e,t),e};Object.defineProperty(Mf,"__esModule",{value:!0});var yie=Ypr(UB());Mf.default={IS_READ_ONLY:yie.default.IS_READ_ONLY,parseCommand:(0,yie.createTransformMRangeSelectedLabelsArguments)("TS.MREVRANGE"),transformReply:yie.default.transformReply}});var Drt=E(Wf=>{"use strict";var Jpr=Wf&&Wf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Xpr=Wf&&Wf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Zpr=Wf&&Wf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Jpr(e,t,r);return Xpr(e,t),e};Object.defineProperty(Wf,"__esModule",{value:!0});var xie=Zpr(pie());Wf.default={IS_READ_ONLY:xie.default.IS_READ_ONLY,parseCommand:(0,xie.createMRangeWithLabelsGroupByTransformArguments)("TS.MREVRANGE"),transformReply:xie.default.transformReply}});var krt=E($f=>{"use strict";var e0r=$f&&$f.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),t0r=$f&&$f.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),r0r=$f&&$f.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&e0r(e,t,r);return t0r(e,t),e};Object.defineProperty($f,"__esModule",{value:!0});var HB=r0r(mie());$f.default={NOT_KEYED_COMMAND:HB.default.NOT_KEYED_COMMAND,IS_READ_ONLY:HB.default.IS_READ_ONLY,parseCommand:(0,HB.createTransformMRangeWithLabelsArguments)("TS.MREVRANGE"),transformReply:HB.default.transformReply}});var Lrt=E(Ff=>{"use strict";var n0r=Ff&&Ff.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),s0r=Ff&&Ff.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),i0r=Ff&&Ff.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&n0r(e,t,r);return s0r(e,t),e};Object.defineProperty(Ff,"__esModule",{value:!0});var QB=i0r(hie());Ff.default={NOT_KEYED_COMMAND:QB.default.NOT_KEYED_COMMAND,IS_READ_ONLY:QB.default.IS_READ_ONLY,parseCommand:(0,QB.createTransformMRangeArguments)("TS.MREVRANGE"),transformReply:QB.default.transformReply}});var Brt=E(bie=>{"use strict";Object.defineProperty(bie,"__esModule",{value:!0});bie.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("TS.QUERYINDEX"),t.pushVariadic(e)},transformReply:{2:void 0,3:void 0}}});var Mrt=E(Uf=>{"use strict";var a0r=Uf&&Uf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),o0r=Uf&&Uf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),c0r=Uf&&Uf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&a0r(e,t,r);return o0r(e,t),e};Object.defineProperty(Uf,"__esModule",{value:!0});var Eie=c0r(jl());Uf.default={IS_READ_ONLY:Eie.default.IS_READ_ONLY,parseCommand(...t){t[0].push("TS.REVRANGE"),(0,Eie.transformRangeArguments)(...t)},transformReply:Eie.default.transformReply}});var mnt=E(Hl=>{"use strict";var u0r=Hl&&Hl.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),l0r=Hl&&Hl.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&u0r(e,t,r)},Kr=Hl&&Hl.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Hl,"__esModule",{value:!0});var Wrt=Kr(trt()),$rt=Kr(rrt()),Frt=Kr(nrt()),Urt=Kr(Zse()),qrt=Kr(irt()),jrt=Kr(ort()),Hrt=Kr(crt()),Qrt=Kr(urt()),Grt=Kr(eie()),Vrt=Kr(lrt()),zrt=Kr(aie()),Krt=Kr(drt()),Yrt=Kr(Art()),Jrt=Kr(uie()),Xrt=Kr(ql()),Zrt=Kr(Kb()),ent=Kr(fie()),tnt=Kr(UB()),rnt=Kr(pie()),nnt=Kr(mie()),snt=Kr(hie()),int=Kr(Nrt()),ant=Kr(Ort()),ont=Kr(Prt()),cnt=Kr(Drt()),unt=Kr(krt()),lnt=Kr(Lrt()),dnt=Kr(Brt()),fnt=Kr(jl()),pnt=Kr(Mrt());l0r(ii(),Hl);Hl.default={ADD:Wrt.default,add:Wrt.default,ALTER:$rt.default,alter:$rt.default,CREATE:Frt.default,create:Frt.default,CREATERULE:Urt.default,createRule:Urt.default,DECRBY:qrt.default,decrBy:qrt.default,DEL:jrt.default,del:jrt.default,DELETERULE:Hrt.default,deleteRule:Hrt.default,GET:Qrt.default,get:Qrt.default,INCRBY:Grt.default,incrBy:Grt.default,INFO_DEBUG:Vrt.default,infoDebug:Vrt.default,INFO:zrt.default,info:zrt.default,MADD:Krt.default,mAdd:Krt.default,MGET_SELECTED_LABELS:Yrt.default,mGetSelectedLabels:Yrt.default,MGET_WITHLABELS:Jrt.default,mGetWithLabels:Jrt.default,MGET:Xrt.default,mGet:Xrt.default,MRANGE_GROUPBY:Zrt.default,mRangeGroupBy:Zrt.default,MRANGE_SELECTED_LABELS_GROUPBY:ent.default,mRangeSelectedLabelsGroupBy:ent.default,MRANGE_SELECTED_LABELS:tnt.default,mRangeSelectedLabels:tnt.default,MRANGE_WITHLABELS_GROUPBY:rnt.default,mRangeWithLabelsGroupBy:rnt.default,MRANGE_WITHLABELS:nnt.default,mRangeWithLabels:nnt.default,MRANGE:snt.default,mRange:snt.default,MREVRANGE_GROUPBY:int.default,mRevRangeGroupBy:int.default,MREVRANGE_SELECTED_LABELS_GROUPBY:ant.default,mRevRangeSelectedLabelsGroupBy:ant.default,MREVRANGE_SELECTED_LABELS:ont.default,mRevRangeSelectedLabels:ont.default,MREVRANGE_WITHLABELS_GROUPBY:cnt.default,mRevRangeWithLabelsGroupBy:cnt.default,MREVRANGE_WITHLABELS:unt.default,mRevRangeWithLabels:unt.default,MREVRANGE:lnt.default,mRevRange:lnt.default,QUERYINDEX:dnt.default,queryIndex:dnt.default,RANGE:fnt.default,range:fnt.default,REVRANGE:pnt.default,revRange:pnt.default}});var Sie=E(Vi=>{"use strict";var d0r=Vi&&Vi.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Vi,"__esModule",{value:!0});Vi.TIME_SERIES_REDUCERS=Vi.TIME_SERIES_BUCKET_TIMESTAMP=Vi.TIME_SERIES_AGGREGATION_TYPE=Vi.TIME_SERIES_DUPLICATE_POLICIES=Vi.TIME_SERIES_ENCODING=Vi.default=void 0;var _ie=mnt();Object.defineProperty(Vi,"default",{enumerable:!0,get:function(){return d0r(_ie).default}});Object.defineProperty(Vi,"TIME_SERIES_ENCODING",{enumerable:!0,get:function(){return _ie.TIME_SERIES_ENCODING}});Object.defineProperty(Vi,"TIME_SERIES_DUPLICATE_POLICIES",{enumerable:!0,get:function(){return _ie.TIME_SERIES_DUPLICATE_POLICIES}});var f0r=Zse();Object.defineProperty(Vi,"TIME_SERIES_AGGREGATION_TYPE",{enumerable:!0,get:function(){return f0r.TIME_SERIES_AGGREGATION_TYPE}});var p0r=jl();Object.defineProperty(Vi,"TIME_SERIES_BUCKET_TIMESTAMP",{enumerable:!0,get:function(){return p0r.TIME_SERIES_BUCKET_TIMESTAMP}});var m0r=Kb();Object.defineProperty(Vi,"TIME_SERIES_REDUCERS",{enumerable:!0,get:function(){return m0r.TIME_SERIES_REDUCERS}})});var hnt=E(gs=>{"use strict";var h0r=gs&&gs.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),FT=gs&&gs.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&h0r(e,t,r)},GB=gs&&gs.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(gs,"__esModule",{value:!0});gs.createSentinel=gs.createCluster=gs.createClientPool=gs.createClient=void 0;var VB=cT(),g0r=GB(Hne()),A0r=GB(gse()),y0r=GB(zse()),x0r=GB(Sie());FT(cT(),gs);FT(Hne(),gs);FT(gse(),gs);FT(zse(),gs);FT(Sie(),gs);var zB={...g0r.default,json:A0r.default,ft:y0r.default,ts:x0r.default};function b0r(t){return(0,VB.createClient)({...t,modules:{...zB,...t?.modules}})}gs.createClient=b0r;function E0r(t,e){return(0,VB.createClientPool)({...t,modules:{...zB,...t?.modules}},e)}gs.createClientPool=E0r;function _0r(t){return(0,VB.createCluster)({...t,modules:{...zB,...t?.modules}})}gs.createCluster=_0r;function S0r(t){return(0,VB.createSentinel)({...t,modules:{...zB,...t?.modules}})}gs.createSentinel=S0r});var JB={};is(JB,{closeLocalRedisConnection:()=>T0r,getLocalRedisCaches:()=>C0r,getLocalRedisKey:()=>gnt,judgeLocalRedisValid:()=>I0r,setLocalRedisKey:()=>KB,setLocalRedisKeyWithExpiry:()=>v0r,updateLocalRedisCaches:()=>YB});async function Jb(){if(rs)return rs;let t=O.localRedisUrl;try{_("info","[Utils] [Local-Redis] \u6B63\u5728\u8FDE\u63A5\u672C\u5730 Redis");let{createClient:e}=await Promise.resolve().then(()=>Re(hnt(),1));return rs=e({url:t,socket:{reconnectStrategy:r=>r>=0?new Error("\u5DF2\u8FBE\u5230\u6700\u5927\u91CD\u8BD5\u6B21\u6570\uFF0C\u505C\u6B62\u91CD\u8FDE"):1e3}}),rs.on("error",r=>{_("error","[Utils] [Local-Redis] \u8FDE\u63A5\u9519\u8BEF"),O.localRedisValid=!1}),rs.on("connect",()=>{_("info","[Utils] [Local-Redis] \u8FDE\u63A5\u6210\u529F")}),await rs.connect(),O.localRedisValid=!0,_("info","[Utils] [Local-Redis] Redis \u5BA2\u6237\u7AEF\u521D\u59CB\u5316\u5B8C\u6210"),rs}catch(e){return _("error","[Utils] [Local-Redis] \u521D\u59CB\u5316\u5931\u8D25:",e.message),O.localRedisValid=!1,null}}async function Xb(){if(!rs)return!1;try{return await rs.ping()==="PONG"}catch(t){return _("error","[Utils] [Local-Redis] \u8FDE\u63A5\u68C0\u67E5\u5931\u8D25:",t.message),O.localRedisValid=!1,!1}}async function gnt(t){try{if(await Xb()||await Jb(),!rs)throw new Error("\u672C\u5730 Redis \u5BA2\u6237\u7AEF\u672A\u521D\u59CB\u5316");return await rs.get(t)}catch(e){return _("error","[Utils] [Local-Redis] GET \u8BF7\u6C42\u5931\u8D25:",e.message),null}}async function KB(t,e){let r=fb(t,e),n=an(r);if(O.lastHashes[t]===n)return _("info",`[Utils] [Local-Redis] \u952E ${t} \u65E0\u53D8\u5316\uFF0C\u8DF3\u8FC7 SET \u8BF7\u6C42`),{result:"OK"};try{if(await Xb()||await Jb(),!rs)throw new Error("\u672C\u5730 Redis \u5BA2\u6237\u7AEF\u672A\u521D\u59CB\u5316");let s=await rs.set(t,r);return O.lastHashes[t]=n,_("info",`[Utils] [Local-Redis] \u952E ${t} \u66F4\u65B0\u6210\u529F`),{result:s}}catch(s){return _("error","[Utils] [Local-Redis] SET \u8BF7\u6C42\u5931\u8D25:",s.message),{result:"ERROR"}}}async function v0r(t,e,r){let n=fb(t,e),s=an(n);if(O.lastHashes[t]===s)return _("info",`[Utils] [Local-Redis] \u952E ${t} \u65E0\u53D8\u5316\uFF0C\u8DF3\u8FC7 SETEX \u8BF7\u6C42`),{result:"OK"};try{if(await Xb()||await Jb(),!rs)throw new Error("\u672C\u5730 Redis \u5BA2\u6237\u7AEF\u672A\u521D\u59CB\u5316");let i=await rs.setEx(t,r,n);return O.lastHashes[t]=s,_("info",`[Utils] [Local-Redis] \u952E ${t} \u66F4\u65B0\u6210\u529F\uFF08\u5E26\u8FC7\u671F\u65F6\u95F4 ${r}s\uFF09`),{result:i}}catch(i){return _("error","[Utils] [Local-Redis] SETEX \u8BF7\u6C42\u5931\u8D25:",i.message),{result:"ERROR"}}}async function C0r(){if(!O.localCacheInitialized)try{if(_("info","[Utils] [Local-Redis] getLocalRedisCaches start."),await Xb()||await Jb(),!rs)throw new Error("\u672C\u5730 Redis \u5BA2\u6237\u7AEF\u672A\u521D\u59CB\u5316");let t=["animes","episodeIds","episodeNum","reqRecords","lastSelectMap","todayReqNum"],e=await Promise.all(t.map(n=>gnt(n)));O.animes=e[0]?JSON.parse(e[0]):O.animes,O.episodeIds=e[1]?JSON.parse(e[1]):O.episodeIds,O.episodeNum=e[2]?JSON.parse(e[2]):O.episodeNum,O.reqRecords=e[3]?JSON.parse(e[3]):O.reqRecords;let r=e[4]?JSON.parse(e[4]):null;r&&typeof r=="object"&&(O.lastSelectMap=new Map(Object.entries(r)),_("info",`[Utils] [Local-Redis] Restored lastSelectMap from Local Redis with ${O.lastSelectMap.size} entries`)),O.todayReqNum=e[5]?parseInt(e[5],10):O.todayReqNum,O.lastHashes.animes=an(JSON.stringify(O.animes)),O.lastHashes.episodeIds=an(JSON.stringify(O.episodeIds)),O.lastHashes.episodeNum=an(JSON.stringify(O.episodeNum)),O.lastHashes.reqRecords=an(JSON.stringify(O.reqRecords)),O.lastHashes.lastSelectMap=an(JSON.stringify(Object.fromEntries(O.lastSelectMap))),O.lastHashes.todayReqNum=an(JSON.stringify(O.todayReqNum)),O.localCacheInitialized=!0,_("info","[Utils] [Local-Redis] getLocalRedisCaches completed successfully.")}catch(t){_("error",`[Utils] [Local-Redis] getLocalRedisCaches failed: ${t.message}`,t.stack),O.localCacheInitialized=!0}}async function YB(){try{if(_("info","[Utils] [Local-Redis] updateLocalRedisCaches start."),await Xb()||await Jb(),!rs)throw new Error("\u672C\u5730 Redis \u5BA2\u6237\u7AEF\u672A\u521D\u59CB\u5316");let t=[],e=[{key:"animes",value:O.animes},{key:"episodeIds",value:O.episodeIds},{key:"episodeNum",value:O.episodeNum},{key:"reqRecords",value:O.reqRecords},{key:"lastSelectMap",value:O.lastSelectMap},{key:"todayReqNum",value:O.todayReqNum}];for(let{key:r,value:n}of e){let s=JSON.stringify(r==="lastSelectMap"?Object.fromEntries(n):n),i=an(s);i!==O.lastHashes[r]&&t.push({key:r,value:n,hash:i})}if(t.length>0){_("info",`[Utils] [Local-Redis] Updating ${t.length} changed keys: ${t.map(a=>a.key).join(", ")}`);let r=t.map(async({key:a,value:o})=>KB(a,o)),n=await Promise.all(r),s=0,i=0;n.forEach((a,o)=>{a&&a.result==="OK"?s++:(i++,_("warn",`[Utils] [Local-Redis] Failed to update Local Redis key: ${t[o]?.key}, result: ${JSON.stringify(a)}`))}),i===0?(t.forEach(({key:a,hash:o})=>{O.lastHashes[a]=o}),_("info",`[Utils] [Local-Redis] Local Redis update completed successfully: ${s} keys updated`)):_("warn",`[Utils] [Local-Redis] Local Redis update partially failed: ${s} succeeded, ${i} failed`)}else _("info","[Utils] [Local-Redis] No changes detected, skipping Local Redis update.")}catch(t){_("error",`[Utils] [Local-Redis] updateLocalRedisCaches failed: ${t.message}`,t.stack),_("error",`[Utils] [Local-Redis] Error details - Name: ${t.name}, Cause: ${t.cause?t.cause.message:"N/A"}`)}}async function I0r(t){if(!O.localRedisValid&&O.localRedisUrl&&t!=="/favicon.ico"&&t!=="/robots.txt")try{await Xb()||await Jb(),rs&&await rs.ping()==="PONG"&&(O.localRedisValid=!0)}catch(e){_("error","[Utils] [Local-Redis] \u8FDE\u63A5\u68C0\u67E5\u5931\u8D25:",e.message),O.localRedisValid=!1}}async function T0r(){if(rs)try{await rs.quit(),rs=null,O.localRedisValid=!1,_("info","[Utils] [Local-Redis] \u8FDE\u63A5\u5DF2\u5173\u95ED")}catch(t){_("error","[Utils] [Local-Redis] \u5173\u95ED\u8FDE\u63A5\u5931\u8D25:",t.message)}}var rs,UT=dr(()=>{Pt();St();Is();rs=null});var Lo,iE=dr(()=>{Pt();St();Lo=class{constructor(){}updateLocalEnv(e,r){return typeof O.env<"u"?O.env[e]=r:typeof process<"u"&&(process.env[e]=r),O.reInit(),_("info",`[system] [Server] \u2713 Environment variable updated successfully: ${e}`),!0}delLocalEnv(e){return typeof O.env<"u"&&O.env[e]?delete O.env[e]:typeof process<"u"&&process.env?.[e]&&delete process.env[e],O.reInit(),_("info",`[system] [Server] \u2713 Environment variable deleted successfully: ${e}`),!0}getAllEnv(){let e=O.originalEnvVars,r=O.envVarConfig,n={};for(let[s,i]of Object.entries(e)){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(e){return this.getAllEnv()[e]}async setEnv(e,r){throw new Error("Method 'setEnv' must be implemented")}async addEnv(e,r){throw new Error("Method 'addEnv' must be implemented")}async delEnv(e){throw new Error("Method 'delEnv' must be implemented")}async checkParams(e,r,n){throw new Error("Method 'checkParams' must be implemented")}async deploy(e,r,n){throw new Error("Method 'deploy' must be implemented")}}});var Kst={};is(Kst,{CloudflareHandler:()=>Hie});var Hie,Yst=dr(()=>{iE();Pt();St();ar();Hie=class extends Lo{API_URL="https://api.cloudflare.com";async _getAllEnvs(e,r,n){let s=`${this.API_URL}/client/v4/accounts/${e}/workers/scripts/${r}/settings`,i={headers:{Authorization:`Bearer ${n}`}},a=await ge(s,i);return a&&a?.data&&a?.data?.result&&a?.data?.result?.bindings?a?.data?.result?.bindings:null}_setEnv(e,r,n){let s=e.findIndex(i=>i.name===r);return n==null?s!==-1&&e.splice(s,1):s!==-1?e[s].text=n:e.push({name:r,text:n,type:"plain_text"}),e}async setEnv(e,r){try{let n=await this._getAllEnvs(O.deployPlatformAccount,O.deployPlatformProject,O.deployPlatformToken);if(n===null){_("error","[system] [Server] \u2717 Failed to set environment variable: envs is null");return}let s=`${this.API_URL}/client/v4/accounts/${O.deployPlatformAccount}/workers/scripts/${O.deployPlatformProject}/settings`,i={headers:{Authorization:`Bearer ${O.deployPlatformToken}`}},a=new FormData,o={bindings:this._setEnv(n,e,r==null?null:r.toString())};return a.append("settings",new Blob([JSON.stringify(o)],{type:"application/json"}),"settings.json"),await RL(s,a,i),this.updateLocalEnv(e,r)}catch(n){_("error","[system] [Server] \u2717 Failed to set environment variable:",n.message)}}async addEnv(e,r){return await this.setEnv(e,r)}async delEnv(e){return await this.setEnv(e,null),this.delLocalEnv(e)}async checkParams(e,r,n){try{return await this._getAllEnvs(e,r,n),!0}catch(s){return _("error","[system] [Server] checkParams failed! accountId, projectId or token is not valid:",s.message),!1}}async deploy(){return _("info","[system] [Server] After modifying the environment variables on the cloudflare platform, it will be automatically deployed."),!0}}});var Jst={};is(Jst,{VercelHandler:()=>Qie});var Qie,Xst=dr(()=>{iE();Pt();St();ar();Qie=class extends Lo{API_URL="https://api.vercel.com";async _getAllEnvs(e,r){let n=`${this.API_URL}/v10/projects/${e}/env`,s={headers:{Authorization:`Bearer ${r}`}};return(await ge(n,s)).data.envs}async _getEevId(e){try{let n=(await this._getAllEnvs(O.deployPlatformProject,O.deployPlatformToken)).find(s=>s.key===e);return n||null}catch(r){_("error","[system] [Server] \u2717 Failed to _getEevId:",r.message)}}async setEnv(e,r){let n=await this._getEevId(e);if(!n){_("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/${O.deployPlatformProject}/env/${n.id}`,i={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}},a={key:e,value:r.toString(),target:n.target,type:n.type};return await RL(s,JSON.stringify(a),i),this.updateLocalEnv(e,r)}catch(s){_("error","[system] [Server] \u2717 Failed to set environment variable:",s.message)}}async addEnv(e,r){try{let n=`${this.API_URL}/v10/projects/${O.deployPlatformProject}/env`,s={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}},i={key:e,value:r.toString(),target:["production","preview","development"],type:"encrypted"};return await Vr(n,JSON.stringify(i),s),this.updateLocalEnv(e,r)}catch(n){_("error","[system] [Server] \u2717 Failed to add environment variable:",n.message)}}async delEnv(e){let r=await this._getEevId(e);if(!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/${O.deployPlatformProject}/env/${r.id}`,s={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}};return await lb(n,s),this.delLocalEnv(e)}catch(n){_("error","[system] [Server] \u2717 Failed to add environment variable:",n.message)}}async checkParams(e,r,n){try{return await this._getAllEnvs(r,n),!0}catch(s){return _("error","[system] [Server] checkParams failed! projectId or token is not valid:",s.message),!1}}async deploy(){try{let e=`${this.API_URL}/v6/deployments?projectId=${O.deployPlatformProject}&limit=1`,r={headers:{Authorization:`Bearer ${O.deployPlatformToken}`}},n=await ge(e,r),s;if(n?.data&&n?.data?.deployments&&n?.data?.deployments.length>0)s=n.data.deployments[0].uid;else return _("error","[system] [Server] \u2717 Failed to deploy:",JSON.stringify(n?.data)),!1;let i=`${this.API_URL}/v13/deployments`,a={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}},o={name:O.deployPlatformProject,deploymentId:s,target:"production"},c=await Vr(i,JSON.stringify(o),a);return c?.data?.id?!0:(_("error","[system] [Server] \u2717 Failed to deploy:",JSON.stringify(c?.data)),!1)}catch(e){return _("error","[system] [Server] \u2717 Failed to deploy:",e.message),!1}}}});var Zst={};is(Zst,{NetlifyHandler:()=>Gie});var Gie,eit=dr(()=>{iE();Pt();St();ar();Gie=class extends Lo{API_URL="https://api.netlify.com";async _getAllEnvs(e,r,n){let s=`${this.API_URL}/api/v1/accounts/${e}/env?site_id=${r}`,i={headers:{Authorization:`Bearer ${n}`}};return await ge(s,i)}async setEnv(e,r){try{let n=`${this.API_URL}/api/v1/accounts/${O.deployPlatformAccount}/env/${e}?site_id=${O.deployPlatformProject}`,s={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}},i={key:e,values:[{context:"all",value:r.toString()}]};return await v8e(n,JSON.stringify(i),s),this.updateLocalEnv(e,r)}catch(n){_("error","[system] [Server] \u2717 Failed to set environment variable:",n.message)}}async addEnv(e,r){try{let n=`${this.API_URL}/api/v1/accounts/${O.deployPlatformAccount}/env?site_id=${O.deployPlatformProject}`,s={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}};return await Vr(n,JSON.stringify([{key:e,values:[{context:"all",value:r}]}]),s),this.updateLocalEnv(e,r)}catch(n){_("error","[system] [Server] \u2717 Failed to add environment variable:",n.message)}}async delEnv(e){try{let r=`${this.API_URL}/api/v1/accounts/${O.deployPlatformAccount}/env/${e}?site_id=${O.deployPlatformProject}`,n={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}};return await lb(r,n),this.delLocalEnv(e)}catch(r){_("error","[system] [Server] \u2717 Failed to add environment variable:",r.message)}}async checkParams(e,r,n){try{return await this._getAllEnvs(e,r,n),!0}catch(s){return _("error","[system] [Server] checkParams failed! accountId, projectId or token is not valid:",s.message),!1}}async deploy(){try{let e=`${this.API_URL}/api/v1/sites/${O.deployPlatformProject}/builds`,r={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}},s=await Vr(e,JSON.stringify({}),r);return s?.data?.id?!0:(_("error","[system] [Server] \u2717 Failed to deploy:",JSON.stringify(s?.data)),!1)}catch(e){return _("error","[system] [Server] \u2717 Failed to deploy:",e.message),!1}}}});var tit={};is(tit,{EdgeoneHandler:()=>Vie});var Vie,rit=dr(()=>{iE();Pt();St();ar();Vie=class extends Lo{API_URL="https://pages-api.cloud.tencent.com/v1";async _httpPost(e,r){let n=`${this.API_URL}`,s={headers:{Authorization:`Bearer ${e}`,"Content-Type":"application/json"}};return await Vr(n,JSON.stringify(r),s)}async _getAllEnvs(e,r){let n={Action:"ModifyPagesProjectEnvs",ProjectId:e},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(e,r){try{let n={Action:"ModifyPagesProjectEnvs",ProjectId:O.deployPlatformProject,EnvVars:[{Key:e,Value:r.toString()}]};return await this._httpPost(O.deployPlatformToken,n),this.updateLocalEnv(e,r)}catch(n){_("error","[system] [Server] \u2717 Failed to set environment variable:",n.message)}}async addEnv(e,r){return await this.setEnv(e,r)}async delEnv(e){try{let r={Action:"DeletePagesProjectEnvs",ProjectId:O.deployPlatformProject,EnvVars:[e]};return await this._httpPost(O.deployPlatformToken,r),this.delLocalEnv(e)}catch(r){_("error","[system] [Server] \u2717 Failed to del environment variable:",r.message)}}async checkParams(e,r,n){try{return await this._getAllEnvs(r,n),!0}catch(s){return _("error","[system] [Server] checkParams failed! accountId, projectId or token is not valid:",s.message),!1}}async deploy(){try{let e={Action:"CreatePagesDeployment",ProjectId:O.deployPlatformProject,RepoBranch:"main",ViaMeta:"Github",Provider:"Github"},r=await this._httpPost(O.deployPlatformToken,e);return r?.data?.Code!==0?(_("error","[system] [Server] \u2717 Failed to deploy:",JSON.stringify(r?.data)),!1):!0}catch(e){return _("error","[system] [Server] \u2717 Failed to deploy:",e.message),!1}}}});var nit={};is(nit,{HuggingfaceHandler:()=>zie});var zie,sit=dr(()=>{iE();Pt();St();ar();zie=class extends Lo{API_URL="https://huggingface.co";get repoId(){return`${O.deployPlatformAccount}/${O.deployPlatformProject}`}_getOptions(e=O.deployPlatformToken){return{headers:{Authorization:`Bearer ${e}`,"Content-Type":"application/json"}}}_getVariablesUrl(e){return`${this.API_URL}/api/spaces/${e}/variables`}async _getAllEnvs(e,r,n){let s=`${e}/${r}`,i=this._getVariablesUrl(s);return(await ge(i,this._getOptions(n)))?.data}async setEnv(e,r){try{let n=this._getVariablesUrl(this.repoId),s={key:e,value:r.toString()};return await Vr(n,JSON.stringify(s),this._getOptions()),this.updateLocalEnv(e,r)}catch(n){_("error","[system] [Server] \u2717 Failed to set environment variable:",n.message)}}async addEnv(e,r){return await this.setEnv(e,r)}async delEnv(e){try{let r=this._getVariablesUrl(this.repoId);return await lb(r,{...this._getOptions(),body:JSON.stringify({key:e})}),this.delLocalEnv(e)}catch(r){_("error","[system] [Server] \u2717 Failed to del environment variable:",r.message)}}async checkParams(e,r,n){try{return await this._getAllEnvs(e,r,n),!0}catch(s){return _("error","[system] [Server] checkParams failed! accountId, projectId or token is not valid:",s.message),!1}}async deploy(){try{let e=`${this.API_URL}/api/spaces/${this.repoId}/restart`;return await Vr(e,void 0,this._getOptions()),!0}catch(e){return _("error","[system] [Server] \u2717 Failed to deploy:",e.message),!1}}}});var zlt=E(cA=>{"use strict";Object.defineProperty(cA,"__esModule",{value:!0});cA.removeTrailingChar=cA.merge=void 0;var GTr=(...t)=>{let e={};return t.forEach(function(r){var n;for(n in r)n in e&&e[n]===null?e[n]=r[n]:n in e&&Array.isArray(e[n])?e[n]=e[n].concat(r[n]):n in e&&typeof e[n]=="object"?e[n]=(0,cA.merge)(e[n],r[n]):e[n]=r[n]}),e};cA.merge=GTr;var VTr=(t,e)=>t.length>1&&t.endsWith(e)?t.substring(0,t.length-1):t;cA.removeTrailingChar=VTr});var DE=E(cm=>{"use strict";Object.defineProperty(cm,"__esModule",{value:!0});cm.DataError=cm.DatabaseError=cm.NestedError=void 0;var i2=class extends Error{inner;id;constructor(e,r,n){super(e),this.inner=n,this.id=r,this.name=this.constructor.name}toString(){let e=this.name+": "+this.message;return this.inner?e+`: -`+this.inner:e}};cm.NestedError=i2;var oue=class extends i2{};cm.DatabaseError=oue;var cue=class extends i2{};cm.DataError=cue});var pue=E(Sa=>{"use strict";Object.defineProperty(Sa,"__esModule",{value:!0});Sa.getArrayIndicies=Sa.validateArrayIndex=Sa.validateArrayIndicies=Sa.isInt=Sa.ArrayInfo=Sa.arrayRegex=void 0;var kM=DE(),zTr=()=>/^([\.0-9a-zA-Z_$\-][0-9a-zA-Z_\-$\.]*)\[((?!(\]|\[)).*|)\]$/gm;Sa.arrayRegex=zTr;var uue={},lue=class t{property;index=0;append=!1;indicies=[];constructor(e,r){this.property=e;let n=r[0]??0;if(this.append=n===""||r[r.length-1]==="",this.indicies=r,due(n))this.index=parseInt(n);else if(!this.append)throw new kM.DataError("Only numerical values accepted for array index",200)}static processArray(e){if(typeof e>"u")return null;if(uue[e])return uue[e];let n=(0,Sa.arrayRegex)().exec(e.trim());if(n!=null){let s=n[1],i="["+n[2].toString()+"]",a=fue(i);return Klt(a),uue[e]=new t(s,a)}return null}getIndex(e,r){if(this.append)return-1;let n=this.index;if(n==-1){let s=r?e:e[this.property];return s.length===0?0:s.length-1}return n}getData(e){if(this.append)throw new kM.DataError("Can't get data when appending",100);let{index:r,dataForProperty:n}=this.getArrayDataAndIndexFromProperty(e);return n[r]}setData(e,r){if(this.append){let n=e[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(e);n===-1?s.push(r):s[n]=r}}delete(e){if(this.append)throw new kM.DataError("Can't delete an appended data",10);let{index:r,dataForProperty:n}=this.getArrayDataAndIndexFromProperty(e);n.splice(r,1)}isValid(e){let{index:r,dataForProperty:n}=this.getArrayDataAndIndexFromProperty(e);return n.hasOwnProperty(r)}getArrayDataAndIndexFromProperty(e){let r=0,n=e instanceof Array?e:e[this.property]??e;if(this.indicies.length>0){r=+this.indicies[this.indicies.length-1];for(let s=0;s1}};Sa.ArrayInfo=lue;function due(t){return!isNaN(t)&&Number(t)==t&&!isNaN(parseInt(t,10))}Sa.isInt=due;function Klt(t){let e=t.filter(r=>r==="");if(e.length>1)throw Error("Only one append index is supported for nested arrays");if(e.length===1&&t[t.length-1]!=="")throw Error("Append index must be at the end of the nested array")}Sa.validateArrayIndicies=Klt;function Ylt(t){if(t.length!==0&&!due(t))throw new kM.DataError("Only numerical values accepted for array index",200)}Sa.validateArrayIndex=Ylt;function fue(t){if(t.length===0)return[];if(t.charAt(0)!=="[")throw new Error("Invalid array syntax detected");let e=t.substring(1,t.indexOf("]"));Ylt(e);let r=e.length+2;return[e,...fue(t.substring(r))]}Sa.getArrayIndicies=fue});var Zlt=E(LM=>{"use strict";Object.defineProperty(LM,"__esModule",{value:!0});LM.DBParentData=void 0;var Jlt=pue(),Xlt=DE(),mue=class{parent;data;db;dataPath;constructor(e,r,n,s){this.parent=s,this.data=e,this.db=r,this.dataPath=n}checkArray(e=!1){let r=Jlt.ArrayInfo.processArray(this.parent);if(r&&(!r.append||e)&&!r.isValid(this.data))throw new Xlt.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 e=this.checkArray();return e?e.getData(this.data):this.data[this.parent]}setData(e){if(this.parent===void 0){this.db.resetData(e);return}let r=Jlt.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 Xlt.DataError("DataPath: /"+this.dataPath+". "+r.property+" is not an array.",11);r.setData(this.data,e)}else this.data[this.parent]=e}delete(){if(this.parent===void 0){this.db.resetData({});return}let e=this.checkArray(!0);e?e.delete(this.data):delete this.data[this.parent]}};LM.DBParentData=mue});var tdt=E((f0n,edt)=>{edt.exports=function(){"use strict";function t(){this.readers=0,this.queue=[]}function e(i,a,o){var c;typeof i!="function"?(s.hasOwnProperty(i)||(s[i]=new t),c=s[i]):(o=a,a=i,c=n),o||(o={});var u=null;o.hasOwnProperty("scope")&&(u=o.scope);var l=function(){var p=!1;return function(){p||(p=!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 t),c=s[i]):(o=a,a=i,c=n),o||(o={});var u=null;o.hasOwnProperty("scope")&&(u=o.scope);var l=function(){var p=!1;return function(){p||(p=!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 t,s={};this.readLock=e,this.writeLock=r,this.async={readLock:function(i,a,o){typeof i!="function"?e(i,function(c){a.call(this,null,c)},o):(a=i,o=a,e(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 rdt=E(BM=>{"use strict";Object.defineProperty(BM,"__esModule",{value:!0});BM.TimeoutError=void 0;var KTr=DE(),hue=class extends KTr.NestedError{};BM.TimeoutError=hue});var idt=E(kE=>{"use strict";Object.defineProperty(kE,"__esModule",{value:!0});kE.writeLockAsync=kE.readLockAsync=void 0;var YTr=tdt(),ndt=rdt(),sdt=new YTr,JTr=(t,e=null)=>{let r={};return e!=null&&(r={timeout:e}),new Promise((n,s)=>{sdt.readLock(async i=>{try{let a=await t();n(a)}catch(a){s(a)}finally{i()}},{...r,timeoutCallback(){s(new ndt.TimeoutError("Timeout",100))}})})};kE.readLockAsync=JTr;var XTr=(t,e=null)=>{let r={};return e!=null&&(r={timeout:e}),new Promise((n,s)=>{sdt.writeLock(async i=>{try{let a=await t();n(a)}catch(a){s(a)}finally{i()}},{...r,timeoutCallback(){s(new ndt.TimeoutError("Timeout",100))}})})};kE.writeLockAsync=XTr});var Aue=E(MM=>{"use strict";Object.defineProperty(MM,"__esModule",{value:!0});MM.JsonAdapter=void 0;var gue=class{adapter;humanReadable;dateRegex=new RegExp("^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}","m");constructor(e,r=!1){this.adapter=e,this.humanReadable=r}replacer(e,r){return r}reviver(e,r){return typeof r=="string"&&this.dateRegex.exec(r)!=null?new Date(r):r}async readAsync(){let e=await this.adapter.readAsync();return e==null?(await this.writeAsync({}),{}):JSON.parse(e,this.reviver.bind(this))}writeAsync(e){let r="";return this.humanReadable?r=JSON.stringify(e,this.replacer.bind(this),4):r=JSON.stringify(e,this.replacer.bind(this)),this.adapter.writeAsync(r)}};MM.JsonAdapter=gue});var xue=E($M=>{"use strict";Object.defineProperty($M,"__esModule",{value:!0});$M.FileAdapter=void 0;var WM=require("fs/promises"),ZTr=require("path"),yue=class{filename;fsync;constructor(e,r){this.filename=e,this.fsync=r}async readAsync(){try{return await(0,WM.readFile)(this.filename,{encoding:"utf-8"})}catch(e){if(e.code==="ENOENT")return null;throw e}}async writeAsync(e){let r=null;try{r=await(0,WM.open)(this.filename,"w")}catch(n){if(n.code!=="ENOENT")throw n;let s=ZTr.dirname(this.filename);await(0,WM.mkdir)(s,{recursive:!0}),r=await(0,WM.open)(this.filename,"w")}try{await r.writeFile(e,{encoding:"utf-8"}),this.fsync&&await r.sync()}finally{await r.close()}}};$M.FileAdapter=yue});var adt=E(LE=>{"use strict";Object.defineProperty(LE,"__esModule",{value:!0});LE.ConfigWithAdapter=LE.Config=void 0;var ewr=require("path"),twr=Aue(),rwr=xue(),bue=class{adapter;filename;saveOnPush;separator;constructor(e,r=!0,n=!1,s="/",i=!1){this.filename=e,ewr.extname(e)===""&&(this.filename+=".json"),this.saveOnPush=r,this.separator=s,this.adapter=new twr.JsonAdapter(new rwr.FileAdapter(this.filename,i),n)}};LE.Config=bue;var Eue=class{adapter;saveOnPush;separator;constructor(e,r=!0,n="/"){this.adapter=e,this.saveOnPush=r,this.separator=n}};LE.ConfigWithAdapter=Eue});var ldt=E(Ji=>{"use strict";Object.defineProperty(Ji,"__esModule",{value:!0});Ji.JsonDB=Ji.FileAdapter=Ji.JsonAdapter=Ji.DataError=Ji.DatabaseError=Ji.ConfigWithAdapter=Ji.Config=void 0;var odt=zlt(),Yi=DE(),nwr=Zlt(),swr=pue(),_ue=idt(),cdt=adt();Object.defineProperty(Ji,"Config",{enumerable:!0,get:function(){return cdt.Config}});Object.defineProperty(Ji,"ConfigWithAdapter",{enumerable:!0,get:function(){return cdt.ConfigWithAdapter}});var udt=DE();Object.defineProperty(Ji,"DatabaseError",{enumerable:!0,get:function(){return udt.DatabaseError}});Object.defineProperty(Ji,"DataError",{enumerable:!0,get:function(){return udt.DataError}});var iwr=Aue();Object.defineProperty(Ji,"JsonAdapter",{enumerable:!0,get:function(){return iwr.JsonAdapter}});var awr=xue();Object.defineProperty(Ji,"FileAdapter",{enumerable:!0,get:function(){return awr.FileAdapter}});var Sue=class{loaded=!1;data={};config;constructor(e){this.config=e}processDataPath(e){if(e===void 0||!e.trim())throw new Yi.DataError("The Data Path can't be empty",6);if(e==this.config.separator)return[];e=(0,odt.removeTrailingChar)(e,this.config.separator);let r=e.split(this.config.separator);return r.shift(),r}async retrieveData(e,r=!1){await this.load();let n=this,s=(i,a)=>{let o=e[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 Yi.DataError(`Can't find dataPath: ${n.config.separator}${e.join(n.config.separator)}. Stopped at ${o}`,5)}let u=swr.ArrayInfo.processArray(o);if(u){if(o=u.property,c(!0),!Array.isArray(i))throw new Yi.DataError(`DataPath: ${n.config.separator}${e.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 Yi.DataError(`DataPath: ${n.config.separator}${e.join(n.config.separator)}. . Can't find index ${u.index} in array ${o}`,10)}else c();return e.length==++a?i:s(i,a)};return e.length===0?this.data:s(this.data,0)}async getParentData(e,r){let n=this.processDataPath(e),s=n.pop();return new nwr.DBParentData(await this.retrieveData(n,r),this,e,s)}getData(e){return(0,_ue.readLockAsync)(async()=>{let r=this.processDataPath(e);return this.retrieveData(r,!1)})}getObject(e){return this.getData(e)}async getObjectDefault(e,r){try{return await this.getData(e)}catch(n){if(!(n instanceof Yi.DataError)||n.id!=5)throw n;return r}}async exists(e){try{return await this.getData(e),!0}catch(r){if(r instanceof Yi.DataError)return!1;throw r}}async count(e){let r=await this.getData(e);if(!Array.isArray(r))throw new Yi.DataError(`DataPath: ${e} is not an array.`,11);let n=this.processDataPath(e);return(await this.retrieveData(n,!1)).length}async getIndex(e,r,n="id"){return(await this.getArrayData(e)).map(function(i){return i[n]}).indexOf(r)}async getIndexValue(e,r){return(await this.getArrayData(e)).indexOf(r)}async getArrayData(e){let r=await this.getData(e);if(!Array.isArray(r))throw new Yi.DataError(`DataPath: ${e} is not an array.`,11);let n=this.processDataPath(e);return this.retrieveData(n,!1)}async filter(e,r){let n=await this.getData(e);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 Yi.DataError("The entry at the path ("+e+") needs to be either an Object or an Array",12)}async find(e,r){let n=await this.getData(e);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 Yi.DataError("The entry at the path ("+e+") needs to be either an Object or an Array",12)}async push(e,r,n=!0){return(0,_ue.writeLockAsync)(async()=>{let s=await this.getParentData(e,!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 Yi.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 Yi.DataError("Can't merge an Array with an Object",4);i=(0,odt.merge)(s.getData(),r)}}s.setData(i),this.config.saveOnPush&&await this.save()})}async delete(e){await(0,_ue.writeLockAsync)(async()=>{(await this.getParentData(e,!0)).delete(),this.config.saveOnPush&&await this.save()})}resetData(e){this.data=e}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(e){throw new Yi.DatabaseError("Can't Load Database",1,e)}}async save(e){if(e=e||!1,!e&&!this.loaded)throw new Yi.DatabaseError("DataBase not loaded. Can't write",7);try{await this.config.adapter.writeAsync(this.data)}catch(r){throw new Yi.DatabaseError("Can't save the database",2,r)}}async fromPath(e,r="id"){let[,...n]=e.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 Yi.DataError(`DataPath: ${i.join("")}/${o} not found.`,13,c)}}return i.join("")}};Ji.JsonDB=Sue});var fOr={};is(fOr,{start:()=>lOr,stop:()=>dOr});module.exports=K0t(fOr);var fpt=Re(Zwe(),1);var OE=Re(require("node:fs/promises"),1),Ms=Re(require("node:path"),1),PM=require("node:crypto"),Llt=require("node:module"),nue=require("node:url");function NS(t,e){return function(){return t.apply(e,arguments)}}var{toString:rqt}=Object.prototype,{getPrototypeOf:bj}=Object,s3=(t=>e=>{let r=rqt.call(e);return t[r]||(t[r]=r.slice(8,-1).toLowerCase())})(Object.create(null)),ul=t=>(t=t.toLowerCase(),e=>s3(e)===t),i3=t=>e=>typeof e===t,{isArray:sx}=Array,OS=i3("undefined");function nqt(t){return t!==null&&!OS(t)&&t.constructor!==null&&!OS(t.constructor)&&uc(t.constructor.isBuffer)&&t.constructor.isBuffer(t)}var r2e=ul("ArrayBuffer");function sqt(t){let e;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?e=ArrayBuffer.isView(t):e=t&&t.buffer&&r2e(t.buffer),e}var iqt=i3("string"),uc=i3("function"),n2e=i3("number"),a3=t=>t!==null&&typeof t=="object",aqt=t=>t===!0||t===!1,n3=t=>{if(s3(t)!=="object")return!1;let e=bj(t);return(e===null||e===Object.prototype||Object.getPrototypeOf(e)===null)&&!(Symbol.toStringTag in t)&&!(Symbol.iterator in t)},oqt=ul("Date"),cqt=ul("File"),uqt=ul("Blob"),lqt=ul("FileList"),dqt=t=>a3(t)&&uc(t.pipe),fqt=t=>{let e;return t&&(typeof FormData=="function"&&t instanceof FormData||uc(t.append)&&((e=s3(t))==="formdata"||e==="object"&&uc(t.toString)&&t.toString()==="[object FormData]"))},pqt=ul("URLSearchParams"),mqt=t=>t.trim?t.trim():t.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function PS(t,e,{allOwnKeys:r=!1}={}){if(t===null||typeof t>"u")return;let n,s;if(typeof t!="object"&&(t=[t]),sx(t))for(n=0,s=t.length;n0;)if(s=r[n],e===s.toLowerCase())return s;return null}var i2e=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,a2e=t=>!OS(t)&&t!==i2e;function xj(){let{caseless:t}=a2e(this)&&this||{},e={},r=(n,s)=>{let i=t&&s2e(e,s)||s;n3(e[i])&&n3(n)?e[i]=xj(e[i],n):n3(n)?e[i]=xj({},n):sx(n)?e[i]=n.slice():e[i]=n};for(let n=0,s=arguments.length;n(PS(e,(s,i)=>{r&&uc(s)?t[i]=NS(s,r):t[i]=s},{allOwnKeys:n}),t),gqt=t=>(t.charCodeAt(0)===65279&&(t=t.slice(1)),t),Aqt=(t,e,r,n)=>{t.prototype=Object.create(e.prototype,n),t.prototype.constructor=t,Object.defineProperty(t,"super",{value:e.prototype}),r&&Object.assign(t.prototype,r)},yqt=(t,e,r,n)=>{let s,i,a,o={};if(e=e||{},t==null)return e;do{for(s=Object.getOwnPropertyNames(t),i=s.length;i-- >0;)a=s[i],(!n||n(a,t,e))&&!o[a]&&(e[a]=t[a],o[a]=!0);t=r!==!1&&bj(t)}while(t&&(!r||r(t,e))&&t!==Object.prototype);return e},xqt=(t,e,r)=>{t=String(t),(r===void 0||r>t.length)&&(r=t.length),r-=e.length;let n=t.indexOf(e,r);return n!==-1&&n===r},bqt=t=>{if(!t)return null;if(sx(t))return t;let e=t.length;if(!n2e(e))return null;let r=new Array(e);for(;e-- >0;)r[e]=t[e];return r},Eqt=(t=>e=>t&&e instanceof t)(typeof Uint8Array<"u"&&bj(Uint8Array)),_qt=(t,e)=>{let n=(t&&t[Symbol.iterator]).call(t),s;for(;(s=n.next())&&!s.done;){let i=s.value;e.call(t,i[0],i[1])}},Sqt=(t,e)=>{let r,n=[];for(;(r=t.exec(e))!==null;)n.push(r);return n},vqt=ul("HTMLFormElement"),Cqt=t=>t.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(r,n,s){return n.toUpperCase()+s}),e2e=(({hasOwnProperty:t})=>(e,r)=>t.call(e,r))(Object.prototype),Iqt=ul("RegExp"),o2e=(t,e)=>{let r=Object.getOwnPropertyDescriptors(t),n={};PS(r,(s,i)=>{let a;(a=e(s,i,t))!==!1&&(n[i]=a||s)}),Object.defineProperties(t,n)},Tqt=t=>{o2e(t,(e,r)=>{if(uc(t)&&["arguments","caller","callee"].indexOf(r)!==-1)return!1;let n=t[r];if(uc(n)){if(e.enumerable=!1,"writable"in e){e.writable=!1;return}e.set||(e.set=()=>{throw Error("Can not rewrite read-only method '"+r+"'")})}})},wqt=(t,e)=>{let r={},n=s=>{s.forEach(i=>{r[i]=!0})};return sx(t)?n(t):n(String(t).split(e)),r},Rqt=()=>{},Nqt=(t,e)=>(t=+t,Number.isFinite(t)?t:e),yj="abcdefghijklmnopqrstuvwxyz",t2e="0123456789",c2e={DIGIT:t2e,ALPHA:yj,ALPHA_DIGIT:yj+yj.toUpperCase()+t2e},Oqt=(t=16,e=c2e.ALPHA_DIGIT)=>{let r="",{length:n}=e;for(;t--;)r+=e[Math.random()*n|0];return r};function Pqt(t){return!!(t&&uc(t.append)&&t[Symbol.toStringTag]==="FormData"&&t[Symbol.iterator])}var Dqt=t=>{let e=new Array(10),r=(n,s)=>{if(a3(n)){if(e.indexOf(n)>=0)return;if(!("toJSON"in n)){e[s]=n;let i=sx(n)?[]:{};return PS(n,(a,o)=>{let c=r(a,s+1);!OS(c)&&(i[o]=c)}),e[s]=void 0,i}}return n};return r(t,0)},kqt=ul("AsyncFunction"),Lqt=t=>t&&(a3(t)||uc(t))&&uc(t.then)&&uc(t.catch),le={isArray:sx,isArrayBuffer:r2e,isBuffer:nqt,isFormData:fqt,isArrayBufferView:sqt,isString:iqt,isNumber:n2e,isBoolean:aqt,isObject:a3,isPlainObject:n3,isUndefined:OS,isDate:oqt,isFile:cqt,isBlob:uqt,isRegExp:Iqt,isFunction:uc,isStream:dqt,isURLSearchParams:pqt,isTypedArray:Eqt,isFileList:lqt,forEach:PS,merge:xj,extend:hqt,trim:mqt,stripBOM:gqt,inherits:Aqt,toFlatObject:yqt,kindOf:s3,kindOfTest:ul,endsWith:xqt,toArray:bqt,forEachEntry:_qt,matchAll:Sqt,isHTMLForm:vqt,hasOwnProperty:e2e,hasOwnProp:e2e,reduceDescriptors:o2e,freezeMethods:Tqt,toObjectSet:wqt,toCamelCase:Cqt,noop:Rqt,toFiniteNumber:Nqt,findKey:s2e,global:i2e,isContextDefined:a2e,ALPHABET:c2e,generateString:Oqt,isSpecCompliantForm:Pqt,toJSONObject:Dqt,isAsyncFn:kqt,isThenable:Lqt};function ix(t,e,r,n,s){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=t,this.name="AxiosError",e&&(this.code=e),r&&(this.config=r),n&&(this.request=n),s&&(this.response=s)}le.inherits(ix,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:le.toJSONObject(this.config),code:this.code,status:this.response&&this.response.status?this.response.status:null}}});var u2e=ix.prototype,l2e={};["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(t=>{l2e[t]={value:t}});Object.defineProperties(ix,l2e);Object.defineProperty(u2e,"isAxiosError",{value:!0});ix.from=(t,e,r,n,s,i)=>{let a=Object.create(u2e);return le.toFlatObject(t,a,function(c){return c!==Error.prototype},o=>o!=="isAxiosError"),ix.call(a,t.message,e,r,n,s),a.cause=t,a.name=t.name,i&&Object.assign(a,i),a};var Xe=ix;var fNe=Re(dNe(),1),g3=fNe.default;function Uj(t){return le.isPlainObject(t)||le.isArray(t)}function mNe(t){return le.endsWith(t,"[]")?t.slice(0,-2):t}function pNe(t,e,r){return t?t.concat(e).map(function(s,i){return s=mNe(s),!r&&i?"["+s+"]":s}).join(r?".":""):e}function bHt(t){return le.isArray(t)&&!t.some(Uj)}var EHt=le.toFlatObject(le,{},null,function(e){return/^is[A-Z]/.test(e)});function _Ht(t,e,r){if(!le.isObject(t))throw new TypeError("target must be an object");e=e||new(g3||FormData),r=le.toFlatObject(r,{metaTokens:!0,dots:!1,indexes:!1},!1,function(h,A){return!le.isUndefined(A[h])});let n=r.metaTokens,s=r.visitor||l,i=r.dots,a=r.indexes,c=(r.Blob||typeof Blob<"u"&&Blob)&&le.isSpecCompliantForm(e);if(!le.isFunction(s))throw new TypeError("visitor must be a function");function u(m){if(m===null)return"";if(le.isDate(m))return m.toISOString();if(!c&&le.isBlob(m))throw new Xe("Blob is not supported. Use a Buffer instead.");return le.isArrayBuffer(m)||le.isTypedArray(m)?c&&typeof Blob=="function"?new Blob([m]):Buffer.from(m):m}function l(m,h,A){let g=m;if(m&&!A&&typeof m=="object"){if(le.endsWith(h,"{}"))h=n?h:h.slice(0,-2),m=JSON.stringify(m);else if(le.isArray(m)&&bHt(m)||(le.isFileList(m)||le.endsWith(h,"[]"))&&(g=le.toArray(m)))return h=mNe(h),g.forEach(function(y,x){!(le.isUndefined(y)||y===null)&&e.append(a===!0?pNe([h],x,i):a===null?h:h+"[]",u(y))}),!1}return Uj(m)?!0:(e.append(pNe(A,h,i),u(m)),!1)}let d=[],f=Object.assign(EHt,{defaultVisitor:l,convertValue:u,isVisitable:Uj});function p(m,h){if(!le.isUndefined(m)){if(d.indexOf(m)!==-1)throw Error("Circular reference detected in "+h.join("."));d.push(m),le.forEach(m,function(g,b){(!(le.isUndefined(g)||g===null)&&s.call(e,g,le.isString(b)?b.trim():b,h,f))===!0&&p(g,h?h.concat(b):[b])}),d.pop()}}if(!le.isObject(t))throw new TypeError("data must be an object");return p(t),e}var Kp=_Ht;function hNe(t){let e={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(t).replace(/[!'()~]|%20|%00/g,function(n){return e[n]})}function gNe(t,e){this._pairs=[],t&&Kp(t,this,e)}var ANe=gNe.prototype;ANe.append=function(e,r){this._pairs.push([e,r])};ANe.toString=function(e){let r=e?function(n){return e.call(this,n,hNe)}:hNe;return this._pairs.map(function(s){return r(s[0])+"="+r(s[1])},"").join("&")};var yNe=gNe;function SHt(t){return encodeURIComponent(t).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function fh(t,e,r){if(!e)return t;let n=r&&r.encode||SHt,s=r&&r.serialize,i;if(s?i=s(e,r):i=le.isURLSearchParams(e)?e.toString():new yNe(e,r).toString(n),i){let a=t.indexOf("#");a!==-1&&(t=t.slice(0,a)),t+=(t.indexOf("?")===-1?"?":"&")+i}return t}var qj=class{constructor(){this.handlers=[]}use(e,r,n){return this.handlers.push({fulfilled:e,rejected:r,synchronous:n?n.synchronous:!1,runWhen:n?n.runWhen:null}),this.handlers.length-1}eject(e){this.handlers[e]&&(this.handlers[e]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(e){le.forEach(this.handlers,function(n){n!==null&&e(n)})}},jj=qj;var lx={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1};var xNe=Re(require("url"),1),bNe=xNe.default.URLSearchParams;var ENe={isNode:!0,classes:{URLSearchParams:bNe,FormData:g3,Blob:typeof Blob<"u"&&Blob||null},protocols:["http","https","file","data"]};var Hj={};is(Hj,{hasBrowserEnv:()=>_Ne,hasStandardBrowserEnv:()=>vHt,hasStandardBrowserWebWorkerEnv:()=>CHt});var _Ne=typeof window<"u"&&typeof document<"u",vHt=(t=>_Ne&&["ReactNative","NativeScript","NS"].indexOf(t)<0)(typeof navigator<"u"&&navigator.product),CHt=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function";var ws={...Hj,...ENe};function Qj(t,e){return Kp(t,new ws.classes.URLSearchParams,Object.assign({visitor:function(r,n,s,i){return ws.isNode&&le.isBuffer(r)?(this.append(n,r.toString("base64")),!1):i.defaultVisitor.apply(this,arguments)}},e))}function IHt(t){return le.matchAll(/\w+|\[(\w*)]/g,t).map(e=>e[0]==="[]"?"":e[1]||e[0])}function THt(t){let e={},r=Object.keys(t),n,s=r.length,i;for(n=0;n=r.length;return a=!a&&le.isArray(s)?s.length:a,c?(le.hasOwnProp(s,a)?s[a]=[s[a],n]:s[a]=n,!o):((!s[a]||!le.isObject(s[a]))&&(s[a]=[]),e(r,n,s[a],i)&&le.isArray(s[a])&&(s[a]=THt(s[a])),!o)}if(le.isFormData(t)&&le.isFunction(t.entries)){let r={};return le.forEachEntry(t,(n,s)=>{e(IHt(n),s,r,0)}),r}return null}var A3=wHt;function RHt(t,e,r){if(le.isString(t))try{return(e||JSON.parse)(t),le.trim(t)}catch(n){if(n.name!=="SyntaxError")throw n}return(r||JSON.stringify)(t)}var Gj={transitional:lx,adapter:["xhr","http"],transformRequest:[function(e,r){let n=r.getContentType()||"",s=n.indexOf("application/json")>-1,i=le.isObject(e);if(i&&le.isHTMLForm(e)&&(e=new FormData(e)),le.isFormData(e))return s?JSON.stringify(A3(e)):e;if(le.isArrayBuffer(e)||le.isBuffer(e)||le.isStream(e)||le.isFile(e)||le.isBlob(e))return e;if(le.isArrayBufferView(e))return e.buffer;if(le.isURLSearchParams(e))return r.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),e.toString();let o;if(i){if(n.indexOf("application/x-www-form-urlencoded")>-1)return Qj(e,this.formSerializer).toString();if((o=le.isFileList(e))||n.indexOf("multipart/form-data")>-1){let c=this.env&&this.env.FormData;return Kp(o?{"files[]":e}:e,c&&new c,this.formSerializer)}}return i||s?(r.setContentType("application/json",!1),RHt(e)):e}],transformResponse:[function(e){let r=this.transitional||Gj.transitional,n=r&&r.forcedJSONParsing,s=this.responseType==="json";if(e&&le.isString(e)&&(n&&!this.responseType||s)){let a=!(r&&r.silentJSONParsing)&&s;try{return JSON.parse(e)}catch(o){if(a)throw o.name==="SyntaxError"?Xe.from(o,Xe.ERR_BAD_RESPONSE,this,null,this.response):o}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:ws.classes.FormData,Blob:ws.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};le.forEach(["delete","get","head","post","put","patch"],t=>{Gj.headers[t]={}});var dx=Gj;var NHt=le.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"]),SNe=t=>{let e={},r,n,s;return t&&t.split(` -`).forEach(function(a){s=a.indexOf(":"),r=a.substring(0,s).trim().toLowerCase(),n=a.substring(s+1).trim(),!(!r||e[r]&&NHt[r])&&(r==="set-cookie"?e[r]?e[r].push(n):e[r]=[n]:e[r]=e[r]?e[r]+", "+n:n)}),e};var vNe=Symbol("internals");function WS(t){return t&&String(t).trim().toLowerCase()}function y3(t){return t===!1||t==null?t:le.isArray(t)?t.map(y3):String(t)}function OHt(t){let e=Object.create(null),r=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g,n;for(;n=r.exec(t);)e[n[1]]=n[2];return e}var PHt=t=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(t.trim());function Vj(t,e,r,n,s){if(le.isFunction(n))return n.call(this,e,r);if(s&&(e=r),!!le.isString(e)){if(le.isString(n))return e.indexOf(n)!==-1;if(le.isRegExp(n))return n.test(e)}}function DHt(t){return t.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(e,r,n)=>r.toUpperCase()+n)}function kHt(t,e){let r=le.toCamelCase(" "+e);["get","set","has"].forEach(n=>{Object.defineProperty(t,n+r,{value:function(s,i,a){return this[n].call(this,e,s,i,a)},configurable:!0})})}var fx=class{constructor(e){e&&this.set(e)}set(e,r,n){let s=this;function i(o,c,u){let l=WS(c);if(!l)throw new Error("header name must be a non-empty string");let d=le.findKey(s,l);(!d||s[d]===void 0||u===!0||u===void 0&&s[d]!==!1)&&(s[d||c]=y3(o))}let a=(o,c)=>le.forEach(o,(u,l)=>i(u,l,c));return le.isPlainObject(e)||e instanceof this.constructor?a(e,r):le.isString(e)&&(e=e.trim())&&!PHt(e)?a(SNe(e),r):e!=null&&i(r,e,n),this}get(e,r){if(e=WS(e),e){let n=le.findKey(this,e);if(n){let s=this[n];if(!r)return s;if(r===!0)return OHt(s);if(le.isFunction(r))return r.call(this,s,n);if(le.isRegExp(r))return r.exec(s);throw new TypeError("parser must be boolean|regexp|function")}}}has(e,r){if(e=WS(e),e){let n=le.findKey(this,e);return!!(n&&this[n]!==void 0&&(!r||Vj(this,this[n],n,r)))}return!1}delete(e,r){let n=this,s=!1;function i(a){if(a=WS(a),a){let o=le.findKey(n,a);o&&(!r||Vj(n,n[o],o,r))&&(delete n[o],s=!0)}}return le.isArray(e)?e.forEach(i):i(e),s}clear(e){let r=Object.keys(this),n=r.length,s=!1;for(;n--;){let i=r[n];(!e||Vj(this,this[i],i,e,!0))&&(delete this[i],s=!0)}return s}normalize(e){let r=this,n={};return le.forEach(this,(s,i)=>{let a=le.findKey(n,i);if(a){r[a]=y3(s),delete r[i];return}let o=e?DHt(i):String(i).trim();o!==i&&delete r[i],r[o]=y3(s),n[o]=!0}),this}concat(...e){return this.constructor.concat(this,...e)}toJSON(e){let r=Object.create(null);return le.forEach(this,(n,s)=>{n!=null&&n!==!1&&(r[s]=e&&le.isArray(n)?n.join(", "):n)}),r}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([e,r])=>e+": "+r).join(` -`)}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(e){return e instanceof this?e:new this(e)}static concat(e,...r){let n=new this(e);return r.forEach(s=>n.set(s)),n}static accessor(e){let n=(this[vNe]=this[vNe]={accessors:{}}).accessors,s=this.prototype;function i(a){let o=WS(a);n[o]||(kHt(s,a),n[o]=!0)}return le.isArray(e)?e.forEach(i):i(e),this}};fx.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);le.reduceDescriptors(fx.prototype,({value:t},e)=>{let r=e[0].toUpperCase()+e.slice(1);return{get:()=>t,set(n){this[r]=n}}});le.freezeMethods(fx);var Rs=fx;function $S(t,e){let r=this||dx,n=e||r,s=Rs.from(n.headers),i=n.data;return le.forEach(t,function(o){i=o.call(r,i,s.normalize(),e?e.status:void 0)}),s.normalize(),i}function FS(t){return!!(t&&t.__CANCEL__)}function CNe(t,e,r){Xe.call(this,t??"canceled",Xe.ERR_CANCELED,e,r),this.name="CanceledError"}le.inherits(CNe,Xe,{__CANCEL__:!0});var ru=CNe;function Yp(t,e,r){let n=r.config.validateStatus;!r.status||!n||n(r.status)?t(r):e(new Xe("Request failed with status code "+r.status,[Xe.ERR_BAD_REQUEST,Xe.ERR_BAD_RESPONSE][Math.floor(r.status/100)-4],r.config,r.request,r))}function zj(t){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(t)}function Kj(t,e){return e?t.replace(/\/?\/$/,"")+"/"+e.replace(/^\/+/,""):t}function ph(t,e){return t&&!zj(e)?Kj(t,e):e}var aOe=Re(TNe(),1),oOe=Re(require("http"),1),cOe=Re(require("https"),1),uOe=Re(require("util"),1),lOe=Re(GNe(),1),Bd=Re(require("zlib"),1);var Ah="1.6.7";function QS(t){let e=/^([-+\w]{1,25})(:?\/\/|:)/.exec(t);return e&&e[1]||""}var xQt=/^(?:([^;]+);)?(?:[^;]+;)?(base64|),([\s\S]*)$/;function fH(t,e,r){let n=r&&r.Blob||ws.classes.Blob,s=QS(t);if(e===void 0&&n&&(e=!0),s==="data"){t=s.length?t.slice(s.length+1):t;let i=xQt.exec(t);if(!i)throw new Xe("Invalid URL",Xe.ERR_INVALID_URL);let a=i[1],o=i[2],c=i[3],u=Buffer.from(decodeURIComponent(c),o?"base64":"utf8");if(e){if(!n)throw new Xe("Blob is not supported",Xe.ERR_NOT_SUPPORT);return new n([u],{type:a})}return u}throw new Xe("Unsupported protocol "+s,Xe.ERR_NOT_SUPPORT)}var yh=Re(require("stream"),1);var zNe=Re(require("stream"),1);function bQt(t,e){let r=0,n=1e3/e,s=null;return function(a,o){let c=Date.now();if(a||c-r>n)return s&&(clearTimeout(s),s=null),r=c,t.apply(null,o);s||(s=setTimeout(()=>(s=null,r=Date.now(),t.apply(null,o)),n-(c-r)))}}var VNe=bQt;function EQt(t,e){t=t||10;let r=new Array(t),n=new Array(t),s=0,i=0,a;return e=e!==void 0?e: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%t;if(s=(s+1)%t,s===i&&(i=(i+1)%t),u-a!le.isUndefined(c[o])),super({readableHighWaterMark:e.chunkSize});let r=this,n=this[v3]={length:e.length,timeWindow:e.timeWindow,ticksRate:e.ticksRate,chunkSize:e.chunkSize,maxRate:e.maxRate,minChunkSize:e.minChunkSize,bytesSeen:0,isCaptured:!1,notifiedBytesLoaded:0,ts:Date.now(),bytes:0,onReadCallback:null},s=S3(n.ticksRate*e.samplesCount,n.timeWindow);this.on("newListener",o=>{o==="progress"&&(n.isCaptured||(n.isCaptured=!0))});let i=0;n.updateProgress=VNe(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(e){let r=this[v3];return r.onReadCallback&&r.onReadCallback(),super._read(e)}_transform(e,r,n){let s=this,i=this[v3],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(m,h){let A=Buffer.byteLength(m);i.bytesSeen+=A,i.bytes+=A,i.isCaptured&&i.updateProgress(),s.push(m)?process.nextTick(h):i.onReadCallback=()=>{i.onReadCallback=null,process.nextTick(h)}}let p=(m,h)=>{let A=Buffer.byteLength(m),g=null,b=o,y,x=0;if(a){let v=Date.now();(!i.ts||(x=v-i.ts)>=c)&&(i.ts=v,y=l-i.bytes,i.bytes=y<0?-y:0,x=0),y=l-i.bytes}if(a){if(y<=0)return setTimeout(()=>{h(null,m)},c-x);yb&&A-b>d&&(g=m.subarray(b),m=m.subarray(0,b)),f(m,g?()=>{process.nextTick(h,null,g)}:h)};p(e,function m(h,A){if(h)return n(h);A?p(A,m):n(null)})}setLength(e){return this[v3].length=+e,this}},mH=pH;var dOe=Re(require("events"),1);var YNe=require("util"),JNe=require("stream");var{asyncIterator:KNe}=Symbol,_Qt=async function*(t){t.stream?yield*t.stream():t.arrayBuffer?yield await t.arrayBuffer():t[KNe]?yield*t[KNe]():yield t},C3=_Qt;var SQt=le.ALPHABET.ALPHA_DIGIT+"-_",GS=new YNe.TextEncoder,Xp=`\r -`,vQt=GS.encode(Xp),CQt=2,hH=class{constructor(e,r){let{escapeName:n}=this.constructor,s=le.isString(r),i=`Content-Disposition: form-data; name="${n(e)}"${!s&&r.name?`; filename="${n(r.name)}"`:""}${Xp}`;s?r=GS.encode(String(r).replace(/\r?\n|\r\n?/g,Xp)):i+=`Content-Type: ${r.type||"application/octet-stream"}${Xp}`,this.headers=GS.encode(i+Xp),this.contentLength=s?r.byteLength:r.size,this.size=this.headers.byteLength+this.contentLength+CQt,this.name=e,this.value=r}async*encode(){yield this.headers;let{value:e}=this;le.isTypedArray(e)?yield e:yield*C3(e),yield vQt}static escapeName(e){return String(e).replace(/[\r\n"]/g,r=>({"\r":"%0D","\n":"%0A",'"':"%22"})[r])}},IQt=(t,e,r)=>{let{tag:n="form-data-boundary",size:s=25,boundary:i=n+"-"+le.generateString(s,SQt)}=r||{};if(!le.isFormData(t))throw TypeError("FormData instance required");if(i.length<1||i.length>70)throw Error("boundary must be 10-70 characters long");let a=GS.encode("--"+i+Xp),o=GS.encode("--"+i+"--"+Xp+Xp),c=o.byteLength,u=Array.from(t.entries()).map(([d,f])=>{let p=new hH(d,f);return c+=p.size,p});c+=a.byteLength*u.length,c=le.toFiniteNumber(c);let l={"Content-Type":`multipart/form-data; boundary=${i}`};return Number.isFinite(c)&&(l["Content-Length"]=c),e&&e(l),JNe.Readable.from(async function*(){for(let d of u)yield a,yield*d.encode();yield o}())},XNe=IQt;var ZNe=Re(require("stream"),1),gH=class extends ZNe.default.Transform{__transform(e,r,n){this.push(e),n()}_transform(e,r,n){if(e.length!==0&&(this._transform=this.__transform,e[0]!==120)){let s=Buffer.alloc(2);s[0]=120,s[1]=156,this.push(s,r)}this.__transform(e,r,n)}},eOe=gH;var TQt=(t,e)=>le.isAsyncFn(t)?function(...r){let n=r.pop();t.apply(this,r).then(s=>{try{e?n(null,...e(s)):n(null,s)}catch(i){n(i)}},n)}:t,tOe=TQt;var rOe={flush:Bd.default.constants.Z_SYNC_FLUSH,finishFlush:Bd.default.constants.Z_SYNC_FLUSH},wQt={flush:Bd.default.constants.BROTLI_OPERATION_FLUSH,finishFlush:Bd.default.constants.BROTLI_OPERATION_FLUSH},nOe=le.isFunction(Bd.default.createBrotliDecompress),{http:RQt,https:NQt}=lOe.default,OQt=/https:?/,sOe=ws.protocols.map(t=>t+":");function PQt(t,e){t.beforeRedirects.proxy&&t.beforeRedirects.proxy(t),t.beforeRedirects.config&&t.beforeRedirects.config(t,e)}function fOe(t,e,r){let n=e;if(!n&&n!==!1){let s=(0,aOe.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");t.headers["Proxy-Authorization"]="Basic "+i}t.headers.host=t.hostname+(t.port?":"+t.port:"");let s=n.hostname||n.host;t.hostname=s,t.host=s,t.port=n.port,t.path=r,n.protocol&&(t.protocol=n.protocol.includes(":")?n.protocol:`${n.protocol}:`)}t.beforeRedirects.proxy=function(i){fOe(i,e,i.href)}}var DQt=typeof process<"u"&&le.kindOf(process)==="process",kQt=t=>new Promise((e,r)=>{let n,s,i=(c,u)=>{s||(s=!0,n&&n(c,u))},a=c=>{i(c),e(c)},o=c=>{i(c,!0),r(c)};t(a,o,c=>n=c).catch(o)}),LQt=({address:t,family:e})=>{if(!le.isString(t))throw TypeError("address must be a string");return{address:t,family:e||(t.indexOf(".")<0?6:4)}},iOe=(t,e)=>LQt(le.isObject(t)?t:{address:t,family:e}),pOe=DQt&&function(e){return kQt(async function(n,s,i){let{data:a,lookup:o,family:c}=e,{responseType:u,responseEncoding:l}=e,d=e.method.toUpperCase(),f,p=!1,m;if(o){let F=tOe(o,V=>le.isArray(V)?V:[V]);o=(V,j,J)=>{F(V,j,(se,oe,ue)=>{if(se)return J(se);let Ce=le.isArray(oe)?oe.map(we=>iOe(we)):[iOe(oe,ue)];j.all?J(se,Ce):J(se,Ce[0].address,Ce[0].family)})}}let h=new dOe.default,A=()=>{e.cancelToken&&e.cancelToken.unsubscribe(g),e.signal&&e.signal.removeEventListener("abort",g),h.removeAllListeners()};i((F,V)=>{f=!0,V&&(p=!0,A())});function g(F){h.emit("abort",!F||F.type?new ru(null,e,m):F)}h.once("abort",s),(e.cancelToken||e.signal)&&(e.cancelToken&&e.cancelToken.subscribe(g),e.signal&&(e.signal.aborted?g():e.signal.addEventListener("abort",g)));let b=ph(e.baseURL,e.url),y=new URL(b,"http://localhost"),x=y.protocol||sOe[0];if(x==="data:"){let F;if(d!=="GET")return Yp(n,s,{status:405,statusText:"method not allowed",headers:{},config:e});try{F=fH(e.url,u==="blob",{Blob:e.env&&e.env.Blob})}catch(V){throw Xe.from(V,Xe.ERR_BAD_REQUEST,e)}return u==="text"?(F=F.toString(l),(!l||l==="utf8")&&(F=le.stripBOM(F))):u==="stream"&&(F=yh.default.Readable.from(F)),Yp(n,s,{data:F,status:200,statusText:"OK",headers:new Rs,config:e})}if(sOe.indexOf(x)===-1)return s(new Xe("Unsupported protocol "+x,Xe.ERR_BAD_REQUEST,e));let v=Rs.from(e.headers).normalize();v.set("User-Agent","axios/"+Ah,!1);let C=e.onDownloadProgress,R=e.onUploadProgress,w=e.maxRate,N,P;if(le.isSpecCompliantForm(a)){let F=v.getContentType(/boundary=([-_\w\d]{10,70})/i);a=XNe(a,V=>{v.set(V)},{tag:`axios-${Ah}-boundary`,boundary:F&&F[1]||void 0})}else if(le.isFormData(a)&&le.isFunction(a.getHeaders)){if(v.set(a.getHeaders()),!v.hasContentLength())try{let F=await uOe.default.promisify(a.getLength).call(a);Number.isFinite(F)&&F>=0&&v.setContentLength(F)}catch{}}else if(le.isBlob(a))a.size&&v.setContentType(a.type||"application/octet-stream"),v.setContentLength(a.size||0),a=yh.default.Readable.from(C3(a));else if(a&&!le.isStream(a)){if(!Buffer.isBuffer(a))if(le.isArrayBuffer(a))a=Buffer.from(new Uint8Array(a));else if(le.isString(a))a=Buffer.from(a,"utf-8");else return s(new Xe("Data after transformation must be a string, an ArrayBuffer, a Buffer, or a Stream",Xe.ERR_BAD_REQUEST,e));if(v.setContentLength(a.length,!1),e.maxBodyLength>-1&&a.length>e.maxBodyLength)return s(new Xe("Request body larger than maxBodyLength limit",Xe.ERR_BAD_REQUEST,e))}let L=le.toFiniteNumber(v.getContentLength());le.isArray(w)?(N=w[0],P=w[1]):N=P=w,a&&(R||N)&&(le.isStream(a)||(a=yh.default.Readable.from(a,{objectMode:!1})),a=yh.default.pipeline([a,new mH({length:L,maxRate:le.toFiniteNumber(N)})],le.noop),R&&a.on("progress",F=>{R(Object.assign(F,{upload:!0}))}));let M;if(e.auth){let F=e.auth.username||"",V=e.auth.password||"";M=F+":"+V}if(!M&&y.username){let F=y.username,V=y.password;M=F+":"+V}M&&v.delete("authorization");let k;try{k=fh(y.pathname+y.search,e.params,e.paramsSerializer).replace(/^\?/,"")}catch(F){let V=new Error(F.message);return V.config=e,V.url=e.url,V.exists=!0,s(V)}v.set("Accept-Encoding","gzip, compress, deflate"+(nOe?", br":""),!1);let B={path:k,method:d,headers:v.toJSON(),agents:{http:e.httpAgent,https:e.httpsAgent},auth:M,protocol:x,family:c,beforeRedirect:PQt,beforeRedirects:{}};!le.isUndefined(o)&&(B.lookup=o),e.socketPath?B.socketPath=e.socketPath:(B.hostname=y.hostname,B.port=y.port,fOe(B,e.proxy,x+"//"+y.hostname+(y.port?":"+y.port:"")+B.path));let Z,W=OQt.test(B.protocol);if(B.agent=W?e.httpsAgent:e.httpAgent,e.transport?Z=e.transport:e.maxRedirects===0?Z=W?cOe.default:oOe.default:(e.maxRedirects&&(B.maxRedirects=e.maxRedirects),e.beforeRedirect&&(B.beforeRedirects.config=e.beforeRedirect),Z=W?NQt:RQt),e.maxBodyLength>-1?B.maxBodyLength=e.maxBodyLength:B.maxBodyLength=1/0,e.insecureHTTPParser&&(B.insecureHTTPParser=e.insecureHTTPParser),m=Z.request(B,function(V){if(m.destroyed)return;let j=[V],J=+V.headers["content-length"];if(C){let we=new mH({length:le.toFiniteNumber(J),maxRate:le.toFiniteNumber(P)});C&&we.on("progress",qe=>{C(Object.assign(qe,{download:!0}))}),j.push(we)}let se=V,oe=V.req||m;if(e.decompress!==!1&&V.headers["content-encoding"])switch((d==="HEAD"||V.statusCode===204)&&delete V.headers["content-encoding"],(V.headers["content-encoding"]||"").toLowerCase()){case"gzip":case"x-gzip":case"compress":case"x-compress":j.push(Bd.default.createUnzip(rOe)),delete V.headers["content-encoding"];break;case"deflate":j.push(new eOe),j.push(Bd.default.createUnzip(rOe)),delete V.headers["content-encoding"];break;case"br":nOe&&(j.push(Bd.default.createBrotliDecompress(wQt)),delete V.headers["content-encoding"])}se=j.length>1?yh.default.pipeline(j,le.noop):j[0];let ue=yh.default.finished(se,()=>{ue(),A()}),Ce={status:V.statusCode,statusText:V.statusMessage,headers:new Rs(V.headers),config:e,request:oe};if(u==="stream")Ce.data=se,Yp(n,s,Ce);else{let we=[],qe=0;se.on("data",function(_e){we.push(_e),qe+=_e.length,e.maxContentLength>-1&&qe>e.maxContentLength&&(p=!0,se.destroy(),s(new Xe("maxContentLength size of "+e.maxContentLength+" exceeded",Xe.ERR_BAD_RESPONSE,e,oe)))}),se.on("aborted",function(){if(p)return;let _e=new Xe("maxContentLength size of "+e.maxContentLength+" exceeded",Xe.ERR_BAD_RESPONSE,e,oe);se.destroy(_e),s(_e)}),se.on("error",function(_e){m.destroyed||s(Xe.from(_e,null,e,oe))}),se.on("end",function(){try{let _e=we.length===1?we[0]:Buffer.concat(we);u!=="arraybuffer"&&(_e=_e.toString(l),(!l||l==="utf8")&&(_e=le.stripBOM(_e))),Ce.data=_e}catch(_e){return s(Xe.from(_e,null,e,Ce.request,Ce))}Yp(n,s,Ce)})}h.once("abort",we=>{se.destroyed||(se.emit("error",we),se.destroy())})}),h.once("abort",F=>{s(F),m.destroy(F)}),m.on("error",function(V){s(Xe.from(V,null,e,m))}),m.on("socket",function(V){V.setKeepAlive(!0,1e3*60)}),e.timeout){let F=parseInt(e.timeout,10);if(Number.isNaN(F)){s(new Xe("error trying to parse `config.timeout` to int",Xe.ERR_BAD_OPTION_VALUE,e,m));return}m.setTimeout(F,function(){if(f)return;let j=e.timeout?"timeout of "+e.timeout+"ms exceeded":"timeout exceeded",J=e.transitional||lx;e.timeoutErrorMessage&&(j=e.timeoutErrorMessage),s(new Xe(j,J.clarifyTimeoutError?Xe.ETIMEDOUT:Xe.ECONNABORTED,e,m)),g()})}if(le.isStream(a)){let F=!1,V=!1;a.on("end",()=>{F=!0}),a.once("error",j=>{V=!0,m.destroy(j)}),a.on("close",()=>{!F&&!V&&g(new ru("Request stream has been aborted",e,m))}),a.pipe(m)}else m.end(a)})};var mOe=ws.hasStandardBrowserEnv?{write(t,e,r,n,s,i){let a=[t+"="+encodeURIComponent(e)];le.isNumber(r)&&a.push("expires="+new Date(r).toGMTString()),le.isString(n)&&a.push("path="+n),le.isString(s)&&a.push("domain="+s),i===!0&&a.push("secure"),document.cookie=a.join("; ")},read(t){let e=document.cookie.match(new RegExp("(^|;\\s*)("+t+")=([^;]*)"));return e?decodeURIComponent(e[3]):null},remove(t){this.write(t,"",Date.now()-864e5)}}:{write(){},read(){return null},remove(){}};var hOe=ws.hasStandardBrowserEnv?function(){let e=/(msie|trident)/i.test(navigator.userAgent),r=document.createElement("a"),n;function s(i){let a=i;return e&&(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=le.isString(a)?s(a):a;return o.protocol===n.protocol&&o.host===n.host}}():function(){return function(){return!0}}();function gOe(t,e){let r=0,n=S3(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[e?"download":"upload"]=!0,t(l)}}var BQt=typeof XMLHttpRequest<"u",AOe=BQt&&function(t){return new Promise(function(r,n){let s=t.data,i=Rs.from(t.headers).normalize(),{responseType:a,withXSRFToken:o}=t,c;function u(){t.cancelToken&&t.cancelToken.unsubscribe(c),t.signal&&t.signal.removeEventListener("abort",c)}let l;if(le.isFormData(s)){if(ws.hasStandardBrowserEnv||ws.hasStandardBrowserWebWorkerEnv)i.setContentType(!1);else if((l=i.getContentType())!==!1){let[h,...A]=l?l.split(";").map(g=>g.trim()).filter(Boolean):[];i.setContentType([h||"multipart/form-data",...A].join("; "))}}let d=new XMLHttpRequest;if(t.auth){let h=t.auth.username||"",A=t.auth.password?unescape(encodeURIComponent(t.auth.password)):"";i.set("Authorization","Basic "+btoa(h+":"+A))}let f=ph(t.baseURL,t.url);d.open(t.method.toUpperCase(),fh(f,t.params,t.paramsSerializer),!0),d.timeout=t.timeout;function p(){if(!d)return;let h=Rs.from("getAllResponseHeaders"in d&&d.getAllResponseHeaders()),g={data:!a||a==="text"||a==="json"?d.responseText:d.response,status:d.status,statusText:d.statusText,headers:h,config:t,request:d};Yp(function(y){r(y),u()},function(y){n(y),u()},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 Xe("Request aborted",Xe.ECONNABORTED,t,d)),d=null)},d.onerror=function(){n(new Xe("Network Error",Xe.ERR_NETWORK,t,d)),d=null},d.ontimeout=function(){let A=t.timeout?"timeout of "+t.timeout+"ms exceeded":"timeout exceeded",g=t.transitional||lx;t.timeoutErrorMessage&&(A=t.timeoutErrorMessage),n(new Xe(A,g.clarifyTimeoutError?Xe.ETIMEDOUT:Xe.ECONNABORTED,t,d)),d=null},ws.hasStandardBrowserEnv&&(o&&le.isFunction(o)&&(o=o(t)),o||o!==!1&&hOe(f))){let h=t.xsrfHeaderName&&t.xsrfCookieName&&mOe.read(t.xsrfCookieName);h&&i.set(t.xsrfHeaderName,h)}s===void 0&&i.setContentType(null),"setRequestHeader"in d&&le.forEach(i.toJSON(),function(A,g){d.setRequestHeader(g,A)}),le.isUndefined(t.withCredentials)||(d.withCredentials=!!t.withCredentials),a&&a!=="json"&&(d.responseType=t.responseType),typeof t.onDownloadProgress=="function"&&d.addEventListener("progress",gOe(t.onDownloadProgress,!0)),typeof t.onUploadProgress=="function"&&d.upload&&d.upload.addEventListener("progress",gOe(t.onUploadProgress)),(t.cancelToken||t.signal)&&(c=h=>{d&&(n(!h||h.type?new ru(null,t,d):h),d.abort(),d=null)},t.cancelToken&&t.cancelToken.subscribe(c),t.signal&&(t.signal.aborted?c():t.signal.addEventListener("abort",c)));let m=QS(f);if(m&&ws.protocols.indexOf(m)===-1){n(new Xe("Unsupported protocol "+m+":",Xe.ERR_BAD_REQUEST,t));return}d.send(s||null)})};var AH={http:pOe,xhr:AOe};le.forEach(AH,(t,e)=>{if(t){try{Object.defineProperty(t,"name",{value:e})}catch{}Object.defineProperty(t,"adapterName",{value:e})}});var yOe=t=>`- ${t}`,MQt=t=>le.isFunction(t)||t===null||t===!1,I3={getAdapter:t=>{t=le.isArray(t)?t:[t];let{length:e}=t,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=e?i.length>1?`since : -`+i.map(yOe).join(` -`):" "+yOe(i[0]):"as no adapter specified";throw new Xe("There is no suitable adapter to dispatch the request "+a,"ERR_NOT_SUPPORT")}return n},adapters:AH};function yH(t){if(t.cancelToken&&t.cancelToken.throwIfRequested(),t.signal&&t.signal.aborted)throw new ru(null,t)}function T3(t){return yH(t),t.headers=Rs.from(t.headers),t.data=$S.call(t,t.transformRequest),["post","put","patch"].indexOf(t.method)!==-1&&t.headers.setContentType("application/x-www-form-urlencoded",!1),I3.getAdapter(t.adapter||dx.adapter)(t).then(function(n){return yH(t),n.data=$S.call(t,t.transformResponse,n),n.headers=Rs.from(n.headers),n},function(n){return FS(n)||(yH(t),n&&n.response&&(n.response.data=$S.call(t,t.transformResponse,n.response),n.response.headers=Rs.from(n.response.headers))),Promise.reject(n)})}var xOe=t=>t instanceof Rs?t.toJSON():t;function Md(t,e){e=e||{};let r={};function n(u,l,d){return le.isPlainObject(u)&&le.isPlainObject(l)?le.merge.call({caseless:d},u,l):le.isPlainObject(l)?le.merge({},l):le.isArray(l)?l.slice():l}function s(u,l,d){if(le.isUndefined(l)){if(!le.isUndefined(u))return n(void 0,u,d)}else return n(u,l,d)}function i(u,l){if(!le.isUndefined(l))return n(void 0,l)}function a(u,l){if(le.isUndefined(l)){if(!le.isUndefined(u))return n(void 0,u)}else return n(void 0,l)}function o(u,l,d){if(d in e)return n(u,l);if(d in t)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(xOe(u),xOe(l),!0)};return le.forEach(Object.keys(Object.assign({},t,e)),function(l){let d=c[l]||s,f=d(t[l],e[l],l);le.isUndefined(f)&&d!==o||(r[l]=f)}),r}var xH={};["object","boolean","number","function","string","symbol"].forEach((t,e)=>{xH[t]=function(n){return typeof n===t||"a"+(e<1?"n ":" ")+t}});var bOe={};xH.transitional=function(e,r,n){function s(i,a){return"[Axios v"+Ah+"] Transitional option '"+i+"'"+a+(n?". "+n:"")}return(i,a,o)=>{if(e===!1)throw new Xe(s(a," has been removed"+(r?" in "+r:"")),Xe.ERR_DEPRECATED);return r&&!bOe[a]&&(bOe[a]=!0,console.warn(s(a," has been deprecated since v"+r+" and will be removed in the near future"))),e?e(i,a,o):!0}};function WQt(t,e,r){if(typeof t!="object")throw new Xe("options must be an object",Xe.ERR_BAD_OPTION_VALUE);let n=Object.keys(t),s=n.length;for(;s-- >0;){let i=n[s],a=e[i];if(a){let o=t[i],c=o===void 0||a(o,i,t);if(c!==!0)throw new Xe("option "+i+" must be "+c,Xe.ERR_BAD_OPTION_VALUE);continue}if(r!==!0)throw new Xe("Unknown option "+i,Xe.ERR_BAD_OPTION)}}var w3={assertOptions:WQt,validators:xH};var Zp=w3.validators,Ax=class{constructor(e){this.defaults=e,this.interceptors={request:new jj,response:new jj}}async request(e,r){try{return await this._request(e,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(e,r){typeof e=="string"?(r=r||{},r.url=e):r=e||{},r=Md(this.defaults,r);let{transitional:n,paramsSerializer:s,headers:i}=r;n!==void 0&&w3.assertOptions(n,{silentJSONParsing:Zp.transitional(Zp.boolean),forcedJSONParsing:Zp.transitional(Zp.boolean),clarifyTimeoutError:Zp.transitional(Zp.boolean)},!1),s!=null&&(le.isFunction(s)?r.paramsSerializer={serialize:s}:w3.assertOptions(s,{encode:Zp.function,serialize:Zp.function},!0)),r.method=(r.method||this.defaults.method||"get").toLowerCase();let a=i&&le.merge(i.common,i[r.method]);i&&le.forEach(["delete","get","head","post","put","patch","common"],m=>{delete i[m]}),r.headers=Rs.concat(a,i);let o=[],c=!0;this.interceptors.request.forEach(function(h){typeof h.runWhen=="function"&&h.runWhen(r)===!1||(c=c&&h.synchronous,o.unshift(h.fulfilled,h.rejected))});let u=[];this.interceptors.response.forEach(function(h){u.push(h.fulfilled,h.rejected)});let l,d=0,f;if(!c){let m=[T3.bind(this),void 0];for(m.unshift.apply(m,o),m.push.apply(m,u),f=m.length,l=Promise.resolve(r);d{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},e(function(i,a,o){n.reason||(n.reason=new ru(i,a,o),r(n.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){if(this.reason){e(this.reason);return}this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;let r=this._listeners.indexOf(e);r!==-1&&this._listeners.splice(r,1)}static source(){let e;return{token:new t(function(s){e=s}),cancel:e}}},EOe=bH;function EH(t){return function(r){return t.apply(null,r)}}function _H(t){return le.isObject(t)&&t.isAxiosError===!0}var SH={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(SH).forEach(([t,e])=>{SH[e]=t});var _Oe=SH;function SOe(t){let e=new VS(t),r=NS(VS.prototype.request,e);return le.extend(r,VS.prototype,e,{allOwnKeys:!0}),le.extend(r,e,null,{allOwnKeys:!0}),r.create=function(s){return SOe(Md(t,s))},r}var bs=SOe(dx);bs.Axios=VS;bs.CanceledError=ru;bs.CancelToken=EOe;bs.isCancel=FS;bs.VERSION=Ah;bs.toFormData=Kp;bs.AxiosError=Xe;bs.Cancel=bs.CanceledError;bs.all=function(e){return Promise.all(e)};bs.spread=EH;bs.isAxiosError=_H;bs.mergeConfig=Md;bs.AxiosHeaders=Rs;bs.formToJSON=t=>A3(le.isHTMLForm(t)?new FormData(t):t);bs.getAdapter=I3.getAdapter;bs.HttpStatusCode=_Oe;bs.default=bs;var Ae=bs;var{Axios:aWr,AxiosError:oWr,CanceledError:cWr,isCancel:uWr,CancelToken:lWr,VERSION:dWr,all:fWr,Cancel:pWr,isAxiosError:mWr,spread:hWr,toFormData:gWr,AxiosHeaders:AWr,HttpStatusCode:yWr,formToJSON:xWr,getAdapter:bWr,mergeConfig:EWr}=Ae;var vOe=Re(require("https"),1),COe=Re(require("http"),1),$Qt=Number.parseInt(process.env.CATPAW_REQ_TIMEOUT_MS||"20000",10)||2e4,FQt=Ae.create({timeout:$Qt,httpsAgent:new vOe.default.Agent({keepAlive:!1,rejectUnauthorized:!1,maxCachedSessions:0}),httpAgent:new COe.default.Agent({keepAlive:!1}),proxy:!1}),he=FQt;var Sv={};is(Sv,{contains:()=>sJt,default:()=>nJt,html:()=>BH,load:()=>Me,merge:()=>iJt,parseHTML:()=>aJt,root:()=>oJt,text:()=>Ud,xml:()=>MH});var UQt={xml:!1,decodeEntities:!0},zS=UQt,IOe={_useHtmlParser2:!0,xmlMode:!0};function KS(t){return t?.xml?typeof t.xml=="boolean"?IOe:{...IOe,...t.xml}:t??void 0}var n0={};is(n0,{contains:()=>WH,html:()=>BH,merge:()=>PGt,parseHTML:()=>NGt,root:()=>OGt,text:()=>Ud,xml:()=>MH});var r0={};is(r0,{DocumentPosition:()=>fc,append:()=>fGt,appendChild:()=>dGt,compareDocumentPosition:()=>ePe,existsOne:()=>XOe,filter:()=>_x,find:()=>U3,findAll:()=>gGt,findOne:()=>q3,findOneChild:()=>hGt,getAttributeValue:()=>oGt,getChildren:()=>Ex,getElementById:()=>bGt,getElements:()=>xGt,getElementsByClassName:()=>EGt,getElementsByTagName:()=>Sh,getElementsByTagType:()=>_Gt,getFeed:()=>LH,getInnerHTML:()=>aGt,getName:()=>uGt,getOuterHTML:()=>YOe,getParent:()=>JOe,getSiblings:()=>DH,getText:()=>W3,hasAttrib:()=>cGt,hasChildren:()=>rn,innerText:()=>rv,isCDATA:()=>yx,isComment:()=>_h,isDocument:()=>nu,isTag:()=>st,isText:()=>za,nextElementSibling:()=>$3,prepend:()=>mGt,prependChild:()=>pGt,prevElementSibling:()=>F3,removeElement:()=>Fd,removeSubsets:()=>SGt,replaceElement:()=>lGt,testElement:()=>yGt,textContent:()=>$d,uniqueSort:()=>e0});var wr;(function(t){t.Root="root",t.Text="text",t.Directive="directive",t.Comment="comment",t.Script="script",t.Style="style",t.Tag="tag",t.CDATA="cdata",t.Doctype="doctype"})(wr||(wr={}));function TOe(t){return t.type===wr.Tag||t.type===wr.Script||t.type===wr.Style}var wOe=wr.Root,ROe=wr.Text,NOe=wr.Directive,OOe=wr.Comment,POe=wr.Script,DOe=wr.Style,kOe=wr.Tag,LOe=wr.CDATA,BOe=wr.Doctype;var R3=class{constructor(){this.parent=null,this.prev=null,this.next=null,this.startIndex=null,this.endIndex=null}get parentNode(){return this.parent}set parentNode(e){this.parent=e}get previousSibling(){return this.prev}set previousSibling(e){this.prev=e}get nextSibling(){return this.next}set nextSibling(e){this.next=e}cloneNode(e=!1){return ZS(this,e)}},YS=class extends R3{constructor(e){super(),this.data=e}get nodeValue(){return this.data}set nodeValue(e){this.data=e}},ll=class extends YS{constructor(){super(...arguments),this.type=wr.Text}get nodeType(){return 3}},xh=class extends YS{constructor(){super(...arguments),this.type=wr.Comment}get nodeType(){return 8}},bh=class extends YS{constructor(e,r){super(r),this.name=e,this.type=wr.Directive}get nodeType(){return 1}},JS=class extends R3{constructor(e){super(),this.children=e}get firstChild(){var e;return(e=this.children[0])!==null&&e!==void 0?e:null}get lastChild(){return this.children.length>0?this.children[this.children.length-1]:null}get childNodes(){return this.children}set childNodes(e){this.children=e}},XS=class extends JS{constructor(){super(...arguments),this.type=wr.CDATA}get nodeType(){return 4}},Eo=class extends JS{constructor(){super(...arguments),this.type=wr.Root}get nodeType(){return 9}},Eh=class extends JS{constructor(e,r,n=[],s=e==="script"?wr.Script:e==="style"?wr.Style:wr.Tag){super(n),this.name=e,this.attribs=r,this.type=s}get nodeType(){return 1}get tagName(){return this.name}set tagName(e){this.name=e}get attributes(){return Object.keys(this.attribs).map(e=>{var r,n;return{name:e,value:this.attribs[e],namespace:(r=this["x-attribsNamespace"])===null||r===void 0?void 0:r[e],prefix:(n=this["x-attribsPrefix"])===null||n===void 0?void 0:n[e]}})}};function st(t){return TOe(t)}function yx(t){return t.type===wr.CDATA}function za(t){return t.type===wr.Text}function _h(t){return t.type===wr.Comment}function N3(t){return t.type===wr.Directive}function nu(t){return t.type===wr.Root}function rn(t){return Object.prototype.hasOwnProperty.call(t,"children")}function ZS(t,e=!1){let r;if(za(t))r=new ll(t.data);else if(_h(t))r=new xh(t.data);else if(st(t)){let n=e?vH(t.children):[],s=new Eh(t.name,{...t.attribs},n);n.forEach(i=>i.parent=s),t.namespace!=null&&(s.namespace=t.namespace),t["x-attribsNamespace"]&&(s["x-attribsNamespace"]={...t["x-attribsNamespace"]}),t["x-attribsPrefix"]&&(s["x-attribsPrefix"]={...t["x-attribsPrefix"]}),r=s}else if(yx(t)){let n=e?vH(t.children):[],s=new XS(n);n.forEach(i=>i.parent=s),r=s}else if(nu(t)){let n=e?vH(t.children):[],s=new Eo(n);n.forEach(i=>i.parent=s),t["x-mode"]&&(s["x-mode"]=t["x-mode"]),r=s}else if(N3(t)){let n=new bh(t.name,t.data);t["x-name"]!=null&&(n["x-name"]=t["x-name"],n["x-publicId"]=t["x-publicId"],n["x-systemId"]=t["x-systemId"]),r=n}else throw new Error(`Not implemented yet: ${t.type}`);return r.startIndex=t.startIndex,r.endIndex=t.endIndex,t.sourceCodeLocation!=null&&(r.sourceCodeLocation=t.sourceCodeLocation),r}function vH(t){let e=t.map(r=>ZS(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(t=>t.charCodeAt(0)));var P3=new Uint16Array("\u0200aglq \x1B\u026D\0\0p;\u4026os;\u4027t;\u403Et;\u403Cuot;\u4022".split("").map(t=>t.charCodeAt(0)));var CH,qQt=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]]),bx=(CH=String.fromCodePoint)!==null&&CH!==void 0?CH:function(t){let e="";return t>65535&&(t-=65536,e+=String.fromCharCode(t>>>10&1023|55296),t=56320|t&1023),e+=String.fromCharCode(t),e};function ev(t){var e;return t>=55296&&t<=57343||t>1114111?65533:(e=qQt.get(t))!==null&&e!==void 0?e:t}var Js;(function(t){t[t.NUM=35]="NUM",t[t.SEMI=59]="SEMI",t[t.EQUALS=61]="EQUALS",t[t.ZERO=48]="ZERO",t[t.NINE=57]="NINE",t[t.LOWER_A=97]="LOWER_A",t[t.LOWER_F=102]="LOWER_F",t[t.LOWER_X=120]="LOWER_X",t[t.LOWER_Z=122]="LOWER_Z",t[t.UPPER_A=65]="UPPER_A",t[t.UPPER_F=70]="UPPER_F",t[t.UPPER_Z=90]="UPPER_Z"})(Js||(Js={}));var jQt=32,dc;(function(t){t[t.VALUE_LENGTH=49152]="VALUE_LENGTH",t[t.BRANCH_LENGTH=16256]="BRANCH_LENGTH",t[t.JUMP_TABLE=127]="JUMP_TABLE"})(dc||(dc={}));function IH(t){return t>=Js.ZERO&&t<=Js.NINE}function HQt(t){return t>=Js.UPPER_A&&t<=Js.UPPER_F||t>=Js.LOWER_A&&t<=Js.LOWER_F}function QQt(t){return t>=Js.UPPER_A&&t<=Js.UPPER_Z||t>=Js.LOWER_A&&t<=Js.LOWER_Z||IH(t)}function GQt(t){return t===Js.EQUALS||QQt(t)}var Ys;(function(t){t[t.EntityStart=0]="EntityStart",t[t.NumericStart=1]="NumericStart",t[t.NumericDecimal=2]="NumericDecimal",t[t.NumericHex=3]="NumericHex",t[t.NamedEntity=4]="NamedEntity"})(Ys||(Ys={}));var Wd;(function(t){t[t.Legacy=0]="Legacy",t[t.Strict=1]="Strict",t[t.Attribute=2]="Attribute"})(Wd||(Wd={}));var D3=class{constructor(e,r,n){this.decodeTree=e,this.emitCodePoint=r,this.errors=n,this.state=Ys.EntityStart,this.consumed=1,this.result=0,this.treeIndex=0,this.excess=1,this.decodeMode=Wd.Strict}startEntity(e){this.decodeMode=e,this.state=Ys.EntityStart,this.result=0,this.treeIndex=0,this.excess=1,this.consumed=1}write(e,r){switch(this.state){case Ys.EntityStart:return e.charCodeAt(r)===Js.NUM?(this.state=Ys.NumericStart,this.consumed+=1,this.stateNumericStart(e,r+1)):(this.state=Ys.NamedEntity,this.stateNamedEntity(e,r));case Ys.NumericStart:return this.stateNumericStart(e,r);case Ys.NumericDecimal:return this.stateNumericDecimal(e,r);case Ys.NumericHex:return this.stateNumericHex(e,r);case Ys.NamedEntity:return this.stateNamedEntity(e,r)}}stateNumericStart(e,r){return r>=e.length?-1:(e.charCodeAt(r)|jQt)===Js.LOWER_X?(this.state=Ys.NumericHex,this.consumed+=1,this.stateNumericHex(e,r+1)):(this.state=Ys.NumericDecimal,this.stateNumericDecimal(e,r))}addToNumericResult(e,r,n,s){if(r!==n){let i=n-r;this.result=this.result*Math.pow(s,i)+parseInt(e.substr(r,i),s),this.consumed+=i}}stateNumericHex(e,r){let n=r;for(;r>14;for(;r>14,i!==0){if(a===Js.SEMI)return this.emitNamedEntityData(this.treeIndex,i,this.consumed+this.excess);this.decodeMode!==Wd.Strict&&(this.result=this.treeIndex,this.consumed+=this.excess,this.excess=0)}}return-1}emitNotTerminatedNamedEntity(){var e;let{result:r,decodeTree:n}=this,s=(n[r]&dc.VALUE_LENGTH)>>14;return this.emitNamedEntityData(r,s,this.consumed),(e=this.errors)===null||e===void 0||e.missingSemicolonAfterCharacterReference(),this.consumed}emitNamedEntityData(e,r,n){let{decodeTree:s}=this;return this.emitCodePoint(r===1?s[e]&~dc.VALUE_LENGTH:s[e+1],n),r===3&&this.emitCodePoint(s[e+2],n),n}end(){var e;switch(this.state){case Ys.NamedEntity:return this.result!==0&&(this.decodeMode!==Wd.Attribute||this.result===this.treeIndex)?this.emitNotTerminatedNamedEntity():0;case Ys.NumericDecimal:return this.emitNumericEntity(0,2);case Ys.NumericHex:return this.emitNumericEntity(0,3);case Ys.NumericStart:return(e=this.errors)===null||e===void 0||e.absenceOfDigitsInNumericCharacterReference(this.consumed),0;case Ys.EntityStart:return 0}}};function $Oe(t){let e="",r=new D3(t,n=>e+=bx(n));return function(s,i){let a=0,o=0;for(;(o=s.indexOf("&",o))>=0;){e+=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=e+s.slice(a);return e="",c}}function TH(t,e,r,n){let s=(e&dc.BRANCH_LENGTH)>>7,i=e&dc.JUMP_TABLE;if(s===0)return i!==0&&n===i?r:-1;if(i){let c=n-i;return c<0||c>=s?-1:t[r+c]-1}let a=r,o=a+s-1;for(;a<=o;){let c=a+o>>>1,u=t[c];if(un)o=c-1;else return t[c+s]}return-1}var $Wr=$Oe(O3),FWr=$Oe(P3);function k3(t){for(let e=1;e$\x80-\uFFFF]/g,FOe=new Map([[34,"""],[38,"&"],[39,"'"],[60,"<"],[62,">"]]),UOe=String.prototype.codePointAt!=null?(t,e)=>t.codePointAt(e):(t,e)=>(t.charCodeAt(e)&64512)===55296?(t.charCodeAt(e)-55296)*1024+t.charCodeAt(e+1)-56320+65536:t.charCodeAt(e);function tv(t){let e="",r=0,n;for(;(n=wH.exec(t))!==null;){let s=n.index,i=t.charCodeAt(s),a=FOe.get(i);a!==void 0?(e+=t.substring(r,s)+a,r=s+1):(e+=`${t.substring(r,s)}&#x${UOe(t,s).toString(16)};`,r=wH.lastIndex+=+((i&64512)===55296))}return e+t.substr(r)}function RH(t,e){return function(n){let s,i=0,a="";for(;s=t.exec(n);)i!==s.index&&(a+=n.substring(i,s.index)),a+=e.get(s[0].charCodeAt(0)),i=s.index+1;return a+n.substring(i)}}var qOe=RH(/[&<>'"]/g,FOe),L3=RH(/["&\u00A0]/g,new Map([[34,"""],[38,"&"],[160," "]])),B3=RH(/[&<>\u00A0]/g,new Map([[38,"&"],[60,"<"],[62,">"],[160," "]]));var jOe;(function(t){t[t.XML=0]="XML",t[t.HTML=1]="HTML"})(jOe||(jOe={}));var HOe;(function(t){t[t.UTF8=0]="UTF8",t[t.ASCII=1]="ASCII",t[t.Extensive=2]="Extensive",t[t.Attribute=3]="Attribute",t[t.Text=4]="Text"})(HOe||(HOe={}));var VOe=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(t=>[t.toLowerCase(),t])),zOe=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(t=>[t.toLowerCase(),t]));var KQt=new Set(["style","script","xmp","iframe","noembed","noframes","plaintext","noscript"]);function YQt(t){return t.replace(/"/g,""")}function JQt(t,e){var r;if(!t)return;let n=((r=e.encodeEntities)!==null&&r!==void 0?r:e.decodeEntities)===!1?YQt:e.xmlMode||e.encodeEntities!=="utf8"?tv:L3;return Object.keys(t).map(s=>{var i,a;let o=(i=t[s])!==null&&i!==void 0?i:"";return e.xmlMode==="foreign"&&(s=(a=zOe.get(s))!==null&&a!==void 0?a:s),!e.emptyAttrs&&!e.xmlMode&&o===""?s:`${s}="${n(o)}"`}).join(" ")}var KOe=new Set(["area","base","basefont","br","col","command","embed","frame","hr","img","input","isindex","keygen","link","meta","param","source","track","wbr"]);function PH(t,e={}){let r="length"in t?t:[t],n="";for(let s=0;s0&&(n+=PH(t.children,e)),(e.xmlMode||!KOe.has(t.name))&&(n+=``)),n}function rGt(t){return`<${t.data}>`}function nGt(t,e){var r;let n=t.data||"";return((r=e.encodeEntities)!==null&&r!==void 0?r:e.decodeEntities)!==!1&&!(!e.xmlMode&&t.parent&&KQt.has(t.parent.name))&&(n=e.xmlMode||e.encodeEntities!=="utf8"?tv(n):B3(n)),n}function sGt(t){return``}function iGt(t){return``}function YOe(t,e){return M3(t,e)}function aGt(t,e){return rn(t)?t.children.map(r=>YOe(r,e)).join(""):""}function W3(t){return Array.isArray(t)?t.map(W3).join(""):st(t)?t.name==="br"?` -`:W3(t.children):yx(t)?W3(t.children):za(t)?t.data:""}function $d(t){return Array.isArray(t)?t.map($d).join(""):rn(t)&&!_h(t)?$d(t.children):za(t)?t.data:""}function rv(t){return Array.isArray(t)?t.map(rv).join(""):rn(t)&&(t.type===wr.Tag||yx(t))?rv(t.children):za(t)?t.data:""}function Ex(t){return rn(t)?t.children:[]}function JOe(t){return t.parent||null}function DH(t){let e=JOe(t);if(e!=null)return Ex(e);let r=[t],{prev:n,next:s}=t;for(;n!=null;)r.unshift(n),{prev:n}=n;for(;s!=null;)r.push(s),{next:s}=s;return r}function oGt(t,e){var r;return(r=t.attribs)===null||r===void 0?void 0:r[e]}function cGt(t,e){return t.attribs!=null&&Object.prototype.hasOwnProperty.call(t.attribs,e)&&t.attribs[e]!=null}function uGt(t){return t.name}function $3(t){let{next:e}=t;for(;e!==null&&!st(e);)({next:e}=e);return e}function F3(t){let{prev:e}=t;for(;e!==null&&!st(e);)({prev:e}=e);return e}function Fd(t){if(t.prev&&(t.prev.next=t.next),t.next&&(t.next.prev=t.prev),t.parent){let e=t.parent.children,r=e.lastIndexOf(t);r>=0&&e.splice(r,1)}t.next=null,t.prev=null,t.parent=null}function lGt(t,e){let r=e.prev=t.prev;r&&(r.next=e);let n=e.next=t.next;n&&(n.prev=e);let s=e.parent=t.parent;if(s){let i=s.children;i[i.lastIndexOf(t)]=e,t.parent=null}}function dGt(t,e){if(Fd(e),e.next=null,e.parent=t,t.children.push(e)>1){let r=t.children[t.children.length-2];r.next=e,e.prev=r}else e.prev=null}function fGt(t,e){Fd(e);let{parent:r}=t,n=t.next;if(e.next=n,e.prev=t,t.next=e,e.parent=r,n){if(n.prev=e,r){let s=r.children;s.splice(s.lastIndexOf(n),0,e)}}else r&&r.children.push(e)}function pGt(t,e){if(Fd(e),e.parent=t,e.prev=null,t.children.unshift(e)!==1){let r=t.children[1];r.prev=e,e.next=r}else e.next=null}function mGt(t,e){Fd(e);let{parent:r}=t;if(r){let n=r.children;n.splice(n.indexOf(t),0,e)}t.prev&&(t.prev.next=e),e.parent=r,e.prev=t.prev,e.next=t,t.prev=e}function _x(t,e,r=!0,n=1/0){return U3(t,Array.isArray(e)?e:[e],r,n)}function U3(t,e,r,n){let s=[],i=[Array.isArray(e)?e:[e]],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(t(o)&&(s.push(o),--n<=0))return s;r&&rn(o)&&o.children.length>0&&(a.unshift(0),i.unshift(o.children))}}function hGt(t,e){return e.find(t)}function q3(t,e,r=!0){let n=Array.isArray(e)?e:[e];for(let s=0;s0){let a=q3(t,i.children,!0);if(a)return a}}return null}function XOe(t,e){return(Array.isArray(e)?e:[e]).some(r=>st(r)&&t(r)||rn(r)&&XOe(t,r.children))}function gGt(t,e){let r=[],n=[Array.isArray(e)?e:[e]],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]++];st(i)&&t(i)&&r.push(i),rn(i)&&i.children.length>0&&(s.unshift(0),n.unshift(i.children))}}var j3={tag_name(t){return typeof t=="function"?e=>st(e)&&t(e.name):t==="*"?st:e=>st(e)&&e.name===t},tag_type(t){return typeof t=="function"?e=>t(e.type):e=>e.type===t},tag_contains(t){return typeof t=="function"?e=>za(e)&&t(e.data):e=>za(e)&&e.data===t}};function kH(t,e){return typeof e=="function"?r=>st(r)&&e(r.attribs[t]):r=>st(r)&&r.attribs[t]===e}function AGt(t,e){return r=>t(r)||e(r)}function ZOe(t){let e=Object.keys(t).map(r=>{let n=t[r];return Object.prototype.hasOwnProperty.call(j3,r)?j3[r](n):kH(r,n)});return e.length===0?null:e.reduce(AGt)}function yGt(t,e){let r=ZOe(t);return r?r(e):!0}function xGt(t,e,r,n=1/0){let s=ZOe(t);return s?_x(s,e,r,n):[]}function bGt(t,e,r=!0){return Array.isArray(e)||(e=[e]),q3(kH("id",t),e,r)}function Sh(t,e,r=!0,n=1/0){return _x(j3.tag_name(t),e,r,n)}function EGt(t,e,r=!0,n=1/0){return _x(kH("class",t),e,r,n)}function _Gt(t,e,r=!0,n=1/0){return _x(j3.tag_type(t),e,r,n)}function SGt(t){let e=t.length;for(;--e>=0;){let r=t[e];if(e>0&&t.lastIndexOf(r,e-1)>=0){t.splice(e,1);continue}for(let n=r.parent;n;n=n.parent)if(t.includes(n)){t.splice(e,1);break}}return t}var fc;(function(t){t[t.DISCONNECTED=1]="DISCONNECTED",t[t.PRECEDING=2]="PRECEDING",t[t.FOLLOWING=4]="FOLLOWING",t[t.CONTAINS=8]="CONTAINS",t[t.CONTAINED_BY=16]="CONTAINED_BY"})(fc||(fc={}));function ePe(t,e){let r=[],n=[];if(t===e)return 0;let s=rn(t)?t:t.parent;for(;s;)r.unshift(s),s=s.parent;for(s=rn(e)?e:e.parent;s;)n.unshift(s),s=s.parent;let i=Math.min(r.length,n.length),a=0;for(;ac.indexOf(l)?o===e?fc.FOLLOWING|fc.CONTAINED_BY:fc.FOLLOWING:o===t?fc.PRECEDING|fc.CONTAINS:fc.PRECEDING}function e0(t){return t=t.filter((e,r,n)=>!n.includes(e,r+1)),t.sort((e,r)=>{let n=ePe(e,r);return n&fc.PRECEDING?-1:n&fc.FOLLOWING?1:0}),t}function LH(t){let e=H3(wGt,t);return e?e.name==="feed"?vGt(e):CGt(e):null}function vGt(t){var e;let r=t.children,n={type:"atom",items:Sh("entry",r).map(a=>{var o;let{children:c}=a,u={media:tPe(c)};Ka(u,"id","id",c),Ka(u,"title","title",c);let l=(o=H3("link",c))===null||o===void 0?void 0:o.attribs.href;l&&(u.link=l);let d=t0("summary",c)||t0("content",c);d&&(u.description=d);let f=t0("updated",c);return f&&(u.pubDate=new Date(f)),u})};Ka(n,"id","id",r),Ka(n,"title","title",r);let s=(e=H3("link",r))===null||e===void 0?void 0:e.attribs.href;s&&(n.link=s),Ka(n,"description","subtitle",r);let i=t0("updated",r);return i&&(n.updated=new Date(i)),Ka(n,"author","email",r,!0),n}function CGt(t){var e,r;let n=(r=(e=H3("channel",t.children))===null||e===void 0?void 0:e.children)!==null&&r!==void 0?r:[],s={type:t.name.substr(0,3),id:"",items:Sh("item",t.children).map(a=>{let{children:o}=a,c={media:tPe(o)};Ka(c,"id","guid",o),Ka(c,"title","title",o),Ka(c,"link","link",o),Ka(c,"description","description",o);let u=t0("pubDate",o)||t0("dc:date",o);return u&&(c.pubDate=new Date(u)),c})};Ka(s,"title","title",n),Ka(s,"link","link",n),Ka(s,"description","description",n);let i=t0("lastBuildDate",n);return i&&(s.updated=new Date(i)),Ka(s,"author","managingEditor",n,!0),s}var IGt=["url","type","lang"],TGt=["fileSize","bitrate","framerate","samplingrate","channels","duration","height","width"];function tPe(t){return Sh("media:content",t).map(e=>{let{attribs:r}=e,n={medium:r.medium,isDefault:!!r.isDefault};for(let s of IGt)r[s]&&(n[s]=r[s]);for(let s of TGt)r[s]&&(n[s]=parseInt(r[s],10));return r.expression&&(n.expression=r.expression),n})}function H3(t,e){return Sh(t,e,!0,1)[0]}function t0(t,e,r=!1){return $d(Sh(t,e,r,1)).trim()}function Ka(t,e,r,n,s=!1){let i=t0(r,n,s);i&&(t[e]=i)}function wGt(t){return t==="rss"||t==="feed"||t==="rdf:RDF"}function nPe(t,e,r){return t?t(e??t._root.children,null,void 0,r).toString():""}function RGt(t,e){return!e&&typeof t=="object"&&t!=null&&!("length"in t)&&!("type"in t)}function BH(t,e){let r=RGt(t)?(e=t,void 0):t,n={...zS,...this===null||this===void 0?void 0:this._options,...KS(e??{})};return nPe(this,r,n)}function MH(t){let e={...this._options,xmlMode:!0};return nPe(this,t,e)}function Ud(t){let e=t||(this?this.root():[]),r="";for(let n=0;ndPe,attr:()=>kGt,data:()=>BGt,hasClass:()=>$Gt,prop:()=>LGt,removeAttr:()=>WGt,removeClass:()=>fPe,toggleClass:()=>pPe,val:()=>MGt});function _o(t){return t.cheerio!=null}function sPe(t){return t.replace(/[_.-](\w|$)/g,(e,r)=>r.toUpperCase())}function iPe(t){return t.replace(/[A-Z]/g,"-$&").toLowerCase()}function mn(t,e){let r=t.length;for(let n=0;nZS(n,!0)):[ZS(t,!0)],r=new Eo(e);return e.forEach(n=>{n.parent=r}),e}var vh;(function(t){t[t.LowerA=97]="LowerA",t[t.LowerZ=122]="LowerZ",t[t.UpperA=65]="UpperA",t[t.UpperZ=90]="UpperZ",t[t.Exclamation=33]="Exclamation"})(vh||(vh={}));function nv(t){let e=t.indexOf("<");if(e<0||e>t.length-3)return!1;let r=t.charCodeAt(e+1);return(r>=vh.LowerA&&r<=vh.LowerZ||r>=vh.UpperA&&r<=vh.UpperZ||r===vh.Exclamation)&&t.includes(">",e+2)}var Sx=Object.prototype.hasOwnProperty,sv=/\s+/,$H="data-",aPe={null:null,true:!0,false:!1},UH=/^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,DGt=/^{[^]*}$|^\[[^]*]$/;function G3(t,e,r){var n;if(!(!t||!st(t))){if((n=t.attribs)!==null&&n!==void 0||(t.attribs={}),!e)return t.attribs;if(Sx.call(t.attribs,e))return!r&&UH.test(e)?e:t.attribs[e];if(t.name==="option"&&e==="value")return Ud(t.children);if(t.name==="input"&&(t.attribs.type==="radio"||t.attribs.type==="checkbox")&&e==="value")return"on"}}function vx(t,e,r){r===null?lPe(t,e):t.attribs[e]=`${r}`}function kGt(t,e){if(typeof t=="object"||e!==void 0){if(typeof e=="function"){if(typeof t!="string")throw new Error("Bad combination of arguments.");return mn(this,(r,n)=>{st(r)&&vx(r,t,e.call(r,n,r.attribs[t]))})}return mn(this,r=>{st(r)&&(typeof t=="object"?Object.keys(t).forEach(n=>{let s=t[n];vx(r,n,s)}):vx(r,t,e))})}return arguments.length>1?this:G3(this[0],t,this.options.xmlMode)}function oPe(t,e,r){return e in t?t[e]:!r&&UH.test(e)?G3(t,e,!1)!==void 0:G3(t,e,r)}function FH(t,e,r,n){e in t?t[e]=r:vx(t,e,!n&&UH.test(e)?r?"":null:`${r}`)}function LGt(t,e){var r;if(typeof t=="string"&&e===void 0){let n=this[0];if(!n||!st(n))return;switch(t){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[t];return typeof URL<"u"&&(t==="href"&&(n.tagName==="a"||n.name==="link")||t==="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 rv(n);case"textContent":return $d(n);case"outerHTML":return this.clone().wrap("").parent().html();case"innerHTML":return this.html();default:return oPe(n,t,this.options.xmlMode)}}if(typeof t=="object"||e!==void 0){if(typeof e=="function"){if(typeof t=="object")throw new Error("Bad combination of arguments.");return mn(this,(n,s)=>{st(n)&&FH(n,t,e.call(n,s,oPe(n,t,this.options.xmlMode)),this.options.xmlMode)})}return mn(this,n=>{st(n)&&(typeof t=="object"?Object.keys(t).forEach(s=>{let i=t[s];FH(n,s,i,this.options.xmlMode)}):FH(n,t,e,this.options.xmlMode))})}}function cPe(t,e,r){var n;let s=t;(n=s.data)!==null&&n!==void 0||(s.data={}),typeof e=="object"?Object.assign(s.data,e):typeof e=="string"&&r!==void 0&&(s.data[e]=r)}function uPe(t,e){let r,n,s;e==null?(r=Object.keys(t.attribs).filter(i=>i.startsWith($H)),n=r.map(i=>sPe(i.slice($H.length)))):(r=[$H+iPe(e)],n=[e]);for(let i=0;i{st(i)&&(typeof t=="object"?cPe(i,t):cPe(i,t,e))}),this):Sx.call(s.data,t)?s.data[t]:uPe(s,t):uPe(s)}function MGt(t){let e=arguments.length===0,r=this[0];if(!r||!st(r))return e?void 0:this;switch(r.name){case"textarea":return this.text(t);case"select":{let n=this.find("option:selected");if(!e){if(this.attr("multiple")==null&&typeof t=="object")return this;this.find("option").removeAttr("selected");let s=typeof t!="object"?[t]:t;for(let i=0;iUd(s.children)):n.attr("value")}case"input":case"option":return e?this.attr("value"):this.attr("value",t)}}function lPe(t,e){!t.attribs||!Sx.call(t.attribs,e)||delete t.attribs[e]}function V3(t){return t?t.trim().split(sv):[]}function WGt(t){let e=V3(t);for(let r=0;r{st(n)&&lPe(n,e[r])});return this}function $Gt(t){return this.toArray().some(e=>{let r=st(e)&&e.attribs.class,n=-1;if(r&&t.length)for(;(n=r.indexOf(t,n+1))>-1;){let s=n+t.length;if((n===0||sv.test(r[n-1]))&&(s===r.length||sv.test(r[s])))return!0}return!1})}function dPe(t){if(typeof t=="function")return mn(this,(n,s)=>{if(st(n)){let i=n.attribs.class||"";dPe.call([n],t.call(n,s,i))}});if(!t||typeof t!="string")return this;let e=t.split(sv),r=this.length;for(let n=0;n{st(s)&&fPe.call([s],t.call(s,i,s.attribs.class||""))});let e=V3(t),r=e.length,n=arguments.length===0;return mn(this,s=>{if(st(s))if(n)s.attribs.class="";else{let i=V3(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 pPe(t,e){if(typeof t=="function")return mn(this,(a,o)=>{st(a)&&pPe.call([a],t.call(a,o,a.attribs.class||"",e),e)});if(!t||typeof t!="string")return this;let r=t.split(sv),n=r.length,s=typeof e=="boolean"?e?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 dQ={};is(dQ,{add:()=>VVt,addBack:()=>zVt,children:()=>OVt,closest:()=>SVt,contents:()=>PVt,each:()=>DVt,end:()=>GVt,eq:()=>UVt,filter:()=>LVt,filterArray:()=>lQ,find:()=>xVt,first:()=>$Vt,get:()=>qVt,has:()=>WVt,index:()=>HVt,is:()=>BVt,last:()=>FVt,map:()=>kVt,next:()=>vVt,nextAll:()=>CVt,nextUntil:()=>IVt,not:()=>MVt,parent:()=>bVt,parents:()=>EVt,parentsUntil:()=>_Vt,prev:()=>TVt,prevAll:()=>wVt,prevUntil:()=>RVt,siblings:()=>NVt,slice:()=>QVt,toArray:()=>jVt});var Ja=Re(wx(),1);var eQ=Re(s0(),1);var su=Re(wx(),1),jd=Re(s0(),1);var ua=Re(wx(),1),wPe=new Map([[ua.SelectorType.Universal,50],[ua.SelectorType.Tag,30],[ua.SelectorType.Attribute,1],[ua.SelectorType.Pseudo,0]]);function av(t){return!wPe.has(t.type)}var eVt=new Map([[ua.AttributeAction.Exists,10],[ua.AttributeAction.Equals,8],[ua.AttributeAction.Not,7],[ua.AttributeAction.Start,6],[ua.AttributeAction.End,6],[ua.AttributeAction.Any,5]]);function HH(t){let e=t.map(RPe);for(let r=1;r=0&&n>=1)):t.type===ua.SelectorType.Pseudo&&(t.data?t.name==="has"||t.name==="contains"?n=0:Array.isArray(t.data)?(n=Math.min(...t.data.map(s=>Math.min(...s.map(RPe)))),n<0&&(n=0)):n=2:n=3),n}var ov=Re(s0(),1),tVt=/[-[\]{}()*+?.,\\^$|#\s]/g;function NPe(t){return t.replace(tVt,"\\$&")}var rVt=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 Ch(t,e){return typeof t.ignoreCase=="boolean"?t.ignoreCase:t.ignoreCase==="quirks"?!!e.quirksMode:!e.xmlMode&&rVt.has(t.name)}var OPe={equals(t,e,r){let{adapter:n}=r,{name:s}=e,{value:i}=e;return Ch(e,r)?(i=i.toLowerCase(),a=>{let o=n.getAttributeValue(a,s);return o!=null&&o.length===i.length&&o.toLowerCase()===i&&t(a)}):a=>n.getAttributeValue(a,s)===i&&t(a)},hyphen(t,e,r){let{adapter:n}=r,{name:s}=e,{value:i}=e,a=i.length;return Ch(e,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&&t(c)}):function(c){let u=n.getAttributeValue(c,s);return u!=null&&(u.length===a||u.charAt(a)==="-")&&u.substr(0,a)===i&&t(c)}},element(t,e,r){let{adapter:n}=r,{name:s,value:i}=e;if(/\s/.test(i))return ov.default.falseFunc;let a=new RegExp(`(?:^|\\s)${NPe(i)}(?:$|\\s)`,Ch(e,r)?"i":"");return function(c){let u=n.getAttributeValue(c,s);return u!=null&&u.length>=i.length&&a.test(u)&&t(c)}},exists(t,{name:e},{adapter:r}){return n=>r.hasAttrib(n,e)&&t(n)},start(t,e,r){let{adapter:n}=r,{name:s}=e,{value:i}=e,a=i.length;return a===0?ov.default.falseFunc:Ch(e,r)?(i=i.toLowerCase(),o=>{let c=n.getAttributeValue(o,s);return c!=null&&c.length>=a&&c.substr(0,a).toLowerCase()===i&&t(o)}):o=>{var c;return!!(!((c=n.getAttributeValue(o,s))===null||c===void 0)&&c.startsWith(i))&&t(o)}},end(t,e,r){let{adapter:n}=r,{name:s}=e,{value:i}=e,a=-i.length;return a===0?ov.default.falseFunc:Ch(e,r)?(i=i.toLowerCase(),o=>{var c;return((c=n.getAttributeValue(o,s))===null||c===void 0?void 0:c.substr(a).toLowerCase())===i&&t(o)}):o=>{var c;return!!(!((c=n.getAttributeValue(o,s))===null||c===void 0)&&c.endsWith(i))&&t(o)}},any(t,e,r){let{adapter:n}=r,{name:s,value:i}=e;if(i==="")return ov.default.falseFunc;if(Ch(e,r)){let a=new RegExp(NPe(i),"i");return function(c){let u=n.getAttributeValue(c,s);return u!=null&&u.length>=i.length&&a.test(u)&&t(c)}}return a=>{var o;return!!(!((o=n.getAttributeValue(a,s))===null||o===void 0)&&o.includes(i))&&t(a)}},not(t,e,r){let{adapter:n}=r,{name:s}=e,{value:i}=e;return i===""?a=>!!n.getAttributeValue(a,s)&&t(a):Ch(e,r)?(i=i.toLowerCase(),a=>{let o=n.getAttributeValue(a,s);return(o==null||o.length!==i.length||o.toLowerCase()!==i)&&t(a)}):a=>n.getAttributeValue(a,s)!==i&&t(a)}};var LPe=Re(wx(),1);var nVt=new Set([9,10,12,13,32]),PPe=48,sVt=57;function DPe(t){if(t=t.trim().toLowerCase(),t==="even")return[2,0];if(t==="odd")return[2,1];let e=0,r=0,n=i(),s=a();if(e=PPe&&t.charCodeAt(e)<=sVt;)u=u*10+(t.charCodeAt(e)-PPe),e++;return e===c?null:u}function o(){for(;ei<=r;if(e===0)return i=>i===r;if(e===1)return r<0?QH.default.trueFunc:i=>i>=r;let n=Math.abs(e),s=(r%n+n)%n;return e>1?i=>i>=r&&i%n===s:i=>i<=r&&i%n===s}function Rx(t){return kPe(DPe(t))}var Ya=Re(s0(),1);function Y3(t,e){return r=>{let n=e.getParent(r);return n!=null&&e.isTag(n)&&t(r)}}var Nx={contains(t,e,{adapter:r}){return function(s){return t(s)&&r.getText(s).includes(e)}},icontains(t,e,{adapter:r}){let n=e.toLowerCase();return function(i){return t(i)&&r.getText(i).toLowerCase().includes(n)}},"nth-child"(t,e,{adapter:r,equals:n}){let s=Rx(e);return s===Ya.default.falseFunc?Ya.default.falseFunc:s===Ya.default.trueFunc?Y3(t,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)&&t(a)}},"nth-of-type"(t,e,{adapter:r,equals:n}){let s=Rx(e);return s===Ya.default.falseFunc?Ya.default.falseFunc:s===Ya.default.trueFunc?Y3(t,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)&&t(a)}},root(t,e,{adapter:r}){return n=>{let s=r.getParent(n);return(s==null||!r.isTag(s))&&t(n)}},scope(t,e,r,n){let{equals:s}=r;return!n||n.length===0?Nx.root(t,e,r):n.length===1?i=>s(n[0],i)&&t(i):i=>n.includes(i)&&t(i)},hover:GH("isHovered"),visited:GH("isVisited"),active:GH("isActive")};function GH(t){return function(r,n,{adapter:s}){let i=s[t];return typeof i!="function"?Ya.default.falseFunc:function(o){return i(o)&&r(o)}}}var cv={empty(t,{adapter:e}){return!e.getChildren(t).some(r=>e.isTag(r)||e.getText(r)!=="")},"first-child"(t,{adapter:e,equals:r}){if(e.prevElementSibling)return e.prevElementSibling(t)==null;let n=e.getSiblings(t).find(s=>e.isTag(s));return n!=null&&r(t,n)},"last-child"(t,{adapter:e,equals:r}){let n=e.getSiblings(t);for(let s=n.length-1;s>=0;s--){if(r(t,n[s]))return!0;if(e.isTag(n[s]))break}return!1},"first-of-type"(t,{adapter:e,equals:r}){let n=e.getSiblings(t),s=e.getName(t);for(let i=0;i=0;i--){let a=n[i];if(r(t,a))return!0;if(e.isTag(a)&&e.getName(a)===s)break}return!1},"only-of-type"(t,{adapter:e,equals:r}){let n=e.getName(t);return e.getSiblings(t).every(s=>r(t,s)||!e.isTag(s)||e.getName(s)!==n)},"only-child"(t,{adapter:e,equals:r}){return e.getSiblings(t).every(n=>r(t,n)||!e.isTag(n))}};function VH(t,e,r,n){if(r===null){if(t.length>n)throw new Error(`Pseudo-class :${e} requires an argument`)}else if(t.length===n)throw new Error(`Pseudo-class :${e} doesn't have any arguments`)}var J3={"any-link":":is(a, area, link)[href]",link:":any-link:not(:visited)",disabled:`:is( +`),n=!1,s=!1,i;t.on("response",a=>{let{headers:o}=a;n=o["transfer-encoding"]==="chunked"&&!o["content-length"]}),t.on("socket",a=>{let o=()=>{if(n&&!s){let u=new Error("Premature close");u.code="ERR_STREAM_PREMATURE_CLOSE",e(u)}},c=u=>{s=CC.Buffer.compare(u.slice(-5),r)===0,!s&&i&&(s=CC.Buffer.compare(i.slice(-3),r.slice(0,3))===0&&CC.Buffer.compare(u.slice(-2),r.slice(3))===0),i=u};a.prependListener("close",o),a.on("data",c),t.on("close",()=>{a.removeListener("close",o),a.removeListener("data",c)})})}var vUe,SUe,Ig,Wo,CC,odr,TC=gr(()=>{vUe=Ce(require("node:http"),1),SUe=Ce(require("node:https"),1),Ig=Ce(require("node:zlib"),1),Wo=Ce(require("node:stream"),1),CC=require("node:buffer");D$e();tL();cUe();nL();_Ue();OY();EUe();$Y();zB();YB();UY();DY();odr=new Set(["data:","http:","https:"])});function In(t){return udr[t]||t}function FY(t,e){if(!t)return()=>{};if(t.aborted)return e.abort(),()=>{};let r=()=>{e.abort()};return t.addEventListener("abort",r,{once:!0}),()=>{t.removeEventListener("abort",r)}}async function Ae(t,e={}){let r=parseInt(e.retries||"0",10)||0,n=Array.isArray(e.validStatusCodes)?e.validStatusCodes:[],s;for(let a=0;a<=r;a++){let o=_e.getStore()||"system";a>0?(E("info",`[${o}] [\u8BF7\u6C42\u6A21\u62DF] \u7B2C ${a} \u6B21\u91CD\u8BD5: ${t}`),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)))):E("info",`[${o}] [\u8BF7\u6C42\u6A21\u62DF] HTTP GET: ${t}`);let c=parseInt(e.timeout||O.vodRequestTimeout||"5000",10)||5e3,u=new AbortController,l=setTimeout(()=>u.abort(),c),d=FY(e.signal,u);try{let f;if(typeof WebAssembly>"u"){E("info","[Utils] [HTTP] iOS\u73AF\u5883\u964D\u7EA7\u4F7F\u7528node-fetch");let g=(await Promise.resolve().then(()=>(TC(),sL))).default;f=await g(t,{method:"GET",headers:{...e.headers},signal:u.signal})}else f=await fetch(t,{method:"GET",headers:{...e.headers},signal:u.signal});if(clearTimeout(l),!f.ok&&!n.includes(f.status))throw new Error(`HTTP error! status: ${f.status}`);let p;if(e.base64Data){E("info","[Utils] [HTTP] base64\u6A21\u5F0F");let g=await f.arrayBuffer(),b=new Uint8Array(g),x="",A=32768;for(let S=0;S0&&(h["set-cookie"]=y.join(";")),a>0&&E("info",`[${o}] [\u8BF7\u6C42\u6A21\u62DF] \u91CD\u8BD5\u6210\u529F`),{data:m,status:f.status,headers:h}}catch(f){clearTimeout(l),s=f;let p=_e.getStore()||"system";if(e.signal?.aborted)throw f;if(f.name==="AbortError"?(E("error",`[${p}] [\u8BF7\u6C42\u6A21\u62DF] \u8BF7\u6C42\u8D85\u65F6:`,f.message),E("error","\u8BE6\u7EC6\u8BCA\u65AD:"),E("error","- URL:",t),E("error","- \u8D85\u65F6\u65F6\u95F4:",`${c}ms`),E("error",`- \u5F53\u524D\u5C1D\u8BD5: ${a+1}/${r+1}`)):(E("error",`[${p}] [\u8BF7\u6C42\u6A21\u62DF] \u8BF7\u6C42\u5931\u8D25:`,f.message),E("error","\u8BE6\u7EC6\u8BCA\u65AD:"),E("error","- URL:",t),E("error","- \u9519\u8BEF\u7C7B\u578B:",f.name),E("error","- \u6D88\u606F:",f.message),E("error",`- \u5F53\u524D\u5C1D\u8BD5: ${a+1}/${r+1}`),f.cause&&(E("error","- \u7801:",f.cause.code),E("error","- \u539F\u56E0:",f.cause.message))),a0?(E("info",`[${c}] [\u8BF7\u6C42\u6A21\u62DF] \u7B2C ${o} \u6B21\u91CD\u8BD5: ${t}`),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)))):E("info",`[${c}] [\u8BF7\u6C42\u6A21\u62DF] HTTP POST: ${t}`);let u=parseInt(r.timeout||O.vodRequestTimeout||"5000",10)||5e3,l=new AbortController,d=setTimeout(()=>l.abort(),u),f=FY(r.signal,l),{headers:p={},params:m,allow_redirects:h=!0}=r,y={method:"POST",headers:{...p},body:e,signal:l.signal};h||(y.redirect="manual");try{let g;if(typeof WebAssembly>"u"){E("info","[Utils] [HTTP] iOS\u73AF\u5883\u964D\u7EA7\u4F7F\u7528node-fetch");let A=(await Promise.resolve().then(()=>(TC(),sL))).default;g=await A(t,y)}else g=await fetch(t,y);clearTimeout(d);let b=await g.text();if(!g.ok&&!s.includes(g.status))throw E("error",`[${c}] [\u8BF7\u6C42\u6A21\u62DF] response data: `,b),new Error(`HTTP error! status: ${g.status}`);let x;try{x=JSON.parse(b)}catch{x=b}return o>0&&E("info",`[${c}] [\u8BF7\u6C42\u6A21\u62DF] \u91CD\u8BD5\u6210\u529F`),{data:x,status:g.status,headers:Object.fromEntries(g.headers.entries())}}catch(g){clearTimeout(d),i=g;let b=_e.getStore()||"system";if(r.signal?.aborted)throw g;if(g.name==="AbortError"?(E("error",`[${b}] [\u8BF7\u6C42\u6A21\u62DF] \u8BF7\u6C42\u8D85\u65F6:`,g.message),E("error","\u8BE6\u7EC6\u8BCA\u65AD:"),E("error","- URL:",t),E("error","- \u8D85\u65F6\u65F6\u95F4:",`${u}ms`),E("error",`- \u5F53\u524D\u5C1D\u8BD5: ${o+1}/${n+1}`)):(E("error",`[${b}] [\u8BF7\u6C42\u6A21\u62DF] \u8BF7\u6C42\u5931\u8D25:`,g.message),E("error","\u8BE6\u7EC6\u8BCA\u65AD:"),E("error","- URL:",t),E("error","- \u9519\u8BEF\u7C7B\u578B:",g.name),E("error","- \u6D88\u606F:",g.message),E("error",`- \u5F53\u524D\u5C1D\u8BD5: ${o+1}/${n+1}`),g.cause&&(E("error","- \u7801:",g.cause.code),E("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():t}catch(e){let r=_e.getStore()||"system";return E("error",`[${r}] \u83B7\u53D6\u6807\u9898\u5931\u8D25: ${e.message}`),t}}function We(t,e=200){return new Response(JSON.stringify(t),{status:e,headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*"}})}function wUe(t,e=200){if(typeof t!="string"||!t.trim().startsWith("s,n="";for(let s in t)t.hasOwnProperty(s)&&(n.length>0&&(n+="&"),n+=r(s)+"="+r(t[s]));return n}function wC(t={}){let e={};for(let[s,i]of Object.entries(t))typeof i=="boolean"?e[s]=i?"true":"false":i==null?e[s]="":e[s]=String(i);let r=[];for(let s in e)Object.prototype.hasOwnProperty.call(e,s)&&r.push(s);r.sort();let n=[];for(let s of r){let i=encodeURIComponent(s),a=encodeURIComponent(e[s]);n.push(`${i}=${a}`)}return n.join("&")}function Gb(t,e){let r=t,n="",s=t.indexOf("#"),i="";s!==-1&&(r=t.substring(0,s),i=t.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 e)Object.prototype.hasOwnProperty.call(e,u)&&(o[u]=e[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 RUe(t){let e=t.indexOf("//")+2;e===1&&(e=0);let r=t.indexOf("/",e);if(r===-1)return"/";let n=t.indexOf("?",r),s=t.indexOf("#",r),i=n!==-1?n:s!==-1?s:t.length;return t.substring(r,i)||"/"}async function jY(t,e={},r){let{headers:n={},sniffLimit:s}=e,i=parseInt(s||"32768",10)||32768,a=parseInt(e.timeout||O.vodRequestTimeout||"5000",10)||5e3,o=new AbortController,c=setTimeout(()=>o.abort(),a),u=FY(e.signal,o);try{let l=_e.getStore()||"system";E("info",`[${l}] [\u6D41\u5F0F\u8BF7\u6C42] HTTP GET: ${t}`);let d=await fetch(t,{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 S=_e.getStore()||"system";E("warn",`[${S}] [\u6D41\u5F0F\u8BF7\u6C42] \u73AF\u5883\u4E0D\u652F\u6301\u6D41\u5F0F\u8BFB\u53D6,\u56DE\u9000\u5230\u666E\u901A\u8BF7\u6C42`);let I=await d.text();if(clearTimeout(c),r&&!r(I.slice(0,i)))return E("info",`[${S}] [\u6D41\u5F0F\u8BF7\u6C42] \u68C0\u6D4B\u5230\u65E0\u6548\u6570\u636E(\u56DE\u9000\u6A21\u5F0F),\u4E22\u5F03\u7ED3\u679C`),null;try{return JSON.parse(I)}catch{return I}}let p=0,m=[],h=!1,y="",g=!1;for(;;){let{done:S,value:I}=await f.read();if(S)break;if(p+=I.length,!g&&r){let R=new TextDecoder("utf-8").decode(I,{stream:!0});if(y+=R,!r(y)){let w=_e.getStore()||"system";E("info",`[${w}] [\u6D41\u5F0F\u8BF7\u6C42] \u55C5\u63A2\u5230\u65E0\u6548\u7279\u5F81(\u5DF2\u8BFB${p}\u5B57\u8282),\u7ACB\u5373\u7194\u65AD`),o.abort(),h=!0;break}p>i&&(g=!0,y=null)}m.push(I)}if(clearTimeout(c),h)return null;let b=new Uint8Array(p),x=0;for(let S of m)b.set(S,x),x+=S.length;let A=new TextDecoder("utf-8").decode(b);try{return JSON.parse(A)}catch{return A}}catch(l){let d=_e.getStore()||"system";return clearTimeout(c),l.name==="AbortError"||E("error",`[${d}] [\u6D41\u5F0F\u8BF7\u6C42] \u5931\u8D25: ${l.message}`),null}finally{u()}}var IUe,_e,udr,dr=gr(()=>{kt();vt();IUe=require("node:async_hooks"),_e=new IUe.AsyncLocalStorage,udr={360:"360kan",imgo:"mango"}});function sn(t){let e=0;for(let r=0;r>>0}return e.toString(16)}function zb(t,e){return t==="lastSelectMap"&&e instanceof Map?JSON.stringify(Object.fromEntries(e)):JSON.stringify(e)}function Ms(t){function e(x){let A="";for(let S=0;S>6),A+=String.fromCharCode(128|I&63)):(A+=String.fromCharCode(224|I>>12),A+=String.fromCharCode(128|I>>6&63),A+=String.fromCharCode(128|I&63))}return A}t=e(t);function r(x,A){return x<>>32-A}function n(x,A){let S=x&1073741824,I=A&1073741824,R=x&2147483648,w=A&2147483648,N=(x&1073741823)+(A&1073741823);return S&I?N^2147483648^R^w:S|I?N&1073741824?N^3221225472^R^w:N^1073741824^R^w:N^R^w}function s(x,A,S){return x&A|~x&S}function i(x,A,S){return x&S|A&~S}function a(x,A,S){return x^A^S}function o(x,A,S){return A^(x|~S)}function c(x,A,S,I,R,w,N){return x=n(x,n(n(s(A,S,I),R),N)),n(r(x,w),A)}function u(x,A,S,I,R,w,N){return x=n(x,n(n(i(A,S,I),R),N)),n(r(x,w),A)}function l(x,A,S,I,R,w,N){return x=n(x,n(n(a(A,S,I),R),N)),n(r(x,w),A)}function d(x,A,S,I,R,w,N){return x=n(x,n(n(o(A,S,I),R),N)),n(r(x,w),A)}function f(x){let A=x.length,S=((A+8>>>6)+1)*16,I=new Array(S).fill(0);for(let R=0;R>2]|=x.charCodeAt(R)<>2]|=128<>>S*8&255).toString(16);A+=R.substr(R.length-2,2)}return A}let m=f(t),h=1732584193,y=4023233417,g=2562383102,b=271733878;for(let x=0;x>3,d=u&7;if(d===0){let[f,p]=GY(i,o);switch(o=p,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,p]=NUe(i,o);switch(o=p,l){case 6:c.midHash=Lc(f);break;case 7:c.content=Lc(f);break;case 10:c.action=Lc(f);break;case 12:c.idStr=Lc(f);break;case 14:c.animation=Lc(f);break;case 16:c.color_v2=Lc(f);break}}else{let[f,p]=GY(i,o);o=p}}r.push(c)}return r}function GY(t,e){let r=0n,n=0n,s=e;for(;;){let i=t[s++];if(r|=BigInt(i&127)<>>0)%9999999,e<1e4?e+1e4:e}function OUe(t,e){let r=new Uint8Array(t.length);for(let n=0;nDUe[e]))}function oL(t){let s=new Array(44);for(let i=0;i<4;i++)s[i]=t.slice(4*i,4*i+4);for(let i=4;i<4*11;i++){let a=s[i-1];i%4===0&&(a=OUe(aL(ddr(a)),Uint8Array.from([ldr[i/4],0,0,0]))),s[i]=OUe(s[i-4],a)}return s}function fdr(t,e){let s=new Uint8Array(t);s=QY(s,e.slice(10*4,11*4));for(let i=9;i>=1;i--)s=NC(s),s=RC(s),s=QY(s,e.slice(i*4,(i+1)*4)),s=pdr(s);return s=NC(s),s=RC(s),s=QY(s,e.slice(0,4)),s}function QY(t,e){let r=new Uint8Array(16);for(let n=0;n<4;n++)for(let s=0;s<4;s++)r[s+4*n]=t[s+4*n]^e[n][s];return r}function RC(t){let e=new Array(256);for(let r=0;r<256;r++)e[DUe[r]]=r;return Uint8Array.from(t.map(r=>e[r]))}function NC(t){let e=new Uint8Array(16);for(let r=0;r<4;r++)for(let n=0;n<4;n++)e[r+4*n]=t[r+4*((n-r+4)%4)];return e}function pdr(t){function e(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=t.slice(4*n,4*n+4);r[4*n+0]=e(s[0],14)^e(s[1],11)^e(s[2],13)^e(s[3],9),r[4*n+1]=e(s[0],9)^e(s[1],14)^e(s[2],11)^e(s[3],13),r[4*n+2]=e(s[0],13)^e(s[1],9)^e(s[2],14)^e(s[3],11),r[4*n+3]=e(s[0],11)^e(s[1],13)^e(s[2],9)^e(s[3],14)}return r}function mdr(t,e){let r=oL(e),n=16,s=new Uint8Array(t.length);for(let i=0;i=8&&(s-=8,r+=String.fromCharCode(n>>s&255))}return r}function Lc(t){let e="",r=0;for(;r=192&&n<224){let s=t[r++];e+=String.fromCharCode((n&31)<<6|s&63)}else if(n>=224&&n<240){let s=t[r++],i=t[r++];e+=String.fromCharCode((n&15)<<12|(s&63)<<6|i&63)}else if(n>=240){let s=t[r++],i=t[r++],a=t[r++],c=((n&7)<<18|(s&63)<<12|(i&63)<<6|a&63)-65536;e+=String.fromCharCode(55296+(c>>10),56320+(c&1023))}}return e}function Tg(t){let e=[];for(let r=0;r>6),e.push(128|n&63);else if(n<55296||n>=57344)e.push(224|n>>12),e.push(128|n>>6&63),e.push(128|n&63);else{r++;let s=t.charCodeAt(r),i=65536+((n&1023)<<10|s&1023);e.push(240|i>>18),e.push(128|i>>12&63),e.push(128|i>>6&63),e.push(128|i&63)}}return new Uint8Array(e)}function ydr(t,e){try{let r=Cg(t),n=Tg(e),s=mdr(r,n),i=hdr(s);return Lc(i)}catch(r){return E("error","[Utils] [Codec]",r),null}}function OC(t){let e=typeof t=="string"?t.trim():JSON.stringify(t??"");try{return JSON.parse(e)}catch{}let n=ydr(e,"3b744389882a4067");if(n!=null)try{return JSON.parse(n)}catch{return n}return e}function Adr(t){let e=[];for(let r=0;r>6),e.push(128|n&63)):n<65536&&(e.push(224|n>>12),e.push(128|n>>6&63),e.push(128|n&63))}return e}function cL(t){let e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",r="",n;for(n=0;n+2>2],r+=e[(t[n]&3)<<4|t[n+1]>>4],r+=e[(t[n+1]&15)<<2|t[n+2]>>6],r+=e[t[n+2]&63];return n>2],n+1>4],r+=e[(t[n+1]&15)<<2],r+="="):(r+=e[(t[n]&3)<<4],r+="==")),r}function HY(t){function e(u,l){return l>>>u|l<<32-u}let r=Math.pow(2,32),n=[],s=t.length*8;for(let u=0;u>2]|=t.charCodeAt(u)<<(3-u)%4*8;n[t.length>>2]|=128<<(3-t.length%4)*8,n[(t.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,k=e(17,i[b-2])^e(19,i[b-2])^i[b-2]>>>10;i[b]=i[b-16]+N+i[b-7]+k|0}let x=e(6,m)^e(11,m)^e(25,m),A=m&h^~m&y,S=g+x+A+o[b]+i[b]|0,I=e(2,l)^e(13,l)^e(22,l),R=l&d^l&f^d&f,w=I+R|0;g=y,y=h,h=m,m=p+S|0,p=f,f=d,d=l,l=S+w|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]+m|0,a[5]=a[5]+h|0,a[6]=a[6]+y|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 BUe(t,e){let n=Adr(t);n.length>64&&(n=HY(t)),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=HY(String.fromCharCode(...i)+e),o=HY(String.fromCharCode(...s)+String.fromCharCode(...a));return cL(o)}function kC(t,e,r,n){let s=t+"t"+e;return r&&Object.keys(r).sort().forEach(a=>{s+=a+r[a]}),s+=n,Ms(s)}function kUe(t){if(t<=65535)return String.fromCharCode(t);t-=65536;let e=(t>>10)+55296,r=(t&1023)+56320;return String.fromCharCode(e,r)}function If(t){if(!t)return t;let e={"<":"<",">":">","&":"&",""":'"',"'":"'"};return t.replace(/&[a-zA-Z]+;/g,r=>e[r]||r).replace(/&#(\d+);/g,(r,n)=>kUe(parseInt(n,10))).replace(/&#x([0-9a-fA-F]+);/g,(r,n)=>kUe(parseInt(n,16)))}var DUe,ldr,ws=gr(()=>{vt();DUe=[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],ldr=[0,1,2,4,8,16,32,64,128,27,54]});var MUe={};os(MUe,{getRedisCaches:()=>VY,getRedisKey:()=>xdr,judgeRedisValid:()=>YY,pingRedis:()=>LUe,runPipeline:()=>KY,setRedisKey:()=>zY,setRedisKeyWithExpiry:()=>bdr,updateRedisCaches:()=>uL});async function LUe(){let t=`${O.redisUrl}/ping`;E("info","[Utils] [Redis] \u5F00\u59CB\u53D1\u9001 PING \u8BF7\u6C42:",t);try{return await(await fetch(t,{method:"GET",headers:{Authorization:`Bearer ${O.redisToken}`}})).json()}catch(e){E("error","[Utils] [Redis] \u8BF7\u6C42\u5931\u8D25:",e.message),E("error","- [Utils] [Redis] \u9519\u8BEF\u7C7B\u578B:",e.name),e.cause&&(E("error","- [Utils] [Redis] \u7801:",e.cause.code),E("error","- [Utils] [Redis] \u539F\u56E0:",e.cause.message))}}async function xdr(t){let e=`${O.redisUrl}/get/${t}`;E("info","[Utils] [Redis] \u5F00\u59CB\u53D1\u9001 GET \u8BF7\u6C42:",e);try{return await(await fetch(e,{method:"GET",headers:{Authorization:`Bearer ${O.redisToken}`}})).json()}catch(r){E("error","[Utils] [Redis] \u8BF7\u6C42\u5931\u8D25:",r.message),E("error","- [Utils] [Redis] \u9519\u8BEF\u7C7B\u578B:",r.name),r.cause&&(E("error","- [Utils] [Redis] \u7801:",r.cause.code),E("error","- [Utils] [Redis] \u539F\u56E0:",r.cause.message))}}async function zY(t,e){let r=zb(t,e),n=sn(r);if(O.lastHashes[t]===n)return E("info",`[Utils] [Redis] \u952E ${t} \u65E0\u53D8\u5316\uFF0C\u8DF3\u8FC7 SET \u8BF7\u6C42`),{result:"OK"};let s=`${O.redisUrl}/set/${t}`;E("info","[Utils] [Redis] \u5F00\u59CB\u53D1\u9001 SET \u8BF7\u6C42:",s);try{let a=await(await fetch(s,{method:"POST",headers:{Authorization:`Bearer ${O.redisToken}`,"Content-Type":"application/json"},body:r})).json();return O.lastHashes[t]=n,E("info",`[Utils] [Redis] \u952E ${t} \u66F4\u65B0\u6210\u529F`),a}catch(i){E("error","[Utils] [Redis] SET \u8BF7\u6C42\u5931\u8D25:",i.message),E("error","- [Utils] [Redis] \u9519\u8BEF\u7C7B\u578B:",i.name),i.cause&&(E("error","- [Utils] [Redis] \u7801:",i.cause.code),E("error","- [Utils] [Redis] \u539F\u56E0:",i.cause.message))}}async function bdr(t,e,r){let n=zb(t,e),s=sn(n);if(O.lastHashes[t]===s)return E("info",`[Utils] [Redis] \u952E ${t} \u65E0\u53D8\u5316\uFF0C\u8DF3\u8FC7 SETEX \u8BF7\u6C42`),{result:"OK"};let i=`${O.redisUrl}/set/${t}?EX=${r}`;E("info","[Utils] [Redis] \u5F00\u59CB\u53D1\u9001 SETEX \u8BF7\u6C42:",i);try{let o=await(await fetch(i,{method:"POST",headers:{Authorization:`Bearer ${O.redisToken}`,"Content-Type":"application/json"},body:n})).json();return O.lastHashes[t]=s,E("info",`[Utils] [Redis] \u952E ${t} \u66F4\u65B0\u6210\u529F\uFF08\u5E26\u8FC7\u671F\u65F6\u95F4 ${r}s\uFF09`),o}catch(a){E("error","[Utils] [Redis] SETEX \u8BF7\u6C42\u5931\u8D25:",a.message),E("error","- [Utils] [Redis] \u9519\u8BEF\u7C7B\u578B:",a.name),a.cause&&(E("error","- [Utils] [Redis] \u7801:",a.cause.code),E("error","- [Utils] [Redis] \u539F\u56E0:",a.cause.message))}}async function KY(t){let e=`${O.redisUrl}/pipeline`;E("info","[Utils] [Redis] \u5F00\u59CB\u53D1\u9001 PIPELINE \u8BF7\u6C42:",e);try{return await(await fetch(e,{method:"POST",headers:{Authorization:`Bearer ${O.redisToken}`,"Content-Type":"application/json"},body:JSON.stringify(t)})).json()}catch(r){E("error","[Utils] [Redis] Pipeline \u8BF7\u6C42\u5931\u8D25:",r.message),E("error","- [Utils] [Redis] \u9519\u8BEF\u7C7B\u578B:",r.name),r.cause&&(E("error","- [Utils] [Redis] \u7801:",r.cause.code),E("error","- [Utils] [Redis] \u539F\u56E0:",r.cause.message))}}async function VY(){if(!O.redisCacheInitialized)try{E("info","[Utils] [Redis] getRedisCaches start.");let e=["animes","episodeIds","episodeNum","reqRecords","lastSelectMap","todayReqNum"].map(s=>["GET",s]),r=await KY(e);O.animes=r[0].result?JSON.parse(r[0].result):O.animes,O.episodeIds=r[1].result?JSON.parse(r[1].result):O.episodeIds,O.episodeNum=r[2].result?JSON.parse(r[2].result):O.episodeNum,O.reqRecords=r[3].result?JSON.parse(r[3].result):O.reqRecords;let n=r[4].result?JSON.parse(r[4].result):null;n&&typeof n=="object"&&(O.lastSelectMap=new Map(Object.entries(n)),E("info",`[Utils] [Redis] Restored lastSelectMap from Redis with ${O.lastSelectMap.size} entries`)),O.todayReqNum=r[5].result?parseInt(r[5].result,10):O.todayReqNum,O.lastHashes.animes=sn(JSON.stringify(O.animes)),O.lastHashes.episodeIds=sn(JSON.stringify(O.episodeIds)),O.lastHashes.episodeNum=sn(JSON.stringify(O.episodeNum)),O.lastHashes.reqRecords=sn(JSON.stringify(O.reqRecords)),O.lastHashes.lastSelectMap=sn(JSON.stringify(Object.fromEntries(O.lastSelectMap))),O.lastHashes.todayReqNum=sn(JSON.stringify(O.todayReqNum)),O.redisCacheInitialized=!0,E("info","[Utils] [Redis] getRedisCaches completed successfully.")}catch(t){E("error",`[Utils] [Redis] getRedisCaches failed: ${t.message}`,t.stack),O.redisCacheInitialized=!0}}async function uL(){try{E("info","[Utils] [Redis] updateCaches start.");let t=[],e=[],r=[{key:"animes",value:O.animes},{key:"episodeIds",value:O.episodeIds},{key:"episodeNum",value:O.episodeNum},{key:"reqRecords",value:O.reqRecords},{key:"lastSelectMap",value:O.lastSelectMap},{key:"todayReqNum",value:O.todayReqNum}];for(let{key:n,value:s}of r){let i=JSON.stringify(n==="lastSelectMap"?Object.fromEntries(s):s),a=sn(i);a!==O.lastHashes[n]&&(t.push(["SET",n,i]),e.push({key:n,hash:a}))}if(t.length>0){E("info",`[Utils] [Redis] Updating ${t.length} changed keys: ${e.map(a=>a.key).join(", ")}`);let n=await KY(t),s=0,i=0;Array.isArray(n)&&n.forEach((a,o)=>{a&&a.result==="OK"?s++:(i++,E("warn",`[Utils] [Redis] Failed to update Redis key: ${e[o]?.key}, result: ${JSON.stringify(a)}`))}),i===0?(e.forEach(({key:a,hash:o})=>{O.lastHashes[a]=o}),E("info",`[Utils] [Redis] Redis update completed successfully: ${s} keys updated`)):E("warn",`[Utils] [Redis] Redis update partially failed: ${s} succeeded, ${i} failed`)}else E("info","[Utils] [Redis] No changes detected, skipping Redis update.")}catch(t){E("error",`[Utils] [Redis] updateRedisCaches failed: ${t.message}`,t.stack),E("error",`[Utils] [Redis] Error details - Name: ${t.name}, Cause: ${t.cause?t.cause.message:"N/A"}`)}}async function YY(t){if(!O.redisValid&&O.redisUrl&&O.redisToken&&t!=="/favicon.ico"&&t!=="/robots.txt"){let e=await LUe();e&&e.result&&e.result==="PONG"&&(O.redisValid=!0)}}var lL=gr(()=>{kt();vt();ws()});function WUe(){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 JY(){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 $o(t){let e="";for(let r=0;r{_dr=new Map([["\u5403","\u5403"],["\u6CE8","\u6CE8"]])});function rs(t){let e;if(typeof t=="string")e=t;else if(Array.isArray(t))e=JSON.stringify(t);else if(typeof t=="object")e=JSON.stringify(t);else{E("error","[Utils] [Common] Unsupported data type");return}E("info","[Utils] [Common]",e.slice(0,200))}function im(t){let e=t.match(/\((\d{4})\)/);return e?parseInt(e[1]):null}function Gl(t){if(/^\d+$/.test(t))return Number(t);let e={\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 $Ue(t){if(!t||typeof t!="string")return{cleanFileName:"",preferredPlatform:""};let e=t.indexOf("@");if(e===-1)return{cleanFileName:t.trim(),preferredPlatform:""};let r=t.substring(0,e).trim(),n=t.substring(e+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:XY(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:XY(n)}}else return{cleanFileName:r,preferredPlatform:XY(n)}}}function XY(t){if(!t||typeof t!="string")return"";let e=t.trim();return O.allowedPlatforms.includes(e)?e:""}function UUe(t){if(!t)return[...O.platformOrderArr];if(!O.allowedPlatforms.includes(t))return E("warn",`[Utils] [Common] Invalid platform: ${t}, using default order`),[...O.platformOrderArr];let e=[t];for(let r of O.platformOrderArr)r!==t&&r!==null&&e.push(r);return e.push(null),e}function FUe(t){return t?String(t).replace(/[\u200B-\u200F\uFEFF]/g,"").trim():""}function Dr(t){return t?String(t).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 am(t,e){if(!t||!e)return!1;let r=Dr(t),n=Dr(e);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 $t(t){if(!t)return null;let e=t.match(/(?:第\s*([0-9一二三四五六七八九十百千万]+)\s*[季期部])|(?:S(?:eason)?\s*(\d+))|(?:Part\s*(\d+))/i);if(e){let r=e[1]||e[2]||e[3];if(r)return Gl(r)}return null}function xt(t,e,r=null){if(O.strictTitleMatch)return am(t,e);let n=Dr(t).toLowerCase(),i=[Dr(e).toLowerCase()];try{i=[...new Set([e,zt(e),$o(e)])].map(o=>Dr(o).toLowerCase()).filter(Boolean)}catch{}let a=r!==null?r:$t(e);if(a!==null&&r===null){let o=e.replace(/(?:season|s|第)\s*[0-9一二三四五六七八九十]+\s*(?:å­£|期|部(?!分))?/gi,"").trim();o&&o!==e&&(i=[...new Set([...i,Dr(o).toLowerCase()])])}if(a!==null){let o=$t(t);if(a>1){if((o||1)!==a)return!1}else if(a===1&&o!==null&&o!==1)return!1}return i.some(o=>n.includes(o))?!0:i.some(o=>{if(Math.abs(n.length-o.length)>Math.max(n.length,o.length)*.7||/^[a-zA-Z0-9]+$/.test(o))return!1;let c=0,u=0;for(let l of o){let d=n.indexOf(l,u);d!==-1&&(c++,u=d+1)}return c/o.length>.8})}function tt(t,e){let r=t?.constructor?.name;if(e==="array"){if(!Array.isArray(t))throw new TypeError(`${t} \u5FC5\u987B\u662F\u4E00\u4E2A\u6570\u7EC4\uFF0C\u4F46\u4F20\u5165\u7684\u662F ${r}`)}else if(e==="boolean"){if(typeof t!="boolean"&&typeof t!="number")throw new TypeError(`${t} \u5FC5\u987B\u662F boolean \u6216 number\uFF0C\u4F46\u4F20\u5165\u7684\u662F ${r}`)}else if(typeof t!==e)throw new TypeError(`${t} \u5FC5\u987B\u662F ${e}\uFF0C\u4F46\u4F20\u5165\u7684\u662F ${r}`)}function Tt(t){if(!t)return{season:null,baseTitle:null};let e=t.match(/^(.*?)\(\d{4}\)/),r=e?e[1].trim():t.split("(")[0].trim(),n=Dr(r),s=n.match(/第\s*([0-9一二三四五六七八九十壹贰叁肆伍陆柒捌玖拾]+)\s*[季期部]/);if(s)return{season:Gl(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:Gl(c[1]),baseTitle:n.replace(c[0],"").trim()}:{season:null,baseTitle:n}}function Tf(t){if(!t)return null;let e=t.match(/第(\d+)集/);if(e)return parseInt(e[1],10);let r=t.match(/[Ee][Pp]?(\d+)/);if(r)return parseInt(r[1],10);let n=t.match(/(?:^|\s)(\d+)(?:\s|$)/);return n?parseInt(n[1],10):null}function eJ(t,e){let{season:r,baseTitle:n}=Tt(t),s=Tf(e);return{baseTitle:n,season:r,episode:s}}var sm,ZY,mn=gr(()=>{kt();vt();mo();sm=t=>{let e=t.match(/【(.*?)】/);return e?e[1]:null},ZY=t=>t.split("(")[0].trim()});var om,dL,fL,pL,mL,tJ,rJ,hL,St,Kb,ys=gr(()=>{mn();om=class t{constructor({animeId:e=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:p=[],isHiddenChild:m=!1}={}){tt(e,"number"),tt(r,"string"),tt(n,"string"),tt(s,"string","type"),tt(i,"string"),tt(a,"string"),tt(o,"string"),tt(c,"number"),tt(u,"number"),tt(l,"boolean"),tt(d,"string"),tt(f,"array"),tt(p,"array"),tt(m,"boolean"),this.links=f.map(h=>dL.fromJson(h)),Object.assign(this,{animeId:e,bangumiId:r,animeTitle:n,type:s,typeDescription:i,imageUrl:a,startDate:o,episodeCount:c,rating:u,isFavorited:l,source:d,mergedChildren:p,isHiddenChild:m})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");let r=(e.links||[]).map(n=>dL.fromJson(n));return new t({...e,links:r})}toJson(){return{...this,links:this.links.map(e=>e.toJson())}}},dL=class t{constructor({name:e="",url:r="",title:n="",id:s=10001}={}){tt(e,"string"),tt(r,"string"),tt(n,"string"),tt(s,"number"),Object.assign(this,{name:e,url:r,title:n,id:s})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new t(e)}toJson(){return{...this}}},fL=class t{constructor({episodeId:e=10001,animeId:r=111,animeTitle:n="",episodeTitle:s="",type:i="",typeDescription:a="",shift:o=1,imageUrl:c=""}={}){tt(e,"number"),tt(r,"number"),tt(n,"string"),tt(s,"string"),tt(i,"string","type"),tt(a,"string"),tt(o,"number"),tt(c,"string"),Object.assign(this,{episodeId:e,animeId:r,animeTitle:n,episodeTitle:s,type:i,typeDescription:a,shift:o,imageUrl:c})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new t(e)}toJson(){return{...this}}},pL=class{constructor({episodeId:e="",episodeTitle:r=""}={}){this.episodeId=e,this.episodeTitle=r}};pL.prototype.toJson=function(){return{episodeId:this.episodeId,episodeTitle:this.episodeTitle}};mL=class t{constructor({animeId:e=111,animeTitle:r="",type:n="",typeDescription:s="",episodes:i=[]}={}){tt(e,"number"),tt(r,"string"),tt(n,"string"),tt(s,"string"),tt(i,"array"),Object.assign(this,{animeId:e,animeTitle:r,type:n,typeDescription:s,episodes:i.map(a=>new pL(a))})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new t(e)}toJson(){return{...this,episodes:this.episodes.map(e=>e.toJson())}}},tJ=class t{constructor({id:e="",airDate:r="",name:n="",episodeCount:s=0}={}){tt(e,"string"),tt(r,"string"),tt(n,"string"),tt(s,"number"),Object.assign(this,{id:e,airDate:r,name:n,episodeCount:s})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new t(e)}toJson(){return{...this}}},rJ=class t{constructor({seasonId:e="",episodeId:r=10001,episodeTitle:n="",episodeNumber:s="",airDate:i=""}={}){tt(e,"string"),tt(r,"number"),tt(n,"string"),tt(s,"string"),tt(i,"string"),Object.assign(this,{seasonId:e,episodeId:r,episodeTitle:n,episodeNumber:s,airDate:i})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new t(e)}toJson(){return{...this}}},hL=class t{constructor({animeId:e=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=[]}={}){tt(e,"number"),tt(r,"string"),tt(n,"string"),tt(s,"string"),tt(i,"boolean"),tt(a,"number"),tt(o,"boolean"),tt(c,"number"),tt(u,"string"),tt(l,"string"),tt(d,"array"),tt(f,"array");let p=d.map(m=>tJ.fromJson(m));Object.assign(this,{animeId:e,bangumiId:r,animeTitle:n,imageUrl:s,isOnAir:i,airDay:a,isFavorited:o,rating:c,type:u,typeDescription:l,seasons:p,episodes:f})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");let r=e.episodes.map(n=>rJ.fromJson(n));return new t({...e,episodes:r})}toJson(){return{...this,seasons:this.seasons.map(e=>e.toJson()),episodes:this.episodes.map(e=>e.toJson())}}},St=class t{constructor({type:e="",segmentList:r=[],duration:n=0}={}){tt(e,"string"),tt(r,"array"),tt(n,"number"),this.segmentList=r.map(s=>Kb.fromJson(s)),Object.assign(this,{type:e,duration:n})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");let r=(e.segmentList||[]).map(n=>Kb.fromJson(n));return new t({...e,segmentList:r})}toJson(){return{...this,segmentList:this.segmentList.map(e=>e.toJson())}}},Kb=class t{constructor({type:e,segment_start:r,segment_end:n,url:s,data:i,_m_h5_tk:a,_m_h5_tk_enc:o}={}){tt(e,"string","type"),tt(r,"number","segment_start"),tt(n,"number","segment_end"),tt(s,"string","url"),i!==void 0&&tt(i,"string","data"),a!==void 0&&tt(a,"string","_m_h5_tk"),o!==void 0&&tt(o,"string","_m_h5_tk_enc"),Object.assign(this,{type:e,segment_start:r,segment_end:n,url:s,data:i,_m_h5_tk:a,_m_h5_tk_enc:o})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new t(e)}toJson(){return{...this}}}});var VUe={};os(VUe,{addAnime:()=>Bt,addEpisode:()=>zUe,cleanupExpiredIPs:()=>xL,findAnimeIdByCommentId:()=>AL,findAnimeTitleById:()=>aJ,findIndexById:()=>yL,findTitleById:()=>iJ,findUrlById:()=>UC,getCommentCache:()=>wf,getDirname:()=>bL,getLastSearch:()=>sJ,getLocalCaches:()=>lJ,getPreferAnimeId:()=>uJ,getSearchCache:()=>MC,isCommentCacheValid:()=>GUe,isSearchCacheValid:()=>HUe,judgeLocalCacheValid:()=>dJ,readCacheFromFile:()=>wg,removeEarliestAnime:()=>Ut,removeEpisodeByUrl:()=>KUe,resolveAnimeById:()=>Rg,resolveAnimeByIdFromDetailStore:()=>Ng,resolveEpisodeContextById:()=>Yb,setCommentCache:()=>$C,setLastSearch:()=>nJ,setPreferByAnimeId:()=>cJ,setSearchCache:()=>WC,storeAnimeIdsToMap:()=>oJ,updateLocalCaches:()=>EL,writeCacheToFile:()=>_L});function nJ(t,e){if(PC.set(t,{...e,timestamp:Date.now()}),PC.size>200)for(let[r,n]of PC)Date.now()-n.timestamp>3600*1e3&&PC.delete(r)}function sJ(t){return PC.get(t)}function Vb(t){if(!t||typeof t!="object")return"";let e=t.source?String(t.source)+":":"";return t.bangumiId!==void 0&&t.bangumiId!==null&&String(t.bangumiId)!==""?"bangumi:"+e+String(t.bangumiId):t.animeId!==void 0&&t.animeId!==null&&String(t.animeId)!==""?"anime:"+e+String(t.animeId):""}function qUe(t,e){if(!(t instanceof Map)||!e)return;let r=Vb(e);r&&t.set(r,e)}function*LC(t){if(!(t instanceof Map))return;let e=new Set;for(let r of t.values()){let n=Vb(r);n&&e.has(n)||(n&&e.add(n),yield r)}}function Edr(t){let e=[];for(let r of LC(t))e.push(r);return e}function vdr(){let t=Date.now(),e=[];for(let[r,n]of O.searchCache.entries()){let s=(t-n.timestamp)/6e4;if(s>O.searchCacheMinutes){O.searchCache.delete(r),E("info",`[Cache] Search cache for "${r}" expired after ${s.toFixed(2)} minutes`);continue}e.push(n)}return e.sort((r,n)=>(n.timestamp||0)-(r.timestamp||0)),e}function jUe(t,e,r){let n=Date.now(),s=0;for(let[i,a]of t.entries())(n-a.timestamp)/6e4>e&&(t.delete(i),s++);s>0&&E("info",`[Cache] ${r} TTL \u626B\u63CF\u5B8C\u6BD5\uFF0C\u5DF2\u79FB\u9664 ${s} \u4E2A\u8FC7\u671F\u6761\u76EE\uFF0C\u5269\u4F59 ${t.size} \u4E2A`)}function Sdr(t,e){return String(t?.animeId)===e||String(t?.bangumiId)===e}function gL(t,e,r=null){let n=null;for(let s of t)if(Sdr(s,e)){if(r&&s?.source===r)return s;n||(n=s)}return n}function*QUe(){let t=new Set;for(let e of vdr())if(Array.isArray(e.details))for(let r of e.details){let n=Vb(r);n&&t.has(n)||(n&&t.add(n),yield r)}}function Rg(t,e=null,r=null){let n=String(t),s=gL(O.animes,n,r);return s||(s=gL(LC(e),n,r),s)?s:gL(QUe(),n,r)}function Ng(t,e=null,r=null){let n=String(t);return gL(LC(e),n,r)}function Yb(t,e=null){let r=Number(t);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 O.animes){let a=n(i);if(a)return a}for(let i of LC(e)){let a=n(i);if(a)return a}let s=new Set;for(let i of O.animes){let a=Vb(i);a&&s.add(a)}for(let i of LC(e)){let a=Vb(i);a&&s.add(a)}for(let i of QUe()){let a=Vb(i);if(a&&s.has(a))continue;a&&s.add(a);let o=n(i);if(o)return o}return null}function HUe(t){if(!O.searchCache.has(t))return!1;let e=O.searchCache.get(t),n=(Date.now()-e.timestamp)/(1e3*60);return n>O.searchCacheMinutes?(O.searchCache.delete(t),E("info",`[Cache] Search cache for "${t}" expired after ${n.toFixed(2)} minutes`),!1):!0}function MC(t,e=null){if(HUe(t)){E("info",`[Cache] Using search cache for "${t}"`);let r=O.searchCache.get(t);return e instanceof Map&&Array.isArray(r.details)&&r.details.forEach(n=>{qUe(e,n)}),r.results}return null}function WC(t,e,r=null){let n=Edr(r);if(jUe(O.searchCache,O.searchCacheMinutes,"searchCache"),O.searchCache.set(t,{results:e,details:n,timestamp:Date.now()}),O.searchCache.size>500){let s=O.searchCache.keys().next().value;O.searchCache.delete(s),E("info",`[Cache] searchCache TTL\u6E05\u7406\u540E\u4ECD\u8FBE\u4E0A\u9650\uFF0C\u5DF2\u79FB\u9664\u6700\u65E9\u6761\u76EE: ${s}`)}E("info",`[Cache] Cached search results for "${t}" (${e.length} animes)`)}function GUe(t){if(!O.commentCache.has(t))return!1;let e=O.commentCache.get(t),n=(Date.now()-e.timestamp)/(1e3*60);return n>O.commentCacheMinutes?(O.commentCache.delete(t),E("info",`[Cache] Comment cache for "${t}" expired after ${n.toFixed(2)} minutes`),!1):!0}function wf(t){return GUe(t)?(E("info",`[Cache] Using comment cache for "${t}"`),O.commentCache.get(t).comments):null}function $C(t,e){if(jUe(O.commentCache,O.commentCacheMinutes,"commentCache"),O.commentCache.set(t,{comments:e,timestamp:Date.now()}),O.commentCache.size>500){let r=O.commentCache.keys().next().value;O.commentCache.delete(r),E("info",`[Cache] commentCache TTL\u6E05\u7406\u540E\u4ECD\u8FBE\u4E0A\u9650\uFF0C\u5DF2\u79FB\u9664\u6700\u65E9\u6761\u76EE: ${r}`)}E("info",`[Cache] Cached comments for "${t}" (${e.length} comments)`)}function zUe(t,e){let r=O.episodeIds.find(s=>s.url===t&&s.title===e);if(r)return E("info",`[Cache] Episode with URL ${t} and title ${e} already exists in episodeIds, returning existing episode.`),r;O.episodeNum++;let n={id:O.episodeNum,url:t,title:e};return O.episodeIds.push(n),E("info",`[Cache] Added to episodeIds: ${JSON.stringify(n)}`),n}function KUe(t){let e=O.episodeIds.length;O.episodeIds=O.episodeIds.filter(n=>n.url!==t);let r=e-O.episodeIds.length;return r>0?(E("info",`[Cache] Removed ${r} episode(s) from episodeIds with URL: ${t}`),!0):(E("error",`[Cache] No episode found in episodeIds with URL: ${t}`),!1)}function UC(t){let e=O.episodeIds.find(n=>n.id===t);if(e)return E("info",`[Cache] Found URL for ID ${t}: ${e.url}`),e.url;let r=Yb(t);return r?.link?.url?(E("info",`[Cache] Found URL for ID ${t} via cached anime details: ${r.link.url}`),r.link.url):(E("error",`[Cache] No URL found for ID: ${t}`),null)}function yL(t){let e=O.episodeIds.findIndex(n=>n.id===t);if(e!==-1)return E("info",`[Cache] Found index for ID ${t}: ${e}`),e;let r=Yb(t);return r?(E("info",`[Cache] Found index for ID ${t} via cached anime details: ${r.index}`),r.index):(E("error",`[Cache] No index found for ID: ${t}`),-1)}function iJ(t){let e=O.episodeIds.find(n=>n.id===t);if(e)return E("info",`[Cache] Found TITLE for ID ${t}: ${e.title}`),e.title;let r=Yb(t);return r?.link?.title?(E("info",`[Cache] Found TITLE for ID ${t} via cached anime details: ${r.link.title}`),r.link.title):(E("error",`[Cache] No TITLE found for ID: ${t}`),null)}function aJ(t){let e=Yb(t);return e?.anime?.animeTitle?(E("info",`[Cache] Found animeTitle for ID ${t}: ${e.anime.animeTitle}`),e.anime.animeTitle):(E("error",`[Cache] No animeTitle found for ID: ${t}`),null)}function Bt(t,e=null){t=om.fromJson(t);try{if(!t.links||!Array.isArray(t.links))return E("error",`[Cache] Invalid or missing links in anime: ${JSON.stringify(t)}`),!1;let r=[];t.links.forEach(i=>{if(i.url){let a=zUe(i.url,i.title);a&&r.push(a)}else E("error",`[Cache] Invalid link in anime, missing url: ${JSON.stringify(i)}`)});let n=om.fromJson({...t,links:r});qUe(e,n);let s=O.animes.findIndex(i=>i.animeId===t.animeId);return s!==-1&&(O.animes.splice(s,1),E("info",`[Cache] Removed old anime at index: ${s}`)),O.animes.push(n),E("info",`[Cache] Added anime to latest position: ${t.animeId}`),O.animes.length>O.MAX_ANIMES&&(Ut()||E("error","[Cache] Failed to remove earliest anime, but continuing")),E("info",`[Cache] animes: ${JSON.stringify(O.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 E("error",`[Cache] addAnime failed: ${r.message}`),!1}}function Ut(){if(O.animes.length===0)return E("error","[Cache] No animes to remove."),!1;let t=O.animes.shift();return E("info",`[Cache] Removed earliest anime: ${JSON.stringify(t)}`),t.links&&Array.isArray(t.links)&&t.links.forEach(e=>{e.url&&KUe(e.url)}),!0}function oJ(t,e){let r=new Set,n=O.lastSelectMap.get(e);if(n&&Array.isArray(n.animeIds))for(let d of n.animeIds)r.add(d);for(let d of t)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),O.lastSelectMap.has(e)&&O.lastSelectMap.delete(e),O.lastSelectMap.set(e,{animeIds:[...r],...Object.keys(u).length>0&&{preferBySeason:u},...Object.keys(l).length>0&&{sourceBySeason:l},...c!==void 0&&{offsets:c}}),O.lastSelectMap.size>O.MAX_LAST_SELECT_MAP){let d=O.lastSelectMap.keys().next().value;O.lastSelectMap.delete(d),E("info",`[Cache] Removed earliest entry from lastSelectMap: ${d}`)}}function AL(t){let e=Yb(t);return e?[e.anime.animeId,e.anime.source,e.link.title,e.anime.aliases||[]]:[null,null,null,[]]}function cJ(t,e,r=null,n=null){for(let[s,i]of O.lastSelectMap.entries())if(i.animeIds&&i.animeIds.includes(t)){let a=r===null?"default":String(r);return i.preferBySeason=i.preferBySeason||{},i.sourceBySeason=i.sourceBySeason||{},i.preferBySeason[a]=t,i.sourceBySeason[a]=e,r!==null&&n!==null&&(i.offsets=i.offsets||{},i.offsets[a]=n),O.lastSelectMap.set(s,i),s}return null}function uJ(t,e=null){let r=O.lastSelectMap.get(t);if(!r)return[null,null,null];let n=e===null?"default":String(e),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 xL(t){let r=0;for(let[n,s]of O.requestHistory.entries()){let i=s.filter(a=>t-a<=6e4);i.length===0?(O.requestHistory.delete(n),r++,E("info",`[Utils] [Rate Limit] Cleaned up expired IP record: ${n}`)):i.length0&&E("info",`[Utils] [Rate Limit] Cleanup completed: removed ${r} expired IP records`)}function bL(){return typeof __dirname<"u"?__dirname:BC.join(process.cwd(),"danmu_api","utils")}function wg(t){let e=BC.join(bL(),"..","..",".cache",`${t}`);if(DC.existsSync(e)){let r=DC.readFileSync(e,"utf8");return JSON.parse(r)}return null}function _L(t,e){let r=BC.join(bL(),"..","..",".cache",`${t}`);DC.writeFileSync(r,JSON.stringify(e),"utf8")}async function lJ(){if(!O.localCacheInitialized)try{E("info","[Cache] getLocalCaches start."),O.animes=JSON.parse(wg("animes"))||O.animes,O.episodeIds=JSON.parse(wg("episodeIds"))||O.episodeIds,O.episodeNum=JSON.parse(wg("episodeNum"))||O.episodeNum,O.reqRecords=JSON.parse(wg("reqRecords"))||O.reqRecords,O.todayReqNum=JSON.parse(wg("todayReqNum"))||O.todayReqNum;let t=wg("lastSelectMap");t&&(O.lastSelectMap=new Map(Object.entries(JSON.parse(t))),E("info",`[Cache] Restored lastSelectMap from local cache with ${O.lastSelectMap.size} entries`)),O.lastHashes.animes=sn(JSON.stringify(O.animes)),O.lastHashes.episodeIds=sn(JSON.stringify(O.episodeIds)),O.lastHashes.episodeNum=sn(JSON.stringify(O.episodeNum)),O.lastHashes.reqRecords=sn(JSON.stringify(O.reqRecords)),O.lastHashes.todayReqNum=sn(JSON.stringify(O.todayReqNum)),O.lastHashes.lastSelectMap=sn(JSON.stringify(Object.fromEntries(O.lastSelectMap))),O.localCacheInitialized=!0,E("info","[Cache] getLocalCaches completed successfully.")}catch(t){E("error",`[Cache] getLocalCaches failed: ${t.message}`,t.stack),O.localCacheInitialized=!0}}async function EL(){try{E("info","[Cache] updateLocalCaches start.");let t=[],e=[{key:"animes",value:O.animes},{key:"episodeIds",value:O.episodeIds},{key:"episodeNum",value:O.episodeNum},{key:"reqRecords",value:O.reqRecords},{key:"lastSelectMap",value:O.lastSelectMap},{key:"todayReqNum",value:O.todayReqNum}];for(let{key:r,value:n}of e){let s=JSON.stringify(r==="lastSelectMap"?Object.fromEntries(n):n),i=sn(s);i!==O.lastHashes[r]&&(_L(r,s),t.push({key:r,hash:i}))}t.length>0?(E("info",`[Cache] Updated local caches for keys: ${t.map(r=>r.key).join(", ")}`),t.forEach(({key:r,hash:n})=>{O.lastHashes[r]=n})):E("info","[Cache] No changes detected, skipping local cache update.")}catch(t){E("error",`[Cache] updateLocalCaches failed: ${t.message}`,t.stack),E("error",`[Cache] Error details - Name: ${t.name}, Cause: ${t.cause?t.cause.message:"N/A"}`)}}async function dJ(t,e){if(e==="node")try{if(DC=await import("fs"),BC=await import("path"),!O.localCacheValid&&t!=="/favicon.ico"&&t!=="/robots.txt"){let r=BC.join(bL(),"..","..",".cache");DC.existsSync(r)?O.localCacheValid=!0:O.localCacheValid=!1}}catch(r){E("warn","[Cache] Node.js modules not available:",r.message),O.localCacheValid=!1}}var DC,BC,PC,Un=gr(()=>{kt();vt();ys();ws();PC=new Map});var gJ=_(wL=>{"use strict";Object.defineProperty(wL,"__esModule",{value:!0});wL.VerbatimString=void 0;var hJ=class extends String{format;constructor(e,r){super(r),this.format=e}};wL.VerbatimString=hJ});var zl=_(br=>{"use strict";Object.defineProperty(br,"__esModule",{value:!0});br.MultiErrorReply=br.CommandTimeoutDuringMaintenanceError=br.SocketTimeoutDuringMaintenanceError=br.TimeoutError=br.BlobError=br.SimpleError=br.ErrorReply=br.ReconnectStrategyError=br.RootNodesUnavailableError=br.SocketClosedUnexpectedlyError=br.DisconnectsClientError=br.ClientOfflineError=br.ClientClosedError=br.SocketTimeoutError=br.ConnectionTimeoutError=br.WatchError=br.AbortError=void 0;var yJ=class extends Error{constructor(){super("The command was aborted")}};br.AbortError=yJ;var AJ=class extends Error{constructor(e="One (or more) of the watched keys has been changed"){super(e)}};br.WatchError=AJ;var xJ=class extends Error{constructor(){super("Connection timeout")}};br.ConnectionTimeoutError=xJ;var bJ=class extends Error{constructor(e){super(`Socket timeout timeout. Expecting data, but didn't receive any in ${e}ms.`)}};br.SocketTimeoutError=bJ;var _J=class extends Error{constructor(){super("The client is closed")}};br.ClientClosedError=_J;var EJ=class extends Error{constructor(){super("The client is offline")}};br.ClientOfflineError=EJ;var vJ=class extends Error{constructor(){super("Disconnects client")}};br.DisconnectsClientError=vJ;var SJ=class extends Error{constructor(){super("Socket closed unexpectedly")}};br.SocketClosedUnexpectedlyError=SJ;var IJ=class extends Error{constructor(){super("All the root nodes are unavailable")}};br.RootNodesUnavailableError=IJ;var CJ=class extends Error{originalError;socketError;constructor(e,r){super(e.message),this.originalError=e,this.socketError=r}};br.ReconnectStrategyError=CJ;var Zb=class extends Error{};br.ErrorReply=Zb;var TJ=class extends Zb{};br.SimpleError=TJ;var wJ=class extends Zb{};br.BlobError=wJ;var jC=class extends Error{};br.TimeoutError=jC;var RJ=class extends jC{constructor(e){super(`Socket timeout during maintenance. Expecting data, but didn't receive any in ${e}ms.`)}};br.SocketTimeoutDuringMaintenanceError=RJ;var NJ=class extends jC{constructor(e){super(`Command timeout during maintenance. Waited to write command for more than ${e}ms.`)}};br.CommandTimeoutDuringMaintenanceError=NJ;var OJ=class extends Zb{replies;errorIndexes;constructor(e,r){super(`${r.length} commands failed, see .replies and .errorIndexes for more information`),this.replies=e,this.errorIndexes=r}*errors(){for(let e of this.errorIndexes)yield this.replies[e]}};br.MultiErrorReply=OJ});var OL=_(mt=>{"use strict";var kJ;Object.defineProperty(mt,"__esModule",{value:!0});mt.Decoder=mt.PUSH_TYPE_MAPPING=mt.RESP_TYPES=void 0;var aFe=gJ(),RL=zl();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 Yr={"\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 NL=class{onReply;onErrorReply;onPush;getTypeMapping;#e=0;#t;constructor(e){this.onReply=e.onReply,this.onErrorReply=e.onErrorReply,this.onPush=e.onPush,this.getTypeMapping=e.getTypeMapping}reset(){this.#e=0,this.#t=void 0}write(e){if(this.#e>=e.length){this.#e-=e.length;return}if(this.#t&&(this.#t(e)||this.#e>=e.length)){this.#e-=e.length;return}do{let r=e[this.#e];if(++this.#e===e.length){this.#t=this.#r.bind(this,r);break}if(this.#n(r,e))break}while(this.#e=r.length?this.#R.bind(this,n,e):this.#R(n,e,r)}#C(e,r,n){let s=e(n);return typeof s=="function"?this.#C.bind(this,s,r):this.#e>=n.length?this.#R.bind(this,s,r):this.#R(s,r,n)}#N(e,r,n,s){let i=this.#e+e;if(i>=s.length){let o=s.subarray(this.#e);return this.#e=s.length,this.#M.bind(this,e-o.length,[o],r,n)}let a=s.subarray(this.#e,i);return this.#e=i+r,n===Buffer?a:a.toString()}#M(e,r,n,s,i){let a=this.#e+e;if(a>=i.length){let c=i.subarray(this.#e);return r.push(c),this.#e=i.length,this.#M.bind(this,e-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()}#R(e,r,n){return this.#N(e,2,r,n)}#O(e,r){return this.#P(this.#p.bind(this,0),e,r)}#P(e,r,n){let s=e(n);return typeof s=="function"?this.#P.bind(this,s,r):this.#ce(s,r,n)}#ce(e,r,n){let s=e-4;return r===aFe.VerbatimString?this.#ue(s,n):(this.#e+=4,this.#e>=n.length?this.#R.bind(this,s,r):this.#R(s,r,n))}#ue(e,r){let n=this.#N.bind(this,3,1,String);return this.#e>=r.length?this.#U.bind(this,e,n):this.#U(e,n,r)}#U(e,r,n){let s=r(n);return typeof s=="function"?this.#U.bind(this,e,s):this.#le(e,s,n)}#le(e,r,n){return this.#Q(r,this.#R.bind(this,e,String),n)}#Q(e,r,n){let s=r(n);return typeof s=="function"?this.#Q.bind(this,e,s):new aFe.VerbatimString(e,s)}#H(e){let r=this.#x(String,e);return typeof r=="function"?this.#G.bind(this,r):new RL.SimpleError(r)}#G(e,r){let n=e(r);return typeof n=="function"?this.#G.bind(this,n):new RL.SimpleError(n)}#z(e){let r=this.#T(String,e);return typeof r=="function"?this.#K.bind(this,r):new RL.BlobError(r)}#K(e,r){let n=e(r);return typeof n=="function"?this.#K.bind(this,n):new RL.BlobError(n)}#w(e,r){let n=r[this.#e];return++this.#e===r.length?this.#F.bind(this,n,e):this.#F(n,e,r)}#F(e,r,n){switch(e){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.#x(r[mt.RESP_TYPES.SIMPLE_STRING],n);case mt.RESP_TYPES.BLOB_STRING:return this.#T(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.#H(n);case mt.RESP_TYPES.BLOB_ERROR:return this.#z(n);case mt.RESP_TYPES.ARRAY:return this.#q(r,n);case mt.RESP_TYPES.SET:return this.#J(r,n);case mt.RESP_TYPES.MAP:return this.#te(r,n);default:throw new Error(`Unknown RESP type ${e} "${String.fromCharCode(e)}"`)}}#q(e,r){return r[this.#e]===Yr["-"]?(this.#e+=4,null):this.#V(this.#p(0,r),e,r)}#V(e,r,n){return typeof e=="function"?this.#de.bind(this,e,r):this.#D(new Array(e),0,r,n)}#de(e,r,n){return this.#V(e(n),r,n)}#D(e,r,n,s){for(let i=r;i=s.length)return this.#D.bind(this,e,i,n);let a=this.#w(n,s);if(typeof a=="function")return this.#Y.bind(this,e,i,a,n);e[i]=a}return e}#Y(e,r,n,s,i){let a=n(i);return typeof a=="function"?this.#Y.bind(this,e,r,a,s):(e[r++]=a,this.#D(e,r,s,i))}#J(e,r){let n=this.#p(0,r);return typeof n=="function"?this.#X.bind(this,n,e):this.#Z(n,e,r)}#X(e,r,n){let s=e(n);return typeof s=="function"?this.#X.bind(this,s,r):this.#Z(s,r,n)}#Z(e,r,n){return r[mt.RESP_TYPES.SET]===Set?this.#j(new Set,e,r,n):this.#D(new Array(e),0,r,n)}#j(e,r,n,s){for(;r>0;){if(this.#e>=s.length)return this.#j.bind(this,e,r,n);let i=this.#w(n,s);if(typeof i=="function")return this.#ee.bind(this,e,r,i,n);e.add(i),--r}return e}#ee(e,r,n,s,i){let a=n(i);return typeof a=="function"?this.#ee.bind(this,e,r,a,s):(e.add(a),this.#j(e,r-1,s,i))}#te(e,r){let n=this.#p(0,r);return typeof n=="function"?this.#re.bind(this,n,e):this.#ne(n,e,r)}#re(e,r,n){let s=e(n);return typeof s=="function"?this.#re.bind(this,s,r):this.#ne(s,r,n)}#ne(e,r,n){switch(r[mt.RESP_TYPES.MAP]){case Map:return this.#W(new Map,e,r,n);case Array:return this.#D(new Array(e*2),0,r,n);default:return this.#$(Object.create(null),e,r,n)}}#W(e,r,n,s){for(;r>0;){if(this.#e>=s.length)return this.#W.bind(this,e,r,n);let i=this.#se(n,s);if(typeof i=="function")return this.#ae.bind(this,e,r,i,n);if(this.#e>=s.length)return this.#B.bind(this,e,r,i,this.#w.bind(this,n),n);let a=this.#w(n,s);if(typeof a=="function")return this.#B.bind(this,e,r,i,a,n);e.set(i,a),--r}return e}#se(e,r){let n=r[this.#e];return++this.#e===r.length?this.#ie.bind(this,n,e):this.#ie(n,e,r)}#ie(e,r,n){switch(e){case mt.RESP_TYPES.SIMPLE_STRING:return this.#x(String,n);case mt.RESP_TYPES.BLOB_STRING:return this.#T(String,n);default:return this.#F(e,r,n)}}#ae(e,r,n,s,i){let a=n(i);if(typeof a=="function")return this.#ae.bind(this,e,r,a,s);if(this.#e>=i.length)return this.#B.bind(this,e,r,a,this.#w.bind(this,s),s);let o=this.#w(s,i);return typeof o=="function"?this.#B.bind(this,e,r,a,o,s):(e.set(a,o),this.#W(e,r-1,s,i))}#B(e,r,n,s,i,a){let o=s(a);return typeof o=="function"?this.#B.bind(this,e,r,n,o,i):(e.set(n,o),this.#W(e,r-1,i,a))}#$(e,r,n,s){for(;r>0;){if(this.#e>=s.length)return this.#$.bind(this,e,r,n);let i=this.#se(n,s);if(typeof i=="function")return this.#oe.bind(this,e,r,i,n);if(this.#e>=s.length)return this.#L.bind(this,e,r,i,this.#w.bind(this,n),n);let a=this.#w(n,s);if(typeof a=="function")return this.#L.bind(this,e,r,i,a,n);e[i]=a,--r}return e}#oe(e,r,n,s,i){let a=n(i);if(typeof a=="function")return this.#oe.bind(this,e,r,a,s);if(this.#e>=i.length)return this.#L.bind(this,e,r,a,this.#w.bind(this,s),s);let o=this.#w(s,i);return typeof o=="function"?this.#L.bind(this,e,r,a,o,s):(e[a]=o,this.#$(e,r-1,s,i))}#L(e,r,n,s,i,a){let o=s(a);return typeof o=="function"?this.#L.bind(this,e,r,n,o,i):(e[n]=o,this.#$(e,r-1,i,a))}};mt.Decoder=NL;kJ=NL});var cFe=_(e1=>{"use strict";Object.defineProperty(e1,"__esModule",{value:!0});e1.scriptSha1=e1.defineScript=void 0;var jdr=require("node:crypto");function Qdr(t){return{...t,SHA1:oFe(t.SCRIPT)}}e1.defineScript=Qdr;function oFe(t){return(0,jdr.createHash)("sha1").update(t).digest("hex")}e1.scriptSha1=oFe});var uFe=_(kL=>{"use strict";Object.defineProperty(kL,"__esModule",{value:!0});kL.digest=void 0;var PJ=null;async function Hdr(){if(!PJ)try{PJ=(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 PJ}async function Gdr(t){let e=await Hdr(),r=typeof t=="string"?t:new Uint8Array(t);return e.xxh64(r).toString(16).padStart(16,"0")}kL.digest=Gdr});var lFe=_(DJ=>{"use strict";Object.defineProperty(DJ,"__esModule",{value:!0});DJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("ACL","CAT"),e&&t.push(e)},transformReply:void 0}});var dFe=_(BJ=>{"use strict";Object.defineProperty(BJ,"__esModule",{value:!0});BJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("ACL","DELUSER"),t.pushVariadic(e)},transformReply:void 0}});var fFe=_(LJ=>{"use strict";Object.defineProperty(LJ,"__esModule",{value:!0});LJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ACL","DRYRUN",e,...r)},transformReply:void 0}});var pFe=_(MJ=>{"use strict";Object.defineProperty(MJ,"__esModule",{value:!0});MJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("ACL","GENPASS"),e&&t.push(e.toString())},transformReply:void 0}});var mFe=_(WJ=>{"use strict";Object.defineProperty(WJ,"__esModule",{value:!0});WJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("ACL","GETUSER",e)},transformReply:{2:t=>({flags:t[1],passwords:t[3],commands:t[5],keys:t[7],channels:t[9],selectors:t[11]?.map(e=>{let r=e;return{commands:r[1],keys:r[3],channels:r[5]}})}),3:void 0}}});var hFe=_($J=>{"use strict";Object.defineProperty($J,"__esModule",{value:!0});$J.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("ACL","LIST")},transformReply:void 0}});var gFe=_(UJ=>{"use strict";Object.defineProperty(UJ,"__esModule",{value:!0});UJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("ACL","LOAD")},transformReply:void 0}});var Kl=_(PL=>{"use strict";Object.defineProperty(PL,"__esModule",{value:!0});PL.BasicCommandParser=void 0;var FJ=class{#e=[];#t=[];preserve;get redisArgs(){return this.#e}get keys(){return this.#t}get firstKey(){return this.#t[0]}get cacheKey(){let e=new Array(this.#e.length*2);for(let r=0;r{"use strict";Object.defineProperty(Me,"__esModule",{value:!0});Me.transformRedisJsonNullReply=Me.transformRedisJsonReply=Me.transformRedisJsonArgument=Me.transformStreamsMessagesReplyResp3=Me.transformStreamsMessagesReplyResp2=Me.transformStreamMessagesReply=Me.transformStreamMessageNullReply=Me.transformStreamMessageReply=Me.parseArgs=Me.parseZKeysArguments=Me.transformRangeReply=Me.parseSlotRangesArguments=Me.transformFunctionListItemReply=Me.RedisFunctionFlags=Me.transformCommandReply=Me.CommandCategories=Me.CommandFlags=Me.parseOptionalVariadicArgument=Me.pushVariadicArgument=Me.pushVariadicNumberArguments=Me.pushVariadicArguments=Me.pushEvalArguments=Me.evalFirstKeyIndex=Me.transformPXAT=Me.transformEXAT=Me.transformSortedSetReply=Me.transformTuplesReply=Me.createTransformTuplesReplyFunc=Me.transformTuplesToMap=Me.transformNullableDoubleReply=Me.createTransformNullableDoubleReplyResp2Func=Me.transformDoubleArrayReply=Me.createTransformDoubleReplyResp2Func=Me.transformDoubleReply=Me.transformStringDoubleArgument=Me.transformDoubleArgument=Me.transformBooleanArrayReply=Me.transformBooleanReply=Me.isArrayReply=Me.isNullReply=void 0;var zdr=Kl(),qJ=OL();function jJ(t){return t===null}Me.isNullReply=jJ;function Kdr(t){return Array.isArray(t)}Me.isArrayReply=Kdr;Me.transformBooleanReply={2:t=>t===1,3:void 0};Me.transformBooleanArrayReply={2:t=>t.map(Me.transformBooleanReply[2]),3:void 0};function DL(t){switch(t){case 1/0:return"+inf";case-1/0:return"-inf";default:return t.toString()}}Me.transformDoubleArgument=DL;function Vdr(t){return typeof t!="number"?t:DL(t)}Me.transformStringDoubleArgument=Vdr;Me.transformDoubleReply={2:(t,e,r)=>{switch(r?r[qJ.RESP_TYPES.DOUBLE]:void 0){case String:return t;default:{let s;switch(t.toString()){case"inf":case"+inf":s=1/0;case"-inf":s=-1/0;case"nan":s=NaN;default:s=Number(t)}return s}}},3:void 0};function _Fe(t,e){return r=>Me.transformDoubleReply[2](r,t,e)}Me.createTransformDoubleReplyResp2Func=_Fe;Me.transformDoubleArrayReply={2:(t,e,r)=>t.map(_Fe(e,r)),3:void 0};function Ydr(t,e){return r=>Me.transformNullableDoubleReply[2](r,t,e)}Me.createTransformNullableDoubleReplyResp2Func=Ydr;Me.transformNullableDoubleReply={2:(t,e,r)=>t===null?null:Me.transformDoubleReply[2](t,e,r),3:void 0};function Jdr(t,e){let r=Object.create(null);for(let n=0;nQJ(r,t,e)}Me.createTransformTuplesReplyFunc=Xdr;function QJ(t,e,r){let n=r?r[qJ.RESP_TYPES.MAP]:void 0,s=t;switch(n){case Array:return t;case Map:{let i=new Map;for(let a=0;a{let n=t,s=[];for(let i=0;it.map(e=>{let[r,n]=e;return{value:r,score:n}})};function Zdr(t){return(typeof t=="number"?t:Math.floor(t.getTime()/1e3)).toString()}Me.transformEXAT=Zdr;function efr(t){return(typeof t=="number"?t:t.getTime()).toString()}Me.transformPXAT=efr;function tfr(t){return t?.keys?.[0]}Me.evalFirstKeyIndex=tfr;function rfr(t,e){return e?.keys?t.push(e.keys.length.toString(),...e.keys):t.push("0"),e?.arguments&&t.push(...e.arguments),t}Me.pushEvalArguments=rfr;function nfr(t,e){return Array.isArray(e)?t=t.concat(e):t.push(e),t}Me.pushVariadicArguments=nfr;function sfr(t,e){if(Array.isArray(e))for(let r of e)t.push(r.toString());else t.push(e.toString());return t}Me.pushVariadicNumberArguments=sfr;function ifr(t,e){return Array.isArray(e)?t.push(e.length.toString(),...e):t.push("1",e),t}Me.pushVariadicArgument=ifr;function afr(t,e,r){r!==void 0&&(t.push(e),t.pushVariadicWithLength(r))}Me.parseOptionalVariadicArgument=afr;var yFe;(function(t){t.WRITE="write",t.READONLY="readonly",t.DENYOOM="denyoom",t.ADMIN="admin",t.PUBSUB="pubsub",t.NOSCRIPT="noscript",t.RANDOM="random",t.SORT_FOR_SCRIPT="sort_for_script",t.LOADING="loading",t.STALE="stale",t.SKIP_MONITOR="skip_monitor",t.ASKING="asking",t.FAST="fast",t.MOVABLEKEYS="movablekeys"})(yFe||(Me.CommandFlags=yFe={}));var AFe;(function(t){t.KEYSPACE="@keyspace",t.READ="@read",t.WRITE="@write",t.SET="@set",t.SORTEDSET="@sortedset",t.LIST="@list",t.HASH="@hash",t.STRING="@string",t.BITMAP="@bitmap",t.HYPERLOGLOG="@hyperloglog",t.GEO="@geo",t.STREAM="@stream",t.PUBSUB="@pubsub",t.ADMIN="@admin",t.FAST="@fast",t.SLOW="@slow",t.BLOCKING="@blocking",t.DANGEROUS="@dangerous",t.CONNECTION="@connection",t.TRANSACTION="@transaction",t.SCRIPTING="@scripting"})(AFe||(Me.CommandCategories=AFe={}));function ofr([t,e,r,n,s,i,a]){return{name:t,arity:e,flags:new Set(r),firstKeyIndex:n,lastKeyIndex:s,step:i,categories:new Set(a)}}Me.transformCommandReply=ofr;var xFe;(function(t){t.NO_WRITES="no-writes",t.ALLOW_OOM="allow-oom",t.ALLOW_STALE="allow-stale",t.NO_CLUSTER="no-cluster"})(xFe||(Me.RedisFunctionFlags=xFe={}));function cfr(t){return{libraryName:t[1],engine:t[3],functions:t[5].map(e=>({name:e[1],description:e[3],flags:e[5]}))}}Me.transformFunctionListItemReply=cfr;function bFe(t,e){t.push(e.start.toString(),e.end.toString())}function ufr(t,e){if(Array.isArray(e))for(let r of e)bFe(t,r);else bFe(t,e)}Me.parseSlotRangesArguments=ufr;function lfr([t,e]){return{start:t,end:e}}Me.transformRangeReply=lfr;function dfr(t,e){if(Array.isArray(e)){if(t.push(e.length.toString()),e.length)if(ffr(e))t.pushKeys(e);else{for(let r=0;r{"use strict";Object.defineProperty(GJ,"__esModule",{value:!0});var xfr=we();GJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("ACL","LOG"),e!=null&&t.push(e.toString())},transformReply:{2:(t,e,r)=>t.map(n=>{let s=n;return{count:s[1],reason:s[3],context:s[5],object:s[7],username:s[9],"age-seconds":xfr.transformDoubleReply[2](s[11],e,r),"client-info":s[13],"entry-id":s[15],"timestamp-created":s[17],"timestamp-last-updated":s[19]}}),3:void 0}}});var SFe=_(HC=>{"use strict";var bfr=HC&&HC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(HC,"__esModule",{value:!0});var _fr=bfr(zJ());HC.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:_fr.default.IS_READ_ONLY,parseCommand(t){t.push("ACL","LOG","RESET")},transformReply:void 0}});var IFe=_(KJ=>{"use strict";Object.defineProperty(KJ,"__esModule",{value:!0});KJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("ACL","SAVE")},transformReply:void 0}});var CFe=_(VJ=>{"use strict";Object.defineProperty(VJ,"__esModule",{value:!0});VJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ACL","SETUSER",e),t.pushVariadic(r)},transformReply:void 0}});var TFe=_(YJ=>{"use strict";Object.defineProperty(YJ,"__esModule",{value:!0});YJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("ACL","USERS")},transformReply:void 0}});var wFe=_(JJ=>{"use strict";Object.defineProperty(JJ,"__esModule",{value:!0});JJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("ACL","WHOAMI")},transformReply:void 0}});var RFe=_(XJ=>{"use strict";Object.defineProperty(XJ,"__esModule",{value:!0});XJ.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("APPEND",e,r)},transformReply:void 0}});var ZJ=_(t1=>{"use strict";Object.defineProperty(t1,"__esModule",{value:!0});t1.ASKING_CMD=void 0;t1.ASKING_CMD="ASKING";t1.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push(t1.ASKING_CMD)},transformReply:void 0}});var NFe=_(eX=>{"use strict";Object.defineProperty(eX,"__esModule",{value:!0});eX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,{username:e,password:r}){t.push("AUTH"),e!==void 0&&t.push(e),t.push(r)},transformReply:void 0}});var OFe=_(tX=>{"use strict";Object.defineProperty(tX,"__esModule",{value:!0});tX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("BGREWRITEAOF")},transformReply:void 0}});var kFe=_(rX=>{"use strict";Object.defineProperty(rX,"__esModule",{value:!0});rX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("BGSAVE"),e?.SCHEDULE&&t.push("SCHEDULE")},transformReply:void 0}});var PFe=_(nX=>{"use strict";Object.defineProperty(nX,"__esModule",{value:!0});nX.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("BITCOUNT"),t.pushKey(e),r&&(t.push(r.start.toString()),t.push(r.end.toString()),r.mode&&t.push(r.mode))},transformReply:void 0}});var DFe=_(sX=>{"use strict";Object.defineProperty(sX,"__esModule",{value:!0});sX.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("BITFIELD_RO"),t.pushKey(e);for(let n of r)t.push("GET"),t.push(n.encoding),t.push(n.offset.toString())},transformReply:void 0}});var BFe=_(iX=>{"use strict";Object.defineProperty(iX,"__esModule",{value:!0});iX.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("BITFIELD"),t.pushKey(e);for(let n of r)switch(n.operation){case"GET":t.push("GET",n.encoding,n.offset.toString());break;case"SET":t.push("SET",n.encoding,n.offset.toString(),n.value.toString());break;case"INCRBY":t.push("INCRBY",n.encoding,n.offset.toString(),n.increment.toString());break;case"OVERFLOW":t.push("OVERFLOW",n.behavior);break}},transformReply:void 0}});var LFe=_(aX=>{"use strict";Object.defineProperty(aX,"__esModule",{value:!0});aX.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("BITOP",e),t.pushKey(r),t.pushKeys(n)},transformReply:void 0}});var MFe=_(oX=>{"use strict";Object.defineProperty(oX,"__esModule",{value:!0});oX.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n,s,i){t.push("BITPOS"),t.pushKey(e),t.push(r.toString()),n!==void 0&&t.push(n.toString()),s!==void 0&&t.push(s.toString()),i&&t.push(i)},transformReply:void 0}});var WFe=_(cX=>{"use strict";Object.defineProperty(cX,"__esModule",{value:!0});cX.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,i){t.push("BLMOVE"),t.pushKeys([e,r]),t.push(n,s,i.toString())},transformReply:void 0}});var uX=_(GC=>{"use strict";Object.defineProperty(GC,"__esModule",{value:!0});GC.parseLMPopArguments=void 0;function $Fe(t,e,r,n){t.pushKeysLength(e),t.push(r),n?.COUNT!==void 0&&t.push("COUNT",n.COUNT.toString())}GC.parseLMPopArguments=$Fe;GC.default={IS_READ_ONLY:!1,parseCommand(t,...e){t.push("LMPOP"),$Fe(t,...e)},transformReply:void 0}});var FFe=_(Nf=>{"use strict";var Efr=Nf&&Nf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),vfr=Nf&&Nf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Sfr=Nf&&Nf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Efr(e,t,r);return vfr(e,t),e};Object.defineProperty(Nf,"__esModule",{value:!0});var UFe=Sfr(uX());Nf.default={IS_READ_ONLY:!1,parseCommand(t,e,...r){t.push("BLMPOP",e.toString()),(0,UFe.parseLMPopArguments)(t,...r)},transformReply:UFe.default.transformReply}});var dX=_(lX=>{"use strict";Object.defineProperty(lX,"__esModule",{value:!0});lX.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("BLPOP"),t.pushKeys(e),t.push(r.toString())},transformReply(t){return t===null?null:{key:t[0],element:t[1]}}}});var qFe=_(zC=>{"use strict";var Ifr=zC&&zC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(zC,"__esModule",{value:!0});var Cfr=Ifr(dX());zC.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("BRPOP"),t.pushKeys(e),t.push(r.toString())},transformReply:Cfr.default.transformReply}});var jFe=_(fX=>{"use strict";Object.defineProperty(fX,"__esModule",{value:!0});fX.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("BRPOPLPUSH"),t.pushKeys([e,r]),t.push(n.toString())},transformReply:void 0}});var pX=_(KC=>{"use strict";Object.defineProperty(KC,"__esModule",{value:!0});KC.parseZMPopArguments=void 0;var QFe=we();function HFe(t,e,r,n){t.pushKeysLength(e),t.push(r),n?.COUNT&&t.push("COUNT",n.COUNT.toString())}KC.parseZMPopArguments=HFe;KC.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("ZMPOP"),HFe(t,e,r,n)},transformReply:{2(t,e,r){return t===null?null:{key:t[0],members:t[1].map(n=>{let[s,i]=n;return{value:s,score:QFe.transformDoubleReply[2](i,e,r)}})}},3(t){return t===null?null:{key:t[0],members:QFe.transformSortedSetReply[3](t[1])}}}}});var zFe=_(Of=>{"use strict";var Tfr=Of&&Of.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),wfr=Of&&Of.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Rfr=Of&&Of.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Tfr(e,t,r);return wfr(e,t),e};Object.defineProperty(Of,"__esModule",{value:!0});var GFe=Rfr(pX());Of.default={IS_READ_ONLY:!1,parseCommand(t,e,...r){t.push("BZMPOP",e.toString()),(0,GFe.parseZMPopArguments)(t,...r)},transformReply:GFe.default.transformReply}});var hX=_(mX=>{"use strict";Object.defineProperty(mX,"__esModule",{value:!0});var Nfr=we();mX.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("BZPOPMAX"),t.pushKeys(e),t.push(r.toString())},transformReply:{2(t,e,r){return t===null?null:{key:t[0],value:t[1],score:Nfr.transformDoubleReply[2](t[2],e,r)}},3(t){return t===null?null:{key:t[0],value:t[1],score:t[2]}}}}});var VFe=_(VC=>{"use strict";var Ofr=VC&&VC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(VC,"__esModule",{value:!0});var KFe=Ofr(hX());VC.default={IS_READ_ONLY:KFe.default.IS_READ_ONLY,parseCommand(t,e,r){t.push("BZPOPMIN"),t.pushKeys(e),t.push(r.toString())},transformReply:KFe.default.transformReply}});var YFe=_(gX=>{"use strict";Object.defineProperty(gX,"__esModule",{value:!0});gX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLIENT","CACHING",e?"YES":"NO")},transformReply:void 0}});var JFe=_(yX=>{"use strict";Object.defineProperty(yX,"__esModule",{value:!0});yX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLIENT","GETNAME")},transformReply:void 0}});var XFe=_(AX=>{"use strict";Object.defineProperty(AX,"__esModule",{value:!0});AX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLIENT","GETREDIR")},transformReply:void 0}});var ZFe=_(xX=>{"use strict";Object.defineProperty(xX,"__esModule",{value:!0});xX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLIENT","ID")},transformReply:void 0}});var _X=_(bX=>{"use strict";Object.defineProperty(bX,"__esModule",{value:!0});var kfr=/([^\s=]+)=([^\s]*)/g;bX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLIENT","INFO")},transformReply(t){let e={};for(let n of t.toString().matchAll(kfr))e[n[1]]=n[2];let r={id:Number(e.id),addr:e.addr,fd:Number(e.fd),name:e.name,age:Number(e.age),idle:Number(e.idle),flags:e.flags,db:Number(e.db),sub:Number(e.sub),psub:Number(e.psub),multi:Number(e.multi),qbuf:Number(e.qbuf),qbufFree:Number(e["qbuf-free"]),argvMem:Number(e["argv-mem"]),obl:Number(e.obl),oll:Number(e.oll),omem:Number(e.omem),totMem:Number(e["tot-mem"]),events:e.events,cmd:e.cmd,user:e.user,libName:e["lib-name"],libVer:e["lib-ver"]};return e.laddr!==void 0&&(r.laddr=e.laddr),e.redir!==void 0&&(r.redir=Number(e.redir)),e.ssub!==void 0&&(r.ssub=Number(e.ssub)),e["multi-mem"]!==void 0&&(r.multiMem=Number(e["multi-mem"])),e.resp!==void 0&&(r.resp=Number(e.resp)),r}}});var t7e=_(Fo=>{"use strict";Object.defineProperty(Fo,"__esModule",{value:!0});Fo.CLIENT_KILL_FILTERS=void 0;Fo.CLIENT_KILL_FILTERS={ADDRESS:"ADDR",LOCAL_ADDRESS:"LADDR",ID:"ID",TYPE:"TYPE",USER:"USER",SKIP_ME:"SKIPME",MAXAGE:"MAXAGE"};Fo.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){if(t.push("CLIENT","KILL"),Array.isArray(e))for(let r of e)e7e(t,r);else e7e(t,e)},transformReply:void 0};function e7e(t,e){if(e===Fo.CLIENT_KILL_FILTERS.SKIP_ME){t.push("SKIPME");return}switch(t.push(e.filter),e.filter){case Fo.CLIENT_KILL_FILTERS.ADDRESS:t.push(e.address);break;case Fo.CLIENT_KILL_FILTERS.LOCAL_ADDRESS:t.push(e.localAddress);break;case Fo.CLIENT_KILL_FILTERS.ID:t.push(typeof e.id=="number"?e.id.toString():e.id);break;case Fo.CLIENT_KILL_FILTERS.TYPE:t.push(e.type);break;case Fo.CLIENT_KILL_FILTERS.USER:t.push(e.username);break;case Fo.CLIENT_KILL_FILTERS.SKIP_ME:t.push(e.skipMe?"yes":"no");break;case Fo.CLIENT_KILL_FILTERS.MAXAGE:t.push(e.maxAge.toString());break}}});var r7e=_(YC=>{"use strict";var Pfr=YC&&YC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(YC,"__esModule",{value:!0});var Dfr=Pfr(_X());YC.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLIENT","LIST"),e&&(e.TYPE!==void 0?t.push("TYPE",e.TYPE):(t.push("ID"),t.pushVariadic(e.ID)))},transformReply(t){let e=t.toString().split(` +`),r=e.length-1,n=[];for(let s=0;s{"use strict";Object.defineProperty(EX,"__esModule",{value:!0});EX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLIENT","NO-EVICT",e?"ON":"OFF")},transformReply:void 0}});var s7e=_(vX=>{"use strict";Object.defineProperty(vX,"__esModule",{value:!0});vX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLIENT","NO-TOUCH",e?"ON":"OFF")},transformReply:void 0}});var i7e=_(SX=>{"use strict";Object.defineProperty(SX,"__esModule",{value:!0});SX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("CLIENT","PAUSE",e.toString()),r&&t.push(r)},transformReply:void 0}});var a7e=_(IX=>{"use strict";Object.defineProperty(IX,"__esModule",{value:!0});IX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLIENT","SETNAME",e)},transformReply:void 0}});var o7e=_(CX=>{"use strict";Object.defineProperty(CX,"__esModule",{value:!0});CX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){if(t.push("CLIENT","TRACKING",e?"ON":"OFF"),e){if(r?.REDIRECT&&t.push("REDIRECT",r.REDIRECT.toString()),Bfr(r)){if(t.push("BCAST"),r?.PREFIX)if(Array.isArray(r.PREFIX))for(let n of r.PREFIX)t.push("PREFIX",n);else t.push("PREFIX",r.PREFIX)}else Lfr(r)?t.push("OPTIN"):Mfr(r)&&t.push("OPTOUT");r?.NOLOOP&&t.push("NOLOOP")}},transformReply:void 0};function Bfr(t){return t?.BCAST===!0}function Lfr(t){return t?.OPTIN===!0}function Mfr(t){return t?.OPTOUT===!0}});var c7e=_(TX=>{"use strict";Object.defineProperty(TX,"__esModule",{value:!0});TX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLIENT","TRACKINGINFO")},transformReply:{2:t=>({flags:t[1],redirect:t[3],prefixes:t[5]}),3:void 0}}});var u7e=_(wX=>{"use strict";Object.defineProperty(wX,"__esModule",{value:!0});wX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLIENT","UNPAUSE")},transformReply:void 0}});var l7e=_(RX=>{"use strict";Object.defineProperty(RX,"__esModule",{value:!0});RX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","ADDSLOTS"),t.pushVariadicNumber(e)},transformReply:void 0}});var d7e=_(NX=>{"use strict";Object.defineProperty(NX,"__esModule",{value:!0});var Wfr=we();NX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","ADDSLOTSRANGE"),(0,Wfr.parseSlotRangesArguments)(t,e)},transformReply:void 0}});var f7e=_(OX=>{"use strict";Object.defineProperty(OX,"__esModule",{value:!0});OX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","BUMPEPOCH")},transformReply:void 0}});var p7e=_(kX=>{"use strict";Object.defineProperty(kX,"__esModule",{value:!0});kX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","COUNT-FAILURE-REPORTS",e)},transformReply:void 0}});var m7e=_(PX=>{"use strict";Object.defineProperty(PX,"__esModule",{value:!0});PX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","COUNTKEYSINSLOT",e.toString())},transformReply:void 0}});var h7e=_(DX=>{"use strict";Object.defineProperty(DX,"__esModule",{value:!0});DX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","DELSLOTS"),t.pushVariadicNumber(e)},transformReply:void 0}});var g7e=_(BX=>{"use strict";Object.defineProperty(BX,"__esModule",{value:!0});var $fr=we();BX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","DELSLOTSRANGE"),(0,$fr.parseSlotRangesArguments)(t,e)},transformReply:void 0}});var y7e=_(JC=>{"use strict";Object.defineProperty(JC,"__esModule",{value:!0});JC.FAILOVER_MODES=void 0;JC.FAILOVER_MODES={FORCE:"FORCE",TAKEOVER:"TAKEOVER"};JC.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","FAILOVER"),e?.mode&&t.push(e.mode)},transformReply:void 0}});var A7e=_(LX=>{"use strict";Object.defineProperty(LX,"__esModule",{value:!0});LX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","FLUSHSLOTS")},transformReply:void 0}});var x7e=_(MX=>{"use strict";Object.defineProperty(MX,"__esModule",{value:!0});MX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","FORGET",e)},transformReply:void 0}});var b7e=_(WX=>{"use strict";Object.defineProperty(WX,"__esModule",{value:!0});WX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("CLUSTER","GETKEYSINSLOT",e.toString(),r.toString())},transformReply:void 0}});var _7e=_($X=>{"use strict";Object.defineProperty($X,"__esModule",{value:!0});$X.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","INFO")},transformReply:void 0}});var E7e=_(UX=>{"use strict";Object.defineProperty(UX,"__esModule",{value:!0});UX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","KEYSLOT",e)},transformReply:void 0}});var v7e=_(FX=>{"use strict";Object.defineProperty(FX,"__esModule",{value:!0});FX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","LINKS")},transformReply:{2:t=>t.map(e=>{let r=e;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 S7e=_(qX=>{"use strict";Object.defineProperty(qX,"__esModule",{value:!0});qX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("CLUSTER","MEET",e,r.toString())},transformReply:void 0}});var I7e=_(jX=>{"use strict";Object.defineProperty(jX,"__esModule",{value:!0});jX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","MYID")},transformReply:void 0}});var C7e=_(QX=>{"use strict";Object.defineProperty(QX,"__esModule",{value:!0});QX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","MYSHARDID")},transformReply:void 0}});var T7e=_(HX=>{"use strict";Object.defineProperty(HX,"__esModule",{value:!0});HX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","NODES")},transformReply:void 0}});var w7e=_(GX=>{"use strict";Object.defineProperty(GX,"__esModule",{value:!0});GX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","REPLICAS",e)},transformReply:void 0}});var R7e=_(zX=>{"use strict";Object.defineProperty(zX,"__esModule",{value:!0});zX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","REPLICATE",e)},transformReply:void 0}});var N7e=_(KX=>{"use strict";Object.defineProperty(KX,"__esModule",{value:!0});KX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","RESET"),e?.mode&&t.push(e.mode)},transformReply:void 0}});var O7e=_(VX=>{"use strict";Object.defineProperty(VX,"__esModule",{value:!0});VX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","SAVECONFIG")},transformReply:void 0}});var k7e=_(YX=>{"use strict";Object.defineProperty(YX,"__esModule",{value:!0});YX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","SET-CONFIG-EPOCH",e.toString())},transformReply:void 0}});var P7e=_(XC=>{"use strict";Object.defineProperty(XC,"__esModule",{value:!0});XC.CLUSTER_SLOT_STATES=void 0;XC.CLUSTER_SLOT_STATES={IMPORTING:"IMPORTING",MIGRATING:"MIGRATING",STABLE:"STABLE",NODE:"NODE"};XC.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("CLUSTER","SETSLOT",e.toString(),r),n&&t.push(n)},transformReply:void 0}});var B7e=_(JX=>{"use strict";Object.defineProperty(JX,"__esModule",{value:!0});JX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","SLOTS")},transformReply(t){return t.map(([e,r,n,...s])=>({from:e,to:r,master:D7e(n),replicas:s.map(D7e)}))}};function D7e(t){let[e,r,n]=t;return{host:e,port:r,id:n}}});var L7e=_(XX=>{"use strict";Object.defineProperty(XX,"__esModule",{value:!0});XX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("COMMAND","COUNT")},transformReply:void 0}});var M7e=_(ZX=>{"use strict";Object.defineProperty(ZX,"__esModule",{value:!0});ZX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("COMMAND","GETKEYS"),t.push(...e)},transformReply:void 0}});var W7e=_(eZ=>{"use strict";Object.defineProperty(eZ,"__esModule",{value:!0});eZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("COMMAND","GETKEYSANDFLAGS"),t.push(...e)},transformReply(t){return t.map(e=>{let[r,n]=e;return{key:r,flags:n}})}}});var $7e=_(tZ=>{"use strict";Object.defineProperty(tZ,"__esModule",{value:!0});var Ufr=we();tZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("COMMAND","INFO",...e)},transformReply(t){return t.map(e=>e?(0,Ufr.transformCommandReply)(e):null)}}});var U7e=_(ZC=>{"use strict";Object.defineProperty(ZC,"__esModule",{value:!0});ZC.COMMAND_LIST_FILTER_BY=void 0;ZC.COMMAND_LIST_FILTER_BY={MODULE:"MODULE",ACLCAT:"ACLCAT",PATTERN:"PATTERN"};ZC.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("COMMAND","LIST"),e?.FILTERBY&&t.push("FILTERBY",e.FILTERBY.type,e.FILTERBY.value)},transformReply:void 0}});var F7e=_(rZ=>{"use strict";Object.defineProperty(rZ,"__esModule",{value:!0});var Ffr=we();rZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("COMMAND")},transformReply(t){return t.map(Ffr.transformCommandReply)}}});var q7e=_(nZ=>{"use strict";Object.defineProperty(nZ,"__esModule",{value:!0});var qfr=we();nZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CONFIG","GET"),t.pushVariadic(e)},transformReply:{2:qfr.transformTuplesReply,3:void 0}}});var j7e=_(sZ=>{"use strict";Object.defineProperty(sZ,"__esModule",{value:!0});sZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CONFIG","RESETSTAT")},transformReply:void 0}});var Q7e=_(iZ=>{"use strict";Object.defineProperty(iZ,"__esModule",{value:!0});iZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CONFIG","REWRITE")},transformReply:void 0}});var H7e=_(aZ=>{"use strict";Object.defineProperty(aZ,"__esModule",{value:!0});aZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,...[e,r]){if(t.push("CONFIG","SET"),typeof e=="string"||e instanceof Buffer)t.push(e,r);else for(let[n,s]of Object.entries(e))t.push(n,s)},transformReply:void 0}});var G7e=_(oZ=>{"use strict";Object.defineProperty(oZ,"__esModule",{value:!0});oZ.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("COPY"),t.pushKeys([e,r]),n?.DB&&t.push("DB",n.DB.toString()),n?.REPLACE&&t.push("REPLACE")},transformReply:void 0}});var z7e=_(cZ=>{"use strict";Object.defineProperty(cZ,"__esModule",{value:!0});cZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("DBSIZE")},transformReply:void 0}});var K7e=_(uZ=>{"use strict";Object.defineProperty(uZ,"__esModule",{value:!0});uZ.default={parseCommand(t,e){t.push("DECR"),t.pushKey(e)},transformReply:void 0}});var V7e=_(lZ=>{"use strict";Object.defineProperty(lZ,"__esModule",{value:!0});lZ.default={parseCommand(t,e,r){t.push("DECRBY"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var Y7e=_(dZ=>{"use strict";Object.defineProperty(dZ,"__esModule",{value:!0});dZ.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("DEL"),t.pushKeys(e)},transformReply:void 0}});var J7e=_(e2=>{"use strict";Object.defineProperty(e2,"__esModule",{value:!0});e2.DelexCondition=void 0;e2.DelexCondition={IFEQ:"IFEQ",IFNE:"IFNE",IFDEQ:"IFDEQ",IFDNE:"IFDNE"};e2.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("DELEX"),t.pushKey(e),r&&(t.push(r.condition),t.push(r.matchValue))},transformReply:void 0}});var X7e=_(fZ=>{"use strict";Object.defineProperty(fZ,"__esModule",{value:!0});fZ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("DIGEST"),t.pushKey(e)},transformReply:void 0}});var Z7e=_(pZ=>{"use strict";Object.defineProperty(pZ,"__esModule",{value:!0});pZ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("DUMP"),t.pushKey(e)},transformReply:void 0}});var e9e=_(mZ=>{"use strict";Object.defineProperty(mZ,"__esModule",{value:!0});mZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("ECHO",e)},transformReply:void 0}});var Pg=_(t2=>{"use strict";Object.defineProperty(t2,"__esModule",{value:!0});t2.parseEvalArguments=void 0;function t9e(t,e,r){t.push(e),r?.keys?t.pushKeysLength(r.keys):t.push("0"),r?.arguments&&t.push(...r.arguments)}t2.parseEvalArguments=t9e;t2.default={IS_READ_ONLY:!1,parseCommand(...t){t[0].push("EVAL"),t9e(...t)},transformReply:void 0}});var n9e=_(kf=>{"use strict";var jfr=kf&&kf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Qfr=kf&&kf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Hfr=kf&&kf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&jfr(e,t,r);return Qfr(e,t),e};Object.defineProperty(kf,"__esModule",{value:!0});var r9e=Hfr(Pg());kf.default={IS_READ_ONLY:!0,parseCommand(...t){t[0].push("EVAL_RO"),(0,r9e.parseEvalArguments)(...t)},transformReply:r9e.default.transformReply}});var i9e=_(Pf=>{"use strict";var Gfr=Pf&&Pf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),zfr=Pf&&Pf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Kfr=Pf&&Pf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Gfr(e,t,r);return zfr(e,t),e};Object.defineProperty(Pf,"__esModule",{value:!0});var s9e=Kfr(Pg());Pf.default={IS_READ_ONLY:!0,parseCommand(...t){t[0].push("EVALSHA_RO"),(0,s9e.parseEvalArguments)(...t)},transformReply:s9e.default.transformReply}});var o9e=_(Df=>{"use strict";var Vfr=Df&&Df.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Yfr=Df&&Df.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Jfr=Df&&Df.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Vfr(e,t,r);return Yfr(e,t),e};Object.defineProperty(Df,"__esModule",{value:!0});var a9e=Jfr(Pg());Df.default={IS_READ_ONLY:!1,parseCommand(...t){t[0].push("EVALSHA"),(0,a9e.parseEvalArguments)(...t)},transformReply:a9e.default.transformReply}});var u9e=_(hZ=>{"use strict";Object.defineProperty(hZ,"__esModule",{value:!0});hZ.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){if(t.push("GEOADD"),t.pushKey(e),n?.condition?t.push(n.condition):n?.NX?t.push("NX"):n?.XX&&t.push("XX"),n?.CH&&t.push("CH"),Array.isArray(r))for(let s of r)c9e(t,s);else c9e(t,r)},transformReply:void 0};function c9e(t,{longitude:e,latitude:r,member:n}){t.push(e.toString(),r.toString(),n)}});var l9e=_(gZ=>{"use strict";Object.defineProperty(gZ,"__esModule",{value:!0});gZ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("GEODIST"),t.pushKey(e),t.push(r,n),s&&t.push(s)},transformReply(t){return t===null?null:Number(t)}}});var d9e=_(yZ=>{"use strict";Object.defineProperty(yZ,"__esModule",{value:!0});yZ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("GEOHASH"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var f9e=_(AZ=>{"use strict";Object.defineProperty(AZ,"__esModule",{value:!0});AZ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("GEOPOS"),t.pushKey(e),t.pushVariadic(r)},transformReply(t){return t.map(e=>{let r=e;return r===null?null:{longitude:r[0],latitude:r[1]}})}}});var Bg=_(Dg=>{"use strict";Object.defineProperty(Dg,"__esModule",{value:!0});Dg.parseGeoSearchOptions=Dg.parseGeoSearchArguments=void 0;function p9e(t,e,r,n,s){t.pushKey(e),typeof r=="string"||r instanceof Buffer?t.push("FROMMEMBER",r):t.push("FROMLONLAT",r.longitude.toString(),r.latitude.toString()),"radius"in n?t.push("BYRADIUS",n.radius.toString(),n.unit):t.push("BYBOX",n.width.toString(),n.height.toString(),n.unit),m9e(t,s)}Dg.parseGeoSearchArguments=p9e;function m9e(t,e){e?.SORT&&t.push(e.SORT),e?.COUNT&&(typeof e.COUNT=="number"?t.push("COUNT",e.COUNT.toString()):(t.push("COUNT",e.COUNT.value.toString()),e.COUNT.ANY&&t.push("ANY")))}Dg.parseGeoSearchOptions=m9e;Dg.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("GEOSEARCH"),p9e(t,e,r,n,s)},transformReply:void 0}});var n2=_(r2=>{"use strict";Object.defineProperty(r2,"__esModule",{value:!0});r2.parseGeoRadiusArguments=void 0;var Xfr=Bg();function h9e(t,e,r,n,s,i){t.pushKey(e),t.push(r.longitude.toString(),r.latitude.toString(),n.toString(),s),(0,Xfr.parseGeoSearchOptions)(t,i)}r2.parseGeoRadiusArguments=h9e;r2.default={IS_READ_ONLY:!1,parseCommand(...t){return t[0].push("GEORADIUS"),h9e(...t)},transformReply:void 0}});var s2=_(Vl=>{"use strict";var Zfr=Vl&&Vl.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Vl,"__esModule",{value:!0});Vl.GEO_REPLY_WITH=void 0;var g9e=Zfr(Bg());Vl.GEO_REPLY_WITH={DISTANCE:"WITHDIST",HASH:"WITHHASH",COORDINATES:"WITHCOORD"};Vl.default={IS_READ_ONLY:g9e.default.IS_READ_ONLY,parseCommand(t,e,r,n,s,i){g9e.default.parseCommand(t,e,r,n,i),t.push(...s),t.preserve=s},transformReply(t,e){let r=new Set(e),n=0,s=r.has(Vl.GEO_REPLY_WITH.DISTANCE)&&++n,i=r.has(Vl.GEO_REPLY_WITH.HASH)&&++n,a=r.has(Vl.GEO_REPLY_WITH.COORDINATES)&&++n;return t.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 BL=_(qo=>{"use strict";var epr=qo&&qo.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),tpr=qo&&qo.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),rpr=qo&&qo.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&epr(e,t,r);return tpr(e,t),e},npr=qo&&qo.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(qo,"__esModule",{value:!0});qo.parseGeoRadiusWithArguments=void 0;var y9e=rpr(n2()),spr=npr(s2());function A9e(t,e,r,n,s,i,a){(0,y9e.parseGeoRadiusArguments)(t,e,r,n,s,a),t.pushVariadic(i),t.preserve=i}qo.parseGeoRadiusWithArguments=A9e;qo.default={IS_READ_ONLY:y9e.default.IS_READ_ONLY,parseCommand(t,e,r,n,s,i,a){t.push("GEORADIUS"),A9e(t,e,r,n,s,i,a)},transformReply:spr.default.transformReply}});var x9e=_(i2=>{"use strict";var ipr=i2&&i2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(i2,"__esModule",{value:!0});var apr=BL(),opr=ipr(BL());i2.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(...t){t[0].push("GEORADIUS_RO"),(0,apr.parseGeoRadiusWithArguments)(...t)},transformReply:opr.default.transformReply}});var _9e=_(Bf=>{"use strict";var cpr=Bf&&Bf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),upr=Bf&&Bf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),lpr=Bf&&Bf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&cpr(e,t,r);return upr(e,t),e};Object.defineProperty(Bf,"__esModule",{value:!0});var b9e=lpr(n2());Bf.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(...t){t[0].push("GEORADIUS_RO"),(0,b9e.parseGeoRadiusArguments)(...t)},transformReply:b9e.default.transformReply}});var v9e=_(Lf=>{"use strict";var dpr=Lf&&Lf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),fpr=Lf&&Lf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),ppr=Lf&&Lf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&dpr(e,t,r);return fpr(e,t),e};Object.defineProperty(Lf,"__esModule",{value:!0});var E9e=ppr(n2());Lf.default={IS_READ_ONLY:E9e.default.IS_READ_ONLY,parseCommand(t,e,r,n,s,i,a){t.push("GEORADIUS"),(0,E9e.parseGeoRadiusArguments)(t,e,r,n,s,a),a?.STOREDIST?(t.push("STOREDIST"),t.pushKey(i)):(t.push("STORE"),t.pushKey(i))},transformReply:void 0}});var o2=_(a2=>{"use strict";Object.defineProperty(a2,"__esModule",{value:!0});a2.parseGeoRadiusByMemberArguments=void 0;var mpr=Bg();function S9e(t,e,r,n,s,i){t.pushKey(e),t.push(r,n.toString(),s),(0,mpr.parseGeoSearchOptions)(t,i)}a2.parseGeoRadiusByMemberArguments=S9e;a2.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,i){t.push("GEORADIUSBYMEMBER"),S9e(t,e,r,n,s,i)},transformReply:void 0}});var xZ=_(Lg=>{"use strict";var I9e=Lg&&Lg.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Lg,"__esModule",{value:!0});Lg.parseGeoRadiusByMemberWithArguments=void 0;var hpr=I9e(o2()),gpr=Bg(),ypr=I9e(s2());function C9e(t,e,r,n,s,i,a){t.pushKey(e),t.push(r,n.toString(),s),(0,gpr.parseGeoSearchOptions)(t,a),t.push(...i),t.preserve=i}Lg.parseGeoRadiusByMemberWithArguments=C9e;Lg.default={IS_READ_ONLY:hpr.default.IS_READ_ONLY,parseCommand(t,e,r,n,s,i,a){t.push("GEORADIUSBYMEMBER"),C9e(t,e,r,n,s,i,a)},transformReply:ypr.default.transformReply}});var w9e=_(Mf=>{"use strict";var Apr=Mf&&Mf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),xpr=Mf&&Mf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),bpr=Mf&&Mf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Apr(e,t,r);return xpr(e,t),e};Object.defineProperty(Mf,"__esModule",{value:!0});var T9e=bpr(xZ());Mf.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(...t){t[0].push("GEORADIUSBYMEMBER_RO"),(0,T9e.parseGeoRadiusByMemberWithArguments)(...t)},transformReply:T9e.default.transformReply}});var N9e=_(Wf=>{"use strict";var _pr=Wf&&Wf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Epr=Wf&&Wf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),vpr=Wf&&Wf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&_pr(e,t,r);return Epr(e,t),e};Object.defineProperty(Wf,"__esModule",{value:!0});var R9e=vpr(o2());Wf.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(...t){t[0].push("GEORADIUSBYMEMBER_RO"),(0,R9e.parseGeoRadiusByMemberArguments)(...t)},transformReply:R9e.default.transformReply}});var k9e=_($f=>{"use strict";var Spr=$f&&$f.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Ipr=$f&&$f.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Cpr=$f&&$f.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Spr(e,t,r);return Ipr(e,t),e};Object.defineProperty($f,"__esModule",{value:!0});var O9e=Cpr(o2());$f.default={IS_READ_ONLY:O9e.default.IS_READ_ONLY,parseCommand(t,e,r,n,s,i,a){t.push("GEORADIUSBYMEMBER"),(0,O9e.parseGeoRadiusByMemberArguments)(t,e,r,n,s,a),a?.STOREDIST?(t.push("STOREDIST"),t.pushKey(i)):(t.push("STORE"),t.pushKey(i))},transformReply:void 0}});var P9e=_(bZ=>{"use strict";Object.defineProperty(bZ,"__esModule",{value:!0});var Tpr=Bg();bZ.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,i){t.push("GEOSEARCHSTORE"),e!==void 0&&t.pushKey(e),(0,Tpr.parseGeoSearchArguments)(t,r,n,s,i),i?.STOREDIST&&t.push("STOREDIST")},transformReply:void 0}});var D9e=_(_Z=>{"use strict";Object.defineProperty(_Z,"__esModule",{value:!0});_Z.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("GET"),t.pushKey(e)},transformReply:void 0}});var B9e=_(EZ=>{"use strict";Object.defineProperty(EZ,"__esModule",{value:!0});EZ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("GETBIT"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var L9e=_(vZ=>{"use strict";Object.defineProperty(vZ,"__esModule",{value:!0});vZ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("GETDEL"),t.pushKey(e)},transformReply:void 0}});var M9e=_(IZ=>{"use strict";Object.defineProperty(IZ,"__esModule",{value:!0});var SZ=we();IZ.default={IS_READ_ONLY:!0,parseCommand(t,e,r){if(t.push("GETEX"),t.pushKey(e),"type"in r)switch(r.type){case"EX":case"PX":t.push(r.type,r.value.toString());break;case"EXAT":case"PXAT":t.push(r.type,(0,SZ.transformEXAT)(r.value));break;case"PERSIST":t.push("PERSIST");break}else"EX"in r?t.push("EX",r.EX.toString()):"PX"in r?t.push("PX",r.PX.toString()):"EXAT"in r?t.push("EXAT",(0,SZ.transformEXAT)(r.EXAT)):"PXAT"in r?t.push("PXAT",(0,SZ.transformPXAT)(r.PXAT)):t.push("PERSIST")},transformReply:void 0}});var W9e=_(CZ=>{"use strict";Object.defineProperty(CZ,"__esModule",{value:!0});CZ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("GETRANGE"),t.pushKey(e),t.push(r.toString(),n.toString())},transformReply:void 0}});var $9e=_(TZ=>{"use strict";Object.defineProperty(TZ,"__esModule",{value:!0});TZ.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("GETSET"),t.pushKey(e),t.push(r)},transformReply:void 0}});var U9e=_(wZ=>{"use strict";Object.defineProperty(wZ,"__esModule",{value:!0});wZ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("EXISTS"),t.pushKeys(e)},transformReply:void 0}});var F9e=_(RZ=>{"use strict";Object.defineProperty(RZ,"__esModule",{value:!0});RZ.default={parseCommand(t,e,r,n){t.push("EXPIRE"),t.pushKey(e),t.push(r.toString()),n&&t.push(n)},transformReply:void 0}});var q9e=_(NZ=>{"use strict";Object.defineProperty(NZ,"__esModule",{value:!0});var wpr=we();NZ.default={parseCommand(t,e,r,n){t.push("EXPIREAT"),t.pushKey(e),t.push((0,wpr.transformEXAT)(r)),n&&t.push(n)},transformReply:void 0}});var j9e=_(OZ=>{"use strict";Object.defineProperty(OZ,"__esModule",{value:!0});OZ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("EXPIRETIME"),t.pushKey(e)},transformReply:void 0}});var Q9e=_(c2=>{"use strict";Object.defineProperty(c2,"__esModule",{value:!0});c2.REDIS_FLUSH_MODES=void 0;c2.REDIS_FLUSH_MODES={ASYNC:"ASYNC",SYNC:"SYNC"};c2.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e){t.push("FLUSHALL"),e&&t.push(e)},transformReply:void 0}});var H9e=_(kZ=>{"use strict";Object.defineProperty(kZ,"__esModule",{value:!0});kZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e){t.push("FLUSHDB"),e&&t.push(e)},transformReply:void 0}});var z9e=_(Uf=>{"use strict";var Rpr=Uf&&Uf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Npr=Uf&&Uf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Opr=Uf&&Uf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Rpr(e,t,r);return Npr(e,t),e};Object.defineProperty(Uf,"__esModule",{value:!0});var G9e=Opr(Pg());Uf.default={IS_READ_ONLY:!1,parseCommand(...t){t[0].push("FCALL"),(0,G9e.parseEvalArguments)(...t)},transformReply:G9e.default.transformReply}});var V9e=_(Ff=>{"use strict";var kpr=Ff&&Ff.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Ppr=Ff&&Ff.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Dpr=Ff&&Ff.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&kpr(e,t,r);return Ppr(e,t),e};Object.defineProperty(Ff,"__esModule",{value:!0});var K9e=Dpr(Pg());Ff.default={IS_READ_ONLY:!1,parseCommand(...t){t[0].push("FCALL_RO"),(0,K9e.parseEvalArguments)(...t)},transformReply:K9e.default.transformReply}});var Y9e=_(PZ=>{"use strict";Object.defineProperty(PZ,"__esModule",{value:!0});PZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e){t.push("FUNCTION","DELETE",e)},transformReply:void 0}});var J9e=_(DZ=>{"use strict";Object.defineProperty(DZ,"__esModule",{value:!0});DZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("FUNCTION","DUMP")},transformReply:void 0}});var X9e=_(BZ=>{"use strict";Object.defineProperty(BZ,"__esModule",{value:!0});BZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e){t.push("FUNCTION","FLUSH"),e&&t.push(e)},transformReply:void 0}});var Z9e=_(LZ=>{"use strict";Object.defineProperty(LZ,"__esModule",{value:!0});LZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("FUNCTION","KILL")},transformReply:void 0}});var WZ=_(MZ=>{"use strict";Object.defineProperty(MZ,"__esModule",{value:!0});MZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e){t.push("FUNCTION","LIST"),e?.LIBRARYNAME&&t.push("LIBRARYNAME",e.LIBRARYNAME)},transformReply:{2:t=>t.map(e=>{let r=e;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 eqe=_(u2=>{"use strict";var Bpr=u2&&u2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(u2,"__esModule",{value:!0});var $Z=Bpr(WZ());u2.default={NOT_KEYED_COMMAND:$Z.default.NOT_KEYED_COMMAND,IS_READ_ONLY:$Z.default.IS_READ_ONLY,parseCommand(...t){$Z.default.parseCommand(...t),t[0].push("WITHCODE")},transformReply:{2:t=>t.map(e=>{let r=e;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 tqe=_(UZ=>{"use strict";Object.defineProperty(UZ,"__esModule",{value:!0});UZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("FUNCTION","LOAD"),r?.REPLACE&&t.push("REPLACE"),t.push(e)},transformReply:void 0}});var rqe=_(FZ=>{"use strict";Object.defineProperty(FZ,"__esModule",{value:!0});FZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("FUNCTION","RESTORE",e),r?.mode&&t.push(r.mode)},transformReply:void 0}});var nqe=_(qZ=>{"use strict";Object.defineProperty(qZ,"__esModule",{value:!0});var Lpr=we();qZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("FUNCTION","STATS")},transformReply:{2:t=>({running_script:Mpr(t[1]),engines:Wpr(t[3])}),3:void 0}};function Mpr(t){if((0,Lpr.isNullReply)(t))return null;let e=t;return{name:e[1],command:e[3],duration_ms:e[5]}}function Wpr(t){let e=t,r=Object.create(null);for(let n=0;n{"use strict";Object.defineProperty(jZ,"__esModule",{value:!0});jZ.default={parseCommand(t,e,r){t.push("HDEL"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var HZ=_(QZ=>{"use strict";Object.defineProperty(QZ,"__esModule",{value:!0});QZ.default={parseCommand(t,e,r){t.push("HELLO"),e&&(t.push(e.toString()),r?.AUTH&&t.push("AUTH",r.AUTH.username,r.AUTH.password),r?.SETNAME&&t.push("SETNAME",r.SETNAME))},transformReply:{2:t=>({server:t[1],version:t[3],proto:t[5],id:t[7],mode:t[9],role:t[11],modules:t[13]}),3:void 0}}});var iqe=_(GZ=>{"use strict";Object.defineProperty(GZ,"__esModule",{value:!0});GZ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HEXISTS"),t.pushKey(e),t.push(r)},transformReply:void 0}});var aqe=_(l2=>{"use strict";Object.defineProperty(l2,"__esModule",{value:!0});l2.HASH_EXPIRATION=void 0;l2.HASH_EXPIRATION={FIELD_NOT_EXISTS:-2,CONDITION_NOT_MET:0,UPDATED:1,DELETED:2};l2.default={parseCommand(t,e,r,n,s){t.push("HEXPIRE"),t.pushKey(e),t.push(n.toString()),s&&t.push(s),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var oqe=_(zZ=>{"use strict";Object.defineProperty(zZ,"__esModule",{value:!0});var $pr=we();zZ.default={parseCommand(t,e,r,n,s){t.push("HEXPIREAT"),t.pushKey(e),t.push((0,$pr.transformEXAT)(n)),s&&t.push(s),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var cqe=_(d2=>{"use strict";Object.defineProperty(d2,"__esModule",{value:!0});d2.HASH_EXPIRATION_TIME=void 0;d2.HASH_EXPIRATION_TIME={FIELD_NOT_EXISTS:-2,NO_EXPIRATION:-1};d2.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HEXPIRETIME"),t.pushKey(e),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var uqe=_(KZ=>{"use strict";Object.defineProperty(KZ,"__esModule",{value:!0});KZ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HGET"),t.pushKey(e),t.push(r)},transformReply:void 0}});var lqe=_(VZ=>{"use strict";Object.defineProperty(VZ,"__esModule",{value:!0});var Upr=we();VZ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("HGETALL"),t.pushKey(e)},TRANSFORM_LEGACY_REPLY:!0,transformReply:{2:Upr.transformTuplesReply,3:void 0}}});var dqe=_(YZ=>{"use strict";Object.defineProperty(YZ,"__esModule",{value:!0});YZ.default={parseCommand(t,e,r){t.push("HGETDEL"),t.pushKey(e),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var fqe=_(JZ=>{"use strict";Object.defineProperty(JZ,"__esModule",{value:!0});JZ.default={parseCommand(t,e,r,n){t.push("HGETEX"),t.pushKey(e),n?.expiration&&(typeof n.expiration=="string"?t.push(n.expiration):n.expiration.type==="PERSIST"?t.push("PERSIST"):t.push(n.expiration.type,n.expiration.value.toString())),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var pqe=_(XZ=>{"use strict";Object.defineProperty(XZ,"__esModule",{value:!0});XZ.default={parseCommand(t,e,r,n){t.push("HINCRBY"),t.pushKey(e),t.push(r,n.toString())},transformReply:void 0}});var mqe=_(ZZ=>{"use strict";Object.defineProperty(ZZ,"__esModule",{value:!0});ZZ.default={parseCommand(t,e,r,n){t.push("HINCRBYFLOAT"),t.pushKey(e),t.push(r,n.toString())},transformReply:void 0}});var hqe=_(eee=>{"use strict";Object.defineProperty(eee,"__esModule",{value:!0});eee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("HKEYS"),t.pushKey(e)},transformReply:void 0}});var gqe=_(tee=>{"use strict";Object.defineProperty(tee,"__esModule",{value:!0});tee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("HLEN"),t.pushKey(e)},transformReply:void 0}});var yqe=_(ree=>{"use strict";Object.defineProperty(ree,"__esModule",{value:!0});ree.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HMGET"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var Aqe=_(nee=>{"use strict";Object.defineProperty(nee,"__esModule",{value:!0});nee.default={parseCommand(t,e,r){t.push("HPERSIST"),t.pushKey(e),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var xqe=_(see=>{"use strict";Object.defineProperty(see,"__esModule",{value:!0});see.default={parseCommand(t,e,r,n,s){t.push("HPEXPIRE"),t.pushKey(e),t.push(n.toString()),s&&t.push(s),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var bqe=_(iee=>{"use strict";Object.defineProperty(iee,"__esModule",{value:!0});var Fpr=we();iee.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("HPEXPIREAT"),t.pushKey(e),t.push((0,Fpr.transformPXAT)(n)),s&&t.push(s),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var _qe=_(aee=>{"use strict";Object.defineProperty(aee,"__esModule",{value:!0});aee.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HPEXPIRETIME"),t.pushKey(e),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var Eqe=_(oee=>{"use strict";Object.defineProperty(oee,"__esModule",{value:!0});oee.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HPTTL"),t.pushKey(e),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var vqe=_(cee=>{"use strict";Object.defineProperty(cee,"__esModule",{value:!0});cee.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HRANDFIELD"),t.pushKey(e),t.push(r.toString(),"WITHVALUES")},transformReply:{2:t=>{let e=[],r=0;for(;rt.map(e=>{let[r,n]=e;return{field:r,value:n}})}}});var Sqe=_(uee=>{"use strict";Object.defineProperty(uee,"__esModule",{value:!0});uee.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HRANDFIELD"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var Iqe=_(lee=>{"use strict";Object.defineProperty(lee,"__esModule",{value:!0});lee.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("HRANDFIELD"),t.pushKey(e)},transformReply:void 0}});var f2=_(Mg=>{"use strict";Object.defineProperty(Mg,"__esModule",{value:!0});Mg.pushScanArguments=Mg.parseScanArguments=void 0;function Cqe(t,e,r){t.push(e),r?.MATCH&&t.push("MATCH",r.MATCH),r?.COUNT&&t.push("COUNT",r.COUNT.toString())}Mg.parseScanArguments=Cqe;function qpr(t,e,r){return t.push(e.toString()),r?.MATCH&&t.push("MATCH",r.MATCH),r?.COUNT&&t.push("COUNT",r.COUNT.toString()),t}Mg.pushScanArguments=qpr;Mg.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("SCAN"),Cqe(t,e,r),r?.TYPE&&t.push("TYPE",r.TYPE)},transformReply([t,e]){return{cursor:t,keys:e}}}});var fee=_(dee=>{"use strict";Object.defineProperty(dee,"__esModule",{value:!0});var jpr=f2();dee.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("HSCAN"),t.pushKey(e),(0,jpr.parseScanArguments)(t,r,n)},transformReply([t,e]){let r=[],n=0;for(;n{"use strict";var Qpr=p2&&p2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(p2,"__esModule",{value:!0});var Hpr=Qpr(fee());p2.default={IS_READ_ONLY:!0,parseCommand(...t){let e=t[0];Hpr.default.parseCommand(...t),e.push("NOVALUES")},transformReply([t,e]){return{cursor:t,fields:e}}}});var Rqe=_(pee=>{"use strict";Object.defineProperty(pee,"__esModule",{value:!0});pee.default={parseCommand(t,...[e,r,n]){t.push("HSET"),t.pushKey(e),typeof r=="string"||typeof r=="number"||r instanceof Buffer?t.push(Wg(r),Wg(n)):r instanceof Map?Gpr(t,r):Array.isArray(r)?wqe(t,r):zpr(t,r)},transformReply:void 0};function Gpr(t,e){for(let[r,n]of e.entries())t.push(Wg(r),Wg(n))}function wqe(t,e){for(let r of e){if(Array.isArray(r)){wqe(t,r);continue}t.push(Wg(r))}}function zpr(t,e){for(let r of Object.keys(e))t.push(Wg(r),Wg(e[r]))}function Wg(t){return typeof t=="number"?t.toString():t}});var Oqe=_(mee=>{"use strict";Object.defineProperty(mee,"__esModule",{value:!0});var Kpr=Kl();mee.default={parseCommand(t,e,r,n){t.push("HSETEX"),t.pushKey(e),n?.mode&&t.push(n.mode),n?.expiration&&(typeof n.expiration=="string"?t.push(n.expiration):n.expiration.type==="KEEPTTL"?t.push("KEEPTTL"):t.push(n.expiration.type,n.expiration.value.toString())),t.push("FIELDS"),r instanceof Map?Vpr(t,r):Array.isArray(r)?Ypr(t,r):Jpr(t,r)},transformReply:void 0};function Vpr(t,e){t.push(e.size.toString());for(let[r,n]of e.entries())t.push(m2(r),m2(n))}function Ypr(t,e){let r=new Kpr.BasicCommandParser;if(Nqe(r,e),r.redisArgs.length%2!=0)throw Error("invalid number of arguments, expected key value ....[key value] pairs, got key without value");t.push((r.redisArgs.length/2).toString()),t.push(...r.redisArgs)}function Nqe(t,e){for(let r of e){if(Array.isArray(r)){Nqe(t,r);continue}t.push(m2(r))}}function Jpr(t,e){let r=Object.keys(e).length;if(r==0)throw Error("object without keys");t.push(r.toString());for(let n of Object.keys(e))t.push(m2(n),m2(e[n]))}function m2(t){return typeof t=="number"?t.toString():t}});var kqe=_(hee=>{"use strict";Object.defineProperty(hee,"__esModule",{value:!0});hee.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("HSETNX"),t.pushKey(e),t.push(r,n)},transformReply:void 0}});var Pqe=_(gee=>{"use strict";Object.defineProperty(gee,"__esModule",{value:!0});gee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HSTRLEN"),t.pushKey(e),t.push(r)},transformReply:void 0}});var Dqe=_(yee=>{"use strict";Object.defineProperty(yee,"__esModule",{value:!0});yee.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HTTL"),t.pushKey(e),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var Bqe=_(Aee=>{"use strict";Object.defineProperty(Aee,"__esModule",{value:!0});Aee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("HVALS"),t.pushKey(e)},transformReply:void 0}});var Mqe=_(xee=>{"use strict";Object.defineProperty(xee,"__esModule",{value:!0});function Lqe(t){let e=[];for(let r=0;r{let r=e;return r.length===1?{start:Number(r[0]),end:Number(r[0])}:{start:Number(r[0]),end:Number(r[1])}})}function Zpr(t){let e={},r=t[0];for(let n=0;nt===null?null:Zpr(t),3:void 0},unstableResp3:!0}});var Wqe=_(bee=>{"use strict";Object.defineProperty(bee,"__esModule",{value:!0});bee.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t){t.push("HOTKEYS","RESET")},transformReply:void 0}});var $qe=_(h2=>{"use strict";Object.defineProperty(h2,"__esModule",{value:!0});h2.HOTKEYS_METRICS=void 0;h2.HOTKEYS_METRICS={CPU:"CPU",NET:"NET"};h2.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e){if(t.push("HOTKEYS","START"),t.push("METRICS",e.METRICS.count.toString()),e.METRICS.CPU&&t.push("CPU"),e.METRICS.NET&&t.push("NET"),e.COUNT!==void 0&&t.push("COUNT",e.COUNT.toString()),e.DURATION!==void 0&&t.push("DURATION",e.DURATION.toString()),e.SAMPLE!==void 0&&t.push("SAMPLE",e.SAMPLE.toString()),e.SLOTS!==void 0){t.push("SLOTS",e.SLOTS.count.toString());for(let r of e.SLOTS.slots)t.push(r.toString())}},transformReply:void 0}});var Uqe=_(_ee=>{"use strict";Object.defineProperty(_ee,"__esModule",{value:!0});_ee.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t){t.push("HOTKEYS","STOP")},transformReply:void 0}});var Fqe=_(Eee=>{"use strict";Object.defineProperty(Eee,"__esModule",{value:!0});Eee.default={parseCommand(t,e){t.push("INCR"),t.pushKey(e)},transformReply:void 0}});var qqe=_(vee=>{"use strict";Object.defineProperty(vee,"__esModule",{value:!0});vee.default={parseCommand(t,e,r){t.push("INCRBY"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var jqe=_(See=>{"use strict";Object.defineProperty(See,"__esModule",{value:!0});See.default={parseCommand(t,e,r){t.push("INCRBYFLOAT"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var Qqe=_(Iee=>{"use strict";Object.defineProperty(Iee,"__esModule",{value:!0});Iee.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("INFO"),e&&t.push(e)},transformReply:void 0}});var Hqe=_(Cee=>{"use strict";Object.defineProperty(Cee,"__esModule",{value:!0});Cee.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("KEYS",e)},transformReply:void 0}});var Gqe=_(Tee=>{"use strict";Object.defineProperty(Tee,"__esModule",{value:!0});Tee.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("LASTSAVE")},transformReply:void 0}});var zqe=_(wee=>{"use strict";Object.defineProperty(wee,"__esModule",{value:!0});wee.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("LATENCY","DOCTOR")},transformReply:void 0}});var Ree=_(g2=>{"use strict";Object.defineProperty(g2,"__esModule",{value:!0});g2.LATENCY_EVENTS=void 0;g2.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"};g2.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("LATENCY","GRAPH",e)},transformReply:void 0}});var Kqe=_(Nee=>{"use strict";Object.defineProperty(Nee,"__esModule",{value:!0});Nee.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("LATENCY","HISTORY",e)},transformReply:void 0}});var Vqe=_(Oee=>{"use strict";Object.defineProperty(Oee,"__esModule",{value:!0});Oee.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("LATENCY","LATEST")},transformReply:void 0}});var Yqe=_(y2=>{"use strict";Object.defineProperty(y2,"__esModule",{value:!0});y2.LATENCY_EVENTS=void 0;var e0r=Ree();Object.defineProperty(y2,"LATENCY_EVENTS",{enumerable:!0,get:function(){return e0r.LATENCY_EVENTS}});y2.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,...e){let r=["LATENCY","RESET"];e.length>0&&r.push(...e),t.push(...r)},transformReply:void 0}});var LL=_(kee=>{"use strict";Object.defineProperty(kee,"__esModule",{value:!0});kee.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("LCS"),t.pushKeys([e,r])},transformReply:void 0}});var Pee=_(A2=>{"use strict";var t0r=A2&&A2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(A2,"__esModule",{value:!0});var Jqe=t0r(LL());A2.default={IS_READ_ONLY:Jqe.default.IS_READ_ONLY,parseCommand(t,e,r,n){Jqe.default.parseCommand(t,e,r),t.push("IDX"),n?.MINMATCHLEN&&t.push("MINMATCHLEN",n.MINMATCHLEN.toString())},transformReply:{2:t=>({matches:t[1],len:t[3]}),3:void 0}}});var Zqe=_(x2=>{"use strict";var r0r=x2&&x2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(x2,"__esModule",{value:!0});var Xqe=r0r(Pee());x2.default={IS_READ_ONLY:Xqe.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];Xqe.default.parseCommand(...t),e.push("WITHMATCHLEN")},transformReply:{2:t=>({matches:t[1],len:t[3]}),3:void 0}}});var tje=_(b2=>{"use strict";var n0r=b2&&b2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(b2,"__esModule",{value:!0});var eje=n0r(LL());b2.default={IS_READ_ONLY:eje.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];eje.default.parseCommand(...t),e.push("LEN")},transformReply:void 0}});var rje=_(Dee=>{"use strict";Object.defineProperty(Dee,"__esModule",{value:!0});Dee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("LINDEX"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var nje=_(Bee=>{"use strict";Object.defineProperty(Bee,"__esModule",{value:!0});Bee.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("LINSERT"),t.pushKey(e),t.push(r,n,s)},transformReply:void 0}});var sje=_(Lee=>{"use strict";Object.defineProperty(Lee,"__esModule",{value:!0});Lee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("LLEN"),t.pushKey(e)},transformReply:void 0}});var ije=_(Mee=>{"use strict";Object.defineProperty(Mee,"__esModule",{value:!0});Mee.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("LMOVE"),t.pushKeys([e,r]),t.push(n,s)},transformReply:void 0}});var aje=_(Wee=>{"use strict";Object.defineProperty(Wee,"__esModule",{value:!0});Wee.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,...r){t.push("LOLWUT"),e&&(t.push("VERSION",e.toString()),t.pushVariadic(r.map(String)))},transformReply:void 0}});var Uee=_($ee=>{"use strict";Object.defineProperty($ee,"__esModule",{value:!0});$ee.default={parseCommand(t,e){t.push("LPOP"),t.pushKey(e)},transformReply:void 0}});var oje=_(_2=>{"use strict";var s0r=_2&&_2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(_2,"__esModule",{value:!0});var i0r=s0r(Uee());_2.default={IS_READ_ONLY:!1,parseCommand(t,e,r){i0r.default.parseCommand(t,e),t.push(r.toString())},transformReply:void 0}});var qee=_(Fee=>{"use strict";Object.defineProperty(Fee,"__esModule",{value:!0});Fee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("LPOS"),t.pushKey(e),t.push(r),n?.RANK!==void 0&&t.push("RANK",n.RANK.toString()),n?.MAXLEN!==void 0&&t.push("MAXLEN",n.MAXLEN.toString())},transformReply:void 0}});var cje=_(E2=>{"use strict";var a0r=E2&&E2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(E2,"__esModule",{value:!0});var jee=a0r(qee());E2.default={CACHEABLE:jee.default.CACHEABLE,IS_READ_ONLY:jee.default.IS_READ_ONLY,parseCommand(t,e,r,n,s){jee.default.parseCommand(t,e,r,s),t.push("COUNT",n.toString())},transformReply:void 0}});var uje=_(Qee=>{"use strict";Object.defineProperty(Qee,"__esModule",{value:!0});Qee.default={parseCommand(t,e,r){t.push("LPUSH"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var lje=_(Hee=>{"use strict";Object.defineProperty(Hee,"__esModule",{value:!0});Hee.default={parseCommand(t,e,r){t.push("LPUSHX"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var dje=_(Gee=>{"use strict";Object.defineProperty(Gee,"__esModule",{value:!0});Gee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("LRANGE"),t.pushKey(e),t.push(r.toString(),n.toString())},transformReply:void 0}});var fje=_(zee=>{"use strict";Object.defineProperty(zee,"__esModule",{value:!0});zee.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("LREM"),t.pushKey(e),t.push(r.toString()),t.push(n)},transformReply:void 0}});var pje=_(Kee=>{"use strict";Object.defineProperty(Kee,"__esModule",{value:!0});Kee.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("LSET"),t.pushKey(e),t.push(r.toString(),n)},transformReply:void 0}});var mje=_(Vee=>{"use strict";Object.defineProperty(Vee,"__esModule",{value:!0});Vee.default={parseCommand(t,e,r,n){t.push("LTRIM"),t.pushKey(e),t.push(r.toString(),n.toString())},transformReply:void 0}});var hje=_(Yee=>{"use strict";Object.defineProperty(Yee,"__esModule",{value:!0});Yee.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("MEMORY","DOCTOR")},transformReply:void 0}});var gje=_(Jee=>{"use strict";Object.defineProperty(Jee,"__esModule",{value:!0});Jee.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("MEMORY","MALLOC-STATS")},transformReply:void 0}});var yje=_(Xee=>{"use strict";Object.defineProperty(Xee,"__esModule",{value:!0});Xee.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t){t.push("MEMORY","PURGE")},transformReply:void 0}});var Aje=_(Zee=>{"use strict";Object.defineProperty(Zee,"__esModule",{value:!0});var o0r=we();Zee.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("MEMORY","STATS")},transformReply:{2:(t,e,r)=>{let n={},s=0;for(;s{"use strict";Object.defineProperty(ete,"__esModule",{value:!0});ete.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("MEMORY","USAGE"),t.pushKey(e),r?.SAMPLES&&t.push("SAMPLES",r.SAMPLES.toString())},transformReply:void 0}});var bje=_(tte=>{"use strict";Object.defineProperty(tte,"__esModule",{value:!0});tte.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("MGET"),t.pushKeys(e)},transformReply:void 0}});var _je=_(rte=>{"use strict";Object.defineProperty(rte,"__esModule",{value:!0});rte.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,i,a){t.push("MIGRATE",e,r.toString());let o=Array.isArray(n);o?t.push(""):t.push(n),t.push(s.toString(),i.toString()),a?.COPY&&t.push("COPY"),a?.REPLACE&&t.push("REPLACE"),a?.AUTH&&(a.AUTH.username?t.push("AUTH2",a.AUTH.username,a.AUTH.password):t.push("AUTH",a.AUTH.password)),o&&(t.push("KEYS"),t.pushVariadic(n))},transformReply:void 0}});var Eje=_(nte=>{"use strict";Object.defineProperty(nte,"__esModule",{value:!0});nte.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("MODULE","LIST")},transformReply:{2:t=>t.map(e=>{let r=e;return{name:r[1],ver:r[3]}}),3:void 0}}});var vje=_(ste=>{"use strict";Object.defineProperty(ste,"__esModule",{value:!0});ste.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("MODULE","LOAD",e),r&&t.push(...r)},transformReply:void 0}});var Sje=_(ite=>{"use strict";Object.defineProperty(ite,"__esModule",{value:!0});ite.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("MODULE","UNLOAD",e)},transformReply:void 0}});var Ije=_(ate=>{"use strict";Object.defineProperty(ate,"__esModule",{value:!0});ate.default={parseCommand(t,e,r){t.push("MOVE"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var ote=_(v2=>{"use strict";Object.defineProperty(v2,"__esModule",{value:!0});v2.parseMSetArguments=void 0;function Cje(t,e){if(Array.isArray(e)){if(e.length==0)throw new Error("empty toSet Argument");if(Array.isArray(e[0]))for(let r of e)t.pushKey(r[0]),t.push(r[1]);else{let r=e;for(let n=0;n{"use strict";Object.defineProperty(Ci,"__esModule",{value:!0});Ci.parseMSetExArguments=Ci.ExpirationMode=Ci.SetMode=void 0;var Tje=we();Ci.SetMode={XX:"XX",NX:"NX"};Ci.ExpirationMode={EX:"EX",PX:"PX",EXAT:"EXAT",PXAT:"PXAT",KEEPTTL:"KEEPTTL"};function wje(t,e){let r=[];if(Array.isArray(e)){if(e.length==0)throw new Error("empty keyValuePairs Argument");if(Array.isArray(e[0]))r=e;else{let n=e;for(let s=0;s{"use strict";Object.defineProperty(cte,"__esModule",{value:!0});var c0r=ote();cte.default={IS_READ_ONLY:!0,parseCommand(t,e){return t.push("MSETNX"),(0,c0r.parseMSetArguments)(t,e)},transformReply:void 0}});var Oje=_(ute=>{"use strict";Object.defineProperty(ute,"__esModule",{value:!0});ute.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("OBJECT","ENCODING"),t.pushKey(e)},transformReply:void 0}});var kje=_(lte=>{"use strict";Object.defineProperty(lte,"__esModule",{value:!0});lte.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("OBJECT","FREQ"),t.pushKey(e)},transformReply:void 0}});var Pje=_(dte=>{"use strict";Object.defineProperty(dte,"__esModule",{value:!0});dte.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("OBJECT","IDLETIME"),t.pushKey(e)},transformReply:void 0}});var Dje=_(fte=>{"use strict";Object.defineProperty(fte,"__esModule",{value:!0});fte.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("OBJECT","REFCOUNT"),t.pushKey(e)},transformReply:void 0}});var Bje=_(pte=>{"use strict";Object.defineProperty(pte,"__esModule",{value:!0});pte.default={parseCommand(t,e){t.push("PERSIST"),t.pushKey(e)},transformReply:void 0}});var Lje=_(mte=>{"use strict";Object.defineProperty(mte,"__esModule",{value:!0});mte.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("PEXPIRE"),t.pushKey(e),t.push(r.toString()),n&&t.push(n)},transformReply:void 0}});var Mje=_(hte=>{"use strict";Object.defineProperty(hte,"__esModule",{value:!0});var u0r=we();hte.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("PEXPIREAT"),t.pushKey(e),t.push((0,u0r.transformPXAT)(r)),n&&t.push(n)},transformReply:void 0}});var Wje=_(gte=>{"use strict";Object.defineProperty(gte,"__esModule",{value:!0});gte.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("PEXPIRETIME"),t.pushKey(e)},transformReply:void 0}});var $je=_(yte=>{"use strict";Object.defineProperty(yte,"__esModule",{value:!0});yte.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("PFADD"),t.pushKey(e),r&&t.pushVariadic(r)},transformReply:void 0}});var Uje=_(Ate=>{"use strict";Object.defineProperty(Ate,"__esModule",{value:!0});Ate.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("PFCOUNT"),t.pushKeys(e)},transformReply:void 0}});var Fje=_(xte=>{"use strict";Object.defineProperty(xte,"__esModule",{value:!0});xte.default={parseCommand(t,e,r){t.push("PFMERGE"),t.pushKey(e),r&&t.pushKeys(r)},transformReply:void 0}});var qje=_(bte=>{"use strict";Object.defineProperty(bte,"__esModule",{value:!0});bte.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("PING"),e&&t.push(e)},transformReply:void 0}});var jje=_(_te=>{"use strict";Object.defineProperty(_te,"__esModule",{value:!0});_te.default={parseCommand(t,e,r,n){t.push("PSETEX"),t.pushKey(e),t.push(r.toString(),n)},transformReply:void 0}});var Qje=_(Ete=>{"use strict";Object.defineProperty(Ete,"__esModule",{value:!0});Ete.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("PTTL"),t.pushKey(e)},transformReply:void 0}});var Hje=_(vte=>{"use strict";Object.defineProperty(vte,"__esModule",{value:!0});vte.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,IS_FORWARD_COMMAND:!0,parseCommand(t,e,r){t.push("PUBLISH",e,r)},transformReply:void 0}});var Gje=_(Ste=>{"use strict";Object.defineProperty(Ste,"__esModule",{value:!0});Ste.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("PUBSUB","CHANNELS"),e&&t.push(e)},transformReply:void 0}});var zje=_(Ite=>{"use strict";Object.defineProperty(Ite,"__esModule",{value:!0});Ite.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("PUBSUB","NUMPAT")},transformReply:void 0}});var Kje=_(Cte=>{"use strict";Object.defineProperty(Cte,"__esModule",{value:!0});Cte.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("PUBSUB","NUMSUB"),e&&t.pushVariadic(e)},transformReply(t){let e=Object.create(null),r=0;for(;r{"use strict";Object.defineProperty(Tte,"__esModule",{value:!0});Tte.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("PUBSUB","SHARDNUMSUB"),e&&t.pushVariadic(e)},transformReply(t){let e=Object.create(null);for(let r=0;r{"use strict";Object.defineProperty(wte,"__esModule",{value:!0});wte.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("PUBSUB","SHARDCHANNELS"),e&&t.push(e)},transformReply:void 0}});var Jje=_(Rte=>{"use strict";Object.defineProperty(Rte,"__esModule",{value:!0});Rte.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("RANDOMKEY")},transformReply:void 0}});var Xje=_(Nte=>{"use strict";Object.defineProperty(Nte,"__esModule",{value:!0});Nte.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("READONLY")},transformReply:void 0}});var Zje=_(Ote=>{"use strict";Object.defineProperty(Ote,"__esModule",{value:!0});Ote.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("RENAME"),t.pushKeys([e,r])},transformReply:void 0}});var eQe=_(kte=>{"use strict";Object.defineProperty(kte,"__esModule",{value:!0});kte.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("RENAMENX"),t.pushKeys([e,r])},transformReply:void 0}});var tQe=_(Pte=>{"use strict";Object.defineProperty(Pte,"__esModule",{value:!0});Pte.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("REPLICAOF",e,r.toString())},transformReply:void 0}});var rQe=_(Dte=>{"use strict";Object.defineProperty(Dte,"__esModule",{value:!0});Dte.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("RESTORE-ASKING")},transformReply:void 0}});var nQe=_(Bte=>{"use strict";Object.defineProperty(Bte,"__esModule",{value:!0});Bte.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("RESTORE"),t.pushKey(e),t.push(r.toString(),n),s?.REPLACE&&t.push("REPLACE"),s?.ABSTTL&&t.push("ABSTTL"),s?.IDLETIME&&t.push("IDLETIME",s.IDLETIME.toString()),s?.FREQ&&t.push("FREQ",s.FREQ.toString())},transformReply:void 0}});var sQe=_(Lte=>{"use strict";Object.defineProperty(Lte,"__esModule",{value:!0});Lte.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("ROLE")},transformReply(t){switch(t[0]){case"master":{let[e,r,n]=t;return{role:e,replicationOffest:r,replicas:n.map(s=>{let[i,a,o]=s;return{host:i,port:Number(a),replicationOffest:Number(o)}})}}case"slave":{let[e,r,n,s,i]=t;return{role:e,master:{host:r,port:n},state:s,dataReceived:i}}case"sentinel":{let[e,r]=t;return{role:e,masterNames:r}}}}}});var iQe=_(Mte=>{"use strict";Object.defineProperty(Mte,"__esModule",{value:!0});Mte.default={parseCommand(t,e,r){t.push("RPOP"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var aQe=_(Wte=>{"use strict";Object.defineProperty(Wte,"__esModule",{value:!0});Wte.default={parseCommand(t,e){t.push("RPOP"),t.pushKey(e)},transformReply:void 0}});var oQe=_($te=>{"use strict";Object.defineProperty($te,"__esModule",{value:!0});$te.default={parseCommand(t,e,r){t.push("RPOPLPUSH"),t.pushKeys([e,r])},transformReply:void 0}});var cQe=_(Ute=>{"use strict";Object.defineProperty(Ute,"__esModule",{value:!0});Ute.default={parseCommand(t,e,r){t.push("RPUSH"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var uQe=_(Fte=>{"use strict";Object.defineProperty(Fte,"__esModule",{value:!0});Fte.default={parseCommand(t,e,r){t.push("RPUSHX"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var lQe=_(qte=>{"use strict";Object.defineProperty(qte,"__esModule",{value:!0});qte.default={parseCommand(t,e,r){t.push("SADD"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var dQe=_(jte=>{"use strict";Object.defineProperty(jte,"__esModule",{value:!0});jte.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SCARD"),t.pushKey(e)},transformReply:void 0}});var fQe=_(Qte=>{"use strict";Object.defineProperty(Qte,"__esModule",{value:!0});Qte.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SCRIPT","DEBUG",e)},transformReply:void 0}});var pQe=_(Hte=>{"use strict";Object.defineProperty(Hte,"__esModule",{value:!0});Hte.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SCRIPT","EXISTS"),t.pushVariadic(e)},transformReply:void 0}});var mQe=_(Gte=>{"use strict";Object.defineProperty(Gte,"__esModule",{value:!0});Gte.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SCRIPT","FLUSH"),e&&t.push(e)},transformReply:void 0}});var hQe=_(zte=>{"use strict";Object.defineProperty(zte,"__esModule",{value:!0});zte.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("SCRIPT","KILL")},transformReply:void 0}});var gQe=_(Kte=>{"use strict";Object.defineProperty(Kte,"__esModule",{value:!0});Kte.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SCRIPT","LOAD",e)},transformReply:void 0}});var yQe=_(Vte=>{"use strict";Object.defineProperty(Vte,"__esModule",{value:!0});Vte.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SDIFF"),t.pushKeys(e)},transformReply:void 0}});var AQe=_(Yte=>{"use strict";Object.defineProperty(Yte,"__esModule",{value:!0});Yte.default={parseCommand(t,e,r){t.push("SDIFFSTORE"),t.pushKey(e),t.pushKeys(r)},transformReply:void 0}});var xQe=_(Jte=>{"use strict";Object.defineProperty(Jte,"__esModule",{value:!0});Jte.default={parseCommand(t,e,r,n){t.push("SET"),t.pushKey(e),t.push(typeof r=="number"?r.toString():r),n?.expiration?typeof n.expiration=="string"?t.push(n.expiration):n.expiration.type==="KEEPTTL"?t.push("KEEPTTL"):t.push(n.expiration.type,n.expiration.value.toString()):n?.EX!==void 0?t.push("EX",n.EX.toString()):n?.PX!==void 0?t.push("PX",n.PX.toString()):n?.EXAT!==void 0?t.push("EXAT",n.EXAT.toString()):n?.PXAT!==void 0?t.push("PXAT",n.PXAT.toString()):n?.KEEPTTL&&t.push("KEEPTTL"),n?.condition?(t.push(n.condition),n?.matchValue!==void 0&&t.push(n.matchValue)):n?.NX?t.push("NX"):n?.XX&&t.push("XX"),n?.GET&&t.push("GET")},transformReply:void 0}});var bQe=_(Xte=>{"use strict";Object.defineProperty(Xte,"__esModule",{value:!0});Xte.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("SETBIT"),t.pushKey(e),t.push(r.toString(),n.toString())},transformReply:void 0}});var _Qe=_(Zte=>{"use strict";Object.defineProperty(Zte,"__esModule",{value:!0});Zte.default={parseCommand(t,e,r,n){t.push("SETEX"),t.pushKey(e),t.push(r.toString(),n)},transformReply:void 0}});var EQe=_(ere=>{"use strict";Object.defineProperty(ere,"__esModule",{value:!0});ere.default={parseCommand(t,e,r){t.push("SETNX"),t.pushKey(e),t.push(r)},transformReply:void 0}});var vQe=_(tre=>{"use strict";Object.defineProperty(tre,"__esModule",{value:!0});tre.default={parseCommand(t,e,r,n){t.push("SETRANGE"),t.pushKey(e),t.push(r.toString(),n)},transformReply:void 0}});var SQe=_(rre=>{"use strict";Object.defineProperty(rre,"__esModule",{value:!0});rre.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SINTER"),t.pushKeys(e)},transformReply:void 0}});var IQe=_(nre=>{"use strict";Object.defineProperty(nre,"__esModule",{value:!0});nre.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("SINTERCARD"),t.pushKeysLength(e),typeof r=="number"?t.push("LIMIT",r.toString()):r?.LIMIT!==void 0&&t.push("LIMIT",r.LIMIT.toString())},transformReply:void 0}});var CQe=_(sre=>{"use strict";Object.defineProperty(sre,"__esModule",{value:!0});sre.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("SINTERSTORE"),t.pushKey(e),t.pushKeys(r)},transformReply:void 0}});var TQe=_(ire=>{"use strict";Object.defineProperty(ire,"__esModule",{value:!0});ire.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("SISMEMBER"),t.pushKey(e),t.push(r)},transformReply:void 0}});var wQe=_(are=>{"use strict";Object.defineProperty(are,"__esModule",{value:!0});are.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SMEMBERS"),t.pushKey(e)},transformReply:{2:void 0,3:void 0}}});var RQe=_(ore=>{"use strict";Object.defineProperty(ore,"__esModule",{value:!0});ore.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("SMISMEMBER"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var NQe=_(cre=>{"use strict";Object.defineProperty(cre,"__esModule",{value:!0});cre.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("SMOVE"),t.pushKeys([e,r]),t.push(n)},transformReply:void 0}});var ML=_(S2=>{"use strict";Object.defineProperty(S2,"__esModule",{value:!0});S2.parseSortArguments=void 0;function OQe(t,e,r){if(t.pushKey(e),r?.BY&&t.push("BY",r.BY),r?.LIMIT&&t.push("LIMIT",r.LIMIT.offset.toString(),r.LIMIT.count.toString()),r?.GET)if(Array.isArray(r.GET))for(let n of r.GET)t.push("GET",n);else t.push("GET",r.GET);r?.DIRECTION&&t.push(r.DIRECTION),r?.ALPHA&&t.push("ALPHA")}S2.parseSortArguments=OQe;S2.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("SORT"),OQe(t,e,r)},transformReply:void 0}});var PQe=_(qf=>{"use strict";var l0r=qf&&qf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),d0r=qf&&qf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),f0r=qf&&qf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&l0r(e,t,r);return d0r(e,t),e};Object.defineProperty(qf,"__esModule",{value:!0});var kQe=f0r(ML());qf.default={IS_READ_ONLY:!0,parseCommand(...t){t[0].push("SORT_RO"),(0,kQe.parseSortArguments)(...t)},transformReply:kQe.default.transformReply}});var DQe=_(I2=>{"use strict";var p0r=I2&&I2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(I2,"__esModule",{value:!0});var m0r=p0r(ML());I2.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){m0r.default.parseCommand(t,e,n),t.push("STORE",r)},transformReply:void 0}});var BQe=_(ure=>{"use strict";Object.defineProperty(ure,"__esModule",{value:!0});ure.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("SPOP"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var LQe=_(lre=>{"use strict";Object.defineProperty(lre,"__esModule",{value:!0});lre.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("SPOP"),t.pushKey(e)},transformReply:void 0}});var MQe=_(dre=>{"use strict";Object.defineProperty(dre,"__esModule",{value:!0});dre.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("SPUBLISH"),t.pushKey(e),t.push(r)},transformReply:void 0}});var pre=_(fre=>{"use strict";Object.defineProperty(fre,"__esModule",{value:!0});fre.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("SRANDMEMBER"),t.pushKey(e)},transformReply:void 0}});var $Qe=_(C2=>{"use strict";var h0r=C2&&C2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(C2,"__esModule",{value:!0});var WQe=h0r(pre());C2.default={IS_READ_ONLY:WQe.default.IS_READ_ONLY,parseCommand(t,e,r){WQe.default.parseCommand(t,e),t.push(r.toString())},transformReply:void 0}});var UQe=_(mre=>{"use strict";Object.defineProperty(mre,"__esModule",{value:!0});mre.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("SREM"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var FQe=_(hre=>{"use strict";Object.defineProperty(hre,"__esModule",{value:!0});var g0r=f2();hre.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("SSCAN"),t.pushKey(e),(0,g0r.parseScanArguments)(t,r,n)},transformReply([t,e]){return{cursor:t,members:e}}}});var qQe=_(gre=>{"use strict";Object.defineProperty(gre,"__esModule",{value:!0});gre.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("STRLEN"),t.pushKey(e)},transformReply:void 0}});var jQe=_(yre=>{"use strict";Object.defineProperty(yre,"__esModule",{value:!0});yre.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SUNION"),t.pushKeys(e)},transformReply:void 0}});var QQe=_(Are=>{"use strict";Object.defineProperty(Are,"__esModule",{value:!0});Are.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("SUNIONSTORE"),t.pushKey(e),t.pushKeys(r)},transformReply:void 0}});var HQe=_(xre=>{"use strict";Object.defineProperty(xre,"__esModule",{value:!0});xre.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("SWAPDB",e.toString(),r.toString())},transformReply:void 0}});var GQe=_(bre=>{"use strict";Object.defineProperty(bre,"__esModule",{value:!0});bre.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("TIME")},transformReply:void 0}});var zQe=_(_re=>{"use strict";Object.defineProperty(_re,"__esModule",{value:!0});_re.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("TOUCH"),t.pushKeys(e)},transformReply:void 0}});var KQe=_(Ere=>{"use strict";Object.defineProperty(Ere,"__esModule",{value:!0});Ere.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("TTL"),t.pushKey(e)},transformReply:void 0}});var VQe=_(vre=>{"use strict";Object.defineProperty(vre,"__esModule",{value:!0});vre.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("TYPE"),t.pushKey(e)},transformReply:void 0}});var YQe=_(Sre=>{"use strict";Object.defineProperty(Sre,"__esModule",{value:!0});Sre.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("UNLINK"),t.pushKeys(e)},transformReply:void 0}});var JQe=_(Ire=>{"use strict";Object.defineProperty(Ire,"__esModule",{value:!0});Ire.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("WAIT",e.toString(),r.toString())},transformReply:void 0}});var XQe=_(Cre=>{"use strict";Object.defineProperty(Cre,"__esModule",{value:!0});Cre.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("XACK"),t.pushKey(e),t.push(r),t.pushVariadic(n)},transformReply:void 0}});var ZQe=_(Tre=>{"use strict";Object.defineProperty(Tre,"__esModule",{value:!0});Tre.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("XACKDEL"),t.pushKey(e),t.push(r),s&&t.push(s),t.push("IDS"),t.pushVariadicWithLength(n)},transformReply:void 0}});var wre=_(T2=>{"use strict";Object.defineProperty(T2,"__esModule",{value:!0});T2.parseXAddArguments=void 0;function eHe(t,e,r,n,s,i){e.push("XADD"),e.pushKey(r),t&&e.push(t),i?.policy&&e.push(i.policy),i?.IDMPAUTO?e.push("IDMPAUTO",i.IDMPAUTO.pid):i?.IDMP&&e.push("IDMP",i.IDMP.pid,i.IDMP.iid),i?.TRIM&&(i.TRIM.strategy&&e.push(i.TRIM.strategy),i.TRIM.strategyModifier&&e.push(i.TRIM.strategyModifier),e.push(i.TRIM.threshold.toString()),i.TRIM.limit&&e.push("LIMIT",i.TRIM.limit.toString()),i.TRIM.policy&&e.push(i.TRIM.policy)),e.push(n);for(let[a,o]of Object.entries(s))e.push(a,o)}T2.parseXAddArguments=eHe;T2.default={IS_READ_ONLY:!1,parseCommand(...t){return eHe(void 0,...t)},transformReply:void 0}});var tHe=_(Rre=>{"use strict";Object.defineProperty(Rre,"__esModule",{value:!0});var y0r=wre();Rre.default={IS_READ_ONLY:!1,parseCommand(...t){return(0,y0r.parseXAddArguments)("NOMKSTREAM",...t)},transformReply:void 0}});var Ore=_(Nre=>{"use strict";Object.defineProperty(Nre,"__esModule",{value:!0});var A0r=we();Nre.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,i,a){t.push("XAUTOCLAIM"),t.pushKey(e),t.push(r,n,s.toString(),i),a?.COUNT&&t.push("COUNT",a.COUNT.toString())},transformReply(t,e,r){return{nextId:t[0],messages:t[1].map(A0r.transformStreamMessageNullReply.bind(void 0,r)),deletedMessages:t[2]}}}});var nHe=_(w2=>{"use strict";var x0r=w2&&w2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(w2,"__esModule",{value:!0});var rHe=x0r(Ore());w2.default={IS_READ_ONLY:rHe.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];rHe.default.parseCommand(...t),e.push("JUSTID")},transformReply(t){return{nextId:t[0],messages:t[1],deletedMessages:t[2]}}}});var Pre=_(kre=>{"use strict";Object.defineProperty(kre,"__esModule",{value:!0});var b0r=we();kre.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,i,a){t.push("XCLAIM"),t.pushKey(e),t.push(r,n,s.toString()),t.pushVariadic(i),a?.IDLE!==void 0&&t.push("IDLE",a.IDLE.toString()),a?.TIME!==void 0&&t.push("TIME",(a.TIME instanceof Date?a.TIME.getTime():a.TIME).toString()),a?.RETRYCOUNT!==void 0&&t.push("RETRYCOUNT",a.RETRYCOUNT.toString()),a?.FORCE&&t.push("FORCE"),a?.LASTID!==void 0&&t.push("LASTID",a.LASTID)},transformReply(t,e,r){return t.map(b0r.transformStreamMessageNullReply.bind(void 0,r))}}});var iHe=_(R2=>{"use strict";var _0r=R2&&R2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(R2,"__esModule",{value:!0});var sHe=_0r(Pre());R2.default={IS_READ_ONLY:sHe.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];sHe.default.parseCommand(...t),e.push("JUSTID")},transformReply:void 0}});var aHe=_(Dre=>{"use strict";Object.defineProperty(Dre,"__esModule",{value:!0});Dre.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("XCFGSET"),t.pushKey(e),r?.IDMP_DURATION!==void 0&&t.push("IDMP-DURATION",r.IDMP_DURATION.toString()),r?.IDMP_MAXSIZE!==void 0&&t.push("IDMP-MAXSIZE",r.IDMP_MAXSIZE.toString())},transformReply:void 0}});var oHe=_(Bre=>{"use strict";Object.defineProperty(Bre,"__esModule",{value:!0});Bre.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("XDEL"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var cHe=_(Lre=>{"use strict";Object.defineProperty(Lre,"__esModule",{value:!0});Lre.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("XDELEX"),t.pushKey(e),n&&t.push(n),t.push("IDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var uHe=_(Mre=>{"use strict";Object.defineProperty(Mre,"__esModule",{value:!0});Mre.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("XGROUP","CREATE"),t.pushKey(e),t.push(r,n),s?.MKSTREAM&&t.push("MKSTREAM"),s?.ENTRIESREAD&&t.push("ENTRIESREAD",s.ENTRIESREAD.toString())},transformReply:void 0}});var lHe=_(Wre=>{"use strict";Object.defineProperty(Wre,"__esModule",{value:!0});Wre.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("XGROUP","CREATECONSUMER"),t.pushKey(e),t.push(r,n)},transformReply:void 0}});var dHe=_($re=>{"use strict";Object.defineProperty($re,"__esModule",{value:!0});$re.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("XGROUP","DELCONSUMER"),t.pushKey(e),t.push(r,n)},transformReply:void 0}});var fHe=_(Ure=>{"use strict";Object.defineProperty(Ure,"__esModule",{value:!0});Ure.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("XGROUP","DESTROY"),t.pushKey(e),t.push(r)},transformReply:void 0}});var pHe=_(Fre=>{"use strict";Object.defineProperty(Fre,"__esModule",{value:!0});Fre.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("XGROUP","SETID"),t.pushKey(e),t.push(r,n),s?.ENTRIESREAD&&t.push("ENTRIESREAD",s.ENTRIESREAD.toString())},transformReply:void 0}});var mHe=_(qre=>{"use strict";Object.defineProperty(qre,"__esModule",{value:!0});qre.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("XINFO","CONSUMERS"),t.pushKey(e),t.push(r)},transformReply:{2:t=>t.map(e=>{let r=e;return{name:r[1],pending:r[3],idle:r[5],inactive:r[7]}}),3:void 0}}});var hHe=_(jre=>{"use strict";Object.defineProperty(jre,"__esModule",{value:!0});jre.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("XINFO","GROUPS"),t.pushKey(e)},transformReply:{2:t=>t.map(e=>{let r=e;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 yHe=_(Qre=>{"use strict";Object.defineProperty(Qre,"__esModule",{value:!0});var gHe=we();Qre.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("XINFO","STREAM"),t.pushKey(e)},transformReply:{2(t){let e={};for(let r=0;r{"use strict";Object.defineProperty(Hre,"__esModule",{value:!0});Hre.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("XLEN"),t.pushKey(e)},transformReply:void 0}});var xHe=_(Gre=>{"use strict";Object.defineProperty(Gre,"__esModule",{value:!0});Gre.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n,s,i,a){t.push("XPENDING"),t.pushKey(e),t.push(r),a?.IDLE!==void 0&&t.push("IDLE",a.IDLE.toString()),t.push(n,s,i.toString()),a?.consumer&&t.push(a.consumer)},transformReply(t){return t.map(e=>{let r=e;return{id:r[0],consumer:r[1],millisecondsSinceLastDelivery:r[2],deliveriesCounter:r[3]}})}}});var bHe=_(zre=>{"use strict";Object.defineProperty(zre,"__esModule",{value:!0});zre.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("XPENDING"),t.pushKey(e),t.push(r)},transformReply(t){let e=t[3];return{pending:t[0],firstId:t[1],lastId:t[2],consumers:e===null?null:e.map(r=>{let[n,s]=r;return{name:n,deliveriesCounter:Number(s)}})}}}});var Kre=_(N2=>{"use strict";Object.defineProperty(N2,"__esModule",{value:!0});N2.xRangeArguments=void 0;var E0r=we();function _He(t,e,r){let n=[t,e];return r?.COUNT&&n.push("COUNT",r.COUNT.toString()),n}N2.xRangeArguments=_He;N2.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,...r){t.push("XRANGE"),t.pushKey(e),t.pushVariadic(_He(r[0],r[1],r[2]))},transformReply(t,e,r){return t.map(E0r.transformStreamMessageReply.bind(void 0,r))}}});var Vre=_(O2=>{"use strict";Object.defineProperty(O2,"__esModule",{value:!0});O2.pushXReadStreams=void 0;var v0r=we();function EHe(t,e){if(t.push("STREAMS"),Array.isArray(e)){for(let r=0;r{"use strict";Object.defineProperty(Yre,"__esModule",{value:!0});var S0r=Vre(),I0r=we();Yre.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("XREADGROUP","GROUP",e,r),s?.COUNT!==void 0&&t.push("COUNT",s.COUNT.toString()),s?.BLOCK!==void 0&&t.push("BLOCK",s.BLOCK.toString()),s?.NOACK&&t.push("NOACK"),s?.CLAIM!==void 0&&t.push("CLAIM",s.CLAIM.toString()),(0,S0r.pushXReadStreams)(t,n)},transformReply:{2:I0r.transformStreamsMessagesReplyResp2,3:void 0}}});var SHe=_(jf=>{"use strict";var C0r=jf&&jf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),T0r=jf&&jf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),w0r=jf&&jf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&C0r(e,t,r);return T0r(e,t),e};Object.defineProperty(jf,"__esModule",{value:!0});var WL=w0r(Kre());jf.default={CACHEABLE:WL.default.CACHEABLE,IS_READ_ONLY:WL.default.IS_READ_ONLY,parseCommand(t,e,...r){t.push("XREVRANGE"),t.pushKey(e),t.pushVariadic((0,WL.xRangeArguments)(r[0],r[1],r[2]))},transformReply:WL.default.transformReply}});var IHe=_(Jre=>{"use strict";Object.defineProperty(Jre,"__esModule",{value:!0});Jre.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("XSETID"),t.pushKey(e),t.push(r),n?.ENTRIESADDED&&t.push("ENTRIESADDED",n.ENTRIESADDED.toString()),n?.MAXDELETEDID&&t.push("MAXDELETEDID",n.MAXDELETEDID)},transformReply:void 0}});var CHe=_(Xre=>{"use strict";Object.defineProperty(Xre,"__esModule",{value:!0});Xre.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("XTRIM"),t.pushKey(e),t.push(r),s?.strategyModifier&&t.push(s.strategyModifier),t.push(n.toString()),s?.LIMIT&&t.push("LIMIT",s.LIMIT.toString()),s?.policy&&t.push(s.policy)},transformReply:void 0}});var Zre=_(k2=>{"use strict";Object.defineProperty(k2,"__esModule",{value:!0});k2.pushMembers=void 0;var wHe=we();k2.default={parseCommand(t,e,r,n){t.push("ZADD"),t.pushKey(e),n?.condition?t.push(n.condition):n?.NX?t.push("NX"):n?.XX&&t.push("XX"),n?.comparison?t.push(n.comparison):n?.LT?t.push("LT"):n?.GT&&t.push("GT"),n?.CH&&t.push("CH"),RHe(t,r)},transformReply:wHe.transformDoubleReply};function RHe(t,e){if(Array.isArray(e))for(let r of e)THe(t,r);else THe(t,e)}k2.pushMembers=RHe;function THe(t,e){t.push((0,wHe.transformDoubleArgument)(e.score),e.value)}});var NHe=_(ene=>{"use strict";Object.defineProperty(ene,"__esModule",{value:!0});var R0r=Zre(),N0r=we();ene.default={parseCommand(t,e,r,n){t.push("ZADD"),t.pushKey(e),n?.condition&&t.push(n.condition),n?.comparison&&t.push(n.comparison),n?.CH&&t.push("CH"),t.push("INCR"),(0,R0r.pushMembers)(t,r)},transformReply:N0r.transformNullableDoubleReply}});var OHe=_(tne=>{"use strict";Object.defineProperty(tne,"__esModule",{value:!0});tne.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("ZCARD"),t.pushKey(e)},transformReply:void 0}});var PHe=_(rne=>{"use strict";Object.defineProperty(rne,"__esModule",{value:!0});var kHe=we();rne.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("ZCOUNT"),t.pushKey(e),t.push((0,kHe.transformStringDoubleArgument)(r),(0,kHe.transformStringDoubleArgument)(n))},transformReply:void 0}});var sne=_(nne=>{"use strict";Object.defineProperty(nne,"__esModule",{value:!0});nne.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("ZDIFF"),t.pushKeysLength(e)},transformReply:void 0}});var BHe=_(P2=>{"use strict";var O0r=P2&&P2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(P2,"__esModule",{value:!0});var k0r=we(),DHe=O0r(sne());P2.default={IS_READ_ONLY:DHe.default.IS_READ_ONLY,parseCommand(t,e){DHe.default.parseCommand(t,e),t.push("WITHSCORES")},transformReply:k0r.transformSortedSetReply}});var LHe=_(ine=>{"use strict";Object.defineProperty(ine,"__esModule",{value:!0});ine.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ZDIFFSTORE"),t.pushKey(e),t.pushKeysLength(r)},transformReply:void 0}});var WHe=_(ane=>{"use strict";Object.defineProperty(ane,"__esModule",{value:!0});var MHe=we();ane.default={parseCommand(t,e,r,n){t.push("ZINCRBY"),t.pushKey(e),t.push((0,MHe.transformDoubleArgument)(r),n)},transformReply:MHe.transformDoubleReply}});var $L=_(D2=>{"use strict";Object.defineProperty(D2,"__esModule",{value:!0});D2.parseZInterArguments=void 0;var P0r=we();function $He(t,e,r){(0,P0r.parseZKeysArguments)(t,e),r?.AGGREGATE&&t.push("AGGREGATE",r.AGGREGATE)}D2.parseZInterArguments=$He;D2.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ZINTER"),$He(t,e,r)},transformReply:void 0}});var FHe=_(B2=>{"use strict";var D0r=B2&&B2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(B2,"__esModule",{value:!0});var B0r=we(),UHe=D0r($L());B2.default={IS_READ_ONLY:UHe.default.IS_READ_ONLY,parseCommand(...t){UHe.default.parseCommand(...t),t[0].push("WITHSCORES")},transformReply:B0r.transformSortedSetReply}});var qHe=_(one=>{"use strict";Object.defineProperty(one,"__esModule",{value:!0});one.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ZINTERCARD"),t.pushKeysLength(e),typeof r=="number"?t.push("LIMIT",r.toString()):r?.LIMIT&&t.push("LIMIT",r.LIMIT.toString())},transformReply:void 0}});var jHe=_(cne=>{"use strict";Object.defineProperty(cne,"__esModule",{value:!0});var L0r=$L();cne.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("ZINTERSTORE"),t.pushKey(e),(0,L0r.parseZInterArguments)(t,r,n)},transformReply:void 0}});var QHe=_(une=>{"use strict";Object.defineProperty(une,"__esModule",{value:!0});une.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("ZLEXCOUNT"),t.pushKey(e),t.push(r),t.push(n)},transformReply:void 0}});var HHe=_(lne=>{"use strict";Object.defineProperty(lne,"__esModule",{value:!0});var M0r=we();lne.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ZMSCORE"),t.pushKey(e),t.pushVariadic(r)},transformReply:{2:(t,e,r)=>t.map((0,M0r.createTransformNullableDoubleReplyResp2Func)(e,r)),3:void 0}}});var GHe=_(dne=>{"use strict";Object.defineProperty(dne,"__esModule",{value:!0});var W0r=we();dne.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("ZPOPMAX"),t.pushKey(e),t.push(r.toString())},transformReply:W0r.transformSortedSetReply}});var pne=_(fne=>{"use strict";Object.defineProperty(fne,"__esModule",{value:!0});var $0r=we();fne.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("ZPOPMAX"),t.pushKey(e)},transformReply:{2:(t,e,r)=>t.length===0?null:{value:t[0],score:$0r.transformDoubleReply[2](t[1],e,r)},3:t=>t.length===0?null:{value:t[0],score:t[1]}}}});var zHe=_(mne=>{"use strict";Object.defineProperty(mne,"__esModule",{value:!0});var U0r=we();mne.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("ZPOPMIN"),t.pushKey(e),t.push(r.toString())},transformReply:U0r.transformSortedSetReply}});var KHe=_(L2=>{"use strict";var F0r=L2&&L2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(L2,"__esModule",{value:!0});var q0r=F0r(pne());L2.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("ZPOPMIN"),t.pushKey(e)},transformReply:q0r.default.transformReply}});var gne=_(hne=>{"use strict";Object.defineProperty(hne,"__esModule",{value:!0});hne.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("ZRANDMEMBER"),t.pushKey(e)},transformReply:void 0}});var yne=_(M2=>{"use strict";var j0r=M2&&M2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(M2,"__esModule",{value:!0});var VHe=j0r(gne());M2.default={IS_READ_ONLY:VHe.default.IS_READ_ONLY,parseCommand(t,e,r){VHe.default.parseCommand(t,e),t.push(r.toString())},transformReply:void 0}});var JHe=_(W2=>{"use strict";var Q0r=W2&&W2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(W2,"__esModule",{value:!0});var H0r=we(),YHe=Q0r(yne());W2.default={IS_READ_ONLY:YHe.default.IS_READ_ONLY,parseCommand(t,e,r){YHe.default.parseCommand(t,e,r),t.push("WITHSCORES")},transformReply:H0r.transformSortedSetReply}});var Ane=_($2=>{"use strict";Object.defineProperty($2,"__esModule",{value:!0});$2.zRangeArgument=void 0;var XHe=we();function ZHe(t,e,r){let n=[(0,XHe.transformStringDoubleArgument)(t),(0,XHe.transformStringDoubleArgument)(e)];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}$2.zRangeArgument=ZHe;$2.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("ZRANGE"),t.pushKey(e),t.pushVariadic(ZHe(r,n,s))},transformReply:void 0}});var eGe=_(U2=>{"use strict";var G0r=U2&&U2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(U2,"__esModule",{value:!0});var z0r=we(),xne=G0r(Ane());U2.default={CACHEABLE:xne.default.CACHEABLE,IS_READ_ONLY:xne.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];xne.default.parseCommand(...t),e.push("WITHSCORES")},transformReply:z0r.transformSortedSetReply}});var rGe=_(bne=>{"use strict";Object.defineProperty(bne,"__esModule",{value:!0});var tGe=we();bne.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("ZRANGEBYLEX"),t.pushKey(e),t.push((0,tGe.transformStringDoubleArgument)(r),(0,tGe.transformStringDoubleArgument)(n)),s?.LIMIT&&t.push("LIMIT",s.LIMIT.offset.toString(),s.LIMIT.count.toString())},transformReply:void 0}});var Ene=_(_ne=>{"use strict";Object.defineProperty(_ne,"__esModule",{value:!0});var nGe=we();_ne.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("ZRANGEBYSCORE"),t.pushKey(e),t.push((0,nGe.transformStringDoubleArgument)(r),(0,nGe.transformStringDoubleArgument)(n)),s?.LIMIT&&t.push("LIMIT",s.LIMIT.offset.toString(),s.LIMIT.count.toString())},transformReply:void 0}});var sGe=_(F2=>{"use strict";var K0r=F2&&F2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(F2,"__esModule",{value:!0});var V0r=we(),vne=K0r(Ene());F2.default={CACHEABLE:vne.default.CACHEABLE,IS_READ_ONLY:vne.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];vne.default.parseCommand(...t),e.push("WITHSCORES")},transformReply:V0r.transformSortedSetReply}});var aGe=_(Sne=>{"use strict";Object.defineProperty(Sne,"__esModule",{value:!0});var iGe=we();Sne.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,i){switch(t.push("ZRANGESTORE"),t.pushKey(e),t.pushKey(r),t.push((0,iGe.transformStringDoubleArgument)(n),(0,iGe.transformStringDoubleArgument)(s)),i?.BY){case"SCORE":t.push("BYSCORE");break;case"LEX":t.push("BYLEX");break}i?.REV&&t.push("REV"),i?.LIMIT&&t.push("LIMIT",i.LIMIT.offset.toString(),i.LIMIT.count.toString())},transformReply:void 0}});var cGe=_(Ine=>{"use strict";Object.defineProperty(Ine,"__esModule",{value:!0});var oGe=we();Ine.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("ZREMRANGEBYSCORE"),t.pushKey(e),t.push((0,oGe.transformStringDoubleArgument)(r),(0,oGe.transformStringDoubleArgument)(n))},transformReply:void 0}});var Tne=_(Cne=>{"use strict";Object.defineProperty(Cne,"__esModule",{value:!0});Cne.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ZRANK"),t.pushKey(e),t.push(r)},transformReply:void 0}});var uGe=_(q2=>{"use strict";var Y0r=q2&&q2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(q2,"__esModule",{value:!0});var wne=Y0r(Tne());q2.default={CACHEABLE:wne.default.CACHEABLE,IS_READ_ONLY:wne.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];wne.default.parseCommand(...t),e.push("WITHSCORE")},transformReply:{2:t=>t===null?null:{rank:t[0],score:Number(t[1])},3:t=>t===null?null:{rank:t[0],score:t[1]}}}});var lGe=_(Rne=>{"use strict";Object.defineProperty(Rne,"__esModule",{value:!0});Rne.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("ZREM"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var fGe=_(Nne=>{"use strict";Object.defineProperty(Nne,"__esModule",{value:!0});var dGe=we();Nne.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("ZREMRANGEBYLEX"),t.pushKey(e),t.push((0,dGe.transformStringDoubleArgument)(r),(0,dGe.transformStringDoubleArgument)(n))},transformReply:void 0}});var pGe=_(One=>{"use strict";Object.defineProperty(One,"__esModule",{value:!0});One.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("ZREMRANGEBYRANK"),t.pushKey(e),t.push(r.toString(),n.toString())},transformReply:void 0}});var mGe=_(kne=>{"use strict";Object.defineProperty(kne,"__esModule",{value:!0});kne.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ZREVRANK"),t.pushKey(e),t.push(r)},transformReply:void 0}});var hGe=_(Pne=>{"use strict";Object.defineProperty(Pne,"__esModule",{value:!0});var J0r=f2(),X0r=we();Pne.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("ZSCAN"),t.pushKey(e),(0,J0r.parseScanArguments)(t,r,n)},transformReply([t,e]){return{cursor:t,members:X0r.transformSortedSetReply[2](e)}}}});var gGe=_(Dne=>{"use strict";Object.defineProperty(Dne,"__esModule",{value:!0});var Z0r=we();Dne.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ZSCORE"),t.pushKey(e),t.push(r)},transformReply:Z0r.transformNullableDoubleReply}});var Lne=_(Bne=>{"use strict";Object.defineProperty(Bne,"__esModule",{value:!0});var emr=we();Bne.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ZUNION"),(0,emr.parseZKeysArguments)(t,e),r?.AGGREGATE&&t.push("AGGREGATE",r.AGGREGATE)},transformReply:void 0}});var AGe=_(j2=>{"use strict";var tmr=j2&&j2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(j2,"__esModule",{value:!0});var rmr=we(),yGe=tmr(Lne());j2.default={IS_READ_ONLY:yGe.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];yGe.default.parseCommand(...t),e.push("WITHSCORES")},transformReply:rmr.transformSortedSetReply}});var xGe=_(Mne=>{"use strict";Object.defineProperty(Mne,"__esModule",{value:!0});var nmr=we();Mne.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("ZUNIONSTORE"),t.pushKey(e),(0,nmr.parseZKeysArguments)(t,r),n?.AGGREGATE&&t.push("AGGREGATE",n.AGGREGATE)},transformReply:void 0}});var _Ge=_(Wne=>{"use strict";Object.defineProperty(Wne,"__esModule",{value:!0});var bGe=we();Wne.default={parseCommand(t,e,r,n,s){t.push("VADD"),t.pushKey(e),s?.REDUCE!==void 0&&t.push("REDUCE",s.REDUCE.toString()),t.push("VALUES",r.length.toString());for(let i of r)t.push((0,bGe.transformDoubleArgument)(i));t.push(n),s?.CAS&&t.push("CAS"),s?.QUANT&&t.push(s.QUANT),s?.EF!==void 0&&t.push("EF",s.EF.toString()),s?.SETATTR&&t.push("SETATTR",JSON.stringify(s.SETATTR)),s?.M!==void 0&&t.push("M",s.M.toString())},transformReply:bGe.transformBooleanReply}});var EGe=_($ne=>{"use strict";Object.defineProperty($ne,"__esModule",{value:!0});$ne.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("VCARD"),t.pushKey(e)},transformReply:void 0}});var vGe=_(Une=>{"use strict";Object.defineProperty(Une,"__esModule",{value:!0});Une.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("VDIM"),t.pushKey(e)},transformReply:void 0}});var qne=_(Fne=>{"use strict";Object.defineProperty(Fne,"__esModule",{value:!0});var smr=we();Fne.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("VEMB"),t.pushKey(e),t.push(r)},transformReply:smr.transformDoubleArrayReply}});var IGe=_(Q2=>{"use strict";var imr=Q2&&Q2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Q2,"__esModule",{value:!0});var SGe=we(),amr=imr(qne()),omr={2:t=>({quantization:t[0],raw:t[1],l2Norm:SGe.transformDoubleReply[2](t[2]),...t[3]!==void 0&&{quantizationRange:SGe.transformDoubleReply[2](t[3])}}),3:t=>({quantization:t[0],raw:t[1],l2Norm:t[2],quantizationRange:t[3]})};Q2.default={IS_READ_ONLY:!0,parseCommand(t,e,r){amr.default.parseCommand(t,e,r),t.push("RAW")},transformReply:omr}});var CGe=_(jne=>{"use strict";Object.defineProperty(jne,"__esModule",{value:!0});var cmr=we();jne.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("VGETATTR"),t.pushKey(e),t.push(r)},transformReply:cmr.transformRedisJsonNullReply}});var TGe=_(Qne=>{"use strict";Object.defineProperty(Qne,"__esModule",{value:!0});Qne.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("VINFO"),t.pushKey(e)},transformReply:{2:t=>{let e=Object.create(null);for(let r=0;r{"use strict";Object.defineProperty(Hne,"__esModule",{value:!0});Hne.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("VLINKS"),t.pushKey(e),t.push(r)},transformReply:void 0}});var RGe=_(H2=>{"use strict";var umr=H2&&H2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(H2,"__esModule",{value:!0});var lmr=we(),wGe=umr(Gne());function dmr(t){let e=[];for(let r of t){let n=Object.create(null);for(let s=0;s{"use strict";Object.defineProperty(zne,"__esModule",{value:!0});zne.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("VRANDMEMBER"),t.pushKey(e),r!==void 0&&t.push(r.toString())},transformReply:void 0}});var OGe=_(Kne=>{"use strict";Object.defineProperty(Kne,"__esModule",{value:!0});Kne.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("VRANGE"),t.pushKey(e),t.push(r,n),s!==void 0&&t.push(s.toString())},transformReply:void 0}});var kGe=_(Vne=>{"use strict";Object.defineProperty(Vne,"__esModule",{value:!0});var fmr=we();Vne.default={parseCommand(t,e,r){t.push("VREM"),t.pushKey(e),t.push(r)},transformReply:fmr.transformBooleanReply}});var PGe=_(Yne=>{"use strict";Object.defineProperty(Yne,"__esModule",{value:!0});var pmr=we();Yne.default={parseCommand(t,e,r,n){t.push("VSETATTR"),t.pushKey(e),t.push(r),typeof n=="object"&&n!==null?t.push(JSON.stringify(n)):t.push(n)},transformReply:pmr.transformBooleanReply}});var Xne=_(Jne=>{"use strict";Object.defineProperty(Jne,"__esModule",{value:!0});var mmr=we();Jne.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){if(t.push("VSIM"),t.pushKey(e),Array.isArray(r)){t.push("VALUES",r.length.toString());for(let s of r)t.push((0,mmr.transformDoubleArgument)(s))}else t.push("ELE",r);n?.COUNT!==void 0&&t.push("COUNT",n.COUNT.toString()),n?.EPSILON!==void 0&&t.push("EPSILON",n.EPSILON.toString()),n?.EF!==void 0&&t.push("EF",n.EF.toString()),n?.FILTER&&t.push("FILTER",n.FILTER),n?.["FILTER-EF"]!==void 0&&t.push("FILTER-EF",n["FILTER-EF"].toString()),n?.TRUTH&&t.push("TRUTH"),n?.NOTHREAD&&t.push("NOTHREAD")},transformReply:void 0}});var BGe=_(G2=>{"use strict";var hmr=G2&&G2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(G2,"__esModule",{value:!0});var gmr=we(),DGe=hmr(Xne());G2.default={IS_READ_ONLY:DGe.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];DGe.default.parseCommand(...t),e.push("WITHSCORES")},transformReply:{2:t=>{let e=t,r={};for(let n=0;n{"use strict";Object.defineProperty(Zne,"__esModule",{value:!0});var ymr=we(),Amr=t=>t;Zne.default={CACHEABLE:!1,IS_READ_ONLY:!0,parseCommand(t,...e){let r=["LATENCY","HISTOGRAM"];e.length!==0&&r.push(...e),t.push(...r)},transformReply:{2:t=>{let e={};if(t.length===0)return e;for(let r=1;r{"use strict";var xmr=Gn&&Gn.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),bmr=Gn&&Gn.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),z2=Gn&&Gn.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&xmr(e,t,r);return bmr(e,t),e},$=Gn&&Gn.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Gn,"__esModule",{value:!0});Gn.NON_STICKY_COMMANDS=Gn.REDIS_FLUSH_MODES=Gn.COMMAND_LIST_FILTER_BY=Gn.CLUSTER_SLOT_STATES=Gn.FAILOVER_MODES=Gn.CLIENT_KILL_FILTERS=void 0;var MGe=$(lFe()),WGe=$(dFe()),$Ge=$(fFe()),UGe=$(pFe()),FGe=$(mFe()),qGe=$(hFe()),jGe=$(gFe()),QGe=$(SFe()),HGe=$(zJ()),GGe=$(IFe()),zGe=$(CFe()),KGe=$(TFe()),VGe=$(wFe()),YGe=$(RFe()),JGe=$(ZJ()),XGe=$(NFe()),ZGe=$(OFe()),eze=$(kFe()),tze=$(PFe()),rze=$(DFe()),nze=$(BFe()),sze=$(LFe()),ize=$(MFe()),aze=$(WFe()),oze=$(FFe()),cze=$(dX()),uze=$(qFe()),lze=$(jFe()),dze=$(zFe()),fze=$(hX()),pze=$(VFe()),mze=$(YFe()),hze=$(JFe()),gze=$(XFe()),yze=$(ZFe()),Aze=$(_X()),ese=z2(t7e());Object.defineProperty(Gn,"CLIENT_KILL_FILTERS",{enumerable:!0,get:function(){return ese.CLIENT_KILL_FILTERS}});var xze=$(r7e()),bze=$(n7e()),_ze=$(s7e()),Eze=$(i7e()),vze=$(a7e()),Sze=$(o7e()),Ize=$(c7e()),Cze=$(u7e()),Tze=$(l7e()),wze=$(d7e()),Rze=$(f7e()),Nze=$(p7e()),Oze=$(m7e()),kze=$(h7e()),Pze=$(g7e()),tse=z2(y7e());Object.defineProperty(Gn,"FAILOVER_MODES",{enumerable:!0,get:function(){return tse.FAILOVER_MODES}});var Dze=$(A7e()),Bze=$(x7e()),Lze=$(b7e()),Mze=$(_7e()),Wze=$(E7e()),$ze=$(v7e()),Uze=$(S7e()),Fze=$(I7e()),qze=$(C7e()),jze=$(T7e()),Qze=$(w7e()),Hze=$(R7e()),Gze=$(N7e()),zze=$(O7e()),Kze=$(k7e()),rse=z2(P7e());Object.defineProperty(Gn,"CLUSTER_SLOT_STATES",{enumerable:!0,get:function(){return rse.CLUSTER_SLOT_STATES}});var Vze=$(B7e()),Yze=$(L7e()),Jze=$(M7e()),Xze=$(W7e()),Zze=$($7e()),nse=z2(U7e());Object.defineProperty(Gn,"COMMAND_LIST_FILTER_BY",{enumerable:!0,get:function(){return nse.COMMAND_LIST_FILTER_BY}});var eKe=$(F7e()),tKe=$(q7e()),rKe=$(j7e()),nKe=$(Q7e()),sKe=$(H7e()),iKe=$(G7e()),aKe=$(z7e()),oKe=$(K7e()),cKe=$(V7e()),uKe=$(Y7e()),lKe=$(J7e()),dKe=$(X7e()),fKe=$(Z7e()),pKe=$(e9e()),mKe=$(n9e()),hKe=$(Pg()),gKe=$(i9e()),yKe=$(o9e()),AKe=$(u9e()),xKe=$(l9e()),bKe=$(d9e()),_Ke=$(f9e()),EKe=$(x9e()),vKe=$(_9e()),SKe=$(v9e()),IKe=$(BL()),CKe=$(n2()),TKe=$(w9e()),wKe=$(N9e()),RKe=$(k9e()),NKe=$(xZ()),OKe=$(o2()),kKe=$(s2()),PKe=$(Bg()),DKe=$(P9e()),BKe=$(D9e()),LKe=$(B9e()),MKe=$(L9e()),WKe=$(M9e()),$Ke=$(W9e()),UKe=$($9e()),FKe=$(U9e()),qKe=$(F9e()),jKe=$(q9e()),QKe=$(j9e()),sse=z2(Q9e());Object.defineProperty(Gn,"REDIS_FLUSH_MODES",{enumerable:!0,get:function(){return sse.REDIS_FLUSH_MODES}});var HKe=$(H9e()),GKe=$(z9e()),zKe=$(V9e()),KKe=$(Y9e()),VKe=$(J9e()),YKe=$(X9e()),JKe=$(Z9e()),XKe=$(eqe()),ZKe=$(WZ()),eVe=$(tqe()),tVe=$(rqe()),rVe=$(nqe()),nVe=$(sqe()),sVe=$(HZ()),iVe=$(iqe()),aVe=$(aqe()),oVe=$(oqe()),cVe=$(cqe()),uVe=$(uqe()),lVe=$(lqe()),dVe=$(dqe()),fVe=$(fqe()),pVe=$(pqe()),mVe=$(mqe()),hVe=$(hqe()),gVe=$(gqe()),yVe=$(yqe()),AVe=$(Aqe()),xVe=$(xqe()),bVe=$(bqe()),_Ve=$(_qe()),EVe=$(Eqe()),vVe=$(vqe()),SVe=$(Sqe()),IVe=$(Iqe()),CVe=$(fee()),TVe=$(Tqe()),wVe=$(Rqe()),RVe=$(Oqe()),NVe=$(kqe()),OVe=$(Pqe()),kVe=$(Dqe()),PVe=$(Bqe()),DVe=$(Mqe()),BVe=$(Wqe()),LVe=$($qe()),MVe=$(Uqe()),WVe=$(Fqe()),$Ve=$(qqe()),UVe=$(jqe()),FVe=$(Qqe()),qVe=$(Hqe()),jVe=$(Gqe()),QVe=$(zqe()),HVe=$(Ree()),GVe=$(Kqe()),zVe=$(Vqe()),KVe=$(Yqe()),VVe=$(Zqe()),YVe=$(Pee()),JVe=$(tje()),XVe=$(LL()),ZVe=$(rje()),eYe=$(nje()),tYe=$(sje()),rYe=$(ije()),nYe=$(uX()),_mr=$(aje()),sYe=$(oje()),iYe=$(Uee()),aYe=$(cje()),oYe=$(qee()),cYe=$(uje()),uYe=$(lje()),lYe=$(dje()),dYe=$(fje()),fYe=$(pje()),pYe=$(mje()),mYe=$(hje()),hYe=$(gje()),gYe=$(yje()),yYe=$(Aje()),AYe=$(xje()),xYe=$(bje()),bYe=$(_je()),_Ye=$(Eje()),EYe=$(vje()),vYe=$(Sje()),SYe=$(Ije()),IYe=$(ote()),CYe=$(Rje()),TYe=$(Nje()),wYe=$(Oje()),RYe=$(kje()),NYe=$(Pje()),OYe=$(Dje()),kYe=$(Bje()),PYe=$(Lje()),DYe=$(Mje()),BYe=$(Wje()),LYe=$($je()),MYe=$(Uje()),WYe=$(Fje()),$Ye=$(qje()),UYe=$(jje()),FYe=$(Qje()),qYe=$(Hje()),jYe=$(Gje()),QYe=$(zje()),HYe=$(Kje()),GYe=$(Vje()),zYe=$(Yje()),KYe=$(Jje()),VYe=$(Xje()),YYe=$(Zje()),JYe=$(eQe()),XYe=$(tQe()),ZYe=$(rQe()),eJe=$(nQe()),tJe=$(sQe()),rJe=$(iQe()),nJe=$(aQe()),sJe=$(oQe()),iJe=$(cQe()),aJe=$(uQe()),oJe=$(lQe()),cJe=$(f2()),uJe=$(dQe()),lJe=$(fQe()),dJe=$(pQe()),fJe=$(mQe()),pJe=$(hQe()),mJe=$(gQe()),hJe=$(yQe()),gJe=$(AQe()),yJe=$(xQe()),AJe=$(bQe()),xJe=$(_Qe()),bJe=$(EQe()),_Je=$(vQe()),EJe=$(SQe()),vJe=$(IQe()),SJe=$(CQe()),IJe=$(TQe()),CJe=$(wQe()),TJe=$(RQe()),wJe=$(NQe()),RJe=$(PQe()),NJe=$(DQe()),OJe=$(ML()),kJe=$(BQe()),PJe=$(LQe()),DJe=$(MQe()),BJe=$($Qe()),LJe=$(pre()),MJe=$(UQe()),WJe=$(FQe()),$Je=$(qQe()),UJe=$(jQe()),FJe=$(QQe()),qJe=$(HQe()),jJe=$(GQe()),QJe=$(zQe()),HJe=$(KQe()),GJe=$(VQe()),zJe=$(YQe()),KJe=$(JQe()),VJe=$(XQe()),YJe=$(ZQe()),JJe=$(tHe()),XJe=$(wre()),ZJe=$(nHe()),eXe=$(Ore()),tXe=$(iHe()),rXe=$(Pre()),nXe=$(aHe()),sXe=$(oHe()),iXe=$(cHe()),aXe=$(uHe()),oXe=$(lHe()),cXe=$(dHe()),uXe=$(fHe()),lXe=$(pHe()),dXe=$(mHe()),fXe=$(hHe()),pXe=$(yHe()),mXe=$(AHe()),hXe=$(xHe()),gXe=$(bHe()),yXe=$(Kre()),AXe=$(Vre()),xXe=$(vHe()),bXe=$(SHe()),_Xe=$(IHe()),EXe=$(CHe()),vXe=$(NHe()),SXe=$(Zre()),IXe=$(OHe()),CXe=$(PHe()),TXe=$(BHe()),wXe=$(sne()),RXe=$(LHe()),NXe=$(WHe()),OXe=$(FHe()),kXe=$($L()),PXe=$(qHe()),DXe=$(jHe()),BXe=$(QHe()),LXe=$(pX()),MXe=$(HHe()),WXe=$(GHe()),$Xe=$(pne()),UXe=$(zHe()),FXe=$(KHe()),qXe=$(JHe()),jXe=$(yne()),QXe=$(gne()),HXe=$(eGe()),GXe=$(Ane()),zXe=$(rGe()),KXe=$(sGe()),VXe=$(Ene()),YXe=$(aGe()),JXe=$(cGe()),XXe=$(uGe()),ZXe=$(Tne()),eZe=$(lGe()),tZe=$(fGe()),rZe=$(pGe()),nZe=$(mGe()),sZe=$(hGe()),iZe=$(gGe()),aZe=$(AGe()),oZe=$(Lne()),cZe=$(xGe()),uZe=$(_Ge()),lZe=$(EGe()),dZe=$(vGe()),fZe=$(qne()),pZe=$(IGe()),mZe=$(CGe()),hZe=$(TGe()),gZe=$(Gne()),yZe=$(RGe()),AZe=$(NGe()),xZe=$(OGe()),bZe=$(kGe()),_Ze=$(PGe()),EZe=$(Xne()),vZe=$(BGe()),SZe=$(LGe());Gn.default={ACL_CAT:MGe.default,aclCat:MGe.default,ACL_DELUSER:WGe.default,aclDelUser:WGe.default,ACL_DRYRUN:$Ge.default,aclDryRun:$Ge.default,ACL_GENPASS:UGe.default,aclGenPass:UGe.default,ACL_GETUSER:FGe.default,aclGetUser:FGe.default,ACL_LIST:qGe.default,aclList:qGe.default,ACL_LOAD:jGe.default,aclLoad:jGe.default,ACL_LOG_RESET:QGe.default,aclLogReset:QGe.default,ACL_LOG:HGe.default,aclLog:HGe.default,ACL_SAVE:GGe.default,aclSave:GGe.default,ACL_SETUSER:zGe.default,aclSetUser:zGe.default,ACL_USERS:KGe.default,aclUsers:KGe.default,ACL_WHOAMI:VGe.default,aclWhoAmI:VGe.default,APPEND:YGe.default,append:YGe.default,ASKING:JGe.default,asking:JGe.default,AUTH:XGe.default,auth:XGe.default,BGREWRITEAOF:ZGe.default,bgRewriteAof:ZGe.default,BGSAVE:eze.default,bgSave:eze.default,BITCOUNT:tze.default,bitCount:tze.default,BITFIELD_RO:rze.default,bitFieldRo:rze.default,BITFIELD:nze.default,bitField:nze.default,BITOP:sze.default,bitOp:sze.default,BITPOS:ize.default,bitPos:ize.default,BLMOVE:aze.default,blMove:aze.default,BLMPOP:oze.default,blmPop:oze.default,BLPOP:cze.default,blPop:cze.default,BRPOP:uze.default,brPop:uze.default,BRPOPLPUSH:lze.default,brPopLPush:lze.default,BZMPOP:dze.default,bzmPop:dze.default,BZPOPMAX:fze.default,bzPopMax:fze.default,BZPOPMIN:pze.default,bzPopMin:pze.default,CLIENT_CACHING:mze.default,clientCaching:mze.default,CLIENT_GETNAME:hze.default,clientGetName:hze.default,CLIENT_GETREDIR:gze.default,clientGetRedir:gze.default,CLIENT_ID:yze.default,clientId:yze.default,CLIENT_INFO:Aze.default,clientInfo:Aze.default,CLIENT_KILL:ese.default,clientKill:ese.default,CLIENT_LIST:xze.default,clientList:xze.default,"CLIENT_NO-EVICT":bze.default,clientNoEvict:bze.default,"CLIENT_NO-TOUCH":_ze.default,clientNoTouch:_ze.default,CLIENT_PAUSE:Eze.default,clientPause:Eze.default,CLIENT_SETNAME:vze.default,clientSetName:vze.default,CLIENT_TRACKING:Sze.default,clientTracking:Sze.default,CLIENT_TRACKINGINFO:Ize.default,clientTrackingInfo:Ize.default,CLIENT_UNPAUSE:Cze.default,clientUnpause:Cze.default,CLUSTER_ADDSLOTS:Tze.default,clusterAddSlots:Tze.default,CLUSTER_ADDSLOTSRANGE:wze.default,clusterAddSlotsRange:wze.default,CLUSTER_BUMPEPOCH:Rze.default,clusterBumpEpoch:Rze.default,"CLUSTER_COUNT-FAILURE-REPORTS":Nze.default,clusterCountFailureReports:Nze.default,CLUSTER_COUNTKEYSINSLOT:Oze.default,clusterCountKeysInSlot:Oze.default,CLUSTER_DELSLOTS:kze.default,clusterDelSlots:kze.default,CLUSTER_DELSLOTSRANGE:Pze.default,clusterDelSlotsRange:Pze.default,CLUSTER_FAILOVER:tse.default,clusterFailover:tse.default,CLUSTER_FLUSHSLOTS:Dze.default,clusterFlushSlots:Dze.default,CLUSTER_FORGET:Bze.default,clusterForget:Bze.default,CLUSTER_GETKEYSINSLOT:Lze.default,clusterGetKeysInSlot:Lze.default,CLUSTER_INFO:Mze.default,clusterInfo:Mze.default,CLUSTER_KEYSLOT:Wze.default,clusterKeySlot:Wze.default,CLUSTER_LINKS:$ze.default,clusterLinks:$ze.default,CLUSTER_MEET:Uze.default,clusterMeet:Uze.default,CLUSTER_MYID:Fze.default,clusterMyId:Fze.default,CLUSTER_MYSHARDID:qze.default,clusterMyShardId:qze.default,CLUSTER_NODES:jze.default,clusterNodes:jze.default,CLUSTER_REPLICAS:Qze.default,clusterReplicas:Qze.default,CLUSTER_REPLICATE:Hze.default,clusterReplicate:Hze.default,CLUSTER_RESET:Gze.default,clusterReset:Gze.default,CLUSTER_SAVECONFIG:zze.default,clusterSaveConfig:zze.default,"CLUSTER_SET-CONFIG-EPOCH":Kze.default,clusterSetConfigEpoch:Kze.default,CLUSTER_SETSLOT:rse.default,clusterSetSlot:rse.default,CLUSTER_SLOTS:Vze.default,clusterSlots:Vze.default,COMMAND_COUNT:Yze.default,commandCount:Yze.default,COMMAND_GETKEYS:Jze.default,commandGetKeys:Jze.default,COMMAND_GETKEYSANDFLAGS:Xze.default,commandGetKeysAndFlags:Xze.default,COMMAND_INFO:Zze.default,commandInfo:Zze.default,COMMAND_LIST:nse.default,commandList:nse.default,COMMAND:eKe.default,command:eKe.default,CONFIG_GET:tKe.default,configGet:tKe.default,CONFIG_RESETASTAT:rKe.default,configResetStat:rKe.default,CONFIG_REWRITE:nKe.default,configRewrite:nKe.default,CONFIG_SET:sKe.default,configSet:sKe.default,COPY:iKe.default,copy:iKe.default,DBSIZE:aKe.default,dbSize:aKe.default,DECR:oKe.default,decr:oKe.default,DECRBY:cKe.default,decrBy:cKe.default,DEL:uKe.default,del:uKe.default,DELEX:lKe.default,delEx:lKe.default,DIGEST:dKe.default,digest:dKe.default,DUMP:fKe.default,dump:fKe.default,ECHO:pKe.default,echo:pKe.default,EVAL_RO:mKe.default,evalRo:mKe.default,EVAL:hKe.default,eval:hKe.default,EVALSHA_RO:gKe.default,evalShaRo:gKe.default,EVALSHA:yKe.default,evalSha:yKe.default,EXISTS:FKe.default,exists:FKe.default,EXPIRE:qKe.default,expire:qKe.default,EXPIREAT:jKe.default,expireAt:jKe.default,EXPIRETIME:QKe.default,expireTime:QKe.default,FLUSHALL:sse.default,flushAll:sse.default,FLUSHDB:HKe.default,flushDb:HKe.default,FCALL:GKe.default,fCall:GKe.default,FCALL_RO:zKe.default,fCallRo:zKe.default,FUNCTION_DELETE:KKe.default,functionDelete:KKe.default,FUNCTION_DUMP:VKe.default,functionDump:VKe.default,FUNCTION_FLUSH:YKe.default,functionFlush:YKe.default,FUNCTION_KILL:JKe.default,functionKill:JKe.default,FUNCTION_LIST_WITHCODE:XKe.default,functionListWithCode:XKe.default,FUNCTION_LIST:ZKe.default,functionList:ZKe.default,FUNCTION_LOAD:eVe.default,functionLoad:eVe.default,FUNCTION_RESTORE:tVe.default,functionRestore:tVe.default,FUNCTION_STATS:rVe.default,functionStats:rVe.default,GEOADD:AKe.default,geoAdd:AKe.default,GEODIST:xKe.default,geoDist:xKe.default,GEOHASH:bKe.default,geoHash:bKe.default,GEOPOS:_Ke.default,geoPos:_Ke.default,GEORADIUS_RO_WITH:EKe.default,geoRadiusRoWith:EKe.default,GEORADIUS_RO:vKe.default,geoRadiusRo:vKe.default,GEORADIUS_STORE:SKe.default,geoRadiusStore:SKe.default,GEORADIUS_WITH:IKe.default,geoRadiusWith:IKe.default,GEORADIUS:CKe.default,geoRadius:CKe.default,GEORADIUSBYMEMBER_RO_WITH:TKe.default,geoRadiusByMemberRoWith:TKe.default,GEORADIUSBYMEMBER_RO:wKe.default,geoRadiusByMemberRo:wKe.default,GEORADIUSBYMEMBER_STORE:RKe.default,geoRadiusByMemberStore:RKe.default,GEORADIUSBYMEMBER_WITH:NKe.default,geoRadiusByMemberWith:NKe.default,GEORADIUSBYMEMBER:OKe.default,geoRadiusByMember:OKe.default,GEOSEARCH_WITH:kKe.default,geoSearchWith:kKe.default,GEOSEARCH:PKe.default,geoSearch:PKe.default,GEOSEARCHSTORE:DKe.default,geoSearchStore:DKe.default,GET:BKe.default,get:BKe.default,GETBIT:LKe.default,getBit:LKe.default,GETDEL:MKe.default,getDel:MKe.default,GETEX:WKe.default,getEx:WKe.default,GETRANGE:$Ke.default,getRange:$Ke.default,GETSET:UKe.default,getSet:UKe.default,HDEL:nVe.default,hDel:nVe.default,HELLO:sVe.default,hello:sVe.default,HEXISTS:iVe.default,hExists:iVe.default,HEXPIRE:aVe.default,hExpire:aVe.default,HEXPIREAT:oVe.default,hExpireAt:oVe.default,HEXPIRETIME:cVe.default,hExpireTime:cVe.default,HGET:uVe.default,hGet:uVe.default,HGETALL:lVe.default,hGetAll:lVe.default,HGETDEL:dVe.default,hGetDel:dVe.default,HGETEX:fVe.default,hGetEx:fVe.default,HINCRBY:pVe.default,hIncrBy:pVe.default,HINCRBYFLOAT:mVe.default,hIncrByFloat:mVe.default,HKEYS:hVe.default,hKeys:hVe.default,HLEN:gVe.default,hLen:gVe.default,HMGET:yVe.default,hmGet:yVe.default,HPERSIST:AVe.default,hPersist:AVe.default,HPEXPIRE:xVe.default,hpExpire:xVe.default,HPEXPIREAT:bVe.default,hpExpireAt:bVe.default,HPEXPIRETIME:_Ve.default,hpExpireTime:_Ve.default,HPTTL:EVe.default,hpTTL:EVe.default,HRANDFIELD_COUNT_WITHVALUES:vVe.default,hRandFieldCountWithValues:vVe.default,HRANDFIELD_COUNT:SVe.default,hRandFieldCount:SVe.default,HRANDFIELD:IVe.default,hRandField:IVe.default,HSCAN:CVe.default,hScan:CVe.default,HSCAN_NOVALUES:TVe.default,hScanNoValues:TVe.default,HSET:wVe.default,hSet:wVe.default,HSETEX:RVe.default,hSetEx:RVe.default,HSETNX:NVe.default,hSetNX:NVe.default,HSTRLEN:OVe.default,hStrLen:OVe.default,HTTL:kVe.default,hTTL:kVe.default,HVALS:PVe.default,hVals:PVe.default,HOTKEYS_GET:DVe.default,hotkeysGet:DVe.default,HOTKEYS_RESET:BVe.default,hotkeysReset:BVe.default,HOTKEYS_START:LVe.default,hotkeysStart:LVe.default,HOTKEYS_STOP:MVe.default,hotkeysStop:MVe.default,INCR:WVe.default,incr:WVe.default,INCRBY:$Ve.default,incrBy:$Ve.default,INCRBYFLOAT:UVe.default,incrByFloat:UVe.default,INFO:FVe.default,info:FVe.default,KEYS:qVe.default,keys:qVe.default,LASTSAVE:jVe.default,lastSave:jVe.default,LATENCY_DOCTOR:QVe.default,latencyDoctor:QVe.default,LATENCY_GRAPH:HVe.default,latencyGraph:HVe.default,LATENCY_HISTORY:GVe.default,latencyHistory:GVe.default,LATENCY_HISTOGRAM:SZe.default,latencyHistogram:SZe.default,LATENCY_LATEST:zVe.default,latencyLatest:zVe.default,LATENCY_RESET:KVe.default,latencyReset:KVe.default,LCS_IDX_WITHMATCHLEN:VVe.default,lcsIdxWithMatchLen:VVe.default,LCS_IDX:YVe.default,lcsIdx:YVe.default,LCS_LEN:JVe.default,lcsLen:JVe.default,LCS:XVe.default,lcs:XVe.default,LINDEX:ZVe.default,lIndex:ZVe.default,LINSERT:eYe.default,lInsert:eYe.default,LLEN:tYe.default,lLen:tYe.default,LMOVE:rYe.default,lMove:rYe.default,LMPOP:nYe.default,lmPop:nYe.default,LOLWUT:_mr.default,LPOP_COUNT:sYe.default,lPopCount:sYe.default,LPOP:iYe.default,lPop:iYe.default,LPOS_COUNT:aYe.default,lPosCount:aYe.default,LPOS:oYe.default,lPos:oYe.default,LPUSH:cYe.default,lPush:cYe.default,LPUSHX:uYe.default,lPushX:uYe.default,LRANGE:lYe.default,lRange:lYe.default,LREM:dYe.default,lRem:dYe.default,LSET:fYe.default,lSet:fYe.default,LTRIM:pYe.default,lTrim:pYe.default,MEMORY_DOCTOR:mYe.default,memoryDoctor:mYe.default,"MEMORY_MALLOC-STATS":hYe.default,memoryMallocStats:hYe.default,MEMORY_PURGE:gYe.default,memoryPurge:gYe.default,MEMORY_STATS:yYe.default,memoryStats:yYe.default,MEMORY_USAGE:AYe.default,memoryUsage:AYe.default,MGET:xYe.default,mGet:xYe.default,MIGRATE:bYe.default,migrate:bYe.default,MODULE_LIST:_Ye.default,moduleList:_Ye.default,MODULE_LOAD:EYe.default,moduleLoad:EYe.default,MODULE_UNLOAD:vYe.default,moduleUnload:vYe.default,MOVE:SYe.default,move:SYe.default,MSET:IYe.default,mSet:IYe.default,MSETEX:CYe.default,mSetEx:CYe.default,MSETNX:TYe.default,mSetNX:TYe.default,OBJECT_ENCODING:wYe.default,objectEncoding:wYe.default,OBJECT_FREQ:RYe.default,objectFreq:RYe.default,OBJECT_IDLETIME:NYe.default,objectIdleTime:NYe.default,OBJECT_REFCOUNT:OYe.default,objectRefCount:OYe.default,PERSIST:kYe.default,persist:kYe.default,PEXPIRE:PYe.default,pExpire:PYe.default,PEXPIREAT:DYe.default,pExpireAt:DYe.default,PEXPIRETIME:BYe.default,pExpireTime:BYe.default,PFADD:LYe.default,pfAdd:LYe.default,PFCOUNT:MYe.default,pfCount:MYe.default,PFMERGE:WYe.default,pfMerge:WYe.default,PING:$Ye.default,ping:$Ye.default,PSETEX:UYe.default,pSetEx:UYe.default,PTTL:FYe.default,pTTL:FYe.default,PUBLISH:qYe.default,publish:qYe.default,PUBSUB_CHANNELS:jYe.default,pubSubChannels:jYe.default,PUBSUB_NUMPAT:QYe.default,pubSubNumPat:QYe.default,PUBSUB_NUMSUB:HYe.default,pubSubNumSub:HYe.default,PUBSUB_SHARDNUMSUB:GYe.default,pubSubShardNumSub:GYe.default,PUBSUB_SHARDCHANNELS:zYe.default,pubSubShardChannels:zYe.default,RANDOMKEY:KYe.default,randomKey:KYe.default,READONLY:VYe.default,readonly:VYe.default,RENAME:YYe.default,rename:YYe.default,RENAMENX:JYe.default,renameNX:JYe.default,REPLICAOF:XYe.default,replicaOf:XYe.default,"RESTORE-ASKING":ZYe.default,restoreAsking:ZYe.default,RESTORE:eJe.default,restore:eJe.default,RPOP_COUNT:rJe.default,rPopCount:rJe.default,ROLE:tJe.default,role:tJe.default,RPOP:nJe.default,rPop:nJe.default,RPOPLPUSH:sJe.default,rPopLPush:sJe.default,RPUSH:iJe.default,rPush:iJe.default,RPUSHX:aJe.default,rPushX:aJe.default,SADD:oJe.default,sAdd:oJe.default,SCAN:cJe.default,scan:cJe.default,SCARD:uJe.default,sCard:uJe.default,SCRIPT_DEBUG:lJe.default,scriptDebug:lJe.default,SCRIPT_EXISTS:dJe.default,scriptExists:dJe.default,SCRIPT_FLUSH:fJe.default,scriptFlush:fJe.default,SCRIPT_KILL:pJe.default,scriptKill:pJe.default,SCRIPT_LOAD:mJe.default,scriptLoad:mJe.default,SDIFF:hJe.default,sDiff:hJe.default,SDIFFSTORE:gJe.default,sDiffStore:gJe.default,SET:yJe.default,set:yJe.default,SETBIT:AJe.default,setBit:AJe.default,SETEX:xJe.default,setEx:xJe.default,SETNX:bJe.default,setNX:bJe.default,SETRANGE:_Je.default,setRange:_Je.default,SINTER:EJe.default,sInter:EJe.default,SINTERCARD:vJe.default,sInterCard:vJe.default,SINTERSTORE:SJe.default,sInterStore:SJe.default,SISMEMBER:IJe.default,sIsMember:IJe.default,SMEMBERS:CJe.default,sMembers:CJe.default,SMISMEMBER:TJe.default,smIsMember:TJe.default,SMOVE:wJe.default,sMove:wJe.default,SORT_RO:RJe.default,sortRo:RJe.default,SORT_STORE:NJe.default,sortStore:NJe.default,SORT:OJe.default,sort:OJe.default,SPOP_COUNT:kJe.default,sPopCount:kJe.default,SPOP:PJe.default,sPop:PJe.default,SPUBLISH:DJe.default,sPublish:DJe.default,SRANDMEMBER_COUNT:BJe.default,sRandMemberCount:BJe.default,SRANDMEMBER:LJe.default,sRandMember:LJe.default,SREM:MJe.default,sRem:MJe.default,SSCAN:WJe.default,sScan:WJe.default,STRLEN:$Je.default,strLen:$Je.default,SUNION:UJe.default,sUnion:UJe.default,SUNIONSTORE:FJe.default,sUnionStore:FJe.default,SWAPDB:qJe.default,swapDb:qJe.default,TIME:jJe.default,time:jJe.default,TOUCH:QJe.default,touch:QJe.default,TTL:HJe.default,ttl:HJe.default,TYPE:GJe.default,type:GJe.default,UNLINK:zJe.default,unlink:zJe.default,WAIT:KJe.default,wait:KJe.default,XACK:VJe.default,xAck:VJe.default,XACKDEL:YJe.default,xAckDel:YJe.default,XADD_NOMKSTREAM:JJe.default,xAddNoMkStream:JJe.default,XADD:XJe.default,xAdd:XJe.default,XAUTOCLAIM_JUSTID:ZJe.default,xAutoClaimJustId:ZJe.default,XAUTOCLAIM:eXe.default,xAutoClaim:eXe.default,XCLAIM_JUSTID:tXe.default,xClaimJustId:tXe.default,XCLAIM:rXe.default,xClaim:rXe.default,XCFGSET:nXe.default,xCfgSet:nXe.default,XDEL:sXe.default,xDel:sXe.default,XDELEX:iXe.default,xDelEx:iXe.default,XGROUP_CREATE:aXe.default,xGroupCreate:aXe.default,XGROUP_CREATECONSUMER:oXe.default,xGroupCreateConsumer:oXe.default,XGROUP_DELCONSUMER:cXe.default,xGroupDelConsumer:cXe.default,XGROUP_DESTROY:uXe.default,xGroupDestroy:uXe.default,XGROUP_SETID:lXe.default,xGroupSetId:lXe.default,XINFO_CONSUMERS:dXe.default,xInfoConsumers:dXe.default,XINFO_GROUPS:fXe.default,xInfoGroups:fXe.default,XINFO_STREAM:pXe.default,xInfoStream:pXe.default,XLEN:mXe.default,xLen:mXe.default,XPENDING_RANGE:hXe.default,xPendingRange:hXe.default,XPENDING:gXe.default,xPending:gXe.default,XRANGE:yXe.default,xRange:yXe.default,XREAD:AXe.default,xRead:AXe.default,XREADGROUP:xXe.default,xReadGroup:xXe.default,XREVRANGE:bXe.default,xRevRange:bXe.default,XSETID:_Xe.default,xSetId:_Xe.default,XTRIM:EXe.default,xTrim:EXe.default,ZADD_INCR:vXe.default,zAddIncr:vXe.default,ZADD:SXe.default,zAdd:SXe.default,ZCARD:IXe.default,zCard:IXe.default,ZCOUNT:CXe.default,zCount:CXe.default,ZDIFF_WITHSCORES:TXe.default,zDiffWithScores:TXe.default,ZDIFF:wXe.default,zDiff:wXe.default,ZDIFFSTORE:RXe.default,zDiffStore:RXe.default,ZINCRBY:NXe.default,zIncrBy:NXe.default,ZINTER_WITHSCORES:OXe.default,zInterWithScores:OXe.default,ZINTER:kXe.default,zInter:kXe.default,ZINTERCARD:PXe.default,zInterCard:PXe.default,ZINTERSTORE:DXe.default,zInterStore:DXe.default,ZLEXCOUNT:BXe.default,zLexCount:BXe.default,ZMPOP:LXe.default,zmPop:LXe.default,ZMSCORE:MXe.default,zmScore:MXe.default,ZPOPMAX_COUNT:WXe.default,zPopMaxCount:WXe.default,ZPOPMAX:$Xe.default,zPopMax:$Xe.default,ZPOPMIN_COUNT:UXe.default,zPopMinCount:UXe.default,ZPOPMIN:FXe.default,zPopMin:FXe.default,ZRANDMEMBER_COUNT_WITHSCORES:qXe.default,zRandMemberCountWithScores:qXe.default,ZRANDMEMBER_COUNT:jXe.default,zRandMemberCount:jXe.default,ZRANDMEMBER:QXe.default,zRandMember:QXe.default,ZRANGE_WITHSCORES:HXe.default,zRangeWithScores:HXe.default,ZRANGE:GXe.default,zRange:GXe.default,ZRANGEBYLEX:zXe.default,zRangeByLex:zXe.default,ZRANGEBYSCORE_WITHSCORES:KXe.default,zRangeByScoreWithScores:KXe.default,ZRANGEBYSCORE:VXe.default,zRangeByScore:VXe.default,ZRANGESTORE:YXe.default,zRangeStore:YXe.default,ZRANK_WITHSCORE:XXe.default,zRankWithScore:XXe.default,ZRANK:ZXe.default,zRank:ZXe.default,ZREM:eZe.default,zRem:eZe.default,ZREMRANGEBYLEX:tZe.default,zRemRangeByLex:tZe.default,ZREMRANGEBYRANK:rZe.default,zRemRangeByRank:rZe.default,ZREMRANGEBYSCORE:JXe.default,zRemRangeByScore:JXe.default,ZREVRANK:nZe.default,zRevRank:nZe.default,ZSCAN:sZe.default,zScan:sZe.default,ZSCORE:iZe.default,zScore:iZe.default,ZUNION_WITHSCORES:aZe.default,zUnionWithScores:aZe.default,ZUNION:oZe.default,zUnion:oZe.default,ZUNIONSTORE:cZe.default,zUnionStore:cZe.default,VADD:uZe.default,vAdd:uZe.default,VCARD:lZe.default,vCard:lZe.default,VDIM:dZe.default,vDim:dZe.default,VEMB:fZe.default,vEmb:fZe.default,VEMB_RAW:pZe.default,vEmbRaw:pZe.default,VGETATTR:mZe.default,vGetAttr:mZe.default,VINFO:hZe.default,vInfo:hZe.default,VLINKS:gZe.default,vLinks:gZe.default,VLINKS_WITHSCORES:yZe.default,vLinksWithScores:yZe.default,VRANDMEMBER:AZe.default,vRandMember:AZe.default,VRANGE:xZe.default,vRange:xZe.default,VREM:bZe.default,vRem:bZe.default,VSETATTR:_Ze.default,vSetAttr:_Ze.default,VSIM:EZe.default,vSim:EZe.default,VSIM_WITHSCORES:vZe.default,vSimWithScores:vZe.default};var Emr=$(Nu()),{HOTKEYS_GET:Zon,hotkeysGet:ecn,HOTKEYS_RESET:tcn,hotkeysReset:rcn,HOTKEYS_START:ncn,hotkeysStart:scn,HOTKEYS_STOP:icn,hotkeysStop:acn,...vmr}=Emr.default;Gn.NON_STICKY_COMMANDS=vmr});var K2=_(fr=>{"use strict";var IZe=fr&&fr.__importDefault||function(t){return t&&t.__esModule?t:{default:t}},CZe;Object.defineProperty(fr,"__esModule",{value:!0});fr.emitDiagnostics=fr.dbgMaintenance=fr.MAINTENANCE_EVENTS=fr.SMIGRATED_EVENT=void 0;var TZe=require("net"),Smr=require("dns/promises"),n1=IZe(require("node:assert")),Imr=require("node:timers/promises"),Cmr=IZe(require("node:diagnostics_channel"));fr.SMIGRATED_EVENT="__SMIGRATED";fr.MAINTENANCE_EVENTS={PAUSE_WRITING:"pause-writing",RESUME_WRITING:"resume-writing",TIMEOUTS_UPDATE:"timeouts-update"};var um={MOVING:"MOVING",MIGRATING:"MIGRATING",MIGRATED:"MIGRATED",FAILING_OVER:"FAILING_OVER",FAILED_OVER:"FAILED_OVER",SMIGRATING:"SMIGRATING",SMIGRATED:"SMIGRATED"},Tmr=(...t)=>{if(process.env.REDIS_DEBUG_MAINTENANCE)return console.log(new Date().toISOString().slice(11,23),"[MNT]",...t)};fr.dbgMaintenance=Tmr;var wmr=t=>{if(!process.env.REDIS_EMIT_DIAGNOSTICS)return;Cmr.default.channel("redis.maintenance").publish(t)};fr.emitDiagnostics=wmr;var UL=class{#e;#t;#r=0;#n;static setupDefaultMaintOptions(e){e.maintNotifications===void 0&&(e.maintNotifications=e?.RESP===3?"auto":"disabled"),e.maintEndpointType===void 0&&(e.maintEndpointType="auto"),e.maintRelaxedSocketTimeout===void 0&&(e.maintRelaxedSocketTimeout=1e4),e.maintRelaxedCommandTimeout===void 0&&(e.maintRelaxedCommandTimeout=1e4)}static async getHandshakeCommand(e){if(e.maintNotifications==="disabled")return;let r=e.url?new URL(e.url).hostname:e.socket?.host;if(!r)return;let n=e.socket?.tls??!1;return{cmd:["CLIENT","MAINT_NOTIFICATIONS","ON","moving-endpoint-type",await Nmr(n,r,e)],errorHandler:i=>{if((0,fr.dbgMaintenance)("handshake failed:",i),e.maintNotifications==="enabled")throw i}}}constructor(e,r,n){this.#e=e,this.#t=n,this.#n=r,this.#e.addPushHandler(this.#a)}#a=e=>{if((0,fr.dbgMaintenance)("ONPUSH:",e.map(String)),!Array.isArray(e)||!Object.values(um).includes(String(e[0])))return!1;let r=String(e[0]);switch((0,fr.emitDiagnostics)({type:r,timestamp:Date.now(),data:{push:e.map(String)}}),r){case um.MOVING:{let n=e[2],s=e[3]?String(e[3]):null;return(0,fr.dbgMaintenance)("Received MOVING:",n,s),this.#o(n,s),!0}case um.MIGRATING:case um.SMIGRATING:case um.FAILING_OVER:return(0,fr.dbgMaintenance)("Received MIGRATING|SMIGRATING|FAILING_OVER"),this.#s(),!0;case um.MIGRATED:case um.FAILED_OVER:return(0,fr.dbgMaintenance)("Received MIGRATED|FAILED_OVER"),this.#i(),!0;case um.SMIGRATED:return(0,fr.dbgMaintenance)("Received SMIGRATED"),this.#c(e),this.#i(),!0}return!1};#o=async(e,r)=>{this.#s();let n,s;if(r===null){(0,n1.default)(this.#t.maintEndpointType==="none");let{host:u,port:l}=this.#l();n=u,s=l;let d=e*1e3/2;(0,fr.dbgMaintenance)(`Wait for ${d}ms`),await(0,Imr.setTimeout)(d)}else{let u=r.split(":");n=u[0],s=Number(u[1])}(0,fr.dbgMaintenance)("Pausing writing of new commands to old socket"),this.#n._pause(),(0,fr.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,fr.dbgMaintenance)("[ERR]",u)}),(0,fr.dbgMaintenance)(`Tmp client created in ${(performance.now()-i).toFixed(2)}ms`),(0,fr.dbgMaintenance)(`Set timeout for tmp client to ${this.#t.maintRelaxedSocketTimeout}`),a._maintenanceUpdate({relaxedCommandTimeout:this.#t.maintRelaxedCommandTimeout,relaxedSocketTimeout:this.#t.maintRelaxedSocketTimeout}),(0,fr.dbgMaintenance)(`Connecting tmp client: ${n}:${s}`),i=performance.now(),await a.connect(),(0,fr.dbgMaintenance)(`Connected to tmp client in ${(performance.now()-i).toFixed(2)}ms`),(0,fr.dbgMaintenance)("Wait for all in-flight commands to complete"),await this.#e.waitForInflightCommandsToComplete(),(0,fr.dbgMaintenance)("In-flight commands completed"),(0,fr.dbgMaintenance)("Swap client sockets...");let o=this.#n._ejectSocket(),c=a._ejectSocket();this.#n._insertSocket(c),a._insertSocket(o),a.destroy(),(0,fr.dbgMaintenance)("Swap client sockets done."),(0,fr.dbgMaintenance)("Resume writing"),this.#n._unpause(),this.#i()};#s=()=>{if(this.#r++,this.#r>1){(0,fr.dbgMaintenance)("Timeout relaxation already done");return}let e={relaxedCommandTimeout:this.#t.maintRelaxedCommandTimeout,relaxedSocketTimeout:this.#t.maintRelaxedSocketTimeout};this.#n._maintenanceUpdate(e)};#i=()=>{if(this.#r=Math.max(this.#r-1,0),this.#r>0){(0,fr.dbgMaintenance)("Not ready to unrelax timeouts yet");return}let e={relaxedCommandTimeout:void 0,relaxedSocketTimeout:void 0};this.#n._maintenanceUpdate(e)};#c=e=>{let r=CZe.parseSMigratedPush(e);(0,fr.dbgMaintenance)("emit smigratedEvent",r),this.#n._handleSmigrated(r)};static parseSMigratedPush(e){let r=new Map;for(let[s,i,a]of e[2]){let o=String(s),[c,u]=String(i).split(":"),l=String(a).split(",").map(p=>{let m=p.indexOf("-");return m===-1?Number(p):[Number(p.substring(0,m)),Number(p.substring(m+1))]}),d=r.get(o)??[],f=d.find(p=>p.addr.host===c&&p.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:e[1],entries:n}}#l(){(0,n1.default)(this.#t.socket!==void 0),(0,n1.default)("host"in this.#t.socket),(0,n1.default)(typeof this.#t.socket.host=="string");let e=this.#t.socket.host;(0,n1.default)(typeof this.#t.socket.port=="number");let r=this.#t.socket.port;return{host:e,port:r}}};CZe=UL;fr.default=UL;function Rmr(t){let e=(0,TZe.isIP)(t);if(e===4){let r=t.split(".").map(Number);return r[0]===10||r[0]===172&&r[1]>=16&&r[1]<=31||r[0]===192&&r[1]===168}return e===6?t.startsWith("fc")||t.startsWith("fd")||t==="::1"||t.startsWith("fe80"):!1}async function Nmr(t,e,r){if((0,n1.default)(r.maintEndpointType!==void 0),r.maintEndpointType!=="auto")return(0,fr.dbgMaintenance)(`Determine endpoint type: ${r.maintEndpointType}`),r.maintEndpointType;let n=(0,TZe.isIP)(e)?e:(await(0,Smr.lookup)(e,{family:0})).address,s=Rmr(n),i;return t?i=s?"internal-fqdn":"external-fqdn":i=s?"internal-ip":"external-ip",(0,fr.dbgMaintenance)(`Determine endpoint type: ${i}`),i}});var PZe=_(V2=>{"use strict";var kZe=V2&&V2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(V2,"__esModule",{value:!0});var wZe=require("node:events"),RZe=kZe(require("node:net")),Omr=kZe(require("node:tls")),Yl=zl(),NZe=require("node:timers/promises"),OZe=K2(),ise=class extends wZe.EventEmitter{#e;#t;#r;#n;#a;#o;#s;#i=!1;get isOpen(){return this.#i}#c=!1;get isReady(){return this.#c}#l=!1;#h=0;get socketEpoch(){return this.#h}constructor(e,r){super(),this.#e=e,this.#t=r?.connectTimeout??5e3,this.#r=this.#p(r),this.#n=this.#d(r),this.#a=r?.socketTimeout}#p(e){let r=e?.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(e){if(e?.tls===!0){let n={...e,port:e?.port??6379,noDelay:e?.noDelay??!0,keepAlive:e?.keepAlive??!0,keepAliveInitialDelay:e?.keepAliveInitialDelay??5e3,timeout:void 0,onread:void 0,readable:!0,writable:!0};return{create(){return Omr.default.connect(n)},event:"secureConnect"}}if(e&&"path"in e){let n={...e,timeout:void 0,onread:void 0,readable:!0,writable:!0};return{create(){return RZe.default.createConnection(n)},event:"connect"}}let r={...e,port:e?.port??6379,noDelay:e?.noDelay??!0,keepAlive:e?.keepAlive??!0,keepAliveInitialDelay:e?.keepAliveInitialDelay??5e3,timeout:void 0,onread:void 0,readable:!0,writable:!0};return{create(){return RZe.default.createConnection(r)},event:"connect"}}#f(e,r){let n=this.#r(e,r);return n===!1?(this.#i=!1,this.emit("error",r),r):n instanceof Error?(this.#i=!1,this.emit("error",r),new Yl.ReconnectStrategyError(n,r)):n}async connect(){if(this.#i)throw new Error("Socket already opened");return this.#i=!0,this.#m()}async#m(){let e=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(e++,new Yl.SocketClosedUnexpectedlyError);if(typeof r!="number")throw r;await(0,NZe.setTimeout)(r),this.emit("reconnecting");continue}}catch(r){throw this.#s.destroy(),this.#s=void 0,r}this.#c=!0,this.#h++,this.emit("ready")}catch(r){let n=this.#f(e++,r);if(typeof n!="number")throw n;this.emit("error",r),await(0,NZe.setTimeout)(n),this.emit("reconnecting")}while(this.#i&&!this.#c)}setMaintenanceTimeout(e){if((0,OZe.dbgMaintenance)(`Set socket timeout to ${e}`),this.#o===e){(0,OZe.dbgMaintenance)(`Socket already set maintenanceCommandTimeout to ${e}, skipping`);return}this.#o=e,e!==void 0?this.#s?.setTimeout(e):this.#s?.setTimeout(this.#a??0)}async#A(){let e=this.#n.create(),r;return this.#t!==void 0&&(r=()=>e.destroy(new Yl.ConnectionTimeoutError),e.once("timeout",r),e.setTimeout(this.#t)),this.#l&&e.unref(),await(0,wZe.once)(e,this.#n.event),r&&e.removeListener("timeout",r),this.#a&&(e.once("timeout",()=>{let n=this.#o?new Yl.SocketTimeoutDuringMaintenanceError(this.#o):new Yl.SocketTimeoutError(this.#a);e.destroy(n)}),e.setTimeout(this.#a)),e.once("error",n=>this.#g(n)).once("close",n=>{n||!this.#i||this.#s!==e||this.#g(new Yl.SocketClosedUnexpectedlyError)}).on("drain",()=>this.emit("drain")).on("data",n=>this.emit("data",n)),e}#g(e){let r=this.#c;this.#c=!1,this.emit("error",e),!(!r||!this.#i||typeof this.#f(0,e)!="number")&&(this.emit("reconnecting"),this.#m().catch(()=>{}))}write(e){if(this.#s){this.#s.cork();for(let r of e){for(let n of r)this.#s.write(n);if(this.#s.writableNeedDrain)break}this.#s.uncork()}}async quit(e){if(!this.#i)throw new Yl.ClientClosedError;this.#i=!1;let r=await e();return this.destroySocket(),r}close(){if(!this.#i)throw new Yl.ClientClosedError;this.#i=!1}destroy(){if(!this.#i)throw new Yl.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(e,r){if(r instanceof Yl.SocketTimeoutError)return!1;let n=Math.floor(Math.random()*200);return Math.min(Math.pow(2,e)*50,2e3)+n}};V2.default=ise});var ose=_(FL=>{"use strict";Object.defineProperty(FL,"__esModule",{value:!0});FL.Token=void 0;var ase=class{value;expiresAtMs;receivedAtMs;constructor(e,r,n){this.value=e,this.expiresAtMs=r,this.receivedAtMs=n}getTtlMs(e){return this.expiresAtMs{"use strict";Object.defineProperty(s1,"__esModule",{value:!0});s1.TokenManager=s1.IDPError=void 0;var kmr=ose(),qL=class extends Error{message;isRetryable;constructor(e,r){super(e),this.message=e,this.isRetryable=r,this.name="IDPError"}};s1.IDPError=qL;var cse=class{identityProvider;config;currentToken=null;refreshTimeout=null;listener=null;retryAttempt=0;constructor(e,r){if(this.identityProvider=e,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(e,r=0){return this.listener&&this.stop(),this.listener=e,this.retryAttempt=0,this.scheduleNextRefresh(r),{dispose:()=>this.stop()}}calculateRetryDelay(){if(!this.config.retry)return 0;let{initialDelayMs:e,maxDelayMs:r,backoffMultiplier:n,jitterPercentage:s}=this.config.retry,i=e*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(e){if(!this.config.retry)return!1;let{maxAttempts:r,isRetryable:n}=this.config.retry;return this.retryAttempt>=r?!1:n?n(e,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(e){if(this.shouldRetry(e)){this.retryAttempt++;let r=this.calculateRetryDelay();this.notifyError(`Token refresh failed (attempt ${this.retryAttempt}), retrying in ${r}ms: ${e}`,!0),this.scheduleNextRefresh(r)}else this.notifyError(e,!1),this.stop()}}handleNewToken=async({token:e,ttlMs:r})=>{if(!this.listener)throw new Error("TokenManager is not running, but a new token was received");let n=this.wrapAndSetCurrentToken(e,r);this.listener.onNext(n),this.scheduleNextRefresh(this.calculateRefreshTime(n))};wrapAndSetCurrentToken(e,r){let n=Date.now(),s=new kmr.Token(e,n+r,n);return this.currentToken=s,s}scheduleNextRefresh(e){this.refreshTimeout&&(clearTimeout(this.refreshTimeout),this.refreshTimeout=null),e===0?this.refresh():this.refreshTimeout=setTimeout(()=>this.refresh(),e)}calculateRefreshTime(e,r=Date.now()){let n=e.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(e,r){let n=e instanceof Error?e.message:String(e);if(!this.listener)throw new Error(`TokenManager is not running but received an error: ${n}`);this.listener.onError(new qL(n,r))}};s1.TokenManager=cse});var BZe=_(i1=>{"use strict";Object.defineProperty(i1,"__esModule",{value:!0});i1.UnableToObtainNewCredentialsError=i1.CredentialsError=void 0;var use=class extends Error{constructor(e){super(`Re-authentication with latest credentials failed: ${e}`),this.name="CredentialsError"}};i1.CredentialsError=use;var lse=class extends Error{constructor(e){super(`Unable to obtain new credentials : ${e}`),this.name="UnableToObtainNewCredentialsError"}};i1.UnableToObtainNewCredentialsError=lse});var WZe=_(Mc=>{"use strict";Object.defineProperty(Mc,"__esModule",{value:!0});Mc.Token=Mc.CredentialsError=Mc.UnableToObtainNewCredentialsError=Mc.IDPError=Mc.TokenManager=void 0;var LZe=DZe();Object.defineProperty(Mc,"TokenManager",{enumerable:!0,get:function(){return LZe.TokenManager}});Object.defineProperty(Mc,"IDPError",{enumerable:!0,get:function(){return LZe.IDPError}});var MZe=BZe();Object.defineProperty(Mc,"UnableToObtainNewCredentialsError",{enumerable:!0,get:function(){return MZe.UnableToObtainNewCredentialsError}});Object.defineProperty(Mc,"CredentialsError",{enumerable:!0,get:function(){return MZe.CredentialsError}});var Pmr=ose();Object.defineProperty(Mc,"Token",{enumerable:!0,get:function(){return Pmr.Token}})});var QL=_(Jl=>{"use strict";var Dmr=Jl&&Jl.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Jl,"__esModule",{value:!0});Jl.EmptyAwareSinglyLinkedList=Jl.SinglyLinkedList=Jl.DoublyLinkedList=void 0;var Bmr=Dmr(require("events")),dse=class{#e=0;get length(){return this.#e}#t;get head(){return this.#t}#r;get tail(){return this.#r}push(e){return++this.#e,this.#r===void 0?this.#t=this.#r={previous:this.#t,next:void 0,value:e}:this.#r=this.#r.next={previous:this.#r,next:void 0,value:e}}unshift(e){return++this.#e,this.#t===void 0?this.#t=this.#r={previous:void 0,next:void 0,value:e}:this.#t=this.#t.previous={previous:void 0,next:this.#t,value:e}}add(e,r=!1){return r?this.unshift(e):this.push(e)}shift(){if(this.#t===void 0)return;--this.#e;let e=this.#t;return e.next?(e.next.previous=void 0,this.#t=e.next,e.next=void 0):this.#t=this.#r=void 0,e.value}remove(e){this.#e!==0&&(--this.#e,this.#r===e&&(this.#r=e.previous),this.#t===e?this.#t=e.next:(e.previous&&(e.previous.next=e.next),e.next&&(e.next.previous=e.previous)),e.previous=void 0,e.next=void 0)}reset(){this.#e=0,this.#t=this.#r=void 0}*[Symbol.iterator](){let e=this.#t;for(;e!==void 0;)yield e.value,e=e.next}*nodes(){let e=this.#t;for(;e;){let r=e.next;yield e,e=r}}};Jl.DoublyLinkedList=dse;var jL=class{#e=0;get length(){return this.#e}#t;get head(){return this.#t}#r;get tail(){return this.#r}push(e){++this.#e;let r={value:e,next:void 0,removed:!1};return this.#t===void 0?this.#t=this.#r=r:this.#r.next=this.#r=r}remove(e,r){if(e.removed)throw new Error("node already removed");--this.#e,this.#t===e?this.#r===e?this.#t=this.#r=void 0:this.#t=e.next:this.#r===e?(this.#r=r,r.next=void 0):r.next=e.next,e.removed=!0}shift(){if(this.#t===void 0)return;let e=this.#t;return--this.#e===0?this.#t=this.#r=void 0:this.#t=e.next,e.removed=!0,e.value}reset(){this.#e=0,this.#t=this.#r=void 0}*[Symbol.iterator](){let e=this.#t;for(;e!==void 0;)yield e.value,e=e.next}};Jl.SinglyLinkedList=jL;var fse=class extends jL{events=new Bmr.default;reset(){let e=this.length;super.reset(),e!==this.length&&this.length===0&&this.events.emit("empty")}shift(){let e=this.length,r=super.shift();return e!==this.length&&this.length===0&&this.events.emit("empty"),r}remove(e,r){let n=this.length;super.remove(e,r),n!==this.length&&this.length===0&&this.events.emit("empty")}};Jl.EmptyAwareSinglyLinkedList=fse});var $Ze=_(pse=>{"use strict";Object.defineProperty(pse,"__esModule",{value:!0});var Y2=`\r +`;function Lmr(t){let e=[],r="*"+t.length+Y2;for(let n=0;n{var UZe=[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],Mmr=function(e){for(var r,n=0,s=0,i=[],a=e.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},FZe=mse.exports=function(e){for(var r,n=0,s=-1,i=0,a=0,o=typeof e=="string"?Mmr(e):e,c=o.length;n>8)&255]^a<<8;else if(n-1!==s)return a&16383;i=UZe[(r^i>>8)&255]^i<<8}return i&16383};mse.exports.generateMulti=function(e){for(var r=1,n=e.length,s=FZe(e[0]);r{"use strict";var Wmr=Dt&&Dt.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Dt,"__esModule",{value:!0});Dt.PubSub=Dt.PUBSUB_TYPE=void 0;var $mr=Wmr(hse());Dt.PUBSUB_TYPE={CHANNELS:"CHANNELS",PATTERNS:"PATTERNS",SHARDED:"SHARDED"};var Ti={[Dt.PUBSUB_TYPE.CHANNELS]:{subscribe:Buffer.from("subscribe"),unsubscribe:Buffer.from("unsubscribe"),message:Buffer.from("message")},[Dt.PUBSUB_TYPE.PATTERNS]:{subscribe:Buffer.from("psubscribe"),unsubscribe:Buffer.from("punsubscribe"),message:Buffer.from("pmessage")},[Dt.PUBSUB_TYPE.SHARDED]:{subscribe:Buffer.from("ssubscribe"),unsubscribe:Buffer.from("sunsubscribe"),message:Buffer.from("smessage")}},gse=class t{static isStatusReply(e){let r=typeof e[0]=="string"?Buffer.from(e[0]):e[0];return Ti[Dt.PUBSUB_TYPE.CHANNELS].subscribe.equals(r)||Ti[Dt.PUBSUB_TYPE.CHANNELS].unsubscribe.equals(r)||Ti[Dt.PUBSUB_TYPE.PATTERNS].subscribe.equals(r)||Ti[Dt.PUBSUB_TYPE.PATTERNS].unsubscribe.equals(r)||Ti[Dt.PUBSUB_TYPE.SHARDED].subscribe.equals(r)}static isShardedUnsubscribe(e){let r=typeof e[0]=="string"?Buffer.from(e[0]):e[0];return Ti[Dt.PUBSUB_TYPE.SHARDED].unsubscribe.equals(r)}static#e(e){return Array.isArray(e)?e:[e]}static#t(e,r){return r?e.buffers:e.strings}#r=0;#n=!1;get isActive(){return this.#n}listeners={[Dt.PUBSUB_TYPE.CHANNELS]:new Map,[Dt.PUBSUB_TYPE.PATTERNS]:new Map,[Dt.PUBSUB_TYPE.SHARDED]:new Map};subscribe(e,r,n,s){let i=[Ti[e].subscribe],a=t.#e(r);for(let o of a){let c=this.listeners[e].get(o);(!c||c.unsubscribing)&&i.push(o)}if(i.length===1){for(let o of a)t.#t(this.listeners[e].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[e].get(o);c||(c={unsubscribing:!1,buffers:new Set,strings:new Set},this.listeners[e].set(o,c)),t.#t(c,s).add(n)}},reject:()=>{this.#r--,this.#s()}}}extendChannelListeners(e,r,n){if(this.#a(e,r,n))return this.#n=!0,this.#r++,{args:[Ti[e].subscribe,r],channelsCounter:1,resolve:()=>this.#r--,reject:()=>{this.#r--,this.#s()}}}#a(e,r,n){let s=this.listeners[e].get(r);if(!s)return this.listeners[e].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(e,r){let n=[Ti[e].subscribe];for(let[s,i]of r)this.#a(e,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(e,r,n,s){let i=this.listeners[e];if(!r)return this.#o([Ti[e].unsubscribe],NaN,()=>i.clear());let a=t.#e(r);if(!n)return this.#o([Ti[e].unsubscribe,...a],a.length,()=>{for(let c of a)i.delete(c)});let o=[Ti[e].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)t.#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(e,r,n){return{args:e,channelsCounter:r,resolve:()=>{n(),this.#s()},reject:void 0}}#s(){this.#n=this.listeners[Dt.PUBSUB_TYPE.CHANNELS].size!==0||this.listeners[Dt.PUBSUB_TYPE.PATTERNS].size!==0||this.listeners[Dt.PUBSUB_TYPE.SHARDED].size!==0||this.#r!==0}reset(){this.#n=!1,this.#r=0}resubscribe(){let e=[];for(let[r,n]of Object.entries(this.listeners))n.size&&(this.#n=!0,r===Dt.PUBSUB_TYPE.SHARDED?this.#c(e,n):this.#i(e,r,n));return e}#i(e,r,n){this.#r++;let s=()=>this.#r--;e.push({args:[Ti[r].subscribe,...n.keys()],channelsCounter:n.size,resolve:s,reject:s})}#c(e,r){let n=()=>this.#r--;for(let s of r.keys())this.#r++,e.push({args:[Ti[Dt.PUBSUB_TYPE.SHARDED].subscribe,s],channelsCounter:1,resolve:n,reject:n})}handleMessageReply(e){let r=typeof e[0]=="string"?Buffer.from(e[0]):e[0];return Ti[Dt.PUBSUB_TYPE.CHANNELS].message.equals(r)?(this.#l(Dt.PUBSUB_TYPE.CHANNELS,e[2],e[1]),!0):Ti[Dt.PUBSUB_TYPE.PATTERNS].message.equals(r)?(this.#l(Dt.PUBSUB_TYPE.PATTERNS,e[3],e[2],e[1]),!0):Ti[Dt.PUBSUB_TYPE.SHARDED].message.equals(r)?(this.#l(Dt.PUBSUB_TYPE.SHARDED,e[2],e[1]),!0):!1}removeShardedListeners(e){let r=this.listeners[Dt.PUBSUB_TYPE.SHARDED].get(e);return this.listeners[Dt.PUBSUB_TYPE.SHARDED].delete(e),this.#s(),r}removeAllListeners(){let e={[Dt.PUBSUB_TYPE.CHANNELS]:this.listeners[Dt.PUBSUB_TYPE.CHANNELS],[Dt.PUBSUB_TYPE.PATTERNS]:this.listeners[Dt.PUBSUB_TYPE.PATTERNS],[Dt.PUBSUB_TYPE.SHARDED]:this.listeners[Dt.PUBSUB_TYPE.SHARDED]};return this.#s(),this.listeners[Dt.PUBSUB_TYPE.CHANNELS]=new Map,this.listeners[Dt.PUBSUB_TYPE.PATTERNS]=new Map,this.listeners[Dt.PUBSUB_TYPE.SHARDED]=new Map,e}removeShardedPubSubListenersForSlots(e){let r=new Map;for(let[n,s]of this.listeners[Dt.PUBSUB_TYPE.SHARDED])e.has((0,$mr.default)(n))&&(r.set(n,s),this.listeners[Dt.PUBSUB_TYPE.SHARDED].delete(n));return this.#s(),{[Dt.PUBSUB_TYPE.SHARDED]:r}}#l(e,r,n,s){let i=(s??n).toString(),a=this.listeners[e].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)}};Dt.PubSub=gse});var jZe=_(Z2=>{"use strict";var Umr=Z2&&Z2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Z2,"__esModule",{value:!0});var qZe=QL(),Fmr=Umr($Ze()),X2=OL(),yse=J2(),a1=zl(),o1=K2(),qmr=Buffer.from("pong"),jmr=Buffer.from("RESET"),Qmr={...X2.PUSH_TYPE_MAPPING,[X2.RESP_TYPES.SIMPLE_STRING]:Buffer},Ase=class t{#e;#t;#r=new qZe.DoublyLinkedList;#n=new qZe.EmptyAwareSinglyLinkedList;#a;#o;decoder;#s=new yse.PubSub;#i=[this.#p.bind(this)];#c;setMaintenanceCommandTimeout(e){if(this.#c===e){(0,o1.dbgMaintenance)(`Queue already set maintenanceCommandTimeout to ${e}, skipping`);return}if((0,o1.dbgMaintenance)(`Setting maintenance command timeout to ${e}`),this.#c=e,this.#c===void 0){(0,o1.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;t.#I(i),r++;let a=this.#c,o=AbortSignal.timeout(a);i.timeout={signal:o,listener:()=>{this.#r.remove(s),i.reject(new a1.CommandTimeoutDuringMaintenanceError(a))},originalTimeout:i.timeout?.originalTimeout},o.addEventListener("abort",i.timeout.listener,{once:!0})}(0,o1.dbgMaintenance)(`Total of ${r} of ${n} timeouts reset to ${e}`)}get isPubSubActive(){return this.#s.isActive}constructor(e,r,n){this.#e=e,this.#t=r,this.#a=n,this.decoder=this.#f()}#l(e){this.#n.shift().resolve(e)}#h(e){this.#n.shift().reject(e)}#p(e){if(this.#s.handleMessageReply(e))return!0;let r=yse.PubSub.isShardedUnsubscribe(e);if(r&&!this.#n.length){let n=e[1].toString();return this.#a(n,this.#s.removeShardedListeners(n)),!0}else if(r||yse.PubSub.isStatusReply(e)){let n=this.#n.head.value;return(Number.isNaN(n.channelsCounter)&&e[2]===0||--n.channelsCounter===0)&&this.#n.shift().resolve(),!0}return!1}#d(){return this.#n.head.value.typeMapping??{}}#f(){return new X2.Decoder({onReply:e=>this.#l(e),onErrorReply:e=>this.#h(e),onPush:e=>{for(let r of this.#i)if(r(e))return},getTypeMapping:()=>this.#d()})}addPushHandler(e){this.#i.push(e)}async waitForInflightCommandsToComplete(e){if(this.#n.length!==0)return new Promise(r=>{let n=()=>{s&&clearTimeout(s),r()},s,i=e?.timeoutMs;i!==void 0&&i>0&&(s=setTimeout(()=>{this.#n.events.off("empty",n);let a=this.#n.length;(0,o1.dbgMaintenance)(`waitForInflightCommandsToComplete timed out after ${i}ms with ${a} commands still waiting`),e?.flushOnTimeout&&a>0&&((0,o1.dbgMaintenance)(`Flushing ${a} commands that timed out waiting for reply`),this.#v(new a1.TimeoutError)),r()},i)),this.#n.events.once("empty",n)})}addCommand(e,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 a1.AbortError):new Promise((n,s)=>{let i,a={args:e,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 a1.CommandTimeoutDuringMaintenanceError(o):new a1.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 a1.AbortError)}},u.addEventListener("abort",a.abort.listener,{once:!0})),i=this.#r.add(a,r?.asap)})}#m(e,r=!1,n){return new Promise((s,i)=>{this.#r.add({args:e.args,chainId:n,abort:void 0,timeout:void 0,resolve(){e.resolve(),s()},reject(a){e.reject?.(),i(a)},channelsCounter:e.channelsCounter,typeMapping:X2.PUSH_TYPE_MAPPING},r)})}#A(){this.#e===2&&(this.decoder.onReply=e=>{if(Array.isArray(e)){if(this.#p(e))return;let r=typeof e[0]=="string"?Buffer.from(e[0]):e[0];if(qmr.equals(r)){let{resolve:n,typeMapping:s}=this.#n.shift(),i=e[1].length===0?e[0]:e[1];n(s?.[X2.RESP_TYPES.SIMPLE_STRING]===Buffer?i:i.toString());return}}return this.#l(e)},this.decoder.getTypeMapping=()=>Qmr)}subscribe(e,r,n,s){let i=this.#s.subscribe(e,r,n,s);if(i)return this.#A(),this.#m(i)}#g(){this.decoder.onReply=e=>this.#l(e),this.decoder.getTypeMapping=()=>this.#d()}unsubscribe(e,r,n,s){let i=this.#s.unsubscribe(e,r,n,s);if(i){if(i&&this.#e===2){let{resolve:a}=i;i.resolve=()=>{this.#s.isActive||this.#g(),a()}}return this.#m(i)}}removeAllPubSubListeners(){return this.#s.removeAllListeners()}removeShardedPubSubListenersForSlots(e){return this.#s.removeShardedPubSubListenersForSlots(e)}resubscribe(e){let r=this.#s.resubscribe();if(r.length)return this.#A(),Promise.all(r.map(n=>this.#m(n,!0,e)))}extendPubSubChannelListeners(e,r,n){let s=this.#s.extendChannelListeners(e,r,n);if(s)return this.#A(),this.#m(s)}extendPubSubListeners(e,r){let n=this.#s.extendTypeListeners(e,r);if(n)return this.#A(),this.#m(n)}getPubSubListeners(e){return this.#s.listeners[e]}monitor(e,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.#_?this.#_=e:this.decoder.onReply=e,this.decoder.getTypeMapping=()=>i,n()},reject:s,channelsCounter:void 0,typeMapping:i},r?.asap)})}resetDecoder(){this.#g(),this.decoder.reset()}#_;async reset(e,r){return new Promise((n,s)=>{this.#_=this.decoder.onReply,this.decoder.onReply=i=>{if(typeof i=="string"&&i==="RESET"||i instanceof Buffer&&jmr.equals(i)){this.#g(),this.#_=void 0,this.#s.reset(),this.#n.shift().resolve(i);return}this.#_(i)},this.#r.push({args:["RESET"],chainId:e,abort:void 0,timeout:void 0,resolve:n,reject:s,channelsCounter:void 0,typeMapping:r})})}isWaitingToWrite(){return this.#r.length>0}*commandsToWrite(){let e=this.#r.shift();for(;e;){let r;try{r=(0,Fmr.default)(e.args)}catch(n){e.reject(n),e=this.#r.shift();continue}e.args=void 0,e.abort&&(t.#y(e),e.abort=void 0),e.timeout&&(t.#I(e),e.timeout=void 0),this.#o=e.chainId,e.chainId=void 0,this.#n.push(e),yield r,e=this.#r.shift()}}#v(e){for(let r of this.#n)r.reject(e);this.#n.reset()}static#y(e){e.abort.signal.removeEventListener("abort",e.abort.listener)}static#I(e){e.timeout?.signal.removeEventListener("abort",e.timeout.listener)}static#E(e,r){e.abort&&t.#y(e),e.timeout&&t.#I(e),e.reject(r)}flushWaitingForReply(e){if(this.resetDecoder(),this.#s.reset(),this.#v(e),!!this.#o){for(;this.#r.head?.value.chainId===this.#o;)t.#E(this.#r.shift(),e);this.#o=void 0}}flushAll(e){this.resetDecoder(),this.#s.reset(),this.#v(e);for(let r of this.#r)t.#E(r,e);this.#r.reset()}isEmpty(){return this.#r.length===0&&this.#n.length===0}extractCommandsForSlots(e){let r=[],n=this.#r.head;for(;n!==void 0;)if(n.value.slotNumber!==void 0&&e.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 e=[],r=this.#r.head;for(;r;)e.push(r.value),this.#r.remove(r),r=r.next;return e}prependCommandsToWrite(e){if(e.length)for(let r=e.length-1;r>=0;r--)this.#r.unshift(e[r])}};Z2.default=Ase});var Zl=_(Xl=>{"use strict";Object.defineProperty(Xl,"__esModule",{value:!0});Xl.scriptArgumentsPrefix=Xl.functionArgumentsPrefix=Xl.getTransformReply=Xl.attachConfig=void 0;function QZe(){throw new Error("Some RESP3 results for Redis Query Engine responses may change. Refer to the readme for guidance")}function Hmr({BaseClass:t,commands:e,createCommand:r,createModuleCommand:n,createFunctionCommand:s,createScriptCommand:i,config:a}){let o=a?.RESP??2,c=class extends t{};for(let[u,l]of Object.entries(e))a?.RESP==3&&l.unstableResp3&&!a.unstableResp3?c.prototype[u]=QZe: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,p]of Object.entries(l))a.RESP==3&&p.unstableResp3&&!a.unstableResp3?d[f]=QZe:d[f]=n(p,o);HZe(c.prototype,u,d)}if(a?.functions)for(let[u,l]of Object.entries(a.functions)){let d=Object.create(null);for(let[f,p]of Object.entries(l))d[f]=s(f,p,o);HZe(c.prototype,u,d)}if(a?.scripts)for(let[u,l]of Object.entries(a.scripts))c.prototype[u]=i(l,o);return c}Xl.attachConfig=Hmr;function HZe(t,e,r){Object.defineProperty(t,e,{get(){let n=Object.create(r);return n._self=this,Object.defineProperty(this,e,{value:n}),n}})}function Gmr(t,e){switch(typeof t.transformReply){case"function":return t.transformReply;case"object":return t.transformReply[e]}}Xl.getTransformReply=Gmr;function zmr(t,e){let r=[e.IS_READ_ONLY?"FCALL_RO":"FCALL",t];return e.NUMBER_OF_KEYS!==void 0&&r.push(e.NUMBER_OF_KEYS.toString()),r}Xl.functionArgumentsPrefix=zmr;function Kmr(t){let e=[t.IS_READ_ONLY?"EVALSHA_RO":"EVALSHA",t.SHA1];return t.NUMBER_OF_KEYS!==void 0&&e.push(t.NUMBER_OF_KEYS.toString()),e}Xl.scriptArgumentsPrefix=Kmr});var eT=_(bse=>{"use strict";Object.defineProperty(bse,"__esModule",{value:!0});var GZe=zl(),xse=class{typeMapping;constructor(e){this.typeMapping=e}queue=[];scriptsInUse=new Set;addCommand(e,r){this.queue.push({args:e,transformReply:r})}addScript(e,r,n){let s=[];s.preserve=r.preserve,this.scriptsInUse.has(e.SHA1)?s.push("EVALSHA",e.SHA1):(this.scriptsInUse.add(e.SHA1),s.push("EVAL",e.SCRIPT)),e.NUMBER_OF_KEYS!==void 0&&s.push(e.NUMBER_OF_KEYS.toString()),s.push(...r),this.addCommand(s,n)}transformReplies(e){let r=[],n=e.map((s,i)=>{if(s instanceof GZe.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 GZe.MultiErrorReply(n,r);return n}};bse.default=xse});var Ese=_(tT=>{"use strict";var zZe=tT&&tT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(tT,"__esModule",{value:!0});var Vmr=zZe(Nu()),Ymr=zZe(eT()),c1=Zl(),HL=Kl(),_se=class t{static#e(e,r){let n=(0,c1.getTransformReply)(e,r);return function(...s){let i=new HL.BasicCommandParser;e.parseCommand(i,...s);let a=i.redisArgs;return a.preserve=i.preserve,this.addCommand(a,n)}}static#t(e,r){let n=(0,c1.getTransformReply)(e,r);return function(...s){let i=new HL.BasicCommandParser;e.parseCommand(i,...s);let a=i.redisArgs;return a.preserve=i.preserve,this._self.addCommand(a,n)}}static#r(e,r,n){let s=(0,c1.functionArgumentsPrefix)(e,r),i=(0,c1.getTransformReply)(r,n);return function(...a){let o=new HL.BasicCommandParser;o.push(...s),r.parseCommand(o,...a);let c=o.redisArgs;return c.preserve=o.preserve,this._self.addCommand(c,i)}}static#n(e,r){let n=(0,c1.getTransformReply)(e,r);return function(...s){let i=new HL.BasicCommandParser;e.parseCommand(i,...s);let a=i.redisArgs;return a.preserve=i.preserve,this.#c(e,a,n)}}static extend(e){return(0,c1.attachConfig)({BaseClass:t,commands:Vmr.default,createCommand:t.#e,createModuleCommand:t.#t,createFunctionCommand:t.#r,createScriptCommand:t.#n,config:e})}#a;#o;#s;#i;constructor(e,r,n){this.#a=new Ymr.default(n),this.#o=e,this.#s=r}SELECT(e,r){return this.#i=e,this.#a.addCommand(["SELECT",e.toString()],r),this}select=this.SELECT;addCommand(e,r){return this.#a.addCommand(e,r),this}#c(e,r,n){return this.#a.addScript(e,r,n),this}async exec(e=!1){return e?this.execAsPipeline():this.#a.transformReplies(await this.#o(this.#a.queue,this.#i))}EXEC=this.exec;execTyped(e=!1){return this.exec(e)}async execAsPipeline(){return this.#a.queue.length===0?[]:this.#a.transformReplies(await this.#s(this.#a.queue,this.#i))}execAsPipelineTyped(){return this.execAsPipeline()}};tT.default=_se});var YZe=_(l1=>{"use strict";var KZe=l1&&l1.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(l1,"__esModule",{value:!0});l1.RedisLegacyClient=void 0;var Jmr=Zl(),VZe=KZe(Nu()),Xmr=KZe(eT()),u1=class t{static#e(e,r){let n;return typeof r[r.length-1]=="function"&&(n=r.pop()),t.pushArguments(e,r),n}static pushArguments(e,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(e){this.#r=e;let r=e.options?.RESP??2;for(let[n,s]of Object.entries(VZe.default))this[n]=t.#t(n,s,r);this.#n=vse.factory(r)}sendCommand(...e){let r=[],n=t.#e(r,e),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)}};l1.RedisLegacyClient=u1;var vse=class t{static#e(e,r,n){let s=u1.getTransformReply(r,n);return function(...i){let a=[e];return u1.pushArguments(a,i),this.#t.addCommand(a,s),this}}static factory(e){let r=class extends t{};for(let[n,s]of Object.entries(VZe.default))r.prototype[n]=t.#e(n,s,e);return n=>new r(n)}#t=new Xmr.default;#r;constructor(e){this.#r=e}sendCommand(...e){let r=[];return u1.pushArguments(r,e),this.#t.addCommand(r),this}exec(e){let r=this.#r._executeMulti(this.#t.queue);if(!e){r.catch(n=>this.#r.emit("error",n));return}r.then(n=>e(null,this.#t.transformReplies(n))).catch(n=>e?.(n))}}});var d1=_(ho=>{"use strict";Object.defineProperty(ho,"__esModule",{value:!0});ho.PooledNoRedirectClientSideCache=ho.BasicPooledClientSideCache=ho.PooledClientSideCacheProvider=ho.BasicClientSideCache=ho.ClientSideCacheProvider=ho.CacheStats=void 0;var Zmr=require("stream"),rT=class t{hitCount;missCount;loadSuccessCount;loadFailureCount;totalLoadTime;evictionCount;constructor(e,r,n,s,i,a){if(this.hitCount=e,this.missCount=r,this.loadSuccessCount=n,this.loadFailureCount=s,this.totalLoadTime=i,this.evictionCount=a,e<0||r<0||n<0||s<0||i<0||a<0)throw new Error("All statistics values must be non-negative")}static of(e=0,r=0,n=0,s=0,i=0,a=0){return new t(e,r,n,s,i,a)}static empty(){return t.EMPTY_STATS}static EMPTY_STATS=new t(0,0,0,0,0,0);requestCount(){return this.hitCount+this.missCount}hitRate(){let e=this.requestCount();return e===0?1:this.hitCount/e}missRate(){let e=this.requestCount();return e===0?0:this.missCount/e}loadCount(){return this.loadSuccessCount+this.loadFailureCount}loadFailureRate(){let e=this.loadCount();return e===0?0:this.loadFailureCount/e}averageLoadPenalty(){let e=this.loadCount();return e===0?0:this.totalLoadTime/e}minus(e){return t.of(Math.max(0,this.hitCount-e.hitCount),Math.max(0,this.missCount-e.missCount),Math.max(0,this.loadSuccessCount-e.loadSuccessCount),Math.max(0,this.loadFailureCount-e.loadFailureCount),Math.max(0,this.totalLoadTime-e.totalLoadTime),Math.max(0,this.evictionCount-e.evictionCount))}plus(e){return t.of(this.hitCount+e.hitCount,this.missCount+e.missCount,this.loadSuccessCount+e.loadSuccessCount,this.loadFailureCount+e.loadFailureCount,this.totalLoadTime+e.totalLoadTime,this.evictionCount+e.evictionCount)}};ho.CacheStats=rT;var GL=class t{static INSTANCE=new t;constructor(){}recordHits(e){}recordMisses(e){}recordLoadSuccess(e){}recordLoadFailure(e){}recordEvictions(e){}snapshot(){return rT.empty()}};function ehr(){return GL.INSTANCE}var zL=class t{#e=0;#t=0;#r=0;#n=0;#a=0;#o=0;recordHits(e){this.#e+=e}recordMisses(e){this.#t+=e}recordLoadSuccess(e){this.#r++,this.#a+=e}recordLoadFailure(e){this.#n++,this.#a+=e}recordEvictions(e){this.#o+=e}snapshot(){return rT.of(this.#e,this.#t,this.#r,this.#n,this.#a,this.#o)}static create(){return new t}};function thr(t){let e=new Array(t.length*2);for(let r=0;r0&&this.#r.recordEvictions(r)}get(e){let r=this.#e.get(e);if(r&&!r.validate()){this.delete(e),this.#r.recordEvictions(1),this.emit("cache-evict",e);return}return r!==void 0&&this.lru&&(this.#e.delete(e),this.#e.set(e,r)),r}delete(e){let r=this.#e.get(e);r&&(r.invalidate(),this.#e.delete(e))}has(e){return this.#e.has(e)}set(e,r,n){let s=this.#e.size,i=this.#e.get(e);i&&(s--,i.invalidate()),this.maxEntries>0&&s>=this.maxEntries&&(this.deleteOldest(),this.#r.recordEvictions(1)),this.#e.set(e,r);for(let a of n)this.#t.has(a.toString())||this.#t.set(a.toString(),new Set),this.#t.get(a.toString()).add(e)}size(){return this.#e.size}createValueEntry(e,r){return new nT(this.ttl,r)}createPromiseEntry(e,r){return new sT(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()}};ho.BasicClientSideCache=YL;var JL=class extends YL{#e=!1;disable(){this.#e=!0}enable(){this.#e=!1}get(e){if(!this.#e)return super.get(e)}has(e){return this.#e?!1:super.has(e)}onPoolClose(){this.clear()}};ho.PooledClientSideCacheProvider=JL;var XL=class extends JL{onError(){this.clear(!1)}onClose(){this.clear(!1)}};ho.BasicPooledClientSideCache=XL;var Sse=class extends nT{#e;constructor(e,r,n){super(e,n),this.#e=r}validate(){let e=super.validate();return this.#e&&(e=e&&this.#e.client.isReady&&this.#e.client.socketEpoch==this.#e.epoch),e}},Ise=class extends sT{#e;constructor(e,r,n){super(e,n),this.#e=r}validate(){return super.validate()&&this.#e.client.isReady&&this.#e.client.socketEpoch==this.#e.epoch}},Cse=class extends XL{createValueEntry(e,r){let n={epoch:e.socketEpoch,client:e};return new Sse(this.ttl,n,r)}createPromiseEntry(e,r){let n={epoch:e.socketEpoch,client:e};return new Ise(this.ttl,n,r)}onError(){}onClose(){}};ho.PooledNoRedirectClientSideCache=Cse});var ZL=_(wse=>{"use strict";Object.defineProperty(wse,"__esModule",{value:!0});var Tse=class{#e;#t;get(e){return JSON.stringify(e,JZe())===this.#t?this.#e:void 0}set(e,r){this.#e=r,this.#t=JSON.stringify(e,JZe())}};wse.default=Tse;function JZe(){let t=new WeakSet;return function(r,n){return n&&typeof n=="object"?t.has(n)?"circular":(t.add(n),n):n}}});var kse=_(f1=>{"use strict";var Ose=f1&&f1.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(f1,"__esModule",{value:!0});f1.RedisClientPool=void 0;var rhr=Nu(),nhr=Ose(p1()),shr=require("node:events"),Rse=QL(),ihr=zl(),$g=Zl(),ahr=Ose(Ese()),XZe=d1(),e5=Kl(),ohr=Ose(ZL()),Nse=class t extends shr.EventEmitter{static#e(e,r){let n=(0,$g.getTransformReply)(e,r);return async function(...s){let i=new e5.BasicCommandParser;return e.parseCommand(i,...s),this.execute(a=>a._executeCommand(e,i,this._commandOptions,n))}}static#t(e,r){let n=(0,$g.getTransformReply)(e,r);return async function(...s){let i=new e5.BasicCommandParser;return e.parseCommand(i,...s),this._self.execute(a=>a._executeCommand(e,i,this._self._commandOptions,n))}}static#r(e,r,n){let s=(0,$g.functionArgumentsPrefix)(e,r),i=(0,$g.getTransformReply)(r,n);return async function(...a){let o=new e5.BasicCommandParser;return o.push(...s),r.parseCommand(o,...a),this._self.execute(c=>c._executeCommand(r,o,this._self._commandOptions,i))}}static#n(e,r){let n=(0,$g.scriptArgumentsPrefix)(e),s=(0,$g.getTransformReply)(e,r);return async function(...i){let a=new e5.BasicCommandParser;return a.pushVariadic(n),e.parseCommand(a,...i),this.execute(o=>o._executeScript(e,a,this._commandOptions,s))}}static#a=new ohr.default;static create(e,r){let n=t.#a.get(e);return n||(n=(0,$g.attachConfig)({BaseClass:t,commands:rhr.NON_STICKY_COMMANDS,createCommand:t.#e,createModuleCommand:t.#t,createFunctionCommand:t.#r,createScriptCommand:t.#n,config:e}),n.prototype.Multi=ahr.default.extend(e),t.#a.set(e,n)),Object.create(new n(e,r))}static#o={minimum:1,maximum:100,acquireTimeout:3e3,cleanupDelay:3e3};#s;#i;#c=new Rse.SinglyLinkedList;get idleClients(){return this._self.#c.length}#l=new Rse.DoublyLinkedList;get clientsInUse(){return this._self.#l.length}get totalClients(){return this._self.#c.length+this._self.#l.length}#h=new Rse.SinglyLinkedList;get tasksQueueLength(){return this._self.#h.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(e,r){if(super(),this.#i={...t.#o,...r},r?.clientSideCache)if(e===void 0&&(e={}),r.clientSideCache instanceof XZe.PooledClientSideCacheProvider)this.#f=e.clientSideCache=r.clientSideCache;else{let n=r.clientSideCache;this.#f=e.clientSideCache=new XZe.BasicPooledClientSideCache(n)}this.#s=nhr.default.factory(e).bind(void 0,e)}_self=this;_commandOptions;withCommandOptions(e){let r=Object.create(this._self);return r._commandOptions=e,r}#m(e,r){let n=Object.create(this._self);return n._commandOptions=Object.create(this._commandOptions??null),n._commandOptions[e]=r,n}withTypeMapping(e){return this._self.#m("typeMapping",e)}withAbortSignal(e){return this._self.#m("abortSignal",e)}asap(){return this._self.#m("asap",!0)}async connect(){if(this._self.#p)return;this._self.#p=!0;let e=[];for(;e.lengththis.emit("error",r)));try{await e.value.connect()}catch(r){throw this._self.#l.remove(e),r}this._self.#_(e)}execute(e){return new Promise((r,n)=>{let s=this._self.#c.shift(),{tail:i}=this._self.#h;if(!s){let o;this._self.#i.acquireTimeout>0&&(o=setTimeout(()=>{this._self.#h.remove(c,i),n(new ihr.TimeoutError("Timeout waiting for a client"))},this._self.#i.acquireTimeout));let c=this._self.#h.push({timeout:o,resolve:r,reject:n,fn:e});this.totalClientsthis.#_(e)):(r(i),this.#_(e))}#_(e){let r=this.#h.shift();if(r){clearTimeout(r.timeout),this.#g(e,r.resolve,r.reject,r.fn);return}this.#l.remove(e),this.#c.push(e.value),this.#v()}cleanupTimeout;#v(){this.totalClients<=this.#i.minimum||(clearTimeout(this.cleanupTimeout),this.cleanupTimeout=setTimeout(()=>this.#y(),this.#i.cleanupDelay))}#y(){let e=Math.min(this.#c.length,this.totalClients-this.#i.minimum);for(let r=0;rn.sendCommand(e,r))}MULTI(){return new this.Multi((e,r)=>this.execute(n=>n._executeMulti(e,r)),e=>this.execute(r=>r._executePipeline(e)),this._commandOptions?.typeMapping)}multi=this.MULTI;async close(){if(!this._self.#d&&this._self.#p){this._self.#d=!0;try{let e=[];for(let r of this._self.#c)e.push(r.close());for(let r of this._self.#l)e.push(r.close());await Promise.all(e),this._self.#f?.onPoolClose(),this._self.#c.reset(),this._self.#l.reset()}catch{}finally{this._self.#d=!1}}}destroy(){for(let e of this._self.#c)e.destroy();this._self.#c.reset();for(let e of this._self.#l)e.destroy();this._self.#f?.onPoolClose(),this._self.#l.reset(),this._self.#p=!1}};f1.RedisClientPool=Nse});var ZZe=_((wcn,chr)=>{chr.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 p1=_(ku=>{"use strict";var uhr=ku&&ku.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),lhr=ku&&ku.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),dhr=ku&&ku.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&uhr(e,t,r);return lhr(e,t),e},g1=ku&&ku.__importDefault||function(t){return t&&t.__esModule?t:{default:t}},Ou;Object.defineProperty(ku,"__esModule",{value:!0});var m1=g1(Nu()),fhr=g1(PZe()),eet=WZe(),phr=g1(jZe()),mhr=require("node:events"),Ug=Zl(),lm=zl(),hhr=require("node:url"),h1=J2(),ghr=g1(Ese()),yhr=g1(HZ()),Ahr=YZe(),xhr=kse(),Fg=we(),tet=d1(),t5=Kl(),bhr=g1(ZL()),_hr=ZZe(),r5=dhr(K2()),n5=class extends mhr.EventEmitter{static#e(e,r){let n=(0,Ug.getTransformReply)(e,r);return async function(...s){let i=new t5.BasicCommandParser;return e.parseCommand(i,...s),this._self._executeCommand(e,i,this._commandOptions,n)}}static#t(e,r){let n=(0,Ug.getTransformReply)(e,r);return async function(...s){let i=new t5.BasicCommandParser;return e.parseCommand(i,...s),this._self._executeCommand(e,i,this._self._commandOptions,n)}}static#r(e,r,n){let s=(0,Ug.functionArgumentsPrefix)(e,r),i=(0,Ug.getTransformReply)(r,n);return async function(...a){let o=new t5.BasicCommandParser;return o.push(...s),r.parseCommand(o,...a),this._self._executeCommand(r,o,this._self._commandOptions,i)}}static#n(e,r){let n=(0,Ug.scriptArgumentsPrefix)(e),s=(0,Ug.getTransformReply)(e,r);return async function(...i){let a=new t5.BasicCommandParser;return a.push(...n),e.parseCommand(a,...i),this._executeScript(e,a,this._commandOptions,s)}}static#a=new bhr.default;static factory(e){let r=Ou.#a.get(e);return r||(r=(0,Ug.attachConfig)({BaseClass:Ou,commands:m1.default,createCommand:Ou.#e,createModuleCommand:Ou.#t,createFunctionCommand:Ou.#r,createScriptCommand:Ou.#n,config:e}),r.prototype.Multi=ghr.default.extend(e),Ou.#a.set(e,r)),n=>Object.create(new r(n))}static create(e){return Ou.factory(e)(e)}static parseOptions(e){if(e?.url){let r=Ou.parseURL(e.url);if(e.socket){if(e.socket.tls!==void 0&&e.socket.tls!==r.socket.tls)throw new TypeError(`tls socket option is set to ${e.socket.tls} which is mismatch with protocol or the URL ${e.url} passed`);r.socket=Object.assign(e.socket,r.socket)}Object.assign(e,r)}return e}static parseURL(e){let{hostname:r,port:n,protocol:s,username:i,password:a,pathname:o}=new hhr.URL(e),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;#h;#p;#d;#f=null;#m=!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.#p!==void 0}get isDirtyWatch(){return this._self.#h!==void 0}setDirtyWatch(e){this._self.#h=e}constructor(e){if(super(),this.#A(e),this.#o=this.#g(e),this.#i=this.#_(),this.#s=this.#S(),this.#o.maintNotifications!=="disabled"&&new r5.default(this.#i,this,this.#o),this.#o.clientSideCache){if(this.#o.clientSideCache instanceof tet.ClientSideCacheProvider)this.#d=this.#o.clientSideCache;else{let r=this.#o.clientSideCache;this.#d=new tet.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 e?.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(e){if(e?.clientSideCache&&e?.RESP!==3)throw new Error("Client Side Caching is only supported with RESP3");if(e?.emitInvalidate&&e?.RESP!==3)throw new Error("emitInvalidate is only supported with RESP3");if(e?.clientSideCache&&e?.emitInvalidate)throw new Error("emitInvalidate is not supported (or necessary) when clientSideCache is enabled");if(e?.maintNotifications&&e?.maintNotifications!=="disabled"&&e?.RESP!==3)throw new Error("Graceful Maintenance is only supported with RESP3")}#g(e={}){if(!e.credentialsProvider&&(e.username||e.password)&&(e.credentialsProvider={type:"async-credentials-provider",credentials:async()=>({username:e.username,password:e.password})}),e.database&&(this._self.#c=e.database),e.commandOptions&&(this._commandOptions=e.commandOptions),e.maintNotifications!=="disabled"&&r5.default.setupDefaultMaintOptions(e),e.url){let r=Ou.parseOptions(e);return r?.database&&(this._self.#c=r.database),r}return e}#_(){return new phr.default(this.#o.RESP??2,this.#o.commandsQueueMaxLength,(e,r)=>this.emit("sharded-channel-moved",e,r))}reAuthenticate=async e=>{this.isPubSubActive&&!this.#o.RESP||await this.sendCommand((0,Fg.parseArgs)(m1.default.AUTH,{username:e.username,password:e.password??""}))};#v(e){return e.subscribe({onNext:r=>{this.reAuthenticate(r).catch(n=>{let s=n instanceof Error?n.message:String(n);e.onReAuthenticationError(new eet.CredentialsError(s))})},onError:r=>{let n=`Error from streaming credentials provider: ${r.message}`;e.onReAuthenticationError(new eet.UnableToObtainNewCredentialsError(n))}})}async#y(e,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:e,asap:r}).catch(a));return n}async#I(){let e=[],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.#v(r);this.#f=a,i.password&&(s.AUTH={username:i.username??"default",password:i.password})}this.#o.name&&(s.SETNAME=this.#o.name),e.push({cmd:(0,Fg.parseArgs)(yhr.default,this.#o.RESP,s)})}else{if(r&&r.type==="async-credentials-provider"){let s=await r.credentials();(s.username||s.password)&&e.push({cmd:(0,Fg.parseArgs)(m1.default.AUTH,{username:s.username,password:s.password??""})})}if(r&&r.type==="streaming-credentials-provider"){let[s,i]=await this.#v(r);this.#f=i,(s.username||s.password)&&e.push({cmd:(0,Fg.parseArgs)(m1.default.AUTH,{username:s.username,password:s.password??""})})}this.#o.name&&e.push({cmd:(0,Fg.parseArgs)(m1.default.CLIENT_SETNAME,this.#o.name)})}this.#c!==0&&e.push({cmd:["SELECT",this.#c.toString()]}),this.#o.readonly&&e.push({cmd:(0,Fg.parseArgs)(m1.default.READONLY)}),this.#o.disableClientInfo||(e.push({cmd:["CLIENT","SETINFO","LIB-VER",_hr.version],errorHandler:()=>{}}),e.push({cmd:["CLIENT","SETINFO","LIB-NAME",this.#o.clientInfoTag?`node-redis(${this.#o.clientInfoTag})`:"node-redis"],errorHandler:()=>{}})),this.#d&&e.push({cmd:this.#d.trackingOn()}),this.#o?.emitInvalidate&&e.push({cmd:["CLIENT","TRACKING","ON"]});let n=await r5.default.getHandshakeCommand(this.#o);return n&&e.push(n),e}#E(e){e.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"))}#S(){let e=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.#y(s,!0)),n.length)return this.#k(),Promise.all(n)},r=new fhr.default(e,this.#o.socket);return this.#E(r),r}#b;#u(){!this.#o.pingInterval||!this.#s.isReady||(clearTimeout(this.#b),this.#b=setTimeout(()=>{this.#s.isReady&&this.sendCommand(["PING"]).then(e=>this.emit("ping-interval",e)).catch(e=>this.emit("error",e)).finally(()=>this.#u())},this.#o.pingInterval))}withCommandOptions(e){let r=Object.create(this._self);return r._commandOptions=e,r}_commandOptionsProxy(e,r){let n=Object.create(this._self);return n._commandOptions=Object.create(this._commandOptions??null),n._commandOptions[e]=r,n}withTypeMapping(e){return this._commandOptionsProxy("typeMapping",e)}withAbortSignal(e){return this._commandOptionsProxy("abortSignal",e)}asap(){return this._commandOptionsProxy("asap",!0)}legacy(){return new Ahr.RedisLegacyClient(this)}createPool(e){return xhr.RedisClientPool.create(this._self.#o,e)}duplicate(e){return new(Object.getPrototypeOf(this)).constructor({...this._self.#o,commandOptions:this._commandOptions,...e})}async connect(){return await this._self.#s.connect(),this}_ejectSocket(){let e=this._self.#s;return this._self.#s=null,e.removeAllListeners(),e}_insertSocket(e){this._self.#s&&this._self._ejectSocket().destroy(),this._self.#s=e,this._self.#E(this._self.#s)}_maintenanceUpdate(e){this._self.#s.setMaintenanceTimeout(e.relaxedSocketTimeout),this._self.#i.setMaintenanceCommandTimeout(e.relaxedCommandTimeout)}_pause(){this._self.#m=!0}_unpause(){this._self.#m=!1,this._self.#N()}_handleSmigrated(e){this._self.emit(r5.SMIGRATED_EVENT,e)}_getQueue(){return this._self.#i}async _executeCommand(e,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&&e.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(e,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]=e.SCRIPT,a=await this.sendCommand(i,n)}return s?s(a,r.preserve,n?.typeMapping):a}sendCommand(e,r){if(this._self.#s.isOpen){if(!this._self.#s.isReady&&this._self.#o.disableOfflineQueue)return Promise.reject(new lm.ClientOfflineError)}else return Promise.reject(new lm.ClientClosedError);let n={...this._self._commandOptions,...r},s=this._self.#i.addCommand(e,n);return this._self.#C(),s}async SELECT(e){await this.sendCommand(["SELECT",e.toString()]),this._self.#c=e}select=this.SELECT;#x(e){return e===void 0?Promise.resolve():(this.#C(),e)}SUBSCRIBE(e,r,n){return this._self.#x(this._self.#i.subscribe(h1.PUBSUB_TYPE.CHANNELS,e,r,n))}subscribe=this.SUBSCRIBE;UNSUBSCRIBE(e,r,n){return this._self.#x(this._self.#i.unsubscribe(h1.PUBSUB_TYPE.CHANNELS,e,r,n))}unsubscribe=this.UNSUBSCRIBE;PSUBSCRIBE(e,r,n){return this._self.#x(this._self.#i.subscribe(h1.PUBSUB_TYPE.PATTERNS,e,r,n))}pSubscribe=this.PSUBSCRIBE;PUNSUBSCRIBE(e,r,n){return this._self.#x(this._self.#i.unsubscribe(h1.PUBSUB_TYPE.PATTERNS,e,r,n))}pUnsubscribe=this.PUNSUBSCRIBE;SSUBSCRIBE(e,r,n){return this._self.#x(this._self.#i.subscribe(h1.PUBSUB_TYPE.SHARDED,e,r,n))}sSubscribe=this.SSUBSCRIBE;SUNSUBSCRIBE(e,r,n){return this._self.#x(this._self.#i.unsubscribe(h1.PUBSUB_TYPE.SHARDED,e,r,n))}sUnsubscribe=this.SUNSUBSCRIBE;async WATCH(e){let r=await this._self.sendCommand((0,Fg.pushVariadicArguments)(["WATCH"],e));return this._self.#p??=this._self.socketEpoch,r}watch=this.WATCH;async UNWATCH(){let e=await this._self.sendCommand(["UNWATCH"]);return this._self.#p=void 0,e}unwatch=this.UNWATCH;getPubSubListeners(e){return this._self.#i.getPubSubListeners(e)}extendPubSubChannelListeners(e,r,n){return this._self.#x(this._self.#i.extendPubSubChannelListeners(e,r,n))}extendPubSubListeners(e,r){return this._self.#x(this._self.#i.extendPubSubListeners(e,r))}#k(){this.#m||this.#s.write(this.#i.commandsToWrite())}#T;#C(){!this.#s.isReady||this.#T||(this.#T=setImmediate(()=>{this.#k(),this.#T=void 0}))}#N(){this.#i.isWaitingToWrite()&&this.#C()}async _executePipeline(e,r){if(!this._self.#s.isOpen)return Promise.reject(new lm.ClientClosedError);let n=Symbol("Pipeline Chain"),s=Promise.all(e.map(({args:a})=>this._self.#i.addCommand(a,{chainId:n,typeMapping:this._commandOptions?.typeMapping})));this._self.#C();let i=await s;return r!==void 0&&(this._self.#c=r),i}async _executeMulti(e,r){let n=this._self.#h;this._self.#h=void 0;let s=this._self.#p;if(this._self.#p=void 0,!this._self.#s.isOpen)throw new lm.ClientClosedError;if(n)throw new lm.WatchError(n);if(s&&s!==this._self.socketEpoch)throw new lm.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 e)o.push(this._self.#i.addCommand(l,{chainId:a,typeMapping:i}));o.push(this._self.#i.addCommand(["EXEC"],{chainId:a})),this._self.#C();let c=await Promise.all(o),u=c[c.length-1];if(u===null)throw new lm.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(e){let r=e?.cursor??"0";do{let n=await this.scan(r,e);r=n.cursor,yield n.keys}while(r!=="0")}async*hScanIterator(e,r){let n=r?.cursor??"0";do{let s=await this.hScan(e,n,r);n=s.cursor,yield s.entries}while(n!=="0")}async*hScanValuesIterator(e,r){let n=r?.cursor??"0";do{let s=await this.hScanNoValues(e,n,r);n=s.cursor,yield s.fields}while(n!=="0")}async*hScanNoValuesIterator(e,r){let n=r?.cursor??"0";do{let s=await this.hScanNoValues(e,n,r);n=s.cursor,yield s.fields}while(n!=="0")}async*sScanIterator(e,r){let n=r?.cursor??"0";do{let s=await this.sScan(e,n,r);n=s.cursor,yield s.members}while(n!=="0")}async*zScanIterator(e,r){let n=r?.cursor??"0";do{let s=await this.zScan(e,n,r);n=s.cursor,yield s.members}while(n!=="0")}async MONITOR(e){let r=this._self.#i.monitor(e,{typeMapping:this._commandOptions?.typeMapping});this._self.#C(),await r,this._self.#l=e}monitor=this.MONITOR;async reset(){let e=Symbol("Reset Chain"),r=[this._self.#i.reset(e)],n=this._self.#o?.database??0;this._self.#f?.dispose(),this._self.#f=null,r.push(...await this._self.#y(e,!1)),this._self.#C(),await Promise.all(r),this._self.#c=n,this._self.#l=void 0,this._self.#h=void 0,this._self.#p=void 0}resetIfDirty(){let e=!1;if(this._self.#c!==(this._self.#o?.database??0)&&(console.warn("Returning a client with a different selected DB"),e=!0),this._self.#l&&(console.warn("Returning a client with active MONITOR"),e=!0),this._self.#i.isPubSubActive&&(console.warn("Returning a client with active PubSub"),e=!0),(this._self.#h||this._self.#p)&&(console.warn("Returning a client with active WATCH"),e=!0),e)return this.reset()}QUIT(){return this._self.#f?.dispose(),this._self.#f=null,this._self.#s.quit(async()=>{clearTimeout(this._self.#b);let e=this._self.#i.addCommand(["QUIT"]);return this._self.#C(),e})}quit=this.QUIT;disconnect(){return Promise.resolve(this.destroy())}close(){return new Promise(e=>{if(clearTimeout(this._self.#b),this._self.#s.close(),this._self.#d?.onClose(),this._self.#i.isEmpty())return this._self.#s.destroySocket(),e();let r=()=>{this._self.#i.isEmpty()&&(this._self.#s.off("data",r),this._self.#s.destroySocket(),e())};this._self.#s.on("data",r),this._self.#f?.dispose(),this._self.#f=null})}destroy(){clearTimeout(this._self.#b),this._self.#i.flushAll(new lm.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()}};Ou=n5;ku.default=n5});var set=_(ed=>{"use strict";var net=ed&&ed.__importDefault||function(t){return t&&t.__esModule?t:{default:t}},Dse;Object.defineProperty(ed,"__esModule",{value:!0});ed.RESUBSCRIBE_LISTENERS_EVENT=void 0;var Ehr=zl(),vhr=net(p1()),jo=J2(),Pse=net(hse()),ret=d1(),go=K2();ed.RESUBSCRIBE_LISTENERS_EVENT="__resubscribeListeners";var s5=class{static#e=16384;#t;#r;#n;slots=new Array(Dse.#e);masters=new Array;replicas=new Array;nodeByAddress=new Map;pubSubNode;clientSideCache;smigratedSeqIdsSeen=new Set;#a=!1;get isOpen(){return this.#a}#o(e){if(e?.clientSideCache&&e?.RESP!==3)throw new Error("Client Side Caching is only supported with RESP3")}constructor(e,r){this.#o(e),this.#t=e,e?.clientSideCache&&(e.clientSideCache instanceof ret.PooledClientSideCacheProvider?this.clientSideCache=e.clientSideCache:this.clientSideCache=new ret.BasicPooledClientSideCache(e.clientSideCache)),this.#r=vhr.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(e){throw this.#a=!1,e}}async#s(){let e=Math.floor(Math.random()*this.#t.rootNodes.length);for(let r=e;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(jo.PUBSUB_TYPE.CHANNELS),o=this.pubSubNode.client.getPubSubListeners(jo.PUBSUB_TYPE.PATTERNS);this.pubSubNode.client.destroy(),(a.size||o.size)&&n.push(this.#S({[jo.PUBSUB_TYPE.CHANNELS]:a,[jo.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 e=>{if((0,go.dbgMaintenance)("[CSlots]: handle smigrated",JSON.stringify(e,null,2)),this.smigratedSeqIdsSeen.has(e.seqId)){(0,go.dbgMaintenance)(`[CSlots]: sequence id ${e.seqId} already seen, abort`);return}this.smigratedSeqIdsSeen.add(e.seqId);for(let r of e.entries){let n=`${r.source.host}:${r.source.port}`,s=this.nodeByAddress.get(n);if((0,go.dbgMaintenance)(`[CSlots]: Looking for sourceAddress=${n}. Available addresses in nodeByAddress: ${Array.from(this.nodeByAddress.keys()).join(", ")}`),!s){(0,go.dbgMaintenance)(`[CSlots]: address ${n} not in 'nodeByAddress', skipping this entry`);continue}if(s.client===void 0){(0,go.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:p}of r.destinations){let m=`${d}:${f}`,h=this.nodeByAddress.get(m);(0,go.dbgMaintenance)(`[CSlots]: Looking for destAddress=${m}. Found in nodeByAddress: ${h?"YES":"NO"}`);let y;if(h){let x=[...new Set(this.slots)].map(S=>`${S.master.host}:${S.master.port}`);(0,go.dbgMaintenance)(`[CSlots]: Searching for shard with host=${d}, port=${f}. Available masters in slots: ${x.join(", ")}`);let A=this.slots.find(S=>S.master.host===d&&S.master.port===f);if(!A)throw(0,go.dbgMaintenance)("Could not find shard"),new Error("Could not find shard");y=A,h.client?._pause(),h.pubSub?.client._pause()}else{let x=[];h=this.#f({host:d,port:f,id:`smigrated-${d}:${f}`},!1,!0,new Set,x),await Promise.all([...x,this.#b(h)]),h.client?._pause(),h.pubSub?.client._pause(),y={master:h}}a=h;let g=new Set;for(let x of p)if(typeof x=="number")this.slots[x]=y,g.add(x),i.add(x);else for(let A=x[0];A<=x[1];A++)this.slots[A]=y,g.add(A),i.add(A);(0,go.dbgMaintenance)(`[CSlots]: Updated slots to point to destination ${h.address}. Sample slots: ${Array.from(p).slice(0,5).join(", ")}${p.length>5?"...":""}`);let b=s.client._getQueue().extractCommandsForSlots(g);h.client?._getQueue().prependCommandsToWrite(b),(0,go.dbgMaintenance)(`[CSlots]: Extracted ${b.length} commands for ${g.size} slots, prepended to ${h.address}`),h.client?._unpause(),h.pubSub?.client._unpause()}(0,go.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(ed.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,go.dbgMaintenance)(`[CSlots]: Moved ${d.length} remaining slotless commands to ${a.address}`)),"pubSub"in s){let f=s.pubSub?.client._getQueue().removeAllPubSubListeners();this.#n(ed.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(jo.PUBSUB_TYPE.CHANNELS),p=this.pubSubNode.client.getPubSubListeners(jo.PUBSUB_TYPE.PATTERNS),m=this.pubSubNode.client;f.size||p.size?await this.#S({[jo.PUBSUB_TYPE.CHANNELS]:f,[jo.PUBSUB_TYPE.PATTERNS]:p}):this.pubSubNode=void 0,m.destroy()}s.client?.destroy(),"pubSub"in s&&s.pubSub?.client.destroy()}}catch(a){(0,go.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#h(e){let r=this.#d(e);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()}}#p(e){switch(typeof this.#t.nodeAddressMap){case"object":return this.#t.nodeAddressMap[e];case"function":return this.#t.nodeAddressMap(e)}}#d(e){if(!this.#t.defaults)return e;let r;return this.#t.defaults.socket?r={...this.#t.defaults.socket,...e?.socket}:r=e?.socket,{...this.#t.defaults,...e,socket:r}}#f(e,r,n,s,i){let a=`${e.host}:${e.port}`,o=this.nodeByAddress.get(a);return o||(o={...e,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}#m(e,r=e.readonly){let n=this.#p(e.address)??{host:e.host,port:e.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(go.SMIGRATED_EVENT,this.#l).on("__MOVED",async o=>{await this.rediscover(a),this.#n(ed.RESUBSCRIBE_LISTENERS_EVENT,o)});return a}#A(e,r){let n=e.client=this.#m(e,r);return e.connectPromise=n.connect().finally(()=>e.connectPromise=void 0)}nodeClient(e){return e.connectPromise?e.connectPromise:e.client?Promise.resolve(e.client):this.#A(e)}#g;async rediscover(e){return this.#g??=this.#_(e).finally(()=>{this.#g=void 0}),this.#g}async#_(e){if(!await this.#c(e.options))return this.#s()}quit(){return this.#y(e=>e.quit())}disconnect(){return this.#y(e=>e.disconnect())}close(){return this.#y(e=>e.close())}destroy(){this.#a=!1;for(let e of this.#v())e.destroy();this.pubSubNode&&(this.pubSubNode.client.destroy(),this.pubSubNode=void 0),this.#i(),this.nodeByAddress.clear(),this.#n("disconnect")}*#v(){for(let e of this.masters)e.client&&(yield e.client),e.pubSub&&(yield e.pubSub.client);for(let e of this.replicas)e.client&&(yield e.client)}async#y(e){this.#a=!1;let r=[];for(let n of this.#v())r.push(e(n));this.pubSubNode&&(r.push(e(this.pubSubNode.client)),this.pubSubNode=void 0),this.#i(),this.nodeByAddress.clear(),await Promise.allSettled(r),this.#n("disconnect")}async getClientAndSlotNumber(e,r){if(!e)return{client:await this.nodeClient(this.getRandomNode())};let n=(0,Pse.default)(e);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 e=Math.floor(Math.random()*(this.masters.length+this.replicas.length));if(e(e&&await Promise.all([i.extendPubSubListeners(jo.PUBSUB_TYPE.CHANNELS,e[jo.PUBSUB_TYPE.CHANNELS]),i.extendPubSubListeners(jo.PUBSUB_TYPE.PATTERNS,e[jo.PUBSUB_TYPE.PATTERNS])]),this.pubSubNode.connectPromise=void 0,i)).catch(i=>{throw this.pubSubNode=void 0,i})},this.pubSubNode.connectPromise}async executeUnsubscribeCommand(e){let r=await this.getPubSubClient();await e(r),r.isPubSubActive||(r.destroy(),this.pubSubNode=void 0)}getShardedPubSubClient(e){let{master:r}=this.slots[(0,Pse.default)(e)];return r.pubSub?r.pubSub.connectPromise??Promise.resolve(r.pubSub.client):this.#b(r)}async#b(e){let r=this.#m(e,!1).on("server-sunsubscribe",async(n,s)=>{try{await this.rediscover(r),await(await this.getShardedPubSubClient(n)).extendPubSubChannelListeners(jo.PUBSUB_TYPE.SHARDED,n,s)}catch(i){this.#n("sharded-shannel-moved-error",i,n,s)}});return e.pubSub={client:r,connectPromise:r.connect().then(n=>(e.pubSub.connectPromise=void 0,n)).catch(n=>{throw e.pubSub=void 0,n})},e.pubSub.connectPromise}async executeShardedUnsubscribeCommand(e,r){let{master:n}=this.slots[(0,Pse.default)(e)];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)}};Dse=s5;ed.default=s5});var iet=_(iT=>{"use strict";var Shr=iT&&iT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(iT,"__esModule",{value:!0});var Ihr=Nu(),Chr=Shr(eT()),y1=Zl(),i5=Kl(),Bse=class t{static#e(e,r){let n=(0,y1.getTransformReply)(e,r);return function(...s){let i=new i5.BasicCommandParser;e.parseCommand(i,...s);let a=i.redisArgs;a.preserve=i.preserve;let o=i.firstKey;return this.addCommand(o,e.IS_READ_ONLY,a,n)}}static#t(e,r){let n=(0,y1.getTransformReply)(e,r);return function(...s){let i=new i5.BasicCommandParser;e.parseCommand(i,...s);let a=i.redisArgs;a.preserve=i.preserve;let o=i.firstKey;return this._self.addCommand(o,e.IS_READ_ONLY,a,n)}}static#r(e,r,n){let s=(0,y1.functionArgumentsPrefix)(e,r),i=(0,y1.getTransformReply)(r,n);return function(...a){let o=new i5.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(e,r){let n=(0,y1.getTransformReply)(e,r);return function(...s){let i=new i5.BasicCommandParser;e.parseCommand(i,...s);let a=i.redisArgs;a.preserve=i.preserve;let o=i.firstKey;return this.#h(o,e.IS_READ_ONLY,e,a,n)}}static extend(e){return(0,y1.attachConfig)({BaseClass:t,commands:Ihr.NON_STICKY_COMMANDS,createCommand:t.#e,createModuleCommand:t.#t,createFunctionCommand:t.#r,createScriptCommand:t.#n,config:e})}#a;#o;#s;#i;#c=!0;constructor(e,r,n,s){this.#a=new Chr.default(s),this.#o=e,this.#s=r,this.#i=n}#l(e,r){this.#i??=e,this.#c&&=r}addCommand(e,r,n,s){return this.#l(e,r),this.#a.addCommand(n,s),this}#h(e,r,n,s,i){return this.#l(e,r),this.#a.addScript(n,s,i),this}async exec(e=!1){return e?this.execAsPipeline():this.#a.transformReplies(await this.#o(this.#i,this.#c,this.#a.queue))}EXEC=this.exec;execTyped(e=!1){return this.exec(e)}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()}};iT.default=Bse});var cet=_(Pu=>{"use strict";var Thr=Pu&&Pu.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),whr=Pu&&Pu.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Rhr=Pu&&Pu.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Thr(e,t,r);return whr(e,t),e},oet=Pu&&Pu.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Pu,"__esModule",{value:!0});var Nhr=Nu(),Ohr=require("node:events"),qg=Zl(),aet=Rhr(set()),khr=oet(iet()),Phr=zl(),a5=Kl(),Dhr=ZJ(),Bhr=oet(ZL()),Lse=class t extends Ohr.EventEmitter{static#e(e,r){let n=(0,qg.getTransformReply)(e,r);return async function(...s){let i=new a5.BasicCommandParser;return e.parseCommand(i,...s),this._self._execute(i.firstKey,e.IS_READ_ONLY,this._commandOptions,(a,o)=>a._executeCommand(e,i,o,n))}}static#t(e,r){let n=(0,qg.getTransformReply)(e,r);return async function(...s){let i=new a5.BasicCommandParser;return e.parseCommand(i,...s),this._self._execute(i.firstKey,e.IS_READ_ONLY,this._self._commandOptions,(a,o)=>a._executeCommand(e,i,o,n))}}static#r(e,r,n){let s=(0,qg.functionArgumentsPrefix)(e,r),i=(0,qg.getTransformReply)(r,n);return async function(...a){let o=new a5.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(e,r){let n=(0,qg.scriptArgumentsPrefix)(e),s=(0,qg.getTransformReply)(e,r);return async function(...i){let a=new a5.BasicCommandParser;return a.push(...n),e.parseCommand(a,...i),this._self._execute(a.firstKey,e.IS_READ_ONLY,this._commandOptions,(o,c)=>o._executeScript(e,a,c,s))}}static#a=new Bhr.default;static factory(e){let r=t.#a.get(e);return r||(r=(0,qg.attachConfig)({BaseClass:t,commands:Nhr.NON_STICKY_COMMANDS,createCommand:t.#e,createModuleCommand:t.#t,createFunctionCommand:t.#r,createScriptCommand:t.#n,config:e}),r.prototype.Multi=khr.default.extend(e),t.#a.set(e,r)),n=>Object.create(new r(n))}static create(e){return t.factory(e)(e)}_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(e){super(),this._options=e,this._slots=new aet.default(e,this.emit.bind(this)),this.on(aet.RESUBSCRIBE_LISTENERS_EVENT,this.resubscribeAllPubSubListeners.bind(this)),e?.commandOptions&&(this._commandOptions=e.commandOptions)}duplicate(e){return new(Object.getPrototypeOf(this)).constructor({...this._self._options,commandOptions:this._commandOptions,...e})}async connect(){return await this._self._slots.connect(),this}withCommandOptions(e){let r=Object.create(this);return r._commandOptions=e,r}_commandOptionsProxy(e,r){let n=Object.create(this);return n._commandOptions=Object.create(this._commandOptions??null),n._commandOptions[e]=r,n}withTypeMapping(e){return this._commandOptionsProxy("typeMapping",e)}_handleAsk(e){return async(r,n)=>{let s=Symbol("asking chain"),i=n?{...n}:{};return i.chainId=s,(await Promise.all([r.sendCommand([Dhr.ASKING_CMD],{chainId:s}),e(r,i)]))[1]}}async _execute(e,r,n,s){let i=this._options.maxCommandRedirections??16,{client:a,slotNumber:o}=await this._slots.getClientAndSlotNumber(e,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(e,r);a=d.client,o=d.slotNumber;continue}throw l}}async sendCommand(e,r,n,s){let i={...this._self._commandOptions,...s};return this._self._execute(e,r,i,(a,o)=>a.sendCommand(n,o))}MULTI(e){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)},e,this._commandOptions?.typeMapping)}multi=this.MULTI;async SUBSCRIBE(e,r,n){return(await this._self._slots.getPubSubClient()).SUBSCRIBE(e,r,n)}subscribe=this.SUBSCRIBE;async UNSUBSCRIBE(e,r,n){return this._self._slots.executeUnsubscribeCommand(s=>s.UNSUBSCRIBE(e,r,n))}unsubscribe=this.UNSUBSCRIBE;async PSUBSCRIBE(e,r,n){return(await this._self._slots.getPubSubClient()).PSUBSCRIBE(e,r,n)}pSubscribe=this.PSUBSCRIBE;async PUNSUBSCRIBE(e,r,n){return this._self._slots.executeUnsubscribeCommand(s=>s.PUNSUBSCRIBE(e,r,n))}pUnsubscribe=this.PUNSUBSCRIBE;async SSUBSCRIBE(e,r,n){let s=this._self._options.maxCommandRedirections??16,i=Array.isArray(e)?e[0]:e,a=await this._self._slots.getShardedPubSubClient(i);for(let o=0;;o++)try{return await a.SSUBSCRIBE(e,r,n)}catch(c){if(++o>s||!(c instanceof Phr.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(e,r,n){return this._self._slots.executeShardedUnsubscribeCommand(Array.isArray(e)?e[0]:e,s=>s.SUNSUBSCRIBE(e,r,n))}resubscribeAllPubSubListeners(e){if(e.CHANNELS)for(let[r,n]of e.CHANNELS)n.buffers.forEach(s=>{this.subscribe(r,s,!0)}),n.strings.forEach(s=>{this.subscribe(r,s)});if(e.PATTERNS)for(let[r,n]of e.PATTERNS)n.buffers.forEach(s=>{this.pSubscribe(r,s,!0)}),n.strings.forEach(s=>{this.pSubscribe(r,s)});if(e.SHARDED)for(let[r,n]of e.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(e){return this._self._slots.nodeClient(e)}getRandomNode(){return this._self._slots.getRandomNode()}getSlotRandomNode(e){return this._self._slots.getSlotRandomNode(e)}getMasters(){return this.masters}getSlotMaster(e){return this.slots[e].master}};Pu.default=Lse});var det=_(ci=>{"use strict";Object.defineProperty(ci,"__esModule",{value:!0});ci.getMappedNode=ci.createScriptCommand=ci.createModuleCommand=ci.createFunctionCommand=ci.createCommand=ci.clientSocketToNode=ci.createNodeList=ci.parseNode=void 0;var o5=Kl(),A1=Zl();function uet(t){if(!(t.flags.includes("s_down")||t.flags.includes("disconnected")||t.flags.includes("failover_in_progress")))return{host:t.ip,port:Number(t.port)}}ci.parseNode=uet;function Lhr(t){var e=[];for(let r of t){let n=uet(r);n!==void 0&&e.push(n)}return e}ci.createNodeList=Lhr;function Mhr(t){let e=t;return{host:e.host,port:e.port}}ci.clientSocketToNode=Mhr;function Whr(t,e){let r=(0,A1.getTransformReply)(t,e);return async function(...n){let s=new o5.BasicCommandParser;return t.parseCommand(s,...n),this._self._execute(t.IS_READ_ONLY,i=>i._executeCommand(t,s,this.commandOptions,r))}}ci.createCommand=Whr;function $hr(t,e,r){let n=(0,A1.functionArgumentsPrefix)(t,e),s=(0,A1.getTransformReply)(e,r);return async function(...i){let a=new o5.BasicCommandParser;return a.push(...n),e.parseCommand(a,...i),this._self._execute(e.IS_READ_ONLY,o=>o._executeCommand(e,a,this._self.commandOptions,s))}}ci.createFunctionCommand=$hr;function Uhr(t,e){let r=(0,A1.getTransformReply)(t,e);return async function(...n){let s=new o5.BasicCommandParser;return t.parseCommand(s,...n),this._self._execute(t.IS_READ_ONLY,i=>i._executeCommand(t,s,this._self.commandOptions,r))}}ci.createModuleCommand=Uhr;function Fhr(t,e){let r=(0,A1.scriptArgumentsPrefix)(t),n=(0,A1.getTransformReply)(t,e);return async function(...s){let i=new o5.BasicCommandParser;return i.push(...r),t.parseCommand(i,...s),this._self._execute(t.IS_READ_ONLY,a=>a._executeScript(t,i,this.commandOptions,n))}}ci.createScriptCommand=Fhr;function qhr(t,e,r){if(r===void 0)return{host:t,port:e};let n=`${t}:${e}`;switch(typeof r){case"object":return r[n]??{host:t,port:e};case"function":return r(n)??{host:t,port:e}}}ci.getMappedNode=qhr});var pet=_(aT=>{"use strict";var jhr=aT&&aT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(aT,"__esModule",{value:!0});var Qhr=Nu(),fet=jhr(eT()),x1=Zl(),c5=Kl(),Mse=class t{static _createCommand(e,r){let n=(0,x1.getTransformReply)(e,r);return function(...s){let i=new c5.BasicCommandParser;e.parseCommand(i,...s);let a=i.redisArgs;return a.preserve=i.preserve,this.addCommand(e.IS_READ_ONLY,a,n)}}static _createModuleCommand(e,r){let n=(0,x1.getTransformReply)(e,r);return function(...s){let i=new c5.BasicCommandParser;e.parseCommand(i,...s);let a=i.redisArgs;return a.preserve=i.preserve,this._self.addCommand(e.IS_READ_ONLY,a,n)}}static _createFunctionCommand(e,r,n){let s=(0,x1.functionArgumentsPrefix)(e,r),i=(0,x1.getTransformReply)(r,n);return function(...a){let o=new c5.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(e,r){let n=(0,x1.getTransformReply)(e,r);return function(...s){let i=new c5.BasicCommandParser;e.parseCommand(i,...s);let a=i.redisArgs;return a.preserve=i.preserve,this.#a(e.IS_READ_ONLY,e,a,n)}}static extend(e){return(0,x1.attachConfig)({BaseClass:t,commands:Qhr.NON_STICKY_COMMANDS,createCommand:t._createCommand,createModuleCommand:t._createModuleCommand,createFunctionCommand:t._createFunctionCommand,createScriptCommand:t._createScriptCommand,config:e})}#e=new fet.default;#t;#r=!0;constructor(e,r){this.#e=new fet.default(r),this.#t=e}#n(e){this.#r&&=e}addCommand(e,r,n){return this.#n(e),this.#e.addCommand(r,n),this}#a(e,r,n,s){return this.#n(e),this.#e.addScript(r,n,s),this}async exec(e=!1){return e?this.execAsPipeline():this.#e.transformReplies(await this.#t._executeMulti(this.#r,this.#e.queue))}EXEC=this.exec;execTyped(e=!1){return this.exec(e)}async execAsPipeline(){return this.#e.queue.length===0?[]:this.#e.transformReplies(await this.#t._executePipeline(this.#r,this.#e.queue))}execAsPipelineTyped(){return this.execAsPipeline()}};aT.default=Mse});var get=_(b1=>{"use strict";var het=b1&&b1.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(b1,"__esModule",{value:!0});b1.PubSubProxy=void 0;var Hhr=het(require("node:events")),dm=J2(),met=het(p1()),Wse=class extends Hhr.default{#e;#t;#r;#n;#a;constructor(e,r){super(),this.#e=e,this.#t=r}#o(){if(this.#r===void 0)throw new Error("pubSubProxy: didn't define node to do pubsub against");return new met.default({...this.#e,socket:{...this.#e.socket,host:this.#r.host,port:this.#r.port}})}async#s(e=!1){let r=this.#o().on("error",this.#t),n=r.connect().then(async s=>this.#n?.client!==s?(s.destroy(),this.#n?.connectPromise):(e&&this.#a&&await Promise.all([s.extendPubSubListeners(dm.PUBSUB_TYPE.CHANNELS,this.#a[dm.PUBSUB_TYPE.CHANNELS]),s.extendPubSubListeners(dm.PUBSUB_TYPE.PATTERNS,this.#a[dm.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(e){this.#r=e,this.#n&&(this.#n.connectPromise===void 0&&(this.#a={[dm.PUBSUB_TYPE.CHANNELS]:this.#n.client.getPubSubListeners(dm.PUBSUB_TYPE.CHANNELS),[dm.PUBSUB_TYPE.PATTERNS]:this.#n.client.getPubSubListeners(dm.PUBSUB_TYPE.PATTERNS)},this.#n.client.destroy()),await this.#s(!0))}#c(e){let r=this.#i();return r instanceof met.default?e(r):r.then(n=>{if(n!==void 0)return e(n)}).catch(n=>{throw this.#n?.client.isPubSubActive&&(this.#n.client.destroy(),this.#n=void 0),n})}subscribe(e,r,n){return this.#c(s=>s.SUBSCRIBE(e,r,n))}#l(e){return this.#c(async r=>{let n=await e(r);return r.isPubSubActive||(r.destroy(),this.#n=void 0),n})}async unsubscribe(e,r,n){return this.#l(s=>s.UNSUBSCRIBE(e,r,n))}async pSubscribe(e,r,n){return this.#c(s=>s.PSUBSCRIBE(e,r,n))}async pUnsubscribe(e,r,n){return this.#l(s=>s.PUNSUBSCRIBE(e,r,n))}destroy(){this.#a=void 0,this.#n!==void 0&&(this.#n.connectPromise||this.#n.client.destroy(),this.#n=void 0)}};b1.PubSubProxy=Wse});var yet=_($se=>{"use strict";Object.defineProperty($se,"__esModule",{value:!0});var Ghr=we();$se.default={parseCommand(t,e){t.push("SENTINEL","MASTER",e)},transformReply:{2:Ghr.transformTuplesReply,3:void 0}}});var Aet=_(Use=>{"use strict";Object.defineProperty(Use,"__esModule",{value:!0});Use.default={parseCommand(t,e,r,n,s){t.push("SENTINEL","MONITOR",e,r,n,s)},transformReply:void 0}});var xet=_(Fse=>{"use strict";Object.defineProperty(Fse,"__esModule",{value:!0});var zhr=we();Fse.default={parseCommand(t,e){t.push("SENTINEL","REPLICAS",e)},transformReply:{2:(t,e,r)=>{let n=t,s=[];return n.reduce((i,a)=>(i.push((0,zhr.transformTuplesReply)(a,void 0,r)),i),s)},3:void 0}}});var bet=_(qse=>{"use strict";Object.defineProperty(qse,"__esModule",{value:!0});var Khr=we();qse.default={parseCommand(t,e){t.push("SENTINEL","SENTINELS",e)},transformReply:{2:(t,e,r)=>{let n=t,s=[];return n.reduce((i,a)=>(i.push((0,Khr.transformTuplesReply)(a,void 0,r)),i),s)},3:void 0}}});var _et=_(jse=>{"use strict";Object.defineProperty(jse,"__esModule",{value:!0});jse.default={parseCommand(t,e,r){t.push("SENTINEL","SET",e);for(let n of r)t.push(n.option,n.value)},transformReply:void 0}});var wet=_(oT=>{"use strict";var cT=oT&&oT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(oT,"__esModule",{value:!0});var Eet=cT(yet()),vet=cT(Aet()),Iet=cT(xet()),Cet=cT(bet()),Tet=cT(_et());oT.default={SENTINEL_SENTINELS:Cet.default,sentinelSentinels:Cet.default,SENTINEL_MASTER:Eet.default,sentinelMaster:Eet.default,SENTINEL_REPLICAS:Iet.default,sentinelReplicas:Iet.default,SENTINEL_MONITOR:vet.default,sentinelMonitor:vet.default,SENTINEL_SET:Tet.default,sentinelSet:Tet.default}});var Ret=_(uT=>{"use strict";var Vhr=uT&&uT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(uT,"__esModule",{value:!0});var Yhr=Vhr(wet());uT.default={sentinel:Yhr.default}});var Oet=_(u5=>{"use strict";Object.defineProperty(u5,"__esModule",{value:!0});u5.WaitQueue=void 0;var Net=QL(),Qse=class{#e=new Net.SinglyLinkedList;#t=new Net.SinglyLinkedList;push(e){let r=this.#t.shift();if(r!==void 0){r(e);return}this.#e.push(e)}shift(){return this.#e.shift()}wait(){return new Promise(e=>this.#t.push(e))}};u5.WaitQueue=Qse});var Let=_(Qf=>{"use strict";var Kse=Qf&&Qf.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Qf,"__esModule",{value:!0});Qf.RedisSentinelFactory=Qf.RedisSentinelClient=void 0;var Vse=require("node:events"),_1=Kse(p1()),Pet=Zl(),Det=Nu(),Fn=det(),Bet=Kse(pet()),Jhr=get(),Xhr=require("node:timers/promises"),l5=Kse(Ret()),Zhr=Oet(),ket=d1(),lT=class t{#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(e,r,n){this._self=this,this.#t=e,this.#e=r,this.#r=n}static factory(e){let r=(0,Pet.attachConfig)({BaseClass:t,commands:Det.NON_STICKY_COMMANDS,createCommand:Fn.createCommand,createModuleCommand:Fn.createModuleCommand,createFunctionCommand:Fn.createFunctionCommand,createScriptCommand:Fn.createScriptCommand,config:e});return r.prototype.Multi=Bet.default.extend(e),(n,s,i)=>Object.create(new r(n,s,i))}static create(e,r,n,s){return t.factory(e)(r,n,s)}withCommandOptions(e){let r=Object.create(this);return r._commandOptions=e,r}_commandOptionsProxy(e,r){let n=Object.create(this);return n._commandOptions=Object.create(this._self.#r??null),n._commandOptions[e]=r,n}withTypeMapping(e){return this._commandOptionsProxy("typeMapping",e)}async _execute(e,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(e,r,n){return this._execute(e,s=>s.sendCommand(r,n))}async _executePipeline(e,r){return this._execute(e,n=>n._executePipeline(r))}async _executeMulti(e,r){return this._execute(e,n=>n._executeMulti(r))}MULTI(){return new this.Multi(this)}multi=this.MULTI;WATCH(e){if(this._self.#e===void 0)throw new Error("Attempted execution on released RedisSentinelClient lease");return this._execute(!1,r=>r.watch(e))}watch=this.WATCH;UNWATCH(){if(this._self.#e===void 0)throw new Error("Attempted execution on released RedisSentinelClient lease");return this._execute(!1,e=>e.unwatch())}unwatch=this.UNWATCH;release(){if(this._self.#e===void 0)throw new Error("RedisSentinelClient lease already released");let e=this._self.#t.releaseClientLease(this._self.#e);return this._self.#e=void 0,e}};Qf.RedisSentinelClient=lT;var Hse=class t extends Vse.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(e){super(),this._self=this,this.#t=e,e.commandOptions&&(this.#r=e.commandOptions),this.#e=new Gse(e),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(e){let r=(0,Pet.attachConfig)({BaseClass:t,commands:Det.NON_STICKY_COMMANDS,createCommand:Fn.createCommand,createModuleCommand:Fn.createModuleCommand,createFunctionCommand:Fn.createFunctionCommand,createScriptCommand:Fn.createScriptCommand,config:e});return r.prototype.Multi=Bet.default.extend(e),n=>Object.create(new r(n))}static create(e){return t.factory(e)(e)}withCommandOptions(e){let r=Object.create(this);return r._commandOptions=e,r}_commandOptionsProxy(e,r){let n=Object.create(this);return n._self.#r={...this._self.#r||{},[e]:r},n}withTypeMapping(e){return this._commandOptionsProxy("typeMapping",e)}async connect(){return await this._self.#e.connect(),this._self.#t.reserveClient&&(this._self.#a=await this._self.#e.getClientLease()),this}async _execute(e,r){let n;(!e||!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(e){let r=await this._self.#e.getClientLease();try{return await e(lT.create(this._self.#t,this._self.#e,r,this._self.#r))}finally{let n=this._self.#e.releaseClientLease(r);n&&await n}}async sendCommand(e,r,n){return this._execute(e,s=>s.sendCommand(r,n))}async _executePipeline(e,r){return this._execute(e,n=>n._executePipeline(r))}async _executeMulti(e,r){return this._execute(e,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(e,r,n){return this._self.#e.subscribe(e,r,n)}subscribe=this.SUBSCRIBE;async UNSUBSCRIBE(e,r,n){return this._self.#e.unsubscribe(e,r,n)}unsubscribe=this.UNSUBSCRIBE;async PSUBSCRIBE(e,r,n){return this._self.#e.pSubscribe(e,r,n)}pSubscribe=this.PSUBSCRIBE;async PUNSUBSCRIBE(e,r,n){return this._self.#e.pUnsubscribe(e,r,n)}pUnsubscribe=this.PUNSUBSCRIBE;async acquire(){let e=await this._self.#e.getClientLease();return lT.create(this._self.#t,this._self.#e,e,this._self.#r)}getSentinelNode(){return this._self.#e.getSentinelNode()}getMasterNode(){return this._self.#e.getMasterNode()}getReplicaNodes(){return this._self.#e.getReplicaNodes()}setTracer(e){e?this._self.#n=r=>{e.push(r)}:this._self.#n=()=>{},this._self.#e.setTracer(e)}};Qf.default=Hse;var Gse=class extends Vse.EventEmitter{#e=!1;get isOpen(){return this.#e}#t=!1;get isReady(){return this.#t}#r;#n;#a;#o;#s;#i;#c;#l=!1;#h=0;#p;#d;#f=[];#m;#A;#g=[];#_=0;#v;get useReplicas(){return this.#v>0}#y;#I;#E;#S;#b=!1;#u=()=>{};#x;get clientSideCache(){return this.#x}#k(e){if(e?.clientSideCache&&e?.RESP!==3)throw new Error("Client Side Caching is only supported with RESP3")}constructor(e){if(super(),this.#k(e),this.#r=e.name,this.#c=e.RESP,this.#p=Array.from(e.sentinelRootNodes),this.#I=e.maxCommandRediscovers??16,this.#A=e.masterPoolSize??1,this.#v=e.replicaPoolSize??0,this.#o=e.nodeAddressMap,this.#s=e.scanInterval??0,this.#i=e.passthroughClientErrorEvents??!1,this.#n=e.nodeClientOptions?{...e.nodeClientOptions}:{},this.#n.url!==void 0)throw new Error("invalid nodeClientOptions for Sentinel");if(e.clientSideCache)if(e.clientSideCache instanceof ket.PooledClientSideCacheProvider)this.#x=this.#n.clientSideCache=e.clientSideCache;else{let r=e.clientSideCache;this.#x=this.#n.clientSideCache=new ket.BasicPooledClientSideCache(r)}if(this.#a=e.sentinelClientOptions?Object.assign({},e.sentinelClientOptions):{},this.#a.modules=l5.default,this.#a.url!==void 0)throw new Error("invalid sentinelClientOptions for Sentinel");this.#m=new Zhr.WaitQueue;for(let r=0;rthis.emit("error",r))}#T(e,r,n){let s=(0,Fn.getMappedNode)(e.host,e.port,this.#o);return _1.default.create({RESP:this.#c,...r,socket:{...r.socket,host:s.host,port:s.port,...n!==void 0&&{reconnectStrategy:n}}})}getClientLease(){let e=this.#m.shift();return e!==void 0?Promise.resolve({id:e}):this.#m.wait().then(r=>({id:r}))}releaseClientLease(e){let r=this.#f[e.id];if(r!==void 0){let n=r.resetIfDirty();if(n)return n.then(()=>this.#m.push(e.id))}this.#m.push(e.id)}async connect(){if(this.#e)throw new Error("already attempting to open");try{this.#e=!0,this.#y=this.#C(),await this.#y,this.#t=!0}finally{this.#y=void 0,this.#s>0&&(this.#S=setInterval(this.#O.bind(this),this.#s))}}async#C(){let e=0;for(;;){if(this.#u("starting connect loop"),e+=1,this.#b){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&&e>this.#I)throw r;r.message!=="no valid master node"&&console.log(r),await(0,Xhr.setTimeout)(1e3)}finally{this.#u("finished connect")}}}async execute(e,r){let n=0;for(;;){this.#y!==void 0&&await this.#y;let s=this.#R(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 e(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(e){return await e.pSubscribe(["switch-master","[-+]sdown","+slave","+sentinel","[-+]odown","+slave-reconf-done"],(r,n)=>{this.#M(n,r)},!0),e}async#M(e,r){this.#u("pubsub control channel message on "+e),this.#O()}#R(e){if(e!==void 0)return this.#f[e.id];if(this.#_>=this.#g.length&&(this.#_=0),this.#g.length==0)throw new Error("no replicas available for read");return this.#g[this.#_++]}async#O(){if(!(this.#t==!1||this.#b==!0)){if(this.#y!==void 0)return this.#l=!0,await this.#y;try{return this.#y=this.#C(),await this.#y}finally{this.#u("finished reconfgure"),this.#y=void 0}}}#P(e){let r=this.#p.findIndex(n=>n.host===e.host&&n.port===e.port);r!==-1&&this.#p.splice(r,1),this.#O()}async close(){this.#b=!0,this.#y!=null&&await this.#y,this.#t=!1,this.#x?.onPoolClose(),this.#S&&(clearInterval(this.#S),this.#S=void 0);let e=[];this.#d!==void 0&&(this.#d.isOpen&&e.push(this.#d.close()),this.#d=void 0);for(let r of this.#f)r.isOpen&&e.push(r.close());this.#f=[];for(let r of this.#g)r.isOpen&&e.push(r.close());this.#g=[],await Promise.all(e),this.#E.destroy(),this.#e=!1}async destroy(){this.#b=!0,this.#y!=null&&await this.#y,this.#t=!1,this.#x?.onPoolClose(),this.#S&&(clearInterval(this.#S),this.#S=void 0),this.#d!==void 0&&(this.#d.isOpen&&this.#d.destroy(),this.#d=void 0);for(let e of this.#f)e.isOpen&&e.destroy();this.#f=[];for(let e of this.#g)e.isOpen&&e.destroy();this.#g=[],this.#E.destroy(),this.#e=!1,this.#b=!1}async subscribe(e,r,n){return this.#E.subscribe(e,r,n)}async unsubscribe(e,r,n){return this.#E.unsubscribe(e,r,n)}async pSubscribe(e,r,n){return this.#E.pSubscribe(e,r,n)}async pUnsubscribe(e,r,n){return this.#E.pUnsubscribe(e,r,n)}async observe(){for(let e of this.#p){let r;try{this.#u(`observe: trying to connect to sentinel: ${e.host}:${e.port}`),r=this.#T(e,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:e,sentinelData:n,masterData:s,replicaData:i,currentMaster:this.getMasterNode(),currentReplicas:this.getReplicaNodes(),currentSentinel:this.getSentinelNode(),replicaPoolSize:this.#v,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(e){let r=(0,Fn.parseNode)(e.masterData);if(r===void 0)throw this.#u(`analyze: no valid master node because ${e.masterData.flags}`),new Error("no valid master node");r.host===e.currentMaster?.host&&r.port===e.currentMaster?.port?(this.#u(`analyze: master node hasn't changed from ${e.currentMaster?.host}:${e.currentMaster?.port}`),r=void 0):this.#u(`analyze: master node has changed to ${r.host}:${r.port} from ${e.currentMaster?.host}:${e.currentMaster?.port}`);let n=e.sentinelConnected;n.host===e.currentSentinel?.host&&n.port===e.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(e.useReplicas){let u=(0,Fn.createNodeList)(e.replicaData);for(let l of u)a.add(JSON.stringify(l));for(let[l,d]of e.currentReplicas)a.has(JSON.stringify(l))?(o.add(JSON.stringify(l)),d!=e.replicaPoolSize&&(i.set(l,e.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,e.replicaPoolSize),this.#u(`analyze: adding ${l.host}:${l.port} to replicsToOpen`))}return{sentinelList:[e.sentinelConnected].concat((0,Fn.createNodeList)(e.sentinelData)),epoch:Number(e.masterData["config-epoch"]),sentinelToOpen:n,masterToOpen:r,replicasToClose:s,replicasToOpen:i}}async transform(e){this.#u("transform: enter");let r=[];if(e.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 ${e.sentinelToOpen.host}:${e.sentinelToOpen.port}`);let a=e.sentinelToOpen,o=this.#T(e.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,Fn.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 ${e.sentinelToOpen.host}:${e.sentinelToOpen.port}`);let u={type:"SENTINEL_CHANGE",node:e.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(e.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 p={type:"MASTER",node:(0,Fn.clientSocketToNode)(d.options.socket),error:f};this.emit("client-error",p)}),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 ${e.masterToOpen.host}:${e.masterToOpen.port}`)}this.#u("transform: adding promise to change #pubSubProxy node"),a.push(this.#E.changeNode(e.masterToOpen)),r.push(...a);let c={type:"MASTER_CHANGE",node:e.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.#h++}let n=new Set;for(let a of e.replicasToClose){let o=JSON.stringify(a);n.add(o)}let s=[],i=new Set;for(let a of this.#g){let o=(0,Fn.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,e.replicasToOpen.size!=0)for(let[a,o]of e.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,Fn.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(e.sentinelList.length!=this.#p.length){this.#p=e.sentinelList;let a={type:"SENTINE_LIST_CHANGE",size:e.sentinelList.length};this.emit("topology-change",a)}await Promise.all(r),this.#u("transform: exit")}getMasterNode(){if(this.#f.length!=0){for(let e of this.#f)if(e.isReady)return(0,Fn.clientSocketToNode)(e.options.socket)}}getSentinelNode(){if(this.#d!==void 0)return(0,Fn.clientSocketToNode)(this.#d.options.socket)}getReplicaNodes(){let e=new Map,r=new Map;for(let n of this.#g){let s=(0,Fn.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)e.set(JSON.parse(n),s);return e}setTracer(e){e?this.#u=r=>{e.push(r)}:this.#u=()=>{}}},zse=class extends Vse.EventEmitter{options;#e;#t=-1;constructor(e){super(),this.options=e,this.#e=e.sentinelRootNodes}async updateSentinelRootNodes(){for(let e of this.#e){let r=_1.default.create({...this.options.sentinelClientOptions,socket:{...this.options.sentinelClientOptions?.socket,host:e.host,port:e.port,reconnectStrategy:!1},modules:l5.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=[e].concat((0,Fn.createNodeList)(n));return}finally{r.destroy()}}throw new Error("Couldn't connect to any sentinel node")}async getMasterNode(){let e=!1;for(let r of this.#e){let n=_1.default.create({...this.options.sentinelClientOptions,socket:{...this.options.sentinelClientOptions?.socket,host:r.host,port:r.port,reconnectStrategy:!1},modules:l5.default}).on("error",s=>this.emit(`getMasterNode: ${s}`));try{await n.connect()}catch{n.isOpen&&n.destroy();continue}e=!0;try{let s=await n.sentinel.sentinelMaster(this.options.name),i=(0,Fn.parseNode)(s);if(i===void 0)continue;return i}finally{n.destroy()}}throw e?new Error("Master Node Not Enumerated"):new Error("couldn't connect to any sentinels")}async getMasterClient(){let e=await this.getMasterNode(),r=(0,Fn.getMappedNode)(e.host,e.port,this.options.nodeAddressMap);return _1.default.create({...this.options.nodeClientOptions,socket:{...this.options.nodeClientOptions?.socket,host:r.host,port:r.port}})}async getReplicaNodes(){let e=!1;for(let r of this.#e){let n=_1.default.create({...this.options.sentinelClientOptions,socket:{...this.options.sentinelClientOptions?.socket,host:r.host,port:r.port,reconnectStrategy:!1},modules:l5.default}).on("error",s=>this.emit(`getReplicaNodes: ${s}`));try{await n.connect()}catch{n.isOpen&&n.destroy();continue}e=!0;try{let s=await n.sentinel.sentinelReplicas(this.options.name),i=(0,Fn.createNodeList)(s);if(i.length==0)continue;return i}finally{n.destroy()}}throw e?new Error("No Replicas Nodes Enumerated"):new Error("couldn't connect to any sentinels")}async getReplicaClient(){let e=await this.getReplicaNodes();if(e.length==0)throw new Error("no available replicas");this.#t++,this.#t>=e.length&&(this.#t=0);let r=e[this.#t],n=(0,Fn.getMappedNode)(r.host,r.port,this.options.nodeAddressMap);return _1.default.create({...this.options.nodeClientOptions,socket:{...this.options.nodeClientOptions?.socket,host:n.host,port:n.port}})}};Qf.RedisSentinelFactory=zse});var fT=_(Kt=>{"use strict";var egr=Kt&&Kt.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),tgr=Kt&&Kt.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&egr(e,t,r)},Yse=Kt&&Kt.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Kt,"__esModule",{value:!0});Kt.BasicPooledClientSideCache=Kt.BasicClientSideCache=Kt.REDIS_FLUSH_MODES=Kt.COMMAND_LIST_FILTER_BY=Kt.CLUSTER_SLOT_STATES=Kt.FAILOVER_MODES=Kt.CLIENT_KILL_FILTERS=Kt.GEO_REPLY_WITH=Kt.createSentinel=Kt.createCluster=Kt.createClientPool=Kt.createClient=Kt.digest=Kt.defineScript=Kt.VerbatimString=Kt.RESP_TYPES=void 0;var rgr=OL();Object.defineProperty(Kt,"RESP_TYPES",{enumerable:!0,get:function(){return rgr.RESP_TYPES}});var ngr=gJ();Object.defineProperty(Kt,"VerbatimString",{enumerable:!0,get:function(){return ngr.VerbatimString}});var sgr=cFe();Object.defineProperty(Kt,"defineScript",{enumerable:!0,get:function(){return sgr.defineScript}});var igr=uFe();Object.defineProperty(Kt,"digest",{enumerable:!0,get:function(){return igr.digest}});tgr(zl(),Kt);var agr=Yse(p1());Kt.createClient=agr.default.create;var ogr=kse();Kt.createClientPool=ogr.RedisClientPool.create;var cgr=Yse(cet());Kt.createCluster=cgr.default.create;var ugr=Yse(Let());Kt.createSentinel=ugr.default.create;var lgr=s2();Object.defineProperty(Kt,"GEO_REPLY_WITH",{enumerable:!0,get:function(){return lgr.GEO_REPLY_WITH}});var dT=Nu();Object.defineProperty(Kt,"CLIENT_KILL_FILTERS",{enumerable:!0,get:function(){return dT.CLIENT_KILL_FILTERS}});Object.defineProperty(Kt,"FAILOVER_MODES",{enumerable:!0,get:function(){return dT.FAILOVER_MODES}});Object.defineProperty(Kt,"CLUSTER_SLOT_STATES",{enumerable:!0,get:function(){return dT.CLUSTER_SLOT_STATES}});Object.defineProperty(Kt,"COMMAND_LIST_FILTER_BY",{enumerable:!0,get:function(){return dT.COMMAND_LIST_FILTER_BY}});Object.defineProperty(Kt,"REDIS_FLUSH_MODES",{enumerable:!0,get:function(){return dT.REDIS_FLUSH_MODES}});var Met=d1();Object.defineProperty(Kt,"BasicClientSideCache",{enumerable:!0,get:function(){return Met.BasicClientSideCache}});Object.defineProperty(Kt,"BasicPooledClientSideCache",{enumerable:!0,get:function(){return Met.BasicPooledClientSideCache}})});var Wet=_(Jse=>{"use strict";Object.defineProperty(Jse,"__esModule",{value:!0});var dgr=we();Jse.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("BF.ADD"),t.pushKey(e),t.push(r)},transformReply:dgr.transformBooleanReply}});var $et=_(Xse=>{"use strict";Object.defineProperty(Xse,"__esModule",{value:!0});Xse.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("BF.CARD"),t.pushKey(e)},transformReply:void 0}});var Uet=_(Zse=>{"use strict";Object.defineProperty(Zse,"__esModule",{value:!0});var fgr=we();Zse.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("BF.EXISTS"),t.pushKey(e),t.push(r)},transformReply:fgr.transformBooleanReply}});var eie=_(d5=>{"use strict";Object.defineProperty(d5,"__esModule",{value:!0});d5.transformInfoV2Reply=void 0;var pgr=fT();function mgr(t,e){switch(e?e[pgr.RESP_TYPES.MAP]:void 0){case Array:return t;case Map:{let n=new Map;for(let s=0;s{"use strict";Object.defineProperty(tie,"__esModule",{value:!0});var hgr=eie();tie.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("BF.INFO"),t.pushKey(e)},transformReply:{2:(t,e,r)=>(0,hgr.transformInfoV2Reply)(t,r),3:void 0}}});var qet=_(rie=>{"use strict";Object.defineProperty(rie,"__esModule",{value:!0});var ggr=we();rie.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("BF.INSERT"),t.pushKey(e),n?.CAPACITY!==void 0&&t.push("CAPACITY",n.CAPACITY.toString()),n?.ERROR!==void 0&&t.push("ERROR",n.ERROR.toString()),n?.EXPANSION!==void 0&&t.push("EXPANSION",n.EXPANSION.toString()),n?.NOCREATE&&t.push("NOCREATE"),n?.NONSCALING&&t.push("NONSCALING"),t.push("ITEMS"),t.pushVariadic(r)},transformReply:ggr.transformBooleanArrayReply}});var jet=_(nie=>{"use strict";Object.defineProperty(nie,"__esModule",{value:!0});nie.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("BF.LOADCHUNK"),t.pushKey(e),t.push(r.toString(),n)},transformReply:void 0}});var Qet=_(sie=>{"use strict";Object.defineProperty(sie,"__esModule",{value:!0});var ygr=we();sie.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("BF.MADD"),t.pushKey(e),t.pushVariadic(r)},transformReply:ygr.transformBooleanArrayReply}});var Het=_(iie=>{"use strict";Object.defineProperty(iie,"__esModule",{value:!0});var Agr=we();iie.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("BF.MEXISTS"),t.pushKey(e),t.pushVariadic(r)},transformReply:Agr.transformBooleanArrayReply}});var Get=_(aie=>{"use strict";Object.defineProperty(aie,"__esModule",{value:!0});aie.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("BF.RESERVE"),t.pushKey(e),t.push(r.toString(),n.toString()),s?.EXPANSION&&t.push("EXPANSION",s.EXPANSION.toString()),s?.NONSCALING&&t.push("NONSCALING")},transformReply:void 0}});var zet=_(oie=>{"use strict";Object.defineProperty(oie,"__esModule",{value:!0});oie.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("BF.SCANDUMP"),t.pushKey(e),t.push(r.toString())},transformReply(t){return{iterator:t[0],chunk:t[1]}}}});var E1=_(td=>{"use strict";var xgr=td&&td.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),bgr=td&&td.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&xgr(e,t,r)},rd=td&&td.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(td,"__esModule",{value:!0});var Ket=rd(Wet()),Vet=rd($et()),Yet=rd(Uet()),Jet=rd(Fet()),Xet=rd(qet()),Zet=rd(jet()),ett=rd(Qet()),ttt=rd(Het()),rtt=rd(Get()),ntt=rd(zet());bgr(eie(),td);td.default={ADD:Ket.default,add:Ket.default,CARD:Vet.default,card:Vet.default,EXISTS:Yet.default,exists:Yet.default,INFO:Jet.default,info:Jet.default,INSERT:Xet.default,insert:Xet.default,LOADCHUNK:Zet.default,loadChunk:Zet.default,MADD:ett.default,mAdd:ett.default,MEXISTS:ttt.default,mExists:ttt.default,RESERVE:rtt.default,reserve:rtt.default,SCANDUMP:ntt.default,scanDump:ntt.default}});var itt=_(cie=>{"use strict";Object.defineProperty(cie,"__esModule",{value:!0});cie.default={IS_READ_ONLY:!1,parseCommand(t,e,r){if(t.push("CMS.INCRBY"),t.pushKey(e),Array.isArray(r))for(let n of r)stt(t,n);else stt(t,r)},transformReply:void 0};function stt(t,{item:e,incrementBy:r}){t.push(e,r.toString())}});var att=_(uie=>{"use strict";Object.defineProperty(uie,"__esModule",{value:!0});var _gr=E1();uie.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("CMS.INFO"),t.pushKey(e)},transformReply:{2:(t,e,r)=>(0,_gr.transformInfoV2Reply)(t,r),3:void 0}}});var ott=_(lie=>{"use strict";Object.defineProperty(lie,"__esModule",{value:!0});lie.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("CMS.INITBYDIM"),t.pushKey(e),t.push(r.toString(),n.toString())},transformReply:void 0}});var ctt=_(die=>{"use strict";Object.defineProperty(die,"__esModule",{value:!0});die.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("CMS.INITBYPROB"),t.pushKey(e),t.push(r.toString(),n.toString())},transformReply:void 0}});var utt=_(fie=>{"use strict";Object.defineProperty(fie,"__esModule",{value:!0});fie.default={IS_READ_ONLY:!1,parseCommand(t,e,r){if(t.push("CMS.MERGE"),t.pushKey(e),t.push(r.length.toString()),Egr(r))t.pushVariadic(r);else{for(let n=0;n{"use strict";Object.defineProperty(pie,"__esModule",{value:!0});pie.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("CMS.QUERY"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var ytt=_(pT=>{"use strict";var v1=pT&&pT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(pT,"__esModule",{value:!0});var dtt=v1(itt()),ftt=v1(att()),ptt=v1(ott()),mtt=v1(ctt()),htt=v1(utt()),gtt=v1(ltt());pT.default={INCRBY:dtt.default,incrBy:dtt.default,INFO:ftt.default,info:ftt.default,INITBYDIM:ptt.default,initByDim:ptt.default,INITBYPROB:mtt.default,initByProb:mtt.default,MERGE:htt.default,merge:htt.default,QUERY:gtt.default,query:gtt.default}});var Att=_(mie=>{"use strict";Object.defineProperty(mie,"__esModule",{value:!0});var vgr=we();mie.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("CF.ADD"),t.pushKey(e),t.push(r)},transformReply:vgr.transformBooleanReply}});var xtt=_(hie=>{"use strict";Object.defineProperty(hie,"__esModule",{value:!0});var Sgr=we();hie.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("CF.ADDNX"),t.pushKey(e),t.push(r)},transformReply:Sgr.transformBooleanReply}});var btt=_(gie=>{"use strict";Object.defineProperty(gie,"__esModule",{value:!0});gie.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("CF.COUNT"),t.pushKey(e),t.push(r)},transformReply:void 0}});var _tt=_(yie=>{"use strict";Object.defineProperty(yie,"__esModule",{value:!0});var Igr=we();yie.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("CF.DEL"),t.pushKey(e),t.push(r)},transformReply:Igr.transformBooleanReply}});var Ett=_(Aie=>{"use strict";Object.defineProperty(Aie,"__esModule",{value:!0});var Cgr=we();Aie.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("CF.EXISTS"),t.pushKey(e),t.push(r)},transformReply:Cgr.transformBooleanReply}});var vtt=_(xie=>{"use strict";Object.defineProperty(xie,"__esModule",{value:!0});var Tgr=E1();xie.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("CF.INFO"),t.pushKey(e)},transformReply:{2:(t,e,r)=>(0,Tgr.transformInfoV2Reply)(t,r),3:void 0}}});var bie=_(mT=>{"use strict";Object.defineProperty(mT,"__esModule",{value:!0});mT.parseCfInsertArguments=void 0;var wgr=we();function Stt(t,e,r,n){t.pushKey(e),n?.CAPACITY!==void 0&&t.push("CAPACITY",n.CAPACITY.toString()),n?.NOCREATE&&t.push("NOCREATE"),t.push("ITEMS"),t.pushVariadic(r)}mT.parseCfInsertArguments=Stt;mT.default={IS_READ_ONLY:!1,parseCommand(...t){t[0].push("CF.INSERT"),Stt(...t)},transformReply:wgr.transformBooleanArrayReply}});var Itt=_(Hf=>{"use strict";var Rgr=Hf&&Hf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Ngr=Hf&&Hf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Ogr=Hf&&Hf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Rgr(e,t,r);return Ngr(e,t),e};Object.defineProperty(Hf,"__esModule",{value:!0});var _ie=Ogr(bie());Hf.default={IS_READ_ONLY:_ie.default.IS_READ_ONLY,parseCommand(...t){t[0].push("CF.INSERTNX"),(0,_ie.parseCfInsertArguments)(...t)},transformReply:_ie.default.transformReply}});var Ctt=_(Eie=>{"use strict";Object.defineProperty(Eie,"__esModule",{value:!0});Eie.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("CF.LOADCHUNK"),t.pushKey(e),t.push(r.toString(),n)},transformReply:void 0}});var Ttt=_(vie=>{"use strict";Object.defineProperty(vie,"__esModule",{value:!0});vie.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("CF.RESERVE"),t.pushKey(e),t.push(r.toString()),n?.BUCKETSIZE!==void 0&&t.push("BUCKETSIZE",n.BUCKETSIZE.toString()),n?.MAXITERATIONS!==void 0&&t.push("MAXITERATIONS",n.MAXITERATIONS.toString()),n?.EXPANSION!==void 0&&t.push("EXPANSION",n.EXPANSION.toString())},transformReply:void 0}});var wtt=_(Sie=>{"use strict";Object.defineProperty(Sie,"__esModule",{value:!0});Sie.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("CF.SCANDUMP"),t.pushKey(e),t.push(r.toString())},transformReply(t){return{iterator:t[0],chunk:t[1]}}}});var Utt=_(hT=>{"use strict";var Du=hT&&hT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(hT,"__esModule",{value:!0});var Rtt=Du(Att()),Ntt=Du(xtt()),Ott=Du(btt()),ktt=Du(_tt()),Ptt=Du(Ett()),Dtt=Du(vtt()),Btt=Du(bie()),Ltt=Du(Itt()),Mtt=Du(Ctt()),Wtt=Du(Ttt()),$tt=Du(wtt());hT.default={ADD:Rtt.default,add:Rtt.default,ADDNX:Ntt.default,addNX:Ntt.default,COUNT:Ott.default,count:Ott.default,DEL:ktt.default,del:ktt.default,EXISTS:Ptt.default,exists:Ptt.default,INFO:Dtt.default,info:Dtt.default,INSERT:Btt.default,insert:Btt.default,INSERTNX:Ltt.default,insertNX:Ltt.default,LOADCHUNK:Mtt.default,loadChunk:Mtt.default,RESERVE:Wtt.default,reserve:Wtt.default,SCANDUMP:$tt.default,scanDump:$tt.default}});var Ftt=_(Iie=>{"use strict";Object.defineProperty(Iie,"__esModule",{value:!0});Iie.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("TDIGEST.ADD"),t.pushKey(e);for(let n of r)t.push(n.toString())},transformReply:void 0}});var Cie=_(gT=>{"use strict";Object.defineProperty(gT,"__esModule",{value:!0});gT.transformByRankArguments=void 0;var kgr=we();function qtt(t,e,r){t.pushKey(e);for(let n of r)t.push(n.toString())}gT.transformByRankArguments=qtt;gT.default={IS_READ_ONLY:!0,parseCommand(...t){t[0].push("TDIGEST.BYRANK"),qtt(...t)},transformReply:kgr.transformDoubleArrayReply}});var jtt=_(Gf=>{"use strict";var Pgr=Gf&&Gf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Dgr=Gf&&Gf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Bgr=Gf&&Gf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Pgr(e,t,r);return Dgr(e,t),e};Object.defineProperty(Gf,"__esModule",{value:!0});var Tie=Bgr(Cie());Gf.default={IS_READ_ONLY:Tie.default.IS_READ_ONLY,parseCommand(...t){t[0].push("TDIGEST.BYREVRANK"),(0,Tie.transformByRankArguments)(...t)},transformReply:Tie.default.transformReply}});var Qtt=_(wie=>{"use strict";Object.defineProperty(wie,"__esModule",{value:!0});var Lgr=we();wie.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("TDIGEST.CDF"),t.pushKey(e);for(let n of r)t.push(n.toString())},transformReply:Lgr.transformDoubleArrayReply}});var Htt=_(Rie=>{"use strict";Object.defineProperty(Rie,"__esModule",{value:!0});Rie.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("TDIGEST.CREATE"),t.pushKey(e),r?.COMPRESSION!==void 0&&t.push("COMPRESSION",r.COMPRESSION.toString())},transformReply:void 0}});var Gtt=_(Nie=>{"use strict";Object.defineProperty(Nie,"__esModule",{value:!0});var Mgr=E1();Nie.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("TDIGEST.INFO"),t.pushKey(e)},transformReply:{2:(t,e,r)=>(0,Mgr.transformInfoV2Reply)(t,r),3:void 0}}});var ztt=_(Oie=>{"use strict";Object.defineProperty(Oie,"__esModule",{value:!0});var Wgr=we();Oie.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("TDIGEST.MAX"),t.pushKey(e)},transformReply:Wgr.transformDoubleReply}});var Ktt=_(kie=>{"use strict";Object.defineProperty(kie,"__esModule",{value:!0});kie.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("TDIGEST.MERGE"),t.pushKey(e),t.pushKeysLength(r),n?.COMPRESSION!==void 0&&t.push("COMPRESSION",n.COMPRESSION.toString()),n?.OVERRIDE&&t.push("OVERRIDE")},transformReply:void 0}});var Vtt=_(Pie=>{"use strict";Object.defineProperty(Pie,"__esModule",{value:!0});var $gr=we();Pie.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("TDIGEST.MIN"),t.pushKey(e)},transformReply:$gr.transformDoubleReply}});var Ytt=_(Die=>{"use strict";Object.defineProperty(Die,"__esModule",{value:!0});var Ugr=we();Die.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("TDIGEST.QUANTILE"),t.pushKey(e);for(let n of r)t.push(n.toString())},transformReply:Ugr.transformDoubleArrayReply}});var Bie=_(yT=>{"use strict";Object.defineProperty(yT,"__esModule",{value:!0});yT.transformRankArguments=void 0;function Jtt(t,e,r){t.pushKey(e);for(let n of r)t.push(n.toString())}yT.transformRankArguments=Jtt;yT.default={IS_READ_ONLY:!0,parseCommand(...t){t[0].push("TDIGEST.RANK"),Jtt(...t)},transformReply:void 0}});var Xtt=_(Lie=>{"use strict";Object.defineProperty(Lie,"__esModule",{value:!0});Lie.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("TDIGEST.RESET"),t.pushKey(e)},transformReply:void 0}});var Ztt=_(zf=>{"use strict";var Fgr=zf&&zf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),qgr=zf&&zf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),jgr=zf&&zf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Fgr(e,t,r);return qgr(e,t),e};Object.defineProperty(zf,"__esModule",{value:!0});var Mie=jgr(Bie());zf.default={IS_READ_ONLY:Mie.default.IS_READ_ONLY,parseCommand(...t){t[0].push("TDIGEST.REVRANK"),(0,Mie.transformRankArguments)(...t)},transformReply:Mie.default.transformReply}});var ert=_(Wie=>{"use strict";Object.defineProperty(Wie,"__esModule",{value:!0});var Qgr=we();Wie.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("TDIGEST.TRIMMED_MEAN"),t.pushKey(e),t.push(r.toString(),n.toString())},transformReply:Qgr.transformDoubleReply}});var hrt=_(AT=>{"use strict";var yo=AT&&AT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(AT,"__esModule",{value:!0});var trt=yo(Ftt()),rrt=yo(Cie()),nrt=yo(jtt()),srt=yo(Qtt()),irt=yo(Htt()),art=yo(Gtt()),ort=yo(ztt()),crt=yo(Ktt()),urt=yo(Vtt()),lrt=yo(Ytt()),drt=yo(Bie()),frt=yo(Xtt()),prt=yo(Ztt()),mrt=yo(ert());AT.default={ADD:trt.default,add:trt.default,BYRANK:rrt.default,byRank:rrt.default,BYREVRANK:nrt.default,byRevRank:nrt.default,CDF:srt.default,cdf:srt.default,CREATE:irt.default,create:irt.default,INFO:art.default,info:art.default,MAX:ort.default,max:ort.default,MERGE:crt.default,merge:crt.default,MIN:urt.default,min:urt.default,QUANTILE:lrt.default,quantile:lrt.default,RANK:drt.default,rank:drt.default,RESET:frt.default,reset:frt.default,REVRANK:prt.default,revRank:prt.default,TRIMMED_MEAN:mrt.default,trimmedMean:mrt.default}});var grt=_($ie=>{"use strict";Object.defineProperty($ie,"__esModule",{value:!0});$ie.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("TOPK.ADD"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var yrt=_(Uie=>{"use strict";Object.defineProperty(Uie,"__esModule",{value:!0});Uie.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("TOPK.COUNT"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var xrt=_(Fie=>{"use strict";Object.defineProperty(Fie,"__esModule",{value:!0});function Art(t,{item:e,incrementBy:r}){t.push(e,r.toString())}Fie.default={IS_READ_ONLY:!1,parseCommand(t,e,r){if(t.push("TOPK.INCRBY"),t.pushKey(e),Array.isArray(r))for(let n of r)Art(t,n);else Art(t,r)},transformReply:void 0}});var brt=_(qie=>{"use strict";Object.defineProperty(qie,"__esModule",{value:!0});var Hgr=we(),Ggr=E1();qie.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("TOPK.INFO"),t.pushKey(e)},transformReply:{2:(t,e,r)=>(t[7]=Hgr.transformDoubleReply[2](t[7],e,r),(0,Ggr.transformInfoV2Reply)(t,r)),3:void 0}}});var _rt=_(jie=>{"use strict";Object.defineProperty(jie,"__esModule",{value:!0});jie.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("TOPK.LIST"),t.pushKey(e),t.push("WITHCOUNT")},transformReply(t){let e=[];for(let r=0;r{"use strict";Object.defineProperty(Qie,"__esModule",{value:!0});Qie.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("TOPK.LIST"),t.pushKey(e)},transformReply:void 0}});var vrt=_(Hie=>{"use strict";Object.defineProperty(Hie,"__esModule",{value:!0});var zgr=we();Hie.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("TOPK.QUERY"),t.pushKey(e),t.pushVariadic(r)},transformReply:zgr.transformBooleanArrayReply}});var Srt=_(Gie=>{"use strict";Object.defineProperty(Gie,"__esModule",{value:!0});Gie.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("TOPK.RESERVE"),t.pushKey(e),t.push(r.toString()),n&&t.push(n.width.toString(),n.depth.toString(),n.decay.toString())},transformReply:void 0}});var Prt=_(xT=>{"use strict";var fm=xT&&xT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(xT,"__esModule",{value:!0});var Irt=fm(grt()),Crt=fm(yrt()),Trt=fm(xrt()),wrt=fm(brt()),Rrt=fm(_rt()),Nrt=fm(Ert()),Ort=fm(vrt()),krt=fm(Srt());xT.default={ADD:Irt.default,add:Irt.default,COUNT:Crt.default,count:Crt.default,INCRBY:Trt.default,incrBy:Trt.default,INFO:wrt.default,info:wrt.default,LIST_WITHCOUNT:Rrt.default,listWithCount:Rrt.default,LIST:Nrt.default,list:Nrt.default,QUERY:Ort.default,query:Ort.default,RESERVE:krt.default,reserve:krt.default}});var Drt=_(bT=>{"use strict";var _T=bT&&bT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(bT,"__esModule",{value:!0});var Kgr=_T(E1()),Vgr=_T(ytt()),Ygr=_T(Utt()),Jgr=_T(hrt()),Xgr=_T(Prt());bT.default={bf:Kgr.default,cms:Vgr.default,cf:Ygr.default,tDigest:Jgr.default,topK:Xgr.default}});var zie=_(S1=>{"use strict";var Zgr=S1&&S1.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(S1,"__esModule",{value:!0});S1.default=void 0;var eyr=Drt();Object.defineProperty(S1,"default",{enumerable:!0,get:function(){return Zgr(eyr).default}})});var Lrt=_(Kie=>{"use strict";Object.defineProperty(Kie,"__esModule",{value:!0});var Brt=we();Kie.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,...s){t.push("JSON.ARRAPPEND"),t.pushKey(e),t.push(r,(0,Brt.transformRedisJsonArgument)(n));for(let i=0;i{"use strict";Object.defineProperty(Vie,"__esModule",{value:!0});var tyr=we();Vie.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("JSON.ARRINDEX"),t.pushKey(e),t.push(r,(0,tyr.transformRedisJsonArgument)(n)),s?.range&&(t.push(s.range.start.toString()),s.range.stop!==void 0&&t.push(s.range.stop.toString()))},transformReply:void 0}});var $rt=_(Yie=>{"use strict";Object.defineProperty(Yie,"__esModule",{value:!0});var Wrt=we();Yie.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,...i){t.push("JSON.ARRINSERT"),t.pushKey(e),t.push(r,n.toString(),(0,Wrt.transformRedisJsonArgument)(s));for(let a=0;a{"use strict";Object.defineProperty(Jie,"__esModule",{value:!0});Jie.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("JSON.ARRLEN"),t.pushKey(e),r?.path!==void 0&&t.push(r.path)},transformReply:void 0}});var Frt=_(Zie=>{"use strict";Object.defineProperty(Zie,"__esModule",{value:!0});var Xie=we();Zie.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("JSON.ARRPOP"),t.pushKey(e),r&&(t.push(r.path),r.index!==void 0&&t.push(r.index.toString()))},transformReply(t){return(0,Xie.isArrayReply)(t)?t.map(e=>(0,Xie.transformRedisJsonNullReply)(e)):(0,Xie.transformRedisJsonNullReply)(t)}}});var qrt=_(eae=>{"use strict";Object.defineProperty(eae,"__esModule",{value:!0});eae.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("JSON.ARRTRIM"),t.pushKey(e),t.push(r,n.toString(),s.toString())},transformReply:void 0}});var jrt=_(tae=>{"use strict";Object.defineProperty(tae,"__esModule",{value:!0});tae.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("JSON.CLEAR"),t.pushKey(e),r?.path!==void 0&&t.push(r.path)},transformReply:void 0}});var Qrt=_(rae=>{"use strict";Object.defineProperty(rae,"__esModule",{value:!0});rae.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("JSON.DEBUG","MEMORY"),t.pushKey(e),r?.path!==void 0&&t.push(r.path)},transformReply:void 0}});var Hrt=_(nae=>{"use strict";Object.defineProperty(nae,"__esModule",{value:!0});nae.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("JSON.DEL"),t.pushKey(e),r?.path!==void 0&&t.push(r.path)},transformReply:void 0}});var Grt=_(sae=>{"use strict";Object.defineProperty(sae,"__esModule",{value:!0});sae.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("JSON.FORGET"),t.pushKey(e),r?.path!==void 0&&t.push(r.path)},transformReply:void 0}});var zrt=_(iae=>{"use strict";Object.defineProperty(iae,"__esModule",{value:!0});var ryr=we();iae.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("JSON.GET"),t.pushKey(e),r?.path!==void 0&&t.pushVariadic(r.path)},transformReply:ryr.transformRedisJsonNullReply}});var Krt=_(aae=>{"use strict";Object.defineProperty(aae,"__esModule",{value:!0});var nyr=we();aae.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("JSON.MERGE"),t.pushKey(e),t.push(r,(0,nyr.transformRedisJsonArgument)(n))},transformReply:void 0}});var Vrt=_(oae=>{"use strict";Object.defineProperty(oae,"__esModule",{value:!0});var syr=we();oae.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("JSON.MGET"),t.pushKeys(e),t.push(r)},transformReply(t){return t.map(e=>(0,syr.transformRedisJsonNullReply)(e))}}});var Yrt=_(cae=>{"use strict";Object.defineProperty(cae,"__esModule",{value:!0});var iyr=we();cae.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("JSON.MSET");for(let r=0;r{"use strict";Object.defineProperty(uae,"__esModule",{value:!0});uae.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("JSON.NUMINCRBY"),t.pushKey(e),t.push(r,n.toString())},transformReply:{2:t=>JSON.parse(t.toString()),3:void 0}}});var Jrt=_(ET=>{"use strict";var ayr=ET&&ET.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(ET,"__esModule",{value:!0});var oyr=ayr(lae());ET.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("JSON.NUMMULTBY"),t.pushKey(e),t.push(r,n.toString())},transformReply:oyr.default.transformReply}});var Xrt=_(dae=>{"use strict";Object.defineProperty(dae,"__esModule",{value:!0});dae.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("JSON.OBJKEYS"),t.pushKey(e),r?.path!==void 0&&t.push(r.path)},transformReply:void 0}});var Zrt=_(fae=>{"use strict";Object.defineProperty(fae,"__esModule",{value:!0});fae.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("JSON.OBJLEN"),t.pushKey(e),r?.path!==void 0&&t.push(r.path)},transformReply:void 0}});var ent=_(pae=>{"use strict";Object.defineProperty(pae,"__esModule",{value:!0});var cyr=we();pae.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("JSON.SET"),t.pushKey(e),t.push(r,(0,cyr.transformRedisJsonArgument)(n)),s?.condition?t.push(s?.condition):s?.NX?t.push("NX"):s?.XX&&t.push("XX")},transformReply:void 0}});var tnt=_(mae=>{"use strict";Object.defineProperty(mae,"__esModule",{value:!0});var uyr=we();mae.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("JSON.STRAPPEND"),t.pushKey(e),n?.path!==void 0&&t.push(n.path),t.push((0,uyr.transformRedisJsonArgument)(r))},transformReply:void 0}});var rnt=_(hae=>{"use strict";Object.defineProperty(hae,"__esModule",{value:!0});hae.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("JSON.STRLEN"),t.pushKey(e),r?.path&&t.push(r.path)},transformReply:void 0}});var nnt=_(gae=>{"use strict";Object.defineProperty(gae,"__esModule",{value:!0});gae.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("JSON.TOGGLE"),t.pushKey(e),t.push(r)},transformReply:void 0}});var snt=_(yae=>{"use strict";Object.defineProperty(yae,"__esModule",{value:!0});yae.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("JSON.TYPE"),t.pushKey(e),r?.path&&t.push(r.path)},transformReply:{2:void 0,3:t=>t[0]}}});var wnt=_(Bu=>{"use strict";var zn=Bu&&Bu.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Bu,"__esModule",{value:!0});Bu.transformRedisJsonNullReply=Bu.transformRedisJsonReply=Bu.transformRedisJsonArgument=void 0;var int=zn(Lrt()),ant=zn(Mrt()),ont=zn($rt()),cnt=zn(Urt()),unt=zn(Frt()),lnt=zn(qrt()),dnt=zn(jrt()),fnt=zn(Qrt()),pnt=zn(Hrt()),mnt=zn(Grt()),hnt=zn(zrt()),gnt=zn(Krt()),ynt=zn(Vrt()),Ant=zn(Yrt()),xnt=zn(lae()),bnt=zn(Jrt()),_nt=zn(Xrt()),Ent=zn(Zrt()),vnt=zn(ent()),Snt=zn(tnt()),Int=zn(rnt()),Cnt=zn(nnt()),Tnt=zn(snt()),Aae=we();Object.defineProperty(Bu,"transformRedisJsonArgument",{enumerable:!0,get:function(){return Aae.transformRedisJsonArgument}});Object.defineProperty(Bu,"transformRedisJsonReply",{enumerable:!0,get:function(){return Aae.transformRedisJsonReply}});Object.defineProperty(Bu,"transformRedisJsonNullReply",{enumerable:!0,get:function(){return Aae.transformRedisJsonNullReply}});Bu.default={ARRAPPEND:int.default,arrAppend:int.default,ARRINDEX:ant.default,arrIndex:ant.default,ARRINSERT:ont.default,arrInsert:ont.default,ARRLEN:cnt.default,arrLen:cnt.default,ARRPOP:unt.default,arrPop:unt.default,ARRTRIM:lnt.default,arrTrim:lnt.default,CLEAR:dnt.default,clear:dnt.default,DEBUG_MEMORY:fnt.default,debugMemory:fnt.default,DEL:pnt.default,del:pnt.default,FORGET:mnt.default,forget:mnt.default,GET:hnt.default,get:hnt.default,MERGE:gnt.default,merge:gnt.default,MGET:ynt.default,mGet:ynt.default,MSET:Ant.default,mSet:Ant.default,NUMINCRBY:xnt.default,numIncrBy:xnt.default,NUMMULTBY:bnt.default,numMultBy:bnt.default,OBJKEYS:_nt.default,objKeys:_nt.default,OBJLEN:Ent.default,objLen:Ent.default,SET:vnt.default,set:vnt.default,STRAPPEND:Snt.default,strAppend:Snt.default,STRLEN:Int.default,strLen:Int.default,TOGGLE:Cnt.default,toggle:Cnt.default,TYPE:Tnt.default,type:Tnt.default}});var xae=_(I1=>{"use strict";var lyr=I1&&I1.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(I1,"__esModule",{value:!0});I1.default=void 0;var dyr=wnt();Object.defineProperty(I1,"default",{enumerable:!0,get:function(){return lyr(dyr).default}})});var Rnt=_(bae=>{"use strict";Object.defineProperty(bae,"__esModule",{value:!0});bae.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("FT._LIST")},transformReply:{2:void 0,3:void 0}}});var f5=_(Cn=>{"use strict";Object.defineProperty(Cn,"__esModule",{value:!0});Cn.REDISEARCH_LANGUAGE=Cn.parseSchema=Cn.SCHEMA_GEO_SHAPE_COORD_SYSTEM=Cn.VAMANA_COMPRESSION_ALGORITHM=Cn.SCHEMA_VECTOR_FIELD_ALGORITHM=Cn.SCHEMA_TEXT_FIELD_PHONETIC=Cn.SCHEMA_FIELD_TYPE=void 0;var Nnt=we();Cn.SCHEMA_FIELD_TYPE={TEXT:"TEXT",NUMERIC:"NUMERIC",GEO:"GEO",TAG:"TAG",VECTOR:"VECTOR",GEOSHAPE:"GEOSHAPE"};Cn.SCHEMA_TEXT_FIELD_PHONETIC={DM_EN:"dm:en",DM_FR:"dm:fr",DM_PT:"dm:pt",DM_ES:"dm:es"};Cn.SCHEMA_VECTOR_FIELD_ALGORITHM={FLAT:"FLAT",HNSW:"HNSW",VAMANA:"SVS-VAMANA"};Cn.VAMANA_COMPRESSION_ALGORITHM={LVQ4:"LVQ4",LVQ8:"LVQ8",LVQ4x4:"LVQ4x4",LVQ4x8:"LVQ4x8",LeanVec4x8:"LeanVec4x8",LeanVec8x8:"LeanVec8x8"};Cn.SCHEMA_GEO_SHAPE_COORD_SYSTEM={SPHERICAL:"SPHERICAL",FLAT:"FLAT"};function _ae(t,e){e.SORTABLE&&(t.push("SORTABLE"),e.SORTABLE==="UNF"&&t.push("UNF")),e.NOINDEX&&t.push("NOINDEX")}function Ont(t,e){for(let[r,n]of Object.entries(e)){let s=Array.isArray(n)?n:[n];for(let i of s){if(t.push(r),typeof i=="string"){t.push(i);continue}switch(i.AS&&t.push("AS",i.AS),t.push(i.type),i.INDEXMISSING&&t.push("INDEXMISSING"),i.type){case Cn.SCHEMA_FIELD_TYPE.TEXT:i.NOSTEM&&t.push("NOSTEM"),i.WEIGHT!==void 0&&t.push("WEIGHT",i.WEIGHT.toString()),i.PHONETIC&&t.push("PHONETIC",i.PHONETIC),i.WITHSUFFIXTRIE&&t.push("WITHSUFFIXTRIE"),i.INDEXEMPTY&&t.push("INDEXEMPTY"),_ae(t,i);break;case Cn.SCHEMA_FIELD_TYPE.NUMERIC:case Cn.SCHEMA_FIELD_TYPE.GEO:_ae(t,i);break;case Cn.SCHEMA_FIELD_TYPE.TAG:i.SEPARATOR&&t.push("SEPARATOR",i.SEPARATOR),i.CASESENSITIVE&&t.push("CASESENSITIVE"),i.WITHSUFFIXTRIE&&t.push("WITHSUFFIXTRIE"),i.INDEXEMPTY&&t.push("INDEXEMPTY"),_ae(t,i);break;case Cn.SCHEMA_FIELD_TYPE.VECTOR:t.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 Cn.SCHEMA_VECTOR_FIELD_ALGORITHM.FLAT:i.BLOCK_SIZE!==void 0&&a.push("BLOCK_SIZE",i.BLOCK_SIZE.toString());break;case Cn.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 Cn.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}t.pushVariadicWithLength(a);break;case Cn.SCHEMA_FIELD_TYPE.GEOSHAPE:i.COORD_SYSTEM!==void 0&&t.push("COORD_SYSTEM",i.COORD_SYSTEM);break}}}}Cn.parseSchema=Ont;Cn.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"};Cn.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("FT.CREATE",e),n?.ON&&t.push("ON",n.ON),(0,Nnt.parseOptionalVariadicArgument)(t,"PREFIX",n?.PREFIX),n?.FILTER&&t.push("FILTER",n.FILTER),n?.LANGUAGE&&t.push("LANGUAGE",n.LANGUAGE),n?.LANGUAGE_FIELD&&t.push("LANGUAGE_FIELD",n.LANGUAGE_FIELD),n?.SCORE&&t.push("SCORE",n.SCORE.toString()),n?.SCORE_FIELD&&t.push("SCORE_FIELD",n.SCORE_FIELD),n?.MAXTEXTFIELDS&&t.push("MAXTEXTFIELDS"),n?.TEMPORARY&&t.push("TEMPORARY",n.TEMPORARY.toString()),n?.NOOFFSETS&&t.push("NOOFFSETS"),n?.NOHL&&t.push("NOHL"),n?.NOFIELDS&&t.push("NOFIELDS"),n?.NOFREQS&&t.push("NOFREQS"),n?.SKIPINITIALSCAN&&t.push("SKIPINITIALSCAN"),(0,Nnt.parseOptionalVariadicArgument)(t,"STOPWORDS",n?.STOPWORDS),t.push("SCHEMA"),Ont(t,r)},transformReply:void 0}});var knt=_(Eae=>{"use strict";Object.defineProperty(Eae,"__esModule",{value:!0});var fyr=f5();Eae.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.ALTER",e,"SCHEMA","ADD"),(0,fyr.parseSchema)(t,r)},transformReply:void 0}});var C1=_(p5=>{"use strict";Object.defineProperty(p5,"__esModule",{value:!0});p5.DEFAULT_DIALECT=void 0;p5.DEFAULT_DIALECT="2"});var Qg=_(jg=>{"use strict";Object.defineProperty(jg,"__esModule",{value:!0});jg.parseSearchOptions=jg.parseParamsArgument=void 0;var vT=we(),pyr=C1();function Pnt(t,e){if(e){t.push("PARAMS");let r=[];for(let n in e){if(!Object.hasOwn(e,n))continue;let s=e[n];r.push(n,typeof s=="number"?s.toString():s)}t.pushVariadicWithLength(r)}}jg.parseParamsArgument=Pnt;function Dnt(t,e){e?.VERBATIM&&t.push("VERBATIM"),e?.NOSTOPWORDS&&t.push("NOSTOPWORDS"),(0,vT.parseOptionalVariadicArgument)(t,"INKEYS",e?.INKEYS),(0,vT.parseOptionalVariadicArgument)(t,"INFIELDS",e?.INFIELDS),(0,vT.parseOptionalVariadicArgument)(t,"RETURN",e?.RETURN),e?.SUMMARIZE&&(t.push("SUMMARIZE"),typeof e.SUMMARIZE=="object"&&((0,vT.parseOptionalVariadicArgument)(t,"FIELDS",e.SUMMARIZE.FIELDS),e.SUMMARIZE.FRAGS!==void 0&&t.push("FRAGS",e.SUMMARIZE.FRAGS.toString()),e.SUMMARIZE.LEN!==void 0&&t.push("LEN",e.SUMMARIZE.LEN.toString()),e.SUMMARIZE.SEPARATOR!==void 0&&t.push("SEPARATOR",e.SUMMARIZE.SEPARATOR))),e?.HIGHLIGHT&&(t.push("HIGHLIGHT"),typeof e.HIGHLIGHT=="object"&&((0,vT.parseOptionalVariadicArgument)(t,"FIELDS",e.HIGHLIGHT.FIELDS),e.HIGHLIGHT.TAGS&&t.push("TAGS",e.HIGHLIGHT.TAGS.open,e.HIGHLIGHT.TAGS.close))),e?.SLOP!==void 0&&t.push("SLOP",e.SLOP.toString()),e?.TIMEOUT!==void 0&&t.push("TIMEOUT",e.TIMEOUT.toString()),e?.INORDER&&t.push("INORDER"),e?.LANGUAGE&&t.push("LANGUAGE",e.LANGUAGE),e?.EXPANDER&&t.push("EXPANDER",e.EXPANDER),e?.SCORER&&t.push("SCORER",e.SCORER),e?.SORTBY&&(t.push("SORTBY"),typeof e.SORTBY=="string"||e.SORTBY instanceof Buffer?t.push(e.SORTBY):(t.push(e.SORTBY.BY),e.SORTBY.DIRECTION&&t.push(e.SORTBY.DIRECTION))),e?.LIMIT&&t.push("LIMIT",e.LIMIT.from.toString(),e.LIMIT.size.toString()),Pnt(t,e?.PARAMS),e?.DIALECT?t.push("DIALECT",e.DIALECT.toString()):t.push("DIALECT",pyr.DEFAULT_DIALECT)}jg.parseSearchOptions=Dnt;jg.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("FT.SEARCH",e,r),Dnt(t,n)},transformReply:{2:t=>{let e=t.length>2&&!Array.isArray(t[2]),r=[],n=1;for(;n{"use strict";Object.defineProperty(an,"__esModule",{value:!0});an.parseGroupByReducer=an.parseAggregateOptions=an.FT_AGGREGATE_GROUP_BY_REDUCERS=an.FT_AGGREGATE_STEPS=void 0;var hyr=Qg(),gyr=we(),yyr=C1();an.FT_AGGREGATE_STEPS={GROUPBY:"GROUPBY",SORTBY:"SORTBY",APPLY:"APPLY",LIMIT:"LIMIT",FILTER:"FILTER"};an.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"};an.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e,r,n){return t.push("FT.AGGREGATE",e,r),Mnt(t,n)},transformReply:{2:(t,e,r)=>{let n=[];for(let s=1;s{"use strict";var Ayr=ST&&ST.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(ST,"__esModule",{value:!0});var Sae=Ayr(T1());ST.default={IS_READ_ONLY:Sae.default.IS_READ_ONLY,parseCommand(t,e,r,n){Sae.default.parseCommand(t,e,r,n),t.push("WITHCURSOR"),n?.COUNT!==void 0&&t.push("COUNT",n.COUNT.toString()),n?.MAXIDLE!==void 0&&t.push("MAXIDLE",n.MAXIDLE.toString())},transformReply:{2:t=>({...Sae.default.transformReply[2](t[0]),cursor:t[1]}),3:void 0},unstableResp3:!0}});var Wnt=_(Cae=>{"use strict";Object.defineProperty(Cae,"__esModule",{value:!0});Cae.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.ALIASADD",e,r)},transformReply:void 0}});var $nt=_(Tae=>{"use strict";Object.defineProperty(Tae,"__esModule",{value:!0});Tae.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("FT.ALIASDEL",e)},transformReply:void 0}});var Unt=_(wae=>{"use strict";Object.defineProperty(wae,"__esModule",{value:!0});wae.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.ALIASUPDATE",e,r)},transformReply:void 0}});var Fnt=_(Rae=>{"use strict";Object.defineProperty(Rae,"__esModule",{value:!0});Rae.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("FT.CONFIG","GET",e)},transformReply(t){let e=Object.create(null);for(let r of t){let[n,s]=r;e[n.toString()]=s}return e}}});var qnt=_(Nae=>{"use strict";Object.defineProperty(Nae,"__esModule",{value:!0});Nae.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.CONFIG","SET",e,r)},transformReply:void 0}});var jnt=_(Oae=>{"use strict";Object.defineProperty(Oae,"__esModule",{value:!0});Oae.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.CURSOR","DEL",e,r.toString())},transformReply:void 0}});var Qnt=_(IT=>{"use strict";var xyr=IT&&IT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(IT,"__esModule",{value:!0});var byr=xyr(Iae());IT.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("FT.CURSOR","READ",e,r.toString()),n?.COUNT!==void 0&&t.push("COUNT",n.COUNT.toString())},transformReply:byr.default.transformReply,unstableResp3:!0}});var Hnt=_(kae=>{"use strict";Object.defineProperty(kae,"__esModule",{value:!0});kae.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.DICTADD",e),t.pushVariadic(r)},transformReply:void 0}});var Gnt=_(Pae=>{"use strict";Object.defineProperty(Pae,"__esModule",{value:!0});Pae.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.DICTDEL",e),t.pushVariadic(r)},transformReply:void 0}});var znt=_(Dae=>{"use strict";Object.defineProperty(Dae,"__esModule",{value:!0});Dae.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("FT.DICTDUMP",e)},transformReply:{2:void 0,3:void 0}}});var Knt=_(Bae=>{"use strict";Object.defineProperty(Bae,"__esModule",{value:!0});Bae.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.DROPINDEX",e),r?.DD&&t.push("DD")},transformReply:{2:void 0,3:void 0}}});var Vnt=_(Lae=>{"use strict";Object.defineProperty(Lae,"__esModule",{value:!0});var _yr=Qg(),Eyr=C1();Lae.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("FT.EXPLAIN",e,r),(0,_yr.parseParamsArgument)(t,n?.PARAMS),n?.DIALECT?t.push("DIALECT",n.DIALECT.toString()):t.push("DIALECT",Eyr.DEFAULT_DIALECT)},transformReply:void 0}});var Ynt=_(Mae=>{"use strict";Object.defineProperty(Mae,"__esModule",{value:!0});var vyr=C1();Mae.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("FT.EXPLAINCLI",e,r),n?.DIALECT?t.push("DIALECT",n.DIALECT.toString()):t.push("DIALECT",vyr.DEFAULT_DIALECT)},transformReply:void 0}});var Znt=_(Lu=>{"use strict";Object.defineProperty(Lu,"__esModule",{value:!0});Lu.FT_HYBRID_COMBINE_METHOD=Lu.FT_HYBRID_VECTOR_METHOD=void 0;var Jnt=we(),Syr=Qg(),Iyr=T1();Lu.FT_HYBRID_VECTOR_METHOD={KNN:"KNN",RANGE:"RANGE"};Lu.FT_HYBRID_COMBINE_METHOD={RRF:"RRF",LINEAR:"LINEAR"};function Cyr(t,e){t.push("SEARCH",e.query),e.SCORER&&t.push("SCORER",e.SCORER),e.YIELD_SCORE_AS&&t.push("YIELD_SCORE_AS",e.YIELD_SCORE_AS)}function Tyr(t,e){if(t.push("VSIM",e.field,e.vector),e.method){if(e.method.type===Lu.FT_HYBRID_VECTOR_METHOD.KNN){let r=2;e.method.EF_RUNTIME!==void 0&&(r+=2),t.push("KNN",r.toString(),"K",e.method.K.toString()),e.method.EF_RUNTIME!==void 0&&t.push("EF_RUNTIME",e.method.EF_RUNTIME.toString())}if(e.method.type===Lu.FT_HYBRID_VECTOR_METHOD.RANGE){let r=2;e.method.EPSILON!==void 0&&(r+=2),t.push("RANGE",r.toString(),"RADIUS",e.method.RADIUS.toString()),e.method.EPSILON!==void 0&&t.push("EPSILON",e.method.EPSILON.toString())}}e.FILTER&&t.push("FILTER",e.FILTER),e.YIELD_SCORE_AS&&t.push("YIELD_SCORE_AS",e.YIELD_SCORE_AS)}function wyr(t,e){if(e){if(t.push("COMBINE"),e.method.type===Lu.FT_HYBRID_COMBINE_METHOD.RRF){let r=0;e.method.WINDOW!==void 0&&(r+=2),e.method.CONSTANT!==void 0&&(r+=2),e.YIELD_SCORE_AS&&(r+=2),t.push("RRF",r.toString()),e.method.WINDOW!==void 0&&t.push("WINDOW",e.method.WINDOW.toString()),e.method.CONSTANT!==void 0&&t.push("CONSTANT",e.method.CONSTANT.toString())}if(e.method.type===Lu.FT_HYBRID_COMBINE_METHOD.LINEAR){let r=0;e.method.ALPHA!==void 0&&(r+=2),e.method.BETA!==void 0&&(r+=2),e.method.WINDOW!==void 0&&(r+=2),e.YIELD_SCORE_AS&&(r+=2),t.push("LINEAR",r.toString()),e.method.ALPHA!==void 0&&t.push("ALPHA",e.method.ALPHA.toString()),e.method.BETA!==void 0&&t.push("BETA",e.method.BETA.toString()),e.method.WINDOW!==void 0&&t.push("WINDOW",e.method.WINDOW.toString())}e.YIELD_SCORE_AS&&t.push("YIELD_SCORE_AS",e.YIELD_SCORE_AS)}}function Ryr(t,e){t.push("APPLY",e.expression),e.AS&&t.push("AS",e.AS)}function Nyr(t,e){if(Cyr(t,e.SEARCH),Tyr(t,e.VSIM),e.COMBINE&&wyr(t,e.COMBINE),e.LOAD&&(e.LOAD==="*"?t.push("LOAD","*"):(0,Jnt.parseOptionalVariadicArgument)(t,"LOAD",e.LOAD)),e.GROUPBY&&((0,Jnt.parseOptionalVariadicArgument)(t,"GROUPBY",e.GROUPBY.fields),e.GROUPBY.REDUCE)){let n=Array.isArray(e.GROUPBY.REDUCE)?e.GROUPBY.REDUCE:[e.GROUPBY.REDUCE];for(let s of n)(0,Iyr.parseGroupByReducer)(t,s)}if(e.APPLY){let n=Array.isArray(e.APPLY)?e.APPLY:[e.APPLY];for(let s of n)Ryr(t,s)}if(e.SORTBY){let n=e.SORTBY.fields.reduce((s,i)=>i.direction?s+2:s+1,0);t.push("SORTBY",n.toString());for(let s of e.SORTBY.fields)t.push(s.field),s.direction&&t.push(s.direction)}e.NOSORT&&t.push("NOSORT"),e.FILTER&&t.push("FILTER",e.FILTER),e.LIMIT&&t.push("LIMIT",e.LIMIT.offset.toString(),e.LIMIT.count.toString());let r=e.PARAMS&&Object.keys(e.PARAMS).length>0;(0,Syr.parseParamsArgument)(t,r?e.PARAMS:void 0),e.TIMEOUT!==void 0&&t.push("TIMEOUT",e.TIMEOUT.toString())}Lu.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.HYBRID",e),Nyr(t,r)},transformReply:{2:t=>Oyr(t),3:void 0},unstableResp3:!0};function Oyr(t){let e=Xnt(t),r=e.total_results??0,n=e.results??[],s=e.warnings??[],i=e.execution_time?Number.parseFloat(e.execution_time):0,a=[];for(let o of n){let c=Xnt(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 Xnt(t){let e={};if(!Array.isArray(t))return e;for(let r=0;r{"use strict";Object.defineProperty($ae,"__esModule",{value:!0});var Wae=we();$ae.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("FT.INFO",e)},transformReply:{2:kyr,3:void 0},unstableResp3:!0};function kyr(t,e,r){let n=(0,Wae.createTransformTuplesReplyFunc)(e,r),s={};for(let i=0;in(o));break;case"gc_stats":{let o={},c=t[i+1];for(let u=0;u{"use strict";var Pyr=Kf&&Kf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Dyr=Kf&&Kf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Byr=Kf&&Kf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Pyr(e,t,r);return Dyr(e,t),e};Object.defineProperty(Kf,"__esModule",{value:!0});var tst=Byr(Qg());Kf.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("FT.PROFILE",e,"SEARCH"),n?.LIMITED&&t.push("LIMITED"),t.push("QUERY",r),(0,tst.parseSearchOptions)(t,n)},transformReply:{2:t=>({results:tst.default.transformReply[2](t[0]),profile:t[1]}),3:t=>t},unstableResp3:!0}});var sst=_(Vf=>{"use strict";var Lyr=Vf&&Vf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Myr=Vf&&Vf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Wyr=Vf&&Vf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Lyr(e,t,r);return Myr(e,t),e};Object.defineProperty(Vf,"__esModule",{value:!0});var nst=Wyr(T1());Vf.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("FT.PROFILE",e,"AGGREGATE"),n?.LIMITED&&t.push("LIMITED"),t.push("QUERY",r),(0,nst.parseAggregateOptions)(t,n)},transformReply:{2:t=>({results:nst.default.transformReply[2](t[0]),profile:t[1]}),3:t=>t},unstableResp3:!0}});var ist=_(CT=>{"use strict";var $yr=CT&&CT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(CT,"__esModule",{value:!0});var Uae=$yr(Qg());CT.default={NOT_KEYED_COMMAND:Uae.default.NOT_KEYED_COMMAND,IS_READ_ONLY:Uae.default.IS_READ_ONLY,parseCommand(...t){Uae.default.parseCommand(...t),t[0].push("NOCONTENT")},transformReply:{2:t=>({total:t[0],documents:t.slice(1)}),3:void 0},unstableResp3:!0}});var ost=_(Fae=>{"use strict";Object.defineProperty(Fae,"__esModule",{value:!0});var Uyr=C1();Fae.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){if(t.push("FT.SPELLCHECK",e,r),n?.DISTANCE&&t.push("DISTANCE",n.DISTANCE.toString()),n?.TERMS)if(Array.isArray(n.TERMS))for(let s of n.TERMS)ast(t,s);else ast(t,n.TERMS);n?.DIALECT?t.push("DIALECT",n.DIALECT.toString()):t.push("DIALECT",Uyr.DEFAULT_DIALECT)},transformReply:{2:t=>t.map(([,e,r])=>({term:e,suggestions:r.map(([n,s])=>({score:Number(n),suggestion:s}))})),3:void 0},unstableResp3:!0};function ast(t,{mode:e,dictionary:r}){t.push("TERMS",e,r)}});var cst=_(qae=>{"use strict";Object.defineProperty(qae,"__esModule",{value:!0});qae.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("FT.SUGADD"),t.pushKey(e),t.push(r,n.toString()),s?.INCR&&t.push("INCR"),s?.PAYLOAD&&t.push("PAYLOAD",s.PAYLOAD)},transformReply:void 0}});var ust=_(jae=>{"use strict";Object.defineProperty(jae,"__esModule",{value:!0});jae.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.SUGDEL"),t.pushKey(e),t.push(r)},transformReply:void 0}});var TT=_(Qae=>{"use strict";Object.defineProperty(Qae,"__esModule",{value:!0});Qae.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("FT.SUGGET"),t.pushKey(e),t.push(r),n?.FUZZY&&t.push("FUZZY"),n?.MAX!==void 0&&t.push("MAX",n.MAX.toString())},transformReply:void 0}});var dst=_(wT=>{"use strict";var Fyr=wT&&wT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(wT,"__esModule",{value:!0});var qyr=we(),lst=Fyr(TT());wT.default={IS_READ_ONLY:lst.default.IS_READ_ONLY,parseCommand(...t){lst.default.parseCommand(...t),t[0].push("WITHPAYLOADS")},transformReply(t){if((0,qyr.isNullReply)(t))return null;let e=new Array(t.length/2),r=0,n=0;for(;r{"use strict";var jyr=RT&&RT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(RT,"__esModule",{value:!0});var Hae=we(),fst=jyr(TT());RT.default={IS_READ_ONLY:fst.default.IS_READ_ONLY,parseCommand(...t){fst.default.parseCommand(...t),t[0].push("WITHSCORES","WITHPAYLOADS")},transformReply:{2:(t,e,r)=>{if((0,Hae.isNullReply)(t))return null;let n=new Array(t.length/3),s=0,i=0;for(;s{if((0,Hae.isNullReply)(t))return null;let e=new Array(t.length/3),r=0,n=0;for(;r{"use strict";var Qyr=NT&&NT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(NT,"__esModule",{value:!0});var Gae=we(),mst=Qyr(TT());NT.default={IS_READ_ONLY:mst.default.IS_READ_ONLY,parseCommand(...t){mst.default.parseCommand(...t),t[0].push("WITHSCORES")},transformReply:{2:(t,e,r)=>{if((0,Gae.isNullReply)(t))return null;let n=new Array(t.length/2),s=0,i=0;for(;s{if((0,Gae.isNullReply)(t))return null;let e=new Array(t.length/2),r=0,n=0;for(;r{"use strict";Object.defineProperty(zae,"__esModule",{value:!0});zae.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("FT.SUGLEN",e)},transformReply:void 0}});var yst=_(Kae=>{"use strict";Object.defineProperty(Kae,"__esModule",{value:!0});Kae.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("FT.SYNDUMP",e)},transformReply:{2:t=>{let e={},r=0;for(;r{"use strict";Object.defineProperty(Vae,"__esModule",{value:!0});Vae.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("FT.SYNUPDATE",e,r),s?.SKIPINITIALSCAN&&t.push("SKIPINITIALSCAN"),t.pushVariadic(n)},transformReply:void 0}});var xst=_(Yae=>{"use strict";Object.defineProperty(Yae,"__esModule",{value:!0});Yae.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.TAGVALS",e,r)},transformReply:{2:void 0,3:void 0}}});var tit=_(OT=>{"use strict";var Tr=OT&&OT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(OT,"__esModule",{value:!0});var bst=Tr(Rnt()),_st=Tr(knt()),Est=Tr(Iae()),vst=Tr(T1()),Sst=Tr(Wnt()),Ist=Tr($nt()),Cst=Tr(Unt()),Tst=Tr(Fnt()),wst=Tr(qnt()),Rst=Tr(f5()),Nst=Tr(jnt()),Ost=Tr(Qnt()),kst=Tr(Hnt()),Pst=Tr(Gnt()),Dst=Tr(znt()),Bst=Tr(Knt()),Lst=Tr(Vnt()),Mst=Tr(Ynt()),Wst=Tr(Znt()),$st=Tr(est()),Ust=Tr(rst()),Fst=Tr(sst()),qst=Tr(ist()),jst=Tr(Qg()),Qst=Tr(ost()),Hst=Tr(cst()),Gst=Tr(ust()),zst=Tr(dst()),Kst=Tr(pst()),Vst=Tr(hst()),Yst=Tr(TT()),Jst=Tr(gst()),Xst=Tr(yst()),Zst=Tr(Ast()),eit=Tr(xst());OT.default={_LIST:bst.default,_list:bst.default,ALTER:_st.default,alter:_st.default,AGGREGATE_WITHCURSOR:Est.default,aggregateWithCursor:Est.default,AGGREGATE:vst.default,aggregate:vst.default,ALIASADD:Sst.default,aliasAdd:Sst.default,ALIASDEL:Ist.default,aliasDel:Ist.default,ALIASUPDATE:Cst.default,aliasUpdate:Cst.default,CONFIG_GET:Tst.default,configGet:Tst.default,CONFIG_SET:wst.default,configSet:wst.default,CREATE:Rst.default,create:Rst.default,CURSOR_DEL:Nst.default,cursorDel:Nst.default,CURSOR_READ:Ost.default,cursorRead:Ost.default,DICTADD:kst.default,dictAdd:kst.default,DICTDEL:Pst.default,dictDel:Pst.default,DICTDUMP:Dst.default,dictDump:Dst.default,DROPINDEX:Bst.default,dropIndex:Bst.default,EXPLAIN:Lst.default,explain:Lst.default,EXPLAINCLI:Mst.default,explainCli:Mst.default,HYBRID:Wst.default,hybrid:Wst.default,INFO:$st.default,info:$st.default,PROFILESEARCH:Ust.default,profileSearch:Ust.default,PROFILEAGGREGATE:Fst.default,profileAggregate:Fst.default,SEARCH_NOCONTENT:qst.default,searchNoContent:qst.default,SEARCH:jst.default,search:jst.default,SPELLCHECK:Qst.default,spellCheck:Qst.default,SUGADD:Hst.default,sugAdd:Hst.default,SUGDEL:Gst.default,sugDel:Gst.default,SUGGET_WITHPAYLOADS:zst.default,sugGetWithPayloads:zst.default,SUGGET_WITHSCORES_WITHPAYLOADS:Kst.default,sugGetWithScoresWithPayloads:Kst.default,SUGGET_WITHSCORES:Vst.default,sugGetWithScores:Vst.default,SUGGET:Yst.default,sugGet:Yst.default,SUGLEN:Jst.default,sugLen:Jst.default,SYNDUMP:Xst.default,synDump:Xst.default,SYNUPDATE:Zst.default,synUpdate:Zst.default,TAGVALS:eit.default,tagVals:eit.default}});var Jae=_(ui=>{"use strict";var Hyr=ui&&ui.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(ui,"__esModule",{value:!0});ui.FT_AGGREGATE_STEPS=ui.FT_AGGREGATE_GROUP_BY_REDUCERS=ui.SCHEMA_VECTOR_FIELD_ALGORITHM=ui.SCHEMA_TEXT_FIELD_PHONETIC=ui.SCHEMA_FIELD_TYPE=ui.REDISEARCH_LANGUAGE=ui.default=void 0;var Gyr=tit();Object.defineProperty(ui,"default",{enumerable:!0,get:function(){return Hyr(Gyr).default}});var m5=f5();Object.defineProperty(ui,"REDISEARCH_LANGUAGE",{enumerable:!0,get:function(){return m5.REDISEARCH_LANGUAGE}});Object.defineProperty(ui,"SCHEMA_FIELD_TYPE",{enumerable:!0,get:function(){return m5.SCHEMA_FIELD_TYPE}});Object.defineProperty(ui,"SCHEMA_TEXT_FIELD_PHONETIC",{enumerable:!0,get:function(){return m5.SCHEMA_TEXT_FIELD_PHONETIC}});Object.defineProperty(ui,"SCHEMA_VECTOR_FIELD_ALGORITHM",{enumerable:!0,get:function(){return m5.SCHEMA_VECTOR_FIELD_ALGORITHM}});var rit=T1();Object.defineProperty(ui,"FT_AGGREGATE_GROUP_BY_REDUCERS",{enumerable:!0,get:function(){return rit.FT_AGGREGATE_GROUP_BY_REDUCERS}});Object.defineProperty(ui,"FT_AGGREGATE_STEPS",{enumerable:!0,get:function(){return rit.FT_AGGREGATE_STEPS}})});var li=_(_r=>{"use strict";Object.defineProperty(_r,"__esModule",{value:!0});_r.transformRESP2LabelsWithSources=_r.transformRESP2Labels=_r.parseSelectedLabelsArguments=_r.resp3MapToValue=_r.resp2MapToValue=_r.transformSamplesReply=_r.transformSampleReply=_r.parseLabelsArgument=_r.transformTimestampArgument=_r.parseDuplicatePolicy=_r.TIME_SERIES_DUPLICATE_POLICIES=_r.parseChunkSizeArgument=_r.parseEncodingArgument=_r.TIME_SERIES_ENCODING=_r.parseRetentionArgument=_r.parseIgnoreArgument=void 0;var Xae=fT();function zyr(t,e){e!==void 0&&t.push("IGNORE",e.maxTimeDiff.toString(),e.maxValDiff.toString())}_r.parseIgnoreArgument=zyr;function Kyr(t,e){e!==void 0&&t.push("RETENTION",e.toString())}_r.parseRetentionArgument=Kyr;_r.TIME_SERIES_ENCODING={COMPRESSED:"COMPRESSED",UNCOMPRESSED:"UNCOMPRESSED"};function Vyr(t,e){e!==void 0&&t.push("ENCODING",e)}_r.parseEncodingArgument=Vyr;function Yyr(t,e){e!==void 0&&t.push("CHUNK_SIZE",e.toString())}_r.parseChunkSizeArgument=Yyr;_r.TIME_SERIES_DUPLICATE_POLICIES={BLOCK:"BLOCK",FIRST:"FIRST",LAST:"LAST",MIN:"MIN",MAX:"MAX",SUM:"SUM"};function Jyr(t,e){e!==void 0&&t.push("DUPLICATE_POLICY",e)}_r.parseDuplicatePolicy=Jyr;function Xyr(t){return typeof t=="string"?t:(typeof t=="number"?t:t.getTime()).toString()}_r.transformTimestampArgument=Xyr;function Zyr(t,e){if(e){t.push("LABELS");for(let[r,n]of Object.entries(e))t.push(r,n)}}_r.parseLabelsArgument=Zyr;_r.transformSampleReply={2(t){let[e,r]=t;return{timestamp:e,value:Number(r)}},3(t){let[e,r]=t;return{timestamp:e,value:r}}};_r.transformSamplesReply={2(t){return t.map(e=>_r.transformSampleReply[2](e))},3(t){return t.map(e=>_r.transformSampleReply[3](e))}};function eAr(t,e,r){let n=t;switch(r?.[Xae.RESP_TYPES.MAP]){case Map:{let s=new Map;for(let i of n){let a=i,o=a[0];s.set(o.toString(),e(a))}return s}case Array:{for(let s of n){let i=s;i[1]=e(i)}return n}default:{let s=Object.create(null);for(let i of n){let a=i,o=a[0];s[o.toString()]=e(a)}return s}}}_r.resp2MapToValue=eAr;function tAr(t,e){let r=t;if(r instanceof Array)for(let n=1;n{"use strict";Object.defineProperty(Zae,"__esModule",{value:!0});var w1=li();Zae.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("TS.ADD"),t.pushKey(e),t.push((0,w1.transformTimestampArgument)(r),n.toString()),(0,w1.parseRetentionArgument)(t,s?.RETENTION),(0,w1.parseEncodingArgument)(t,s?.ENCODING),(0,w1.parseChunkSizeArgument)(t,s?.CHUNK_SIZE),s?.ON_DUPLICATE&&t.push("ON_DUPLICATE",s.ON_DUPLICATE),(0,w1.parseLabelsArgument)(t,s?.LABELS),(0,w1.parseIgnoreArgument)(t,s?.IGNORE)},transformReply:void 0}});var sit=_(eoe=>{"use strict";Object.defineProperty(eoe,"__esModule",{value:!0});var kT=li();eoe.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("TS.ALTER"),t.pushKey(e),(0,kT.parseRetentionArgument)(t,r?.RETENTION),(0,kT.parseChunkSizeArgument)(t,r?.CHUNK_SIZE),(0,kT.parseDuplicatePolicy)(t,r?.DUPLICATE_POLICY),(0,kT.parseLabelsArgument)(t,r?.LABELS),(0,kT.parseIgnoreArgument)(t,r?.IGNORE)},transformReply:void 0}});var iit=_(toe=>{"use strict";Object.defineProperty(toe,"__esModule",{value:!0});var R1=li();toe.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("TS.CREATE"),t.pushKey(e),(0,R1.parseRetentionArgument)(t,r?.RETENTION),(0,R1.parseEncodingArgument)(t,r?.ENCODING),(0,R1.parseChunkSizeArgument)(t,r?.CHUNK_SIZE),(0,R1.parseDuplicatePolicy)(t,r?.DUPLICATE_POLICY),(0,R1.parseLabelsArgument)(t,r?.LABELS),(0,R1.parseIgnoreArgument)(t,r?.IGNORE)},transformReply:void 0}});var roe=_(PT=>{"use strict";Object.defineProperty(PT,"__esModule",{value:!0});PT.TIME_SERIES_AGGREGATION_TYPE=void 0;PT.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"};PT.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,i){t.push("TS.CREATERULE"),t.pushKeys([e,r]),t.push("AGGREGATION",n,s.toString()),i!==void 0&&t.push(i.toString())},transformReply:void 0}});var noe=_(BT=>{"use strict";Object.defineProperty(BT,"__esModule",{value:!0});BT.parseIncrByArguments=void 0;var DT=li();function ait(t,e,r,n){t.pushKey(e),t.push(r.toString()),n?.TIMESTAMP!==void 0&&n?.TIMESTAMP!==null&&t.push("TIMESTAMP",(0,DT.transformTimestampArgument)(n.TIMESTAMP)),(0,DT.parseRetentionArgument)(t,n?.RETENTION),n?.UNCOMPRESSED&&t.push("UNCOMPRESSED"),(0,DT.parseChunkSizeArgument)(t,n?.CHUNK_SIZE),(0,DT.parseLabelsArgument)(t,n?.LABELS),(0,DT.parseIgnoreArgument)(t,n?.IGNORE)}BT.parseIncrByArguments=ait;BT.default={IS_READ_ONLY:!1,parseCommand(...t){t[0].push("TS.INCRBY"),ait(...t)},transformReply:void 0}});var oit=_(Yf=>{"use strict";var aAr=Yf&&Yf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),oAr=Yf&&Yf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),cAr=Yf&&Yf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&aAr(e,t,r);return oAr(e,t),e};Object.defineProperty(Yf,"__esModule",{value:!0});var soe=cAr(noe());Yf.default={IS_READ_ONLY:soe.default.IS_READ_ONLY,parseCommand(...t){t[0].push("TS.DECRBY"),(0,soe.parseIncrByArguments)(...t)},transformReply:soe.default.transformReply}});var uit=_(ioe=>{"use strict";Object.defineProperty(ioe,"__esModule",{value:!0});var cit=li();ioe.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("TS.DEL"),t.pushKey(e),t.push((0,cit.transformTimestampArgument)(r),(0,cit.transformTimestampArgument)(n))},transformReply:void 0}});var lit=_(aoe=>{"use strict";Object.defineProperty(aoe,"__esModule",{value:!0});aoe.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("TS.DELETERULE"),t.pushKeys([e,r])},transformReply:void 0}});var dit=_(ooe=>{"use strict";Object.defineProperty(ooe,"__esModule",{value:!0});ooe.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("TS.GET"),t.pushKey(e),r?.LATEST&&t.push("LATEST")},transformReply:{2(t){return t.length===0?null:{timestamp:t[0],value:Number(t[1])}},3(t){return t.length===0?null:{timestamp:t[0],value:t[1]}}}}});var uoe=_(coe=>{"use strict";Object.defineProperty(coe,"__esModule",{value:!0});var uAr=we();coe.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("TS.INFO"),t.pushKey(e)},transformReply:{2:(t,e,r)=>{let n={};for(let s=0;s({name:a,value:o}));break;case"rules":n[i]=t[s+1].map(([a,o,c])=>({key:a,timeBucket:o,aggregationType:c}));break;case"ignoreMaxValDiff":n[i]=uAr.transformDoubleReply[2](t[27],void 0,r);break}}return n},3:void 0},unstableResp3:!0}});var fit=_(LT=>{"use strict";var lAr=LT&<.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(LT,"__esModule",{value:!0});var loe=lAr(uoe());LT.default={IS_READ_ONLY:loe.default.IS_READ_ONLY,parseCommand(t,e){loe.default.parseCommand(t,e),t.push("DEBUG")},transformReply:{2:(t,e,r)=>{let n=loe.default.transformReply[2](t,e,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 pit=_(doe=>{"use strict";Object.defineProperty(doe,"__esModule",{value:!0});var dAr=li();doe.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("TS.MADD");for(let{key:r,timestamp:n,value:s}of e)t.pushKey(r),t.push((0,dAr.transformTimestampArgument)(n),s.toString())},transformReply:void 0}});var nd=_(Hg=>{"use strict";Object.defineProperty(Hg,"__esModule",{value:!0});Hg.parseFilterArgument=Hg.parseLatestArgument=void 0;var h5=li();function mit(t,e){e&&t.push("LATEST")}Hg.parseLatestArgument=mit;function hit(t,e){t.push("FILTER"),t.pushVariadic(e)}Hg.parseFilterArgument=hit;Hg.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("TS.MGET"),mit(t,r?.LATEST),hit(t,e)},transformReply:{2(t,e,r){return(0,h5.resp2MapToValue)(t,([,,n])=>({sample:h5.transformSampleReply[2](n)}),r)},3(t){return(0,h5.resp3MapToValue)(t,([,e])=>({sample:h5.transformSampleReply[3](e)}))}}}});var foe=_(WT=>{"use strict";Object.defineProperty(WT,"__esModule",{value:!0});WT.createTransformMGetLabelsReply=void 0;var git=nd(),MT=li();function yit(){return{2(t,e,r){return(0,MT.resp2MapToValue)(t,([,n,s])=>({labels:(0,MT.transformRESP2Labels)(n),sample:MT.transformSampleReply[2](s)}),r)},3(t){return(0,MT.resp3MapToValue)(t,([e,r])=>({labels:e,sample:MT.transformSampleReply[3](r)}))}}}WT.createTransformMGetLabelsReply=yit;WT.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("TS.MGET"),(0,git.parseLatestArgument)(t,r?.LATEST),t.push("WITHLABELS"),(0,git.parseFilterArgument)(t,e)},transformReply:yit()}});var xit=_(poe=>{"use strict";Object.defineProperty(poe,"__esModule",{value:!0});var Ait=nd(),fAr=li(),pAr=foe();poe.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("TS.MGET"),(0,Ait.parseLatestArgument)(t,n?.LATEST),(0,fAr.parseSelectedLabelsArguments)(t,r),(0,Ait.parseFilterArgument)(t,e)},transformReply:(0,pAr.createTransformMGetLabelsReply)()}});var sd=_(Jf=>{"use strict";Object.defineProperty(Jf,"__esModule",{value:!0});Jf.transformRangeArguments=Jf.parseRangeArguments=Jf.TIME_SERIES_BUCKET_TIMESTAMP=void 0;var Gg=li();Jf.TIME_SERIES_BUCKET_TIMESTAMP={LOW:"-",MIDDLE:"~",END:"+"};function bit(t,e,r,n){if(t.push((0,Gg.transformTimestampArgument)(e),(0,Gg.transformTimestampArgument)(r)),n?.LATEST&&t.push("LATEST"),n?.FILTER_BY_TS){t.push("FILTER_BY_TS");for(let s of n.FILTER_BY_TS)t.push((0,Gg.transformTimestampArgument)(s))}n?.FILTER_BY_VALUE&&t.push("FILTER_BY_VALUE",n.FILTER_BY_VALUE.min.toString(),n.FILTER_BY_VALUE.max.toString()),n?.COUNT!==void 0&&t.push("COUNT",n.COUNT.toString()),n?.AGGREGATION&&(n?.ALIGN!==void 0&&t.push("ALIGN",(0,Gg.transformTimestampArgument)(n.ALIGN)),t.push("AGGREGATION",n.AGGREGATION.type,(0,Gg.transformTimestampArgument)(n.AGGREGATION.timeBucket)),n.AGGREGATION.BUCKETTIMESTAMP&&t.push("BUCKETTIMESTAMP",n.AGGREGATION.BUCKETTIMESTAMP),n.AGGREGATION.EMPTY&&t.push("EMPTY"))}Jf.parseRangeArguments=bit;function _it(t,e,r,n,s){t.pushKey(e),bit(t,r,n,s)}Jf.transformRangeArguments=_it;Jf.default={IS_READ_ONLY:!0,parseCommand(...t){t[0].push("TS.RANGE"),_it(...t)},transformReply:{2(t){return Gg.transformSamplesReply[2](t)},3(t){return Gg.transformSamplesReply[3](t)}}}});var N1=_(Mu=>{"use strict";Object.defineProperty(Mu,"__esModule",{value:!0});Mu.extractResp3MRangeSources=Mu.createTransformMRangeGroupByArguments=Mu.parseGroupByArguments=Mu.TIME_SERIES_REDUCERS=void 0;var g5=li(),mAr=sd(),hAr=nd();Mu.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 Eit(t,e){t.push("GROUPBY",e.label,"REDUCE",e.REDUCE)}Mu.parseGroupByArguments=Eit;function vit(t){return(e,r,n,s,i,a)=>{e.push(t),(0,mAr.parseRangeArguments)(e,r,n,a),(0,hAr.parseFilterArgument)(e,s),Eit(e,i)}}Mu.createTransformMRangeGroupByArguments=vit;function Sit(t){let e=t;return e instanceof Map?e.get("sources"):e instanceof Array?e[1]:e.sources}Mu.extractResp3MRangeSources=Sit;Mu.default={IS_READ_ONLY:!0,parseCommand:vit("TS.MRANGE"),transformReply:{2(t,e,r){return(0,g5.resp2MapToValue)(t,([n,s,i])=>({samples:g5.transformSamplesReply[2](i)}),r)},3(t){return(0,g5.resp3MapToValue)(t,([e,r,n,s])=>({sources:Sit(n),samples:g5.transformSamplesReply[3](s)}))}}}});var y5=_($T=>{"use strict";Object.defineProperty($T,"__esModule",{value:!0});$T.createTransformMRangeSelectedLabelsArguments=void 0;var O1=li(),gAr=sd(),yAr=nd();function Iit(t){return(e,r,n,s,i,a)=>{e.push(t),(0,gAr.parseRangeArguments)(e,r,n,a),(0,O1.parseSelectedLabelsArguments)(e,s),(0,yAr.parseFilterArgument)(e,i)}}$T.createTransformMRangeSelectedLabelsArguments=Iit;$T.default={IS_READ_ONLY:!0,parseCommand:Iit("TS.MRANGE"),transformReply:{2(t,e,r){return(0,O1.resp2MapToValue)(t,([n,s,i])=>({labels:(0,O1.transformRESP2Labels)(s,r),samples:O1.transformSamplesReply[2](i)}),r)},3(t){return(0,O1.resp3MapToValue)(t,([e,r,n])=>({labels:r,samples:O1.transformSamplesReply[3](n)}))}}}});var hoe=_(zg=>{"use strict";var AAr=zg&&zg.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(zg,"__esModule",{value:!0});zg.createMRangeSelectedLabelsGroupByTransformArguments=void 0;var moe=li(),xAr=sd(),Cit=N1(),bAr=nd(),_Ar=AAr(y5());function Tit(t){return(e,r,n,s,i,a,o)=>{e.push(t),(0,xAr.parseRangeArguments)(e,r,n,o),(0,moe.parseSelectedLabelsArguments)(e,s),(0,bAr.parseFilterArgument)(e,i),(0,Cit.parseGroupByArguments)(e,a)}}zg.createMRangeSelectedLabelsGroupByTransformArguments=Tit;zg.default={IS_READ_ONLY:!0,parseCommand:Tit("TS.MRANGE"),transformReply:{2:_Ar.default.transformReply[2],3(t){return(0,moe.resp3MapToValue)(t,([e,r,n,s])=>({labels:e,sources:(0,Cit.extractResp3MRangeSources)(n),samples:moe.transformSamplesReply[3](s)}))}}}});var goe=_(FT=>{"use strict";Object.defineProperty(FT,"__esModule",{value:!0});FT.createMRangeWithLabelsGroupByTransformArguments=void 0;var UT=li(),EAr=sd(),wit=N1(),vAr=nd();function Rit(t){return(e,r,n,s,i,a)=>{e.push(t),(0,EAr.parseRangeArguments)(e,r,n,a),e.push("WITHLABELS"),(0,vAr.parseFilterArgument)(e,s),(0,wit.parseGroupByArguments)(e,i)}}FT.createMRangeWithLabelsGroupByTransformArguments=Rit;FT.default={IS_READ_ONLY:!0,parseCommand:Rit("TS.MRANGE"),transformReply:{2(t,e,r){return(0,UT.resp2MapToValue)(t,([n,s,i])=>{let a=(0,UT.transformRESP2LabelsWithSources)(s);return{labels:a.labels,sources:a.sources,samples:UT.transformSamplesReply[2](i)}},r)},3(t){return(0,UT.resp3MapToValue)(t,([e,r,n,s])=>({labels:e,sources:(0,wit.extractResp3MRangeSources)(n),samples:UT.transformSamplesReply[3](s)}))}}}});var yoe=_(qT=>{"use strict";Object.defineProperty(qT,"__esModule",{value:!0});qT.createTransformMRangeWithLabelsArguments=void 0;var A5=li(),SAr=sd(),IAr=nd();function Nit(t){return(e,r,n,s,i)=>{e.push(t),(0,SAr.parseRangeArguments)(e,r,n,i),e.push("WITHLABELS"),(0,IAr.parseFilterArgument)(e,s)}}qT.createTransformMRangeWithLabelsArguments=Nit;qT.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand:Nit("TS.MRANGE"),transformReply:{2(t,e,r){return(0,A5.resp2MapToValue)(t,([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:A5.transformSamplesReply[2](i)}},r)},3(t){return(0,A5.resp3MapToValue)(t,([e,r,n])=>({labels:e,samples:A5.transformSamplesReply[3](n)}))}}}});var Aoe=_(jT=>{"use strict";Object.defineProperty(jT,"__esModule",{value:!0});jT.createTransformMRangeArguments=void 0;var x5=li(),CAr=sd(),TAr=nd();function Oit(t){return(e,r,n,s,i)=>{e.push(t),(0,CAr.parseRangeArguments)(e,r,n,i),(0,TAr.parseFilterArgument)(e,s)}}jT.createTransformMRangeArguments=Oit;jT.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand:Oit("TS.MRANGE"),transformReply:{2(t,e,r){return(0,x5.resp2MapToValue)(t,([n,s,i])=>x5.transformSamplesReply[2](i),r)},3(t){return(0,x5.resp3MapToValue)(t,([e,r,n])=>x5.transformSamplesReply[3](n))}}}});var kit=_(Xf=>{"use strict";var wAr=Xf&&Xf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),RAr=Xf&&Xf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),NAr=Xf&&Xf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&wAr(e,t,r);return RAr(e,t),e};Object.defineProperty(Xf,"__esModule",{value:!0});var xoe=NAr(N1());Xf.default={IS_READ_ONLY:xoe.default.IS_READ_ONLY,parseCommand:(0,xoe.createTransformMRangeGroupByArguments)("TS.MREVRANGE"),transformReply:xoe.default.transformReply}});var Pit=_(Zf=>{"use strict";var OAr=Zf&&Zf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),kAr=Zf&&Zf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),PAr=Zf&&Zf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&OAr(e,t,r);return kAr(e,t),e};Object.defineProperty(Zf,"__esModule",{value:!0});var boe=PAr(hoe());Zf.default={IS_READ_ONLY:boe.default.IS_READ_ONLY,parseCommand:(0,boe.createMRangeSelectedLabelsGroupByTransformArguments)("TS.MREVRANGE"),transformReply:boe.default.transformReply}});var Dit=_(ep=>{"use strict";var DAr=ep&&ep.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),BAr=ep&&ep.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),LAr=ep&&ep.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&DAr(e,t,r);return BAr(e,t),e};Object.defineProperty(ep,"__esModule",{value:!0});var _oe=LAr(y5());ep.default={IS_READ_ONLY:_oe.default.IS_READ_ONLY,parseCommand:(0,_oe.createTransformMRangeSelectedLabelsArguments)("TS.MREVRANGE"),transformReply:_oe.default.transformReply}});var Bit=_(tp=>{"use strict";var MAr=tp&&tp.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),WAr=tp&&tp.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),$Ar=tp&&tp.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&MAr(e,t,r);return WAr(e,t),e};Object.defineProperty(tp,"__esModule",{value:!0});var Eoe=$Ar(goe());tp.default={IS_READ_ONLY:Eoe.default.IS_READ_ONLY,parseCommand:(0,Eoe.createMRangeWithLabelsGroupByTransformArguments)("TS.MREVRANGE"),transformReply:Eoe.default.transformReply}});var Lit=_(rp=>{"use strict";var UAr=rp&&rp.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),FAr=rp&&rp.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),qAr=rp&&rp.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&UAr(e,t,r);return FAr(e,t),e};Object.defineProperty(rp,"__esModule",{value:!0});var b5=qAr(yoe());rp.default={NOT_KEYED_COMMAND:b5.default.NOT_KEYED_COMMAND,IS_READ_ONLY:b5.default.IS_READ_ONLY,parseCommand:(0,b5.createTransformMRangeWithLabelsArguments)("TS.MREVRANGE"),transformReply:b5.default.transformReply}});var Mit=_(np=>{"use strict";var jAr=np&&np.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),QAr=np&&np.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),HAr=np&&np.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&jAr(e,t,r);return QAr(e,t),e};Object.defineProperty(np,"__esModule",{value:!0});var _5=HAr(Aoe());np.default={NOT_KEYED_COMMAND:_5.default.NOT_KEYED_COMMAND,IS_READ_ONLY:_5.default.IS_READ_ONLY,parseCommand:(0,_5.createTransformMRangeArguments)("TS.MREVRANGE"),transformReply:_5.default.transformReply}});var Wit=_(voe=>{"use strict";Object.defineProperty(voe,"__esModule",{value:!0});voe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("TS.QUERYINDEX"),t.pushVariadic(e)},transformReply:{2:void 0,3:void 0}}});var $it=_(sp=>{"use strict";var GAr=sp&&sp.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),zAr=sp&&sp.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),KAr=sp&&sp.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&GAr(e,t,r);return zAr(e,t),e};Object.defineProperty(sp,"__esModule",{value:!0});var Soe=KAr(sd());sp.default={IS_READ_ONLY:Soe.default.IS_READ_ONLY,parseCommand(...t){t[0].push("TS.REVRANGE"),(0,Soe.transformRangeArguments)(...t)},transformReply:Soe.default.transformReply}});var gat=_(id=>{"use strict";var VAr=id&&id.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),YAr=id&&id.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&VAr(e,t,r)},Kr=id&&id.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(id,"__esModule",{value:!0});var Uit=Kr(nit()),Fit=Kr(sit()),qit=Kr(iit()),jit=Kr(roe()),Qit=Kr(oit()),Hit=Kr(uit()),Git=Kr(lit()),zit=Kr(dit()),Kit=Kr(noe()),Vit=Kr(fit()),Yit=Kr(uoe()),Jit=Kr(pit()),Xit=Kr(xit()),Zit=Kr(foe()),eat=Kr(nd()),tat=Kr(N1()),rat=Kr(hoe()),nat=Kr(y5()),sat=Kr(goe()),iat=Kr(yoe()),aat=Kr(Aoe()),oat=Kr(kit()),cat=Kr(Pit()),uat=Kr(Dit()),lat=Kr(Bit()),dat=Kr(Lit()),fat=Kr(Mit()),pat=Kr(Wit()),mat=Kr(sd()),hat=Kr($it());YAr(li(),id);id.default={ADD:Uit.default,add:Uit.default,ALTER:Fit.default,alter:Fit.default,CREATE:qit.default,create:qit.default,CREATERULE:jit.default,createRule:jit.default,DECRBY:Qit.default,decrBy:Qit.default,DEL:Hit.default,del:Hit.default,DELETERULE:Git.default,deleteRule:Git.default,GET:zit.default,get:zit.default,INCRBY:Kit.default,incrBy:Kit.default,INFO_DEBUG:Vit.default,infoDebug:Vit.default,INFO:Yit.default,info:Yit.default,MADD:Jit.default,mAdd:Jit.default,MGET_SELECTED_LABELS:Xit.default,mGetSelectedLabels:Xit.default,MGET_WITHLABELS:Zit.default,mGetWithLabels:Zit.default,MGET:eat.default,mGet:eat.default,MRANGE_GROUPBY:tat.default,mRangeGroupBy:tat.default,MRANGE_SELECTED_LABELS_GROUPBY:rat.default,mRangeSelectedLabelsGroupBy:rat.default,MRANGE_SELECTED_LABELS:nat.default,mRangeSelectedLabels:nat.default,MRANGE_WITHLABELS_GROUPBY:sat.default,mRangeWithLabelsGroupBy:sat.default,MRANGE_WITHLABELS:iat.default,mRangeWithLabels:iat.default,MRANGE:aat.default,mRange:aat.default,MREVRANGE_GROUPBY:oat.default,mRevRangeGroupBy:oat.default,MREVRANGE_SELECTED_LABELS_GROUPBY:cat.default,mRevRangeSelectedLabelsGroupBy:cat.default,MREVRANGE_SELECTED_LABELS:uat.default,mRevRangeSelectedLabels:uat.default,MREVRANGE_WITHLABELS_GROUPBY:lat.default,mRevRangeWithLabelsGroupBy:lat.default,MREVRANGE_WITHLABELS:dat.default,mRevRangeWithLabels:dat.default,MREVRANGE:fat.default,mRevRange:fat.default,QUERYINDEX:pat.default,queryIndex:pat.default,RANGE:mat.default,range:mat.default,REVRANGE:hat.default,revRange:hat.default}});var Coe=_(ra=>{"use strict";var JAr=ra&&ra.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(ra,"__esModule",{value:!0});ra.TIME_SERIES_REDUCERS=ra.TIME_SERIES_BUCKET_TIMESTAMP=ra.TIME_SERIES_AGGREGATION_TYPE=ra.TIME_SERIES_DUPLICATE_POLICIES=ra.TIME_SERIES_ENCODING=ra.default=void 0;var Ioe=gat();Object.defineProperty(ra,"default",{enumerable:!0,get:function(){return JAr(Ioe).default}});Object.defineProperty(ra,"TIME_SERIES_ENCODING",{enumerable:!0,get:function(){return Ioe.TIME_SERIES_ENCODING}});Object.defineProperty(ra,"TIME_SERIES_DUPLICATE_POLICIES",{enumerable:!0,get:function(){return Ioe.TIME_SERIES_DUPLICATE_POLICIES}});var XAr=roe();Object.defineProperty(ra,"TIME_SERIES_AGGREGATION_TYPE",{enumerable:!0,get:function(){return XAr.TIME_SERIES_AGGREGATION_TYPE}});var ZAr=sd();Object.defineProperty(ra,"TIME_SERIES_BUCKET_TIMESTAMP",{enumerable:!0,get:function(){return ZAr.TIME_SERIES_BUCKET_TIMESTAMP}});var exr=N1();Object.defineProperty(ra,"TIME_SERIES_REDUCERS",{enumerable:!0,get:function(){return exr.TIME_SERIES_REDUCERS}})});var yat=_(As=>{"use strict";var txr=As&&As.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),QT=As&&As.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&txr(e,t,r)},E5=As&&As.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(As,"__esModule",{value:!0});As.createSentinel=As.createCluster=As.createClientPool=As.createClient=void 0;var v5=fT(),rxr=E5(zie()),nxr=E5(xae()),sxr=E5(Jae()),ixr=E5(Coe());QT(fT(),As);QT(zie(),As);QT(xae(),As);QT(Jae(),As);QT(Coe(),As);var S5={...rxr.default,json:nxr.default,ft:sxr.default,ts:ixr.default};function axr(t){return(0,v5.createClient)({...t,modules:{...S5,...t?.modules}})}As.createClient=axr;function oxr(t,e){return(0,v5.createClientPool)({...t,modules:{...S5,...t?.modules}},e)}As.createClientPool=oxr;function cxr(t){return(0,v5.createCluster)({...t,modules:{...S5,...t?.modules}})}As.createCluster=cxr;function uxr(t){return(0,v5.createSentinel)({...t,modules:{...S5,...t?.modules}})}As.createSentinel=uxr});var T5={};os(T5,{closeLocalRedisConnection:()=>pxr,getLocalRedisCaches:()=>dxr,getLocalRedisKey:()=>Aat,judgeLocalRedisValid:()=>fxr,setLocalRedisKey:()=>I5,setLocalRedisKeyWithExpiry:()=>lxr,updateLocalRedisCaches:()=>C5});async function k1(){if(ns)return ns;let t=O.localRedisUrl;try{E("info","[Utils] [Local-Redis] \u6B63\u5728\u8FDE\u63A5\u672C\u5730 Redis");let{createClient:e}=await Promise.resolve().then(()=>Ce(yat(),1));return ns=e({url:t,socket:{reconnectStrategy:r=>r>=0?new Error("\u5DF2\u8FBE\u5230\u6700\u5927\u91CD\u8BD5\u6B21\u6570\uFF0C\u505C\u6B62\u91CD\u8FDE"):1e3}}),ns.on("error",r=>{E("error","[Utils] [Local-Redis] \u8FDE\u63A5\u9519\u8BEF"),O.localRedisValid=!1}),ns.on("connect",()=>{E("info","[Utils] [Local-Redis] \u8FDE\u63A5\u6210\u529F")}),await ns.connect(),O.localRedisValid=!0,E("info","[Utils] [Local-Redis] Redis \u5BA2\u6237\u7AEF\u521D\u59CB\u5316\u5B8C\u6210"),ns}catch(e){return E("error","[Utils] [Local-Redis] \u521D\u59CB\u5316\u5931\u8D25:",e.message),O.localRedisValid=!1,null}}async function P1(){if(!ns)return!1;try{return await ns.ping()==="PONG"}catch(t){return E("error","[Utils] [Local-Redis] \u8FDE\u63A5\u68C0\u67E5\u5931\u8D25:",t.message),O.localRedisValid=!1,!1}}async function Aat(t){try{if(await P1()||await k1(),!ns)throw new Error("\u672C\u5730 Redis \u5BA2\u6237\u7AEF\u672A\u521D\u59CB\u5316");return await ns.get(t)}catch(e){return E("error","[Utils] [Local-Redis] GET \u8BF7\u6C42\u5931\u8D25:",e.message),null}}async function I5(t,e){let r=zb(t,e),n=sn(r);if(O.lastHashes[t]===n)return E("info",`[Utils] [Local-Redis] \u952E ${t} \u65E0\u53D8\u5316\uFF0C\u8DF3\u8FC7 SET \u8BF7\u6C42`),{result:"OK"};try{if(await P1()||await k1(),!ns)throw new Error("\u672C\u5730 Redis \u5BA2\u6237\u7AEF\u672A\u521D\u59CB\u5316");let s=await ns.set(t,r);return O.lastHashes[t]=n,E("info",`[Utils] [Local-Redis] \u952E ${t} \u66F4\u65B0\u6210\u529F`),{result:s}}catch(s){return E("error","[Utils] [Local-Redis] SET \u8BF7\u6C42\u5931\u8D25:",s.message),{result:"ERROR"}}}async function lxr(t,e,r){let n=zb(t,e),s=sn(n);if(O.lastHashes[t]===s)return E("info",`[Utils] [Local-Redis] \u952E ${t} \u65E0\u53D8\u5316\uFF0C\u8DF3\u8FC7 SETEX \u8BF7\u6C42`),{result:"OK"};try{if(await P1()||await k1(),!ns)throw new Error("\u672C\u5730 Redis \u5BA2\u6237\u7AEF\u672A\u521D\u59CB\u5316");let i=await ns.setEx(t,r,n);return O.lastHashes[t]=s,E("info",`[Utils] [Local-Redis] \u952E ${t} \u66F4\u65B0\u6210\u529F\uFF08\u5E26\u8FC7\u671F\u65F6\u95F4 ${r}s\uFF09`),{result:i}}catch(i){return E("error","[Utils] [Local-Redis] SETEX \u8BF7\u6C42\u5931\u8D25:",i.message),{result:"ERROR"}}}async function dxr(){if(!O.localCacheInitialized)try{if(E("info","[Utils] [Local-Redis] getLocalRedisCaches start."),await P1()||await k1(),!ns)throw new Error("\u672C\u5730 Redis \u5BA2\u6237\u7AEF\u672A\u521D\u59CB\u5316");let t=["animes","episodeIds","episodeNum","reqRecords","lastSelectMap","todayReqNum"],e=await Promise.all(t.map(n=>Aat(n)));O.animes=e[0]?JSON.parse(e[0]):O.animes,O.episodeIds=e[1]?JSON.parse(e[1]):O.episodeIds,O.episodeNum=e[2]?JSON.parse(e[2]):O.episodeNum,O.reqRecords=e[3]?JSON.parse(e[3]):O.reqRecords;let r=e[4]?JSON.parse(e[4]):null;r&&typeof r=="object"&&(O.lastSelectMap=new Map(Object.entries(r)),E("info",`[Utils] [Local-Redis] Restored lastSelectMap from Local Redis with ${O.lastSelectMap.size} entries`)),O.todayReqNum=e[5]?parseInt(e[5],10):O.todayReqNum,O.lastHashes.animes=sn(JSON.stringify(O.animes)),O.lastHashes.episodeIds=sn(JSON.stringify(O.episodeIds)),O.lastHashes.episodeNum=sn(JSON.stringify(O.episodeNum)),O.lastHashes.reqRecords=sn(JSON.stringify(O.reqRecords)),O.lastHashes.lastSelectMap=sn(JSON.stringify(Object.fromEntries(O.lastSelectMap))),O.lastHashes.todayReqNum=sn(JSON.stringify(O.todayReqNum)),O.localCacheInitialized=!0,E("info","[Utils] [Local-Redis] getLocalRedisCaches completed successfully.")}catch(t){E("error",`[Utils] [Local-Redis] getLocalRedisCaches failed: ${t.message}`,t.stack),O.localCacheInitialized=!0}}async function C5(){try{if(E("info","[Utils] [Local-Redis] updateLocalRedisCaches start."),await P1()||await k1(),!ns)throw new Error("\u672C\u5730 Redis \u5BA2\u6237\u7AEF\u672A\u521D\u59CB\u5316");let t=[],e=[{key:"animes",value:O.animes},{key:"episodeIds",value:O.episodeIds},{key:"episodeNum",value:O.episodeNum},{key:"reqRecords",value:O.reqRecords},{key:"lastSelectMap",value:O.lastSelectMap},{key:"todayReqNum",value:O.todayReqNum}];for(let{key:r,value:n}of e){let s=JSON.stringify(r==="lastSelectMap"?Object.fromEntries(n):n),i=sn(s);i!==O.lastHashes[r]&&t.push({key:r,value:n,hash:i})}if(t.length>0){E("info",`[Utils] [Local-Redis] Updating ${t.length} changed keys: ${t.map(a=>a.key).join(", ")}`);let r=t.map(async({key:a,value:o})=>I5(a,o)),n=await Promise.all(r),s=0,i=0;n.forEach((a,o)=>{a&&a.result==="OK"?s++:(i++,E("warn",`[Utils] [Local-Redis] Failed to update Local Redis key: ${t[o]?.key}, result: ${JSON.stringify(a)}`))}),i===0?(t.forEach(({key:a,hash:o})=>{O.lastHashes[a]=o}),E("info",`[Utils] [Local-Redis] Local Redis update completed successfully: ${s} keys updated`)):E("warn",`[Utils] [Local-Redis] Local Redis update partially failed: ${s} succeeded, ${i} failed`)}else E("info","[Utils] [Local-Redis] No changes detected, skipping Local Redis update.")}catch(t){E("error",`[Utils] [Local-Redis] updateLocalRedisCaches failed: ${t.message}`,t.stack),E("error",`[Utils] [Local-Redis] Error details - Name: ${t.name}, Cause: ${t.cause?t.cause.message:"N/A"}`)}}async function fxr(t){if(!O.localRedisValid&&O.localRedisUrl&&t!=="/favicon.ico"&&t!=="/robots.txt")try{await P1()||await k1(),ns&&await ns.ping()==="PONG"&&(O.localRedisValid=!0)}catch(e){E("error","[Utils] [Local-Redis] \u8FDE\u63A5\u68C0\u67E5\u5931\u8D25:",e.message),O.localRedisValid=!1}}async function pxr(){if(ns)try{await ns.quit(),ns=null,O.localRedisValid=!1,E("info","[Utils] [Local-Redis] \u8FDE\u63A5\u5DF2\u5173\u95ED")}catch(t){E("error","[Utils] [Local-Redis] \u5173\u95ED\u8FDE\u63A5\u5931\u8D25:",t.message)}}var ns,HT=gr(()=>{kt();vt();ws();ns=null});var Ho,U1=gr(()=>{kt();vt();Ho=class{constructor(){}updateLocalEnv(e,r){return typeof O.env<"u"?O.env[e]=r:typeof process<"u"&&(process.env[e]=r),O.reInit(),E("info",`[system] [Server] \u2713 Environment variable updated successfully: ${e}`),!0}delLocalEnv(e){return typeof O.env<"u"&&O.env[e]?delete O.env[e]:typeof process<"u"&&process.env?.[e]&&delete process.env[e],O.reInit(),E("info",`[system] [Server] \u2713 Environment variable deleted successfully: ${e}`),!0}getAllEnv(){let e=O.originalEnvVars,r=O.envVarConfig,n={};for(let[s,i]of Object.entries(e)){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(e){return this.getAllEnv()[e]}async setEnv(e,r){throw new Error("Method 'setEnv' must be implemented")}async addEnv(e,r){throw new Error("Method 'addEnv' must be implemented")}async delEnv(e){throw new Error("Method 'delEnv' must be implemented")}async checkParams(e,r,n){throw new Error("Method 'checkParams' must be implemented")}async deploy(e,r,n){throw new Error("Method 'deploy' must be implemented")}}});var Xot={};os(Xot,{CloudflareHandler:()=>zoe});var zoe,Zot=gr(()=>{U1();kt();vt();dr();zoe=class extends Ho{API_URL="https://api.cloudflare.com";async _getAllEnvs(e,r,n){let s=`${this.API_URL}/client/v4/accounts/${e}/workers/scripts/${r}/settings`,i={headers:{Authorization:`Bearer ${n}`}},a=await Ae(s,i);return a&&a?.data&&a?.data?.result&&a?.data?.result?.bindings?a?.data?.result?.bindings:null}_setEnv(e,r,n){let s=e.findIndex(i=>i.name===r);return n==null?s!==-1&&e.splice(s,1):s!==-1?e[s].text=n:e.push({name:r,text:n,type:"plain_text"}),e}async setEnv(e,r){try{let n=await this._getAllEnvs(O.deployPlatformAccount,O.deployPlatformProject,O.deployPlatformToken);if(n===null){E("error","[system] [Server] \u2717 Failed to set environment variable: envs is null");return}let s=`${this.API_URL}/client/v4/accounts/${O.deployPlatformAccount}/workers/scripts/${O.deployPlatformProject}/settings`,i={headers:{Authorization:`Bearer ${O.deployPlatformToken}`}},a=new FormData,o={bindings:this._setEnv(n,e,r==null?null:r.toString())};return a.append("settings",new Blob([JSON.stringify(o)],{type:"application/json"}),"settings.json"),await iL(s,a,i),this.updateLocalEnv(e,r)}catch(n){E("error","[system] [Server] \u2717 Failed to set environment variable:",n.message)}}async addEnv(e,r){return await this.setEnv(e,r)}async delEnv(e){return await this.setEnv(e,null),this.delLocalEnv(e)}async checkParams(e,r,n){try{return await this._getAllEnvs(e,r,n),!0}catch(s){return E("error","[system] [Server] checkParams failed! accountId, projectId or token is not valid:",s.message),!1}}async deploy(){return E("info","[system] [Server] After modifying the environment variables on the cloudflare platform, it will be automatically deployed."),!0}}});var ect={};os(ect,{VercelHandler:()=>Koe});var Koe,tct=gr(()=>{U1();kt();vt();dr();Koe=class extends Ho{API_URL="https://api.vercel.com";async _getAllEnvs(e,r){let n=`${this.API_URL}/v10/projects/${e}/env`,s={headers:{Authorization:`Bearer ${r}`}};return(await Ae(n,s)).data.envs}async _getEevId(e){try{let n=(await this._getAllEnvs(O.deployPlatformProject,O.deployPlatformToken)).find(s=>s.key===e);return n||null}catch(r){E("error","[system] [Server] \u2717 Failed to _getEevId:",r.message)}}async setEnv(e,r){let n=await this._getEevId(e);if(!n){E("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/${O.deployPlatformProject}/env/${n.id}`,i={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}},a={key:e,value:r.toString(),target:n.target,type:n.type};return await iL(s,JSON.stringify(a),i),this.updateLocalEnv(e,r)}catch(s){E("error","[system] [Server] \u2717 Failed to set environment variable:",s.message)}}async addEnv(e,r){try{let n=`${this.API_URL}/v10/projects/${O.deployPlatformProject}/env`,s={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}},i={key:e,value:r.toString(),target:["production","preview","development"],type:"encrypted"};return await Gr(n,JSON.stringify(i),s),this.updateLocalEnv(e,r)}catch(n){E("error","[system] [Server] \u2717 Failed to add environment variable:",n.message)}}async delEnv(e){let r=await this._getEevId(e);if(!r){E("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/${O.deployPlatformProject}/env/${r.id}`,s={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}};return await Hb(n,s),this.delLocalEnv(e)}catch(n){E("error","[system] [Server] \u2717 Failed to add environment variable:",n.message)}}async checkParams(e,r,n){try{return await this._getAllEnvs(r,n),!0}catch(s){return E("error","[system] [Server] checkParams failed! projectId or token is not valid:",s.message),!1}}async deploy(){try{let e=`${this.API_URL}/v6/deployments?projectId=${O.deployPlatformProject}&limit=1`,r={headers:{Authorization:`Bearer ${O.deployPlatformToken}`}},n=await Ae(e,r),s;if(n?.data&&n?.data?.deployments&&n?.data?.deployments.length>0)s=n.data.deployments[0].uid;else return E("error","[system] [Server] \u2717 Failed to deploy:",JSON.stringify(n?.data)),!1;let i=`${this.API_URL}/v13/deployments`,a={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}},o={name:O.deployPlatformProject,deploymentId:s,target:"production"},c=await Gr(i,JSON.stringify(o),a);return c?.data?.id?!0:(E("error","[system] [Server] \u2717 Failed to deploy:",JSON.stringify(c?.data)),!1)}catch(e){return E("error","[system] [Server] \u2717 Failed to deploy:",e.message),!1}}}});var rct={};os(rct,{NetlifyHandler:()=>Voe});var Voe,nct=gr(()=>{U1();kt();vt();dr();Voe=class extends Ho{API_URL="https://api.netlify.com";async _getAllEnvs(e,r,n){let s=`${this.API_URL}/api/v1/accounts/${e}/env?site_id=${r}`,i={headers:{Authorization:`Bearer ${n}`}};return await Ae(s,i)}async setEnv(e,r){try{let n=`${this.API_URL}/api/v1/accounts/${O.deployPlatformAccount}/env/${e}?site_id=${O.deployPlatformProject}`,s={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}},i={key:e,values:[{context:"all",value:r.toString()}]};return await CUe(n,JSON.stringify(i),s),this.updateLocalEnv(e,r)}catch(n){E("error","[system] [Server] \u2717 Failed to set environment variable:",n.message)}}async addEnv(e,r){try{let n=`${this.API_URL}/api/v1/accounts/${O.deployPlatformAccount}/env?site_id=${O.deployPlatformProject}`,s={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}};return await Gr(n,JSON.stringify([{key:e,values:[{context:"all",value:r}]}]),s),this.updateLocalEnv(e,r)}catch(n){E("error","[system] [Server] \u2717 Failed to add environment variable:",n.message)}}async delEnv(e){try{let r=`${this.API_URL}/api/v1/accounts/${O.deployPlatformAccount}/env/${e}?site_id=${O.deployPlatformProject}`,n={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}};return await Hb(r,n),this.delLocalEnv(e)}catch(r){E("error","[system] [Server] \u2717 Failed to add environment variable:",r.message)}}async checkParams(e,r,n){try{return await this._getAllEnvs(e,r,n),!0}catch(s){return E("error","[system] [Server] checkParams failed! accountId, projectId or token is not valid:",s.message),!1}}async deploy(){try{let e=`${this.API_URL}/api/v1/sites/${O.deployPlatformProject}/builds`,r={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}},s=await Gr(e,JSON.stringify({}),r);return s?.data?.id?!0:(E("error","[system] [Server] \u2717 Failed to deploy:",JSON.stringify(s?.data)),!1)}catch(e){return E("error","[system] [Server] \u2717 Failed to deploy:",e.message),!1}}}});var sct={};os(sct,{EdgeoneHandler:()=>Yoe});var Yoe,ict=gr(()=>{U1();kt();vt();dr();Yoe=class extends Ho{API_URL="https://pages-api.cloud.tencent.com/v1";async _httpPost(e,r){let n=`${this.API_URL}`,s={headers:{Authorization:`Bearer ${e}`,"Content-Type":"application/json"}};return await Gr(n,JSON.stringify(r),s)}async _getAllEnvs(e,r){let n={Action:"ModifyPagesProjectEnvs",ProjectId:e},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(e,r){try{let n={Action:"ModifyPagesProjectEnvs",ProjectId:O.deployPlatformProject,EnvVars:[{Key:e,Value:r.toString()}]};return await this._httpPost(O.deployPlatformToken,n),this.updateLocalEnv(e,r)}catch(n){E("error","[system] [Server] \u2717 Failed to set environment variable:",n.message)}}async addEnv(e,r){return await this.setEnv(e,r)}async delEnv(e){try{let r={Action:"DeletePagesProjectEnvs",ProjectId:O.deployPlatformProject,EnvVars:[e]};return await this._httpPost(O.deployPlatformToken,r),this.delLocalEnv(e)}catch(r){E("error","[system] [Server] \u2717 Failed to del environment variable:",r.message)}}async checkParams(e,r,n){try{return await this._getAllEnvs(r,n),!0}catch(s){return E("error","[system] [Server] checkParams failed! accountId, projectId or token is not valid:",s.message),!1}}async deploy(){try{let e={Action:"CreatePagesDeployment",ProjectId:O.deployPlatformProject,RepoBranch:"main",ViaMeta:"Github",Provider:"Github"},r=await this._httpPost(O.deployPlatformToken,e);return r?.data?.Code!==0?(E("error","[system] [Server] \u2717 Failed to deploy:",JSON.stringify(r?.data)),!1):!0}catch(e){return E("error","[system] [Server] \u2717 Failed to deploy:",e.message),!1}}}});var act={};os(act,{HuggingfaceHandler:()=>Joe});var Joe,oct=gr(()=>{U1();kt();vt();dr();Joe=class extends Ho{API_URL="https://huggingface.co";get repoId(){return`${O.deployPlatformAccount}/${O.deployPlatformProject}`}_getOptions(e=O.deployPlatformToken){return{headers:{Authorization:`Bearer ${e}`,"Content-Type":"application/json"}}}_getVariablesUrl(e){return`${this.API_URL}/api/spaces/${e}/variables`}async _getAllEnvs(e,r,n){let s=`${e}/${r}`,i=this._getVariablesUrl(s);return(await Ae(i,this._getOptions(n)))?.data}async setEnv(e,r){try{let n=this._getVariablesUrl(this.repoId),s={key:e,value:r.toString()};return await Gr(n,JSON.stringify(s),this._getOptions()),this.updateLocalEnv(e,r)}catch(n){E("error","[system] [Server] \u2717 Failed to set environment variable:",n.message)}}async addEnv(e,r){return await this.setEnv(e,r)}async delEnv(e){try{let r=this._getVariablesUrl(this.repoId);return await Hb(r,{...this._getOptions(),body:JSON.stringify({key:e})}),this.delLocalEnv(e)}catch(r){E("error","[system] [Server] \u2717 Failed to del environment variable:",r.message)}}async checkParams(e,r,n){try{return await this._getAllEnvs(e,r,n),!0}catch(s){return E("error","[system] [Server] checkParams failed! accountId, projectId or token is not valid:",s.message),!1}}async deploy(){try{let e=`${this.API_URL}/api/spaces/${this.repoId}/restart`;return await Gr(e,void 0,this._getOptions()),!0}catch(e){return E("error","[system] [Server] \u2717 Failed to deploy:",e.message),!1}}}});var Ymt=_(jy=>{"use strict";Object.defineProperty(jy,"__esModule",{value:!0});jy.removeTrailingChar=jy.merge=void 0;var H4r=(...t)=>{let e={};return t.forEach(function(r){var n;for(n in r)n in e&&e[n]===null?e[n]=r[n]:n in e&&Array.isArray(e[n])?e[n]=e[n].concat(r[n]):n in e&&typeof e[n]=="object"?e[n]=(0,jy.merge)(e[n],r[n]):e[n]=r[n]}),e};jy.merge=H4r;var G4r=(t,e)=>t.length>1&&t.endsWith(e)?t.substring(0,t.length-1):t;jy.removeTrailingChar=G4r});var $_=_(Om=>{"use strict";Object.defineProperty(Om,"__esModule",{value:!0});Om.DataError=Om.DatabaseError=Om.NestedError=void 0;var wR=class extends Error{inner;id;constructor(e,r,n){super(e),this.inner=n,this.id=r,this.name=this.constructor.name}toString(){let e=this.name+": "+this.message;return this.inner?e+`: +`+this.inner:e}};Om.NestedError=wR;var Xde=class extends wR{};Om.DatabaseError=Xde;var Zde=class extends wR{};Om.DataError=Zde});var sfe=_(ka=>{"use strict";Object.defineProperty(ka,"__esModule",{value:!0});ka.getArrayIndicies=ka.validateArrayIndex=ka.validateArrayIndicies=ka.isInt=ka.ArrayInfo=ka.arrayRegex=void 0;var LM=$_(),z4r=()=>/^([\.0-9a-zA-Z_$\-][0-9a-zA-Z_\-$\.]*)\[((?!(\]|\[)).*|)\]$/gm;ka.arrayRegex=z4r;var efe={},tfe=class t{property;index=0;append=!1;indicies=[];constructor(e,r){this.property=e;let n=r[0]??0;if(this.append=n===""||r[r.length-1]==="",this.indicies=r,rfe(n))this.index=parseInt(n);else if(!this.append)throw new LM.DataError("Only numerical values accepted for array index",200)}static processArray(e){if(typeof e>"u")return null;if(efe[e])return efe[e];let n=(0,ka.arrayRegex)().exec(e.trim());if(n!=null){let s=n[1],i="["+n[2].toString()+"]",a=nfe(i);return Jmt(a),efe[e]=new t(s,a)}return null}getIndex(e,r){if(this.append)return-1;let n=this.index;if(n==-1){let s=r?e:e[this.property];return s.length===0?0:s.length-1}return n}getData(e){if(this.append)throw new LM.DataError("Can't get data when appending",100);let{index:r,dataForProperty:n}=this.getArrayDataAndIndexFromProperty(e);return n[r]}setData(e,r){if(this.append){let n=e[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(e);n===-1?s.push(r):s[n]=r}}delete(e){if(this.append)throw new LM.DataError("Can't delete an appended data",10);let{index:r,dataForProperty:n}=this.getArrayDataAndIndexFromProperty(e);n.splice(r,1)}isValid(e){let{index:r,dataForProperty:n}=this.getArrayDataAndIndexFromProperty(e);return n.hasOwnProperty(r)}getArrayDataAndIndexFromProperty(e){let r=0,n=e instanceof Array?e:e[this.property]??e;if(this.indicies.length>0){r=+this.indicies[this.indicies.length-1];for(let s=0;s1}};ka.ArrayInfo=tfe;function rfe(t){return!isNaN(t)&&Number(t)==t&&!isNaN(parseInt(t,10))}ka.isInt=rfe;function Jmt(t){let e=t.filter(r=>r==="");if(e.length>1)throw Error("Only one append index is supported for nested arrays");if(e.length===1&&t[t.length-1]!=="")throw Error("Append index must be at the end of the nested array")}ka.validateArrayIndicies=Jmt;function Xmt(t){if(t.length!==0&&!rfe(t))throw new LM.DataError("Only numerical values accepted for array index",200)}ka.validateArrayIndex=Xmt;function nfe(t){if(t.length===0)return[];if(t.charAt(0)!=="[")throw new Error("Invalid array syntax detected");let e=t.substring(1,t.indexOf("]"));Xmt(e);let r=e.length+2;return[e,...nfe(t.substring(r))]}ka.getArrayIndicies=nfe});var tht=_(MM=>{"use strict";Object.defineProperty(MM,"__esModule",{value:!0});MM.DBParentData=void 0;var Zmt=sfe(),eht=$_(),ife=class{parent;data;db;dataPath;constructor(e,r,n,s){this.parent=s,this.data=e,this.db=r,this.dataPath=n}checkArray(e=!1){let r=Zmt.ArrayInfo.processArray(this.parent);if(r&&(!r.append||e)&&!r.isValid(this.data))throw new eht.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 e=this.checkArray();return e?e.getData(this.data):this.data[this.parent]}setData(e){if(this.parent===void 0){this.db.resetData(e);return}let r=Zmt.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 eht.DataError("DataPath: /"+this.dataPath+". "+r.property+" is not an array.",11);r.setData(this.data,e)}else this.data[this.parent]=e}delete(){if(this.parent===void 0){this.db.resetData({});return}let e=this.checkArray(!0);e?e.delete(this.data):delete this.data[this.parent]}};MM.DBParentData=ife});var nht=_((JEn,rht)=>{rht.exports=function(){"use strict";function t(){this.readers=0,this.queue=[]}function e(i,a,o){var c;typeof i!="function"?(s.hasOwnProperty(i)||(s[i]=new t),c=s[i]):(o=a,a=i,c=n),o||(o={});var u=null;o.hasOwnProperty("scope")&&(u=o.scope);var l=function(){var p=!1;return function(){p||(p=!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 t),c=s[i]):(o=a,a=i,c=n),o||(o={});var u=null;o.hasOwnProperty("scope")&&(u=o.scope);var l=function(){var p=!1;return function(){p||(p=!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 t,s={};this.readLock=e,this.writeLock=r,this.async={readLock:function(i,a,o){typeof i!="function"?e(i,function(c){a.call(this,null,c)},o):(a=i,o=a,e(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 sht=_(WM=>{"use strict";Object.defineProperty(WM,"__esModule",{value:!0});WM.TimeoutError=void 0;var K4r=$_(),afe=class extends K4r.NestedError{};WM.TimeoutError=afe});var oht=_(U_=>{"use strict";Object.defineProperty(U_,"__esModule",{value:!0});U_.writeLockAsync=U_.readLockAsync=void 0;var V4r=nht(),iht=sht(),aht=new V4r,Y4r=(t,e=null)=>{let r={};return e!=null&&(r={timeout:e}),new Promise((n,s)=>{aht.readLock(async i=>{try{let a=await t();n(a)}catch(a){s(a)}finally{i()}},{...r,timeoutCallback(){s(new iht.TimeoutError("Timeout",100))}})})};U_.readLockAsync=Y4r;var J4r=(t,e=null)=>{let r={};return e!=null&&(r={timeout:e}),new Promise((n,s)=>{aht.writeLock(async i=>{try{let a=await t();n(a)}catch(a){s(a)}finally{i()}},{...r,timeoutCallback(){s(new iht.TimeoutError("Timeout",100))}})})};U_.writeLockAsync=J4r});var cfe=_($M=>{"use strict";Object.defineProperty($M,"__esModule",{value:!0});$M.JsonAdapter=void 0;var ofe=class{adapter;humanReadable;dateRegex=new RegExp("^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}","m");constructor(e,r=!1){this.adapter=e,this.humanReadable=r}replacer(e,r){return r}reviver(e,r){return typeof r=="string"&&this.dateRegex.exec(r)!=null?new Date(r):r}async readAsync(){let e=await this.adapter.readAsync();return e==null?(await this.writeAsync({}),{}):JSON.parse(e,this.reviver.bind(this))}writeAsync(e){let r="";return this.humanReadable?r=JSON.stringify(e,this.replacer.bind(this),4):r=JSON.stringify(e,this.replacer.bind(this)),this.adapter.writeAsync(r)}};$M.JsonAdapter=ofe});var lfe=_(FM=>{"use strict";Object.defineProperty(FM,"__esModule",{value:!0});FM.FileAdapter=void 0;var UM=require("fs/promises"),X4r=require("path"),ufe=class{filename;fsync;constructor(e,r){this.filename=e,this.fsync=r}async readAsync(){try{return await(0,UM.readFile)(this.filename,{encoding:"utf-8"})}catch(e){if(e.code==="ENOENT")return null;throw e}}async writeAsync(e){let r=null;try{r=await(0,UM.open)(this.filename,"w")}catch(n){if(n.code!=="ENOENT")throw n;let s=X4r.dirname(this.filename);await(0,UM.mkdir)(s,{recursive:!0}),r=await(0,UM.open)(this.filename,"w")}try{await r.writeFile(e,{encoding:"utf-8"}),this.fsync&&await r.sync()}finally{await r.close()}}};FM.FileAdapter=ufe});var cht=_(F_=>{"use strict";Object.defineProperty(F_,"__esModule",{value:!0});F_.ConfigWithAdapter=F_.Config=void 0;var Z4r=require("path"),eBr=cfe(),tBr=lfe(),dfe=class{adapter;filename;saveOnPush;separator;constructor(e,r=!0,n=!1,s="/",i=!1){this.filename=e,Z4r.extname(e)===""&&(this.filename+=".json"),this.saveOnPush=r,this.separator=s,this.adapter=new eBr.JsonAdapter(new tBr.FileAdapter(this.filename,i),n)}};F_.Config=dfe;var ffe=class{adapter;saveOnPush;separator;constructor(e,r=!0,n="/"){this.adapter=e,this.saveOnPush=r,this.separator=n}};F_.ConfigWithAdapter=ffe});var fht=_(aa=>{"use strict";Object.defineProperty(aa,"__esModule",{value:!0});aa.JsonDB=aa.FileAdapter=aa.JsonAdapter=aa.DataError=aa.DatabaseError=aa.ConfigWithAdapter=aa.Config=void 0;var uht=Ymt(),ia=$_(),rBr=tht(),nBr=sfe(),pfe=oht(),lht=cht();Object.defineProperty(aa,"Config",{enumerable:!0,get:function(){return lht.Config}});Object.defineProperty(aa,"ConfigWithAdapter",{enumerable:!0,get:function(){return lht.ConfigWithAdapter}});var dht=$_();Object.defineProperty(aa,"DatabaseError",{enumerable:!0,get:function(){return dht.DatabaseError}});Object.defineProperty(aa,"DataError",{enumerable:!0,get:function(){return dht.DataError}});var sBr=cfe();Object.defineProperty(aa,"JsonAdapter",{enumerable:!0,get:function(){return sBr.JsonAdapter}});var iBr=lfe();Object.defineProperty(aa,"FileAdapter",{enumerable:!0,get:function(){return iBr.FileAdapter}});var mfe=class{loaded=!1;data={};config;constructor(e){this.config=e}processDataPath(e){if(e===void 0||!e.trim())throw new ia.DataError("The Data Path can't be empty",6);if(e==this.config.separator)return[];e=(0,uht.removeTrailingChar)(e,this.config.separator);let r=e.split(this.config.separator);return r.shift(),r}async retrieveData(e,r=!1){await this.load();let n=this,s=(i,a)=>{let o=e[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 ia.DataError(`Can't find dataPath: ${n.config.separator}${e.join(n.config.separator)}. Stopped at ${o}`,5)}let u=nBr.ArrayInfo.processArray(o);if(u){if(o=u.property,c(!0),!Array.isArray(i))throw new ia.DataError(`DataPath: ${n.config.separator}${e.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 ia.DataError(`DataPath: ${n.config.separator}${e.join(n.config.separator)}. . Can't find index ${u.index} in array ${o}`,10)}else c();return e.length==++a?i:s(i,a)};return e.length===0?this.data:s(this.data,0)}async getParentData(e,r){let n=this.processDataPath(e),s=n.pop();return new rBr.DBParentData(await this.retrieveData(n,r),this,e,s)}getData(e){return(0,pfe.readLockAsync)(async()=>{let r=this.processDataPath(e);return this.retrieveData(r,!1)})}getObject(e){return this.getData(e)}async getObjectDefault(e,r){try{return await this.getData(e)}catch(n){if(!(n instanceof ia.DataError)||n.id!=5)throw n;return r}}async exists(e){try{return await this.getData(e),!0}catch(r){if(r instanceof ia.DataError)return!1;throw r}}async count(e){let r=await this.getData(e);if(!Array.isArray(r))throw new ia.DataError(`DataPath: ${e} is not an array.`,11);let n=this.processDataPath(e);return(await this.retrieveData(n,!1)).length}async getIndex(e,r,n="id"){return(await this.getArrayData(e)).map(function(i){return i[n]}).indexOf(r)}async getIndexValue(e,r){return(await this.getArrayData(e)).indexOf(r)}async getArrayData(e){let r=await this.getData(e);if(!Array.isArray(r))throw new ia.DataError(`DataPath: ${e} is not an array.`,11);let n=this.processDataPath(e);return this.retrieveData(n,!1)}async filter(e,r){let n=await this.getData(e);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 ia.DataError("The entry at the path ("+e+") needs to be either an Object or an Array",12)}async find(e,r){let n=await this.getData(e);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 ia.DataError("The entry at the path ("+e+") needs to be either an Object or an Array",12)}async push(e,r,n=!0){return(0,pfe.writeLockAsync)(async()=>{let s=await this.getParentData(e,!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 ia.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 ia.DataError("Can't merge an Array with an Object",4);i=(0,uht.merge)(s.getData(),r)}}s.setData(i),this.config.saveOnPush&&await this.save()})}async delete(e){await(0,pfe.writeLockAsync)(async()=>{(await this.getParentData(e,!0)).delete(),this.config.saveOnPush&&await this.save()})}resetData(e){this.data=e}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(e){throw new ia.DatabaseError("Can't Load Database",1,e)}}async save(e){if(e=e||!1,!e&&!this.loaded)throw new ia.DatabaseError("DataBase not loaded. Can't write",7);try{await this.config.adapter.writeAsync(this.data)}catch(r){throw new ia.DatabaseError("Can't save the database",2,r)}}async fromPath(e,r="id"){let[,...n]=e.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 ia.DataError(`DataPath: ${i.join("")}/${o} not found.`,13,c)}}return i.join("")}};aa.JsonDB=mfe});var EMr={};os(EMr,{start:()=>bMr,stop:()=>_Mr});module.exports=sxt(EMr);var _yt=Ce(HNe(),1);var M_=Ce(require("node:fs/promises"),1),$s=Ce(require("node:path"),1),DM=require("node:crypto"),Mmt=require("node:module"),Kde=require("node:url");function LS(t,e){return function(){return t.apply(e,arguments)}}var{toString:dzt}=Object.prototype,{getPrototypeOf:EH}=Object,w3=(t=>e=>{let r=dzt.call(e);return t[r]||(t[r]=r.slice(8,-1).toLowerCase())})(Object.create(null)),El=t=>(t=t.toLowerCase(),e=>w3(e)===t),R3=t=>e=>typeof e===t,{isArray:$x}=Array,MS=R3("undefined");function fzt(t){return t!==null&&!MS(t)&&t.constructor!==null&&!MS(t.constructor)&&_c(t.constructor.isBuffer)&&t.constructor.isBuffer(t)}var KNe=El("ArrayBuffer");function pzt(t){let e;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?e=ArrayBuffer.isView(t):e=t&&t.buffer&&KNe(t.buffer),e}var mzt=R3("string"),_c=R3("function"),VNe=R3("number"),N3=t=>t!==null&&typeof t=="object",hzt=t=>t===!0||t===!1,T3=t=>{if(w3(t)!=="object")return!1;let e=EH(t);return(e===null||e===Object.prototype||Object.getPrototypeOf(e)===null)&&!(Symbol.toStringTag in t)&&!(Symbol.iterator in t)},gzt=El("Date"),yzt=El("File"),Azt=El("Blob"),xzt=El("FileList"),bzt=t=>N3(t)&&_c(t.pipe),_zt=t=>{let e;return t&&(typeof FormData=="function"&&t instanceof FormData||_c(t.append)&&((e=w3(t))==="formdata"||e==="object"&&_c(t.toString)&&t.toString()==="[object FormData]"))},Ezt=El("URLSearchParams"),vzt=t=>t.trim?t.trim():t.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function WS(t,e,{allOwnKeys:r=!1}={}){if(t===null||typeof t>"u")return;let n,s;if(typeof t!="object"&&(t=[t]),$x(t))for(n=0,s=t.length;n0;)if(s=r[n],e===s.toLowerCase())return s;return null}var JNe=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,XNe=t=>!MS(t)&&t!==JNe;function _H(){let{caseless:t}=XNe(this)&&this||{},e={},r=(n,s)=>{let i=t&&YNe(e,s)||s;T3(e[i])&&T3(n)?e[i]=_H(e[i],n):T3(n)?e[i]=_H({},n):$x(n)?e[i]=n.slice():e[i]=n};for(let n=0,s=arguments.length;n(WS(e,(s,i)=>{r&&_c(s)?t[i]=LS(s,r):t[i]=s},{allOwnKeys:n}),t),Izt=t=>(t.charCodeAt(0)===65279&&(t=t.slice(1)),t),Czt=(t,e,r,n)=>{t.prototype=Object.create(e.prototype,n),t.prototype.constructor=t,Object.defineProperty(t,"super",{value:e.prototype}),r&&Object.assign(t.prototype,r)},Tzt=(t,e,r,n)=>{let s,i,a,o={};if(e=e||{},t==null)return e;do{for(s=Object.getOwnPropertyNames(t),i=s.length;i-- >0;)a=s[i],(!n||n(a,t,e))&&!o[a]&&(e[a]=t[a],o[a]=!0);t=r!==!1&&EH(t)}while(t&&(!r||r(t,e))&&t!==Object.prototype);return e},wzt=(t,e,r)=>{t=String(t),(r===void 0||r>t.length)&&(r=t.length),r-=e.length;let n=t.indexOf(e,r);return n!==-1&&n===r},Rzt=t=>{if(!t)return null;if($x(t))return t;let e=t.length;if(!VNe(e))return null;let r=new Array(e);for(;e-- >0;)r[e]=t[e];return r},Nzt=(t=>e=>t&&e instanceof t)(typeof Uint8Array<"u"&&EH(Uint8Array)),Ozt=(t,e)=>{let n=(t&&t[Symbol.iterator]).call(t),s;for(;(s=n.next())&&!s.done;){let i=s.value;e.call(t,i[0],i[1])}},kzt=(t,e)=>{let r,n=[];for(;(r=t.exec(e))!==null;)n.push(r);return n},Pzt=El("HTMLFormElement"),Dzt=t=>t.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(r,n,s){return n.toUpperCase()+s}),GNe=(({hasOwnProperty:t})=>(e,r)=>t.call(e,r))(Object.prototype),Bzt=El("RegExp"),ZNe=(t,e)=>{let r=Object.getOwnPropertyDescriptors(t),n={};WS(r,(s,i)=>{let a;(a=e(s,i,t))!==!1&&(n[i]=a||s)}),Object.defineProperties(t,n)},Lzt=t=>{ZNe(t,(e,r)=>{if(_c(t)&&["arguments","caller","callee"].indexOf(r)!==-1)return!1;let n=t[r];if(_c(n)){if(e.enumerable=!1,"writable"in e){e.writable=!1;return}e.set||(e.set=()=>{throw Error("Can not rewrite read-only method '"+r+"'")})}})},Mzt=(t,e)=>{let r={},n=s=>{s.forEach(i=>{r[i]=!0})};return $x(t)?n(t):n(String(t).split(e)),r},Wzt=()=>{},$zt=(t,e)=>(t=+t,Number.isFinite(t)?t:e),bH="abcdefghijklmnopqrstuvwxyz",zNe="0123456789",eOe={DIGIT:zNe,ALPHA:bH,ALPHA_DIGIT:bH+bH.toUpperCase()+zNe},Uzt=(t=16,e=eOe.ALPHA_DIGIT)=>{let r="",{length:n}=e;for(;t--;)r+=e[Math.random()*n|0];return r};function Fzt(t){return!!(t&&_c(t.append)&&t[Symbol.toStringTag]==="FormData"&&t[Symbol.iterator])}var qzt=t=>{let e=new Array(10),r=(n,s)=>{if(N3(n)){if(e.indexOf(n)>=0)return;if(!("toJSON"in n)){e[s]=n;let i=$x(n)?[]:{};return WS(n,(a,o)=>{let c=r(a,s+1);!MS(c)&&(i[o]=c)}),e[s]=void 0,i}}return n};return r(t,0)},jzt=El("AsyncFunction"),Qzt=t=>t&&(N3(t)||_c(t))&&_c(t.then)&&_c(t.catch),de={isArray:$x,isArrayBuffer:KNe,isBuffer:fzt,isFormData:_zt,isArrayBufferView:pzt,isString:mzt,isNumber:VNe,isBoolean:hzt,isObject:N3,isPlainObject:T3,isUndefined:MS,isDate:gzt,isFile:yzt,isBlob:Azt,isRegExp:Bzt,isFunction:_c,isStream:bzt,isURLSearchParams:Ezt,isTypedArray:Nzt,isFileList:xzt,forEach:WS,merge:_H,extend:Szt,trim:vzt,stripBOM:Izt,inherits:Czt,toFlatObject:Tzt,kindOf:w3,kindOfTest:El,endsWith:wzt,toArray:Rzt,forEachEntry:Ozt,matchAll:kzt,isHTMLForm:Pzt,hasOwnProperty:GNe,hasOwnProp:GNe,reduceDescriptors:ZNe,freezeMethods:Lzt,toObjectSet:Mzt,toCamelCase:Dzt,noop:Wzt,toFiniteNumber:$zt,findKey:YNe,global:JNe,isContextDefined:XNe,ALPHABET:eOe,generateString:Uzt,isSpecCompliantForm:Fzt,toJSONObject:qzt,isAsyncFn:jzt,isThenable:Qzt};function Ux(t,e,r,n,s){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=t,this.name="AxiosError",e&&(this.code=e),r&&(this.config=r),n&&(this.request=n),s&&(this.response=s)}de.inherits(Ux,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:de.toJSONObject(this.config),code:this.code,status:this.response&&this.response.status?this.response.status:null}}});var tOe=Ux.prototype,rOe={};["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(t=>{rOe[t]={value:t}});Object.defineProperties(Ux,rOe);Object.defineProperty(tOe,"isAxiosError",{value:!0});Ux.from=(t,e,r,n,s,i)=>{let a=Object.create(tOe);return de.toFlatObject(t,a,function(c){return c!==Error.prototype},o=>o!=="isAxiosError"),Ux.call(a,t.message,e,r,n,s),a.cause=t,a.name=t.name,i&&Object.assign(a,i),a};var Ze=Ux;var sPe=Ce(nPe(),1),U3=sPe.default;function jH(t){return de.isPlainObject(t)||de.isArray(t)}function aPe(t){return de.endsWith(t,"[]")?t.slice(0,-2):t}function iPe(t,e,r){return t?t.concat(e).map(function(s,i){return s=aPe(s),!r&&i?"["+s+"]":s}).join(r?".":""):e}function RVt(t){return de.isArray(t)&&!t.some(jH)}var NVt=de.toFlatObject(de,{},null,function(e){return/^is[A-Z]/.test(e)});function OVt(t,e,r){if(!de.isObject(t))throw new TypeError("target must be an object");e=e||new(U3||FormData),r=de.toFlatObject(r,{metaTokens:!0,dots:!1,indexes:!1},!1,function(h,y){return!de.isUndefined(y[h])});let n=r.metaTokens,s=r.visitor||l,i=r.dots,a=r.indexes,c=(r.Blob||typeof Blob<"u"&&Blob)&&de.isSpecCompliantForm(e);if(!de.isFunction(s))throw new TypeError("visitor must be a function");function u(m){if(m===null)return"";if(de.isDate(m))return m.toISOString();if(!c&&de.isBlob(m))throw new Ze("Blob is not supported. Use a Buffer instead.");return de.isArrayBuffer(m)||de.isTypedArray(m)?c&&typeof Blob=="function"?new Blob([m]):Buffer.from(m):m}function l(m,h,y){let g=m;if(m&&!y&&typeof m=="object"){if(de.endsWith(h,"{}"))h=n?h:h.slice(0,-2),m=JSON.stringify(m);else if(de.isArray(m)&&RVt(m)||(de.isFileList(m)||de.endsWith(h,"[]"))&&(g=de.toArray(m)))return h=aPe(h),g.forEach(function(x,A){!(de.isUndefined(x)||x===null)&&e.append(a===!0?iPe([h],A,i):a===null?h:h+"[]",u(x))}),!1}return jH(m)?!0:(e.append(iPe(y,h,i),u(m)),!1)}let d=[],f=Object.assign(NVt,{defaultVisitor:l,convertValue:u,isVisitable:jH});function p(m,h){if(!de.isUndefined(m)){if(d.indexOf(m)!==-1)throw Error("Circular reference detected in "+h.join("."));d.push(m),de.forEach(m,function(g,b){(!(de.isUndefined(g)||g===null)&&s.call(e,g,de.isString(b)?b.trim():b,h,f))===!0&&p(g,h?h.concat(b):[b])}),d.pop()}}if(!de.isObject(t))throw new TypeError("data must be an object");return p(t),e}var h0=OVt;function oPe(t){let e={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(t).replace(/[!'()~]|%20|%00/g,function(n){return e[n]})}function cPe(t,e){this._pairs=[],t&&h0(t,this,e)}var uPe=cPe.prototype;uPe.append=function(e,r){this._pairs.push([e,r])};uPe.toString=function(e){let r=e?function(n){return e.call(this,n,oPe)}:oPe;return this._pairs.map(function(s){return r(s[0])+"="+r(s[1])},"").join("&")};var lPe=cPe;function kVt(t){return encodeURIComponent(t).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function Bh(t,e,r){if(!e)return t;let n=r&&r.encode||kVt,s=r&&r.serialize,i;if(s?i=s(e,r):i=de.isURLSearchParams(e)?e.toString():new lPe(e,r).toString(n),i){let a=t.indexOf("#");a!==-1&&(t=t.slice(0,a)),t+=(t.indexOf("?")===-1?"?":"&")+i}return t}var QH=class{constructor(){this.handlers=[]}use(e,r,n){return this.handlers.push({fulfilled:e,rejected:r,synchronous:n?n.synchronous:!1,runWhen:n?n.runWhen:null}),this.handlers.length-1}eject(e){this.handlers[e]&&(this.handlers[e]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(e){de.forEach(this.handlers,function(n){n!==null&&e(n)})}},HH=QH;var Hx={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1};var dPe=Ce(require("url"),1),fPe=dPe.default.URLSearchParams;var pPe={isNode:!0,classes:{URLSearchParams:fPe,FormData:U3,Blob:typeof Blob<"u"&&Blob||null},protocols:["http","https","file","data"]};var GH={};os(GH,{hasBrowserEnv:()=>mPe,hasStandardBrowserEnv:()=>PVt,hasStandardBrowserWebWorkerEnv:()=>DVt});var mPe=typeof window<"u"&&typeof document<"u",PVt=(t=>mPe&&["ReactNative","NativeScript","NS"].indexOf(t)<0)(typeof navigator<"u"&&navigator.product),DVt=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function";var Os={...GH,...pPe};function zH(t,e){return h0(t,new Os.classes.URLSearchParams,Object.assign({visitor:function(r,n,s,i){return Os.isNode&&de.isBuffer(r)?(this.append(n,r.toString("base64")),!1):i.defaultVisitor.apply(this,arguments)}},e))}function BVt(t){return de.matchAll(/\w+|\[(\w*)]/g,t).map(e=>e[0]==="[]"?"":e[1]||e[0])}function LVt(t){let e={},r=Object.keys(t),n,s=r.length,i;for(n=0;n=r.length;return a=!a&&de.isArray(s)?s.length:a,c?(de.hasOwnProp(s,a)?s[a]=[s[a],n]:s[a]=n,!o):((!s[a]||!de.isObject(s[a]))&&(s[a]=[]),e(r,n,s[a],i)&&de.isArray(s[a])&&(s[a]=LVt(s[a])),!o)}if(de.isFormData(t)&&de.isFunction(t.entries)){let r={};return de.forEachEntry(t,(n,s)=>{e(BVt(n),s,r,0)}),r}return null}var F3=MVt;function WVt(t,e,r){if(de.isString(t))try{return(e||JSON.parse)(t),de.trim(t)}catch(n){if(n.name!=="SyntaxError")throw n}return(r||JSON.stringify)(t)}var KH={transitional:Hx,adapter:["xhr","http"],transformRequest:[function(e,r){let n=r.getContentType()||"",s=n.indexOf("application/json")>-1,i=de.isObject(e);if(i&&de.isHTMLForm(e)&&(e=new FormData(e)),de.isFormData(e))return s?JSON.stringify(F3(e)):e;if(de.isArrayBuffer(e)||de.isBuffer(e)||de.isStream(e)||de.isFile(e)||de.isBlob(e))return e;if(de.isArrayBufferView(e))return e.buffer;if(de.isURLSearchParams(e))return r.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),e.toString();let o;if(i){if(n.indexOf("application/x-www-form-urlencoded")>-1)return zH(e,this.formSerializer).toString();if((o=de.isFileList(e))||n.indexOf("multipart/form-data")>-1){let c=this.env&&this.env.FormData;return h0(o?{"files[]":e}:e,c&&new c,this.formSerializer)}}return i||s?(r.setContentType("application/json",!1),WVt(e)):e}],transformResponse:[function(e){let r=this.transitional||KH.transitional,n=r&&r.forcedJSONParsing,s=this.responseType==="json";if(e&&de.isString(e)&&(n&&!this.responseType||s)){let a=!(r&&r.silentJSONParsing)&&s;try{return JSON.parse(e)}catch(o){if(a)throw o.name==="SyntaxError"?Ze.from(o,Ze.ERR_BAD_RESPONSE,this,null,this.response):o}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:Os.classes.FormData,Blob:Os.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};de.forEach(["delete","get","head","post","put","patch"],t=>{KH.headers[t]={}});var Gx=KH;var $Vt=de.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"]),hPe=t=>{let e={},r,n,s;return t&&t.split(` +`).forEach(function(a){s=a.indexOf(":"),r=a.substring(0,s).trim().toLowerCase(),n=a.substring(s+1).trim(),!(!r||e[r]&&$Vt[r])&&(r==="set-cookie"?e[r]?e[r].push(n):e[r]=[n]:e[r]=e[r]?e[r]+", "+n:n)}),e};var gPe=Symbol("internals");function QS(t){return t&&String(t).trim().toLowerCase()}function q3(t){return t===!1||t==null?t:de.isArray(t)?t.map(q3):String(t)}function UVt(t){let e=Object.create(null),r=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g,n;for(;n=r.exec(t);)e[n[1]]=n[2];return e}var FVt=t=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(t.trim());function VH(t,e,r,n,s){if(de.isFunction(n))return n.call(this,e,r);if(s&&(e=r),!!de.isString(e)){if(de.isString(n))return e.indexOf(n)!==-1;if(de.isRegExp(n))return n.test(e)}}function qVt(t){return t.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(e,r,n)=>r.toUpperCase()+n)}function jVt(t,e){let r=de.toCamelCase(" "+e);["get","set","has"].forEach(n=>{Object.defineProperty(t,n+r,{value:function(s,i,a){return this[n].call(this,e,s,i,a)},configurable:!0})})}var zx=class{constructor(e){e&&this.set(e)}set(e,r,n){let s=this;function i(o,c,u){let l=QS(c);if(!l)throw new Error("header name must be a non-empty string");let d=de.findKey(s,l);(!d||s[d]===void 0||u===!0||u===void 0&&s[d]!==!1)&&(s[d||c]=q3(o))}let a=(o,c)=>de.forEach(o,(u,l)=>i(u,l,c));return de.isPlainObject(e)||e instanceof this.constructor?a(e,r):de.isString(e)&&(e=e.trim())&&!FVt(e)?a(hPe(e),r):e!=null&&i(r,e,n),this}get(e,r){if(e=QS(e),e){let n=de.findKey(this,e);if(n){let s=this[n];if(!r)return s;if(r===!0)return UVt(s);if(de.isFunction(r))return r.call(this,s,n);if(de.isRegExp(r))return r.exec(s);throw new TypeError("parser must be boolean|regexp|function")}}}has(e,r){if(e=QS(e),e){let n=de.findKey(this,e);return!!(n&&this[n]!==void 0&&(!r||VH(this,this[n],n,r)))}return!1}delete(e,r){let n=this,s=!1;function i(a){if(a=QS(a),a){let o=de.findKey(n,a);o&&(!r||VH(n,n[o],o,r))&&(delete n[o],s=!0)}}return de.isArray(e)?e.forEach(i):i(e),s}clear(e){let r=Object.keys(this),n=r.length,s=!1;for(;n--;){let i=r[n];(!e||VH(this,this[i],i,e,!0))&&(delete this[i],s=!0)}return s}normalize(e){let r=this,n={};return de.forEach(this,(s,i)=>{let a=de.findKey(n,i);if(a){r[a]=q3(s),delete r[i];return}let o=e?qVt(i):String(i).trim();o!==i&&delete r[i],r[o]=q3(s),n[o]=!0}),this}concat(...e){return this.constructor.concat(this,...e)}toJSON(e){let r=Object.create(null);return de.forEach(this,(n,s)=>{n!=null&&n!==!1&&(r[s]=e&&de.isArray(n)?n.join(", "):n)}),r}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([e,r])=>e+": "+r).join(` +`)}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(e){return e instanceof this?e:new this(e)}static concat(e,...r){let n=new this(e);return r.forEach(s=>n.set(s)),n}static accessor(e){let n=(this[gPe]=this[gPe]={accessors:{}}).accessors,s=this.prototype;function i(a){let o=QS(a);n[o]||(jVt(s,a),n[o]=!0)}return de.isArray(e)?e.forEach(i):i(e),this}};zx.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);de.reduceDescriptors(zx.prototype,({value:t},e)=>{let r=e[0].toUpperCase()+e.slice(1);return{get:()=>t,set(n){this[r]=n}}});de.freezeMethods(zx);var ks=zx;function HS(t,e){let r=this||Gx,n=e||r,s=ks.from(n.headers),i=n.data;return de.forEach(t,function(o){i=o.call(r,i,s.normalize(),e?e.status:void 0)}),s.normalize(),i}function GS(t){return!!(t&&t.__CANCEL__)}function yPe(t,e,r){Ze.call(this,t??"canceled",Ze.ERR_CANCELED,e,r),this.name="CanceledError"}de.inherits(yPe,Ze,{__CANCEL__:!0});var mu=yPe;function g0(t,e,r){let n=r.config.validateStatus;!r.status||!n||n(r.status)?t(r):e(new Ze("Request failed with status code "+r.status,[Ze.ERR_BAD_REQUEST,Ze.ERR_BAD_RESPONSE][Math.floor(r.status/100)-4],r.config,r.request,r))}function YH(t){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(t)}function JH(t,e){return e?t.replace(/\/?\/$/,"")+"/"+e.replace(/^\/+/,""):t}function Lh(t,e){return t&&!YH(e)?JH(t,e):e}var XPe=Ce(xPe(),1),ZPe=Ce(require("http"),1),e3e=Ce(require("https"),1),t3e=Ce(require("util"),1),r3e=Ce(WPe(),1),rf=Ce(require("zlib"),1);var Uh="1.6.7";function JS(t){let e=/^([-+\w]{1,25})(:?\/\/|:)/.exec(t);return e&&e[1]||""}var wYt=/^(?:([^;]+);)?(?:[^;]+;)?(base64|),([\s\S]*)$/;function mG(t,e,r){let n=r&&r.Blob||Os.classes.Blob,s=JS(t);if(e===void 0&&n&&(e=!0),s==="data"){t=s.length?t.slice(s.length+1):t;let i=wYt.exec(t);if(!i)throw new Ze("Invalid URL",Ze.ERR_INVALID_URL);let a=i[1],o=i[2],c=i[3],u=Buffer.from(decodeURIComponent(c),o?"base64":"utf8");if(e){if(!n)throw new Ze("Blob is not supported",Ze.ERR_NOT_SUPPORT);return new n([u],{type:a})}return u}throw new Ze("Unsupported protocol "+s,Ze.ERR_NOT_SUPPORT)}var Fh=Ce(require("stream"),1);var UPe=Ce(require("stream"),1);function RYt(t,e){let r=0,n=1e3/e,s=null;return function(a,o){let c=Date.now();if(a||c-r>n)return s&&(clearTimeout(s),s=null),r=c,t.apply(null,o);s||(s=setTimeout(()=>(s=null,r=Date.now(),t.apply(null,o)),n-(c-r)))}}var $Pe=RYt;function NYt(t,e){t=t||10;let r=new Array(t),n=new Array(t),s=0,i=0,a;return e=e!==void 0?e: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%t;if(s=(s+1)%t,s===i&&(i=(i+1)%t),u-a!de.isUndefined(c[o])),super({readableHighWaterMark:e.chunkSize});let r=this,n=this[K3]={length:e.length,timeWindow:e.timeWindow,ticksRate:e.ticksRate,chunkSize:e.chunkSize,maxRate:e.maxRate,minChunkSize:e.minChunkSize,bytesSeen:0,isCaptured:!1,notifiedBytesLoaded:0,ts:Date.now(),bytes:0,onReadCallback:null},s=z3(n.ticksRate*e.samplesCount,n.timeWindow);this.on("newListener",o=>{o==="progress"&&(n.isCaptured||(n.isCaptured=!0))});let i=0;n.updateProgress=$Pe(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(e){let r=this[K3];return r.onReadCallback&&r.onReadCallback(),super._read(e)}_transform(e,r,n){let s=this,i=this[K3],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(m,h){let y=Buffer.byteLength(m);i.bytesSeen+=y,i.bytes+=y,i.isCaptured&&i.updateProgress(),s.push(m)?process.nextTick(h):i.onReadCallback=()=>{i.onReadCallback=null,process.nextTick(h)}}let p=(m,h)=>{let y=Buffer.byteLength(m),g=null,b=o,x,A=0;if(a){let S=Date.now();(!i.ts||(A=S-i.ts)>=c)&&(i.ts=S,x=l-i.bytes,i.bytes=x<0?-x:0,A=0),x=l-i.bytes}if(a){if(x<=0)return setTimeout(()=>{h(null,m)},c-A);xb&&y-b>d&&(g=m.subarray(b),m=m.subarray(0,b)),f(m,g?()=>{process.nextTick(h,null,g)}:h)};p(e,function m(h,y){if(h)return n(h);y?p(y,m):n(null)})}setLength(e){return this[K3].length=+e,this}},gG=hG;var n3e=Ce(require("events"),1);var qPe=require("util"),jPe=require("stream");var{asyncIterator:FPe}=Symbol,OYt=async function*(t){t.stream?yield*t.stream():t.arrayBuffer?yield await t.arrayBuffer():t[FPe]?yield*t[FPe]():yield t},V3=OYt;var kYt=de.ALPHABET.ALPHA_DIGIT+"-_",XS=new qPe.TextEncoder,A0=`\r +`,PYt=XS.encode(A0),DYt=2,yG=class{constructor(e,r){let{escapeName:n}=this.constructor,s=de.isString(r),i=`Content-Disposition: form-data; name="${n(e)}"${!s&&r.name?`; filename="${n(r.name)}"`:""}${A0}`;s?r=XS.encode(String(r).replace(/\r?\n|\r\n?/g,A0)):i+=`Content-Type: ${r.type||"application/octet-stream"}${A0}`,this.headers=XS.encode(i+A0),this.contentLength=s?r.byteLength:r.size,this.size=this.headers.byteLength+this.contentLength+DYt,this.name=e,this.value=r}async*encode(){yield this.headers;let{value:e}=this;de.isTypedArray(e)?yield e:yield*V3(e),yield PYt}static escapeName(e){return String(e).replace(/[\r\n"]/g,r=>({"\r":"%0D","\n":"%0A",'"':"%22"})[r])}},BYt=(t,e,r)=>{let{tag:n="form-data-boundary",size:s=25,boundary:i=n+"-"+de.generateString(s,kYt)}=r||{};if(!de.isFormData(t))throw TypeError("FormData instance required");if(i.length<1||i.length>70)throw Error("boundary must be 10-70 characters long");let a=XS.encode("--"+i+A0),o=XS.encode("--"+i+"--"+A0+A0),c=o.byteLength,u=Array.from(t.entries()).map(([d,f])=>{let p=new yG(d,f);return c+=p.size,p});c+=a.byteLength*u.length,c=de.toFiniteNumber(c);let l={"Content-Type":`multipart/form-data; boundary=${i}`};return Number.isFinite(c)&&(l["Content-Length"]=c),e&&e(l),jPe.Readable.from(async function*(){for(let d of u)yield a,yield*d.encode();yield o}())},QPe=BYt;var HPe=Ce(require("stream"),1),AG=class extends HPe.default.Transform{__transform(e,r,n){this.push(e),n()}_transform(e,r,n){if(e.length!==0&&(this._transform=this.__transform,e[0]!==120)){let s=Buffer.alloc(2);s[0]=120,s[1]=156,this.push(s,r)}this.__transform(e,r,n)}},GPe=AG;var LYt=(t,e)=>de.isAsyncFn(t)?function(...r){let n=r.pop();t.apply(this,r).then(s=>{try{e?n(null,...e(s)):n(null,s)}catch(i){n(i)}},n)}:t,zPe=LYt;var KPe={flush:rf.default.constants.Z_SYNC_FLUSH,finishFlush:rf.default.constants.Z_SYNC_FLUSH},MYt={flush:rf.default.constants.BROTLI_OPERATION_FLUSH,finishFlush:rf.default.constants.BROTLI_OPERATION_FLUSH},VPe=de.isFunction(rf.default.createBrotliDecompress),{http:WYt,https:$Yt}=r3e.default,UYt=/https:?/,YPe=Os.protocols.map(t=>t+":");function FYt(t,e){t.beforeRedirects.proxy&&t.beforeRedirects.proxy(t),t.beforeRedirects.config&&t.beforeRedirects.config(t,e)}function s3e(t,e,r){let n=e;if(!n&&n!==!1){let s=(0,XPe.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");t.headers["Proxy-Authorization"]="Basic "+i}t.headers.host=t.hostname+(t.port?":"+t.port:"");let s=n.hostname||n.host;t.hostname=s,t.host=s,t.port=n.port,t.path=r,n.protocol&&(t.protocol=n.protocol.includes(":")?n.protocol:`${n.protocol}:`)}t.beforeRedirects.proxy=function(i){s3e(i,e,i.href)}}var qYt=typeof process<"u"&&de.kindOf(process)==="process",jYt=t=>new Promise((e,r)=>{let n,s,i=(c,u)=>{s||(s=!0,n&&n(c,u))},a=c=>{i(c),e(c)},o=c=>{i(c,!0),r(c)};t(a,o,c=>n=c).catch(o)}),QYt=({address:t,family:e})=>{if(!de.isString(t))throw TypeError("address must be a string");return{address:t,family:e||(t.indexOf(".")<0?6:4)}},JPe=(t,e)=>QYt(de.isObject(t)?t:{address:t,family:e}),i3e=qYt&&function(e){return jYt(async function(n,s,i){let{data:a,lookup:o,family:c}=e,{responseType:u,responseEncoding:l}=e,d=e.method.toUpperCase(),f,p=!1,m;if(o){let U=zPe(o,z=>de.isArray(z)?z:[z]);o=(z,j,J)=>{U(z,j,(se,oe,ue)=>{if(se)return J(se);let Te=de.isArray(oe)?oe.map(Ne=>JPe(Ne)):[JPe(oe,ue)];j.all?J(se,Te):J(se,Te[0].address,Te[0].family)})}}let h=new n3e.default,y=()=>{e.cancelToken&&e.cancelToken.unsubscribe(g),e.signal&&e.signal.removeEventListener("abort",g),h.removeAllListeners()};i((U,z)=>{f=!0,z&&(p=!0,y())});function g(U){h.emit("abort",!U||U.type?new mu(null,e,m):U)}h.once("abort",s),(e.cancelToken||e.signal)&&(e.cancelToken&&e.cancelToken.subscribe(g),e.signal&&(e.signal.aborted?g():e.signal.addEventListener("abort",g)));let b=Lh(e.baseURL,e.url),x=new URL(b,"http://localhost"),A=x.protocol||YPe[0];if(A==="data:"){let U;if(d!=="GET")return g0(n,s,{status:405,statusText:"method not allowed",headers:{},config:e});try{U=mG(e.url,u==="blob",{Blob:e.env&&e.env.Blob})}catch(z){throw Ze.from(z,Ze.ERR_BAD_REQUEST,e)}return u==="text"?(U=U.toString(l),(!l||l==="utf8")&&(U=de.stripBOM(U))):u==="stream"&&(U=Fh.default.Readable.from(U)),g0(n,s,{data:U,status:200,statusText:"OK",headers:new ks,config:e})}if(YPe.indexOf(A)===-1)return s(new Ze("Unsupported protocol "+A,Ze.ERR_BAD_REQUEST,e));let S=ks.from(e.headers).normalize();S.set("User-Agent","axios/"+Uh,!1);let I=e.onDownloadProgress,R=e.onUploadProgress,w=e.maxRate,N,k;if(de.isSpecCompliantForm(a)){let U=S.getContentType(/boundary=([-_\w\d]{10,70})/i);a=QPe(a,z=>{S.set(z)},{tag:`axios-${Uh}-boundary`,boundary:U&&U[1]||void 0})}else if(de.isFormData(a)&&de.isFunction(a.getHeaders)){if(S.set(a.getHeaders()),!S.hasContentLength())try{let U=await t3e.default.promisify(a.getLength).call(a);Number.isFinite(U)&&U>=0&&S.setContentLength(U)}catch{}}else if(de.isBlob(a))a.size&&S.setContentType(a.type||"application/octet-stream"),S.setContentLength(a.size||0),a=Fh.default.Readable.from(V3(a));else if(a&&!de.isStream(a)){if(!Buffer.isBuffer(a))if(de.isArrayBuffer(a))a=Buffer.from(new Uint8Array(a));else if(de.isString(a))a=Buffer.from(a,"utf-8");else return s(new Ze("Data after transformation must be a string, an ArrayBuffer, a Buffer, or a Stream",Ze.ERR_BAD_REQUEST,e));if(S.setContentLength(a.length,!1),e.maxBodyLength>-1&&a.length>e.maxBodyLength)return s(new Ze("Request body larger than maxBodyLength limit",Ze.ERR_BAD_REQUEST,e))}let B=de.toFiniteNumber(S.getContentLength());de.isArray(w)?(N=w[0],k=w[1]):N=k=w,a&&(R||N)&&(de.isStream(a)||(a=Fh.default.Readable.from(a,{objectMode:!1})),a=Fh.default.pipeline([a,new gG({length:B,maxRate:de.toFiniteNumber(N)})],de.noop),R&&a.on("progress",U=>{R(Object.assign(U,{upload:!0}))}));let M;if(e.auth){let U=e.auth.username||"",z=e.auth.password||"";M=U+":"+z}if(!M&&x.username){let U=x.username,z=x.password;M=U+":"+z}M&&S.delete("authorization");let D;try{D=Bh(x.pathname+x.search,e.params,e.paramsSerializer).replace(/^\?/,"")}catch(U){let z=new Error(U.message);return z.config=e,z.url=e.url,z.exists=!0,s(z)}S.set("Accept-Encoding","gzip, compress, deflate"+(VPe?", br":""),!1);let L={path:D,method:d,headers:S.toJSON(),agents:{http:e.httpAgent,https:e.httpsAgent},auth:M,protocol:A,family:c,beforeRedirect:FYt,beforeRedirects:{}};!de.isUndefined(o)&&(L.lookup=o),e.socketPath?L.socketPath=e.socketPath:(L.hostname=x.hostname,L.port=x.port,s3e(L,e.proxy,A+"//"+x.hostname+(x.port?":"+x.port:"")+L.path));let Z,W=UYt.test(L.protocol);if(L.agent=W?e.httpsAgent:e.httpAgent,e.transport?Z=e.transport:e.maxRedirects===0?Z=W?e3e.default:ZPe.default:(e.maxRedirects&&(L.maxRedirects=e.maxRedirects),e.beforeRedirect&&(L.beforeRedirects.config=e.beforeRedirect),Z=W?$Yt:WYt),e.maxBodyLength>-1?L.maxBodyLength=e.maxBodyLength:L.maxBodyLength=1/0,e.insecureHTTPParser&&(L.insecureHTTPParser=e.insecureHTTPParser),m=Z.request(L,function(z){if(m.destroyed)return;let j=[z],J=+z.headers["content-length"];if(I){let Ne=new gG({length:de.toFiniteNumber(J),maxRate:de.toFiniteNumber(k)});I&&Ne.on("progress",je=>{I(Object.assign(je,{download:!0}))}),j.push(Ne)}let se=z,oe=z.req||m;if(e.decompress!==!1&&z.headers["content-encoding"])switch((d==="HEAD"||z.statusCode===204)&&delete z.headers["content-encoding"],(z.headers["content-encoding"]||"").toLowerCase()){case"gzip":case"x-gzip":case"compress":case"x-compress":j.push(rf.default.createUnzip(KPe)),delete z.headers["content-encoding"];break;case"deflate":j.push(new GPe),j.push(rf.default.createUnzip(KPe)),delete z.headers["content-encoding"];break;case"br":VPe&&(j.push(rf.default.createBrotliDecompress(MYt)),delete z.headers["content-encoding"])}se=j.length>1?Fh.default.pipeline(j,de.noop):j[0];let ue=Fh.default.finished(se,()=>{ue(),y()}),Te={status:z.statusCode,statusText:z.statusMessage,headers:new ks(z.headers),config:e,request:oe};if(u==="stream")Te.data=se,g0(n,s,Te);else{let Ne=[],je=0;se.on("data",function(ve){Ne.push(ve),je+=ve.length,e.maxContentLength>-1&&je>e.maxContentLength&&(p=!0,se.destroy(),s(new Ze("maxContentLength size of "+e.maxContentLength+" exceeded",Ze.ERR_BAD_RESPONSE,e,oe)))}),se.on("aborted",function(){if(p)return;let ve=new Ze("maxContentLength size of "+e.maxContentLength+" exceeded",Ze.ERR_BAD_RESPONSE,e,oe);se.destroy(ve),s(ve)}),se.on("error",function(ve){m.destroyed||s(Ze.from(ve,null,e,oe))}),se.on("end",function(){try{let ve=Ne.length===1?Ne[0]:Buffer.concat(Ne);u!=="arraybuffer"&&(ve=ve.toString(l),(!l||l==="utf8")&&(ve=de.stripBOM(ve))),Te.data=ve}catch(ve){return s(Ze.from(ve,null,e,Te.request,Te))}g0(n,s,Te)})}h.once("abort",Ne=>{se.destroyed||(se.emit("error",Ne),se.destroy())})}),h.once("abort",U=>{s(U),m.destroy(U)}),m.on("error",function(z){s(Ze.from(z,null,e,m))}),m.on("socket",function(z){z.setKeepAlive(!0,1e3*60)}),e.timeout){let U=parseInt(e.timeout,10);if(Number.isNaN(U)){s(new Ze("error trying to parse `config.timeout` to int",Ze.ERR_BAD_OPTION_VALUE,e,m));return}m.setTimeout(U,function(){if(f)return;let j=e.timeout?"timeout of "+e.timeout+"ms exceeded":"timeout exceeded",J=e.transitional||Hx;e.timeoutErrorMessage&&(j=e.timeoutErrorMessage),s(new Ze(j,J.clarifyTimeoutError?Ze.ETIMEDOUT:Ze.ECONNABORTED,e,m)),g()})}if(de.isStream(a)){let U=!1,z=!1;a.on("end",()=>{U=!0}),a.once("error",j=>{z=!0,m.destroy(j)}),a.on("close",()=>{!U&&!z&&g(new mu("Request stream has been aborted",e,m))}),a.pipe(m)}else m.end(a)})};var a3e=Os.hasStandardBrowserEnv?{write(t,e,r,n,s,i){let a=[t+"="+encodeURIComponent(e)];de.isNumber(r)&&a.push("expires="+new Date(r).toGMTString()),de.isString(n)&&a.push("path="+n),de.isString(s)&&a.push("domain="+s),i===!0&&a.push("secure"),document.cookie=a.join("; ")},read(t){let e=document.cookie.match(new RegExp("(^|;\\s*)("+t+")=([^;]*)"));return e?decodeURIComponent(e[3]):null},remove(t){this.write(t,"",Date.now()-864e5)}}:{write(){},read(){return null},remove(){}};var o3e=Os.hasStandardBrowserEnv?function(){let e=/(msie|trident)/i.test(navigator.userAgent),r=document.createElement("a"),n;function s(i){let a=i;return e&&(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=de.isString(a)?s(a):a;return o.protocol===n.protocol&&o.host===n.host}}():function(){return function(){return!0}}();function c3e(t,e){let r=0,n=z3(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[e?"download":"upload"]=!0,t(l)}}var HYt=typeof XMLHttpRequest<"u",u3e=HYt&&function(t){return new Promise(function(r,n){let s=t.data,i=ks.from(t.headers).normalize(),{responseType:a,withXSRFToken:o}=t,c;function u(){t.cancelToken&&t.cancelToken.unsubscribe(c),t.signal&&t.signal.removeEventListener("abort",c)}let l;if(de.isFormData(s)){if(Os.hasStandardBrowserEnv||Os.hasStandardBrowserWebWorkerEnv)i.setContentType(!1);else if((l=i.getContentType())!==!1){let[h,...y]=l?l.split(";").map(g=>g.trim()).filter(Boolean):[];i.setContentType([h||"multipart/form-data",...y].join("; "))}}let d=new XMLHttpRequest;if(t.auth){let h=t.auth.username||"",y=t.auth.password?unescape(encodeURIComponent(t.auth.password)):"";i.set("Authorization","Basic "+btoa(h+":"+y))}let f=Lh(t.baseURL,t.url);d.open(t.method.toUpperCase(),Bh(f,t.params,t.paramsSerializer),!0),d.timeout=t.timeout;function p(){if(!d)return;let h=ks.from("getAllResponseHeaders"in d&&d.getAllResponseHeaders()),g={data:!a||a==="text"||a==="json"?d.responseText:d.response,status:d.status,statusText:d.statusText,headers:h,config:t,request:d};g0(function(x){r(x),u()},function(x){n(x),u()},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 Ze("Request aborted",Ze.ECONNABORTED,t,d)),d=null)},d.onerror=function(){n(new Ze("Network Error",Ze.ERR_NETWORK,t,d)),d=null},d.ontimeout=function(){let y=t.timeout?"timeout of "+t.timeout+"ms exceeded":"timeout exceeded",g=t.transitional||Hx;t.timeoutErrorMessage&&(y=t.timeoutErrorMessage),n(new Ze(y,g.clarifyTimeoutError?Ze.ETIMEDOUT:Ze.ECONNABORTED,t,d)),d=null},Os.hasStandardBrowserEnv&&(o&&de.isFunction(o)&&(o=o(t)),o||o!==!1&&o3e(f))){let h=t.xsrfHeaderName&&t.xsrfCookieName&&a3e.read(t.xsrfCookieName);h&&i.set(t.xsrfHeaderName,h)}s===void 0&&i.setContentType(null),"setRequestHeader"in d&&de.forEach(i.toJSON(),function(y,g){d.setRequestHeader(g,y)}),de.isUndefined(t.withCredentials)||(d.withCredentials=!!t.withCredentials),a&&a!=="json"&&(d.responseType=t.responseType),typeof t.onDownloadProgress=="function"&&d.addEventListener("progress",c3e(t.onDownloadProgress,!0)),typeof t.onUploadProgress=="function"&&d.upload&&d.upload.addEventListener("progress",c3e(t.onUploadProgress)),(t.cancelToken||t.signal)&&(c=h=>{d&&(n(!h||h.type?new mu(null,t,d):h),d.abort(),d=null)},t.cancelToken&&t.cancelToken.subscribe(c),t.signal&&(t.signal.aborted?c():t.signal.addEventListener("abort",c)));let m=JS(f);if(m&&Os.protocols.indexOf(m)===-1){n(new Ze("Unsupported protocol "+m+":",Ze.ERR_BAD_REQUEST,t));return}d.send(s||null)})};var xG={http:i3e,xhr:u3e};de.forEach(xG,(t,e)=>{if(t){try{Object.defineProperty(t,"name",{value:e})}catch{}Object.defineProperty(t,"adapterName",{value:e})}});var l3e=t=>`- ${t}`,GYt=t=>de.isFunction(t)||t===null||t===!1,Y3={getAdapter:t=>{t=de.isArray(t)?t:[t];let{length:e}=t,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=e?i.length>1?`since : +`+i.map(l3e).join(` +`):" "+l3e(i[0]):"as no adapter specified";throw new Ze("There is no suitable adapter to dispatch the request "+a,"ERR_NOT_SUPPORT")}return n},adapters:xG};function bG(t){if(t.cancelToken&&t.cancelToken.throwIfRequested(),t.signal&&t.signal.aborted)throw new mu(null,t)}function J3(t){return bG(t),t.headers=ks.from(t.headers),t.data=HS.call(t,t.transformRequest),["post","put","patch"].indexOf(t.method)!==-1&&t.headers.setContentType("application/x-www-form-urlencoded",!1),Y3.getAdapter(t.adapter||Gx.adapter)(t).then(function(n){return bG(t),n.data=HS.call(t,t.transformResponse,n),n.headers=ks.from(n.headers),n},function(n){return GS(n)||(bG(t),n&&n.response&&(n.response.data=HS.call(t,t.transformResponse,n.response),n.response.headers=ks.from(n.response.headers))),Promise.reject(n)})}var d3e=t=>t instanceof ks?t.toJSON():t;function nf(t,e){e=e||{};let r={};function n(u,l,d){return de.isPlainObject(u)&&de.isPlainObject(l)?de.merge.call({caseless:d},u,l):de.isPlainObject(l)?de.merge({},l):de.isArray(l)?l.slice():l}function s(u,l,d){if(de.isUndefined(l)){if(!de.isUndefined(u))return n(void 0,u,d)}else return n(u,l,d)}function i(u,l){if(!de.isUndefined(l))return n(void 0,l)}function a(u,l){if(de.isUndefined(l)){if(!de.isUndefined(u))return n(void 0,u)}else return n(void 0,l)}function o(u,l,d){if(d in e)return n(u,l);if(d in t)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(d3e(u),d3e(l),!0)};return de.forEach(Object.keys(Object.assign({},t,e)),function(l){let d=c[l]||s,f=d(t[l],e[l],l);de.isUndefined(f)&&d!==o||(r[l]=f)}),r}var _G={};["object","boolean","number","function","string","symbol"].forEach((t,e)=>{_G[t]=function(n){return typeof n===t||"a"+(e<1?"n ":" ")+t}});var f3e={};_G.transitional=function(e,r,n){function s(i,a){return"[Axios v"+Uh+"] Transitional option '"+i+"'"+a+(n?". "+n:"")}return(i,a,o)=>{if(e===!1)throw new Ze(s(a," has been removed"+(r?" in "+r:"")),Ze.ERR_DEPRECATED);return r&&!f3e[a]&&(f3e[a]=!0,console.warn(s(a," has been deprecated since v"+r+" and will be removed in the near future"))),e?e(i,a,o):!0}};function zYt(t,e,r){if(typeof t!="object")throw new Ze("options must be an object",Ze.ERR_BAD_OPTION_VALUE);let n=Object.keys(t),s=n.length;for(;s-- >0;){let i=n[s],a=e[i];if(a){let o=t[i],c=o===void 0||a(o,i,t);if(c!==!0)throw new Ze("option "+i+" must be "+c,Ze.ERR_BAD_OPTION_VALUE);continue}if(r!==!0)throw new Ze("Unknown option "+i,Ze.ERR_BAD_OPTION)}}var X3={assertOptions:zYt,validators:_G};var x0=X3.validators,Xx=class{constructor(e){this.defaults=e,this.interceptors={request:new HH,response:new HH}}async request(e,r){try{return await this._request(e,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(e,r){typeof e=="string"?(r=r||{},r.url=e):r=e||{},r=nf(this.defaults,r);let{transitional:n,paramsSerializer:s,headers:i}=r;n!==void 0&&X3.assertOptions(n,{silentJSONParsing:x0.transitional(x0.boolean),forcedJSONParsing:x0.transitional(x0.boolean),clarifyTimeoutError:x0.transitional(x0.boolean)},!1),s!=null&&(de.isFunction(s)?r.paramsSerializer={serialize:s}:X3.assertOptions(s,{encode:x0.function,serialize:x0.function},!0)),r.method=(r.method||this.defaults.method||"get").toLowerCase();let a=i&&de.merge(i.common,i[r.method]);i&&de.forEach(["delete","get","head","post","put","patch","common"],m=>{delete i[m]}),r.headers=ks.concat(a,i);let o=[],c=!0;this.interceptors.request.forEach(function(h){typeof h.runWhen=="function"&&h.runWhen(r)===!1||(c=c&&h.synchronous,o.unshift(h.fulfilled,h.rejected))});let u=[];this.interceptors.response.forEach(function(h){u.push(h.fulfilled,h.rejected)});let l,d=0,f;if(!c){let m=[J3.bind(this),void 0];for(m.unshift.apply(m,o),m.push.apply(m,u),f=m.length,l=Promise.resolve(r);d{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},e(function(i,a,o){n.reason||(n.reason=new mu(i,a,o),r(n.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){if(this.reason){e(this.reason);return}this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;let r=this._listeners.indexOf(e);r!==-1&&this._listeners.splice(r,1)}static source(){let e;return{token:new t(function(s){e=s}),cancel:e}}},p3e=EG;function vG(t){return function(r){return t.apply(null,r)}}function SG(t){return de.isObject(t)&&t.isAxiosError===!0}var IG={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(IG).forEach(([t,e])=>{IG[e]=t});var m3e=IG;function h3e(t){let e=new ZS(t),r=LS(ZS.prototype.request,e);return de.extend(r,ZS.prototype,e,{allOwnKeys:!0}),de.extend(r,e,null,{allOwnKeys:!0}),r.create=function(s){return h3e(nf(t,s))},r}var Es=h3e(Gx);Es.Axios=ZS;Es.CanceledError=mu;Es.CancelToken=p3e;Es.isCancel=GS;Es.VERSION=Uh;Es.toFormData=h0;Es.AxiosError=Ze;Es.Cancel=Es.CanceledError;Es.all=function(e){return Promise.all(e)};Es.spread=vG;Es.isAxiosError=SG;Es.mergeConfig=nf;Es.AxiosHeaders=ks;Es.formToJSON=t=>F3(de.isHTMLForm(t)?new FormData(t):t);Es.getAdapter=Y3.getAdapter;Es.HttpStatusCode=m3e;Es.default=Es;var he=Es;var{Axios:gGr,AxiosError:yGr,CanceledError:AGr,isCancel:xGr,CancelToken:bGr,VERSION:_Gr,all:EGr,Cancel:vGr,isAxiosError:SGr,spread:IGr,toFormData:CGr,AxiosHeaders:TGr,HttpStatusCode:wGr,formToJSON:RGr,getAdapter:NGr,mergeConfig:OGr}=he;var g3e=Ce(require("https"),1),y3e=Ce(require("http"),1),KYt=Number.parseInt(process.env.CATPAW_REQ_TIMEOUT_MS||"20000",10)||2e4,VYt=he.create({timeout:KYt,httpsAgent:new g3e.default.Agent({keepAlive:!1,rejectUnauthorized:!1,maxCachedSessions:0}),httpAgent:new y3e.default.Agent({keepAlive:!1}),proxy:!1}),fe=VYt;var JD={};os(JD,{contains:()=>prr,default:()=>frr,html:()=>WG,load:()=>De,merge:()=>mrr,parseHTML:()=>hrr,root:()=>grr,text:()=>cf,xml:()=>$G});var YYt={xml:!1,decodeEntities:!0},eI=YYt,A3e={_useHtmlParser2:!0,xmlMode:!0};function tI(t){return t?.xml?typeof t.xml=="boolean"?A3e:{...A3e,...t.xml}:t??void 0}var v0={};os(v0,{contains:()=>UG,html:()=>WG,merge:()=>FJt,parseHTML:()=>$Jt,root:()=>UJt,text:()=>cf,xml:()=>$G});var E0={};os(E0,{DocumentPosition:()=>Sc,append:()=>_Jt,appendChild:()=>bJt,compareDocumentPosition:()=>G3e,existsOne:()=>Q3e,filter:()=>nb,find:()=>dD,findAll:()=>IJt,findOne:()=>fD,findOneChild:()=>SJt,getAttributeValue:()=>gJt,getChildren:()=>rb,getElementById:()=>RJt,getElements:()=>wJt,getElementsByClassName:()=>NJt,getElementsByTagName:()=>Gh,getElementsByTagType:()=>OJt,getFeed:()=>MG,getInnerHTML:()=>hJt,getName:()=>AJt,getOuterHTML:()=>q3e,getParent:()=>j3e,getSiblings:()=>BG,getText:()=>cD,hasAttrib:()=>yJt,hasChildren:()=>tn,innerText:()=>cI,isCDATA:()=>Zx,isComment:()=>Hh,isDocument:()=>hu,isTag:()=>it,isText:()=>no,nextElementSibling:()=>uD,prepend:()=>vJt,prependChild:()=>EJt,prevElementSibling:()=>lD,removeElement:()=>of,removeSubsets:()=>kJt,replaceElement:()=>xJt,testElement:()=>TJt,textContent:()=>af,uniqueSort:()=>b0});var Pr;(function(t){t.Root="root",t.Text="text",t.Directive="directive",t.Comment="comment",t.Script="script",t.Style="style",t.Tag="tag",t.CDATA="cdata",t.Doctype="doctype"})(Pr||(Pr={}));function x3e(t){return t.type===Pr.Tag||t.type===Pr.Script||t.type===Pr.Style}var b3e=Pr.Root,_3e=Pr.Text,E3e=Pr.Directive,v3e=Pr.Comment,S3e=Pr.Script,I3e=Pr.Style,C3e=Pr.Tag,T3e=Pr.CDATA,w3e=Pr.Doctype;var Z3=class{constructor(){this.parent=null,this.prev=null,this.next=null,this.startIndex=null,this.endIndex=null}get parentNode(){return this.parent}set parentNode(e){this.parent=e}get previousSibling(){return this.prev}set previousSibling(e){this.prev=e}get nextSibling(){return this.next}set nextSibling(e){this.next=e}cloneNode(e=!1){return iI(this,e)}},rI=class extends Z3{constructor(e){super(),this.data=e}get nodeValue(){return this.data}set nodeValue(e){this.data=e}},vl=class extends rI{constructor(){super(...arguments),this.type=Pr.Text}get nodeType(){return 3}},qh=class extends rI{constructor(){super(...arguments),this.type=Pr.Comment}get nodeType(){return 8}},jh=class extends rI{constructor(e,r){super(r),this.name=e,this.type=Pr.Directive}get nodeType(){return 1}},nI=class extends Z3{constructor(e){super(),this.children=e}get firstChild(){var e;return(e=this.children[0])!==null&&e!==void 0?e:null}get lastChild(){return this.children.length>0?this.children[this.children.length-1]:null}get childNodes(){return this.children}set childNodes(e){this.children=e}},sI=class extends nI{constructor(){super(...arguments),this.type=Pr.CDATA}get nodeType(){return 4}},Oo=class extends nI{constructor(){super(...arguments),this.type=Pr.Root}get nodeType(){return 9}},Qh=class extends nI{constructor(e,r,n=[],s=e==="script"?Pr.Script:e==="style"?Pr.Style:Pr.Tag){super(n),this.name=e,this.attribs=r,this.type=s}get nodeType(){return 1}get tagName(){return this.name}set tagName(e){this.name=e}get attributes(){return Object.keys(this.attribs).map(e=>{var r,n;return{name:e,value:this.attribs[e],namespace:(r=this["x-attribsNamespace"])===null||r===void 0?void 0:r[e],prefix:(n=this["x-attribsPrefix"])===null||n===void 0?void 0:n[e]}})}};function it(t){return x3e(t)}function Zx(t){return t.type===Pr.CDATA}function no(t){return t.type===Pr.Text}function Hh(t){return t.type===Pr.Comment}function eD(t){return t.type===Pr.Directive}function hu(t){return t.type===Pr.Root}function tn(t){return Object.prototype.hasOwnProperty.call(t,"children")}function iI(t,e=!1){let r;if(no(t))r=new vl(t.data);else if(Hh(t))r=new qh(t.data);else if(it(t)){let n=e?CG(t.children):[],s=new Qh(t.name,{...t.attribs},n);n.forEach(i=>i.parent=s),t.namespace!=null&&(s.namespace=t.namespace),t["x-attribsNamespace"]&&(s["x-attribsNamespace"]={...t["x-attribsNamespace"]}),t["x-attribsPrefix"]&&(s["x-attribsPrefix"]={...t["x-attribsPrefix"]}),r=s}else if(Zx(t)){let n=e?CG(t.children):[],s=new sI(n);n.forEach(i=>i.parent=s),r=s}else if(hu(t)){let n=e?CG(t.children):[],s=new Oo(n);n.forEach(i=>i.parent=s),t["x-mode"]&&(s["x-mode"]=t["x-mode"]),r=s}else if(eD(t)){let n=new jh(t.name,t.data);t["x-name"]!=null&&(n["x-name"]=t["x-name"],n["x-publicId"]=t["x-publicId"],n["x-systemId"]=t["x-systemId"]),r=n}else throw new Error(`Not implemented yet: ${t.type}`);return r.startIndex=t.startIndex,r.endIndex=t.endIndex,t.sourceCodeLocation!=null&&(r.sourceCodeLocation=t.sourceCodeLocation),r}function CG(t){let e=t.map(r=>iI(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(t=>t.charCodeAt(0)));var rD=new Uint16Array("\u0200aglq \x1B\u026D\0\0p;\u4026os;\u4027t;\u403Et;\u403Cuot;\u4022".split("").map(t=>t.charCodeAt(0)));var TG,JYt=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]]),tb=(TG=String.fromCodePoint)!==null&&TG!==void 0?TG:function(t){let e="";return t>65535&&(t-=65536,e+=String.fromCharCode(t>>>10&1023|55296),t=56320|t&1023),e+=String.fromCharCode(t),e};function aI(t){var e;return t>=55296&&t<=57343||t>1114111?65533:(e=JYt.get(t))!==null&&e!==void 0?e:t}var Zs;(function(t){t[t.NUM=35]="NUM",t[t.SEMI=59]="SEMI",t[t.EQUALS=61]="EQUALS",t[t.ZERO=48]="ZERO",t[t.NINE=57]="NINE",t[t.LOWER_A=97]="LOWER_A",t[t.LOWER_F=102]="LOWER_F",t[t.LOWER_X=120]="LOWER_X",t[t.LOWER_Z=122]="LOWER_Z",t[t.UPPER_A=65]="UPPER_A",t[t.UPPER_F=70]="UPPER_F",t[t.UPPER_Z=90]="UPPER_Z"})(Zs||(Zs={}));var XYt=32,vc;(function(t){t[t.VALUE_LENGTH=49152]="VALUE_LENGTH",t[t.BRANCH_LENGTH=16256]="BRANCH_LENGTH",t[t.JUMP_TABLE=127]="JUMP_TABLE"})(vc||(vc={}));function wG(t){return t>=Zs.ZERO&&t<=Zs.NINE}function ZYt(t){return t>=Zs.UPPER_A&&t<=Zs.UPPER_F||t>=Zs.LOWER_A&&t<=Zs.LOWER_F}function eJt(t){return t>=Zs.UPPER_A&&t<=Zs.UPPER_Z||t>=Zs.LOWER_A&&t<=Zs.LOWER_Z||wG(t)}function tJt(t){return t===Zs.EQUALS||eJt(t)}var Xs;(function(t){t[t.EntityStart=0]="EntityStart",t[t.NumericStart=1]="NumericStart",t[t.NumericDecimal=2]="NumericDecimal",t[t.NumericHex=3]="NumericHex",t[t.NamedEntity=4]="NamedEntity"})(Xs||(Xs={}));var sf;(function(t){t[t.Legacy=0]="Legacy",t[t.Strict=1]="Strict",t[t.Attribute=2]="Attribute"})(sf||(sf={}));var nD=class{constructor(e,r,n){this.decodeTree=e,this.emitCodePoint=r,this.errors=n,this.state=Xs.EntityStart,this.consumed=1,this.result=0,this.treeIndex=0,this.excess=1,this.decodeMode=sf.Strict}startEntity(e){this.decodeMode=e,this.state=Xs.EntityStart,this.result=0,this.treeIndex=0,this.excess=1,this.consumed=1}write(e,r){switch(this.state){case Xs.EntityStart:return e.charCodeAt(r)===Zs.NUM?(this.state=Xs.NumericStart,this.consumed+=1,this.stateNumericStart(e,r+1)):(this.state=Xs.NamedEntity,this.stateNamedEntity(e,r));case Xs.NumericStart:return this.stateNumericStart(e,r);case Xs.NumericDecimal:return this.stateNumericDecimal(e,r);case Xs.NumericHex:return this.stateNumericHex(e,r);case Xs.NamedEntity:return this.stateNamedEntity(e,r)}}stateNumericStart(e,r){return r>=e.length?-1:(e.charCodeAt(r)|XYt)===Zs.LOWER_X?(this.state=Xs.NumericHex,this.consumed+=1,this.stateNumericHex(e,r+1)):(this.state=Xs.NumericDecimal,this.stateNumericDecimal(e,r))}addToNumericResult(e,r,n,s){if(r!==n){let i=n-r;this.result=this.result*Math.pow(s,i)+parseInt(e.substr(r,i),s),this.consumed+=i}}stateNumericHex(e,r){let n=r;for(;r>14;for(;r>14,i!==0){if(a===Zs.SEMI)return this.emitNamedEntityData(this.treeIndex,i,this.consumed+this.excess);this.decodeMode!==sf.Strict&&(this.result=this.treeIndex,this.consumed+=this.excess,this.excess=0)}}return-1}emitNotTerminatedNamedEntity(){var e;let{result:r,decodeTree:n}=this,s=(n[r]&vc.VALUE_LENGTH)>>14;return this.emitNamedEntityData(r,s,this.consumed),(e=this.errors)===null||e===void 0||e.missingSemicolonAfterCharacterReference(),this.consumed}emitNamedEntityData(e,r,n){let{decodeTree:s}=this;return this.emitCodePoint(r===1?s[e]&~vc.VALUE_LENGTH:s[e+1],n),r===3&&this.emitCodePoint(s[e+2],n),n}end(){var e;switch(this.state){case Xs.NamedEntity:return this.result!==0&&(this.decodeMode!==sf.Attribute||this.result===this.treeIndex)?this.emitNotTerminatedNamedEntity():0;case Xs.NumericDecimal:return this.emitNumericEntity(0,2);case Xs.NumericHex:return this.emitNumericEntity(0,3);case Xs.NumericStart:return(e=this.errors)===null||e===void 0||e.absenceOfDigitsInNumericCharacterReference(this.consumed),0;case Xs.EntityStart:return 0}}};function O3e(t){let e="",r=new nD(t,n=>e+=tb(n));return function(s,i){let a=0,o=0;for(;(o=s.indexOf("&",o))>=0;){e+=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=e+s.slice(a);return e="",c}}function RG(t,e,r,n){let s=(e&vc.BRANCH_LENGTH)>>7,i=e&vc.JUMP_TABLE;if(s===0)return i!==0&&n===i?r:-1;if(i){let c=n-i;return c<0||c>=s?-1:t[r+c]-1}let a=r,o=a+s-1;for(;a<=o;){let c=a+o>>>1,u=t[c];if(un)o=c-1;else return t[c+s]}return-1}var VGr=O3e(tD),YGr=O3e(rD);function sD(t){for(let e=1;e$\x80-\uFFFF]/g,k3e=new Map([[34,"""],[38,"&"],[39,"'"],[60,"<"],[62,">"]]),P3e=String.prototype.codePointAt!=null?(t,e)=>t.codePointAt(e):(t,e)=>(t.charCodeAt(e)&64512)===55296?(t.charCodeAt(e)-55296)*1024+t.charCodeAt(e+1)-56320+65536:t.charCodeAt(e);function oI(t){let e="",r=0,n;for(;(n=NG.exec(t))!==null;){let s=n.index,i=t.charCodeAt(s),a=k3e.get(i);a!==void 0?(e+=t.substring(r,s)+a,r=s+1):(e+=`${t.substring(r,s)}&#x${P3e(t,s).toString(16)};`,r=NG.lastIndex+=+((i&64512)===55296))}return e+t.substr(r)}function OG(t,e){return function(n){let s,i=0,a="";for(;s=t.exec(n);)i!==s.index&&(a+=n.substring(i,s.index)),a+=e.get(s[0].charCodeAt(0)),i=s.index+1;return a+n.substring(i)}}var D3e=OG(/[&<>'"]/g,k3e),iD=OG(/["&\u00A0]/g,new Map([[34,"""],[38,"&"],[160," "]])),aD=OG(/[&<>\u00A0]/g,new Map([[38,"&"],[60,"<"],[62,">"],[160," "]]));var B3e;(function(t){t[t.XML=0]="XML",t[t.HTML=1]="HTML"})(B3e||(B3e={}));var L3e;(function(t){t[t.UTF8=0]="UTF8",t[t.ASCII=1]="ASCII",t[t.Extensive=2]="Extensive",t[t.Attribute=3]="Attribute",t[t.Text=4]="Text"})(L3e||(L3e={}));var $3e=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(t=>[t.toLowerCase(),t])),U3e=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(t=>[t.toLowerCase(),t]));var sJt=new Set(["style","script","xmp","iframe","noembed","noframes","plaintext","noscript"]);function iJt(t){return t.replace(/"/g,""")}function aJt(t,e){var r;if(!t)return;let n=((r=e.encodeEntities)!==null&&r!==void 0?r:e.decodeEntities)===!1?iJt:e.xmlMode||e.encodeEntities!=="utf8"?oI:iD;return Object.keys(t).map(s=>{var i,a;let o=(i=t[s])!==null&&i!==void 0?i:"";return e.xmlMode==="foreign"&&(s=(a=U3e.get(s))!==null&&a!==void 0?a:s),!e.emptyAttrs&&!e.xmlMode&&o===""?s:`${s}="${n(o)}"`}).join(" ")}var F3e=new Set(["area","base","basefont","br","col","command","embed","frame","hr","img","input","isindex","keygen","link","meta","param","source","track","wbr"]);function DG(t,e={}){let r="length"in t?t:[t],n="";for(let s=0;s0&&(n+=DG(t.children,e)),(e.xmlMode||!F3e.has(t.name))&&(n+=``)),n}function dJt(t){return`<${t.data}>`}function fJt(t,e){var r;let n=t.data||"";return((r=e.encodeEntities)!==null&&r!==void 0?r:e.decodeEntities)!==!1&&!(!e.xmlMode&&t.parent&&sJt.has(t.parent.name))&&(n=e.xmlMode||e.encodeEntities!=="utf8"?oI(n):aD(n)),n}function pJt(t){return``}function mJt(t){return``}function q3e(t,e){return oD(t,e)}function hJt(t,e){return tn(t)?t.children.map(r=>q3e(r,e)).join(""):""}function cD(t){return Array.isArray(t)?t.map(cD).join(""):it(t)?t.name==="br"?` +`:cD(t.children):Zx(t)?cD(t.children):no(t)?t.data:""}function af(t){return Array.isArray(t)?t.map(af).join(""):tn(t)&&!Hh(t)?af(t.children):no(t)?t.data:""}function cI(t){return Array.isArray(t)?t.map(cI).join(""):tn(t)&&(t.type===Pr.Tag||Zx(t))?cI(t.children):no(t)?t.data:""}function rb(t){return tn(t)?t.children:[]}function j3e(t){return t.parent||null}function BG(t){let e=j3e(t);if(e!=null)return rb(e);let r=[t],{prev:n,next:s}=t;for(;n!=null;)r.unshift(n),{prev:n}=n;for(;s!=null;)r.push(s),{next:s}=s;return r}function gJt(t,e){var r;return(r=t.attribs)===null||r===void 0?void 0:r[e]}function yJt(t,e){return t.attribs!=null&&Object.prototype.hasOwnProperty.call(t.attribs,e)&&t.attribs[e]!=null}function AJt(t){return t.name}function uD(t){let{next:e}=t;for(;e!==null&&!it(e);)({next:e}=e);return e}function lD(t){let{prev:e}=t;for(;e!==null&&!it(e);)({prev:e}=e);return e}function of(t){if(t.prev&&(t.prev.next=t.next),t.next&&(t.next.prev=t.prev),t.parent){let e=t.parent.children,r=e.lastIndexOf(t);r>=0&&e.splice(r,1)}t.next=null,t.prev=null,t.parent=null}function xJt(t,e){let r=e.prev=t.prev;r&&(r.next=e);let n=e.next=t.next;n&&(n.prev=e);let s=e.parent=t.parent;if(s){let i=s.children;i[i.lastIndexOf(t)]=e,t.parent=null}}function bJt(t,e){if(of(e),e.next=null,e.parent=t,t.children.push(e)>1){let r=t.children[t.children.length-2];r.next=e,e.prev=r}else e.prev=null}function _Jt(t,e){of(e);let{parent:r}=t,n=t.next;if(e.next=n,e.prev=t,t.next=e,e.parent=r,n){if(n.prev=e,r){let s=r.children;s.splice(s.lastIndexOf(n),0,e)}}else r&&r.children.push(e)}function EJt(t,e){if(of(e),e.parent=t,e.prev=null,t.children.unshift(e)!==1){let r=t.children[1];r.prev=e,e.next=r}else e.next=null}function vJt(t,e){of(e);let{parent:r}=t;if(r){let n=r.children;n.splice(n.indexOf(t),0,e)}t.prev&&(t.prev.next=e),e.parent=r,e.prev=t.prev,e.next=t,t.prev=e}function nb(t,e,r=!0,n=1/0){return dD(t,Array.isArray(e)?e:[e],r,n)}function dD(t,e,r,n){let s=[],i=[Array.isArray(e)?e:[e]],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(t(o)&&(s.push(o),--n<=0))return s;r&&tn(o)&&o.children.length>0&&(a.unshift(0),i.unshift(o.children))}}function SJt(t,e){return e.find(t)}function fD(t,e,r=!0){let n=Array.isArray(e)?e:[e];for(let s=0;s0){let a=fD(t,i.children,!0);if(a)return a}}return null}function Q3e(t,e){return(Array.isArray(e)?e:[e]).some(r=>it(r)&&t(r)||tn(r)&&Q3e(t,r.children))}function IJt(t,e){let r=[],n=[Array.isArray(e)?e:[e]],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)&&t(i)&&r.push(i),tn(i)&&i.children.length>0&&(s.unshift(0),n.unshift(i.children))}}var pD={tag_name(t){return typeof t=="function"?e=>it(e)&&t(e.name):t==="*"?it:e=>it(e)&&e.name===t},tag_type(t){return typeof t=="function"?e=>t(e.type):e=>e.type===t},tag_contains(t){return typeof t=="function"?e=>no(e)&&t(e.data):e=>no(e)&&e.data===t}};function LG(t,e){return typeof e=="function"?r=>it(r)&&e(r.attribs[t]):r=>it(r)&&r.attribs[t]===e}function CJt(t,e){return r=>t(r)||e(r)}function H3e(t){let e=Object.keys(t).map(r=>{let n=t[r];return Object.prototype.hasOwnProperty.call(pD,r)?pD[r](n):LG(r,n)});return e.length===0?null:e.reduce(CJt)}function TJt(t,e){let r=H3e(t);return r?r(e):!0}function wJt(t,e,r,n=1/0){let s=H3e(t);return s?nb(s,e,r,n):[]}function RJt(t,e,r=!0){return Array.isArray(e)||(e=[e]),fD(LG("id",t),e,r)}function Gh(t,e,r=!0,n=1/0){return nb(pD.tag_name(t),e,r,n)}function NJt(t,e,r=!0,n=1/0){return nb(LG("class",t),e,r,n)}function OJt(t,e,r=!0,n=1/0){return nb(pD.tag_type(t),e,r,n)}function kJt(t){let e=t.length;for(;--e>=0;){let r=t[e];if(e>0&&t.lastIndexOf(r,e-1)>=0){t.splice(e,1);continue}for(let n=r.parent;n;n=n.parent)if(t.includes(n)){t.splice(e,1);break}}return t}var Sc;(function(t){t[t.DISCONNECTED=1]="DISCONNECTED",t[t.PRECEDING=2]="PRECEDING",t[t.FOLLOWING=4]="FOLLOWING",t[t.CONTAINS=8]="CONTAINS",t[t.CONTAINED_BY=16]="CONTAINED_BY"})(Sc||(Sc={}));function G3e(t,e){let r=[],n=[];if(t===e)return 0;let s=tn(t)?t:t.parent;for(;s;)r.unshift(s),s=s.parent;for(s=tn(e)?e:e.parent;s;)n.unshift(s),s=s.parent;let i=Math.min(r.length,n.length),a=0;for(;ac.indexOf(l)?o===e?Sc.FOLLOWING|Sc.CONTAINED_BY:Sc.FOLLOWING:o===t?Sc.PRECEDING|Sc.CONTAINS:Sc.PRECEDING}function b0(t){return t=t.filter((e,r,n)=>!n.includes(e,r+1)),t.sort((e,r)=>{let n=G3e(e,r);return n&Sc.PRECEDING?-1:n&Sc.FOLLOWING?1:0}),t}function MG(t){let e=mD(MJt,t);return e?e.name==="feed"?PJt(e):DJt(e):null}function PJt(t){var e;let r=t.children,n={type:"atom",items:Gh("entry",r).map(a=>{var o;let{children:c}=a,u={media:z3e(c)};so(u,"id","id",c),so(u,"title","title",c);let l=(o=mD("link",c))===null||o===void 0?void 0:o.attribs.href;l&&(u.link=l);let d=_0("summary",c)||_0("content",c);d&&(u.description=d);let f=_0("updated",c);return f&&(u.pubDate=new Date(f)),u})};so(n,"id","id",r),so(n,"title","title",r);let s=(e=mD("link",r))===null||e===void 0?void 0:e.attribs.href;s&&(n.link=s),so(n,"description","subtitle",r);let i=_0("updated",r);return i&&(n.updated=new Date(i)),so(n,"author","email",r,!0),n}function DJt(t){var e,r;let n=(r=(e=mD("channel",t.children))===null||e===void 0?void 0:e.children)!==null&&r!==void 0?r:[],s={type:t.name.substr(0,3),id:"",items:Gh("item",t.children).map(a=>{let{children:o}=a,c={media:z3e(o)};so(c,"id","guid",o),so(c,"title","title",o),so(c,"link","link",o),so(c,"description","description",o);let u=_0("pubDate",o)||_0("dc:date",o);return u&&(c.pubDate=new Date(u)),c})};so(s,"title","title",n),so(s,"link","link",n),so(s,"description","description",n);let i=_0("lastBuildDate",n);return i&&(s.updated=new Date(i)),so(s,"author","managingEditor",n,!0),s}var BJt=["url","type","lang"],LJt=["fileSize","bitrate","framerate","samplingrate","channels","duration","height","width"];function z3e(t){return Gh("media:content",t).map(e=>{let{attribs:r}=e,n={medium:r.medium,isDefault:!!r.isDefault};for(let s of BJt)r[s]&&(n[s]=r[s]);for(let s of LJt)r[s]&&(n[s]=parseInt(r[s],10));return r.expression&&(n.expression=r.expression),n})}function mD(t,e){return Gh(t,e,!0,1)[0]}function _0(t,e,r=!1){return af(Gh(t,e,r,1)).trim()}function so(t,e,r,n,s=!1){let i=_0(r,n,s);i&&(t[e]=i)}function MJt(t){return t==="rss"||t==="feed"||t==="rdf:RDF"}function V3e(t,e,r){return t?t(e??t._root.children,null,void 0,r).toString():""}function WJt(t,e){return!e&&typeof t=="object"&&t!=null&&!("length"in t)&&!("type"in t)}function WG(t,e){let r=WJt(t)?(e=t,void 0):t,n={...eI,...this===null||this===void 0?void 0:this._options,...tI(e??{})};return V3e(this,r,n)}function $G(t){let e={...this._options,xmlMode:!0};return V3e(this,t,e)}function cf(t){let e=t||(this?this.root():[]),r="";for(let n=0;nnDe,attr:()=>jJt,data:()=>HJt,hasClass:()=>KJt,prop:()=>QJt,removeAttr:()=>zJt,removeClass:()=>sDe,toggleClass:()=>iDe,val:()=>GJt});function ko(t){return t.cheerio!=null}function Y3e(t){return t.replace(/[_.-](\w|$)/g,(e,r)=>r.toUpperCase())}function J3e(t){return t.replace(/[A-Z]/g,"-$&").toLowerCase()}function pn(t,e){let r=t.length;for(let n=0;niI(n,!0)):[iI(t,!0)],r=new Oo(e);return e.forEach(n=>{n.parent=r}),e}var zh;(function(t){t[t.LowerA=97]="LowerA",t[t.LowerZ=122]="LowerZ",t[t.UpperA=65]="UpperA",t[t.UpperZ=90]="UpperZ",t[t.Exclamation=33]="Exclamation"})(zh||(zh={}));function uI(t){let e=t.indexOf("<");if(e<0||e>t.length-3)return!1;let r=t.charCodeAt(e+1);return(r>=zh.LowerA&&r<=zh.LowerZ||r>=zh.UpperA&&r<=zh.UpperZ||r===zh.Exclamation)&&t.includes(">",e+2)}var sb=Object.prototype.hasOwnProperty,lI=/\s+/,FG="data-",X3e={null:null,true:!0,false:!1},jG=/^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,qJt=/^{[^]*}$|^\[[^]*]$/;function gD(t,e,r){var n;if(!(!t||!it(t))){if((n=t.attribs)!==null&&n!==void 0||(t.attribs={}),!e)return t.attribs;if(sb.call(t.attribs,e))return!r&&jG.test(e)?e:t.attribs[e];if(t.name==="option"&&e==="value")return cf(t.children);if(t.name==="input"&&(t.attribs.type==="radio"||t.attribs.type==="checkbox")&&e==="value")return"on"}}function ib(t,e,r){r===null?rDe(t,e):t.attribs[e]=`${r}`}function jJt(t,e){if(typeof t=="object"||e!==void 0){if(typeof e=="function"){if(typeof t!="string")throw new Error("Bad combination of arguments.");return pn(this,(r,n)=>{it(r)&&ib(r,t,e.call(r,n,r.attribs[t]))})}return pn(this,r=>{it(r)&&(typeof t=="object"?Object.keys(t).forEach(n=>{let s=t[n];ib(r,n,s)}):ib(r,t,e))})}return arguments.length>1?this:gD(this[0],t,this.options.xmlMode)}function Z3e(t,e,r){return e in t?t[e]:!r&&jG.test(e)?gD(t,e,!1)!==void 0:gD(t,e,r)}function qG(t,e,r,n){e in t?t[e]=r:ib(t,e,!n&&jG.test(e)?r?"":null:`${r}`)}function QJt(t,e){var r;if(typeof t=="string"&&e===void 0){let n=this[0];if(!n||!it(n))return;switch(t){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[t];return typeof URL<"u"&&(t==="href"&&(n.tagName==="a"||n.name==="link")||t==="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 cI(n);case"textContent":return af(n);case"outerHTML":return this.clone().wrap("").parent().html();case"innerHTML":return this.html();default:return Z3e(n,t,this.options.xmlMode)}}if(typeof t=="object"||e!==void 0){if(typeof e=="function"){if(typeof t=="object")throw new Error("Bad combination of arguments.");return pn(this,(n,s)=>{it(n)&&qG(n,t,e.call(n,s,Z3e(n,t,this.options.xmlMode)),this.options.xmlMode)})}return pn(this,n=>{it(n)&&(typeof t=="object"?Object.keys(t).forEach(s=>{let i=t[s];qG(n,s,i,this.options.xmlMode)}):qG(n,t,e,this.options.xmlMode))})}}function eDe(t,e,r){var n;let s=t;(n=s.data)!==null&&n!==void 0||(s.data={}),typeof e=="object"?Object.assign(s.data,e):typeof e=="string"&&r!==void 0&&(s.data[e]=r)}function tDe(t,e){let r,n,s;e==null?(r=Object.keys(t.attribs).filter(i=>i.startsWith(FG)),n=r.map(i=>Y3e(i.slice(FG.length)))):(r=[FG+J3e(e)],n=[e]);for(let i=0;i{it(i)&&(typeof t=="object"?eDe(i,t):eDe(i,t,e))}),this):sb.call(s.data,t)?s.data[t]:tDe(s,t):tDe(s)}function GJt(t){let e=arguments.length===0,r=this[0];if(!r||!it(r))return e?void 0:this;switch(r.name){case"textarea":return this.text(t);case"select":{let n=this.find("option:selected");if(!e){if(this.attr("multiple")==null&&typeof t=="object")return this;this.find("option").removeAttr("selected");let s=typeof t!="object"?[t]:t;for(let i=0;icf(s.children)):n.attr("value")}case"input":case"option":return e?this.attr("value"):this.attr("value",t)}}function rDe(t,e){!t.attribs||!sb.call(t.attribs,e)||delete t.attribs[e]}function yD(t){return t?t.trim().split(lI):[]}function zJt(t){let e=yD(t);for(let r=0;r{it(n)&&rDe(n,e[r])});return this}function KJt(t){return this.toArray().some(e=>{let r=it(e)&&e.attribs.class,n=-1;if(r&&t.length)for(;(n=r.indexOf(t,n+1))>-1;){let s=n+t.length;if((n===0||lI.test(r[n-1]))&&(s===r.length||lI.test(r[s])))return!0}return!1})}function nDe(t){if(typeof t=="function")return pn(this,(n,s)=>{if(it(n)){let i=n.attribs.class||"";nDe.call([n],t.call(n,s,i))}});if(!t||typeof t!="string")return this;let e=t.split(lI),r=this.length;for(let n=0;n{it(s)&&sDe.call([s],t.call(s,i,s.attribs.class||""))});let e=yD(t),r=e.length,n=arguments.length===0;return pn(this,s=>{if(it(s))if(n)s.attribs.class="";else{let i=yD(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 iDe(t,e){if(typeof t=="function")return pn(this,(a,o)=>{it(a)&&iDe.call([a],t.call(a,o,a.attribs.class||"",e),e)});if(!t||typeof t!="string")return this;let r=t.split(lI),n=r.length,s=typeof e=="boolean"?e?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 pz={};os(pz,{add:()=>rZt,addBack:()=>nZt,children:()=>UXt,closest:()=>kXt,contents:()=>FXt,each:()=>qXt,end:()=>tZt,eq:()=>YXt,filter:()=>QXt,filterArray:()=>fz,find:()=>wXt,first:()=>KXt,get:()=>JXt,has:()=>zXt,index:()=>ZXt,is:()=>HXt,last:()=>VXt,map:()=>jXt,next:()=>PXt,nextAll:()=>DXt,nextUntil:()=>BXt,not:()=>GXt,parent:()=>RXt,parents:()=>NXt,parentsUntil:()=>OXt,prev:()=>LXt,prevAll:()=>MXt,prevUntil:()=>WXt,siblings:()=>$Xt,slice:()=>eZt,toArray:()=>XXt});var ao=Ce(ub(),1);var rz=Ce(S0(),1);var gu=Ce(ub(),1),lf=Ce(S0(),1);var Aa=Ce(ub(),1),bDe=new Map([[Aa.SelectorType.Universal,50],[Aa.SelectorType.Tag,30],[Aa.SelectorType.Attribute,1],[Aa.SelectorType.Pseudo,0]]);function fI(t){return!bDe.has(t.type)}var uXt=new Map([[Aa.AttributeAction.Exists,10],[Aa.AttributeAction.Equals,8],[Aa.AttributeAction.Not,7],[Aa.AttributeAction.Start,6],[Aa.AttributeAction.End,6],[Aa.AttributeAction.Any,5]]);function GG(t){let e=t.map(_De);for(let r=1;r=0&&n>=1)):t.type===Aa.SelectorType.Pseudo&&(t.data?t.name==="has"||t.name==="contains"?n=0:Array.isArray(t.data)?(n=Math.min(...t.data.map(s=>Math.min(...s.map(_De)))),n<0&&(n=0)):n=2:n=3),n}var pI=Ce(S0(),1),lXt=/[-[\]{}()*+?.,\\^$|#\s]/g;function EDe(t){return t.replace(lXt,"\\$&")}var dXt=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 Kh(t,e){return typeof t.ignoreCase=="boolean"?t.ignoreCase:t.ignoreCase==="quirks"?!!e.quirksMode:!e.xmlMode&&dXt.has(t.name)}var vDe={equals(t,e,r){let{adapter:n}=r,{name:s}=e,{value:i}=e;return Kh(e,r)?(i=i.toLowerCase(),a=>{let o=n.getAttributeValue(a,s);return o!=null&&o.length===i.length&&o.toLowerCase()===i&&t(a)}):a=>n.getAttributeValue(a,s)===i&&t(a)},hyphen(t,e,r){let{adapter:n}=r,{name:s}=e,{value:i}=e,a=i.length;return Kh(e,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&&t(c)}):function(c){let u=n.getAttributeValue(c,s);return u!=null&&(u.length===a||u.charAt(a)==="-")&&u.substr(0,a)===i&&t(c)}},element(t,e,r){let{adapter:n}=r,{name:s,value:i}=e;if(/\s/.test(i))return pI.default.falseFunc;let a=new RegExp(`(?:^|\\s)${EDe(i)}(?:$|\\s)`,Kh(e,r)?"i":"");return function(c){let u=n.getAttributeValue(c,s);return u!=null&&u.length>=i.length&&a.test(u)&&t(c)}},exists(t,{name:e},{adapter:r}){return n=>r.hasAttrib(n,e)&&t(n)},start(t,e,r){let{adapter:n}=r,{name:s}=e,{value:i}=e,a=i.length;return a===0?pI.default.falseFunc:Kh(e,r)?(i=i.toLowerCase(),o=>{let c=n.getAttributeValue(o,s);return c!=null&&c.length>=a&&c.substr(0,a).toLowerCase()===i&&t(o)}):o=>{var c;return!!(!((c=n.getAttributeValue(o,s))===null||c===void 0)&&c.startsWith(i))&&t(o)}},end(t,e,r){let{adapter:n}=r,{name:s}=e,{value:i}=e,a=-i.length;return a===0?pI.default.falseFunc:Kh(e,r)?(i=i.toLowerCase(),o=>{var c;return((c=n.getAttributeValue(o,s))===null||c===void 0?void 0:c.substr(a).toLowerCase())===i&&t(o)}):o=>{var c;return!!(!((c=n.getAttributeValue(o,s))===null||c===void 0)&&c.endsWith(i))&&t(o)}},any(t,e,r){let{adapter:n}=r,{name:s,value:i}=e;if(i==="")return pI.default.falseFunc;if(Kh(e,r)){let a=new RegExp(EDe(i),"i");return function(c){let u=n.getAttributeValue(c,s);return u!=null&&u.length>=i.length&&a.test(u)&&t(c)}}return a=>{var o;return!!(!((o=n.getAttributeValue(a,s))===null||o===void 0)&&o.includes(i))&&t(a)}},not(t,e,r){let{adapter:n}=r,{name:s}=e,{value:i}=e;return i===""?a=>!!n.getAttributeValue(a,s)&&t(a):Kh(e,r)?(i=i.toLowerCase(),a=>{let o=n.getAttributeValue(a,s);return(o==null||o.length!==i.length||o.toLowerCase()!==i)&&t(a)}):a=>n.getAttributeValue(a,s)!==i&&t(a)}};var TDe=Ce(ub(),1);var fXt=new Set([9,10,12,13,32]),SDe=48,pXt=57;function IDe(t){if(t=t.trim().toLowerCase(),t==="even")return[2,0];if(t==="odd")return[2,1];let e=0,r=0,n=i(),s=a();if(e=SDe&&t.charCodeAt(e)<=pXt;)u=u*10+(t.charCodeAt(e)-SDe),e++;return e===c?null:u}function o(){for(;ei<=r;if(e===0)return i=>i===r;if(e===1)return r<0?zG.default.trueFunc:i=>i>=r;let n=Math.abs(e),s=(r%n+n)%n;return e>1?i=>i>=r&&i%n===s:i=>i<=r&&i%n===s}function lb(t){return CDe(IDe(t))}var io=Ce(S0(),1);function bD(t,e){return r=>{let n=e.getParent(r);return n!=null&&e.isTag(n)&&t(r)}}var db={contains(t,e,{adapter:r}){return function(s){return t(s)&&r.getText(s).includes(e)}},icontains(t,e,{adapter:r}){let n=e.toLowerCase();return function(i){return t(i)&&r.getText(i).toLowerCase().includes(n)}},"nth-child"(t,e,{adapter:r,equals:n}){let s=lb(e);return s===io.default.falseFunc?io.default.falseFunc:s===io.default.trueFunc?bD(t,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)&&t(a)}},"nth-of-type"(t,e,{adapter:r,equals:n}){let s=lb(e);return s===io.default.falseFunc?io.default.falseFunc:s===io.default.trueFunc?bD(t,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)&&t(a)}},root(t,e,{adapter:r}){return n=>{let s=r.getParent(n);return(s==null||!r.isTag(s))&&t(n)}},scope(t,e,r,n){let{equals:s}=r;return!n||n.length===0?db.root(t,e,r):n.length===1?i=>s(n[0],i)&&t(i):i=>n.includes(i)&&t(i)},hover:KG("isHovered"),visited:KG("isVisited"),active:KG("isActive")};function KG(t){return function(r,n,{adapter:s}){let i=s[t];return typeof i!="function"?io.default.falseFunc:function(o){return i(o)&&r(o)}}}var mI={empty(t,{adapter:e}){return!e.getChildren(t).some(r=>e.isTag(r)||e.getText(r)!=="")},"first-child"(t,{adapter:e,equals:r}){if(e.prevElementSibling)return e.prevElementSibling(t)==null;let n=e.getSiblings(t).find(s=>e.isTag(s));return n!=null&&r(t,n)},"last-child"(t,{adapter:e,equals:r}){let n=e.getSiblings(t);for(let s=n.length-1;s>=0;s--){if(r(t,n[s]))return!0;if(e.isTag(n[s]))break}return!1},"first-of-type"(t,{adapter:e,equals:r}){let n=e.getSiblings(t),s=e.getName(t);for(let i=0;i=0;i--){let a=n[i];if(r(t,a))return!0;if(e.isTag(a)&&e.getName(a)===s)break}return!1},"only-of-type"(t,{adapter:e,equals:r}){let n=e.getName(t);return e.getSiblings(t).every(s=>r(t,s)||!e.isTag(s)||e.getName(s)!==n)},"only-child"(t,{adapter:e,equals:r}){return e.getSiblings(t).every(n=>r(t,n)||!e.isTag(n))}};function VG(t,e,r,n){if(r===null){if(t.length>n)throw new Error(`Pseudo-class :${e} requires an argument`)}else if(t.length===n)throw new Error(`Pseudo-class :${e} doesn't have any arguments`)}var _D={"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 pc=Re(s0(),1);var YH={};function JH(t,e){return t===pc.default.falseFunc?pc.default.falseFunc:r=>e.isTag(r)&&t(r)}function XH(t,e){let r=e.getSiblings(t);if(r.length<=1)return[];let n=r.indexOf(t);return n<0||n===r.length-1?[]:r.slice(n+1).filter(e.isTag)}function KH(t){return{xmlMode:!!t.xmlMode,lowerCaseAttributeNames:!!t.lowerCaseAttributeNames,lowerCaseTags:!!t.lowerCaseTags,quirksMode:!!t.quirksMode,cacheResults:!!t.cacheResults,pseudos:t.pseudos,adapter:t.adapter,equals:t.equals}}var zH=(t,e,r,n,s)=>{let i=s(e,KH(r),n);return i===pc.default.trueFunc?t:i===pc.default.falseFunc?pc.default.falseFunc:a=>i(a)&&t(a)},X3={is:zH,matches:zH,where:zH,not(t,e,r,n,s){let i=s(e,KH(r),n);return i===pc.default.falseFunc?t:i===pc.default.trueFunc?pc.default.falseFunc:a=>!i(a)&&t(a)},has(t,e,r,n,s){let{adapter:i}=r,a=KH(r);a.relativeSelector=!0;let o=e.some(l=>l.some(av))?[YH]:void 0,c=s(e,a,o);if(c===pc.default.falseFunc)return pc.default.falseFunc;let u=JH(c,i);if(o&&c!==pc.default.trueFunc){let{shouldTestNextSiblings:l=!1}=c;return d=>{if(!t(d))return!1;o[0]=d;let f=i.getChildren(d),p=l?[...f,...XH(d,i)]:f;return i.existsOne(u,p)}}return l=>t(l)&&i.existsOne(u,i.getChildren(l))}};function BPe(t,e,r,n,s){var i;let{name:a,data:o}=e;if(Array.isArray(o)){if(!(a in X3))throw new Error(`Unknown pseudo-class :${a}(${o})`);return X3[a](t,o,r,n,s)}let c=(i=r.pseudos)===null||i===void 0?void 0:i[a],u=typeof c=="string"?c:J3[a];if(typeof u=="string"){if(o!=null)throw new Error(`Pseudo ${a} doesn't have any arguments`);let l=(0,LPe.parse)(u);return X3.is(t,l,r,n,s)}if(typeof c=="function")return VH(c,a,o,1),l=>c(l,o)&&t(l);if(a in Nx)return Nx[a](t,o,r,n);if(a in cv){let l=cv[a];return VH(l,a,o,2),d=>l(d,r,o)&&t(d)}throw new Error(`Unknown pseudo-class :${a}`)}var mc=Re(wx(),1);function ZH(t,e){let r=e.getParent(t);return r&&e.isTag(r)?r:null}function MPe(t,e,r,n,s){let{adapter:i,equals:a}=r;switch(e.type){case mc.SelectorType.PseudoElement:throw new Error("Pseudo-elements are not supported by css-select");case mc.SelectorType.ColumnCombinator:throw new Error("Column combinators are not yet supported by css-select");case mc.SelectorType.Attribute:{if(e.namespace!=null)throw new Error("Namespaced attributes are not yet supported by css-select");return(!r.xmlMode||r.lowerCaseAttributeNames)&&(e.name=e.name.toLowerCase()),OPe[e.action](t,e,r)}case mc.SelectorType.Pseudo:return BPe(t,e,r,n,s);case mc.SelectorType.Tag:{if(e.namespace!=null)throw new Error("Namespaced tag names are not yet supported by css-select");let{name:o}=e;return(!r.xmlMode||r.lowerCaseTags)&&(o=o.toLowerCase()),function(u){return i.getName(u)===o&&t(u)}}case mc.SelectorType.Descendant:{if(r.cacheResults===!1||typeof WeakSet>"u")return function(u){let l=u;for(;l=ZH(l,i);)if(t(l))return!0;return!1};let o=new WeakSet;return function(u){let l=u;for(;l=ZH(l,i);)if(!o.has(l)){if(i.isTag(l)&&t(l))return!0;o.add(l)}return!1}}case"_flexibleDescendant":return function(c){let u=c;do if(t(u))return!0;while(u=ZH(u,i));return!1};case mc.SelectorType.Parent:return function(c){return i.getChildren(c).some(u=>i.isTag(u)&&t(u))};case mc.SelectorType.Child:return function(c){let u=i.getParent(c);return u!=null&&i.isTag(u)&&t(u)};case mc.SelectorType.Sibling:return function(c){let u=i.getSiblings(c);for(let l=0;le.some($Pe)))}var iVt={type:su.SelectorType.Descendant},aVt={type:"_flexibleDescendant"},oVt={type:su.SelectorType.Pseudo,name:"scope",data:null};function cVt(t,{adapter:e},r){let n=!!r?.every(s=>{let i=e.isTag(s)&&e.getParent(s);return s===YH||i&&e.isTag(i)});for(let s of t){if(!(s.length>0&&av(s[0])&&s[0].type!==su.SelectorType.Descendant))if(n&&!s.some($Pe))s.unshift(iVt);else continue;s.unshift(oVt)}}function eD(t,e,r){var n;t.forEach(HH),r=(n=e.context)!==null&&n!==void 0?n:r;let s=Array.isArray(r),i=r&&(Array.isArray(r)?r:[r]);if(e.relativeSelector!==!1)cVt(t,e,i);else if(t.some(c=>c.length>0&&av(c[0])))throw new Error("Relative selectors are not allowed when the `relativeSelector` option is disabled");let a=!1,o=t.map(c=>{if(c.length>=2){let[u,l]=c;u.type!==su.SelectorType.Pseudo||u.name!=="scope"||(s&&l.type===su.SelectorType.Descendant?c[1]=aVt:(l.type===su.SelectorType.Adjacent||l.type===su.SelectorType.Sibling)&&(a=!0))}return uVt(c,e,i)}).reduce(lVt,jd.default.falseFunc);return o.shouldTestNextSiblings=a,o}function uVt(t,e,r){var n;return t.reduce((s,i)=>s===jd.default.falseFunc?jd.default.falseFunc:MPe(s,i,e,r,eD),(n=e.rootFunc)!==null&&n!==void 0?n:jd.default.trueFunc)}function lVt(t,e){return e===jd.default.falseFunc||t===jd.default.trueFunc?t:t===jd.default.falseFunc||e===jd.default.trueFunc?e:function(n){return t(n)||e(n)}}var FPe=(t,e)=>t===e,dVt={adapter:r0,equals:FPe};function UPe(t){var e,r,n,s;let i=t??dVt;return(e=i.adapter)!==null&&e!==void 0||(i.adapter=r0),(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:FPe),i}function tQ(t){return function(r,n,s){let i=UPe(n);return t(r,i,s)}}var xFr=tQ(WPe),bFr=tQ(Z3),tD=tQ(eD);function qPe(t){return function(r,n,s){let i=UPe(s);typeof r!="function"&&(r=Z3(r,i,n));let a=rD(n,i.adapter,r.shouldTestNextSiblings);return t(r,a,i)}}function rD(t,e,r=!1){return r&&(t=fVt(t,e)),Array.isArray(t)?e.removeSubsets(t):e.getChildren(t)}function fVt(t,e){let r=Array.isArray(t)?t.slice(0):[t],n=r.length;for(let s=0;st===eQ.default.falseFunc||!e||e.length===0?[]:r.adapter.findAll(t,e)),_Fr=qPe((t,e,r)=>t===eQ.default.falseFunc||!e||e.length===0?null:r.adapter.findOne(t,e));var sD=Re(s0(),1);var pVt=new Set(["first","last","eq","gt","nth","lt","even","odd"]);function Ox(t){return t.type!=="pseudo"?!1:pVt.has(t.name)?!0:t.name==="not"&&Array.isArray(t.data)?t.data.some(e=>e.some(Ox)):!1}function jPe(t,e,r){let n=e!=null?parseInt(e,10):NaN;switch(t){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 HPe(t){for(;t.parent;)t=t.parent;return t}function nD(t){let e=[],r=[];for(let n of t)n.some(Ox)?e.push(n):r.push(n);return[r,e]}var mVt={type:Ja.SelectorType.Universal,namespace:null},hVt={type:Ja.SelectorType.Pseudo,name:"scope",data:null};function sQ(t,e,r={}){return iQ([t],e,r)}function iQ(t,e,r={}){if(typeof e=="function")return t.some(e);let[n,s]=nD((0,Ja.parse)(e));return n.length>0&&t.some(tD(n,r))||s.some(i=>GPe(i,t,r).length>0)}function gVt(t,e,r,n){let s=typeof r=="string"?parseInt(r,10):NaN;switch(t){case"first":case"lt":return e;case"last":return e.length>0?[e[e.length-1]]:e;case"nth":case"eq":return isFinite(s)&&Math.abs(s)a%2===0);case"odd":return e.filter((i,a)=>a%2===1);case"not":{let i=new Set(QPe(r,e,n));return e.filter(a=>!i.has(a))}}}function aQ(t,e,r={}){return QPe((0,Ja.parse)(t),e,r)}function QPe(t,e,r){if(e.length===0)return[];let[n,s]=nD(t),i;if(n.length){let a=nQ(e,n,r);if(s.length===0)return a;a.length&&(i=new Set(a))}for(let a=0;ast(l)&&!i.has(l)):e).length===0)break;let u=GPe(o,e,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===e.length?e:e.filter(a=>i.has(a)):[]}function GPe(t,e,r){var n;if(t.some(Ja.isTraversal)){let s=(n=r.root)!==null&&n!==void 0?n:HPe(e[0]),i={...r,context:e,relativeSelector:!1};return t.push(hVt),iD(s,t,i,!0,e.length)}return iD(e,t,r,!1,e.length)}function VPe(t,e,r={},n=1/0){if(typeof t=="function")return zPe(e,t);let[s,i]=nD((0,Ja.parse)(t)),a=i.map(o=>iD(e,o,r,!0,n));return s.length&&a.push(rQ(e,s,r,n)),a.length===0?[]:a.length===1?a[0]:e0(a.reduce((o,c)=>[...o,...c]))}function iD(t,e,r,n,s){let i=e.findIndex(Ox),a=e.slice(0,i),o=e[i],c=e.length-1===i?s:1/0,u=jPe(o.name,o.data,c);if(u===0)return[];let d=(a.length===0&&!Array.isArray(t)?Ex(t).filter(st):a.length===0?(Array.isArray(t)?t:[t]).filter(st):n||a.some(Ja.isTraversal)?rQ(t,[a],r,u):nQ(t,[a],r)).slice(0,u),f=gVt(o.name,d,o.data,r);if(f.length===0||e.length===i+1)return f;let p=e.slice(i+1),m=p.some(Ja.isTraversal);if(m){if((0,Ja.isTraversal)(p[0])){let{type:h}=p[0];(h===Ja.SelectorType.Sibling||h===Ja.SelectorType.Adjacent)&&(f=rD(f,r0,!0)),p.unshift(mVt)}r={...r,relativeSelector:!1,rootFunc:h=>f.includes(h)}}else r.rootFunc&&r.rootFunc!==sD.trueFunc&&(r={...r,rootFunc:sD.trueFunc});return p.some(Ox)?iD(f,p,r,!1,s):m?rQ(f,[p],r,s):nQ(f,[p],r)}function rQ(t,e,r,n){let s=tD(e,r,t);return zPe(t,s,n)}function zPe(t,e,r=1/0){let n=rD(t,r0,e.shouldTestNextSiblings);return U3(s=>st(s)&&e(s),n,!0,r)}function nQ(t,e,r){let n=(Array.isArray(t)?t:[t]).filter(st);if(n.length===0)return n;let s=tD(e,r);return s===sD.trueFunc?n:n.filter(s)}var yVt=/^\s*[~+]/;function xVt(t){var e;if(!t)return this._make([]);let r=this.toArray();if(typeof t!="string"){let i=_o(t)?t.toArray():[t];return this._make(i.filter(a=>r.some(o=>WH(o,a))))}let n=yVt.test(t)?r:this.children().toArray(),s={context:r,root:(e=this._root)===null||e===void 0?void 0:e[0],xmlMode:this.options.xmlMode,lowerCaseTags:this.options.lowerCaseTags,lowerCaseAttributeNames:this.options.lowerCaseAttributeNames,pseudos:this.options.pseudos,quirksMode:this.options.quirksMode};return this._make(VPe(t,n,s))}function oQ(t){return function(e,...r){return function(n){var s;let i=t(e,this);return n&&(i=lQ(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)}}}var uv=oQ((t,e)=>{let r=[];for(let n=0;n{let r=[];for(let n=0;n{let a=[];return mn(i,o=>{for(let c;(c=s(o))&&!r?.(c,a.length);o=c)a.push(c)}),a})(t,...e);return function(s,i){r=typeof s=="string"?o=>sQ(o,s,this.options):s?lv(s):null;let a=n.call(this,i);return r=null,a}}function Px(t){return Array.from(new Set(t))}var bVt=cQ(({parent:t})=>t&&!nu(t)?t:null,Px),EVt=uv(t=>{let e=[];for(;t.parent&&!nu(t.parent);)e.push(t.parent),t=t.parent;return e},e0,t=>t.reverse()),_Vt=uQ(({parent:t})=>t&&!nu(t)?t:null,e0,t=>t.reverse());function SVt(t){var e;let r=[];if(!t)return this._make(r);let n={xmlMode:this.options.xmlMode,root:(e=this._root)===null||e===void 0?void 0:e[0]},s=typeof t=="string"?i=>sQ(i,t,n):lv(t);return mn(this,i=>{for(;i&&st(i);){if(s(i,0)){r.includes(i)||r.push(i);break}i=i.parent}}),this._make(r)}var vVt=cQ(t=>$3(t)),CVt=uv(t=>{let e=[];for(;t.next;)t=t.next,st(t)&&e.push(t);return e},Px),IVt=uQ(t=>$3(t),Px),TVt=cQ(t=>F3(t)),wVt=uv(t=>{let e=[];for(;t.prev;)t=t.prev,st(t)&&e.push(t);return e},Px),RVt=uQ(t=>F3(t),Px),NVt=uv(t=>DH(t).filter(e=>st(e)&&e!==t),e0),OVt=uv(t=>Ex(t).filter(st),Px);function PVt(){let t=this.toArray().reduce((e,r)=>rn(r)?e.concat(r.children):e,[]);return this._make(t)}function DVt(t){let e=0,r=this.length;for(;et.call(e,r,e):_o(t)?e=>Array.prototype.includes.call(t,e):function(e){return t===e}}function LVt(t){var e;return this._make(lQ(this.toArray(),t,this.options.xmlMode,(e=this._root)===null||e===void 0?void 0:e[0]))}function lQ(t,e,r,n){return typeof e=="string"?aQ(e,t,{xmlMode:r,root:n}):t.filter(lv(e))}function BVt(t){let e=this.toArray();return typeof t=="string"?iQ(e.filter(st),t,this.options):t?e.some(lv(t)):!1}function MVt(t){let e=this.toArray();if(typeof t=="string"){let r=new Set(aQ(t,e,this.options));e=e.filter(n=>!r.has(n))}else{let r=lv(t);e=e.filter((n,s)=>!r(n,s))}return this._make(e)}function WVt(t){return this.filter(typeof t=="string"?`:has(${t})`:(e,r)=>this._make(r).find(t).length>0)}function $Vt(){return this.length>1?this._make(this[0]):this}function FVt(){return this.length>0?this._make(this[this.length-1]):this}function UVt(t){var e;return t=+t,t===0&&this.length<=1?this:(t<0&&(t=this.length+t),this._make((e=this[t])!==null&&e!==void 0?e:[]))}function qVt(t){return t==null?this.toArray():this[t<0?this.length+t:t]}function jVt(){return Array.prototype.slice.call(this)}function HVt(t){let e,r;return t==null?(e=this.parent().children(),r=this[0]):typeof t=="string"?(e=this._make(t),r=this[0]):(e=this,r=_o(t)?t[0]:t),Array.prototype.indexOf.call(e,r)}function QVt(t,e){return this._make(Array.prototype.slice.call(this,t,e))}function GVt(){var t;return(t=this.prevObject)!==null&&t!==void 0?t:this._make([])}function VVt(t,e){let r=this._make(t,e),n=e0([...this.get(),...r.get()]);return this._make(n)}function zVt(t){return this.prevObject?this.add(t?this.prevObject.filter(t):this.prevObject):this}var fQ={};is(fQ,{_makeDomArray:()=>KVt,after:()=>szt,append:()=>XVt,appendTo:()=>YVt,before:()=>azt,clone:()=>mzt,empty:()=>lzt,html:()=>dzt,insertAfter:()=>izt,insertBefore:()=>ozt,prepend:()=>ZVt,prependTo:()=>JVt,remove:()=>czt,replaceWith:()=>uzt,text:()=>pzt,toString:()=>fzt,unwrap:()=>rzt,wrap:()=>ezt,wrapAll:()=>nzt,wrapInner:()=>tzt});function KPe(t){return function(r,n,s,i){if(typeof Buffer<"u"&&Buffer.isBuffer(r)&&(r=r.toString()),typeof r=="string")return t(r,n,s,i);let a=r;if(!Array.isArray(a)&&nu(a))return a;let o=new Eo([]);return i0(a,o),o}}function i0(t,e){let r=Array.isArray(t)?t:[t];e?e.children=r:e=null;for(let n=0;nr.concat(this._makeDomArray(n,e)),[]):typeof t=="string"?this._parse(t,this.options,!1,null).children:e?Q3([t]):[t]}function YPe(t){return function(...e){let r=this.length-1;return mn(this,(n,s)=>{if(!rn(n))return;let i=typeof e[0]=="function"?e[0].call(n,s,this._render(n.children)):e,a=this._makeDomArray(i,s=t.length?null:t[e+r];for(let l=0;l-1&&(f.children.splice(m,1),s===f&&e>m&&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]),t.splice(...o)}function YVt(t){return(_o(t)?t:this._make(t)).append(this),this}function JVt(t){return(_o(t)?t:this._make(t)).prepend(this),this}var XVt=YPe((t,e,r)=>{a0(e,e.length,0,t,r)}),ZVt=YPe((t,e,r)=>{a0(e,0,0,t,r)});function JPe(t){return function(e){let r=this.length-1,n=this.parents().last();for(let s=0;s{let{parent:n}=t;if(!n)return;let s=n.children,i=s.indexOf(t);i0([t],e),a0(s,i,0,r,n)}),tzt=JPe((t,e,r)=>{rn(t)&&(i0(t.children,e),i0(r,t))});function rzt(t){return this.parent(t).not("body").each((e,r)=>{this._make(r).replaceWith(r.children)}),this}function nzt(t){let e=this[0];if(e){let r=this._make(typeof t=="function"?t.call(e,0,e):t).insertBefore(e),n;for(let i=0;i{let{parent:s}=r;if(!rn(r)||!s)return;let i=s.children,a=i.indexOf(r);if(a<0)return;let o=typeof t[0]=="function"?t[0].call(r,n,this._render(r.children)):t,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||(a0(i,a+1,0,n,s),e.push(...n))}),this._make(e)}function azt(...t){let e=this.length-1;return mn(this,(r,n)=>{let{parent:s}=r;if(!rn(r)||!s)return;let i=s.children,a=i.indexOf(r);if(a<0)return;let o=typeof t[0]=="function"?t[0].call(r,n,this._render(r.children)):t,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||(a0(a,o,0,s,i),r.push(...s))}),this._make(r)}function czt(t){let e=t?this.filter(t):this;return mn(e,r=>{Fd(r),r.prev=r.next=r.parent=null}),this}function uzt(t){return mn(this,(e,r)=>{let{parent:n}=e;if(!n)return;let s=n.children,i=typeof t=="function"?t.call(e,r,e):t,a=this._makeDomArray(i);i0(a,null);let o=s.indexOf(e);a0(s,o,1,a,n),a.includes(e)||(e.parent=e.prev=e.next=null)})}function lzt(){return mn(this,t=>{rn(t)&&(t.children.forEach(e=>{e.next=e.prev=e.parent=null}),t.children.length=0)})}function dzt(t){if(t===void 0){let e=this[0];return!e||!rn(e)?null:this._render(e.children)}return mn(this,e=>{if(!rn(e))return;e.children.forEach(n=>{n.next=n.prev=n.parent=null});let r=_o(t)?t.toArray():this._parse(`${t}`,this.options,!1,e).children;i0(r,e)})}function fzt(){return this._render(this)}function pzt(t){return t===void 0?Ud(this):typeof t=="function"?mn(this,(e,r)=>this._make(e).text(t.call(e,r,Ud([e])))):mn(this,e=>{if(!rn(e))return;e.children.forEach(n=>{n.next=n.prev=n.parent=null});let r=new ll(`${t}`);i0(r,e)})}function mzt(){return this._make(Q3(this.get()))}var pQ={};is(pQ,{css:()=>hzt});function hzt(t,e){if(t!=null&&e!=null||typeof t=="object"&&!Array.isArray(t))return mn(this,(r,n)=>{st(r)&&XPe(r,t,e,n)});if(this.length!==0)return ZPe(this[0],t)}function XPe(t,e,r,n){if(typeof e=="string"){let s=ZPe(t),i=typeof r=="function"?r.call(t,n,s[e]):r;i===""?delete s[e]:i!=null&&(s[e]=i),t.attribs.style=gzt(s)}else typeof e=="object"&&Object.keys(e).forEach((s,i)=>{XPe(t,s,e[s],i)})}function ZPe(t,e){if(!t||!st(t))return;let r=Azt(t.attribs.style);if(typeof e=="string")return r[e];if(Array.isArray(e)){let n={};return e.forEach(s=>{r[s]!=null&&(n[s]=r[s])}),n}return r}function gzt(t){return Object.keys(t).reduce((e,r)=>`${e}${e?" ":""}${r}: ${t[r]};`,"")}function Azt(t){if(t=(t||"").trim(),!t)return{};let e={},r;for(let n of t.split(";")){let s=n.indexOf(":");if(s<1||s===n.length-1){let i=n.trimEnd();i.length>0&&r!==void 0&&(e[r]+=`;${i}`)}else r=n.slice(0,s).trim(),e[r]=n.slice(s+1).trim()}return e}var mQ={};is(mQ,{serialize:()=>xzt,serializeArray:()=>bzt});var e3e="input,select,textarea,keygen",yzt=/%20/g,t3e=/\r?\n/g;function xzt(){return this.serializeArray().map(r=>`${encodeURIComponent(r.name)}=${encodeURIComponent(r.value)}`).join("&").replace(yzt,"+")}function bzt(){return this.map((t,e)=>{let r=this._make(e);return st(e)&&e.name==="form"?r.find(e3e).toArray():r.filter(e3e).toArray()}).filter('[name!=""]:enabled:not(:submit, :button, :image, :reset, :file):matches([checked], :not(:checkbox, :radio))').map((t,e)=>{var r;let n=this._make(e),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(t3e,`\r -`)})):{name:s,value:i.replace(t3e,`\r -`)}}).toArray()}var o0=class{constructor(e,r,n){if(this.length=0,this.options=n,this._root=r,e){for(let s=0;s=55296&&t<=57343}function n3e(t){return t>=56320&&t<=57343}function s3e(t,e){return(t-55296)*1024+9216+e}function oD(t){return t!==32&&t!==10&&t!==13&&t!==9&&t!==12&&t>=1&&t<=31||t>=127&&t<=159}function cD(t){return t>=64976&&t<=65007||_zt.has(t)}var me;(function(t){t.controlCharacterInInputStream="control-character-in-input-stream",t.noncharacterInInputStream="noncharacter-in-input-stream",t.surrogateInInputStream="surrogate-in-input-stream",t.nonVoidHtmlElementStartTagWithTrailingSolidus="non-void-html-element-start-tag-with-trailing-solidus",t.endTagWithAttributes="end-tag-with-attributes",t.endTagWithTrailingSolidus="end-tag-with-trailing-solidus",t.unexpectedSolidusInTag="unexpected-solidus-in-tag",t.unexpectedNullCharacter="unexpected-null-character",t.unexpectedQuestionMarkInsteadOfTagName="unexpected-question-mark-instead-of-tag-name",t.invalidFirstCharacterOfTagName="invalid-first-character-of-tag-name",t.unexpectedEqualsSignBeforeAttributeName="unexpected-equals-sign-before-attribute-name",t.missingEndTagName="missing-end-tag-name",t.unexpectedCharacterInAttributeName="unexpected-character-in-attribute-name",t.unknownNamedCharacterReference="unknown-named-character-reference",t.missingSemicolonAfterCharacterReference="missing-semicolon-after-character-reference",t.unexpectedCharacterAfterDoctypeSystemIdentifier="unexpected-character-after-doctype-system-identifier",t.unexpectedCharacterInUnquotedAttributeValue="unexpected-character-in-unquoted-attribute-value",t.eofBeforeTagName="eof-before-tag-name",t.eofInTag="eof-in-tag",t.missingAttributeValue="missing-attribute-value",t.missingWhitespaceBetweenAttributes="missing-whitespace-between-attributes",t.missingWhitespaceAfterDoctypePublicKeyword="missing-whitespace-after-doctype-public-keyword",t.missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers="missing-whitespace-between-doctype-public-and-system-identifiers",t.missingWhitespaceAfterDoctypeSystemKeyword="missing-whitespace-after-doctype-system-keyword",t.missingQuoteBeforeDoctypePublicIdentifier="missing-quote-before-doctype-public-identifier",t.missingQuoteBeforeDoctypeSystemIdentifier="missing-quote-before-doctype-system-identifier",t.missingDoctypePublicIdentifier="missing-doctype-public-identifier",t.missingDoctypeSystemIdentifier="missing-doctype-system-identifier",t.abruptDoctypePublicIdentifier="abrupt-doctype-public-identifier",t.abruptDoctypeSystemIdentifier="abrupt-doctype-system-identifier",t.cdataInHtmlContent="cdata-in-html-content",t.incorrectlyOpenedComment="incorrectly-opened-comment",t.eofInScriptHtmlCommentLikeText="eof-in-script-html-comment-like-text",t.eofInDoctype="eof-in-doctype",t.nestedComment="nested-comment",t.abruptClosingOfEmptyComment="abrupt-closing-of-empty-comment",t.eofInComment="eof-in-comment",t.incorrectlyClosedComment="incorrectly-closed-comment",t.eofInCdata="eof-in-cdata",t.absenceOfDigitsInNumericCharacterReference="absence-of-digits-in-numeric-character-reference",t.nullCharacterReference="null-character-reference",t.surrogateCharacterReference="surrogate-character-reference",t.characterReferenceOutsideUnicodeRange="character-reference-outside-unicode-range",t.controlCharacterReference="control-character-reference",t.noncharacterCharacterReference="noncharacter-character-reference",t.missingWhitespaceBeforeDoctypeName="missing-whitespace-before-doctype-name",t.missingDoctypeName="missing-doctype-name",t.invalidCharacterSequenceAfterDoctypeName="invalid-character-sequence-after-doctype-name",t.duplicateAttribute="duplicate-attribute",t.nonConformingDoctype="non-conforming-doctype",t.missingDoctype="missing-doctype",t.misplacedDoctype="misplaced-doctype",t.endTagWithoutMatchingOpenElement="end-tag-without-matching-open-element",t.closingOfElementWithOpenChildElements="closing-of-element-with-open-child-elements",t.disallowedContentInNoscriptInHead="disallowed-content-in-noscript-in-head",t.openElementsLeftAfterEof="open-elements-left-after-eof",t.abandonedHeadElementChild="abandoned-head-element-child",t.misplacedStartTagForHeadElement="misplaced-start-tag-for-head-element",t.nestedNoscriptInHead="nested-noscript-in-head",t.eofInElementThatCanContainOnlyText="eof-in-element-that-can-contain-only-text"})(me||(me={}));var vzt=65536,uD=class{constructor(e){this.handler=e,this.html="",this.pos=-1,this.lastGapPos=-2,this.gapStack=[],this.skipNextNewLine=!1,this.lastChunkWritten=!1,this.endOfChunkHit=!1,this.bufferWaterline=vzt,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(e,r){let{line:n,col:s,offset:i}=this,a=s+r,o=i+r;return{code:e,startLine:n,endLine:n,startCol:a,endCol:a,startOffset:o,endOffset:o}}_err(e){this.handler.onParseError&&this.lastErrOffset!==this.offset&&(this.lastErrOffset=this.offset,this.handler.onParseError(this.getError(e,0)))}_addGap(){this.gapStack.push(this.lastGapPos),this.lastGapPos=this.pos}_processSurrogate(e){if(this.pos!==this.html.length-1){let r=this.html.charCodeAt(this.pos+1);if(n3e(r))return this.pos++,this._addGap(),s3e(e,r)}else if(!this.lastChunkWritten)return this.endOfChunkHit=!0,Q.EOF;return this._err(me.surrogateInInputStream),e}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(e,r){this.html.length>0?this.html+=e:this.html=e,this.endOfChunkHit=!1,this.lastChunkWritten=r}insertHtmlAtCurrentPos(e){this.html=this.html.substring(0,this.pos+1)+e+this.html.substring(this.pos+1),this.endOfChunkHit=!1}startsWith(e,r){if(this.pos+e.length>this.html.length)return this.endOfChunkHit=!this.lastChunkWritten,!1;if(r)return this.html.startsWith(e,this.pos);for(let n=0;n=this.html.length)return this.endOfChunkHit=!this.lastChunkWritten,Q.EOF;let n=this.html.charCodeAt(r);return n===Q.CARRIAGE_RETURN?Q.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,Q.EOF;let e=this.html.charCodeAt(this.pos);return e===Q.CARRIAGE_RETURN?(this.isEol=!0,this.skipNextNewLine=!0,Q.LINE_FEED):e===Q.LINE_FEED&&(this.isEol=!0,this.skipNextNewLine)?(this.line--,this.skipNextNewLine=!1,this._addGap(),this.advance()):(this.skipNextNewLine=!1,aD(e)&&(e=this._processSurrogate(e)),this.handler.onParseError===null||e>31&&e<127||e===Q.LINE_FEED||e===Q.CARRIAGE_RETURN||e>159&&e<64976||this._checkForProblematicCharacters(e),e)}_checkForProblematicCharacters(e){oD(e)?this._err(me.controlCharacterInInputStream):cD(e)&&this._err(me.noncharacterInInputStream)}retreat(e){for(this.pos-=e;this.pos=0;r--)if(t.attrs[r].name===e)return t.attrs[r].value;return null}var dD=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(t=>t.charCodeAt(0)));var hQ,Izt=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]]),i3e=(hQ=String.fromCodePoint)!==null&&hQ!==void 0?hQ:function(t){let e="";return t>65535&&(t-=65536,e+=String.fromCharCode(t>>>10&1023|55296),t=56320|t&1023),e+=String.fromCharCode(t),e};function gQ(t){var e;return t>=55296&&t<=57343||t>1114111?65533:(e=Izt.get(t))!==null&&e!==void 0?e:t}var Zs;(function(t){t[t.NUM=35]="NUM",t[t.SEMI=59]="SEMI",t[t.EQUALS=61]="EQUALS",t[t.ZERO=48]="ZERO",t[t.NINE=57]="NINE",t[t.LOWER_A=97]="LOWER_A",t[t.LOWER_F=102]="LOWER_F",t[t.LOWER_X=120]="LOWER_X",t[t.LOWER_Z=122]="LOWER_Z",t[t.UPPER_A=65]="UPPER_A",t[t.UPPER_F=70]="UPPER_F",t[t.UPPER_Z=90]="UPPER_Z"})(Zs||(Zs={}));var wzt=32,c0;(function(t){t[t.VALUE_LENGTH=49152]="VALUE_LENGTH",t[t.BRANCH_LENGTH=16256]="BRANCH_LENGTH",t[t.JUMP_TABLE=127]="JUMP_TABLE"})(c0||(c0={}));function AQ(t){return t>=Zs.ZERO&&t<=Zs.NINE}function Rzt(t){return t>=Zs.UPPER_A&&t<=Zs.UPPER_F||t>=Zs.LOWER_A&&t<=Zs.LOWER_F}function Nzt(t){return t>=Zs.UPPER_A&&t<=Zs.UPPER_Z||t>=Zs.LOWER_A&&t<=Zs.LOWER_Z||AQ(t)}function Ozt(t){return t===Zs.EQUALS||Nzt(t)}var Xs;(function(t){t[t.EntityStart=0]="EntityStart",t[t.NumericStart=1]="NumericStart",t[t.NumericDecimal=2]="NumericDecimal",t[t.NumericHex=3]="NumericHex",t[t.NamedEntity=4]="NamedEntity"})(Xs||(Xs={}));var fl;(function(t){t[t.Legacy=0]="Legacy",t[t.Strict=1]="Strict",t[t.Attribute=2]="Attribute"})(fl||(fl={}));var fD=class{constructor(e,r,n){this.decodeTree=e,this.emitCodePoint=r,this.errors=n,this.state=Xs.EntityStart,this.consumed=1,this.result=0,this.treeIndex=0,this.excess=1,this.decodeMode=fl.Strict}startEntity(e){this.decodeMode=e,this.state=Xs.EntityStart,this.result=0,this.treeIndex=0,this.excess=1,this.consumed=1}write(e,r){switch(this.state){case Xs.EntityStart:return e.charCodeAt(r)===Zs.NUM?(this.state=Xs.NumericStart,this.consumed+=1,this.stateNumericStart(e,r+1)):(this.state=Xs.NamedEntity,this.stateNamedEntity(e,r));case Xs.NumericStart:return this.stateNumericStart(e,r);case Xs.NumericDecimal:return this.stateNumericDecimal(e,r);case Xs.NumericHex:return this.stateNumericHex(e,r);case Xs.NamedEntity:return this.stateNamedEntity(e,r)}}stateNumericStart(e,r){return r>=e.length?-1:(e.charCodeAt(r)|wzt)===Zs.LOWER_X?(this.state=Xs.NumericHex,this.consumed+=1,this.stateNumericHex(e,r+1)):(this.state=Xs.NumericDecimal,this.stateNumericDecimal(e,r))}addToNumericResult(e,r,n,s){if(r!==n){let i=n-r;this.result=this.result*Math.pow(s,i)+Number.parseInt(e.substr(r,i),s),this.consumed+=i}}stateNumericHex(e,r){let n=r;for(;r>14;for(;r>14,i!==0){if(a===Zs.SEMI)return this.emitNamedEntityData(this.treeIndex,i,this.consumed+this.excess);this.decodeMode!==fl.Strict&&(this.result=this.treeIndex,this.consumed+=this.excess,this.excess=0)}}return-1}emitNotTerminatedNamedEntity(){var e;let{result:r,decodeTree:n}=this,s=(n[r]&c0.VALUE_LENGTH)>>14;return this.emitNamedEntityData(r,s,this.consumed),(e=this.errors)===null||e===void 0||e.missingSemicolonAfterCharacterReference(),this.consumed}emitNamedEntityData(e,r,n){let{decodeTree:s}=this;return this.emitCodePoint(r===1?s[e]&~c0.VALUE_LENGTH:s[e+1],n),r===3&&this.emitCodePoint(s[e+2],n),n}end(){var e;switch(this.state){case Xs.NamedEntity:return this.result!==0&&(this.decodeMode!==fl.Attribute||this.result===this.treeIndex)?this.emitNotTerminatedNamedEntity():0;case Xs.NumericDecimal:return this.emitNumericEntity(0,2);case Xs.NumericHex:return this.emitNumericEntity(0,3);case Xs.NumericStart:return(e=this.errors)===null||e===void 0||e.absenceOfDigitsInNumericCharacterReference(this.consumed),0;case Xs.EntityStart:return 0}}};function Pzt(t,e,r,n){let s=(e&c0.BRANCH_LENGTH)>>7,i=e&c0.JUMP_TABLE;if(s===0)return i!==0&&n===i?r:-1;if(i){let c=n-i;return c<0||c>=s?-1:t[r+c]-1}let a=r,o=a+s-1;for(;a<=o;){let c=a+o>>>1,u=t[c];if(un)o=c-1;else return t[c+s]}return-1}var pD={};is(pD,{ATTRS:()=>pl,DOCUMENT_MODE:()=>Fi,NS:()=>Ee,NUMBERED_HEADERS:()=>Dx,SPECIAL_ELEMENTS:()=>yQ,TAG_ID:()=>I,TAG_NAMES:()=>de,getTagID:()=>u0,hasUnescapedText:()=>xQ});var Ee;(function(t){t.HTML="http://www.w3.org/1999/xhtml",t.MATHML="http://www.w3.org/1998/Math/MathML",t.SVG="http://www.w3.org/2000/svg",t.XLINK="http://www.w3.org/1999/xlink",t.XML="http://www.w3.org/XML/1998/namespace",t.XMLNS="http://www.w3.org/2000/xmlns/"})(Ee||(Ee={}));var pl;(function(t){t.TYPE="type",t.ACTION="action",t.ENCODING="encoding",t.PROMPT="prompt",t.NAME="name",t.COLOR="color",t.FACE="face",t.SIZE="size"})(pl||(pl={}));var Fi;(function(t){t.NO_QUIRKS="no-quirks",t.QUIRKS="quirks",t.LIMITED_QUIRKS="limited-quirks"})(Fi||(Fi={}));var de;(function(t){t.A="a",t.ADDRESS="address",t.ANNOTATION_XML="annotation-xml",t.APPLET="applet",t.AREA="area",t.ARTICLE="article",t.ASIDE="aside",t.B="b",t.BASE="base",t.BASEFONT="basefont",t.BGSOUND="bgsound",t.BIG="big",t.BLOCKQUOTE="blockquote",t.BODY="body",t.BR="br",t.BUTTON="button",t.CAPTION="caption",t.CENTER="center",t.CODE="code",t.COL="col",t.COLGROUP="colgroup",t.DD="dd",t.DESC="desc",t.DETAILS="details",t.DIALOG="dialog",t.DIR="dir",t.DIV="div",t.DL="dl",t.DT="dt",t.EM="em",t.EMBED="embed",t.FIELDSET="fieldset",t.FIGCAPTION="figcaption",t.FIGURE="figure",t.FONT="font",t.FOOTER="footer",t.FOREIGN_OBJECT="foreignObject",t.FORM="form",t.FRAME="frame",t.FRAMESET="frameset",t.H1="h1",t.H2="h2",t.H3="h3",t.H4="h4",t.H5="h5",t.H6="h6",t.HEAD="head",t.HEADER="header",t.HGROUP="hgroup",t.HR="hr",t.HTML="html",t.I="i",t.IMG="img",t.IMAGE="image",t.INPUT="input",t.IFRAME="iframe",t.KEYGEN="keygen",t.LABEL="label",t.LI="li",t.LINK="link",t.LISTING="listing",t.MAIN="main",t.MALIGNMARK="malignmark",t.MARQUEE="marquee",t.MATH="math",t.MENU="menu",t.META="meta",t.MGLYPH="mglyph",t.MI="mi",t.MO="mo",t.MN="mn",t.MS="ms",t.MTEXT="mtext",t.NAV="nav",t.NOBR="nobr",t.NOFRAMES="noframes",t.NOEMBED="noembed",t.NOSCRIPT="noscript",t.OBJECT="object",t.OL="ol",t.OPTGROUP="optgroup",t.OPTION="option",t.P="p",t.PARAM="param",t.PLAINTEXT="plaintext",t.PRE="pre",t.RB="rb",t.RP="rp",t.RT="rt",t.RTC="rtc",t.RUBY="ruby",t.S="s",t.SCRIPT="script",t.SEARCH="search",t.SECTION="section",t.SELECT="select",t.SOURCE="source",t.SMALL="small",t.SPAN="span",t.STRIKE="strike",t.STRONG="strong",t.STYLE="style",t.SUB="sub",t.SUMMARY="summary",t.SUP="sup",t.TABLE="table",t.TBODY="tbody",t.TEMPLATE="template",t.TEXTAREA="textarea",t.TFOOT="tfoot",t.TD="td",t.TH="th",t.THEAD="thead",t.TITLE="title",t.TR="tr",t.TRACK="track",t.TT="tt",t.U="u",t.UL="ul",t.SVG="svg",t.VAR="var",t.WBR="wbr",t.XMP="xmp"})(de||(de={}));var I;(function(t){t[t.UNKNOWN=0]="UNKNOWN",t[t.A=1]="A",t[t.ADDRESS=2]="ADDRESS",t[t.ANNOTATION_XML=3]="ANNOTATION_XML",t[t.APPLET=4]="APPLET",t[t.AREA=5]="AREA",t[t.ARTICLE=6]="ARTICLE",t[t.ASIDE=7]="ASIDE",t[t.B=8]="B",t[t.BASE=9]="BASE",t[t.BASEFONT=10]="BASEFONT",t[t.BGSOUND=11]="BGSOUND",t[t.BIG=12]="BIG",t[t.BLOCKQUOTE=13]="BLOCKQUOTE",t[t.BODY=14]="BODY",t[t.BR=15]="BR",t[t.BUTTON=16]="BUTTON",t[t.CAPTION=17]="CAPTION",t[t.CENTER=18]="CENTER",t[t.CODE=19]="CODE",t[t.COL=20]="COL",t[t.COLGROUP=21]="COLGROUP",t[t.DD=22]="DD",t[t.DESC=23]="DESC",t[t.DETAILS=24]="DETAILS",t[t.DIALOG=25]="DIALOG",t[t.DIR=26]="DIR",t[t.DIV=27]="DIV",t[t.DL=28]="DL",t[t.DT=29]="DT",t[t.EM=30]="EM",t[t.EMBED=31]="EMBED",t[t.FIELDSET=32]="FIELDSET",t[t.FIGCAPTION=33]="FIGCAPTION",t[t.FIGURE=34]="FIGURE",t[t.FONT=35]="FONT",t[t.FOOTER=36]="FOOTER",t[t.FOREIGN_OBJECT=37]="FOREIGN_OBJECT",t[t.FORM=38]="FORM",t[t.FRAME=39]="FRAME",t[t.FRAMESET=40]="FRAMESET",t[t.H1=41]="H1",t[t.H2=42]="H2",t[t.H3=43]="H3",t[t.H4=44]="H4",t[t.H5=45]="H5",t[t.H6=46]="H6",t[t.HEAD=47]="HEAD",t[t.HEADER=48]="HEADER",t[t.HGROUP=49]="HGROUP",t[t.HR=50]="HR",t[t.HTML=51]="HTML",t[t.I=52]="I",t[t.IMG=53]="IMG",t[t.IMAGE=54]="IMAGE",t[t.INPUT=55]="INPUT",t[t.IFRAME=56]="IFRAME",t[t.KEYGEN=57]="KEYGEN",t[t.LABEL=58]="LABEL",t[t.LI=59]="LI",t[t.LINK=60]="LINK",t[t.LISTING=61]="LISTING",t[t.MAIN=62]="MAIN",t[t.MALIGNMARK=63]="MALIGNMARK",t[t.MARQUEE=64]="MARQUEE",t[t.MATH=65]="MATH",t[t.MENU=66]="MENU",t[t.META=67]="META",t[t.MGLYPH=68]="MGLYPH",t[t.MI=69]="MI",t[t.MO=70]="MO",t[t.MN=71]="MN",t[t.MS=72]="MS",t[t.MTEXT=73]="MTEXT",t[t.NAV=74]="NAV",t[t.NOBR=75]="NOBR",t[t.NOFRAMES=76]="NOFRAMES",t[t.NOEMBED=77]="NOEMBED",t[t.NOSCRIPT=78]="NOSCRIPT",t[t.OBJECT=79]="OBJECT",t[t.OL=80]="OL",t[t.OPTGROUP=81]="OPTGROUP",t[t.OPTION=82]="OPTION",t[t.P=83]="P",t[t.PARAM=84]="PARAM",t[t.PLAINTEXT=85]="PLAINTEXT",t[t.PRE=86]="PRE",t[t.RB=87]="RB",t[t.RP=88]="RP",t[t.RT=89]="RT",t[t.RTC=90]="RTC",t[t.RUBY=91]="RUBY",t[t.S=92]="S",t[t.SCRIPT=93]="SCRIPT",t[t.SEARCH=94]="SEARCH",t[t.SECTION=95]="SECTION",t[t.SELECT=96]="SELECT",t[t.SOURCE=97]="SOURCE",t[t.SMALL=98]="SMALL",t[t.SPAN=99]="SPAN",t[t.STRIKE=100]="STRIKE",t[t.STRONG=101]="STRONG",t[t.STYLE=102]="STYLE",t[t.SUB=103]="SUB",t[t.SUMMARY=104]="SUMMARY",t[t.SUP=105]="SUP",t[t.TABLE=106]="TABLE",t[t.TBODY=107]="TBODY",t[t.TEMPLATE=108]="TEMPLATE",t[t.TEXTAREA=109]="TEXTAREA",t[t.TFOOT=110]="TFOOT",t[t.TD=111]="TD",t[t.TH=112]="TH",t[t.THEAD=113]="THEAD",t[t.TITLE=114]="TITLE",t[t.TR=115]="TR",t[t.TRACK=116]="TRACK",t[t.TT=117]="TT",t[t.U=118]="U",t[t.UL=119]="UL",t[t.SVG=120]="SVG",t[t.VAR=121]="VAR",t[t.WBR=122]="WBR",t[t.XMP=123]="XMP"})(I||(I={}));var Dzt=new Map([[de.A,I.A],[de.ADDRESS,I.ADDRESS],[de.ANNOTATION_XML,I.ANNOTATION_XML],[de.APPLET,I.APPLET],[de.AREA,I.AREA],[de.ARTICLE,I.ARTICLE],[de.ASIDE,I.ASIDE],[de.B,I.B],[de.BASE,I.BASE],[de.BASEFONT,I.BASEFONT],[de.BGSOUND,I.BGSOUND],[de.BIG,I.BIG],[de.BLOCKQUOTE,I.BLOCKQUOTE],[de.BODY,I.BODY],[de.BR,I.BR],[de.BUTTON,I.BUTTON],[de.CAPTION,I.CAPTION],[de.CENTER,I.CENTER],[de.CODE,I.CODE],[de.COL,I.COL],[de.COLGROUP,I.COLGROUP],[de.DD,I.DD],[de.DESC,I.DESC],[de.DETAILS,I.DETAILS],[de.DIALOG,I.DIALOG],[de.DIR,I.DIR],[de.DIV,I.DIV],[de.DL,I.DL],[de.DT,I.DT],[de.EM,I.EM],[de.EMBED,I.EMBED],[de.FIELDSET,I.FIELDSET],[de.FIGCAPTION,I.FIGCAPTION],[de.FIGURE,I.FIGURE],[de.FONT,I.FONT],[de.FOOTER,I.FOOTER],[de.FOREIGN_OBJECT,I.FOREIGN_OBJECT],[de.FORM,I.FORM],[de.FRAME,I.FRAME],[de.FRAMESET,I.FRAMESET],[de.H1,I.H1],[de.H2,I.H2],[de.H3,I.H3],[de.H4,I.H4],[de.H5,I.H5],[de.H6,I.H6],[de.HEAD,I.HEAD],[de.HEADER,I.HEADER],[de.HGROUP,I.HGROUP],[de.HR,I.HR],[de.HTML,I.HTML],[de.I,I.I],[de.IMG,I.IMG],[de.IMAGE,I.IMAGE],[de.INPUT,I.INPUT],[de.IFRAME,I.IFRAME],[de.KEYGEN,I.KEYGEN],[de.LABEL,I.LABEL],[de.LI,I.LI],[de.LINK,I.LINK],[de.LISTING,I.LISTING],[de.MAIN,I.MAIN],[de.MALIGNMARK,I.MALIGNMARK],[de.MARQUEE,I.MARQUEE],[de.MATH,I.MATH],[de.MENU,I.MENU],[de.META,I.META],[de.MGLYPH,I.MGLYPH],[de.MI,I.MI],[de.MO,I.MO],[de.MN,I.MN],[de.MS,I.MS],[de.MTEXT,I.MTEXT],[de.NAV,I.NAV],[de.NOBR,I.NOBR],[de.NOFRAMES,I.NOFRAMES],[de.NOEMBED,I.NOEMBED],[de.NOSCRIPT,I.NOSCRIPT],[de.OBJECT,I.OBJECT],[de.OL,I.OL],[de.OPTGROUP,I.OPTGROUP],[de.OPTION,I.OPTION],[de.P,I.P],[de.PARAM,I.PARAM],[de.PLAINTEXT,I.PLAINTEXT],[de.PRE,I.PRE],[de.RB,I.RB],[de.RP,I.RP],[de.RT,I.RT],[de.RTC,I.RTC],[de.RUBY,I.RUBY],[de.S,I.S],[de.SCRIPT,I.SCRIPT],[de.SEARCH,I.SEARCH],[de.SECTION,I.SECTION],[de.SELECT,I.SELECT],[de.SOURCE,I.SOURCE],[de.SMALL,I.SMALL],[de.SPAN,I.SPAN],[de.STRIKE,I.STRIKE],[de.STRONG,I.STRONG],[de.STYLE,I.STYLE],[de.SUB,I.SUB],[de.SUMMARY,I.SUMMARY],[de.SUP,I.SUP],[de.TABLE,I.TABLE],[de.TBODY,I.TBODY],[de.TEMPLATE,I.TEMPLATE],[de.TEXTAREA,I.TEXTAREA],[de.TFOOT,I.TFOOT],[de.TD,I.TD],[de.TH,I.TH],[de.THEAD,I.THEAD],[de.TITLE,I.TITLE],[de.TR,I.TR],[de.TRACK,I.TRACK],[de.TT,I.TT],[de.U,I.U],[de.UL,I.UL],[de.SVG,I.SVG],[de.VAR,I.VAR],[de.WBR,I.WBR],[de.XMP,I.XMP]]);function u0(t){var e;return(e=Dzt.get(t))!==null&&e!==void 0?e:I.UNKNOWN}var Oe=I,yQ={[Ee.HTML]:new Set([Oe.ADDRESS,Oe.APPLET,Oe.AREA,Oe.ARTICLE,Oe.ASIDE,Oe.BASE,Oe.BASEFONT,Oe.BGSOUND,Oe.BLOCKQUOTE,Oe.BODY,Oe.BR,Oe.BUTTON,Oe.CAPTION,Oe.CENTER,Oe.COL,Oe.COLGROUP,Oe.DD,Oe.DETAILS,Oe.DIR,Oe.DIV,Oe.DL,Oe.DT,Oe.EMBED,Oe.FIELDSET,Oe.FIGCAPTION,Oe.FIGURE,Oe.FOOTER,Oe.FORM,Oe.FRAME,Oe.FRAMESET,Oe.H1,Oe.H2,Oe.H3,Oe.H4,Oe.H5,Oe.H6,Oe.HEAD,Oe.HEADER,Oe.HGROUP,Oe.HR,Oe.HTML,Oe.IFRAME,Oe.IMG,Oe.INPUT,Oe.LI,Oe.LINK,Oe.LISTING,Oe.MAIN,Oe.MARQUEE,Oe.MENU,Oe.META,Oe.NAV,Oe.NOEMBED,Oe.NOFRAMES,Oe.NOSCRIPT,Oe.OBJECT,Oe.OL,Oe.P,Oe.PARAM,Oe.PLAINTEXT,Oe.PRE,Oe.SCRIPT,Oe.SECTION,Oe.SELECT,Oe.SOURCE,Oe.STYLE,Oe.SUMMARY,Oe.TABLE,Oe.TBODY,Oe.TD,Oe.TEMPLATE,Oe.TEXTAREA,Oe.TFOOT,Oe.TH,Oe.THEAD,Oe.TITLE,Oe.TR,Oe.TRACK,Oe.UL,Oe.WBR,Oe.XMP]),[Ee.MATHML]:new Set([Oe.MI,Oe.MO,Oe.MN,Oe.MS,Oe.MTEXT,Oe.ANNOTATION_XML]),[Ee.SVG]:new Set([Oe.TITLE,Oe.FOREIGN_OBJECT,Oe.DESC]),[Ee.XLINK]:new Set,[Ee.XML]:new Set,[Ee.XMLNS]:new Set},Dx=new Set([Oe.H1,Oe.H2,Oe.H3,Oe.H4,Oe.H5,Oe.H6]),kzt=new Set([de.STYLE,de.SCRIPT,de.XMP,de.IFRAME,de.NOEMBED,de.NOFRAMES,de.PLAINTEXT]);function xQ(t,e){return kzt.has(t)||e&&t===de.NOSCRIPT}var Y;(function(t){t[t.DATA=0]="DATA",t[t.RCDATA=1]="RCDATA",t[t.RAWTEXT=2]="RAWTEXT",t[t.SCRIPT_DATA=3]="SCRIPT_DATA",t[t.PLAINTEXT=4]="PLAINTEXT",t[t.TAG_OPEN=5]="TAG_OPEN",t[t.END_TAG_OPEN=6]="END_TAG_OPEN",t[t.TAG_NAME=7]="TAG_NAME",t[t.RCDATA_LESS_THAN_SIGN=8]="RCDATA_LESS_THAN_SIGN",t[t.RCDATA_END_TAG_OPEN=9]="RCDATA_END_TAG_OPEN",t[t.RCDATA_END_TAG_NAME=10]="RCDATA_END_TAG_NAME",t[t.RAWTEXT_LESS_THAN_SIGN=11]="RAWTEXT_LESS_THAN_SIGN",t[t.RAWTEXT_END_TAG_OPEN=12]="RAWTEXT_END_TAG_OPEN",t[t.RAWTEXT_END_TAG_NAME=13]="RAWTEXT_END_TAG_NAME",t[t.SCRIPT_DATA_LESS_THAN_SIGN=14]="SCRIPT_DATA_LESS_THAN_SIGN",t[t.SCRIPT_DATA_END_TAG_OPEN=15]="SCRIPT_DATA_END_TAG_OPEN",t[t.SCRIPT_DATA_END_TAG_NAME=16]="SCRIPT_DATA_END_TAG_NAME",t[t.SCRIPT_DATA_ESCAPE_START=17]="SCRIPT_DATA_ESCAPE_START",t[t.SCRIPT_DATA_ESCAPE_START_DASH=18]="SCRIPT_DATA_ESCAPE_START_DASH",t[t.SCRIPT_DATA_ESCAPED=19]="SCRIPT_DATA_ESCAPED",t[t.SCRIPT_DATA_ESCAPED_DASH=20]="SCRIPT_DATA_ESCAPED_DASH",t[t.SCRIPT_DATA_ESCAPED_DASH_DASH=21]="SCRIPT_DATA_ESCAPED_DASH_DASH",t[t.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN=22]="SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN",t[t.SCRIPT_DATA_ESCAPED_END_TAG_OPEN=23]="SCRIPT_DATA_ESCAPED_END_TAG_OPEN",t[t.SCRIPT_DATA_ESCAPED_END_TAG_NAME=24]="SCRIPT_DATA_ESCAPED_END_TAG_NAME",t[t.SCRIPT_DATA_DOUBLE_ESCAPE_START=25]="SCRIPT_DATA_DOUBLE_ESCAPE_START",t[t.SCRIPT_DATA_DOUBLE_ESCAPED=26]="SCRIPT_DATA_DOUBLE_ESCAPED",t[t.SCRIPT_DATA_DOUBLE_ESCAPED_DASH=27]="SCRIPT_DATA_DOUBLE_ESCAPED_DASH",t[t.SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH=28]="SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH",t[t.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN=29]="SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN",t[t.SCRIPT_DATA_DOUBLE_ESCAPE_END=30]="SCRIPT_DATA_DOUBLE_ESCAPE_END",t[t.BEFORE_ATTRIBUTE_NAME=31]="BEFORE_ATTRIBUTE_NAME",t[t.ATTRIBUTE_NAME=32]="ATTRIBUTE_NAME",t[t.AFTER_ATTRIBUTE_NAME=33]="AFTER_ATTRIBUTE_NAME",t[t.BEFORE_ATTRIBUTE_VALUE=34]="BEFORE_ATTRIBUTE_VALUE",t[t.ATTRIBUTE_VALUE_DOUBLE_QUOTED=35]="ATTRIBUTE_VALUE_DOUBLE_QUOTED",t[t.ATTRIBUTE_VALUE_SINGLE_QUOTED=36]="ATTRIBUTE_VALUE_SINGLE_QUOTED",t[t.ATTRIBUTE_VALUE_UNQUOTED=37]="ATTRIBUTE_VALUE_UNQUOTED",t[t.AFTER_ATTRIBUTE_VALUE_QUOTED=38]="AFTER_ATTRIBUTE_VALUE_QUOTED",t[t.SELF_CLOSING_START_TAG=39]="SELF_CLOSING_START_TAG",t[t.BOGUS_COMMENT=40]="BOGUS_COMMENT",t[t.MARKUP_DECLARATION_OPEN=41]="MARKUP_DECLARATION_OPEN",t[t.COMMENT_START=42]="COMMENT_START",t[t.COMMENT_START_DASH=43]="COMMENT_START_DASH",t[t.COMMENT=44]="COMMENT",t[t.COMMENT_LESS_THAN_SIGN=45]="COMMENT_LESS_THAN_SIGN",t[t.COMMENT_LESS_THAN_SIGN_BANG=46]="COMMENT_LESS_THAN_SIGN_BANG",t[t.COMMENT_LESS_THAN_SIGN_BANG_DASH=47]="COMMENT_LESS_THAN_SIGN_BANG_DASH",t[t.COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH=48]="COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH",t[t.COMMENT_END_DASH=49]="COMMENT_END_DASH",t[t.COMMENT_END=50]="COMMENT_END",t[t.COMMENT_END_BANG=51]="COMMENT_END_BANG",t[t.DOCTYPE=52]="DOCTYPE",t[t.BEFORE_DOCTYPE_NAME=53]="BEFORE_DOCTYPE_NAME",t[t.DOCTYPE_NAME=54]="DOCTYPE_NAME",t[t.AFTER_DOCTYPE_NAME=55]="AFTER_DOCTYPE_NAME",t[t.AFTER_DOCTYPE_PUBLIC_KEYWORD=56]="AFTER_DOCTYPE_PUBLIC_KEYWORD",t[t.BEFORE_DOCTYPE_PUBLIC_IDENTIFIER=57]="BEFORE_DOCTYPE_PUBLIC_IDENTIFIER",t[t.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED=58]="DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED",t[t.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED=59]="DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED",t[t.AFTER_DOCTYPE_PUBLIC_IDENTIFIER=60]="AFTER_DOCTYPE_PUBLIC_IDENTIFIER",t[t.BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS=61]="BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS",t[t.AFTER_DOCTYPE_SYSTEM_KEYWORD=62]="AFTER_DOCTYPE_SYSTEM_KEYWORD",t[t.BEFORE_DOCTYPE_SYSTEM_IDENTIFIER=63]="BEFORE_DOCTYPE_SYSTEM_IDENTIFIER",t[t.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED=64]="DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED",t[t.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED=65]="DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED",t[t.AFTER_DOCTYPE_SYSTEM_IDENTIFIER=66]="AFTER_DOCTYPE_SYSTEM_IDENTIFIER",t[t.BOGUS_DOCTYPE=67]="BOGUS_DOCTYPE",t[t.CDATA_SECTION=68]="CDATA_SECTION",t[t.CDATA_SECTION_BRACKET=69]="CDATA_SECTION_BRACKET",t[t.CDATA_SECTION_END=70]="CDATA_SECTION_END",t[t.CHARACTER_REFERENCE=71]="CHARACTER_REFERENCE",t[t.AMBIGUOUS_AMPERSAND=72]="AMBIGUOUS_AMPERSAND"})(Y||(Y={}));var Ui={DATA:Y.DATA,RCDATA:Y.RCDATA,RAWTEXT:Y.RAWTEXT,SCRIPT_DATA:Y.SCRIPT_DATA,PLAINTEXT:Y.PLAINTEXT,CDATA_SECTION:Y.CDATA_SECTION};function Lzt(t){return t>=Q.DIGIT_0&&t<=Q.DIGIT_9}function dv(t){return t>=Q.LATIN_CAPITAL_A&&t<=Q.LATIN_CAPITAL_Z}function Bzt(t){return t>=Q.LATIN_SMALL_A&&t<=Q.LATIN_SMALL_Z}function l0(t){return Bzt(t)||dv(t)}function a3e(t){return l0(t)||Lzt(t)}function mD(t){return t+32}function c3e(t){return t===Q.SPACE||t===Q.LINE_FEED||t===Q.TABULATION||t===Q.FORM_FEED}function o3e(t){return c3e(t)||t===Q.SOLIDUS||t===Q.GREATER_THAN_SIGN}function Mzt(t){return t===Q.NULL?me.nullCharacterReference:t>1114111?me.characterReferenceOutsideUnicodeRange:aD(t)?me.surrogateCharacterReference:cD(t)?me.noncharacterCharacterReference:oD(t)||t===Q.CARRIAGE_RETURN?me.controlCharacterReference:null}var fv=class{constructor(e,r){this.options=e,this.handler=r,this.paused=!1,this.inLoop=!1,this.inForeignNode=!1,this.lastStartTagName="",this.active=!1,this.state=Y.DATA,this.returnState=Y.DATA,this.entityStartPos=0,this.consumedAfterSnapshot=-1,this.currentCharacterToken=null,this.currentToken=null,this.currentAttr={name:"",value:""},this.preprocessor=new uD(r),this.currentLocation=this.getCurrentLocation(-1),this.entityDecoder=new fD(dD,(n,s)=>{this.preprocessor.pos=this.entityStartPos+s-1,this._flushCodePointConsumedAsCharacterReference(n)},r.onParseError?{missingSemicolonAfterCharacterReference:()=>{this._err(me.missingSemicolonAfterCharacterReference,1)},absenceOfDigitsInNumericCharacterReference:n=>{this._err(me.absenceOfDigitsInNumericCharacterReference,this.entityStartPos-this.preprocessor.pos+n)},validateNumericCharacterReference:n=>{let s=Mzt(n);s&&this._err(s,1)}}:void 0)}_err(e,r=0){var n,s;(s=(n=this.handler).onParseError)===null||s===void 0||s.call(n,this.preprocessor.getError(e,r))}getCurrentLocation(e){return this.options.sourceCodeLocationInfo?{startLine:this.preprocessor.line,startCol:this.preprocessor.col-e,startOffset:this.preprocessor.offset-e,endLine:-1,endCol:-1,endOffset:-1}:null}_runParsingLoop(){if(!this.inLoop){for(this.inLoop=!0;this.active&&!this.paused;){this.consumedAfterSnapshot=0;let e=this._consume();this._ensureHibernation()||this._callState(e)}this.inLoop=!1}}pause(){this.paused=!0}resume(e){if(!this.paused)throw new Error("Parser was already resumed");this.paused=!1,!this.inLoop&&(this._runParsingLoop(),this.paused||e?.())}write(e,r,n){this.active=!0,this.preprocessor.write(e,r),this._runParsingLoop(),this.paused||n?.()}insertHtmlAtCurrentPos(e){this.active=!0,this.preprocessor.insertHtmlAtCurrentPos(e),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(e){this.consumedAfterSnapshot+=e;for(let r=0;r0&&this._err(me.endTagWithAttributes),e.selfClosing&&this._err(me.endTagWithTrailingSolidus),this.handler.onEndTag(e)),this.preprocessor.dropParsedChunk()}emitCurrentComment(e){this.prepareToken(e),this.handler.onComment(e),this.preprocessor.dropParsedChunk()}emitCurrentDoctype(e){this.prepareToken(e),this.handler.onDoctype(e),this.preprocessor.dropParsedChunk()}_emitCurrentCharacterToken(e){if(this.currentCharacterToken){switch(e&&this.currentCharacterToken.location&&(this.currentCharacterToken.location.endLine=e.startLine,this.currentCharacterToken.location.endCol=e.startCol,this.currentCharacterToken.location.endOffset=e.startOffset),this.currentCharacterToken.type){case br.CHARACTER:{this.handler.onCharacter(this.currentCharacterToken);break}case br.NULL_CHARACTER:{this.handler.onNullCharacter(this.currentCharacterToken);break}case br.WHITESPACE_CHARACTER:{this.handler.onWhitespaceCharacter(this.currentCharacterToken);break}}this.currentCharacterToken=null}}_emitEOFToken(){let e=this.getCurrentLocation(0);e&&(e.endLine=e.startLine,e.endCol=e.startCol,e.endOffset=e.startOffset),this._emitCurrentCharacterToken(e),this.handler.onEof({type:br.EOF,location:e}),this.active=!1}_appendCharToCurrentCharacterToken(e,r){if(this.currentCharacterToken)if(this.currentCharacterToken.type===e){this.currentCharacterToken.chars+=r;return}else this.currentLocation=this.getCurrentLocation(0),this._emitCurrentCharacterToken(this.currentLocation),this.preprocessor.dropParsedChunk();this._createCharacterToken(e,r)}_emitCodePoint(e){let r=c3e(e)?br.WHITESPACE_CHARACTER:e===Q.NULL?br.NULL_CHARACTER:br.CHARACTER;this._appendCharToCurrentCharacterToken(r,String.fromCodePoint(e))}_emitChars(e){this._appendCharToCurrentCharacterToken(br.CHARACTER,e)}_startCharacterReference(){this.returnState=this.state,this.state=Y.CHARACTER_REFERENCE,this.entityStartPos=this.preprocessor.pos,this.entityDecoder.startEntity(this._isCharacterReferenceInAttribute()?fl.Attribute:fl.Legacy)}_isCharacterReferenceInAttribute(){return this.returnState===Y.ATTRIBUTE_VALUE_DOUBLE_QUOTED||this.returnState===Y.ATTRIBUTE_VALUE_SINGLE_QUOTED||this.returnState===Y.ATTRIBUTE_VALUE_UNQUOTED}_flushCodePointConsumedAsCharacterReference(e){this._isCharacterReferenceInAttribute()?this.currentAttr.value+=String.fromCodePoint(e):this._emitCodePoint(e)}_callState(e){switch(this.state){case Y.DATA:{this._stateData(e);break}case Y.RCDATA:{this._stateRcdata(e);break}case Y.RAWTEXT:{this._stateRawtext(e);break}case Y.SCRIPT_DATA:{this._stateScriptData(e);break}case Y.PLAINTEXT:{this._statePlaintext(e);break}case Y.TAG_OPEN:{this._stateTagOpen(e);break}case Y.END_TAG_OPEN:{this._stateEndTagOpen(e);break}case Y.TAG_NAME:{this._stateTagName(e);break}case Y.RCDATA_LESS_THAN_SIGN:{this._stateRcdataLessThanSign(e);break}case Y.RCDATA_END_TAG_OPEN:{this._stateRcdataEndTagOpen(e);break}case Y.RCDATA_END_TAG_NAME:{this._stateRcdataEndTagName(e);break}case Y.RAWTEXT_LESS_THAN_SIGN:{this._stateRawtextLessThanSign(e);break}case Y.RAWTEXT_END_TAG_OPEN:{this._stateRawtextEndTagOpen(e);break}case Y.RAWTEXT_END_TAG_NAME:{this._stateRawtextEndTagName(e);break}case Y.SCRIPT_DATA_LESS_THAN_SIGN:{this._stateScriptDataLessThanSign(e);break}case Y.SCRIPT_DATA_END_TAG_OPEN:{this._stateScriptDataEndTagOpen(e);break}case Y.SCRIPT_DATA_END_TAG_NAME:{this._stateScriptDataEndTagName(e);break}case Y.SCRIPT_DATA_ESCAPE_START:{this._stateScriptDataEscapeStart(e);break}case Y.SCRIPT_DATA_ESCAPE_START_DASH:{this._stateScriptDataEscapeStartDash(e);break}case Y.SCRIPT_DATA_ESCAPED:{this._stateScriptDataEscaped(e);break}case Y.SCRIPT_DATA_ESCAPED_DASH:{this._stateScriptDataEscapedDash(e);break}case Y.SCRIPT_DATA_ESCAPED_DASH_DASH:{this._stateScriptDataEscapedDashDash(e);break}case Y.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN:{this._stateScriptDataEscapedLessThanSign(e);break}case Y.SCRIPT_DATA_ESCAPED_END_TAG_OPEN:{this._stateScriptDataEscapedEndTagOpen(e);break}case Y.SCRIPT_DATA_ESCAPED_END_TAG_NAME:{this._stateScriptDataEscapedEndTagName(e);break}case Y.SCRIPT_DATA_DOUBLE_ESCAPE_START:{this._stateScriptDataDoubleEscapeStart(e);break}case Y.SCRIPT_DATA_DOUBLE_ESCAPED:{this._stateScriptDataDoubleEscaped(e);break}case Y.SCRIPT_DATA_DOUBLE_ESCAPED_DASH:{this._stateScriptDataDoubleEscapedDash(e);break}case Y.SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH:{this._stateScriptDataDoubleEscapedDashDash(e);break}case Y.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN:{this._stateScriptDataDoubleEscapedLessThanSign(e);break}case Y.SCRIPT_DATA_DOUBLE_ESCAPE_END:{this._stateScriptDataDoubleEscapeEnd(e);break}case Y.BEFORE_ATTRIBUTE_NAME:{this._stateBeforeAttributeName(e);break}case Y.ATTRIBUTE_NAME:{this._stateAttributeName(e);break}case Y.AFTER_ATTRIBUTE_NAME:{this._stateAfterAttributeName(e);break}case Y.BEFORE_ATTRIBUTE_VALUE:{this._stateBeforeAttributeValue(e);break}case Y.ATTRIBUTE_VALUE_DOUBLE_QUOTED:{this._stateAttributeValueDoubleQuoted(e);break}case Y.ATTRIBUTE_VALUE_SINGLE_QUOTED:{this._stateAttributeValueSingleQuoted(e);break}case Y.ATTRIBUTE_VALUE_UNQUOTED:{this._stateAttributeValueUnquoted(e);break}case Y.AFTER_ATTRIBUTE_VALUE_QUOTED:{this._stateAfterAttributeValueQuoted(e);break}case Y.SELF_CLOSING_START_TAG:{this._stateSelfClosingStartTag(e);break}case Y.BOGUS_COMMENT:{this._stateBogusComment(e);break}case Y.MARKUP_DECLARATION_OPEN:{this._stateMarkupDeclarationOpen(e);break}case Y.COMMENT_START:{this._stateCommentStart(e);break}case Y.COMMENT_START_DASH:{this._stateCommentStartDash(e);break}case Y.COMMENT:{this._stateComment(e);break}case Y.COMMENT_LESS_THAN_SIGN:{this._stateCommentLessThanSign(e);break}case Y.COMMENT_LESS_THAN_SIGN_BANG:{this._stateCommentLessThanSignBang(e);break}case Y.COMMENT_LESS_THAN_SIGN_BANG_DASH:{this._stateCommentLessThanSignBangDash(e);break}case Y.COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH:{this._stateCommentLessThanSignBangDashDash(e);break}case Y.COMMENT_END_DASH:{this._stateCommentEndDash(e);break}case Y.COMMENT_END:{this._stateCommentEnd(e);break}case Y.COMMENT_END_BANG:{this._stateCommentEndBang(e);break}case Y.DOCTYPE:{this._stateDoctype(e);break}case Y.BEFORE_DOCTYPE_NAME:{this._stateBeforeDoctypeName(e);break}case Y.DOCTYPE_NAME:{this._stateDoctypeName(e);break}case Y.AFTER_DOCTYPE_NAME:{this._stateAfterDoctypeName(e);break}case Y.AFTER_DOCTYPE_PUBLIC_KEYWORD:{this._stateAfterDoctypePublicKeyword(e);break}case Y.BEFORE_DOCTYPE_PUBLIC_IDENTIFIER:{this._stateBeforeDoctypePublicIdentifier(e);break}case Y.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED:{this._stateDoctypePublicIdentifierDoubleQuoted(e);break}case Y.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED:{this._stateDoctypePublicIdentifierSingleQuoted(e);break}case Y.AFTER_DOCTYPE_PUBLIC_IDENTIFIER:{this._stateAfterDoctypePublicIdentifier(e);break}case Y.BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS:{this._stateBetweenDoctypePublicAndSystemIdentifiers(e);break}case Y.AFTER_DOCTYPE_SYSTEM_KEYWORD:{this._stateAfterDoctypeSystemKeyword(e);break}case Y.BEFORE_DOCTYPE_SYSTEM_IDENTIFIER:{this._stateBeforeDoctypeSystemIdentifier(e);break}case Y.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED:{this._stateDoctypeSystemIdentifierDoubleQuoted(e);break}case Y.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED:{this._stateDoctypeSystemIdentifierSingleQuoted(e);break}case Y.AFTER_DOCTYPE_SYSTEM_IDENTIFIER:{this._stateAfterDoctypeSystemIdentifier(e);break}case Y.BOGUS_DOCTYPE:{this._stateBogusDoctype(e);break}case Y.CDATA_SECTION:{this._stateCdataSection(e);break}case Y.CDATA_SECTION_BRACKET:{this._stateCdataSectionBracket(e);break}case Y.CDATA_SECTION_END:{this._stateCdataSectionEnd(e);break}case Y.CHARACTER_REFERENCE:{this._stateCharacterReference();break}case Y.AMBIGUOUS_AMPERSAND:{this._stateAmbiguousAmpersand(e);break}default:throw new Error("Unknown state")}}_stateData(e){switch(e){case Q.LESS_THAN_SIGN:{this.state=Y.TAG_OPEN;break}case Q.AMPERSAND:{this._startCharacterReference();break}case Q.NULL:{this._err(me.unexpectedNullCharacter),this._emitCodePoint(e);break}case Q.EOF:{this._emitEOFToken();break}default:this._emitCodePoint(e)}}_stateRcdata(e){switch(e){case Q.AMPERSAND:{this._startCharacterReference();break}case Q.LESS_THAN_SIGN:{this.state=Y.RCDATA_LESS_THAN_SIGN;break}case Q.NULL:{this._err(me.unexpectedNullCharacter),this._emitChars(_n);break}case Q.EOF:{this._emitEOFToken();break}default:this._emitCodePoint(e)}}_stateRawtext(e){switch(e){case Q.LESS_THAN_SIGN:{this.state=Y.RAWTEXT_LESS_THAN_SIGN;break}case Q.NULL:{this._err(me.unexpectedNullCharacter),this._emitChars(_n);break}case Q.EOF:{this._emitEOFToken();break}default:this._emitCodePoint(e)}}_stateScriptData(e){switch(e){case Q.LESS_THAN_SIGN:{this.state=Y.SCRIPT_DATA_LESS_THAN_SIGN;break}case Q.NULL:{this._err(me.unexpectedNullCharacter),this._emitChars(_n);break}case Q.EOF:{this._emitEOFToken();break}default:this._emitCodePoint(e)}}_statePlaintext(e){switch(e){case Q.NULL:{this._err(me.unexpectedNullCharacter),this._emitChars(_n);break}case Q.EOF:{this._emitEOFToken();break}default:this._emitCodePoint(e)}}_stateTagOpen(e){if(l0(e))this._createStartTagToken(),this.state=Y.TAG_NAME,this._stateTagName(e);else switch(e){case Q.EXCLAMATION_MARK:{this.state=Y.MARKUP_DECLARATION_OPEN;break}case Q.SOLIDUS:{this.state=Y.END_TAG_OPEN;break}case Q.QUESTION_MARK:{this._err(me.unexpectedQuestionMarkInsteadOfTagName),this._createCommentToken(1),this.state=Y.BOGUS_COMMENT,this._stateBogusComment(e);break}case Q.EOF:{this._err(me.eofBeforeTagName),this._emitChars("<"),this._emitEOFToken();break}default:this._err(me.invalidFirstCharacterOfTagName),this._emitChars("<"),this.state=Y.DATA,this._stateData(e)}}_stateEndTagOpen(e){if(l0(e))this._createEndTagToken(),this.state=Y.TAG_NAME,this._stateTagName(e);else switch(e){case Q.GREATER_THAN_SIGN:{this._err(me.missingEndTagName),this.state=Y.DATA;break}case Q.EOF:{this._err(me.eofBeforeTagName),this._emitChars("");break}case Q.NULL:{this._err(me.unexpectedNullCharacter),this.state=Y.SCRIPT_DATA_ESCAPED,this._emitChars(_n);break}case Q.EOF:{this._err(me.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break}default:this.state=Y.SCRIPT_DATA_ESCAPED,this._emitCodePoint(e)}}_stateScriptDataEscapedLessThanSign(e){e===Q.SOLIDUS?this.state=Y.SCRIPT_DATA_ESCAPED_END_TAG_OPEN:l0(e)?(this._emitChars("<"),this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPE_START,this._stateScriptDataDoubleEscapeStart(e)):(this._emitChars("<"),this.state=Y.SCRIPT_DATA_ESCAPED,this._stateScriptDataEscaped(e))}_stateScriptDataEscapedEndTagOpen(e){l0(e)?(this.state=Y.SCRIPT_DATA_ESCAPED_END_TAG_NAME,this._stateScriptDataEscapedEndTagName(e)):(this._emitChars("");break}case Q.NULL:{this._err(me.unexpectedNullCharacter),this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPED,this._emitChars(_n);break}case Q.EOF:{this._err(me.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break}default:this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPED,this._emitCodePoint(e)}}_stateScriptDataDoubleEscapedLessThanSign(e){e===Q.SOLIDUS?(this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPE_END,this._emitChars("/")):(this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPED,this._stateScriptDataDoubleEscaped(e))}_stateScriptDataDoubleEscapeEnd(e){if(this.preprocessor.startsWith(la.SCRIPT,!1)&&o3e(this.preprocessor.peek(la.SCRIPT.length))){this._emitCodePoint(e);for(let r=0;r0&&this._isInTemplate()&&this.tmplCount--,this.stackTop--,this._updateCurrentElement(),this.handler.onItemPop(e,!0)}replace(e,r){let n=this._indexOf(e);this.items[n]=r,n===this.stackTop&&(this.current=r)}insertAfter(e,r,n){let s=this._indexOf(e)+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(e){let r=this.stackTop+1;do r=this.tagIDs.lastIndexOf(e,r-1);while(r>0&&this.treeAdapter.getNamespaceURI(this.items[r])!==Ee.HTML);this.shortenToLength(Math.max(r,0))}shortenToLength(e){for(;this.stackTop>=e;){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(e.has(this.tagIDs[n])&&this.treeAdapter.getNamespaceURI(this.items[n])===r)return n;return-1}clearBackTo(e,r){let n=this._indexOfTagNames(e,r);this.shortenToLength(n+1)}clearBackToTableContext(){this.clearBackTo(qzt,Ee.HTML)}clearBackToTableBodyContext(){this.clearBackTo(Uzt,Ee.HTML)}clearBackToTableRowContext(){this.clearBackTo(Fzt,Ee.HTML)}remove(e){let r=this._indexOf(e);r>=0&&(r===this.stackTop?this.pop():(this.items.splice(r,1),this.tagIDs.splice(r,1),this.stackTop--,this._updateCurrentElement(),this.handler.onItemPop(e,!1)))}tryPeekProperlyNestedBodyElement(){return this.stackTop>=1&&this.tagIDs[1]===I.BODY?this.items[1]:null}contains(e){return this._indexOf(e)>-1}getCommonAncestor(e){let r=this._indexOf(e)-1;return r>=0?this.items[r]:null}isRootHtmlElementCurrent(){return this.stackTop===0&&this.tagIDs[0]===I.HTML}hasInDynamicScope(e,r){for(let n=this.stackTop;n>=0;n--){let s=this.tagIDs[n];switch(this.treeAdapter.getNamespaceURI(this.items[n])){case Ee.HTML:{if(s===e)return!0;if(r.has(s))return!1;break}case Ee.SVG:{if(d3e.has(s))return!1;break}case Ee.MATHML:{if(l3e.has(s))return!1;break}}}return!0}hasInScope(e){return this.hasInDynamicScope(e,hD)}hasInListItemScope(e){return this.hasInDynamicScope(e,Wzt)}hasInButtonScope(e){return this.hasInDynamicScope(e,$zt)}hasNumberedHeaderInScope(){for(let e=this.stackTop;e>=0;e--){let r=this.tagIDs[e];switch(this.treeAdapter.getNamespaceURI(this.items[e])){case Ee.HTML:{if(Dx.has(r))return!0;if(hD.has(r))return!1;break}case Ee.SVG:{if(d3e.has(r))return!1;break}case Ee.MATHML:{if(l3e.has(r))return!1;break}}}return!0}hasInTableScope(e){for(let r=this.stackTop;r>=0;r--)if(this.treeAdapter.getNamespaceURI(this.items[r])===Ee.HTML)switch(this.tagIDs[r]){case e:return!0;case I.TABLE:case I.HTML:return!1}return!0}hasTableBodyContextInTableScope(){for(let e=this.stackTop;e>=0;e--)if(this.treeAdapter.getNamespaceURI(this.items[e])===Ee.HTML)switch(this.tagIDs[e]){case I.TBODY:case I.THEAD:case I.TFOOT:return!0;case I.TABLE:case I.HTML:return!1}return!0}hasInSelectScope(e){for(let r=this.stackTop;r>=0;r--)if(this.treeAdapter.getNamespaceURI(this.items[r])===Ee.HTML)switch(this.tagIDs[r]){case e:return!0;case I.OPTION:case I.OPTGROUP:break;default:return!1}return!0}generateImpliedEndTags(){for(;this.currentTagId!==void 0&&f3e.has(this.currentTagId);)this.pop()}generateImpliedEndTagsThoroughly(){for(;this.currentTagId!==void 0&&u3e.has(this.currentTagId);)this.pop()}generateImpliedEndTagsWithExclusion(e){for(;this.currentTagId!==void 0&&this.currentTagId!==e&&u3e.has(this.currentTagId);)this.pop()}};var iu;(function(t){t[t.Marker=0]="Marker",t[t.Element=1]="Element"})(iu||(iu={}));var p3e={type:iu.Marker},AD=class{constructor(e){this.treeAdapter=e,this.entries=[],this.bookmark=null}_getNoahArkConditionCandidates(e,r){let n=[],s=r.length,i=this.treeAdapter.getTagName(e),a=this.treeAdapter.getNamespaceURI(e);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(p3e)}pushElement(e,r){this._ensureNoahArkCondition(e),this.entries.unshift({type:iu.Element,element:e,token:r})}insertElementAfterBookmark(e,r){let n=this.entries.indexOf(this.bookmark);this.entries.splice(n,0,{type:iu.Element,element:e,token:r})}removeEntry(e){let r=this.entries.indexOf(e);r!==-1&&this.entries.splice(r,1)}clearToLastMarker(){let e=this.entries.indexOf(p3e);e===-1?this.entries.length=0:this.entries.splice(0,e+1)}getElementEntryInScopeWithTagName(e){let r=this.entries.find(n=>n.type===iu.Marker||this.treeAdapter.getTagName(n.element)===e);return r&&r.type===iu.Element?r:null}getElementEntry(e){return this.entries.find(r=>r.type===iu.Element&&r.element===e)}};var hc={createDocument(){return{nodeName:"#document",mode:Fi.NO_QUIRKS,childNodes:[]}},createDocumentFragment(){return{nodeName:"#document-fragment",childNodes:[]}},createElement(t,e,r){return{nodeName:t,tagName:t,attrs:r,namespaceURI:e,childNodes:[],parentNode:null}},createCommentNode(t){return{nodeName:"#comment",data:t,parentNode:null}},createTextNode(t){return{nodeName:"#text",value:t,parentNode:null}},appendChild(t,e){t.childNodes.push(e),e.parentNode=t},insertBefore(t,e,r){let n=t.childNodes.indexOf(r);t.childNodes.splice(n,0,e),e.parentNode=t},setTemplateContent(t,e){t.content=e},getTemplateContent(t){return t.content},setDocumentType(t,e,r,n){let s=t.childNodes.find(i=>i.nodeName==="#documentType");if(s)s.name=e,s.publicId=r,s.systemId=n;else{let i={nodeName:"#documentType",name:e,publicId:r,systemId:n,parentNode:null};hc.appendChild(t,i)}},setDocumentMode(t,e){t.mode=e},getDocumentMode(t){return t.mode},detachNode(t){if(t.parentNode){let e=t.parentNode.childNodes.indexOf(t);t.parentNode.childNodes.splice(e,1),t.parentNode=null}},insertText(t,e){if(t.childNodes.length>0){let r=t.childNodes[t.childNodes.length-1];if(hc.isTextNode(r)){r.value+=e;return}}hc.appendChild(t,hc.createTextNode(e))},insertTextBefore(t,e,r){let n=t.childNodes[t.childNodes.indexOf(r)-1];n&&hc.isTextNode(n)?n.value+=e:hc.insertBefore(t,hc.createTextNode(e),r)},adoptAttributes(t,e){let r=new Set(t.attrs.map(n=>n.name));for(let n=0;nt.startsWith(r))}function y3e(t){return t.name===h3e&&t.publicId===null&&(t.systemId===null||t.systemId===Hzt)}function x3e(t){if(t.name!==h3e)return Fi.QUIRKS;let{systemId:e}=t;if(e&&e.toLowerCase()===Qzt)return Fi.QUIRKS;let{publicId:r}=t;if(r!==null){if(r=r.toLowerCase(),Vzt.has(r))return Fi.QUIRKS;let n=e===null?Gzt:g3e;if(m3e(r,n))return Fi.QUIRKS;if(n=e===null?A3e:zzt,m3e(r,n))return Fi.LIMITED_QUIRKS}return Fi.NO_QUIRKS}var b3e={TEXT_HTML:"text/html",APPLICATION_XML:"application/xhtml+xml"},Yzt="definitionurl",Jzt="definitionURL",Xzt=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(t=>[t.toLowerCase(),t])),Zzt=new Map([["xlink:actuate",{prefix:"xlink",name:"actuate",namespace:Ee.XLINK}],["xlink:arcrole",{prefix:"xlink",name:"arcrole",namespace:Ee.XLINK}],["xlink:href",{prefix:"xlink",name:"href",namespace:Ee.XLINK}],["xlink:role",{prefix:"xlink",name:"role",namespace:Ee.XLINK}],["xlink:show",{prefix:"xlink",name:"show",namespace:Ee.XLINK}],["xlink:title",{prefix:"xlink",name:"title",namespace:Ee.XLINK}],["xlink:type",{prefix:"xlink",name:"type",namespace:Ee.XLINK}],["xml:lang",{prefix:"xml",name:"lang",namespace:Ee.XML}],["xml:space",{prefix:"xml",name:"space",namespace:Ee.XML}],["xmlns",{prefix:"",name:"xmlns",namespace:Ee.XMLNS}],["xmlns:xlink",{prefix:"xmlns",name:"xlink",namespace:Ee.XMLNS}]]),eKt=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(t=>[t.toLowerCase(),t])),tKt=new Set([I.B,I.BIG,I.BLOCKQUOTE,I.BODY,I.BR,I.CENTER,I.CODE,I.DD,I.DIV,I.DL,I.DT,I.EM,I.EMBED,I.H1,I.H2,I.H3,I.H4,I.H5,I.H6,I.HEAD,I.HR,I.I,I.IMG,I.LI,I.LISTING,I.MENU,I.META,I.NOBR,I.OL,I.P,I.PRE,I.RUBY,I.S,I.SMALL,I.SPAN,I.STRONG,I.STRIKE,I.SUB,I.SUP,I.TABLE,I.TT,I.U,I.UL,I.VAR]);function E3e(t){let e=t.tagID;return e===I.FONT&&t.attrs.some(({name:n})=>n===pl.COLOR||n===pl.SIZE||n===pl.FACE)||tKt.has(e)}function bQ(t){for(let e=0;e0&&this._setContextModes(e,r)}onItemPop(e,r){var n,s;if(this.options.sourceCodeLocationInfo&&this._setEndLocation(e,this.currentToken),(s=(n=this.treeAdapter).onItemPop)===null||s===void 0||s.call(n,e,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(e,r){let n=e===this.document||e&&this.treeAdapter.getNamespaceURI(e)===Ee.HTML;this.currentNotInHTML=!n,this.tokenizer.inForeignNode=!n&&e!==void 0&&r!==void 0&&!this._isIntegrationPoint(r,e)}_switchToTextParsing(e,r){this._insertElement(e,Ee.HTML),this.tokenizer.state=r,this.originalInsertionMode=this.insertionMode,this.insertionMode=te.TEXT}switchToPlaintextParsing(){this.insertionMode=te.TEXT,this.originalInsertionMode=te.IN_BODY,this.tokenizer.state=Ui.PLAINTEXT}_getAdjustedCurrentElement(){return this.openElements.stackTop===0&&this.fragmentContext?this.fragmentContext:this.openElements.current}_findFormInFragmentContext(){let e=this.fragmentContext;for(;e;){if(this.treeAdapter.getTagName(e)===de.FORM){this.formElement=e;break}e=this.treeAdapter.getParentNode(e)}}_initTokenizerForFragmentParsing(){if(!(!this.fragmentContext||this.treeAdapter.getNamespaceURI(this.fragmentContext)!==Ee.HTML))switch(this.fragmentContextID){case I.TITLE:case I.TEXTAREA:{this.tokenizer.state=Ui.RCDATA;break}case I.STYLE:case I.XMP:case I.IFRAME:case I.NOEMBED:case I.NOFRAMES:case I.NOSCRIPT:{this.tokenizer.state=Ui.RAWTEXT;break}case I.SCRIPT:{this.tokenizer.state=Ui.SCRIPT_DATA;break}case I.PLAINTEXT:{this.tokenizer.state=Ui.PLAINTEXT;break}default:}}_setDocumentType(e){let r=e.name||"",n=e.publicId||"",s=e.systemId||"";if(this.treeAdapter.setDocumentType(this.document,r,n,s),e.location){let a=this.treeAdapter.getChildNodes(this.document).find(o=>this.treeAdapter.isDocumentTypeNode(o));a&&this.treeAdapter.setNodeSourceCodeLocation(a,e.location)}}_attachElementToTree(e,r){if(this.options.sourceCodeLocationInfo){let n=r&&{...r,startTag:r};this.treeAdapter.setNodeSourceCodeLocation(e,n)}if(this._shouldFosterParentOnInsertion())this._fosterParentElement(e);else{let n=this.openElements.currentTmplContentOrNode;this.treeAdapter.appendChild(n??this.document,e)}}_appendElement(e,r){let n=this.treeAdapter.createElement(e.tagName,r,e.attrs);this._attachElementToTree(n,e.location)}_insertElement(e,r){let n=this.treeAdapter.createElement(e.tagName,r,e.attrs);this._attachElementToTree(n,e.location),this.openElements.push(n,e.tagID)}_insertFakeElement(e,r){let n=this.treeAdapter.createElement(e,Ee.HTML,[]);this._attachElementToTree(n,null),this.openElements.push(n,r)}_insertTemplate(e){let r=this.treeAdapter.createElement(e.tagName,Ee.HTML,e.attrs),n=this.treeAdapter.createDocumentFragment();this.treeAdapter.setTemplateContent(r,n),this._attachElementToTree(r,e.location),this.openElements.push(r,e.tagID),this.options.sourceCodeLocationInfo&&this.treeAdapter.setNodeSourceCodeLocation(n,null)}_insertFakeRootElement(){let e=this.treeAdapter.createElement(de.HTML,Ee.HTML,[]);this.options.sourceCodeLocationInfo&&this.treeAdapter.setNodeSourceCodeLocation(e,null),this.treeAdapter.appendChild(this.openElements.current,e),this.openElements.push(e,I.HTML)}_appendCommentNode(e,r){let n=this.treeAdapter.createCommentNode(e.data);this.treeAdapter.appendChild(r,n),this.options.sourceCodeLocationInfo&&this.treeAdapter.setNodeSourceCodeLocation(n,e.location)}_insertCharacters(e){let r,n;if(this._shouldFosterParentOnInsertion()?({parent:r,beforeElement:n}=this._findFosterParentingLocation(),n?this.treeAdapter.insertTextBefore(r,e.chars,n):this.treeAdapter.insertText(r,e.chars)):(r=this.openElements.currentTmplContentOrNode,this.treeAdapter.insertText(r,e.chars)),!e.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}=e.location;this.treeAdapter.updateNodeSourceCodeLocation(a,{endLine:c,endCol:u,endOffset:l})}else this.options.sourceCodeLocationInfo&&this.treeAdapter.setNodeSourceCodeLocation(a,e.location)}_adoptNodes(e,r){for(let n=this.treeAdapter.getFirstChild(e);n;n=this.treeAdapter.getFirstChild(e))this.treeAdapter.detachNode(n),this.treeAdapter.appendChild(r,n)}_setEndLocation(e,r){if(this.treeAdapter.getNodeSourceCodeLocation(e)&&r.location){let n=r.location,s=this.treeAdapter.getTagName(e),i=r.type===br.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(e,i)}}shouldProcessStartTagTokenInForeignContent(e){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,e.tagID===I.SVG&&this.treeAdapter.getTagName(r)===de.ANNOTATION_XML&&this.treeAdapter.getNamespaceURI(r)===Ee.MATHML?!1:this.tokenizer.inForeignNode||(e.tagID===I.MGLYPH||e.tagID===I.MALIGNMARK)&&n!==void 0&&!this._isIntegrationPoint(n,r,Ee.HTML)}_processToken(e){switch(e.type){case br.CHARACTER:{this.onCharacter(e);break}case br.NULL_CHARACTER:{this.onNullCharacter(e);break}case br.COMMENT:{this.onComment(e);break}case br.DOCTYPE:{this.onDoctype(e);break}case br.START_TAG:{this._processStartTag(e);break}case br.END_TAG:{this.onEndTag(e);break}case br.EOF:{this.onEof(e);break}case br.WHITESPACE_CHARACTER:{this.onWhitespaceCharacter(e);break}}}_isIntegrationPoint(e,r,n){let s=this.treeAdapter.getNamespaceURI(r),i=this.treeAdapter.getAttrList(r);return S3e(e,s,i,n)}_reconstructActiveFormattingElements(){let e=this.activeFormattingElements.entries.length;if(e){let r=this.activeFormattingElements.entries.findIndex(s=>s.type===iu.Marker||this.openElements.contains(s.element)),n=r===-1?e-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=te.IN_ROW}_closePElement(){this.openElements.generateImpliedEndTagsWithExclusion(I.P),this.openElements.popUntilTagNamePopped(I.P)}_resetInsertionMode(){for(let e=this.openElements.stackTop;e>=0;e--)switch(e===0&&this.fragmentContext?this.fragmentContextID:this.openElements.tagIDs[e]){case I.TR:{this.insertionMode=te.IN_ROW;return}case I.TBODY:case I.THEAD:case I.TFOOT:{this.insertionMode=te.IN_TABLE_BODY;return}case I.CAPTION:{this.insertionMode=te.IN_CAPTION;return}case I.COLGROUP:{this.insertionMode=te.IN_COLUMN_GROUP;return}case I.TABLE:{this.insertionMode=te.IN_TABLE;return}case I.BODY:{this.insertionMode=te.IN_BODY;return}case I.FRAMESET:{this.insertionMode=te.IN_FRAMESET;return}case I.SELECT:{this._resetInsertionModeForSelect(e);return}case I.TEMPLATE:{this.insertionMode=this.tmplInsertionModeStack[0];return}case I.HTML:{this.insertionMode=this.headElement?te.AFTER_HEAD:te.BEFORE_HEAD;return}case I.TD:case I.TH:{if(e>0){this.insertionMode=te.IN_CELL;return}break}case I.HEAD:{if(e>0){this.insertionMode=te.IN_HEAD;return}break}}this.insertionMode=te.IN_BODY}_resetInsertionModeForSelect(e){if(e>0)for(let r=e-1;r>0;r--){let n=this.openElements.tagIDs[r];if(n===I.TEMPLATE)break;if(n===I.TABLE){this.insertionMode=te.IN_SELECT_IN_TABLE;return}}this.insertionMode=te.IN_SELECT}_isElementCausesFosterParenting(e){return w3e.has(e)}_shouldFosterParentOnInsertion(){return this.fosterParentingEnabled&&this.openElements.currentTagId!==void 0&&this._isElementCausesFosterParenting(this.openElements.currentTagId)}_findFosterParentingLocation(){for(let e=this.openElements.stackTop;e>=0;e--){let r=this.openElements.items[e];switch(this.openElements.tagIDs[e]){case I.TEMPLATE:{if(this.treeAdapter.getNamespaceURI(r)===Ee.HTML)return{parent:this.treeAdapter.getTemplateContent(r),beforeElement:null};break}case I.TABLE:{let n=this.treeAdapter.getParentNode(r);return n?{parent:n,beforeElement:r}:{parent:this.openElements.items[e-1],beforeElement:null}}default:}}return{parent:this.openElements.items[0],beforeElement:null}}_fosterParentElement(e){let r=this._findFosterParentingLocation();r.beforeElement?this.treeAdapter.insertBefore(r.parent,e,r.beforeElement):this.treeAdapter.appendChild(r.parent,e)}_isSpecialElement(e,r){let n=this.treeAdapter.getNamespaceURI(e);return yQ[n].has(r)}onCharacter(e){if(this.skipNextNewLine=!1,this.tokenizer.inForeignNode){MYt(this,e);return}switch(this.insertionMode){case te.INITIAL:{pv(this,e);break}case te.BEFORE_HTML:{hv(this,e);break}case te.BEFORE_HEAD:{gv(this,e);break}case te.IN_HEAD:{Av(this,e);break}case te.IN_HEAD_NO_SCRIPT:{yv(this,e);break}case te.AFTER_HEAD:{xv(this,e);break}case te.IN_BODY:case te.IN_CAPTION:case te.IN_CELL:case te.IN_TEMPLATE:{N3e(this,e);break}case te.TEXT:case te.IN_SELECT:case te.IN_SELECT_IN_TABLE:{this._insertCharacters(e);break}case te.IN_TABLE:case te.IN_TABLE_BODY:case te.IN_ROW:{_Q(this,e);break}case te.IN_TABLE_TEXT:{B3e(this,e);break}case te.IN_COLUMN_GROUP:{bD(this,e);break}case te.AFTER_BODY:{ED(this,e);break}case te.AFTER_AFTER_BODY:{xD(this,e);break}default:}}onNullCharacter(e){if(this.skipNextNewLine=!1,this.tokenizer.inForeignNode){BYt(this,e);return}switch(this.insertionMode){case te.INITIAL:{pv(this,e);break}case te.BEFORE_HTML:{hv(this,e);break}case te.BEFORE_HEAD:{gv(this,e);break}case te.IN_HEAD:{Av(this,e);break}case te.IN_HEAD_NO_SCRIPT:{yv(this,e);break}case te.AFTER_HEAD:{xv(this,e);break}case te.TEXT:{this._insertCharacters(e);break}case te.IN_TABLE:case te.IN_TABLE_BODY:case te.IN_ROW:{_Q(this,e);break}case te.IN_COLUMN_GROUP:{bD(this,e);break}case te.AFTER_BODY:{ED(this,e);break}case te.AFTER_AFTER_BODY:{xD(this,e);break}default:}}onComment(e){if(this.skipNextNewLine=!1,this.currentNotInHTML){SQ(this,e);return}switch(this.insertionMode){case te.INITIAL:case te.BEFORE_HTML:case te.BEFORE_HEAD:case te.IN_HEAD:case te.IN_HEAD_NO_SCRIPT:case te.AFTER_HEAD:case te.IN_BODY:case te.IN_TABLE:case te.IN_CAPTION:case te.IN_COLUMN_GROUP:case te.IN_TABLE_BODY:case te.IN_ROW:case te.IN_CELL:case te.IN_SELECT:case te.IN_SELECT_IN_TABLE:case te.IN_TEMPLATE:case te.IN_FRAMESET:case te.AFTER_FRAMESET:{SQ(this,e);break}case te.IN_TABLE_TEXT:{mv(this,e);break}case te.AFTER_BODY:{mKt(this,e);break}case te.AFTER_AFTER_BODY:case te.AFTER_AFTER_FRAMESET:{hKt(this,e);break}default:}}onDoctype(e){switch(this.skipNextNewLine=!1,this.insertionMode){case te.INITIAL:{gKt(this,e);break}case te.BEFORE_HEAD:case te.IN_HEAD:case te.IN_HEAD_NO_SCRIPT:case te.AFTER_HEAD:{this._err(e,me.misplacedDoctype);break}case te.IN_TABLE_TEXT:{mv(this,e);break}default:}}onStartTag(e){this.skipNextNewLine=!1,this.currentToken=e,this._processStartTag(e),e.selfClosing&&!e.ackSelfClosing&&this._err(e,me.nonVoidHtmlElementStartTagWithTrailingSolidus)}_processStartTag(e){this.shouldProcessStartTagTokenInForeignContent(e)?WYt(this,e):this._startTagOutsideForeignContent(e)}_startTagOutsideForeignContent(e){switch(this.insertionMode){case te.INITIAL:{pv(this,e);break}case te.BEFORE_HTML:{AKt(this,e);break}case te.BEFORE_HEAD:{xKt(this,e);break}case te.IN_HEAD:{au(this,e);break}case te.IN_HEAD_NO_SCRIPT:{_Kt(this,e);break}case te.AFTER_HEAD:{vKt(this,e);break}case te.IN_BODY:{qi(this,e);break}case te.IN_TABLE:{Lx(this,e);break}case te.IN_TABLE_TEXT:{mv(this,e);break}case te.IN_CAPTION:{bYt(this,e);break}case te.IN_COLUMN_GROUP:{TQ(this,e);break}case te.IN_TABLE_BODY:{vD(this,e);break}case te.IN_ROW:{CD(this,e);break}case te.IN_CELL:{SYt(this,e);break}case te.IN_SELECT:{$3e(this,e);break}case te.IN_SELECT_IN_TABLE:{CYt(this,e);break}case te.IN_TEMPLATE:{TYt(this,e);break}case te.AFTER_BODY:{RYt(this,e);break}case te.IN_FRAMESET:{NYt(this,e);break}case te.AFTER_FRAMESET:{PYt(this,e);break}case te.AFTER_AFTER_BODY:{kYt(this,e);break}case te.AFTER_AFTER_FRAMESET:{LYt(this,e);break}default:}}onEndTag(e){this.skipNextNewLine=!1,this.currentToken=e,this.currentNotInHTML?$Yt(this,e):this._endTagOutsideForeignContent(e)}_endTagOutsideForeignContent(e){switch(this.insertionMode){case te.INITIAL:{pv(this,e);break}case te.BEFORE_HTML:{yKt(this,e);break}case te.BEFORE_HEAD:{bKt(this,e);break}case te.IN_HEAD:{EKt(this,e);break}case te.IN_HEAD_NO_SCRIPT:{SKt(this,e);break}case te.AFTER_HEAD:{CKt(this,e);break}case te.IN_BODY:{SD(this,e);break}case te.TEXT:{lYt(this,e);break}case te.IN_TABLE:{bv(this,e);break}case te.IN_TABLE_TEXT:{mv(this,e);break}case te.IN_CAPTION:{EYt(this,e);break}case te.IN_COLUMN_GROUP:{_Yt(this,e);break}case te.IN_TABLE_BODY:{vQ(this,e);break}case te.IN_ROW:{W3e(this,e);break}case te.IN_CELL:{vYt(this,e);break}case te.IN_SELECT:{F3e(this,e);break}case te.IN_SELECT_IN_TABLE:{IYt(this,e);break}case te.IN_TEMPLATE:{wYt(this,e);break}case te.AFTER_BODY:{q3e(this,e);break}case te.IN_FRAMESET:{OYt(this,e);break}case te.AFTER_FRAMESET:{DYt(this,e);break}case te.AFTER_AFTER_BODY:{xD(this,e);break}default:}}onEof(e){switch(this.insertionMode){case te.INITIAL:{pv(this,e);break}case te.BEFORE_HTML:{hv(this,e);break}case te.BEFORE_HEAD:{gv(this,e);break}case te.IN_HEAD:{Av(this,e);break}case te.IN_HEAD_NO_SCRIPT:{yv(this,e);break}case te.AFTER_HEAD:{xv(this,e);break}case te.IN_BODY:case te.IN_TABLE:case te.IN_CAPTION:case te.IN_COLUMN_GROUP:case te.IN_TABLE_BODY:case te.IN_ROW:case te.IN_CELL:case te.IN_SELECT:case te.IN_SELECT_IN_TABLE:{k3e(this,e);break}case te.TEXT:{dYt(this,e);break}case te.IN_TABLE_TEXT:{mv(this,e);break}case te.IN_TEMPLATE:{U3e(this,e);break}case te.AFTER_BODY:case te.IN_FRAMESET:case te.AFTER_FRAMESET:case te.AFTER_AFTER_BODY:case te.AFTER_AFTER_FRAMESET:{IQ(this,e);break}default:}}onWhitespaceCharacter(e){if(this.skipNextNewLine&&(this.skipNextNewLine=!1,e.chars.charCodeAt(0)===Q.LINE_FEED)){if(e.chars.length===1)return;e.chars=e.chars.substr(1)}if(this.tokenizer.inForeignNode){this._insertCharacters(e);return}switch(this.insertionMode){case te.IN_HEAD:case te.IN_HEAD_NO_SCRIPT:case te.AFTER_HEAD:case te.TEXT:case te.IN_COLUMN_GROUP:case te.IN_SELECT:case te.IN_SELECT_IN_TABLE:case te.IN_FRAMESET:case te.AFTER_FRAMESET:{this._insertCharacters(e);break}case te.IN_BODY:case te.IN_CAPTION:case te.IN_CELL:case te.IN_TEMPLATE:case te.AFTER_BODY:case te.AFTER_AFTER_BODY:case te.AFTER_AFTER_FRAMESET:{R3e(this,e);break}case te.IN_TABLE:case te.IN_TABLE_BODY:case te.IN_ROW:{_Q(this,e);break}case te.IN_TABLE_TEXT:{L3e(this,e);break}default:}}};function cKt(t,e){let r=t.activeFormattingElements.getElementEntryInScopeWithTagName(e.tagName);return r?t.openElements.contains(r.element)?t.openElements.hasInScope(e.tagID)||(r=null):(t.activeFormattingElements.removeEntry(r),r=null):D3e(t,e),r}function uKt(t,e){let r=null,n=t.openElements.stackTop;for(;n>=0;n--){let s=t.openElements.items[n];if(s===e.element)break;t._isSpecialElement(s,t.openElements.tagIDs[n])&&(r=s)}return r||(t.openElements.shortenToLength(Math.max(n,0)),t.activeFormattingElements.removeEntry(e)),r}function lKt(t,e,r){let n=e,s=t.openElements.getCommonAncestor(e);for(let i=0,a=s;a!==r;i++,a=s){s=t.openElements.getCommonAncestor(a);let o=t.activeFormattingElements.getElementEntry(a),c=o&&i>=aKt;!o||c?(c&&t.activeFormattingElements.removeEntry(o),t.openElements.remove(a)):(a=dKt(t,o),n===e&&(t.activeFormattingElements.bookmark=o),t.treeAdapter.detachNode(n),t.treeAdapter.appendChild(a,n),n=a)}return n}function dKt(t,e){let r=t.treeAdapter.getNamespaceURI(e.element),n=t.treeAdapter.createElement(e.token.tagName,r,e.token.attrs);return t.openElements.replace(e.element,n),e.element=n,n}function fKt(t,e,r){let n=t.treeAdapter.getTagName(e),s=u0(n);if(t._isElementCausesFosterParenting(s))t._fosterParentElement(r);else{let i=t.treeAdapter.getNamespaceURI(e);s===I.TEMPLATE&&i===Ee.HTML&&(e=t.treeAdapter.getTemplateContent(e)),t.treeAdapter.appendChild(e,r)}}function pKt(t,e,r){let n=t.treeAdapter.getNamespaceURI(r.element),{token:s}=r,i=t.treeAdapter.createElement(s.tagName,n,s.attrs);t._adoptNodes(e,i),t.treeAdapter.appendChild(e,i),t.activeFormattingElements.insertElementAfterBookmark(i,s),t.activeFormattingElements.removeEntry(r),t.openElements.remove(r.element),t.openElements.insertAfter(e,i,s.tagID)}function CQ(t,e){for(let r=0;r=r;n--)t._setEndLocation(t.openElements.items[n],e);if(!t.fragmentContext&&t.openElements.stackTop>=0){let n=t.openElements.items[0],s=t.treeAdapter.getNodeSourceCodeLocation(n);if(s&&!s.endTag&&(t._setEndLocation(n,e),t.openElements.stackTop>=1)){let i=t.openElements.items[1],a=t.treeAdapter.getNodeSourceCodeLocation(i);a&&!a.endTag&&t._setEndLocation(i,e)}}}}function gKt(t,e){t._setDocumentType(e);let r=e.forceQuirks?Fi.QUIRKS:x3e(e);y3e(e)||t._err(e,me.nonConformingDoctype),t.treeAdapter.setDocumentMode(t.document,r),t.insertionMode=te.BEFORE_HTML}function pv(t,e){t._err(e,me.missingDoctype,!0),t.treeAdapter.setDocumentMode(t.document,Fi.QUIRKS),t.insertionMode=te.BEFORE_HTML,t._processToken(e)}function AKt(t,e){e.tagID===I.HTML?(t._insertElement(e,Ee.HTML),t.insertionMode=te.BEFORE_HEAD):hv(t,e)}function yKt(t,e){let r=e.tagID;(r===I.HTML||r===I.HEAD||r===I.BODY||r===I.BR)&&hv(t,e)}function hv(t,e){t._insertFakeRootElement(),t.insertionMode=te.BEFORE_HEAD,t._processToken(e)}function xKt(t,e){switch(e.tagID){case I.HTML:{qi(t,e);break}case I.HEAD:{t._insertElement(e,Ee.HTML),t.headElement=t.openElements.current,t.insertionMode=te.IN_HEAD;break}default:gv(t,e)}}function bKt(t,e){let r=e.tagID;r===I.HEAD||r===I.BODY||r===I.HTML||r===I.BR?gv(t,e):t._err(e,me.endTagWithoutMatchingOpenElement)}function gv(t,e){t._insertFakeElement(de.HEAD,I.HEAD),t.headElement=t.openElements.current,t.insertionMode=te.IN_HEAD,t._processToken(e)}function au(t,e){switch(e.tagID){case I.HTML:{qi(t,e);break}case I.BASE:case I.BASEFONT:case I.BGSOUND:case I.LINK:case I.META:{t._appendElement(e,Ee.HTML),e.ackSelfClosing=!0;break}case I.TITLE:{t._switchToTextParsing(e,Ui.RCDATA);break}case I.NOSCRIPT:{t.options.scriptingEnabled?t._switchToTextParsing(e,Ui.RAWTEXT):(t._insertElement(e,Ee.HTML),t.insertionMode=te.IN_HEAD_NO_SCRIPT);break}case I.NOFRAMES:case I.STYLE:{t._switchToTextParsing(e,Ui.RAWTEXT);break}case I.SCRIPT:{t._switchToTextParsing(e,Ui.SCRIPT_DATA);break}case I.TEMPLATE:{t._insertTemplate(e),t.activeFormattingElements.insertMarker(),t.framesetOk=!1,t.insertionMode=te.IN_TEMPLATE,t.tmplInsertionModeStack.unshift(te.IN_TEMPLATE);break}case I.HEAD:{t._err(e,me.misplacedStartTagForHeadElement);break}default:Av(t,e)}}function EKt(t,e){switch(e.tagID){case I.HEAD:{t.openElements.pop(),t.insertionMode=te.AFTER_HEAD;break}case I.BODY:case I.BR:case I.HTML:{Av(t,e);break}case I.TEMPLATE:{Ih(t,e);break}default:t._err(e,me.endTagWithoutMatchingOpenElement)}}function Ih(t,e){t.openElements.tmplCount>0?(t.openElements.generateImpliedEndTagsThoroughly(),t.openElements.currentTagId!==I.TEMPLATE&&t._err(e,me.closingOfElementWithOpenChildElements),t.openElements.popUntilTagNamePopped(I.TEMPLATE),t.activeFormattingElements.clearToLastMarker(),t.tmplInsertionModeStack.shift(),t._resetInsertionMode()):t._err(e,me.endTagWithoutMatchingOpenElement)}function Av(t,e){t.openElements.pop(),t.insertionMode=te.AFTER_HEAD,t._processToken(e)}function _Kt(t,e){switch(e.tagID){case I.HTML:{qi(t,e);break}case I.BASEFONT:case I.BGSOUND:case I.HEAD:case I.LINK:case I.META:case I.NOFRAMES:case I.STYLE:{au(t,e);break}case I.NOSCRIPT:{t._err(e,me.nestedNoscriptInHead);break}default:yv(t,e)}}function SKt(t,e){switch(e.tagID){case I.NOSCRIPT:{t.openElements.pop(),t.insertionMode=te.IN_HEAD;break}case I.BR:{yv(t,e);break}default:t._err(e,me.endTagWithoutMatchingOpenElement)}}function yv(t,e){let r=e.type===br.EOF?me.openElementsLeftAfterEof:me.disallowedContentInNoscriptInHead;t._err(e,r),t.openElements.pop(),t.insertionMode=te.IN_HEAD,t._processToken(e)}function vKt(t,e){switch(e.tagID){case I.HTML:{qi(t,e);break}case I.BODY:{t._insertElement(e,Ee.HTML),t.framesetOk=!1,t.insertionMode=te.IN_BODY;break}case I.FRAMESET:{t._insertElement(e,Ee.HTML),t.insertionMode=te.IN_FRAMESET;break}case I.BASE:case I.BASEFONT:case I.BGSOUND:case I.LINK:case I.META:case I.NOFRAMES:case I.SCRIPT:case I.STYLE:case I.TEMPLATE:case I.TITLE:{t._err(e,me.abandonedHeadElementChild),t.openElements.push(t.headElement,I.HEAD),au(t,e),t.openElements.remove(t.headElement);break}case I.HEAD:{t._err(e,me.misplacedStartTagForHeadElement);break}default:xv(t,e)}}function CKt(t,e){switch(e.tagID){case I.BODY:case I.HTML:case I.BR:{xv(t,e);break}case I.TEMPLATE:{Ih(t,e);break}default:t._err(e,me.endTagWithoutMatchingOpenElement)}}function xv(t,e){t._insertFakeElement(de.BODY,I.BODY),t.insertionMode=te.IN_BODY,_D(t,e)}function _D(t,e){switch(e.type){case br.CHARACTER:{N3e(t,e);break}case br.WHITESPACE_CHARACTER:{R3e(t,e);break}case br.COMMENT:{SQ(t,e);break}case br.START_TAG:{qi(t,e);break}case br.END_TAG:{SD(t,e);break}case br.EOF:{k3e(t,e);break}default:}}function R3e(t,e){t._reconstructActiveFormattingElements(),t._insertCharacters(e)}function N3e(t,e){t._reconstructActiveFormattingElements(),t._insertCharacters(e),t.framesetOk=!1}function IKt(t,e){t.openElements.tmplCount===0&&t.treeAdapter.adoptAttributes(t.openElements.items[0],e.attrs)}function TKt(t,e){let r=t.openElements.tryPeekProperlyNestedBodyElement();r&&t.openElements.tmplCount===0&&(t.framesetOk=!1,t.treeAdapter.adoptAttributes(r,e.attrs))}function wKt(t,e){let r=t.openElements.tryPeekProperlyNestedBodyElement();t.framesetOk&&r&&(t.treeAdapter.detachNode(r),t.openElements.popAllUpToHtmlElement(),t._insertElement(e,Ee.HTML),t.insertionMode=te.IN_FRAMESET)}function RKt(t,e){t.openElements.hasInButtonScope(I.P)&&t._closePElement(),t._insertElement(e,Ee.HTML)}function NKt(t,e){t.openElements.hasInButtonScope(I.P)&&t._closePElement(),t.openElements.currentTagId!==void 0&&Dx.has(t.openElements.currentTagId)&&t.openElements.pop(),t._insertElement(e,Ee.HTML)}function OKt(t,e){t.openElements.hasInButtonScope(I.P)&&t._closePElement(),t._insertElement(e,Ee.HTML),t.skipNextNewLine=!0,t.framesetOk=!1}function PKt(t,e){let r=t.openElements.tmplCount>0;(!t.formElement||r)&&(t.openElements.hasInButtonScope(I.P)&&t._closePElement(),t._insertElement(e,Ee.HTML),r||(t.formElement=t.openElements.current))}function DKt(t,e){t.framesetOk=!1;let r=e.tagID;for(let n=t.openElements.stackTop;n>=0;n--){let s=t.openElements.tagIDs[n];if(r===I.LI&&s===I.LI||(r===I.DD||r===I.DT)&&(s===I.DD||s===I.DT)){t.openElements.generateImpliedEndTagsWithExclusion(s),t.openElements.popUntilTagNamePopped(s);break}if(s!==I.ADDRESS&&s!==I.DIV&&s!==I.P&&t._isSpecialElement(t.openElements.items[n],s))break}t.openElements.hasInButtonScope(I.P)&&t._closePElement(),t._insertElement(e,Ee.HTML)}function kKt(t,e){t.openElements.hasInButtonScope(I.P)&&t._closePElement(),t._insertElement(e,Ee.HTML),t.tokenizer.state=Ui.PLAINTEXT}function LKt(t,e){t.openElements.hasInScope(I.BUTTON)&&(t.openElements.generateImpliedEndTags(),t.openElements.popUntilTagNamePopped(I.BUTTON)),t._reconstructActiveFormattingElements(),t._insertElement(e,Ee.HTML),t.framesetOk=!1}function BKt(t,e){let r=t.activeFormattingElements.getElementEntryInScopeWithTagName(de.A);r&&(CQ(t,e),t.openElements.remove(r.element),t.activeFormattingElements.removeEntry(r)),t._reconstructActiveFormattingElements(),t._insertElement(e,Ee.HTML),t.activeFormattingElements.pushElement(t.openElements.current,e)}function MKt(t,e){t._reconstructActiveFormattingElements(),t._insertElement(e,Ee.HTML),t.activeFormattingElements.pushElement(t.openElements.current,e)}function WKt(t,e){t._reconstructActiveFormattingElements(),t.openElements.hasInScope(I.NOBR)&&(CQ(t,e),t._reconstructActiveFormattingElements()),t._insertElement(e,Ee.HTML),t.activeFormattingElements.pushElement(t.openElements.current,e)}function $Kt(t,e){t._reconstructActiveFormattingElements(),t._insertElement(e,Ee.HTML),t.activeFormattingElements.insertMarker(),t.framesetOk=!1}function FKt(t,e){t.treeAdapter.getDocumentMode(t.document)!==Fi.QUIRKS&&t.openElements.hasInButtonScope(I.P)&&t._closePElement(),t._insertElement(e,Ee.HTML),t.framesetOk=!1,t.insertionMode=te.IN_TABLE}function O3e(t,e){t._reconstructActiveFormattingElements(),t._appendElement(e,Ee.HTML),t.framesetOk=!1,e.ackSelfClosing=!0}function P3e(t){let e=lD(t,pl.TYPE);return e!=null&&e.toLowerCase()===sKt}function UKt(t,e){t._reconstructActiveFormattingElements(),t._appendElement(e,Ee.HTML),P3e(e)||(t.framesetOk=!1),e.ackSelfClosing=!0}function qKt(t,e){t._appendElement(e,Ee.HTML),e.ackSelfClosing=!0}function jKt(t,e){t.openElements.hasInButtonScope(I.P)&&t._closePElement(),t._appendElement(e,Ee.HTML),t.framesetOk=!1,e.ackSelfClosing=!0}function HKt(t,e){e.tagName=de.IMG,e.tagID=I.IMG,O3e(t,e)}function QKt(t,e){t._insertElement(e,Ee.HTML),t.skipNextNewLine=!0,t.tokenizer.state=Ui.RCDATA,t.originalInsertionMode=t.insertionMode,t.framesetOk=!1,t.insertionMode=te.TEXT}function GKt(t,e){t.openElements.hasInButtonScope(I.P)&&t._closePElement(),t._reconstructActiveFormattingElements(),t.framesetOk=!1,t._switchToTextParsing(e,Ui.RAWTEXT)}function VKt(t,e){t.framesetOk=!1,t._switchToTextParsing(e,Ui.RAWTEXT)}function I3e(t,e){t._switchToTextParsing(e,Ui.RAWTEXT)}function zKt(t,e){t._reconstructActiveFormattingElements(),t._insertElement(e,Ee.HTML),t.framesetOk=!1,t.insertionMode=t.insertionMode===te.IN_TABLE||t.insertionMode===te.IN_CAPTION||t.insertionMode===te.IN_TABLE_BODY||t.insertionMode===te.IN_ROW||t.insertionMode===te.IN_CELL?te.IN_SELECT_IN_TABLE:te.IN_SELECT}function KKt(t,e){t.openElements.currentTagId===I.OPTION&&t.openElements.pop(),t._reconstructActiveFormattingElements(),t._insertElement(e,Ee.HTML)}function YKt(t,e){t.openElements.hasInScope(I.RUBY)&&t.openElements.generateImpliedEndTags(),t._insertElement(e,Ee.HTML)}function JKt(t,e){t.openElements.hasInScope(I.RUBY)&&t.openElements.generateImpliedEndTagsWithExclusion(I.RTC),t._insertElement(e,Ee.HTML)}function XKt(t,e){t._reconstructActiveFormattingElements(),bQ(e),yD(e),e.selfClosing?t._appendElement(e,Ee.MATHML):t._insertElement(e,Ee.MATHML),e.ackSelfClosing=!0}function ZKt(t,e){t._reconstructActiveFormattingElements(),EQ(e),yD(e),e.selfClosing?t._appendElement(e,Ee.SVG):t._insertElement(e,Ee.SVG),e.ackSelfClosing=!0}function T3e(t,e){t._reconstructActiveFormattingElements(),t._insertElement(e,Ee.HTML)}function qi(t,e){switch(e.tagID){case I.I:case I.S:case I.B:case I.U:case I.EM:case I.TT:case I.BIG:case I.CODE:case I.FONT:case I.SMALL:case I.STRIKE:case I.STRONG:{MKt(t,e);break}case I.A:{BKt(t,e);break}case I.H1:case I.H2:case I.H3:case I.H4:case I.H5:case I.H6:{NKt(t,e);break}case I.P:case I.DL:case I.OL:case I.UL:case I.DIV:case I.DIR:case I.NAV:case I.MAIN:case I.MENU:case I.ASIDE:case I.CENTER:case I.FIGURE:case I.FOOTER:case I.HEADER:case I.HGROUP:case I.DIALOG:case I.DETAILS:case I.ADDRESS:case I.ARTICLE:case I.SEARCH:case I.SECTION:case I.SUMMARY:case I.FIELDSET:case I.BLOCKQUOTE:case I.FIGCAPTION:{RKt(t,e);break}case I.LI:case I.DD:case I.DT:{DKt(t,e);break}case I.BR:case I.IMG:case I.WBR:case I.AREA:case I.EMBED:case I.KEYGEN:{O3e(t,e);break}case I.HR:{jKt(t,e);break}case I.RB:case I.RTC:{YKt(t,e);break}case I.RT:case I.RP:{JKt(t,e);break}case I.PRE:case I.LISTING:{OKt(t,e);break}case I.XMP:{GKt(t,e);break}case I.SVG:{ZKt(t,e);break}case I.HTML:{IKt(t,e);break}case I.BASE:case I.LINK:case I.META:case I.STYLE:case I.TITLE:case I.SCRIPT:case I.BGSOUND:case I.BASEFONT:case I.TEMPLATE:{au(t,e);break}case I.BODY:{TKt(t,e);break}case I.FORM:{PKt(t,e);break}case I.NOBR:{WKt(t,e);break}case I.MATH:{XKt(t,e);break}case I.TABLE:{FKt(t,e);break}case I.INPUT:{UKt(t,e);break}case I.PARAM:case I.TRACK:case I.SOURCE:{qKt(t,e);break}case I.IMAGE:{HKt(t,e);break}case I.BUTTON:{LKt(t,e);break}case I.APPLET:case I.OBJECT:case I.MARQUEE:{$Kt(t,e);break}case I.IFRAME:{VKt(t,e);break}case I.SELECT:{zKt(t,e);break}case I.OPTION:case I.OPTGROUP:{KKt(t,e);break}case I.NOEMBED:case I.NOFRAMES:{I3e(t,e);break}case I.FRAMESET:{wKt(t,e);break}case I.TEXTAREA:{QKt(t,e);break}case I.NOSCRIPT:{t.options.scriptingEnabled?I3e(t,e):T3e(t,e);break}case I.PLAINTEXT:{kKt(t,e);break}case I.COL:case I.TH:case I.TD:case I.TR:case I.HEAD:case I.FRAME:case I.TBODY:case I.TFOOT:case I.THEAD:case I.CAPTION:case I.COLGROUP:break;default:T3e(t,e)}}function eYt(t,e){if(t.openElements.hasInScope(I.BODY)&&(t.insertionMode=te.AFTER_BODY,t.options.sourceCodeLocationInfo)){let r=t.openElements.tryPeekProperlyNestedBodyElement();r&&t._setEndLocation(r,e)}}function tYt(t,e){t.openElements.hasInScope(I.BODY)&&(t.insertionMode=te.AFTER_BODY,q3e(t,e))}function rYt(t,e){let r=e.tagID;t.openElements.hasInScope(r)&&(t.openElements.generateImpliedEndTags(),t.openElements.popUntilTagNamePopped(r))}function nYt(t){let e=t.openElements.tmplCount>0,{formElement:r}=t;e||(t.formElement=null),(r||e)&&t.openElements.hasInScope(I.FORM)&&(t.openElements.generateImpliedEndTags(),e?t.openElements.popUntilTagNamePopped(I.FORM):r&&t.openElements.remove(r))}function sYt(t){t.openElements.hasInButtonScope(I.P)||t._insertFakeElement(de.P,I.P),t._closePElement()}function iYt(t){t.openElements.hasInListItemScope(I.LI)&&(t.openElements.generateImpliedEndTagsWithExclusion(I.LI),t.openElements.popUntilTagNamePopped(I.LI))}function aYt(t,e){let r=e.tagID;t.openElements.hasInScope(r)&&(t.openElements.generateImpliedEndTagsWithExclusion(r),t.openElements.popUntilTagNamePopped(r))}function oYt(t){t.openElements.hasNumberedHeaderInScope()&&(t.openElements.generateImpliedEndTags(),t.openElements.popUntilNumberedHeaderPopped())}function cYt(t,e){let r=e.tagID;t.openElements.hasInScope(r)&&(t.openElements.generateImpliedEndTags(),t.openElements.popUntilTagNamePopped(r),t.activeFormattingElements.clearToLastMarker())}function uYt(t){t._reconstructActiveFormattingElements(),t._insertFakeElement(de.BR,I.BR),t.openElements.pop(),t.framesetOk=!1}function D3e(t,e){let r=e.tagName,n=e.tagID;for(let s=t.openElements.stackTop;s>0;s--){let i=t.openElements.items[s],a=t.openElements.tagIDs[s];if(n===a&&(n!==I.UNKNOWN||t.treeAdapter.getTagName(i)===r)){t.openElements.generateImpliedEndTagsWithExclusion(n),t.openElements.stackTop>=s&&t.openElements.shortenToLength(s);break}if(t._isSpecialElement(i,a))break}}function SD(t,e){switch(e.tagID){case I.A:case I.B:case I.I:case I.S:case I.U:case I.EM:case I.TT:case I.BIG:case I.CODE:case I.FONT:case I.NOBR:case I.SMALL:case I.STRIKE:case I.STRONG:{CQ(t,e);break}case I.P:{sYt(t);break}case I.DL:case I.UL:case I.OL:case I.DIR:case I.DIV:case I.NAV:case I.PRE:case I.MAIN:case I.MENU:case I.ASIDE:case I.BUTTON:case I.CENTER:case I.FIGURE:case I.FOOTER:case I.HEADER:case I.HGROUP:case I.DIALOG:case I.ADDRESS:case I.ARTICLE:case I.DETAILS:case I.SEARCH:case I.SECTION:case I.SUMMARY:case I.LISTING:case I.FIELDSET:case I.BLOCKQUOTE:case I.FIGCAPTION:{rYt(t,e);break}case I.LI:{iYt(t);break}case I.DD:case I.DT:{aYt(t,e);break}case I.H1:case I.H2:case I.H3:case I.H4:case I.H5:case I.H6:{oYt(t);break}case I.BR:{uYt(t);break}case I.BODY:{eYt(t,e);break}case I.HTML:{tYt(t,e);break}case I.FORM:{nYt(t);break}case I.APPLET:case I.OBJECT:case I.MARQUEE:{cYt(t,e);break}case I.TEMPLATE:{Ih(t,e);break}default:D3e(t,e)}}function k3e(t,e){t.tmplInsertionModeStack.length>0?U3e(t,e):IQ(t,e)}function lYt(t,e){var r;e.tagID===I.SCRIPT&&((r=t.scriptHandler)===null||r===void 0||r.call(t,t.openElements.current)),t.openElements.pop(),t.insertionMode=t.originalInsertionMode}function dYt(t,e){t._err(e,me.eofInElementThatCanContainOnlyText),t.openElements.pop(),t.insertionMode=t.originalInsertionMode,t.onEof(e)}function _Q(t,e){if(t.openElements.currentTagId!==void 0&&w3e.has(t.openElements.currentTagId))switch(t.pendingCharacterTokens.length=0,t.hasNonWhitespacePendingCharacterToken=!1,t.originalInsertionMode=t.insertionMode,t.insertionMode=te.IN_TABLE_TEXT,e.type){case br.CHARACTER:{B3e(t,e);break}case br.WHITESPACE_CHARACTER:{L3e(t,e);break}}else Ev(t,e)}function fYt(t,e){t.openElements.clearBackToTableContext(),t.activeFormattingElements.insertMarker(),t._insertElement(e,Ee.HTML),t.insertionMode=te.IN_CAPTION}function pYt(t,e){t.openElements.clearBackToTableContext(),t._insertElement(e,Ee.HTML),t.insertionMode=te.IN_COLUMN_GROUP}function mYt(t,e){t.openElements.clearBackToTableContext(),t._insertFakeElement(de.COLGROUP,I.COLGROUP),t.insertionMode=te.IN_COLUMN_GROUP,TQ(t,e)}function hYt(t,e){t.openElements.clearBackToTableContext(),t._insertElement(e,Ee.HTML),t.insertionMode=te.IN_TABLE_BODY}function gYt(t,e){t.openElements.clearBackToTableContext(),t._insertFakeElement(de.TBODY,I.TBODY),t.insertionMode=te.IN_TABLE_BODY,vD(t,e)}function AYt(t,e){t.openElements.hasInTableScope(I.TABLE)&&(t.openElements.popUntilTagNamePopped(I.TABLE),t._resetInsertionMode(),t._processStartTag(e))}function yYt(t,e){P3e(e)?t._appendElement(e,Ee.HTML):Ev(t,e),e.ackSelfClosing=!0}function xYt(t,e){!t.formElement&&t.openElements.tmplCount===0&&(t._insertElement(e,Ee.HTML),t.formElement=t.openElements.current,t.openElements.pop())}function Lx(t,e){switch(e.tagID){case I.TD:case I.TH:case I.TR:{gYt(t,e);break}case I.STYLE:case I.SCRIPT:case I.TEMPLATE:{au(t,e);break}case I.COL:{mYt(t,e);break}case I.FORM:{xYt(t,e);break}case I.TABLE:{AYt(t,e);break}case I.TBODY:case I.TFOOT:case I.THEAD:{hYt(t,e);break}case I.INPUT:{yYt(t,e);break}case I.CAPTION:{fYt(t,e);break}case I.COLGROUP:{pYt(t,e);break}default:Ev(t,e)}}function bv(t,e){switch(e.tagID){case I.TABLE:{t.openElements.hasInTableScope(I.TABLE)&&(t.openElements.popUntilTagNamePopped(I.TABLE),t._resetInsertionMode());break}case I.TEMPLATE:{Ih(t,e);break}case I.BODY:case I.CAPTION:case I.COL:case I.COLGROUP:case I.HTML:case I.TBODY:case I.TD:case I.TFOOT:case I.TH:case I.THEAD:case I.TR:break;default:Ev(t,e)}}function Ev(t,e){let r=t.fosterParentingEnabled;t.fosterParentingEnabled=!0,_D(t,e),t.fosterParentingEnabled=r}function L3e(t,e){t.pendingCharacterTokens.push(e)}function B3e(t,e){t.pendingCharacterTokens.push(e),t.hasNonWhitespacePendingCharacterToken=!0}function mv(t,e){let r=0;if(t.hasNonWhitespacePendingCharacterToken)for(;r0&&t.openElements.currentTagId===I.OPTION&&t.openElements.tagIDs[t.openElements.stackTop-1]===I.OPTGROUP&&t.openElements.pop(),t.openElements.currentTagId===I.OPTGROUP&&t.openElements.pop();break}case I.OPTION:{t.openElements.currentTagId===I.OPTION&&t.openElements.pop();break}case I.SELECT:{t.openElements.hasInSelectScope(I.SELECT)&&(t.openElements.popUntilTagNamePopped(I.SELECT),t._resetInsertionMode());break}case I.TEMPLATE:{Ih(t,e);break}default:}}function CYt(t,e){let r=e.tagID;r===I.CAPTION||r===I.TABLE||r===I.TBODY||r===I.TFOOT||r===I.THEAD||r===I.TR||r===I.TD||r===I.TH?(t.openElements.popUntilTagNamePopped(I.SELECT),t._resetInsertionMode(),t._processStartTag(e)):$3e(t,e)}function IYt(t,e){let r=e.tagID;r===I.CAPTION||r===I.TABLE||r===I.TBODY||r===I.TFOOT||r===I.THEAD||r===I.TR||r===I.TD||r===I.TH?t.openElements.hasInTableScope(r)&&(t.openElements.popUntilTagNamePopped(I.SELECT),t._resetInsertionMode(),t.onEndTag(e)):F3e(t,e)}function TYt(t,e){switch(e.tagID){case I.BASE:case I.BASEFONT:case I.BGSOUND:case I.LINK:case I.META:case I.NOFRAMES:case I.SCRIPT:case I.STYLE:case I.TEMPLATE:case I.TITLE:{au(t,e);break}case I.CAPTION:case I.COLGROUP:case I.TBODY:case I.TFOOT:case I.THEAD:{t.tmplInsertionModeStack[0]=te.IN_TABLE,t.insertionMode=te.IN_TABLE,Lx(t,e);break}case I.COL:{t.tmplInsertionModeStack[0]=te.IN_COLUMN_GROUP,t.insertionMode=te.IN_COLUMN_GROUP,TQ(t,e);break}case I.TR:{t.tmplInsertionModeStack[0]=te.IN_TABLE_BODY,t.insertionMode=te.IN_TABLE_BODY,vD(t,e);break}case I.TD:case I.TH:{t.tmplInsertionModeStack[0]=te.IN_ROW,t.insertionMode=te.IN_ROW,CD(t,e);break}default:t.tmplInsertionModeStack[0]=te.IN_BODY,t.insertionMode=te.IN_BODY,qi(t,e)}}function wYt(t,e){e.tagID===I.TEMPLATE&&Ih(t,e)}function U3e(t,e){t.openElements.tmplCount>0?(t.openElements.popUntilTagNamePopped(I.TEMPLATE),t.activeFormattingElements.clearToLastMarker(),t.tmplInsertionModeStack.shift(),t._resetInsertionMode(),t.onEof(e)):IQ(t,e)}function RYt(t,e){e.tagID===I.HTML?qi(t,e):ED(t,e)}function q3e(t,e){var r;if(e.tagID===I.HTML){if(t.fragmentContext||(t.insertionMode=te.AFTER_AFTER_BODY),t.options.sourceCodeLocationInfo&&t.openElements.tagIDs[0]===I.HTML){t._setEndLocation(t.openElements.items[0],e);let n=t.openElements.items[1];n&&!(!((r=t.treeAdapter.getNodeSourceCodeLocation(n))===null||r===void 0)&&r.endTag)&&t._setEndLocation(n,e)}}else ED(t,e)}function ED(t,e){t.insertionMode=te.IN_BODY,_D(t,e)}function NYt(t,e){switch(e.tagID){case I.HTML:{qi(t,e);break}case I.FRAMESET:{t._insertElement(e,Ee.HTML);break}case I.FRAME:{t._appendElement(e,Ee.HTML),e.ackSelfClosing=!0;break}case I.NOFRAMES:{au(t,e);break}default:}}function OYt(t,e){e.tagID===I.FRAMESET&&!t.openElements.isRootHtmlElementCurrent()&&(t.openElements.pop(),!t.fragmentContext&&t.openElements.currentTagId!==I.FRAMESET&&(t.insertionMode=te.AFTER_FRAMESET))}function PYt(t,e){switch(e.tagID){case I.HTML:{qi(t,e);break}case I.NOFRAMES:{au(t,e);break}default:}}function DYt(t,e){e.tagID===I.HTML&&(t.insertionMode=te.AFTER_AFTER_FRAMESET)}function kYt(t,e){e.tagID===I.HTML?qi(t,e):xD(t,e)}function xD(t,e){t.insertionMode=te.IN_BODY,_D(t,e)}function LYt(t,e){switch(e.tagID){case I.HTML:{qi(t,e);break}case I.NOFRAMES:{au(t,e);break}default:}}function BYt(t,e){e.chars=_n,t._insertCharacters(e)}function MYt(t,e){t._insertCharacters(e),t.framesetOk=!1}function j3e(t){for(;t.treeAdapter.getNamespaceURI(t.openElements.current)!==Ee.HTML&&t.openElements.currentTagId!==void 0&&!t._isIntegrationPoint(t.openElements.currentTagId,t.openElements.current);)t.openElements.pop()}function WYt(t,e){if(E3e(e))j3e(t),t._startTagOutsideForeignContent(e);else{let r=t._getAdjustedCurrentElement(),n=t.treeAdapter.getNamespaceURI(r);n===Ee.MATHML?bQ(e):n===Ee.SVG&&(_3e(e),EQ(e)),yD(e),e.selfClosing?t._appendElement(e,n):t._insertElement(e,n),e.ackSelfClosing=!0}}function $Yt(t,e){if(e.tagID===I.P||e.tagID===I.BR){j3e(t),t._endTagOutsideForeignContent(e);return}for(let r=t.openElements.stackTop;r>0;r--){let n=t.openElements.items[r];if(t.treeAdapter.getNamespaceURI(n)===Ee.HTML){t._endTagOutsideForeignContent(e);break}let s=t.treeAdapter.getTagName(n);if(s.toLowerCase()===e.tagName){e.tagName=s,t.openElements.shortenToLength(r);break}}}var kUr=String.prototype.codePointAt==null?(t,e)=>(t.charCodeAt(e)&64512)===55296?(t.charCodeAt(e)-55296)*1024+t.charCodeAt(e+1)-56320+65536:t.charCodeAt(e):(t,e)=>t.codePointAt(e);function H3e(t,e){return function(n){let s,i=0,a="";for(;s=t.exec(n);)i!==s.index&&(a+=n.substring(i,s.index)),a+=e.get(s[0].charCodeAt(0)),i=s.index+1;return a+n.substring(i)}}var Q3e=H3e(/["&\u00A0]/g,new Map([[34,"""],[38,"&"],[160," "]])),G3e=H3e(/[&<>\u00A0]/g,new Map([[38,"&"],[60,"<"],[62,">"],[160," "]]));var FYt=new Set([de.AREA,de.BASE,de.BASEFONT,de.BGSOUND,de.BR,de.COL,de.EMBED,de.FRAME,de.HR,de.IMG,de.INPUT,de.KEYGEN,de.LINK,de.META,de.PARAM,de.SOURCE,de.TRACK,de.WBR]);function UYt(t,e){return e.treeAdapter.isElementNode(t)&&e.treeAdapter.getNamespaceURI(t)===Ee.HTML&&FYt.has(e.treeAdapter.getTagName(t))}var qYt={treeAdapter:hc,scriptingEnabled:!0};function wQ(t,e){let r={...qYt,...e};return V3e(t,r)}function jYt(t,e){let r="",n=e.treeAdapter.isElementNode(t)&&e.treeAdapter.getTagName(t)===de.TEMPLATE&&e.treeAdapter.getNamespaceURI(t)===Ee.HTML?e.treeAdapter.getTemplateContent(t):t,s=e.treeAdapter.getChildNodes(n);if(s)for(let i of s)r+=V3e(i,e);return r}function V3e(t,e){return e.treeAdapter.isElementNode(t)?HYt(t,e):e.treeAdapter.isTextNode(t)?GYt(t,e):e.treeAdapter.isCommentNode(t)?VYt(t,e):e.treeAdapter.isDocumentTypeNode(t)?zYt(t,e):""}function HYt(t,e){let r=e.treeAdapter.getTagName(t);return`<${r}${QYt(t,e)}>${UYt(t,e)?"":`${jYt(t,e)}`}`}function QYt(t,{treeAdapter:e}){let r="";for(let n of e.getAttrList(t)){if(r+=" ",n.namespace)switch(n.namespace){case Ee.XML:{r+=`xml:${n.name}`;break}case Ee.XMLNS:{n.name!=="xmlns"&&(r+="xmlns:"),r+=n.name;break}case Ee.XLINK:{r+=`xlink:${n.name}`;break}default:r+=`${n.prefix}:${n.name}`}else r+=n.name;r+=`="${Q3e(n.value)}"`}return r}function GYt(t,e){let{treeAdapter:r}=e,n=r.getTextNodeContent(t),s=r.getParentNode(t),i=s&&r.isElementNode(s)&&r.getTagName(s);return i&&r.getNamespaceURI(s)===Ee.HTML&&xQ(i,e.scriptingEnabled)?n:G3e(n)}function VYt(t,{treeAdapter:e}){return``}function zYt(t,{treeAdapter:e}){return``}function z3e(t,e){return kx.parse(t,e)}function K3e(t,e,r){typeof t=="string"&&(r=e,e=t,t=null);let n=kx.getFragmentParser(t,r);return n.tokenizer.write(e,!0),n.getFragment()}function Y3e(t){let e=t.includes('"')?"'":'"';return e+t+e}function KYt(t,e,r){let n="!DOCTYPE ";return t&&(n+=t),e?n+=` PUBLIC ${Y3e(e)}`:r&&(n+=" SYSTEM"),r&&(n+=` ${Y3e(r)}`),n}var Hd={isCommentNode:_h,isElementNode:st,isTextNode:za,createDocument(){let t=new Eo([]);return t["x-mode"]=pD.DOCUMENT_MODE.NO_QUIRKS,t},createDocumentFragment(){return new Eo([])},createElement(t,e,r){let n=Object.create(null),s=Object.create(null),i=Object.create(null);for(let o=0;oN3(a)&&a.name==="!doctype");i?i.data=s??null:(i=new bh("!doctype",s),Hd.appendChild(t,i)),i["x-name"]=e,i["x-publicId"]=r,i["x-systemId"]=n},setDocumentMode(t,e){t["x-mode"]=e},getDocumentMode(t){return t["x-mode"]},detachNode(t){if(t.parent){let e=t.parent.children.indexOf(t),{prev:r,next:n}=t;t.prev=null,t.next=null,r&&(r.next=n),n&&(n.prev=r),t.parent.children.splice(e,1),t.parent=null}},insertText(t,e){let r=t.children[t.children.length-1];r&&za(r)?r.data+=e:Hd.appendChild(t,Hd.createTextNode(e))},insertTextBefore(t,e,r){let n=t.children[t.children.indexOf(r)-1];n&&za(n)?n.data+=e:Hd.insertBefore(t,Hd.createTextNode(e),r)},adoptAttributes(t,e){for(let r=0;r=ze.Zero&&t<=ze.Nine}function JYt(t){return t>=ze.LowerA&&t<=ze.LowerZ||t>=ze.UpperA&&t<=ze.UpperZ}function XYt(t){return t>=ze.UpperA&&t<=ze.UpperF||t>=ze.LowerA&&t<=ze.LowerF}var ou;(function(t){t[t.NoValue=0]="NoValue",t[t.Unquoted=1]="Unquoted",t[t.Single=2]="Single",t[t.Double=3]="Double"})(ou||(ou={}));var Xa={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])},Bx=class{constructor({xmlMode:e=!1,decodeEntities:r=!0},n){this.cbs=n,this.state=ve.Text,this.buffer="",this.sectionStart=0,this.index=0,this.baseState=ve.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=e,this.decodeEntities=r,this.entityTrie=e?P3:O3}reset(){this.state=ve.Text,this.buffer="",this.sectionStart=0,this.index=0,this.baseState=ve.Text,this.currentSequence=void 0,this.running=!0,this.offset=0}write(e){this.offset+=this.buffer.length,this.buffer=e,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=ve.BeforeTagName,this.sectionStart=this.index):this.decodeEntities&&e===ze.Amp&&(this.state=ve.BeforeEntity)}stateSpecialStartSequence(e){let r=this.sequenceIndex===this.currentSequence.length;if(!(r?ID(e):(e|32)===this.currentSequence[this.sequenceIndex]))this.isSpecial=!1;else if(!r){this.sequenceIndex++;return}this.sequenceIndex=0,this.state=ve.InTagName,this.stateInTagName(e)}stateInSpecialTag(e){if(this.sequenceIndex===this.currentSequence.length){if(e===ze.Gt||Qd(e)){let r=this.index-this.currentSequence.length;if(this.sectionStart>14)-1;if(!this.allowLegacyEntity()&&e!==ze.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]&dc.VALUE_LENGTH)>>14){case 1:{this.emitCodePoint(this.entityTrie[this.entityResult]&~dc.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(e){(e|32)===ze.LowerX?(this.entityExcess++,this.state=ve.InHexEntity):(this.state=ve.InNumericEntity,this.stateInNumericEntity(e))}emitNumericEntity(e){let r=this.index-this.entityExcess-1;r+2+ +(this.state===ve.InHexEntity)!==this.index&&(r>this.sectionStart&&this.emitPartial(this.sectionStart,r),this.sectionStart=this.index+Number(e),this.emitCodePoint(ev(this.entityResult))),this.state=this.baseState}stateInNumericEntity(e){e===ze.Semi?this.emitNumericEntity(!0):Z3e(e)?(this.entityResult=this.entityResult*10+(e-ze.Zero),this.entityExcess++):(this.allowLegacyEntity()?this.emitNumericEntity(!1):this.state=this.baseState,this.index--)}stateInHexEntity(e){e===ze.Semi?this.emitNumericEntity(!0):Z3e(e)?(this.entityResult=this.entityResult*16+(e-ze.Zero),this.entityExcess++):XYt(e)?(this.entityResult=this.entityResult*16+((e|32)-ze.LowerA+10),this.entityExcess++):(this.allowLegacyEntity()?this.emitNumericEntity(!1):this.state=this.baseState,this.index--)}allowLegacyEntity(){return!this.xmlMode&&(this.baseState===ve.Text||this.baseState===ve.InSpecialTag)}cleanup(){this.running&&this.sectionStart!==this.index&&(this.state===ve.Text||this.state===ve.InSpecialTag&&this.sequenceIndex===0?(this.cbs.ontext(this.sectionStart,this.index),this.sectionStart=this.index):(this.state===ve.InAttributeValueDq||this.state===ve.InAttributeValueSq||this.state===ve.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(e)||(this.stack.push(e),nDe.has(e)?this.foreignContext.push(!0):sDe.has(e)&&this.foreignContext.push(!1)),(i=(s=this.cbs).onopentagname)===null||i===void 0||i.call(s,e),this.cbs.onopentag&&(this.attribs={})}endOpenTag(e){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,e),this.attribs=null),this.cbs.onclosetag&&this.isVoidElement(this.tagname)&&this.cbs.onclosetag(this.tagname,!0),this.tagname=""}onopentagend(e){this.endIndex=e,this.endOpenTag(!1),this.startIndex=e+1}onclosetag(e,r){var n,s,i,a,o,c;this.endIndex=r;let u=this.getSlice(e,r);if(this.lowerCaseTagNames&&(u=u.toLowerCase()),(nDe.has(u)||sDe.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(e){this.endIndex=e,this.options.xmlMode||this.options.recognizeSelfClosing||this.foreignContext[this.foreignContext.length-1]?(this.closeCurrentTag(!1),this.startIndex=e+1):this.onopentagend(e)}closeCurrentTag(e){var r,n;let s=this.tagname;this.endOpenTag(e),this.stack[this.stack.length-1]===s&&((n=(r=this.cbs).onclosetag)===null||n===void 0||n.call(r,s,!e),this.stack.pop())}onattribname(e,r){this.startIndex=e;let n=this.getSlice(e,r);this.attribname=this.lowerCaseAttributeNames?n.toLowerCase():n}onattribdata(e,r){this.attribvalue+=this.getSlice(e,r)}onattribentity(e){this.attribvalue+=bx(e)}onattribend(e,r){var n,s;this.endIndex=r,(s=(n=this.cbs).onattribute)===null||s===void 0||s.call(n,this.attribname,this.attribvalue,e===ou.Double?'"':e===ou.Single?"'":e===ou.NoValue?void 0:null),this.attribs&&!Object.prototype.hasOwnProperty.call(this.attribs,this.attribname)&&(this.attribs[this.attribname]=this.attribvalue),this.attribvalue=""}getInstructionName(e){let r=e.search(tJt),n=r<0?e:e.substr(0,r);return this.lowerCaseTagNames&&(n=n.toLowerCase()),n}ondeclaration(e,r){this.endIndex=r;let n=this.getSlice(e,r);if(this.cbs.onprocessinginstruction){let s=this.getInstructionName(n);this.cbs.onprocessinginstruction(`!${s}`,`!${n}`)}this.startIndex=r+1}onprocessinginstruction(e,r){this.endIndex=r;let n=this.getSlice(e,r);if(this.cbs.onprocessinginstruction){let s=this.getInstructionName(n);this.cbs.onprocessinginstruction(`?${s}`,`?${n}`)}this.startIndex=r+1}oncomment(e,r,n){var s,i,a,o;this.endIndex=r,(i=(s=this.cbs).oncomment)===null||i===void 0||i.call(s,this.getSlice(e,r-n)),(o=(a=this.cbs).oncommentend)===null||o===void 0||o.call(a),this.startIndex=r+1}oncdata(e,r,n){var s,i,a,o,c,u,l,d,f,p;this.endIndex=r;let m=this.getSlice(e,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,m),(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[${m}]]`),(p=(f=this.cbs).oncommentend)===null||p===void 0||p.call(f)),this.startIndex=r+1}onend(){var e,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=(e=this.cbs).onend)===null||r===void 0||r.call(e)}reset(){var e,r,n,s;(r=(e=this.cbs).onreset)===null||r===void 0||r.call(e),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(e){this.reset(),this.end(e)}getSlice(e,r){for(;e-this.bufferOffset>=this.buffers[0].length;)this.shiftBuffer();let n=this.buffers[0].slice(e-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(e){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(e),this.tokenizer.running&&(this.tokenizer.write(e),this.writeIndex++)}end(e){var r,n;if(this.ended){(n=(r=this.cbs).onerror)===null||n===void 0||n.call(r,new Error(".end() after done!"));return}e&&this.write(e),this.ended=!0,this.tokenizer.end()}pause(){this.tokenizer.pause()}resume(){for(this.tokenizer.resume();this.tokenizer.running&&this.writeIndexe.xmlMode||e._useHtmlParser2?iDe(t,e):J3e(t,e,r,n)),Me=r3e(rJt,(t,e)=>e.xmlMode||e._useHtmlParser2?M3(t,e):X3e(t)),nJt=Me([]),{contains:sJt}=n0,{merge:iJt}=n0,{parseHTML:aJt}=n0,{root:oJt}=n0;var vv="abacdefghjklmnopqrstuvwxyzABCDEFGHJKLMNOPQRSTUVWXYZ0123456789";function aDe(t,e){return Math.floor(Math.random()*(e-t+1))+t}function Th(t,e,r){var n="";let s=e===void 0?!0:e;for(var i=0;i|《|》/g,"").replace(/\$|#/g," ").trim()}function ji(t){let e=t/1048576;return e>1024?`${(e/1024).toFixed(2)}GB`:`${parseInt(e).toFixed(0)}MB`}function NQ(t,e){if(!t||!e)return{length:0,sequence:"",offset:0};for(var r="",n=t.length,s=e.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+=t[c]:(o=d,r="",r+=t.substr(o,c+1-o))));return{length:a,sequence:r,offset:d}}function ml(t,e){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 Gd(t){return new Promise(e=>setTimeout(e,t))}var hl=t=>t.map(e=>e.split(";")[0]+";");var uu=Re(Cv(),1),Ov=Re(Jn(),1);var LQ=Re(Jn(),1),wh=require("path"),ms=Re(require("fs"),1),Ake=require("stream");async function cJt(t,e){let r=await he.get(t,{responseType:"stream",headers:Object.assign({Range:"bytes=0-0"},e)}).catch(n=>(console.error(n),n.response||{status:500,data:{}}));if(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]}var Tv={},gke="",Rh=(process.env.NODE_PATH||".")+"/vod_cache",uJt=1024*1024*100;async function yke(t){try{if(ms.default.existsSync(t)){let e=await ms.default.promises.readdir(t);await Promise.all(e.map(async r=>{let n=`${t}/${r}`;(await ms.default.promises.stat(n)).isDirectory()?await yke(n):await ms.default.promises.unlink(n)})),await ms.default.promises.rmdir(t)}}catch(e){console.error("Error deleting folder:",e)}}yke(Rh);function lJt(t){try{ms.default.readdir(Rh,(e,r)=>{if(r)for(let n of r){if(n===t)continue;let s=(0,wh.join)(Rh,n);ms.default.stat(s,(i,a)=>{a&&a.isDirectory()&&ms.default.readdir(s,(o,c)=>{if(c)for(let u of c)u.endsWith(".p")||ms.default.rm((0,wh.join)(s,u),{recursive:!0},()=>{})})})}})}catch(e){console.error(e)}}async function dJt(t,e,r,n,s,i){if(n=n||LQ.default.enc.Hex.stringify(LQ.default.MD5(r)).toString(),gke!==n&&(lJt(n),gke=n),!Tv[n]){let[P,L]=await cJt(r,s);if(!P||!L["content-length"]){e.redirect(r);return}Tv[n]=L}let a=!0;await ms.default.promises.access((0,wh.join)(Rh,n)).catch(P=>a=!1),a||await ms.default.promises.mkdir((0,wh.join)(Rh,n),{recursive:!0});let o=parseInt(Tv[n]["content-length"]),c=Math.max(0,parseInt(i?.skipBytes||0)||0),u=Math.min(c,Math.max(0,o-1)),l=o-u;if(!Number.isFinite(l)||l<=0){e.redirect(r);return}let d=0,f=l-1,p={};if(t.headers.range){let P=t.headers.range.trim().replace(/^bytes=/i,"").split("-"),L=P[0]!=="",M=P.length>1&&P[1]!=="";if(M){let k=parseInt(P[1],10);Number.isFinite(k)&&(f=k)}if(L){let k=parseInt(P[0],10);Number.isFinite(k)&&(d=k)}if(d=Math.max(0,Number.isFinite(d)?d:0),!M||!Number.isFinite(f)?f=l-1:f=Math.min(l-1,f),d>f){e.code(416),e.headers({"content-range":`bytes */${l}`});return}Object.assign(p,Tv[n]),p["content-length"]=(f-d+1).toString(),p["content-range"]=`bytes ${d}-${f}/${l}`,e.code(206)}else Object.assign(p,Tv[n]),p["content-length"]=l.toString(),e.code(200);i=i||{chunkSize:1024*512,poolSize:10,timeout:1e3*10};let m=i.chunkSize,h=i.poolSize,A=i.timeout,g=u+d,b=u+f,y=Math.ceil(o/m),x=Math.floor(b/m),v=Math.floor(g/m),C=v,R=!1,w={};for(let P=0;P{(async function M(k){if(R||v>x){L();return}if(k===void 0&&(v-C)*m>=uJt){setTimeout(M,5);return}let B=k!==void 0?k:v++,Z=`${t.id}-${B}`;try{let W=(0,wh.join)(Rh,n,`${t.id}-${B}.p`),F=!0;if(await ms.default.promises.access(W).catch(V=>F=!1),!F){let V=B*m,j=Math.min(o-1,(B+1)*m-1),J=await he.get(r,{responseType:"stream",timeout:A,headers:Object.assign({Range:`bytes=${V}-${j}`},s)}),se=(0,wh.join)(Rh,n,`${t.id}-${B}.dl`),oe=ms.default.createWriteStream(se),ue=setTimeout(()=>{oe.destroy(new Error(`${Z} read timeout`))},A),Ce=new Promise(qe=>{oe.on("finish",async()=>{R?await ms.default.promises.rm(se).catch(Fe=>console.error(Fe)):(await ms.default.promises.rename(se,W).catch(Fe=>console.error(Fe)),w[Z]=W),qe(!0)}),oe.on("error",async Fe=>{console.error(Fe),await ms.default.promises.rm(se).catch(_e=>console.error(_e)),qe(!1)})});J.data.pipe(oe);let we=await Ce;if(clearTimeout(ue),!we){setTimeout(()=>{M(B)},15);return}}setTimeout(M,5)}catch(W){console.error(W),setTimeout(()=>{M(B)},15)}})()});e.headers(p);let N=new Ake.PassThrough;return new Promise(P=>{let L=!0;(async function M(){try{if(C>x||R){N.end(),P();return}if(!L){setTimeout(M,5);return}let k=`${t.id}-${C}`;if(!w[k]){setTimeout(M,5);return}let B=C*m,Z=Math.min(o-1,(C+1)*m-1),W=Math.max(g,B)-B,V=Math.min(b,Z)-B-W+1,j=w[k];delete w[k];let J=await ms.default.promises.open(j,"r");if(V<=0){await J.close().catch(oe=>console.error(oe)),await ms.default.promises.rm(j).catch(oe=>console.error(oe)),C++,setTimeout(M,5);return}let se=Buffer.alloc(V);await J.read(se,0,V,W),await J.close().catch(oe=>console.error(oe)),await ms.default.promises.rm(j).catch(oe=>console.error(oe)),L=N.write(se),L||N.once("drain",()=>{L=!0}),C++,setTimeout(M,5)}catch{setTimeout(M,5)}})()}),N.on("close",async()=>{Object.keys(w).forEach(P=>{P.startsWith(t.id)&&(ms.default.rm(w[P],{recursive:!0},()=>{}),delete w[P])}),R=!0}),N}var Wx=dJt;var jke=Re(Pke(),1);var CXt=["\u9884\u544A"],IXt=t=>{if(!t)return!1;let e=String(t);return CXt.some(r=>e.includes(r))};function Dke(t){let e=/(E|EP)0?([1-9]\d*).*/.exec(t);if(e)return Number(e[2]);let r=/.*?([1-9]\d*).*/.exec(t);return r?Number(r[1]):null}function kke(t){return t.replace(/\.[^.]+$/,"").replace(/^(S\d+)?E?P?\d+\.?/i,"")}function Lke(t){return t==null?"":String(t)}function TXt(t,e){let r=Lke(t),n=Lke(e);return r===n?0:r.localeCompare(n,void 0,{numeric:!0,sensitivity:"base"})}function Os(t,e){let r={};return e.length===0||(e=e.filter(n=>!IXt(n?.vod_name)),e.length===0)||(e.sort((n,s)=>{let i=TXt(n.vod_group,s.vod_group);if(i!==0)return i;let a=Dke(n.vod_name),o=Dke(s.vod_name);if(a!==null&&o!==null&&a!==o)return a-o;let c=kke(n.vod_name),u=kke(s.vod_name);return c!==u?c.localeCompare(u):a!==null&&o!==null?a-o:n.vod_name.localeCompare(s.vod_name)}),e=e.map(n=>{let s=ji(n.vod_size);return{vod_id:n.vod_id,vod_name:cDe("",` ${n.vod_name.replace(/.[^.]+$/,"")} [${s}]`)}}),r.from=t,r.url=e.map(n=>n.vod_name+"$"+n.vod_id).join("#")),r}async function Xn(t,e,r={}){let n=(Array.isArray(t)?t:[t]).filter(Boolean).map(o=>String(o).trim()).filter(o=>o.length>0);if(n.length===0)return"";let s=Number(r?.timeoutMs)>0?Number(r.timeoutMs):5e3,i=Array.isArray(r?.methods)&&r.methods.length>0?r.methods:["HEAD","GET"],a={"User-Agent":d0,...e&&typeof e=="object"?e:{}};return await new Promise(o=>{let c=!1,u=f=>{c||(c=!0,o(f))},l=setTimeout(()=>u(n[0]),s*i.length+200),d=async f=>{for(let p of i)try{let m=await Ae.request({url:f,method:p,headers:a,proxy:!1,timeout:s,maxRedirects:5,validateStatus:()=>!0});if(m?.status>=200&&m.status<400){clearTimeout(l),u(f);return}}catch{}};n.forEach(f=>{d(f)})})}var gl=t=>globalThis.getPanEnabled?globalThis.getPanEnabled(t):!0,fk=t=>gl("ali")&&/www.alipan.com|www.aliyundrive.com/.test(t),pk=t=>gl("quark")&&t.includes("https://pan.quark.cn"),mk=t=>gl("uc")&&t.includes("https://drive.uc.cn"),Bke=t=>gl("tianyi")&&/cloud\.189\.cn/.test(t),Mke=t=>gl("yidong")&&/caiyun\.139\.com|yun\.139\.com/.test(t),Wke=t=>gl("123")&&/(?:www\.)?(?:123684\.com|123865\.com|123912\.com|123pan\.com|123pan\.cn|123592\.com)/.test(t),$ke=t=>gl("115")&&(/115.com|anxia.com|115cdn.com/.test(t)||/^(?:magnet:\?|ed2k:\/\/)/i.test(String(t||"").trim())),Fke=t=>gl("baidu")&&/pan\.baidu\.com/.test(t),Uke=t=>gl("xunlei")&&/pan\.xunlei\.com/.test(t),qke=t=>gl("guangyapan")&&/guangyapan\.com\/s\//.test(t);var qt=Ss;(function(t,e){let r=Ss,n=t();for(;;)try{if(-parseInt(r(944,"Jcg("))/1+parseInt(r(808,"4AqP"))/2*(parseInt(r(945,"DMN!"))/3)+parseInt(r(611,"Yq1i"))/4+parseInt(r(765,"MsPj"))/5*(-parseInt(r(646,"T!QQ"))/6)+parseInt(r(866,"^geQ"))/7+parseInt(r(403,"XTb1"))/8+-parseInt(r(640,"2Ftf"))/9*(parseInt(r(442,"JEeJ"))/10)===e)break;n.push(n.shift())}catch{n.push(n.shift())}})(hk,554820+1596*19+-97588);function hk(){let t=["WPVcSCoBnY8","WQaCEXRcSSoeuCkEfCoK","W65RsrZcGa9LCMSg","W7WfWReLfW","CmkmW7yd","WQerAqFcOSo/vG","a8kMW7VcHq","WORdLqyUpW","WQ7cO8o0ESkHWOhdUWvEga","WOVcNmolitvtESo/gsK","WQhdSXq5ga","EmkAFxm3","oxqPcCoIW6hdQXTbWRW","zxuVfa","W4FcVSkoWO9aWRZdSMVcMCom","rSkxW4qX","WQdcHSojW5JdLcLArXLm","ymohW5lcGHf6rgutiG","W4dcUmkkWOq","W4HVW6RdLmka","CmoNW6/cUJq","W6elW4rPW7metCkNW7lcPa","W619nWbZ","WRDzW6BdNCkb","WPFcUdNdO0FdMKbTW55P","nMFdGhOHe8kmWRpcQKm","WPFdL8oQ","mxVdKw0","W4zOdYXmaq","kIP7Bvi","WPpcNComoq","W6WaW7nNW44","WQ9wWRBcI8khW7pdSNldMGa","mmoGca5S","WPddNtaCoq","xmktW7CiBmouF8oHB2m","WRRdQw7dQmkv","dIethCoxyeHG","sehdKmoLrGJdOJj8WP0","b8oTmCkgaa","ASowW5xcHI8HhYKu","ve0vp8oZ","Cg8xe8oWWR/cUtXsWQy","WQhcKCoi","W4KRWRRdGSokWRu","W4FcSColFx4","WRnwfmkroG","qCo7i8kYyq","CCoaiCkhmfpcHmkLW5NdKa","pmkxW6ahq8osja","WQLEW6OTWOO","cmoMuqW","WRz5W4ue","WQRcJmo9FCkuWPW","W44HWQpdKCobWPJdSw3cI8ok","WOW4u1LXWOGE","WQBcRuPwW5BcNqK","BwqVfa","WO3dOZtdP0ldH198","ctSleCkDz3jHWPpdHa","W5dcUCkqWOrfWRddR2JcJa","WOSPqK4","W5bdkCou","xCkmW4i1y0ZcMaCGWPK","W7/cHtKiWOW","WOzNW4P3pbOC","WOVcVSozWPWU","WPeZv2vHWQWyB1G","W7abW5nVW6GrCCk2W4ZcSW","W4q+W7DWW4K","bc97xhS","r8kxW5KX","WPC1u09XWRmj","WR4dCq","WOfGW4bGnW","bcjfdSoaE3vH","y8kaALPn","W4bdkCopea","WP/dUJ8","WPNcVSo6mbC","tmkkW7WaqG","DmkKwf8OWQWXWRHfxW","xWVdHe0","hceSdCoaE29J","jtPFC1a","x1ddTCo8tqpdVGC","W77cOXOXWRVdM8kAoSodEW","qJNdUe03","wcddRMKf","WOZcT8oIW6/dSa","W4TJW43dKmk8","W7D3W6FdT8ks","txGDjSoE","ECouuCkyW7m","W6lcPWq7","advJuq","WRddSL/dKW","ASouv8kAW7BdNG","bmkHW6tcMbafDmohW7pcGa","W4JcR2FcPXVdGNLvWOvJrG","bSk0dCktyG","WQBcPSoOW5hdSW","W58OWQNdGCodWRm","W5tcNSoiBwK","WROCArhcOSoeqq","W4K7WRRdNq","W51AW4/dJmkr","W6WbtW","WRRdO8oKW6RcIa","W4uYW5LWa2pdVee","WQldKYmGp3VdTmk9bCkZ","WPC/qv8","W44PW7n3W7a","At3dKLqE","W5eFW4CBW7y","WPGHEMzh","bcSrhSogEG","W6W2dqRcHJfJBKqp","oZhcR8oP","FmoAsCkFW77dNW","WP5QW4u","lsFcQCkV","W4GRWQ7dHSokWRtdRuVcJ8oa","WRHpdCkg","gSkWlmkRy8oydCobFCoO","WQRdGZqKoG","CSkwW6yo","WPBcU8o8W5RdNG","rCo4BIhcJa","WPHVW7VdNW","rCknW4uT","zSkZW4e2qa","amoGuq","pcVcR8kJAXrxW7WTW4m","W5BcJmoVwL8","W70BWPiEdG","W6CwW5jVW68","hSouFYLs","p1tdPgKt","W6nkqZFcMq","W5OWW5nQm3tdVeBcPrG","WRhdVaeKga","W7eqW4f0W6Gq","g8o0cGv0mN3cT8koW50","WQjCcCko","z8kmALzqrwpdNdm5","WQRdVMhdPCkw","W7zbjColdq","yCkqFLO","bSoRmmkv","W6fYW6ddOa","W41fjCoubG","WQy9uH3cPG","wLhdRmoIqW","W4z0W6pdKCk1","WQb8W4itWPu","FmkmEwbstghdKtKI","haBcTSk4gLRdVcL5WPNdVCof","kYdcTW","xmk6twzw","WPFcMSowpa","W7edW6XUW5O","W7LLha5X","W4FcTmkDWP4","D8o6EaRdQmoioCkqsCoy","eSkPW6BcNa","nMRdGhONmSk4","WPrJW4jMntWnyq","W7dcIu5BW4ZcRrlcLc0","rfBdQSoJvWNdKGvH","WORcRWSmW5GGWQtdQ3W1","WQhdQfJdJW","W6CWW4zddW","zmkOAM51","oIdcSSkWqG","W7aDWO02aa","WPpdScK","W6hcIKHk","rSoNsIxcMq","W5egWRa1kG","WOxdTIVdUmoaWOCwea","tmo+nW","gaf1t1K","W77cRX87WPhdGmkD","zSoVtGldUSos","W7VcKvnoW5hdO2ldKIGG","W7bOW4VdO8k0","WPdcR8oyWPGVgsLmxmom","nWztyfq","EmosW5tcKW8Z","WP/dOYldUW","W6yfW5rH","AMpdLhWQfmkUWRVcOKC","CZRdO34","sLddSSodqaFdQaf6WRW","qvRdPCoTvGtdOGW","aJj/sY8","WQZdUSocW4hcQG","WOVcJCoEnsmBjG","W7BcNvDxW5dcVblcIsa4","hmoGqbzhmNO","dgmxfSobzG","yCkgW7ypx8oeAmo9","m8odiCkDjq","DbtdGNCt","W6axuCoxA8o4wcDqW4hdPq","W4jElmoDegO","zCkvW58qqa","WP7cOXqgWPCZWQVdOHKJ","WP/cRmoCDLpdVHlcMCkzqa","W6iyW4rJaq","W5NcVdGAWRy","WOFdOtZdHg0","W4PqlCoC","DmkgW6y","mmo6cSk1bG","W4pcQComBuldS1hcNq","kSoYutr5la","W7j1W6FdVa","W5ThzZJcMa","ESoGyWy","W6jVW4RdQ8krqqddU8kweG","WRddL8o7W67cTW","WO5/W7/dJSkuW64bWP0cWRa","WR/cHSoDW5S","WOD9W5r0Fq","WObuW5G0WRe","W7dcIxf0W68","W7n+W6pdTmkktHJdSCkOhW","y8kwW6eo","BSoaW6VcQYK","W4ZdUK9xWPvIWRxdLeWIdf0","WPu9WRRdL8kaWRxdOhdcKSoD","emkAW5FcQKS","WOtdR8kBibNcTW3cGmkXE3JdKfi","W4q5WP0ZAwu8Bh/cTCkJEW","WPvmW5OzW6PlWQyK","WPpdSc7dUCoYWRelha","hcSscCoEC3vHWR7dNG","z8o9wrFcSmobmmklBmoo","WRWFzW","F8kzW5KXyq","W4pcTmopA07dMftcNa","WRDna8kgkmo6tr9kW48","W7CNW5ynW6S","W6L1Dq","DCoVCmkcW5G","W71HvG","W5hcSmoh","W48FW5Gn","z8kmFLndq2u","hmoHta","usJdH1qx","W6LTwbW","s8oYFHZcIH0","WOzSW4G","WOVdMZqalG","E8kxW6ywxSkBjmkMlLy","WRblW4X8lW","W5qmW5K","xSk7FgvH","W5q6W6riaG","wSoKtqRdHW","W5tcTmkr","WPBcMSow","rSoJyqpcGa","DSoVsaq","W6SqW4vTW64","eeddKhKL","WRlcTSo2ECkcWOBdOXm","WQRdS37dKmkT","WO/dVHJdQ34","WOBcKmopodqmjSkpetC","ECokvd7cVG","BmobW4/cHaC","WO9+W6JdMCkUW5Gr","WRHCl8kMpa","W4hcTmkwWPPbWO3dTxC","WP7cOXqgW6q2","mwFdJhGUgSkOWRFcH0S","EhFdT8o9rq","CmovW77cPGO","W5Dfla","tSoNCCkUW7y","tSopfmkbaW","dsaBcSoLE3vS","W5xcIv9zW4G","yCo+uaZdQW","WRlcISoiW43dPYfk","WPv8kCkqgq","W4xcQmoiiq","f8o9lmk9ja","WO5/W7/dJSkuW7Gr","WQxcOSoaW7NdRW","W4fJW6/dI8ki","CCkHt1y","z8o8vq","W5urW54nW70","W4zLhcHmoJe","uCovgCkwma","y8kaALPnF3ddMGm9","lhBdHguX","W6zqm8oCqYW","W5vekCoAhKFcVmkIWP3cMW","w8kXwNmp","WOO5W7/dKmkyW4GaWPWnWQC","W4umW5WEW7y","ymktW74pwq","WRdcKConW57dNq","WPldNSo1W6dcVMpcJCo6nW","WOSTzHZcOq","W4hcTmkvWOzpWOddOW","W7BcSISrWRS","vSoVEGtdVa","mtvKvJxdMtpcRNWl","dmkcW5JcQ2S","FmkAEG","WOLLW7FdKq","WORcR8oDWPu4dJK","ECkaEfP9vhldIqG4","WO3cU8oWqmk/","W5lcKKPyW7i","FmoKW5xcPaa","W5BcTCocFa","WQ3dNq/dMhG","WRflfa","uSoqDmknW48","WRZcL8oqW5JdIW","gSowW5qSFG","zCoana","WQ5mWQZcNa","WP/dJCoMWQFcVMNcV8k8","W6ubW5q","fZrJu1e","wSoGFXtcGaa","svNdL8okuG","W4tcQxD8W40","W6OqW5rWW65zpCo8","rfZdK8oGAa","W4z5hcHDaalcNgNcGG","WQbXW5KtWOq","lIFcMmkIyq","WQldGIuH","W5bbW5ZdG8kk","C8o+taNdTSofnmklqCot","WQNdS0FcImkhp8oxvwFdJW","W7VdJCogW4hdLG","pmo2uIf1","D8o2taZdRCodcSklqCor","WQFcL8ofW5RdJdT5sZjn","W4vejmoqgJFcSSoMWPtcJG","W7BcPSkvWOnO","W7VcGSoiW4e","WQCjzv1/","WOldLmoOW6ZcSW","xSkqB3Lt","hmo9tbW","W6dcKvvxW4ZcVItcMZa","gSo2rbz7m07cUSktW4K","WOZcUa0g","Ec/dO204","rSk9sfDTyW","WOVdNaK6lq","rCo+sYNdUa","amkHW7FcIM4kESotWPxcJW","wmkbW6uCEa","cHzvweq","gZOEc8ogyvzTWPxdNW","W4qSWPmRogZdVCkXW58E","WPnUW4jPpdC","W7eJWOpdOSoF","xvRdQCoGCqtdTWC","asSijSocFMb9WR7dNG","WOa6CIBcJa","r8krW4aGtX/dKW","WQldPhpdLmkio8orBW","WQywwWhcTCoFxmkC","W4lcUCo8CKG","g8kNlq","cg12vMFdJYFcQhbo","W4anW4y","zSoxkCkdnG","z8kmFvbxuMpdJtKV","W79eftjM","bsSmcSotDwq","h8oMW73cJvipAmoEW7lcJG","W6LbDrZcJq","WOpcUmozWQ4PeYfDBq","W74sW4rElW","W4zKct8","WRTBWQ/cGCkEW4NdM2/dLWG","z8kaEfP9swq","CSkMsa","ymkkW5O","WPFdMmoGW6ZcRNxcJCoNpmkD","WO7dOSoNW6/cTa","uCo1W4dcGsG","WQ/dQKi","W54tWReCnW","y2uVm8oLWRdcRHXhWPe","rSoTEt3dLW","W6pcTGWWWOJdGmkvoSkZEa","W5BcQCkvWOnCWOBdTu3cGmoh","W57cPSkpWPLb","WQzccCkqlW","aIvJsxRdLJxcVW","WRWRzJBcPq","WO3dSYtdPu7dGwXSWOnJ","WOFcSSo8tSku","c8o+iCkzhW","W5qDW6vvW5i","w8kDlmkZE8o9pq","W5pcS8okCexdOa","E8kwW6awwW","WRxdR0a","W5KuW70mW7K","WOtdVmoxW5NcUa","WOCav2nZ","WOddTY7dR8okWOCpbSoaya","W55HWQVdLCodWQVdP3xcMmoe","wsVdTNW1W5m","DmoNuaddGmodlCkltCos","WOXlbSkUca","B8o7vK0ZWQC","WQDYW7JdSCkI","gICjhmkCCw5PW47dGq","zCoHW5pcGI4","aColWOn8iKBcH1atWRXcWRtcNa","wSkHfvCPA3xcJ8khW7H+W5W","W7BcJYGWWOm","WQBdR0pdIG","WRTpea","sXVdM3OI","WPDSWPdcI8kF","b8kJjmksyCoFfG","tum9lmoq","W6CCW5bPW68gtCkNW7RcUG","WQHJW7JcHa","i8k9dfhcP8krjmk0x8oDW6qd","bSomsq1RlW","W7TNqrZcNsnoF3qi","W63cOG0SWQVdMSkk","BSkKwvaAWQa5WOilta","W7xcIuzz","bSk9W6hcLq","W5FcUqOaWOi2WQJdUu1+","e8kWW6lcLeWdrmoEWRxcJa","eSo/n8kC","W6CkWO5HW7ekA8kMW73cSW","W4qGWPyHy33dSCk5WQ8v","u8kxW4qaCrxdNW","W7mzW4qhW5W","W4GNWR7dKCoWWQ7dOq","WOxdQIVdVSoqWQS","WOpdQsldG8oT","WPJdUJFdTa","WOzQW5LZpce","WQRcOmonWP4f","DmoNuaddGmopmq","WPVdRIBdULNdLMXTWPLR","WRCxAW","W5RcP8kaW4rnWOZdQW","WPBcMSot","W5esW4PRW7e","W5/cUmktWO9XWPFdThpcH8oA","W7v+W73dQ8ktxq/dSCkOeG","x8oLCCkuzCo8eSoCqq","oItcRmkRuW","emoTA8kvaatcQmkSWRCA","ySkyq8kuW6NdMIj8WOBcQW","x8oZyq","emkHW7ZcMq","W7JcImoTqgO","wSo0FH0","W6alW4r5","i2VdJw1Tf8k1WQhcRh0","WO3dVJFdOu7dO0r9","WQjkbmkapa","W5TObs52hJtcH3BcJW","W4vHfcLD","BIddS2S2W4JcKd7cHG","s8oTzfxcIrW/WODoWRm","W5GFWPCvlG","BSomnSkqde/cPSkLW4xdGG","W5qqW5Wq","WRxcVmocymkvWOhdUqC","W5VcUCox","WPZcOSkxWOKbWPddS3dcNCkg","WQy+sHRcJG","DSoxkCky","rSkmW4qSFHhdNK4U","ixddIh4N","WRBcSmoAWQuv","ESoAW5dcLZ0PdW","gCk4W7FcK3GpD8opW7pcGG","WRLEbCknhCoGFG4kW4m","umoRxrFdUSou","ymopDrtcNq","W5elW4ya","W4ZcUtFdSeJdNez3WOqP","zghdV8oCsq","E8owW4JcLG","W5n8ftLF","W78jW55SiW","WORcRXKxW4G","zSkaDfO","WOtdMGBdOem","W4alW4ea","CSkhs3PO","WRpcRCoHW4ldSa","zCkCFvC","dICthmoTE2u","xmoOAalcVr8PWPbsWQ8","bCk8W7pcIvS","W5m9WONdHSoDWQBdVa","WOZcR8oeWOucesTkAmoC","uCkHW5qfAa","WOTGW5/dRSkZ","W7vYW7JdOCk5rGG","W5FdVmkvWPHbWPFdQq","W7qmW5K","W4iMWQWRoNVdRmkxW6ej","btj5","W6CDWQGncW","FCo+wqVdMCopoCkAb8oq","ymkHsfy","jZbNDxi","WORcOW4gW7i7WQm","ASoavSkt","W5CLWOKNixhdQ8kWW58D","bcv9sxNdMtlcV0TC","WPWXrKH8","x8oYAaFdLXePWPP+W60","W5mxW4mnW4X1WQy","W4aZW5n2q2FdTLNcHaq","BSkJuG","WRf5WORcKCkV","gGPPy0u","WQhdUv7dJSkwp8km","WQxdMcmmkh3cSW","ymkByG","d8k5ka","ntzTsSk3W6ZcJXz5WQ8nhW","qu4tn8oW","WQvAeSkknCoU","WRWWW44nWPe/WRa","W53cJ8olBLK","W68OW4XTiW","WPdcSCoHW4pdVq","W7RcLMzmW5dcUdq","W50/WOddUCo8","AsVdS2CIW4tcNs8","cmoLlCkA","W493fCoJgW","W41hjCoWg37cPq","WRRcGSojW40","WQZdHYmTlW","bmoJkmkacr8","FmobW4FcNbe","wJRdOxKv","gSo6sGO","W7LRrHdcGdC","WO01qurHWRmzB3u7","W57cUSob","ESowW4lcMXaLcd4","BSkKwvaAWQa5WOiltW","mISznmoH","ySoVtHBdUG","cXOPdmo0","WRPil8kSlG","WPFcH8oSjtqao8k3","WR9hWPNcPCkL","WPtdNSoWW73cKgFcPSoWoW","WO7cGCoTW67dRa","W5a4W4zThMxdJfNcQrS","dICthmoTD3LWWOtdMq","WOBdL8oQW7RcQq","WPbzW7xdK8kM","Cmoam8kAjKNcT8kHW7tdLq","W5DeiSonhgZcPSkU","W4HqW5qeW7PLWRC4WOzu","WQ1gWQ3cNSkjW54","WPLMW51GbICkzfVcVa","h8o2vZTSi2RdPSkaW4q","wmoOEXdcSHOS","ySk7wfS","uSkFzxup","W79LrLxcIdL9BIec","W548WQhdGSok","W592CHFcIW","z8k9ufSdWQaX","wSkNW5OSyWi","DI/dO204","WQCxyq0","W5OOW7rAW6W","hdWwfa","Dg8Oca","Bmktt1nJ","W7JcGeK","W58JWOxdPCoI","W65RCq3cNdL/Ba","WPdcNSoOr8kT","W5j2zrxcGW","WP3dUtJdTuldLa","Cmokl8kb","cmkDmCkYsG","WRncbCkxpG","wL3dP8o4","W4ZcVSop","WO7cJCoBocC6mmkHdtW","z8kmW54jwSoeECoklLu","WOpdLCoQW7e","EmouvSkEWQ3cMq","pt3cV8kVsrzMW684W5G","n8kBW5e","BIddVNy","WPujqtRcOa","lJpcQCk1qG","i8k6bCkzvG","WRTzWP3cKCkP","yCoaW5i","WQTrWRm","fIL8xeRdKsi","WQXgWRNcMSkjW5/dRetdIGO","ymoRtWRdQSounSkAD8oy","W4y6WOyVaG","W6PRuq0","W7BcIWLFW47cSdtcIcCX","zSkgy1O","C8oQtGZdQCodESkjgSkt","W6zlW5jLW6WwD8kGW6FcPa","WPpcIConmcSA","W4pcPmkwWOi","bcG+whNdKt/cR3Pp","W488WQq","W6zjp0hdV8kgqmkHjCoZW6vg","WQr3d8kmlq","W4CLW5bXh2u","WQnCda","W6hcJffBW73cScK","nZBcR8kU","WQldLrDXW4JcNcBcHsO","W4eYW59P","y8ogi8kqieJcI8kWW4tdMG","ACofsCksW68","WQa9rI/cPq","yCkgW6iktmocBG","z8keW5qLrW","WO5IW7ZdIa","z28/gq","W7WIW4rQdq","kSk9cvZcQmksjSkjqCofW4qO","W6bQcXjO","z2eVgCoGWRxcUqy","WRdcGSoqW4K","W7SHWQxdOCo8","W6nnyXZcOa","W7tcGfnUW4pcTWpcNcqW","cs0Chmobyv5WWO7dNa","WQtcT8o3W4FdUG","WPOOqKjMWQqjvumX","tSoGErq","eLRdK28V","W4hcTmkwWOvBWPhdPxFcTSon","W7ldOCkHj8owW5JdVdqxjgBdLW","BSoalSksj1m","WOxdRIBdO8or","WRbhdSkh","ASoaiCkrnKNcPW","D8kcW6yh","k8oqWQDFgSkvEmo/jL/cKJi","WPhcVSoDWOmPdX1rD8or","qCkkW58O","WOFdSIFdNmoJ","ptjcA2a","W44VWP7dNSoD","WOdcPCoyWOG","WPddTYBdR8kkWRSqbmoC","W5r+dJnohq","W7xcJeTBW73cScK","WQxdS08","qCoEyrZcNGC","W5aUW5i","W5FcO8kmWPXl","WRNcVmoitCkx","WOJcQWOcW4aH","WOBdJSoWW6e","xCkmDG","W515csPAsxRdMNlcMG","qmkOW6uvFq","C8oIvq","ymohW5lcGHf6rguDiG","WPHIW6WmWOW","W7/cSGGQWRVdMG","AMe2gq","dmo1rbf0lW","B8oBtmkd","W5rUhJ9AaaRcGxlcGq","W7ZcLujqW6tcSchcMgy5","se3dTSoLuaJdKHzNWPu","emoJmSkrmWtcRW","W548WQhdGSokW6JdSYxdLCkF","W45bW4JdK8kE","WQBdOrldLxO","cSkNkmkTAG","Cmk8W5e8zG","WRddNZa7lfFcVW","W6CqW7zPW7KgFCkdW6hcSG","ddWwd8ox","W5qRWRddGmoWWQRdPgBcKmok","y08ylmoK","WQNdQuNdISkt","WQ9oW6PnlG","bmoYuqDW","vMiTpCoD","WRddR0NdGCkjiG","CSk8xuW5WPyHWOHptG","bLddMwK3","rmkTENnv","CmoeaCk2hW","BhqVda","WOO1xc/cTG","WQJcOmoqzSkvWONdRG","hSkyW5hcQ2W","W6LSqWVcIXL1","WPK5xK5lWQGE","WPhcMmohhrC","umojvIJdMG","WOldNSoUW7NcSwFcPSo2dmkF","WRFdGI/dG0a","dmkjW6RcLL0","WOf7W4zP","oYRcQ8kVvrrMW68WW4y"];return hk=function(){return t},hk()}var Vke=async t=>{let e=Ss;return globalThis[e(633,"MsPj")]?await globalThis[e(633,"MsPj")](t):t};function wXt(){let t=Ss;return(globalThis[t(929,"[BPj")]||[])[t(859,"^X[^")](r=>r[t(462,"uRD$")]===t(517,"JEeJ"))||{}}function zke(t){let e=Ss,r={BGjME:function(n,s){return n(s)},emMQM:function(n,s){return n||s}};return r[e(703,"5pf4")](String,r[e(575,"Y(FS")](t,""))[e(620,")laV")](",")[-4856+-43*-126+-562*1][e(465,"Htyc")]()}function Hke(t){let e=Ss;return{IbWgv:function(n,s){return n(s)}}[e(716,"gmGB")](zke,t)[e(226,"RuKh")](/^\w+:\/\//,"")[e(263,"5pf4")]("/")[227*-38+9012+-386][e(771,"]s]p")]()}function RXt(t){let e=Ss,r={SKYKS:function(u,l){return u(l)},PMNCt:e(355,"$Cx&")+e(910,"cL@*"),XLTZq:function(u,l){return u(l)},xfXTh:e(445,")laV")+e(495,"YeH6"),iiUlJ:e(313,"f3$*"),TcEXH:e(303,"m^Ne"),KmKVp:e(902,"*8Ja")},n=r[e(300,"4AqP")](String,t?.[e(753,"Y(FS")]?.[e(417,"VP4@")]?.()?.[e(614,"&4Vi")]||"")[e(571,"cL@*")](),s=r[e(249,"[BPj")](Hke,t?.[e(813,"Yq1i")]?.[r[e(750,"!8Ku")]]),i=s||r[e(562,"ROzP")](Hke,t?.[e(781,"Cp@N")]?.[e(820,"Cp@N")]);if(!i)return n;let a=r[e(697,"Yq1i")](zke,t?.[e(644,"Htyc")]?.[r[e(257,"kqpL")]]),o=n[e(325,"m^Ne")](r[e(314,"^geQ")])?r[e(376,"5pf4")]:r[e(346,"Y(FS")];return(a||r[e(570,"f3$*")](String,t?.[e(818,"L#hp")]||"")[e(648,"XTb1")]()||o)+e(816,"&4Vi")+i}function NXt(t){let e=Ss,r={rELyK:function(n,s){return n(s)},mSewr:function(n,s){return n??s}};return Ov.default[e(885,"fEqp")][e(663,"RuKh")][e(333,"MsPj")](Ov.default[e(221,"]s]p")](r[e(810,"m^Ne")](String,r[e(522,"uRD$")](t,""))))[e(576,"cHrf")]()}function Qke(t,e=-2179+3*1277+-1637*1){let r=Ss,n={ACEAv:function(i,a){return i(a)},LxCTZ:function(i,a){return i||a},NnVSK:function(i,a){return il},QMySJ:function(u,l){return u(l)},QTHIF:function(u,l,d,f,p){return u(l,d,f,p)},bDEpQ:function(u,l){return u-l}};r=i[s(581,"JEeJ")](r,{});let a=t[s(343,"cL@*")](i[s(341,"XTb1")]);Object[s(654,"A*C4")](r,gk),a&&sn[s(722,"!8Ku")]&&Object[s(230,"[BPj")](r,{Authorization:sn[s(483,"DMN!")]});let o=await he[s(572,"!8Ku")](PXt+"/"+t,e,{headers:r})[s(336,"*8Ja")](u=>u[s(794,"^geQ")]||{status:500,data:{}}),c=i[s(612,"&4Vi")](n,-2272*-3+3578+-10391);return i[s(695,"Htyc")](o[s(429,"fEqp")],-1*-4222+378*25+-13243)&&i[s(298,"kqpL")](c,7368+8*-921)?(await i[s(577,"2Ftf")](Gd,-121*-47+-3464+-1223),i[s(499,"JvFe")](Ak,t,e,r,i[s(719,"gmGB")](c,-4048+-83*-7+3468))):o[s(630,"m^Ne")]||{}}function Ss(t,e){let r=hk();return Ss=function(n,s){n=n-(6*88+1687*5+-8745);let i=r[n];if(Ss.dSPOpW===void 0){var a=function(d){let f="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=",p="",m="";for(let h=0,A,g,b=0;g=d.charAt(b++);~g&&(A=h%4?A*64+g:g,h++%4)?p+=String.fromCharCode(255&A>>(-2*h&6)):0)g=f.indexOf(g);for(let h=0,A=p.length;hu},rDNZb:function(c,u){return c(u)},qlmVF:function(c,u,l,d,f){return c(u,l,d,f)},gtsjD:function(c,u){return c-u}};r=i[s(405,"VP4@")](r,{}),h0[s(501,"ROzP")]&&Object[s(654,"A*C4")](r,{Authorization:h0[s(835,"T!QQ")]});let a=await he[s(306,"RiSA")](DXt+"/"+t,e,{headers:r})[s(507,"Cp@N")](c=>c[s(381,"$Cx&")]||{status:500,data:{}}),o=i[s(623,"T!QQ")](n,-7727+2*2089+3552);return i[s(855,"ScM#")](a[s(851,"f3$*")],-4449*-2+-2621+-5848)&&i[s(891,"$Cx&")](o,-1*603+127+476)?(await i[s(621,"Yq1i")](Gd,-9590+-37*31+-121*-97),i[s(649,"fEqp")](gc,t,e,r,i[s(309,"$Cx&")](o,-8835+22*-347+16470))):a[s(900,"f3$*")]||{}}async function tG(){let t=qt,e={mRupL:function(r,n){return rn[t(253,"YeH6")]||{status:500,data:{}});e[t(289,"5pf4")](r[t(669,"VP4@")],-3147*2+-1426*-1+5068)&&(sn=r[t(645,"T!QQ")],sn[t(324,"5pf4")+"e"]=e[t(729,"kqpL")](uu.default,r[t(242,"5pf4")][t(366,"RiSA")+"e"])[t(569,"Yq1i")](),sn[t(880,"ScM#")]=sn[t(711,"cHrf")]+" "+sn[t(634,"cL@*")+"en"],await e[t(870,"f3$*")](LXt,sn[t(599,"RiSA")+t(574,"MsPj")]))}}async function Zke(){let t=qt,e={AwmfP:function(r,n){return r>=n},yzAlA:function(r,n){return r-n},adFMI:function(r){return r()},RppGc:function(r,n){return rl>=232+1*3433+33*-105&&l<-13*-507+-34*-217+-13569}),c=o[t(294,"UdfQ")]?.[t(904,"^geQ")]?.[t(283,"T!QQ")]("#")[9909+2*308+-10524],u=e[t(237,"L#hp")](OXt,c);if(u?.[t(416,"cHrf")+"en"]){let l={...u,auth:(u[t(763,"Y(FS")]||e[t(532,"gmGB")])+" "+u[t(370,"jn$4")+"en"],expire_time:u[t(248,"%REC")]?e[t(843,"uRD$")](e[t(913,"*8Ja")](uu.default)[t(715,"W3A@")](),u[t(248,"%REC")]):e[t(386,"f3$*")](e[t(942,"W3A@")](uu.default)[t(460,"DMN!")](),7200)};await e[t(484,"RuKh")](BXt,l)}}catch(r){console[t(845,"f3$*")](e[t(743,"gmGB")],r[t(360,"cL@*")])}}async function MXt(){let t=qt,e={clVJM:function(n,s,i){return n(s,i)},UgvHA:t(674,"MsPj")+t(292,"RuKh"),Svjkl:function(n,s){return n>s},YFfsJ:t(541,"ROzP")+t(582,"&4Vi")};if(!Al||!sn[t(883,"rwt1")]?.[t(441,"^X[^")+t(615,"MsPj")])return;let r=await e[t(936,"MsPj")](gc,e[t(628,"A*C4")],{drive_id:sn[t(659,"YeH6")][t(538,"Cp@N")+t(615,"MsPj")],parent_file_id:Al,limit:100});if(Array[t(698,"2Ftf")](r[t(834,"gmGB")])&&e[t(439,"f3$*")](r[t(834,"gmGB")][t(641,"Htyc")],0))for(let n of r[t(860,"]s]p")])await e[t(936,"MsPj")](gc,e[t(372,"kqpL")],{drive_id:sn[t(284,"m^Ne")][t(600,"5pf4")+t(367,"RuKh")],file_id:n[t(487,"cL@*")]})}async function WXt(){let t=qt,e={zVEaQ:function(o,c,u){return o(c,u)},nrOEg:t(510,"L#hp")+t(530,"]s]p"),FamZs:t(717,"2Ftf")+t(596,"kqpL"),gqHMS:t(886,"MsPj"),IOOcs:t(790,"ROzP"),FZWpT:t(791,"*8Ja"),PULtr:t(470,"W3A@")+t(480,"e7vJ"),mNkoW:t(613,"L#hp"),GpIOg:t(828,")laV")};if(!sn[t(285,"jn$4")])return null;if(Al)return Al;let r=await e[t(788,"%REC")](gc,e[t(252,"&4Vi")],{});if(!r[t(879,"e7vJ")+t(494,"^X[^")])return null;sn[t(786,"]s]p")]=r;let n=r[t(879,"e7vJ")+t(350,"XTb1")],s=await e[t(847,"&[cA")](gc,e[t(384,"2Ftf")],{drive_id:n,parent_file_id:e[t(824,"Cp@N")],limit:100,order_by:e[t(409,"RiSA")],order_direction:e[t(778,"f3$*")]}),i=Array[t(490,"Y(FS")](s[t(385,"R&$u")])?s[t(775,"UdfQ")][t(761,"KiBW")](o=>o[t(832,"&4Vi")]===Gke):null;return i?.[t(566,"ROzP")]?(Al=i[t(701,"Cp@N")],Al):(Al=(await e[t(342,"$Cx&")](gc,e[t(408,"*8Ja")],{check_name_mode:e[t(553,"[#^Z")],drive_id:n,name:Gke,parent_file_id:e[t(526,"Y(FS")],type:e[t(592,"Yq1i")]}))[t(264,"m^Ne")]||null,Al)}async function rG(){let t=qt,e={xoYYp:function(r){return r()},vwARB:function(r){return r()},MrRRu:function(r,n,s){return r(n,s)},VYcex:t(948,"5pf4")+t(410,"JEeJ")};if(await e[t(660,"2Ftf")](tG),await e[t(493,"[#^Z")](Zke),!sn[t(659,"YeH6")]?.[t(358,"RuKh")+t(251,"[#^Z")]){let r=await e[t(650,"$Cx&")](gc,e[t(220,"DMN!")],{});r[t(554,"Htyc")+t(560,"[BPj")]&&(sn[t(684,"cL@*")]=r)}return sn[t(467,"&[cA")]?.[t(795,"VP4@")+t(428,"Y(FS")]||""}async function $Xt(t){let e=qt,r={IZFWx:function(i){return i()},UzQDx:function(i,a){return i||a},zLPsh:function(i,a,o){return i(a,o)},qhNxU:e(418,"ROzP")+e(930,"^X[^")+e(369,"XTb1")},n=await r[e(678,"^X[^")](rG);if(r[e(920,"VP4@")](!n,!t))return null;let s=await r[e(482,"4AqP")](gc,r[e(247,"4AqP")],{file_id:t,drive_id:n});return s?.[e(597,"RiSA")]?s:null}async function FXt(t){let e=qt,r={FTmrM:function(a){return a()},PDsTP:function(a,o){return a||o},ENHKw:function(a,o,c){return a(o,c)},reRkc:e(377,"VP4@")+e(747,"^geQ")+e(488,"[BPj")+"fo",QIeiI:e(295,"RuKh")+e(537,"cHrf"),JfPZG:e(934,"JvFe")},n=await r[e(884,"JvFe")](rG);if(r[e(935,"KiBW")](!n,!t))return null;let s=await r[e(519,"!8Ku")](gc,r[e(353,"uRD$")],{file_id:t,drive_id:n,category:r[e(912,"R&$u")],url_expire_sec:r[e(228,"*8Ja")]}),i=s?.[e(394,"fEqp")+e(865,"RuKh")+e(949,"Yq1i")];return i?.[e(279,"]s]p")+e(567,"XTb1")]??i?.[e(558,"Jcg(")+e(730,"f3$*")+e(657,"[BPj")]??null}async function eLe(t,e=qt(580,"Htyc"),r=""){let n=qt,s={haLHm:function(o,c){return o(c)},ZhziO:function(o){return o()},LjTtP:function(o,c,u){return o(c,u)},kFUZn:n(500,"5pf4")+n(841,"vgae"),WpwLg:function(o,c){return o||c},RbvAZ:n(580,"Htyc"),QDtLw:n(225,"DMN!"),zJJVU:n(590,"W3A@"),tGBoI:function(o,c){return o(c)}};await s[n(809,"JEeJ")](Dv,t);let i=await s[n(523,"L#hp")](rG);if(!i)return{items:[],next_marker:""};let a=await s[n(260,"Htyc")](gc,s[n(529,"]s]p")],{drive_id:i,parent_file_id:s[n(339,"5pf4")](e,s[n(690,"!8Ku")]),limit:200,order_by:s[n(694,"RuKh")],order_direction:s[n(291,"W3A@")],marker:s[n(502,"$Cx&")](r,"")});return{items:Array[n(525,"MsPj")](a?.[n(243,"f3$*")])?a[n(687,"ScM#")]:[],next_marker:s[n(464,"Yq1i")](String,a?.[n(685,"Y(FS")+"r"]||""),drive_id:i}}async function tLe(t){let e=qt,r={wdjna:function(n,s){return nc}},n=r[e(931,"jn$4")](typeof t,r[e(544,"cL@*")])?r[e(327,"YeH6")](Yke,t):t;if(!n)return[];if(await r[e(478,"A*C4")](tLe,n),!m0[n[e(875,"&[cA")]])return[];let s=[],i=[],a=async(o,c,u)=>{let l=e,d=await r[l(458,"JvFe")](Ak,r[l(302,")laV")],{share_id:o,parent_file_id:c,limit:200,order_by:r[l(921,"4AqP")],order_direction:r[l(861,"Yq1i")],marker:r[l(595,"RiSA")](u,"")},{"X-Share-Token":m0[o][l(932,"[#^Z")+"n"]}),f=d[l(277,"&[cA")];if(!f)return[];if(d[l(491,"UdfQ")+"r"]){let m=await r[l(374,"JvFe")](a,o,c,d[l(454,"A*C4")+"r"]);for(let h of m)f[l(474,"DMN!")](h)}let p=[];for(let m of f)if(r[l(732,"[#^Z")](m[l(736,"&[cA")],r[l(453,"&4Vi")]))p[l(804,"$Cx&")](m);else if(r[l(468,"UdfQ")](m[l(770,"Cp@N")],r[l(681,"XTb1")])&&r[l(473,"[BPj")](m[l(629,"!8Ku")],r[l(916,"XTb1")])){if(r[l(259,")laV")](m[l(481,"RuKh")],r[l(492,"T!QQ")](r[l(773,"VP4@")](-17*181+170+-1*-3931,4850+2759*-1+11*-97),-1*1019+9563+-8539)))continue;m[l(531,"m^Ne")]=m[l(803,"VP4@")][l(287,"YeH6")](/玩偶哥.*【神秘的哥哥们】/g,""),s[l(608,"YeH6")](m)}else r[l(262,"MsPj")](m[l(857,"RuKh")],r[l(234,"Jcg(")])&&m[l(397,"5pf4")+l(536,"vgae")]&&kXt[l(604,"RuKh")](h=>m[l(551,"cL@*")+l(727,"YeH6")][l(261,"cL@*")](h))&&i[l(839,"XTb1")](m);for(let m of p){let h=await r[l(815,"^X[^")](a,m[l(889,"fEqp")],m[l(264,"m^Ne")]);for(let A of h)f[l(486,"RuKh")](A)}return f};return await r[e(906,"jn$4")](a,n[e(764,"Cp@N")],n[e(746,"cL@*")]),r[e(626,"L#hp")](i[e(825,"cL@*")],7578+-1*-4461+-12039)&&s[e(426,"XTb1")](o=>{let c=e,u=r[c(688,"Jcg(")](ml,o,i);u[c(749,"kqpL")]&&(o[c(555,"]s]p")]=u[c(548,"jn$4")][c(893,"5pf4")])}),s}var Ph={};async function rLe(t,e){let r=qt,n={ZefMS:function(i){return i()},psfkO:function(i,a){return i(a)},lfGPt:function(i,a,o,c){return i(a,o,c)},xjHdj:r(819,"gmGB")+r(653,"fEqp")};if(await n[r(280,"ROzP")](tG),await n[r(400,"[#^Z")](Zke),await n[r(398,"&4Vi")](WXt),!Al||!sn[r(282,"DMN!")]?.[r(710,"Yq1i")+r(503,"e7vJ")])return null;if(Ph[e])return Ph[e];await n[r(542,"cL@*")](MXt);for(let i of Object[r(933,"m^Ne")](Ph))delete Ph[i];if(await n[r(601,"JvFe")](tLe,{shareId:t}),!m0[t])return null;let s=await n[r(887,"[BPj")](Ak,n[r(391,"DMN!")],{file_id:e,share_id:t,auto_rename:!0,to_parent_file_id:Al,to_drive_id:sn[r(250,"kqpL")][r(538,"Cp@N")+r(509,"DMN!")]},{"X-Share-Token":m0[t][r(692,"ROzP")+"n"]});return s[r(655,"MsPj")]?(Ph[e]=s[r(701,"Cp@N")],s[r(434,"5pf4")]):null}async function nG(t,e,r=!0){let n=qt,s={oycTa:function(u,l){return u===l},pTSoB:n(373,"ScM#"),IxFZY:function(u,l){return u(l)},uwhIH:function(u,l,d){return u(l,d)},HkXsd:n(377,"VP4@")+n(683,"f3$*")+n(340,"W3A@")+"fo",xPeHg:n(459,"Htyc")+n(388,"uRD$"),sEWec:n(742,"ROzP"),Rperx:function(u,l){return u&&l},XYWvk:function(u,l,d,f){return u(l,d,f)}};if(s[n(837,"[BPj")](t,s[n(635,"m^Ne")]))return await s[n(801,"!8Ku")](FXt,e);let i=await s[n(267,"R&$u")](rLe,t,e);if(!i||!sn[n(680,"JEeJ")]?.[n(777,"f3$*")+n(676,"R&$u")])return null;let a=await s[n(430,"fEqp")](gc,s[n(338,"gmGB")],{file_id:i,drive_id:sn[n(564,"Y(FS")][n(344,"JvFe")+n(676,"R&$u")],category:s[n(393,"Cp@N")],url_expire_sec:s[n(362,"cHrf")]}),o=a?.[n(276,"RuKh")+n(348,"cL@*")+n(539,"uRD$")],c=o?.[n(741,"RiSA")+n(415,"vgae")]??o?.[n(440,"YeH6")+n(589,"rwt1")+n(762,"2Ftf")]??null;return s[n(856,"]s]p")](!c,r)?(delete Ph[e],s[n(329,"Cp@N")](nG,t,e,!1)):c}async function nLe(t,e,r=!0){let n=qt,s={jnRwM:function(o,c){return o===c},fsMYK:n(511,"ROzP"),Jaotq:function(o,c){return o(c)},yNAMk:function(o,c,u){return o(c,u)},yIAeN:n(471,"&4Vi")+n(873,"5pf4")+n(496,"DMN!"),LXgcU:function(o,c,u,l){return o(c,u,l)}};if(s[n(246,"ScM#")](t,s[n(939,"kqpL")]))return await s[n(950,"XTb1")]($Xt,e);let i=await s[n(720,"ROzP")](rLe,t,e);if(!i||!sn[n(786,"]s]p")]?.[n(554,"Htyc")+n(892,"VP4@")])return null;let a=await s[n(759,"KiBW")](gc,s[n(632,"cHrf")],{file_id:i,drive_id:sn[n(357,"Htyc")][n(639,"YeH6")+n(469,"kqpL")]});return a[n(235,"DMN!")]?a:r?(delete Ph[e],s[n(817,"jn$4")](nLe,t,e,!1)):null}async function sLe(t){let e=qt,r={qAdQW:function(i,a){return i(a)},ZjkTG:function(i,a,o){return i(a,o)},ErPne:function(i,a){return i(a)},wmedU:e(787,"4AqP")};if(!r[e(882,"RuKh")](fk,t))return null;let n=r[e(882,"RuKh")](Yke,t);if(!n)return null;let s=await r[e(269,"m^Ne")](UXt,n);return s=s[e(407,"&4Vi")](i=>{let a=e;return{vod_id:[i[a(218,"uRD$")],i[a(566,"ROzP")],i[a(767,"4AqP")]?i[a(925,"uRD$")][a(598,"$Cx&")]:""][a(528,"R&$u")]("*"),vod_name:i[a(922,"]s]p")],vod_size:i[a(229,"cHrf")]}}),r[e(738,"$Cx&")](Os,await r[e(565,"cHrf")](Vke,r[e(754,"uRD$")]),s)}var Oh={},Fx={};async function yk(t,e){let r=qt,n={KRrZC:function(m,h){return m(h)},gNEjH:function(m,h){return m!==h},GFCYA:r(224,"uRD$"),ITyPk:function(m,h){return m===h},ISCYt:r(534,"kqpL"),ztBOu:function(m,h,A){return m(h,A)},ndSgS:r(696,"!8Ku"),UBqqg:r(890,"R&$u"),DREkE:r(326,"]s]p")+r(748,"R&$u"),CnygU:function(m,h,A){return m(h,A)},RpNAj:r(457,"[BPj")+r(521,"KiBW"),XTFGH:r(540,"kqpL"),WLPBo:function(m,h){return m===h},nRnCb:r(624,"[#^Z"),UewEm:function(m){return m()},BXXrf:function(m,h,A,g,b,y,x){return m(h,A,g,b,y,x)},HjqoX:function(m,h){return m*h}};await n[r(236,"RuKh")](Dv,t);let s=t[r(607,"%REC")][r(365,"A*C4")],i=t[r(661,"e7vJ")][r(583,"^geQ")],a=t[r(310,"[BPj")][r(268,"[#^Z")],o=t[r(806,")laV")][r(254,"e7vJ")];if(n[r(485,"m^Ne")](s,n[r(897,"$Cx&")]))return;let c=t[r(661,"e7vJ")][r(431,"4AqP")],u=t[r(898,"kqpL")][r(658,"L#hp")];if(n[r(705,"4AqP")](i,n[r(868,"RuKh")])){if(Oh[o]){let A=Oh[o][r(447,"W3A@")](g=>g[r(725,"m^Ne")+"d"][r(497,"JvFe")+"e"]()===c);A?.[r(390,"ScM#")]&&n[r(844,"JvFe")](Qke,A[r(610,"Y(FS")])&&delete Oh[o]}!Oh[o]&&(Oh[o]=await n[r(745,"ScM#")](nG,a,o));let m=Oh[o]?.[r(643,"&4Vi")](A=>A[r(947,"cL@*")+"d"][r(751,"!8Ku")+"e"]()===c);if(!m?.[r(752,"m^Ne")])return;if(!m[r(864,"KiBW")]){let A=await he[r(239,"YeH6")](m[r(438,"%REC")],{headers:{"User-Agent":d0}});m[r(552,"jn$4")]=jke[r(543,"5pf4")](A[r(858,"R&$u")]);for(let g of m[r(455,"A*C4")][r(245,"2Ftf")])!g[r(498,"$Cx&")][r(647,"UdfQ")](n[r(740,"f3$*")])&&(g[r(227,"vgae")]=new URL(g[r(272,"5pf4")],m[r(446,"[BPj")])[r(461,"2Ftf")]()),g[r(830,"rwt1")]=g[r(240,"%REC")],g[r(498,"$Cx&")]=g[r(585,"%REC")+r(776,"Cp@N")]+r(584,"UdfQ")}if(u[r(946,"fEqp")](n[r(244,"&[cA")])){let A=n[r(288,"VP4@")](parseInt,u[r(622,"T!QQ")](n[r(256,"^geQ")],""),10);e[r(911,"T!QQ")](m[r(380,"&4Vi")][r(245,"2Ftf")][A][r(814,"Y(FS")]);return}let h=jke[r(466,"XTb1")](m[r(800,"^X[^")]);return e[r(625,"!8Ku")](9337*-1+3*-626+11415)[r(907,"%REC")]({"content-type":n[r(524,"m^Ne")],"content-length":Buffer[r(842,"rwt1")](h)[r(352,"Yq1i")]()}),h}Fx[o]?.[r(752,"m^Ne")]&&n[r(364,"L#hp")](Qke,Fx[o][r(516,"RuKh")])&&delete Fx[o],!Fx[o]&&(Fx[o]=await n[r(797,"*8Ja")](nLe,a,o));let l=Fx[o]?.[r(867,"rwt1")];if(!l){e[r(713,"T!QQ")](294*19+3768+-1*8854),e[r(477,"kqpL")](n[r(924,"R&$u")]);return}if(n[r(476,"^geQ")](c,n[r(798,"m^Ne")])||n[r(312,"MsPj")](c,n[r(382,"Yq1i")])){e[r(527,"*8Ja")](l);return}let d=n[r(323,"vgae")](wXt),f=d[r(769,"YeH6")]||-1949+-55*-61+-1278,p=d[r(347,"^geQ")]||1*4162+-8940+4798;return await n[r(836,"m^Ne")](Wx,t,e,l,o,gk,{chunkSize:n[r(238,"5pf4")](662+-2*-181,f),poolSize:p,timeout:n[r(433,"UdfQ")](420*1+-2081*-2+6*-597,2521+-1487*-1+-3998)})}async function xk(t,e){let r=qt,n={uPSPm:function(f,p){return f(p)},CRIsB:function(f,p){return f(p)},gOPqg:r(666,"5pf4"),WXrgm:function(f,p){return f+p},YwoCg:r(918,"uRD$"),LMSwm:function(f,p,m){return f(p,m)}};await n[r(665,"XTb1")](Dv,t);let s=t[r(652,"UdfQ")][r(419,"MsPj")],i=t[r(450,"f3$*")].id[r(642,"fEqp")]("*"),a=await n[r(265,"&4Vi")](Vke,n[r(888,"JvFe")]);if(!s[r(315,"A*C4")](a))return;let o=n[r(638,"&[cA")](n[r(919,"L#hp")](n[r(840,"T!QQ")](RXt,t),t[r(737,"A*C4")][r(691,"ScM#")]),n[r(796,"*8Ja")]),c={parse:0,url:[]};i[2]&&(c[r(755,"&4Vi")]={subt:o+r(463,"YeH6")+i[9837+9*-1093]+"/"+i[-113*1+4334+1*-4219]+r(756,"JEeJ")});let u=(await n[r(821,"f3$*")](nG,i[-370*3+1*9195+49*-165],i[5420+1*-5419]))?.[r(533,"R&$u")](f=>f?.[r(354,"JEeJ")])||[];Oh[i[35*-179+-1*-9349+3083*-1]]=u,u[r(724,"XTb1")]((f,p)=>(p[r(506,"$Cx&")+r(616,"rwt1")]||0)-(f[r(833,"JEeJ")+r(766,"!8Ku")]||5290+3*-2131+-1103*-1));let l=c[r(867,"rwt1")],d={QHD:"\u8F6C\u7801",FHD:"\u8D85\u6E05",HD:"\u9AD8\u6E05",SD:"\u6807\u6E05",LD:"\u666E\u753B"};return u[r(515,"gmGB")](f=>{let p=r;l[p(938,"T!QQ")](d[f[p(255,"&[cA")+"d"]]||f[p(704,"jn$4")+"d"]),l[p(486,"RuKh")](o+p(758,"T!QQ")+f[p(937,"^X[^")+"d"][p(586,"T!QQ")+"e"]()+"/"+i[0]+"/"+i[-8363+2*4001+362]+p(337,"vgae"))}),l[r(662,"jn$4")]("\u4EE3\u7406"),l[r(449,"[BPj")](o+r(421,"e7vJ")+i[3*-2030+-3985*1+10075*1]+"/"+i[1*-2333+-43*167+-11*-865]+r(304,"XTb1")),l[r(420,"W3A@")]("\u539F\u753B"),l[r(504,")laV")](o+(r(941,"Y(FS")+r(827,"rwt1"))+i[-5*-731+-41*-199+-11814]+"/"+i[-1*3181+-2655+-449*-13]+r(322,"m^Ne")),c}var iG=Re(Jn(),1);var je=lu;(function(t,e){let r=lu,n=t();for(;;)try{if(parseInt(r(589,"3GMJ"))/1*(-parseInt(r(729,"y2dz"))/2)+parseInt(r(896,"ZJM)"))/3*(parseInt(r(1014,"#*yI"))/4)+parseInt(r(712,"tU0H"))/5*(parseInt(r(852,"(kco"))/6)+-parseInt(r(498,"iKSc"))/7*(parseInt(r(634,"[(4C"))/8)+parseInt(r(331,"!SOK"))/9*(-parseInt(r(869,"iKSc"))/10)+parseInt(r(567,"[Gf!"))/11*(-parseInt(r(419,"WkTr"))/12)+parseInt(r(624,"TYG3"))/13===e)break;n.push(n.shift())}catch{n.push(n.shift())}})(_k,1*638402+702636+-950797);var dLe=async t=>{let e=lu;return globalThis[e(1006,"i)7i")]?await globalThis[e(408,"240S")](t):t},qXt=[je(274,"Noae"),je(597,"Z*@("),je(671,"ZJM)"),je(640,"12Mj"),je(298,"WkTr"),je(267,"nwCk"),je(388,"Wk9#"),je(1043,"OZzu"),je(471,"!SOK"),je(536,"Zbg9"),je(365,"3$u9"),je(1081,"&HYM"),je(440,"Fhs#"),je(1072,"j9GU"),je(1026,"Z*@("),je(486,"3GMJ")],jXt=t=>{let e=je,r={KQhxu:function(s,i){return s(i)}};if(!t)return!1;let n=r[e(522,"nwCk")](String,t)[e(775,"g[c@")+"e"]();return qXt[e(806,"#*yI")](s=>n[e(354,"YypP")](s))};function fLe(t){let e=je,r={JszKk:function(n,s){return n(s)},YClvg:function(n,s){return n||s}};return r[e(363,"$&ze")](String,r[e(426,"SAtO")](t,""))[e(487,"j0Uf")](",")[0][e(476,"240S")]()}function aLe(t){let e=je;return{jeNQx:function(n,s){return n(s)}}[e(395,"[(4C")](fLe,t)[e(1052,"8pjQ")](/^\w+:\/\//,"")[e(376,"ShO2")]("/")[-4*1563+-628*11+13160][e(483,"#*yI")]()}function HXt(t){let e=je,r={UGCKM:function(u,l){return u(l)},PGFGP:e(344,"j0Uf")+e(562,"OZzu"),qNHXF:function(u,l){return u(l)},eTDUv:e(1078,"240S")+e(605,"j9GU"),FnLdl:e(882,"YypP"),SkXOO:e(644,"f*1G"),eIovY:e(1082,"!SOK"),QrWzO:function(u,l){return u(l)}},n=r[e(459,"WkTr")](String,t?.[e(564,"8pjQ")]?.[e(646,"9pW6")]?.()?.[e(464,"Zbg9")]||"")[e(423,"!SOK")](),s=r[e(871,"&HYM")](aLe,t?.[e(337,"yDy^")]?.[r[e(753,"n7Q^")]]),i=s||r[e(861,"ljNd")](aLe,t?.[e(717,"X3DF")]?.[e(364,"Gnm8")]);if(!i)return n;let a=r[e(809,"X3DF")](fLe,t?.[e(874,"9pW6")]?.[r[e(1016,"l#VZ")]]),o=n[e(835,"j9GU")](r[e(1029,"TYG3")])?r[e(910,"ljNd")]:r[e(549,"X3DF")];return(a||r[e(422,"iKSc")](String,t?.[e(436,"iKSc")]||"")[e(1020,"&HYM")]()||o)+e(779,"ShO2")+i}function pLe(t){let e=je,r=/https:\/\/pan\.quark\.cn\/s\/([^\\|#/]+)/,n=r[e(849,"ZJM)")](t);return n?{shareId:n[-2085+17*-199+-3*-1823],folderId:"0"}:null}var Za=je(843,"OZzu")+je(925,"[(4C"),qx={"User-Agent":je(866,"&HYM")+je(741,"n7Q^")+je(356,"12Mj")+je(1023,"g[c@")+je(506,"SAtO")+je(743,"ljNd")+je(988,"d&OD")+je(1011,"y2dz")+je(561,"9pW6")+je(533,"X3DF")+je(424,"Z*@(")+je(516,"!SOK")+je(739,"yDy^")+je(454,"nwCk")+je(980,"[(4C")+je(844,"Wk9#")+je(1035,"Zbg9")+je(1036,"!SOK")+je(862,"!SOK")+"ch",Referer:je(1062,"OZzu")+je(292,"LY1j")},aG=null,bk=null,oLe=je(1068,"$n0Q")+je(375,"ljNd")+je(548,"[(4C")+je(969,"!SOK"),Ac="",Yd={},cLe=je(654,"nwCk"),kh=null;async function kv(t){let e=je;aG=t[e(951,"TYG3")].db;let r=t[e(573,"Z*@(")][e(362,"Gnm8")][e(325,"YypP")];Ac=r[e(601,"[Gf!")],bk=iG.default[e(786,"YypP")][e(632,"g[c@")][e(336,"Z*@(")](iG.default[e(939,"g[c@")](r[e(755,"l#VZ")]))[e(707,"j0Uf")]();let n=await aG[e(758,"Fhs#")+e(898,"TYG3")](e(556,"Fhs#"),{});n[bk]&&(Ac=n[bk])}function _k(){let t=["WRBdJmo1nSoCjq","W7HYBIeBqHOoW7tcMW","rCk1hGNcV8oX","WRXxW555WR4","yXONWPe","W6pdJComCspcIHFdI30","W48IW7JdUmoMdf0","A2NdSqK","WRldHtO/p8or","WO3dNmkYlKi","cMLOACoD","WPasnCoGW5tdHSku","zK4NmtRcOIbSW4JdTWFcUZyA","C8kSWR3dImorW6JcJq","i0TCWQhcJCo1","cNHUkq","rZVcVmkpWOf/WRZcIG","W6fmFKldNW","WOLUWQ0","WOTPWOr6FCknlCkjm8kf","A8k5cG","WQb1WQDNFSovoCkJpSkt","qHVdMMeIjXunEG","ACoRWRjLpq","cgZdPCorqa","r8oqbHq","WOasmSoQ","mXdcKCo7mG","qxPSBW","qSk/W7NdPq","WR91W4fXWOK","WOq3W77dUa","WRaVu8ksWQK","B8k/W63cVem","WOuxiSo5W67dNmkd","sCk/W6NcUW","W6RcKdtcTKVdMSoWExH4","wCoppexdTq","hSofxbmOWQ3cKCo2vmkx","tJNcTq","WPnrWO9LqG","i1DCWQFcNCowhCkt","AZhcPCk+DMtdJCo8Ad8","ASkTWQJdP8kZ","W6JcKmkQymkAFSoFW5lcGSkYW7hdPW","fsTkqeK","WR7dImoVma","WQ98WRxdLSovW7hcUMJcPmkl","W4DICuW","WRLJW4FdV8kH","ySosWQ95aa","WORdNmk+oa","WPeqrCkyWRW","WPz9W4fQWRq","rCoCaKe","DMboWRRcISoYv8krWQldRW","zhNdIIldVW","W4tdMmkhDsa","BgNdSqVdSq","FKHyWRFcLq","WOnGWQ3dLmovWOlcVW","ma3cMCkeWQ4","cxj2y8kq","F8k5WR3dTa","W6ddH8oxyaZcGa","WO7dQSo6khxcNSo6oNW","ehfoWOHFkW","aehcI3ididO","WQRdTSk0b2y","W44Ur8oB","WQLvW6/dLmkpzeNdT8k8W4K","W5ucyIC9","WQjKW4ZdGCkV","WPbew8oSWONcNCoAjbpcPG","WOK4W67dVmoWmbq","ow7dVCoACxfZ","WR/cIYn9lW","WO7cOdbUpa","WPVdS8o6jf4","W67dPmk9wWa","WOfstSolWQa","f8kHWQldS8kq","DN3cJK9I","W4ldLmohtrG","WRTdW7VdT8ko","W5ZcMSoeWOjb","hSoExXS","WQtcJcdcMSo7W7SHDa","obHWy37dVG","tCoYaWJcU8oXeCkIy8ou","rJasWP5G","WPu4W6xdNCos","WRldNYuWo8opxGFcILO","W4pdUSk3wqW","WORdH8k8nLpcGG","WQldOZFdGCoQWQNdVSoS","gqVdI8ofhq","vmoRWPrM","W7tdICosBW3cNaldILeC","WPhdVCo+i8oj","e8knrrxcP8oOz8k9WO4XWONcO8k5","WONdSCoKlfpcKSoUmx/cQW","WOTWWPZdGXW","WR5/W5VdHCk7","WRLNxColWPG","emojurjIWRVcJq","W57cGSkp","sMVdScddSW","WRhcQaz/afvP","WPWNu8oxh8k2WQ0GWPFcSW","nLzz","nqhcTmo8pCk+","vMddRtNdMa","WQO+q8klWQJdIZL9","tdhcPCkj","W7mormoVna","WOv0dWFcVmoNnetdRSkp","W51qWPJdKG8JWPK","WO3dNmk4ofG","WOabcmo4W7O","cXddHSooqCkkdCkBlMS","W4iSnCoIW7hdISon","C8o0mgy","WQOZvdiJzHbCsZy","W5VdH8kpwGi","WRfQWOPVBmkFp8kpnmkf","WQNdGCo6i8onySokW7xcH8kO","i8oHW7/cU8oPsmonWPpdLCkD","W4vvsCoGWQtcO8opeGpdTa","W6RcICkZbSobi8oDW7lcKCkP","ASk3WPpdQ8oN","kIhcVmopW58PW6xcMvba","wLxcS0i","W4CVqH0b","k2lcOW","WPTNW7/dU8kH","W7GvqJi","BmkWWPJdPCoeW7VcM8kjW50","umk0eW/cV8kScCoKyCoi","W5PksvVdIq","WR8LW6pdO8oTqKddLCo1ua","WORdRSoDfSo4","WRVcQthcK0G","WObkqSoIWR/cMq","W7y4sConW6VcGtLLWP9b","f8onvZTr","g3fuWQbjkCkKWRivDG","WRW0umkm","W6LQWOGUESojomoDo8kb","DmoWWPBdIComW6C","WRNdRG7dQSo7WQhdPmoUnSob","ACkZW6FdTSk2uComWPZdS8kD","WQmDrZyLBLC","WQNdNCo6jCoDpG","E1n8Bwq","f0JcNMe","W50YqW","nMhcPeiu","W7SHWQv8F1C","W73dSSkTxqvmWR1FfZy","W7a0AdDBwG","W5nMWRRcQCk4tW","WRCUq8kgWQJdHYXSW59s","v8kZpHlcRCoMcmopyCoj","WO52W4voWOG","WOOCnmoMW6RdGW","nCkQWPxdSSkV","WRxcUmoX","ymobWOfEnG","WQ4Yq8khWRxdStzGWOna","W70jWOaEW483WQ7dN8oToMxcG8oA","WQvcWPpdLGm","W5pcKSodWPu","vYSEWR9u","F8kXWP8","WQNdLCoccwK","W4TDjmoIW6u","DxFcT2Lw","FSk+WOJdMW","WONdGCk2o1/cLa","W7/dTSkSuWrk","WOaCmCoLW6FdGmkrWPCVoW","xeVcMSoaoSkjdCkpaG","WOjwxSoGWRhcKG","WPz6WQpdIW","WRxcPXi","jmkGWQhdMCkTW41+","DHO5","WR1kW5bAWPe","F2ddQJNdNq","i2ddRa/dStlcRmkVpSoa","W7tcPGGAW5/dHa","arddMCoF","W5bQF0G","W6pdICoiza","iN/cUhmW","W7O9FWaT","lCoRCZ1k","h8kAWRldV8kC","W7SlWRb9","W55KyKC","WPbntmo7WRpcO8opeGpcLG","WPxdLSk9oKlcHa","W6bazKFdPW","ywZdQaVdGW","ictcOSkqWQS","hfPyWOFcNW","ptTFt2K","W7WZvd4ZDG","WQ7dTSkrdq","WR7cRW5/v2LGW4VcM1y","WQjZWO9TzSoVj8kjlmku","xv/dTCoBd8kjb8orCse","EGLQAwy","W6fmsgVdNa","W4DUFWtdR8orW697W5OU","W78FWQ8OkGldU8kGWPOT","W54YrCkddmkAWQG","pJfmDLm","Bmk1WQ3dH8kq","grBdUCoFhmkhdmkl","dIVcGCkbWO0","CLJcGhze","WQ/dHdyVlSoqjqlcKuu","W5VcIdqnW5u","WOG6sCkr","EqaCWOzOtCkx","lMFdQmoj","WQD/WOvS","qmoesq","jM/dSSod","WPaKWRFdRmoRdWdcISoJea","W6ZdV1mRscOVW6RcJG8","FgddPbRdVfFcUW","W6ddIqpcJCo1","vmopgG","uCoibuG","nuDyWRy","ACkRWPpdKCogW6C","WQn7WPPBCq","W7PWW7nVWQbBW5S","WORdKSkLogNcJCkU","W6D6Ef7dOq","W7FdG8or","yuH6t3ZdK1eF","WOflW7ZdHCkO","W6OmDSklWPZdVb4","c0nfWRL6","bYpcSmoXka","eaBcGmk4WQW","WQ9oW6xdRmkfp0xdT8k6W7C","WOqYW7JdSmo+gL3cHSkTfW","qSkVartcVCoT","WQJdJmo6nCo9bmoxW6NdLCoO","WQxdRmoSjeBcNmo6EcZdOa","W6X+CtrBwLTe","c8oyuqjYWRO","W73dVxtcVhJdMmkIkXW","mcPXFea","WR3dHmovbMC","cdTdWObfnCoUWRCixG","lK1oqSoS","WOWwj8oVW67dNCkd","WRJdJmoOjCoLlmonW77cJG","W5ZcSSkNEX/dGCoCaxlcVKxdTG","W6xcLenuW68","Dqm8WPn/a8kDWRhcN0q","W77dICo2ybFcLI7dGwOm","WQ7dHSoijCoAjmoxW7O","ogpdR8ohEe1JW6tcMSks","CSkRWOJdISoqWRpdM8ot","W616DcfRvvS","WRP1WPW","vCk1fHJcTCoCfSoLC8oo","eGFcHmkqWQC","WRvxWQrruW","hmoaBWjOWQlcM8oVbCkl","W6BdPmktuXPsWQXs","WRPkW6RdRmknouldP8k4","jXv/DM/dN3a","WOG/cmo5W4O","a3jPCG","fsFcO8kfWOq","xvFcQeDL","yGTnWRJcJSoLpmk6","ccLoWO5gjSoNWO4oqa","mrT/CwBdOG","WQHTymoyWPq","WRVdNSoOf8ob","WQZdKSkemva","W7GvWPT/uW","WQhcIHTGnG","WPBdQqmkcG","WQxdRrldKmohWQhdO8oujCob","CIjUzw3dSYK","6l+u6kge6yEi57Yg","hGZdImokhmkCa8kv","W4ZcKmozWPfRW7Hrr8kI","mIpcKmkVWQu","W6rXrYnA","WQVdNmo6i8od","WQjqW6jjWOXRW5hdVCoOmW","WOHava","s8k3W7hcRNnE","W6vEExJdTG","hg9wWPNcJq","WObWWQC","iLPnWRNcMCoLdW","W7JcOa0r","smkWW7NcQuffW6qV","f3HjWOHi","W7HYBIfRwKLmW6e","cwFcNgOC","artcMMm","WRn8esVdOW","W6ucvJiVsH4","WPP+eXtdTCoP","s8k3W7K","WPaJW7NdSq","W7hdKCowrWG","hf7cHa","uMDuWOm","WOexn8ohW4G","E8kSWP/dK8ok","W6FdI8obuYK","W6Odqbi2zHa","W63cMwz+W6G","BSkyrW","fxldS8oCDvq","WOuanCoIW6ZdGq","WPrNWRVdImoCWQtcUN/cMmos","xWFcTmk+sa","dt3cLSoggG","cctcRCopWO51WQxdMq8z","zxxdRSolo1X4W7RcM8ot","WO5mqW","WOq5W73dT8oKebpcGCkAaW","z3ZdSrJdQItdSmo1kSox","iGlcJSoVdq","jXHSCM/dPa","nKxcP2ml","W5VcJmoLWPL8","WOtdJ8oyp2S","W7BcPXfP","W6q1WO9qua","hhPSy8oWpCka","WO9qhbldKa","oKf+vCoi","ggpdPCogra","tSkMWRJdOmoW","c3PUzW","WRhcQL0","WRDPWQX9rG","WP13fbtdOG","WOOxW6FdG8oF","WRZdHmoRzq","WPSdCCkkWQa","WQHxW6FdHCkpza","gSodva8","ESkRWRRdVmk/ea","WQSVrSkwWQ/dNq","hHhdI8ozc8kNbG","WQLoWP7dKmoI","W6pdJ8oFza","W4VcL8o5WRfA","gGP2t2S","tSkcWQxdRmk3","WOzDwCo7WRC","qaFdNY5srdXdpIO","WQxdIYNdVmow","W4VcUvHZW48","WPXZWQJdIt0cWOO7W7hdHG","lWBcKSo5lmk1WRqdjW","yCkOWQZdKmkWW512W5eRW68","WOW/W7NdRq","vWC7WRf8","W5yZnJVdLComeqtcQ8k8","aX/cMCohlq","WQZdKsu8n8oq","WO5/lt3dUW","eNTsWOjkl8oTWR0orq","hCkLWO/dV8km","W5BcNCk+lqi","W5W+w8oBqSknWQ4LWPBdUG","wdtcSmkCFgtdNCoTEwS","WOrovmoTWPu","lffvDmo5","W47dS8oYjfJcR8o9pN3dSW","WPZdRmoAiL3cLCoPfhJcVq","zCoWm07dMa","WOFcNrFcVgG","n1Pj","hSofxbnyWQFcN8oSxW","hhn7DmokfCkx","DXyPWQr7qSkGWRhcHeq","mwvfWPZcTG","W4LyWRRdKJmuW6bGWRxcNG","WP8syCoAW6pdJW","W60xWQ9WnflcLSo8WOuZ","WOzSWQZcMW4uWR45W6RcHW","W65UCsW","qsBcTmofAM/dOCoLBd0","WQhcKSkvovFdGXNdNwygW4GP","W5aDzmoCbW","WOzXACoCWQa","W4hdP8obzGW","ixVdTXW","W5dcJmoE","WPZdSCo/ia","bsNcVmkb","ivzVWPJcGq","Dmk1heVdRSk4wSo0nSko","rCouba","hHZdMmoDc8kC","WRZcVqKjW7q","W4VcUwbIW5nZvSkD","W6ajxdaJBq","eHnsygy","mslcVSobcq","776Z6kYm5yU95B2H44c56yEm572l44cZ56Ii5RU0","beVcI0Sv","WRxdTSkTuq","WO/dPSoI","W79PA2SbbX8pWRFdGq","W6XMW6BdKSkejuJdVSoNW5G","WR4zjmotW64","B8k5WRRdVSkhf8kz","W7C4WQtdK8orWRBdNdO","WQ9tctxdMa","WQ7dHmoIoMa","WQyAW5W","W447W7RdVmoV","W79SCqjD","ouXWWRtcI8oTd8kt","cZhdU8oAaW","BMVdPG3dQM3cVSk4iSoa","gfldQ8oRxq","AwtdPa8","W77dTCkVrqy","W4ddLCkyvaS","Fw3dTqtdUh3cUG","bdZcR8oXkG","W4pdMqFcM8oR","WQhcSHfZkq","WPjBWP9KEq","W6GFWRD2CW","gmkuWQhdR8kY","WQZdNYqP","kxJdSGZdHNFcU8oN","jK/dLSoGEG","WOGIW77dQCo7rv3dISk1fW","WOj6dHJcVG","WRJdKsm8","u8kBWPVdRmoR","WOKLW4JdRmoUgrFcLW","tKhcTeS","lGhcR8oNk8oQW7XjmCoh","WRfXwSokWP8","qSoseKu","WRmraCogW7K","W7ldGJO","xmoMWR14fa","W7ldMstcLG","hN5JWQDH","W541W7NdMG0/WPyOW7y","gNTmWOTomCkiWRu","W7rbvdGLCHLXwZW","sSo8ng7dSG","lhXwWOrC","W4BdRSkKovK","WQrrW7RdGW","bJBcVCkE","W6uUWQxdL8oqWRFdNcf1aq","vvhcVLa","yHyUWOr1qSkDWRu","WR7dJmoInmo9","sSkrjJJcVG","W5W+uW","WPq6r8kk","iJjlsKG","wZhcP8knrMhdSq","cSkXW54NqSo7m8obW6HxW4S8a2G","vSk5obhcSa","hg97CSoAlW","e2X+WRVcMq","WODcWQNdNSoO","F8kxW5VcNa","WPVdV8osCq","iePoWR0","uhZdUmoyW5WQWQJdHaSzW6hdVG","WOZdOSoIla","W7RcQGuBW7pdKH0","W6BcTHqA","W6CLWRpdNmoiWPFdLdL8","5AAO5yETW5fUcSkwdEw1NoI/IEADTG","xSoRWOT3","W7JcLIhcGSoSW6OCfWhcQG","WRb7WP9P","WRL/WP9PBCorp8kb","jtpdJSoMkW","W6uzWOVdPmo2","WQOStSkmW7ZdMd80W4mA","WQujWQ5J","W6yIWQldIW","d2bsWOzfja","WPNdTSo3p0hdKmo/og7cOa","W60xWQ9HFLy","WODewCoO","xSkrWQhdP8kV","WP9YWRRdKW","WOpdUmoXgSoJ","rthcPCklCq","nZVdMSoPia","xmk/W5tcVM8","WQRdImoPmmofpG","W60xWQC","iWFcQCo4kG","W7JcN3uUWPz7","WQpdI8oBhgG","x0hcG2Cors0cExC","WQHeW7RdKG","W7BcRHaE","W6z5AwxdTq","W6PxW6VdH8kymNldU8kMW4W","WOjTWR/dICoCWR7cR3lcQmoj","W6v4sh7dLq","W4FdKCkrFd4","DmoPbhJdKq","W4zUB0ddVSoBW6nK","A8kQWP3dImoi","W50wWQTVsa","yaNcK8kKyW","s8o3WOvZamk9zSko","gbZdOmohba","WRVdVW7dOSoW","W7GuWR/cHCoFEMRdHmkJW5HTtW","WR/cUIBcO0xdI8kHlq","W7SFWRD9","EW1SA3ldRZSRW5JdGG","WOnPWRRdG8oVWQRcQetcS8oi","W6hcUXywW7JdHWFcVSod","C8k9WQJdSCk9dmko","yNddNZddQa","W7dcTHaAW6xcNv7dTq","W7hdLCowAaBcNq","sgxcINr6","WRS0q8kh","WQHmW7W","WQ7cOqldMSoQWRFdSCo5nCol","WOvxqSoK","WOPNbW","W5yYwCozgCkb","W7BcRmosWPH/","oZVcPmkgWOS","xSksWRNdL8ki","CSkRWOJdISoqWRpdM8otW4NdVW","W7ddVaddNmoQWP/dTSoInCkt","umoiWQ1qgG","F8kXWPJdICo0W6dcGmku","WPvLW6bCWRu","t1vojSkEBmoDWOmkia","vCoebKxcQSkWiCkDW5qG","W6uFFZyKBH1N","pfzoWQe","W63cLmozWPDK","FCoUWQrafW","kwNdSSooFv8","b8k9WR/dT8k+","iMNdR8oC","eedcTa","cJ7cJSklWOS","WPRdTCozfu4","WObxWQRdJ8ouWRG","WRldRrddLa","ACkQWP7dJSokW73cMmkz","W4ZcOLX9W4r0","qspcKmkAA2hdUW","WPdcImocWOigW7jqqmkLsW","DHOXWPe","cd7cRCooWPTVWRpdHqHy","W7ZdP8kYwX0","mIBdMSoEg8kDxW","WP1gW4TzWPC","qCk5aqNcL8oIdSoVAa","iCk8WQZdPSk7","WR4YsCkg","W7VdUmknrHTqWQDr","aXNcLSo0nq","W7P0DsPyw0LfW5VcGG","W5efWRFdGSog","dI1wB3G","WPnex8o6WRpcTCohdW","W7BcQW1S","W7u6v8klW7tdNY9OWOjF","WPrTWR/dHq","W5VdTmo2AIu","W7pcUNrdW6u","WQDYWOP6BmkFomkipSks","W5y4ua","guZcPfeE","WRZdGmo3jConpW","DqeVWPTO","hX3cS8oggq","xSkRW63cV2q","WQG0smkoWONdHYbS","WOvVeHJdPmoV","s8kSW7lcTW","zCoPpeldHG","vmkqWQ7dLmki","D8kVWRhdNSoK","nCocqGbf","WQPwW51nW5v9W7pdOmo4Aq","W6SjrGC2AZzIuJW","vCkQcddcUW","W5VcUur4W7rOva","W6NdUmkSDWHAWQe","W77dV3FdOHVcHSo4cYHdAJBcIG","W5JcNSoe","gSoCwGna","m8oVqdXr","W7GkWQjHBLC","yayUWPW","WQBdOXFdGq","WRPiW7iJlH3cLSkEWPqZW5e/WQe","lCo4qI5g","FCkzWRFdJCo2","WP3cVrpcRwm","WRHxW6FdNG","WRZdUKPnWQBcGc3cSmoibW","A8k9W47cJK4","W6BcUmoCWPDo","WPRcVSoJlLRcGSo0Cx/cVa","mbXQzq","W5ldKHNcV8oP","WRTlWRZdRmoM","WPj6cri","WQxdPaxdH8o9WONdTa","WOfSda","BHhcPCkeAq","x8k7W67cQNLcW6mI","WRZcVsVcO0pdNmkIja","W7hdNsq","WOZdRmoHi0BcN8o6m0BcUW","WRhdHCoYnSol","uIDhWP8","C8kXWPJdN8oBW4BcKG","dhTtWPS","nfzp","EWuBWP97","W6GOWQJdLCoxWQW","chVcHwrAdCoS","W67cG0fhW5S","WRH9BtzxururWQlcQa","WRRdOXm","W7u+t8ognq","WPiHj8o9W6C","W6SSWQhdV8o1","afNcHMKs","ttpcPCkADM7cRCk9nx8","W54GySogoa","WPPYdGC","WRBcNdzjdW","gaNdJSokgSklbSkZixm","W545WObEvG","W77cOxf6W5q","WQPmW6ldLSofoeldOmk8WPC","A8kTWRRdVq","ydyQWPbX","W6TPBG","nf5jWRq","WR/dNCkAk3m","zaBcLSkQva","WOmIW4pdT8oY","WQZcPXb9hw4","DbiPWPu","W6jiW77dLa","WRCrzSksWPK","WPTYeW","WQRdHSoOjq","WR3cVZfEkq","W7GEwZO","WPCAmSoU","afZcIgeugZ8o","BCkXWQ3dSmk3","WPnqxSoH","W5ZcT0D1W4K","WR/cOXy","W6tdLmomBa","nHtcVmoYzq","WRRdMtS4bConeWBcGa","WQOKWRxdNq","WQxdVaJdNmoS","f8ozEZHW","W7pcVbCwW7hdJG","WObkmctdUW","r8k9bHW","WRWwnSoCW4q","Asa2WRDn","lxnFy8o4","WRb1WPXMzCoFkSkeamkv","WRRdNdy6","WPv+fb8","W77dTNxdPH7cJmkRbZPpwdC","BmkEesJcJa","qZuqWRDC","kKFcUNam","WOLUWQxdNG","EW5SzYxdPhe+W4tdKq","WRH/WPnPBG","WRhcRbfzeW","WPBdM8oXWPfzW61aDCk0bG","WR3dSCo6Bu/cNCoRi2a","aNj0","WRvRWRNdRSoA","WRddVCkHe18","W557WQ/dHq","AmkSWQBdVSk9ea","wJxcOSkyDM7dSCoP","kSo1srfx","W7n6DIDC","WQfaWQhcGSoAEWpcOSoMWPW","WR5sW6FdKSkW","kCkVWRhdNq","WPCbW6/dJ8oz","umoyngBdOa","tmkTW67cS3fc","yWhcUCkqBa","W4FcRJmtW7a","W68iWOHzqG","ESolWPn0aa","W4/cO0b+","WOujW77dOmo4gKJcHmk2fq","ieRdJSoAtq","WP3dKSkNpa","WPPYzSoeWQu","W4v+ALVdPW","hd7cUCoDpa","dCoihrj1WQdcImoKfCoj","WRFdImoR","WOukk8oCW7W","WRb2nJi","aINcVmkdWOi","WRHkW6xdLSke","yXONWPeNhSoEW6ddJ34","WR5AW5vbWOHRW7/dPG","W4ZcO1fIW4HUvmkF","W5dcPYeAW4e","i1DCWQFcNCozdmkEWQ/dNa","W7ubWO7dUmoK","fYhcRmkfWOvfWR7dNHac","WPFdUmopbmoA","WRRdMtm","eeFdHtfjcJiyFhy","hCoLxWbE","WRjZWODTvSoEkSknoG","WR9xW5bAWP9hW7G","WQRcOcJcS0NdJq","uZPcWOzf","W7pdGg0","WOOOWQJdMdGeWRqGW6ddSq","u2vvWO5zka","uupcQq","sCklW7pcMhG","W7JdKSorCrldIuZcGx4i","W7RcMmofWQLd","W4qcm8oQW7NdHmoDWPaCiq","WOr7W6ldTSo7cW","W7JdGmk7zdG","Fg3dTX7dVgW","u8krreVcVmoLoq","W43dUGf9WO0UuW","W4u9WQJdRCogWO7cNL4","fx5tWQXa","xSkXWPNdJCk9","fXRdMCopdq","zHO5WPf1C8khWR7cJ04","WRfOCcCBueDwW6RdMa","W6hcQHyjW7pdKG","ySoGWQFdLCk7","nq1UAgpdTxuUW4tdJa","W6VdTSkQuW","W5zkCSk9WRlcMmk3WOaXkCoMW5K","fh1hWOC","WRXEW4njWPD9","W6GnrJy","W79RCIHDv0LvW63cMa","WQ/dV8olnSok","gedcPLbRb8ocWRiI","W5dcOSofWRLL","WRX/WPZdHCoJ","W5q7WRxdV8oU","W7b6z1NdUq","WRVcPYxcOW","WRz0W7lcHmkAW7pdUJbya8kAW7i","cSojqWzOWQFcJCoK","W60IWRFdQSoA","WOansCk0WOi","WPRdMsddGmo8","W7yRWRFdM8oN","W6e/WRtdNCor","WR1PWQzPESoBlSke","WRZcOG8j","WOrkW4VdNmkz","W67dNadcUCo3","fmojxHfZWQe","WPnNWQpdJCozWQ4","W5BcJCovW4XzW6ilu8kKbq","pfbA","oXX6oW","WRJcNsCVnCoxhq","wYxcS8kCChtdRSoP","WOn9WQ7dKSozWR/cT34","W7ZdG8olzHxcMW","mM7cI3i0","WQRcOXfQf3r8W5W","W7vju0ldLa"];return _k=function(){return t},_k()}async function eo(t,e,r,n,s){let i=je,a={awsFi:function(u,l){return u===l},xdPNz:function(u,l){return u(l)},UTrXA:i(621,"#OOi"),wfuDd:i(290,"#*yI")+i(1031,"SAtO")+i(907,"8pjQ"),jLRrY:function(u,l){return u||l},ijsCk:function(u,l){return u||l},fHQqm:i(442,"Fhs#"),qiRMy:function(u,l){return u==l},skXjH:i(1034,"&HYM"),FAtlp:i(827,"2wQi"),qbqwo:i(433,"Noae"),sGMIN:function(u,l){return u!=l},ctInz:function(u,l){return u>l},SEgZP:function(u,l,d,f,p,m){return u(l,d,f,p,m)},EglXb:function(u,l){return u-l}};r=a[i(528,"Gnm8")](r,{}),Object[i(795,"l#VZ")](r,qx),Object[i(941,"9pW6")](r,{Cookie:a[i(830,"TYG3")](Ac,"")}),n=a[i(568,"Fhs#")](n,a[i(1046,"#9Sq")]);let o=a[i(1022,"ZJM)")](n,a[i(902,"WkTr")])?await he[i(768,"Noae")](oLe+"/"+t,{headers:r})[i(697,"SAtO")](u=>{let l=i;return console[l(622,"12Mj")](u),a[l(931,"#*yI")](u?.[l(867,"Zbg9")]?.[l(765,"n7Q^")],-7084+-997*9+-16458*-1)&&a[l(991,"d&OD")](messageToDart,{action:a[l(420,"X3DF")],opt:{message:a[l(696,"!SOK")],duration:5}}),u[l(513,"nwCk")]||{status:500,data:{}}}):await he[i(474,"n7Q^")](oLe+"/"+t,e,{headers:r})[i(481,"JZKQ")](u=>{let l=i;return console[l(397,"i)7i")](u),a[l(1044,"Zbg9")](u?.[l(610,"Wk9#")]?.[l(626,"ZJM)")],-847+-47*55+3833)&&a[l(778,"$&ze")](messageToDart,{action:a[l(323,"tU0H")],opt:{message:a[l(754,"iKSc")],duration:5}}),u[l(435,"CJRF")]||{status:500,data:{}}}),c=a[i(505,"Wk9#")](s,3);if(o[i(287,"Z*@(")][a[i(1056,"e9rC")]]){let u=o[i(337,"yDy^")][a[i(434,"nwCk")]][i(920,"Z*@(")](a[i(1050,"ShO2")])[i(515,"Zbg9")](/__puus=([^;]+)/);u&&a[i(981,"j0Uf")](Ac[i(307,"nwCk")](/__puus=([^;]+)/)[1*9161+-5737*1+-3423],u[1])&&(Ac=Ac[i(919,"ZJM)")](/__puus=[^;]+/,i(377,"#9Sq")+u[4809+-1213*8+4896]),await aG[i(848,"tU0H")](i(764,"240S")+bk,Ac))}return a[i(900,"n7Q^")](o[i(868,"X3DF")],-15987+-288*-57)&&a[i(468,"OZzu")](c,-282+-3*-94)?(await a[i(599,"LY1j")](Gd,1e3),await a[i(680,"#OOi")](eo,t,e,r,n,a[i(926,"d&OD")](c,3561+1780*-2))):o[i(576,"ShO2")]||{}}async function uLe(){let t=je,e={uFILK:function(n,s,i,a,o){return n(s,i,a,o)},lIJHn:t(413,"SAtO"),sJpYs:function(n,s){return n>s},UHqpe:function(n,s,i){return n(s,i)}},r=await e[t(661,"!SOK")](eo,t(461,"!SOK")+Za+t(740,"l#VZ")+kh+(t(648,"iKSc")+t(539,"i)7i")+t(728,"d&OD")+t(357,"tU0H")+t(996,"nwCk")+t(390,"[Gf!")),{},{},e[t(1061,"Gnm8")]);if(r[t(658,"n7Q^")]&&r[t(293,"e9rC")][t(893,"12Mj")]&&e[t(642,"(kco")](r[t(491,"g[c@")][t(709,"lv(Z")][t(814,"#OOi")],1885*-5+-7823+88*196)){let n=await e[t(385,"3GMJ")](eo,t(995,"Noae")+"e?"+Za,{action_type:2,filelist:r[t(658,"n7Q^")][t(709,"lv(Z")][t(797,"Wk9#")](s=>s[t(630,"y2dz")]),exclude_fids:[]});console[t(603,"ZJM)")](n)}}async function QXt(t){let e=je,r={QAdgm:function(s){return s()},vRavl:function(s,i,a,o,c){return s(i,a,o,c)},rwiaZ:e(1003,"ZJM)"),qeBFp:function(s,i){return s===i},JYTWP:function(s){return s()},CXVhz:function(s,i,a){return s(i,a)}};if(kh){t&&await r[e(1017,"#*yI")](uLe);return}let n=await r[e(451,"9pW6")](eo,e(407,"(kco")+Za+(e(352,"j0Uf")+e(824,"#9Sq")+e(752,"OZzu")+e(631,"e9rC")+e(659,"[Gf!")+e(458,"#9Sq")+e(380,"yDy^")),{},{},r[e(517,"!SOK")]);if(n[e(465,"ZJM)")]&&n[e(638,"9pW6")][e(359,"ZJM)")]){for(let s of n[e(619,"8pjQ")][e(784,"SAtO")])if(r[e(520,"tU0H")](s[e(923,"Zbg9")],cLe)){kh=s[e(547,"j9GU")],await r[e(904,"j9GU")](uLe);break}}if(!kh){let s=await r[e(968,"f*1G")](eo,e(674,"12Mj")+Za,{pdir_fid:"0",file_name:cLe,dir_path:"",dir_init_lock:!1});console[e(394,"Noae")](s),s[e(518,"$&ze")]&&s[e(790,"YypP")][e(651,"nwCk")]&&(kh=s[e(726,"nwCk")][e(722,"ZJM)")])}}async function uG(t){let e=je,r={VhhzS:function(n,s,i){return n(s,i)}};if(!Yd[t[e(845,"8pjQ")]]){delete Yd[t[e(679,"[(4C")]];let n=await r[e(326,"WkTr")](eo,e(393,"e9rC")+e(737,"e9rC")+"n?"+Za,{pwd_id:t[e(687,"Gnm8")],passcode:t[e(653,"ZJM)")]||""});n[e(658,"n7Q^")]&&n[e(1064,"j9GU")][e(371,"JZKQ")]&&(Yd[t[e(1005,"12Mj")]]=n[e(580,"240S")])}}var GXt=[je(1018,"8pjQ"),je(955,"Wk9#"),je(511,"[Gf!"),je(933,"Fhs#"),je(825,"TYG3")];async function VXt(t){let e=je,r={rvOXd:function(c,u){return c||u},WBqHK:function(c,u){return c||u},dwUxU:function(c,u,l,d,f){return c(u,l,d,f)},FGtwJ:function(c,u){return c(u)},LVGBM:e(437,"LY1j"),unoDZ:function(c,u){return c===u},RoivM:function(c,u){return c===u},kligc:function(c,u){return c===u},TyDZS:e(1024,"tU0H"),QVRsV:function(c,u){return c===u},dvKLY:e(552,"iKSc"),OHgAP:function(c,u){return c===u},ytsiQ:e(374,"i)7i"),HYBLz:function(c,u){return c(u)},IGPrC:function(c,u){return c===u},vOUNB:e(479,"yDy^"),oagMV:function(c,u,l){return c(u,l)},XepWO:function(c,u){return c&&u},dWoxJ:function(c,u){return c===u},aMOYZ:e(620,"j9GU"),HJdME:function(c,u){return cu}},n=r[e(403,"tU0H")](typeof t,r[e(645,"CJRF")])?r[e(1051,"ShO2")](pLe,t):t;if(!n)return[];if(await r[e(629,"2wQi")](uG,n),!Yd[n[e(432,"j0Uf")]])return[];let s=[],i=[],a=(c,u)=>c?c+"/"+u:u,o=async function(c,u,l,d){let f=e,p=r[f(367,"&HYM")](d,""),m=100;l=r[f(747,"!SOK")](l,1);let h=await r[f(950,"$n0Q")](eo,f(738,"n7Q^")+f(682,"!SOK")+f(963,"Wk9#")+Za+f(1060,"8pjQ")+c+f(628,"ljNd")+r[f(1041,"&HYM")](encodeURIComponent,Yd[c][f(850,"YypP")])+f(999,"&HYM")+u+(f(448,"Zbg9")+f(484,"$n0Q"))+l+f(733,"9pW6")+m+(f(667,"ZJM)")+f(527,"OZzu")+f(985,"$&ze")+f(1033,"ShO2")),{},{},r[f(467,"nwCk")]);if(!h[f(529,"#OOi")])return[];let A=h[f(431,"d&OD")][f(804,"#9Sq")];if(!A)return[];let g=[];for(let b of A){let y=r[f(703,"OZzu")](b[f(443,"ZJM)")],!0)||r[f(360,"SAtO")](b[f(343,"!SOK")],1)||r[f(922,"Fhs#")](b[f(681,"Noae")],r[f(961,"YypP")])||r[f(807,"[(4C")](b[f(288,"Z*@(")],r[f(524,"WkTr")]),x=r[f(404,"yDy^")](b[f(502,"y2dz")],!0)||r[f(965,"d&OD")](b[f(291,"lv(Z")],-6234+-1*-2705+3530)||r[f(439,"n7Q^")](b[f(748,"240S")],r[f(1055,"Wk9#")]),v=r[f(327,"nwCk")](jXt,b[f(677,"&HYM")]),C=r[f(836,"Z*@(")](b[f(762,"j0Uf")+"ry"],r[f(275,"TYG3")])||v;if(y)g[f(417,"i)7i")]({fid:b[f(311,"WkTr")],path:r[f(452,"3GMJ")](a,p,b[f(485,"j9GU")])});else if(r[f(492,"9pW6")](x,C)){if(r[f(870,"TYG3")](typeof b[f(616,"i)7i")],r[f(887,"e9rC")])&&r[f(295,"#9Sq")](b[f(975,"#*yI")],r[f(318,"2wQi")](r[f(695,"#*yI")](12788+11764*-1,4025+-1684*-5+-141*81),-1330+-1335*-1)))continue;b[f(723,"$n0Q")]=Yd[n[f(672,"[Gf!")]][f(723,"$n0Q")],b[f(890,"!SOK")]=p,s[f(480,"l#VZ")](b)}else x&&GXt[f(663,"#OOi")](R=>String(b[f(550,"e9rC")]||"")[f(921,"CJRF")](R))&&i[f(305,"y2dz")](b)}if(r[f(1080,"Fhs#")](l,Math[f(497,"d&OD")](r[f(833,"ljNd")](h[f(294,"e9rC")][f(940,"Gnm8")],m)))){let b=await r[f(455,"Noae")](o,c,u,r[f(956,"WkTr")](l,1),p);for(let y of b)A[f(462,"yDy^")](y)}for(let b of g){let y=await r[f(953,"SAtO")](o,c,b[f(929,"CJRF")],1,b[f(333,"WkTr")]);for(let x of y)A[f(811,"WkTr")](x)}return A};return await r[e(714,"y2dz")](o,n[e(891,"TYG3")],n[e(1077,"Fhs#")],-98*-7+827*12+-1*10609,""),r[e(977,"TYG3")](i[e(347,"Noae")],772*-7+4793+611)&&s[e(937,"240S")](c=>{let u=e;var l=r[u(757,"X3DF")](ml,c,i);l[u(379,"g[c@")]&&(c[u(607,"[Gf!")]=l[u(875,"n7Q^")][u(469,"Wk9#")])}),s}async function lG(t){let e=je,r={oJApC:function(s,i,a){return s(i,a)}};if(!t)return null;let n=await r[e(472,"f*1G")](eo,e(650,"X3DF")+e(604,"TYG3")+Za,{fids:[t]});return Array[e(838,"i)7i")](n?.[e(470,"i)7i")])&&n[e(286,"&HYM")][-727*-13+-4701+4750*-1]?.[e(710,"#*yI")+"rl"]?n[e(726,"nwCk")][227*-3+6373*-1+7054]:null}function lu(t,e){let r=_k();return lu=function(n,s){n=n-267;let i=r[n];if(lu.qPCXux===void 0){var a=function(d){let f="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=",p="",m="";for(let h=0,A,g,b=0;g=d.charAt(b++);~g&&(A=h%4?A*64+g:g,h++%4)?p+=String.fromCharCode(255&A>>(-2*h&6)):0)g=f.indexOf(g);for(let h=0,A=p.length;h{let a=t;return console[a(397,"i)7i")](i),i[a(513,"nwCk")]||{status:500,data:{}}});return e[t(391,"#*yI")](s?.[t(279,"12Mj")],-2*629+25*-127+4633)&&e[t(1002,"iKSc")](s?.[t(647,"CJRF")]?.[t(972,"f*1G")],-7*-157+2116+-3015)&&e[t(649,"tU0H")](s?.[t(643,"OZzu")]?.[t(342,"f*1G")],0)&&s?.[t(428,"TYG3")]?.[t(529,"#OOi")]?.[t(982,"JZKQ")]||""}async function hLe(t,e,r,n){let s=je,i={PvsMM:function(l,d){return l||d},dUnBn:function(l,d){return l(d)},GtfEf:function(l){return l()},JEZmJ:function(l,d){return l||d},kABNb:s(575,"TYG3")+s(761,"YypP"),DjIHd:function(l,d){return l===d}};if(i[s(586,"3GMJ")](!t,!r)||!n||(!e&&(await i[s(558,"CJRF")](uG,{shareId:t}),e=Yd[t]?.[s(512,"yDy^")]||""),!e))return null;let a={fids:[r],fids_token:[n],pwd_id:t,stoken:e,speedup_session:""},o=await i[s(987,"i)7i")](KXt);o&&(a[s(894,"ljNd")]=o);let c=Object[s(521,"CJRF")]({Cookie:i[s(783,"y2dz")](Ac,""),"Content-Type":i[s(1079,"tU0H")]},qx),u=await he[s(1059,"j9GU")](s(949,"8pjQ")+s(602,"SAtO")+s(763,"yDy^")+s(774,"f*1G")+s(945,"ljNd")+s(746,"Gnm8")+Za,a,{headers:c})[s(1057,"WkTr")](l=>{let d=s;return console[d(595,"3GMJ")](l),l[d(270,"i)7i")]||{status:500,data:{}}});return i[s(429,"LY1j")](u?.[s(416,"WkTr")],9589*-1+1279*-4+14905)&&u?.[s(962,"12Mj")]?.[s(1074,"LY1j")]?.[-1*7603+-1*-5752+3*617]?.[s(438,"&HYM")+"rl"]?u[s(744,"3$u9")][s(316,"!SOK")][-7001+-794*4+10177]:null}async function gLe(t,e,r,n,s){let i=je,a={kqOJf:function(c,u){return c(u)},QiUwO:function(c,u){return c(u)},bpjuG:function(c,u,l){return c(u,l)},OixxX:i(842,"Gnm8"),ZKbJd:function(c,u,l,d,f){return c(u,l,d,f)},RYygP:i(855,"#*yI"),nABrE:function(c,u){return c>u},iMTEd:function(c,u){return c(u)}};if(await a[i(668,"8pjQ")](QXt,s),s){let c=Object[i(269,"3$u9")](g0);for(let u of c)delete g0[u]}if(!kh||!e&&(await a[i(635,"lv(Z")](uG,{shareId:t}),!Yd[t]))return null;let o=await a[i(414,"X3DF")](eo,i(750,"g[c@")+i(878,"i)7i")+"?"+Za,{fid_list:[r],fid_token_list:[n],to_pdir_fid:kh,pwd_id:t,stoken:e||Yd[t][i(401,"d&OD")],pdir_fid:"0",scene:a[i(450,"Noae")]});if(o[i(576,"ShO2")]&&o[i(647,"CJRF")][i(623,"9pW6")]){let c=0;for(;;){let u=await a[i(532,"$n0Q")](eo,i(1063,"d&OD")+Za+i(583,"3$u9")+o[i(675,"yDy^")][i(1038,"yDy^")]+(i(319,"!SOK")+i(554,"LY1j"))+c,{},{},a[i(514,"X3DF")]);if(u[i(428,"TYG3")]&&u[i(805,"2wQi")][i(853,"#OOi")]&&u[i(580,"240S")][i(883,"Zbg9")][i(335,"[Gf!")+i(368,"[Gf!")]&&a[i(684,"!SOK")](u[i(491,"g[c@")][i(276,"nwCk")][i(905,"j0Uf")+i(820,"240S")][i(600,"X3DF")],0))return u[i(666,"tU0H")][i(957,"12Mj")][i(685,"l#VZ")+i(770,"WkTr")][1*-5793+8328+-2535];if(c++,a[i(751,"2wQi")](c,5))break;await a[i(272,"g[c@")](Gd,1e3)}}return!1}async function ALe(t,e,r,n){let s=je,i={AGarR:function(o,c){return o===c},INrNi:s(932,"[(4C"),AljpA:function(o,c){return o(c)},vqSzx:function(o,c,u,l,d,f){return o(c,u,l,d,f)},FcSTX:function(o,c,u){return o(c,u)},ddZjf:s(704,"j9GU")+s(802,"8pjQ")+s(565,"tU0H"),IKbzf:s(967,"n7Q^")};if(i[s(609,"[(4C")](t,i[s(510,"#OOi")]))return await i[s(817,"ljNd")](zXt,r);if(!g0[r]){let o=await i[s(846,"LY1j")](gLe,t,e,r,n,!0);if(!o)return null;g0[r]=o}let a=await i[s(425,"CJRF")](eo,s(613,"Zbg9")+s(718,"SAtO")+Za,{fid:g0[r],resolutions:i[s(1073,"lv(Z")],supports:i[s(664,"f*1G")]});return a[s(767,"[(4C")]&&a[s(1021,"ljNd")][s(885,"g[c@")]?a[s(666,"tU0H")][s(823,"e9rC")]:null}async function dG(t,e,r,n,s){let i=je,a={zcsdc:function(c,u){return c===u},tlIPs:i(1019,"SAtO"),csGuO:function(c,u){return c(u)},EiPXe:function(c,u,l,d,f,p){return c(u,l,d,f,p)},ReynP:function(c,u,l){return c(u,l)}};if(a[i(570,"#9Sq")](t,a[i(976,"SAtO")]))return await a[i(964,"e9rC")](lG,r);if(!g0[r]){let c=await a[i(569,"yDy^")](gLe,t,e,r,n,s);if(!c)return null;g0[r]=c}let o=await a[i(960,"Gnm8")](eo,i(732,"#9Sq")+i(641,"CJRF")+Za,{fids:[g0[r]]});return o[i(619,"8pjQ")]?o[i(317,"Z*@(")][-3530+-49*19+4461]:null}async function YXt(t,e,r,n,s){let i=je,a={AVkfp:function(c,u){return c===u},TPQhk:i(918,"y2dz"),pEwdk:function(c,u){return c(u)},LwPcS:function(c,u,l,d,f){return c(u,l,d,f)},drNsq:function(c,u,l,d,f,p){return c(u,l,d,f,p)}};if(a[i(860,"$n0Q")](t,a[i(736,"ShO2")]))return await a[i(463,"i)7i")](lG,r);let o=await a[i(585,"[Gf!")](hLe,t,e,r,n);return o?.[i(438,"&HYM")+"rl"]?o:await a[i(731,"9pW6")](dG,t,e,r,n,s)}async function yLe(t){let e=je,r={ZPHkr:function(n,s){return n(s)},IWbyV:e(559,"#*yI")+e(701,"g[c@"),BhEeW:function(n,s){return n(s)},ZogOE:function(n,s,i){return n(s,i)},edqLC:e(912,"n7Q^")};if(r[e(662,"lv(Z")](pk,r[e(348,"SAtO")])){let n=r[e(386,"TYG3")](pLe,t);if(n){let s=await r[e(494,"12Mj")](VXt,n);return s=s[e(534,"n7Q^")](i=>{let a=e;return{vod_id:[n[a(973,"#9Sq")],i[a(706,"#OOi")],i[a(273,"Noae")],i[a(543,"ZJM)")+a(730,"#OOi")],i[a(370,"YypP")]?i[a(541,"JZKQ")][a(799,"i)7i")]:"",i[a(332,"iKSc")]?i[a(606,"nwCk")][a(813,"l#VZ")+a(538,"!SOK")]:""][a(812,"2wQi")]("*"),vod_name:i[a(1004,"X3DF")],vod_size:i[a(660,"2wQi")],vod_group:i[a(749,"YypP")]}}),r[e(693,"$&ze")](Os,await r[e(542,"Z*@(")](dLe,r[e(934,"9pW6")]),s)}else return{}}}var Ek={},Lh={},lLe={},sG=(-8125+-2*2281+13711)*(6205*-1+-35*-37+5422),fG=(1*-2969+-733*-1+-652*-5)*(6088+2*-2916);function oG(){let t=je;return(globalThis[t(837,"f*1G")]||[])[t(381,"f*1G")](r=>r[t(914,"l#VZ")]===t(800,"(kco"))||{}}function JXt(t){let e=je,r={jAmZW:function(n,s){return n=s},uVPgb:function(n,s){return n===s},KCpJV:function(n,s){return n===s},wWeVQ:function(n,s){return n===s},TKmnk:function(n,s){return n===s},YQjKK:function(n,s){return n===s},EcuHj:e(935,"YypP"),PkJCY:function(n,s){return n===s},VCOjz:e(313,"JZKQ"),waqSx:function(n,s){return n===s},KOYGI:e(1009,"f*1G"),UGCBP:e(282,"CJRF"),AwBlu:function(n,s){return n===s},sOLpM:e(821,"#OOi"),Lmike:function(n,s){return n===s},Zslfa:function(n,s){return n===s}};if(!t||r[e(966,"OZzu")](t[e(678,"Fhs#")],1*-3863+-1024+-4891*-1))return!1;if(r[e(801,"8pjQ")](t[e(612,"n7Q^")],-5093+3*517+3550)&&r[e(582,"n7Q^")](t[8911+53*83+-13310],-2*-3448+265*-19+-1724)&&r[e(415,"X3DF")](t[-16808+-3*-5603],577*-3+1587+7*32)&&r[e(563,"ShO2")](t[4253*-1+-6301+-28*-377],283*-10+1*-6791+9699)&&r[e(1030,"$n0Q")](t[-55*-106+8692+-14519],-8299+-2*-816+6738)&&r[e(815,"2wQi")](t[4],17723+-1771*10)&&r[e(943,"nwCk")](t[6605+6600*-1],4477+1*-3387+-1080)&&r[e(859,"Fhs#")](t[8249+-5*1202+2233*-1],26)&&r[e(519,"OZzu")](t[7565+8*32+2*-3907],-18607+-1*-18617)||r[e(745,"240S")](t[3*-1041+5125+-2002],545*1+-41*-219+-9269)&&r[e(430,"[Gf!")](t[-745*5+-3*-953+51*17],39*91+-2908+-425)&&r[e(306,"n7Q^")](t[-4723*2+3573+5875],37*-131+3*-547+6743))return!0;if(r[e(615,"(kco")](t[e(608,"#*yI")],6)){let n=t[e(328,"lv(Z")](0,6)[e(1027,"JZKQ")](r[e(719,"8pjQ")]);if(r[e(993,"$&ze")](n,r[e(702,"i)7i")])||r[e(851,"e9rC")](n,r[e(669,"ShO2")]))return!0}return r[e(742,"YypP")](t[e(600,"X3DF")],11941+151*-79)&&r[e(789,"3$u9")](t[e(478,"[(4C")](17*-317+-3884*-2+-2379,-7942+-3761*-2+53*8)[e(832,"#9Sq")](r[e(560,"SAtO")]),r[e(826,"2wQi")])&&r[e(460,"JZKQ")](t[e(908,"#9Sq")](-3*168+-2847*-1+1*-2335,3*-3183+-9446+-1*-19007)[e(880,"n7Q^")](r[e(509,"[Gf!")]),r[e(886,"ljNd")])?!0:r[e(705,"ShO2")](t[0],-15059+-25*-605)&&r[e(349,"ljNd")](t[-39*94+7369+1*-3702],-9292*1+-7394+16763*1)}function XXt(t){let e=je,r={EHNBr:function(s,i){return s-i},vQMWz:function(s,i){return s+i},zjEgn:function(s,i){return s<=i},YFRvR:function(s,i){return s===i},lLNrA:function(s,i){return s===i},LlGUD:function(s,i){return s+i},XCfLD:function(s,i){return s===i},jJSbj:function(s,i){return s>=i}},n=Math[e(947,"l#VZ")](r[e(769,"[(4C")](t[e(445,"3GMJ")],5188+-20*259),r[e(341,"3$u9")](fG,-2067*1+-1663*-1+4500));for(let s=1*-2823+699*-13+-11911*-1;r[e(911,"Zbg9")](s,n);s++)if(r[e(974,"[Gf!")](t[r[e(490,"d&OD")](s,1679+-25*67)],119*17+1851+46*-82)&&r[e(954,"&HYM")](t[r[e(834,"3$u9")](s,-2735*2+9936+-4461)],-383*-10+-749*11+4525)&&r[e(892,"9pW6")](t[r[e(392,"JZKQ")](s,-7907+-41*-193)],8577+-1*8737+1*281)&&r[e(780,"lv(Z")](t[r[e(808,"240S")](s,1877*3+8413*-1+2789)],-1*2174+-3449+-1*-5735)){let i=t[e(865,"n7Q^")+"BE"](s);if(r[e(1015,"Noae")](i,9494*-1+5*1034+4*1083))return s}return-(-1*8247+-15*237+11803)}function ZXt(t){let e=je,r={mxZXq:e(734,"tU0H"),QEQdD:function(i,a){return i>a},nZTSw:function(i,a){return i<=a},BItfr:function(i,a){return i+a},ROUhI:function(i,a){return i===a},ABXkX:e(691,"ShO2"),Sqswm:e(283,"n7Q^"),WbGMr:function(i,a){return i+a}},n=Buffer[e(698,"X3DF")](r[e(338,"8pjQ")]),s=t[e(927,"240S")](n,1*4607+-2121*3+251*7);for(;r[e(673,"ljNd")](s,9042+-8347*1+695*-1);){if(r[e(457,"Wk9#")](r[e(1053,"$n0Q")](s,-7055+-2*-2883+1301),t[e(700,"TYG3")])&&r[e(938,"JZKQ")](t[e(1039,"3GMJ")](r[e(776,"(kco")](s,1387+1504*5+-8899),r[e(525,"lv(Z")](s,-227*-14+-1*-7559+-10725))[e(382,"ShO2")](r[e(611,"2wQi")]),r[e(854,"2wQi")]))return s;s=t[e(441,"YypP")](n,r[e(1071,"9pW6")](s,-2293*-4+-102*64+2643*-1))}return-(8986*-1+7*1094+1329)}function eZt(t){let e=je,r={iFAKc:function(s,i){return s-i},ouKNw:function(s,i){return s+i},YHtFY:function(s,i){return s<=i},IYsQY:function(s,i){return s===i},XVnVX:function(s,i){return s===i},wmdRH:function(s,i){return s+i},eySDQ:function(s,i){return s===i}},n=Math[e(473,"d&OD")](r[e(819,"TYG3")](t[e(928,"d&OD")],67*103+9538+16063*-1),r[e(488,"X3DF")](fG,8149+-21*113+-5588));for(let s=-45*-27+-35+3*-393;r[e(1040,"d&OD")](s,n);s++)if(r[e(727,"Noae")](t[s],4797*-2+61*-73+6*2353)&&r[e(592,"f*1G")](t[r[e(936,"#*yI")](s,4269+-26*233+1977*1)],-1*-4468+9845+-14242)&&r[e(475,"Wk9#")](t[r[e(831,"yDy^")](s,376)],6947+6876*-1))return s;return-1}function tZt(t){let e=je,r={AVTDC:function(i,a){return i(a)},LPkLu:function(i,a){return i(a)},ElCRe:e(1042,"OZzu"),LeeRg:function(i,a){return i<=a},KTera:function(i,a){return i>a}};if(!r[e(657,"TYG3")](JXt,t))return 0;let n=[r[e(917,"ZJM)")](XXt,t),t[e(720,"Wk9#")](Buffer[e(402,"CJRF")](r[e(361,"lv(Z")]),1),t[e(798,"$&ze")](Buffer[e(345,"l#VZ")]([3797+3*-1257,49*-52+3*2194+1*-3965,-331*29+2234+7588,-44*-174+-677+-284*24]),-1*-4355+-1*-269+-4623*1),r[e(873,"12Mj")](ZXt,t),r[e(787,"&HYM")](eZt,t)][e(302,"WkTr")](i=>Number[e(984,"$n0Q")](i)&&i>-7451+610*-8+12331);if(!n[e(1028,"240S")])return 1*725+-7674+6949;let s=Math[e(508,"12Mj")](...n);return r[e(818,"ZJM)")](s,8611+-1362*-7+-18145)||r[e(711,"n7Q^")](s,fG)?1871*4+58*-121+-466:s}async function rZt(t){let e=je,r={Qyzqm:e(713,"&HYM")+"r",gMAgW:function(a,o){return a*o},DMEnH:function(a,o){return a+o},gkydC:function(a,o){return a||o},EJpBP:function(a,o){return a-o},FnIvE:function(a,o){return a(o)},msjWh:function(a,o){return a>o},SFMCF:function(a,o){return a>o}};if(!t)return{isMasked:!1,skipBytes:0};let n=await he[e(768,"Noae")](t,{responseType:r[e(378,"(kco")],timeout:r[e(688,"Wk9#")](-4*-1412+451*12+-10060,2564+18*-142),maxContentLength:r[e(1001,"tU0H")](sG,-93*2+7860+-6650),maxBodyLength:r[e(1001,"tU0H")](sG,-2445+119*-17+5492),headers:Object[e(340,"#*yI")]({Cookie:r[e(997,"l#VZ")](Ac,""),Range:e(339,"Z*@(")+r[e(350,"yDy^")](sG,-4521+-977*6+8*1298)},qx)})[e(670,"8pjQ")](a=>{let o=e;return console[o(312,"$n0Q")](a),a[o(590,"X3DF")]||null});if(!n||!n[e(303,"l#VZ")])return{isMasked:!1,skipBytes:0};let s=Buffer[e(1066,"OZzu")](n[e(647,"CJRF")])?n[e(369,"j0Uf")]:Buffer[e(796,"[Gf!")](n[e(638,"9pW6")]),i=r[e(466,"#OOi")](tZt,s);return{isMasked:r[e(330,"j0Uf")](i,321+413*8+-125*29),skipBytes:r[e(500,"i)7i")](i,-12527+-12527*-1)?i:-81*-108+-8249+-499}}async function cG(t,e){let r=je,n={yLyzN:function(o,c){return o||c},kvFka:function(o,c){return o===c},mpMdG:function(o,c){return o(c)}};if(n[r(903,"Wk9#")](!t,!e))return{isMasked:!1,skipBytes:0};let s=lLe[t];if(s&&n[r(444,"i)7i")](s[r(410,"JZKQ")],e))return s;let i=await n[r(405,"YypP")](rZt,e),a={downUrl:e,isMasked:n[r(366,"ljNd")](i[r(1045,"ZJM)")],!0),skipBytes:i[r(909,"SAtO")]||-9379+770*-10+-5693*-3};return lLe[t]=a,a}async function Sk(t,e){let r=je,n={gFKwU:function(c,u){return c(u)},KHMQB:function(c,u){return c==u},lexag:r(531,"2wQi"),GXCKN:function(c,u){return c==u},oYuXL:r(708,"#9Sq"),HIIlb:function(c,u,l,d,f){return c(u,l,d,f)},aymWw:function(c,u){return c(u)},YhhQA:function(c){return c()},qaIdy:function(c,u){return c===u},BjyyT:function(c,u,l,d,f,p){return c(u,l,d,f,p)},deyeU:function(c,u){return c(u)},ueJlj:r(759,"f*1G"),MQTUr:function(c,u,l,d,f,p){return c(u,l,d,f,p)},HoEos:function(c,u){return c(u)},ySkCW:r(301,"&HYM")+r(507,"&HYM"),CSCna:function(c,u){return c==u},GKdmK:r(540,"(kco"),vvzMa:function(c,u,l){return c(u,l)},aZxIN:function(c,u){return c==u},OBcUV:function(c,u,l,d,f,p,m){return c(u,l,d,f,p,m)},EjBPu:function(c,u){return c*u},CJOrV:function(c,u){return c*u}};await n[r(421,"YypP")](kv,t);let s=t[r(792,"ShO2")][r(477,"9pW6")],i=t[r(676,"#*yI")][r(588,"iKSc")],a=t[r(310,"n7Q^")][r(551,"(kco")],o=t[r(579,"(kco")][r(803,"Z*@(")];if(n[r(899,"l#VZ")](s,n[r(504,"e9rC")])){let c="",u=o[r(453,"[(4C")]("*"),l=t[r(990,"j9GU")][r(496,"j9GU")];if(n[r(785,"i)7i")](i,n[r(584,"SAtO")])){!Ek[u[-33*191+-9384+15688]]&&(Ek[u[-9879+241*37+963]]=(await n[r(694,"3$u9")](ALe,a,n[r(535,"9pW6")](decodeURIComponent,u[-4871+-6*1534+25*563]),u[4033*2+-7326*-1+-1*15391],u[-2*-3817+-7834+101*2]))[r(396,"n7Q^")](A=>A[r(1047,"8pjQ")])),c=Ek[u[-7815+5*-669+11161]][r(915,"CJRF")](A=>A[r(881,"Gnm8")][r(633,"e9rC")+"e"]()==l)[-835*-1+6202+-1*7037][r(571,"i)7i")][r(847,"tU0H")],e[r(725,"f*1G")](c);return}else{let A=n[r(398,"$n0Q")](oG),g=n[r(309,"CJRF")](A[r(879,"#*yI")],!0);if(!Lh[u[-1889*2+-7677+-2*-5728]]){let b=g?await n[r(636,"Gnm8")](YXt,a,n[r(271,"n7Q^")](decodeURIComponent,u[0]),u[1],u[2],n[r(314,"&HYM")](l,n[r(639,"$n0Q")])):await n[r(546,"n7Q^")](dG,a,n[r(598,"!SOK")](decodeURIComponent,u[0]),u[1],u[2],n[r(944,"$n0Q")](l,n[r(329,"#9Sq")]));b?.[r(384,"Zbg9")+"rl"]&&(Lh[u[-961*10+-541+-8*-1269]]=b)}if(c=Lh[u[-8921+-93*-10+9*888]]?.[r(495,"e9rC")+"rl"],!c){e[r(1070,"tU0H")](648*-2+-1*-4803+1*-3007),e[r(840,"e9rC")](n[r(493,"i)7i")]);return}if(n[r(280,"ZJM)")](l,n[r(652,"e9rC")])){e[r(324,"2wQi")](c);return}}let d=n[r(724,"8pjQ")](oG),f=d[r(289,"3GMJ")]||-6636+-604*-1+6544,p=d[r(400,"f*1G")]||-11*102+1*9511+-133*63,m=await n[r(409,"g[c@")](cG,u[-1*-6421+-1055*-1+-7475],c),h=m[r(358,"240S")]&&n[r(1007,"ZJM)")](l,n[r(278,"g[c@")])?m[r(617,"#*yI")]:165*-25+-5931+8*1257;return await n[r(499,"g[c@")](Wx,t,e,c,u[-12460+733*17],Object[r(864,"g[c@")]({Cookie:Ac},qx),{chunkSize:n[r(989,"$n0Q")](-27*-201+1*5559+2*-4981,f),poolSize:p,timeout:n[r(998,"12Mj")](11679+59*-181,-1*-9879+-2724+-5*1429),skipBytes:h})}}async function vk(t,e){let r=je,n={HFONW:function(c,u){return c(u)},RTwCI:function(c,u){return c(u)},MnrvB:function(c,u){return c(u)},UaWlf:function(c,u){return c(u)},Dqlpu:r(655,"yDy^"),ioqXy:function(c,u){return c+u},yKaaQ:function(c,u){return c+u},yWKMs:r(334,"TYG3")+"rk",ZBpBN:function(c){return c()},UZdSg:function(c,u){return c===u},wJexX:r(557,"3$u9"),bwcBv:function(c,u,l,d,f){return c(u,l,d,f)},EIhrw:function(c,u,l){return c(u,l)},bjCHJ:function(c,u,l,d,f,p){return c(u,l,d,f,p)},rfqiD:function(c,u,l){return c(u,l)},hJJBh:function(c,u,l,d,f){return c(u,l,d,f)},zNvjz:r(399,"CJRF"),QsCWY:r(578,"Fhs#"),qLHJG:r(449,"j0Uf"),UZlyo:r(777,"9pW6"),ccode:function(c){return c()}};await n[r(406,"X3DF")](kv,t);let s=t[r(970,"X3DF")][r(1049,"8pjQ")],i=t[r(299,"3GMJ")].id,a=i[r(690,"&HYM")]("*"),o=-3873+-1291*-3;if(s[r(983,"y2dz")](await n[r(523,"Z*@(")](dLe,n[r(587,"2wQi")]))){let c=n[r(591,"3GMJ")](n[r(958,"d&OD")](n[r(810,"$&ze")](HXt,t),t[r(1025,"#9Sq")][r(791,"#OOi")]),n[r(530,"l#VZ")]),u={parse:0,url:[],header:Object[r(971,"yDy^")]({Cookie:Ac},qx)};a[6190+-65*-131+14701*-1]&&(u[r(979,"l#VZ")]={subt:c+r(373,"SAtO")+a[-1062*8+-2487+-21*-523]+"/"+n[r(1054,"LY1j")](encodeURIComponent,a[-1*-4021+1583*-2+-854])+"*"+a[-277*-11+-1310+1*-1733]+"*"+a[147*-53+-1752+9548]+r(574,"$&ze")});let l=n[r(308,"#9Sq")](oG),d=n[r(959,"12Mj")](l[r(913,"(kco")],!0),f=u[r(464,"Zbg9")],p=()=>{let y=r;f[y(462,"yDy^")]("\u4EE3\u7406"),f[y(1067,"3$u9")](c+y(572,"Zbg9")+a[0]+"/"+n[y(322,"ShO2")](encodeURIComponent,a[-4140+837*-2+5815*1])+"*"+a[2]+"*"+a[-6898+-4505*-2+-3*703]+y(766,"TYG3"))},m=()=>{let y=r;f[y(284,"ZJM)")]("\u4EE3\u7406"),f[y(930,"OZzu")](c+y(946,"Gnm8")+a[-9576+3*737+7365]+"/"+n[y(1069,"l#VZ")](encodeURIComponent,a[8215+-183*-50+-5788*3])+"*"+a[-250*37+-5472*-1+-21*-180]+"*"+a[2*-776+6*1599+-8039]+y(553,"Fhs#")),f[y(417,"i)7i")]("\u539F\u753B"),f[y(1012,"Zbg9")](c+(y(503,"TYG3")+y(627,"12Mj"))+a[-271*-2+-1*5164+4622]+"/"+n[y(857,"!SOK")](encodeURIComponent,a[1])+"*"+a[3*-1852+-8250+13808]+"*"+a[-923*1+-31*31+1887]+y(788,"9pW6"))};if(d){let y=n[r(1058,"$&ze")](a[0],n[r(281,"[Gf!")])?await n[r(901,"#OOi")](lG,a[2]):await n[r(692,"l#VZ")](hLe,a[0],a[1],a[2],a[3]);if(y?.[r(948,"OZzu")+"rl"])return Lh[a[-28+-1*-6163+-1*6133]]=y,(await n[r(304,"yDy^")](cG,a[418+6*1492+-9368],y[r(942,"[Gf!")+"rl"]))[r(889,"ShO2")]?(n[r(877,"JZKQ")](p),u):(n[r(665,"(kco")](m),u)}if(!Lh[a[-445*1+-1*-2780+-1*2333]]){let y=await n[r(1075,"Fhs#")](dG,a[0],a[1],a[2],a[3],!1);y?.[r(438,"&HYM")+"rl"]&&(Lh[a[-1427*-5+7113+-14246]]=y)}let h=Lh[a[2]]?.[r(793,"9pW6")+"rl"];if(h&&(await n[r(594,"3GMJ")](cG,a[2],h))[r(596,"e9rC")])return n[r(716,"l#VZ")](p),u;let A=(await n[r(353,"lv(Z")](ALe,a[4*-743+9846+1*-6874],a[-2850+1*2851],a[-397*-17+-1904+-1*4843],a[7057*-1+-1*7207+-1*-14267])||[])[r(614,"g[c@")](y=>y[r(268,"3GMJ")]);Ek[a[-1*8051+-9424+17477]]=A;let g=["\u8D85\u6E05","\u84DD\u5149","\u9AD8\u6E05","\u6807\u6E05","\u666E\u753B","\u6781\u901F"],b=["4k","2k",n[r(924,"[(4C")],n[r(321,"2wQi")],n[r(544,"3GMJ")],n[r(978,"yDy^")]];return n[r(895,"3$u9")](m),A[r(411,"ShO2")](y=>{let x=r;o=b[x(686,"OZzu")](y[x(320,"[Gf!")]),f[x(526,"JZKQ")](g[o]),f[x(848,"tU0H")](c+x(618,"OZzu")+y[x(771,"ShO2")][x(1e3,"&HYM")+"e"]()+"/"+a[3663+-1054*3+-501]+"/"+n[x(1048,"Gnm8")](encodeURIComponent,a[5*-1165+-3*2572+-2257*-6])+"*"+a[2]+"*"+a[4127+28*130+-1*7764]+x(994,"#OOi"))}),u}}var bl=Re(Jn(),1);var R4e=Re(v0(),1),Xd=Re(Jn(),1);var $k="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",Vv={NEW:"NEW",SCANNED:"SCANNED",CONFIRMED:"CONFIRMED",EXPIRED:"EXPIRED",CANCELED:"CANCELED"},w4e={encode(t,e=3e5){let r={data:t,expireTime:Date.now()+e};return Buffer.from(JSON.stringify(r)).toString("base64url")},decode(t){try{if(!t)return null;let e=JSON.parse(Buffer.from(t,"base64url").toString());return Date.now()>e.expireTime?null:e.data}catch{return null}}},ytr=async t=>{let e=Xd.default.enc.Hex.stringify(Xd.default.MD5(t.config.uc.cookie)).toString();return(await t.db.getObjectDefault("/uc",{}))[e]??""},xtr=async(t,e)=>{let r=Xd.default.enc.Hex.stringify(Xd.default.MD5(t.config.uc.cookie)).toString();await t.db.push(`/uc/${r}`,e)},nV=async t=>{let e=Xd.default.enc.Hex.stringify(Xd.default.MD5(t.config.uc.ut)).toString();return(await t.db.getObjectDefault("/uc",{}))[e]??""},sV=async(t,e)=>{let r=Xd.default.enc.Hex.stringify(Xd.default.MD5(t.config.uc.ut)).toString();await t.db.push(`/uc/${r}`,e)};async function iV(t){t.get("/qrcode",async(r,n)=>{try{let s=await Ae.get(`https://api.open.uc.cn/cas/ajax/getTokenForQrcodeLogin?client_id=381&v=1.2&request_id=${Date.now()}`,{headers:{"User-Agent":$k,referer:"https://drive.uc.cn"}}),i=s.data.data.members.token,a=hl(s.headers["set-cookie"]),o=w4e.encode({token:i,cookies:a}),c=`https://su.uc.cn/1_n0ZCv?uc_param_str=dsdnfrpfbivesscpgimibtbmnijblauputogpintnwktprchmt&token=${i}&client_id=381&uc_biz_str=S%3Acustom%7CC%3Atitlebar_fix`,u=await R4e.default.toBuffer(c,{width:300,height:300});n.header("X-Session-Key",o),n.send(u)}catch(s){console.error("UC\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25:",s),n.status(500).send({code:-1,message:"\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25"})}}),t.post("/check-status",async(r,n)=>{let{sessionKey:s}=r.body,i=w4e.decode(s);if(!i)return n.send({code:0,data:{status:Vv.EXPIRED}});let{token:a,cookies:o}=i;try{let c=await Ae.get(`https://api.open.uc.cn/cas/ajax/getServiceTicketByQrcodeToken?__t=${Date.now()}&token=${a}&client_id=381&v=1.2&request_id=${Date.now()}`,{headers:{"User-Agent":$k}});if(c.data.status===2e6){let u=await e(c.data.data.members.service_ticket,o);n.send({code:0,data:{status:Vv.CONFIRMED,cookie:u}})}else c.data.status===50004002?n.send({code:0,data:{status:Vv.EXPIRED}}):n.send({code:0,data:{status:Vv.NEW}})}catch(c){console.error("UC\u72B6\u6001\u68C0\u67E5\u5931\u8D25:",c),n.send({code:0,data:{status:Vv.NEW}})}});async function e(r,n){let s=[...n],i=await Ae.get(`https://drive.uc.cn/account/info?st=${r}&fr=pc&platform=pc`,{headers:{"User-Agent":$k,Cookie:s.join(""),referer:"https://drive.uc.cn"}});i.headers["set-cookie"]&&(s=s.concat(hl(i.headers["set-cookie"])));let a=await Ae.post("https://pc-api.uc.cn/1/clouddrive/transfer/upload/pdir?pr=UCBrowser&fr=pc",{},{headers:{"User-Agent":$k,Cookie:s.join("")}});return a.headers["set-cookie"]&&(s=s.concat(hl(a.headers["set-cookie"]))),s.join("")}t.post("/cookie",(r,n)=>{n.send({code:-1,message:"\u8BF7\u4F7F\u7528 /check-status \u63A5\u53E3"})}),t.get("/cookie",async(r,n)=>{n.send({code:0,data:await ytr(r.server)})}),t.put("/cookie",async(r,n)=>{await xtr(r.server,r.body.cookie),n.send({code:0})}),t.get("/ut",async(r,n)=>{n.send({code:0,data:await nV(r.server)})}),t.put("/ut",async(r,n)=>{await sV(r.server,r.body.ut),n.send({code:0})})}var bc={DeviceID:"07b48aaba8a739356ab8107b5e230ad4",RefreshToken:"",AccessToken:""},Cs={api:"https://open-api-drive.uc.cn",clientID:"5acf882d27b74502b7040b0c65519aa7",signKey:"l3srvtd7p42l0d0x1u8d7yc8ye9kki4d",appVer:"1.6.8",channel:"UCTVOFFICIALWEB",codeApi:"http://api.extscreen.com/ucdrive"};function D4e(t){return String(t||"").split(",")[0].trim()}function N4e(t){return D4e(t).replace(/^\w+:\/\//,"").split("/")[0].trim()}function btr(t){let e=String(t?.server?.address?.()?.url||"").trim(),n=N4e(t?.headers?.["x-forwarded-host"])||N4e(t?.headers?.host);if(!n)return e;let s=D4e(t?.headers?.["x-forwarded-proto"]),i=e.startsWith("https://")?"https":"http";return`${s||String(t?.protocol||"").trim()||i}://${n}`}function Etr(t){return bl.default.MD5(t).toString().slice(0,16)}function Kv(t,e){return bl.default.MD5(t+e).toString().slice(0,16)}function jk(t,e,r,n){let s=t+"&"+e+"&"+r+"&"+n;return bl.default.SHA256(s).toString()}function k4e(t){let r=/https:\/\/drive\.uc\.cn\/s\/([^\\|#/?]+)/.exec(t);return r?{shareId:r[1],folderId:"0"}:null}var El="pr=UCBrowser&fr=pc",cV={"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"},zv=null,Uk=null,oV="https://pc-api.uc.cn/1/clouddrive/",Zd="",uV="",L4e="",C0={},O4e="CatVodOpen",qh=null,Fk="";async function B4e(t){zv=t.server.db;let e=t.server.config.uc;Zd=e.cookie,Uk=bl.default.enc.Hex.stringify(bl.default.MD5(e.cookie)).toString(),uV=bl.default.enc.Hex.stringify(bl.default.MD5(e.token)).toString(),L4e=bl.default.enc.Hex.stringify(bl.default.MD5(e.ut)).toString();let r=await zv.getObjectDefault("/uc",{});if(r[Uk]&&(Zd=r[Uk]),Fk=await nV(t.server),!Fk)try{await he.get(`${oV}/file`)}catch(n){n?.response?.data?.length&&(Fk=n.response.data,sV(t.server,Fk))}}async function fu(t,e,r,n,s){r=r||{},Object.assign(r,cV),Object.assign(r,{Cookie:Zd||""}),n=n||"post";let i=n=="get"?await he.get(`${oV}/${t}`,{headers:r}).catch(o=>(console.error(o),o?.response?.status===401&&messageToDart({action:"toast",opt:{message:"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:{}})):await he.post(`${oV}/${t}`,e,{headers:r}).catch(o=>(console.error(o),o?.response?.status===401&&messageToDart({action:"toast",opt:{message:"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=s||3;if(i.headers["set-cookie"]){let o=i.headers["set-cookie"].join(";;;").match(/__puus=([^;]+)/);o&&Zd.match(/__puus=([^;]+)/)[1]!=o[1]&&(Zd=Zd.replace(/__puus=[^;]+/,`__puus=${o[1]}`),await zv.push(`/uc/${Uk}`,Zd))}return i.status===429&&a>0?(await Gd(1e3),await fu(t,e,r,n,a-1)):i.data||{}}async function P4e(){let t=await fu(`file/sort?${El}&pdir_fid=${qh}&_page=1&_size=200&_sort=file_type:asc,updated_at:desc`,{},{},"get");if(t.data&&t.data.list&&t.data.list.length>0){let e=await fu(`file/delete?${El}`,{action_type:2,filelist:t.data.list.map(r=>r.fid),exclude_fids:[]});console.log(e)}}async function _tr(t){if(qh){t&&await P4e();return}let e=await fu(`file/sort?${El}&pdir_fid=0&_page=1&_size=200&_sort=file_type:asc,updated_at:desc`,{},{},"get");if(e.data&&e.data.list){for(let r of e.data.list)if(r.file_name===O4e){qh=r.fid,await P4e();break}}if(!qh){let r=await fu(`file?${El}`,{pdir_fid:"0",file_name:O4e,dir_path:"",dir_init_lock:!1});console.log(r),r.data&&r.data.fid&&(qh=r.data.fid)}}async function M4e(t){if(!C0[t.shareId]){delete C0[t.shareId];let e=await fu(`share/sharepage/token?${El}`,{pwd_id:t.shareId,passcode:t.sharePwd||""});e.data&&e.data.stoken&&(C0[t.shareId]=e.data)}}var Str=[".srt",".ass",".scc",".stl",".ttml"];async function vtr(t){let e=typeof t=="string"?k4e(t):t;if(!e)return[];if(await M4e(e),!C0[e.shareId])return[];let r=[],n=[],s=(a,o)=>a?`${a}/${o}`:o,i=async function(a,o,c,u){let l=u||"",d=100;c=c||1;let f=await fu(`share/sharepage/detail?${El}&pwd_id=${a}&stoken=${encodeURIComponent(C0[a].stoken)}&pdir_fid=${o}&force=0&_page=${c}&_size=${d}&_sort=file_type:asc,file_name:asc`,{},{},"get");if(!f.data)return[];let p=f.data.list;if(!p)return[];let m=[];for(let h of p)if(h.dir===!0)m.push({fid:h.fid,path:s(l,h.file_name)});else if(h.file===!0&&h.obj_category==="video"){if(h.size<1024*1024*5)continue;h.stoken=C0[e.shareId].stoken,h.vod_group=l,r.push(h)}else h.type==="file"&&Str.some(A=>h.file_name.endsWith(A))&&n.push(h);if(c0&&r.forEach(a=>{var o=ml(a,n);o.bestMatch&&(a.subtitle=o.bestMatch.target)}),r}var ef={};async function W4e(t,e,r,n,s){if(await _tr(s),s){let a=Object.keys(ef);for(let o of a)delete ef[o]}if(!qh||!e&&(await M4e({shareId:t}),!C0[t]))return null;let i=await fu(`share/sharepage/save?${El}`,{fid_list:[r],fid_token_list:[n],to_pdir_fid:qh,pwd_id:t,stoken:e||C0[t].stoken,pdir_fid:"0",scene:"link"});if(i.data&&i.data.task_id){let a=0;for(;;){let o=await fu(`task?${El}&task_id=${i.data.task_id}&retry_index=${a}`,{},{},"get");if(o.data&&o.data.save_as&&o.data.save_as.save_as_top_fids&&o.data.save_as.save_as_top_fids.length>0)return o.data.save_as.save_as_top_fids[0];if(a++,a>5)break;await Gd(1e3)}}return!1}async function $4e(t,e,r,n){if(!ef[r]){let i=await W4e(t,e,r,n,!0);if(!i)return null;ef[r]=i}let s=await fu(`file/v2/play?${El}`,{fid:ef[r],resolutions:"normal,low,high,super,2k,4k",supports:"fmp4"});return s.data&&s.data.video_list?s.data.video_list:null}async function Ctr(t,e,r,n,s){if(!ef[r]){let c=await W4e(t,e,r,n,s);if(!c)return null;ef[r]=c}let i=await zv.getObjectDefault("/uc",{}),a=i[uV],o=i[L4e];if(a){let c=[],u="/file",l=Math.floor(Date.now()/1e3).toString()+"000",d=bc.DeviceID||Etr(l),f=Kv(d,l),p=jk("GET",u,l,Cs.signKey),m={method:"GET",url:"https://open-api-drive.uc.cn/file",params:{req_id:f,access_token:a,app_ver:Cs.appVer,device_id:d,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:Cs.channel,method:"streaming",group_by:"source",fid:ef[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":l,"x-pan-token":p,"content-type":"text/plain;charset=UTF-8","x-pan-client-id":Cs.clientID}},h=await Ae.request(m);if(h.status===200){let A=h.data.data.video_info.filter(g=>g.accessable)[0];return A.download_url=A.url,A}}else{let c=`file/download?${El}`;o&&(c+=`&ut=${o}`);let u=await fu(c,{fids:[ef[r]]});if(u.data)return u.data[0]}return null}async function F4e(t){if(mk(t)){let e=k4e(t);if(e){let r=await vtr(e);return r=r.map(n=>({vod_id:[e.shareId,n.stoken,n.fid,n.share_fid_token,n.subtitle?n.subtitle.fid:"",n.subtitle?n.subtitle.share_fid_token:""].join("*"),vod_name:n.file_name,vod_size:n.size,vod_group:n.vod_group})),Os(getPanName("uc"),r)}else return{}}}var qk={},aV={};async function U4e(t,e){let r=t.params.site,n=t.params.what,s=t.params.shareId,i=t.params.fileId;if(await B4e(t),r=="uc"){let a="",o=i.split("*"),c=t.params.flag;if(n=="trans"){qk[o[1]]||(qk[o[1]]=(await $4e(s,decodeURIComponent(o[0]),o[1],o[2])).filter(p=>p.accessable)),a=qk[o[1]].filter(p=>p.resolution.toLowerCase()==c)[0].video_info.url,e.redirect(a);return}else{if(!aV[o[1]]){let p=await Ctr(s,decodeURIComponent(o[0]),o[1],o[2],c=="down");p&&(aV[o[1]]=p)}if(a=aV[o[1]].download_url,c=="redirect"){e.redirect(a);return}}let l=(globalThis.Pans||[]).find(p=>p.key==="uc")||{},d=l.chunkSize||512,f=l.poolSize||10;return await Wx(t,e,a,o[1],Object.assign({Cookie:Zd},cV),{chunkSize:1024*d,poolSize:f,timeout:1e3*10})}}async function q4e(t,e){let r=t.body.flag,s=t.body.id.split("*");await B4e(t);let i=0;if(r.startsWith(getPanName("uc"))){let a=(await $4e(s[0],s[1],s[2],s[3])).filter(A=>A.accessable);qk[s[2]]=a;let o=[],c=["\u8D85\u6E05","\u84DD\u5149","\u9AD8\u6E05","\u6807\u6E05","\u666E\u753B","\u6781\u901F"],u=["4k","2k","super","high","low","normal"],l=btr(t)+t.server.prefix+"/proxy/uc",f=(await zv.getObjectDefault("/uc",{}))[uV],p=["\u4EE3\u7406",`${l}/src/down/${s[0]}/${encodeURIComponent(s[1])}*${s[2]}*${s[3]}/.bin`],m=["\u539F\u753B",`${l}/src/redirect/${s[0]}/${encodeURIComponent(s[1])}*${s[2]}*${s[3]}/.bin`];f?o.push(...m,...p):o.push(...p,...m);let h={parse:0,url:o,header:Object.assign({Cookie:Zd},cV)};return f&&(h.header=void 0),s[3]&&(h.extra={subt:`${l}/src/subt/${s[0]}/${encodeURIComponent(s[1])}*${s[4]}*${s[5]}/.bin`}),a.forEach(A=>{i=u.indexOf(A.resolution),o.push(c[i]),o.push(`${l}/trans/${A.resolution.toLowerCase()}/${s[0]}/${encodeURIComponent(s[1])}*${s[2]}*${s[3]}/.mp4`)}),h}}var Gh=Re(nC(),1),c6e=Re(QMe(),1),N0=Re(require("crypto"),1);var kV,tb={},w0={set(t,e){tb[t]=e,kV.push(`/tyi/${t}`,e)},get(t){return tb[t]}},GMe=(t,e={})=>{let r=e.method||"GET",n=e.headers||{};return Ae({method:r,url:t,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))},LV=(0,c6e.default)({storeAsString:!0}),onr=(t,e)=>t?`${t}/${e}`:e,VMe="video",sL="cas",cnr=new Set([sL]),unr=new Set(["mp4","m4v","mkv","avi","mov","flv","ts","m2ts","m3u8","mpd","webm","wmv","rmvb","rm","f4v","m4s"]),zMe="02",tL="8025431004",KMe="10020",lnr="6.2",sC="https://cloud.189.cn",iC="https://open.e.189.cn",Qi="https://api.cloud.189.cn",rL="https://upload.cloud.189.cn",YMe="https://m.cloud.189.cn/zhuanti/2020/loginErrorPc/index.html",dnr="web_cloud.189.cn",Ec={"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"},nL="MyCatPaw",OV={"User-Agent":Ec["User-Agent"],Accept:"text/plain,application/json;charset=UTF-8,*/*","Accept-Encoding":Ec["Accept-Encoding"]},fnr=new Set(["UNABLE_TO_VERIFY_LEAF_SIGNATURE","UNABLE_TO_VERIFY_FIRST_CERTIFICATE","SELF_SIGNED_CERT_IN_CHAIN","DEPTH_ZERO_SELF_SIGNED_CERT","CERT_HAS_EXPIRED","ERR_TLS_CERT_ALTNAME_INVALID"]);function pnr(t){let e=new Map;return String(t||"").split(";").map(r=>r.trim()).filter(Boolean).forEach(r=>{let n=r.indexOf("=");if(n<=0)return;let s=r.slice(0,n).trim(),i=r.slice(n+1).trim();s&&e.set(s,i)}),e}function PV(t,e){let r=pnr(t);return(Array.isArray(e)?e:e?[e]:[]).forEach(s=>{let i=String(s||"").split(";")[0].trim();if(!i)return;let a=i.indexOf("=");if(a<=0)return;let o=i.slice(0,a).trim(),c=i.slice(a+1).trim();o&&r.set(o,c)}),Array.from(r.entries()).map(([s,i])=>`${s}=${i}`).join("; ")}function JMe(){return{clientType:"TELEPC",version:lnr,channelId:dnr,rand:`${Math.floor(Math.random()*1e5)}_${Math.floor(Math.random()*1e10)}`}}function mnr(t){let e=String(t?.code||"").trim().toUpperCase(),r=String(t?.message||"").trim();return fnr.has(e)||/unable to verify the first certificate|self[ -]signed certificate|certificate/i.test(r)}async function R0(t,e=""){try{return await Ae(t)}catch(r){if(!mnr(r))throw r;return r?.code,r?.message||String(r),Wt(t?.url||"",260),await he({...t,proxy:!1})}}function hnr(){return new Date().toUTCString()}function gnr(t,e){let r=new URLSearchParams;Object.keys(t||{}).sort().forEach(s=>{let i=t[s];i!=null&&r.append(s,String(i))});let n=N0.default.createCipheriv("aes-128-ecb",Buffer.from(String(e||"").slice(0,16),"utf8"),null);return n.setAutoPadding(!0),Buffer.concat([n.update(r.toString(),"utf8"),n.final()]).toString("hex").toUpperCase()}function Anr(t,e,r,n,s,i=""){let a=new URL(n).pathname,o=`SessionKey=${e}&Operate=${r.toUpperCase()}&RequestURI=${a}&Date=${s}${i?`¶ms=${i}`:""}`;return N0.default.createHmac("sha1",Buffer.from(String(t||""),"utf8")).update(o,"utf8").digest("hex").toUpperCase()}function XMe(t,e){return N0.default.publicEncrypt({key:t,padding:N0.default.constants.RSA_PKCS1_PADDING},Buffer.from(String(e||""),"utf8")).toString("hex").toUpperCase()}function Er(t,e){let r=String(t||"").match(new RegExp(`<${e}>([\\s\\S]*?)`,"i"));return r?r[1].trim():""}function ZMe(t){let e=Number(t||0),r=1024*1024*10;return e>r*2*999?Math.max(Math.ceil(e/1999/r),5)*r:e>r*999?r*2:r}function ma(t){if(typeof t=="string")return t;if(t==null)return"";try{return JSON.stringify(t)}catch{return String(t)}}function fa(t){let e=ma(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:vo(e);if(r&&typeof r=="object"&&!Array.isArray(r)){let i=r.res_code??r.ResCode??"",a=r.res_message??r.ResMessage??"";if(typeof i=="number"&&i!==0||typeof i=="string"&&i)return`res_code=${i}${a?` ${a}`:""}`.trim();let o=r.code||r.errorCode||"",c=r.message||r.msg||r.errorMsg||r.error||"";if(o&&o!=="SUCCESS"&&o!=="0")return`code=${o}${c?` ${c}`:""}`.trim();if(!o&&c)return String(c)}let n=Er(e,"code"),s=Er(e,"message")||Er(e,"msg");return n&&n!=="SUCCESS"&&n!=="0"?`code=${n}${s?` ${s}`:""}`.trim():""}function ynr(t){let e=ma(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:vo(e);if(r&&typeof r=="object"&&!Array.isArray(r)&&(r.sessionKey||r.sessionSecret||r.accessToken))return r;if(!e||e[0]!=="<")return null;let n=["loginName","sessionKey","sessionSecret","familySessionKey","familySessionSecret","accessToken","refreshToken","isSaveName","keepAlive","getFileDiffSpan","getUserInfoSpan"],s={};return n.forEach(i=>{let a=Er(e,i);a&&(s[i]=a)}),s.sessionKey&&s.sessionSecret?s:null}function e6e(t){let e=ma(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:vo(e);return r&&typeof r=="object"&&!Array.isArray(r)&&r.data&&typeof r.data=="object"?r.data:null}function t6e(t){let e=ma(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:vo(e);return r&&typeof r=="object"&&!Array.isArray(r)&&r.file&&typeof r.file=="object"?r.file:null}function r6e(t){let e=ma(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:vo(e),n=String(r?.fileDownloadUrl||"");return n||Er(e,"fileDownloadUrl")}function xnr(t){if(t&&typeof t=="object"&&!Array.isArray(t))return t;let e=ma(t).trim();if(!e)return null;try{return LV.parse(e)}catch{return vo(e)}}function n6e(t,e){let r=String(t||""),n=new RegExp(`<${e}>([\\s\\S]*?)`,"ig"),s=[],i;for(;(i=n.exec(r))!==null;){let a=i[1],o=Er(a,"icon"),c={id:Er(a,"id"),parentId:Er(a,"parentId"),name:_c(Er(a,"name")),size:Number(Er(a,"size")||0),md5:Er(a,"md5"),fileCata:Er(a,"fileCata"),mediaType:Er(a,"mediaType"),createDate:Er(a,"createDate"),lastOpTime:Er(a,"lastOpTime"),icon:o?{smallUrl:_c(Er(o,"smallUrl")),largeUrl:_c(Er(o,"largeUrl")),max600:_c(Er(o,"max600")),mediumUrl:_c(Er(o,"mediumUrl"))}:void 0};Object.keys(c).forEach(u=>{(c[u]===""||c[u]===void 0)&&delete c[u]}),(c.id!==void 0||c.name)&&s.push(c)}return s}function bnr(t){let e=ma(t).trim(),r=xnr(t)||{},n=r?.fileListAO||r?.data?.fileListAO||{},s=Array.isArray(n?.folderList)?n.folderList:[],i=Array.isArray(n?.fileList)?n.fileList:[];if(s.length===0&&i.length===0&&e.startsWith("<")){let a=Er(e,"fileList")||e;s=n6e(a,"folder"),i=n6e(a,"file")}return{count:Number(n?.count||Er(e,"count")||s.length+i.length||0),folderList:s,fileList:i,data:r}}function s6e(t){let e=ma(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:vo(e),n=String(r?.taskId||r?.taskID||"");return n||Er(e,"taskId")||Er(e,"taskID")}function Enr(t){let e=ma(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:vo(e),n=r?.taskStatus??r?.TaskStatus??"";if(n!==""&&n!==void 0&&n!==null)return Number(n);let s=Er(e,"taskStatus")||Er(e,"TaskStatus");return s?Number(s):0}function _nr(t){let e=ma(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:vo(e),n=i=>Array.isArray(i)?i.filter(Boolean):i&&typeof i=="object"?[i]:[],s=n(r?.familyInfoResp);if(s.length===0&&(s=n(r?.data?.familyInfoResp)),s.length===0&&e.startsWith("<")&&(s=(String(e).match(/([\s\S]*?)<\/familyInfoResp>/ig)||[]).map(a=>({familyId:Er(a,"familyId"),remarkName:Er(a,"remarkName"),useFlag:Er(a,"useFlag"),userRole:Er(a,"userRole")})).filter(a=>String(a?.familyId||"")),s.length===0)){let a=Er(e,"familyId");a&&(s=[{familyId:a,remarkName:Er(e,"remarkName"),useFlag:Er(e,"useFlag"),userRole:Er(e,"userRole")}])}return s.map(i=>({familyId:String(i?.familyId||i?.familyID||""),remarkName:String(i?.remarkName||""),useFlag:Number(i?.useFlag||0),userRole:Number(i?.userRole||0)})).filter(i=>i.familyId)}function u6e(t){let e=String(t||"").trim().toLowerCase(),r=e.lastIndexOf(".");return r>=0?e.slice(r+1):""}function Snr(t){return cnr.has(u6e(t))}function vo(t){let e=typeof t=="string"?t.trim():"";if(!e||!/^[\[{]/.test(e))return null;try{return JSON.parse(e)}catch{return null}}function _c(t){return String(t??"").replace(/&/gi,"&").replace(/</gi,"<").replace(/>/gi,">").replace(/"/gi,'"').replace(/'/gi,"'")}function Cl(t){let e=_c(t).trim();return e?/^\/\//.test(e)?`http:${e}`:/^(https?:\/\/)/i.test(e)?e:"":""}function vnr(t){return _c(t).replace(/([?&](?:sig|sk|token|expired)=)[^&<\s]+/ig,"$1***").replace(/(SSON=)[^;]+/ig,"$1***").replace(/(OPENINFO=)[^;]+/ig,"$1***").replace(/(JSESSIONID=)[^;]+/ig,"$1***").replace(/(COOKIE_LOGIN_USER=)[^;]+/ig,"$1***")}function Wt(t,e=220){let r=vnr(String(t??"")).replace(/\s+/g," ").trim();return r.length>e?`${r.slice(0,e)}...`:r}function eb(t){if(!t)return"none";let e=String(t).split(";").map(r=>r.split("=")[0].trim()).filter(Boolean);return`${e.slice(0,5).join(",")}${e.length>5?`,+${e.length-5}`:""}`}function pa(t){try{let e=Cl(t);return e?new URL(e).host:""}catch{return""}}function Cnr(t){try{let e=Cl(t);return e?u6e(new URL(e).pathname):""}catch{return""}}function i6e(t){return unr.has(Cnr(t))}function Inr(t){let r=String(t||"").match(/\/(\d+)$/);if(!r)return 0;let n=Number(r[1]);return Number.isFinite(n)?n:0}function Tnr(t){let e=String(t||"").replace(/\s+/g,"").trim();if(!e||e.length<24||e.length%4!==0||/[^A-Za-z0-9+/=]/.test(e))return null;try{let r=Buffer.from(e,"base64").toString("utf8").trim(),n=vo(r);return!n||typeof n!="object"||Array.isArray(n)||!n.md5&&!n.sliceMd5&&!n.create_time?null:{raw:r,data:n}}catch{return null}}function DV(t){return!t||typeof t!="object"?{}:{name:t.name||"",size:t.size||0,md5:t.md5||"",sliceMd5:t.sliceMd5||"",create_time:t.create_time||""}}function a6e(t){let e=String(t??"");try{return decodeURIComponent(e.replace(/\+/g,"%20"))}catch{return e}}function wnr(t){let e=String(t??"");try{return decodeURIComponent(e)}catch{return e}}function Rnr(t,e=""){let r=String(t||"").trim(),s=wnr(r)||r,i={shareCode:"",accessCode:String(e||"").trim()},a=s.match(/https?:\/\/cloud\.189\.cn\/web\/share\?code=([^&#\s\uFF08(]+)/i),o=s.match(/https?:\/\/cloud\.189\.cn\/t\/([^?&#\s\uFF08(]+)/i);if(a?.[1]?i.shareCode=a[1]:o?.[1]?i.shareCode=o[1]:/^https?:\/\//i.test(s)||(i.shareCode=s.split(/[\s\uFF08(]/)[0]),!i.accessCode){let c=s.match(/(?:è®¿é—®ç |æå–ç |å¯†ç )\s*[::]\s*([a-zA-Z0-9]+)/);i.accessCode=c?.[1]||""}return i}function l6e(t){let e=String(t||"").trim();if(!e)return null;let r=vo(e);if(r&&typeof r=="object"&&!Array.isArray(r)){let s={};return Object.keys(r).forEach(i=>{let a=r[i];if(a==null)return;let o=String(i).trim(),c=String(a).trim();o&&c&&(s[o]=c)}),Object.keys(s).length>0?s:null}let n={};return e.split(/[&;]/).forEach(s=>{let[i,...a]=s.split("=");if(!i||a.length===0)return;let o=a6e(i.trim()),c=a6e(a.join("=").trim());o&&c&&(n[o]=c)}),Object.keys(n).length>0?n:null}function Nnr(t,e){let r=Cl(e);r&&!t.includes(r)&&t.push(r)}function aC(t,e=[],r=0){if(!t||r>4)return e;if(typeof t=="string")return Nnr(e,t),e;if(Array.isArray(t))return t.forEach(i=>aC(i,e,r+1)),e;if(typeof t!="object")return e;let n=["downloadUrl","downloadURL","fileDownloadUrl","fileDownloadURL","contentUrl","contentURL","redirectUrl","redirectURL","sourceUrl","sourceURL","location","url"];for(let i of n)i in t&&aC(t[i],e,r+1);if(e.length>0)return e;let s=["data","result","normal","file","download","downloadInfo"];for(let i of s)i in t&&aC(t[i],e,r+1);return e}function o6e(t){let e=String(t||"").trim();if(!e)return null;let r=e.indexOf("|"),n=r>=0?e.slice(0,r).trim():e,s=r>=0?e.slice(r+1).trim():"",i=Cl(n);if(i){let c=l6e(s);return c?{url:i,header:c}:{url:i}}let a=_c(e).match(/((?:https?:)?\/\/[^<\s]+)/i);if(!a)return null;let o=Cl(a[1]);return o?{url:o}:null}function Zx(t){let e=String(t||"").replace(/^\uFEFF/,"").trim();if(!e||/^{kV=t.server.db,tb=await kV.getObjectDefault("/tyi",{}),tb?.cloud_account,tb?.cloud_password,eb(tb?.cloud_cookie)},MV=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.index=0,this.shareFileCache=new Map,this.lastShareTextResolveReason="",this.pcLoginState=null,this.pcRestoreFolderId="",this.pcFamilyRestoreFolderId="",this.pcFamilyId=""}setShareTextResolveReason(e=""){this.lastShareTextResolveReason=String(e||"")}getShareTextResolveReason(){return this.lastShareTextResolveReason||""}getShareFileCacheKey(e,r){return`${r||""}:${e||""}`}cacheShareFileItem(e,r,n,s={}){!e||!r||!n||typeof n!="object"||this.shareFileCache.set(this.getShareFileCacheKey(e,r),{...n,...s})}getCachedShareFileItem(e,r){return this.shareFileCache.get(this.getShareFileCacheKey(e,r))||null}async init(){this.account&&console.log("\u5929\u7FFC\u8D26\u53F7\u83B7\u53D6\u6210\u529F\uFF1A"+this.account),this.password&&console.log("\u5929\u7FFC\u5BC6\u7801\u83B7\u53D6\u6210\u529F\uFF1A"+this.password),this.cookie?console.log("\u5929\u7FFCcookie\u83B7\u53D6\u6210\u529F"+this.cookie):w0.set("cloud_cookie",await this.login(this.account,this.password))}get account(){return w0.get("cloud_account")}get password(){return w0.get("cloud_password")}get cookie(){return w0.get("cloud_cookie")}async login(e,r){try{let n=await Ae.post("https://open.e.189.cn/api/logbox/config/encryptConf.do?appId=cloud"),s=n.data.data.pubKey;n=await Ae.get("https://cloud.189.cn/api/portal/loginUrl.action?redirectURL=https://cloud.189.cn/web/redirect.html?returnURL=/main.action");let i=n.request.path.match(/reqId=(\w+)/)[1],o={"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:n.request.path.match(/lt=(\w+)/)[1],Reqid:i},c={version:"2.0",appKey:"cloud"};n=await Ae.post("https://open.e.189.cn/api/logbox/oauth2/appConf.do",Gh.default.stringify(c),{headers:o});let u=n.data.data.returnUrl,l=n.data.data.paramId,d=`-----BEGIN PUBLIC KEY----- + )`,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 Ic=Ce(S0(),1);var XG={};function ZG(t,e){return t===Ic.default.falseFunc?Ic.default.falseFunc:r=>e.isTag(r)&&t(r)}function ez(t,e){let r=e.getSiblings(t);if(r.length<=1)return[];let n=r.indexOf(t);return n<0||n===r.length-1?[]:r.slice(n+1).filter(e.isTag)}function JG(t){return{xmlMode:!!t.xmlMode,lowerCaseAttributeNames:!!t.lowerCaseAttributeNames,lowerCaseTags:!!t.lowerCaseTags,quirksMode:!!t.quirksMode,cacheResults:!!t.cacheResults,pseudos:t.pseudos,adapter:t.adapter,equals:t.equals}}var YG=(t,e,r,n,s)=>{let i=s(e,JG(r),n);return i===Ic.default.trueFunc?t:i===Ic.default.falseFunc?Ic.default.falseFunc:a=>i(a)&&t(a)},ED={is:YG,matches:YG,where:YG,not(t,e,r,n,s){let i=s(e,JG(r),n);return i===Ic.default.falseFunc?t:i===Ic.default.trueFunc?Ic.default.falseFunc:a=>!i(a)&&t(a)},has(t,e,r,n,s){let{adapter:i}=r,a=JG(r);a.relativeSelector=!0;let o=e.some(l=>l.some(fI))?[XG]:void 0,c=s(e,a,o);if(c===Ic.default.falseFunc)return Ic.default.falseFunc;let u=ZG(c,i);if(o&&c!==Ic.default.trueFunc){let{shouldTestNextSiblings:l=!1}=c;return d=>{if(!t(d))return!1;o[0]=d;let f=i.getChildren(d),p=l?[...f,...ez(d,i)]:f;return i.existsOne(u,p)}}return l=>t(l)&&i.existsOne(u,i.getChildren(l))}};function wDe(t,e,r,n,s){var i;let{name:a,data:o}=e;if(Array.isArray(o)){if(!(a in ED))throw new Error(`Unknown pseudo-class :${a}(${o})`);return ED[a](t,o,r,n,s)}let c=(i=r.pseudos)===null||i===void 0?void 0:i[a],u=typeof c=="string"?c:_D[a];if(typeof u=="string"){if(o!=null)throw new Error(`Pseudo ${a} doesn't have any arguments`);let l=(0,TDe.parse)(u);return ED.is(t,l,r,n,s)}if(typeof c=="function")return VG(c,a,o,1),l=>c(l,o)&&t(l);if(a in db)return db[a](t,o,r,n);if(a in mI){let l=mI[a];return VG(l,a,o,2),d=>l(d,r,o)&&t(d)}throw new Error(`Unknown pseudo-class :${a}`)}var Cc=Ce(ub(),1);function tz(t,e){let r=e.getParent(t);return r&&e.isTag(r)?r:null}function RDe(t,e,r,n,s){let{adapter:i,equals:a}=r;switch(e.type){case Cc.SelectorType.PseudoElement:throw new Error("Pseudo-elements are not supported by css-select");case Cc.SelectorType.ColumnCombinator:throw new Error("Column combinators are not yet supported by css-select");case Cc.SelectorType.Attribute:{if(e.namespace!=null)throw new Error("Namespaced attributes are not yet supported by css-select");return(!r.xmlMode||r.lowerCaseAttributeNames)&&(e.name=e.name.toLowerCase()),vDe[e.action](t,e,r)}case Cc.SelectorType.Pseudo:return wDe(t,e,r,n,s);case Cc.SelectorType.Tag:{if(e.namespace!=null)throw new Error("Namespaced tag names are not yet supported by css-select");let{name:o}=e;return(!r.xmlMode||r.lowerCaseTags)&&(o=o.toLowerCase()),function(u){return i.getName(u)===o&&t(u)}}case Cc.SelectorType.Descendant:{if(r.cacheResults===!1||typeof WeakSet>"u")return function(u){let l=u;for(;l=tz(l,i);)if(t(l))return!0;return!1};let o=new WeakSet;return function(u){let l=u;for(;l=tz(l,i);)if(!o.has(l)){if(i.isTag(l)&&t(l))return!0;o.add(l)}return!1}}case"_flexibleDescendant":return function(c){let u=c;do if(t(u))return!0;while(u=tz(u,i));return!1};case Cc.SelectorType.Parent:return function(c){return i.getChildren(c).some(u=>i.isTag(u)&&t(u))};case Cc.SelectorType.Child:return function(c){let u=i.getParent(c);return u!=null&&i.isTag(u)&&t(u)};case Cc.SelectorType.Sibling:return function(c){let u=i.getSiblings(c);for(let l=0;le.some(ODe)))}var mXt={type:gu.SelectorType.Descendant},hXt={type:"_flexibleDescendant"},gXt={type:gu.SelectorType.Pseudo,name:"scope",data:null};function yXt(t,{adapter:e},r){let n=!!r?.every(s=>{let i=e.isTag(s)&&e.getParent(s);return s===XG||i&&e.isTag(i)});for(let s of t){if(!(s.length>0&&fI(s[0])&&s[0].type!==gu.SelectorType.Descendant))if(n&&!s.some(ODe))s.unshift(mXt);else continue;s.unshift(gXt)}}function SD(t,e,r){var n;t.forEach(GG),r=(n=e.context)!==null&&n!==void 0?n:r;let s=Array.isArray(r),i=r&&(Array.isArray(r)?r:[r]);if(e.relativeSelector!==!1)yXt(t,e,i);else if(t.some(c=>c.length>0&&fI(c[0])))throw new Error("Relative selectors are not allowed when the `relativeSelector` option is disabled");let a=!1,o=t.map(c=>{if(c.length>=2){let[u,l]=c;u.type!==gu.SelectorType.Pseudo||u.name!=="scope"||(s&&l.type===gu.SelectorType.Descendant?c[1]=hXt:(l.type===gu.SelectorType.Adjacent||l.type===gu.SelectorType.Sibling)&&(a=!0))}return AXt(c,e,i)}).reduce(xXt,lf.default.falseFunc);return o.shouldTestNextSiblings=a,o}function AXt(t,e,r){var n;return t.reduce((s,i)=>s===lf.default.falseFunc?lf.default.falseFunc:RDe(s,i,e,r,SD),(n=e.rootFunc)!==null&&n!==void 0?n:lf.default.trueFunc)}function xXt(t,e){return e===lf.default.falseFunc||t===lf.default.trueFunc?t:t===lf.default.falseFunc||e===lf.default.trueFunc?e:function(n){return t(n)||e(n)}}var kDe=(t,e)=>t===e,bXt={adapter:E0,equals:kDe};function PDe(t){var e,r,n,s;let i=t??bXt;return(e=i.adapter)!==null&&e!==void 0||(i.adapter=E0),(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:kDe),i}function nz(t){return function(r,n,s){let i=PDe(n);return t(r,i,s)}}var RKr=nz(NDe),NKr=nz(vD),ID=nz(SD);function DDe(t){return function(r,n,s){let i=PDe(s);typeof r!="function"&&(r=vD(r,i,n));let a=CD(n,i.adapter,r.shouldTestNextSiblings);return t(r,a,i)}}function CD(t,e,r=!1){return r&&(t=_Xt(t,e)),Array.isArray(t)?e.removeSubsets(t):e.getChildren(t)}function _Xt(t,e){let r=Array.isArray(t)?t.slice(0):[t],n=r.length;for(let s=0;st===rz.default.falseFunc||!e||e.length===0?[]:r.adapter.findAll(t,e)),kKr=DDe((t,e,r)=>t===rz.default.falseFunc||!e||e.length===0?null:r.adapter.findOne(t,e));var wD=Ce(S0(),1);var EXt=new Set(["first","last","eq","gt","nth","lt","even","odd"]);function fb(t){return t.type!=="pseudo"?!1:EXt.has(t.name)?!0:t.name==="not"&&Array.isArray(t.data)?t.data.some(e=>e.some(fb)):!1}function BDe(t,e,r){let n=e!=null?parseInt(e,10):NaN;switch(t){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 LDe(t){for(;t.parent;)t=t.parent;return t}function TD(t){let e=[],r=[];for(let n of t)n.some(fb)?e.push(n):r.push(n);return[r,e]}var vXt={type:ao.SelectorType.Universal,namespace:null},SXt={type:ao.SelectorType.Pseudo,name:"scope",data:null};function az(t,e,r={}){return oz([t],e,r)}function oz(t,e,r={}){if(typeof e=="function")return t.some(e);let[n,s]=TD((0,ao.parse)(e));return n.length>0&&t.some(ID(n,r))||s.some(i=>WDe(i,t,r).length>0)}function IXt(t,e,r,n){let s=typeof r=="string"?parseInt(r,10):NaN;switch(t){case"first":case"lt":return e;case"last":return e.length>0?[e[e.length-1]]:e;case"nth":case"eq":return isFinite(s)&&Math.abs(s)a%2===0);case"odd":return e.filter((i,a)=>a%2===1);case"not":{let i=new Set(MDe(r,e,n));return e.filter(a=>!i.has(a))}}}function cz(t,e,r={}){return MDe((0,ao.parse)(t),e,r)}function MDe(t,e,r){if(e.length===0)return[];let[n,s]=TD(t),i;if(n.length){let a=iz(e,n,r);if(s.length===0)return a;a.length&&(i=new Set(a))}for(let a=0;ait(l)&&!i.has(l)):e).length===0)break;let u=WDe(o,e,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===e.length?e:e.filter(a=>i.has(a)):[]}function WDe(t,e,r){var n;if(t.some(ao.isTraversal)){let s=(n=r.root)!==null&&n!==void 0?n:LDe(e[0]),i={...r,context:e,relativeSelector:!1};return t.push(SXt),RD(s,t,i,!0,e.length)}return RD(e,t,r,!1,e.length)}function $De(t,e,r={},n=1/0){if(typeof t=="function")return UDe(e,t);let[s,i]=TD((0,ao.parse)(t)),a=i.map(o=>RD(e,o,r,!0,n));return s.length&&a.push(sz(e,s,r,n)),a.length===0?[]:a.length===1?a[0]:b0(a.reduce((o,c)=>[...o,...c]))}function RD(t,e,r,n,s){let i=e.findIndex(fb),a=e.slice(0,i),o=e[i],c=e.length-1===i?s:1/0,u=BDe(o.name,o.data,c);if(u===0)return[];let d=(a.length===0&&!Array.isArray(t)?rb(t).filter(it):a.length===0?(Array.isArray(t)?t:[t]).filter(it):n||a.some(ao.isTraversal)?sz(t,[a],r,u):iz(t,[a],r)).slice(0,u),f=IXt(o.name,d,o.data,r);if(f.length===0||e.length===i+1)return f;let p=e.slice(i+1),m=p.some(ao.isTraversal);if(m){if((0,ao.isTraversal)(p[0])){let{type:h}=p[0];(h===ao.SelectorType.Sibling||h===ao.SelectorType.Adjacent)&&(f=CD(f,E0,!0)),p.unshift(vXt)}r={...r,relativeSelector:!1,rootFunc:h=>f.includes(h)}}else r.rootFunc&&r.rootFunc!==wD.trueFunc&&(r={...r,rootFunc:wD.trueFunc});return p.some(fb)?RD(f,p,r,!1,s):m?sz(f,[p],r,s):iz(f,[p],r)}function sz(t,e,r,n){let s=ID(e,r,t);return UDe(t,s,n)}function UDe(t,e,r=1/0){let n=CD(t,E0,e.shouldTestNextSiblings);return dD(s=>it(s)&&e(s),n,!0,r)}function iz(t,e,r){let n=(Array.isArray(t)?t:[t]).filter(it);if(n.length===0)return n;let s=ID(e,r);return s===wD.trueFunc?n:n.filter(s)}var TXt=/^\s*[~+]/;function wXt(t){var e;if(!t)return this._make([]);let r=this.toArray();if(typeof t!="string"){let i=ko(t)?t.toArray():[t];return this._make(i.filter(a=>r.some(o=>UG(o,a))))}let n=TXt.test(t)?r:this.children().toArray(),s={context:r,root:(e=this._root)===null||e===void 0?void 0:e[0],xmlMode:this.options.xmlMode,lowerCaseTags:this.options.lowerCaseTags,lowerCaseAttributeNames:this.options.lowerCaseAttributeNames,pseudos:this.options.pseudos,quirksMode:this.options.quirksMode};return this._make($De(t,n,s))}function uz(t){return function(e,...r){return function(n){var s;let i=t(e,this);return n&&(i=fz(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)}}}var hI=uz((t,e)=>{let r=[];for(let n=0;n{let r=[];for(let n=0;n{let a=[];return pn(i,o=>{for(let c;(c=s(o))&&!r?.(c,a.length);o=c)a.push(c)}),a})(t,...e);return function(s,i){r=typeof s=="string"?o=>az(o,s,this.options):s?gI(s):null;let a=n.call(this,i);return r=null,a}}function pb(t){return Array.from(new Set(t))}var RXt=lz(({parent:t})=>t&&!hu(t)?t:null,pb),NXt=hI(t=>{let e=[];for(;t.parent&&!hu(t.parent);)e.push(t.parent),t=t.parent;return e},b0,t=>t.reverse()),OXt=dz(({parent:t})=>t&&!hu(t)?t:null,b0,t=>t.reverse());function kXt(t){var e;let r=[];if(!t)return this._make(r);let n={xmlMode:this.options.xmlMode,root:(e=this._root)===null||e===void 0?void 0:e[0]},s=typeof t=="string"?i=>az(i,t,n):gI(t);return pn(this,i=>{for(;i&&it(i);){if(s(i,0)){r.includes(i)||r.push(i);break}i=i.parent}}),this._make(r)}var PXt=lz(t=>uD(t)),DXt=hI(t=>{let e=[];for(;t.next;)t=t.next,it(t)&&e.push(t);return e},pb),BXt=dz(t=>uD(t),pb),LXt=lz(t=>lD(t)),MXt=hI(t=>{let e=[];for(;t.prev;)t=t.prev,it(t)&&e.push(t);return e},pb),WXt=dz(t=>lD(t),pb),$Xt=hI(t=>BG(t).filter(e=>it(e)&&e!==t),b0),UXt=hI(t=>rb(t).filter(it),pb);function FXt(){let t=this.toArray().reduce((e,r)=>tn(r)?e.concat(r.children):e,[]);return this._make(t)}function qXt(t){let e=0,r=this.length;for(;et.call(e,r,e):ko(t)?e=>Array.prototype.includes.call(t,e):function(e){return t===e}}function QXt(t){var e;return this._make(fz(this.toArray(),t,this.options.xmlMode,(e=this._root)===null||e===void 0?void 0:e[0]))}function fz(t,e,r,n){return typeof e=="string"?cz(e,t,{xmlMode:r,root:n}):t.filter(gI(e))}function HXt(t){let e=this.toArray();return typeof t=="string"?oz(e.filter(it),t,this.options):t?e.some(gI(t)):!1}function GXt(t){let e=this.toArray();if(typeof t=="string"){let r=new Set(cz(t,e,this.options));e=e.filter(n=>!r.has(n))}else{let r=gI(t);e=e.filter((n,s)=>!r(n,s))}return this._make(e)}function zXt(t){return this.filter(typeof t=="string"?`:has(${t})`:(e,r)=>this._make(r).find(t).length>0)}function KXt(){return this.length>1?this._make(this[0]):this}function VXt(){return this.length>0?this._make(this[this.length-1]):this}function YXt(t){var e;return t=+t,t===0&&this.length<=1?this:(t<0&&(t=this.length+t),this._make((e=this[t])!==null&&e!==void 0?e:[]))}function JXt(t){return t==null?this.toArray():this[t<0?this.length+t:t]}function XXt(){return Array.prototype.slice.call(this)}function ZXt(t){let e,r;return t==null?(e=this.parent().children(),r=this[0]):typeof t=="string"?(e=this._make(t),r=this[0]):(e=this,r=ko(t)?t[0]:t),Array.prototype.indexOf.call(e,r)}function eZt(t,e){return this._make(Array.prototype.slice.call(this,t,e))}function tZt(){var t;return(t=this.prevObject)!==null&&t!==void 0?t:this._make([])}function rZt(t,e){let r=this._make(t,e),n=b0([...this.get(),...r.get()]);return this._make(n)}function nZt(t){return this.prevObject?this.add(t?this.prevObject.filter(t):this.prevObject):this}var mz={};os(mz,{_makeDomArray:()=>sZt,after:()=>pZt,append:()=>oZt,appendTo:()=>iZt,before:()=>hZt,clone:()=>vZt,empty:()=>xZt,html:()=>bZt,insertAfter:()=>mZt,insertBefore:()=>gZt,prepend:()=>cZt,prependTo:()=>aZt,remove:()=>yZt,replaceWith:()=>AZt,text:()=>EZt,toString:()=>_Zt,unwrap:()=>dZt,wrap:()=>uZt,wrapAll:()=>fZt,wrapInner:()=>lZt});function FDe(t){return function(r,n,s,i){if(typeof Buffer<"u"&&Buffer.isBuffer(r)&&(r=r.toString()),typeof r=="string")return t(r,n,s,i);let a=r;if(!Array.isArray(a)&&hu(a))return a;let o=new Oo([]);return I0(a,o),o}}function I0(t,e){let r=Array.isArray(t)?t:[t];e?e.children=r:e=null;for(let n=0;nr.concat(this._makeDomArray(n,e)),[]):typeof t=="string"?this._parse(t,this.options,!1,null).children:e?hD([t]):[t]}function qDe(t){return function(...e){let r=this.length-1;return pn(this,(n,s)=>{if(!tn(n))return;let i=typeof e[0]=="function"?e[0].call(n,s,this._render(n.children)):e,a=this._makeDomArray(i,s=t.length?null:t[e+r];for(let l=0;l-1&&(f.children.splice(m,1),s===f&&e>m&&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]),t.splice(...o)}function iZt(t){return(ko(t)?t:this._make(t)).append(this),this}function aZt(t){return(ko(t)?t:this._make(t)).prepend(this),this}var oZt=qDe((t,e,r)=>{C0(e,e.length,0,t,r)}),cZt=qDe((t,e,r)=>{C0(e,0,0,t,r)});function jDe(t){return function(e){let r=this.length-1,n=this.parents().last();for(let s=0;s{let{parent:n}=t;if(!n)return;let s=n.children,i=s.indexOf(t);I0([t],e),C0(s,i,0,r,n)}),lZt=jDe((t,e,r)=>{tn(t)&&(I0(t.children,e),I0(r,t))});function dZt(t){return this.parent(t).not("body").each((e,r)=>{this._make(r).replaceWith(r.children)}),this}function fZt(t){let e=this[0];if(e){let r=this._make(typeof t=="function"?t.call(e,0,e):t).insertBefore(e),n;for(let i=0;i{let{parent:s}=r;if(!tn(r)||!s)return;let i=s.children,a=i.indexOf(r);if(a<0)return;let o=typeof t[0]=="function"?t[0].call(r,n,this._render(r.children)):t,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||(C0(i,a+1,0,n,s),e.push(...n))}),this._make(e)}function hZt(...t){let e=this.length-1;return pn(this,(r,n)=>{let{parent:s}=r;if(!tn(r)||!s)return;let i=s.children,a=i.indexOf(r);if(a<0)return;let o=typeof t[0]=="function"?t[0].call(r,n,this._render(r.children)):t,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||(C0(a,o,0,s,i),r.push(...s))}),this._make(r)}function yZt(t){let e=t?this.filter(t):this;return pn(e,r=>{of(r),r.prev=r.next=r.parent=null}),this}function AZt(t){return pn(this,(e,r)=>{let{parent:n}=e;if(!n)return;let s=n.children,i=typeof t=="function"?t.call(e,r,e):t,a=this._makeDomArray(i);I0(a,null);let o=s.indexOf(e);C0(s,o,1,a,n),a.includes(e)||(e.parent=e.prev=e.next=null)})}function xZt(){return pn(this,t=>{tn(t)&&(t.children.forEach(e=>{e.next=e.prev=e.parent=null}),t.children.length=0)})}function bZt(t){if(t===void 0){let e=this[0];return!e||!tn(e)?null:this._render(e.children)}return pn(this,e=>{if(!tn(e))return;e.children.forEach(n=>{n.next=n.prev=n.parent=null});let r=ko(t)?t.toArray():this._parse(`${t}`,this.options,!1,e).children;I0(r,e)})}function _Zt(){return this._render(this)}function EZt(t){return t===void 0?cf(this):typeof t=="function"?pn(this,(e,r)=>this._make(e).text(t.call(e,r,cf([e])))):pn(this,e=>{if(!tn(e))return;e.children.forEach(n=>{n.next=n.prev=n.parent=null});let r=new vl(`${t}`);I0(r,e)})}function vZt(){return this._make(hD(this.get()))}var hz={};os(hz,{css:()=>SZt});function SZt(t,e){if(t!=null&&e!=null||typeof t=="object"&&!Array.isArray(t))return pn(this,(r,n)=>{it(r)&&QDe(r,t,e,n)});if(this.length!==0)return HDe(this[0],t)}function QDe(t,e,r,n){if(typeof e=="string"){let s=HDe(t),i=typeof r=="function"?r.call(t,n,s[e]):r;i===""?delete s[e]:i!=null&&(s[e]=i),t.attribs.style=IZt(s)}else typeof e=="object"&&Object.keys(e).forEach((s,i)=>{QDe(t,s,e[s],i)})}function HDe(t,e){if(!t||!it(t))return;let r=CZt(t.attribs.style);if(typeof e=="string")return r[e];if(Array.isArray(e)){let n={};return e.forEach(s=>{r[s]!=null&&(n[s]=r[s])}),n}return r}function IZt(t){return Object.keys(t).reduce((e,r)=>`${e}${e?" ":""}${r}: ${t[r]};`,"")}function CZt(t){if(t=(t||"").trim(),!t)return{};let e={},r;for(let n of t.split(";")){let s=n.indexOf(":");if(s<1||s===n.length-1){let i=n.trimEnd();i.length>0&&r!==void 0&&(e[r]+=`;${i}`)}else r=n.slice(0,s).trim(),e[r]=n.slice(s+1).trim()}return e}var gz={};os(gz,{serialize:()=>wZt,serializeArray:()=>RZt});var GDe="input,select,textarea,keygen",TZt=/%20/g,zDe=/\r?\n/g;function wZt(){return this.serializeArray().map(r=>`${encodeURIComponent(r.name)}=${encodeURIComponent(r.value)}`).join("&").replace(TZt,"+")}function RZt(){return this.map((t,e)=>{let r=this._make(e);return it(e)&&e.name==="form"?r.find(GDe).toArray():r.filter(GDe).toArray()}).filter('[name!=""]:enabled:not(:submit, :button, :image, :reset, :file):matches([checked], :not(:checkbox, :radio))').map((t,e)=>{var r;let n=this._make(e),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(zDe,`\r +`)})):{name:s,value:i.replace(zDe,`\r +`)}}).toArray()}var T0=class{constructor(e,r,n){if(this.length=0,this.options=n,this._root=r,e){for(let s=0;s=55296&&t<=57343}function VDe(t){return t>=56320&&t<=57343}function YDe(t,e){return(t-55296)*1024+9216+e}function OD(t){return t!==32&&t!==10&&t!==13&&t!==9&&t!==12&&t>=1&&t<=31||t>=127&&t<=159}function kD(t){return t>=64976&&t<=65007||OZt.has(t)}var ye;(function(t){t.controlCharacterInInputStream="control-character-in-input-stream",t.noncharacterInInputStream="noncharacter-in-input-stream",t.surrogateInInputStream="surrogate-in-input-stream",t.nonVoidHtmlElementStartTagWithTrailingSolidus="non-void-html-element-start-tag-with-trailing-solidus",t.endTagWithAttributes="end-tag-with-attributes",t.endTagWithTrailingSolidus="end-tag-with-trailing-solidus",t.unexpectedSolidusInTag="unexpected-solidus-in-tag",t.unexpectedNullCharacter="unexpected-null-character",t.unexpectedQuestionMarkInsteadOfTagName="unexpected-question-mark-instead-of-tag-name",t.invalidFirstCharacterOfTagName="invalid-first-character-of-tag-name",t.unexpectedEqualsSignBeforeAttributeName="unexpected-equals-sign-before-attribute-name",t.missingEndTagName="missing-end-tag-name",t.unexpectedCharacterInAttributeName="unexpected-character-in-attribute-name",t.unknownNamedCharacterReference="unknown-named-character-reference",t.missingSemicolonAfterCharacterReference="missing-semicolon-after-character-reference",t.unexpectedCharacterAfterDoctypeSystemIdentifier="unexpected-character-after-doctype-system-identifier",t.unexpectedCharacterInUnquotedAttributeValue="unexpected-character-in-unquoted-attribute-value",t.eofBeforeTagName="eof-before-tag-name",t.eofInTag="eof-in-tag",t.missingAttributeValue="missing-attribute-value",t.missingWhitespaceBetweenAttributes="missing-whitespace-between-attributes",t.missingWhitespaceAfterDoctypePublicKeyword="missing-whitespace-after-doctype-public-keyword",t.missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers="missing-whitespace-between-doctype-public-and-system-identifiers",t.missingWhitespaceAfterDoctypeSystemKeyword="missing-whitespace-after-doctype-system-keyword",t.missingQuoteBeforeDoctypePublicIdentifier="missing-quote-before-doctype-public-identifier",t.missingQuoteBeforeDoctypeSystemIdentifier="missing-quote-before-doctype-system-identifier",t.missingDoctypePublicIdentifier="missing-doctype-public-identifier",t.missingDoctypeSystemIdentifier="missing-doctype-system-identifier",t.abruptDoctypePublicIdentifier="abrupt-doctype-public-identifier",t.abruptDoctypeSystemIdentifier="abrupt-doctype-system-identifier",t.cdataInHtmlContent="cdata-in-html-content",t.incorrectlyOpenedComment="incorrectly-opened-comment",t.eofInScriptHtmlCommentLikeText="eof-in-script-html-comment-like-text",t.eofInDoctype="eof-in-doctype",t.nestedComment="nested-comment",t.abruptClosingOfEmptyComment="abrupt-closing-of-empty-comment",t.eofInComment="eof-in-comment",t.incorrectlyClosedComment="incorrectly-closed-comment",t.eofInCdata="eof-in-cdata",t.absenceOfDigitsInNumericCharacterReference="absence-of-digits-in-numeric-character-reference",t.nullCharacterReference="null-character-reference",t.surrogateCharacterReference="surrogate-character-reference",t.characterReferenceOutsideUnicodeRange="character-reference-outside-unicode-range",t.controlCharacterReference="control-character-reference",t.noncharacterCharacterReference="noncharacter-character-reference",t.missingWhitespaceBeforeDoctypeName="missing-whitespace-before-doctype-name",t.missingDoctypeName="missing-doctype-name",t.invalidCharacterSequenceAfterDoctypeName="invalid-character-sequence-after-doctype-name",t.duplicateAttribute="duplicate-attribute",t.nonConformingDoctype="non-conforming-doctype",t.missingDoctype="missing-doctype",t.misplacedDoctype="misplaced-doctype",t.endTagWithoutMatchingOpenElement="end-tag-without-matching-open-element",t.closingOfElementWithOpenChildElements="closing-of-element-with-open-child-elements",t.disallowedContentInNoscriptInHead="disallowed-content-in-noscript-in-head",t.openElementsLeftAfterEof="open-elements-left-after-eof",t.abandonedHeadElementChild="abandoned-head-element-child",t.misplacedStartTagForHeadElement="misplaced-start-tag-for-head-element",t.nestedNoscriptInHead="nested-noscript-in-head",t.eofInElementThatCanContainOnlyText="eof-in-element-that-can-contain-only-text"})(ye||(ye={}));var PZt=65536,PD=class{constructor(e){this.handler=e,this.html="",this.pos=-1,this.lastGapPos=-2,this.gapStack=[],this.skipNextNewLine=!1,this.lastChunkWritten=!1,this.endOfChunkHit=!1,this.bufferWaterline=PZt,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(e,r){let{line:n,col:s,offset:i}=this,a=s+r,o=i+r;return{code:e,startLine:n,endLine:n,startCol:a,endCol:a,startOffset:o,endOffset:o}}_err(e){this.handler.onParseError&&this.lastErrOffset!==this.offset&&(this.lastErrOffset=this.offset,this.handler.onParseError(this.getError(e,0)))}_addGap(){this.gapStack.push(this.lastGapPos),this.lastGapPos=this.pos}_processSurrogate(e){if(this.pos!==this.html.length-1){let r=this.html.charCodeAt(this.pos+1);if(VDe(r))return this.pos++,this._addGap(),YDe(e,r)}else if(!this.lastChunkWritten)return this.endOfChunkHit=!0,H.EOF;return this._err(ye.surrogateInInputStream),e}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(e,r){this.html.length>0?this.html+=e:this.html=e,this.endOfChunkHit=!1,this.lastChunkWritten=r}insertHtmlAtCurrentPos(e){this.html=this.html.substring(0,this.pos+1)+e+this.html.substring(this.pos+1),this.endOfChunkHit=!1}startsWith(e,r){if(this.pos+e.length>this.html.length)return this.endOfChunkHit=!this.lastChunkWritten,!1;if(r)return this.html.startsWith(e,this.pos);for(let n=0;n=this.html.length)return this.endOfChunkHit=!this.lastChunkWritten,H.EOF;let n=this.html.charCodeAt(r);return n===H.CARRIAGE_RETURN?H.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,H.EOF;let e=this.html.charCodeAt(this.pos);return e===H.CARRIAGE_RETURN?(this.isEol=!0,this.skipNextNewLine=!0,H.LINE_FEED):e===H.LINE_FEED&&(this.isEol=!0,this.skipNextNewLine)?(this.line--,this.skipNextNewLine=!1,this._addGap(),this.advance()):(this.skipNextNewLine=!1,ND(e)&&(e=this._processSurrogate(e)),this.handler.onParseError===null||e>31&&e<127||e===H.LINE_FEED||e===H.CARRIAGE_RETURN||e>159&&e<64976||this._checkForProblematicCharacters(e),e)}_checkForProblematicCharacters(e){OD(e)?this._err(ye.controlCharacterInInputStream):kD(e)&&this._err(ye.noncharacterInInputStream)}retreat(e){for(this.pos-=e;this.pos=0;r--)if(t.attrs[r].name===e)return t.attrs[r].value;return null}var BD=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(t=>t.charCodeAt(0)));var yz,BZt=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]]),JDe=(yz=String.fromCodePoint)!==null&&yz!==void 0?yz:function(t){let e="";return t>65535&&(t-=65536,e+=String.fromCharCode(t>>>10&1023|55296),t=56320|t&1023),e+=String.fromCharCode(t),e};function Az(t){var e;return t>=55296&&t<=57343||t>1114111?65533:(e=BZt.get(t))!==null&&e!==void 0?e:t}var ti;(function(t){t[t.NUM=35]="NUM",t[t.SEMI=59]="SEMI",t[t.EQUALS=61]="EQUALS",t[t.ZERO=48]="ZERO",t[t.NINE=57]="NINE",t[t.LOWER_A=97]="LOWER_A",t[t.LOWER_F=102]="LOWER_F",t[t.LOWER_X=120]="LOWER_X",t[t.LOWER_Z=122]="LOWER_Z",t[t.UPPER_A=65]="UPPER_A",t[t.UPPER_F=70]="UPPER_F",t[t.UPPER_Z=90]="UPPER_Z"})(ti||(ti={}));var MZt=32,w0;(function(t){t[t.VALUE_LENGTH=49152]="VALUE_LENGTH",t[t.BRANCH_LENGTH=16256]="BRANCH_LENGTH",t[t.JUMP_TABLE=127]="JUMP_TABLE"})(w0||(w0={}));function xz(t){return t>=ti.ZERO&&t<=ti.NINE}function WZt(t){return t>=ti.UPPER_A&&t<=ti.UPPER_F||t>=ti.LOWER_A&&t<=ti.LOWER_F}function $Zt(t){return t>=ti.UPPER_A&&t<=ti.UPPER_Z||t>=ti.LOWER_A&&t<=ti.LOWER_Z||xz(t)}function UZt(t){return t===ti.EQUALS||$Zt(t)}var ei;(function(t){t[t.EntityStart=0]="EntityStart",t[t.NumericStart=1]="NumericStart",t[t.NumericDecimal=2]="NumericDecimal",t[t.NumericHex=3]="NumericHex",t[t.NamedEntity=4]="NamedEntity"})(ei||(ei={}));var Il;(function(t){t[t.Legacy=0]="Legacy",t[t.Strict=1]="Strict",t[t.Attribute=2]="Attribute"})(Il||(Il={}));var LD=class{constructor(e,r,n){this.decodeTree=e,this.emitCodePoint=r,this.errors=n,this.state=ei.EntityStart,this.consumed=1,this.result=0,this.treeIndex=0,this.excess=1,this.decodeMode=Il.Strict}startEntity(e){this.decodeMode=e,this.state=ei.EntityStart,this.result=0,this.treeIndex=0,this.excess=1,this.consumed=1}write(e,r){switch(this.state){case ei.EntityStart:return e.charCodeAt(r)===ti.NUM?(this.state=ei.NumericStart,this.consumed+=1,this.stateNumericStart(e,r+1)):(this.state=ei.NamedEntity,this.stateNamedEntity(e,r));case ei.NumericStart:return this.stateNumericStart(e,r);case ei.NumericDecimal:return this.stateNumericDecimal(e,r);case ei.NumericHex:return this.stateNumericHex(e,r);case ei.NamedEntity:return this.stateNamedEntity(e,r)}}stateNumericStart(e,r){return r>=e.length?-1:(e.charCodeAt(r)|MZt)===ti.LOWER_X?(this.state=ei.NumericHex,this.consumed+=1,this.stateNumericHex(e,r+1)):(this.state=ei.NumericDecimal,this.stateNumericDecimal(e,r))}addToNumericResult(e,r,n,s){if(r!==n){let i=n-r;this.result=this.result*Math.pow(s,i)+Number.parseInt(e.substr(r,i),s),this.consumed+=i}}stateNumericHex(e,r){let n=r;for(;r>14;for(;r>14,i!==0){if(a===ti.SEMI)return this.emitNamedEntityData(this.treeIndex,i,this.consumed+this.excess);this.decodeMode!==Il.Strict&&(this.result=this.treeIndex,this.consumed+=this.excess,this.excess=0)}}return-1}emitNotTerminatedNamedEntity(){var e;let{result:r,decodeTree:n}=this,s=(n[r]&w0.VALUE_LENGTH)>>14;return this.emitNamedEntityData(r,s,this.consumed),(e=this.errors)===null||e===void 0||e.missingSemicolonAfterCharacterReference(),this.consumed}emitNamedEntityData(e,r,n){let{decodeTree:s}=this;return this.emitCodePoint(r===1?s[e]&~w0.VALUE_LENGTH:s[e+1],n),r===3&&this.emitCodePoint(s[e+2],n),n}end(){var e;switch(this.state){case ei.NamedEntity:return this.result!==0&&(this.decodeMode!==Il.Attribute||this.result===this.treeIndex)?this.emitNotTerminatedNamedEntity():0;case ei.NumericDecimal:return this.emitNumericEntity(0,2);case ei.NumericHex:return this.emitNumericEntity(0,3);case ei.NumericStart:return(e=this.errors)===null||e===void 0||e.absenceOfDigitsInNumericCharacterReference(this.consumed),0;case ei.EntityStart:return 0}}};function FZt(t,e,r,n){let s=(e&w0.BRANCH_LENGTH)>>7,i=e&w0.JUMP_TABLE;if(s===0)return i!==0&&n===i?r:-1;if(i){let c=n-i;return c<0||c>=s?-1:t[r+c]-1}let a=r,o=a+s-1;for(;a<=o;){let c=a+o>>>1,u=t[c];if(un)o=c-1;else return t[c+s]}return-1}var MD={};os(MD,{ATTRS:()=>Cl,DOCUMENT_MODE:()=>Vi,NS:()=>Ee,NUMBERED_HEADERS:()=>mb,SPECIAL_ELEMENTS:()=>bz,TAG_ID:()=>C,TAG_NAMES:()=>pe,getTagID:()=>R0,hasUnescapedText:()=>_z});var Ee;(function(t){t.HTML="http://www.w3.org/1999/xhtml",t.MATHML="http://www.w3.org/1998/Math/MathML",t.SVG="http://www.w3.org/2000/svg",t.XLINK="http://www.w3.org/1999/xlink",t.XML="http://www.w3.org/XML/1998/namespace",t.XMLNS="http://www.w3.org/2000/xmlns/"})(Ee||(Ee={}));var Cl;(function(t){t.TYPE="type",t.ACTION="action",t.ENCODING="encoding",t.PROMPT="prompt",t.NAME="name",t.COLOR="color",t.FACE="face",t.SIZE="size"})(Cl||(Cl={}));var Vi;(function(t){t.NO_QUIRKS="no-quirks",t.QUIRKS="quirks",t.LIMITED_QUIRKS="limited-quirks"})(Vi||(Vi={}));var pe;(function(t){t.A="a",t.ADDRESS="address",t.ANNOTATION_XML="annotation-xml",t.APPLET="applet",t.AREA="area",t.ARTICLE="article",t.ASIDE="aside",t.B="b",t.BASE="base",t.BASEFONT="basefont",t.BGSOUND="bgsound",t.BIG="big",t.BLOCKQUOTE="blockquote",t.BODY="body",t.BR="br",t.BUTTON="button",t.CAPTION="caption",t.CENTER="center",t.CODE="code",t.COL="col",t.COLGROUP="colgroup",t.DD="dd",t.DESC="desc",t.DETAILS="details",t.DIALOG="dialog",t.DIR="dir",t.DIV="div",t.DL="dl",t.DT="dt",t.EM="em",t.EMBED="embed",t.FIELDSET="fieldset",t.FIGCAPTION="figcaption",t.FIGURE="figure",t.FONT="font",t.FOOTER="footer",t.FOREIGN_OBJECT="foreignObject",t.FORM="form",t.FRAME="frame",t.FRAMESET="frameset",t.H1="h1",t.H2="h2",t.H3="h3",t.H4="h4",t.H5="h5",t.H6="h6",t.HEAD="head",t.HEADER="header",t.HGROUP="hgroup",t.HR="hr",t.HTML="html",t.I="i",t.IMG="img",t.IMAGE="image",t.INPUT="input",t.IFRAME="iframe",t.KEYGEN="keygen",t.LABEL="label",t.LI="li",t.LINK="link",t.LISTING="listing",t.MAIN="main",t.MALIGNMARK="malignmark",t.MARQUEE="marquee",t.MATH="math",t.MENU="menu",t.META="meta",t.MGLYPH="mglyph",t.MI="mi",t.MO="mo",t.MN="mn",t.MS="ms",t.MTEXT="mtext",t.NAV="nav",t.NOBR="nobr",t.NOFRAMES="noframes",t.NOEMBED="noembed",t.NOSCRIPT="noscript",t.OBJECT="object",t.OL="ol",t.OPTGROUP="optgroup",t.OPTION="option",t.P="p",t.PARAM="param",t.PLAINTEXT="plaintext",t.PRE="pre",t.RB="rb",t.RP="rp",t.RT="rt",t.RTC="rtc",t.RUBY="ruby",t.S="s",t.SCRIPT="script",t.SEARCH="search",t.SECTION="section",t.SELECT="select",t.SOURCE="source",t.SMALL="small",t.SPAN="span",t.STRIKE="strike",t.STRONG="strong",t.STYLE="style",t.SUB="sub",t.SUMMARY="summary",t.SUP="sup",t.TABLE="table",t.TBODY="tbody",t.TEMPLATE="template",t.TEXTAREA="textarea",t.TFOOT="tfoot",t.TD="td",t.TH="th",t.THEAD="thead",t.TITLE="title",t.TR="tr",t.TRACK="track",t.TT="tt",t.U="u",t.UL="ul",t.SVG="svg",t.VAR="var",t.WBR="wbr",t.XMP="xmp"})(pe||(pe={}));var C;(function(t){t[t.UNKNOWN=0]="UNKNOWN",t[t.A=1]="A",t[t.ADDRESS=2]="ADDRESS",t[t.ANNOTATION_XML=3]="ANNOTATION_XML",t[t.APPLET=4]="APPLET",t[t.AREA=5]="AREA",t[t.ARTICLE=6]="ARTICLE",t[t.ASIDE=7]="ASIDE",t[t.B=8]="B",t[t.BASE=9]="BASE",t[t.BASEFONT=10]="BASEFONT",t[t.BGSOUND=11]="BGSOUND",t[t.BIG=12]="BIG",t[t.BLOCKQUOTE=13]="BLOCKQUOTE",t[t.BODY=14]="BODY",t[t.BR=15]="BR",t[t.BUTTON=16]="BUTTON",t[t.CAPTION=17]="CAPTION",t[t.CENTER=18]="CENTER",t[t.CODE=19]="CODE",t[t.COL=20]="COL",t[t.COLGROUP=21]="COLGROUP",t[t.DD=22]="DD",t[t.DESC=23]="DESC",t[t.DETAILS=24]="DETAILS",t[t.DIALOG=25]="DIALOG",t[t.DIR=26]="DIR",t[t.DIV=27]="DIV",t[t.DL=28]="DL",t[t.DT=29]="DT",t[t.EM=30]="EM",t[t.EMBED=31]="EMBED",t[t.FIELDSET=32]="FIELDSET",t[t.FIGCAPTION=33]="FIGCAPTION",t[t.FIGURE=34]="FIGURE",t[t.FONT=35]="FONT",t[t.FOOTER=36]="FOOTER",t[t.FOREIGN_OBJECT=37]="FOREIGN_OBJECT",t[t.FORM=38]="FORM",t[t.FRAME=39]="FRAME",t[t.FRAMESET=40]="FRAMESET",t[t.H1=41]="H1",t[t.H2=42]="H2",t[t.H3=43]="H3",t[t.H4=44]="H4",t[t.H5=45]="H5",t[t.H6=46]="H6",t[t.HEAD=47]="HEAD",t[t.HEADER=48]="HEADER",t[t.HGROUP=49]="HGROUP",t[t.HR=50]="HR",t[t.HTML=51]="HTML",t[t.I=52]="I",t[t.IMG=53]="IMG",t[t.IMAGE=54]="IMAGE",t[t.INPUT=55]="INPUT",t[t.IFRAME=56]="IFRAME",t[t.KEYGEN=57]="KEYGEN",t[t.LABEL=58]="LABEL",t[t.LI=59]="LI",t[t.LINK=60]="LINK",t[t.LISTING=61]="LISTING",t[t.MAIN=62]="MAIN",t[t.MALIGNMARK=63]="MALIGNMARK",t[t.MARQUEE=64]="MARQUEE",t[t.MATH=65]="MATH",t[t.MENU=66]="MENU",t[t.META=67]="META",t[t.MGLYPH=68]="MGLYPH",t[t.MI=69]="MI",t[t.MO=70]="MO",t[t.MN=71]="MN",t[t.MS=72]="MS",t[t.MTEXT=73]="MTEXT",t[t.NAV=74]="NAV",t[t.NOBR=75]="NOBR",t[t.NOFRAMES=76]="NOFRAMES",t[t.NOEMBED=77]="NOEMBED",t[t.NOSCRIPT=78]="NOSCRIPT",t[t.OBJECT=79]="OBJECT",t[t.OL=80]="OL",t[t.OPTGROUP=81]="OPTGROUP",t[t.OPTION=82]="OPTION",t[t.P=83]="P",t[t.PARAM=84]="PARAM",t[t.PLAINTEXT=85]="PLAINTEXT",t[t.PRE=86]="PRE",t[t.RB=87]="RB",t[t.RP=88]="RP",t[t.RT=89]="RT",t[t.RTC=90]="RTC",t[t.RUBY=91]="RUBY",t[t.S=92]="S",t[t.SCRIPT=93]="SCRIPT",t[t.SEARCH=94]="SEARCH",t[t.SECTION=95]="SECTION",t[t.SELECT=96]="SELECT",t[t.SOURCE=97]="SOURCE",t[t.SMALL=98]="SMALL",t[t.SPAN=99]="SPAN",t[t.STRIKE=100]="STRIKE",t[t.STRONG=101]="STRONG",t[t.STYLE=102]="STYLE",t[t.SUB=103]="SUB",t[t.SUMMARY=104]="SUMMARY",t[t.SUP=105]="SUP",t[t.TABLE=106]="TABLE",t[t.TBODY=107]="TBODY",t[t.TEMPLATE=108]="TEMPLATE",t[t.TEXTAREA=109]="TEXTAREA",t[t.TFOOT=110]="TFOOT",t[t.TD=111]="TD",t[t.TH=112]="TH",t[t.THEAD=113]="THEAD",t[t.TITLE=114]="TITLE",t[t.TR=115]="TR",t[t.TRACK=116]="TRACK",t[t.TT=117]="TT",t[t.U=118]="U",t[t.UL=119]="UL",t[t.SVG=120]="SVG",t[t.VAR=121]="VAR",t[t.WBR=122]="WBR",t[t.XMP=123]="XMP"})(C||(C={}));var qZt=new Map([[pe.A,C.A],[pe.ADDRESS,C.ADDRESS],[pe.ANNOTATION_XML,C.ANNOTATION_XML],[pe.APPLET,C.APPLET],[pe.AREA,C.AREA],[pe.ARTICLE,C.ARTICLE],[pe.ASIDE,C.ASIDE],[pe.B,C.B],[pe.BASE,C.BASE],[pe.BASEFONT,C.BASEFONT],[pe.BGSOUND,C.BGSOUND],[pe.BIG,C.BIG],[pe.BLOCKQUOTE,C.BLOCKQUOTE],[pe.BODY,C.BODY],[pe.BR,C.BR],[pe.BUTTON,C.BUTTON],[pe.CAPTION,C.CAPTION],[pe.CENTER,C.CENTER],[pe.CODE,C.CODE],[pe.COL,C.COL],[pe.COLGROUP,C.COLGROUP],[pe.DD,C.DD],[pe.DESC,C.DESC],[pe.DETAILS,C.DETAILS],[pe.DIALOG,C.DIALOG],[pe.DIR,C.DIR],[pe.DIV,C.DIV],[pe.DL,C.DL],[pe.DT,C.DT],[pe.EM,C.EM],[pe.EMBED,C.EMBED],[pe.FIELDSET,C.FIELDSET],[pe.FIGCAPTION,C.FIGCAPTION],[pe.FIGURE,C.FIGURE],[pe.FONT,C.FONT],[pe.FOOTER,C.FOOTER],[pe.FOREIGN_OBJECT,C.FOREIGN_OBJECT],[pe.FORM,C.FORM],[pe.FRAME,C.FRAME],[pe.FRAMESET,C.FRAMESET],[pe.H1,C.H1],[pe.H2,C.H2],[pe.H3,C.H3],[pe.H4,C.H4],[pe.H5,C.H5],[pe.H6,C.H6],[pe.HEAD,C.HEAD],[pe.HEADER,C.HEADER],[pe.HGROUP,C.HGROUP],[pe.HR,C.HR],[pe.HTML,C.HTML],[pe.I,C.I],[pe.IMG,C.IMG],[pe.IMAGE,C.IMAGE],[pe.INPUT,C.INPUT],[pe.IFRAME,C.IFRAME],[pe.KEYGEN,C.KEYGEN],[pe.LABEL,C.LABEL],[pe.LI,C.LI],[pe.LINK,C.LINK],[pe.LISTING,C.LISTING],[pe.MAIN,C.MAIN],[pe.MALIGNMARK,C.MALIGNMARK],[pe.MARQUEE,C.MARQUEE],[pe.MATH,C.MATH],[pe.MENU,C.MENU],[pe.META,C.META],[pe.MGLYPH,C.MGLYPH],[pe.MI,C.MI],[pe.MO,C.MO],[pe.MN,C.MN],[pe.MS,C.MS],[pe.MTEXT,C.MTEXT],[pe.NAV,C.NAV],[pe.NOBR,C.NOBR],[pe.NOFRAMES,C.NOFRAMES],[pe.NOEMBED,C.NOEMBED],[pe.NOSCRIPT,C.NOSCRIPT],[pe.OBJECT,C.OBJECT],[pe.OL,C.OL],[pe.OPTGROUP,C.OPTGROUP],[pe.OPTION,C.OPTION],[pe.P,C.P],[pe.PARAM,C.PARAM],[pe.PLAINTEXT,C.PLAINTEXT],[pe.PRE,C.PRE],[pe.RB,C.RB],[pe.RP,C.RP],[pe.RT,C.RT],[pe.RTC,C.RTC],[pe.RUBY,C.RUBY],[pe.S,C.S],[pe.SCRIPT,C.SCRIPT],[pe.SEARCH,C.SEARCH],[pe.SECTION,C.SECTION],[pe.SELECT,C.SELECT],[pe.SOURCE,C.SOURCE],[pe.SMALL,C.SMALL],[pe.SPAN,C.SPAN],[pe.STRIKE,C.STRIKE],[pe.STRONG,C.STRONG],[pe.STYLE,C.STYLE],[pe.SUB,C.SUB],[pe.SUMMARY,C.SUMMARY],[pe.SUP,C.SUP],[pe.TABLE,C.TABLE],[pe.TBODY,C.TBODY],[pe.TEMPLATE,C.TEMPLATE],[pe.TEXTAREA,C.TEXTAREA],[pe.TFOOT,C.TFOOT],[pe.TD,C.TD],[pe.TH,C.TH],[pe.THEAD,C.THEAD],[pe.TITLE,C.TITLE],[pe.TR,C.TR],[pe.TRACK,C.TRACK],[pe.TT,C.TT],[pe.U,C.U],[pe.UL,C.UL],[pe.SVG,C.SVG],[pe.VAR,C.VAR],[pe.WBR,C.WBR],[pe.XMP,C.XMP]]);function R0(t){var e;return(e=qZt.get(t))!==null&&e!==void 0?e:C.UNKNOWN}var ke=C,bz={[Ee.HTML]:new Set([ke.ADDRESS,ke.APPLET,ke.AREA,ke.ARTICLE,ke.ASIDE,ke.BASE,ke.BASEFONT,ke.BGSOUND,ke.BLOCKQUOTE,ke.BODY,ke.BR,ke.BUTTON,ke.CAPTION,ke.CENTER,ke.COL,ke.COLGROUP,ke.DD,ke.DETAILS,ke.DIR,ke.DIV,ke.DL,ke.DT,ke.EMBED,ke.FIELDSET,ke.FIGCAPTION,ke.FIGURE,ke.FOOTER,ke.FORM,ke.FRAME,ke.FRAMESET,ke.H1,ke.H2,ke.H3,ke.H4,ke.H5,ke.H6,ke.HEAD,ke.HEADER,ke.HGROUP,ke.HR,ke.HTML,ke.IFRAME,ke.IMG,ke.INPUT,ke.LI,ke.LINK,ke.LISTING,ke.MAIN,ke.MARQUEE,ke.MENU,ke.META,ke.NAV,ke.NOEMBED,ke.NOFRAMES,ke.NOSCRIPT,ke.OBJECT,ke.OL,ke.P,ke.PARAM,ke.PLAINTEXT,ke.PRE,ke.SCRIPT,ke.SECTION,ke.SELECT,ke.SOURCE,ke.STYLE,ke.SUMMARY,ke.TABLE,ke.TBODY,ke.TD,ke.TEMPLATE,ke.TEXTAREA,ke.TFOOT,ke.TH,ke.THEAD,ke.TITLE,ke.TR,ke.TRACK,ke.UL,ke.WBR,ke.XMP]),[Ee.MATHML]:new Set([ke.MI,ke.MO,ke.MN,ke.MS,ke.MTEXT,ke.ANNOTATION_XML]),[Ee.SVG]:new Set([ke.TITLE,ke.FOREIGN_OBJECT,ke.DESC]),[Ee.XLINK]:new Set,[Ee.XML]:new Set,[Ee.XMLNS]:new Set},mb=new Set([ke.H1,ke.H2,ke.H3,ke.H4,ke.H5,ke.H6]),jZt=new Set([pe.STYLE,pe.SCRIPT,pe.XMP,pe.IFRAME,pe.NOEMBED,pe.NOFRAMES,pe.PLAINTEXT]);function _z(t,e){return jZt.has(t)||e&&t===pe.NOSCRIPT}var Y;(function(t){t[t.DATA=0]="DATA",t[t.RCDATA=1]="RCDATA",t[t.RAWTEXT=2]="RAWTEXT",t[t.SCRIPT_DATA=3]="SCRIPT_DATA",t[t.PLAINTEXT=4]="PLAINTEXT",t[t.TAG_OPEN=5]="TAG_OPEN",t[t.END_TAG_OPEN=6]="END_TAG_OPEN",t[t.TAG_NAME=7]="TAG_NAME",t[t.RCDATA_LESS_THAN_SIGN=8]="RCDATA_LESS_THAN_SIGN",t[t.RCDATA_END_TAG_OPEN=9]="RCDATA_END_TAG_OPEN",t[t.RCDATA_END_TAG_NAME=10]="RCDATA_END_TAG_NAME",t[t.RAWTEXT_LESS_THAN_SIGN=11]="RAWTEXT_LESS_THAN_SIGN",t[t.RAWTEXT_END_TAG_OPEN=12]="RAWTEXT_END_TAG_OPEN",t[t.RAWTEXT_END_TAG_NAME=13]="RAWTEXT_END_TAG_NAME",t[t.SCRIPT_DATA_LESS_THAN_SIGN=14]="SCRIPT_DATA_LESS_THAN_SIGN",t[t.SCRIPT_DATA_END_TAG_OPEN=15]="SCRIPT_DATA_END_TAG_OPEN",t[t.SCRIPT_DATA_END_TAG_NAME=16]="SCRIPT_DATA_END_TAG_NAME",t[t.SCRIPT_DATA_ESCAPE_START=17]="SCRIPT_DATA_ESCAPE_START",t[t.SCRIPT_DATA_ESCAPE_START_DASH=18]="SCRIPT_DATA_ESCAPE_START_DASH",t[t.SCRIPT_DATA_ESCAPED=19]="SCRIPT_DATA_ESCAPED",t[t.SCRIPT_DATA_ESCAPED_DASH=20]="SCRIPT_DATA_ESCAPED_DASH",t[t.SCRIPT_DATA_ESCAPED_DASH_DASH=21]="SCRIPT_DATA_ESCAPED_DASH_DASH",t[t.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN=22]="SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN",t[t.SCRIPT_DATA_ESCAPED_END_TAG_OPEN=23]="SCRIPT_DATA_ESCAPED_END_TAG_OPEN",t[t.SCRIPT_DATA_ESCAPED_END_TAG_NAME=24]="SCRIPT_DATA_ESCAPED_END_TAG_NAME",t[t.SCRIPT_DATA_DOUBLE_ESCAPE_START=25]="SCRIPT_DATA_DOUBLE_ESCAPE_START",t[t.SCRIPT_DATA_DOUBLE_ESCAPED=26]="SCRIPT_DATA_DOUBLE_ESCAPED",t[t.SCRIPT_DATA_DOUBLE_ESCAPED_DASH=27]="SCRIPT_DATA_DOUBLE_ESCAPED_DASH",t[t.SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH=28]="SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH",t[t.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN=29]="SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN",t[t.SCRIPT_DATA_DOUBLE_ESCAPE_END=30]="SCRIPT_DATA_DOUBLE_ESCAPE_END",t[t.BEFORE_ATTRIBUTE_NAME=31]="BEFORE_ATTRIBUTE_NAME",t[t.ATTRIBUTE_NAME=32]="ATTRIBUTE_NAME",t[t.AFTER_ATTRIBUTE_NAME=33]="AFTER_ATTRIBUTE_NAME",t[t.BEFORE_ATTRIBUTE_VALUE=34]="BEFORE_ATTRIBUTE_VALUE",t[t.ATTRIBUTE_VALUE_DOUBLE_QUOTED=35]="ATTRIBUTE_VALUE_DOUBLE_QUOTED",t[t.ATTRIBUTE_VALUE_SINGLE_QUOTED=36]="ATTRIBUTE_VALUE_SINGLE_QUOTED",t[t.ATTRIBUTE_VALUE_UNQUOTED=37]="ATTRIBUTE_VALUE_UNQUOTED",t[t.AFTER_ATTRIBUTE_VALUE_QUOTED=38]="AFTER_ATTRIBUTE_VALUE_QUOTED",t[t.SELF_CLOSING_START_TAG=39]="SELF_CLOSING_START_TAG",t[t.BOGUS_COMMENT=40]="BOGUS_COMMENT",t[t.MARKUP_DECLARATION_OPEN=41]="MARKUP_DECLARATION_OPEN",t[t.COMMENT_START=42]="COMMENT_START",t[t.COMMENT_START_DASH=43]="COMMENT_START_DASH",t[t.COMMENT=44]="COMMENT",t[t.COMMENT_LESS_THAN_SIGN=45]="COMMENT_LESS_THAN_SIGN",t[t.COMMENT_LESS_THAN_SIGN_BANG=46]="COMMENT_LESS_THAN_SIGN_BANG",t[t.COMMENT_LESS_THAN_SIGN_BANG_DASH=47]="COMMENT_LESS_THAN_SIGN_BANG_DASH",t[t.COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH=48]="COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH",t[t.COMMENT_END_DASH=49]="COMMENT_END_DASH",t[t.COMMENT_END=50]="COMMENT_END",t[t.COMMENT_END_BANG=51]="COMMENT_END_BANG",t[t.DOCTYPE=52]="DOCTYPE",t[t.BEFORE_DOCTYPE_NAME=53]="BEFORE_DOCTYPE_NAME",t[t.DOCTYPE_NAME=54]="DOCTYPE_NAME",t[t.AFTER_DOCTYPE_NAME=55]="AFTER_DOCTYPE_NAME",t[t.AFTER_DOCTYPE_PUBLIC_KEYWORD=56]="AFTER_DOCTYPE_PUBLIC_KEYWORD",t[t.BEFORE_DOCTYPE_PUBLIC_IDENTIFIER=57]="BEFORE_DOCTYPE_PUBLIC_IDENTIFIER",t[t.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED=58]="DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED",t[t.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED=59]="DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED",t[t.AFTER_DOCTYPE_PUBLIC_IDENTIFIER=60]="AFTER_DOCTYPE_PUBLIC_IDENTIFIER",t[t.BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS=61]="BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS",t[t.AFTER_DOCTYPE_SYSTEM_KEYWORD=62]="AFTER_DOCTYPE_SYSTEM_KEYWORD",t[t.BEFORE_DOCTYPE_SYSTEM_IDENTIFIER=63]="BEFORE_DOCTYPE_SYSTEM_IDENTIFIER",t[t.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED=64]="DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED",t[t.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED=65]="DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED",t[t.AFTER_DOCTYPE_SYSTEM_IDENTIFIER=66]="AFTER_DOCTYPE_SYSTEM_IDENTIFIER",t[t.BOGUS_DOCTYPE=67]="BOGUS_DOCTYPE",t[t.CDATA_SECTION=68]="CDATA_SECTION",t[t.CDATA_SECTION_BRACKET=69]="CDATA_SECTION_BRACKET",t[t.CDATA_SECTION_END=70]="CDATA_SECTION_END",t[t.CHARACTER_REFERENCE=71]="CHARACTER_REFERENCE",t[t.AMBIGUOUS_AMPERSAND=72]="AMBIGUOUS_AMPERSAND"})(Y||(Y={}));var Yi={DATA:Y.DATA,RCDATA:Y.RCDATA,RAWTEXT:Y.RAWTEXT,SCRIPT_DATA:Y.SCRIPT_DATA,PLAINTEXT:Y.PLAINTEXT,CDATA_SECTION:Y.CDATA_SECTION};function QZt(t){return t>=H.DIGIT_0&&t<=H.DIGIT_9}function yI(t){return t>=H.LATIN_CAPITAL_A&&t<=H.LATIN_CAPITAL_Z}function HZt(t){return t>=H.LATIN_SMALL_A&&t<=H.LATIN_SMALL_Z}function N0(t){return HZt(t)||yI(t)}function XDe(t){return N0(t)||QZt(t)}function WD(t){return t+32}function e4e(t){return t===H.SPACE||t===H.LINE_FEED||t===H.TABULATION||t===H.FORM_FEED}function ZDe(t){return e4e(t)||t===H.SOLIDUS||t===H.GREATER_THAN_SIGN}function GZt(t){return t===H.NULL?ye.nullCharacterReference:t>1114111?ye.characterReferenceOutsideUnicodeRange:ND(t)?ye.surrogateCharacterReference:kD(t)?ye.noncharacterCharacterReference:OD(t)||t===H.CARRIAGE_RETURN?ye.controlCharacterReference:null}var AI=class{constructor(e,r){this.options=e,this.handler=r,this.paused=!1,this.inLoop=!1,this.inForeignNode=!1,this.lastStartTagName="",this.active=!1,this.state=Y.DATA,this.returnState=Y.DATA,this.entityStartPos=0,this.consumedAfterSnapshot=-1,this.currentCharacterToken=null,this.currentToken=null,this.currentAttr={name:"",value:""},this.preprocessor=new PD(r),this.currentLocation=this.getCurrentLocation(-1),this.entityDecoder=new LD(BD,(n,s)=>{this.preprocessor.pos=this.entityStartPos+s-1,this._flushCodePointConsumedAsCharacterReference(n)},r.onParseError?{missingSemicolonAfterCharacterReference:()=>{this._err(ye.missingSemicolonAfterCharacterReference,1)},absenceOfDigitsInNumericCharacterReference:n=>{this._err(ye.absenceOfDigitsInNumericCharacterReference,this.entityStartPos-this.preprocessor.pos+n)},validateNumericCharacterReference:n=>{let s=GZt(n);s&&this._err(s,1)}}:void 0)}_err(e,r=0){var n,s;(s=(n=this.handler).onParseError)===null||s===void 0||s.call(n,this.preprocessor.getError(e,r))}getCurrentLocation(e){return this.options.sourceCodeLocationInfo?{startLine:this.preprocessor.line,startCol:this.preprocessor.col-e,startOffset:this.preprocessor.offset-e,endLine:-1,endCol:-1,endOffset:-1}:null}_runParsingLoop(){if(!this.inLoop){for(this.inLoop=!0;this.active&&!this.paused;){this.consumedAfterSnapshot=0;let e=this._consume();this._ensureHibernation()||this._callState(e)}this.inLoop=!1}}pause(){this.paused=!0}resume(e){if(!this.paused)throw new Error("Parser was already resumed");this.paused=!1,!this.inLoop&&(this._runParsingLoop(),this.paused||e?.())}write(e,r,n){this.active=!0,this.preprocessor.write(e,r),this._runParsingLoop(),this.paused||n?.()}insertHtmlAtCurrentPos(e){this.active=!0,this.preprocessor.insertHtmlAtCurrentPos(e),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(e){this.consumedAfterSnapshot+=e;for(let r=0;r0&&this._err(ye.endTagWithAttributes),e.selfClosing&&this._err(ye.endTagWithTrailingSolidus),this.handler.onEndTag(e)),this.preprocessor.dropParsedChunk()}emitCurrentComment(e){this.prepareToken(e),this.handler.onComment(e),this.preprocessor.dropParsedChunk()}emitCurrentDoctype(e){this.prepareToken(e),this.handler.onDoctype(e),this.preprocessor.dropParsedChunk()}_emitCurrentCharacterToken(e){if(this.currentCharacterToken){switch(e&&this.currentCharacterToken.location&&(this.currentCharacterToken.location.endLine=e.startLine,this.currentCharacterToken.location.endCol=e.startCol,this.currentCharacterToken.location.endOffset=e.startOffset),this.currentCharacterToken.type){case Ir.CHARACTER:{this.handler.onCharacter(this.currentCharacterToken);break}case Ir.NULL_CHARACTER:{this.handler.onNullCharacter(this.currentCharacterToken);break}case Ir.WHITESPACE_CHARACTER:{this.handler.onWhitespaceCharacter(this.currentCharacterToken);break}}this.currentCharacterToken=null}}_emitEOFToken(){let e=this.getCurrentLocation(0);e&&(e.endLine=e.startLine,e.endCol=e.startCol,e.endOffset=e.startOffset),this._emitCurrentCharacterToken(e),this.handler.onEof({type:Ir.EOF,location:e}),this.active=!1}_appendCharToCurrentCharacterToken(e,r){if(this.currentCharacterToken)if(this.currentCharacterToken.type===e){this.currentCharacterToken.chars+=r;return}else this.currentLocation=this.getCurrentLocation(0),this._emitCurrentCharacterToken(this.currentLocation),this.preprocessor.dropParsedChunk();this._createCharacterToken(e,r)}_emitCodePoint(e){let r=e4e(e)?Ir.WHITESPACE_CHARACTER:e===H.NULL?Ir.NULL_CHARACTER:Ir.CHARACTER;this._appendCharToCurrentCharacterToken(r,String.fromCodePoint(e))}_emitChars(e){this._appendCharToCurrentCharacterToken(Ir.CHARACTER,e)}_startCharacterReference(){this.returnState=this.state,this.state=Y.CHARACTER_REFERENCE,this.entityStartPos=this.preprocessor.pos,this.entityDecoder.startEntity(this._isCharacterReferenceInAttribute()?Il.Attribute:Il.Legacy)}_isCharacterReferenceInAttribute(){return this.returnState===Y.ATTRIBUTE_VALUE_DOUBLE_QUOTED||this.returnState===Y.ATTRIBUTE_VALUE_SINGLE_QUOTED||this.returnState===Y.ATTRIBUTE_VALUE_UNQUOTED}_flushCodePointConsumedAsCharacterReference(e){this._isCharacterReferenceInAttribute()?this.currentAttr.value+=String.fromCodePoint(e):this._emitCodePoint(e)}_callState(e){switch(this.state){case Y.DATA:{this._stateData(e);break}case Y.RCDATA:{this._stateRcdata(e);break}case Y.RAWTEXT:{this._stateRawtext(e);break}case Y.SCRIPT_DATA:{this._stateScriptData(e);break}case Y.PLAINTEXT:{this._statePlaintext(e);break}case Y.TAG_OPEN:{this._stateTagOpen(e);break}case Y.END_TAG_OPEN:{this._stateEndTagOpen(e);break}case Y.TAG_NAME:{this._stateTagName(e);break}case Y.RCDATA_LESS_THAN_SIGN:{this._stateRcdataLessThanSign(e);break}case Y.RCDATA_END_TAG_OPEN:{this._stateRcdataEndTagOpen(e);break}case Y.RCDATA_END_TAG_NAME:{this._stateRcdataEndTagName(e);break}case Y.RAWTEXT_LESS_THAN_SIGN:{this._stateRawtextLessThanSign(e);break}case Y.RAWTEXT_END_TAG_OPEN:{this._stateRawtextEndTagOpen(e);break}case Y.RAWTEXT_END_TAG_NAME:{this._stateRawtextEndTagName(e);break}case Y.SCRIPT_DATA_LESS_THAN_SIGN:{this._stateScriptDataLessThanSign(e);break}case Y.SCRIPT_DATA_END_TAG_OPEN:{this._stateScriptDataEndTagOpen(e);break}case Y.SCRIPT_DATA_END_TAG_NAME:{this._stateScriptDataEndTagName(e);break}case Y.SCRIPT_DATA_ESCAPE_START:{this._stateScriptDataEscapeStart(e);break}case Y.SCRIPT_DATA_ESCAPE_START_DASH:{this._stateScriptDataEscapeStartDash(e);break}case Y.SCRIPT_DATA_ESCAPED:{this._stateScriptDataEscaped(e);break}case Y.SCRIPT_DATA_ESCAPED_DASH:{this._stateScriptDataEscapedDash(e);break}case Y.SCRIPT_DATA_ESCAPED_DASH_DASH:{this._stateScriptDataEscapedDashDash(e);break}case Y.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN:{this._stateScriptDataEscapedLessThanSign(e);break}case Y.SCRIPT_DATA_ESCAPED_END_TAG_OPEN:{this._stateScriptDataEscapedEndTagOpen(e);break}case Y.SCRIPT_DATA_ESCAPED_END_TAG_NAME:{this._stateScriptDataEscapedEndTagName(e);break}case Y.SCRIPT_DATA_DOUBLE_ESCAPE_START:{this._stateScriptDataDoubleEscapeStart(e);break}case Y.SCRIPT_DATA_DOUBLE_ESCAPED:{this._stateScriptDataDoubleEscaped(e);break}case Y.SCRIPT_DATA_DOUBLE_ESCAPED_DASH:{this._stateScriptDataDoubleEscapedDash(e);break}case Y.SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH:{this._stateScriptDataDoubleEscapedDashDash(e);break}case Y.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN:{this._stateScriptDataDoubleEscapedLessThanSign(e);break}case Y.SCRIPT_DATA_DOUBLE_ESCAPE_END:{this._stateScriptDataDoubleEscapeEnd(e);break}case Y.BEFORE_ATTRIBUTE_NAME:{this._stateBeforeAttributeName(e);break}case Y.ATTRIBUTE_NAME:{this._stateAttributeName(e);break}case Y.AFTER_ATTRIBUTE_NAME:{this._stateAfterAttributeName(e);break}case Y.BEFORE_ATTRIBUTE_VALUE:{this._stateBeforeAttributeValue(e);break}case Y.ATTRIBUTE_VALUE_DOUBLE_QUOTED:{this._stateAttributeValueDoubleQuoted(e);break}case Y.ATTRIBUTE_VALUE_SINGLE_QUOTED:{this._stateAttributeValueSingleQuoted(e);break}case Y.ATTRIBUTE_VALUE_UNQUOTED:{this._stateAttributeValueUnquoted(e);break}case Y.AFTER_ATTRIBUTE_VALUE_QUOTED:{this._stateAfterAttributeValueQuoted(e);break}case Y.SELF_CLOSING_START_TAG:{this._stateSelfClosingStartTag(e);break}case Y.BOGUS_COMMENT:{this._stateBogusComment(e);break}case Y.MARKUP_DECLARATION_OPEN:{this._stateMarkupDeclarationOpen(e);break}case Y.COMMENT_START:{this._stateCommentStart(e);break}case Y.COMMENT_START_DASH:{this._stateCommentStartDash(e);break}case Y.COMMENT:{this._stateComment(e);break}case Y.COMMENT_LESS_THAN_SIGN:{this._stateCommentLessThanSign(e);break}case Y.COMMENT_LESS_THAN_SIGN_BANG:{this._stateCommentLessThanSignBang(e);break}case Y.COMMENT_LESS_THAN_SIGN_BANG_DASH:{this._stateCommentLessThanSignBangDash(e);break}case Y.COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH:{this._stateCommentLessThanSignBangDashDash(e);break}case Y.COMMENT_END_DASH:{this._stateCommentEndDash(e);break}case Y.COMMENT_END:{this._stateCommentEnd(e);break}case Y.COMMENT_END_BANG:{this._stateCommentEndBang(e);break}case Y.DOCTYPE:{this._stateDoctype(e);break}case Y.BEFORE_DOCTYPE_NAME:{this._stateBeforeDoctypeName(e);break}case Y.DOCTYPE_NAME:{this._stateDoctypeName(e);break}case Y.AFTER_DOCTYPE_NAME:{this._stateAfterDoctypeName(e);break}case Y.AFTER_DOCTYPE_PUBLIC_KEYWORD:{this._stateAfterDoctypePublicKeyword(e);break}case Y.BEFORE_DOCTYPE_PUBLIC_IDENTIFIER:{this._stateBeforeDoctypePublicIdentifier(e);break}case Y.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED:{this._stateDoctypePublicIdentifierDoubleQuoted(e);break}case Y.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED:{this._stateDoctypePublicIdentifierSingleQuoted(e);break}case Y.AFTER_DOCTYPE_PUBLIC_IDENTIFIER:{this._stateAfterDoctypePublicIdentifier(e);break}case Y.BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS:{this._stateBetweenDoctypePublicAndSystemIdentifiers(e);break}case Y.AFTER_DOCTYPE_SYSTEM_KEYWORD:{this._stateAfterDoctypeSystemKeyword(e);break}case Y.BEFORE_DOCTYPE_SYSTEM_IDENTIFIER:{this._stateBeforeDoctypeSystemIdentifier(e);break}case Y.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED:{this._stateDoctypeSystemIdentifierDoubleQuoted(e);break}case Y.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED:{this._stateDoctypeSystemIdentifierSingleQuoted(e);break}case Y.AFTER_DOCTYPE_SYSTEM_IDENTIFIER:{this._stateAfterDoctypeSystemIdentifier(e);break}case Y.BOGUS_DOCTYPE:{this._stateBogusDoctype(e);break}case Y.CDATA_SECTION:{this._stateCdataSection(e);break}case Y.CDATA_SECTION_BRACKET:{this._stateCdataSectionBracket(e);break}case Y.CDATA_SECTION_END:{this._stateCdataSectionEnd(e);break}case Y.CHARACTER_REFERENCE:{this._stateCharacterReference();break}case Y.AMBIGUOUS_AMPERSAND:{this._stateAmbiguousAmpersand(e);break}default:throw new Error("Unknown state")}}_stateData(e){switch(e){case H.LESS_THAN_SIGN:{this.state=Y.TAG_OPEN;break}case H.AMPERSAND:{this._startCharacterReference();break}case H.NULL:{this._err(ye.unexpectedNullCharacter),this._emitCodePoint(e);break}case H.EOF:{this._emitEOFToken();break}default:this._emitCodePoint(e)}}_stateRcdata(e){switch(e){case H.AMPERSAND:{this._startCharacterReference();break}case H.LESS_THAN_SIGN:{this.state=Y.RCDATA_LESS_THAN_SIGN;break}case H.NULL:{this._err(ye.unexpectedNullCharacter),this._emitChars(En);break}case H.EOF:{this._emitEOFToken();break}default:this._emitCodePoint(e)}}_stateRawtext(e){switch(e){case H.LESS_THAN_SIGN:{this.state=Y.RAWTEXT_LESS_THAN_SIGN;break}case H.NULL:{this._err(ye.unexpectedNullCharacter),this._emitChars(En);break}case H.EOF:{this._emitEOFToken();break}default:this._emitCodePoint(e)}}_stateScriptData(e){switch(e){case H.LESS_THAN_SIGN:{this.state=Y.SCRIPT_DATA_LESS_THAN_SIGN;break}case H.NULL:{this._err(ye.unexpectedNullCharacter),this._emitChars(En);break}case H.EOF:{this._emitEOFToken();break}default:this._emitCodePoint(e)}}_statePlaintext(e){switch(e){case H.NULL:{this._err(ye.unexpectedNullCharacter),this._emitChars(En);break}case H.EOF:{this._emitEOFToken();break}default:this._emitCodePoint(e)}}_stateTagOpen(e){if(N0(e))this._createStartTagToken(),this.state=Y.TAG_NAME,this._stateTagName(e);else switch(e){case H.EXCLAMATION_MARK:{this.state=Y.MARKUP_DECLARATION_OPEN;break}case H.SOLIDUS:{this.state=Y.END_TAG_OPEN;break}case H.QUESTION_MARK:{this._err(ye.unexpectedQuestionMarkInsteadOfTagName),this._createCommentToken(1),this.state=Y.BOGUS_COMMENT,this._stateBogusComment(e);break}case H.EOF:{this._err(ye.eofBeforeTagName),this._emitChars("<"),this._emitEOFToken();break}default:this._err(ye.invalidFirstCharacterOfTagName),this._emitChars("<"),this.state=Y.DATA,this._stateData(e)}}_stateEndTagOpen(e){if(N0(e))this._createEndTagToken(),this.state=Y.TAG_NAME,this._stateTagName(e);else switch(e){case H.GREATER_THAN_SIGN:{this._err(ye.missingEndTagName),this.state=Y.DATA;break}case H.EOF:{this._err(ye.eofBeforeTagName),this._emitChars("");break}case H.NULL:{this._err(ye.unexpectedNullCharacter),this.state=Y.SCRIPT_DATA_ESCAPED,this._emitChars(En);break}case H.EOF:{this._err(ye.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break}default:this.state=Y.SCRIPT_DATA_ESCAPED,this._emitCodePoint(e)}}_stateScriptDataEscapedLessThanSign(e){e===H.SOLIDUS?this.state=Y.SCRIPT_DATA_ESCAPED_END_TAG_OPEN:N0(e)?(this._emitChars("<"),this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPE_START,this._stateScriptDataDoubleEscapeStart(e)):(this._emitChars("<"),this.state=Y.SCRIPT_DATA_ESCAPED,this._stateScriptDataEscaped(e))}_stateScriptDataEscapedEndTagOpen(e){N0(e)?(this.state=Y.SCRIPT_DATA_ESCAPED_END_TAG_NAME,this._stateScriptDataEscapedEndTagName(e)):(this._emitChars("");break}case H.NULL:{this._err(ye.unexpectedNullCharacter),this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPED,this._emitChars(En);break}case H.EOF:{this._err(ye.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break}default:this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPED,this._emitCodePoint(e)}}_stateScriptDataDoubleEscapedLessThanSign(e){e===H.SOLIDUS?(this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPE_END,this._emitChars("/")):(this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPED,this._stateScriptDataDoubleEscaped(e))}_stateScriptDataDoubleEscapeEnd(e){if(this.preprocessor.startsWith(xa.SCRIPT,!1)&&ZDe(this.preprocessor.peek(xa.SCRIPT.length))){this._emitCodePoint(e);for(let r=0;r0&&this._isInTemplate()&&this.tmplCount--,this.stackTop--,this._updateCurrentElement(),this.handler.onItemPop(e,!0)}replace(e,r){let n=this._indexOf(e);this.items[n]=r,n===this.stackTop&&(this.current=r)}insertAfter(e,r,n){let s=this._indexOf(e)+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(e){let r=this.stackTop+1;do r=this.tagIDs.lastIndexOf(e,r-1);while(r>0&&this.treeAdapter.getNamespaceURI(this.items[r])!==Ee.HTML);this.shortenToLength(Math.max(r,0))}shortenToLength(e){for(;this.stackTop>=e;){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(e.has(this.tagIDs[n])&&this.treeAdapter.getNamespaceURI(this.items[n])===r)return n;return-1}clearBackTo(e,r){let n=this._indexOfTagNames(e,r);this.shortenToLength(n+1)}clearBackToTableContext(){this.clearBackTo(JZt,Ee.HTML)}clearBackToTableBodyContext(){this.clearBackTo(YZt,Ee.HTML)}clearBackToTableRowContext(){this.clearBackTo(VZt,Ee.HTML)}remove(e){let r=this._indexOf(e);r>=0&&(r===this.stackTop?this.pop():(this.items.splice(r,1),this.tagIDs.splice(r,1),this.stackTop--,this._updateCurrentElement(),this.handler.onItemPop(e,!1)))}tryPeekProperlyNestedBodyElement(){return this.stackTop>=1&&this.tagIDs[1]===C.BODY?this.items[1]:null}contains(e){return this._indexOf(e)>-1}getCommonAncestor(e){let r=this._indexOf(e)-1;return r>=0?this.items[r]:null}isRootHtmlElementCurrent(){return this.stackTop===0&&this.tagIDs[0]===C.HTML}hasInDynamicScope(e,r){for(let n=this.stackTop;n>=0;n--){let s=this.tagIDs[n];switch(this.treeAdapter.getNamespaceURI(this.items[n])){case Ee.HTML:{if(s===e)return!0;if(r.has(s))return!1;break}case Ee.SVG:{if(n4e.has(s))return!1;break}case Ee.MATHML:{if(r4e.has(s))return!1;break}}}return!0}hasInScope(e){return this.hasInDynamicScope(e,$D)}hasInListItemScope(e){return this.hasInDynamicScope(e,zZt)}hasInButtonScope(e){return this.hasInDynamicScope(e,KZt)}hasNumberedHeaderInScope(){for(let e=this.stackTop;e>=0;e--){let r=this.tagIDs[e];switch(this.treeAdapter.getNamespaceURI(this.items[e])){case Ee.HTML:{if(mb.has(r))return!0;if($D.has(r))return!1;break}case Ee.SVG:{if(n4e.has(r))return!1;break}case Ee.MATHML:{if(r4e.has(r))return!1;break}}}return!0}hasInTableScope(e){for(let r=this.stackTop;r>=0;r--)if(this.treeAdapter.getNamespaceURI(this.items[r])===Ee.HTML)switch(this.tagIDs[r]){case e:return!0;case C.TABLE:case C.HTML:return!1}return!0}hasTableBodyContextInTableScope(){for(let e=this.stackTop;e>=0;e--)if(this.treeAdapter.getNamespaceURI(this.items[e])===Ee.HTML)switch(this.tagIDs[e]){case C.TBODY:case C.THEAD:case C.TFOOT:return!0;case C.TABLE:case C.HTML:return!1}return!0}hasInSelectScope(e){for(let r=this.stackTop;r>=0;r--)if(this.treeAdapter.getNamespaceURI(this.items[r])===Ee.HTML)switch(this.tagIDs[r]){case e:return!0;case C.OPTION:case C.OPTGROUP:break;default:return!1}return!0}generateImpliedEndTags(){for(;this.currentTagId!==void 0&&s4e.has(this.currentTagId);)this.pop()}generateImpliedEndTagsThoroughly(){for(;this.currentTagId!==void 0&&t4e.has(this.currentTagId);)this.pop()}generateImpliedEndTagsWithExclusion(e){for(;this.currentTagId!==void 0&&this.currentTagId!==e&&t4e.has(this.currentTagId);)this.pop()}};var yu;(function(t){t[t.Marker=0]="Marker",t[t.Element=1]="Element"})(yu||(yu={}));var i4e={type:yu.Marker},FD=class{constructor(e){this.treeAdapter=e,this.entries=[],this.bookmark=null}_getNoahArkConditionCandidates(e,r){let n=[],s=r.length,i=this.treeAdapter.getTagName(e),a=this.treeAdapter.getNamespaceURI(e);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(i4e)}pushElement(e,r){this._ensureNoahArkCondition(e),this.entries.unshift({type:yu.Element,element:e,token:r})}insertElementAfterBookmark(e,r){let n=this.entries.indexOf(this.bookmark);this.entries.splice(n,0,{type:yu.Element,element:e,token:r})}removeEntry(e){let r=this.entries.indexOf(e);r!==-1&&this.entries.splice(r,1)}clearToLastMarker(){let e=this.entries.indexOf(i4e);e===-1?this.entries.length=0:this.entries.splice(0,e+1)}getElementEntryInScopeWithTagName(e){let r=this.entries.find(n=>n.type===yu.Marker||this.treeAdapter.getTagName(n.element)===e);return r&&r.type===yu.Element?r:null}getElementEntry(e){return this.entries.find(r=>r.type===yu.Element&&r.element===e)}};var Tc={createDocument(){return{nodeName:"#document",mode:Vi.NO_QUIRKS,childNodes:[]}},createDocumentFragment(){return{nodeName:"#document-fragment",childNodes:[]}},createElement(t,e,r){return{nodeName:t,tagName:t,attrs:r,namespaceURI:e,childNodes:[],parentNode:null}},createCommentNode(t){return{nodeName:"#comment",data:t,parentNode:null}},createTextNode(t){return{nodeName:"#text",value:t,parentNode:null}},appendChild(t,e){t.childNodes.push(e),e.parentNode=t},insertBefore(t,e,r){let n=t.childNodes.indexOf(r);t.childNodes.splice(n,0,e),e.parentNode=t},setTemplateContent(t,e){t.content=e},getTemplateContent(t){return t.content},setDocumentType(t,e,r,n){let s=t.childNodes.find(i=>i.nodeName==="#documentType");if(s)s.name=e,s.publicId=r,s.systemId=n;else{let i={nodeName:"#documentType",name:e,publicId:r,systemId:n,parentNode:null};Tc.appendChild(t,i)}},setDocumentMode(t,e){t.mode=e},getDocumentMode(t){return t.mode},detachNode(t){if(t.parentNode){let e=t.parentNode.childNodes.indexOf(t);t.parentNode.childNodes.splice(e,1),t.parentNode=null}},insertText(t,e){if(t.childNodes.length>0){let r=t.childNodes[t.childNodes.length-1];if(Tc.isTextNode(r)){r.value+=e;return}}Tc.appendChild(t,Tc.createTextNode(e))},insertTextBefore(t,e,r){let n=t.childNodes[t.childNodes.indexOf(r)-1];n&&Tc.isTextNode(n)?n.value+=e:Tc.insertBefore(t,Tc.createTextNode(e),r)},adoptAttributes(t,e){let r=new Set(t.attrs.map(n=>n.name));for(let n=0;nt.startsWith(r))}function l4e(t){return t.name===o4e&&t.publicId===null&&(t.systemId===null||t.systemId===ZZt)}function d4e(t){if(t.name!==o4e)return Vi.QUIRKS;let{systemId:e}=t;if(e&&e.toLowerCase()===eer)return Vi.QUIRKS;let{publicId:r}=t;if(r!==null){if(r=r.toLowerCase(),rer.has(r))return Vi.QUIRKS;let n=e===null?ter:c4e;if(a4e(r,n))return Vi.QUIRKS;if(n=e===null?u4e:ner,a4e(r,n))return Vi.LIMITED_QUIRKS}return Vi.NO_QUIRKS}var f4e={TEXT_HTML:"text/html",APPLICATION_XML:"application/xhtml+xml"},ier="definitionurl",aer="definitionURL",oer=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(t=>[t.toLowerCase(),t])),cer=new Map([["xlink:actuate",{prefix:"xlink",name:"actuate",namespace:Ee.XLINK}],["xlink:arcrole",{prefix:"xlink",name:"arcrole",namespace:Ee.XLINK}],["xlink:href",{prefix:"xlink",name:"href",namespace:Ee.XLINK}],["xlink:role",{prefix:"xlink",name:"role",namespace:Ee.XLINK}],["xlink:show",{prefix:"xlink",name:"show",namespace:Ee.XLINK}],["xlink:title",{prefix:"xlink",name:"title",namespace:Ee.XLINK}],["xlink:type",{prefix:"xlink",name:"type",namespace:Ee.XLINK}],["xml:lang",{prefix:"xml",name:"lang",namespace:Ee.XML}],["xml:space",{prefix:"xml",name:"space",namespace:Ee.XML}],["xmlns",{prefix:"",name:"xmlns",namespace:Ee.XMLNS}],["xmlns:xlink",{prefix:"xmlns",name:"xlink",namespace:Ee.XMLNS}]]),uer=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(t=>[t.toLowerCase(),t])),ler=new Set([C.B,C.BIG,C.BLOCKQUOTE,C.BODY,C.BR,C.CENTER,C.CODE,C.DD,C.DIV,C.DL,C.DT,C.EM,C.EMBED,C.H1,C.H2,C.H3,C.H4,C.H5,C.H6,C.HEAD,C.HR,C.I,C.IMG,C.LI,C.LISTING,C.MENU,C.META,C.NOBR,C.OL,C.P,C.PRE,C.RUBY,C.S,C.SMALL,C.SPAN,C.STRONG,C.STRIKE,C.SUB,C.SUP,C.TABLE,C.TT,C.U,C.UL,C.VAR]);function p4e(t){let e=t.tagID;return e===C.FONT&&t.attrs.some(({name:n})=>n===Cl.COLOR||n===Cl.SIZE||n===Cl.FACE)||ler.has(e)}function Ez(t){for(let e=0;e0&&this._setContextModes(e,r)}onItemPop(e,r){var n,s;if(this.options.sourceCodeLocationInfo&&this._setEndLocation(e,this.currentToken),(s=(n=this.treeAdapter).onItemPop)===null||s===void 0||s.call(n,e,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(e,r){let n=e===this.document||e&&this.treeAdapter.getNamespaceURI(e)===Ee.HTML;this.currentNotInHTML=!n,this.tokenizer.inForeignNode=!n&&e!==void 0&&r!==void 0&&!this._isIntegrationPoint(r,e)}_switchToTextParsing(e,r){this._insertElement(e,Ee.HTML),this.tokenizer.state=r,this.originalInsertionMode=this.insertionMode,this.insertionMode=te.TEXT}switchToPlaintextParsing(){this.insertionMode=te.TEXT,this.originalInsertionMode=te.IN_BODY,this.tokenizer.state=Yi.PLAINTEXT}_getAdjustedCurrentElement(){return this.openElements.stackTop===0&&this.fragmentContext?this.fragmentContext:this.openElements.current}_findFormInFragmentContext(){let e=this.fragmentContext;for(;e;){if(this.treeAdapter.getTagName(e)===pe.FORM){this.formElement=e;break}e=this.treeAdapter.getParentNode(e)}}_initTokenizerForFragmentParsing(){if(!(!this.fragmentContext||this.treeAdapter.getNamespaceURI(this.fragmentContext)!==Ee.HTML))switch(this.fragmentContextID){case C.TITLE:case C.TEXTAREA:{this.tokenizer.state=Yi.RCDATA;break}case C.STYLE:case C.XMP:case C.IFRAME:case C.NOEMBED:case C.NOFRAMES:case C.NOSCRIPT:{this.tokenizer.state=Yi.RAWTEXT;break}case C.SCRIPT:{this.tokenizer.state=Yi.SCRIPT_DATA;break}case C.PLAINTEXT:{this.tokenizer.state=Yi.PLAINTEXT;break}default:}}_setDocumentType(e){let r=e.name||"",n=e.publicId||"",s=e.systemId||"";if(this.treeAdapter.setDocumentType(this.document,r,n,s),e.location){let a=this.treeAdapter.getChildNodes(this.document).find(o=>this.treeAdapter.isDocumentTypeNode(o));a&&this.treeAdapter.setNodeSourceCodeLocation(a,e.location)}}_attachElementToTree(e,r){if(this.options.sourceCodeLocationInfo){let n=r&&{...r,startTag:r};this.treeAdapter.setNodeSourceCodeLocation(e,n)}if(this._shouldFosterParentOnInsertion())this._fosterParentElement(e);else{let n=this.openElements.currentTmplContentOrNode;this.treeAdapter.appendChild(n??this.document,e)}}_appendElement(e,r){let n=this.treeAdapter.createElement(e.tagName,r,e.attrs);this._attachElementToTree(n,e.location)}_insertElement(e,r){let n=this.treeAdapter.createElement(e.tagName,r,e.attrs);this._attachElementToTree(n,e.location),this.openElements.push(n,e.tagID)}_insertFakeElement(e,r){let n=this.treeAdapter.createElement(e,Ee.HTML,[]);this._attachElementToTree(n,null),this.openElements.push(n,r)}_insertTemplate(e){let r=this.treeAdapter.createElement(e.tagName,Ee.HTML,e.attrs),n=this.treeAdapter.createDocumentFragment();this.treeAdapter.setTemplateContent(r,n),this._attachElementToTree(r,e.location),this.openElements.push(r,e.tagID),this.options.sourceCodeLocationInfo&&this.treeAdapter.setNodeSourceCodeLocation(n,null)}_insertFakeRootElement(){let e=this.treeAdapter.createElement(pe.HTML,Ee.HTML,[]);this.options.sourceCodeLocationInfo&&this.treeAdapter.setNodeSourceCodeLocation(e,null),this.treeAdapter.appendChild(this.openElements.current,e),this.openElements.push(e,C.HTML)}_appendCommentNode(e,r){let n=this.treeAdapter.createCommentNode(e.data);this.treeAdapter.appendChild(r,n),this.options.sourceCodeLocationInfo&&this.treeAdapter.setNodeSourceCodeLocation(n,e.location)}_insertCharacters(e){let r,n;if(this._shouldFosterParentOnInsertion()?({parent:r,beforeElement:n}=this._findFosterParentingLocation(),n?this.treeAdapter.insertTextBefore(r,e.chars,n):this.treeAdapter.insertText(r,e.chars)):(r=this.openElements.currentTmplContentOrNode,this.treeAdapter.insertText(r,e.chars)),!e.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}=e.location;this.treeAdapter.updateNodeSourceCodeLocation(a,{endLine:c,endCol:u,endOffset:l})}else this.options.sourceCodeLocationInfo&&this.treeAdapter.setNodeSourceCodeLocation(a,e.location)}_adoptNodes(e,r){for(let n=this.treeAdapter.getFirstChild(e);n;n=this.treeAdapter.getFirstChild(e))this.treeAdapter.detachNode(n),this.treeAdapter.appendChild(r,n)}_setEndLocation(e,r){if(this.treeAdapter.getNodeSourceCodeLocation(e)&&r.location){let n=r.location,s=this.treeAdapter.getTagName(e),i=r.type===Ir.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(e,i)}}shouldProcessStartTagTokenInForeignContent(e){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,e.tagID===C.SVG&&this.treeAdapter.getTagName(r)===pe.ANNOTATION_XML&&this.treeAdapter.getNamespaceURI(r)===Ee.MATHML?!1:this.tokenizer.inForeignNode||(e.tagID===C.MGLYPH||e.tagID===C.MALIGNMARK)&&n!==void 0&&!this._isIntegrationPoint(n,r,Ee.HTML)}_processToken(e){switch(e.type){case Ir.CHARACTER:{this.onCharacter(e);break}case Ir.NULL_CHARACTER:{this.onNullCharacter(e);break}case Ir.COMMENT:{this.onComment(e);break}case Ir.DOCTYPE:{this.onDoctype(e);break}case Ir.START_TAG:{this._processStartTag(e);break}case Ir.END_TAG:{this.onEndTag(e);break}case Ir.EOF:{this.onEof(e);break}case Ir.WHITESPACE_CHARACTER:{this.onWhitespaceCharacter(e);break}}}_isIntegrationPoint(e,r,n){let s=this.treeAdapter.getNamespaceURI(r),i=this.treeAdapter.getAttrList(r);return h4e(e,s,i,n)}_reconstructActiveFormattingElements(){let e=this.activeFormattingElements.entries.length;if(e){let r=this.activeFormattingElements.entries.findIndex(s=>s.type===yu.Marker||this.openElements.contains(s.element)),n=r===-1?e-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=te.IN_ROW}_closePElement(){this.openElements.generateImpliedEndTagsWithExclusion(C.P),this.openElements.popUntilTagNamePopped(C.P)}_resetInsertionMode(){for(let e=this.openElements.stackTop;e>=0;e--)switch(e===0&&this.fragmentContext?this.fragmentContextID:this.openElements.tagIDs[e]){case C.TR:{this.insertionMode=te.IN_ROW;return}case C.TBODY:case C.THEAD:case C.TFOOT:{this.insertionMode=te.IN_TABLE_BODY;return}case C.CAPTION:{this.insertionMode=te.IN_CAPTION;return}case C.COLGROUP:{this.insertionMode=te.IN_COLUMN_GROUP;return}case C.TABLE:{this.insertionMode=te.IN_TABLE;return}case C.BODY:{this.insertionMode=te.IN_BODY;return}case C.FRAMESET:{this.insertionMode=te.IN_FRAMESET;return}case C.SELECT:{this._resetInsertionModeForSelect(e);return}case C.TEMPLATE:{this.insertionMode=this.tmplInsertionModeStack[0];return}case C.HTML:{this.insertionMode=this.headElement?te.AFTER_HEAD:te.BEFORE_HEAD;return}case C.TD:case C.TH:{if(e>0){this.insertionMode=te.IN_CELL;return}break}case C.HEAD:{if(e>0){this.insertionMode=te.IN_HEAD;return}break}}this.insertionMode=te.IN_BODY}_resetInsertionModeForSelect(e){if(e>0)for(let r=e-1;r>0;r--){let n=this.openElements.tagIDs[r];if(n===C.TEMPLATE)break;if(n===C.TABLE){this.insertionMode=te.IN_SELECT_IN_TABLE;return}}this.insertionMode=te.IN_SELECT}_isElementCausesFosterParenting(e){return b4e.has(e)}_shouldFosterParentOnInsertion(){return this.fosterParentingEnabled&&this.openElements.currentTagId!==void 0&&this._isElementCausesFosterParenting(this.openElements.currentTagId)}_findFosterParentingLocation(){for(let e=this.openElements.stackTop;e>=0;e--){let r=this.openElements.items[e];switch(this.openElements.tagIDs[e]){case C.TEMPLATE:{if(this.treeAdapter.getNamespaceURI(r)===Ee.HTML)return{parent:this.treeAdapter.getTemplateContent(r),beforeElement:null};break}case C.TABLE:{let n=this.treeAdapter.getParentNode(r);return n?{parent:n,beforeElement:r}:{parent:this.openElements.items[e-1],beforeElement:null}}default:}}return{parent:this.openElements.items[0],beforeElement:null}}_fosterParentElement(e){let r=this._findFosterParentingLocation();r.beforeElement?this.treeAdapter.insertBefore(r.parent,e,r.beforeElement):this.treeAdapter.appendChild(r.parent,e)}_isSpecialElement(e,r){let n=this.treeAdapter.getNamespaceURI(e);return bz[n].has(r)}onCharacter(e){if(this.skipNextNewLine=!1,this.tokenizer.inForeignNode){Gtr(this,e);return}switch(this.insertionMode){case te.INITIAL:{xI(this,e);break}case te.BEFORE_HTML:{_I(this,e);break}case te.BEFORE_HEAD:{EI(this,e);break}case te.IN_HEAD:{vI(this,e);break}case te.IN_HEAD_NO_SCRIPT:{SI(this,e);break}case te.AFTER_HEAD:{II(this,e);break}case te.IN_BODY:case te.IN_CAPTION:case te.IN_CELL:case te.IN_TEMPLATE:{E4e(this,e);break}case te.TEXT:case te.IN_SELECT:case te.IN_SELECT_IN_TABLE:{this._insertCharacters(e);break}case te.IN_TABLE:case te.IN_TABLE_BODY:case te.IN_ROW:{Sz(this,e);break}case te.IN_TABLE_TEXT:{w4e(this,e);break}case te.IN_COLUMN_GROUP:{QD(this,e);break}case te.AFTER_BODY:{HD(this,e);break}case te.AFTER_AFTER_BODY:{jD(this,e);break}default:}}onNullCharacter(e){if(this.skipNextNewLine=!1,this.tokenizer.inForeignNode){Htr(this,e);return}switch(this.insertionMode){case te.INITIAL:{xI(this,e);break}case te.BEFORE_HTML:{_I(this,e);break}case te.BEFORE_HEAD:{EI(this,e);break}case te.IN_HEAD:{vI(this,e);break}case te.IN_HEAD_NO_SCRIPT:{SI(this,e);break}case te.AFTER_HEAD:{II(this,e);break}case te.TEXT:{this._insertCharacters(e);break}case te.IN_TABLE:case te.IN_TABLE_BODY:case te.IN_ROW:{Sz(this,e);break}case te.IN_COLUMN_GROUP:{QD(this,e);break}case te.AFTER_BODY:{HD(this,e);break}case te.AFTER_AFTER_BODY:{jD(this,e);break}default:}}onComment(e){if(this.skipNextNewLine=!1,this.currentNotInHTML){Iz(this,e);return}switch(this.insertionMode){case te.INITIAL:case te.BEFORE_HTML:case te.BEFORE_HEAD:case te.IN_HEAD:case te.IN_HEAD_NO_SCRIPT:case te.AFTER_HEAD:case te.IN_BODY:case te.IN_TABLE:case te.IN_CAPTION:case te.IN_COLUMN_GROUP:case te.IN_TABLE_BODY:case te.IN_ROW:case te.IN_CELL:case te.IN_SELECT:case te.IN_SELECT_IN_TABLE:case te.IN_TEMPLATE:case te.IN_FRAMESET:case te.AFTER_FRAMESET:{Iz(this,e);break}case te.IN_TABLE_TEXT:{bI(this,e);break}case te.AFTER_BODY:{ver(this,e);break}case te.AFTER_AFTER_BODY:case te.AFTER_AFTER_FRAMESET:{Ser(this,e);break}default:}}onDoctype(e){switch(this.skipNextNewLine=!1,this.insertionMode){case te.INITIAL:{Ier(this,e);break}case te.BEFORE_HEAD:case te.IN_HEAD:case te.IN_HEAD_NO_SCRIPT:case te.AFTER_HEAD:{this._err(e,ye.misplacedDoctype);break}case te.IN_TABLE_TEXT:{bI(this,e);break}default:}}onStartTag(e){this.skipNextNewLine=!1,this.currentToken=e,this._processStartTag(e),e.selfClosing&&!e.ackSelfClosing&&this._err(e,ye.nonVoidHtmlElementStartTagWithTrailingSolidus)}_processStartTag(e){this.shouldProcessStartTagTokenInForeignContent(e)?ztr(this,e):this._startTagOutsideForeignContent(e)}_startTagOutsideForeignContent(e){switch(this.insertionMode){case te.INITIAL:{xI(this,e);break}case te.BEFORE_HTML:{Cer(this,e);break}case te.BEFORE_HEAD:{wer(this,e);break}case te.IN_HEAD:{Au(this,e);break}case te.IN_HEAD_NO_SCRIPT:{Oer(this,e);break}case te.AFTER_HEAD:{Per(this,e);break}case te.IN_BODY:{Ji(this,e);break}case te.IN_TABLE:{gb(this,e);break}case te.IN_TABLE_TEXT:{bI(this,e);break}case te.IN_CAPTION:{Rtr(this,e);break}case te.IN_COLUMN_GROUP:{Rz(this,e);break}case te.IN_TABLE_BODY:{KD(this,e);break}case te.IN_ROW:{VD(this,e);break}case te.IN_CELL:{ktr(this,e);break}case te.IN_SELECT:{O4e(this,e);break}case te.IN_SELECT_IN_TABLE:{Dtr(this,e);break}case te.IN_TEMPLATE:{Ltr(this,e);break}case te.AFTER_BODY:{Wtr(this,e);break}case te.IN_FRAMESET:{$tr(this,e);break}case te.AFTER_FRAMESET:{Ftr(this,e);break}case te.AFTER_AFTER_BODY:{jtr(this,e);break}case te.AFTER_AFTER_FRAMESET:{Qtr(this,e);break}default:}}onEndTag(e){this.skipNextNewLine=!1,this.currentToken=e,this.currentNotInHTML?Ktr(this,e):this._endTagOutsideForeignContent(e)}_endTagOutsideForeignContent(e){switch(this.insertionMode){case te.INITIAL:{xI(this,e);break}case te.BEFORE_HTML:{Ter(this,e);break}case te.BEFORE_HEAD:{Rer(this,e);break}case te.IN_HEAD:{Ner(this,e);break}case te.IN_HEAD_NO_SCRIPT:{ker(this,e);break}case te.AFTER_HEAD:{Der(this,e);break}case te.IN_BODY:{zD(this,e);break}case te.TEXT:{xtr(this,e);break}case te.IN_TABLE:{CI(this,e);break}case te.IN_TABLE_TEXT:{bI(this,e);break}case te.IN_CAPTION:{Ntr(this,e);break}case te.IN_COLUMN_GROUP:{Otr(this,e);break}case te.IN_TABLE_BODY:{Cz(this,e);break}case te.IN_ROW:{N4e(this,e);break}case te.IN_CELL:{Ptr(this,e);break}case te.IN_SELECT:{k4e(this,e);break}case te.IN_SELECT_IN_TABLE:{Btr(this,e);break}case te.IN_TEMPLATE:{Mtr(this,e);break}case te.AFTER_BODY:{D4e(this,e);break}case te.IN_FRAMESET:{Utr(this,e);break}case te.AFTER_FRAMESET:{qtr(this,e);break}case te.AFTER_AFTER_BODY:{jD(this,e);break}default:}}onEof(e){switch(this.insertionMode){case te.INITIAL:{xI(this,e);break}case te.BEFORE_HTML:{_I(this,e);break}case te.BEFORE_HEAD:{EI(this,e);break}case te.IN_HEAD:{vI(this,e);break}case te.IN_HEAD_NO_SCRIPT:{SI(this,e);break}case te.AFTER_HEAD:{II(this,e);break}case te.IN_BODY:case te.IN_TABLE:case te.IN_CAPTION:case te.IN_COLUMN_GROUP:case te.IN_TABLE_BODY:case te.IN_ROW:case te.IN_CELL:case te.IN_SELECT:case te.IN_SELECT_IN_TABLE:{C4e(this,e);break}case te.TEXT:{btr(this,e);break}case te.IN_TABLE_TEXT:{bI(this,e);break}case te.IN_TEMPLATE:{P4e(this,e);break}case te.AFTER_BODY:case te.IN_FRAMESET:case te.AFTER_FRAMESET:case te.AFTER_AFTER_BODY:case te.AFTER_AFTER_FRAMESET:{wz(this,e);break}default:}}onWhitespaceCharacter(e){if(this.skipNextNewLine&&(this.skipNextNewLine=!1,e.chars.charCodeAt(0)===H.LINE_FEED)){if(e.chars.length===1)return;e.chars=e.chars.substr(1)}if(this.tokenizer.inForeignNode){this._insertCharacters(e);return}switch(this.insertionMode){case te.IN_HEAD:case te.IN_HEAD_NO_SCRIPT:case te.AFTER_HEAD:case te.TEXT:case te.IN_COLUMN_GROUP:case te.IN_SELECT:case te.IN_SELECT_IN_TABLE:case te.IN_FRAMESET:case te.AFTER_FRAMESET:{this._insertCharacters(e);break}case te.IN_BODY:case te.IN_CAPTION:case te.IN_CELL:case te.IN_TEMPLATE:case te.AFTER_BODY:case te.AFTER_AFTER_BODY:case te.AFTER_AFTER_FRAMESET:{_4e(this,e);break}case te.IN_TABLE:case te.IN_TABLE_BODY:case te.IN_ROW:{Sz(this,e);break}case te.IN_TABLE_TEXT:{T4e(this,e);break}default:}}};function yer(t,e){let r=t.activeFormattingElements.getElementEntryInScopeWithTagName(e.tagName);return r?t.openElements.contains(r.element)?t.openElements.hasInScope(e.tagID)||(r=null):(t.activeFormattingElements.removeEntry(r),r=null):I4e(t,e),r}function Aer(t,e){let r=null,n=t.openElements.stackTop;for(;n>=0;n--){let s=t.openElements.items[n];if(s===e.element)break;t._isSpecialElement(s,t.openElements.tagIDs[n])&&(r=s)}return r||(t.openElements.shortenToLength(Math.max(n,0)),t.activeFormattingElements.removeEntry(e)),r}function xer(t,e,r){let n=e,s=t.openElements.getCommonAncestor(e);for(let i=0,a=s;a!==r;i++,a=s){s=t.openElements.getCommonAncestor(a);let o=t.activeFormattingElements.getElementEntry(a),c=o&&i>=her;!o||c?(c&&t.activeFormattingElements.removeEntry(o),t.openElements.remove(a)):(a=ber(t,o),n===e&&(t.activeFormattingElements.bookmark=o),t.treeAdapter.detachNode(n),t.treeAdapter.appendChild(a,n),n=a)}return n}function ber(t,e){let r=t.treeAdapter.getNamespaceURI(e.element),n=t.treeAdapter.createElement(e.token.tagName,r,e.token.attrs);return t.openElements.replace(e.element,n),e.element=n,n}function _er(t,e,r){let n=t.treeAdapter.getTagName(e),s=R0(n);if(t._isElementCausesFosterParenting(s))t._fosterParentElement(r);else{let i=t.treeAdapter.getNamespaceURI(e);s===C.TEMPLATE&&i===Ee.HTML&&(e=t.treeAdapter.getTemplateContent(e)),t.treeAdapter.appendChild(e,r)}}function Eer(t,e,r){let n=t.treeAdapter.getNamespaceURI(r.element),{token:s}=r,i=t.treeAdapter.createElement(s.tagName,n,s.attrs);t._adoptNodes(e,i),t.treeAdapter.appendChild(e,i),t.activeFormattingElements.insertElementAfterBookmark(i,s),t.activeFormattingElements.removeEntry(r),t.openElements.remove(r.element),t.openElements.insertAfter(e,i,s.tagID)}function Tz(t,e){for(let r=0;r=r;n--)t._setEndLocation(t.openElements.items[n],e);if(!t.fragmentContext&&t.openElements.stackTop>=0){let n=t.openElements.items[0],s=t.treeAdapter.getNodeSourceCodeLocation(n);if(s&&!s.endTag&&(t._setEndLocation(n,e),t.openElements.stackTop>=1)){let i=t.openElements.items[1],a=t.treeAdapter.getNodeSourceCodeLocation(i);a&&!a.endTag&&t._setEndLocation(i,e)}}}}function Ier(t,e){t._setDocumentType(e);let r=e.forceQuirks?Vi.QUIRKS:d4e(e);l4e(e)||t._err(e,ye.nonConformingDoctype),t.treeAdapter.setDocumentMode(t.document,r),t.insertionMode=te.BEFORE_HTML}function xI(t,e){t._err(e,ye.missingDoctype,!0),t.treeAdapter.setDocumentMode(t.document,Vi.QUIRKS),t.insertionMode=te.BEFORE_HTML,t._processToken(e)}function Cer(t,e){e.tagID===C.HTML?(t._insertElement(e,Ee.HTML),t.insertionMode=te.BEFORE_HEAD):_I(t,e)}function Ter(t,e){let r=e.tagID;(r===C.HTML||r===C.HEAD||r===C.BODY||r===C.BR)&&_I(t,e)}function _I(t,e){t._insertFakeRootElement(),t.insertionMode=te.BEFORE_HEAD,t._processToken(e)}function wer(t,e){switch(e.tagID){case C.HTML:{Ji(t,e);break}case C.HEAD:{t._insertElement(e,Ee.HTML),t.headElement=t.openElements.current,t.insertionMode=te.IN_HEAD;break}default:EI(t,e)}}function Rer(t,e){let r=e.tagID;r===C.HEAD||r===C.BODY||r===C.HTML||r===C.BR?EI(t,e):t._err(e,ye.endTagWithoutMatchingOpenElement)}function EI(t,e){t._insertFakeElement(pe.HEAD,C.HEAD),t.headElement=t.openElements.current,t.insertionMode=te.IN_HEAD,t._processToken(e)}function Au(t,e){switch(e.tagID){case C.HTML:{Ji(t,e);break}case C.BASE:case C.BASEFONT:case C.BGSOUND:case C.LINK:case C.META:{t._appendElement(e,Ee.HTML),e.ackSelfClosing=!0;break}case C.TITLE:{t._switchToTextParsing(e,Yi.RCDATA);break}case C.NOSCRIPT:{t.options.scriptingEnabled?t._switchToTextParsing(e,Yi.RAWTEXT):(t._insertElement(e,Ee.HTML),t.insertionMode=te.IN_HEAD_NO_SCRIPT);break}case C.NOFRAMES:case C.STYLE:{t._switchToTextParsing(e,Yi.RAWTEXT);break}case C.SCRIPT:{t._switchToTextParsing(e,Yi.SCRIPT_DATA);break}case C.TEMPLATE:{t._insertTemplate(e),t.activeFormattingElements.insertMarker(),t.framesetOk=!1,t.insertionMode=te.IN_TEMPLATE,t.tmplInsertionModeStack.unshift(te.IN_TEMPLATE);break}case C.HEAD:{t._err(e,ye.misplacedStartTagForHeadElement);break}default:vI(t,e)}}function Ner(t,e){switch(e.tagID){case C.HEAD:{t.openElements.pop(),t.insertionMode=te.AFTER_HEAD;break}case C.BODY:case C.BR:case C.HTML:{vI(t,e);break}case C.TEMPLATE:{Vh(t,e);break}default:t._err(e,ye.endTagWithoutMatchingOpenElement)}}function Vh(t,e){t.openElements.tmplCount>0?(t.openElements.generateImpliedEndTagsThoroughly(),t.openElements.currentTagId!==C.TEMPLATE&&t._err(e,ye.closingOfElementWithOpenChildElements),t.openElements.popUntilTagNamePopped(C.TEMPLATE),t.activeFormattingElements.clearToLastMarker(),t.tmplInsertionModeStack.shift(),t._resetInsertionMode()):t._err(e,ye.endTagWithoutMatchingOpenElement)}function vI(t,e){t.openElements.pop(),t.insertionMode=te.AFTER_HEAD,t._processToken(e)}function Oer(t,e){switch(e.tagID){case C.HTML:{Ji(t,e);break}case C.BASEFONT:case C.BGSOUND:case C.HEAD:case C.LINK:case C.META:case C.NOFRAMES:case C.STYLE:{Au(t,e);break}case C.NOSCRIPT:{t._err(e,ye.nestedNoscriptInHead);break}default:SI(t,e)}}function ker(t,e){switch(e.tagID){case C.NOSCRIPT:{t.openElements.pop(),t.insertionMode=te.IN_HEAD;break}case C.BR:{SI(t,e);break}default:t._err(e,ye.endTagWithoutMatchingOpenElement)}}function SI(t,e){let r=e.type===Ir.EOF?ye.openElementsLeftAfterEof:ye.disallowedContentInNoscriptInHead;t._err(e,r),t.openElements.pop(),t.insertionMode=te.IN_HEAD,t._processToken(e)}function Per(t,e){switch(e.tagID){case C.HTML:{Ji(t,e);break}case C.BODY:{t._insertElement(e,Ee.HTML),t.framesetOk=!1,t.insertionMode=te.IN_BODY;break}case C.FRAMESET:{t._insertElement(e,Ee.HTML),t.insertionMode=te.IN_FRAMESET;break}case C.BASE:case C.BASEFONT:case C.BGSOUND:case C.LINK:case C.META:case C.NOFRAMES:case C.SCRIPT:case C.STYLE:case C.TEMPLATE:case C.TITLE:{t._err(e,ye.abandonedHeadElementChild),t.openElements.push(t.headElement,C.HEAD),Au(t,e),t.openElements.remove(t.headElement);break}case C.HEAD:{t._err(e,ye.misplacedStartTagForHeadElement);break}default:II(t,e)}}function Der(t,e){switch(e.tagID){case C.BODY:case C.HTML:case C.BR:{II(t,e);break}case C.TEMPLATE:{Vh(t,e);break}default:t._err(e,ye.endTagWithoutMatchingOpenElement)}}function II(t,e){t._insertFakeElement(pe.BODY,C.BODY),t.insertionMode=te.IN_BODY,GD(t,e)}function GD(t,e){switch(e.type){case Ir.CHARACTER:{E4e(t,e);break}case Ir.WHITESPACE_CHARACTER:{_4e(t,e);break}case Ir.COMMENT:{Iz(t,e);break}case Ir.START_TAG:{Ji(t,e);break}case Ir.END_TAG:{zD(t,e);break}case Ir.EOF:{C4e(t,e);break}default:}}function _4e(t,e){t._reconstructActiveFormattingElements(),t._insertCharacters(e)}function E4e(t,e){t._reconstructActiveFormattingElements(),t._insertCharacters(e),t.framesetOk=!1}function Ber(t,e){t.openElements.tmplCount===0&&t.treeAdapter.adoptAttributes(t.openElements.items[0],e.attrs)}function Ler(t,e){let r=t.openElements.tryPeekProperlyNestedBodyElement();r&&t.openElements.tmplCount===0&&(t.framesetOk=!1,t.treeAdapter.adoptAttributes(r,e.attrs))}function Mer(t,e){let r=t.openElements.tryPeekProperlyNestedBodyElement();t.framesetOk&&r&&(t.treeAdapter.detachNode(r),t.openElements.popAllUpToHtmlElement(),t._insertElement(e,Ee.HTML),t.insertionMode=te.IN_FRAMESET)}function Wer(t,e){t.openElements.hasInButtonScope(C.P)&&t._closePElement(),t._insertElement(e,Ee.HTML)}function $er(t,e){t.openElements.hasInButtonScope(C.P)&&t._closePElement(),t.openElements.currentTagId!==void 0&&mb.has(t.openElements.currentTagId)&&t.openElements.pop(),t._insertElement(e,Ee.HTML)}function Uer(t,e){t.openElements.hasInButtonScope(C.P)&&t._closePElement(),t._insertElement(e,Ee.HTML),t.skipNextNewLine=!0,t.framesetOk=!1}function Fer(t,e){let r=t.openElements.tmplCount>0;(!t.formElement||r)&&(t.openElements.hasInButtonScope(C.P)&&t._closePElement(),t._insertElement(e,Ee.HTML),r||(t.formElement=t.openElements.current))}function qer(t,e){t.framesetOk=!1;let r=e.tagID;for(let n=t.openElements.stackTop;n>=0;n--){let s=t.openElements.tagIDs[n];if(r===C.LI&&s===C.LI||(r===C.DD||r===C.DT)&&(s===C.DD||s===C.DT)){t.openElements.generateImpliedEndTagsWithExclusion(s),t.openElements.popUntilTagNamePopped(s);break}if(s!==C.ADDRESS&&s!==C.DIV&&s!==C.P&&t._isSpecialElement(t.openElements.items[n],s))break}t.openElements.hasInButtonScope(C.P)&&t._closePElement(),t._insertElement(e,Ee.HTML)}function jer(t,e){t.openElements.hasInButtonScope(C.P)&&t._closePElement(),t._insertElement(e,Ee.HTML),t.tokenizer.state=Yi.PLAINTEXT}function Qer(t,e){t.openElements.hasInScope(C.BUTTON)&&(t.openElements.generateImpliedEndTags(),t.openElements.popUntilTagNamePopped(C.BUTTON)),t._reconstructActiveFormattingElements(),t._insertElement(e,Ee.HTML),t.framesetOk=!1}function Her(t,e){let r=t.activeFormattingElements.getElementEntryInScopeWithTagName(pe.A);r&&(Tz(t,e),t.openElements.remove(r.element),t.activeFormattingElements.removeEntry(r)),t._reconstructActiveFormattingElements(),t._insertElement(e,Ee.HTML),t.activeFormattingElements.pushElement(t.openElements.current,e)}function Ger(t,e){t._reconstructActiveFormattingElements(),t._insertElement(e,Ee.HTML),t.activeFormattingElements.pushElement(t.openElements.current,e)}function zer(t,e){t._reconstructActiveFormattingElements(),t.openElements.hasInScope(C.NOBR)&&(Tz(t,e),t._reconstructActiveFormattingElements()),t._insertElement(e,Ee.HTML),t.activeFormattingElements.pushElement(t.openElements.current,e)}function Ker(t,e){t._reconstructActiveFormattingElements(),t._insertElement(e,Ee.HTML),t.activeFormattingElements.insertMarker(),t.framesetOk=!1}function Ver(t,e){t.treeAdapter.getDocumentMode(t.document)!==Vi.QUIRKS&&t.openElements.hasInButtonScope(C.P)&&t._closePElement(),t._insertElement(e,Ee.HTML),t.framesetOk=!1,t.insertionMode=te.IN_TABLE}function v4e(t,e){t._reconstructActiveFormattingElements(),t._appendElement(e,Ee.HTML),t.framesetOk=!1,e.ackSelfClosing=!0}function S4e(t){let e=DD(t,Cl.TYPE);return e!=null&&e.toLowerCase()===per}function Yer(t,e){t._reconstructActiveFormattingElements(),t._appendElement(e,Ee.HTML),S4e(e)||(t.framesetOk=!1),e.ackSelfClosing=!0}function Jer(t,e){t._appendElement(e,Ee.HTML),e.ackSelfClosing=!0}function Xer(t,e){t.openElements.hasInButtonScope(C.P)&&t._closePElement(),t._appendElement(e,Ee.HTML),t.framesetOk=!1,e.ackSelfClosing=!0}function Zer(t,e){e.tagName=pe.IMG,e.tagID=C.IMG,v4e(t,e)}function etr(t,e){t._insertElement(e,Ee.HTML),t.skipNextNewLine=!0,t.tokenizer.state=Yi.RCDATA,t.originalInsertionMode=t.insertionMode,t.framesetOk=!1,t.insertionMode=te.TEXT}function ttr(t,e){t.openElements.hasInButtonScope(C.P)&&t._closePElement(),t._reconstructActiveFormattingElements(),t.framesetOk=!1,t._switchToTextParsing(e,Yi.RAWTEXT)}function rtr(t,e){t.framesetOk=!1,t._switchToTextParsing(e,Yi.RAWTEXT)}function A4e(t,e){t._switchToTextParsing(e,Yi.RAWTEXT)}function ntr(t,e){t._reconstructActiveFormattingElements(),t._insertElement(e,Ee.HTML),t.framesetOk=!1,t.insertionMode=t.insertionMode===te.IN_TABLE||t.insertionMode===te.IN_CAPTION||t.insertionMode===te.IN_TABLE_BODY||t.insertionMode===te.IN_ROW||t.insertionMode===te.IN_CELL?te.IN_SELECT_IN_TABLE:te.IN_SELECT}function str(t,e){t.openElements.currentTagId===C.OPTION&&t.openElements.pop(),t._reconstructActiveFormattingElements(),t._insertElement(e,Ee.HTML)}function itr(t,e){t.openElements.hasInScope(C.RUBY)&&t.openElements.generateImpliedEndTags(),t._insertElement(e,Ee.HTML)}function atr(t,e){t.openElements.hasInScope(C.RUBY)&&t.openElements.generateImpliedEndTagsWithExclusion(C.RTC),t._insertElement(e,Ee.HTML)}function otr(t,e){t._reconstructActiveFormattingElements(),Ez(e),qD(e),e.selfClosing?t._appendElement(e,Ee.MATHML):t._insertElement(e,Ee.MATHML),e.ackSelfClosing=!0}function ctr(t,e){t._reconstructActiveFormattingElements(),vz(e),qD(e),e.selfClosing?t._appendElement(e,Ee.SVG):t._insertElement(e,Ee.SVG),e.ackSelfClosing=!0}function x4e(t,e){t._reconstructActiveFormattingElements(),t._insertElement(e,Ee.HTML)}function Ji(t,e){switch(e.tagID){case C.I:case C.S:case C.B:case C.U:case C.EM:case C.TT:case C.BIG:case C.CODE:case C.FONT:case C.SMALL:case C.STRIKE:case C.STRONG:{Ger(t,e);break}case C.A:{Her(t,e);break}case C.H1:case C.H2:case C.H3:case C.H4:case C.H5:case C.H6:{$er(t,e);break}case C.P:case C.DL:case C.OL:case C.UL:case C.DIV:case C.DIR:case C.NAV:case C.MAIN:case C.MENU:case C.ASIDE:case C.CENTER:case C.FIGURE:case C.FOOTER:case C.HEADER:case C.HGROUP:case C.DIALOG:case C.DETAILS:case C.ADDRESS:case C.ARTICLE:case C.SEARCH:case C.SECTION:case C.SUMMARY:case C.FIELDSET:case C.BLOCKQUOTE:case C.FIGCAPTION:{Wer(t,e);break}case C.LI:case C.DD:case C.DT:{qer(t,e);break}case C.BR:case C.IMG:case C.WBR:case C.AREA:case C.EMBED:case C.KEYGEN:{v4e(t,e);break}case C.HR:{Xer(t,e);break}case C.RB:case C.RTC:{itr(t,e);break}case C.RT:case C.RP:{atr(t,e);break}case C.PRE:case C.LISTING:{Uer(t,e);break}case C.XMP:{ttr(t,e);break}case C.SVG:{ctr(t,e);break}case C.HTML:{Ber(t,e);break}case C.BASE:case C.LINK:case C.META:case C.STYLE:case C.TITLE:case C.SCRIPT:case C.BGSOUND:case C.BASEFONT:case C.TEMPLATE:{Au(t,e);break}case C.BODY:{Ler(t,e);break}case C.FORM:{Fer(t,e);break}case C.NOBR:{zer(t,e);break}case C.MATH:{otr(t,e);break}case C.TABLE:{Ver(t,e);break}case C.INPUT:{Yer(t,e);break}case C.PARAM:case C.TRACK:case C.SOURCE:{Jer(t,e);break}case C.IMAGE:{Zer(t,e);break}case C.BUTTON:{Qer(t,e);break}case C.APPLET:case C.OBJECT:case C.MARQUEE:{Ker(t,e);break}case C.IFRAME:{rtr(t,e);break}case C.SELECT:{ntr(t,e);break}case C.OPTION:case C.OPTGROUP:{str(t,e);break}case C.NOEMBED:case C.NOFRAMES:{A4e(t,e);break}case C.FRAMESET:{Mer(t,e);break}case C.TEXTAREA:{etr(t,e);break}case C.NOSCRIPT:{t.options.scriptingEnabled?A4e(t,e):x4e(t,e);break}case C.PLAINTEXT:{jer(t,e);break}case C.COL:case C.TH:case C.TD:case C.TR:case C.HEAD:case C.FRAME:case C.TBODY:case C.TFOOT:case C.THEAD:case C.CAPTION:case C.COLGROUP:break;default:x4e(t,e)}}function utr(t,e){if(t.openElements.hasInScope(C.BODY)&&(t.insertionMode=te.AFTER_BODY,t.options.sourceCodeLocationInfo)){let r=t.openElements.tryPeekProperlyNestedBodyElement();r&&t._setEndLocation(r,e)}}function ltr(t,e){t.openElements.hasInScope(C.BODY)&&(t.insertionMode=te.AFTER_BODY,D4e(t,e))}function dtr(t,e){let r=e.tagID;t.openElements.hasInScope(r)&&(t.openElements.generateImpliedEndTags(),t.openElements.popUntilTagNamePopped(r))}function ftr(t){let e=t.openElements.tmplCount>0,{formElement:r}=t;e||(t.formElement=null),(r||e)&&t.openElements.hasInScope(C.FORM)&&(t.openElements.generateImpliedEndTags(),e?t.openElements.popUntilTagNamePopped(C.FORM):r&&t.openElements.remove(r))}function ptr(t){t.openElements.hasInButtonScope(C.P)||t._insertFakeElement(pe.P,C.P),t._closePElement()}function mtr(t){t.openElements.hasInListItemScope(C.LI)&&(t.openElements.generateImpliedEndTagsWithExclusion(C.LI),t.openElements.popUntilTagNamePopped(C.LI))}function htr(t,e){let r=e.tagID;t.openElements.hasInScope(r)&&(t.openElements.generateImpliedEndTagsWithExclusion(r),t.openElements.popUntilTagNamePopped(r))}function gtr(t){t.openElements.hasNumberedHeaderInScope()&&(t.openElements.generateImpliedEndTags(),t.openElements.popUntilNumberedHeaderPopped())}function ytr(t,e){let r=e.tagID;t.openElements.hasInScope(r)&&(t.openElements.generateImpliedEndTags(),t.openElements.popUntilTagNamePopped(r),t.activeFormattingElements.clearToLastMarker())}function Atr(t){t._reconstructActiveFormattingElements(),t._insertFakeElement(pe.BR,C.BR),t.openElements.pop(),t.framesetOk=!1}function I4e(t,e){let r=e.tagName,n=e.tagID;for(let s=t.openElements.stackTop;s>0;s--){let i=t.openElements.items[s],a=t.openElements.tagIDs[s];if(n===a&&(n!==C.UNKNOWN||t.treeAdapter.getTagName(i)===r)){t.openElements.generateImpliedEndTagsWithExclusion(n),t.openElements.stackTop>=s&&t.openElements.shortenToLength(s);break}if(t._isSpecialElement(i,a))break}}function zD(t,e){switch(e.tagID){case C.A:case C.B:case C.I:case C.S:case C.U:case C.EM:case C.TT:case C.BIG:case C.CODE:case C.FONT:case C.NOBR:case C.SMALL:case C.STRIKE:case C.STRONG:{Tz(t,e);break}case C.P:{ptr(t);break}case C.DL:case C.UL:case C.OL:case C.DIR:case C.DIV:case C.NAV:case C.PRE:case C.MAIN:case C.MENU:case C.ASIDE:case C.BUTTON:case C.CENTER:case C.FIGURE:case C.FOOTER:case C.HEADER:case C.HGROUP:case C.DIALOG:case C.ADDRESS:case C.ARTICLE:case C.DETAILS:case C.SEARCH:case C.SECTION:case C.SUMMARY:case C.LISTING:case C.FIELDSET:case C.BLOCKQUOTE:case C.FIGCAPTION:{dtr(t,e);break}case C.LI:{mtr(t);break}case C.DD:case C.DT:{htr(t,e);break}case C.H1:case C.H2:case C.H3:case C.H4:case C.H5:case C.H6:{gtr(t);break}case C.BR:{Atr(t);break}case C.BODY:{utr(t,e);break}case C.HTML:{ltr(t,e);break}case C.FORM:{ftr(t);break}case C.APPLET:case C.OBJECT:case C.MARQUEE:{ytr(t,e);break}case C.TEMPLATE:{Vh(t,e);break}default:I4e(t,e)}}function C4e(t,e){t.tmplInsertionModeStack.length>0?P4e(t,e):wz(t,e)}function xtr(t,e){var r;e.tagID===C.SCRIPT&&((r=t.scriptHandler)===null||r===void 0||r.call(t,t.openElements.current)),t.openElements.pop(),t.insertionMode=t.originalInsertionMode}function btr(t,e){t._err(e,ye.eofInElementThatCanContainOnlyText),t.openElements.pop(),t.insertionMode=t.originalInsertionMode,t.onEof(e)}function Sz(t,e){if(t.openElements.currentTagId!==void 0&&b4e.has(t.openElements.currentTagId))switch(t.pendingCharacterTokens.length=0,t.hasNonWhitespacePendingCharacterToken=!1,t.originalInsertionMode=t.insertionMode,t.insertionMode=te.IN_TABLE_TEXT,e.type){case Ir.CHARACTER:{w4e(t,e);break}case Ir.WHITESPACE_CHARACTER:{T4e(t,e);break}}else TI(t,e)}function _tr(t,e){t.openElements.clearBackToTableContext(),t.activeFormattingElements.insertMarker(),t._insertElement(e,Ee.HTML),t.insertionMode=te.IN_CAPTION}function Etr(t,e){t.openElements.clearBackToTableContext(),t._insertElement(e,Ee.HTML),t.insertionMode=te.IN_COLUMN_GROUP}function vtr(t,e){t.openElements.clearBackToTableContext(),t._insertFakeElement(pe.COLGROUP,C.COLGROUP),t.insertionMode=te.IN_COLUMN_GROUP,Rz(t,e)}function Str(t,e){t.openElements.clearBackToTableContext(),t._insertElement(e,Ee.HTML),t.insertionMode=te.IN_TABLE_BODY}function Itr(t,e){t.openElements.clearBackToTableContext(),t._insertFakeElement(pe.TBODY,C.TBODY),t.insertionMode=te.IN_TABLE_BODY,KD(t,e)}function Ctr(t,e){t.openElements.hasInTableScope(C.TABLE)&&(t.openElements.popUntilTagNamePopped(C.TABLE),t._resetInsertionMode(),t._processStartTag(e))}function Ttr(t,e){S4e(e)?t._appendElement(e,Ee.HTML):TI(t,e),e.ackSelfClosing=!0}function wtr(t,e){!t.formElement&&t.openElements.tmplCount===0&&(t._insertElement(e,Ee.HTML),t.formElement=t.openElements.current,t.openElements.pop())}function gb(t,e){switch(e.tagID){case C.TD:case C.TH:case C.TR:{Itr(t,e);break}case C.STYLE:case C.SCRIPT:case C.TEMPLATE:{Au(t,e);break}case C.COL:{vtr(t,e);break}case C.FORM:{wtr(t,e);break}case C.TABLE:{Ctr(t,e);break}case C.TBODY:case C.TFOOT:case C.THEAD:{Str(t,e);break}case C.INPUT:{Ttr(t,e);break}case C.CAPTION:{_tr(t,e);break}case C.COLGROUP:{Etr(t,e);break}default:TI(t,e)}}function CI(t,e){switch(e.tagID){case C.TABLE:{t.openElements.hasInTableScope(C.TABLE)&&(t.openElements.popUntilTagNamePopped(C.TABLE),t._resetInsertionMode());break}case C.TEMPLATE:{Vh(t,e);break}case C.BODY:case C.CAPTION:case C.COL:case C.COLGROUP:case C.HTML:case C.TBODY:case C.TD:case C.TFOOT:case C.TH:case C.THEAD:case C.TR:break;default:TI(t,e)}}function TI(t,e){let r=t.fosterParentingEnabled;t.fosterParentingEnabled=!0,GD(t,e),t.fosterParentingEnabled=r}function T4e(t,e){t.pendingCharacterTokens.push(e)}function w4e(t,e){t.pendingCharacterTokens.push(e),t.hasNonWhitespacePendingCharacterToken=!0}function bI(t,e){let r=0;if(t.hasNonWhitespacePendingCharacterToken)for(;r0&&t.openElements.currentTagId===C.OPTION&&t.openElements.tagIDs[t.openElements.stackTop-1]===C.OPTGROUP&&t.openElements.pop(),t.openElements.currentTagId===C.OPTGROUP&&t.openElements.pop();break}case C.OPTION:{t.openElements.currentTagId===C.OPTION&&t.openElements.pop();break}case C.SELECT:{t.openElements.hasInSelectScope(C.SELECT)&&(t.openElements.popUntilTagNamePopped(C.SELECT),t._resetInsertionMode());break}case C.TEMPLATE:{Vh(t,e);break}default:}}function Dtr(t,e){let r=e.tagID;r===C.CAPTION||r===C.TABLE||r===C.TBODY||r===C.TFOOT||r===C.THEAD||r===C.TR||r===C.TD||r===C.TH?(t.openElements.popUntilTagNamePopped(C.SELECT),t._resetInsertionMode(),t._processStartTag(e)):O4e(t,e)}function Btr(t,e){let r=e.tagID;r===C.CAPTION||r===C.TABLE||r===C.TBODY||r===C.TFOOT||r===C.THEAD||r===C.TR||r===C.TD||r===C.TH?t.openElements.hasInTableScope(r)&&(t.openElements.popUntilTagNamePopped(C.SELECT),t._resetInsertionMode(),t.onEndTag(e)):k4e(t,e)}function Ltr(t,e){switch(e.tagID){case C.BASE:case C.BASEFONT:case C.BGSOUND:case C.LINK:case C.META:case C.NOFRAMES:case C.SCRIPT:case C.STYLE:case C.TEMPLATE:case C.TITLE:{Au(t,e);break}case C.CAPTION:case C.COLGROUP:case C.TBODY:case C.TFOOT:case C.THEAD:{t.tmplInsertionModeStack[0]=te.IN_TABLE,t.insertionMode=te.IN_TABLE,gb(t,e);break}case C.COL:{t.tmplInsertionModeStack[0]=te.IN_COLUMN_GROUP,t.insertionMode=te.IN_COLUMN_GROUP,Rz(t,e);break}case C.TR:{t.tmplInsertionModeStack[0]=te.IN_TABLE_BODY,t.insertionMode=te.IN_TABLE_BODY,KD(t,e);break}case C.TD:case C.TH:{t.tmplInsertionModeStack[0]=te.IN_ROW,t.insertionMode=te.IN_ROW,VD(t,e);break}default:t.tmplInsertionModeStack[0]=te.IN_BODY,t.insertionMode=te.IN_BODY,Ji(t,e)}}function Mtr(t,e){e.tagID===C.TEMPLATE&&Vh(t,e)}function P4e(t,e){t.openElements.tmplCount>0?(t.openElements.popUntilTagNamePopped(C.TEMPLATE),t.activeFormattingElements.clearToLastMarker(),t.tmplInsertionModeStack.shift(),t._resetInsertionMode(),t.onEof(e)):wz(t,e)}function Wtr(t,e){e.tagID===C.HTML?Ji(t,e):HD(t,e)}function D4e(t,e){var r;if(e.tagID===C.HTML){if(t.fragmentContext||(t.insertionMode=te.AFTER_AFTER_BODY),t.options.sourceCodeLocationInfo&&t.openElements.tagIDs[0]===C.HTML){t._setEndLocation(t.openElements.items[0],e);let n=t.openElements.items[1];n&&!(!((r=t.treeAdapter.getNodeSourceCodeLocation(n))===null||r===void 0)&&r.endTag)&&t._setEndLocation(n,e)}}else HD(t,e)}function HD(t,e){t.insertionMode=te.IN_BODY,GD(t,e)}function $tr(t,e){switch(e.tagID){case C.HTML:{Ji(t,e);break}case C.FRAMESET:{t._insertElement(e,Ee.HTML);break}case C.FRAME:{t._appendElement(e,Ee.HTML),e.ackSelfClosing=!0;break}case C.NOFRAMES:{Au(t,e);break}default:}}function Utr(t,e){e.tagID===C.FRAMESET&&!t.openElements.isRootHtmlElementCurrent()&&(t.openElements.pop(),!t.fragmentContext&&t.openElements.currentTagId!==C.FRAMESET&&(t.insertionMode=te.AFTER_FRAMESET))}function Ftr(t,e){switch(e.tagID){case C.HTML:{Ji(t,e);break}case C.NOFRAMES:{Au(t,e);break}default:}}function qtr(t,e){e.tagID===C.HTML&&(t.insertionMode=te.AFTER_AFTER_FRAMESET)}function jtr(t,e){e.tagID===C.HTML?Ji(t,e):jD(t,e)}function jD(t,e){t.insertionMode=te.IN_BODY,GD(t,e)}function Qtr(t,e){switch(e.tagID){case C.HTML:{Ji(t,e);break}case C.NOFRAMES:{Au(t,e);break}default:}}function Htr(t,e){e.chars=En,t._insertCharacters(e)}function Gtr(t,e){t._insertCharacters(e),t.framesetOk=!1}function B4e(t){for(;t.treeAdapter.getNamespaceURI(t.openElements.current)!==Ee.HTML&&t.openElements.currentTagId!==void 0&&!t._isIntegrationPoint(t.openElements.currentTagId,t.openElements.current);)t.openElements.pop()}function ztr(t,e){if(p4e(e))B4e(t),t._startTagOutsideForeignContent(e);else{let r=t._getAdjustedCurrentElement(),n=t.treeAdapter.getNamespaceURI(r);n===Ee.MATHML?Ez(e):n===Ee.SVG&&(m4e(e),vz(e)),qD(e),e.selfClosing?t._appendElement(e,n):t._insertElement(e,n),e.ackSelfClosing=!0}}function Ktr(t,e){if(e.tagID===C.P||e.tagID===C.BR){B4e(t),t._endTagOutsideForeignContent(e);return}for(let r=t.openElements.stackTop;r>0;r--){let n=t.openElements.items[r];if(t.treeAdapter.getNamespaceURI(n)===Ee.HTML){t._endTagOutsideForeignContent(e);break}let s=t.treeAdapter.getTagName(n);if(s.toLowerCase()===e.tagName){e.tagName=s,t.openElements.shortenToLength(r);break}}}var QVr=String.prototype.codePointAt==null?(t,e)=>(t.charCodeAt(e)&64512)===55296?(t.charCodeAt(e)-55296)*1024+t.charCodeAt(e+1)-56320+65536:t.charCodeAt(e):(t,e)=>t.codePointAt(e);function L4e(t,e){return function(n){let s,i=0,a="";for(;s=t.exec(n);)i!==s.index&&(a+=n.substring(i,s.index)),a+=e.get(s[0].charCodeAt(0)),i=s.index+1;return a+n.substring(i)}}var M4e=L4e(/["&\u00A0]/g,new Map([[34,"""],[38,"&"],[160," "]])),W4e=L4e(/[&<>\u00A0]/g,new Map([[38,"&"],[60,"<"],[62,">"],[160," "]]));var Vtr=new Set([pe.AREA,pe.BASE,pe.BASEFONT,pe.BGSOUND,pe.BR,pe.COL,pe.EMBED,pe.FRAME,pe.HR,pe.IMG,pe.INPUT,pe.KEYGEN,pe.LINK,pe.META,pe.PARAM,pe.SOURCE,pe.TRACK,pe.WBR]);function Ytr(t,e){return e.treeAdapter.isElementNode(t)&&e.treeAdapter.getNamespaceURI(t)===Ee.HTML&&Vtr.has(e.treeAdapter.getTagName(t))}var Jtr={treeAdapter:Tc,scriptingEnabled:!0};function Nz(t,e){let r={...Jtr,...e};return $4e(t,r)}function Xtr(t,e){let r="",n=e.treeAdapter.isElementNode(t)&&e.treeAdapter.getTagName(t)===pe.TEMPLATE&&e.treeAdapter.getNamespaceURI(t)===Ee.HTML?e.treeAdapter.getTemplateContent(t):t,s=e.treeAdapter.getChildNodes(n);if(s)for(let i of s)r+=$4e(i,e);return r}function $4e(t,e){return e.treeAdapter.isElementNode(t)?Ztr(t,e):e.treeAdapter.isTextNode(t)?trr(t,e):e.treeAdapter.isCommentNode(t)?rrr(t,e):e.treeAdapter.isDocumentTypeNode(t)?nrr(t,e):""}function Ztr(t,e){let r=e.treeAdapter.getTagName(t);return`<${r}${err(t,e)}>${Ytr(t,e)?"":`${Xtr(t,e)}`}`}function err(t,{treeAdapter:e}){let r="";for(let n of e.getAttrList(t)){if(r+=" ",n.namespace)switch(n.namespace){case Ee.XML:{r+=`xml:${n.name}`;break}case Ee.XMLNS:{n.name!=="xmlns"&&(r+="xmlns:"),r+=n.name;break}case Ee.XLINK:{r+=`xlink:${n.name}`;break}default:r+=`${n.prefix}:${n.name}`}else r+=n.name;r+=`="${M4e(n.value)}"`}return r}function trr(t,e){let{treeAdapter:r}=e,n=r.getTextNodeContent(t),s=r.getParentNode(t),i=s&&r.isElementNode(s)&&r.getTagName(s);return i&&r.getNamespaceURI(s)===Ee.HTML&&_z(i,e.scriptingEnabled)?n:W4e(n)}function rrr(t,{treeAdapter:e}){return``}function nrr(t,{treeAdapter:e}){return``}function U4e(t,e){return hb.parse(t,e)}function F4e(t,e,r){typeof t=="string"&&(r=e,e=t,t=null);let n=hb.getFragmentParser(t,r);return n.tokenizer.write(e,!0),n.getFragment()}function q4e(t){let e=t.includes('"')?"'":'"';return e+t+e}function srr(t,e,r){let n="!DOCTYPE ";return t&&(n+=t),e?n+=` PUBLIC ${q4e(e)}`:r&&(n+=" SYSTEM"),r&&(n+=` ${q4e(r)}`),n}var df={isCommentNode:Hh,isElementNode:it,isTextNode:no,createDocument(){let t=new Oo([]);return t["x-mode"]=MD.DOCUMENT_MODE.NO_QUIRKS,t},createDocumentFragment(){return new Oo([])},createElement(t,e,r){let n=Object.create(null),s=Object.create(null),i=Object.create(null);for(let o=0;oeD(a)&&a.name==="!doctype");i?i.data=s??null:(i=new jh("!doctype",s),df.appendChild(t,i)),i["x-name"]=e,i["x-publicId"]=r,i["x-systemId"]=n},setDocumentMode(t,e){t["x-mode"]=e},getDocumentMode(t){return t["x-mode"]},detachNode(t){if(t.parent){let e=t.parent.children.indexOf(t),{prev:r,next:n}=t;t.prev=null,t.next=null,r&&(r.next=n),n&&(n.prev=r),t.parent.children.splice(e,1),t.parent=null}},insertText(t,e){let r=t.children[t.children.length-1];r&&no(r)?r.data+=e:df.appendChild(t,df.createTextNode(e))},insertTextBefore(t,e,r){let n=t.children[t.children.indexOf(r)-1];n&&no(n)?n.data+=e:df.insertBefore(t,df.createTextNode(e),r)},adoptAttributes(t,e){for(let r=0;r=Ve.Zero&&t<=Ve.Nine}function arr(t){return t>=Ve.LowerA&&t<=Ve.LowerZ||t>=Ve.UpperA&&t<=Ve.UpperZ}function orr(t){return t>=Ve.UpperA&&t<=Ve.UpperF||t>=Ve.LowerA&&t<=Ve.LowerF}var xu;(function(t){t[t.NoValue=0]="NoValue",t[t.Unquoted=1]="Unquoted",t[t.Single=2]="Single",t[t.Double=3]="Double"})(xu||(xu={}));var oo={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])},yb=class{constructor({xmlMode:e=!1,decodeEntities:r=!0},n){this.cbs=n,this.state=Ie.Text,this.buffer="",this.sectionStart=0,this.index=0,this.baseState=Ie.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=e,this.decodeEntities=r,this.entityTrie=e?rD:tD}reset(){this.state=Ie.Text,this.buffer="",this.sectionStart=0,this.index=0,this.baseState=Ie.Text,this.currentSequence=void 0,this.running=!0,this.offset=0}write(e){this.offset+=this.buffer.length,this.buffer=e,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=Ie.BeforeTagName,this.sectionStart=this.index):this.decodeEntities&&e===Ve.Amp&&(this.state=Ie.BeforeEntity)}stateSpecialStartSequence(e){let r=this.sequenceIndex===this.currentSequence.length;if(!(r?YD(e):(e|32)===this.currentSequence[this.sequenceIndex]))this.isSpecial=!1;else if(!r){this.sequenceIndex++;return}this.sequenceIndex=0,this.state=Ie.InTagName,this.stateInTagName(e)}stateInSpecialTag(e){if(this.sequenceIndex===this.currentSequence.length){if(e===Ve.Gt||ff(e)){let r=this.index-this.currentSequence.length;if(this.sectionStart>14)-1;if(!this.allowLegacyEntity()&&e!==Ve.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]&vc.VALUE_LENGTH)>>14){case 1:{this.emitCodePoint(this.entityTrie[this.entityResult]&~vc.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(e){(e|32)===Ve.LowerX?(this.entityExcess++,this.state=Ie.InHexEntity):(this.state=Ie.InNumericEntity,this.stateInNumericEntity(e))}emitNumericEntity(e){let r=this.index-this.entityExcess-1;r+2+ +(this.state===Ie.InHexEntity)!==this.index&&(r>this.sectionStart&&this.emitPartial(this.sectionStart,r),this.sectionStart=this.index+Number(e),this.emitCodePoint(aI(this.entityResult))),this.state=this.baseState}stateInNumericEntity(e){e===Ve.Semi?this.emitNumericEntity(!0):H4e(e)?(this.entityResult=this.entityResult*10+(e-Ve.Zero),this.entityExcess++):(this.allowLegacyEntity()?this.emitNumericEntity(!1):this.state=this.baseState,this.index--)}stateInHexEntity(e){e===Ve.Semi?this.emitNumericEntity(!0):H4e(e)?(this.entityResult=this.entityResult*16+(e-Ve.Zero),this.entityExcess++):orr(e)?(this.entityResult=this.entityResult*16+((e|32)-Ve.LowerA+10),this.entityExcess++):(this.allowLegacyEntity()?this.emitNumericEntity(!1):this.state=this.baseState,this.index--)}allowLegacyEntity(){return!this.xmlMode&&(this.baseState===Ie.Text||this.baseState===Ie.InSpecialTag)}cleanup(){this.running&&this.sectionStart!==this.index&&(this.state===Ie.Text||this.state===Ie.InSpecialTag&&this.sequenceIndex===0?(this.cbs.ontext(this.sectionStart,this.index),this.sectionStart=this.index):(this.state===Ie.InAttributeValueDq||this.state===Ie.InAttributeValueSq||this.state===Ie.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(e)||(this.stack.push(e),V4e.has(e)?this.foreignContext.push(!0):Y4e.has(e)&&this.foreignContext.push(!1)),(i=(s=this.cbs).onopentagname)===null||i===void 0||i.call(s,e),this.cbs.onopentag&&(this.attribs={})}endOpenTag(e){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,e),this.attribs=null),this.cbs.onclosetag&&this.isVoidElement(this.tagname)&&this.cbs.onclosetag(this.tagname,!0),this.tagname=""}onopentagend(e){this.endIndex=e,this.endOpenTag(!1),this.startIndex=e+1}onclosetag(e,r){var n,s,i,a,o,c;this.endIndex=r;let u=this.getSlice(e,r);if(this.lowerCaseTagNames&&(u=u.toLowerCase()),(V4e.has(u)||Y4e.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(e){this.endIndex=e,this.options.xmlMode||this.options.recognizeSelfClosing||this.foreignContext[this.foreignContext.length-1]?(this.closeCurrentTag(!1),this.startIndex=e+1):this.onopentagend(e)}closeCurrentTag(e){var r,n;let s=this.tagname;this.endOpenTag(e),this.stack[this.stack.length-1]===s&&((n=(r=this.cbs).onclosetag)===null||n===void 0||n.call(r,s,!e),this.stack.pop())}onattribname(e,r){this.startIndex=e;let n=this.getSlice(e,r);this.attribname=this.lowerCaseAttributeNames?n.toLowerCase():n}onattribdata(e,r){this.attribvalue+=this.getSlice(e,r)}onattribentity(e){this.attribvalue+=tb(e)}onattribend(e,r){var n,s;this.endIndex=r,(s=(n=this.cbs).onattribute)===null||s===void 0||s.call(n,this.attribname,this.attribvalue,e===xu.Double?'"':e===xu.Single?"'":e===xu.NoValue?void 0:null),this.attribs&&!Object.prototype.hasOwnProperty.call(this.attribs,this.attribname)&&(this.attribs[this.attribname]=this.attribvalue),this.attribvalue=""}getInstructionName(e){let r=e.search(lrr),n=r<0?e:e.substr(0,r);return this.lowerCaseTagNames&&(n=n.toLowerCase()),n}ondeclaration(e,r){this.endIndex=r;let n=this.getSlice(e,r);if(this.cbs.onprocessinginstruction){let s=this.getInstructionName(n);this.cbs.onprocessinginstruction(`!${s}`,`!${n}`)}this.startIndex=r+1}onprocessinginstruction(e,r){this.endIndex=r;let n=this.getSlice(e,r);if(this.cbs.onprocessinginstruction){let s=this.getInstructionName(n);this.cbs.onprocessinginstruction(`?${s}`,`?${n}`)}this.startIndex=r+1}oncomment(e,r,n){var s,i,a,o;this.endIndex=r,(i=(s=this.cbs).oncomment)===null||i===void 0||i.call(s,this.getSlice(e,r-n)),(o=(a=this.cbs).oncommentend)===null||o===void 0||o.call(a),this.startIndex=r+1}oncdata(e,r,n){var s,i,a,o,c,u,l,d,f,p;this.endIndex=r;let m=this.getSlice(e,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,m),(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[${m}]]`),(p=(f=this.cbs).oncommentend)===null||p===void 0||p.call(f)),this.startIndex=r+1}onend(){var e,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=(e=this.cbs).onend)===null||r===void 0||r.call(e)}reset(){var e,r,n,s;(r=(e=this.cbs).onreset)===null||r===void 0||r.call(e),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(e){this.reset(),this.end(e)}getSlice(e,r){for(;e-this.bufferOffset>=this.buffers[0].length;)this.shiftBuffer();let n=this.buffers[0].slice(e-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(e){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(e),this.tokenizer.running&&(this.tokenizer.write(e),this.writeIndex++)}end(e){var r,n;if(this.ended){(n=(r=this.cbs).onerror)===null||n===void 0||n.call(r,new Error(".end() after done!"));return}e&&this.write(e),this.ended=!0,this.tokenizer.end()}pause(){this.tokenizer.pause()}resume(){for(this.tokenizer.resume();this.tokenizer.running&&this.writeIndexe.xmlMode||e._useHtmlParser2?J4e(t,e):j4e(t,e,r,n)),De=KDe(drr,(t,e)=>e.xmlMode||e._useHtmlParser2?oD(t,e):Q4e(t)),frr=De([]),{contains:prr}=v0,{merge:mrr}=v0,{parseHTML:hrr}=v0,{root:grr}=v0;var RI="abacdefghjklmnopqrstuvwxyzABCDEFGHJKLMNOPQRSTUVWXYZ0123456789";function X4e(t,e){return Math.floor(Math.random()*(e-t+1))+t}function Yh(t,e,r){var n="";let s=e===void 0?!0:e;for(var i=0;i|《|》/g,"").replace(/\$|#/g," ").trim()}function Xi(t){let e=t/1048576;return e>1024?`${(e/1024).toFixed(2)}GB`:`${parseInt(e).toFixed(0)}MB`}function kz(t,e){if(!t||!e)return{length:0,sequence:"",offset:0};for(var r="",n=t.length,s=e.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+=t[c]:(o=d,r="",r+=t.substr(o,c+1-o))));return{length:a,sequence:r,offset:d}}function Tl(t,e){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 pf(t){return new Promise(e=>setTimeout(e,t))}function XD(t,e,r){let n=String(t||""),s=String(e||"").trim();if(!s)return n;let i=s.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),a=new RegExp(`(^|;\\s*)${i}=([^;]*)`);if(!a.test(n)){let o=n.trimEnd(),c=o?o.endsWith(";")?" ":"; ":"";return`${o}${c}${s}=${String(r??"")}`}return n.replace(a,(o,c)=>`${c}${s}=${String(r??"")}`)}var wl=t=>t.map(e=>e.split(";")[0]+";");var _u=Ce(NI(),1),LI=Ce(Xn(),1);var Mz=Ce(Xn(),1),Jh=require("path"),gs=Ce(require("fs"),1),cLe=require("stream");async function yrr(t,e){let r=await fe.get(t,{responseType:"stream",headers:Object.assign({Range:"bytes=0-0"},e)}).catch(n=>(console.error(n),n.response||{status:500,data:{}}));if(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]}var kI={},oLe="",Xh=(process.env.NODE_PATH||".")+"/vod_cache",Arr=1024*1024*100;async function uLe(t){try{if(gs.default.existsSync(t)){let e=await gs.default.promises.readdir(t);await Promise.all(e.map(async r=>{let n=`${t}/${r}`;(await gs.default.promises.stat(n)).isDirectory()?await uLe(n):await gs.default.promises.unlink(n)})),await gs.default.promises.rmdir(t)}}catch(e){console.error("Error deleting folder:",e)}}uLe(Xh);function xrr(t){try{gs.default.readdir(Xh,(e,r)=>{if(r)for(let n of r){if(n===t)continue;let s=(0,Jh.join)(Xh,n);gs.default.stat(s,(i,a)=>{a&&a.isDirectory()&&gs.default.readdir(s,(o,c)=>{if(c)for(let u of c)u.endsWith(".p")||gs.default.rm((0,Jh.join)(s,u),{recursive:!0},()=>{})})})}})}catch(e){console.error(e)}}async function brr(t,e,r,n,s,i){if(n=n||Mz.default.enc.Hex.stringify(Mz.default.MD5(r)).toString(),oLe!==n&&(xrr(n),oLe=n),!kI[n]){let[k,B]=await yrr(r,s);if(!k||!B["content-length"]){e.redirect(r);return}kI[n]=B}let a=!0;await gs.default.promises.access((0,Jh.join)(Xh,n)).catch(k=>a=!1),a||await gs.default.promises.mkdir((0,Jh.join)(Xh,n),{recursive:!0});let o=parseInt(kI[n]["content-length"]),c=Math.max(0,parseInt(i?.skipBytes||0)||0),u=Math.min(c,Math.max(0,o-1)),l=o-u;if(!Number.isFinite(l)||l<=0){e.redirect(r);return}let d=0,f=l-1,p={};if(t.headers.range){let k=t.headers.range.trim().replace(/^bytes=/i,"").split("-"),B=k[0]!=="",M=k.length>1&&k[1]!=="";if(M){let D=parseInt(k[1],10);Number.isFinite(D)&&(f=D)}if(B){let D=parseInt(k[0],10);Number.isFinite(D)&&(d=D)}if(d=Math.max(0,Number.isFinite(d)?d:0),!M||!Number.isFinite(f)?f=l-1:f=Math.min(l-1,f),d>f){e.code(416),e.headers({"content-range":`bytes */${l}`});return}Object.assign(p,kI[n]),p["content-length"]=(f-d+1).toString(),p["content-range"]=`bytes ${d}-${f}/${l}`,e.code(206)}else Object.assign(p,kI[n]),p["content-length"]=l.toString(),e.code(200);i=i||{chunkSize:1024*512,poolSize:10,timeout:1e3*10};let m=i.chunkSize,h=i.poolSize,y=i.timeout,g=u+d,b=u+f,x=Math.ceil(o/m),A=Math.floor(b/m),S=Math.floor(g/m),I=S,R=!1,w={};for(let k=0;k{(async function M(D){if(R||S>A){B();return}if(D===void 0&&(S-I)*m>=Arr){setTimeout(M,5);return}let L=D!==void 0?D:S++,Z=`${t.id}-${L}`;try{let W=(0,Jh.join)(Xh,n,`${t.id}-${L}.p`),U=!0;if(await gs.default.promises.access(W).catch(z=>U=!1),!U){let z=L*m,j=Math.min(o-1,(L+1)*m-1),J=await fe.get(r,{responseType:"stream",timeout:y,headers:Object.assign({Range:`bytes=${z}-${j}`},s)}),se=(0,Jh.join)(Xh,n,`${t.id}-${L}.dl`),oe=gs.default.createWriteStream(se),ue=setTimeout(()=>{oe.destroy(new Error(`${Z} read timeout`))},y),Te=new Promise(je=>{oe.on("finish",async()=>{R?await gs.default.promises.rm(se).catch(Fe=>console.error(Fe)):(await gs.default.promises.rename(se,W).catch(Fe=>console.error(Fe)),w[Z]=W),je(!0)}),oe.on("error",async Fe=>{console.error(Fe),await gs.default.promises.rm(se).catch(ve=>console.error(ve)),je(!1)})});J.data.pipe(oe);let Ne=await Te;if(clearTimeout(ue),!Ne){setTimeout(()=>{M(L)},15);return}}setTimeout(M,5)}catch(W){console.error(W),setTimeout(()=>{M(L)},15)}})()});e.headers(p);let N=new cLe.PassThrough;return new Promise(k=>{let B=!0;(async function M(){try{if(I>A||R){N.end(),k();return}if(!B){setTimeout(M,5);return}let D=`${t.id}-${I}`;if(!w[D]){setTimeout(M,5);return}let L=I*m,Z=Math.min(o-1,(I+1)*m-1),W=Math.max(g,L)-L,z=Math.min(b,Z)-L-W+1,j=w[D];delete w[D];let J=await gs.default.promises.open(j,"r");if(z<=0){await J.close().catch(oe=>console.error(oe)),await gs.default.promises.rm(j).catch(oe=>console.error(oe)),I++,setTimeout(M,5);return}let se=Buffer.alloc(z);await J.read(se,0,z,W),await J.close().catch(oe=>console.error(oe)),await gs.default.promises.rm(j).catch(oe=>console.error(oe)),B=N.write(se),B||N.once("drain",()=>{B=!0}),I++,setTimeout(M,5)}catch{setTimeout(M,5)}})()}),N.on("close",async()=>{Object.keys(w).forEach(k=>{k.startsWith(t.id)&&(gs.default.rm(w[k],{recursive:!0},()=>{}),delete w[k])}),R=!0}),N}var xb=brr;var DLe=Ce(vLe(),1);var Dnr=["\u9884\u544A"],Bnr=t=>{if(!t)return!1;let e=String(t);return Dnr.some(r=>e.includes(r))};function SLe(t){let e=/(E|EP)0?([1-9]\d*).*/.exec(t);if(e)return Number(e[2]);let r=/.*?([1-9]\d*).*/.exec(t);return r?Number(r[1]):null}function ILe(t){return t.replace(/\.[^.]+$/,"").replace(/^(S\d+)?E?P?\d+\.?/i,"")}function CLe(t){return t==null?"":String(t)}function Lnr(t,e){let r=CLe(t),n=CLe(e);return r===n?0:r.localeCompare(n,void 0,{numeric:!0,sensitivity:"base"})}function Is(t,e){let r={};return e.length===0||(e=e.filter(n=>!Bnr(n?.vod_name)),e.length===0)||(e.sort((n,s)=>{let i=Lnr(n.vod_group,s.vod_group);if(i!==0)return i;let a=SLe(n.vod_name),o=SLe(s.vod_name);if(a!==null&&o!==null&&a!==o)return a-o;let c=ILe(n.vod_name),u=ILe(s.vod_name);return c!==u?c.localeCompare(u):a!==null&&o!==null?a-o:n.vod_name.localeCompare(s.vod_name)}),e=e.map(n=>{let s=Xi(n.vod_size);return{vod_id:n.vod_id,vod_name:Z4e("",` ${n.vod_name.replace(/.[^.]+$/,"")} [${s}]`)}}),r.from=t,r.url=e.map(n=>n.vod_name+"$"+n.vod_id).join("#")),r}async function Zn(t,e,r={}){let n=(Array.isArray(t)?t:[t]).filter(Boolean).map(o=>String(o).trim()).filter(o=>o.length>0);if(n.length===0)return"";let s=Number(r?.timeoutMs)>0?Number(r.timeoutMs):5e3,i=Array.isArray(r?.methods)&&r.methods.length>0?r.methods:["HEAD","GET"],a={"User-Agent":O0,...e&&typeof e=="object"?e:{}};return await new Promise(o=>{let c=!1,u=f=>{c||(c=!0,o(f))},l=setTimeout(()=>u(n[0]),s*i.length+200),d=async f=>{for(let p of i)try{let m=await he.request({url:f,method:p,headers:a,proxy:!1,timeout:s,maxRedirects:5,validateStatus:()=>!0});if(m?.status>=200&&m.status<400){clearTimeout(l),u(f);return}}catch{}};n.forEach(f=>{d(f)})})}var Rl=t=>globalThis.getPanEnabled?globalThis.getPanEnabled(t):!0,W4=t=>Rl("ali")&&/www.alipan.com|www.aliyundrive.com/.test(t),$4=t=>Rl("quark")&&t.includes("https://pan.quark.cn"),U4=t=>Rl("uc")&&t.includes("https://drive.uc.cn"),TLe=t=>Rl("tianyi")&&/cloud\.189\.cn/.test(t),wLe=t=>Rl("yidong")&&/caiyun\.139\.com|yun\.139\.com/.test(t),RLe=t=>Rl("123")&&/(?:www\.)?(?:123684\.com|123865\.com|123912\.com|123pan\.com|123pan\.cn|123592\.com)/.test(t),NLe=t=>Rl("115")&&(/115.com|anxia.com|115cdn.com/.test(t)||/^(?:magnet:\?|ed2k:\/\/)/i.test(String(t||"").trim())),OLe=t=>Rl("baidu")&&/pan\.baidu\.com/.test(t),kLe=t=>Rl("xunlei")&&/pan\.xunlei\.com/.test(t),PLe=t=>Rl("guangyapan")&&/guangyapan\.com\/s\//.test(t);var qt=Cs;(function(t,e){let r=Cs,n=t();for(;;)try{if(parseInt(r(921,"XV(r"))/1+parseInt(r(445,"91jT"))/2+-parseInt(r(823,"Pbkv"))/3+-parseInt(r(1052,"jA9E"))/4+-parseInt(r(956,"IP#v"))/5+-parseInt(r(591,"2a7K"))/6*(-parseInt(r(555,"[PKS"))/7)+parseInt(r(835,"WZpm"))/8*(parseInt(r(1040,"a8&$"))/9)===e)break;n.push(n.shift())}catch{n.push(n.shift())}})(F4,-865469+486221*3);function F4(){let t=["WPZdSY91W5jE","W7rhW7a9hq","zCo0uq","W7/cHJC","WQarb2W","W7RcHhxdSCovCSoCW5VcUqdcVKe","d8oDdmoW","WQ7dJtZcQCkvimobW7NcSHC","WRpcGxZdIb7cUSowW4e","WQ3dJCkzcCk7WOC","n8oOf8opnG","fmougCo7b8kVyvidbq","W7pcHI3cIvzNE8oCWR8w","WP/dICkkgSkZWOy","WO7cHMH9dW","W619W504xa","ySoEW6RdSCoe","qCobW4pdV8o4W6vcjG","jfBcSKX2","g8ocW6FdTZq","zSkxWOOFW5hdJ8oqWO8+W5O","WQOhW5pdNmodW7ZdUIO","WQ5uWRtdNLCjW7nu","WPJdMsbaW6i","d8kSW7hcVmo5meb6W4OT","bmoPW7BcOCoUdKu","W6D0W7OsFa","iSk+FmkXua","fmogcmonla","eSo0WP0BW7O","CSokWOy","W6O7W5tcKmoq","be7cLvX8WPZcPa","W4GyWQ7cV8k0EW","WOngWRtcS8oOFmkhoComWQ8","W6zfW5G6wq","W7FdLL3dVwVdRx5+W5xcMa","WQKoW53dGSos","W5rfW4mAeG","WOLADSomscCOW6PJxttcLa","tSocW4KmWRr4W5/dR8kiW47dVSkMW74","tSoaW48kWRb5WR7dLSkZW7BdLmk/","WOldSYv7W5rthmkL","W7RcL1lcUCk6mSkiW4yWEG","W4tcHLhcH8ka","WPtdNclcPSki","EmkJdCkMhG","jJaenN4","wZeCW5agaKbgW4KJ","WPhdOYv7W4Kzb8o8WQFdJW","a8kmWORcMGq","d8owfCo4","zKddU8kEFSksWO0","WQhdJ27cVf8","W4uBWQFcVmkUDSkhnCoCW7i","bSk9WPVcUq","c8o8WOaoW4LtW74xW6hcUq","WOJdMmknua","WR5ZjvSrBW","WPVdVbrwW4i","WRS6uCkNbW","cH3cSmoqmW","W691dIBdThpcNqpcQCol","WOldTfBcN8kl","cmkFWRvRW5m","WQxcNgVdJaNcSCo9W4zwxG","W7nTW4OWrCoiWPC","WQ3dNcdcPCoikCo3W77cRYu","WQpcI3/dGa","W4ldPv7dOde","vSoaW5Do","AGJdQSkiDmkuWPe","WQxdLhdcLxa","WOXuWQldP28","W6v1yqDJqM/cNW","g8oWWPW1","WPxdRJf7W5rtimkLWQpdKG","WPlcGwHIiXpcNa","WPlcGge","FIdcQCk+tq","W5uhiCkEhMyA","W6O+hcxdQhJcIWJcKSoD","W49IW7axuq","W4NdKeZdTqW","gmoSbmo/kW","a8oeW4ldJq","WRXcbxyy","lCoBWRCyW7i","WQ5UwaZdS0dcNbRcIW","WQFcN15jbG","jqCThW","WRLFWQpdGNusW6rzhgu","W7aOhH3dIG","W4myWP/cLmoiBmkXzmkKWRy","WR5iWRK","WPJdT3VcHmknsSoC","EmocW6RdOCop","yYlcO8kIkmonAcqJha","WR0qW53dH8od","W5hdUwFdMta","WRnInhyT","W5ZcOheVsG","WRTBWQldJg0t","WPpdHw7cOCkw","hmozW4C","W7hdLWxdUsNdP2HMWPtcNq","W6xdJHGpu8kz","W41aWRlcUa","WOBdVYrLW7zAhSkOWOpdKq","W75MD0z1x2hdLCo7WRK","oSo3WOaBW5i","W6tdJHKwq8kzh8kWWOlcJW","iJWnc0G","emkQWPbuW7y/","i8oSrr9Uq2JcG8oJpq","WPBdQf7cRvO","WRddGSo3W70","W5unm8ko","baJcQ8oonmk8WPfn","dCo4WOaWW5by","FZRcP8k+eSoWyW","asJcKmoqla","fqNcNmojeCk8WOTc","hSk9xmkUD8kxWOm","W5hdHZPweJdcJfhdMW","C8kkWOCiW7RdMCo/WPiVW5W","uCoCW4Lp","W7xcLI3cRG","lmkGsCkZmSk/WPlcR8oeWPm","fCobbmoHhSkRBevhbW","r2xdQmkBW4y","dmkwWP8","WPNdISohW6RcTq","WR44uCkS","W5ieW5JcMa","WPJdOJvI","W6WHEqbdpvSvWR1LodhdOq","eqtcM8oFnCkMWQbEWQBcQW","WOjhW4CMoG","WR1tWRxdMLamW6zfcM8","W5GicSkrnG","q0xdRW","hSohcmk6","W6JdNLS","W6PGWRa","c8oifCoMnq","WPJcJLNdTHy","WQNdMCoHW6tcGa","WRtcI3ddGbu","eu/cMeTgWRdcUaVdOLm","W6DTW5aWimoaWP/cGu/dHW","W69uW4KieW","hCozW4RdJr4","W5LhWQ8","fSoLW6xcUSo9iG4","W6bOW5u2DSooWOBcIsRdKG","W57cQLJcN8kr","W7e4aYxdQg7cTWRcOG","W7zHWQG","WRWAW4tdMmouW7FdVqzcwW","W6vLW4G0","W6PGWRu","W5meW50","W65bC1i","d8o2WP0L","W75QCKXFrgy","C3GHW4Wz","W5xcR1Gkwmkx","W4ZcLuCmxSkrWR4aW6ey","W4TBWOLFfa","bCoOW6hcTSoulKu","WQ0nW5/dLmoi","WOrqW50KeMBdSMJdNG","W4O8la/dLq","W7L2W7aYCa","W7bpDuxcGa","W5uwnmkkcc5gWRnyyG","WQPjWQpdHgCo","eSkXWPVcJcRdK8ouWRVdQSoT","cre3i20","W6NcMNekEG","W5/dN8kRkW","dmkDWP1pW6aBWP3dOG","W4VdGSkXoI7dHq","W6xdJGSlvCkdlmk0WQ/cIG","W4xdGCkNpq/dGSoWm8ozWO0","lSo1cWaZx2/cGW","gSodW4RdKqGpdqi","EwZdVSkSEa","W7fXWOrGnW","W59hWRi","W6KXf8kYfG","WRVdQmkfimku","emoKW6pcNmoPlurRW5Om","c8oeW4/dMG","WQJdGSkcea","WRHoWQldHg4h","gCoIW7lcNCo+kKnTW5W","W7zrW44","W7TbBulcJCol","WQ/dHCkDdCo4WPD1hSkYDq","qutdKSkBEa","W7X2D0e","eCktWPm","W6zzW4m0da","W7HSv11YrgZdLW","tCoMW4TcW4VcLW","Ed3cRCkPgq","W5LBWQ/cQa","W77cN2RcS8k7","buNcM1O","W65PqdNdTwVcMGJcKSov","W6DiW5qW","cmkTtCk1ymk7WRJcR8ofW54","ovhcM2zy","W7ziW5mW","w8k8aSk3","umoCW4ncW4RcHSo0WRpdRgK","a1tcNum","fmoUW7NcTCoIia","ivBdQmkznmkeWPhcKaX6","eu/cMeTgWRZcPa","W6SRaYpdQq","WR9iWRNdGa","WQhcIhi","b8okW4BdHG","q8kDWO40W4m","uSokWOy","qhOxW4KydLbg","W7ldL0RdRa","FZVcVmkP","W4PhWQNcVq","gCkCWPbyW5OIWO4","fSkmW546pq","WR9BWQldIMuu","WQ8KDCkfea","BCoYuCow","W4vPW4ORpq","WOnbW6O/kgNdQMtdL8oA","WRf2of8","W4NdNSkMoIFdJmodiSkxWPi","WR1GpLGg","W7VcNfBcSq","WOpdVIbGW4n/gW","mGBcI8oFCmoH","W7ldQNVdJW8","cmozWP9+zxhdN2jvW7O","wmkmWQmaW7K","W7H7CexcKq","WQFdObVcOSk2","WRjAnL0+","aSoZW74","W6BdKe/dSsVdQq","WPdcK3L2eG","lCoPvbKhx3FcG8k+iG","WONdJ3m","BCo5WOfYyG","CSkBWOapW73dJW","vSkIaSkRcW","WQOhW4BdH8odW6a","i8oSrr8","WQbyWOhdGe4","W6XHW5G8E8oYWPBcNaddKa","cmkwWOHJyW","W48lnSkFvxCgW7ewEa","cmobdSoJjmk0","WQpcG37dRWe","W5/dN8k7eHG","q8ozWP5R","WQ/dHCkDdCkjWP1+","W5utW4pcG8obD8kxzmk5WRC","bCoMWRJcSSoNlKjKW4e9","W5uGW7NcTmoa","yeXUtG5YfSoZWRddMSkBESkC","W45HWOFcS8kt","WPzuW5WJoG","vCkHgmkJkSoLW6S0bey","WRuZxM9Qz2ddTW","W5K0fZJdNG","iri0cu4","cCkNvmkQDW","fLpcGey","pSo4WOybW5XC","fSoTW74","WPLSWQddJLC","kcG8c3C","W7BdILNdSq","W5yxW4pcHSob","zCkgWPytW7ZdJ8oBWQqYW5O","W7DrWO5nfG","FJFcTCkJaSolzcOzfG","e8k9WOpcUwtdNSo1WQRdVG","eepcGa","c8oWWPy0W5j0W7PyW6xcOW","lmkgFG","WQRdLI/cPCkunSobW7NcTbe","ASo2W7jnW4K","dCkCWOPyW5OIWO4","eSoqgCo4mG","iGO8dL8","pSodh8oIca","nXCXh2uTrG","WPVcGmo7yNVcNmoEamkuWPT5jq","W6KYgbddRW","pG44fhWTtSoLW6VdNG","wCkNbCkLpmoWWRiQxqe","W79jv3Lq","W7rDqftcMSoyW48","FYBcP8k4aSok","mCo1W7xcSCoj","W4rKzftcJq","AmoYWQXKzq","d8o8WPqJW5HyW6j1W7tcUG","WQyAoNr8","W6VcNfS","pXxcGmo4lq","W7rxWOtcICkj","WPWHDSk5nG","cmoTWPrP","W49AWQlcTq","W4rbWRlcOmk0nCoDDmoxW7a","nr8PgW","CSkBWOitW7ZdJ8olWO8","cmoqhCoNnCk1wL5ycG","qCorWOzVuNFdIq","WQNdR3hcVwe","W40tW4G","WQvvfMLbtuu","W5zAW7u0lq","qhOaW48FgvbxWRGO","WRpcJhRdLX7cNCog","gCkWumkSFSk/WPpcVSoZW4q","W6TGWQLp","W59fWQRcUCkZ","WRK5v8kG","AeZdTSkFrmkjWPO","WQOlW47dLa","WRT7WRhdP1m","W75jW4i1lq","WRxdNSoHW7VdNaeKl2yV","W69NWQ9c","eCk1WPVcVq","W69hD0pcT8oqW5i","W6VcGvGzuG","nbG8d1yW","ESoUqCoBW6q","WPb0W5Wioq","rCoxWO5Z","DtpcOCkaoG","W48fB8kBf30kW7bwyG","WQRdMsu","a8o2squc","zu1Otq1YeSosWQRdPmkxwmk8","W65gyftcJCoMW4ldPSkVfa","fmoGW6pcSmoJ","DmkAlSkalW","W44NmCkyiW","WOpdOuNcHSkqrCowWQy","jmo2xrmKra","jupcU0bq","W7WPbJZdUa","rmoIxq","WOnzW4SKoG","W5ydW4lcNq","WRtcGxBdLrFcTCowW5DGra","r8onW7fcW5ZcHSo4WPFdI34","W4ldHCk2iZRcKCkZECkxWPe","W5GAmmktcxeAW4nqEq","q8kHtG","h1lcGf5QW6/dR1ddPK0","WPJdPSkeaCk+","WOtdUrjMW5rFeCk2","eSkXWPS","nqW0df8","W73dGCkmgtS","zCo2W4pdN8og","W6RdKKtdKGi","EmoODSokW7L1WRVcIG","WRS3sSk1hLu","uM/dLSkvW6q","WQqYyCkTja","W61BCK4","ehhcGufx","W5tcHdhdKGFcIJKeW6r3eCkc","WP0pjuXN","W7FdMLJdTZddVhj2WQxcNq","d8o8WOe+W4HzW6LpW5/cSq","hx4FW4K","WQjpWOtdNNi","WQbFWQNdNG","W57dGJ4oBG","B0BdUCkFAmktWQhcKW0+","rSoiWPPMzh3dJh9gW7a","eCoTW7BcTa","WPldMxFcIfxdMH0","b8kXWPZcRctdK8oPWR8","WP7dTYX3","WPzhW4S2nN8","W6eyW4pcV8ol","WR3dGX3cUmkq","rw3dS8ktW7O","e8k9WOhcUa","W6XwWR1JgW","W48hmmkwgNCm","WR7dJCkFdCkXWPTOcG","WQ/cRh/dHJe","W6xdSZ44Ca","WQZdHmoYW6ZcRbiZoKWU","W5TQBx7cJG","W6BcII/cO2TKEG","WR/dKdtcTa","W4OoW5pcUmob","W5RcQsRcT18","ze/dPSkoW6C","jSo4rry","q2hcRW","WRS5s8kG","Cmo+WO1gsa","W79QA0C","W58fW7qwnu3dPeW","mCoNW6ddKX4","WRtdGSoVW6ZcNtK1iLi4","WOldSvJcGSkwx8ojWQy","u8omWP98xa","oSkvWOVcTZO","WPrqW50/kNxdPw7dQCoA","WP9+lM0a","WRZdGmkcc8k6WPTVfW","WQSqahb8weGIoq","WQnpW6KYcG","ANpdSSkuqq","WPGGixnY","WOtdUsP3W4HPc8kOWRRdMG","W7zAW5CAda","WQ/dMSoQ","WQBdGSoOW63cLHqipW","WQ7cHxBdGa","ASoismoMW4e","rMSEW4W","W49DWRpcVSkSxmkBiCoD","jrSWcLyLvSoLWPVdMW","eCoyAquR","r8obW5DcW4RcHSoiWRpdKhy","q8obW4pdPW","vCoDWO5JF3VdJN9WW6O","WR/dHYxcRq","WR7dMYxcUa","W7hdLIJcKu/dOSkwW4flwZCmya","pG44fhWTtSoLW6VdLG","W5uwnmkkcc5gWRm","FKtdQmkjFG","WQhdGf7cKCkO","ydVcSmkPkmonDs4Oaq","WORdPgBcPM4","W6/dINBcLG7dRa","W6tdJHKjwCkfd8kW","WRxdN8oO","vCodsCoWW74","qwOrW5qdh19x","W41KvKvZ","umocW4u","W7jSW50NF8oOWPC","wg7dImkoW7G","W5KqkCkmhG","WQWznbFdMCkkWOpdOmkphCkaW6xdRG","W4bxW78","WQFdQv/cTvS","WRxdJMS","yCkDWOuFW73dMCo3WO80W58","WOddTZnHW4m","j8oHqr4Zu0tcKSo4iW","W44tW5dcKCobD8k7","WPxcL35/cqJcM0pdGSoP","W49bBK50","WRSBW4ddLmoQW7FdOd5Fxq","ha7cJSoFgCkHWO1lWQFcSW","eu/cMeS","vbNcRCkujW","gHFcK8oUaq","W67cKgG","WRldImo0W6xcKGuK","WPNdOcrBW4Hqea","ACo/qmoD","WOpdOIbMW5nf","W5VcNLC","WR7dNfBcM8kr","uSowW5rF","W5izW73cMSotymk6uSkRWQe","WRNdTCkYoSk9","wKNdT8kgW7hdQCkn","cCkWs8k1CCk7WRJcSSoi","WOP+p34E","hSkrWPHpW6a4WPK","WOXeW78KfW","paWKiMm","W5mhomkojhKiW65sCG","W5FcHwaqwq","WRJdVXvLW74","zCoCWQjWFq","qxCsW5ipnfPw","dSoGrZqy","WOJdJsJcGSkR","hSkaWOHv","W7CSaq","bmo1W6xcUSoLieHUW5C","W6ldNetdUsa","uCoAW7jbW40","f8kcWRfiW6y","r8k0lSk4ha","WRZdNCkXi8kq","W4ldKvNdKIO","BSoluSo2W7K","rCkUW7BcSmoOkfrMW5PN","W4VcGLG","W5hcNvSPBa","WQLDjf0E","rNOEW5agcKDxWRGL","rSolWPLJANa","bCkAxmkovG","WPFcK39XeqK","W7H3WQH6o8kBumkRWRhdNq","zWBcP8kudq","W7fvW6mwkW","W63dN8kWgsy","WO9bW4S9la","W4jqWR7cPmkyySktkCotW6u","vCoDWOX4Ag3dHvrBW7a","WQTVw33cPtVdMcVcGmo3WRFdSGO","WPlcGgq","pCkqWP1pW6a5","W6jtW44G","z1hdV8kxAa","W4rbWRlcOmk0","W6SVaW","WOxdSxBcKN8","WRPRWOxdP3C","F8oZrmokW75V","W6RcGfBcV8kZ","WRODeNzuCfG","WR10luiyFW","W65AC0/cHSoEW5/dR8k9","WR4GW5/dHSoK","W7FdLL3dVrRdP3u","W69QW70Teq","WPxdOHD7W4jtemkbWRJdMG","W7RcGJtcOW","W4HhWQ/cPSkI","aY4NfLq","gCkCWPjz","WQ3dG8kyha","W6vyW5q3kXVdL3icWOO","W5lcLvOex8kl","uComW5vc","W61Gz0XZxL3dHmolWRy","WQRdKt7cQCkrimkXW7VdQvu","vxOh","W7ZcHJJcOLf/Bq","W4RdR0ZdOHi","W5FcG3urwCkcWQq","hmoQWOe","WRSJkwv/","WODxW54jhG","W7vHW5eLDSoaWOFcIcRdNa","W67cKvOq","BCojW4jfW7NcLSoJWQ/cMv4","WPxdJMS","W7L9WQ5Vo8kwDG","WQJdMIJcQCkjiSobW7NcUGK","WRJdLmkFgSk3","iCkbu8kDqq","W6ddMWqTya","dmkaWP5j","ESoUB8oBW5S","gJ7cTCooka","WRypW5VdU8oH","W6dcKtdcQW","WQNdM8oHWQFcKaKS","iCo4rrqP","aGlcI8ovm8kNWPXpWPBcPa","W6LTzW","WQNdG8kadCk4","WOhdSIv+W7q","WOH0WPxdNLO","W6/dNSo2W6RdNbqKp0SV","E1xdVSkBB8kfWPRcUamH","B8koWOmuW4JdG8oeWP50W5m","WQ8vWRpdJgWmW6vDigO","gCkNvmkX","WO/cHNLGd0ddLWNdSSo9","W6SYacq","ECo1sq","W4lcI0NcISkp","W6foDLLu","uSocW4xdTSofW7HNkIK","W5LQW6OHmq","W6bOW5v1FSooWOtcGYddHW","W7r2W5a","W6FdMsaStW","fsZcQmoRba","W6hcGLRcP8kqoSkqW4zaCa","W77cH0ZcOq","WPNdS3ZcMmkR","W7K/hspdQ2/dHXVdV8kw","WPm9DCkYiq","z8oQW5rzW7i","DSkIlSk1pG","W4ZdNCkJna","W5VcIeqkwCkgWOirW5Cr","WOhdPuJcL8kswa","WPhcHeycrCkqW7i","WPxdTLpcGmkA","ewlcOMLu","W57dG8kRpG","WQJcGxRdGr7cPSor","rmoqW4TFW53cKq","W7BdMLNdRIddVa","W6XLW4G2CG","W6ddH1VdStFdQ2jmWPpcLW","WRz0iW","WQ3dNcdcPCk4lmo6","W7nHW70hvq","emoarqez","eKFcKaj/WRZcRbRcVvW","W6hcKtu","lmk6rCkUuq","WO/cHNLGd0ddLWNdVmo9","W4WilctdVG","jmoWxriEx38","W6ZdKudcTYldQ2vmWONcKq","WQNdNLNcRSkN","d8ocW4FdHJi5aa","W6DLWQpcL8kg","b1pcH0y","WQlcMYpcSmkllmoTW7NdTru","W6xcRvpcOmkLjW","FSoUu8oBW5r1WRe","FmoYvSow","uSolWO94iNNdIh9RW60","pCkkWPqpW6VcKCkiWP8PW50","WQTMluuaEdWUWQDB","WOjHohKv","AxZdJCkoDG","WPrqW48KoG","WRtcI0JdKqNcVComW5u","WP5JWOldRee","v8ohW4ddTSo0W6vC","W6tcLIRcRG","tvtdHCkmW5NdRSkfiCoGWP8","W6dcHJtcTLHSASoAWPq7","WOC5x8k5oG","fqNcMW","WP8bW7ldP8o/pSochCo1W47cNrBdQq","hCkuWO9yWRn/","BCk3uX4V","fmksWP9BW7y","lwFcUgLk","u8oxWQzLENVdN0HoW6W","W7e9WRzznCkB","dmkGWQFcNIm","naRcTq","W6VdLSkqpZO","W5/dN8kMnI/dGSoYm8ks","W7ddKuldOa","W7Haqdmec2GriwX7Ea","W65lyftcI8orW6BdQmk2ea","WRVdG8kzlCk3WPDY","WQZdKdG","W5NdRGG2xq","FeZdRmkFrmkjWPO","WQG5xmk9hue","WO5bW5OG","amkWtSkVC8k5WOi","saVcP8k6eG","WO9qW5Kpl2VdP3ldQCox","WOpcN1rOnG","WPXxh3q","x8opW4hdTG","r20F","W65NWRvjmCkQAmkJWRJdNq","CSkfc8kPdG","dSoxgCoNE8kKBerjtG","W5dcJZVcJ0e","bG7cNmoFkCkkWO9yWQZcTG","W6SfgSkUaG","WPNdOIr/W5u","WO3dNmoGW77cOG","WP/dPIr8W6bFe8k0W6xdMa","W7VcKZZcQhjKCSoAW6q1","WRZdMCkFaa","W5GfnCkifW","fmkMWORcGZ/dKSoXWR/dQq","W53dICkynH8","W690W6uBoa","W7VdUCktpsm","WQxdVcFcT8k0","WQtdUwJcR18","WP/dN2T/dG3cMvtdUCoO","pre+g04TtCoU","WPxcM3T1iXpcNa","WQBdSrTgW58","W5RcGL0vtG","FYFcPmk4hSonAYO","WOnUWQldHNa","dCo1WPSIW4K","WOtcIhNdRa4","bSkKWOpcTt8","gSodW4RdKqGpeaNdUGm","h8ofcmo0","WQ4Ij05h","gmo3W5WWW5fcW7nFW67cSq","i8osW4dcM8oM","FmkYpSk/kG","lCo0omoZoW","AZFcSG","WO9dW4SzmwhdQq","W4xcOLRcJSkx","ACo/vCoxW7L5WORcMCk0WQq","WPSSb3jP","bmo1W7BcOCo/nhzHW5OG","W6hcJtdcVG","EKRdLSkvBmkfWOZcPamM","w3OeW78Ab1jlWRGL","oaO4f0K","W7S6gYNdTq","WQG5xmkX","WQ0/vmkXoKi","W601bJi","WRpdGSoPW6W","WQjSW48MoG","W79MzvTJrvldKCowWRW","amkMWOm","l8kNASkuFW","W4tdKmkVnG","e8kUW6xcTSo6mKr7W5O7","W7VcQdFcJ0y","t0xdTq","W5XhWQNcPmkOBmkDnW","WQLdWO/dNMGbW7vz","W4Knk8kFfuSDW6vjCG","W61TW4OWrCovWOhcJbVdHG","WQJcGhvsfW","WOxdHhFcJuBdNcCgW5Dq","qCoBW5/dUW","uSoPWOa+W4vsWQvlW6ZcVa"];return F4=function(){return t},F4()}var WLe=async t=>{let e=Cs;return globalThis[e(1094,"$jU5")]?await globalThis[e(692,"URuC")](t):t};function Mnr(){let t=Cs;return(globalThis[t(735,"rlOa")]||[])[t(573,"$jU5")](r=>r[t(498,"dde[")]===t(632,"5txH"))||{}}function $Le(t){let e=Cs,r={rVZaN:function(n,s){return n(s)},gBkwB:function(n,s){return n||s}};return r[e(732,"WZpm")](String,r[e(713,"hi!E")](t,""))[e(505,"Pbkv")](",")[1986*-2+44*154+2*-1402][e(759,"Sg)5")]()}function BLe(t){let e=Cs;return{xrLgj:function(n,s){return n(s)}}[e(1090,"bAH5")]($Le,t)[e(566,"[PKS")](/^\w+:\/\//,"")[e(877,"$jU5")]("/")[721+103*-7][e(1050,"dde[")]()}function Cs(t,e){let r=F4();return Cs=function(n,s){n=n-(2981+2614*-1);let i=r[n];if(Cs.yyJTCR===void 0){var a=function(d){let f="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=",p="",m="";for(let h=0,y,g,b=0;g=d.charAt(b++);~g&&(y=h%4?y*64+g:g,h++%4)?p+=String.fromCharCode(255&y>>(-2*h&6)):0)g=f.indexOf(g);for(let h=0,y=p.length;hl},ReOnI:function(u,l){return u(l)},gAdoC:function(u,l,d,f,p){return u(l,d,f,p)},OXlmn:function(u,l){return u-l}};r=i[s(562,"U3K9")](r,{});let a=t[s(1041,"tWQ%")](i[s(386,"]xNp")]);Object[s(1093,"zYqv")](r,q4),a&&nn[s(408,"7Kze")]&&Object[s(689,"Oo8o")](r,{Authorization:nn[s(432,"ilWv")]});let o=await fe[s(658,"RWdJ")](Fnr+"/"+t,e,{headers:r})[s(749,"ilWv")](u=>u[s(627,"U3K9")]||{status:500,data:{}}),c=i[s(669,"xQ)x")](n,-193*-40+-43*70+1*-4707);return i[s(943,"Sg)5")](o[s(708,"7Kze")],-317*25+-6897+1*15251)&&i[s(638,"[PKS")](c,0)?(await i[s(531,"]xNp")](pf,-1184*-6+-1535+-4569),i[s(951,"bAH5")](j4,t,e,r,i[s(657,"O&ab")](c,-324+-199*20+123*35))):o[s(879,")1*!")]||{}}async function wc(t,e,r,n){let s=qt,i={iuTsr:function(c,u){return c||u},ooIpM:function(c,u){return c===u},oKnIr:function(c,u){return c>u},YDlNu:function(c,u){return c(u)},jXaBZ:function(c,u,l,d,f){return c(u,l,d,f)},scUju:function(c,u){return c-u}};r=i[s(668,"rlOa")](r,{}),B0[s(387,"Ynsb")]&&Object[s(1099,"w9z6")](r,{Authorization:B0[s(674,"IP#v")]});let a=await fe[s(588,"1K)4")](qnr+"/"+t,e,{headers:r})[s(526,"xv$$")](c=>c[s(529,"O&ab")]||{status:500,data:{}}),o=i[s(560,"zYqv")](n,5488+3*-2962+3401);return i[s(485,"WZpm")](a[s(655,"xQ)x")],3159+787*-7+-2779*-1)&&i[s(906,"W0z*")](o,3769+2554*3+11431*-1)?(await i[s(629,"7Kze")](pf,-31*-6+4329+-3515),i[s(625,"[PKS")](wc,t,e,r,i[s(678,"RWdJ")](o,1333+4*-333))):a[s(493,"91jT")]||{}}async function nK(){let t=qt,e={wIdVc:function(r,n){return rn[t(567,"$jU5")]||{status:500,data:{}});e[t(598,"jA9E")](r[t(480,"RufB")],5237*1+-4435+-1*602)&&(nn=r[t(586,"ilWv")],nn[t(981,"(qYv")+"e"]=e[t(826,"IP#v")](_u.default,r[t(493,"91jT")][t(913,"[PKS")+"e"])[t(367,"fk%f")](),nn[t(674,"IP#v")]=nn[t(593,"IjC$")]+" "+nn[t(640,"tWQ%")+"en"],await e[t(478,"8Lel")](Qnr,nn[t(698,"Oo8o")+t(919,"W0z*")]))}}async function QLe(){let t=qt,e={qrJUy:function(r,n){return r>=n},vvQxw:function(r,n){return r-n},GnrJo:function(r){return r()},XbBYN:function(r,n){return rl>=-7596+235*-8+9676&&l<-19*450+303*15+4405}),c=o[t(968,"HxpU")]?.[t(869,"91jT")]?.[t(979,"O&ab")]("#")[1],u=e[t(694,"Ynsb")](Unr,c);if(u?.[t(725,"8Lel")+"en"]){let l={...u,auth:(u[t(910,"fQ#0")]||e[t(373,"HxpU")])+" "+u[t(467,"XV(r")+"en"],expire_time:u[t(789,"A9(V")]?e[t(482,"jsU%")](e[t(682,"A9(V")](_u.default)[t(898,"lZs)")](),u[t(460,"tWQ%")]):e[t(969,"[PKS")](e[t(695,"w9z6")](_u.default)[t(1049,"1K)4")](),7200)};await e[t(706,"[PKS")](Hnr,l)}}catch(r){console[t(413,"jA9E")](e[t(935,"7$Tl")],r[t(843,"Sg)5")])}}async function Gnr(){let t=qt,e={oHdcJ:function(n,s,i){return n(s,i)},ejJkM:t(1101,"w9z6")+t(1074,"URuC"),bATWi:function(n,s){return n>s},OEbOk:function(n,s,i){return n(s,i)},lUWbQ:t(620,"91jT")+t(534,"2a7K")};if(!Nl||!nn[t(532,"lZs)")]?.[t(1007,"zYqv")+t(807,"7Kze")])return;let r=await e[t(577,"(qYv")](wc,e[t(1056,"fQ#0")],{drive_id:nn[t(872,"rlOa")][t(558,"q@A)")+t(581,"W0z*")],parent_file_id:Nl,limit:100});if(Array[t(730,"rlOa")](r[t(894,"91jT")])&&e[t(1019,"O&ab")](r[t(703,"HxpU")][t(723,"rlOa")],-24*-137+-5620+2*1166))for(let n of r[t(510,"Ynsb")])await e[t(839,"U3K9")](wc,e[t(421,"XV(r")],{drive_id:nn[t(1054,"2a7K")][t(997,"lZs)")+t(1081,"8Lel")],file_id:n[t(507,"HxpU")]})}async function znr(){let t=qt,e={TSWHm:function(o,c,u){return o(c,u)},ncXJm:t(809,"Oo8o")+t(653,"xQ)x"),xinPM:function(o,c,u){return o(c,u)},TSCnc:t(426,"ilWv")+t(918,"7Kze"),KPeGA:t(1080,"q@A)"),sDaIA:t(756,"HxpU"),FDlXf:t(847,"jA9E"),watfn:t(771,"#c#!")+t(814,"2a7K"),agpBR:t(429,"tWQ%"),wNYLD:t(371,"jsU%")};if(!nn[t(662,"Sg)5")])return null;if(Nl)return Nl;let r=await e[t(882,"xv$$")](wc,e[t(1105,"URuC")],{});if(!r[t(644,"a8&$")+t(514,"jsU%")])return null;nn[t(635,"fQ#0")]=r;let n=r[t(501,"![Jl")+t(581,"W0z*")],s=await e[t(1067,"Ynsb")](wc,e[t(798,"lZs)")],{drive_id:n,parent_file_id:e[t(803,"Pbkv")],limit:100,order_by:e[t(574,"URuC")],order_direction:e[t(580,"jsU%")]}),i=Array[t(479,"jsU%")](s[t(696,"2a7K")])?s[t(470,")1*!")][t(720,"IP#v")](o=>o[t(717,"W0z*")]===MLe):null;return i?.[t(393,"]xNp")]?(Nl=i[t(799,"ilWv")],Nl):(Nl=(await e[t(1107,"fQ#0")](wc,e[t(425,"a8&$")],{check_name_mode:e[t(605,"Ynsb")],drive_id:n,name:MLe,parent_file_id:e[t(887,"#c#!")],type:e[t(963,"91jT")]}))[t(473,"91jT")]||null,Nl)}async function sK(){let t=qt,e={SpFbo:function(r){return r()},SAXrj:function(r,n,s){return r(n,s)},IlFrd:t(511,"IjC$")+t(886,"2a7K")};if(await e[t(932,"5txH")](nK),await e[t(934,"]xNp")](QLe),!nn[t(718,"Pbkv")]?.[t(462,"RufB")+t(661,"P$LD")]){let r=await e[t(613,"ilWv")](wc,e[t(1012,"5txH")],{});r[t(557,"A9(V")+t(714,"A9(V")]&&(nn[t(1014,"hi!E")]=r)}return nn[t(1014,"hi!E")]?.[t(1025,"8Lel")+t(807,"7Kze")]||""}async function Knr(t){let e=qt,r={unyAQ:function(i){return i()},kpxAY:function(i,a){return i||a},ZALGS:function(i,a,o){return i(a,o)},qiwZr:e(859,"W0z*")+e(819,"P$LD")+e(946,"Oo8o")},n=await r[e(439,"w9z6")](sK);if(r[e(1016,"jA9E")](!n,!t))return null;let s=await r[e(827,"]xNp")](wc,r[e(475,"lZs)")],{file_id:t,drive_id:n});return s?.[e(795,"W0z*")]?s:null}async function Vnr(t){let e=qt,r={TFLAu:function(a){return a()},ytHBh:function(a,o){return a||o},RTmsc:function(a,o,c){return a(o,c)},yVaqM:e(858,"xQ)x")+e(716,"xQ)x")+e(1055,"zYqv")+"fo",vpnTV:e(647,"L#Th")+e(424,"A9(V"),eKPQB:e(405,"Oo8o")},n=await r[e(1015,"A9(V")](sK);if(r[e(830,"$jU5")](!n,!t))return null;let s=await r[e(409,"Ynsb")](wc,r[e(457,"91jT")],{file_id:t,drive_id:n,category:r[e(742,"U3K9")],url_expire_sec:r[e(770,"L#Th")]}),i=s?.[e(465,"q@A)")+e(845,"2a7K")+e(790,"jA9E")];return i?.[e(850,"URuC")+e(1029,"IP#v")]??i?.[e(624,"RufB")+e(412,"w9z6")+e(806,"#c#!")]??null}async function HLe(t,e=qt(506,"1K)4"),r=""){let n=qt,s={BrWHm:function(o,c){return o(c)},fpFGf:function(o){return o()},QHQnj:function(o,c,u){return o(c,u)},jpkTG:n(476,"91jT")+n(427,"[PKS"),CxdBL:function(o,c){return o||c},RVpcW:n(615,"5txH"),gWuoN:n(397,"7$Tl"),vXeFO:n(637,"bAH5"),hsqWW:function(o,c){return o(c)}};await s[n(903,"Sg)5")](WI,t);let i=await s[n(942,"bAH5")](sK);if(!i)return{items:[],next_marker:""};let a=await s[n(865,"w9z6")](wc,s[n(650,"L#Th")],{drive_id:i,parent_file_id:s[n(954,"Ynsb")](e,s[n(456,"zYqv")]),limit:200,order_by:s[n(554,"]xNp")],order_direction:s[n(966,"$jU5")],marker:s[n(673,"XV(r")](r,"")});return{items:Array[n(1011,"O&ab")](a?.[n(930,"a8&$")])?a[n(1063,"IjC$")]:[],next_marker:s[n(1008,"lZs)")](String,a?.[n(1045,")1*!")+"r"]||""),drive_id:i}}async function GLe(t){let e=qt,r={kwnxR:function(n,s){return nc}},n=r[e(985,"A9(V")](typeof t,r[e(584,"W0z*")])?r[e(813,"HxpU")](FLe,t):t;if(!n)return[];if(await r[e(1017,"rlOa")](GLe,n),!D0[n[e(1039,"Sg)5")]])return[];let s=[],i=[],a=async(o,c,u)=>{let l=e,d=await r[l(660,"fk%f")](j4,r[l(472,")1*!")],{share_id:o,parent_file_id:c,limit:200,order_by:r[l(1108,"fk%f")],order_direction:r[l(931,"bAH5")],marker:r[l(596,"$jU5")](u,"")},{"X-Share-Token":D0[o][l(525,"jsU%")+"n"]}),f=d[l(856,"xQ)x")];if(!f)return[];if(d[l(697,"Pbkv")+"r"]){let m=await r[l(446,"Pbkv")](a,o,c,d[l(667,"fQ#0")+"r"]);for(let h of m)f[l(808,"7Kze")](h)}let p=[];for(let m of f)if(r[l(741,"Sg)5")](m[l(922,")1*!")],r[l(634,"P$LD")]))p[l(512,"URuC")](m);else if(r[l(468,"RWdJ")](m[l(1006,"91jT")],r[l(753,"xQ)x")])&&r[l(663,"jA9E")](m[l(576,"fk%f")],r[l(944,")1*!")])){if(r[l(745,"L#Th")](m[l(402,"RufB")],r[l(666,"91jT")](r[l(975,"xQ)x")](238*22+9359+-13571,10062+-9038*1),-13*-311+-5175+1137)))continue;m[l(568,"xQ)x")]=m[l(608,"(qYv")][l(575,"fQ#0")](/玩偶哥.*【神秘的哥哥们】/g,""),s[l(374,"8Lel")](m)}else r[l(679,"IP#v")](m[l(986,"RWdJ")],r[l(376,"Ynsb")])&&m[l(1065,"]xNp")+l(761,"lZs)")]&&jnr[l(899,"IjC$")](h=>m[l(936,"tWQ%")+l(590,"8Lel")][l(938,"zYqv")](h))&&i[l(914,"5txH")](m);for(let m of p){let h=await r[l(851,"V)Hk")](a,m[l(671,"![Jl")],m[l(802,"7$Tl")]);for(let y of h)f[l(535,"dde[")](y)}return f};return await r[e(729,"A9(V")](a,n[e(941,"xv$$")],n[e(607,"IjC$")]),r[e(846,"a8&$")](i[e(916,"xQ)x")],-692+52*153+-7264)&&s[e(738,"URuC")](o=>{let c=e,u=r[c(398,"tWQ%")](Tl,o,i);u[c(600,"WZpm")]&&(o[c(594,"O&ab")]=u[c(1088,"2a7K")][c(406,"zYqv")])}),s}var tg={};async function zLe(t,e){let r=qt,n={hOaRD:function(i){return i()},hCRgL:function(i){return i()},WFgLE:function(i){return i()},wUPWJ:function(i,a){return i(a)},gWTJv:function(i,a,o,c){return i(a,o,c)},abpYA:r(726,"XV(r")+r(463,"$jU5")};if(await n[r(939,"xQ)x")](nK),await n[r(690,"Sg)5")](QLe),await n[r(461,"URuC")](znr),!Nl||!nn[r(452,"Sg)5")]?.[r(1027,"U3K9")+r(840,"HxpU")])return null;if(tg[e])return tg[e];await n[r(589,"Oo8o")](Gnr);for(let i of Object[r(561,"zYqv")](tg))delete tg[i];if(await n[r(417,"A9(V")](GLe,{shareId:t}),!D0[t])return null;let s=await n[r(880,"WZpm")](j4,n[r(733,"2a7K")],{file_id:e,share_id:t,auto_rename:!0,to_parent_file_id:Nl,to_drive_id:nn[r(782,"O&ab")][r(1027,"U3K9")+r(1086,"xv$$")]},{"X-Share-Token":D0[t][r(878,"7$Tl")+"n"]});return s[r(791,"XV(r")]?(tg[e]=s[r(817,"5txH")],s[r(496,"Oo8o")]):null}async function iK(t,e,r=!0){let n=qt,s={XrEzw:function(u,l){return u===l},NfLBK:n(606,"IjC$"),KwBfg:function(u,l){return u(l)},RYtvX:function(u,l,d){return u(l,d)},RPzln:n(927,")1*!")+n(537,"RWdJ")+n(1024,"xQ)x")+"fo",JAkxo:n(911,"bAH5")+n(841,"1K)4"),fDVGM:n(1005,"U3K9"),IOBSv:function(u,l){return u&&l},WwNmE:function(u,l,d,f){return u(l,d,f)}};if(s[n(419,"tWQ%")](t,s[n(998,"bAH5")]))return await s[n(777,"V)Hk")](Vnr,e);let i=await s[n(793,"ilWv")](zLe,t,e);if(!i||!nn[n(718,"Pbkv")]?.[n(750,"L#Th")+n(870,"a8&$")])return null;let a=await s[n(889,"WZpm")](wc,s[n(719,"91jT")],{file_id:i,drive_id:nn[n(709,"#c#!")][n(722,"Ynsb")+n(982,"bAH5")],category:s[n(428,"Oo8o")],url_expire_sec:s[n(783,"]xNp")]}),o=a?.[n(854,"L#Th")+n(893,"![Jl")+n(375,"IP#v")],c=o?.[n(850,"URuC")+n(378,"RWdJ")]??o?.[n(579,"IjC$")+n(739,"XV(r")+n(1083,"rlOa")]??null;return s[n(527,"V)Hk")](!c,r)?(delete tg[e],s[n(489,"1K)4")](iK,t,e,!1)):c}async function KLe(t,e,r=!0){let n=qt,s={dPIAl:function(o,c){return o===c},CNEsZ:n(675,"lZs)"),lxbMe:function(o,c){return o(c)},czWeC:function(o,c,u){return o(c,u)},XKkXP:function(o,c,u){return o(c,u)},EzGbU:n(757,"tWQ%")+n(410,"2a7K")+n(639,"[PKS"),NWMyo:function(o,c,u,l){return o(c,u,l)}};if(s[n(1002,"jA9E")](t,s[n(754,"zYqv")]))return await s[n(583,"dde[")](Knr,e);let i=await s[n(917,"Ynsb")](zLe,t,e);if(!i||!nn[n(532,"lZs)")]?.[n(1084,"rlOa")+n(441,"fk%f")])return null;let a=await s[n(649,"RufB")](wc,s[n(601,"2a7K")],{file_id:i,drive_id:nn[n(545,"91jT")][n(597,"2a7K")+n(469,"IP#v")]});return a[n(762,"7Kze")]?a:r?(delete tg[e],s[n(766,"Ynsb")](KLe,t,e,!1)):null}async function VLe(t){let e=qt,r={mMrpT:function(i,a){return i(a)},ESsrJ:function(i,a){return i(a)},bLwHr:function(i,a,o){return i(a,o)},LLkZw:function(i,a){return i(a)},eUqcy:e(370,"Ynsb")};if(!r[e(764,"8Lel")](W4,t))return null;let n=r[e(776,"RWdJ")](FLe,t);if(!n)return null;let s=await r[e(572,"P$LD")](Ynr,n);return s=s[e(1059,"A9(V")](i=>{let a=e;return{vod_id:[i[a(1103,"7$Tl")],i[a(404,"IP#v")],i[a(630,"![Jl")]?i[a(873,"RufB")][a(473,"91jT")]:""][a(1001,"7$Tl")]("*"),vod_name:i[a(848,"5txH")],vod_size:i[a(508,"hi!E")]}}),r[e(683,"7Kze")](Is,await r[e(926,")1*!")](WLe,r[e(420,"jsU%")]),s)}var eg={},_b={};async function Q4(t,e){let r=qt,n={AoxrC:function(m,h){return m(h)},XLKps:function(m,h){return m!==h},sEqbX:r(522,"XV(r"),RgCEH:function(m,h){return m===h},TIUuN:r(1068,"7$Tl"),nIkwS:function(m,h,y){return m(h,y)},kTaXz:r(842,"2a7K"),DlbIu:r(540,"Sg)5"),sXTAF:function(m,h,y){return m(h,y)},dVhnZ:r(965,"xQ)x")+r(861,"fQ#0"),VPDfz:function(m,h,y){return m(h,y)},vArXf:r(767,"bAH5")+r(499,"WZpm"),LyvCY:function(m,h){return m===h},CBjgt:r(958,"xQ)x"),UYRAA:r(743,"IP#v"),WjEiQ:function(m){return m()},hwFnT:function(m,h,y,g,b,x,A){return m(h,y,g,b,x,A)},OrxBk:function(m,h){return m*h}};await n[r(450,"lZs)")](WI,t);let s=t[r(1018,"zYqv")][r(971,"$jU5")],i=t[r(1035,"q@A)")][r(401,"A9(V")],a=t[r(780,"O&ab")][r(633,"bAH5")],o=t[r(925,"fk%f")][r(897,"1K)4")];if(n[r(592,"7$Tl")](s,n[r(528,"fQ#0")]))return;let c=t[r(550,"1K)4")][r(778,"w9z6")],u=t[r(691,"a8&$")][r(486,"#c#!")];if(n[r(1089,"lZs)")](i,n[r(1085,"URuC")])){if(eg[o]){let y=eg[o][r(991,"q@A)")](g=>g[r(734,"bAH5")+"d"][r(659,"dde[")+"e"]()===c);y?.[r(1060,"URuC")]&&n[r(523,"ilWv")](LLe,y[r(902,"$jU5")])&&delete eg[o]}!eg[o]&&(eg[o]=await n[r(866,"XV(r")](iK,a,o));let m=eg[o]?.[r(388,"V)Hk")](y=>y[r(959,"#c#!")+"d"][r(892,"HxpU")+"e"]()===c);if(!m?.[r(399,"Oo8o")])return;if(!m[r(1061,")1*!")]){let y=await fe[r(727,"![Jl")](m[r(994,"a8&$")],{headers:{"User-Agent":O0}});m[r(451,"91jT")]=DLe[r(459,"dde[")](y[r(440,"Oo8o")]);for(let g of m[r(875,"q@A)")][r(924,"(qYv")])!g[r(1010,"zYqv")][r(890,"xv$$")](n[r(693,"RufB")])&&(g[r(700,"a8&$")]=new URL(g[r(423,"xv$$")],m[r(1020,"7$Tl")])[r(543,"xQ)x")]()),g[r(458,"A9(V")]=g[r(1077,"URuC")],g[r(1069,"Pbkv")]=g[r(434,"bAH5")+r(369,"xv$$")]+r(651,"(qYv")}if(u[r(1038,"L#Th")](n[r(853,"W0z*")])){let y=n[r(578,"U3K9")](parseInt,u[r(652,"IjC$")](n[r(876,"(qYv")],""),10);e[r(494,"tWQ%")](m[r(953,"hi!E")][r(937,"hi!E")][y][r(724,"RWdJ")]);return}let h=DLe[r(712,"jsU%")](m[r(976,"1K)4")]);return e[r(896,"1K)4")](2173*1+-1493*1+-480)[r(785,"(qYv")]({"content-type":n[r(602,"HxpU")],"content-length":Buffer[r(646,"hi!E")](h)[r(1034,"L#Th")]()}),h}_b[o]?.[r(768,"bAH5")]&&n[r(796,"Sg)5")](LLe,_b[o][r(1078,"dde[")])&&delete _b[o],!_b[o]&&(_b[o]=await n[r(884,")1*!")](KLe,a,o));let l=_b[o]?.[r(737,"[PKS")];if(!l){e[r(491,"Pbkv")](-1521*3+809*-1+5872),e[r(1042,"RWdJ")](n[r(518,"2a7K")]);return}if(n[r(672,"ilWv")](c,n[r(645,"8Lel")])||n[r(763,"#c#!")](c,n[r(816,"zYqv")])){e[r(400,"![Jl")](l);return}let d=n[r(1096,"rlOa")](Mnr),f=d[r(611,"Pbkv")]||-2*-4092+-8*-434+-11528,p=d[r(933,"5txH")]||1*1627+-2595+-247*-4;return await n[r(773,"O&ab")](xb,t,e,l,o,q4,{chunkSize:n[r(912,"a8&$")](5782+793*-6,f),poolSize:p,timeout:n[r(487,"L#Th")](6771+-5771*1,2408+2398*-1)})}async function H4(t,e){let r=qt,n={LogmI:function(f,p){return f(p)},viJeP:r(455,"xv$$"),VgZTy:function(f,p){return f+p},LMeet:r(915,"q@A)"),HTrkp:function(f,p,m){return f(p,m)}};await n[r(585,"P$LD")](WI,t);let s=t[r(1110,"7$Tl")][r(565,"xv$$")],i=t[r(519,"Oo8o")].id[r(394,"lZs)")]("*"),a=await n[r(999,"A9(V")](WLe,n[r(744,"7Kze")]);if(!s[r(495,")1*!")](a))return;let o=n[r(871,"xQ)x")](n[r(855,"fQ#0")](n[r(821,"1K)4")](Wnr,t),t[r(431,"hi!E")][r(569,"2a7K")]),n[r(947,"dde[")]),c={parse:0,url:[]};i[-5*-1675+-1811*-3+-13806]&&(c[r(740,"fk%f")]={subt:o+r(950,"Pbkv")+i[-108*-14+-381*-3+-2655]+"/"+i[-1*-8781+-3223+-5556]+r(435,"Oo8o")});let u=(await n[r(874,"zYqv")](iK,i[877*-9+2954*1+4939],i[1]))?.[r(786,"RWdJ")](f=>f?.[r(849,"![Jl")])||[];eg[i[1]]=u,u[r(1079,"jsU%")]((f,p)=>(p[r(536,"(qYv")+r(411,"jA9E")]||4628+5*-257+-3343*1)-(f[r(503,"Sg)5")+r(920,"WZpm")]||-1*-4673+398+-5071));let l=c[r(685,"rlOa")],d={QHD:"\u8F6C\u7801",FHD:"\u8D85\u6E05",HD:"\u9AD8\u6E05",SD:"\u6807\u6E05",LD:"\u666E\u753B"};return u[r(837,"fk%f")](f=>{let p=r;l[p(384,"Ynsb")](d[f[p(820,"W0z*")+"d"]]||f[p(688,"![Jl")+"d"]),l[p(374,"8Lel")](o+p(781,"rlOa")+f[p(612,"91jT")+"d"][p(828,"Oo8o")+"e"]()+"/"+i[4654+603*-1+-4051]+"/"+i[2803*1+3*906+-368*15]+p(626,"(qYv"))}),l[r(374,"8Lel")]("\u4EE3\u7406"),l[r(772,"#c#!")](o+r(392,"HxpU")+i[2*1697+1158+-1*4552]+"/"+i[2140+-3995*2+5851]+r(825,"ilWv")),l[r(804,"]xNp")]("\u539F\u753B"),l[r(553,"jsU%")](o+(r(755,"IjC$")+r(1058,")1*!"))+i[-5014*1+2590+2424]+"/"+i[8503+327*-26]+r(1072,"O&ab")),c}var oK=Ce(Xn(),1);var Qe=Eu;(function(t,e){let r=Eu,n=t();for(;;)try{if(-parseInt(r(717,"3d(S"))/1*(parseInt(r(677,"MA3o"))/2)+-parseInt(r(720,"G&Pc"))/3+-parseInt(r(568,"p(Ve"))/4*(-parseInt(r(1057,"]UY8"))/5)+parseInt(r(573,"(6@z"))/6+-parseInt(r(575,"G&Pc"))/7+-parseInt(r(554,"$Dxn"))/8*(parseInt(r(608,"(6@z"))/9)+parseInt(r(947,"VuHG"))/10===e)break;n.push(n.shift())}catch{n.push(n.shift())}})(z4,112362);var r5e=async t=>{let e=Eu;return globalThis[e(853,"P7e(")]?await globalThis[e(853,"P7e(")](t):t},Jnr=[Qe(709,"C1ic"),Qe(733,"7e4N"),Qe(800,"6)4W"),Qe(470,"P7e("),Qe(531,"H0(4"),Qe(1089,"KfkJ"),Qe(718,"KfkJ"),Qe(1053,"P7e("),Qe(1201,"]UY8"),Qe(543,"aVSa"),Qe(922,"G&Pc"),Qe(1068,"MXaS"),Qe(530,"ymI*"),Qe(518,"QvGB"),Qe(1076,"2N%U"),Qe(607,"XeCO")],Xnr=t=>{let e=Qe,r={RZtOA:function(s,i){return s(i)}};if(!t)return!1;let n=r[e(421,"!Qkh")](String,t)[e(1145,"!52N")+"e"]();return Jnr[e(658,"]UY8")](s=>n[e(889,"F525")](s))};function n5e(t){let e=Qe,r={BnTSQ:function(n,s){return n(s)},BwWZS:function(n,s){return n||s}};return r[e(556,"KfkJ")](String,r[e(666,"H0(4")](t,""))[e(957,"IlPH")](",")[807+-1909*-5+-10352][e(932,"6Kq8")]()}function JLe(t){let e=Qe;return{tTKcO:function(n,s){return n(s)}}[e(1188,"GseL")](n5e,t)[e(496,"Ds7b")](/^\w+:\/\//,"")[e(545,"P7e(")]("/")[-4732+-169*-28][e(494,"(6@z")]()}function Znr(t){let e=Qe,r={uFnXS:function(u,l){return u(l)},JxbMv:function(u,l){return u(l)},ILuND:e(1218,"G&Pc")+e(435,"MGKd"),RXBGq:function(u,l){return u(l)},wlUNy:function(u,l){return u(l)},XCMCl:e(1066,"Pp!D")+e(934,"MA3o"),nynWc:e(680,"WlA!"),hxIQk:e(656,"cafg"),igoNZ:e(759,"C1ic"),NZPvo:function(u,l){return u(l)}},n=r[e(456,"Kp2)")](String,t?.[e(770,"IlPH")]?.[e(1187,"$Dxn")]?.()?.[e(1138,"3d(S")]||"")[e(928,"!52N")](),s=r[e(1085,"1Ota")](JLe,t?.[e(790,"#VhR")]?.[r[e(1125,"HIDt")]]),i=s||r[e(1183,"!52N")](JLe,t?.[e(959,"O9yX")]?.[e(533,"C1ic")]);if(!i)return n;let a=r[e(813,"H0(4")](n5e,t?.[e(781,"Rn$0")]?.[r[e(729,"Kp2)")]]),o=n[e(900,"HIDt")](r[e(466,"3d(S")])?r[e(879,"ltNx")]:r[e(917,"%H5H")];return(a||r[e(740,"aVSa")](String,t?.[e(746,"HIDt")]||"")[e(1046,"H0(4")]()||o)+e(605,"G&Pc")+i}function s5e(t){let e=Qe,r=/https:\/\/pan\.quark\.cn\/s\/([^\\|#/]+)/,n=r[e(440,"H0(4")](t);return n?{shareId:n[1*-2897+-805*8+-1*-9338],folderId:"0"}:null}var co=Qe(832,"v!9b")+Qe(1107,"6)4W"),vb={"User-Agent":Qe(643,"p(Ve")+Qe(870,"hswT")+Qe(596,"QvGB")+Qe(1143,"XeCO")+Qe(907,"#VhR")+Qe(831,"!Qkh")+Qe(580,"!52N")+Qe(824,"Ds7b")+Qe(509,"H0(4")+Qe(1165,"H0(4")+Qe(560,"6)4W")+Qe(833,"(6@z")+Qe(441,"XeCO")+Qe(504,"2N%U")+Qe(1215,"7e4N")+Qe(755,"hswT")+Qe(1226,")D&U")+Qe(1034,"GseL")+Qe(970,"1Ota")+"ch",Referer:Qe(845,"ymI*")+Qe(1048,"C1ic")},cK=null,G4=null,XLe=Qe(489,"v!9b")+Qe(609,"v!9b")+Qe(990,"G&Pc")+Qe(735,"gH]7"),Rc="",ZLe=Qe(477,"3d(S"),ng=null;async function $I(t){let e=Qe;cK=t[e(860,"p(Ve")].db;let r=t[e(1154,"ltNx")][e(834,"qKU^")][e(484,"MGKd")];Rc=r[e(1041,"2N%U")],G4=oK.default[e(499,"!52N")][e(463,"F525")][e(524,"GseL")](oK.default[e(1194,"v!9b")](r[e(908,"IlPH")]))[e(582,"hswT")]();let n=await cK[e(1179,"H0(4")+e(616,"%H5H")](e(638,"VuHG"),{});n[G4]&&(Rc=n[G4])}async function uo(t,e,r,n,s){let i=Qe,a={XMzKZ:function(u,l){return u===l},wnTkw:function(u,l){return u(l)},yxBzT:i(801,"%H5H"),fyWAw:i(423,"MA3o")+i(1174,"HIDt")+i(628,"O9yX"),WGhIZ:function(u,l){return u===l},qiRwn:function(u,l){return u||l},JNOIy:i(795,"HDeO"),qRijI:function(u,l){return u==l},WdGSr:i(600,"Ds7b"),SoksH:function(u,l){return u||l},jMidS:i(1214,"G&Pc"),XHGve:i(685,"WlA!"),AZmhS:function(u,l,d,f){return u(l,d,f)},vXMEZ:i(783,"2N%U"),ltiIO:function(u,l){return u!==l},UsRQE:function(u,l){return u===l},FWxnC:function(u,l){return u>l},wOylg:function(u,l){return u(l)},WKkvZ:function(u,l,d,f,p,m){return u(l,d,f,p,m)},Nwtga:function(u,l){return u-l}};r=a[i(752,"hswT")](r,{}),Object[i(511,"GseL")](r,vb),Object[i(1132,"gH]7")](r,{Cookie:a[i(1031,"YTUu")](Rc,"")}),n=a[i(612,"GseL")](n,a[i(816,"XeCO")]);let o=a[i(584,"qKU^")](n,a[i(1097,"]UY8")])?await fe[i(953,"QvGB")](XLe+"/"+t,{headers:r})[i(965,")D&U")](u=>{let l=i;return console[l(1062,"H0(4")](u),a[l(653,"Kp2)")](u?.[l(557,"C1ic")]?.[l(810,"G&Pc")],6782*1+3*-1959+-504)&&a[l(992,"HIDt")](messageToDart,{action:a[l(1094,"v!9b")],opt:{message:a[l(649,"qKU^")],duration:5}}),u[l(955,"pf%x")]||{status:500,data:{}}}):await fe[i(856,"YTUu")](XLe+"/"+t,e,{headers:r})[i(1182,"MA3o")](u=>{let l=i;return console[l(982,"Ds7b")](u),a[l(880,"YTUu")](u?.[l(633,"XeCO")]?.[l(691,"!52N")],-23*-66+5161+-1*6278)&&a[l(585,"GseL")](messageToDart,{action:a[l(796,"Pp!D")],opt:{message:a[l(536,"$Dxn")],duration:5}}),u[l(1078,"ymzm")]||{status:500,data:{}}}),c=a[i(1088,"WlA!")](s,-7990+-1*-7993);if(o[i(1212,"1Ota")][a[i(478,"WlA!")]]){let u=o[i(1202,"$Dxn")][a[i(1216,"KfkJ")]][i(508,"Pp!D")](a[i(852,"O9yX")])[i(793,"6Kq8")](/__puus=([^;]+)/);if(u){let l=a[i(739,"2N%U")](XD,Rc,a[i(480,"2N%U")],u[1]);a[i(811,"QvGB")](l,Rc)&&(Rc=l,await cK[i(446,"$Dxn")](i(1040,"HDeO")+G4,Rc))}}return a[i(1184,"qKU^")](o[i(924,"DRAK")],373*14+7*-191+288*-12)&&a[i(507,"O9yX")](c,-1*2713+8454+-5741)?(await a[i(738,"gH]7")](pf,-109*-78+-2*-911+-9324),await a[i(822,"GseL")](uo,t,e,r,n,a[i(503,"Kp2)")](c,-3689+-2*-2381+-2*536))):o[i(1071,"QvGB")]||{}}async function e5e(){let t=Qe,e={cRUle:function(n,s,i,a,o){return n(s,i,a,o)},hhFju:t(996,"%H5H"),QOZYg:function(n,s){return n>s},uQfrC:function(n,s,i){return n(s,i)}},r=await e[t(1079,"VuHG")](uo,t(473,"!Qkh")+co+t(993,"7e4N")+ng+(t(863,"7e4N")+t(630,"F525")+t(775,"YTUu")+t(500,"qKU^")+t(629,"7e4N")+t(910,"pf%x")),{},{},e[t(631,"Kp2)")]);if(r[t(512,")D&U")]&&r[t(1009,"ymzm")][t(954,"Pp!D")]&&e[t(1105,"(6@z")](r[t(857,"$Dxn")][t(569,"IlPH")][t(958,"XeCO")],-1013*1+8818+1*-7805)){let n=await e[t(681,"Rn$0")](uo,t(716,"cafg")+"e?"+co,{action_type:2,filelist:r[t(593,"YTUu")][t(506,"#VhR")][t(1177,"MXaS")](s=>s[t(745,"HDeO")]),exclude_fids:[]});console[t(1101,"7e4N")](n)}}async function esr(t){let e=Qe,r={iUWPf:function(s){return s()},JJcuG:function(s,i,a,o,c){return s(i,a,o,c)},aiVcA:e(864,"HDeO"),NegnY:function(s,i){return s===i},HHROq:function(s){return s()},REmml:function(s,i,a){return s(i,a)}};if(ng){t&&await r[e(426,"XeCO")](e5e);return}let n=await r[e(461,"Rn$0")](uo,e(526,"aVSa")+co+(e(606,"$Dxn")+e(482,")D&U")+e(1148,"gH]7")+e(586,"p(Ve")+e(675,"O9yX")+e(669,"hswT")+e(671,"7e4N")),{},{},r[e(659,"hswT")]);if(n[e(663,"H0(4")]&&n[e(523,"hswT")][e(846,"Ds7b")]){for(let s of n[e(682,"3d(S")][e(912,"7e4N")])if(r[e(960,"cafg")](s[e(942,"ymzm")],ZLe)){ng=s[e(838,"ymzm")],await r[e(1063,"$Dxn")](e5e);break}}if(!ng){let s=await r[e(991,"qKU^")](uo,e(978,"ltNx")+co,{pdir_fid:"0",file_name:ZLe,dir_path:"",dir_init_lock:!1});console[e(1209,"$Dxn")](s),s[e(468,"2N%U")]&&s[e(968,"%H5H")][e(1150,"MXaS")]&&(ng=s[e(468,"2N%U")][e(962,"pf%x")])}}async function dK(t){let e=Qe,r={MGBIK:function(s,i,a){return s(i,a)}},n=await r[e(576,"MGKd")](uo,e(737,"KfkJ")+e(1139,"KfkJ")+"n?"+co,{pwd_id:t[e(694,"6)4W")],passcode:t[e(768,"HIDt")]||""});return n[e(453,"aVSa")]?.[e(972,"1Ota")]?n[e(1121,"Ds7b")]:null}var tsr=[Qe(847,"O9yX"),Qe(529,"#VhR"),Qe(1169,"$Dxn"),Qe(1119,"I7&]"),Qe(891,"7e4N")];async function rsr(t){let e=Qe,r={hQvnZ:function(l,d){return l||d},pgzkm:function(l,d){return l||d},BzYyT:function(l,d,f,p,m){return l(d,f,p,m)},PJwhf:function(l,d){return l(d)},jrWWH:e(674,"ltNx"),mUVZS:function(l,d){return l===d},YyNNp:function(l,d){return l===d},QvRCS:e(802,"G&Pc"),VsRlD:e(592,"GseL"),UKrNs:function(l,d){return l===d},msDby:e(444,"!Qkh"),wwfWy:e(439,"]UY8"),myfEH:function(l,d,f){return l(d,f)},iNMef:function(l,d){return l&&d},CLSih:e(1120,"hswT"),jhegF:function(l,d){return ld}},n=r[e(621,"YTUu")](typeof t,r[e(1007,"MGKd")])?r[e(510,"I7&]")](s5e,t):t;if(!n)return[];let s=await r[e(896,"MGKd")](dK,n);if(!s)return[];let i=s[e(422,"$Dxn")],a=[],o=[],c=(l,d)=>l?l+"/"+d:d,u=async function(l,d,f,p){let m=e,h=r[m(869,"6)4W")](p,""),y=7416+1*-7316;f=r[m(491,"MA3o")](f,66*43+-2259+-34*17);let g=await r[m(722,"QvGB")](uo,m(684,"v!9b")+m(909,"DRAK")+m(1073,"p(Ve")+co+m(744,"hswT")+l+m(493,"C1ic")+r[m(1017,"Pp!D")](encodeURIComponent,i)+m(562,"VuHG")+d+(m(1193,"MXaS")+m(1158,"IlPH"))+f+m(1199,"1Ota")+y+(m(433,"H0(4")+m(751,"!52N")+m(552,"#VhR")+m(1204,"HDeO")),{},{},r[m(1070,"C1ic")]);if(!g[m(1009,"ymzm")])return[];let b=g[m(1098,"ltNx")][m(912,"7e4N")];if(!b)return[];let x=[];for(let A of b){let S=r[m(696,"ymzm")](A[m(706,"3d(S")],!0)||r[m(1028,"v!9b")](A[m(460,"aVSa")],1)||r[m(830,"VuHG")](A[m(776,"#VhR")],r[m(1104,"XeCO")])||r[m(1208,"3d(S")](A[m(641,"!Qkh")],r[m(648,"pf%x")]),I=r[m(871,"HIDt")](A[m(817,"]UY8")],!0)||r[m(690,"GseL")](A[m(1178,"Kp2)")],65+1*1946+-2010)||r[m(534,"7e4N")](A[m(655,"qKU^")],r[m(1133,"QvGB")]),R=r[m(865,"XeCO")](Xnr,A[m(710,"XeCO")]),w=r[m(937,"DRAK")](A[m(1006,"HDeO")+"ry"],r[m(792,"qKU^")])||R;if(S)x[m(967,"MA3o")]({fid:A[m(1150,"MXaS")],path:r[m(859,"VuHG")](c,h,A[m(760,"%H5H")])});else if(r[m(452,"(6@z")](I,w)){if(r[m(937,"DRAK")](typeof A[m(700,"VuHG")],r[m(611,"P7e(")])&&r[m(642,"6Kq8")](A[m(753,"HDeO")],r[m(1065,"H0(4")](r[m(1205,"MGKd")](-2202+1*2309+7*131,1024),1296+-4749*-2+10789*-1)))continue;A[m(707,"O9yX")]=i,A[m(872,"6)4W")]=h,a[m(867,")D&U")](A)}else I&&tsr[m(730,"ltNx")](N=>String(A[m(471,"O9yX")]||"")[m(1039,"I7&]")](N))&&o[m(650,"(6@z")](A)}if(r[m(798,"MA3o")](f,Math[m(925,"gH]7")](r[m(973,"2N%U")](g[m(553,"ltNx")][m(794,"YTUu")],y)))){let A=await r[m(537,"1Ota")](u,l,d,r[m(599,"#VhR")](f,1),h);for(let S of A)b[m(761,"!52N")](S)}for(let A of x){let S=await r[m(613,"H0(4")](u,l,A[m(672,"#VhR")],1,A[m(898,"]UY8")]);for(let I of S)b[m(701,"I7&]")](I)}return b};return await r[e(632,"cafg")](u,n[e(458,"Kp2)")],n[e(748,"MA3o")],-1*-3847+-2*-2168+-8182,""),r[e(1213,"6)4W")](o[e(1207,"(6@z")],4472*-2+-430*19+86*199)&&a[e(1052,"7e4N")](l=>{let d=e;var f=r[d(1096,"1Ota")](Tl,l,o);f[d(1004,"HDeO")]&&(l[d(1080,"MGKd")]=f[d(1219,"XeCO")][d(1130,"O9yX")])}),a}async function fK(t){let e=Qe,r={hXWFJ:function(s,i,a){return s(i,a)}};if(!t)return null;let n=await r[e(849,"aVSa")](uo,e(640,"!Qkh")+e(742,"XeCO")+co,{fids:[t]});return Array[e(986,"2N%U")](n?.[e(1071,"QvGB")])&&n[e(682,"3d(S")][0]?.[e(945,"cafg")+"rl"]?n[e(938,"!52N")][-1*-8777+2348*1+-11125]:null}async function nsr(t){let e=Qe,r={XHjZD:function(s,i,a){return s(i,a)},jPyBY:e(497,"P7e(")+e(818,"YTUu")+e(1180,"]UY8"),pRRNR:e(1217,"6)4W")};if(!t)return null;let n=await r[e(1012,"v!9b")](uo,e(692,"G&Pc")+e(1087,"DRAK")+co,{fid:t,resolutions:r[e(1083,"MXaS")],supports:r[e(1164,")D&U")]});return Array[e(686,"3d(S")](n?.[e(593,"YTUu")]?.[e(974,"cafg")])?n[e(590,"qKU^")][e(490,"H0(4")]:null}async function i5e(t,e="0",r=1){let n=Qe,s={GUFzG:function(o,c){return o(c)},RZmML:function(o,c,u,l,d){return o(c,u,l,d)},ttjBA:function(o,c){return o(c)},VGUWN:function(o,c){return o||c},WIYPU:n(479,"6)4W")};await s[n(981,"pf%x")]($I,t);let i=Number[n(442,"1Ota")](r,-5680+3541*1+2149*1)||776*9+1283*1+1*-8266,a=await s[n(930,"YTUu")](uo,n(1161,")D&U")+co+n(933,"HDeO")+s[n(428,"!52N")](encodeURIComponent,s[n(877,"QvGB")](e,"0"))+n(525,"GseL")+i+(n(1167,"YTUu")+n(615,"HDeO")+n(1141,")D&U")+n(1149,"v!9b")+n(1095,"O9yX")),{},{},s[n(485,"]UY8")]);return Array[n(876,"WlA!")](a?.[n(1163,"Rn$0")]?.[n(734,"O9yX")])?a[n(516,"F525")][n(1175,"Kp2)")]:[]}var L0={};async function ssr(){let t=Qe,e={qIPTO:function(i,a){return i||a},IohMf:t(558,"pf%x")+t(437,"DRAK"),YdqmB:t(698,"Pp!D")+t(1014,"pf%x")+t(498,"I7&]")+t(836,"VuHG")+t(1005,"QvGB")+t(727,"YTUu")+t(714,"GseL")+t(1191,")D&U")+t(916,"DRAK")+t(825,"cafg")+t(548,"QvGB")+"19",YgXkQ:function(i,a){return i===a},IoEzt:function(i,a){return i===a}},r=Date[t(639,"Kp2)")](),n=Object[t(610,"cafg")]({Cookie:e[t(766,"ltNx")](Rc,""),"Content-Type":e[t(695,"QvGB")]},vb),s=await fe[t(989,"O9yX")](e[t(450,"P7e(")],{conversation_id:t(699,"Rn$0")+r,conversation_type:3,msg_id:r+t(979,"!Qkh")},{headers:n})[t(821,"GseL")](i=>{let a=t;return console[a(788,"ymI*")](i),i[a(715,"VuHG")]||{status:500,data:{}}});return e[t(693,"Kp2)")](s?.[t(723,"HIDt")],6151*1+-447*11+-1034*1)&&e[t(1035,"7e4N")](s?.[t(579,"MGKd")]?.[t(483,"6)4W")],-1*5252+-1*-5379+73)&&e[t(427,"F525")](s?.[t(512,")D&U")]?.[t(708,"v!9b")],-511+-201*-5+-494)&&s?.[t(841,"MA3o")]?.[t(551,"6Kq8")]?.[t(657,"XeCO")]||""}async function a5e(t,e,r,n){let s=Qe,i={oqrHT:function(l,d){return l||d},bNpNN:function(l,d){return l(d)},tVCjE:function(l){return l()},JcmWU:function(l,d){return l||d},nfsMM:s(1124,"P7e(")+s(812,"aVSa"),WCbCR:function(l,d){return l===d}};if(i[s(724,"$Dxn")](!t,!r)||!n||(e||(e=(await i[s(587,"pf%x")](dK,{shareId:t}))?.[s(1144,"aVSa")]||""),!e))return null;let a={fids:[r],fids_token:[n],pwd_id:t,stoken:e,speedup_session:""},o=await i[s(430,"cafg")](ssr);o&&(a[s(469,"O9yX")]=o);let c=Object[s(904,"HIDt")]({Cookie:i[s(1155,"Ds7b")](Rc,""),"Content-Type":i[s(634,"G&Pc")]},vb),u=await fe[s(839,"KfkJ")](s(1075,"Rn$0")+s(588,"C1ic")+s(624,"ymzm")+s(799,"DRAK")+s(892,"hswT")+s(771,"qKU^")+co,a,{headers:c})[s(713,"ltNx")](l=>{let d=s;return console[d(1186,"!Qkh")](l),l[d(747,"(6@z")]||{status:500,data:{}}});return i[s(645,"ltNx")](u?.[s(583,"2N%U")],9*569+-1196*5+1059)&&u?.[s(1198,"HDeO")]?.[s(572,"O9yX")]?.[-1*-926+-1*3491+2565]?.[s(1024,"XeCO")+"rl"]?u[s(743,"6)4W")][s(590,"qKU^")][1274*7+9722*-1+-268*-3]:null}async function o5e(t,e,r,n,s){let i=Qe,a={Fsuvd:function(c,u){return c(u)},DvvrU:function(c,u){return c(u)},RrXXV:function(c,u,l){return c(u,l)},Ppbcs:i(1224,"v!9b"),Jfhwp:function(c,u,l,d,f){return c(u,l,d,f)},HWoqX:i(902,"ymzm"),pMzfz:function(c,u){return c>u},snidU:function(c,u){return c>u},CyLro:function(c,u){return c(u)}};if(await a[i(1116,"O9yX")](esr,s),s){let c=Object[i(1190,"IlPH")](L0);for(let u of c)delete L0[u]}if(!ng||(e||(e=(await a[i(547,"1Ota")](dK,{shareId:t}))?.[i(559,"KfkJ")]||""),!e))return null;let o=await a[i(1021,"HIDt")](uo,i(935,"]UY8")+i(1049,"Kp2)")+"?"+co,{fid_list:[r],fid_token_list:[n],to_pdir_fid:ng,pwd_id:t,stoken:e,pdir_fid:"0",scene:a[i(668,"$Dxn")]});if(o[i(938,"!52N")]&&o[i(1016,"ymI*")][i(789,"GseL")]){let c=0;for(;;){let u=await a[i(804,"aVSa")](uo,i(654,"WlA!")+co+i(951,"aVSa")+o[i(453,"aVSa")][i(603,"p(Ve")]+(i(528,"I7&]")+i(465,"HIDt"))+c,{},{},a[i(988,"]UY8")]);if(u[i(1121,"Ds7b")]&&u[i(512,")D&U")][i(1003,"pf%x")]&&u[i(1e3,"KfkJ")][i(620,"6Kq8")][i(1091,"QvGB")+i(1023,"(6@z")]&&a[i(574,"Rn$0")](u[i(678,"WlA!")][i(820,"v!9b")][i(431,"I7&]")+i(1023,"(6@z")][i(815,"6Kq8")],-5878*-1+-6714+19*44))return u[i(468,"2N%U")][i(1047,"F525")][i(906,"cafg")+i(432,"#VhR")][-1706*3+2001+1039*3];if(c++,a[i(1221,"XeCO")](c,-2*-2138+-6965+2694))break;await a[i(1050,"7e4N")](pf,1*2873+7*-1213+3309*2)}}return!1}async function c5e(t,e,r,n){let s=Qe,i={qTSmJ:function(o,c){return o===c},uEeBb:s(457,"gH]7"),NxNhs:function(o,c){return o(c)},yTfGo:function(o,c,u,l,d,f){return o(c,u,l,d,f)},NctBS:function(o,c,u){return o(c,u)},RfCaz:s(769,"ymzm")+s(1122,"O9yX")+s(1038,"IlPH"),YOrOC:s(589,"F525")};if(i[s(901,"I7&]")](t,i[s(829,"ymzm")]))return await i[s(971,"#VhR")](nsr,r);if(!L0[r]){let o=await i[s(1134,"ltNx")](o5e,t,e,r,n,!0);if(!o)return null;L0[r]=o}let a=await i[s(987,"Pp!D")](uo,s(1055,"P7e(")+s(1200,"cafg")+co,{fid:L0[r],resolutions:i[s(425,"P7e(")],supports:i[s(948,"Kp2)")]});return a[s(1121,"Ds7b")]&&a[s(1071,"QvGB")][s(601,")D&U")]?a[s(968,"%H5H")][s(1223,"Kp2)")]:null}async function pK(t,e,r,n,s){let i=Qe,a={rgEYt:function(c,u){return c===u},huMua:i(1011,"KfkJ"),ToGxS:function(c,u){return c(u)},ujTfz:function(c,u,l,d,f,p){return c(u,l,d,f,p)},xEKyP:function(c,u,l){return c(u,l)}};if(a[i(1159,"F525")](t,a[i(538,"2N%U")]))return await a[i(467,"]UY8")](fK,r);if(!L0[r]){let c=await a[i(705,"!Qkh")](o5e,t,e,r,n,s);if(!c)return null;L0[r]=c}let o=await a[i(1136,"]UY8")](uo,i(943,"7e4N")+i(742,"XeCO")+co,{fids:[L0[r]]});return o[i(563,"]UY8")]?o[i(438,"Pp!D")][5945+-613*-11+-12688]:null}async function isr(t,e,r,n,s){let i=Qe,a={oCCkl:function(c,u){return c===u},tqRXq:i(617,"7e4N"),yilaT:function(c,u){return c(u)},XiQmM:function(c,u,l,d,f){return c(u,l,d,f)},Slwqh:function(c,u,l,d,f,p){return c(u,l,d,f,p)}};if(a[i(854,"G&Pc")](t,a[i(905,"v!9b")]))return await a[i(618,"MGKd")](fK,r);let o=await a[i(614,"G&Pc")](a5e,t,e,r,n);return o?.[i(1054,"MA3o")+"rl"]?o:await a[i(1173,"6)4W")](pK,t,e,r,n,s)}async function u5e(t){let e=Qe,r={XSKsp:function(n,s){return n(s)},dCCgC:e(519,"cafg")+e(1061,"#VhR"),QHuFe:function(n,s){return n(s)},FaKuw:function(n,s,i){return n(s,i)},INBjw:e(1108,"Kp2)")};if(r[e(1147,"v!9b")]($4,r[e(772,"IlPH")])){let n=r[e(1192,"$Dxn")](s5e,t);if(n){let s=await r[e(1140,"P7e(")](rsr,n);return s=s[e(919,"MGKd")](i=>{let a=e;return{vod_id:[n[a(1036,"P7e(")],i[a(501,"qKU^")],i[a(866,"Rn$0")],i[a(1027,"6Kq8")+a(862,"ymzm")],i[a(598,"hswT")]?i[a(541,"HDeO")][a(809,"H0(4")]:"",i[a(763,"MXaS")]?i[a(591,"F525")][a(1118,"]UY8")+a(921,"MXaS")]:""][a(883,"ymI*")]("*"),vod_name:i[a(424,"7e4N")],vod_size:i[a(515,"F525")],vod_group:i[a(1127,"WlA!")]}}),r[e(564,"gH]7")](Is,await r[e(565,"IlPH")](r5e,r[e(1015,"cafg")]),s)}else return{}}}var t5e={},aK=(2*-2864+-7073*-1+-321)*(1486*-4+6071+385),mK=(3419+1*-8042+-1*-5647)*(25*-369+-1528+-101*-109);function z4(){let t=["W4DAW4RdUfXfW6i0W5RcJa","xKBcGq","W5LWF8kZWRy","bmo+ua","ECoHomki","eSoeW4ZcSCof","W7L9WPjLWQG","WPNcGf/dTIJcLqpdRCkrFa","WOqFE8o4WPS","W6DdWObuWPxdJ8osaeK","b3i9WPlcVq","W5nOWRjbWQu","fJtdG3pcUmowWOn1","W7NdKmoWa8ozyXK","jmkBWRu3vG","WPVdJCoGbwa","v3RcVCotqq","WQahtLNdSG","W4bBt8kkWRW","W5GQymkscq","WRBdUmoFaG","WRddSSoyc23dHW","q8o3amkRWRm","W49OhwZdGa","d8o+wG","WOvQW43dT1DpWR5HWQpcPG","WR8pW6iKW7nOW5qg","WRRdNmoZW5u8","W49XW47dTfC","W4ddJblcJIxcLbddRmkkya","cZJcR8k9tSovWQ/dTSkhDq","jSotWO1XpW","rWddLfpcKConWPa","gSkyWRpdV8oy","W5azW68BaW","ACkxkuu","Ab7dM8oSpG","WQ4svmoeWP/cPSksW5HUWPu","W6CFW5efhq","W4ldVt4","W5tdI8oPj8oc","WRWvrSoFWOZcUW","cZBdNeRcUG","W4RcOmk2WRxcR8kfWROxb8oD","tqTmrCkaEHpdMSoqW4O","mNu0WP7cGSok","BqRdJCkOW6xcHYLQvhq","W7Hbk2G","W45Ir8kTWPe","WO1SW4NdRq","dSo4qW","ddldRhpcUCopWODO","WQKrv8obWPm","EKFdMCkSW7ddMIiPrMC","tYhdOmocW6G","W7/dJCohFq","nSkuWPm","WQLecqSD","iv3dOxSD","b8kZW7O","xw3cKmo7","EW7dJCk7W7xdMW","q8kGWPTA","ySkDWRNdQ8k5WO/dN8k4W59uyxK","lw11BCkZ","WRRdOSosW7i","WO8xW4OyW7y","WQuAs13dPa","BbVdMmkU","hSonWOPZ","h1pcKCk+W4/dLNBdQCklAW","W7/cJ8oayvJcPSkc","ASkEpf/cKComrmonW6xdTq","wmk/W6tcICox","zs/dUSkvW5m","WQRdSCopW74","omo2WQvy","WPFdSSo+ECottW","W77cImkgW6JdH8kf","W4pdSsBcObeuWO5jyG","WODSW5BdVbreWRbYWPlcVW","WOWhjZm","W53cRSk3WR7cNmklWQGSlmoh","WPCRuCo1WRO","WP5moSooE8oVW5LTW41QcCo8WQC","geJcHmolW4K","qc/dO8o4W5CO","BHymWRFcMq","W702bbddNCoLFmkoma","W7vkpg7dTSoxCW","fCk5WPq","EcGqWQa","W65bk3VdOCo2zIW","WRDMmHSFhW","iMO3WPZcNW","W6vFzSk8WQqp","bZlcUCk3r8oiWR0","W7FcPmkNWR7cQq","WP/dSSoaCCohsGtcHW","W7Pnpa","gSonWOz4ety","ACkzmKhcP8kktCoa","ASo1p8kdWP4","W6ddLSocgq","W6VdL8odEW","qIFdU8oT","pfZdRNSlq8oW","W6mJu8oOtSolW50+f8oY","kLndxCkd","W7m8v8oCrmor","WRZdNM4eEG","W4/cQmkKWRxcN8k7WQuHamog","A2RcS8kr","WR8WjINdMW","WPSLshFdNmku","wwVcMmoNfq","ymkFWR4","hSoZWQTunq","W5TXhNhdIq","xYxdMComcG","aG/dPCoPfuZdRW","ehlcHSoTuSobWR3cIIaN","WRhdL14BxGldNddcLW","WRVdJgOhrZddJa","wIixWPBcMq","uCkHmLZcRa","hZJcQ8kN","sSkPWQBdICkmraPiW4PZ","W4uCWO/cJMy","WQOiyCoDWPW","W4D1W57dSeL/WRLSWPJdRG","zSkZW5RcU8o0","W6vcCmkYhG","qspdUW","ycVdN8oiemk6","WRnona0Y","mgGPWPtcKSoncSk2tgK","WPTFWQvD","qCkUW67cKa","W4hdTZ3cQYivWO5awci","W69flM7dKCo5zG","w0BcHSkJW7ddQgtdO8kh","fSk4WPijBGJcTgigWRC","vKhcN8kiW57dQgtdPCkioq","m8kDWOtdICoe","WQOuW7u/","W4hdUt7cPa","WRmjr8oBWORcUq","WPbjWR8","jW/dPeJcJW","WPbWW5VdQ1aaWQT3WP3cVq","W7vspsBdVCo3DIdcUmkE","W7dcJ8kcWRRcHW","WRJdTSocdq","raSuWRZcRa","W45qt8kiWPC","x8oNimkrWPC","B8kIWRnpWRq","WO8uBCoUWR0","eSkaWRNdLSoW","W77cTYPPW7b+","W61vF8k1WRWiwYDWWQu","dcBcTCk6BG","WRG0DvpdVW","gCoxWOjShrhcOLPoW7u","eHldMeJcMa","W5j6WReNWRK","bItcLCkYuCorWQVdTG","WOyPDgFdHG","WQ4oW5uJW5zOW44j","zWtcVILeoSoyWOJdHtDkWOi","WOtdP8o1W5pdICoRb3BdQ8os","WQHQW7/dO08","WP8qcSoFW4rNWPe","EmoLcSkYWPm","iZzPWP7dH8kBfa","W7mLW6yBamo4e8oV","fLlcGmk2W4/dOJ8","WRhdKeqExdq","W4FdTY7cVa","W73cJt52W7f/","uKRcVmk+W7y","WPyJrxxdM8kpvcmfoa","WOldS8oKFq","WQKaW7aYW7TGW5m","AgZdGSojfmk6W78ylN0","jhFcL8oJW6/dPSkUWQJcKaq","WQj8W7BdQ1q","W5NdSZddKbC","WODQW4JdNfPdWRC","W4ivg8oiW4y","W7/dJCohFvVcVCkmWPb1Eq","WOOrb8oiWO5yW4FdVCopbW","tmkGWPXrWQJdLa","k8oeAH/dHSotCmoRW53dPmofW68","W7Pwn2y","W4NcRYDLW7G","WQDiWOr9WRm","cGv8qmkrzb3cO8owW4y","WPpdS8o/F8og","W454WQafWOO","Amk/WPnVWOS","WPJdLmoHxSo6","BgWfWRVcUeX/WO8Mxa","WRBdQMOdwG","E1/cUgOa","WPb1WQDXWOu","BdddPmoRpq","fSk9WPqb","WQJdQeqwzG","W71BlG","WPzTW5VdRq","cSoJqmotcN3dVSogw1G","W7ZdJuydvW","W5XBy8krWR0","W5FdVtNcTseuWPXb","W4WTvSkujG","kmkaWOhdPCoHW5Sykq","WODNoaGS","kxFcPSoZW5m","p2ldS1WQ","W6LLWRapWOW","W4OWwSo6vW","cdxdGNZcOq","AqpcKW","W4pdJmoAaSoJ","W5fyWR1k","W6pcJXPbb2ldOZ7cKmoFW5DQ","aCk9WPyfrWZdQf4AWRK","hSk5WO4hBau","W7jFWQe+WONcG8kjW6a","bJ/dJgJcNW","cZlcQSoUq8ojWQ0","W5qFE8o4tG","tSksgN7cHG","w2pcGmoJ","W6mvWQRcQuC","WOddIe8hFa","WO1QW50","ofVdPa","CcVdL8ozgSkxW71yk3W","W5HmwSkyWOm","W5/cPXzzW7m","W7C4W6ebpG","W6mrWPrO","mhlcL8o2W6e","W4xcOXXbW4y","WQ0trSoE","W4XaCSkMaG","WQZdTCoTW6u+","j8oozmoLfq","W51luSkBWPKyW4xcGCo4kCkmW4Wq","W6bDWQvzWPC","kstcRCkLrG","W57dUGtdSHG","ASkEpf/cKCk8uComW6ddMa","WRG4W7ye","W4FdLrRdGYtcIq","xJBdN8oc","qZ/cSCk0sSkwWR3dP8kOzq","i38OWPRcH8oAc8k5rwi","WO0ig8obW4HnWPtcPSowba","WPqQqmo4WQ8","WO8zh8ooW4K","W6BdJmovlSomCa8FwW","iMDB","W7hdGmosfmoyCqeir3G","gZBcQSk0r8oo","ytNdUmkiW7G","qCk2WOfFWRVdKG","h8kVWQqcyq","rLBcKSofrq","W7PpASk6WQivwZO","yCkZfLtcPa","W47dVa3cRGK","WQr9mG","WPPoWRbBWRNdISkNv05l","WRqRimoEW5e","FCo1j8oDW4FdGmoRxLbf","WPPgWQvoWR0","W55tzSoTW6rCgJSzW6q","WQG2cGJdK8ou","WRRdV8o3W7agWROqwSouka","n8kTWPq2CG","jXtdHwhcUW","F8k2WPTmWRNcGtPHevW","c3RdOhpcPSoyW4bolMS","m1VdRG","W4KnBmkv","W45uWPmHWO8","WOGkkmoNW4W","tgFcHSo0t8ok","CdtdHSo0lq","W7rvWOeLWPFcN8ktW65pWOS","ddFdONVcVW","ixS8WPddLG","WQGgW4moW5a","W712WQLCWRy","B8o9j8kfW5NcLCoBx0Si","WPeYpqhdRG","bSo2qmoc","ECoggCkUWQq","WOpdPCkGDmogsbFcHIS0","iSkYWQOrCq","W5eFvxNdKSkzchnzBq","W5tdKCoUW5O","WQHdWPeP","gNRdGxWb","W6JcGsjK","W5Ght8ovtq","W4jaWPn6WPO","5yYY6ikB5BEh5AAh5PAJ77+z6kYY5yU85B6A44oT","lw7cHCoW","W6JcMInT","ofpdUG","j27cMSoH","WPhdPmo5x8owsWtcGhbc","A8oAB0BdMmoxxa","W4pdSstcOq","W7JdG8oeCf8","WPZdImo5W5Ga","W4iQWRdcSK8","pIddM13cNq","nCoDW7ZcTSo5","W6DuWPy4WP7cMCku","W5ddSmowW5hdQa","W5G0vhhdHSkpgG","oN8IWOy","BCo4fmkuWPNcJCorqWbh","W5D4WOCmWP4","C1tdPwWqACkRW43cTqS","mGpcUW","W75DxCkZWPu","WQiHFhldUW","W6/cQCkMWRFcPG","xulcGCk2","WQyxs8oEw8oAWOG","W5JcUmo/","n8kBluO","W65vWPmUWP7cMmku","W4nPrCkyWOi","a0lcHSk0","nCkGWO/dN8og","o13dMx8fACoBWPldTZe","W6lcJsjNW6bL","WOH2ecek","W6PFWPu","kSk3WOiVta","W5NcR8oVECoA","W6GTwCotrmonW4y","W5TEWRbCWPS","wSkIW73dLCoasaLmW5zY","W5iRWO/cTW8nWR0XW4VdQW","WPvZWRHyWO8","W7DbWPq/","uCoQW6/cL8oruaDvW5TY","W6TFE8kVWP0gtIbh","gmoAWOD3cIVcP0C","W7PuyCk/WOu","WRyptLBdMq","n27cKSoHW6xcLSkXWQdcLru","eY7dOhK","W4D7vmkNoW","AmoMiSopW4pdLCkdaWWb","aSo1W7RcLSok","W7veWP0HWP7cHa","5AAJ5yEPWPbqwmk9WOBcNu8S","WODSW5BdVgroWR5OWPK","WR4EkmomW5S","W6bVx8klWRy","WOmgW548W7u","WRRdPmorW50W","bSoPW6VcKCon","W43cL8kdWRRcTq","W6uQW7qncmoWfmoyaSka","fhrRxmkuzq","W5ddNSo+F8ogvvZcHw1Q","bJNcVmk2wSo1WQG","p8oyWOVdVSo7W5S","WQlcKSkgrSkEDriNEeTP","zLxdHSk8W6/dHG","CcaxWRu","B8kFouJcMW","WPpdUCoOCW","WRedpSo1W6frcMnQWRW","W7aPsSoermo2W5SV","kmkqWO3dTq","nSogW6lcVa","WRFdL8oema","W7zfWOeI","W5Sqt8kxnmk8WPT9W6TB","uSkGWPnsWONdTwyLeKG","W5G/w8orvG","WRuCgSoaW6m","imkMWOiqtG","W6FcPGfLW7i","WR8Jeqi","WRedw8orWP/cVq","W6DzWQjmWPK","nehcMmoCW5K","t8kYWPW","mM/cL8o2W6/cGmk5","vs7dRSo+W5CtwW","WR8RfW","kmoDv8owpG","wYtdImokeq","WPieW74","i8okWRLzaa","WRGEca","WR92mdGz","tCkzgLxcPW","WRBdNL8u","gZJcS8k2ta","W4izhCoe","ct7cTmk2FCouWQ/dV8k9","k8kwWPO5AW","nSogW6lcVmkKW4ZdT8keW7ii","W6u8WPhcJgBcN8owWOldK8kV","WRD8WP1+WQK","ztqcWQBcOq","WPjUkJKvcCk2hCk4oa","W7RdRSoyfCo4","W7zjWPa","WQtdP2yWBW","WO8xd8oi","oCkYfmkqWPFcGCorea4r","W6jyWOv/WOFdJG","kSkaWOldO8oJ","tSk/bh3cOq","DmoBWOhdUmoM","C8knWQDeWPK","WQZdTSoedxtdNa","fZpdUMlcUmkhW4K+jwS","WOddQmoPDCoBFG3cINDY","W6VdHCokEfO","W5ZdG8oTW6ddNG","idhdH8othSkTW7Ol","W7RcMIvT","meddUheb","sdldM8opguNdHa","WOixgCoaW4bcW5NcVSoqha","WRSQW7ibECoGeSoMbmke","WQVdVSoy","W6mGWPlcHJdcI8orWOJcKmk0","W6qTWO3cIg/cHa","WOXlWRnDWQ7cL8kYqq","d3dcGSoJW6S","WRFdNf8hwJ/cMNVdISkL","n2G0WPG","cej+qq","kqdcOmk9yq","FI4kWRO","W5BdSmo4CCogsKZcGgHP","W7CJW6CzhW","W4xdL8oUW5VdGmoR","BCo1p8kb","rcxdNSoFW6q","qdxdVSkRW4m","WQKiW7WY","WR4aW7i2","ErmUWRFcRa","xmkUWO0","W5hcTCk0WQdcG8oEW6zNa8ot","WR/dKmodeSkeCauoqM8","kthdGCoFwSkSW7TbiZW","iM46WOFcN8oCkmk5xMq","W43dGqpdGa","W5FdKmoVW5VdICoIc3ZcVq","WOldU8oTW5pdGmoGxW","WR0RcqBcMCojESkyEvq","duvPumkiwra","WRa5W6CCjCoOomoUgmkl","sKP+rG","W7lcPmorha","W5JdTSoGzG","WQzmW7ZcOqjb","BI3dGmoi","WOXqW6ZdG2G","j8kUWOXaFqddQ3ux","W6bjWQulWOW","W5KyD8orzW","WRRdIMyava","WPrxWPHvWPC","ahpdR3uw","sLBcL8kJW5tdVxZdPq","qmkEp3NcJG","W7uVuru","vMpcUSoVyG","WP8ib8oeW5u","dcZdP2lcICoeWPj0mG","W4q+tSofDa","amkRWOKopHVdVJXDW7G","dSoYwSoeds8","W7i0WPlcL3m","dSoEWPD/","se1KwCkvsrJdRmoyW40","uMFcGmoJtSozW6BcMG","WRqgW4z9W4ZdNmkPW7j2WOy9za","WP3dG8oSbw8","WR1qWOvVWO0","DcFdGmomgSkMW6Dt","W71ukgFdP8o7Dd3cSmkD","WOXkWR5xWRNcIW","WR8zW4O5W4lcNCo+huVdHG","W4JdImotpSo/","WOKpz8krmCkgWO9xW64v","FCkxkuW","zSkKWRLdWQS","afiUWRpcJG","feP/vmkDzq","kSoHW7NcRCoQ","WQXVx8kkgmkuEq","pxmOWOe","W74Hpayu","W55KWR1EWP0","cZBcRmkY","WRFdMx8YWQm1WPlcICoZW4ZdI8os","eSoAtSofaW","gmo3WRJdJmkrfdbtW51dWRNcQG","fSkYWQhdMmod","htlcQ8kJtCouWR3dTW","WO49oCoxW6y","p8kuWPFdSa","W67cUmoWW5CLWPiUnCkvnW","WO0Il8ooW7m","W53dJYtdLtpcKGNdPq","WQhdI0Obqci","W6ylWOVcIum","W5pdISojW5NdKa","W4TeFSkYaCopuCksWQZdJa","W75QkexdGa","BZtdLSkrbCkRWRPhohi","WRWmW7zJ","W7m4WPBcGG","WQKuW6qJW411W4Wl","W4ldI8oXW5BdGSo3","WPmHuNe","dmotWOj5","WR8JW4mgW4a","uSksWRrakv3cTtfvW7y","Ac3dOmoDa8kTW5Lzkxy","W5RdLrxdLsJcJWVdPW","eubIC8k7","xtldNW","F8o9l8kfWPNcUCoyreXd","u8koW5aSt3BcRKbVW5WBhq","W6bwySkRkSkBuW","W5WRuCkkkq","e8oOWQy","WQbaWPyJWONcTCkbW65eW5G","WQDtE8k0","WR/dKabSW71EWQ7cRG","fJhdQZZcUSoiWODJkJC","W5JcSSkZWRNcL8kk","WQ80omoeW4K","W5xdJCopW4xdIq","WPtdRmoMwCoZ","CCkUW5JcLCoU","h3ZcK8kYW4NdQNJdN8kBoq","qYddRSo5W54U","WO5YW5q","iSkCWO/dSmoC","nSoaW7ZcNmoQW5ZdSa","gCoEWPv7jY/cTW","WRaMq2FdVW","WQKNaqRdHmoFDSkE","W73cNd5PW7PQ","W5FdS2tcPIbvW54lzdS","aCoBWQr1pW","W65GdxldVq","zSobcCkLWOe","6ysI57Y544oj56Ik5RQY6yw35Pw+5OU556oz","WPfHW5VdRv5eWObKWOJdQq","WQKiW7WYWPKZWPbExCoR","kw/cSmoUW78","W7/cTCkwWPVcKq","W7TFE8kRWR8jssy","r8kHW7RcTCoU","W41+WQu7WQW","W51BsCkYnG","W6JdTSoIyv0","WOaoDSkzmCkY","l2JcGq","nSogW6lcVmkKW5VdT8kbW6HB","jmowW77cVa","amoxWOz5pG","W5LyA8kPgCkEvSouW7xcHW","sKJcNmkNW7/dSgtdPCkC","AehcLSobEa","ovFdPhKhza","C0dcVSkCW7G","W4PxcMFdIG","W7eGWRxcON0","W77cNt9O","Ar/dVSorpq","W4ldImo8W5u","guRcJmopW5a","W6tdGSocgSku","W6mGWPlcHG","W5hcTCk0WQdcGW","W71vy8k+WR4","ASkzmeG","W4JdIshdGGa","WRddM8o8r8oo","W7zozCkLbSopb8ow","W7DfWPm4WPddISkdW6HxWOS","WPldOmo5Cq","WO4PxCodWO0","WPiVtCoDWR0","WRtdTSoAsSoN","vLtcMW","W5zaWPaPWOG","W5ZdKbpdGdxcNGpdNCkhEW","fmkvWPmXqq","W5THW5/dQLG","aKjP","sKRcGCkY","wgFcGa","mcpcOCkJr8kaWQ/dOCk7la","W7VcGSkwWRxcMG","WQpdPCoQuM3cOSkB","W7tdGSofea","bWZdMxBcRa","W7JdL8ofaCoyoe9f","f8oguSoroG","WRvUkG4","mMtcMCoGW6/dQCkOWRVcIKe","dc/dR2dcRSksWPv5igS","WQVcMmkk","WRH8hX0idmka","W5SCW7Oona","dSonECo0pq","gCokWPn7cG","W7hdR8oVW7ZdLa","WR3dPmoAW6SeWQW","t8kUW6xcNCkmuvqiW497","ggdcRSoVW5S","W6jeWOv5WPFdTmoz","o8kZWOGTFG","W4JdJrZcNX0","jgG3","FduxWQtcUqeXW5iMsW","uCkNbmktsxC","W5WwECkD","W6y+W7ea","WRGQWPdcGcxcJSonWPZdKSoU","W7ldL8o2W4pdHG","z8oGg8kqWQ4","jCofW5RcV8oX","WRvMla","hcpcT8k4r8ou","hcJdQNC","kc/dG8ki","W69tzmk+WO8jwY5k","W4O2A8k2mG","W7a8WPy","xgpcGmoHqG","W4hcI8o8W5hdLSoWc2JcOCo9","W50ACmkilmk3WPPB","W5/cQmkSWRxdN8kaWQWKfSog","W6m+AvHpgSklimkoaae","W5ftWR5k","W4aJW6qpaq","gSo3WR7dGCkresvRW55fWQFcLa","FuVcRCkbW5q","mmkMWRKzta","WQ4svmocWP7cPG","W6LbWOacWQ8","W6XEwSkRWPe","W7a9W4m+pa","WOnVrx/dHSkkgICamq","umkwWRvhWOO","gutcU8ohW6y","tg3cMCoN","c8oKFCondslcTSkmtq","pZBcTSkG","W49OW5hdRW","aZ7cQ8kN","rmk3WPTaWRNcKW","DtFdKCoDb8k6W7vp","WOXwWRboWRNdISkGuerC","v8kkWOTAWRS","WPpdPuyDzG","WPuynrxdMq","s3dcLCoSwq","W6zBBmoK","W7vnWPbQ","WO/dKaddHr7cKGpcVW","x0RcKq","WQ0uwSocWOtcTSkQW50","W7ZcJt9WW7TJWOVcNW","W73dJCoCD1lcOmkKWPa","WONdISoTW7yi","WPWzgComW4XD","WQVdJ8opW6ybWRPyEmogoa","W5JdIsxdLI8","sKRcJ8kY","WRGfqCkz","WP3cMuBcKhhdI0FdKCkhAq","W55BWPafWQ8","uINdNmo4W4aZuwG","WPRdTSoXkhG","BJBdH8om","qc/dO8oPW600xMjx","WR7dPCoiW7C","FtiHWQhcRf17WO8","jKFdQgOAEmo6WPG","W6u7W64biW","sHhdRSkNW44","tKVcPmowzq","W57dKJVdJYS","WQ4ovmoeWO7cHCkYW5u","W4VdTZJcQc8wW4niAca","iN8PWOpcJSoD","W7y9W50","nvKyWPlcQa","BCo7pmkoWQpcLmoy","W5vqrmkpiW","WOqVvgtcLCkAxc0maG","efj9ua","WRnxkMJcOCoRycVcRCoD","rZxdVmoLW5u0","xZldHSkLW44","W7ldKCo9CKtcUCkiWPa","cSoYvCohhdxcOG","EHZdP25h","WO3dOfSaqci","WOHmWP1sWRy","WOacyfRdGW","W6ldP8oKcmoy","W7hdKmocgmomBa","WRNdPCoea2S","W5ddHCoUW5NdUmoSbG","de5SuCkvzau","WQldISo2W4G1","W6aUWOtcThm","b8oEWPD9ea","WQG0swtdICkq","suZcHSkJ","BtKHWQ7cNG","lmkGWOddU8oc","W4ldT8oawNK","zW/dImkRW7ldGtTQd3m","WR9BWOfPWP8","uINdRSo/W4y","tCkUW7S","WRHHoGOciSkF","WPeKdrtdHG","W5NdGqxdGcZcIa","W43cRSktWQtcGSknWQCV","W5ddQIy","CIGpWRhcG18","WPddQmoP","wSkZW6JcJmowva","hSkOWOKPvW","WRvTdXddMCou","WOhdRCoyxSon","sJBdMCocfvK","bSoAWO15dcy","W4n0r8ksWQK","F8kFmuG","W5SOt3FdGmoqrJqzoa","ASktm0K","dcBdUhFcLmoCWPu","W4FdHCoPW5hdJW","W7pdR8o2W4tdVq","W6i/Avziw8k6iCk8baOW","uZZdJSkdp0/dGJ/cHSku","WOtcSCkJW7BcG8kDWRP1f8ot","WRnncce1","E1BcPSojFa","ta4uWRBcPG","W5ddNs/cHYW","W7ygtCk2mW","g8ogW7RdTSk+WOZcR8oyWRub","dZxcS2FcQmonWPr+z38","W6pcJwmXWQq9W5BdISkyWO4","W7q2WOZcHwpcJq","WQGeW6i+W5zKW4mA","WOeCBCoxCSo2WOPsW6vD","W4NdJCoZ","W4pdSs4","WO9rWQji","utldKG","W7/dG8oeCG","k8kaWPddUq","n3RdV8oqhmkBW4jI","WOLOmt09","WRtdO8ochgRcLCkzW4iSWQ0","vJ7dMmox","qstcQSkN","y8kkW63cU8oY","WRmAmIxdVa","gYJdUxZcP8osWOD1hMW","W6vdWQHKWOxdMmopnLJdMG","nX/cN8kLrW","WOSDh8o9W4baWRVcS8osdG","rSkeW4RcK8op","WQpdIKOhxG","WOCVvwq","W6jrWOyR","WQLwWRDBWOO","W4igzCk9cW","W6Dsy8k2emka","WP4HAh3dOa","W5hdTYhcOca"];return z4=function(){return t},z4()}function Eu(t,e){let r=z4();return Eu=function(n,s){n=n-(1*7451+-1*5722+-1308);let i=r[n];if(Eu.wFHHTb===void 0){var a=function(d){let f="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=",p="",m="";for(let h=0,y,g,b=0;g=d.charAt(b++);~g&&(y=h%4?y*64+g:g,h++%4)?p+=String.fromCharCode(255&y>>(-2*h&6)):0)g=f.indexOf(g);for(let h=0,y=p.length;hr[t(840,"Ds7b")]===t(476,"Pp!D"))||{}}function asr(t){let e=Qe,r={SOhuf:function(n,s){return n=s},AgUOV:function(n,s){return n===s},SLEgN:function(n,s){return n===s},qxmqt:function(n,s){return n===s},JcKKE:function(n,s){return n===s},kdGkG:function(n,s){return n===s},IFxXC:function(n,s){return n===s},UakJm:function(n,s){return n>=s},XkbOT:e(462,"Ds7b"),rDUys:function(n,s){return n===s},XvUAo:e(941,"cafg"),OHKbr:function(n,s){return n===s},MWxfc:e(532,"7e4N"),JSMCR:function(n,s){return n===s},Hdakt:e(975,"HDeO"),FaGDa:function(n,s){return n===s},vuFGk:e(944,"aVSa"),EqtVj:function(n,s){return n===s}};if(!t||r[e(664,"HIDt")](t[e(1056,"gH]7")],31*-289+-5499+14462))return!1;if(r[e(920,"3d(S")](t[e(646,"MXaS")],-5278+-2*3203+11692)&&r[e(774,"p(Ve")](t[0],-1*-9094+8456+-17413*1)&&r[e(1225,"p(Ve")](t[-85*58+79+-1213*-4],-67*-145+250*-13+-1277*5)&&r[e(936,"G&Pc")](t[2],-949*-10+-8210+-1202)&&r[e(886,"pf%x")](t[1817*1+6313+-8127],-1146*3+-97*-20+1569*1)&&r[e(885,")D&U")](t[5*113+-5146+4585],3045*2+-133+1*-5944)&&r[e(1137,"ymzm")](t[-38*242+1*-608+9809],11*652+5444+-3*4202)&&r[e(927,"#VhR")](t[6],-16*-173+430*10+-503*14)&&r[e(1185,"v!9b")](t[-8912+-1*5504+14423],-3284*-3+3725+-13567)||r[e(647,"HDeO")](t[-1*9767+-5598+-3073*-5],-13867+-2*-7061)&&r[e(647,"HDeO")](t[2308+1*7726+-10033],-2*-1975+1*9637+13371*-1)&&r[e(625,"6Kq8")](t[2],-17*-29+-1*-8123+8361*-1))return!0;if(r[e(1077,"XeCO")](t[e(1092,"QvGB")],-1*-4436+-143+-4287)){let n=t[e(914,"v!9b")](0,6)[e(1032,"F525")](r[e(756,"$Dxn")]);if(r[e(786,"WlA!")](n,r[e(1060,"KfkJ")])||r[e(1170,"MXaS")](n,r[e(687,"I7&]")]))return!0}return r[e(679,"v!9b")](t[e(977,"YTUu")],2*4057+2*-1094+-5914*1)&&r[e(1203,"XeCO")](t[e(736,"C1ic")](1960+-392*14+3528,7858+-13*-697+-16915)[e(806,"cafg")](r[e(1210,"QvGB")]),r[e(1152,"$Dxn")])&&r[e(758,"ymI*")](t[e(502,"KfkJ")](-46*-82+5248+-1*9012,-3072+-1*-4023+939*-1)[e(757,"%H5H")](r[e(561,"WlA!")]),r[e(455,"6)4W")])?!0:r[e(1146,"QvGB")](t[2578*3+-6202+2*-766],-4*2245+3*593+7267)&&r[e(626,"pf%x")](t[241*-13+-8960+12094],211*-5+-3964+-5096*-1)}function osr(t){let e=Qe,r={wZsSY:function(s,i){return s-i},FRmsT:function(s,i){return s+i},JpXbX:function(s,i){return s<=i},wrLnj:function(s,i){return s===i},UAeke:function(s,i){return s+i},LlnoG:function(s,i){return s+i},cqmiL:function(s,i){return s+i},HORdC:function(s,i){return s===i},GjGSG:function(s,i){return s+i},RIpOF:function(s,i){return s>=i}},n=Math[e(837,"GseL")](r[e(1117,"hswT")](t[e(454,"HIDt")],-11*-885+-209*28+1*-3875),r[e(897,"I7&]")](mK,2101+3*665));for(let s=-8902+-5*-1529+-37*-34;r[e(1162,"aVSa")](s,n);s++)if(r[e(767,"hswT")](t[r[e(540,"MXaS")](s,86*31+-712*-4+-1*5510)],-141*-1+1*-9349+9310)&&r[e(1086,"v!9b")](t[r[e(894,"6Kq8")](s,-1*5455+-6693+12153)],-9083*1+6014+3185*1)&&r[e(784,"KfkJ")](t[r[e(1025,"O9yX")](s,-9*474+1989+1*2283)],13*-33+810+-260)&&r[e(514,"DRAK")](t[r[e(1018,"XeCO")](s,950+106*-54+4781*1)],6263*1+314*13+-1*10233)){let i=t[e(448,"gH]7")+"BE"](s);if(r[e(899,"Ds7b")](i,-3522+-317*-7+1311))return s}return-(-5721+-536*10+11082)}function csr(t){let e=Qe,r={RzbpV:e(939,"6Kq8"),IlXrC:function(i,a){return i>a},EYPFl:function(i,a){return i<=a},wUcjJ:function(i,a){return i+a},TJCmB:function(i,a){return i===a},BCVej:function(i,a){return i+a},WHjjN:e(1106,"I7&]"),ATZiv:e(445,"H0(4")},n=Buffer[e(1176,"(6@z")](r[e(451,"QvGB")]),s=t[e(952,"pf%x")](n,8339+-4854*2+-685*-2);for(;r[e(636,"p(Ve")](s,-1344+-13*-1+1331);){if(r[e(1113,"Rn$0")](r[e(882,"VuHG")](s,1*-5683+-1721*-1+-1*-3974),t[e(884,"ymI*")])&&r[e(1029,"$Dxn")](t[e(1135,"XeCO")](r[e(882,"VuHG")](s,-6645+-13*-413+1284),r[e(676,"cafg")](s,12))[e(1093,"$Dxn")](r[e(779,"DRAK")]),r[e(555,"ymI*")]))return s;s=t[e(434,"O9yX")](n,r[e(797,"MGKd")](s,22*149+-9897*-1+-13174))}return-(801+1601*1+-2401)}function usr(t){let e=Qe,r={KKPAR:function(s,i){return s-i},ntPpX:function(s,i){return s+i},YhbTz:function(s,i){return s<=i},OtSCW:function(s,i){return s===i},oKvMY:function(s,i){return s===i},zNwta:function(s,i){return s+i},DTRKV:function(s,i){return s+i}},n=Math[e(887,"Rn$0")](r[e(1109,"(6@z")](t[e(549,"Rn$0")],1*-409+7589+-6804),r[e(704,")D&U")](mK,1580+-4813*1+1*3421));for(let s=-17*-429+-6979+-1*313;r[e(542,"]UY8")](s,n);s++)if(r[e(1026,"YTUu")](t[s],-6242*-1+1154*-2+1*-3863)&&r[e(1069,"KfkJ")](t[r[e(567,"!Qkh")](s,92*98+13*31+-3077*3)],-39*-21+-262*-14+-4416)&&r[e(994,"G&Pc")](t[r[e(827,"ltNx")](s,-839+14*-511+8369*1)],8124+1*-5077+-2976))return s;return-1}function lsr(t){let e=Qe,r={iaNmH:function(i,a){return i(a)},OgAyh:e(1128,"#VhR"),IuZGx:function(i,a){return i(a)},GXOvA:function(i,a){return i<=a},aZDcR:function(i,a){return i>a}};if(!r[e(544,"ltNx")](asr,t))return 2540*-1+4752+1*-2212;let n=[r[e(861,"YTUu")](osr,t),t[e(803,"3d(S")](Buffer[e(1151,"VuHG")](r[e(1020,"gH]7")]),-38*-30+-3035+-2*-948),t[e(969,"MXaS")](Buffer[e(505,"IlPH")]([9455+1569*-1+-7860,-1*-9992+44*12+-10451,-1249+-87*38+4778,-8485+32*-202+-4*-3778]),8907+-9029*-1+-17935),r[e(1022,"MGKd")](csr,t),r[e(464,"6Kq8")](usr,t)][e(949,"%H5H")](i=>Number[e(731,"Rn$0")](i)&&i>-1*-6499+8975+-15474);if(!n[e(646,"MXaS")])return 0;let s=Math[e(1102,"MXaS")](...n);return r[e(911,"XeCO")](s,-6463+-1*-6463)||r[e(581,"P7e(")](s,mK)?45*14+1623*4+-7122:s}async function dsr(t){let e=Qe,r={PnJqi:e(999,"IlPH")+"r",IaGQl:function(a,o){return a*o},zWocS:function(a,o){return a+o},UvLOR:function(a,o){return a||o},HBLBu:function(a,o){return a-o},edRpA:function(a,o){return a(o)},SHUrE:function(a,o){return a>o}};if(!t)return{isMasked:!1,skipBytes:0};let n=await fe[e(712,"qKU^")](t,{responseType:r[e(1166,"QvGB")],timeout:r[e(881,"XeCO")](4982+-21*143+-979,9297+9923*1+-6*3202),maxContentLength:r[e(950,"Pp!D")](aK,-6*-1166+7926+2*-6949),maxBodyLength:r[e(1072,"2N%U")](aK,-6*-1534+-29*103+-5193),headers:Object[e(940,"H0(4")]({Cookie:r[e(929,"F525")](Rc,""),Range:e(661,"p(Ve")+r[e(475,"KfkJ")](aK,7*-588+-9429+13546)},vb)})[e(1126,"P7e(")](a=>{let o=e;return console[o(495,"MXaS")](a),a[o(577,"O9yX")]||null});if(!n||!n[e(438,"Pp!D")])return{isMasked:!1,skipBytes:0};let s=Buffer[e(762,"Pp!D")](n[e(579,"MGKd")])?n[e(931,"DRAK")]:Buffer[e(1058,"pf%x")](n[e(563,"]UY8")]),i=r[e(725,"XeCO")](lsr,s);return{isMasked:r[e(651,"Ds7b")](i,-6751+13*627+-1400),skipBytes:r[e(487,"gH]7")](i,-2235+-1*-2235)?i:-4645*-1+-993*-1+-1*5638}}async function lK(t,e){let r=Qe,n={GGkel:function(o,c){return o||c},GZViy:function(o,c){return o===c},hpPwY:function(o,c){return o(c)}};if(n[r(1059,"(6@z")](!t,!e))return{isMasked:!1,skipBytes:0};let s=t5e[t];if(s&&n[r(878,"ymI*")](s[r(773,")D&U")],e))return s;let i=await n[r(1082,"Kp2)")](dsr,e),a={downUrl:e,isMasked:n[r(749,"!52N")](i[r(961,"H0(4")],!0),skipBytes:i[r(644,"HDeO")]||2*-631+-15*94+1336*2};return t5e[t]=a,a}async function K4(t,e){let r=Qe,n={Xwcfw:function(c,u){return c(u)},VhfgV:function(c,u){return c==u},fvAVk:r(995,"p(Ve"),bBVNO:r(741,"ltNx"),bAjbH:function(c,u,l,d,f){return c(u,l,d,f)},pSGqV:function(c,u){return c(u)},eBEQd:r(1013,"7e4N")+r(683,"Kp2)")+r(550,"qKU^"),Vskqa:function(c){return c()},wBFJk:function(c,u){return c===u},BkBhN:function(c,u,l,d,f,p){return c(u,l,d,f,p)},lZMWD:r(918,"MA3o"),bERzG:function(c,u){return c==u},KNWqW:r(662,"$Dxn")+r(535,"QvGB"),eIhNq:r(622,"aVSa"),YJzYs:function(c,u,l){return c(u,l)},OIxkV:function(c,u,l,d,f,p,m){return c(u,l,d,f,p,m)},BDVJW:function(c,u){return c*u},fIsQY:function(c,u){return c*u}};await n[r(1111,"p(Ve")]($I,t);let s=t[r(750,"P7e(")][r(673,"HDeO")],i=t[r(805,"hswT")][r(1074,"7e4N")],a=t[r(814,"Ds7b")][r(459,"%H5H")],o=t[r(488,"ymI*")][r(808,"Pp!D")];if(n[r(873,"IlPH")](s,n[r(726,"I7&]")])){let c="",u=o[r(764,"I7&]")]("*"),l=t[r(566,"#VhR")][r(652,"GseL")];if(n[r(1081,"3d(S")](i,n[r(826,"3d(S")])){if(c=(await n[r(998,"3d(S")](c5e,a,n[r(1051,"hswT")](decodeURIComponent,u[0]),u[1],u[2])||[])[r(956,"3d(S")](g=>g[r(1045,"YTUu")])[r(1171,"(6@z")](g=>g[r(1156,"$Dxn")][r(851,"6)4W")+"e"]()==l)?.[r(1103,"C1ic")]?.[r(697,"IlPH")]||"",!c){e[r(708,"v!9b")](2129*3+-1896+-3991),e[r(443,"MGKd")](n[r(595,"F525")]);return}e[r(835,"F525")](c);return}else{let y=n[r(1019,")D&U")](uK);if(c=(n[r(785,"YTUu")](y[r(1206,"MXaS")],!0)?await n[r(765,"DRAK")](isr,a,n[r(449,"1Ota")](decodeURIComponent,u[0]),u[-4768*2+-208+-1*-9745],u[-6*1543+-1*184+9444],n[r(1197,"cafg")](l,n[r(791,"!52N")])):await n[r(868,"!Qkh")](pK,a,n[r(728,"gH]7")](decodeURIComponent,u[7913+1*-7913]),u[3796+67*4+4063*-1],u[3253+1*8040+-11291],n[r(578,"P7e(")](l,n[r(688,"Rn$0")])))?.[r(893,"O9yX")+"rl"]||"",!c){e[r(481,"P7e(")](1*-9883+-362*-2+9659),e[r(819,"]UY8")](n[r(635,"$Dxn")]);return}if(n[r(858,"KfkJ")](l,n[r(711,"VuHG")])){e[r(1220,"6Kq8")](c);return}}let d=n[r(703,"GseL")](uK),f=d[r(985,"2N%U")]||1*5920+439*16+-4144*3,p=d[r(964,"]UY8")]||-5581*-1+-1*5647+76,m=await n[r(472,"QvGB")](lK,u[5*1247+-313*3+1*-5295],c),h=m[r(1030,"O9yX")]&&n[r(719,"I7&]")](l,n[r(1160,"6)4W")])?m[r(546,"v!9b")]:1*-6949+3694+-3255*-1;return await n[r(665,"HIDt")](xb,t,e,c,u[-7*377+-2562+9*578],Object[r(778,"%H5H")]({Cookie:Rc},vb),{chunkSize:n[r(874,"6)4W")](103*2+1*-1385+-1*-2203,f),poolSize:p,timeout:n[r(670,"QvGB")](-1*-4770+870*-5+580,10),skipBytes:h})}}async function V4(t,e){let r=Qe,n={qqARe:function(c,u){return c(u)},tLHJM:function(c,u){return c(u)},AOhFq:function(c,u){return c(u)},sTRrj:function(c,u){return c(u)},dUAvo:r(855,"2N%U"),JMdCQ:function(c,u){return c+u},mRMcf:function(c,u){return c(u)},twbwx:r(984,"ltNx")+"rk",xgpRy:function(c){return c()},DhXVi:function(c,u){return c===u},RwdrI:r(667,"HDeO"),iCTGx:function(c,u,l,d,f){return c(u,l,d,f)},drCJm:function(c,u,l){return c(u,l)},UaZbS:function(c){return c()},XOwbl:function(c){return c()},FZqWz:function(c,u,l,d,f,p){return c(u,l,d,f,p)},bcQSV:function(c,u,l,d,f){return c(u,l,d,f)},beVzO:r(689,"6Kq8"),OHYUo:r(1001,"G&Pc"),XgoRG:r(913,"Rn$0"),HzaYW:r(1010,"HIDt"),wgUhE:function(c){return c()}};await n[r(604,"VuHG")]($I,t);let s=t[r(1042,"ymzm")][r(594,"6Kq8")],i=t[r(923,"ltNx")].id,a=i[r(1157,"v!9b")]("*"),o=20*-283+-6839*1+12499;if(s[r(522,"IlPH")](await n[r(637,"MA3o")](r5e,n[r(1067,"2N%U")]))){let c=n[r(946,"HIDt")](n[r(848,"G&Pc")](n[r(517,"Pp!D")](Znr,t),t[r(1043,"(6@z")][r(963,"6Kq8")]),n[r(915,"HIDt")]),u={parse:0,url:[],header:Object[r(787,"WlA!")]({Cookie:Rc},vb)};a[12681+12677*-1]&&(u[r(1142,"KfkJ")]={subt:c+r(777,"pf%x")+a[2*4633+-85*-24+-11306]+"/"+n[r(980,"6Kq8")](encodeURIComponent,a[11*442+15*24+-5221])+"*"+a[-1*-710+-550+-52*3]+"*"+a[5608+5641*1+-1*11244]+r(486,"MGKd")});let l=n[r(492,"GseL")](uK),d=n[r(903,"WlA!")](l[r(597,"C1ic")],!0),f=u[r(807,"ymzm")],p=()=>{let A=r;f[A(1110,"HIDt")]("\u4EE3\u7406"),f[A(842,"MGKd")](c+A(702,"qKU^")+a[1*761+1*5851+1653*-4]+"/"+n[A(1115,"6)4W")](encodeURIComponent,a[-1762*-5+-922*-5+-13419*1])+"*"+a[-3*-573+-1*-9679+4*-2849]+"*"+a[116*-7+-23*-258+-5119]+A(1211,"H0(4"))},m=()=>{let A=r;f[A(967,"MA3o")]("\u4EE3\u7406"),f[A(966,"WlA!")](c+A(521,"C1ic")+a[0]+"/"+n[A(890,"!52N")](encodeURIComponent,a[-4160+-19*-219])+"*"+a[11977+-25*479]+"*"+a[-1*6901+5685+1219]+A(570,"3d(S")),f[A(966,"WlA!")]("\u539F\u753B"),f[A(1008,"F525")](c+(A(520,"WlA!")+A(754,"HIDt"))+a[4055*1+-2*1187+-1681]+"/"+n[A(1099,"qKU^")](encodeURIComponent,a[4866+-1203*4+1*-53])+"*"+a[23*-307+1*4201+-54*-53]+"*"+a[2942+4*-376+-1435]+A(429,"G&Pc"))};if(d){let A=n[r(721,"HDeO")](a[0],n[r(1100,"2N%U")])?await n[r(1037,")D&U")](fK,a[2]):await n[r(1131,"DRAK")](a5e,a[0],a[1],a[2],a[3]);if(A?.[r(1002,"ymzm")+"rl"])return(await n[r(976,"aVSa")](lK,a[2],A[r(850,"v!9b")+"rl"]))[r(780,"MA3o")]?(n[r(1196,"YTUu")](p),u):(n[r(828,"Pp!D")](m),u)}let h=await n[r(660,"H0(4")](pK,a[-9501+9501*1],a[-5413*1+-70*-109+8*-277],a[740+1*8782+-170*56],a[-5472+92*1+-1*-5383],!1),y=h?.[r(888,"7e4N")+"rl"];if(y&&(await n[r(1153,"P7e(")](lK,a[2],y))[r(875,"v!9b")])return n[r(1172,"1Ota")](p),u;let g=(await n[r(513,"%H5H")](c5e,a[-13985+-13985*-1],a[1],a[-17724+17726*1],a[3])||[])[r(997,"C1ic")](A=>A[r(1129,"WlA!")]),b=["\u8D85\u6E05","\u84DD\u5149","\u9AD8\u6E05","\u6807\u6E05","\u666E\u753B","\u6781\u901F"],x=["4k","2k",n[r(1112,"!52N")],n[r(571,"6)4W")],n[r(844,"3d(S")],n[r(1064,"gH]7")]];return n[r(1195,"XeCO")](m),g[r(619,"!Qkh")](A=>{let S=r;o=x[S(527,"#VhR")](A[S(1123,"IlPH")]),f[S(1168,"GseL")](b[o]),f[S(967,"MA3o")](c+S(1189,"YTUu")+A[S(474,"qKU^")][S(447,"VuHG")+"e"]()+"/"+a[0]+"/"+n[S(1222,"YTUu")](encodeURIComponent,a[5647+-49*29+-845*5])+"*"+a[445*-2+-7*603+-1*-5113]+"*"+a[11079+-2*5538]+S(782,"MXaS"))}),u}}var Pl=Ce(Xn(),1);var bMe=Ce(Q0(),1),Af=Ce(Xn(),1);var lB="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",XI={NEW:"NEW",SCANNED:"SCANNED",CONFIRMED:"CONFIRMED",EXPIRED:"EXPIRED",CANCELED:"CANCELED"},xMe={encode(t,e=3e5){let r={data:t,expireTime:Date.now()+e};return Buffer.from(JSON.stringify(r)).toString("base64url")},decode(t){try{if(!t)return null;let e=JSON.parse(Buffer.from(t,"base64url").toString());return Date.now()>e.expireTime?null:e.data}catch{return null}}},war=async t=>{let e=Af.default.enc.Hex.stringify(Af.default.MD5(t.config.uc.cookie)).toString();return(await t.db.getObjectDefault("/uc",{}))[e]??""},Rar=async(t,e)=>{let r=Af.default.enc.Hex.stringify(Af.default.MD5(t.config.uc.cookie)).toString();await t.db.push(`/uc/${r}`,e)},iV=async t=>{let e=Af.default.enc.Hex.stringify(Af.default.MD5(t.config.uc.ut)).toString();return(await t.db.getObjectDefault("/uc",{}))[e]??""},aV=async(t,e)=>{let r=Af.default.enc.Hex.stringify(Af.default.MD5(t.config.uc.ut)).toString();await t.db.push(`/uc/${r}`,e)};async function oV(t){t.get("/qrcode",async(r,n)=>{try{let s=await he.get(`https://api.open.uc.cn/cas/ajax/getTokenForQrcodeLogin?client_id=381&v=1.2&request_id=${Date.now()}`,{headers:{"User-Agent":lB,referer:"https://drive.uc.cn"}}),i=s.data.data.members.token,a=wl(s.headers["set-cookie"]),o=xMe.encode({token:i,cookies:a}),c=`https://su.uc.cn/1_n0ZCv?uc_param_str=dsdnfrpfbivesscpgimibtbmnijblauputogpintnwktprchmt&token=${i}&client_id=381&uc_biz_str=S%3Acustom%7CC%3Atitlebar_fix`,u=await bMe.default.toBuffer(c,{width:300,height:300});n.header("X-Session-Key",o),n.send(u)}catch(s){console.error("UC\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25:",s),n.status(500).send({code:-1,message:"\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25"})}}),t.post("/check-status",async(r,n)=>{let{sessionKey:s}=r.body,i=xMe.decode(s);if(!i)return n.send({code:0,data:{status:XI.EXPIRED}});let{token:a,cookies:o}=i;try{let c=await he.get(`https://api.open.uc.cn/cas/ajax/getServiceTicketByQrcodeToken?__t=${Date.now()}&token=${a}&client_id=381&v=1.2&request_id=${Date.now()}`,{headers:{"User-Agent":lB}});if(c.data.status===2e6){let u=await e(c.data.data.members.service_ticket,o);n.send({code:0,data:{status:XI.CONFIRMED,cookie:u}})}else c.data.status===50004002?n.send({code:0,data:{status:XI.EXPIRED}}):n.send({code:0,data:{status:XI.NEW}})}catch(c){console.error("UC\u72B6\u6001\u68C0\u67E5\u5931\u8D25:",c),n.send({code:0,data:{status:XI.NEW}})}});async function e(r,n){let s=[...n],i=await he.get(`https://drive.uc.cn/account/info?st=${r}&fr=pc&platform=pc`,{headers:{"User-Agent":lB,Cookie:s.join(""),referer:"https://drive.uc.cn"}});i.headers["set-cookie"]&&(s=s.concat(wl(i.headers["set-cookie"])));let a=await he.post("https://pc-api.uc.cn/1/clouddrive/transfer/upload/pdir?pr=UCBrowser&fr=pc",{},{headers:{"User-Agent":lB,Cookie:s.join("")}});return a.headers["set-cookie"]&&(s=s.concat(wl(a.headers["set-cookie"]))),s.join("")}t.post("/cookie",(r,n)=>{n.send({code:-1,message:"\u8BF7\u4F7F\u7528 /check-status \u63A5\u53E3"})}),t.get("/cookie",async(r,n)=>{n.send({code:0,data:await war(r.server)})}),t.put("/cookie",async(r,n)=>{await Rar(r.server,r.body?.cookie??""),n.send({code:0})}),t.get("/ut",async(r,n)=>{n.send({code:0,data:await iV(r.server)})}),t.put("/ut",async(r,n)=>{await aV(r.server,r.body?.ut??""),n.send({code:0})})}var Nar=10*60*1e3,lo={DeviceID:"07b48aaba8a739356ab8107b5e230ad4",RefreshToken:"",AccessToken:""},Wn={api:"https://open-api-drive.uc.cn",clientID:"5acf882d27b74502b7040b0c65519aa7",signKey:"l3srvtd7p42l0d0x1u8d7yc8ye9kki4d",appVer:"1.6.8",channel:"UCTVOFFICIALWEB",codeApi:"https://api.extscreen.com/ucdrive"};function RMe(t){return String(t||"").split(",")[0].trim()}function _Me(t){return RMe(t).replace(/^\w+:\/\//,"").split("/")[0].trim()}function Oar(t){let e=String(t?.server?.address?.()?.url||"").trim(),n=_Me(t?.headers?.["x-forwarded-host"])||_Me(t?.headers?.host);if(!n)return e;let s=RMe(t?.headers?.["x-forwarded-proto"]),i=e.startsWith("https://")?"https":"http";return`${s||String(t?.protocol||"").trim()||i}://${n}`}function kar(t){return Pl.default.MD5(t).toString().slice(0,16)}function kb(t,e){return Pl.default.MD5(t+e).toString().slice(0,16)}function pB(t,e,r,n){let s=t+"&"+e+"&"+r+"&"+n;return Pl.default.SHA256(s).toString()}function EMe(t){return String(t||"").trim()}function cV(t){let e=Number(t);return Number.isFinite(e)&&e>0?e:0}function Par(t){if(!t||typeof t!="string")return null;let e=t.trim();if(!e.startsWith("{"))return null;try{let r=JSON.parse(e);return r&&typeof r=="object"&&!Array.isArray(r)?r:null}catch{return null}}function fg(t,e=Date.now()){if(!t)return null;let r=typeof t=="string"?Par(t)||t.trim():t;if(!r)return null;if(typeof r=="string")return{access_token:r};if(typeof r!="object"||Array.isArray(r))return null;let n=EMe(r.access_token||r.accessToken||r.token),s=EMe(r.refresh_token||r.refreshToken),i=cV(r.expires_in||r.expiresIn),a=cV(r.expires_at||r.expiresAt||r.expire_time||r.expireTime);if(!n&&!s)return null;let o={access_token:n};return s&&(o.refresh_token=s),i&&(o.expires_in=i),a?o.expires_at=a:i&&(o.expires_at=e+i*1e3),r.scope&&(o.scope=r.scope),(r.token_type||r.tokenType)&&(o.token_type=r.token_type||r.tokenType),o.updated_at=cV(r.updated_at||r.updatedAt)||e,o}function mB(t){let e=fg(t);return e?JSON.stringify(e):""}function Dar(t,e=Date.now()){return!!(t?.refresh_token&&t?.expires_at&&e+Nar>=t.expires_at)}function vMe(t={}){let e=Math.floor(Date.now()/1e3).toString()+"000";return{req_id:kb(lo.DeviceID,e),app_ver:Wn.appVer,device_id:lo.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:Wn.channel,...t}}async function SMe(t){let e=await he.post(`${Wn.codeApi}/token`,JSON.stringify(t),{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"},validateStatus:r=>r<500});return e.data?.code!==200||!e.data?.data?null:fg(e.data.data)}async function Bar(t){if(!t?.refresh_token||!dg||!ZI)return null;let e=vMe({grant_type:"refresh_token",refresh_token:t.refresh_token}),r=await SMe(e).catch(()=>null);return r?.access_token||(r=await SMe(vMe({refresh_token:t.refresh_token})).catch(()=>null)),r?.access_token?(r.refresh_token||(r.refresh_token=t.refresh_token),!r.expires_in&&t.expires_in&&(r.expires_in=t.expires_in),!r.expires_at&&r.expires_in&&(r.expires_at=Date.now()+r.expires_in*1e3),await dg.push(`/uc/${ZI}`,mB(r)),r):null}async function IMe(t,e=!1){if(!t?.access_token)return"";if((e||Dar(t))&&t.refresh_token){let r=await Bar(t);if(r?.access_token)return Object.assign(t,r),r.access_token}return t.access_token}function NMe(t){let r=/https:\/\/drive\.uc\.cn\/s\/([^\\|#/?]+)/.exec(t);return r?{shareId:r[1],folderId:"0"}:null}var Bl="pr=UCBrowser&fr=pc",lV={"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"},dg=null,fB=null,uV="https://pc-api.uc.cn/1/clouddrive/",xf="",ZI="",OMe="",CMe="CatVodOpen",lg=null,dB="";async function kMe(t){dg=t.server.db;let e=t.server.config.uc;xf=e.cookie,fB=Pl.default.enc.Hex.stringify(Pl.default.MD5(e.cookie)).toString(),ZI=Pl.default.enc.Hex.stringify(Pl.default.MD5(e.token)).toString(),OMe=Pl.default.enc.Hex.stringify(Pl.default.MD5(e.ut)).toString();let r=await dg.getObjectDefault("/uc",{});if(r[fB]&&(xf=r[fB]),dB=await iV(t.server),!dB)try{await fe.get(`${uV}/file`)}catch(n){n?.response?.data?.length&&(dB=n.response.data,aV(t.server,dB))}}async function Su(t,e,r,n,s){r=r||{},Object.assign(r,lV),Object.assign(r,{Cookie:xf||""}),n=n||"post";let i=n=="get"?await fe.get(`${uV}/${t}`,{headers:r}).catch(o=>(console.error(o),o?.response?.status===401&&messageToDart({action:"toast",opt:{message:"UC Cookie \u53EF\u80FD\u5DF2\u5931\u6548\uFF0C\u8BF7\u524D\u5F80\u3010\u914D\u7F6E\u3011\u7AD9\u6E90\u91CD\u65B0\u626B\u7801",duration:5}}),o.response||{status:500,data:{}})):await fe.post(`${uV}/${t}`,e,{headers:r}).catch(o=>(console.error(o),o?.response?.status===401&&messageToDart({action:"toast",opt:{message:"UC Cookie \u53EF\u80FD\u5DF2\u5931\u6548\uFF0C\u8BF7\u524D\u5F80\u3010\u914D\u7F6E\u3011\u7AD9\u6E90\u91CD\u65B0\u626B\u7801",duration:5}}),o.response||{status:500,data:{}})),a=s||3;if(i.headers["set-cookie"]){let o=i.headers["set-cookie"].join(";;;").match(/__puus=([^;]+)/);if(o){let c=XD(xf,"__puus",o[1]);c!==xf&&(xf=c,await dg.push(`/uc/${fB}`,xf))}}return i.status===429&&a>0?(await pf(1e3),await Su(t,e,r,n,a-1)):i.data||{}}async function TMe(){let t=await Su(`file/sort?${Bl}&pdir_fid=${lg}&_page=1&_size=200&_sort=file_type:asc,updated_at:desc`,{},{},"get");if(t.data&&t.data.list&&t.data.list.length>0){let e=await Su(`file/delete?${Bl}`,{action_type:2,filelist:t.data.list.map(r=>r.fid),exclude_fids:[]});console.log(e)}}async function Lar(t){if(lg){t&&await TMe();return}let e=await Su(`file/sort?${Bl}&pdir_fid=0&_page=1&_size=200&_sort=file_type:asc,updated_at:desc`,{},{},"get");if(e.data&&e.data.list){for(let r of e.data.list)if(r.file_name===CMe){lg=r.fid,await TMe();break}}if(!lg){let r=await Su(`file?${Bl}`,{pdir_fid:"0",file_name:CMe,dir_path:"",dir_init_lock:!1});console.log(r),r.data&&r.data.fid&&(lg=r.data.fid)}}async function PMe(t){let e=await Su(`share/sharepage/token?${Bl}`,{pwd_id:t.shareId,passcode:t.sharePwd||""});return e.data?.stoken?e.data:null}var Mar=[".srt",".ass",".scc",".stl",".ttml"];async function War(t){let e=typeof t=="string"?NMe(t):t;if(!e)return[];let r=await PMe(e);if(!r)return[];let n=r.stoken,s=[],i=[],a=(c,u)=>c?`${c}/${u}`:u,o=async function(c,u,l,d){let f=d||"",p=100;l=l||1;let m=await Su(`share/sharepage/detail?${Bl}&pwd_id=${c}&stoken=${encodeURIComponent(n)}&pdir_fid=${u}&force=0&_page=${l}&_size=${p}&_sort=file_type:asc,file_name:asc`,{},{},"get");if(!m.data)return[];let h=m.data.list;if(!h)return[];let y=[];for(let g of h)if(g.dir===!0)y.push({fid:g.fid,path:a(f,g.file_name)});else if(g.file===!0&&g.obj_category==="video"){if(g.size<1024*1024*5)continue;g.stoken=n,g.vod_group=f,s.push(g)}else g.type==="file"&&Mar.some(b=>g.file_name.endsWith(b))&&i.push(g);if(l0&&s.forEach(c=>{var u=Tl(c,i);u.bestMatch&&(c.subtitle=u.bestMatch.target)}),s}var Dl={};async function DMe(t,e,r,n,s){if(await Lar(s),s){let a=Object.keys(Dl);for(let o of a)delete Dl[o]}if(!lg||(e||(e=(await PMe({shareId:t}))?.stoken||""),!e))return null;let i=await Su(`share/sharepage/save?${Bl}`,{fid_list:[r],fid_token_list:[n],to_pdir_fid:lg,pwd_id:t,stoken:e,pdir_fid:"0",scene:"link"});if(i.data&&i.data.task_id){let a=0;for(;;){let o=await Su(`task?${Bl}&task_id=${i.data.task_id}&retry_index=${a}`,{},{},"get");if(o.data&&o.data.save_as&&o.data.save_as.save_as_top_fids&&o.data.save_as.save_as_top_fids.length>0)return o.data.save_as.save_as_top_fids[0];if(a++,a>5)break;await pf(1e3)}}return!1}async function BMe(t,e,r,n){if(!Dl[r]){let i=await DMe(t,e,r,n,!0);if(!i)return null;Dl[r]=i}let s=await Su(`file/v2/play?${Bl}`,{fid:Dl[r],resolutions:"normal,low,high,super,2k,4k",supports:"fmp4"});return s.data&&s.data.video_list?s.data.video_list:null}function $ar(t){let e=Number(t?.status||0),r=t?.data||{},n=Number(r?.code||r?.status||r?.errno||0),s=String(r?.message||r?.msg||r?.error_info||"").toLowerCase();return e===401||e===403||n===401||n===403||s.includes("token")||s.includes("unauthorized")}async function wMe(t,e){if(!t||!e)return{videoInfo:null,authFailed:!1};let r="/file",n=Math.floor(Date.now()/1e3).toString()+"000",s=lo.DeviceID||kar(n),i=kb(s,n),a=pB("GET",r,n,Wn.signKey),o=await he.request({method:"GET",url:`${Wn.api}${r}`,params:{req_id:i,access_token:e,app_ver:Wn.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:Wn.channel,method:"streaming",group_by:"source",fid:t,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":n,"x-pan-token":a,"content-type":"text/plain;charset=UTF-8","x-pan-client-id":Wn.clientID},validateStatus:u=>u<500}).catch(u=>u.response||{status:500,data:{}}),c=o?.data?.data?.video_info?.filter(u=>u.accessable)?.[0];return c?(c.download_url=c.url,{videoInfo:c,authFailed:!1}):{videoInfo:null,authFailed:$ar(o)}}async function Uar(t,e){let r=`file/download?${Bl}`;e&&(r+=`&ut=${e}`);let n=await Su(r,{fids:[t]});return n.data?n.data[0]:null}async function Far(t,e,r,n,s){if(!Dl[r]){let c=await DMe(t,e,r,n,s);if(!c)return null;Dl[r]=c}let i=await dg.getObjectDefault("/uc",{}),a=fg(i[ZI]),o=i[OMe];if(a?.access_token){let c=await IMe(a),u=await wMe(Dl[r],c);if(u.videoInfo)return u.videoInfo;if(u.authFailed&&a.refresh_token){let l=await IMe(a,!0);if(l&&l!==c&&(u=await wMe(Dl[r],l),u.videoInfo))return u.videoInfo}}return await Uar(Dl[r],o)}async function LMe(t){if(U4(t)){let e=NMe(t);if(e){let r=await War(e);return r=r.map(n=>({vod_id:[e.shareId,n.stoken,n.fid,n.share_fid_token,n.subtitle?n.subtitle.fid:"",n.subtitle?n.subtitle.share_fid_token:""].join("*"),vod_name:n.file_name,vod_size:n.size,vod_group:n.vod_group})),Is(getPanName("uc"),r)}else return{}}}async function MMe(t,e){let r=t.params.site,n=t.params.what,s=t.params.shareId,i=t.params.fileId;if(await kMe(t),r=="uc"){let a="",o=i.split("*"),c=t.params.flag;if(n=="trans"){if(a=(await BMe(s,decodeURIComponent(o[0]),o[1],o[2])||[]).filter(m=>m.accessable).find(m=>m.resolution.toLowerCase()==c)?.video_info?.url||"",!a){e.code(500),e.send("uc transcode url empty");return}e.redirect(a);return}else{if(a=(await Far(s,decodeURIComponent(o[0]),o[1],o[2],c=="down"))?.download_url||"",!a){e.code(500),e.send("uc downUrl empty");return}if(c=="redirect"){e.redirect(a);return}}let l=(globalThis.Pans||[]).find(p=>p.key==="uc")||{},d=l.chunkSize||512,f=l.poolSize||10;return await xb(t,e,a,o[1],Object.assign({Cookie:xf},lV),{chunkSize:1024*d,poolSize:f,timeout:1e3*10})}}async function WMe(t,e){let r=t.body.flag,s=t.body.id.split("*");await kMe(t);let i=0;if(r.startsWith(getPanName("uc"))){let a=(await BMe(s[0],s[1],s[2],s[3])||[]).filter(g=>g.accessable),o=[],c=["\u8D85\u6E05","\u84DD\u5149","\u9AD8\u6E05","\u6807\u6E05","\u666E\u753B","\u6781\u901F"],u=["4k","2k","super","high","low","normal"],l=Oar(t)+t.server.prefix+"/proxy/uc",d=await dg.getObjectDefault("/uc",{}),p=!!fg(d[ZI])?.access_token,m=["\u4EE3\u7406",`${l}/src/down/${s[0]}/${encodeURIComponent(s[1])}*${s[2]}*${s[3]}/.bin`],h=["\u539F\u753B",`${l}/src/redirect/${s[0]}/${encodeURIComponent(s[1])}*${s[2]}*${s[3]}/.bin`];p?o.push(...h,...m):o.push(...m,...h);let y={parse:0,url:o,header:Object.assign({Cookie:xf},lV)};return p&&(y.header=void 0),s[3]&&(y.extra={subt:`${l}/src/subt/${s[0]}/${encodeURIComponent(s[1])}*${s[4]}*${s[5]}/.bin`}),a.forEach(g=>{i=u.indexOf(g.resolution),o.push(c[i]),o.push(`${l}/trans/${g.resolution.toLowerCase()}/${s[0]}/${encodeURIComponent(s[1])}*${s[2]}*${s[3]}/.mp4`)}),y}}var gg=Ce(oC(),1),s8e=Ce(FWe(),1),V0=Ce(require("crypto"),1);var BV,Mb={},z0={set(t,e){Mb[t]=e,BV.push(`/tyi/${t}`,e)},get(t){return Mb[t]}},qWe=(t,e={})=>{let r=e.method||"GET",n=e.headers||{};return he({method:r,url:t,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))},LV=(0,s8e.default)({storeAsString:!0}),Scr=(t,e)=>t?`${t}/${e}`:e,jWe="video",RB="cas",Icr=new Set([RB]),Ccr=new Set(["mp4","m4v","mkv","avi","mov","flv","ts","m2ts","m3u8","mpd","webm","wmv","rmvb","rm","f4v","m4s"]),QWe="02",CB="8025431004",HWe="10020",Tcr="6.2",cC="https://cloud.189.cn",uC="https://open.e.189.cn",ea="https://api.cloud.189.cn",TB="https://upload.cloud.189.cn",GWe="https://m.cloud.189.cn/zhuanti/2020/loginErrorPc/index.html",wcr="web_cloud.189.cn",kc={"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"},wB="MyCatPaw",kV={"User-Agent":kc["User-Agent"],Accept:"text/plain,application/json;charset=UTF-8,*/*","Accept-Encoding":kc["Accept-Encoding"]},Rcr=new Set(["UNABLE_TO_VERIFY_LEAF_SIGNATURE","UNABLE_TO_VERIFY_FIRST_CERTIFICATE","SELF_SIGNED_CERT_IN_CHAIN","DEPTH_ZERO_SELF_SIGNED_CERT","CERT_HAS_EXPIRED","ERR_TLS_CERT_ALTNAME_INVALID"]);function Ncr(t){let e=new Map;return String(t||"").split(";").map(r=>r.trim()).filter(Boolean).forEach(r=>{let n=r.indexOf("=");if(n<=0)return;let s=r.slice(0,n).trim(),i=r.slice(n+1).trim();s&&e.set(s,i)}),e}function PV(t,e){let r=Ncr(t);return(Array.isArray(e)?e:e?[e]:[]).forEach(s=>{let i=String(s||"").split(";")[0].trim();if(!i)return;let a=i.indexOf("=");if(a<=0)return;let o=i.slice(0,a).trim(),c=i.slice(a+1).trim();o&&r.set(o,c)}),Array.from(r.entries()).map(([s,i])=>`${s}=${i}`).join("; ")}function zWe(){return{clientType:"TELEPC",version:Tcr,channelId:wcr,rand:`${Math.floor(Math.random()*1e5)}_${Math.floor(Math.random()*1e10)}`}}function Ocr(t){let e=String(t?.code||"").trim().toUpperCase(),r=String(t?.message||"").trim();return Rcr.has(e)||/unable to verify the first certificate|self[ -]signed certificate|certificate/i.test(r)}async function K0(t,e=""){try{return await he(t)}catch(r){if(!Ocr(r))throw r;return r?.code,r?.message||String(r),Wt(t?.url||"",260),await fe({...t,proxy:!1})}}function kcr(){return new Date().toUTCString()}function Pcr(t,e){let r=new URLSearchParams;Object.keys(t||{}).sort().forEach(s=>{let i=t[s];i!=null&&r.append(s,String(i))});let n=V0.default.createCipheriv("aes-128-ecb",Buffer.from(String(e||"").slice(0,16),"utf8"),null);return n.setAutoPadding(!0),Buffer.concat([n.update(r.toString(),"utf8"),n.final()]).toString("hex").toUpperCase()}function Dcr(t,e,r,n,s,i=""){let a=new URL(n).pathname,o=`SessionKey=${e}&Operate=${r.toUpperCase()}&RequestURI=${a}&Date=${s}${i?`¶ms=${i}`:""}`;return V0.default.createHmac("sha1",Buffer.from(String(t||""),"utf8")).update(o,"utf8").digest("hex").toUpperCase()}function KWe(t,e){return V0.default.publicEncrypt({key:t,padding:V0.default.constants.RSA_PKCS1_PADDING},Buffer.from(String(e||""),"utf8")).toString("hex").toUpperCase()}function Cr(t,e){let r=String(t||"").match(new RegExp(`<${e}>([\\s\\S]*?)`,"i"));return r?r[1].trim():""}function VWe(t){let e=Number(t||0),r=1024*1024*10;return e>r*2*999?Math.max(Math.ceil(e/1999/r),5)*r:e>r*999?r*2:r}function va(t){if(typeof t=="string")return t;if(t==null)return"";try{return JSON.stringify(t)}catch{return String(t)}}function _a(t){let e=va(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:Do(e);if(r&&typeof r=="object"&&!Array.isArray(r)){let i=r.res_code??r.ResCode??"",a=r.res_message??r.ResMessage??"";if(typeof i=="number"&&i!==0||typeof i=="string"&&i)return`res_code=${i}${a?` ${a}`:""}`.trim();let o=r.code||r.errorCode||"",c=r.message||r.msg||r.errorMsg||r.error||"";if(o&&o!=="SUCCESS"&&o!=="0")return`code=${o}${c?` ${c}`:""}`.trim();if(!o&&c)return String(c)}let n=Cr(e,"code"),s=Cr(e,"message")||Cr(e,"msg");return n&&n!=="SUCCESS"&&n!=="0"?`code=${n}${s?` ${s}`:""}`.trim():""}function Bcr(t){let e=va(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:Do(e);if(r&&typeof r=="object"&&!Array.isArray(r)&&(r.sessionKey||r.sessionSecret||r.accessToken))return r;if(!e||e[0]!=="<")return null;let n=["loginName","sessionKey","sessionSecret","familySessionKey","familySessionSecret","accessToken","refreshToken","isSaveName","keepAlive","getFileDiffSpan","getUserInfoSpan"],s={};return n.forEach(i=>{let a=Cr(e,i);a&&(s[i]=a)}),s.sessionKey&&s.sessionSecret?s:null}function YWe(t){let e=va(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:Do(e);return r&&typeof r=="object"&&!Array.isArray(r)&&r.data&&typeof r.data=="object"?r.data:null}function JWe(t){let e=va(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:Do(e);return r&&typeof r=="object"&&!Array.isArray(r)&&r.file&&typeof r.file=="object"?r.file:null}function XWe(t){let e=va(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:Do(e),n=String(r?.fileDownloadUrl||"");return n||Cr(e,"fileDownloadUrl")}function Lcr(t){if(t&&typeof t=="object"&&!Array.isArray(t))return t;let e=va(t).trim();if(!e)return null;try{return LV.parse(e)}catch{return Do(e)}}function ZWe(t,e){let r=String(t||""),n=new RegExp(`<${e}>([\\s\\S]*?)`,"ig"),s=[],i;for(;(i=n.exec(r))!==null;){let a=i[1],o=Cr(a,"icon"),c={id:Cr(a,"id"),parentId:Cr(a,"parentId"),name:Pc(Cr(a,"name")),size:Number(Cr(a,"size")||0),md5:Cr(a,"md5"),fileCata:Cr(a,"fileCata"),mediaType:Cr(a,"mediaType"),createDate:Cr(a,"createDate"),lastOpTime:Cr(a,"lastOpTime"),icon:o?{smallUrl:Pc(Cr(o,"smallUrl")),largeUrl:Pc(Cr(o,"largeUrl")),max600:Pc(Cr(o,"max600")),mediumUrl:Pc(Cr(o,"mediumUrl"))}:void 0};Object.keys(c).forEach(u=>{(c[u]===""||c[u]===void 0)&&delete c[u]}),(c.id!==void 0||c.name)&&s.push(c)}return s}function Mcr(t){let e=va(t).trim(),r=Lcr(t)||{},n=r?.fileListAO||r?.data?.fileListAO||{},s=Array.isArray(n?.folderList)?n.folderList:[],i=Array.isArray(n?.fileList)?n.fileList:[];if(s.length===0&&i.length===0&&e.startsWith("<")){let a=Cr(e,"fileList")||e;s=ZWe(a,"folder"),i=ZWe(a,"file")}return{count:Number(n?.count||Cr(e,"count")||s.length+i.length||0),folderList:s,fileList:i,data:r}}function e8e(t){let e=va(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:Do(e),n=String(r?.taskId||r?.taskID||"");return n||Cr(e,"taskId")||Cr(e,"taskID")}function Wcr(t){let e=va(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:Do(e),n=r?.taskStatus??r?.TaskStatus??"";if(n!==""&&n!==void 0&&n!==null)return Number(n);let s=Cr(e,"taskStatus")||Cr(e,"TaskStatus");return s?Number(s):0}function $cr(t){let e=va(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:Do(e),n=i=>Array.isArray(i)?i.filter(Boolean):i&&typeof i=="object"?[i]:[],s=n(r?.familyInfoResp);if(s.length===0&&(s=n(r?.data?.familyInfoResp)),s.length===0&&e.startsWith("<")&&(s=(String(e).match(/([\s\S]*?)<\/familyInfoResp>/ig)||[]).map(a=>({familyId:Cr(a,"familyId"),remarkName:Cr(a,"remarkName"),useFlag:Cr(a,"useFlag"),userRole:Cr(a,"userRole")})).filter(a=>String(a?.familyId||"")),s.length===0)){let a=Cr(e,"familyId");a&&(s=[{familyId:a,remarkName:Cr(e,"remarkName"),useFlag:Cr(e,"useFlag"),userRole:Cr(e,"userRole")}])}return s.map(i=>({familyId:String(i?.familyId||i?.familyID||""),remarkName:String(i?.remarkName||""),useFlag:Number(i?.useFlag||0),userRole:Number(i?.userRole||0)})).filter(i=>i.familyId)}function i8e(t){let e=String(t||"").trim().toLowerCase(),r=e.lastIndexOf(".");return r>=0?e.slice(r+1):""}function Ucr(t){return Icr.has(i8e(t))}function Do(t){let e=typeof t=="string"?t.trim():"";if(!e||!/^[\[{]/.test(e))return null;try{return JSON.parse(e)}catch{return null}}function Pc(t){return String(t??"").replace(/&/gi,"&").replace(/</gi,"<").replace(/>/gi,">").replace(/"/gi,'"').replace(/'/gi,"'")}function $l(t){let e=Pc(t).trim();return e?/^\/\//.test(e)?`http:${e}`:/^(https?:\/\/)/i.test(e)?e:"":""}function Fcr(t){return Pc(t).replace(/([?&](?:sig|sk|token|expired)=)[^&<\s]+/ig,"$1***").replace(/(SSON=)[^;]+/ig,"$1***").replace(/(OPENINFO=)[^;]+/ig,"$1***").replace(/(JSESSIONID=)[^;]+/ig,"$1***").replace(/(COOKIE_LOGIN_USER=)[^;]+/ig,"$1***")}function Wt(t,e=220){let r=Fcr(String(t??"")).replace(/\s+/g," ").trim();return r.length>e?`${r.slice(0,e)}...`:r}function Lb(t){if(!t)return"none";let e=String(t).split(";").map(r=>r.split("=")[0].trim()).filter(Boolean);return`${e.slice(0,5).join(",")}${e.length>5?`,+${e.length-5}`:""}`}function Ea(t){try{let e=$l(t);return e?new URL(e).host:""}catch{return""}}function qcr(t){try{let e=$l(t);return e?i8e(new URL(e).pathname):""}catch{return""}}function t8e(t){return Ccr.has(qcr(t))}function jcr(t){let r=String(t||"").match(/\/(\d+)$/);if(!r)return 0;let n=Number(r[1]);return Number.isFinite(n)?n:0}function Qcr(t){let e=String(t||"").replace(/\s+/g,"").trim();if(!e||e.length<24||e.length%4!==0||/[^A-Za-z0-9+/=]/.test(e))return null;try{let r=Buffer.from(e,"base64").toString("utf8").trim(),n=Do(r);return!n||typeof n!="object"||Array.isArray(n)||!n.md5&&!n.sliceMd5&&!n.create_time?null:{raw:r,data:n}}catch{return null}}function DV(t){return!t||typeof t!="object"?{}:{name:t.name||"",size:t.size||0,md5:t.md5||"",sliceMd5:t.sliceMd5||"",create_time:t.create_time||""}}function r8e(t){let e=String(t??"");try{return decodeURIComponent(e.replace(/\+/g,"%20"))}catch{return e}}function Hcr(t){let e=String(t??"");try{return decodeURIComponent(e)}catch{return e}}function Gcr(t,e=""){let r=String(t||"").trim(),s=Hcr(r)||r,i={shareCode:"",accessCode:String(e||"").trim()},a=s.match(/https?:\/\/cloud\.189\.cn\/web\/share\?code=([^&#\s\uFF08(]+)/i),o=s.match(/https?:\/\/cloud\.189\.cn\/t\/([^?&#\s\uFF08(]+)/i);if(a?.[1]?i.shareCode=a[1]:o?.[1]?i.shareCode=o[1]:/^https?:\/\//i.test(s)||(i.shareCode=s.split(/[\s\uFF08(]/)[0]),!i.accessCode){let c=s.match(/(?:è®¿é—®ç |æå–ç |å¯†ç )\s*[::]\s*([a-zA-Z0-9]+)/);i.accessCode=c?.[1]||""}return i}function a8e(t){let e=String(t||"").trim();if(!e)return null;let r=Do(e);if(r&&typeof r=="object"&&!Array.isArray(r)){let s={};return Object.keys(r).forEach(i=>{let a=r[i];if(a==null)return;let o=String(i).trim(),c=String(a).trim();o&&c&&(s[o]=c)}),Object.keys(s).length>0?s:null}let n={};return e.split(/[&;]/).forEach(s=>{let[i,...a]=s.split("=");if(!i||a.length===0)return;let o=r8e(i.trim()),c=r8e(a.join("=").trim());o&&c&&(n[o]=c)}),Object.keys(n).length>0?n:null}function zcr(t,e){let r=$l(e);r&&!t.includes(r)&&t.push(r)}function lC(t,e=[],r=0){if(!t||r>4)return e;if(typeof t=="string")return zcr(e,t),e;if(Array.isArray(t))return t.forEach(i=>lC(i,e,r+1)),e;if(typeof t!="object")return e;let n=["downloadUrl","downloadURL","fileDownloadUrl","fileDownloadURL","contentUrl","contentURL","redirectUrl","redirectURL","sourceUrl","sourceURL","location","url"];for(let i of n)i in t&&lC(t[i],e,r+1);if(e.length>0)return e;let s=["data","result","normal","file","download","downloadInfo"];for(let i of s)i in t&&lC(t[i],e,r+1);return e}function n8e(t){let e=String(t||"").trim();if(!e)return null;let r=e.indexOf("|"),n=r>=0?e.slice(0,r).trim():e,s=r>=0?e.slice(r+1).trim():"",i=$l(n);if(i){let c=a8e(s);return c?{url:i,header:c}:{url:i}}let a=Pc(e).match(/((?:https?:)?\/\/[^<\s]+)/i);if(!a)return null;let o=$l(a[1]);return o?{url:o}:null}function Bb(t){let e=String(t||"").replace(/^\uFEFF/,"").trim();if(!e||/^{BV=t.server.db,Mb=await BV.getObjectDefault("/tyi",{}),Mb?.cloud_account,Mb?.cloud_password,Lb(Mb?.cloud_cookie)},WV=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.index=0,this.shareFileCache=new Map,this.lastShareTextResolveReason="",this.pcLoginState=null,this.pcRestoreFolderId="",this.pcFamilyRestoreFolderId="",this.pcFamilyId=""}setShareTextResolveReason(e=""){this.lastShareTextResolveReason=String(e||"")}getShareTextResolveReason(){return this.lastShareTextResolveReason||""}getShareFileCacheKey(e,r){return`${r||""}:${e||""}`}cacheShareFileItem(e,r,n,s={}){!e||!r||!n||typeof n!="object"||this.shareFileCache.set(this.getShareFileCacheKey(e,r),{...n,...s})}getCachedShareFileItem(e,r){return this.shareFileCache.get(this.getShareFileCacheKey(e,r))||null}async init(){this.account&&console.log("\u5929\u7FFC\u8D26\u53F7\u83B7\u53D6\u6210\u529F\uFF1A"+this.account),this.password&&console.log("\u5929\u7FFC\u5BC6\u7801\u83B7\u53D6\u6210\u529F\uFF1A"+this.password),this.cookie?console.log("\u5929\u7FFCcookie\u83B7\u53D6\u6210\u529F"+this.cookie):z0.set("cloud_cookie",await this.login(this.account,this.password))}get account(){return z0.get("cloud_account")}get password(){return z0.get("cloud_password")}get cookie(){return z0.get("cloud_cookie")}async login(e,r){try{let n=await he.post("https://open.e.189.cn/api/logbox/config/encryptConf.do?appId=cloud"),s=n.data.data.pubKey;n=await he.get("https://cloud.189.cn/api/portal/loginUrl.action?redirectURL=https://cloud.189.cn/web/redirect.html?returnURL=/main.action");let i=n.request.path.match(/reqId=(\w+)/)[1],o={"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:n.request.path.match(/lt=(\w+)/)[1],Reqid:i},c={version:"2.0",appKey:"cloud"};n=await he.post("https://open.e.189.cn/api/logbox/oauth2/appConf.do",gg.default.stringify(c),{headers:o});let u=n.data.data.returnUrl,l=n.data.data.paramId,d=`-----BEGIN PUBLIC KEY----- ${s} ------END PUBLIC KEY-----`,f=new BV;f.setPublicKey(d);let p=Buffer.from(f.encrypt(e),"base64").toString("hex"),m=Buffer.from(f.encrypt(r),"base64").toString("hex");if(c={appKey:"cloud",version:"2.0",accountType:"01",mailSuffix:"@189.cn",validateCode:"",returnUrl:u,paramId:l,captchaToken:"",dynamicCheck:"FALSE",clientType:"1",cb_SaveName:"0",isOauth2:!1,userName:`{NRP}${p}`,password:`{NRP}${m}`},n=await Ae.post("https://open.e.189.cn/api/logbox/oauth2/loginSubmit.do",Gh.default.stringify(c),{headers:o,validateStatus:null}),n.data.toUrl){let h=n.headers["set-cookie"].map(A=>A.split(";")[0]).join(";");n=await Ae.get(n.data.toUrl,{headers:{...this.headers,Cookie:h},maxRedirects:0,validateStatus:null}),h+="; "+n.headers["set-cookie"].map(A=>A.split(";")[0]).join(";"),w0.set("cloud_cookie",h)}else console.error("Error during login:",n.data)}catch(n){console.error("Error during login:",n)}}async getShareID(e,r,n){let s=n||this,i=Rnr(e,r);s.shareCode=i.shareCode,s.accessCode=i.accessCode}async getShareData(e,r){let n={},s={},i=await this.getShareInfo(e,r,n);if(i){let c=await this.getShareList(i,"",n);c&&Array.isArray(c)?await Promise.all(c.map(async u=>{let l=u.path||u.name;l in s||(s[l]=[]);let d=await this.getShareFile(u.id,n);d&&d.length>0&&s[l].push(...d)})):s.root=await this.getShareFile(i,n)}for(let c in s)s[c].length===0&&delete s[c];i&&Object.keys(s).length===0&&(s.root=await this.getShareFile(i,n),s.root&&Array.isArray(s.root)&&(s.root=s.root.filter(c=>c&&Object.keys(c).length>0))),Object.keys(s).forEach(c=>{s[c]=s[c].map(u=>({vod_id:[u.fileId,u.shareId,u.fileKind||VMe,u.shareMode||"",u.accessCode||""].join("*"),vod_name:u.name,vod_size:u.size}))});let a=Object.values(s).reduce((c,u)=>c+(Array.isArray(u)?u.length:0),0),o=Object.values(s).reduce((c,u)=>c+(Array.isArray(u)?u.filter(l=>String(l?.vod_id||"").includes(`*${sL}*`)).length:0),0);return n.shareId,n.shareMode,Object.keys(s).length,s}async getShareInfo(e,r,n){let s=n||this,i=String(e||"");if(i.startsWith("http")?await this.getShareID(i,r,n):s.shareCode=i,!s.shareCode)return null;try{if(s.accessCode){let a=await Ae.get(`${this.api}/open/share/checkAccessCode.action?shareCode=${s.shareCode}&accessCode=${s.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"}});a.status===200&&(s.shareId=a.data.shareId);let o=await Ae.get(`${this.api}/open/share/getShareInfoByCodeV2.action?key=noCache&shareCode=${s.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"}}),c=o.data.fileId;return s.shareMode=o.data.shareMode,s.isFolder=o.data.isFolder,c}else{let a=await Ae.get(`${this.api}/open/share/getShareInfoByCodeV2.action?key=noCache&shareCode=${s.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"}}),o=a.data.fileId;return s.shareId=a.data.shareId,s.shareMode=a.data.shareMode,s.isFolder=a.data.isFolder,o}}catch(a){let o=a?.response?.status,c=a?.response?.data?.res_code||a?.code||"UnknownCode",u=a?.response?.data?.res_message||a?.message||"unknown error";return console.warn(o===400&&(c==="ShareAuditNotPass"||c==="ShareInfoNotFound")?`[Cloud ShareInfo] ${s.shareCode} unavailable: ${c}`:`[Cloud ShareInfo] ${s.shareCode} failed: ${o||"N/A"} ${c} ${u}`),null}}async getShareList(e,r="",n){let s=n||this;if(!e)return null;try{let i=[],a={};a["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",a.Accept="application/json;charset=UTF-8",a["Accept-Encoding"]="gzip, deflate, br, zstd";let o={method:"GET",headers:a},c=await GMe(`${this.api}/open/share/listShareDir.action?key=noCache&pageNum=1&pageSize=9999&fileId=${e}&shareDirFileId=${e}&isFolder=${s.isFolder}&shareId=${s.shareId}&shareMode=${s.shareMode}&iconOption=5&orderBy=lastOpTime&descending=true&accessCode=${s.accessCode}&noCache=${Math.random()}`,o),d=LV.parse(await c.text())?.fileListAO?.folderList;if(!d)return null;if(d&&d.length>0){let f=d.map(m=>({name:m.name,id:m.id,type:"folder",path:onr(r,m.name)}));i.push(...f);let p=await Promise.all(f.map(async m=>this.getShareList(m.id,m.path,n)));return p=p.filter(m=>m!=null),[...i,...p.flat()]}}catch(i){return console.warn(`[Cloud ShareList] ${e} failed: ${i?.message||i}`),null}}async getShareFile(e,r){let n=r||this;if(!e)return null;try{let s={method:"GET",headers:Ec},i=await GMe(`${this.api}/open/share/listShareDir.action?key=noCache&pageNum=1&pageSize=9999&fileId=${e}&shareDirFileId=${e}&isFolder=${n.isFolder}&shareId=${n.shareId}&shareMode=${n.shareMode}&iconOption=5&orderBy=lastOpTime&descending=true&accessCode=${n.accessCode}&noCache=${Math.random()}`,s),a=LV.parse(await i.text()),o=[],c=a?.fileListAO,u=c?.fileList;if(!Array.isArray(u)||u.length===0)return null;let l=u.map(p=>p.name),d=u.map(p=>p.id),f=Number(c?.fileListSize??u.length);if((!Number.isFinite(f)||f<0)&&(f=u.length),f=Math.min(f,u.length),f>=0)for(let p=0;p0){let p=o.filter(m=>m.fileKind===sL).length;n.shareId,n.shareMode,o.length,o.length-p,o.slice(0,3).map(m=>m.name)}return o}catch(s){return console.warn(`[Cloud ShareFile] ${e} failed: ${s?.message||s}`),null}}async fetchShareTextFileFromUrl(e,r={}){let n=Cl(e);if(!n)return"";Wt(n,260),eb(r?.Cookie||r?.cookie);try{let s=await Ae.get(n,{headers:{...OV,...r&&typeof r=="object"?r:{}},responseType:"text",transformResponse:[a=>a],maxRedirects:5,validateStatus:()=>!0}),i=typeof s.data=="string"?s.data:"";return s.status<200||s.status>=300?(Wt(n,260),s.status,s.headers?.["content-type"],Wt(i),""):(Wt(n,260),s.status,s.headers?.["content-type"],i.length,Wt(i),i)}catch(s){return Wt(n,260),s?.message||String(s),""}}buildShareTextApiCandidates(e,r,n="",s=""){let i=a=>{let o=new URLSearchParams({shareId:String(r||""),fileId:String(e||""),key:"noCache",dt:"1",noCache:String(Math.random())});return n&&o.set("shareMode",String(n)),s&&o.set("accessCode",String(s)),`${this.api}${a}?${o.toString()}`};return[i("/portal/getShareFileUrl.action"),i("/portal/getFileDownloadUrl.action"),i("/open/share/getFileDownloadUrl.action"),i("/open/share/getShareFileDownloadUrl.action"),i("/open/file/getFileDownloadUrl.action")]}async tryResolveShareTextPlayableFromApi(e,r={}){let n=e;try{n=new URL(e).pathname}catch{}Wt(e,260),eb(r?.Cookie||r?.cookie);try{let s=await Ae.get(e,{headers:{...OV,...r&&typeof r=="object"?r:{}},responseType:"text",transformResponse:[l=>l],maxRedirects:0,validateStatus:()=>!0}),i=s.status===400||s.status===401||s.status===403;if(s.status>=300&&s.status<400&&s.headers?.location){s.status,Wt(s.headers.location,260);let l=await this.fetchShareTextFileFromUrl(s.headers.location,r),d=Zx(l);return d?.url,pa(d?.url),d?.header,{playable:d,authError:!1}}if(s.status<200||s.status>=300)return s.status,s.headers?.["content-type"],Wt(s.data),{playable:null,authError:i};let a=typeof s.data=="string"?s.data:"",o=String(s.headers?.["content-type"]||"");if(s.status,Wt(a),/json/i.test(o)){let l=vo(a),d=aC(l);d.length,d.slice(0,3).map(f=>Wt(f,260));for(let f of d){let p=await this.fetchShareTextFileFromUrl(f,r),m=Zx(p);if(m)return Wt(f,260),pa(m.url),m.header,{playable:m,authError:!1}}return{playable:null,authError:i}}let c=a.trim();if(/^[^\r\n]+$/.test(c)&&Cl(c)){Wt(c,260);let l=await this.fetchShareTextFileFromUrl(c,r),d=Zx(l);return d?.url,pa(d?.url),d?.header,{playable:d,authError:!1}}let u=Zx(a);return u?.url,pa(u?.url),u?.header,{playable:u,authError:!1}}catch(s){return s?.message||String(s),{playable:null,authError:!1}}}async probeShareTextCandidateUrl(e,r={}){let n=Cl(e);if(!n)return{type:"invalid"};Wt(n,260),pa(n),Object.keys(r||{}).join(",");try{let s=await Ae.get(n,{headers:{...OV,Range:"bytes=0-511",...r&&typeof r=="object"?r:{}},responseType:"arraybuffer",maxRedirects:5,timeout:15e3,validateStatus:()=>!0}),a=(Buffer.isBuffer(s.data)?s.data:Buffer.from(s.data||"")).toString("utf8").replace(/^\uFEFF/,""),o=Cl(s?.request?.res?.responseUrl||s?.config?.url||n)||n,c=String(s.headers?.["content-type"]||""),u=String(s.headers?.["content-range"]||""),l=Number(s.headers?.["content-length"]||0),d=Inr(u)||(Number.isFinite(l)?l:0);Wt(n,260),Wt(o,260),s.status,Wt(a);let f=Tnr(a);if(f)return Wt(n,260),Wt(o,260),DV(f.data),Wt(f.raw),{type:"cas_metadata",metadata:f.data};let p=Zx(a);return p?.url&&p.url!==n?(Wt(n,260),Wt(p.url,260),pa(p.url),p.header,{type:"nested_playable",playable:p}):/^video\//i.test(c)||/^audio\//i.test(c)||/application\/(?:vnd\.apple\.mpegurl|x-mpegurl|dash\+xml)/i.test(c)||i6e(o)||(s.status===200||s.status===206)&&d>1024*1024?(Wt(n,260),Wt(o,260),pa(o),{type:"playable"}):(Wt(n,260),Wt(o,260),s.status,{type:"unknown"})}catch(s){return Wt(n,260),s?.message||String(s),{type:"error"}}}async confirmShareTextPlayableCandidate(e,r={},n={},s=0){if(!e?.url)return null;let i=e.header&&typeof e.header=="object"?e.header:null,a={...r&&typeof r=="object"?r:{},...i||{}},o={...n,depth:s,url:Wt(e.url,260),host:pa(e.url),headerKeys:Object.keys(i||{}).join(",")||"-"};if(i6e(e.url))return{...o},e;if(s>=2)return null;let c=await this.probeShareTextCandidateUrl(e.url,a);if(c.type==="playable")return{...o},e;if(c.type==="nested_playable"&&c.playable?.url)return{...o,nestedUrl:Wt(c.playable.url,260),nestedHost:pa(c.playable.url)},await this.confirmShareTextPlayableCandidate(c.playable,r,n,s+1);if(c.type==="cas_metadata"){try{let d=await this.getCasPlayableByRestoringToCloudDrive(c.metadata);if(d?.url)return{...o,restoredHost:pa(d.url)},d}catch(d){let p=`CAS\u79D2\u4F20\u6062\u590D\u5931\u8D25${c.metadata?.name?` (${c.metadata.name})`:""}: ${d?.message||d}`;return this.setShareTextResolveReason(p),{...o,metadata:DV(c.metadata)},null}let l=`\u5F53\u524D\u5206\u4EAB\u8FD4\u56DE\u7684\u662FCAS\u79D2\u4F20\u5143\u6570\u636E\uFF0C\u4E0D\u662F\u771F\u5B9E\u89C6\u9891\u5730\u5740${c.metadata?.name?` (${c.metadata.name})`:""}`;return this.setShareTextResolveReason(l),{...o,metadata:DV(c.metadata)},null}return{...o,probeType:c.type},null}async initCloudPcLoginParam(){let e=this.cookie||"",r=Ae.create({headers:{"User-Agent":Ec["User-Agent"],"Accept-Encoding":Ec["Accept-Encoding"],Referer:sC,...e?{Cookie:e}:{}},maxRedirects:5,validateStatus:()=>!0}),n=await R0({method:"GET",url:`${sC}/api/portal/unifyLoginForPC.action`,params:{appId:tL,clientType:KMe,returnURL:YMe,timeStamp:Date.now()},headers:r.defaults.headers,maxRedirects:5,validateStatus:()=>!0,responseType:"text",transformResponse:[d=>d]},"pc-unify-login"),s=typeof n.data=="string"?n.data:"",i=d=>{let f=s.match(d);return f?f[1]:""},a={cookie:PV(e,n.headers?.["set-cookie"]),captchaToken:i(/'captchaToken' value='(.+?)'/),lt:i(/lt = "(.+?)"/),paramId:i(/paramId = "(.+?)"/),reqId:i(/reqId = "(.+?)"/)};if(!a.lt||!a.paramId||!a.reqId)throw new Error("189PC\u767B\u5F55\u53C2\u6570\u521D\u59CB\u5316\u5931\u8D25");let o=await R0({method:"POST",url:`${iC}/api/logbox/config/encryptConf.do`,data:Gh.default.stringify({appId:tL}),headers:{"Content-Type":"application/x-www-form-urlencoded","User-Agent":Ec["User-Agent"],Referer:sC},validateStatus:()=>!0},"pc-encrypt-conf"),c=o?.data?.data?.pubKey||"",u=o?.data?.data?.pre||"{RSA}";if(!c)throw new Error("189PC\u83B7\u53D6RSA\u516C\u94A5\u5931\u8D25");let l=`-----BEGIN PUBLIC KEY----- +-----END PUBLIC KEY-----`,f=new MV;f.setPublicKey(d);let p=Buffer.from(f.encrypt(e),"base64").toString("hex"),m=Buffer.from(f.encrypt(r),"base64").toString("hex");if(c={appKey:"cloud",version:"2.0",accountType:"01",mailSuffix:"@189.cn",validateCode:"",returnUrl:u,paramId:l,captchaToken:"",dynamicCheck:"FALSE",clientType:"1",cb_SaveName:"0",isOauth2:!1,userName:`{NRP}${p}`,password:`{NRP}${m}`},n=await he.post("https://open.e.189.cn/api/logbox/oauth2/loginSubmit.do",gg.default.stringify(c),{headers:o,validateStatus:null}),n.data.toUrl){let h=n.headers["set-cookie"].map(y=>y.split(";")[0]).join(";");n=await he.get(n.data.toUrl,{headers:{...this.headers,Cookie:h},maxRedirects:0,validateStatus:null}),h+="; "+n.headers["set-cookie"].map(y=>y.split(";")[0]).join(";"),z0.set("cloud_cookie",h)}else console.error("Error during login:",n.data)}catch(n){console.error("Error during login:",n)}}async getShareID(e,r,n){let s=n||this,i=Gcr(e,r);s.shareCode=i.shareCode,s.accessCode=i.accessCode}async getShareData(e,r){let n={},s={},i=await this.getShareInfo(e,r,n);if(i){let c=await this.getShareList(i,"",n);c&&Array.isArray(c)?await Promise.all(c.map(async u=>{let l=u.path||u.name;l in s||(s[l]=[]);let d=await this.getShareFile(u.id,n);d&&d.length>0&&s[l].push(...d)})):s.root=await this.getShareFile(i,n)}for(let c in s)s[c].length===0&&delete s[c];i&&Object.keys(s).length===0&&(s.root=await this.getShareFile(i,n),s.root&&Array.isArray(s.root)&&(s.root=s.root.filter(c=>c&&Object.keys(c).length>0))),Object.keys(s).forEach(c=>{s[c]=s[c].map(u=>({vod_id:[u.fileId,u.shareId,u.fileKind||jWe,u.shareMode||"",u.accessCode||""].join("*"),vod_name:u.name,vod_size:u.size}))});let a=Object.values(s).reduce((c,u)=>c+(Array.isArray(u)?u.length:0),0),o=Object.values(s).reduce((c,u)=>c+(Array.isArray(u)?u.filter(l=>String(l?.vod_id||"").includes(`*${RB}*`)).length:0),0);return n.shareId,n.shareMode,Object.keys(s).length,s}async getShareInfo(e,r,n){let s=n||this,i=String(e||"");if(i.startsWith("http")?await this.getShareID(i,r,n):s.shareCode=i,!s.shareCode)return null;try{if(s.accessCode){let a=await he.get(`${this.api}/open/share/checkAccessCode.action?shareCode=${s.shareCode}&accessCode=${s.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"}});a.status===200&&(s.shareId=a.data.shareId);let o=await he.get(`${this.api}/open/share/getShareInfoByCodeV2.action?key=noCache&shareCode=${s.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"}}),c=o.data.fileId;return s.shareMode=o.data.shareMode,s.isFolder=o.data.isFolder,c}else{let a=await he.get(`${this.api}/open/share/getShareInfoByCodeV2.action?key=noCache&shareCode=${s.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"}}),o=a.data.fileId;return s.shareId=a.data.shareId,s.shareMode=a.data.shareMode,s.isFolder=a.data.isFolder,o}}catch(a){let o=a?.response?.status,c=a?.response?.data?.res_code||a?.code||"UnknownCode",u=a?.response?.data?.res_message||a?.message||"unknown error";return console.warn(o===400&&(c==="ShareAuditNotPass"||c==="ShareInfoNotFound")?`[Cloud ShareInfo] ${s.shareCode} unavailable: ${c}`:`[Cloud ShareInfo] ${s.shareCode} failed: ${o||"N/A"} ${c} ${u}`),null}}async getShareList(e,r="",n){let s=n||this;if(!e)return null;try{let i=[],a={};a["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",a.Accept="application/json;charset=UTF-8",a["Accept-Encoding"]="gzip, deflate, br, zstd";let o={method:"GET",headers:a},c=await qWe(`${this.api}/open/share/listShareDir.action?key=noCache&pageNum=1&pageSize=9999&fileId=${e}&shareDirFileId=${e}&isFolder=${s.isFolder}&shareId=${s.shareId}&shareMode=${s.shareMode}&iconOption=5&orderBy=lastOpTime&descending=true&accessCode=${s.accessCode}&noCache=${Math.random()}`,o),d=LV.parse(await c.text())?.fileListAO?.folderList;if(!d)return null;if(d&&d.length>0){let f=d.map(m=>({name:m.name,id:m.id,type:"folder",path:Scr(r,m.name)}));i.push(...f);let p=await Promise.all(f.map(async m=>this.getShareList(m.id,m.path,n)));return p=p.filter(m=>m!=null),[...i,...p.flat()]}}catch(i){return console.warn(`[Cloud ShareList] ${e} failed: ${i?.message||i}`),null}}async getShareFile(e,r){let n=r||this;if(!e)return null;try{let s={method:"GET",headers:kc},i=await qWe(`${this.api}/open/share/listShareDir.action?key=noCache&pageNum=1&pageSize=9999&fileId=${e}&shareDirFileId=${e}&isFolder=${n.isFolder}&shareId=${n.shareId}&shareMode=${n.shareMode}&iconOption=5&orderBy=lastOpTime&descending=true&accessCode=${n.accessCode}&noCache=${Math.random()}`,s),a=LV.parse(await i.text()),o=[],c=a?.fileListAO,u=c?.fileList;if(!Array.isArray(u)||u.length===0)return null;let l=u.map(p=>p.name),d=u.map(p=>p.id),f=Number(c?.fileListSize??u.length);if((!Number.isFinite(f)||f<0)&&(f=u.length),f=Math.min(f,u.length),f>=0)for(let p=0;p0){let p=o.filter(m=>m.fileKind===RB).length;n.shareId,n.shareMode,o.length,o.length-p,o.slice(0,3).map(m=>m.name)}return o}catch(s){return console.warn(`[Cloud ShareFile] ${e} failed: ${s?.message||s}`),null}}async fetchShareTextFileFromUrl(e,r={}){let n=$l(e);if(!n)return"";Wt(n,260),Lb(r?.Cookie||r?.cookie);try{let s=await he.get(n,{headers:{...kV,...r&&typeof r=="object"?r:{}},responseType:"text",transformResponse:[a=>a],maxRedirects:5,validateStatus:()=>!0}),i=typeof s.data=="string"?s.data:"";return s.status<200||s.status>=300?(Wt(n,260),s.status,s.headers?.["content-type"],Wt(i),""):(Wt(n,260),s.status,s.headers?.["content-type"],i.length,Wt(i),i)}catch(s){return Wt(n,260),s?.message||String(s),""}}buildShareTextApiCandidates(e,r,n="",s=""){let i=a=>{let o=new URLSearchParams({shareId:String(r||""),fileId:String(e||""),key:"noCache",dt:"1",noCache:String(Math.random())});return n&&o.set("shareMode",String(n)),s&&o.set("accessCode",String(s)),`${this.api}${a}?${o.toString()}`};return[i("/portal/getShareFileUrl.action"),i("/portal/getFileDownloadUrl.action"),i("/open/share/getFileDownloadUrl.action"),i("/open/share/getShareFileDownloadUrl.action"),i("/open/file/getFileDownloadUrl.action")]}async tryResolveShareTextPlayableFromApi(e,r={}){let n=e;try{n=new URL(e).pathname}catch{}Wt(e,260),Lb(r?.Cookie||r?.cookie);try{let s=await he.get(e,{headers:{...kV,...r&&typeof r=="object"?r:{}},responseType:"text",transformResponse:[l=>l],maxRedirects:0,validateStatus:()=>!0}),i=s.status===400||s.status===401||s.status===403;if(s.status>=300&&s.status<400&&s.headers?.location){s.status,Wt(s.headers.location,260);let l=await this.fetchShareTextFileFromUrl(s.headers.location,r),d=Bb(l);return d?.url,Ea(d?.url),d?.header,{playable:d,authError:!1}}if(s.status<200||s.status>=300)return s.status,s.headers?.["content-type"],Wt(s.data),{playable:null,authError:i};let a=typeof s.data=="string"?s.data:"",o=String(s.headers?.["content-type"]||"");if(s.status,Wt(a),/json/i.test(o)){let l=Do(a),d=lC(l);d.length,d.slice(0,3).map(f=>Wt(f,260));for(let f of d){let p=await this.fetchShareTextFileFromUrl(f,r),m=Bb(p);if(m)return Wt(f,260),Ea(m.url),m.header,{playable:m,authError:!1}}return{playable:null,authError:i}}let c=a.trim();if(/^[^\r\n]+$/.test(c)&&$l(c)){Wt(c,260);let l=await this.fetchShareTextFileFromUrl(c,r),d=Bb(l);return d?.url,Ea(d?.url),d?.header,{playable:d,authError:!1}}let u=Bb(a);return u?.url,Ea(u?.url),u?.header,{playable:u,authError:!1}}catch(s){return s?.message||String(s),{playable:null,authError:!1}}}async probeShareTextCandidateUrl(e,r={}){let n=$l(e);if(!n)return{type:"invalid"};Wt(n,260),Ea(n),Object.keys(r||{}).join(",");try{let s=await he.get(n,{headers:{...kV,Range:"bytes=0-511",...r&&typeof r=="object"?r:{}},responseType:"arraybuffer",maxRedirects:5,timeout:15e3,validateStatus:()=>!0}),a=(Buffer.isBuffer(s.data)?s.data:Buffer.from(s.data||"")).toString("utf8").replace(/^\uFEFF/,""),o=$l(s?.request?.res?.responseUrl||s?.config?.url||n)||n,c=String(s.headers?.["content-type"]||""),u=String(s.headers?.["content-range"]||""),l=Number(s.headers?.["content-length"]||0),d=jcr(u)||(Number.isFinite(l)?l:0);Wt(n,260),Wt(o,260),s.status,Wt(a);let f=Qcr(a);if(f)return Wt(n,260),Wt(o,260),DV(f.data),Wt(f.raw),{type:"cas_metadata",metadata:f.data};let p=Bb(a);return p?.url&&p.url!==n?(Wt(n,260),Wt(p.url,260),Ea(p.url),p.header,{type:"nested_playable",playable:p}):/^video\//i.test(c)||/^audio\//i.test(c)||/application\/(?:vnd\.apple\.mpegurl|x-mpegurl|dash\+xml)/i.test(c)||t8e(o)||(s.status===200||s.status===206)&&d>1024*1024?(Wt(n,260),Wt(o,260),Ea(o),{type:"playable"}):(Wt(n,260),Wt(o,260),s.status,{type:"unknown"})}catch(s){return Wt(n,260),s?.message||String(s),{type:"error"}}}async confirmShareTextPlayableCandidate(e,r={},n={},s=0){if(!e?.url)return null;let i=e.header&&typeof e.header=="object"?e.header:null,a={...r&&typeof r=="object"?r:{},...i||{}},o={...n,depth:s,url:Wt(e.url,260),host:Ea(e.url),headerKeys:Object.keys(i||{}).join(",")||"-"};if(t8e(e.url))return{...o},e;if(s>=2)return null;let c=await this.probeShareTextCandidateUrl(e.url,a);if(c.type==="playable")return{...o},e;if(c.type==="nested_playable"&&c.playable?.url)return{...o,nestedUrl:Wt(c.playable.url,260),nestedHost:Ea(c.playable.url)},await this.confirmShareTextPlayableCandidate(c.playable,r,n,s+1);if(c.type==="cas_metadata"){try{let d=await this.getCasPlayableByRestoringToCloudDrive(c.metadata);if(d?.url)return{...o,restoredHost:Ea(d.url)},d}catch(d){let p=`CAS\u79D2\u4F20\u6062\u590D\u5931\u8D25${c.metadata?.name?` (${c.metadata.name})`:""}: ${d?.message||d}`;return this.setShareTextResolveReason(p),{...o,metadata:DV(c.metadata)},null}let l=`\u5F53\u524D\u5206\u4EAB\u8FD4\u56DE\u7684\u662FCAS\u79D2\u4F20\u5143\u6570\u636E\uFF0C\u4E0D\u662F\u771F\u5B9E\u89C6\u9891\u5730\u5740${c.metadata?.name?` (${c.metadata.name})`:""}`;return this.setShareTextResolveReason(l),{...o,metadata:DV(c.metadata)},null}return{...o,probeType:c.type},null}async initCloudPcLoginParam(){let e=this.cookie||"",r=he.create({headers:{"User-Agent":kc["User-Agent"],"Accept-Encoding":kc["Accept-Encoding"],Referer:cC,...e?{Cookie:e}:{}},maxRedirects:5,validateStatus:()=>!0}),n=await K0({method:"GET",url:`${cC}/api/portal/unifyLoginForPC.action`,params:{appId:CB,clientType:HWe,returnURL:GWe,timeStamp:Date.now()},headers:r.defaults.headers,maxRedirects:5,validateStatus:()=>!0,responseType:"text",transformResponse:[d=>d]},"pc-unify-login"),s=typeof n.data=="string"?n.data:"",i=d=>{let f=s.match(d);return f?f[1]:""},a={cookie:PV(e,n.headers?.["set-cookie"]),captchaToken:i(/'captchaToken' value='(.+?)'/),lt:i(/lt = "(.+?)"/),paramId:i(/paramId = "(.+?)"/),reqId:i(/reqId = "(.+?)"/)};if(!a.lt||!a.paramId||!a.reqId)throw new Error("189PC\u767B\u5F55\u53C2\u6570\u521D\u59CB\u5316\u5931\u8D25");let o=await K0({method:"POST",url:`${uC}/api/logbox/config/encryptConf.do`,data:gg.default.stringify({appId:CB}),headers:{"Content-Type":"application/x-www-form-urlencoded","User-Agent":kc["User-Agent"],Referer:cC},validateStatus:()=>!0},"pc-encrypt-conf"),c=o?.data?.data?.pubKey||"",u=o?.data?.data?.pre||"{RSA}";if(!c)throw new Error("189PC\u83B7\u53D6RSA\u516C\u94A5\u5931\u8D25");let l=`-----BEGIN PUBLIC KEY----- ${c} ------END PUBLIC KEY-----`;return a.rsaUsername=`${u}${XMe(l,this.account)}`,a.rsaPassword=`${u}${XMe(l,this.password)}`,a}async loginForCloudPc(e=!1){if(!e&&this.pcLoginState?.tokenInfo?.sessionKey&&this.pcLoginState?.tokenInfo?.sessionSecret)return this.pcLoginState;if(!this.account||!this.password)throw new Error("\u7F3A\u5C11\u5929\u7FFC\u8D26\u53F7\u6216\u5BC6\u7801\uFF0C\u65E0\u6CD5\u6267\u884CCAS\u79D2\u4F20\u6062\u590D");let r=await this.initCloudPcLoginParam(),n=await R0({method:"POST",url:`${iC}/api/logbox/oauth2/needcaptcha.do`,data:Gh.default.stringify({appKey:tL,accountType:zMe,userName:r.rsaUsername}),headers:{"Content-Type":"application/x-www-form-urlencoded","User-Agent":Ec["User-Agent"],Referer:iC+"/",REQID:r.reqId,...r.cookie?{Cookie:r.cookie}:{}},responseType:"text",transformResponse:[d=>d],validateStatus:()=>!0},"pc-needcaptcha"),s=String(n?.data||"").trim();if(n.status,Wt(s,80),s&&s!=="0")throw new Error("189PC\u767B\u5F55\u9700\u8981\u9A8C\u8BC1\u7801\uFF0C\u5F53\u524D\u6682\u4E0D\u652F\u6301\u81EA\u52A8\u5904\u7406");let i=await R0({method:"POST",url:`${iC}/api/logbox/oauth2/loginSubmit.do`,data:Gh.default.stringify({appKey:tL,accountType:zMe,userName:r.rsaUsername,password:r.rsaPassword,validateCode:"",captchaToken:r.captchaToken,returnUrl:YMe,dynamicCheck:"FALSE",clientType:KMe,cb_SaveName:"1",isOauth2:"false",state:"",paramId:r.paramId}),headers:{"Content-Type":"application/x-www-form-urlencoded","User-Agent":Ec["User-Agent"],Referer:iC+"/",REQID:r.reqId,lt:r.lt,...r.cookie?{Cookie:r.cookie}:{}},validateStatus:()=>!0},"pc-login-submit"),a=PV(r.cookie,i.headers?.["set-cookie"]),o=i?.data?.toUrl||"";if(!o)throw new Error(`189PC\u767B\u5F55\u5931\u8D25: ${i?.data?.msg||i?.status||"unknown"}`);let c=await R0({method:"POST",url:`${Qi}/getSessionForPC.action`,params:{...JMe(),redirectURL:o},headers:{"User-Agent":Ec["User-Agent"],Referer:sC,...a?{Cookie:a}:{}},validateStatus:()=>!0},"pc-get-session"),u=ynr(c?.data)||c?.data||{};if(!u?.sessionKey||!u?.sessionSecret)throw new Error(`189PC\u4F1A\u8BDD\u83B7\u53D6\u5931\u8D25: ${fa(c?.data)||c?.status||"unknown"}`);let l=PV(a,c.headers?.["set-cookie"]);return l&&w0.set("cloud_cookie",l),this.pcLoginState={cookie:l,tokenInfo:{loginName:u.loginName||"",sessionKey:u.sessionKey,sessionSecret:u.sessionSecret,familySessionKey:u.familySessionKey||"",familySessionSecret:u.familySessionSecret||"",accessToken:u.accessToken||"",refreshToken:u.refreshToken||""}},this.pcLoginState?.tokenInfo?.sessionKey,this.pcLoginState?.tokenInfo?.sessionSecret,this.pcLoginState?.tokenInfo?.familySessionKey,this.pcLoginState?.tokenInfo?.familySessionSecret,eb(l),this.pcLoginState}getCloudPcTokenInfo(e=!1){let r=this.pcLoginState?.tokenInfo||{};return e?{loginName:r.loginName||"",sessionKey:r.familySessionKey||"",sessionSecret:r.familySessionSecret||"",accessToken:r.accessToken||"",refreshToken:r.refreshToken||""}:{loginName:r.loginName||"",sessionKey:r.sessionKey||"",sessionSecret:r.sessionSecret||"",accessToken:r.accessToken||"",refreshToken:r.refreshToken||""}}async requestCloudPc(e,r="GET",n={}){let s=n&&typeof n=="object"?n:{},i=!!s.isFamily,a=await this.loginForCloudPc(!1),o=this.getCloudPcTokenInfo(i);if(!o.sessionKey||!o.sessionSecret){if(!s._retried)return await this.loginForCloudPc(!0),await this.requestCloudPc(e,r,{...s,_retried:!0});throw new Error(i?"189PC\u5BB6\u5EAD\u4E91\u4F1A\u8BDD\u83B7\u53D6\u5931\u8D25":"189PC\u4F1A\u8BDD\u83B7\u53D6\u5931\u8D25")}let c=JMe(),u=s.query&&typeof s.query=="object"?s.query:{},l=s.form&&typeof s.form=="object"?s.form:null,d=s.encryptedParams&&typeof s.encryptedParams=="object"?gnr(s.encryptedParams,o.sessionSecret):"",f=hnr(),p=Anr(o.sessionSecret,o.sessionKey,r,e,f,d),m=await R0({method:r,url:e,params:{...c,...u,...d?{params:d}:{}},...l?{data:Gh.default.stringify(l)}:{},headers:{"User-Agent":Ec["User-Agent"],Referer:sC,Date:f,SessionKey:o.sessionKey,"X-Request-ID":N0.default.randomUUID(),Signature:p,...l?{"Content-Type":"application/x-www-form-urlencoded"}:{},...a?.cookie?{Cookie:a.cookie}:{},...s.headers||{}},responseType:s.responseType||"json",transformResponse:s.transformResponse||void 0,timeout:s.timeout||15e3,validateStatus:()=>!0},`pc-request:${r}:${new URL(e).pathname}`),h=ma(m.data);return(m.status===401||m.status===403||h.includes("InvalidSessionKey")||h.includes("userSessionBO is null"))&&!s._retried?(await this.loginForCloudPc(!0),await this.requestCloudPc(e,r,{...s,_retried:!0})):m}async getCloudPcFamilyId(e=!1){if(!e&&this.pcFamilyId)return this.pcFamilyId;let r=await this.requestCloudPc(`${Qi}/family/manage/getFamilyList.action`,"GET",{isFamily:!0}),n=_nr(r?.data);if(n.length===0)throw new Error(`\u672A\u83B7\u53D6\u5230\u53EF\u7528\u7684189\u5BB6\u5EAD\u4E91 body=${Wt(ma(r?.data),260)}`);let s=String(this.pcLoginState?.tokenInfo?.loginName||""),i=n.find(o=>s&&o.remarkName&&s.includes(o.remarkName))||n.find(o=>Number(o?.useFlag||0)===1)||n[0],a=String(i?.familyId||"");if(!a)throw new Error(`189\u5BB6\u5EAD\u4E91ID\u89E3\u6790\u5931\u8D25 body=${Wt(JSON.stringify(n),260)}`);return this.pcFamilyId=a,n.length,n.map(o=>o.remarkName||"").filter(Boolean).slice(0,3),a}async ensureCloudPcRestoreFolderV2(e={}){let r=!!e?.isFamily,n=r?"pcFamilyRestoreFolderId":"pcRestoreFolderId";if(this[n])return this[n];let s=r?"":"-11",i=r?await this.getCloudPcFamilyId():"",a=nL,o=r?`${Qi}/family/file/listFiles.action`:`${Qi}/listFiles.action`,c=1;for(;c<=10;){let f=await this.requestCloudPc(o,"GET",{isFamily:r,query:{folderId:s,fileType:"0",mediaAttr:"0",iconOption:"5",pageNum:String(c),pageSize:"100",...r?{familyId:i,orderBy:"1",descending:"false"}:{recursive:"0",orderBy:"filename",descending:"false"}}}),m=(f?.data?.fileListAO?.folderList||[]).find(A=>String(A?.name||"")===a);if(m?.id)return this[n]=String(m.id),this[n];if(!Number(f?.data?.fileListAO?.count||0))break;c+=1}let u=r?`${Qi}/family/file/createFolder.action`:`${Qi}/createFolder.action`,l=await this.requestCloudPc(u,"POST",{isFamily:r,query:{folderName:a,...r?{familyId:i}:{relativePath:"",parentFolderId:s}}});if(l.status>=400||fa(l.data))throw new Error(`\u521B\u5EFACAS\u6062\u590D\u76EE\u5F55\u5931\u8D25: ${fa(l.data)||l.status}`);let d=String(l?.data?.id||Er(l?.data,"id")||"");if(d)return this[n]=d,this[n];throw new Error("\u65E0\u6CD5\u5B9A\u4F4DCAS\u6062\u590D\u76EE\u5F55")}async createCloudPcBatchTaskV2(e,r,n={}){let s=Array.isArray(r)?r.filter(Boolean):[];if(s.length===0)return"";let i=n&&typeof n=="object"?n:{},{isFamily:a=!1,...o}=i,c=await this.requestCloudPc(`${Qi}/batch/createBatchTask.action`,"POST",{isFamily:a,form:{type:e,taskInfos:JSON.stringify(s),...o}}),u=String(s6e(c?.data)||""),l=fa(c?.data);if(c.status>=400||l||!u)throw new Error(`${e}\u6279\u91CF\u4EFB\u52A1\u521B\u5EFA\u5931\u8D25: ${l||c.status||"unknown"} body=${Wt(ma(c?.data),260)}`);return u}async permanentlyDeleteCloudPcItemsV2(e,r={}){let n=Array.isArray(e)?e.filter(Boolean):[];if(n.length===0)return;let s=!!r?.isFamily,i=s?String(r?.familyId||await this.getCloudPcFamilyId()):"",a=s?{familyId:i,isFamily:!0}:{},o=await this.createCloudPcBatchTaskV2("DELETE",n,a);await this.waitCloudPcBatchTask("DELETE",o);let c=await this.createCloudPcBatchTaskV2("CLEAR_RECYCLE",n,a);await this.waitCloudPcBatchTask("CLEAR_RECYCLE",c)}async removeCloudPcRestoreFolderV2(e,r={}){if(!e)return;let s=!!r?.isFamily?"pcFamilyRestoreFolderId":"pcRestoreFolderId",i=[{fileId:String(e),fileName:nL,isFolder:1}];await this.permanentlyDeleteCloudPcItemsV2(i,r),this[s]=""}async resetCloudPcRestoreFolderV2(e={}){let r=!!e?.isFamily,n=await this.ensureCloudPcRestoreFolderV2({isFamily:r});return await this.removeCloudPcRestoreFolderV2(n,{isFamily:r}),await this.ensureCloudPcRestoreFolderV2({isFamily:r})}async restoreCasMetadataToCloudDriveV2(e,r={}){let n=!!r?.isFamily,s=String(e?.md5||"").trim().toUpperCase(),i=Number(e?.size||0),a=String(e?.name||"").trim(),o=String(e?.sliceMd5||"").trim().toUpperCase();if(!s||!i||!a)throw new Error("CAS\u5143\u6570\u636E\u7F3A\u5C11\u5FC5\u8981\u5B57\u6BB5\uFF0C\u65E0\u6CD5\u6267\u884C\u79D2\u4F20\u6062\u590D");let c=n?await this.getCloudPcFamilyId():"",u=await this.resetCloudPcRestoreFolderV2({isFamily:n}),l=ZMe(i),d=n?`${rL}/family`:`${rL}/person`,f=await this.requestCloudPc(`${d}/initMultiUpload`,"GET",{isFamily:n,encryptedParams:{parentFolderId:u,fileName:a,fileSize:String(i),fileMd5:s,sliceSize:String(l),...n&&c?{familyId:c}:{},...o?{sliceMd5:o}:{}}}),p=e6e(f?.data)||{},m=fa(f?.data);if(f.status>=400||m)throw new Error(`CAS\u79D2\u4F20\u6062\u590D\u521D\u59CB\u5316\u5931\u8D25: ${m||f.status}`);let h=String(p?.uploadFileId||p?.uploadFileID||"");if(Number(p?.fileDataExists)!==1||!h)throw new Error("CAS\u79D2\u4F20\u6062\u590D\u5931\u8D25\uFF0C189\u672A\u547D\u4E2D\u6587\u4EF6");let A=await this.requestCloudPc(`${d}/commitMultiUploadFile`,"GET",{isFamily:n,encryptedParams:{uploadFileId:h,isLog:"0",opertype:"3"}}),g=t6e(A?.data)||{},b=fa(A?.data);if(A.status>=400||b)throw new Error(`CAS\u79D2\u4F20\u63D0\u4EA4\u5931\u8D25: ${b||A.status}`);let y=String(g?.userFileId||g?.id||""),x=String(g?.fileName||a);if(!y)throw new Error("CAS\u79D2\u4F20\u63D0\u4EA4\u540E\u672A\u8FD4\u56DE\u6587\u4EF6ID");return{fileId:y,fileName:x,folderId:u,familyId:c,isFamily:n}}async getCloudPcFileDownloadUrlV2(e,r={}){let n=!!r?.isFamily,s=n?String(r?.familyId||await this.getCloudPcFamilyId()):"",i=n?`${Qi}/family/file/getFileDownloadUrl.action`:`${Qi}/getFileDownloadUrl.action`,a=await this.requestCloudPc(i,"GET",{isFamily:n,query:{fileId:String(e||""),...n?{familyId:s}:{dt:"3",flag:"1"}},responseType:"text",transformResponse:[d=>d]}),o=String(r6e(a?.data)||""),c=_c(o).replace(/^http:\/\//i,"https://"),u=fa(a?.data);if(a.status>=400||u)throw new Error(`\u6062\u590D\u6587\u4EF6\u4E0B\u8F7D\u5730\u5740\u83B7\u53D6\u5931\u8D25: ${u||a.status}`);if(!c)throw new Error("\u6062\u590D\u6587\u4EF6\u4E0B\u8F7D\u5730\u5740\u4E3A\u7A7A");let l=await R0({method:"GET",url:c,headers:{"User-Agent":Ec["User-Agent"]},maxRedirects:0,validateStatus:()=>!0},"pc-download-redirect");return l.status>=300&&l.status<400&&l.headers?.location?_c(String(l.headers.location||"")):c}async listOwnFiles(e="-11",r=1,n=100){let s=Math.max(Number(r)||1,1),i=Math.min(Math.max(Number(n)||100,1),200),a=e==null||e===""?"-11":String(e),o=await this.requestCloudPc(`${Qi}/listFiles.action`,"GET",{query:{folderId:a,fileType:"0",mediaAttr:"0",iconOption:"5",pageNum:String(s),pageSize:String(i),recursive:"0",orderBy:"filename",descending:"false"},responseType:"text",transformResponse:[u=>u]}),c=fa(o?.data);if(o.status>=400||c)throw new Error(`\u5929\u7FFC\u76EE\u5F55\u83B7\u53D6\u5931\u8D25: ${c||o.status}`);return bnr(o?.data)}async getOwnDownload(e){return{url:await this.getCloudPcFileDownloadUrlV2(e,{isFamily:!1}),data:{fileId:String(e||""),source:"189CloudPC"}}}async ensureCloudPcRestoreFolder(){if(this.pcRestoreFolderId)return this.pcRestoreFolderId;let e="-11",r=nL,n=1;for(;n<=10;){let u=await this.requestCloudPc(`${Qi}/listFiles.action`,"GET",{query:{folderId:e,fileType:"0",mediaAttr:"0",iconOption:"5",pageNum:String(n),pageSize:"100",recursive:"0",orderBy:"filename",descending:"false"}}),d=(u?.data?.fileListAO?.folderList||[]).find(p=>String(p?.name||"")===r);if(d?.id)return this.pcRestoreFolderId=String(d.id),this.pcRestoreFolderId;if(!Number(u?.data?.fileListAO?.count||0))break;n+=1}let s=await this.requestCloudPc(`${Qi}/createFolder.action`,"POST",{query:{folderName:r,relativePath:"",parentFolderId:e}});if(s.status,Wt(JSON.stringify(s.data||{}),220),s.status>=400||fa(s.data))throw new Error(`\u521B\u5EFACAS\u6062\u590D\u76EE\u5F55\u5931\u8D25: ${fa(s.data)||s.status}`);let i=String(s?.data?.id||Er(s?.data,"id")||"");if(i)return this.pcRestoreFolderId=i,this.pcRestoreFolderId;let c=((await this.requestCloudPc(`${Qi}/listFiles.action`,"GET",{query:{folderId:e,fileType:"0",mediaAttr:"0",iconOption:"5",pageNum:"1",pageSize:"100",recursive:"0",orderBy:"filename",descending:"false"}}))?.data?.fileListAO?.folderList||[]).find(u=>String(u?.name||"")===r);if(!c?.id)throw new Error("\u65E0\u6CD5\u5B9A\u4F4DCAS\u6062\u590D\u76EE\u5F55");return this.pcRestoreFolderId=String(c.id),this.pcRestoreFolderId}async createCloudPcBatchTask(e,r,n={}){let s=Array.isArray(r)?r.filter(Boolean):[];if(s.length===0)return"";let i=await this.requestCloudPc(`${Qi}/batch/createBatchTask.action`,"POST",{form:{type:e,taskInfos:JSON.stringify(s),...n||{}}}),a=String(s6e(i?.data)||""),o=fa(i?.data);if(i.status>=400||o||!a)throw new Error(`${e}\u6279\u91CF\u4EFB\u52A1\u521B\u5EFA\u5931\u8D25: ${o||i.status||"unknown"} body=${Wt(ma(i?.data),260)}`);return a}async permanentlyDeleteCloudPcItems(e,r={}){let n=Array.isArray(e)?e.filter(Boolean):[];if(n.length===0)return;let s=await this.createCloudPcBatchTask("DELETE",n,r);await this.waitCloudPcBatchTask("DELETE",s);let i=await this.createCloudPcBatchTask("CLEAR_RECYCLE",n,r);await this.waitCloudPcBatchTask("CLEAR_RECYCLE",i)}async waitCloudPcBatchTask(e,r,n=300){let s=Date.now();for(;Date.now()-s<15e3;){let i=await this.requestCloudPc(`${Qi}/batch/checkBatchTask.action`,"POST",{form:{type:e,taskId:r}}),a=i?.data||{},o=fa(a);if(i.status>=400||o)throw new Error(`${e}\u6279\u91CF\u4EFB\u52A1\u72B6\u6001\u67E5\u8BE2\u5931\u8D25: ${o||i.status||"unknown"} body=${Wt(ma(a),260)}`);let c=Enr(a);if(c===4)return;if(c===2)throw new Error(`${e}\u6279\u91CF\u4EFB\u52A1\u5B58\u5728\u51B2\u7A81`);await new Promise(u=>setTimeout(u,n))}throw new Error(`${e}\u6279\u91CF\u4EFB\u52A1\u7B49\u5F85\u8D85\u65F6`)}async removeCloudPcRestoreFolder(e){if(!e)return;let r=[{fileId:String(e),fileName:nL,isFolder:1}];await this.permanentlyDeleteCloudPcItems(r),this.pcRestoreFolderId=""}async resetCloudPcRestoreFolder(){let e=await this.ensureCloudPcRestoreFolder();await this.removeCloudPcRestoreFolder(e);for(let r=0;r<3;r+=1)try{return await this.ensureCloudPcRestoreFolder()}catch(n){if(r>=2)throw n;await new Promise(s=>setTimeout(s,300*(r+1)))}}async restoreCasMetadataToCloudDrive(e){let r=String(e?.md5||"").trim().toUpperCase(),n=Number(e?.size||0),s=String(e?.name||"").trim(),i=String(e?.sliceMd5||"").trim().toUpperCase();if(!r||!n||!s)throw new Error("CAS\u5143\u6570\u636E\u7F3A\u5C11\u5FC5\u8981\u5B57\u6BB5\uFF0C\u65E0\u6CD5\u6267\u884C\u79D2\u4F20\u6062\u590D");let a=await this.resetCloudPcRestoreFolder(),o=ZMe(n);e?.create_time;let c=await this.requestCloudPc(`${rL}/person/initMultiUpload`,"GET",{encryptedParams:{parentFolderId:a,fileName:s,fileSize:String(n),fileMd5:r,sliceSize:String(o),...i?{sliceMd5:i}:{}}}),u=e6e(c?.data)||{},l=fa(c?.data);if(c.status,u?.fileDataExists,u?.uploadFileId||u?.uploadFileID,u?.uploadHost,Wt(JSON.stringify(c?.data||{}),260),c.status>=400||l)throw new Error(`CAS\u79D2\u4F20\u6062\u590D\u521D\u59CB\u5316\u5931\u8D25: ${l||c.status}`);let d=String(u?.uploadFileId||u?.uploadFileID||"");if(Number(u?.fileDataExists)!==1||!d)throw new Error("CAS\u79D2\u4F20\u6062\u590D\u5931\u8D25\uFF0C189\u672A\u547D\u4E2D\u6587\u4EF6");let f=await this.requestCloudPc(`${rL}/person/commitMultiUploadFile`,"GET",{encryptedParams:{uploadFileId:d,isLog:"0",opertype:"3"}}),p=t6e(f?.data)||{},m=fa(f?.data);if(f.status,p?.userFileId||p?.id,p?.fileName,Wt(JSON.stringify(f?.data||{}),260),f.status>=400||m)throw new Error(`CAS\u79D2\u4F20\u63D0\u4EA4\u5931\u8D25: ${m||f.status}`);let h=String(p?.userFileId||p?.id||""),A=String(p?.fileName||s);if(!h)throw new Error("CAS\u79D2\u4F20\u63D0\u4EA4\u540E\u672A\u8FD4\u56DE\u6587\u4EF6ID");return{fileId:h,fileName:A,folderId:a}}async getCloudPcFileDownloadUrl(e){let r=await this.requestCloudPc(`${Qi}/getFileDownloadUrl.action`,"GET",{query:{fileId:String(e||""),dt:"3",flag:"1"},responseType:"text",transformResponse:[o=>o]}),n=String(r6e(r?.data)||""),s=_c(n).replace(/^http:\/\//i,"https://"),i=fa(r?.data);if(r.status,pa(s),Wt(s,260),r.status>=400||i)throw new Error(`\u6062\u590D\u6587\u4EF6\u4E0B\u8F7D\u5730\u5740\u83B7\u53D6\u5931\u8D25: ${i||r.status}`);if(!s)throw new Error("\u6062\u590D\u6587\u4EF6\u4E0B\u8F7D\u5730\u5740\u4E3A\u7A7A");let a=await R0({method:"GET",url:s,headers:{"User-Agent":Ec["User-Agent"]},maxRedirects:0,validateStatus:()=>!0},"pc-download-redirect");return a.status>=300&&a.status<400&&a.headers?.location?_c(String(a.headers.location||"")):s}async getCasPlayableByRestoringToCloudDrive(e){let r=[],n=[{isFamily:!0,scope:"family"},{isFamily:!1,scope:"personal"}];for(let s of n)try{let i=await this.restoreCasMetadataToCloudDriveV2(e,{isFamily:s.isFamily}),a=await this.getCloudPcFileDownloadUrlV2(i.fileId,{isFamily:s.isFamily,familyId:i.familyId});return s.scope,i.fileId,i.fileName,pa(a),{url:a}}catch(i){r.push(`${s.scope}: ${i?.message||i}`)}throw new Error(`CAS\u79D2\u4F20\u6062\u590D\u5931\u8D25: ${r.join(" ; ")}`)}async getShareTextPlayable(e,r,n="",s="",i=0){if(!e||!r)return null;this.setShareTextResolveReason(""),!this.cookie&&this.account&&this.password&&(console.log("\u6B63\u5728\u767B\u5F55\uFF0C\u8BF7\u7A0D\u7B49...."),await this.login(this.account,this.password),console.log("\u767B\u5F55\u6210\u529F,\u83B7\u53D6cookie\u6210\u529F"));let a=this.getCachedShareFileItem(e,r),o=n||a?.shareMode||"",c=s||a?.accessCode||"",u=this.cookie?{Cookie:this.cookie}:{};this.cookie,eb(this.cookie),a?.name,pa(a?.downloadUrl);let l=aC(a);l.length,l.slice(0,3).map(p=>Wt(p,260));for(let p of l){let m=await this.fetchShareTextFileFromUrl(p,u),h=Zx(m),A=await this.confirmShareTextPlayableCandidate(h,u,{source:"cached",fileId:e,shareId:r,candidate:Wt(p,260)});if(A)return Wt(p,260),pa(A.url),A.header,A}let d=!1,f=this.buildShareTextApiCandidates(e,r,o,c);for(let p of f){let{playable:m,authError:h}=await this.tryResolveShareTextPlayableFromApi(p,u);if(m){let A=await this.confirmShareTextPlayableCandidate(m,u,{source:"api",fileId:e,shareId:r,api:(()=>{try{return new URL(p).pathname}catch{return p}})()});if(!A)continue;return(()=>{try{return new URL(p).pathname}catch{return p}})(),pa(A.url),A.header,A}h&&(d=!0,(()=>{try{return new URL(p).pathname}catch{return p}})(),void 0)}return d&&i<1&&this.account&&this.password?(w0.set("cloud_cookie",""),await this.login(this.account,this.password),await this.getShareTextPlayable(e,r,o,c,i+1)):(this.cookie,eb(this.cookie),this.getShareTextResolveReason(),null)}async getShareUrl(e,r){let 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"};!this.cookie&&this.account&&this.password&&this.index<2&&(console.log("\u6B63\u5728\u767B\u5F55\uFF0C\u8BF7\u7A0D\u7B49...."),await this.login(this.account,this.password),console.log("\u767B\u5F55\u6210\u529F,\u83B7\u53D6cookie\u6210\u529F")),n.Cookie=this.cookie;try{let s=await Ae.get(`${this.api}/portal/getNewVlcVideoPlayUrl.action?shareId=${r}&dt=1&fileId=${e}&type=4&key=noCache`,{headers:n}),i=await Ae.get(s.data.normal.url,{maxRedirects:0,validateStatus:function(o){return o>=200&&o<400}}),a="";return i.status>=300&&i.status<400&&i.headers.location?a=i.headers.location:a=s.data.normal.url,a}catch(s){if(s.response&&s.response.status===400&&this.index<2)return console.log("\u83B7\u53D6\u64AD\u653E\u5730\u5740\u5931\u8D25\uFF0C\u9519\u8BEF\u4FE1\u606F\u4E3A\uFF1A"+s.response.data),console.log("cookie\u5931\u6548\uFF0C\u6B63\u5728\u91CD\u65B0\u83B7\u53D6cookie"),w0.set("cloud_cookie",""),this.index+=1,await this.getShareUrl(e,r);console.error("Error during getShareUrl:",s.message,s.response?s.response.status:"N/A")}finally{this.index>=2&&(this.index=0,messageToDart({action:"toast",opt:{message:"\u5929\u7FFC\u8D26\u53F7\u767B\u5F55\u5931\u8D25\uFF0C\u8BF7\u524D\u5F80\u3010\u914D\u7F6E\u3011\u7AD9\u6E90\u8FDB\u884C\u914D\u7F6E",duration:5}}))}}},rf=new MV;var ks=Re(Jn(),1),$e=pu;(function(t,e){let r=pu,n=t();for(;;)try{if(-parseInt(r(620,"1$*q"))/1*(parseInt(r(533,"Q*]n"))/2)+parseInt(r(672,"NUA^"))/3*(-parseInt(r(442,"&L(#"))/4)+parseInt(r(580,"Z*B!"))/5*(-parseInt(r(707,"SjKy"))/6)+-parseInt(r(630,"tPoy"))/7*(-parseInt(r(269,"&7e0"))/8)+-parseInt(r(409,"5K@$"))/9*(parseInt(r(350,"3H)Z"))/10)+-parseInt(r(435,"Z*B!"))/11+parseInt(r(505,"$hvt"))/12*(parseInt(r(616,"SjKy"))/13)===e)break;n.push(n.shift())}catch{n.push(n.shift())}})(iL,470*990+-61486+-1957*19);function pu(t,e){let r=iL();return pu=function(n,s){n=n-(-9718+-824*5+1*14087);let i=r[n];if(pu.GJXIGO===void 0){var a=function(d){let f="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=",p="",m="";for(let h=0,A,g,b=0;g=d.charAt(b++);~g&&(A=h%4?A*64+g:g,h++%4)?p+=String.fromCharCode(255&A>>(-2*h&6)):0)g=f.indexOf(g);for(let h=0,A=p.length;h{let e=$e,r={OiPnC:function(a,o){return a(o)}},n=r[e(510,"yuUx")](String,t[e(642,"#*4]")]||t[e(696,"&k0w")]||"")[e(498,"8DL5")]()[e(602,"^([h")](/^\./,"")[e(509,"A[3w")+"e"]();if(n)return n;let s=r[e(574,"5K@$")](String,t[e(276,"wIP%")]||t[e(601,"vbM7")]||"")[e(252,"wIP%")]()[e(323,"wIP%")+"e"](),i=s[e(635,"uUex")](/\.([a-z0-9]{1,10})$/i);return i?i[47*32+1*3538+1*-5041]:""},Dnr=t=>Pnr[$e(274,"lET8")](d6e(t)),knr=t=>{let e=$e,r={UptDJ:function(n,s){return n(s)},SRcnu:function(n,s){return n||s},czDjR:function(n,s){return n||s}};try{return r[e(338,"NCIB")](decodeURIComponent,r[e(275,"mL$T")](t,""))}catch{return r[e(397,"iBpX")](t,"")}},Lnr=t=>encodeURIComponent(String(t||""))[$e(486,"5K@$")](/\*/g,$e(416,"lHXy")),Bnr=t=>{let e=$e,r={MoWMN:function(s,i){return s(i)},MpPbj:function(s,i){return s||i},ABJQS:function(s,i){return s===i},SdKwh:e(599,"vbM7"),iGRcE:e(576,"kI1Y"),hPGUi:e(713,"&k0w")},n=r[e(711,"hTux")](String,r[e(359,"cSk2")](t,""));if(!n)return"";if(r[e(518,"nM1l")](typeof globalThis[e(446,"nM1l")],r[e(418,"&k0w")])){let s=globalThis[e(643,"kI1Y")](n),i=Uint8Array[e(307,"#*4]")](s,a=>a[e(688,"&7e0")](1264*-2+8216*-1+79*136));return new TextDecoder()[e(266,"iBpX")](i)}return globalThis[e(379,"]oQm")]?globalThis[e(270,"!dbI")][e(320,"hTux")](n,r[e(278,"KdvK")])[e(539,"lHXy")](r[e(502,"1$*q")]):""},WV=class{constructor(){let e=$e,r={ptlsM:e(647,"YzKM")+"4",WlSfi:e(365,"NCIB")+e(677,"1$*q")+e(293,"rTn$")+e(290,"A[3w")+e(621,"A[3w")+e(535,"s1R8")+e(291,"!ahM")+"/",jCmBR:e(632,"*I%q")+e(548,"^([h"),dyIRw:e(262,"uUex")+e(354,"B49t")+e(357,"&k0w")+e(622,"yuUx")+e(568,"NUA^")+e(459,"#*4]")+e(649,"kI1Y")+e(362,"&k0w")+e(684,"XXV0")+e(455,"(O@[")+e(703,"Q*]n")+"6",bipwl:e(352,"KdvK")+e(331,"#*4]")+e(583,"Z*B!")+e(644,"]sJ3"),nLoiD:e(712,"&k0w")+e(702,"wIP%"),fGDII:e(257,"3BhN")+e(445,"mL$T")+e(424,"kI1Y")+e(272,"20ct")+e(366,"H#%j")+e(709,"!dbI")+e(249,"Z*B!")+e(408,"B49t")+e(680,"!dbI")+"|"},n=r[e(471,"3H)Z")][e(561,"&k0w")]("|"),s=-6*-48+-239*29+6643;for(;;){switch(n[s++]){case"0":this[e(674,"s1R8")]=[/https:\/\/yun.139.com\/shareweb\/#\/w\/i\/([^&/?#]+)/,/https:\/\/caiyun.139.com\/m\/i\?([^&/?#]+)/,/https:\/\/caiyun.139.com\/w\/i\/([^&/?#]+)/];continue;case"1":this[e(670,"5K@$")]=r[e(294,"iBpX")];continue;case"2":this.x=ks.default[e(667,"nM1l")][e(612,"A[3w")][e(613,"SjKy")](r[e(551,"H#%j")]);continue;case"3":this[e(611,"H#%j")]={"User-Agent":r[e(698,"20ct")],Accept:r[e(662,"!dbI")],"Content-Type":r[e(381,"lHXy")],"hcy-cool-flag":"1","x-deviceinfo":r[e(590,"kI1Y")]};continue;case"4":this[e(330,"lET8")]={};continue;case"5":this[e(514,"Q*]n")]="";continue}break}}[$e(631,"yuUx")+$e(714,"#*4]")+"n"](){let e=$e,r={QyscH:function(s,i){return s(i)}},n=Onr[e(282,"]oQm")](s=>globalThis[e(273,"F3h)")]?.[e(517,"vFQ3")]?.[s])[e(411,"*I%q")](s=>String(s||"")[e(464,"IfEw")]());return r[e(607,"3BhN")](String,globalThis[e(404,"XXV0")+e(522,"iBpX")]||n||"")[e(474,"3H)Z")]()[e(402,"#*4]")](/^Basic\s+/i,"")[e(618,"mL$T")]()}[$e(558,"mL$T")+$e(681,"f2C6")+"er"](){let e=$e,r=this[e(324,"3BhN")+e(685,"F3h)")+"n"]();return r?e(300,"3H)Z")+r:""}[$e(614,"H#%j")+$e(483,"*I%q")+$e(427,"F3h)")](){let e=$e,r={wjwtp:function(s,i){return s(i)},VVdSI:e(453,"F3h)")+e(259,"*I%q")+e(279,"vbM7")},n=this[e(693,"hTux")+e(451,"uUex")+"n"]();if(!n)return"";try{return r[e(371,"]sJ3")](Bnr,n)[e(369,"8DL5")](":")[-44*-134+-2123+943*-4]||""}catch{return console[e(686,"mL$T")](r[e(341,"Q*]n")]),""}}[$e(417,"s1R8")](e={}){let r=$e,n={...this[r(673,"Z*B!")],...e},s=this[r(497,"cSk2")+r(287,"YzKM")+"er"]();return s&&(n[r(462,"20ct")+r(532,"IfEw")]=s),n}[$e(264,"(O@[")+$e(349,"20ct")](){let e=$e,r={IGrkL:e(355,"uUex")},n=this[e(545,"1$*q")+e(348,"yuUx")+"n"]();return n?ks.default[e(443,"lET8")](n)[e(694,"3H)Z")]()[e(682,"tPoy")](373*-1+5167+1*-4794,-3232*-3+-7101+-199*13):r[e(536,"qf0c")]}[$e(554,"NUA^")+$e(383,"hTux")](e){let r=$e,n={MAVQr:function(i,a){return i===a},AUpQC:r(261,"cSk2"),SSOvU:function(i,a){return i(a)},dFtoJ:function(i,a){return i||a}};if(e&&n[r(651,"$hvt")](typeof e,n[r(475,"f2C6")]))return e;let s=n[r(706,"&k0w")](String,n[r(447,"SjKy")](e,""))[r(317,"#*4]")]();if(!s)return null;try{let i=this[r(655,"Q*]n")](s);if(i)return JSON[r(325,"&k0w")](i)}catch{}try{return JSON[r(342,"yuUx")](s)}catch{return null}}async[$e(646,"hTux")+"pi"](e,r,n=1*2589+5*-2371+17266){let s=$e,i={qexYT:function(c,u){return c+u},LYDcw:function(c,u){return c!==u}},a=JSON[s(656,"F3h)")](this[s(394,"mL$T")](JSON[s(542,"Q*]n")](r))),o=await Ae[s(428,"]oQm")](i[s(265,"#*4]")](this[s(444,"s1R8")],e),a,{headers:this[s(410,"!dbI")](),timeout:n});return i[s(431,"KdvK")](o[s(334,"8DL5")],200)?null:this[s(689,"kI1Y")+s(592,"XXV0")](o[s(541,"f2C6")])}[$e(360,"20ct")+$e(333,"]sJ3")+"fo"](){let e=$e;return{account:this[e(465,"20ct")+e(374,"5K@$")+e(295,"XXV0")](),accountType:1}}[$e(492,"&7e0")+$e(640,"NCIB")+"nt"](e){let r=$e,n={QVwkN:function(s,i){return s===i},LECin:function(s,i){return s(i)}};return e?n[r(426,"Z*B!")](e[r(421,"cSk2")],3023+278*-24+3652)?!0:n[r(392,"nM1l")](e[r(387,"qf0c")],-578*15+-4310+12980)&&n[r(499,"3H)Z")](Dnr,e):!1}[$e(433,"(O@[")](e){let r=$e,n={uvcIG:function(a,o){return a==o},WStHG:r(506,"$hvt"),SLESc:function(a,o){return a===o},jZeFu:r(487,"tPoy"),NAUrk:function(a,o){return a!==o}},s=ks.default[r(490,"XXV0")][r(629,"&L(#")][r(495,"lHXy")](1286*-2+-1001+3589),i="";if(n[r(347,"kI1Y")](n[r(385,"kI1Y")],typeof e)){let a=ks.default[r(550,"rTn$")][r(543,"H#%j")][r(679,"YzKM")](e);i=ks.default[r(653,"B49t")][r(253,"cSk2")](a,this.x,{iv:s,mode:ks.default[r(572,"1$*q")][r(480,"SjKy")],padding:ks.default[r(312,"cSk2")][r(546,"NUA^")]})}else if(n[r(460,"uUex")](typeof e,n[r(284,"B49t")])&&n[r(461,"cSk2")](e,null)){let a=JSON[r(437,"SjKy")](e),o=ks.default[r(531,"d$GU")][r(458,"*I%q")][r(328,"s1R8")](a);i=ks.default[r(500,"(O@[")][r(299,"!ahM")](o,this.x,{iv:s,mode:ks.default[r(589,"#*4]")][r(322,"^([h")],padding:ks.default[r(395,"20ct")][r(700,"lET8")]})}return ks.default[r(667,"nM1l")][r(559,"kI1Y")][r(658,"(O@[")](s[r(718,"20ct")](i[r(391,"$hvt")]))}[$e(627,"d$GU")](e){let r=$e,n=ks.default[r(378,"KdvK")][r(286,"1$*q")][r(344,"IfEw")](e),s=n[r(695,"1$*q")](),i=s[r(507,"mL$T")][r(645,"f2C6")](1*-2267+-8154+2085*5);s[r(388,"qf0c")](s[r(301,"F3h)")]),n[r(587,"&L(#")](i);let a=ks.default[r(669,"20ct")][r(267,"F3h)")][r(494,"&L(#")](n);return ks.default[r(600,"]sJ3")][r(370,"3H)Z")](a,this.x,{iv:s,mode:ks.default[r(466,"NCIB")][r(329,"kI1Y")],padding:ks.default[r(595,"yuUx")][r(292,"iBpX")]})[r(513,"IfEw")](ks.default[r(557,"#*4]")][r(479,"vbM7")])[r(503,"lET8")]()}async[$e(512,"qf0c")](e){let r=$e;this[r(639,"5K@$")][r(609,"vbM7")](n=>{let s=r,i=n[s(598,"20ct")](e);i&&i[362*-7+8522+-5987]&&(this[s(553,"uUex")]=i[1])})}async[$e(441,"vbM7")+"fo"](e){let r=$e,n={FeybT:r(289,"3BhN")+r(477,"!ahM")+r(281,"3H)Z")+r(577,"nM1l")+r(671,"XXV0"),YoiBc:r(549,"wIP%")+r(540,"KdvK"),ftJtN:r(463,"NCIB")+r(623,"]sJ3")+r(584,"B49t")};if(!this[r(528,"(O@[")])return console[r(593,"mL$T")](n[r(314,"3BhN")]),null;let s=this[r(634,"mL$T")+r(562,"IfEw")]()+"-"+this[r(648,"A[3w")]+"-"+e;if(this[r(641,"nM1l")][s])return this[r(346,"vbM7")][s];let i=this[r(373,"*I%q")+r(263,"]oQm")+"fo"](),a={getOutLinkInfoReq:{account:i[r(663,"Z*B!")],linkID:this[r(530,"&7e0")],passwd:"",caSrt:0,coSrt:0,srtDr:1,bNum:1,pCaID:e,eNum:200},commonAccountInfo:i};try{let o=(await this[r(319,"1$*q")+"pi"](n[r(715,"kI1Y")],a))?.[r(377,"(O@[")];return this[r(582,"H#%j")][s]=o,o}catch(o){return console[r(326,"F3h)")](n[r(468,"8DL5")],o),null}}async[$e(485,"uUex")+"ta"](e){let r=$e,n={DGHIp:function(c,u){return c in u},ewGUF:function(c,u){return c>u},FfOfh:function(c,u){return c(u)},qNAwx:r(555,"&7e0"),iQvUm:r(566,"$hvt"),sReYy:function(c,u){return c===u}};if(!e)return{};let s=e[r(304,"3BhN")](n[r(454,"XXV0")]),i=s?n[r(448,"]sJ3")]:e;s&&await this[r(650,"20ct")](e);let a={},o=await this[r(652,"H#%j")+"le"](i);o&&Array[r(254,"XXV0")](o)&&await Promise[r(396,"]oQm")](o[r(340,"YzKM")](async c=>{let u=r,l=c[u(488,"vFQ3")]||c[u(384,"F3h)")];!n[u(308,"3H)Z")](l,a)&&(a[l]=[]);let d=await this[u(368,"Q*]n")+"l"](c[u(501,"A[3w")]);d&&n[u(260,"H#%j")](d[u(399,"f2C6")],-15182+-7591*-2)&&a[l][u(704,"KdvK")](...d)}));for(let c in a)(!Array[r(380,"Z*B!")](a[c])||n[r(336,"vFQ3")](a[c][r(482,"YzKM")],6842+-69*129+29*71))&&delete a[c];if(n[r(567,"KdvK")](Object[r(519,"^([h")](a)[r(399,"f2C6")],1*5314+-4*1117+-94*9)){let c=await this[r(423,"Z*B!")+"l"](n[r(573,"wIP%")]);c&&Array[r(556,"F3h)")](c)&&n[r(260,"H#%j")](c[r(412,"H#%j")],-5935+-34*98+9267*1)?a[n[r(255,"5K@$")]]=c:(a[n[r(544,"uUex")]]=await this[r(524,"A[3w")+"le"](e),a[n[r(364,"NCIB")]]&&Array[r(699,"SjKy")](a[n[r(520,"KdvK")]])&&(a[n[r(624,"mL$T")]]=a[n[r(606,"F3h)")]][r(708,"SjKy")](u=>u&&Object[r(413,"hTux")](u)[r(337,"NCIB")]>7110*-1+-47*-169+-833)))}return Object[r(664,"IfEw")](a)[r(403,"KdvK")](c=>{let u=r,l={kPRcT:function(f,p){return n[pu(491,"lHXy")](f,p)}},d=Array[u(637,"$hvt")](a[c])?a[c]:[];a[c]=d[u(516,"IfEw")](f=>f&&f[u(356,"A[3w")]&&f[u(277,"#*4]")])[u(298,"^([h")](f=>{let p=u;return{vod_name:f[p(401,"*I%q")],vod_id:[f[p(283,"iBpX")],f[p(436,"NUA^")],l[p(660,"NCIB")](Lnr,f[p(306,"f2C6")]),f[p(407,"B49t")]??""][p(603,"&7e0")]("*"),vod_size:f[p(665,"H#%j")]}}),!a[c][u(358,"d$GU")]&&delete a[c]}),a}async[$e(615,"&L(#")+"le"](e){let r=$e,n={zOYRK:r(429,"NCIB"),WqADz:r(256,"Z*B!"),SmdCI:function(s,i){return s>i},NJIsK:r(687,"vbM7")+r(309,"tPoy")+r(316,"B49t")};if(!e)return null;try{e=e[r(303,"H#%j")](n[r(675,"vbM7")])?n[r(467,"(O@[")]:e;let i=await this[r(311,"!ahM")+"fo"](e);if(!i||!i[r(565,"lHXy")])return null;let a=i?.[r(305,"YzKM")],o=a[r(422,"nM1l")](d=>d[r(628,"s1R8")]),c=a[r(585,"XXV0")](d=>d[r(398,"mL$T")]),u=/App|活动中心|免费|1T空间|免流/,l=[];if(a&&n[r(547,"3BhN")](a[r(638,"8DL5")],-8*266+20*-179+5708)){o[r(552,"!dbI")]((f,p)=>{let m=r;!u[m(472,"yuUx")](f)&&l[m(439,"#*4]")]({name:f,path:c[p]})});let d=await Promise[r(481,"tPoy")](c[r(375,"3H)Z")](async f=>this[r(659,"d$GU")+"le"](f)));return d=d[r(280,"YzKM")](f=>f!=null),[...l,...d[r(636,"Z*B!")]()]}}catch(s){return console[r(400,"qf0c")](n[r(363,"wIP%")],s),null}}async[$e(271,"!dbI")+"l"](e){let r=$e,n={IhITm:function(s,i){return s in i},pCuOm:r(564,"s1R8"),yXpTv:function(s,i){return s!==i},uubvP:function(s,i){return s!==i},diwTx:r(581,"20ct")+r(430,"lET8")+r(438,"iBpX")};try{let s=await this[r(705,"wIP%")+"fo"](e);if(!s||!n[r(420,"3H)Z")](n[r(406,"kI1Y")],s))return null;let i=s[r(523,"XXV0")];if(n[r(361,"KdvK")](i,null))return i[r(457,"yuUx")](o=>this[r(563,"nM1l")+r(579,"YzKM")+"nt"](o))[r(440,"kI1Y")](o=>({name:o[r(327,"lET8")],contentId:o[r(386,"8DL5")],linkID:this[r(515,"!dbI")],size:o[r(452,"*I%q")],path:o[r(398,"mL$T")]||"",coType:o[r(405,"wIP%")],suffix:d6e(o)}));if(n[r(382,"1$*q")](s[r(511,"mL$T")],null)){let a=s[r(661,"KdvK")][r(697,"cSk2")](c=>c[r(588,"#*4]")]),o=await Promise[r(315,"rTn$")](a[r(469,"iBpX")](c=>this[r(415,"tPoy")+"l"](c)));return o=o[r(288,"NUA^")](c=>c&&c[r(657,"cSk2")]>0),o[r(335,"SjKy")]()}}catch(s){return console[r(534,"nM1l")](n[r(617,"mL$T")],s),null}}[$e(575,"kI1Y")+$e(690,"SjKy")](e){let r=$e;return e&&(e[r(701,"20ct")]||e[r(313,"XXV0")+"L"]||e[r(594,"8DL5")+"L"]||e[r(605,"f2C6")+r(318,"s1R8")])||""}async[$e(449,"hTux")+$e(484,"$hvt")+$e(434,"*I%q")](e,r){let n=$e,s={nYdVd:n(676,"NUA^")+n(250,"]oQm")+n(571,"uUex")},i=this[n(537,"^([h")+n(372,"8DL5")+"fo"](),a={getContentInfoFromOutLinkReq:{contentId:e,linkID:r,account:i[n(586,"$hvt")]},commonAccountInfo:i},o=await this[n(302,"lHXy")+"pi"](s[n(425,"nM1l")],a);return this[n(297,"lET8")+n(560,"]oQm")](o?.[n(493,"&L(#")]?.[n(478,"kI1Y")+"o"])}async[$e(473,"^([h")+$e(527,"yuUx")+"ad"](e,r){let n=$e,s={BSYvU:n(489,"lET8")+n(432,"!dbI")};if(!this[n(633,"!ahM")+n(508,"d$GU")+"er"]()||!e)return"";let i=this[n(683,"3BhN")+n(353,"mL$T")+"fo"](),a={dlFromOutLinkReqV3:{account:i[n(343,"mL$T")],linkID:r,coIDLst:{item:[e]}},commonAccountInfo:i};return(await this[n(646,"hTux")+"pi"](s[n(625,"^([h")],a))?.[n(414,"lHXy")]?.[n(525,"3H)Z")]||""}async[$e(596,"d$GU")+"ay"](e,r,n="",s=""){let i=$e,a={NUWoV:function(c,u){return c(u)},KEOlY:function(c,u){return c||u}},o=a[i(496,"20ct")](knr,n);return this[i(678,"(O@[")+i(578,"F3h)")+"er"]()?await this[i(608,"NUA^")+i(691,"8DL5")+"ad"](a[i(476,"8DL5")](o,e),r):await this[i(504,"vbM7")+i(419,"yuUx")+i(332,"F3h)")](e,r)}},$V=new WV;var Sqr=Re(Jn(),1),_t=Il;(function(t,e){let r=Il,n=t();for(;;)try{if(parseInt(r(552,"EBu["))/1+-parseInt(r(588,"2CNl"))/2*(-parseInt(r(423,"$K(D"))/3)+-parseInt(r(679,"7WHS"))/4*(-parseInt(r(464,"KEzV"))/5)+parseInt(r(911,"n#dP"))/6*(parseInt(r(678,"jJi*"))/7)+parseInt(r(768,"KVv4"))/8*(parseInt(r(636,"spAe"))/9)+-parseInt(r(777,"n$nf"))/10+-parseInt(r(921,"Z3]t"))/11*(parseInt(r(507,"7WHS"))/12)===e)break;n.push(n.shift())}catch{n.push(n.shift())}})(aL,-222221+-15551*-58);var nb=_t(856,"^oo)")+_t(480,"2iTo")+"n",f6e=_t(775,"KVv4")+_t(729,"3Ga)")+_t(402,"$K(D");function UV(t){let e=_t,r={RSKpd:e(895,"sI6$"),SRmrB:e(650,"PBWo")};return Buffer[e(847,"Z#jd")](t,r[e(491,"PBWo")])[e(415,"sI6$")](r[e(487,"$K(D")])}function Mnr(t){let e=_t,r={QNVxs:function(n,s){return n(s)},JzzQp:function(n,s){return n||s},bagPy:function(n,s){return n+s},bXQLA:function(n,s){return n%s},unavS:function(n,s){return n-s},cgpFk:function(n,s){return n%s}};try{let n=r[e(892,"^oo)")](String,r[e(592,"KEzV")](t,""))[e(476,"[g$U")](".")[1]||"";if(!n)return null;let s=n[e(743,"aL3e")](/-/g,"+")[e(915,"Z3]t")](/_/g,"/"),i=r[e(710,"aL3e")](s,"="[e(632,"3Ga)")](r[e(586,"^oo)")](r[e(468,"Pqls")](8174*1+-2544+-5626,r[e(629,"8rP)")](s[e(857,"aL3e")],-4644+-8*-581)),-1480+-134*2+1752)));return JSON[e(897,"1Jsl")](r[e(725,"zTXO")](UV,i))}catch{return null}}function Wnr(t){let e=_t,r={LXxCM:function(n,s){return n(s)},snpaw:function(n,s){return n||s},fKIBH:e(794,"3Ga)"),droKK:function(n,s){return n(s)}};try{let n=new URL(r[e(494,"3Ga)")](String,r[e(666,"GBUh")](t,""))),s=n[e(569,"[g$U")+"ms"][e(742,"pd]6")](r[e(604,"GBUh")]);if(s)return r[e(551,"1g%Z")](UV,s);let i=n[e(483,"x&B#")][e(796,"q5v@")](293*19+1*-5577+-1*-11)[e(680,"2CNl")]("&")[-8691+-17*-98+7025]||"",a=i[e(820,"Bc2A")]("=")?i[e(560,"7WHS")]("=")[-5096+1*5097]:"";return a?r[e(789,"gIJp")](UV,a):""}catch{return""}}function p6e(t){let e=_t,r={wYryw:function(n,s){return n(s)},PhDPF:function(n,s){return n||s},pkqlq:e(572,"7HAV"),uQfcY:e(550,"gIJp")};try{let n=new URL(r[e(905,"7%IF")](String,r[e(693,"2CNl")](t,"")));return n[e(824,"dfe3")]=n[e(784,"[g$U")][e(589,"KEzV")](/_24_24(?=\/|$)/g,""),["w","h",r[e(461,"n$nf")],r[e(420,"8rP)")]][e(505,"[U(&")](s=>n[e(511,"^oo)")+"ms"][e(835,"4jZl")](s)),n[e(851,"u^kX")]()}catch{return""}}function $nr(t){let e=_t,r={htgGZ:function(n,s){return n(s)},HcwgG:function(n,s){return n(s)},EPvQz:function(n,s){return n||s},qqmzy:function(n,s){return n(s)},ZgGyO:function(n,s){return n||s}};try{return r[e(727,"8#fg")](decodeURIComponent,r[e(697,"3Ga)")](String,r[e(840,"$ac(")](t,"")))}catch{return r[e(530,"7HAV")](String,r[e(810,"1Jsl")](t,""))}}function aL(){let t=["WP9vwSoVW5eLW5BcUNldLa","ymkpWPLyvmkUW7e","W77dNmkVFay","W4RcQSkYWO7cUSkuWPm","WROPWQi","WQD1W5C+","WOpcRXSdaW","W5PKi1tdUG","v0WXqa","WPJcNCoIzr8qASojW7VcMq","WOKpzSk2lq","rCo+Eru","W5ldNCkGAaXSrdldONG","W45kW5fqna0b","W5/cRv3dTSoKn8kJW4hcSJ0","eCoyDG","WO7cL8kSzXazq8khW6dcLG","W4jFW4S","abyv","FCkoWRLoq8kqW6m+W6G","WOagASkmWRmTbSkgbqu","sWVdRg3dGCkNqfVdJrO","cfdcQhldTq","WPW6Fa","W5FdRKOJ","WOSVW6ZcRCoZW6RdG3eqW4G","WPJcIIKE","WOxcHISp","ff7cQZpcJCkoAuhdSJrE","ASoyWRJdVSo2","WPDWDCoYpSkYW7nG","WQtdM1FcOYDdfG","zSoJDbFcPWv6hCkz","zCkNmCkdW5K","WQCknCk7Bf3dV8k7WO9E","CCo9jGZcPCoWWQNdTSki","vSoUWOFdN8oJE0m","yComW4eyht4fW4FcS8kh","W4pdRKOQ","BSoXWO3dOSoY","W6xcHKlcHGbGmWe","W6JdJCkYrmkbW6e6WQjula","v8owBa","WQZcRuXWWQuYjKVdUN0","yCo/BbO","Fqz+","WOymFmkqWROWrW","W7JdKMvkvSkoW5GquSoAAq","WQ9em8k7zG","ECkDWRz1r8k6W7WZ","cSocW4yFxIqxW4BcLmo6","W7ldVmouvmoQ","FCoBW74MpG","rSkmd8kSW5u","WRzXFSo4pSkYW7nGWRO1","iSoniq","xtOqESkn","WRpdOGlcP8kkWQhcNmkM","WOpdGs/cHCkq","W6DsW6xcNY9ana","eCkFtSoJW44","WOzZzCkZWOm","jmkhDSoeW6FcU1BdPa","W7ddHCoFz8ok","W69rW5tcGtrclmkNWRX3","hCk/tSoMW4a","WOxdVH3cQG","qdevwSkW","W7NdUvumjG","jCkfjq8","CvuGrIrrm8oR","zqCqWRLfW4/dTa","WQFdH0pcPq","WQ9XW404eCo7","WOhdTSkPAaztrhRcTJm","qKhdSNpdL8knfe/dIXC","uqWlBmkH","WRaTWQBdPSk8iY3dKh7dNG","W5BcTeZcMa","W4CiW4BdPqyr","zSkpemkJW7euW6VdL35P","WOrDWOBcSLjvsrDlDfZdUmoLqq","WRqiBSkrWQGTfCkg","nmk7lcJcJGvqaSkg","WOpdGJtcMmkQ","W6vgW45ggWSjlW","fhVcHJNcLN3dSW","W5pdI8kFWPm+","Df04rGPA","DY5oW6Xy","WPRdNuRcPbrggxBcJ30","WP/dRaBdKSo6nSk1W4O","W7VdI8kRhmozWRv7WR43sG","WRVdLCkYD8osWONcG1tdVZm","WP8RWRe","ymkdrgFdUSkwW7FcQmoPqq","WQX7ySoOf8kOW7q","WRBdIMhdVG","W4/dKCkVgG","cJ5XW6JdSSkoW68","W5XMiW","WQykpCoTWQJcIW","l8oRAbVdLW1YhmkzCa","sCkRgCkeW6i","W7RdOvGTl1ZcM3K","gwNcSYO","W5ldQ1O","f0hcReldTmoh","W6PaW5dcJa","xH3dVxtcHCk2E2RcJK4","55QL5B2l5OId5yIc","u0q9","WOJdNSkxaSonWO18","W6FdMCoTD8ov","WRJdPbVcL8k5ySoNW5BdS3O","WPVdRqe","sa/dRge","W6tcOmk0WPxcSCkZW4hcPG","z1ycWRVcMMWHWOS","W4ecW53dPqK","xSobEW","xLSZsI1Rm8o+","WOVdRahdGa","W6tdLSoUzCovWO/dNLy","mmkznbHZk1a","gXtdK3ddGmk0sq","WPGHFuxdPafHWQpcLa","m8k9Fc7cVW","WO7dKx3cRZeZi2/cP8oy","WQZcHIC","WR7dNfNcUq","WOHfxCoi","W4BcQ8kRiCk3","WO4OW7ZcP8k5","wftcMCkXz8od","W4xdLmk1EW","ytWBWRbd","r8omW5KAfdak","ESkuWRLyq8kDW608W7tcQa","j8ksD8oEW7NcS03dTSos","emkLvbFcJq","W4ddSSo0E8o4","W45xW5HUoG","WQ0hFSkoWQOMaSkr","W70oW4hdPYa","WQ/dKwa","d0BdVezk","imkuBmoA","rGqqt8kK","mmkSFHJcU8ohWQRdQ8kLdG","yCoIWOldN8om","xSoNWRldL8oT","gs51W6W","WQ/cQZyAa8kCW4S","yHen","WQ3dQbtdK8oOk8oN","W5FdLSoPC8ofWO/dNKS","m8kwnZPL","jSkKFclcGSoc","hZ51W5FdU8kmW7JcPsBdKa","WPaMCmk8kaX+W4ZcO3G","WRBdJdpdHSoe","W5BdISk4f8onWPv8","hJrZW4hdSSkoW6i","W43dNSkfCtS","WOxdL2VcOXq7","WPNcK8k5Da","c8k9fbnW","WRbulCkhBq","hCokzq","B8kvWRrEq8k9","yafpW7nH","W4ZdPmkaWQqC","WRv4umkN","W6zvW4pcQGC","dwNcTdJcLhpdUeq","W5ieW5JcRLzxtLDDBW","qGOpqG","W7pdKSoP","hCovAG","WQvamCkVD1S","5yQB5B6z44c06yAp576D44c+56M+5RU46l2t6kof","W5pdRCkuFsa","rZ01CCkEWQRcT8kay8ka","WPK8pmkWW7hcHCkgWROJwG","W7VcMCkMWRtcRa","W7ldS8ohxSop","WPvfW73dIdmOmqSCBq","WRP/z8o8","WOORW6O","i8ksiaz9ive","zCkAn8olWQFcQbddRmky","qeCXv35RfCouW5Ow","ECkmWOT9Cq","W4VcS8k8mCkW","W4JdNSkKoI5BqJ7dQcK","W5tdQKO","v1njbSogW7tdVCoFl8ot","W7BdU18L","W6/cQSkN","wGNcObSFW7rjWQhcG8kH","W7nxke/dGa","lJVcJc7cNvRdPLhcKa","pCkiumooW5u","WO/cL8k9ErisDG","W6naW5q","nG9uW6NdTa","W5X+WQ4","WRHaFSk2WQy","fIHIW6VdT8keW6tcPW","A1K6Aai","WQ1UF8o0bG","W5VdRK0","yLuJWQ/cKa","WP9BzCotma","babNexTke8oyWRzzWQa","ASkEfmkSW7a","qSogW4i","EflcH8krt8oeyW","WR9Uy8oXg8k4W6fGWPuZ","CYW/C8kS","zSoRAHVdL14Or8osBa","wKaGuZaeBSk9WPTb","mMtcTMVdNa","WR3cTtCkW4rpxLFcRwtcGSoRahu","CSostrxcSq","fdrOW6O","WPr8rCkWWPzDWOC","WRy6p8oXWQJdMCoqW7bpbq","WOyRW6FcTW","W45Xo3hdPXfcWOFcT0C","WO3cK8k5Fr0qFSkd","WR0pWPtdG20pFCoZWOz5","WQuAFG","qtKRw8kc","W6ddP18WbMxcN2K","BGirWP5H","r8oDECkCW6BcIfSOB20","W7tdJCkOxCkaW6KTW7rrlG","W63cVCo8W47dQCoiWOpdPmksW50","WPuGuSkwma","W4umW4tdOqOw","c8oOWPldNCo2FvtdRuFdPG","W5bdW4Tama","sWVdReBdKCkpsL/dOq8","WOmZC8k/lrPRW5hcPxK","WP5zqSofW6WHW5lcTgm","sWVdRa","vmkwgSkQ","zSoJDaBcNrK","W7/cMmkuWOxcLa","W4JdM8o+AaXAscFdOMm","dSkpzSo6W6e","qSkvWQWfe8o8WR91WQldPG","WQv1W5e2sSkMsColfZu","xqr9W6zocGHJ","edPY","WRxdQJldMmoc","FchdI1q","Dmo4Cr8","W4r1pW","sSkKWP3dGmoTDG","FWqbq8kMWQxcUmkZCZ0","tLmGiCoFW7BdVmoNpCoc","WOqQB8k2gXDRW4JcQq","WQ9UsCkRWPu","WQxcJcq","D1pcLSk4w8odBSo+","CCo4iJ/cOCoaWP/dQmkd","W5PGpvtdOaboWRxcVa","gmoyCSoL","W5hdLmk1CGDFtda","W53dReLAWRi","EWFdTJBcJmoyd1tcLui","W6tdT1ydla","g8koxCkOW7/cLLSCFKS","W7pdRSktcSo8","bGKycmoL","mv7cJGpcNa","mmkSyZtcU8ojWQVdRa","whnkW4ZdH8kGW4BdReRdLq","FrLAW7TWaGi","W6ZcQSk/WPNcQ8kd","dKldPgzhWRSlW6tcMCkU","WQFcMCkTomksW47cNbldHt4","6i2G5y6E55IkWOtdPNhLRPNNORtMIklLIkG","WR/cJb8uemkCW4SAzCoD","iImxamov","WRNcHJqEhW","W4FdMCkGBG","W5ZcJCkvla","ur56W64","oSkpCCo7W7O","W51jW4xcNZHXoSk3","g3RcQcy","WQaiACkd","WOJcLCkaAHLsraldOMi","W6NcO8k/","vva9WQRcPMqIWOK","sahdR27dLmkmtKJcJb8","W4/dHCkOgG","WR3dNvNcOW","pSkapGzZi1a","B8klfmk/W6TnWQxcJgbX","pCkspG1OkG","WQSTzCk8cbb5W5e","W77dOhznWPqmhG","W7ecW4hdRGSkhenPCW","iCk4zc8","qW/dR0VdVG","W71jW4xcNZHQkmkQ","m8kdCq","WOTvxmowW5y9","WQOdhmoOWR0","jmkhDSoeW6dcU1BdTa","b0hdVW","WP9Gf8kdCG","nCkwjaS","mmkhCCow","WOJdQahdPCoIlSkPW4lcQI8","WRxdJHldK8od","WQ5sFmo7jq","BaCKWRPh","WPDAvSkhWQyec8kdnW","xviY","rdNdThNdKs7dS3/cMeRcN8ka","WOXdDmk6WOi","B8kqWRDfva","W5nTm8o9DfC6WOxcN3C","WOvCW41wjWKbfsDI","WQq4WR7dNmkG","WPv3z8kYr8oOWRC6W49Q","DmoJWPhdO8oO","WPtdRWO","W4WJW5/dRqy","W67cOmkHWRNcVSkfW5S","W63dHSoVwCom","WQFdN3pcPW","pJjTW6hdMSkj","vSkXnSk3W6S","WRBdJwlcMtK2mcxdSCkc","5BgM5P6t55M95B+r77+B5B6+5AsT55QL5B+X","WOaICmk2CK0","omkjyG","WP/dRaFdKSoO","l07dVfbMWR4","W4jlW4y","6i2y5y2B55QTWPdcV2ROT6hLJzNMI5xLI5e","W6CPfa","wCkUWPvTDa","WOBdVJtdK8o/omk+","WP0VW63cT8kSWRdcGJi","W5NcU8kiiCkr","hComCSoS","W5O8W53dKca","vColAmklW6FcM0WUuKC","W7BdISk6hCo5WRnPWQ4","W63dShnq","rHRdTr/cJSkqiHLXbmkTWQhdQq","rZaji8oaW7FdVmkFACkr","mmk4yY8","W4lcJCktnG","v8ogW4yAedib","W47cPSk/WPNcKCkhW57cRW","WPtcNmkKyq","fCk5W4tNMAVNM7NLVy3LPjFOTQtVVktORBy","avBdNMn5","WQrXW5CBcSoKfmkqvMC","fmktWO5orMHqWPdcTmkZafO9W7S","Dxea","WRjNWR7dNmkNnNddM1FdGa","WOtdMLhcVX1/cJu","WRzNW4yBdmoHh8kFtui","eSkpACosW5NcTuNdTq","WOxdQGdcNCkLWRxcHCkR","uSoAACoP","zH8z","W4JcI8kwpCkVWPm","WQxdL0hcUb1zda","WOyID8kY","ySoHt8km","WOOICa","DSoHW6yYmW","W51jW4xcNZHQkmkQ","duBdPfq","WRicumkuWRy","WPxcHmo1qb9qAIFdVq","Fa9CW6n4","WPySumkNnHbKW4i","W43dKSoLqHOFD8kjW6xcHa","W61jxmksWQ8UaSk1nru","WP4RW6O","WRe6lmo6","rZODsCkt","WRXxmW","feVcRs3cKa","t8kimmk1W6BdICkhWPFdSNfQ","mmkQmcxcKqv/h8klla","WPpdNuFcOXrfgt3dRYe","CgVcP8kUAa","zqddVM/dTmkkxfG","W6FcRSk3","mu3cLmk6h8kvoa","luFcLb8","frjfW4BdLq","W4/dGYhcGCk8ACoPWP7dVM4","W7ZdPgLNWOeEgrtcQN4","W7JdKSoZCCowWOG","W5/dOfCS","W4dcLCkBWQtcSq","WOFdRH/cT8kHWRpcHq","W6RdRgTDWP8EbWi","WRL7zW","rKxcV1rFWRnwW7lcUmkH","fCoxB8oW","WQ3dNYFcMSkk","WQZdJgVcJba","lmkIDW","CLJcM8kZwSop","emoCAmoJWQpdLG","xmokWP/dN8o2","W5xdIaBcSmkRWQ3cLmoShJa","B30HWPFcGG","W6ZcUSkrd8kE","W7HiW4dcIdj+pCk/WRrH","WRtdNHNcPmkb","iCkJDdxcPmopWR0","gh7cK0/dJW","svtcM8oIgSkCk8o1W5/dLq","W7qMWPzNvSkGsmk2AMxcKSouwa","55QY5B2W6l6y5P+x77Yp6yE+5Pw055QJ5B6Y","WRS7iCoR","W73dHmoCzmoqWOhdLq","swNdHbuEW6PxWRhdQ8oG","W7ZdRNzuWOa","Dq5/","BmkAWRLFsSk7","hmk7W4tcGmk3DwddRhNdG8oV","WPSnCSkvWReUcmkdna","tmonW58c","tNSWWRxcPSkVW7JcRX3dIG","heNdSun8","etvIW6JdPSkjW6/cSW","gM3cSZNcI3pdVL3cJLq","imkIuZRcRczxxmoCmW","WOBdVW/cTSkXWRm","FYZdIetdUG","WQr8q8kNWOS","WPfGW7i2iG","WO7cGSkHFaC","h8kskb4","W5hcI8k2aCoAWRqHWRKkEq","WQ7cM8k3Ca","WRq6WPjTvSoJg8ksf2u","qCoABSkXW6hcNvCTyG","W4fkW7ZcQdO","zW96W7THcW","W63dN8kLWRq","BSkzW6vDq8kTW7SYW6xcTq","W63dQ2nkWP4wdG","l8oRA8o2WPu","wSopBW","W4/cKSkt","WORdKghcQre2mtq","WPhdRuZcTJK","W6FcSSkqhCk0","WReRySkHisL9W4e","W7K1W47dGYO","CmknWQPLsa","WOrFWOxdSayluLeolW","geBcPeldHCoSDG","WRm7BCkQkG","vSo4WPldH8k/txldHWxcUq","WOiaCCkhWPyM","d8orz8o2WRldTCkdWQC","kmkeqt7cMG","CLCpWQZcSv07WOO","W6ZdJMBcQgXTCw8","WQigB8kNWR4HdW","bSkKFclcHCohWRtdVq","WPSGpxBdTI1SWOS","sSooWPNdLCoO","ELJcVSkYwG","W6HoW5BcQdXcjq","DmkAaCk9W7SFW5RdGMvN","W5ddJfGooq","WOzVsmkKWRu","WPdcHCo5iL4hfwBdLwBdTupdQmoM","W4ddR1RdGmo9mmoOW5JcRcO","WQ0cEmocWPGNbmkjp14","p8oiW6SyhSk7W5OrW5dcP8os","gt9L","eXWaiSoB","ACoAurpcKG","yCo6Cq","W4BdGCkV","WPCbFmkqWROsemkg","W6boW5zgmGuwmW","W51fW4hcUJa","WP/dKSome8kiWQhcJSkXaW","sWmrWRzN","W63dTMq","WOekr8kLWQ0","EmknWRvqxW","WRuWpmomWQZdL8odW7fCbq","WR3dQCk+WQ4aW4TTW7ZcVwi","W7tdH1GOfG","WR9Rz8o1","qmksWR5fASkMW7SV","WQXDoSkR","W6RdQwzm","WP46W6ZcRCkYWRG","WOqLW7VdPmkBWRRcKY1rW5i","CLJcJCkmtq","z8oVBchcKaPPfCk4pG","WPPXzmoZhSk0W6fWWQKo","xLe6rdDw","ErWxWRzp","W57dT0ncWR4","W4BdVCk0wrm","emkjxmoaW5S","Eav8","WOKVW6RcPq","AreDWR1pW7hdPmk+n8os","nan5W4FdNG","W68Of8oWW4yDW54NW6FdSrjA"];return aL=function(){return t},aL()}function Fnr(t){let e=_t,r={TEimZ:function(n,s){return n(s)},NBOIV:function(n,s){return n(s)},YmnKA:function(n,s){return n||s},IYKQW:e(608,"^oo)")};try{return r[e(694,"GBUh")](encodeURIComponent,r[e(449,"u^kX")](String,r[e(763,"KVv4")](t,"")))[e(652,"1g%Z")](/\*/g,r[e(618,"Nh71")])}catch{return""}}function Unr(t,e=!1){let r=_t,n={YAFgI:function(s,i){return s===i},LJOxI:r(690,"Z3]t"),deKft:function(s,i){return s===i},NTyKz:r(538,"pd]6"),zlEdo:r(622,"aL3e"),XTIXN:r(522,"(Uhe"),fwZom:r(601,"Vk8Z"),orlJM:r(877,"KVv4")};if(n[r(714,"1Jsl")](typeof t,n[r(829,"(Uhe")]))return t;if(n[r(509,"Bc2A")](typeof t,n[r(656,"^oo)")])){let s=t[r(812,"spAe")]()[r(839,"iq9T")+"e"]();if(["1",n[r(704,"KEzV")],n[r(442,"!kc1")],"on"][r(696,"[U(&")](s))return!0;if(["0",n[r(875,"gIJp")],"no",n[r(443,"PBWo")]][r(469,"1g%Z")](s))return!1}return e}var FV=(t,e)=>t?t+"/"+e:e,qV,jV={};function Il(t,e){let r=aL();return Il=function(n,s){n=n-(2*-3329+13*-430+12645);let i=r[n];if(Il.fOcFCk===void 0){var a=function(d){let f="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=",p="",m="";for(let h=0,A,g,b=0;g=d.charAt(b++);~g&&(A=h%4?A*64+g:g,h++%4)?p+=String.fromCharCode(255&A>>(-2*h&6)):0)g=f.indexOf(g);for(let h=0,A=p.length;h{let e=_t;qV=t[e(865,"GvrG")].db,jV=await qV[e(553,"GvrG")+e(463,"7HAV")](e(429,"Bc2A"),{})},HV=class{constructor(){let e=_t,r={sVuHs:e(744,"Nh71")},n=r[e(738,"4jZl")][e(764,"xhg1")]("|"),s=-1054*4+-8*-982+-28*130;for(;;){switch(n[s++]){case"0":this[e(489,"7%IF")]=nb+(e(440,"Pqls")+e(647,"pd]6"));continue;case"1":this[e(474,"EBu[")]=/https:\/\/(?:www\.)?(123684\.com|123865\.com|123912\.com|123pan\.com|123pan\.cn|123592\.com)\/s\/([^/?#]+)/;continue;case"2":this[e(691,"7HAV")]=/https:\/\/[^/?#]+\.share\.(?:123684\.com|123865\.com|123912\.com|123pan\.com|123pan\.cn|123592\.com)\/123pan\/([^/?#]+)/;continue;case"3":this[e(726,"EBu[")]="";continue;case"4":this[e(674,"KVv4")]=f6e+(e(603,"Z3]t")+e(584,"@GrP"));continue}break}}async[_t(458,"xFMZ")](){let e=_t,r={CLvLa:e(900,"1Jsl"),ZicMv:e(838,"#cY9"),pLofW:function(n,s){return n(s)},cfbce:function(n,s){return n>s},oawKF:function(n,s){return n/s},VEHKq:e(663,"xhg1"),BXkWx:e(457,"Vk8Z"),yxhUH:e(894,"$K(D")};if(this[e(728,"Z#jd")]&&console[e(698,"PBWo")](r[e(776,"n#dP")]),this[e(644,"1Jsl")]&&console[e(548,"x&B#")](r[e(805,"Nh71")]),this[e(597,"spAe")]){let n=r[e(874,"xhg1")](Mnr,this[e(910,"n$nf")]);r[e(686,"pd]6")](n?.[e(595,"sVp(")]||0,Math[e(880,"7HAV")](r[e(862,"jJi*")](Date[e(819,"iq9T")](),2455*3+1*-1153+-5212)))?console[e(896,"Nh71")](r[e(869,"Vk8Z")]):(console[e(444,"2CNl")](r[e(450,"7%IF")]),await this[e(914,"7%IF")]())}else console[e(403,"gIJp")](r[e(575,"n#dP")]),await this[e(779,"1g%Z")]()}get[_t(615,"Nh71")](){let e=_t,r={iCjft:e(433,"n$nf")+"rt"};return oC[e(752,"4jZl")](r[e(422,"Z#jd")])}get[_t(635,"[U(&")](){let e=_t,r={IPjER:e(702,"2CNl")+"rd"};return oC[e(571,"$ac(")](r[e(492,"7%IF")])}get[_t(705,"1g%Z")](){let e=_t,r={mIDBF:e(602,"7HAV")};return oC[e(800,"jJi*")](r[e(431,"1g%Z")])}get[_t(399,"2iTo")+_t(855,"aL3e")](){let e=_t,r={RtQiG:function(n,s,i){return n(s,i)},NTUmg:e(893,"PBWo")+e(465,"[U(&")};return r[e(475,"2iTo")](Unr,oC[e(439,"xhg1")](r[e(759,"1g%Z")]),!0)}async[_t(435,"0j^Z")](){let e=_t,r={AGDYf:e(430,"Z#jd"),nVRzF:e(681,"PBWo")+e(567,"1Jsl")+e(460,"Pqls")+e(826,"jJi*")+e(816,"$ac(")+e(791,"(Uhe")+e(740,"3Ga)")+e(539,"pd]6")+e(532,"zTXO")+e(753,"Pqls")+e(578,"pd]6")+"6",cCfLZ:e(772,"xhg1")+e(814,"KEzV"),lexXc:function(a,o){return a(o)},XxHPO:function(a,o){return a(o)},mxzMo:e(519,"$ac("),gHuCz:e(918,"KEzV")+e(734,"EBu[")+"\u914D\u7F6E",PjAqp:e(401,"!kc1")};if(!this[e(904,"pd]6")]||!this[e(867,"Nh71")])return;let n=JSON[e(481,"sVp(")]({passport:this[e(832,"2CNl")],password:this[e(676,"GBUh")],remember:!0}),s={method:r[e(773,"8rP)")],url:this[e(670,"4jZl")],headers:{"User-Agent":r[e(426,"Bc2A")],"Content-Type":r[e(512,"0j^Z")],"App-Version":"43",Referer:f6e+(e(795,"KEzV")+e(804,"dfe3")+e(654,"xFMZ"))+r[e(540,"Bc2A")](encodeURIComponent,nb)+(e(882,"q5v@")+e(485,"7HAV"))},data:n},i=(await Ae[e(437,"!kc1")](s))[e(406,"sI6$")];if(!i?.[e(558,"2iTo")]?.[e(701,"8rP)")]){r[e(605,"Z3]t")](messageToDart,{action:r[e(695,"q5v@")],opt:{message:r[e(546,"dfe3")],duration:5}});return}oC[e(418,"pd]6")](r[e(614,"EBu[")],i[e(719,"[g$U")][e(672,"3Ga)")])}[_t(541,"spAe")+"ta"](e){let r=_t,n={WxhAO:function(c,u){return c(u)},EcZGr:function(c,u){return c||u},hIQyQ:function(c,u){return c>u},sRPqH:function(c,u){return c+u},yNima:function(c,u){return c(u)}},s=n[r(827,"0j^Z")](decodeURIComponent,n[r(529,"[U(&")](e,"")[r(700,"Nh71")]());s=s[r(757,"[g$U")](/[#.,,/\s]+$/,""),this[r(523,"[U(&")]="";let i=s[r(497,"n#dP")]("?");if(n[r(685,"7%IF")](i,-4088+28*146)){let c=s[r(544,"gIJp")](n[r(787,"8rP)")](i,1)),u=c[r(769,"^oo)")](/(?:^|&)pwd=([^&]+)/i);this[r(846,"8#fg")]=u?n[r(887,"3Ga)")](decodeURIComponent,u[1705+-94*14+1*-388]):""}let a=this[r(841,"iq9T")][r(561,"KVv4")](s);if(a)return n[r(502,"2CNl")](a[3209*-3+-1*2417+12046][r(715,"(Uhe")]("?"),3394*1+-23*307+193*19)?a[-1*-7554+-2889+-4663][r(883,"#cY9")]("?")[8818*1+5*-955+-4043]:a[9146+-29*-13+-9521];let o=this[r(565,"dfe3")][r(536,"Vk8Z")](s);return o?o[15116+-5*3023]:null}async[_t(797,"jJi*")+_t(398,"@GrP")](e){let r=_t,n={fDZHm:function(o,c){return o in c},AsocM:function(o,c){return o>c},hqNVV:function(o,c){return o(c)},GHfju:function(o,c){return o>c},xVTwy:function(o,c){return o===c}},s={},i=[],a=await this[r(630,"#cY9")+"st"](e,this[r(503,"u^kX")],-523*-12+-3*2677+-45*-39,0,i,"");if(a&&n[r(533,"0j^Z")](a[r(626,"2iTo")],-1*-4511+-107*4+-1361*3)&&(s[r(843,"7%IF")]=a),n[r(606,"^oo)")](i[r(543,"KVv4")],-9378+-1*2494+11872)){let o=await Promise[r(850,"4jZl")](i[r(568,"$K(D")](async c=>{let u=r;return this[u(908,"sVp(")+"fo"](c[u(501,"$K(D")],c[u(493,"sI6$")],0,c[u(404,"7%IF")],c[u(853,"(Uhe")])}));o=o[r(723,"7HAV")](c=>c!=null),i=[...i,...o[r(537,"n$nf")]()]}i&&Array[r(554,"7HAV")](i)&&await Promise[r(850,"4jZl")](i[r(557,"#cY9")](async o=>{let c=r,u=o[c(591,"0j^Z")]||o[c(438,"n$nf")];!n[c(739,"GBUh")](u,s)&&(s[u]=[]);let l=await this[c(712,"1g%Z")+"st"](o[c(863,"8#fg")],o[c(788,"0j^Z")],4*1712+2*4649+-16146,o[c(660,"n#dP")]);l&&n[c(527,"gIJp")](l[c(445,"Bc2A")],-1647+183*9)&&s[u][c(484,"zTXO")](...l)}));for(let o in s)n[r(866,"xFMZ")](s[o][r(434,"GBUh")],-1*5153+-1*-9757+-1*4604)&&delete s[o];return Object[r(782,"pd]6")](s)[r(716,"1g%Z")](o=>{let c=r;s[o]=s[o][c(813,"7WHS")](u=>{let l=c;return{vod_id:[u[l(410,"8#fg")],u[l(891,"1g%Z")],u[l(876,"[U(&")],u[l(579,"iq9T")],u[l(564,"spAe")],n[l(919,"Pqls")](Fnr,u[l(860,"3Ga)")+"l"]||"")][l(854,"@GrP")]("*"),vod_name:u[l(638,"q5v@")],vod_size:u[l(479,"[g$U")]}})}),s}async[_t(836,"Pqls")+"fo"](e,r,n,s,i){let a=_t,o={rXUgI:function(A,g){return A===g},kLeei:function(A,g,b){return A(g,b)},PRMGR:function(A,g){return A||g},ywmif:function(A,g){return A||g},OkXEg:function(A,g){return A??g},iVShr:function(A,g){return A+g},SdeWm:a(682,"iq9T"),vkMvi:a(901,"EBu["),ZZPxq:a(817,"sI6$"),wWGyK:a(722,"$K(D"),yqrOn:function(A,g){return A(g)},drBqh:function(A,g){return A!==g},EiulN:function(A,g){return A>=g}},c=[],u=o[a(482,"8#fg")](n,0),l=-5060+117*-9+2038*3,d=new Set,f=new Set,p=A=>!(A==null||A===""||A===-9*-78+7862+-8564||A==="0"||A===-(8545*-1+-8641+17187)||A==="-1"),m=1*-2531+-2*4421+1639*7;for(;;){let A=l+"|"+u;if(d[a(765,"0j^Z")](A))break;d[a(886,"!kc1")](A);let g=await Ae[a(864,"Nh71")](o[a(454,"n#dP")](this[a(521,"spAe")],o[a(525,"8#fg")]),{headers:{},params:{limit:o[a(412,"[U(&")],next:u,orderBy:o[a(879,"EBu[")],orderDirection:o[a(803,"4jZl")],shareKey:e,SharePwd:r,ParentFileId:s,Page:o[a(495,"7HAV")](String,l)}});if(o[a(616,"GBUh")](g[a(472,"!kc1")],-6*-213+-127*-33+-1*5269))break;if(o[a(778,"spAe")](g[a(741,"xhg1")][a(419,"xFMZ")],832+-561*-14+-1*3583)){console[a(673,"sVp(")](g[a(675,"1Jsl")][a(566,"q5v@")]);break}let b=g[a(675,"1Jsl")][a(658,"Z#jd")];if(!b||!Array[a(639,"Z#jd")](b[a(535,"7HAV")]))break;b[a(808,"x&B#")][a(510,"8#fg")](x=>{let v=a;if(o[v(735,"dfe3")](x[v(709,"GBUh")],7*233+-569*-6+-1*5045)){let C=x[v(687,"Bc2A")]+"|"+o[v(689,"gIJp")](FV,o[v(902,"7HAV")](i,""),x[v(610,"!kc1")]);if(f[v(408,"sI6$")](C))return;f[v(659,"0j^Z")](C);let R=o[v(563,"sI6$")](FV,o[v(818,"EBu[")](i,""),x[v(916,"4jZl")]);c[v(619,"!kc1")]({filename:x[v(638,"q5v@")],shareKey:e,SharePwd:r,next:0,fileId:x[v(687,"Bc2A")],path:R})}});let y=b[a(580,"iq9T")];if(o[a(721,"Vk8Z")](p,y)){u=y;continue}if(Array[a(834,"x&B#")](b[a(583,"xhg1")])&&o[a(703,"KEzV")](b[a(909,"(Uhe")][a(446,"$K(D")],m)){l+=1727+1726*-1,u=2*-2932+14*197+3106;continue}if(!o[a(889,"GBUh")](p,y))break}let h=await Promise[a(732,"$K(D")](c[a(758,"8#fg")](async A=>this[a(908,"sVp(")+"fo"](e,r,-753+-1*-753,A[a(711,"2CNl")],A[a(730,"8rP)")])));return h=h[a(802,"spAe")](A=>A!=null),[...c,...h[a(842,"dfe3")]()]}async[_t(531,"xFMZ")+"st"](e,r,n,s,i=null,a=""){let o=_t,c={wcQEt:function(g,b){return g===b},SBPDB:function(g,b){return g(b)},CjMqD:function(g,b){return g===b},nYZtU:function(g,b,y){return g(b,y)},AEvNB:function(g,b){return g||b},cDUeZ:function(g,b){return g??b},nitLm:function(g,b){return g+b},QiNbC:o(770,"Z3]t"),HZHXn:o(760,"pd]6"),Qxnyn:o(585,"spAe"),EyKTY:o(786,"[U(&"),iPIaj:function(g,b){return g(b)},rZnpz:function(g,b){return g>=b},JvkNE:function(g,b){return g(b)}},u=[],l=c[o(642,"x&B#")](n,-2062*1+2196*1+-134),d=1,f=new Set,p=new Set,m=new Set,h=g=>!(g==null||g===""||g===-8884+-28*-80+6644||g==="0"||g===-(4*370+-13*71+4*-139)||g==="-1"),A=20*197+-4*916+-176;for(;;){let g=d+"|"+l;if(f[o(488,"sVp(")](g))break;f[o(899,"q5v@")](g);let b=(await Ae[o(731,"GBUh")](c[o(845,"Nh71")](this[o(570,"q5v@")],c[o(825,"n$nf")]),{headers:{},params:{limit:c[o(436,"4jZl")],next:l,orderBy:c[o(498,"sI6$")],orderDirection:c[o(613,"Nh71")],shareKey:e,SharePwd:r,ParentFileId:s,Page:c[o(473,"jJi*")](String,d)}}))[o(890,"PBWo")],y=b?.[o(577,"0j^Z")];if(!y||!Array[o(459,"GBUh")](y[o(490,"PBWo")]))break;y[o(427,"jJi*")][o(888,"4jZl")](v=>{let C=o;if(c[C(793,"sI6$")](v[C(524,"q5v@")],-1*2654+-5014+7670*1)){let R=v[C(718,"PBWo")]+"|"+v[C(844,"x&B#")];if(p[C(707,"gIJp")](R))return;p[C(518,"1g%Z")](R),u[C(913,"2CNl")]({ShareKey:e,FileId:v[C(500,"[U(&")],S3KeyFlag:v[C(755,"Z#jd")],Size:v[C(801,"^oo)")],Etag:v[C(751,"0j^Z")],FileName:v[C(671,"u^kX")],DownloadUrl:c[C(409,"Z3]t")](p6e,v[C(425,"@GrP")+"l"]||v[C(590,"Z3]t")+"L"])})}else if(c[C(766,"u^kX")](v[C(623,"KVv4")],1995+95*-21)&&Array[C(612,"8#fg")](i)){let R=c[C(761,"EBu[")](FV,c[C(767,"xhg1")](a,""),v[C(400,"Nh71")]),w=v[C(898,"Pqls")]+"|"+R;if(m[C(809,"1g%Z")](w))return;m[C(462,"x&B#")](w),i[C(684,"GvrG")]({filename:v[C(506,"2CNl")],shareKey:e,SharePwd:r,next:0,fileId:v[C(641,"KVv4")],path:R})}});let x=y[o(477,"aL3e")];if(c[o(520,"spAe")](h,x)){l=x;continue}if(Array[o(903,"1Jsl")](y[o(858,"sI6$")])&&c[o(620,"8rP)")](y[o(657,"0j^Z")][o(733,"Vk8Z")],A)){d+=-201*-31+2424*-3+1042,l=0;continue}if(!c[o(621,"0j^Z")](h,x))break}return u}[_t(872,"1Jsl")+_t(706,"iq9T")](){return{Referer:nb+"/"}}async[_t(920,"2iTo")+"d"](e,r,n,s,i,a=""){let o=_t,c={ZCgrN:function(p,m){return p(m)},PvlfF:function(p,m){return p(m)},vIZZn:o(407,"sVp("),xAhlt:o(815,"8rP)")+o(416,"[g$U")+o(736,"$ac(")+o(594,"(Uhe")+o(828,"sVp(")+o(737,"xFMZ")+o(471,"spAe")+o(748,"dfe3")+o(627,"dfe3")+o(785,"8#fg")+o(807,"2iTo")+"6",DoYwL:o(798,"sI6$")+o(587,"Vk8Z")+o(499,"KEzV"),tkTzc:o(486,"n$nf")},u=c[o(754,"7WHS")](p6e,c[o(513,"EBu[")]($nr,a));if(u&&this[o(790,"sVp(")+o(624,"gIJp")])return u;await this[o(917,"[g$U")]();let l=JSON[o(692,"Nh71")]({ShareKey:e,FileID:r,S3KeyFlag:n,Size:s,Etag:i}),d={method:c[o(637,"!kc1")],url:this[o(664,"KVv4")]+(o(852,"jJi*")+o(668,"!kc1")),headers:{"User-Agent":c[o(447,"KEzV")],Authorization:o(780,"EBu[")+this[o(906,"$K(D")],"Content-Type":c[o(547,"Nh71")],platform:c[o(724,"x&B#")]},data:l},f=(await Ae[o(649,"xhg1")](d))[o(669,"jJi*")][o(871,"Nh71")];return c[o(873,"1Jsl")](Wnr,f[o(542,"xhg1")+"L"])}async[_t(783,"7WHS")+_t(762,"1g%Z")](e,r,n,s,i){let a=_t,o={NaIOQ:function(d,f){return d!==f},ZJDyl:a(922,"KVv4"),nEnfj:a(815,"8rP)")+a(424,"spAe")+a(648,"2CNl")+a(455,"Bc2A")+a(417,"[U(&")+a(806,"7HAV")+a(596,"n$nf")+a(516,"[U(&")+a(448,"!kc1")+a(837,"GBUh")+a(774,"spAe")+"6",HLHxd:a(617,"8#fg")+a(628,"jJi*")+a(662,"jJi*"),eQFiV:a(677,"aL3e")};await this[a(441,"$K(D")]();let c={method:o[a(720,"aL3e")],url:nb+(a(515,"1Jsl")+a(562,"[g$U")+"fo"),headers:{"User-Agent":o[a(508,"KEzV")],Authorization:a(708,"1Jsl")+this[a(861,"2CNl")],"Content-Type":o[a(559,"iq9T")],platform:o[a(747,"7%IF")]},params:{etag:i,size:s,from:"1",shareKey:e}},u=(await Ae[a(405,"@GrP")](c))[a(823,"$K(D")][a(870,"aL3e")][a(451,"8#fg")+a(555,"dfe3")],l=[];return u[a(771,"Bc2A")](d=>{let f=a;o[f(640,"zTXO")](d[f(421,"Vk8Z")],"")&&l[f(651,"(Uhe")]({name:d[f(713,"sI6$")],url:d[f(653,"7WHS")]})}),l}async[_t(470,"Z#jd")+_t(598,"x&B#")](e="0"){let r=_t,n={lkDkR:r(643,"@GrP")+r(750,"$ac(")+r(432,"1Jsl")+r(667,"1Jsl")+r(849,"dfe3")+r(884,"xhg1")+r(833,"1g%Z")+r(539,"pd]6")+r(912,"$ac(")+r(881,"sI6$")+r(774,"spAe")+r(467,"1g%Z")+r(792,"4jZl")+"2",azyYJ:r(631,"1Jsl"),RrDzO:r(799,"GvrG"),LVIHx:r(528,"n$nf"),vJAGT:function(i,a){return i(a)},inUyB:function(i,a){return i||a},oQkPG:r(699,"Pqls"),PhfPj:r(607,"xhg1")+"le"};return await this[r(683,"@GrP")](),(await Ae[r(749,"0j^Z")](nb+(r(646,"GBUh")+r(397,"#cY9")),{headers:{"User-Agent":n[r(717,"dfe3")],Authorization:r(556,"4jZl")+this[r(861,"2CNl")]},params:{driveId:"0",limit:n[r(830,"$ac(")],next:"0",orderBy:n[r(545,"n$nf")],orderDirection:n[r(831,"Z#jd")],parentFileId:n[r(611,"!kc1")](String,n[r(756,"Nh71")](e,"0")),trashed:n[r(907,"3Ga)")],SearchData:"",Page:"1",OnlyLookAbnormalFile:"0",event:n[r(885,"KEzV")],operateType:"1",inDirectSpace:n[r(609,"8rP)")]}}))[r(848,"[U(&")]}async[_t(574,"jJi*")+_t(428,"4jZl")](e,r,n,s,i=""){let a=_t,o={ppSWW:a(811,"jJi*"),NSOMt:a(496,"3Ga)")+a(576,"7WHS"),AUwfE:a(633,"^oo)")+a(478,"(Uhe")+a(745,"KVv4"),heGjz:a(453,"2CNl")};await this[a(466,"Z3]t")]();let c=JSON[a(822,"7WHS")]({driveId:0,FileName:i,FileID:e,S3KeyFlag:r,Size:n,Etag:s}),u={method:o[a(746,"7HAV")],url:nb+(a(655,"spAe")+a(781,"xFMZ")+a(868,"Pqls")),headers:{"User-Agent":o[a(582,"KEzV")],Authorization:a(599,"[U(&")+this[a(534,"xhg1")],"Content-Type":o[a(452,"!kc1")],platform:o[a(414,"x&B#")]},data:c},l=await Ae[a(859,"n$nf")](u);return l?.[a(688,"dfe3")]?.[a(661,"8#fg")]?.[a(573,"[U(&")+"l"]||l?.[a(411,"Pqls")]?.[a(549,"pd]6")]?.[a(645,"(Uhe")+"L"]||""}},O0=new HV;var h6e=Re(v0(),1),cC=Re(Jn(),1);var QV="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",Vh={NEW:"NEW",SCANNED:"SCANNED",CONFIRMED:"CONFIRMED",EXPIRED:"EXPIRED",CANCELED:"CANCELED"},m6e={encode(t,e=3e5){let r={data:t,expireTime:Date.now()+e};return Buffer.from(JSON.stringify(r)).toString("base64url")},decode(t){try{if(!t)return null;let e=JSON.parse(Buffer.from(t,"base64url").toString());return Date.now()>e.expireTime?null:e.data}catch{return null}}},GV=async t=>{let e=cC.default.enc.Hex.stringify(cC.default.MD5(t.config.y115.cookie)).toString();return(await t.db.getObjectDefault("/y115",{}))[e]??""},qnr=async(t,e)=>{let r=cC.default.enc.Hex.stringify(cC.default.MD5(t.config.y115.cookie)).toString();await t.db.push(`/y115/${r}`,e)};async function VV(t){t.get("/qrcode",async(e,r)=>{try{let s=(await Ae.get("https://qrcodeapi.115.com/api/1.0/web/1.0/token",{headers:{"User-Agent":QV,referer:"https://115.com/"}})).data.data,i=m6e.encode({sign:s.sign,time:s.time,uid:s.uid}),a=await h6e.default.toBuffer(s.qrcode,{width:300,height:300});r.header("X-Session-Key",i),r.send(a)}catch(n){console.error("115\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25:",n),r.status(500).send({code:-1,message:"\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25"})}}),t.post("/check-status",async(e,r)=>{let{sessionKey:n}=e.body,s=m6e.decode(n);if(!s)return r.send({code:0,data:{status:Vh.EXPIRED}});let{sign:i,time:a,uid:o}=s;try{let u=(await Ae.get(`https://qrcodeapi.115.com/get/status/?_=${parseInt(Date.now()/1e3)}&sign=${i}&time=${a}&uid=${o}`,{headers:{"User-Agent":QV,referer:"https://115.com/"}})).data.data?.status;if(u===2){let l=new URLSearchParams({account:o,app:"android"}),d=await Ae.post("https://passportapi.115.com/app/1.0/android/1.0/login/qrcode",l,{headers:{"User-Agent":QV,referer:"https://115.com/"}});if(d.data.state===1){let f=hl(d.headers["set-cookie"]).join("");r.send({code:0,data:{status:Vh.CONFIRMED,cookie:f}})}else r.send({code:0,data:{status:Vh.NEW}})}else u===1?r.send({code:0,data:{status:Vh.SCANNED}}):u===-1||u===-2?r.send({code:0,data:{status:Vh.EXPIRED}}):r.send({code:0,data:{status:Vh.NEW}})}catch(c){console.error("115\u72B6\u6001\u68C0\u67E5\u5931\u8D25:",c),r.send({code:0,data:{status:Vh.NEW}})}}),t.post("/cookie",(e,r)=>{r.send({code:-1,message:"\u8BF7\u4F7F\u7528 /check-status \u63A5\u53E3"})}),t.get("/cookie",async(e,r)=>{r.send({code:0,data:await GV(e.server)})}),t.put("/cookie",async(e,r)=>{await qnr(e.server,e.body.cookie),r.send({code:0})})}var x6e="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",XV="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36",b6e="4.8.2",YV="OFFLINE$",E6e=15e3,_6e=1e3,zV=async t=>globalThis.getPanName?await globalThis.getPanName(t):t;function S6e(t){let r=/https:\/\/(?:115|anxia|115cdn)\.com\/s\/([a-zA-Z0-9]+)\?password=([a-zA-Z0-9]+)/.exec(t);return r?{shareCode:r[1],receiveCode:r[2]}:null}function v6e(t){let e=String(t||"").trim();return/^(?:magnet:\?|ed2k:\/\/)/i.test(e)?!0:/^https?:\/\//i.test(e)&&!S6e(e)}function C6e(t){return["mp4","webm","avi","wmv","flv","mov","mkv","mpeg","3gp","ts","m2ts","mp3","wav","aac","iso"].includes(String(t||"").slice(String(t||"").lastIndexOf(".")+1).toLowerCase())}function KV(t){return t?typeof t=="string"?t.trim():JSON.stringify(t):""}async function P0(t){let e=KV(t?.config?.y115?.cookie||"");if(e)return e;let r=t?.config?.y115?KV(await GV(t)):"";if(r)return r;let n=await t.db.getObjectDefault("/y115",{}),s=n.cookie||Object.values(n).find(i=>typeof i=="string"&&i.trim())||"";return KV(s)}function jnr(t){return(Array.isArray(t)?t:[t]).map(r=>String(r||"").split(";")[0].trim()).filter(Boolean).join("; ")}function Sc(t,e=null){let r=e?` ${JSON.stringify(e)}`:"";console.log(`[115-offline] ${t}${r}`)}function ZV(t,e=180){let r=String(t??"");return r.length>e?`${r.slice(0,e)}...`:r}function JV(t,e=0){if(t==null)return t;if(e>3)return Array.isArray(t)?`[Array(${t.length})]`:typeof t=="object"?`[Object(${Object.keys(t).join(",")})]`:t;if(Array.isArray(t))return t.slice(0,3).map(r=>JV(r,e+1));if(typeof t=="object"){let r={};for(let[n,s]of Object.entries(t))/cookie|token|auth|sign|secret/i.test(n)?r[n]="[masked]":/url/i.test(n)&&typeof s=="string"?r[n]=s?`[url:${s.length}]`:"":r[n]=JV(s,e+1);return r}return typeof t=="string"?ZV(t):t}function I6e(t){return{Cookie:t,"User-Agent":XV,"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json, text/plain, */*","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Referer:"https://115.com/",Origin:"https://115.com"}}function Hnr(t){let e=String(t?.url||t?.source_url||t?.source||t?.info_hash||"").trim(),r=String(t?.pick_code||t?.pickcode||t?.pc||t?.file_pick_code||"").trim();return{id:String(t?.id||t?.info_hash||t?.hash||t?.url||"").trim(),name:String(t?.name||t?.file_name||t?.filename||"\u672A\u77E5").trim()||"\u672A\u77E5",status:Number(t?.status),progress:Number(t?.progress||t?.percentDone||0),pickCode:r,fileId:String(t?.file_id||t?.fid||"").trim(),sourceUrl:e,raw:t}}function Qnr(t){return(Array.isArray(t?.data)?t.data:Array.isArray(t?.data?.tasks)?t.data.tasks:Array.isArray(t?.tasks)?t.tasks:Array.isArray(t?.list)?t.list:[]).map(Hnr)}function T6e(t,e,r={}){let n=String(e||"").trim(),s=/btih:([^&]+)/i.exec(n)?.[1]?.toLowerCase()||"",i=Array.isArray(r?.result)?r.result[0]:null,a=String(r?.id||r?.data?.id||r?.task_id||r?.data?.task_id||i?.info_hash||"").trim();return!!(a&&t.id===a||t.sourceUrl&&t.sourceUrl===n||s&&JSON.stringify(t.raw||{}).toLowerCase().includes(s))}function ez(t,e=0){if(!t||e>6||typeof t!="object")return"";for(let r of["pick_code","pickcode","pc","file_pick_code"]){let n=String(t[r]||"").trim();if(n)return n}for(let r of Object.values(t)){let n=ez(r,e+1);if(n)return n}return""}function w6e(t){return new Promise(e=>setTimeout(e,t))}function R6e(t,e=""){let r=String(t?.n||t?.name||t?.file_name||"").trim(),n=String(t?.pc||t?.pick_code||t?.pickcode||"").trim();return!r||!n||!C6e(r)?null:{vod_id:n,vod_name:r,vod_size:Number(t?.s||t?.size||0),vod_group:e}}async function Gnr(t,e){let r=await P0(t);if(!r||!e)return[];let n=await Ae.get("https://webapi.115.com/files",{params:{aid:1,cid:e,o:"user_ptime",asc:0,offset:0,show_dir:1,limit:115,code:"",scid:"",snap:0,natsort:1,record_open_time:1,source:"",format:"json"},headers:{Cookie:r,"User-Agent":x6e,Referer:"https://webapi.115.com/bridge_2.0.html?namespace=Core.DataAccess&api=UDataAPI&_t=v5",Origin:"https://115.com","X-Requested-With":"XMLHttpRequest"},validateStatus:null});return Array.isArray(n.data?.data)?n.data.data:[]}async function N6e(t,e,r="",n=0){if(!e||n>5)return[];let s=await Gnr(t,e),i=[];for(let a of s){if(Number(a?.fc)===1){let o=R6e(a,r);o&&i.push(o);continue}if(Number(a?.fc)===0){let o=String(a?.cid||a?.fid||"").trim(),c=String(a?.n||a?.name||"").trim(),u=c?r?`${r}/${c}`:c:r;i.push(...await N6e(t,o,u,n+1))}}return i}async function Vnr(t,e){let r=await P0(t),n=String(e||"").trim();if(!r||!n)return[];let s=await Ae.get("https://webapi.115.com/files/search",{params:{search_value:n,type:4,offset:0,limit:20,date:"",aid:1,cid:0,pick_code:"",source:"",format:"json"},headers:{Cookie:r,"User-Agent":XV,Referer:"https://115.com/",Origin:"https://115.com",Accept:"application/json, text/plain, */*"},validateStatus:null});return Array.isArray(s.data?.data)?s.data.data:[]}async function znr(t,e){let r=await D6e(t,e);if(r.length>0)return r[0].vod_id;if(!e?.raw)return"";let n=e.raw;return String(n.file_id||n.delete_file_id||e.fileId||"").trim()?"":e.pickCode||ez(n)}function Knr(t){return t?.errcode===10008||t?.result?.some?.(e=>e?.errcode===10008)}function O6e(t){return(t?.state===!1||t?.errno)&&!Knr(t)}function P6e(t){return t?.message||t?.msg||t?.error_msg||t?.error||"115 \u79BB\u7EBF\u4EFB\u52A1\u63D0\u4EA4\u5931\u8D25"}function Ynr(t){return t?.server||t||null}async function D6e(t,e){if(!e?.raw)return[];let r=e.raw,n=String(r.file_id||r.delete_file_id||e.fileId||"").trim();if(n){let o=await N6e(t,n);if(Sc("\u79BB\u7EBF\u76EE\u5F55\u626B\u63CF",{cid:n,count:o.length,selected:o[0]?.vod_name||"",hasPickCode:!!o[0]?.vod_id}),o.length>0)return o}let s=String(r.name||e.name||"").replace(/\.[^.]+$/,"").trim(),i=await Vnr(t,s),a=i.map(o=>R6e(o)).filter(Boolean).sort((o,c)=>Number(c.vod_size||0)-Number(o.vod_size||0));return Sc("\u79BB\u7EBF\u6587\u4EF6\u641C\u7D22",{keyword:ZV(s,80),count:i.length,selected:a[0]?.vod_name||"",hasPickCode:!!a[0]?.vod_id}),a}async function k6e(t,e="GET",r=null,n=null){try{let s=await Ae({url:t,method:e,headers:r||void 0,data:n,validateStatus:null});return{data:s.data,cookie:jnr(s.headers?.["set-cookie"]),headers:s.headers||{},status:s.status}}catch(s){throw s.response?s.response.data:s}}async function L6e(t,e){let r=await P0(t),n=String(e||"").trim();if(!r)return{state:!1,message:"115 Cookie \u7F3A\u5931"};if(!n)return{state:!1,message:"\u79BB\u7EBF\u94FE\u63A5\u4E3A\u7A7A"};let s=new URLSearchParams({"url[0]":n,wp_save_path:"0",appVer:b6e});Sc("\u63D0\u4EA4\u79BB\u7EBF\u4EFB\u52A1",{type:n.split(":")[0],length:n.length});let i=await k6e("https://115.com/web/lixian/?ct=lixian&ac=add_task_urls","POST",I6e(r),s.toString()),a=i.data||{};return Sc("\u63D0\u4EA4\u54CD\u5E94",{status:i.status,state:a?.state,message:a?.message||a?.msg||"",preview:ZV(typeof a=="string"?a:JSON.stringify(a))}),a}async function B6e(t){let e=await P0(t);if(!e)return[];let r=await Ae.get("https://115.com/web/lixian/?ct=lixian&ac=task_lists",{params:{page:1,limit:30,appVer:b6e},headers:I6e(e),validateStatus:null}),n=Qnr(r.data);return Sc("\u4EFB\u52A1\u5217\u8868",{status:r.status,count:n.length}),n}async function Jnr(t,e,r={},n={}){let s=Number(n.maxWaitMs||E6e),i=Number(n.intervalMs||_6e),a=Date.now(),o=null;for(;Date.now()-a<=s;){let c=await B6e(t),u=c.find(l=>T6e(l,e,r));if(u){o=u;let l=await znr(t,u)||u.pickCode||ez(u.raw);if(Sc("\u8F6E\u8BE2\u4EFB\u52A1",{name:u.name,status:u.status,progress:u.progress,hasPickCode:!!l}),l)return{pickCode:l,task:u}}else Sc("\u672A\u5339\u914D\u5F53\u524D\u79BB\u7EBF\u4EFB\u52A1",{count:c.length});await w6e(i)}return{pickCode:"",task:o}}async function g6e(t,e){let r=String(e||"").trim();if(!r)return{parse:0,url:"",msg:"115 \u79BB\u7EBF\u94FE\u63A5\u4E3A\u7A7A"};try{let n=await L6e(t,r);if(O6e(n))return{parse:0,url:"",msg:`115 \u79BB\u7EBF\u5931\u8D25: ${P6e(n)}`};let{pickCode:s,task:i}=await Jnr(t,r,n);return s?(Sc("\u83B7\u53D6\u5230 pickCode\uFF0C\u5F00\u59CB\u89E3\u6790\u76F4\u94FE",{pickCode:s}),await cL(t,s)):{parse:0,url:"",msg:`115 \u79BB\u7EBF\u4EFB\u52A1\u5DF2\u63D0\u4EA4\uFF0C\u4F46\u6682\u672A\u5B8C\u6210: ${i?`\u72B6\u6001 ${i.status}, \u8FDB\u5EA6 ${i.progress||0}%`:"\u672A\u627E\u5230\u4EFB\u52A1"}`}}catch(n){return{parse:0,url:"",msg:`115 \u79BB\u7EBF\u63A5\u53E3\u5F02\u5E38: ${n?.message||n}`}}}async function Xnr(t,e,r={}){let n=String(e||"").trim();if(!n)return[];let s=await L6e(t,n);if(O6e(s))return Sc("\u79BB\u7EBF\u8BE6\u60C5\u63D0\u4EA4\u5931\u8D25",{message:P6e(s)}),[];let i=Number(r.maxWaitMs||E6e),a=Number(r.intervalMs||_6e),o=Date.now();for(;Date.now()-o<=i;){let c=await B6e(t),u=c.find(l=>T6e(l,n,s));if(u){let l=await D6e(t,u);if(l.length>0)return l;Sc("\u79BB\u7EBF\u8BE6\u60C5\u6682\u672A\u53D1\u73B0\u5A92\u4F53\u6587\u4EF6",{name:u.name,status:u.status,progress:u.progress})}else Sc("\u79BB\u7EBF\u8BE6\u60C5\u672A\u5339\u914D\u5F53\u524D\u4EFB\u52A1",{count:c.length});await w6e(a)}return[]}var A6e=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]),M6e=0x8686980c0f5a24c4b9d43020cd2c22703ff3f450756529058b1cf88f09b8602136477198a6e2683149659bd122c33592fdb5ad47944ad1ea4d36c6b172aad6338c3bb6ac6227502d010993ac967d1aef00f0c8e038de2e4d3bc2ec368af2e9f10a6f1eda4f7262f136420c07c331b871bf139f74f3010e3c4fe57df3afb71683n,W6e=0x10001n;function $6e(t,e){e==null&&(e=Math.ceil(t.toString(16).length/2));let r=new Uint8Array(e);for(let n=e-1;n>=0;n--)r[n]=Number(t&0xffn),t>>=8n;return r}function F6e(t){let e=0n;for(let r of t)e=e<<8n|BigInt(r);return e}function*tz(t,e,r=1){for(let n=t+r;n>1n,t=t*t%r;return n}function tsr(t){(typeof t=="string"||t instanceof String)&&(t=new TextEncoder().encode(t));let e=new Uint8Array(16+t.length);e.set(oL(oL(t,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(e.length/117)*128),n=0;for(let[s,i]of tz(0,e.length,117))r.set($6e(U6e(esr(e.subarray(s,i)),W6e,M6e),128),n,n+=128);return Buffer.from(r).toString("base64")}function rsr(t){let e=new Uint8Array(Buffer.from(t,"base64")),r=[];for(let[i,a]of tz(0,e.length,128)){let o=U6e(F6e(e.subarray(i,a)),W6e,M6e),c=$6e(o);r.push(...c.subarray(c.indexOf(0)+1))}r=new Uint8Array(r);let n=Znr(r.subarray(0,16),12),s=oL(r.subarray(16),n).reverse();return new TextDecoder("utf-8").decode(oL(s,new Uint8Array([141,165,165,141])))}function nsr(t){return`data=${encodeURIComponent(tsr(JSON.stringify(t)))}`}function ssr(t){if(typeof t=="string")try{let e=JSON.parse(t);return{encrypted:typeof e?.data=="string"?e.data:typeof e?.data?.data=="string"?e.data.data:"",payload:e}}catch{return{encrypted:t,payload:null}}return t&&typeof t=="object"?{encrypted:typeof t.data=="string"?t.data:typeof t.data?.data=="string"?t.data.data:"",payload:t}:{encrypted:"",payload:t}}function isr(t){let{encrypted:e,payload:r}=ssr(t);if(!e)return r||{};try{return JSON.parse(rsr(e))}catch(n){if(r&&typeof r=="object")return r;throw n}}function q6e(t){if(!t||typeof t!="object")return"";if(typeof t.url=="string"&&t.url)return t.url;if(t.url&&typeof t.url.url=="string"&&t.url.url)return t.url.url;if(t.data&&typeof t.data.url=="string"&&t.data.url)return t.data.url;for(let e of Object.values(t)){if(!e||typeof e!="object")continue;let r=q6e(e);if(r)return r}return""}function j6e(t){if(!t||typeof t!="object")return"";for(let e of["msg","message","error"]){let r=t[e];if(typeof r=="string"&&r.trim())return r.trim()}for(let e of Object.values(t)){if(!e||typeof e!="object")continue;let r=j6e(e);if(r)return r}return""}async function H6e({cookie:t,apiUrl:e,payload:r,userAgent:n,requestReferer:s="",requestOrigin:i="",responseReferer:a=s}){let o=nsr(r),c={"Content-Type":"application/x-www-form-urlencoded","Content-Length":Buffer.byteLength(o),Cookie:t,"User-Agent":n};s&&(c.Referer=s),i&&(c.Origin=i);let u=await k6e(e,"POST",c,o),l=[t,u.cookie].filter(Boolean).join("; "),d=isr(u.data),f=q6e(d);if(!f){let p=j6e(d)||"\u672A\u53D1\u73B0\u4E0B\u8F7D\u94FE\u63A5";return Sc("\u76F4\u94FE\u54CD\u5E94\u65E0 URL",{api:e.includes("/share/")?"share":"own",message:p,decoded:JV(d)}),{parse:0,url:"",msg:`115 \u9650\u5236: ${p}`}}return{parse:0,url:f,header:{"User-Agent":n,...l?{Cookie:l}:{},...a?{Referer:a}:{}}}}async function cL(t,e){let r=await P0(t),n=String(e||"").trim();if(!r)return{parse:0,url:"",msg:"115 Cookie \u7F3A\u5931"};if(!n)return{parse:0,url:"",msg:"115 \u64AD\u653E\u53C2\u6570\u9519\u8BEF"};try{return await H6e({cookie:r,apiUrl:`https://proapi.115.com/app/chrome/downurl?t=${Math.floor(Date.now()/1e3)}`,payload:{pickcode:n},userAgent:x6e,requestReferer:"https://115.com/",requestOrigin:"https://115.com",responseReferer:"https://115.com/"})}catch(s){return{parse:0,url:"",msg:`115 \u63A5\u53E3\u5F02\u5E38: ${s?.message||s}`}}}async function asr({shareCode:t,receiveCode:e,dirID:r=""}){let n=[],s=(a,o)=>a?`${a}/${o}`:o,i=async(a,o)=>{let c=o||"",u=await Ae.get("https://webapi.115.com/share/snap",{params:{share_code:t,receive_code:e,cid:a,limit:"9999",offset:"0"}});if(!u.data.data)return[];let l=u.data.data.list.filter(f=>f.fc===1),d=u.data.data.list.filter(f=>f.fc===0);for(let f of l)C6e(f.n)&&n.push({...f,shareCode:t,receiveCode:e,vod_group:c});for(let f of d)await i(f.cid,s(c,f.n))};return await i(r,""),n}async function Q6e(t,e=null){if(v6e(t)){let s=Ynr(e);if(s){let i=await Xnr(s,t,{maxWaitMs:12e3});if(i.length>0)return Os(await zV("115"),i)}return{from:await zV("115"),url:`115\u79BB\u7EBF\u89E3\u6790\u4E2D$${YV}${t}`}}let r=S6e(t);if(!r)return{};let n=await asr(r);return n=n.map(s=>({vod_id:[r.shareCode,r.receiveCode,s.fid].join("*"),vod_name:s.n,vod_size:s.s,vod_group:s.vod_group})),Os(await zV("115"),n)}async function G6e(t){let e=String(t.body.id||"").trim();if(!e)return{parse:0,url:"",msg:"115 \u64AD\u653E\u53C2\u6570\u9519\u8BEF"};if(e.startsWith(YV)){let a=await g6e(t.server,e.slice(YV.length));return a.url?{parse:0,url:["\u539F\u753B",a.url],header:a.header}:a}if(v6e(e)){let a=await g6e(t.server,e);return a.url?{parse:0,url:["\u539F\u753B",a.url],header:a.header}:a}if(!e.includes("*"))return await cL(t.server,e);let r=await P0(t.server);if(!r)return{parse:0,url:"",msg:"\u8BF7\u5148\u5728\u914D\u7F6E\u4E2D\u586B\u5165115 Cookie"};let[n,s,i]=e.split("*");if(!n||!i)return{parse:0,url:"",msg:"115 \u5206\u4EAB\u53C2\u6570\u9519\u8BEF"};try{let a=await H6e({cookie:r,apiUrl:"http://pro.api.115.com/app/share/downurl",payload:{share_code:n,receive_code:s,file_id:i},userAgent:XV,responseReferer:"https://115.com/"});return a.url?{parse:0,url:["\u539F\u753B",a.url],header:a.header}:(a?.msg?.includes("\u767B\u5F55")&&typeof globalThis.messageToDart=="function"&&globalThis.messageToDart({action:"toast",opt:{message:"115\u76D8\u767B\u5F55\u5931\u8D25\uFF0C\u8BF7\u524D\u5F80\u3010\u914D\u7F6E\u3011\u7AD9\u6E90\u8FDB\u884C\u914D\u7F6E",duration:5}}),a)}catch(a){return{parse:0,url:"",msg:`115 \u63A5\u53E3\u5F02\u5E38: ${a?.message||a}`}}}var K6e=Re(nC(),1),rz=Re(Jn(),1);var csr=async t=>globalThis.getPanName?await globalThis.getPanName(t):t,V6e=t=>{if(!t)return"";let e=t.replaceAll("\\","/").split("/").filter(Boolean);return e.length<=1?"":(e.pop(),e.join("/"))},uL="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36",Y6e="netdisk;P2SP;2.2.91.136;android-android;",usr="netdisk",lsr="https://pan.baidu.com/",dsr="https://pan.baidu.com/disk/main",fsr=200,psr=t=>{try{return decodeURIComponent(String(t||""))}catch{return String(t||"")}},J6e=(t="",e=dsr)=>({"User-Agent":uL,Referer:e,Accept:"application/json, text/plain, */*",...t?{Cookie:t}:{}}),z6e=(t="",e=uL)=>({"User-Agent":e,Referer:lsr,...t?{Cookie:t}:{}}),msr=()=>({"User-Agent":usr}),nz,sz={},iz={set(t,e){sz[t]=e,nz.push(`/baidu/${t}`,e)},get(t){return sz[t]}},ib=async t=>{nz=t.server.db,sz=await nz.getObjectDefault("/baidu",{})};var az=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":uL,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.shareCookie=""}get cookie(){return iz.get("baidu_cookie")||""}async getSurl(e){this.link=e,this.shareCookie="";let r=this.regex.exec(e);r&&r[1]&&(this.surl=r[1],this.shorturl=this.surl.split("").slice(1).join(""),this.pwd=r[2]||"")}async getSign(){let e={...this.headers,cookie:this.shareCookie||this.cookie},r=await he.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:e});if(!r.data||!r.data.data||!r.data.data.sign)throw new Error(`\u83B7\u53D6sign\u5931\u8D25: ${JSON.stringify(r.data)}`);return r.data.data.sign}async getRandsk(){let e=K6e.default.stringify({pwd:this.pwd,vcode:"",vcode_str:""}),r=(await he.post(`${this.api}/share/verify?surl=${this.shorturl}&pwd=${this.pwd}`,e,{headers:{"User-Agent":uL,Referer:this.link}})).data.randsk;if(!r)return"";let n="BDCLND="+r,s=this.cookie.replace(/BDCLND=[^;]*;?\s*/g,"");return s.length>0&&!s.endsWith(";")&&(s+="; "),this.shareCookie=s+n,r}async getShareList(){await this.getRandsk(),this.headers.cookie=this.shareCookie||this.cookie;let e=(await he.get(`${this.api}/share/list?web=5&app_id=${this.app_id}&desc=1&showempty=0&page=1&num=20&order=time&shorturl=${this.shorturl}&root=1&view_mode=${this.view_mode}&channel=${this.channel}&web=1&clienttype=0`,{headers:this.headers})).data;if(e.errno===0&&e.list.length>0){let r={},n=[],s=[];this.uk=e.uk,this.shareid=e.share_id,iz.set(`baidu_share_${this.surl}`,{surl:this.surl,pwd:this.pwd,link:this.link,uk:this.uk,shareid:this.shareid}),e.list.map(a=>{if((a.category==="6"||a.category===6)&&n.push(a.path),a.category==="1"||a.category===1){let o=a.server_filename||a.path.split("/").pop(),c=V6e(a.path);s.push({vod_name:o,vod_group:c,vod_id:[a.path.replaceAll("#","\0"),this.uk,this.shareid,a.fs_id||a.fsid,this.surl].join("*"),vod_size:a.size})}}),!(e.title in r)&&e.title!==void 0&&(r[e.title]=[]),s.length>=0&&e.title!==void 0&&(r[e.title]=[...s]);let i=await Promise.all(n.map(async a=>this.getSharepath(a)));if(i=i.filter(a=>a!=null).flat(),i.length>=0){let a=i.map(o=>(o.vod_name&&o.vod_name.includes("/")&&(o.vod_name=o.vod_name.split("/").pop()),o));r[e.title].push(...a)}return r}}async getSharepath(e){await this.getRandsk(),this.headers.cookie=this.shareCookie||this.cookie;let r=(await he.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=1&num=100&dir=${encodeURIComponent(e)}&channel=${this.channel}&web=1&app_id=${this.app_id}`,{headers:this.headers})).data;if(r.errno===0&&r.list.length>0){let n=[],s=[];r.list.map(o=>{if((o.category==="6"||o.category===6)&&n.push(o.path),o.category==="1"||o.category===1){let c=o.server_filename||o.path.split("/").pop(),u=V6e(o.path);s.push({vod_name:c,vod_group:u,vod_id:[o.path.replaceAll("#","\0"),this.uk,this.shareid,o.fs_id||o.fsid,this.surl].join("*"),vod_size:o.size})}});let i=await Promise.all(n.map(async o=>this.getSharepath(o)));i=i.filter(o=>o!=null);let a=i.map(o=>(o.vod_name&&o.vod_name.includes("/")&&(o.vod_name=o.vod_name.split("/").pop()),o));return[...s,...a.flat()]}}sha1(e){return rz.default.SHA1(e).toString(rz.default.enc.Hex)}async getUid(){this.headers.cookie=this.shareCookie||this.cookie;let e=(await he.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})).data;if(e&&e.data&&e.data.fields&&e.data.fields.uid)return e.data.fields.uid;throw new Error("\u83B7\u53D6\u7528\u6237UID\u5931\u8D25: "+JSON.stringify(e))}async getShareUrl(e,r,n,s){e=e.replaceAll("\0","#");let i=await this.getSign(),a=[],o=Math.floor(new Date/1e3);return this.type.map(c=>{a.push({name:c.replace("M3U8_AUTO_",""),url:`${this.api}/share/streaming?channel=${this.channel}&uk=${r}&fid=${s}&sign=${i}×tamp=${o}&shareid=${n}&type=${c}&vip=0&jsToken&isplayer=1&check_blue=1&adToken`})}),a}async getAppShareUrl(e,r,n,s){e=e.replaceAll("\0","#");let i=await this.getRandsk(),a=await this.getUid(),o=Object.assign({},this.headers,{"User-Agent":Y6e}),c="73CED981D0F186D12BC18CAE1684FFD5|VSRCQTF6W",u=String(new Date().getTime()),l=this.sha1(this.sha1(this.cookie.match(/BDUSS=(.+?);/)[1])+a+"ebrcUYiuxaZv2XGu7KIYKxUrqfnOfpDF"+u+c+"11.30.2ae5821440fab5e1a61a025f014bd8972"),d=this.api+"/share/list?shareid="+n+"&uk="+r+"&fid="+s+"&sekey="+i+"&origin=dlna&devuid="+c+"&clienttype=1&channel=android_12_zhao_bd-netdisk_1024266h&version=11.30.2&time="+u+"&rand="+l,f=(await he.get(d,{headers:o})).data;if(f.errno===0&&f.list.length>0)return f.list[0].dlink}},Wn=new az;async function X6e(t,e){await ib(e),await Wn.getSurl(t);let r=await Wn.getShareList();if(!r)return null;let n=await csr("baidu"),s=[],i=[];return Object.keys(r).forEach(a=>{let o=Os(n,r[a]);o&&o.from&&o.url&&(s.push(o.from),i.push(o.url))}),s.length===0?null:{from:s.join("$$$"),url:i.join("$$$")}}async function Z6e(t,e="/",r=1){await ib(t);let n=Wn.cookie;if(!n)return{list:[],rawCount:0};let s=Number.parseInt(r,10)||1,i=String(e||"/"),a=(await he.get(`${Wn.api}/api/list?app_id=${Wn.app_id}&web=1&num=${fsr}&page=${s}&order=name&desc=0&dir=${encodeURIComponent(i)}`,{headers:J6e(n)})).data;if(Number(a?.errno)!==0)throw new Error(`\u767E\u5EA6\u5217\u76EE\u5F55\u5931\u8D25: ${a?.errmsg||a?.errno||"unknown error"}`);let o=Array.isArray(a?.list)?a.list:[];return{list:o,rawCount:o.length}}async function hsr(t,e){await ib(t);let r=Wn.cookie;if(!r)return null;let n=String(typeof e=="object"?e?.fileId||"":e||""),s=typeof e=="object"?String(e?.path||""):"";if(!n||!s)return null;let i=new URLSearchParams({type:"VideoURL",path:s,fs_id:n,devuid:"0%1",clienttype:"1",channel:"android_15_25010PN30C_bd-netdisk_1523a",nom3u8:"1",dlink:"1",media:"1",origin:"dlna"}),a=(await he.get(`${Wn.api}/api/mediainfo?${i.toString()}`,{headers:J6e(r),validateStatus:()=>!0})).data,o=String(a?.info?.dlink||a?.info?.[0]?.dlink||a?.dlink||"").trim();if(!o){let c=a?.errno,u=a?.errmsg||a?.show_msg||a?.message||"";throw new Error(`\u767E\u5EA6\u89C6\u9891\u76F4\u94FE\u83B7\u53D6\u5931\u8D25: ${u||c||"empty dlink"}`)}return{dlink:o,data:a}}var gsr={};async function lL(t,e){let r=String(t.body.id||"").split("*");if(await ib(t),r[0]==="own"){let c=String(r[1]||"").trim(),u=psr(r[2]||"");if(!Wn.cookie)return{parse:0,url:"",msg:"\u767E\u5EA6 Cookie \u7F3A\u5931"};if(!c&&!u)return{parse:0,url:"",msg:"\u767E\u5EA6\u64AD\u653E\u53C2\u6570\u9519\u8BEF"};try{let l=await hsr(t,{fileId:c,path:u});return l?.dlink?{parse:0,url:["\u539F\u753B",l.dlink],header:msr()}:{parse:0,url:"",msg:"\u767E\u5EA6\u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740"}}catch(l){return{parse:0,url:"",msg:`\u767E\u5EA6\u63A5\u53E3\u5F02\u5E38: ${l?.message||l}`}}}let n=r[4],s=iz.get(`baidu_share_${n}`);s&&(Wn.surl=s.surl,Wn.pwd=s.pwd,Wn.link=s.link,Wn.uk=s.uk,Wn.shareid=s.shareid,Wn.shorturl=Wn.surl?Wn.surl.split("").slice(1).join(""):"",Wn.shareCookie="",Wn.pwd&&(await Wn.getRandsk(),Wn.headers.cookie=Wn.shareCookie||Wn.cookie));let i={...z6e("",Y6e)},a={...z6e()};try{let c=await Wn.getAppShareUrl(r[0],r[1],r[2],r[3]);if(c)return{parse:0,url:["\u539F\u753B",c],header:i}}catch(c){console.log("App\u7248API\u5931\u8D25\uFF0C\u964D\u7EA7\u5230Web\u7248API:",c.message)}let o=await Wn.getShareUrl(r[0],r[1],r[2],r[3]);if(o&&o.length>0){let c=[];return o.forEach(u=>{c.push(u.name,u.url)}),{parse:0,url:c,header:a}}throw new Error("\u83B7\u53D6\u64AD\u653E\u94FE\u63A5\u5931\u8D25")}async function dL(t,e){let r=t.params.site,n=t.params.what,s=t.params.shareId,i=t.params.fileId,a=t.params.flag;if(r!=="baidu")return e.status(400).send({error:"Invalid site"});let o=gsr[s];if(!o)return e.status(404).send({error:"Play URL not found in cache"});let c,u=o.headers;if(o.type==="app")c=o.url;else if(o.type==="web"){let l=o.urls.find(d=>d.name===a);if(!l)return e.status(404).send({error:"Quality not found"});c=l.url}else return e.status(500).send({error:"Invalid cache type"});return e.redirect(c)}var Tl=Re(Jn(),1);var Te=Gi;(function(t,e){let r=Gi,n=t();for(;;)try{if(parseInt(r(1692,"6m)Q"))/1*(-parseInt(r(482,"di2y"))/2)+-parseInt(r(878,"0D8d"))/3+-parseInt(r(1814,"s45X"))/4+parseInt(r(1858,"6m)Q"))/5+-parseInt(r(1036,"&4j("))/6+-parseInt(r(637,"%g5L"))/7*(parseInt(r(2041,"1IiW"))/8)+-parseInt(r(563,"J02["))/9*(-parseInt(r(1295,"]#Cr"))/10)===e)break;n.push(n.shift())}catch{n.push(n.shift())}})(pL,-485*-2885+-16*-105169+-529460*4);var fL,oz={},es={set(t,e){let r=Gi;oz[t]=e,fL&&fL[r(1878,"EWEh")](r(1469,"TYk6")+t,e)},get(t){return oz[t]}},ab=async t=>{let e=Gi;fL=t[e(1144,"OKeq")].db,oz=await fL[e(350,"oCn^")+e(318,"@)NM")](e(1805,"XIK8"),{})},Asr=async t=>{let e=Gi;return globalThis[e(1418,"EhkZ")]?await globalThis[e(806,"di2y")](t):t},cz=class{constructor(){let e=Gi,r={oAIoS:e(869,"LQMX")+e(619,"L$sR")+e(1263,"woD7")+e(1411,"di2y"),ldYle:e(746,"TYk6")+e(1279,"sBHZ")+e(917,"n(Tw"),HOkUz:e(309,"woD7"),bERZw:e(315,"5V(o")+e(1627,"nHvT")+e(922,"[zZc"),BClVE:e(933,"5V(o")+e(1796,"%g5L"),BRWul:e(899,"68p[")+e(1004,"NQR8")+e(1784,"Rf!$")+e(612,"1IiW")+e(1258,"XIK8")+e(1639,"Rf!$")+e(1212,"^04V")+e(1514,"LQMX")+e(1357,"TYk6")+e(493,"L$sR")+e(1919,"xwLD")+"6",rqbsV:e(1525,"OKeq"),LCTYA:e(1975,"METZ")+e(1866,"$FUM")+e(1570,"xwLD")+e(377,"wv7J"),OheQE:e(1360,"YsCI")+e(1117,"htl8"),SjHNU:e(1352,"&4j(")+e(919,"GiqO")+e(1636,"nHvT")+e(1909,"METZ")+e(2061,"woD7"),DUyhO:e(842,"0D8d")+e(2136,"a(V)")},n=r[e(2118,"a(V)")][e(1306,"nHvT")]("|"),s=-1*-3532+-4*-346+-4916;for(;;){switch(n[s++]){case"0":this[e(411,"EhkZ")]=r[e(1729,"METZ")];continue;case"1":this[e(2092,"68F4")]=/https:\/\/pan\.xunlei\.com\/s\/([^?#]+)(?:\?[^#]*pwd=([^&#]+))?/;continue;case"2":this[e(1529,"1IiW")]=r[e(1511,"^04V")];continue;case"3":this[e(402,"%g5L")]=r[e(1551,"YsCI")];continue;case"4":this[e(1426,"qInX")]=r[e(970,"&4j(")];continue;case"5":this[e(1765,"U6cg")+e(1552,"68F4")]="";continue;case"6":this[e(1458,"U6cg")]={"User-Agent":r[e(771,"5V(o")],Connection:r[e(523,"Rf!$")],Accept:r[e(1697,"wv7J")],"Accept-Encoding":r[e(1185,"NQR8")],"Accept-Language":r[e(1900,"h1&F")]};continue;case"7":this[e(1967,"5V(o")]="";continue;case"8":this[e(491,"a(V)")]="";continue;case"9":this[e(1613,"Rf!$")]="";continue;case"10":this[e(1739,"NQR8")]="";continue;case"11":this[e(732,"68F4")]="";continue;case"12":this[e(1870,"&4j(")]="";continue;case"13":this[e(2133,"TYk6")+"d"]=r[e(602,"U6cg")];continue;case"14":this[e(1165,"htl8")+e(456,"*uMz")]="";continue}break}}async[Te(739,"L$sR")](){let e=Te,r={sqBTW:function(n,s){return n>s},SgZqI:function(n,s){return n/s},teIcV:e(1543,"n(Tw")+e(617,"METZ"),YWWus:e(947,"t2$F")+"\u767B\u5F55",yDFvY:e(1082,"TYk6")+e(1683,"METZ")};if(this[e(594,"OKeq")])try{let n=JSON[e(1434,"1IiW")](Tl.default[e(1712,"nHvT")][e(1513,"EWEh")][e(1889,"n(Tw")](this[e(1420,"TYk6")][e(648,"[zZc")](".")[1])[e(343,"6m)Q")](Tl.default[e(354,"h1&F")][e(1145,"@)NM")]));r[e(937,"attV")](n[e(2043,"di2y")],Math[e(884,"TYk6")](r[e(1642,"jO!N")](Date[e(1713,"EWEh")](),-41*232+707+9805)))?console[e(1656,"1IiW")](r[e(1350,"XIK8")]):console[e(1810,"METZ")](r[e(1764,"*uMz")])}catch{console[e(349,"sBHZ")](r[e(1098,"$5xR")])}}get[Te(1092,"EWEh")](){let e=Te,r={nkyhX:e(1502,"^04V")},n=es[e(1272,"@)NM")](r[e(1528,"$FUM")]);return!n&&(n=this[e(2119,"veG&")](),es[e(802,"@)NM")](r[e(1580,"jO!N")],n)),n}get[Te(408,"XIK8")](){let e=Te,r={vqVKW:e(1045,"3*7L")+"me"};return es[e(503,"xwLD")](r[e(1633,"$FUM")])}get[Te(783,"OKeq")](){let e=Te,r={vXGvS:e(424,"nHvT")+"rd"};return es[e(1086,"sBHZ")](r[e(1067,"woD7")])}get[Te(1019,"YsCI")](){let e=Te,r={lFysF:e(383,"veG&")};return es[e(352,"YsCI")](r[e(1589,"$5xR")])}get[Te(1818,"oCn^")+Te(1546,"OKeq")](){let e=Te,r={cRsxe:e(589,"NQR8")+e(582,"68p[")};return es[e(552,"a(V)")](r[e(1243,"NQR8")])}get[Te(609,"jO!N")](){let e=Te,r={dyQQD:e(827,"*uMz")+"d"};return es[e(352,"YsCI")](r[e(1285,"EWEh")])}[Te(400,"veG&")](e){return new Promise(r=>setTimeout(r,e))}[Te(1300,"jO!N")](e){let r=Te;return Tl.default[r(323,"0D8d")](e)[r(485,"nHvT")]()}[Te(1852,"NQR8")](e){let r=Te;return Tl.default[r(839,"J02[")](e)[r(861,"L$sR")]()}[Te(415,"$FUM")](){let e=Te,r={HxsFC:function(n,s){return n|s},cqcQD:function(n,s){return n*s},jjUKz:function(n,s){return n===s},aJbJp:function(n,s){return n|s},NLXpN:function(n,s){return n&s},WxhTC:e(2120,"nHvT")+e(1184,"sBHZ")+e(1675,"YsCI")+"xx"};return r[e(1653,"1IiW")][e(428,"$5xR")](/[xy]/g,function(n){let s=e,i=r[s(1080,"u38W")](r[s(825,"CdtI")](Math[s(436,"U6cg")](),-173+1*4946+-71*67),-1320+1*8972+-1*7652);return(r[s(755,"68p[")](n,"x")?i:r[s(1726,"]#Cr")](r[s(1867,"]#Cr")](i,4484+-4481*1),-997*-3+6943+-9926))[s(1038,"di2y")](-3961*-2+-7504+-386)})}[Te(1365,"t2$F")+Te(2115,"3*7L")](e){let r=Te,n={unGgu:function(s,i){return s+i},xlOMv:function(s,i){return s+i},iLTQV:r(1669,"$5xR")+r(692,"3*7L")+r(1696,"METZ"),GFkyo:r(2036,"h1&F")+r(1792,"qInX")+r(1871,"0D8d")+"21"};return this[r(1274,"]#Cr")](this[r(1673,"%g5L")](n[r(1686,"EWEh")](n[r(476,"a(V)")](e,n[r(1236,"GiqO")]),n[r(758,"qInX")])))}[Te(1043,"L$sR")+Te(974,"sBHZ")](e){let r=Te,n={eWXEq:function(a,o){return a+o},yKZpQ:function(a,o){return a+o},OOyUJ:function(a,o){return a+o},MoIyu:function(a,o){return a+o},xjncb:r(555,"wv7J")+r(1560,"^04V"),dWTeP:r(1482,"wv7J")+r(1425,"veG&")+r(928,"#Vf$")+r(1283,"jO!N"),kHJrO:r(1293,"sBHZ")+r(846,"veG&"),KZrUq:r(1667,"wv7J")+r(1003,"METZ")+r(872,"nHvT"),MnRSt:r(772,"a(V)")+r(1677,"&4j(")+r(1242,"TYk6")+r(949,"3*7L"),tXuyo:r(1609,"YsCI")+"1",VKhFE:r(1579,"U6cg")+r(659,"NQR8"),IsxcY:r(1736,"wv7J")+r(611,"Rf!$")+r(1031,"attV")+r(1625,"68F4")+r(1233,"wv7J"),hbNLi:r(1780,"xwLD")+r(2142,"htl8")+r(531,"xwLD"),fInOX:r(2023,"h1&F")+r(492,"METZ"),zzNSc:r(1926,"68F4")+r(382,"EWEh"),sUCiS:r(1643,"a(V)")+r(1153,"Rf!$")+r(641,"XIK8")+r(433,"nHvT"),vwGxo:r(517,"METZ")+r(723,"di2y")},s;return s=n[r(2150,"6m)Q")](n[r(1171,"METZ")](n[r(1503,"68F4")](n[r(2082,"wv7J")],n[r(1421,"TYk6")]),e),n[r(395,"TYk6")]),[n[r(583,"XIK8")],n[r(1767,"a(V)")],n[r(649,"1IiW")],n[r(813,"U6cg")],n[r(1189,"qInX")],n[r(757,"wv7J")],n[r(550,"5V(o")],n[r(421,"68F4")],n[r(1728,"]#Cr")],n[r(631,"METZ")]][r(358,"NQR8")](a=>{let o=r;s=this[o(1300,"jO!N")](n[o(1903,"qInX")](s,a))}),s}async[Te(700,"U6cg")](e){let r=Te,n={EsZKt:function(i,a){return i(a)}};this[r(1344,"$FUM")]=e;let s=this[r(807,"YsCI")][r(1978,"woD7")](e);s&&s[30*-46+-4597*1+5978]&&(this[r(797,"YsCI")]=s[1],this[r(2072,"htl8")]=n[r(1880,"NQR8")](decodeURIComponent,s[-17*227+-7354+11215]||""))}async[Te(1857,"@)NM")](){let e=Te,r={KYNag:e(464,"h1&F"),pqYFF:e(1129,"^04V"),DkShf:e(1888,"nHvT")+"7",SyVos:e(569,"3*7L")+e(1939,"1IiW")+e(1457,"$FUM")+"f1",DRrFK:e(344,"6m)Q")+e(1644,"woD7")+e(606,"t2$F")+e(967,"$FUM"),kVcPz:e(1240,"[zZc"),BZdtL:e(1561,"xwLD")+e(1447,"U6cg")+e(1703,"]#Cr")+e(1136,"t2$F")+e(1324,"n(Tw")+e(1971,"1IiW")+e(1679,"$FUM")+"c",FQgER:e(1794,"u38W"),tgZiF:e(1040,"h1&F"),BQcxz:e(1401,"woD7")+e(511,"qInX"),juuAq:e(1051,"TYk6"),weTll:e(979,"#Vf$"),lnpqk:e(1975,"METZ")+e(351,"*uMz"),HxsFe:function(a,o){return a===o},AGpYU:e(2047,"nHvT")},n=JSON[e(1548,"CdtI")]({protocolVersion:r[e(1782,"qInX")],sequenceNo:r[e(1167,"%g5L")],platformVersion:"10",isCompressed:"0",appid:"40",clientVersion:r[e(1853,"*uMz")],peerID:r[e(2110,"68F4")],appName:r[e(907,"di2y")],sdkVersion:r[e(1504,"s45X")],devicesign:r[e(670,"sBHZ")],netWorkType:"2G",providerName:r[e(767,"YsCI")],deviceModel:r[e(547,"3*7L")],deviceName:r[e(1075,"J02[")],OSVersion:"12",creditkey:"",hl:r[e(2057,"%g5L")],userName:this[e(334,"nHvT")],passWord:this[e(1414,"METZ")],verifyKey:"",verifyCode:"",isMd5Pwd:"0"}),s={method:r[e(1604,"3*7L")],url:this[e(1476,"oCn^")]+(e(1617,"t2$F")+e(1001,"s45X")+e(1385,"s45X")),headers:{"Content-Type":r[e(1180,"nHvT")]},data:n},i=await Ae[e(525,"s45X")](s);if(r[e(1564,"di2y")](i[e(472,"]#Cr")],-2105*-1+1*-784+59*-19))return console[e(2031,"$5xR")](r[e(2088,"XIK8")]),i[e(522,"@)NM")][e(1628,"J02[")]}async[Te(1787,"CdtI")+Te(1445,"Rf!$")](){let e=Te,r={lbpJJ:e(2012,"&4j(")+e(731,"u38W")+e(1740,"EhkZ"),HKuOV:e(1102,"woD7"),fttuB:e(480,"METZ")+e(1623,"5V(o")+e(1577,"XIK8")+e(1230,"nHvT")+e(823,"veG&")+e(2049,"u38W")+e(1211,"n(Tw")+e(509,"s45X")+e(1979,"L$sR")+e(805,"h1&F")+e(1255,"t2$F")+"6",PrYZl:e(1848,"0D8d")+e(2027,"J02["),WKiZg:function(a,o){return a===o}},n=JSON[e(898,"veG&")]({client_id:this[e(1952,"]#Cr")+"d"],action:r[e(2117,"n(Tw")],device_id:this[e(2138,"$FUM")],captcha_token:"",meta:{phone_number:e(518,"U6cg")+this[e(409,"METZ")]}}),s={method:r[e(921,"di2y")],url:this[e(1286,"n(Tw")]+(e(467,"t2$F")+e(990,"GiqO")+"it"),headers:{"User-Agent":r[e(1097,"htl8")],"Content-Type":r[e(446,"oCn^")]},data:n},i=await Ae[e(1574,"#Vf$")](s);if(r[e(647,"h1&F")](i[e(520,"0D8d")],1599*1+-6187+4788))return i[e(327,"CdtI")][e(1497,"1IiW")+e(1671,"n(Tw")]}async[Te(1827,"TYk6")+Te(796,"3*7L")](){let e=Te,r={YnZZu:e(438,"NQR8"),yWkJo:function(o,c){return o===c},FITcL:function(o,c){return o===c},jaqtU:e(1678,"L$sR"),OXxLf:e(701,"u38W"),zgweA:e(399,"6m)Q"),mlfjX:e(848,"Rf!$"),rsNqj:e(886,"J02[")+e(1989,"@)NM")+e(1215,"XIK8")+e(1530,"J02[")+e(2091,"#Vf$")+e(2014,"di2y")+e(626,"EhkZ")+e(2037,"n(Tw")+e(2059,"s45X")+e(777,"attV")+e(329,"[zZc")+e(1887,"s45X")+e(2148,"%g5L")+e(1355,"sBHZ")+e(675,"3*7L")+"6",bjTcl:e(798,"EhkZ")+e(346,"$5xR"),pRDtg:function(o,c){return o===c},ykfqu:e(429,"[zZc")};if(console[e(1997,"u38W")](r[e(546,"t2$F")]),r[e(845,"woD7")](this[e(521,"U6cg")],"")||r[e(320,"EWEh")](this[e(505,"qInX")],void 0)){let o=this[e(2119,"veG&")]();es[e(1875,"5V(o")](r[e(2126,"woD7")],o)}let n=await this[e(1518,"L$sR")+e(1297,"U6cg")](),s=JSON[e(1071,"LQMX")]({phone_number:e(1188,"EWEh")+this[e(331,"$FUM")],target:r[e(545,"woD7")],usage:r[e(780,"h1&F")],client_id:this[e(1378,"u38W")+"d"]}),i={method:r[e(1938,"nHvT")],url:this[e(572,"u38W")]+(e(1557,"n(Tw")+e(306,"s45X")),headers:{"User-Agent":r[e(1576,"h1&F")],"Content-Type":r[e(980,"NQR8")],"x-captcha-token":n,"x-client-id":this[e(1882,"1IiW")+"d"],"x-device-id":this[e(1248,"GiqO")]},data:s},a=await Ae[e(1273,"a(V)")](i)[e(2125,"s45X")](o=>o[e(1777,"h1&F")]);r[e(489,"XIK8")](a[e(1865,"@)NM")],7459*1+625+73*-108)&&(console[e(2031,"$5xR")](r[e(481,"L$sR")]),this[e(1704,"68p[")+e(1066,"68F4")]=a[e(1441,"YsCI")][e(663,"attV")+e(803,"3*7L")])}async[Te(2068,"$FUM")](e){let r=Te,n={shoWm:r(1610,"XIK8"),MhuJE:r(2130,"OKeq")+r(673,"*uMz")+r(877,"oCn^")+r(1719,"Rf!$")+r(1024,"XIK8")+r(1222,"#Vf$")+r(1990,"h1&F")+r(1977,"di2y")+r(1053,"veG&")+r(1345,"jO!N")+r(1329,"0D8d")+r(1325,"jO!N")+r(1218,"LQMX")+r(1331,"TYk6")+r(931,"68F4")+"6",uBdsx:r(1364,"5V(o")+r(963,"@)NM"),arOQt:function(s,i){return s===i}};if(e){let s=JSON[r(696,"#Vf$")]({verification_code:e,verification_id:this[r(1214,"t2$F")+r(986,"OKeq")],client_id:this[r(410,"U6cg")+"d"]}),i={method:n[r(1044,"t2$F")],url:this[r(1286,"n(Tw")]+(r(896,"htl8")+r(1148,"xwLD")+r(1072,"@)NM")),headers:{"user-agent":n[r(1556,"attV")],"content-type":n[r(1986,"xwLD")],"x-client-id":this[r(1884,"GiqO")+"d"],"x-device-id":this[r(674,"n(Tw")]},data:s},a=await Ae[r(1090,"woD7")](i)[r(1532,"0D8d")](o=>o[r(1862,"t2$F")]);if(n[r(1526,"n(Tw")](a[r(1200,"J02[")],-2039*-1+-4163+4*581)){let o=a[r(484,"GiqO")][r(1151,"J02[")+r(483,"n(Tw")];await this[r(1366,"&4j(")+"n"](e,o)}}}async[Te(1793,"OKeq")+"n"](e,r){let n=Te,s={PHkaO:n(1953,"1IiW"),RCIiq:n(854,"attV")+n(623,"&4j(")+n(1407,"a(V)")+n(1687,"EhkZ")+n(883,"htl8")+n(1531,"68F4")+n(1990,"h1&F")+n(1486,"#Vf$")+n(321,"LQMX")+n(1377,"$FUM")+n(977,"^04V")+n(651,"u38W")+n(1741,"s45X")+n(1957,"htl8")+n(313,"%g5L")+"6",hOEXo:n(2007,"LQMX")+n(1768,"^04V"),LXcMw:function(u,l){return u===l},tTpnf:n(2060,"Rf!$"),eUDQW:n(876,"%g5L"),dHmgc:function(u,l){return u+l},EstUd:function(u,l){return u+l},ulcUx:n(2025,"h1&F")+"d",uuYAR:n(910,"attV")+n(596,"t2$F"),JkrdO:function(u,l){return u+l},wHlib:n(1934,"U6cg")},i=await this[n(1632,"68F4")+n(662,"GiqO")](),a=JSON[n(968,"1IiW")]({username:n(2050,"t2$F")+this[n(1192,"jO!N")],verification_code:e,verification_token:r,client_id:this[n(2133,"TYk6")+"d"]}),o={method:s[n(488,"qInX")],url:this[n(337,"LQMX")]+(n(1754,"@)NM")+n(1424,"68p[")),headers:{"User-Agent":s[n(625,"^04V")],"Content-Type":s[n(741,"68F4")],"x-captcha-token":i,"x-client-id":this[n(1970,"XIK8")+"d"],"x-device-model":"PC","x-device-id":this[n(455,"]#Cr")]},data:a},c=await Ae[n(680,"6m)Q")](o)[n(475,"METZ")](u=>u[n(1412,"jO!N")]);s[n(1220,"*uMz")](c[n(1507,"U6cg")],-2*-310+11*547+-6437)?(console[n(1340,"NQR8")](s[n(584,"veG&")]),es[n(1456,"EWEh")](s[n(1303,"GiqO")],s[n(708,"t2$F")](s[n(1288,"1IiW")](c[n(998,"[zZc")][n(653,"wv7J")]," "),c[n(1175,"Rf!$")][n(430,"oCn^")+"en"])),es[n(1446,"wv7J")](s[n(551,"h1&F")],c[n(2104,"LQMX")][n(526,"wv7J")]),es[n(1611,"t2$F")](s[n(1459,"wv7J")],c[n(373,"U6cg")][n(360,"Rf!$")+n(404,"L$sR")])):console[n(590,"di2y")](s[n(865,"xwLD")](s[n(810,"*uMz")],c[n(643,"]#Cr")]))}async[Te(1174,"U6cg")+Te(912,"sBHZ")](){let e=Te,r={vJkpz:e(1972,"NQR8")+e(1648,"di2y"),oFmIL:e(1770,"68p["),ysxiA:e(1077,"XIK8")+e(575,"[zZc")+e(904,"qInX")+e(1701,"u38W")+e(1149,"5V(o")+e(1654,"CdtI")+e(2029,"GiqO")+e(1672,"NQR8")+e(1461,"EWEh")+e(1228,"jO!N")+e(1999,"#Vf$")+"6",ivpik:e(1694,"1IiW")+e(398,"L$sR"),EPHZD:function(a,o){return a===o}},n=JSON[e(1363,"attV")]({client_id:this[e(1964,"NQR8")+"d"],action:r[e(1922,"EhkZ")],device_id:this[e(364,"h1&F")],captcha_token:"",meta:{phone_number:e(580,"$5xR")+this[e(1996,"wv7J")]}}),s={method:r[e(819,"wv7J")],url:this[e(401,"U6cg")]+(e(1663,"J02[")+e(1079,"YsCI")+"it"),headers:{"User-Agent":r[e(381,"$FUM")],"Content-Type":r[e(1963,"EWEh")]},data:n},i=await Ae[e(1205,"GiqO")](s);if(r[e(707,"jO!N")](i[e(1305,"n(Tw")],200))return i[e(1084,"htl8")][e(2127,"di2y")+e(1091,"J02[")]}async[Te(620,"attV")](){let e=Te,r={semlw:function(n,s){return n===s},xsJbL:e(774,"wv7J"),guAkM:e(2010,"u38W")+e(1018,"J02[")+e(1103,"$5xR")+e(1537,"jO!N")+e(1105,"]#Cr")+e(1152,"oCn^")+e(2001,"TYk6")+e(1083,"nHvT")+e(362,"htl8")+e(1618,"3*7L")+e(1932,"&4j(")+"6",ReSGp:e(1896,"]#Cr")+e(2145,"sBHZ"),BBHKG:e(871,"U6cg"),PFFro:e(383,"veG&"),YNWBL:function(n,s){return n+s},BkLHk:e(452,"veG&")+"d",iHmGa:function(n,s){return n>s},rbemP:function(n,s){return n/s},nuSZN:e(669,"h1&F"),rutpw:e(1143,"woD7")};if(r[e(638,"NQR8")](this[e(1223,"%g5L")],void 0)||r[e(751,"Rf!$")](this[e(750,"]#Cr")],"")){let n=await this[e(1898,"wv7J")+e(1828,"attV")](),s=JSON[e(413,"h1&F")]({username:e(2050,"t2$F")+this[e(1372,"6m)Q")],password:this[e(507,"$5xR")],client_id:this[e(412,"^04V")+"d"]}),i={method:r[e(759,"a(V)")],url:this[e(337,"LQMX")]+(e(923,"]#Cr")+e(925,"%g5L")),headers:{"User-Agent":r[e(1307,"nHvT")],"Content-Type":r[e(833,"L$sR")],"accept-language":r[e(1170,"TYk6")],"x-captcha-token":n,"x-client-id":this[e(553,"3*7L")+"d"],"x-device-id":this[e(447,"#Vf$")]},data:s},a=await Ae[e(629,"3*7L")](i)[e(1892,"&4j(")](o=>o[e(1050,"@)NM")]);r[e(638,"NQR8")](a[e(1823,"xwLD")],-2624+1*2824)&&(es[e(728,"Rf!$")](r[e(866,"68F4")],r[e(1981,"GiqO")](r[e(1981,"GiqO")](a[e(998,"[zZc")][e(916,"sBHZ")]," "),a[e(930,"s45X")][e(1157,"^04V")+"en"])),es[e(1592,"CdtI")](r[e(2017,"LQMX")],a[e(1766,"t2$F")][e(1544,"6m)Q")])),await this[e(1894,"CdtI")+"a"]()}else{let n=JSON[e(459,"Rf!$")](Tl.default[e(599,"*uMz")][e(756,"Rf!$")][e(527,"u38W")](this[e(939,"LQMX")][e(460,"htl8")](".")[1])[e(1275,"GiqO")](Tl.default[e(2064,"68p[")][e(1022,"LQMX")]));r[e(1698,"TYk6")](n[e(1651,"1IiW")],Math[e(1280,"CdtI")](r[e(2128,"LQMX")](Date[e(1124,"attV")](),-2*4496+-1903*1+11895)))?console[e(978,"jO!N")](r[e(2077,"NQR8")]):(console[e(775,"YsCI")](r[e(1732,"woD7")]),es[e(494,"EhkZ")](r[e(1321,"5V(o")],""),await this[e(1572,"di2y")]())}}async[Te(1108,"s45X")+"a"](){let e=Te,r={wwKwE:e(500,"L$sR")+e(363,"EhkZ")+e(1056,"u38W")+e(957,"attV")+e(1958,"attV"),zJneF:e(1845,"&4j(")+e(1948,"htl8"),etZPm:e(965,"EWEh"),mWxRW:e(1112,"68p[")+e(658,"veG&")+e(1603,"TYk6")+e(1631,"qInX"),qGfQD:e(1966,"3*7L")+e(656,"6m)Q"),nujel:e(774,"wv7J"),myXIq:e(601,"t2$F")+e(1641,"^04V")+e(1904,"5V(o")+e(779,"@)NM")+e(1025,"n(Tw")+"it",mtKnv:e(1417,"LQMX")+e(1915,"TYk6")+e(442,"woD7")+e(316,"@)NM")+e(1258,"XIK8")+e(1319,"n(Tw")+e(2079,"LQMX")+e(887,"di2y")+e(711,"CdtI")+e(2005,"EhkZ")+e(497,"METZ")+"6",hNUIF:e(1472,"TYk6")+e(1872,"XIK8"),yJDIv:e(1668,"$FUM")+e(800,"qInX")+e(1195,"htl8")+e(1315,"woD7")+e(1052,"3*7L"),gjgoy:e(379,"a(V)")+e(1125,"[zZc")+e(1430,"TYk6"),SwAtW:e(1899,"xwLD"),taRRu:e(1007,"xwLD")+e(1444,"sBHZ")+e(332,"oCn^")+e(1203,"CdtI")+e(1927,"6m)Q")+e(396,"h1&F")+e(1358,"L$sR"),HGPRp:function(u,l){return u(l)}},n=JSON[e(1548,"CdtI")]({client_id:this[e(1121,"Rf!$")+"d"],action:r[e(1998,"nHvT")],device_id:this[e(1014,"@)NM")],captcha_token:"",meta:{username:"",phone_number:this[e(1515,"TYk6")],email:"",package_name:r[e(390,"6m)Q")],client_version:r[e(1433,"t2$F")],captcha_sign:r[e(831,"TYk6")],timestamp:r[e(557,"$FUM")],user_id:this[e(676,"n(Tw")]}}),s={method:r[e(419,"68F4")],url:r[e(1494,"qInX")],headers:{"User-Agent":r[e(1382,"attV")],"Content-Type":r[e(2016,"68p[")],"accept-language":r[e(817,"s45X")],"content-type":r[e(915,"$FUM")]},data:n},i=await Ae[e(1294,"U6cg")](s)[e(1725,"a(V)")](u=>u[e(1841,"veG&")]),a=i[e(938,"woD7")][e(576,"jO!N")+e(1343,"GiqO")],o={method:r[e(720,"woD7")],url:r[e(1837,"htl8")],headers:{"User-Agent":r[e(1299,"YsCI")],"accept-language":r[e(1260,"xwLD")],authorization:this[e(1420,"TYk6")],"content-type":r[e(2102,"EWEh")],"x-captcha-token":a,"x-client-id":this[e(1057,"htl8")+"d"],"x-device-id":this[e(1131,"LQMX")]}},c=(await r[e(1995,"di2y")](Ae,o)[e(1954,"OKeq")](u=>u[e(1682,"XIK8")]))[e(930,"s45X")]}async[Te(1821,"t2$F")+Te(652,"TYk6")](e,r){let n=Te,s={qgJwj:n(308,"woD7")+n(431,"htl8"),vCtsz:n(1008,"qInX")+n(450,"GiqO")+n(2008,"wv7J")+"6a",gKdCI:n(999,"[zZc")+n(2020,"68p["),cHymB:n(776,"a(V)"),YFLlo:n(307,"htl8")+n(2116,"$5xR")+n(1101,"0D8d")+n(1037,"jO!N"),eQQNM:n(684,"J02[")+n(470,"jO!N"),AFOEU:n(975,"U6cg"),ascCo:n(1271,"68F4")+n(1708,"68p[")+n(1666,"5V(o")+n(785,"veG&")+n(1738,"68F4")+n(1854,"LQMX")+n(2029,"GiqO")+n(1309,"jO!N")+n(2073,"woD7")+n(1608,"$5xR")+n(2094,"^04V")+"6",YIxOF:n(512,"Rf!$")+n(801,"TYk6"),DMise:function(u,l){return u===l}},i=r+":"+e,a=JSON[n(1781,"]#Cr")]({client_id:s[n(1788,"CdtI")],action:i,device_id:s[n(1232,"htl8")],captcha_token:"",meta:{username:"",phone_number:"",email:"",package_name:s[n(1237,"L$sR")],client_version:s[n(510,"qInX")],captcha_sign:s[n(1622,"68F4")],timestamp:s[n(1500,"L$sR")],user_id:this[n(1058,"METZ")]}}),o={method:s[n(533,"jO!N")],url:this[n(2151,"Rf!$")]+(n(1506,"3*7L")+n(445,"METZ")+"it"),headers:{"User-Agent":s[n(1737,"xwLD")],"Content-Type":s[n(2030,"[zZc")]},data:a},c=await Ae[n(1141,"wv7J")](o);if(s[n(2071,"wv7J")](c[n(1901,"GiqO")],5188+-678*1+-4310))return c[n(1523,"XIK8")][n(1468,"u38W")+n(1481,"$FUM")]}async[Te(468,"68F4")+Te(1943,"oCn^")](e,r){let n=Te,s={iTFXY:n(567,"GiqO")+n(535,"qInX")+n(1566,"1IiW"),fZBuj:n(1844,"%g5L")+"7",uEapQ:n(2022,"@)NM")+n(1256,"sBHZ"),QBCTB:n(774,"wv7J"),FuzIn:n(1054,"veG&")+n(1718,"TYk6")+n(1409,"METZ")+n(1453,"a(V)")+n(1856,"NQR8")+n(1374,"di2y")+n(1807,"68p[")+n(644,"YsCI")+n(1442,"LQMX")+n(1216,"$5xR")+n(1467,"68F4")+n(600,"nHvT")+n(1565,"nHvT")+n(1410,"di2y")+n(1825,"jO!N")+n(836,"LQMX")+n(1563,"a(V)")+n(682,"qInX")+n(2095,"[zZc")+n(1249,"a(V)")+n(1081,"6m)Q")+n(1201,"Rf!$")+n(375,"EhkZ"),aFHvz:n(1779,"%g5L")+n(1138,"a(V)"),wILUS:function(l,d){return l===d}},i=r+":"+e,a=this[n(1048,"J02[")+n(1769,"di2y")](this[n(627,"oCn^")]),o=JSON[n(1363,"attV")]({client_id:this[n(1799,"veG&")+"d"],action:i,device_id:this[n(1620,"xwLD")],captcha_token:"",meta:{package_name:s[n(1231,"*uMz")],client_version:s[n(961,"@)NM")],captcha_sign:"1."+a,timestamp:s[n(1437,"YsCI")],user_id:this[n(969,"68p[")]}}),c={method:s[n(1498,"68p[")],url:this[n(1747,"1IiW")]+(n(1302,"xwLD")+n(1941,"OKeq")+"it"),headers:{"User-Agent":s[n(745,"%g5L")],"Content-Type":s[n(357,"68F4")]},data:o},u=await Ae[n(1574,"#Vf$")](c);if(s[n(632,"$FUM")](u[n(1961,"veG&")],4513*-2+-4717+1*13943))return u[n(1341,"J02[")][n(326,"woD7")+n(1702,"#Vf$")]}[Te(2069,"u38W")](){let e=Te,r={jqPjK:e(368,"attV")+e(1235,"woD7"),HMGnp:e(385,"woD7")+e(457,"]#Cr"),qFAOw:e(690,"$5xR")+e(454,"5V(o"),sekWS:e(1783,"@)NM")+e(1795,"6m)Q")+e(1074,"#Vf$"),DLVXn:e(1721,"#Vf$")+e(539,"GiqO"),LdWpt:e(1451,"J02[")+e(1834,"3*7L")+e(1883,"3*7L")+"0S",rYGYr:e(1011,"n(Tw")+e(1891,"YsCI")+e(945,"TYk6")+"rt",xCRsm:e(330,"s45X")+e(1049,"s45X"),LIVZs:e(843,"u38W")+e(1809,"1IiW"),bePxy:e(2028,"EWEh")+e(1380,"U6cg")+e(2040,"GiqO"),gdcoh:e(1893,"L$sR")+e(1415,"OKeq")+e(2149,"xwLD")+"Xs",khHNT:e(356,"attV")+e(487,"$FUM"),eyjsi:e(782,"nHvT"),pyrLm:e(1373,"nHvT")+e(1948,"htl8"),PEexz:e(1836,"METZ")+e(1602,"*uMz")+e(537,"]#Cr")+"6a",pudkT:function(o,c){return o+c},pxgwZ:function(o,c){return o+c},xWdyI:function(o,c){return o+c},XgdXe:e(893,"@)NM")+e(2113,"$FUM"),jjUvA:function(o,c){return ou},zzWOA:function(c,u){return c>=u}},n=r[e(880,"L$sR")],s=r[e(1060,"%g5L")],i=await this[e(1861,"oCn^")+e(1956,"*uMz")](n,s),a={method:r[e(960,"sBHZ")],url:this[e(2015,"s45X")]+(e(1270,"J02[")+e(1177,"&4j(")+e(733,"t2$F"))+this[e(895,"1IiW")]+(e(1976,"Rf!$")+"=")+this[e(2055,"jO!N")]+(e(1771,"J02[")+e(1257,"n(Tw")+e(1443,"TYk6")+e(1284,"a(V)")+e(1384,"GiqO")),headers:{"User-Agent":r[e(597,"68p[")],"accept-language":r[e(1264,"a(V)")],authorization:"","x-captcha-token":i,"x-client-id":r[e(610,"$FUM")],"x-device-id":r[e(2011,"xwLD")]}},o=await Ae[e(1450,"CdtI")](a);if(r[e(405,"OKeq")](o[e(1439,"$5xR")],-1224+-1*-8702+-7278*1)){let c={},u=[],l=[];this[e(1707,"@)NM")+e(2013,"EWEh")]=o[e(1172,"sBHZ")][e(2131,"1IiW")+e(681,"LQMX")],o[e(938,"woD7")][e(837,"GiqO")][e(432,"di2y")](f=>{let p=e;if(r[p(1949,"L$sR")](f[p(1987,"Rf!$")],""))u[p(556,"woD7")](f.id);else if(r[p(1076,"]#Cr")](f[p(867,"0D8d")+p(348,"J02[")],r[p(1722,"di2y")])){let m=/[#|'"\[\]&<>]/g,h=m[p(790,"EWEh")](f[p(458,"3*7L")])?f[p(370,"L$sR")][p(2033,"attV")](m,""):f[p(2051,"*uMz")];l[p(1662,"sBHZ")]({name:h,size:r[p(1594,"xwLD")](Number,f[p(461,"#Vf$")])||-1*-6975+-4672+-2303,fileId:f.id,share_id:this[p(2124,"jO!N")],parent_id:f[p(416,"]#Cr")],pass_code_token:r[p(1863,"LQMX")](encodeURIComponent,this[p(2131,"1IiW")+p(824,"di2y")]),pass_code:this[p(1600,"@)NM")]})}}),!r[e(1020,"OKeq")](o[e(1266,"3*7L")][e(697,"$5xR")],c)&&r[e(1016,"jO!N")](o[e(930,"s45X")][e(890,"LQMX")],void 0)&&(c[o[e(2152,"NQR8")][e(1126,"6m)Q")]]=[]),r[e(1351,"METZ")](l[e(1427,"CdtI")],-121*-35+-433*1+-1901*2)&&r[e(2054,"wv7J")](o[e(1085,"1IiW")][e(1210,"1IiW")],void 0)&&(c[o[e(1475,"^04V")][e(934,"NQR8")]]=[...l]);let d=await Promise[e(2034,"di2y")](u[e(355,"jO!N")](async f=>this[e(788,"attV")+e(1135,"wv7J")](f)));return d=d[e(1652,"#Vf$")](f=>f!=null)[e(1615,"EWEh")](),r[e(501,"wv7J")](d[e(2044,"68F4")],1014*6+1226*7+-14666*1)&&c[o[e(930,"s45X")][e(1527,"^04V")]][e(2096,"a(V)")](...d),c}}async[Te(504,"YsCI")+Te(498,"#Vf$")](e){let r=Te,n={Ccsiz:function(u,l){return u===l},BBSQo:r(1398,"5V(o"),YeuMy:function(u,l){return u(l)},eZaFy:function(u,l){return u(l)},mapEQ:r(821,"oCn^")+r(1812,"nHvT"),vDRKv:r(1802,"5V(o"),TXrID:r(463,"veG&"),tqHoN:function(u,l){return u(l)},OvlkC:r(1156,"L$sR")+r(1311,"sBHZ")+r(1784,"Rf!$")+r(1791,"qInX")+r(1149,"5V(o")+r(1122,"&4j(")+r(920,"68F4")+r(799,"1IiW")+r(1681,"LQMX")+r(1559,"s45X")+r(1069,"J02[")+"6",pjUja:r(466,"%g5L")+r(499,"%g5L")+r(1259,"a(V)")+r(1252,"Rf!$")+r(1646,"veG&"),tgKQb:r(1848,"0D8d")+r(1207,"htl8"),NjFhg:r(826,"XIK8")+r(1982,"attV"),nzrUW:r(1817,"oCn^")+r(709,"oCn^")+r(1484,"qInX")+"6a",mlwrE:function(u,l){return u===l}},s=n[r(829,"n(Tw")],i=n[r(754,"OKeq")],a=await this[r(540,"#Vf$")+r(634,"CdtI")](s,i),o={method:n[r(1115,"#Vf$")],url:this[r(1980,"a(V)")]+(r(705,"U6cg")+r(695,"u38W")+r(815,"u38W")+"=")+this[r(1709,"3*7L")]+(r(1762,"di2y")+"=")+e+(r(996,"3*7L")+r(1715,"XIK8"))+n[r(1289,"6m)Q")](encodeURIComponent,this[r(650,"LQMX")+r(479,"EhkZ")])+(r(1992,"%g5L")+r(725,"LQMX")+r(1693,"[zZc")+r(1369,"n(Tw")+r(2046,"^04V")),headers:{"User-Agent":n[r(1269,"[zZc")],"accept-language":n[r(1647,"YsCI")],authorization:"","content-type":n[r(2123,"n(Tw")],"x-captcha-token":a,"x-client-id":n[r(1268,"&4j(")],"x-device-id":n[r(950,"[zZc")]}},c=await Ae[r(1583,"sBHZ")](o);if(n[r(1234,"6m)Q")](c[r(984,"sBHZ")],1848+1*4500+-6148)){let u=[],l=[];c[r(1523,"XIK8")][r(1776,"TYk6")][r(1917,"0D8d")](f=>{let p=r;if(n[p(738,"s45X")](f[p(1987,"Rf!$")],""))u[p(613,"0D8d")](f.id);else if(n[p(593,"htl8")](f[p(1838,"wv7J")+p(704,"LQMX")],n[p(2139,"EhkZ")])){let m=/[#|'"\[\]&<>]/g,h=m[p(1724,"u38W")](f[p(1908,"h1&F")])?f[p(1785,"68p[")][p(1591,"OKeq")](m,""):f[p(1778,"wv7J")];l[p(1878,"EWEh")]({name:h,size:n[p(2070,"$FUM")](Number,f[p(532,"veG&")])||1387+169*42+-8485,fileId:f.id,share_id:this[p(1474,"nHvT")],parent_id:f[p(710,"CdtI")],pass_code_token:n[p(914,"METZ")](encodeURIComponent,this[p(1094,"U6cg")+p(2143,"%g5L")]),pass_code:this[p(1376,"*uMz")]})}});let d=await Promise[r(1933,"GiqO")](u[r(311,"$5xR")](async f=>this[r(982,"CdtI")+r(768,"*uMz")](f)));return d=d[r(624,"U6cg")](f=>f!=null),[...l,...d[r(1717,"oCn^")]()]}}async[Te(668,"L$sR")+"l"](e,r,n,s=""){let i=Te,a={JfHjC:function(p,m){return p!==m},JImLj:function(p,m){return p===m},yfZBJ:function(p,m){return p+m},JmFUH:i(1510,"OKeq")+i(1890,"@)NM")+i(1429,"#Vf$")+i(1150,"woD7")+i(1886,"woD7")+"l=",hqdxy:function(p,m){return p(m)},Zwapx:i(1575,"U6cg")+i(1806,"]#Cr"),iMZNK:i(1616,"]#Cr"),WoNrB:i(1247,"[zZc"),pwTaP:i(1619,"n(Tw")+i(654,"attV")+i(773,"#Vf$")+i(1789,"5V(o")+i(380,"METZ")+i(2049,"u38W")+i(1212,"^04V")+i(1988,"*uMz")+i(913,"0D8d")+i(897,"attV")+i(1120,"OKeq")+"6",uurcf:i(1465,"68F4")+i(655,"Rf!$")+i(971,"$FUM")+i(1649,"@)NM")+i(2053,"qInX"),tmGHs:i(952,"]#Cr"),NpfEt:i(894,"^04V")+i(1923,"u38W"),YHDCx:i(1002,"%g5L")+i(858,"*uMz"),MYzvP:i(1836,"METZ")+i(1730,"]#Cr")+i(1354,"^04V")+"6a"},o=a[i(1670,"s45X")],c=a[i(985,"]#Cr")],u=await this[i(595,"h1&F")+i(1629,"U6cg")](o,c),l=s||this[i(706,"LQMX")]||"",d={method:a[i(900,"U6cg")],url:this[i(1985,"L$sR")]+(i(2097,"EhkZ")+i(1403,"^04V")+i(889,"htl8")+i(367,"CdtI")+"=")+a[i(1522,"attV")](encodeURIComponent,n)+(i(929,"EhkZ")+i(1431,"6m)Q"))+e+i(781,"5V(o")+r+(i(1006,"L$sR")+"e=")+l,headers:{"User-Agent":a[i(1509,"oCn^")],"accept-language":a[i(853,"a(V)")],authorization:"","cache-control":a[i(581,"*uMz")],"content-type":a[i(371,"U6cg")],"x-captcha-token":u,"x-client-id":a[i(1829,"OKeq")],"x-device-id":a[i(927,"CdtI")]}},f=await Ae[i(1294,"U6cg")](d);if(a[i(1349,"5V(o")](f[i(1492,"nHvT")],4309*-1+-1*-5598+-99*11)){this[i(339,"$FUM")]="";let p=[];return f[i(1175,"Rf!$")][i(1391,"h1&F")][i(791,"3*7L")][i(1542,"&4j(")](m=>{let h=i;a[h(2122,"5V(o")](m[h(1936,"s45X")],null)&&(a[h(943,"s45X")](this[h(719,"GiqO")],"")&&(this[h(1292,"LQMX")]=new URL(m[h(1907,"$5xR")][h(1194,"L$sR")])[h(325,"nHvT")]),p[h(942,"NQR8")](m[h(2039,"YsCI")],a[h(1147,"6m)Q")](a[h(1034,"GiqO")],a[h(1790,"%g5L")](encodeURIComponent,m[h(605,"EWEh")][h(1568,"sBHZ")]))))}),p}return[]}async[Te(1026,"u38W")+"ta"](e){let r=Te,n={ywVmL:r(2003,"EhkZ")};if(e[r(1028,"%g5L")](n[r(1397,"s45X")]))return await this[r(1238,"@)NM")](e),await this[r(1132,"attV")+"st"]()}async[Te(1811,"0D8d")](e,r,n){let s=Te,i={mDdCo:s(1449,"wv7J")+s(1969,"qInX"),oQzbz:s(1802,"5V(o"),GSqbG:function(f,p){return f(p)},syPSw:s(1953,"1IiW"),HsZBk:s(1064,"GiqO")+s(844,"$5xR")+s(1666,"5V(o")+s(1849,"*uMz")+s(392,"wv7J")+s(1448,"^04V")+s(1596,"h1&F")+s(324,"$5xR")+s(1346,"XIK8")+s(2141,"^04V")+s(1069,"J02[")+"6",hJANV:s(660,"h1&F")+s(1659,"U6cg"),ZOxCN:s(513,"3*7L")+s(1179,"*uMz")+s(1061,"XIK8")+s(1637,"n(Tw")+s(2107,"YsCI"),GctvN:function(f,p){return f===p},sBLoO:s(2146,"XIK8"),RBMQM:s(1224,"h1&F")},a=i[s(808,"NQR8")],o=i[s(2052,"*uMz")],c=await this[s(1571,"XIK8")+s(2075,"n(Tw")](a,o),u=JSON[s(1208,"OKeq")]({parent_id:this[s(1480,"^04V")],share_id:r,pass_code_token:i[s(541,"$FUM")](decodeURIComponent,n),ancestor_ids:[],file_ids:[e],specify_parent_id:!0}),l={method:i[s(911,"0D8d")],url:this[s(2076,"#Vf$")]+(s(1688,"68F4")+s(1974,"TYk6")+"re"),headers:{"User-Agent":i[s(1027,"$5xR")],"Content-Type":i[s(678,"EhkZ")],"accept-language":i[s(2078,"wv7J")],authorization:this[s(1533,"n(Tw")],"x-captcha-token":c,"x-client-id":this[s(1916,"$FUM")+"d"],"x-device-id":this[s(1239,"3*7L")]},data:u},d=await Ae[s(478,"veG&")](l)[s(1213,"attV")](f=>f[s(664,"oCn^")]);return i[s(319,"OKeq")](d?.[s(1100,"#Vf$")],-58*10+3459+-2679)&&i[s(761,"htl8")](d?.[s(1441,"YsCI")]?.[s(508,"woD7")+"us"],"OK")?(console[s(1116,"]#Cr")](i[s(1438,"Rf!$")]),!0):(console[s(548,"#Vf$")](d?.[s(486,"&4j(")]?.[s(687,"L$sR")+"us"]||s(1030,"xwLD")+(d?.[s(592,"68p[")]||i[s(1851,"#Vf$")])),!1)}async[Te(2018,"GiqO")](e,r,n){let s=Te,i={NMxYc:function(a,o){return a!==o},KQYhk:function(a,o){return a!==o},hSypq:s(1689,"*uMz")+s(1973,"5V(o"),jqmeI:s(1843,"68p[")};if(await this[s(734,"YsCI")](),i[s(1842,"NQR8")](this[s(672,"EWEh")],"")&&i[s(2058,"TYk6")](this[s(579,"LQMX")],void 0)){if(!await this[s(1826,"a(V)")](e,r,n))throw new Error(i[s(2129,"sBHZ")])}else throw new Error(i[s(1063,"sBHZ")])}async[Te(1361,"u38W")](){let e=Te,r={hHlby:function(u,l){return u===l},xDJpk:e(1727,"h1&F")+e(1885,"J02["),sMGvd:e(1553,"METZ"),WdAOl:e(1924,"EWEh"),Bimzz:e(735,"xwLD")+e(1206,"qInX")+e(345,"h1&F")+e(1010,"nHvT")+e(1550,"xwLD")+e(1925,"XIK8")+e(1745,"htl8")+e(972,"s45X")+e(988,"s45X")+e(976,"&4j(")+e(849,"nHvT")+e(686,"sBHZ")+e(1386,"#Vf$")+e(407,"xwLD")+e(1519,"J02[")+e(1404,"jO!N")+e(1876,"u38W")+e(1154,"$5xR")+e(1800,"htl8")+e(764,"n(Tw")+e(2063,"J02[")+e(906,"&4j(")+e(1832,"s45X"),zjHNW:e(892,"6m)Q")+e(1471,"@)NM")+e(1296,"#Vf$")+e(992,"CdtI")+e(909,"EhkZ"),hHBzq:e(604,"L$sR")+e(1700,"3*7L")};(r[e(1334,"*uMz")](this[e(1420,"TYk6")],void 0)||r[e(1547,"a(V)")](this[e(1758,"jO!N")],""))&&await this[e(856,"[zZc")]();let n=r[e(1225,"5V(o")],s=r[e(1920,"xwLD")],i=await this[e(1405,"t2$F")+e(1945,"nHvT")](n,s),a=this[e(1389,"n(Tw")]+(e(1383,"GiqO")+e(1419,"NQR8")+e(538,"^04V")+e(795,"n(Tw")+e(1322,"woD7")+e(1733,"$5xR")+e(388,"OKeq")+e(1881,"YsCI")+e(1624,"s45X")+e(811,"%g5L")+e(763,"#Vf$")+e(2045,"3*7L")+e(635,"wv7J")+e(1750,"68F4")+e(1710,"%g5L")+e(1593,"GiqO")+e(1634,"sBHZ")+e(752,"EWEh")+e(374,"YsCI")),o={method:r[e(633,"attV")],url:a,headers:{"User-Agent":r[e(1873,"qInX")],"accept-language":r[e(1032,"U6cg")],authorization:this[e(2086,"$5xR")],"content-type":r[e(1746,"OKeq")],"x-captcha-token":i,"x-client-id":this[e(1378,"u38W")+"d"],"x-device-id":this[e(855,"Rf!$")]}},c=await Ae[e(2006,"oCn^")](o);if(r[e(1246,"%g5L")](c[e(1333,"%g5L")],1*-2989+-3138+6327)){let u=c[e(938,"woD7")][e(1123,"^04V")][e(1691,"CdtI")](l=>l[e(736,"#Vf$")]===this[e(2111,"woD7")]);u?this[e(1464,"jO!N")]=u.id:this[e(317,"woD7")]=""}}async[Te(908,"veG&")](){let e=Te,r={FXrLG:function(n,s){return n===s},EiHHZ:e(683,"veG&")+e(1994,"NQR8"),gtcvU:e(1731,"TYk6"),WxAtA:e(789,"[zZc")+"er",auxae:e(979,"#Vf$"),eYqqM:e(902,"wv7J")+e(417,"u38W")+e(959,"h1&F")+e(1789,"5V(o")+e(435,"EhkZ")+e(688,"#Vf$")+e(1276,"NQR8")+e(397,"^04V")+e(434,"oCn^")+e(496,"J02[")+e(615,"YsCI")+"6",iUXcF:e(1217,"n(Tw")+e(801,"TYk6"),Tbcci:e(892,"6m)Q")+e(499,"%g5L")+e(983,"veG&")+e(439,"]#Cr")+e(765,"$FUM"),lqBkZ:function(n,s){return n===s},yNyNk:e(860,"68F4")+"\u5B58"};if(await this[e(1479,"di2y")](),r[e(1399,"1IiW")](this[e(1607,"sBHZ")],"")||r[e(1314,"68F4")](this[e(1387,"J02[")],void 0)){let n=r[e(1119,"di2y")],s=r[e(1287,"Rf!$")],i=await this[e(1584,"U6cg")+e(2099,"*uMz")](n,s),a=JSON[e(608,"EWEh")]({parent_id:"",name:this[e(1454,"LQMX")],kind:r[e(1423,"nHvT")],space:""}),o={method:r[e(1202,"attV")],url:this[e(1389,"n(Tw")]+(e(1488,"1IiW")+e(1562,"jO!N")),headers:{"User-Agent":r[e(1356,"J02[")],"Content-Type":r[e(437,"YsCI")],"accept-language":r[e(1316,"68p[")],authorization:this[e(1661,"oCn^")],"x-captcha-token":i,"x-client-id":this[e(1089,"nHvT")+"d"],"x-device-id":this[e(1087,"s45X")]},data:a},c=await Ae[e(1586,"xwLD")](o);r[e(335,"a(V)")](c[e(1186,"u38W")],-4468+-1*830+5498)&&(this[e(2103,"68F4")]=c[e(973,"#Vf$")][e(1835,"0D8d")].id,console[e(1262,"J02[")](r[e(1330,"s45X")]))}}async[Te(427,"$5xR")](){let e=Te,r={aDGqk:e(661,"oCn^")+e(818,"TYk6"),djJvB:e(1460,"u38W"),UurWO:e(1308,"*uMz"),GCevT:e(1064,"GiqO")+e(693,"L$sR")+e(389,"*uMz")+e(1221,"U6cg")+e(1388,"$5xR")+e(490,"3*7L")+e(1059,"68p[")+e(1902,"Rf!$")+e(863,"68p[")+e(441,"veG&")+e(1120,"OKeq")+"6",VOYjL:e(1110,"h1&F")+e(1168,"n(Tw")+e(1665,"[zZc")+e(1416,"J02[")+e(885,"J02["),cMYmR:e(1158,"OKeq")+e(1744,"NQR8"),VJivx:function(u,l){return u===l}};this[e(2089,"YsCI")]="";let n=r[e(1348,"METZ")],s=r[e(1714,"68p[")],i=await this[e(1571,"XIK8")+e(784,"[zZc")](n,s),a=this[e(1078,"YsCI")]+(e(903,"LQMX")+e(2153,"1IiW")+e(1291,"attV"))+this[e(322,"$5xR")]+(e(420,"Rf!$")+e(1041,"nHvT")+e(2026,"s45X")+e(1470,"XIK8")+e(418,"a(V)")+e(951,"$5xR")+e(406,"$FUM")+e(874,"attV")+e(1674,"Rf!$")+e(1496,"Rf!$")+e(1540,"u38W")+e(2090,"]#Cr")+e(814,"METZ")+e(1918,"htl8")+e(2080,"t2$F")+e(2132,"YsCI")+e(1485,"htl8")),o={method:r[e(384,"GiqO")],url:a,headers:{"User-Agent":r[e(1466,"[zZc")],"accept-language":r[e(694,"htl8")],authorization:this[e(618,"Rf!$")],"content-type":r[e(715,"6m)Q")],"x-captcha-token":i,"x-client-id":this[e(1723,"#Vf$")+"d"],"x-device-id":this[e(1368,"u38W")]}},c=await Ae[e(680,"6m)Q")](o);if(r[e(1495,"U6cg")](c[e(1865,"@)NM")],-926*7+-1*4733+11415)){let u=Array[e(554,"OKeq")](c[e(1475,"^04V")]?.[e(1944,"n(Tw")])?c[e(1962,"68p[")][e(2065,"5V(o")]:[],l=u[e(1705,"woD7")](d=>d?.id);l&&(this[e(714,"METZ")]=l.id)}return this[e(1400,"xwLD")]}async[Te(1209,"^04V")+"Id"](e=-59*-65+9864+13691*-1,r=-1975+154*50+5*-905){let n=Te,s={dacOL:function(i,a){return i<=a},qSRFh:function(i,a){return i"");if(a)return a;s[n(2066,"1IiW")](i,e)&&await this[n(991,"woD7")](r)}return""}async[Te(1191,"GiqO")](){let e=Te,r={Omwst:function(n,s){return n!==s},REbni:e(1590,"xwLD")+e(1614,"h1&F"),rxGMy:e(722,"NQR8"),DwxgT:e(1483,"u38W"),apLeL:e(2062,"YsCI")+e(841,"nHvT")+e(1950,"1IiW")+e(1537,"jO!N")+e(380,"METZ")+e(1436,"wv7J")+e(1874,"EhkZ")+e(887,"di2y")+e(703,"1IiW")+e(905,"#Vf$")+e(1255,"t2$F")+"6",IYYhM:e(376,"#Vf$")+e(1555,"LQMX"),CFjPm:e(1029,"TYk6")+e(1491,"J02[")+e(850,"t2$F")+e(1538,"L$sR")+e(1968,"a(V)"),aNlkc:function(n,s){return n===s},mpcru:e(1808,"EhkZ"),hcjBT:function(n,s){return n===s},FgYvP:e(1490,"[zZc")};if(await this[e(742,"&4j(")](),r[e(1839,"EhkZ")](this[e(1140,"xwLD")],"")&&r[e(1536,"qInX")](this[e(1198,"EhkZ")],void 0)){let n=r[e(1290,"woD7")],s=r[e(1798,"u38W")],i=await this[e(394,"%g5L")+e(792,"METZ")](n,s),a=JSON[e(1983,"6m)Q")]({ids:[this[e(474,"U6cg")]],space:""}),o={method:r[e(762,"J02[")],url:this[e(1824,"]#Cr")]+(e(1539,"0D8d")+e(744,"t2$F")+e(1432,"[zZc")),headers:{"User-Agent":r[e(1137,"OKeq")],"Content-Type":r[e(361,"n(Tw")],"accept-language":r[e(1658,"u38W")],authorization:this[e(561,"68p[")],"x-captcha-token":i,"x-client-id":this[e(1884,"GiqO")+"d"],"x-device-id":this[e(924,"*uMz")]},data:a},c=await Ae[e(340,"$FUM")](o)[e(1954,"OKeq")](u=>u[e(372,"LQMX")]);r[e(995,"LQMX")](c[e(462,"68F4")],14550+2*-7175)?console[e(978,"jO!N")](r[e(1070,"&4j(")]):r[e(2081,"J02[")](c[e(1912,"TYk6")],-43*-45+-7462+5931)&&console[e(978,"jO!N")](r[e(2108,"&4j(")])}}async[Te(1587,"METZ")+Te(888,"68p[")+Te(1462,"*uMz")](){let e=Te,r={IeXcK:e(1173,"h1&F")+e(1487,"n(Tw"),QSyUD:e(1906,"YsCI")+e(1128,"L$sR")+e(573,"U6cg"),jbfEl:e(1895,"EhkZ")+"7",OTNLt:e(1860,"u38W")+e(519,"nHvT"),bwMNo:e(2134,"jO!N"),OqoMY:e(966,"5V(o")+e(989,"U6cg")+e(1127,"GiqO")+e(1585,"METZ")+e(1856,"NQR8")+e(1493,"EhkZ")+e(665,"veG&")+e(1133,"TYk6")+e(1440,"nHvT")+e(305,"%g5L")+e(1690,"TYk6")+e(1911,"3*7L")+e(718,"sBHZ")+e(1099,"u38W")+e(312,"CdtI")+e(587,"$FUM")+e(2032,"$FUM")+e(748,"a(V)")+e(1073,"sBHZ")+e(536,"*uMz")+e(341,"GiqO")+e(1017,"EWEh")+e(1062,"METZ"),Zdqvv:e(1545,"68p[")+e(1164,"EWEh"),QvgPw:e(2019,"di2y")+e(809,"oCn^"),QRjzB:function(o,c){return o===c}},n=this[e(2114,"CdtI")+e(378,"a(V)")](this[e(657,"^04V")]),s={client_id:this[e(1065,"EWEh")+"d"],action:r[e(1244,"jO!N")],device_id:this[e(1379,"NQR8")],captcha_token:"",meta:{package_name:r[e(1187,"EhkZ")],client_version:r[e(1991,"XIK8")],captcha_sign:"1."+n,timestamp:r[e(940,"*uMz")],user_id:this[e(2154,"J02[")]}},i={method:r[e(868,"68F4")],url:this[e(1286,"n(Tw")]+(e(1578,"LQMX")+e(1406,"u38W")+"it"),headers:{"User-Agent":r[e(642,"sBHZ")],"Accept-Encoding":r[e(712,"attV")],"Content-Type":r[e(740,"^04V")]},data:s},a=await Ae[e(679,"u38W")](i);if(r[e(1298,"$5xR")](a[e(1473,"Rf!$")],-9*-715+9647+-15882))return a[e(870,"oCn^")][e(1342,"$FUM")+e(529,"]#Cr")]}async[Te(1743,"LQMX")+Te(1204,"&4j(")](){let e=Te,r={MzfBj:e(882,"GiqO")+e(1477,"woD7"),sAfoj:e(1638,"jO!N")+e(879,"0D8d"),kQELn:e(2134,"jO!N"),OrvZI:e(1394,"Rf!$")+e(1708,"68p[")+e(1897,"TYk6")+e(1230,"nHvT")+e(834,"*uMz")+e(2049,"u38W")+e(543,"wv7J")+e(1910,"CdtI")+e(1162,"s45X")+e(747,"LQMX")+e(1255,"t2$F")+"6",recnM:e(820,"nHvT")+e(1055,"0D8d"),plIWN:function(a,o){return a===o}},n=JSON[e(1757,"@)NM")]({client_id:r[e(2112,"0D8d")],action:r[e(1749,"METZ")],device_id:this[e(1092,"EWEh")],captcha_token:"",meta:{phone_number:e(1253,"YsCI")+this[e(528,"68F4")]}}),s={method:r[e(1847,"EWEh")],url:this[e(337,"LQMX")]+(e(964,"woD7")+e(1039,"#Vf$")+"it"),headers:{"User-Agent":r[e(1993,"L$sR")],"Content-Type":r[e(1396,"xwLD")]},data:n},i=await Ae[e(1141,"wv7J")](s);if(r[e(901,"a(V)")](i[e(1505,"LQMX")],5243+123*-41))return i[e(973,"#Vf$")][e(1478,"xwLD")+e(1046,"1IiW")]}async[Te(1323,"u38W")](){let e=Te,r={dczMi:e(979,"#Vf$"),KhOJM:e(1840,"^04V")+e(425,"Rf!$")+e(1245,"[zZc")+e(1516,"GiqO")+e(666,"68F4")+e(1816,"GiqO")+e(636,"#Vf$")+e(1338,"YsCI")+e(333,"$5xR")+e(506,"u38W")+e(753,"OKeq")+e(1820,"5V(o")+e(1278,"U6cg")+e(1463,"U6cg")+e(2101,"]#Cr"),JQcUB:e(578,"u38W")+e(1138,"a(V)"),Ohsyp:function(o,c){return o===c},gEocm:e(955,"U6cg")+e(1088,"h1&F"),eMmTH:e(1868,"nHvT"),mDcoW:function(o,c){return o+c},QCsHh:e(444,"LQMX")+"d"},n=await this[e(542,"68p[")+e(2144,"n(Tw")](),s=JSON[e(1846,"J02[")]({username:e(1742,"[zZc")+this[e(1190,"CdtI")],password:this[e(1320,"J02[")],client_id:this[e(1685,"a(V)")+"d"]}),i={method:r[e(2024,"LQMX")],url:this[e(997,"[zZc")]+(e(1512,"METZ")+e(946,"3*7L")),headers:{"User-Agent":r[e(630,"woD7")],"Content-Type":r[e(816,"OKeq")],"x-captcha-token":n,"x-client-id":this[e(1489,"J02[")+"d"],"x-device-id":this[e(674,"n(Tw")]},data:s},a=await Ae[e(338,"1IiW")](i);r[e(2084,"wv7J")](a[e(743,"EhkZ")],-3*-2802+3943*-1+-4263)&&(es[e(802,"@)NM")](r[e(1267,"6m)Q")],a[e(2152,"NQR8")][e(1833,"xwLD")+e(529,"]#Cr")]),es[e(534,"veG&")](r[e(1521,"sBHZ")],r[e(1877,"YsCI")](r[e(1601,"J02[")](a[e(1441,"YsCI")][e(453,"1IiW")]," "),a[e(1475,"^04V")][e(822,"h1&F")+"en"])),es[e(1095,"oCn^")](r[e(1362,"&4j(")],a[e(1524,"wv7J")][e(1093,"a(V)")]))}async[Te(944,"CdtI")+Te(1775,"]#Cr")](){let e=Te,r={PZqdF:function(n,s){return n===s},qFQZY:function(n,s){return n===s},sjCUJ:e(1965,"]#Cr")+e(530,"68p[")+e(926,"sBHZ")+e(614,"3*7L")+e(1371,"u38W"),PMkrD:e(828,"EhkZ")+e(685,"sBHZ"),NBdBP:e(1953,"1IiW"),FbhCU:e(730,"veG&")+e(1104,"[zZc")+e(1699,"]#Cr")+e(1282,"s45X")+e(1118,"s45X")+e(1166,"YsCI")+e(1452,"&4j(")+e(1929,"EWEh")+e(993,"veG&")+e(1804,"LQMX")+e(726,"1IiW")+e(516,"XIK8")+e(729,"#Vf$")+e(1035,"oCn^")+e(2155,"qInX"),XJfuf:e(1848,"0D8d")+e(2145,"sBHZ"),BXRxT:function(n,s){return n(s)},BsfeU:e(667,"xwLD"),NsCpS:e(1657,"5V(o")+e(393,"veG&"),lzdgI:e(646,"6m)Q"),unEef:function(n,s){return n+s},mXGUB:function(n,s){return n+s},rtSoR:e(1830,"a(V)")+e(794,"&4j("),ZTdkY:function(n,s){return n>s},daall:function(n,s){return n/s},twTFK:e(702,"u38W")+e(1735,"LQMX"),CcsBV:e(391,"attV")+"\u767B\u5F55"};if(r[e(422,"]#Cr")](this[e(1959,"0D8d")],void 0)||r[e(336,"jO!N")](this[e(939,"LQMX")],"")){if(this[e(353,"68p[")+e(1435,"wv7J")]){let n=JSON[e(1161,"t2$F")]({client_id:this[e(1759,"5V(o")+"d"],client_secret:r[e(1393,"*uMz")],grant_type:r[e(2137,"htl8")],refresh_token:this[e(1942,"$FUM")+e(404,"L$sR")]}),s={method:r[e(2087,"xwLD")],url:this[e(1226,"di2y")]+(e(1734,"L$sR")+e(566,"CdtI")),headers:{"User-Agent":r[e(1937,"u38W")],"Content-Type":r[e(918,"CdtI")],"x-client-id":this[e(366,"&4j(")+"d"],"x-device-id":this[e(627,"oCn^")]},data:n},i=await r[e(1554,"#Vf$")](Ae,s)[e(1499,"YsCI")](a=>a[e(622,"qInX")]);if(r[e(1879,"METZ")](i?.[e(1337,"&4j(")],200)){console[e(1146,"6m)Q")](r[e(495,"U6cg")]),es[e(875,"a(V)")](r[e(1859,"LQMX")],i[e(486,"&4j(")][e(451,"sBHZ")+e(568,"&4j(")]),es[e(1250,"&4j(")](r[e(628,"1IiW")],r[e(1183,"6m)Q")](r[e(2042,"L$sR")](i[e(2104,"LQMX")][e(347,"n(Tw")]," "),i[e(1855,"TYk6")][e(1755,"XIK8")+"en"]));return}}if(await this[e(2009,"t2$F")](),!this[e(640,"attV")])throw new Error(r[e(386,"U6cg")])}else try{let n=JSON[e(1960,"xwLD")](Tl.default[e(1013,"3*7L")][e(2002,"OKeq")][e(1756,"3*7L")](this[e(1019,"YsCI")][e(1370,"METZ")](".")[1])[e(1275,"GiqO")](Tl.default[e(2064,"68p[")][e(577,"Rf!$")]));r[e(1219,"xwLD")](n[e(1160,"[zZc")],Math[e(956,"0D8d")](r[e(1182,"1IiW")](Date[e(713,"U6cg")](),2551+337*-7+808)))?console[e(1822,"$FUM")](r[e(1428,"6m)Q")]):(console[e(585,"n(Tw")](r[e(1375,"OKeq")]),es[e(2121,"htl8")](r[e(1197,"NQR8")],""),await this[e(1068,"veG&")+e(1005,"NQR8")]())}catch{es[e(802,"@)NM")](r[e(365,"YsCI")],""),await this[e(953,"XIK8")+e(1304,"htl8")]()}}async[Te(1761,"YsCI")+Te(1869,"t2$F")](e,r,n){let s=Te,i={HqtKk:s(559,"*uMz")+s(1301,"1IiW"),GzSQu:s(698,"METZ"),Jrnsn:s(691,"oCn^")+s(1774,"attV")+s(469,"XIK8")+s(2038,"*uMz")+s(1107,"L$sR")+s(936,"&4j(")+s(1e3,"woD7")+s(1650,"NQR8")+s(1655,"]#Cr")+s(1216,"$5xR")+s(1914,"68p[")+s(1241,"OKeq")+s(1142,"6m)Q")+s(1099,"u38W")+s(1772,"qInX")+s(1109,"NQR8")+s(1751,"*uMz")+s(804,"@)NM")+s(443,"s45X")+s(699,"1IiW")+s(1921,"OKeq")+s(2147,"LQMX")+s(981,"J02["),sFSxm:s(2093,"#Vf$"),lXsgS:s(1928,"TYk6"),qAnwa:s(2085,"GiqO")+s(1164,"EWEh"),druCG:s(1096,"s45X")+s(1567,"$FUM"),yNmfy:function(a,o){return a===o},EbWlz:s(717,"[zZc")+"4",LhoMK:s(449,"wv7J")+s(607,"di2y"),uKYAX:function(a,o){return a===o},NYIHo:s(1009,"LQMX")+s(1955,"]#Cr"),kiQTs:s(2019,"di2y")+s(987,"5V(o")+s(1508,"6m)Q"),KBjJY:function(a,o){return a!==o}};try{await this[s(1332,"1IiW")](),await this[s(1023,"htl8")+s(1801,"1IiW")](),await this[s(310,"XIK8")](),await this[s(1984,"n(Tw")](e,r,n);let a=await this[s(954,"xwLD")+"Id"]();if(!a)throw new Error(i[s(1626,"veG&")]);let o=await this[s(1558,"U6cg")+s(857,"&4j(")+s(1605,"n(Tw")](),c={method:i[s(564,"NQR8")],url:this[s(402,"%g5L")]+(s(1753,"[zZc")+s(689,"s45X"))+a+(s(1155,"jO!N")+s(864,"#Vf$")+s(1196,"^04V")+s(2021,"#Vf$")+s(1684,"xwLD")),headers:{"User-Agent":i[s(1535,"L$sR")],Connection:i[s(1281,"xwLD")],Accept:i[s(1595,"1IiW")],"Accept-Encoding":i[s(962,"J02[")],"x-captcha-token":o,authorization:this[s(1114,"&4j(")],"content-type":i[s(1033,"68F4")],"x-device-id":this[s(403,"YsCI")]}},u;try{u=await Ae[s(1261,"XIK8")](c)}catch(l){if(i[s(1797,"OKeq")](l?.[s(1050,"@)NM")]?.[s(1946,"$FUM")],-9519+-1*-6497+3426)){let d=i[s(1402,"]#Cr")][s(2135,"TYk6")]("|"),f=5268+-1*269+-4999;for(;;){switch(d[f++]){case"0":if(!a)throw l;continue;case"1":console[s(359,"htl8")](i[s(1327,"0D8d")]);continue;case"2":await this[s(2106,"*uMz")](-6661*1+29*334+-1825);continue;case"3":c[s(1042,"3*7L")]=this[s(402,"%g5L")]+(s(1353,"U6cg")+s(544,"jO!N"))+a+(s(1773,"YsCI")+s(471,"[zZc")+s(565,"%g5L")+s(1336,"wv7J")+s(2074,"@)NM"));continue;case"4":u=await Ae[s(314,"]#Cr")](c);continue;case"5":a=await this[s(1015,"*uMz")+"Id"](-8157+-3*-2359+1083,-1*3561+-1*4267+9028);continue}break}}else throw l}if(i[s(932,"@)NM")](u[s(1865,"@)NM")],200)){let l=u[s(1169,"jO!N")][i[s(1635,"u38W")]]||u[s(2100,"n(Tw")][s(1716,"CdtI")][i[s(832,"@)NM")]][s(1748,"oCn^")],d=new URL(l)[s(766,"J02[")];return i[s(1367,"TYk6")](this[s(716,"XIK8")],"")&&(l=l[s(1930,"h1&F")](d,this[s(749,"oCn^")])),l}}catch(a){return console[s(1335,"attV")](a),""}}};function Gi(t,e){let r=pL();return Gi=function(n,s){n=n-(-1*8163+1971*3+1*2555);let i=r[n];if(Gi.XJtBQt===void 0){var a=function(d){let f="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=",p="",m="";for(let h=0,A,g,b=0;g=d.charAt(b++);~g&&(A=h%4?A*64+g:g,h++%4)?p+=String.fromCharCode(255&A>>(-2*h&6)):0)g=f.indexOf(g);for(let h=0,A=p.length;h{let u=r,l={JxhhQ:function(m,h){return n[Gi(2056,"[zZc")](m,h)},BNcIi:function(m,h){return n[Gi(477,"EWEh")](m,h)},foIkD:n[u(328,"oCn^")]},d=Array[u(524,"$FUM")](s[c])?s[c]:[],f=d[u(1935,"L$sR")](m=>{let h=u;return{vod_id:[m[h(1951,"nHvT")],m[h(1474,"nHvT")],m[h(1317,"1IiW")],m[h(1599,"#Vf$")+h(1720,"68F4")],m[h(1376,"*uMz")]||""][h(1706,"nHvT")]("*"),vod_name:m[h(727,"]#Cr")],vod_size:l[h(1163,"1IiW")](Number,m[h(1534,"di2y")])||-5801*1+-4110+9911*1,vod_group:l[h(1113,"attV")](c,l[h(1947,"#Vf$")])?"":c}}),p=n[u(591,"6m)Q")](Os,i,f);p&&p[u(881,"oCn^")]&&p[u(1277,"t2$F")]&&(a[u(851,"wv7J")](p[u(786,"XIK8")]),o[u(2067,"TYk6")](p[u(1630,"qInX")]))}),a[r(1676,"1IiW")]?{from:a[r(1265,"6m)Q")](n[r(1159,"METZ")]),url:o[r(571,"oCn^")](n[r(1752,"h1&F")])}:null}var t5e=t=>{let e=Te,r={NPJFK:function(i,a){return i(a)},DYUOC:function(i,a){return i||a}},n=r[e(616,"qInX")](String,r[e(941,"h1&F")](t,""))[e(448,"XIK8")+"e"]();if(!n)return 3372+-559*-13+1*-10639;if(n[e(502,"EhkZ")]("\u539F\u753B"))return-3*-24419+-184559+3354*63;if(n[e(1139,"attV")]("4k"))return 3*487+2537+2;if(n[e(1815,"CdtI")]("2k"))return-143*-19+-4783+4066;let s=n[e(935,"veG&")](/(\d+)\s*p/);return s?r[e(1588,"LQMX")](Number,s[-2998+-181*-7+1732])||-2*4269+-7*421+-1*-11485:n[e(1012,"NQR8")]("\u84DD\u5149")?-5563*-1+8078+-12441:n[e(1786,"METZ")]("\u8D85\u6E05")?1080:n[e(1139,"attV")]("\u9AD8\u6E05")?-678*-12+-7053*1+-363:n[e(2035,"U6cg")]("\u6D41\u7545")?86*-106+3819+109*53:n[e(1422,"6m)Q")]("\u6807\u6E05")?540:n[e(426,"68p[")]("\u666E\u753B")?-5801+-1*-6161:n[e(1455,"*uMz")]("\u6781\u901F")?240:-589+58*3+415},ysr=t=>{let e=Te,r={rLCxq:function(s,i){return st5e(d[-5027+-61*-139+-3452])-t5e(l[21*-275+-9284+15059]));let c=[];o&&c[r(1940,"htl8")](o),a[r(1695,"NQR8")](l=>{let d=r;n[d(1318,"METZ")](l[-3252+1626*2],"\u539F\u753B")&&c[d(1408,"#Vf$")](l)});let u=c[r(1645,"68p[")]();if(!u[r(760,"@)NM")])throw new Error(n[r(891,"YsCI")]);return{parse:0,url:u,header:i}}var o5e=require("crypto");var bsr="https://api.guangyapan.com",Esr="https://account.guangyapan.com",c5e="aMe-8VSlkrbQXpUR",u5e=200,_sr="0123456789abcdef0123456789abcdef",l5e={Accept:"application/json, text/plain, */*","Content-Type":"application/json"},Ssr=[".mp4",".mkv",".webm",".avi",".wmv",".flv",".mov",".mpeg",".mpg",".m4v",".ts",".m2ts",".3gp",".rm",".rmvb",".iso"],mL,uz={},wl={set(t,e){uz[t]=e,mL&&mL.push(`/guangyapan/${t}`,e)},get(t){return uz[t]}},vsr=async t=>globalThis.getPanName?await globalThis.getPanName(t):t,lC=async t=>{mL=t.server.db,uz=await mL.getObjectDefault("/guangyapan",{})};function Csr(t){let e=/https?:\/\/(?:www\.)?guangyapan\.com\/s\/([^/#?]+)/i.exec(String(t||"").trim());return e?.[1]?{shareId:e[1]}:null}function d5e(t){if(!t)return{};if(typeof t=="string")try{return JSON.parse(t)}catch{return{msg:t}}return t}function dC(t,e=""){return[t?.msg,t?.message,t?.error_description,t?.error,e].map(n=>String(n||"").trim()).filter(Boolean)[0]||"unknown error"}function Isr(t){let e=String(t||"").toLowerCase();return Ssr.some(r=>e.endsWith(r))}function Tsr(t,e){return t?`${t}/${e}`:e}function wsr(t){let e=String(t||"").trim().toLowerCase();return e=e.replace(/^wdi10\./,""),e=e.replace(/x+$/g,""),e=e.replace(/[^0-9a-f]/g,""),e.length===32?e:""}function f5e(){let t=wsr(wl.get("device_id"));if(t)return t;try{t=(0,o5e.randomBytes)(16).toString("hex")}catch{t=_sr}return wl.set("device_id",t),t}function Rsr(t=""){let e={...l5e,Did:f5e(),Dt:"4"},r=String(t||"").trim();return r&&(e.Authorization=`Bearer ${r}`),e}function Nsr(){let t=f5e();return{...l5e,"X-Client-Id":c5e,"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"}}async function uC(t,e,r=""){let n=await he.request({url:`${bsr}${t}`,method:"POST",headers:Rsr(r),data:e,validateStatus:()=>!0});return{status:Number(n?.status||0),data:d5e(n?.data)}}async function Osr(){let t=String(wl.get("refresh_token")||"").trim();if(!t)return"";let e=await he.request({url:`${Esr}/v1/auth/token`,method:"POST",headers:Nsr(),data:{client_id:c5e,grant_type:"refresh_token",refresh_token:t},validateStatus:()=>!0}),r=d5e(e?.data),n=String(r?.access_token||r?.accessToken||"").trim();if(!n)throw new Error(`\u5237\u65B0\u5149\u9E2D access_token \u5931\u8D25: ${dC(r,`status=${e?.status||0}`)}`);wl.set("access_token",n);let s=String(r?.refresh_token||r?.refreshToken||"").trim();return s&&wl.set("refresh_token",s),n}async function lz(t=!1){let e=t?"":String(wl.get("access_token")||"").trim();return e||await Osr()}async function p5e(t){let{status:e,data:r}=await uC("/nd.bizuserres.s/v1/get_share_access_token",{shareId:t}),n=String(r?.data?.accessToken||"").trim();if(!n)throw new Error(`\u83B7\u53D6\u5149\u9E2D\u5206\u4EAB accessToken \u5931\u8D25: ${dC(r,`status=${e}`)}`);return n}async function Psr(t,e="",r=0){let n={pageSize:u5e,accessToken:t,parentId:e,orderBy:0,sortType:0};r>0&&(n.cursor=r);let{status:s,data:i}=await uC("/nd.bizuserres.s/v1/get_share_page_files_list",n);if(s<200||s>=300)throw new Error(`\u83B7\u53D6\u5149\u9E2D\u5206\u4EAB\u76EE\u5F55\u5931\u8D25: ${dC(i,`status=${s}`)}`);return i?.data||{list:[]}}async function Dsr(t){let e=await p5e(t),r=[{parentId:"",folderPath:""}],n=[];for(;r.length>0;){let{parentId:s,folderPath:i}=r.shift(),a=0,o=!0;for(;o;){let c=await Psr(e,s,a);(Array.isArray(c?.list)?c.list:[]).forEach(d=>{let f=String(d?.fileId||"").trim(),p=String(d?.fileName||"").trim();if(!(!f||!p)){if(Number(d?.resType||0)===2){r.push({parentId:f,folderPath:Tsr(i,p)});return}Isr(p)&&n.push({vod_id:`${t}*${f}`,vod_name:p,vod_size:Number(d?.fileSize||d?.size||0),vod_group:i})}}),o=!!c?.hasMore;let l=Number(c?.cursor||0);if(!o||l<=a)break;a=l}}return n}async function dz(t,e,r=""){let{status:n,data:s}=await uC("/nd.bizuserres.s/v1/get_share_download_url",{fileId:t,accessToken:e},r);return{status:n,code:Number(s?.code||0),msg:dC(s,`status=${n}`),url:String(s?.data?.downloadUrl||"").trim()}}function s5e(t,e){return{status:t,code:Number(e?.code||0),msg:dC(e,`status=${t}`),data:e?.data||{}}}function i5e(t,e){return{status:500,code:0,msg:String(t?.message||t||e||"\u5149\u9E2D\u63A5\u53E3\u5F02\u5E38"),data:{}}}function m5e(t){let e=String(t?.msg||"").toLowerCase();return t?.status===401||t?.status===403||t?.code===401||t?.code===403||e.includes("token expired")||e.includes("unauthorized")}function ksr(){return!!String(wl.get("refresh_token")||"").trim()}function Lsr(t){let e=String(t?.msg||"");return m5e(t)||t?.code===207||e.includes("\u514D\u767B\u5F55\u4E0B\u8F7D")}async function a5e(t=!1){let e=await lz(t);if(!e)throw new Error("\u5149\u9E2D\u767B\u5F55\u6001\u7F3A\u5931");return e}async function h5e(t,e){let r="";try{r=await a5e(!1)}catch(i){return i5e(i,"\u83B7\u53D6\u5149\u9E2D\u767B\u5F55\u6001\u5931\u8D25")}let n=await uC(t,e,r),s=s5e(n.status,n.data);if(!m5e(s))return s;try{r=await a5e(!0),n=await uC(t,e,r),s=s5e(n.status,n.data)}catch(i){return i5e(i,"\u5237\u65B0\u5149\u9E2D\u767B\u5F55\u6001\u5931\u8D25")}return s}async function Bsr(t,e){let r="",n=String(wl.get("access_token")||"").trim();try{r=await lz(!1)}catch(i){return{status:500,code:0,msg:String(i?.message||i||"\u83B7\u53D6\u5149\u9E2D\u767B\u5F55\u6001\u5931\u8D25"),url:""}}let s=await dz(t,e,r);if(!s.url&&n&&ksr()&&Lsr(s))try{r=await lz(!0),s=await dz(t,e,r)}catch(i){s={status:500,code:0,msg:String(i?.message||i||"\u5237\u65B0\u5149\u9E2D\u767B\u5F55\u6001\u5931\u8D25"),url:""}}return s}async function g5e(t,e=""){await lC(t);let r=await h5e("/nd.bizuserres.s/v1/file/get_file_list",{parentId:String(e||"").trim(),pageSize:u5e,orderBy:3,sortType:1,fileTypes:[]});if(r.status<200||r.status>=300)throw new Error(`\u83B7\u53D6\u5149\u9E2D\u4E2A\u4EBA\u76EE\u5F55\u5931\u8D25: ${r.msg}`);return{total:Number(r.data?.total||0),list:Array.isArray(r.data?.list)?r.data.list:[]}}async function A5e(t,e){await lC(t);let r=String(e||"").trim();if(!r)return{url:"",msg:"\u5149\u9E2D\u64AD\u653E\u53C2\u6570\u9519\u8BEF"};let n=await h5e("/nd.bizuserres.s/v1/get_res_download_url",{fileId:r}),s=String(n.data?.signedURL||n.data?.downloadUrl||"").trim();return s?{url:s,msg:""}:{url:"",msg:n.msg||"\u5149\u9E2D\u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740"}}async function y5e(t){let e=Csr(t);if(!e?.shareId)return{};let r=await Dsr(e.shareId);return Os(await vsr("guangyapan"),r)}async function x5e(t){try{await lC(t);let[e,r]=String(t.body?.id||"").trim().split("*");if(!e||!r)return{parse:0,url:"",msg:"\u5149\u9E2D\u64AD\u653E\u53C2\u6570\u9519\u8BEF"};let n=await p5e(e),s=await dz(r,n);return s.url||(String(wl.get("access_token")||"").trim()||String(wl.get("refresh_token")||"").trim())&&(s=await Bsr(r,n)),s.url?{parse:0,url:["\u539F\u753B",s.url]}:{parse:0,url:"",msg:s.code===207||String(s.msg||"").includes("\u514D\u767B\u5F55\u4E0B\u8F7D")?"\u5149\u9E2D\u4E91\u76D8\u5206\u4EAB\u672A\u5F00\u542F\u514D\u767B\u5F55\u4E0B\u8F7D\uFF0C\u8BF7\u5148\u5728\u201C\u767B\u5F55-\u5149\u9E2D\u201D\u4E2D\u586B\u5165 access_token \u6216 refresh_token":s.msg||"\u83B7\u53D6\u5149\u9E2D\u4E0B\u8F7D\u5730\u5740\u5931\u8D25"}}catch(e){return{parse:0,url:"",msg:String(e?.message||e||"\u83B7\u53D6\u5149\u9E2D\u4E0B\u8F7D\u5730\u5740\u5931\u8D25")}}}var Co=async t=>globalThis.getPanName?await globalThis.getPanName(t):t,mu=t=>{let e=globalThis.Pans?.find(r=>r.key===t)?.name;return String(e||t)};var Gr=d0,Msr=t=>t==null||t==="root"?"":String(t),fz=t=>{if(!t)return[];if(Array.isArray(t))return t;let e=[];return Object.keys(t).forEach(r=>{let n=t[r];if(!Array.isArray(n))return;let s=Msr(r);n.forEach(i=>{e.push({...i,vod_group:i?.vod_group??s})})}),e};async function qr(t,e){return{}}async function Rr(t,e){t=Array.isArray(t)?t:[t];let r=t.map(u=>{let l=nf().find(f=>f.validator(u)),d=l?.key;return{key:d,name:l?.name||mu(d),url:u,order:globalThis.Pans.findIndex(f=>f.key===d)}}).filter(u=>u.key);r.sort((u,l)=>u.order-l.order);let n=[],s=[],i=[];(await Promise.allSettled(r.map(async({key:u,url:l})=>{if(u==="ali")return await sLe(l);if(u==="quark")return await yLe(l);if(u==="uc")return await F4e(l);if(u==="tianyi"){let d=await rf.getShareData(l);if(!d)return null;let f=await Co("tianyi");return Os(f,fz(d))}if(u==="yidong"){let d=await $V.getShareData(l),f=await Co("yidong");return Os(f,fz(d))}if(u==="123"){let d=await O0.getShareData(l),f=await O0.getFilesByShareUrl(d),p=await Co("123");return Os(p,fz(f))}return u==="115"?await Q6e(l,e):u==="baidu"?await X6e(l,e):u==="xunlei"?await r5e(l,e):u==="guangyapan"?await y5e(l):null}))).forEach((u,l)=>{if(u.status==="fulfilled"){let p=u.value;p&&p.from&&p.url&&(n.push(p.from),s.push(p.url),i.push({name:r[l].name,url:r[l].url}));return}let d=String(r[l]?.key||"unknown"),f=String(u.reason?.message||u.reason||"unknown error");console.warn(`[Pan Detail] ${d} detail failed: ${f}`)});let o={};n.forEach((u,l)=>{o[u]?n[l]=`${u}-${++o[u]}`:o[u]=1});let c={};return i.forEach((u,l)=>{c[u.name]?i[l].name+=++c[u.name]:c[u.name]=1}),{froms:n.join("$$$"),urls:s.join("$$$"),links:i}}async function Nr(t,e){let r=t.params.site;if(r=="ali")return await yk(t,e);if(r=="quark")return await Sk(t,e);if(r=="uc")return await U4e(t,e);if(r=="baidu")return await dL(t,e)}async function Or(t,e){let r=t.body.flag;if(r.startsWith(await Co("ali")))return await xk(t,e);if(r.startsWith(await Co("quark")))return await vk(t,e);if(r.startsWith(await Co("uc")))return await q4e(t,e);if(r.startsWith(await Co("tianyi"))){let n=t.body.id.split("*");await rb(t);let s=n[2]||"video",i=n[3]||"",a=n[4]||"";if(s==="cas")try{let c=await rf.getShareTextPlayable(n[0],n[1],i,a);if(!c?.url){let u=rf.getShareTextResolveReason?rf.getShareTextResolveReason():"";throw new Error(u||"\u5929\u7FFCCAS\u89E3\u6790\u5931\u8D25")}return{parse:0,url:["\u539F\u753B",c.url],...c.header?{header:c.header}:{}}}catch(c){throw c}return{parse:0,url:["\u539F\u753B",await rf.getShareUrl(n[0],n[1])]}}else if(r.startsWith(await Co("yidong"))){let n=t.body.id.split("*");return{parse:0,url:["\u539F\u753B",await $V.getSharePlay(n[0],n[1],n[2]||"",n[3]||"")]}}else if(r.startsWith(await Co("123"))){await sb(t);let n=t.body.id.split("*");return{parse:0,url:["\u539F\u753B",await O0.getDownload(...n)],header:O0.getDownloadHeader()}}else{if(r.startsWith(await Co("115")))return await G6e(t,e);if(r.startsWith(await Co("baidu")))return await lL(t,e);if(r.startsWith(await Co("xunlei")))return await n5e(t,e);if(r.startsWith(await Co("guangyapan")))return await x5e(t,e)}}async function _5e(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);n.init=s.json(),fC(s.json()),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),fC(s.json());let i=!1;if(n.home.class&&n.home.class.length>0){let a=n.home.class[0].type_id,o={};if(n.home.filters){let c=n.home.filters[a];if(c)for(let u of c){let l=u.init;if(l){for(let d of u.value)if(d.v==l){o[u.key]=l;break}}}}if(s=await t.server.inject().post(`${r}/category`).payload({id:a,page:1,filter:!0,filters:o}),n.category=s.json(),fC(s.json()),n.category.list.length>0){i=!0;let c=n.category.list[0].vod_id;await E5e(t,c,n)}}if(s=await t.server.inject().post(`${r}/search`).payload({wd:"\u4ED9\u9006",page:1}),n.search=s.json(),!i&&n.search.list.length>0){let a=n.search.list[0].vod_id;await E5e(t,a,n)}return fC(s.json()),n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}async function E5e(t,e,r){let n=t.server.prefix,s=await t.server.inject().post(`${n}/detail`).payload({id:e});if(r.detail=s.json(),fC(s.json()),r.detail.list&&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{let e=globalThis.Pans?.find(n=>n.key===t)?.pic,r=String(e||"").trim();return r||Wsr[t]||""},nf=()=>[{key:"quark",name:mu("quark"),validator:pk,pic:Rl("quark")},{key:"uc",name:mu("uc"),validator:mk,pic:Rl("uc")},{key:"ali",name:mu("ali"),validator:fk,pic:Rl("ali")},{key:"baidu",name:mu("baidu"),validator:Fke,pic:Rl("baidu")},{key:"xunlei",name:mu("xunlei"),validator:Uke,pic:Rl("xunlei")},{key:"tianyi",name:mu("tianyi"),validator:Bke,pic:Rl("tianyi")},{key:"yidong",name:mu("yidong"),validator:Mke,pic:Rl("yidong")},{key:"123",name:mu("123"),validator:Wke,pic:Rl("123")},{key:"115",name:mu("115"),validator:$ke,pic:Rl("115")},{key:"guangyapan",name:mu("guangyapan"),validator:qke,pic:Rl("guangyapan")}];var $sr=["https://tv.yydsys.cc","https://tv.yydsys.top","https://tv.214521.xyz","https://yydsys.de5.net"],pz=async t=>(await t.db.getObjectDefault("/duoduo",{}))?.urls||t.config.duoduo?.urls||$sr,Fsr=async(t,e)=>{await t.db.push("/duoduo/urls",e)},Usr=async t=>{await t.db.delete("/duoduo/urls")};async function mz(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await pz(e.server)})}),t.put("/urls",async(e,r)=>{await Fsr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await Usr(e.server),r.send({code:0})})}var hz,hL=t=>{if(!hz){let e=Date.now();hz=new Promise(async r=>{let n=await pz(t),s=await Xn(n,{"User-Agent":Gr});console.log("\u591A\u591A\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return hz};function qsr(t){if(typeof t!="string"||t.length===0)return t;let r=t.indexOf('"0?a:t}catch{return t}}async function gz(t){let e=await he.get(t,{headers:{"User-Agent":Gr}});return qsr(e.data)}function Az(t){return String(t||"").replace(/\/$/,"")}function jsr(t,e){let r=e;return t("#page a").each((n,s)=>{let i=t(s).attr("href"),a=i&&i.match(/\/page\/(\d+)\.html/i);if(!a)return;let o=parseInt(a[1],10);Number.isNaN(o)||(r=Math.max(r,o))}),r}async function Hsr(t,e){return{class:[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"4",type_name:"\u52A8\u6F2B"},{type_id:"5",type_name:"\u77ED\u5267"},{type_id:"3",type_name:"\u7EFC\u827A"},{type_id:"20",type_name:"\u7EAA\u5F55"}],filters:{}}}async function Qsr(t,e){let r=await hL(t.server),n=t.body.id,s=t.body.page,i=parseInt(s,10);(!i||i<1)&&(i=1);let o=`${Az(r)}/index.php/vod/show/id/${n}/page/${i}.html`,c=await gz(o),u=Me(c),l=u("#main .module-item").map((f,p)=>{let m=u(p).find(".module-item-pic a").attr("href"),h=u(p).find(".module-item-pic img").attr("alt"),A=u(p).find(".module-item-pic img").attr("data-src")||u(p).find(".module-item-pic img").attr("src"),g=u(p).find(".module-item-text").text().trim();return{vod_id:m,vod_name:h,vod_pic:A,vod_remarks:g}}).get().filter(f=>f.vod_id&&f.vod_name),d=jsr(u,i);return{page:i,pagecount:d,limit:72,total:72*d,list:l}}async function Gsr(t,e){let r=await hL(t.server),n=Az(r),s=Array.isArray(t.body.id)?t.body.id:[t.body.id],i=[];for(let a of s)try{let o=await gz(`${n}${a}`),c=Me(o),u={vod_id:a,vod_name:c(".page-title").first().text().trim(),vod_pic:c(".mobile-play .lazyload").first().attr("data-src")||c(".mobile-play img").first().attr("data-src")||c(".mobile-play img").first().attr("src"),vod_remarks:c('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""};c(".video-info-itemtitle").each((f,p)=>{let m=c(p).text(),h=c(p).next().find("a").map((A,g)=>c(g).text().trim()).get().filter(Boolean).join(", ");m.includes("\u5267\u60C5")?u.vod_content=c(p).next().find("p").text().trim():m.includes("\u5BFC\u6F14")?u.vod_director=h.trim():m.includes("\u4E3B\u6F14")&&(u.vod_actor=h.trim())});let l=c(".module-row-info p").map((f,p)=>c(p).text().trim()).get().filter(Boolean),d=await Rr(l,t);d&&(u.vod_play_from=d.froms,u.vod_play_url=d.urls,u.vod_links=d.links),i.push(u)}catch(o){console.error("duoduo detail fetch failed",a,o)}return{list:i}}async function Vsr(t,e){let r=await hL(t.server),n=Az(r),s=t.body.page,i=t.body.wd,a=parseInt(s,10);(!a||a<1)&&(a=1);let o=encodeURIComponent(i||""),c=[`${n}/index.php/vod/search/page/${a}/wd/${o}.html`,`${n}/index.php/vod/search/wd/${o}.html`,`${n}/index.php/vod/search.html?wd=${o}&page=${a}`];for(let u of c)try{let l=await gz(u),d=Me(l),f=d(".module-search-item").map((p,m)=>{let h=d(m).find(".video-serial"),A=d(m).find(".module-item-pic > img");return{vod_id:h.attr("href"),vod_name:h.attr("title"),vod_pic:A.attr("data-src")||A.attr("src"),vod_remarks:h.text()}}).get().filter(p=>p.vod_id&&p.vod_name);if(f.length>0)return{page:a,pagecount:f.length<10?a:a+1,list:f}}catch{}return{page:a,pagecount:a,list:[]}}var S5e={meta:{key:"duoduo",name:"\u300C\u76D8\u300D\u591A\u591A",type:3},api:async t=>{t.post("/init",qr),t.post("/home",Hsr),t.post("/category",Qsr),t.post("/detail",Gsr),t.post("/play",Or),t.post("/search",Vsr),t.get("/test",_5e),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Nr)},check:hL};var bw=Re(Jn(),1),Mit=Re(v0(),1);var Rit=Re(require("http"),1);var yw=Re(require("fs"),1),sae=Re(require("path"),1);var v5e=Re(require("os"),1),zsr=t=>{if(!t)return!1;let e=typeof t.family=="string"?t.family:String(t.family||"");return e==="IPv4"||e==="4"},Ksr=t=>{let e=String(t||"").trim();return/^\d{1,3}(\.\d{1,3}){3}$/.test(e)?e.split(".").every(r=>{let n=Number(r);return Number.isInteger(n)&&n>=0&&n<=255}):!1},Ysr=t=>/^192\.168\./.test(t)||/^10\./.test(t)||/^172\.(1[6-9]|2\d|3[0-1])\./.test(t),yz=t=>/^100\.(6[4-9]|[7-9]\d|1[01]\d|12[0-7])\./.test(t),Jsr=t=>{let e=String(t||"").trim();return/^0\./.test(e)||/^127\./.test(e)||/^169\.254\./.test(e)||/^192\.0\.0\./.test(e)||/^192\.0\.2\./.test(e)||/^198\.18\./.test(e)||/^198\.19\./.test(e)||/^198\.51\.100\./.test(e)||/^203\.0\.113\./.test(e)||/^22[4-9]\./.test(e)||/^23\d\./.test(e)||/^24\d\./.test(e)||/^25[0-5]\./.test(e)},xz=(t="")=>/(rmnet|ccmni|pdp|wwan|cell|mobile|clat|v4-rmnet)/i.test(String(t||"")),Xsr=(t="")=>/(wlan|wi-?fi|eth|en\d|lan|bridge)/i.test(String(t||"")),bz=(t="")=>/(virtual|veth|vethernet|vmware|vbox|hyper-v|docker|podman|br-|wsl|utun|tun|tap|tailscale|zerotier|wireguard|wg|clash|mihomo|loopback|pseudo)/i.test(String(t||"")),Zsr=t=>{let e=0;return/^192\.168\./.test(t.ip)?e+=300:/^172\.(1[6-9]|2\d|3[0-1])\./.test(t.ip)?e+=260:/^10\./.test(t.ip)?e+=220:yz(t.ip)||(e+=180),Xsr(t.name)&&(e+=80),xz(t.name)&&(e-=320),bz(t.name)&&(e-=260),yz(t.ip)&&(e-=220),e},D0=function(){let t=String(process.env.CATPAW_HOST_IP||process.env.HOST_IP||"").trim();if(Ksr(t))return t;let e=v5e.default.networkInterfaces()||{},r=[];Object.entries(e).forEach(([a,o])=>{Array.isArray(o)&&o.forEach(c=>{if(!zsr(c)||c.internal)return;let u=String(c.address||"").trim();!u||u.startsWith("169.254.")||Jsr(u)||r.push({ip:u,name:String(a||"")})})});let n=r.map(a=>({...a,score:Zsr(a)})).sort((a,o)=>o.score-a.score),s=n.find(a=>{let o=xz(a.name),c=bz(a.name);return!o&&!c&&!yz(a.ip)});if(s)return s.ip;let i=n.find(a=>Ysr(a.ip)&&!xz(a.name)&&!bz(a.name));return i?i.ip:"127.0.0.1"};Pt();ar();St();kL();$n();Pt();St();ar();no();function Mir(t,e,r=!1){if(e===0&&!r)return t.map(i=>({...i,t:i.t!==void 0?i.t:parseFloat(i.p.split(",")[0])}));let n=t.reduce((i,a)=>{let o=a.t!==void 0?a.t:parseFloat(a.p.split(",")[0]),c=e===0?o.toFixed(2):Math.floor(o/(e*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"),p=u.p.replace(/\[([^\]]*)\]$/,`[${f}]`);return{cid:u.cid,p,m:d>1?`${c}\u200Ax\u200A${d}`:c,t:u.earliestT,like:u.like}})}).flat().sort((i,a)=>i.t-a.t)}function Wir(t){if(!O.likeSwitch)return t;let e=new Set(["[hanjutv]","[sohu]","[bilibili1]","[migu]"]);return t.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")||e.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 $ir(t,e){if(e===0)return t;let r=e*1e3,n=t.length;if(n<=r)return t;let s=n/r,i=[];for(let a=0;a([^<]+)<\/d>/g)].map(f=>({p:f[1],m:f[2]}));else if(t&&Array.isArray(t.danmuku)){let f={right:1,top:4,bottom:5},p=m=>m?parseInt(m.replace("#",""),16):16777215;i=t.danmuku.map(m=>({timepoint:m[0],ct:f[m[1]]!==void 0?f[m[1]]:1,color:p(m[2]),content:m[4]}))}else Array.isArray(t)&&(i=t);if(!i.length)return[];for(let f of i){let p,m,h,A,g;if("progress"in f&&"mode"in f&&"content"in f)h=(f.progress/1e3).toFixed(2),A=f.mode||1,g=f.color||16777215,m=f.content;else if("timepoint"in f)h=parseFloat(f.timepoint).toFixed(2),A=f.ct||0,g=f.color||16777215,m=f.content;else{if(!("p"in f))continue;let y=f.p.split(",");h=parseFloat(y[0]).toFixed(2),A=y[1]||0,y.length===4?g=y[2]||16777215:y.length>=8?g=y[3]||16777215:g=y[3]||y[2]||16777215,m=f.m}let b=f._sourceLabel||e;f.realTimeSource&&!b.includes(f.realTimeSource)&&(b=`${b}\uFF06${f.realTimeSource}`),!s&&/[&&]/.test(b)&&(s=!0),p=[h,A,g,`[${b}]`].join(","),r.push({p,m,cid:n++,like:f?.like})}let a=O.blockedWords.split(/(?<=\/),(?=\/)/).map(f=>{let p=f.trim();if(p.startsWith("/")&&p.endsWith("/"))try{return new RegExp(p.slice(1,-1))}catch(m){return _("error",`[Utils] [Danmu] \u65E0\u6548\u7684\u6B63\u5219\u8868\u8FBE\u5F0F: ${p}`,m),null}return null}).filter(f=>f!==null);_("info",`[Utils] [Danmu] \u539F\u59CB\u5C4F\u853D\u8BCD\u5B57\u7B26\u4E32: ${O.blockedWords}`),_("info",`[Utils] [Danmu] \u5C4F\u853D\u8BCD\u5217\u8868: ${(f=>Array.isArray(f)?f.map(p=>p.toString()).join(` -`):String(f))(a)}`);let c=r.filter(f=>!a.some(p=>p.test(f.m)));_("info",`[Utils] [Danmu] \u53BB\u91CD\u5206\u949F\u6570: ${O.groupMinute}`);let u=Mir(c,O.groupMinute,s),l=Wir(u),d=$ir(l,O.danmuLimit);if(O.convertTopBottomToScroll||O.convertColor==="white"||O.convertColor==="color"){let f=0,p=0;d=d.map(m=>{let h=m.p.split(",");if(h.length<3)return m;let A=parseInt(h[1],10),g=parseInt(h[2],10),b=!1;O.convertTopBottomToScroll&&(A===4||A===5)&&(f++,A=1,b=!0),O.convertColor==="white"&&g!==16777215&&(p++,g=16777215,b=!0);let y=O.colorPool.split(",").map(v=>parseInt(v.trim(),10)).filter(v=>!isNaN(v)&&v>=0&&v<=16777215),x=y[Math.floor(Math.random()*y.length)];if(O.convertColor==="color"&&g===16777215&&g!==x&&(p++,g=x,b=!0),b){let v=[h[0],A,g,...h.slice(3)].join(",");return{...m,p:v}}return m}),f>0&&_("info",`[Utils] [Danmu] [danmu convert] \u8F6C\u6362\u4E86 ${f} \u6761\u9876\u90E8/\u5E95\u90E8\u5F39\u5E55\u4E3A\u6D6E\u52A8\u5F39\u5E55`),p>0&&_("info",`[Utils] [Danmu] [danmu convert] \u8F6C\u6362\u4E86 ${p} \u6761\u5F39\u5E55\u989C\u8272`)}return O.danmuSimplifiedTraditional==="traditional"&&(d=d.map(f=>({...f,m:Ro(f.m)})),_("info",`[Utils] [Danmu] [danmu convert] \u8F6C\u6362\u4E86 ${d.length} \u6761\u5F39\u5E55\u4E3A\u7E41\u4F53\u5B57`)),_("info",`[Utils] [Danmu] danmus_original: ${r.length}`),_("info",`[Utils] [Danmu] danmus_filter: ${c.length}`),_("info",`[Utils] [Danmu] danmus_group: ${u.length}`),_("info",`[Utils] [Danmu] danmus_limit: ${d.length}`),_("info","[Utils] [Danmu] Top 5 danmus:",JSON.stringify(d.slice(0,5),null,2)),d}function uK(t){return typeof t.r!="number"||t.r<0||t.r>255||typeof t.g!="number"||t.g<0||t.g>255||typeof t.b!="number"||t.b<0||t.b>255?-1:t.r*256*256+t.g*256+t.b}function gb(t){return typeof t!="string"||t.length!==6||!/^[0-9A-Fa-f]{6}$/.test(t)?16777215:parseInt(t,16)}function Fir(t){let e=` +-----END PUBLIC KEY-----`;return a.rsaUsername=`${u}${KWe(l,this.account)}`,a.rsaPassword=`${u}${KWe(l,this.password)}`,a}async loginForCloudPc(e=!1){if(!e&&this.pcLoginState?.tokenInfo?.sessionKey&&this.pcLoginState?.tokenInfo?.sessionSecret)return this.pcLoginState;if(!this.account||!this.password)throw new Error("\u7F3A\u5C11\u5929\u7FFC\u8D26\u53F7\u6216\u5BC6\u7801\uFF0C\u65E0\u6CD5\u6267\u884CCAS\u79D2\u4F20\u6062\u590D");let r=await this.initCloudPcLoginParam(),n=await K0({method:"POST",url:`${uC}/api/logbox/oauth2/needcaptcha.do`,data:gg.default.stringify({appKey:CB,accountType:QWe,userName:r.rsaUsername}),headers:{"Content-Type":"application/x-www-form-urlencoded","User-Agent":kc["User-Agent"],Referer:uC+"/",REQID:r.reqId,...r.cookie?{Cookie:r.cookie}:{}},responseType:"text",transformResponse:[d=>d],validateStatus:()=>!0},"pc-needcaptcha"),s=String(n?.data||"").trim();if(n.status,Wt(s,80),s&&s!=="0")throw new Error("189PC\u767B\u5F55\u9700\u8981\u9A8C\u8BC1\u7801\uFF0C\u5F53\u524D\u6682\u4E0D\u652F\u6301\u81EA\u52A8\u5904\u7406");let i=await K0({method:"POST",url:`${uC}/api/logbox/oauth2/loginSubmit.do`,data:gg.default.stringify({appKey:CB,accountType:QWe,userName:r.rsaUsername,password:r.rsaPassword,validateCode:"",captchaToken:r.captchaToken,returnUrl:GWe,dynamicCheck:"FALSE",clientType:HWe,cb_SaveName:"1",isOauth2:"false",state:"",paramId:r.paramId}),headers:{"Content-Type":"application/x-www-form-urlencoded","User-Agent":kc["User-Agent"],Referer:uC+"/",REQID:r.reqId,lt:r.lt,...r.cookie?{Cookie:r.cookie}:{}},validateStatus:()=>!0},"pc-login-submit"),a=PV(r.cookie,i.headers?.["set-cookie"]),o=i?.data?.toUrl||"";if(!o)throw new Error(`189PC\u767B\u5F55\u5931\u8D25: ${i?.data?.msg||i?.status||"unknown"}`);let c=await K0({method:"POST",url:`${ea}/getSessionForPC.action`,params:{...zWe(),redirectURL:o},headers:{"User-Agent":kc["User-Agent"],Referer:cC,...a?{Cookie:a}:{}},validateStatus:()=>!0},"pc-get-session"),u=Bcr(c?.data)||c?.data||{};if(!u?.sessionKey||!u?.sessionSecret)throw new Error(`189PC\u4F1A\u8BDD\u83B7\u53D6\u5931\u8D25: ${_a(c?.data)||c?.status||"unknown"}`);let l=PV(a,c.headers?.["set-cookie"]);return l&&z0.set("cloud_cookie",l),this.pcLoginState={cookie:l,tokenInfo:{loginName:u.loginName||"",sessionKey:u.sessionKey,sessionSecret:u.sessionSecret,familySessionKey:u.familySessionKey||"",familySessionSecret:u.familySessionSecret||"",accessToken:u.accessToken||"",refreshToken:u.refreshToken||""}},this.pcLoginState?.tokenInfo?.sessionKey,this.pcLoginState?.tokenInfo?.sessionSecret,this.pcLoginState?.tokenInfo?.familySessionKey,this.pcLoginState?.tokenInfo?.familySessionSecret,Lb(l),this.pcLoginState}getCloudPcTokenInfo(e=!1){let r=this.pcLoginState?.tokenInfo||{};return e?{loginName:r.loginName||"",sessionKey:r.familySessionKey||"",sessionSecret:r.familySessionSecret||"",accessToken:r.accessToken||"",refreshToken:r.refreshToken||""}:{loginName:r.loginName||"",sessionKey:r.sessionKey||"",sessionSecret:r.sessionSecret||"",accessToken:r.accessToken||"",refreshToken:r.refreshToken||""}}async requestCloudPc(e,r="GET",n={}){let s=n&&typeof n=="object"?n:{},i=!!s.isFamily,a=await this.loginForCloudPc(!1),o=this.getCloudPcTokenInfo(i);if(!o.sessionKey||!o.sessionSecret){if(!s._retried)return await this.loginForCloudPc(!0),await this.requestCloudPc(e,r,{...s,_retried:!0});throw new Error(i?"189PC\u5BB6\u5EAD\u4E91\u4F1A\u8BDD\u83B7\u53D6\u5931\u8D25":"189PC\u4F1A\u8BDD\u83B7\u53D6\u5931\u8D25")}let c=zWe(),u=s.query&&typeof s.query=="object"?s.query:{},l=s.form&&typeof s.form=="object"?s.form:null,d=s.encryptedParams&&typeof s.encryptedParams=="object"?Pcr(s.encryptedParams,o.sessionSecret):"",f=kcr(),p=Dcr(o.sessionSecret,o.sessionKey,r,e,f,d),m=await K0({method:r,url:e,params:{...c,...u,...d?{params:d}:{}},...l?{data:gg.default.stringify(l)}:{},headers:{"User-Agent":kc["User-Agent"],Referer:cC,Date:f,SessionKey:o.sessionKey,"X-Request-ID":V0.default.randomUUID(),Signature:p,...l?{"Content-Type":"application/x-www-form-urlencoded"}:{},...a?.cookie?{Cookie:a.cookie}:{},...s.headers||{}},responseType:s.responseType||"json",transformResponse:s.transformResponse||void 0,timeout:s.timeout||15e3,validateStatus:()=>!0},`pc-request:${r}:${new URL(e).pathname}`),h=va(m.data);return(m.status===401||m.status===403||h.includes("InvalidSessionKey")||h.includes("userSessionBO is null"))&&!s._retried?(await this.loginForCloudPc(!0),await this.requestCloudPc(e,r,{...s,_retried:!0})):m}async getCloudPcFamilyId(e=!1){if(!e&&this.pcFamilyId)return this.pcFamilyId;let r=await this.requestCloudPc(`${ea}/family/manage/getFamilyList.action`,"GET",{isFamily:!0}),n=$cr(r?.data);if(n.length===0)throw new Error(`\u672A\u83B7\u53D6\u5230\u53EF\u7528\u7684189\u5BB6\u5EAD\u4E91 body=${Wt(va(r?.data),260)}`);let s=String(this.pcLoginState?.tokenInfo?.loginName||""),i=n.find(o=>s&&o.remarkName&&s.includes(o.remarkName))||n.find(o=>Number(o?.useFlag||0)===1)||n[0],a=String(i?.familyId||"");if(!a)throw new Error(`189\u5BB6\u5EAD\u4E91ID\u89E3\u6790\u5931\u8D25 body=${Wt(JSON.stringify(n),260)}`);return this.pcFamilyId=a,n.length,n.map(o=>o.remarkName||"").filter(Boolean).slice(0,3),a}async ensureCloudPcRestoreFolderV2(e={}){let r=!!e?.isFamily,n=r?"pcFamilyRestoreFolderId":"pcRestoreFolderId";if(this[n])return this[n];let s=r?"":"-11",i=r?await this.getCloudPcFamilyId():"",a=wB,o=r?`${ea}/family/file/listFiles.action`:`${ea}/listFiles.action`,c=1;for(;c<=10;){let f=await this.requestCloudPc(o,"GET",{isFamily:r,query:{folderId:s,fileType:"0",mediaAttr:"0",iconOption:"5",pageNum:String(c),pageSize:"100",...r?{familyId:i,orderBy:"1",descending:"false"}:{recursive:"0",orderBy:"filename",descending:"false"}}}),m=(f?.data?.fileListAO?.folderList||[]).find(y=>String(y?.name||"")===a);if(m?.id)return this[n]=String(m.id),this[n];if(!Number(f?.data?.fileListAO?.count||0))break;c+=1}let u=r?`${ea}/family/file/createFolder.action`:`${ea}/createFolder.action`,l=await this.requestCloudPc(u,"POST",{isFamily:r,query:{folderName:a,...r?{familyId:i}:{relativePath:"",parentFolderId:s}}});if(l.status>=400||_a(l.data))throw new Error(`\u521B\u5EFACAS\u6062\u590D\u76EE\u5F55\u5931\u8D25: ${_a(l.data)||l.status}`);let d=String(l?.data?.id||Cr(l?.data,"id")||"");if(d)return this[n]=d,this[n];throw new Error("\u65E0\u6CD5\u5B9A\u4F4DCAS\u6062\u590D\u76EE\u5F55")}async createCloudPcBatchTaskV2(e,r,n={}){let s=Array.isArray(r)?r.filter(Boolean):[];if(s.length===0)return"";let i=n&&typeof n=="object"?n:{},{isFamily:a=!1,...o}=i,c=await this.requestCloudPc(`${ea}/batch/createBatchTask.action`,"POST",{isFamily:a,form:{type:e,taskInfos:JSON.stringify(s),...o}}),u=String(e8e(c?.data)||""),l=_a(c?.data);if(c.status>=400||l||!u)throw new Error(`${e}\u6279\u91CF\u4EFB\u52A1\u521B\u5EFA\u5931\u8D25: ${l||c.status||"unknown"} body=${Wt(va(c?.data),260)}`);return u}async permanentlyDeleteCloudPcItemsV2(e,r={}){let n=Array.isArray(e)?e.filter(Boolean):[];if(n.length===0)return;let s=!!r?.isFamily,i=s?String(r?.familyId||await this.getCloudPcFamilyId()):"",a=s?{familyId:i,isFamily:!0}:{},o=await this.createCloudPcBatchTaskV2("DELETE",n,a);await this.waitCloudPcBatchTask("DELETE",o);let c=await this.createCloudPcBatchTaskV2("CLEAR_RECYCLE",n,a);await this.waitCloudPcBatchTask("CLEAR_RECYCLE",c)}async removeCloudPcRestoreFolderV2(e,r={}){if(!e)return;let s=!!r?.isFamily?"pcFamilyRestoreFolderId":"pcRestoreFolderId",i=[{fileId:String(e),fileName:wB,isFolder:1}];await this.permanentlyDeleteCloudPcItemsV2(i,r),this[s]=""}async resetCloudPcRestoreFolderV2(e={}){let r=!!e?.isFamily,n=await this.ensureCloudPcRestoreFolderV2({isFamily:r});return await this.removeCloudPcRestoreFolderV2(n,{isFamily:r}),await this.ensureCloudPcRestoreFolderV2({isFamily:r})}async restoreCasMetadataToCloudDriveV2(e,r={}){let n=!!r?.isFamily,s=String(e?.md5||"").trim().toUpperCase(),i=Number(e?.size||0),a=String(e?.name||"").trim(),o=String(e?.sliceMd5||"").trim().toUpperCase();if(!s||!i||!a)throw new Error("CAS\u5143\u6570\u636E\u7F3A\u5C11\u5FC5\u8981\u5B57\u6BB5\uFF0C\u65E0\u6CD5\u6267\u884C\u79D2\u4F20\u6062\u590D");let c=n?await this.getCloudPcFamilyId():"",u=await this.resetCloudPcRestoreFolderV2({isFamily:n}),l=VWe(i),d=n?`${TB}/family`:`${TB}/person`,f=await this.requestCloudPc(`${d}/initMultiUpload`,"GET",{isFamily:n,encryptedParams:{parentFolderId:u,fileName:a,fileSize:String(i),fileMd5:s,sliceSize:String(l),...n&&c?{familyId:c}:{},...o?{sliceMd5:o}:{}}}),p=YWe(f?.data)||{},m=_a(f?.data);if(f.status>=400||m)throw new Error(`CAS\u79D2\u4F20\u6062\u590D\u521D\u59CB\u5316\u5931\u8D25: ${m||f.status}`);let h=String(p?.uploadFileId||p?.uploadFileID||"");if(Number(p?.fileDataExists)!==1||!h)throw new Error("CAS\u79D2\u4F20\u6062\u590D\u5931\u8D25\uFF0C189\u672A\u547D\u4E2D\u6587\u4EF6");let y=await this.requestCloudPc(`${d}/commitMultiUploadFile`,"GET",{isFamily:n,encryptedParams:{uploadFileId:h,isLog:"0",opertype:"3"}}),g=JWe(y?.data)||{},b=_a(y?.data);if(y.status>=400||b)throw new Error(`CAS\u79D2\u4F20\u63D0\u4EA4\u5931\u8D25: ${b||y.status}`);let x=String(g?.userFileId||g?.id||""),A=String(g?.fileName||a);if(!x)throw new Error("CAS\u79D2\u4F20\u63D0\u4EA4\u540E\u672A\u8FD4\u56DE\u6587\u4EF6ID");return{fileId:x,fileName:A,folderId:u,familyId:c,isFamily:n}}async getCloudPcFileDownloadUrlV2(e,r={}){let n=!!r?.isFamily,s=n?String(r?.familyId||await this.getCloudPcFamilyId()):"",i=n?`${ea}/family/file/getFileDownloadUrl.action`:`${ea}/getFileDownloadUrl.action`,a=await this.requestCloudPc(i,"GET",{isFamily:n,query:{fileId:String(e||""),...n?{familyId:s}:{dt:"3",flag:"1"}},responseType:"text",transformResponse:[d=>d]}),o=String(XWe(a?.data)||""),c=Pc(o).replace(/^http:\/\//i,"https://"),u=_a(a?.data);if(a.status>=400||u)throw new Error(`\u6062\u590D\u6587\u4EF6\u4E0B\u8F7D\u5730\u5740\u83B7\u53D6\u5931\u8D25: ${u||a.status}`);if(!c)throw new Error("\u6062\u590D\u6587\u4EF6\u4E0B\u8F7D\u5730\u5740\u4E3A\u7A7A");let l=await K0({method:"GET",url:c,headers:{"User-Agent":kc["User-Agent"]},maxRedirects:0,validateStatus:()=>!0},"pc-download-redirect");return l.status>=300&&l.status<400&&l.headers?.location?Pc(String(l.headers.location||"")):c}async listOwnFiles(e="-11",r=1,n=100){let s=Math.max(Number(r)||1,1),i=Math.min(Math.max(Number(n)||100,1),200),a=e==null||e===""?"-11":String(e),o=await this.requestCloudPc(`${ea}/listFiles.action`,"GET",{query:{folderId:a,fileType:"0",mediaAttr:"0",iconOption:"5",pageNum:String(s),pageSize:String(i),recursive:"0",orderBy:"filename",descending:"false"},responseType:"text",transformResponse:[u=>u]}),c=_a(o?.data);if(o.status>=400||c)throw new Error(`\u5929\u7FFC\u76EE\u5F55\u83B7\u53D6\u5931\u8D25: ${c||o.status}`);return Mcr(o?.data)}async getOwnDownload(e){return{url:await this.getCloudPcFileDownloadUrlV2(e,{isFamily:!1}),data:{fileId:String(e||""),source:"189CloudPC"}}}async ensureCloudPcRestoreFolder(){if(this.pcRestoreFolderId)return this.pcRestoreFolderId;let e="-11",r=wB,n=1;for(;n<=10;){let u=await this.requestCloudPc(`${ea}/listFiles.action`,"GET",{query:{folderId:e,fileType:"0",mediaAttr:"0",iconOption:"5",pageNum:String(n),pageSize:"100",recursive:"0",orderBy:"filename",descending:"false"}}),d=(u?.data?.fileListAO?.folderList||[]).find(p=>String(p?.name||"")===r);if(d?.id)return this.pcRestoreFolderId=String(d.id),this.pcRestoreFolderId;if(!Number(u?.data?.fileListAO?.count||0))break;n+=1}let s=await this.requestCloudPc(`${ea}/createFolder.action`,"POST",{query:{folderName:r,relativePath:"",parentFolderId:e}});if(s.status,Wt(JSON.stringify(s.data||{}),220),s.status>=400||_a(s.data))throw new Error(`\u521B\u5EFACAS\u6062\u590D\u76EE\u5F55\u5931\u8D25: ${_a(s.data)||s.status}`);let i=String(s?.data?.id||Cr(s?.data,"id")||"");if(i)return this.pcRestoreFolderId=i,this.pcRestoreFolderId;let c=((await this.requestCloudPc(`${ea}/listFiles.action`,"GET",{query:{folderId:e,fileType:"0",mediaAttr:"0",iconOption:"5",pageNum:"1",pageSize:"100",recursive:"0",orderBy:"filename",descending:"false"}}))?.data?.fileListAO?.folderList||[]).find(u=>String(u?.name||"")===r);if(!c?.id)throw new Error("\u65E0\u6CD5\u5B9A\u4F4DCAS\u6062\u590D\u76EE\u5F55");return this.pcRestoreFolderId=String(c.id),this.pcRestoreFolderId}async createCloudPcBatchTask(e,r,n={}){let s=Array.isArray(r)?r.filter(Boolean):[];if(s.length===0)return"";let i=await this.requestCloudPc(`${ea}/batch/createBatchTask.action`,"POST",{form:{type:e,taskInfos:JSON.stringify(s),...n||{}}}),a=String(e8e(i?.data)||""),o=_a(i?.data);if(i.status>=400||o||!a)throw new Error(`${e}\u6279\u91CF\u4EFB\u52A1\u521B\u5EFA\u5931\u8D25: ${o||i.status||"unknown"} body=${Wt(va(i?.data),260)}`);return a}async permanentlyDeleteCloudPcItems(e,r={}){let n=Array.isArray(e)?e.filter(Boolean):[];if(n.length===0)return;let s=await this.createCloudPcBatchTask("DELETE",n,r);await this.waitCloudPcBatchTask("DELETE",s);let i=await this.createCloudPcBatchTask("CLEAR_RECYCLE",n,r);await this.waitCloudPcBatchTask("CLEAR_RECYCLE",i)}async waitCloudPcBatchTask(e,r,n=300){let s=Date.now();for(;Date.now()-s<15e3;){let i=await this.requestCloudPc(`${ea}/batch/checkBatchTask.action`,"POST",{form:{type:e,taskId:r}}),a=i?.data||{},o=_a(a);if(i.status>=400||o)throw new Error(`${e}\u6279\u91CF\u4EFB\u52A1\u72B6\u6001\u67E5\u8BE2\u5931\u8D25: ${o||i.status||"unknown"} body=${Wt(va(a),260)}`);let c=Wcr(a);if(c===4)return;if(c===2)throw new Error(`${e}\u6279\u91CF\u4EFB\u52A1\u5B58\u5728\u51B2\u7A81`);await new Promise(u=>setTimeout(u,n))}throw new Error(`${e}\u6279\u91CF\u4EFB\u52A1\u7B49\u5F85\u8D85\u65F6`)}async removeCloudPcRestoreFolder(e){if(!e)return;let r=[{fileId:String(e),fileName:wB,isFolder:1}];await this.permanentlyDeleteCloudPcItems(r),this.pcRestoreFolderId=""}async resetCloudPcRestoreFolder(){let e=await this.ensureCloudPcRestoreFolder();await this.removeCloudPcRestoreFolder(e);for(let r=0;r<3;r+=1)try{return await this.ensureCloudPcRestoreFolder()}catch(n){if(r>=2)throw n;await new Promise(s=>setTimeout(s,300*(r+1)))}}async restoreCasMetadataToCloudDrive(e){let r=String(e?.md5||"").trim().toUpperCase(),n=Number(e?.size||0),s=String(e?.name||"").trim(),i=String(e?.sliceMd5||"").trim().toUpperCase();if(!r||!n||!s)throw new Error("CAS\u5143\u6570\u636E\u7F3A\u5C11\u5FC5\u8981\u5B57\u6BB5\uFF0C\u65E0\u6CD5\u6267\u884C\u79D2\u4F20\u6062\u590D");let a=await this.resetCloudPcRestoreFolder(),o=VWe(n);e?.create_time;let c=await this.requestCloudPc(`${TB}/person/initMultiUpload`,"GET",{encryptedParams:{parentFolderId:a,fileName:s,fileSize:String(n),fileMd5:r,sliceSize:String(o),...i?{sliceMd5:i}:{}}}),u=YWe(c?.data)||{},l=_a(c?.data);if(c.status,u?.fileDataExists,u?.uploadFileId||u?.uploadFileID,u?.uploadHost,Wt(JSON.stringify(c?.data||{}),260),c.status>=400||l)throw new Error(`CAS\u79D2\u4F20\u6062\u590D\u521D\u59CB\u5316\u5931\u8D25: ${l||c.status}`);let d=String(u?.uploadFileId||u?.uploadFileID||"");if(Number(u?.fileDataExists)!==1||!d)throw new Error("CAS\u79D2\u4F20\u6062\u590D\u5931\u8D25\uFF0C189\u672A\u547D\u4E2D\u6587\u4EF6");let f=await this.requestCloudPc(`${TB}/person/commitMultiUploadFile`,"GET",{encryptedParams:{uploadFileId:d,isLog:"0",opertype:"3"}}),p=JWe(f?.data)||{},m=_a(f?.data);if(f.status,p?.userFileId||p?.id,p?.fileName,Wt(JSON.stringify(f?.data||{}),260),f.status>=400||m)throw new Error(`CAS\u79D2\u4F20\u63D0\u4EA4\u5931\u8D25: ${m||f.status}`);let h=String(p?.userFileId||p?.id||""),y=String(p?.fileName||s);if(!h)throw new Error("CAS\u79D2\u4F20\u63D0\u4EA4\u540E\u672A\u8FD4\u56DE\u6587\u4EF6ID");return{fileId:h,fileName:y,folderId:a}}async getCloudPcFileDownloadUrl(e){let r=await this.requestCloudPc(`${ea}/getFileDownloadUrl.action`,"GET",{query:{fileId:String(e||""),dt:"3",flag:"1"},responseType:"text",transformResponse:[o=>o]}),n=String(XWe(r?.data)||""),s=Pc(n).replace(/^http:\/\//i,"https://"),i=_a(r?.data);if(r.status,Ea(s),Wt(s,260),r.status>=400||i)throw new Error(`\u6062\u590D\u6587\u4EF6\u4E0B\u8F7D\u5730\u5740\u83B7\u53D6\u5931\u8D25: ${i||r.status}`);if(!s)throw new Error("\u6062\u590D\u6587\u4EF6\u4E0B\u8F7D\u5730\u5740\u4E3A\u7A7A");let a=await K0({method:"GET",url:s,headers:{"User-Agent":kc["User-Agent"]},maxRedirects:0,validateStatus:()=>!0},"pc-download-redirect");return a.status>=300&&a.status<400&&a.headers?.location?Pc(String(a.headers.location||"")):s}async getCasPlayableByRestoringToCloudDrive(e){let r=[],n=[{isFamily:!0,scope:"family"},{isFamily:!1,scope:"personal"}];for(let s of n)try{let i=await this.restoreCasMetadataToCloudDriveV2(e,{isFamily:s.isFamily}),a=await this.getCloudPcFileDownloadUrlV2(i.fileId,{isFamily:s.isFamily,familyId:i.familyId});return s.scope,i.fileId,i.fileName,Ea(a),{url:a}}catch(i){r.push(`${s.scope}: ${i?.message||i}`)}throw new Error(`CAS\u79D2\u4F20\u6062\u590D\u5931\u8D25: ${r.join(" ; ")}`)}async getShareTextPlayable(e,r,n="",s="",i=0){if(!e||!r)return null;this.setShareTextResolveReason(""),!this.cookie&&this.account&&this.password&&(console.log("\u6B63\u5728\u767B\u5F55\uFF0C\u8BF7\u7A0D\u7B49...."),await this.login(this.account,this.password),console.log("\u767B\u5F55\u6210\u529F,\u83B7\u53D6cookie\u6210\u529F"));let a=this.getCachedShareFileItem(e,r),o=n||a?.shareMode||"",c=s||a?.accessCode||"",u=this.cookie?{Cookie:this.cookie}:{};this.cookie,Lb(this.cookie),a?.name,Ea(a?.downloadUrl);let l=lC(a);l.length,l.slice(0,3).map(p=>Wt(p,260));for(let p of l){let m=await this.fetchShareTextFileFromUrl(p,u),h=Bb(m),y=await this.confirmShareTextPlayableCandidate(h,u,{source:"cached",fileId:e,shareId:r,candidate:Wt(p,260)});if(y)return Wt(p,260),Ea(y.url),y.header,y}let d=!1,f=this.buildShareTextApiCandidates(e,r,o,c);for(let p of f){let{playable:m,authError:h}=await this.tryResolveShareTextPlayableFromApi(p,u);if(m){let y=await this.confirmShareTextPlayableCandidate(m,u,{source:"api",fileId:e,shareId:r,api:(()=>{try{return new URL(p).pathname}catch{return p}})()});if(!y)continue;return(()=>{try{return new URL(p).pathname}catch{return p}})(),Ea(y.url),y.header,y}h&&(d=!0,(()=>{try{return new URL(p).pathname}catch{return p}})(),void 0)}return d&&i<1&&this.account&&this.password?(z0.set("cloud_cookie",""),await this.login(this.account,this.password),await this.getShareTextPlayable(e,r,o,c,i+1)):(this.cookie,Lb(this.cookie),this.getShareTextResolveReason(),null)}async getShareUrl(e,r){let 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"};!this.cookie&&this.account&&this.password&&this.index<2&&(console.log("\u6B63\u5728\u767B\u5F55\uFF0C\u8BF7\u7A0D\u7B49...."),await this.login(this.account,this.password),console.log("\u767B\u5F55\u6210\u529F,\u83B7\u53D6cookie\u6210\u529F")),n.Cookie=this.cookie;try{let s=await he.get(`${this.api}/portal/getNewVlcVideoPlayUrl.action?shareId=${r}&dt=1&fileId=${e}&type=4&key=noCache`,{headers:n}),i=await he.get(s.data.normal.url,{maxRedirects:0,validateStatus:function(o){return o>=200&&o<400}}),a="";return i.status>=300&&i.status<400&&i.headers.location?a=i.headers.location:a=s.data.normal.url,a}catch(s){if(s.response&&s.response.status===400&&this.index<2)return console.log("\u83B7\u53D6\u64AD\u653E\u5730\u5740\u5931\u8D25\uFF0C\u9519\u8BEF\u4FE1\u606F\u4E3A\uFF1A"+s.response.data),console.log("cookie\u5931\u6548\uFF0C\u6B63\u5728\u91CD\u65B0\u83B7\u53D6cookie"),z0.set("cloud_cookie",""),this.index+=1,await this.getShareUrl(e,r);console.error("Error during getShareUrl:",s.message,s.response?s.response.status:"N/A")}finally{this.index>=2&&(this.index=0,messageToDart({action:"toast",opt:{message:"\u5929\u7FFC\u8D26\u53F7\u767B\u5F55\u5931\u8D25\uFF0C\u8BF7\u524D\u5F80\u3010\u914D\u7F6E\u3011\u7AD9\u6E90\u8FDB\u884C\u914D\u7F6E",duration:5}}))}}},_f=new WV;var Ls=Ce(Xn(),1),Ue=Iu;function NB(){let t=["jCkHW6y","W5xcTfFcOCklvCo1AmkAWPy","bmoTx0i","W61oW6q","BqW6lbNdHmo2g8oEWQG","wCk1qmo0WQhdGtb4WObr","cmotkqDa","W5nPs8kcaW","EhZdVmoddG","WQrdW6xdM0ldVxhcQG3cQq","wxj4eW3cRZTfWQVdSa","W7u2W7ldTq0","hWfmW4K","6kEP5P+56lwO5y6A5AwD6lAv","etpcHvPS","cSoelZTAycxcGI49","lqNdIYxcTgW","k2ygidiD","ogy8kq","cqDtW4LHWOO","oqirzq","ECo0c31cWOyYWPFcSW","BX/cKcNcH8od","AXK+aqxdK8o/amofWQ4","WOBcU3zdmW","W6PvqmkOd8oq","WOefnCoHW6zqW49kWRRcIG","WRrcW6bt","W750mdRdRSkbg0FcJSoK","xxHInadcOd1PWPddPa","WRVcSNjNcCk4aSknDsm","WR92W6dcGa","W5mnzW","Cmorv3yn","iIxcJvnik2i","WQDvW719WQtdVmkYvsZcLW","ntqMWPRcLG","pbHfW55r","W5TFFCk5dCoBm0G","BCk4qmkgW7RcJx5mW5Ke","nYxcIx5Cpg8XhXu","tCkjecbMtbVdI0Cv","aWpdGsCMW7RcHSowWO0X","FGyDgr7dMCoWeW","ttywpmkBvG","WQhcHhxdJSoXW6fmcWC","aWpdGsCMW7RcMSoCWOCW","a8oNtLVcL8kkE8oqxYm","W5lcSK3cPmkbCCk6DSkFWPG","W69MtqlcOG","WRPrW71xWQtdVmksxYNcHG","D01nfcZcGqC","imkOW6NdKmoFWRFcGa","WQpcMx7cL8o/W6SvlaLi","W5NdQSov","W5hdK8kGaCoJmG","mmkIW4BdJCorWQlcHJu/WR0","W69LCqxcVw4","W7VdO0jQxKVcNG","W5BdUmoVEmk2W6XjxrO5","WRdcVMHnnCki","W48tW6hdOHuOW49OhMa","WO3dH8kg","nchcIv4","oYxcHeW","W4hdR8o+wmk7W6npDayf","WQOoWRG","WPmFWRJdKW","aw4bjau","W5ddPmozuSkAW6jmvJ84","W5FcOLdcM8knu8kNFSkIWPS","m0FdKYxcVG","WQqaWOjHhW","uajP","WQCVWRmAWRHjWRPar8k7WOK3eW","drJcRCkhvSohWOFcTdVcUSouESkr","Ad83","prGUySkvu3tdNvLQ","WRSndNSH","zGhcQxXdlw4","zcivF8oPsSk8","jKyRiJanqunrmG","stW2fSkduJJcML9V","wa16","nSo6t0dcTSocASoqvqe","W4zdxCk8jG","W7e3W61rW64qWQCKvCkt","WQKzbCkFkG","e8keW4SQW6ZcUI7dPSodkG","WP7cOMbagCk+","yWCLo18","tCoMqg0qbSkQWO/dKZK","cH1mW5rQWP/cImkUcLu","WOlcUSoWWPH6pSk1","WO/cRmo1jaTCWPrVfCoH","W69LtbJcOMxdG8orFW","g8kWabLrs8o2WQldPdXdsWC","WQ5xW7tdLa","gSoNuW","WQPPocW","arxcNeFcKq","BGG6da","aWDrW5znWRW","WP3cU8o3oqPbWRC","ErKIba/dLq","W53dP1j9eq8","aHBcRuvH","W7yZW4hdMZSrW5HunKa","sSkWwSoy","WQDvW71UWQFdS8k/usdcJW","W4VdVmoVqSkXW6n6wZa4","pIhcKfO","W7KZWQJcIapcUdhdRJJdSG","oGmqzmkmuw/dUee","WOSPWRVdHxfSW4WHp8of","AqGTbqK","WQfNW7/dIW","lhvSWQOF","dmoHfSkfW7FcGdr1WPLDWONdVq","WQ1NW7ldQ0xdQw3cUWlcRG","frhcQuFcOSojW5y+W6dcLG","hGFdGr0HW7xcOmoCWRy4","zCkZWRRcUc3cH8ozW6pcVmkx","c8o/hSkEW77cMg4uWRXr","A8ogzW","hCoCBMBcHW","W5abWRBdMKK","tHDRWQBcIfitgCoI","x8k/tCocWRFdHIO","zSoPexnWWPO6WORcUmkp","W5OkASoPWP9Y","WOvcW7TrWRNcSSk2qI3cGa","yWKPm8kf","bcbmW6HH","ganj","WRhcTNy","AX0HdW","hqSqW49TWPVdGmkXc1i","WQTDpIe","W6XcA8kQ","WRdcSMHbcmkK","jvtdJJS","ovL9xvJcHCkMi8ofWO4ZWPBdRq","WPm3oG","W6FcJMlcPCkk","rSoQwKCSnG","WQqsoa","WPveW68g","WOiAWRVdL8oAu2naWQVcMa","WPRcSCo4iHPD","c0FcG8kl","E8oNeG","WQLTob3dQ8kobKNcM8o7","x3rVlXdcOd0","W4RcILpcOSkU","WQD7dt/dTCkobG","W5egCmorWR5xWOvjW5JcGG","oHufwmka","WPVcVCoGfWPBWQTPe8oG","WOZdJ8kywCoorW","WPddH8ks","ovLEWRS","W7SXWRlcJrNcSsVcNahcQ23cV8k8","W7T0W4fqW64tW4rXvCk6","WPZcUSo6WO1Bja","W5C8WRBdHKPhWOeTmmou","dKefWPVcOCkSW5FcI8kCqa","W6TVvI3cSN/dN8o3ArG","W6T+WOe","W5BdUmoVEmk2W6XjxrOt","wJ8jkrVdNCo9aSokWRi","WOXSWRmWoq","WRbrW7TnWQ4","i8kOW77dSCooWQBcHHmlWRW","jSkSW7NdH8kqW7m","iuFdKJpcJNdcRq","jCkLWRVdTNddK8kEW7tcSSkK","kCk+W5fIWQ/dPG","gCkZaHLrqmo1WOBdOXDUuIe","WQ9cW6beWQRdPSkVxYZdGW","W5jFW7VcISkcaZD2WO/cRCk/xCks","WR1RWOmSkq","W5yLWR8","yGqlW6XGW5RdVmotv8oNw3i","WQ7cJSoeldC","gfO6","W5uGBCofWQe","WPtdR8kyvmoO","WRpcT8oZidW","sapcIdxcJCodbvxcVmoW","l8kMW5z3WRq","WRnCW6bDWQ4","W6DBy8kS","uYn6","W4SNWR3dNMzTW5ureCk4","W7nXW6LjW4G6","AqychHG","mIhcJLPHlwywgWq","WQeFWQ3dNCowqG","WQWTW5rmW64WW7nw","WP7cRCo9oHTSWQXRdmoM","lCkgWPZdOrr1W4xcImkY","WR/cTMvogq","u8ooxSo0aW","aqJdSdGO","WPFcUSoGWQjklCk9W77dLN8","zSkZWQRdVq","W7ZcLg5ue8kHd8onnNK","W743W4xdNJuCW7u","WQnPpa","WO4AfSkrhq","oXisyCkdvwm","W752W6HmW7GtW6rXuG","WQjfW6bsWQ/dKCkPxs/cJa","WRfxWQG7cq","z1O7vq","W5JcPLC","rG04nCkU","W6eIW5ddLq","amoakW","aeGAcau5E35xeG","W4BdO8k7j2q","nbJcU1ddL8ks","yX13","yXNcLtm","E8k9WRRdSa","WRiil8kojSkN","WQ7cGNxdKCoDW4S","WQxcQ8oYW5i","W5WWWQZdVMTIW5mHbCkD","W6rBFG","k2GgidiD","mLLiWPSXWONdSG","eSoXxexcJa","W4mnWQ7dJ8oGwgngWQFcVG","tKKObb7dG8oQwG","smk8wmos","WQT0W68","ofnuWRKKWOi","FZ47Eq","haZdLJWWW6tcPG","g8oIB1/cIG","WQhdO8kL","W6RdQfu","W4zrW4nTW485W5rfDmkI","W7n9W6LfW7uw","j8kWW7f4WRC","W693W7rwW5iwW6P2rmk3","WQGdWQr3chS","WOpdICkLr8oHzCo8W7m","mMldGc7cQq","gGpdLIyS","W4imv8o2WQrFWPLl","WQP8WPyMi3G","hSoPtq","ESoKagzs","jqeSAmkm","ff/cRSodWPO","WOBdICkeD8oMymo9","BSkDWR7dQhhcHSoiWRVdVCk3","WQHHidNdOSkD","WQ1NbqK","qa0rdmkO","WQ/cSmo1jbPSWQXOfCoS","WQ0zimkDj8k8","hbhdHICNW7pdSSokWO41","W4lcOGtcNCk3FSoV","WPOeWQpdVSow","WQ1NW7ldQ0xdQw3cUXhcTq","W6JdTSoyC8kP","sSkjWQldJY4","vv7dNmoefCkvW4S","mhnNmtmzrLK0Fa","rSoMvv8auSkHWOhdJtW","W4xdR8oYrG","W5umumo7WQzt","W4S0WQRdNMy","pSkyW6T9WRa","eSo8uK0","WQH9iI7dS8kgeey","ifLPWQOIWOpdTmoT","BSkYWQ0","W5egCmorWR5xWOvjW4hcGa","W5hdKCk9","tqj9","xf4jWOGWW4RcN8k7ihpcOMT9","WOjGWQtdL2SUW6ikp8ki","WOWhW6tdGSogxI9hWQRcLG","f3tdKaBcTW","jHlcQ0BdLG","lCk+W6u","WRPrW71xWQtdVmkovspcHW","WPCPjgqh","wupdVSoehSkeW4y","CaG6bapdNSoFf8opWQ4","W7pdR0m","o3iUjZya","W5G6WRBdJMj3","WOudWQxdNW","fM52FCosbhVcU39lrmovFq","WPVcVCoGbrDoWRfJmCoL","WOFdG8kcC8oYD8o9W6r+W5O","WRxdTSkbxCoS","WOa+DMiBWQdcS8oT","W4tdS8oV","l8kOW7pdKq","oYmnECk4","Bmohv8oIv8oQ","dHCwzCoAa2tdJYiM","WQTTWOmQnwW","W71iz8kK","a8o1ccfX","aHj/WQJdPCoQWRxdKmofbq","WQaOWOG","BCk1WQldRdVcKa","uuZdRq","W6ZdSKbQu0JcVColdSo+","F8kUWQFdTq","W5RdTfn3vrVcMSoqfCo1","W6H3W7vgW7i","WOeVjgiBWQhcTCkXWR4","omk0W6j+WQFdSa","hxhcPG","lCk0W7fiWRFdOGpdGSodda","W6xcTK3cPSk0","W7hdRCkSg3JcHxKZrfu","qd4Uzmo3r8kKWQbmW4a","tZaNAmkThW","WQldH8kfw8oKiW","m1noWO04WOVdQmoVvSoX","W4dcQfFcVmk2wSk0ACkxWRy","WQqaWQ16dG","WQj4WOuQngvKa8onWQ4","W6v5yX7cTwRdJG","nrP2W5jO","W7FdSLvO","WPRcUCoMp1aAW7aXt8k6","WRP4WOiMe25rcmodWRK","c8ooks1tyJ8","WRRcS8oFWPPn","yNDUWP06WO/dSW","W6m3W6pdTZC","frdcUf3cHmouW4y+W5NcLG","W4nRgwOMWQpcLmkB","W7ZdSCkabuJcGG","kCkWW4LOWQS","pY1HCCkOv8o1W7niWPi","gCotmGu","Bhj/maRcOdPf","qJWSiSkFwW","lupcICoAWOW","WRpcNKrcda","vmkfFCo5WO0","WRlcIN8","s0ldR8osfa","CCoJfKHwWOyxWPhcS8kL","WRbrW71w","ySoCF8o+D8oXWOhdGKxdRG","W5iMWOJdGwj6W4aMl8kr","WQaeWRPba27cJqu0wa","W4pdSSo0xW","FGW9gq","W6OGW5RdNW","BSovcq","WOFcJNniiCoSk8kxCYi","WPlcJmohhZW","oGCozmkw","WQnSW6/dJa","WQmDpCkFbSkMuq","evNcO8osWQG","g8o8sv/cT8oynCknsqO","hq8aWQFcOa","y8oXW4rRWQ/dRXtdSmoZha","W5OgASoLWQjE","W7qBWP/dSKjwW7umdmkM","WQGpd8kiiCk1ra","qtNcRHtcUmoWogBcKSok","AuzsCCotaZxcQgaV","o8kNWPZdPa","hCotpHTxBYpcRZiR","W746WRtcJbJdRs7cVshdSW","o8kwW4j2WOW","mSouDmoKE8oiWOy","W5NdUSkidwRdNa","WO/cT8o4bcK","WRbcW6zDWQ7dOCk1","WOu6jgu","W7XRvGq","me/dMZm","W750W6S","i8kOW77dQSodWQBcKbmSWR0","WPmlWR/dKW","rSoTaxqu","CCkyzCo3WOC","WQPvWR0","W5X5zWNcOG","WPlcMCo3nrbAWQ1YkmoN","WQxcJM/dQCo8W65kjYvs","WPFcUSoGWQTAomkXW7tdLMu","qqa6qLNcG8kPwSkFW7C","n8kCWOFdVa","W5RcK37cPmkc","W6XiFmkMea","BCoXBSooDW","p33cJCojWOG","WOtcR8otbJK","W6foESk5","WQLJW4RdI1K","kCoKtuRcIW","ns7cNG","W689qvRdVZJcGCkGFue","WOCuhKq4","W7FdSCkAi0NcNMyYwLm","uenFcsy","WO3dJCka","AZ0I","FqtcLta","WRBcHeJdJSoMW6zwjq","kXOQW6W","j0pdGJNcV2C","W7FdO2P9xG","WQhcPmkHa2/cJ0yr","n0dcTCoFWPLkW6KjcCkf","W7NdQKbS","WRdcJJVdNSo1W7TzEa","uKZdSmot","b8oevehcRW","W64RW4bXAZTwnCoJWRXGqG","Da1/WQdcOeCveSouiG","W4XWW6zqW6q9W6rQvCkt","kqddPJqB","dmoygrfXBJNcKWix","WPytpmkEeSkMt8okca","v8kHsG","nYxcIx5Cpg8Ddb8","W61PqqpcSMxdGW","WPddH8keqCoIumo9W6P+W5y","B8omu8oSFCoA","WPu+iKOaWRlcTmkuWQBcRq","WRCaWRXHdG","fa3dKsS","WQipWQ0","wSoIrL8a","f8oalWfDBX/cGGyD","zCkDWQ3dUZhcL8odWRNdLCkP","BXRcNsK","ur/dQCof","ygddLwHajMmDcqu","sLFdPIaMW5RcQSoR","W7xdUSkneexcMNO","W7frW7yNuJNcLseswwdcMW","WQqslq","WOddRmossmkrW5Ts","WRxcVgmgo8kPcCkjAgm","kNpdJWlcOG","dafZW45W","WQ/cO3rpeSkRa8keFG","WPelWQxdN8oCxq","e8k4W6f0WRhdPdddKSoIfG"];return NB=function(){return t},NB()}(function(t,e){let r=Iu,n=t();for(;;)try{if(-parseInt(r(264,"HY@7"))/1*(-parseInt(r(483,"X3F3"))/2)+-parseInt(r(420,"yQ0$"))/3*(parseInt(r(459,"g(!R"))/4)+-parseInt(r(521,"BU]B"))/5+-parseInt(r(437,"GqfV"))/6*(-parseInt(r(540,"xKz9"))/7)+-parseInt(r(309,"Hd%w"))/8+-parseInt(r(519,"GqfV"))/9+-parseInt(r(303,"VLlT"))/10*(parseInt(r(640,"ud*G"))/11)===e)break;n.push(n.shift())}catch{n.push(n.shift())}})(NB,1509081+-4534*202+-7262*-31);function Iu(t,e){let r=NB();return Iu=function(n,s){n=n-(-1*9070+1*7368+1887);let i=r[n];if(Iu.HVkERR===void 0){var a=function(d){let f="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=",p="",m="";for(let h=0,y,g,b=0;g=d.charAt(b++);~g&&(y=h%4?y*64+g:g,h++%4)?p+=String.fromCharCode(255&y>>(-2*h&6)):0)g=f.indexOf(g);for(let h=0,y=p.length;h{let e=Ue,r={PbSzR:function(a,o){return a(o)}},n=r[e(312,"Dms*")](String,t[e(590,"M6ri")]||t[e(637,"Xz3H")]||"")[e(298,"SlEc")]()[e(375,"yQ0$")](/^\./,"")[e(418,"2iiJ")+"e"]();if(n)return n;let s=r[e(312,"Dms*")](String,t[e(366,"Lf!n")]||t[e(533,"Lf!n")]||"")[e(615,"u6If")]()[e(397,"aY4R")+"e"](),i=s[e(587,"BmoS")](/\.([a-z0-9]{1,10})$/i);return i?i[11358+-1*11357]:""},Ycr=t=>Vcr[Ue(557,"q(74")](o8e(t)),Jcr=t=>{let e=Ue,r={qDaxr:function(n,s){return n(s)},RVPzH:function(n,s){return n||s}};try{return r[e(591,"K1!f")](decodeURIComponent,r[e(525,"#HTl")](t,""))}catch{return r[e(447,"yQ0$")](t,"")}},Xcr=t=>encodeURIComponent(String(t||""))[Ue(549,"^JXU")](/\*/g,Ue(395,"#HTl")),Zcr=t=>{let e=Ue,r={PsEee:function(s,i){return s(i)},lvNen:function(s,i){return s||i},VwUEX:function(s,i){return s===i},UPwok:e(620,"LK7@"),YkCXw:e(515,"aY4R"),AUlWp:e(372,"L*2Z")},n=r[e(277,"]UpJ")](String,r[e(597,"2iiJ")](t,""));if(!n)return"";if(r[e(562,"VLlT")](typeof globalThis[e(619,"i*jm")],r[e(643,"M6ri")])){let s=globalThis[e(477,"X3F3")](n),i=Uint8Array[e(244,"^JXU")](s,a=>a[e(461,"^zju")](9710+911*3+-12443));return new TextDecoder()[e(301,"K1!f")](i)}return globalThis[e(430,"^Ez1")]?globalThis[e(539,"BU]B")][e(482,"K1!f")](n,r[e(610,"u6If")])[e(621,"VP^I")](r[e(611,"(3I$")]):""},$V=class{constructor(){let e=Ue,r={UqinQ:e(228,"cB)w")+"4",OjFaP:e(208,"cB)w")+e(329,"yQ0$")+e(190,"ud*G")+e(380,"g(!R")+e(254,"BmoS")+e(281,"X3F3")+e(382,"xw^n")+e(335,"^Ez1")+e(548,"^Ez1")+e(464,"g(!R")+e(218,"#HTl")+"6",IVXpT:e(364,"X3F3")+e(427,"xKz9")+e(613,"Xz3H")+e(344,"36zq"),WIFmo:e(489,"BU]B")+e(357,"K1!f"),oIBdp:e(194,"houj")+e(455,"gUDE")+e(453,"L*2Z")+e(292,"]UpJ")+e(262,"L*2Z")+e(367,"dQcf")+e(369,"LK7@")+e(259,"2iiJ")+e(627,"gUDE")+"|",rTotZ:e(252,"i*jm")+e(394,"&LU5")+e(517,"(3I$")+e(628,"BU]B")+e(478,"J!^T")+e(600,"(3I$")+e(507,"houj")+"/",oeVEc:e(511,"X3F3")+e(396,"M6ri")},n=r[e(206,"q(74")][e(232,"9Wt%")]("|"),s=184*-47+2273+6375;for(;;){switch(n[s++]){case"0":this[e(538,"yQ0$")]={"User-Agent":r[e(251,"9Wt%")],Accept:r[e(419,"UghT")],"Content-Type":r[e(485,"q(74")],"hcy-cool-flag":"1","x-deviceinfo":r[e(233,"^Ez1")]};continue;case"1":this[e(401,"^Ez1")]="";continue;case"2":this[e(203,"BmoS")]=[/https:\/\/yun.139.com\/shareweb\/#\/w\/i\/([^&/?#]+)/,/https:\/\/caiyun.139.com\/m\/i\?([^&/?#]+)/,/https:\/\/caiyun.139.com\/w\/i\/([^&/?#]+)/];continue;case"3":this[e(516,"K1!f")]=r[e(188,"2iiJ")];continue;case"4":this[e(213,"36zq")]={};continue;case"5":this.x=Ls.default[e(333,"bz%B")][e(569,"sp%a")][e(324,"GqfV")](r[e(223,"^JXU")]);continue}break}}[Ue(642,"M6ri")+Ue(214,"Hd%w")+"n"](){let e=Ue,r={ydGGY:function(s,i){return s(i)}},n=Kcr[e(492,"#L2J")](s=>globalThis[e(267,"9[09")]?.[e(487,"bz%B")]?.[s])[e(639,"BU]B")](s=>String(s||"")[e(368,"9[09")]());return r[e(352,"^JXU")](String,globalThis[e(340,"BmoS")+e(362,"#L2J")]||n||"")[e(229,"xw^n")]()[e(552,"2iiJ")](/^Basic\s+/i,"")[e(199,"(3I$")]()}[Ue(499,"#HTl")+Ue(632,"9[09")+"er"](){let e=Ue,r=this[e(345,"X3F3")+e(391,"9[09")+"n"]();return r?e(210,"M6ri")+r:""}[Ue(508,"]UpJ")+Ue(635,"X3F3")+Ue(584,"NjSy")](){let e=Ue,r={zMwjK:function(s,i){return s(i)},iUnTy:e(246,"^Ez1")+e(520,"9[09")+e(354,"X3F3")},n=this[e(432,"GqfV")+e(214,"Hd%w")+"n"]();if(!n)return"";try{return r[e(495,"q(74")](Zcr,n)[e(248,"2iiJ")](":")[-5853+-1*1549+-7403*-1]||""}catch{return console[e(268,"UghT")](r[e(336,"K1!f")]),""}}[Ue(272,"aY4R")](e={}){let r=Ue,n={...this[r(219,"Hd%w")],...e},s=this[r(280,"sp%a")+r(448,"^JXU")+"er"]();return s&&(n[r(530,"SlEc")+r(439,"i*jm")]=s),n}[Ue(320,"UghT")+Ue(428,"bz%B")](){let e=Ue,r={sbgUb:e(553,"xKz9")},n=this[e(371,"^Ez1")+e(383,"Dms*")+"n"]();return n?Ls.default[e(564,"ud*G")](n)[e(299,"&LU5")]()[e(532,"9[09")](0,-199*31+1972+-145*-29):r[e(498,"2iiJ")]}[Ue(318,"M6ri")+Ue(379,"Lf!n")](e){let r=Ue,n={ZtIol:function(i,a){return i===a},KIKGI:r(589,"36zq"),ynhEe:function(i,a){return i(a)},xwGPF:function(i,a){return i||a}};if(e&&n[r(216,"J!^T")](typeof e,n[r(275,"g(!R")]))return e;let s=n[r(608,"BU]B")](String,n[r(287,"#HTl")](e,""))[r(192,"Lf!n")]();if(!s)return null;try{let i=this[r(399,"NjSy")](s);if(i)return JSON[r(324,"GqfV")](i)}catch{}try{return JSON[r(617,"gUDE")](s)}catch{return null}}async[Ue(588,"xKz9")+"pi"](e,r,n=-11*629+5778+-3047*-3){let s=Ue,i={ayajH:function(c,u){return c+u},MPkvn:function(c,u){return c!==u}},a=JSON[s(338,"^Ez1")](this[s(634,"zRnL")](JSON[s(542,"Vq%T")](r))),o=await he[s(353,"J!^T")](i[s(574,"i*jm")](this[s(250,"bz%B")],e),a,{headers:this[s(546,"sp%a")](),timeout:n});return i[s(473,"ud*G")](o[s(567,"bz%B")],-875+-2*-2789+79*-57)?null:this[s(318,"M6ri")+s(230,"ll@N")](o[s(404,"yQ0$")])}[Ue(554,"9[09")+Ue(278,"#HTl")+"fo"](){let e=Ue;return{account:this[e(294,"VLlT")+e(451,"u6If")+e(186,"u6If")](),accountType:1}}[Ue(240,"gUDE")+Ue(604,"#HTl")+"nt"](e){let r=Ue,n={lbbaq:function(s,i){return s===i},uOHOM:function(s,i){return s===i},ZRcZh:function(s,i){return s(i)}};return e?n[r(596,"#L2J")](e[r(616,"dQcf")],-134*-32+6741+5513*-2)?!0:n[r(293,"UghT")](e[r(616,"dQcf")],-5995+-1*-5995)&&n[r(374,"GqfV")](Ycr,e):!1}[Ue(331,"VLlT")](e){let r=Ue,n={iNYxR:function(a,o){return a==o},kNsUe:r(191,"Hd%w"),OfXkN:function(a,o){return a===o},IiIeZ:r(189,"HY@7"),TuBsb:function(a,o){return a!==o}},s=Ls.default[r(636,"NjSy")][r(314,"bz%B")][r(339,"BU]B")](9608+-421*9+-5803),i="";if(n[r(555,"Hd%w")](n[r(474,"J!^T")],typeof e)){let a=Ls.default[r(373,"dQcf")][r(488,"9[09")][r(321,"36zq")](e);i=Ls.default[r(624,"VLlT")][r(469,"g(!R")](a,this.x,{iv:s,mode:Ls.default[r(547,"(3I$")][r(195,"BU]B")],padding:Ls.default[r(235,"&LU5")][r(274,"#L2J")]})}else if(n[r(551,"bz%B")](typeof e,n[r(409,"Xz3H")])&&n[r(512,"Hd%w")](e,null)){let a=JSON[r(454,"2iiJ")](e),o=Ls.default[r(291,"yQ0$")][r(300,"houj")][r(412,"K1!f")](a);i=Ls.default[r(465,"GqfV")][r(581,"Dms*")](o,this.x,{iv:s,mode:Ls.default[r(502,"VP^I")][r(204,"9Wt%")],padding:Ls.default[r(501,"M6ri")][r(544,"HY@7")]})}return Ls.default[r(424,"nlmA")][r(446,"NjSy")][r(202,"UghT")](s[r(638,"gUDE")](i[r(224,"^zju")]))}[Ue(393,"aY4R")](e){let r=Ue,n=Ls.default[r(622,"(3I$")][r(563,"^zju")][r(513,"9[09")](e),s=n[r(390,"]UpJ")](),i=s[r(236,"zRnL")][r(445,"X3F3")](8923+8919*-1);s[r(282,"Vq%T")](s[r(201,"xKz9")]),n[r(249,"L*2Z")](i);let a=Ls.default[r(323,"36zq")][r(209,"cB)w")][r(468,"nlmA")](n);return Ls.default[r(583,"M6ri")][r(399,"NjSy")](a,this.x,{iv:s,mode:Ls.default[r(322,"Dms*")][r(204,"9Wt%")],padding:Ls.default[r(625,"nlmA")][r(630,"^zju")]})[r(384,"X3F3")](Ls.default[r(417,"cB)w")][r(491,"9Wt%")])[r(593,"dQcf")]()}async[Ue(510,"u6If")](e){let r=Ue;this[r(594,"Hd%w")][r(573,"VP^I")](n=>{let s=r,i=n[s(480,"Lf!n")](e);i&&i[-4523*1+-3139*1+79*97]&&(this[s(471,"dQcf")]=i[-1*-6629+4418+-11046])})}async[Ue(400,"u6If")+"fo"](e){let r=Ue,n={ZSEKa:r(506,"gUDE")+r(463,"(3I$")+r(614,"GqfV")+r(575,"BU]B")+r(576,"X3F3"),KZjNB:r(237,"#L2J")+r(265,"VLlT"),aNhzp:r(425,"i*jm")+r(606,"Dms*")+r(185,"UghT")};if(!this[r(536,"xKz9")])return console[r(522,"Hd%w")](n[r(348,"Lf!n")]),null;let s=this[r(381,"yQ0$")+r(302,"NjSy")]()+"-"+this[r(443,"J!^T")]+"-"+e;if(this[r(543,"^Ez1")][s])return this[r(592,"Dms*")][s];let i=this[r(389,"q(74")+r(350,"L*2Z")+"fo"](),a={getOutLinkInfoReq:{account:i[r(444,"#HTl")],linkID:this[r(486,"GqfV")],passwd:"",caSrt:0,coSrt:0,srtDr:1,bNum:1,pCaID:e,eNum:200},commonAccountInfo:i};try{let o=(await this[r(212,"q(74")+"pi"](n[r(377,"houj")],a))?.[r(442,"X3F3")];return this[r(456,"X3F3")][s]=o,o}catch(o){return console[r(347,"xw^n")](n[r(286,"9Wt%")],o),null}}async[Ue(211,"VP^I")+"ta"](e){let r=Ue,n={qGGmS:function(c,u){return c in u},JlKpb:function(c,u){return c>u},TRqPl:function(c,u){return c(u)},hjRpN:r(288,"Lf!n"),nTSIC:r(580,"cB)w"),ZlpeO:function(c,u){return c===u}};if(!e)return{};let s=e[r(435,"#HTl")](n[r(582,"i*jm")]),i=s?n[r(466,"i*jm")]:e;s&&await this[r(356,"xw^n")](e);let a={},o=await this[r(570,"gUDE")+"le"](i);o&&Array[r(421,"cB)w")](o)&&await Promise[r(341,"aY4R")](o[r(550,"LK7@")](async c=>{let u=r,l=c[u(269,"]UpJ")]||c[u(452,"yQ0$")];!n[u(263,"BmoS")](l,a)&&(a[l]=[]);let d=await this[u(205,"BmoS")+"l"](c[u(238,"9[09")]);d&&n[u(221,"sp%a")](d[u(481,"^Ez1")],-2*4478+-1045*-3+-5821*-1)&&a[l][u(361,"2iiJ")](...d)}));for(let c in a)(!Array[r(496,"LK7@")](a[c])||n[r(290,"i*jm")](a[c][r(605,"bz%B")],0))&&delete a[c];if(n[r(365,"^Ez1")](Object[r(457,"L*2Z")](a)[r(586,"xKz9")],2388+2388*-1)){let c=await this[r(514,"aY4R")+"l"](n[r(285,"HY@7")]);c&&Array[r(612,"zRnL")](c)&&n[r(598,"9Wt%")](c[r(579,"VP^I")],37*-22+-7256+8070)?a[n[r(247,"#HTl")]]=c:(a[n[r(234,"g(!R")]]=await this[r(423,"ud*G")+"le"](e),a[n[r(193,"xw^n")]]&&Array[r(215,"]UpJ")](a[n[r(247,"#HTl")]])&&(a[n[r(603,"ud*G")]]=a[n[r(295,"ll@N")]][r(490,"#HTl")](u=>u&&Object[r(405,"yQ0$")](u)[r(505,"sp%a")]>-8299+204*-17+-1*-11767)))}return Object[r(187,"aY4R")](a)[r(599,"M6ri")](c=>{let u=r,l={wlTrp:function(f,p){return n[Iu(629,"K1!f")](f,p)}},d=Array[u(257,"bz%B")](a[c])?a[c]:[];a[c]=d[u(196,"(3I$")](f=>f&&f[u(386,"&LU5")]&&f[u(500,"M6ri")])[u(476,"^Ez1")](f=>{let p=u;return{vod_name:f[p(307,"zRnL")],vod_id:[f[p(436,"]UpJ")],f[p(568,"&LU5")],l[p(441,"^zju")](Xcr,f[p(566,"(3I$")]),f[p(385,"ud*G")]??""][p(565,"SlEc")]("*"),vod_size:f[p(270,"K1!f")]}}),!a[c][u(226,"VLlT")]&&delete a[c]}),a}async[Ue(460,"L*2Z")+"le"](e){let r=Ue,n={xjEva:r(217,"NjSy"),OySuD:r(242,"u6If"),cCiGw:function(s,i){return s>i},jTZlg:r(472,"9[09")+r(342,"q(74")+r(306,"&LU5")};if(!e)return null;try{e=e[r(198,"NjSy")](n[r(545,"Dms*")])?n[r(426,"Lf!n")]:e;let i=await this[r(623,"dQcf")+"fo"](e);if(!i||!i[r(289,"L*2Z")])return null;let a=i?.[r(253,"houj")],o=a[r(197,"zRnL")](d=>d[r(358,"Xz3H")]),c=a[r(403,"M6ri")](d=>d[r(273,"BU]B")]),u=/App|活动中心|免费|1T空间|免流/,l=[];if(a&&n[r(527,"dQcf")](a[r(231,"ud*G")],-1*-3875+-7826+3951)){o[r(220,"xw^n")]((f,p)=>{let m=r;!u[m(243,"X3F3")](f)&&l[m(408,"BU]B")]({name:f,path:c[p]})});let d=await Promise[r(484,"UghT")](c[r(595,"i*jm")](async f=>this[r(279,"&LU5")+"le"](f)));return d=d[r(360,"J!^T")](f=>f!=null),[...l,...d[r(327,"SlEc")]()]}}catch(s){return console[r(633,"UghT")](n[r(283,"q(74")],s),null}}async[Ue(609,"L*2Z")+"l"](e){let r=Ue,n={ewSlk:function(s,i){return s in i},DQaui:r(537,"X3F3"),xCVtO:function(s,i){return s!==i},hTzpE:function(s,i){return s!==i},kTnwJ:r(200,"NjSy")+r(433,"J!^T")+r(607,"q(74")};try{let s=await this[r(400,"u6If")+"fo"](e);if(!s||!n[r(531,"BmoS")](n[r(349,"zRnL")],s))return null;let i=s[r(337,"J!^T")];if(n[r(458,"VP^I")](i,null))return i[r(601,"LK7@")](o=>this[r(304,"9Wt%")+r(311,"xKz9")+"nt"](o))[r(571,"Lf!n")](o=>({name:o[r(572,"Xz3H")],contentId:o[r(602,"LK7@")],linkID:this[r(319,"HY@7")],size:o[r(398,"]UpJ")],path:o[r(449,"g(!R")]||"",coType:o[r(518,"BmoS")],suffix:o8e(o)}));if(n[r(558,"ud*G")](s[r(227,"BmoS")],null)){let a=s[r(413,"36zq")][r(560,"xw^n")](c=>c[r(359,"Xz3H")]),o=await Promise[r(271,"xKz9")](a[r(414,"nlmA")](c=>this[r(351,"ll@N")+"l"](c)));return o=o[r(363,"SlEc")](c=>c&&c[r(255,"dQcf")]>0),o[r(305,"NjSy")]()}}catch(s){return console[r(284,"Lf!n")](n[r(467,"gUDE")],s),null}}[Ue(493,"LK7@")+Ue(479,"LK7@")](e){let r=Ue;return e&&(e[r(535,"gUDE")]||e[r(406,"u6If")+"L"]||e[r(261,"xw^n")+"L"]||e[r(346,"g(!R")+r(438,"L*2Z")])||""}async[Ue(241,"36zq")+Ue(239,"HY@7")+Ue(618,"BmoS")](e,r){let n=Ue,s={AsxeE:n(376,"9[09")+n(310,"nlmA")+n(308,"i*jm")},i=this[n(554,"9[09")+n(326,"(3I$")+"fo"](),a={getContentInfoFromOutLinkReq:{contentId:e,linkID:r,account:i[n(317,"]UpJ")]},commonAccountInfo:i},o=await this[n(470,"#L2J")+"pi"](s[n(355,"yQ0$")],a);return this[n(450,"9[09")+n(260,"Vq%T")](o?.[n(442,"X3F3")]?.[n(370,"ll@N")+"o"])}async[Ue(497,"dQcf")+Ue(410,"u6If")+"ad"](e,r){let n=Ue,s={solRV:n(504,"xKz9")+n(431,"X3F3")};if(!this[n(294,"VLlT")+n(387,"Dms*")+"er"]()||!e)return"";let i=this[n(541,"#HTl")+n(422,"Xz3H")+"fo"](),a={dlFromOutLinkReqV3:{account:i[n(494,"ll@N")],linkID:r,coIDLst:{item:[e]}},commonAccountInfo:i};return(await this[n(388,"i*jm")+"pi"](s[n(266,"#HTl")],a))?.[n(440,"LK7@")]?.[n(434,"sp%a")]||""}async[Ue(462,"Dms*")+"ay"](e,r,n="",s=""){let i=Ue,a={OogvC:function(c,u){return c(u)},SvzcU:function(c,u){return c||u}},o=a[i(529,"#HTl")](Jcr,n);return this[i(316,"yQ0$")+i(325,"xw^n")+"er"]()?await this[i(641,"#HTl")+i(207,"VLlT")+"ad"](a[i(378,"J!^T")](o,e),r):await this[i(411,"q(74")+i(313,"xw^n")+i(528,"M6ri")](e,r)}},UV=new $V;var PXr=Ce(Xn(),1),le=Ul;(function(t,e){let r=Ul,n=t();for(;;)try{if(parseInt(r(416,"yDmj"))/1*(parseInt(r(1089,"MAI["))/2)+parseInt(r(418,"Wd#O"))/3+parseInt(r(833,"Cw#%"))/4*(-parseInt(r(460,"nsNg"))/5)+parseInt(r(1338,"pr%%"))/6*(-parseInt(r(1282,"csNL"))/7)+-parseInt(r(581,"CsF7"))/8+-parseInt(r(1278,"]g^X"))/9+parseInt(r(335,"Y(gf"))/10===e)break;n.push(n.shift())}catch{n.push(n.shift())}})(BB,145988);var Y0=le(414,"JZfJ")+le(1340,"EdkW")+"n",c8e=le(466,"w*gd")+le(535,"L^u@")+le(1251,"1XpI"),yg=le(813,"XIxu"),eur=le(955,"5zx!")+le(377,"h#tw")+le(1001,"P(Jb")+le(842,"1XpI")+le(1301,"P(Jb")+le(481,"47(V"),tur=le(1134,"JkQT")+le(521,"DhQd")+le(695,"Y(gf")+le(1242,"Z@sc")+le(1238,"^*m#"),rur=le(1101,"o3rS")+le(1177,"$r(y")+le(1037,"ZfqP")+le(1211,"Z%L#")+le(1325,"4PrE"),nur=le(372,"Wd#O")+le(1380,"MAI[")+le(817,"ZfqP")+le(1147,"Bp*y")+le(967,"Fii^"),sur=le(351,"XBJe")+le(1059,"P(Jb")+le(646,"yDmj")+le(513,"5zx!")+le(1379,"M]CY"),f8e=le(412,"y412")+le(455,"QFD%"),iur=""+Y0+f8e,p8e=le(1305,"P(Jb")+le(585,"o3rS"),aur=""+Y0+p8e,m8e=le(541,"Mhe$"),h8e="3",our=["a","d","e","f","g","h","l","m","y","i","j","n","o","p","k","q","r","s","t","u","b","c","v","w","s","z"],OB=le(410,"y412")+le(733,"csNL")+"p",ii=t=>String(t||"")[le(1353,"#rid")]();function u8e(t,e=-79*83+1067*-9+-32*-505){let r=le,n={aZklK:function(i,a){return i(a)}},s=n[r(1223,"5zx!")](Number,t);return Number[r(872,"oEMo")](s)?s:e}function Ag(t){let e=le,r=Array[e(680,"XIxu")](t)?t:[t];return[...new Set(r[e(1169,"rgzd")](n=>Number(n))[e(661,"L^u@")](n=>Number[e(774,"Z@sc")](n)&&n>1811*-3+-52*168+14169))]}function FV(t={}){let e=le,r={pNDDH:function(o,c){return o(c)}},n=r[e(493,"w*gd")](Ag,t[e(434,"H&b]")]||t[e(1363,"Fii^")]),s=r[e(392,"o#03")](Ag,t[e(771,"csNL")]||t[e(1150,"JkQT")]),i=r[e(1076,"Z@sc")](ii,t[e(1266,"#rid")]),a=r[e(961,"ZfqP")](ii,t[e(978,"Z%L#")+"y"]);return{fileIDs:n,shareIDs:s,shareUrl:i,resourceKey:a}}function l8e(t={}){let e=le,r={AhyOO:function(n,s){return n>s},lupbx:function(n,s){return n>s}};return r[e(424,"2[yc")](t[e(783,"$r(y")]?.[e(1048,"2[yc")],971*-7+46*7+6475)||r[e(1309,"Z@sc")](t[e(630,"Z%L#")]?.[e(686,"^*m#")],-4551*1+1268+-1*-3283)}function jV(t){let e=le,r={YAqwu:e(518,"3J7Q"),TzXnI:e(970,"h#tw")};return Buffer[e(879,"XIxu")](t,r[e(331,"o3rS")])[e(1222,"pr%%")](r[e(1045,"y412")])}function g8e(t){let e=le,r={NgLgZ:function(n,s){return n(s)},vkTfQ:function(n,s){return n||s},vcJrI:function(n,s){return n+s},yooay:function(n,s){return n%s},WJgiA:function(n,s){return n-s},CRNkb:function(n,s){return n%s}};try{let n=r[e(804,"nsNg")](String,r[e(1004,"Bp*y")](t,""))[e(1372,"]g^X")](".")[1]||"";if(!n)return null;let s=n[e(683,"rgzd")](/-/g,"+")[e(634,"XIxu")](/_/g,"/"),i=r[e(1069,"Fii^")](s,"="[e(1321,"Fii^")](r[e(1193,"Z%L#")](r[e(1319,"3J7Q")](-1*1519+-2811+4334,r[e(992,"MAI[")](s[e(1110,"JZfJ")],4)),1*-4453+5257*-1+4857*2)));return JSON[e(312,"Bp*y")](r[e(599,"5&cU")](jV,i))}catch{return null}}function cur(t){let e=le,r={NsWmY:function(s,i){return s(i)},Gvytv:function(s,i){return s(i)}},n=r[e(855,"Wd#O")](g8e,t)||{};return r[e(933,"h#tw")](ii,n[e(613,"Cw#%")]||n.id||n[e(473,"nsNg")]||n[e(561,"Fii^")]||n[e(1318,"0G^^")])}function uur({uid:t,shareKey:e,sharePwd:r}){let n=le,s={isEjn:function(u,l){return u(l)},bbHbh:function(u,l){return u(l)},YfZHG:function(u,l){return u||l},QzqeE:function(u,l){return u(l)},QXRGV:n(1117,"Z%L#")},i=s[n(408,"0G^^")](ii,t),a=s[n(1187,"JkQT")](ii,e);if(s[n(631,"1XpI")](!i,!a))return"";let o=new URL(n(881,"XBJe")+i+(n(929,"csNL")+n(1080,"4PrE")+n(763,"5zx!"))+a),c=s[n(1163,"Mhe$")](ii,r);return c&&o[n(1237,"yDmj")+"ms"][n(1383,"pr%%")](s[n(971,"Z%L#")],c),o[n(571,"2[yc")]()}function dC(t){let e=le,r={TBptD:e(815,"XIxu")+e(592,"3DX)"),zOMRY:e(1330,"CsF7")+e(350,"MAI[")};return{Authorization:e(691,"o3rS")+t,Platform:r[e(432,"$r(y")],"Content-Type":r[e(1310,"h#tw")],Accept:r[e(663,"Fii^")]}}function Ul(t,e){let r=BB();return Ul=function(n,s){n=n-310;let i=r[n];if(Ul.PbTTzb===void 0){var a=function(d){let f="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=",p="",m="";for(let h=0,y,g,b=0;g=d.charAt(b++);~g&&(y=h%4?y*64+g:g,h++%4)?p+=String.fromCharCode(255&y>>(-2*h&6)):0)g=f.indexOf(g);for(let h=0,y=p.length;h>>n},fVCfn:function(r,n){return r>>>n},BxSmj:function(r,n){return r>>>n}};return kB||(kB=Array[t(1030,"pr%%")]({length:256},(r,n)=>{let s=t,i=n;for(let a=-62*-41+13*-533+1*4387;e[s(765,"^*m#")](a,3096+-3088*1);a+=115*-78+7262+1709)i=e[s(1119,"n(MT")](i,442*17+8170+-15683)?e[s(1225,"M]CY")](1453859748+-6278838726*-1+2341*-1599490,e[s(1103,"CsF7")](i,17344+17343*-1)):e[s(595,"XBJe")](i,-9568+3*-29+-2*-4828);return e[s(974,"]g^X")](i,0)}),kB)}function DB(t){let e=le,r={Pmbuf:function(i){return i()},NhtHP:function(i,a){return i^a},ptHtQ:function(i,a){return i(a)},AvPov:e(428,"JkQT"),cNtsl:function(i,a){return i^a},royDJ:function(i,a){return i>>>a},cSmCN:function(i,a){return i&a},GWUKu:function(i,a){return i(a)},QwmXD:function(i,a){return i>>>a},UTEXX:function(i,a){return i^a}},n=r[e(752,"Fii^")](lur),s=r[e(694,"ZfqP")](0,-(4874+-4873*1));for(let i of Buffer[e(548,"h#tw")](r[e(1287,"oEMo")](String,t),r[e(919,"MAI[")]))s=r[e(858,"#rid")](r[e(505,"MAI[")](s,-5*-1333+-5884*-1+-12541),n[r[e(1331,"o3rS")](r[e(821,"Fii^")](s,i),5952+-1*-8846+-14543)]);return r[e(1143,"o3rS")](String,r[e(438,"$r(y")](r[e(552,"5zx!")](s,-(9584+6*841+-14629)),-1531*6+-10*-11+2269*4))}function PB(t){let e=le;return{jDYxL:function(n,s){return n(s)}}[e(834,"Mhe$")](String,t)[e(1206,"pr%%")](2,"0")}function dur(t,e=m8e,r=h8e){let n=le,s={Zmolg:function(p,m){return p+m},JacHO:function(p,m){return p+m},wFsBs:function(p,m){return p*m},IiQbc:function(p,m){return p*m},aNleB:function(p,m){return p(m)},nSxcq:function(p,m){return p/m},vSSwR:function(p,m){return p*m},Tvbua:function(p,m){return p(m)},rQyFg:function(p,m){return p(m)},wfRWu:function(p,m){return p(m)},bAWyv:function(p,m){return p(m)},MFSYw:function(p,m){return p*m}},i=s[n(1313,"ryF!")](s[n(461,"n(MT")](Date[n(731,"XIxu")](),s[n(588,"XBJe")](s[n(407,"5&cU")](new Date()[n(419,"1XpI")+n(1108,"MAI[")](),-7620+192*40),-9053*1+9012+347*3)),s[n(1272,"o3rS")](s[n(996,"2[yc")](s[n(1250,"csNL")](8,-6905+995*7),2265*-1+4822+-2497),-2555+45*79)),a=s[n(796,"3DX)")](String,Math[n(1249,"nsNg")](s[n(1337,"Fii^")](i,20*301+-7060+2040))),o=new Date(s[n(1195,"pr%%")](s[n(443,"y412")](Number,a),6*-491+6127+-2181)),c=[o[n(1078,"0G^^")+"r"](),s[n(1233,"yDmj")](PB,s[n(1202,"X&%&")](o[n(1347,"w*gd")](),14663+-14662*1)),s[n(1384,"Wd#O")](PB,o[n(1023,"h#tw")]()),s[n(1262,"pr%%")](PB,o[n(565,"M]CY")]()),s[n(1011,"47(V")](PB,o[n(957,"yDmj")]())][n(914,"Fii^")](""),u=[...c][n(808,"5zx!")](p=>our[Number(p)]||p)[n(903,"o#03")](""),l=s[n(989,"1XpI")](DB,u),d=Math[n(1007,"P(Jb")](s[n(1307,"yDmj")](Math[n(393,"H&b]")](),-13202575*-1+-7561136*-1+-10763711)),f=s[n(875,"4PrE")](DB,a+"|"+d+"|"+t+"|"+e+"|"+r+"|"+l);return{key:l,value:a+"-"+d+"-"+f}}function fur(){let t=le,e={KyJoV:function(n,s){return n*s},pURcy:function(n,s){return n(s)}},r=""+Date[t(574,"3J7Q")]()+Math[t(660,"^*m#")](e[t(601,"47(V")](Math[t(623,"3DX)")](),361034406+450486149*3+-712492853));return t(953,"0G^^")+e[t(1261,"5zx!")](DB,r)+"-"+e[t(1144,"jhlg")](DB,r[t(1296,"#rid")]("")[t(566,"n(MT")]()[t(981,"Bp*y")](""))}function pur(t,e){let r=le,n={aBUfG:r(1061,"5&cU")+r(344,"5zx!")+r(337,"Fii^"),reaUN:r(988,"DhQd")+r(514,"3DX)")+r(370,"y412")+r(977,"QFD%")};return{Authorization:r(607,"EdkW")+t,platform:m8e,"App-Version":h8e,LoginUuid:e,"Content-Type":n[r(718,"Mhe$")],Accept:n[r(622,"3DX)")]}}function fC(t,e){let r=le,n={bjkoX:function(s,i){return s>=i},wWIvI:r(1015,"csNL"),TKhlg:function(s,i){return s!==i},NCDfV:function(s,i){return s(i)}};if(n[r(489,"1XpI")](t[r(998,"$r(y")],-5*-163+-4636+7*603))throw new Error(t[r(706,"^*m#")]?.[r(619,"JZfJ")]||t[r(772,"0G^^")]?.[r(482,"H&b]")]||e+": "+t[r(1197,"o3rS")]);if(t[r(684,"EdkW")]&&Object[r(609,"yDmj")][r(327,"XBJe")+r(435,"QFD%")][r(860,"JkQT")](t[r(908,"jhlg")],n[r(538,"oEMo")])&&n[r(728,"H&b]")](n[r(365,"5zx!")](Number,t[r(338,"Cw#%")][r(1015,"csNL")]),-6848+-2*-3879+130*-7))throw new Error(t[r(1203,"47(V")][r(1329,"3J7Q")]||e+": "+t[r(1203,"47(V")][r(503,"Bp*y")])}function mur(t,e,r=[-9478+-1*8391+17869]){let n=le,s={AQlUH:function(i,a){return i>=a},TGiVv:n(987,"5&cU"),LPQVE:function(i,a){return i(a)}};if(s[n(993,"1XpI")](t[n(735,"DhQd")],-2848*-2+-8286+230*13))throw new Error(t[n(506,"ryF!")]?.[n(450,"csNL")]||t[n(1149,"1XpI")]?.[n(1229,"QFD%")]||e+": "+t[n(787,"y412")]);if(t[n(605,"JkQT")]&&Object[n(785,"L^u@")][n(1055,"L^u@")+n(838,"2[yc")][n(1295,"XBJe")](t[n(972,"QFD%")],s[n(1332,"$r(y")])&&!r[n(348,"0G^^")](s[n(1074,"QFD%")](Number,t[n(1157,"P(Jb")][n(1015,"csNL")])))throw new Error(t[n(427,"5zx!")][n(698,"Cw#%")]||e+": "+t[n(703,"#rid")][n(1156,"X&%&")])}function hur(t){let e=le,r={DovfH:function(n,s){return n(s)},uVDwI:function(n,s){return n||s},hoGru:e(454,"1XpI"),MeOBy:function(n,s){return n(s)},tGxMv:function(n,s){return n(s)}};try{let n=new URL(r[e(979,"3DX)")](String,r[e(1367,"csNL")](t,""))),s=n[e(633,"1XpI")+"ms"][e(877,"P(Jb")](r[e(403,"csNL")]);if(s)return r[e(1175,"47(V")](jV,s);let i=n[e(1138,"y412")][e(693,"X&%&")](3117+-1*3116)[e(371,"nsNg")]("&")[-538*-12+-3*2932+2340]||"",a=i[e(328,"Cw#%")]("=")?i[e(1075,"Bp*y")]("=")[1912*-5+-6832+16393]:"";return a?r[e(1183,"JkQT")](jV,a):""}catch{return""}}function d8e(t){let e=le,r={ArFqt:function(n,s){return n(s)},hBosE:function(n,s){return n||s},jtLjm:e(1162,"ZfqP"),mewtp:e(1368,"5&cU")};try{let n=new URL(r[e(1146,"yDmj")](String,r[e(650,"MAI[")](t,"")));return n[e(786,"o#03")]=n[e(892,"yDmj")][e(1105,"MAI[")](/_24_24(?=\/|$)/g,""),["w","h",r[e(587,"]g^X")],r[e(431,"5zx!")]][e(1303,"jhlg")](s=>n[e(525,"JZfJ")+"ms"][e(596,"JZfJ")](s)),n[e(768,"JkQT")]()}catch{return""}}function gur(t){let e=le,r={OmRAD:function(n,s){return n(s)},JdTNl:function(n,s){return n(s)},cQlvl:function(n,s){return n||s},VNzpC:function(n,s){return n(s)}};try{return r[e(610,"Z%L#")](decodeURIComponent,r[e(1006,"Cw#%")](String,r[e(654,"3DX)")](t,"")))}catch{return r[e(721,"h#tw")](String,r[e(1230,"EdkW")](t,""))}}function BB(){let t=["WQVdSrS","WO7cQN7dUYTQmmksf8kB","dvRcVCk1W5Lw","W6LSra","W6y4W4De","WOxcPKtdU8oUpq","WP80WRLbWO5jlJXXzq","W7ybAmoCWQW","WP/dJtrUqG","W6NdUSo+WPBdJCkcW5ZdPSkpW4y","WQFdSSompf8","neuvBmkqtJhcTSoTWRhcSsi","WOxcPKtdU8oUhq","DSo4WOO","srxdTG","WPddPCogo14Cbqm","WP5Urqy+","CSoyWR/dQW","uIFcSSkZW4vDW7H9WOtdMq","W7ddVCo2WPddLG","q8oYWOOcWPO","W7bCWRukWRFcQYG","W4eKbuDTtSkEEmkJsa","W57dOSoYW4tdR8oD","sCoSp8oCzG","W5dcLmksW6JcPs0","W6XNW7pdIW","W4OkW6ruWOe","W5hcOGGlW50","pI7dRNuf","W5pdL8kQW5y","W5tdNmogWOVdMq","yKNdVYfaWPKDscrT","yNxcPLPl","lZy+jf4gC1HoW5i","W7DRrsZcVXqJBa","W6VcVKP1W4e0","FMdcNKH4W6Cv","W4VdQCkFFKm","DHldSmkic8o4WQ4L","WOZcU3RdSG","WOvoBSo8umkkWQrsmdq","W7/cMCkSW6JcNYBcP2xdQWe","W4Kqn8kNpfG5WR84WPS","F2ddGLzYW6qznW","xtn9WP93W77dOCkTWQi","W4flWQBcUG","WPxdSmotCa","WPldIdPvW74","w8o9kee","kSkHWQVdTW","WRbYzGq3","vSoaW4rIW7JcPConfSoaW7K","W6yQW51NWRG","fCkZDG","WRhdTrT9W53dR8ope2ez","qKJdI09j","W5RcMIhdJmkcWQ7cNZ0","WO8dWQSK","vNSCqSklBW","WP5kzq","WRdcONesofhdGSoHBSoc","W6tcJSkBW7NdKrZcHLhcPvW","jdWTafK9Dea","WR/cQxaf","WOlcV1JdSSoogMxdKYpdKW","W7tcVmkPW7tcMG","qCoCACkGe8oGW6tcVmoByG","6k2g5yw25A2z5OUcgMbQW7zN576b","y0y2DSka","W5FcRmksW5JcPa","5BIP5lIb5PAW55Mt5B6b5zoS5P6z6l+95zMKW7u","WRddOar7W5W","r2LNWPHT","W4eMWQjtWOXdCNK","t3ZcUCk0W59a","WRrqmSoUWRZcG8obtmoZWRS","uCoPWPlcUKi","dvm9W4ulWPjdeSoBCW","6zIz5PA15lQL6isy5zQ25PEl56U35Asm6lAl","ACobpmo7sCkIWRxcVCozyG","WPmhWPySW5a","CHzcaSozgrlcNCo7WQW","WP/dOJnyBW","d10MWOum","gsZdGgm2lfFdIW","WQdcQfRdVZbMjG","r8o4WQb8W78","BmoqWOtdImog","dLCN","bHyGh1i","WQWnWO8tW5G","W5iOWRvf","WQFdJ8onWQ3LI6RKU6lMN7JOV4pLMzBNMPa","WQSuWRalW5a","sIn8lmoz","W40jzmowWRmJW6C","FSoqdwug","sr/dV8kDgSoB","W4fFWRVcJvSKlmkT","WOFdOCobdeGheG","z8o7WQv5W54","W4KgCa","W4jkWQFcU1q2","wSobWOjM","W7rNW63dMIGeawn4W4G","W45KtrZcKGGKCa","W77dUCoXW4W","zZfLceCbkv9dW4a","FwHxW4S","A8o0lK89","W7JcM8kr","W43dPSofWO3dK8kpW4q","W7NcIffJW6j5Chacqq","W4VdHSk1fgJdJZ3dK8k4cq","W50OWRy","W4SgmmkKnLeqWR4qWOa","W7vkWPOFWRhcOG","W6nqqH7cUG","Fa/dLCkraW","W7ZcPIzMC8ofisqhW78","wwRcKt9JsYpcMmoSW4q","dSkUWOddSCon","vdLkfCoL","fshcRCoTW5rkgNZcUCoH","yMvyWP16W5a","AvVcV8k4W7i","m0VcUrSOWRbEDCoRka","W43cJd/dJmkvWR7cJGhdRmoG","55ME5B2u5OQv5yIL","AmoKW6RdT8olwHFdN8oc","5PAM5z675z+E","WQNcJCkLEmoOW6NcK8kwkri","mGSvW4ZdNq","W73dPSofWP7dOa","iaSGW6BdIq","gfX+WOOyWPqadmkCma","WRFcL2/dHYC","WR3cTMqme0VdRCo0ASoi","WORcO00","DwtcN1i2WRvdCSo+oW","vbpcI8o3W6S","DgdcMx1WW7idmCkdya","t3pdTwP2","C8o8WOHAWPyCa8kFlCkB","ACozWRNdQW","zwBcP0Lq","dsCRdG","WQT5DaGC","kCk8WRNcRG","W57dLmk/WOSg","C8omdxyp","WPyCWQ4JW7u","W5WTamk3gW","W7BcLNHxW6K","W4pdL8k8WR0wE8kVkhhcQW","edrqsSklzvtdPmoxW4a","ASo2WOnuWRixt8ofCmkb","Dmocm8oXAW","vCogWOD3W5dcOCoyxmoDW7i","WODkCCo8u8kCWODjddq","W5ZdGSkV","vwBcU8kSW59xWQzT","kCk8WOFdQ8oRqXtdQq","W6fJrXBcGq82Axm","kCkpW6lcQmkhW4SPWQVdNCk5qCoTWPy","eIrkDCkTEvBdK8oH","p8k6WQVdQSo2tt7dT8oMhW","WONcS2ldSGzSpCkdcSkr","WOhdSCobia","zGJcQ8oxW64","BCoaimo9ACkNWQFdPG","WQtdJ8ohWRxcRHhcH0hdStq","WObVrbW4e8oA","W6eKW59jWPNdLW","WOBdOetdT8oudsVdIs/dIW","tSoYWOakWPuqeG","DCkzWRZdRmoCWP0","W4WtDmodWRHwWQ5AWQ/dIW","yM9FWPq","BSoEkSoEyW","kN8IWR4k","uNeiCCkdAfu","bmoAWQ1LW40","W6fJrXBcSaa6yq","rvSEE8krBKq","W4bAWRatWQG","Ab7cNmosW7xdQa","e2CMWOim","W5HAWOFcT0K+lCk3jmk1","WPJcIN3dKra","W7GfpmkJiG","WO/cRNush3JdU8oK","B8oglSoNua","WRpdPWW","WR3cQhasfuhdQa","CCo/WQ7cKfq","6i615y6H55U0BmkBs+wUP+EJR+AkNowjNa","CCosWOO8WPG","WPjkAmokvSkFWPbEedG","WRdcO3OhdKa","v8ogj8oGqmknWRJdT8kniG","zrjycSomgIdcM8o4WQS","FwtcGf4","W6tcMmor","aJZdRwKx","W53dJmkTt3K","W4JdSmoQWPJdLCkg","fSkqWRGzba","mLVdG8keWRtdGHtcTf9u","DwNcJe8","WRTbmSonWQFdMmkCbSovWQu","WOefWRadW4u","W5WbWRTxWPa","6iYt5y2d55MCW47cK8oD6lAB5yY+5OQQ5yM3","kCkXWRNdRCoNqa","W6CZWODoWPa","sColnCoHrmkPWRe","qmopmSoZ","W5ZdGSkVAwpdGslcMCkvea","W6mWvCo4WR4","WOv6tSo6rW","mSkVWOSO","csemgem","WOKdWQmUWQ4OrCkyWONdUa","W415sbxcPW","W7lcNmkkW6W","WQbDj8opWRhcQ8o3","W7eVsmoIWR4","yX7cHSoMW6NdOrtcVMro","ccVdJN02bh0","WPpdGmkzWPirCmkQ","vINdH8kpga","W5RcVZKc","gvmNWOO","Dmo4WPO","WOFdQCoHhvO","WQ3dSmoIeNa","W5yIWQvWWPLczgqTmq","W4/dLCk6xM7dVZVcMCkG","ySovWPP3W5e","WRlcI38ee1O","heeW","WQFcHCk6uSowW4pcSa","dvmGWPGFWPjCwq","D8ozWRe","BXzC","AMfcWPS","nCo2WP0tW74FcCkyj8kD","qmohWOPGW7hcLmodxq","W4NcSs4uW4iikrK","W57cTsKOW5anpG7dJCoC","vSotWPNdNCok","vHpdQ8kF","wwBdTCkHW5PAW60VW57cIW","W6i+W4b4WR/dMejXWQpcPW","nSkiWPOlfW","W6ZdS8o5W5VNPRhKVlFLP7lOTzq","WQdcNmk/","W7rIsGhcUZqfsa","WQDYpSoWWQi","vrxdOSko","W4RcHJWiW7G","6AkG6lAG5y6q55MT5B2w","WRfxdSoFWRW","cqe/W4hdNa","WOpdGSosdgi","W5CUWR1fWRvOCW","rb5aomoNgqZcIW","W5TkWPukWQdcUhe","WRRdVWDZW5e","W7q9W75FWOi","W67dMmonW5BdTa","ubTUp8oy","W5CtyCohWR4F","WOBdRCoBla","W6xcMmkk","W4RcTsK","W7RcHZq2W5e","W6pcVtilW5u","F8oxWQldVG","DJldJSoFW4rIeNlcQq","W7DIWP8CWQZcUa","W6JdQSo6W7ldKSoyoc0","WP01WOeDW7m","W6G9W5zcWPhdKer6WP/cPG","vSo3oqanEMdcOSkyWR0","iGS4W7q","WQRcVX4GWOFdU8ofgK9t","evmGWP8UWPrcwmoNzW","W4RcUdWvW5CIiX3dKmoQ","duCGWOm","bmoGeSkYfmo+W7RcOSoxBa","yrTjpmohdrhcVSoPWQ0","WRtcOL0NcW","zHBdTmkBamogWRS","m0uFFEwkR+s7K+w2K+wlTEw5TU+/JW","W4VcTsWsW5CulYldICo9","WQBcICkIz8o6W6NcP8knkau","W6ZdPmonW5xdLmoqjd4","A2FdOd14","WR3cJvJdRGu","W55vWPhcVuS","W4q1WR0","W6ldVmoOWPRdQmkk","rNuuBSkh","wSoUlK84","e8oKWQP2W48","W7FdU8o7W4/dP8oAktZdGmk3","tKCQC8ko","hcuOhfy","q3yAsmkm","nmkNWRVdSmoGqr/dOa","ESkxWRddRCoRrrtcQmkYqG","oZyRg1qavK1zW4a","rsFdK3qYexy","WPdcVmk9FCoX","WRFdVWLHW5W","W5xdOSoVk0O+oG","W4vmmSocFea0WRafWOW","WRngCmo8D8kA","wSoKWO0","WPpcRLVdRCoxfNBdKW","rXjidmo8","WOfIvbS4mSolp8kvuq","W7z1WR8lWPi","W63cJKPPW4K","W4ybWQjIWO8","WRJcNSkrW6a","lJOMdfKjA0K","WOPZp8ozWRS","W4dcUwVdUtzSi8kkeCkt","BfZdUtGCWPybuguU","dshdLq","WRVcO2aVcK3dOSobymoe","WRrJwqWuba","W7xcKCkBW6ZcGJZcOKxdQrq","tajJ","EMJdMtjk","W6RdMSoNW6FdGq","W5FdVCoLWO3dHmk+W4RcRq","WRldOXnzC8omkJibW74","WQxcJCkIvG","W4ZcGs/dI8kvWPJcIci","W4ldM8kKWP48ECkIhhe","A1pdRYnCW4Pw","W53cOJ3dOmkK","j8kuWRKB","x1tdVeHa","W5mHC8oXWRG","WOtdPCobkq","W5FdG8kRvwG","W5tcJdFdIG","jCk6WPOMoGlcV1BcJfa","W4S3WOnhWQW","W4m8bLPPuCkEdCk6EuXtW7q","W64gjCkbnKf8","W4SQWQf2WO0","z2TtW5PjW53dRSkNWQRcKq","WOy1WObjWO5lAq","lZy+","WRVcVhBdHZm","BeveWQXj","W7naWP0w","W7D+yWFcJW","WOZdSYn9BG","E8oIWPKs","5Ok+55Eb5lUa5lQY6l6n5O2O5yYz5yss5BIj","W4XTWQaAWPa","W5nLqbBcSa","WPFcQLVdQG","v2RcMLv1W68riCkfwG","jqSGW7K","W4ZcMsldKmke","WO7dM33cMCkJWOxcU3/cVoELLW","zrFcNG","oJy7hfiBCG","oeyYWOW","evD8WPGaWPWFySoCzG","W6JdJSkHxW","WPnaBSoCx8kDWOO","WQZdOa18W7FdQCojg1OJ","uLb8WOOyWPqbtSogyG","W7nUW6y","bruzmea","WPzRqqG","W4awnmkrkW","WPRdI8o4gNa","umoGWOK","bttdHh8bahxdISoAW5y","FXFdVSkwcq","W4NdGSkQt27dKYtcS8kPha","W7JcHeTbW4rLCg0gvW","r8oKWONcVq","WOFcRLZdVW","W5hdGCkTWOKQCW","WRJcKgNdVGm","WOJdKCo+bvm","ywdcNv54W7q","W6TCWOpcLhK","WP1rD8ot57Yc6Agg56QZ5yYh5RE/5yUV","5l6z5P+65zcG5lMk","DSo+WP4o","WOaFWReEW641eCozWQddOW","WRZcSM/cPG","W5blWQhcUG","WOlcV33dPcnUna","rCoEnSo+tmkTWRxdPSkfiW","W4C0BCoWWOu","Ae/cSCkwW5W","imk5WQJdICo1","W6zKtWhcSqGZ","W60EACokWPm","ESogWR8","FvBcLvHO","WQ7cUCkNWPdcN8kpgGhdKSk2W4mU","WO/cQ03dRmoLaeRdHIFdMq","b8kBW7CYWPbDWQNdNmovpq","nCkXWPKOgq","zSoNWQNcULW","WOJcOgWWcW","ywdcNe58W7mecSkGBq","z1ldIue","BKBdJG","W6aOW4DHWR/dNvn3","WQhdQsT5DmomnJadW64","W6tcV8kFW47cUa","WPldOCoepuWaaZdcGJ8","5Bca5P6955Qw5BYV77+D5B255AAR55Qp5BYx","WO7dGSoCjeW/hHtcKW","W4VcMYFdLa","WQRdIJ9wW6C","WOxdUqr3W6BdVmobeW","W6/dKSoPWP3dGG","5BM95yIm5lQa6zkn5O275Awq6lwY","WQbqmG","vt9OeCoK","yKBdIuG","gmkjWQKxhq","WO3cNeddMtO","DwZcGv5qW4q","yX7dJ8ocW6tdOHxcSLXc","xwtcTa","W7dcKCkFW7K","W4qrWPvxWRu","WR/cP3Cih3FdUmo5C8oc","W4BcLhTSW4a","WRhcJCk4AmoVW6BcSmkxnG0","dvmNWOm","WOf6wqaP","W5VcKCkuW4lcOG","ACoYWPK","WQ/cUCkJxSo7","xNjGWPfu","nZKpW4m","amk+WOGqmI7cTfRcG2e","W4vmWRtcOvi","rxPvFmksyH7cUSksWOa","AHRcN8oq","WPrFDq","W6VdRSoQ","W41zWPynWQq","sSo9lSoZv8kRWPFdOmkjlq","W7lcVLG8WPJcS8kCvNKD","CSosguSy","WRJdTIzXBG","W57dPCowWPJdSq","WPunWRa5W6q","WRldOXm","WPmDWO4cW7u","WPqnWRyBW7S","a8oqWRr2W4zF","W6PPW6ZdIGeE","WR7cR3Wvnq","dWqQW7RdOhJdUmke","nLSNW4rDW44ze8kDnq","t1FcRmkVW4fwWQ0","tsRdUSkriq","AKldK051rq","t2ddT19j","wZrRgSoU","WQNcNmk1vmoO","lGS/W5RdM3/dM8kcW7OO","WRZdQar6DSoniqa","yqJcGCoQW7xdRW3cVKy","WP3cV0RdSI5SjCkd","W70MCCoeWR4","WRlcHmk3rCo6W47cHW","W4/dSKxdNXzehCokxSky","DmoHfCog","WQ4XWRtcIfbvqLXYW6jQW5NdOq","WRvunmouW7VdL8kahSkuW6y","yxBcIe8KW5uKa8o9ma","WRhdPXn3","WRJcR3OhkeNdVmoPz8o1","FCoFWRRdUSo/WPPQWPq","Bmo2WOepWRq","WPlcHmk3rCo6W5FcTmka","vH9EmSoE","zbldOsjCW40jbcn8","e8ozWQnHW41yWRJdOmkAlG","DwZcGv5nW7irnSk4","W4JdJ8k+xK3dItZcMCkDha","W43dNmkRWPCwC8kMaG","W7/cK8kAW6JcLaBcTa","tJSsBSknzq","lH44W6xdNYVcPmoFW7OO","ESkxWRddRCoRrrtcQmkYqa","smolkmo1uCkM","5y+Z5PAg5lMZ5yQT6kov5Asv6lwB","W48Li8k3ga","W4BdRmocWO/dRq","W7uOW4jzWRxdGfnqWPZcSa","EuNdUtHDW4rBati","5lYe5P6e6l6s5zMmbCkOWR3dVSkjbq","B2rs","WPVcH8kfz8oZ","WQ3dGd5VuG","sCo/WOWiWRqSeSky","W6ZcHeS","rh7dJZDL","WO3cRKxdUW","WRJcP2ab","CqJcL8oXW6JdSGpcUfXJ","c8oGBLX6yZdcTCog","iSkGW7FdR8oOsrJdQCkVuq","W6ZcKvnUW5K","W7fBWOaiWRBdSh7cU8kVbq","kSk7WQVdQW","umoGWONcHLJcLmk2WPiwda","q8o3WOJcSa","v8oaWPX8W7JcQ8ovxCkgW74","WOxdQSkykvKAwvBdLw4","nq8TW6FdJ3NdJ8krW6e5","hGagavm","W4xdNSowWQNdUW","WRpcICkNqSo6W7tcTW","W4/dJmogWQZdSa","W6JcTKHKW4i","v8ooWP9Z","W4iKW7voWQq","WQJcTh0n","WOVcU3RdTG","WR5CnCooWR3cJmouDSonWRa","eCogWQu","tmoFWRJcQCkhW4G5WPJcP8oo","WOzBBSoWumkzWOTDjq","b8kvWQ4lfG","W5BdTmoQWPVdJSkd","D8ogj8oGqmkBWQBdVG","t8oPl0G","A0/cIKHZ","BXzypSob","W7PHW6ZdMI0j","W5pdU8oaWPBdQa","5l+b5P2N6igo6i6B5yYgWPnuD8knWQC","na8RW7ddLa","yblcGmo8W4u","W5KOWPzsWOK","dqm4WRRcMslcVmoEWQzU","W59PW7tdMGmcag4","WPldT8oqpbqMiYhdIMu","WQVcGgCIcq","W43dGCknWPen","WOfNW7L3WPvczgi0jq","kmk1WQJdTSoGDWhdOSoTfq","F2NcRmkLW41CWRfN","DCk2W7FdVSo0qv7dOCoQhq","qmoFWOD7W6a","Ba/cHSofW7lcUKNdTf9q","pqeIde8","EMfZuxuWu3PsW7e","a8oDWQDYW4zKWQW","WQ4BW4blW7BdUqhdK8k4guKi","W7hcMmkkW5NcHstcT23dPWO","W4H4FXVcRa4G","WPrFBmo1v8kDWOnpnt4","W5/cNmkZW5tcTq","FgvhWO9RW4VdUCkdWRxdNq","t2HpWRvb","W6TUtGhcNbGzzxVdTG","5lU5W7VdM31TyEEKGEs8K+EzQEAwUq","BLZdVZa","WQzbimkf","55M/5BYU6lY15P6Q776n6ywn5PEw55QG5B29","ECo1meudEW","z1JdVcvd","AeRcQmk0W64","5y2E5PoQ5PEV5PAN5lIk","W4ldVmoOWPRdQmkQW44","wSoUkfK","tmo5ka","WPvxma","Bx/cTCkyW64","5yMx5BYx44o96ys3576/44gO56Q55RMK6l6z6ko+","smoNnCouqq","CLxdLeq","yHlcNSoqW4JdPa","o8kAWRtdUSog","hmkpWPOLfq","hmoAWQe","uxJdTCoF","WQVcTxNdUs5Mmmkck8kg","W4RcUdWvW5CPoGddNa","W7DkW4tdVGy","W5WIWQjtWP1lzq","WOJcQx8ffa","W6tcTfq2tmozir1cW44","W51rWRlcU1qekSkP","W6BcNmkmW6ZcGtO","wSkZoeuMENFcRa","rCo/nmowxW","qMtdSCo8W5rig2dcJmoR","W6xcLCkFW7/cIqlcT24","D2tcMvO","WQRcH2vKW45ewa","FCoKWP7cNx8","W7dcLmksW6JcPs0","W68GBCorWQG","WPedWQKVW68","WQFdSrXZ","W685W4DCWQpcIqGWWOdcUG","DmoeWR8uWR0","WRBcS8kQWQ3dNxNdVcFcS0q","qW3cNCoFW7m","WOfIvbS4k8oliq","q2ddT8otWPirtstdOmkH","tLirCCkhx0ldQSotW5S","W6RcIfS","jaKalxi","W4mIWPvfWPbjDgG","na89W6ddIwldV8kKW6C5","dYldGgq/eq","q2tdOgeJcxBdR8oAW4C","kmkXWQNdQSoHwWxdImoZfa","W4ZcSXVdKSkx","BSofWRm","W4hdP8o2WPddKW","x13cNSkZW5O","vbn6nCol","DwZcGu98W7i","WPxcGmo7W5SWx8kcqdtNPjG","W6aOW4DOWR/dHeLZWOpcTa","WPxcP8k3W5/LIQFKUyxMNPFOVj3LMAtMKyu","W7tcL8kvW6lcTa","B3vcWPi","WR7cNgaHeW","W5ldVrVdRSogfYVdKxJcKG","W7CdW7DOWPG","tmo0pre","WRtdOGm","WQFdOXzJzSoAmdWsW7G","W4ldOCovW6ddTW","WPRcR3GfneNdOCoL","W6jYtHa","qSofWPFdVSoY","W5jpxsRcRa","W5nasaxcVW","WOydWQyV","W4udza","uNSbwCkO","qrVdPCkB","EColcg4a","WQ/cSMyjfe8","WQJcGSk/qW","W7RcTMvFW6y","WPu1zCogWRGj","dshdLv4Jah3dUCoCW4y","yXldVwaCW4vBcY4Y","AaJdL1PUq355ctW","W4O0uSoDWQC","mamOW7ddG07dU8kCW7qH","CwFcOSkPW4zFWQiXW5NcLG","WO3cU33dSNq9","pmk9WRtdUSonta","Awvc","WOBcOqxdV8oxecRcLNJcJW","wSojlKW","W5/cK8kyW6lcOcdcOwm","fSoCWQP0W4zF","DX7cK8ohW6ldQdBcULPg","DCogWOD3W5RcPCozxa","sfJdQInwW5es","WRCnWRiJW6uDgmosWO7dVW","W6/cGe10W4G","xmooWO8","hSkLWRZcPudcMCkHWQa3dW","xK9LWQ4","W53cMdGgW5yckq","uCoSWPhcShNcKq","WQBcHCk4gCkUWRxdSmkujWW","WRb5WOCFW6pcGhDyWPtcUxO1","W5NcOLDgW5W","W7bDyGxcLW","W7rIsGhcUYGtDW","FCoFWRRdUSo6WPC","rmokWOK","W6yPW5C","uNejAmkhEetdNmofW5e","m8kNWPNdRCo2sqG","BbHB","WOVdT8kRWP7dKCkhWPlcV8otWOW","W5FdSmoW","WOBdTSoAjq","f8ogWPxcP1/cMmkHW5HJxG","W40tlq","W7CSW4bFWQFdNfv7","x2NdJGLR","W4JdGSk6sgJdIb3cK8k9ha","ASoIWP4s","W5DLwaC","WPngCmo8umkFWO9E","W7fPW7a","FmotWQi","jdxdUgiG","W7DAWQeQWQO","zNBcIeLqW4q","W5hcHeDZ","kdOpW5tdNq","WQRdUW0YW6/dUmophuvv","W5zBWQhcMLuKkSk2","rCoGWOVcSelcHSkH","aYddS3qGcMBdISoCW4a","AmoYWPWpWRqkfmkNkSot","WQ/cR24f","sfDpWRj9","EM9LWO58W5hdO8kR","W7BcPmo0W5ldICoxCtRdM8kL","tfpdSMvG","WOhcTxK","sW5fjmoX","W4uqbCkbiviL","mCkYWOyQecdcVLy","WPxcGmo7W5VLIAxKURZPKl3MJ5tOP7FMNzO","W54ZjCkxnW","6zgf776R5lUp5PYq6ywg57+o57Yb6Akj55QI5BYS","eCkADCkMemo4WRRdMmkek8k8WRy","vwBdQvfw","zXddOSkDkq","CCoSWPhcSh7cLmkPWPi","W5ycl8oxWQ4aW6qbWQu","W6TkWOunWQdcUsxdH8kOfa","WPH+EqmW","msW/W5FdNW","gchdKx0YbNy","lGKgbhO","bmoTlSoGsSkJWRhcVCoDFW","AvxdKa","f8oqWRjeW4XAWQBdNSkupW","WQ0zWO0fW5e","idWpW7pdGG","yb7cNSoqW7xdPq","WPpdKanDya","W5r5wHWVa8olb8kasa","WPlcOvGhia","W5ZcQc0","umopWPZdSmoL","W7L7W7pdQWSgf3LXW5m","qaldTmkz","FM3dMLPR","WRDumSoC","WQ06WRpcN+wjOUs7HUs5N+ACVEAjGowkKq","mSoqWQDYW4zFW6G","W5zlyXBcNa","oceLhvGCF1Xo","WOZdVtPtW6W","dSkUBWafB2BcP8ox6iYJ","W7VcGeTM","WQBdSWu","W4JdI8kYww4","EhnIpL4gyKnCW5i","tgNcQ8kZW5PCWRfQ","pCkXWQW","W4mcDmoGWQmnW7mqWOtdMG","Ar7cGCogW6ddPWm","dGZdHha3age","W7dcKSkmW4JcJsRcUG","DeldNhXp","DeBdK01Uqa","WQVdRCobzXXaqeNdLgS","6k+s5ysY6iYM5yYS5BIy5l2U5A6tFmkqWRy","WQjhyd8C","W5ZdGSkVDMldLJxcQmkRga","CSofWPFdRCobWPjG","W7ddQmojW4pdVG","WRddUaLGW43dLmoObq","W4/cM8kKW4xcQW","W5xcTsKc","W6xcMmkFW7/cJYhcGNBdUGu","v2tdTCowW5XhgW","WOSQWQSMW6qkbSowWPZdUq","W7FcPmkTW77cLG","W7OlWPrHWPu","Fmo4WP8/WRaAca","W4mcDmo8WRSjW680WQpdMa","W4tcPCkSW6VcPa","mY3cPNnnW408ACoWza","g1S/WO43WPnpumol","WQ/cRNush2VdOmoLySoj","WRZcIKldVq8","CSo2WP4","odiKr1qhAWnkW5e","uNejAmkhEetdMmoiW5i","W58ljCkbnNG5WQG","W4eOWQju","sfyxBSkN","qCkfW784WPqFW7ZdOmkbjZmrWRG","WQxcPKtdU8oPggNdGG","zKihW53dUfZdH8oCWRu0","zxBdKv9T","W53dJSk1xKtdKdxcKSkFfG","WPWjWRe","WPDAmCotWRJcJCostCoVWQC","W4jkWRtcPK8I","nCksWPGUpa","gcVdLh83","WQFcHCk6q8o6W7u","W65KqGC","AuRcOgLa","it11g1imB15oW4i","BftdPZr3W4zEaJ94","DCoWWR/dS8owWR9WWPpdPq","Bmo0pviVt3tcRq","WOVcR3PwtHpcRmo4nCkt","W7SkkSofzWH8WQLbW50","W53cSsKg","W5JcJdO","FSo2WPKB","W6a3BSoIWQi","sfFdUdz0","W7RcMHtdNmk4","WQdcGmk6","WQFcG8kKCSo+W6tcQW","dc3dJwu2fW","WOpcV3RdSG","thldHmoiW49fbW","W6jdB1pMI4HbjgX3W6e","FSoaWPf7W7JcQmovfSkCWRK","CbjCmCoigWq","fmouWRjH","kvOHWOqF","bIhdJ3yNdq","W6HgWOatWOy","z3n3WOH8W5NdTa","WPrAAmoX","WOzhECo9EmkxWO5Egdq","W6ycyCobWQ4EWQe","kmkXWQVdSmoOxqxdRSoShW","W4RcVdqeW5C","W7xdJ8kVCLS","W6XPW67cKqCchZHFW5e","z2tdPmoiW5HwxG","b8kUWPKN","WRJdOXrLySooiq","sgFcJCkWW5PwWRfDWO3dIW","jW4O","W5BcJ1LOW6fGzMO","6zMe5zUk5Pwo56Ue5PwL5lU95Asb6lAU","W5VcIdRdMa","sbVdOq","W7uwamkypG","dIxdLxa","WRPmtdmQ","WQi4AG","W6RdRSoVW5tdG8okpGRdM8kL","rSoXj8oNuCkM","W7uOWQzoWPbdywKwba","WPVdTZ5LCa","WObDj8opWRhcSSoetq","WO7dOmoCjK4HfHFcJJK","lvVcS8ofW7hdRapcJe1f","BSodWR/dUW","W4VdImkOtG","uSoTWR50W5m","W6z/xXS","efmJ","WRBdISopogO","WRrqmG","vSoCWPHgW7VcR8orv8oMW6u","W6hdUCosWOJdSa","Age3uSkY","qSocj8oM","rmoTWPZcP1xcP8kHWPa3fq","W7ddNSoSWPpdHG","W5CUWR1fWRvi","g8k0WOmH","s27dSG","WQtdTrXDW5JdUmocn0KF","W5GPWRz/WP9azwWTiW","W5vFWQhcSW","WPdcU0NdQSoscG","keuMW6BdG3/cSmktW705","kHxdGbLNW65+s2TX","yHlcNSoqW43dQrxcRW","FSo4WPOuWR0waCkqhCoB","W7D/WRC5WRq","WQfqiCoyWQW","WP1rD8ot57Yc6Agg56QZ5B6Q5BUI5yUj","WOijWRyfW7e7gSo2WOZdSG","E8oTkfyc","aCkSWQq/pq","W4nSW6/dIaObhxzA","tSoWWOOmWPG","W5zBWQhcLLuMnSkPkmkX","WP8zWO0SW7a","dmkGWQ7dJCoQ","v8okpviY","q2JcJ05/","WOiAWOKnW7S","zN0uEmkRBW","dXyE","WOddSrX3W4/dSSoEdW","WR1MfmotWRG","W4iIWQu","D1T5WRxMLkVKU6FNVRhLS6hLJBRNLBa","WQzTlSo3WRW","WPD5rJ0Yc8olnSk/wW","rhumFa","ELZdPx4","vX/dOmkpc8oaWR8tW5hdOq","eJldGhWY","W6L7W6xdUW0Ff3rkW6u","W4RdHSoSWP7dK8klW77cU8oFWOK","WQDAfCojWQBcI8oDtG","f8oqWRjtW4TmWRRdL8kYma","WPToCCo8","W4iVWRbsWPLLrh4","W4ddK8k8WPO","W5hcTSkgAgydeGNdH+wjVq","W4uqaSkApvOOWRq","emk+WP4","W7aAW4rpWR8","W4Gcmmks","WOqFWQe","W57cTsKWW5CfgHJdJCoW","eCkYWOyQfWu","WPhcQKFdQ8oi","CwNdT8ovW4O","wMhcTmkLW6n3WRa","nuNdGCkvW47dSapcTqJLIlW","WRhcNSk5q8oWW7pcUSkuiW","b8k6WP4NmcdcVLy","kCkGWRNdQ8oXwW","WQNcUCkT55M555UD5B+S5Aw76lw8776/6kYZ","W7xdKmkHFee","W5KMWQi","WPLnDW","WQNcThG","WPxcP8k3W5/dRSkEW5JcP8kA5yUZ","WPyeWQm4W6qDgmosWO7dVW","WPZcS3tdSG","z2NdKuXd","ldi+ca","E8ohkmo0sG","W5yuzCohW7y5W5uZW63cGW","WPxcOeZdGCoohq","wghcQSkjW64","W5pdSCk6shm","5BIF55Qc5B6x5Aw76lAK","W5hcHNnGW7C","WOnAnCoj","gmoHWQLRW4zd","W7ylqSorWRO","z1ZdUW","uCo+dvC4","WP19wWuYaCok","W57cNdRdKq","WPedWPayW7a","zMddSCoQW5XtlN/cR8oR","W7rkWOClWQtcRtq","sNhdOmouW6jueNlcUSo0","yuldIxPPtca8ndC","W4VdHSk1fgJdJZ3dK8kScq","oZSRg1i9Dea","WQWcWQqLW403b8od","lrudpmozeu7cImoLWQ8","CeVcMuH1","WPHCmSksW6hdKCkeb8kjW6m","D0ldOSo5W5K","W7/dRSoQ","5lIw5zkj44k05AwV5BcM5OMLvZtcRXW","WRRcQwyLg0VdPa","W7moBSkfW79xWQenW7BcJW","kZWUda","WRxcQh0u","W67dL8kUxN8","kNpdN3ecWPmCv3a9","W6jxWQ/cTW","W6tcTL4UnmkBCceyW6tcNCkoFW","wCoRWRjQW5G","W7hcMmkk","z3DXWQPk","WRFdT8oumLG","A3jcWOm","zLHfWO56","W6ldMCo6W7BdHa","WR7cTu0cfq","W7RcKSkFW6NdGZ/dOdJdRG0","EGjel8oS","WObVqbO4","WOVdTmo0WPBcJSkBW47cRmoiW4C","W4OKW7TUWOy","h8ocWQHSW4XmWQW","WQ7dLWW0WPK4juSoFL4Djq","W5tdLCkRWR82","txpdKmowW5i","W6G9W5zcWO/dGuj5WP7cSa","uNejAmkhEetdN8osW5i","WOBdRCozlwax","W40tnmkFoLa9WQuEWOy","W5DCWQmvWPW","WPldPCofiu0GhWBcLtG","rSoPW5LVethcTL3dJEwiPq","W5ZcPZRdISkC","WP43WRboW40EmW","WRbukSor","W4/dLCk6swpdHtq","W5xdTmkjvgC","vMNdPa","WPDCrCo7uq","sH7cISob","WO/cOe8","sqpcP8otW6W","yK7dJ3zOsq","W6NcVY4t","W6VdP8oSWQBdTq","B2hcOSkL","W655BrRcSaGJyq","q1pdRt5/W4PbeW","W7TTW7tdKH0PhwbqW40","E8ozWOeFWPm","WO/cOehdSa","gLCN","z8okWOzIW5dcRCog","q3pdQSox","uCoQWP9zW60","lH44W6xdNYVcPmoF","WQBdTSoAjxOBfLy","WPdcU1RdT8ojhM3dGtm","iq84W5RdNhtdPCkXW7y7","WPjkAmoow8kCWQ5uoZG","WRVcSNZdUdu","WQNcUCkTWOhNV7FPO4ZNQQxORQ7MS7hLP7u","WQ/cQSk/w8o6W4VcQSkxmG","A0/dRGfFW4jlbILX","BSo2WRZcThe","WOJdPCog","odi+avKjA0K","W7bYW7JdTc4","E8oZk04MCglcRCkIW6y","5lIu5AEy6lwR","qSo2WPJcILtcNmk2WPiXgq","sM9bWPrIW5FdRmkOWPddQG","WOtcQLZdRmoifNddIJpdMG","WPhcOCk3W4VcLmoyW5pcG8osWO9+WR8","qSohkmo2ASk+WRhdVmkQiW","W655AGhcRaaU","BvJdVXvCW5rCcYr8","hCk0WOmH","W6iMCCoPWRm","WPz/rqu0a8oplmkv","nSkXWRBdUmoWqa","W4NdGSkRvMRdGZu","WPfoAmo4","W4ddTmoWWP4","vmoPWPJcTf7cGmk0WQuZhq","WPZcS2NdUr1GpW","WP5oWRtcVaTJA8oQ","W7NcJCkBW6pcSYJcSxtdRrC","EwRcHfu","v2tdTmopW5HxcKtcQ8oW","WRRcR3Gfm2ZdVW","WOiEWPRcOL8/EmkKjmkZ","W6PhWPukWQdcMIBdSa","ywiOCSku","iXK/W4hdG3RdRSkEW5OQ","WOlcULZdTG","W54gnCkgnKaO"];return BB=function(){return t},BB()}function yur(t){let e=le,r={PrVkZ:function(n,s){return n(s)},Upudt:function(n,s){return n(s)},HFyZw:function(n,s){return n||s},qpKaR:e(708,"oEMo")};try{return r[e(1376,"2[yc")](encodeURIComponent,r[e(830,"ZfqP")](String,r[e(707,"]g^X")](t,"")))[e(589,"^*m#")](/\*/g,r[e(956,"Fii^")])}catch{return""}}function Aur(t,e=!1){let r=le,n={nPCAq:function(s,i){return s===i},wPsFR:r(1153,"^*m#"),EsZeH:r(1026,"M]CY"),mpAgm:r(375,"n(MT"),FAqZx:r(656,"Bp*y"),zfwpe:r(1058,"XBJe"),MtWZY:r(1306,"Y(gf")};if(n[r(740,"Wd#O")](typeof t,n[r(1113,"3J7Q")]))return t;if(n[r(563,"XBJe")](typeof t,n[r(675,"#rid")])){let s=t[r(386,"5&cU")]()[r(1348,"Cw#%")+"e"]();if(["1",n[r(310,"Cw#%")],n[r(904,"o3rS")],"on"][r(1085,"$r(y")](s))return!0;if(["0",n[r(1073,"0G^^")],"no",n[r(1160,"h#tw")]][r(1085,"$r(y")](s))return!1}return e}var qV=(t,e)=>t?t+"/"+e:e,xur=t=>Object[le(317,"Y(gf")](t||{})[le(524,"EdkW")](Array[le(576,"Z@sc")])[le(726,"CsF7")](),QV,HV={},si={set(t,e){let r=le;HV[t]=e,QV[r(697,"o#03")](r(912,"M]CY")+t,e)},get(t){return HV[t]}},J0=async t=>{let e=le;QV=t[e(316,"EdkW")].db,HV=await QV[e(1174,"X&%&")+e(477,"^*m#")](e(859,"csNL"),{})},GV=class{constructor(){let e=le,r={dZimd:e(369,"QFD%")},n=r[e(1041,"oEMo")][e(371,"nsNg")]("|"),s=1*6567+5325+-3*3964;for(;;){switch(n[s++]){case"0":this[e(550,"Z@sc")]=Y0+(e(1031,"yDmj")+e(1127,"1XpI"));continue;case"1":this[e(963,"3J7Q")]="";continue;case"2":this[e(727,"n(MT")]=/https:\/\/[^/?#]+\.share\.(?:123684\.com|123865\.com|123912\.com|123pan\.com|123pan\.cn|123592\.com)\/123pan\/([^/?#]+)/;continue;case"3":this[e(453,"M]CY")]=c8e+(e(845,"H&b]")+e(911,"3J7Q"));continue;case"4":this[e(401,"XBJe")]=/https:\/\/(?:www\.)?(123684\.com|123865\.com|123912\.com|123pan\.com|123pan\.cn|123592\.com)\/s\/([^/?#]+)/;continue}break}}async[le(509,"L^u@")](){let e=le,r={VtvRn:e(1137,"H&b]"),aYSsz:e(1120,"rgzd"),zRdWb:function(n,s){return n(s)},JKSxA:function(n,s){return n>s},lzxKJ:function(n,s){return n/s},UBTbU:e(1052,"XIxu"),uXhJh:e(429,"JZfJ"),mFjwl:e(1351,"4PrE")};if(this[e(1173,"X&%&")]&&console[e(445,"EdkW")](r[e(750,"y412")]),this[e(551,"w*gd")]&&console[e(866,"DhQd")](r[e(636,"1XpI")]),this[e(490,"2[yc")]){let n=r[e(840,"pr%%")](g8e,this[e(719,"oEMo")]);r[e(931,"Cw#%")](n?.[e(600,"X&%&")]||-49*10+8239+-7749,Math[e(1e3,"n(MT")](r[e(893,"Y(gf")](Date[e(545,"rgzd")](),-5192+122*39+-6*-239)))?console[e(937,"ryF!")](r[e(1291,"Wd#O")]):(console[e(936,"4PrE")](r[e(760,"JkQT")]),await this[e(1102,"2[yc")]())}else console[e(1168,"47(V")](r[e(1136,"csNL")]),await this[e(876,"DhQd")]()}get[le(997,"csNL")](){let e=le,r={spMsR:e(1370,"L^u@")+"rt"};return si[e(1084,"ZfqP")](r[e(1194,"w*gd")])}get[le(1167,"P(Jb")](){let e=le,r={qitkC:e(1005,"rgzd")+"rd"};return si[e(824,"pr%%")](r[e(687,"Wd#O")])}get[le(1328,"M]CY")](){let e=le,r={TTNkJ:e(958,"oEMo")};return si[e(617,"y412")](r[e(1024,"Mhe$")])}get[le(1208,"w*gd")+le(1292,"oEMo")](){let e=le,r={mByNC:e(913,"1XpI")+e(321,"$r(y")};return si[e(617,"y412")](r[e(947,"CsF7")])}get[le(1312,"^*m#")+le(806,"EdkW")](){let e=le,r={xFYyQ:e(851,"w*gd")+e(1086,"y412")};return si[e(558,"47(V")](r[e(362,"Cw#%")])}get[le(766,"Y(gf")+le(847,"EdkW")](){let e=le,r={EedQU:function(n,s,i){return n(s,i)},VtVnl:e(896,"n(MT")+e(746,"Y(gf")};return r[e(1246,"rgzd")](Aur,si[e(722,"JkQT")](r[e(1139,"csNL")]),!0)}[le(1257,"5&cU")+le(966,"Z@sc")+le(1033,"QFD%")](){let e=le,r={FWyHs:function(s,i){return s(i)},MGWxQ:e(625,"ryF!")+e(917,"M]CY")+e(329,"JZfJ")},n=r[e(570,"2[yc")](ii,this[e(1231,"pr%%")+e(451,"5&cU")]);if(!n)throw new Error(r[e(950,"w*gd")]);return n}[le(1125,"rgzd")+le(420,"oEMo")](){let e=le,r={Rfhog:function(s,i){return s(i)},xYCWr:e(991,"M]CY")+e(1186,"Cw#%")},n=r[e(930,"o3rS")](ii,this[e(689,"jhlg")]);if(!n)throw new Error(r[e(1207,"Bp*y")]);return n}async[le(1039,"Z@sc")+le(1375,"L^u@")](){let e=le,r={bZtAi:function(i,a){return i(a)},hVarx:e(1378,"o#03")+e(716,"47(V"),YFydo:function(i){return i()}},n=r[e(491,"5&cU")](ii,si[e(1283,"yDmj")](r[e(802,"ZfqP")]));if(n)return n;let s=r[e(1253,"JkQT")](fur);return si[e(364,"nsNg")](r[e(751,"QFD%")],s),s}async[le(1220,"X&%&")+le(666,"47(V")]({parentFileId:e=-47*-137+-3017*-1+-8*1182,limit:r=100,searchData:n="",searchMode:s=-76*-12+-538*-2+-1987,lastFileId:i=void 0}){let a=le,o={zpRgP:function(l,d){return l!==d},OrhYT:function(l,d){return l!==d},aQrDz:function(l,d){return l(d)},YegxK:function(l,d,f){return l(d,f)},PMUVA:a(611,"QFD%")+a(354,"XIxu")},c={parentFileId:e,limit:r};n&&(c[a(378,"XBJe")]=n,c[a(553,"ZfqP")]=s),o[a(311,"H&b]")](i,void 0)&&o[a(1277,"csNL")](i,null)&&o[a(870,"H&b]")](i,"")&&(c[a(1212,"P(Jb")]=i);let u=await he[a(835,"1XpI")](rur,{params:c,timeout:15e3,validateStatus:null,headers:o[a(456,"CsF7")](dC,this[a(512,"^*m#")+a(761,"]g^X")+a(685,"P(Jb")]())});return o[a(943,"4PrE")](fC,u,o[a(626,"]g^X")]),u[a(777,"Z@sc")]}async[le(764,"ryF!")+le(1164,"5&cU")]({name:e,parentID:r=-6269+11*-25+6544}){let n=le,s={toRRq:function(a,o){return a(o)},nbQwr:function(a,o,c){return a(o,c)},ElVwQ:n(784,"JZfJ")+n(803,"Bp*y")},i=await he[n(717,"ZfqP")](nur,{name:e,parentID:r},{timeout:15e3,validateStatus:null,headers:s[n(812,"Bp*y")](dC,this[n(884,"XBJe")+n(1326,"Bp*y")+n(886,"3J7Q")]())});return s[n(809,"QFD%")](fC,i,s[n(724,"H&b]")]),i[n(684,"EdkW")]}async[le(655,"ZfqP")+le(425,"oEMo")]({name:e,parentFileId:r=7581+399*-19}){let n=le,s=await this[n(496,"Cw#%")+n(1352,"h#tw")]({parentFileId:r,limit:100,searchData:e,searchMode:1});return(Array[n(544,"y412")](s?.[n(1149,"1XpI")]?.[n(340,"47(V")])?s[n(384,"Mhe$")][n(738,"JZfJ")]:[])[n(1198,"h#tw")](a=>a?.[n(1252,"yDmj")]===e&&Number(a?.[n(446,"XIxu")])===-2025+-2381*-1+-355&&Number(a?.[n(861,"ZfqP")]||1*-1931+9757+-7826)===0&&Number(a?.[n(964,"jhlg")+"Id"]||21*-123+-3767+6350)===Number(r))||null}async[le(1090,"y412")+le(878,"Mhe$")](){let e=le,r={TJcva:function(c,u,l){return c(u,l)},YuDkm:e(1304,"Z%L#")+e(868,"3DX)"),oZKsW:function(c,u){return c>u},kTpjK:function(c,u){return c(u)},IyiyX:function(c,u){return c(u)},sZUkg:function(c,u){return c(u)},DPnQi:function(c,u){return c>u},FWTNJ:function(c,u){return c(u)},TggvI:e(793,"H&b]")+e(994,"JkQT")+e(402,"JZfJ")},n=r[e(502,"oEMo")](u8e,si[e(1256,"^*m#")](r[e(1288,"Cw#%")]),-6*-7+-1*8877+8835);if(r[e(1248,"Wd#O")](n,47*-101+-6540*1+11287))try{return await this[e(423,"2[yc")+e(888,"L^u@")]({parentFileId:n,limit:1}),{dirID:n,name:yg,fromCache:!0}}catch{si[e(547,"H&b]")](r[e(705,"Z@sc")],"")}let s=await this[e(900,"CsF7")+e(1339,"DhQd")]({name:yg,parentFileId:0});if(s?.[e(1097,"w*gd")])return si[e(1358,"JkQT")](r[e(1109,"Wd#O")],r[e(444,"o#03")](Number,s[e(442,"JZfJ")])),{dirID:r[e(1335,"o3rS")](Number,s[e(729,"csNL")]),name:yg,fromCache:!1};let i=await this[e(1314,"ZfqP")+e(1205,"Wd#O")]({name:yg,parentID:0}),a=r[e(480,"#rid")](Number,i?.[e(427,"5zx!")]?.[e(1135,"Bp*y")]||i?.[e(465,"Z%L#")]?.[e(928,"DhQd")]||i?.[e(1210,"XBJe")]?.[e(853,"h#tw")]||-2676+-223*-12);if(r[e(673,"o3rS")](a,4681+9055*-1+-1458*-3))return si[e(1374,"4PrE")](r[e(1369,"nsNg")],a),{dirID:a,name:yg,created:!0};let o=await this[e(1036,"nsNg")+e(984,"5&cU")]({name:yg,parentFileId:0});if(o?.[e(935,"DhQd")])return si[e(1200,"X&%&")](r[e(1042,"ryF!")],r[e(575,"rgzd")](Number,o[e(398,"Y(gf")])),{dirID:r[e(507,"QFD%")](Number,o[e(462,"1XpI")]),name:yg,fromFallback:!0};throw new Error(r[e(747,"4PrE")])}async[le(647,"MAI[")+le(925,"$r(y")]({parentFileID:e,file:r,duplicate:n=-1505+-343*1+-1*-1849}){let s=le,i={cUFsp:function(o,c){return o(c)},hpccw:function(o,c,u){return o(c,u)},wnDiI:s(452,"Cw#%")+s(1180,"0G^^")},a=await he[s(949,"Y(gf")](eur,{parentFileID:e,filename:r[s(770,"jhlg")],sha1:r[s(1032,"2[yc")],size:r[s(795,"3J7Q")],duplicate:n},{timeout:2e4,validateStatus:null,headers:i[s(483,"$r(y")](dC,this[s(743,"Bp*y")+s(1178,"w*gd")+s(782,"XIxu")]())});return i[s(326,"L^u@")](fC,a,i[s(399,"H&b]")]),a[s(908,"jhlg")]}async[le(1344,"Fii^")+le(767,"H&b]")+"te"]({fileID:e,shareName:r,shareExpire:n=2202+-3494*-1+-5696*1,sharePwd:s=""}){let i=le,a={wWwco:function(l,d){return l(d)},USgxX:function(l,d){return l(d)},MxUfm:function(l,d,f){return l(d,f)},kBDAb:i(857,"o#03")+i(1357,"oEMo")},o={shareName:r,shareExpire:n,fileIDList:a[i(776,"w*gd")](String,e)},c=a[i(383,"nsNg")](ii,s);c&&(o[i(918,"Wd#O")]=c);let u=await he[i(373,"y412")](tur,o,{timeout:2e4,validateStatus:null,headers:a[i(1049,"$r(y")](dC,this[i(1264,"Cw#%")+i(920,"XBJe")+i(942,"H&b]")]())});return a[i(867,"JZfJ")](fC,u,a[i(449,"Y(gf")]),u[i(909,"H&b]")]}async[le(1051,"#rid")+le(472,"MAI[")](e=[]){let r=le,n={Khhuu:function(i,a){return i(a)},ITHCw:function(i,a){return i(a)},ASpDI:function(i,a,o){return i(a,o)},Jscfy:r(773,"h#tw")+r(1002,"P(Jb")},s=await he[r(1184,"ryF!")](sur,{fileIDs:n[r(1116,"CsF7")](Ag,e)},{timeout:15e3,validateStatus:null,headers:n[r(1066,"3DX)")](dC,this[r(732,"Z%L#")+r(602,"Y(gf")+r(343,"rgzd")]())});return n[r(1179,"o#03")](fC,s,n[r(1148,"oEMo")]),s[r(605,"JkQT")]}async[le(1350,"h#tw")+le(555,"oEMo")](e,r,n,{successCodes:s=[-4*-2305+1*-7481+-1739],message:i=le(887,"pr%%")+"\u8D25"}={}){let a=le,o={FVdKc:function(f,p){return f(p)},bErVG:function(f,p,m){return f(p,m)},MNEkR:function(f,p,m,h){return f(p,m,h)}},c=this[a(779,"X&%&")+a(1009,"3J7Q")](),u=await this[a(885,"jhlg")+a(1111,"P(Jb")](),l=o[a(597,"Cw#%")](dur,e),d=await he[a(649,"csNL")](r,n,{params:{[l[a(983,"jhlg")]]:l[a(341,"4PrE")]},timeout:15e3,validateStatus:null,headers:o[a(1285,"2[yc")](pur,c,u)});return o[a(1387,"QFD%")](mur,d,i,s),d[a(762,"MAI[")]}async[le(568,"4PrE")+le(330,"3J7Q")](e=[],r=9778+121*41+-14739){let n=le,s={fZLmM:function(a,o){return a(o)},PlucN:n(1323,"Z@sc")+n(895,"#rid")},i=[];for(let a of s[n(590,"yDmj")](Ag,e)){let o=await this[n(915,"XIxu")+n(869,"X&%&")](p8e,aur,{driveId:0,shareInfoList:[{shareId:a}],isPayShare:r},{message:s[n(1081,"CsF7")]});i[n(395,"QFD%")]({shareID:a,result:o})}return{success:!0,results:i}}async[le(852,"MAI[")+le(690,"jhlg")+le(679,"3J7Q")](e=[]){let r=le,n={YCGGG:function(s,i){return s(i)},hdIGq:r(742,"Z@sc")+r(702,"MAI[")};return await this[r(543,"MAI[")+r(805,"JkQT")](f8e,iur,{fileIdList:n[r(325,"rgzd")](Ag,e)[r(704,"ryF!")](s=>({fileId:s})),RequestSource:1},{successCodes:[-2*-3009+682+-67*100,1*-9267+1*-6869+-23*-1019],message:n[r(1217,"5&cU")]})}async[le(856,"h#tw")+le(882,"h#tw")](e,r={}){let n=le,s={YsAaA:function(c,u){return c(u)},ZkSPl:n(759,"XBJe")+n(426,"o#03")+n(825,"h#tw")+"1",rBaCT:n(486,"0G^^")+n(1324,"X&%&"),kYBSQ:n(1297,"#rid")+n(359,"CsF7")+"D",nSRnl:function(c,u){return c(u)},nuURo:function(c,u,l){return c(u,l)},SATxW:function(c,u){return c(u)},NqYss:function(c,u){return c||u},MljON:n(1219,"rgzd")+n(400,"w*gd")+n(681,"oEMo")+n(522,"QFD%")},i={name:s[n(1057,"H&b]")](ii,e?.[n(1126,"Fii^")]||e?.[n(556,"jhlg")]||e?.n),size:s[n(1271,"3DX)")](Number,e?.[n(569,"5&cU")]||e?.s||0),sha1:s[n(500,"47(V")](ii,e?.[n(494,"QFD%")]||e?.[n(863,"XIxu")]||e?.[n(1327,"3J7Q")])[n(699,"$r(y")+"e"]()};if(!i[n(366,"DhQd")]||!i[n(1176,"ryF!")]||!/^[a-f0-9]{40}$/i[n(1293,"DhQd")](i[n(1072,"y412")]))throw new Error(s[n(361,"L^u@")]);let a=9867+-6637*1+-19*170,o=-2*734+5567+-4099;try{let c=await this[n(1090,"y412")+n(1099,"4PrE")](),u=await this[n(709,"pr%%")+n(511,"o3rS")]({parentFileID:c[n(801,"$r(y")],duplicate:r[n(905,"]g^X")]??13*-482+5979+16*18,file:i});if(!u?.[n(797,"yDmj")]?.[n(844,"]g^X")])throw new Error(s[n(1349,"1XpI")]);if(a=s[n(890,"n(MT")](Number,u?.[n(387,"3J7Q")]?.[n(780,"o#03")]||-1*2278+-5692*-1+-3414*1),!a)throw new Error(s[n(382,"H&b]")]);let l=await this[n(357,"w*gd")+n(1385,"CsF7")+"te"]({fileID:a,shareName:s[n(515,"o3rS")](ii,r[n(448,"X&%&")])||i[n(1381,"JZfJ")],shareExpire:s[n(560,"Wd#O")](u8e,r[n(1213,"X&%&")+"e"],7363+5*1985+-17288),sharePwd:s[n(757,"JkQT")](ii,r[n(1172,"Mhe$")])});o=s[n(1071,"]g^X")](Number,l?.[n(1170,"2[yc")]?.[n(332,"L^u@")]||l?.[n(734,"M]CY")]?.[n(417,"EdkW")]||181*33+21*303+24*-514);let d=s[n(467,"4PrE")](ii,l?.[n(670,"X&%&")]?.[n(470,"]g^X")]),f=s[n(582,"3DX)")](ii,l?.[n(1308,"]g^X")]?.[n(818,"yDmj")]||l?.[n(1317,"DhQd")]?.[n(1182,"oEMo")])||s[n(1232,"MAI[")](uur,{uid:s[n(862,"ZfqP")](cur,this[n(639,"o3rS")+n(723,"Mhe$")+n(1033,"QFD%")]()),shareKey:d,sharePwd:r[n(1263,"H&b]")]});if(s[n(559,"^*m#")](!o,!f))throw new Error(s[n(1373,"1XpI")]);return{file:i,fileID:a,shareID:o,shareKey:d,shareUrl:f,tempDir:c,reuseResult:u,shareResult:l}}catch(c){if(s[n(712,"Cw#%")](a,o))try{await this[n(345,"EdkW")+n(1112,"M]CY")+"s"]({fileID:a,shareID:o})}catch{}throw c}}async[le(1065,"Fii^")+le(889,"5zx!")+"e"](e){let r=le,n={hcWbX:r(578,"0G^^")+"\u5931\u8D25",zmpVq:function(u,l){return u(l)},QbTol:r(606,"Y(gf")+r(433,"csNL"),vqLHt:r(488,"H&b]")+r(1054,"pr%%")},s=this[r(618,"o3rS")+"ta"](e);if(!s)throw new Error(n[r(629,"pr%%")]);let i=await this[r(1315,"nsNg")+r(363,"4PrE")](s),a=n[r(1333,"y412")](xur,i)[3*283+2892+-3741];if(!a?.[r(982,"MAI[")])throw new Error(n[r(1342,"n(MT")]);let o=n[r(1280,"csNL")](String,a[r(800,"DhQd")])[r(413,"Mhe$")]("*"),c=await this[r(902,"5zx!")+"d"](...o);if(!c)throw new Error(n[r(314,"Bp*y")]);return{file:a,url:c,header:this[r(487,"w*gd")+r(620,"^*m#")]()}}async[le(1259,"1XpI")+le(965,"1XpI")+"s"]({fileIDs:e=[],shareIDs:r=[]}={}){let n=le,s={IaMYY:function(o,c){return o(c)},PhyBj:function(o,c){return o(c)},DqtvH:function(o,c){return o(c)},iwGPD:function(o,c){return o>c},RlBbq:function(o,c){return o(c)},KGmbc:n(388,"JkQT")+n(710,"CsF7")},i={fileIDs:s[n(422,"1XpI")](Ag,e),shareIDs:s[n(1064,"JZfJ")](Ag,r)},a=s[n(744,"QFD%")](Boolean,s[n(1014,"Bp*y")](ii,this[n(927,"w*gd")]));if(s[n(836,"2[yc")](i[n(539,"oEMo")][n(1123,"5&cU")],-3958+-5041*1+-1*-8999))if(a)try{i[n(643,"5&cU")+"up"]=await this[n(586,"Wd#O")+n(475,"csNL")](i[n(1008,"^*m#")])}catch(o){i[n(1124,"CsF7")+"up"]={success:!1,error:o?.[n(1140,"CsF7")]||s[n(1196,"rgzd")](String,o)}}else i[n(794,"Bp*y")+"up"]={skipped:!0,reason:s[n(1356,"H&b]")]};if(s[n(1077,"nsNg")](i[n(1166,"L^u@")][n(1040,"Wd#O")],2*3977+-9715+1*1761))if(i[n(346,"Fii^")]=await this[n(479,"y412")+n(635,"Bp*y")](i[n(1190,"csNL")]),a)try{i[n(1091,"3J7Q")]=await this[n(476,"XBJe")+n(347,"ZfqP")+n(632,"X&%&")](i[n(916,"5&cU")])}catch(o){i[n(1082,"Mhe$")]={success:!1,error:o?.[n(619,"JZfJ")]||s[n(807,"o3rS")](String,o)}}else i[n(665,"5zx!")]={skipped:!0,reason:s[n(463,"o3rS")]};return i}[le(1221,"L^u@")+le(1276,"o#03")+"up"](){let e=le,r={RCgCd:function(s,i){return s===i},TjOdV:e(508,"5&cU"),hrUlo:function(s,i){return s(i)}},n=si[e(313,"Cw#%")](OB);if(!n)return{fileIDs:[],shareIDs:[]};if(r[e(823,"XIxu")](typeof n,r[e(952,"^*m#")]))try{return r[e(850,"XIxu")](FV,JSON[e(529,"nsNg")](n))}catch{return{fileIDs:[],shareIDs:[]}}return r[e(951,"X&%&")](FV,n)}[le(1083,"jhlg")+le(714,"h#tw")+le(1218,"ryF!")](e){let r=le,n={uRhex:function(a,o){return a(o)},bihuO:function(a,o){return a(o)}},s=n[r(415,"yDmj")](FV,e);if(!n[r(318,"5&cU")](l8e,s))return si[r(436,"QFD%")](OB,""),s;let i={...s,updatedAt:Date[r(1158,"4PrE")]()};return si[r(1199,"1XpI")](OB,i),i}async[le(1216,"rgzd")+le(339,"5&cU")+le(980,"#rid")](){let e=le,r={bFNNx:function(s,i){return s(i)},QAHeB:function(s,i){return s(i)}},n=this[e(1161,"csNL")+e(528,"Bp*y")+"up"]();if(!r[e(1362,"3J7Q")](l8e,n))return null;si[e(758,"csNL")](OB,"");try{return await this[e(910,"n(MT")+e(567,"^*m#")+"s"](n)}catch(s){return{...n,error:s?.[e(960,"Fii^")]||r[e(608,"oEMo")](String,s)}}}async[le(730,"o#03")](){let e=le,r={rPadd:e(1270,"o#03"),VSLhd:e(1003,"CsF7")+e(615,"yDmj")+e(1215,"CsF7")+e(668,"5&cU")+e(1043,"Cw#%")+e(624,"h#tw")+e(333,"3J7Q")+e(1067,"4PrE")+e(1236,"y412")+e(945,"]g^X")+e(1063,"Fii^")+"6",OksTp:e(924,"3J7Q")+e(1100,"47(V"),taYYq:function(a,o){return a(o)},UHHQu:function(a,o){return a(o)},ZjKAQ:e(1240,"Z%L#"),zuOfq:e(788,"pr%%")+e(439,"4PrE")+"\u914D\u7F6E",reouo:e(1022,"M]CY")};if(!this[e(616,"$r(y")]||!this[e(938,"h#tw")])return;let n=JSON[e(358,"5zx!")]({passport:this[e(1245,"DhQd")],password:this[e(938,"h#tw")],remember:!0}),s={method:r[e(579,"Z@sc")],url:this[e(986,"yDmj")],headers:{"User-Agent":r[e(379,"yDmj")],"Content-Type":r[e(1188,"XBJe")],"App-Version":"43",Referer:c8e+(e(1254,"3J7Q")+e(664,"yDmj")+e(959,"nsNg"))+r[e(1056,"XBJe")](encodeURIComponent,Y0)+(e(598,"]g^X")+e(1364,"JZfJ"))},data:n},i=(await he[e(1299,"yDmj")](s))[e(1273,"h#tw")];if(!i?.[e(612,"nsNg")]?.[e(1106,"EdkW")]){r[e(1151,"o3rS")](messageToDart,{action:r[e(497,"pr%%")],opt:{message:r[e(749,"Bp*y")],duration:5}});return}si[e(1012,"P(Jb")](r[e(781,"DhQd")],i[e(1210,"XBJe")][e(464,"Bp*y")])}[le(374,"n(MT")+"ta"](e){let r=le,n={xuhrE:function(c,u){return c(u)},sVaoJ:function(c,u){return c||u},vwNpc:function(c,u){return c>u},XMaPe:function(c,u){return c+u},gvKGz:function(c,u){return c(u)},NwzFJ:function(c,u){return c>u}},s=n[r(843,"rgzd")](decodeURIComponent,n[r(1185,"X&%&")](e,"")[r(441,"3DX)")]());s=s[r(907,"ZfqP")](/[#.,,/\s]+$/,""),this[r(713,"JkQT")]="";let i=s[r(1019,"o3rS")]("?");if(n[r(745,"o#03")](i,2582+1*-2582)){let c=s[r(614,"ZfqP")](n[r(1060,"3J7Q")](i,1)),u=c[r(397,"rgzd")](/(?:^|&)pwd=([^&]+)/i);this[r(1115,"5&cU")]=u?n[r(753,"Bp*y")](decodeURIComponent,u[685*-2+-939+-110*-21]):""}let a=this[r(741,"JkQT")][r(603,"ryF!")](s);if(a)return n[r(789,"ZfqP")](a[3*-473+5490*-1+6911][r(349,"1XpI")]("?"),-1580+-13*29+1957)?a[1*-5269+5129+1*142][r(995,"Z%L#")]("?")[-1*4339+3383+956]:a[-3*-3089+-8748+47*-11];let o=this[r(1247,"]g^X")][r(499,"oEMo")](s);return o?o[2*3902+5989+8*-1724]:null}async[le(457,"XIxu")+le(394,"CsF7")](e){let r=le,n={kEgFI:function(o,c){return o in c},TfxPq:function(o,c){return o>c},MiHBV:function(o,c){return o(c)},pIBtx:function(o,c){return o===c}},s={},i=[],a=await this[r(1122,"jhlg")+"st"](e,this[r(342,"L^u@")],-6550+2306*3+-368,0,i,"");if(a&&n[r(1284,"3J7Q")](a[r(906,"y412")],120*-9+-1*-1252+-172)&&(s[r(1068,"47(V")]=a),n[r(1343,"5&cU")](i[r(323,"3DX)")],0)){let o=await Promise[r(1365,"$r(y")](i[r(1244,"n(MT")](async c=>{let u=r;return this[u(769,"EdkW")+"fo"](c[u(648,"Z@sc")],c[u(342,"L^u@")],0,c[u(540,"47(V")],c[u(1371,"P(Jb")])}));o=o[r(678,"^*m#")](c=>c!=null),i=[...i,...o[r(1366,"1XpI")]()]}i&&Array[r(688,"2[yc")](i)&&await Promise[r(676,"L^u@")](i[r(557,"Y(gf")](async o=>{let c=r,u=o[c(1371,"P(Jb")]||o[c(1107,"oEMo")];!n[c(1121,"4PrE")](u,s)&&(s[u]=[]);let l=await this[c(1152,"JZfJ")+"st"](o[c(458,"1XpI")],o[c(667,"QFD%")],0,o[c(519,"y412")]);l&&n[c(1114,"Z@sc")](l[c(353,"CsF7")],-134*-8+-8086+-21*-334)&&s[u][c(554,"4PrE")](...l)}));for(let o in s)n[r(954,"H&b]")](s[o][r(323,"3DX)")],6562+-2*2735+13*-84)&&delete s[o];return Object[r(1275,"#rid")](s)[r(621,"1XpI")](o=>{let c=r;s[o]=s[o][c(1025,"o3rS")](u=>{let l=c;return{vod_id:[u[l(962,"ryF!")],u[l(1243,"jhlg")],u[l(1204,"XIxu")],u[l(1302,"ZfqP")],u[l(1145,"o#03")],n[l(846,"w*gd")](yur,u[l(447,"3J7Q")+"l"]||"")][l(1286,"Wd#O")]("*"),vod_name:u[l(1355,"Z%L#")],vod_size:u[l(832,"M]CY")]}})}),s}async[le(816,"3DX)")+"fo"](e,r,n,s,i){let a=le,o={cFgDK:function(y,g){return y===g},NxrAQ:function(y,g,b){return y(g,b)},HuOOP:function(y,g){return y||g},hUKMz:function(y,g,b){return y(g,b)},HTPqp:function(y,g){return y??g},JtOLa:function(y,g){return y+g},iZWDO:a(520,"2[yc"),NEjve:a(437,"o3rS"),RWVyG:a(1267,"0G^^"),agnKh:a(1165,"P(Jb"),aKRVZ:function(y,g){return y(g)},fkvur:function(y,g){return y!==g},EiFbt:function(y,g){return y>=g},WMqUb:function(y,g){return y(g)}},c=[],u=o[a(1018,"rgzd")](n,508*12+-1*1390+-4706),l=5*-787+19*-148+7*964,d=new Set,f=new Set,p=y=>!(y==null||y===""||y===0||y==="0"||y===-(2977*1+-5507+2531)||y==="-1"),m=8303+88*62+-4553*3;for(;;){let y=l+"|"+u;if(d[a(645,"4PrE")](y))break;d[a(495,"Cw#%")](y);let g=await he[a(775,"o#03")](o[a(573,"3DX)")](this[a(1382,"jhlg")],o[a(1354,"Z%L#")]),{headers:{},params:{limit:o[a(1013,"yDmj")],next:u,orderBy:o[a(1224,"3J7Q")],orderDirection:o[a(976,"w*gd")],shareKey:e,SharePwd:r,ParentFileId:s,Page:o[a(1131,"o#03")](String,l)}});if(o[a(1129,"ZfqP")](g[a(658,"M]CY")],1*6961+6750+-13511))break;if(o[a(355,"Z@sc")](g[a(1360,"3DX)")][a(828,"yDmj")],7121+-594*16+7486)){console[a(1038,"csNL")](g[a(1265,"L^u@")][a(814,"Wd#O")]);break}let b=g[a(459,"Fii^")][a(387,"3J7Q")];if(!b||!Array[a(901,"oEMo")](b[a(319,"XBJe")]))break;b[a(1029,"oEMo")][a(826,"5&cU")](A=>{let S=a;if(o[S(1189,"h#tw")](A[S(405,"Y(gf")],-7604+10*-479+-1*-12394)){let I=A[S(1258,"]g^X")]+"|"+o[S(1017,"Bp*y")](qV,o[S(594,"Bp*y")](i,""),A[S(526,"Mhe$")]);if(f[S(891,"h#tw")](I))return;f[S(542,"w*gd")](I);let R=o[S(1320,"h#tw")](qV,o[S(725,"MAI[")](i,""),A[S(652,"DhQd")]);c[S(969,"M]CY")]({filename:A[S(577,"o#03")],shareKey:e,SharePwd:r,next:0,fileId:A[S(948,"1XpI")],path:R})}});let x=b[a(865,"JZfJ")];if(o[a(380,"H&b]")](p,x)){u=x;continue}if(Array[a(628,"47(V")](b[a(523,"1XpI")])&&o[a(385,"w*gd")](b[a(819,"Bp*y")][a(1021,"ryF!")],m)){l+=273+-17*16,u=2801*-1+1*6337+-3536;continue}if(!o[a(1104,"P(Jb")](p,x))break}let h=await Promise[a(1298,"JZfJ")](c[a(720,"P(Jb")](async y=>this[a(999,"JkQT")+"fo"](e,r,-4*2091+-2*2732+-2*-6914,y[a(534,"n(MT")],y[a(1316,"n(MT")])));return h=h[a(485,"Fii^")](y=>y!=null),[...c,...h[a(1133,"Fii^")]()]}async[le(1142,"ZfqP")+"st"](e,r,n,s,i=null,a=""){let o=le,c={ldpoc:function(g,b){return g===b},FChAq:function(g,b){return g(b)},RXRfH:function(g,b,x){return g(b,x)},gmTUs:function(g,b){return g||b},byFpL:function(g,b){return g??b},hXstt:function(g,b){return g+b},Wsazq:o(671,"#rid"),hxLxD:o(1260,"P(Jb"),UEvYr:o(642,"P(Jb"),Gvojr:o(389,"EdkW"),BjsgG:function(g,b){return g(b)},lIsFd:function(g,b){return g>=b}},u=[],l=c[o(356,"H&b]")](n,-2230*-4+-9775+855),d=-226*-3+-3418*2+6159,f=new Set,p=new Set,m=new Set,h=g=>!(g==null||g===""||g===0||g==="0"||g===-(-11509+5*2302)||g==="-1"),y=-52*-41+97*102+-11926;for(;;){let g=d+"|"+l;if(f[o(923,"Z%L#")](g))break;f[o(504,"o3rS")](g);let b=(await he[o(1283,"yDmj")](c[o(839,"2[yc")](this[o(1181,"L^u@")],c[o(837,"h#tw")]),{headers:{},params:{limit:c[o(1128,"^*m#")],next:l,orderBy:c[o(501,"oEMo")],orderDirection:c[o(469,"JZfJ")],shareKey:e,SharePwd:r,ParentFileId:s,Page:c[o(1341,"o#03")](String,d)}}))[o(703,"#rid")],x=b?.[o(1149,"1XpI")];if(!x||!Array[o(944,"Wd#O")](x[o(319,"XBJe")]))break;x[o(873,"5zx!")][o(677,"L^u@")](S=>{let I=o;if(c[I(939,"]g^X")](S[I(411,"$r(y")],-139+137*41+-5476)){let R=S[I(430,"QFD%")]+"|"+S[I(1070,"yDmj")];if(p[I(790,"csNL")](R))return;p[I(700,"XBJe")](R),u[I(697,"o#03")]({ShareKey:e,FileId:S[I(754,"MAI[")],S3KeyFlag:S[I(968,"2[yc")],Size:S[I(871,"$r(y")],Etag:S[I(1300,"P(Jb")],FileName:S[I(584,"n(MT")],DownloadUrl:c[I(537,"nsNg")](d8e,S[I(894,"QFD%")+"l"]||S[I(897,"2[yc")+"L"])})}else if(c[I(1274,"ZfqP")](S[I(756,"Z%L#")],-40*-159+-5063*1+-1297)&&Array[I(1035,"H&b]")](i)){let R=c[I(640,"1XpI")](qV,c[I(1159,"h#tw")](a,""),S[I(1191,"rgzd")]),w=S[I(1227,"H&b]")]+"|"+R;if(m[I(1346,"3DX)")](w))return;m[I(360,"2[yc")](w),i[I(1214,"P(Jb")]({filename:S[I(498,"5&cU")],shareKey:e,SharePwd:r,next:0,fileId:S[I(946,"pr%%")],path:R})}});let A=x[o(562,"nsNg")];if(c[o(583,"ryF!")](h,A)){l=A;continue}if(Array[o(688,"2[yc")](x[o(1094,"CsF7")])&&c[o(440,"CsF7")](x[o(701,"nsNg")][o(1130,"H&b]")],y)){d+=1,l=-8876+1*-7047+15923;continue}if(!c[o(674,"5zx!")](h,A))break}return u}[le(748,"M]CY")+le(533,"X&%&")](){return{Referer:Y0+"/"}}async[le(593,"EdkW")+"d"](e,r,n,s,i,a=""){let o=le,c={lZJDE:function(m,h){return m(h)},bsYbo:function(m,h){return m(h)},KLEAi:o(1016,"1XpI")+o(580,"ZfqP")+o(1290,"#rid"),tWKnk:o(334,"CsF7"),ZbVFC:o(517,"$r(y")+o(1047,"XIxu")+o(831,"5zx!")+o(827,"o3rS")+o(478,"^*m#")+o(404,"XBJe")+o(641,"Fii^")+o(1209,"QFD%")+o(549,"n(MT")+o(945,"]g^X")+o(471,"XIxu")+"6",IGJvH:o(854,"Z@sc")+o(572,"pr%%")+o(406,"h#tw"),pgcDU:o(1334,"oEMo")},u=c[o(474,"yDmj")](d8e,c[o(1093,"JZfJ")](gur,a));if(u&&this[o(368,"JZfJ")+o(810,"]g^X")])return u;if(await this[o(1027,"Mhe$")](),!c[o(864,"jhlg")](ii,this[o(921,"DhQd")]))throw new Error(c[o(637,"csNL")]);let l=JSON[o(883,"DhQd")]({ShareKey:e,FileID:r,S3KeyFlag:n,Size:s,Etag:i}),d={method:c[o(1010,"Mhe$")],url:this[o(1336,"47(V")]+(o(376,"Mhe$")+o(926,"oEMo")),headers:{"User-Agent":c[o(1322,"M]CY")],Authorization:o(696,"XIxu")+this[o(1345,"3DX)")],"Content-Type":c[o(324,"3DX)")],platform:c[o(849,"0G^^")]},data:l},f=(await he[o(1096,"]g^X")](d))[o(672,"4PrE")][o(762,"MAI[")];return c[o(841,"5&cU")](hur,f[o(711,"csNL")+"L"])}async[le(627,"ZfqP")+le(1235,"y412")](e,r,n,s,i){let a=le,o={WHDLM:function(d,f){return d!==f},qatQz:a(755,"yDmj"),CWiQc:a(932,"H&b]")+a(1079,"MAI[")+a(1050,"Fii^")+a(390,"47(V")+a(715,"JZfJ")+a(320,"P(Jb")+a(653,"XBJe")+a(1281,"2[yc")+a(591,"CsF7")+a(1044,"^*m#")+a(336,"JkQT")+"6",bKsYT:a(924,"3J7Q")+a(941,"$r(y")+a(799,"o3rS"),VNfHL:a(1118,"5&cU")};await this[a(940,"47(V")]();let c={method:o[a(315,"Bp*y")],url:Y0+(a(546,"H&b]")+a(975,"Mhe$")+"fo"),headers:{"User-Agent":o[a(1201,"X&%&")],Authorization:a(1279,"Z@sc")+this[a(1289,"4PrE")],"Content-Type":o[a(1269,"#rid")],platform:o[a(1046,"rgzd")]},params:{etag:i,size:s,from:"1",shareKey:e}},u=(await he[a(922,"Z@sc")](c))[a(1141,"CsF7")][a(672,"4PrE")][a(516,"XBJe")+a(798,"CsF7")],l=[];return u[a(638,"4PrE")](d=>{let f=a;o[f(1359,"rgzd")](d[f(792,"5&cU")],"")&&l[f(973,"y412")]({name:d[f(692,"y412")],url:d[f(1226,"csNL")]})}),l}async[le(898,"DhQd")+le(1062,"DhQd")](e="0"){let r=le,n={VdVhb:r(682,"Mhe$")+r(409,"csNL")+r(468,"1XpI")+r(669,"Z@sc")+r(531,"n(MT")+r(822,"JkQT")+r(737,"5zx!")+r(564,"Z%L#")+r(352,"y412")+r(1386,"Z%L#")+r(1255,"5zx!")+r(1132,"JZfJ")+r(990,"CsF7")+"2",QPkJn:r(1377,"2[yc"),eWZXK:r(1087,"oEMo"),bEtKy:r(778,"Bp*y"),ALQEL:function(i,a){return i(a)},SPLjM:function(i,a){return i||a},xJgsj:r(1228,"MAI["),BIrab:r(1028,"Y(gf")+"le"};return await this[r(662,"oEMo")](),(await he[r(1311,"n(MT")](Y0+(r(820,"rgzd")+r(1098,"DhQd")),{headers:{"User-Agent":n[r(484,"rgzd")],Authorization:r(527,"5zx!")+this[r(811,"#rid")]},params:{driveId:"0",limit:n[r(1239,"L^u@")],next:"0",orderBy:n[r(510,"nsNg")],orderDirection:n[r(880,"Mhe$")],parentFileId:n[r(1020,"QFD%")](String,n[r(644,"3J7Q")](e,"0")),trashed:n[r(396,"Fii^")],SearchData:"",Page:"1",OnlyLookAbnormalFile:"0",event:n[r(659,"o#03")],operateType:"1",inDirectSpace:n[r(604,"3DX)")]}}))[r(908,"jhlg")]}async[le(874,"Y(gf")+le(530,"Mhe$")](e,r,n,s,i=""){let a=le,o={hPkkO:a(532,"2[yc"),sSVuv:a(492,"DhQd")+a(791,"Z@sc"),cbbUn:a(421,"jhlg")+a(736,"XBJe")+a(985,"1XpI"),oRCXC:a(1268,"5zx!")};await this[a(829,"5&cU")]();let c=JSON[a(391,"jhlg")]({driveId:0,FileName:i,FileID:e,S3KeyFlag:r,Size:n,Etag:s}),u={method:o[a(322,"ryF!")],url:Y0+(a(1171,"4PrE")+a(739,"4PrE")+a(1034,"1XpI")),headers:{"User-Agent":o[a(1155,"ryF!")],Authorization:a(1192,"Wd#O")+this[a(1092,"h#tw")],"Content-Type":o[a(1234,"MAI[")],platform:o[a(1361,"o#03")]},data:c},l=await he[a(381,"L^u@")](u);return l?.[a(384,"Mhe$")]?.[a(338,"Cw#%")]?.[a(657,"JkQT")+"l"]||l?.[a(367,"5&cU")]?.[a(384,"Mhe$")]?.[a(1294,"Fii^")+"L"]||""}},ai=new GV;var A8e=Ce(Q0(),1),pC=Ce(Xn(),1);var zV="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",xg={NEW:"NEW",SCANNED:"SCANNED",CONFIRMED:"CONFIRMED",EXPIRED:"EXPIRED",CANCELED:"CANCELED"},y8e={encode(t,e=3e5){let r={data:t,expireTime:Date.now()+e};return Buffer.from(JSON.stringify(r)).toString("base64url")},decode(t){try{if(!t)return null;let e=JSON.parse(Buffer.from(t,"base64url").toString());return Date.now()>e.expireTime?null:e.data}catch{return null}}},KV=async t=>{let e=pC.default.enc.Hex.stringify(pC.default.MD5(t.config.y115.cookie)).toString();return(await t.db.getObjectDefault("/y115",{}))[e]??""},bur=async(t,e)=>{let r=pC.default.enc.Hex.stringify(pC.default.MD5(t.config.y115.cookie)).toString();await t.db.push(`/y115/${r}`,e)};async function VV(t){t.get("/qrcode",async(e,r)=>{try{let s=(await he.get("https://qrcodeapi.115.com/api/1.0/web/1.0/token",{headers:{"User-Agent":zV,referer:"https://115.com/"}})).data.data,i=y8e.encode({sign:s.sign,time:s.time,uid:s.uid}),a=await A8e.default.toBuffer(s.qrcode,{width:300,height:300});r.header("X-Session-Key",i),r.send(a)}catch(n){console.error("115\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25:",n),r.status(500).send({code:-1,message:"\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25"})}}),t.post("/check-status",async(e,r)=>{let{sessionKey:n}=e.body,s=y8e.decode(n);if(!s)return r.send({code:0,data:{status:xg.EXPIRED}});let{sign:i,time:a,uid:o}=s;try{let u=(await he.get(`https://qrcodeapi.115.com/get/status/?_=${parseInt(Date.now()/1e3)}&sign=${i}&time=${a}&uid=${o}`,{headers:{"User-Agent":zV,referer:"https://115.com/"}})).data.data?.status;if(u===2){let l=new URLSearchParams({account:o,app:"android"}),d=await he.post("https://passportapi.115.com/app/1.0/android/1.0/login/qrcode",l,{headers:{"User-Agent":zV,referer:"https://115.com/"}});if(d.data.state===1){let f=wl(d.headers["set-cookie"]).join("");r.send({code:0,data:{status:xg.CONFIRMED,cookie:f}})}else r.send({code:0,data:{status:xg.NEW}})}else u===1?r.send({code:0,data:{status:xg.SCANNED}}):u===-1||u===-2?r.send({code:0,data:{status:xg.EXPIRED}}):r.send({code:0,data:{status:xg.NEW}})}catch(c){console.error("115\u72B6\u6001\u68C0\u67E5\u5931\u8D25:",c),r.send({code:0,data:{status:xg.NEW}})}}),t.post("/cookie",(e,r)=>{r.send({code:-1,message:"\u8BF7\u4F7F\u7528 /check-status \u63A5\u53E3"})}),t.get("/cookie",async(e,r)=>{r.send({code:0,data:await KV(e.server)})}),t.put("/cookie",async(e,r)=>{await bur(e.server,e.body?.cookie??""),r.send({code:0})})}var E8e="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",eY="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36",v8e="4.8.2",XV="OFFLINE$",S8e=15e3,I8e=1e3,_ur="115\u79D2\u4F20123",LB="PAN123_RAPID@",YV=async t=>globalThis.getPanName?await globalThis.getPanName(t):t;function C8e(t){let r=/https:\/\/(?:115|anxia|115cdn)\.com\/s\/([a-zA-Z0-9]+)\?password=([a-zA-Z0-9]+)/.exec(t);return r?{shareCode:r[1],receiveCode:r[2]}:null}function T8e(t){let e=String(t||"").trim();return/^(?:magnet:\?|ed2k:\/\/)/i.test(e)?!0:/^https?:\/\//i.test(e)&&!C8e(e)}function w8e(t){return["mp4","webm","avi","wmv","flv","mov","mkv","mpeg","3gp","ts","m2ts","mp3","wav","aac","iso"].includes(String(t||"").slice(String(t||"").lastIndexOf(".")+1).toLowerCase())}function Eur(t={}){return String(t.sha||t.sha1||t.Sha1||"").trim().toUpperCase()}function vur(t){return`${LB}${Buffer.from(JSON.stringify(t),"utf8").toString("base64url")}`}function Sur(t){let e=String(t||"");if(!e.startsWith(LB))return null;let r=e.slice(LB.length);if(!r)return null;try{return JSON.parse(Buffer.from(r,"base64url").toString("utf8"))}catch{return null}}function Iur(t){return String(t||"").startsWith(LB)}function Cur(t,e){let r=Eur(t),n=String(t.n||t.name||"").trim(),s=Number(t.s||t.size||0);return!n||!s||!/^[a-f0-9]{40}$/i.test(r)?null:{vod_id:vur({name:n,size:s,sha1:r,fid:t.fid||"",shareCode:e.shareCode,receiveCode:e.receiveCode}),vod_name:n,vod_size:s,vod_group:t.vod_group}}function Tur(t={}){let e=String(t.sha1||"").trim().toUpperCase(),r=Number(t.size||0);return e&&r>0?`${e}:${r}`:""}function JV(t){return t?typeof t=="string"?t.trim():JSON.stringify(t):""}async function X0(t){let e=JV(t?.config?.y115?.cookie||"");if(e)return e;let r=t?.config?.y115?JV(await KV(t)):"";if(r)return r;let n=await t.db.getObjectDefault("/y115",{}),s=n.cookie||Object.values(n).find(i=>typeof i=="string"&&i.trim())||"";return JV(s)}function wur(t){return(Array.isArray(t)?t:[t]).map(r=>String(r||"").split(";")[0].trim()).filter(Boolean).join("; ")}function Dc(t,e=null){let r=e?` ${JSON.stringify(e)}`:"";console.log(`[115-offline] ${t}${r}`)}function tY(t,e=180){let r=String(t??"");return r.length>e?`${r.slice(0,e)}...`:r}function ZV(t,e=0){if(t==null)return t;if(e>3)return Array.isArray(t)?`[Array(${t.length})]`:typeof t=="object"?`[Object(${Object.keys(t).join(",")})]`:t;if(Array.isArray(t))return t.slice(0,3).map(r=>ZV(r,e+1));if(typeof t=="object"){let r={};for(let[n,s]of Object.entries(t))/cookie|token|auth|sign|secret/i.test(n)?r[n]="[masked]":/url/i.test(n)&&typeof s=="string"?r[n]=s?`[url:${s.length}]`:"":r[n]=ZV(s,e+1);return r}return typeof t=="string"?tY(t):t}function R8e(t){return{Cookie:t,"User-Agent":eY,"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json, text/plain, */*","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Referer:"https://115.com/",Origin:"https://115.com"}}function Rur(t){let e=String(t?.url||t?.source_url||t?.source||t?.info_hash||"").trim(),r=String(t?.pick_code||t?.pickcode||t?.pc||t?.file_pick_code||"").trim();return{id:String(t?.id||t?.info_hash||t?.hash||t?.url||"").trim(),name:String(t?.name||t?.file_name||t?.filename||"\u672A\u77E5").trim()||"\u672A\u77E5",status:Number(t?.status),progress:Number(t?.progress||t?.percentDone||0),pickCode:r,fileId:String(t?.file_id||t?.fid||"").trim(),sourceUrl:e,raw:t}}function Nur(t){return(Array.isArray(t?.data)?t.data:Array.isArray(t?.data?.tasks)?t.data.tasks:Array.isArray(t?.tasks)?t.tasks:Array.isArray(t?.list)?t.list:[]).map(Rur)}function N8e(t,e,r={}){let n=String(e||"").trim(),s=/btih:([^&]+)/i.exec(n)?.[1]?.toLowerCase()||"",i=Array.isArray(r?.result)?r.result[0]:null,a=String(r?.id||r?.data?.id||r?.task_id||r?.data?.task_id||i?.info_hash||"").trim();return!!(a&&t.id===a||t.sourceUrl&&t.sourceUrl===n||s&&JSON.stringify(t.raw||{}).toLowerCase().includes(s))}function rY(t,e=0){if(!t||e>6||typeof t!="object")return"";for(let r of["pick_code","pickcode","pc","file_pick_code"]){let n=String(t[r]||"").trim();if(n)return n}for(let r of Object.values(t)){let n=rY(r,e+1);if(n)return n}return""}function O8e(t){return new Promise(e=>setTimeout(e,t))}function k8e(t,e=""){let r=String(t?.n||t?.name||t?.file_name||"").trim(),n=String(t?.pc||t?.pick_code||t?.pickcode||"").trim();return!r||!n||!w8e(r)?null:{vod_id:n,vod_name:r,vod_size:Number(t?.s||t?.size||0),vod_group:e}}async function Our(t,e){let r=await X0(t);if(!r||!e)return[];let n=await he.get("https://webapi.115.com/files",{params:{aid:1,cid:e,o:"user_ptime",asc:0,offset:0,show_dir:1,limit:115,code:"",scid:"",snap:0,natsort:1,record_open_time:1,source:"",format:"json"},headers:{Cookie:r,"User-Agent":E8e,Referer:"https://webapi.115.com/bridge_2.0.html?namespace=Core.DataAccess&api=UDataAPI&_t=v5",Origin:"https://115.com","X-Requested-With":"XMLHttpRequest"},validateStatus:null});return Array.isArray(n.data?.data)?n.data.data:[]}async function P8e(t,e,r="",n=0){if(!e||n>5)return[];let s=await Our(t,e),i=[];for(let a of s){if(Number(a?.fc)===1){let o=k8e(a,r);o&&i.push(o);continue}if(Number(a?.fc)===0){let o=String(a?.cid||a?.fid||"").trim(),c=String(a?.n||a?.name||"").trim(),u=c?r?`${r}/${c}`:c:r;i.push(...await P8e(t,o,u,n+1))}}return i}async function kur(t,e){let r=await X0(t),n=String(e||"").trim();if(!r||!n)return[];let s=await he.get("https://webapi.115.com/files/search",{params:{search_value:n,type:4,offset:0,limit:20,date:"",aid:1,cid:0,pick_code:"",source:"",format:"json"},headers:{Cookie:r,"User-Agent":eY,Referer:"https://115.com/",Origin:"https://115.com",Accept:"application/json, text/plain, */*"},validateStatus:null});return Array.isArray(s.data?.data)?s.data.data:[]}async function Pur(t,e){let r=await L8e(t,e);if(r.length>0)return r[0].vod_id;if(!e?.raw)return"";let n=e.raw;return String(n.file_id||n.delete_file_id||e.fileId||"").trim()?"":e.pickCode||rY(n)}function Dur(t){return t?.errcode===10008||t?.result?.some?.(e=>e?.errcode===10008)}function D8e(t){return(t?.state===!1||t?.errno)&&!Dur(t)}function B8e(t){return t?.message||t?.msg||t?.error_msg||t?.error||"115 \u79BB\u7EBF\u4EFB\u52A1\u63D0\u4EA4\u5931\u8D25"}function Bur(t){return t?.server||t||null}async function L8e(t,e){if(!e?.raw)return[];let r=e.raw,n=String(r.file_id||r.delete_file_id||e.fileId||"").trim();if(n){let o=await P8e(t,n);if(Dc("\u79BB\u7EBF\u76EE\u5F55\u626B\u63CF",{cid:n,count:o.length,selected:o[0]?.vod_name||"",hasPickCode:!!o[0]?.vod_id}),o.length>0)return o}let s=String(r.name||e.name||"").replace(/\.[^.]+$/,"").trim(),i=await kur(t,s),a=i.map(o=>k8e(o)).filter(Boolean).sort((o,c)=>Number(c.vod_size||0)-Number(o.vod_size||0));return Dc("\u79BB\u7EBF\u6587\u4EF6\u641C\u7D22",{keyword:tY(s,80),count:i.length,selected:a[0]?.vod_name||"",hasPickCode:!!a[0]?.vod_id}),a}async function M8e(t,e="GET",r=null,n=null){try{let s=await he({url:t,method:e,headers:r||void 0,data:n,validateStatus:null});return{data:s.data,cookie:wur(s.headers?.["set-cookie"]),headers:s.headers||{},status:s.status}}catch(s){throw s.response?s.response.data:s}}async function W8e(t,e){let r=await X0(t),n=String(e||"").trim();if(!r)return{state:!1,message:"115 Cookie \u7F3A\u5931"};if(!n)return{state:!1,message:"\u79BB\u7EBF\u94FE\u63A5\u4E3A\u7A7A"};let s=new URLSearchParams({"url[0]":n,wp_save_path:"0",appVer:v8e});Dc("\u63D0\u4EA4\u79BB\u7EBF\u4EFB\u52A1",{type:n.split(":")[0],length:n.length});let i=await M8e("https://115.com/web/lixian/?ct=lixian&ac=add_task_urls","POST",R8e(r),s.toString()),a=i.data||{};return Dc("\u63D0\u4EA4\u54CD\u5E94",{status:i.status,state:a?.state,message:a?.message||a?.msg||"",preview:tY(typeof a=="string"?a:JSON.stringify(a))}),a}async function $8e(t){let e=await X0(t);if(!e)return[];let r=await he.get("https://115.com/web/lixian/?ct=lixian&ac=task_lists",{params:{page:1,limit:30,appVer:v8e},headers:R8e(e),validateStatus:null}),n=Nur(r.data);return Dc("\u4EFB\u52A1\u5217\u8868",{status:r.status,count:n.length}),n}async function Lur(t,e,r={},n={}){let s=Number(n.maxWaitMs||S8e),i=Number(n.intervalMs||I8e),a=Date.now(),o=null;for(;Date.now()-a<=s;){let c=await $8e(t),u=c.find(l=>N8e(l,e,r));if(u){o=u;let l=await Pur(t,u)||u.pickCode||rY(u.raw);if(Dc("\u8F6E\u8BE2\u4EFB\u52A1",{name:u.name,status:u.status,progress:u.progress,hasPickCode:!!l}),l)return{pickCode:l,task:u}}else Dc("\u672A\u5339\u914D\u5F53\u524D\u79BB\u7EBF\u4EFB\u52A1",{count:c.length});await O8e(i)}return{pickCode:"",task:o}}async function x8e(t,e){let r=String(e||"").trim();if(!r)return{parse:0,url:"",msg:"115 \u79BB\u7EBF\u94FE\u63A5\u4E3A\u7A7A"};try{let n=await W8e(t,r);if(D8e(n))return{parse:0,url:"",msg:`115 \u79BB\u7EBF\u5931\u8D25: ${B8e(n)}`};let{pickCode:s,task:i}=await Lur(t,r,n);return s?(Dc("\u83B7\u53D6\u5230 pickCode\uFF0C\u5F00\u59CB\u89E3\u6790\u76F4\u94FE",{pickCode:s}),await WB(t,s)):{parse:0,url:"",msg:`115 \u79BB\u7EBF\u4EFB\u52A1\u5DF2\u63D0\u4EA4\uFF0C\u4F46\u6682\u672A\u5B8C\u6210: ${i?`\u72B6\u6001 ${i.status}, \u8FDB\u5EA6 ${i.progress||0}%`:"\u672A\u627E\u5230\u4EFB\u52A1"}`}}catch(n){return{parse:0,url:"",msg:`115 \u79BB\u7EBF\u63A5\u53E3\u5F02\u5E38: ${n?.message||n}`}}}async function Mur(t,e,r={}){let n=String(e||"").trim();if(!n)return[];let s=await W8e(t,n);if(D8e(s))return Dc("\u79BB\u7EBF\u8BE6\u60C5\u63D0\u4EA4\u5931\u8D25",{message:B8e(s)}),[];let i=Number(r.maxWaitMs||S8e),a=Number(r.intervalMs||I8e),o=Date.now();for(;Date.now()-o<=i;){let c=await $8e(t),u=c.find(l=>N8e(l,n,s));if(u){let l=await L8e(t,u);if(l.length>0)return l;Dc("\u79BB\u7EBF\u8BE6\u60C5\u6682\u672A\u53D1\u73B0\u5A92\u4F53\u6587\u4EF6",{name:u.name,status:u.status,progress:u.progress})}else Dc("\u79BB\u7EBF\u8BE6\u60C5\u672A\u5339\u914D\u5F53\u524D\u4EFB\u52A1",{count:c.length});await O8e(a)}return[]}var b8e=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]),U8e=0x8686980c0f5a24c4b9d43020cd2c22703ff3f450756529058b1cf88f09b8602136477198a6e2683149659bd122c33592fdb5ad47944ad1ea4d36c6b172aad6338c3bb6ac6227502d010993ac967d1aef00f0c8e038de2e4d3bc2ec368af2e9f10a6f1eda4f7262f136420c07c331b871bf139f74f3010e3c4fe57df3afb71683n,F8e=0x10001n;function q8e(t,e){e==null&&(e=Math.ceil(t.toString(16).length/2));let r=new Uint8Array(e);for(let n=e-1;n>=0;n--)r[n]=Number(t&0xffn),t>>=8n;return r}function j8e(t){let e=0n;for(let r of t)e=e<<8n|BigInt(r);return e}function*nY(t,e,r=1){for(let n=t+r;n>1n,t=t*t%r;return n}function Uur(t){(typeof t=="string"||t instanceof String)&&(t=new TextEncoder().encode(t));let e=new Uint8Array(16+t.length);e.set(MB(MB(t,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(e.length/117)*128),n=0;for(let[s,i]of nY(0,e.length,117))r.set(q8e(Q8e($ur(e.subarray(s,i)),F8e,U8e),128),n,n+=128);return Buffer.from(r).toString("base64")}function Fur(t){let e=new Uint8Array(Buffer.from(t,"base64")),r=[];for(let[i,a]of nY(0,e.length,128)){let o=Q8e(j8e(e.subarray(i,a)),F8e,U8e),c=q8e(o);r.push(...c.subarray(c.indexOf(0)+1))}r=new Uint8Array(r);let n=Wur(r.subarray(0,16),12),s=MB(r.subarray(16),n).reverse();return new TextDecoder("utf-8").decode(MB(s,new Uint8Array([141,165,165,141])))}function qur(t){return`data=${encodeURIComponent(Uur(JSON.stringify(t)))}`}function jur(t){if(typeof t=="string")try{let e=JSON.parse(t);return{encrypted:typeof e?.data=="string"?e.data:typeof e?.data?.data=="string"?e.data.data:"",payload:e}}catch{return{encrypted:t,payload:null}}return t&&typeof t=="object"?{encrypted:typeof t.data=="string"?t.data:typeof t.data?.data=="string"?t.data.data:"",payload:t}:{encrypted:"",payload:t}}function Qur(t){let{encrypted:e,payload:r}=jur(t);if(!e)return r||{};try{return JSON.parse(Fur(e))}catch(n){if(r&&typeof r=="object")return r;throw n}}function H8e(t){if(!t||typeof t!="object")return"";if(typeof t.url=="string"&&t.url)return t.url;if(t.url&&typeof t.url.url=="string"&&t.url.url)return t.url.url;if(t.data&&typeof t.data.url=="string"&&t.data.url)return t.data.url;for(let e of Object.values(t)){if(!e||typeof e!="object")continue;let r=H8e(e);if(r)return r}return""}function G8e(t){if(!t||typeof t!="object")return"";for(let e of["msg","message","error"]){let r=t[e];if(typeof r=="string"&&r.trim())return r.trim()}for(let e of Object.values(t)){if(!e||typeof e!="object")continue;let r=G8e(e);if(r)return r}return""}async function z8e({cookie:t,apiUrl:e,payload:r,userAgent:n,requestReferer:s="",requestOrigin:i="",responseReferer:a=s}){let o=qur(r),c={"Content-Type":"application/x-www-form-urlencoded","Content-Length":Buffer.byteLength(o),Cookie:t,"User-Agent":n};s&&(c.Referer=s),i&&(c.Origin=i);let u=await M8e(e,"POST",c,o),l=[t,u.cookie].filter(Boolean).join("; "),d=Qur(u.data),f=H8e(d);if(!f){let p=G8e(d)||"\u672A\u53D1\u73B0\u4E0B\u8F7D\u94FE\u63A5";return Dc("\u76F4\u94FE\u54CD\u5E94\u65E0 URL",{api:e.includes("/share/")?"share":"own",message:p,decoded:ZV(d)}),{parse:0,url:"",msg:`115 \u9650\u5236: ${p}`}}return{parse:0,url:f,header:{"User-Agent":n,...l?{Cookie:l}:{},...a?{Referer:a}:{}}}}async function WB(t,e){let r=await X0(t),n=String(e||"").trim();if(!r)return{parse:0,url:"",msg:"115 Cookie \u7F3A\u5931"};if(!n)return{parse:0,url:"",msg:"115 \u64AD\u653E\u53C2\u6570\u9519\u8BEF"};try{return await z8e({cookie:r,apiUrl:`https://proapi.115.com/app/chrome/downurl?t=${Math.floor(Date.now()/1e3)}`,payload:{pickcode:n},userAgent:E8e,requestReferer:"https://115.com/",requestOrigin:"https://115.com",responseReferer:"https://115.com/"})}catch(s){return{parse:0,url:"",msg:`115 \u63A5\u53E3\u5F02\u5E38: ${s?.message||s}`}}}async function Hur({shareCode:t,receiveCode:e,dirID:r=""}){let n=[],s=(a,o)=>a?`${a}/${o}`:o,i=async(a,o)=>{let c=o||"",u=await he.get("https://webapi.115.com/share/snap",{params:{share_code:t,receive_code:e,cid:a,limit:"9999",offset:"0"}});if(!u.data.data)return[];let l=u.data.data.list.filter(f=>f.fc===1),d=u.data.data.list.filter(f=>f.fc===0);for(let f of l)w8e(f.n)&&n.push({...f,shareCode:t,receiveCode:e,vod_group:c});for(let f of d)await i(f.cid,s(c,f.n))};return await i(r,""),n}async function K8e(t,e=null){if(T8e(t)){let c=Bur(e);if(c){let u=await Mur(c,t,{maxWaitMs:12e3});if(u.length>0)return Is(await YV("115"),u)}return{from:await YV("115"),url:`115\u79BB\u7EBF\u89E3\u6790\u4E2D$${XV}${t}`}}let r=C8e(t);if(!r)return{};let n=await Hur(r),s=n.map(c=>({vod_id:[r.shareCode,r.receiveCode,c.fid].join("*"),vod_name:c.n,vod_size:c.s,vod_group:c.vod_group})),i=Is(await YV("115"),s),a=n.map(c=>Cur(c,r)).filter(Boolean),o=Is(_ur,a);return o.from&&o.url?{from:[i.from,o.from].filter(Boolean).join("$$$"),url:[i.url,o.url].filter(Boolean).join("$$$")}:i}async function Gur(t,e){let r=Sur(e);if(!r)return{parse:0,url:"",msg:"115\u79D2\u4F20123 \u53C2\u6570\u9519\u8BEF"};let n=null;try{await J0(t);let s=Tur(r),i=ai.getPendingRapidCleanup();if(s&&i.resourceKey===s&&i.shareUrl)try{let c=await ai.getFirstSharePlayable(i.shareUrl);return ai.rememberPendingRapidCleanup(i),{parse:0,url:["\u539F\u753B",c.url],header:c.header}}catch{await ai.cleanupPendingRapidResources()}else await ai.cleanupPendingRapidResources();let a=await ai.rapidShareFromSha1({name:r.name,size:r.size,sha1:r.sha1});n={fileID:a.fileID,shareID:a.shareID,shareUrl:a.shareUrl,resourceKey:s};let o=await ai.getFirstSharePlayable(a.shareUrl);return ai.rememberPendingRapidCleanup(n),{parse:0,url:["\u539F\u753B",o.url],header:o.header}}catch(s){if(n)try{await ai.cleanupRapidResources(n)}catch{}return{parse:0,url:"",msg:`115\u79D2\u4F20123\u5931\u8D25: ${s?.message||s}`}}}async function sY(t){let e=String(t.body.id||"").trim();if(!e)return{parse:0,url:"",msg:"115 \u64AD\u653E\u53C2\u6570\u9519\u8BEF"};if(Iur(e))return await Gur(t,e);if(e.startsWith(XV)){let a=await x8e(t.server,e.slice(XV.length));return a.url?{parse:0,url:["\u539F\u753B",a.url],header:a.header}:a}if(T8e(e)){let a=await x8e(t.server,e);return a.url?{parse:0,url:["\u539F\u753B",a.url],header:a.header}:a}if(!e.includes("*"))return await WB(t.server,e);let r=await X0(t.server);if(!r)return{parse:0,url:"",msg:"\u8BF7\u5148\u5728\u914D\u7F6E\u4E2D\u586B\u5165115 Cookie"};let[n,s,i]=e.split("*");if(!n||!i)return{parse:0,url:"",msg:"115 \u5206\u4EAB\u53C2\u6570\u9519\u8BEF"};try{let a=await z8e({cookie:r,apiUrl:"http://pro.api.115.com/app/share/downurl",payload:{share_code:n,receive_code:s,file_id:i},userAgent:eY,responseReferer:"https://115.com/"});return a.url?{parse:0,url:["\u539F\u753B",a.url],header:a.header}:(a?.msg?.includes("\u767B\u5F55")&&typeof globalThis.messageToDart=="function"&&globalThis.messageToDart({action:"toast",opt:{message:"115\u76D8\u767B\u5F55\u5931\u8D25\uFF0C\u8BF7\u524D\u5F80\u3010\u914D\u7F6E\u3011\u7AD9\u6E90\u8FDB\u884C\u914D\u7F6E",duration:5}}),a)}catch(a){return{parse:0,url:"",msg:`115 \u63A5\u53E3\u5F02\u5E38: ${a?.message||a}`}}}var J8e=Ce(oC(),1),iY=Ce(Xn(),1);var Kur=async t=>globalThis.getPanName?await globalThis.getPanName(t):t,V8e=t=>{if(!t)return"";let e=t.replaceAll("\\","/").split("/").filter(Boolean);return e.length<=1?"":(e.pop(),e.join("/"))},$B="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36",X8e="netdisk;P2SP;2.2.91.136;android-android;",Vur="netdisk",Yur="https://pan.baidu.com/",Jur="https://pan.baidu.com/disk/main",Xur=200,Zur=t=>{try{return decodeURIComponent(String(t||""))}catch{return String(t||"")}},Z8e=(t="",e=Jur)=>({"User-Agent":$B,Referer:e,Accept:"application/json, text/plain, */*",...t?{Cookie:t}:{}}),Y8e=(t="",e=$B)=>({"User-Agent":e,Referer:Yur,...t?{Cookie:t}:{}}),elr=()=>({"User-Agent":Vur}),aY,oY={},cY={set(t,e){oY[t]=e,aY.push(`/baidu/${t}`,e)},get(t){return oY[t]}},$b=async t=>{aY=t.server.db,oY=await aY.getObjectDefault("/baidu",{})};var uY=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":$B,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.shareCookie=""}get cookie(){return cY.get("baidu_cookie")||""}async getSurl(e){this.link=e,this.shareCookie="";let r=this.regex.exec(e);r&&r[1]&&(this.surl=r[1],this.shorturl=this.surl.split("").slice(1).join(""),this.pwd=r[2]||"")}async getSign(){let e={...this.headers,cookie:this.shareCookie||this.cookie},r=await fe.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:e});if(!r.data||!r.data.data||!r.data.data.sign)throw new Error(`\u83B7\u53D6sign\u5931\u8D25: ${JSON.stringify(r.data)}`);return r.data.data.sign}async getRandsk(){let e=J8e.default.stringify({pwd:this.pwd,vcode:"",vcode_str:""}),r=(await fe.post(`${this.api}/share/verify?surl=${this.shorturl}&pwd=${this.pwd}`,e,{headers:{"User-Agent":$B,Referer:this.link}})).data.randsk;if(!r)return"";let n="BDCLND="+r,s=this.cookie.replace(/BDCLND=[^;]*;?\s*/g,"");return s.length>0&&!s.endsWith(";")&&(s+="; "),this.shareCookie=s+n,r}async getShareList(){await this.getRandsk(),this.headers.cookie=this.shareCookie||this.cookie;let e=(await fe.get(`${this.api}/share/list?web=5&app_id=${this.app_id}&desc=1&showempty=0&page=1&num=20&order=time&shorturl=${this.shorturl}&root=1&view_mode=${this.view_mode}&channel=${this.channel}&web=1&clienttype=0`,{headers:this.headers})).data;if(e.errno===0&&e.list.length>0){let r={},n=[],s=[];this.uk=e.uk,this.shareid=e.share_id,cY.set(`baidu_share_${this.surl}`,{surl:this.surl,pwd:this.pwd,link:this.link,uk:this.uk,shareid:this.shareid}),e.list.map(a=>{if((a.category==="6"||a.category===6)&&n.push(a.path),a.category==="1"||a.category===1){let o=a.server_filename||a.path.split("/").pop(),c=V8e(a.path);s.push({vod_name:o,vod_group:c,vod_id:[a.path.replaceAll("#","\0"),this.uk,this.shareid,a.fs_id||a.fsid,this.surl].join("*"),vod_size:a.size})}}),!(e.title in r)&&e.title!==void 0&&(r[e.title]=[]),s.length>=0&&e.title!==void 0&&(r[e.title]=[...s]);let i=await Promise.all(n.map(async a=>this.getSharepath(a)));if(i=i.filter(a=>a!=null).flat(),i.length>=0){let a=i.map(o=>(o.vod_name&&o.vod_name.includes("/")&&(o.vod_name=o.vod_name.split("/").pop()),o));r[e.title].push(...a)}return r}}async getSharepath(e){await this.getRandsk(),this.headers.cookie=this.shareCookie||this.cookie;let r=(await fe.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=1&num=100&dir=${encodeURIComponent(e)}&channel=${this.channel}&web=1&app_id=${this.app_id}`,{headers:this.headers})).data;if(r.errno===0&&r.list.length>0){let n=[],s=[];r.list.map(o=>{if((o.category==="6"||o.category===6)&&n.push(o.path),o.category==="1"||o.category===1){let c=o.server_filename||o.path.split("/").pop(),u=V8e(o.path);s.push({vod_name:c,vod_group:u,vod_id:[o.path.replaceAll("#","\0"),this.uk,this.shareid,o.fs_id||o.fsid,this.surl].join("*"),vod_size:o.size})}});let i=await Promise.all(n.map(async o=>this.getSharepath(o)));i=i.filter(o=>o!=null);let a=i.map(o=>(o.vod_name&&o.vod_name.includes("/")&&(o.vod_name=o.vod_name.split("/").pop()),o));return[...s,...a.flat()]}}sha1(e){return iY.default.SHA1(e).toString(iY.default.enc.Hex)}async getUid(){this.headers.cookie=this.shareCookie||this.cookie;let e=(await fe.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})).data;if(e&&e.data&&e.data.fields&&e.data.fields.uid)return e.data.fields.uid;throw new Error("\u83B7\u53D6\u7528\u6237UID\u5931\u8D25: "+JSON.stringify(e))}async getShareUrl(e,r,n,s){e=e.replaceAll("\0","#");let i=await this.getSign(),a=[],o=Math.floor(new Date/1e3);return this.type.map(c=>{a.push({name:c.replace("M3U8_AUTO_",""),url:`${this.api}/share/streaming?channel=${this.channel}&uk=${r}&fid=${s}&sign=${i}×tamp=${o}&shareid=${n}&type=${c}&vip=0&jsToken&isplayer=1&check_blue=1&adToken`})}),a}async getAppShareUrl(e,r,n,s){e=e.replaceAll("\0","#");let i=await this.getRandsk(),a=await this.getUid(),o=Object.assign({},this.headers,{"User-Agent":X8e}),c="73CED981D0F186D12BC18CAE1684FFD5|VSRCQTF6W",u=String(new Date().getTime()),l=this.sha1(this.sha1(this.cookie.match(/BDUSS=(.+?);/)[1])+a+"ebrcUYiuxaZv2XGu7KIYKxUrqfnOfpDF"+u+c+"11.30.2ae5821440fab5e1a61a025f014bd8972"),d=this.api+"/share/list?shareid="+n+"&uk="+r+"&fid="+s+"&sekey="+i+"&origin=dlna&devuid="+c+"&clienttype=1&channel=android_12_zhao_bd-netdisk_1024266h&version=11.30.2&time="+u+"&rand="+l,f=(await fe.get(d,{headers:o})).data;if(f.errno===0&&f.list.length>0)return f.list[0].dlink}},$n=new uY;async function e$e(t,e){await $b(e),await $n.getSurl(t);let r=await $n.getShareList();if(!r)return null;let n=await Kur("baidu"),s=[],i=[];return Object.keys(r).forEach(a=>{let o=Is(n,r[a]);o&&o.from&&o.url&&(s.push(o.from),i.push(o.url))}),s.length===0?null:{from:s.join("$$$"),url:i.join("$$$")}}async function t$e(t,e="/",r=1){await $b(t);let n=$n.cookie;if(!n)return{list:[],rawCount:0};let s=Number.parseInt(r,10)||1,i=String(e||"/"),a=(await fe.get(`${$n.api}/api/list?app_id=${$n.app_id}&web=1&num=${Xur}&page=${s}&order=name&desc=0&dir=${encodeURIComponent(i)}`,{headers:Z8e(n)})).data;if(Number(a?.errno)!==0)throw new Error(`\u767E\u5EA6\u5217\u76EE\u5F55\u5931\u8D25: ${a?.errmsg||a?.errno||"unknown error"}`);let o=Array.isArray(a?.list)?a.list:[];return{list:o,rawCount:o.length}}async function tlr(t,e){await $b(t);let r=$n.cookie;if(!r)return null;let n=String(typeof e=="object"?e?.fileId||"":e||""),s=typeof e=="object"?String(e?.path||""):"";if(!n||!s)return null;let i=new URLSearchParams({type:"VideoURL",path:s,fs_id:n,devuid:"0%1",clienttype:"1",channel:"android_15_25010PN30C_bd-netdisk_1523a",nom3u8:"1",dlink:"1",media:"1",origin:"dlna"}),a=(await fe.get(`${$n.api}/api/mediainfo?${i.toString()}`,{headers:Z8e(r),validateStatus:()=>!0})).data,o=String(a?.info?.dlink||a?.info?.[0]?.dlink||a?.dlink||"").trim();if(!o){let c=a?.errno,u=a?.errmsg||a?.show_msg||a?.message||"";throw new Error(`\u767E\u5EA6\u89C6\u9891\u76F4\u94FE\u83B7\u53D6\u5931\u8D25: ${u||c||"empty dlink"}`)}return{dlink:o,data:a}}var rlr={};async function UB(t,e){let r=String(t.body.id||"").split("*");if(await $b(t),r[0]==="own"){let c=String(r[1]||"").trim(),u=Zur(r[2]||"");if(!$n.cookie)return{parse:0,url:"",msg:"\u767E\u5EA6 Cookie \u7F3A\u5931"};if(!c&&!u)return{parse:0,url:"",msg:"\u767E\u5EA6\u64AD\u653E\u53C2\u6570\u9519\u8BEF"};try{let l=await tlr(t,{fileId:c,path:u});return l?.dlink?{parse:0,url:["\u539F\u753B",l.dlink],header:elr()}:{parse:0,url:"",msg:"\u767E\u5EA6\u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740"}}catch(l){return{parse:0,url:"",msg:`\u767E\u5EA6\u63A5\u53E3\u5F02\u5E38: ${l?.message||l}`}}}let n=r[4],s=cY.get(`baidu_share_${n}`);s&&($n.surl=s.surl,$n.pwd=s.pwd,$n.link=s.link,$n.uk=s.uk,$n.shareid=s.shareid,$n.shorturl=$n.surl?$n.surl.split("").slice(1).join(""):"",$n.shareCookie="",$n.pwd&&(await $n.getRandsk(),$n.headers.cookie=$n.shareCookie||$n.cookie));let i={...Y8e("",X8e)},a={...Y8e()};try{let c=await $n.getAppShareUrl(r[0],r[1],r[2],r[3]);if(c)return{parse:0,url:["\u539F\u753B",c],header:i}}catch(c){console.log("App\u7248API\u5931\u8D25\uFF0C\u964D\u7EA7\u5230Web\u7248API:",c.message)}let o=await $n.getShareUrl(r[0],r[1],r[2],r[3]);if(o&&o.length>0){let c=[];return o.forEach(u=>{c.push(u.name,u.url)}),{parse:0,url:c,header:a}}throw new Error("\u83B7\u53D6\u64AD\u653E\u94FE\u63A5\u5931\u8D25")}async function FB(t,e){let r=t.params.site,n=t.params.what,s=t.params.shareId,i=t.params.fileId,a=t.params.flag;if(r!=="baidu")return e.status(400).send({error:"Invalid site"});let o=rlr[s];if(!o)return e.status(404).send({error:"Play URL not found in cache"});let c,u=o.headers;if(o.type==="app")c=o.url;else if(o.type==="web"){let l=o.urls.find(d=>d.name===a);if(!l)return e.status(404).send({error:"Quality not found"});c=l.url}else return e.status(500).send({error:"Invalid cache type"});return e.redirect(c)}var Fl=Ce(Xn(),1);var Re=ta;(function(t,e){let r=ta,n=t();for(;;)try{if(parseInt(r(801,"5CRz"))/1*(-parseInt(r(1453,"[SG!"))/2)+parseInt(r(2030,"cuKs"))/3+parseInt(r(1952,"P6lM"))/4+-parseInt(r(1136,"*QbB"))/5+-parseInt(r(870,"6m#R"))/6+-parseInt(r(1102,"Ykeo"))/7+parseInt(r(839,"ddaz"))/8===e)break;n.push(n.shift())}catch{n.push(n.shift())}})(jB,121079*-2+6455*-115+1743977*1);var qB,lY={};function jB(){let t=["WPZdKZzqW6W","zSk+u8kOBCkO","W6NdG8kUW7Pwe1y","WPJdV8knDSkpW5uHEevR","cmoeeG","WPO1W5v3WRJdICkwWOHGW4O","ltivWPhcTG","WR8vw8oUWOG","rITkWR/cJa","xmoWq0hcOq","CeDFWQZcSSkDW48Tj8kB","imofc0RdSSo2otG7WPW","W6W4WQiGWOJdSw/cVw5k","BSklzCoHaG","W5tcUmkH","W5HjWPz2jgtdRq","WPpcKCofuCki","W6HIWRCyrKVdK8oNW5ldKa","j1XxWOVcQmk2W61LmCkF","wSoUWRK","BCo9Du/cIG","WPlcNCoE","WRdcS8kpbJ/dLG","rCoWsG","m0pcO8k/aW","W50aeCkE","WPfeWPvYWOtdLmkEd8kakW","zCkDW4PfWOJcGapcO8kfsq","W5WRW4jUWPRcIf7dJLZdRq","W7v+WQDjwG","wtFcO0dcMW","W63cSv7cMZ9ndZedWRW","ge/cV8otWOKDWQ1yW6S","WPBcJ8ozC8kW","W4VcNCovDmkJ","W7OEW7fs","WRVcOmkbqdZcKW","rbhdUGZcVa","kL/cVmoZWQm","W7GFWO7dMSkv","W7NdG8k9W4HG","pCkzp8kF","Cmknnt40","qJlcLG","W6tcK8oZWOtcJCkjitamW4a","WPVcOmkBtcVcK18/","W7JdISktW5Lc","WRX5W6W0WOxdH37cVMea","FCo1F8kXpSolWQhcHvHL","WRZdG8kgo2anW5/cN8kKuG","e8kLcH3dTuamiYGj","WRhcV8kx","sWFcNqK7WR/cJYjnpq","W68xWO7dLCky","rH3dOadcRgtcOSkjWPK","W7VcU8oNWPjKW6tcVCocvG","rsNdR8kaW7G","vSk5EmkEDa","xSoNW4/cKXu","DcldNq","WQVcQwVcGSoEEY4oW5tdTq","WPJcK8olD8k2o8oDWO56vG","DmkSW650WQK","WQ0TWRCrWOJdNhlcThXS","x3tcNsRcJmo7qG","rIFdLsJcN1xcVSkOWRZcPa","WRJcSCoLWPO","W5NcPCkVeCoUWQTAELyX","jgfeWQOScZjuW6pcLG","57I75l6L55El","W4HteCkjW7fLh8oCW7m3","t8oGueW","m1BcQCkQWQfwWPWMW4rz","W4ZcVuldHg0FtcHbW6e","lLlcP8oVWOJMOi/LV7dLVy/LUPpVVBW","WOLvWPLYWO7cKW","DenyAmoJ","W7VcPmoIWR1T","W7ddLmo6WRZdLmohaYK","WQXjW5P8WOxdKmo5dSotka","WORdPmoZbSoJWQ1BnsnpWQ3dNte","57UL5l6S55Ai","nhxdGu19W7ldGKC9xW","fxXrW6K","WRFcR8kxgG","WQS4WQO","uHddM8kmW5W","CY/dNmkRW47cS8k0vxVcKa","W7zVWQi5W5RdJCkqFmotEq","W581uxa","ttJdU8oBW6OQW5tdJgBdOa","ELFdHfO","W5ZcSSkWv8k4W70Ypqe","xSo0sGRcOvamyHGZ","A8kjBW","oCk2bSkQaa","W5NcR8kJz8k1","WQBdONNcHmokCaSf","WRXwW5ldOCkzW5qoWOD9WPG","xgpcGb3cNmkGxgpdN8oT","ssacWQ10Eef4W4BcU8odxau","WPtcI8kjFa4","W50LW5zJ","W6m3uWje","vJ7cGXJcLSoHbNlcHmoU","qZpdRmoKW7CVW4pdMG","W5BdK8k3","W4JdK8oXWQZdTG","ztpcKKJcSdu","WRBcNmoEW5CkWQddQSkccga","WQxdONVcVSoaCIWIW5tdOq","tmkJrG","qgtcHZtcMmo6xJO","W4RdM8kMitBdTWiUrMW","W73dKSoXWPhdM8otgIq","lLtdUMNcS8o8e8khkH0","W797W7rPW57cMdVdUK5N","aueUASkMm1aKprW","eNpcV8k7WQX7WOJcKapcPa","W4ldK8k3sg7cQ18","x8klW6vrWRq","mfO/dSos","sSkkumk0wW","55IF5BYU5Awg6lE4","W4xcM8onWRLKW5NcIG","WR/cTCknxwpcHmoFW6K7W58","d1rWW5qa","hue0C8kNo0DYob4","WONcK8oqASoFyCkCW687aq","WPRcK8onFW","i0q/iSo2lZjzs3G","WOhcS8knrg7cN8kpW6nIWP8","W5FdK8kYE2lcTe4","W4tdL8oVWO/dJ8osbG","WOjvWPTqWQC","WO3dUSkQyhlcVXO0kxy","W5zNW4j7WPFdJKFdPeBdRG","cvupWQJcGvzqWOeCkG","dSk3W6ZdTmo8W73dGqqDWP7cRr9B","i2ddVJZcGmoX","CebGvSoeWRNdN8kw","jSoRu0HavSkPoSkeWPu","WOeOW5P3WRNdLCkyWP9r","CubN","W5ZdOCoEWOhdRq","W6xcPSo4WP5vW7FcRCousG","W6ldK8kGzwJdRHPdhJa","l0VdQZNcH8kJx8odjeq","WQlcTCkWbIJdJCobW7W","W6JdI8kjWONcKM9dW7bNWRC","W7dcSuNcGNrfadKbWRa","d8k5W6VdTSkVWQ/dHHC1W4i","kmkqW4JcLXW5nmoEzmoy","qe7cIGFcKmoQrcBcR8oI","omkVm8kNma","pKCXimo96l+h5P2477Yg6yEd5PAA","wsNdRSo8W7C4","FSo+u2/cVq","WQFdPCk8W4mnWQddTmoaFY3dUNFdSG","W5pcH8oSB3lcS1iVacC","lMddKIddLmkGumkiiei","n3LaWRvYCKCIWOFdIa","WPCZW55AWPldK8kx","m8oyWOORW4ZdGfldSCk0rq","dN9BW64","WQiNWRaZ","D2JcGZ/cSW","jWyImmo9BajJie4","W5hdMCkOA2NcMe55bIC","W4NdQSo2emoSWRqxpeHe","WRWNWQCoWQK","W4VcO8k0v8k1W78emHW","W7BdUCk5W6nkh1XIk8o2","WRrKW6nzix7cUCoEWR7dVW","WO4yu8ooWQCItmkDW5q/","WRH1bhakW44xzx1X","WP3cK8ojASo6zSkpW6yGcG","WQxdONVcQComyYScW5ddJG","zubNz8oBWQFdR8kskb0","W5xcU8oDW67cLG","ESknW5bEWPlcHaJcVCk1qq","A0T1sCkuWQFdJCkakZy","5y2a5yUI5Psn5lIbCSou","wSohrSk9y8kqW7FdNLLK","nSoqWPi6","WO98WPjvWPJcLuVdUrRdGq","zSkGv8k+vmkUW7C","u8oTu8kKlG","W4lcOCkGFCku","ifhdTIC","mSkmW5zZWOVcLKNcP8oRdW","DdpcTfhdNtzhW6vMWPm","c8odhuBdRq","W63cM8oXW4lcTG","mNtcNmo8WOtdPmo3t2RdUG","lCk4eSkvbG","5PUu5Pw8vCoxa24V5OID5yU2","z8kjDCkck0OrwsRdVq","W5pdG8koW5xdUd8BWROXW54","W4ldOCk7q14","W5BcUmkX","WOxcNSkirLpcINySvI4","ceBdKYxcOq","W6pdTSouWR/dGSohxhNdTZ0","zubNECoOWRBdNmkhoWe","W7GsuZPR","n1ZcVa","WQpdUHZdGxCuqMLhW6m","rSoogmkXiSkiWOpcQ0WM","WRDrWP8","zt3dGG","W6ldRmk5W7tdQbuWW7m3W64","e0/cPvZdUtFdJCoyW43dIW","W5hdQSotW6lcMSokbYFdL0q","W7FcU0S","WQ3dNmo+rGj2WQpcI8k0dG","ifRdQWJcGCoTga","W4KCfmohl8oJWONcMgu7","W55SWR1oCgW","rdyyWQFcHLzzWOKDEW","W6aXvW","WPmRzCo9WQu","WPJdQsTnW6OMW7pdNSokW4C","WQVdRr3dHdXgwZetW6q","xZ/cP0NdGG","ESoVt2NcRq","f0brW6i3","iMlcR8oMWO9wWPe5W7qz","WQlcQCkKoJy","W4RdJ8k2W4HY","W4ZdJWOdWR9ZWQ/dGCoaW5u","W5GVW4zmWPZcKLBdT1e","lwLLW7GP","amk7oSk0lq","WRhcV8kxndpdImok","CJFdHt3dTs7cI8orW5lcMG","td4eWRr3B0aSW6FcNW","kSkQWOeOW4/cGW7cSmkPrq","vWJdUSkr","W5pcImo+WQfO","bXmw","WPRcPmoqs8o3","BrXrWRVcS8kl","WQmKWQy0","DdVcQL3cU2C","AmomyxZcVG","W5xdL8kXFwi","W5tcVSkOvq","W6tdKSoRWQy","gw7dLH3cPY1NWRNdVNK","W4LzWRnmDW","W63dK8oRWR7dICkCqwpdKXq","W4pcLCoLW47dRSoU","yMBcKa7cPdvX","WOJcNmoVzSkTW6G","WOxcICoXBCkWW6npcSomWOu","B8oHWPVcJ8ky","WQZcQgxcNSogEW","W7WxWONdHCkVW5KfWOXV","t8kVB8ojkq","BIJdH8oQWPpdTSk2ccxdLG","ASoxWPFcT8kj","W4RcT8ovW7hcLa","kSkBj8kkjcdcNrFdOGa","lgpcV8ouWR0","WQRcK8kVW67dNSodgcxdKqe","rCk/WPfjWPBcVa7cNCkEsG","B8k1fa0","A8kUdHK","aX4d","jSkzomkses3cJJVdVWa","W7ZdG8kPW79mfefZ","W5ddGmkTW6hdSa","ch9FW78P5P2R6l635PYt776457Iz","W7JdRSonrNtcL8kyWQ9KWOS","W6xcVCo4WOm","uIJdOCoxW6m7W48","WOL6WOe","FuldIeHc","W4WCdSkPBmk7W53cN29z","kwFcTCkA","eM3cTmoL","o1/cRSkXhW","W7hcLCoKW47cTSkUoWS3","sr3dUa","EfpdH1HMW7C","FCopBG","CqBcV2NcPq","AsBdHmkG","zaZcLuxdKW","W7tdJSo3W6Xn","zXBdP2SYWQ7cL0y8ua","W7e5W753W4pcLJFcT2Su","xY7dQSo6W4SV","ebqCWRJcGq","ACk5p8kmkcxcMwFcP1S","W7xcS8o6WOnyW7JcPCoTrY8","WOdcNmo3Amk6W6vNgG","WPe0W5PCWRJdIq","W5yKW5TU","WRe2W6iljsZcUCkcW57dOG","W4JcPxO","WOyHW49j","kCopb0RdVCo/evm","zcJdHmoRW5lcO8kOfI/dIW","dSkXbmkSlW","omo9WPddI0n6yCorbSkn","W6hdLCo2WRJdN8kjgh3cNqi","FmolymohCxhcMc7dSfK","rSkYW43cGfWmomkqoSkb","W4VcLSkKuCk+","hSktoCoiC3pdNddcOfS","WPxcH8oY","h8ooWO7dOmo7W73dN0zQW5m","WQRdMhVcGSocCcW","zSkciSkqAa","AMyozCkImeK6nqO","k0S5imoGCZH+yue","nCodeeZdS8oZbYu8WOi","kuNcVSoJWOHuWPyRW5i","WPxdHM3cMSoM","WORcLSo2","W4tdLCkGA3tcTgv0gsK","gMNcVCooW5iEWPddMftdTa","W7tcHSoFW6hcKSkjxayfW4O","WR87WQy1WOpdJ3BcTW","cwnrW6GPib1P","lvZcMmo6WQqf","WO0jsCkiWRCUxCkvW4y/","W7OGrdTIW4KEm3S","WQzaWOvQWRtcNSorkmknbG","dmkghmkdjColWQdcHGaK","zfFdM1P8W6VdUafO","xNJcHq7cL8oUrZC","WPXBw8oemCoR","kKagW6ddNXqd","jvNcPNK","WRfpWP93","x3tcNtJcKCoUwdFcTmoQ","W7ZdHCkuW6TX","WQtcV8kfad/dL8ohW4qGW4q","W5CRW4b/W4BcK1FdSfRdPW","oglcTSkEjSkxwSo0WOP1","WQmMWQaRWPJdIN7cOq","55M45B6n5OII5yMc","t8kADCoYkG","iXqYWRJcOG","dhxcQNVdGfylWR3cLv0","phhdS8olFComdSk3W5iS","cSopbq","W6tcNSkJleyLW7xdGCoHtq","W6lcVmofW4dcKq","xmoiWPqZ","o3tcNSoU","WQL4W7jXWO/cMIVdQZ0z","ggNcHSoRWP8","qmo0sue","tCoLWQVcTCkVWR7cHq","C8ohW45PWPlcNq","Bmk2W5BcJbaXgmkv","WRtdRMVcImoBoNPpWOdcPW","WOy+W51VWQdcJfVdIbRdLW","W7rRWRDxE2pdPmoh","fIldUbRcV0dcJmkbWPBcRW","WRhcU8ottSo1","abOdWRW","x1pdNLmKW5BdKtLyoa","WO4JWO8KWP0","zCofWOxcK8khWOZcVtO","W5JdQCo7W4OlWR7dSG","W5FdISoInmoTWRaCtCohWOS","rJJdMmoTW6aaW4/dNrZcPW","W57dHCkIWP3dSCo6tcGsW4u","rH3dOadcRgtcTmke","zuPIC8o8","aX4dWPZcN0P2WOLcoG","W5SFWPtcGmoeWOfkWPa8W58","W5yKW5f2WOZcHfRdOG","WR3cKSk7WR8vsfn3fCkT","WRdcS8kpfXpdGa","p1S/n8o9yqPV","BCoLfmkPACkPW7BcMSkrWOS","j8ohCCkklZ3cKsRdUa4","W5W5WQNdOG","vCk8qSkzAq","W4iwdCkAsCk3W5xcItTL","WQzaWOvQWPZcKSomka","W6iUrdW","WRZdJG13","oe0PnCo8BHrV","hgtdKGdcPsmIWQNcHqu","xwpcMLBdNmk4AhFdGSk5","WRRdSMhcSSoizsS","WRWTtYTeW4eZbg0N","W7i5tZbfW5ijl2y5","umoJWRxcRmkCWQJcGWu4WPW","wsNdVCoHW6WSW4/dJ0O","xHNdHCo7W6C","mHhcRKRcNw4rW715WPq","WOPHW6y","twlcJbNcL8oUrZC","ESk2W5hcKbyNjq","W6pdI8o+WRO","WRfsdSoGWPnY","zJFdMCkPW4pcTCkNdIpdJq","W6WPEILz","zufWt8o6","5y6r5y6G55AK","WRSpWO5SWOxcKCoBjCogpq","uYddKfhdOeRcSSkJWOxdJW","rJldQa","m8kxfb8zs8oNi8koW7i","W6tdL8oVWQldK8ofdZJdMWS","lCkFiCkxjc3cTsW","cmoFymk8yNRdJI3dP0O","Bs9IWRNcKW","W5pdI8k5W43dTa","AbJdQSoJW40/W6RcN1y","W7O8jmk/p8kZW5FcIJTU","WP4ut8od","W4pdPmkRWQpdM8ouiaVdPGm","W4SzdCkzBq","dmkibmo6FmklW7tdIsq2","WOxdP8oOb8o3W70dEtbu","wG3dUdBcRNtcICki","vmoKz8kMba","W43dMCoaCCkPW6XlkCoaWOG","WO3cL8on","WPxdJKNcPmkjDdirW5ZdTq","xCoHvK3cT0ilAaq","eCkWW7tdSCo7W77dHvy/WPy","lCkBi8kF","W6ddLCkKzLdcS3W5mba","xdpcQ13dNvSDWRmNW40","WRi9WQ0RWOJdHW","oa5zWQpcSSkDW4LZACok","lu0UbmoJCcrRFL4","WQpdT2y","stZdU8oRW6O","WR/cHCkUg3RcNCkpW78XW50","FCkGW4xcLX01pmku","hvawpCoN","W7NcMmoJW5JcVCkOsGe8W6e","wLNcQ8kdW5yzWQvyWQzA","y8kUeY4nq8kU","W7RdG8kIW7SmcL53hCoX","kLBdQq7cSW","WOVdOmoOdCoTWRHfhY1t","WPeOW5PAWQG","WPOhWPat","t0PPt8ohWRVdJCoCBuC","W4NcPSoLWPXEW77dUq","keJdSsxcM8o4fmkCn1S","W43cNwJcTXy","c2iRDSo5yG5c","m2JdSdVcN8oncCkCibS","dNVcQmoeE8opg8o4W5uU","WPZdIbXuW48","WRGoW4CPW4VcJSoAj8k+pa","zSk2uq","D8k0gG","Cmo4FmkjiCoTWQVdLSopW5e","dmoAga","y8o6xK3cTuKdiuH0","W4VcO8kNsSkUW6S","WOtdI2hcOmol","eqGsWQ/dGKLgWOqCnG","fx5xW7yYjrv/","WP/cGSoq","mqhdRrOGW5ZcGLO+hW","ux/cIGFcJmoRtYe","dSoBCatdQbvmpKz6","nbldV8k6W5CtWO8HW4Oe","6l6c6zUi5PcY5Pw36zck5OY86i+h5yY65Aw06lsr","i1JdKddcTW","e07cRLNdVtNdJCoyWRJcQmkiWOtdPKy","DCoPhCkUACk1W77cLmkBW4u","W5WIW5m","F8kYW7tcLtfI","WRJcN8oztaRdHNDODNO","CCojtSk9imojWQxdHKj5","qCo1e8kldwLXAfVcHW","WRZcPCkzuWvWWR3cG8k/hG","ESkRdr0fumkMy8k4WQK","BGLdWRZcSCkxW4LK","WQFdOSo2W48","WRnZWR13WR4","W7/cI03cHY1m","zSo0y8kgnq","W6JcH8oxW5NcQSk7hq","ySkOqSkXAmk/W7RcJmkwWOu","B8knW5vVWPJcGbi","cNVcKvldP2GyW7ldMLu","W48RW5W0WOhcLvhdVu3dQW","AhDNtCoQ","W7lcPComW5ZcVW","hK/cPCkvWPqtWQnqW7Se","sCoVtvtdTqugAXS2","W7jevSoanSoYWO/cSbnC","WQxcSSkcad/dU8oCW681W58","W7lcNSoaW6RcKa","W5TdW44","WOWSW5rjWQNdN8kbW4vkW5e","amkLcHFdQHXuierJ","DJpcSLK","WQKGWQiyWPNdGxdcT2S","uCoXDSkfha","W6pdMCoGW4tcVmo3hayHW7O","W6LSWQzvzJJcPSkn","W5qPW6DoWQK","uCoXeCkwxYC7zutdTG","W6OFWPBdK8kVW5KlWPXVWOW","AmkAW4G","jxtcG8o/","WPFcKCoGC8k8","yINdIG","W6rvw8owumkbW7hcNYb5","W68qomksuG","6lYt6zUw5PgB5PsN5yYP5PAn5lQZ5A+a5PAC","CCoaDCkIlG","uGldRmoKW6SUW4JdNwZdUW","W6atWPtdKCkeW5i","W7lcS8o+WPy","W5/cI8k5bxNdHJHRFq4","W67dN8k3itldTa0Urxq","WQ3dJWC","W6FdISk/W7WzgfnIf8o3","W6NcHCo3W77cMq","CYJdUSkXW5JcV8kOhq","W7xdHSoTWQVdLmosmsxdLG","dNvsW6GImHHtW4dcKq","BCoQuHazr8kVomkIWQ8","BcldHW","WORcMmoSza","W5VdL8ktW7NdKI8rWQWlW6G","f3ddJb3dJSk2bSoDALu","WOFdK0VcPCoh","W5hdH8koW5BdIdihWRS","55U15B+Z5OUk5yIq","i8oWECkvvCkrW5FdLmoFWOy","pCkRhaiFBmkKEmk1WQm","wmk5t8oNhxGKFWFdLa","tmo0WRVcTmk/WR4","vHNdVWu","uSo8rCkGpmoDWRhcQdqN","WQ4TWRuUWO7dI1lcTG","W7ZdJ8k8W6zag0z/g8oX","lseYWOlcVhD0WQr+Aa","AmkZhamjBmk0y8kWWRi","BCkHvmkWqa","BCkbESkjzW","zXhcO8kOW64IW43dJbpdLq","WQ0Sr8oIWOq","AsVdTCobFSomxSk4W5mU","lv0jW6hdTmojWO4GdmkR","WQufW68","WP7dPdHrW6SWW6NcRSkpWPO","WRddRbRdKG","zCk3W4D2WPtcLGJcPCkfsq","vSoVWRtdR8oZW63cGqq+WOC","W7/cSCovWOrtW7hcTSoxBdq","W77cUCkRuCkZ","W4NcS2WgWR0cWQtdHSk5W5a","WRK8WQiZWPJdNq","WPdcOCo3zCkA","W5tdRmowWP/dIq","W63dPqpcGtfnctWtW7O","WRxcQmkgeY7dGCoPW7i4W44","t8osvCkGoCow","aHqfWRdcUv9hWPTBiq","hmkMerZdOrbuBZSsW6ZdN8oP","W70RW4f/W4/dLa","xNdcMWldLSk6gwxdNSk4","WOZcRmkxqa","W53cR8k2","tY8dW6dcGCkqW5rWg8oe","W7hcT8o+WQDAW77cISotxIu","W50CjSkDta","W6JdICkLW6RdJG","WR9kWPm5WQZcMmoDj8khCa","WQGxW4nVWP4","WP1muCoflSoQW4ldGMi+","W4NcPe3cMJO","WQflWRndDhddOmknWRJcSa","W7/dPSkqzM0","A8kYW5dcKra8mmkUiCkd","W6L3WQfr","W4/cO8km","xCowxq","oeZcPCo/WRa","lSoNbLNdHSoyfIrTW4y","WQKPWRCKWOu","W7dcS8o4WP4uWQxdT8kfhxm","C8k0dGu","W7vRWP5prq","6l+P5A+/5Psy5lI45OQQ5yI5","Aq/cV2hcO8oWhSkikKm","cZC2WO/dMePrWR1KgW","ytJdQSoWW6S","CCk9q8kOzmkVW68","WPaLW4HyWQldLmkaWP8","cKVcPa","WPaitmofWQ8QrSkqW78L","f0VcOuFdVdFdNCoiWRBcSW","A8khrSkYASk5W7u","W4ZcUmkTw8k15P6Y6l6Q5P2l772P57UG","W6NcTulcLJzj","WPVcJSkBCtW","bNhdMXVcU8oqnmobjLS","WOZcNSonE8o/","WOpdSYC","sNtcMb7cNmo8xG","W7ldHmkNafSU","W7pdR8kmW63dSa","W5hcPmkhtmkPW7Ku","E8kNW5lcJb0Zomkxla","jN/dUa","W6S0qYa","tdaCW40UlXrJW4pcJq","W5hdImkjW4JdNW","W5VdQmkzW5v7","BSk6W4ZcGaa","CCkhW4m","WQW9WO8sWOa","W73cNSk5gW","csBdNfZdISk3gwpdHCk+","xCotqmk8","hmkxqq3cQCk2iN8JW7e","hSoEefFdQ8oP","W5BdGSkIENlcTa","W4dcR8k+rSkJW6avlb1/","WP7dOc1lW6SNWQtdG8ojW5a","W6NcMmk6hvy","W4RdJCkt","uHNdPbRcQG","oKKOnSo2","WQBcG8ojlSoYrmkSW6eddq","uNrBW60Plr9TW5dcJG","Dur6uSoTWRJdNSkLnW0","tmk8mYeM","WOlcRM0tWR9JW7hcNCkAWOe","W6bTWQzn","DYRcO1VcP3ey","ytZdTSobyCoefCk5W5mS","v2lcMqZcRW","bSophW","5OYD5PYC55Us5B2Q5Asw55kz","ELb9ECozWRldISkbprO","WOqHW4LbW6lcJ8oaW40rWPa","W5zXWRWtitNcQCoAWRVcTW","pIvFWRxcR8kuW5DHE8oA","g14RlCor","wdlcILBdUKqZW6JdHvq","WRZcImkBndFdPCo1W749W5O","zvjYrmoz","W7jXWRvl","D8kWr8kZzCk5W6NdL8ooW5G","DWnvW6/cGCkDW5HRo8og","dfBdQ2BdGCkQr8ocDGi","WPfPWP1UWOq","C3nFxSok","W5tcQSoGWQbE","jqtcKaXLW4BdSsjuoG","BmoAW4foWOxcOrdcSmoIqG","WP7cKSotWP/cIZKAW7mbW5i","omkCgSkhbG","WPiHW4HBWPldMCkCWP5A","W7JcOmk7j0a","lCkti8odmZRcIs3cSbS","lLlcP8oVWOG","WPVcPmkzra","g2ZcPh3dSNKiW7NcHrO","mvWyWRORkbTPWPtcUq","W7qdWPtdQCkrW4Od","W4tcMSk9q18kW5hdQ8otvG","W7dcTsRdNSoOmhbtW6xdMq","W4lcV8oRFCkv","Aa0FWRNdT8oxW4TYpCkz","A8kEW63cSsK","DLz4ACoC","lxVcSSkEkG","6lY76zIf6l+v5A2g5AAO6lsR77+I5Pwz5Rkb6i+s","n2ddTgJcUKiNWPCxW7q","WRZcLmk/W74gsaaZr8oE","W4/dPCofCIhcMhi0mv0","rbhdUGZcHMu","C8kQfruu","brtcP8ojWOGu","pCkRW4XOWPlcNGpdVSoRfa","uG98WO3cIG","W4jOW7bGWPNdT8k/W5yFW48","qWJdVW","kGW8WRxcVW","WQJcGSoFt8o3","CLbGtG","tsJcLvS","W4PeoW","rmkPtCozeq","qrddTZBcU27cLSkfWPm","sYz7WOhcICkVW7u","WQ8JWOyFWQq","zXFdLahcOmoupmoazvG","kSkDhITFwmoWu8kqWRq","W7DTWODFBq","o8klaCkOjG","lYGHW6VcMeKcWQ4l","W7lcGmo3W5/cRCkP","E8kShCkTBCk9W7lcLSotW4O","wG3dMaiIWRhcKq","WOq7WO8QW5FdMbpdTeBcUq","W7xcH8kOabS","WP7dQYPnW7y","W5ZcTSkYxW","WQaMWQq2WRq","WRhcKmkRW7ZcISkFwGBdVYapvYm","n3pcQ8kx","zCoGDCkBgW","W4uIWP5/WPFdJxJdKXpdSW","rXhdRXJcLq","bSoMWR7dSCoZW7/dHe5LW4y","k10Ulq","ebmSW63cSGDfWP1qiG","h8k/uCozc258kX7dNa","oSkFjCkiiJO","x3tcNsRcICo/AtpcGmo/","jCkOu8kVzmkYW6/cP8kwWO4","kMBcP8kgoSkh","ECoyz13cGa","dvRdSGJcLW","W6JcMmkvASoHWRCBzuPM","WQeHW49+WQldNSk8WOPAW40","W4NcGCkkrSk6","WQRdKCkUW6hdISoubZRdMWG","EmoVWP/cPCkh","WPVdJwpcHSoL","CdpdHCoAW5u","dfVdTs/cKG","q3zyq8ozWRNdICkFD1S","l8kto8kBgcVcNtZdSWG","WPrhWO9ZWRi","jf07e8oa","W7j9WQy","pXu9h8khWRldGSoEdtO","z0z4sCkcW7FdR8kBkGy","wIFdTqxcPMtcK8kuWQlcKG","EaLcWQBdQConWOG3ESoC","nLlcQW","WPvLWPG","W4FdKmkuW5ddGNmcW697W6C","W7RcJSkNuSko","W5SRW4z7","qmo4D0RcSq","vMa2fmkzW7lcM8k3FvS","WQtcV8ksbZ/dL8oB","b1lcO8or","WQ7dQgG","xJJcKeBdSwGZ","FSkjW5rUWP7cMWFdVSkZtG","ifRdQWRcLCoPbmkplvu","W7NcHCkU","WO/dOc5xW60RW6ddNSksWPS","W5dcVmoNWPHt","mXCQfCoCWO7dUSk5adG","WPPBuCoa","ArddSCkgW6y","FHddG8kKWQiNW4/dGLBcSG","yJpcTuVcRwaBWRyTW78","pfZcVSoJW4KgW4X6WOvd","W4ldK8k3xw/cPKHLoIS","WPissmoj","WP1UWRvmWR8","AG3cPvtcM2yAWQyxW4K","Fmk3W5FcNWeamSofbSkI","WONcImkCCr4","W4K1WQ/dPmk5W64ZWRDEWQq","ddhdPSoLW6S/WPVcMapcOG","W7GOusfEW4SfpNeV","rmoWC0/cNq","W4RdJCkVnCo3WRmzsSkvW4O","WO7dLgFcVCo6","zbX0DmkJlLqZoHO","ivBdSZ3cKCoR","laZdO8o5WO5AWPOHW49F","dhBcQmoQWPi","WQeuW6H5WQS","W7LhWRfjFgFdP8owW5ldQG","tSkbW4n0","ArhdOKBdUJldISooW47dJq","oLxdHLi","eCklj8oolalcVHddGqC","AwJcMSo1WPVdTSk2fIVdLG","chldRJ/cKmoWqSklbWW","iCoZW6hcLqm4nmkMmmko","W5RcLSkRW7JcK8kgrGBdSZi","BHldGSoYW7C","W5XiuSoykmo+W53cKN9j","W7RcI3/cMZ5k","igddTGRdGZffW6mAW6m","pNFcSG","W7dcGSkOhubVWQpcNCk9hG","oCoLWPJdLufSyCojemk/WOXJg8kE","t8okD03cVKS","xHNdJmo5W6C","W4NcUu7cTdq","W6ZcLCoIW4JcSa","p3pcTmkBymobcmk3W40P","pxFcSmkBlmkrCSoK","cfBcTSk2jq","WRpdHCkKWPRdQCkibW","WRlcV8kvgZNdGCoMW78","DIdcR07cLYWcW6nNW5m","zmk9rSkzBSkRW7xcLmkqWOS","WQ4yWRCiWPW","tZZcKuFdT3mMW47dGv4","W6CmW4j8WOG","rHNdOGG","pvJcUmoCWOLxWRyP","y1v6","WO3dTcPl","W5FdVCkrW4/dItC","EHNdG0X9W7e","W4PXWQykidhcVSkmWR7cTq","W4CUtsfrW4yqEcTV","W7FcISoLWPTT","o1HFW60O","AH3dPmoDWO9DWPSIW5Wd","dN9cW7mJjai4WOq","cSoAbCkODCozW7FcLuCR","W6dcHmoMW4FcSCk5bry6W7W","W7xdU0BcGtzk","kMVdUHpcVq","W5JcTMOrWR56WRxcU8k2WRfQW7/cSa","uYldV0dcKxy8WOuYW5i","W6VdUmkLW4JdVq","qSoWsKpcRu0","l8kBjCkxAh3dJ3/cUfW","o8kFjSkliJVcIa","WOCqW5PqWPK","zYhcO0RcNgizWRC","WRi9WQ0yWOZdNNi","sSo0ueu","vwXvB8klWRBdNmkdmq0","6l656zUN5yEz6k2B5y6O6ik85BAc6l+l5P6RW4q","W4ZcHSk6pxu","bmkhauldSmk0igjGW54","5yI+6zIm5PA35lI55OUw5yMN","WOBcLCkWjG","BKP0","heRcJSoAWOq","BINdISkPW5/cSSkJcq","gSokxCk5jCorW7NdMeDN","W4WfeSkADSkXW4BcJJTL","Emk8f8oog3m7uL7dVa","W7pcGCoZWO3cRmkYeq8XW70","vGRdVWq","xmkpW6znWQW","bSocg2FdUW","W7BdGSoR","iNxcM8oGWPNcL8kGgYBdKq","mh7cO8kb","ivBdSYZcVCo9","WQKPW48hW7JcICoeW5qmWPu","kvtcTSoV","CSoeW68","gdNcOIpcRCoczN7dKmoN","WQpcVmov","twxcGutcISoMttZcMCoL","WP0ud8oeWQ4MamkyW5i/","uxRcJeVcVSoQstNcN8kI","xJdcG0JcKq","v1f1hG","W5/cHwRcPWm","WPFcNmo1","w3dcNqJcKq","tCkCtmoHmG","ofhcRCkrgG","smkXrSoYnmoVWQZdLSomW5W","BHZdNmodW6C5W4JdJf/cVq","W7SCW7TsWQW","W7tdI8ktWPdcK2DuWQzIWRu","m8k1fmkPca","FmkGW6ZcJYm","mHWIemooWRxcM8kspfG","zaNdPSooW7y","E8obWONcI8kVWR/cNXm9W5W","f23cOCkXWQ4UW4JcHgBdGq","W4pcPbRcHcPCfG9aWPW","tSkGW6u","W7JcISk5eG","rHH2WR7cPq","W4SZWQ4","wmk5t8oNgM4NFWZdHG","W4WsrmkdBmkZW4dcN29m","lK0SlmoWzs5U","WO/dQhxcHmofEsnoWOdcVW","hw/cHWxdT31XW7xcG1q","WPWCvCog","wxFdPxm0W7pdJGvLhW","WPZcH8k8xYO","DYRcO1S","d2byW7mZ","6l6O6zMD55Ik5B225AAV6lA/772u5PE35RoB6iYf","tIDJWPS","dNvhW6OOlWnP","W6tcT8o5WODuW77cT8ox","kmkkj8kslIVcNtZdVWa","WOufWPmlWQJdUL7dTZCD","W68eWP/dL8keW58SWOfMWO4","lmoAawldQ8oUma","pxpcSSkt","W5PVWOvEW5ZdL3VcT1/dQW","W6/cN8k/gLONW7RdLCo9","W6FcM8oKW67cUCk5da","qH3cLwW","vxtdHLRdICk3bgldNSk+","W6K5wX5j","eNxcU8oCWPi","EHxcH8ocWRj+WRnHWOSC","qmk6tLFcTKS","WOqVW4LfWPVdN8kbWOLwW4W","FmkyW5r2WPtcKaFcPCkZtW","WRO6WQWXWOtdIN7cOa","vvuuWR/cJaGfWO5wEa","WPZdKCknW4FdHdLjW7GJW6G","W7dcHmkQ","q8kTvCoBaa","WOJcOmkpEIVcMxGVi0a","EZdcTNtcKq","Eq1e","gNLyW78ojq","o8kFj8ksjIVcMq","WO3cHSoyBmoTFCk5W5aGdq","WOpcPZ/dHa","e8oquCkMjCodWR0","vSoJWR/cJCkLWQNcLbP+WR4","xSoGv0W","W47dK8kT","W7VcJSk5mKqWW5ddKSo0sG","WOZcQ8kujbm","WOJcKmoVAG","WR3cV8kn","WPerrmouW64","C1pdNxbWW7xdGGT4lW","eSoIeSkwwJXHxGJdKW","WP7cKmofsCkJ","W7/cKSks","u2yfWRuMnarKWPVcIG","lgdcQG","kqBcHWy+W7RdIuvzoa","uWDkWQBcQSkuW5OVyCob","ndqKWOK","W5NcP8k2uSkYW7SmiaXO","55IX5B296l6D5P2A776F6yEn5PEx55MX5B2B","W7BcUwxcSaO","5PsC5lII5yI35BIi5OMj5yQ7772G5B2q5AA86l65","W5hcVmkJhSkCW70opWOU","x8ojwCo7omowWPVcJrGG","i8oRWPBdHq","WOZcRCkmvY3cQx8/","k8o7vsyfxCkJEmkMWRu","WRxdI8kma0qSW7BdPmoHxa","k3FcT8khkSkhtW","W7pcKCoNW57cVCkPea","aaKEWQVcIHvdW5KDka","W7RdJSkVW6fhh0a5rCkT","i0m/zCouzqrHyqm","tCkqzmklrG","yMZdS3vB","WOxdSxFcGmoI","sbFdVWC","zqtdLSocW6W","W4HvWQvxwa","WORcPCowBmoYwSkxW4KXsG","W5aMWOiyW7VdNmkqWPSlW4u","Eq1eWOZcP8kiW49Jpmko","EtRcJCk6g8k5D8kSW4n2","WQBcRmk1eYG","W67cJSk8bLeZW6C","W754W7FVVyVNRQtLVkVLKjxPHj/OR5a","yCk4W4xdHtqXmSkAoSof","ESooyCkPjdhcQI3dRG","6l6C6zUL6l6Q5A6Q55QH5B6H5yIG5BM65AEs6ls/","WOmFW6HbWQRdLa","W7RdN8kNmW","5y+c5lI96l+u5yEs6k+t","xdZcJX3dRg4PW73dKfG","pKSYja","WRtcTmkhvr4","i03dTJ/cKCk2bSoDALi","WOZcLSkcFNFcQ19xeYa","vCofuCkzi8obWQhcHvGA","cLddPsdcMmo1eCodCbO","p0y2imo6lGrLyWu","W4eOq2CiWPLgEs13","a0dcLmkiba","jSkzWPKQW5pdI0RcTmk0gW","uSkPumondxG1","aSoDh0/dSCo7pgD8W50","gCofiLFdRmoZnNa","WQvrWPPWWP8","WPFcKCoGC8k8W59hgG","vSkbW5a1W4JdGfhdV8oPfG","W5OXFZbj","uZxcHg/cOW","prBdQe9IW7pdGJ9Pcq","WQ8VW4fbWQhdLSksW5ukWO0","CSkWgfeRvSkKFmk+W68","WQZcJmkcArK","FGJdImoRW6a","pt7cQv/cM20","h1FcGSotWRf5WRzIW6GH","WO3cKSoKiCkEW6vnfCokW4m","qZ7dKmo7W6OQW5tdJgZdPG","qSo8sK/cQG","W5uLW5T0","WPVcT8keuY3dMwbQAuG","sY3dV8oKW6SOW4FdNvRdVq","BZpdNCk1W5NdRmoPvtldJG","EGLeWQ4","WORcNCosE8o3","W7lcKCoI","WPZcQSkacZdcG3G3i0C","A8k5qmk4lSkUW77cI8klWOu","W7mTW6jgBYNcUmoRWRNdPa","teBcHHNcKSoBuYlcLCkK","fH4wWRa","a23dTJhcNq","WOfiWPGVW5/dHSkEnmoEBq","gmkEnmkTdW","eN9nW7SF","CfpdHv5R","WORdHtnaW7C","W5BdGSkXz2NcOfnMdW","kf14WRzNlrLNW5hdNG","xJldPmoTW6W","EmkYW5lcLHy","m8o4gSkkAmkYW7/cL8kiWPK","W7pcI1JcNtjbaG","W73dKSkOW6znhvTWdq","W5KQc8ksiG","tXBdVSkaW6W","yYJdKrJcUq","WQ/dHmk4WPRdQCoPuei9W7y","WQS8WQzRW43dJgK","BmkHW4NcKXz7j8oaESkk","WOJdRSo1dCoQWQaiBfuZ","kxpcTCkbomkBsCoK","cLJcRSoFWPqjWPTkW70b","W6FcM8oKW4BcJSk/fHe6W7W","EZtcJWxcOcbNW6NcGWu","WONcTCkGb8oQW7SmmLe3","WPVcLSkeAqa","zJpcR1q","tHFdSq","yL/dJvPG","W6pdHSo4WQVdSW","yu1YECoFWRJdH8kwnG","vJ7dMfVdMCo8tJNcPSoU","W7vXWQzjCa","m8o2aSoZmCoYWQVdMmkSWOS","tmoac0lcSH0","o8kFmCkmiJVcLbFdOGa","je0dh8oF","WRdcL8kPW7NcICkFxZJdGceHzrG","x3tcNtJcKCoUwdFcTmoU","wCopgSk3i8oiW6S","W57dQCkjW5S","WPqurmojWRvKh8osWPL2","DIhcMX7cMSoehqhdImoC","WRBcKCoIWOvuW73cOCkDaNq","n2NcMCoRWPRdUmo2wHNdGW","lCkVjCks","WOSpW5j9WO8","pIzKW6/dT8oiWPuWB8op","m0FdNcZcJq","rSoxD1BcKq","WPddNCotBCo2ya","WQlcUI8EWR5TWRC","WQ4PWRCM","kvdcSIRcLCo6gmkj","sGZdOHNcVdVdKSopWOxcLW","WRxcLmoqmsZdRSo6W4PGWPS","WRdcLSoWWPldQCk5bqrNWQm","WQ/dKSo1rWz1WQRcISoLdq","WReUW7jQDhFdVCokWR/dGa","FSkjW5b5WPu","tmkPDSoDcKaOEuBcGa","hNdcQSoTWR4","tmklW5xcQbC","WQhdL23cVCoJ","W5NdR8kRW4ddQq","WOBcUmkwnXC","WQ5+WPv1WOlcMmoqomk3ma","W6dcICkWW7Xmfa","W44Hg8kNsa","WPtcJmoYAq","cbqq","hCkSfbddQbvswsWsW67dNCor","W7fTWQfn","W5xcJwNcNaa","lNe0fmoN","x8kAlJOjqCkPCSk9W6K","rSkJu8o9cwGP","AtZdTSoCF8oAc8kGWRb7","AWJcJ3BdSG","W6xcU8oWWPi","yurJuSoiWR/dJCoCmqC","dvtcOSk8W5iiW581WP1e","WRpcNCk/iv8MW4pdH8oRcW","WQmKWPW0WOtdLh7dR1zM","CfFdNv4","WONcSmkKqWa","CSkFW4P2WPlcKGlcOCkOtW","ehLrW7qZBKaIWO3dNG","FCkYerqcuSkQCG","ybRdU8osWRauWPdcNGBcPW","W4ZdMCkTit7dP0PYgty","nhpcTG","hwfoW40+","W4OqfSkLD8kZW5xcNXzR","W6XvuSoF","gMVcR8ohW6m+W5ldGqhdKq","leq7mq","f3vnW6K","zfFdMKXnW7ZdIaXP","W4ldKSknW4RdJJ8vWQO9W64","FX1eWQC","WRlcQmkkbd/cI8ozWQP7W40","W7xcS8o6WOnyW7JcPCkDwI4","WRKZymojWPq","FSk2W5lcJbuThCkEmSkf","wwtcNqm","W6hdG8koW4pcKwG","F8otthpcR01BpXWr","E8k7W4hcLXylomkv","WRuPW5uEW7NcGCotWOijWPC","lCkFo8kBmY3cUIhdUGO","WRRdMgZcGCoaCcWvW6RdUa","f3vrW6PQibXLW4lcMW","D8k0ntGI","xCo3WO3cL8kq","EZhcO3xcNwCrWR5NW60","gNLyW78ykb5QW5S","F37cRa7cTa","AcpdJa","WQ0TWRCeWOZdNM/cSw1o","wdJdVSo9W6C4W5i","WO3cKSoDWO7dSduAWRO7W7y","tmoZuSoqcxKKuGddKq","WQ0TWRCYWPJdH38","mKxdGv5GW7RdUafOvG","W7xdHSoSWR3dPCofasJdLZS","WOOyuColWQaOsG","umoUWOxcQCkU","tCoKjqpcR8kQDIC1WPi","dZmfWOFcUW","6AMo6k2g56co55Qw5B+8","WOldOdng","W5xdJCkzW6/dOW","ECoUWPddI0r4k8kzEmkV","h8opaLpdSCo0k3i","FZpcTG","WOBcH8oxqCoRA8kiW4SXfG","s8kulIu","CSkgW7TZWPK","oNpcTSkglmkCwSoFWPD1","W7vhWRTbkctdR8olW6hdTW","CbpcMW03WQZdPK07kq","ufnbW7ldTSowWO0","W4NdN8kUz3pdUG8W","u0DYqmooWQxdM8obmWC","WOBcRCoACSoWA8kaW40lda","Amkqz8ktsq","W7fXW4mNW4NdJGK","WPyVW5bnWQm","W6CnrXf2","W6iGrs0sW44ui38O","wXpdKwpcPMnSW5/cGxm","WQBcR8kqgG","W5tcI8oZidddQ0bOwWe","xhdcNqO","WOSyvq","WO7cK8kHxsK","nmoiW6vQWO3cNWpcHSk/qG","WRBdPCoubqFcPua+nf0","FqZdUqlcQM8","DSkfqSknk1ettYtdOa","D37cJbhcSa","W6JdLmk1W6i","CmkTDmoHeq","imk4fraEqmkIy8oSWPm","W73cH8kH","D8opqmo7ECkwW7pdH0rH","mNC5kCo6zqL+uum","W410WOSiWQNdN8kfWPnCW4y","vxtcJqlcMmoqrdpcNCoU","W47cJmkfW5pdItarWRD6W6u","DmkeW4fPW4lcGWFcO8k/tG","hulcOSk+dCkcySo2WRfX","u8kPpbOo","WQvjWPDRWO7cOSoxka","WRHYbN0nWPO","WQhdM8oJsHGLW73cNSorBq","W4LtgmkFWQiVtSopWPnN","BqXfWQBcNG","qZNdTaJcIq","WQtdPuFcPSoJrsCvW40","vf3cGWlcUG","sgtcMGm","ECkjW5b7","w8oYWRpcTSkVW67cLXK9WPC","W5mLWR/dTCkLW6GJWRXtWRq","FqDuWQRcMCkmW5rRmCkb","u8orwSk4i8oeWQdcMqu4","WPVcTCkzgZBdImooWRrHWOu","W5ZdT8oAWPhdUCoPiXZdVIe","W7RdTmkkWPtdPr4","W7BdLSkBWP4","rtpdKmo8W60GW4pdHW","ssBdHmkGWOxcJSkVgYxdJW","xmoHWQ7cQCkLWQm","DCk9W6LRWR8","DSkRv8kVxSk1W78","FSoRWOZcRSkp","WReWcNGtWPjDmNb6","Aa/dOSk5W4GbW4HTW7Gr","Aa1cWQBcOmkrW5HHimkg","WQ0TWRCyWQ7dJ2VcPMzh","WOVcGmov","kc/dTSoCEmoyqCoOW45z","wmoLWQ7cN8kjWQZcGqiYWPS","WOhdOhZcI8oB","WQiPWReIW4ldIhlcVMbW","cNVcQG","EmkYW5lcGb0GdSkymq","W6tdUmkhxeJcJN4Tfs0","d8oOeghdSa","mCkLnmkslI3cKJZdIqy","WQikWPa1WQu","d3lcHGBdL8o3xZZcNmoU","W4dcM8kFWPBcKgOvW6PGWRC","exvqW7mMmG","l8o+o0ldPW","WQvvWPDTWP7cJG","W4ShdCkB","W6rUbhGmWOObo381","W4LtgmkvW69Y","E8k7W4hcLXy","ahJcK8ozWQTYWRmb","nZ3cRmkbimkA","WOait8o4WQa7rG","W5vDWPPiuG","dCkUW6NdRSo4W7RdKsuWWPu","pdBcLmo1WOtdRSoQhYtcMq","fdeyWOJcGq","aSk1W6O","W6NdICkvW6DR","CmoGD8kslW","f8kEaSo0","k1W/ACkZyHu","f8ocxuBdSmk3h1u1W4m","dCkYW7tdS8oKW7/dHLycWPi","bmkZhSk8ea","puNcTSoHWRC","W4CfaG","s8oPWQ7cRmkV","6l6F6zUk6l6G5A+s5P+m5A6/5OUV772b5P6b6i+h","ESknW5a","gv7cVmopWOijWRa","A1JcR0NcGflcQ8kfWO/cIa","jW8yWRBcRq","W6BcG8oHfLPTW5tdSCk/tW","dLxcRG","WPtdLmkLnZBcPfTMqNi","DZD9WQBdPSobWPTKmCkz","W6pcOulcRtHubq","W5Ggb8kemSkHW5tcLNXY","ifpcOSoyWOa","W4FdG8kjW4C","ESksW41QW5hdKWlcTmk8ta","WQfBWRPxEM/dRmknWRZcTW","W6BdHSoRWQ3dKG","k8o1tv9ChCo3n8kcWQC","bgvAW4uMnarK","WOGCuSouWP4OqmkyW4u","qxpcMuBdUNCIW7JcM1u","W67cMmkKhfPVWQBcGSk3dG","WP/cGSojCSoWBCkpW409cG","yCkZurqchSkavCoQWRC","d2/dMs/cTG","BbpdQmofW7q","W6dcT8o4WP5DW7NcP8otrYK","xJJcKv/dTxGI","W7OTuH9yW4G6pMPU","hmo8pvVdVW","W6yKws9jW4i","a8kIi8kkba","r8kPvCoRawWVtGJdHq","W5ZdTCkyW4jr","6AAP5Q6H6i2T5yYw6lYp6zI65y2U55wn6l6f5zIT","WRNcTmk8gZ4","zLD6umooW7JdMSocDXO","AIldTW","W73dG8kU","cYtdKexdI8k+h3lcQmop","6AMA6kYB56oI5BAa5y6l6ykL","AY3dHmo6W6u","zCoQymk8lG","WRP4bhSmWPiuBY51","g2WXk8o3","WPSCvCoeWQK","WQBcU8kqaqxdH8oaW78X","xgpcGb3cNmkGxgpdN8o4","WQ0TWRCdWOldMxxcVMPo","WPr1WRX4WPi","zdVcOL3cGcXmW7X9WPy","E8kTxmkcDmkVW77cISkGWOm","W74ZxIu","pvJcUa","wSk+rmoZkq","DaJcSxRdGSk5wmkNdwa","W67dOmo2WPVdIa","Dbq8r8oEWQpdHmoClGW","WOlcKmoTzmkqW6q","DvRdHq","WRTmWR9BWRG","FXhcR3RdMSkPxSovDqi","ysBcTfhcNgqDWRqX","qCk8sa","cqOhWO3cIG","W6ldOSk2W6XY","W6/dGCo8W7Pqg1vZsCoz","W4pdN8kVA3q","WOlcKmoVzq","WQFdQcOmWRTWWRBdN8oiW4m","WRaGW68IWOpcG1ZcKd5E","WPtdNJ1pW6CMW6/cHCkKWPW","WQGKz8ojWOO","WQ3cJSklxq8","WOivdCocWQ9MAmk+WPSN","bw7cVSoQWOa","s3dcJW7cMSoUwIBcK8oJ","W7lcV0NdKH5bdZSyW7W","AYBcNghcOW","WQyeWQKUWQ4","W7xcGmkOu3mLW7ddMmoRfW","WQVcO8oFw8oC","ifRdQW","WOaIqSolWQGUqCkiW78/","fH4rWQ/cIKLDWRDgiq","W4BdHmkyWP/dGt5hWR9NWRe","WQNcLSo7Amk1W6XpuCkqW4q","AXPC","W4lcNCobWRj1","j1RdRvj/W6G","sCk+W4TIWQ4","BmkYW5tcHa","WRZcImkhyqZdHhiJm3G","x8oovCklomokWQ/cJbK","WPKnuColWQGOtSkiW4K5","g8k9hmkirJnTAaFcJG","W5pcVCkNDSkWW7rgiCoeWP8","h8kIerpdQHXvo0HR","eh9t","vgn8umo8","W6NdJSoXWQu","jKRdQYe","mNfzW79OgrLTW5VcKW","lMFdQmk1W5RcUSkJls/dGa","W63cSZ/dJConCdqiW5BdTa","lLxcL8k6WRSoWO84W4KC","WPxcL8ox","W6lcUCoNW4dcLa","rZZdVW","lWVdGmkRW5/cRSoMtHxcLG","FCk6dXHdbSo0imo/W7u","W7hdSmoUnG","ASkjW6ZcGba","E8kNW4hcKqyN","WR/cKCoPWROvtaiUrmkV","zCk5qmk0lSoPWQJdJ8orW5K","ASoMtv9Bh8k9F8o8WOu","psRcS1y","W6VdQCkWW7BdVW","W7lcJCoRWOjpW7G","B8kBW411WPpdNfpdOmoPea","W6SgWQ7dU8kO","A8k/W4NcGb0GdSkymq","ENPWsSocWRldGSkhbWa","WOXVW5fBWQldLa","yxlcIgZdKJjeW7X4WPS","ECkAvSkkkKK","WQZcOmorw8k4","W7lcLCoWW47cU8k7fbyWW7S","W7/cSCoVWRPuW7tcOCoEha0","W6ddLCo5WR/dUq","W5pdJSkyW7hdGJ4/WRCGWQ4","W6tdTmoTWRRdVq","m1ddTcZcMG","rmkTvCoz","ACkTgmkPCxZdLwJdLX8","dNFcQmkvkG","xmoifXRcR8o5oxe6WOi","c13dVcdcPW","W6FcNCo6W47cTSk7cqC","nNhcQCkEgCkrsCoZWOP1","WR4GWRyPWONdI2NdVtqD","Cvv/t8oF","W7JcUCkmhW","sM3dLfxdUfH/WQtdTa","WORdLSkWmCo5W7nkfCoZWO8","W5pcICkEnx8","sHFdPr0","fSkGWPVcSmk6WQhcLce0WPe","WRiSW6rYDNVdN8ohW7u","qY/cMa","pee+imoHl18KoXW","uSkKsCopbG","iNldRM/cM20qWR0/W5m","umkpqSo5pq","W696W7eIWPZcIYNdOcaC","o8kyfqmdxSkIomoGW7i","WO/dKIPhW7G","xfnCW6GOlbuJWOxdIG","WQnHDJHnW4yuahSJ","vNjcsmom","W6/cN8kSb0eZ","bXOhWQNcJfjuW4DBia","W4BcSCoPWRnj","B8k2W5tcSXWWgmkv","BCoNWO3cICk/WRFcVq8","cHpdM8kOWRn7WOJcMqJcSG","WPldSCklWP/cK3C1WPaAW4u","WRldJmo1W4/dQ8oTaGnQW7u","jCkomCkzAahdJXZcPHG","qJBcIu3cMq","W4JdMmkNW4NdIq","WOJdUCo2emoRWRzDDdzM","W6JcOe3cHIXx","vCoWBSkrpq","DWrvWRW","o8kviCkxiY3cJG","pJ9/WPJdSmomWPiGfCkF","E1f1tCoD","ghtcRmkNkq","W6CwkSkIEq","fXObWRJcQvnzWO0","WP/dQt9rW6SCW6JcLq","W7RcVCoT","aHiBWRJcPL4","WO4srCoUWOu","BmoPz8ka","xJldNmo8W7aIW4JdJG","W6RdH8kUW64","W4NdN8kMyhpdQaOUt2i","W4KdWRFdS8kO","s2xcMWlcL8oOqZtcIq","qqBcNaHZW4RdJWXpiq","m1ddKYBcG8o8aSkVjeC","WPRcRCoyA8oTzG","qCo4qqVdQbvAie10","wmkCW7pcSq","W5RcI3JcVrjHiG","pbL1nSo7AqjMAGu","W4ZdQCkozYFdVHPKeZq","yZxdGmkZW4/dUCkWs2xdKq","wMZdJKddVhiIW73dKr4","WOBcT8kpFsW","WORdLSoRCSk2W64","nvRdRdNcM8o3a8kj","dSkIjCkqhq","WP9IW7LsWQ3cRxpcVqJdRG","W7P4W7m","wmodqSk9l8oaWO3cJq","WPuVW6XoWOy","xmozuexcIG","W57cU8kNsG","s8oKqNxcRq","CKrHvCoo","W4xcMSolW4y","Bs/dUbNcPW","ELb9ECokWQFdHq","mCkKa8oPFCoTWQRcHmooW5K","WOVcQSo3F8ol","W4ddS8oCWOy","WQrNW7j3W43dNx/cUvnk","A0L2vq","wZZcTupdLI0","WPFcNmoACSoSASklW4O","BXFdRadcO23cNmopW4JdLq","W74tWONdHSkFW5qzWO0","C8kecr4hvSkP","W4ldK8k3xw7cOfrdfZi","CbP1WQVcGa","tdCEWRpcMKivW5XTEG","W7ZcLmkvxmkn","WOVdMqPPW4C","WQdcPrhdGNCCqduzW64","WRDXgxerW48FEKSs","W5ddHCkMFgNcPLDL","gf7cVSojWO4vWQP3W5y","WOpcNmo1qmkPW7bTh8ovWP4","fJCdWRZcVa","DK1mr8oEWRpdHCkhzr0","W5adW79PWRy","C3ZcUJNcQa","f1lcTSoJWOPFWP5IWP5E","bfdcQmou","lKKUja","BGrvWPJcO8kAW7bPimoa","WRldN8oJqGrUWQdcISkWdG","WRPVb2ynWOrbD00G","W5JcICkHoMu","ncOaWRpcMW","W4aCd8ktqmkMW57cIJC","WPyHW5je","W7tcHmk+bW","W4ygW7PwWQG","B8k2W5tcSXyMomkxlmkV","EMRcG8oDW5ahW5zTW6Oa","D8kdDSkoxcjHtbNdHq","WPhdQSkhvIFcMa","W77dH8kPW7X8gv1YeCoa","rhldPCo7W60L","WOFdPda","zJFdNCkMW4lcTW","omkPd8oTl8oKWRFcNCkrW5e","tdldVCoLW5qUW5tdMLRdVq","WPlcN8okt8kr","jGNcSmk/WPOeWOn8WPKm","W6GtWOZdN8ktW58JWOW","CsjNWO7cQq","W5tdICkX","xSo1WQ7cQa","W7FcSCoPWPjiW6pcM8ogxcS","W5FcUmkKnSkBWQuCtmoaWPS","W6bOWQjjFghdQmowW6tdRa","n0HXWR/cTSkuW55xmCkn","bSk8qmolg1qIyG3dKa","dSo4d8kjwcvYnf3cHq","rr3dOG","WP8yvCosWRqIsW","DmkHfZyv","WPf6WPiYWQ7cIvhdTuFdTq","vSoBtbpcSmkIDhjGWOK","WQNcNSoKymkk","BYtcI8okgmketmk2WO1X","s8oVWRhcPCkKWPlcHq8HWPy","W7VcHCkKhq","WONdTmocvIdcN3m3iGe","rbNdPaddOdtdJSoxW5pdIa","naxcNmkH","W7lcPYFcUSoaEYyoW4ldOG","WQ0TWRCgWPJdMNm","CZFdVmoKW7y","cN9qW5md","WO/cRCkmvI3dKYrPyX0","W4WafSkE","WQ4sWO8tWP8","k8oVkgFdJG","WP/cGSoCESo/","E8kjW5zZW5ldHLxdPSo0eW","W5SVW4rZWPRcHxBdTq","C8k5qCkUxSk/W7tcNmkA","WRhcV8kxnJxdK8obW7C7W4O","WQ7cN8kPW64","nvRdRJZcKCoQba","o8k3W4xcHejMzSoiBmkn","ymkwF8ktsa","lftcQmoVWPqCW4DJWP5g","WPJdRJvgW6dOVOtMNP7VV73PHlBMLyu","nNFcMCo1WPRdPSo3","W6xcS8o8WPjPW7xcT8ohxZq","WQ8OW7WujdhcVCkcW6pdPG","wmk3fbqcr8krCSkJWRu","cturWR7cNq","WQX7W4OvW73cLmof","W7RdQ8kxW6PM","oe08n8o2CW9vEKu","W58bgSk6BG","E8kbW4H/WRtcLW","gfVcKCkAgq","E1VdJbaJWQ/cN0y8rq","sX7cL0FdTvegW5JdHeK","W4qWW5PpWQJdPCkhWPvuW4y","v8o/FSk+ja","WOpcNmo1uCk4W65Gh8oiWO8","zeL8sCoz","WQfaWQjPWQNdIW","CmkWu8kVzmkdW7lcNa","WPpcGSovW7hdJJiqWReJW7i","ge/cRmooWPij","W40VW4nVWPZcK0S","W63dK8oRWR7dICkCqwpdHqe","W6pdG8kPW7XchvC","qLVcHaBcUW","W6hdHSoRWQ8","DSont07cQq","W4W+W4bZWPFcH1BdT1e","WPToWOXWWOFcKCoFy8oDDW","sNtcJG7cGq","z3ZdTZVcM8o0fCodDaa","BePK","WOOosmoiWQ9KgSonWPnM","W4S6WP3dUmkC","W6mQuMH6W48sphfO","F8k+erqyvSkbFSk9WQm","WQdcSCkctI3cMa","sZJcLwddVhO1W7tdOem","sLDstCoj","WQj3WR1BWOa","gvhcPCoVWOHhWRyj","WPJdPc1x","WRVdLI1mW60","g3vaW54OnH5GW5VcNW","W7FcSulcLs1m","WOdcMmo1ya","DcZcKqpdV1efW4NdOLK","rmktySo5of8crsJdQG","W5S4W5TSWPZdJ0NcOaFdPa","CZ3dRa","WPaVW41bWQNdN8kb","B0rJ","rmo5v8k4jCoaWQRcNsG+","mSo7paeCx8kIqmk0WQq","e07cO8oLWOykWQ0","rrFdOdRcUG","W6ddO8kLWPzoW6tcRmkDqcK","W5ldQmoiW7JcJSkptG3dGHq","W5G5WRhdS8k+","WRDtWP82W57dJSkjySoBBW","xY/dOW","x8kyxXdcSmkOBZDDW5m","cIeBW7SYnrGJW4FcLW","s09hW73cI19dWOfrkW","WP8hW51GWPdcJfpdSaFcTW","ySkTrSk1","wSopwmkXbCob","W43dMCkWEG","WRdcKmk6cc4","WOxcJmo1Aq","iCo+fuxdLG","W73dPK3cLa","rhNdUMS","W4BcNCozWQm","WPFcJCoGDCkSW7m","W6VdKSo+WPJdQq","Fmk+csCjqCkUCCkOWOu","dmoAbuddTSo7","WRBdRNVcGCom","FdZcGLJdTxWIW5/dLfW","W5yHW5C6WR7cHvZdUKFcQW","W7dcJSksgLb9","d2rvW64YmG","kxddHrNdG8ot","BCo3wmkUBSkY","W6v5WQze","jmojhNNdKG","ACoshmk2eWxcSgtcTGm","W4tcUSoPC8k2W61luCkuW54","cSopbwFdSCoTnNTHW5m","k0PVj8kRmve4pbi","55MB5B6z5OIX5yIN","EGzQA8kJlLCQxuS","WOtcMSkvE8o3i8kPW7TVfa","xZJcLq","qqaHfmoFWQxdJCkamaW","W6NcHCkHfL1UW7ddNmoPeq","zfFdM0X3","ts3cIa","W7BdSSkOoG7dQCoJWRD0W4C","WPZcPmoBv8op","smkPqmoCdxKY","WRxcVCoXrCkZ","W50Owx4jWPfrlYH1","w2dcV8kMWRvNW5ZdGr7dKq","vSoSWOxcS8kJWRFcLeScWRO","rmotwSkllCoqWRdcGq","DebHt8onWQ7dOmkCpWa","WOJdPcHkW60MW4JcLq","W7dcPSofW7/cKq","WRdcJCoSsmkv","xcJcKLS","WO0PWRKWWPG","WRpcNCodD8o1ySkpWPzHsW","wSoBr2/cUW","dYSsWQxcNW","W4KqfmkFFmk3W67cNG","xCoWua","mKZdUJVcVCo9","mvJcOG","W7xcS8o+WPrt","zerHt8keW6lcN8oeDLO","W4aqtCohl8oQWONdINW/","W4xdG8kpW4/cIgLhW6L6WRi","mL00gSoJyrr5Euu","WOpcISk2W67dSXe4W7j0W60","W57cSCorBmo2y8klWPzLuq","W4RdJSkyW5xcMcWvWQWXW68","ECoaqxhcSq","WQ/cQmomq8k4","W58qe8kdESkHW5m","lu0UaCo8DWLMyuS","DGJcQN7dH8kQsmovCWu","W6ZdJmo6W67dVCoddsFdNu0","cColbui","WO3cL8oIBCkSW6rldq","aHaHWPZcMW","sZJcLq","W5/cSSkYESk0W68doaPM","WOWQtSovWQOFvSkmW4v5","W7hcLCoLW5JcH8k5cWy2W4W","j8ovpCknkcy","WR7cHSoYW5Hkffz5a8oS","BINdGmkX","lNpcR8kgcCkBsCowWOX+","B8k2W5tcOXO4na","ysBdM8kSWOxdO8o1twtcKq","E8kJW4ZcJaC","WPmytW","oSkFiW","crOh","W67cNmoNWO1+","WOFcMmoXDCk6W6HpuComWOq","W54ouCogWQiUeSoAW4y/","Bmk6kqeUbq","W6ddHmo0WQhcK8kglstdGaS","W6/cU3/cHITnaJC","tG7cQ1FdNq","wwhcMqFcKmoSsYBcMCoK","WRFdK8o7uW","uqZdPadcOwBcLmkgWOq","WRdcLmkQW7FcLmkux3NcKJW","WOmrdCkbCCk+W4JcMZz6","xhtcHqRcGa","kcpdM8kSW5ZcS8oPdhVcJq","cdhdGtZcKmoHtJ3cH8o4","F8kcW4nZWQK","W4ZdLmkwW43dNq","W77cUSk9gM0","WQe7qSo1WOK","WPdcHCo2nYNdTqS1vHO","WRBcNSkVW7RcI8kwxHVdOYWetaC","WOuLW49RWQZdISkhWPLxW4i","EW3dSchcRa","W683WRHwEMW","W7qoW47dJSkiW4itWPbYWPm","g3r8W5ec","W4pdN8kVA07cOW","ydFcOeRcL3aCWO08W48","zcBdNCkMW4i","wCoPWRBcPq","W7/cSvRcMZPbjtq","CX3cJCo6WPzFWPOAW44s","s3dcNW7cV8oMrJC","W6jWWRn6yw3dOSohW6m","F1tcVq","W5hcU8ofW78","tr7cILddGq","WR7cO8kmstVcKZnSaGS","W6NdG8kUW5Xlg0bZmmo6","BKb9qCoFWR8","WQxcOwCdW4eqW5FcLmkjWOy","p0xcVa","g3va","W43cJCkxW5xdIdi","WPBcISoOBSk3WQ8Bt8kwW5O","cqtdRNtdHmk3rG","d0NcPmomWOjvWRipWR0m","D3ZcQLFcLwOAW70+WPm","WQ9hWQDBWQy","iexdTJNdMmk5fmkji1G","u8k8tCorha","ECoAF8kPlIBcMcFdOrW","oe0Rmmo2CXm","W6VcTv/cGqzhaZqsWOO","yMpdU8ocyComf8oLWO0H","s3NcIbNcNmoqqZy","W7ldV8kfrYFcPKPWhYy","W6RdS8kOW6m","ESk/W7JcRYe","W4dcUSosW7NcL8ktie8WW7W","lSkFi8kTlYNcJI3dMGy","W6BdO8osrd/dHSkyW7OWWPO","xmoGvKdcQG","s8kHW6bFWRi","W4dcImkLuSkYW70didPU","qapdU8kA","WPNcRmkbqahcKG","mwFdLHZcRSoPp8kgCLG","xCo3qmkAlG","6lYb5A+Y5Awa6lsgWQtcUG","oKKPnSoKBXvU","tb5Ig8kBW7NcMG","WOChW41MWQe","W6StWO7dPCkyW5SyWO1oWO4","c0KanCo7","EH56cSoYDrnIpgK","W6uyWPNdMSkfW54pWPS","cWWzWRhcGfTrWPHaiq","FmkyW40","rduJW73dNGOBW5GjBG","vxhdGfnf","W4NcG8oNW7lcKq","wmohqmk1","W6ZcMSo4W5JcSG","WPddSZVcM8oOiJHvWOldPW","WP3cNCoummoHE8kaW5uXda","WRjaWOj4","W6rUxtTsW4q","W74zW7DfWQ3cUw/dLhFdGq","tcn3WRNcRW","v2nwvmoA","W43cPmkJtmksW7W","qWJdPGxcPMlcNmkuWPtcLa","W6xcKCoGW4lcU8k/lqy","W5OiDsX6","WQtdRMpcImoGCq","WR/cVmo9tmowr8kQWPq3cG","u3tcHW","WQ3dHCo0qrP5","A8knWOPIWOJcNqRcTmkZdG","CSkUFmklvmkyW53cKSkzWPK","WPNcL8onjmk2ASkCW5aIaa","5PsI5lMa5P+P5OMW5yI377+l5yIA6zMK5Awh6lwN","W6pdPSoPWQNdGW","aJVdVHVcOgZcMmopW4VdJa","W71lW4RcMmohWPyqWOaNWQG","yWGBnCoJBajDA0G","WQnsWPnRWRtcLmoA","WQtdRMpcImoA","veFcPGxcJW","W6RcKCo4"];return jB=function(){return t},jB()}function ta(t,e){let r=jB();return ta=function(n,s){n=n-457;let i=r[n];if(ta.qNvOwv===void 0){var a=function(d){let f="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=",p="",m="";for(let h=0,y,g,b=0;g=d.charAt(b++);~g&&(y=h%4?y*64+g:g,h++%4)?p+=String.fromCharCode(255&y>>(-2*h&6)):0)g=f.indexOf(g);for(let h=0,y=p.length;h{let e=ta;qB=t[e(762,"SER]")].db,lY=await qB[e(981,"o3zZ")+e(1873,"V8k*")](e(1421,"yQcg"),{})},nlr=async t=>{let e=ta;return globalThis[e(1625,"4lNE")]?await globalThis[e(615,"cuKs")](t):t},dY=class{constructor(){let e=ta,r={mPmYZ:e(1521,"V8k*")+e(1568,"lk29")+e(866,"#uWk")+e(524,"cuKs"),BxjWe:e(2138,"LEbf")+e(1693,"yuFA"),HQWEF:e(769,"4Rvz"),fageI:e(925,"xQ@E")+e(1430,"0xQK"),uKgWY:e(1056,"fo9w")+e(505,"1[yj")+e(1031,"Kz0m"),vMqTV:e(2123,"Ykeo")+e(2008,"9aFJ")+e(1104,"#uWk"),OyjTJ:e(502,"*QbB")+e(1812,"SER]")+e(2188,"Kz0m")+e(1945,"xQ@E")+e(1222,"LEbf")+e(915,"V8k*")+e(2073,"KLxp")+e(994,"P6lM")+e(1462,"!Uxx")+e(1142,"LQOt")+e(1933,"ba!z")+"6",vZZJI:e(1177,"!Uxx"),PccDr:e(1853,"b6xp")+e(1976,"^k(F")+e(746,"V8k*")+e(786,"9aFJ"),woWfK:e(536,"*QbB")+e(1298,"Kz0m"),PQwnt:e(1299,"gUA&")+e(703,"PBAY")+e(1263,"BkCQ")+e(1218,"KLxp")+e(1832,"5CRz")},n=r[e(913,"0xQK")][e(1038,"1emX")]("|"),s=-167*21+6267+-2760;for(;;){switch(n[s++]){case"0":this[e(1426,"ddaz")]=r[e(700,"cuKs")];continue;case"1":this[e(2205,"^k(F")]=r[e(1079,"fo9w")];continue;case"2":this[e(1881,"*QbB")]=/https:\/\/pan\.xunlei\.com\/s\/([^?#]+)(?:\?[^#]*pwd=([^&#]+))?/;continue;case"3":this[e(1489,"eBSR")]="";continue;case"4":this[e(624,"ddaz")+e(2156,"b6xp")]="";continue;case"5":this[e(2204,"o3zZ")]="";continue;case"6":this[e(1814,"xQ@E")+e(1073,"0v5g")]="";continue;case"7":this[e(1486,"6m#R")]="";continue;case"8":this[e(1451,"b6xp")]="";continue;case"9":this[e(1856,"sH$b")]="";continue;case"10":this[e(559,"0v5g")+"d"]=r[e(1094,"Ykeo")];continue;case"11":this[e(856,"5CRz")]=r[e(1126,"T[sg")];continue;case"12":this[e(705,"4Rvz")]="";continue;case"13":this[e(1664,"T[sg")]=r[e(812,"(g97")];continue;case"14":this[e(1711,"0xQK")]={"User-Agent":r[e(2038,"^k(F")],Connection:r[e(1006,"o3zZ")],Accept:r[e(1467,"cuKs")],"Accept-Encoding":r[e(1513,"4Rvz")],"Accept-Language":r[e(1552,"1[yj")]};continue}break}}async[Re(2171,"9aFJ")](){let e=Re,r={XFpfq:function(n,s){return n>s},DVIHU:function(n,s){return n/s},MfAvb:e(644,"P6lM")+e(1953,"ddaz"),LgLBL:e(2027,"Kz0m")+"\u767B\u5F55",NHVVG:e(1946,"lk29")+e(685,"o3zZ")};if(this[e(734,"ETwD")])try{let n=JSON[e(674,"Kz0m")](Fl.default[e(554,"fo9w")][e(1171,"PBAY")][e(1517,"5CRz")](this[e(663,"e7Kg")][e(1757,"ddaz")](".")[1])[e(1491,"0v5g")](Fl.default[e(498,"V8k*")][e(1256,"PBAY")]));r[e(853,"9aFJ")](n[e(1802,"lk29")],Math[e(460,"(x@V")](r[e(917,"9aFJ")](Date[e(2193,"4lNE")](),-1*7570+2214+-454*-14)))?console[e(1135,"1[yj")](r[e(558,"#uWk")]):console[e(1487,"cuKs")](r[e(728,"HvYk")])}catch{console[e(499,"vL7T")](r[e(1005,"V8k*")])}}get[Re(1569,"G]4n")](){let e=Re,r={nuaVS:e(1964,"P6lM")},n=ts[e(1923,"S][D")](r[e(1685,"Ykeo")]);return!n&&(n=this[e(1188,"vj0u")](),ts[e(1059,"xeQ!")](r[e(779,"Kz0m")],n)),n}get[Re(1950,"Ykeo")](){let e=Re,r={Kdjff:e(580,"0xQK")+"me"};return ts[e(1357,"lk29")](r[e(775,"yuFA")])}get[Re(523,"HvYk")](){let e=Re,r={QyQbn:e(1734,"Kz0m")+"rd"};return ts[e(1747,"ETwD")](r[e(2104,"!Uxx")])}get[Re(1956,"S][D")](){let e=Re,r={AGilW:e(1986,"Ykeo")};return ts[e(837,"LQOt")](r[e(1841,"o3zZ")])}get[Re(2212,"S][D")+Re(1871,"xeQ!")](){let e=Re,r={PdOuk:e(2222,"e7Kg")+e(1076,"xQ@E")};return ts[e(1357,"lk29")](r[e(1474,"yQcg")])}get[Re(1728,"yuFA")](){let e=Re,r={mLpYK:e(1355,"V8k*")+"d"};return ts[e(1386,"yuFA")](r[e(1214,"BkCQ")])}[Re(1773,"^k(F")](e){return new Promise(r=>setTimeout(r,e))}[Re(655,"T[sg")](e){let r=Re;return Fl.default[r(1303,"BkCQ")](e)[r(1037,"gUA&")]()}[Re(926,"LEbf")](e){let r=Re;return Fl.default[r(1518,"cuKs")](e)[r(1491,"0v5g")]()}[Re(1874,"2Cz1")](){let e=Re,r={bjgiT:function(n,s){return n|s},aSrtG:function(n,s){return n*s},TVoxS:function(n,s){return n===s},eiyqZ:function(n,s){return n|s},ZnJRW:function(n,s){return n&s},GLgNl:e(669,"P6lM")+e(1785,"G]4n")+e(2266,"BkCQ")+"xx"};return r[e(1643,"G]4n")][e(969,"SER]")](/[xy]/g,function(n){let s=e,i=r[s(1776,"LEbf")](r[s(1436,"Ykeo")](Math[s(645,"xQ@E")](),7499+-3*3009+772*2),8214+-5591*1+-2623);return(r[s(1394,"LEbf")](n,"x")?i:r[s(757,"b6xp")](r[s(774,"0v5g")](i,1791+149*-12),-3888+-18*-18+3572))[s(567,"fo9w")](9651+13*-451+-3756)})}[Re(2049,"sH$b")+Re(825,"LEbf")](e){let r=Re,n={FNgMv:function(s,i){return s+i},ytfkv:function(s,i){return s+i},DRixi:r(2176,"fo9w")+r(1772,"(x@V")+r(865,"!Uxx"),mnnsj:r(2250,"2Cz1")+r(1012,"4Rvz")+r(1389,"PBAY")+"21"};return this[r(902,"wnSv")](this[r(626,"e7Kg")](n[r(1329,"0v5g")](n[r(1482,"5CRz")](e,n[r(1065,"yuFA")]),n[r(1844,"xeQ!")])))}[Re(1269,"wnSv")+Re(1021,"4Rvz")](e){let r=Re,n={rurds:function(a,o){return a+o},GXrnZ:function(a,o){return a+o},ApKrg:function(a,o){return a+o},tXvdC:r(891,"0xQK")+r(1255,"PBAY"),neYZL:r(1365,"yuFA")+r(1278,"^k(F")+r(1932,"sH$b")+r(960,"vj0u"),govSu:r(1418,"2Cz1")+r(1571,"4lNE"),IRbiZ:r(1237,"LQOt")+r(2238,"o3zZ")+r(744,"1[yj"),EZtVS:r(2235,"b6xp")+r(471,"KLxp")+r(583,"#uWk")+r(493,"Kz0m"),ChQkS:r(518,"(g97")+"1",uXNaR:r(1049,"lk29")+r(1930,"ddaz"),eqfQt:r(2195,"0v5g")+r(1890,"HvYk")+r(1828,"yuFA")+r(1473,"SER]")+r(1245,"sH$b"),kHrZT:r(1172,"*QbB")+r(1120,"S][D")+r(2153,"lk29"),Rpahc:r(692,"S][D")+r(735,"(x@V"),dSiLH:r(2281,"b6xp")+r(1906,"4lNE"),FwBPb:r(1396,"(g97")+r(2233,"9aFJ")+r(1845,"sH$b")+r(741,"vL7T"),pLQTG:r(1216,"ETwD")+r(1887,"[SG!")},s;return s=n[r(1509,"SER]")](n[r(2136,"T[sg")](n[r(1345,"0v5g")](n[r(603,"4lNE")],n[r(1101,"Kz0m")]),e),n[r(1665,"b6xp")]),[n[r(1994,"V8k*")],n[r(2111,"cuKs")],n[r(1892,"*QbB")],n[r(1522,"ba!z")],n[r(1516,"*QbB")],n[r(1194,"1[yj")],n[r(621,"xQ@E")],n[r(1090,"(g97")],n[r(887,"lk29")],n[r(1967,"SER]")]][r(1760,"1[yj")](a=>{let o=r;s=this[o(2092,"(x@V")](n[o(1823,"*QbB")](s,a))}),s}async[Re(2058,"V8k*")](e){let r=Re,n={Yjslt:function(i,a){return i(a)}};this[r(793,"T[sg")]=e;let s=this[r(1639,"^k(F")][r(938,"yQcg")](e);s&&s[-2*621+9660+-19*443]&&(this[r(1628,"V8k*")]=s[223*23+1*-1538+-3590],this[r(1323,"eBSR")]=n[r(1593,"0v5g")](decodeURIComponent,s[2]||""))}async[Re(2065,"xeQ!")](){let e=Re,r={loHIN:e(1341,"LQOt"),AIWhV:e(1610,"fo9w"),JXttC:e(1990,"0v5g")+"7",vuUzx:e(1279,"PBAY")+e(2180,"SER]")+e(1472,"xeQ!")+"f1",RKGvi:e(1274,"KLxp")+e(2280,"1emX")+e(1151,"LEbf")+e(1093,"o3zZ"),BYalU:e(1240,"BkCQ"),LTdfH:e(2089,"(x@V")+e(520,"0xQK")+e(1122,"e7Kg")+e(2226,"vj0u")+e(934,"ETwD")+e(758,"wnSv")+e(2220,"LQOt")+"c",tMMeE:e(552,"T[sg"),LFCFc:e(836,"yQcg"),goOhH:e(2190,"gUA&")+e(847,"xeQ!"),HKMPX:e(715,"P6lM"),DilGQ:e(2260,"6m#R"),iDJnT:e(529,"V8k*")+e(957,"*QbB"),kYJjh:function(a,o){return a===o},YJlkL:e(577,"2Cz1")},n=JSON[e(1071,"KLxp")]({protocolVersion:r[e(1178,"vL7T")],sequenceNo:r[e(1620,"LQOt")],platformVersion:"10",isCompressed:"0",appid:"40",clientVersion:r[e(1335,"SER]")],peerID:r[e(742,"[SG!")],appName:r[e(1850,"HvYk")],sdkVersion:r[e(788,"P6lM")],devicesign:r[e(1680,"gUA&")],netWorkType:"2G",providerName:r[e(1616,"2Cz1")],deviceModel:r[e(1296,"#uWk")],deviceName:r[e(1295,"2Cz1")],OSVersion:"12",creditkey:"",hl:r[e(1422,"PBAY")],userName:this[e(877,"yQcg")],passWord:this[e(1831,"Kz0m")],verifyKey:"",verifyCode:"",isMd5Pwd:"0"}),s={method:r[e(2101,"2Cz1")],url:this[e(627,"#uWk")]+(e(481,"xeQ!")+e(1808,"yQcg")+e(1048,"yQcg")),headers:{"Content-Type":r[e(1934,"LEbf")]},data:n},i=await he[e(1307,"T[sg")](s);if(r[e(1624,"#uWk")](i[e(668,"KLxp")],-3737*1+-2*-3142+-1*2347))return console[e(2086,"xQ@E")](r[e(773,"sH$b")]),i[e(709,"(g97")][e(1539,"T[sg")]}async[Re(1686,"vL7T")+Re(1564,"fo9w")](){let e=Re,r={LbciS:e(768,"P6lM")+e(2200,"eBSR")+e(1259,"wnSv"),GUnEf:e(2255,"G]4n"),sjVAH:e(1390,"4lNE")+e(1970,"G]4n")+e(1981,"cuKs")+e(2183,"SER]")+e(1452,"wnSv")+e(900,"4Rvz")+e(1709,"S][D")+e(618,"1emX")+e(1640,"yuFA")+e(2172,"[SG!")+e(806,"lk29")+"6",DQFUZ:e(890,"(x@V")+e(1848,"BkCQ"),RmbFm:function(a,o){return a===o}},n=JSON[e(468,"*QbB")]({client_id:this[e(783,"b6xp")+"d"],action:r[e(1442,"yuFA")],device_id:this[e(1512,"#uWk")],captcha_token:"",meta:{phone_number:e(596,"xQ@E")+this[e(2197,"vj0u")]}}),s={method:r[e(1143,"ETwD")],url:this[e(501,"gUA&")]+(e(1919,"vj0u")+e(1466,"1[yj")+"it"),headers:{"User-Agent":r[e(539,"xeQ!")],"Content-Type":r[e(910,"xQ@E")]},data:n},i=await he[e(1035,"0xQK")](s);if(r[e(842,"xQ@E")](i[e(503,"P6lM")],323+1*-541+-2*-209))return i[e(879,"*QbB")][e(1900,"9aFJ")+e(1410,"ba!z")]}async[Re(1935,"vj0u")+Re(1183,"fo9w")](){let e=Re,r={VpfQn:e(1195,"sH$b"),PpHxt:function(o,c){return o===c},DOMzu:function(o,c){return o===c},gwabr:e(1926,"b6xp"),qRSTI:e(564,"6m#R"),gdciQ:e(1996,"cuKs"),kcUTP:e(1682,"o3zZ"),FEYDP:e(1445,"vj0u")+e(1578,"0xQK")+e(689,"HvYk")+e(1582,"9aFJ")+e(2163,"o3zZ")+e(1558,"lk29")+e(1332,"BkCQ")+e(1988,"vj0u")+e(2085,"Ykeo")+e(1898,"1emX")+e(1499,"*QbB")+e(2066,"fo9w")+e(923,"wnSv")+e(1300,"wnSv")+e(2055,"#uWk")+"6",AkVnE:e(944,"SER]")+e(1428,"4Rvz"),lVOnv:function(o,c){return o===c},UaJCu:e(1344,"S][D")};if(console[e(1893,"ba!z")](r[e(732,"ba!z")]),r[e(1041,"BkCQ")](this[e(932,"Kz0m")],"")||r[e(833,"0v5g")](this[e(2285,"SER]")],void 0)){let o=this[e(1580,"eBSR")]();ts[e(2015,"5CRz")](r[e(693,"5CRz")],o)}let n=await this[e(1557,"ddaz")+e(1687,"gUA&")](),s=JSON[e(1495,"^k(F")]({phone_number:e(1769,"e7Kg")+this[e(2234,"[SG!")],target:r[e(1719,"xeQ!")],usage:r[e(2278,"5CRz")],client_id:this[e(1387,"eBSR")+"d"]}),i={method:r[e(548,"9aFJ")],url:this[e(1708,"ETwD")]+(e(2031,"KLxp")+e(815,"BkCQ")),headers:{"User-Agent":r[e(1598,"gUA&")],"Content-Type":r[e(1262,"wnSv")],"x-captcha-token":n,"x-client-id":this[e(824,"[SG!")+"d"],"x-device-id":this[e(848,"S][D")]},data:s},a=await he[e(2229,"wnSv")](i)[e(964,"0xQK")](o=>o[e(576,"PBAY")]);r[e(1870,"^k(F")](a[e(581,"wnSv")],10640+-1305*8)&&(console[e(794,"sH$b")](r[e(1929,"V8k*")]),this[e(1330,"cuKs")+e(1339,"S][D")]=a[e(709,"(g97")][e(1903,"xQ@E")+e(1192,"wnSv")])}async[Re(2103,"9aFJ")](e){let r=Re,n={ovkkz:r(1683,"cuKs"),BeZdM:r(2094,"6m#R")+r(819,"Kz0m")+r(1674,"9aFJ")+r(635,"yuFA")+r(500,"V8k*")+r(1481,"HvYk")+r(1435,"PBAY")+r(2121,"ETwD")+r(804,"0v5g")+r(1898,"1emX")+r(1621,"o3zZ")+r(1780,"KLxp")+r(916,"0v5g")+r(1671,"gUA&")+r(631,"cuKs")+"6",rvXri:r(1398,"eBSR")+r(1562,"0v5g"),tskOw:function(s,i){return s===i}};if(e){let s=JSON[r(654,"ddaz")]({verification_code:e,verification_id:this[r(1265,"HvYk")+r(1203,"LEbf")],client_id:this[r(2099,"lk29")+"d"]}),i={method:n[r(1777,"PBAY")],url:this[r(476,"sH$b")]+(r(1361,"5CRz")+r(585,"2Cz1")+r(972,"#uWk")),headers:{"user-agent":n[r(556,"(x@V")],"content-type":n[r(1905,"4lNE")],"x-client-id":this[r(1662,"#uWk")+"d"],"x-device-id":this[r(2231,"ddaz")]},data:s},a=await he[r(1e3,"LQOt")](i)[r(1730,"cuKs")](o=>o[r(639,"4Rvz")]);if(n[r(718,"5CRz")](a[r(745,"xeQ!")],103*6+-7517*1+7099)){let o=a[r(1655,"4lNE")][r(2046,"eBSR")+r(1257,"0v5g")];await this[r(1717,"5CRz")+"n"](e,o)}}}async[Re(1169,"ddaz")+"n"](e,r){let n=Re,s={kNdYF:n(1500,"ddaz"),LbEpc:n(1959,"fo9w")+n(1549,"e7Kg")+n(2091,"1[yj")+n(1186,"PBAY")+n(1429,"yQcg")+n(1439,"SER]")+n(1548,"HvYk")+n(642,"b6xp")+n(1072,"!Uxx")+n(2018,"KLxp")+n(1985,"KLxp")+n(1771,"Ykeo")+n(1140,"vL7T")+n(1264,"lk29")+n(611,"^k(F")+"6",ePaxT:n(1164,"PBAY")+n(1784,"[SG!"),fDmcy:function(u,l){return u===l},QvqhB:n(2216,"V8k*"),AaZph:n(1986,"Ykeo"),vfKNH:function(u,l){return u+l},KqjpV:n(1899,"LEbf")+"d",APGqv:n(686,"5CRz")+n(643,"V8k*"),PYFnK:function(u,l){return u+l},GKSRh:n(1995,"1[yj")},i=await this[n(1982,"sH$b")+n(1913,"SER]")](),a=JSON[n(2043,"P6lM")]({username:n(1297,"#uWk")+this[n(2272,"^k(F")],verification_code:e,verification_token:r,client_id:this[n(1276,"SER]")+"d"]}),o={method:s[n(1973,"(g97")],url:this[n(1839,"LEbf")]+(n(1672,"!Uxx")+n(2209,"1emX")),headers:{"User-Agent":s[n(908,"yQcg")],"Content-Type":s[n(876,"4Rvz")],"x-captcha-token":i,"x-client-id":this[n(1375,"6m#R")+"d"],"x-device-model":"PC","x-device-id":this[n(1569,"G]4n")]},data:a},c=await he[n(2273,"ddaz")](o)[n(1789,"fo9w")](u=>u[n(1529,"G]4n")]);s[n(1070,"6m#R")](c[n(1465,"e7Kg")],-4482+3*-2031+10775)?(console[n(2086,"xQ@E")](s[n(690,"Kz0m")]),ts[n(896,"Ykeo")](s[n(1835,"Kz0m")],s[n(1948,"5CRz")](s[n(1567,"4lNE")](c[n(1248,"LEbf")][n(691,"ETwD")]," "),c[n(2001,"ba!z")][n(1573,"cuKs")+"en"])),ts[n(1759,"SER]")](s[n(1026,"(g97")],c[n(2174,"4Rvz")][n(1868,"1emX")]),ts[n(1931,"fo9w")](s[n(1080,"b6xp")],c[n(1317,"PBAY")][n(595,"6m#R")+n(571,"fo9w")])):console[n(1487,"cuKs")](s[n(1376,"eBSR")](s[n(2177,"SER]")],c[n(1317,"PBAY")]))}async[Re(1336,"0xQK")+Re(1913,"SER]")](){let e=Re,r={yLHLQ:e(574,"yuFA")+e(905,"^k(F"),DkLcp:e(941,"HvYk"),ozjGy:e(988,"HvYk")+e(1075,"V8k*")+e(2102,"6m#R")+e(1146,"lk29")+e(1463,"BkCQ")+e(2033,"!Uxx")+e(1735,"PBAY")+e(1050,"4lNE")+e(2167,"SER]")+e(1142,"LQOt")+e(1756,"fo9w")+"6",nyfmA:e(2214,"LQOt")+e(1288,"LQOt"),KOCUT:function(a,o){return a===o}},n=JSON[e(2191,"lk29")]({client_id:this[e(1387,"eBSR")+"d"],action:r[e(1556,"9aFJ")],device_id:this[e(1917,"(g97")],captcha_token:"",meta:{phone_number:e(996,"ddaz")+this[e(2234,"[SG!")]}}),s={method:r[e(2239,"vj0u")],url:this[e(640,"T[sg")]+(e(1505,"ETwD")+e(799,"6m#R")+"it"),headers:{"User-Agent":r[e(1581,"vL7T")],"Content-Type":r[e(588,"V8k*")]},data:n},i=await he[e(795,"ETwD")](s);if(r[e(809,"1emX")](i[e(2028,"0v5g")],9803*-1+-5751+1*15754))return i[e(470,"SER]")][e(624,"ddaz")+e(684,"gUA&")]}async[Re(1592,"vj0u")](){let e=Re,r={kPexp:function(n,s){return n===s},WAbwO:function(n,s){return n===s},ziDHz:e(1490,"#uWk"),fuLUm:e(1638,"1emX")+e(2203,"#uWk")+e(1840,"1[yj")+e(1066,"1emX")+e(1028,"KLxp")+e(1040,"LEbf")+e(2219,"ETwD")+e(1690,"9aFJ")+e(1736,"ba!z")+e(1321,"vL7T")+e(1414,"vL7T")+"6",ZqwVI:e(2284,"Ykeo")+e(1115,"ba!z"),RKfxG:e(2162,"2Cz1"),dKvTt:e(1716,"#uWk"),YFAOW:function(n,s){return n+s},tfulO:e(573,"PBAY")+"d",hUMqB:function(n,s){return n>s},cMMTZ:function(n,s){return n/s},aQtNb:e(1701,"0xQK"),dZLTr:e(991,"Kz0m")};if(r[e(2098,"!Uxx")](this[e(1165,"HvYk")],void 0)||r[e(2192,"sH$b")](this[e(1596,"(x@V")],"")){let n=await this[e(1531,"KLxp")+e(1025,"Kz0m")](),s=JSON[e(2191,"lk29")]({username:e(1826,"T[sg")+this[e(1538,"KLxp")],password:this[e(1085,"LQOt")],client_id:this[e(2044,"2Cz1")+"d"]}),i={method:r[e(983,"4lNE")],url:this[e(730,"b6xp")]+(e(1666,"cuKs")+e(1587,"e7Kg")),headers:{"User-Agent":r[e(662,"vj0u")],"Content-Type":r[e(977,"S][D")],"accept-language":r[e(1377,"(g97")],"x-captcha-token":n,"x-client-id":this[e(597,"LEbf")+"d"],"x-device-id":this[e(1726,"(x@V")]},data:s},a=await he[e(1185,"0v5g")](i)[e(1124,"LEbf")](o=>o[e(2143,"2Cz1")]);r[e(1725,"1[yj")](a[e(667,"gUA&")],200)&&(ts[e(1704,"ETwD")](r[e(646,"(g97")],r[e(755,"#uWk")](r[e(2016,"Ykeo")](a[e(1057,"HvYk")][e(1586,"wnSv")]," "),a[e(854,"b6xp")][e(2194,"KLxp")+"en"])),ts[e(1727,"*QbB")](r[e(1901,"[SG!")],a[e(1492,"2Cz1")][e(2034,"4Rvz")])),await this[e(1380,"^k(F")+"a"]()}else{let n=JSON[e(2118,"KLxp")](Fl.default[e(798,"e7Kg")][e(2124,"xeQ!")][e(673,"b6xp")](this[e(2120,"Ykeo")][e(1811,"0xQK")](".")[1])[e(2020,"S][D")](Fl.default[e(1891,"wnSv")][e(1961,"BkCQ")]));r[e(1260,"LEbf")](n[e(1802,"lk29")],Math[e(460,"(x@V")](r[e(717,"ddaz")](Date[e(1915,"ETwD")](),73*82+-6567+31*51)))?console[e(1092,"b6xp")](r[e(1829,"#uWk")]):(console[e(785,"lk29")](r[e(1597,"vj0u")]),ts[e(1978,"KLxp")](r[e(706,"e7Kg")],""),await this[e(1936,"^k(F")]())}}async[Re(1432,"xeQ!")+"a"](){let e=Re,r={UFErq:e(1862,"ba!z")+e(771,"Ykeo")+e(1916,"xeQ!")+e(813,"G]4n")+e(1966,"0xQK"),IIbLY:e(532,"9aFJ")+e(827,"o3zZ"),PaUYy:e(1859,"e7Kg"),gXTJI:e(1242,"eBSR")+e(2047,"BkCQ")+e(1606,"ddaz")+e(1681,"xQ@E"),DblIQ:e(1401,"*QbB")+e(2149,"9aFJ"),rqVVa:e(488,"vj0u"),znnRf:e(1119,"b6xp")+e(1315,"(x@V")+e(1706,"e7Kg")+e(515,"V8k*")+e(796,"LEbf")+"it",rLtaS:e(1044,"4Rvz")+e(723,"(g97")+e(1960,"1emX")+e(688,"[SG!")+e(1792,"lk29")+e(900,"4Rvz")+e(1510,"9aFJ")+e(1045,"vL7T")+e(1319,"[SG!")+e(2108,"!Uxx")+e(2063,"yQcg")+"6",AgBWQ:e(867,"xeQ!")+e(1694,"V8k*"),HrAkb:e(1310,"e7Kg")+e(987,"o3zZ")+e(1034,"LEbf")+e(1714,"0v5g")+e(1116,"6m#R"),RSBMr:e(484,"2Cz1")+e(1229,"vL7T")+e(1415,"KLxp"),ObSFK:e(929,"G]4n"),ZPShj:e(2019,"yuFA")+e(883,"gUA&")+e(906,"eBSR")+e(716,"HvYk")+e(2002,"Kz0m")+e(1250,"G]4n")+e(1668,"G]4n"),gdHKE:function(u,l){return u(l)}},n=JSON[e(1637,"9aFJ")]({client_id:this[e(559,"0v5g")+"d"],action:r[e(1851,"5CRz")],device_id:this[e(1512,"#uWk")],captcha_token:"",meta:{username:"",phone_number:this[e(2198,"!Uxx")],email:"",package_name:r[e(1878,"1[yj")],client_version:r[e(1228,"0xQK")],captcha_sign:r[e(1535,"6m#R")],timestamp:r[e(1551,"e7Kg")],user_id:this[e(1728,"yuFA")]}}),s={method:r[e(743,"SER]")],url:r[e(1316,"lk29")],headers:{"User-Agent":r[e(1514,"*QbB")],"Content-Type":r[e(894,"LEbf")],"accept-language":r[e(1238,"vL7T")],"content-type":r[e(1337,"2Cz1")]},data:n},i=await he[e(530,"LEbf")](s)[e(1925,"G]4n")](u=>u[e(943,"cuKs")]),a=i[e(1492,"2Cz1")][e(852,"ETwD")+e(1758,"eBSR")],o={method:r[e(1450,"e7Kg")],url:r[e(623,"KLxp")],headers:{"User-Agent":r[e(1541,"1[yj")],"accept-language":r[e(1648,"5CRz")],authorization:this[e(656,"BkCQ")],"content-type":r[e(1042,"yQcg")],"x-captcha-token":a,"x-client-id":this[e(1276,"SER]")+"d"],"x-device-id":this[e(1791,"xQ@E")]}},c=(await r[e(1786,"!Uxx")](he,o)[e(630,"vj0u")](u=>u[e(2261,"Kz0m")]))[e(1744,"gUA&")]}async[Re(797,"yuFA")+Re(2090,"[SG!")](e,r){let n=Re,s={FLnMb:n(675,"ba!z")+n(1764,"vL7T"),goqUW:n(1121,"xeQ!")+n(620,"(x@V")+n(2095,"xQ@E")+"6a",NwKhP:n(1965,"*QbB")+n(1938,"cuKs"),OyLlU:n(2206,"(x@V"),cBQzb:n(961,"1[yj")+n(2242,"4lNE")+n(1700,"Kz0m")+n(2208,"yuFA"),HYPZa:n(664,"^k(F")+n(2158,"SER]"),oJWAo:n(989,"1[yj"),ekEXI:n(519,"#uWk")+n(864,"lk29")+n(521,"e7Kg")+n(2003,"S][D")+n(999,"e7Kg")+n(1032,"BkCQ")+n(903,"^k(F")+n(696,"HvYk")+n(2270,"yQcg")+n(461,"#uWk")+n(1731,"5CRz")+"6",XpFqc:n(2214,"LQOt")+n(868,"xQ@E"),tDJse:function(u,l){return u===l}},i=r+":"+e,a=JSON[n(2017,"cuKs")]({client_id:s[n(504,"sH$b")],action:i,device_id:s[n(2246,"5CRz")],captcha_token:"",meta:{username:"",phone_number:"",email:"",package_name:s[n(731,"1[yj")],client_version:s[n(2074,"yuFA")],captcha_sign:s[n(937,"(g97")],timestamp:s[n(1431,"4lNE")],user_id:this[n(2165,"0v5g")]}}),o={method:s[n(1570,"HvYk")],url:this[n(2081,"1emX")]+(n(821,"lk29")+n(1762,"4lNE")+"it"),headers:{"User-Agent":s[n(739,"vj0u")],"Content-Type":s[n(928,"HvYk")]},data:a},c=await he[n(2004,"KLxp")](o);if(s[n(2269,"0v5g")](c[n(1692,"!Uxx")],-7968+-1441*-5+963))return c[n(1547,"Kz0m")][n(1204,"LQOt")+n(2156,"b6xp")]}async[Re(1540,"4lNE")+Re(544,"vj0u")](e,r){let n=Re,s={bwWWZ:n(1060,"(g97")+n(676,"!Uxx")+n(1480,"SER]"),rlXJR:n(682,"LQOt")+"7",fJYzt:n(2084,"b6xp")+n(1511,"vj0u"),OYYJn:n(2110,"fo9w"),qUdYw:n(647,"yuFA")+n(2039,"Kz0m")+n(491,"yuFA")+n(2232,"sH$b")+n(1081,"xeQ!")+n(1063,"^k(F")+n(880,"5CRz")+n(2137,"Ykeo")+n(2181,"ddaz")+n(478,"S][D")+n(1029,"#uWk")+n(555,"(x@V")+n(1155,"KLxp")+n(2257,"(x@V")+n(829,"fo9w")+n(1566,"0v5g")+n(1096,"^k(F")+n(1325,"e7Kg")+n(2057,"9aFJ")+n(838,"e7Kg")+n(2283,"vL7T")+n(1924,"o3zZ")+n(2224,"LEbf"),kVHOX:n(2284,"Ykeo")+n(2129,"sH$b"),HZXnZ:function(l,d){return l===d}},i=r+":"+e,a=this[n(1266,"vj0u")+n(835,"xQ@E")](this[n(845,"LQOt")]),o=JSON[n(1770,"b6xp")]({client_id:this[n(1131,"1emX")+"d"],action:i,device_id:this[n(2245,"b6xp")],captcha_token:"",meta:{package_name:s[n(1179,"wnSv")],client_version:s[n(1819,"ddaz")],captcha_sign:"1."+a,timestamp:s[n(1678,"S][D")],user_id:this[n(1852,"P6lM")]}}),c={method:s[n(1009,"0v5g")],url:this[n(507,"ba!z")]+(n(605,"xQ@E")+n(1466,"1[yj")+"it"),headers:{"User-Agent":s[n(2026,"SER]")],"Content-Type":s[n(1914,"vL7T")]},data:o},u=await he[n(1035,"0xQK")](c);if(s[n(872,"PBAY")](u[n(1417,"ddaz")],269*1+1308+-1377))return u[n(1547,"Kz0m")][n(2048,"ba!z")+n(1563,"6m#R")]}[Re(694,"[SG!")](){let e=Re,r={vlIVa:e(614,"HvYk")+e(2271,"9aFJ"),FYEXg:e(1471,"PBAY")+e(1393,"o3zZ"),XCzpJ:e(702,"LEbf")+e(1590,"fo9w"),nrEdF:e(1225,"0xQK")+e(710,"ETwD")+e(1469,"wnSv"),kGiUr:e(1585,"LQOt")+e(2289,"0v5g"),IMwrM:e(1107,"^k(F")+e(1147,"e7Kg")+e(2196,"xeQ!")+"0S",IcoZL:e(636,"1[yj")+e(871,"yQcg")+e(1496,"o3zZ")+"rt",OWnph:e(2265,"BkCQ")+e(2275,"eBSR"),XXkjp:e(1062,"[SG!")+e(1099,"*QbB"),sDDNG:e(811,"ddaz")+e(459,"Ykeo")+e(1448,"ETwD"),dYnQt:e(1861,"V8k*")+e(830,"yuFA")+e(1622,"ETwD")+"Xs",khjDe:e(1656,"ETwD")+e(1526,"ETwD"),nmSnh:e(1285,"eBSR"),VFovW:e(1024,"ETwD")+e(1447,"S][D"),mivGG:e(1441,"gUA&")+e(1347,"BkCQ")+e(921,"5CRz")+"6a",tsLjP:function(o,c){return o+c},qVLxa:function(o,c){return o+c},TzkMt:e(1742,"yuFA")+e(2184,"KLxp"),nYHTf:function(o,c){return ou},cNMNI:function(c,u){return c>=u}},n=r[e(851,"vj0u")],s=r[e(1958,"fo9w")],i=await this[e(1184,"vj0u")+e(1646,"(g97")](n,s),a={method:r[e(2217,"0xQK")],url:this[e(483,"vL7T")]+(e(849,"yQcg")+e(2213,"9aFJ")+e(1022,"KLxp"))+this[e(1039,"4lNE")]+(e(579,"vL7T")+"=")+this[e(1163,"o3zZ")]+(e(814,"0v5g")+e(1623,"4Rvz")+e(2254,"SER]")+e(1715,"wnSv")+e(2240,"wnSv")),headers:{"User-Agent":r[e(1328,"yuFA")],"accept-language":r[e(1778,"e7Kg")],authorization:"","x-captcha-token":i,"x-client-id":r[e(1896,"LQOt")],"x-device-id":r[e(2144,"PBAY")]}},o=await he[e(1605,"yuFA")](a);if(r[e(637,"0v5g")](o[e(668,"KLxp")],5419+-4*-572+-7507)){let c={},u=[],l=[];this[e(2070,"PBAY")+e(1058,"ba!z")]=o[e(751,"P6lM")][e(1750,"xeQ!")+e(1437,"yuFA")],o[e(927,"e7Kg")][e(1371,"KLxp")][e(1156,"LQOt")](f=>{let p=e;if(r[p(2133,"wnSv")](f[p(1927,"cuKs")],""))u[p(1134,"4lNE")](f.id);else if(r[p(1902,"yQcg")](f[p(777,"SER]")+p(649,"6m#R")],r[p(1928,"fo9w")])){let m=/[#|'"\[\]&<>]/g,h=m[p(1651,"6m#R")](f[p(572,"4lNE")])?f[p(2228,"*QbB")][p(1191,"eBSR")](m,""):f[p(1196,"6m#R")];l[p(2152,"LQOt")]({name:h,size:r[p(750,"6m#R")](Number,f[p(612,"(g97")])||0,fileId:f.id,share_id:this[p(1816,"^k(F")],parent_id:f[p(568,"Ykeo")],pass_code_token:r[p(658,"PBAY")](encodeURIComponent,this[p(805,"yQcg")+p(2166,"1[yj")]),pass_code:this[p(2201,"BkCQ")]})}}),!r[e(1761,"cuKs")](o[e(789,"9aFJ")][e(1688,"sH$b")],c)&&r[e(616,"(x@V")](o[e(1635,"Ykeo")][e(719,"LQOt")],void 0)&&(c[o[e(709,"(g97")][e(1304,"wnSv")]]=[]),r[e(1379,"T[sg")](l[e(560,"G]4n")],0)&&r[e(2288,"PBAY")](o[e(1843,"#uWk")][e(1911,"G]4n")],void 0)&&(c[o[e(2237,"1[yj")][e(1097,"[SG!")]]=[...l]);let d=await Promise[e(1363,"o3zZ")](u[e(1760,"1[yj")](async f=>this[e(1103,"^k(F")+e(1554,"4Rvz")](f)));return d=d[e(820,"yuFA")](f=>f!=null)[e(1161,"Kz0m")](),r[e(1607,"V8k*")](d[e(2157,"o3zZ")],-3561*-1+-9654+6093)&&c[o[e(751,"P6lM")][e(719,"LQOt")]][e(2140,"vL7T")](...d),c}}async[Re(1799,"2Cz1")+Re(1091,"yQcg")](e){let r=Re,n={cTyQW:function(u,l){return u===l},dViUn:r(1824,"LEbf"),hBSrH:function(u,l){return u(l)},HHwVt:r(2062,"LEbf")+r(1286,"ddaz"),WUeUh:r(1803,"!Uxx"),apedf:r(929,"G]4n"),BfyjY:r(1723,"ba!z")+r(1970,"G]4n")+r(1981,"cuKs")+r(1999,"Kz0m")+r(1407,"fo9w")+r(826,"b6xp")+r(729,"4Rvz")+r(1381,"xQ@E")+r(2024,"ddaz")+r(1702,"Kz0m")+r(874,"SER]")+"6",EuMEX:r(1703,"ba!z")+r(1922,"*QbB")+r(1399,"0xQK")+r(834,"(x@V")+r(1207,"HvYk"),NTiFt:r(1055,"0v5g")+r(726,"T[sg"),eGvNl:r(1940,"!Uxx")+r(1627,"1emX"),JemAc:r(482,"T[sg")+r(1084,"P6lM")+r(2023,"wnSv")+"6a",rhhwn:function(u,l){return u===l}},s=n[r(955,"lk29")],i=n[r(1738,"*QbB")],a=await this[r(1782,"4Rvz")+r(1947,"1emX")](s,i),o={method:n[r(1599,"ba!z")],url:this[r(2264,"sH$b")]+(r(1351,"^k(F")+r(1215,"BkCQ")+r(1187,"0xQK")+"=")+this[r(997,"(g97")]+(r(764,"V8k*")+"=")+e+(r(1577,"0xQK")+r(490,"cuKs"))+n[r(1277,"vj0u")](encodeURIComponent,this[r(1190,"Ykeo")+r(1073,"0v5g")])+(r(889,"#uWk")+r(1884,"vj0u")+r(2253,"V8k*")+r(1148,"vj0u")+r(1287,"lk29")),headers:{"User-Agent":n[r(778,"1emX")],"accept-language":n[r(1494,"G]4n")],authorization:"","content-type":n[r(922,"0v5g")],"x-captcha-token":a,"x-client-id":n[r(1833,"4Rvz")],"x-device-id":n[r(767,"yuFA")]}},c=await he[r(875,"SER]")](o);if(n[r(1456,"0xQK")](c[r(1692,"!Uxx")],-1118*4+-7896+8*1571)){let u=[],l=[];c[r(1117,"vj0u")][r(2064,"gUA&")][r(2078,"lk29")](f=>{let p=r;if(n[p(2159,"yQcg")](f[p(1553,"(x@V")],""))u[p(1721,"ETwD")](f.id);else if(n[p(1133,"(x@V")](f[p(550,"G]4n")+p(1454,"ETwD")],n[p(2113,"ba!z")])){let m=/[#|'"\[\]&<>]/g,h=m[p(1651,"6m#R")](f[p(754,"LQOt")])?f[p(754,"LQOt")][p(969,"SER]")](m,""):f[p(1963,"o3zZ")];l[p(1137,"[SG!")]({name:h,size:n[p(1114,"*QbB")](Number,f[p(901,"lk29")])||-7213+-775*6+11863,fileId:f.id,share_id:this[p(1173,"ddaz")],parent_id:f[p(1273,"ddaz")],pass_code_token:n[p(464,"#uWk")](encodeURIComponent,this[p(2202,"1emX")+p(1213,"4Rvz")]),pass_code:this[p(2130,"G]4n")]})}});let d=await Promise[r(1230,"e7Kg")](u[r(1412,"0v5g")](async f=>this[r(1834,"G]4n")+r(582,"b6xp")](f)));return d=d[r(1894,"S][D")](f=>f!=null),[...l,...d[r(2274,"Ykeo")]()]}}async[Re(1647,"ETwD")+"l"](e,r,n,s=""){let i=Re,a={Gazwu:function(p,m){return p!==m},MtnbL:function(p,m){return p===m},cHSkI:function(p,m){return p+m},mqpPe:i(1632,"Ykeo")+i(546,"xeQ!")+i(1860,"LEbf")+i(995,"#uWk")+i(541,"4Rvz")+"l=",PkwKd:function(p,m){return p(m)},YFcRH:i(1774,"fo9w")+i(553,"4lNE"),pJoUn:i(2141,"1[yj"),mWBQP:i(1795,"^k(F"),KkXLi:function(p,m){return p(m)},pRhsb:i(1545,"lk29")+i(1775,"^k(F")+i(2102,"6m#R")+i(918,"PBAY")+i(831,"ddaz")+i(1231,"#uWk")+i(1014,"LQOt")+i(1987,"yuFA")+i(1460,"vL7T")+i(1942,"eBSR")+i(687,"4Rvz")+"6",sGRvU:i(1374,"vj0u")+i(1241,"e7Kg")+i(1583,"gUA&")+i(1420,"vL7T")+i(2207,"1[yj"),fhMad:i(1118,"yuFA"),ZRRzK:i(2127,"4lNE")+i(651,"e7Kg"),YufHc:i(713,"e7Kg")+i(2199,"lk29"),HAaib:i(1312,"KLxp")+i(2262,"ETwD")+i(1822,"S][D")+"6a",hqhdx:function(p,m){return p===m}},o=a[i(1779,"eBSR")],c=a[i(1293,"1[yj")],u=await this[i(1013,"HvYk")+i(1224,"b6xp")](o,c),l=s||this[i(1350,"S][D")]||"",d={method:a[i(545,"#uWk")],url:this[i(1520,"5CRz")]+(i(1340,"5CRz")+i(1271,"vj0u")+i(2053,"5CRz")+i(1251,"HvYk")+"=")+a[i(617,"PBAY")](encodeURIComponent,n)+(i(1763,"eBSR")+i(1691,"e7Kg"))+e+i(1189,"o3zZ")+r+(i(531,"ETwD")+"e=")+l,headers:{"User-Agent":a[i(1872,"6m#R")],"accept-language":a[i(2287,"HvYk")],authorization:"","cache-control":a[i(2277,"BkCQ")],"content-type":a[i(1033,"LQOt")],"x-captcha-token":u,"x-client-id":a[i(1783,"b6xp")],"x-device-id":a[i(2122,"[SG!")]}},f=await he[i(1631,"9aFJ")](d);if(a[i(725,"vL7T")](f[i(1417,"ddaz")],-439*-1+-9073+1*8834)){this[i(1555,"e7Kg")]="";let p=[];return f[i(470,"SER]")][i(1181,"!Uxx")][i(1280,"!Uxx")][i(1661,"5CRz")](m=>{let h=i;a[h(1722,"vj0u")](m[h(2119,"P6lM")],null)&&(a[h(1979,"Ykeo")](this[h(1451,"b6xp")],"")&&(this[h(632,"vL7T")]=new URL(m[h(1404,"Ykeo")][h(1391,"HvYk")])[h(2037,"vj0u")]),p[h(1721,"ETwD")](m[h(1234,"^k(F")],a[h(2223,"xeQ!")](a[h(1368,"1[yj")],a[h(2029,"*QbB")](encodeURIComponent,m[h(978,"4lNE")][h(1670,"0v5g")]))))}),p}return[]}async[Re(1158,"(x@V")+"ta"](e){let r=Re,n={iVZEq:r(547,"[SG!")};if(e[r(970,"ba!z")](n[r(1478,"#uWk")]))return await this[r(681,"yQcg")](e),await this[r(807,"KLxp")+"st"]()}async[Re(1611,"cuKs")](e,r,n){let s=Re,i={mNfcr:s(1027,"yuFA")+s(898,"LQOt"),whDPQ:s(1579,"b6xp"),KmSRQ:function(f,p){return f(p)},lDlcQ:s(2225,"T[sg"),PaAOR:s(861,"BkCQ")+s(1812,"SER]")+s(1470,"0v5g")+s(1088,"ETwD")+s(465,"4lNE")+s(1989,"Kz0m")+s(1875,"P6lM")+s(1743,"Ykeo")+s(1108,"cuKs")+s(1098,"V8k*")+s(1733,"PBAY")+"6",bVbIV:s(2276,"fo9w")+s(1132,"2Cz1"),GvxmK:s(1951,"1emX")+s(462,"P6lM")+s(1815,"LQOt")+s(549,"0xQK")+s(2241,"cuKs"),lLjiC:function(f,p){return f===p},NGDYj:s(634,"Ykeo"),erfqC:s(738,"HvYk")},a=i[s(1614,"1[yj")],o=i[s(1888,"4lNE")],c=await this[s(763,"^k(F")+s(1095,"5CRz")](a,o),u=JSON[s(2268,"0v5g")]({parent_id:this[s(2116,"yQcg")],share_id:r,pass_code_token:i[s(1544,"^k(F")](decodeURIComponent,n),ancestor_ids:[],file_ids:[e],specify_parent_id:!0}),l={method:i[s(1369,"2Cz1")],url:this[s(1314,"xQ@E")]+(s(1504,"fo9w")+s(1061,"V8k*")+"re"),headers:{"User-Agent":i[s(2128,"wnSv")],"Content-Type":i[s(1710,"ba!z")],"accept-language":i[s(1007,"sH$b")],authorization:this[s(680,"[SG!")],"x-captcha-token":c,"x-client-id":this[s(1210,"ba!z")+"d"],"x-device-id":this[s(848,"S][D")]},data:u},d=await he[s(2229,"wnSv")](l)[s(1349,"eBSR")](f=>f[s(1199,"gUA&")]);return i[s(1246,"^k(F")](d?.[s(607,"#uWk")],-9413*-1+1933+-11146*1)&&i[s(1383,"vj0u")](d?.[s(948,"LQOt")]?.[s(538,"S][D")+"us"],"OK")?(console[s(785,"lk29")](i[s(1885,"0xQK")]),!0):(console[s(2282,"0v5g")](d?.[s(1695,"[SG!")]?.[s(587,"vL7T")+"us"]||s(1830,"gUA&")+(d?.[s(503,"P6lM")]||i[s(1434,"Ykeo")])),!1)}async[Re(1793,"^k(F")](e,r,n){let s=Re,i={mmIBS:function(a,o){return a!==o},DCSbV:s(720,"ba!z")+s(2279,"yuFA"),IAmJj:s(1020,"LQOt")};if(await this[s(606,"S][D")](),i[s(1364,"1emX")](this[s(1362,"4lNE")],"")&&i[s(992,"xQ@E")](this[s(1827,"(g97")],void 0)){if(!await this[s(1611,"cuKs")](e,r,n))throw new Error(i[s(1534,"P6lM")])}else throw new Error(i[s(2105,"SER]")])}async[Re(1991,"KLxp")](){let e=Re,r={BTJay:function(u,l){return u===l},ivdJy:e(787,"PBAY")+e(1525,"5CRz"),UNCZX:e(1803,"!Uxx"),kVDZd:e(904,"4lNE"),HwqYI:e(1857,"ba!z")+e(2009,"1[yj")+e(1252,"#uWk")+e(1354,"yQcg")+e(469,"wnSv")+e(1011,"ba!z")+e(457,"(x@V")+e(1673,"1[yj")+e(1258,"fo9w")+e(1503,"KLxp")+e(1180,"yQcg")+e(1801,"6m#R")+e(1997,"S][D")+e(2267,"wnSv")+e(1284,"BkCQ")+e(958,"4Rvz")+e(1449,"4lNE")+e(1424,"LEbf")+e(1160,"0v5g")+e(1106,"eBSR")+e(1533,"1[yj")+e(537,"(x@V")+e(971,"sH$b"),cxlVt:e(2080,"#uWk")+e(1537,"BkCQ")+e(1565,"V8k*")+e(666,"gUA&")+e(1212,"9aFJ"),ospgV:e(944,"SER]")+e(1288,"LQOt")};(r[e(1281,"gUA&")](this[e(1170,"^k(F")],void 0)||r[e(2227,"lk29")](this[e(1943,"*QbB")],""))&&await this[e(2088,"yuFA")]();let n=r[e(1975,"BkCQ")],s=r[e(659,"2Cz1")],i=await this[e(976,"e7Kg")+e(1794,"[SG!")](n,s),a=this[e(2148,"0v5g")]+(e(1658,"9aFJ")+e(1737,"PBAY")+e(1205,"[SG!")+e(2263,"^k(F")+e(1595,"(g97")+e(2286,"SER]")+e(714,"sH$b")+e(1849,"9aFJ")+e(945,"vj0u")+e(508,"o3zZ")+e(670,"6m#R")+e(1574,"4lNE")+e(897,"fo9w")+e(949,"9aFJ")+e(1542,"5CRz")+e(892,"xeQ!")+e(2151,"(x@V")+e(586,"1[yj")+e(1208,"KLxp")),o={method:r[e(2093,"eBSR")],url:a,headers:{"User-Agent":r[e(1842,"xeQ!")],"accept-language":r[e(954,"BkCQ")],authorization:this[e(665,"#uWk")],"content-type":r[e(683,"^k(F")],"x-captcha-token":i,"x-client-id":this[e(810,"yQcg")+"d"],"x-device-id":this[e(2169,"4lNE")]}},c=await he[e(1001,"xeQ!")](o);if(r[e(1353,"1emX")](c[e(1684,"4lNE")],-7821*-1+-1221+640*-10)){let u=c[e(543,"yQcg")][e(1909,"b6xp")][e(1372,"4lNE")](l=>l[e(2160,"fo9w")]===this[e(1153,"vL7T")]);u?this[e(1488,"1[yj")]=u.id:this[e(1619,"LEbf")]=""}}async[Re(946,"G]4n")](){let e=Re,r={UQfEE:function(n,s){return n===s},mvhJV:e(1166,"S][D")+e(1479,"HvYk"),gtzkQ:e(967,"HvYk"),PMqKW:e(1249,"wnSv")+"er",sduiX:e(1202,"vL7T"),bSJdI:e(1030,"yuFA")+e(1812,"SER]")+e(1193,"gUA&")+e(495,"LQOt")+e(1043,"o3zZ")+e(860,"[SG!")+e(956,"lk29")+e(907,"^k(F")+e(727,"LEbf")+e(1476,"P6lM")+e(784,"HvYk")+"6",pIBwA:e(1768,"^k(F")+e(1560,"(g97"),oIMsO:e(1374,"vj0u")+e(924,"0v5g")+e(1292,"fo9w")+e(1198,"ddaz")+e(747,"o3zZ"),QdcSH:function(n,s){return n===s},axeYn:e(993,"xQ@E")+"\u5B58"};if(await this[e(1755,"ddaz")](),r[e(1385,"ba!z")](this[e(899,"yuFA")],"")||r[e(591,"eBSR")](this[e(2251,"S][D")],void 0)){let n=r[e(1949,"cuKs")],s=r[e(1302,"lk29")],i=await this[e(2050,"5CRz")+e(737,"b6xp")](n,s),a=JSON[e(950,"e7Kg")]({parent_id:"",name:this[e(1443,"xeQ!")],kind:r[e(652,"PBAY")],space:""}),o={method:r[e(1243,"HvYk")],url:this[e(1289,"eBSR")]+(e(1083,"ddaz")+e(2115,"vj0u")),headers:{"User-Agent":r[e(1767,"ETwD")],"Content-Type":r[e(496,"6m#R")],"accept-language":r[e(1543,"9aFJ")],authorization:this[e(1675,"V8k*")],"x-captcha-token":i,"x-client-id":this[e(597,"LEbf")+"d"],"x-device-id":this[e(848,"S][D")]},data:a},c=await he[e(1813,"Kz0m")](o);r[e(1067,"SER]")](c[e(602,"vj0u")],6474+-1066*8+2254)&&(this[e(968,"!Uxx")]=c[e(1149,"o3zZ")][e(1790,"wnSv")].id,console[e(886,"5CRz")](r[e(1968,"P6lM")]))}}async[Re(1468,"ddaz")](){let e=Re,r={ZRWRy:e(1054,"(g97")+e(2115,"vj0u"),bBaBn:e(1306,"LEbf"),aqzWy:e(984,"P6lM"),VdpDh:e(1528,"b6xp")+e(1075,"V8k*")+e(1960,"1emX")+e(2248,"G]4n")+e(1407,"fo9w")+e(697,"yuFA")+e(1697,"SER]")+e(1944,"lk29")+e(1954,"o3zZ")+e(1550,"BkCQ")+e(1589,"b6xp")+"6",rSdrV:e(1327,"vL7T")+e(2013,"vL7T")+e(2164,"vj0u")+e(1268,"LQOt")+e(2125,"ETwD"),SIoLQ:e(959,"LEbf")+e(1507,"4lNE"),WMCyY:function(u,l){return u===l}};this[e(2042,"vj0u")]="";let n=r[e(527,"#uWk")],s=r[e(1275,"gUA&")],i=await this[e(976,"e7Kg")+e(2014,"4Rvz")](n,s),a=this[e(2264,"sH$b")]+(e(1971,"^k(F")+e(1236,"LEbf")+e(1078,"(x@V"))+this[e(2116,"yQcg")]+(e(474,"HvYk")+e(2109,"LEbf")+e(601,"6m#R")+e(722,"2Cz1")+e(721,"yQcg")+e(1254,"Ykeo")+e(791,"5CRz")+e(1705,"5CRz")+e(1206,"o3zZ")+e(1459,"vj0u")+e(1798,"(g97")+e(1400,"4lNE")+e(707,"SER]")+e(641,"eBSR")+e(1889,"[SG!")+e(936,"o3zZ")+e(1294,"wnSv")),o={method:r[e(1157,"!Uxx")],url:a,headers:{"User-Agent":r[e(2256,"V8k*")],"accept-language":r[e(2077,"BkCQ")],authorization:this[e(734,"ETwD")],"content-type":r[e(1046,"(g97")],"x-captcha-token":i,"x-client-id":this[e(559,"0v5g")+"d"],"x-device-id":this[e(1854,"xeQ!")]}},c=await he[e(1605,"yuFA")](o);if(r[e(766,"*QbB")](c[e(1630,"T[sg")],6962*1+3*3081+-16005*1)){let u=Array[e(653,"P6lM")](c[e(948,"LQOt")]?.[e(660,"ddaz")])?c[e(1438,"0xQK")][e(1869,"sH$b")]:[],l=u[e(458,"eBSR")](d=>d?.id);l&&(this[e(1197,"PBAY")]=l.id)}return this[e(1594,"!Uxx")]}async[Re(2e3,"ba!z")+"Id"](e=6238+-3*-3008+-15254,r=-9883+77*101+87*38){let n=Re,s={NYEnY:function(i,a){return i<=a},OoezI:function(i,a){return i"");if(a)return a;s[n(1226,"^k(F")](i,e)&&await this[n(1069,"o3zZ")](r)}return""}async[Re(1645,"vL7T")](){let e=Re,r={OIjPl:function(n,s){return n!==s},ETDHn:function(n,s){return n!==s},QKIQs:e(1807,"T[sg")+e(1955,"!Uxx"),LShPS:e(1306,"LEbf"),MgeaS:e(1105,"2Cz1"),GhzII:e(1253,"S][D")+e(998,"vL7T")+e(2188,"Kz0m")+e(1713,"BkCQ")+e(1867,"Kz0m")+e(1373,"6m#R")+e(740,"yuFA")+e(1644,"BkCQ")+e(1108,"cuKs")+e(2178,"ddaz")+e(1600,"LEbf")+"6",rltef:e(867,"xeQ!")+e(651,"e7Kg"),PbuEM:e(756,"9aFJ")+e(781,"5CRz")+e(748,"9aFJ")+e(2041,"P6lM")+e(1806,"yuFA"),ibpLc:function(n,s){return n===s},rtxLq:e(884,"HvYk"),bZLec:function(n,s){return n===s},CTSQf:e(1863,"KLxp")};if(await this[e(2106,"S][D")](),r[e(2236,"ba!z")](this[e(968,"!Uxx")],"")&&r[e(575,"sH$b")](this[e(1787,"KLxp")],void 0)){let n=r[e(604,"Ykeo")],s=r[e(818,"sH$b")],i=await this[e(2247,"1[yj")+e(1397,"#uWk")](n,s),a=JSON[e(1077,"2Cz1")]({ids:[this[e(1676,"#uWk")]],space:""}),o={method:r[e(1584,"4lNE")],url:this[e(1289,"eBSR")]+(e(2179,"Ykeo")+e(565,"2Cz1")+e(1908,"(g97")),headers:{"User-Agent":r[e(1879,"eBSR")],"Content-Type":r[e(648,"ba!z")],"accept-language":r[e(1130,"S][D")],authorization:this[e(1679,"4lNE")],"x-captcha-token":i,"x-client-id":this[e(1232,"Kz0m")+"d"],"x-device-id":this[e(1726,"(x@V")]},data:a},c=await he[e(650,"^k(F")](o)[e(912,"^k(F")](u=>u[e(2012,"5CRz")]);r[e(966,"yQcg")](c[e(765,"LQOt")],-387+-45*30+1*1937)?console[e(1092,"b6xp")](r[e(1618,"(x@V")]):r[e(1416,"ddaz")](c[e(1282,"1emX")],404)&&console[e(661,"LEbf")](r[e(823,"4Rvz")])}}async[Re(1352,"vj0u")+Re(1657,"0xQK")+Re(1392,"cuKs")](){let e=Re,r={tDCqe:e(2069,"0xQK")+e(1501,"xQ@E"),tsGHl:e(1846,"ba!z")+e(1772,"(x@V")+e(1660,"4Rvz"),HQtvG:e(2079,"xQ@E")+"7",ytZYQ:e(2087,"e7Kg")+e(1571,"4lNE"),pCcAU:e(1796,"xeQ!"),cStdv:e(2083,"PBAY")+e(1324,"ETwD")+e(1838,"1[yj")+e(1455,"Kz0m")+e(2035,"LEbf")+e(494,"yuFA")+e(467,"sH$b")+e(1233,"4Rvz")+e(1406,"!Uxx")+e(1313,"HvYk")+e(1433,"cuKs")+e(1308,"b6xp")+e(598,"wnSv")+e(2142,"SER]")+e(679,"6m#R")+e(1087,"xeQ!")+e(1524,"vj0u")+e(1805,"4lNE")+e(1123,"[SG!")+e(1152,"!Uxx")+e(1413,"fo9w")+e(832,"Ykeo")+e(1159,"(x@V"),qfMyA:e(1318,"LEbf")+e(1298,"Kz0m"),sQZwg:e(1575,"[SG!")+e(1804,"PBAY"),zJmmB:function(o,c){return o===c}},n=this[e(2076,"5CRz")+e(840,"*QbB")](this[e(1718,"6m#R")]),s={client_id:this[e(1825,"P6lM")+"d"],action:r[e(841,"0v5g")],device_id:this[e(1854,"xeQ!")],captcha_token:"",meta:{package_name:r[e(2100,"S][D")],client_version:r[e(2161,"ETwD")],captcha_sign:"1."+n,timestamp:r[e(1382,"yQcg")],user_id:this[e(2165,"0v5g")]}},i={method:r[e(1458,"0xQK")],url:this[e(1708,"ETwD")]+(e(1588,"(g97")+e(1145,"5CRz")+"it"),headers:{"User-Agent":r[e(1461,"6m#R")],"Accept-Encoding":r[e(704,"SER]")],"Content-Type":r[e(534,"xeQ!")]},data:s},a=await he[e(1016,"e7Kg")](i);if(r[e(1634,"^k(F")](a[e(1477,"xQ@E")],-1*9307+453*-15+-66*-247))return a[e(948,"LQOt")][e(2168,"cuKs")+e(1858,"^k(F")]}async[Re(475,"Kz0m")+Re(2112,"1[yj")](){let e=Re,r={eRKnU:e(1656,"ETwD")+e(517,"ddaz"),ANAnU:e(2107,"b6xp")+e(535,"T[sg"),fkVAt:e(952,"yQcg"),itawP:e(1044,"4Rvz")+e(657,"!Uxx")+e(562,"(g97")+e(495,"LQOt")+e(1576,"HvYk")+e(2021,"PBAY")+e(1921,"e7Kg")+e(1384,"e7Kg")+e(1460,"vL7T")+e(1109,"fo9w")+e(844,"LQOt")+"6",uswnb:e(1326,"ba!z")+e(2230,"LEbf"),yrbXd:function(a,o){return a===o}},n=JSON[e(1366,"yQcg")]({client_id:r[e(525,"1emX")],action:r[e(1168,"eBSR")],device_id:this[e(1601,"9aFJ")],captcha_token:"",meta:{phone_number:e(2056,"LEbf")+this[e(2252,"Kz0m")]}}),s={method:r[e(1746,"1[yj")],url:this[e(1957,"vj0u")]+(e(1502,"Kz0m")+e(1167,"cuKs")+"it"),headers:{"User-Agent":r[e(2150,"o3zZ")],"Content-Type":r[e(671,"e7Kg")]},data:n},i=await he[e(792,"S][D")](s);if(r[e(1506,"(g97")](i[e(2170,"4Rvz")],3*-2771+1300+7213))return i[e(935,"eBSR")][e(2135,"SER]")+e(1895,"*QbB")]}async[Re(2005,"Ykeo")](){let e=Re,r={sAboe:e(2110,"fo9w"),jngqY:e(695,"V8k*")+e(2146,"S][D")+e(1390,"4lNE")+e(1457,"yQcg")+e(2185,"wnSv")+e(1667,"Ykeo")+e(2243,"0v5g")+e(486,"P6lM")+e(711,"!Uxx")+e(1765,"Ykeo")+e(953,"^k(F")+e(593,"HvYk")+e(1920,"#uWk")+e(982,"0xQK")+e(1939,"P6lM"),kHUNH:e(529,"V8k*")+e(1751,"SER]"),fAvgy:function(o,c){return o===c},Wenge:e(1201,"ba!z")+e(2186,"sH$b"),JWxGS:e(1984,"^k(F"),jeWkD:function(o,c){return o+c},MIIBW:function(o,c){return o+c},TUGcb:e(1877,"4Rvz")+"d"},n=await this[e(475,"Kz0m")+e(516,"9aFJ")](),s=JSON[e(1904,"T[sg")]({username:e(1604,"Ykeo")+this[e(479,"ddaz")],password:this[e(2258,"1emX")],client_id:this[e(1825,"P6lM")+"d"]}),i={method:r[e(2182,"P6lM")],url:this[e(1367,"0xQK")]+(e(570,"vL7T")+e(2061,"yuFA")),headers:{"User-Agent":r[e(752,"vj0u")],"Content-Type":r[e(1211,"V8k*")],"x-captcha-token":n,"x-client-id":this[e(1427,"5CRz")+"d"],"x-device-id":this[e(584,"vj0u")]},data:s},a=await he[e(1740,"(x@V")](i);r[e(1864,"Ykeo")](a[e(1692,"!Uxx")],1*-5930+-9463+15593)&&(ts[e(1342,"2Cz1")](r[e(1440,"LQOt")],a[e(1492,"2Cz1")][e(1788,"yQcg")+e(979,"S][D")]),ts[e(1931,"fo9w")](r[e(619,"4Rvz")],r[e(816,"*QbB")](r[e(1301,"SER]")](a[e(1395,"ddaz")][e(691,"ETwD")]," "),a[e(561,"cuKs")][e(2189,"Kz0m")+"en"])),ts[e(911,"4lNE")](r[e(1047,"0v5g")],a[e(1219,"^k(F")][e(1261,"V8k*")]))}async[Re(1699,"gUA&")+Re(1498,"ba!z")](){let e=Re,r={QDpDj:function(n,s){return n===s},CtokB:function(n,s){return n===s},rcNdR:e(1209,"5CRz")+e(2075,"Ykeo")+e(1154,"0v5g")+e(629,"gUA&")+e(540,"G]4n"),cPbPJ:e(1388,"1[yj")+e(1729,"lk29"),bqiuV:e(885,"S][D"),tVKBk:e(1003,"2Cz1")+e(817,"4lNE")+e(1883,"gUA&")+e(1752,"2Cz1")+e(1112,"HvYk")+e(1559,"0xQK")+e(1125,"0xQK")+e(1359,"yuFA")+e(590,"0v5g")+e(782,"5CRz")+e(1732,"(x@V")+e(1343,"^k(F")+e(776,"5CRz")+e(1291,"wnSv")+e(1669,"1emX"),PIBdG:e(990,"P6lM")+e(859,"o3zZ"),JcHTf:function(n,s){return n(s)},WgNPJ:e(2068,"0xQK"),QDknd:e(930,"0xQK")+e(1530,"vL7T"),GoEeM:e(1322,"!Uxx"),aCkcU:function(n,s){return n+s},YLThb:e(940,"gUA&")+e(1023,"o3zZ"),pvVar:function(n,s){return n>s},txCey:function(n,s){return n/s},nWXCL:e(2145,"!Uxx")+e(1941,"S][D"),AfjUf:e(1609,"6m#R")+"\u767B\u5F55"};if(r[e(846,"LQOt")](this[e(857,"6m#R")],void 0)||r[e(1309,"1[yj")](this[e(759,"Kz0m")],"")){if(this[e(1100,"SER]")+e(979,"S][D")]){let n=JSON[e(2017,"cuKs")]({client_id:this[e(1176,"sH$b")+"d"],client_secret:r[e(2211,"2Cz1")],grant_type:r[e(1128,"sH$b")],refresh_token:this[e(569,"!Uxx")+e(1563,"6m#R")]}),s={method:r[e(628,"lk29")],url:this[e(856,"5CRz")]+(e(985,"!Uxx")+e(1546,"T[sg")),headers:{"User-Agent":r[e(1649,"1emX")],"Content-Type":r[e(1855,"BkCQ")],"x-client-id":this[e(2025,"^k(F")+"d"],"x-device-id":this[e(1601,"9aFJ")]},data:n},i=await r[e(1484,"(x@V")](he,s)[e(1320,"Ykeo")](a=>a[e(1508,"yuFA")]);if(r[e(1712,"4lNE")](i?.[e(765,"LQOt")],1608+4*-352)){console[e(1983,"0xQK")](r[e(678,"vL7T")]),ts[e(1220,"eBSR")](r[e(1348,"Kz0m")],i[e(854,"b6xp")][e(1617,"Kz0m")+e(975,"KLxp")]),ts[e(780,"[SG!")](r[e(1182,"^k(F")],r[e(1797,"ETwD")](r[e(914,"LQOt")](i[e(1635,"Ykeo")][e(2040,"KLxp")]," "),i[e(1117,"vj0u")][e(1086,"T[sg")+"en"]));return}}if(await this[e(947,"gUA&")](),!this[e(1405,"yuFA")])throw new Error(r[e(1346,"#uWk")])}else try{let n=JSON[e(1074,"ddaz")](Fl.default[e(1876,"gUA&")][e(610,"9aFJ")][e(1707,"o3zZ")](this[e(1572,"wnSv")][e(939,"!Uxx")](".")[1])[e(1491,"0v5g")](Fl.default[e(1311,"T[sg")][e(909,"5CRz")]));r[e(1015,"S][D")](n[e(613,"P6lM")],Math[e(1626,"5CRz")](r[e(1113,"yuFA")](Date[e(2072,"P6lM")](),642+-139*29+4389)))?console[e(1402,"!Uxx")](r[e(803,"fo9w")]):(console[e(1886,"P6lM")](r[e(1483,"LQOt")]),ts[e(466,"ba!z")](r[e(772,"wnSv")],""),await this[e(1741,"Kz0m")+e(2011,"yuFA")]())}catch{ts[e(1059,"xeQ!")](r[e(2218,"1[yj")],""),await this[e(1748,"P6lM")+e(526,"xQ@E")]()}}async[Re(2052,"LEbf")+Re(1818,"2Cz1")](e,r,n){let s=Re,i={vuIfH:s(1305,"lk29")+s(2054,"cuKs"),mTeZI:s(594,"4Rvz"),PmwNA:s(1820,"xeQ!")+s(1235,"PBAY")+s(1036,"gUA&")+s(1608,"lk29")+s(1612,"[SG!")+s(1749,"eBSR")+s(1817,"KLxp")+s(1408,"sH$b")+s(472,"yQcg")+s(2032,"yuFA")+s(973,"wnSv")+s(1223,"(g97")+s(2132,"fo9w")+s(1444,"LQOt")+s(511,"lk29")+s(608,"1[yj")+s(497,"1emX")+s(1642,"eBSR")+s(1836,"Kz0m")+s(1493,"KLxp")+s(2007,"KLxp")+s(2244,"xeQ!")+s(2139,"*QbB"),tNcKb:s(2022,"xQ@E"),zvfCO:s(1659,"LQOt"),KCCZL:s(1810,"yuFA")+s(1082,"vj0u"),sbFzV:s(1575,"[SG!")+s(1288,"LQOt"),oKgpb:function(a,o){return a===o},TEHmG:s(2045,"[SG!")+"2",aXolV:s(1338,"wnSv")+s(1017,"vj0u"),yfQBM:function(a,o){return a===o},gMePu:s(965,"(g97")+s(858,"PBAY"),TWQng:s(522,"vL7T")+s(1882,"HvYk")+s(1064,"1[yj"),iOiUB:function(a,o){return a!==o}};try{await this[s(1753,"fo9w")](),await this[s(1603,"S][D")+s(1423,"cuKs")](),await this[s(1175,"SER]")](),await this[s(1485,"1[yj")](e,r,n);let a=await this[s(677,"5CRz")+"Id"]();if(!a)throw new Error(i[s(1150,"(g97")]);let o=await this[s(850,"V8k*")+s(1937,"b6xp")+s(2051,"xeQ!")](),c={method:i[s(869,"yuFA")],url:this[s(712,"G]4n")]+(s(1002,"1[yj")+s(749,"e7Kg"))+a+(s(962,"PBAY")+s(1409,"lk29")+s(599,"cuKs")+s(931,"(x@V")+s(1523,"Ykeo")),headers:{"User-Agent":i[s(882,"e7Kg")],Connection:i[s(1724,"*QbB")],Accept:i[s(2060,"P6lM")],"Accept-Encoding":i[s(2134,"xeQ!")],"x-captcha-token":o,authorization:this[s(1596,"(x@V")],"content-type":i[s(2096,"ETwD")],"x-device-id":this[s(1969,"sH$b")]}},u;try{u=await he[s(1605,"yuFA")](c)}catch(l){if(i[s(2059,"#uWk")](l?.[s(942,"!Uxx")]?.[s(1465,"e7Kg")],538*-7+1*-6021+129*79)){let d=i[s(1290,"[SG!")][s(1811,"0xQK")]("|"),f=-13*-151+-3338*1+1375;for(;;){switch(d[f++]){case"0":if(!a)throw l;continue;case"1":await this[s(736,"0xQK")](59*23+-1271+-1*-1114);continue;case"2":u=await he[s(638,"V8k*")](c);continue;case"3":c[s(986,"LQOt")]=this[s(878,"vj0u")]+(s(787,"PBAY")+s(980,"eBSR"))+a+(s(761,"0xQK")+s(760,"1[yj")+s(1051,"0v5g")+s(1370,"2Cz1")+s(1907,"9aFJ"));continue;case"4":a=await this[s(1754,"LQOt")+"Id"](1149+-1*1146,1200);continue;case"5":console[s(2086,"xQ@E")](i[s(862,"cuKs")]);continue}break}}else throw l}if(i[s(1809,"1emX")](u[s(2114,"HvYk")],1640+-32*45)){let l=u[s(1847,"1emX")][i[s(822,"T[sg")]]||u[s(1843,"#uWk")][s(1052,"*QbB")][i[s(1464,"5CRz")]][s(1391,"HvYk")],d=new URL(l)[s(1677,"KLxp")];return i[s(1111,"4Rvz")](this[s(625,"[SG!")],"")&&(l=l[s(1331,"ETwD")](d,this[s(2259,"BkCQ")])),l}}catch(a){return console[s(2086,"xQ@E")](a),""}}},bg=new dY;async function s$e(t,e){let r=Re,n={dBEkA:function(c,u){return c(u)},hqaUA:function(c,u){return c===u},WxLxt:r(2036,"!Uxx"),BcAKI:function(c,u,l){return c(u,l)},zOCWO:function(c,u){return c(u)},kzZon:function(c,u){return c(u)},WWsoc:r(473,"vj0u"),Fnmoh:r(2173,"6m#R")};await n[r(919,"SER]")](Ub,e);let s=await bg[r(2210,"^k(F")+"ta"](t);if(!s)return null;let i=await n[r(1475,"PBAY")](nlr,n[r(1652,"6m#R")]),a=[],o=[];return Object[r(1162,"!Uxx")](s)[r(1141,"0xQK")](c=>{let u=r,l={Cgsfr:function(m,h){return n[ta(2067,"SER]")](m,h)},dgOyC:function(m,h){return n[ta(566,"xeQ!")](m,h)},bMhCP:n[u(480,"Kz0m")]},d=Array[u(528,"xeQ!")](s[c])?s[c]:[],f=d[u(1200,"yQcg")](m=>{let h=u;return{vod_id:[m[h(724,"b6xp")],m[h(1239,"1emX")],m[h(2155,"xeQ!")],m[h(1561,"2Cz1")+h(708,"lk29")],m[h(1602,"V8k*")]||""][h(1053,"9aFJ")]("*"),vod_name:m[h(2160,"fo9w")],vod_size:l[h(1270,"sH$b")](Number,m[h(1144,"cuKs")])||-796*9+25*-13+7489,vod_group:l[h(513,"yuFA")](c,l[h(2154,"LQOt")])?"":c}}),p=n[u(1992,"LEbf")](Is,i,f);p&&p[u(1283,"(x@V")]&&p[u(1267,"ba!z")]&&(a[u(2140,"vL7T")](p[u(1227,"2Cz1")]),o[u(974,"*QbB")](p[u(551,"LEbf")]))}),a[r(2126,"4lNE")]?{from:a[r(1008,"b6xp")](n[r(800,"cuKs")]),url:o[r(808,"eBSR")](n[r(600,"P6lM")])}:null}var n$e=t=>{let e=Re,r={TtmIL:function(i,a){return i(a)},wegGC:function(i,a){return i||a}},n=r[e(2006,"1emX")](String,r[e(1912,"2Cz1")](t,""))[e(1497,"yuFA")+"e"]();if(!n)return 3319+-4*1229+1597*1;if(n[e(1527,"ba!z")]("\u539F\u753B"))return 74*-314+-34936+12*13181;if(n[e(888,"fo9w")]("4k"))return-2*-1769+3+-9*-51;if(n[e(1977,"0v5g")]("2k"))return 345*-21+-5835+1885*8;let s=n[e(843,"xeQ!")](/(\d+)\s*p/);return s?r[e(1720,"4lNE")](Number,s[1222*1+3677+-79*62])||4857+-4337*-2+13531*-1:n[e(888,"fo9w")]("\u84DD\u5149")?1*5798+139+-4737:n[e(506,"!Uxx")]("\u8D85\u6E05")?3817*-1+2118+2779:n[e(509,"^k(F")]("\u9AD8\u6E05")?88*7+385+-1*281:n[e(2215,"vj0u")]("\u6D41\u7545")?1*3983+187*29+-8926:n[e(1745,"4lNE")]("\u6807\u6E05")?-8181+-19*-459:n[e(1837,"G]4n")]("\u666E\u753B")?360:n[e(2249,"9aFJ")]("\u6781\u901F")?-1*3011+-3610+-2287*-3:-2906*-2+-2025+-3787*1},slr=t=>{let e=Re,r={zMVfN:function(s,i){return sn$e(d[6954+8547*-1+27*59])-n$e(l[0]));let c=[];o&&c[r(1897,"(x@V")](o),a[r(951,"xeQ!")](l=>{let d=r;n[d(1358,"0xQK")](l[5967+-1076*1+-4891],"\u539F\u753B")&&c[d(733,"5CRz")](l)});let u=c[r(1515,"P6lM")]();if(!u[r(873,"*QbB")])throw new Error(n[r(1244,"b6xp")]);return{parse:0,url:u,header:i}}var u$e=require("crypto");var alr="https://api.guangyapan.com",olr="https://account.guangyapan.com",l$e="aMe-8VSlkrbQXpUR",d$e=200,clr="0123456789abcdef0123456789abcdef",f$e={Accept:"application/json, text/plain, */*","Content-Type":"application/json"},ulr=[".mp4",".mkv",".webm",".avi",".wmv",".flv",".mov",".mpeg",".mpg",".m4v",".ts",".m2ts",".3gp",".rm",".rmvb",".iso"],QB,fY={},ql={set(t,e){fY[t]=e,QB&&QB.push(`/guangyapan/${t}`,e)},get(t){return fY[t]}},llr=async t=>globalThis.getPanName?await globalThis.getPanName(t):t,hC=async t=>{QB=t.server.db,fY=await QB.getObjectDefault("/guangyapan",{})};function dlr(t){let e=/https?:\/\/(?:www\.)?guangyapan\.com\/s\/([^/#?]+)/i.exec(String(t||"").trim());return e?.[1]?{shareId:e[1]}:null}function p$e(t){if(!t)return{};if(typeof t=="string")try{return JSON.parse(t)}catch{return{msg:t}}return t}function gC(t,e=""){return[t?.msg,t?.message,t?.error_description,t?.error,e].map(n=>String(n||"").trim()).filter(Boolean)[0]||"unknown error"}function flr(t){let e=String(t||"").toLowerCase();return ulr.some(r=>e.endsWith(r))}function plr(t,e){return t?`${t}/${e}`:e}function mlr(t){let e=String(t||"").trim().toLowerCase();return e=e.replace(/^wdi10\./,""),e=e.replace(/x+$/g,""),e=e.replace(/[^0-9a-f]/g,""),e.length===32?e:""}function m$e(){let t=mlr(ql.get("device_id"));if(t)return t;try{t=(0,u$e.randomBytes)(16).toString("hex")}catch{t=clr}return ql.set("device_id",t),t}function hlr(t=""){let e={...f$e,Did:m$e(),Dt:"4"},r=String(t||"").trim();return r&&(e.Authorization=`Bearer ${r}`),e}function glr(){let t=m$e();return{...f$e,"X-Client-Id":l$e,"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"}}async function mC(t,e,r=""){let n=await fe.request({url:`${alr}${t}`,method:"POST",headers:hlr(r),data:e,validateStatus:()=>!0});return{status:Number(n?.status||0),data:p$e(n?.data)}}async function ylr(){let t=String(ql.get("refresh_token")||"").trim();if(!t)return"";let e=await fe.request({url:`${olr}/v1/auth/token`,method:"POST",headers:glr(),data:{client_id:l$e,grant_type:"refresh_token",refresh_token:t},validateStatus:()=>!0}),r=p$e(e?.data),n=String(r?.access_token||r?.accessToken||"").trim();if(!n)throw new Error(`\u5237\u65B0\u5149\u9E2D access_token \u5931\u8D25: ${gC(r,`status=${e?.status||0}`)}`);ql.set("access_token",n);let s=String(r?.refresh_token||r?.refreshToken||"").trim();return s&&ql.set("refresh_token",s),n}async function pY(t=!1){let e=t?"":String(ql.get("access_token")||"").trim();return e||await ylr()}async function h$e(t){let{status:e,data:r}=await mC("/nd.bizuserres.s/v1/get_share_access_token",{shareId:t}),n=String(r?.data?.accessToken||"").trim();if(!n)throw new Error(`\u83B7\u53D6\u5149\u9E2D\u5206\u4EAB accessToken \u5931\u8D25: ${gC(r,`status=${e}`)}`);return n}async function Alr(t,e="",r=0){let n={pageSize:d$e,accessToken:t,parentId:e,orderBy:0,sortType:0};r>0&&(n.cursor=r);let{status:s,data:i}=await mC("/nd.bizuserres.s/v1/get_share_page_files_list",n);if(s<200||s>=300)throw new Error(`\u83B7\u53D6\u5149\u9E2D\u5206\u4EAB\u76EE\u5F55\u5931\u8D25: ${gC(i,`status=${s}`)}`);return i?.data||{list:[]}}async function xlr(t){let e=await h$e(t),r=[{parentId:"",folderPath:""}],n=[];for(;r.length>0;){let{parentId:s,folderPath:i}=r.shift(),a=0,o=!0;for(;o;){let c=await Alr(e,s,a);(Array.isArray(c?.list)?c.list:[]).forEach(d=>{let f=String(d?.fileId||"").trim(),p=String(d?.fileName||"").trim();if(!(!f||!p)){if(Number(d?.resType||0)===2){r.push({parentId:f,folderPath:plr(i,p)});return}flr(p)&&n.push({vod_id:`${t}*${f}`,vod_name:p,vod_size:Number(d?.fileSize||d?.size||0),vod_group:i})}}),o=!!c?.hasMore;let l=Number(c?.cursor||0);if(!o||l<=a)break;a=l}}return n}async function mY(t,e,r=""){let{status:n,data:s}=await mC("/nd.bizuserres.s/v1/get_share_download_url",{fileId:t,accessToken:e},r);return{status:n,code:Number(s?.code||0),msg:gC(s,`status=${n}`),url:String(s?.data?.downloadUrl||"").trim()}}function a$e(t,e){return{status:t,code:Number(e?.code||0),msg:gC(e,`status=${t}`),data:e?.data||{}}}function o$e(t,e){return{status:500,code:0,msg:String(t?.message||t||e||"\u5149\u9E2D\u63A5\u53E3\u5F02\u5E38"),data:{}}}function g$e(t){let e=String(t?.msg||"").toLowerCase();return t?.status===401||t?.status===403||t?.code===401||t?.code===403||e.includes("token expired")||e.includes("unauthorized")}function blr(){return!!String(ql.get("refresh_token")||"").trim()}function _lr(t){let e=String(t?.msg||"");return g$e(t)||t?.code===207||e.includes("\u514D\u767B\u5F55\u4E0B\u8F7D")}async function c$e(t=!1){let e=await pY(t);if(!e)throw new Error("\u5149\u9E2D\u767B\u5F55\u6001\u7F3A\u5931");return e}async function y$e(t,e){let r="";try{r=await c$e(!1)}catch(i){return o$e(i,"\u83B7\u53D6\u5149\u9E2D\u767B\u5F55\u6001\u5931\u8D25")}let n=await mC(t,e,r),s=a$e(n.status,n.data);if(!g$e(s))return s;try{r=await c$e(!0),n=await mC(t,e,r),s=a$e(n.status,n.data)}catch(i){return o$e(i,"\u5237\u65B0\u5149\u9E2D\u767B\u5F55\u6001\u5931\u8D25")}return s}async function Elr(t,e){let r="",n=String(ql.get("access_token")||"").trim();try{r=await pY(!1)}catch(i){return{status:500,code:0,msg:String(i?.message||i||"\u83B7\u53D6\u5149\u9E2D\u767B\u5F55\u6001\u5931\u8D25"),url:""}}let s=await mY(t,e,r);if(!s.url&&n&&blr()&&_lr(s))try{r=await pY(!0),s=await mY(t,e,r)}catch(i){s={status:500,code:0,msg:String(i?.message||i||"\u5237\u65B0\u5149\u9E2D\u767B\u5F55\u6001\u5931\u8D25"),url:""}}return s}async function A$e(t,e=""){await hC(t);let r=await y$e("/nd.bizuserres.s/v1/file/get_file_list",{parentId:String(e||"").trim(),pageSize:d$e,orderBy:3,sortType:1,fileTypes:[]});if(r.status<200||r.status>=300)throw new Error(`\u83B7\u53D6\u5149\u9E2D\u4E2A\u4EBA\u76EE\u5F55\u5931\u8D25: ${r.msg}`);return{total:Number(r.data?.total||0),list:Array.isArray(r.data?.list)?r.data.list:[]}}async function x$e(t,e){await hC(t);let r=String(e||"").trim();if(!r)return{url:"",msg:"\u5149\u9E2D\u64AD\u653E\u53C2\u6570\u9519\u8BEF"};let n=await y$e("/nd.bizuserres.s/v1/get_res_download_url",{fileId:r}),s=String(n.data?.signedURL||n.data?.downloadUrl||"").trim();return s?{url:s,msg:""}:{url:"",msg:n.msg||"\u5149\u9E2D\u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740"}}async function b$e(t){let e=dlr(t);if(!e?.shareId)return{};let r=await xlr(e.shareId);return Is(await llr("guangyapan"),r)}async function _$e(t){try{await hC(t);let[e,r]=String(t.body?.id||"").trim().split("*");if(!e||!r)return{parse:0,url:"",msg:"\u5149\u9E2D\u64AD\u653E\u53C2\u6570\u9519\u8BEF"};let n=await h$e(e),s=await mY(r,n);return s.url||(String(ql.get("access_token")||"").trim()||String(ql.get("refresh_token")||"").trim())&&(s=await Elr(r,n)),s.url?{parse:0,url:["\u539F\u753B",s.url]}:{parse:0,url:"",msg:s.code===207||String(s.msg||"").includes("\u514D\u767B\u5F55\u4E0B\u8F7D")?"\u5149\u9E2D\u4E91\u76D8\u5206\u4EAB\u672A\u5F00\u542F\u514D\u767B\u5F55\u4E0B\u8F7D\uFF0C\u8BF7\u5148\u5728\u201C\u767B\u5F55-\u5149\u9E2D\u201D\u4E2D\u586B\u5165 access_token \u6216 refresh_token":s.msg||"\u83B7\u53D6\u5149\u9E2D\u4E0B\u8F7D\u5730\u5740\u5931\u8D25"}}catch(e){return{parse:0,url:"",msg:String(e?.message||e||"\u83B7\u53D6\u5149\u9E2D\u4E0B\u8F7D\u5730\u5740\u5931\u8D25")}}}var Bo=async t=>globalThis.getPanName?await globalThis.getPanName(t):t,Cu=t=>{let e=globalThis.Pans?.find(r=>r.key===t)?.name;return String(e||t)};function vlr(t){if(!t)return!1;if(Array.isArray(t.urls)&&t.urls.length>0)return!0;let e=Array.isArray(t.url)?t.url[t.url.length-1]:t.url;return!!String(e||"").trim()}var Gt=O0,Slr=t=>t==null||t==="root"?"":String(t),hY=t=>{if(!t)return[];if(Array.isArray(t))return t;let e=[];return Object.keys(t).forEach(r=>{let n=t[r];if(!Array.isArray(n))return;let s=Slr(r);n.forEach(i=>{e.push({...i,vod_group:i?.vod_group??s})})}),e};async function lr(t,e){return{}}async function Xt(t,e){t=Array.isArray(t)?t:[t];let r=t.map(u=>{let l=Si().find(f=>f.validator(u)),d=l?.key;return{key:d,name:l?.name||Cu(d),url:u,order:globalThis.Pans.findIndex(f=>f.key===d)}}).filter(u=>u.key);r.sort((u,l)=>u.order-l.order);let n=[],s=[],i=[];(await Promise.allSettled(r.map(async({key:u,url:l})=>{if(u==="ali")return await VLe(l);if(u==="quark")return await u5e(l);if(u==="uc")return await LMe(l);if(u==="tianyi"){let d=await _f.getShareData(l);if(!d)return null;let f=await Bo("tianyi");return Is(f,hY(d))}if(u==="yidong"){let d=await UV.getShareData(l),f=await Bo("yidong");return Is(f,hY(d))}if(u==="123"){let d=await ai.getShareData(l),f=await ai.getFilesByShareUrl(d),p=await Bo("123");return Is(p,hY(f))}return u==="115"?await K8e(l,e):u==="baidu"?await e$e(l,e):u==="xunlei"?await s$e(l,e):u==="guangyapan"?await b$e(l):null}))).forEach((u,l)=>{if(u.status==="fulfilled"){let p=u.value;p&&p.from&&p.url&&(n.push(p.from),s.push(p.url),i.push({name:r[l].name,url:r[l].url}));return}let d=String(r[l]?.key||"unknown"),f=String(u.reason?.message||u.reason||"unknown error");console.warn(`[Pan Detail] ${d} detail failed: ${f}`)});let o={};n.forEach((u,l)=>{o[u]?n[l]=`${u}-${++o[u]}`:o[u]=1});let c={};return i.forEach((u,l)=>{c[u.name]?i[l].name+=++c[u.name]:c[u.name]=1}),{froms:n.join("$$$"),urls:s.join("$$$"),links:i}}async function Zt(t,e){let r=t.params.site;if(r=="ali")return await Q4(t,e);if(r=="quark")return await K4(t,e);if(r=="uc")return await MMe(t,e);if(r=="baidu")return await FB(t,e)}async function er(t,e){let r=String(t.body.flag||"");if(r.startsWith(await Bo("ali")))return await H4(t,e);if(r.startsWith(await Bo("quark")))return await V4(t,e);if(r.startsWith(await Bo("uc")))return await WMe(t,e);if(r.startsWith(await Bo("tianyi"))){let n=t.body.id.split("*");await Wb(t);let s=n[2]||"video",i=n[3]||"",a=n[4]||"";if(s==="cas")try{let c=await _f.getShareTextPlayable(n[0],n[1],i,a);if(!c?.url){let u=_f.getShareTextResolveReason?_f.getShareTextResolveReason():"";throw new Error(u||"\u5929\u7FFCCAS\u89E3\u6790\u5931\u8D25")}return{parse:0,url:["\u539F\u753B",c.url],...c.header?{header:c.header}:{}}}catch(c){throw c}return{parse:0,url:["\u539F\u753B",await _f.getShareUrl(n[0],n[1])]}}else if(r.startsWith(await Bo("yidong"))){let n=t.body.id.split("*");return{parse:0,url:["\u539F\u753B",await UV.getSharePlay(n[0],n[1],n[2]||"",n[3]||"")]}}else if(r.startsWith(await Bo("123"))){await J0(t);let n=t.body.id.split("*");return{parse:0,url:["\u539F\u753B",await ai.getDownload(...n)],header:ai.getDownloadHeader()}}else if(r.startsWith("115\u79D2\u4F20123")){let n=await sY(t,e);if(!vlr(n))throw new Error(n?.msg||"115\u79D2\u4F20123\u672A\u8FD4\u56DE\u64AD\u653E\u5730\u5740");return n}else{if(r.startsWith(await Bo("115")))return await sY(t,e);if(r.startsWith(await Bo("baidu")))return await UB(t,e);if(r.startsWith(await Bo("xunlei")))return await i$e(t,e);if(r.startsWith(await Bo("guangyapan")))return await _$e(t,e)}}async function S$e(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);n.init=s.json(),yC(s.json()),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),yC(s.json());let i=!1;if(n.home.class&&n.home.class.length>0){let a=n.home.class[0].type_id,o={};if(n.home.filters){let c=n.home.filters[a];if(c)for(let u of c){let l=u.init;if(l){for(let d of u.value)if(d.v==l){o[u.key]=l;break}}}}if(s=await t.server.inject().post(`${r}/category`).payload({id:a,page:1,filter:!0,filters:o}),n.category=s.json(),yC(s.json()),n.category.list.length>0){i=!0;let c=n.category.list[0].vod_id;await v$e(t,c,n)}}if(s=await t.server.inject().post(`${r}/search`).payload({wd:"\u4ED9\u9006",page:1}),n.search=s.json(),!i&&n.search.list.length>0){let a=n.search.list[0].vod_id;await v$e(t,a,n)}return yC(s.json()),n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}async function v$e(t,e,r){let n=t.server.prefix,s=await t.server.inject().post(`${n}/detail`).payload({id:e});if(r.detail=s.json(),yC(s.json()),r.detail.list&&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{let e=globalThis.Pans?.find(n=>n.key===t)?.pic,r=String(e||"").trim();return r||Ilr[t]||""},Si=()=>[{key:"quark",name:Cu("quark"),validator:$4,pic:jl("quark")},{key:"uc",name:Cu("uc"),validator:U4,pic:jl("uc")},{key:"ali",name:Cu("ali"),validator:W4,pic:jl("ali")},{key:"baidu",name:Cu("baidu"),validator:OLe,pic:jl("baidu")},{key:"xunlei",name:Cu("xunlei"),validator:kLe,pic:jl("xunlei")},{key:"tianyi",name:Cu("tianyi"),validator:TLe,pic:jl("tianyi")},{key:"yidong",name:Cu("yidong"),validator:wLe,pic:jl("yidong")},{key:"123",name:Cu("123"),validator:RLe,pic:jl("123")},{key:"115",name:Cu("115"),validator:NLe,pic:jl("115")},{key:"guangyapan",name:Cu("guangyapan"),validator:PLe,pic:jl("guangyapan")}];var Clr=["https://tv.yydsys.cc","https://tv.yydsys.top","https://tv.214521.xyz","https://yydsys.de5.net"],gY=async t=>(await t.db.getObjectDefault("/duoduo",{}))?.urls||t.config.duoduo?.urls||Clr,Tlr=async(t,e)=>{await t.db.push("/duoduo/urls",e)},wlr=async t=>{await t.db.delete("/duoduo/urls")};async function yY(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await gY(e.server)})}),t.put("/urls",async(e,r)=>{await Tlr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await wlr(e.server),r.send({code:0})})}var AY,HB=t=>{if(!AY){let e=Date.now();AY=new Promise(async r=>{let n=await gY(t),s=await Zn(n,{"User-Agent":Gt});console.log("\u591A\u591A\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return AY},Fb={url:"https://zf.do-u.de5.net/",key:"woleigedouer",sendTimeout:1200,receiveTimeout:1500};async function Rlr(t){try{if(!Fb.url)return;let e={"Content-Type":"application/json"};Fb.key&&(e.Authorization=`Bearer ${Fb.key}`),await fe(Fb.url,{method:"POST",headers:e,data:JSON.stringify(t),sendTimeout:Fb.sendTimeout||1200,receiveTimeout:Fb.receiveTimeout||1500})}catch{}}function Nlr(t){if(typeof t!="string"||t.length===0)return t;let r=t.indexOf('"0?a:t}catch{return t}}async function xY(t){let e=await fe.get(t,{headers:{"User-Agent":Gt}});return Nlr(e.data)}function bY(t){return String(t||"").replace(/\/$/,"")}function Olr(t,e){let r=e;return t("#page a").each((n,s)=>{let i=t(s).attr("href"),a=i&&i.match(/\/page\/(\d+)\.html/i);if(!a)return;let o=parseInt(a[1],10);Number.isNaN(o)||(r=Math.max(r,o))}),r}async function klr(t,e){let r=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"4",type_name:"\u52A8\u6F2B"},{type_id:"5",type_name:"\u77ED\u5267"},{type_id:"3",type_name:"\u7EFC\u827A"},{type_id:"20",type_name:"\u7EAA\u5F55"}],n={};return n[1]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u6050\u6016",v:"\u6050\u6016"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u8B66\u532A",v:"\u8B66\u532A"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u52A8\u753B",v:"\u52A8\u753B"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u6B66\u4FA0",v:"\u6B66\u4FA0"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u67AA\u6218",v:"\u67AA\u6218"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u60CA\u609A",v:"\u60CA\u609A"},{n:"\u7ECF\u5178",v:"\u7ECF\u5178"},{n:"\u9752\u6625",v:"\u9752\u6625"},{n:"\u6587\u827A",v:"\u6587\u827A"},{n:"\u5FAE\u7535\u5F71",v:"\u5FAE\u7535\u5F71"},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u8FD0\u52A8",v:"\u8FD0\u52A8"},{n:"\u519C\u6751",v:"\u519C\u6751"},{n:"\u513F\u7AE5",v:"\u513F\u7AE5"},{n:"\u7F51\u7EDC\u7535\u5F71",v:"\u7F51\u7EDC\u7535\u5F71"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{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:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u5370\u5EA6",v:"\u5370\u5EA6"},{n:"\u610F\u5927\u5229",v:"\u610F\u5927\u5229"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u52A0\u62FF\u5927",v:"\u52A0\u62FF\u5927"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",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"},{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"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[2]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u9752\u6625\u5076\u50CF",v:"\u9752\u6625\u5076\u50CF"},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u5BB6\u5EAD",v:"\u5BB6\u5EAD"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u7ECF\u5178",v:"\u7ECF\u5178"},{n:"\u4E61\u6751",v:"\u4E61\u6751"},{n:"\u60C5\u666F",v:"\u60C5\u666F"},{n:"\u5546\u6218",v:"\u5546\u6218"},{n:"\u7F51\u5267",v:"\u7F51\u5267"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u5185\u5730",v:"\u5185\u5730"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65B0\u52A0\u5761",v:"\u65B0\u52A0\u5761"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",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"},{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"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[4]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u60C5\u611F",v:"\u60C5\u611F"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u70ED\u8840",v:"\u70ED\u8840"},{n:"\u63A8\u7406",v:"\u63A8\u7406"},{n:"\u641E\u7B11",v:"\u641E\u7B11"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u841D\u8389",v:"\u841D\u8389"},{n:"\u6821\u56ED",v:"\u6821\u56ED"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u673A\u6218",v:"\u673A\u6218"},{n:"\u8FD0\u52A8",v:"\u8FD0\u52A8"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u5C11\u5E74",v:"\u5C11\u5E74"},{n:"\u5C11\u5973",v:"\u5C11\u5973"},{n:"\u793E\u4F1A",v:"\u793E\u4F1A"},{n:"\u539F\u521B",v:"\u539F\u521B"},{n:"\u4EB2\u5B50",v:"\u4EB2\u5B50"},{n:"\u76CA\u667A",v:"\u76CA\u667A"},{n:"\u52B1\u5FD7",v:"\u52B1\u5FD7"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u56FD\u4EA7",v:"\u56FD\u4EA7"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u6B27\u7F8E",v:"\u6B27\u7F8E"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",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"},{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"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[5]=[{key:"year",name:"",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"},{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"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[3]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u9009\u79C0",v:"\u9009\u79C0"},{n:"\u60C5\u611F",v:"\u60C5\u611F"},{n:"\u8BBF\u8C08",v:"\u8BBF\u8C08"},{n:"\u64AD\u62A5",v:"\u64AD\u62A5"},{n:"\u65C5\u6E38",v:"\u65C5\u6E38"},{n:"\u97F3\u4E50",v:"\u97F3\u4E50"},{n:"\u7F8E\u98DF",v:"\u7F8E\u98DF"},{n:"\u7EAA\u5B9E",v:"\u7EAA\u5B9E"},{n:"\u66F2\u827A",v:"\u66F2\u827A"},{n:"\u751F\u6D3B",v:"\u751F\u6D3B"},{n:"\u6E38\u620F\u4E92\u52A8",v:"\u6E38\u620F\u4E92\u52A8"},{n:"\u8D22\u7ECF",v:"\u8D22\u7ECF"},{n:"\u6C42\u804C",v:"\u6C42\u804C"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5185\u5730",v:"\u5185\u5730"},{n:"\u6E2F\u53F0",v:"\u6E2F\u53F0"},{n:"\u65E5\u97E9",v:"\u65E5\u97E9"},{n:"\u6B27\u7F8E",v:"\u6B27\u7F8E"}]},{key:"year",name:"",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"},{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"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[20]=[{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],{class:r,filters:n}}async function Plr(t,e){let r=await HB(t.server),n=t.body.id,s=t.body.page,i=t.body.filters||{},a=parseInt(s,10);(!a||a<1)&&(a=1);let c=bY(r)+"/index.php/vod/show";i.area&&(c+=`/area/${i.area}`);let u=i.by||i.sort;u&&(c+=`/by/${u}`),i.class&&(c+=`/class/${i.class}`),c+=`/id/${n}/page/${a}`,i.year&&(c+=`/year/${i.year}`),c+=".html";let l=await xY(c),d=De(l),f=d("#main .module-item").map((m,h)=>{let y=d(h).find(".module-item-pic a").attr("href"),g=d(h).find(".module-item-pic img").attr("alt"),b=d(h).find(".module-item-pic img").attr("data-src")||d(h).find(".module-item-pic img").attr("src"),x=d(h).find(".module-item-text").text().trim();return{vod_id:y,vod_name:g,vod_pic:b,vod_remarks:x}}).get().filter(m=>m.vod_id&&m.vod_name),p=Olr(d,a);return{page:a,pagecount:p,limit:72,total:72*p,list:f}}async function Dlr(t,e){let r=await HB(t.server),n=bY(r),s=Array.isArray(t.body.id)?t.body.id:[t.body.id],i=[];for(let a of s)try{let o=await xY(`${n}${a}`),c=De(o),u={vod_id:a,vod_name:c(".page-title").first().text().trim(),vod_pic:c(".mobile-play .lazyload").first().attr("data-src")||c(".mobile-play img").first().attr("data-src")||c(".mobile-play img").first().attr("src"),vod_remarks:c('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""};c(".video-info-itemtitle").each((f,p)=>{let m=c(p).text(),h=c(p).next().find("a").map((y,g)=>c(g).text().trim()).get().filter(Boolean).join(", ");m.includes("\u5267\u60C5")?u.vod_content=c(p).next().find("p").text().trim():m.includes("\u5BFC\u6F14")?u.vod_director=h.trim():m.includes("\u4E3B\u6F14")&&(u.vod_actor=h.trim())});let l=c(".module-row-info p").map((f,p)=>c(p).text().trim()).get().filter(Boolean),d=await Xt(l,t);d&&(u.vod_play_from=d.froms,u.vod_play_url=d.urls,u.vod_links=d.links),Rlr({detail_url:`${n}${a}`,html:o,parsed:{vod_name:u.vod_name||"",vod_pic:u.vod_pic||"",vod_content:u.vod_content||"",panUrls:Array.isArray(l)?l:[]}}),i.push(u)}catch(o){console.error("duoduo detail fetch failed",a,o)}return{list:i}}async function Blr(t,e){let r=await HB(t.server),n=bY(r),s=t.body.page,i=t.body.wd,a=parseInt(s,10);(!a||a<1)&&(a=1);let o=encodeURIComponent(i||""),c=[`${n}/index.php/vod/search/page/${a}/wd/${o}.html`,`${n}/index.php/vod/search/wd/${o}.html`,`${n}/index.php/vod/search.html?wd=${o}&page=${a}`];for(let u of c)try{let l=await xY(u),d=De(l),f=d(".module-search-item").map((p,m)=>{let h=d(m).find(".video-serial"),y=d(m).find(".module-item-pic > img");return{vod_id:h.attr("href"),vod_name:h.attr("title"),vod_pic:y.attr("data-src")||y.attr("src"),vod_remarks:h.text()}}).get().filter(p=>p.vod_id&&p.vod_name);if(f.length>0)return{page:a,pagecount:f.length<10?a:a+1,list:f}}catch{}return{page:a,pagecount:a,list:[]}}var I$e={meta:{key:"duoduo",name:"\u300C\u76D8\u300D\u591A\u591A",type:3},api:async t=>{t.post("/init",lr),t.post("/home",klr),t.post("/category",Plr),t.post("/detail",Dlr),t.post("/play",er),t.post("/search",Blr),t.get("/test",S$e),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt)},check:HB};var Sw=Ce(Xn(),1),Uct=Ce(Q0(),1);var kct=Ce(require("http"),1);var Ew=Ce(require("fs"),1),oce=Ce(require("path"),1);var C$e=Ce(require("os"),1),Llr=t=>{if(!t)return!1;let e=typeof t.family=="string"?t.family:String(t.family||"");return e==="IPv4"||e==="4"},Mlr=t=>{let e=String(t||"").trim();return/^\d{1,3}(\.\d{1,3}){3}$/.test(e)?e.split(".").every(r=>{let n=Number(r);return Number.isInteger(n)&&n>=0&&n<=255}):!1},Wlr=t=>/^192\.168\./.test(t)||/^10\./.test(t)||/^172\.(1[6-9]|2\d|3[0-1])\./.test(t),_Y=t=>/^100\.(6[4-9]|[7-9]\d|1[01]\d|12[0-7])\./.test(t),$lr=t=>{let e=String(t||"").trim();return/^0\./.test(e)||/^127\./.test(e)||/^169\.254\./.test(e)||/^192\.0\.0\./.test(e)||/^192\.0\.2\./.test(e)||/^198\.18\./.test(e)||/^198\.19\./.test(e)||/^198\.51\.100\./.test(e)||/^203\.0\.113\./.test(e)||/^22[4-9]\./.test(e)||/^23\d\./.test(e)||/^24\d\./.test(e)||/^25[0-5]\./.test(e)},EY=(t="")=>/(rmnet|ccmni|pdp|wwan|cell|mobile|clat|v4-rmnet)/i.test(String(t||"")),Ulr=(t="")=>/(wlan|wi-?fi|eth|en\d|lan|bridge)/i.test(String(t||"")),vY=(t="")=>/(virtual|veth|vethernet|vmware|vbox|hyper-v|docker|podman|br-|wsl|utun|tun|tap|tailscale|zerotier|wireguard|wg|clash|mihomo|loopback|pseudo)/i.test(String(t||"")),Flr=t=>{let e=0;return/^192\.168\./.test(t.ip)?e+=300:/^172\.(1[6-9]|2\d|3[0-1])\./.test(t.ip)?e+=260:/^10\./.test(t.ip)?e+=220:_Y(t.ip)||(e+=180),Ulr(t.name)&&(e+=80),EY(t.name)&&(e-=320),vY(t.name)&&(e-=260),_Y(t.ip)&&(e-=220),e},Z0=function(){let t=String(process.env.CATPAW_HOST_IP||process.env.HOST_IP||"").trim();if(Mlr(t))return t;let e=C$e.default.networkInterfaces()||{},r=[];Object.entries(e).forEach(([a,o])=>{Array.isArray(o)&&o.forEach(c=>{if(!Llr(c)||c.internal)return;let u=String(c.address||"").trim();!u||u.startsWith("169.254.")||$lr(u)||r.push({ip:u,name:String(a||"")})})});let n=r.map(a=>({...a,score:Flr(a)})).sort((a,o)=>o.score-a.score),s=n.find(a=>{let o=EY(a.name),c=vY(a.name);return!o&&!c&&!_Y(a.ip)});if(s)return s.ip;let i=n.find(a=>Wlr(a.ip)&&!EY(a.name)&&!vY(a.name));return i?i.ip:"127.0.0.1"};kt();dr();vt();lL();Un();kt();vt();dr();mo();function Idr(t,e,r=!1){if(e===0&&!r)return t.map(i=>({...i,t:i.t!==void 0?i.t:parseFloat(i.p.split(",")[0])}));let n=t.reduce((i,a)=>{let o=a.t!==void 0?a.t:parseFloat(a.p.split(",")[0]),c=e===0?o.toFixed(2):Math.floor(o/(e*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"),p=u.p.replace(/\[([^\]]*)\]$/,`[${f}]`);return{cid:u.cid,p,m:d>1?`${c}\u200Ax\u200A${d}`:c,t:u.earliestT,like:u.like}})}).flat().sort((i,a)=>i.t-a.t)}function Cdr(t){if(!O.likeSwitch)return t;let e=new Set(["[hanjutv]","[sohu]","[bilibili1]","[migu]"]);return t.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")||e.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 Tdr(t,e){if(e===0)return t;let r=e*1e3,n=t.length;if(n<=r)return t;let s=n/r,i=[];for(let a=0;a([^<]+)<\/d>/g)].map(f=>({p:f[1],m:f[2]}));else if(t&&Array.isArray(t.danmuku)){let f={right:1,top:4,bottom:5},p=m=>m?parseInt(m.replace("#",""),16):16777215;i=t.danmuku.map(m=>({timepoint:m[0],ct:f[m[1]]!==void 0?f[m[1]]:1,color:p(m[2]),content:m[4]}))}else Array.isArray(t)&&(i=t);if(!i.length)return[];for(let f of i){let p,m,h,y,g;if("progress"in f&&"mode"in f&&"content"in f)h=(f.progress/1e3).toFixed(2),y=f.mode||1,g=f.color||16777215,m=f.content;else if("timepoint"in f)h=parseFloat(f.timepoint).toFixed(2),y=f.ct||0,g=f.color||16777215,m=f.content;else{if(!("p"in f))continue;let x=f.p.split(",");h=parseFloat(x[0]).toFixed(2),y=x[1]||0,x.length===4?g=x[2]||16777215:x.length>=8?g=x[3]||16777215:g=x[3]||x[2]||16777215,m=f.m}let b=f._sourceLabel||e;f.realTimeSource&&!b.includes(f.realTimeSource)&&(b=`${b}\uFF06${f.realTimeSource}`),!s&&/[&&]/.test(b)&&(s=!0),p=[h,y,g,`[${b}]`].join(","),r.push({p,m,cid:n++,like:f?.like})}let a=O.blockedWords.split(/(?<=\/),(?=\/)/).map(f=>{let p=f.trim();if(p.startsWith("/")&&p.endsWith("/"))try{return new RegExp(p.slice(1,-1))}catch(m){return E("error",`[Utils] [Danmu] \u65E0\u6548\u7684\u6B63\u5219\u8868\u8FBE\u5F0F: ${p}`,m),null}return null}).filter(f=>f!==null);E("info",`[Utils] [Danmu] \u539F\u59CB\u5C4F\u853D\u8BCD\u5B57\u7B26\u4E32: ${O.blockedWords}`),E("info",`[Utils] [Danmu] \u5C4F\u853D\u8BCD\u5217\u8868: ${(f=>Array.isArray(f)?f.map(p=>p.toString()).join(` +`):String(f))(a)}`);let c=r.filter(f=>!a.some(p=>p.test(f.m)));E("info",`[Utils] [Danmu] \u53BB\u91CD\u5206\u949F\u6570: ${O.groupMinute}`);let u=Idr(c,O.groupMinute,s),l=Cdr(u),d=Tdr(l,O.danmuLimit);if(O.convertTopBottomToScroll||O.convertColor==="white"||O.convertColor==="color"){let f=0,p=0;d=d.map(m=>{let h=m.p.split(",");if(h.length<3)return m;let y=parseInt(h[1],10),g=parseInt(h[2],10),b=!1;O.convertTopBottomToScroll&&(y===4||y===5)&&(f++,y=1,b=!0),O.convertColor==="white"&&g!==16777215&&(p++,g=16777215,b=!0);let x=O.colorPool.split(",").map(S=>parseInt(S.trim(),10)).filter(S=>!isNaN(S)&&S>=0&&S<=16777215),A=x[Math.floor(Math.random()*x.length)];if(O.convertColor==="color"&&g===16777215&&g!==A&&(p++,g=A,b=!0),b){let S=[h[0],y,g,...h.slice(3)].join(",");return{...m,p:S}}return m}),f>0&&E("info",`[Utils] [Danmu] [danmu convert] \u8F6C\u6362\u4E86 ${f} \u6761\u9876\u90E8/\u5E95\u90E8\u5F39\u5E55\u4E3A\u6D6E\u52A8\u5F39\u5E55`),p>0&&E("info",`[Utils] [Danmu] [danmu convert] \u8F6C\u6362\u4E86 ${p} \u6761\u5F39\u5E55\u989C\u8272`)}return O.danmuSimplifiedTraditional==="traditional"&&(d=d.map(f=>({...f,m:$o(f.m)})),E("info",`[Utils] [Danmu] [danmu convert] \u8F6C\u6362\u4E86 ${d.length} \u6761\u5F39\u5E55\u4E3A\u7E41\u4F53\u5B57`)),E("info",`[Utils] [Danmu] danmus_original: ${r.length}`),E("info",`[Utils] [Danmu] danmus_filter: ${c.length}`),E("info",`[Utils] [Danmu] danmus_group: ${u.length}`),E("info",`[Utils] [Danmu] danmus_limit: ${d.length}`),E("info","[Utils] [Danmu] Top 5 danmus:",JSON.stringify(d.slice(0,5),null,2)),d}function fJ(t){return typeof t.r!="number"||t.r<0||t.r>255||typeof t.g!="number"||t.g<0||t.g>255||typeof t.b!="number"||t.b<0||t.b>255?-1:t.r*256*256+t.g*256+t.b}function Jb(t){return typeof t!="string"||t.length!==6||!/^[0-9A-Fa-f]{6}$/.test(t)?16777215:parseInt(t,16)}function wdr(t){let e=` `;e+=` -`;let r=t.comments||[];if(Array.isArray(r))for(let n of r){let s=qir(n);e+=' '+Hir(n.m)+` -`}return e+="",e}function Uir(){let e=(Date.now()%1e8).toString().padStart(8,"0"),r=Math.floor(Math.random()*1e3).toString().padStart(3,"0");return e+r}function qir(t){let e=t.p.split(","),n=(parseFloat(e[0])||0).toFixed(1),s=e[1]||"1",i="25",a=e[2]||"16777215",o="1751533608",c="0",u="0",l=Uir();return`${n},${s},${i},${a},${o},${c},${u},${l}`}function jir(t){return t?String(t).replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'"):""}function Hir(t){return t?String(t).replace(/&/g,"&").replace(//g,">"):""}function ag(t,e){let r=e||O.danmuOutputFormat;if(r=r.toLowerCase(),_("info",`[Utils] [Danmu] [Format] Using format: ${r}`),r==="xml")try{let n=Fir(t);return I8e(n)}catch(n){return _("error",`[Utils] [Danmu] Failed to convert to XML: ${n.message}`),Be(t)}return Be(t)}ar();var ff=class{constructor({apiKey:e,baseURL:r="https://api.openai.com/v1",model:n="gpt-4o",systemPrompt:s=""}){this.apiKey=e,this.baseURL=r.replace(/\/$/,""),this.model=n,this.systemPrompt=s}async chat(e,r={}){let n={model:r.model||this.model,messages:e,temperature:r.temperature??0,max_tokens:r.maxTokens??8192,stream:!1},s=await Vr(`${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(e,r={}){let n=[];return this.systemPrompt&&n.push({role:"system",content:this.systemPrompt}),n.push({role:"user",content:e}),this.chat(n,r)}session(e={}){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,e);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(e){return{ok:!1,error:e.message}}}};var ga=Re(require("fs"),1),YL=Re(require("path"),1);_C();Pt();St();hn();no();var Hn=null,zL=0,No=!1,VL=0,Ab="0.00",WC=!1,U0=new Map,z8e="custom",K8e=null,Y8e=null,KL=YL.default.join(process.cwd(),".cache"),eWe="bangumi-data-cache.json",Qir=2e4,og=new Map,J8e={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"]},Gir="@wan0ge/bangumi-data",Vir="bangumi-data",zir=/(?:普通[话話]|[国國][语語]|中文配音|中配|中文|[粤粵][语語]配音|[粤粵]配|[粤粵][语語]|[台臺]配|[台臺][语語]|港配|港[语語]|字幕|助[听聽]|æ—¥[语語]|日配|原版|原[声聲])(?:版)?/,tWe=/(?:\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,Kir=/\s+/g,Yir=/[,,]/,Jir=/[::]/;function dK(t){let e=new Map,r=t.length;for(let n=0;n=0?"custom":"official";return _("info",`[Utils] [Bangumi-Data] \u7248\u672C\u5BF9\u6BD4: @wan0ge/bangumi-data@${t} vs bangumi-data@${e} => \u4F7F\u7528${n==="custom"?"\u81EA\u5B9A\u4E49":"\u5B98\u65B9"}\u6E90`),n}catch(t){return _("warn",`[Utils] [Bangumi-Data] \u6570\u636E\u6E90\u9009\u62E9\u5F02\u5E38\uFF0C\u56DE\u9000\u5230\u81EA\u5B9A\u4E49\u6E90: ${t.message}`),"custom"}}async function JL(t,e=!1,r=null){if(!O.useBangumiData)return;let n=null,s=O.bangumiDataCacheDays!==void 0?O.bangumiDataCacheDays:7,i=s*24*60*60*1e3;if(t==="node"?ga.default.existsSync(KL)?n=YL.default.join(KL,eWe):WC||(_("warn","[Utils] [Bangumi-Data] \u672A\u68C0\u6D4B\u5230\u6839\u76EE\u5F55\u7684 .cache \u6587\u4EF6\u5939\uFF01"),_("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"),_("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"),WC=!0):WC||(_("info",`[Utils] [Bangumi-Data] \u68C0\u6D4B\u5230 ${t} \u4E91\u73AF\u5883\uFF0C\u5F53\u524D\u8FD0\u884C\u4E8E\u7EAF\u5185\u5B58\u52A0\u901F\u6A21\u5F0F\u3002`),WC=!0),No&&Date.now()-VL>Qir&&(_("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..."),No=!1),Hn){if(s>0&&Date.now()-zL{No=!1}));return}if(n&&ga.default.existsSync(n))try{let a=ga.default.statSync(n),o=process.memoryUsage().heapUsed,c=Date.now();Hn=JSON.parse(ga.default.readFileSync(n,"utf-8")),Hn?.items?.length>0&&Hn.items[0]._flatText===void 0?(Hn=rWe(Hn),ga.default.writeFileSync(n,JSON.stringify(Hn),"utf-8"),dK(Hn.items)):Hn?.items?.length>0&&dK(Hn.items);let u=process.memoryUsage().heapUsed,l=Date.now()-c;Ab=Math.max(0,(u-o)/1024/1024).toFixed(2);let d=(process.memoryUsage().rss/1024/1024).toFixed(2);zL=Date.now(),_("info",`[Utils] [Bangumi-Data] \u6210\u529F\u4ECE\u672C\u5730\u78C1\u76D8\u52A0\u8F7D\u57FA\u7840\u6570\u636E\uFF0C\u6761\u76EE\u6570: ${Hn.items.length}\uFF0C\u89E3\u6790\u8017\u65F6: ${l} ms\uFF0C\u7EA6\u5360\u5185\u5B58: ${Ab} MB`),(s===0||Date.now()-a.mtimeMs>=i)&&e&&!No&&(_("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...`),No=!0,VL=Date.now(),lK(n).finally(()=>{No=!1}));return}catch(a){_("error","[Utils] [Bangumi-Data] \u78C1\u76D8\u7F13\u5B58\u89E3\u6790\u5931\u8D25\uFF0C\u51C6\u5907\u91CD\u65B0\u4E0B\u8F7D",a.message),Hn=null}if(No){if(e){_("info","[Utils] [Bangumi-Data] \u6B63\u5728\u7B49\u5F85\u57FA\u7840\u6570\u636E\u4E0B\u8F7D\u5B8C\u6210...");let a=0;for(;No;){if(a>150){_("warn","[Utils] [Bangumi-Data] \u7B49\u5F85\u6392\u961F\u8D85\u65F6\uFF0C\u653E\u5F03\u7B49\u5F85"),No=!1;break}await new Promise(o=>setTimeout(o,100)),a++}}}else{_("info","[Utils] [Bangumi-Data] \u672A\u547D\u4E2D\u4EFB\u4F55\u6709\u6548\u7F13\u5B58\uFF0C\u6B63\u5728\u83B7\u53D6\u57FA\u7840\u6570\u636E..."),No=!0,VL=Date.now();let a=lK(n).finally(()=>{No=!1});e?await a:(_("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"&&(_("info","[Utils] [Bangumi-Data] \u8C03\u7528 ctx.waitUntil \u5EF6\u957F Serverless \u751F\u547D\u5468\u671F"),r.waitUntil(a)))}}var ear=new Set(["anidb","bangumi","gamer","gamer_hk","bilibili","bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw","tmdb"]);function rWe(t){if(!t||!t.items)return{items:[]};let e=[];for(let r of t.items){let n=[];if(r.sites){for(let o of r.sites)if(ear.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(p=>{_("info",`[\u8BF7\u6C42\u6A21\u62DF] HTTP GET: ${p}`)});let o=s.map(async(p,m)=>{let h=a[m],A=await ub(p,{...i,signal:h.signal});if(!A.ok)throw new Error(`HTTP error ${A.status} from ${p}`);let g=await A.json(),b=g.items?g.items.length:0;if(h.signal.aborted)throw new Error("Aborted before parsing");let y=Date.now(),x=rWe(g),v=Date.now()-y,C=null;return t&&!h.signal.aborted&&(C=`${t}.tmp${m}`,ga.default.writeFileSync(C,JSON.stringify(x),"utf-8")),{index:m,url:p,tempFilePath:C,resultData:x,pruneCost:v,originalCount:b}}),c=await Promise.any(o);a.forEach((p,m)=>{m!==c.index&&p.abort()}),t&&(s.forEach((p,m)=>{if(m!==c.index){let h=`${t}.tmp${m}`;if(ga.default.existsSync(h))try{ga.default.unlinkSync(h)}catch{}}}),ga.default.renameSync(c.tempFilePath,t));let u=((Date.now()-r)/1e3).toFixed(2);_("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)`),Hn=c.resultData,n=c.pruneCost,dK(Hn.items),og.clear();let l=process.memoryUsage().heapUsed,d=((Date.now()-r)/1e3).toFixed(2);Ab=Math.max(0,(l-e)/1024/1024).toFixed(2);let f=(process.memoryUsage().rss/1024/1024).toFixed(2);zL=Date.now(),_("info",`[Utils] [Bangumi-Data] \u52A0\u8F7D\u5230\u5185\u5B58\u6210\u529F\uFF0C\u4FDD\u7559/\u539F\u59CB\u6761\u76EE\u6570: ${Hn.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: ${Ab} MB (\u5F53\u524D\u9879\u76EE\u603B\u5360\u7528: ${f} MB)`)}catch(e){let r=e instanceof AggregateError?e.errors.map(n=>n.message).join(" | "):e.message;_("error","[Utils] [Bangumi-Data] \u4E0B\u8F7D\u5931\u8D25 (\u6240\u6709 CDN \u5747\u672A\u54CD\u5E94\u6216\u62A5\u9519):",r)}}async function Au(t,e){if(!Hn||!Hn.items)return[];let r=og.get(t);if(!r){if(r=(async()=>{let c=[],u=[t];try{u=[...new Set([t,Gt(t),Ro(t)])]}catch{}let d=[Gt(t)].map(h=>{let A=h.replace(tWe,"");return A=Fr(A).toLowerCase(),A.length>=2?A:Fr(h).toLowerCase()}).filter(h=>h.length>0),f=null;if(typeof U0<"u"&&U0.size>0&&d.length>0){let h=new Set;for(let A of d){let g=Array.from(new Set(A.replace(Kir,"")));if(g.length===0)continue;g.sort((x,v)=>{let C=U0.get(x)?.length||0,R=U0.get(v)?.length||0;return C-R});let b=U0.get(g[0]);if(!b||b.length===0)continue;let y=new Set(b);for(let x=1;xA);let p=Hn.items,m=u.length;for(let h=0;h100){let c=og.keys().next().value;og.delete(c)}og.set(t,r)}let n=await r,s=n,i=$t(t);if(i!==null){let c=n.filter(({item:u})=>{let l=Tt(u.title).season;if(l===null&&u.titleTranslate)for(let d in u.titleTranslate){let f=u.titleTranslate[d];for(let p=0;p1?(l||1)===i:i===1?l===null||l===1:!0});c.length>0&&(s=c)}let a=zir,o=[];for(let{item:c,titles:u}of s){if(!c.sites)continue;let l=c.sites.filter(d=>e.includes(d.site));for(let d of l){let f="TV\u52A8\u753B",p="tvseries";c.type==="movie"?(f="\u5267\u573A\u7248",p="movie"):c.type==="tv"?(f="TV\u52A8\u753B",p="tvseries"):c.type==="ova"?(f="OVA",p="ova"):c.type==="web"&&(f="WEB\u52A8\u753B",p="web");let m="";["bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw"].includes(d.site)&&(m="\uFF08\u6E2F\u6FB3\u53F0\uFF09");let h=[],A=[];if(d.comment){let b=d.comment.split(Yir),y=new Map;if(d.related&&Array.isArray(d.related))for(let x of d.related)x.id&&y.set(String(x.id),x.season_id||null);for(let x of b){let v=x.split(Jir);if(v.length>=2){let C=v[0].trim(),R=v[1].trim();R&&a.test(C)&&h.push({title:c.title,titles:[...u],begin:c.begin,siteId:R,matchedSiteKey:d.site,type:c.type,typeStr:f,typeId:p,titleSuffix:` ${C}${m}`,season_id:y.get(R)||null})}else if(v.length===1&&v[0].trim()){let C=v[0].trim();a.test(C)&&A.push(C)}}}let g="";A.length>0&&(g+=` ${A.join(" ")}`),g+=m,o.push({title:c.title,titles:[...u],begin:c.begin,siteId:d.id,matchedSiteKey:d.site,type:c.type,typeStr:f,typeId:p,titleSuffix:g,season_id:d.season_id||null,video_sn:d.video_sn||null}),o.push(...h)}}return o}function nWe(t=!1){if(Hn!==null){let e=Hn.items?Hn.items.length:0;Hn=null,zL=0,og.clear(),U0.clear();let r=(process.memoryUsage().rss/1024/1024).toFixed(2);_("info",`[Utils] [Bangumi-Data] \u5185\u5B58\u7F13\u5B58\u5DF2\u4E3B\u52A8\u91CA\u653E (\u539F\u6761\u76EE\u6570: ${e}\uFF0C\u91CA\u653E: ${Ab} MB\uFF0C\u5F53\u524D\u9879\u76EE\u603B\u5360\u7528: ${r} MB)`),Ab="0.00",WC=!1}if(t&&ga.default.existsSync(KL))try{let e=YL.default.join(KL,eWe);ga.default.existsSync(e)&&ga.default.unlinkSync(e);for(let r=0;r<5;r++){let n=`${e}.tmp${r}`;ga.default.existsSync(n)&&ga.default.unlinkSync(n)}_("info","[Utils] [Bangumi-Data] \u78C1\u76D8\u7F13\u5B58\u5DF2\u540C\u6B65\u6E05\u7406")}catch(e){_("error",`[Utils] [Bangumi-Data] \u78C1\u76D8\u7F13\u5B58\u6E05\u7406\u5931\u8D25: ${e.message}`)}}Pt();ar();St();no();kL();UT();$n();Sz();hn();Pt();St();ar();no();var XB=new Map;async function qT(t,e={}){let n=`https://api.tmdb.org/3/${t}`,s=O.makeProxyUrl(n);try{let i=await ge(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:e.signal});return i.status!=200?null:i}catch(i){if(i.name==="AbortError")throw i;return _("error","[Utils] [TMDB] Api error:",{message:i.message,name:i.name,stack:i.stack}),null}}async function ZB(t,e="multi",r={}){let{page:n=1,maxPages:s=3,signal:i=null}=r;if(r.page!==void 0){let o=`search/${e}?api_key=${O.tmdbApiKey}&query=${encodeURIComponent(t)}&language=zh-CN&page=${n}`;return await qT(o,{signal:i})}let a=[];for(let o=1;o<=s;o++){if(i&&i.aborted)throw new DOMException("Aborted","AbortError");let c=`search/${e}?api_key=${O.tmdbApiKey}&query=${encodeURIComponent(t)}&language=zh-CN&page=${o}`,u=await qT(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 _("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 w0r(t,e,r={}){let n=`${t}/${e}?api_key=${O.tmdbApiKey}&language=ja-JP`;return await qT(n,r)}async function ynt(t,e,r={}){let n=`${t}/${e}/external_ids?api_key=${O.tmdbApiKey}`;return await qT(n,r)}async function R0r(t,e,r={}){let n=`${t}/${e}/alternative_titles?api_key=${O.tmdbApiKey}`;return await qT(n,r)}function N0r(t,e,r=""){let n=t?.data?.results||t?.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&&!uf(i(c))),o=>!uf(i(o))];for(let o of a){let c=n.find(o);if(c){let u=i(c);return _("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 O0r(t,e,r=""){let n=t.name||t.title||"";if(r&&n.toLowerCase().trim()===r.toLowerCase().trim()||!(uf(n)||r&&n.toLowerCase().trim()!==r.toLowerCase().trim()))return n;_("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=t.media_type||(t.name?"tv":"movie");try{if(e&&e.aborted)throw new DOMException("Aborted","AbortError");let a=await R0r(i,t.id,{signal:e});if(e&&e.aborted)throw new DOMException("Aborted","AbortError");let o=N0r(a,i,r);return o?(_("info",`[Utils] [TMDB] \u5C06\u4F7F\u7528\u4E2D\u6587\u522B\u540D\u8FDB\u884C\u76F8\u4F3C\u5339\u914D: ${o}`),o):(_("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 _("error",`[Utils] [TMDB] \u83B7\u53D6\u522B\u540D\u5931\u8D25: ${a.message}`),n}}async function Zb(t,e=null,r="Unknown"){let n=_nt(t);if(n!==t&&_("info",`[Utils] [TMDB] \u4F18\u5316\u641C\u7D22\u5173\u952E\u8BCD: "${t}" -> "${n}"`),O.useBangumiData){let o=await Au(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 _("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(!O.tmdbApiKey)return _("info","[Utils] [TMDB] \u672A\u914D\u7F6EAPI\u5BC6\u94A5\uFF0C\u8DF3\u8FC7TMDB\u7F51\u7EDC\u641C\u7D22"),null;let s=XB.get(n);if(s)_("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=P=>{let L=P.genre_ids||[],M=P.genres||[],k=L.length>0?L:M.map(W=>W.id),B=P.original_language||"";return k.includes(16)?{isValid:!0,reason:"\u660E\u786E\u52A8\u753B\u7C7B\u578B(genre_id: 16)"}:B==="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: ${B}, genres: ${k.join(",")})`}},d=(P,L)=>{let M=J=>J.toLowerCase().replace(/\s+/g,"").replace(/[::、,。!?;""''()【】《》]/g,"").trim(),k=M(P),B=M(L);if(k===B)return 1;let Z=k.length=B.length?k:B;if(W.includes(Z)&&Z.length>0)return .6+Z.length/W.length*.3;let F=P.length>L.length?P:L,V=P.length>L.length?L:P;if(F.length===0)return 1;let j=(J,se)=>{J=J.toLowerCase(),se=se.toLowerCase();let oe=[];for(let ue=0;ue<=J.length;ue++){let Ce=ue;for(let we=0;we<=se.length;we++)if(ue===0)oe[we]=we;else if(we>0){let qe=oe[we-1];J.charAt(ue-1)!==se.charAt(we-1)&&(qe=Math.min(Math.min(qe,Ce),oe[we])+1),oe[we-1]=Ce,Ce=qe}ue>0&&(oe[se.length]=Ce)}return oe[se.length]};return(F.length-j(F,V))/F.length};if(_("info",`[Utils] [TMDB] \u6B63\u5728\u641C\u7D22 (Shared Task): ${n}`),u.aborted)throw new DOMException("Aborted","AbortError");let f=await ZB(n,"multi",{signal:u});if(!f||!f.data)return _("info","[Utils] [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 _("info","[Utils] [TMDB] TMDB\u672A\u627E\u5230\u4EFB\u4F55\u7ED3\u679C"),null;let m=[],h=[];for(let P of p.results){let L=l(P);if(L.isValid)m.push(P);else{let M=P.name||P.title||"\u672A\u77E5";h.push(`${M}(${L.reason})`)}}if(m.length===0)return _("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;_("info",`[Utils] [TMDB] \u6570\u636E\u6E05\u6D17\u5B8C\u6210: \u4FDD\u7559 ${m.length} \u4E2A\u6709\u6548\u6761\u76EE\u53C2\u4E0E\u5339\u914D\uFF0C\u8FC7\u6EE4 ${h.length} \u4E2A\u65E0\u5173\u6761\u76EE${h.length>0?"\uFF0C\u8FC7\u6EE4\u8BE6\u60C5: "+h.join(", "):""}`);let A=null,g=-1,b=null,y=0,x=5,v=!1;for(let P of m){let L=P.name||P.title||"";if(!L)continue;let M=d(n,L),k=P.original_name||P.original_title||"",B=k?d(n,k):0,Z=Math.max(M,B);if(Z===1&&!v){v=!0,_("info",`[Utils] [TMDB] \u5339\u914D\u68C0\u67E5 "${L}" - \u76F8\u4F3C\u5EA6: 100.00% (\u5B8C\u5168\u5339\u914D\uFF0C\u8DF3\u8FC7\u540E\u7EED\u6240\u6709\u522B\u540D\u641C\u7D22)`),Z>g&&(g=Z,A=P,b=L);continue}let W,F,V=L.toLowerCase().trim()===n.toLowerCase().trim();if(v||V)W=L,F=Z,v&&V?_("info",`[Utils] [TMDB] \u5339\u914D\u68C0\u67E5 "${L}" - \u76F8\u4F3C\u5EA6: ${(F*100).toFixed(2)}% (\u5DF2\u627E\u5230\u5B8C\u5168\u5339\u914D\uFF0C\u8DF3\u8FC7\u522B\u540D\u641C\u7D22)`):_("info",`[Utils] [TMDB] \u5339\u914D\u68C0\u67E5 "${L}" - \u76F8\u4F3C\u5EA6: ${(F*100).toFixed(2)}%`);else{if(yg&&(g=F,A=P,b=W)}if(!A||g<.4)return _("info",`[Utils] [TMDB] \u6700\u4F73\u5339\u914D\u76F8\u4F3C\u5EA6\u8FC7\u4F4E\u6216\u672A\u627E\u5230\u5339\u914D (${A?(g*100).toFixed(2)+"%":"N/A"}),\u8DF3\u8FC7`),null;_("info",`[Utils] [TMDB] TMDB\u6700\u4F73\u5339\u914D: ${b}, \u76F8\u4F3C\u5EA6: ${(g*100).toFixed(2)}%`);let R=A.media_type||(A.name?"tv":"movie"),w=await w0r(R,A.id,{signal:u}),N;if(!w||!w.data)N=A.name||A.title,_("info",`[Utils] [TMDB] \u4F7F\u7528\u4E2D\u6587\u641C\u7D22\u7ED3\u679C\u6807\u9898: ${N}`);else{let P=typeof w.data=="string"?JSON.parse(w.data):w.data;N=P.original_name||P.original_title||P.name||P.title,_("info",`[Utils] [TMDB] \u627E\u5230\u65E5\u8BED\u539F\u540D: ${N}`)}return{title:N,cnAlias:b}}catch(u){return u.name==="AbortError"?(_("info",`[Utils] [TMDB] \u540E\u53F0\u641C\u7D22\u4EFB\u52A1\u5DF2\u5B8C\u5168\u7EC8\u6B62 (${n})`),null):(_("error","[Utils] [TMDB] Background Search error:",{message:u.message,name:u.name,stack:u.stack}),null)}})().finally(()=>{XB.delete(n)})},XB.set(n,s),_("info",`[Utils] [TMDB] \u542F\u52A8\u65B0\u641C\u7D22\u4EFB\u52A1: ${n}`)}s.refCount++;let i=()=>{XB.get(n)===s&&(s.refCount--,s.refCount<=0&&(_("info",`[Utils] [TMDB] \u6240\u6709\u8C03\u7528\u8005\u5DF2\u53D6\u6D88\uFF0C\u7EC8\u6B62\u540E\u53F0\u8BF7\u6C42: ${n}`),s.controller.abort()))},a;if(e){if(e.aborted)return i(),_("info",`[Utils] [TMDB] \u641C\u7D22\u5DF2\u88AB\u4E2D\u65AD (Source: ${r})`),null;e.addEventListener("abort",i)}try{let o=new Promise((c,u)=>{e&&(a=()=>u(new DOMException("Aborted","AbortError")),e.addEventListener("abort",a))});return await Promise.race([s.promise,o])}catch(o){return o.name==="AbortError"?(_("info",`[Utils] [TMDB] \u641C\u7D22\u5DF2\u88AB\u4E2D\u65AD (Source: ${r})`),null):(_("error",`[Utils] [TMDB] \u641C\u7D22\u5F02\u5E38: ${o.message}`),null)}finally{e&&(e.removeEventListener("abort",i),a&&e.removeEventListener("abort",a))}}async function xnt(t,e=null,r=null){if(!uf(t))return t;if(O.useBangumiData){let i=_nt(t),a=Au(i,["tmdb","bangumi","anidb"]);if(a&&a.length>0){let o=a[0],c=o.titles.find(u=>u&&!uf(u))||o.titles[1];if(c&&!uf(c))return _("info",`[Utils] [TMDB] \u547D\u4E2D\u672C\u5730 Bangumi Data: ${t} -> ${c}\uFF08\u68C0\u7D22\u8BCD\uFF1A${i}\uFF09`),c}}let n=e!=null,s=n?"tv":"movie";try{let i=await ZB(t,s);if(!i.data.results||i.data.results.length===0)return _("info","[Utils] [TMDB] TMDB\u672A\u627E\u5230\u4EFB\u4F55\u7ED3\u679C"),t;let o=i.data.results.find(u=>{let l=n?u.name:u.title;return l&&!uf(l)})||i.data.results[0],c=n?o.name:o.title;return c?(_("info",`\u539F\u6807\u9898: ${t} -> \u4E2D\u6587\u6807\u9898: ${c}`),c):t}catch(i){return _("error","\u67E5\u8BE2 TMDB \u65F6\u51FA\u9519:",i),t}}var bnt=/(?:\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,Ant=/[ ::~~]/;function Ent(t){let e=t.match(bnt);return e?e.index:t.length}function _nt(t){let e=Ent(t);return e{let a=i.org_title||i.title||"";return a.substring(0,Ent(a))}),s="";if(n.length>0){let i=n.concat().sort(),a=i[0],o=i[i.length-1],c=0;for(;c1&&_("info",`[Utils] [TMDB] \u8BA1\u7B97\u51FA\u6700\u957F\u516C\u5171\u524D\u7F00 (LCP): "${s}"`);for(let i of t){let a=i.title||"";if(!(i.isLocalPriority||a.includes(e)))if(s&&s.length>1&&a.startsWith(s)){let o=a.substring(s.length).trim();i._displayTitle=o?`${e}${o.match(/^[~~::]/)?"":" "}${o}`:e,_("info",`[Utils] [TMDB] [LCP\u6A21\u5F0F] "${a}" -> "${i._displayTitle}"`)}else{let o=a.match(Ant);if(o){let c=a.substring(0,o.index).trim(),u=a.substring(o.index);if(c&&bnt.test(c)){let l=u.trim().match(Ant),d=l?u.trim().substring(l.index):"";i._displayTitle=`${c} ${e}${d}`,_("info",`[Utils] [TMDB] [\u524D\u7F00\u4FDD\u62A4\u6A21\u5F0F] "${a}" -> "${i._displayTitle}"`)}else i._displayTitle=e+u,_("info",`[Utils] [TMDB] [\u5206\u9694\u7B26\u6A21\u5F0F] "${a}" -> "${i._displayTitle}"`)}else uf(a)?(i._displayTitle=e,_("info",`[Utils] [TMDB] [\u7EAF\u5916\u6587\u5168\u66FF\u6A21\u5F0F] "${a}" -> "${i._displayTitle}"`)):_("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`)}}}Pt();St();$n();no();hn();var Iu="$$$",Sg="&",P0r=!1,ai=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}}),Ql=Object.freeze({SIMILARITY_MIN:.65,SIMILARITY_STRONG:.98,TIER_DEFAULT:.001,TIER_CN:.4,TIER_PART:.5,COLLECTION_RATIO:4,COLLECTION_DIFF:6});function mt(t,...e){typeof e[0]=="string"&&e[0].includes("[Merge-Check]")&&!P0r||_(t,...e)}var ye={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}},r4=[{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"}],D0r=[{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}],k0r=[{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"}];function L0r(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function vie(t){if(typeof structuredClone=="function")try{return structuredClone(t)}catch{}return JSON.parse(JSON.stringify(t))}function oo(t){if(!t)return"Unspecified";let e=t.toLowerCase();return ye.Lang.CN.test(e)?"CN":ye.Lang.JP.test(e)?"JP":"Unspecified"}function Dnt(t){if(!t)return"";let e=t,r=e.toUpperCase();for(let n of k0r){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(L0r(o),"gi");c.test(e)&&(e=e.replace(c,` ${a.targetStandard} `),i=!0)});!i&&n.defaultStandard&&(e+=` ${n.defaultStandard} `)}return e}function V0(t){if(!t)return"";let e=Gt(t);e=e.replace(ye.Clean.NA_TAG,""),e=e.replace(ye.Season.PART_NORM,"part $1"),e=e.replace(ye.Season.PART_NORM_2,"part $1"),e=e.replace(ye.Season.FINAL,"\u6700\u7EC8\u5B63"),e=e.replace(ye.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 e=e.replace(ye.Season.CN,(n,s)=>`\u7B2C${r[s]}\u5B63`),e=e.replace(ye.Season.ROMAN,(n,s,i,a)=>`${s}\u7B2C${{I:"1",II:"2",III:"3",IV:"4"}[i]}\u5B63${a}`),e=e.replace(ye.Lang.CN_DUB_VER,"\u4E2D\u914D\u7248"),e=e.replace(ye.Lang.JP_DUB_VER,""),e=e.replace(ye.Clean.SOURCE_TAG,""),e=e.replace(ye.Clean.REGION_LIMIT,""),e=e.replace(/(\d+)\.(\d+)/g,"$1{{DOT}}$2"),e=e.replace(ye.Clean.PUNCTUATION," "),e=e.replace(/{{DOT}}/g,"."),e.replace(ye.Clean.WHITESPACE," ").toLowerCase().trim()}function Tc(t){if(!t)return"";let e=Dnt(t);e=Gt(e);let r=e.match(/^(?:【|\[)(.+?)(?:】|\])/);if(r){let n=r[1];/^(TV|剧场版|åŠ‡å ´ç‰ˆ|movie|film|anime|动漫|动画|AVC|HEVC|MP4|MKV)$/i.test(n)||(e=e.replace(r[0],n+" "))}return e=e.replace(ye.Clean.SOURCE_TAG,""),e=e.replace(ye.Clean.FROM_SUFFIX,""),e=e.replace(ye.Clean.NA_TAG,""),e=e.replace(ye.Clean.PARENTHESES_CONTENT,""),e=e.replace(ye.Season.INFO_STRONG,""),e=e.replace(ye.Season.PART_INFO_STRONG,""),e=e.replace(ye.Clean.MOVIE_KEYWORDS,""),e=e.replace(ye.Lang.KEYWORDS_STRONG,""),e=e.replace(ye.Clean.LONE_VER_CHAR,""),e=e.replace(ye.Clean.NON_ALPHANUM_CN,""),e.toLowerCase()}function tE(t){if(!t)return"";let e=Gt(t);return e=e.replace(ye.Episode.SUFFIX_DIGIT,""),e=e.replace(ye.Episode.FILE_NOISE,""),e=e.replace(ye.Episode.SEASON_PREFIX," "),e=e.replace(ye.Episode.CLEAN_SMART," "),e=e.replace(ye.Clean.SOURCE_TAG,""),e=e.replace(ye.Lang.CN_STD,"\u4E2D\u6587"),e=e.replace(ye.Lang.JP_STD,"\u65E5\u6587"),e=e.replace(/(\d+)\.(\d+)/g,"$1{{DOT}}$2"),e=e.replace(ye.Episode.PUNCTUATION," "),e=e.replace(/{{DOT}}/g,"."),e.replace(ye.Clean.WHITESPACE," ").toLowerCase().trim()}function Snt(t){return t?t.replace(ye.Clean.PARENTHESES_CONTENT,"").trim():""}function Iie(t){if(!t)return"";let e=String(t).split(Iu)[0].trim();if(e.startsWith("//"))return"https:"+e;let r=e.match(/^([^:]+):(.+)$/);if(r){let n=r[1].toLowerCase(),s=r[2];return n==="http"||n==="https"?e:/^https?:\/\//i.test(s)?s:s.startsWith("//")?"https:"+s:s}return e}function vnt(t){if(!t||t==="N/A")return{year:null,month:null};let e=new Date(t),r=e.getTime();if(isNaN(r))return{year:null,month:null};let n=e.getFullYear();return n>2030?{year:null,month:null}:{year:n,month:e.getMonth()+1}}function B0r(t,e){let r=t.length,n=e.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=t.charCodeAt(a-1);for(let u=1;u<=n;u++){let l=o===e.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 M0r(t,e){if(!t||!e)return 0;let r=new Set(t.replace(ye.Clean.WHITESPACE,"")),n=new Set(e.replace(ye.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+x*.2}let c=B0r(r,n),u=a===0?1:1-c/a,l=new Set(r.replace(ye.Clean.WHITESPACE,"")),d=new Set(n.replace(ye.Clean.WHITESPACE,"")),f=l.size,p=d.size;if(f===0||p===0)return 0;let m=0,[h,A]=f2&&(b=m/y,b>.6&&y/Math.max(f,p)<.6&&(b-=.25)),Math.max(u,g,b)}function co(t,e="",r=[]){let n=new Set,s=V0(e||""),i=l=>{let d=V0(Dnt(l)),f=d.replace(ye.Season.PART_ANY,""),p=f.match(ye.Season.CN_STRUCTURE);if(p){let A={\u627F:"S2",\u8F6C:"S3",\u7ED3:"S4"};A[p[1]]&&n.add(A[p[1]])}if(D0r.forEach(A=>{let g=(A.useCleaned?f:d).match(A.regex);g&&n.add(A.prefix?`${A.prefix}${parseInt(g[1])}`:A.val)}),!r4.some(A=>{if(A.regex.test(f))return n.add(A.val),!0})){let A=f.match(ye.Season.SUFFIX_AMBIGUOUS);if(A){n.add("AMBIGUOUS");let g={II:"S2",III:"S3",IV:"S4"},b=A[1].toUpperCase();g[b]&&n.add(g[b])}}ye.Season.SUFFIX_SEQUEL.test(d)&&n.add("SEQUEL");let h={\u4E00:1,\u4E8C:2,\u4E09:3,\u56DB:4,\u4E94:5,final:99};for(let[A,g]of Object.entries(h))d.includes(`\u7B2C${A}\u5B63`)&&n.add(`S${g}`)};[t,...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 bi(t,e="",r=[]){let n=co(t,e,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 vg(t,e){let r=(t+" "+(e||"")).toLowerCase(),n=r.includes("\u7535\u5F71"),s=r.includes("\u7535\u89C6\u5267");return n&&!s?"MOVIE":s&&!n?"TV":null}function rE(t,e,r){if(r&&ye.Category.ANIMEKO_SOURCE.test(r))return"ANIME";let n=(t+" "+(e||"")).toLowerCase();return ye.Category.ANIME_KW.test(n)?"ANIME":ye.Category.REAL_KW.test(n)?"REAL":"UNKNOWN"}function W0r(t,e,r=!0){if(!t||!e||Tc(t)===Tc(e))return!1;let n=d=>{if(!d)return"";let f=Gt(d);return f=f.replace(ye.Clean.META_SUFFIX,"").replace(ye.Clean.YEAR_TAG,"").replace(ye.Clean.SOURCE_TAG,"").replace(ye.Clean.FROM_SUFFIX,"").replace(ye.Clean.WHITESPACE," "),f.trim().toLowerCase()},s=n(t),i=n(e);if(s===i)return!1;let a=d=>{let f=[":","\uFF1A"," code:"," code\uFF1A"," season"," part"];for(let m of f){let h=d.indexOf(m);if(h!==-1)return d.substring(h).trim()}let p=d.split(ye.Clean.WHITESPACE);return p.length>=2?p.slice(1).join(" "):null},o=a(s),c=a(i),[u,l]=s.length1||f.length>2)return!0}}return!!(o&&c&&M0r(o,c)<.2)}function knt(t,e,r,n){if(!((r||"").includes("\u5267\u573A\u7248")||(n||"").includes("\u5267\u573A\u7248")))return!1;let i=c=>c?Gt(c).replace(ye.Clean.YEAR_TAG,"").replace(ye.Clean.SOURCE_TAG,"").replace(ye.Clean.FROM_SUFFIX,"").trim():"",a=i(t),o=i(e);if(ye.Clean.SPACE_STRUCTURE.test(a)&&ye.Clean.SPACE_STRUCTURE.test(o)){let c=d=>{let f=d.split(ye.Clean.SPLIT_SPACES);return f.length>1?f.slice(1).join(" "):""},u=c(a),l=c(o);return!(ye.Season.PURE_PART.test(u)||ye.Season.PURE_PART.test(l))}return!1}function $0r(t,e,r,n,s,i,a="",o=""){let c=rE(t,r,a),u=rE(e,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"),p=(n||"").includes("2D"),m=!l&&!f,h=!d&&!p;if(!m&&h?/3[dD]/.test(e)?d=!0:/2[dD]/.test(e)&&(p=!0):!h&&m&&(/3[dD]/.test(t)?l=!0:/2[dD]/.test(t)&&(f=!0)),(l||f)&&(d||p)&&l!==d)return!0;let b=vg(t,r),y=vg(e,n);return!b||!y||b===y||knt(t,e,r,n)?!1:s>0&&i>0?Math.abs(s-i)>5:!0}function F0r(t,e,r,n,s=[],i=[]){let a=co(t,r,s),o=co(e,n,i);if(a.size===0&&o.size===0)return!1;let c=f=>Array.from(f).some(p=>p.startsWith("S")&&parseInt(p.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 p=o.has(f),m=Array.from(o).some(h=>h.startsWith("S"));if(!p&&m)return!0}return!1}return a.size!==o.size?!knt(t,e,r,n):!1}function U0r(t,e,r,n,s=[],i=[]){let a=co(t,r,s),o=co(e,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 q0r(t,e,r=!1){if(!t.year||!e.year)return .05;let n=t.year-e.year;if(n===0){if(t.month&&e.month){let i=Math.abs(t.month-e.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 j0r(t,e,r,n,s,i=!1){if(/^(dandan|animeko)$/i.test(n)||/^(dandan|animeko)$/i.test(s))return!0;if(i){let c=Math.min(e,r);return c>0&&t/c>.5?!0:!(t<2)}let a=Math.max(e,r);if(a===0)return!1;let o=t/a;return!(a>5&&o<.18)}function e4(t){if(!t)return null;let e=t.toLowerCase();return e.includes("opening")?"opening":e.includes("ending")?"ending":e.includes("interview")?"interview":e.includes("bloopers")?"Bloopers":null}function Aa(t,e=""){let r=!1,n=e;if(t){let m=t.match(ye.Episode.DANDAN_TAG);m&&(n=m[1].toLowerCase())}if(/^(dandan|animeko)$/i.test(n)&&t){let m=t.replace(ye.Clean.SOURCE_TAG,"").replace(ye.Clean.FROM_SUFFIX,"").trim();(ye.Episode.SPECIAL_START.test(m)||ye.Episode.DANDAN_IGNORE.test(m))&&(r=!0)}let i=V0(t||""),a=ye.Episode.MOVIE_CHECK.test(i),o=ye.Episode.PV_CHECK.test(i),c=null,u=null,l=e4(t),d=o||r||!!l||ye.Episode.SPECIAL_CHECK.test(i),f=i.match(ye.Episode.SEASON_MATCH);f&&(u=parseInt(f[1]));let p=i.match(ye.Episode.NUM_STRATEGY_A);if(p)c=parseFloat(p[2]);else{let m=i.match(ye.Episode.NUM_STRATEGY_B);if(m)c=parseFloat(m[1]);else{let h=i.match(ye.Episode.NUM_STRATEGY_C);h&&(c=parseFloat(h[1]))}}return{isMovie:a,num:c,isSpecial:d,isPV:o,season:u,isStrictSpecial:r}}function Tie(t,e,r=""){if(!t)return[];let s=["animeko","bilibili","bilibili1","bahamut","dandan"].includes(r);if(!e||s)return t.map((o,c)=>({link:o,originalIndex:c}));let i=[],a=[];if(t.forEach((o,c)=>{let u=o.title||o.name||"";e.test(u)?a.push(u):i.push({link:o,originalIndex:c})}),a.length>0){let o=r?`[${r}] `:"";mt("info",`[Merge-Check] ${o}\u547D\u4E2DEPISODE_TITLE_FILTER\u8FC7\u6EE4\uFF0C\u5DF2\u524D\u7F6E\u5254\u9664 ${a.length} \u96C6: ${a.join(", ")}`)}return i}var Cnt=new Map;function t4(t,e,r){if(!t||t.length<2||!e)return"";let n=l=>{if(!l||!r)return l||"";try{let d=Cnt.get(r);if(!d){let f=r.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");d=new RegExp(`(\\[|\u3010|\\s)?${f}(\\]|\u3011|\\s)?`,"gi"),Cnt.set(r,d)}return l.replace(d,"").trim()}catch{return l}},s=n(e),i=s.match(ye.Clean.REDUNDANT_SEPARATOR);i&&(s=s.substring(0,i.index));let a=t.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=h)}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&&(ye.Clean.REDUNDANT_VALID_CHARS.test(u)||u.length>3)?(mt("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 Int(t,e){let r=new Set;if(!t)return r;let n=-1;for(let s=0;s{let a=s.title||s.name||"",o=Aa(a,e);o.num!==null&&!o.isSpecial&&!o.isPV&&o.num%1!==0&&i{let c=o.title||o.name||"",u=Aa(c,r);u.num!==null&&e.has(u.num)?(i.push(o),a++):s.push(o)}),a>0&&(t.length=0,t.push(...s,...i),mt("info",`[Merge-Check] [${n}] \u81EA\u52A8\u6C89\u5E95: \u79FB\u52A8\u4E86 ${a} \u4E2A\u4E2D\u95F4\u63D2\u503C\u96C6\u6570 (${Array.from(e).join(",")}) \u5230\u672B\u5C3E`))}function wnt(t,e,r="Unspecified",n="Unspecified",s="",i="",a="",o=""){if(t.length===0||e.length===0)return 0;let c=t4(t,a,s),u=t4(e,o,i),l=(R,w)=>R?w&&R.includes(w)?R.replace(w,""):R:"",d=(R,w,N,P)=>{let L=R.link.title||"",M=l(L,P),k=Aa(M,w),B=oo(M),Z=B!=="Unspecified"?B:N,W=Z==="Unspecified"&&/^(dandan|animeko)$/i.test(w)?"JP":Z,F=tE(M),V=W==="CN"?M.replace(ye.Similarity.CN_STRICT_CORE_REMOVE,""):null;return{info:k,effLang:W,specialType:e4(M),cleanEpText:F,strictCnCore:V}},f=t.map(R=>d(R,s,r,c)),p=e.map(R=>d(R,i,n,u)),m=null,h=null;f.forEach(({info:R})=>{R.num!==null&&!R.isSpecial&&R.num%1===0&&(m=m===null?R.num:Math.min(m,R.num))}),p.forEach(({info:R})=>{R.num!==null&&!R.isSpecial&&R.num%1===0&&(h=h===null?R.num:Math.min(h,R.num))});let A=m!==null&&h!==null?m-h:null,g=15,b=A!==null?-A:0,y=Math.max(Math.min(-g,b-g),-Math.max(t.length,e.length)),x=Math.min(Math.max(g,b+g),Math.max(t.length,e.length)),v=0,C=-9999;for(let R=y;R<=x;R++){let w=0,N=0,P=0,L=new Map,M=!1,k=null;for(let B=0;B=t.length)continue;let W=f[Z],F=p[B],V=W.info,j=F.info,J=0;V.isMovie!==j.isMovie&&(J+=ai.EP_ALIGN.MOVIE_TYPE_MISMATCH),(V.isStrictSpecial&&!j.isSpecial||j.isStrictSpecial&&!V.isSpecial)&&(J+=ai.EP_ALIGN.SPECIAL_STRICT_MISMATCH);let se=W.effLang==="Unspecified"?"JP":W.effLang,oe=F.effLang==="Unspecified"?"JP":F.effLang;se===oe?J+=ai.EP_ALIGN.LANG_MATCH:J+=ai.EP_ALIGN.LANG_MISMATCH,V.season!==null&&j.season!==null&&V.season!==j.season&&(J+=ai.EP_ALIGN.SEASON_NUM_MISMATCH),(W.specialType||F.specialType)&&(W.specialType!==F.specialType?J+=ai.EP_ALIGN.SPECIAL_TYPE_MISMATCH:J+=ai.EP_ALIGN.SPECIAL_TYPE_MATCH),V.isSpecial===j.isSpecial&&(J+=ai.EP_ALIGN.IS_SPECIAL_MATCH),A!==null&&!V.isSpecial&&!j.isSpecial&&V.num-j.num===A&&(J+=ai.EP_ALIGN.SEASON_SHIFT_EXACT,M=!0);let ue=0;W.effLang==="CN"&&F.effLang==="CN"&&W.strictCnCore&&F.strictCnCore&&(W.strictCnCore.includes(F.strictCnCore)||F.strictCnCore.includes(W.strictCnCore))?ue=V.num!==null&&j.num!==null&&V.num===j.num?ai.EP_ALIGN.CN_STRICT_MATCH:ai.EP_ALIGN.CN_STRICT_MISMATCH:ue=G0(W.cleanEpText,F.cleanEpText),J+=ue,N+=ue,V.num!==null&&j.num!==null&&V.num===j.num&&(J+=ai.EP_ALIGN.NUMERIC_MATCH);let Ce=1;if(V.num!==null&&!V.isSpecial&&(k!==null&&V.num-k>1?Ce=.1:k=V.num),J*=Ce,ue*=Ce,N+=ue,w+=J,V.num!==null&&j.num!==null){let we=(j.num-V.num).toFixed(4);L.set(we,(L.get(we)||0)+Ce)}P++}if(P>0){let B=w/P,Z=0;for(let j of L.values())Z=Math.max(Z,j);let W=Z/P,F=N/P;W>.6&&(M||F>.33)&&(B+=ai.EP_ALIGN.PATTERN_CONSISTENCY_BONUS),B+=Math.min(P*.15,1.5);let V=L.get("0.0000")||0;V>3?(B+=ai.EP_ALIGN.ZERO_DIFF_BONUS_BASE,B+=V*ai.EP_ALIGN.ZERO_DIFF_BONUS_PER_HIT):V>0&&(B+=V*2),B>C&&(C=B,v=R)}}return C>.3?v:0}function H0r(t,e,r){let n=new Map,s=[];for(let o of t){if(r&&r.has(o.animeId))continue;let c=O.animes.find(f=>String(f.animeId)===String(o.animeId))||o;if(rE(c.animeTitle,c.typeDescription,c.source)==="REAL"){s.push(` [\u5254\u9664] [${c.source}] ${c.animeTitle} (\u7C7B\u578B: \u771F\u4EBA\u5267/REAL)`);continue}if(vg(c.animeTitle,c.typeDescription)==="MOVIE"){s.push(` [\u5254\u9664] [${c.source}] ${c.animeTitle} (\u7C7B\u578B: \u7535\u5F71/MOVIE)`);continue}let d=bi(c.animeTitle,c.typeDescription,c.aliases);if(d!==null&&c.links){let p=Tie(c.links,e,c.source).filter(m=>{let h=m.link.title||m.link.name||"",g=V0(h).replace(ye.Clean.SOURCE_TAG,"").replace(ye.Clean.FROM_SUFFIX,"").trim();return!(/^(dandan|animeko)$/i.test(c.source)&&(ye.Episode.SPECIAL_CHECK.test(g)||ye.Episode.DANDAN_IGNORE.test(g))||ye.Episode.MAP_EXCLUDE_KEYWORDS.test(g)||ye.Episode.MAP_EXCLUDE_KEYWORDS.test(h))}).length;if(p>0){n.has(d)||n.set(d,new Map);let m=n.get(d);m.has(p)||m.set(p,[]),m.get(p).push(c.source),s.push(` [\u91C7\u7EB3] [${c.source}] S${d} = ${p}\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[p,m]of c.entries()){let h=m.length;h>l?(l=h,u=p,d=m):h===l&&p`${p}\u96C6(x${m.length})[${m.join(",")}]`).join(", ");a.push(`S${o}=${u} (\u63A8\u65AD\u6765\u6E90: ${d.join(",")} | \u7EDF\u8BA1: ${f})`)}return(s.length>0||a.length>0)&&mt("info",`[Merge-Check] [Map-Build] \u5B63\u5EA6\u5730\u56FE\u6784\u5EFA\u8BE6\u60C5: +`;let r=t.comments||[];if(Array.isArray(r))for(let n of r){let s=Ndr(n);e+=' '+kdr(n.m)+` +`}return e+="",e}function Rdr(){let e=(Date.now()%1e8).toString().padStart(8,"0"),r=Math.floor(Math.random()*1e3).toString().padStart(3,"0");return e+r}function Ndr(t){let e=t.p.split(","),n=(parseFloat(e[0])||0).toFixed(1),s=e[1]||"1",i="25",a=e[2]||"16777215",o="1751533608",c="0",u="0",l=Rdr();return`${n},${s},${i},${a},${o},${c},${u},${l}`}function Odr(t){return t?String(t).replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'"):""}function kdr(t){return t?String(t).replace(/&/g,"&").replace(//g,">"):""}function Og(t,e){let r=e||O.danmuOutputFormat;if(r=r.toLowerCase(),E("info",`[Utils] [Danmu] [Format] Using format: ${r}`),r==="xml")try{let n=wdr(t);return wUe(n)}catch(n){return E("error",`[Utils] [Danmu] Failed to convert to XML: ${n.message}`),We(t)}return We(t)}dr();var Rf=class{constructor({apiKey:e,baseURL:r="https://api.openai.com/v1",model:n="gpt-4o",systemPrompt:s=""}){this.apiKey=e,this.baseURL=r.replace(/\/$/,""),this.model=n,this.systemPrompt=s}async chat(e,r={}){let n={model:r.model||this.model,messages:e,temperature:r.temperature??0,max_tokens:r.maxTokens??8192,stream:!1},s=await Gr(`${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(e,r={}){let n=[];return this.systemPrompt&&n.push({role:"system",content:this.systemPrompt}),n.push({role:"user",content:e}),this.chat(n,r)}session(e={}){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,e);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(e){return{ok:!1,error:e.message}}}};var Ia=Ce(require("fs"),1),CL=Ce(require("path"),1);TC();kt();vt();mn();mo();var Hn=null,SL=0,Uo=!1,vL=0,Xb="0.00",qC=!1,cm=new Map,YUe="custom",JUe=null,XUe=null,IL=CL.default.join(process.cwd(),".cache"),rFe="bangumi-data-cache.json",Pdr=2e4,kg=new Map,ZUe={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"]},Ddr="@wan0ge/bangumi-data",Bdr="bangumi-data",Ldr=/(?:普通[话話]|[国國][语語]|中文配音|中配|中文|[粤粵][语語]配音|[粤粵]配|[粤粵][语語]|[台臺]配|[台臺][语語]|港配|港[语語]|字幕|助[听聽]|æ—¥[语語]|日配|原版|原[声聲])(?:版)?/,nFe=/(?:\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,Mdr=/\s+/g,Wdr=/[,,]/,$dr=/[::]/;function mJ(t){let e=new Map,r=t.length;for(let n=0;n=0?"custom":"official";return E("info",`[Utils] [Bangumi-Data] \u7248\u672C\u5BF9\u6BD4: @wan0ge/bangumi-data@${t} vs bangumi-data@${e} => \u4F7F\u7528${n==="custom"?"\u81EA\u5B9A\u4E49":"\u5B98\u65B9"}\u6E90`),n}catch(t){return E("warn",`[Utils] [Bangumi-Data] \u6570\u636E\u6E90\u9009\u62E9\u5F02\u5E38\uFF0C\u56DE\u9000\u5230\u81EA\u5B9A\u4E49\u6E90: ${t.message}`),"custom"}}async function TL(t,e=!1,r=null){if(!O.useBangumiData)return;let n=null,s=O.bangumiDataCacheDays!==void 0?O.bangumiDataCacheDays:7,i=s*24*60*60*1e3;if(t==="node"?Ia.default.existsSync(IL)?n=CL.default.join(IL,rFe):qC||(E("warn","[Utils] [Bangumi-Data] \u672A\u68C0\u6D4B\u5230\u6839\u76EE\u5F55\u7684 .cache \u6587\u4EF6\u5939\uFF01"),E("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"),E("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"),qC=!0):qC||(E("info",`[Utils] [Bangumi-Data] \u68C0\u6D4B\u5230 ${t} \u4E91\u73AF\u5883\uFF0C\u5F53\u524D\u8FD0\u884C\u4E8E\u7EAF\u5185\u5B58\u52A0\u901F\u6A21\u5F0F\u3002`),qC=!0),Uo&&Date.now()-vL>Pdr&&(E("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..."),Uo=!1),Hn){if(s>0&&Date.now()-SL{Uo=!1}));return}if(n&&Ia.default.existsSync(n))try{let a=Ia.default.statSync(n),o=process.memoryUsage().heapUsed,c=Date.now();Hn=JSON.parse(Ia.default.readFileSync(n,"utf-8")),Hn?.items?.length>0&&Hn.items[0]._flatText===void 0?(Hn=sFe(Hn),Ia.default.writeFileSync(n,JSON.stringify(Hn),"utf-8"),mJ(Hn.items)):Hn?.items?.length>0&&mJ(Hn.items);let u=process.memoryUsage().heapUsed,l=Date.now()-c;Xb=Math.max(0,(u-o)/1024/1024).toFixed(2);let d=(process.memoryUsage().rss/1024/1024).toFixed(2);SL=Date.now(),E("info",`[Utils] [Bangumi-Data] \u6210\u529F\u4ECE\u672C\u5730\u78C1\u76D8\u52A0\u8F7D\u57FA\u7840\u6570\u636E\uFF0C\u6761\u76EE\u6570: ${Hn.items.length}\uFF0C\u89E3\u6790\u8017\u65F6: ${l} ms\uFF0C\u7EA6\u5360\u5185\u5B58: ${Xb} MB`),(s===0||Date.now()-a.mtimeMs>=i)&&e&&!Uo&&(E("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...`),Uo=!0,vL=Date.now(),pJ(n).finally(()=>{Uo=!1}));return}catch(a){E("error","[Utils] [Bangumi-Data] \u78C1\u76D8\u7F13\u5B58\u89E3\u6790\u5931\u8D25\uFF0C\u51C6\u5907\u91CD\u65B0\u4E0B\u8F7D",a.message),Hn=null}if(Uo){if(e){E("info","[Utils] [Bangumi-Data] \u6B63\u5728\u7B49\u5F85\u57FA\u7840\u6570\u636E\u4E0B\u8F7D\u5B8C\u6210...");let a=0;for(;Uo;){if(a>150){E("warn","[Utils] [Bangumi-Data] \u7B49\u5F85\u6392\u961F\u8D85\u65F6\uFF0C\u653E\u5F03\u7B49\u5F85"),Uo=!1;break}await new Promise(o=>setTimeout(o,100)),a++}}}else{E("info","[Utils] [Bangumi-Data] \u672A\u547D\u4E2D\u4EFB\u4F55\u6709\u6548\u7F13\u5B58\uFF0C\u6B63\u5728\u83B7\u53D6\u57FA\u7840\u6570\u636E..."),Uo=!0,vL=Date.now();let a=pJ(n).finally(()=>{Uo=!1});e?await a:(E("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"&&(E("info","[Utils] [Bangumi-Data] \u8C03\u7528 ctx.waitUntil \u5EF6\u957F Serverless \u751F\u547D\u5468\u671F"),r.waitUntil(a)))}}var qdr=new Set(["anidb","bangumi","gamer","gamer_hk","bilibili","bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw","tmdb"]);function sFe(t){if(!t||!t.items)return{items:[]};let e=[];for(let r of t.items){let n=[];if(r.sites){for(let o of r.sites)if(qdr.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(p=>{E("info",`[\u8BF7\u6C42\u6A21\u62DF] HTTP GET: ${p}`)});let o=s.map(async(p,m)=>{let h=a[m],y=await Qb(p,{...i,signal:h.signal});if(!y.ok)throw new Error(`HTTP error ${y.status} from ${p}`);let g=await y.json(),b=g.items?g.items.length:0;if(h.signal.aborted)throw new Error("Aborted before parsing");let x=Date.now(),A=sFe(g),S=Date.now()-x,I=null;return t&&!h.signal.aborted&&(I=`${t}.tmp${m}`,Ia.default.writeFileSync(I,JSON.stringify(A),"utf-8")),{index:m,url:p,tempFilePath:I,resultData:A,pruneCost:S,originalCount:b}}),c=await Promise.any(o);a.forEach((p,m)=>{m!==c.index&&p.abort()}),t&&(s.forEach((p,m)=>{if(m!==c.index){let h=`${t}.tmp${m}`;if(Ia.default.existsSync(h))try{Ia.default.unlinkSync(h)}catch{}}}),Ia.default.renameSync(c.tempFilePath,t));let u=((Date.now()-r)/1e3).toFixed(2);E("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)`),Hn=c.resultData,n=c.pruneCost,mJ(Hn.items),kg.clear();let l=process.memoryUsage().heapUsed,d=((Date.now()-r)/1e3).toFixed(2);Xb=Math.max(0,(l-e)/1024/1024).toFixed(2);let f=(process.memoryUsage().rss/1024/1024).toFixed(2);SL=Date.now(),E("info",`[Utils] [Bangumi-Data] \u52A0\u8F7D\u5230\u5185\u5B58\u6210\u529F\uFF0C\u4FDD\u7559/\u539F\u59CB\u6761\u76EE\u6570: ${Hn.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: ${Xb} MB (\u5F53\u524D\u9879\u76EE\u603B\u5360\u7528: ${f} MB)`)}catch(e){let r=e instanceof AggregateError?e.errors.map(n=>n.message).join(" | "):e.message;E("error","[Utils] [Bangumi-Data] \u4E0B\u8F7D\u5931\u8D25 (\u6240\u6709 CDN \u5747\u672A\u54CD\u5E94\u6216\u62A5\u9519):",r)}}async function Ru(t,e){if(!Hn||!Hn.items)return[];let r=kg.get(t);if(!r){if(r=(async()=>{let c=[],u=[t];try{u=[...new Set([t,zt(t),$o(t)])]}catch{}let d=[zt(t)].map(h=>{let y=h.replace(nFe,"");return y=Dr(y).toLowerCase(),y.length>=2?y:Dr(h).toLowerCase()}).filter(h=>h.length>0),f=null;if(typeof cm<"u"&&cm.size>0&&d.length>0){let h=new Set;for(let y of d){let g=Array.from(new Set(y.replace(Mdr,"")));if(g.length===0)continue;g.sort((A,S)=>{let I=cm.get(A)?.length||0,R=cm.get(S)?.length||0;return I-R});let b=cm.get(g[0]);if(!b||b.length===0)continue;let x=new Set(b);for(let A=1;Ay);let p=Hn.items,m=u.length;for(let h=0;h100){let c=kg.keys().next().value;kg.delete(c)}kg.set(t,r)}let n=await r,s=n,i=$t(t);if(i!==null){let c=n.filter(({item:u})=>{let l=Tt(u.title).season;if(l===null&&u.titleTranslate)for(let d in u.titleTranslate){let f=u.titleTranslate[d];for(let p=0;p1?(l||1)===i:i===1?l===null||l===1:!0});c.length>0&&(s=c)}let a=Ldr,o=[];for(let{item:c,titles:u}of s){if(!c.sites)continue;let l=c.sites.filter(d=>e.includes(d.site));for(let d of l){let f="TV\u52A8\u753B",p="tvseries";c.type==="movie"?(f="\u5267\u573A\u7248",p="movie"):c.type==="tv"?(f="TV\u52A8\u753B",p="tvseries"):c.type==="ova"?(f="OVA",p="ova"):c.type==="web"&&(f="WEB\u52A8\u753B",p="web");let m="";["bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw"].includes(d.site)&&(m="\uFF08\u6E2F\u6FB3\u53F0\uFF09");let h=[],y=[];if(d.comment){let b=d.comment.split(Wdr),x=new Map;if(d.related&&Array.isArray(d.related))for(let A of d.related)A.id&&x.set(String(A.id),A.season_id||null);for(let A of b){let S=A.split($dr);if(S.length>=2){let I=S[0].trim(),R=S[1].trim();R&&a.test(I)&&h.push({title:c.title,titles:[...u],begin:c.begin,siteId:R,matchedSiteKey:d.site,type:c.type,typeStr:f,typeId:p,titleSuffix:` ${I}${m}`,season_id:x.get(R)||null})}else if(S.length===1&&S[0].trim()){let I=S[0].trim();a.test(I)&&y.push(I)}}}let g="";y.length>0&&(g+=` ${y.join(" ")}`),g+=m,o.push({title:c.title,titles:[...u],begin:c.begin,siteId:d.id,matchedSiteKey:d.site,type:c.type,typeStr:f,typeId:p,titleSuffix:g,season_id:d.season_id||null,video_sn:d.video_sn||null}),o.push(...h)}}return o}function iFe(t=!1){if(Hn!==null){let e=Hn.items?Hn.items.length:0;Hn=null,SL=0,kg.clear(),cm.clear();let r=(process.memoryUsage().rss/1024/1024).toFixed(2);E("info",`[Utils] [Bangumi-Data] \u5185\u5B58\u7F13\u5B58\u5DF2\u4E3B\u52A8\u91CA\u653E (\u539F\u6761\u76EE\u6570: ${e}\uFF0C\u91CA\u653E: ${Xb} MB\uFF0C\u5F53\u524D\u9879\u76EE\u603B\u5360\u7528: ${r} MB)`),Xb="0.00",qC=!1}if(t&&Ia.default.existsSync(IL))try{let e=CL.default.join(IL,rFe);Ia.default.existsSync(e)&&Ia.default.unlinkSync(e);for(let r=0;r<5;r++){let n=`${e}.tmp${r}`;Ia.default.existsSync(n)&&Ia.default.unlinkSync(n)}E("info","[Utils] [Bangumi-Data] \u78C1\u76D8\u7F13\u5B58\u5DF2\u540C\u6B65\u6E05\u7406")}catch(e){E("error",`[Utils] [Bangumi-Data] \u78C1\u76D8\u7F13\u5B58\u6E05\u7406\u5931\u8D25: ${e.message}`)}}kt();dr();vt();mo();lL();HT();Un();CY();mn();kt();vt();dr();mo();var w5=new Map;async function GT(t,e={}){let n=`https://api.tmdb.org/3/${t}`,s=O.makeProxyUrl(n);try{let i=await Ae(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:e.signal});return i.status!=200?null:i}catch(i){if(i.name==="AbortError")throw i;return E("error","[Utils] [TMDB] Api error:",{message:i.message,name:i.name,stack:i.stack}),null}}async function R5(t,e="multi",r={}){let{page:n=1,maxPages:s=3,signal:i=null}=r;if(r.page!==void 0){let o=`search/${e}?api_key=${O.tmdbApiKey}&query=${encodeURIComponent(t)}&language=zh-CN&page=${n}`;return await GT(o,{signal:i})}let a=[];for(let o=1;o<=s;o++){if(i&&i.aborted)throw new DOMException("Aborted","AbortError");let c=`search/${e}?api_key=${O.tmdbApiKey}&query=${encodeURIComponent(t)}&language=zh-CN&page=${o}`,u=await GT(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 E("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 mxr(t,e,r={}){let n=`${t}/${e}?api_key=${O.tmdbApiKey}&language=ja-JP`;return await GT(n,r)}async function bat(t,e,r={}){let n=`${t}/${e}/external_ids?api_key=${O.tmdbApiKey}`;return await GT(n,r)}async function hxr(t,e,r={}){let n=`${t}/${e}/alternative_titles?api_key=${O.tmdbApiKey}`;return await GT(n,r)}function gxr(t,e,r=""){let n=t?.data?.results||t?.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&&!Cf(i(c))),o=>!Cf(i(o))];for(let o of a){let c=n.find(o);if(c){let u=i(c);return E("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 yxr(t,e,r=""){let n=t.name||t.title||"";if(r&&n.toLowerCase().trim()===r.toLowerCase().trim()||!(Cf(n)||r&&n.toLowerCase().trim()!==r.toLowerCase().trim()))return n;E("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=t.media_type||(t.name?"tv":"movie");try{if(e&&e.aborted)throw new DOMException("Aborted","AbortError");let a=await hxr(i,t.id,{signal:e});if(e&&e.aborted)throw new DOMException("Aborted","AbortError");let o=gxr(a,i,r);return o?(E("info",`[Utils] [TMDB] \u5C06\u4F7F\u7528\u4E2D\u6587\u522B\u540D\u8FDB\u884C\u76F8\u4F3C\u5339\u914D: ${o}`),o):(E("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 E("error",`[Utils] [TMDB] \u83B7\u53D6\u522B\u540D\u5931\u8D25: ${a.message}`),n}}async function D1(t,e=null,r="Unknown"){let n=Sat(t);if(n!==t&&E("info",`[Utils] [TMDB] \u4F18\u5316\u641C\u7D22\u5173\u952E\u8BCD: "${t}" -> "${n}"`),O.useBangumiData){let o=await Ru(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 E("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(!O.tmdbApiKey)return E("info","[Utils] [TMDB] \u672A\u914D\u7F6EAPI\u5BC6\u94A5\uFF0C\u8DF3\u8FC7TMDB\u7F51\u7EDC\u641C\u7D22"),null;let s=w5.get(n);if(s)E("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=k=>{let B=k.genre_ids||[],M=k.genres||[],D=B.length>0?B:M.map(W=>W.id),L=k.original_language||"";return D.includes(16)?{isValid:!0,reason:"\u660E\u786E\u52A8\u753B\u7C7B\u578B(genre_id: 16)"}:L==="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: ${L}, genres: ${D.join(",")})`}},d=(k,B)=>{let M=J=>J.toLowerCase().replace(/\s+/g,"").replace(/[::、,。!?;""''()【】《》]/g,"").trim(),D=M(k),L=M(B);if(D===L)return 1;let Z=D.length=L.length?D:L;if(W.includes(Z)&&Z.length>0)return .6+Z.length/W.length*.3;let U=k.length>B.length?k:B,z=k.length>B.length?B:k;if(U.length===0)return 1;let j=(J,se)=>{J=J.toLowerCase(),se=se.toLowerCase();let oe=[];for(let ue=0;ue<=J.length;ue++){let Te=ue;for(let Ne=0;Ne<=se.length;Ne++)if(ue===0)oe[Ne]=Ne;else if(Ne>0){let je=oe[Ne-1];J.charAt(ue-1)!==se.charAt(Ne-1)&&(je=Math.min(Math.min(je,Te),oe[Ne])+1),oe[Ne-1]=Te,Te=je}ue>0&&(oe[se.length]=Te)}return oe[se.length]};return(U.length-j(U,z))/U.length};if(E("info",`[Utils] [TMDB] \u6B63\u5728\u641C\u7D22 (Shared Task): ${n}`),u.aborted)throw new DOMException("Aborted","AbortError");let f=await R5(n,"multi",{signal:u});if(!f||!f.data)return E("info","[Utils] [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 E("info","[Utils] [TMDB] TMDB\u672A\u627E\u5230\u4EFB\u4F55\u7ED3\u679C"),null;let m=[],h=[];for(let k of p.results){let B=l(k);if(B.isValid)m.push(k);else{let M=k.name||k.title||"\u672A\u77E5";h.push(`${M}(${B.reason})`)}}if(m.length===0)return E("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;E("info",`[Utils] [TMDB] \u6570\u636E\u6E05\u6D17\u5B8C\u6210: \u4FDD\u7559 ${m.length} \u4E2A\u6709\u6548\u6761\u76EE\u53C2\u4E0E\u5339\u914D\uFF0C\u8FC7\u6EE4 ${h.length} \u4E2A\u65E0\u5173\u6761\u76EE${h.length>0?"\uFF0C\u8FC7\u6EE4\u8BE6\u60C5: "+h.join(", "):""}`);let y=null,g=-1,b=null,x=0,A=5,S=!1;for(let k of m){let B=k.name||k.title||"";if(!B)continue;let M=d(n,B),D=k.original_name||k.original_title||"",L=D?d(n,D):0,Z=Math.max(M,L);if(Z===1&&!S){S=!0,E("info",`[Utils] [TMDB] \u5339\u914D\u68C0\u67E5 "${B}" - \u76F8\u4F3C\u5EA6: 100.00% (\u5B8C\u5168\u5339\u914D\uFF0C\u8DF3\u8FC7\u540E\u7EED\u6240\u6709\u522B\u540D\u641C\u7D22)`),Z>g&&(g=Z,y=k,b=B);continue}let W,U,z=B.toLowerCase().trim()===n.toLowerCase().trim();if(S||z)W=B,U=Z,S&&z?E("info",`[Utils] [TMDB] \u5339\u914D\u68C0\u67E5 "${B}" - \u76F8\u4F3C\u5EA6: ${(U*100).toFixed(2)}% (\u5DF2\u627E\u5230\u5B8C\u5168\u5339\u914D\uFF0C\u8DF3\u8FC7\u522B\u540D\u641C\u7D22)`):E("info",`[Utils] [TMDB] \u5339\u914D\u68C0\u67E5 "${B}" - \u76F8\u4F3C\u5EA6: ${(U*100).toFixed(2)}%`);else{if(xg&&(g=U,y=k,b=W)}if(!y||g<.4)return E("info",`[Utils] [TMDB] \u6700\u4F73\u5339\u914D\u76F8\u4F3C\u5EA6\u8FC7\u4F4E\u6216\u672A\u627E\u5230\u5339\u914D (${y?(g*100).toFixed(2)+"%":"N/A"}),\u8DF3\u8FC7`),null;E("info",`[Utils] [TMDB] TMDB\u6700\u4F73\u5339\u914D: ${b}, \u76F8\u4F3C\u5EA6: ${(g*100).toFixed(2)}%`);let R=y.media_type||(y.name?"tv":"movie"),w=await mxr(R,y.id,{signal:u}),N;if(!w||!w.data)N=y.name||y.title,E("info",`[Utils] [TMDB] \u4F7F\u7528\u4E2D\u6587\u641C\u7D22\u7ED3\u679C\u6807\u9898: ${N}`);else{let k=typeof w.data=="string"?JSON.parse(w.data):w.data;N=k.original_name||k.original_title||k.name||k.title,E("info",`[Utils] [TMDB] \u627E\u5230\u65E5\u8BED\u539F\u540D: ${N}`)}return{title:N,cnAlias:b}}catch(u){return u.name==="AbortError"?(E("info",`[Utils] [TMDB] \u540E\u53F0\u641C\u7D22\u4EFB\u52A1\u5DF2\u5B8C\u5168\u7EC8\u6B62 (${n})`),null):(E("error","[Utils] [TMDB] Background Search error:",{message:u.message,name:u.name,stack:u.stack}),null)}})().finally(()=>{w5.delete(n)})},w5.set(n,s),E("info",`[Utils] [TMDB] \u542F\u52A8\u65B0\u641C\u7D22\u4EFB\u52A1: ${n}`)}s.refCount++;let i=()=>{w5.get(n)===s&&(s.refCount--,s.refCount<=0&&(E("info",`[Utils] [TMDB] \u6240\u6709\u8C03\u7528\u8005\u5DF2\u53D6\u6D88\uFF0C\u7EC8\u6B62\u540E\u53F0\u8BF7\u6C42: ${n}`),s.controller.abort()))},a;if(e){if(e.aborted)return i(),E("info",`[Utils] [TMDB] \u641C\u7D22\u5DF2\u88AB\u4E2D\u65AD (Source: ${r})`),null;e.addEventListener("abort",i)}try{let o=new Promise((c,u)=>{e&&(a=()=>u(new DOMException("Aborted","AbortError")),e.addEventListener("abort",a))});return await Promise.race([s.promise,o])}catch(o){return o.name==="AbortError"?(E("info",`[Utils] [TMDB] \u641C\u7D22\u5DF2\u88AB\u4E2D\u65AD (Source: ${r})`),null):(E("error",`[Utils] [TMDB] \u641C\u7D22\u5F02\u5E38: ${o.message}`),null)}finally{e&&(e.removeEventListener("abort",i),a&&e.removeEventListener("abort",a))}}async function _at(t,e=null,r=null){if(!Cf(t))return t;if(O.useBangumiData){let i=Sat(t),a=Ru(i,["tmdb","bangumi","anidb"]);if(a&&a.length>0){let o=a[0],c=o.titles.find(u=>u&&!Cf(u))||o.titles[1];if(c&&!Cf(c))return E("info",`[Utils] [TMDB] \u547D\u4E2D\u672C\u5730 Bangumi Data: ${t} -> ${c}\uFF08\u68C0\u7D22\u8BCD\uFF1A${i}\uFF09`),c}}let n=e!=null,s=n?"tv":"movie";try{let i=await R5(t,s);if(!i.data.results||i.data.results.length===0)return E("info","[Utils] [TMDB] TMDB\u672A\u627E\u5230\u4EFB\u4F55\u7ED3\u679C"),t;let o=i.data.results.find(u=>{let l=n?u.name:u.title;return l&&!Cf(l)})||i.data.results[0],c=n?o.name:o.title;return c?(E("info",`\u539F\u6807\u9898: ${t} -> \u4E2D\u6587\u6807\u9898: ${c}`),c):t}catch(i){return E("error","\u67E5\u8BE2 TMDB \u65F6\u51FA\u9519:",i),t}}var Eat=/(?:\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,xat=/[ ::~~]/;function vat(t){let e=t.match(Eat);return e?e.index:t.length}function Sat(t){let e=vat(t);return e{let a=i.org_title||i.title||"";return a.substring(0,vat(a))}),s="";if(n.length>0){let i=n.concat().sort(),a=i[0],o=i[i.length-1],c=0;for(;c1&&E("info",`[Utils] [TMDB] \u8BA1\u7B97\u51FA\u6700\u957F\u516C\u5171\u524D\u7F00 (LCP): "${s}"`);for(let i of t){let a=i.title||"";if(!(i.isLocalPriority||a.includes(e)))if(s&&s.length>1&&a.startsWith(s)){let o=a.substring(s.length).trim();i._displayTitle=o?`${e}${o.match(/^[~~::]/)?"":" "}${o}`:e,E("info",`[Utils] [TMDB] [LCP\u6A21\u5F0F] "${a}" -> "${i._displayTitle}"`)}else{let o=a.match(xat);if(o){let c=a.substring(0,o.index).trim(),u=a.substring(o.index);if(c&&Eat.test(c)){let l=u.trim().match(xat),d=l?u.trim().substring(l.index):"";i._displayTitle=`${c} ${e}${d}`,E("info",`[Utils] [TMDB] [\u524D\u7F00\u4FDD\u62A4\u6A21\u5F0F] "${a}" -> "${i._displayTitle}"`)}else i._displayTitle=e+u,E("info",`[Utils] [TMDB] [\u5206\u9694\u7B26\u6A21\u5F0F] "${a}" -> "${i._displayTitle}"`)}else Cf(a)?(i._displayTitle=e,E("info",`[Utils] [TMDB] [\u7EAF\u5916\u6587\u5168\u66FF\u6A21\u5F0F] "${a}" -> "${i._displayTitle}"`)):E("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`)}}}kt();vt();Un();mo();mn();var Wu="$$$",Kg="&",Axr=!1,di=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}}),ad=Object.freeze({SIMILARITY_MIN:.65,SIMILARITY_STRONG:.98,TIER_DEFAULT:.001,TIER_CN:.4,TIER_PART:.5,COLLECTION_RATIO:4,COLLECTION_DIFF:6});function ht(t,...e){typeof e[0]=="string"&&e[0].includes("[Merge-Check]")&&!Axr||E(t,...e)}var 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:/第\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}},k5=[{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"}],xxr=[{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}],bxr=[{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"}];function Bat(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Toe(t){if(typeof structuredClone=="function")try{return structuredClone(t)}catch{}return JSON.parse(JSON.stringify(t))}function Ao(t){if(!t)return"Unspecified";let e=t.toLowerCase();return xe.Lang.CN.test(e)?"CN":xe.Lang.JP.test(e)?"JP":"Unspecified"}function Lat(t){if(!t)return"";let e=t,r=e.toUpperCase();for(let n of bxr){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(Bat(o),"gi");c.test(e)&&(e=e.replace(c,` ${a.targetStandard} `),i=!0)});!i&&n.defaultStandard&&(e+=` ${n.defaultStandard} `)}return e}function mm(t){if(!t)return"";let e=zt(t);return e=e.replace(xe.Clean.NA_TAG,""),e=e.replace(xe.Season.PART_NORM,"part $1"),e=e.replace(xe.Season.PART_NORM_2,"part $1"),e=e.replace(xe.Season.FINAL,"\u6700\u7EC8\u5B63"),e=e.replace(xe.Season.NORM,"\u7B2C$1\u5B63"),e=e.replace(xe.Season.CN,(r,n)=>`\u7B2C${Gl(n)}\u5B63`),e=e.replace(xe.Season.ROMAN,(r,n,s,i)=>`${n}\u7B2C${{I:"1",II:"2",III:"3",IV:"4"}[s]}\u5B63${i}`),e=e.replace(xe.Lang.CN_DUB_VER,"\u4E2D\u914D\u7248"),e=e.replace(xe.Lang.JP_DUB_VER,""),e=e.replace(xe.Clean.SOURCE_TAG,""),e=e.replace(xe.Clean.REGION_LIMIT,""),e=e.replace(/(\d+)\.(\d+)/g,"$1{{DOT}}$2"),e=e.replace(xe.Clean.PUNCTUATION," "),e=e.replace(/{{DOT}}/g,"."),e.replace(xe.Clean.WHITESPACE," ").toLowerCase().trim()}function Wc(t){if(!t)return"";let e=Lat(t);e=zt(e);let r=e.match(/^(?:【|\[)(.+?)(?:】|\])/);if(r){let n=r[1];/^(TV|剧场版|åŠ‡å ´ç‰ˆ|movie|film|anime|动漫|动画|AVC|HEVC|MP4|MKV)$/i.test(n)||(e=e.replace(r[0],n+" "))}return e=e.replace(xe.Clean.SOURCE_TAG,""),e=e.replace(xe.Clean.FROM_SUFFIX,""),e=e.replace(xe.Clean.NA_TAG,""),e=e.replace(xe.Clean.PARENTHESES_CONTENT,""),e=e.replace(xe.Season.INFO_STRONG,""),e=e.replace(xe.Season.PART_INFO_STRONG,""),e=e.replace(xe.Clean.MOVIE_KEYWORDS,""),e=e.replace(xe.Lang.KEYWORDS_STRONG,""),e=e.replace(xe.Clean.LONE_VER_CHAR,""),e=e.replace(xe.Clean.NON_ALPHANUM_CN,""),e.toLowerCase()}function L1(t){if(!t)return"";let e=zt(t);return e=e.replace(xe.Episode.SUFFIX_DIGIT,""),e=e.replace(xe.Episode.FILE_NOISE,""),e=e.replace(xe.Episode.SEASON_PREFIX," "),e=e.replace(xe.Episode.CLEAN_SMART," "),e=e.replace(xe.Clean.SOURCE_TAG,""),e=e.replace(xe.Lang.CN_STD,"\u4E2D\u6587"),e=e.replace(xe.Lang.JP_STD,"\u65E5\u6587"),e=e.replace(/(\d+)\.(\d+)/g,"$1{{DOT}}$2"),e=e.replace(xe.Episode.PUNCTUATION," "),e=e.replace(/{{DOT}}/g,"."),e.replace(xe.Clean.WHITESPACE," ").toLowerCase().trim()}function Iat(t){return t?t.replace(xe.Clean.PARENTHESES_CONTENT,"").trim():""}function Roe(t){if(!t)return"";let e=String(t).split(Wu)[0].trim();if(e.startsWith("//"))return"https:"+e;let r=e.match(/^([^:]+):(.+)$/);if(r){let n=r[1].toLowerCase(),s=r[2];return n==="http"||n==="https"?e:/^https?:\/\//i.test(s)?s:s.startsWith("//")?"https:"+s:s}return e}function Cat(t){if(!t||t==="N/A")return{year:null,month:null};let e=new Date(t),r=e.getTime();if(isNaN(r))return{year:null,month:null};let n=e.getFullYear();return n>2030?{year:null,month:null}:{year:n,month:e.getMonth()+1}}function _xr(t,e){let r=t.length,n=e.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=t.charCodeAt(a-1);for(let u=1;u<=n;u++){let l=o===e.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 Exr(t,e){if(!t||!e)return 0;let r=new Set(t.replace(xe.Clean.WHITESPACE,"")),n=new Set(e.replace(xe.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+A*.2}let c=_xr(r,n),u=a===0?1:1-c/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 m=0,[h,y]=f2&&(b=m/x,b>.6&&x/Math.max(f,p)<.6&&(b-=.25)),Math.max(u,g,b)}function xo(t,e="",r=[]){let n=new Set,s=mm(e||""),i=l=>{let d=mm(Lat(l)),f=d.replace(xe.Season.PART_ANY,""),p=f.match(xe.Season.CN_STRUCTURE);if(p){let y={\u627F:"S2",\u8F6C:"S3",\u7ED3:"S4"};y[p[1]]&&n.add(y[p[1]])}if(xxr.forEach(y=>{let g=(y.useCleaned?f:d).match(y.regex);g&&n.add(y.prefix?`${y.prefix}${parseInt(g[1])}`:y.val)}),!k5.some(y=>{if(y.regex.test(f))return n.add(y.val),!0})){let y=f.match(xe.Season.SUFFIX_AMBIGUOUS);if(y){n.add("AMBIGUOUS");let g={II:"S2",III:"S3",IV:"S4"},b=y[1].toUpperCase();g[b]&&n.add(g[b])}}xe.Season.SUFFIX_SEQUEL.test(d)&&n.add("SEQUEL");let h={\u4E00:1,\u4E8C:2,\u4E09:3,\u56DB:4,\u4E94:5,final:99};for(let[y,g]of Object.entries(h))d.includes(`\u7B2C${y}\u5B63`)&&n.add(`S${g}`)};[t,...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 wi(t,e="",r=[]){let n=xo(t,e,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 Vg(t,e){let r=(t+" "+(e||"")).toLowerCase(),n=r.includes("\u7535\u5F71"),s=r.includes("\u7535\u89C6\u5267");return n&&!s?"MOVIE":s&&!n?"TV":null}function M1(t,e,r){if(r&&xe.Category.ANIMEKO_SOURCE.test(r))return"ANIME";let n=(t+" "+(e||"")).toLowerCase();return xe.Category.ANIME_KW.test(n)?"ANIME":xe.Category.REAL_KW.test(n)?"REAL":"UNKNOWN"}function vxr(t,e,r=!0){if(!t||!e||Wc(t)===Wc(e))return!1;let n=d=>{if(!d)return"";let f=zt(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()},s=n(t),i=n(e);if(s===i)return!1;let a=d=>{let f=[":","\uFF1A"," code:"," code\uFF1A"," season"," part"];for(let m of f){let h=d.indexOf(m);if(h!==-1)return d.substring(h).trim()}let p=d.split(xe.Clean.WHITESPACE);return p.length>=2?p.slice(1).join(" "):null},o=a(s),c=a(i),[u,l]=s.length1||f.length>2)return!0}}return!!(o&&c&&Exr(o,c)<.2)}function Mat(t,e,r,n){if(!((r||"").includes("\u5267\u573A\u7248")||(n||"").includes("\u5267\u573A\u7248")))return!1;let i=c=>c?zt(c).replace(xe.Clean.YEAR_TAG,"").replace(xe.Clean.SOURCE_TAG,"").replace(xe.Clean.FROM_SUFFIX,"").trim():"",a=i(t),o=i(e);if(xe.Clean.SPACE_STRUCTURE.test(a)&&xe.Clean.SPACE_STRUCTURE.test(o)){let c=d=>{let f=d.split(xe.Clean.SPLIT_SPACES);return f.length>1?f.slice(1).join(" "):""},u=c(a),l=c(o);return!(xe.Season.PURE_PART.test(u)||xe.Season.PURE_PART.test(l))}return!1}function Sxr(t,e,r,n,s,i,a="",o=""){let c=M1(t,r,a),u=M1(e,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"),p=(n||"").includes("2D"),m=!l&&!f,h=!d&&!p;if(!m&&h?/3[dD]/.test(e)?d=!0:/2[dD]/.test(e)&&(p=!0):!h&&m&&(/3[dD]/.test(t)?l=!0:/2[dD]/.test(t)&&(f=!0)),(l||f)&&(d||p)&&l!==d)return!0;let b=Vg(t,r),x=Vg(e,n);return!b||!x||b===x||Mat(t,e,r,n)?!1:s>0&&i>0?Math.abs(s-i)>5:!0}function Ixr(t,e,r,n,s=[],i=[]){let a=xo(t,r,s),o=xo(e,n,i);if(a.size===0&&o.size===0)return!1;let c=f=>Array.from(f).some(p=>p.startsWith("S")&&parseInt(p.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 p=o.has(f),m=Array.from(o).some(h=>h.startsWith("S"));if(!p&&m)return!0}return!1}return a.size!==o.size?!Mat(t,e,r,n):!1}function Cxr(t,e,r,n,s=[],i=[]){let a=xo(t,r,s),o=xo(e,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 Txr(t,e,r=!1){if(!t.year||!e.year)return .05;let n=t.year-e.year;if(n===0){if(t.month&&e.month){let i=Math.abs(t.month-e.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 wxr(t,e,r,n,s,i=!1){if(/^(dandan|animeko)$/i.test(n)||/^(dandan|animeko)$/i.test(s))return!0;if(i){let c=Math.min(e,r);return c>0&&t/c>.5?!0:!(t<2)}let a=Math.max(e,r);if(a===0)return!1;let o=t/a;return!(a>5&&o<.18)}function N5(t){if(!t)return null;let e=t.toLowerCase();return e.includes("opening")?"opening":e.includes("ending")?"ending":e.includes("interview")?"interview":e.includes("bloopers")?"Bloopers":null}function Ca(t,e=""){let r=!1,n=e;if(t){let m=t.match(xe.Episode.DANDAN_TAG);m&&(n=m[1].toLowerCase())}if(/^(dandan|animeko)$/i.test(n)&&t){let m=t.replace(xe.Clean.SOURCE_TAG,"").replace(xe.Clean.FROM_SUFFIX,"").trim();(xe.Episode.SPECIAL_START.test(m)||xe.Episode.DANDAN_IGNORE.test(m))&&(r=!0)}let i=mm(t||""),a=xe.Episode.MOVIE_CHECK.test(i),o=xe.Episode.PV_CHECK.test(i),c=null,u=null,l=N5(t),d=o||r||!!l||xe.Episode.SPECIAL_CHECK.test(i),f=i.match(xe.Episode.SEASON_MATCH);f&&(u=parseInt(f[1]));let p=i.match(xe.Episode.NUM_STRATEGY_A);if(p)c=parseFloat(p[2]);else{let m=i.match(xe.Episode.NUM_STRATEGY_B);if(m)c=parseFloat(m[1]);else{let h=i.match(xe.Episode.NUM_STRATEGY_C);h&&(c=parseFloat(h[1]))}}return{isMovie:a,num:c,isSpecial:d,isPV:o,season:u,isStrictSpecial:r}}function Noe(t,e,r=""){if(!t)return[];let s=["animeko","bilibili","bilibili1","bahamut","dandan"].includes(r);if(!e||s)return t.map((o,c)=>({link:o,originalIndex:c}));let i=[],a=[];if(t.forEach((o,c)=>{let u=o.title||o.name||"";e.test(u)?a.push(u):i.push({link:o,originalIndex:c})}),a.length>0){let o=r?`[${r}] `:"";ht("info",`[Merge-Check] ${o}\u547D\u4E2DEPISODE_TITLE_FILTER\u8FC7\u6EE4\uFF0C\u5DF2\u524D\u7F6E\u5254\u9664 ${a.length} \u96C6: ${a.join(", ")}`)}return i}var Tat=new Map;function O5(t,e,r){if(!t||t.length<2||!e)return"";let n=l=>{if(!l||!r)return l||"";try{let d=Tat.get(r);if(!d){let f=Bat(r);d=new RegExp(`(\\[|\u3010|\\s)?${f}(\\]|\u3011|\\s)?`,"gi"),Tat.set(r,d)}return l.replace(d,"").trim()}catch{return l}},s=n(e),i=s.match(xe.Clean.REDUNDANT_SEPARATOR);i&&(s=s.substring(0,i.index));let a=t.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=h)}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&&(xe.Clean.REDUNDANT_VALID_CHARS.test(u)||u.length>3)?(ht("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 wat(t,e){let r=new Set;if(!t)return r;let n=-1;for(let s=0;s{let a=s.title||s.name||"",o=Ca(a,e);o.num!==null&&!o.isSpecial&&!o.isPV&&o.num%1!==0&&i{let c=o.title||o.name||"",u=Ca(c,r);u.num!==null&&e.has(u.num)?(i.push(o),a++):s.push(o)}),a>0&&(t.length=0,t.push(...s,...i),ht("info",`[Merge-Check] [${n}] \u81EA\u52A8\u6C89\u5E95: \u79FB\u52A8\u4E86 ${a} \u4E2A\u4E2D\u95F4\u63D2\u503C\u96C6\u6570 (${Array.from(e).join(",")}) \u5230\u672B\u5C3E`))}function Nat(t,e,r="Unspecified",n="Unspecified",s="",i="",a="",o=""){if(t.length===0||e.length===0)return 0;let c=O5(t,a,s),u=O5(e,o,i),l=(R,w)=>R?w&&R.includes(w)?R.replace(w,""):R:"",d=(R,w,N,k)=>{let B=R.link.title||"",M=l(B,k),D=Ca(M,w),L=Ao(M),Z=L!=="Unspecified"?L:N,W=Z==="Unspecified"&&/^(dandan|animeko)$/i.test(w)?"JP":Z,U=L1(M),z=W==="CN"?M.replace(xe.Similarity.CN_STRICT_CORE_REMOVE,""):null;return{info:D,effLang:W,specialType:N5(M),cleanEpText:U,strictCnCore:z}},f=t.map(R=>d(R,s,r,c)),p=e.map(R=>d(R,i,n,u)),m=null,h=null;f.forEach(({info:R})=>{R.num!==null&&!R.isSpecial&&R.num%1===0&&(m=m===null?R.num:Math.min(m,R.num))}),p.forEach(({info:R})=>{R.num!==null&&!R.isSpecial&&R.num%1===0&&(h=h===null?R.num:Math.min(h,R.num))});let y=m!==null&&h!==null?m-h:null,g=15,b=y!==null?-y:0,x=Math.max(Math.min(-g,b-g),-Math.max(t.length,e.length)),A=Math.min(Math.max(g,b+g),Math.max(t.length,e.length)),S=0,I=-9999;for(let R=x;R<=A;R++){let w=0,N=0,k=0,B=new Map,M=!1,D=null;for(let L=0;L=t.length)continue;let W=f[Z],U=p[L],z=W.info,j=U.info,J=0;z.isMovie!==j.isMovie&&(J+=di.EP_ALIGN.MOVIE_TYPE_MISMATCH),(z.isStrictSpecial&&!j.isSpecial||j.isStrictSpecial&&!z.isSpecial)&&(J+=di.EP_ALIGN.SPECIAL_STRICT_MISMATCH);let se=W.effLang==="Unspecified"?"JP":W.effLang,oe=U.effLang==="Unspecified"?"JP":U.effLang;se===oe?J+=di.EP_ALIGN.LANG_MATCH:J+=di.EP_ALIGN.LANG_MISMATCH,z.season!==null&&j.season!==null&&z.season!==j.season&&(J+=di.EP_ALIGN.SEASON_NUM_MISMATCH),(W.specialType||U.specialType)&&(W.specialType!==U.specialType?J+=di.EP_ALIGN.SPECIAL_TYPE_MISMATCH:J+=di.EP_ALIGN.SPECIAL_TYPE_MATCH),z.isSpecial===j.isSpecial&&(J+=di.EP_ALIGN.IS_SPECIAL_MATCH),y!==null&&!z.isSpecial&&!j.isSpecial&&z.num-j.num===y&&(J+=di.EP_ALIGN.SEASON_SHIFT_EXACT,M=!0);let ue=0;W.effLang==="CN"&&U.effLang==="CN"&&W.strictCnCore&&U.strictCnCore&&(W.strictCnCore.includes(U.strictCnCore)||U.strictCnCore.includes(W.strictCnCore))?ue=z.num!==null&&j.num!==null&&z.num===j.num?di.EP_ALIGN.CN_STRICT_MATCH:di.EP_ALIGN.CN_STRICT_MISMATCH:ue=pm(W.cleanEpText,U.cleanEpText),J+=ue,N+=ue,z.num!==null&&j.num!==null&&z.num===j.num&&(J+=di.EP_ALIGN.NUMERIC_MATCH);let Te=1;if(z.num!==null&&!z.isSpecial&&(D!==null&&z.num-D>1?Te=.1:D=z.num),J*=Te,ue*=Te,N+=ue,w+=J,z.num!==null&&j.num!==null){let Ne=(j.num-z.num).toFixed(4);B.set(Ne,(B.get(Ne)||0)+Te)}k++}if(k>0){let L=w/k,Z=0;for(let j of B.values())Z=Math.max(Z,j);let W=Z/k,U=N/k;W>.6&&(M||U>.33)&&(L+=di.EP_ALIGN.PATTERN_CONSISTENCY_BONUS),L+=Math.min(k*.15,1.5);let z=B.get("0.0000")||0;z>3?(L+=di.EP_ALIGN.ZERO_DIFF_BONUS_BASE,L+=z*di.EP_ALIGN.ZERO_DIFF_BONUS_PER_HIT):z>0&&(L+=z*2),L>I&&(I=L,S=R)}}return I>.3?S:0}function Rxr(t,e,r){let n=new Map,s=[];for(let o of t){if(r&&r.has(o.animeId))continue;let c=O.animes.find(f=>String(f.animeId)===String(o.animeId))||o;if(M1(c.animeTitle,c.typeDescription,c.source)==="REAL"){s.push(` [\u5254\u9664] [${c.source}] ${c.animeTitle} (\u7C7B\u578B: \u771F\u4EBA\u5267/REAL)`);continue}if(Vg(c.animeTitle,c.typeDescription)==="MOVIE"){s.push(` [\u5254\u9664] [${c.source}] ${c.animeTitle} (\u7C7B\u578B: \u7535\u5F71/MOVIE)`);continue}let d=wi(c.animeTitle,c.typeDescription,c.aliases);if(d!==null&&c.links){let p=Noe(c.links,e,c.source).filter(m=>{let h=m.link.title||m.link.name||"",g=mm(h).replace(xe.Clean.SOURCE_TAG,"").replace(xe.Clean.FROM_SUFFIX,"").trim();return!(/^(dandan|animeko)$/i.test(c.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(h))}).length;if(p>0){n.has(d)||n.set(d,new Map);let m=n.get(d);m.has(p)||m.set(p,[]),m.get(p).push(c.source),s.push(` [\u91C7\u7EB3] [${c.source}] S${d} = ${p}\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[p,m]of c.entries()){let h=m.length;h>l?(l=h,u=p,d=m):h===l&&p`${p}\u96C6(x${m.length})[${m.join(",")}]`).join(", ");a.push(`S${o}=${u} (\u63A8\u65AD\u6765\u6E90: ${d.join(",")} | \u7EDF\u8BA1: ${f})`)}return(s.length>0||a.length>0)&&ht("info",`[Merge-Check] [Map-Build] \u5B63\u5EA6\u5730\u56FE\u6784\u5EFA\u8BE6\u60C5: ${s.join(` `)} - => \u6700\u7EC8\u5224\u5B9A: { ${a.join("; ")} }`),i}function Q0r(t,e,r=""){let n=`${t}_${e}_${r}`,s=0;for(let i=0;i=0;l--){let d=t.links[l],f=d.title||d.name||"",p=Aa(f,t.source);if(!p.isSpecial&&!p.isPV&&!p.isStrictSpecial&&p.num!==null){o=l;break}}for(let l of e){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?s.push(l):i.push(l)}let c=[],u=(l,d,f)=>{l.length>0&&(l.sort((p,m)=>p.originalIndex-m.originalIndex),d.push(...l.map(p=>Rnt(p,r))),c.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),t.links.unshift(...n.map(l=>Rnt(l,r))),c.push(` [\u8865\u5168-\u5934\u90E8] \u63D2\u5165 ${n.length} \u96C6 (${n.map(l=>l.link.title).join(", ")})`)),u(s,t.links,"\u5C3E\u90E8"),u(i,t.links,"\u7279\u6B8A"),c.length>0&&mt("info",`[Merge] [${r}] \u667A\u80FD\u8865\u5168: + => \u6700\u7EC8\u5224\u5B9A: { ${a.join("; ")} }`),i}function Nxr(t,e,r=""){let n=`${t}_${e}_${r}`,s=0;for(let i=0;i=0;l--){let d=t.links[l],f=d.title||d.name||"",p=Ca(f,t.source);if(!p.isSpecial&&!p.isPV&&!p.isStrictSpecial&&p.num!==null){o=l;break}}for(let l of e){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?s.push(l):i.push(l)}let c=[],u=(l,d,f)=>{l.length>0&&(l.sort((p,m)=>p.originalIndex-m.originalIndex),d.push(...l.map(p=>Oat(p,r))),c.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),t.links.unshift(...n.map(l=>Oat(l,r))),c.push(` [\u8865\u5168-\u5934\u90E8] \u63D2\u5165 ${n.length} \u96C6 (${n.map(l=>l.link.title).join(", ")})`)),u(s,t.links,"\u5C3E\u90E8"),u(i,t.links,"\u7279\u6B8A"),c.length>0&&ht("info",`[Merge] [${r}] \u667A\u80FD\u8865\u5168: ${c.join(` -`)}`)}function V0r(t){let e=new Map;if(!t||t.length<2)return e;let r=t.map(s=>{let i=s.animeTitle||"",a=V0(i).replace(ye.Clean.SOURCE_TAG,"").replace(ye.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 r4)if(s.clean.match(a.regex)){i=s.clean.replace(a.regex,"").trim();break}if(!i){let a=s.clean.match(ye.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)&&(e.set(String(s.id),i),mt("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 e}function z0r(t,e){let r={isStrongMatch:!1,isStrongMismatch:!1};if(!t.links||!e.links||!t.links.length||!e.links.length)return r;let n=h=>h.filter(A=>{let g=(A.title||A.name||"").toLowerCase();return!ye.Episode.PV_CHECK.test(g)&&!ye.Episode.SPECIAL_CHECK.test(g)}).length,s=n(t.links),i=n(e.links);s>5&&i>5&&Math.min(s,i)/Math.max(s,i)<.4;let a=h=>h.map(A=>tE(A.title||A.name||"").replace(/\d+/g,"").trim()).filter(A=>A.length>1),o=a(t.links),c=a(e.links);if(o.length<3||c.length<3)return r;let u=oo(o.join(" ")),l=oo(c.join(" "));if(u!==l||u==="Unspecified")return r;let d=Math.min(o.length,c.length,5),f=0,p=0,m=[];for(let h=0;h.6?f++:b<.3&&p++}return f>=Math.ceil(d*.6)?(r.isStrongMatch=!0,mt("info",`[Merge-Check] [Probe] \u91C7\u6837\u5BF9\u6BD4 (Match): ${m.join(", ")}`)):p>=Math.ceil(d*.8)&&(r.isStrongMismatch=!0,mt("info",`[Merge-Check] [Probe] \u91C7\u6837\u5BF9\u6BD4 (Mismatch): ${m.join(", ")}`)),r}function wie(t,e){let r=O.customMergeRules||[];if(r.length===0)return null;let n=bi(t.animeTitle,t.typeDescription,t.aliases),s=bi(e.animeTitle,e.typeDescription,e.aliases),i=(a,o)=>{let c=Gt(a||"").toLowerCase().replace(ye.Clean.FROM_SUFFIX,""),u=Gt(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 p=f[1];/^(TV|剧场版|åŠ‡å ´ç‰ˆ|movie|film|anime|动漫|动画|电影|电视剧|连续剧|综艺|真人秀|纪录片|日剧|韩剧|美剧|英剧|泰剧|国产剧|港剧|台剧|短剧|微短剧|特摄|OVA|OAD|SP|AVC|HEVC|MP4|MKV)$/i.test(p)||(c=c.replace(f[0],p+" "))}c=c.replace(ye.Clean.SOURCE_TAG,"").replace(/\[.*?\]/g,"")}return!u.includes("\u5B63")&&!u.includes("season")&&(c=c.replace(ye.Season.INFO_STRONG,"")),c=c.replace(ye.Clean.MOVIE_KEYWORDS,""),{target:Fr(c).replace(/\s+/g,""),rule:Fr(u).replace(/\s+/g,"")}};for(let a of r){let o=A=>String(A).split(Sg)[0],c=o(a.primary.source),u=o(a.secondary.source),l=String(t.source).split(Sg),d=String(e.source).split(Sg);if(!l.includes(c)||!d.includes(u))continue;let f=i(t.animeTitle,a.primary.title),p=i(e.animeTitle,a.secondary.title),m=f.target===f.rule,h=p.target===p.rule;if(!(!m||!h)&&!(a.primary.season!==null&&(n||1)!==a.primary.season)&&!(a.secondary.season!==null&&(s||1)!==a.secondary.season))return a}return null}function K0r(t,e,r=new Set,n=[]){if(!e||e.length===0)return[];let s=t.animeTitle||"",i=s.replace(ye.Clean.YEAR_TAG,"").replace(/【(电影|电视剧)】/g,"").trim(),a=!!i.match(ye.Lang.CN_DUB_VER)||ye.Lang.CN.test(i),o=t.source==="hanjutv",c=s.includes("N/A")||o?{year:null,month:null}:vnt(t.startDate),u=t.episodeCount||(t.links?t.links.length:0),l=oo(s),d=V0(i),f=Tc(i),p=co(s,t.typeDescription,t.aliases),m=Array.from(p).filter(w=>w.startsWith("S")),h=[{animeId:t.animeId,animeTitle:s},...e],A=V0r(h),g=A.has(String(t.animeId)),b=A.get(String(t.animeId)),y=r.has(t.animeId),x=(w,N)=>{mt("info",`[Merge-Check] \u62D2\u7EDD: [${t.source}] ${s} vs [${w}] -> ${N}`)},v=[],C=0;for(let w of e){let N=w.animeTitle||"",P=wie(t,w);if(P){if(P.action==="block"){x(N,"\u88AB\u6620\u5C04\u8868 [\xD7] \u660E\u786E\u7981\u6B62\u4E0E\u4E3B\u6E90\u5408\u5E76");continue}let X=oo(N);v.push({anime:w,score:1,lang:X,debugTitle:N,isCustomMapped:!0}),mt("info",`[Merge-Check] \u5408\u5E76\u6620\u5C04\u8868\u7279\u6743\u653E\u884C: [${t.source}] ${s} <-> [${w.source}] ${N}`);continue}if(!n.includes(w.source)){x(N,"\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 L=r.has(w.animeId),M=y||L,k=w.source==="hanjutv",B=N.includes("N/A")||k?{year:null,month:null}:vnt(w.startDate),Z=oo(N),W=N.replace(ye.Clean.YEAR_TAG,"").replace(/【(电影|电视剧)】/g,"").trim(),F=!!W.match(ye.Lang.CN_DUB_VER)||ye.Lang.CN.test(W),V=a||F,j=w.episodeCount||(w.links?w.links.length:0);if(W.includes("\u4E4B")){let X=W.split("\u4E4B"),ie=V0(X[0]);if(d===ie){x(N,`\u7ED3\u6784\u51B2\u7A81: \u4E3B\u6807\u9898\u662F\u526F\u6807\u9898\u7684\u524D\u7F00\u7236\u96C6 (Prefix: "${ie}")`);continue}}if($0r(s,N,t.typeDescription,w.typeDescription,u,j,t.source,w.source)){let X=rE(s,t.typeDescription,t.source),ie=rE(N,w.typeDescription,w.source);x(N,`\u5A92\u4F53\u7C7B\u578B\u6216\u7EF4\u6570\u4E0D\u5339\u914D (P:${X}/${vg(s,t.typeDescription)} [${t.typeDescription}] vs S:${ie}/${vg(N,w.typeDescription)} [${w.typeDescription}])`);continue}let J=c.year!==null&&B.year!==null,se=W0r(s,N,J);if(A.has(String(w.animeId))){let X=A.get(String(w.animeId));if(f===Tc(X)&&!(ye.Season.SUFFIX_AMBIGUOUS.test(d)||r4.some(ce=>ce.regex.test(d)))){x(N,`\u4E0A\u4E0B\u6587\u963B\u65AD: \u4E3B\u6E90(S1) vs \u526F\u6E90(S2/S\u7EED\u4F5C) (Base: "${X}")`);continue}}if(g&&Tc(W)===Tc(b)){x(N,`\u4E0A\u4E0B\u6587\u963B\u65AD: \u4E3B\u6E90(S2/Sequel) vs \u526F\u6E90(Base/S1) (Base: "${b}")`);continue}if(!J&&se){x(N,"\u6807\u9898\u7ED3\u6784\u51B2\u7A81\u4E14\u65E5\u671F\u65E0\u6548");continue}let ue=U0r(i,W,t.typeDescription,w.typeDescription,t.aliases,w.aliases),Ce=z0r(t,w),we=s.search(ye.Clean.MOVIE_KEYWORDS)!==-1,qe=N.search(ye.Clean.MOVIE_KEYWORDS)!==-1;if(we!==qe){let X=co(N,w.typeDescription,w.aliases),ie=Ne=>Tc(Ne.replace(ye.Clean.MOVIE_KEYWORDS,"")),ce=ie(s),fe=ie(N);if(G0(ce,fe)>.9&&!p.has("SEQUEL")&&!X.has("SEQUEL")){x(N,`\u5267\u573A\u7248\u6807\u9898\u963B\u65AD: [${we?"Movie":"TV"}] vs [${qe?"Movie":"TV"}] (\u65E0\u7EED\u7BC7\u6807\u8BC6)`);continue}}let Fe=M?0:q0r(c,B,V);if(Fe===-1){let X=ue;if(Ce.isStrongMatch&&(X=!0),M&&(X=!0),se&&!M&&(X=!1),X&&c.year&&B.year&&Math.abs(c.year-B.year)>2&&!Ce.isStrongMatch&&!M&&(X=!1),!X){x(N,`\u65E5\u671F\u4E25\u91CD\u4E0D\u5339\u914D\u4E14\u65E0\u8C41\u514D (P:${c.year} vs S:${B.year}, IsDub:${V})`);continue}}if(!M&&F0r(i,W,t.typeDescription,w.typeDescription,t.aliases,w.aliases))if(Ce.isStrongMatch)mt("info",`[Merge-Check] \u5B63\u5EA6\u51B2\u7A81\u8C41\u514D: [${s}] vs [${N}] (Probe\u5F3A\u5339\u914D)`);else{x(N,"\u5B63\u5EA6\u6807\u8BB0\u51B2\u7A81");continue}let _e=X=>X?String(X).replace(ye.Clean.YEAR_TAG,"").replace(/【(电影|电视剧)】/g,"").trim():"",U=Array.from(new Set([i,...t.aliases||[]].map(_e).filter(Boolean))),G=Array.from(new Set([W,...w.aliases||[]].map(_e).filter(Boolean))),z=0,q=0;for(let X of U){let ie=Snt(X);for(let ce of G)z=Math.max(z,G0(X,ce)),q=Math.max(q,G0(ie,Snt(ce)))}let H=Math.max(z,q),ee=H;se&&(H+=ai.TITLE_STRUCTURE_CONFLICT),Fe!==-1&&(H+=Fe);let ne=l==="CN",re=Z==="CN";if(ne&&re?H+=ai.LANG_MATCH_CN:ne!==re&&(H+=ai.LANG_MISMATCH),Ce.isStrongMatch?(mt("info",`[Merge-Check] \u96C6\u5185\u5BB9\u63A2\u6D4B: \u5F3A\u5339\u914D! \u63D0\u5347\u5206\u6570 (\u539F\u5206: ${H.toFixed(2)}) -> ${Ql.SIMILARITY_STRONG}`),H=Math.max(H,Ql.SIMILARITY_STRONG)):Ce.isStrongMismatch&&(x(N,"\u96C6\u5185\u5BB9\u63A2\u6D4B: \u5F3A\u4E0D\u5339\u914D (\u96C6\u6807\u9898/\u5185\u5BB9\u5DEE\u5F02\u5DE8\u5927)"),H=0),HC&&(C=H),v.push({anime:w,score:H,lang:Z,debugTitle:N}),mt("info",`[Merge-Check] \u5019\u9009\u9009\u4E2D: ${N} Score=${H.toFixed(2)} (BestSoFar=${C.toFixed(2)})`)}if(v.length===0||Cw.isCustomMapped))return[];let R=v.filter(w=>{if(w.isCustomMapped||w.score>=C-Ql.TIER_DEFAULT||w.lang==="CN"&&w.score>=C-Ql.TIER_CN)return!0;let N=co(w.debugTitle,w.anime.typeDescription,w.anime.aliases);if(Array.from(N).some(L=>L.startsWith("P"))&&w.score>=C-Ql.TIER_PART){let L=Array.from(N).filter(M=>M.startsWith("S"));if(m.length>0&&L.length>0){if(m.some(k=>L.includes(k)))return!0}else return!0}return!1});return R.sort((w,N)=>w.isCustomMapped&&!N.isCustomMapped?-1:!w.isCustomMapped&&N.isCustomMapped?1:N.score-w.score),R.map(w=>w.anime)}function Y0r(t){let e=new Set;if(!t||t.length===0)return e;let r={\u4E00:"1",\u4E8C:"2",\u4E09:"3",\u56DB:"4",\u4E94:"5",\u516D:"6",\u4E03:"7",\u516B:"8",\u4E5D:"9",\u5341:"10"},n=new Map;t.forEach(s=>{let i=O.animes.find(f=>String(f.animeId)===String(s.animeId))||s,a=co(i.animeTitle,i.typeDescription,i.aliases);if(a.has("MOVIE")||a.has("OVA")||a.has("SP")||a.has("SEQUEL"))return;let o=Gt(s.animeTitle||""),c=o.match(/^(?:【|\[)(.+?)(?:】|\])/);if(c){let f=c[1];/^(TV|剧场版|åŠ‡å ´ç‰ˆ|movie|film|anime|动漫|动画|AVC|HEVC|MP4|MKV)$/i.test(f)||(o=o.replace(c[0],f+" "))}o=o.replace(/第([一二三四五六七八九十])å­£/g,(f,p)=>`\u7B2C${r[p]}\u5B63`);let u=o.replace(ye.Clean.SOURCE_TAG,"").replace(ye.Clean.FROM_SUFFIX,"").replace(ye.Clean.YEAR_TAG,"").replace(ye.Clean.META_SUFFIX,"").replace(ye.Lang.KEYWORDS_STRONG,"");if(r4.forEach(f=>u=u.replace(f.regex,"")),u=u.replace(ye.Season.SUFFIX_AMBIGUOUS,"").replace(/(?:第|S)\d+(?:å­£|期|部)/gi,"").replace(/(?:Part|P)\s*\d+/gi,"").replace(/\s+/g,"").toLowerCase().trim(),!u)return;let l=rE(s.animeTitle,i.typeDescription,i.source),d=`${u}|${l}`;n.has(d)||n.set(d,[]),n.get(d).push(s)});for(let[s,i]of n.entries()){if(i.length<2)continue;let[a,o]=s.split("|"),c=i.map(f=>` - [${f.source}] ${f.animeTitle}`).join(` -`);mt("info",`[Merge-Check] [\u5408\u96C6\u63A2\u6D4B] \u6B63\u5728\u68C0\u67E5\u5206\u7EC4: "${a}" [${o}] (\u5305\u542B ${i.length} \u4E2A\u6761\u76EE): -${c}`);let u=new Map,l=0;if(i.forEach(f=>{let p=O.animes.find(b=>String(b.animeId)===String(f.animeId))||f,m=co(p.animeTitle,p.typeDescription,p.aliases),h=1;for(let b of m)if(b.startsWith("S")){let y=parseInt(b.substring(1));isNaN(y)||(h=y)}if(h===1){let b=m.has("SEQUEL")||ye.Season.SUFFIX_SEQUEL.test(p.animeTitle),y=m.has("AMBIGUOUS")||ye.Season.SUFFIX_AMBIGUOUS.test(p.animeTitle);(b||y)&&(h=2,mt("info",`[Merge-Check] [Detail] [${p.source}] "${p.animeTitle}" -> \u5224\u5B9A\u4E3A S2 (Reason: Sequel/Ambiguous Suffix)`))}h>l&&(l=h);let A=0;p.links&&(/^(dandan|animeko)$/i.test(p.source)?A=p.links.filter(b=>{let y=b.title||b.name||"",x=y.replace(ye.Clean.SOURCE_TAG,"").replace(ye.Clean.FROM_SUFFIX,"").trim();if(ye.Episode.SPECIAL_CHECK.test(x)||ye.Episode.DANDAN_IGNORE.test(x))return!1;let v=V0(y);return!(ye.Episode.SPECIAL_CHECK.test(v)||ye.Episode.DANDAN_IGNORE.test(v)||ye.Episode.MAP_EXCLUDE_KEYWORDS.test(x)||ye.Episode.MAP_EXCLUDE_KEYWORDS.test(y))}).length:A=p.links.length),u.has(p.source)||u.set(p.source,{seasonCounts:{},maxSeason:0,s1Candidates:[]});let g=u.get(p.source);g.seasonCounts[h]||(g.seasonCounts[h]=0),g.seasonCounts[h]=Math.max(g.seasonCounts[h],A),h>g.maxSeason&&(g.maxSeason=h),h===1&&g.s1Candidates.push({anime:p,originalCount:A})}),l<=1)continue;let d=Array.from(u.keys());for(let[f,p]of u.entries()){if(p.maxSeason>1)continue;let m=0,h=!1;for(let g of d){if(g===f)continue;let b=u.get(g);b.seasonCounts[1]&&(h=!0,b.seasonCounts[1]>m&&(m=b.seasonCounts[1]))}if(!h)continue;let A=m+Ql.COLLECTION_DIFF;p.s1Candidates.forEach(g=>{let b=m>0?g.originalCount/m:0;if(g.originalCount>A){if(b>Ql.COLLECTION_RATIO){mt("info",`[Merge-Check] [\u5408\u96C6\u63A2\u6D4B] \u62D2\u7EDD: [${f}] ${g.anime.animeTitle} (Ratio too high: ${b.toFixed(2)} > ${Ql.COLLECTION_RATIO})`);return}e.add(g.anime.animeId),mt("info",`[Merge-Check] [\u5408\u96C6\u63A2\u6D4B] \u53D1\u73B0\u7591\u4F3C\u5408\u96C6(\u5355\u4F53): [${f}] ${g.anime.animeTitle} (Count:${g.originalCount} > Thr:${A}, Ratio:${b.toFixed(2)}) -> \u6807\u8BB0\u4E3A\u5408\u96C6`)}else mt("info",`[Merge-Check] [\u5408\u96C6\u63A2\u6D4B] \u672A\u547D\u4E2D: [${f}] ${g.anime.animeTitle} (Count:${g.originalCount} <= Threshold:${A})`)})}}return e}async function Cie(t){let{pAnime:e,availableSecondaries:r,curAnimes:n,groupConsumedIds:s,globalConsumedIds:i,generatedSignatures:a,epFilter:o,groupFingerprint:c,currentPrimarySource:u,logPrefix:l,limitSecondaryLang:d,collectionAnimeIds:f,allowReuseIds:p,collectionProgress:m,baseSecondaries:h}=t;if(f.has(e.animeId)&&s.has(e.animeId))return mt("info",`${l} \u8DF3\u8FC7: [${u}] \u662F\u5408\u96C6\u4E14\u5DF2\u4F5C\u4E3A\u7EC4\u5185\u526F\u6E90\u53C2\u4E0E\u8FC7\u5408\u5E76\u3002`),null;let A=vie(e);if(!A.links){let k=O.animes.find(B=>String(B.animeId)===String(e.animeId));A.links=k?.links?vie(k.links):[]}if(!A.links||A.links.length===0)return mt("warn",`${l} \u4E3B\u6E90\u6570\u636E\u4E0D\u5B8C\u6574\uFF0C\u8DF3\u8FC7: ${e.animeTitle}`),null;let g=e.animeTitle.replace(ye.Clean.FROM_SUFFIX,""),b=[],y=[e.animeId],x=!1,v=oo(e.animeTitle),C=t4(A.links,e.animeTitle,u),R=f.has(e.animeId),w=(k,B)=>k?B&&k.includes(B)?k.replace(B,""):k:"",N=Tc(e.animeTitle),P=n.filter(k=>Tc(k.animeTitle)===N),L=H0r(P,o,f);if(L.size>0){let k=Array.from(L.entries()).map(([B,Z])=>`S${B}=${Z}`).join(", ");(R||r.some(B=>n.some(Z=>Z.source===B&&f.has(Z.animeId))))&&mt("info",`${l} [\u5408\u96C6\u5904\u7406] \u6784\u5EFA\u5B63\u5EA6\u96C6\u6570\u5730\u56FE (Mode\u7B56\u7565): { ${k} }`)}let M=[];for(let k of r){let B=n.filter(V=>{if(V.source!==k)return!1;let j=wie(e,V);if(j)return j.action==="block"?(mt("info",`${l} \u62E6\u622A: \u526F\u6E90 [${V.source}] ${V.animeTitle} \u88AB\u6620\u5C04\u8868 [\xD7] \u89C4\u5219\u660E\u786E\u963B\u65AD`),!1):!0;if(R)return!0;let J=s.has(V.animeId),se=p&&p.has(V.animeId);return!(J&&!se)}),Z=[],W=new Set;for(let V of B)W.has(V.animeId)||(W.add(V.animeId),Z.push(V));if(B=Z,d&&(B=B.filter(V=>oo(V.animeTitle)===d)),B.length>1&&B.sort((V,j)=>{let J=oo(V.animeTitle)==="CN",se=oo(j.animeTitle)==="CN";return J===se?0:J?1:-1}),B.length===0)continue;let F=K0r(e,B,f,h);M.push(...F)}if(M.length>0){if(M.length>1&&(R||M.some(k=>f.has(k.animeId)))){M.sort((B,Z)=>{let W=bi(B.animeTitle,B.typeDescription,B.aliases)||1,F=bi(Z.animeTitle,Z.typeDescription,Z.aliases)||1;if(W!==F)return W-F;let V=r.indexOf(B.source),j=r.indexOf(Z.source);return V-j});let k=M.map(B=>`[${B.source}]S${bi(B.animeTitle,B.typeDescription,B.aliases)||1}`);mt("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: ${k.join(" -> ")}`)}for(let k of M){let B=k.source,Z=wie(e,k);if(Z&&Z.action==="block"){mt("info",`${l} [\u5B89\u5168\u7F51\u62E6\u622A] \u5173\u8054\u53D6\u6D88: [${u}] ${e.animeTitle} <-> [${B}] ${k.animeTitle} \u88AB\u660E\u786E\u963B\u65AD`);continue}if(!R&&!(p&&p.has(k.animeId))&&!Z&&s.has(k.animeId))continue;let W=O.animes.find(Pe=>String(Pe.animeId)===String(k.animeId));if(!W?.links)continue;let F=vie(W),V=[],j=new Set,J=[],se=[],oe=F.animeTitle.replace(ye.Clean.FROM_SUFFIX,""),ue=Int(A.links,u),Ce=Int(F.links,B),we=new Set([...Ce].filter(Pe=>!ue.has(Pe))),qe=new Set([...ue].filter(Pe=>!Ce.has(Pe)));qe.size>0&&Tnt(A.links,qe,u,`\u4E3B\u6E90:${u}`),we.size>0&&Tnt(F.links,we,B,`\u526F\u6E90:${B}`);let Fe=F.links,_e=Tie(A.links,o,u),U=Tie(Fe,o,B),G=oo(F.animeTitle),z=_e,q=U,H=0,ee=0,ne=f.has(k.animeId),re=(Pe,Ue,Ke)=>{let Ye=0,Ze=Ue;if(Ke&&Ke>1){let nt=!1,ct=Pe?e.animeId:k.animeId;if(m&&m.has(ct)){let tt=m.get(ct),Dt=Ke-1;if(tt[`S${Dt}`]!==void 0){let lt=tt[`S${Dt}`]+1;lt>0&<=Ue.length){let lt=(Ke-1)*12;lt Total ${Ue.length}\uFF0C\u542F\u7528\u56DE\u9000\u4F30\u7B97 (S${Ke} -> Index ${lt})`),Dt=Math.max(0,lt-2))}if(Dt>0&&DtPe.isSpecial||Pe.isStrictSpecial||Pe.num!==null&&Pe.num%1!==0,fe=new Map,Ne=0;if(Z&&Z.hasRoutes){mt("info",`${l} \u542F\u7528\u6620\u5C04\u8868\u7CBE\u786E\u8DEF\u7531: ${e.animeTitle} <-> ${k.animeTitle}`);let Ue=wnt(z,q,v,G,u,B,e.animeTitle,F.animeTitle)+H-ee;Ne=Ue;let Ke=new Map;for(let Ye of Z.routes){let Ze=Ye.sec.end-Ye.sec.start+1,nt=Ye.prim.end-Ye.prim.start+1;if(Ze!==nt){mt("warn",`[Merge] [\u6620\u5C04\u8868] \u8DEF\u7531\u533A\u95F4\u8DE8\u5EA6\u4E0D\u5BF9\u7B49\uFF0C\u8DF3\u8FC7\u6B64\u6BB5: E${Ye.sec.start}~E${Ye.sec.end} > E${Ye.prim.start}~E${Ye.prim.end}`);continue}for(let ct=0;ct{let An=Aa(w(rt.link.title||rt.link.name,C),u),Ct=An.num;return Ct===null&&!An.isStrictSpecial&&(Ct=bt+1),Ct===Je&&!An.isSpecial&&!An.isStrictSpecial});if(ft!==-1){fe.set(Ye,ft),lt.relativeIndex=ft;let rt=_e[ft].originalIndex,bt=A.links[rt],An=bt.name||bt.title||`Index ${rt}`,Ct=Iie(nt.url),Sr=bt.url,Us=`${B}:${Ct}`;Sr.includes(Iu)||Sr.startsWith(u+":")||(Sr=`${u}:${Sr}`);let Dr=`${Sr}${Iu}${Us}`,qs=bt.title;if(qs){let js=B,ys=(nt.title||"").match(/^【([^】\d]+)(?:\d*)】/);ys&&(js=ys[1].trim()),qs=qs.replace(/^【([^】]+)】/,(Hs,Lu)=>`\u3010${Lu}${Sg}${js}\u3011`)}V.push({idx:ft,text:` [\u5DF2\u8DEF\u7531\u6620\u5C04] ${An} <-> ${ct} (Rule: E${De}>E${Je})`}),j.add(ft),X++,J.push({linkIndex:rt,newUrl:Dr,newTitle:qs})}else lt.relativeIndex=Ye+Ue,V.push({idx:lt.relativeIndex,text:` [\u8DEF\u7531\u5931\u8D25] \u4E3B\u6E90\u627E\u4E0D\u5230 E${Je} <-> ${ct}`}),se.push(lt)}}else{Z&&mt("info",`${l} \u547D\u4E2D\u6620\u5C04\u8868\u5E38\u89C4\u5408\u5E76: [${B}] ${k.animeTitle} -> [${u}] ${e.animeTitle} (\u5DF2\u514D\u68C0\u653E\u884C\uFF0C\u4EA4\u7531\u7CFB\u7EDF\u81EA\u52A8\u5BF9\u9F50)`),Ne=wnt(z,q,v,G,u,B,e.animeTitle,F.animeTitle)+H-ee,Ne!==0&&mt("info",`${l} \u96C6\u6570\u81EA\u52A8\u5BF9\u9F50 (${B}): Offset=${Ne} (P:${_e.length}, S:${U.length})`);let Ue=new Map,Ke=null;U.forEach((ct,tt)=>{let Dt=_e[tt+Ne];if(!Dt)return;let lt=w(Dt.link.title||Dt.link.name,C),De=w(ct.link.title||ct.link.name,ie),Je=Aa(lt,u),ft=Aa(De,B);if(Je.num===null||ft.num===null||ce(Je)||ce(ft))return;let rt=Je.num-ft.num,An=1+(G0(tE(lt),tE(De))>.45?1:0);Ke!==null&&Je.num-Ke>1?An=.1:Ke=Je.num,Ue.set(rt,(Ue.get(rt)||0)+An)});let Ye=Ue.size>0?[...Ue.entries()].reduce((ct,tt)=>tt[1]>ct[1]?tt:ct)[0]:null,Ze=_e.reduce((ct,tt,Dt)=>{let lt=Aa(w(tt.link.title||tt.link.name,C),u);return ce(lt)&&!lt.isPV&&ct.push(Dt),ct},[]),nt=0;for(let ct=0;ct{let Sr=Aa(w(Ct.link.title||Ct.link.name,C),u);return Sr.num===An&&!ce(Sr)}),tt!==-1)rt.relativeIndex=tt;else{let Ct=-.5;for(let Sr=_e.length-1;Sr>=0;Sr--){let Us=Aa(w(_e[Sr].link.title||_e[Sr].link.name,C),u);if(Us.num!==null&&!Us.isSpecial&&Us.numCt&&(Ct=js,An=Us)}An===-1&&!ft.isPV&&nt=0&&tt<_e.length){fe.set(ct,tt);let An=_e[tt].originalIndex,Ct=A.links[An],Sr=Ct.name||Ct.title||`Index ${An}`,Us=w(Ct.title,C),Dr=e4(Us),qs=e4(Je),js=Aa(Us,u);if(ft.isPV&&!Dr){V.push({idx:rt.relativeIndex,text:` [\u7565\u8FC7] ${Sr} =/= ${De} (PV\u4E0D\u5339\u914D\u6B63\u7247)`}),se.push(rt);continue}if(Dr!==qs){V.push({idx:rt.relativeIndex,text:` [\u7565\u8FC7] ${Sr} =/= ${De} (\u7279\u6B8A\u96C6\u7C7B\u578B\u4E0D\u5339\u914D)`}),se.push(rt);continue}let ys=js.isStrictSpecial||js.num!==null&&js.num%1!==0,Hs=ft.isStrictSpecial||ft.num!==null&&ft.num%1!==0,Lu=!js.isSpecial&&(js.num===null||js.num%1===0),go=!ft.isSpecial&&(ft.num===null||ft.num%1===0);if(ys&&go||Hs&&Lu){V.push({idx:rt.relativeIndex,text:` [\u7565\u8FC7] ${Sr} =/= ${De} (\u6B63\u7247\u4E0E\u756A\u5916\u963B\u65AD)`}),se.push(rt);continue}let Dc=Iie(lt.url),Ta=Ct.url,yn=`${B}:${Dc}`;Ta.includes(Iu)||Ta.startsWith(u+":")||(Ta=`${u}:${Ta}`);let wa=`${Ta}${Iu}${yn}`,rd=Ct.title;if(rd){let Ao=B;if(lt.title){let bA=lt.title.match(/^【([^】\d]+)(?:\d*)】/);bA&&(Ao=bA[1].trim())}rd=rd.replace(/^【([^】]+)】/,(bA,l6)=>`\u3010${l6}${Sg}${Ao}\u3011`)}V.push({idx:rt.relativeIndex,text:` [\u5339\u914D] ${Sr} <-> ${De}`}),j.add(tt),X++,J.push({linkIndex:An,newUrl:wa,newTitle:rd})}else V.push({idx:rt.relativeIndex,text:` [\u843D\u5355] (\u4E3B\u6E90\u8D8A\u754C) <-> ${De}`}),se.push(rt)}}for(let Pe=0;Pe<_e.length;Pe++)if(!j.has(Pe)){let Ue=_e[Pe].originalIndex,Ke=A.links[Ue],Ye=Ke.name||Ke.title||`Index ${Ue}`;V.push({idx:Pe,text:` [\u843D\u5355] ${Ye} <-> (\u526F\u6E90\u7F3A\u5931\u6216\u88AB\u7565\u8FC7)`})}if(X>0){let Pe=f.has(e.animeId)||f.has(k.animeId),Ue=!1;if(Z?Ue=X>0:Ue=j0r(X,_e.length,U.length,u,B,Pe),Ue){for(let De of J){let Je=A.links[De.linkIndex];Je.url=De.newUrl,Je.title=De.newTitle}let Ke=De=>De?De.replace(ye.Clean.YEAR_TAG,"").replace(ye.Clean.SOURCE_TAG,"").replace(ye.Clean.FROM_SUFFIX,"").trim():"",Ye=Ke(A.animeTitle);A.aliases=[...new Set([...A.aliases||[],...F.aliases||[],...k.aliases||[],Ke(F.animeTitle)])].filter(De=>De&&De!==Ye),mt("info",`${l} \u5173\u8054\u6210\u529F: [${u}] ${g} <-> [${B}] ${oe} (\u672C\u6B21\u5408\u5E76 ${X} \u96C6)`),V.length>0&&(V.sort((De,Je)=>De.idx-Je.idx),mt("info",`${l} [${B}] \u6620\u5C04\u8BE6\u60C5: -${V.map(De=>De.text).join(` -`)}`)),A.mergedChildren=A.mergedChildren||[],A.mergedChildren.some(De=>String(De.animeId)===String(k.animeId)&&De.source===k.source)||A.mergedChildren.push({animeId:k.animeId,animeTitle:k.animeTitle,source:k.source,episodes:F.links?F.links.length:0,imageUrl:k.imageUrl||""});let Ze=O.animes.find(De=>String(De.animeId)===String(k.animeId)&&De.source===k.source);if(Ze&&(Ze.isHiddenChild=!0),m&&(ne||R)){let De=-1;if(R&&!ne){for(let Je=0;JeDe&&(De=rt)}}if(De!==-1){let Je=bi(F.animeTitle,F.typeDescription,F.aliases)||1;m.has(e.animeId)||m.set(e.animeId,{});let ft=m.get(e.animeId);X>=3&&(ft[`S${Je}`]=De)}}else if(!R&&ne){for(let Je=0;JeDe&&(De=rt.originalIndex)}}if(De!==-1){let Je=bi(e.animeTitle,e.typeDescription,e.aliases)||1;m.has(k.animeId)||m.set(k.animeId,{});let ft=m.get(k.animeId);X>=3&&(ft[`S${Je}`]=De,mt("info",`[Merge-Check] \u66F4\u65B0\u5408\u96C6\u8FDB\u5EA6 [${k.animeId}]: S${Je} -> MaxIndex ${De}`))}}}let nt=bi(e.animeTitle,e.typeDescription,e.aliases)||1,ct=bi(F.animeTitle,F.typeDescription,F.aliases)||1,tt=Z&&nt!==ct;f.has(k.animeId)||tt?mt("info",`${l} [\u667A\u80FD\u8865\u5168] \u8DF3\u8FC7: \u526F\u6E90 [${B}] \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`):G0r(A,se,B);let Dt=[],lt=[];A.links.forEach(De=>{let Je=De.title.replace(ye.Clean.SOURCE_TAG,"").trim();ye.Episode.SINK_TITLE_STRICT.test(Je)?lt.push(De):Dt.push(De)}),lt.length>0&&(A.links=[...Dt,...lt],mt("info",`${l} [\u6392\u5E8F\u4F18\u5316] \u7ACB\u5373\u6267\u884C\u756A\u5916\u6C89\u5E95: \u79FB\u52A8\u4E86 ${lt.length} \u4E2A\u756A\u5916\u96C6\u5230\u672B\u5C3E`)),x=!0,b.push(B),y.push(k.animeId)}else mt("info",`${l} \u5173\u8054\u53D6\u6D88: [${u}] ${g} <-> [${B}] ${oe} (\u5339\u914D\u7387\u8FC7\u4F4E: ${X}/${Math.max(_e.length,U.length)})`)}}}if(x){let k=y.join("|");if(a.has(k))return mt("info",`${l} \u68C0\u6D4B\u5230\u91CD\u590D\u7684\u5408\u5E76\u7ED3\u679C (Signature: ${k})\uFF0C\u5DF2\u81EA\u52A8\u9690\u53BB\u5197\u4F59\u6761\u76EE\u3002`),null;a.add(k);let B=O.animes.find(W=>String(W.animeId)===String(e.animeId)&&W.source===e.source);B&&(B.isHiddenChild=!0);for(let W=1;W({primary:p.primary,secondaries:[...p.secondaries],baseSecondaries:[...p.secondaries]}));for(let[p,m]of s.entries()){let h=i.find(A=>A.primary===p);h||(h={primary:p,secondaries:[],baseSecondaries:[]},i.push(h));for(let A of m)h.secondaries.includes(A)||h.secondaries.push(A)}if(!i||i.length===0)return;mt("info",`[Merge] \u542F\u52A8\u6E90\u5408\u5E76\u7B56\u7565\uFF0C\u7EC4\u5408\u8BA1\u7B97\u540E\u7684\u914D\u7F6E: ${JSON.stringify(i)}`);let a=O.episodeTitleFilter;if(a&&typeof a=="string")try{a=new RegExp(a,"i")}catch{a=null}let o=Y0r(t),c=new Map,u=[],l=new Set,d=new Set,f=new Set;i.forEach(p=>{p.secondaries.length===0&&f.add(p.primary)});for(let p of i){if(p.secondaries.length===0)continue;let m=new Map,h=[p.primary,...p.secondaries];h.forEach((w,N)=>m.set(w,N));let A=h.join("&"),g=new Set,b=(w,N)=>{if(!w||w.length<2)return w;mt("info",`[Merge-Check] [Sort] ${N} \u6392\u5E8F\u524D\u9996\u4E2A\u5143\u7D20: ${w[0].animeTitle}`),w.sort((L,M)=>{let k=m.get(L.source)??99,B=m.get(M.source)??99;if(k!==B)return k-B;let Z=J=>{let se=co(J.animeTitle,J.typeDescription,J.aliases);return se.has("MOVIE")||se.has("OVA")||se.has("SP")||vg(J.animeTitle,J.typeDescription)==="MOVIE"?2:1},W=Z(L),F=Z(M);if(W!==F)return W-F;let V=bi(L.animeTitle,L.typeDescription,L.aliases)||1,j=bi(M.animeTitle,M.typeDescription,M.aliases)||1;return V-j});let P=w.map(L=>{let M=bi(L.animeTitle,L.typeDescription,L.aliases)||1,k=co(L.animeTitle,L.typeDescription,L.aliases).has("MOVIE")||vg(L.animeTitle,L.typeDescription)==="MOVIE"?"Movie":`S${M}`;return`[P${m.get(L.source)??"?"}] [${k}] [${L.source}] ${L.animeTitle}`});return mt("info",`[Merge-Check] [Sort] ${N} \u6267\u884C\u987A\u5E8F: - ${P.join(` - `)}`),w},y=[];h.forEach(w=>{t.filter(P=>P.source===w&&!g.has(P.animeId)&&oo(P.animeTitle)==="CN").forEach(P=>y.push(P))});let x=!1;for(let w of h)if(t.some(N=>N.source===w&&!g.has(N.animeId)&&oo(N.animeTitle)==="CN")){x=!0;break}if(y.length>0&&x){mt("info",`[Merge] [Phase 1] \u542F\u52A8 CN \u9694\u79BB\u7B56\u7565: \u5305\u542B ${y.length} \u4E2A CN \u8D44\u6E90\u3002`),b(y,"Phase 1");for(let w of y){if(g.has(w.animeId))continue;let N=m.get(w.source),P=h.slice(N+1);if(P.length===0)continue;let L=await Cie({pAnime:w,availableSecondaries:P,curAnimes:t,groupConsumedIds:g,globalConsumedIds:d,generatedSignatures:l,epFilter:a,groupFingerprint:A,currentPrimarySource:w.source,logPrefix:"[Merge][Phase 1: CN-Strict]",limitSecondaryLang:"CN",collectionAnimeIds:o,collectionProgress:c,baseSecondaries:p.baseSecondaries});L&&(u.push(L),g.add(w.animeId),d.add(w.animeId))}}let v=[];for(let w=1;wL.source===N&&!g.has(L.animeId)&&oo(L.animeTitle)==="CN").forEach(L=>v.push(L))}if(v.length>=2){mt("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`),b(v,"Phase 1.5");for(let w of v){if(g.has(w.animeId))continue;let N=m.get(w.source),P=h.slice(N+1);if(P.length===0)continue;let L=await Cie({pAnime:w,availableSecondaries:P,curAnimes:t,groupConsumedIds:g,globalConsumedIds:d,generatedSignatures:l,epFilter:a,groupFingerprint:A,currentPrimarySource:w.source,logPrefix:"[Merge][Phase 1.5: CN-Secondary]",limitSecondaryLang:"CN",collectionAnimeIds:o,collectionProgress:c,baseSecondaries:p.baseSecondaries});L&&(u.push(L),g.add(w.animeId),d.add(w.animeId))}}let C=[];h.forEach(w=>{t.filter(P=>P.source===w&&!g.has(P.animeId)).forEach(P=>C.push(P))});let R=new Set(C.map(w=>w.source));if(C.length>0&&R.size>=2){mt("info",`[Merge] [Phase 2] \u542F\u52A8\u6807\u51C6\u56DE\u9000\u5339\u914D: \u5269\u4F59 ${C.length} \u4E2A\u8D44\u6E90\u3002`),b(C,"Phase 2");for(let w of C){if(g.has(w.animeId))continue;let N=m.get(w.source),P=h.slice(N+1);if(P.length===0)continue;let L=co(w.animeTitle,w.typeDescription,w.aliases),M=Array.from(L).some(Z=>Z.startsWith("P")),k=null;if(M){k=new Set;let Z=bi(w.animeTitle,w.typeDescription,w.aliases)||1;for(let W of d){let F=O.animes.find(J=>String(J.animeId)===String(W));if(!F||!P.includes(F.source))continue;let V=co(F.animeTitle,F.typeDescription,F.aliases);if(Array.from(V).some(J=>J.startsWith("P")))continue;let j=bi(F.animeTitle,F.typeDescription,F.aliases)||1;Z===j&&k.add(F.animeId)}}let B=await Cie({pAnime:w,availableSecondaries:P,curAnimes:t,groupConsumedIds:g,globalConsumedIds:d,generatedSignatures:l,epFilter:a,groupFingerprint:A,currentPrimarySource:w.source,logPrefix:"[Merge][Phase 2: Standard]",collectionAnimeIds:o,allowReuseIds:k,collectionProgress:c,baseSecondaries:p.baseSecondaries});B&&(u.push(B),g.add(w.animeId),d.add(w.animeId))}}}if(u.length>0){for(let p of u)Lt(p,e);t.unshift(...u)}if(f.size>0)for(let p of t)d.has(p.animeId)&&f.has(p.source)&&d.delete(p.animeId);for(let p=t.length-1;p>=0;p--){let m=t[p];(m._isMerged||d.has(m.animeId))&&t.splice(p,1)}u.length>0?mt("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: ${t.length}`):mt("info",`[Merge] \u626B\u63CF\u5B8C\u6BD5\uFF0C\u672A\u4EA7\u751F\u4EFB\u4F55\u5408\u5E76\uFF0C\u5217\u8868\u4FDD\u6301\u4E0D\u53D8 (\u6570\u91CF: ${t.length})`)}function Nnt(t){if(t.p&&typeof t.p=="string"){let e=parseFloat(t.p.split(",")[0]);if(!isNaN(e))return e}return t.t!==void 0&&t.t!==null?Number(t.t):typeof t.progress=="number"?t.progress/1e3:0}function Ont(t){if(t){if(typeof t.m=="string")return t.m;if(typeof t.text=="string")return t.text;if(typeof t.content=="string")return t.content}return""}function Pnt(t){return!t||typeof t!="string"?"":t.replace(/[\s.,!?"'(){}\[\]<>;:,。!?、""''()【】《》;:~~]/g,"").toLowerCase()}function Bnt(t,e){let r=[...t||[],...e||[]],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 Mnt(t,e,r,n=.8,s=1){let i=e.indexOf("dandan");if(i===-1||!t[i]?.length)return mt("info","[Merge][AlignTimeline] \u65E0 dandan \u6E90\u6216\u65E0\u6570\u636E\uFF0C\u8DF3\u8FC7\u65F6\u95F4\u8F74\u5BF9\u9F50"),t;let a=t[i],o=a.length,c=new Map;return a.forEach(u=>{let l=Pnt(Ont(u)),d=Nnt(u);l&&(!c.has(l)||d{let d=e[l];if(d==="dandan"||!u?.length)return;let f=new Map,p=[],m=0;u.forEach(x=>{let v=Pnt(Ont(x)),C=Nnt(x);if(p.push({danmu:x,time:C}),v&&c.has(v)){m++;let R=Math.round(C-c.get(v));f.set(R,(f.get(R)||0)+1)}});let h=0,A=0;f.forEach((x,v)=>{x>A&&(A=x,h=v)});let g=Math.min(o,u.length),b=A/g,y=m>0?A/m:0;if(m/g{let C=Math.max(0,v-h);typeof x.p=="string"&&(x.p=x.p.replace(/^[^,]+(?=,)/,C.toFixed(2))),x.t!=null&&(x.t=C),typeof x.progress=="number"&&(x.progress=Math.round(C*1e3))})}),t}Is();function Unt(t,e=Date.now()){let r=Number(t);return Number.isFinite(r)&&r>0?Math.trunc(r):Math.trunc(Number(e)||Date.now())}function J0r(t=""){return PL(eg(t)).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/g,"")}function X0r(t=""){let e=String(t||"").trim();if(!e)return"";let r=e.replace(/-/g,"+").replace(/_/g,"/").padEnd(Math.ceil(e.length/4)*4,"=");return Cc(IC(r))}var qnt="6.8.2",Z0r="a_8280",emr="xiaomi",jnt="Redmi Note 12",tmr="Xiaomi",Hnt="14",rmr=`HanjuTV/${qnt} (${jnt}; Android ${Hnt}; Scale/2.00)`,Qnt=14*24*60*60*1e3,Wnt="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",Gnt="f349wghhe784tqwh",Vnt="d3w8hf94fidk38lk",nmr="34F9Q53w/HJW8E6Q",$nt="fb3597b87601d5a7";function HT(t){return typeof TextEncoder<"u"?new TextEncoder().encode(t):eg(t)}function smr(t){return typeof TextDecoder<"u"?new TextDecoder().decode(t):Cc(t)}function znt(t,e){let r=new Uint8Array(t.length);for(let n=0;n>=1}return r}function omr(t){let e=new Uint8Array(16);for(let r=0;r<4;r++){let n=t.slice(4*r,4*r+4);e[4*r+0]=Un(n[0],2)^Un(n[1],3)^n[2]^n[3],e[4*r+1]=n[0]^Un(n[1],2)^Un(n[2],3)^n[3],e[4*r+2]=n[0]^n[1]^Un(n[2],2)^Un(n[3],3),e[4*r+3]=Un(n[0],3)^n[1]^n[2]^Un(n[3],2)}return e}function cmr(t){let e=new Uint8Array(16);for(let r=0;r<4;r++){let n=t.slice(4*r,4*r+4);e[4*r+0]=Un(n[0],14)^Un(n[1],11)^Un(n[2],13)^Un(n[3],9),e[4*r+1]=Un(n[0],9)^Un(n[1],14)^Un(n[2],11)^Un(n[3],13),e[4*r+2]=Un(n[0],13)^Un(n[1],9)^Un(n[2],14)^Un(n[3],11),e[4*r+3]=Un(n[0],11)^Un(n[1],13)^Un(n[2],9)^Un(n[3],14)}return e}function umr(t,e){let r=new Uint8Array(t);r=nE(r,e,0);for(let n=1;n<=9;n++)r=NL(r),r=Fnt(r),r=omr(r),r=nE(r,e,n);return r=NL(r),r=Fnt(r),r=nE(r,e,10),r}function lmr(t,e){let r=new Uint8Array(t);r=nE(r,e,10);for(let n=9;n>=1;n--)r=CC(r),r=vC(r),r=nE(r,e,n),r=cmr(r);return r=CC(r),r=vC(r),r=nE(r,e,0),r}function dmr(t,e,r){let n=imr(t,16),s=OL(e),i=new Uint8Array(n.length),a=new Uint8Array(r);for(let o=0;on!==null).sort((n,s)=>{let i=W0(n.animeTitle),a=W0(s.animeTitle);if(i!=null&&a!==null&&a!==void 0){if(a!==i)return a-i;let o=Yz(n.animeTitle),c=Yz(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)})}};Pt();St();ar();function Pr(t){let e=parseInt(t);return isNaN(e)||e<1900||e>2100?`${new Date().getFullYear()}-01-01T00:00:00Z`:`${e}-01-01T00:00:00Z`}function Cg(t){let e=t.split(":").map(Number),r=0;return e.length===3?r=e[0]*3600+e[1]*60+e[2]:e.length===2?r=e[0]*60+e[1]:r=e[0],r}$n();hn();var QT=class extends wt{async get360Zongyi(e,r,n,s){try{let i=[];for(let a=0;a<=10;a++){let u=(await(await ge(`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(_("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})}_("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 _("error","[360kan] get360Animes error:",{message:i.message,name:i.name,stack:i.stack}),[]}}async getNumber(e,r,n){try{let s=`https://api.web.360kan.com/v1/detail?cat=${e}&id=${r}&site=${n}`,a=(await ge(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){_("error","[360kan] getNumber error:",s&&s.message?s.message:s)}return null}async get360Detail(e,r,n,s,i){try{let a=`https://api.web.360kan.com/v1/detail?cat=${e}&id=${r}&start=${s}&end=${i}&site=${n}`;return(await ge(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){_("error","[360kan] get360Detail error:",a&&a.message?a.message:a)}return null}async getEpisodesV1(e,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(e,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(_("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 _("error",`getEpisodesV1 error: ${i&&i.message?i.message:i}`),[]}}async getEpisodesV2(e,r,n){try{let s=JSON.stringify([{cat_id:String(e),ent_id:String(r),site:n}]),i=`https://api.so.360kan.com/episodesv2?v_ap=1&s=${encodeURIComponent(s)}`,o=(await ge(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 _("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 _("error","[360kan] getEpisodesV2 error:",{message:s&&s.message?s.message:String(s),stack:s&&s.stack?s.stack:void 0}),[]}}async search(e){try{let n=(await ge(`https://api.so.360kan.com/index?force_v=1&kw=${encodeURIComponent(e)}&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),_("info",`[360kan] 360kan response: ${JSON.stringify(s)}`),_("info",`[360kan] 360kan animes.length: ${s.length}`),s}catch(r){return _("error","[360kan] get360Animes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getEpisodes(e){}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return _("error","[360kan] sourceAnimes is not a valid array"),[];let o=e.filter(l=>yt(l.titleTxt,r,i)),c=i!==null?i:$t(r);if(c!==null){let l=o.filter(d=>{let f=Tt(d.titleTxt).season;return f===c||c===1&&f===null});l.length>0&&(o=l,_("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))O.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 p=null;if(Array.isArray(l.seriesPlaylinks)&&l.seriesPlaylinks.length>0){if(O.vodAllowedPlatforms.includes(l.seriesSite))for(let m=0;m0)for(let g of A)d.push({name:g.name,url:g.url,title:`\u3010${m}\u3011 \u7B2C${g.name}\u96C6`,sort:g.name});else try{let g=await this.getNumber(f,h,m);if(g&&Number(g)>0){let b=await this.getEpisodesV1(f,h,m,g);if(b&&b.length>0)for(let y of b)d.push({name:y.name,url:y.url,title:`\u3010${m}\u3011 \u7B2C${y.name}\u96C6`,sort:y.name})}}catch(g){_("error",`[360kan] fallback detail fetch failed for site ${m}: ${g&&g.message?g.message:g}`)}}catch(h){_("error",`[360kan] failed to fetch episodesv2 for site ${m}: ${h&&h.message?h.message:h}`)}}}else l.cat_name==="\u7EFC\u827A"&&(d=(await Promise.all(Object.keys(l.playlinks_year).map(async p=>O.vodAllowedPlatforms.includes(p)?(await Promise.all(l.playlinks_year[p].map(async h=>await this.get360Zongyi(l.titleTxt,l.id,p,h)))).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:Pr(l.year),episodeCount:d.length,rating:0,isFavorited:!0,source:"360"};a.push(f),Lt({...f,links:d},s),O.animes.length>O.MAX_ANIMES&&Ft()}}catch(d){_("error",`[360kan] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){}formatComments(e){}};Pt();St();ar();$n();hn();var GT=class extends wt{async getVodAnimes(e,r,n){try{let s=$8e(e),i=encodeURIComponent(s),a=await ge(`${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){_("info",`[VOD] \u8BF7\u6C42 ${n}(${r}) \u6210\u529F`);let o=a.data;return _("info",`[VOD] ${n} response: \u2193\u2193\u2193`),ts(o),{serverName:n,list:o.list}}else return _("info",`[VOD] \u8BF7\u6C42 ${n}(${r}) \u6210\u529F\uFF0C\u4F46 response.data.list \u4E3A\u7A7A`),{serverName:n,list:[]}}catch(s){return _("error",`[VOD] \u8BF7\u6C42 ${n}(${r}) \u5931\u8D25:`,{message:s.message,name:s.name,stack:s.stack}),{serverName:n,list:[]}}}async getVodAnimesFromAllServersImpl(e,r){let n=r.map(i=>this.getVodAnimes(e,i.url,i.name));return(await Promise.allSettled(n)).filter(i=>i.status==="fulfilled").map(i=>i.value)}async getVodAnimesFromFastestServer(e,r,n=null,s=null){if(!r||r.length===0)return[];let i=r.map(l=>this.getVodAnimes(e,l.url,l.name)),a;try{a=await Promise.race(i)}catch(l){return _("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 _("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];_("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 _("info",`[VOD fastest mode] \u627E\u5230\u5305\u542B preferAnimeId \u7684\u670D\u52A1\u5668: ${l.value.serverName}`),[l.value];_("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 _("info",`[VOD fastest mode] \u4F7F\u7528\u6700\u5FEB\u6709\u6570\u636E\u7684\u670D\u52A1\u5668: ${l.serverName}`),[l]}return _("error","[VOD fastest mode] \u6240\u6709\u670D\u52A1\u5668\u5747\u65E0\u6709\u6548\u6570\u636E"),[]}async search(e,r=null,n=null){return!O.vodServers||O.vodServers.length===0?[]:O.vodReturnMode==="fastest"?await this.getVodAnimesFromFastestServer(e,O.vodServers,r,n):await this.getVodAnimesFromAllServersImpl(e,O.vodServers)}async getEpisodes(e){}async handleAnimes(e,r,n,s,i=null,a=null){let o=[];if(!e||!Array.isArray(e))return _("error","[VOD] sourceAnimes is not a valid array"),[];let c=e.filter(d=>yt(d.vod_name,r,a)),u=a!==null?a:$t(r);if(u!==null){let d=c.filter(f=>{let p=Tt(f.vod_name).season;return p===u||u===1&&p===null});d.length>0&&(c=d,_("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 p=d.vod_play_url.split("$$$"),m=f.map((g,b)=>O.vodAllowedPlatforms.includes(g)?b:-1).filter(g=>g!==-1),h=[],A=0;for(let g of m){let b=f[g],y=p[g].split("#");for(let x of y){let v=x.split("$");A++,h.push({name:A.toString(),url:v[1],title:`\u3010${b}\u3011 ${v[0]}`})}}if(h.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:Pr(d.vod_year),episodeCount:h.length,rating:0,isFavorited:!0,source:"vod"};o.push(g),Lt({...g,links:h},i),O.animes.length>O.MAX_ANIMES&&Ft()}}catch(f){_("error",`[VOD] Error processing anime: ${f.message}`)}}));return this.sortAndPushAnimesByYear(o,n),l}async getEpisodeDanmu(e){}formatComments(e){}};St();St();ar();Pt();async function rst(t){let e="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"};O.doubanCookie&&(r.Cookie=O.doubanCookie);try{let n=await ge(`${e}${t}`,{method:"GET",headers:r});return n.status!=200?null:n}catch(n){return _("error","[Utils] [Douban] GET API error:",{message:n.message,name:n.name,stack:n.stack}),null}}async function nst(t,e={}){let r="https://api.douban.com/v2";try{let n=await Vr(`${r}${t}`,JSON.stringify({...e,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 _("error","[Utils] [Douban] POST API error:",{message:n.message,name:n.name,stack:n.stack}),null}}async function sst(t,e=20){let r=`/search?q=${t}&start=0&count=${e}&type=movie`;return await rst(r)}async function ist(t,e=20){return await nst("/movie/search",{q:t,start:0,count:e})}async function ast(t){let e=`/movie/${t}?for_mobile=1`;return await rst(e)}async function ost(t){let e=`/movie/imdb/${t}`;return await nst(e)}St();ar();async function cst(t){let e="https://api.imdbapi.dev";try{let r=await ge(`${e}${t}`,{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 _("error","[Utils] [IMDB] API error:",{message:r.message,name:r.name,stack:r.stack}),null}}async function ust(t){let e=`/titles/${t}/seasons`;return await cst(e)}async function lst(t,e){let r=`/titles/${t}/episodes?season=${e}`;return await cst(r)}var VT=class extends wt{constructor(e){super("BaseSource"),this.doubanSource=e}async _getDoubanInfo(e,r,n){if(!e)return;let s=await ost(e);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(e,r){try{let n=[],i=(await ynt(e,r)).data?.imdb_id;if(!i)return[];if(e==="movie")await this._getDoubanInfo(i,e,n);else{let a=await ust(i);_("info","[TMDB] imdb seasons:",a.data.seasons);let o=(a?.data?.seasons??[]).map(async c=>{let u=i;_("info","[TMDB] imdb season:",c.season);try{Number(c.season)!==1&&(u=(await lst(i,c.season)).data?.episodes.find(d=>d.episodeNumber===1)?.id??""),await this._getDoubanInfo(u,e,n)}catch(l){_("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 _("error","[TMDB] getTmdbIds error:",{message:n.message,name:n.name,stack:n.stack}),[]}}async search(e){try{let n=(await ZB(e)).data,s=[],i=[];n?.results?.length>0&&(i=n.results.filter(c=>(c.name||c.title)===e)),_("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 _("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 _("error","[TMDB] getTmdbAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getEpisodes(e){}async handleAnimes(e,r,n,s=null,i=null){return this.doubanSource.handleAnimes(e,r,n,s,i)}async getEpisodeDanmu(e){}formatComments(e){}};St();hn();var zT=class extends wt{constructor(e,r,n,s,i){super("BaseSource"),this.tencentSource=e,this.iqiyiSource=r,this.youkuSource=n,this.bilibiliSource=s,this.miguSource=i}async search(e){try{let n=(await sst(e))?.data;if(!n||!n?.subjects?.items?.length&&!n?.smart_box?.length){_("info","[Douban] searchDoubanTitles failed or empty, trying searchDoubanTitlesByPublic");let a=(await ist(e))?.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]),_("info",`[Douban] douban animes.length: ${s.length}`),s}catch(r){return _("error","[Douban] getDoubanAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}convertToOriginalFormat(e){let n={movie:"\u7535\u5F71",tv:"\u7535\u89C6\u5267"}[e.subtype]||e.subtype,s=e.images?.large||e.images?.medium||e.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=e.directors?.map(u=>u.name).join(" ")||"",o=e.casts?.slice(0,3).map(u=>u.name).join(" ")||"",c=`${e.year} / ${e.genres?.join(" / ")||""} / ${a}${o?" / "+o:""}`;return{layout:"subject",type_name:n,target_id:String(e.id),target:{rating:{count:e.collect_count||0,max:e.rating?.max||10,star_count:e.rating?.stars?parseInt(e.rating.stars)/10:0,value:e.rating?.average||0},controversy_reason:"",title:e.title,abstract:"",has_linewatch:!1,uri:`douban://douban.com/${e.subtype==="movie"?"movie":"tv"}/${e.id}`,cover_url:i,year:String(e.year||""),card_subtitle:c,id:String(e.id),null_rating_reason:""},target_type:e.subtype==="movie"?"movie":"tv"}}async getEpisodes(e){}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return _("error","[Douban] sourceAnimes is not a valid array"),[];let o=e.filter(l=>{let d=l?.target?.title||"";return yt(d,r,i)}),c=i!==null?i:$t(r);if(c!==null){let l=o.filter(d=>{let f=d?.target?.title||"",p=Tt(f).season;return p===c||c===1&&p===null});l.length>0&&(o=l,_("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;_("info","[Douban] doubanId: ",d,l?.target?.title,f);let p=await ast(d),m=[];for(let h of p.data?.vendors??[]){if(!h)continue;_("info","[Douban] vendor uri: ",h.uri),p.data?.genres.includes("\u771F\u4EBA\u79C0")?f="\u7EFC\u827A":p.data?.genres.includes("\u7EAA\u5F55\u7247")?f="\u7EAA\u5F55\u7247":f==="\u7535\u89C6\u5267"&&p.data?.genres.includes("\u52A8\u753B")&&p.data?.countries.some(g=>g.includes("\u4E2D\u56FD"))?f="\u56FD\u6F2B":f==="\u7535\u89C6\u5267"&&p.data?.genres.includes("\u52A8\u753B")&&p.data?.countries.includes("\u65E5\u672C")?f="\u65E5\u756A":f==="\u7535\u89C6\u5267"&&p.data?.genres.includes("\u52A8\u753B")?f="\u52A8\u6F2B":f==="\u7535\u5F71"&&p.data?.genres.includes("\u52A8\u753B")?f="\u52A8\u753B\u7535\u5F71":f==="\u7535\u5F71"&&p.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"&&p.data?.countries.some(g=>g.includes("\u4E2D\u56FD"))?f="\u56FD\u4EA7\u5267":f==="\u7535\u89C6\u5267"&&p.data?.countries.some(g=>["\u65E5\u672C","\u97E9\u56FD"].includes(g))?f="\u65E5\u97E9\u5267":f==="\u7535\u89C6\u5267"&&p.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 A=[{title:p.data?.title,year:p.data?.year,type:f,imageUrl:l?.target?.cover_url}];switch(h.id){case"qq":{let g=new URL(h.uri).searchParams.get("cid");g&&(A[0].provider="tencent",A[0].mediaId=g,await this.tencentSource.handleAnimes(A,p.data?.title,a,s,i));break}case"iqiyi":{let g=new URL(h.uri).searchParams.get("tvid");g&&(A[0].provider="iqiyi",A[0].mediaId=l?.type_name==="\u7535\u5F71"?`movie_${g}`:g,await this.iqiyiSource.handleAnimes(A,p.data?.title,a,s,i));break}case"youku":{let g=new URL(h.uri).searchParams.get("showid");g&&(A[0].provider="youku",A[0].mediaId=g,await this.youkuSource.handleAnimes(A,p.data?.title,a,s,i));break}case"bilibili":{let g=new URL(h.uri).pathname.split("/").pop();g&&(A[0].provider="bilibili",A[0].mediaId=`ss${g}`,await this.bilibiliSource.handleAnimes(A,p.data?.title,a,s,i));break}case"miguvideo":{let g=null,y=decodeURIComponent(h.uri).match(/"contentID":"([^"]+)"/);y&&y[1]&&(g=y[1]),g&&(A[0].provider="migu",A[0].mediaId=`https://v3-sc.miguvideo.com/program/v4/cont/content-info/${g}/1`,await this.miguSource.handleAnimes(A,p.data?.title,a,s,i));break}}}return m}catch(d){return _("error",`[Douban] Error processing anime: ${d.message}`),[]}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){}formatComments(e){}};Pt();St();ar();Is();$n();hn();hs();var qf=null,KT=0,YT=0,zi={search:"WIN",detail:"TV",danmu:"TV"},JT=class extends wt{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 e="aY",r=24-e.length,n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",s=e;for(let i=0;iMath.floor(Math.random()*16).toString(16)).join("").toUpperCase()}generateDeviceId(){return Math.random().toString(36).slice(2).toUpperCase()}rotateAliId(){let e=qf;qf=this.generateRandomAliId(),KT=0,YT=Math.floor(Math.random()*31)+30,e?_("info",`[Renren] AliID \u8F6E\u6362\u5B8C\u6210: ${e} -> ${qf}`):_("info",`[Renren] AliID \u521D\u59CB\u5316\u5B8C\u6210: ${qf}`),_("info",`[Renren] AliID \u4E0B\u6B21\u8F6E\u6362\u5C06\u5728 ${YT} \u6B21\u64CD\u4F5C\u540E\u89E6\u53D1`)}checkAndIncrementUsage(){qf||this.rotateAliId(),KT>=YT&&(_("info",`[Renren] AliID \u89E6\u53D1\u9608\u503C (${KT}/${YT})\uFF0C\u6B63\u5728\u8F6E\u6362 ID...`),this.rotateAliId()),KT++,_("info",`[Renren] AliID \u8BA1\u6570\u589E\u52A0: ${KT}/${YT} (\u5F53\u524DID: ...${qf.slice(-6)})`)}getAliId(){return qf||this.rotateAliId(),this.isBatchMode||this.checkAndIncrementUsage(),qf}generateTvHeaders(e,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:e.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(e,r,n,s,i,a,o,c){let u=`${e.toUpperCase()} +`)}`)}function kxr(t){let e=new Map;if(!t||t.length<2)return e;let r=t.map(s=>{let i=s.animeTitle||"",a=mm(i).replace(xe.Clean.SOURCE_TAG,"").replace(xe.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 k5)if(s.clean.match(a.regex)){i=s.clean.replace(a.regex,"").trim();break}if(!i){let a=s.clean.match(xe.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)&&(e.set(String(s.id),i),ht("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 e}function Pxr(t,e){let r={isStrongMatch:!1,isStrongMismatch:!1};if(!t.links||!e.links||!t.links.length||!e.links.length)return r;let n=h=>h.filter(y=>{let g=(y.title||y.name||"").toLowerCase();return!xe.Episode.PV_CHECK.test(g)&&!xe.Episode.SPECIAL_CHECK.test(g)}).length,s=n(t.links),i=n(e.links);s>5&&i>5&&Math.min(s,i)/Math.max(s,i)<.4;let a=h=>h.map(y=>L1(y.title||y.name||"").replace(/\d+/g,"").trim()).filter(y=>y.length>1),o=a(t.links),c=a(e.links);if(o.length<3||c.length<3)return r;let u=Ao(o.join(" ")),l=Ao(c.join(" "));if(u!==l||u==="Unspecified")return r;let d=Math.min(o.length,c.length,5),f=0,p=0,m=[];for(let h=0;h.6?f++:b<.3&&p++}return f>=Math.ceil(d*.6)?(r.isStrongMatch=!0,ht("info",`[Merge-Check] [Probe] \u91C7\u6837\u5BF9\u6BD4 (Match): ${m.join(", ")}`)):p>=Math.ceil(d*.8)&&(r.isStrongMismatch=!0,ht("info",`[Merge-Check] [Probe] \u91C7\u6837\u5BF9\u6BD4 (Mismatch): ${m.join(", ")}`)),r}function Ooe(t,e){let r=O.customMergeRules||[];if(r.length===0)return null;let n=wi(t.animeTitle,t.typeDescription,t.aliases),s=wi(e.animeTitle,e.typeDescription,e.aliases),i=(a,o)=>{let c=zt(a||"").toLowerCase().replace(xe.Clean.FROM_SUFFIX,""),u=zt(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 p=f[1];/^(TV|剧场版|åŠ‡å ´ç‰ˆ|movie|film|anime|动漫|动画|电影|电视剧|连续剧|综艺|真人秀|纪录片|日剧|韩剧|美剧|英剧|泰剧|国产剧|港剧|台剧|短剧|微短剧|特摄|OVA|OAD|SP|AVC|HEVC|MP4|MKV)$/i.test(p)||(c=c.replace(f[0],p+" "))}c=c.replace(xe.Clean.SOURCE_TAG,"").replace(/\[.*?\]/g,"")}return!u.includes("\u5B63")&&!u.includes("season")&&(c=c.replace(xe.Season.INFO_STRONG,"")),c=c.replace(xe.Clean.MOVIE_KEYWORDS,""),{target:Dr(c).replace(/\s+/g,""),rule:Dr(u).replace(/\s+/g,"")}};for(let a of r){let o=y=>String(y).split(Kg)[0],c=o(a.primary.source),u=o(a.secondary.source),l=String(t.source).split(Kg),d=String(e.source).split(Kg);if(!l.includes(c)||!d.includes(u))continue;let f=i(t.animeTitle,a.primary.title),p=i(e.animeTitle,a.secondary.title),m=f.target===f.rule,h=p.target===p.rule;if(!(!m||!h)&&!(a.primary.season!==null&&(n||1)!==a.primary.season)&&!(a.secondary.season!==null&&(s||1)!==a.secondary.season))return a}return null}function Dxr(t,e,r=new Set,n=[]){if(!e||e.length===0)return[];let s=t.animeTitle||"",i=s.replace(xe.Clean.YEAR_TAG,"").replace(/【(电影|电视剧)】/g,"").trim(),a=!!i.match(xe.Lang.CN_DUB_VER)||xe.Lang.CN.test(i),o=t.source==="hanjutv",c=s.includes("N/A")||o?{year:null,month:null}:Cat(t.startDate),u=t.episodeCount||(t.links?t.links.length:0),l=Ao(s),d=mm(i),f=Wc(i),p=xo(s,t.typeDescription,t.aliases),m=Array.from(p).filter(w=>w.startsWith("S")),h=[{animeId:t.animeId,animeTitle:s},...e],y=kxr(h),g=y.has(String(t.animeId)),b=y.get(String(t.animeId)),x=r.has(t.animeId),A=(w,N)=>{ht("info",`[Merge-Check] \u62D2\u7EDD: [${t.source}] ${s} vs [${w}] -> ${N}`)},S=[],I=0;for(let w of e){let N=w.animeTitle||"",k=Ooe(t,w);if(k){if(k.action==="block"){A(N,"\u88AB\u6620\u5C04\u8868 [\xD7] \u660E\u786E\u7981\u6B62\u4E0E\u4E3B\u6E90\u5408\u5E76");continue}let X=Ao(N);S.push({anime:w,score:1,lang:X,debugTitle:N,isCustomMapped:!0}),ht("info",`[Merge-Check] \u5408\u5E76\u6620\u5C04\u8868\u7279\u6743\u653E\u884C: [${t.source}] ${s} <-> [${w.source}] ${N}`);continue}if(!n.includes(w.source)){A(N,"\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 B=r.has(w.animeId),M=x||B,D=w.source==="hanjutv",L=N.includes("N/A")||D?{year:null,month:null}:Cat(w.startDate),Z=Ao(N),W=N.replace(xe.Clean.YEAR_TAG,"").replace(/【(电影|电视剧)】/g,"").trim(),U=!!W.match(xe.Lang.CN_DUB_VER)||xe.Lang.CN.test(W),z=a||U,j=w.episodeCount||(w.links?w.links.length:0);if(W.includes("\u4E4B")){let X=W.split("\u4E4B"),ie=mm(X[0]);if(d===ie){A(N,`\u7ED3\u6784\u51B2\u7A81: \u4E3B\u6807\u9898\u662F\u526F\u6807\u9898\u7684\u524D\u7F00\u7236\u96C6 (Prefix: "${ie}")`);continue}}if(Sxr(s,N,t.typeDescription,w.typeDescription,u,j,t.source,w.source)){let X=M1(s,t.typeDescription,t.source),ie=M1(N,w.typeDescription,w.source);A(N,`\u5A92\u4F53\u7C7B\u578B\u6216\u7EF4\u6570\u4E0D\u5339\u914D (P:${X}/${Vg(s,t.typeDescription)} [${t.typeDescription}] vs S:${ie}/${Vg(N,w.typeDescription)} [${w.typeDescription}])`);continue}let J=c.year!==null&&L.year!==null,se=vxr(s,N,J);if(y.has(String(w.animeId))){let X=y.get(String(w.animeId));if(f===Wc(X)&&!(xe.Season.SUFFIX_AMBIGUOUS.test(d)||k5.some(ce=>ce.regex.test(d)))){A(N,`\u4E0A\u4E0B\u6587\u963B\u65AD: \u4E3B\u6E90(S1) vs \u526F\u6E90(S2/S\u7EED\u4F5C) (Base: "${X}")`);continue}}if(g&&Wc(W)===Wc(b)){A(N,`\u4E0A\u4E0B\u6587\u963B\u65AD: \u4E3B\u6E90(S2/Sequel) vs \u526F\u6E90(Base/S1) (Base: "${b}")`);continue}if(!J&&se){A(N,"\u6807\u9898\u7ED3\u6784\u51B2\u7A81\u4E14\u65E5\u671F\u65E0\u6548");continue}let ue=Cxr(i,W,t.typeDescription,w.typeDescription,t.aliases,w.aliases),Te=Pxr(t,w),Ne=s.search(xe.Clean.MOVIE_KEYWORDS)!==-1,je=N.search(xe.Clean.MOVIE_KEYWORDS)!==-1;if(Ne!==je){let X=xo(N,w.typeDescription,w.aliases),ie=Oe=>Wc(Oe.replace(xe.Clean.MOVIE_KEYWORDS,"")),ce=ie(s),me=ie(N);if(pm(ce,me)>.9&&!p.has("SEQUEL")&&!X.has("SEQUEL")){A(N,`\u5267\u573A\u7248\u6807\u9898\u963B\u65AD: [${Ne?"Movie":"TV"}] vs [${je?"Movie":"TV"}] (\u65E0\u7EED\u7BC7\u6807\u8BC6)`);continue}}let Fe=M?0:Txr(c,L,z);if(Fe===-1){let X=ue;if(Te.isStrongMatch&&(X=!0),M&&(X=!0),se&&!M&&(X=!1),X&&c.year&&L.year&&Math.abs(c.year-L.year)>2&&!Te.isStrongMatch&&!M&&(X=!1),!X){A(N,`\u65E5\u671F\u4E25\u91CD\u4E0D\u5339\u914D\u4E14\u65E0\u8C41\u514D (P:${c.year} vs S:${L.year}, IsDub:${z})`);continue}}if(!M&&Ixr(i,W,t.typeDescription,w.typeDescription,t.aliases,w.aliases))if(Te.isStrongMatch)ht("info",`[Merge-Check] \u5B63\u5EA6\u51B2\u7A81\u8C41\u514D: [${s}] vs [${N}] (Probe\u5F3A\u5339\u914D)`);else{A(N,"\u5B63\u5EA6\u6807\u8BB0\u51B2\u7A81");continue}let ve=X=>X?String(X).replace(xe.Clean.YEAR_TAG,"").replace(/【(电影|电视剧)】/g,"").trim():"",F=Array.from(new Set([i,...t.aliases||[]].map(ve).filter(Boolean))),G=Array.from(new Set([W,...w.aliases||[]].map(ve).filter(Boolean))),K=0,q=0;for(let X of F){let ie=Iat(X);for(let ce of G)K=Math.max(K,pm(X,ce)),q=Math.max(q,pm(ie,Iat(ce)))}let Q=Math.max(K,q),ee=Q;se&&(Q+=di.TITLE_STRUCTURE_CONFLICT),Fe!==-1&&(Q+=Fe);let ne=l==="CN",re=Z==="CN";if(ne&&re?Q+=di.LANG_MATCH_CN:ne!==re&&(Q+=di.LANG_MISMATCH),Te.isStrongMatch?(ht("info",`[Merge-Check] \u96C6\u5185\u5BB9\u63A2\u6D4B: \u5F3A\u5339\u914D! \u63D0\u5347\u5206\u6570 (\u539F\u5206: ${Q.toFixed(2)}) -> ${ad.SIMILARITY_STRONG}`),Q=Math.max(Q,ad.SIMILARITY_STRONG)):Te.isStrongMismatch&&(A(N,"\u96C6\u5185\u5BB9\u63A2\u6D4B: \u5F3A\u4E0D\u5339\u914D (\u96C6\u6807\u9898/\u5185\u5BB9\u5DEE\u5F02\u5DE8\u5927)"),Q=0),QI&&(I=Q),S.push({anime:w,score:Q,lang:Z,debugTitle:N}),ht("info",`[Merge-Check] \u5019\u9009\u9009\u4E2D: ${N} Score=${Q.toFixed(2)} (BestSoFar=${I.toFixed(2)})`)}if(S.length===0||Iw.isCustomMapped))return[];let R=S.filter(w=>{if(w.isCustomMapped||w.score>=I-ad.TIER_DEFAULT||w.lang==="CN"&&w.score>=I-ad.TIER_CN)return!0;let N=xo(w.debugTitle,w.anime.typeDescription,w.anime.aliases);if(Array.from(N).some(B=>B.startsWith("P"))&&w.score>=I-ad.TIER_PART){let B=Array.from(N).filter(M=>M.startsWith("S"));if(m.length>0&&B.length>0){if(m.some(D=>B.includes(D)))return!0}else return!0}return!1});return R.sort((w,N)=>w.isCustomMapped&&!N.isCustomMapped?-1:!w.isCustomMapped&&N.isCustomMapped?1:N.score-w.score),R.map(w=>w.anime)}function Bxr(t){let e=new Set;if(!t||t.length===0)return e;let r=new Map;t.forEach(n=>{let s=O.animes.find(d=>String(d.animeId)===String(n.animeId))||n,i=xo(s.animeTitle,s.typeDescription,s.aliases);if(i.has("MOVIE")||i.has("OVA")||i.has("SP")||i.has("SEQUEL"))return;let a=zt(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${Gl(f)}\u5B63`);let c=a.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(k5.forEach(d=>c=c.replace(d.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 u=M1(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(` +`);ht("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=O.animes.find(g=>String(g.animeId)===String(d.animeId))||d,p=xo(f.animeTitle,f.typeDescription,f.aliases),m=1;for(let g of p)if(g.startsWith("S")){let b=parseInt(g.substring(1));isNaN(b)||(m=b)}if(m===1){let g=p.has("SEQUEL")||xe.Season.SUFFIX_SEQUEL.test(f.animeTitle),b=p.has("AMBIGUOUS")||xe.Season.SUFFIX_AMBIGUOUS.test(f.animeTitle);(g||b)&&(m=2,ht("info",`[Merge-Check] [Detail] [${f.source}] "${f.animeTitle}" -> \u5224\u5B9A\u4E3A S2 (Reason: Sequel/Ambiguous Suffix)`))}m>u&&(u=m);let h=0;f.links&&(/^(dandan|animeko)$/i.test(f.source)?h=f.links.filter(g=>{let b=g.title||g.name||"",x=b.replace(xe.Clean.SOURCE_TAG,"").replace(xe.Clean.FROM_SUFFIX,"").trim();if(xe.Episode.SPECIAL_CHECK.test(x)||xe.Episode.DANDAN_IGNORE.test(x))return!1;let A=mm(b);return!(xe.Episode.SPECIAL_CHECK.test(A)||xe.Episode.DANDAN_IGNORE.test(A)||xe.Episode.MAP_EXCLUDE_KEYWORDS.test(x)||xe.Episode.MAP_EXCLUDE_KEYWORDS.test(b))}).length:h=f.links.length),c.has(f.source)||c.set(f.source,{seasonCounts:{},maxSeason:0,s1Candidates:[]});let y=c.get(f.source);y.seasonCounts[m]||(y.seasonCounts[m]=0),y.seasonCounts[m]=Math.max(y.seasonCounts[m],h),m>y.maxSeason&&(y.maxSeason=m),m===1&&y.s1Candidates.push({anime:f,originalCount:h})}),u<=1)continue;let l=Array.from(c.keys());for(let[d,f]of c.entries()){if(f.maxSeason>1)continue;let p=0,m=!1;for(let y of l){if(y===d)continue;let g=c.get(y);g.seasonCounts[1]&&(m=!0,g.seasonCounts[1]>p&&(p=g.seasonCounts[1]))}if(!m)continue;let h=p+ad.COLLECTION_DIFF;f.s1Candidates.forEach(y=>{let g=p>0?y.originalCount/p:0;if(y.originalCount>h){if(g>ad.COLLECTION_RATIO){ht("info",`[Merge-Check] [\u5408\u96C6\u63A2\u6D4B] \u62D2\u7EDD: [${d}] ${y.anime.animeTitle} (Ratio too high: ${g.toFixed(2)} > ${ad.COLLECTION_RATIO})`);return}e.add(y.anime.animeId),ht("info",`[Merge-Check] [\u5408\u96C6\u63A2\u6D4B] \u53D1\u73B0\u7591\u4F3C\u5408\u96C6(\u5355\u4F53): [${d}] ${y.anime.animeTitle} (Count:${y.originalCount} > Thr:${h}, Ratio:${g.toFixed(2)}) -> \u6807\u8BB0\u4E3A\u5408\u96C6`)}else ht("info",`[Merge-Check] [\u5408\u96C6\u63A2\u6D4B] \u672A\u547D\u4E2D: [${d}] ${y.anime.animeTitle} (Count:${y.originalCount} <= Threshold:${h})`)})}}return e}async function woe(t){let{pAnime:e,availableSecondaries:r,curAnimes:n,groupConsumedIds:s,globalConsumedIds:i,generatedSignatures:a,epFilter:o,groupFingerprint:c,currentPrimarySource:u,logPrefix:l,limitSecondaryLang:d,collectionAnimeIds:f,allowReuseIds:p,collectionProgress:m,baseSecondaries:h}=t;if(f.has(e.animeId)&&s.has(e.animeId))return ht("info",`${l} \u8DF3\u8FC7: [${u}] \u662F\u5408\u96C6\u4E14\u5DF2\u4F5C\u4E3A\u7EC4\u5185\u526F\u6E90\u53C2\u4E0E\u8FC7\u5408\u5E76\u3002`),null;let y=Toe(e);if(!y.links){let D=O.animes.find(L=>String(L.animeId)===String(e.animeId));y.links=D?.links?Toe(D.links):[]}if(!y.links||y.links.length===0)return ht("warn",`${l} \u4E3B\u6E90\u6570\u636E\u4E0D\u5B8C\u6574\uFF0C\u8DF3\u8FC7: ${e.animeTitle}`),null;let g=e.animeTitle.replace(xe.Clean.FROM_SUFFIX,""),b=[],x=[e.animeId],A=!1,S=Ao(e.animeTitle),I=O5(y.links,e.animeTitle,u),R=f.has(e.animeId),w=(D,L)=>D?L&&D.includes(L)?D.replace(L,""):D:"",N=Wc(e.animeTitle),k=n.filter(D=>Wc(D.animeTitle)===N),B=Rxr(k,o,f);if(B.size>0){let D=Array.from(B.entries()).map(([L,Z])=>`S${L}=${Z}`).join(", ");(R||r.some(L=>n.some(Z=>Z.source===L&&f.has(Z.animeId))))&&ht("info",`${l} [\u5408\u96C6\u5904\u7406] \u6784\u5EFA\u5B63\u5EA6\u96C6\u6570\u5730\u56FE (Mode\u7B56\u7565): { ${D} }`)}let M=[];for(let D of r){let L=n.filter(z=>{if(z.source!==D)return!1;let j=Ooe(e,z);if(j)return j.action==="block"?(ht("info",`${l} \u62E6\u622A: \u526F\u6E90 [${z.source}] ${z.animeTitle} \u88AB\u6620\u5C04\u8868 [\xD7] \u89C4\u5219\u660E\u786E\u963B\u65AD`),!1):!0;if(R)return!0;let J=s.has(z.animeId),se=p&&p.has(z.animeId);return!(J&&!se)}),Z=[],W=new Set;for(let z of L)W.has(z.animeId)||(W.add(z.animeId),Z.push(z));if(L=Z,d&&(L=L.filter(z=>Ao(z.animeTitle)===d)),L.length>1&&L.sort((z,j)=>{let J=Ao(z.animeTitle)==="CN",se=Ao(j.animeTitle)==="CN";return J===se?0:J?1:-1}),L.length===0)continue;let U=Dxr(e,L,f,h);M.push(...U)}if(M.length>0){if(M.length>1&&(R||M.some(D=>f.has(D.animeId)))){M.sort((L,Z)=>{let W=wi(L.animeTitle,L.typeDescription,L.aliases)||1,U=wi(Z.animeTitle,Z.typeDescription,Z.aliases)||1;if(W!==U)return W-U;let z=r.indexOf(L.source),j=r.indexOf(Z.source);return z-j});let D=M.map(L=>`[${L.source}]S${wi(L.animeTitle,L.typeDescription,L.aliases)||1}`);ht("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: ${D.join(" -> ")}`)}for(let D of M){let L=D.source,Z=Ooe(e,D);if(Z&&Z.action==="block"){ht("info",`${l} [\u5B89\u5168\u7F51\u62E6\u622A] \u5173\u8054\u53D6\u6D88: [${u}] ${e.animeTitle} <-> [${L}] ${D.animeTitle} \u88AB\u660E\u786E\u963B\u65AD`);continue}if(!R&&!(p&&p.has(D.animeId))&&!Z&&s.has(D.animeId))continue;let W=O.animes.find(Pe=>String(Pe.animeId)===String(D.animeId));if(!W?.links)continue;let U=Toe(W),z=[],j=new Set,J=[],se=[],oe=U.animeTitle.replace(xe.Clean.FROM_SUFFIX,""),ue=wat(y.links,u),Te=wat(U.links,L),Ne=new Set([...Te].filter(Pe=>!ue.has(Pe))),je=new Set([...ue].filter(Pe=>!Te.has(Pe)));je.size>0&&Rat(y.links,je,u,`\u4E3B\u6E90:${u}`),Ne.size>0&&Rat(U.links,Ne,L,`\u526F\u6E90:${L}`);let Fe=U.links,ve=Noe(y.links,o,u),F=Noe(Fe,o,L),G=Ao(U.animeTitle),K=ve,q=F,Q=0,ee=0,ne=f.has(D.animeId),re=(Pe,qe,Ye)=>{let Je=0,et=qe;if(Ye&&Ye>1){let st=!1,ut=Pe?e.animeId:D.animeId;if(m&&m.has(ut)){let rt=m.get(ut),Pt=Ye-1;if(rt[`S${Pt}`]!==void 0){let dt=rt[`S${Pt}`]+1;dt>0&&dt=qe.length){let dt=(Ye-1)*12;dt Total ${qe.length}\uFF0C\u542F\u7528\u56DE\u9000\u4F30\u7B97 (S${Ye} -> Index ${dt})`),Pt=Math.max(0,dt-2))}if(Pt>0&&PtPe.isSpecial||Pe.isStrictSpecial||Pe.num!==null&&Pe.num%1!==0,me=new Map,Oe=0;if(Z&&Z.hasRoutes){ht("info",`${l} \u542F\u7528\u6620\u5C04\u8868\u7CBE\u786E\u8DEF\u7531: ${e.animeTitle} <-> ${D.animeTitle}`);let qe=Nat(K,q,S,G,u,L,e.animeTitle,U.animeTitle)+Q-ee;Oe=qe;let Ye=new Map;for(let Je of Z.routes){let et=Je.sec.end-Je.sec.start+1,st=Je.prim.end-Je.prim.start+1;if(et!==st){ht("warn",`[Merge] [\u6620\u5C04\u8868] \u8DEF\u7531\u533A\u95F4\u8DE8\u5EA6\u4E0D\u5BF9\u7B49\uFF0C\u8DF3\u8FC7\u6B64\u6BB5: E${Je.sec.start}~E${Je.sec.end} > E${Je.prim.start}~E${Je.prim.end}`);continue}for(let ut=0;ut{let yn=Ca(w(nt.link.title||nt.link.name,I),u),It=yn.num;return It===null&&!yn.isStrictSpecial&&(It=_t+1),It===Xe&&!yn.isSpecial&&!yn.isStrictSpecial});if(pt!==-1){me.set(Je,pt),dt.relativeIndex=pt;let nt=ve[pt].originalIndex,_t=y.links[nt],yn=_t.name||_t.title||`Index ${nt}`,It=Roe(st.url),wr=_t.url,js=`${L}:${It}`;wr.includes(Wu)||wr.startsWith(u+":")||(wr=`${u}:${wr}`);let Lr=`${wr}${Wu}${js}`,Qs=_t.title;if(Qs){let Hs=L,bs=(st.title||"").match(/^【([^】\d]+)(?:\d*)】/);bs&&(Hs=bs[1].trim()),Qs=Qs.replace(/^【([^】]+)】/,(Gs,Ku)=>`\u3010${Ku}${Kg}${Hs}\u3011`)}z.push({idx:pt,text:` [\u5DF2\u8DEF\u7531\u6620\u5C04] ${yn} <-> ${ut} (Rule: E${Be}>E${Xe})`}),j.add(pt),X++,J.push({linkIndex:nt,newUrl:Lr,newTitle:Qs})}else dt.relativeIndex=Je+qe,z.push({idx:dt.relativeIndex,text:` [\u8DEF\u7531\u5931\u8D25] \u4E3B\u6E90\u627E\u4E0D\u5230 E${Xe} <-> ${ut}`}),se.push(dt)}}else{Z&&ht("info",`${l} \u547D\u4E2D\u6620\u5C04\u8868\u5E38\u89C4\u5408\u5E76: [${L}] ${D.animeTitle} -> [${u}] ${e.animeTitle} (\u5DF2\u514D\u68C0\u653E\u884C\uFF0C\u4EA4\u7531\u7CFB\u7EDF\u81EA\u52A8\u5BF9\u9F50)`),Oe=Nat(K,q,S,G,u,L,e.animeTitle,U.animeTitle)+Q-ee,Oe!==0&&ht("info",`${l} \u96C6\u6570\u81EA\u52A8\u5BF9\u9F50 (${L}): Offset=${Oe} (P:${ve.length}, S:${F.length})`);let qe=new Map,Ye=null;F.forEach((ut,rt)=>{let Pt=ve[rt+Oe];if(!Pt)return;let dt=w(Pt.link.title||Pt.link.name,I),Be=w(ut.link.title||ut.link.name,ie),Xe=Ca(dt,u),pt=Ca(Be,L);if(Xe.num===null||pt.num===null||ce(Xe)||ce(pt))return;let nt=Xe.num-pt.num,yn=1+(pm(L1(dt),L1(Be))>.45?1:0);Ye!==null&&Xe.num-Ye>1?yn=.1:Ye=Xe.num,qe.set(nt,(qe.get(nt)||0)+yn)});let Je=qe.size>0?[...qe.entries()].reduce((ut,rt)=>rt[1]>ut[1]?rt:ut)[0]:null,et=ve.reduce((ut,rt,Pt)=>{let dt=Ca(w(rt.link.title||rt.link.name,I),u);return ce(dt)&&!dt.isPV&&ut.push(Pt),ut},[]),st=0;for(let ut=0;ut{let wr=Ca(w(It.link.title||It.link.name,I),u);return wr.num===yn&&!ce(wr)}),rt!==-1)nt.relativeIndex=rt;else{let It=-.5;for(let wr=ve.length-1;wr>=0;wr--){let js=Ca(w(ve[wr].link.title||ve[wr].link.name,I),u);if(js.num!==null&&!js.isSpecial&&js.numIt&&(It=Hs,yn=js)}yn===-1&&!pt.isPV&&st=0&&rt`\u3010${fW}${Kg}${To}\u3011`)}z.push({idx:nt.relativeIndex,text:` [\u5339\u914D] ${wr} <-> ${Be}`}),j.add(rt),X++,J.push({linkIndex:yn,newUrl:Ma,newTitle:Ed})}else z.push({idx:nt.relativeIndex,text:` [\u843D\u5355] (\u4E3B\u6E90\u8D8A\u754C) <-> ${Be}`}),se.push(nt)}}for(let Pe=0;Pe (\u526F\u6E90\u7F3A\u5931\u6216\u88AB\u7565\u8FC7)`})}if(X>0){let Pe=f.has(e.animeId)||f.has(D.animeId),qe=!1;if(Z?qe=X>0:qe=wxr(X,ve.length,F.length,u,L,Pe),qe){for(let Be of J){let Xe=y.links[Be.linkIndex];Xe.url=Be.newUrl,Xe.title=Be.newTitle}let Ye=Be=>Be?Be.replace(xe.Clean.YEAR_TAG,"").replace(xe.Clean.SOURCE_TAG,"").replace(xe.Clean.FROM_SUFFIX,"").trim():"",Je=Ye(y.animeTitle);y.aliases=[...new Set([...y.aliases||[],...U.aliases||[],...D.aliases||[],Ye(U.animeTitle)])].filter(Be=>Be&&Be!==Je),ht("info",`${l} \u5173\u8054\u6210\u529F: [${u}] ${g} <-> [${L}] ${oe} (\u672C\u6B21\u5408\u5E76 ${X} \u96C6)`),z.length>0&&(z.sort((Be,Xe)=>Be.idx-Xe.idx),ht("info",`${l} [${L}] \u6620\u5C04\u8BE6\u60C5: +${z.map(Be=>Be.text).join(` +`)}`)),y.mergedChildren=y.mergedChildren||[],y.mergedChildren.some(Be=>String(Be.animeId)===String(D.animeId)&&Be.source===D.source)||y.mergedChildren.push({animeId:D.animeId,animeTitle:D.animeTitle,source:D.source,episodes:U.links?U.links.length:0,imageUrl:D.imageUrl||""});let et=O.animes.find(Be=>String(Be.animeId)===String(D.animeId)&&Be.source===D.source);if(et&&(et.isHiddenChild=!0),m&&(ne||R)){let Be=-1;if(R&&!ne){for(let Xe=0;XeBe&&(Be=nt)}}if(Be!==-1){let Xe=wi(U.animeTitle,U.typeDescription,U.aliases)||1;m.has(e.animeId)||m.set(e.animeId,{});let pt=m.get(e.animeId);X>=3&&(pt[`S${Xe}`]=Be)}}else if(!R&&ne){for(let Xe=0;XeBe&&(Be=nt.originalIndex)}}if(Be!==-1){let Xe=wi(e.animeTitle,e.typeDescription,e.aliases)||1;m.has(D.animeId)||m.set(D.animeId,{});let pt=m.get(D.animeId);X>=3&&(pt[`S${Xe}`]=Be,ht("info",`[Merge-Check] \u66F4\u65B0\u5408\u96C6\u8FDB\u5EA6 [${D.animeId}]: S${Xe} -> MaxIndex ${Be}`))}}}let st=wi(e.animeTitle,e.typeDescription,e.aliases)||1,ut=wi(U.animeTitle,U.typeDescription,U.aliases)||1,rt=Z&&st!==ut;f.has(D.animeId)||rt?ht("info",`${l} [\u667A\u80FD\u8865\u5168] \u8DF3\u8FC7: \u526F\u6E90 [${L}] \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`):Oxr(y,se,L);let Pt=[],dt=[];y.links.forEach(Be=>{let Xe=Be.title.replace(xe.Clean.SOURCE_TAG,"").trim();xe.Episode.SINK_TITLE_STRICT.test(Xe)?dt.push(Be):Pt.push(Be)}),dt.length>0&&(y.links=[...Pt,...dt],ht("info",`${l} [\u6392\u5E8F\u4F18\u5316] \u7ACB\u5373\u6267\u884C\u756A\u5916\u6C89\u5E95: \u79FB\u52A8\u4E86 ${dt.length} \u4E2A\u756A\u5916\u96C6\u5230\u672B\u5C3E`)),A=!0,b.push(L),x.push(D.animeId)}else ht("info",`${l} \u5173\u8054\u53D6\u6D88: [${u}] ${g} <-> [${L}] ${oe} (\u5339\u914D\u7387\u8FC7\u4F4E: ${X}/${Math.max(ve.length,F.length)})`)}}}if(A){let D=x.join("|");if(a.has(D))return ht("info",`${l} \u68C0\u6D4B\u5230\u91CD\u590D\u7684\u5408\u5E76\u7ED3\u679C (Signature: ${D})\uFF0C\u5DF2\u81EA\u52A8\u9690\u53BB\u5197\u4F59\u6761\u76EE\u3002`),null;a.add(D);let L=O.animes.find(W=>String(W.animeId)===String(e.animeId)&&W.source===e.source);L&&(L.isHiddenChild=!0);for(let W=1;W({primary:p.primary,secondaries:[...p.secondaries],baseSecondaries:[...p.secondaries]}));for(let[p,m]of s.entries()){let h=i.find(y=>y.primary===p);h||(h={primary:p,secondaries:[],baseSecondaries:[]},i.push(h));for(let y of m)h.secondaries.includes(y)||h.secondaries.push(y)}if(!i||i.length===0)return;ht("info",`[Merge] \u542F\u52A8\u6E90\u5408\u5E76\u7B56\u7565\uFF0C\u7EC4\u5408\u8BA1\u7B97\u540E\u7684\u914D\u7F6E: ${JSON.stringify(i)}`);let a=O.episodeTitleFilter;if(a&&typeof a=="string")try{a=new RegExp(a,"i")}catch{a=null}let o=Bxr(t),c=new Map,u=[],l=new Set,d=new Set,f=new Set;i.forEach(p=>{p.secondaries.length===0&&f.add(p.primary)});for(let p of i){if(p.secondaries.length===0)continue;let m=new Map,h=[p.primary,...p.secondaries];h.forEach((w,N)=>m.set(w,N));let y=h.join("&"),g=new Set,b=(w,N)=>{if(!w||w.length<2)return w;ht("info",`[Merge-Check] [Sort] ${N} \u6392\u5E8F\u524D\u9996\u4E2A\u5143\u7D20: ${w[0].animeTitle}`),w.sort((B,M)=>{let D=m.get(B.source)??99,L=m.get(M.source)??99;if(D!==L)return D-L;let Z=J=>{let se=xo(J.animeTitle,J.typeDescription,J.aliases);return se.has("MOVIE")||se.has("OVA")||se.has("SP")||Vg(J.animeTitle,J.typeDescription)==="MOVIE"?2:1},W=Z(B),U=Z(M);if(W!==U)return W-U;let z=wi(B.animeTitle,B.typeDescription,B.aliases)||1,j=wi(M.animeTitle,M.typeDescription,M.aliases)||1;return z-j});let k=w.map(B=>{let M=wi(B.animeTitle,B.typeDescription,B.aliases)||1,D=xo(B.animeTitle,B.typeDescription,B.aliases).has("MOVIE")||Vg(B.animeTitle,B.typeDescription)==="MOVIE"?"Movie":`S${M}`;return`[P${m.get(B.source)??"?"}] [${D}] [${B.source}] ${B.animeTitle}`});return ht("info",`[Merge-Check] [Sort] ${N} \u6267\u884C\u987A\u5E8F: + ${k.join(` + `)}`),w},x=[];h.forEach(w=>{t.filter(k=>k.source===w&&!g.has(k.animeId)&&Ao(k.animeTitle)==="CN").forEach(k=>x.push(k))});let A=!1;for(let w of h)if(t.some(N=>N.source===w&&!g.has(N.animeId)&&Ao(N.animeTitle)==="CN")){A=!0;break}if(x.length>0&&A){ht("info",`[Merge] [Phase 1] \u542F\u52A8 CN \u9694\u79BB\u7B56\u7565: \u5305\u542B ${x.length} \u4E2A CN \u8D44\u6E90\u3002`),b(x,"Phase 1");for(let w of x){if(g.has(w.animeId))continue;let N=m.get(w.source),k=h.slice(N+1);if(k.length===0)continue;let B=await woe({pAnime:w,availableSecondaries:k,curAnimes:t,groupConsumedIds:g,globalConsumedIds:d,generatedSignatures:l,epFilter:a,groupFingerprint:y,currentPrimarySource:w.source,logPrefix:"[Merge][Phase 1: CN-Strict]",limitSecondaryLang:"CN",collectionAnimeIds:o,collectionProgress:c,baseSecondaries:p.baseSecondaries});B&&(u.push(B),g.add(w.animeId),d.add(w.animeId))}}let S=[];for(let w=1;wB.source===N&&!g.has(B.animeId)&&Ao(B.animeTitle)==="CN").forEach(B=>S.push(B))}if(S.length>=2){ht("info",`[Merge] [Phase 1.5] \u542F\u52A8\u526F\u6E90 CN \u81EA\u7EC4\u7EC7: \u68C0\u6D4B\u5230 ${S.length} \u4E2A\u5269\u4F59 CN \u8D44\u6E90\u3002`),b(S,"Phase 1.5");for(let w of S){if(g.has(w.animeId))continue;let N=m.get(w.source),k=h.slice(N+1);if(k.length===0)continue;let B=await woe({pAnime:w,availableSecondaries:k,curAnimes:t,groupConsumedIds:g,globalConsumedIds:d,generatedSignatures:l,epFilter:a,groupFingerprint:y,currentPrimarySource:w.source,logPrefix:"[Merge][Phase 1.5: CN-Secondary]",limitSecondaryLang:"CN",collectionAnimeIds:o,collectionProgress:c,baseSecondaries:p.baseSecondaries});B&&(u.push(B),g.add(w.animeId),d.add(w.animeId))}}let I=[];h.forEach(w=>{t.filter(k=>k.source===w&&!g.has(k.animeId)).forEach(k=>I.push(k))});let R=new Set(I.map(w=>w.source));if(I.length>0&&R.size>=2){ht("info",`[Merge] [Phase 2] \u542F\u52A8\u6807\u51C6\u56DE\u9000\u5339\u914D: \u5269\u4F59 ${I.length} \u4E2A\u8D44\u6E90\u3002`),b(I,"Phase 2");for(let w of I){if(g.has(w.animeId))continue;let N=m.get(w.source),k=h.slice(N+1);if(k.length===0)continue;let B=xo(w.animeTitle,w.typeDescription,w.aliases),M=Array.from(B).some(Z=>Z.startsWith("P")),D=null;if(M){D=new Set;let Z=wi(w.animeTitle,w.typeDescription,w.aliases)||1;for(let W of d){let U=O.animes.find(J=>String(J.animeId)===String(W));if(!U||!k.includes(U.source))continue;let z=xo(U.animeTitle,U.typeDescription,U.aliases);if(Array.from(z).some(J=>J.startsWith("P")))continue;let j=wi(U.animeTitle,U.typeDescription,U.aliases)||1;Z===j&&D.add(U.animeId)}}let L=await woe({pAnime:w,availableSecondaries:k,curAnimes:t,groupConsumedIds:g,globalConsumedIds:d,generatedSignatures:l,epFilter:a,groupFingerprint:y,currentPrimarySource:w.source,logPrefix:"[Merge][Phase 2: Standard]",collectionAnimeIds:o,allowReuseIds:D,collectionProgress:c,baseSecondaries:p.baseSecondaries});L&&(u.push(L),g.add(w.animeId),d.add(w.animeId))}}}if(u.length>0){for(let p of u)Bt(p,e);t.unshift(...u)}if(f.size>0)for(let p of t)d.has(p.animeId)&&f.has(p.source)&&d.delete(p.animeId);for(let p=t.length-1;p>=0;p--){let m=t[p];(m._isMerged||d.has(m.animeId))&&t.splice(p,1)}u.length>0?ht("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: ${t.length}`):ht("info",`[Merge] \u626B\u63CF\u5B8C\u6BD5\uFF0C\u672A\u4EA7\u751F\u4EFB\u4F55\u5408\u5E76\uFF0C\u5217\u8868\u4FDD\u6301\u4E0D\u53D8 (\u6570\u91CF: ${t.length})`)}function kat(t){if(t.p&&typeof t.p=="string"){let e=parseFloat(t.p.split(",")[0]);if(!isNaN(e))return e}return t.t!==void 0&&t.t!==null?Number(t.t):typeof t.progress=="number"?t.progress/1e3:0}function Pat(t){if(t){if(typeof t.m=="string")return t.m;if(typeof t.text=="string")return t.text;if(typeof t.content=="string")return t.content}return""}function Dat(t){return!t||typeof t!="string"?"":t.replace(/[\s.,!?"'(){}\[\]<>;:,。!?、""''()【】《》;:~~]/g,"").toLowerCase()}function $at(t,e){let r=[...t||[],...e||[]],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 Uat(t,e,r,n=.8,s=1){let i=e.indexOf("dandan");if(i===-1||!t[i]?.length)return ht("info","[Merge][AlignTimeline] \u65E0 dandan \u6E90\u6216\u65E0\u6570\u636E\uFF0C\u8DF3\u8FC7\u65F6\u95F4\u8F74\u5BF9\u9F50"),t;let a=t[i],o=a.length,c=new Map;return a.forEach(u=>{let l=Dat(Pat(u)),d=kat(u);l&&(!c.has(l)||d{let d=e[l];if(d==="dandan"||!u?.length)return;let f=new Map,p=[],m=0;u.forEach(A=>{let S=Dat(Pat(A)),I=kat(A);if(p.push({danmu:A,time:I}),S&&c.has(S)){m++;let R=Math.round(I-c.get(S));f.set(R,(f.get(R)||0)+1)}});let h=0,y=0;f.forEach((A,S)=>{A>y&&(y=A,h=S)});let g=Math.min(o,u.length),b=y/g,x=m>0?y/m:0;if(m/g{let I=Math.max(0,S-h);typeof A.p=="string"&&(A.p=A.p.replace(/^[^,]+(?=,)/,I.toFixed(2))),A.t!=null&&(A.t=I),typeof A.progress=="number"&&(A.progress=Math.round(I*1e3))})}),t}ws();function Qat(t,e=Date.now()){let r=Number(t);return Number.isFinite(r)&&r>0?Math.trunc(r):Math.trunc(Number(e)||Date.now())}function Lxr(t=""){return cL(Tg(t)).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/g,"")}function Mxr(t=""){let e=String(t||"").trim();if(!e)return"";let r=e.replace(/-/g,"+").replace(/_/g,"/").padEnd(Math.ceil(e.length/4)*4,"=");return Lc(Cg(r))}var Hat="6.8.2",Wxr="a_8280",$xr="xiaomi",Gat="Redmi Note 12",Uxr="Xiaomi",zat="14",Fxr=`HanjuTV/${Hat} (${Gat}; Android ${zat}; Scale/2.00)`,Kat=14*24*60*60*1e3,Fat="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",Vat="f349wghhe784tqwh",Yat="d3w8hf94fidk38lk",qxr="34F9Q53w/HJW8E6Q",qat="fb3597b87601d5a7";function KT(t){return typeof TextEncoder<"u"?new TextEncoder().encode(t):Tg(t)}function jxr(t){return typeof TextDecoder<"u"?new TextDecoder().decode(t):Lc(t)}function Jat(t,e){let r=new Uint8Array(t.length);for(let n=0;n>=1}return r}function Gxr(t){let e=new Uint8Array(16);for(let r=0;r<4;r++){let n=t.slice(4*r,4*r+4);e[4*r+0]=qn(n[0],2)^qn(n[1],3)^n[2]^n[3],e[4*r+1]=n[0]^qn(n[1],2)^qn(n[2],3)^n[3],e[4*r+2]=n[0]^n[1]^qn(n[2],2)^qn(n[3],3),e[4*r+3]=qn(n[0],3)^n[1]^n[2]^qn(n[3],2)}return e}function zxr(t){let e=new Uint8Array(16);for(let r=0;r<4;r++){let n=t.slice(4*r,4*r+4);e[4*r+0]=qn(n[0],14)^qn(n[1],11)^qn(n[2],13)^qn(n[3],9),e[4*r+1]=qn(n[0],9)^qn(n[1],14)^qn(n[2],11)^qn(n[3],13),e[4*r+2]=qn(n[0],13)^qn(n[1],9)^qn(n[2],14)^qn(n[3],11),e[4*r+3]=qn(n[0],11)^qn(n[1],13)^qn(n[2],9)^qn(n[3],14)}return e}function Kxr(t,e){let r=new Uint8Array(t);r=W1(r,e,0);for(let n=1;n<=9;n++)r=aL(r),r=jat(r),r=Gxr(r),r=W1(r,e,n);return r=aL(r),r=jat(r),r=W1(r,e,10),r}function Vxr(t,e){let r=new Uint8Array(t);r=W1(r,e,10);for(let n=9;n>=1;n--)r=NC(r),r=RC(r),r=W1(r,e,n),r=zxr(r);return r=NC(r),r=RC(r),r=W1(r,e,0),r}function Yxr(t,e,r){let n=Qxr(t,16),s=oL(e),i=new Uint8Array(n.length),a=new Uint8Array(r);for(let o=0;on!==null).sort((n,s)=>{let i=im(n.animeTitle),a=im(s.animeTitle);if(i!=null&&a!==null&&a!==void 0){if(a!==i)return a-i;let o=ZY(n.animeTitle),c=ZY(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)})}};kt();vt();dr();function Br(t){let e=parseInt(t);return isNaN(e)||e<1900||e>2100?`${new Date().getFullYear()}-01-01T00:00:00Z`:`${e}-01-01T00:00:00Z`}function Yg(t){let e=t.split(":").map(Number),r=0;return e.length===3?r=e[0]*3600+e[1]*60+e[2]:e.length===2?r=e[0]*60+e[1]:r=e[0],r}Un();mn();var VT=class extends wt{async get360Zongyi(e,r,n,s){try{let i=[];for(let a=0;a<=10;a++){let u=(await(await Ae(`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(E("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})}E("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 E("error","[360kan] get360Animes error:",{message:i.message,name:i.name,stack:i.stack}),[]}}async getNumber(e,r,n){try{let s=`https://api.web.360kan.com/v1/detail?cat=${e}&id=${r}&site=${n}`,a=(await Ae(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){E("error","[360kan] getNumber error:",s&&s.message?s.message:s)}return null}async get360Detail(e,r,n,s,i){try{let a=`https://api.web.360kan.com/v1/detail?cat=${e}&id=${r}&start=${s}&end=${i}&site=${n}`;return(await Ae(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){E("error","[360kan] get360Detail error:",a&&a.message?a.message:a)}return null}async getEpisodesV1(e,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(e,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(E("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 E("error",`getEpisodesV1 error: ${i&&i.message?i.message:i}`),[]}}async getEpisodesV2(e,r,n){try{let s=JSON.stringify([{cat_id:String(e),ent_id:String(r),site:n}]),i=`https://api.so.360kan.com/episodesv2?v_ap=1&s=${encodeURIComponent(s)}`,o=(await Ae(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 E("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 E("error","[360kan] getEpisodesV2 error:",{message:s&&s.message?s.message:String(s),stack:s&&s.stack?s.stack:void 0}),[]}}async search(e){try{let n=(await Ae(`https://api.so.360kan.com/index?force_v=1&kw=${encodeURIComponent(e)}&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),E("info",`[360kan] 360kan response: ${JSON.stringify(s)}`),E("info",`[360kan] 360kan animes.length: ${s.length}`),s}catch(r){return E("error","[360kan] get360Animes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getEpisodes(e){}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return E("error","[360kan] sourceAnimes is not a valid array"),[];let o=e.filter(l=>xt(l.titleTxt,r,i)),c=i!==null?i:$t(r);if(c!==null){let l=o.filter(d=>{let f=Tt(d.titleTxt).season;return f===c||c===1&&f===null});l.length>0&&(o=l,E("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))O.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 p=null;if(Array.isArray(l.seriesPlaylinks)&&l.seriesPlaylinks.length>0){if(O.vodAllowedPlatforms.includes(l.seriesSite))for(let m=0;m0)for(let g of y)d.push({name:g.name,url:g.url,title:`\u3010${m}\u3011 \u7B2C${g.name}\u96C6`,sort:g.name});else try{let g=await this.getNumber(f,h,m);if(g&&Number(g)>0){let b=await this.getEpisodesV1(f,h,m,g);if(b&&b.length>0)for(let x of b)d.push({name:x.name,url:x.url,title:`\u3010${m}\u3011 \u7B2C${x.name}\u96C6`,sort:x.name})}}catch(g){E("error",`[360kan] fallback detail fetch failed for site ${m}: ${g&&g.message?g.message:g}`)}}catch(h){E("error",`[360kan] failed to fetch episodesv2 for site ${m}: ${h&&h.message?h.message:h}`)}}}else l.cat_name==="\u7EFC\u827A"&&(d=(await Promise.all(Object.keys(l.playlinks_year).map(async p=>O.vodAllowedPlatforms.includes(p)?(await Promise.all(l.playlinks_year[p].map(async h=>await this.get360Zongyi(l.titleTxt,l.id,p,h)))).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:Br(l.year),episodeCount:d.length,rating:0,isFavorited:!0,source:"360"};a.push(f),Bt({...f,links:d},s),O.animes.length>O.MAX_ANIMES&&Ut()}}catch(d){E("error",`[360kan] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){}formatComments(e){}};kt();vt();dr();Un();mn();var YT=class extends wt{async getVodAnimes(e,r,n){try{let s=FUe(e),i=encodeURIComponent(s),a=await Ae(`${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){E("info",`[VOD] \u8BF7\u6C42 ${n}(${r}) \u6210\u529F`);let o=a.data;return E("info",`[VOD] ${n} response: \u2193\u2193\u2193`),rs(o),{serverName:n,list:o.list}}else return E("info",`[VOD] \u8BF7\u6C42 ${n}(${r}) \u6210\u529F\uFF0C\u4F46 response.data.list \u4E3A\u7A7A`),{serverName:n,list:[]}}catch(s){return E("error",`[VOD] \u8BF7\u6C42 ${n}(${r}) \u5931\u8D25:`,{message:s.message,name:s.name,stack:s.stack}),{serverName:n,list:[]}}}async getVodAnimesFromAllServersImpl(e,r){let n=r.map(i=>this.getVodAnimes(e,i.url,i.name));return(await Promise.allSettled(n)).filter(i=>i.status==="fulfilled").map(i=>i.value)}async getVodAnimesFromFastestServer(e,r,n=null,s=null){if(!r||r.length===0)return[];let i=r.map(l=>this.getVodAnimes(e,l.url,l.name)),a;try{a=await Promise.race(i)}catch(l){return E("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 E("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];E("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 E("info",`[VOD fastest mode] \u627E\u5230\u5305\u542B preferAnimeId \u7684\u670D\u52A1\u5668: ${l.value.serverName}`),[l.value];E("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 E("info",`[VOD fastest mode] \u4F7F\u7528\u6700\u5FEB\u6709\u6570\u636E\u7684\u670D\u52A1\u5668: ${l.serverName}`),[l]}return E("error","[VOD fastest mode] \u6240\u6709\u670D\u52A1\u5668\u5747\u65E0\u6709\u6548\u6570\u636E"),[]}async search(e,r=null,n=null){return!O.vodServers||O.vodServers.length===0?[]:O.vodReturnMode==="fastest"?await this.getVodAnimesFromFastestServer(e,O.vodServers,r,n):await this.getVodAnimesFromAllServersImpl(e,O.vodServers)}async getEpisodes(e){}async handleAnimes(e,r,n,s,i=null,a=null){let o=[];if(!e||!Array.isArray(e))return E("error","[VOD] sourceAnimes is not a valid array"),[];let c=e.filter(d=>xt(d.vod_name,r,a)),u=a!==null?a:$t(r);if(u!==null){let d=c.filter(f=>{let p=Tt(f.vod_name).season;return p===u||u===1&&p===null});d.length>0&&(c=d,E("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 p=d.vod_play_url.split("$$$"),m=f.map((g,b)=>O.vodAllowedPlatforms.includes(g)?b:-1).filter(g=>g!==-1),h=[],y=0;for(let g of m){let b=f[g],x=p[g].split("#");for(let A of x){let S=A.split("$");y++,h.push({name:y.toString(),url:S[1],title:`\u3010${b}\u3011 ${S[0]}`})}}if(h.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:Br(d.vod_year),episodeCount:h.length,rating:0,isFavorited:!0,source:"vod"};o.push(g),Bt({...g,links:h},i),O.animes.length>O.MAX_ANIMES&&Ut()}}catch(f){E("error",`[VOD] Error processing anime: ${f.message}`)}}));return this.sortAndPushAnimesByYear(o,n),l}async getEpisodeDanmu(e){}formatComments(e){}};vt();vt();dr();kt();async function iot(t){let e="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"};O.doubanCookie&&(r.Cookie=O.doubanCookie);try{let n=await Ae(`${e}${t}`,{method:"GET",headers:r});return n.status!=200?null:n}catch(n){return E("error","[Utils] [Douban] GET API error:",{message:n.message,name:n.name,stack:n.stack}),null}}async function aot(t,e={}){let r="https://api.douban.com/v2";try{let n=await Gr(`${r}${t}`,JSON.stringify({...e,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 E("error","[Utils] [Douban] POST API error:",{message:n.message,name:n.name,stack:n.stack}),null}}async function oot(t,e=20){let r=`/search?q=${t}&start=0&count=${e}&type=movie`;return await iot(r)}async function cot(t,e=20){return await aot("/movie/search",{q:t,start:0,count:e})}async function uot(t){let e=`/movie/${t}?for_mobile=1`;return await iot(e)}async function lot(t){let e=`/movie/imdb/${t}`;return await aot(e)}vt();dr();async function dot(t){let e="https://api.imdbapi.dev";try{let r=await Ae(`${e}${t}`,{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 E("error","[Utils] [IMDB] API error:",{message:r.message,name:r.name,stack:r.stack}),null}}async function fot(t){let e=`/titles/${t}/seasons`;return await dot(e)}async function pot(t,e){let r=`/titles/${t}/episodes?season=${e}`;return await dot(r)}var JT=class extends wt{constructor(e){super("BaseSource"),this.doubanSource=e}async _getDoubanInfo(e,r,n){if(!e)return;let s=await lot(e);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(e,r){try{let n=[],i=(await bat(e,r)).data?.imdb_id;if(!i)return[];if(e==="movie")await this._getDoubanInfo(i,e,n);else{let a=await fot(i);E("info","[TMDB] imdb seasons:",a.data.seasons);let o=(a?.data?.seasons??[]).map(async c=>{let u=i;E("info","[TMDB] imdb season:",c.season);try{Number(c.season)!==1&&(u=(await pot(i,c.season)).data?.episodes.find(d=>d.episodeNumber===1)?.id??""),await this._getDoubanInfo(u,e,n)}catch(l){E("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 E("error","[TMDB] getTmdbIds error:",{message:n.message,name:n.name,stack:n.stack}),[]}}async search(e){try{let n=(await R5(e)).data,s=[],i=[];n?.results?.length>0&&(i=n.results.filter(c=>(c.name||c.title)===e)),E("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 E("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 E("error","[TMDB] getTmdbAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getEpisodes(e){}async handleAnimes(e,r,n,s=null,i=null){return this.doubanSource.handleAnimes(e,r,n,s,i)}async getEpisodeDanmu(e){}formatComments(e){}};vt();mn();var XT=class extends wt{constructor(e,r,n,s,i){super("BaseSource"),this.tencentSource=e,this.iqiyiSource=r,this.youkuSource=n,this.bilibiliSource=s,this.miguSource=i}async search(e){try{let n=(await oot(e))?.data;if(!n||!n?.subjects?.items?.length&&!n?.smart_box?.length){E("info","[Douban] searchDoubanTitles failed or empty, trying searchDoubanTitlesByPublic");let a=(await cot(e))?.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]),E("info",`[Douban] douban animes.length: ${s.length}`),s}catch(r){return E("error","[Douban] getDoubanAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}convertToOriginalFormat(e){let n={movie:"\u7535\u5F71",tv:"\u7535\u89C6\u5267"}[e.subtype]||e.subtype,s=e.images?.large||e.images?.medium||e.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=e.directors?.map(u=>u.name).join(" ")||"",o=e.casts?.slice(0,3).map(u=>u.name).join(" ")||"",c=`${e.year} / ${e.genres?.join(" / ")||""} / ${a}${o?" / "+o:""}`;return{layout:"subject",type_name:n,target_id:String(e.id),target:{rating:{count:e.collect_count||0,max:e.rating?.max||10,star_count:e.rating?.stars?parseInt(e.rating.stars)/10:0,value:e.rating?.average||0},controversy_reason:"",title:e.title,abstract:"",has_linewatch:!1,uri:`douban://douban.com/${e.subtype==="movie"?"movie":"tv"}/${e.id}`,cover_url:i,year:String(e.year||""),card_subtitle:c,id:String(e.id),null_rating_reason:""},target_type:e.subtype==="movie"?"movie":"tv"}}async getEpisodes(e){}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return E("error","[Douban] sourceAnimes is not a valid array"),[];let o=e.filter(l=>{let d=l?.target?.title||"";return xt(d,r,i)}),c=i!==null?i:$t(r);if(c!==null){let l=o.filter(d=>{let f=d?.target?.title||"",p=Tt(f).season;return p===c||c===1&&p===null});l.length>0&&(o=l,E("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;E("info","[Douban] doubanId: ",d,l?.target?.title,f);let p=await uot(d),m=[];for(let h of p.data?.vendors??[]){if(!h)continue;E("info","[Douban] vendor uri: ",h.uri),p.data?.genres.includes("\u771F\u4EBA\u79C0")?f="\u7EFC\u827A":p.data?.genres.includes("\u7EAA\u5F55\u7247")?f="\u7EAA\u5F55\u7247":f==="\u7535\u89C6\u5267"&&p.data?.genres.includes("\u52A8\u753B")&&p.data?.countries.some(g=>g.includes("\u4E2D\u56FD"))?f="\u56FD\u6F2B":f==="\u7535\u89C6\u5267"&&p.data?.genres.includes("\u52A8\u753B")&&p.data?.countries.includes("\u65E5\u672C")?f="\u65E5\u756A":f==="\u7535\u89C6\u5267"&&p.data?.genres.includes("\u52A8\u753B")?f="\u52A8\u6F2B":f==="\u7535\u5F71"&&p.data?.genres.includes("\u52A8\u753B")?f="\u52A8\u753B\u7535\u5F71":f==="\u7535\u5F71"&&p.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"&&p.data?.countries.some(g=>g.includes("\u4E2D\u56FD"))?f="\u56FD\u4EA7\u5267":f==="\u7535\u89C6\u5267"&&p.data?.countries.some(g=>["\u65E5\u672C","\u97E9\u56FD"].includes(g))?f="\u65E5\u97E9\u5267":f==="\u7535\u89C6\u5267"&&p.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 y=[{title:p.data?.title,year:p.data?.year,type:f,imageUrl:l?.target?.cover_url}];switch(h.id){case"qq":{let g=new URL(h.uri).searchParams.get("cid");g&&(y[0].provider="tencent",y[0].mediaId=g,await this.tencentSource.handleAnimes(y,p.data?.title,a,s,i));break}case"iqiyi":{let g=new URL(h.uri).searchParams.get("tvid");g&&(y[0].provider="iqiyi",y[0].mediaId=l?.type_name==="\u7535\u5F71"?`movie_${g}`:g,await this.iqiyiSource.handleAnimes(y,p.data?.title,a,s,i));break}case"youku":{let g=new URL(h.uri).searchParams.get("showid");g&&(y[0].provider="youku",y[0].mediaId=g,await this.youkuSource.handleAnimes(y,p.data?.title,a,s,i));break}case"bilibili":{let g=new URL(h.uri).pathname.split("/").pop();g&&(y[0].provider="bilibili",y[0].mediaId=`ss${g}`,await this.bilibiliSource.handleAnimes(y,p.data?.title,a,s,i));break}case"miguvideo":{let g=null,x=decodeURIComponent(h.uri).match(/"contentID":"([^"]+)"/);x&&x[1]&&(g=x[1]),g&&(y[0].provider="migu",y[0].mediaId=`https://v3-sc.miguvideo.com/program/v4/cont/content-info/${g}/1`,await this.miguSource.handleAnimes(y,p.data?.title,a,s,i));break}}}return m}catch(d){return E("error",`[Douban] Error processing anime: ${d.message}`),[]}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){}formatComments(e){}};kt();vt();dr();ws();Un();mn();ys();var ip=null,ZT=0,ew=0,na={search:"WIN",detail:"TV",danmu:"TV"},tw=class extends wt{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 e="aY",r=24-e.length,n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",s=e;for(let i=0;iMath.floor(Math.random()*16).toString(16)).join("").toUpperCase()}generateDeviceId(){return Math.random().toString(36).slice(2).toUpperCase()}rotateAliId(){let e=ip;ip=this.generateRandomAliId(),ZT=0,ew=Math.floor(Math.random()*31)+30,e?E("info",`[Renren] AliID \u8F6E\u6362\u5B8C\u6210: ${e} -> ${ip}`):E("info",`[Renren] AliID \u521D\u59CB\u5316\u5B8C\u6210: ${ip}`),E("info",`[Renren] AliID \u4E0B\u6B21\u8F6E\u6362\u5C06\u5728 ${ew} \u6B21\u64CD\u4F5C\u540E\u89E6\u53D1`)}checkAndIncrementUsage(){ip||this.rotateAliId(),ZT>=ew&&(E("info",`[Renren] AliID \u89E6\u53D1\u9608\u503C (${ZT}/${ew})\uFF0C\u6B63\u5728\u8F6E\u6362 ID...`),this.rotateAliId()),ZT++,E("info",`[Renren] AliID \u8BA1\u6570\u589E\u52A0: ${ZT}/${ew} (\u5F53\u524DID: ...${ip.slice(-6)})`)}getAliId(){return ip||this.rotateAliId(),this.isBatchMode||this.checkAndIncrementUsage(),ip}generateTvHeaders(e,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:e.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(e,r,n,s,i,a,o,c){let u=`${e.toUpperCase()} aliId:${r} ct:${n} cv:${s} t:${i} -${a}?${o}`;return D8e(c,u)}buildSignedHeaders({method:e,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=T8e(r),c=SC(n),u=Date.now(),d=this.generateSignature(e,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(e,r,n){try{let s=await ge(e,{headers:r,timeout:5e3,validStatusCodes:[404]});if(s.status===404)return s.data&&s.data.error==="Document not found"?[]:(_("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 _("info",`[Renren] ${n} \u7AEF\u5F39\u5E55\u62C9\u53D6\u5F02\u5E38: ${s.message}`),null}}async renrenHttpGet(e,{params:r={},headers:n={},validStatusCodes:s=[]}={}){let i=db(e,r);return await ge(i,{headers:n,timeout:5e3,validStatusCodes:s})}async renrenRequest(e,r,n={}){let s=this.generateDeviceId(),i=this.buildSignedHeaders({method:e,url:r,params:n,deviceId:s});return await ge(r+"?"+SC(n),{headers:i,timeout:5e3})}async searchAppContent(e,r=30){try{let n=Date.now(),s="/qwtv/search",i={searchWord:e,num:r,searchNext:"",well:"match"},a=wC(s,n,i,this.API_CONFIG.TV_SECRET_KEY),o=Object.entries(i).map(([f,p])=>`${f}=${encodeURIComponent(p==null?"":String(p))}`).join("&"),c=this.generateTvHeaders(n,a),u=`https://${this.API_CONFIG.TV_HOST}${s}?${o}`,l=await ge(u,{headers:c,timeout:5e3});return!l.data||l.data.code!=="0000"?(_("info",`[Renren] TV\u641C\u7D22\u63A5\u53E3\u5F02\u5E38: code=${l?.data?.code}, msg=${l?.data?.msg}`),null):(l.data.data||[]).map(f=>{let p=[];if(f.highlights&&(f.highlights.alias&&(p=f.highlights.alias.split(",").map(m=>m.trim().replace(/<[^>]+>/g,"")).filter(Boolean)),f.highlights.original_name)){let m=f.highlights.original_name.replace(/<[^>]+>/g,"").trim();m&&!p.includes(m)&&p.push(m)}return{provider:"renren",mediaId:String(f.id),title:String(f.title||"").replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A"),aliases:p,type:f.classify||"Renren",season:null,year:f.year,imageUrl:f.cover,episodeCount:null,currentEpisodeIndex:null}})}catch(n){return _("info","[Renren] searchAppContent error:",n.message),null}}async performMacSearch(e,r=20){try{let n="/search/v5/season",s={keywords:e,order:"match",search_after:"",size:r},i=this.buildMacHeaders(),a=SC(s),o=`https://${this.API_CONFIG.MAC_HOST}${n}?${a}`,c=await ge(o,{headers:i,timeout:5e3});return!c.data||c.data.code!=="0000"?(_("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 _("info","[Renren] performMacSearch error:",n.message),null}}async performWinSearch(e,r=30){try{let n=`https://${this.API_CONFIG.WIN_HOST}/search/comprehensive/precise-mixed`,i=SC({keywords:e,searchAfter:"",size:r}),a=this.buildWinHeaders(),o=await ge(`${n}?${i}`,{headers:a,timeout:5e3});if(!o.data||o.data.code!=="0000")return _("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||[],p=m=>{let h=[];if(m.highlights&&(m.highlights.alias&&(h=m.highlights.alias.split(",").map(A=>A.trim().replace(/<[^>]+>/g,"")).filter(Boolean)),m.highlights.original_name)){let A=m.highlights.original_name.replace(/<[^>]+>/g,"").trim();A&&!h.includes(A)&&h.push(A)}return{provider:"renren",mediaId:String(m.id),title:String(m.title||m.alias||m.name||"").replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A"),aliases:h,type:m.classify||m.cat||"Renren",season:null,year:m.year||null,imageUrl:m.cover||m.coverUrl,episodeCount:null,currentEpisodeIndex:null}};return l.forEach(m=>u.push(p(m))),d.forEach(m=>u.push(p(m))),f.forEach(m=>{m.seasonList&&Array.isArray(m.seasonList)&&m.seasonList.forEach(h=>{u.push(p(h))})}),u}catch(n){return _("info","[Renren] performWinSearch error:",n.message),null}}async performNetworkSearch(e,{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:e,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?(TC(u.data)?.data?.searchDramaList||[]).map(f=>{let p=[];if(f.highlights&&(f.highlights.alias&&(p=f.highlights.alias.split(",").map(m=>m.trim().replace(/<[^>]+>/g,"")).filter(Boolean)),f.highlights.original_name)){let m=f.highlights.original_name.replace(/<[^>]+>/g,"").trim();m&&!p.includes(m)&&p.push(m)}return{provider:"renren",mediaId:String(f.id),title:String(f.title||"").replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A"),aliases:p,type:f.classify||"Renren",season:null,year:f.year,imageUrl:f.cover,episodeCount:f.episodeTotal,currentEpisodeIndex:null}}):(_("info","[Renren] \u7F51\u9875\u7248\u641C\u7D22\u65E0\u54CD\u5E94\u6570\u636E"),null)}catch(i){return _("info","[Renren] performNetworkSearch error:",i.message),null}}async search(e){_("info",`[Renren] \u5F00\u59CB\u641C\u7D22: ${e}`);let r=[],n=!1,s=["WIN","TV","MAC","WEB"],i=s.indexOf(zi.search);i===-1&&(i=0);for(let a=i;a ${o}`),zi.search=o);break}else _("info",`[Renren] ${o} \u7AEF\u641C\u7D22\u63A5\u53E3\u5F02\u5E38\u6216\u8BF7\u6C42\u5931\u8D25\uFF0C\u89E6\u53D1\u964D\u7EA7`)}catch(c){_("info",`[Renren] ${o} \u7AEF\u641C\u7D22\u5F02\u5E38\uFF0C\u89E6\u53D1\u964D\u7EA7: ${c.message}`)}}return n||(_("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"),zi.search="WIN"),r}async getAppDramaDetail(e,r=""){try{let n=Date.now(),s="/qwtv/drama/details",i={isAgeLimit:"false",seriesId:String(e),episodeId:String(r),clarity:"HD",caption:"0",hevcOpen:"1"},a=wC(s,n,i,this.API_CONFIG.TV_SECRET_KEY),o=Object.entries(i).map(([f,p])=>`${f}=${encodeURIComponent(p)}`).join("&"),c=this.generateTvHeaders(n,a),u=await ge(`https://${this.API_CONFIG.TV_HOST}${s}?${o}`,{headers:c,timeout:5e3});if(!u||!u.data)return _("info",`[Renren] TV\u8BE6\u60C5\u63A5\u53E3\u7F51\u7EDC\u65E0\u54CD\u5E94\u6216\u6570\u636E\u4E3A\u7A7A: ID=${e}`),null;let l=u.data,d=l.msg||l.message||"";return d.includes("\u8BE5\u5267\u6682\u4E0D\u53EF\u64AD")?(_("info",`[Renren] TV\u63A5\u53E3\u63D0\u793A'\u8BE5\u5267\u6682\u4E0D\u53EF\u64AD' (ID=${e})\uFF0C\u89C6\u4E3A\u7EF4\u62A4\u4E2D\uFF0C\u89E6\u53D1\u964D\u7EA7`),null):l.code!=="0000"?(_("info",`[Renren] TV\u8BE6\u60C5\u63A5\u53E3\u8FD4\u56DE\u9519\u8BEF\u7801: ${l.code}, msg=${d} (ID=${e})`),null):!l.data||!l.data.episodeList||l.data.episodeList.length===0?l.data?.dramaInfo?.playStatus?.includes("\u5373\u5C06\u5F00\u64AD")?(_("info",`[Renren] TV\u8BE6\u60C5\u63A5\u53E3\u63D0\u793A'\u5373\u5C06\u5F00\u64AD' (ID=${e})\uFF0C\u89C6\u4E3A\u7A7A\u7ED3\u679C`),l.data.episodeList||(l.data.episodeList=[]),l.data):(_("info",`[Renren] TV\u8BE6\u60C5\u63A5\u53E3\u8FD4\u56DE\u6570\u636E\u7F3A\u5931\u5206\u96C6\u5217\u8868 (ID=${e})\uFF0C\u5C1D\u8BD5\u964D\u7EA7`),null):(_("info",`[Renren] TV\u7AEF\u8BE6\u60C5\u83B7\u53D6\u4E0E\u5206\u96C6\u89E3\u6790\u6210\u529F: ID=${e}, \u5305\u542B\u96C6\u6570=${l.data.episodeList.length}`),l.data)}catch(n){return _("info","[Renren] getAppDramaDetail error:",n.message),null}}async getGatewayDramaDetail(e,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=wC(i,s,a,this.API_CONFIG.TV_SECRET_KEY),c=Object.entries(a).map(([m,h])=>`${m}=${encodeURIComponent(h)}`).join("&"),u=this.generateTvHeaders(s,o),l=`https://${e}${i}?${c}`,d=await ge(l,{headers:u,timeout:5e3});if(!d||!d.data)return _("info",`[Renren] \u8BE6\u60C5\u63A5\u53E3\u7F51\u7EDC\u65E0\u54CD\u5E94\u6216\u6570\u636E\u4E3A\u7A7A (${e}): ID=${r}`),null;let f=d.data,p=f.msg||f.message||"";return p.includes("\u8BE5\u5267\u6682\u4E0D\u53EF\u64AD")?(_("info",`[Renren] \u63A5\u53E3\u63D0\u793A'\u8BE5\u5267\u6682\u4E0D\u53EF\u64AD' (${e}) (ID=${r})\uFF0C\u89C6\u4E3A\u7EF4\u62A4\u4E2D\uFF0C\u89E6\u53D1\u964D\u7EA7`),null):f.code!=="0000"?(_("info",`[Renren] \u8BE6\u60C5\u63A5\u53E3\u8FD4\u56DE\u9519\u8BEF\u7801: ${f.code}, msg=${p} (${e}) (ID=${r})`),null):!f.data||!f.data.episodeList||f.data.episodeList.length===0?f.data?.dramaInfo?.playStatus?.includes("\u5373\u5C06\u5F00\u64AD")?(_("info",`[Renren] \u8BE6\u60C5\u63A5\u53E3\u63D0\u793A'\u5373\u5C06\u5F00\u64AD' (${e}) (ID=${r})\uFF0C\u89C6\u4E3A\u7A7A\u7ED3\u679C`),f.data.episodeList||(f.data.episodeList=[]),f.data):(_("info",`[Renren] \u8BE6\u60C5\u63A5\u53E3\u8FD4\u56DE\u6570\u636E\u7F3A\u5931\u5206\u96C6\u5217\u8868 (${e}) (ID=${r})\uFF0C\u5C1D\u8BD5\u964D\u7EA7`),null):(_("info",`[Renren] \u8DE8\u534F\u8BAE\u8BE6\u60C5\u83B7\u53D6\u4E0E\u5206\u96C6\u89E3\u6790\u6210\u529F (${e}): ID=${r}, \u5305\u542B\u96C6\u6570=${f.data.episodeList.length}`),f.data)}catch(s){return _("info",`[Renren] getGatewayDramaDetail error (${e}):`,s.message),null}}async getWebDramaDetailFallback(e){let r=`https://${this.API_CONFIG.WEB_HOST}/m-station/drama/page`,n={hsdrOpen:0,isAgeLimit:0,dramaId:String(e),hevcOpen:1};try{let s=await this.renrenRequest("GET",r,n);if(!s.data)return null;let i=TC(s.data);return i&&i.data&&i.data.episodeList&&i.data.episodeList.length>0?(_("info",`[Renren] \u7F51\u9875\u7248\u8BE6\u60C5\u83B7\u53D6\u4E0E\u5206\u96C6\u89E3\u6790\u6210\u529F: ID=${e}, \u5305\u542B\u96C6\u6570=${i.data.episodeList.length}`),i.data):null}catch(s){return _("info",`[Renren] \u7F51\u9875\u7248\u8BE6\u60C5\u8BF7\u6C42\u5931\u8D25: ${s.message}`),null}}async getDetail(e,r=""){let n=null,s=["TV","MAC","WIN","WEB"],i=s.indexOf(zi.detail);i===-1&&(i=0);for(let a=i;a ${o}`),zi.detail=o),n;_("info",`[Renren] ${o} \u8BE6\u60C5\u63A5\u53E3\u5931\u8D25\u6216\u65E0\u6570\u636E\uFF0C\u89E6\u53D1\u964D\u7EA7`)}catch(c){_("info",`[Renren] ${o} \u8BE6\u60C5\u63A5\u53E3\u5F02\u5E38\uFF0C\u89E6\u53D1\u964D\u7EA7: ${c.message}`)}}return _("info","[Renren] \u8BE6\u60C5\u57DF\u6240\u6709\u964D\u7EA7\u63A5\u53E3\u5747\u5931\u8D25\uFF0C\u91CD\u7F6E\u5065\u5EB7\u72B6\u6001\u81F3 TV \u7AEF"),zi.detail="TV",null}async getEpisodes(e){let r=await this.getDetail(e);if(!r)return _("info",`[Renren] \u83B7\u53D6\u5206\u96C6\u5931\u8D25: \u8BE6\u60C5\u5BF9\u8C61\u4E3A\u7A7A ID=${e}`),[];if(!r.episodeList||!Array.isArray(r.episodeList))return _("info",`[Renren] \u83B7\u53D6\u5206\u96C6\u5931\u8D25: episodeList \u5B57\u6BB5\u7F3A\u5931\u6216\u975E\u6570\u7EC4 ID=${e}`),[];let n=[],s=String(e);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(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return _("info","[Renren] sourceAnimes is not a valid array"),[];let o=e.filter(d=>yt(d.title,r,i)?!0:d.aliases&&Array.isArray(d.aliases)?d.aliases.some(f=>yt(f,r,i)):!1),c=i!==null?i:$t(r);if(c!==null){let d=o.filter(f=>{let p=Tt(f.title).season;return p===c||c===1&&p===null});d.length>0&&(o=d,_("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"}[zi.search]||"\u672A\u77E5";_("info",`[Renren] ${l}\u7AEF\u641C\u7D22\u63D0\u53D6\u7ED3\u679C\u6570\u91CF: ${e.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),p=[];for(let m of f)p.push({name:m.episodeIndex.toString(),url:m.episodeId,title:`\u3010${m.provider}\u3011 ${m.title}`});if(p.length>0){let m=d.aliases||[];f.enName&&!m.includes(f.enName)&&m.push(f.enName);let h=f.year||d.year||"",A=f.type||(d.type&&d.type!=="Renren"?d.type:"Renren"),g={animeId:Number(d.mediaId),bangumiId:String(d.mediaId),animeTitle:`${d.title}(${h})\u3010${A}\u3011from renren`,aliases:m,type:A,typeDescription:A,imageUrl:d.imageUrl,startDate:Pr(h),episodeCount:p.length,rating:0,isFavorited:!0,source:"renren"};a.push(g),Lt({...g,links:p},s),O.animes.length>O.MAX_ANIMES&&Ft()}}catch(f){_("info",`[Renren] Error processing anime: ${f.message}`)}}))}finally{this.isBatchMode=!1,this.checkAndIncrementUsage()}return this.sortAndPushAnimesByYear(a,n),a}async getAppDanmu(e){try{let r=Date.now(),n=e;String(e).includes("-")&&(n=String(e).split("-")[1]);let s=`/v1/produce/danmu/EPISODE/${n}`,a=wC(s,r,{},this.API_CONFIG.TV_SECRET_KEY),o=this.generateTvHeaders(r,a),c=`https://${this.API_CONFIG.TV_DANMU_HOST}${s}`,u=await ge(c,{headers:o,timeout:5e3,validStatusCodes:[404]});if(u.status===404)return u.data&&u.data.error==="Document not found"?[]:(_("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=TC(u.data);return Array.isArray(l)?l:l&&l.data&&Array.isArray(l.data)?l.data:[]}catch(r){return _("info","[Renren] getAppDanmu error:",r.message),null}}async getMacDanmu(e){let r=String(e).includes("-")?String(e).split("-")[1]:e,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(e){let r=String(e).includes("-")?String(e).split("-")[1]:e,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(e){let r=e;String(e).includes("-")&&(r=String(e).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"?[]:(_("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=TC(a.data),c=[];return Array.isArray(o)?c=o:o?.data&&Array.isArray(o.data)&&(c=o.data),c}catch(a){return _("info",`[Renren] \u7F51\u9875\u7248\u5F39\u5E55\u964D\u7EA7\u5931\u8D25: ${a.message}`),null}}async getEpisodeDanmu(e){let r=0;if(String(e).includes("-")){let[o,c]=String(e).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(zi.danmu);i===-1&&(i=0);for(let o=i;o ${c}`),zi.danmu=c),n.length>0?_("info",`[Renren] \u6210\u529F\u83B7\u53D6 ${n.length} \u6761\u5F39\u5E55 (${c}\u7AEF)`):_("info",`[Renren] \u8BE5\u5267\u96C6\u6682\u65E0\u5F39\u5E55 (${c}\u7AEF)`),n.adDurationMs=r,n.episodeId=e,n;_("info",`[Renren] ${c} \u5F39\u5E55\u63A5\u53E3\u5931\u8D25\uFF0C\u89E6\u53D1\u964D\u7EA7`)}catch(u){_("info",`[Renren] ${c} \u5F39\u5E55\u63A5\u53E3\u5F02\u5E38\uFF0C\u89E6\u53D1\u964D\u7EA7: ${u.message}`)}}_("info","[Renren] \u5F39\u5E55\u57DF\u6240\u6709\u964D\u7EA7\u63A5\u53E3\u5747\u5931\u8D25\uFF0C\u91CD\u7F6E\u5065\u5EB7\u72B6\u6001\u81F3 TV \u7AEF"),zi.danmu="TV";let a=[];return a.adDurationMs=r,a.episodeId=e,a}async getEpisodeDanmuSegments(e){return new vt({type:"renren",segmentList:[{type:"renren",segment_start:0,segment_end:3e4,url:e}]})}async getEpisodeSegmentDanmu(e){return this.getEpisodeDanmu(e.url)}parseRRSPPFields(e){let r=String(e).split(","),n=(l,d,f)=>{if(l==null||l==="")return f;let p=d(l);return isNaN(p)?f:p},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(e){let r=e.adDurationMs||0,n=e.episodeId||"\u672A\u77E5",s=r/1e3,i=0,a=e.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&&_("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}};Pt();St();ar();Is();$n();hn();hs();var Amr={1:"\u97E9\u5267",2:"\u7EFC\u827A",3:"\u7535\u5F71",4:"\u65E5\u5267",5:"\u7F8E\u5267",6:"\u6CF0\u5267",7:"\u56FD\u4EA7\u5267"},Ig=1e8,dst=6e4,As=Object.freeze({HXQ:"hxq",TV:"tv",MERGED:"merged"}),XT=class extends wt{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(e){return Amr[e]||"\u5176\u4ED6"}async buildTvHeaders(){return this._tvMakeHeaders||(this._tvMakeHeaders=await Xnt(Date.now())),this._tvMakeHeaders(Date.now())}async buildMobileHeaders(){return this._mobileMakeHeaders||(this._mobileMakeHeaders=await Jnt(Date.now())),this._mobileMakeHeaders(Date.now())}async tvGet(e,r={}){let n=await this.buildTvHeaders(),s=await ge(`${this.tvHost}${e}`,{headers:n.headers,timeout:1e4,retries:1,...r});return Rie(s?.data,n.uid)}logError(e,r){_("error",`[Hanjutv] ${e}:`,{message:r.message,name:r.name,stack:r.stack})}attachDanmuSourceLabel(e=[],r=""){let n=i4(r);return Array.isArray(e)?e.map(s=>({...s,_sourceLabel:n})):[]}async tryGet(e,r,n){try{return await e()}catch(s){return n&&_("warn",`${n}: ${s.message}`),r}}normalizeSearchItems(e=[]){return Array.isArray(e)?e.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(e=[]){return Array.isArray(e)?e.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(e=[]){return this.normalizeEpisodes(e).filter(r=>r.pid).map(r=>({...r,pid:String(r.pid)}))}normalizeTvEpisodes(e=[]){return this.normalizeEpisodes(e).filter(r=>r.eid||r.episodeId).map(r=>({...r,eid:String(r.eid||r.episodeId)}))}extractSearchItems(e){let r=e?.seriesData?.seriesList||e?.seriesList||e?.seriesData?.series||[];return this.normalizeSearchItems(r)}dedupeBySid(e=[]){let r=new Map;for(let n of e){if(!n?.sid)continue;let s=String(n.sid);r.has(s)||r.set(s,n)}return Array.from(r.values())}isMergeableSearchPair(e,r,n=""){return!e?.name||!r?.name||n&&(!yt(e.name,n)||!yt(r.name,n))?!1:yt(e.name,r.name)&&yt(r.name,e.name)}buildSearchCandidate(e,r,n=""){if(!e?.sid)return null;let s=String(e.sid),i=String(n||"").trim(),a=r===As.MERGED?Yr(`hxq:${s}|tv:${i}`):Yr(s);return{...e,animeId:a,_variant:r,...i?{tvSid:i}:{}}}mergeSearchCandidates(e,r=[],n=[]){let s=this.dedupeBySid(r),i=this.dedupeBySid(n),a=p=>{let m=[],h=[];for(let A of p)(yt(A?.name||"",e)?m:h).push(A);return{matched:m,unmatched:h}},o=a(s),c=a(i),u=o.matched.length+c.matched.length>0,l=[],d=new Set;for(let p of o.matched){let m=c.matched.find(h=>!d.has(String(h.sid))&&this.isMergeableSearchPair(p,h,e));m?(d.add(String(m.sid)),l.push(this.buildSearchCandidate(p,As.MERGED,m.sid))):l.push(this.buildSearchCandidate(p,As.HXQ))}c.matched.filter(p=>!d.has(String(p.sid))).forEach(p=>{l.push(this.buildSearchCandidate(p,As.TV))}),u?l.push(...o.unmatched.map(p=>this.buildSearchCandidate(p,As.HXQ)).filter(Boolean),...c.unmatched.map(p=>this.buildSearchCandidate(p,As.TV)).filter(Boolean)):l.push(...s.map(p=>this.buildSearchCandidate(p,As.HXQ)).filter(Boolean),...i.map(p=>this.buildSearchCandidate(p,As.TV)).filter(Boolean));let f=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===As.MERGED).length:0,s5MatchedList:f(o.matched),s5UnmatchedList:f(o.unmatched),tvMatchedList:f(c.matched),tvUnmatchedList:f(c.unmatched)}}}async extractFromPayload(e,r,n){if(!e||typeof e!="object")throw new Error(`${n} \u54CD\u5E94\u4E3A\u7A7A`);if(typeof e.data=="string"&&e.data.length>0){let i;try{i=await Rie(e,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(e);if(s.length===0)throw new Error(`${n} \u65E0\u6709\u6548\u7ED3\u679C`);return s}async warmupMobileIdentity(e){try{await ge(`${this.appHost}/api/common/configs`,{headers:e,timeout:8e3,retries:0})}catch{}}async ensureMobileIdentityWarmed(){if(this._mobileWarmupAttempted){await this._mobileWarmupPromise;return}this._mobileWarmupAttempted=!0,this._mobileWarmupPromise=(async()=>{let e=await this.buildMobileHeaders();await this.warmupMobileIdentity(e.headers)})(),await this._mobileWarmupPromise}async searchWithS5Api(e){await this.ensureMobileIdentityWarmed();let{uid:r,headers:n}=await this.buildMobileHeaders(),s=encodeURIComponent(e),i=await ge(`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(e){let r=encodeURIComponent(e),n=await this.buildTvHeaders(),s=await ge(`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(e){try{let r=String(e||"").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?(_("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?(_("info","[Hanjutv] hanjutvSearchresp: s5 \u4E0E TV \u63A5\u53E3\u5747\u65E0\u6709\u6548\u7ED3\u679C"),[]):(_("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)}`),_("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}`),_("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(e,r,n,s){try{let i=String(e||"").trim();if(!i)return null;let a=await this.tryGet(()=>r(i),null,s);return a||(_("info",`[Hanjutv] ${n}: series \u4E0D\u5B58\u5728`),null)}catch(i){return this.logError(s,i),null}}async getHxqDetail(e){return this.getSeriesDetail(e,async r=>(await ge(`${this.appHost}/api/series/detail?sid=${r}`,{headers:this.getAppHeaders(),timeout:1e4,retries:1}))?.data?.series??null,"getHanjutvHxqDetail","getHanjutvHxqDetail error")}async getTvDetail(e){return this.getSeriesDetail(e,async r=>(await this.tvGet(`/api/v1/series/detail/query?sid=${r}`))?.series??null,"getHanjutvTvDetail","getHanjutvTvDetail error")}async getHxqEpisodes(e){try{let r=String(e||"").trim();if(!r)return[];let n=[async()=>{let i=await ge(`${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 ge(`${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 ge(`${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?(_("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(e){try{let r=String(e||"").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?(_("info","[Hanjutv] getHanjutvTvEpisodes: episodes \u4E0D\u5B58\u5728"),[]):n.sort((s,i)=>s.serialNo-i.serialNo)}catch(r){return this.logError("getHanjutvTvEpisodes error",r),[]}}resolveAnimeYear(e,...r){let n=[e?.updateTime,e?.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(e,r=""){let n=String(r||"").trim();return n?`\u7B2C${e}\u96C6\uFF1A${n}`:`\u7B2C${e}\u96C6`}buildEpisodeLink(e,r){let n=e?.serialNo??r?.serialNo??1,s=this.buildEpisodeTitle(n,e?.title||r?.title||""),i="";if(e?.pid&&r?.eid){let a=est(e.pid,r.eid);i=a?`hanjutv:${a}`:""}else e?.pid?i=`hxq:${e.pid}`:r?.eid&&(i=`tv:${r.eid}`);return i?{name:s,url:i,title:`\u3010hanjutv\u3011 ${s}`}:null}mergeVariantEpisodes(e=[],r=[]){let n=new Map(e.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(e,r,n,s){let i=this.getCategory(r?.category??e?.category),a=this.resolveAnimeYear(e,r);return{animeId:s,bangumiId:String(s),animeTitle:`${e.name}(${a})\u3010${i}\u3011from hanjutv`,type:i,typeDescription:i,imageUrl:e?.image?.thumb||"",startDate:Pr(a),episodeCount:n.length,rating:Number(r?.rank??0),isFavorited:!0,source:"hanjutv"}}async getHxqBundle(e){if(!e)return{detail:null,episodes:[]};let[r,n]=await Promise.all([this.getHxqDetail(e),this.getHxqEpisodes(e)]);return{detail:r,episodes:n}}async getTvBundle(e){if(!e)return{detail:null,episodes:[]};let[r,n]=await Promise.all([this.getTvDetail(e),this.getTvEpisodes(e)]);return{detail:r,episodes:n}}async buildAnimePayload(e){let r=e?._variant||As.HXQ,n=String(e?.sid||"").trim(),s=String(e?.tvSid||"").trim(),i=s||(r===As.TV?n:""),a=Number(e?.animeId),o=r===As.MERGED&&n&&s?Number.isFinite(a)&&a>0?a:Yr(`hxq:${n}|tv:${s}`):null,c=(r===As.HXQ||r===As.MERGED)&&n,u=(r===As.TV||r===As.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===As.MERGED&&n&&s){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(e,p,f,o),links:f}}}if((r===As.HXQ||r===As.MERGED)&&n){let f=l.episodes.map(p=>this.buildEpisodeLink(p,null)).filter(Boolean);if(f.length>0)return{summary:this.buildAnimeSummary(e,l.detail,f,o??Yr(n)),links:f}}if((r===As.TV||r===As.MERGED)&&i){let f=d.episodes.map(p=>this.buildEpisodeLink(null,p)).filter(Boolean);if(f.length>0)return{summary:this.buildAnimeSummary(e,d.detail,f,o??Yr(i)),links:f}}return null}async handleAnimes(e,r,n,s=null,i=null){if(!Array.isArray(e))return _("error","[Hanjutv] sourceAnimes is not a valid array"),[];let a=[],o=e.filter(u=>yt(u.name,r,i)),c=i!==null?i:$t(r);if(c!==null){let u=o.filter(l=>{let d=Tt(l.name).season;return d===c||c===1&&d===null});u.length>0&&(o=u,_("info",`[Hanjutv] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}return await Promise.all(o.map(async u=>{try{let l=await this.buildAnimePayload(u);if(!l||!l.summary||!Array.isArray(l.links)||l.links.length===0)return;a.push(l.summary),Lt({...l.summary,links:l.links},s),O.animes.length>O.MAX_ANIMES&&Ft()}catch(l){_("error",`[Hanjutv] Error processing anime: ${l.message}`)}})),this.sortAndPushAnimesByYear(a,n),a}async fetchEpisodeDanmuByRef(e){let r=String(e?.id||"").trim();if(!r)return[];let n=[];if(!e.preferTv){let s=this.getDanmuHeaders();for(let i of this.danmuHosts){let a=[];try{let o=0,c=0,u=dst,l=0,d=240;for(;c0&&a.push(...p);let m=Number(f?.data?.more??0)===1||f?.data?.more===!0||f?.data?.more==="1",h=Number(f?.data?.nextAxis??Ig),A=Number(f?.data?.lastId??o);if(!Number.isFinite(h)||h<=c||h>=Ig)break;if(Number.isFinite(A)&&A>o&&(o=A),c=h,!m){if(p.length===0)break;u=c+dst}}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??Ig),f=Number(c.lastId??s);if(!Number.isFinite(d)||d<=i||d>=Ig||(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(e){let r=tst(e),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(e){return _("info","[Hanjutv] \u83B7\u53D6\u97E9\u5267TV\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e),new vt({type:"hanjutv",duration:0,segmentList:[{type:"hanjutv",segment_start:0,segment_end:3e4,url:e}]})}async getEpisodeSegmentDanmu(e){return this.getEpisodeDanmu(e.url)}formatComments(e){return e.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}))}};Pt();St();ar();$n();no();hn();hs();var Tg=class extends wt{async search(e){try{let r=[];O.useBangumiData&&(r=await Au(e,["gamer","gamer_hk"]),_("info",`[Bahamut] Bangumi-Data \u672C\u5730\u547D\u4E2D ${r.length} \u6761\u6570\u636E\uFF08\u68C0\u7D22\u8BCD\uFF1A${e}\uFF09`));let n=r.filter(p=>p.video_sn);if(r.length>0&&r.length===n.length)return _("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(p=>{let h=(p.titles.find(A=>A&&A.includes(e))||p.titles[1]||p.title)+(p.titleSuffix||"");return{video_sn:parseInt(p.video_sn),title:h,_displayTitle:h,isLocalPriority:!0,aliases:[...p.titles],_typeStr:p.typeStr,_fromDataSourceDirectHit:!0,_originalQuery:e,_bangumiBegin:p.begin||null}});let s=Ro(e),i=e,a=encodeURIComponent(s);_("info",`[Bahamut] \u539F\u59CB\u641C\u7D22\u8BCD: ${e}`),_("info",`[Bahamut] \u5DF4\u54C8\u4F7F\u7528\u641C\u7D22\u8BCD: ${s}`);let o=new AbortController,c=(async()=>{try{let p=`https://api.gamer.com.tw/mobile_app/anime/v1/search.php?kw=${a}`,m=O.makeProxyUrl(p),h=await ge(m,{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(h&&h.data&&h.data.anime&&h.data.anime.length>0){o.abort();let A=h.data.anime;for(let g of A)try{g._originalQuery=e,g._searchUsedTitle=s}catch{}return _("info",`[Bahamut] bahamutSearchresp (original): ${JSON.stringify(A)}`),_("info",`[Bahamut] \u8FD4\u56DE ${A.length} \u6761\u7ED3\u679C (source: original)`),{success:!0,data:A,source:"original"}}return _("info","[Bahamut] \u539F\u59CB\u641C\u7D22\u6210\u529F\uFF0C\u4F46\u672A\u8FD4\u56DE\u4EFB\u4F55\u7ED3\u679C (source: original)"),{success:!1,source:"original"}}catch(p){return _("error","[Bahamut] \u539F\u59CB\u641C\u7D22\u5931\u8D25:",{message:p.message,name:p.name,stack:p.stack}),{success:!1,source:"original"}}})(),u=(async()=>{try{await new Promise(x=>setTimeout(x,100));let p=await Zb(i,o.signal,"Bahamut");if(!p||!p.title)return _("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:m,cnAlias:h}=p;_("info",`[Bahamut] \u4F7F\u7528\u65E5\u8BED\u539F\u540D\u8FDB\u884C\u641C\u7D22: ${m}`);let g=`https://api.gamer.com.tw/mobile_app/anime/v1/search.php?kw=${encodeURIComponent(m)}`,b=O.makeProxyUrl(g),y=await ge(b,{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(y&&y.data&&y.data.anime&&y.data.anime.length>0){let x=y.data.anime;for(let v of x)try{v._originalQuery=e,v._searchUsedTitle=m,v._tmdbCnAlias=h}catch{}return _("info",`[Bahamut] bahamutSearchresp (TMDB): ${JSON.stringify(x)}`),_("info",`[Bahamut] \u8FD4\u56DE ${x.length} \u6761\u7ED3\u679C (source: tmdb)`),{success:!0,data:x,source:"tmdb"}}return _("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(p){return p.name==="AbortError"?(_("info","[Bahamut] \u539F\u59CB\u641C\u7D22\u6210\u529F\uFF0C\u4E2D\u65AD\u65E5\u8BED\u539F\u540D\u641C\u7D22"),{success:!1,source:"tmdb",aborted:!0}):(_("error","[Bahamut] TMDB\u641C\u7D22\u5931\u8D25:",{message:p.message,name:p.name,stack:p.stack}),{success:!1,source:"tmdb"})}})(),[l,d]=await Promise.all([c,u]),f=[];if(l.success?f=l.data:d.success?f=d.data:_("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 p of f){if(!p||!p.acg_sn)continue;let m=r.find(h=>String(p.acg_sn)===String(h.siteId))||r.find(h=>p.title&&h.title===p.title);if(m){let h=p.title,g=(m.titles.find(b=>b&&b.includes(e))||m.titles[1]||m.title)+(m.titleSuffix||"");p.title=g,p._displayTitle=g,p.isLocalPriority=!0,p.aliases=[...m.titles],h&&!p.aliases.includes(h)&&p.aliases.push(h),p._typeStr=m.typeStr,_("info",`[Bahamut] \u7F51\u7EDC\u7ED3\u679C [${p.title}] \u6210\u529F\u5BF9\u9F50\u672C\u5730 Bangumi-Data \u6570\u636E`)}}return f}catch(r){return _("error","[Bahamut] getBahamutAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getEpisodes(e){try{let r=`https://api.gamer.com.tw/anime/v1/video.php?videoSn=${e}`,n=O.makeProxyUrl(r),s=await ge(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 _("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 _("info","[Bahamut] getBahamutEposides: video \u6216 anime \u4E0D\u5B58\u5728"),[];let{video:i,anime:a}=s.data.data;return _("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 _("error","[Bahamut] getBahamutEposides error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async handleAnimes(e,r,n,s=null,i=null){let a=[],o=/[\u3040-\u309F\u30A0-\u30FF]/.test(r);r=Ro(r);function c(A,g,b){if(!A)return!1;let y=String(A),x=String(g||""),v=String(b||"");if(O.strictTitleMatch){if($0(y,x)||v&&$0(y,v))return!0;try{if($0(y,Ro(x))||$0(y,Gt(x))||v&&($0(y,Ro(v))||$0(y,Gt(v))))return!0}catch{}return!1}let C=Fr(y),R=Fr(x),w=v?Fr(v):"";if(C.includes(R)||w&&C.includes(w))return!0;try{if(C.includes(Fr(Ro(x)))||C.includes(Fr(Gt(x)))||w&&(C.includes(Fr(Ro(v)))||C.includes(Fr(Gt(v)))))return!0}catch{}try{if(C.toLowerCase().includes(R.toLowerCase())||w&&C.toLowerCase().includes(w.toLowerCase()))return!0}catch{}return!1}let l=(Array.isArray(e)?e:[]).filter(A=>{let g=A.title||"",b=A._searchUsedTitle||A._originalQuery||"";return o||A._searchUsedTitle&&A._searchUsedTitle!==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,b)||Array.isArray(A.aliases)&&A.aliases.some(y=>c(y,r,b))});l.forEach(A=>{A._originalTitleAlias=A.title?Gt(A.title):""});let d=l.length>0?l[0]._tmdbCnAlias:null;eE(l,d);let f=i!==null?i:$t(r),p=l;if(f!==null){let A=l.filter(g=>{let b=g._displayTitle||g.title,y=Tt(b).season;return y===f||f===1&&y===null});A.length>0&&(p=A,_("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 m=new Map,h=await Promise.all(p.map(async A=>{try{let g=String(A.video_sn);m.has(g)||m.set(g,this.getEpisodes(A.video_sn));let b=await m.get(g);if(!b||typeof b!="object"||Array.isArray(b))return null;let y=b.video,x=null;b.anime.episodes&&(x=b.anime.episodes[0]||Object.values(b.anime.episodes)[0]);let v=[];if(x&&Array.isArray(x))for(let C of x){let R=`\u7B2C${C.episode}\u96C6`;v.push({name:C.episode.toString(),url:C.videoSn.toString(),title:`\u3010bahamut\u3011 ${R}`})}if(v.length>0){let C=null;if(A._bangumiBegin&&(C=parseInt(A._bangumiBegin.substring(0,4))),!C&&b.anime&&b.anime.seasonStart&&(C=new Date(b.anime.seasonStart).getFullYear()),!C&&y&&y.upTime){let B=String(y.upTime).match(/(\d{4})/);B&&(C=parseInt(B[1]))}if(!C){let k=(A.info||"").match(/(\d{4})/);k&&(C=parseInt(k[1]))}let R=b.anime&&b.anime.cover||A.cover||y&&y.cover||"",w=A._displayTitle||Gt(A.title),N=Array.isArray(A.aliases)?[...A.aliases]:[];A._originalTitleAlias&&A._originalTitleAlias!==w&&!N.includes(A._originalTitleAlias)&&N.push(A._originalTitleAlias);let P=A._typeStr||"\u52A8\u6F2B",L=b.anime&&b.anime.title||y&&y.title||"";L.includes("[\u96FB\u5F71]")?P="\u5267\u573A\u7248":L.includes("[\u7279\u5225\u7BC7]")&&(P="OVA");let M={animeId:A.video_sn,bangumiId:String(A.video_sn),animeTitle:`${w}(${C||"N/A"})\u3010${P}\u3011from bahamut`,aliases:N,type:"\u52A8\u6F2B",typeDescription:"\u52A8\u6F2B",imageUrl:R,startDate:C?Pr(C):Pr(b.anime.seasonStart?new Date(b.anime.seasonStart).getFullYear():null),episodeCount:v.length,rating:y.rating,isFavorited:!0,source:"bahamut"};a.push(M),Lt({...M,links:v},s),O.animes.length>O.MAX_ANIMES&&Ft()}}catch(g){_("error",`[Bahamut] Error processing anime: ${g.message}`)}}));return this.sortAndPushAnimesByYear(a,n),h}async getEpisodeDanmu(e){let r=[];try{let n=`https://api.gamer.com.tw/anime/v1/danmu.php?geo=TW%2CHK&videoSn=${e}`,s=O.makeProxyUrl(n),i=await ge(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 _("error","[Bahamut] fetchBahamutEpisodeDanmu error:",{message:n.message,name:n.name,stack:n.stack}),r}}async getEpisodeDanmuSegments(e){return _("info","[Bahamut] \u83B7\u53D6\u5DF4\u54C8\u59C6\u7279\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e),new vt({type:"bahamut",segmentList:[{type:"bahamut",segment_start:0,segment_end:3e4,url:e}]})}async getEpisodeSegmentDanmu(e){return this.getEpisodeDanmu(e.url)}formatComments(e){let r={0:1,1:5,2:4};return e.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:O.danmuSimplifiedTraditional==="simplified"?Gt(n.text):n.text,t:n.time/10}))}};Pt();St();ar();$n();no();hs();Pt();St();ar();Is();$n();hn();hs();var wg=class extends wt{extractAliasesFromHintWords(e){if(!e||typeof e!="string")return[];let r=[],n=i=>{let a=String(i||"").replace(/<\/?em>/g,"").trim();a&&!r.includes(a)&&r.push(a)},s=e.match(/(?:又名|别名)\s*[::]\s*(.+)$/);return s&&s[1].split(/[、,,/|]+/).forEach(n),r}titleOrAliasMatches(e,r,n=null){return yt(e.title,r,n)?!0:Array.isArray(e.aliases)&&e.aliases.some(s=>yt(s,r,n))}filterTencentSearchItem(e,r){if(!e.videoInfo||!e.doc)return null;let n=e.videoInfo,s=e.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(m=>{m.text&&m.text.includes("3D")&&(u=!0),m.text&&m.text.includes("2D")&&(l=!0)}),n.coverDoc.tags&&Array.isArray(n.coverDoc.tags)&&n.coverDoc.tags.forEach(m=>{m&&m.includes("3D")&&(u=!0),m&&m.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(m=>m.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=>i.includes(h)))return null;let f=a==="\u7535\u5F71"?1:n.subjectDoc?n.subjectDoc.videoNum:0,p=this.extractAliasesFromHintWords(n.hintWords).filter(m=>m!==i);return{provider:"tencent",mediaId:s,title:i,aliases:p,type:c,year:n.year,imageUrl:n.imgUrl,episodeCount:f}}async search(e){try{_("info",`[Tencent] \u5F00\u59CB\u641C\u7D22: ${e}`);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:e,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(e)}&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 Vr(r,JSON.stringify(n),{headers:s});if(!i||!i.data)return _("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 _("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){_("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&&(_("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(e));l.length>0?(_("info",`[Tencent] \u8FFD\u52A0\u300C\u76F8\u5173\u5F71\u89C6\u300Dbox \u4E2D\u5339\u914D "${e}" \u7684 ${l.length} \u4E2A\u9879\u76EE`),o=[...o,...l]):_("info",`[Tencent] \u300C\u76F8\u5173\u5F71\u89C6\u300Dbox \u4E2D\u65E0\u5339\u914D "${e}" \u7684\u9879\u76EE`);break}}if(o.length===0)return _("info","[Tencent] \u641C\u7D22\u65E0\u7ED3\u679C"),[];let c=[];for(let u of o){let l=this.filterTencentSearchItem(u,e);l&&c.push(l)}return _("info",`[Tencent] \u641C\u7D22\u627E\u5230 ${c.length} \u4E2A\u6709\u6548\u7ED3\u679C`),c}catch(r){return _("error","[Tencent] \u641C\u7D22\u51FA\u9519:",r.message),[]}}async getEpisodes(e){try{_("info",`[Tencent] \u83B7\u53D6\u5206\u96C6\u5217\u8868: cid=${e}`);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:e,vid:"",lid:"",page_num:"",page_context:`cid=${e}&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/${e}.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 Vr(r,JSON.stringify(n),{headers:s});if(!i||!i.data)return _("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 _("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){_("error","[Tencent] \u89E3\u6790tabs\u5931\u8D25:",d.message)}if(o.length>0)break}let c=[];if(o.length===0){if(_("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 _("info","[Tencent] \u521D\u59CB\u54CD\u5E94\u4E2D\u4E5F\u672A\u627E\u5230\u5206\u96C6\u4FE1\u606F"),[];_("info",`[Tencent] \u4ECE\u521D\u59CB\u54CD\u5E94\u4E2D\u63D0\u53D6\u5230 ${c.length} \u96C6`)}else{_("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:e,vid:"",lid:"",page_num:"",page_context:u.page_context,detail_page_type:"1"}},d=await Vr(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 p of f.data.module_list_datas)for(let m of p.module_datas)if(m.item_data_lists&&m.item_data_lists.item_datas)for(let h of m.item_data_lists.item_datas)h.item_params&&h.item_params.vid&&h.item_params.is_trailer!=="1"&&c.push({vid:h.item_params.vid,title:h.item_params.title,unionTitle:h.item_params.union_title||h.item_params.title})}}}return _("info",`[Tencent] \u5171\u83B7\u53D6 ${c.length} \u96C6`),c}catch(r){return _("error","[Tencent] \u83B7\u53D6\u5206\u96C6\u51FA\u9519:",r.message),[]}}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return _("error","[Tencent] sourceAnimes is not a valid array"),[];let o=e.filter(l=>this.titleOrAliasMatches(l,r,i)),c=i!==null?i:$t(r);if(c!==null){let l=o.filter(d=>{let f=Tt(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,_("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 p=0;p0){let p=d[0].unionTitle||d[0].title||"\u7B2C1\u96C6",m=l.title,h=p.match(/\[.+版\]/);h&&p.includes(l.title)&&(m=`${l.title}${h[0]}`);let g={animeId:Yr(l.mediaId),bangumiId:l.mediaId,animeTitle:`${m}(${l.year})\u3010${l.type}\u3011from tencent`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:Pr(l.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"tencent",aliases:l.aliases||[]};a.push(g),Lt({...g,links:f},s),O.animes.length>O.MAX_ANIMES&&Ft()}}catch(d){_("error",`[Tencent] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}extractVid(e){let r=e;if(typeof e=="string"&&(e.startsWith("http")||e.includes("vid="))){let n=e.match(/[?&]vid=([^&]+)/);if(n)r=n[1];else{let s=e.split("/");r=s[s.length-1].split(".")[0]}}return r}async getEpisodeDanmu(e){_("info","[Tencent] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u817E\u8BAF\u89C6\u9891\u5F39\u5E55...",e);let r=this.extractVid(e);_("info",`[Tencent] vid: ${r}`);let n;try{n=await ge(e,{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 _("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";_("info",`[Tencent] \u6807\u9898: ${i}`);let a=await this.getEpisodeDanmuSegments(e);if(!a||!a.segmentList||a.segmentList.length===0)return[];let o=a.segmentList;_("info",`[Tencent] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${o.length}`);let c=[];for(let l of o)c.push(ge(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 _("error","[Tencent] \u89E3\u6790\u5F39\u5E55\u6570\u636E\u5931\u8D25:",l),[]}return ts(u),u}async getEpisodeDanmuSegments(e){_("info","[Tencent] \u83B7\u53D6\u817E\u8BAF\u89C6\u9891\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e);let r="https://dm.video.qq.com/barrage/base/",n="https://dm.video.qq.com/barrage/segment/",s=this.extractVid(e);_("info",`[Tencent] \u83B7\u53D6\u5F39\u5E55\u5206\u6BB5\u5217\u8868 - vid: ${s}`);let i;try{i=await ge(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 vt({type:"qq",segmentList:[]}):(_("error","[Tencent] \u8BF7\u6C42\u5F39\u5E55\u57FA\u7840\u6570\u636E\u5931\u8D25:",u),new vt({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 vt({type:"qq",segmentList:o})}async getEpisodeSegmentDanmu(e){try{let r=await ge(e.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 _("error","[Tencent] \u8BF7\u6C42\u5206\u7247\u5F39\u5E55\u5931\u8D25:",r),[]}}formatComments(e){return e.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})}};St();ar();hn();Is();$n();Pt();hs();var Rg=class t extends wt{static XOR_KEY=0x75706971676c;static SECRET_KEY="howcuteitis";static KEY_NAME="secret_key";async search(e){try{_("info",`[iQiyi] \u5F00\u59CB\u641C\u7D22: ${e}`);let r={key:e,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?${Ai(r)}`,i=await ge(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 _("info","[iQiyi] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let a=typeof i.data=="string"?JSON.parse(i.data):i.data;if(!a.data||!a.data.templates)return _("info","[iQiyi] \u641C\u7D22\u65E0\u7ED3\u679C"),[];let o=[],c=a.data.templates;for(let u of c){let l=[];u.template===112&&u.intentAlbumInfos?(_("info",`[iQiyi] \u627E\u5230\u610F\u56FE\u5361\u7247 (template 112)\uFF0C\u5904\u7406 ${u.intentAlbumInfos.length} \u4E2A\u7ED3\u679C`),l=u.intentAlbumInfos):[101,102,103].includes(u.template)&&u.albumInfo&&(_("info",`[iQiyi] \u627E\u5230\u666E\u901A\u7ED3\u679C\u5361\u7247 (template ${u.template})`),l=[u.albumInfo]);for(let d of l){let f=this._filterIqiyiSearchItem(d,e);f&&o.push(f)}}return _("info",`[iQiyi] \u641C\u7D22\u627E\u5230 ${o.length} \u4E2A\u6709\u6548\u7ED3\u679C`),o}catch(r){return _("error","[iQiyi] \u641C\u7D22\u51FA\u9519:",r.message),[]}}_filterIqiyiSearchItem(e,r){if(!e.title)return null;if(e.btnText==="\u5916\u7AD9\u4ED8\u8D39\u64AD\u653E")return _("info",`[iQiyi] \u8FC7\u6EE4\u6389\u5916\u7AD9\u4ED8\u8D39\u64AD\u653E\u5185\u5BB9: ${e.title}`),null;let n=e.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(e.metaTags&&Array.isArray(e.metaTags)&&e.metaTags.forEach(p=>{p.name==="3D"&&(i=!0),p.name==="2D"&&(a=!0)}),e.baseTags&&Array.isArray(e.baseTags)&&e.baseTags.forEach(p=>{p.value==="3D"&&(i=!0),p.value==="2D"&&(a=!0)}),i?s="3D"+s:a&&(s="2D"+s),s.includes("\u7535\u5F71")){let p=e.qipuId||e.playQipuId;if(!p)return _("info",`[iQiyi] \u7535\u5F71\u7F3A\u5C11 qipuId: ${e.title}`),null;let m=null;if(e.year){let A=e.year.value||e.year.name;A&&typeof A=="string"&&A.length===4&&/^\d{4}$/.test(A)&&(m=parseInt(A))}let h=e.title.replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A");return{provider:"iqiyi",mediaId:`movie_${p}`,title:h,type:s,year:m,imageUrl:e.img||e.imgH,episodeCount:1,_qipuId:p}}let o=e.pageUrl;if(!o)return _("info",`[iQiyi] \u975E\u7535\u5F71\u5185\u5BB9\u7F3A\u5C11 pageUrl: ${e.title}`),null;let c=o.match(/v_(\w+?)\.html/);if(!c)return _("info",`[iQiyi] \u65E0\u6CD5\u4ECE pageUrl \u63D0\u53D6 link_id: ${o}`),null;let u=c[1],l=null;if(e.year){let p=e.year.value||e.year.name;p&&typeof p=="string"&&p.length===4&&/^\d{4}$/.test(p)&&(l=parseInt(p))}let d=null;if(e.videos&&e.videos.length>0)d=e.videos.length;else if(e.subscriptContent){let p=e.subscriptContent.match(/(?:更新至|å…¨|å…±)\s*(\d+)\s*(?:集|话|期)/);if(p)d=parseInt(p[1]);else{let m=e.subscriptContent.trim().match(/^(\d+)$/);m&&(d=parseInt(m[1]))}}let f=e.title.replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A");return{provider:"iqiyi",mediaId:u,title:f,type:s,year:l,imageUrl:e.img||e.imgH,episodeCount:d}}async getEpisodes(e){try{if(_("info",`[iQiyi] \u83B7\u53D6\u5206\u96C6\u5217\u8868: media_id=${e}`),e.startsWith("movie_")){let p=e.substring(6);_("info",`[iQiyi] \u7535\u5F71\u7C7B\u578B\uFF0C\u8C03\u7528 base_info API \u83B7\u53D6\u89C6\u9891ID: qipuId=${p}`);let m=await this._getMovieVideoId(p);return m?(_("info",`[iQiyi] \u7535\u5F71\u89C6\u9891ID: ${m}`),[{id:m,title:"\u6B63\u7247",order:1,link:`https://www.iqiyi.com/v_${m}.html`}]):(_("error",`[iQiyi] \u65E0\u6CD5\u83B7\u53D6\u7535\u5F71\u7684\u89C6\u9891ID: qipuId=${p}`),[])}let r=/^\d+$/.test(e)?e:this._videoIdToEntityId(e);if(!r)return _("error",`[iQiyi] \u65E0\u6CD5\u5C06 media_id '${e}' \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?${Ai(n)}`,a=await ge(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 _("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 _("error",`[iQiyi] API \u8FD4\u56DE\u9519\u8BEF\uFF0Cstatus_code: ${o.status_code}`),[];let c=[],u=o.data.template.tabs||[];if(u.length===0)return _("info","[iQiyi] \u672A\u627E\u5230\u5206\u96C6\u6807\u7B7E\u9875"),[];let l=u[0].blocks||[],d=!1;for(let p of l)if(p.bk_type==="video_list"&&p.data?.data){if(_("info",`[iQiyi] \u627E\u5230 video_list \u7C7B\u578B\u7684\u5206\u96C6\u6570\u636E\u5757, bk_id: ${p.bk_id}`),!p.tag||!p.tag.includes("episodes")){_("info",`[iQiyi] \u8DF3\u8FC7\u975E\u5206\u96C6\u5757: ${p.bk_id}`);continue}d=!0;let m=p.data.data;if(!Array.isArray(m)){_("warn","[iQiyi] data.data \u4E0D\u662F\u6570\u7EC4\uFF0C\u8DF3\u8FC7\u6B64\u5757");continue}for(let h of m)if(!(!h.videos||!Array.isArray(h.videos))){for(let A of h.videos)if(!(!A.data||!Array.isArray(A.data)))for(let g of A.data){if(g.content_type!==1)continue;let y=(g.play_url||"").match(/tvid=(\d+)/);if(!y)continue;let x=y[1],v=g.short_display_name||g.title||"\u672A\u77E5\u5206\u96C6",C=g.subtitle;C&&!v.includes(C)&&(v=`${v} ${C}`);let R=g.album_order,w=g.page_url;x&&v&&w&&c.push({id:x,title:v,order:R!==void 0?R:c.length,link:w})}}}else if(p.bk_type==="album_episodes"&&p.data?.data){_("info","[iQiyi] \u627E\u5230 album_episodes \u7C7B\u578B\u7684\u5206\u96C6\u6570\u636E\u5757"),d=!0;let m=p.data.data;for(let h of m){let A=h.videos;if(typeof A=="string"){_("info",`[iQiyi] \u53D1\u73B0\u5206\u5B63URL\uFF0C\u6B63\u5728\u83B7\u53D6: ${A}`);try{let g=await ge(A);A=typeof g.data=="string"?JSON.parse(g.data):g.data}catch(g){_("error",`[iQiyi] \u83B7\u53D6\u5206\u5B63\u6570\u636E\u5931\u8D25: ${g.message}`);continue}}if(A&&typeof A=="object"&&A.feature_paged)for(let g in A.feature_paged){let b=A.feature_paged[g];for(let y of b){if(y.content_type!==1)continue;let v=(y.play_url||"").match(/tvid=(\d+)/);if(!v)continue;let C=v[1],R=y.short_display_name||y.title||"\u672A\u77E5\u5206\u96C6",w=y.subtitle;w&&!R.includes(w)&&(R=`${R} ${w}`);let N=y.album_order,P=y.page_url;C&&R&&N&&P&&c.push({id:C,title:R,order:N,link:P})}}}}if(!d)return _("info","[iQiyi] \u672A\u627E\u5230\u5206\u96C6\u6570\u636E\u5757"),[];let f=Array.from(new Map(c.map(p=>[p.id,p])).values());return f.sort((p,m)=>p.order-m.order),_("info",`[iQiyi] \u6210\u529F\u83B7\u53D6 ${f.length} \u4E2A\u5206\u96C6`),f}catch(r){return _("error","[iQiyi] \u83B7\u53D6\u5206\u96C6\u51FA\u9519:",r.message),[]}}async _getMovieVideoId(e){try{let r={entity_id:e,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?${Ai(r)}`;_("info",`[iQiyi] \u8BF7\u6C42\u7535\u5F71\u8BE6\u60C5: ${s}`);let i=await ge(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 _("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){let u=c[1];return _("info",`[iQiyi] \u4ECE share_url \u63D0\u53D6\u89C6\u9891ID: ${u}`),u}}if(o.page_url){let c=o.page_url.match(/v_(\w+)\.html/);if(c){let u=c[1];return _("info",`[iQiyi] \u4ECE page_url \u63D0\u53D6\u89C6\u9891ID: ${u}`),u}}}return _("error","[iQiyi] base_info API \u54CD\u5E94\u4E2D\u672A\u627E\u5230\u89C6\u9891ID"),_("info",`[iQiyi] \u54CD\u5E94\u6570\u636E\u7ED3\u6784: ${JSON.stringify(a).substring(0,1e3)}...`),null}catch(r){return _("error",`[iQiyi] \u83B7\u53D6\u7535\u5F71\u89C6\u9891ID\u65F6\u51FA\u9519: ${r.message}`),null}}_videoIdToEntityId(e){try{let r=parseInt(e,36),n=this._xorOperation(r),s=n<9e5?100*(n+9e5):n;return String(s)}catch(r){return _("error",`[iQiyi] \u5C06 video_id '${e}' \u8F6C\u6362\u4E3A entity_id \u65F6\u51FA\u9519: ${r.message}`),null}}_xorOperation(e){let r=e.toString(2),n=t.XOR_KEY.toString(2),s=r.split("").reverse(),i=n.split("").reverse(),a=[],o=Math.max(s.length,i.length);for(let u=0;uyt(l.title,r,i)),c=i!==null?i:$t(r);if(c!==null){let l=o.filter(d=>{let f=Tt(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,_("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 p of d){let m=p.link||`https://www.iqiyi.com/v_${l.mediaId}.html`;f.push({name:p.order.toString(),url:m,title:`\u3010qiyi\u3011 ${p.title}`})}if(f.length>0){let m={animeId:Yr(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:Pr(l.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"iqiyi"};a.push(m),Lt({...m,links:f},s),O.animes.length>O.MAX_ANIMES&&Ft()}}catch(d){_("error",`[iQiyi] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){_("info","[iQiyi] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u7231\u5947\u827A\u5F39\u5E55...",e);let r;try{r=await ge(e,{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 _("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";_("info",`[iQiyi] \u6807\u9898: ${s}`);let i=await this.getEpisodeDanmuSegments(e);if(!i||!i.segmentList||i.segmentList.length===0)return[];let a=i.segmentList;_("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 _("error","[iQiyi] \u89E3\u6790\u5F39\u5E55\u6570\u636E\u5931\u8D25:",u),[]}return ts(c),c}async getEpisodeDanmuSegments(e){_("info","[iQiyi] \u83B7\u53D6\u7231\u5947\u827A\u89C6\u9891\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e);let r="https://pcw-api.iq.com/api/decode/",n="https://pcw-api.iqiyi.com/video/video/baseinfo/",s;try{let d=e.match(/v_(\w+)/);if(!d)return _("error","[iQiyi] \u65E0\u6CD5\u4ECE URL \u4E2D\u63D0\u53D6 tvid"),new vt({type:"qiyi",segmentList:[]});s=d[1],_("info",`[iQiyi] tvid: ${s}`);let f=`${r}${s}?platformId=3&modeCode=intl&langCode=sg`,p=await ge(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"}});s=(typeof p.data=="string"?JSON.parse(p.data):p.data).data.toString(),_("info",`[iQiyi] \u89E3\u7801\u540E tvid: ${s}`)}catch(d){return _("error","[iQiyi] \u8BF7\u6C42\u89E3\u7801\u4FE1\u606F\u5931\u8D25:",d),new vt({type:"qiyi",segmentList:[]})}let i;try{let d=`${n}${s}`,f=await ge(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"}}),m=(typeof f.data=="string"?JSON.parse(f.data):f.data).data;if(i=Number(m.durationSec)||0,m.displayBarrage===!1)return _("info","[iQiyi] \u7231\u5947\u827A\u89C6\u9891\u672A\u5F00\u542F\u5F39\u5E55"),new vt({type:"qiyi",duration:i,segmentList:[]});_("info",`[iQiyi] \u65F6\u957F: ${i}`)}catch(d){return _("error","[iQiyi] \u8BF7\u6C42\u89C6\u9891\u57FA\u7840\u4FE1\u606F\u5931\u8D25:",d),new vt({type:"qiyi",segmentList:[]})}let a=60,o=Math.ceil(i/a);_("info",`[iQiyi] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${o}`);let c=[],u=`0000${s}`,l=`${u.slice(-4,-2)}/${u.slice(-2)}`;for(let d=0;d(.*?)`,"g");return e.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(e){let r=[],n=this._parseIqiyiProtoFields(e);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(e){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(e,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(e,n),l=Number(u.value);n=u.offset;let d=n+l;if(d>e.length)break;let f=e.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(e,r){let n=0n,s=0n,i=r;for(;in.number===r)?.value||""}formatComments(e){return e.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=cf(r.content),n.size=25,n.like=r.like,n})}};Pt();St();ar();hn();Is();$n();hs();var Ng=class extends wt{transformV2Color(e){if(!e)return-1;let n=uK(e.color_left),s=uK(e.color_right);return n===-1&&s===-1?-1:n===-1?s:s===-1?n:Math.floor((n+s)/2)}_extractMediaType(e){let r=(e||"").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(e){try{_("info",`[Mango] \u5F00\u59CB\u641C\u7D22: ${e}`);let n=`https://mobileso.bz.mgtv.com/msite/search/v2?q=${encodeURIComponent(e)}&pc=30&pn=1&sort=-99&ty=0&du=0&pt=0&corr=1&abroad=0&_support=10000000000000000`,s=await ge(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(!s||!s.data)return _("info","[Mango] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let i=typeof s.data=="string"?JSON.parse(s.data):s.data;if(!i.data||!i.data.contents)return _("info","[Mango] \u641C\u7D22\u65E0\u7ED3\u679C"),[];let a=[];for(let o of i.data.contents)if(o.type==="media")for(let c of o.data){if(c.source!=="imgo")continue;let u=c.url?c.url.match(/\/b\/(\d+)/):null;if(!u)continue;let l=u[1],d=c.title?c.title.replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A"):"",f=c.desc&&c.desc[0]?c.desc[0].match(/[12][890][0-9][0-9]/):null,p=f?parseInt(f[0]):null,m=c.desc&&c.desc[0]?c.desc[0].split("/")[0].replace("\u7C7B\u578B:","").trim():"",h=this._extractMediaType(m);a.push({provider:"imgo",mediaId:l,title:d,type:h,year:p,imageUrl:c.img||null,episodeCount:c.videoCount||null})}return _("info",`[Mango] \u641C\u7D22\u627E\u5230 ${a.length} \u4E2A\u6709\u6548\u7ED3\u679C`),a}catch(r){return _("error","[Mango] \u641C\u7D22\u51FA\u9519:",r.message),[]}}async getEpisodes(e){try{_("info",`[Mango] \u83B7\u53D6\u5206\u96C6\u5217\u8868: collection_id=${e}`);let r=[],n="",s=0,i=1;for(;s0&&r.push(...d.data.list.filter(f=>f.src_clip_id===e)),s===0&&(i=d.data.tab_m&&d.data.tab_m.length>0?d.data.tab_m.length:1,_("info",`[Mango] \u68C0\u6D4B\u5230 ${i} \u4E2A\u6708\u4EFD\u5206\u9875`)),s++,s{let l=`${u.t2||""} ${u.t1||""}`.trim();return u.isnew==="2"?(_("info",`[Mango] \u8FC7\u6EE4\u9884\u544A\u7247: ${l}`),!1):a.test(l)?(_("info",`[Mango] \u9ED1\u540D\u5355\u8FC7\u6EE4: ${l}`),!1):!0}),c=this._processVarietyEpisodes(o);return _("info",`[Mango] \u5171\u83B7\u53D6 ${c.length} \u96C6`),c}catch(r){return _("error","[Mango] \u83B7\u53D6\u5206\u96C6\u51FA\u9519:",r.message),[]}}async _getMovieEpisode(e){try{_("info",`[Mango] \u83B7\u53D6\u7535\u5F71\u6B63\u7247: collection_id=${e}`);let r=`https://pcweb.api.mgtv.com/variety/showlist?allowedRC=1&collection_id=${e}&month=&page=1&_support=10000000`,n=await ge(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 _("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 _("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]),_("info",`[Mango] \u627E\u5230\u7535\u5F71\u6B63\u7247: ${i.t3||i.t1||"\u6B63\u7247"}`),i}catch(r){return _("error","[Mango] \u83B7\u53D6\u7535\u5F71\u6B63\u7247\u51FA\u9519:",r.message),null}}_processVarietyEpisodes(e){if(!e||e.length===0)return[];_("info",`[Mango] \u7EFC\u827A\u5904\u7406\u5F00\u59CB\uFF0C\u539F\u59CB\u5206\u96C6\u6570: ${e.length}`);let r=e.some(i=>{let a=`${i.t2||""} ${i.t1||""}`.trim();return/第\d+期/.test(a)});_("info",`[Mango] \u7EFC\u827A\u683C\u5F0F\u5206\u6790: \u6709\u671F\u6570\u683C\u5F0F=${r}`);let n=[],s=new Map;for(let i of e){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}`,p=a.substring(a.indexOf(f)+f.length);/^(åŠ æ›´|会员版|纯享版|特别版|独家版|Plus|\+|花絮|预告|彩蛋|抢先|精选|未播|回顾|特辑|幕后)/.test(p)?_("info",`[Mango] \u7EFC\u827A\u8FC7\u6EE4\u4E0A\u4E2D\u4E0B\u683C\u5F0F+\u540E\u7F00: ${a}`):(s.set(i,[parseInt(l),d]),n.push(i),_("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),_("info",`[Mango] \u7EFC\u827A\u4FDD\u7559\u6807\u51C6\u671F\u6570: ${a}`)}else _("info",`[Mango] \u7EFC\u827A\u8FC7\u6EE4\u975E\u6807\u51C6\u671F\u6570\u683C\u5F0F: ${a}`)}else{if(a.includes("\u5E7F\u544A")||a.includes("\u63A8\u5E7F")){_("info",`[Mango] \u8DF3\u8FC7\u5E7F\u544A\u5185\u5BB9: ${a}`);continue}n.push(i),_("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}),_("info",`[Mango] \u7EFC\u827A\u5904\u7406\u5B8C\u6210\uFF0C\u8FC7\u6EE4\u540E\u5206\u96C6\u6570: ${n.length}`),n}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return _("error","[Mango] sourceAnimes is not a valid array"),[];let o=e.filter(l=>yt(l.title,r,i)),c=i!==null?i:$t(r);if(c!==null){let l=o.filter(d=>{let f=Tt(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,_("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 p=await this._getMovieEpisode(l.mediaId);if(!p)return;let m=`https://www.mgtv.com/b/${l.mediaId}/${p.video_id}.html`,h=p.t3||p.t1||"\u6B63\u7247",A=[{name:"1",url:m,title:`\u3010imgo\u3011 ${h}`}],b={animeId:Yr(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:Pr(l.year),episodeCount:1,rating:0,isFavorited:!0,source:"imgo"};a.push(b),Lt({...b,links:A},s),O.animes.length>O.MAX_ANIMES&&Ft();return}let d=await this.getEpisodes(l.mediaId),f=[];for(let p=0;p0){let m={animeId:Yr(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:Pr(l.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"imgo"};a.push(m),Lt({...m,links:f},s),O.animes.length>O.MAX_ANIMES&&Ft()}}catch(d){_("error",`[Mango] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){_("info","[Mango] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u8292\u679CTV\u5F39\u5E55...",e);let r=await this.getEpisodeDanmuSegments(e);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;_("info",`[Mango] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let s=[];for(let a of n)s.push(ge(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 _("error","[Mango] \u89E3\u6790\u5F39\u5E55\u6570\u636E\u5931\u8D25:",a),[]}return ts(i),i}async getEpisodeDanmuSegments(e){_("info","[Mango] \u83B7\u53D6\u8292\u679CTV\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e);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=e.match(i),o;if(a)o=a[2].split("/").filter(Boolean);else return _("error","[Mango] Invalid URL"),new vt({type:"imgo",segmentList:[]});let c=o[o.length-2],u=o[o.length-1].split(".")[0];_("info",`[Mango] \u83B7\u53D6\u5F39\u5E55\u5206\u6BB5\u5217\u8868 - cid: ${c}, vid: ${u}`);let l;try{let m=`${r}?cid=${c}&vid=${u}`;l=await ge(m,{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(m){return m.response?.status===404?new vt({type:"imgo",segmentList:[]}):(_("error","[Mango] \u8BF7\u6C42\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",m),new vt({type:"imgo",segmentList:[]}))}let f=(typeof l.data=="string"?JSON.parse(l.data):l.data).data.info.time,p=!0;try{let m=`${n}?version=8.1.39&abroad=0&uuid=&os=10.15.7&platform=0&mac=&vid=${u}&pid=&cid=${c}&ticket=`,h=await ge(m,{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"}}),A=typeof h.data=="string"?JSON.parse(h.data):h.data;(!A.data||!A.data.cdn_list||!A.data.cdn_version)&&(_("warn","[Mango] \u65B0API\u7F3A\u5C11\u5FC5\u8981\u5B57\u6BB5\uFF0C\u8FD4\u56DE\u7A7A\u5206\u6BB5\u5217\u8868"),p=!1);let g=[];if(p){let b=Math.ceil(Cg(f)/60),y=A.data.cdn_list.split(",")[0],x=A.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})}};Pt();St();ar();Is();$n();hn();hs();no();var Og=class t extends wt{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(e){let r;try{_("info",`[Bilibili] \u6B63\u5728\u89E3\u6790 b23.tv \u77ED\u94FE\u63A5: ${e}`);let n=parseInt(O.vodRequestTimeout||"5000",10)||5e3,s=new AbortController;r=setTimeout(()=>s.abort(),n);let a=await(typeof fetch=="function"?fetch:(await Promise.resolve().then(()=>(_C(),wL))).default)(e,{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,e).toString():a.url;return c&&c!==e?(_("info",`[Bilibili] b23.tv \u77ED\u94FE\u63A5\u5DF2\u89E3\u6790\u4E3A: ${c}`),c):(_("error","[Bilibili] \u65E0\u6CD5\u89E3\u6790 b23.tv \u77ED\u94FE\u63A5"),e)}catch(n){return _("error","[Bilibili] \u89E3\u6790 b23.tv \u77ED\u94FE\u63A5\u5931\u8D25:",n),e}finally{r&&clearTimeout(r)}}async _getWbiMixinKey(){let e=Math.floor(Date.now()/1e3),r=t.WBI_MIXIN_KEY_CACHE;if(r.key&&e-r.timestamp(c+u)[d]).join("").substring(0,32);return r.key=l,r.timestamp=e,_("info","[Bilibili] \u6210\u529F\u83B7\u53D6\u65B0\u7684 WBI mixin key"),l}catch(n){return _("error","[Bilibili] \u83B7\u53D6 WBI \u5BC6\u94A5\u5931\u8D25:",n.message),"dba4a5925b345b4598b7452c75070bca"}}_getWbiSignedParams(e,r){let n={...e};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=Ls(o);return n.w_rid=c,n}async _searchByType(e,r,n){try{_("info",`[Bilibili] \u641C\u7D22\u7C7B\u578B '${r}'\uFF0C\u5173\u952E\u8BCD '${e}'`);let s={keyword:e,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 ge(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:O.bilibliCookie||""}}),u=typeof c.data=="string"?JSON.parse(c.data):c.data;if(u.code!==0||!u.data?.result)return _("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 p=this._extractMediaType(d.season_type_name),m=p==="\u7535\u5F71"?1:d.ep_size||0,h=null;try{d.pubdate?typeof d.pubdate=="number"?h=new Date(d.pubdate*1e3).getFullYear():typeof d.pubdate=="string"&&d.pubdate.length>=4&&(h=parseInt(d.pubdate.substring(0,4))):d.pubtime&&(h=new Date(d.pubtime*1e3).getFullYear())}catch{}let A=cf((d.title||"").replace(/<[^>]+>/g,"")).replace(/:/g,"\uFF1A").trim(),g=cf((d.org_title||"").replace(/<[^>]+>/g,"")).trim(),b={provider:"bilibili",mediaId:f,mdId:d.media_id?`md${d.media_id}`:null,title:A,org_title:g,type:p,year:h,imageUrl:d.cover||null,episodeCount:m};d.eps&&d.eps.length>0&&(b._eps=d.eps),l.push(b)}return _("info",`[Bilibili] \u7C7B\u578B '${r}' \u627E\u5230 ${l.length} \u4E2A\u7ED3\u679C`),l}catch(s){return _("error",`[Bilibili] \u641C\u7D22\u7C7B\u578B '${r}' \u5931\u8D25:`,s.message),[]}}_extractMediaType(e){let r=(e||"").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(e){let r=[];O.useBangumiData&&(r=await Au(e,["bilibili","bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw"]),_("info",`[Bilibili] Bangumi-Data \u672C\u5730\u547D\u4E2D ${r.length} \u6761\u6570\u636E\uFF08\u68C0\u7D22\u8BCD\uFF1A${e}\uFF09`));let n=r.filter(s=>["bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw"].includes(s.matchedSiteKey));try{_("info",`[Bilibili] \u5F00\u59CB\u641C\u7D22: ${e}`);let s=await this._getWbiMixinKey(),i=this._searchByType(e,"media_bangumi",s),a=this._searchByType(e,"media_ft",s),o=Promise.resolve([]);this._hasBilibiliProxy()&&(_("info","[Bilibili] \u68C0\u6D4B\u5230\u4EE3\u7406\u914D\u7F6E\uFF0C\u542F\u7528\u6E2F\u6FB3\u53F0\u5E76\u884C\u641C\u7D22"),o=this._searchOversea(e,n.length>0));let c=(await Promise.all([i,a,o])).flat(),u=[],l=new Set,d=new Set;for(let p of c){if(!p||!p.mediaId&&!p.season_id)continue;let m=r.find(A=>p.mdId&&p.mdId===`md${A.siteId}`)||r.find(A=>p.org_title&&A.title===p.org_title);if(m){let g=(m.titles.find(b=>b&&b.includes(e))||m.titles[1]||m.title)+(m.titleSuffix||"");p.title=g,p._displayTitle=g,p.aliases=[...m.titles],p.type=m.typeStr||p.type,p.isLocalPriority=!0,d.add(`md${m.siteId}`),_("info",`[Bilibili] \u7F51\u7EDC\u7ED3\u679C [${p.title}] \u6210\u529F\u5BF9\u9F50\u672C\u5730 Bangumi-Data \u6570\u636E`)}let h=p.mediaId||(p.season_id?`ss${p.season_id}`:null);h&&l.has(h)||(h&&l.add(h),u.push(p))}let f=r.filter(p=>!d.has(`md${p.siteId}`));if(f.length>0){let p=f.filter(h=>h.season_id),m=f.filter(h=>!h.season_id);if(p.length>0){_("info",`[Bilibili] \u4ECE\u672C\u5730 Bangumi-Data \u8865\u5145 ${p.length} \u6761\u7F3A\u6F0F\u8BB0\u5F55\u5E76\u8BF7\u6C42\u8BE6\u60C5....\uFF08\u5305\u542B season_id \uFF09`);for(let h of p){let g=(h.titles.find(x=>x&&x.includes(e))||h.titles[1]||h.title)+(h.titleSuffix||""),b={provider:"bilibili",mediaId:`ss${h.season_id}`,mdId:`md${h.siteId}`,title:g,org_title:h.title,aliases:[...h.titles],_displayTitle:g,type:h.typeStr,year:h.begin?parseInt(h.begin.substring(0,4)):null,imageUrl:"",episodeCount:0,isOversea:["bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw"].includes(h.matchedSiteKey),isLocalPriority:!0},y=b.mediaId;y&&!l.has(y)&&(l.add(y),u.unshift(b))}}if(m.length>0){_("info",`[Bilibili] \u4ECE\u672C\u5730 Bangumi-Data \u8865\u5145 ${m.length} \u6761\u7F3A\u6F0F\u8BB0\u5F55\u5E76\u8BF7\u6C42\u8BE6\u60C5...`);let h=m.map(async g=>{let b=await this._resolveMediaInfo(g.siteId),x=(g.titles.find(v=>v&&v.includes(e))||g.titles[1]||g.title)+(g.titleSuffix||"");return{provider:"bilibili",mediaId:b.seasonId||`md${g.siteId}`,mdId:`md${g.siteId}`,title:x,org_title:g.title,aliases:[...g.titles],_displayTitle:x,type:g.typeStr,year:g.begin?parseInt(g.begin.substring(0,4)):null,imageUrl:b.cover,episodeCount:0,isOversea:["bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw"].includes(g.matchedSiteKey),isLocalPriority:!0}}),A=await Promise.all(h);for(let g of A){let b=g.mediaId;b&&l.has(b)||b&&(l.add(b),u.unshift(g))}}}return _("info",`[Bilibili] \u641C\u7D22\u5B8C\u6210\uFF0C\u627E\u5230 ${u.length} \u4E2A\u6709\u6548\u7ED3\u679C`),u}catch(s){return _("error","[Bilibili] \u641C\u7D22\u51FA\u9519:",s.message),[]}}async _resolveMediaInfo(e){try{let r=await ge(`https://api.bilibili.com/pgc/review/user?media_id=${e}`),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){_("error",`[Bilibili] \u83B7\u53D6\u5A92\u4F53\u4FE1\u606F\u5931\u8D25 (md${e}):`,r.message)}return{seasonId:null,cover:""}}async _getPgcEpisodes(e){let r=[],n=[`https://api.bilibili.com/pgc/view/web/season?season_id=${e}`,`https://api.bilibili.com/pgc/web/season/section?season_id=${e}`];for(let i of n)try{let a=await ge(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:O.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 _("error",`[Bilibili] \u83B7\u53D6\u756A\u5267\u5206\u96C6\u5931\u8D25 (season_id=${e}): \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),_("info",`[Bilibili] \u83B7\u53D6\u5230 ${s.length} \u4E2A\u756A\u5267\u5206\u96C6`),s}async _getUgcEpisodes(e){try{let r=`https://api.bilibili.com/x/web-interface/view?bvid=${e}`,n=await ge(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:O.bilibliCookie||""}}),s=typeof n.data=="string"?JSON.parse(n.data):n.data;if(s.code!==0||!s.data)return _("error",`[Bilibili] \u83B7\u53D6\u89C6\u9891\u5206\u96C6\u5931\u8D25 (bvid=${e}):`,s.message),[];let i=s.data.pages||[];if(i.length===0)return _("info",`[Bilibili] \u89C6\u9891 bvid=${e} \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/${e}?p=${o.page}`}));return _("info",`[Bilibili] \u83B7\u53D6\u5230 ${a.length} \u4E2A\u89C6\u9891\u5206\u96C6`),a}catch(r){return _("error",`[Bilibili] \u83B7\u53D6\u89C6\u9891\u5206\u96C6\u51FA\u9519 (bvid=${e}):`,r.message),[]}}async getEpisodes(e){if(e.startsWith("md")){let r=e.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(e.startsWith("ss")){let r=e.substring(2);return await this._getPgcEpisodes(r)}else if(e.startsWith("bv")){let r=e.substring(2);return await this._getUgcEpisodes(r)}return _("error",`[Bilibili] \u4E0D\u652F\u6301\u7684 ID \u683C\u5F0F: ${e}`),[]}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return _("error","[Bilibili] sourceAnimes is not a valid array"),[];e.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=e.length>0?e[0]._tmdbCnAlias:null;eE(e,o);let c=e.filter(d=>d.isOversea||yt(d.title,r,i)||d.aliases&&d.aliases.some(f=>yt(f,r,i))),u=i!==null?i:$t(r);if(u!==null){let d=c.filter(f=>{let p=f._displayTitle||f.title,m=Tt(p).season;return m===u||u===1&&m===null});d.length>0&&(c=d,_("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=[],p=d.checkMore?.content?.includes("\u67E5\u770B\u5168\u90E8");if(d._eps&&d._eps.length>0&&!p){f=d._eps.map((b,y)=>{let x;d.isOversea&&b.position?x=b.position.toString():x=b.index_title||b.index||(y+1).toString();let v=b.title||b.index_title||x,C=b.long_title||"",R=/^\d+(\.\d+)?$/.test(v)?`\u7B2C${v}\u8BDD`:v;C&&C!==v&&(R+=` ${C}`);let w=b.id||b.param,N=`https://www.bilibili.com/bangumi/play/ep${w}?season_id=${d.mediaId.substring(2)}`;return d.isOversea&&(N+="&area=hkmt"),{name:x,url:N,title:`\u3010bilibili1\u3011 ${R.trim()}`,_id:parseInt(w,10)||0}});let g=f.map(b=>lf(b.name));g.every(b=>b!==null)?(f.forEach((b,y)=>b._sortKey=g[y]),f.sort((b,y)=>b._sortKey-y._sortKey)):f.sort((b,y)=>b._id-y._id),_("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){_("info",`[Bilibili] ${d.title} \u65E0\u5206\u96C6\uFF0C\u8DF3\u8FC7`);return}g._cover&&(d.imageUrl=g._cover),f=g.map((b,y)=>{let x=b.link+`?season_id=${d.mediaId.substring(2)}`;return d.isOversea&&(x+="&area=hkmt"),{name:`${y+1}`,url:x,title:`\u3010bilibili1\u3011 ${b.title}`,_id:parseInt(b.id,10)||0}}),f.sort((b,y)=>b._id-y._id)}if(f.length===0)return;let m=Yr(d.mediaId),h=d._displayTitle||Gt(d.title),A={animeId:m,bangumiId:d.mediaId,animeTitle:`${h}(${d.year||"N/A"})\u3010${d.type}\u3011from bilibili`,type:d.type,typeDescription:d.type,imageUrl:d.imageUrl,startDate:Pr(d.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"bilibili",aliases:d.aliases};a.push(A),Lt({...A,links:f},s),O.animes.length>O.MAX_ANIMES&&Ft()}catch(f){_("error",`[Bilibili] \u5904\u7406 ${d.title} \u5931\u8D25:`,f.message)}});return await Promise.all(l),this.sortAndPushAnimesByYear(a,n),a}async _extractVideoInfo(e){_("info","[Bilibili] \u63D0\u53D6B\u7AD9\u89C6\u9891\u4FE1\u606F...",e);let r="https://api.bilibili.com/x/web-interface/view",n="https://api.bilibili.com/pgc/view/web/season",s=/^(https?:\/\/[^\/]+)(\/[^?#]*)/,i=e.match(s),a;if(i)a=i[2].split("/").filter(Boolean),a.unshift(""),_("info","[Bilibili] ",a);else return _("error","[Bilibili] Invalid URL"),null;let o,c,u,l;if(e.includes("video/"))try{let d=e.split("?")[1],f=1;if(d){let A=d.split("&");for(let g of A){let[b,y]=g.split("=");b==="p"&&(f=y||1)}}_("info",`[Bilibili] p: ${f}`);let p;e.includes("BV")?p=`${r}?bvid=${a[2]}`:(c=a[2].substring(2),p=`${r}?aid=${a[2].substring(2)}`);let m=await ge(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"}}),h=typeof m.data=="string"?JSON.parse(m.data):m.data;if(h.code!==0)return _("error","[Bilibili] \u83B7\u53D6\u666E\u901A\u6295\u7A3F\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",h.message),null;u=h.data.duration,o=h.data.pages[f-1].cid}catch(d){return _("error","[Bilibili] \u8BF7\u6C42\u666E\u901A\u6295\u7A3F\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",d),null}else if(e.includes("bangumi/")&&e.includes("ep"))try{let d=a.slice(-1)[0].slice(2),f=e.split("?")[1]||"",p=null,m=!1;f.split("&").forEach(A=>{let[g,b]=A.split("=");g==="season_id"&&(p=b),g==="area"&&b==="hkmt"&&(m=!0)});let h=!1;if(!m){let A=await ge(`${n}?ep_id=${d}`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0"}}),g=typeof A.data=="string"?JSON.parse(A.data):A.data;if(g.code===0&&g.result){let b=g.result.episodes.find(y=>y.id==d);b&&(o=b.cid,u=b.duration/1e3,l=b.share_copy,h=!0)}}if((!h||m)&&p&&this._hasBilibiliProxy()){try{let A=this._makeProxyUrl(`https://api.bilibili.com/pgc/view/web/season?season_id=${p}`),g=await ge(A,{headers:{Cookie:O.bilibliCookie||"","User-Agent":"Mozilla/5.0"}}),b=typeof g.data=="string"?JSON.parse(g.data):g.data;if(b.code===0&&b.result){let y=(b.result.episodes||b.result.main_section?.episodes||[]).find(x=>x.id==d);y&&(o=y.cid,c=y.aid,u=y.duration/1e3,l=y.long_title,h=!0)}}catch{}if(!h)try{let A=await ge(`https://api.bilibili.com/pgc/web/season/section?season_id=${p}`,{headers:{"User-Agent":"Mozilla/5.0",Cookie:O.bilibliCookie||""}}),g=typeof A.data=="string"?JSON.parse(A.data):A.data;if(g.code===0&&g.result?.main_section?.episodes){let b=g.result.main_section.episodes.find(y=>y.id==d);b&&(o=b.cid,c=b.aid,u=b.duration?b.duration/1e3:0,l=b.long_title,h=!0)}}catch{}}if(!o)return _("error","[Bilibili] \u672A\u627E\u5230\u5339\u914D\u7684\u756A\u5267\u96C6\u4FE1\u606F"),null;!u&&u!==0&&(u=0)}catch(d){return _("error","[Bilibili] \u8BF7\u6C42\u756A\u5267\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",d),null}else if(e.includes("bangumi/")&&e.includes("ss"))try{let d=a.slice(-1)[0].slice(2).split("?")[0],f=`${n}?season_id=${d}`;_("info",`[Bilibili] \u83B7\u53D6\u756A\u5267\u4FE1\u606F: season_id=${d}`);let p=await ge(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 p.data=="string"?JSON.parse(p.data):p.data;if(m.code!==0)return _("error","[Bilibili] \u83B7\u53D6\u756A\u5267\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",m.message),null;if(!m.result.episodes||m.result.episodes.length===0)return _("error","[Bilibili] \u756A\u5267\u6CA1\u6709\u53EF\u7528\u7684\u96C6\u6570"),null;let h=m.result.episodes[0];o=h.cid,u=h.duration/1e3,l=h.share_copy,_("info",`[Bilibili] \u4F7F\u7528\u7B2C\u4E00\u96C6: ${l}, cid=${o}`)}catch(d){return _("error","[Bilibili] \u8BF7\u6C42\u756A\u5267\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",d),null}else return _("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 _("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(e){_("info","[Bilibili] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42B\u7AD9\u5F39\u5E55...",e);let r=await this.getEpisodeDanmuSegments(e);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;_("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):(_("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(e){if(_("info","[Bilibili] \u83B7\u53D6B\u7AD9\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e),typeof e=="string"&&e.includes("/combine?")){let c=[],u=0,l=0,d=e.startsWith("http")?e:`https://www.bilibili.com${e}`,f=new URL(d);for(let[p,m]of f.searchParams.entries()){if(!p.startsWith("cid"))continue;let h=p.substring(3),[A,g]=m.split("-"),b=parseFloat(A)||0,y=parseFloat(g)||0,x=y-b;if(x<=0)continue;l+=x;let v=Math.ceil(y/360);for(let C=0;C0?Math.ceil(i/360):36;_("info",`[Bilibili] maxLen: ${a}`);let o=[];for(let c=0;c0?Math.min((c+1)*360,i):(c+1)*360,url:u})}return new vt({type:"bilibili1",duration:i>0?i:0,segmentList:o})}async getEpisodeSegmentDanmu(e){try{let r=new URL(e.url),n=e.url.split("#")[0],s=await ge(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:O.bilibliCookie},base64Data:!0,retries:1}),i=[];if(s&&s.data&&(i=O8e(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 p=f-o+u;if(d.p&&typeof d.p=="string"){let m=d.p.split(",");m[0]=p.toFixed(5),d.p=m.join(",")}d.t!==void 0&&(d.t=p),d.progress!==void 0&&(d.progress=Math.round(p*1e3)),l.push(d)}}return l}return i}catch(r){throw r}}formatComments(e){return e.map(r=>(O.danmuSimplifiedTraditional==="simplified"&&r.m&&(r.m=Gt(r.m)),r.like=r.like_num,r))}_makeProxyUrl(e){return O.makeProxyUrl(e)}_hasBilibiliProxy(){return(O.proxyUrl||"").split(",").some(e=>{let r=e.trim();return r.startsWith("bilibili@")||r.startsWith("@")})}_javaUrlEncode(e){return encodeURIComponent(e).replace(/!/g,"%21").replace(/'/g,"%27").replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/\*/g,"%2A").replace(/%20/g,"+")}async _searchOverseaRequest(e,r,n,s="Original",i=null){let o=(O.bilibliCookie||"").match(/([0-9a-fA-F]{32})/);if(!((O.proxyUrl||"").includes("bilibili@")||(O.proxyUrl||"").includes("@")))return[];if(o){_("info",`[Bilibili-Proxy][${s}] \u68C0\u6D4B\u5230 Access Key\uFF0C\u542F\u7528 APP \u7AEF\u63A5\u53E3\u6A21\u5F0F (Type: ${r})...`);try{let u={keyword:e,type:r,area:"tw",mobi_app:"android",platform:"android",build:"8140200",ts:Math.floor(Date.now()/1e3),appkey:t.APP_KEY,access_key:o[1],disable_rcmd:1},l=Object.keys(u).sort().map(h=>`${h}=${this._javaUrlEncode(String(u[h]))}`).join("&"),d=Ls(l+t.APP_SEC),f=`https://app.bilibili.com/x/v2/search/type?${l}&sign=${d}`,p=O.makeProxyUrl(f),m=await this._fetchAppSearchWithStream(p,{"User-Agent":"Mozilla/5.0 Android","X-From-Biliroaming":"1.0.0"},s,i);if(m&&m.code===0)return(m.data?.items||m.data?.result||m.data||[]).filter(h=>h.goto!=="recommend_tips"&&h.area!=="\u6F2B\u6E38"&&h.badge!=="\u516C\u544A").map(h=>({provider:"bilibili",mediaId:h.season_id?`ss${h.season_id}`:h.uri.match(/season\/(\d+)/)?.[1]?`ss${h.uri.match(/season\/(\d+)/)[1]}`:"",title:cf((h.title||"").replace(/<[^>]+>/g,"")).trim(),org_title:cf((h.org_title||"").replace(/<[^>]+>/g,"")).trim(),type:this._extractMediaType(h.season_type_name),year:h.ptime?new Date(h.ptime*1e3).getFullYear():null,imageUrl:h.cover||h.pic||"",episodeCount:0,_eps:h.episodes||h.episodes_new,checkMore:h.check_more,isOversea:!0})).filter(h=>h.mediaId);m&&m.code!==0&&_("warn",`[Bilibili-Proxy] App \u63A5\u53E3\u8FD4\u56DE\u9519\u8BEF Code ${m.code}: ${m.message}`)}catch(u){if(u.name==="AbortError")throw u;_("error",`[Bilibili-Proxy] App \u63A5\u53E3\u8BF7\u6C42\u5F02\u5E38: ${u.message}`)}_("info","[Bilibili-Proxy] App \u63A5\u53E3\u8BF7\u6C42\u5931\u8D25\uFF0C\u81EA\u52A8\u964D\u7EA7\u81F3 Web \u63A5\u53E3...")}else _("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:e,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(h=>`${encodeURIComponent(h)}=${encodeURIComponent(u[h])}`).join("&")}`,f=O.makeProxyUrl(d),p=await ge(f,{headers:{"User-Agent":"Mozilla/5.0",Cookie:O.bilibliCookie||"","X-From-Biliroaming":"1.0.0"},signal:i}),m=typeof p.data=="string"?JSON.parse(p.data):p.data;if(m.code!==0)return _("warn",`[Bilibili-Proxy] Web \u63A5\u53E3\u8FD4\u56DE\u9519\u8BEF Code ${m.code}: ${m.message}`),[];if(m.data?.result)return m.data.result.filter(h=>h.url?.includes("bilibili.com")&&!h.areas?.includes("\u6F2B\u6E38")).map(h=>({provider:"bilibili",mediaId:h.season_id?`ss${h.season_id}`:"",mdId:h.media_id?`md${h.media_id}`:null,title:cf((h.title||"").replace(/<[^>]+>/g,"")).trim(),org_title:cf((h.org_title||"").replace(/<[^>]+>/g,"")).trim(),type:this._extractMediaType(h.season_type_name),year:h.pubtime?new Date(h.pubtime*1e3).getFullYear():null,imageUrl:h.cover||null,episodeCount:h.ep_size||0,_eps:h.eps,isOversea:!0})).filter(h=>h.mediaId)}catch(u){if(u.name==="AbortError")throw u;_("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(e,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(e,o.appType,o.webType,"Original")))).then(o=>{let c=o.flat();return c.length&&n.abort(),c.forEach(u=>u._originalQuery=e),c}).catch(()=>[]),a=O.tmdbApiKey?new Promise(o=>setTimeout(o,100)).then(async()=>{let o=await Zb(e,n.signal,"Bilibili");if(o&&o.title&&o.title!==e){let{title:c,cnAlias:u}=o,l=s.map(async(f,p)=>(p>0&&await new Promise(m=>setTimeout(m,p*300)),this._searchOverseaRequest(c,f.appType,f.webType,"TMDB",n.signal))),d=(await Promise.all(l)).flat();return d.forEach(f=>{f._originalQuery=e,f._searchUsedTitle=c,f._tmdbCnAlias=u}),d}return[]}).catch(()=>[]):Promise.resolve([]);return(await Promise.all([i,a])).flat()}async _fetchAppSearchWithStream(e,r,n,s){if(typeof Fz!="function")return null;let i=!1,a=!1,o=await Fz(e,{headers:r,sniffLimit:8192,signal:s},c=>i?!0:c.includes('"goto":"recommend_tips"')||c.includes("\u6682\u65E0\u641C\u7D22\u7ED3\u679C")?(_("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}};Pt();St();ar();hn();Is();$n();hs();var Pg=class extends wt{convertYoukuUrl(e){let r=e.match(/vid=([^&]+)/);return!r||!r[1]?null:`https://v.youku.com/v_show/id_${r[1]}.html`}filterYoukuSearchItem(e,r){let n=e.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(e){try{_("info",`[Youku] \u5F00\u59CB\u641C\u7D22: ${e}`);let r=encodeURIComponent(e),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 ge(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 _("info","[Youku] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let a=typeof i.data=="string"?JSON.parse(i.data):i.data;if(!a.pageComponentList)return _("info","[Youku] \u641C\u7D22\u65E0\u7ED3\u679C"),[];let o=[];for(let c of a.pageComponentList){let u=this.filterYoukuSearchItem(c,e);u&&o.push(u)}return _("info",`[Youku] \u641C\u7D22\u627E\u5230 ${o.length} \u4E2A\u6709\u6548\u7ED3\u679C`),o}catch(r){return _("error","[Youku] \u641C\u7D22\u51FA\u9519:",r.message),[]}}async getEpisodes(e){try{_("info",`[Youku] \u83B7\u53D6\u5206\u96C6\u5217\u8868: show_id=${e}`);let r=100,n=await this._getEpisodesPage(e,1,r);if(!n||!n.videos||n.videos.length===0)return _("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);_("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(e,u,r));let c=await Promise.allSettled(o);for(let u=0;uyt(l.title,r,i)),c=i!==null?i:$t(r);if(c!==null){let l=o.filter(d=>{let f=Tt(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,_("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),p=this._processAndFormatEpisodes(d,f),m=[];for(let h of p){let A=h.link||`https://v.youku.com/v_show/id_${h.vid}.html`;m.push({name:h.episodeIndex.toString(),url:A,title:`\u3010youku\u3011 ${h.title}`})}if(m.length>0){let A={animeId:Yr(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:Pr(l.year),episodeCount:m.length,rating:0,isFavorited:!0,source:"youku"};a.push(A),Lt({...A,links:m},s),O.animes.length>O.MAX_ANIMES&&Ft()}}catch(d){_("error",`[Youku] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}_processAndFormatEpisodes(e,r="variety"){return[...e].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(e,r,n){let s=e.displayName||e.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 ${e.published?.split(" ")[0]??""} ${s}`:`\u7B2C${r}\u671F ${e.published?.split(" ")[0]??""} ${s}`}return/^第\d+集/.test(s)?s:`\u7B2C${r}\u96C6 ${s}`}_extractMediaType(e,r){let n=(e||"").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(e){if(_("info","[Youku] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u4F18\u9177\u5F39\u5E55...",e),!e)return[];let n=(await this.getEpisodeDanmuSegments(e)).segmentList,s=[],i=O.youkuConcurrency,a=[...n];for(let o=0;o{let l=await Vr(u.url,Ai({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){_("error","[Youku] \u4F18\u9177\u5206\u6BB5\u6279\u91CF\u8BF7\u6C42\u5931\u8D25:",u.message)}}return ts(s),s}async getEpisodeDanmuSegments(e){if(_("info","[Youku] \u83B7\u53D6\u4F18\u9177\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e),!e)return new vt({type:"youku",segmentList:[]});e.includes("youku.com/video?vid")&&(e=this.convertYoukuUrl(e));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=e.match(s),a;if(i)a=i[2].split("/").filter(Boolean),a.unshift(""),_("info","[Youku]",a);else return _("error","[Youku] Invalid URL"),[];let o=a[a.length-1].split(".")[0].slice(3);_("info",`[Youku] video_id: ${o}`);let c;try{let x=`${r}?client_id=53e6cc67237fc59a&video_id=${o}&package=com.huawei.hwvplayer.youku&ext=show`;c=await ge(x,{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(x){return _("error","[Youku] \u8BF7\u6C42\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",x),[]}let u=typeof c.data=="string"?JSON.parse(c.data):c.data,l=u.title,d=u.duration;_("info",`[Youku] \u6807\u9898: ${l}, \u65F6\u957F: ${d}`);let f,p,m;try{let x="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",C=await ge(x,{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});_("info",`[Youku] cnaRes: ${JSON.stringify(C)}`),_("info",`[Youku] cnaRes.headers: ${JSON.stringify(C.headers)}`);let R=C.headers.etag||C.headers.Etag;_("info",`[Youku] etag: ${R}`),f=R.replace(/^"|"$/g,""),_("info",`[Youku] cna: ${f}`);let w;for(;!w;)w=await ge(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});_("info",`[Youku] tkEncRes: ${JSON.stringify(w)}`),_("info",`[Youku] tkEncRes.headers: ${JSON.stringify(w.headers)}`);let N=w.headers["set-cookie"]||w.headers["Set-Cookie"];_("info",`[Youku] tkEncSetCookie: ${N}`);let P=N.match(/_m_h5_tk_enc=([^;]+)/);p=P?P[1]:null;let L=N.match(/_m_h5_tk=([^;]+)/);m=L?L[1]:null,_("info",`[Youku] _m_h5_tk_enc: ${p}`),_("info",`[Youku] _m_h5_tk: ${m}`)}catch(x){return _("error","[Youku] \u83B7\u53D6 cna \u6216 tk_enc \u5931\u8D25:",x),[]}let h=60,A=Math.floor(d/h)+1,g=[],b=async x=>{let v={ctime:Date.now(),ctype:10004,cver:"v1.0",guid:f,mat:x,mcount:1,pid:0,sver:"3.1.0",type:1,vid:o},C=JSON.stringify(v);function R(Z){let W="";for(let F=0;F255?W+=encodeURIComponent(Z[F]):W+=Z[F];return W}function w(Z){let W="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",F="",V=0,j=0;for(let J=0;J=6;)F+=W[V>>j-6&63],j-=6;for(j>0&&(F+=W[V<<6-j&63]);F.length%4!==0;)F+="=";return F}let N=w(R(C));v.msg=N,v.sign=Ls(`${N}MkmC9SoIw6xCkSKHhJ7b5D2r51kBiREr`).toString().toLowerCase();let P=JSON.stringify(v),L=Date.now(),M={jsv:"2.5.6",appKey:"24679788",t:L,sign:Ls([m.slice(0,32),L,"24679788",P].join("&")).toString().toLowerCase(),api:"mopen.youku.danmu.list",v:"1.0",type:"originaljson",dataType:"jsonp",timeout:"20000",jsonpIncPrefix:"utility"},k=Ai(M),B=`${n}?${k}`;return _("info",`[Youku] piece_url: ${B}`),{type:"youku",segment_start:x*h,segment_end:Math.min((x+1)*h,d),url:B,data:P,_m_h5_tk:m,_m_h5_tk_enc:p}},y=Array.from({length:A},(x,v)=>v);for(let x=0;x{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})}};hn();var vsn=new wg,Csn=new Rg,Isn=new Ng,Tsn=new Og,wsn=new Pg,Rsn=new Tg,a4=`LogVar Danmu API/${O.version}`,ZT=class extends wt{async search(e,r=!1){if(O.useBangumiData&&!r){let n=await Au(e,["anidb"]);if(n.length>0)return _("info",`[Dandan] Bangumi-Data \u672C\u5730\u547D\u4E2D ${n.length} \u6761\u6570\u636E\uFF08\u68C0\u7D22\u8BCD\uFF1A${e}\uFF09`),n.map(s=>{let a=(s.titles.find(o=>o&&o.includes(e))||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{_("info",`[Dandan] \u539F\u59CB\u641C\u7D22\u8BCD: ${e}`);let n=new AbortController,s=(async()=>{try{let c=await ge(`https://api.danmaku.weeblify.app/ddp/v1?path=/v2/search/anime?keyword=${e}`,{headers:{"Content-Type":"application/json","User-Agent":a4},retries:1});if(!c||!c.data)return _("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 _("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 _("info",`[Dandan] dandanSearchresp (original): ${JSON.stringify(u)}`),_("info",`[Dandan] \u8FD4\u56DE ${u.length} \u6761\u7ED3\u679C (source: original)`),{success:!0,data:u,source:"original"}}catch(c){return _("error","[Dandan] getDandanAnimes error:",{message:c.message,name:c.name,stack:c.stack}),{success:!1,source:"original"}}})(),i=(async()=>{try{await new Promise(p=>setTimeout(p,100));let c=await Zb(e,n.signal,"Dandan");if(!c||!c.title)return _("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;_("info",`[Dandan] \u4F7F\u7528\u65E5\u8BED\u539F\u540D\u901A\u8FC7 episodes \u63A5\u53E3\u8FDB\u884C\u641C\u7D22: ${u}`);let d=await ge(`https://api.danmaku.weeblify.app/ddp/v1?path=/v2/search/episodes?anime=${encodeURIComponent(u)}`,{headers:{"Content-Type":"application/json","User-Agent":a4},signal:n.signal,retries:1});if(!d||!d.data)return _("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 _("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 _("info",`[Dandan] dandanSearchresp (tmdb): ${JSON.stringify(f)}`),_("info",`[Dandan] \u8FD4\u56DE ${f.length} \u6761\u7ED3\u679C (source: tmdb)`),{success:!0,data:f,source:"tmdb"}}catch(c){if(c.name==="AbortError")return _("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(_("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: ${e})`),!r){let c=e.replace(/(?:第\s*[0-9一二三四五六七八九十百千万]+\s*[季期部])|(?:S(?:eason)?\s*\d+)|(?:Part\s*\d+)/gi,"").trim();if(c&&c!==e)return _("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 _("error","[Dandan] getDandanAnimes error:",{message:n.message,name:n.name,stack:n.stack}),[]}}async getEpisodes(e){try{let r=await ge(`https://api.danmaku.weeblify.app/ddp/v1?path=/v2/bangumi/${e}`,{headers:{"Content-Type":"application/json","User-Agent":a4},retries:1});if(!r||!r.data)return _("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 _("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 _("info",`[Dandan] getDandanEposides: ${JSON.stringify(r.data.bangumi.episodes)}`),{episodes:s,titles:i,relateds:a,type:o,typeDescription:c,imageUrl:d}}catch(r){return _("error","[Dandan] getDandanEposides error:",{message:r.message,name:r.name,stack:r.stack}),{episodes:[],titles:[],relateds:[],type:null,typeDescription:null,imageUrl:null}}}calculateSimilarity(e,r){if(!e||!r)return 0;let n=new Set(e.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(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return _("error","[Dandan] sourceAnimes is not a valid array"),[];e.forEach(m=>{m.title=m.animeTitle});let o=e.length>0?e[0]._tmdbCnAlias:null;eE(e,o);let c=e.length,u=new Set,l=[],d=i!==null?i:$t(r),f=e,p=!1;if(d!==null){let m=e.filter(h=>{let A=h._displayTitle||h.animeTitle,g=Tt(A).season;return g===d||d===1&&g===null});m.length>0&&(f=m,p=!0,_("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 m of f)u.add(m.animeId),l.push({...m,isRelated:!1});for(;l.length>0;){let m=l.splice(0,l.length);await Promise.all(m.map(async h=>{try{let A=await this.getEpisodes(h.animeId),g=A.episodes,b=A.titles||[],y=this.calculateSimilarity(r,h.animeTitle),x=!p;if(y>=.1&&A.relateds&&Array.isArray(A.relateds)&&x)for(let w of A.relateds){let N=Tt(w.animeTitle).season!==null;!u.has(w.animeId)&&(N||c>=25)&&(u.add(w.animeId),l.push({animeId:w.animeId,animeTitle:w.animeTitle,imageUrl:w.imageUrl,rating:w.rating||0,isRelated:!0}))}let v=[h.animeTitle,...b,...h.aliases||[]],C=!1;if(h.isRelated||h.isTmdbSource)if(d!==null){let w=null;for(let N of v){if(!N)continue;let P=$t(N);if(P!==null){w=P;break}}d>1?C=(w||1)===d:d===1&&(C=w===null||w===1)}else C=!0;else C=v.some(w=>w&&yt(w,r,d));if(!C)return;let R=[];for(let w of g){let N=w.episodeTitle&&w.episodeTitle.trim()!==""?`${w.episodeTitle}`:`\u7B2C${w.episodeNumber}\u96C6`;R.push({name:N,url:w.episodeId.toString(),title:`\u3010dandan\u3011 ${N}`})}if(R.length>0){let w=h._displayTitle||h.animeTitle,N=[...new Set([...b,...h.aliases||[]])];h.animeTitle&&h.animeTitle!==w&&!N.includes(h.animeTitle)&&N.push(h.animeTitle);let P=A.type||h.type||"tvseries",L=A.typeDescription||h.typeDescription||"TV\u52A8\u753B",M=h.startDate||(g.length>0?g[0].airDate:null),k=M?new Date(M).getFullYear():"\u672A\u77E5",B={animeId:h.animeId,bangumiId:String(h.animeId),animeTitle:`${w}(${k})\u3010${L}\u3011from dandan`,aliases:N,type:P,typeDescription:L,imageUrl:A.imageUrl||h.imageUrl,startDate:M,episodeCount:R.length,rating:h.rating||0,isFavorited:!0,source:"dandan"};a.push(B),Lt({...B,links:R},s),O.animes.length>O.MAX_ANIMES&&Ft()}}catch(A){_("error",`[Dandan] Error processing anime: ${A.message}`)}}))}return this.sortAndPushAnimesByYear(a,n),a}async getEpisodeDanmu(e,r=[]){let n=[],s={};try{let a=await ge(`https://api.danmaku.weeblify.app/ddp/v1?path=%2Fv2%2Fcomment%2F${e}%3Ffrom%3D0%26withRelated%3Dtrue%26chConvert%3D0`,{headers:{"Content-Type":"application/json","User-Agent":a4},retries:1}).catch(o=>(_("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){_("error","[Dandan] getEpisodeDanmu error:",{message:i.message,name:i.name,stack:i.stack})}return n}async getEpisodeDanmuSegments(e){return _("info","[Dandan] \u83B7\u53D6\u5F39\u5F39play\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e),new vt({type:"dandan",segmentList:[{type:"dandan",segment_start:0,segment_end:3e4,url:e}]})}async getEpisodeSegmentDanmu(e){return this.getEpisodeDanmu(e.url)}formatComments(e){return e.map(r=>r.isRealTimePulled?O.danmuSimplifiedTraditional==="simplified"&&r.m?{...r,m:Gt(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:O.danmuSimplifiedTraditional==="simplified"?Gt(r.m):r.m})}};Pt();St();ar();$n();no();hs();var ew=class extends wt{async search(e){try{let r=await ge(`${O.customSourceApiUrl}/api/v2/search/anime?keyword=${e}`,{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?(_("info","[Custom] customSourceSearchresp: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),[]):r.data.animes?(_("info",`[Custom] \u641C\u7D22\u627E\u5230 ${r.data.animes.length} \u4E2A\u6709\u6548\u7ED3\u679C`),r.data.animes):(_("info","[Custom] customSourceSearchresp: seriesData \u6216 seriesList \u4E0D\u5B58\u5728"),[])}catch(r){return _("error","[Custom] getCustomSourceAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getEpisodes(e){try{let r=await ge(`${O.customSourceApiUrl}/api/v2/bangumi/${e}`,{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?(_("info","[Custom] getCustomSourceEposides: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),[]):!r.data.bangumi||!r.data.bangumi.episodes?(_("info",`[Custom] getCustomSourceEposides: episodes \u4E0D\u5B58\u5728. Response: ${JSON.stringify(r.data)}`),[]):(_("info",`[Custom] getCustomSourceEposides: ${JSON.stringify(r.data.bangumi.episodes)}`),r.data.bangumi.episodes)}catch(r){return _("error","[Custom] getCustomSourceEposides error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async handleAnimes(e,r,n,s=null){let i=[];if(!e||!Array.isArray(e))return _("error","[Custom] sourceAnimes is not a valid array"),[];let a=await Promise.all(e.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),Lt({...l,links:u},s),O.animes.length>O.MAX_ANIMES&&Ft()}}catch(c){_("error",`[Custom] Error processing anime: ${c.message}`)}}));return this.sortAndPushAnimesByYear(i,n),a}async getEpisodeDanmu(e){let r=[];try{let n=await ge(`${O.customSourceApiUrl}/api/v2/comment/${e}`,{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 _("error","[Custom] fetchCustomSourceEpisodeDanmu error:",{message:n.message,name:n.name,stack:n.stack}),r}}async getEpisodeDanmuSegments(e){return _("info","[Custom] \u83B7\u53D6Custom Source\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e),new vt({type:"custom",segmentList:[{type:"custom",segment_start:0,segment_end:3e4,url:e}]})}async getEpisodeSegmentDanmu(e){return this.getEpisodeDanmu(e.url)}formatComments(e){return e.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:O.danmuSimplifiedTraditional==="simplified"?Gt(r.m):r.m}))}};Pt();St();ar();Is();$n();Is();var ymr=` +${a}?${o}`;return BUe(c,u)}buildSignedHeaders({method:e,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=RUe(r),c=wC(n),u=Date.now(),d=this.generateSignature(e,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(e,r,n){try{let s=await Ae(e,{headers:r,timeout:5e3,validStatusCodes:[404]});if(s.status===404)return s.data&&s.data.error==="Document not found"?[]:(E("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 E("info",`[Renren] ${n} \u7AEF\u5F39\u5E55\u62C9\u53D6\u5F02\u5E38: ${s.message}`),null}}async renrenHttpGet(e,{params:r={},headers:n={},validStatusCodes:s=[]}={}){let i=Gb(e,r);return await Ae(i,{headers:n,timeout:5e3,validStatusCodes:s})}async renrenRequest(e,r,n={}){let s=this.generateDeviceId(),i=this.buildSignedHeaders({method:e,url:r,params:n,deviceId:s});return await Ae(r+"?"+wC(n),{headers:i,timeout:5e3})}async searchAppContent(e,r=30){try{let n=Date.now(),s="/qwtv/search",i={searchWord:e,num:r,searchNext:"",well:"match"},a=kC(s,n,i,this.API_CONFIG.TV_SECRET_KEY),o=Object.entries(i).map(([f,p])=>`${f}=${encodeURIComponent(p==null?"":String(p))}`).join("&"),c=this.generateTvHeaders(n,a),u=`https://${this.API_CONFIG.TV_HOST}${s}?${o}`,l=await Ae(u,{headers:c,timeout:5e3});return!l.data||l.data.code!=="0000"?(E("info",`[Renren] TV\u641C\u7D22\u63A5\u53E3\u5F02\u5E38: code=${l?.data?.code}, msg=${l?.data?.msg}`),null):(l.data.data||[]).map(f=>{let p=[];if(f.highlights&&(f.highlights.alias&&(p=f.highlights.alias.split(",").map(m=>m.trim().replace(/<[^>]+>/g,"")).filter(Boolean)),f.highlights.original_name)){let m=f.highlights.original_name.replace(/<[^>]+>/g,"").trim();m&&!p.includes(m)&&p.push(m)}return{provider:"renren",mediaId:String(f.id),title:String(f.title||"").replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A"),aliases:p,type:f.classify||"Renren",season:null,year:f.year,imageUrl:f.cover,episodeCount:null,currentEpisodeIndex:null}})}catch(n){return E("info","[Renren] searchAppContent error:",n.message),null}}async performMacSearch(e,r=20){try{let n="/search/v5/season",s={keywords:e,order:"match",search_after:"",size:r},i=this.buildMacHeaders(),a=wC(s),o=`https://${this.API_CONFIG.MAC_HOST}${n}?${a}`,c=await Ae(o,{headers:i,timeout:5e3});return!c.data||c.data.code!=="0000"?(E("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 E("info","[Renren] performMacSearch error:",n.message),null}}async performWinSearch(e,r=30){try{let n=`https://${this.API_CONFIG.WIN_HOST}/search/comprehensive/precise-mixed`,i=wC({keywords:e,searchAfter:"",size:r}),a=this.buildWinHeaders(),o=await Ae(`${n}?${i}`,{headers:a,timeout:5e3});if(!o.data||o.data.code!=="0000")return E("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||[],p=m=>{let h=[];if(m.highlights&&(m.highlights.alias&&(h=m.highlights.alias.split(",").map(y=>y.trim().replace(/<[^>]+>/g,"")).filter(Boolean)),m.highlights.original_name)){let y=m.highlights.original_name.replace(/<[^>]+>/g,"").trim();y&&!h.includes(y)&&h.push(y)}return{provider:"renren",mediaId:String(m.id),title:String(m.title||m.alias||m.name||"").replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A"),aliases:h,type:m.classify||m.cat||"Renren",season:null,year:m.year||null,imageUrl:m.cover||m.coverUrl,episodeCount:null,currentEpisodeIndex:null}};return l.forEach(m=>u.push(p(m))),d.forEach(m=>u.push(p(m))),f.forEach(m=>{m.seasonList&&Array.isArray(m.seasonList)&&m.seasonList.forEach(h=>{u.push(p(h))})}),u}catch(n){return E("info","[Renren] performWinSearch error:",n.message),null}}async performNetworkSearch(e,{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:e,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?(OC(u.data)?.data?.searchDramaList||[]).map(f=>{let p=[];if(f.highlights&&(f.highlights.alias&&(p=f.highlights.alias.split(",").map(m=>m.trim().replace(/<[^>]+>/g,"")).filter(Boolean)),f.highlights.original_name)){let m=f.highlights.original_name.replace(/<[^>]+>/g,"").trim();m&&!p.includes(m)&&p.push(m)}return{provider:"renren",mediaId:String(f.id),title:String(f.title||"").replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A"),aliases:p,type:f.classify||"Renren",season:null,year:f.year,imageUrl:f.cover,episodeCount:f.episodeTotal,currentEpisodeIndex:null}}):(E("info","[Renren] \u7F51\u9875\u7248\u641C\u7D22\u65E0\u54CD\u5E94\u6570\u636E"),null)}catch(i){return E("info","[Renren] performNetworkSearch error:",i.message),null}}async search(e){E("info",`[Renren] \u5F00\u59CB\u641C\u7D22: ${e}`);let r=[],n=!1,s=["WIN","TV","MAC","WEB"],i=s.indexOf(na.search);i===-1&&(i=0);for(let a=i;a ${o}`),na.search=o);break}else E("info",`[Renren] ${o} \u7AEF\u641C\u7D22\u63A5\u53E3\u5F02\u5E38\u6216\u8BF7\u6C42\u5931\u8D25\uFF0C\u89E6\u53D1\u964D\u7EA7`)}catch(c){E("info",`[Renren] ${o} \u7AEF\u641C\u7D22\u5F02\u5E38\uFF0C\u89E6\u53D1\u964D\u7EA7: ${c.message}`)}}return n||(E("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"),na.search="WIN"),r}async getAppDramaDetail(e,r=""){try{let n=Date.now(),s="/qwtv/drama/details",i={isAgeLimit:"false",seriesId:String(e),episodeId:String(r),clarity:"HD",caption:"0",hevcOpen:"1"},a=kC(s,n,i,this.API_CONFIG.TV_SECRET_KEY),o=Object.entries(i).map(([f,p])=>`${f}=${encodeURIComponent(p)}`).join("&"),c=this.generateTvHeaders(n,a),u=await Ae(`https://${this.API_CONFIG.TV_HOST}${s}?${o}`,{headers:c,timeout:5e3});if(!u||!u.data)return E("info",`[Renren] TV\u8BE6\u60C5\u63A5\u53E3\u7F51\u7EDC\u65E0\u54CD\u5E94\u6216\u6570\u636E\u4E3A\u7A7A: ID=${e}`),null;let l=u.data,d=l.msg||l.message||"";return d.includes("\u8BE5\u5267\u6682\u4E0D\u53EF\u64AD")?(E("info",`[Renren] TV\u63A5\u53E3\u63D0\u793A'\u8BE5\u5267\u6682\u4E0D\u53EF\u64AD' (ID=${e})\uFF0C\u89C6\u4E3A\u7EF4\u62A4\u4E2D\uFF0C\u89E6\u53D1\u964D\u7EA7`),null):l.code!=="0000"?(E("info",`[Renren] TV\u8BE6\u60C5\u63A5\u53E3\u8FD4\u56DE\u9519\u8BEF\u7801: ${l.code}, msg=${d} (ID=${e})`),null):!l.data||!l.data.episodeList||l.data.episodeList.length===0?l.data?.dramaInfo?.playStatus?.includes("\u5373\u5C06\u5F00\u64AD")?(E("info",`[Renren] TV\u8BE6\u60C5\u63A5\u53E3\u63D0\u793A'\u5373\u5C06\u5F00\u64AD' (ID=${e})\uFF0C\u89C6\u4E3A\u7A7A\u7ED3\u679C`),l.data.episodeList||(l.data.episodeList=[]),l.data):(E("info",`[Renren] TV\u8BE6\u60C5\u63A5\u53E3\u8FD4\u56DE\u6570\u636E\u7F3A\u5931\u5206\u96C6\u5217\u8868 (ID=${e})\uFF0C\u5C1D\u8BD5\u964D\u7EA7`),null):(E("info",`[Renren] TV\u7AEF\u8BE6\u60C5\u83B7\u53D6\u4E0E\u5206\u96C6\u89E3\u6790\u6210\u529F: ID=${e}, \u5305\u542B\u96C6\u6570=${l.data.episodeList.length}`),l.data)}catch(n){return E("info","[Renren] getAppDramaDetail error:",n.message),null}}async getGatewayDramaDetail(e,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=kC(i,s,a,this.API_CONFIG.TV_SECRET_KEY),c=Object.entries(a).map(([m,h])=>`${m}=${encodeURIComponent(h)}`).join("&"),u=this.generateTvHeaders(s,o),l=`https://${e}${i}?${c}`,d=await Ae(l,{headers:u,timeout:5e3});if(!d||!d.data)return E("info",`[Renren] \u8BE6\u60C5\u63A5\u53E3\u7F51\u7EDC\u65E0\u54CD\u5E94\u6216\u6570\u636E\u4E3A\u7A7A (${e}): ID=${r}`),null;let f=d.data,p=f.msg||f.message||"";return p.includes("\u8BE5\u5267\u6682\u4E0D\u53EF\u64AD")?(E("info",`[Renren] \u63A5\u53E3\u63D0\u793A'\u8BE5\u5267\u6682\u4E0D\u53EF\u64AD' (${e}) (ID=${r})\uFF0C\u89C6\u4E3A\u7EF4\u62A4\u4E2D\uFF0C\u89E6\u53D1\u964D\u7EA7`),null):f.code!=="0000"?(E("info",`[Renren] \u8BE6\u60C5\u63A5\u53E3\u8FD4\u56DE\u9519\u8BEF\u7801: ${f.code}, msg=${p} (${e}) (ID=${r})`),null):!f.data||!f.data.episodeList||f.data.episodeList.length===0?f.data?.dramaInfo?.playStatus?.includes("\u5373\u5C06\u5F00\u64AD")?(E("info",`[Renren] \u8BE6\u60C5\u63A5\u53E3\u63D0\u793A'\u5373\u5C06\u5F00\u64AD' (${e}) (ID=${r})\uFF0C\u89C6\u4E3A\u7A7A\u7ED3\u679C`),f.data.episodeList||(f.data.episodeList=[]),f.data):(E("info",`[Renren] \u8BE6\u60C5\u63A5\u53E3\u8FD4\u56DE\u6570\u636E\u7F3A\u5931\u5206\u96C6\u5217\u8868 (${e}) (ID=${r})\uFF0C\u5C1D\u8BD5\u964D\u7EA7`),null):(E("info",`[Renren] \u8DE8\u534F\u8BAE\u8BE6\u60C5\u83B7\u53D6\u4E0E\u5206\u96C6\u89E3\u6790\u6210\u529F (${e}): ID=${r}, \u5305\u542B\u96C6\u6570=${f.data.episodeList.length}`),f.data)}catch(s){return E("info",`[Renren] getGatewayDramaDetail error (${e}):`,s.message),null}}async getWebDramaDetailFallback(e){let r=`https://${this.API_CONFIG.WEB_HOST}/m-station/drama/page`,n={hsdrOpen:0,isAgeLimit:0,dramaId:String(e),hevcOpen:1};try{let s=await this.renrenRequest("GET",r,n);if(!s.data)return null;let i=OC(s.data);return i&&i.data&&i.data.episodeList&&i.data.episodeList.length>0?(E("info",`[Renren] \u7F51\u9875\u7248\u8BE6\u60C5\u83B7\u53D6\u4E0E\u5206\u96C6\u89E3\u6790\u6210\u529F: ID=${e}, \u5305\u542B\u96C6\u6570=${i.data.episodeList.length}`),i.data):null}catch(s){return E("info",`[Renren] \u7F51\u9875\u7248\u8BE6\u60C5\u8BF7\u6C42\u5931\u8D25: ${s.message}`),null}}async getDetail(e,r=""){let n=null,s=["TV","MAC","WIN","WEB"],i=s.indexOf(na.detail);i===-1&&(i=0);for(let a=i;a ${o}`),na.detail=o),n;E("info",`[Renren] ${o} \u8BE6\u60C5\u63A5\u53E3\u5931\u8D25\u6216\u65E0\u6570\u636E\uFF0C\u89E6\u53D1\u964D\u7EA7`)}catch(c){E("info",`[Renren] ${o} \u8BE6\u60C5\u63A5\u53E3\u5F02\u5E38\uFF0C\u89E6\u53D1\u964D\u7EA7: ${c.message}`)}}return E("info","[Renren] \u8BE6\u60C5\u57DF\u6240\u6709\u964D\u7EA7\u63A5\u53E3\u5747\u5931\u8D25\uFF0C\u91CD\u7F6E\u5065\u5EB7\u72B6\u6001\u81F3 TV \u7AEF"),na.detail="TV",null}async getEpisodes(e){let r=await this.getDetail(e);if(!r)return E("info",`[Renren] \u83B7\u53D6\u5206\u96C6\u5931\u8D25: \u8BE6\u60C5\u5BF9\u8C61\u4E3A\u7A7A ID=${e}`),[];if(!r.episodeList||!Array.isArray(r.episodeList))return E("info",`[Renren] \u83B7\u53D6\u5206\u96C6\u5931\u8D25: episodeList \u5B57\u6BB5\u7F3A\u5931\u6216\u975E\u6570\u7EC4 ID=${e}`),[];let n=[],s=String(e);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(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return E("info","[Renren] sourceAnimes is not a valid array"),[];let o=e.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:$t(r);if(c!==null){let d=o.filter(f=>{let p=Tt(f.title).season;return p===c||c===1&&p===null});d.length>0&&(o=d,E("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"}[na.search]||"\u672A\u77E5";E("info",`[Renren] ${l}\u7AEF\u641C\u7D22\u63D0\u53D6\u7ED3\u679C\u6570\u91CF: ${e.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),p=[];for(let m of f)p.push({name:m.episodeIndex.toString(),url:m.episodeId,title:`\u3010${m.provider}\u3011 ${m.title}`});if(p.length>0){let m=d.aliases||[];f.enName&&!m.includes(f.enName)&&m.push(f.enName);let h=f.year||d.year||"",y=f.type||(d.type&&d.type!=="Renren"?d.type:"Renren"),g={animeId:Number(d.mediaId),bangumiId:String(d.mediaId),animeTitle:`${d.title}(${h})\u3010${y}\u3011from renren`,aliases:m,type:y,typeDescription:y,imageUrl:d.imageUrl,startDate:Br(h),episodeCount:p.length,rating:0,isFavorited:!0,source:"renren"};a.push(g),Bt({...g,links:p},s),O.animes.length>O.MAX_ANIMES&&Ut()}}catch(f){E("info",`[Renren] Error processing anime: ${f.message}`)}}))}finally{this.isBatchMode=!1,this.checkAndIncrementUsage()}return this.sortAndPushAnimesByYear(a,n),a}async getAppDanmu(e){try{let r=Date.now(),n=e;String(e).includes("-")&&(n=String(e).split("-")[1]);let s=`/v1/produce/danmu/EPISODE/${n}`,a=kC(s,r,{},this.API_CONFIG.TV_SECRET_KEY),o=this.generateTvHeaders(r,a),c=`https://${this.API_CONFIG.TV_DANMU_HOST}${s}`,u=await Ae(c,{headers:o,timeout:5e3,validStatusCodes:[404]});if(u.status===404)return u.data&&u.data.error==="Document not found"?[]:(E("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=OC(u.data);return Array.isArray(l)?l:l&&l.data&&Array.isArray(l.data)?l.data:[]}catch(r){return E("info","[Renren] getAppDanmu error:",r.message),null}}async getMacDanmu(e){let r=String(e).includes("-")?String(e).split("-")[1]:e,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(e){let r=String(e).includes("-")?String(e).split("-")[1]:e,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(e){let r=e;String(e).includes("-")&&(r=String(e).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"?[]:(E("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=OC(a.data),c=[];return Array.isArray(o)?c=o:o?.data&&Array.isArray(o.data)&&(c=o.data),c}catch(a){return E("info",`[Renren] \u7F51\u9875\u7248\u5F39\u5E55\u964D\u7EA7\u5931\u8D25: ${a.message}`),null}}async getEpisodeDanmu(e){let r=0;if(String(e).includes("-")){let[o,c]=String(e).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(na.danmu);i===-1&&(i=0);for(let o=i;o ${c}`),na.danmu=c),n.length>0?E("info",`[Renren] \u6210\u529F\u83B7\u53D6 ${n.length} \u6761\u5F39\u5E55 (${c}\u7AEF)`):E("info",`[Renren] \u8BE5\u5267\u96C6\u6682\u65E0\u5F39\u5E55 (${c}\u7AEF)`),n.adDurationMs=r,n.episodeId=e,n;E("info",`[Renren] ${c} \u5F39\u5E55\u63A5\u53E3\u5931\u8D25\uFF0C\u89E6\u53D1\u964D\u7EA7`)}catch(u){E("info",`[Renren] ${c} \u5F39\u5E55\u63A5\u53E3\u5F02\u5E38\uFF0C\u89E6\u53D1\u964D\u7EA7: ${u.message}`)}}E("info","[Renren] \u5F39\u5E55\u57DF\u6240\u6709\u964D\u7EA7\u63A5\u53E3\u5747\u5931\u8D25\uFF0C\u91CD\u7F6E\u5065\u5EB7\u72B6\u6001\u81F3 TV \u7AEF"),na.danmu="TV";let a=[];return a.adDurationMs=r,a.episodeId=e,a}async getEpisodeDanmuSegments(e){return new St({type:"renren",segmentList:[{type:"renren",segment_start:0,segment_end:3e4,url:e}]})}async getEpisodeSegmentDanmu(e){return this.getEpisodeDanmu(e.url)}parseRRSPPFields(e){let r=String(e).split(","),n=(l,d,f)=>{if(l==null||l==="")return f;let p=d(l);return isNaN(p)?f:p},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(e){let r=e.adDurationMs||0,n=e.episodeId||"\u672A\u77E5",s=r/1e3,i=0,a=e.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&&E("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}};kt();vt();dr();ws();Un();mn();ys();var rbr={1:"\u97E9\u5267",2:"\u7EFC\u827A",3:"\u7535\u5F71",4:"\u65E5\u5267",5:"\u7F8E\u5267",6:"\u6CF0\u5267",7:"\u56FD\u4EA7\u5267"},Jg=1e8,mot=6e4,xs=Object.freeze({HXQ:"hxq",TV:"tv",MERGED:"merged"}),rw=class extends wt{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(e){return rbr[e]||"\u5176\u4ED6"}async buildTvHeaders(){return this._tvMakeHeaders||(this._tvMakeHeaders=await tot(Date.now())),this._tvMakeHeaders(Date.now())}async buildMobileHeaders(){return this._mobileMakeHeaders||(this._mobileMakeHeaders=await eot(Date.now())),this._mobileMakeHeaders(Date.now())}async tvGet(e,r={}){let n=await this.buildTvHeaders(),s=await Ae(`${this.tvHost}${e}`,{headers:n.headers,timeout:1e4,retries:1,...r});return koe(s?.data,n.uid)}logError(e,r){E("error",`[Hanjutv] ${e}:`,{message:r.message,name:r.name,stack:r.stack})}attachDanmuSourceLabel(e=[],r=""){let n=B5(r);return Array.isArray(e)?e.map(s=>({...s,_sourceLabel:n})):[]}async tryGet(e,r,n){try{return await e()}catch(s){return n&&E("warn",`${n}: ${s.message}`),r}}normalizeSearchItems(e=[]){return Array.isArray(e)?e.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(e=[]){return Array.isArray(e)?e.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(e=[]){return this.normalizeEpisodes(e).filter(r=>r.pid).map(r=>({...r,pid:String(r.pid)}))}normalizeTvEpisodes(e=[]){return this.normalizeEpisodes(e).filter(r=>r.eid||r.episodeId).map(r=>({...r,eid:String(r.eid||r.episodeId)}))}extractSearchItems(e){let r=e?.seriesData?.seriesList||e?.seriesList||e?.seriesData?.series||[];return this.normalizeSearchItems(r)}dedupeBySid(e=[]){let r=new Map;for(let n of e){if(!n?.sid)continue;let s=String(n.sid);r.has(s)||r.set(s,n)}return Array.from(r.values())}isMergeableSearchPair(e,r,n=""){return!e?.name||!r?.name||n&&(!xt(e.name,n)||!xt(r.name,n))?!1:xt(e.name,r.name)&&xt(r.name,e.name)}buildSearchCandidate(e,r,n=""){if(!e?.sid)return null;let s=String(e.sid),i=String(n||"").trim(),a=r===xs.MERGED?Vr(`hxq:${s}|tv:${i}`):Vr(s);return{...e,animeId:a,_variant:r,...i?{tvSid:i}:{}}}mergeSearchCandidates(e,r=[],n=[]){let s=this.dedupeBySid(r),i=this.dedupeBySid(n),a=p=>{let m=[],h=[];for(let y of p)(xt(y?.name||"",e)?m:h).push(y);return{matched:m,unmatched:h}},o=a(s),c=a(i),u=o.matched.length+c.matched.length>0,l=[],d=new Set;for(let p of o.matched){let m=c.matched.find(h=>!d.has(String(h.sid))&&this.isMergeableSearchPair(p,h,e));m?(d.add(String(m.sid)),l.push(this.buildSearchCandidate(p,xs.MERGED,m.sid))):l.push(this.buildSearchCandidate(p,xs.HXQ))}c.matched.filter(p=>!d.has(String(p.sid))).forEach(p=>{l.push(this.buildSearchCandidate(p,xs.TV))}),u?l.push(...o.unmatched.map(p=>this.buildSearchCandidate(p,xs.HXQ)).filter(Boolean),...c.unmatched.map(p=>this.buildSearchCandidate(p,xs.TV)).filter(Boolean)):l.push(...s.map(p=>this.buildSearchCandidate(p,xs.HXQ)).filter(Boolean),...i.map(p=>this.buildSearchCandidate(p,xs.TV)).filter(Boolean));let f=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===xs.MERGED).length:0,s5MatchedList:f(o.matched),s5UnmatchedList:f(o.unmatched),tvMatchedList:f(c.matched),tvUnmatchedList:f(c.unmatched)}}}async extractFromPayload(e,r,n){if(!e||typeof e!="object")throw new Error(`${n} \u54CD\u5E94\u4E3A\u7A7A`);if(typeof e.data=="string"&&e.data.length>0){let i;try{i=await koe(e,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(e);if(s.length===0)throw new Error(`${n} \u65E0\u6709\u6548\u7ED3\u679C`);return s}async warmupMobileIdentity(e){try{await Ae(`${this.appHost}/api/common/configs`,{headers:e,timeout:8e3,retries:0})}catch{}}async ensureMobileIdentityWarmed(){if(this._mobileWarmupAttempted){await this._mobileWarmupPromise;return}this._mobileWarmupAttempted=!0,this._mobileWarmupPromise=(async()=>{let e=await this.buildMobileHeaders();await this.warmupMobileIdentity(e.headers)})(),await this._mobileWarmupPromise}async searchWithS5Api(e){await this.ensureMobileIdentityWarmed();let{uid:r,headers:n}=await this.buildMobileHeaders(),s=encodeURIComponent(e),i=await Ae(`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(e){let r=encodeURIComponent(e),n=await this.buildTvHeaders(),s=await Ae(`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(e){try{let r=String(e||"").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?(E("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?(E("info","[Hanjutv] hanjutvSearchresp: s5 \u4E0E TV \u63A5\u53E3\u5747\u65E0\u6709\u6548\u7ED3\u679C"),[]):(E("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)}`),E("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}`),E("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(e,r,n,s){try{let i=String(e||"").trim();if(!i)return null;let a=await this.tryGet(()=>r(i),null,s);return a||(E("info",`[Hanjutv] ${n}: series \u4E0D\u5B58\u5728`),null)}catch(i){return this.logError(s,i),null}}async getHxqDetail(e){return this.getSeriesDetail(e,async r=>(await Ae(`${this.appHost}/api/series/detail?sid=${r}`,{headers:this.getAppHeaders(),timeout:1e4,retries:1}))?.data?.series??null,"getHanjutvHxqDetail","getHanjutvHxqDetail error")}async getTvDetail(e){return this.getSeriesDetail(e,async r=>(await this.tvGet(`/api/v1/series/detail/query?sid=${r}`))?.series??null,"getHanjutvTvDetail","getHanjutvTvDetail error")}async getHxqEpisodes(e){try{let r=String(e||"").trim();if(!r)return[];let n=[async()=>{let i=await Ae(`${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 Ae(`${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 Ae(`${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?(E("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(e){try{let r=String(e||"").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?(E("info","[Hanjutv] getHanjutvTvEpisodes: episodes \u4E0D\u5B58\u5728"),[]):n.sort((s,i)=>s.serialNo-i.serialNo)}catch(r){return this.logError("getHanjutvTvEpisodes error",r),[]}}resolveAnimeYear(e,...r){let n=[e?.updateTime,e?.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(e,r=""){let n=String(r||"").trim();return n?`\u7B2C${e}\u96C6\uFF1A${n}`:`\u7B2C${e}\u96C6`}buildEpisodeLink(e,r){let n=e?.serialNo??r?.serialNo??1,s=this.buildEpisodeTitle(n,e?.title||r?.title||""),i="";if(e?.pid&&r?.eid){let a=not(e.pid,r.eid);i=a?`hanjutv:${a}`:""}else e?.pid?i=`hxq:${e.pid}`:r?.eid&&(i=`tv:${r.eid}`);return i?{name:s,url:i,title:`\u3010hanjutv\u3011 ${s}`}:null}mergeVariantEpisodes(e=[],r=[]){let n=new Map(e.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(e,r,n,s){let i=this.getCategory(r?.category??e?.category),a=this.resolveAnimeYear(e,r);return{animeId:s,bangumiId:String(s),animeTitle:`${e.name}(${a})\u3010${i}\u3011from hanjutv`,type:i,typeDescription:i,imageUrl:e?.image?.thumb||"",startDate:Br(a),episodeCount:n.length,rating:Number(r?.rank??0),isFavorited:!0,source:"hanjutv"}}async getHxqBundle(e){if(!e)return{detail:null,episodes:[]};let[r,n]=await Promise.all([this.getHxqDetail(e),this.getHxqEpisodes(e)]);return{detail:r,episodes:n}}async getTvBundle(e){if(!e)return{detail:null,episodes:[]};let[r,n]=await Promise.all([this.getTvDetail(e),this.getTvEpisodes(e)]);return{detail:r,episodes:n}}async buildAnimePayload(e){let r=e?._variant||xs.HXQ,n=String(e?.sid||"").trim(),s=String(e?.tvSid||"").trim(),i=s||(r===xs.TV?n:""),a=Number(e?.animeId),o=r===xs.MERGED&&n&&s?Number.isFinite(a)&&a>0?a:Vr(`hxq:${n}|tv:${s}`):null,c=(r===xs.HXQ||r===xs.MERGED)&&n,u=(r===xs.TV||r===xs.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===xs.MERGED&&n&&s){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(e,p,f,o),links:f}}}if((r===xs.HXQ||r===xs.MERGED)&&n){let f=l.episodes.map(p=>this.buildEpisodeLink(p,null)).filter(Boolean);if(f.length>0)return{summary:this.buildAnimeSummary(e,l.detail,f,o??Vr(n)),links:f}}if((r===xs.TV||r===xs.MERGED)&&i){let f=d.episodes.map(p=>this.buildEpisodeLink(null,p)).filter(Boolean);if(f.length>0)return{summary:this.buildAnimeSummary(e,d.detail,f,o??Vr(i)),links:f}}return null}async handleAnimes(e,r,n,s=null,i=null){if(!Array.isArray(e))return E("error","[Hanjutv] sourceAnimes is not a valid array"),[];let a=[],o=e.filter(u=>xt(u.name,r,i)),c=i!==null?i:$t(r);if(c!==null){let u=o.filter(l=>{let d=Tt(l.name).season;return d===c||c===1&&d===null});u.length>0&&(o=u,E("info",`[Hanjutv] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}return await Promise.all(o.map(async u=>{try{let l=await this.buildAnimePayload(u);if(!l||!l.summary||!Array.isArray(l.links)||l.links.length===0)return;a.push(l.summary),Bt({...l.summary,links:l.links},s),O.animes.length>O.MAX_ANIMES&&Ut()}catch(l){E("error",`[Hanjutv] Error processing anime: ${l.message}`)}})),this.sortAndPushAnimesByYear(a,n),a}async fetchEpisodeDanmuByRef(e){let r=String(e?.id||"").trim();if(!r)return[];let n=[];if(!e.preferTv){let s=this.getDanmuHeaders();for(let i of this.danmuHosts){let a=[];try{let o=0,c=0,u=mot,l=0,d=240;for(;c0&&a.push(...p);let m=Number(f?.data?.more??0)===1||f?.data?.more===!0||f?.data?.more==="1",h=Number(f?.data?.nextAxis??Jg),y=Number(f?.data?.lastId??o);if(!Number.isFinite(h)||h<=c||h>=Jg)break;if(Number.isFinite(y)&&y>o&&(o=y),c=h,!m){if(p.length===0)break;u=c+mot}}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??Jg),f=Number(c.lastId??s);if(!Number.isFinite(d)||d<=i||d>=Jg||(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(e){let r=sot(e),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(e){return E("info","[Hanjutv] \u83B7\u53D6\u97E9\u5267TV\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e),new St({type:"hanjutv",duration:0,segmentList:[{type:"hanjutv",segment_start:0,segment_end:3e4,url:e}]})}async getEpisodeSegmentDanmu(e){return this.getEpisodeDanmu(e.url)}formatComments(e){return e.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}))}};kt();vt();dr();Un();mo();mn();ys();var Xg=class extends wt{async search(e){try{let r=[];O.useBangumiData&&(r=await Ru(e,["gamer","gamer_hk"]),E("info",`[Bahamut] Bangumi-Data \u672C\u5730\u547D\u4E2D ${r.length} \u6761\u6570\u636E\uFF08\u68C0\u7D22\u8BCD\uFF1A${e}\uFF09`));let n=r.filter(p=>p.video_sn);if(r.length>0&&r.length===n.length)return E("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(p=>{let h=(p.titles.find(y=>y&&y.includes(e))||p.titles[1]||p.title)+(p.titleSuffix||"");return{video_sn:parseInt(p.video_sn),title:h,_displayTitle:h,isLocalPriority:!0,aliases:[...p.titles],_typeStr:p.typeStr,_fromDataSourceDirectHit:!0,_originalQuery:e,_bangumiBegin:p.begin||null}});let s=$o(e),i=e,a=encodeURIComponent(s);E("info",`[Bahamut] \u539F\u59CB\u641C\u7D22\u8BCD: ${e}`),E("info",`[Bahamut] \u5DF4\u54C8\u4F7F\u7528\u641C\u7D22\u8BCD: ${s}`);let o=new AbortController,c=(async()=>{try{let p=`https://api.gamer.com.tw/mobile_app/anime/v1/search.php?kw=${a}`,m=O.makeProxyUrl(p),h=await Ae(m,{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(h&&h.data&&h.data.anime&&h.data.anime.length>0){o.abort();let y=h.data.anime;for(let g of y)try{g._originalQuery=e,g._searchUsedTitle=s}catch{}return E("info",`[Bahamut] bahamutSearchresp (original): ${JSON.stringify(y)}`),E("info",`[Bahamut] \u8FD4\u56DE ${y.length} \u6761\u7ED3\u679C (source: original)`),{success:!0,data:y,source:"original"}}return E("info","[Bahamut] \u539F\u59CB\u641C\u7D22\u6210\u529F\uFF0C\u4F46\u672A\u8FD4\u56DE\u4EFB\u4F55\u7ED3\u679C (source: original)"),{success:!1,source:"original"}}catch(p){return E("error","[Bahamut] \u539F\u59CB\u641C\u7D22\u5931\u8D25:",{message:p.message,name:p.name,stack:p.stack}),{success:!1,source:"original"}}})(),u=(async()=>{try{await new Promise(A=>setTimeout(A,100));let p=await D1(i,o.signal,"Bahamut");if(!p||!p.title)return E("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:m,cnAlias:h}=p;E("info",`[Bahamut] \u4F7F\u7528\u65E5\u8BED\u539F\u540D\u8FDB\u884C\u641C\u7D22: ${m}`);let g=`https://api.gamer.com.tw/mobile_app/anime/v1/search.php?kw=${encodeURIComponent(m)}`,b=O.makeProxyUrl(g),x=await Ae(b,{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(x&&x.data&&x.data.anime&&x.data.anime.length>0){let A=x.data.anime;for(let S of A)try{S._originalQuery=e,S._searchUsedTitle=m,S._tmdbCnAlias=h}catch{}return E("info",`[Bahamut] bahamutSearchresp (TMDB): ${JSON.stringify(A)}`),E("info",`[Bahamut] \u8FD4\u56DE ${A.length} \u6761\u7ED3\u679C (source: tmdb)`),{success:!0,data:A,source:"tmdb"}}return E("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(p){return p.name==="AbortError"?(E("info","[Bahamut] \u539F\u59CB\u641C\u7D22\u6210\u529F\uFF0C\u4E2D\u65AD\u65E5\u8BED\u539F\u540D\u641C\u7D22"),{success:!1,source:"tmdb",aborted:!0}):(E("error","[Bahamut] TMDB\u641C\u7D22\u5931\u8D25:",{message:p.message,name:p.name,stack:p.stack}),{success:!1,source:"tmdb"})}})(),[l,d]=await Promise.all([c,u]),f=[];if(l.success?f=l.data:d.success?f=d.data:E("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 p of f){if(!p||!p.acg_sn)continue;let m=r.find(h=>String(p.acg_sn)===String(h.siteId))||r.find(h=>p.title&&h.title===p.title);if(m){let h=p.title,g=(m.titles.find(b=>b&&b.includes(e))||m.titles[1]||m.title)+(m.titleSuffix||"");p.title=g,p._displayTitle=g,p.isLocalPriority=!0,p.aliases=[...m.titles],h&&!p.aliases.includes(h)&&p.aliases.push(h),p._typeStr=m.typeStr,E("info",`[Bahamut] \u7F51\u7EDC\u7ED3\u679C [${p.title}] \u6210\u529F\u5BF9\u9F50\u672C\u5730 Bangumi-Data \u6570\u636E`)}}return f}catch(r){return E("error","[Bahamut] getBahamutAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getEpisodes(e){try{let r=`https://api.gamer.com.tw/anime/v1/video.php?videoSn=${e}`,n=O.makeProxyUrl(r),s=await Ae(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 E("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 E("info","[Bahamut] getBahamutEposides: video \u6216 anime \u4E0D\u5B58\u5728"),[];let{video:i,anime:a}=s.data.data;return E("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 E("error","[Bahamut] getBahamutEposides error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async handleAnimes(e,r,n,s=null,i=null){let a=[],o=/[\u3040-\u309F\u30A0-\u30FF]/.test(r);r=$o(r);function c(y,g,b){if(!y)return!1;let x=String(y),A=String(g||""),S=String(b||"");if(O.strictTitleMatch){if(am(x,A)||S&&am(x,S))return!0;try{if(am(x,$o(A))||am(x,zt(A))||S&&(am(x,$o(S))||am(x,zt(S))))return!0}catch{}return!1}let I=Dr(x),R=Dr(A),w=S?Dr(S):"";if(I.includes(R)||w&&I.includes(w))return!0;try{if(I.includes(Dr($o(A)))||I.includes(Dr(zt(A)))||w&&(I.includes(Dr($o(S)))||I.includes(Dr(zt(S)))))return!0}catch{}try{if(I.toLowerCase().includes(R.toLowerCase())||w&&I.toLowerCase().includes(w.toLowerCase()))return!0}catch{}return!1}let l=(Array.isArray(e)?e:[]).filter(y=>{let g=y.title||"",b=y._searchUsedTitle||y._originalQuery||"";return o||y._searchUsedTitle&&y._searchUsedTitle!==r?(E("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,b)||Array.isArray(y.aliases)&&y.aliases.some(x=>c(x,r,b))});l.forEach(y=>{y._originalTitleAlias=y.title?zt(y.title):""});let d=l.length>0?l[0]._tmdbCnAlias:null;B1(l,d);let f=i!==null?i:$t(r),p=l;if(f!==null){let y=l.filter(g=>{let b=g._displayTitle||g.title,x=Tt(b).season;return x===f||f===1&&x===null});y.length>0&&(p=y,E("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 m=new Map,h=await Promise.all(p.map(async y=>{try{let g=String(y.video_sn);m.has(g)||m.set(g,this.getEpisodes(y.video_sn));let b=await m.get(g);if(!b||typeof b!="object"||Array.isArray(b))return null;let x=b.video,A=null;b.anime.episodes&&(A=b.anime.episodes[0]||Object.values(b.anime.episodes)[0]);let S=[];if(A&&Array.isArray(A))for(let I of A){let R=`\u7B2C${I.episode}\u96C6`;S.push({name:I.episode.toString(),url:I.videoSn.toString(),title:`\u3010bahamut\u3011 ${R}`})}if(S.length>0){let I=null;if(y._bangumiBegin&&(I=parseInt(y._bangumiBegin.substring(0,4))),!I&&b.anime&&b.anime.seasonStart&&(I=new Date(b.anime.seasonStart).getFullYear()),!I&&x&&x.upTime){let L=String(x.upTime).match(/(\d{4})/);L&&(I=parseInt(L[1]))}if(!I){let D=(y.info||"").match(/(\d{4})/);D&&(I=parseInt(D[1]))}let R=b.anime&&b.anime.cover||y.cover||x&&x.cover||"",w=y._displayTitle||zt(y.title),N=Array.isArray(y.aliases)?[...y.aliases]:[];y._originalTitleAlias&&y._originalTitleAlias!==w&&!N.includes(y._originalTitleAlias)&&N.push(y._originalTitleAlias);let k=y._typeStr||"\u52A8\u6F2B",B=b.anime&&b.anime.title||x&&x.title||"";B.includes("[\u96FB\u5F71]")?k="\u5267\u573A\u7248":B.includes("[\u7279\u5225\u7BC7]")&&(k="OVA");let M={animeId:y.video_sn,bangumiId:String(y.video_sn),animeTitle:`${w}(${I||"N/A"})\u3010${k}\u3011from bahamut`,aliases:N,type:"\u52A8\u6F2B",typeDescription:"\u52A8\u6F2B",imageUrl:R,startDate:I?Br(I):Br(b.anime.seasonStart?new Date(b.anime.seasonStart).getFullYear():null),episodeCount:S.length,rating:x.rating,isFavorited:!0,source:"bahamut"};a.push(M),Bt({...M,links:S},s),O.animes.length>O.MAX_ANIMES&&Ut()}}catch(g){E("error",`[Bahamut] Error processing anime: ${g.message}`)}}));return this.sortAndPushAnimesByYear(a,n),h}async getEpisodeDanmu(e){let r=[];try{let n=`https://api.gamer.com.tw/anime/v1/danmu.php?geo=TW%2CHK&videoSn=${e}`,s=O.makeProxyUrl(n),i=await Ae(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 E("error","[Bahamut] fetchBahamutEpisodeDanmu error:",{message:n.message,name:n.name,stack:n.stack}),r}}async getEpisodeDanmuSegments(e){return E("info","[Bahamut] \u83B7\u53D6\u5DF4\u54C8\u59C6\u7279\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e),new St({type:"bahamut",segmentList:[{type:"bahamut",segment_start:0,segment_end:3e4,url:e}]})}async getEpisodeSegmentDanmu(e){return this.getEpisodeDanmu(e.url)}formatComments(e){let r={0:1,1:5,2:4};return e.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:O.danmuSimplifiedTraditional==="simplified"?zt(n.text):n.text,t:n.time/10}))}};kt();vt();dr();Un();mo();ys();kt();vt();dr();ws();Un();mn();ys();var Zg=class extends wt{extractAliasesFromHintWords(e){if(!e||typeof e!="string")return[];let r=[],n=i=>{let a=String(i||"").replace(/<\/?em>/g,"").trim();a&&!r.includes(a)&&r.push(a)},s=e.match(/(?:又名|别名)\s*[::]\s*(.+)$/);return s&&s[1].split(/[、,,/|]+/).forEach(n),r}titleOrAliasMatches(e,r,n=null){return xt(e.title,r,n)?!0:Array.isArray(e.aliases)&&e.aliases.some(s=>xt(s,r,n))}filterTencentSearchItem(e,r){if(!e.videoInfo||!e.doc)return null;let n=e.videoInfo,s=e.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(m=>{m.text&&m.text.includes("3D")&&(u=!0),m.text&&m.text.includes("2D")&&(l=!0)}),n.coverDoc.tags&&Array.isArray(n.coverDoc.tags)&&n.coverDoc.tags.forEach(m=>{m&&m.includes("3D")&&(u=!0),m&&m.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(m=>m.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=>i.includes(h)))return null;let f=a==="\u7535\u5F71"?1:n.subjectDoc?n.subjectDoc.videoNum:0,p=this.extractAliasesFromHintWords(n.hintWords).filter(m=>m!==i);return{provider:"tencent",mediaId:s,title:i,aliases:p,type:c,year:n.year,imageUrl:n.imgUrl,episodeCount:f}}async search(e){try{E("info",`[Tencent] \u5F00\u59CB\u641C\u7D22: ${e}`);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:e,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(e)}&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 Gr(r,JSON.stringify(n),{headers:s});if(!i||!i.data)return E("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 E("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){E("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&&(E("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(e));l.length>0?(E("info",`[Tencent] \u8FFD\u52A0\u300C\u76F8\u5173\u5F71\u89C6\u300Dbox \u4E2D\u5339\u914D "${e}" \u7684 ${l.length} \u4E2A\u9879\u76EE`),o=[...o,...l]):E("info",`[Tencent] \u300C\u76F8\u5173\u5F71\u89C6\u300Dbox \u4E2D\u65E0\u5339\u914D "${e}" \u7684\u9879\u76EE`);break}}if(o.length===0)return E("info","[Tencent] \u641C\u7D22\u65E0\u7ED3\u679C"),[];let c=[];for(let u of o){let l=this.filterTencentSearchItem(u,e);l&&c.push(l)}return E("info",`[Tencent] \u641C\u7D22\u627E\u5230 ${c.length} \u4E2A\u6709\u6548\u7ED3\u679C`),c}catch(r){return E("error","[Tencent] \u641C\u7D22\u51FA\u9519:",r.message),[]}}async getEpisodes(e){try{E("info",`[Tencent] \u83B7\u53D6\u5206\u96C6\u5217\u8868: cid=${e}`);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:e,vid:"",lid:"",page_num:"",page_context:`cid=${e}&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/${e}.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 Gr(r,JSON.stringify(n),{headers:s});if(!i||!i.data)return E("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 E("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){E("error","[Tencent] \u89E3\u6790tabs\u5931\u8D25:",d.message)}if(o.length>0)break}let c=[];if(o.length===0){if(E("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 E("info","[Tencent] \u521D\u59CB\u54CD\u5E94\u4E2D\u4E5F\u672A\u627E\u5230\u5206\u96C6\u4FE1\u606F"),[];E("info",`[Tencent] \u4ECE\u521D\u59CB\u54CD\u5E94\u4E2D\u63D0\u53D6\u5230 ${c.length} \u96C6`)}else{E("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:e,vid:"",lid:"",page_num:"",page_context:u.page_context,detail_page_type:"1"}},d=await Gr(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 p of f.data.module_list_datas)for(let m of p.module_datas)if(m.item_data_lists&&m.item_data_lists.item_datas)for(let h of m.item_data_lists.item_datas)h.item_params&&h.item_params.vid&&h.item_params.is_trailer!=="1"&&c.push({vid:h.item_params.vid,title:h.item_params.title,unionTitle:h.item_params.union_title||h.item_params.title})}}}return E("info",`[Tencent] \u5171\u83B7\u53D6 ${c.length} \u96C6`),c}catch(r){return E("error","[Tencent] \u83B7\u53D6\u5206\u96C6\u51FA\u9519:",r.message),[]}}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return E("error","[Tencent] sourceAnimes is not a valid array"),[];let o=e.filter(l=>this.titleOrAliasMatches(l,r,i)),c=i!==null?i:$t(r);if(c!==null){let l=o.filter(d=>{let f=Tt(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,E("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 p=0;p0){let p=d[0].unionTitle||d[0].title||"\u7B2C1\u96C6",m=l.title,h=p.match(/\[.+版\]/);h&&p.includes(l.title)&&(m=`${l.title}${h[0]}`);let g={animeId:Vr(l.mediaId),bangumiId:l.mediaId,animeTitle:`${m}(${l.year})\u3010${l.type}\u3011from tencent`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:Br(l.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"tencent",aliases:l.aliases||[]};a.push(g),Bt({...g,links:f},s),O.animes.length>O.MAX_ANIMES&&Ut()}}catch(d){E("error",`[Tencent] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}extractVid(e){let r=e;if(typeof e=="string"&&(e.startsWith("http")||e.includes("vid="))){let n=e.match(/[?&]vid=([^&]+)/);if(n)r=n[1];else{let s=e.split("/");r=s[s.length-1].split(".")[0]}}return r}async getEpisodeDanmu(e){E("info","[Tencent] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u817E\u8BAF\u89C6\u9891\u5F39\u5E55...",e);let r=this.extractVid(e);E("info",`[Tencent] vid: ${r}`);let n;try{n=await Ae(e,{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 E("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";E("info",`[Tencent] \u6807\u9898: ${i}`);let a=await this.getEpisodeDanmuSegments(e);if(!a||!a.segmentList||a.segmentList.length===0)return[];let o=a.segmentList;E("info",`[Tencent] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${o.length}`);let c=[];for(let l of o)c.push(Ae(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 E("error","[Tencent] \u89E3\u6790\u5F39\u5E55\u6570\u636E\u5931\u8D25:",l),[]}return rs(u),u}async getEpisodeDanmuSegments(e){E("info","[Tencent] \u83B7\u53D6\u817E\u8BAF\u89C6\u9891\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e);let r="https://dm.video.qq.com/barrage/base/",n="https://dm.video.qq.com/barrage/segment/",s=this.extractVid(e);E("info",`[Tencent] \u83B7\u53D6\u5F39\u5E55\u5206\u6BB5\u5217\u8868 - vid: ${s}`);let i;try{i=await Ae(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 St({type:"qq",segmentList:[]}):(E("error","[Tencent] \u8BF7\u6C42\u5F39\u5E55\u57FA\u7840\u6570\u636E\u5931\u8D25:",u),new St({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 St({type:"qq",segmentList:o})}async getEpisodeSegmentDanmu(e){try{let r=await Ae(e.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 E("error","[Tencent] \u8BF7\u6C42\u5206\u7247\u5F39\u5E55\u5931\u8D25:",r),[]}}formatComments(e){return e.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})}};vt();dr();mn();ws();Un();kt();ys();var ey=class t extends wt{static XOR_KEY=0x75706971676c;static SECRET_KEY="howcuteitis";static KEY_NAME="secret_key";async search(e){try{E("info",`[iQiyi] \u5F00\u59CB\u641C\u7D22: ${e}`);let r={key:e,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?${Ii(r)}`,i=async()=>{let l=await Ae(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 E("info","[iQiyi] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];if(o.code==="-1")return E("info","[iQiyi] \u641C\u7D22\u63A5\u53E3\u98CE\u63A7 (code=-1)\uFF0C\u91CD\u8BD5\u540E\u4ECD\u5931\u8D25"),E("info",`[iQiyi] \u641C\u7D22\u539F\u59CB\u6570\u636E: ${JSON.stringify(o)}`),[];if(!o.data||!o.data.templates)return E("info","[iQiyi] \u641C\u7D22\u65E0\u7ED3\u679C"),E("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?(E("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&&(E("info",`[iQiyi] \u627E\u5230\u666E\u901A\u7ED3\u679C\u5361\u7247 (template ${l.template})`),d=[l.albumInfo]);for(let f of d){let p=this._filterIqiyiSearchItem(f,e);p&&c.push(p)}}return E("info",`[iQiyi] \u641C\u7D22\u627E\u5230 ${c.length} \u4E2A\u6709\u6548\u7ED3\u679C`),c}catch(r){return E("error","[iQiyi] \u641C\u7D22\u51FA\u9519:",r.message),[]}}_filterIqiyiSearchItem(e,r){if(!e.title)return null;if(e.btnText==="\u5916\u7AD9\u4ED8\u8D39\u64AD\u653E")return E("info",`[iQiyi] \u8FC7\u6EE4\u6389\u5916\u7AD9\u4ED8\u8D39\u64AD\u653E\u5185\u5BB9: ${e.title}`),null;let n=e.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(e.metaTags&&Array.isArray(e.metaTags)&&e.metaTags.forEach(p=>{p.name==="3D"&&(i=!0),p.name==="2D"&&(a=!0)}),e.baseTags&&Array.isArray(e.baseTags)&&e.baseTags.forEach(p=>{p.value==="3D"&&(i=!0),p.value==="2D"&&(a=!0)}),i?s="3D"+s:a&&(s="2D"+s),s.includes("\u7535\u5F71")){let p=e.qipuId||e.playQipuId;if(!p)return E("info",`[iQiyi] \u7535\u5F71\u7F3A\u5C11 qipuId: ${e.title}`),null;let m=null;if(e.year){let y=e.year.value||e.year.name;y&&typeof y=="string"&&y.length===4&&/^\d{4}$/.test(y)&&(m=parseInt(y))}let h=e.title.replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A");return{provider:"iqiyi",mediaId:`movie_${p}`,title:h,type:s,year:m,imageUrl:e.img||e.imgH,episodeCount:1,_qipuId:p}}let o=e.pageUrl;if(!o)return E("info",`[iQiyi] \u975E\u7535\u5F71\u5185\u5BB9\u7F3A\u5C11 pageUrl: ${e.title}`),null;let c=o.match(/v_(\w+?)\.html/);if(!c)return E("info",`[iQiyi] \u65E0\u6CD5\u4ECE pageUrl \u63D0\u53D6 link_id: ${o}`),null;let u=c[1],l=null;if(e.year){let p=e.year.value||e.year.name;p&&typeof p=="string"&&p.length===4&&/^\d{4}$/.test(p)&&(l=parseInt(p))}let d=null;if(e.videos&&e.videos.length>0)d=e.videos.length;else if(e.subscriptContent){let p=e.subscriptContent.match(/(?:更新至|å…¨|å…±)\s*(\d+)\s*(?:集|话|期)/);if(p)d=parseInt(p[1]);else{let m=e.subscriptContent.trim().match(/^(\d+)$/);m&&(d=parseInt(m[1]))}}let f=e.title.replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A");return{provider:"iqiyi",mediaId:u,title:f,type:s,year:l,imageUrl:e.img||e.imgH,episodeCount:d}}async getEpisodes(e){try{if(E("info",`[iQiyi] \u83B7\u53D6\u5206\u96C6\u5217\u8868: media_id=${e}`),e.startsWith("movie_")){let p=e.substring(6);E("info",`[iQiyi] \u7535\u5F71\u7C7B\u578B\uFF0C\u8C03\u7528 base_info API \u83B7\u53D6\u89C6\u9891ID: qipuId=${p}`);let m=await this._getMovieVideoId(p);return m?(E("info",`[iQiyi] \u7535\u5F71\u89C6\u9891ID: ${m}`),[{id:m,title:"\u6B63\u7247",order:1,link:`https://www.iqiyi.com/v_${m}.html`}]):(E("error",`[iQiyi] \u65E0\u6CD5\u83B7\u53D6\u7535\u5F71\u7684\u89C6\u9891ID: qipuId=${p}`),[])}let r=/^\d+$/.test(e)?e:this._videoIdToEntityId(e);if(!r)return E("error",`[iQiyi] \u65E0\u6CD5\u5C06 media_id '${e}' \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?${Ii(n)}`,a=await Ae(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 E("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 E("error",`[iQiyi] API \u8FD4\u56DE\u9519\u8BEF\uFF0Cstatus_code: ${o.status_code}`),[];let c=[],u=o.data.template.tabs||[];if(u.length===0)return E("info","[iQiyi] \u672A\u627E\u5230\u5206\u96C6\u6807\u7B7E\u9875"),[];let l=u[0].blocks||[],d=!1;for(let p of l)if(p.bk_type==="video_list"&&p.data?.data){if(E("info",`[iQiyi] \u627E\u5230 video_list \u7C7B\u578B\u7684\u5206\u96C6\u6570\u636E\u5757, bk_id: ${p.bk_id}`),!p.tag||!p.tag.includes("episodes")){E("info",`[iQiyi] \u8DF3\u8FC7\u975E\u5206\u96C6\u5757: ${p.bk_id}`);continue}d=!0;let m=p.data.data;if(!Array.isArray(m)){E("warn","[iQiyi] data.data \u4E0D\u662F\u6570\u7EC4\uFF0C\u8DF3\u8FC7\u6B64\u5757");continue}for(let h of m)if(!(!h.videos||!Array.isArray(h.videos))){for(let y of h.videos)if(!(!y.data||!Array.isArray(y.data)))for(let g of y.data){if(g.content_type!==1)continue;let x=(g.play_url||"").match(/tvid=(\d+)/);if(!x)continue;let A=x[1],S=g.short_display_name||g.title||"\u672A\u77E5\u5206\u96C6",I=g.subtitle;I&&!S.includes(I)&&(S=`${S} ${I}`);let R=g.album_order,w=g.page_url;A&&S&&w&&c.push({id:A,title:S,order:R!==void 0?R:c.length,link:w})}}}else if(p.bk_type==="album_episodes"&&p.data?.data){E("info","[iQiyi] \u627E\u5230 album_episodes \u7C7B\u578B\u7684\u5206\u96C6\u6570\u636E\u5757"),d=!0;let m=p.data.data;for(let h of m){let y=h.videos;if(typeof y=="string"){E("info",`[iQiyi] \u53D1\u73B0\u5206\u5B63URL\uFF0C\u6B63\u5728\u83B7\u53D6: ${y}`);try{let g=await Ae(y);y=typeof g.data=="string"?JSON.parse(g.data):g.data}catch(g){E("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 b=y.feature_paged[g];for(let x of b){if(x.content_type!==1)continue;let S=(x.play_url||"").match(/tvid=(\d+)/);if(!S)continue;let I=S[1],R=x.short_display_name||x.title||"\u672A\u77E5\u5206\u96C6",w=x.subtitle;w&&!R.includes(w)&&(R=`${R} ${w}`);let N=x.album_order,k=x.page_url;I&&R&&N&&k&&c.push({id:I,title:R,order:N,link:k})}}}}if(!d)return E("info","[iQiyi] \u672A\u627E\u5230\u5206\u96C6\u6570\u636E\u5757"),[];let f=Array.from(new Map(c.map(p=>[p.id,p])).values());return f.sort((p,m)=>p.order-m.order),E("info",`[iQiyi] \u6210\u529F\u83B7\u53D6 ${f.length} \u4E2A\u5206\u96C6`),f}catch(r){return E("error","[iQiyi] \u83B7\u53D6\u5206\u96C6\u51FA\u9519:",r.message),[]}}async _getMovieVideoId(e){try{let r={entity_id:e,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?${Ii(r)}`;E("info",`[iQiyi] \u8BF7\u6C42\u7535\u5F71\u8BE6\u60C5: ${s}`);let i=await Ae(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 E("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){let u=c[1];return E("info",`[iQiyi] \u4ECE share_url \u63D0\u53D6\u89C6\u9891ID: ${u}`),u}}if(o.page_url){let c=o.page_url.match(/v_(\w+)\.html/);if(c){let u=c[1];return E("info",`[iQiyi] \u4ECE page_url \u63D0\u53D6\u89C6\u9891ID: ${u}`),u}}}return E("error","[iQiyi] base_info API \u54CD\u5E94\u4E2D\u672A\u627E\u5230\u89C6\u9891ID"),E("info",`[iQiyi] \u54CD\u5E94\u6570\u636E\u7ED3\u6784: ${JSON.stringify(a).substring(0,1e3)}...`),null}catch(r){return E("error",`[iQiyi] \u83B7\u53D6\u7535\u5F71\u89C6\u9891ID\u65F6\u51FA\u9519: ${r.message}`),null}}_videoIdToEntityId(e){try{let r=parseInt(e,36),n=this._xorOperation(r),s=n<9e5?100*(n+9e5):n;return String(s)}catch(r){return E("error",`[iQiyi] \u5C06 video_id '${e}' \u8F6C\u6362\u4E3A entity_id \u65F6\u51FA\u9519: ${r.message}`),null}}_xorOperation(e){let r=e.toString(2),n=t.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:$t(r);if(c!==null){let l=o.filter(d=>{let f=Tt(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,E("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 p of d){let m=p.link||`https://www.iqiyi.com/v_${l.mediaId}.html`;f.push({name:p.order.toString(),url:m,title:`\u3010qiyi\u3011 ${p.title}`})}if(f.length>0){let m={animeId:Vr(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:Br(l.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"iqiyi"};a.push(m),Bt({...m,links:f},s),O.animes.length>O.MAX_ANIMES&&Ut()}}catch(d){E("error",`[iQiyi] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){E("info","[iQiyi] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u7231\u5947\u827A\u5F39\u5E55...",e);let r;try{r=await Ae(e,{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 E("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";E("info",`[iQiyi] \u6807\u9898: ${s}`);let i=await this.getEpisodeDanmuSegments(e);if(!i||!i.segmentList||i.segmentList.length===0)return[];let a=i.segmentList;E("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 E("error","[iQiyi] \u89E3\u6790\u5F39\u5E55\u6570\u636E\u5931\u8D25:",u),[]}return rs(c),c}async getEpisodeDanmuSegments(e){E("info","[iQiyi] \u83B7\u53D6\u7231\u5947\u827A\u89C6\u9891\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e);let r="https://pcw-api.iq.com/api/decode/",n="https://pcw-api.iqiyi.com/video/video/baseinfo/",s;try{let d=e.match(/v_(\w+)/);if(!d)return E("error","[iQiyi] \u65E0\u6CD5\u4ECE URL \u4E2D\u63D0\u53D6 tvid"),new St({type:"qiyi",segmentList:[]});s=d[1],E("info",`[iQiyi] tvid: ${s}`);let f=`${r}${s}?platformId=3&modeCode=intl&langCode=sg`,p=await Ae(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"}});s=(typeof p.data=="string"?JSON.parse(p.data):p.data).data.toString(),E("info",`[iQiyi] \u89E3\u7801\u540E tvid: ${s}`)}catch(d){return E("error","[iQiyi] \u8BF7\u6C42\u89E3\u7801\u4FE1\u606F\u5931\u8D25:",d),new St({type:"qiyi",segmentList:[]})}let i;try{let d=`${n}${s}`,f=await Ae(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"}}),m=(typeof f.data=="string"?JSON.parse(f.data):f.data).data;if(i=Number(m.durationSec)||0,m.displayBarrage===!1)return E("info","[iQiyi] \u7231\u5947\u827A\u89C6\u9891\u672A\u5F00\u542F\u5F39\u5E55"),new St({type:"qiyi",duration:i,segmentList:[]});E("info",`[iQiyi] \u65F6\u957F: ${i}`)}catch(d){return E("error","[iQiyi] \u8BF7\u6C42\u89C6\u9891\u57FA\u7840\u4FE1\u606F\u5931\u8D25:",d),new St({type:"qiyi",segmentList:[]})}let a=60,o=Math.ceil(i/a);E("info",`[iQiyi] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${o}`);let c=[],u=`0000${s}`,l=`${u.slice(-4,-2)}/${u.slice(-2)}`;for(let d=0;d(.*?)`,"g");return e.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(e){let r=[],n=this._parseIqiyiProtoFields(e);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(e){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(e,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(e,n),l=Number(u.value);n=u.offset;let d=n+l;if(d>e.length)break;let f=e.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(e,r){let n=0n,s=0n,i=r;for(;in.number===r)?.value||""}formatComments(e){return e.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=If(r.content),n.size=25,n.like=r.like,n})}};kt();vt();dr();mn();ws();Un();ys();var ty=class extends wt{transformV2Color(e){if(!e)return-1;let n=fJ(e.color_left),s=fJ(e.color_right);return n===-1&&s===-1?-1:n===-1?s:s===-1?n:Math.floor((n+s)/2)}_extractMediaType(e){let r=(e||"").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(e){try{E("info",`[Mango] \u5F00\u59CB\u641C\u7D22: ${e}`);let n=`https://mobileso.bz.mgtv.com/msite/search/v2?q=${encodeURIComponent(e)}&pc=30&pn=1&sort=-99&ty=0&du=0&pt=0&corr=1&abroad=0&_support=10000000000000000`,s=await Ae(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(!s||!s.data)return E("info","[Mango] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let i=typeof s.data=="string"?JSON.parse(s.data):s.data;if(!i.data||!i.data.contents)return E("info","[Mango] \u641C\u7D22\u65E0\u7ED3\u679C"),[];let a=[];for(let o of i.data.contents)if(o.type==="media")for(let c of o.data){if(c.source!=="imgo")continue;let u=c.url?c.url.match(/\/b\/(\d+)/):null;if(!u)continue;let l=u[1],d=c.title?c.title.replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A"):"",f=c.desc&&c.desc[0]?c.desc[0].match(/[12][890][0-9][0-9]/):null,p=f?parseInt(f[0]):null,m=c.desc&&c.desc[0]?c.desc[0].split("/")[0].replace("\u7C7B\u578B:","").trim():"",h=this._extractMediaType(m);a.push({provider:"imgo",mediaId:l,title:d,type:h,year:p,imageUrl:c.img||null,episodeCount:c.videoCount||null})}return E("info",`[Mango] \u641C\u7D22\u627E\u5230 ${a.length} \u4E2A\u6709\u6548\u7ED3\u679C`),a}catch(r){return E("error","[Mango] \u641C\u7D22\u51FA\u9519:",r.message),[]}}async getEpisodes(e){try{E("info",`[Mango] \u83B7\u53D6\u5206\u96C6\u5217\u8868: collection_id=${e}`);let r=[],n="",s=0,i=1;for(;s0&&r.push(...d.data.list.filter(f=>f.src_clip_id===e)),s===0&&(i=d.data.tab_m&&d.data.tab_m.length>0?d.data.tab_m.length:1,E("info",`[Mango] \u68C0\u6D4B\u5230 ${i} \u4E2A\u6708\u4EFD\u5206\u9875`)),s++,s{let l=`${u.t2||""} ${u.t1||""}`.trim();return u.isnew==="2"?(E("info",`[Mango] \u8FC7\u6EE4\u9884\u544A\u7247: ${l}`),!1):a.test(l)?(E("info",`[Mango] \u9ED1\u540D\u5355\u8FC7\u6EE4: ${l}`),!1):!0}),c=this._processVarietyEpisodes(o);return E("info",`[Mango] \u5171\u83B7\u53D6 ${c.length} \u96C6`),c}catch(r){return E("error","[Mango] \u83B7\u53D6\u5206\u96C6\u51FA\u9519:",r.message),[]}}async _getMovieEpisode(e){try{E("info",`[Mango] \u83B7\u53D6\u7535\u5F71\u6B63\u7247: collection_id=${e}`);let r=`https://pcweb.api.mgtv.com/variety/showlist?allowedRC=1&collection_id=${e}&month=&page=1&_support=10000000`,n=await Ae(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 E("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 E("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]),E("info",`[Mango] \u627E\u5230\u7535\u5F71\u6B63\u7247: ${i.t3||i.t1||"\u6B63\u7247"}`),i}catch(r){return E("error","[Mango] \u83B7\u53D6\u7535\u5F71\u6B63\u7247\u51FA\u9519:",r.message),null}}_processVarietyEpisodes(e){if(!e||e.length===0)return[];E("info",`[Mango] \u7EFC\u827A\u5904\u7406\u5F00\u59CB\uFF0C\u539F\u59CB\u5206\u96C6\u6570: ${e.length}`);let r=e.some(i=>{let a=`${i.t2||""} ${i.t1||""}`.trim();return/第\d+期/.test(a)});E("info",`[Mango] \u7EFC\u827A\u683C\u5F0F\u5206\u6790: \u6709\u671F\u6570\u683C\u5F0F=${r}`);let n=[],s=new Map;for(let i of e){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}`,p=a.substring(a.indexOf(f)+f.length);/^(åŠ æ›´|会员版|纯享版|特别版|独家版|Plus|\+|花絮|预告|彩蛋|抢先|精选|未播|回顾|特辑|幕后)/.test(p)?E("info",`[Mango] \u7EFC\u827A\u8FC7\u6EE4\u4E0A\u4E2D\u4E0B\u683C\u5F0F+\u540E\u7F00: ${a}`):(s.set(i,[parseInt(l),d]),n.push(i),E("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),E("info",`[Mango] \u7EFC\u827A\u4FDD\u7559\u6807\u51C6\u671F\u6570: ${a}`)}else E("info",`[Mango] \u7EFC\u827A\u8FC7\u6EE4\u975E\u6807\u51C6\u671F\u6570\u683C\u5F0F: ${a}`)}else{if(a.includes("\u5E7F\u544A")||a.includes("\u63A8\u5E7F")){E("info",`[Mango] \u8DF3\u8FC7\u5E7F\u544A\u5185\u5BB9: ${a}`);continue}n.push(i),E("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}),E("info",`[Mango] \u7EFC\u827A\u5904\u7406\u5B8C\u6210\uFF0C\u8FC7\u6EE4\u540E\u5206\u96C6\u6570: ${n.length}`),n}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return E("error","[Mango] sourceAnimes is not a valid array"),[];let o=e.filter(l=>xt(l.title,r,i)),c=i!==null?i:$t(r);if(c!==null){let l=o.filter(d=>{let f=Tt(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,E("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 p=await this._getMovieEpisode(l.mediaId);if(!p)return;let m=`https://www.mgtv.com/b/${l.mediaId}/${p.video_id}.html`,h=p.t3||p.t1||"\u6B63\u7247",y=[{name:"1",url:m,title:`\u3010imgo\u3011 ${h}`}],b={animeId:Vr(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:Br(l.year),episodeCount:1,rating:0,isFavorited:!0,source:"imgo"};a.push(b),Bt({...b,links:y},s),O.animes.length>O.MAX_ANIMES&&Ut();return}let d=await this.getEpisodes(l.mediaId),f=[];for(let p=0;p0){let m={animeId:Vr(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:Br(l.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"imgo"};a.push(m),Bt({...m,links:f},s),O.animes.length>O.MAX_ANIMES&&Ut()}}catch(d){E("error",`[Mango] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){E("info","[Mango] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u8292\u679CTV\u5F39\u5E55...",e);let r=await this.getEpisodeDanmuSegments(e);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;E("info",`[Mango] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let s=[];for(let a of n)s.push(Ae(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 E("error","[Mango] \u89E3\u6790\u5F39\u5E55\u6570\u636E\u5931\u8D25:",a),[]}return rs(i),i}async getEpisodeDanmuSegments(e){E("info","[Mango] \u83B7\u53D6\u8292\u679CTV\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e);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=e.match(i),o;if(a)o=a[2].split("/").filter(Boolean);else return E("error","[Mango] Invalid URL"),new St({type:"imgo",segmentList:[]});let c=o[o.length-2],u=o[o.length-1].split(".")[0];E("info",`[Mango] \u83B7\u53D6\u5F39\u5E55\u5206\u6BB5\u5217\u8868 - cid: ${c}, vid: ${u}`);let l;try{let m=`${r}?cid=${c}&vid=${u}`;l=await Ae(m,{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(m){return m.response?.status===404?new St({type:"imgo",segmentList:[]}):(E("error","[Mango] \u8BF7\u6C42\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",m),new St({type:"imgo",segmentList:[]}))}let f=(typeof l.data=="string"?JSON.parse(l.data):l.data).data.info.time,p=!0;try{let m=`${n}?version=8.1.39&abroad=0&uuid=&os=10.15.7&platform=0&mac=&vid=${u}&pid=&cid=${c}&ticket=`,h=await Ae(m,{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 h.data=="string"?JSON.parse(h.data):h.data;(!y.data||!y.data.cdn_list||!y.data.cdn_version)&&(E("warn","[Mango] \u65B0API\u7F3A\u5C11\u5FC5\u8981\u5B57\u6BB5\uFF0C\u8FD4\u56DE\u7A7A\u5206\u6BB5\u5217\u8868"),p=!1);let g=[];if(p){let b=Math.ceil(Yg(f)/60),x=y.data.cdn_list.split(",")[0],A=y.data.cdn_version;for(let S=0;S{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})}};kt();vt();dr();ws();Un();mn();ys();mo();var ry=class t extends wt{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(e){let r;try{E("info",`[Bilibili] \u6B63\u5728\u89E3\u6790 b23.tv \u77ED\u94FE\u63A5: ${e}`);let n=parseInt(O.vodRequestTimeout||"5000",10)||5e3,s=new AbortController;r=setTimeout(()=>s.abort(),n);let a=await(typeof fetch=="function"?fetch:(await Promise.resolve().then(()=>(TC(),sL))).default)(e,{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,e).toString():a.url;return c&&c!==e?(E("info",`[Bilibili] b23.tv \u77ED\u94FE\u63A5\u5DF2\u89E3\u6790\u4E3A: ${c}`),c):(E("error","[Bilibili] \u65E0\u6CD5\u89E3\u6790 b23.tv \u77ED\u94FE\u63A5"),e)}catch(n){return E("error","[Bilibili] \u89E3\u6790 b23.tv \u77ED\u94FE\u63A5\u5931\u8D25:",n),e}finally{r&&clearTimeout(r)}}async _getWbiMixinKey(){let e=Math.floor(Date.now()/1e3),r=t.WBI_MIXIN_KEY_CACHE;if(r.key&&e-r.timestamp(c+u)[d]).join("").substring(0,32);return r.key=l,r.timestamp=e,E("info","[Bilibili] \u6210\u529F\u83B7\u53D6\u65B0\u7684 WBI mixin key"),l}catch(n){return E("error","[Bilibili] \u83B7\u53D6 WBI \u5BC6\u94A5\u5931\u8D25:",n.message),"dba4a5925b345b4598b7452c75070bca"}}_getWbiSignedParams(e,r){let n={...e};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=Ms(o);return n.w_rid=c,n}async _searchByType(e,r,n){try{E("info",`[Bilibili] \u641C\u7D22\u7C7B\u578B '${r}'\uFF0C\u5173\u952E\u8BCD '${e}'`);let s={keyword:e,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 Ae(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:O.bilibliCookie||""}}),u=typeof c.data=="string"?JSON.parse(c.data):c.data;if(u.code!==0||!u.data?.result)return E("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 p=this._extractMediaType(d.season_type_name),m=p==="\u7535\u5F71"?1:d.ep_size||0,h=null;try{d.pubdate?typeof d.pubdate=="number"?h=new Date(d.pubdate*1e3).getFullYear():typeof d.pubdate=="string"&&d.pubdate.length>=4&&(h=parseInt(d.pubdate.substring(0,4))):d.pubtime&&(h=new Date(d.pubtime*1e3).getFullYear())}catch{}let y=If((d.title||"").replace(/<[^>]+>/g,"")).replace(/:/g,"\uFF1A").trim(),g=If((d.org_title||"").replace(/<[^>]+>/g,"")).trim(),b={provider:"bilibili",mediaId:f,mdId:d.media_id?`md${d.media_id}`:null,title:y,org_title:g,type:p,year:h,imageUrl:d.cover||null,episodeCount:m};d.eps&&d.eps.length>0&&(b._eps=d.eps),l.push(b)}return E("info",`[Bilibili] \u7C7B\u578B '${r}' \u627E\u5230 ${l.length} \u4E2A\u7ED3\u679C`),l}catch(s){return E("error",`[Bilibili] \u641C\u7D22\u7C7B\u578B '${r}' \u5931\u8D25:`,s.message),[]}}_extractMediaType(e){let r=(e||"").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(e){let r=[];O.useBangumiData&&(r=await Ru(e,["bilibili","bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw"]),E("info",`[Bilibili] Bangumi-Data \u672C\u5730\u547D\u4E2D ${r.length} \u6761\u6570\u636E\uFF08\u68C0\u7D22\u8BCD\uFF1A${e}\uFF09`));let n=r.filter(s=>["bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw"].includes(s.matchedSiteKey));try{E("info",`[Bilibili] \u5F00\u59CB\u641C\u7D22: ${e}`);let s=await this._getWbiMixinKey(),i=this._searchByType(e,"media_bangumi",s),a=this._searchByType(e,"media_ft",s),o=Promise.resolve([]);this._hasBilibiliProxy()&&(E("info","[Bilibili] \u68C0\u6D4B\u5230\u4EE3\u7406\u914D\u7F6E\uFF0C\u542F\u7528\u6E2F\u6FB3\u53F0\u5E76\u884C\u641C\u7D22"),o=this._searchOversea(e,n.length>0));let c=(await Promise.all([i,a,o])).flat(),u=[],l=new Set,d=new Set;for(let p of c){if(!p||!p.mediaId&&!p.season_id)continue;let m=r.find(y=>p.mdId&&p.mdId===`md${y.siteId}`)||r.find(y=>p.org_title&&y.title===p.org_title);if(m){let g=(m.titles.find(b=>b&&b.includes(e))||m.titles[1]||m.title)+(m.titleSuffix||"");p.title=g,p._displayTitle=g,p.aliases=[...m.titles],p.type=m.typeStr||p.type,p.isLocalPriority=!0,d.add(`md${m.siteId}`),E("info",`[Bilibili] \u7F51\u7EDC\u7ED3\u679C [${p.title}] \u6210\u529F\u5BF9\u9F50\u672C\u5730 Bangumi-Data \u6570\u636E`)}let h=p.mediaId||(p.season_id?`ss${p.season_id}`:null);h&&l.has(h)||(h&&l.add(h),u.push(p))}let f=r.filter(p=>!d.has(`md${p.siteId}`));if(f.length>0){let p=f.filter(h=>h.season_id),m=f.filter(h=>!h.season_id);if(p.length>0){E("info",`[Bilibili] \u4ECE\u672C\u5730 Bangumi-Data \u8865\u5145 ${p.length} \u6761\u7F3A\u6F0F\u8BB0\u5F55\u5E76\u8BF7\u6C42\u8BE6\u60C5....\uFF08\u5305\u542B season_id \uFF09`);for(let h of p){let g=(h.titles.find(A=>A&&A.includes(e))||h.titles[1]||h.title)+(h.titleSuffix||""),b={provider:"bilibili",mediaId:`ss${h.season_id}`,mdId:`md${h.siteId}`,title:g,org_title:h.title,aliases:[...h.titles],_displayTitle:g,type:h.typeStr,year:h.begin?parseInt(h.begin.substring(0,4)):null,imageUrl:"",episodeCount:0,isOversea:["bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw"].includes(h.matchedSiteKey),isLocalPriority:!0},x=b.mediaId;x&&!l.has(x)&&(l.add(x),u.unshift(b))}}if(m.length>0){E("info",`[Bilibili] \u4ECE\u672C\u5730 Bangumi-Data \u8865\u5145 ${m.length} \u6761\u7F3A\u6F0F\u8BB0\u5F55\u5E76\u8BF7\u6C42\u8BE6\u60C5...`);let h=m.map(async g=>{let b=await this._resolveMediaInfo(g.siteId),A=(g.titles.find(S=>S&&S.includes(e))||g.titles[1]||g.title)+(g.titleSuffix||"");return{provider:"bilibili",mediaId:b.seasonId||`md${g.siteId}`,mdId:`md${g.siteId}`,title:A,org_title:g.title,aliases:[...g.titles],_displayTitle:A,type:g.typeStr,year:g.begin?parseInt(g.begin.substring(0,4)):null,imageUrl:b.cover,episodeCount:0,isOversea:["bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw"].includes(g.matchedSiteKey),isLocalPriority:!0}}),y=await Promise.all(h);for(let g of y){let b=g.mediaId;b&&l.has(b)||b&&(l.add(b),u.unshift(g))}}}return E("info",`[Bilibili] \u641C\u7D22\u5B8C\u6210\uFF0C\u627E\u5230 ${u.length} \u4E2A\u6709\u6548\u7ED3\u679C`),u}catch(s){return E("error","[Bilibili] \u641C\u7D22\u51FA\u9519:",s.message),[]}}async _resolveMediaInfo(e){try{let r=await Ae(`https://api.bilibili.com/pgc/review/user?media_id=${e}`),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){E("error",`[Bilibili] \u83B7\u53D6\u5A92\u4F53\u4FE1\u606F\u5931\u8D25 (md${e}):`,r.message)}return{seasonId:null,cover:""}}async _getPgcEpisodes(e){let r=[],n=[`https://api.bilibili.com/pgc/view/web/season?season_id=${e}`,`https://api.bilibili.com/pgc/web/season/section?season_id=${e}`];for(let i of n)try{let a=await Ae(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:O.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 E("error",`[Bilibili] \u83B7\u53D6\u756A\u5267\u5206\u96C6\u5931\u8D25 (season_id=${e}): \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),E("info",`[Bilibili] \u83B7\u53D6\u5230 ${s.length} \u4E2A\u756A\u5267\u5206\u96C6`),s}async _getUgcEpisodes(e){try{let r=`https://api.bilibili.com/x/web-interface/view?bvid=${e}`,n=await Ae(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:O.bilibliCookie||""}}),s=typeof n.data=="string"?JSON.parse(n.data):n.data;if(s.code!==0||!s.data)return E("error",`[Bilibili] \u83B7\u53D6\u89C6\u9891\u5206\u96C6\u5931\u8D25 (bvid=${e}):`,s.message),[];let i=s.data.pages||[];if(i.length===0)return E("info",`[Bilibili] \u89C6\u9891 bvid=${e} \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/${e}?p=${o.page}`}));return E("info",`[Bilibili] \u83B7\u53D6\u5230 ${a.length} \u4E2A\u89C6\u9891\u5206\u96C6`),a}catch(r){return E("error",`[Bilibili] \u83B7\u53D6\u89C6\u9891\u5206\u96C6\u51FA\u9519 (bvid=${e}):`,r.message),[]}}async getEpisodes(e){if(e.startsWith("md")){let r=e.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(e.startsWith("ss")){let r=e.substring(2);return await this._getPgcEpisodes(r)}else if(e.startsWith("bv")){let r=e.substring(2);return await this._getUgcEpisodes(r)}return E("error",`[Bilibili] \u4E0D\u652F\u6301\u7684 ID \u683C\u5F0F: ${e}`),[]}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return E("error","[Bilibili] sourceAnimes is not a valid array"),[];e.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=e.length>0?e[0]._tmdbCnAlias:null;B1(e,o);let c=e.filter(d=>d.isOversea||xt(d.title,r,i)||d.aliases&&d.aliases.some(f=>xt(f,r,i))),u=i!==null?i:$t(r);if(u!==null){let d=c.filter(f=>{let p=f._displayTitle||f.title,m=Tt(p).season;return m===u||u===1&&m===null});d.length>0&&(c=d,E("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=[],p=d.checkMore?.content?.includes("\u67E5\u770B\u5168\u90E8");if(d._eps&&d._eps.length>0&&!p){f=d._eps.map((b,x)=>{let A;d.isOversea&&b.position?A=b.position.toString():A=b.index_title||b.index||(x+1).toString();let S=b.title||b.index_title||A,I=b.long_title||"",R=/^\d+(\.\d+)?$/.test(S)?`\u7B2C${S}\u8BDD`:S;I&&I!==S&&(R+=` ${I}`);let w=b.id||b.param,N=`https://www.bilibili.com/bangumi/play/ep${w}?season_id=${d.mediaId.substring(2)}`;return d.isOversea&&(N+="&area=hkmt"),{name:A,url:N,title:`\u3010bilibili1\u3011 ${R.trim()}`,_id:parseInt(w,10)||0}});let g=f.map(b=>Tf(b.name));g.every(b=>b!==null)?(f.forEach((b,x)=>b._sortKey=g[x]),f.sort((b,x)=>b._sortKey-x._sortKey)):f.sort((b,x)=>b._id-x._id),E("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){E("info",`[Bilibili] ${d.title} \u65E0\u5206\u96C6\uFF0C\u8DF3\u8FC7`);return}g._cover&&(d.imageUrl=g._cover),f=g.map((b,x)=>{let A=b.link+`?season_id=${d.mediaId.substring(2)}`;return d.isOversea&&(A+="&area=hkmt"),{name:`${x+1}`,url:A,title:`\u3010bilibili1\u3011 ${b.title}`,_id:parseInt(b.id,10)||0}}),f.sort((b,x)=>b._id-x._id)}if(f.length===0)return;let m=Vr(d.mediaId),h=d._displayTitle||zt(d.title),y={animeId:m,bangumiId:d.mediaId,animeTitle:`${h}(${d.year||"N/A"})\u3010${d.type}\u3011from bilibili`,type:d.type,typeDescription:d.type,imageUrl:d.imageUrl,startDate:Br(d.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"bilibili",aliases:d.aliases};a.push(y),Bt({...y,links:f},s),O.animes.length>O.MAX_ANIMES&&Ut()}catch(f){E("error",`[Bilibili] \u5904\u7406 ${d.title} \u5931\u8D25:`,f.message)}});return await Promise.all(l),this.sortAndPushAnimesByYear(a,n),a}async _extractVideoInfo(e){E("info","[Bilibili] \u63D0\u53D6B\u7AD9\u89C6\u9891\u4FE1\u606F...",e);let r="https://api.bilibili.com/x/web-interface/view",n="https://api.bilibili.com/pgc/view/web/season",s=/^(https?:\/\/[^\/]+)(\/[^?#]*)/,i=e.match(s),a;if(i)a=i[2].split("/").filter(Boolean),a.unshift(""),E("info","[Bilibili] ",a);else return E("error","[Bilibili] Invalid URL"),null;let o,c,u,l;if(e.includes("video/"))try{let d=e.split("?")[1],f=1;if(d){let y=d.split("&");for(let g of y){let[b,x]=g.split("=");b==="p"&&(f=x||1)}}E("info",`[Bilibili] p: ${f}`);let p;e.includes("BV")?p=`${r}?bvid=${a[2]}`:(c=a[2].substring(2),p=`${r}?aid=${a[2].substring(2)}`);let m=await Ae(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"}}),h=typeof m.data=="string"?JSON.parse(m.data):m.data;if(h.code!==0)return E("error","[Bilibili] \u83B7\u53D6\u666E\u901A\u6295\u7A3F\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",h.message),null;u=h.data.duration,o=h.data.pages[f-1].cid}catch(d){return E("error","[Bilibili] \u8BF7\u6C42\u666E\u901A\u6295\u7A3F\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",d),null}else if(e.includes("bangumi/")&&e.includes("ep"))try{let d=a.slice(-1)[0].slice(2),f=e.split("?")[1]||"",p=null,m=!1;f.split("&").forEach(y=>{let[g,b]=y.split("=");g==="season_id"&&(p=b),g==="area"&&b==="hkmt"&&(m=!0)});let h=!1;if(!m){let y=await Ae(`${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 b=g.result.episodes.find(x=>x.id==d);b&&(o=b.cid,u=b.duration/1e3,l=b.share_copy,h=!0)}}if((!h||m)&&p&&this._hasBilibiliProxy()){try{let y=this._makeProxyUrl(`https://api.bilibili.com/pgc/view/web/season?season_id=${p}`),g=await Ae(y,{headers:{Cookie:O.bilibliCookie||"","User-Agent":"Mozilla/5.0"}}),b=typeof g.data=="string"?JSON.parse(g.data):g.data;if(b.code===0&&b.result){let x=(b.result.episodes||b.result.main_section?.episodes||[]).find(A=>A.id==d);x&&(o=x.cid,c=x.aid,u=x.duration/1e3,l=x.long_title,h=!0)}}catch{}if(!h)try{let y=await Ae(`https://api.bilibili.com/pgc/web/season/section?season_id=${p}`,{headers:{"User-Agent":"Mozilla/5.0",Cookie:O.bilibliCookie||""}}),g=typeof y.data=="string"?JSON.parse(y.data):y.data;if(g.code===0&&g.result?.main_section?.episodes){let b=g.result.main_section.episodes.find(x=>x.id==d);b&&(o=b.cid,c=b.aid,u=b.duration?b.duration/1e3:0,l=b.long_title,h=!0)}}catch{}}if(!o)return E("error","[Bilibili] \u672A\u627E\u5230\u5339\u914D\u7684\u756A\u5267\u96C6\u4FE1\u606F"),null;!u&&u!==0&&(u=0)}catch(d){return E("error","[Bilibili] \u8BF7\u6C42\u756A\u5267\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",d),null}else if(e.includes("bangumi/")&&e.includes("ss"))try{let d=a.slice(-1)[0].slice(2).split("?")[0],f=`${n}?season_id=${d}`;E("info",`[Bilibili] \u83B7\u53D6\u756A\u5267\u4FE1\u606F: season_id=${d}`);let p=await Ae(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 p.data=="string"?JSON.parse(p.data):p.data;if(m.code!==0)return E("error","[Bilibili] \u83B7\u53D6\u756A\u5267\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",m.message),null;if(!m.result.episodes||m.result.episodes.length===0)return E("error","[Bilibili] \u756A\u5267\u6CA1\u6709\u53EF\u7528\u7684\u96C6\u6570"),null;let h=m.result.episodes[0];o=h.cid,u=h.duration/1e3,l=h.share_copy,E("info",`[Bilibili] \u4F7F\u7528\u7B2C\u4E00\u96C6: ${l}, cid=${o}`)}catch(d){return E("error","[Bilibili] \u8BF7\u6C42\u756A\u5267\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",d),null}else return E("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 E("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(e){E("info","[Bilibili] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42B\u7AD9\u5F39\u5E55...",e);let r=await this.getEpisodeDanmuSegments(e);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;E("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):(E("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(e){if(E("info","[Bilibili] \u83B7\u53D6B\u7AD9\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e),typeof e=="string"&&e.includes("/combine?")){let c=[],u=0,l=0,d=e.startsWith("http")?e:`https://www.bilibili.com${e}`,f=new URL(d);for(let[p,m]of f.searchParams.entries()){if(!p.startsWith("cid"))continue;let h=p.substring(3),[y,g]=m.split("-"),b=parseFloat(y)||0,x=parseFloat(g)||0,A=x-b;if(A<=0)continue;l+=A;let S=Math.ceil(x/360);for(let I=0;I0?Math.ceil(i/360):36;E("info",`[Bilibili] maxLen: ${a}`);let o=[];for(let c=0;c0?Math.min((c+1)*360,i):(c+1)*360,url:u})}return new St({type:"bilibili1",duration:i>0?i:0,segmentList:o})}async getEpisodeSegmentDanmu(e){try{let r=new URL(e.url),n=e.url.split("#")[0],s=await Ae(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:O.bilibliCookie},base64Data:!0,retries:1}),i=[];if(s&&s.data&&(i=PUe(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 p=f-o+u;if(d.p&&typeof d.p=="string"){let m=d.p.split(",");m[0]=p.toFixed(5),d.p=m.join(",")}d.t!==void 0&&(d.t=p),d.progress!==void 0&&(d.progress=Math.round(p*1e3)),l.push(d)}}return l}return i}catch(r){throw r}}formatComments(e){return e.map(r=>(O.danmuSimplifiedTraditional==="simplified"&&r.m&&(r.m=zt(r.m)),r.like=r.like_num,r))}_makeProxyUrl(e){return O.makeProxyUrl(e)}_hasBilibiliProxy(){return(O.proxyUrl||"").split(",").some(e=>{let r=e.trim();return r.startsWith("bilibili@")||r.startsWith("@")})}_javaUrlEncode(e){return encodeURIComponent(e).replace(/!/g,"%21").replace(/'/g,"%27").replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/\*/g,"%2A").replace(/%20/g,"+")}async _searchOverseaRequest(e,r,n,s="Original",i=null){let o=(O.bilibliCookie||"").match(/([0-9a-fA-F]{32})/);if(!((O.proxyUrl||"").includes("bilibili@")||(O.proxyUrl||"").includes("@")))return[];if(o){E("info",`[Bilibili-Proxy][${s}] \u68C0\u6D4B\u5230 Access Key\uFF0C\u542F\u7528 APP \u7AEF\u63A5\u53E3\u6A21\u5F0F (Type: ${r})...`);try{let u={keyword:e,type:r,area:"tw",mobi_app:"android",platform:"android",build:"8140200",ts:Math.floor(Date.now()/1e3),appkey:t.APP_KEY,access_key:o[1],disable_rcmd:1},l=Object.keys(u).sort().map(h=>`${h}=${this._javaUrlEncode(String(u[h]))}`).join("&"),d=Ms(l+t.APP_SEC),f=`https://app.bilibili.com/x/v2/search/type?${l}&sign=${d}`,p=O.makeProxyUrl(f),m=await this._fetchAppSearchWithStream(p,{"User-Agent":"Mozilla/5.0 Android","X-From-Biliroaming":"1.0.0"},s,i);if(m&&m.code===0)return(m.data?.items||m.data?.result||m.data||[]).filter(h=>h.goto!=="recommend_tips"&&h.area!=="\u6F2B\u6E38"&&h.badge!=="\u516C\u544A").map(h=>({provider:"bilibili",mediaId:h.season_id?`ss${h.season_id}`:h.uri.match(/season\/(\d+)/)?.[1]?`ss${h.uri.match(/season\/(\d+)/)[1]}`:"",title:If((h.title||"").replace(/<[^>]+>/g,"")).trim(),org_title:If((h.org_title||"").replace(/<[^>]+>/g,"")).trim(),type:this._extractMediaType(h.season_type_name),year:h.ptime?new Date(h.ptime*1e3).getFullYear():null,imageUrl:h.cover||h.pic||"",episodeCount:0,_eps:h.episodes||h.episodes_new,checkMore:h.check_more,isOversea:!0})).filter(h=>h.mediaId);m&&m.code!==0&&E("warn",`[Bilibili-Proxy] App \u63A5\u53E3\u8FD4\u56DE\u9519\u8BEF Code ${m.code}: ${m.message}`)}catch(u){if(u.name==="AbortError")throw u;E("error",`[Bilibili-Proxy] App \u63A5\u53E3\u8BF7\u6C42\u5F02\u5E38: ${u.message}`)}E("info","[Bilibili-Proxy] App \u63A5\u53E3\u8BF7\u6C42\u5931\u8D25\uFF0C\u81EA\u52A8\u964D\u7EA7\u81F3 Web \u63A5\u53E3...")}else E("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:e,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(h=>`${encodeURIComponent(h)}=${encodeURIComponent(u[h])}`).join("&")}`,f=O.makeProxyUrl(d),p=await Ae(f,{headers:{"User-Agent":"Mozilla/5.0",Cookie:O.bilibliCookie||"","X-From-Biliroaming":"1.0.0"},signal:i}),m=typeof p.data=="string"?JSON.parse(p.data):p.data;if(m.code!==0)return E("warn",`[Bilibili-Proxy] Web \u63A5\u53E3\u8FD4\u56DE\u9519\u8BEF Code ${m.code}: ${m.message}`),[];if(m.data?.result)return m.data.result.filter(h=>h.url?.includes("bilibili.com")&&!h.areas?.includes("\u6F2B\u6E38")).map(h=>({provider:"bilibili",mediaId:h.season_id?`ss${h.season_id}`:"",mdId:h.media_id?`md${h.media_id}`:null,title:If((h.title||"").replace(/<[^>]+>/g,"")).trim(),org_title:If((h.org_title||"").replace(/<[^>]+>/g,"")).trim(),type:this._extractMediaType(h.season_type_name),year:h.pubtime?new Date(h.pubtime*1e3).getFullYear():null,imageUrl:h.cover||null,episodeCount:h.ep_size||0,_eps:h.eps,isOversea:!0})).filter(h=>h.mediaId)}catch(u){if(u.name==="AbortError")throw u;E("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(e,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(e,o.appType,o.webType,"Original")))).then(o=>{let c=o.flat();return c.length&&n.abort(),c.forEach(u=>u._originalQuery=e),c}).catch(()=>[]),a=O.tmdbApiKey?new Promise(o=>setTimeout(o,100)).then(async()=>{let o=await D1(e,n.signal,"Bilibili");if(o&&o.title&&o.title!==e){let{title:c,cnAlias:u}=o,l=s.map(async(f,p)=>(p>0&&await new Promise(m=>setTimeout(m,p*300)),this._searchOverseaRequest(c,f.appType,f.webType,"TMDB",n.signal))),d=(await Promise.all(l)).flat();return d.forEach(f=>{f._originalQuery=e,f._searchUsedTitle=c,f._tmdbCnAlias=u}),d}return[]}).catch(()=>[]):Promise.resolve([]);return(await Promise.all([i,a])).flat()}async _fetchAppSearchWithStream(e,r,n,s){if(typeof jY!="function")return null;let i=!1,a=!1,o=await jY(e,{headers:r,sniffLimit:8192,signal:s},c=>i?!0:c.includes('"goto":"recommend_tips"')||c.includes("\u6682\u65E0\u641C\u7D22\u7ED3\u679C")?(E("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}};kt();vt();dr();mn();ws();Un();ys();var ny=class extends wt{convertYoukuUrl(e){let r=e.match(/vid=([^&]+)/);return!r||!r[1]?null:`https://v.youku.com/v_show/id_${r[1]}.html`}filterYoukuSearchItem(e,r){let n=e.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(e){try{E("info",`[Youku] \u5F00\u59CB\u641C\u7D22: ${e}`);let r=encodeURIComponent(e),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 Ae(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 E("info","[Youku] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let a=typeof i.data=="string"?JSON.parse(i.data):i.data;if(!a.pageComponentList)return E("info","[Youku] \u641C\u7D22\u65E0\u7ED3\u679C"),[];let o=[];for(let c of a.pageComponentList){let u=this.filterYoukuSearchItem(c,e);u&&o.push(u)}return E("info",`[Youku] \u641C\u7D22\u627E\u5230 ${o.length} \u4E2A\u6709\u6548\u7ED3\u679C`),o}catch(r){return E("error","[Youku] \u641C\u7D22\u51FA\u9519:",r.message),[]}}async getEpisodes(e){try{E("info",`[Youku] \u83B7\u53D6\u5206\u96C6\u5217\u8868: show_id=${e}`);let r=100,n=await this._getEpisodesPage(e,1,r);if(!n||!n.videos||n.videos.length===0)return E("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);E("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(e,u,r));let c=await Promise.allSettled(o);for(let u=0;uxt(l.title,r,i)),c=i!==null?i:$t(r);if(c!==null){let l=o.filter(d=>{let f=Tt(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,E("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),p=this._processAndFormatEpisodes(d,f),m=[];for(let h of p){let y=h.link||`https://v.youku.com/v_show/id_${h.vid}.html`;m.push({name:h.episodeIndex.toString(),url:y,title:`\u3010youku\u3011 ${h.title}`})}if(m.length>0){let y={animeId:Vr(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:Br(l.year),episodeCount:m.length,rating:0,isFavorited:!0,source:"youku"};a.push(y),Bt({...y,links:m},s),O.animes.length>O.MAX_ANIMES&&Ut()}}catch(d){E("error",`[Youku] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}_processAndFormatEpisodes(e,r="variety"){return[...e].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(e,r,n){let s=e.displayName||e.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 ${e.published?.split(" ")[0]??""} ${s}`:`\u7B2C${r}\u671F ${e.published?.split(" ")[0]??""} ${s}`}return/^第\d+集/.test(s)?s:`\u7B2C${r}\u96C6 ${s}`}_extractMediaType(e,r){let n=(e||"").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(e){if(E("info","[Youku] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u4F18\u9177\u5F39\u5E55...",e),!e)return[];let n=(await this.getEpisodeDanmuSegments(e)).segmentList,s=[],i=O.youkuConcurrency,a=[...n];for(let o=0;o{let l=await Gr(u.url,Ii({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){E("error","[Youku] \u4F18\u9177\u5206\u6BB5\u6279\u91CF\u8BF7\u6C42\u5931\u8D25:",u.message)}}return rs(s),s}async getEpisodeDanmuSegments(e){if(E("info","[Youku] \u83B7\u53D6\u4F18\u9177\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e),!e)return new St({type:"youku",segmentList:[]});e.includes("youku.com/video?vid")&&(e=this.convertYoukuUrl(e));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=e.match(s),a;if(i)a=i[2].split("/").filter(Boolean),a.unshift(""),E("info","[Youku]",a);else return E("error","[Youku] Invalid URL"),[];let o=a[a.length-1].split(".")[0].slice(3);E("info",`[Youku] video_id: ${o}`);let c;try{let A=`${r}?client_id=53e6cc67237fc59a&video_id=${o}&package=com.huawei.hwvplayer.youku&ext=show`;c=await Ae(A,{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(A){return E("error","[Youku] \u8BF7\u6C42\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",A),[]}let u=typeof c.data=="string"?JSON.parse(c.data):c.data,l=u.title,d=u.duration;E("info",`[Youku] \u6807\u9898: ${l}, \u65F6\u957F: ${d}`);let f,p,m;try{let A="https://log.mmstat.com/eg.js",S="https://acs.youku.com/h5/mtop.com.youku.aplatform.weakget/1.0/?jsv=2.5.1&appKey=24679788",I=await Ae(A,{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});E("info",`[Youku] cnaRes: ${JSON.stringify(I)}`),E("info",`[Youku] cnaRes.headers: ${JSON.stringify(I.headers)}`);let R=I.headers.etag||I.headers.Etag;E("info",`[Youku] etag: ${R}`),f=R.replace(/^"|"$/g,""),E("info",`[Youku] cna: ${f}`);let w;for(;!w;)w=await Ae(S,{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});E("info",`[Youku] tkEncRes: ${JSON.stringify(w)}`),E("info",`[Youku] tkEncRes.headers: ${JSON.stringify(w.headers)}`);let N=w.headers["set-cookie"]||w.headers["Set-Cookie"];E("info",`[Youku] tkEncSetCookie: ${N}`);let k=N.match(/_m_h5_tk_enc=([^;]+)/);p=k?k[1]:null;let B=N.match(/_m_h5_tk=([^;]+)/);m=B?B[1]:null,E("info",`[Youku] _m_h5_tk_enc: ${p}`),E("info",`[Youku] _m_h5_tk: ${m}`)}catch(A){return E("error","[Youku] \u83B7\u53D6 cna \u6216 tk_enc \u5931\u8D25:",A),[]}let h=60,y=Math.floor(d/h)+1,g=[],b=async A=>{let S={ctime:Date.now(),ctype:10004,cver:"v1.0",guid:f,mat:A,mcount:1,pid:0,sver:"3.1.0",type:1,vid:o},I=JSON.stringify(S);function R(Z){let W="";for(let U=0;U255?W+=encodeURIComponent(Z[U]):W+=Z[U];return W}function w(Z){let W="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",U="",z=0,j=0;for(let J=0;J=6;)U+=W[z>>j-6&63],j-=6;for(j>0&&(U+=W[z<<6-j&63]);U.length%4!==0;)U+="=";return U}let N=w(R(I));S.msg=N,S.sign=Ms(`${N}MkmC9SoIw6xCkSKHhJ7b5D2r51kBiREr`).toString().toLowerCase();let k=JSON.stringify(S),B=Date.now(),M={jsv:"2.5.6",appKey:"24679788",t:B,sign:Ms([m.slice(0,32),B,"24679788",k].join("&")).toString().toLowerCase(),api:"mopen.youku.danmu.list",v:"1.0",type:"originaljson",dataType:"jsonp",timeout:"20000",jsonpIncPrefix:"utility"},D=Ii(M),L=`${n}?${D}`;return E("info",`[Youku] piece_url: ${L}`),{type:"youku",segment_start:A*h,segment_end:Math.min((A+1)*h,d),url:L,data:k,_m_h5_tk:m,_m_h5_tk_enc:p}},x=Array.from({length:y},(A,S)=>S);for(let A=0;A{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})}};mn();var B0n=new Zg,L0n=new ey,M0n=new ty,W0n=new ry,$0n=new ny,U0n=new Xg,L5=`LogVar Danmu API/${O.version}`,nw=class extends wt{async search(e,r=!1){if(O.useBangumiData&&!r){let n=await Ru(e,["anidb"]);if(n.length>0)return E("info",`[Dandan] Bangumi-Data \u672C\u5730\u547D\u4E2D ${n.length} \u6761\u6570\u636E\uFF08\u68C0\u7D22\u8BCD\uFF1A${e}\uFF09`),n.map(s=>{let a=(s.titles.find(o=>o&&o.includes(e))||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{E("info",`[Dandan] \u539F\u59CB\u641C\u7D22\u8BCD: ${e}`);let n=new AbortController,s=(async()=>{try{let c=await Ae(`https://api.danmaku.weeblify.app/ddp/v1?path=/v2/search/anime?keyword=${e}`,{headers:{"Content-Type":"application/json","User-Agent":L5},retries:1});if(!c||!c.data)return E("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 E("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 E("info",`[Dandan] dandanSearchresp (original): ${JSON.stringify(u)}`),E("info",`[Dandan] \u8FD4\u56DE ${u.length} \u6761\u7ED3\u679C (source: original)`),{success:!0,data:u,source:"original"}}catch(c){return E("error","[Dandan] getDandanAnimes error:",{message:c.message,name:c.name,stack:c.stack}),{success:!1,source:"original"}}})(),i=(async()=>{try{await new Promise(p=>setTimeout(p,100));let c=await D1(e,n.signal,"Dandan");if(!c||!c.title)return E("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;E("info",`[Dandan] \u4F7F\u7528\u65E5\u8BED\u539F\u540D\u901A\u8FC7 episodes \u63A5\u53E3\u8FDB\u884C\u641C\u7D22: ${u}`);let d=await Ae(`https://api.danmaku.weeblify.app/ddp/v1?path=/v2/search/episodes?anime=${encodeURIComponent(u)}`,{headers:{"Content-Type":"application/json","User-Agent":L5},signal:n.signal,retries:1});if(!d||!d.data)return E("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 E("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 E("info",`[Dandan] dandanSearchresp (tmdb): ${JSON.stringify(f)}`),E("info",`[Dandan] \u8FD4\u56DE ${f.length} \u6761\u7ED3\u679C (source: tmdb)`),{success:!0,data:f,source:"tmdb"}}catch(c){if(c.name==="AbortError")return E("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(E("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: ${e})`),!r){let c=e.replace(/(?:第\s*[0-9一二三四五六七八九十百千万]+\s*[季期部])|(?:S(?:eason)?\s*\d+)|(?:Part\s*\d+)/gi,"").trim();if(c&&c!==e)return E("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 E("error","[Dandan] getDandanAnimes error:",{message:n.message,name:n.name,stack:n.stack}),[]}}async getEpisodes(e){try{let r=await Ae(`https://api.danmaku.weeblify.app/ddp/v1?path=/v2/bangumi/${e}`,{headers:{"Content-Type":"application/json","User-Agent":L5},retries:1});if(!r||!r.data)return E("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 E("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 E("info",`[Dandan] getDandanEposides: ${JSON.stringify(r.data.bangumi.episodes)}`),{episodes:s,titles:i,relateds:a,type:o,typeDescription:c,imageUrl:d}}catch(r){return E("error","[Dandan] getDandanEposides error:",{message:r.message,name:r.name,stack:r.stack}),{episodes:[],titles:[],relateds:[],type:null,typeDescription:null,imageUrl:null}}}calculateSimilarity(e,r){if(!e||!r)return 0;let n=new Set(e.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(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return E("error","[Dandan] sourceAnimes is not a valid array"),[];e.forEach(m=>{m.title=m.animeTitle});let o=e.length>0?e[0]._tmdbCnAlias:null;B1(e,o);let c=e.length,u=new Set,l=[],d=i!==null?i:$t(r),f=e,p=!1;if(d!==null){let m=e.filter(h=>{let y=h._displayTitle||h.animeTitle,g=Tt(y).season;return g===d||d===1&&g===null});m.length>0&&(f=m,p=!0,E("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 m of f)u.add(m.animeId),l.push({...m,isRelated:!1});for(;l.length>0;){let m=l.splice(0,l.length);await Promise.all(m.map(async h=>{try{let y=await this.getEpisodes(h.animeId),g=y.episodes,b=y.titles||[],x=this.calculateSimilarity(r,h.animeTitle),A=!p;if(x>=.1&&y.relateds&&Array.isArray(y.relateds)&&A)for(let w of y.relateds){let N=Tt(w.animeTitle).season!==null;!u.has(w.animeId)&&(N||c>=25)&&(u.add(w.animeId),l.push({animeId:w.animeId,animeTitle:w.animeTitle,imageUrl:w.imageUrl,rating:w.rating||0,isRelated:!0}))}let S=[h.animeTitle,...b,...h.aliases||[]],I=!1;if(h.isRelated||h.isTmdbSource)if(d!==null){let w=null;for(let N of S){if(!N)continue;let k=$t(N);if(k!==null){w=k;break}}d>1?I=(w||1)===d:d===1&&(I=w===null||w===1)}else I=!0;else I=S.some(w=>w&&xt(w,r,d));if(!I)return;let R=[];for(let w of g){let N=w.episodeTitle&&w.episodeTitle.trim()!==""?`${w.episodeTitle}`:`\u7B2C${w.episodeNumber}\u96C6`;R.push({name:N,url:w.episodeId.toString(),title:`\u3010dandan\u3011 ${N}`})}if(R.length>0){let w=h._displayTitle||h.animeTitle,N=[...new Set([...b,...h.aliases||[]])];h.animeTitle&&h.animeTitle!==w&&!N.includes(h.animeTitle)&&N.push(h.animeTitle);let k=y.type||h.type||"tvseries",B=y.typeDescription||h.typeDescription||"TV\u52A8\u753B",M=h.startDate||(g.length>0?g[0].airDate:null),D=M?new Date(M).getFullYear():"\u672A\u77E5",L={animeId:h.animeId,bangumiId:String(h.animeId),animeTitle:`${w}(${D})\u3010${B}\u3011from dandan`,aliases:N,type:k,typeDescription:B,imageUrl:y.imageUrl||h.imageUrl,startDate:M,episodeCount:R.length,rating:h.rating||0,isFavorited:!0,source:"dandan"};a.push(L),Bt({...L,links:R},s),O.animes.length>O.MAX_ANIMES&&Ut()}}catch(y){E("error",`[Dandan] Error processing anime: ${y.message}`)}}))}return this.sortAndPushAnimesByYear(a,n),a}async getEpisodeDanmu(e,r=[]){let n=[],s={};try{let a=await Ae(`https://api.danmaku.weeblify.app/ddp/v1?path=%2Fv2%2Fcomment%2F${e}%3Ffrom%3D0%26withRelated%3Dtrue%26chConvert%3D0`,{headers:{"Content-Type":"application/json","User-Agent":L5},retries:1}).catch(o=>(E("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){E("error","[Dandan] getEpisodeDanmu error:",{message:i.message,name:i.name,stack:i.stack})}return n}async getEpisodeDanmuSegments(e){return E("info","[Dandan] \u83B7\u53D6\u5F39\u5F39play\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e),new St({type:"dandan",segmentList:[{type:"dandan",segment_start:0,segment_end:3e4,url:e}]})}async getEpisodeSegmentDanmu(e){return this.getEpisodeDanmu(e.url)}formatComments(e){return e.map(r=>r.isRealTimePulled?O.danmuSimplifiedTraditional==="simplified"&&r.m?{...r,m:zt(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:O.danmuSimplifiedTraditional==="simplified"?zt(r.m):r.m})}};kt();vt();dr();Un();mo();ys();var sw=class extends wt{async search(e){try{let r=await Ae(`${O.customSourceApiUrl}/api/v2/search/anime?keyword=${e}`,{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?(E("info","[Custom] customSourceSearchresp: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),[]):r.data.animes?(E("info",`[Custom] \u641C\u7D22\u627E\u5230 ${r.data.animes.length} \u4E2A\u6709\u6548\u7ED3\u679C`),r.data.animes):(E("info","[Custom] customSourceSearchresp: seriesData \u6216 seriesList \u4E0D\u5B58\u5728"),[])}catch(r){return E("error","[Custom] getCustomSourceAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getEpisodes(e){try{let r=await Ae(`${O.customSourceApiUrl}/api/v2/bangumi/${e}`,{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?(E("info","[Custom] getCustomSourceEposides: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),[]):!r.data.bangumi||!r.data.bangumi.episodes?(E("info",`[Custom] getCustomSourceEposides: episodes \u4E0D\u5B58\u5728. Response: ${JSON.stringify(r.data)}`),[]):(E("info",`[Custom] getCustomSourceEposides: ${JSON.stringify(r.data.bangumi.episodes)}`),r.data.bangumi.episodes)}catch(r){return E("error","[Custom] getCustomSourceEposides error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async handleAnimes(e,r,n,s=null){let i=[];if(!e||!Array.isArray(e))return E("error","[Custom] sourceAnimes is not a valid array"),[];let a=await Promise.all(e.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),Bt({...l,links:u},s),O.animes.length>O.MAX_ANIMES&&Ut()}}catch(c){E("error",`[Custom] Error processing anime: ${c.message}`)}}));return this.sortAndPushAnimesByYear(i,n),a}async getEpisodeDanmu(e){let r=[];try{let n=await Ae(`${O.customSourceApiUrl}/api/v2/comment/${e}`,{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 E("error","[Custom] fetchCustomSourceEpisodeDanmu error:",{message:n.message,name:n.name,stack:n.stack}),r}}async getEpisodeDanmuSegments(e){return E("info","[Custom] \u83B7\u53D6Custom Source\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e),new St({type:"custom",segmentList:[{type:"custom",segment_start:0,segment_end:3e4,url:e}]})}async getEpisodeSegmentDanmu(e){return this.getEpisodeDanmu(e.url)}formatComments(e){return e.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:O.danmuSimplifiedTraditional==="simplified"?zt(r.m):r.m}))}};kt();vt();dr();ws();Un();ws();var nbr=` AGFzbQEAAAABWA5gAn9/AX9gA39/fwF/YAJ/fwBgA39/fwBgAX8Bf2ABfwBgBX9/f39/AX9gBX9/f39/AGAAAX9gBH9/f38AYAR/ f39/AX9gAn5/AX9gBn9/f39/fwBgAAACXAMDd2JnGl9fd2JpbmRnZW5fb2JqZWN0X2Ryb3BfcmVmAAUDd2JnFV9fd2JpbmRnZW5f c3RyaW5nX25ldwAAA3diZxdfX3diaW5kZ2VuX2RlYnVnX3N0cmluZwACA4gBhgEEAgUBAAIGBQMFAQMBAgMCAwMCAgAGAAsABQIB @@ -1217,9 +1217,9 @@ AgICAgICAgICAgICAwMDAwMDAwMDAwMDAwMDAwQEBAQEAEGNosAAC0xOb25lU29tZQAAADIAAAAEAAAA ZjhFcnJvcnZhbGlkX3VwX3RvZXJyb3JfbGVuAAAyAAAABAAAAAQAAAA4AHsJcHJvZHVjZXJzAghsYW5ndWFnZQEEUnVzdAAMcHJv Y2Vzc2VkLWJ5AwVydXN0Yx0xLjc0LjAgKDc5ZTk3MTZjOSAyMDIzLTExLTEzKQZ3YWxydXMGMC4xOS4wDHdhc20tYmluZGdlbhIw LjIuODcgKGYwYThhZTNiOSkALA90YXJnZXRfZmVhdHVyZXMCKw9tdXRhYmxlLWdsb2JhbHMrCHNpZ24tZXh0 -`,ko=null,tw=null,rw=null,Oie=null,c4=0,jf=new Array(132).fill(void 0);jf.push(void 0,null,!0,!1);var nw=jf.length;function pst(t){let e=jf[t];return t>=132&&(jf[t]=nw,nw=t),e}function Nie(){return(rw===null||rw.byteLength===0)&&(rw=new Uint8Array(Oie.buffer)),rw}function o4(){return(tw===null||tw.byteLength===0)&&(tw=new Int32Array(Oie.buffer)),tw}function mst(t,e){return t=t>>>0,Cc(Nie().subarray(t,t+e))}function fst(t,e,r){if(r===void 0){let i=eg(t),a=e(i.length,1)>>>0;return Nie().subarray(a,a+i.length).set(i),c4=i.length,a}let n=eg(t),s=e(n.length,1)>>>0;return Nie().subarray(s,s+n.length).set(n),c4=n.length,s}function xmr(t){return t==null}function bmr(t){let e=atob(t.replace(/\s+/g,"")),r=new Uint8Array(e.length);for(let n=0;npst(n),__wbindgen_string_new:(n,s)=>{let i=mst(n,s);nw===jf.length&&jf.push(jf.length+1);let a=nw;return nw=jf[a],jf[a]=i,a},__wbindgen_debug_string:()=>{}}};return ko=(await WebAssembly.instantiate(t,e)).instance.exports,Oie=ko.memory,tw=null,rw=null,ko}function _mr(t,e){let r,n;try{let s=ko.__wbindgen_add_to_stack_pointer(-16),i=fst(t,ko.__wbindgen_malloc,ko.__wbindgen_realloc),a=c4,o=xmr(e)?0:fst(e,ko.__wbindgen_malloc,ko.__wbindgen_realloc),c=c4;ko.gateway_decrypt(s,i,a,o,c);let u=o4()[s/4+0],l=o4()[s/4+1],d=o4()[s/4+2],f=o4()[s/4+3],p=u,m=l;if(f)throw p=0,m=0,pst(d);return r=p,n=m,mst(p,m)}finally{ko.__wbindgen_add_to_stack_pointer(16),r!==void 0&&n!==void 0&&ko.__wbindgen_free(r,n,1)}}async function hst(t,e){return t=t.replace(/\s+/g,""),await Emr(),_mr(t,e)}hn();hs();var Pie=class extends wt{async search(e){try{let r="https://jadeite.migu.cn/search/v3/open-search",n={appVersion:"6.1.1.00",ct:101,isCorrectWord:1,k:e,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 Vr(r,JSON.stringify(n),{headers:s});if(!i||!i.data)return _("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})}}),_("info",`[Migu] \u641C\u7D22\u627E\u5230 ${c.length} \u4E2A\u6709\u6548\u7ED3\u679C`),c}catch(r){return _("error","[Migu] getMiguAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}extractEpId(e){let n=e.split("?")[0].split("/").filter(s=>s!=="");return n[n.length-1]||""}async getDetail(e){try{let r=await ge(`https://v3-sc.miguvideo.com/program/v4/cont/content-info/${e}/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 _("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 _("error","[Migu] getMiguDetail error:",{message:r.message,name:r.name,stack:r.stack}),{duration:0,epsID:null}}}async getEpisodes(e){try{let r=await ge(e,{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 _("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}]:(_("info","[Migu] getMiguEposides: eps \u4E0D\u5B58\u5728"),[])}}catch(r){return _("error","[Migu] getMiguEposides error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return _("error","[Migu] sourceAnimes is not a valid array"),[];let o=e.filter(l=>yt(l.name||l.title,r,i)),c=i!==null?i:$t(r);if(c!==null){let l=o.filter(d=>{let f=d.name||d.title,p=Tt(f).season;return p===c||c===1&&p===null});l.length>0&&(o=l,_("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 p of d)f.push({name:p.name,url:`https://webapi.miguvideo.com/gateway/live_barrage/videox/barrage/v2/list/${l.epsId??p.pID}/${p.pID}`,title:`\u3010migu\u3011 ${p.name}`});if(f.length>0){let p={animeId:Yr(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:Pr(l.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"migu"};a.push(p),Lt({...p,links:f},s),O.animes.length>O.MAX_ANIMES&&Ft()}}catch(d){_("error",`[Migu] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){_("info","[Migu] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u54AA\u5495\u89C6\u9891\u5F39\u5E55...",e);let r=await this.getEpisodeDanmuSegments(e);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;_("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(...h)}else _("error",`[Migu] \u83B7\u53D6\u5F39\u5E55\u6BB5\u5931\u8D25 (${p}-${m}s):`,d.reason.message)}a+ssetTimeout(l,200))}return i.length===0?(_("info",`[Migu] \u54AA\u5495\u89C6\u9891: \u8BE5\u89C6\u9891\u6682\u65E0\u5F39\u5E55\u6570\u636E (vid=${e})`),[]):(ts(i),i)}async getEpisodeDanmuSegments(e){_("info","[Migu] \u83B7\u53D6\u54AA\u5495\u89C6\u9891\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e);let r=this.extractEpId(e),n=await this.getDetail(r),s=Cg(n.duration);_("info","[Migu] itemId:",r),_("info","[Migu] durationSec:",s),_("info","[Migu] epsID:",n.epsID);let i=30,a=[];for(let o=0;o({cid:Number(r.cid),p:`${r.playtime},1,${gb(r.textcolor)},[migu]`,m:r.msg,t:r.playtime,like:r.praiseCount}))}},gst=Pie;Pt();St();ar();Is();$n();hn();hs();var sw=class extends wt{constructor(){super(),this.positionMap={1:1,4:5,5:4}}filterSohuSearchItem(e,r){if(!e.aid||!e.album_name||e.is_trailer===1||e.corner_mark&&e.corner_mark.text==="\u9884\u544A")return null;let n=e.album_name.replace("<<<","").replace(">>>",""),s=null;if(e.meta&&Array.isArray(e.meta)){for(let i of e.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(e.aid),title:n,type:s,year:e.year||null,imageUrl:e.ver_big_pic||null,episodeCount:e.total_video_count||0}}async search(e){try{_("info",`[Sohu] \u5F00\u59CB\u641C\u7D22: ${e}`);let r={key:e,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?${Ai(r)}`,i=await ge(s,{headers:n});if(!i||!i.data)return _("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 _("info","[Sohu] \u641C\u7D22\u54CD\u5E94\u4E2D\u65E0\u6570\u636E"),[];let o=[];for(let c of a.data.items){let u=this.filterSohuSearchItem(c,e);u&&o.push(u)}return _("info",`[Sohu] \u641C\u7D22\u627E\u5230 ${o.length} \u4E2A\u6709\u6548\u7ED3\u679C`),o}catch(r){return _("error","[Sohu] \u641C\u7D22\u51FA\u9519:",r.message),[]}}async getPlaylistData(e){let r={playlistid:e,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?${Ai(r)}`,i=await ge(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 _("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(e){try{_("info",`[Sohu] \u83B7\u53D6\u5206\u96C6\u5217\u8868: media_id=${e}`);let r=await this.getPlaylistData(e);if(!r)return _("info","[Sohu] \u5206\u96C6\u54CD\u5E94\u4E3A\u7A7A"),[];let n=r.videos||[];if(!n||n.length===0)return _("warn",`[Sohu] \u641C\u72D0\u89C6\u9891: \u672A\u627E\u5230\u5206\u96C6\u5217\u8868 (media_id=${e})`),[];let s=[];for(let i=0;iyt(l.title,r,i)),c=i!==null?i:$t(r);if(c!==null){let l=o.filter(d=>{let f=Tt(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,_("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 p=0;p0){let m={animeId:Yr(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:Pr(l.year||new Date().getFullYear()),episodeCount:f.length,rating:0,isFavorited:!0,source:"sohu"};a.push(m),Lt({...m,links:f},s),O.animes.length>O.MAX_ANIMES&&Ft()}}catch(d){_("error",`[Sohu] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDuration(e,r){if(!e)return 0;try{let n=await this.getPlaylistData(e),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 _("warn",`[Sohu] \u83B7\u53D6\u771F\u5B9E\u65F6\u957F\u5931\u8D25: ${n.message}`),0}}async extractVidAndAid(e){let r,n="0",s=await ge(e,{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(e){_("info","[Sohu] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u641C\u72D0\u89C6\u9891\u5F39\u5E55...",e);let r=await this.getEpisodeDanmuSegments(e);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;_("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(...h);else if(p>600)break}else _("error",`[Sohu] \u83B7\u53D6\u5F39\u5E55\u6BB5\u5931\u8D25 (${p}-${m}s):`,d.reason.message)}a+ssetTimeout(l,200))}return i.length===0?(_("info",`[Sohu] \u641C\u72D0\u89C6\u9891: \u8BE5\u89C6\u9891\u6682\u65E0\u5F39\u5E55\u6570\u636E (vid=${e})`),[]):(ts(i),i)}async getDanmuSegment(e){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 ge(e.url,{headers:r,timeout:1e4});if(!n||!n.data)return _("error",`[Sohu] \u641C\u72D0\u89C6\u9891: \u5F39\u5E55\u6BB5\u54CD\u5E94\u4E3A\u7A7A (${e.segment_start}-${e.segment_end}s)`),[];try{let i=(typeof n.data=="string"?JSON.parse(n.data):n.data).info?.comments||[];return i&&i.length>0&&_("info",`[Sohu] \u641C\u72D0\u89C6\u9891: \u83B7\u53D6\u5230 ${i.length} \u6761\u5F39\u5E55 (${e.segment_start}-${e.segment_end}s)`),i||[]}catch(s){return _("error",`[Sohu] \u641C\u72D0\u89C6\u9891: \u89E3\u6790\u5F39\u5E55\u54CD\u5E94\u5931\u8D25: ${s.message}`),[]}}catch(r){return _("error",`[Sohu] \u641C\u72D0\u89C6\u9891: \u83B7\u53D6\u5F39\u5E55\u6BB5\u5931\u8D25 (vid=${vid}, ${start}-${end}s): ${r.message}`),[]}}async getEpisodeDanmuSegments(e){_("info","[Sohu] \u83B7\u53D6\u641C\u72D0\u89C6\u9891\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e);let{vid:r,aid:n}=await this.extractVidAndAid(e),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(e){try{let r=await ge(e.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 _("error","[Sohu] \u8BF7\u6C42\u5206\u7247\u5F39\u5E55\u5931\u8D25:",r),[]}}formatComments(e){return e.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 _("error",`[Sohu] \u683C\u5F0F\u5316\u5F39\u5E55\u5931\u8D25: ${n.message}, \u5F39\u5E55\u6570\u636E:`,r),null}}).filter(r=>r!==null)}};Pt();St();ar();Is();$n();hn();hs();var Ast={tv:"\u7535\u89C6\u5267",movie:"\u7535\u5F71",cartoon:"\u52A8\u6F2B",comic:"\u52A8\u6F2B"},iw=class extends wt{constructor(){super(),this.positionMap={4:1,3:4,1:5,2:1}}filterLeshiSearchItem(e,r){if(!e.pid||!e.title)return null;let n=e.title,s=Ast[e.type]||"\u7535\u89C6\u5267";return{mediaId:String(e.pid),title:n,type:s,year:e.year||null,imageUrl:e.imageUrl||null,episodeCount:e.episodeCount||0}}async search(e){try{_("info",`[Leshi] \u5F00\u59CB\u641C\u7D22: ${e}`);let r={wd:e,from:"pc",ref:"click",click_area:"search_button",query:e,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?${Ai(r)}`,i=await ge(s,{headers:n,timeout:15e3});if(!i||!i.data)return _("info","[Leshi] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let a=i.data;_("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);_("info",`[Leshi] \u4ECEHTML\u4E2D\u627E\u5230 ${l.length} \u4E2A data-info \u5757`);for(let d of l)try{let f=d[1];_("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 p=JSON.parse(f);_("info",`[Leshi] \u6210\u529F\u89E3\u6790 data-info\uFF0Cpid=${p.pid}, type=${p.type}`);let m=p.pid||"",h=p.type||"",A=p.total||"0";if(!m)continue;let g=d.index,b=[`
+`,Qo=null,iw=null,aw=null,Doe=null,W5=0,ap=new Array(132).fill(void 0);ap.push(void 0,null,!0,!1);var ow=ap.length;function got(t){let e=ap[t];return t>=132&&(ap[t]=ow,ow=t),e}function Poe(){return(aw===null||aw.byteLength===0)&&(aw=new Uint8Array(Doe.buffer)),aw}function M5(){return(iw===null||iw.byteLength===0)&&(iw=new Int32Array(Doe.buffer)),iw}function yot(t,e){return t=t>>>0,Lc(Poe().subarray(t,t+e))}function hot(t,e,r){if(r===void 0){let i=Tg(t),a=e(i.length,1)>>>0;return Poe().subarray(a,a+i.length).set(i),W5=i.length,a}let n=Tg(t),s=e(n.length,1)>>>0;return Poe().subarray(s,s+n.length).set(n),W5=n.length,s}function sbr(t){return t==null}function ibr(t){let e=atob(t.replace(/\s+/g,"")),r=new Uint8Array(e.length);for(let n=0;ngot(n),__wbindgen_string_new:(n,s)=>{let i=yot(n,s);ow===ap.length&&ap.push(ap.length+1);let a=ow;return ow=ap[a],ap[a]=i,a},__wbindgen_debug_string:()=>{}}};return Qo=(await WebAssembly.instantiate(t,e)).instance.exports,Doe=Qo.memory,iw=null,aw=null,Qo}function obr(t,e){let r,n;try{let s=Qo.__wbindgen_add_to_stack_pointer(-16),i=hot(t,Qo.__wbindgen_malloc,Qo.__wbindgen_realloc),a=W5,o=sbr(e)?0:hot(e,Qo.__wbindgen_malloc,Qo.__wbindgen_realloc),c=W5;Qo.gateway_decrypt(s,i,a,o,c);let u=M5()[s/4+0],l=M5()[s/4+1],d=M5()[s/4+2],f=M5()[s/4+3],p=u,m=l;if(f)throw p=0,m=0,got(d);return r=p,n=m,yot(p,m)}finally{Qo.__wbindgen_add_to_stack_pointer(16),r!==void 0&&n!==void 0&&Qo.__wbindgen_free(r,n,1)}}async function Aot(t,e){return t=t.replace(/\s+/g,""),await abr(),obr(t,e)}mn();ys();var Boe=class extends wt{async search(e){try{let r="https://jadeite.migu.cn/search/v3/open-search",n={appVersion:"6.1.1.00",ct:101,isCorrectWord:1,k:e,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 Gr(r,JSON.stringify(n),{headers:s});if(!i||!i.data)return E("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})}}),E("info",`[Migu] \u641C\u7D22\u627E\u5230 ${c.length} \u4E2A\u6709\u6548\u7ED3\u679C`),c}catch(r){return E("error","[Migu] getMiguAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}extractEpId(e){let n=e.split("?")[0].split("/").filter(s=>s!=="");return n[n.length-1]||""}async getDetail(e){try{let r=await Ae(`https://v3-sc.miguvideo.com/program/v4/cont/content-info/${e}/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 E("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 E("error","[Migu] getMiguDetail error:",{message:r.message,name:r.name,stack:r.stack}),{duration:0,epsID:null}}}async getEpisodes(e){try{let r=await Ae(e,{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 E("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}]:(E("info","[Migu] getMiguEposides: eps \u4E0D\u5B58\u5728"),[])}}catch(r){return E("error","[Migu] getMiguEposides error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return E("error","[Migu] sourceAnimes is not a valid array"),[];let o=e.filter(l=>xt(l.name||l.title,r,i)),c=i!==null?i:$t(r);if(c!==null){let l=o.filter(d=>{let f=d.name||d.title,p=Tt(f).season;return p===c||c===1&&p===null});l.length>0&&(o=l,E("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 p of d)f.push({name:p.name,url:`https://webapi.miguvideo.com/gateway/live_barrage/videox/barrage/v2/list/${l.epsId??p.pID}/${p.pID}`,title:`\u3010migu\u3011 ${p.name}`});if(f.length>0){let p={animeId:Vr(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:Br(l.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"migu"};a.push(p),Bt({...p,links:f},s),O.animes.length>O.MAX_ANIMES&&Ut()}}catch(d){E("error",`[Migu] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){E("info","[Migu] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u54AA\u5495\u89C6\u9891\u5F39\u5E55...",e);let r=await this.getEpisodeDanmuSegments(e);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;E("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(...h)}else E("error",`[Migu] \u83B7\u53D6\u5F39\u5E55\u6BB5\u5931\u8D25 (${p}-${m}s):`,d.reason.message)}a+ssetTimeout(l,200))}return i.length===0?(E("info",`[Migu] \u54AA\u5495\u89C6\u9891: \u8BE5\u89C6\u9891\u6682\u65E0\u5F39\u5E55\u6570\u636E (vid=${e})`),[]):(rs(i),i)}async getEpisodeDanmuSegments(e){E("info","[Migu] \u83B7\u53D6\u54AA\u5495\u89C6\u9891\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e);let r=this.extractEpId(e),n=await this.getDetail(r),s=Yg(n.duration);E("info","[Migu] itemId:",r),E("info","[Migu] durationSec:",s),E("info","[Migu] epsID:",n.epsID);let i=30,a=[];for(let o=0;o({cid:Number(r.cid),p:`${r.playtime},1,${Jb(r.textcolor)},[migu]`,m:r.msg,t:r.playtime,like:r.praiseCount}))}},xot=Boe;kt();vt();dr();ws();Un();mn();ys();var cw=class extends wt{constructor(){super(),this.positionMap={1:1,4:5,5:4}}filterSohuSearchItem(e,r){if(!e.aid||!e.album_name||e.is_trailer===1||e.corner_mark&&e.corner_mark.text==="\u9884\u544A")return null;let n=e.album_name.replace("<<<","").replace(">>>",""),s=null;if(e.meta&&Array.isArray(e.meta)){for(let i of e.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(e.aid),title:n,type:s,year:e.year||null,imageUrl:e.ver_big_pic||null,episodeCount:e.total_video_count||0}}async search(e){try{E("info",`[Sohu] \u5F00\u59CB\u641C\u7D22: ${e}`);let r={key:e,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?${Ii(r)}`,i=await Ae(s,{headers:n});if(!i||!i.data)return E("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 E("info","[Sohu] \u641C\u7D22\u54CD\u5E94\u4E2D\u65E0\u6570\u636E"),[];let o=[];for(let c of a.data.items){let u=this.filterSohuSearchItem(c,e);u&&o.push(u)}return E("info",`[Sohu] \u641C\u7D22\u627E\u5230 ${o.length} \u4E2A\u6709\u6548\u7ED3\u679C`),o}catch(r){return E("error","[Sohu] \u641C\u7D22\u51FA\u9519:",r.message),[]}}async getPlaylistData(e){let r={playlistid:e,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?${Ii(r)}`,i=await Ae(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 E("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(e){try{E("info",`[Sohu] \u83B7\u53D6\u5206\u96C6\u5217\u8868: media_id=${e}`);let r=await this.getPlaylistData(e);if(!r)return E("info","[Sohu] \u5206\u96C6\u54CD\u5E94\u4E3A\u7A7A"),[];let n=r.videos||[];if(!n||n.length===0)return E("warn",`[Sohu] \u641C\u72D0\u89C6\u9891: \u672A\u627E\u5230\u5206\u96C6\u5217\u8868 (media_id=${e})`),[];let s=[];for(let i=0;ixt(l.title,r,i)),c=i!==null?i:$t(r);if(c!==null){let l=o.filter(d=>{let f=Tt(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,E("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 p=0;p0){let m={animeId:Vr(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:Br(l.year||new Date().getFullYear()),episodeCount:f.length,rating:0,isFavorited:!0,source:"sohu"};a.push(m),Bt({...m,links:f},s),O.animes.length>O.MAX_ANIMES&&Ut()}}catch(d){E("error",`[Sohu] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDuration(e,r){if(!e)return 0;try{let n=await this.getPlaylistData(e),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 E("warn",`[Sohu] \u83B7\u53D6\u771F\u5B9E\u65F6\u957F\u5931\u8D25: ${n.message}`),0}}async extractVidAndAid(e){let r,n="0",s=await Ae(e,{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(e){E("info","[Sohu] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u641C\u72D0\u89C6\u9891\u5F39\u5E55...",e);let r=await this.getEpisodeDanmuSegments(e);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;E("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(...h);else if(p>600)break}else E("error",`[Sohu] \u83B7\u53D6\u5F39\u5E55\u6BB5\u5931\u8D25 (${p}-${m}s):`,d.reason.message)}a+ssetTimeout(l,200))}return i.length===0?(E("info",`[Sohu] \u641C\u72D0\u89C6\u9891: \u8BE5\u89C6\u9891\u6682\u65E0\u5F39\u5E55\u6570\u636E (vid=${e})`),[]):(rs(i),i)}async getDanmuSegment(e){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 Ae(e.url,{headers:r,timeout:1e4});if(!n||!n.data)return E("error",`[Sohu] \u641C\u72D0\u89C6\u9891: \u5F39\u5E55\u6BB5\u54CD\u5E94\u4E3A\u7A7A (${e.segment_start}-${e.segment_end}s)`),[];try{let i=(typeof n.data=="string"?JSON.parse(n.data):n.data).info?.comments||[];return i&&i.length>0&&E("info",`[Sohu] \u641C\u72D0\u89C6\u9891: \u83B7\u53D6\u5230 ${i.length} \u6761\u5F39\u5E55 (${e.segment_start}-${e.segment_end}s)`),i||[]}catch(s){return E("error",`[Sohu] \u641C\u72D0\u89C6\u9891: \u89E3\u6790\u5F39\u5E55\u54CD\u5E94\u5931\u8D25: ${s.message}`),[]}}catch(r){return E("error",`[Sohu] \u641C\u72D0\u89C6\u9891: \u83B7\u53D6\u5F39\u5E55\u6BB5\u5931\u8D25 (vid=${vid}, ${start}-${end}s): ${r.message}`),[]}}async getEpisodeDanmuSegments(e){E("info","[Sohu] \u83B7\u53D6\u641C\u72D0\u89C6\u9891\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e);let{vid:r,aid:n}=await this.extractVidAndAid(e),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(e){try{let r=await Ae(e.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 E("error","[Sohu] \u8BF7\u6C42\u5206\u7247\u5F39\u5E55\u5931\u8D25:",r),[]}}formatComments(e){return e.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 E("error",`[Sohu] \u683C\u5F0F\u5316\u5F39\u5E55\u5931\u8D25: ${n.message}, \u5F39\u5E55\u6570\u636E:`,r),null}}).filter(r=>r!==null)}};kt();vt();dr();ws();Un();mn();ys();var bot={tv:"\u7535\u89C6\u5267",movie:"\u7535\u5F71",cartoon:"\u52A8\u6F2B",comic:"\u52A8\u6F2B"},uw=class extends wt{constructor(){super(),this.positionMap={4:1,3:4,1:5,2:1}}filterLeshiSearchItem(e,r){if(!e.pid||!e.title)return null;let n=e.title,s=bot[e.type]||"\u7535\u89C6\u5267";return{mediaId:String(e.pid),title:n,type:s,year:e.year||null,imageUrl:e.imageUrl||null,episodeCount:e.episodeCount||0}}async search(e){try{E("info",`[Leshi] \u5F00\u59CB\u641C\u7D22: ${e}`);let r={wd:e,from:"pc",ref:"click",click_area:"search_button",query:e,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?${Ii(r)}`,i=await Ae(s,{headers:n,timeout:15e3});if(!i||!i.data)return E("info","[Leshi] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let a=i.data;E("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);E("info",`[Leshi] \u4ECEHTML\u4E2D\u627E\u5230 ${l.length} \u4E2A data-info \u5757`);for(let d of l)try{let f=d[1];E("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 p=JSON.parse(f);E("info",`[Leshi] \u6210\u529F\u89E3\u6790 data-info\uFF0Cpid=${p.pid}, type=${p.type}`);let m=p.pid||"",h=p.type||"",y=p.total||"0";if(!m)continue;let g=d.index,b=[`
`,` -`,""],y=-1;for(let B of b){let Z=a.indexOf(B,g);if(Z!==-1){y=Z;break}}if(y===-1){let B=a.indexOf('
[\s\S]*?]*title="([^"]*)"[^>]*>/.exec(x);if(C&&C[1]&&(v=C[1].trim()),!v&&p.keyWord){let B=/(.*?)(?:\d{4})?(?:电影|电视剧|综艺)?$/.exec(p.keyWord);B&&B[1]&&(v=B[1].replace(/[^\u4e00-\u9fa5a-zA-Z0-9]/g,"").trim())}if(!v){let B=/]*title="([^"]*?)[^0-9\u4e00-\u9fa5][^"]*"/.exec(x);B&&B[1]&&(v=B[1].trim())}v||_("info","[Leshi] \u672A\u627E\u5230\u6807\u9898\uFF0C\u5C1D\u8BD5\u4ECE\u5176\u4ED6\u6765\u6E90\u83B7\u53D6");let R=/]*(?:src|data-src|alt)="([^"]+)"/.exec(x),w=R?R[1]:"",N=null,P=/年份:<\/b>.*?>(\d{4})<\/a>/.exec(x);P||(P=/ä¸Šæ˜ æ—¶é—´ï¼š<\/b>.*?>(\d{4})<\/a>/.exec(x)),P||(P=/_y(\d{4})_/.exec(x)),P||(P=/(\d{4})/.exec(p.keyWord||"")),P&&(N=parseInt(P[1]));let L=Ast[h]||"\u7535\u89C6\u5267",M=A&&/^\d+$/.test(A)?parseInt(A):0,k={mediaId:m,title:v,type:L,year:N,imageUrl:w&&w.startsWith("http")?w:w?`https:${w}`:null,episodeCount:M};o.push(k),_("info",`[Leshi] \u89E3\u6790\u6210\u529F - ${v} (pid=${m}, type=${L}, episodes=${M})`)}catch(f){_("warn",`[Leshi] \u89E3\u6790\u641C\u7D22\u7ED3\u679C\u9879\u5931\u8D25: ${f}`);continue}if(o.length>0){_("info",`[Leshi] \u7F51\u7EDC\u641C\u7D22 '${e}' \u5B8C\u6210\uFF0C\u627E\u5230 ${o.length} \u4E2A\u6709\u6548\u7ED3\u679C\u3002`),_("info","[Leshi] \u641C\u7D22\u7ED3\u679C\u5217\u8868:");for(let d of o)_("info",`[Leshi] - ${d.title} (ID: ${d.mediaId}, \u7C7B\u578B: ${d.type}, \u5E74\u4EFD: ${d.year})`)}else _("info",`[Leshi] \u7F51\u7EDC\u641C\u7D22 '${e}' \u5B8C\u6210\uFF0C\u627E\u5230 0 \u4E2A\u7ED3\u679C\u3002`);return o}catch(r){return _("error","[Leshi] \u641C\u7D22\u51FA\u9519:",r.message),[]}}async getEpisodes(e){try{_("info",`[Leshi] \u83B7\u53D6\u5206\u96C6\u5217\u8868: media_id=${e}`);let r=[`https://www.le.com/tv/${e}.html`,`https://www.le.com/comic/${e}.html`,`https://www.le.com/playlet/${e}.html`,`https://www.le.com/movie/${e}.html`],n=null;for(let l of r)try{let d=await ge(l,{timeout:1e4});if(d&&d.data&&d.status===200){n=d.data,_("info",`[Leshi] \u6210\u529F\u83B7\u53D6\u9875\u9762: ${l}`);break}}catch(d){_("info",`[Leshi] \u5C1D\u8BD5URL\u5931\u8D25 ${l}: ${d}`);continue}if(!n)return _("error",`[Leshi] \u65E0\u6CD5\u83B7\u53D6\u4F5C\u54C1\u9875\u9762: media_id=${e}`),[];let s=/
[\s\S]*?<\/div>\s*<\/div>\s*<\/div>/.exec(n);if(s)return _("info","[Leshi] \u627E\u5230\u56FE\u6587\u9009\u96C6\u5BB9\u5668"),this.parseEpisodesFromHtml(s[0],e);let i=/
[\s\S]*?<\/div>\s*<\/div>\s*<\/div>/.exec(n);if(i)return _("info","[Leshi] \u627E\u5230\u6570\u5B57\u9009\u96C6\u5BB9\u5668"),this.parseEpisodesFromHtml(i[0],e);_("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?(_("info",`[Leshi] \u4ECEHTML\u5185\u5BB9\u4E2D\u5339\u914D\u5230 ${u.length} \u4E2A\u5267\u96C6\u94FE\u63A5`),u):[]}catch(r){return _("error","[Leshi] \u83B7\u53D6\u5206\u96C6\u51FA\u9519:",r.message),[]}}parseEpisodesFromHtml(e,r){try{let n=/
]*>[\s\S]*?<\/div>/g,s=e.match(n);if(!s||s.length===0){_("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=e.match(a);if(!o||o.length===0){_("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=e.match(c);return!u||u.length===0?(_("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?(_("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 _("error",`[Leshi] \u89E3\u6790\u5267\u96C6HTML\u5931\u8D25: ${n.message}`),[]}}extractEpisodes(e,r){let n=[];for(let s of e)try{let i=/]+href="(\/\/www\.le\.com\/ptv\/vplay\/(\d+)\.html)"[^>]*>/.exec(s);if(!i){_("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 p=/]*title="([^"]*)"[^>]*>[\s\S]*?
/.exec(s)||/
[\s\S]*?]*title="([^"]*)"/.exec(s);if(p&&p[1])u=p[1].trim();else{let m=/
]*>([^<]*)/.exec(s);if(m&&m[1])u=m[1].trim();else{let h=/]*title="[^"]*"[^>]*>([^<]*)/.exec(s);h&&h[1]&&(u=h[1].trim())}}}if(!u){let p=/第(\d+)集|(\d+)(?:\s*预告)?/.exec(s);p?u=`\u7B2C${p[1]||p[2]}\u96C6`:u=`\u7B2C${n.length+1}\u96C6`}if(/预告|Preview|preview/.test(u)){_("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){_("warn",`[Leshi] \u89E3\u6790\u5355\u4E2A\u5267\u96C6\u5931\u8D25: ${i.message}`);continue}return _("info",`[Leshi] \u6210\u529F\u89E3\u6790\u5267\u96C6\u5217\u8868: media_id=${r}, \u5171 ${n.length} \u96C6`),n}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return _("error","[Leshi] sourceAnimes is not a valid array"),[];let o=e.filter(l=>yt(l.title,r,i)),c=i!==null?i:$t(r);if(c!==null){let l=o.filter(d=>{let f=Tt(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,_("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 p=0;p0){let m={animeId:Yr(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:Pr(l.year||new Date().getFullYear()),episodeCount:f.length,rating:0,isFavorited:!0,source:"leshi"};a.push(m),Lt({...m,links:f},s),O.animes.length>O.MAX_ANIMES&&Ft()}}catch(d){_("error",`[Leshi] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){_("info","[Leshi] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u4E50\u89C6\u7F51\u5F39\u5E55...",e);let r=await this.getEpisodeDanmuSegments(e);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;_("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(...h);else if(p>600)break}else _("error",`[Leshi] \u83B7\u53D6\u5F39\u5E55\u6BB5\u5931\u8D25 (${p}-${m}s):`,d.reason.message)}a+ssetTimeout(l,200))}return i.length===0?(_("info",`[Leshi] \u4E50\u89C6\u7F51: \u8BE5\u89C6\u9891\u6682\u65E0\u5F39\u5E55\u6570\u636E (vid=${e})`),[]):(ts(i),i)}async getDanmuSegment(e){try{let r=await ge(e.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 _("error","[Leshi] \u8BF7\u6C42\u5206\u7247\u5F39\u5E55\u5931\u8D25:",r),[]}}async getEpisodeDanmuSegments(e){_("info","[Leshi] \u83B7\u53D6\u4E50\u89C6\u7F51\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e);let r=e,n=e.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 _("error",`[Leshi] \u683C\u5F0F\u5316\u5F39\u5E55\u5931\u8D25: ${n.message}, \u5F39\u5E55\u6570\u636E:`,r),null}}).filter(r=>r!==null)}};Pt();St();ar();Is();$n();hn();hs();var Die=class extends wt{async search(e){try{let r=`https://m.ixigua.com/s/${e}`,s=(await ge(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+)"/),p=f?`https://m.ixigua.com${f[1]}`:"",m=d.match(/

[\s\S]*?title="([^"]+)"/),h=m?m[1]:"",A=d.match(/([^<]+\/[^<]+\/\d{4})<\/p>/),y="",x="";if(b){let v=b[1].split("/");y=v[0]||"",x=v[2]||""}p&&h&&i.push({name:h,type:y,year:x,img:g,url:p})})}else return _("info","[Xigua] xiguaSearchresp: \u76F8\u5173\u89C6\u9891\u7684section \u4E0D\u5B58\u5728"),[];return _("info",`[Xigua] \u641C\u7D22\u627E\u5230 ${i.length} \u4E2A\u6709\u6548\u7ED3\u679C`),i}catch(r){return _("error","[Xigua] getXiguaAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getDetail(e){try{let n=`https://m.ixigua.com/video/${e.split("/").pop()}`,s=await ge(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 _("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 _("error","[Xigua] getXiguaDetail error:",{message:r.message,name:r.name,stack:r.stack}),0}}async getEpisodes(e){try{let r=`https://m.ixigua.com/video/${e}`,n=await ge(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 _("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){_("error","[Xigua] \u89E3\u6790episodes_list\u5931\u8D25:",i)}else return _("info","[Xigua] getXiguaEposides: episodes_list \u4E0D\u5B58\u5728"),[]}catch(r){return _("error","[Xigua] getXiguaEposides error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return _("error","[Xigua] sourceAnimes is not a valid array"),[];let o=e.filter(l=>yt(l.name,r,i)),c=i!==null?i:$t(r);if(c!==null){let l=o.filter(d=>{let f=Tt(d.name).season;return f===c||c===1&&f===null});l.length>0&&(o=l,_("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),p=[];for(let m of f){let h=m.title;p.push({name:h,url:m.url,title:`\u3010xigua\u3011 ${h}`})}if(p.length>0){let m={animeId:Yr(d),bangumiId:String(d),animeTitle:`${l.name}(${l.year})\u3010${l.type}\u3011from xigua`,type:l.type,typeDescription:l.type,imageUrl:l.img,startDate:Pr(l.year),episodeCount:p.length,rating:0,isFavorited:!0,source:"xigua"};a.push(m),Lt({...m,links:p},s),O.animes.length>O.MAX_ANIMES&&Ft()}}catch(d){_("error",`[Xigua] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){_("info","[Xigua] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u897F\u74DC\u89C6\u9891\u5F39\u5E55...",e);let r=await this.getEpisodeDanmuSegments(e);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;_("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(...h)}else _("error",`[Xigua] \u83B7\u53D6\u5F39\u5E55\u6BB5\u5931\u8D25 (${p}-${m}s):`,d.reason.message)}a+ssetTimeout(l,200))}return i.length===0?(_("info",`[Xigua] \u897F\u74DC\u89C6\u9891: \u8BE5\u89C6\u9891\u6682\u65E0\u5F39\u5E55\u6570\u636E (vid=${e})`),[]):(ts(i),i)}async getEpisodeDanmuSegments(e){_("info","[Xigua] \u83B7\u53D6\u897F\u74DC\u89C6\u9891\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e);let r=e.split("/").pop(),n=await this.getDetail(e)*1e3;_("info","[Xigua] itemId:",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)}))}},yst=Die;Pt();St();ar();Is();$n();hn();hs();var kie=class extends wt{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(e,r){let n=Date.now(),s=Ai(r,!1),i=`os:Android|version:5.8.00|action:${e}|time:${n}|appToken:|privateKey:e1be6b4cf4021b3d181170d1879a530a9e4130b69032144d5568abfd6cd6c1c2|data:${s}&`;return{channel:"1000",data:r,deviceNum:"853BDD7A1DC011F1C341455071C03AEB",deviceType:0,jsonSign:0,os:"Android",sign:Ls(i),sourceVersion:0,terminalType:"APP",thirdStatus:0,time:n,version:"5.8.00",visitorStatus:0}}extractByRegex(e){let r=e.match(/\/video\/([a-f0-9]+)\.html/i),n=e.match(/[?&]uuid=([a-f0-9]+)/i);return{vodUuid:r?r[1]:null,uuid:n?n[1]:null,success:!!(r&&n)}}async search(e){try{let r="/searchApi/search/getAllSearchResult4820.action",n=`${this.domain}${r}`,s={keyWord:e},i=await Vr(n,JSON.stringify(this.getPlayload(r,s)),{headers:this.headers});if(!i||!i.data)return _("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 _("info",`[Maiduidui] \u641C\u7D22\u627E\u5230 ${o.length} \u4E2A\u6709\u6548\u7ED3\u679C`),o}catch(r){return _("error","[Maiduidui] getMaiduiduiAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getDetail(e){try{let r=this.extractByRegex(e),n=r.uuid,s=r.vodUuid,i="/api/vod/listVodSactions.action",a=`${this.domain}${i}`,o={hasIntroduction:0,vodUuid:s},c=await Vr(a,JSON.stringify(this.getPlayload(i,o)),{headers:this.headers});if(!c||!c.data)return _("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 _("error","[Maiduidui] getMaiduiduiDetail error:",{message:r.message,name:r.name,stack:r.stack}),0}}async getEpisodes(e){try{let r="/api/vod/listVodSactions.action",n=`${this.domain}${r}`,s={hasIntroduction:0,vodUuid:e},i=await Vr(n,JSON.stringify(this.getPlayload(r,s)),{headers:this.headers});if(!i||!i.data)return _("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 _("error","[Maiduidui] getMaiduiduiEposides error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return _("error","[Maiduidui] sourceAnimes is not a valid array"),[];let o=e.filter(l=>yt(l.name,r,i)),c=i!==null?i:$t(r);if(c!==null){let l=o.filter(d=>{let f=Tt(d.name).season;return f===c||c===1&&f===null});l.length>0&&(o=l,_("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 p of d){let m=p.title;f.push({name:m,url:`https://www.mddcloud.com.cn/video/${l.url}.html?uuid=${p.episodeId}`,title:`\u3010maiduidui\u3011 ${m}`})}if(f.length>0){let p={animeId:Yr(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:Pr(l.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"maiduidui"};a.push(p),Lt({...p,links:f},s),O.animes.length>O.MAX_ANIMES&&Ft()}}catch(d){_("error",`[Maiduidui] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){_("info","[Maiduidui] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u57CB\u5806\u5806\u5F39\u5E55...",e);let r=await this.getEpisodeDanmuSegments(e);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;_("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(...h)}else _("error",`[Maiduidui] \u83B7\u53D6\u5F39\u5E55\u6BB5\u5931\u8D25 (${p}-${m}s):`,d.reason.message)}a+ssetTimeout(l,200))}return i.length===0?(_("info",`[Maiduidui] \u57CB\u5806\u5806: \u8BE5\u89C6\u9891\u6682\u65E0\u5F39\u5E55\u6570\u636E (vid=${e})`),[]):(ts(i),i)}async getEpisodeDanmuSegments(e){_("info","[Maiduidui] \u83B7\u53D6\u57CB\u5806\u5806\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e);let n=this.extractByRegex(e).uuid,s=await this.getDetail(e);_("info","[Maiduidui] uuid:",n),_("info","[Maiduidui] duration:",s);let i=60,a=[];for(let o=0;o{u.push(...f.barrageList)}),u}catch(r){return _("error","[Maiduidui] \u8BF7\u6C42\u5206\u7247\u5F39\u5E55\u5931\u8D25:",r),[]}}formatComments(e){return e.map(r=>({cid:Number(r.uuid),p:`${r.times.toFixed(2)},1,${gb(r.color.replace("#",""))},[maiduidui]`,m:r.content,t:r.times}))}},xst=kie;St();ar();Is();$n();hn();no();Pt();Pt();St();Is();ar();var Smr="https://www.yfsp.tv/",vmr="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0 Safari/537.36",Cmr=60*1e3;function aw(t,e,r){if(t==null)return r;let n=e.split("."),s=t;for(let i=0;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 _("info",`[Aiyifan] \u641C\u7D22\u5B8C\u6210\uFF0C\u627E\u5230 ${s.length} \u4E2A\u7ED3\u679C`),s}async getEpisodes(e){_("info",`[Aiyifan] \u83B7\u53D6\u5267\u96C6\u8BE6\u60C5: ${e}`);let r=await this.getPlaylist(e);if(!r.length)return _("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}/${e}?id=${s.key}`}));return _("info",`[Aiyifan] \u83B7\u53D6\u5230 ${n.length} \u4E2A\u5267\u96C6`),n}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return _("error","[Aiyifan] sourceAnimes is not a valid array"),[];let o=e.filter(l=>yt(l.title,r,i)),c=i!==null?i:$t(r);if(c!==null){let l=o.filter(d=>{let f=Tt(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,_("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){_("info",`[Aiyifan] ${l.title} \u65E0\u5206\u96C6\uFF0C\u8DF3\u8FC7`);return}let f=d.map((h,A)=>({name:h.title||`${A+1}`,url:h.link,title:`\u3010aiyifan\u3011 ${h.title}`}));if(f.length===0)return;let m={animeId:Yr(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:Pr(l.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"aiyifan"};a.push(m),Lt({...m,links:f},s),O.animes.length>O.MAX_ANIMES&&Ft()}catch(d){_("error",`[Aiyifan] \u5904\u7406 ${l.title} \u5931\u8D25:`,d.message)}});return await Promise.all(u),this.sortAndPushAnimesByYear(a,n),a}async getEpisodeDanmu(e){_("info",`[Aiyifan] \u83B7\u53D6\u5F39\u5E55: ${e}`);let r=this.extractEpisodeRequestKey(e),n=this.inflightDanmuRequests.get(r);if(n)return _("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 _("error","[Aiyifan] \u83B7\u53D6\u89C6\u9891\u4FE1\u606F\u5931\u8D25"),[];let o=this.extractUniqueKey(a);if(!o)return _("error","[Aiyifan] \u672A\u83B7\u53D6\u5230uniqueKey"),[];let c=await this.fetchBarrage(o);return c.length===0?(_("info","[Aiyifan] \u672A\u83B7\u53D6\u5230\u5F39\u5E55"),[]):(c.sort((u,l)=>(u.second||0)-(l.second||0)),_("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(e){let r=await this.getEpisodeDanmu(e),n=[{type:"aiyifan",segment_start:0,segment_end:Math.max(...r.map(s=>s.second||0),0),url:`${this.DANMU_API}?uniqueKey=${e}`}];return{type:"aiyifan",duration:Math.max(...r.map(s=>s.second||0),0),segmentList:n}}async getEpisodeSegmentDanmu(e){let r=e.url?.split("uniqueKey=")[1];return r?await this.getEpisodeDanmu(r):[]}formatComments(e){return e.map(r=>({p:`${r.second||0},${r.position===1?5:1},25,${gb(r.color.replace("#",""))},0,0,0,0`,m:r.contxt||r.content||"",like:r.good,...r})).map(r=>(O.danmuSimplifiedTraditional==="simplified"&&r.m&&(r.m=Gt(r.m)),r))}};Pt();St();ar();$n();no();hs();hn();var wc={danmu:null,subject:null},cw=new Map,Mmr=3*60*1e3,Wmr=100,uw=class extends wt{get headers(){return{"Content-Type":"application/json","User-Agent":`huangxd-/danmu_api/${O.version}(https://github.com/huangxd-/danmu_api)`}}_applyProxyForSearch(e){return O.makeProxyUrl(e)}_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 e="https://api.bgm.tv",r="https://api.bangumi.lol",n=this._applyProxyForSearch(e),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!==e?[...i,{type:"V0",url:n},{type:"V0",url:r}]:[...i,{type:"V0",url:r},{type:"V0",url:e}]}async _fetchV0AllEpisodes(e,r){let n=[],s=0,i=200;try{for(;;){let a=`${e}/v0/episodes?subject_id=${r}&limit=${i}&offset=${s}`,o=await ge(a,{headers:this.headers,timeout:3e3});if(!o||!o.data||!Array.isArray(o.data.data)){s===0&&_("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&&_("info",`[Animeko] ID:${r} \u6B63\u52A0\u8F7D\u66F4\u591A\u5267\u96C6 (\u5F53\u524D\u5DF2\u83B7: ${n.length})`),c.length1600){_("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 _("error","[Animeko] V0\u5267\u96C6\u83B7\u53D6\u5F02\u5E38:",{message:a.message,id:r,offset:s}),[]}}async _fetchAnimekoSubject(e){let r=cw.get(e);if(r&&Date.now()-r.timestampa.url===s);(!s||i===-1)&&(i=0,s=n[0].url,wc.subject=s);for(let a=0;a(_("warn",`[Animeko] V0\u5173\u8054\u83B7\u53D6\u5F02\u5E38: ${d.message}`),null))]);(u&&u.length>0||l)&&(c={id:e},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(wc.subject!==o.url&&(_("info",`[Animeko] \u8BE6\u60C5\u8282\u70B9\u5065\u5EB7\u72B6\u6001\u66F4\u65B0: ${wc.subject} -> ${o.url}`),wc.subject=o.url),cw.set(e,{data:c,timestamp:Date.now()}),cw.size>Wmr){let u=cw.keys().next().value;cw.delete(u)}return c}_("warn",`[Animeko] \u8282\u70B9 ${o.url} \u8FD4\u56DE\u65E0\u6548\u6570\u636E`)}catch(c){_("warn",`[Animeko] \u8282\u70B9\u8BF7\u6C42\u5931\u8D25: ${o.url} - ${c.message}`)}}return _("warn","[Animeko] \u6240\u6709\u8BE6\u60C5\u8282\u70B9\u5747\u5931\u8D25\uFF0C\u91CD\u7F6E\u5065\u5EB7\u72B6\u6001\u81F3\u4F18\u5148\u7EA7\u9996\u4F4D"),wc.subject=n[0].url,null}async search(e){if(O.useBangumiData){let r=await Au(e,["bangumi"]);if(r.length>0){_("info",`[Animeko] Bangumi-Data \u672C\u5730\u547D\u4E2D ${r.length} \u6761\u6570\u636E\uFF08\u68C0\u7D22\u8BCD\uFF1A${e}\uFF09`);let n=r.map(s=>{let a=(s.titles.find(o=>o&&o.includes(e))||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 _("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=e.replace(/[._]/g," ").replace(/\s+/g," ").trim();_("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]}},p=null;for(let A of d)try{if(p=await Vr(A.url,JSON.stringify(f),{headers:this.headers,timeout:5e3}),p&&p.data){_("info",`[Animeko] \u641C\u7D22\u8282\u70B9 [${A.id}] \u8BF7\u6C42\u6210\u529F (offset: ${s})`);break}}catch(g){_("warn",`[Animeko] \u641C\u7D22\u8282\u70B9 [${A.id}] \u8BF7\u6C42\u5931\u8D25: ${g.message}`)}if(!p||!p.data){_("info",`[Animeko] \u641C\u7D22\u8BF7\u6C42\u6240\u6709\u8282\u70B9\u5747\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE (offset: ${s})`);break}let m=p.data.data||[];if(m.length===0)break;let h=this.filterSearchResults(m,e);if(h.length>0&&(n=n.concat(h)),h.length=60){_("warn","[Animeko] \u641C\u7D22\u7FFB\u9875\u8FBE\u5230\u5B89\u5168\u4E0A\u9650(60)\uFF0C\u5F3A\u5236\u505C\u6B62");break}}if(n.length===0)return _("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)),_("info",`[Animeko] \u641C\u7D22\u5B8C\u6210\uFF0C\u5171\u627E\u5230 ${a.length} \u4E2A\u6709\u6548\u7ED3\u679C`),this.transformResults(a)}catch(r){return _("error","[Animeko] Search error:",{message:r.message,name:r.name,stack:r.stack}),[]}}filterSearchResults(e,r){return e.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&&yt(i,r))})}hasExplicitSeasonInfo(e){return e?/第?\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&&(_("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 p=d.relation;p==="\u7EED\u96C6"&&(p="\u7EED\u7BC7"),a._relation_mark=`(${p})`}}}return e}_extractRelations(e){if(!e||!e.relations)return[];let r=e.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(e,r){if(!e||!e.fields||!Array.isArray(e.fields))return null;let n=e.fields.find(s=>s.key===r);return n&&n.values&&n.values.length>0&&n.values[0].v||null}_ExtractInfoboxAliases(e){let r=[];return!e||!e.fields||!Array.isArray(e.fields)||e.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(e){return e.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(e){try{let r=await this._fetchAnimekoSubject(e);return!r||!r.episodes||!Array.isArray(r.episodes)?(r&&_("info",`[Animeko] Subject ${e} \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 _("error","[Animeko] GetEpisodes error:",{message:r.message,id:e}),[]}}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return e&&_("error","[Animeko] sourceAnimes is not a valid array"),[];let o=e,c=i!==null?i:$t(r);if(c!==null){let l=o.filter(d=>{let f=d.name_cn||d.name,p=Tt(f).season;return p===c||c===1&&p===null});l.length>0&&(o=l,_("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=[],p=l.air_date||"";if(Array.isArray(d)){d.sort((m,h)=>(m.sort||0)-(h.sort||0));for(let m of d){if(m.type!==0)continue;!p&&m.airdate&&(p=m.airdate);let h=m.sort||m.ep,A=m.name_cn||m.name||"",g=`\u7B2C${h}\u8BDD ${A}`.trim();f.push({name:`${h}`,url:m.id.toString(),title:`\u3010animeko\u3011 ${g}`})}}if(f.length>0){let m=p?new Date(p).getFullYear():"",h={animeId:l.id,bangumiId:String(l.id),animeTitle:`${l.name_cn||l.name}(${m})\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:p,episodeCount:f.length,rating:l.score||0,isFavorited:!0,source:"animeko"};a.push(h),Lt({...h,links:f},s),O.animes.length>O.MAX_ANIMES&&Ft()}}catch(d){_("error",`[Animeko] Error processing anime ${l.id}: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){let r=String(e).trim();if(r.includes("/")){let a=r.split("/");r=a[a.length-1]}if(r.includes("?")&&(r=r.split("?")[0]),!r)return _("error","[Animeko] \u65E0\u6548\u7684 episodeId"),[];let n=this._getDanmuServerPriority(),s=wc.danmu,i=n.indexOf(s);(!s||i===-1)&&(i=0,s=n[0],wc.danmu=s);for(let a=0;a ${c}`),wc.danmu=c),_("info",`[Animeko] \u6210\u529F\u83B7\u53D6\u5F39\u5E55\uFF0C\u5171 ${d.length} \u6761 (${c}\u8282\u70B9)`),d}_("info",`[Animeko] ${c} \u8282\u70B9\u83B7\u53D6\u5931\u8D25/\u65E0\u6570\u636E\uFF0C\u89E6\u53D1\u964D\u7EA7`)}catch(l){_("warn",`[Animeko] \u8BF7\u6C42\u8282\u70B9\u5931\u8D25: ${c} - ${l.message}`)}}return _("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"),wc.danmu=n[0],[]}async getEpisodeDanmuSegments(e){return new vt({type:"animeko",segmentList:[{type:"animeko",segment_start:0,segment_end:3e4,url:String(e)}]})}async getEpisodeSegmentDanmu(e){let r=(e.url||"").trim();return r?this.getEpisodeDanmu(r):[]}formatComments(e){if(!Array.isArray(e))return[];let r={NORMAL:1,TOP:5,BOTTOM:4};return e.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=O.danmuSimplifiedTraditional==="simplified"?Gt(s.text):s.text;return{cid:n.id,p:`${i},${a},${o},[animeko]`,m:c}})}};Pt();St();ar();hn();hs();var lw=class extends wt{async search(e){}async getEpisodes(e){}async handleAnimes(e,r,n,s=null){}async getEpisodeDanmu(e){try{let r=await ge(`${O.otherServer}/?url=${e}&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 _("info",`[Other] danmu response from ${O.otherServer}: \u2193\u2193\u2193`),ts(r.data),r.data}catch(r){return _("error",`[Other] \u8BF7\u6C42 ${O.otherServer} \u5931\u8D25:`,r),[]}}async getEpisodeDanmuSegments(e){return _("info","[Other] \u83B7\u53D6\u7B2C\u4E09\u65B9\u670D\u52A1\u5668\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e),new vt({type:"other_server",segmentList:[{type:"other_server",segment_start:0,segment_end:3e4,url:e}]})}async getEpisodeSegmentDanmu(e){return this.getEpisodeDanmu(e.url)}formatComments(e){return e}};hs();var vst=new QT,Cst=new GT,dw=new JT,fw=new XT,pw=new Tg,mw=new ZT,g4=new ew,z0=new wg,K0=new Pg,Y0=new Rg,Dg=new Ng,Tu=new Og,J0=new gst,kg=new sw,Lg=new iw,Bg=new yst,Mg=new xst,Wg=new ow,hw=new uw,Bie=new lw,Mie=new zT(z0,Y0,K0,Tu,J0),Ist=new VT(Mie),l4=new Map;function _st(t){let e=Number(t||0);return!Number.isFinite(e)||e<=0?0:e>6*60*60?e/1e3:e}function Tst(t,e=!1){return e?String(t||O.danmuOutputFormat||"json").toLowerCase()==="json":!1}function d4(t,e=null){return e===null?t:{videoDuration:e,...t}}function $mr(t){let e=_st(t?.duration||t?.videoDuration||0);if(e>0)return e;let r=Array.isArray(t?.segmentList)?t.segmentList:[];if(!r.length)return 0;let n=0;return r.forEach(s=>{let i=_st(s?.segment_end||0);i<=0||i>n&&(n=i)}),n>0?n:0}async function Wie(t){if(!/^https?:\/\//i.test(t))return 0;try{let e=t,r=null;return e.includes(".qq.com")?r=await be.run("tencent",()=>z0.getComments(e,"qq",!0)):e.includes(".iqiyi.com")?r=await be.run("iqiyi",()=>Y0.getComments(e,"qiyi",!0)):e.includes(".mgtv.com")?r=await be.run("mango",()=>Dg.getComments(e,"imgo",!0)):e.includes(".bilibili.com")||e.includes("b23.tv")?(e.includes("b23.tv")&&(e=await be.run("bilibili",()=>Tu.resolveB23Link(e))),r=await be.run("bilibili",()=>Tu.getComments(e,"bilibili1",!0))):e.includes(".youku.com")?r=await be.run("youku",()=>K0.getComments(e,"youku",!0)):e.includes(".miguvideo.com")?r=await be.run("migu",()=>J0.getComments(e,"migu",!0)):e.includes(".sohu.com")?r=await be.run("sohu",()=>kg.getComments(e,"sohu",!0)):e.includes(".le.com")?r=await be.run("leshi",()=>Lg.getComments(e,"leshi",!0)):e.includes(".douyin.com")||e.includes(".ixigua.com")?r=await be.run("xigua",()=>Bg.getComments(e,"xigua",!0)):e.includes(".mddcloud.com.cn")?r=await be.run("maiduidui",()=>Mg.getComments(e,"maiduidui",!0)):e.includes(".yfsp.tv")&&(r=await be.run("aiyifan",()=>Wg.getComments(e,"aiyifan",!0))),$mr(r)}catch(e){return _("warn",`[system] [Duration] \u83B7\u53D6\u65F6\u957F\u5931\u8D25: ${e.message}`),0}}function Fmr(t){return String(t||"").split(Iu).map(e=>{let r=e.indexOf(":");return r===-1?e.trim():e.slice(r+1).trim()}).filter(Boolean)}async function f4(t){if(!t)return 0;try{let e=t.includes(Iu)?Fmr(t):[t];return(await Promise.all(e.map(Wie))).reduce((n,s)=>Math.max(n,s||0),0)}catch(e){return _("warn",`[system] [Duration] \u83B7\u53D6\u65F6\u957F\u5931\u8D25: ${e.message}`),0}}function p4(t,e){if(!e)return!0;let r=W0(t.animeTitle);return r?r===e:!0}function Umr(t,e,r){let n=t.animeTitle.match(/^(.*?)\(\d{4}\)/),s=n?n[1].trim():t.animeTitle.split("(")[0].trim(),i=Fr(s),a=Fr(e);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&&tg(u[0])===r)return!0}return!1}else return!1}function Lie(t,e,r,n,s){if(r===null||e===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 t){let f=m4(d.animeTitle)||d.source;if(o!=="_any_"&&Hf(f,o)===0)continue;l=!0;let p=Fg(d,n);if(p?.success&&p.bangumi?.episodes){let m=p.bangumi.episodes.filter(y=>!O.episodeTitleFilter.test(y.episodeTitle)),h=$g(m);if(h.some(y=>lf(y.episodeTitle)===r)){c=!0;break}let A=[d.animeTitle];d.aliases&&Array.isArray(d.aliases)&&A.push(...d.aliases);let g=null;for(let y of A){if(!y)continue;let x=Tt(y).season;if(x!==null){g=x;break}}g===null&&(g=1);let b=u.get(g)||0;h.length>b&&u.set(g,h.length)}}if(l&&!c){let d=0;for(let f of u.values())d+=f;if(dt[W]!==void 0),k=[];for(let W of M){let F=[],V=new Map;if(W==="360")k.push({key:W,animes:F,detailStore:V,promise:be.run(Cn(W),()=>vst.handleAnimes(c,e,F,V,s))});else if(W==="vod"){if(o&&Array.isArray(o)){let j=be.run(W,()=>(async()=>{for(let J of o)J&&J.list&&J.list.length>0&&await Cst.handleAnimes(J.list,e,F,J.serverName,V,s)})());k.push({key:W,animes:F,detailStore:V,promise:j})}}else W==="tmdb"?k.push({key:W,animes:F,detailStore:V,promise:be.run(W,()=>Ist.handleAnimes(u,e,F,V,s))}):W==="douban"?k.push({key:W,animes:F,detailStore:V,promise:be.run(W,()=>Mie.handleAnimes(l,e,F,V,s))}):W==="renren"?k.push({key:W,animes:F,detailStore:V,promise:be.run(W,()=>dw.handleAnimes(d,e,F,V,s))}):W==="hanjutv"?k.push({key:W,animes:F,detailStore:V,promise:be.run(W,()=>fw.handleAnimes(f,e,F,V,s))}):W==="bahamut"?k.push({key:W,animes:F,detailStore:V,promise:be.run(W,()=>pw.handleAnimes(p,e,F,V,s))}):W==="dandan"?k.push({key:W,animes:F,detailStore:V,promise:be.run(W,()=>mw.handleAnimes(m,e,F,V,s))}):W==="custom"?k.push({key:W,animes:F,detailStore:V,promise:be.run(W,()=>g4.handleAnimes(h,e,F))}):W==="tencent"?k.push({key:W,animes:F,detailStore:V,promise:be.run(W,()=>z0.handleAnimes(A,e,F,V,s))}):W==="youku"?k.push({key:W,animes:F,detailStore:V,promise:be.run(W,()=>K0.handleAnimes(g,e,F,V,s))}):W==="iqiyi"?k.push({key:W,animes:F,detailStore:V,promise:be.run(W,()=>Y0.handleAnimes(b,e,F,V,s))}):W==="imgo"?k.push({key:W,animes:F,detailStore:V,promise:be.run(Cn(W),()=>Dg.handleAnimes(y,e,F,V,s))}):W==="bilibili"?k.push({key:W,animes:F,detailStore:V,promise:be.run(W,()=>Tu.handleAnimes(x,e,F,V,s))}):W==="migu"?k.push({key:W,animes:F,detailStore:V,promise:be.run(W,()=>J0.handleAnimes(v,e,F,V,s))}):W==="sohu"?k.push({key:W,animes:F,detailStore:V,promise:be.run(W,()=>kg.handleAnimes(C,e,F,V,s))}):W==="leshi"?k.push({key:W,animes:F,detailStore:V,promise:be.run(W,()=>Lg.handleAnimes(R,e,F,V,s))}):W==="xigua"?k.push({key:W,animes:F,detailStore:V,promise:be.run(W,()=>Bg.handleAnimes(w,e,F,V,s))}):W==="maiduidui"?k.push({key:W,animes:F,detailStore:V,promise:be.run(W,()=>Mg.handleAnimes(N,e,F,V,s))}):W==="aiyifan"?k.push({key:W,animes:F,detailStore:V,promise:be.run(W,()=>Wg.handleAnimes(P,e,F,V,s))}):W==="animeko"&&k.push({key:W,animes:F,detailStore:V,promise:be.run(W,()=>hw.handleAnimes(L,e,F,V,s))})}let B=await Promise.allSettled(k.map(W=>W.promise)),Z=new Set(r.map(W=>W.animeId));for(let W=0;W ${A}`),i=A}let c=n instanceof Map?n:new Map,u=a!==null?`${i}_S${a}`:i,l=DC(u,c);if(l===null&&a!==null){let A=DC(i,c);A!==null&&(_("info",`[system] [searchAnime] Cache miss for ${u}, fallback to generic cache for ${i}`),l=A)}if(l!==null){let A=Lie(l,a,o,c,s);if(A)return Be({errorCode:0,success:!0,errorMessage:"",animes:l});{let g=a+1,b=[...l],y=!1;for(;!A&&!y;){let x=`${i}_S${g}`,v=DC(x,c);v!==null&&v.length>0?(b.push(...v),A=Lie(b,a,o,c,s),g++):y=!0}if(A)return _("info",`[system] [LogVar-API] Episode ${o} satisfied by combining cached seasons S${a} to S${g-1}`),Be({errorCode:0,success:!0,errorMessage:"",animes:b});_("info",`[system] [LogVar-API] Episode ${o} not satisfied in cache. Proceeding to network search.`)}}let d=[];if(/^(https?:\/\/)?([a-zA-Z0-9-]+\.)+[a-zA-Z]{2,6}(:\d+)?(\/[^\s]*)?$/.test(i)){let A=F0.fromJson({animeId:0,bangumiId:"0",animeTitle:i,type:"",typeDescription:"\u94FE\u63A5\u89E3\u6790",imageUrl:"",startDate:"",episodeCount:1,rating:0,isFavorited:!0}),g="unknown";i.includes(".qq.com")?g="qq":i.includes(".iqiyi.com")?g="qiyi":i.includes(".mgtv.com")?g="imgo":i.includes(".youku.com")?g="youku":i.includes(".bilibili.com")?g="bilibili1":i.includes(".miguvideo.com")?g="migu":i.includes(".sohu.com")?g="sohu":i.includes(".le.com")?g="leshi":i.includes(".douyin.com")||i.includes(".ixigua.com")?g="xigua":i.includes(".mddcloud.com.cn")?g="maiduidui":i.includes(".yfsp.tv")&&(g="aiyifan");let b=await be.run(Cn(g),()=>C8e(i)),y=[{name:"\u624B\u52A8\u89E3\u6790\u94FE\u63A5\u5F39\u5E55",url:i,title:`\u3010${g}\u3011 ${b}`}];d.push(A),Lt(F0.fromJson({...A,links:y}),c),O.animes.length>O.MAX_ANIMES&&Ft(),O.localCacheValid&&d.length!==0&&await GL(),O.redisValid&&d.length!==0&&await DL(),O.localRedisValid&&d.length!==0&&await YB();let x=d.map(({links:v,...C})=>C);return Be({errorCode:0,success:!0,errorMessage:"",animes:x})}try{_("info",`[system] [LogVar-API] Search sourceOrderArr: ${O.sourceOrderArr}`);let A={},g={};for(let C of O.sourceOrderArr)C==="360"?g[C]=be.run(Cn(C),()=>vst.search(i)):C==="vod"?g[C]=be.run(Cn(C),()=>Cst.search(i,e,r)):C==="tmdb"?g[C]=be.run(Cn(C),()=>Ist.search(i)):C==="douban"?g[C]=be.run(Cn(C),()=>Mie.search(i)):C==="renren"?g[C]=be.run(Cn(C),()=>dw.search(i)):C==="hanjutv"?g[C]=be.run(Cn(C),()=>fw.search(i)):C==="bahamut"?g[C]=be.run(Cn(C),()=>pw.search(i)):C==="dandan"?g[C]=be.run(Cn(C),()=>mw.search(i)):C==="custom"?g[C]=be.run(Cn(C),()=>g4.search(i)):C==="tencent"?g[C]=be.run(Cn(C),()=>z0.search(i)):C==="youku"?g[C]=be.run(Cn(C),()=>K0.search(i)):C==="iqiyi"?g[C]=be.run(Cn(C),()=>Y0.search(i)):C==="imgo"?g[C]=be.run(Cn(C),()=>Dg.search(i)):C==="bilibili"?g[C]=be.run(Cn(C),()=>Tu.search(i)):C==="migu"?g[C]=be.run(Cn(C),()=>J0.search(i)):C==="sohu"?g[C]=be.run(Cn(C),()=>kg.search(i)):C==="leshi"?g[C]=be.run(Cn(C),()=>Lg.search(i)):C==="xigua"?g[C]=be.run(Cn(C),()=>Bg.search(i)):C==="maiduidui"?g[C]=be.run(Cn(C),()=>Mg.search(i)):C==="aiyifan"?g[C]=be.run(Cn(C),()=>Wg.search(i)):C==="animeko"&&(g[C]=be.run(Cn(C),()=>hw.search(i)));let b=O.sourceOrderArr.map(C=>{let R=[],w=new Map,N=g[C].then(async P=>{A[C]=P,await Sst({[C]:P},i,R,w,a,e,r)});return{key:C,animes:R,detailStore:w,promise:N}}),y=await Promise.allSettled(b.map(C=>C.promise)),x=new Set(d.map(C=>C.animeId));for(let C=0;C0&&kC(u,d.map(({links:C,...R})=>R),c),!Lie(d,a,o,c,s)&&a!==null){let C=a;for(let R of O.sourceOrderArr){let w=A[R];if(Array.isArray(w))for(let N of w){let P=N&&Array.isArray(N.list)?N.list:[N];for(let L of P){if(!L)continue;let M=Tt(L.animeTitle||L.title||"").season;M!==null&&M>C&&(C=M)}}}if(C>a){_("info",`[system] [LogVar-API] Episode ${o} not satisfied in Season ${a}. Parallel mapping to S${a+1}~S${C}...`);let R=[];for(let N=a+1;N<=C;N++)R.push((async()=>{let P=[];return await Sst(A,i,P,c,N,e,r),P.length>0&&kC(`${i}_S${N}`,P.map(({links:L,...M})=>M),c),P})());let w=await Promise.all(R);for(let N of w)d.push(...N)}}}catch(A){_("error","[system] [LogVar-API] \u53D1\u751F\u9519\u8BEF:",A)}let p=O.mergeSourcePairs&&O.mergeSourcePairs.length>0,m=O.customMergeRules&&O.customMergeRules.length>0;if((p||m)&&await Lnt(d,c),sK(d,i),O.enableAnimeEpisodeFilter){let A=[];for(let g of d){let b=g.animeTitle||"";if(O.animeTitleFilter&&O.animeTitleFilter.test(b)){_("info",`[searchAnime] Anime ${g.animeId} filtered by name: ${b}`);continue}let y=ig(g?.bangumiId,c,g?.source)||ig(g?.animeId,c,g?.source)||sg(g?.bangumiId,c,g?.source)||sg(g?.animeId,c,g?.source);if(y&&y.links){let x=y.links.map((v,C)=>({episodeId:v.id,episodeTitle:v.title,episodeNumber:C+1}));x=x.filter(v=>!O.episodeTitleFilter.test(v.episodeTitle)),_("info",`[searchAnime] Anime ${g.animeId} filtered episodes: ${x.length}/${y.links.length}`),x.length>0&&A.push(g)}}d.length=0,d.push(...A)}O.localCacheValid&&d.length!==0&&await GL(),O.redisValid&&d.length!==0&&await DL(),O.localRedisValid&&d.length!==0&&await YB();let h=d.map(({links:A,...g})=>g);if(h.length>0){let A=a!==null?`${i}_S${a}`:i;kC(A,h,c)}return Be({errorCode:0,success:!0,errorMessage:"",animes:h})}function $g(t){return t.filter((r,n,s)=>!s.slice(0,n).some(i=>i.episodeTitle===r.episodeTitle))}function Hf(t,e){if(!t||!e)return 0;let r=t.split("&").map(i=>i.trim().toLowerCase()).filter(i=>i),n=e.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 m4(t){let e=t.match(/from\s+([a-zA-Z0-9&]+)/i);return e?e[1]:null}function h4(t,e,r,n=null){if(!t||t.length===0)return null;let s=t;if(n&&(s=t.filter(i=>{let a=rg(i.episodeTitle);return Hf(a,n)>0})),s.length===0)return null;for(let i of s){let a=lf(i.episodeTitle);if(e===r&&a===r)return _("info",`Found episode by title number: ${i.episodeTitle} (extracted: ${a})`),i}if(s.length>=r){let i=s[r-1];return _("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 _("info",`Found episode by episodeNumber: ${i.episodeTitle} (episodeNumber: ${i.episodeNumber})`),i;return null}async function qmr(t,e,r,n,s,i,a,o,c=null){let u=O.aiBaseUrl,l=O.aiModel,d=O.aiApiKey,f=O.aiMatchPrompt;if(!O.aiValid||!f)return _("warn","AI configuration is incomplete, falling back to normal matching"),{resEpisode:null,resAnime:null};let p=new ff({apiKey:d,baseURL:u,model:l,systemPrompt:f}),m={title:s,season:t,episode:e,year:r,dynamicPlatformOrder:a,preferAnimeId:o,animes:n.animes.map(h=>{let A=h.animeTitle||"",g=A.match(/^(.*?)\(\d{4}\)/),b=g?g[1].trim():A.split("(")[0].trim();return{animeId:h.animeId,animeTitle:b,aliases:h.aliases||[],type:h.type,year:h.startDate?h.startDate.slice(0,4):null,episodeCount:h.episodeCount,source:h.source}})};try{let h=JSON.stringify(m,null,2),A=await p.ask(h);_("info",`AI match response: ${A}`);let g;try{let C=A.match(/```json\s*([\s\S]*?)\s*```|```([\s\S]*?)\s*```|({[\s\S]*})/),R=C?C[1]||C[2]||C[3]:A;g=JSON.parse(R.trim())}catch(C){return _("error",`Failed to parse AI response: ${C.message}`),{resEpisode:null,resAnime:null}}let b=g.animeIndex;if(b==null)return{resEpisode:null,resAnime:null};let y=n.animes[b];if(!y)return _("error",`AI returned invalid anime index: ${b}`),{resEpisode:null,resAnime:null};let x=Fg(y,c);if(!x?.success||!x?.bangumi?.episodes)return{resEpisode:null,resAnime:null};let v=null;if(t&&e){let C=x.bangumi.episodes.filter(w=>!O.episodeTitleFilter.test(w.episodeTitle)),R=$g(C);_("info","\u8FC7\u6EE4\u540E\u7684\u96C6\u6807\u9898",R.map(w=>w.episodeTitle)),v=h4(R,e,e)}else x.bangumi.episodes.length>0&&(v=x.bangumi.episodes[0]);return{resEpisode:v,resAnime:y}}catch(h){return _("error",`AI matching failed: ${h.message}`),{resEpisode:null,resAnime:null}}}function Fg(t,e=null){let r=ig(t?.bangumiId,e,t?.source)||ig(t?.animeId,e,t?.source);return r?Fie(r,t?.bangumiId||t?.animeId||""):(_("warn",`[matchAnime] Missing request detail snapshot for anime ${t?.animeId??t?.bangumiId}`),null)}function wst(t,e,r,n,s){let i=String(e),a=t[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,_("info",`Applying offset "${t[i]}" for S${e}E${r} -> ${s}`)),s}function Rst(t,e,r,n,s,i,a){if(!n||!s)return{resEpisode:null,resAnime:null};_("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=Fr(e),c=new Map;for(let f of t.animes){let p=[f.animeTitle];f.aliases&&Array.isArray(f.aliases)&&p.push(...f.aliases);let m=!1;for(let A of p)if(A&&Fr(A).includes(o)){if(!p4(f,r))continue;m=!0;break}if(!m)continue;let h=null;for(let A of p){if(!A)continue;let g=Tt(A).season;if(g!==null){h=g;break}}if(h===null&&(h=1),!c.has(h)){let A=Fg(f,a);if(A?.success&&A?.bangumi?.episodes){let g=A.bangumi.episodes.filter(y=>!O.episodeTitleFilter.test(y.episodeTitle)),b=$g(g);b.length>0&&c.set(h,{anime:f,episodes:b,actualPlatform:m4(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),p=f.episodes,m=null;for(let h of p)if(lf(h.episodeTitle)===s){m=h;break}if(m){if(i&&Hf(rg(m.episodeTitle),i)===0)break;_("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${m.episodeTitle}`),d={anime:f.anime,episode:m,score:i?Hf(f.actualPlatform,i):1};break}if(u<=p.length){let h=p[u-1];if(i&&Hf(rg(h.episodeTitle),i)===0)break;_("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${h.episodeTitle}`),d={anime:f.anime,episode:h,score:i?Hf(f.actualPlatform,i):1};break}_("info",`[system] [Spillover] S${l} \u5171\u6709 ${p.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-=p.length,l++}return{resEpisode:d.episode,resAnime:d.anime}}async function jmr(t,e,r,n,s,i,a,o,c,u=null){let l={anime:null,episode:null,score:-9999},d=Fr(s);for(let f of n.animes){if(O.rememberLastSelect&&o&&String(f.bangumiId)!==String(o)&&String(f.animeId)!==String(o))continue;let m=!1,h=[f.animeTitle];f.aliases&&Array.isArray(f.aliases)&&h.push(...f.aliases);for(let y of h)if(y){if(t&&e){if(Fr(y).includes(d)){if(!p4(f,r)){_("info",`Year mismatch: anime year ${W0(f.animeTitle)} vs query year ${r}`);continue}let x=O.rememberLastSelect&&o&&(String(f.bangumiId)===String(o)||String(f.animeId)===String(o)),v={...f,animeTitle:y};if(Umr(v,s,t)||x){m=!0;break}}}else if(y.split("(")[0].trim()===s){if(!p4(f,r)){_("info",`Year mismatch: anime year ${W0(f.animeTitle)} vs query year ${r}`);continue}m=!0;break}}if(!m)continue;let A=Fg(f,u);if(!A?.success||!A?.bangumi?.episodes)continue;_("info","\u5224\u65AD\u5267\u96C6",`Anime: ${f.animeTitle}`),_("info",A);let g=null,b=O.rememberLastSelect&&o!=null&&(String(f.bangumiId)===String(o)||String(f.animeId)===String(o));if(t&&e){let y=A.bangumi.episodes.filter(C=>!O.episodeTitleFilter.test(C.episodeTitle)),x=$g(y);_("info","\u8FC7\u6EE4\u540E\u7684\u96C6\u6807\u9898",x.map(C=>C.episodeTitle));let v=e;c&&c[String(t)]!==void 0&&(v=wst(c,t,e,x,v)),g=h4(x,e,v,a),!g&&b&&(_("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=h4(x,e,v,null))}else if(A.bangumi.episodes.length>0)if(a){let y=A.bangumi.episodes.find(x=>{let v=rg(x.episodeTitle);return Hf(v,a)>0});y?g=y:b&&(_("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=A.bangumi.episodes[0])}else g=A.bangumi.episodes[0];if(g){let y=m4(f.animeTitle)||f.source,x=0;if(a?x=Hf(y,a):x=1,b&&(x+=9999),x>l.score&&(l={anime:f,episode:g,score:x}),!a||b)break}}if(!l.episode&&t&&e){let f=Rst(n,s,r,t,e,a,u);f.resEpisode&&(l={episode:f.resEpisode,anime:f.resAnime,score:a?Hf(m4(f.resAnime.animeTitle)||f.resAnime.source,a):1})}return{resEpisode:l.episode,resAnime:l.anime}}async function Hmr(t,e,r,n,s,i,a,o,c,u=null){for(let d of t.animes){if(s&&!p4(d,s)){_("info",`Fallback: Year mismatch: anime year ${W0(d.animeTitle)} vs query year ${s}`);continue}let f=Fg(d,u);if(!(!f?.success||!f?.bangumi?.episodes)){if(_("info",f),r&&n){let p=f.bangumi.episodes.filter(g=>!O.episodeTitleFilter.test(g.episodeTitle)),m=$g(p);_("info","[system] [LogVar-API] \u8FC7\u6EE4\u540E\u7684\u96C6\u6807\u9898",m.map(g=>g.episodeTitle));let h=n;c&&c[String(r)]!==void 0&&(h=wst(c,r,n,m,h));let A=h4(m,n,h,null);if(A){a=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=Rst(t,i,s,r,n,null,u);d.resEpisode&&(a=d.resEpisode,o=d.resAnime,l=!0)}return{resEpisode:a,resAnime:o,isSpillover:l}}async function Qmr(t){let e=/^(.+?)[.\s]+S(\d+)E(\d+)/i,r=t.match(e),n,s,i,a;if(r){n=r[1].trim(),s=parseInt(r[2],10),i=parseInt(r[3],10);let o=t.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=t.match(o);n=c?c[1].replace(/[._]/g," ").trim():t,s=null,i=null;let u=t.match(/(?:\.|\(|()((?:19|20)\d{2})(?:\)|)|\.|$)/);u&&(a=parseInt(u[1],10))}return O.titleToChinese&&(n=await xnt(n.replace("."," "),s,i)),_("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 Nst(t,e,r,n){let s=new URL(t),i=s.pathname.replace(/\/(?:match|search\/episodes)$/,"");return s.pathname=`${i}/search/anime`,s.search="",s.searchParams.set("keyword",e||""),r!==void 0&&s.searchParams.set("season",r||""),n!==void 0&&s.searchParams.set("episode",n||""),s}async function Ost(t,e,r){try{let n=await e.json();if(!n)return _("error","[system] [Match] Request body is empty"),Be({errorCode:400,success:!1,errorMessage:"Empty request body"},400);let{fileName:s}=n;if(!s)return _("error","[system] [Match] Missing fileName parameter in request body"),Be({errorCode:400,success:!1,errorMessage:"Missing fileName parameter"},400);let{cleanFileName:i,preferredPlatform:a}=M8e(s);_("info",`[system] [Match] Processing anime match for query: ${s}`),_("info",`[system] [Match] Parsed cleanFileName: ${i}, preferredPlatform: ${a}`);let{title:o,season:c,episode:u,year:l}=await Qmr(i);if(O.titleMappingTable&&O.titleMappingTable.size>0){let N=O.titleMappingTable.get(o);N&&(o=N,_("info",`[system] [Match] Title mapped from original: ${t.searchParams.get("keyword")} to: ${o}`))}if(O.animeTitleSimplified){let N=Gt(o);_("info",`[system] [Match] matchAnime converted traditional to simplified: ${o} -> ${N}`),o=N}let[d,f,p]=aK(o,c);_("info",`[system] [Match] prefer animeId: ${d} from ${f}`);let m=W8e(a),h=m.length>0?m[0]:null,A=new Map,g=Nst(e.url,o,c,u),y=await(await sE(g,d,f,A,h)).json();_("info",`[system] [Match] searchData: ${y.animes}`);let x,v,C=!1,R={errorCode:0,success:!0,errorMessage:"",isMatched:!1,matches:[]};_("info",`[system] [Match] Original platformOrderArr: ${O.platformOrderArr}`),_("info",`[system] [Match] Dynamic platformOrder: ${m}`),_("info",`[system] [Match] Preferred platform: ${a||"none"}`);let w=await qmr(c,u,l,y,o,e,m,d,A);if(w.resAnime&&w.resEpisode)x=w.resAnime,v=w.resEpisode,R.isMatched=!0,_("info",`[system] [Match] AI match found: ${x.animeTitle}; episode: ${v.episodeTitle}`);else{for(let N of m){let P=await jmr(c,u,l,y,o,e,N,d,p,A);if(v=P.resEpisode,x=P.resAnime,x){R.isMatched=!0,_("info",`[system] [Match] Found match with platform: ${N||"default"}`);break}}if(!x){let N=await Hmr(y,e,c,u,l,o,v,x,p,A);v=N.resEpisode,x=N.resAnime,C=N.isSpillover}}return v&&(R.isMatched=!0,r&&!C&&eK(r,{title:o,season:c,episode:u,episodeId:v.episodeId}),R.matches=[BL.fromJson({episodeId:v.episodeId,animeId:x.animeId,animeTitle:x.animeTitle,episodeTitle:v.episodeTitle,type:x.type,typeDescription:x.typeDescription,shift:0,imageUrl:x.imageUrl})]),_("info",`[system] [Match] resMatchData: ${R}`),Be(R)}catch(n){return _("error",`[system] [Match] Failed to parse request body: ${n.message}`),Be({errorCode:400,success:!1,errorMessage:"Invalid JSON body"},400)}}async function Pst(t){let e=t.searchParams.get("anime"),r=t.searchParams.get("episode")||"";if(O.animeTitleSimplified){let c=Gt(e);_("info",`[system] [Episodes] searchEpisodes converted traditional to simplified: ${e} -> ${c}`),e=c}if(_("info",`[system] [Episodes] Search episodes with anime: ${e}, episode: ${r}`),!e)return _("error","[system] [Episodes] Missing anime parameter"),Be({errorCode:400,success:!1,errorMessage:"Missing anime parameter"},400);let n=Nst(t,e),s=new Map,a=await(await sE(n,null,null,s)).json();if(!a.success||!a.animes||a.animes.length===0)return _("info","[system] [Episodes] No anime found for the given title"),Be({errorCode:0,success:!0,errorMessage:"",hasMore:!1,animes:[]});let o=[];for(let c of a.animes){let u=sg(c.bangumiId,s,c.source)||sg(c.animeId,s,c.source),l=null;if(u)l=Fie(u,c.bangumiId);else{let d=new URL(`/bangumi/${c.bangumiId}`,t.origin);l=await(await $ie(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(p=>parseInt(p.episodeNumber)===f)}}d.length>0&&o.push(WL.fromJson({animeId:c.animeId,animeTitle:c.animeTitle,type:c.type,typeDescription:c.typeDescription,episodes:d.map(f=>({episodeId:f.episodeId,episodeTitle:f.episodeTitle}))}))}}return _("info",`[system] [Episodes] Found ${o.length} animes with filtered episodes`),Be({errorCode:0,success:!0,errorMessage:"",animes:o})}async function $ie(t,e=null,r=null){let n=t.split("/").pop(),s=ig(n,e,r)||sg(n);return s?Be(Fie(s,n)):(_("error",`[system] [Bangumi] Anime with ID ${n} not found`),Be({errorCode:404,success:!1,errorMessage:"Anime not found",bangumi:null},404))}function Fie(t,e=""){_("info",`[system] [Bangumi] Fetched details for anime ID: ${e||t.bangumiId}`);let r=[];for(let s=0;s!O.episodeTitleFilter.test(s.episodeTitle)),_("info",`[system] [getBangumi] Episode filter enabled. Filtered episodes: ${r.length}/${t.links.length}`),r.length===0)return _("warn",`[system] [getBangumi] No valid episodes after filtering for anime ID ${e||t.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:$L.fromJson({animeId:t.animeId,bangumiId:t.bangumiId,animeTitle:t.animeTitle,imageUrl:t.imageUrl,isOnAir:!0,airDay:1,isFavorited:t.isFavorited,rating:t.rating,type:t.type,typeDescription:t.typeDescription,seasons:[{id:`season-${t.animeId}`,airDate:t.startDate,name:"Season 1",episodeCount:t.episodeCount}],episodes:r})}}async function Gmr(t,e,r){let n=t.split(Iu),s=n.map(m=>{let h=m.indexOf(":");if(h===-1)return{realId:"",logicalSource:"",sourceLabel:""};let A=m.substring(0,h),g=m.substring(h+1);return A!=="hanjutv"?{realId:g,logicalSource:A,sourceLabel:A}:{realId:g,logicalSource:"hanjutv",sourceLabel:i4(g)}}),i=s.map(m=>m.logicalSource).filter(Boolean),a=s.map(m=>m.realId),o=s.map(m=>m.sourceLabel).filter(Boolean).join("\uFF06");_("info",`[Merge] \u5F00\u59CB\u83B7\u53D6 [${o}] \u805A\u5408\u5F39\u5E55...`);let c=df(t);if(c)return _("info",`[Merge] \u547D\u4E2D\u7F13\u5B58 [${o}]\uFF0C\u8FD4\u56DE ${c.length} \u6761`),c;let u={},l=s.map(async m=>{let h=m.logicalSource,A=m.sourceLabel||m.logicalSource,g=m.realId;if(!h||!g)return[];let b=`${h}:${g}`;if(l4.has(b)){_("info",`[Merge] \u590D\u7528\u6B63\u5728\u8FDB\u884C\u7684\u8BF7\u6C42: ${b}`);try{return await l4.get(b)||[]}catch{return[]}}let y=be.run(Cn(h),async()=>{let x=null;if(h==="renren"?x=dw:h==="hanjutv"?x=fw:h==="bahamut"?x=pw:h==="dandan"?x=mw:h==="tencent"?x=z0:h==="youku"?x=K0:h==="iqiyi"?x=Y0:h==="imgo"?x=Dg:h==="bilibili"?x=Tu:h==="migu"?x=J0:h==="sohu"?x=kg:h==="leshi"?x=Lg:h==="xigua"?x=Bg:h==="maiduidui"?x=Mg:h==="aiyifan"?x=Wg:h==="animeko"&&(x=hw),x)try{let v=await x.getEpisodeDanmu(g,n),C=x.formatComments(v);return _("info",`[${A}] \u83B7\u53D6\u5F39\u5E55 ${C.length} \u6761`),C&&Array.isArray(C)&&C.forEach(R=>{R._sourceLabel||(R._sourceLabel=A)}),u[A]=C.length,C}catch(v){return _("error",`[Merge] \u83B7\u53D6 ${A} \u5931\u8D25: ${v.message}`),u[A]=0,[]}return[]});l4.set(b,y);try{return await y}finally{l4.delete(b)}}),d=await Promise.all(l);if(Mnt(d,i,a),O.danmuOffsetRules?.length>0&&e&&r){let[,,m]=qL(r);if(m){let{baseTitle:h,season:A,episode:g}=Jz(e,m);A||=1,g||=UL(r)+1;let b=`S${A.toString().padStart(2,"0")}`,y=`E${g.toString().padStart(2,"0")}`;for(let x=0;x ${i[x]} (${h}/${b}/${y})${C?.usePercent?`, duration=${N}s`:""}`),d[x]=_z(v,R,{usePercent:C?.usePercent,videoDuration:N})}}}}let f=[];d.forEach(m=>{f=Bnt(f,m)});let p=Object.entries(u).map(([m,h])=>`${m}: ${h}`).join(", ");return _("info",`[Merge] \u805A\u5408\u539F\u59CB\u6570\u636E\u5B8C\u6210: \u603B\u8BA1 ${f.length} \u6761 (${p})`),MC(f,o)}async function Uie(t,e,r,n,s=!1){let i=parseInt(t.split("/").pop()),a=nK(i),o=BC(i),c=rK(i),u=c?(c.match(/【(.*?)】/)||[null])[0]?.replace(/[【】]/g,""):null,l=Tst(e,s);if(_("info","[system] [LogVar-API] comment url...",o),_("info","[system] [LogVar-API] comment title...",c),_("info","[system] [LogVar-API] comment platform...",u),!o)return _("error",`[system] [LogVar-API] Comment with ID ${i} not found`),Be({count:0,comments:[]},404);_("info",`[system] [LogVar-API] Fetched comment ID: ${i}`);let d=df(o);if(d!==null){let y=d4({count:d.length,comments:d},l?await f4(o):null);return ag(y,e)}_("info","[system] [LogVar-API] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u5F39\u5E55...",o);let f=[],p=l?f4(o):null;if(o&&o.includes(Iu))f=await Gmr(o,a,i);else{o.includes(".qq.com")?f=await be.run("tencent",()=>z0.getComments(o,u,r)):o.includes(".iqiyi.com")?f=await be.run("iqiyi",()=>Y0.getComments(o,u,r)):o.includes(".mgtv.com")?f=await be.run("mango",()=>Dg.getComments(o,u,r)):o.includes(".bilibili.com")||o.includes("b23.tv")?(o.includes("b23.tv")&&(o=await be.run("bilibili",()=>Tu.resolveB23Link(o))),f=await be.run("bilibili",()=>Tu.getComments(o,u,r))):o.includes(".youku.com")?f=await be.run("youku",()=>K0.getComments(o,u,r)):o.includes(".miguvideo.com")?f=await be.run("migu",()=>J0.getComments(o,u,r)):o.includes(".sohu.com")?f=await be.run("sohu",()=>kg.getComments(o,u,r)):o.includes(".le.com")?f=await be.run("leshi",()=>Lg.getComments(o,u,r)):o.includes(".douyin.com")||o.includes(".ixigua.com")?f=await be.run("xigua",()=>Bg.getComments(o,u,r)):o.includes(".mddcloud.com.cn")?f=await be.run("maiduidui",()=>Mg.getComments(o,u,r)):o.includes(".yfsp.tv")&&(f=await be.run("aiyifan",()=>Wg.getComments(o,u,r)));let y=/^(https?:\/\/)?([\w.-]+)\.([a-z]{2,})(\/.*)?$/i;y.test(o)||(u==="renren"?f=await be.run("renren",()=>dw.getComments(o,u,r)):u==="hanjutv"?f=await be.run("hanjutv",()=>fw.getComments(o,u,r)):u==="bahamut"?f=await be.run("bahamut",()=>pw.getComments(o,u,r)):u==="dandan"?f=await be.run("dandan",()=>mw.getComments(o,u,r)):u==="custom"?f=await be.run("custom",()=>g4.getComments(o,u,r)):u==="animeko"&&(f=await be.run("animeko",()=>hw.getComments(o,u,r)))),(!f||f.length===0)&&y.test(o)&&(f=await be.run("other",()=>Bie.getComments(o,"other_server",r)))}let[m,h,A,g]=qL(i);if(m&&h){let y=null,x=null,v=null;if(n){let R=tK(n);R&&R.title&&R.season&&R.episode&&A&&(y=R.title,x=R.season,v=`${R.episode}:${A}`,_("info",`[system] [LogVar-API] Calculated episode offset for IP ${n}: Query E${R.episode}, Selected ${A} -> Offset ${v} (Season ${x})`))}_("info",`[system] [LogVar-API] animeTitle\uFF1A${a}; lastTitle\uFF1A${y}; titleMatches\uFF1A${yt(a,y)}`),(yt(a,y)||Array.isArray(g)&&g.some(R=>yt(R,y)))&&(_("info","[system] [LogVar-API] excute setPreferByAnimeId"),iK(m,h,x,v)),O.localCacheValid&&m&&QL("lastSelectMap",JSON.stringify(Object.fromEntries(O.lastSelectMap))),O.redisValid&&m&&Hz("lastSelectMap",O.lastSelectMap).catch(R=>_("error","[system] [LogVar-API] Redis set error",R)),O.localRedisValid&&m&&KB("lastSelectMap",O.lastSelectMap)}if(a&&A&&O.danmuOffsetRules?.length>0&&!(o&&o.includes(Iu))){let{baseTitle:y,season:x,episode:v}=Jz(a,A);x||=1,v||=UL(i)+1;let C=`S${x.toString().padStart(2,"0")}`,R=`E${v.toString().padStart(2,"0")}`,w=Ez(O.danmuOffsetRules,{anime:y,season:C,episode:R,source:h}),N=w?.offset||0;if(N!==0){let P=w?.usePercent?await Wie(o):0;_("info",`[system] [LogVar-API] Applying danmu offset: ${N}${w?.usePercent?"%":"s"} for ${y}/${C}/${R}${w?.usePercent?`, duration=${P}s`:""}`),f=_z(f,N,{usePercent:w?.usePercent,videoDuration:P})}}r||(f&&f.comments&&(f=f.comments),Array.isArray(f)||(f=[]),f.length>0&&LC(o,f));let b=d4({count:f.length,comments:f},p?await p:null);return ag(b,e)}async function qie(t,e,r,n=!1){try{if(!t||typeof t!="string")return _("error","[system] [LogVar-API] Missing or invalid url parameter"),Be({errorCode:400,success:!1,errorMessage:"Missing or invalid url parameter",count:0,comments:[]},400);if(t=t.trim(),!t.startsWith("http"))return _("error","[system] [LogVar-API] Invalid url format, must start with http or https"),Be({errorCode:400,success:!1,errorMessage:"Invalid url format, must start with http or https",count:0,comments:[]},400);_("info",`[system] [LogVar-API] Processing comment request for URL: ${t}`);let s=t,i=Tst(e,n),a=df(s);if(a!==null){let l=d4({errorCode:0,success:!0,errorMessage:"",count:a.length,comments:a},i?await f4(s):null);return ag(l,e)}_("info","[system] [LogVar-API] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u5F39\u5E55...",s);let o=[],c=i?f4(s):null;s.includes(".qq.com")?o=await be.run("tencent",()=>z0.getComments(s,"qq",r)):s.includes(".iqiyi.com")?o=await be.run("iqiyi",()=>Y0.getComments(s,"qiyi",r)):s.includes(".mgtv.com")?o=await be.run("mango",()=>Dg.getComments(s,"imgo",r)):s.includes(".bilibili.com")||s.includes("b23.tv")?(s.includes("b23.tv")&&(s=await be.run("bilibili",()=>Tu.resolveB23Link(s))),o=await be.run("bilibili",()=>Tu.getComments(s,"bilibili1",r))):s.includes(".youku.com")?o=await be.run("youku",()=>K0.getComments(s,"youku",r)):s.includes(".miguvideo.com")?o=await be.run("migu",()=>J0.getComments(s,"migu",r)):s.includes(".sohu.com")?o=await be.run("sohu",()=>kg.getComments(s,"sohu",r)):s.includes(".le.com")?o=await be.run("leshi",()=>Lg.getComments(s,"leshi",r)):s.includes(".douyin.com")||s.includes(".ixigua.com")?o=await be.run("xigua",()=>Bg.getComments(s,"xigua",r)):s.includes(".mddcloud.com.cn")?o=await be.run("maiduidui",()=>Mg.getComments(s,"maiduidui",r)):s.includes(".yfsp.tv")?o=await be.run("aiyifan",()=>Wg.getComments(s,"aiyifan",r)):/^(https?:\/\/)?([\w.-]+)\.([a-z]{2,})(\/.*)?$/i.test(s)&&(o=await be.run("other",()=>Bie.getComments(s,"other_server",r))),_("info",`[system] [LogVar-API] Successfully fetched ${o.length} comments from URL`),o.length>0&&LC(s,o);let u=d4({errorCode:0,success:!0,errorMessage:"",count:o.length,comments:o},c?await c:null);return ag(u,e)}catch(s){return _("error",`[system] [LogVar-API] Failed to process comment by URL request: ${s.message}`),Be({errorCode:500,success:!1,errorMessage:"Internal server error",count:0,comments:[]},500)}}async function Dst(t,e){try{let r=t.url,n=t.type;if(!r||typeof r!="string")return _("error","[system] [SegmentComment] Missing or invalid url parameter"),Be({errorCode:400,success:!1,errorMessage:"Missing or invalid url parameter",count:0,comments:[]},400);r=r.trim(),_("info",`[system] [SegmentComment] Processing segment comment request for URL: ${r}`);let s=df(r);if(s!==null){let o={errorCode:0,success:!0,errorMessage:"",count:s.length,comments:s};return ag(o,e)}_("info",`[system] [SegmentComment] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u5206\u6BB5\u5F39\u5E55... URL: ${r}`);let i=[];n==="qq"?i=await be.run("tencent",()=>z0.getSegmentComments(t)):n==="qiyi"?i=await be.run("iqiyi",()=>Y0.getSegmentComments(t)):n==="imgo"?i=await be.run("mango",()=>Dg.getSegmentComments(t)):n==="bilibili1"?i=await be.run("bilibili",()=>Tu.getSegmentComments(t)):n==="youku"?i=await be.run("youku",()=>K0.getSegmentComments(t)):n==="migu"?i=await be.run("migu",()=>J0.getSegmentComments(t)):n==="sohu"?i=await be.run("sohu",()=>kg.getSegmentComments(t)):n==="leshi"?i=await be.run("leshi",()=>Lg.getSegmentComments(t)):n==="xigua"?i=await be.run("xigua",()=>Bg.getSegmentComments(t)):n==="maiduidui"?i=await be.run("maiduidui",()=>Mg.getSegmentComments(t)):n==="aiyifan"?i=await be.run("aiyifan",()=>Wg.getSegmentComments(t)):n==="hanjutv"?i=await be.run("hanjutv",()=>fw.getSegmentComments(t)):n==="bahamut"?i=await be.run("bahamut",()=>pw.getSegmentComments(t)):n==="renren"?i=await be.run("renren",()=>dw.getSegmentComments(t)):n==="dandan"?i=await be.run("dandan",()=>mw.getSegmentComments(t)):n==="animeko"?i=await be.run("animeko",()=>hw.getSegmentComments(t)):n==="custom"?i=await be.run("custom",()=>g4.getSegmentComments(t)):n==="other_server"&&(i=await be.run("other",()=>Bie.getSegmentComments(t))),_("info",`[system] [SegmentComment] Successfully fetched ${i.length} segment comments from URL`),i.length>0&&LC(r,i);let a={errorCode:0,success:!0,errorMessage:"",count:i.length,comments:i};return ag(a,e)}catch(r){return _("error",`[system] [SegmentComment] Failed to process segment comment request: ${r.message}`),Be({errorCode:500,success:!1,errorMessage:"Internal server error",count:0,comments:[]},500)}}Pt();ar();St();no();hn();var Vmr=[[/[\(\[(【]\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," "]],zmr=[[/\[[^\]]*\]/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," "]],Kmr=[{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}],Ymr=[{pattern:/(\d{4})[.\-\/å¹´](\d{1,2})[.\-\/月](\d{1,2})/,type:"ymd"},{pattern:/(\d{4})(\d{2})(\d{2})/,type:"ymd_compact"}];function A4(t){let e=String(t||"").trim();if(!e)return"";if(O.animeTitleSimplified)try{e=Gt(e)}catch{}return Fr(e.toLowerCase())}function kst(t){let e=String(t||"").replace(/\D/g,"");return e.length>=8?e.slice(0,8):""}function Jmr(t){let e=String(t||"");return Vmr.forEach(([r,n])=>{e=e.replace(r,n)}),e}function Bst(t){let e=String(t||"");return zmr.forEach(([n,s],i)=>{e=e.replace(n,s)}),e.replace(/\s+/g," ").trim()}function Lst(t){if(!t)return null;let e=String(t);for(let{pattern:s,group:i,chinese:a}of Kmr){let o=e.match(s);if(o&&o[i]!==void 0){let c=o[i];if(a){let u=tg(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 Ymr){let a=e.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=Bst(t),n=lf(r);return n!==null?n:null}function Xmr(t){let e=String(t||"").trim();if(!e)return[];let r=[],n=a=>{let o=Fr(String(a||"").trim());!o||r.includes(o)||r.push(o)};n(e);let s=Fr(Jmr(e)).trim();s&&s!==e&&n(s);let i=Fr(e.replace(/[\(\[(【].*$/,"")).trim();return i&&i!==e&&n(i),r.sort((a,o)=>a.length-o.length)}function Zmr(t){let e=new URL(t.url),r=e.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`${e.origin}${i}`}async function ehr(t,e){if(e.method==="GET")return{name:t.searchParams.get("name")||"",episode:t.searchParams.get("episode")||""};try{let r=e.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){_("warn",`[system] [Fongmi] \u89E3\u6790\u8BF7\u6C42\u53C2\u6570\u5931\u8D25: ${r.message}`)}return{name:"",episode:""}}function thr(t,e,r,n){let s=Math.max(0,200-n),i=Bst(r),a=A4(i);if(!a)return s;let o=e?.episodeTitle||"",c=A4(o),u=A4(rg(o)),l=A4(t?.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=Lst(i),f=Lst(o),p=parseInt(e?.episodeNumber||`${n+1}`,10);d!==null&&f!==null&&d===f&&(s+=7e3),d!==null&&Number.isFinite(p)&&d===p&&(s+=4e3);let m=kst(i),h=kst(o);return m&&h&&m===h&&(s+=9e3),m&&a.includes(m)&&(s+=800),l.includes("\u7EFC\u827A")&&m&&h&&(s+=1200),l.includes("\u7EFC\u827A")&&m&&!h&&d===null&&(s-=1500),s}function rhr(t,e,r){let n=[];for(let s of t){let i=Fg(s,e);if(!i?.success||!i?.bangumi?.episodes?.length)continue;let a=i.bangumi.episodes;O.enableAnimeEpisodeFilter&&(a=a.filter(o=>!O.episodeTitleFilter.test(o.episodeTitle))),a=$g(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 jie(t,e){let{name:r,episode:n}=await ehr(t,e);if(!r)return Be([],200);if(O.titleMappingTable&&O.titleMappingTable.size>0){let f=O.titleMappingTable.get(r);f&&(_("info",`[system] [Fongmi] Title mapped from original: ${r} to: ${f}`),r=f)}let s=new URL(t.toString()),i=new Map,a=Xmr(r),o=[];for(let f of a){s.searchParams.set("keyword",f);let m=await(await sE(s,null,null,i)).json();if(o=Array.isArray(m?.animes)?m.animes:[],o.length){f!==r&&_("info",`[system] [Fongmi] Search fallback hit: raw=${r}, keyword=${f}, episode=${n}`);break}}if(!o.length)return _("info",`[system] [Fongmi] No danmaku candidates for name=${r}, episode=${n}`),Be([],200);let c=Zmr(e),u=rhr(o,i,c).map(f=>({...f,score:thr(f.anime,f.episode,n,f.index)})).sort((f,p)=>p.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 _("info",`[system] [Fongmi] name=${r}, episode=${n}, candidates=${d.length}`),Be(d,200)}Pt();ar();Pt();var Mst=` +

`,"
"],x=-1;for(let L of b){let Z=a.indexOf(L,g);if(Z!==-1){x=Z;break}}if(x===-1){let L=a.indexOf('
[\s\S]*?]*title="([^"]*)"[^>]*>/.exec(A);if(I&&I[1]&&(S=I[1].trim()),!S&&p.keyWord){let L=/(.*?)(?:\d{4})?(?:电影|电视剧|综艺)?$/.exec(p.keyWord);L&&L[1]&&(S=L[1].replace(/[^\u4e00-\u9fa5a-zA-Z0-9]/g,"").trim())}if(!S){let L=/]*title="([^"]*?)[^0-9\u4e00-\u9fa5][^"]*"/.exec(A);L&&L[1]&&(S=L[1].trim())}S||E("info","[Leshi] \u672A\u627E\u5230\u6807\u9898\uFF0C\u5C1D\u8BD5\u4ECE\u5176\u4ED6\u6765\u6E90\u83B7\u53D6");let R=/]*(?:src|data-src|alt)="([^"]+)"/.exec(A),w=R?R[1]:"",N=null,k=/年份:<\/b>.*?>(\d{4})<\/a>/.exec(A);k||(k=/ä¸Šæ˜ æ—¶é—´ï¼š<\/b>.*?>(\d{4})<\/a>/.exec(A)),k||(k=/_y(\d{4})_/.exec(A)),k||(k=/(\d{4})/.exec(p.keyWord||"")),k&&(N=parseInt(k[1]));let B=bot[h]||"\u7535\u89C6\u5267",M=y&&/^\d+$/.test(y)?parseInt(y):0,D={mediaId:m,title:S,type:B,year:N,imageUrl:w&&w.startsWith("http")?w:w?`https:${w}`:null,episodeCount:M};o.push(D),E("info",`[Leshi] \u89E3\u6790\u6210\u529F - ${S} (pid=${m}, type=${B}, episodes=${M})`)}catch(f){E("warn",`[Leshi] \u89E3\u6790\u641C\u7D22\u7ED3\u679C\u9879\u5931\u8D25: ${f}`);continue}if(o.length>0){E("info",`[Leshi] \u7F51\u7EDC\u641C\u7D22 '${e}' \u5B8C\u6210\uFF0C\u627E\u5230 ${o.length} \u4E2A\u6709\u6548\u7ED3\u679C\u3002`),E("info","[Leshi] \u641C\u7D22\u7ED3\u679C\u5217\u8868:");for(let d of o)E("info",`[Leshi] - ${d.title} (ID: ${d.mediaId}, \u7C7B\u578B: ${d.type}, \u5E74\u4EFD: ${d.year})`)}else E("info",`[Leshi] \u7F51\u7EDC\u641C\u7D22 '${e}' \u5B8C\u6210\uFF0C\u627E\u5230 0 \u4E2A\u7ED3\u679C\u3002`);return o}catch(r){return E("error","[Leshi] \u641C\u7D22\u51FA\u9519:",r.message),[]}}async getEpisodes(e){try{E("info",`[Leshi] \u83B7\u53D6\u5206\u96C6\u5217\u8868: media_id=${e}`);let r=[`https://www.le.com/tv/${e}.html`,`https://www.le.com/comic/${e}.html`,`https://www.le.com/playlet/${e}.html`,`https://www.le.com/movie/${e}.html`],n=null;for(let l of r)try{let d=await Ae(l,{timeout:1e4});if(d&&d.data&&d.status===200){n=d.data,E("info",`[Leshi] \u6210\u529F\u83B7\u53D6\u9875\u9762: ${l}`);break}}catch(d){E("info",`[Leshi] \u5C1D\u8BD5URL\u5931\u8D25 ${l}: ${d}`);continue}if(!n)return E("error",`[Leshi] \u65E0\u6CD5\u83B7\u53D6\u4F5C\u54C1\u9875\u9762: media_id=${e}`),[];let s=/
[\s\S]*?<\/div>\s*<\/div>\s*<\/div>/.exec(n);if(s)return E("info","[Leshi] \u627E\u5230\u56FE\u6587\u9009\u96C6\u5BB9\u5668"),this.parseEpisodesFromHtml(s[0],e);let i=/
[\s\S]*?<\/div>\s*<\/div>\s*<\/div>/.exec(n);if(i)return E("info","[Leshi] \u627E\u5230\u6570\u5B57\u9009\u96C6\u5BB9\u5668"),this.parseEpisodesFromHtml(i[0],e);E("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?(E("info",`[Leshi] \u4ECEHTML\u5185\u5BB9\u4E2D\u5339\u914D\u5230 ${u.length} \u4E2A\u5267\u96C6\u94FE\u63A5`),u):[]}catch(r){return E("error","[Leshi] \u83B7\u53D6\u5206\u96C6\u51FA\u9519:",r.message),[]}}parseEpisodesFromHtml(e,r){try{let n=/
]*>[\s\S]*?<\/div>/g,s=e.match(n);if(!s||s.length===0){E("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=e.match(a);if(!o||o.length===0){E("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=e.match(c);return!u||u.length===0?(E("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?(E("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 E("error",`[Leshi] \u89E3\u6790\u5267\u96C6HTML\u5931\u8D25: ${n.message}`),[]}}extractEpisodes(e,r){let n=[];for(let s of e)try{let i=/]+href="(\/\/www\.le\.com\/ptv\/vplay\/(\d+)\.html)"[^>]*>/.exec(s);if(!i){E("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 p=/]*title="([^"]*)"[^>]*>[\s\S]*?
/.exec(s)||/
[\s\S]*?]*title="([^"]*)"/.exec(s);if(p&&p[1])u=p[1].trim();else{let m=/
]*>([^<]*)/.exec(s);if(m&&m[1])u=m[1].trim();else{let h=/]*title="[^"]*"[^>]*>([^<]*)/.exec(s);h&&h[1]&&(u=h[1].trim())}}}if(!u){let p=/第(\d+)集|(\d+)(?:\s*预告)?/.exec(s);p?u=`\u7B2C${p[1]||p[2]}\u96C6`:u=`\u7B2C${n.length+1}\u96C6`}if(/预告|Preview|preview/.test(u)){E("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){E("warn",`[Leshi] \u89E3\u6790\u5355\u4E2A\u5267\u96C6\u5931\u8D25: ${i.message}`);continue}return E("info",`[Leshi] \u6210\u529F\u89E3\u6790\u5267\u96C6\u5217\u8868: media_id=${r}, \u5171 ${n.length} \u96C6`),n}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return E("error","[Leshi] sourceAnimes is not a valid array"),[];let o=e.filter(l=>xt(l.title,r,i)),c=i!==null?i:$t(r);if(c!==null){let l=o.filter(d=>{let f=Tt(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,E("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 p=0;p0){let m={animeId:Vr(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:Br(l.year||new Date().getFullYear()),episodeCount:f.length,rating:0,isFavorited:!0,source:"leshi"};a.push(m),Bt({...m,links:f},s),O.animes.length>O.MAX_ANIMES&&Ut()}}catch(d){E("error",`[Leshi] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){E("info","[Leshi] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u4E50\u89C6\u7F51\u5F39\u5E55...",e);let r=await this.getEpisodeDanmuSegments(e);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;E("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(...h);else if(p>600)break}else E("error",`[Leshi] \u83B7\u53D6\u5F39\u5E55\u6BB5\u5931\u8D25 (${p}-${m}s):`,d.reason.message)}a+ssetTimeout(l,200))}return i.length===0?(E("info",`[Leshi] \u4E50\u89C6\u7F51: \u8BE5\u89C6\u9891\u6682\u65E0\u5F39\u5E55\u6570\u636E (vid=${e})`),[]):(rs(i),i)}async getDanmuSegment(e){try{let r=await Ae(e.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 E("error","[Leshi] \u8BF7\u6C42\u5206\u7247\u5F39\u5E55\u5931\u8D25:",r),[]}}async getEpisodeDanmuSegments(e){E("info","[Leshi] \u83B7\u53D6\u4E50\u89C6\u7F51\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e);let r=e,n=e.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 E("error",`[Leshi] \u683C\u5F0F\u5316\u5F39\u5E55\u5931\u8D25: ${n.message}, \u5F39\u5E55\u6570\u636E:`,r),null}}).filter(r=>r!==null)}};kt();vt();dr();ws();Un();mn();ys();var Loe=class extends wt{async search(e){try{let r=`https://m.ixigua.com/s/${e}`,s=(await Ae(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+)"/),p=f?`https://m.ixigua.com${f[1]}`:"",m=d.match(/

[\s\S]*?title="([^"]+)"/),h=m?m[1]:"",y=d.match(/([^<]+\/[^<]+\/\d{4})<\/p>/),x="",A="";if(b){let S=b[1].split("/");x=S[0]||"",A=S[2]||""}p&&h&&i.push({name:h,type:x,year:A,img:g,url:p})})}else return E("info","[Xigua] xiguaSearchresp: \u76F8\u5173\u89C6\u9891\u7684section \u4E0D\u5B58\u5728"),[];return E("info",`[Xigua] \u641C\u7D22\u627E\u5230 ${i.length} \u4E2A\u6709\u6548\u7ED3\u679C`),i}catch(r){return E("error","[Xigua] getXiguaAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getDetail(e){try{let n=`https://m.ixigua.com/video/${e.split("/").pop()}`,s=await Ae(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 E("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 E("error","[Xigua] getXiguaDetail error:",{message:r.message,name:r.name,stack:r.stack}),0}}async getEpisodes(e){try{let r=`https://m.ixigua.com/video/${e}`,n=await Ae(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 E("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){E("error","[Xigua] \u89E3\u6790episodes_list\u5931\u8D25:",i)}else return E("info","[Xigua] getXiguaEposides: episodes_list \u4E0D\u5B58\u5728"),[]}catch(r){return E("error","[Xigua] getXiguaEposides error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return E("error","[Xigua] sourceAnimes is not a valid array"),[];let o=e.filter(l=>xt(l.name,r,i)),c=i!==null?i:$t(r);if(c!==null){let l=o.filter(d=>{let f=Tt(d.name).season;return f===c||c===1&&f===null});l.length>0&&(o=l,E("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),p=[];for(let m of f){let h=m.title;p.push({name:h,url:m.url,title:`\u3010xigua\u3011 ${h}`})}if(p.length>0){let m={animeId:Vr(d),bangumiId:String(d),animeTitle:`${l.name}(${l.year})\u3010${l.type}\u3011from xigua`,type:l.type,typeDescription:l.type,imageUrl:l.img,startDate:Br(l.year),episodeCount:p.length,rating:0,isFavorited:!0,source:"xigua"};a.push(m),Bt({...m,links:p},s),O.animes.length>O.MAX_ANIMES&&Ut()}}catch(d){E("error",`[Xigua] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){E("info","[Xigua] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u897F\u74DC\u89C6\u9891\u5F39\u5E55...",e);let r=await this.getEpisodeDanmuSegments(e);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;E("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(...h)}else E("error",`[Xigua] \u83B7\u53D6\u5F39\u5E55\u6BB5\u5931\u8D25 (${p}-${m}s):`,d.reason.message)}a+ssetTimeout(l,200))}return i.length===0?(E("info",`[Xigua] \u897F\u74DC\u89C6\u9891: \u8BE5\u89C6\u9891\u6682\u65E0\u5F39\u5E55\u6570\u636E (vid=${e})`),[]):(rs(i),i)}async getEpisodeDanmuSegments(e){E("info","[Xigua] \u83B7\u53D6\u897F\u74DC\u89C6\u9891\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e);let r=e.split("/").pop(),n=await this.getDetail(e)*1e3;E("info","[Xigua] itemId:",r),E("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)}))}},_ot=Loe;kt();vt();dr();ws();Un();mn();ys();var Moe=class extends wt{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(e,r){let n=Date.now(),s=Ii(r,!1),i=`os:Android|version:5.8.00|action:${e}|time:${n}|appToken:|privateKey:e1be6b4cf4021b3d181170d1879a530a9e4130b69032144d5568abfd6cd6c1c2|data:${s}&`;return{channel:"1000",data:r,deviceNum:"853BDD7A1DC011F1C341455071C03AEB",deviceType:0,jsonSign:0,os:"Android",sign:Ms(i),sourceVersion:0,terminalType:"APP",thirdStatus:0,time:n,version:"5.8.00",visitorStatus:0}}extractByRegex(e){let r=e.match(/\/video\/([a-f0-9]+)\.html/i),n=e.match(/[?&]uuid=([a-f0-9]+)/i);return{vodUuid:r?r[1]:null,uuid:n?n[1]:null,success:!!(r&&n)}}async search(e){try{let r="/searchApi/search/getAllSearchResult4820.action",n=`${this.domain}${r}`,s={keyWord:e},i=await Gr(n,JSON.stringify(this.getPlayload(r,s)),{headers:this.headers});if(!i||!i.data)return E("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 E("info",`[Maiduidui] \u641C\u7D22\u627E\u5230 ${o.length} \u4E2A\u6709\u6548\u7ED3\u679C`),o}catch(r){return E("error","[Maiduidui] getMaiduiduiAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getDetail(e){try{let r=this.extractByRegex(e),n=r.uuid,s=r.vodUuid,i="/api/vod/listVodSactions.action",a=`${this.domain}${i}`,o={hasIntroduction:0,vodUuid:s},c=await Gr(a,JSON.stringify(this.getPlayload(i,o)),{headers:this.headers});if(!c||!c.data)return E("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 E("error","[Maiduidui] getMaiduiduiDetail error:",{message:r.message,name:r.name,stack:r.stack}),0}}async getEpisodes(e){try{let r="/api/vod/listVodSactions.action",n=`${this.domain}${r}`,s={hasIntroduction:0,vodUuid:e},i=await Gr(n,JSON.stringify(this.getPlayload(r,s)),{headers:this.headers});if(!i||!i.data)return E("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 E("error","[Maiduidui] getMaiduiduiEposides error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return E("error","[Maiduidui] sourceAnimes is not a valid array"),[];let o=e.filter(l=>xt(l.name,r,i)),c=i!==null?i:$t(r);if(c!==null){let l=o.filter(d=>{let f=Tt(d.name).season;return f===c||c===1&&f===null});l.length>0&&(o=l,E("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 p of d){let m=p.title;f.push({name:m,url:`https://www.mddcloud.com.cn/video/${l.url}.html?uuid=${p.episodeId}`,title:`\u3010maiduidui\u3011 ${m}`})}if(f.length>0){let p={animeId:Vr(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:Br(l.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"maiduidui"};a.push(p),Bt({...p,links:f},s),O.animes.length>O.MAX_ANIMES&&Ut()}}catch(d){E("error",`[Maiduidui] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){E("info","[Maiduidui] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u57CB\u5806\u5806\u5F39\u5E55...",e);let r=await this.getEpisodeDanmuSegments(e);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;E("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(...h)}else E("error",`[Maiduidui] \u83B7\u53D6\u5F39\u5E55\u6BB5\u5931\u8D25 (${p}-${m}s):`,d.reason.message)}a+ssetTimeout(l,200))}return i.length===0?(E("info",`[Maiduidui] \u57CB\u5806\u5806: \u8BE5\u89C6\u9891\u6682\u65E0\u5F39\u5E55\u6570\u636E (vid=${e})`),[]):(rs(i),i)}async getEpisodeDanmuSegments(e){E("info","[Maiduidui] \u83B7\u53D6\u57CB\u5806\u5806\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e);let n=this.extractByRegex(e).uuid,s=await this.getDetail(e);E("info","[Maiduidui] uuid:",n),E("info","[Maiduidui] duration:",s);let i=60,a=[];for(let o=0;o{u.push(...f.barrageList)}),u}catch(r){return E("error","[Maiduidui] \u8BF7\u6C42\u5206\u7247\u5F39\u5E55\u5931\u8D25:",r),[]}}formatComments(e){return e.map(r=>({cid:Number(r.uuid),p:`${r.times.toFixed(2)},1,${Jb(r.color.replace("#",""))},[maiduidui]`,m:r.content,t:r.times}))}},Eot=Moe;vt();dr();ws();Un();mn();mo();kt();kt();vt();ws();dr();var cbr="https://www.yfsp.tv/",ubr="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0 Safari/537.36",lbr=60*1e3;function lw(t,e,r){if(t==null)return r;let n=e.split("."),s=t;for(let i=0;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 E("info",`[Aiyifan] \u641C\u7D22\u5B8C\u6210\uFF0C\u627E\u5230 ${s.length} \u4E2A\u7ED3\u679C`),s}async getEpisodes(e){E("info",`[Aiyifan] \u83B7\u53D6\u5267\u96C6\u8BE6\u60C5: ${e}`);let r=await this.getPlaylist(e);if(!r.length)return E("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}/${e}?id=${s.key}`}));return E("info",`[Aiyifan] \u83B7\u53D6\u5230 ${n.length} \u4E2A\u5267\u96C6`),n}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return E("error","[Aiyifan] sourceAnimes is not a valid array"),[];let o=e.filter(l=>xt(l.title,r,i)),c=i!==null?i:$t(r);if(c!==null){let l=o.filter(d=>{let f=Tt(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,E("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){E("info",`[Aiyifan] ${l.title} \u65E0\u5206\u96C6\uFF0C\u8DF3\u8FC7`);return}let f=d.map((h,y)=>({name:h.title||`${y+1}`,url:h.link,title:`\u3010aiyifan\u3011 ${h.title}`}));if(f.length===0)return;let m={animeId:Vr(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:Br(l.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"aiyifan"};a.push(m),Bt({...m,links:f},s),O.animes.length>O.MAX_ANIMES&&Ut()}catch(d){E("error",`[Aiyifan] \u5904\u7406 ${l.title} \u5931\u8D25:`,d.message)}});return await Promise.all(u),this.sortAndPushAnimesByYear(a,n),a}async getEpisodeDanmu(e){E("info",`[Aiyifan] \u83B7\u53D6\u5F39\u5E55: ${e}`);let r=this.extractEpisodeRequestKey(e),n=this.inflightDanmuRequests.get(r);if(n)return E("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 E("error","[Aiyifan] \u83B7\u53D6\u89C6\u9891\u4FE1\u606F\u5931\u8D25"),[];let o=this.extractUniqueKey(a);if(!o)return E("error","[Aiyifan] \u672A\u83B7\u53D6\u5230uniqueKey"),[];let c=await this.fetchBarrage(o);return c.length===0?(E("info","[Aiyifan] \u672A\u83B7\u53D6\u5230\u5F39\u5E55"),[]):(c.sort((u,l)=>(u.second||0)-(l.second||0)),E("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(e){let r=await this.getEpisodeDanmu(e),n=[{type:"aiyifan",segment_start:0,segment_end:Math.max(...r.map(s=>s.second||0),0),url:`${this.DANMU_API}?uniqueKey=${e}`}];return{type:"aiyifan",duration:Math.max(...r.map(s=>s.second||0),0),segmentList:n}}async getEpisodeSegmentDanmu(e){let r=e.url?.split("uniqueKey=")[1];return r?await this.getEpisodeDanmu(r):[]}formatComments(e){return e.map(r=>({p:`${r.second||0},${r.position===1?5:1},25,${Jb(r.color.replace("#",""))},0,0,0,0`,m:r.contxt||r.content||"",like:r.good,...r})).map(r=>(O.danmuSimplifiedTraditional==="simplified"&&r.m&&(r.m=zt(r.m)),r))}};kt();vt();dr();Un();mo();ys();mn();var $c={danmu:null,subject:null},fw=new Map,Ebr=3*60*1e3,vbr=100,pw=class extends wt{get headers(){return{"Content-Type":"application/json","User-Agent":`huangxd-/danmu_api/${O.version}(https://github.com/huangxd-/danmu_api)`}}_applyProxyForSearch(e){return O.makeProxyUrl(e)}_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 e="https://api.bgm.tv",r="https://api.bangumi.lol",n=this._applyProxyForSearch(e),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!==e?[...i,{type:"V0",url:n},{type:"V0",url:r}]:[...i,{type:"V0",url:r},{type:"V0",url:e}]}async _fetchV0AllEpisodes(e,r){let n=[],s=0,i=200;try{for(;;){let a=`${e}/v0/episodes?subject_id=${r}&limit=${i}&offset=${s}`,o=await Ae(a,{headers:this.headers,timeout:3e3});if(!o||!o.data||!Array.isArray(o.data.data)){s===0&&E("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&&E("info",`[Animeko] ID:${r} \u6B63\u52A0\u8F7D\u66F4\u591A\u5267\u96C6 (\u5F53\u524D\u5DF2\u83B7: ${n.length})`),c.length1600){E("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 E("error","[Animeko] V0\u5267\u96C6\u83B7\u53D6\u5F02\u5E38:",{message:a.message,id:r,offset:s}),[]}}async _fetchAnimekoSubject(e){let r=fw.get(e);if(r&&Date.now()-r.timestampa.url===s);(!s||i===-1)&&(i=0,s=n[0].url,$c.subject=s);for(let a=0;a(E("warn",`[Animeko] V0\u5173\u8054\u83B7\u53D6\u5F02\u5E38: ${d.message}`),null))]);(u&&u.length>0||l)&&(c={id:e},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($c.subject!==o.url&&(E("info",`[Animeko] \u8BE6\u60C5\u8282\u70B9\u5065\u5EB7\u72B6\u6001\u66F4\u65B0: ${$c.subject} -> ${o.url}`),$c.subject=o.url),fw.set(e,{data:c,timestamp:Date.now()}),fw.size>vbr){let u=fw.keys().next().value;fw.delete(u)}return c}E("warn",`[Animeko] \u8282\u70B9 ${o.url} \u8FD4\u56DE\u65E0\u6548\u6570\u636E`)}catch(c){E("warn",`[Animeko] \u8282\u70B9\u8BF7\u6C42\u5931\u8D25: ${o.url} - ${c.message}`)}}return E("warn","[Animeko] \u6240\u6709\u8BE6\u60C5\u8282\u70B9\u5747\u5931\u8D25\uFF0C\u91CD\u7F6E\u5065\u5EB7\u72B6\u6001\u81F3\u4F18\u5148\u7EA7\u9996\u4F4D"),$c.subject=n[0].url,null}async search(e){if(O.useBangumiData){let r=await Ru(e,["bangumi"]);if(r.length>0){E("info",`[Animeko] Bangumi-Data \u672C\u5730\u547D\u4E2D ${r.length} \u6761\u6570\u636E\uFF08\u68C0\u7D22\u8BCD\uFF1A${e}\uFF09`);let n=r.map(s=>{let a=(s.titles.find(o=>o&&o.includes(e))||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 E("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=e.replace(/[._]/g," ").replace(/\s+/g," ").trim();E("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]}},p=null;for(let y of d)try{if(p=await Gr(y.url,JSON.stringify(f),{headers:this.headers,timeout:5e3}),p&&p.data){E("info",`[Animeko] \u641C\u7D22\u8282\u70B9 [${y.id}] \u8BF7\u6C42\u6210\u529F (offset: ${s})`);break}}catch(g){E("warn",`[Animeko] \u641C\u7D22\u8282\u70B9 [${y.id}] \u8BF7\u6C42\u5931\u8D25: ${g.message}`)}if(!p||!p.data){E("info",`[Animeko] \u641C\u7D22\u8BF7\u6C42\u6240\u6709\u8282\u70B9\u5747\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE (offset: ${s})`);break}let m=p.data.data||[];if(m.length===0)break;let h=this.filterSearchResults(m,e);if(h.length>0&&(n=n.concat(h)),h.length=60){E("warn","[Animeko] \u641C\u7D22\u7FFB\u9875\u8FBE\u5230\u5B89\u5168\u4E0A\u9650(60)\uFF0C\u5F3A\u5236\u505C\u6B62");break}}if(n.length===0)return E("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)),E("info",`[Animeko] \u641C\u7D22\u5B8C\u6210\uFF0C\u5171\u627E\u5230 ${a.length} \u4E2A\u6709\u6548\u7ED3\u679C`),this.transformResults(a)}catch(r){return E("error","[Animeko] Search error:",{message:r.message,name:r.name,stack:r.stack}),[]}}filterSearchResults(e,r){return e.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(e){return e?/第?\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&&(E("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 p=d.relation;p==="\u7EED\u96C6"&&(p="\u7EED\u7BC7"),a._relation_mark=`(${p})`}}}return e}_extractRelations(e){if(!e||!e.relations)return[];let r=e.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(e,r){if(!e||!e.fields||!Array.isArray(e.fields))return null;let n=e.fields.find(s=>s.key===r);return n&&n.values&&n.values.length>0&&n.values[0].v||null}_ExtractInfoboxAliases(e){let r=[];return!e||!e.fields||!Array.isArray(e.fields)||e.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(e){return e.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(e){try{let r=await this._fetchAnimekoSubject(e);return!r||!r.episodes||!Array.isArray(r.episodes)?(r&&E("info",`[Animeko] Subject ${e} \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 E("error","[Animeko] GetEpisodes error:",{message:r.message,id:e}),[]}}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return e&&E("error","[Animeko] sourceAnimes is not a valid array"),[];let o=e,c=i!==null?i:$t(r);if(c!==null){let l=o.filter(d=>{let f=d.name_cn||d.name,p=Tt(f).season;return p===c||c===1&&p===null});l.length>0&&(o=l,E("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=[],p=l.air_date||"";if(Array.isArray(d)){d.sort((m,h)=>(m.sort||0)-(h.sort||0));for(let m of d){if(m.type!==0)continue;!p&&m.airdate&&(p=m.airdate);let h=m.sort||m.ep,y=m.name_cn||m.name||"",g=`\u7B2C${h}\u8BDD ${y}`.trim();f.push({name:`${h}`,url:m.id.toString(),title:`\u3010animeko\u3011 ${g}`})}}if(f.length>0){let m=p?new Date(p).getFullYear():"",h={animeId:l.id,bangumiId:String(l.id),animeTitle:`${l.name_cn||l.name}(${m})\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:p,episodeCount:f.length,rating:l.score||0,isFavorited:!0,source:"animeko"};a.push(h),Bt({...h,links:f},s),O.animes.length>O.MAX_ANIMES&&Ut()}}catch(d){E("error",`[Animeko] Error processing anime ${l.id}: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){let r=String(e).trim();if(r.includes("/")){let a=r.split("/");r=a[a.length-1]}if(r.includes("?")&&(r=r.split("?")[0]),!r)return E("error","[Animeko] \u65E0\u6548\u7684 episodeId"),[];let n=this._getDanmuServerPriority(),s=$c.danmu,i=n.indexOf(s);(!s||i===-1)&&(i=0,s=n[0],$c.danmu=s);for(let a=0;a ${c}`),$c.danmu=c),E("info",`[Animeko] \u6210\u529F\u83B7\u53D6\u5F39\u5E55\uFF0C\u5171 ${d.length} \u6761 (${c}\u8282\u70B9)`),d}E("info",`[Animeko] ${c} \u8282\u70B9\u83B7\u53D6\u5931\u8D25/\u65E0\u6570\u636E\uFF0C\u89E6\u53D1\u964D\u7EA7`)}catch(l){E("warn",`[Animeko] \u8BF7\u6C42\u8282\u70B9\u5931\u8D25: ${c} - ${l.message}`)}}return E("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"),$c.danmu=n[0],[]}async getEpisodeDanmuSegments(e){return new St({type:"animeko",segmentList:[{type:"animeko",segment_start:0,segment_end:3e4,url:String(e)}]})}async getEpisodeSegmentDanmu(e){let r=(e.url||"").trim();return r?this.getEpisodeDanmu(r):[]}formatComments(e){if(!Array.isArray(e))return[];let r={NORMAL:1,TOP:5,BOTTOM:4};return e.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=O.danmuSimplifiedTraditional==="simplified"?zt(s.text):s.text;return{cid:n.id,p:`${i},${a},${o},[animeko]`,m:c}})}};kt();vt();dr();mn();ys();var mw=class extends wt{async search(e){}async getEpisodes(e){}async handleAnimes(e,r,n,s=null){}async getEpisodeDanmu(e){try{let r=await Ae(`${O.otherServer}/?url=${e}&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 E("info",`[Other] danmu response from ${O.otherServer}: \u2193\u2193\u2193`),rs(r.data),r.data}catch(r){return E("error",`[Other] \u8BF7\u6C42 ${O.otherServer} \u5931\u8D25:`,r),[]}}async getEpisodeDanmuSegments(e){return E("info","[Other] \u83B7\u53D6\u7B2C\u4E09\u65B9\u670D\u52A1\u5668\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e),new St({type:"other_server",segmentList:[{type:"other_server",segment_start:0,segment_end:3e4,url:e}]})}async getEpisodeSegmentDanmu(e){return this.getEpisodeDanmu(e.url)}formatComments(e){return e}};ys();var Tot=new VT,wot=new YT,hw=new tw,gw=new rw,yw=new Xg,Aw=new nw,G5=new sw,hm=new Zg,gm=new ny,ym=new ey,sy=new ty,$u=new ry,Am=new xot,iy=new cw,ay=new uw,oy=new _ot,cy=new Eot,uy=new dw,xw=new pw,$oe=new mw,Uoe=new XT(hm,ym,gm,$u,Am),Rot=new JT(Uoe),U5=new Map;function Iot(t){let e=Number(t||0);return!Number.isFinite(e)||e<=0?0:e>6*60*60?e/1e3:e}function Not(t,e=!1){return e?String(t||O.danmuOutputFormat||"json").toLowerCase()==="json":!1}function F5(t,e=null){return e===null?t:{videoDuration:e,...t}}function Sbr(t){let e=Iot(t?.duration||t?.videoDuration||0);if(e>0)return e;let r=Array.isArray(t?.segmentList)?t.segmentList:[];if(!r.length)return 0;let n=0;return r.forEach(s=>{let i=Iot(s?.segment_end||0);i<=0||i>n&&(n=i)}),n>0?n:0}async function Foe(t){if(!/^https?:\/\//i.test(t))return 0;try{let e=t,r=null;return e.includes(".qq.com")?r=await _e.run("tencent",()=>hm.getComments(e,"qq",!0)):e.includes(".iqiyi.com")?r=await _e.run("iqiyi",()=>ym.getComments(e,"qiyi",!0)):e.includes(".mgtv.com")?r=await _e.run("mango",()=>sy.getComments(e,"imgo",!0)):e.includes(".bilibili.com")||e.includes("b23.tv")?(e.includes("b23.tv")&&(e=await _e.run("bilibili",()=>$u.resolveB23Link(e))),r=await _e.run("bilibili",()=>$u.getComments(e,"bilibili1",!0))):e.includes(".youku.com")?r=await _e.run("youku",()=>gm.getComments(e,"youku",!0)):e.includes(".miguvideo.com")?r=await _e.run("migu",()=>Am.getComments(e,"migu",!0)):e.includes(".sohu.com")?r=await _e.run("sohu",()=>iy.getComments(e,"sohu",!0)):e.includes(".le.com")?r=await _e.run("leshi",()=>ay.getComments(e,"leshi",!0)):e.includes(".douyin.com")||e.includes(".ixigua.com")?r=await _e.run("xigua",()=>oy.getComments(e,"xigua",!0)):e.includes(".mddcloud.com.cn")?r=await _e.run("maiduidui",()=>cy.getComments(e,"maiduidui",!0)):e.includes(".yfsp.tv")&&(r=await _e.run("aiyifan",()=>uy.getComments(e,"aiyifan",!0))),Sbr(r)}catch(e){return E("warn",`[system] [Duration] \u83B7\u53D6\u65F6\u957F\u5931\u8D25: ${e.message}`),0}}function Ibr(t){return String(t||"").split(Wu).map(e=>{let r=e.indexOf(":");return r===-1?e.trim():e.slice(r+1).trim()}).filter(Boolean)}async function q5(t){if(!t)return 0;try{let e=t.includes(Wu)?Ibr(t):[t];return(await Promise.all(e.map(Foe))).reduce((n,s)=>Math.max(n,s||0),0)}catch(e){return E("warn",`[system] [Duration] \u83B7\u53D6\u65F6\u957F\u5931\u8D25: ${e.message}`),0}}function j5(t,e){if(!e)return!0;let r=im(t.animeTitle);return r?r===e:!0}function Cbr(t,e,r){let n=t.animeTitle.match(/^(.*?)\(\d{4}\)/),s=n?n[1].trim():t.animeTitle.split("(")[0].trim(),i=Dr(s),a=Dr(e);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&&Gl(u[0])===r)return!0}return!1}else return!1}function Woe(t,e,r,n,s){if(r===null||e===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 t){let f=Q5(d.animeTitle)||d.source;if(o!=="_any_"&&op(f,o)===0)continue;l=!0;let p=dy(d,n);if(p?.success&&p.bangumi?.episodes){let m=p.bangumi.episodes.filter(x=>!O.episodeTitleFilter.test(x.episodeTitle)),h=ly(m);if(h.some(x=>Tf(x.episodeTitle)===r)){c=!0;break}let y=[d.animeTitle];d.aliases&&Array.isArray(d.aliases)&&y.push(...d.aliases);let g=null;for(let x of y){if(!x)continue;let A=Tt(x).season;if(A!==null){g=A;break}}g===null&&(g=1);let b=u.get(g)||0;h.length>b&&u.set(g,h.length)}}if(l&&!c){let d=0;for(let f of u.values())d+=f;if(dt[W]!==void 0),D=[];for(let W of M){let U=[],z=new Map;if(W==="360")D.push({key:W,animes:U,detailStore:z,promise:_e.run(In(W),()=>Tot.handleAnimes(c,e,U,z,s))});else if(W==="vod"){if(o&&Array.isArray(o)){let j=_e.run(W,()=>(async()=>{for(let J of o)J&&J.list&&J.list.length>0&&await wot.handleAnimes(J.list,e,U,J.serverName,z,s)})());D.push({key:W,animes:U,detailStore:z,promise:j})}}else W==="tmdb"?D.push({key:W,animes:U,detailStore:z,promise:_e.run(W,()=>Rot.handleAnimes(u,e,U,z,s))}):W==="douban"?D.push({key:W,animes:U,detailStore:z,promise:_e.run(W,()=>Uoe.handleAnimes(l,e,U,z,s))}):W==="renren"?D.push({key:W,animes:U,detailStore:z,promise:_e.run(W,()=>hw.handleAnimes(d,e,U,z,s))}):W==="hanjutv"?D.push({key:W,animes:U,detailStore:z,promise:_e.run(W,()=>gw.handleAnimes(f,e,U,z,s))}):W==="bahamut"?D.push({key:W,animes:U,detailStore:z,promise:_e.run(W,()=>yw.handleAnimes(p,e,U,z,s))}):W==="dandan"?D.push({key:W,animes:U,detailStore:z,promise:_e.run(W,()=>Aw.handleAnimes(m,e,U,z,s))}):W==="custom"?D.push({key:W,animes:U,detailStore:z,promise:_e.run(W,()=>G5.handleAnimes(h,e,U))}):W==="tencent"?D.push({key:W,animes:U,detailStore:z,promise:_e.run(W,()=>hm.handleAnimes(y,e,U,z,s))}):W==="youku"?D.push({key:W,animes:U,detailStore:z,promise:_e.run(W,()=>gm.handleAnimes(g,e,U,z,s))}):W==="iqiyi"?D.push({key:W,animes:U,detailStore:z,promise:_e.run(W,()=>ym.handleAnimes(b,e,U,z,s))}):W==="imgo"?D.push({key:W,animes:U,detailStore:z,promise:_e.run(In(W),()=>sy.handleAnimes(x,e,U,z,s))}):W==="bilibili"?D.push({key:W,animes:U,detailStore:z,promise:_e.run(W,()=>$u.handleAnimes(A,e,U,z,s))}):W==="migu"?D.push({key:W,animes:U,detailStore:z,promise:_e.run(W,()=>Am.handleAnimes(S,e,U,z,s))}):W==="sohu"?D.push({key:W,animes:U,detailStore:z,promise:_e.run(W,()=>iy.handleAnimes(I,e,U,z,s))}):W==="leshi"?D.push({key:W,animes:U,detailStore:z,promise:_e.run(W,()=>ay.handleAnimes(R,e,U,z,s))}):W==="xigua"?D.push({key:W,animes:U,detailStore:z,promise:_e.run(W,()=>oy.handleAnimes(w,e,U,z,s))}):W==="maiduidui"?D.push({key:W,animes:U,detailStore:z,promise:_e.run(W,()=>cy.handleAnimes(N,e,U,z,s))}):W==="aiyifan"?D.push({key:W,animes:U,detailStore:z,promise:_e.run(W,()=>uy.handleAnimes(k,e,U,z,s))}):W==="animeko"&&D.push({key:W,animes:U,detailStore:z,promise:_e.run(W,()=>xw.handleAnimes(B,e,U,z,s))})}let L=await Promise.allSettled(D.map(W=>W.promise)),Z=new Set(r.map(W=>W.animeId));for(let W=0;W ${y}`),i=y}let c=n instanceof Map?n:new Map,u=a!==null?`${i}_S${a}`:i,l=MC(u,c);if(l===null&&a!==null){let y=MC(i,c);y!==null&&(E("info",`[system] [searchAnime] Cache miss for ${u}, fallback to generic cache for ${i}`),l=y)}if(l!==null){let y=Woe(l,a,o,c,s);if(y)return We({errorCode:0,success:!0,errorMessage:"",animes:l});{let g=a+1,b=[...l],x=!1;for(;!y&&!x;){let A=`${i}_S${g}`,S=MC(A,c);S!==null&&S.length>0?(b.push(...S),y=Woe(b,a,o,c,s),g++):x=!0}if(y)return E("info",`[system] [LogVar-API] Episode ${o} satisfied by combining cached seasons S${a} to S${g-1}`),We({errorCode:0,success:!0,errorMessage:"",animes:b});E("info",`[system] [LogVar-API] Episode ${o} not satisfied in cache. Proceeding to network search.`)}}let d=[];if(/^(https?:\/\/)?([a-zA-Z0-9-]+\.)+[a-zA-Z]{2,6}(:\d+)?(\/[^\s]*)?$/.test(i)){let y=om.fromJson({animeId:0,bangumiId:"0",animeTitle:i,type:"",typeDescription:"\u94FE\u63A5\u89E3\u6790",imageUrl:"",startDate:"",episodeCount:1,rating:0,isFavorited:!0}),g="unknown";i.includes(".qq.com")?g="qq":i.includes(".iqiyi.com")?g="qiyi":i.includes(".mgtv.com")?g="imgo":i.includes(".youku.com")?g="youku":i.includes(".bilibili.com")?g="bilibili1":i.includes(".miguvideo.com")?g="migu":i.includes(".sohu.com")?g="sohu":i.includes(".le.com")?g="leshi":i.includes(".douyin.com")||i.includes(".ixigua.com")?g="xigua":i.includes(".mddcloud.com.cn")?g="maiduidui":i.includes(".yfsp.tv")&&(g="aiyifan");let b=await _e.run(In(g),()=>TUe(i)),x=[{name:"\u624B\u52A8\u89E3\u6790\u94FE\u63A5\u5F39\u5E55",url:i,title:`\u3010${g}\u3011 ${b}`}];d.push(y),Bt(om.fromJson({...y,links:x}),c),O.animes.length>O.MAX_ANIMES&&Ut(),O.localCacheValid&&d.length!==0&&await EL(),O.redisValid&&d.length!==0&&await uL(),O.localRedisValid&&d.length!==0&&await C5();let A=d.map(({links:S,...I})=>I);return We({errorCode:0,success:!0,errorMessage:"",animes:A})}try{E("info",`[system] [LogVar-API] Search sourceOrderArr: ${O.sourceOrderArr}`);let y={},g={};for(let I of O.sourceOrderArr)I==="360"?g[I]=_e.run(In(I),()=>Tot.search(i)):I==="vod"?g[I]=_e.run(In(I),()=>wot.search(i,e,r)):I==="tmdb"?g[I]=_e.run(In(I),()=>Rot.search(i)):I==="douban"?g[I]=_e.run(In(I),()=>Uoe.search(i)):I==="renren"?g[I]=_e.run(In(I),()=>hw.search(i)):I==="hanjutv"?g[I]=_e.run(In(I),()=>gw.search(i)):I==="bahamut"?g[I]=_e.run(In(I),()=>yw.search(i)):I==="dandan"?g[I]=_e.run(In(I),()=>Aw.search(i)):I==="custom"?g[I]=_e.run(In(I),()=>G5.search(i)):I==="tencent"?g[I]=_e.run(In(I),()=>hm.search(i)):I==="youku"?g[I]=_e.run(In(I),()=>gm.search(i)):I==="iqiyi"?g[I]=_e.run(In(I),()=>ym.search(i)):I==="imgo"?g[I]=_e.run(In(I),()=>sy.search(i)):I==="bilibili"?g[I]=_e.run(In(I),()=>$u.search(i)):I==="migu"?g[I]=_e.run(In(I),()=>Am.search(i)):I==="sohu"?g[I]=_e.run(In(I),()=>iy.search(i)):I==="leshi"?g[I]=_e.run(In(I),()=>ay.search(i)):I==="xigua"?g[I]=_e.run(In(I),()=>oy.search(i)):I==="maiduidui"?g[I]=_e.run(In(I),()=>cy.search(i)):I==="aiyifan"?g[I]=_e.run(In(I),()=>uy.search(i)):I==="animeko"&&(g[I]=_e.run(In(I),()=>xw.search(i)));let b=O.sourceOrderArr.map(I=>{let R=[],w=new Map,N=g[I].then(async k=>{y[I]=k,await Cot({[I]:k},i,R,w,a,e,r)});return{key:I,animes:R,detailStore:w,promise:N}}),x=await Promise.allSettled(b.map(I=>I.promise)),A=new Set(d.map(I=>I.animeId));for(let I=0;I0&&WC(u,d.map(({links:I,...R})=>R),c),!Woe(d,a,o,c,s)&&a!==null){let I=a;for(let R of O.sourceOrderArr){let w=y[R];if(Array.isArray(w))for(let N of w){let k=N&&Array.isArray(N.list)?N.list:[N];for(let B of k){if(!B)continue;let M=Tt(B.animeTitle||B.title||"").season;M!==null&&M>I&&(I=M)}}}if(I>a){E("info",`[system] [LogVar-API] Episode ${o} not satisfied in Season ${a}. Parallel mapping to S${a+1}~S${I}...`);let R=[];for(let N=a+1;N<=I;N++)R.push((async()=>{let k=[];return await Cot(y,i,k,c,N,e,r),k.length>0&&WC(`${i}_S${N}`,k.map(({links:B,...M})=>M),c),k})());let w=await Promise.all(R);for(let N of w)d.push(...N)}}}catch(y){E("error","[system] [LogVar-API] \u53D1\u751F\u9519\u8BEF:",y)}let p=O.mergeSourcePairs&&O.mergeSourcePairs.length>0,m=O.customMergeRules&&O.customMergeRules.length>0;if((p||m)&&await Wat(d,c),oJ(d,i),O.enableAnimeEpisodeFilter){let y=[];for(let g of d){let b=g.animeTitle||"";if(O.animeTitleFilter&&O.animeTitleFilter.test(b)){E("info",`[searchAnime] Anime ${g.animeId} filtered by name: ${b}`);continue}let x=Ng(g?.bangumiId,c,g?.source)||Ng(g?.animeId,c,g?.source)||Rg(g?.bangumiId,c,g?.source)||Rg(g?.animeId,c,g?.source);if(x&&x.links){let A=x.links.map((S,I)=>({episodeId:S.id,episodeTitle:S.title,episodeNumber:I+1}));A=A.filter(S=>!O.episodeTitleFilter.test(S.episodeTitle)),E("info",`[searchAnime] Anime ${g.animeId} filtered episodes: ${A.length}/${x.links.length}`),A.length>0&&y.push(g)}}d.length=0,d.push(...y)}O.localCacheValid&&d.length!==0&&await EL(),O.redisValid&&d.length!==0&&await uL(),O.localRedisValid&&d.length!==0&&await C5();let h=d.map(({links:y,...g})=>g);if(h.length>0){let y=a!==null?`${i}_S${a}`:i;WC(y,h,c)}return We({errorCode:0,success:!0,errorMessage:"",animes:h})}function ly(t){return t.filter((r,n,s)=>!s.slice(0,n).some(i=>i.episodeTitle===r.episodeTitle))}function op(t,e){if(!t||!e)return 0;let r=t.split("&").map(i=>i.trim().toLowerCase()).filter(i=>i),n=e.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 Q5(t){let e=t.match(/from\s+([a-zA-Z0-9&]+)/i);return e?e[1]:null}function H5(t,e,r,n=null){if(!t||t.length===0)return null;let s=t;if(n&&(s=t.filter(i=>{let a=sm(i.episodeTitle);return op(a,n)>0})),s.length===0)return null;for(let i of s){let a=Tf(i.episodeTitle);if(e===r&&a===r)return E("info",`Found episode by title number: ${i.episodeTitle} (extracted: ${a})`),i}if(s.length>=r){let i=s[r-1];return E("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 E("info",`Found episode by episodeNumber: ${i.episodeTitle} (episodeNumber: ${i.episodeNumber})`),i;return null}async function Tbr(t,e,r,n,s,i,a,o,c=null){let u=O.aiBaseUrl,l=O.aiModel,d=O.aiApiKey,f=O.aiMatchPrompt;if(!O.aiValid||!f)return E("warn","AI configuration is incomplete, falling back to normal matching"),{resEpisode:null,resAnime:null};let p=new Rf({apiKey:d,baseURL:u,model:l,systemPrompt:f}),m={title:s,season:t,episode:e,year:r,dynamicPlatformOrder:a,preferAnimeId:o,animes:n.animes.map(h=>{let y=h.animeTitle||"",g=y.match(/^(.*?)\(\d{4}\)/),b=g?g[1].trim():y.split("(")[0].trim();return{animeId:h.animeId,animeTitle:b,aliases:h.aliases||[],type:h.type,year:h.startDate?h.startDate.slice(0,4):null,episodeCount:h.episodeCount,source:h.source}})};try{let h=JSON.stringify(m,null,2),y=await p.ask(h);E("info",`AI match response: ${y}`);let g;try{let I=y.match(/```json\s*([\s\S]*?)\s*```|```([\s\S]*?)\s*```|({[\s\S]*})/),R=I?I[1]||I[2]||I[3]:y;g=JSON.parse(R.trim())}catch(I){return E("error",`Failed to parse AI response: ${I.message}`),{resEpisode:null,resAnime:null}}let b=g.animeIndex;if(b==null)return{resEpisode:null,resAnime:null};let x=n.animes[b];if(!x)return E("error",`AI returned invalid anime index: ${b}`),{resEpisode:null,resAnime:null};let A=dy(x,c);if(!A?.success||!A?.bangumi?.episodes)return{resEpisode:null,resAnime:null};let S=null;if(t&&e){let I=A.bangumi.episodes.filter(w=>!O.episodeTitleFilter.test(w.episodeTitle)),R=ly(I);E("info","\u8FC7\u6EE4\u540E\u7684\u96C6\u6807\u9898",R.map(w=>w.episodeTitle)),S=H5(R,e,e)}else A.bangumi.episodes.length>0&&(S=A.bangumi.episodes[0]);return{resEpisode:S,resAnime:x}}catch(h){return E("error",`AI matching failed: ${h.message}`),{resEpisode:null,resAnime:null}}}function dy(t,e=null){let r=Ng(t?.bangumiId,e,t?.source)||Ng(t?.animeId,e,t?.source);return r?joe(r,t?.bangumiId||t?.animeId||""):(E("warn",`[matchAnime] Missing request detail snapshot for anime ${t?.animeId??t?.bangumiId}`),null)}function Oot(t,e,r,n,s){let i=String(e),a=t[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,E("info",`Applying offset "${t[i]}" for S${e}E${r} -> ${s}`)),s}function kot(t,e,r,n,s,i,a){if(!n||!s)return{resEpisode:null,resAnime:null};E("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=Dr(e),c=new Map;for(let f of t.animes){let p=[f.animeTitle];f.aliases&&Array.isArray(f.aliases)&&p.push(...f.aliases);let m=!1;for(let y of p)if(y&&Dr(y).includes(o)){if(!j5(f,r))continue;m=!0;break}if(!m)continue;let h=null;for(let y of p){if(!y)continue;let g=Tt(y).season;if(g!==null){h=g;break}}if(h===null&&(h=1),!c.has(h)){let y=dy(f,a);if(y?.success&&y?.bangumi?.episodes){let g=y.bangumi.episodes.filter(x=>!O.episodeTitleFilter.test(x.episodeTitle)),b=ly(g);b.length>0&&c.set(h,{anime:f,episodes:b,actualPlatform:Q5(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),p=f.episodes,m=null;for(let h of p)if(Tf(h.episodeTitle)===s){m=h;break}if(m){if(i&&op(sm(m.episodeTitle),i)===0)break;E("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${m.episodeTitle}`),d={anime:f.anime,episode:m,score:i?op(f.actualPlatform,i):1};break}if(u<=p.length){let h=p[u-1];if(i&&op(sm(h.episodeTitle),i)===0)break;E("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${h.episodeTitle}`),d={anime:f.anime,episode:h,score:i?op(f.actualPlatform,i):1};break}E("info",`[system] [Spillover] S${l} \u5171\u6709 ${p.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-=p.length,l++}return{resEpisode:d.episode,resAnime:d.anime}}async function wbr(t,e,r,n,s,i,a,o,c,u=null){let l={anime:null,episode:null,score:-9999},d=Dr(s);for(let f of n.animes){if(O.rememberLastSelect&&o&&String(f.bangumiId)!==String(o)&&String(f.animeId)!==String(o))continue;let m=!1,h=[f.animeTitle];f.aliases&&Array.isArray(f.aliases)&&h.push(...f.aliases);for(let x of h)if(x){if(t&&e){if(Dr(x).includes(d)){if(!j5(f,r)){E("info",`Year mismatch: anime year ${im(f.animeTitle)} vs query year ${r}`);continue}let A=O.rememberLastSelect&&o&&(String(f.bangumiId)===String(o)||String(f.animeId)===String(o)),S={...f,animeTitle:x};if(Cbr(S,s,t)||A){m=!0;break}}}else if(x.split("(")[0].trim()===s){if(!j5(f,r)){E("info",`Year mismatch: anime year ${im(f.animeTitle)} vs query year ${r}`);continue}m=!0;break}}if(!m)continue;let y=dy(f,u);if(!y?.success||!y?.bangumi?.episodes)continue;E("info","\u5224\u65AD\u5267\u96C6",`Anime: ${f.animeTitle}`),E("info",y);let g=null,b=O.rememberLastSelect&&o!=null&&(String(f.bangumiId)===String(o)||String(f.animeId)===String(o));if(t&&e){let x=y.bangumi.episodes.filter(I=>!O.episodeTitleFilter.test(I.episodeTitle)),A=ly(x);E("info","\u8FC7\u6EE4\u540E\u7684\u96C6\u6807\u9898",A.map(I=>I.episodeTitle));let S=e;c&&c[String(t)]!==void 0&&(S=Oot(c,t,e,A,S)),g=H5(A,e,S,a),!g&&b&&(E("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=H5(A,e,S,null))}else if(y.bangumi.episodes.length>0)if(a){let x=y.bangumi.episodes.find(A=>{let S=sm(A.episodeTitle);return op(S,a)>0});x?g=x:b&&(E("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=y.bangumi.episodes[0])}else g=y.bangumi.episodes[0];if(g){let x=Q5(f.animeTitle)||f.source,A=0;if(a?A=op(x,a):A=1,b&&(A+=9999),A>l.score&&(l={anime:f,episode:g,score:A}),!a||b)break}}if(!l.episode&&t&&e){let f=kot(n,s,r,t,e,a,u);f.resEpisode&&(l={episode:f.resEpisode,anime:f.resAnime,score:a?op(Q5(f.resAnime.animeTitle)||f.resAnime.source,a):1})}return{resEpisode:l.episode,resAnime:l.anime}}async function Rbr(t,e,r,n,s,i,a,o,c,u=null){for(let d of t.animes){if(s&&!j5(d,s)){E("info",`Fallback: Year mismatch: anime year ${im(d.animeTitle)} vs query year ${s}`);continue}let f=dy(d,u);if(!(!f?.success||!f?.bangumi?.episodes)){if(E("info",f),r&&n){let p=f.bangumi.episodes.filter(g=>!O.episodeTitleFilter.test(g.episodeTitle)),m=ly(p);E("info","[system] [LogVar-API] \u8FC7\u6EE4\u540E\u7684\u96C6\u6807\u9898",m.map(g=>g.episodeTitle));let h=n;c&&c[String(r)]!==void 0&&(h=Oot(c,r,n,m,h));let y=H5(m,n,h,null);if(y){a=y,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=kot(t,i,s,r,n,null,u);d.resEpisode&&(a=d.resEpisode,o=d.resAnime,l=!0)}return{resEpisode:a,resAnime:o,isSpillover:l}}async function Nbr(t){let e=/^(.+?)[.\s]+S(\d+)E(\d+)/i,r=t.match(e),n,s,i,a;if(r){n=r[1].trim(),s=parseInt(r[2],10),i=parseInt(r[3],10);let o=t.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=t.match(o);n=c?c[1].replace(/[._]/g," ").trim():t,s=null,i=null;let u=t.match(/(?:\.|\(|()((?:19|20)\d{2})(?:\)|)|\.|$)/);u&&(a=parseInt(u[1],10))}return O.titleToChinese&&(n=await _at(n.replace("."," "),s,i)),E("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 Pot(t,e,r,n){let s=new URL(t),i=s.pathname.replace(/\/(?:match|search\/episodes)$/,"");return s.pathname=`${i}/search/anime`,s.search="",s.searchParams.set("keyword",e||""),r!==void 0&&s.searchParams.set("season",r||""),n!==void 0&&s.searchParams.set("episode",n||""),s}async function Dot(t,e,r){try{let n=await e.json();if(!n)return E("error","[system] [Match] Request body is empty"),We({errorCode:400,success:!1,errorMessage:"Empty request body"},400);let{fileName:s}=n;if(!s)return E("error","[system] [Match] Missing fileName parameter in request body"),We({errorCode:400,success:!1,errorMessage:"Missing fileName parameter"},400);let{cleanFileName:i,preferredPlatform:a}=$Ue(s);E("info",`[system] [Match] Processing anime match for query: ${s}`),E("info",`[system] [Match] Parsed cleanFileName: ${i}, preferredPlatform: ${a}`);let{title:o,season:c,episode:u,year:l}=await Nbr(i);if(O.titleMappingTable&&O.titleMappingTable.size>0){let N=O.titleMappingTable.get(o);N&&(o=N,E("info",`[system] [Match] Title mapped from original: ${t.searchParams.get("keyword")} to: ${o}`))}if(O.animeTitleSimplified){let N=zt(o);E("info",`[system] [Match] matchAnime converted traditional to simplified: ${o} -> ${N}`),o=N}let[d,f,p]=uJ(o,c);E("info",`[system] [Match] prefer animeId: ${d} from ${f}`);let m=UUe(a),h=m.length>0?m[0]:null,y=new Map,g=Pot(e.url,o,c,u),x=await(await $1(g,d,f,y,h)).json();E("info",`[system] [Match] searchData: ${x.animes}`);let A,S,I=!1,R={errorCode:0,success:!0,errorMessage:"",isMatched:!1,matches:[]};E("info",`[system] [Match] Original platformOrderArr: ${O.platformOrderArr}`),E("info",`[system] [Match] Dynamic platformOrder: ${m}`),E("info",`[system] [Match] Preferred platform: ${a||"none"}`);let w=await Tbr(c,u,l,x,o,e,m,d,y);if(w.resAnime&&w.resEpisode)A=w.resAnime,S=w.resEpisode,R.isMatched=!0,E("info",`[system] [Match] AI match found: ${A.animeTitle}; episode: ${S.episodeTitle}`);else{for(let N of m){let k=await wbr(c,u,l,x,o,e,N,d,p,y);if(S=k.resEpisode,A=k.resAnime,A){R.isMatched=!0,E("info",`[system] [Match] Found match with platform: ${N||"default"}`);break}}if(!A){let N=await Rbr(x,e,c,u,l,o,S,A,p,y);S=N.resEpisode,A=N.resAnime,I=N.isSpillover}}return S&&(R.isMatched=!0,r&&!I&&nJ(r,{title:o,season:c,episode:u,episodeId:S.episodeId}),R.matches=[fL.fromJson({episodeId:S.episodeId,animeId:A.animeId,animeTitle:A.animeTitle,episodeTitle:S.episodeTitle,type:A.type,typeDescription:A.typeDescription,shift:0,imageUrl:A.imageUrl})]),E("info",`[system] [Match] resMatchData: ${R}`),We(R)}catch(n){return E("error",`[system] [Match] Failed to parse request body: ${n.message}`),We({errorCode:400,success:!1,errorMessage:"Invalid JSON body"},400)}}async function Bot(t){let e=t.searchParams.get("anime"),r=t.searchParams.get("episode")||"";if(O.animeTitleSimplified){let c=zt(e);E("info",`[system] [Episodes] searchEpisodes converted traditional to simplified: ${e} -> ${c}`),e=c}if(E("info",`[system] [Episodes] Search episodes with anime: ${e}, episode: ${r}`),!e)return E("error","[system] [Episodes] Missing anime parameter"),We({errorCode:400,success:!1,errorMessage:"Missing anime parameter"},400);let n=Pot(t,e),s=new Map,a=await(await $1(n,null,null,s)).json();if(!a.success||!a.animes||a.animes.length===0)return E("info","[system] [Episodes] No anime found for the given title"),We({errorCode:0,success:!0,errorMessage:"",hasMore:!1,animes:[]});let o=[];for(let c of a.animes){let u=Rg(c.bangumiId,s,c.source)||Rg(c.animeId,s,c.source),l=null;if(u)l=joe(u,c.bangumiId);else{let d=new URL(`/bangumi/${c.bangumiId}`,t.origin);l=await(await qoe(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(p=>parseInt(p.episodeNumber)===f)}}d.length>0&&o.push(mL.fromJson({animeId:c.animeId,animeTitle:c.animeTitle,type:c.type,typeDescription:c.typeDescription,episodes:d.map(f=>({episodeId:f.episodeId,episodeTitle:f.episodeTitle}))}))}}return E("info",`[system] [Episodes] Found ${o.length} animes with filtered episodes`),We({errorCode:0,success:!0,errorMessage:"",animes:o})}async function qoe(t,e=null,r=null){let n=t.split("/").pop(),s=Ng(n,e,r)||Rg(n);return s?We(joe(s,n)):(E("error",`[system] [Bangumi] Anime with ID ${n} not found`),We({errorCode:404,success:!1,errorMessage:"Anime not found",bangumi:null},404))}function joe(t,e=""){E("info",`[system] [Bangumi] Fetched details for anime ID: ${e||t.bangumiId}`);let r=[];for(let s=0;s!O.episodeTitleFilter.test(s.episodeTitle)),E("info",`[system] [getBangumi] Episode filter enabled. Filtered episodes: ${r.length}/${t.links.length}`),r.length===0)return E("warn",`[system] [getBangumi] No valid episodes after filtering for anime ID ${e||t.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:hL.fromJson({animeId:t.animeId,bangumiId:t.bangumiId,animeTitle:t.animeTitle,imageUrl:t.imageUrl,isOnAir:!0,airDay:1,isFavorited:t.isFavorited,rating:t.rating,type:t.type,typeDescription:t.typeDescription,seasons:[{id:`season-${t.animeId}`,airDate:t.startDate,name:"Season 1",episodeCount:t.episodeCount}],episodes:r})}}async function Obr(t,e,r){let n=t.split(Wu),s=n.map(m=>{let h=m.indexOf(":");if(h===-1)return{realId:"",logicalSource:"",sourceLabel:""};let y=m.substring(0,h),g=m.substring(h+1);return y!=="hanjutv"?{realId:g,logicalSource:y,sourceLabel:y}:{realId:g,logicalSource:"hanjutv",sourceLabel:B5(g)}}),i=s.map(m=>m.logicalSource).filter(Boolean),a=s.map(m=>m.realId),o=s.map(m=>m.sourceLabel).filter(Boolean).join("\uFF06");E("info",`[Merge] \u5F00\u59CB\u83B7\u53D6 [${o}] \u805A\u5408\u5F39\u5E55...`);let c=wf(t);if(c)return E("info",`[Merge] \u547D\u4E2D\u7F13\u5B58 [${o}]\uFF0C\u8FD4\u56DE ${c.length} \u6761`),c;let u={},l=s.map(async m=>{let h=m.logicalSource,y=m.sourceLabel||m.logicalSource,g=m.realId;if(!h||!g)return[];let b=`${h}:${g}`;if(U5.has(b)){E("info",`[Merge] \u590D\u7528\u6B63\u5728\u8FDB\u884C\u7684\u8BF7\u6C42: ${b}`);try{return await U5.get(b)||[]}catch{return[]}}let x=_e.run(In(h),async()=>{let A=null;if(h==="renren"?A=hw:h==="hanjutv"?A=gw:h==="bahamut"?A=yw:h==="dandan"?A=Aw:h==="tencent"?A=hm:h==="youku"?A=gm:h==="iqiyi"?A=ym:h==="imgo"?A=sy:h==="bilibili"?A=$u:h==="migu"?A=Am:h==="sohu"?A=iy:h==="leshi"?A=ay:h==="xigua"?A=oy:h==="maiduidui"?A=cy:h==="aiyifan"?A=uy:h==="animeko"&&(A=xw),A)try{let S=await A.getEpisodeDanmu(g,n),I=A.formatComments(S);return E("info",`[${y}] \u83B7\u53D6\u5F39\u5E55 ${I.length} \u6761`),I&&Array.isArray(I)&&I.forEach(R=>{R._sourceLabel||(R._sourceLabel=y)}),u[y]=I.length,I}catch(S){return E("error",`[Merge] \u83B7\u53D6 ${y} \u5931\u8D25: ${S.message}`),u[y]=0,[]}return[]});U5.set(b,x);try{return await x}finally{U5.delete(b)}}),d=await Promise.all(l);if(Uat(d,i,a),O.danmuOffsetRules?.length>0&&e&&r){let[,,m]=AL(r);if(m){let{baseTitle:h,season:y,episode:g}=eJ(e,m);y||=1,g||=yL(r)+1;let b=`S${y.toString().padStart(2,"0")}`,x=`E${g.toString().padStart(2,"0")}`;for(let A=0;A ${i[A]} (${h}/${b}/${x})${I?.usePercent?`, duration=${N}s`:""}`),d[A]=IY(S,R,{usePercent:I?.usePercent,videoDuration:N})}}}}let f=[];d.forEach(m=>{f=$at(f,m)});let p=Object.entries(u).map(([m,h])=>`${m}: ${h}`).join(", ");return E("info",`[Merge] \u805A\u5408\u539F\u59CB\u6570\u636E\u5B8C\u6210: \u603B\u8BA1 ${f.length} \u6761 (${p})`),FC(f,o)}async function Qoe(t,e,r,n,s=!1){let i=parseInt(t.split("/").pop()),a=aJ(i),o=UC(i),c=iJ(i),u=c?sm(c):null,l=Not(e,s);if(E("info","[system] [LogVar-API] comment url...",o),E("info","[system] [LogVar-API] comment title...",c),E("info","[system] [LogVar-API] comment platform...",u),!o)return E("error",`[system] [LogVar-API] Comment with ID ${i} not found`),We({count:0,comments:[]},404);E("info",`[system] [LogVar-API] Fetched comment ID: ${i}`);let d=wf(o);if(d!==null){let x=F5({count:d.length,comments:d},l?await q5(o):null);return Og(x,e)}E("info","[system] [LogVar-API] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u5F39\u5E55...",o);let f=[],p=l?q5(o):null;if(o&&o.includes(Wu))f=await Obr(o,a,i);else{o.includes(".qq.com")?f=await _e.run("tencent",()=>hm.getComments(o,u,r)):o.includes(".iqiyi.com")?f=await _e.run("iqiyi",()=>ym.getComments(o,u,r)):o.includes(".mgtv.com")?f=await _e.run("mango",()=>sy.getComments(o,u,r)):o.includes(".bilibili.com")||o.includes("b23.tv")?(o.includes("b23.tv")&&(o=await _e.run("bilibili",()=>$u.resolveB23Link(o))),f=await _e.run("bilibili",()=>$u.getComments(o,u,r))):o.includes(".youku.com")?f=await _e.run("youku",()=>gm.getComments(o,u,r)):o.includes(".miguvideo.com")?f=await _e.run("migu",()=>Am.getComments(o,u,r)):o.includes(".sohu.com")?f=await _e.run("sohu",()=>iy.getComments(o,u,r)):o.includes(".le.com")?f=await _e.run("leshi",()=>ay.getComments(o,u,r)):o.includes(".douyin.com")||o.includes(".ixigua.com")?f=await _e.run("xigua",()=>oy.getComments(o,u,r)):o.includes(".mddcloud.com.cn")?f=await _e.run("maiduidui",()=>cy.getComments(o,u,r)):o.includes(".yfsp.tv")&&(f=await _e.run("aiyifan",()=>uy.getComments(o,u,r)));let x=/^(https?:\/\/)?([\w.-]+)\.([a-z]{2,})(\/.*)?$/i;x.test(o)||(u==="renren"?f=await _e.run("renren",()=>hw.getComments(o,u,r)):u==="hanjutv"?f=await _e.run("hanjutv",()=>gw.getComments(o,u,r)):u==="bahamut"?f=await _e.run("bahamut",()=>yw.getComments(o,u,r)):u==="dandan"?f=await _e.run("dandan",()=>Aw.getComments(o,u,r)):u==="custom"?f=await _e.run("custom",()=>G5.getComments(o,u,r)):u==="animeko"&&(f=await _e.run("animeko",()=>xw.getComments(o,u,r)))),(!f||f.length===0)&&x.test(o)&&(f=await _e.run("other",()=>$oe.getComments(o,"other_server",r)))}let[m,h,y,g]=AL(i);if(m&&h){let x=null,A=null,S=null;if(n){let R=sJ(n);R&&R.title&&R.season&&R.episode&&y&&(x=R.title,A=R.season,S=`${R.episode}:${y}`,E("info",`[system] [LogVar-API] Calculated episode offset for IP ${n}: Query E${R.episode}, Selected ${y} -> Offset ${S} (Season ${A})`))}E("info",`[system] [LogVar-API] animeTitle\uFF1A${a}; lastTitle\uFF1A${x}; titleMatches\uFF1A${xt(a,x)}`),(xt(a,x)||Array.isArray(g)&&g.some(R=>xt(R,x)))&&(E("info","[system] [LogVar-API] excute setPreferByAnimeId"),cJ(m,h,A,S)),O.localCacheValid&&m&&_L("lastSelectMap",JSON.stringify(Object.fromEntries(O.lastSelectMap))),O.redisValid&&m&&zY("lastSelectMap",O.lastSelectMap).catch(R=>E("error","[system] [LogVar-API] Redis set error",R)),O.localRedisValid&&m&&I5("lastSelectMap",O.lastSelectMap)}if(a&&y&&O.danmuOffsetRules?.length>0&&!(o&&o.includes(Wu))){let{baseTitle:x,season:A,episode:S}=eJ(a,y);A||=1,S||=yL(i)+1;let I=`S${A.toString().padStart(2,"0")}`,R=`E${S.toString().padStart(2,"0")}`,w=SY(O.danmuOffsetRules,{anime:x,season:I,episode:R,source:h}),N=w?.offset||0;if(N!==0){let k=w?.usePercent?await Foe(o):0;E("info",`[system] [LogVar-API] Applying danmu offset: ${N}${w?.usePercent?"%":"s"} for ${x}/${I}/${R}${w?.usePercent?`, duration=${k}s`:""}`),f=IY(f,N,{usePercent:w?.usePercent,videoDuration:k})}}r||(f&&f.comments&&(f=f.comments),Array.isArray(f)||(f=[]),f.length>0&&$C(o,f));let b=F5({count:f.length,comments:f},p?await p:null);return Og(b,e)}async function Hoe(t,e,r,n=!1){try{if(!t||typeof t!="string")return E("error","[system] [LogVar-API] Missing or invalid url parameter"),We({errorCode:400,success:!1,errorMessage:"Missing or invalid url parameter",count:0,comments:[]},400);if(t=t.trim(),!t.startsWith("http"))return E("error","[system] [LogVar-API] Invalid url format, must start with http or https"),We({errorCode:400,success:!1,errorMessage:"Invalid url format, must start with http or https",count:0,comments:[]},400);E("info",`[system] [LogVar-API] Processing comment request for URL: ${t}`);let s=t,i=Not(e,n),a=wf(s);if(a!==null){let l=F5({errorCode:0,success:!0,errorMessage:"",count:a.length,comments:a},i?await q5(s):null);return Og(l,e)}E("info","[system] [LogVar-API] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u5F39\u5E55...",s);let o=[],c=i?q5(s):null;s.includes(".qq.com")?o=await _e.run("tencent",()=>hm.getComments(s,"qq",r)):s.includes(".iqiyi.com")?o=await _e.run("iqiyi",()=>ym.getComments(s,"qiyi",r)):s.includes(".mgtv.com")?o=await _e.run("mango",()=>sy.getComments(s,"imgo",r)):s.includes(".bilibili.com")||s.includes("b23.tv")?(s.includes("b23.tv")&&(s=await _e.run("bilibili",()=>$u.resolveB23Link(s))),o=await _e.run("bilibili",()=>$u.getComments(s,"bilibili1",r))):s.includes(".youku.com")?o=await _e.run("youku",()=>gm.getComments(s,"youku",r)):s.includes(".miguvideo.com")?o=await _e.run("migu",()=>Am.getComments(s,"migu",r)):s.includes(".sohu.com")?o=await _e.run("sohu",()=>iy.getComments(s,"sohu",r)):s.includes(".le.com")?o=await _e.run("leshi",()=>ay.getComments(s,"leshi",r)):s.includes(".douyin.com")||s.includes(".ixigua.com")?o=await _e.run("xigua",()=>oy.getComments(s,"xigua",r)):s.includes(".mddcloud.com.cn")?o=await _e.run("maiduidui",()=>cy.getComments(s,"maiduidui",r)):s.includes(".yfsp.tv")?o=await _e.run("aiyifan",()=>uy.getComments(s,"aiyifan",r)):/^(https?:\/\/)?([\w.-]+)\.([a-z]{2,})(\/.*)?$/i.test(s)&&(o=await _e.run("other",()=>$oe.getComments(s,"other_server",r))),E("info",`[system] [LogVar-API] Successfully fetched ${o.length} comments from URL`),o.length>0&&$C(s,o);let u=F5({errorCode:0,success:!0,errorMessage:"",count:o.length,comments:o},c?await c:null);return Og(u,e)}catch(s){return E("error",`[system] [LogVar-API] Failed to process comment by URL request: ${s.message}`),We({errorCode:500,success:!1,errorMessage:"Internal server error",count:0,comments:[]},500)}}async function Lot(t,e){try{let r=t.url,n=t.type;if(!r||typeof r!="string")return E("error","[system] [SegmentComment] Missing or invalid url parameter"),We({errorCode:400,success:!1,errorMessage:"Missing or invalid url parameter",count:0,comments:[]},400);r=r.trim(),E("info",`[system] [SegmentComment] Processing segment comment request for URL: ${r}`);let s=wf(r);if(s!==null){let o={errorCode:0,success:!0,errorMessage:"",count:s.length,comments:s};return Og(o,e)}E("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",()=>hm.getSegmentComments(t)):n==="qiyi"?i=await _e.run("iqiyi",()=>ym.getSegmentComments(t)):n==="imgo"?i=await _e.run("mango",()=>sy.getSegmentComments(t)):n==="bilibili1"?i=await _e.run("bilibili",()=>$u.getSegmentComments(t)):n==="youku"?i=await _e.run("youku",()=>gm.getSegmentComments(t)):n==="migu"?i=await _e.run("migu",()=>Am.getSegmentComments(t)):n==="sohu"?i=await _e.run("sohu",()=>iy.getSegmentComments(t)):n==="leshi"?i=await _e.run("leshi",()=>ay.getSegmentComments(t)):n==="xigua"?i=await _e.run("xigua",()=>oy.getSegmentComments(t)):n==="maiduidui"?i=await _e.run("maiduidui",()=>cy.getSegmentComments(t)):n==="aiyifan"?i=await _e.run("aiyifan",()=>uy.getSegmentComments(t)):n==="hanjutv"?i=await _e.run("hanjutv",()=>gw.getSegmentComments(t)):n==="bahamut"?i=await _e.run("bahamut",()=>yw.getSegmentComments(t)):n==="renren"?i=await _e.run("renren",()=>hw.getSegmentComments(t)):n==="dandan"?i=await _e.run("dandan",()=>Aw.getSegmentComments(t)):n==="animeko"?i=await _e.run("animeko",()=>xw.getSegmentComments(t)):n==="custom"?i=await _e.run("custom",()=>G5.getSegmentComments(t)):n==="other_server"&&(i=await _e.run("other",()=>$oe.getSegmentComments(t))),E("info",`[system] [SegmentComment] Successfully fetched ${i.length} segment comments from URL`),i.length>0&&$C(r,i);let a={errorCode:0,success:!0,errorMessage:"",count:i.length,comments:i};return Og(a,e)}catch(r){return E("error",`[system] [SegmentComment] Failed to process segment comment request: ${r.message}`),We({errorCode:500,success:!1,errorMessage:"Internal server error",count:0,comments:[]},500)}}kt();dr();vt();mo();mn();var kbr=[[/[\(\[(【]\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," "]],Pbr=[[/\[[^\]]*\]/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," "]],Dbr=[{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}],Bbr=[{pattern:/(\d{4})[.\-\/å¹´](\d{1,2})[.\-\/月](\d{1,2})/,type:"ymd"},{pattern:/(\d{4})(\d{2})(\d{2})/,type:"ymd_compact"}];function z5(t){let e=String(t||"").trim();if(!e)return"";if(O.animeTitleSimplified)try{e=zt(e)}catch{}return Dr(e.toLowerCase())}function Mot(t){let e=String(t||"").replace(/\D/g,"");return e.length>=8?e.slice(0,8):""}function Lbr(t){let e=String(t||"");return kbr.forEach(([r,n])=>{e=e.replace(r,n)}),e}function $ot(t){let e=String(t||"");return Pbr.forEach(([n,s],i)=>{e=e.replace(n,s)}),e.replace(/\s+/g," ").trim()}function Wot(t){if(!t)return null;let e=String(t);for(let{pattern:s,group:i,chinese:a}of Dbr){let o=e.match(s);if(o&&o[i]!==void 0){let c=o[i];if(a){let u=Gl(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 Bbr){let a=e.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=$ot(t),n=Tf(r);return n!==null?n:null}function Mbr(t){let e=String(t||"").trim();if(!e)return[];let r=[],n=a=>{let o=Dr(String(a||"").trim());!o||r.includes(o)||r.push(o)};n(e);let s=Dr(Lbr(e)).trim();s&&s!==e&&n(s);let i=Dr(e.replace(/[\(\[(【].*$/,"")).trim();return i&&i!==e&&n(i),r.sort((a,o)=>a.length-o.length)}function Wbr(t){let e=new URL(t.url),r=e.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`${e.origin}${i}`}async function $br(t,e){if(e.method==="GET")return{name:t.searchParams.get("name")||"",episode:t.searchParams.get("episode")||""};try{let r=e.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){E("warn",`[system] [Fongmi] \u89E3\u6790\u8BF7\u6C42\u53C2\u6570\u5931\u8D25: ${r.message}`)}return{name:"",episode:""}}function Ubr(t,e,r,n){let s=Math.max(0,200-n),i=$ot(r),a=z5(i);if(!a)return s;let o=e?.episodeTitle||"",c=z5(o),u=z5(sm(o)),l=z5(t?.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=Wot(i),f=Wot(o),p=parseInt(e?.episodeNumber||`${n+1}`,10);d!==null&&f!==null&&d===f&&(s+=7e3),d!==null&&Number.isFinite(p)&&d===p&&(s+=4e3);let m=Mot(i),h=Mot(o);return m&&h&&m===h&&(s+=9e3),m&&a.includes(m)&&(s+=800),l.includes("\u7EFC\u827A")&&m&&h&&(s+=1200),l.includes("\u7EFC\u827A")&&m&&!h&&d===null&&(s-=1500),s}function Fbr(t,e,r){let n=[];for(let s of t){let i=dy(s,e);if(!i?.success||!i?.bangumi?.episodes?.length)continue;let a=i.bangumi.episodes;O.enableAnimeEpisodeFilter&&(a=a.filter(o=>!O.episodeTitleFilter.test(o.episodeTitle))),a=ly(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 Goe(t,e){let{name:r,episode:n}=await $br(t,e);if(!r)return We([],200);if(O.titleMappingTable&&O.titleMappingTable.size>0){let f=O.titleMappingTable.get(r);f&&(E("info",`[system] [Fongmi] Title mapped from original: ${r} to: ${f}`),r=f)}let s=new URL(t.toString()),i=new Map,a=Mbr(r),o=[];for(let f of a){s.searchParams.set("keyword",f);let m=await(await $1(s,null,null,i)).json();if(o=Array.isArray(m?.animes)?m.animes:[],o.length){f!==r&&E("info",`[system] [Fongmi] Search fallback hit: raw=${r}, keyword=${f}, episode=${n}`);break}}if(!o.length)return E("info",`[system] [Fongmi] No danmaku candidates for name=${r}, episode=${n}`),We([],200);let c=Wbr(e),u=Fbr(o,i,c).map(f=>({...f,score:Ubr(f.anime,f.episode,n,f.index)})).sort((f,p)=>p.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 E("info",`[system] [Fongmi] name=${r}, episode=${n}, candidates=${d.length}`),We(d,200)}kt();dr();kt();var Uot=` /* \u57FA\u7840\u6837\u5F0F - Zen-iOS Hybrid Design */ @import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;800&display=swap'); @@ -1517,7 +1517,7 @@ h2 { .text-monospace { font-family: 'SF Mono', 'Menlo', monospace; } -`;var Wst=` +`;var Fot=` /* \u7EC4\u4EF6\u6837\u5F0F - Zen-iOS Hybrid Design */ /* \u5BFC\u822A\u6309\u94AE\uFF1A\u80F6\u56CA\u5F0F\u8BBE\u8BA1 */ @@ -3441,7 +3441,7 @@ h2 { .mapping-status.success { color: #28a745; } .mapping-status.warning { color: #d39e00; } .mapping-text { color: #555; word-break: break-all; } -`;var $st=` +`;var qot=` /* \u8868\u5355\u6837\u5F0F - Zen-iOS Hybrid Design */ .form-group { margin-bottom: 24px; @@ -3883,7 +3883,7 @@ input:checked + .slider:before { font-family: 'SF Mono', monospace; font-size: 13px; } -`;var Fst=` +`;var jot=` /* \u54CD\u5E94\u5F0F\u6837\u5F0F - Zen-iOS Hybrid Design */ @media (max-width: 768px) { body { @@ -4054,7 +4054,7 @@ input:checked + .slider:before { margin-top: 16px; } } -`;var Ust=` +`;var Qot=` // \u81EA\u5B9A\u4E49\u5F39\u7A97\u7EC4\u4EF6 function createCustomAlert() { // \u68C0\u67E5\u662F\u5426\u5DF2\u5B58\u5728\u81EA\u5B9A\u4E49\u5F39\u7A97\u5143\u7D20 @@ -4655,7 +4655,7 @@ function escapeHtml(text) { // \u9875\u9762\u52A0\u8F7D\u5B8C\u6210\u540E\u521D\u59CB\u5316 init(); -`;var qst=` +`;var Hot=` // \u6E32\u67D3\u914D\u7F6E\u9884\u89C8 let currentPreviewCategory = 'api'; @@ -4753,7 +4753,7 @@ function getCategoryName(category) { }; return names[category] || category; } -`;var jst=` +`;var Got=` // \u65E5\u5FD7\u5168\u5C40\u8FC7\u6EE4\u72B6\u6001 let currentLogFilter = 'ALL'; @@ -5010,7 +5010,7 @@ function highlightJSON(obj) { return '' + match + ''; }); } -`;var Hst=` +`;var zot=` // API \u914D\u7F6E const apiConfigs = { searchAnime: { @@ -6443,7 +6443,7 @@ function renderDanmuList() { function loadMoreDanmu() { renderDanmuList(); } -`;var Qst=` +`;var Kot=` // \u63A8\u9001\u5F39\u5E55\u529F\u80FD\u76F8\u5173 // \u4ECE\u73AF\u5883\u53D8\u91CF\u83B7\u53D6\u9ED8\u8BA4\u63A8\u9001\u5730\u5740 @@ -6688,7 +6688,7 @@ async function pushDanmu(pushUrl, commentUrl, episodeTitle) { } } } -`;var Gst=` +`;var Vot=` // \u8BF7\u6C42\u8BB0\u5F55\u76F8\u5173\u529F\u80FD async function renderRequestRecords() { const recordsContainer = document.getElementById('request-records-list'); @@ -6797,7 +6797,7 @@ document.addEventListener('DOMContentLoaded', function() { } }); -`;var Vst=` +`;var Yot=` // \u5168\u5C40\u53D8\u91CF\u5B9A\u4E49 let isMergeMode = false; let stagingTags = []; @@ -9625,7 +9625,7 @@ function fillOffsetEntity(title, source) { applyInputFeedback(inputEl); } } -`;var zst=` +`;var Jot=` @@ -9634,10 +9634,10 @@ function fillOffsetEntity(title, source) { LogVar\u5F39\u5E55API - - - - + + + + @@ -9990,33 +9990,49 @@ function fillOffsetEntity(title, source) { -`;St();var ya=class{static async getHandler(e){switch(e?.toLowerCase()){case"cloudflare":let{CloudflareHandler:r}=await Promise.resolve().then(()=>(Yst(),Kst));return new r;case"vercel":let{VercelHandler:n}=await Promise.resolve().then(()=>(Xst(),Jst));return new n;case"netlify":let{NetlifyHandler:s}=await Promise.resolve().then(()=>(eit(),Zst));return new s;case"edgeone":let{EdgeoneHandler:i}=await Promise.resolve().then(()=>(rit(),tit));return new i;case"huggingface":let{HuggingfaceHandler:a}=await Promise.resolve().then(()=>(sit(),nit));return new a;case"node":let{NodeHandler:o}=await import(["./node-handler",".js"].join(""));return new o;default:let{NodeHandler:c}=await import(["./node-handler",".js"].join(""));return new c}}static getSupportedPlatforms(){return["cloudflare","vercel","netlify","edgeone","huggingface","node"]}};function Yie(){return new Response(zst.replace("globals.currentToken",O.currentToken),{headers:{"Content-Type":"text/html; charset=utf-8","Access-Control-Allow-Origin":"*"}})}function y4(t=!1){let e=O.envVarConfig,r={api:[],source:[],match:[],danmu:[],cache:[],system:[]},n={...O.accessedEnvVars,localCacheValid:O.localCacheValid,redisValid:O.redisValid,localRedisValid:O.localRedisValid,aiValid:O.aiValid,deployPlatform:O.deployPlatform};Object.keys(n).forEach(o=>{let c=e[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=(O.adminToken||"").trim()!=="",a={...O.originalEnvVars};return(!t||O.currentToken!==O.adminToken)&&Object.keys(a).forEach(o=>{(O.currentToken!==O.token||o!=="TOKEN")&&o in n&&/^\*+$/.test(n[o])&&(a[o]=n[o])}),Be({message:"Welcome to the LogVar Danmu API server",version:O.VERSION,envs:n,categorizedEnvVars:r,envVarConfig:e,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 iit(){try{let t=O.deployPlatform;if(_("info",`[system] [Server] Deployment request received for platform: ${t}`),t.toLowerCase()==="node")return _("info","[system] [Server] Node/Docker deployment - no redeployment needed, config changes take effect automatically"),Be({success:!0,message:"Node/Docker deployment - configuration changes take effect automatically"},200);let e=await ya.getHandler(t);return e?await e.deploy()?(_("info",`[system] [Server] Deployment triggered successfully for platform: ${t}`),Be({success:!0,message:"Deployment triggered successfully"},200)):(_("error",`[system] [Server] Failed to trigger deployment for platform: ${t}`),Be({success:!1,message:"Failed to trigger deployment"},500)):(_("error",`[system] [Server] No handler found for platform: ${t}`),Be({success:!1,message:`No handler found for platform: ${t}`},400))}catch(t){return _("error",`[system] [Server] Deployment error: ${t.message}`),Be({success:!1,message:`Deployment failed: ${t.message}`},500)}}function ait(){let t=O.logBuffer.map(r=>`[${r.timestamp}] ${r.level}: ${N5e(r.message)}`).join(` -`),e=t;return O.currentToken!==O.adminToken&&(e=t.replace(/(client\s+ip:\s*)([^\n\r]*)/gi,(r,n,s)=>{let i=s.replace(/[^.\s\n\r]/g,"*");return n+i})),new Response(e,{headers:{"Content-Type":"text/plain; charset=utf-8"}})}function oit(){return O.logBuffer=[],Be({success:!0,message:"Logs cleared"},200)}async function cit(){try{O.animes=[],O.episodeIds=[],O.episodeNum=10001,O.lastSelectMap=new Map,O.reqRecords=[],O.todayReqNum=0,O.searchCache=new Map,O.commentCache=new Map,O.requestHistory=new Map;try{nWe(!0),O.useBangumiData&&JL(O.deployPlatform,!1).catch(t=>{_("warn",`[system] [Server] Bangumi-Data background reload failed: ${t.message}`)})}catch(t){_("error",`[system] [Server] Failed to clear Bangumi-Data cache: ${t.message}`)}_("info","[system] [Server] Memory cache cleared successfully");try{if(O.localCacheValid){let{updateLocalCaches:t}=await Promise.resolve().then(()=>($n(),V8e));await t(),_("info","[system] [Server] Local cache cleared successfully")}}catch(t){_("warn",`[system] [Server] Local cache may not be available: ${t.message}`)}try{if(O.redisValid){let{updateRedisCaches:t}=await Promise.resolve().then(()=>(kL(),L8e));await t(),_("info","[system] [Server] Redis cache cleared successfully")}}catch(t){_("warn",`[system] [Server] Redis may not be available: ${t.message}`)}try{if(O.localRedisValid){let{updateLocalRedisCaches:t}=await Promise.resolve().then(()=>(UT(),JB));await t(),_("info","[system] [Server] LocalRedis cache cleared successfully")}}catch(t){_("warn",`[system] [Server] LocalRedis may not be available: ${t.message}`)}return _("info","[system] [Server] All caches cleared successfully"),Be({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(t){return _("error",`[system] [Server] Cache clear failed: ${t.message}`),Be({success:!1,message:`Cache clear failed: ${t.message}`},500)}}function nhr(t){let e=t.indexOf("?");if(e===-1)return t;let r=t.slice(0,e),s=t.slice(e+1).replace(/([^&=]+)=([^&]*)/g,(i,a)=>`${a}=***`);return`${r}?${s}`}function Kie(t){if(t==null)return t;if(Array.isArray(t))return t.map(Kie);if(typeof t=="object"){let e={};for(let r of Object.keys(t))e[r]=Kie(t[r]);return e}return"***"}function uit(){let t=[...O.reqRecords].reverse(),e=O.todayReqNum||0;return O.currentToken!==O.adminToken&&(t=t.map(r=>{let n={...r};return n.clientIp&&(n.clientIp=n.clientIp.replace(/[^.]/g,"*")),typeof n.interface=="string"&&(n.interface=nhr(n.interface)),n.params!=null&&(n.params=Kie(n.params)),n})),Be({records:t,todayReqNum:e},200)}function lit(){try{let t=[...O.animes||[]].reverse(),e=new Map;t.forEach(n=>{n?.source&&n?.animeId&&e.set(`${n.source}_${n.animeId}`,n)});let r=t.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=e.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 Be({success:!0,data:r},200)}catch(t){return _("error",`[system] [Server] Fetch cache animes failed: ${t.message}`),Be({success:!1,message:`\u83B7\u53D6\u7F13\u5B58\u5931\u8D25: ${t.message}`},500)}}ar();St();Pt();async function dit(t){try{let{key:e,value:r}=await t.json();if(!e)return Be({success:!1,message:"\u7F3A\u5C11\u73AF\u5883\u53D8\u91CF\u540D\u79F0"},400);let n=O.deployPlatform;return await(await ya.getHandler(n)).setEnv(e,r)?Be({success:!0,message:`\u73AF\u5883\u53D8\u91CF ${e} \u8BBE\u7F6E\u6210\u529F`}):Be({success:!1,message:`\u73AF\u5883\u53D8\u91CF ${e} \u8BBE\u7F6E\u5931\u8D25`},500)}catch(e){return _("error","[system] [Server] \u8BBE\u7F6E\u73AF\u5883\u53D8\u91CF\u5931\u8D25:",e),Be({success:!1,message:`\u8BBE\u7F6E\u73AF\u5883\u53D8\u91CF\u5931\u8D25: ${e.message}`},500)}}async function fit(t){try{let{key:e,value:r}=await t.json();if(!e)return Be({success:!1,message:"\u7F3A\u5C11\u73AF\u5883\u53D8\u91CF\u540D\u79F0"},400);let n=O.deployPlatform;return await(await ya.getHandler(n)).addEnv(e,r)?Be({success:!0,message:`\u73AF\u5883\u53D8\u91CF ${e} \u6DFB\u52A0\u6210\u529F`}):Be({success:!1,message:`\u73AF\u5883\u53D8\u91CF ${e} \u6DFB\u52A0\u5931\u8D25`},500)}catch(e){return _("error","[system] [Server] \u6DFB\u52A0\u73AF\u5883\u53D8\u91CF\u5931\u8D25:",e),Be({success:!1,message:`\u6DFB\u52A0\u73AF\u5883\u53D8\u91CF\u5931\u8D25: ${e.message}`},500)}}async function pit(t){try{let{key:e}=await t.json();if(!e)return Be({success:!1,message:"\u7F3A\u5C11\u73AF\u5883\u53D8\u91CF\u540D\u79F0"},400);let r=O.deployPlatform;return await(await ya.getHandler(r)).delEnv(e)?Be({success:!0,message:`\u73AF\u5883\u53D8\u91CF ${e} \u5220\u9664\u6210\u529F`}):Be({success:!1,message:`\u73AF\u5883\u53D8\u91CF ${e} \u5220\u9664\u5931\u8D25`},500)}catch(e){return _("error","[system] [Server] \u5220\u9664\u73AF\u5883\u53D8\u91CF\u5931\u8D25:",e),Be({success:!1,message:`\u5220\u9664\u73AF\u5883\u53D8\u91CF\u5931\u8D25: ${e.message}`},500)}}async function mit(t){try{let e=await t.json(),r=e.aiBaseUrl||O.aiBaseUrl||"https://api.openai.com/v1",n=e.aiModel||O.aiModel||"gpt-4o",s=e.aiApiKey||O.aiApiKey;if(!s)return Be({success:!1,ok:!1,message:"AI_API_KEY \u672A\u914D\u7F6E"},400);let a=await new ff({baseURL:r,model:n,apiKey:s,systemPrompt:"\u56DE\u7B54\u5C3D\u91CF\u7B80\u6D01"}).verify();return a.ok?Be({success:!0,ok:!0,message:"AI \u670D\u52A1\u8FDE\u901A\u6027\u6D4B\u8BD5\u6210\u529F"}):Be({success:!1,ok:!1,message:`AI \u670D\u52A1\u8FDE\u901A\u6027\u6D4B\u8BD5\u5931\u8D25: ${a.error}`},200)}catch(e){return _("error","[system] [Server] AI \u8FDE\u901A\u6027\u9A8C\u8BC1\u5931\u8D25:",e),Be({success:!1,ok:!1,message:`AI \u8FDE\u901A\u6027\u9A8C\u8BC1\u5931\u8D25: ${e.message}`},500)}}hs();ar();St();Pt();var hit=new Map;function git(){try{if(O&&typeof O.bilibliCookie=="string"&&O.bilibliCookie)return O.bilibliCookie}catch{}try{if(O&&O.env&&typeof O.env.BILIBILI_COOKIE=="string"&&O.env.BILIBILI_COOKIE)return O.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 shr(t){try{let e=t.match(/SESSDATA=([^;]+)/);if(!e)return Math.floor(Date.now()/1e3)+30*24*60*60;let r=e[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 Ait(t){if(!t)return{isValid:!1,error:"\u7F3A\u5C11Cookie"};if(!t.includes("SESSDATA")||!t.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 e=await fetch("https://api.bilibili.com/x/web-interface/nav",{method:"GET",headers:{Cookie:t,"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(!e.ok){let n=await e.text().catch(()=>"");return{isValid:!1,error:`\u9A8C\u8BC1\u8BF7\u6C42\u5931\u8D25\uFF1AHTTP ${e.status}${n?" - "+n.slice(0,80):""}`}}let r;try{r=await e.json()}catch(n){let s=await e.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(e){return{isValid:!1,error:"\u9A8C\u8BC1\u8BF7\u6C42\u5931\u8D25: "+e.message}}}async function yit(t,e="saved"){if(!t)return{success:!0,data:{isValid:!1,checked:e,error:"\u672A\u914D\u7F6ECookie"}};let r=await Ait(t);return r.isValid?{success:!0,data:{isValid:!0,checked:e,uname:r.data?.uname||"\u672A\u77E5\u7528\u6237",expiresAt:shr(t)}}:{success:!0,data:{isValid:!1,checked:e,error:r.error||"Cookie\u65E0\u6548\u6216\u5DF2\u5931\u6548"}}}async function xit(){try{let t=git(),e=await yit(t,"saved");return Be(e)}catch(t){return Be({success:!1,message:t.message},500)}}async function bit(t){try{let e={};try{e=await t.json()}catch{e={}}let r=typeof e.cookie=="string"?e.cookie.trim():"",n=!r||/^\*+$/.test(r),s=n?git():r,a=await yit(s,n?"saved":"input");return Be(a)}catch(e){return Be({success:!1,message:e.message},500)}}async function Eit(){try{let e=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 e.code!==0?Be({success:!1,message:e.message||"\u751F\u6210\u4E8C\u7EF4\u7801\u5931\u8D25"},500):(hit.set(e.data.qrcode_key,{createTime:Date.now(),status:"generated"}),Be({success:!0,data:e.data}))}catch(t){return Be({success:!1,message:t.message},500)}}function ihr(t){let e=new Map,r=[];try{if(t?.headers&&typeof t.headers.getSetCookie=="function")r=t.headers.getSetCookie()||[];else{let u=t?.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(),p=l.slice(d+1).trim();f&&e.set(f,p)}let n=e.get("SESSDATA"),s=e.get("bili_jct"),i=e.get("DedeUserID"),a=e.get("DedeUserID__ckMd5"),o=e.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 _it(t){let e=null;try{let r=await t.json();if(e=r.qrcodeKey||r.qrcode_key,!e)return Be({success:!1,message:"\u7F3A\u5C11qrcodeKey\u53C2\u6570"},400);let n=await fetch(`https://passport.bilibili.com/x/passport-login/web/qrcode/poll?qrcode_key=${e}`,{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=ihr(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),Be(a)}catch(r){return Be({success:!1,message:r.message},500)}finally{e&&hit.delete(e)}}async function Sit(t){try{let r=((await t.json()).cookie||"").trim();if(!r)return Be({success:!1,message:"\u7F3A\u5C11cookie\u53C2\u6570"},400);if(!r.includes("SESSDATA")||!r.includes("bili_jct"))return Be({success:!1,message:"Cookie\u683C\u5F0F\u4E0D\u6B63\u786E"},400);let n=await Ait(r);if(!n.isValid)return Be({success:!1,message:"Cookie\u9A8C\u8BC1\u5931\u8D25: "+(n.error||"\u65E0\u6548")},400);let s=O.deployPlatform,i=await ya.getHandler(s);return i?await i.setEnv("BILIBILI_COOKIE",r)?Be({success:!0,data:{uname:n.data?.uname},message:"Cookie\u4FDD\u5B58\u6210\u529F"}):Be({success:!1,message:"Cookie\u4FDD\u5B58\u5931\u8D25\uFF1A\u73AF\u5883\u53D8\u91CF\u5199\u5165\u5931\u8D25"},500):Be({success:!1,message:`Cookie\u4FDD\u5B58\u5931\u8D25\uFF1A\u4E0D\u652F\u6301\u7684\u90E8\u7F72\u5E73\u53F0 ${s||"unknown"}`},400)}catch(e){return Be({success:!1,message:e.message},500)}}var gt;async function Cit(t,e,r,n,s){gt=Kh.init(e);let i=new URL(t.url),a=i.pathname,o=t.method,c=a.includes("/search")||a.includes("/match")||a.includes("/danmaku");if(gt.useBangumiData&&await JL(r,c,s),gt.deployPlatform=r,r==="node"){await cK(a,r);let{judgeLocalRedisValid:h}=await Promise.resolve().then(()=>(UT(),JB));await h(a)}if(await Vz(a),!gt.aiValid&>.aiBaseUrl&>.aiModel&>.aiApiKey&&a!=="/favicon.ico"&&a!=="/robots.txt"&&(await new ff({baseURL:gt.aiBaseUrl,model:gt.aiModel,apiKey:gt.aiApiKey,systemPrompt:"\u56DE\u7B54\u5C3D\u91CF\u7B80\u6D01"}).verify()).ok&&(gt.aiValid=!0),_("info",`[system] [Server] request url: ${JSON.stringify(i)}`),_("info",`[system] [Server] request path: ${a}`),_("info",`[system] [Server] client ip: ${n}`),gt.ipBlacklist?.length&>.ipBlacklist.some(A=>ahr(A,n)))return _("warn",`[Utils] [IP Blacklist] Blocked request from IP: ${n}`),Be({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=gt.token==="87654321",p=d===gt.token||d===gt.adminToken;if(gt.currentToken=p?d:f&&(d==="87654321"||l.includes(d))?d==="87654321"?d:"87654321":"",r==="node"&>.localCacheValid&&a!=="/favicon.ico"&&a!=="/robots.txt"&&await oK(),gt.redisValid&&a!=="/favicon.ico"&&a!=="/robots.txt"&&await Gz(),r==="node"&>.localRedisValid&&a!=="/favicon.ico"&&a!=="/robots.txt"){let{getLocalRedisCaches:h}=await Promise.resolve().then(()=>(UT(),JB));await h()}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(h=>a.includes(h))){let h=gt.reqRecords.length>0?gt.reqRecords[gt.reqRecords.length-1]:null,A=new Date().toDateString();if(h){let v=new Date(h.timestamp).toDateString();_("info",`[system] [Server] currentDate: ${A}`),_("info",`[system] [Server] lastDate: ${v}`),v!==A?gt.todayReqNum=1:gt.todayReqNum++}else gt.todayReqNum=1;let g=t.url,b=g.indexOf("/api/v2");b!==-1&&(g=g.substring(b));let y=null;if(o==="POST"||o==="PUT"||o==="PATCH")try{let v=t.clone();if((v.headers.get("content-type")||"").includes("application/json"))y=await v.json();else{let R=await v.text();R&&(y=JSON.parse(R))}}catch{y=null}let x={interface:g,params:y,timestamp:new Date().toISOString(),method:o,clientIp:n};gt.reqRecords.push(x),gt.reqRecords.length>gt.MAX_RECORDS&&(gt.reqRecords=gt.reqRecords.slice(-gt.MAX_RECORDS))}if(a==="/"&&o==="GET")return Yie();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(gt.token==="87654321"){if(u.length>0){if(u[0]==="87654321"||u[0]===gt.adminToken)a="/"+u.slice(1).join("/");else if(!l.includes(u[0]))return a==="/api/config"&&o==="GET"?y4(!1):(_("error",`[system] [Server] Invalid token in path: ${a}`),Be({errorCode:401,success:!1,errorMessage:"Unauthorized"},401))}}else{if(u.length<1||u[0]!==gt.token&&u[0]!==gt.adminToken)return a==="/api/config"&&o==="GET"?y4(!1):(_("error",`[system] [Server] Invalid or missing token in path: ${a}`),Be({errorCode:401,success:!1,errorMessage:"Unauthorized"},401));a="/"+u.slice(1).join("/")}if(a.endsWith("/danmaku/api/v2/fongmi/danmaku")&&(_("info",`[Path Fix] Collapsed nested danmaku path: "${a}" -> "/danmaku"`),a="/danmaku"),a==="/api/config"&&o==="GET")return y4(!0);if(a==="/api/reqrecords"&&o==="GET")return uit();if(_("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")){_("info",`[Path Check] Starting path normalization for: "${a}"`);let h=a;for(a=a.replace(/\/+/g,"/");a.startsWith("/api/v2/api/v2/");)_("info","[Path Check] Found redundant /api/v2 prefix. Cleaning..."),a=a.substring(7);a!==h?_("info",`[Path Check] Path after cleanup: "${a}"`):_("info","[Path Check] Path after cleanup: No cleanup needed.");let A=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"?(_("info","[Path Check] Path is missing /api prefix. Adding /api..."),a="/api"+a):a.startsWith("/api/")||a==="/api"?(_("info","[Path Check] Path is missing /v2 prefix. Adding /v2..."),a="/api/v2"+a.substring(4)):(_("info","[Path Check] Path is missing /api/v2 prefix. Adding /api/v2..."),a="/api/v2"+(a.startsWith("/")?a:"/"+a))),a===A&&_("info","[Path Check] Prefix Check: No prefix addition needed."),_("info",`[Path Check] Final normalized path: "${a}"`)}if(a==="/"&&o==="GET")return Yie();if(a==="/api/v2/search/anime"&&o==="GET")return sE(i);if(a==="/api/v2/search/episodes"&&o==="GET")return Pst(i);if(a==="/api/v2/fongmi/danmaku"&&(o==="GET"||o==="POST"))return jie(i,t);if(a==="/danmaku"&&(o==="GET"||o==="POST"))return jie(i,t);if(a==="/api/v2/match"&&o==="POST")return Ost(i,t,n);if(a.startsWith("/api/v2/bangumi/")&&o==="GET")return $ie(a);if((a.startsWith("/api/v2/comment")||a.startsWith("/api/v2/extcomment"))&&o==="GET"){let h=i.searchParams.get("format"),A=i.searchParams.get("url"),g=i.searchParams.get("segmentflag"),b=i.searchParams.get("duration"),y=g==="true"||g==="1",x=b==="true"||b==="1";if(A){if(df(A)!==null)return _("info",`[Utils] [Rate Limit] Cache hit for URL: ${A}, skipping rate limit check`),qie(A,h,y,x);if(gt.rateLimitMaxRequests>0){let w=Date.now(),N=60*1e3;jL(w),gt.requestHistory.has(n)||gt.requestHistory.set(n,[]);let L=gt.requestHistory.get(n).filter(M=>w-M<=N);if(L.length>=gt.rateLimitMaxRequests)return _("warn",`[Utils] [Rate Limit] IP ${n} exceeded rate limit (${L.length}/${gt.rateLimitMaxRequests} requests in 1 minute)`),Be({errorCode:429,success:!1,errorMessage:"Too many requests, please try again later"},429);L.push(w),gt.requestHistory.set(n,L),_("info",`[Utils] [Rate Limit] IP ${n} request count: ${L.length}/${gt.rateLimitMaxRequests}`)}return qie(A,h,y,x)}if(!a.startsWith("/api/v2/comment/"))return _("error","[system] [Server] Missing commentId or url parameter"),Be({errorCode:400,success:!1,errorMessage:"Missing commentId or url parameter"},400);let v=parseInt(a.split("/").pop()),C=BC(v);if(C&&df(C)!==null)return _("info",`[Utils] [Rate Limit] Cache hit for URL: ${C}, skipping rate limit check`),Uie(a,h,y,n,x);if(gt.rateLimitMaxRequests>0){let R=Date.now(),w=60*1e3;jL(R),gt.requestHistory.has(n)||gt.requestHistory.set(n,[]);let P=gt.requestHistory.get(n).filter(L=>R-L<=w);if(P.length>=gt.rateLimitMaxRequests)return _("warn",`[Utils] [Rate Limit] IP ${n} exceeded rate limit (${P.length}/${gt.rateLimitMaxRequests} requests in 1 minute)`),Be({errorCode:429,success:!1,errorMessage:"Too many requests, please try again later"},429);P.push(R),gt.requestHistory.set(n,P),_("info",`[Utils] [Rate Limit] IP ${n} request count: ${P.length}/${gt.rateLimitMaxRequests}`)}return Uie(a,h,y,n,x)}if(a.startsWith("/api/v2/segmentcomment")&&o==="POST")try{let h=i.searchParams.get("format"),A=await t.json(),g;try{g=pb.fromJson(A)}catch{return _("error","[system] [Server] Invalid JSON in request body for segment"),Be({errorCode:400,success:!1,errorMessage:"Invalid JSON in request body"},400)}return Dst(g,h)}catch(h){return _("error",`[system] [Server] Error processing segmentcomment request: ${h.message}`),Be({errorCode:500,success:!1,errorMessage:"Internal server error"},500)}return a==="/api/logs"&&o==="GET"?ait():a==="/api/logs/clear"&&o==="POST"?oit():a==="/api/env/set"&&o==="POST"?dit(t):a==="/api/env/add"&&o==="POST"?fit(t):a==="/api/env/del"&&o==="POST"?pit(t):a==="/api/deploy"&&o==="POST"?iit():a==="/api/cache/animes"&&o==="GET"?lit():a==="/api/cache/clear"&&o==="POST"?cit():a==="/api/cookie/status"&&o==="GET"?xit():a==="/api/cookie/qr/generate"&&o==="POST"?Eit():a==="/api/cookie/qr/check"&&o==="POST"?_it(t):a==="/api/cookie/verify"&&o==="POST"?bit(t):a==="/api/cookie/save"&&o==="POST"?Sit(t):a==="/api/ai/verify"&&o==="POST"?mit(t):Be({message:"Not found"},404)}function ahr(t,e){return!t||!e||e==="unknown"?!1:t.type==="exact"?t.value===e:t.type==="regex"?t.value.test(e):t.type==="cidr"?ohr(e,t.ip,t.prefix):!1}function ohr(t,e,r){if(t.includes(":")||e.includes(":")){let o=vit(t),c=vit(e);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=Jie(t),i=Jie(e);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 Jie(t){let e=t.split(".");if(e.length!==4)return null;let r=e.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 vit(t){if(!t||typeof t!="string"||!t.includes(":"))return null;let r=t.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=Jie(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 wu=null,oE=9321,x4=0,Ug=null,Iit=!1,aE={...process.env,ADMIN_TOKEN:"douer"},b4=!1,gw=null,Rc=null,Tn={overrides:{},deletedKeys:[]};function Ei(...t){}function Aw(...t){}function Nit(){return x4>0}function chr(){try{let byEval=eval("1 + 1")===2,byFunction=Function("return 2 + 2")()===4;return byEval&&byFunction}catch{return!1}}function Zie(){return{overrides:{},deletedKeys:[]}}function Oit(){let t=String(process.env.DANMU_ENV_STORE_FILE||"").trim();if(t)return t;let e=String(process.env.NODE_PATH||"").trim()||process.cwd();return sae.default.resolve(e,"danmu_env_overrides.json")}function uhr(t){let e=Zie();if(!t||typeof t!="object")return e;let r=Array.isArray(t.deletedKeys)?t.deletedKeys.map(s=>String(s||"").trim()).filter(s=>s):[];e.deletedKeys=Array.from(new Set(r));let n=new Set(e.deletedKeys);return t.overrides&&typeof t.overrides=="object"&&!Array.isArray(t.overrides)&&Object.entries(t.overrides).forEach(([s,i])=>{let a=String(s||"").trim();!a||n.has(a)||(e.overrides[a]=i==null?"":String(i))}),e}function lhr(){Rc=Oit();try{if(!yw.default.existsSync(Rc)){Tn=Zie(),Ei("loadPersistedEnvStore()",{loaded:!1,reason:"store file not found",path:Rc});return}let t=yw.default.readFileSync(Rc,"utf8"),e=t?JSON.parse(t):{};Tn=uhr(e),Ei("loadPersistedEnvStore()",{loaded:!0,path:Rc,overrides:Object.keys(Tn.overrides).length,deleted:Tn.deletedKeys.length})}catch(t){Tn=Zie(),Aw("loadPersistedEnvStore() failed",{message:t?.message||String(t),stack:t?.stack||"",path:Rc})}}function dhr(){try{Rc||(Rc=Oit());let t=sae.default.dirname(Rc);yw.default.mkdirSync(t,{recursive:!0});let e={version:1,updatedAt:new Date().toISOString(),overrides:Tn.overrides,deletedKeys:Tn.deletedKeys};return yw.default.writeFileSync(Rc,JSON.stringify(e,null,2),"utf8"),!0}catch(t){return Aw("savePersistedEnvStore() failed",{message:t?.message||String(t),stack:t?.stack||"",path:Rc||""}),!1}}function eae(){let t={...process.env};return Object.entries(Tn.overrides).forEach(([e,r])=>{t[e]=r}),Tn.deletedKeys.forEach(e=>{delete t[e]}),fhr(t)}function fhr(t){let e=t||{},r=String(e.TOKEN||"").trim();e.TOKEN=r||"87654321";let n=String(e.SOURCE_ORDER||"").trim();e.SOURCE_ORDER=n||"tencent,youku,iqiyi,imgo,bilibili,dandan,renren,hanjutv";let s=String(e.STRICT_TITLE_MATCH||"").trim();e.STRICT_TITLE_MATCH=s||"true";let i=String(e.RATE_LIMIT_MAX_REQUESTS||"").trim();e.RATE_LIMIT_MAX_REQUESTS=i||"0";let a=String(e.ADMIN_TOKEN||"").trim();return e.ADMIN_TOKEN=a||"douer",e}function phr(t){return t==null?null:Array.isArray(t)?t.map(e=>String(e)).join(","):typeof t=="string"?t:typeof t=="number"||typeof t=="boolean"?String(t):null}function mhr(t,e){if(!t||typeof t!="object"||!t.originalEnvVars||typeof t.originalEnvVars!="object")return t;let r=t.originalEnvVars,n=t.envs&&typeof t.envs=="object"?t.envs:{};return Object.keys(r).forEach(s=>{let i=r[s];if(!(i==null||String(i).trim()===""))return;if(s==="TOKEN"){r[s]=String(e.TOKEN||"87654321");return}if(s==="ADMIN_TOKEN"){r[s]=String(e.ADMIN_TOKEN||"");return}let o=e[s];if(o!=null&&String(o).trim()!==""){r[s]=String(o);return}if(!Object.prototype.hasOwnProperty.call(n,s))return;let c=n[s];if(typeof c=="string"&&/^\*+$/.test(c))return;let u=phr(c);u!==null&&u!==""&&(r[s]=u)}),t}function Xie(t,e,r=!1){let n=String(t||"").trim();if(!n)return!1;let s=Object.prototype.hasOwnProperty.call(process.env,n),i=process.env[n],a=Object.prototype.hasOwnProperty.call(Tn.overrides,n),o=Tn.overrides[n],c=Tn.deletedKeys.includes(n);if(r)delete process.env[n],delete Tn.overrides[n],Tn.deletedKeys.includes(n)||Tn.deletedKeys.push(n);else{let u=e==null?"":String(e);process.env[n]=u,Tn.overrides[n]=u,Tn.deletedKeys=Tn.deletedKeys.filter(l=>l!==n)}return dhr()?(aE=eae(),!0):(a?Tn.overrides[n]=o:delete Tn.overrides[n],c&&!Tn.deletedKeys.includes(n)&&Tn.deletedKeys.push(n),c||(Tn.deletedKeys=Tn.deletedKeys.filter(u=>u!==n)),s?process.env[n]=i:delete process.env[n],aE=eae(),!1)}var hhr={async setEnv(t,e){return Xie(t,e,!1)?(Ei("memoryNodeEnvHandler.setEnv()",{key:String(t||"")}),!0):!1},async addEnv(t,e){return Xie(t,e,!1)?(Ei("memoryNodeEnvHandler.addEnv()",{key:String(t||"")}),!0):!1},async delEnv(t){return Xie(t,"",!0)?(Ei("memoryNodeEnvHandler.delEnv()",{key:String(t||"")}),!0):!1}};function ghr(){b4||(gw=ya.getHandler,ya.getHandler=async function(e){let r=String(e||"").toLowerCase();return!r||r==="node"?hhr:gw.call(ya,e)},b4=!0,Ei("installNodeEnvHotReloadPatch()",{patched:!0}))}function Ahr(){!b4||!gw||(ya.getHandler=gw,gw=null,b4=!1,Ei("uninstallNodeEnvHotReloadPatch()",{patched:!1}))}function yhr(t){return t==null?Buffer.alloc(0):Buffer.isBuffer(t)?t:t instanceof ArrayBuffer?Buffer.from(t):ArrayBuffer.isView(t)?Buffer.from(t.buffer,t.byteOffset,t.byteLength):Buffer.from(String(t),"utf8")}async function xhr(t){if(!t||typeof t.getReader!="function")return Buffer.from(String(t??""),"utf8");let e=t.getReader(),r=[];try{for(;;){let{done:n,value:s}=await e.read();if(n)break;if(s!=null){if(Buffer.isBuffer(s)){r.push(s);continue}if(s instanceof Uint8Array){r.push(Buffer.from(s));continue}if(s instanceof ArrayBuffer){r.push(Buffer.from(s));continue}if(ArrayBuffer.isView(s)){r.push(Buffer.from(s.buffer,s.byteOffset,s.byteLength));continue}r.push(Buffer.from(String(s),"utf8"))}}}finally{typeof e.releaseLock=="function"&&e.releaseLock()}return r.length?Buffer.concat(r):Buffer.alloc(0)}async function bhr(t){if(t==null)return Buffer.alloc(0);if(Buffer.isBuffer(t))return t;if(t instanceof ArrayBuffer)return Buffer.from(t);if(ArrayBuffer.isView(t))return Buffer.from(t.buffer,t.byteOffset,t.byteLength);if(typeof t=="string")return Buffer.from(t,"utf8");if(typeof Blob=="function"&&t instanceof Blob){let e=await t.arrayBuffer();return Buffer.from(e)}return typeof t.getReader=="function"?xhr(t):Buffer.from(String(t),"utf8")}var xw=class{constructor(e=void 0){if(this._map=new Map,!!e){if(typeof e.forEach=="function"){e.forEach((r,n)=>this.set(n,r));return}if(Array.isArray(e)){e.forEach(([r,n])=>this.set(r,n));return}typeof e=="object"&&Object.entries(e).forEach(([r,n])=>this.set(r,n))}}set(e,r){this._map.set(String(e).toLowerCase(),String(r))}get(e){let r=this._map.get(String(e).toLowerCase());return r===void 0?null:r}has(e){return this._map.has(String(e).toLowerCase())}delete(e){this._map.delete(String(e).toLowerCase())}forEach(e,r=void 0){for(let[n,s]of this._map.entries())e.call(r,s,n,this)}entries(){return this._map.entries()}[Symbol.iterator](){return this._map[Symbol.iterator]()}},tae=class t{constructor(e,r={}){this.url=String(e||""),this.method=String(r.method||"GET").toUpperCase();let n=globalThis.Headers||xw;this.headers=r.headers instanceof n?r.headers:new n(r.headers||{}),this._bodyBuffer=yhr(r.body)}clone(){return new t(this.url,{method:this.method,headers:Object.fromEntries(this.headers.entries()),body:this._bodyBuffer})}async text(){return this._bodyBuffer.toString("utf8")}async json(){let e=await this.text();return e?JSON.parse(e):null}async arrayBuffer(){return this._bodyBuffer.buffer.slice(this._bodyBuffer.byteOffset,this._bodyBuffer.byteOffset+this._bodyBuffer.byteLength)}},rae=class{constructor(e=null,r={}){let n=globalThis.Headers||xw;this.status=Number(r.status||200),this.statusText=String(r.statusText||""),this.headers=r.headers instanceof n?r.headers:new n(r.headers||{}),this.ok=this.status>=200&&this.status<300,this.body=e,this.bodyUsed=!1,this._bodyBuffer=null,this._bodyBufferPromise=null}async _ensureBodyBuffer(){return this._bodyBuffer?this._bodyBuffer:(this._bodyBufferPromise||(this._bodyBufferPromise=bhr(this.body).then(e=>(this._bodyBuffer=e,this.bodyUsed=!0,e))),this._bodyBufferPromise)}async text(){return(await this._ensureBodyBuffer()).toString("utf8")}async json(){let e=await this.text();return e?JSON.parse(e):null}async arrayBuffer(){let e=await this._ensureBodyBuffer();return e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength)}};function Ehr(){Iit||(typeof globalThis.Headers!="function"&&(globalThis.Headers=xw),typeof globalThis.Response!="function"&&(globalThis.Response=rae),typeof globalThis.Request!="function"&&(globalThis.Request=tae),Iit=!0,Ei("installWebApiPolyfills()",{hasFetch:typeof globalThis.fetch=="function",hasRequest:typeof globalThis.Request=="function",hasHeaders:typeof globalThis.Headers=="function",hasResponse:typeof globalThis.Response=="function"}))}async function Tit(t,e={}){let r=await Ae({url:t,method:e.method||"GET",headers:e.headers||{},data:e.body,signal:e.signal,responseType:"arraybuffer",validateStatus:()=>!0,timeout:1e4}),n=Buffer.from(r.data),s={};return Object.entries(r.headers||{}).forEach(([i,a])=>{s[i]=String(a)}),{ok:r.status>=200&&r.status<300,status:r.status,statusText:r.statusText||"",headers:new Headers(s),url:String(t),async text(){return n.toString("utf8")},async json(){return JSON.parse(n.toString("utf8"))},async arrayBuffer(){return n.buffer.slice(n.byteOffset,n.byteOffset+n.byteLength)}}}function _hr(){Ei("installPatches()",{hasFetch:typeof globalThis.fetch=="function"}),Ug=globalThis.fetch,globalThis.fetch=function(e,r){return x4>0?Tit(e,r):typeof Ug=="function"?Ug(e,r):Tit(e,r)}}function nae(){if(Ei("uninstallPatches()",{hasOriginalFetch:!!Ug}),typeof Ug=="function")globalThis.fetch=Ug;else try{delete globalThis.fetch}catch{globalThis.fetch=void 0}Ug=null}function Pit(t=9321){if(oE=t,Ehr(),ghr(),lhr(),aE=eae(),Ei("loadDanmuEnv()",{source:"process.env + persisted store",adminTokenFallback:aE.ADMIN_TOKEN==="douer",persistedEnvStorePath:Rc,persistedOverrides:Object.keys(Tn.overrides).length,persistedDeletedKeys:Tn.deletedKeys.length}),Ei("start()",{port:t,alreadyRunning:!!wu,node:process.version,platform:`${process.platform}/${process.arch}`,v8:process.versions?.v8,dynamicCode:chr()}),!wu){_hr();try{wu=Rit.default.createServer(async(e,r)=>{x4++;let n=`${Date.now().toString(36)}-${Math.random().toString(36).slice(2,8)}`,s=Date.now();Ei(`[${n}] inbound`,{method:e.method,url:e.url,host:e.headers.host,remote:e.socket?.remoteAddress||"unknown"});try{let i=`http://${e.headers.host||`127.0.0.1:${t}`}${e.url}`,a=(()=>{try{return new URL(i).pathname||""}catch{return String(e.url||"")}})(),o=e.method==="GET"&&a.endsWith("/api/config"),c;(e.method==="POST"||e.method==="PUT")&&(c=await new Promise(p=>{let m="";e.on("data",h=>m+=h),e.on("end",()=>p(m))}));let u=new Request(i,{method:e.method,headers:Object.fromEntries(Object.entries(e.headers).map(([p,m])=>[p,String(m)])),body:c||void 0}),l={...aE},d=await Cit(u,l,"node",e.socket?.remoteAddress||"unknown");Ei(`[${n}] worker done`,{status:d.status}),r.statusCode=d.status,d.headers.forEach((p,m)=>{let h=m.toLowerCase();h!=="content-encoding"&&h!=="content-length"&&r.setHeader(m,p)});let f;if(o){let p=await d.text();try{let m=JSON.parse(p),h=mhr(m,l);f=Buffer.from(JSON.stringify(h),"utf8")}catch{f=Buffer.from(p||"","utf8")}}else f=Buffer.from(await d.arrayBuffer());r.setHeader("Content-Length",f.length),r.end(f)}catch(i){Aw(`[${n}] request failed`,{message:i?.message||String(i),stack:i?.stack||""}),r.statusCode=500,r.end("Internal Server Error")}finally{Ei(`[${n}] complete`,{costMs:Date.now()-s}),x4--}}),wu.listen(t,"0.0.0.0",()=>{let e=wu?.address?.();Ei("listen ok",{address:e})}),wu.on("error",e=>{Aw("server error",{message:e?.message||String(e),code:e?.code}),console.warn(`[danmu] \u5185\u7F6E\u5F39\u5E55\u670D\u52A1\u542F\u52A8\u5931\u8D25: ${e.message}`),nae(),wu=null})}catch(e){Aw("start() failed",{message:e?.message||String(e),stack:e?.stack||""}),console.warn(`[danmu] \u5185\u7F6E\u5F39\u5E55\u670D\u52A1\u542F\u52A8\u5931\u8D25: ${e.message}`),nae()}}}function Dit(){Ei("stop()",{hasServer:!!wu,port:oE}),wu&&(wu.close(),wu=null),Ahr(),nae()}function zcn(){return oE}function wit(t){let e=String(t||"").trim().toLowerCase();return e==="localhost"||e==="127.0.0.1"||e==="0.0.0.0"||e==="::1"}function Shr(t){let e=String(t||"").trim();if(!e)return"";try{return new URL(e).hostname||""}catch{try{return new URL(`http://${e}`).hostname||""}catch{return e.replace(/^\w+:\/\//,"").split("/")[0].split(":")[0].trim()}}}function vhr(t){let e=Shr(t);if(e&&!wit(e))return e;let r=String(D0()||"").trim();return r&&!wit(r)?r:"127.0.0.1"}function Chr(t){let e=Number.parseInt(String(t??""),10);return Number.isFinite(e)&&e>0?e:oE}function iae(t,e=oE){let r=vhr(t),n=Chr(e);return`http://${r}:${n}`}function aae(t,e=oE){let r=iae(t,e),n=String(Ihr()||"").trim();return n?`${r}/${encodeURIComponent(n)}`:r}function Ihr(){return String(aE?.ADMIN_TOKEN||"").trim()||"douer"}function whr(t){return bw.default.enc.Utf8.stringify(bw.default.enc.Base64.parse(t))}function kit(t){return bw.default.enc.Base64.stringify(bw.default.enc.Utf8.parse(t))}function Wit(t){return String(t||"").split(",")[0].trim()}function Lit(t){return Wit(t).replace(/^\w+:\/\//,"").split("/")[0].trim()}function Bit(t){let e=String(t||"").trim().toLowerCase().split(":")[0];return e==="localhost"||e==="127.0.0.1"||e==="0.0.0.0"||e==="::1"}function E4(t){let e=String(t?.server?.address?.()?.url||"").trim(),n=Lit(t?.headers?.["x-forwarded-host"])||Lit(t?.headers?.host),s=Wit(t?.headers?.["x-forwarded-proto"]),i=e.startsWith("https://")?"https":"http",a=s||String(t?.protocol||"").trim()||i;if(n&&!Bit(n))return`${a}://${n}`;let o=String(D0()||"").trim(),c=Number.parseInt(String(t?.server?.address?.()?.port||""),10);return o&&!Bit(o)?Number.isFinite(c)&&c>0?`${a}://${o}:${c}`:`${a}://${o}`:e}async function Rhr(t,e){return{}}async function Nhr(t,e){return{class:[{type_id:"setting",type_name:`${E4(t)}/website`}]}}async function Ohr(t,e){let r=E4(t),n=r+t.server.prefix+"/proxy",s=aae(r);return{page:1,pagecount:1,limit:1,total:1,list:[{vod_id:"openInternalWebsite",vod_name:"\u901A\u7528\u914D\u7F6E",vod_pic:n+"/"+kit(`${r}/website`)},{vod_id:"builtinDanmuApiQr",vod_name:"\u5F39\u5E55\u670D\u52A1",vod_pic:n+"/"+kit(s)}]}}async function Phr(t,e){if(t.body.id==="openInternalWebsite"){let r=E4(t);return await t.server.messageToDart({action:"openInternalWebview",opt:{url:`${r}/website`}}),{list:[{vod_name:"",vod_content:""}]}}if(t.body.id==="builtinDanmuApiQr"){let r=E4(t);return await t.server.messageToDart({action:"openInternalWebview",opt:{url:aae(r)}}),{list:[{vod_name:"",vod_content:""}]}}return{list:[{vod_name:"",vod_content:""}]}}async function Dhr(t,e){let r=t.params.img,n=whr(r),s=await Mit.default.toBuffer(n,{width:120,height:120,margin:15});e.send(s)}var $it={meta:{key:"baseset",name:"\u300C\u8BBE\u300D\u914D\u7F6E",type:3},api:async t=>{t.post("/init",Rhr),t.post("/home",Nhr),t.post("/category",Ohr),t.post("/detail",Phr),t.get("/proxy/:img",Dhr)}};var khr=["https://666.666291.xyz","https://www.muou.asia","https://www.muou.site"],oae=async t=>(await t.db.getObjectDefault("/muou",{}))?.urls||t.config.muou?.urls||khr,Lhr=async(t,e)=>{await t.db.push("/muou/urls",e)},Bhr=async t=>{await t.db.delete("/muou/urls")};async function cae(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await oae(e.server)})}),t.put("/urls",async(e,r)=>{await Lhr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await Bhr(e.server),r.send({code:0})})}var uae,_4=t=>{if(!uae){let e=Date.now();uae=new Promise(async r=>{let n=await oae(t),s=await Xn(n);console.log("\u6728\u5076\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return uae};async function lae(t){return(await he.get(t,{headers:{"User-Agent":Gr}})).data}async function Mhr(t,e){let r=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"3",type_name:"\u52A8\u6F2B"},{type_id:"4",type_name:"\u7EAA\u5F55"},{type_id:"29",type_name:"\u7EFC\u827A"},{type_id:"25",type_name:"115"}],n={};return n[1]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u6050\u6016",v:"\u6050\u6016"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u8B66\u532A",v:"\u8B66\u532A"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u52A8\u753B",v:"\u52A8\u753B"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u6B66\u4FA0",v:"\u6B66\u4FA0"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u67AA\u6218",v:"\u67AA\u6218"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u60CA\u609A",v:"\u60CA\u609A"},{n:"\u7ECF\u5178",v:"\u7ECF\u5178"},{n:"\u9752\u6625",v:"\u9752\u6625"},{n:"\u6587\u827A",v:"\u6587\u827A"},{n:"\u5FAE\u7535\u5F71",v:"\u5FAE\u7535\u5F71"},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u8FD0\u52A8",v:"\u8FD0\u52A8"},{n:"\u519C\u6751",v:"\u519C\u6751"},{n:"\u513F\u7AE5",v:"\u513F\u7AE5"},{n:"\u7F51\u7EDC\u7535\u5F71",v:"\u7F51\u7EDC\u7535\u5F71"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{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:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u5370\u5EA6",v:"\u5370\u5EA6"},{n:"\u610F\u5927\u5229",v:"\u610F\u5927\u5229"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u52A0\u62FF\u5927",v:"\u52A0\u62FF\u5927"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",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"},{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"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[2]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u9752\u6625\u5076\u50CF",v:"\u9752\u6625\u5076\u50CF"},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u5BB6\u5EAD",v:"\u5BB6\u5EAD"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u7ECF\u5178",v:"\u7ECF\u5178"},{n:"\u4E61\u6751",v:"\u4E61\u6751"},{n:"\u60C5\u666F",v:"\u60C5\u666F"},{n:"\u5546\u6218",v:"\u5546\u6218"},{n:"\u7F51\u5267",v:"\u7F51\u5267"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u4E2D\u56FD\u5927\u9646",v:"\u4E2D\u56FD\u5927\u9646"},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u5185\u5730",v:"\u5185\u5730"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65B0\u52A0\u5761",v:"\u65B0\u52A0\u5761"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",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"},{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"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[3]=[{key:"year",name:"",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"},{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"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[4]=[{key:"year",name:"",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"},{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"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[29]=[{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[25]=[{key:"year",name:"",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"},{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"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],{class:r,filters:n}}async function Whr(t,e){let r=await _4(t.server),n=t.body.id,s=t.body.page,i=t.body.filters||{},a=s||1;a==0&&(a=1);let o=r+"/index.php/vod/show";i.area&&(o+=`/area/${i.area}`),i.by&&(o+=`/by/${i.by}`),i.class&&(o+=`/class/${i.class}`),o+=`/id/${n}/page/${a}`,i.year&&(o+=`/year/${i.year}`),o+=".html";let c=await lae(o,Gr),u=Me(c),l=u("#main .module-item"),d=[];for(var f of l){let h=u(f).find(".module-item-pic a").attr("href"),A=u(f).find(".module-item-pic img").attr("alt"),g=u(f).find(".module-item-pic img").attr("data-src"),b=u(f).find(".module-item-text").text();d.push({vod_id:h,vod_name:A,vod_pic:g,vod_remarks:b})}let m=u("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(a)+1:parseInt(a);return{page:parseInt(a),pagecount:m,limit:72,total:72*m,list:d}}async function $hr(t,e){let r=await _4(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await lae(r+i),o=Me(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let p=o(f).text(),h=o(f).next().find("a").map((A,g)=>{let b=o(g).text().trim();return b||null}).get().filter(Boolean).join(", ");p.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():p.includes("\u5BFC\u6F14")?c.vod_director=h.trim():p.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,p)=>p.children[0].data).get(),d=await Rr(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls,c.vod_links=d.links),s.push(c)}return{list:s}}async function Fhr(t,e){let r=await _4(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await lae(`${r}/index.php/vod/search/wd/${s}.html`),o=Me(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var Fit={meta:{key:"muou",name:"\u300C\u76D8\u300D\u6728\u5076",type:3},api:async t=>{t.post("/init",qr),t.post("/home",Mhr),t.post("/category",Whr),t.post("/detail",$hr),t.post("/play",Or),t.post("/search",Fhr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Nr)},check:_4};var Uhr=["http://xiaocge.fun","http://xiaocgege.shop"],dae=async t=>(await t.db.getObjectDefault("/labi",{}))?.urls||t.config.labi?.urls||Uhr,qhr=async(t,e)=>{await t.db.push("/labi/urls",e)},jhr=async t=>{await t.db.delete("/labi/urls")};async function fae(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await dae(e.server)})}),t.put("/urls",async(e,r)=>{await qhr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await jhr(e.server),r.send({code:0})})}var pae,S4=t=>{if(!pae){let e=Date.now();pae=new Promise(async r=>{let n=await dae(t),s=await Xn(n);console.log("\u8721\u7B14\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return pae};async function mae(t){return(await he.get(t,{headers:{"User-Agent":Gr}})).data}async function Hhr(t,e){return{class:[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"3",type_name:"\u52A8\u6F2B"},{type_id:"4",type_name:"\u7EFC\u827A"},{type_id:"24",type_name:"4K"},{type_id:"29",type_name:"\u81FB\u5F69"},{type_id:"5",type_name:"\u77ED\u5267"}],filters:{}}}async function Qhr(t,e){let r=await S4(t.server),n=t.body.id,s=t.body.page,i=s||1;i==0&&(i=1);let a=r+`/index.php/vod/show/id/${n}/page/${s}.html`,o=await mae(a,Gr),c=Me(o),u=c("#main .module-item"),l=[];for(var d of u){let m=c(d).find(".module-item-pic a").attr("href"),h=c(d).find(".module-item-pic img").attr("alt"),A=c(d).find(".module-item-pic img").attr("data-src"),g=c(d).find(".module-item-text").text();l.push({vod_id:m,vod_name:h,vod_pic:A,vod_remarks:g})}let p=c("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(i)+1:parseInt(i);return{page:parseInt(i),pagecount:p,limit:72,total:72*p,list:l}}async function Ghr(t,e){let r=await S4(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await mae(r+i),o=Me(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let p=o(f).text(),h=o(f).next().find("a").map((A,g)=>{let b=o(g).text().trim();return b||null}).get().filter(Boolean).join(", ");p.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():p.includes("\u5BFC\u6F14")?c.vod_director=h.trim():p.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,p)=>p.children[0].data).get(),d=await Rr(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls,c.vod_links=d.links),s.push(c)}return{list:s}}async function Vhr(t,e){let r=await S4(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await mae(`${r}/index.php/vod/search/wd/${s}.html`),o=Me(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var Uit={meta:{key:"labi",name:"\u300C\u76D8\u300D\u8721\u7B14",type:3},api:async t=>{t.post("/init",qr),t.post("/home",Hhr),t.post("/category",Qhr),t.post("/detail",Ghr),t.post("/play",Or),t.post("/search",Vhr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Nr)},check:S4};var zhr=["http://shandian.blog","http://sd.sduc.site"],hae=async t=>(await t.db.getObjectDefault("/shandian",{}))?.urls||t.config.shandian?.urls||zhr,Khr=async(t,e)=>{await t.db.push("/shandian/urls",e)},Yhr=async t=>{await t.db.delete("/shandian/urls")};async function gae(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await hae(e.server)})}),t.put("/urls",async(e,r)=>{await Khr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await Yhr(e.server),r.send({code:0})})}var Aae,v4=t=>{if(!Aae){let e=Date.now();Aae=new Promise(async r=>{let n=await hae(t),s=await Xn(n);console.log("\u95EA\u7535\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return Aae};async function yae(t){return(await he.get(t,{headers:{"User-Agent":Gr}})).data}async function Jhr(t,e){return{class:[{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"}],filters:{}}}async function Xhr(t,e){let r=await v4(t.server),n=t.body.id,s=t.body.page,i=s||1;i==0&&(i=1);let a=r+`/index.php/vod/show/id/${n}/page/${s}.html`,o=await yae(a,Gr),c=Me(o),u=c("#main .module-item"),l=[];for(var d of u){let m=c(d).find(".module-item-pic a").attr("href"),h=c(d).find(".module-item-pic img").attr("alt"),A=c(d).find(".module-item-pic img").attr("data-src"),g=c(d).find(".module-item-text").text();l.push({vod_id:m,vod_name:h,vod_pic:A,vod_remarks:g})}let p=c("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(i)+1:parseInt(i);return{page:parseInt(i),pagecount:p,limit:72,total:72*p,list:l}}async function Zhr(t,e){let r=await v4(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await yae(r+i),o=Me(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let p=o(f).text(),h=o(f).next().find("a").map((A,g)=>{let b=o(g).text().trim();return b||null}).get().filter(Boolean).join(", ");p.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():p.includes("\u5BFC\u6F14")?c.vod_director=h.trim():p.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,p)=>p.children[0].data).get(),d=await Rr(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls,c.vod_links=d.links),s.push(c)}return{list:s}}async function egr(t,e){let r=await v4(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await yae(`${r}/index.php/vod/search/wd/${s}.html`),o=Me(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var qit={meta:{key:"shandian",name:"\u300C\u76D8\u300D\u95EA\u7535",type:3},api:async t=>{t.post("/init",qr),t.post("/home",Jhr),t.post("/category",Xhr),t.post("/detail",Zhr),t.post("/play",Or),t.post("/search",egr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Nr)},check:v4};var tgr=["https://woog.nxog.eu.org"],xae=async t=>(await t.db.getObjectDefault("/ouge",{}))?.urls||t.config.ouge?.urls||tgr,rgr=async(t,e)=>{await t.db.push("/ouge/urls",e)},ngr=async t=>{await t.db.delete("/ouge/urls")};async function bae(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await xae(e.server)})}),t.put("/urls",async(e,r)=>{await rgr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await ngr(e.server),r.send({code:0})})}var Eae,C4=t=>{if(!Eae){let e=Date.now();Eae=new Promise(async r=>{let n=await xae(t),s=await Xn(n);console.log("\u6B27\u54E5\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return Eae};async function _ae(t){return(await he.get(t,{headers:{"User-Agent":Gr}})).data}async function sgr(t,e){return{class:[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"3",type_name:"\u52A8\u6F2B"},{type_id:"5",type_name:"\u77ED\u5267"},{type_id:"4",type_name:"\u7EFC\u827A"},{type_id:"21",type_name:"\u7EFC\u5408"}],filters:{}}}async function igr(t,e){let r=await C4(t.server),n=t.body.id,s=t.body.page,i=s||1;i==0&&(i=1);let a=r+`/index.php/vod/show/id/${n}/page/${s}.html`,o=await _ae(a,Gr),c=Me(o),u=c("#main .module-item"),l=[];for(var d of u){let m=c(d).find(".module-item-pic a").attr("href"),h=c(d).find(".module-item-pic img").attr("alt"),A=c(d).find(".module-item-pic img").attr("data-src"),g=c(d).find(".module-item-text").text();l.push({vod_id:m,vod_name:h,vod_pic:A,vod_remarks:g})}let p=c("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(i)+1:parseInt(i);return{page:parseInt(i),pagecount:p,limit:72,total:72*p,list:l}}async function agr(t,e){let r=await C4(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await _ae(r+i),o=Me(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let p=o(f).text(),h=o(f).next().find("a").map((A,g)=>{let b=o(g).text().trim();return b||null}).get().filter(Boolean).join(", ");p.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():p.includes("\u5BFC\u6F14")?c.vod_director=h.trim():p.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,p)=>p.children[0].data).get(),d=await Rr(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls,c.vod_links=d.links),s.push(c)}return{list:s}}async function ogr(t,e){let r=await C4(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await _ae(`${r}/index.php/vod/search/wd/${s}.html`),o=Me(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var jit={meta:{key:"ouge",name:"\u300C\u76D8\u300D\u6B27\u6B4C",type:3},api:async t=>{t.post("/init",qr),t.post("/home",sgr),t.post("/category",igr),t.post("/detail",agr),t.post("/play",Or),t.post("/search",ogr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Nr)},check:C4};var cgr=["https://www.wexwp.cc","https://www.erxiaozhan.top","https://www.2xiaopan.top","https://www.2xiaozhan.top"],Sae=async t=>(await t.db.getObjectDefault("/erxiao",{}))?.urls||t.config.erxiao?.urls||cgr,ugr=async(t,e)=>{await t.db.push("/erxiao/urls",e)},lgr=async t=>{await t.db.delete("/erxiao/urls")};async function vae(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await Sae(e.server)})}),t.put("/urls",async(e,r)=>{await ugr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await lgr(e.server),r.send({code:0})})}var Cae,I4=t=>{if(!Cae){let e=Date.now();Cae=new Promise(async r=>{let n=await Sae(t),s=await Xn(n);console.log("\u4E8C\u5C0F\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return Cae};async function Iae(t){return(await he.get(t,{headers:{"User-Agent":Gr}})).data}async function dgr(t,e){return{class:[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"3",type_name:"\u52A8\u6F2B"},{type_id:"22",type_name:"\u771F\u5F69"},{type_id:"21",type_name:"\u7EFC\u827A"}],filters:{}}}async function fgr(t,e){let r=await I4(t.server),n=t.body.id,s=t.body.page,i=s||1;i==0&&(i=1);let a=r+`/index.php/vod/show/id/${n}/page/${s}.html`,o=await Iae(a,Gr),c=Me(o),u=c("#main .module-item"),l=[];for(var d of u){let m=c(d).find(".module-item-pic a").attr("href"),h=c(d).find(".module-item-pic img").attr("alt"),A=c(d).find(".module-item-pic img").attr("data-src"),g=c(d).find(".module-item-text").text();l.push({vod_id:m,vod_name:h,vod_pic:A,vod_remarks:g})}let p=c("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(i)+1:parseInt(i);return{page:parseInt(i),pagecount:p,limit:72,total:72*p,list:l}}async function pgr(t,e){let r=await I4(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await Iae(r+i),o=Me(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let p=o(f).text(),h=o(f).next().find("a").map((A,g)=>{let b=o(g).text().trim();return b||null}).get().filter(Boolean).join(", ");p.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():p.includes("\u5BFC\u6F14")?c.vod_director=h.trim():p.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,p)=>p.children[0].data).get(),d=await Rr(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls,c.vod_links=d.links),s.push(c)}return{list:s}}async function mgr(t,e){let r=await I4(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await Iae(`${r}/index.php/vod/search/wd/${s}.html`),o=Me(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var Hit={meta:{key:"erxiao",name:"\u300C\u76D8\u300D\u4E8C\u5C0F",type:3},api:async t=>{t.post("/init",qr),t.post("/home",dgr),t.post("/category",fgr),t.post("/detail",pgr),t.post("/play",Or),t.post("/search",mgr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Nr)},check:I4};var hgr="https://img.icons8.com/fluency/96/folder-invoices--v1.png",ggr="https://img.icons8.com/color/48/video.png",Agr="https://img.icons8.com/color/48/file.png",ygr=[".mp4",".mkv",".webm",".avi",".wmv",".flv",".mov",".mpeg",".mpg",".m4v",".ts",".m2ts",".3gp",".rm",".rmvb",".iso"],xgr=[".srt",".ass",".scc",".stl",".ttml"];async function bgr(t,e){let r=globalThis.getPanName?await globalThis.getPanName(t):"";return String(r||e)}function Qit(t){return t?.dir===!0||t?.dir===1||t?.type==="dir"||t?.type==="folder"}function Git(t){let e=String(t?.file_name||"").toLowerCase();return t?.obj_category==="video"||ygr.some(r=>e.endsWith(r))}function Egr(t){let e=String(t?.file_name||"").toLowerCase();return xgr.some(r=>e.endsWith(r))}function _gr(t,e){return`folder@@@${t}@@@${e}`}function Sgr(t){let e=["own","",t.fid,"",t.subtitle?t.subtitle.fid:"",t.subtitle&&t.subtitle.share_fid_token||""];return`file@@@${t.file_name}@@@${e.join("*")}`}async function vgr(t,e,r=1){let n=[],s=[],i=await mLe(t,e||"0",r);i.forEach(o=>{let c=Qit(o),u=o.file===!0||o.file===1||o.type==="file";if(!c){if(u&&Git(o)){if(Number(o.size||0)<1024*1024*5)return;n.push(o);return}u&&Egr(o)&&s.push(o)}}),s.length>0&&n.forEach(o=>{let c=ml({name:o.file_name},s.map(u=>({...u,name:u.file_name})));c.bestMatch&&(o.subtitle=c.bestMatch.target)});let a=[];return i.forEach(o=>{let c=Qit(o);if(!c&&!Git(o))return;let u=String(o.file_name||"\u672A\u77E5").trim()||"\u672A\u77E5",l=Agr;c?l=hgr:l=ggr,a.push({vod_id:c?_gr(u,o.fid):Sgr(o),vod_name:u,vod_pic:l,vod_remarks:c?"\u76EE\u5F55":ji(Number(o.size||0)),...c?{cate:{id:o.fid,name:u}}:{},ratio:1.33})}),{rawCount:i.length,list:a}}async function Cgr(t,e){return await kv(t),{}}async function Igr(t,e){return{class:[{type_id:"0",type_name:"\u6211\u7684\u5938\u514B\u7F51\u76D8"}]}}async function Tgr(t,e){let r=String(t.body.id||"0");r.startsWith("folder@@@")&&(r=r.split("@@@")[2]||"0");let n=Number.parseInt(t.body.page,10)||1,{rawCount:s,list:i}=await vgr(t,r==="0"?"0":r,n);return{page:n,pagecount:s>=200?n+1:n,limit:200,total:9999,list:i}}async function wgr(t,e){let r=String(t.body.id||""),n=r.split("@@@"),s=n[1]||"\u89C6\u9891\u64AD\u653E",i=n[2]||"",a=await bgr("quark","\u5938\u514B");return{list:[{vod_id:r,vod_name:s,vod_content:`\u6587\u4EF6\u540D: ${s}`,vod_play_from:a,vod_play_url:`${a}$${i}`}]}}async function Rgr(t,e){return await vk(t,e)}async function Ngr(t,e){return{page:1,pagecount:1,list:[]}}async function Ogr(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);if(n.init=s.json(),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),n.home?.class?.length){s=await t.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 t.server.inject().post(`${r}/detail`).payload({id:i.vod_id}),n.detail=s.json())}return n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var Vit={meta:{key:"myquark",name:"\u300C\u76D8\u300D\u5938\u514B",type:3},api:async t=>{t.post("/init",Cgr),t.post("/home",Igr),t.post("/category",Tgr),t.post("/detail",wgr),t.post("/play",Rgr),t.post("/search",Ngr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Sk),t.get("/test",Ogr)}};var Pgr="https://img.icons8.com/fluency/96/folder-invoices--v1.png",Dgr="https://img.icons8.com/color/48/video.png",kgr="https://img.icons8.com/color/48/file.png",Lgr=[".mp4",".mkv",".webm",".avi",".wmv",".flv",".mov",".mpeg",".mpg",".m4v",".ts",".m2ts",".3gp",".rm",".rmvb",".iso"],Bgr=[".srt",".ass",".scc",".stl",".ttml"];async function Mgr(t,e){let r=globalThis.getPanName?await globalThis.getPanName(t):"";return String(r||e)}function Wgr(t){return t?.type==="folder"}function zit(t){let e=`.${String(t?.file_extension||"").toLowerCase()}`;return t?.category==="video"||Lgr.includes(e)}function $gr(t,e){return`folder@@@${t}@@@${e}`}function Fgr(t){return`file@@@${t.name}@@@own*${t.file_id}*${t.subtitle?t.subtitle.file_id:""}`}async function Ugr(t,e){let r=[],n=[],s=[],i="";do{let o=await eLe(t,e||"root",i);s.push(...Array.isArray(o.items)?o.items:[]),i=String(o.next_marker||"")}while(i);s.forEach(o=>{if(o.type==="file"&&zit(o)){if(Number(o.size||0)<1024*1024*5)return;r.push(o);return}let c=String(o.file_extension||"").toLowerCase();o.type==="file"&&Bgr.some(u=>c.endsWith(u))&&n.push(o)}),n.length>0&&r.forEach(o=>{let c=ml(o,n);c.bestMatch&&(o.subtitle=c.bestMatch.target)});let a=[];return s.forEach(o=>{let c=Wgr(o);if(!c&&!zit(o))return;let u=String(o.name||"\u672A\u77E5").trim()||"\u672A\u77E5",l=kgr;c?l=Pgr:l=Dgr,a.push({vod_id:c?$gr(u,o.file_id):Fgr(o),vod_name:u,vod_pic:l,vod_remarks:c?"\u76EE\u5F55":ji(Number(o.size||0)),...c?{cate:{id:o.file_id,name:u}}:{},ratio:1.33})}),a}async function qgr(t,e){return await Dv(t),{}}async function jgr(t,e){return{class:[{type_id:"root",type_name:"\u6211\u7684\u963F\u91CC\u7F51\u76D8"}]}}async function Hgr(t,e){let r=String(t.body.id||"root");r.startsWith("folder@@@")&&(r=r.split("@@@")[2]||"root");let n=Number.parseInt(t.body.page,10)||1,s=await Ugr(t,r||"root");return{page:n,pagecount:1,limit:s.length,total:s.length,list:s}}async function Qgr(t,e){let r=String(t.body.id||""),n=r.split("@@@"),s=n[1]||"\u89C6\u9891\u64AD\u653E",i=n[2]||"",a=await Mgr("ali","\u963F\u91CC");return{list:[{vod_id:r,vod_name:s,vod_content:`\u6587\u4EF6\u540D: ${s}`,vod_play_from:a,vod_play_url:`${a}$${i}`}]}}async function Ggr(t,e){return await xk(t,e)}async function Vgr(t,e){return{page:1,pagecount:1,list:[]}}async function zgr(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);if(n.init=s.json(),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),n.home?.class?.length){s=await t.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 t.server.inject().post(`${r}/detail`).payload({id:i.vod_id}),n.detail=s.json())}return n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var Kit={meta:{key:"myali",name:"\u300C\u76D8\u300D\u963F\u91CC",type:3},api:async t=>{t.post("/init",qgr),t.post("/home",jgr),t.post("/category",Hgr),t.post("/detail",Qgr),t.post("/play",Ggr),t.post("/search",Vgr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",yk),t.get("/test",zgr)}};var Jit="https://img.icons8.com/fluency/96/folder-invoices--v1.png",Kgr="https://img.icons8.com/color/48/video.png",Ygr=[".mp4",".mkv",".webm",".avi",".wmv",".flv",".mov",".mpeg",".mpg",".m4v",".ts",".m2ts",".3gp",".rm",".rmvb",".iso"],T4=100,Jgr=5,Xgr="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36";async function Yit(t,e){let r=globalThis.getPanName?await globalThis.getPanName(t):"";return String(r||e)}function Zgr(t){if(Number(t?.mediaType)===3)return!0;let e=String(t?.name||t?.fileName||"").toLowerCase();return Ygr.some(r=>e.endsWith(r))}function Tae(t){return String(t?.name||t?.fileName||"\u672A\u77E5").trim()||"\u672A\u77E5"}function wae(t){return String(t?.id||t?.fileId||t?.folderId||t?.fileID||t?.fId||"")}function eAr(t){return Number(t?.size||t?.fileSize||0)}function tAr(t,e){return`folder@@@${t}@@@${e}`}function rAr(t){return`file@@@${Tae(t)}@@@own*${wae(t)}`}function nAr(t){return String(t?.vod_id||"").startsWith("file@@@")}function sAr(t){let e=String(t?.vod_id||"").split("@@@"),r=e[1]||t?.vod_name||"\u89C6\u9891\u64AD\u653E",n=e[2]||"";return n?`${r}$${n}`:""}function Rae(t,e=4,r=4){let n=String(t||"").trim();return n?n.length<=e+r+1?n:`${n.slice(0,e)}...${n.slice(-r)}`:""}function iAr(t){return Rae(t,36,10)}async function Xit(t,e="-11",r=1){await rb(t);let n=await rf.listOwnFiles(e,r,T4),s=[];return(n.folderList||[]).forEach(i=>{let a=wae(i);if(!a)return;let o=Tae(i);s.push({vod_id:tAr(o,a),vod_name:o,vod_pic:Jit,vod_remarks:"\u76EE\u5F55",cate:{id:a,name:o},ratio:1.33})}),(n.fileList||[]).forEach(i=>{if(!wae(i)||!Zgr(i))return;let a=Tae(i);s.push({vod_id:rAr(i),vod_name:a,vod_pic:Kgr,vod_remarks:ji(eAr(i)),ratio:1.33})}),{rawCount:Number(n.count||0),list:s}}async function aAr(t,e){return await rb(t),{}}async function oAr(t,e){return{class:[{type_id:"-11",type_name:"\u6211\u7684\u5929\u7FFC\u4E91\u76D8"}]}}async function cAr(t,e){let r=String(t.body.id||"-11");r.startsWith("folder@@@")&&(r=r.split("@@@")[2]||"-11");let n=Number.parseInt(t.body.page,10)||1,{rawCount:s,list:i}=await Xit(t,r||"-11",n);return{page:n,pagecount:s>=T4?n+1:n,limit:T4,total:9999,list:i}}async function uAr(t,e){let r=String(t.body.id||"");if(r.startsWith("folder@@@")){let o=r.split("@@@"),c=o[1]||"\u76EE\u5F55",u=o[2]||"-11",l=[],d=1;for(;d<=Jgr;){let{rawCount:f,list:p}=await Xit(t,u,d);if(l.push(...p.filter(nAr)),f0){let f=await Yit("tianyi","\u5929\u7FFC");return{list:[{vod_id:r,vod_name:c,vod_pic:Jit,vod_remarks:`${l.length}\u4E2A\u89C6\u9891`,vod_content:`\u76EE\u5F55: ${c}`,vod_play_from:f,vod_play_url:l.map(sAr).filter(Boolean).join("#")}]}}return{list:[{vod_id:r,vod_name:c,vod_remarks:"\u76EE\u5F55",vod_content:"\u5F53\u524D\u76EE\u5F55\u6CA1\u6709\u53EF\u64AD\u653E\u89C6\u9891"}]}}let n=r.split("@@@"),s=n[1]||"\u89C6\u9891\u64AD\u653E",i=n[2]||"",a=await Yit("tianyi","\u5929\u7FFC");return{list:[{vod_id:r,vod_name:s,vod_remarks:"",vod_content:`\u6587\u4EF6\u540D: ${s}`,vod_play_from:a,vod_play_url:`${a}$${i}`}]}}async function lAr(t,e){await rb(t);let r=Date.now(),n=String(t.body.id||""),s=n.split("*"),i=Rae(n,8,6),a=Rae(s[1],4,4);if(console.log("[mytianyi][play] request",{rawId:i,source:s[0]||"",fileId:a}),s[0]!=="own"||!s[1])return console.warn("[mytianyi][play] invalid params",{rawId:i,source:s[0]||"",hasFileId:!!s[1]}),{parse:0,url:"",msg:"\u5929\u7FFC\u64AD\u653E\u53C2\u6570\u9519\u8BEF"};try{let o=await rf.getOwnDownload(s[1]),c=String(o?.url||"").trim();return c?(console.log("[mytianyi][play] success",{fileId:a,hasCookie:!!o?.cookie,resCode:o?.data?.res_code,urlPreview:iAr(c),costMs:Date.now()-r}),{parse:0,url:["\u539F\u753B",c],header:{"User-Agent":Xgr}}):(console.warn("[mytianyi][play] empty download url",{fileId:a,hasCookie:!!o?.cookie,resCode:o?.data?.res_code,resMsg:o?.data?.res_message||"",costMs:Date.now()-r}),{parse:0,url:"",msg:"\u5929\u7FFC\u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740"})}catch(o){return console.error("[mytianyi][play] failed",{fileId:a,rawId:i,costMs:Date.now()-r,message:String(o?.message||o),stack:String(o?.stack||"").split(` -`).slice(0,2).join(" | ")}),{parse:0,url:"",msg:`\u5929\u7FFC\u63A5\u53E3\u5F02\u5E38: ${o?.message||o}`}}}async function dAr(t,e){return{page:1,pagecount:1,list:[]}}async function fAr(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);if(n.init=s.json(),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),n.home?.class?.length){s=await t.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 t.server.inject().post(`${r}/detail`).payload({id:i.vod_id}),n.detail=s.json())}return n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var Zit={meta:{key:"mytianyi",name:"\u300C\u76D8\u300D\u5929\u7FFC",type:3},api:async t=>{t.post("/init",aAr),t.post("/home",oAr),t.post("/category",cAr),t.post("/detail",uAr),t.post("/play",lAr),t.post("/search",dAr),t.get("/test",fAr)}};var pAr="https://img.icons8.com/fluency/96/folder-invoices--v1.png",mAr="https://img.icons8.com/color/48/video.png",hAr=[".mp4",".mkv",".webm",".avi",".wmv",".flv",".mov",".mpeg",".mpg",".m4v",".ts",".m2ts",".3gp",".rm",".rmvb",".iso"];async function gAr(t,e){let r=globalThis.getPanName?await globalThis.getPanName(t):"";return String(r||e)}function AAr(t){return encodeURIComponent(String(t||""))}function yAr(t){return Number(t?.isdir)===1||Number(t?.category)===6}function xAr(t){if(Number(t?.category)===1)return!0;let e=String(t?.server_filename||t?.path||"").toLowerCase();return hAr.some(r=>e.endsWith(r))}function eat(t){return String(t?.server_filename||t?.path?.split("/").pop()||"\u672A\u77E5").trim()||"\u672A\u77E5"}function bAr(t,e){return`folder@@@${t}@@@${e}`}function EAr(t){let e=eat(t),r=String(t?.fs_id||t?.fsid||""),n=String(t?.path||"");return`file@@@${e}@@@own*${r}*${AAr(n)}`}async function _Ar(t,e="/",r=1){let{list:n,rawCount:s}=await Z6e(t,e||"/",r);return{rawCount:s,list:n.reduce((i,a)=>{let o=yAr(a);if(!o&&!xAr(a))return i;let c=eat(a);return i.push({vod_id:o?bAr(c,String(a?.path||"/")):EAr(a),vod_name:c,vod_pic:o?pAr:mAr,vod_remarks:o?"\u76EE\u5F55":ji(Number(a?.size||0)),...o?{cate:{id:String(a?.path||"/"),name:c}}:{},ratio:1.33}),i},[])}}async function SAr(t,e){return await ib(t),{}}async function vAr(t,e){return{class:[{type_id:"/",type_name:"\u6211\u7684\u767E\u5EA6\u7F51\u76D8"}]}}async function CAr(t,e){let r=String(t.body.id||"/");r.startsWith("folder@@@")&&(r=r.split("@@@")[2]||"/");let n=Number.parseInt(t.body.page,10)||1,{rawCount:s,list:i}=await _Ar(t,r||"/",n);return{page:n,pagecount:s>=200?n+1:n,limit:200,total:9999,list:i}}async function IAr(t,e){let r=String(t.body.id||"");if(r.startsWith("folder@@@"))return{list:[{vod_id:r,vod_name:r.split("@@@")[1]||"\u76EE\u5F55",vod_remarks:"\u76EE\u5F55"}]};let n=r.split("@@@"),s=n[1]||"\u89C6\u9891\u64AD\u653E",i=n[2]||"",a=await gAr("baidu","\u767E\u5EA6");return{list:[{vod_id:r,vod_name:s,vod_remarks:"",vod_content:`\u6587\u4EF6\u540D: ${s}`,vod_play_from:a,vod_play_url:`${a}$${i}`}]}}async function TAr(t,e){return await lL(t,e)}async function wAr(t,e){return{page:1,pagecount:1,list:[]}}async function RAr(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);if(n.init=s.json(),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),n.home?.class?.length){s=await t.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 t.server.inject().post(`${r}/detail`).payload({id:i.vod_id}),n.detail=s.json())}return n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var tat={meta:{key:"mybaidu",name:"\u300C\u76D8\u300D\u767E\u5EA6",type:3},api:async t=>{t.post("/init",SAr),t.post("/home",vAr),t.post("/category",CAr),t.post("/detail",IAr),t.post("/play",TAr),t.post("/search",wAr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",dL),t.get("/test",RAr)}};var NAr="115Drive",rat="https://img.icons8.com/fluency/96/folder-invoices--v1.png",OAr="https://img.icons8.com/color/48/video.png",PAr={"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"};async function DAr(t,e="0",r=1){let n=await P0(t);if(!n)return{list:[],count:0};let s=Number.parseInt(r,10)||1,i=115,a=(s-1)*i,o=`https://webapi.115.com/files?aid=1&cid=${encodeURIComponent(e)}&o=user_ptime&asc=0&offset=${a}&show_dir=1&limit=${i}&code=&scid=&snap=0&natsort=1&record_open_time=1&source=&format=json`;try{let u=(await he.get(o,{headers:{...PAr,Cookie:n}}))?.data;if(u?.state)return{list:Array.isArray(u.data)?u.data:[],count:Number.parseInt(u.count,10)||0}}catch(c){console.error("[my115] list error:",c.message)}return{list:[],count:0}}function kAr(t){return encodeURIComponent(String(t||""))}function LAr(t){try{return decodeURIComponent(String(t||""))}catch{return String(t||"")}}function BAr(t,e,r){return`LOCAL###${t}###${kAr(e)}###${r}`}function nat(t){let e=String(t||"");if(!e.startsWith("LOCAL###"))return{id:e,name:"115\u8D44\u6E90",value:e,kind:"file",isOwn:!1};let r=e.split("###");if(r.length>=4&&["dir","file"].includes(r[1]))return{id:e,kind:r[1],name:LAr(r[2])||"115\u8D44\u6E90",value:r.slice(3).join("###"),isOwn:!0};let[,n="115\u8D44\u6E90",s=""]=r;return{id:e,name:n,value:s,kind:/^\d+$/.test(s)?"dir":"file",isOwn:!0}}function MAr(t){let e=Number(t.fc)===0,r=String(t.n||t.name||"\u672A\u77E5").trim()||"\u672A\u77E5",n=String(e?t.cid||"":t.pc||t.pick_code||"");return{vod_id:BAr(e?"dir":"file",r,n),vod_name:r,vod_pic:e?rat:OAr,vod_remarks:e?"\u76EE\u5F55":ji(Number(t.s||t.size||0)),...e?{cate:{id:n,name:r}}:{},ratio:1.33}}async function WAr(t,e){return{}}async function $Ar(t,e){return{class:[{type_id:"0",type_name:"\u6211\u7684115\u7F51\u76D8"}]}}async function FAr(t,e){let r=String(t.body.id||"0");r.startsWith("LOCAL###")&&(r=nat(r).value||"0");let n=Number.parseInt(t.body.page,10)||1,{list:s,count:i}=await DAr(t.server,r,n);return{page:n,pagecount:Math.max(1,Math.ceil(i/115)),limit:115,total:i,list:s.map(MAr)}}async function UAr(t,e){return{list:(Array.isArray(t.body.id)?t.body.id:[t.body.id]).map(s=>{let i=nat(s);return i.isOwn?i.kind==="dir"?{vod_id:i.id,vod_name:i.name||"\u76EE\u5F55",vod_pic:rat,vod_remarks:"\u76EE\u5F55",vod_content:`\u76EE\u5F55: ${i.name||"115\u8D44\u6E90"}`}:{vod_id:i.id,vod_name:i.name,vod_content:`\u6587\u4EF6\u540D: ${i.name}`,vod_play_from:NAr,vod_play_url:`OWN$${i.value}`}:{vod_id:i.id,vod_name:"115\u8D44\u6E90"}})}}async function qAr(t,e){let r=String(t.body.id||"").trim(),n=r.startsWith("OWN$")?r.slice(4):r;return n?await cL(t.server,n):{parse:0,url:"",msg:"115 \u64AD\u653E\u53C2\u6570\u9519\u8BEF"}}async function jAr(t,e){return{page:1,pagecount:1,list:[]}}async function HAr(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);if(n.init=s.json(),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),n.home?.class?.length){s=await t.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?.[0];i?.vod_id&&(s=await t.server.inject().post(`${r}/detail`).payload({id:i.vod_id}),n.detail=s.json())}return n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var sat={meta:{key:"my115",name:"\u300C\u76D8\u300D115",type:3},api:async t=>{t.post("/init",WAr),t.post("/home",$Ar),t.post("/category",FAr),t.post("/detail",UAr),t.post("/play",qAr),t.post("/search",jAr),t.get("/test",HAr)}};var QAr="https://img.icons8.com/fluency/96/folder-invoices--v1.png",GAr="https://img.icons8.com/color/48/video.png",VAr=[".mp4",".mkv",".webm",".avi",".wmv",".flv",".mov",".mpeg",".mpg",".m4v",".ts",".m2ts",".3gp",".rm",".rmvb",".iso"];async function zAr(t,e){let r=globalThis.getPanName?await globalThis.getPanName(t):"";return String(r||e)}function KAr(t){try{return decodeURIComponent(String(t||""))}catch{return String(t||"")}}function YAr(t){return t?.data??t??{}}function JAr(t){let e=YAr(t);return[e.InfoList,e.infoList,e.list,t?.InfoList,t?.infoList,t?.list].find(n=>Array.isArray(n))||[]}function Oae(t){return String(t?.FileName||t?.file_name||t?.name||"\u672A\u77E5").trim()||"\u672A\u77E5"}function Nae(t){return String(t?.FileId||t?.fileId||t?.file_id||"")}function iat(t){return Number(t?.Size||t?.size||0)}function XAr(t){return String(t?.S3KeyFlag||t?.s3KeyFlag||"")}function ZAr(t){return String(t?.Etag||t?.etag||"")}function eyr(t){return Number(t?.Category)===0||Number(t?.Type)===1||t?.type==="folder"}function tyr(t){let e=Oae(t).toLowerCase();return Number(t?.Category)===2||VAr.some(r=>e.endsWith(r))}function ryr(t,e){return`folder@@@${t}@@@${e}`}function nyr(t){let e=Oae(t),r=["own",Nae(t),XAr(t),String(iat(t)),ZAr(t),encodeURIComponent(e)];return`file@@@${e}@@@${r.join("*")}`}async function syr(t,e="0"){await sb(t);let r=await O0.getrootmyfile(e||"0"),n=JAr(r),s=[];return n.forEach(i=>{let a=eyr(i);if(!a&&!tyr(i))return;let o=Oae(i);s.push({vod_id:a?ryr(o,Nae(i)):nyr(i),vod_name:o,vod_pic:a?QAr:GAr,vod_remarks:a?"\u76EE\u5F55":ji(iat(i)),...a?{cate:{id:Nae(i),name:o}}:{},ratio:1.33})}),s}async function iyr(t,e){return await sb(t),{}}async function ayr(t,e){return{class:[{type_id:"0",type_name:"\u6211\u7684123\u7F51\u76D8"}]}}async function oyr(t,e){let r=String(t.body.id||"0");r.startsWith("folder@@@")&&(r=r.split("@@@")[2]||"0");let n=Number.parseInt(t.body.page,10)||1,s=await syr(t,r||"0");return{page:n,pagecount:1,limit:s.length,total:s.length,list:s}}async function cyr(t,e){let r=String(t.body.id||""),n=r.split("@@@"),s=n[1]||"\u89C6\u9891\u64AD\u653E",i=n[2]||"",a=await zAr("123","123");return{list:[{vod_id:r,vod_name:s,vod_content:`\u6587\u4EF6\u540D: ${s}`,vod_play_from:a,vod_play_url:`${a}$${i}`}]}}async function uyr(t,e){let r=String(t.body.id||"").split("*");if(r[0]!=="own"||r.length<5)return{parse:0,url:"",msg:"123 \u64AD\u653E\u53C2\u6570\u9519\u8BEF"};await sb(t);try{let n=await O0.getmyDownload(r[1],r[2],r[3],r[4],KAr(r[5]||""));return n?{parse:0,url:["\u539F\u753B",n]}:{parse:0,url:"",msg:"123 \u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740"}}catch(n){return{parse:0,url:"",msg:`123 \u63A5\u53E3\u5F02\u5E38: ${n?.message||n}`}}}async function lyr(t,e){return{page:1,pagecount:1,list:[]}}async function dyr(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);if(n.init=s.json(),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),n.home?.class?.length){s=await t.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 t.server.inject().post(`${r}/detail`).payload({id:i.vod_id}),n.detail=s.json())}return n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var aat={meta:{key:"my123",name:"\u300C\u76D8\u300D123",type:3},api:async t=>{t.post("/init",iyr),t.post("/home",ayr),t.post("/category",oyr),t.post("/detail",cyr),t.post("/play",uyr),t.post("/search",lyr),t.get("/test",dyr)}};var uat="https://pan1.me";function oat(t,e){return Object.prototype.hasOwnProperty.call(t||{},e)}function lat(t){return String(t||"").trim().replace(/\/+$/,"")||uat}var dat=async(t,e,r)=>{let n=await t.db.getObjectDefault("/123ypzysq",{});if(oat(n,e))return n[e];let s=t.config?.["123ypzysq"]||{};return oat(s,e)?s[e]:r},fyr=async t=>lat(await dat(t,"url",uat)),pyr=async t=>String(await dat(t,"cookie","")||"").trim(),Pae=async t=>({url:await fyr(t),cookie:await pyr(t)}),cat=async(t,e,r)=>{await t.db.push(`/123ypzysq/${e}`,r)},myr=async t=>{await t.db.delete("/123ypzysq")};async function Dae(t){t.get("/config",async(e,r)=>{r.send({code:0,data:await Pae(e.server)})}),t.put("/config",async(e,r)=>{let n=e.body||{};await cat(e.server,"url",lat(n.url)),await cat(e.server,"cookie",String(n.cookie||"").trim()),r.send({code:0})}),t.delete("/config",async(e,r)=>{await myr(e.server),r.send({code:0})})}var w4="https://pan1.me",hyr=["CATPAW_123YPZYSQ_COOKIE","PAN1_ME_COOKIE","YPZYSQ_COOKIE"],gyr="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Ayr=/https?:\/\/[A-Za-z0-9._~:/?#[\]@!$&'()*+,;=%-]+/g,yyr=/(?:www\.)?(?:123684\.com|123865\.com|123912\.com|123pan\.com|123pan\.cn|123592\.com)/i,hat=[{type_id:"2",type_name:"\u7535\u5F71"},{type_id:"48",type_name:"\u7535\u89C6\u5267"},{type_id:"37",type_name:"\u52A8\u6F2B"},{type_id:"52",type_name:"\u7EFC\u827A"},{type_id:"56",type_name:"4K\u539F\u76D8"}],fat=["\u54C8\u54C8\uFF0C\u4E0D\u9519\u54E6\uFF01","\u4E0D\u9519\u7684\u5E16\u5B50\uFF01","\u975E\u5E38\u68D2\uFF01\uFF01\uFF01","\u611F\u8C22\u5206\u4EAB,\u592A\u68D2\u4E86\uFF01","\u8FD9\u4E0D\u6B63\u662F\u6211\u82E6\u82E6\u5BFB\u627E\u7684\u8D44\u6E90\u5417\uFF01","\u597D\u4EBA\u4E00\u80CE\u751F\u5341\u4E2A\uFF01","\u770B\u5B8C\u697C\u4E3B\u7684\u8FD9\u4E2A\u5E16\u5B50\u4EE5\u540E\uFF0C\u6211\u7684\u5FC3\u4E45\u4E45\u4E0D\u80FD\u5E73\u9759\uFF0C\u9707\u64BC\u554A\uFF01","\u4E3A\u4EC0\u4E48\u4F1A\u6709\u5982\u6B64\u597D\u7684\u5E16\u5B50\uFF01","\u864E\u8EAF\u4E00\u9707\uFF0C\u4E09\u5206\u8D70\u4EBA\u3002","\u6E2F\uFF0C\u662F\u4E00\u79CD\u7F8E\u5FB7\u3002","\u6D41\u6C13\u5E76\u4E0D\u53EF\u6015\uFF0C\u53EF\u6015\u7684\u662F\u6D41\u6C13\u6709\u6587\u5316\u3002","\u597D\u4EBA\u4E00\u80CE\u751F10086\u4E2A"];function Qf(t){return String(t||"").replace(/\s+/g," ").trim()}async function kae(t){let e=await Pae(t.server).catch(()=>({url:w4,cookie:""})),r=String(e.url||w4).trim().replace(/\/+$/,""),n=hyr.map(s=>process.env[s]).find(Boolean);return{baseUrl:r||w4,cookie:String(e.cookie||n||"").trim()}}function xyr(t,e=!1){let r={"User-Agent":gyr,Referer:t.baseUrl,Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8"};return e&&(r.Origin=t.baseUrl,r["X-Requested-With"]="XMLHttpRequest",r["Content-Type"]="application/x-www-form-urlencoded"),t.cookie&&(r.Cookie=t.cookie),r}function gat(t,e=w4){let r=String(t||"").trim();return r?new URL(r,e).toString():""}async function Ew(t,e,r,n={}){let s=await he.request({url:gat(t,r.baseUrl),method:n.method||"GET",headers:xyr(r,n.ajax),data:n.data||void 0});return String(s?.data||"")}function Aat(t){let e=String(t||"");return e.match(/thread-(\d+)/)?.[1]||e.match(/^\d+$/)?.[0]||""}function yat(t){let e=Me(t),r=[];return e("li.media.thread.tap").each((n,s)=>{let i=e(s),a=i.find('a[href*="thread-"]').first(),o=Qf(a.text()),c=i.attr("data-tid")||Aat(a.attr("href"));if(!o||!c)return;let u=Qf(i.find(".date.text-grey").text()),l=i.find("a.badge.badge-pill.badge-dark").map((d,f)=>Qf(e(f).text())).get().filter(Boolean).join(" / ");r.push({vod_id:c,vod_name:o,vod_remarks:[l,u].filter(Boolean).join(" \xB7 "),topRightRemarks:l})}),{$:e,list:r}}function xat(t,e,r,n){let s=String(n||"").replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),i=r==="search"?new RegExp(`search-${s}-(\\d+)\\.htm`):new RegExp(`forum-${s}-(\\d+)\\.htm`),a=Number.parseInt(e,10)||1;return t("a[href]").each((o,c)=>{let u=String(t(c).attr("href")||""),l=Number.parseInt(u.match(i)?.[1]||"",10);Number.isFinite(l)&&(a=Math.max(a,l))}),a}function byr(){return fat[Math.floor(Math.random()*fat.length)]}async function Eyr(t,e,r){if(r.cookie)try{let n=new URLSearchParams({doctype:"1",return_html:"1",quotepid:"0",message:byr()}).toString();await Ew(`/?post-create-${t}-1.htm`,e,r,{method:"POST",ajax:!0,data:n}),await new Promise(s=>setTimeout(s,500))}catch(n){console.warn("[123ypzysq] \u81EA\u52A8\u56DE\u590D\u5931\u8D25:",n?.message||n)}}function pat(t){return Qf(t).match(/(?:æå–ç |è®¿é—®ç |å¯†ç |code)[::\s]*([A-Za-z0-9]{4})/i)?.[1]||""}function _yr(t){return String(t||"").replace(/&/g,"&").replace(/[)\])】,,。;;\s]+$/g,"").trim()}function Syr(t,e){try{let r=new URL(t);return r.searchParams.has("pwd")||r.searchParams.set("pwd",e),r.toString()}catch{let n=t.includes("?")?"&":"?";return`${t}${n}pwd=${encodeURIComponent(e)}`}}function mat(t,e){let r=_yr(t);return yyr.test(r)?e?Syr(r,e):r:""}function vyr(t){let e=t(".alert.alert-success").length?t(".alert.alert-success"):t(".post, .message, body"),r=new Set;return e.each((n,s)=>{let i=t(s),a=i.text(),o=pat(a);i.find("a[href]").each((c,u)=>{let l=t(u).attr("href"),d=pat(t(u).parent().text())||o,f=mat(l,d);f&&r.add(f)});for(let c of i.html()?.match(Ayr)||[]){let u=mat(c,o);u&&r.add(u)}}),[...r]}function Cyr(t,e,r){let n={vod_id:e,vod_name:Qf(t(".movie-title").first().text())||Qf(t("h1, h2, .title").first().text())||"123\u4E91\u76D8\u8D44\u6E90",vod_pic:gat(t(".movie-poster img").first().attr("src")||"",r),vod_content:Qf(t(".plot-content").first().text())};return t(".detail-label").each((s,i)=>{let a=Qf(t(i).text()),o=Qf(t(i).next().text());o&&(a.includes("\u5E74\u4EFD")&&(n.vod_year=o),a.includes("\u7C7B\u578B")&&(n.vod_type=o),a.includes("\u5BFC\u6F14")&&(n.vod_director=o),a.includes("\u4E3B\u6F14")&&(n.vod_actor=o))}),n}async function Iyr(t,e){return await qr(t,e),{}}async function Tyr(t,e){return{class:hat}}async function wyr(t,e){let r=String(t.body.id||hat[0].type_id),n=Number.parseInt(t.body.page,10)||1,s=await kae(t),i=await Ew(`/?forum-${r}-${n}.htm`,t,s),{$:a,list:o}=yat(i);return{page:n,pagecount:xat(a,n,"forum",r),limit:o.length,total:o.length,list:o}}async function Ryr(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[],s=await kae(t);for(let i of r){let a=Aat(i);if(!a)continue;let o=await Ew(`/?thread-${a}.htm`,t,s),c=Me(o);c(".alert.alert-warning").text().includes("\u8BF7\u56DE\u590D\u540E\u518D\u67E5\u770B")&&(await Eyr(a,t,s),o=await Ew(`/?thread-${a}.htm`,t,s),c=Me(o));let u=Cyr(c,a,s.baseUrl),l=vyr(c),d=l.length>0?await Rr(l,t):null;d?.froms&&d?.urls&&(u.vod_play_from=d.froms,u.vod_play_url=d.urls,u.vod_links=d.links),!u.vod_content&&l.length>0&&(u.vod_content=`\u5171\u53D1\u73B0${l.length}\u4E2A123\u7F51\u76D8\u94FE\u63A5`),n.push(u)}return{list:n}}async function Nyr(t,e){let r=String(t.body.wd||"").trim(),n=Number.parseInt(t.body.page,10)||1;if(!r)return{page:n,pagecount:1,list:[]};let s=encodeURIComponent(r),i=await kae(t),a=await Ew(`/?search-${s}-${n}.htm`,t,i),{$:o,list:c}=yat(a);return{page:n,pagecount:xat(o,n,"search",s),limit:c.length,total:c.length,list:c}}async function Oyr(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/home`);if(n.home=s.json(),n.home?.class?.length){s=await t.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?.[0];i?.vod_id&&(s=await t.server.inject().post(`${r}/detail`).payload({id:i.vod_id}),n.detail=s.json())}return s=await t.server.inject().post(`${r}/search`).payload({wd:"\u4ED9\u9006",page:1}),n.search=s.json(),n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var bat={meta:{key:"123ypzysq",name:"\u300C\u76D8\u300D123\u793E\u533A",type:3},api:async t=>{t.post("/init",Iyr),t.post("/home",Tyr),t.post("/category",wyr),t.post("/detail",Ryr),t.post("/play",Or),t.post("/search",Nyr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Nr),t.get("/test",Oyr)}};var Pyr="https://img.icons8.com/fluency/96/folder-invoices--v1.png",Dyr="https://img.icons8.com/color/48/video.png",Eat=[".mp4",".mkv",".webm",".avi",".wmv",".flv",".mov",".mpeg",".mpg",".m4v",".ts",".m2ts",".3gp",".rm",".rmvb",".iso"];async function kyr(t,e){let r=globalThis.getPanName?await globalThis.getPanName(t):"";return String(r||e)}function Lyr(t){return Number(t?.resType||0)===2}function Byr(t){if(Number(t?.resType||0)!==1)return!1;let e=String(t?.ext||"").toLowerCase(),r=String(t?.mineType||"").toLowerCase(),n=String(t?.fileName||"").toLowerCase();return Number(t?.fileType||0)===2||r.startsWith("video/")||Eat.includes(e)||Eat.some(s=>n.endsWith(s))}function _at(t){return String(t?.fileName||"\u672A\u77E5").trim()||"\u672A\u77E5"}function Lae(t){return String(t?.fileId||"")}function Myr(t){return Number(t?.fileSize||t?.size||0)}function Wyr(t,e){return`folder@@@${t}@@@${e}`}function $yr(t){return`file@@@${_at(t)}@@@own*${Lae(t)}`}async function Fyr(t,e=""){let r=await g5e(t,e||""),n=Array.isArray(r?.list)?r.list:[],s=[];return n.forEach(i=>{let a=Lyr(i);if(!a&&!Byr(i))return;let o=_at(i);s.push({vod_id:a?Wyr(o,Lae(i)):$yr(i),vod_name:o,vod_pic:a?Pyr:String(i?.thumbnail||"").trim()||Dyr,vod_remarks:a?"\u76EE\u5F55":ji(Myr(i)),...a?{cate:{id:Lae(i),name:o}}:{},ratio:1.33})}),{rawCount:n.length,total:Number(r?.total||n.length),list:s}}async function Uyr(t,e){return await lC(t),{}}async function qyr(t,e){return{class:[{type_id:"root",type_name:"\u6211\u7684\u5149\u9E2D"}]}}async function jyr(t,e){let r=String(t.body.id||"root");r.startsWith("folder@@@")&&(r=r.split("@@@")[2]||""),r==="root"&&(r="");let n=Number.parseInt(t.body.page,10)||1,{rawCount:s,total:i,list:a}=await Fyr(t,r||"");return{page:n,pagecount:1,limit:s,total:Math.max(i,s),list:a}}async function Hyr(t,e){let r=String(t.body.id||"");if(r.startsWith("folder@@@"))return{list:[{vod_id:r,vod_name:r.split("@@@")[1]||"\u76EE\u5F55"}]};let n=r.split("@@@"),s=n[1]||"\u89C6\u9891\u64AD\u653E",i=n[2]||"",a=await kyr("guangyapan","\u5149\u9E2D");return{list:[{vod_id:r,vod_name:s,vod_content:`\u6587\u4EF6\u540D: ${s}`,vod_play_from:a,vod_play_url:`${a}$${i}`}]}}async function Qyr(t,e){let r=String(t.body.id||"").split("*");if(r[0]!=="own"||!r[1])return{parse:0,url:"",msg:"\u5149\u9E2D\u64AD\u653E\u53C2\u6570\u9519\u8BEF"};try{let n=await A5e(t,r[1]);return n?.url?{parse:0,url:["\u539F\u753B",n.url]}:{parse:0,url:"",msg:n?.msg||"\u5149\u9E2D\u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740"}}catch(n){return{parse:0,url:"",msg:`\u5149\u9E2D\u63A5\u53E3\u5F02\u5E38: ${n?.message||n}`}}}async function Gyr(t,e){return{page:1,pagecount:1,list:[]}}async function Vyr(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);if(n.init=s.json(),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),n.home?.class?.length){s=await t.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 t.server.inject().post(`${r}/detail`).payload({id:i.vod_id}),n.detail=s.json())}return n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var Sat={meta:{key:"myguangyapan",name:"\u300C\u76D8\u300D\u5149\u9E2D",type:3},api:async t=>{t.post("/init",Uyr),t.post("/home",qyr),t.post("/category",jyr),t.post("/detail",Hyr),t.post("/play",Qyr),t.post("/search",Gyr),t.get("/test",Vyr)}};var zyr=["http://103.217.192.130:16969"],Bae=async t=>(await t.db.getObjectDefault("/huban",{}))?.urls||t.config.huban?.urls||zyr,Kyr=async(t,e)=>{await t.db.push("/huban/urls",e)},Yyr=async t=>{await t.db.delete("/huban/urls")};async function Mae(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await Bae(e.server)})}),t.put("/urls",async(e,r)=>{await Kyr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await Yyr(e.server),r.send({code:0})})}var Wae,R4=t=>{if(!Wae){let e=Date.now();Wae=new Promise(async r=>{let n=await Bae(t),s=await Xn(n);console.log("\u864E\u6591\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return Wae};async function $ae(t){return(await he.get(t,{headers:{"User-Agent":Gr}})).data}async function Jyr(t,e){return{class:[{type_id:"1",type_name:"\u98CE"},{type_id:"2",type_name:"\u82B1"},{type_id:"3",type_name:"\u96EA"},{type_id:"4",type_name:"\u6708"},{type_id:"5",type_name:"\u7CBE"},{type_id:"6",type_name:"\u77ED"},{type_id:"30",type_name:"115"}],filters:{}}}async function Xyr(t,e){let r=await R4(t.server),n=t.body.id,s=t.body.page,i=s||1;i==0&&(i=1);let a=r+`/index.php/vod/show/id/${n}/page/${s}.html`,o=await $ae(a,Gr),c=Me(o),u=c("#main .module-item"),l=[];for(var d of u){let m=c(d).find(".module-item-pic a").attr("href"),h=c(d).find(".module-item-pic img").attr("alt"),A=c(d).find(".module-item-pic img").attr("data-src"),g=c(d).find(".module-item-text").text();l.push({vod_id:m,vod_name:h,vod_pic:A,vod_remarks:g})}let p=c("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(i)+1:parseInt(i);return{page:parseInt(i),pagecount:p,limit:72,total:72*p,list:l}}async function Zyr(t,e){let r=await R4(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await $ae(r+i),o=Me(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let p=o(f).text(),h=o(f).next().find("a").map((A,g)=>{let b=o(g).text().trim();return b||null}).get().filter(Boolean).join(", ");p.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():p.includes("\u5BFC\u6F14")?c.vod_director=h.trim():p.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,p)=>p.children[0].data).get(),d=await Rr(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls,c.vod_links=d.links),s.push(c)}return{list:s}}async function exr(t,e){let r=await R4(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await $ae(`${r}/index.php/vod/search/wd/${s}.html`),o=Me(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var vat={meta:{key:"huban",name:"\u300C\u76D8\u300D\u864E\u6591",type:3},api:async t=>{t.post("/init",qr),t.post("/home",Jyr),t.post("/category",Xyr),t.post("/detail",Zyr),t.post("/play",Or),t.post("/search",exr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Nr)},check:R4};var txr=["http://103.217.192.184:12512"],Fae=async t=>(await t.db.getObjectDefault("/xiaoban",{}))?.urls||t.config.xiaoban?.urls||txr,rxr=async(t,e)=>{await t.db.push("/xiaoban/urls",e)},nxr=async t=>{await t.db.delete("/xiaoban/urls")};async function Uae(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await Fae(e.server)})}),t.put("/urls",async(e,r)=>{await rxr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await nxr(e.server),r.send({code:0})})}var qae,N4=t=>{if(!qae){let e=Date.now();qae=new Promise(async r=>{let n=await Fae(t),s=await Xn(n);console.log("\u5C0F\u6591\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return qae};async function jae(t){return(await he.get(t,{headers:{"User-Agent":Gr}})).data}async function sxr(t,e){return{class:[{type_id:"1",type_name:"\u6885"},{type_id:"2",type_name:"\u5170"},{type_id:"3",type_name:"\u7AF9"},{type_id:"4",type_name:"\u83CA"},{type_id:"6",type_name:"\u77ED"},{type_id:"5",type_name:"\u7CBE"}],filters:{}}}async function ixr(t,e){let r=await N4(t.server),n=t.body.id,s=t.body.page,i=s||1;i==0&&(i=1);let a=r+`/index.php/vod/show/id/${n}/page/${s}.html`,o=await jae(a,Gr),c=Me(o),u=c("#main .module-item"),l=[];for(var d of u){let m=c(d).find(".module-item-pic a").attr("href"),h=c(d).find(".module-item-pic img").attr("alt"),A=c(d).find(".module-item-pic img").attr("data-src"),g=c(d).find(".module-item-text").text();l.push({vod_id:m,vod_name:h,vod_pic:A,vod_remarks:g})}let p=c("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(i)+1:parseInt(i);return{page:parseInt(i),pagecount:p,limit:72,total:72*p,list:l}}async function axr(t,e){let r=await N4(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await jae(r+i),o=Me(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let p=o(f).text(),h=o(f).next().find("a").map((A,g)=>{let b=o(g).text().trim();return b||null}).get().filter(Boolean).join(", ");p.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():p.includes("\u5BFC\u6F14")?c.vod_director=h.trim():p.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,p)=>p.children[0].data).get(),d=await Rr(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls,c.vod_links=d.links),s.push(c)}return{list:s}}async function oxr(t,e){let r=await N4(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await jae(`${r}/index.php/vod/search/wd/${s}.html`),o=Me(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var Cat={meta:{key:"xiaoban",name:"\u300C\u76D8\u300D\u5C0F\u6591",type:3},api:async t=>{t.post("/init",qr),t.post("/home",sxr),t.post("/category",ixr),t.post("/detail",axr),t.post("/play",Or),t.post("/search",oxr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Nr)},check:N4};var Tat=Re(require("vm"),1),Qae=class{add(e,r,n){if(typeof arguments[0]!="string")for(let s in arguments[0])this.add(s,arguments[0][s],arguments[1]);else(Array.isArray(e)?e:[e]).forEach(function(s){this[s]=this[s]||[],r&&this[s][n?"unshift":"push"](r)},this)}run(e,r){this[e]=this[e]||[],this[e].forEach(function(n){n.call(r&&r.context?r.context:r,r)})}},Gae=class{constructor(e){this.jsep=e,this.registered={}}register(...e){e.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)})}},uo=class t{static get version(){return"1.4.0"}static toString(){return"JavaScript Expression Parser (JSEP) v"+t.version}static addUnaryOp(e){return t.max_unop_len=Math.max(e.length,t.max_unop_len),t.unary_ops[e]=1,t}static addBinaryOp(e,r,n){return t.max_binop_len=Math.max(e.length,t.max_binop_len),t.binary_ops[e]=r,n?t.right_associative.add(e):t.right_associative.delete(e),t}static addIdentifierChar(e){return t.additional_identifier_chars.add(e),t}static addLiteral(e,r){return t.literals[e]=r,t}static removeUnaryOp(e){return delete t.unary_ops[e],e.length===t.max_unop_len&&(t.max_unop_len=t.getMaxKeyLen(t.unary_ops)),t}static removeAllUnaryOps(){return t.unary_ops={},t.max_unop_len=0,t}static removeIdentifierChar(e){return t.additional_identifier_chars.delete(e),t}static removeBinaryOp(e){return delete t.binary_ops[e],e.length===t.max_binop_len&&(t.max_binop_len=t.getMaxKeyLen(t.binary_ops)),t.right_associative.delete(e),t}static removeAllBinaryOps(){return t.binary_ops={},t.max_binop_len=0,t}static removeLiteral(e){return delete t.literals[e],t}static removeAllLiterals(){return t.literals={},t}get char(){return this.expr.charAt(this.index)}get code(){return this.expr.charCodeAt(this.index)}constructor(e){this.expr=e,this.index=0}static parse(e){return new t(e).parse()}static getMaxKeyLen(e){return Math.max(0,...Object.keys(e).map(r=>r.length))}static isDecimalDigit(e){return e>=48&&e<=57}static binaryPrecedence(e){return t.binary_ops[e]||0}static isIdentifierStart(e){return e>=65&&e<=90||e>=97&&e<=122||e>=128&&!t.binary_ops[String.fromCharCode(e)]||t.additional_identifier_chars.has(String.fromCharCode(e))}static isIdentifierPart(e){return t.isIdentifierStart(e)||t.isDecimalDigit(e)}throwError(e){let r=new Error(e+" at character "+this.index);throw r.index=this.index,r.description=e,r}runHook(e,r){if(t.hooks[e]){let n={context:this,node:r};return t.hooks.run(e,n),n.node}return r}searchHook(e){if(t.hooks[e]){let r={context:this};return t.hooks[e].find(function(n){return n.call(r.context,r),r.node}),r.node}}gobbleSpaces(){let e=this.code;for(;e===t.SPACE_CODE||e===t.TAB_CODE||e===t.LF_CODE||e===t.CR_CODE;)e=this.expr.charCodeAt(++this.index);this.runHook("gobble-spaces")}parse(){this.runHook("before-all");let e=this.gobbleExpressions(),r=e.length===1?e[0]:{type:t.COMPOUND,body:e};return this.runHook("after-all",r)}gobbleExpressions(e){let r=[],n,s;for(;this.index0;){if(t.binary_ops.hasOwnProperty(e)&&(!t.isIdentifierStart(this.code)||this.index+e.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(),e={type:t.BINARY_EXP,operator:r,left:a,right:o},s.push(e);e=this.gobbleToken(),e||this.throwError("Expected expression after "+u),s.push(i,e)}for(c=s.length-1,e=s[c];c>1;)e={type:t.BINARY_EXP,operator:s[c-1].value,left:s[c-2],right:e},c-=2;return e}gobbleToken(){let e,r,n,s;if(this.gobbleSpaces(),s=this.searchHook("gobble-token"),s)return this.runHook("after-token",s);if(e=this.code,t.isDecimalDigit(e)||e===t.PERIOD_CODE)return this.gobbleNumericLiteral();if(e===t.SQUOTE_CODE||e===t.DQUOTE_CODE)s=this.gobbleStringLiteral();else if(e===t.OBRACK_CODE)s=this.gobbleArray();else{for(r=this.expr.substr(this.index,t.max_unop_len),n=r.length;n>0;){if(t.unary_ops.hasOwnProperty(r)&&(!t.isIdentifierStart(this.code)||this.index+r.length=r.length&&this.throwError("Unexpected token "+String.fromCharCode(e));break}else if(i===t.COMMA_CODE){if(this.index++,s++,s!==r.length){if(e===t.CPAREN_CODE)this.throwError("Unexpected token ,");else if(e===t.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"});uo.max_unop_len=uo.getMaxKeyLen(uo.unary_ops);uo.max_binop_len=uo.getMaxKeyLen(uo.binary_ops);var Gf=t=>new uo(t).parse(),uxr=Object.getOwnPropertyNames(class{});Object.getOwnPropertyNames(uo).filter(t=>!uxr.includes(t)&&Gf[t]===void 0).forEach(t=>{Gf[t]=uo[t]});Gf.Jsep=uo;var lxr="ConditionalExpression",dxr={name:"ternary",init(t){t.hooks.add("after-expression",function(r){if(r.node&&this.code===t.QUMARK_CODE){this.index++;let n=r.node,s=this.gobbleExpression();if(s||this.throwError("Expected expression"),this.gobbleSpaces(),this.code===t.COLON_CODE){this.index++;let i=this.gobbleExpression();if(i||this.throwError("Expected expression"),r.node={type:lxr,test:n,consequent:s,alternate:i},n.operator&&t.binary_ops[n.operator]<=.9){let a=n;for(;a.right.operator&&t.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 :")}})}};Gf.plugins.register(dxr);var Iat=47,fxr=92,pxr={name:"regex",init(t){t.hooks.add("gobble-token",function(r){if(this.code===Iat){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:t.LITERAL,value:o,raw:this.expr.slice(n-1,this.index)},r.node=this.gobbleTokenProperty(r.node),r.node}this.code===t.OBRACK_CODE?s=!0:s&&this.code===t.CBRACK_CODE&&(s=!1),this.index+=this.code===fxr?2:1}this.throwError("Unclosed Regex")}})}},Hae=43,mxr=45,cE={name:"assignment",assignmentOperators:new Set(["=","*=","**=","/=","%=","+=","-=","<<=",">>=",">>>=","&=","^=","|=","||=","&&=","??="]),updateOperators:[Hae,mxr],assignmentPrecedence:.9,init(t){let e=[t.IDENTIFIER,t.MEMBER_EXP];cE.assignmentOperators.forEach(n=>t.addBinaryOp(n,cE.assignmentPrecedence,!0)),t.hooks.add("gobble-token",function(s){let i=this.code;cE.updateOperators.some(a=>a===i&&a===this.expr.charCodeAt(this.index+1))&&(this.index+=2,s.node={type:"UpdateExpression",operator:i===Hae?"++":"--",argument:this.gobbleTokenProperty(this.gobbleIdentifier()),prefix:!0},(!s.node.argument||!e.includes(s.node.argument.type))&&this.throwError(`Unexpected ${s.node.operator}`))}),t.hooks.add("after-token",function(s){if(s.node){let i=this.code;cE.updateOperators.some(a=>a===i&&a===this.expr.charCodeAt(this.index+1))&&(e.includes(s.node.type)||this.throwError(`Unexpected ${s.node.operator}`),this.index+=2,s.node={type:"UpdateExpression",operator:i===Hae?"++":"--",argument:s.node,prefix:!1})}}),t.hooks.add("after-expression",function(s){s.node&&r(s.node)});function r(n){cE.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)})}}};Gf.plugins.register(pxr,cE);Gf.addUnaryOp("typeof");Gf.addLiteral("null",null);Gf.addLiteral("undefined",void 0);var hxr=new Set(["constructor","__proto__","__defineGetter__","__defineSetter__"]),cn={evalAst(t,e){switch(t.type){case"BinaryExpression":case"LogicalExpression":return cn.evalBinaryExpression(t,e);case"Compound":return cn.evalCompound(t,e);case"ConditionalExpression":return cn.evalConditionalExpression(t,e);case"Identifier":return cn.evalIdentifier(t,e);case"Literal":return cn.evalLiteral(t,e);case"MemberExpression":return cn.evalMemberExpression(t,e);case"UnaryExpression":return cn.evalUnaryExpression(t,e);case"ArrayExpression":return cn.evalArrayExpression(t,e);case"CallExpression":return cn.evalCallExpression(t,e);case"AssignmentExpression":return cn.evalAssignmentExpression(t,e);default:throw SyntaxError("Unexpected expression",t)}},evalBinaryExpression(t,e){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()}[t.operator](cn.evalAst(t.left,e),()=>cn.evalAst(t.right,e))},evalCompound(t,e){let r;for(let n=0;n-cn.evalAst(n,e),"!":n=>!cn.evalAst(n,e),"~":n=>~cn.evalAst(n,e),"+":n=>+cn.evalAst(n,e),typeof:n=>typeof cn.evalAst(n,e)}[t.operator](t.argument)},evalArrayExpression(t,e){return t.elements.map(r=>cn.evalAst(r,e))},evalCallExpression(t,e){let r=t.arguments.map(s=>cn.evalAst(s,e));return cn.evalAst(t.callee,e)(...r)},evalAssignmentExpression(t,e){if(t.left.type!=="Identifier")throw SyntaxError("Invalid left-hand side in assignment");let r=t.left.name,n=cn.evalAst(t.right,e);return e[r]=n,e[r]}},Vae=class{constructor(e){this.code=e,this.ast=Gf(this.code)}runInNewContext(e){let r=Object.assign(Object.create(null),e);return cn.evalAst(this.ast,r)}};function X0(t,e){return t=t.slice(),t.push(e),t}function zae(t,e){return e=e.slice(),e.unshift(t),e}var Kae=class extends Error{constructor(e){super('JSONPath should not be called with "new" (it prevents return of (unwrapped) scalar values)'),this.avoidNew=!0,this.value=e,this.name="NewError"}};function Ur(t,e,r,n,s){if(!(this instanceof Ur))try{return new Ur(t,e,r,n,s)}catch(a){if(!a.avoidNew)throw a;return a.value}typeof t=="string"&&(s=n,n=r,r=e,e=t,t=null);let i=t&&typeof t=="object";if(t=t||{},this.json=t.json||r,this.path=t.path||e,this.resultType=t.resultType||"value",this.flatten=t.flatten||!1,this.wrap=Object.hasOwn(t,"wrap")?t.wrap:!0,this.sandbox=t.sandbox||{},this.eval=t.eval===void 0?"safe":t.eval,this.ignoreEvalErrors=typeof t.ignoreEvalErrors>"u"?!1:t.ignoreEvalErrors,this.parent=t.parent||null,this.parentProperty=t.parentProperty||null,this.callback=t.callback||n||null,this.otherTypeCallback=t.otherTypeCallback||s||function(){throw new TypeError("You must supply an otherTypeCallback callback option with the @other() operator.")},t.autostart!==!1){let a={path:i?t.path:e};i?"json"in t&&(a.json=t.json):a.json=r;let o=this.evaluate(a);if(!o||typeof o!="object")throw new Kae(o);return o}}Ur.prototype.evaluate=function(t,e,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,e=e||this.json,t=t||this.path,t&&typeof t=="object"&&!Array.isArray(t)){if(!t.path&&t.path!=="")throw new TypeError('You must supply a "path" property when providing an object argument to JSONPath.evaluate().');if(!Object.hasOwn(t,"json"))throw new TypeError('You must supply a "json" property when providing an object argument to JSONPath.evaluate().');({json:e}=t),a=Object.hasOwn(t,"flatten")?t.flatten:a,this.currResultType=Object.hasOwn(t,"resultType")?t.resultType:this.currResultType,this.currSandbox=Object.hasOwn(t,"sandbox")?t.sandbox:this.currSandbox,o=Object.hasOwn(t,"wrap")?t.wrap:o,this.currEval=Object.hasOwn(t,"eval")?t.eval:this.currEval,r=Object.hasOwn(t,"callback")?t.callback:r,this.currOtherTypeCallback=Object.hasOwn(t,"otherTypeCallback")?t.otherTypeCallback:this.currOtherTypeCallback,s=Object.hasOwn(t,"parent")?t.parent:s,i=Object.hasOwn(t,"parentProperty")?t.parentProperty:i,t=t.path}if(s=s||null,i=i||null,Array.isArray(t)&&(t=Ur.toPathString(t)),!t&&t!==""||!e)return;let c=Ur.toPathArray(t);c[0]==="$"&&c.length>1&&c.shift(),this._hasParentSelector=null;let u=this._trace(c,e,["$"],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};Ur.prototype._getPreferredOutput=function(t){let e=this.currResultType;switch(e){case"all":{let r=Array.isArray(t.path)?t.path:Ur.toPathArray(t.path);return t.pointer=Ur.toPointer(r),t.path=typeof t.path=="string"?t.path:Ur.toPathString(t.path),t}case"value":case"parent":case"parentProperty":return t[e];case"path":return Ur.toPathString(t[e]);case"pointer":return Ur.toPointer(t.path);default:throw new TypeError("Unknown result type")}};Ur.prototype._handleCallback=function(t,e,r){if(e){let n=this._getPreferredOutput(t);t.path=typeof t.path=="string"?t.path:Ur.toPathString(t.path),e(n,r,t)}};Ur.prototype._trace=function(t,e,r,n,s,i,a,o){let c;if(!t.length)return c={path:r,value:e,parent:n,parentProperty:s,hasArrExpr:a},this._handleCallback(c,i,"value"),c;let u=t[0],l=t.slice(1),d=[];function f(p){Array.isArray(p)?p.forEach(m=>{d.push(m)}):d.push(p)}if((typeof u!="string"||o)&&e&&Object.hasOwn(e,u))f(this._trace(l,e[u],X0(r,u),e,u,i,a));else if(u==="*")this._walk(e,p=>{f(this._trace(l,e[p],X0(r,p),e,p,i,!0,!0))});else if(u==="..")f(this._trace(l,e,r,n,s,i,a)),this._walk(e,p=>{typeof e[p]=="object"&&f(this._trace(t.slice(),e[p],X0(r,p),e,p,i,!0))});else{if(u==="^")return this._hasParentSelector=!0,{path:r.slice(0,-1),expr:l,isParentSelector:!0};if(u==="~")return c={path:X0(r,u),value:s,parent:n,parentProperty:null},this._handleCallback(c,i,"property"),c;if(u==="$")f(this._trace(l,e,r,null,null,i,a));else if(/^(-?\d*):(-?\d*):?(\d*)$/u.test(u))f(this._slice(u,l,e,r,n,s,i));else if(u.indexOf("?(")===0){if(this.currEval===!1)throw new Error("Eval [?(expr)] prevented in JSONPath expression.");let p=u.replace(/^\?\((.*?)\)$/u,"$1"),m=/@.?([^?]*)[['](\??\(.*?\))(?!.\)\])[\]']/gu.exec(p);m?this._walk(e,h=>{let A=[m[2]],g=m[1]?e[h][m[1]]:e[h];this._trace(A,g,r,n,s,i,!0).length>0&&f(this._trace(l,e[h],X0(r,h),e,h,i,!0))}):this._walk(e,h=>{this._eval(p,e[h],h,r,n,s)&&f(this._trace(l,e[h],X0(r,h),e,h,i,!0))})}else if(u[0]==="("){if(this.currEval===!1)throw new Error("Eval [(expr)] prevented in JSONPath expression.");f(this._trace(zae(this._eval(u,e,r.at(-1),r.slice(0,-1),n,s),l),e,r,n,s,i,a))}else if(u[0]==="@"){let p=!1,m=u.slice(1,-2);switch(m){case"scalar":(!e||!["object","function"].includes(typeof e))&&(p=!0);break;case"boolean":case"string":case"undefined":case"function":typeof e===m&&(p=!0);break;case"integer":Number.isFinite(e)&&!(e%1)&&(p=!0);break;case"number":Number.isFinite(e)&&(p=!0);break;case"nonFinite":typeof e=="number"&&!Number.isFinite(e)&&(p=!0);break;case"object":e&&typeof e===m&&(p=!0);break;case"array":Array.isArray(e)&&(p=!0);break;case"other":p=this.currOtherTypeCallback(e,r,n,s);break;case"null":e===null&&(p=!0);break;default:throw new TypeError("Unknown value type "+m)}if(p)return c={path:r,value:e,parent:n,parentProperty:s},this._handleCallback(c,i,"value"),c}else if(u[0]==="`"&&e&&Object.hasOwn(e,u.slice(1))){let p=u.slice(1);f(this._trace(l,e[p],X0(r,p),e,p,i,a,!0))}else if(u.includes(",")){let p=u.split(",");for(let m of p)f(this._trace(zae(m,l),e,r,n,s,i,!0))}else!o&&e&&Object.hasOwn(e,u)&&f(this._trace(l,e[u],X0(r,u),e,u,i,a,!0))}if(this._hasParentSelector)for(let p=0;p{e(r)})};Ur.prototype._slice=function(t,e,r,n,s,i,a){if(!Array.isArray(r))return;let o=r.length,c=t.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 p=l;p{f.push(h)});return f};Ur.prototype._eval=function(t,e,r,n,s,i){this.currSandbox._$_parentProperty=i,this.currSandbox._$_parent=s,this.currSandbox._$_property=r,this.currSandbox._$_root=this.json,this.currSandbox._$_v=e;let a=t.includes("@path");a&&(this.currSandbox._$_path=Ur.toPathString(n.concat([r])));let o=this.currEval+"Script:"+t;if(!Ur.cache[o]){let c=t.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)Ur.cache[o]=new this.safeVm.Script(c);else if(this.currEval==="native")Ur.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;Ur.cache[o]=new u(c)}else if(typeof this.currEval=="function")Ur.cache[o]={runInNewContext:u=>this.currEval(c,u)};else throw new TypeError(`Unknown "eval" property "${this.currEval}"`)}try{return Ur.cache[o].runInNewContext(this.currSandbox)}catch(c){if(this.ignoreEvalErrors)return!1;throw new Error("jsonPath: "+c.message+": "+t)}};Ur.cache={};Ur.toPathString=function(t){let e=t,r=e.length,n="$";for(let s=1;s(t=t||"",e=e||"",resolve(t,e)),Rat={query(t,e){return Ur.JSONPath({path:e,json:t})}},Yae=!0,Nat=":eq|:lt|:gt|:first|:last|:not|:even|:odd|:has|:contains|:matches|:empty|^body$|^#",gxr="(url|src|href|-original|-src|-play|-url|style)$|^(data-|url-|src-)",Axr="^(ftp|magnet|thunder|ws):",Jae=class{constructor(e=""){this.MY_URL=e,this.pdfh_html="",this.pdfa_html="",this.pdfh_doc=null,this.pdfa_doc=null}test(e,r){return!!new RegExp(e,"mi").exec(r)}contains(e,r){return e.indexOf(r)!==-1}parseHikerToJq(e,r=!1){if(this.contains(e,"&&")){let n=e.split("&&"),s=[];for(let i=0;i=n.length-1?s.push(n[i]):s.push(`${n[i]}:eq(0)`)}e=s.join(" ")}else{let n=e.split(" "),s=n[n.length-1];!this.test(Nat,s)&&r&&(e=`${e}:eq(0)`)}return e}getParseInfo(e){let r=[],n=0,s=e;if(this.contains(e,":eq")){s=e.split(":eq")[0];let i=e.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(e,"--")&&(s=e.split("--")[0],r=e.split("--").slice(1));return{nparse_rule:s,nparse_index:n,excludes:r}}reorderAdjacentLtAndGt(e){let r=/:gt\((\d+)\):lt\((\d+)\)/,n;for(;(n=r.exec(e))!==null;){let s=`:lt(${n[2]}):gt(${n[1]})`;e=e.substring(0,n.index)+s+e.substring(n.index+n[0].length),r.lastIndex=n.index}return e}parseOneRule(e,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=e(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(e){return e=e.replace(/[\s]+/gm,` -`),e=e.replace(/\n+/g,` -`).replace(/^\s+/,""),e=e.replace(/\n/g," "),e}pdfa(e,r){if(!e||!r)return[];r=this.parseHikerToJq(r);let n=Me(e);Yae&&this.pdfa_html!==e&&(this.pdfa_html=e,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(e,r,n,s,i){if(!e||!r)return[];r=this.parseHikerToJq(r,!1);let a=[],o=Me(e),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(e,r,n=""){if(!e||!r)return"";let s=Me(e);if(typeof Yae<"u"&&Yae&&this.pdfa_html!==e&&(this.pdfa_html=e,this.pdfa_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(gxr,l)&&!this.test(Axr,o)&&(o=o.includes("http")?o.slice(o.indexOf("http")):wat(n,o)),o)break}}else o=`${o}`;return o}pd(e,r,n=""){return n||(n=this.MY_URL),this.pdfh(e,r,n)}pq(e){return Me(e)}pjfh(e,r,n=!1){if(!e||!r)return"";try{e=typeof e=="string"?JSON.parse(e):e}catch{return console.log("\u5B57\u7B26\u4E32\u8F6C JSON \u5931\u8D25"),""}r.startsWith("$.")||(r="$."+r);let s="",i=r.split("||");for(let a of i){let o=Rat.query(e,a);if(s=Array.isArray(o)?o[0]||"":o||"",n&&s&&(s=wat(this.MY_URL,s)),s)break}return s}pj(e,r){return this.pjfh(e,r,!0)}pjfa(e,r){if(!e||!r)return[];try{e=typeof e=="string"?JSON.parse(e):e}catch{return[]}r.startsWith("$.")||(r="$."+r);let n=Rat.query(e,r);return Array.isArray(n)&&Array.isArray(n[0])&&n.length===1?n[0]:n||[]}},Oat=Jae;async function yxr(t){try{return await Ae.request(typeof t=="string"?t:{url:t.url,method:t.method||"GET",headers:t.headers||{"User-Agent":oDe},data:t.data||"",responseType:t.responseType||""})}catch(e){return e.response}}async function Pat(t){return(await he.get(t,{headers:{"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"}})).data}var Xae="https://www.91panta.cn",Zae=t=>new Oat().pq(t),Dat=[{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"}],xxr=Dat.map(t=>t.type_name.trim());async function bxr(t,e){return{class:Dat,filters:{}}}async function Exr(t,e){let r=t.body.id,s=t.body.page||1;s==0&&(s=1);let i=await Pat(`${Xae}/?tagId=${r}&page=${s}`),a=Zae(i),o=[];a(".topicList .topicItem").each((d,f)=>{let p=a(f).find("h2 a:first")[0];if(!p||!p.children||!p.children[0]||!p.attribs)return;let m=p.children[0].data;if(!m)return;let h=a(f).find(".tm-m-photos-thumb li:first")[0]?.attribs["data-src"];o.push({vod_name:m.split(" ")[0],vod_id:p.attribs.href,vod_pic:h?`https://www.91panta.cn/${h}`:"https://www.91panta.cn/favicon.ico"})});let c=a(".topicPage .pg")[0],u=o.length,l=1;if(c){let d=a(c).find(".count")[0];if(d&&d.children&&d.children[0]){let p=d.children[0].data.match(/\d+/);p&&(u=p[0])}let f=a(c).find(".last")[0];if(f&&f.attribs&&f.attribs.title){let p=f.attribs.title.match(/\d+/);p&&(l=p[0])}}return{page:parseInt(s),pagecount:l?parseInt(l):1,limit:o.length,total:u?parseInt(u):o.length,list:o}}async function _xr(t,e){let r=await Pat(`${Xae}/${t.body.id}`),n=Zae(r),s=n(".title")[0];if(!s||!s.children||!s.children[0])return{list:[]};let i={vod_name:s.children[0].data.trim(),vod_id:`/${t.body.id}`,vod_content:n("div.topicContent p:nth-child(1)").text().replace(/\s+/g,"")},a=n(".topicContent").html(),o=a.match(/]*?\s+)?href=["'](https:\/\/(?:caiyun|yun)\.139\.com\/[^"']*)["'][^>]*>/gi);if(!o||o.length===0)if(o=a.match(/https:\/\/(?:caiyun|yun)\.139\.com\/[^<]*<\/span>/gi),o&&o.length>0){let c=o[0].match(/https:\/\/(?:caiyun|yun)\.139\.com\/[^<]*/);o=c?c[0]:null}else{let c=a.match(/https:\/\/(?:caiyun|yun)\.139\.com\/[^<\s]*/);o=c?c[0]:null}else{let c=o[0].match(/https:\/\/(?:caiyun|yun)\.139\.com\/[^"']*/);o=c?c[0]:null}if(o){let c=await Rr(o,t);c&&c.froms&&c.urls&&(i.vod_play_from=c.froms,i.vod_play_url=c.urls,i.vod_links=c.links)}return{list:[i]}}async function Sxr(t,e){let r=t.body.page||1,n=t.body.wd,s=(await yxr(`${Xae}/search?keyword=${encodeURIComponent(decodeURIComponent(n))}&page=${r}`)).data,i=Zae(s),a=[];return i(".topicList .topicItem").each((o,c)=>{let u=i(c).find(".tag")[0],l=u?i(u).html().trim():null;if(u&&xxr.includes(l)){let d=i(c).find(".title a:first")[0];if(!d||!d.attribs)return;let f=i(c).find(".tm-m-photos-thumb li:first")[0]?.attribs["data-src"],p=i(d).html().replace(/<[^>]*>/g,"").replace(/\s+/g,"");a.push({vod_name:p,vod_id:d.attribs.href,vod_remarks:"",vod_pic:f?`https://www.91panta.cn/${f}`:"https://www.91panta.cn/favicon.ico"})}}),{page:r,pagecount:1,list:a}}var kat={meta:{key:"panta",name:"\u300C\u76D8\u300D\u76D8Ta",type:3},api:async t=>{t.post("/init",qr),t.post("/home",bxr),t.post("/category",Exr),t.post("/detail",_xr),t.post("/play",Or),t.post("/search",Sxr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Nr)}};var vxr=["https://wogg.xxooo.cf","https://www.wogg.net"],eoe=async t=>(await t.db.getObjectDefault("/wanou",{}))?.urls||t.config.wanou?.urls||vxr,Cxr=async(t,e)=>{await t.db.push("/wanou/urls",e)},Ixr=async t=>{await t.db.delete("/wanou/urls")};async function toe(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await eoe(e.server)})}),t.put("/urls",async(e,r)=>{await Cxr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await Ixr(e.server),r.send({code:0})})}var roe,D4=t=>{if(!roe){let e=Date.now();roe=new Promise(async r=>{let n=await eoe(t),s=await Xn(n);console.log("\u73A9\u5076\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return roe};async function O4(t){return(await he.get(t,{headers:{"User-Agent":Gr}})).data}async function Txr(t,e){return await qr(t,e),{}}async function wxr(t,e){let r=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"3",type_name:"\u52A8\u6F2B"},{type_id:"44",type_name:"\u81FB\u5F69"},{type_id:"4",type_name:"\u7EFC\u827A"},{type_id:"46",type_name:"\u7EAA\u5F55"},{type_id:"6",type_name:"\u77ED\u5267"},{type_id:"5",type_name:"\u97F3\u4E50"}],n=[{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"},{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"}],s=[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}],i=[{n:"\u5168\u90E8",v:""},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u6050\u6016",v:"\u6050\u6016"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u8B66\u532A",v:"\u8B66\u532A"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u6B66\u4FA0",v:"\u6B66\u4FA0"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u67AA\u6218",v:"\u67AA\u6218"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u60CA\u609A",v:"\u60CA\u609A"},{n:"\u7ECF\u5178",v:"\u7ECF\u5178"},{n:"\u9752\u6625",v:"\u9752\u6625"},{n:"\u6587\u827A",v:"\u6587\u827A"},{n:"\u5FAE\u7535\u5F71",v:"\u5FAE\u7535\u5F71"},{n:"\u5386\u53F2",v:"\u5386\u53F2"}],a=[{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:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u5370\u5EA6",v:"\u5370\u5EA6"},{n:"\u610F\u5927\u5229",v:"\u610F\u5927\u5229"},{n:"\u52A0\u62FF\u5927",v:"\u52A0\u62FF\u5927"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}],o={};return o[1]=[{key:"class",name:"",init:"",value:i},{key:"area",name:"",init:"",value:a},{key:"year",name:"",init:"",value:n},{key:"by",name:"",init:"time",value:s}],o[2]=[{key:"class",name:"",init:"",value:i},{key:"area",name:"",init:"",value:a},{key:"year",name:"",init:"",value:n},{key:"by",name:"",init:"time",value:s}],o[3]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u60C5\u611F",v:"\u60C5\u611F"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u70ED\u8840",v:"\u70ED\u8840"},{n:"\u63A8\u7406",v:"\u63A8\u7406"},{n:"\u641E\u7B11",v:"\u641E\u7B11"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u841D\u8389",v:"\u841D\u8389"},{n:"\u6821\u56ED",v:"\u6821\u56ED"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u673A\u6218",v:"\u673A\u6218"},{n:"\u8FD0\u52A8",v:"\u8FD0\u52A8"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u5C11\u5E74",v:"\u5C11\u5E74"},{n:"\u5C11\u5973",v:"\u5C11\u5973"},{n:"\u793E\u4F1A",v:"\u793E\u4F1A"},{n:"\u539F\u521B",v:"\u539F\u521B"},{n:"\u4EB2\u5B50",v:"\u4EB2\u5B50"},{n:"\u76CA\u667A",v:"\u76CA\u667A"},{n:"\u52B1\u5FD7",v:"\u52B1\u5FD7"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u4E2D\u56FD\u5927\u9646",v:"\u4E2D\u56FD\u5927\u9646"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:n},{key:"by",name:"",init:"time",value:s}],o[44]=[{key:"class",name:"",init:"",value:i},{key:"area",name:"",init:"",value:a},{key:"year",name:"",init:"",value:n},{key:"by",name:"",init:"time",value:s}],o[4]=[{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u4E2D\u56FD\u5927\u9646",v:"\u4E2D\u56FD\u5927\u9646"},{n:"\u4E2D\u56FD\u53F0\u6E7E",v:"\u4E2D\u56FD\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"}]},{key:"year",name:"",init:"",value:n},{key:"by",name:"",init:"time",value:s}],o[46]=[{key:"year",name:"",init:"",value:n},{key:"by",name:"",init:"time",value:s}],o[6]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u7537\u9891",v:"\u7537\u9891"},{n:"\u5973\u9891",v:"\u5973\u9891"},{n:"\u90FD\u5E02",v:"\u90FD\u5E02"},{n:"\u751C\u5BA0",v:"\u751C\u5BA0"},{n:"\u5E74\u4EE3",v:"\u5E74\u4EE3"},{n:"\u7A7F\u8D8A",v:"\u7A7F\u8D8A"},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u4EB2\u60C5",v:"\u4EB2\u60C5"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u840C\u5B9D",v:"\u840C\u5B9D"},{n:"\u91CD\u751F",v:"\u91CD\u751F"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u9006\u88AD",v:"\u9006\u88AD"},{n:"\u8650\u604B",v:"\u8650\u604B"},{n:"\u9274\u5B9D",v:"\u9274\u5B9D"},{n:"\u590D\u4EC7",v:"\u590D\u4EC7"},{n:"\u4FEE\u4ED9",v:"\u4FEE\u4ED9"}]},{key:"year",name:"",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"}]},{key:"by",name:"",init:"time",value:s}],o[5]=[{key:"by",name:"",init:"time",value:s}],{class:r,filters:o}}function Rxr(t,e){let r=String(e||"").trim();if(!r)return"";if(/^https?:\/\//i.test(r)){if(/^https?:\/\/[^/]*gimg\d*\.baidu\.com\/gimg\//i.test(r)){let n=r.lastIndexOf("src=");if(n!==-1&&r.slice(n+4).includes("data:image/"))return""}return r}return r.startsWith("/img.php?url=")?r.slice(13):r.startsWith("/db.php?url=")?new URL(r,`${String(t||"").replace(/\/+$/,"")}/`).toString():new URL(r.replace(/^\/+/,""),`${String(t||"").replace(/\/+$/,"")}/`).toString()}function P4(t,e){return Rxr(t,e?.attribs?.["data-src"]||e?.attribs?.src||"")}function Nxr(t){let e=Array.isArray(t)?t:t.split("-");for(let r=1;r div.module-search-item").map((f,p)=>{let m=l(p).find("div.video-info-header h3 a")[0];return{vod_id:m.attribs.href.match(/voddetail\/(.*).html/)[1],vod_name:m.attribs.title,vod_pic:P4(r,l(p).find("div.module-item-pic img")[0]),vod_remarks:l(p).find("a.video-serial").text()}}).get();return{page:a,pagecount:d.length<10?a:a+1,list:d}}else{let o=[n,"","","","","","","",a,"","",""];i.area&&(o[1]=i.area),i.by&&(o[2]=i.by),i.class&&(o[3]=i.class),i.year&&(o[11]=i.year);let c=`${r}/index.php/vodshow/${o.join("-")}.html`,u=await O4(c),l=Me(u),d=l("div.module-items > div.module-item").map((f,p)=>{let m=l(p).find("div.video-name a")[0];return{vod_id:m.attribs.href.match(/voddetail\/(.*).html/)[1],vod_name:m.attribs.title,vod_pic:P4(r,l(p).find("div.module-item-pic img")[0]),vod_remarks:l(p).find("div.module-item-text").text()}}).get();return{page:a,pagecount:d.length<70?a:a+1,list:d}}}async function Pxr(t,e){let r=await D4(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await O4(`${r}/index.php/voddetail/${i}.html`),o=Me(a),c=[],u=[],l="";o("div.video-info-items a[href*=/vodsearch/]").each((m,h)=>{let A=h.attribs.href.match(/vodsearch\/(.*).html/)[1].split("-"),g=o(h).text().trim(),b=Nxr(A);if(b===5){let y={id:"s-5-"+decodeURIComponent(A[5].toString()),name:g};c.push(`[a=cr:${JSON.stringify(y)}/]${g}[/a]`)}else if(b===1){let y={id:"s-1-"+decodeURIComponent(A[1].toString()),name:g};u.push(`[a=cr:${JSON.stringify(y)}/]${g}[/a]`)}else b===13&&(l=g)});let d={vod_name:o(".page-title")[0].children[0].data,vod_pic:P4(r,o(".mobile-play .lazyload")[0]||o(".module-item-pic img")[0]),vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||"",vod_year:l,vod_actor:u.join(", "),vod_director:c.join(", "),vod_content:o("div.video-info-content p[style*=none]")[0].children[0].data.trim()},f=o("div.module-row-info p").map((m,h)=>h.children[0].data).get(),p=await Rr(f,t);p&&(d.vod_play_from=p.froms,d.vod_play_url=p.urls,d.vod_links=p.links),s.push(d)}return{list:s}}async function Dxr(t,e){let r=await D4(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await O4(`${r}/index.php/vodsearch/-------------.html?wd=${s}`),o=Me(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];return{vod_id:d.attribs.href.match(/voddetail\/(.*).html/)[1],vod_name:d.attribs.title,vod_pic:P4(r,o(l).find("div.module-item-pic img")[0]),vod_remarks:o(l).find("a.video-serial").text()}}).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}async function kxr(t,e){try{let r=function(a){a.statusCode&&a.statusCode==500&&console.error(a)},n=t.server.prefix,s={},i=await t.server.inject().post(`${n}/init`);if(s.init=i.json(),r(i.json()),i=await t.server.inject().post(`${n}/home`),s.home=i.json(),r(i.json()),s.home.class.length>0&&(i=await t.server.inject().post(`${n}/category`).payload({id:s.home.class[0].type_id,page:1,filter:!0,filters:{}}),s.category=i.json(),r(i.json()),s.category.list.length>0&&(i=await t.server.inject().post(`${n}/detail`).payload({id:s.category.list[0].vod_id}),s.detail=i.json(),r(i.json()),s.detail.list&&s.detail.list.length>0))){s.play=[];for(let a of s.detail.list){let o=a.vod_play_from.split("$$$"),c=a.vod_play_url.split("$$$");for(let u=0;u{t.post("/init",Txr),t.post("/home",wxr),t.post("/category",Oxr),t.post("/detail",Pxr),t.post("/play",Or),t.post("/search",Dxr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Nr),t.get("/test",kxr)},check:D4};var Lxr=["http://www.miqk.cc","https://mihdr.top","https://www.mihdr.top","https://zhizhen1.top"],noe=async t=>(await t.db.getObjectDefault("/zhizhen",{}))?.urls||t.config.zhizhen?.urls||Lxr,Bxr=async(t,e)=>{await t.db.push("/zhizhen/urls",e)},Mxr=async t=>{await t.db.delete("/zhizhen/urls")};async function soe(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await noe(e.server)})}),t.put("/urls",async(e,r)=>{await Bxr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await Mxr(e.server),r.send({code:0})})}var ioe,k4=t=>{if(!ioe){let e=Date.now();ioe=new Promise(async r=>{let n=await noe(t),s=await Xn(n);console.log("\u81F3\u81FB\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return ioe};async function aoe(t){return(await he.get(t,{headers:{"User-Agent":Gr}})).data}async function Wxr(t,e){return{class:[{type_id:"26",type_name:"\u4E25\u9009"},{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"3",type_name:"\u52A8\u6F2B"},{type_id:"4",type_name:"\u7EFC\u827A"},{type_id:"5",type_name:"\u77ED\u5267"},{type_id:"24",type_name:"\u8001\u5267"}],filters:{}}}async function $xr(t,e){let r=await k4(t.server),n=t.body.id,s=t.body.page,i=s||1;i==0&&(i=1);let a=r+`/index.php/vod/show/id/${n}/page/${s}.html`,o=await aoe(a,Gr),c=Me(o),u=c("#main .module-item"),l=[];for(var d of u){let m=c(d).find(".module-item-pic a").attr("href"),h=c(d).find(".module-item-pic img").attr("alt"),A=c(d).find(".module-item-pic img").attr("data-src"),g=c(d).find(".module-item-text").text();l.push({vod_id:m,vod_name:h,vod_pic:A,vod_remarks:g})}let p=c("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(i)+1:parseInt(i);return{page:parseInt(i),pagecount:p,limit:72,total:72*p,list:l}}async function Fxr(t,e){let r=await k4(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await aoe(r+i),o=Me(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let p=o(f).text(),h=o(f).next().find("a").map((A,g)=>{let b=o(g).text().trim();return b||null}).get().filter(Boolean).join(", ");p.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():p.includes("\u5BFC\u6F14")?c.vod_director=h.trim():p.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,p)=>p.children[0].data).get(),d=await Rr(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls,c.vod_links=d.links),s.push(c)}return{list:s}}async function Uxr(t,e){let r=await k4(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await aoe(`${r}/index.php/vod/search/wd/${s}.html`),o=Me(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var Bat={meta:{key:"zhizhen",name:"\u300C\u76D8\u300D\u81F3\u81FB",type:3},api:async t=>{t.post("/init",qr),t.post("/home",Wxr),t.post("/category",$xr),t.post("/detail",Fxr),t.post("/play",Or),t.post("/search",Uxr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Nr)},check:k4};var L4=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),Mat=t=>String(t??"").split(",").map(e=>e.trim()).filter(e=>e),Wat=t=>(Array.isArray(t)?t:[]).map(e=>String(e||"").trim()).filter(e=>e),Fat="douerpan,zyfb123",qxr={douerpan:"\u8C46\u513F\u76D8",zyfb123:"\u8C46\u513F123"},ooe=async(t,e,r)=>{let n=await t.db.getObjectDefault("/tgchannel",{});if(L4(n,e))return n[e];let s=t.config?.tgchannel||{};return L4(s,e)?s[e]:r},$at=t=>{if(!t||typeof t!="object"||Array.isArray(t))return{};let e={};for(let[r,n]of Object.entries(t))typeof n=="string"&&n.trim()!==""&&(e[r]=n);return e},B4=t=>ooe(t,"url","https://t.me"),coe=async t=>{let e=await t.db.getObjectDefault("/tgchannel",{});if(Object.prototype.hasOwnProperty.call(e,"count"))return e.count;let r=t.config?.tgchannel||{};return Object.prototype.hasOwnProperty.call(r,"count")?r.count:""},uoe=t=>ooe(t,"channelUsername",Fat),loe=t=>ooe(t,"homeChannelUsername",Fat),M4=async t=>{let e=await t.db.getObjectDefault("/tgchannel",{});if(Object.prototype.hasOwnProperty.call(e,"pic"))return e.pic;let r=t.config?.tgchannel||{};return Object.prototype.hasOwnProperty.call(r,"pic")?r.pic:!0},W4=async t=>{let e=await t.db.getObjectDefault("/tgchannel",{});if(L4(e,"channelNameMap"))return $at(e.channelNameMap);let r=t.config?.tgchannel||{};return L4(r,"channelNameMap")?$at(r.channelNameMap):qxr},uE=async(t,e,r)=>{await t.db.push(`/tgchannel/${e}`,r)},jxr=async t=>{await t.db.delete("/tgchannel")};async function doe(t){t.get("/config",async(e,r)=>{let n=await B4(e.server),s=await coe(e.server),i=await uoe(e.server),a=await loe(e.server),o=await M4(e.server),c=await W4(e.server),u=s===""||s===null||typeof s>"u"?"":Number(s);r.send({code:0,data:{url:n,count:u,channelUsername:Mat(i),homeChannelUsername:Mat(a),pic:o,channelNameMap:c}})}),t.put("/config",async(e,r)=>{await uE(e.server,"url",e.body.url),await uE(e.server,"count",e.body.count),await uE(e.server,"channelUsername",Wat(e.body.channelUsername).join(",")),await uE(e.server,"homeChannelUsername",Wat(e.body.homeChannelUsername).join(",")),await uE(e.server,"pic",e.body.pic),await uE(e.server,"channelNameMap",e.body.channelNameMap||{}),r.send({code:0})}),t.delete("/config",async(e,r)=>{await jxr(e.server),r.send({code:0})})}function Hxr(t){let e=t.attr("style"),r=/background-image:url\('([^']+)'\)/.exec(e);if(r&&r.length>1)return r[1]}function jat(t){return t=t.replace(/https?:\/\/[^\s]+/gi,""),t=t.split(/名称[:|:]/)?.[1]||t,t=t.split(` -`)?.[0]||t,t=t.trim(),t=t.replace(/^[^\u4e00-\u9fa5A-Za-z0-9\(\[\{(【《「『〔〖〈﹝[]+/,"").trim(),t=t.replace(/^(电视剧|动漫|电影|综艺|纪录片|动画)[\s||]+/,"").trim(),/^[\(\[\{(【《「『〔〖〈﹝[]/.test(t)?(t=t.replace(/^[\(\[\{(【《「『〔〖〈﹝[][^\)\]\})】》」』〕〗〉﹞]]*[\)\]\})】》」』〕〗〉﹞]]/,"").trim(),t=t.replace(/[\(\[\{(【《「『〔〖〈﹝[].*$/,"").trim()):t=t.replace(/[\(\[\{(【《「『〔〖〈﹝[].*$/,"").trim(),t=t.replace(/((?:更新至|å…¨|第|å…±)\s*(?:第)?\s*\d+\s*集)|((?:更新至|å…¨|第|å…±)\s*(?:第)?\s*[一二三四五六七八九十百千万亿]+\s*集)|(\d+\s*集\s*å…¨)|([一二三四五六七八九十百千万亿]+\s*集\s*å…¨)|((?:更至|æ›´)\s*(?:EP)?\s*\d+)|((?:æ›´æ–°\s*)?EP\d+集)|(æ›´æ–°\d+集)|(S\d+\s*E\d+(?:已更新)?)/g,"").trim(),t=t.replace(/\s*\d+\s*\+\s*\d+\s*帧\s*/g,"").replace(/\s*4[Kk]\s*(DV|HDR10|SDR10|臻彩|杜比)?\s*(é«˜ç çŽ‡|50帧|10bit)?\s*/g,"").replace(/\s*\d+[pP]\s*/g,"").replace(/\s*(杜比视界|杜比音效|WEB-60fpsMAX|WEB-|DV|HDR10|HDR|SDR|臻彩|杜比|é«˜ç çŽ‡|ä¸­ç çŽ‡|50帧|25帧|60帧|10bit|10BIT|纯净版|完结|全景声|è¶…é«˜ç çŽ‡|EDR|æ ‡ç |Vivid|三维菁彩声|txb|æºç |剧版|æ— å°æ ‡|ATVP|IQ|Friday|多国字幕|双语|简中|日语|æ— æŸ|特别版|软字幕|补链接|MAX|ä¸­ç |音效|é«˜ç |台配|国语|环绕声|蓝光原盘|臻享超高清|首播|ç‚¹æ˜ |Viu|10B|硬字幕)\s*/g,"").replace(/\s*内封[^\s]*\s*/g,"").replace(/\s*——\s*/g," ").replace(/\s*\d{4}å¹´?\s*/g,"").replace(/\s*大小\s*\d+\.?\d*\s*[KMGT]B\s*/g,"").replace(/\d+\.?\d*\s*[KMGT]B/g,"").replace(/\s*å·²?æ›´æ–°\s*/g,"").replace(/\s*\+\s*/g," ").replace(/\s+/g," ").trim(),t=t.split(/,|,/)?.[0],t?.trim()}var Qxr={"User-Agent":"MoZhao"};function foe(t){return nf().some(e=>e.validator(t))}function Hat(t,e=()=>!0){let r=[];for(let n of t){let s=n.attribs?.href;s&&e(s)&&r.push(s)}return r}function _w(t){return Hat(t,foe)}function $4(t){return Hat(t,F4)}function Vf(t){return[...new Set((t||[]).filter(Boolean))]}function Gxr(t){return String(t||"").trim().replace(/&/g,"&").replace(/[\)\]\}>)】》」』〕〗〉﹞]、。,,;ï¼›!?!?]+$/g,"")}function Vxr(t){let e=String(t||"");return Vf([/https?:\/\/[^\s"'<>]+/gi,/magnet:\?[^\s"'<>]+/gi,/ed2k:\/\/\|file\|.+?\|\d+\|[a-f0-9]{32}\|\//gi,/ed2k:\/\/[^\s"'<>]+/gi].flatMap(n=>e.match(n)||[]).map(Gxr))}function zxr(t,e){let r=t(e).find(".tgme_widget_message_date").attr("href");if(Gat(r))return r;let n=e.attribs?.["data-post"];return n?`https://t.me/${n}`:""}function poe(t){let e=[],r=Vxr(t);for(let n of r)foe(n)&&e.push(n);return e}function Qat(t){let e=[],r=t.match(/https?:\/\/[^\s]+/gi);if(r)for(let n of r)F4(n)&&e.push(n);return e}var Gat=t=>/t.me\/.*\/.*/.test(t),F4=t=>/https?:\/\/(?:telegra\.ph|graph\.org)\//i.test(String(t||"")),Vat=t=>nf().find(e=>e.validator(t)),zat=(t,e)=>!e||typeof e!="object"?t:e[t]||t,Kat=t=>String(t||"").split(",").map(e=>e.trim()).filter(Boolean);async function moe(t){let e=await Ae.get(t,{timeout:5e3,headers:Qxr});return Me(e.data)}async function Kxr(t){let e=await moe(t),r=e(".tl_article").text()||e("body").text()||"";return{links:Vf([...poe(r),..._w(e("a"))])}}async function Yat(t){let e=Vf((t||[]).filter(F4));if(!e.length)return[];let r=await Promise.all(e.map(async n=>{try{return(await Kxr(n)).links}catch(s){return console.error("[tgchannel] parse telegra failed",n,s?.message||s),[]}}));return Vf(r.flat())}async function Yxr(t){let e=await moe(t),r=e(".tgme_widget_message"),n=[];for(let s of r){let i=s.attribs["data-post"],a=Hxr(e(s).find(".tgme_widget_message_photo_wrap"));e("br").replaceWith(` -`);let o=e(s).find(".tgme_widget_message_text").text(),c=jat(o),u=o,l=Vf([...poe(o),..._w(e(s).find(".tgme_widget_message_text a")),..._w(e(s).find(".tgme_widget_message_inline_button"))]),d=Vf([...$4(e(s).find(".tgme_widget_message_text a")),...$4(e(s).find(".tgme_widget_message_inline_button")),...Qat(o)]),f=[...l],p=f.length?[...f]:d.length?[...d]:[];if(!p.length){let m=zxr(e,s);m&&p.push(m)}p.length&&n.push({id:p.join("|"),title:c,description:u,cover:a,messageId:Number(i.split("/")[1]),panLinks:f})}return n}async function Jxr(t){let e=await moe(t),r=e('meta[property="og:description"]').attr("content"),n=e('meta[property="og:image"]').attr("content"),s=jat(r),i=Vf([...poe(r||""),..._w(e(".tgme_widget_message_text a")),..._w(e(".tgme_widget_message_inline_button"))]),a=Vf([...Qat(r||""),...$4(e(".tgme_widget_message_text a")),...$4(e(".tgme_widget_message_inline_button"))]),o=i.length?[]:await Yat(a),c=Vf([...i,...o]);return{title:s,description:r,cover:n,links:c}}async function Xxr(t,e){return await qr(t,e),{}}async function Zxr(t){let e=await loe(t.server),r=await W4(t.server);return{class:Kat(e).map(n=>({type_id:n,type_name:zat(n,r)}))}}var Uat={},qat={},hoe={};async function Jat(t){let e=await B4(t.server),r=await M4(t.server),n=t.body.id,s=t.body.page;s||(s=1);try{let i=await Yxr(`${e}/s/${n}${s>1?`?before=${qat[n]}`:""}`);qat[n]=i[0].messageId,s===1&&(Uat[n]=i[i.length-1].messageId),i.reverse();let a=i.map(o=>{let c,u="";return o.panLinks.length&&o.panLinks.forEach(l=>{let d=Vat(l);d&&(u+=u?`|${d.name}`:d.name,c||(c=d.pic))}),c||(c="https://telegram.org/img/apple-touch-icon.png"),{vod_name:o.title,vod_id:o.id,vod_pic:r&&o.cover||c,vod_remarks:u,rawData:o}});return a.forEach(o=>{o.vod_name&&o.vod_id&&(hoe[o.vod_id]=o.vod_name)}),{page:s,pagecount:Math.ceil(Uat[n]/a.length),list:a}}catch(i){return console.error(i),{page:s,pagecount:1,list:[]}}}async function ebr(t,e){let r=await B4(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=i.split("|"),o=hoe[i]||"";if(a.length===1&&Gat(a[0])){let l=await Jxr(i.replace("https://t.me",r));!o&&l.title&&(o=l.title),a=l.links}else!a.some(foe)&&a.some(F4)&&(a=await Yat(a));let c=await Rr(a,t),u={vod_id:i,vod_name:o};c&&(u.vod_play_from=c.froms,u.vod_play_url=c.urls,u.vod_links=c.links),s.push(u)}return{list:s}}async function tbr(t,e){let r=await coe(t.server),n=await uoe(t.server),s=await M4(t.server),i=await W4(t.server),a=t.body.wd,o=Number(r),c=Number.isFinite(o)?Math.floor(o):0,u=c>0,l=Kat(n);if(!l.length)return{page:1,pagecount:1,list:[]};let d=await Promise.all(l.map(p=>Jat({body:{id:`${p}?q=${encodeURIComponent(a)}`},server:t.server}))),f=[];return d.forEach((p,m)=>{let h=p.list.filter(g=>g.rawData.panLinks.length);(u?h.slice(0,c):h).forEach(g=>{let b="",y;g.rawData.panLinks.forEach(x=>{let v=Vat(x);v&&(b+=b?`|${v.name}`:v.name),y||(y=v.pic)}),f.push({vod_id:g.vod_id,vod_name:g.vod_name,vod_pic:s&&g.vod_pic||y,vod_remarks:`${b}:${zat(l[m],i)}`}),g.vod_name&&g.vod_id&&(hoe[g.vod_id]=g.vod_name)})}),{page:1,pagecount:1,list:f}}var Xat={meta:{key:"tgchannel",name:"\u300C\u76D8\u300DTG\u641C",type:3},api:async t=>{t.post("/init",Xxr),t.post("/home",Zxr),t.post("/category",Jat),t.post("/detail",ebr),t.post("/play",Or),t.post("/search",tbr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Nr)}};var U4=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),rbr=t=>String(t??"").split(",").map(e=>e.trim()).filter(e=>e),nbr=t=>(Array.isArray(t)?t:[]).map(e=>String(e||"").trim()).filter(e=>e),eot=async(t,e,r)=>{let n=await t.db.getObjectDefault("/tgsou",{});if(U4(n,e))return n[e];let s=t.config?.tgsou||{};return U4(s,e)?s[e]:r},Zat=t=>{if(!t||typeof t!="object"||Array.isArray(t))return{};let e={};for(let[r,n]of Object.entries(t))typeof n=="string"&&n.trim()!==""&&(e[r]=n);return e},goe=t=>eot(t,"url","https://tgsou.252035.xyz"),Aoe=async t=>{let e=await t.db.getObjectDefault("/tgsou",{});if(Object.prototype.hasOwnProperty.call(e,"count"))return e.count;let r=t.config?.tgsou||{};return Object.prototype.hasOwnProperty.call(r,"count")?r.count:""},yoe=t=>eot(t,"channelUsername",""),xoe=async t=>{let e=await t.db.getObjectDefault("/tgsou",{});if(Object.prototype.hasOwnProperty.call(e,"pic"))return e.pic;let r=t.config?.tgsou||{};return Object.prototype.hasOwnProperty.call(r,"pic")?r.pic:!0},boe=async t=>{let e=await t.db.getObjectDefault("/tgsou",{}),r={};if(U4(e,"channelNameMap"))r=Zat(e.channelNameMap);else{let n=t.config?.tgsou||{};U4(n,"channelNameMap")&&(r=Zat(n.channelNameMap))}return r},Sw=async(t,e,r)=>{await t.db.push(`/tgsou/${e}`,r)};async function Eoe(t){t.get("/config",async(e,r)=>{let n=await goe(e.server),s=await Aoe(e.server),i=await yoe(e.server),a=await xoe(e.server),o=await boe(e.server),c=s===""||s===null||typeof s>"u"?"":Number(s);r.send({code:0,data:{url:n,count:c,channelUsername:rbr(i),pic:a,channelNameMap:o}})}),t.put("/config",async(e,r)=>{await Sw(e.server,"url",e.body.url),await Sw(e.server,"count",e.body.count),await Sw(e.server,"channelUsername",nbr(e.body.channelUsername).join(",")),await Sw(e.server,"pic",e.body.pic),await Sw(e.server,"channelNameMap",e.body.channelNameMap||{}),r.send({code:0})})}var tot={};async function sbr(t,e){return await qr(t,e),{}}async function ibr(t,e){return{class:[]}}var abr=(t,e)=>!e||typeof e!="object"?t:e[t]||t;function obr(t){return t&&(t=t.replace(/https?:\/\/[^\s]+/gi,""),t=t.split(/名称[:|:]/)?.[1]||t,t=t.split(` -`)?.[0]||t,t=t.trim(),t=t.replace(/^[^\u4e00-\u9fa5A-Za-z0-9\(\[\{(【《「『〔〖〈﹝[]+/,"").trim(),t=t.replace(/^(电视剧|动漫|电影|综艺|纪录片|动画)[\s||]+/,"").trim(),/^[\(\[\{(【《「『〔〖〈﹝[]/.test(t)?(t=t.replace(/^[\(\[\{(【《「『〔〖〈﹝[][^\)\]\})】》」』〕〗〉﹞]]*[\)\]\})】》」』〕〗〉﹞]]/,"").trim(),t=t.replace(/[\(\[\{(【《「『〔〖〈﹝[].*$/,"").trim()):t=t.replace(/[\(\[\{(【《「『〔〖〈﹝[].*$/,"").trim(),t=t.replace(/((?:更新至|å…¨|第|å…±)\s*(?:第)?\s*\d+\s*集)|((?:更新至|å…¨|第|å…±)\s*(?:第)?\s*[一二三四五六七八九十百千万亿]+\s*集)|(\d+\s*集\s*å…¨)|([一二三四五六七八九十百千万亿]+\s*集\s*å…¨)|((?:更至|æ›´)\s*(?:EP)?\s*\d+)|((?:æ›´æ–°\s*)?EP\d+集)|(æ›´æ–°\d+集)|(S\d+\s*E\d+(?:已更新)?)/g,"").trim(),t=t.replace(/\s*\d+\s*\+\s*\d+\s*帧\s*/g,"").replace(/\s*4[Kk]\s*(DV|HDR10|SDR10|臻彩|杜比)?\s*(é«˜ç çŽ‡|50帧|10bit)?\s*/g,"").replace(/\s*\d+[pP]\s*/g,"").replace(/\s*(杜比视界|杜比音效|WEB-60fpsMAX|WEB-|DV|HDR10|HDR|SDR|臻彩|杜比|é«˜ç çŽ‡|ä¸­ç çŽ‡|50帧|25帧|60帧|10bit|10BIT|纯净版|完结|全景声|è¶…é«˜ç çŽ‡|EDR|æ ‡ç |Vivid|三维菁彩声|txb|æºç |剧版|æ— å°æ ‡|ATVP|IQ|Friday|多国字幕|双语|简中|日语|æ— æŸ|特别版|软字幕|补链接|MAX|ä¸­ç |音效|é«˜ç |台配|国语|环绕声|蓝光原盘|臻享超高清|首播|ç‚¹æ˜ |Viu|10B|硬字幕)\s*/g,"").replace(/\s*内封[^\s]*\s*/g,"").replace(/\s*——\s*/g," ").replace(/\s*\d{4}å¹´?\s*/g,"").replace(/\s*大小\s*\d+\.?\d*\s*[KMGT]B\s*/g,"").replace(/\d+\.?\d*\s*[KMGT]B/g,"").replace(/\s*å·²?æ›´æ–°\s*/g,"").replace(/\s*\+\s*/g," ").replace(/\s+/g," ").trim(),t=t.split(/,|,/)?.[0],t?.trim())}async function cbr(t,e){return{page:1,pagecount:1,list:[]}}async function ubr(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[];for(let s of r){let i=s.includes("|")?s.split("|"):[s],a=await Rr(i,t),o={};o.vod_name=tot[s]||"",a&&(o.vod_play_from=a.froms,o.vod_play_url=a.urls,o.vod_links=a.links),n.push(o)}return{list:n}}async function lbr(t,e){let r=await goe(t.server),n=await Aoe(t.server),s=await yoe(t.server),i=await xoe(t.server),a=await boe(t.server),o=t.body.wd,c=Number(n),u=Number.isFinite(c)?Math.floor(c):0,l=u>0,d=new URL(r);d.searchParams.set("pic",String(i)),l&&d.searchParams.set("count",String(u)),d.searchParams.set("channelUsername",s),d.searchParams.set("keyword",o||"");let f=await Ae.get(d.toString()),p=new Map;for(let h of f.data.results){let[A,g]=h.split("$$$");if(!g)continue;let b=g.split("##");for(let y=0;yN.validator(C));if(w){let N=obr(v)||o,P=!!R,L=P?/^https?:\/\//i.test(R)?R:`${r}/down?id=${R}&channelUsername=${A}`:w.pic,M=P?L:C;p.has(M)||p.set(M,{links:[],panInfos:[],pic:L,group:A,title:N});let k=p.get(M),B=C?.replace(/\s+/g,"");k.links.includes(B)||(k.links.push(B),k.panInfos.push(w))}}}let m=[];for(let[h,A]of p.entries()){let g=[...new Set(A.panInfos.map(b=>b.name))].join("/");m.push({vod_id:A.links.join("|"),vod_name:A.title,vod_pic:A.pic,vod_remarks:`${g}:${abr(A.group,a)}`}),A.title&&A.links.length&&(tot[A.links.join("|")]=A.title)}return{page:1,pagecount:1,list:m}}var rot={meta:{key:"tgsou",name:"\u300C\u76D8\u300DTG\u641C\xB2",type:3},api:async t=>{t.post("/init",sbr),t.post("/home",ibr),t.post("/category",cbr),t.post("/detail",ubr),t.post("/play",Or),t.post("/search",lbr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Nr)}};var not=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),dbr="http://127.0.0.1:8080",iot=async(t,e,r)=>{let n=await t.db.getObjectDefault("/tgfilebot",{});if(not(n,e))return n[e];let s=t.config?.tgfilebot||{};return not(s,e)?s[e]:r},_oe=t=>iot(t,"url",dbr),Soe=t=>iot(t,"password",""),sot=async(t,e,r)=>{await t.db.push(`/tgfilebot/${e}`,r)},fbr=async t=>{await t.db.delete("/tgfilebot")};async function voe(t){t.get("/config",async(e,r)=>{let n=await _oe(e.server),s=await Soe(e.server);r.send({code:0,data:{url:n,password:s}})}),t.put("/config",async(e,r)=>{await sot(e.server,"url",e.body.url||""),await sot(e.server,"password",e.body.password||""),r.send({code:0})}),t.delete("/config",async(e,r)=>{await fbr(e.server),r.send({code:0})})}var pbr="http://127.0.0.1:8080",oot="",vw=20,mbr=30;async function hbr(t,e){return{}}function gbr(t){for(t=String(t||"").trim();t.endsWith("/");)t=t.slice(0,-1);return t}function ns(t){return String(t||"").replace(/\s+/g," ").trim()}function cot(t){return ns(t).replace(/[$#]/g," ")}function Coe(t){return ns(t).replace(/^>+\s*/,"").replace(/^\*\*(.*?)\*\*$/,"$1").replace(/^__(.*?)__$/,"$1").replace(/^`(.*?)`$/,"$1").replace(/^\[(.*?)\]\([^)]*\)$/,"$1").replace(/^[-•]\s*/,"").replace(/^\*\s+/,"").trim()}function uot(t){let e=String(t||"").replace(/\r\n/g,` +`;vt();var Ta=class{static async getHandler(e){switch(e?.toLowerCase()){case"cloudflare":let{CloudflareHandler:r}=await Promise.resolve().then(()=>(Zot(),Xot));return new r;case"vercel":let{VercelHandler:n}=await Promise.resolve().then(()=>(tct(),ect));return new n;case"netlify":let{NetlifyHandler:s}=await Promise.resolve().then(()=>(nct(),rct));return new s;case"edgeone":let{EdgeoneHandler:i}=await Promise.resolve().then(()=>(ict(),sct));return new i;case"huggingface":let{HuggingfaceHandler:a}=await Promise.resolve().then(()=>(oct(),act));return new a;case"node":let{NodeHandler:o}=await import(["./node-handler",".js"].join(""));return new o;default:let{NodeHandler:c}=await import(["./node-handler",".js"].join(""));return new c}}static getSupportedPlatforms(){return["cloudflare","vercel","netlify","edgeone","huggingface","node"]}};function Zoe(){return new Response(Jot.replace("globals.currentToken",O.currentToken),{headers:{"Content-Type":"text/html; charset=utf-8","Access-Control-Allow-Origin":"*"}})}function K5(t=!1){let e=O.envVarConfig,r={api:[],source:[],match:[],danmu:[],cache:[],system:[]},n={...O.accessedEnvVars,localCacheValid:O.localCacheValid,redisValid:O.redisValid,localRedisValid:O.localRedisValid,aiValid:O.aiValid,deployPlatform:O.deployPlatform};Object.keys(n).forEach(o=>{let c=e[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=(O.adminToken||"").trim()!=="",a={...O.originalEnvVars};return(!t||O.currentToken!==O.adminToken)&&Object.keys(a).forEach(o=>{(O.currentToken!==O.token||o!=="TOKEN")&&o in n&&/^\*+$/.test(n[o])&&(a[o]=n[o])}),We({message:"Welcome to the LogVar Danmu API server",version:O.VERSION,envs:n,categorizedEnvVars:r,envVarConfig:e,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 cct(){try{let t=O.deployPlatform;if(E("info",`[system] [Server] Deployment request received for platform: ${t}`),t.toLowerCase()==="node")return E("info","[system] [Server] Node/Docker deployment - no redeployment needed, config changes take effect automatically"),We({success:!0,message:"Node/Docker deployment - configuration changes take effect automatically"},200);let e=await Ta.getHandler(t);return e?await e.deploy()?(E("info",`[system] [Server] Deployment triggered successfully for platform: ${t}`),We({success:!0,message:"Deployment triggered successfully"},200)):(E("error",`[system] [Server] Failed to trigger deployment for platform: ${t}`),We({success:!1,message:"Failed to trigger deployment"},500)):(E("error",`[system] [Server] No handler found for platform: ${t}`),We({success:!1,message:`No handler found for platform: ${t}`},400))}catch(t){return E("error",`[system] [Server] Deployment error: ${t.message}`),We({success:!1,message:`Deployment failed: ${t.message}`},500)}}function uct(){let t=O.logBuffer.map(r=>`[${r.timestamp}] ${r.level}: ${k$e(r.message)}`).join(` +`),e=t;return O.currentToken!==O.adminToken&&(e=t.replace(/(client\s+ip:\s*)([^\n\r]*)/gi,(r,n,s)=>{let i=s.replace(/[^.\s\n\r]/g,"*");return n+i})),new Response(e,{headers:{"Content-Type":"text/plain; charset=utf-8"}})}function lct(){return O.logBuffer=[],We({success:!0,message:"Logs cleared"},200)}async function dct(){try{O.animes=[],O.episodeIds=[],O.episodeNum=10001,O.lastSelectMap=new Map,O.reqRecords=[],O.todayReqNum=0,O.searchCache=new Map,O.commentCache=new Map,O.requestHistory=new Map;try{iFe(!0),O.useBangumiData&&TL(O.deployPlatform,!1).catch(t=>{E("warn",`[system] [Server] Bangumi-Data background reload failed: ${t.message}`)})}catch(t){E("error",`[system] [Server] Failed to clear Bangumi-Data cache: ${t.message}`)}E("info","[system] [Server] Memory cache cleared successfully");try{if(O.localCacheValid){let{updateLocalCaches:t}=await Promise.resolve().then(()=>(Un(),VUe));await t(),E("info","[system] [Server] Local cache cleared successfully")}}catch(t){E("warn",`[system] [Server] Local cache may not be available: ${t.message}`)}try{if(O.redisValid){let{updateRedisCaches:t}=await Promise.resolve().then(()=>(lL(),MUe));await t(),E("info","[system] [Server] Redis cache cleared successfully")}}catch(t){E("warn",`[system] [Server] Redis may not be available: ${t.message}`)}try{if(O.localRedisValid){let{updateLocalRedisCaches:t}=await Promise.resolve().then(()=>(HT(),T5));await t(),E("info","[system] [Server] LocalRedis cache cleared successfully")}}catch(t){E("warn",`[system] [Server] LocalRedis may not be available: ${t.message}`)}return E("info","[system] [Server] All caches cleared successfully"),We({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(t){return E("error",`[system] [Server] Cache clear failed: ${t.message}`),We({success:!1,message:`Cache clear failed: ${t.message}`},500)}}function qbr(t){let e=t.indexOf("?");if(e===-1)return t;let r=t.slice(0,e),s=t.slice(e+1).replace(/([^&=]+)=([^&]*)/g,(i,a)=>`${a}=***`);return`${r}?${s}`}function Xoe(t){if(t==null)return t;if(Array.isArray(t))return t.map(Xoe);if(typeof t=="object"){let e={};for(let r of Object.keys(t))e[r]=Xoe(t[r]);return e}return"***"}function fct(){let t=[...O.reqRecords].reverse(),e=O.todayReqNum||0;return O.currentToken!==O.adminToken&&(t=t.map(r=>{let n={...r};return n.clientIp&&(n.clientIp=n.clientIp.replace(/[^.]/g,"*")),typeof n.interface=="string"&&(n.interface=qbr(n.interface)),n.params!=null&&(n.params=Xoe(n.params)),n})),We({records:t,todayReqNum:e},200)}function pct(){try{let t=[...O.animes||[]].reverse(),e=new Map;t.forEach(n=>{n?.source&&n?.animeId&&e.set(`${n.source}_${n.animeId}`,n)});let r=t.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=e.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 We({success:!0,data:r},200)}catch(t){return E("error",`[system] [Server] Fetch cache animes failed: ${t.message}`),We({success:!1,message:`\u83B7\u53D6\u7F13\u5B58\u5931\u8D25: ${t.message}`},500)}}dr();vt();kt();async function mct(t){try{let{key:e,value:r}=await t.json();if(!e)return We({success:!1,message:"\u7F3A\u5C11\u73AF\u5883\u53D8\u91CF\u540D\u79F0"},400);let n=O.deployPlatform;return await(await Ta.getHandler(n)).setEnv(e,r)?We({success:!0,message:`\u73AF\u5883\u53D8\u91CF ${e} \u8BBE\u7F6E\u6210\u529F`}):We({success:!1,message:`\u73AF\u5883\u53D8\u91CF ${e} \u8BBE\u7F6E\u5931\u8D25`},500)}catch(e){return E("error","[system] [Server] \u8BBE\u7F6E\u73AF\u5883\u53D8\u91CF\u5931\u8D25:",e),We({success:!1,message:`\u8BBE\u7F6E\u73AF\u5883\u53D8\u91CF\u5931\u8D25: ${e.message}`},500)}}async function hct(t){try{let{key:e,value:r}=await t.json();if(!e)return We({success:!1,message:"\u7F3A\u5C11\u73AF\u5883\u53D8\u91CF\u540D\u79F0"},400);let n=O.deployPlatform;return await(await Ta.getHandler(n)).addEnv(e,r)?We({success:!0,message:`\u73AF\u5883\u53D8\u91CF ${e} \u6DFB\u52A0\u6210\u529F`}):We({success:!1,message:`\u73AF\u5883\u53D8\u91CF ${e} \u6DFB\u52A0\u5931\u8D25`},500)}catch(e){return E("error","[system] [Server] \u6DFB\u52A0\u73AF\u5883\u53D8\u91CF\u5931\u8D25:",e),We({success:!1,message:`\u6DFB\u52A0\u73AF\u5883\u53D8\u91CF\u5931\u8D25: ${e.message}`},500)}}async function gct(t){try{let{key:e}=await t.json();if(!e)return We({success:!1,message:"\u7F3A\u5C11\u73AF\u5883\u53D8\u91CF\u540D\u79F0"},400);let r=O.deployPlatform;return await(await Ta.getHandler(r)).delEnv(e)?We({success:!0,message:`\u73AF\u5883\u53D8\u91CF ${e} \u5220\u9664\u6210\u529F`}):We({success:!1,message:`\u73AF\u5883\u53D8\u91CF ${e} \u5220\u9664\u5931\u8D25`},500)}catch(e){return E("error","[system] [Server] \u5220\u9664\u73AF\u5883\u53D8\u91CF\u5931\u8D25:",e),We({success:!1,message:`\u5220\u9664\u73AF\u5883\u53D8\u91CF\u5931\u8D25: ${e.message}`},500)}}async function yct(t){try{let e=await t.json(),r=e.aiBaseUrl||O.aiBaseUrl||"https://api.openai.com/v1",n=e.aiModel||O.aiModel||"gpt-4o",s=e.aiApiKey||O.aiApiKey;if(!s)return We({success:!1,ok:!1,message:"AI_API_KEY \u672A\u914D\u7F6E"},400);let a=await new Rf({baseURL:r,model:n,apiKey:s,systemPrompt:"\u56DE\u7B54\u5C3D\u91CF\u7B80\u6D01"}).verify();return a.ok?We({success:!0,ok:!0,message:"AI \u670D\u52A1\u8FDE\u901A\u6027\u6D4B\u8BD5\u6210\u529F"}):We({success:!1,ok:!1,message:`AI \u670D\u52A1\u8FDE\u901A\u6027\u6D4B\u8BD5\u5931\u8D25: ${a.error}`},200)}catch(e){return E("error","[system] [Server] AI \u8FDE\u901A\u6027\u9A8C\u8BC1\u5931\u8D25:",e),We({success:!1,ok:!1,message:`AI \u8FDE\u901A\u6027\u9A8C\u8BC1\u5931\u8D25: ${e.message}`},500)}}ys();dr();vt();kt();var Act=new Map;function xct(){try{if(O&&typeof O.bilibliCookie=="string"&&O.bilibliCookie)return O.bilibliCookie}catch{}try{if(O&&O.env&&typeof O.env.BILIBILI_COOKIE=="string"&&O.env.BILIBILI_COOKIE)return O.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 jbr(t){try{let e=t.match(/SESSDATA=([^;]+)/);if(!e)return Math.floor(Date.now()/1e3)+30*24*60*60;let r=e[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 bct(t){if(!t)return{isValid:!1,error:"\u7F3A\u5C11Cookie"};if(!t.includes("SESSDATA")||!t.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 e=await fetch("https://api.bilibili.com/x/web-interface/nav",{method:"GET",headers:{Cookie:t,"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(!e.ok){let n=await e.text().catch(()=>"");return{isValid:!1,error:`\u9A8C\u8BC1\u8BF7\u6C42\u5931\u8D25\uFF1AHTTP ${e.status}${n?" - "+n.slice(0,80):""}`}}let r;try{r=await e.json()}catch(n){let s=await e.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(e){return{isValid:!1,error:"\u9A8C\u8BC1\u8BF7\u6C42\u5931\u8D25: "+e.message}}}async function _ct(t,e="saved"){if(!t)return{success:!0,data:{isValid:!1,checked:e,error:"\u672A\u914D\u7F6ECookie"}};let r=await bct(t);return r.isValid?{success:!0,data:{isValid:!0,checked:e,uname:r.data?.uname||"\u672A\u77E5\u7528\u6237",expiresAt:jbr(t)}}:{success:!0,data:{isValid:!1,checked:e,error:r.error||"Cookie\u65E0\u6548\u6216\u5DF2\u5931\u6548"}}}async function Ect(){try{let t=xct(),e=await _ct(t,"saved");return We(e)}catch(t){return We({success:!1,message:t.message},500)}}async function vct(t){try{let e={};try{e=await t.json()}catch{e={}}let r=typeof e.cookie=="string"?e.cookie.trim():"",n=!r||/^\*+$/.test(r),s=n?xct():r,a=await _ct(s,n?"saved":"input");return We(a)}catch(e){return We({success:!1,message:e.message},500)}}async function Sct(){try{let e=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 e.code!==0?We({success:!1,message:e.message||"\u751F\u6210\u4E8C\u7EF4\u7801\u5931\u8D25"},500):(Act.set(e.data.qrcode_key,{createTime:Date.now(),status:"generated"}),We({success:!0,data:e.data}))}catch(t){return We({success:!1,message:t.message},500)}}function Qbr(t){let e=new Map,r=[];try{if(t?.headers&&typeof t.headers.getSetCookie=="function")r=t.headers.getSetCookie()||[];else{let u=t?.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(),p=l.slice(d+1).trim();f&&e.set(f,p)}let n=e.get("SESSDATA"),s=e.get("bili_jct"),i=e.get("DedeUserID"),a=e.get("DedeUserID__ckMd5"),o=e.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 Ict(t){let e=null;try{let r=await t.json();if(e=r.qrcodeKey||r.qrcode_key,!e)return We({success:!1,message:"\u7F3A\u5C11qrcodeKey\u53C2\u6570"},400);let n=await fetch(`https://passport.bilibili.com/x/passport-login/web/qrcode/poll?qrcode_key=${e}`,{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=Qbr(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),We(a)}catch(r){return We({success:!1,message:r.message},500)}finally{e&&Act.delete(e)}}async function Cct(t){try{let r=((await t.json()).cookie||"").trim();if(!r)return We({success:!1,message:"\u7F3A\u5C11cookie\u53C2\u6570"},400);if(!r.includes("SESSDATA")||!r.includes("bili_jct"))return We({success:!1,message:"Cookie\u683C\u5F0F\u4E0D\u6B63\u786E"},400);let n=await bct(r);if(!n.isValid)return We({success:!1,message:"Cookie\u9A8C\u8BC1\u5931\u8D25: "+(n.error||"\u65E0\u6548")},400);let s=O.deployPlatform,i=await Ta.getHandler(s);return i?await i.setEnv("BILIBILI_COOKIE",r)?We({success:!0,data:{uname:n.data?.uname},message:"Cookie\u4FDD\u5B58\u6210\u529F"}):We({success:!1,message:"Cookie\u4FDD\u5B58\u5931\u8D25\uFF1A\u73AF\u5883\u53D8\u91CF\u5199\u5165\u5931\u8D25"},500):We({success:!1,message:`Cookie\u4FDD\u5B58\u5931\u8D25\uFF1A\u4E0D\u652F\u6301\u7684\u90E8\u7F72\u5E73\u53F0 ${s||"unknown"}`},400)}catch(e){return We({success:!1,message:e.message},500)}}var yt;async function wct(t,e,r,n,s){yt=_g.init(e);let i=new URL(t.url),a=i.pathname,o=t.method,c=a.includes("/search")||a.includes("/match")||a.includes("/danmaku");if(yt.useBangumiData&&await TL(r,c,s),yt.deployPlatform=r,r==="node"){await dJ(a,r);let{judgeLocalRedisValid:h}=await Promise.resolve().then(()=>(HT(),T5));await h(a)}if(await YY(a),!yt.aiValid&&yt.aiBaseUrl&&yt.aiModel&&yt.aiApiKey&&a!=="/favicon.ico"&&a!=="/robots.txt"&&(await new Rf({baseURL:yt.aiBaseUrl,model:yt.aiModel,apiKey:yt.aiApiKey,systemPrompt:"\u56DE\u7B54\u5C3D\u91CF\u7B80\u6D01"}).verify()).ok&&(yt.aiValid=!0),E("info",`[system] [Server] request url: ${JSON.stringify(i)}`),E("info",`[system] [Server] request path: ${a}`),E("info",`[system] [Server] client ip: ${n}`),yt.ipBlacklist?.length&&yt.ipBlacklist.some(y=>Hbr(y,n)))return E("warn",`[Utils] [IP Blacklist] Blocked request from IP: ${n}`),We({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=yt.token==="87654321",p=d===yt.token||d===yt.adminToken;if(yt.currentToken=p?d:f&&(d==="87654321"||l.includes(d))?d==="87654321"?d:"87654321":"",r==="node"&&yt.localCacheValid&&a!=="/favicon.ico"&&a!=="/robots.txt"&&await lJ(),yt.redisValid&&a!=="/favicon.ico"&&a!=="/robots.txt"&&await VY(),r==="node"&&yt.localRedisValid&&a!=="/favicon.ico"&&a!=="/robots.txt"){let{getLocalRedisCaches:h}=await Promise.resolve().then(()=>(HT(),T5));await h()}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(h=>a.includes(h))){let h=yt.reqRecords.length>0?yt.reqRecords[yt.reqRecords.length-1]:null,y=new Date().toDateString();if(h){let S=new Date(h.timestamp).toDateString();E("info",`[system] [Server] currentDate: ${y}`),E("info",`[system] [Server] lastDate: ${S}`),S!==y?yt.todayReqNum=1:yt.todayReqNum++}else yt.todayReqNum=1;let g=t.url,b=g.indexOf("/api/v2");b!==-1&&(g=g.substring(b));let x=null;if(o==="POST"||o==="PUT"||o==="PATCH")try{let S=t.clone();if((S.headers.get("content-type")||"").includes("application/json"))x=await S.json();else{let R=await S.text();R&&(x=JSON.parse(R))}}catch{x=null}let A={interface:g,params:x,timestamp:new Date().toISOString(),method:o,clientIp:n};yt.reqRecords.push(A),yt.reqRecords.length>yt.MAX_RECORDS&&(yt.reqRecords=yt.reqRecords.slice(-yt.MAX_RECORDS))}if(a==="/"&&o==="GET")return Zoe();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(yt.token==="87654321"){if(u.length>0){if(u[0]==="87654321"||u[0]===yt.adminToken)a="/"+u.slice(1).join("/");else if(!l.includes(u[0]))return a==="/api/config"&&o==="GET"?K5(!1):(E("error",`[system] [Server] Invalid token in path: ${a}`),We({errorCode:401,success:!1,errorMessage:"Unauthorized"},401))}}else{if(u.length<1||u[0]!==yt.token&&u[0]!==yt.adminToken)return a==="/api/config"&&o==="GET"?K5(!1):(E("error",`[system] [Server] Invalid or missing token in path: ${a}`),We({errorCode:401,success:!1,errorMessage:"Unauthorized"},401));a="/"+u.slice(1).join("/")}if(a.endsWith("/danmaku/api/v2/fongmi/danmaku")&&(E("info",`[Path Fix] Collapsed nested danmaku path: "${a}" -> "/danmaku"`),a="/danmaku"),a==="/api/config"&&o==="GET")return K5(!0);if(a==="/api/reqrecords"&&o==="GET")return fct();if(E("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")){E("info",`[Path Check] Starting path normalization for: "${a}"`);let h=a;for(a=a.replace(/\/+/g,"/");a.startsWith("/api/v2/api/v2/");)E("info","[Path Check] Found redundant /api/v2 prefix. Cleaning..."),a=a.substring(7);a!==h?E("info",`[Path Check] Path after cleanup: "${a}"`):E("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"?(E("info","[Path Check] Path is missing /api prefix. Adding /api..."),a="/api"+a):a.startsWith("/api/")||a==="/api"?(E("info","[Path Check] Path is missing /v2 prefix. Adding /v2..."),a="/api/v2"+a.substring(4)):(E("info","[Path Check] Path is missing /api/v2 prefix. Adding /api/v2..."),a="/api/v2"+(a.startsWith("/")?a:"/"+a))),a===y&&E("info","[Path Check] Prefix Check: No prefix addition needed."),E("info",`[Path Check] Final normalized path: "${a}"`)}if(a==="/"&&o==="GET")return Zoe();if(a==="/api/v2/search/anime"&&o==="GET")return $1(i);if(a==="/api/v2/search/episodes"&&o==="GET")return Bot(i);if(a==="/api/v2/fongmi/danmaku"&&(o==="GET"||o==="POST"))return Goe(i,t);if(a==="/danmaku"&&(o==="GET"||o==="POST"))return Goe(i,t);if(a==="/api/v2/match"&&o==="POST")return Dot(i,t,n);if(a.startsWith("/api/v2/bangumi/")&&o==="GET")return qoe(a);if((a.startsWith("/api/v2/comment")||a.startsWith("/api/v2/extcomment"))&&o==="GET"){let h=i.searchParams.get("format"),y=i.searchParams.get("url"),g=i.searchParams.get("segmentflag"),b=i.searchParams.get("duration"),x=g==="true"||g==="1",A=b==="true"||b==="1";if(y){if(wf(y)!==null)return E("info",`[Utils] [Rate Limit] Cache hit for URL: ${y}, skipping rate limit check`),Hoe(y,h,x,A);if(yt.rateLimitMaxRequests>0){let w=Date.now(),N=60*1e3;xL(w),yt.requestHistory.has(n)||yt.requestHistory.set(n,[]);let B=yt.requestHistory.get(n).filter(M=>w-M<=N);if(B.length>=yt.rateLimitMaxRequests)return E("warn",`[Utils] [Rate Limit] IP ${n} exceeded rate limit (${B.length}/${yt.rateLimitMaxRequests} requests in 1 minute)`),We({errorCode:429,success:!1,errorMessage:"Too many requests, please try again later"},429);B.push(w),yt.requestHistory.set(n,B),E("info",`[Utils] [Rate Limit] IP ${n} request count: ${B.length}/${yt.rateLimitMaxRequests}`)}return Hoe(y,h,x,A)}if(!a.startsWith("/api/v2/comment/"))return E("error","[system] [Server] Missing commentId or url parameter"),We({errorCode:400,success:!1,errorMessage:"Missing commentId or url parameter"},400);let S=parseInt(a.split("/").pop()),I=UC(S);if(I&&wf(I)!==null)return E("info",`[Utils] [Rate Limit] Cache hit for URL: ${I}, skipping rate limit check`),Qoe(a,h,x,n,A);if(yt.rateLimitMaxRequests>0){let R=Date.now(),w=60*1e3;xL(R),yt.requestHistory.has(n)||yt.requestHistory.set(n,[]);let k=yt.requestHistory.get(n).filter(B=>R-B<=w);if(k.length>=yt.rateLimitMaxRequests)return E("warn",`[Utils] [Rate Limit] IP ${n} exceeded rate limit (${k.length}/${yt.rateLimitMaxRequests} requests in 1 minute)`),We({errorCode:429,success:!1,errorMessage:"Too many requests, please try again later"},429);k.push(R),yt.requestHistory.set(n,k),E("info",`[Utils] [Rate Limit] IP ${n} request count: ${k.length}/${yt.rateLimitMaxRequests}`)}return Qoe(a,h,x,n,A)}if(a.startsWith("/api/v2/segmentcomment")&&o==="POST")try{let h=i.searchParams.get("format"),y=await t.json(),g;try{g=Kb.fromJson(y)}catch{return E("error","[system] [Server] Invalid JSON in request body for segment"),We({errorCode:400,success:!1,errorMessage:"Invalid JSON in request body"},400)}return Lot(g,h)}catch(h){return E("error",`[system] [Server] Error processing segmentcomment request: ${h.message}`),We({errorCode:500,success:!1,errorMessage:"Internal server error"},500)}return a==="/api/logs"&&o==="GET"?uct():a==="/api/logs/clear"&&o==="POST"?lct():a==="/api/env/set"&&o==="POST"?mct(t):a==="/api/env/add"&&o==="POST"?hct(t):a==="/api/env/del"&&o==="POST"?gct(t):a==="/api/deploy"&&o==="POST"?cct():a==="/api/cache/animes"&&o==="GET"?pct():a==="/api/cache/clear"&&o==="POST"?dct():a==="/api/cookie/status"&&o==="GET"?Ect():a==="/api/cookie/qr/generate"&&o==="POST"?Sct():a==="/api/cookie/qr/check"&&o==="POST"?Ict(t):a==="/api/cookie/verify"&&o==="POST"?vct(t):a==="/api/cookie/save"&&o==="POST"?Cct(t):a==="/api/ai/verify"&&o==="POST"?yct(t):We({message:"Not found"},404)}function Hbr(t,e){return!t||!e||e==="unknown"?!1:t.type==="exact"?t.value===e:t.type==="regex"?t.value.test(e):t.type==="cidr"?Gbr(e,t.ip,t.prefix):!1}function Gbr(t,e,r){if(t.includes(":")||e.includes(":")){let o=Tct(t),c=Tct(e);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=ece(t),i=ece(e);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 ece(t){let e=t.split(".");if(e.length!==4)return null;let r=e.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 Tct(t){if(!t||typeof t!="string"||!t.includes(":"))return null;let r=t.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=ece(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 Uu=null,q1=9321,V5=0,fy=null,Rct=!1,F1={...process.env,ADMIN_TOKEN:"douer"},Y5=!1,bw=null,Uc=null,Tn={overrides:{},deletedKeys:[]};function Ri(...t){}function _w(...t){}function Pct(){return V5>0}function zbr(){try{let byEval=eval("1 + 1")===2,byFunction=Function("return 2 + 2")()===4;return byEval&&byFunction}catch{return!1}}function rce(){return{overrides:{},deletedKeys:[]}}function Dct(){let t=String(process.env.DANMU_ENV_STORE_FILE||"").trim();if(t)return t;let e=String(process.env.NODE_PATH||"").trim()||process.cwd();return oce.default.resolve(e,"danmu_env_overrides.json")}function Kbr(t){let e=rce();if(!t||typeof t!="object")return e;let r=Array.isArray(t.deletedKeys)?t.deletedKeys.map(s=>String(s||"").trim()).filter(s=>s):[];e.deletedKeys=Array.from(new Set(r));let n=new Set(e.deletedKeys);return t.overrides&&typeof t.overrides=="object"&&!Array.isArray(t.overrides)&&Object.entries(t.overrides).forEach(([s,i])=>{let a=String(s||"").trim();!a||n.has(a)||(e.overrides[a]=i==null?"":String(i))}),e}function Vbr(){Uc=Dct();try{if(!Ew.default.existsSync(Uc)){Tn=rce(),Ri("loadPersistedEnvStore()",{loaded:!1,reason:"store file not found",path:Uc});return}let t=Ew.default.readFileSync(Uc,"utf8"),e=t?JSON.parse(t):{};Tn=Kbr(e),Ri("loadPersistedEnvStore()",{loaded:!0,path:Uc,overrides:Object.keys(Tn.overrides).length,deleted:Tn.deletedKeys.length})}catch(t){Tn=rce(),_w("loadPersistedEnvStore() failed",{message:t?.message||String(t),stack:t?.stack||"",path:Uc})}}function Ybr(){try{Uc||(Uc=Dct());let t=oce.default.dirname(Uc);Ew.default.mkdirSync(t,{recursive:!0});let e={version:1,updatedAt:new Date().toISOString(),overrides:Tn.overrides,deletedKeys:Tn.deletedKeys};return Ew.default.writeFileSync(Uc,JSON.stringify(e,null,2),"utf8"),!0}catch(t){return _w("savePersistedEnvStore() failed",{message:t?.message||String(t),stack:t?.stack||"",path:Uc||""}),!1}}function nce(){let t={...process.env};return Object.entries(Tn.overrides).forEach(([e,r])=>{t[e]=r}),Tn.deletedKeys.forEach(e=>{delete t[e]}),Jbr(t)}function Jbr(t){let e=t||{},r=String(e.TOKEN||"").trim();e.TOKEN=r||"87654321";let n=String(e.SOURCE_ORDER||"").trim();e.SOURCE_ORDER=n||"tencent,youku,iqiyi,imgo,bilibili,dandan,renren,hanjutv";let s=String(e.STRICT_TITLE_MATCH||"").trim();e.STRICT_TITLE_MATCH=s||"true";let i=String(e.RATE_LIMIT_MAX_REQUESTS||"").trim();e.RATE_LIMIT_MAX_REQUESTS=i||"0";let a=String(e.ADMIN_TOKEN||"").trim();return e.ADMIN_TOKEN=a||"douer",e}function Xbr(t){return t==null?null:Array.isArray(t)?t.map(e=>String(e)).join(","):typeof t=="string"?t:typeof t=="number"||typeof t=="boolean"?String(t):null}function Zbr(t,e){if(!t||typeof t!="object"||!t.originalEnvVars||typeof t.originalEnvVars!="object")return t;let r=t.originalEnvVars,n=t.envs&&typeof t.envs=="object"?t.envs:{};return Object.keys(r).forEach(s=>{let i=r[s];if(!(i==null||String(i).trim()===""))return;if(s==="TOKEN"){r[s]=String(e.TOKEN||"87654321");return}if(s==="ADMIN_TOKEN"){r[s]=String(e.ADMIN_TOKEN||"");return}let o=e[s];if(o!=null&&String(o).trim()!==""){r[s]=String(o);return}if(!Object.prototype.hasOwnProperty.call(n,s))return;let c=n[s];if(typeof c=="string"&&/^\*+$/.test(c))return;let u=Xbr(c);u!==null&&u!==""&&(r[s]=u)}),t}function tce(t,e,r=!1){let n=String(t||"").trim();if(!n)return!1;let s=Object.prototype.hasOwnProperty.call(process.env,n),i=process.env[n],a=Object.prototype.hasOwnProperty.call(Tn.overrides,n),o=Tn.overrides[n],c=Tn.deletedKeys.includes(n);if(r)delete process.env[n],delete Tn.overrides[n],Tn.deletedKeys.includes(n)||Tn.deletedKeys.push(n);else{let u=e==null?"":String(e);process.env[n]=u,Tn.overrides[n]=u,Tn.deletedKeys=Tn.deletedKeys.filter(l=>l!==n)}return Ybr()?(F1=nce(),!0):(a?Tn.overrides[n]=o:delete Tn.overrides[n],c&&!Tn.deletedKeys.includes(n)&&Tn.deletedKeys.push(n),c||(Tn.deletedKeys=Tn.deletedKeys.filter(u=>u!==n)),s?process.env[n]=i:delete process.env[n],F1=nce(),!1)}var e1r={async setEnv(t,e){return tce(t,e,!1)?(Ri("memoryNodeEnvHandler.setEnv()",{key:String(t||"")}),!0):!1},async addEnv(t,e){return tce(t,e,!1)?(Ri("memoryNodeEnvHandler.addEnv()",{key:String(t||"")}),!0):!1},async delEnv(t){return tce(t,"",!0)?(Ri("memoryNodeEnvHandler.delEnv()",{key:String(t||"")}),!0):!1}};function t1r(){Y5||(bw=Ta.getHandler,Ta.getHandler=async function(e){let r=String(e||"").toLowerCase();return!r||r==="node"?e1r:bw.call(Ta,e)},Y5=!0,Ri("installNodeEnvHotReloadPatch()",{patched:!0}))}function r1r(){!Y5||!bw||(Ta.getHandler=bw,bw=null,Y5=!1,Ri("uninstallNodeEnvHotReloadPatch()",{patched:!1}))}function n1r(t){return t==null?Buffer.alloc(0):Buffer.isBuffer(t)?t:t instanceof ArrayBuffer?Buffer.from(t):ArrayBuffer.isView(t)?Buffer.from(t.buffer,t.byteOffset,t.byteLength):Buffer.from(String(t),"utf8")}async function s1r(t){if(!t||typeof t.getReader!="function")return Buffer.from(String(t??""),"utf8");let e=t.getReader(),r=[];try{for(;;){let{done:n,value:s}=await e.read();if(n)break;if(s!=null){if(Buffer.isBuffer(s)){r.push(s);continue}if(s instanceof Uint8Array){r.push(Buffer.from(s));continue}if(s instanceof ArrayBuffer){r.push(Buffer.from(s));continue}if(ArrayBuffer.isView(s)){r.push(Buffer.from(s.buffer,s.byteOffset,s.byteLength));continue}r.push(Buffer.from(String(s),"utf8"))}}}finally{typeof e.releaseLock=="function"&&e.releaseLock()}return r.length?Buffer.concat(r):Buffer.alloc(0)}async function i1r(t){if(t==null)return Buffer.alloc(0);if(Buffer.isBuffer(t))return t;if(t instanceof ArrayBuffer)return Buffer.from(t);if(ArrayBuffer.isView(t))return Buffer.from(t.buffer,t.byteOffset,t.byteLength);if(typeof t=="string")return Buffer.from(t,"utf8");if(typeof Blob=="function"&&t instanceof Blob){let e=await t.arrayBuffer();return Buffer.from(e)}return typeof t.getReader=="function"?s1r(t):Buffer.from(String(t),"utf8")}var vw=class{constructor(e=void 0){if(this._map=new Map,!!e){if(typeof e.forEach=="function"){e.forEach((r,n)=>this.set(n,r));return}if(Array.isArray(e)){e.forEach(([r,n])=>this.set(r,n));return}typeof e=="object"&&Object.entries(e).forEach(([r,n])=>this.set(r,n))}}set(e,r){this._map.set(String(e).toLowerCase(),String(r))}get(e){let r=this._map.get(String(e).toLowerCase());return r===void 0?null:r}has(e){return this._map.has(String(e).toLowerCase())}delete(e){this._map.delete(String(e).toLowerCase())}forEach(e,r=void 0){for(let[n,s]of this._map.entries())e.call(r,s,n,this)}entries(){return this._map.entries()}[Symbol.iterator](){return this._map[Symbol.iterator]()}},sce=class t{constructor(e,r={}){this.url=String(e||""),this.method=String(r.method||"GET").toUpperCase();let n=globalThis.Headers||vw;this.headers=r.headers instanceof n?r.headers:new n(r.headers||{}),this._bodyBuffer=n1r(r.body)}clone(){return new t(this.url,{method:this.method,headers:Object.fromEntries(this.headers.entries()),body:this._bodyBuffer})}async text(){return this._bodyBuffer.toString("utf8")}async json(){let e=await this.text();return e?JSON.parse(e):null}async arrayBuffer(){return this._bodyBuffer.buffer.slice(this._bodyBuffer.byteOffset,this._bodyBuffer.byteOffset+this._bodyBuffer.byteLength)}},ice=class{constructor(e=null,r={}){let n=globalThis.Headers||vw;this.status=Number(r.status||200),this.statusText=String(r.statusText||""),this.headers=r.headers instanceof n?r.headers:new n(r.headers||{}),this.ok=this.status>=200&&this.status<300,this.body=e,this.bodyUsed=!1,this._bodyBuffer=null,this._bodyBufferPromise=null}async _ensureBodyBuffer(){return this._bodyBuffer?this._bodyBuffer:(this._bodyBufferPromise||(this._bodyBufferPromise=i1r(this.body).then(e=>(this._bodyBuffer=e,this.bodyUsed=!0,e))),this._bodyBufferPromise)}async text(){return(await this._ensureBodyBuffer()).toString("utf8")}async json(){let e=await this.text();return e?JSON.parse(e):null}async arrayBuffer(){let e=await this._ensureBodyBuffer();return e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength)}};function a1r(){Rct||(typeof globalThis.Headers!="function"&&(globalThis.Headers=vw),typeof globalThis.Response!="function"&&(globalThis.Response=ice),typeof globalThis.Request!="function"&&(globalThis.Request=sce),Rct=!0,Ri("installWebApiPolyfills()",{hasFetch:typeof globalThis.fetch=="function",hasRequest:typeof globalThis.Request=="function",hasHeaders:typeof globalThis.Headers=="function",hasResponse:typeof globalThis.Response=="function"}))}async function Nct(t,e={}){let r=await he({url:t,method:e.method||"GET",headers:e.headers||{},data:e.body,signal:e.signal,responseType:"arraybuffer",validateStatus:()=>!0,timeout:1e4}),n=Buffer.from(r.data),s={};return Object.entries(r.headers||{}).forEach(([i,a])=>{s[i]=String(a)}),{ok:r.status>=200&&r.status<300,status:r.status,statusText:r.statusText||"",headers:new Headers(s),url:String(t),async text(){return n.toString("utf8")},async json(){return JSON.parse(n.toString("utf8"))},async arrayBuffer(){return n.buffer.slice(n.byteOffset,n.byteOffset+n.byteLength)}}}function o1r(){Ri("installPatches()",{hasFetch:typeof globalThis.fetch=="function"}),fy=globalThis.fetch,globalThis.fetch=function(e,r){return V5>0?Nct(e,r):typeof fy=="function"?fy(e,r):Nct(e,r)}}function ace(){if(Ri("uninstallPatches()",{hasOriginalFetch:!!fy}),typeof fy=="function")globalThis.fetch=fy;else try{delete globalThis.fetch}catch{globalThis.fetch=void 0}fy=null}function Bct(t=9321){if(q1=t,a1r(),t1r(),Vbr(),F1=nce(),Ri("loadDanmuEnv()",{source:"process.env + persisted store",adminTokenFallback:F1.ADMIN_TOKEN==="douer",persistedEnvStorePath:Uc,persistedOverrides:Object.keys(Tn.overrides).length,persistedDeletedKeys:Tn.deletedKeys.length}),Ri("start()",{port:t,alreadyRunning:!!Uu,node:process.version,platform:`${process.platform}/${process.arch}`,v8:process.versions?.v8,dynamicCode:zbr()}),!Uu){o1r();try{Uu=kct.default.createServer(async(e,r)=>{V5++;let n=`${Date.now().toString(36)}-${Math.random().toString(36).slice(2,8)}`,s=Date.now();Ri(`[${n}] inbound`,{method:e.method,url:e.url,host:e.headers.host,remote:e.socket?.remoteAddress||"unknown"});try{let i=`http://${e.headers.host||`127.0.0.1:${t}`}${e.url}`,a=(()=>{try{return new URL(i).pathname||""}catch{return String(e.url||"")}})(),o=e.method==="GET"&&a.endsWith("/api/config"),c;(e.method==="POST"||e.method==="PUT")&&(c=await new Promise(p=>{let m="";e.on("data",h=>m+=h),e.on("end",()=>p(m))}));let u=new Request(i,{method:e.method,headers:Object.fromEntries(Object.entries(e.headers).map(([p,m])=>[p,String(m)])),body:c||void 0}),l={...F1},d=await wct(u,l,"node",e.socket?.remoteAddress||"unknown");Ri(`[${n}] worker done`,{status:d.status}),r.statusCode=d.status,d.headers.forEach((p,m)=>{let h=m.toLowerCase();h!=="content-encoding"&&h!=="content-length"&&r.setHeader(m,p)});let f;if(o){let p=await d.text();try{let m=JSON.parse(p),h=Zbr(m,l);f=Buffer.from(JSON.stringify(h),"utf8")}catch{f=Buffer.from(p||"","utf8")}}else f=Buffer.from(await d.arrayBuffer());r.setHeader("Content-Length",f.length),r.end(f)}catch(i){_w(`[${n}] request failed`,{message:i?.message||String(i),stack:i?.stack||""}),r.statusCode=500,r.end("Internal Server Error")}finally{Ri(`[${n}] complete`,{costMs:Date.now()-s}),V5--}}),Uu.listen(t,"0.0.0.0",()=>{let e=Uu?.address?.();Ri("listen ok",{address:e})}),Uu.on("error",e=>{_w("server error",{message:e?.message||String(e),code:e?.code}),console.warn(`[danmu] \u5185\u7F6E\u5F39\u5E55\u670D\u52A1\u542F\u52A8\u5931\u8D25: ${e.message}`),ace(),Uu=null})}catch(e){_w("start() failed",{message:e?.message||String(e),stack:e?.stack||""}),console.warn(`[danmu] \u5185\u7F6E\u5F39\u5E55\u670D\u52A1\u542F\u52A8\u5931\u8D25: ${e.message}`),ace()}}}function Lct(){Ri("stop()",{hasServer:!!Uu,port:q1}),Uu&&(Uu.close(),Uu=null),r1r(),ace()}function iAn(){return q1}function Oct(t){let e=String(t||"").trim().toLowerCase();return e==="localhost"||e==="127.0.0.1"||e==="0.0.0.0"||e==="::1"}function c1r(t){let e=String(t||"").trim();if(!e)return"";try{return new URL(e).hostname||""}catch{try{return new URL(`http://${e}`).hostname||""}catch{return e.replace(/^\w+:\/\//,"").split("/")[0].split(":")[0].trim()}}}function u1r(t){let e=c1r(t);if(e&&!Oct(e))return e;let r=String(Z0()||"").trim();return r&&!Oct(r)?r:"127.0.0.1"}function l1r(t){let e=Number.parseInt(String(t??""),10);return Number.isFinite(e)&&e>0?e:q1}function cce(t,e=q1){let r=u1r(t),n=l1r(e);return`http://${r}:${n}`}function uce(t,e=q1){let r=cce(t,e),n=String(d1r()||"").trim();return n?`${r}/${encodeURIComponent(n)}`:r}function d1r(){return String(F1?.ADMIN_TOKEN||"").trim()||"douer"}function p1r(t){return Sw.default.enc.Utf8.stringify(Sw.default.enc.Base64.parse(t))}function Mct(t){return Sw.default.enc.Base64.stringify(Sw.default.enc.Utf8.parse(t))}function Fct(t){return String(t||"").split(",")[0].trim()}function Wct(t){return Fct(t).replace(/^\w+:\/\//,"").split("/")[0].trim()}function $ct(t){let e=String(t||"").trim().toLowerCase().split(":")[0];return e==="localhost"||e==="127.0.0.1"||e==="0.0.0.0"||e==="::1"}function J5(t){let e=String(t?.server?.address?.()?.url||"").trim(),n=Wct(t?.headers?.["x-forwarded-host"])||Wct(t?.headers?.host),s=Fct(t?.headers?.["x-forwarded-proto"]),i=e.startsWith("https://")?"https":"http",a=s||String(t?.protocol||"").trim()||i;if(n&&!$ct(n))return`${a}://${n}`;let o=String(Z0()||"").trim(),c=Number.parseInt(String(t?.server?.address?.()?.port||""),10);return o&&!$ct(o)?Number.isFinite(c)&&c>0?`${a}://${o}:${c}`:`${a}://${o}`:e}async function m1r(t,e){return{}}async function h1r(t,e){return{class:[{type_id:"setting",type_name:`${J5(t)}/website`}]}}async function g1r(t,e){let r=J5(t),n=r+t.server.prefix+"/proxy",s=uce(r);return{page:1,pagecount:1,limit:1,total:1,list:[{vod_id:"openInternalWebsite",vod_name:"\u901A\u7528\u914D\u7F6E",vod_pic:n+"/"+Mct(`${r}/website`)},{vod_id:"builtinDanmuApiQr",vod_name:"\u5F39\u5E55\u670D\u52A1",vod_pic:n+"/"+Mct(s)}]}}async function y1r(t,e){if(t.body.id==="openInternalWebsite"){let r=J5(t);return await t.server.messageToDart({action:"openInternalWebview",opt:{url:`${r}/website`}}),{list:[{vod_name:"",vod_content:""}]}}if(t.body.id==="builtinDanmuApiQr"){let r=J5(t);return await t.server.messageToDart({action:"openInternalWebview",opt:{url:uce(r)}}),{list:[{vod_name:"",vod_content:""}]}}return{list:[{vod_name:"",vod_content:""}]}}async function A1r(t,e){let r=t.params.img,n=p1r(r),s=await Uct.default.toBuffer(n,{width:120,height:120,margin:15});e.send(s)}var qct={meta:{key:"baseset",name:"\u300C\u8BBE\u300D\u914D\u7F6E",type:3},api:async t=>{t.post("/init",m1r),t.post("/home",h1r),t.post("/category",g1r),t.post("/detail",y1r),t.get("/proxy/:img",A1r)}};var x1r=["https://666.666291.xyz","https://www.muou.asia","https://www.muou.site"],lce=async t=>(await t.db.getObjectDefault("/muou",{}))?.urls||t.config.muou?.urls||x1r,b1r=async(t,e)=>{await t.db.push("/muou/urls",e)},_1r=async t=>{await t.db.delete("/muou/urls")};async function dce(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await lce(e.server)})}),t.put("/urls",async(e,r)=>{await b1r(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await _1r(e.server),r.send({code:0})})}var fce,X5=t=>{if(!fce){let e=Date.now();fce=new Promise(async r=>{let n=await lce(t),s=await Zn(n);console.log("\u6728\u5076\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return fce},j1={url:"https://zf.do-u.de5.net/",key:"woleigedouer",sendTimeout:1200,receiveTimeout:1500};async function E1r(t){try{if(!j1.url)return;let e={"Content-Type":"application/json"};j1.key&&(e.Authorization=`Bearer ${j1.key}`),await fe(j1.url,{method:"POST",headers:e,data:JSON.stringify(t),sendTimeout:j1.sendTimeout||1200,receiveTimeout:j1.receiveTimeout||1500})}catch{}}async function pce(t){return(await fe.get(t,{headers:{"User-Agent":Gt}})).data}async function v1r(t,e){let r=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"3",type_name:"\u52A8\u6F2B"},{type_id:"4",type_name:"\u7EAA\u5F55"},{type_id:"29",type_name:"\u7EFC\u827A"},{type_id:"25",type_name:"115"}],n={};return n[1]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u6050\u6016",v:"\u6050\u6016"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u8B66\u532A",v:"\u8B66\u532A"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u52A8\u753B",v:"\u52A8\u753B"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u6B66\u4FA0",v:"\u6B66\u4FA0"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u67AA\u6218",v:"\u67AA\u6218"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u60CA\u609A",v:"\u60CA\u609A"},{n:"\u7ECF\u5178",v:"\u7ECF\u5178"},{n:"\u9752\u6625",v:"\u9752\u6625"},{n:"\u6587\u827A",v:"\u6587\u827A"},{n:"\u5FAE\u7535\u5F71",v:"\u5FAE\u7535\u5F71"},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u8FD0\u52A8",v:"\u8FD0\u52A8"},{n:"\u519C\u6751",v:"\u519C\u6751"},{n:"\u513F\u7AE5",v:"\u513F\u7AE5"},{n:"\u7F51\u7EDC\u7535\u5F71",v:"\u7F51\u7EDC\u7535\u5F71"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{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:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u5370\u5EA6",v:"\u5370\u5EA6"},{n:"\u610F\u5927\u5229",v:"\u610F\u5927\u5229"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u52A0\u62FF\u5927",v:"\u52A0\u62FF\u5927"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",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"},{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"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[2]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u9752\u6625\u5076\u50CF",v:"\u9752\u6625\u5076\u50CF"},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u5BB6\u5EAD",v:"\u5BB6\u5EAD"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u7ECF\u5178",v:"\u7ECF\u5178"},{n:"\u4E61\u6751",v:"\u4E61\u6751"},{n:"\u60C5\u666F",v:"\u60C5\u666F"},{n:"\u5546\u6218",v:"\u5546\u6218"},{n:"\u7F51\u5267",v:"\u7F51\u5267"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u4E2D\u56FD\u5927\u9646",v:"\u4E2D\u56FD\u5927\u9646"},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u5185\u5730",v:"\u5185\u5730"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65B0\u52A0\u5761",v:"\u65B0\u52A0\u5761"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",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"},{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"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[3]=[{key:"year",name:"",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"},{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"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[4]=[{key:"year",name:"",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"},{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"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[29]=[{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[25]=[{key:"year",name:"",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"},{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"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],{class:r,filters:n}}async function S1r(t,e){let r=await X5(t.server),n=t.body.id,s=t.body.page,i=t.body.filters||{},a=s||1;a==0&&(a=1);let o=r+"/index.php/vod/show";i.area&&(o+=`/area/${i.area}`),i.by&&(o+=`/by/${i.by}`),i.class&&(o+=`/class/${i.class}`),o+=`/id/${n}/page/${a}`,i.year&&(o+=`/year/${i.year}`),o+=".html";let c=await pce(o,Gt),u=De(c),l=u("#main .module-item"),d=[];for(var f of l){let h=u(f).find(".module-item-pic a").attr("href"),y=u(f).find(".module-item-pic img").attr("alt"),g=u(f).find(".module-item-pic img").attr("data-src"),b=u(f).find(".module-item-text").text();d.push({vod_id:h,vod_name:y,vod_pic:g,vod_remarks:b})}let m=u("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(a)+1:parseInt(a);return{page:parseInt(a),pagecount:m,limit:72,total:72*m,list:d}}async function I1r(t,e){let r=await X5(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await pce(r+i),o=De(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let p=o(f).text(),h=o(f).next().find("a").map((y,g)=>{let b=o(g).text().trim();return b||null}).get().filter(Boolean).join(", ");p.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():p.includes("\u5BFC\u6F14")?c.vod_director=h.trim():p.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,p)=>p.children[0].data).get(),d=await Xt(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls,c.vod_links=d.links),E1r({detail_url:r+i,html:a,parsed:{vod_name:c.vod_name||"",vod_pic:c.vod_pic||"",vod_content:c.vod_content||"",panUrls:Array.isArray(l)?l:[]}}),s.push(c)}return{list:s}}async function C1r(t,e){let r=await X5(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await pce(`${r}/index.php/vod/search/wd/${s}.html`),o=De(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var jct={meta:{key:"muou",name:"\u300C\u76D8\u300D\u6728\u5076",type:3},api:async t=>{t.post("/init",lr),t.post("/home",v1r),t.post("/category",S1r),t.post("/detail",I1r),t.post("/play",er),t.post("/search",C1r),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt)},check:X5};var T1r=["http://xiaocgege.shop"],mce=async t=>(await t.db.getObjectDefault("/labi",{}))?.urls||t.config.labi?.urls||T1r,w1r=async(t,e)=>{await t.db.push("/labi/urls",e)},R1r=async t=>{await t.db.delete("/labi/urls")};async function hce(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await mce(e.server)})}),t.put("/urls",async(e,r)=>{await w1r(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await R1r(e.server),r.send({code:0})})}var gce,Z5=t=>{if(!gce){let e=Date.now();gce=new Promise(async r=>{let n=await mce(t),s=await Zn(n);console.log("\u8721\u7B14\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return gce},Q1={url:"https://zf.do-u.de5.net/",key:"woleigedouer",sendTimeout:1200,receiveTimeout:1500};async function N1r(t){try{if(!Q1.url)return;let e={"Content-Type":"application/json"};Q1.key&&(e.Authorization=`Bearer ${Q1.key}`),await fe(Q1.url,{method:"POST",headers:e,data:JSON.stringify(t),sendTimeout:Q1.sendTimeout||1200,receiveTimeout:Q1.receiveTimeout||1500})}catch{}}async function yce(t){return(await fe.get(t,{headers:{"User-Agent":Gt}})).data}async function O1r(t,e){let r=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"3",type_name:"\u52A8\u6F2B"},{type_id:"4",type_name:"\u7EFC\u827A"},{type_id:"24",type_name:"4K"},{type_id:"29",type_name:"\u81FB\u5F69"},{type_id:"5",type_name:"\u77ED\u5267"}],n={};return n[1]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u6050\u6016",v:"\u6050\u6016"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u8B66\u532A",v:"\u8B66\u532A"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u52A8\u753B",v:"\u52A8\u753B"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u6B66\u4FA0",v:"\u6B66\u4FA0"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u67AA\u6218",v:"\u67AA\u6218"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u60CA\u609A",v:"\u60CA\u609A"},{n:"\u7ECF\u5178",v:"\u7ECF\u5178"},{n:"\u9752\u6625",v:"\u9752\u6625"},{n:"\u6587\u827A",v:"\u6587\u827A"},{n:"\u5FAE\u7535\u5F71",v:"\u5FAE\u7535\u5F71"},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u8FD0\u52A8",v:"\u8FD0\u52A8"},{n:"\u519C\u6751",v:"\u519C\u6751"},{n:"\u513F\u7AE5",v:"\u513F\u7AE5"},{n:"\u7F51\u7EDC\u7535\u5F71",v:"\u7F51\u7EDC\u7535\u5F71"}]},{key:"area",name:"",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:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u5370\u5EA6",v:"\u5370\u5EA6"},{n:"\u610F\u5927\u5229",v:"\u610F\u5927\u5229"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u52A0\u62FF\u5927",v:"\u52A0\u62FF\u5927"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",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"},{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"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[2]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u9752\u6625\u5076\u50CF",v:"\u9752\u6625\u5076\u50CF"},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u5BB6\u5EAD",v:"\u5BB6\u5EAD"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u7ECF\u5178",v:"\u7ECF\u5178"},{n:"\u4E61\u6751",v:"\u4E61\u6751"},{n:"\u60C5\u666F",v:"\u60C5\u666F"},{n:"\u5546\u6218",v:"\u5546\u6218"},{n:"\u7F51\u5267",v:"\u7F51\u5267"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"area",name:"",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:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65B0\u52A0\u5761",v:"\u65B0\u52A0\u5761"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",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"},{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"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[3]=[{key:"year",name:"",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"},{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"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[4]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u60C5\u611F",v:"\u60C5\u611F"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u70ED\u8840",v:"\u70ED\u8840"},{n:"\u63A8\u7406",v:"\u63A8\u7406"},{n:"\u641E\u7B11",v:"\u641E\u7B11"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u841D\u8389",v:"\u841D\u8389"},{n:"\u6821\u56ED",v:"\u6821\u56ED"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u673A\u6218",v:"\u673A\u6218"},{n:"\u8FD0\u52A8",v:"\u8FD0\u52A8"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u5C11\u5E74",v:"\u5C11\u5E74"},{n:"\u5C11\u5973",v:"\u5C11\u5973"},{n:"\u793E\u4F1A",v:"\u793E\u4F1A"},{n:"\u539F\u521B",v:"\u539F\u521B"},{n:"\u4EB2\u5B50",v:"\u4EB2\u5B50"},{n:"\u76CA\u667A",v:"\u76CA\u667A"},{n:"\u52B1\u5FD7",v:"\u52B1\u5FD7"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u56FD\u4EA7",v:"\u56FD\u4EA7"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u6B27\u7F8E",v:"\u6B27\u7F8E"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",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"},{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"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[24]=[{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u4E2D\u56FD",v:"\u4E2D\u56FD"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",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"},{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"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[29]=[{key:"year",name:"",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"},{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"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[5]=[{key:"year",name:"",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"},{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"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],{class:r,filters:n}}async function k1r(t,e){let r=await Z5(t.server),n=t.body.id,s=t.body.page,i=t.body.filters||{},a=s||1;a==0&&(a=1);let o=r+"/index.php/vod/show";i.area&&(o+=`/area/${i.area}`);let c=i.by||i.sort;c&&(o+=`/by/${c}`),i.class&&(o+=`/class/${i.class}`),o+=`/id/${n}/page/${a}`,i.year&&(o+=`/year/${i.year}`),o+=".html";let u=await yce(o,Gt),l=De(u),d=l("#main .module-item"),f=[];for(var p of d){let y=l(p).find(".module-item-pic a").attr("href"),g=l(p).find(".module-item-pic img").attr("alt"),b=l(p).find(".module-item-pic img").attr("data-src"),x=l(p).find(".module-item-text").text();f.push({vod_id:y,vod_name:g,vod_pic:b,vod_remarks:x})}let h=l("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(a)+1:parseInt(a);return{page:parseInt(a),pagecount:h,limit:72,total:72*h,list:f}}async function P1r(t,e){let r=await Z5(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await yce(r+i),o=De(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let p=o(f).text(),h=o(f).next().find("a").map((y,g)=>{let b=o(g).text().trim();return b||null}).get().filter(Boolean).join(", ");p.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():p.includes("\u5BFC\u6F14")?c.vod_director=h.trim():p.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,p)=>p.children[0].data).get(),d=await Xt(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls,c.vod_links=d.links),N1r({detail_url:r+i,html:a,parsed:{vod_name:c.vod_name||"",vod_pic:c.vod_pic||"",vod_content:c.vod_content||"",panUrls:Array.isArray(l)?l:[]}}),s.push(c)}return{list:s}}async function D1r(t,e){let r=await Z5(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await yce(`${r}/index.php/vod/search/wd/${s}.html`),o=De(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var Qct={meta:{key:"labi",name:"\u300C\u76D8\u300D\u8721\u7B14",type:3},api:async t=>{t.post("/init",lr),t.post("/home",O1r),t.post("/category",k1r),t.post("/detail",P1r),t.post("/play",er),t.post("/search",D1r),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt)},check:Z5};var B1r=["http://shandian.blog","http://sd.sduc.site"],Ace=async t=>(await t.db.getObjectDefault("/shandian",{}))?.urls||t.config.shandian?.urls||B1r,L1r=async(t,e)=>{await t.db.push("/shandian/urls",e)},M1r=async t=>{await t.db.delete("/shandian/urls")};async function xce(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await Ace(e.server)})}),t.put("/urls",async(e,r)=>{await L1r(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await M1r(e.server),r.send({code:0})})}var bce,e6=t=>{if(!bce){let e=Date.now();bce=new Promise(async r=>{let n=await Ace(t),s=await Zn(n);console.log("\u95EA\u7535\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return bce},H1={url:"https://zf.do-u.de5.net/",key:"woleigedouer",sendTimeout:1200,receiveTimeout:1500};async function W1r(t){try{if(!H1.url)return;let e={"Content-Type":"application/json"};H1.key&&(e.Authorization=`Bearer ${H1.key}`),await fe(H1.url,{method:"POST",headers:e,data:JSON.stringify(t),sendTimeout:H1.sendTimeout||1200,receiveTimeout:H1.receiveTimeout||1500})}catch{}}async function _ce(t){return(await fe.get(t,{headers:{"User-Agent":Gt}})).data}async function $1r(t,e){let r=[{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={};return n[1]=[{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u4E2D\u56FD\u5927\u9646",v:"\u4E2D\u56FD\u5927\u9646"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u4E2D\u56FD\u9999\u6E2F",v:"\u4E2D\u56FD\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u4E2D\u56FD\u53F0\u6E7E",v:"\u4E2D\u56FD\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u610F\u5927\u5229",v:"\u610F\u5927\u5229"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u5176\u5B83",v:"\u5176\u5B83"}]},{key:"year",name:"",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"},{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"}]},{key:"by",name:"",init:"",value:[{n:"\u9ED8\u8BA4",v:""},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[2]=[{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u4E2D\u56FD\u5927\u9646",v:"\u4E2D\u56FD\u5927\u9646"},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65B0\u52A0\u5761",v:"\u65B0\u52A0\u5761"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",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"},{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"}]},{key:"by",name:"",init:"",value:[{n:"\u9ED8\u8BA4",v:""},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[3]=[{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u4E2D\u56FD\u5927\u9646",v:"\u4E2D\u56FD\u5927\u9646"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u610F\u5927\u5229",v:"\u610F\u5927\u5229"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u5176\u5B83",v:"\u5176\u5B83"}]},{key:"year",name:"",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"},{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"}]},{key:"by",name:"",init:"",value:[{n:"\u9ED8\u8BA4",v:""},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[4]=[{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u4E2D\u56FD\u5927\u9646",v:"\u4E2D\u56FD\u5927\u9646"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u610F\u5927\u5229",v:"\u610F\u5927\u5229"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u5176\u5B83",v:"\u5176\u5B83"}]},{key:"year",name:"",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"},{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"}]},{key:"by",name:"",init:"",value:[{n:"\u9ED8\u8BA4",v:""},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[30]=[{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"}]},{key:"by",name:"",init:"",value:[{n:"\u9ED8\u8BA4",v:""},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],{class:r,filters:n}}async function U1r(t,e){let r=await e6(t.server),n=t.body.id,s=t.body.page,i=t.body.filters||{},a=s||1;a==0&&(a=1);let o=r+"/index.php/vod/show";i.area&&(o+=`/area/${i.area}`);let c=i.by||i.sort;c&&(o+=`/by/${c}`),i.class&&(o+=`/class/${i.class}`),o+=`/id/${n}/page/${a}`,i.year&&(o+=`/year/${i.year}`),o+=".html";let u=await _ce(o,Gt),l=De(u),d=l("#main .module-item"),f=[];for(var p of d){let y=l(p).find(".module-item-pic a").attr("href"),g=l(p).find(".module-item-pic img").attr("alt"),b=l(p).find(".module-item-pic img").attr("data-src"),x=l(p).find(".module-item-text").text();f.push({vod_id:y,vod_name:g,vod_pic:b,vod_remarks:x})}let h=l("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(a)+1:parseInt(a);return{page:parseInt(a),pagecount:h,limit:72,total:72*h,list:f}}async function F1r(t,e){let r=await e6(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await _ce(r+i),o=De(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let p=o(f).text(),h=o(f).next().find("a").map((y,g)=>{let b=o(g).text().trim();return b||null}).get().filter(Boolean).join(", ");p.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():p.includes("\u5BFC\u6F14")?c.vod_director=h.trim():p.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,p)=>p.children[0].data).get(),d=await Xt(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls,c.vod_links=d.links),W1r({detail_url:r+i,html:a,parsed:{vod_name:c.vod_name||"",vod_pic:c.vod_pic||"",vod_content:c.vod_content||"",panUrls:Array.isArray(l)?l:[]}}),s.push(c)}return{list:s}}async function q1r(t,e){let r=await e6(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await _ce(`${r}/index.php/vod/search/wd/${s}.html`),o=De(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var Hct={meta:{key:"shandian",name:"\u300C\u76D8\u300D\u95EA\u7535",type:3},api:async t=>{t.post("/init",lr),t.post("/home",$1r),t.post("/category",U1r),t.post("/detail",F1r),t.post("/play",er),t.post("/search",q1r),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt)},check:e6};var j1r=["https://woog.nxog.eu.org"],Ece=async t=>(await t.db.getObjectDefault("/ouge",{}))?.urls||t.config.ouge?.urls||j1r,Q1r=async(t,e)=>{await t.db.push("/ouge/urls",e)},H1r=async t=>{await t.db.delete("/ouge/urls")};async function vce(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await Ece(e.server)})}),t.put("/urls",async(e,r)=>{await Q1r(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await H1r(e.server),r.send({code:0})})}var Sce,t6=t=>{if(!Sce){let e=Date.now();Sce=new Promise(async r=>{let n=await Ece(t),s=await Zn(n);console.log("\u6B27\u54E5\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return Sce},G1={url:"https://zf.do-u.de5.net/",key:"woleigedouer",sendTimeout:1200,receiveTimeout:1500};async function G1r(t){try{if(!G1.url)return;let e={"Content-Type":"application/json"};G1.key&&(e.Authorization=`Bearer ${G1.key}`),await fe(G1.url,{method:"POST",headers:e,data:JSON.stringify(t),sendTimeout:G1.sendTimeout||1200,receiveTimeout:G1.receiveTimeout||1500})}catch{}}async function Ice(t){return(await fe.get(t,{headers:{"User-Agent":Gt}})).data}async function z1r(t,e){let r=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"3",type_name:"\u52A8\u6F2B"},{type_id:"5",type_name:"\u77ED\u5267"},{type_id:"4",type_name:"\u7EFC\u827A"},{type_id:"21",type_name:"\u7EFC\u5408"}],n={};return n[1]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u6050\u6016",v:"\u6050\u6016"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u8B66\u532A",v:"\u8B66\u532A"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u6B66\u4FA0",v:"\u6B66\u4FA0"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u67AA\u6218",v:"\u67AA\u6218"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u60CA\u609A",v:"\u60CA\u609A"},{n:"\u7ECF\u5178",v:"\u7ECF\u5178"},{n:"\u9752\u6625",v:"\u9752\u6625"},{n:"\u6587\u827A",v:"\u6587\u827A"},{n:"\u5FAE\u7535\u5F71",v:"\u5FAE\u7535\u5F71"},{n:"\u5386\u53F2",v:"\u5386\u53F2"}]},{key:"area",name:"",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:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u5370\u5EA6",v:"\u5370\u5EA6"},{n:"\u610F\u5927\u5229",v:"\u610F\u5927\u5229"},{n:"\u52A0\u62FF\u5927",v:"\u52A0\u62FF\u5927"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{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:"2004",v:"2004"},{n:"2003",v:"2003"},{n:"2002",v:"2002"},{n:"2001",v:"2001"},{n:"2000",v:"2000"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[2]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u6050\u6016",v:"\u6050\u6016"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u8B66\u532A",v:"\u8B66\u532A"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u6B66\u4FA0",v:"\u6B66\u4FA0"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u67AA\u6218",v:"\u67AA\u6218"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u60CA\u609A",v:"\u60CA\u609A"},{n:"\u7ECF\u5178",v:"\u7ECF\u5178"},{n:"\u9752\u6625",v:"\u9752\u6625"},{n:"\u6587\u827A",v:"\u6587\u827A"},{n:"\u5FAE\u7535\u5F71",v:"\u5FAE\u7535\u5F71"},{n:"\u5386\u53F2",v:"\u5386\u53F2"}]},{key:"area",name:"",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:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u5370\u5EA6",v:"\u5370\u5EA6"},{n:"\u610F\u5927\u5229",v:"\u610F\u5927\u5229"},{n:"\u52A0\u62FF\u5927",v:"\u52A0\u62FF\u5927"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{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:"2004",v:"2004"},{n:"2003",v:"2003"},{n:"2002",v:"2002"},{n:"2001",v:"2001"},{n:"2000",v:"2000"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[3]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u60C5\u611F",v:"\u60C5\u611F"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u70ED\u8840",v:"\u70ED\u8840"},{n:"\u63A8\u7406",v:"\u63A8\u7406"},{n:"\u641E\u7B11",v:"\u641E\u7B11"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u841D\u8389",v:"\u841D\u8389"},{n:"\u6821\u56ED",v:"\u6821\u56ED"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u673A\u6218",v:"\u673A\u6218"},{n:"\u8FD0\u52A8",v:"\u8FD0\u52A8"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u5C11\u5E74",v:"\u5C11\u5E74"},{n:"\u5C11\u5973",v:"\u5C11\u5973"},{n:"\u793E\u4F1A",v:"\u793E\u4F1A"},{n:"\u539F\u521B",v:"\u539F\u521B"},{n:"\u4EB2\u5B50",v:"\u4EB2\u5B50"},{n:"\u76CA\u667A",v:"\u76CA\u667A"},{n:"\u52B1\u5FD7",v:"\u52B1\u5FD7"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u4E2D\u56FD\u5927\u9646",v:"\u4E2D\u56FD\u5927\u9646"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{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:"2004",v:"2004"},{n:"2003",v:"2003"},{n:"2002",v:"2002"},{n:"2001",v:"2001"},{n:"2000",v:"2000"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[5]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u7537\u9891",v:"+\u7537\u9891"},{n:"\u5973\u9891",v:"\u5973\u9891"},{n:"\u90FD\u5E02",v:"\u90FD\u5E02"},{n:"\u751C\u5BA0",v:"\u751C\u5BA0"},{n:"\u5E74\u4EE3",v:"\u5E74\u4EE3"},{n:"\u7A7F\u8D8A",v:"\u7A7F\u8D8A"},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u4EB2\u60C5",v:"\u4EB2\u60C5"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u840C\u5B9D",v:"\u840C\u5B9D"},{n:"\u91CD\u751F",v:"\u91CD\u751F"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u9006\u88AD",v:"\u9006\u88AD"},{n:"\u8650\u604B",v:"\u8650\u604B"},{n:"\u9274\u5B9D",v:"\u9274\u5B9D"},{n:"\u590D\u4EC7",v:"\u590D\u4EC7"},{n:"\u4FEE\u4ED9",v:"\u4FEE\u4ED9"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u4E2D\u56FD\u5927\u9646",v:"\u4E2D\u56FD\u5927\u9646"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{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:"2004",v:"2004"},{n:"2003",v:"2003"},{n:"2002",v:"2002"},{n:"2001",v:"2001"},{n:"2000",v:"2000"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[4]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u9009\u79C0",v:"\u9009\u79C0"},{n:"\u60C5\u611F",v:"\u60C5\u611F"},{n:"\u8BBF\u8C08",v:"\u8BBF\u8C08"},{n:"\u64AD\u62A5",v:"\u64AD\u62A5"},{n:"\u65C5\u6E38",v:"\u65C5\u6E38"},{n:"\u97F3\u4E50",v:"\u97F3\u4E50"},{n:"\u7F8E\u98DF",v:"\u7F8E\u98DF"},{n:"\u7EAA\u5B9E",v:"\u7EAA\u5B9E"},{n:"\u66F2\u827A",v:"\u66F2\u827A"},{n:"\u751F\u6D3B",v:"\u751F\u6D3B"},{n:"\u6E38\u620F\u4E92\u52A8",v:"\u6E38\u620F\u4E92\u52A8"},{n:"\u8D22\u7ECF",v:"\u8D22\u7ECF"},{n:"\u6C42\u804C",v:"\u6C42\u804C"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u4E2D\u56FD\u5927\u9646",v:"\u4E2D\u56FD\u5927\u9646"},{n:"\u4E2D\u56FD\u53F0\u6E7E",v:"\u4E2D\u56FD\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{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:"2004",v:"2004"},{n:"2003",v:"2003"},{n:"2002",v:"2002"},{n:"2001",v:"2001"},{n:"2000",v:"2000"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[21]=[{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],{class:r,filters:n}}async function K1r(t,e){let r=await t6(t.server),n=t.body.id,s=t.body.page,i=t.body.filters||{},a=s||1;a==0&&(a=1);let o=r+"/index.php/vod/show";i.area&&(o+=`/area/${i.area}`);let c=i.by||i.sort;c&&(o+=`/by/${c}`),i.class&&(o+=`/class/${i.class}`),o+=`/id/${n}/page/${a}`,i.year&&(o+=`/year/${i.year}`),o+=".html";let u=await Ice(o,Gt),l=De(u),d=l("#main .module-item"),f=[];for(var p of d){let y=l(p).find(".module-item-pic a").attr("href"),g=l(p).find(".module-item-pic img").attr("alt"),b=l(p).find(".module-item-pic img").attr("data-src"),x=l(p).find(".module-item-text").text();f.push({vod_id:y,vod_name:g,vod_pic:b,vod_remarks:x})}let h=l("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(a)+1:parseInt(a);return{page:parseInt(a),pagecount:h,limit:72,total:72*h,list:f}}async function V1r(t,e){let r=await t6(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await Ice(r+i),o=De(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let p=o(f).text(),h=o(f).next().find("a").map((y,g)=>{let b=o(g).text().trim();return b||null}).get().filter(Boolean).join(", ");p.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():p.includes("\u5BFC\u6F14")?c.vod_director=h.trim():p.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,p)=>p.children[0].data).get(),d=await Xt(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls,c.vod_links=d.links),G1r({detail_url:r+i,html:a,parsed:{vod_name:c.vod_name||"",vod_pic:c.vod_pic||"",vod_content:c.vod_content||"",panUrls:Array.isArray(l)?l:[]}}),s.push(c)}return{list:s}}async function Y1r(t,e){let r=await t6(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await Ice(`${r}/index.php/vod/search/wd/${s}.html`),o=De(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var Gct={meta:{key:"ouge",name:"\u300C\u76D8\u300D\u6B27\u6B4C",type:3},api:async t=>{t.post("/init",lr),t.post("/home",z1r),t.post("/category",K1r),t.post("/detail",V1r),t.post("/play",er),t.post("/search",Y1r),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt)},check:t6};var J1r=["https://www.wexwp.cc","https://www.2xiaopan.top"],Cce=async t=>(await t.db.getObjectDefault("/erxiao",{}))?.urls||t.config.erxiao?.urls||J1r,X1r=async(t,e)=>{await t.db.push("/erxiao/urls",e)},Z1r=async t=>{await t.db.delete("/erxiao/urls")};async function Tce(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await Cce(e.server)})}),t.put("/urls",async(e,r)=>{await X1r(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await Z1r(e.server),r.send({code:0})})}var wce,r6=t=>{if(!wce){let e=Date.now();wce=new Promise(async r=>{let n=await Cce(t),s=await Zn(n);console.log("\u4E8C\u5C0F\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return wce},z1={url:"https://zf.do-u.de5.net/",key:"woleigedouer",sendTimeout:1200,receiveTimeout:1500};async function e_r(t){try{if(!z1.url)return;let e={"Content-Type":"application/json"};z1.key&&(e.Authorization=`Bearer ${z1.key}`),await fe(z1.url,{method:"POST",headers:e,data:JSON.stringify(t),sendTimeout:z1.sendTimeout||1200,receiveTimeout:z1.receiveTimeout||1500})}catch{}}async function Rce(t){return(await fe.get(t,{headers:{"User-Agent":Gt}})).data}async function t_r(t,e){let r=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"3",type_name:"\u52A8\u6F2B"},{type_id:"22",type_name:"\u771F\u5F69"},{type_id:"21",type_name:"\u7EFC\u827A"}],n={};return n[1]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u6050\u6016",v:"\u6050\u6016"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u8B66\u532A",v:"\u8B66\u532A"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u52A8\u753B",v:"\u52A8\u753B"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u6B66\u4FA0",v:"\u6B66\u4FA0"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u67AA\u6218",v:"\u67AA\u6218"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u60CA\u609A",v:"\u60CA\u609A"},{n:"\u7ECF\u5178",v:"\u7ECF\u5178"},{n:"\u9752\u6625",v:"\u9752\u6625"},{n:"\u6587\u827A",v:"\u6587\u827A"},{n:"\u5FAE\u7535\u5F71",v:"\u5FAE\u7535\u5F71"},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u8FD0\u52A8",v:"\u8FD0\u52A8"},{n:"\u519C\u6751",v:"\u519C\u6751"},{n:"\u513F\u7AE5",v:"\u513F\u7AE5"},{n:"\u7F51\u7EDC\u7535\u5F71",v:"\u7F51\u7EDC\u7535\u5F71"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{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:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u5370\u5EA6",v:"\u5370\u5EA6"},{n:"\u610F\u5927\u5229",v:"\u610F\u5927\u5229"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u52A0\u62FF\u5927",v:"\u52A0\u62FF\u5927"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",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"},{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"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[2]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u9752\u6625\u5076\u50CF",v:"\u9752\u6625\u5076\u50CF"},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u5BB6\u5EAD",v:"\u5BB6\u5EAD"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u7ECF\u5178",v:"\u7ECF\u5178"},{n:"\u4E61\u6751",v:"\u4E61\u6751"},{n:"\u60C5\u666F",v:"\u60C5\u666F"},{n:"\u5546\u6218",v:"\u5546\u6218"},{n:"\u7F51\u5267",v:"\u7F51\u5267"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5185\u5730",v:"\u5185\u5730"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65B0\u52A0\u5761",v:"\u65B0\u52A0\u5761"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",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"},{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"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[3]=[{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5185\u5730",v:"\u5185\u5730"},{n:"\u6E2F\u53F0",v:"\u6E2F\u53F0"},{n:"\u65E5\u97E9",v:"\u65E5\u97E9"},{n:"\u6B27\u7F8E",v:"\u6B27\u7F8E"}]},{key:"year",name:"",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"},{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"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[22]=[{key:"year",name:"",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"},{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"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[21]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u60C5\u611F",v:"\u60C5\u611F"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u70ED\u8840",v:"\u70ED\u8840"},{n:"\u63A8\u7406",v:"\u63A8\u7406"},{n:"\u641E\u7B11",v:"\u641E\u7B11"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u841D\u8389",v:"\u841D\u8389"},{n:"\u6821\u56ED",v:"\u6821\u56ED"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u673A\u6218",v:"\u673A\u6218"},{n:"\u8FD0\u52A8",v:"\u8FD0\u52A8"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u5C11\u5E74",v:"\u5C11\u5E74"},{n:"\u5C11\u5973",v:"\u5C11\u5973"},{n:"\u793E\u4F1A",v:"\u793E\u4F1A"},{n:"\u539F\u521B",v:"\u539F\u521B"},{n:"\u4EB2\u5B50",v:"\u4EB2\u5B50"},{n:"\u76CA\u667A",v:"\u76CA\u667A"},{n:"\u52B1\u5FD7",v:"\u52B1\u5FD7"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u56FD\u4EA7",v:"\u56FD\u4EA7"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u6B27\u7F8E",v:"\u6B27\u7F8E"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",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"},{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"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],{class:r,filters:n}}async function r_r(t,e){let r=await r6(t.server),n=t.body.id,s=t.body.page,i=t.body.filters||{},a=s||1;a==0&&(a=1);let o=r+"/index.php/vod/show";i.area&&(o+=`/area/${i.area}`);let c=i.by||i.sort;c&&(o+=`/by/${c}`),i.class&&(o+=`/class/${i.class}`),o+=`/id/${n}/page/${a}`,i.year&&(o+=`/year/${i.year}`),o+=".html";let u=await Rce(o,Gt),l=De(u),d=l("#main .module-item"),f=[];for(var p of d){let y=l(p).find(".module-item-pic a").attr("href"),g=l(p).find(".module-item-pic img").attr("alt"),b=l(p).find(".module-item-pic img").attr("data-src"),x=l(p).find(".module-item-text").text();f.push({vod_id:y,vod_name:g,vod_pic:b,vod_remarks:x})}let h=l("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(a)+1:parseInt(a);return{page:parseInt(a),pagecount:h,limit:72,total:72*h,list:f}}async function n_r(t,e){let r=await r6(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await Rce(r+i),o=De(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let p=o(f).text(),h=o(f).next().find("a").map((y,g)=>{let b=o(g).text().trim();return b||null}).get().filter(Boolean).join(", ");p.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():p.includes("\u5BFC\u6F14")?c.vod_director=h.trim():p.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,p)=>p.children[0].data).get(),d=await Xt(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls,c.vod_links=d.links),e_r({detail_url:r+i,html:a,parsed:{vod_name:c.vod_name||"",vod_pic:c.vod_pic||"",vod_content:c.vod_content||"",panUrls:Array.isArray(l)?l:[]}}),s.push(c)}return{list:s}}async function s_r(t,e){let r=await r6(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await Rce(`${r}/index.php/vod/search/wd/${s}.html`),o=De(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var zct={meta:{key:"erxiao",name:"\u300C\u76D8\u300D\u4E8C\u5C0F",type:3},api:async t=>{t.post("/init",lr),t.post("/home",t_r),t.post("/category",r_r),t.post("/detail",n_r),t.post("/play",er),t.post("/search",s_r),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt)},check:r6};var i_r="https://img.icons8.com/fluency/96/folder-invoices--v1.png",a_r="https://img.icons8.com/color/48/video.png",o_r="https://img.icons8.com/color/48/file.png",c_r=[".mp4",".mkv",".webm",".avi",".wmv",".flv",".mov",".mpeg",".mpg",".m4v",".ts",".m2ts",".3gp",".rm",".rmvb",".iso"],u_r=[".srt",".ass",".scc",".stl",".ttml"];async function l_r(t,e){let r=globalThis.getPanName?await globalThis.getPanName(t):"";return String(r||e)}function Kct(t){return t?.dir===!0||t?.dir===1||t?.type==="dir"||t?.type==="folder"}function Vct(t){let e=String(t?.file_name||"").toLowerCase();return t?.obj_category==="video"||c_r.some(r=>e.endsWith(r))}function d_r(t){let e=String(t?.file_name||"").toLowerCase();return u_r.some(r=>e.endsWith(r))}function f_r(t,e){return`folder@@@${t}@@@${e}`}function p_r(t){let e=["own","",t.fid,"",t.subtitle?t.subtitle.fid:"",t.subtitle&&t.subtitle.share_fid_token||""];return`file@@@${t.file_name}@@@${e.join("*")}`}async function m_r(t,e,r=1){let n=[],s=[],i=await i5e(t,e||"0",r);i.forEach(o=>{let c=Kct(o),u=o.file===!0||o.file===1||o.type==="file";if(!c){if(u&&Vct(o)){if(Number(o.size||0)<1024*1024*5)return;n.push(o);return}u&&d_r(o)&&s.push(o)}}),s.length>0&&n.forEach(o=>{let c=Tl({name:o.file_name},s.map(u=>({...u,name:u.file_name})));c.bestMatch&&(o.subtitle=c.bestMatch.target)});let a=[];return i.forEach(o=>{let c=Kct(o);if(!c&&!Vct(o))return;let u=String(o.file_name||"\u672A\u77E5").trim()||"\u672A\u77E5",l=o_r;c?l=i_r:l=a_r,a.push({vod_id:c?f_r(u,o.fid):p_r(o),vod_name:u,vod_pic:l,vod_remarks:c?"\u76EE\u5F55":Xi(Number(o.size||0)),...c?{cate:{id:o.fid,name:u}}:{},ratio:1.33})}),{rawCount:i.length,list:a}}async function h_r(t,e){return await $I(t),{}}async function g_r(t,e){return{class:[{type_id:"0",type_name:"\u6211\u7684\u5938\u514B\u7F51\u76D8"}]}}async function y_r(t,e){let r=String(t.body.id||"0");r.startsWith("folder@@@")&&(r=r.split("@@@")[2]||"0");let n=Number.parseInt(t.body.page,10)||1,{rawCount:s,list:i}=await m_r(t,r==="0"?"0":r,n);return{page:n,pagecount:s>=200?n+1:n,limit:200,total:9999,list:i}}async function A_r(t,e){let r=String(t.body.id||""),n=r.split("@@@"),s=n[1]||"\u89C6\u9891\u64AD\u653E",i=n[2]||"",a=await l_r("quark","\u5938\u514B");return{list:[{vod_id:r,vod_name:s,vod_content:`\u6587\u4EF6\u540D: ${s}`,vod_play_from:a,vod_play_url:`${a}$${i}`}]}}async function x_r(t,e){return await V4(t,e)}async function b_r(t,e){return{page:1,pagecount:1,list:[]}}async function __r(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);if(n.init=s.json(),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),n.home?.class?.length){s=await t.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 t.server.inject().post(`${r}/detail`).payload({id:i.vod_id}),n.detail=s.json())}return n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var Yct={meta:{key:"myquark",name:"\u300C\u76D8\u300D\u5938\u514B",type:3},api:async t=>{t.post("/init",h_r),t.post("/home",g_r),t.post("/category",y_r),t.post("/detail",A_r),t.post("/play",x_r),t.post("/search",b_r),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",K4),t.get("/test",__r)}};var E_r="https://img.icons8.com/fluency/96/folder-invoices--v1.png",v_r="https://img.icons8.com/color/48/video.png",S_r="https://img.icons8.com/color/48/file.png",I_r=[".mp4",".mkv",".webm",".avi",".wmv",".flv",".mov",".mpeg",".mpg",".m4v",".ts",".m2ts",".3gp",".rm",".rmvb",".iso"],C_r=[".srt",".ass",".scc",".stl",".ttml"];async function T_r(t,e){let r=globalThis.getPanName?await globalThis.getPanName(t):"";return String(r||e)}function w_r(t){return t?.type==="folder"}function Jct(t){let e=`.${String(t?.file_extension||"").toLowerCase()}`;return t?.category==="video"||I_r.includes(e)}function R_r(t,e){return`folder@@@${t}@@@${e}`}function N_r(t){return`file@@@${t.name}@@@own*${t.file_id}*${t.subtitle?t.subtitle.file_id:""}`}async function O_r(t,e){let r=[],n=[],s=[],i="";do{let o=await HLe(t,e||"root",i);s.push(...Array.isArray(o.items)?o.items:[]),i=String(o.next_marker||"")}while(i);s.forEach(o=>{if(o.type==="file"&&Jct(o)){if(Number(o.size||0)<1024*1024*5)return;r.push(o);return}let c=String(o.file_extension||"").toLowerCase();o.type==="file"&&C_r.some(u=>c.endsWith(u))&&n.push(o)}),n.length>0&&r.forEach(o=>{let c=Tl(o,n);c.bestMatch&&(o.subtitle=c.bestMatch.target)});let a=[];return s.forEach(o=>{let c=w_r(o);if(!c&&!Jct(o))return;let u=String(o.name||"\u672A\u77E5").trim()||"\u672A\u77E5",l=S_r;c?l=E_r:l=v_r,a.push({vod_id:c?R_r(u,o.file_id):N_r(o),vod_name:u,vod_pic:l,vod_remarks:c?"\u76EE\u5F55":Xi(Number(o.size||0)),...c?{cate:{id:o.file_id,name:u}}:{},ratio:1.33})}),a}async function k_r(t,e){return await WI(t),{}}async function P_r(t,e){return{class:[{type_id:"root",type_name:"\u6211\u7684\u963F\u91CC\u7F51\u76D8"}]}}async function D_r(t,e){let r=String(t.body.id||"root");r.startsWith("folder@@@")&&(r=r.split("@@@")[2]||"root");let n=Number.parseInt(t.body.page,10)||1,s=await O_r(t,r||"root");return{page:n,pagecount:1,limit:s.length,total:s.length,list:s}}async function B_r(t,e){let r=String(t.body.id||""),n=r.split("@@@"),s=n[1]||"\u89C6\u9891\u64AD\u653E",i=n[2]||"",a=await T_r("ali","\u963F\u91CC");return{list:[{vod_id:r,vod_name:s,vod_content:`\u6587\u4EF6\u540D: ${s}`,vod_play_from:a,vod_play_url:`${a}$${i}`}]}}async function L_r(t,e){return await H4(t,e)}async function M_r(t,e){return{page:1,pagecount:1,list:[]}}async function W_r(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);if(n.init=s.json(),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),n.home?.class?.length){s=await t.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 t.server.inject().post(`${r}/detail`).payload({id:i.vod_id}),n.detail=s.json())}return n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var Xct={meta:{key:"myali",name:"\u300C\u76D8\u300D\u963F\u91CC",type:3},api:async t=>{t.post("/init",k_r),t.post("/home",P_r),t.post("/category",D_r),t.post("/detail",B_r),t.post("/play",L_r),t.post("/search",M_r),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Q4),t.get("/test",W_r)}};var eut="https://img.icons8.com/fluency/96/folder-invoices--v1.png",$_r="https://img.icons8.com/color/48/video.png",U_r=[".mp4",".mkv",".webm",".avi",".wmv",".flv",".mov",".mpeg",".mpg",".m4v",".ts",".m2ts",".3gp",".rm",".rmvb",".iso"],n6=100,F_r=5,q_r="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36";async function Zct(t,e){let r=globalThis.getPanName?await globalThis.getPanName(t):"";return String(r||e)}function j_r(t){if(Number(t?.mediaType)===3)return!0;let e=String(t?.name||t?.fileName||"").toLowerCase();return U_r.some(r=>e.endsWith(r))}function Nce(t){return String(t?.name||t?.fileName||"\u672A\u77E5").trim()||"\u672A\u77E5"}function Oce(t){return String(t?.id||t?.fileId||t?.folderId||t?.fileID||t?.fId||"")}function Q_r(t){return Number(t?.size||t?.fileSize||0)}function H_r(t,e){return`folder@@@${t}@@@${e}`}function G_r(t){return`file@@@${Nce(t)}@@@own*${Oce(t)}`}function z_r(t){return String(t?.vod_id||"").startsWith("file@@@")}function K_r(t){let e=String(t?.vod_id||"").split("@@@"),r=e[1]||t?.vod_name||"\u89C6\u9891\u64AD\u653E",n=e[2]||"";return n?`${r}$${n}`:""}function kce(t,e=4,r=4){let n=String(t||"").trim();return n?n.length<=e+r+1?n:`${n.slice(0,e)}...${n.slice(-r)}`:""}function V_r(t){return kce(t,36,10)}async function tut(t,e="-11",r=1){await Wb(t);let n=await _f.listOwnFiles(e,r,n6),s=[];return(n.folderList||[]).forEach(i=>{let a=Oce(i);if(!a)return;let o=Nce(i);s.push({vod_id:H_r(o,a),vod_name:o,vod_pic:eut,vod_remarks:"\u76EE\u5F55",cate:{id:a,name:o},ratio:1.33})}),(n.fileList||[]).forEach(i=>{if(!Oce(i)||!j_r(i))return;let a=Nce(i);s.push({vod_id:G_r(i),vod_name:a,vod_pic:$_r,vod_remarks:Xi(Q_r(i)),ratio:1.33})}),{rawCount:Number(n.count||0),list:s}}async function Y_r(t,e){return await Wb(t),{}}async function J_r(t,e){return{class:[{type_id:"-11",type_name:"\u6211\u7684\u5929\u7FFC\u4E91\u76D8"}]}}async function X_r(t,e){let r=String(t.body.id||"-11");r.startsWith("folder@@@")&&(r=r.split("@@@")[2]||"-11");let n=Number.parseInt(t.body.page,10)||1,{rawCount:s,list:i}=await tut(t,r||"-11",n);return{page:n,pagecount:s>=n6?n+1:n,limit:n6,total:9999,list:i}}async function Z_r(t,e){let r=String(t.body.id||"");if(r.startsWith("folder@@@")){let o=r.split("@@@"),c=o[1]||"\u76EE\u5F55",u=o[2]||"-11",l=[],d=1;for(;d<=F_r;){let{rawCount:f,list:p}=await tut(t,u,d);if(l.push(...p.filter(z_r)),f0){let f=await Zct("tianyi","\u5929\u7FFC");return{list:[{vod_id:r,vod_name:c,vod_pic:eut,vod_remarks:`${l.length}\u4E2A\u89C6\u9891`,vod_content:`\u76EE\u5F55: ${c}`,vod_play_from:f,vod_play_url:l.map(K_r).filter(Boolean).join("#")}]}}return{list:[{vod_id:r,vod_name:c,vod_remarks:"\u76EE\u5F55",vod_content:"\u5F53\u524D\u76EE\u5F55\u6CA1\u6709\u53EF\u64AD\u653E\u89C6\u9891"}]}}let n=r.split("@@@"),s=n[1]||"\u89C6\u9891\u64AD\u653E",i=n[2]||"",a=await Zct("tianyi","\u5929\u7FFC");return{list:[{vod_id:r,vod_name:s,vod_remarks:"",vod_content:`\u6587\u4EF6\u540D: ${s}`,vod_play_from:a,vod_play_url:`${a}$${i}`}]}}async function eEr(t,e){await Wb(t);let r=Date.now(),n=String(t.body.id||""),s=n.split("*"),i=kce(n,8,6),a=kce(s[1],4,4);if(console.log("[mytianyi][play] request",{rawId:i,source:s[0]||"",fileId:a}),s[0]!=="own"||!s[1])return console.warn("[mytianyi][play] invalid params",{rawId:i,source:s[0]||"",hasFileId:!!s[1]}),{parse:0,url:"",msg:"\u5929\u7FFC\u64AD\u653E\u53C2\u6570\u9519\u8BEF"};try{let o=await _f.getOwnDownload(s[1]),c=String(o?.url||"").trim();return c?(console.log("[mytianyi][play] success",{fileId:a,hasCookie:!!o?.cookie,resCode:o?.data?.res_code,urlPreview:V_r(c),costMs:Date.now()-r}),{parse:0,url:["\u539F\u753B",c],header:{"User-Agent":q_r}}):(console.warn("[mytianyi][play] empty download url",{fileId:a,hasCookie:!!o?.cookie,resCode:o?.data?.res_code,resMsg:o?.data?.res_message||"",costMs:Date.now()-r}),{parse:0,url:"",msg:"\u5929\u7FFC\u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740"})}catch(o){return console.error("[mytianyi][play] failed",{fileId:a,rawId:i,costMs:Date.now()-r,message:String(o?.message||o),stack:String(o?.stack||"").split(` +`).slice(0,2).join(" | ")}),{parse:0,url:"",msg:`\u5929\u7FFC\u63A5\u53E3\u5F02\u5E38: ${o?.message||o}`}}}async function tEr(t,e){return{page:1,pagecount:1,list:[]}}async function rEr(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);if(n.init=s.json(),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),n.home?.class?.length){s=await t.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 t.server.inject().post(`${r}/detail`).payload({id:i.vod_id}),n.detail=s.json())}return n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var rut={meta:{key:"mytianyi",name:"\u300C\u76D8\u300D\u5929\u7FFC",type:3},api:async t=>{t.post("/init",Y_r),t.post("/home",J_r),t.post("/category",X_r),t.post("/detail",Z_r),t.post("/play",eEr),t.post("/search",tEr),t.get("/test",rEr)}};var nEr="https://img.icons8.com/fluency/96/folder-invoices--v1.png",sEr="https://img.icons8.com/color/48/video.png",iEr=[".mp4",".mkv",".webm",".avi",".wmv",".flv",".mov",".mpeg",".mpg",".m4v",".ts",".m2ts",".3gp",".rm",".rmvb",".iso"];async function aEr(t,e){let r=globalThis.getPanName?await globalThis.getPanName(t):"";return String(r||e)}function oEr(t){return encodeURIComponent(String(t||""))}function cEr(t){return Number(t?.isdir)===1||Number(t?.category)===6}function uEr(t){if(Number(t?.category)===1)return!0;let e=String(t?.server_filename||t?.path||"").toLowerCase();return iEr.some(r=>e.endsWith(r))}function nut(t){return String(t?.server_filename||t?.path?.split("/").pop()||"\u672A\u77E5").trim()||"\u672A\u77E5"}function lEr(t,e){return`folder@@@${t}@@@${e}`}function dEr(t){let e=nut(t),r=String(t?.fs_id||t?.fsid||""),n=String(t?.path||"");return`file@@@${e}@@@own*${r}*${oEr(n)}`}async function fEr(t,e="/",r=1){let{list:n,rawCount:s}=await t$e(t,e||"/",r);return{rawCount:s,list:n.reduce((i,a)=>{let o=cEr(a);if(!o&&!uEr(a))return i;let c=nut(a);return i.push({vod_id:o?lEr(c,String(a?.path||"/")):dEr(a),vod_name:c,vod_pic:o?nEr:sEr,vod_remarks:o?"\u76EE\u5F55":Xi(Number(a?.size||0)),...o?{cate:{id:String(a?.path||"/"),name:c}}:{},ratio:1.33}),i},[])}}async function pEr(t,e){return await $b(t),{}}async function mEr(t,e){return{class:[{type_id:"/",type_name:"\u6211\u7684\u767E\u5EA6\u7F51\u76D8"}]}}async function hEr(t,e){let r=String(t.body.id||"/");r.startsWith("folder@@@")&&(r=r.split("@@@")[2]||"/");let n=Number.parseInt(t.body.page,10)||1,{rawCount:s,list:i}=await fEr(t,r||"/",n);return{page:n,pagecount:s>=200?n+1:n,limit:200,total:9999,list:i}}async function gEr(t,e){let r=String(t.body.id||"");if(r.startsWith("folder@@@"))return{list:[{vod_id:r,vod_name:r.split("@@@")[1]||"\u76EE\u5F55",vod_remarks:"\u76EE\u5F55"}]};let n=r.split("@@@"),s=n[1]||"\u89C6\u9891\u64AD\u653E",i=n[2]||"",a=await aEr("baidu","\u767E\u5EA6");return{list:[{vod_id:r,vod_name:s,vod_remarks:"",vod_content:`\u6587\u4EF6\u540D: ${s}`,vod_play_from:a,vod_play_url:`${a}$${i}`}]}}async function yEr(t,e){return await UB(t,e)}async function AEr(t,e){return{page:1,pagecount:1,list:[]}}async function xEr(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);if(n.init=s.json(),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),n.home?.class?.length){s=await t.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 t.server.inject().post(`${r}/detail`).payload({id:i.vod_id}),n.detail=s.json())}return n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var sut={meta:{key:"mybaidu",name:"\u300C\u76D8\u300D\u767E\u5EA6",type:3},api:async t=>{t.post("/init",pEr),t.post("/home",mEr),t.post("/category",hEr),t.post("/detail",gEr),t.post("/play",yEr),t.post("/search",AEr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",FB),t.get("/test",xEr)}};var bEr="115Drive",iut="https://img.icons8.com/fluency/96/folder-invoices--v1.png",_Er="https://img.icons8.com/color/48/video.png",EEr={"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"};async function vEr(t,e="0",r=1){let n=await X0(t);if(!n)return{list:[],count:0};let s=Number.parseInt(r,10)||1,i=115,a=(s-1)*i,o=`https://webapi.115.com/files?aid=1&cid=${encodeURIComponent(e)}&o=user_ptime&asc=0&offset=${a}&show_dir=1&limit=${i}&code=&scid=&snap=0&natsort=1&record_open_time=1&source=&format=json`;try{let u=(await fe.get(o,{headers:{...EEr,Cookie:n}}))?.data;if(u?.state)return{list:Array.isArray(u.data)?u.data:[],count:Number.parseInt(u.count,10)||0}}catch(c){console.error("[my115] list error:",c.message)}return{list:[],count:0}}function SEr(t){return encodeURIComponent(String(t||""))}function IEr(t){try{return decodeURIComponent(String(t||""))}catch{return String(t||"")}}function CEr(t,e,r){return`LOCAL###${t}###${SEr(e)}###${r}`}function aut(t){let e=String(t||"");if(!e.startsWith("LOCAL###"))return{id:e,name:"115\u8D44\u6E90",value:e,kind:"file",isOwn:!1};let r=e.split("###");if(r.length>=4&&["dir","file"].includes(r[1]))return{id:e,kind:r[1],name:IEr(r[2])||"115\u8D44\u6E90",value:r.slice(3).join("###"),isOwn:!0};let[,n="115\u8D44\u6E90",s=""]=r;return{id:e,name:n,value:s,kind:/^\d+$/.test(s)?"dir":"file",isOwn:!0}}function TEr(t){let e=Number(t.fc)===0,r=String(t.n||t.name||"\u672A\u77E5").trim()||"\u672A\u77E5",n=String(e?t.cid||"":t.pc||t.pick_code||"");return{vod_id:CEr(e?"dir":"file",r,n),vod_name:r,vod_pic:e?iut:_Er,vod_remarks:e?"\u76EE\u5F55":Xi(Number(t.s||t.size||0)),...e?{cate:{id:n,name:r}}:{},ratio:1.33}}async function wEr(t,e){return{}}async function REr(t,e){return{class:[{type_id:"0",type_name:"\u6211\u7684115\u7F51\u76D8"}]}}async function NEr(t,e){let r=String(t.body.id||"0");r.startsWith("LOCAL###")&&(r=aut(r).value||"0");let n=Number.parseInt(t.body.page,10)||1,{list:s,count:i}=await vEr(t.server,r,n);return{page:n,pagecount:Math.max(1,Math.ceil(i/115)),limit:115,total:i,list:s.map(TEr)}}async function OEr(t,e){return{list:(Array.isArray(t.body.id)?t.body.id:[t.body.id]).map(s=>{let i=aut(s);return i.isOwn?i.kind==="dir"?{vod_id:i.id,vod_name:i.name||"\u76EE\u5F55",vod_pic:iut,vod_remarks:"\u76EE\u5F55",vod_content:`\u76EE\u5F55: ${i.name||"115\u8D44\u6E90"}`}:{vod_id:i.id,vod_name:i.name,vod_content:`\u6587\u4EF6\u540D: ${i.name}`,vod_play_from:bEr,vod_play_url:`OWN$${i.value}`}:{vod_id:i.id,vod_name:"115\u8D44\u6E90"}})}}async function kEr(t,e){let r=String(t.body.id||"").trim(),n=r.startsWith("OWN$")?r.slice(4):r;return n?await WB(t.server,n):{parse:0,url:"",msg:"115 \u64AD\u653E\u53C2\u6570\u9519\u8BEF"}}async function PEr(t,e){return{page:1,pagecount:1,list:[]}}async function DEr(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);if(n.init=s.json(),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),n.home?.class?.length){s=await t.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?.[0];i?.vod_id&&(s=await t.server.inject().post(`${r}/detail`).payload({id:i.vod_id}),n.detail=s.json())}return n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var out={meta:{key:"my115",name:"\u300C\u76D8\u300D115",type:3},api:async t=>{t.post("/init",wEr),t.post("/home",REr),t.post("/category",NEr),t.post("/detail",OEr),t.post("/play",kEr),t.post("/search",PEr),t.get("/test",DEr)}};var BEr="https://img.icons8.com/fluency/96/folder-invoices--v1.png",LEr="https://img.icons8.com/color/48/video.png",MEr=[".mp4",".mkv",".webm",".avi",".wmv",".flv",".mov",".mpeg",".mpg",".m4v",".ts",".m2ts",".3gp",".rm",".rmvb",".iso"];async function WEr(t,e){let r=globalThis.getPanName?await globalThis.getPanName(t):"";return String(r||e)}function $Er(t){try{return decodeURIComponent(String(t||""))}catch{return String(t||"")}}function UEr(t){return t?.data??t??{}}function FEr(t){let e=UEr(t);return[e.InfoList,e.infoList,e.list,t?.InfoList,t?.infoList,t?.list].find(n=>Array.isArray(n))||[]}function Dce(t){return String(t?.FileName||t?.file_name||t?.name||"\u672A\u77E5").trim()||"\u672A\u77E5"}function Pce(t){return String(t?.FileId||t?.fileId||t?.file_id||"")}function cut(t){return Number(t?.Size||t?.size||0)}function qEr(t){return String(t?.S3KeyFlag||t?.s3KeyFlag||"")}function jEr(t){return String(t?.Etag||t?.etag||"")}function QEr(t){return Number(t?.Category)===0||Number(t?.Type)===1||t?.type==="folder"}function HEr(t){let e=Dce(t).toLowerCase();return Number(t?.Category)===2||MEr.some(r=>e.endsWith(r))}function GEr(t,e){return`folder@@@${t}@@@${e}`}function zEr(t){let e=Dce(t),r=["own",Pce(t),qEr(t),String(cut(t)),jEr(t),encodeURIComponent(e)];return`file@@@${e}@@@${r.join("*")}`}async function KEr(t,e="0"){await J0(t);let r=await ai.getrootmyfile(e||"0"),n=FEr(r),s=[];return n.forEach(i=>{let a=QEr(i);if(!a&&!HEr(i))return;let o=Dce(i);s.push({vod_id:a?GEr(o,Pce(i)):zEr(i),vod_name:o,vod_pic:a?BEr:LEr,vod_remarks:a?"\u76EE\u5F55":Xi(cut(i)),...a?{cate:{id:Pce(i),name:o}}:{},ratio:1.33})}),s}async function VEr(t,e){return await J0(t),{}}async function YEr(t,e){return{class:[{type_id:"0",type_name:"\u6211\u7684123\u7F51\u76D8"}]}}async function JEr(t,e){let r=String(t.body.id||"0");r.startsWith("folder@@@")&&(r=r.split("@@@")[2]||"0");let n=Number.parseInt(t.body.page,10)||1,s=await KEr(t,r||"0");return{page:n,pagecount:1,limit:s.length,total:s.length,list:s}}async function XEr(t,e){let r=String(t.body.id||""),n=r.split("@@@"),s=n[1]||"\u89C6\u9891\u64AD\u653E",i=n[2]||"",a=await WEr("123","123");return{list:[{vod_id:r,vod_name:s,vod_content:`\u6587\u4EF6\u540D: ${s}`,vod_play_from:a,vod_play_url:`${a}$${i}`}]}}async function ZEr(t,e){let r=String(t.body.id||"").split("*");if(r[0]!=="own"||r.length<5)return{parse:0,url:"",msg:"123 \u64AD\u653E\u53C2\u6570\u9519\u8BEF"};await J0(t);try{let n=await ai.getmyDownload(r[1],r[2],r[3],r[4],$Er(r[5]||""));return n?{parse:0,url:["\u539F\u753B",n]}:{parse:0,url:"",msg:"123 \u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740"}}catch(n){return{parse:0,url:"",msg:`123 \u63A5\u53E3\u5F02\u5E38: ${n?.message||n}`}}}async function evr(t,e){return{page:1,pagecount:1,list:[]}}async function tvr(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);if(n.init=s.json(),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),n.home?.class?.length){s=await t.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 t.server.inject().post(`${r}/detail`).payload({id:i.vod_id}),n.detail=s.json())}return n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var uut={meta:{key:"my123",name:"\u300C\u76D8\u300D123",type:3},api:async t=>{t.post("/init",VEr),t.post("/home",YEr),t.post("/category",JEr),t.post("/detail",XEr),t.post("/play",ZEr),t.post("/search",evr),t.get("/test",tvr)}};var fut="https://pan1.me";function lut(t,e){return Object.prototype.hasOwnProperty.call(t||{},e)}function put(t){return String(t||"").trim().replace(/\/+$/,"")||fut}var mut=async(t,e,r)=>{let n=await t.db.getObjectDefault("/123ypzysq",{});if(lut(n,e))return n[e];let s=t.config?.["123ypzysq"]||{};return lut(s,e)?s[e]:r},rvr=async t=>put(await mut(t,"url",fut)),nvr=async t=>String(await mut(t,"cookie","")||"").trim(),Bce=async t=>({url:await rvr(t),cookie:await nvr(t)}),dut=async(t,e,r)=>{await t.db.push(`/123ypzysq/${e}`,r)},svr=async t=>{await t.db.delete("/123ypzysq")};async function Lce(t){t.get("/config",async(e,r)=>{r.send({code:0,data:await Bce(e.server)})}),t.put("/config",async(e,r)=>{let n=e.body||{};await dut(e.server,"url",put(n.url)),await dut(e.server,"cookie",String(n.cookie||"").trim()),r.send({code:0})}),t.delete("/config",async(e,r)=>{await svr(e.server),r.send({code:0})})}var s6="https://pan1.me",ivr=["CATPAW_123YPZYSQ_COOKIE","PAN1_ME_COOKIE","YPZYSQ_COOKIE"],avr="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",ovr=/https?:\/\/[A-Za-z0-9._~:/?#[\]@!$&'()*+,;=%-]+/g,cvr=/(?:www\.)?(?:123684\.com|123865\.com|123912\.com|123pan\.com|123pan\.cn|123592\.com)/i,Aut=[{type_id:"2",type_name:"\u7535\u5F71"},{type_id:"48",type_name:"\u7535\u89C6\u5267"},{type_id:"37",type_name:"\u52A8\u6F2B"},{type_id:"52",type_name:"\u7EFC\u827A"},{type_id:"56",type_name:"4K\u539F\u76D8"}],hut=["\u54C8\u54C8\uFF0C\u4E0D\u9519\u54E6\uFF01","\u4E0D\u9519\u7684\u5E16\u5B50\uFF01","\u975E\u5E38\u68D2\uFF01\uFF01\uFF01","\u611F\u8C22\u5206\u4EAB,\u592A\u68D2\u4E86\uFF01","\u8FD9\u4E0D\u6B63\u662F\u6211\u82E6\u82E6\u5BFB\u627E\u7684\u8D44\u6E90\u5417\uFF01","\u597D\u4EBA\u4E00\u80CE\u751F\u5341\u4E2A\uFF01","\u770B\u5B8C\u697C\u4E3B\u7684\u8FD9\u4E2A\u5E16\u5B50\u4EE5\u540E\uFF0C\u6211\u7684\u5FC3\u4E45\u4E45\u4E0D\u80FD\u5E73\u9759\uFF0C\u9707\u64BC\u554A\uFF01","\u4E3A\u4EC0\u4E48\u4F1A\u6709\u5982\u6B64\u597D\u7684\u5E16\u5B50\uFF01","\u864E\u8EAF\u4E00\u9707\uFF0C\u4E09\u5206\u8D70\u4EBA\u3002","\u6E2F\uFF0C\u662F\u4E00\u79CD\u7F8E\u5FB7\u3002","\u6D41\u6C13\u5E76\u4E0D\u53EF\u6015\uFF0C\u53EF\u6015\u7684\u662F\u6D41\u6C13\u6709\u6587\u5316\u3002","\u597D\u4EBA\u4E00\u80CE\u751F10086\u4E2A"];function cp(t){return String(t||"").replace(/\s+/g," ").trim()}async function Mce(t){let e=await Bce(t.server).catch(()=>({url:s6,cookie:""})),r=String(e.url||s6).trim().replace(/\/+$/,""),n=ivr.map(s=>process.env[s]).find(Boolean);return{baseUrl:r||s6,cookie:String(e.cookie||n||"").trim()}}function uvr(t,e=!1){let r={"User-Agent":avr,Referer:t.baseUrl,Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8"};return e&&(r.Origin=t.baseUrl,r["X-Requested-With"]="XMLHttpRequest",r["Content-Type"]="application/x-www-form-urlencoded"),t.cookie&&(r.Cookie=t.cookie),r}function xut(t,e=s6){let r=String(t||"").trim();return r?new URL(r,e).toString():""}async function Iw(t,e,r,n={}){let s=await fe.request({url:xut(t,r.baseUrl),method:n.method||"GET",headers:uvr(r,n.ajax),data:n.data||void 0});return String(s?.data||"")}function but(t){let e=String(t||"");return e.match(/thread-(\d+)/)?.[1]||e.match(/^\d+$/)?.[0]||""}function _ut(t){let e=De(t),r=[];return e("li.media.thread.tap").each((n,s)=>{let i=e(s),a=i.find('a[href*="thread-"]').first(),o=cp(a.text()),c=i.attr("data-tid")||but(a.attr("href"));if(!o||!c)return;let u=cp(i.find(".date.text-grey").text()),l=i.find("a.badge.badge-pill.badge-dark").map((d,f)=>cp(e(f).text())).get().filter(Boolean).join(" / ");r.push({vod_id:c,vod_name:o,vod_remarks:[l,u].filter(Boolean).join(" \xB7 "),topRightRemarks:l})}),{$:e,list:r}}function Eut(t,e,r,n){let s=String(n||"").replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),i=r==="search"?new RegExp(`search-${s}-(\\d+)\\.htm`):new RegExp(`forum-${s}-(\\d+)\\.htm`),a=Number.parseInt(e,10)||1;return t("a[href]").each((o,c)=>{let u=String(t(c).attr("href")||""),l=Number.parseInt(u.match(i)?.[1]||"",10);Number.isFinite(l)&&(a=Math.max(a,l))}),a}function lvr(){return hut[Math.floor(Math.random()*hut.length)]}async function dvr(t,e,r){if(r.cookie)try{let n=new URLSearchParams({doctype:"1",return_html:"1",quotepid:"0",message:lvr()}).toString();await Iw(`/?post-create-${t}-1.htm`,e,r,{method:"POST",ajax:!0,data:n}),await new Promise(s=>setTimeout(s,500))}catch(n){console.warn("[123ypzysq] \u81EA\u52A8\u56DE\u590D\u5931\u8D25:",n?.message||n)}}function gut(t){return cp(t).match(/(?:æå–ç |è®¿é—®ç |å¯†ç |code)[::\s]*([A-Za-z0-9]{4})/i)?.[1]||""}function fvr(t){return String(t||"").replace(/&/g,"&").replace(/[)\])】,,。;;\s]+$/g,"").trim()}function pvr(t,e){try{let r=new URL(t);return r.searchParams.has("pwd")||r.searchParams.set("pwd",e),r.toString()}catch{let n=t.includes("?")?"&":"?";return`${t}${n}pwd=${encodeURIComponent(e)}`}}function yut(t,e){let r=fvr(t);return cvr.test(r)?e?pvr(r,e):r:""}function mvr(t){let e=t(".alert.alert-success").length?t(".alert.alert-success"):t(".post, .message, body"),r=new Set;return e.each((n,s)=>{let i=t(s),a=i.text(),o=gut(a);i.find("a[href]").each((c,u)=>{let l=t(u).attr("href"),d=gut(t(u).parent().text())||o,f=yut(l,d);f&&r.add(f)});for(let c of i.html()?.match(ovr)||[]){let u=yut(c,o);u&&r.add(u)}}),[...r]}function hvr(t,e,r){let n={vod_id:e,vod_name:cp(t(".movie-title").first().text())||cp(t("h1, h2, .title").first().text())||"123\u4E91\u76D8\u8D44\u6E90",vod_pic:xut(t(".movie-poster img").first().attr("src")||"",r),vod_content:cp(t(".plot-content").first().text())};return t(".detail-label").each((s,i)=>{let a=cp(t(i).text()),o=cp(t(i).next().text());o&&(a.includes("\u5E74\u4EFD")&&(n.vod_year=o),a.includes("\u7C7B\u578B")&&(n.vod_type=o),a.includes("\u5BFC\u6F14")&&(n.vod_director=o),a.includes("\u4E3B\u6F14")&&(n.vod_actor=o))}),n}async function gvr(t,e){return await lr(t,e),{}}async function yvr(t,e){return{class:Aut}}async function Avr(t,e){let r=String(t.body.id||Aut[0].type_id),n=Number.parseInt(t.body.page,10)||1,s=await Mce(t),i=await Iw(`/?forum-${r}-${n}.htm`,t,s),{$:a,list:o}=_ut(i);return{page:n,pagecount:Eut(a,n,"forum",r),limit:o.length,total:o.length,list:o}}async function xvr(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[],s=await Mce(t);for(let i of r){let a=but(i);if(!a)continue;let o=await Iw(`/?thread-${a}.htm`,t,s),c=De(o);c(".alert.alert-warning").text().includes("\u8BF7\u56DE\u590D\u540E\u518D\u67E5\u770B")&&(await dvr(a,t,s),o=await Iw(`/?thread-${a}.htm`,t,s),c=De(o));let u=hvr(c,a,s.baseUrl),l=mvr(c),d=l.length>0?await Xt(l,t):null;d?.froms&&d?.urls&&(u.vod_play_from=d.froms,u.vod_play_url=d.urls,u.vod_links=d.links),!u.vod_content&&l.length>0&&(u.vod_content=`\u5171\u53D1\u73B0${l.length}\u4E2A123\u7F51\u76D8\u94FE\u63A5`),n.push(u)}return{list:n}}async function bvr(t,e){let r=String(t.body.wd||"").trim(),n=Number.parseInt(t.body.page,10)||1;if(!r)return{page:n,pagecount:1,list:[]};let s=encodeURIComponent(r),i=await Mce(t),a=await Iw(`/?search-${s}-${n}.htm`,t,i),{$:o,list:c}=_ut(a);return{page:n,pagecount:Eut(o,n,"search",s),limit:c.length,total:c.length,list:c}}async function _vr(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/home`);if(n.home=s.json(),n.home?.class?.length){s=await t.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?.[0];i?.vod_id&&(s=await t.server.inject().post(`${r}/detail`).payload({id:i.vod_id}),n.detail=s.json())}return s=await t.server.inject().post(`${r}/search`).payload({wd:"\u4ED9\u9006",page:1}),n.search=s.json(),n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var vut={meta:{key:"123ypzysq",name:"\u300C\u76D8\u300D123\u793E\u533A",type:3},api:async t=>{t.post("/init",gvr),t.post("/home",yvr),t.post("/category",Avr),t.post("/detail",xvr),t.post("/play",er),t.post("/search",bvr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt),t.get("/test",_vr)}};var Cut="https://www.xn--rhqp87dfoiv9a830g.com";function Sut(t,e){return Object.prototype.hasOwnProperty.call(t||{},e)}function Tut(t){return String(t||"").trim().replace(/\/+$/,"")||Cut}var wut=async(t,e,r)=>{let n=await t.db.getObjectDefault("/guanying",{});if(Sut(n,e))return n[e];let s=t.config?.guanying||{};return Sut(s,e)?s[e]:r},Evr=async t=>Tut(await wut(t,"url",Cut)),vvr=async t=>String(await wut(t,"cookie","")||"").trim(),Wce=async t=>({url:await Evr(t),cookie:await vvr(t)}),Iut=async(t,e,r)=>{await t.db.push(`/guanying/${e}`,r)},Svr=async t=>{await t.db.delete("/guanying")};async function $ce(t){t.get("/config",async(e,r)=>{r.send({code:0,data:await Wce(e.server)})}),t.put("/config",async(e,r)=>{let n=e.body||{};await Iut(e.server,"url",Tut(n.url)),await Iut(e.server,"cookie",String(n.cookie||"").trim()),r.send({code:0})}),t.delete("/config",async(e,r)=>{await Svr(e.server),r.send({code:0})})}var i6="https://www.xn--rhqp87dfoiv9a830g.com",Ivr="https://s.tutu.pm/img",Cvr="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Tvr=["CATPAW_GUANYING_COOKIE","GUANYING_COOKIE"],wvr=12,Rut=36,Cw=30,Uce=48,Rvr=24e4,Nut="guanying_video@@@",Out="guanying_group@@@",kut="guanying_link@@@",Put=new Map,Tw=[{type_id:"mv",type_name:"\u7535\u5F71"},{type_id:"tv",type_name:"\u5267\u96C6"},{type_id:"ac",type_name:"\u52A8\u6F2B"}],Nvr=["\u7F8E\u56FD","\u5927\u9646","\u65E5\u672C","\u5267\u60C5","\u79D1\u5E7B","\u52A8\u4F5C","\u559C\u5267","\u7231\u60C5","\u5192\u9669","\u72AF\u7F6A","\u60AC\u7591","\u513F\u7AE5","\u6B4C\u821E","\u97F3\u4E50","\u5947\u5E7B","\u52A8\u753B","\u6050\u6016","\u60CA\u609A","\u4E27\u5C38","\u6218\u4E89","\u4F20\u8BB0","\u7EAA\u5F55","\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","\u840C\u7CFB","\u65E5\u5E38","\u70ED\u8840","\u673A\u6218","\u6E38\u620F","\u60C5\u8272","\u641E\u7B11","\u604B\u7231","\u540E\u5BAB","\u767E\u5408","\u57FA\u8150","\u81F4\u90C1","\u5F02\u4E16\u754C","\u6CE1\u9762","\u6218\u6597","\u52A0\u62FF\u5927","\u9999\u6E2F","\u53F0\u6E7E","\u97E9\u56FD","\u5370\u5EA6","\u5FB7\u56FD","\u6CD5\u56FD","\u82F1\u56FD","\u610F\u5927\u5229","\u5DF4\u897F","\u6CF0\u56FD","\u6FB3\u5927\u5229\u4E9A","\u8377\u5170","\u897F\u73ED\u7259","\u58A8\u897F\u54E5"],Ovr=["\u9884\u544A","\u9AD8\u6E05","\u6807\u6E05","\u4F4E\u6E05","\u62A2\u5148\u7248"];function bo(t){return String(t||"").replace(/<[^>]*>/g,"").replace(/\s+/g," ").trim()}function kvr(t){let e=String(t||"").trim();if(!e)return"";let r=e.match(/^app_auth\s+([^;\s]+)$/i);return r?`app_auth=${r[1]}`:e.includes("=")?e:`app_auth=${e}`}function Pvr(t){return String(t||"").split(";").map(e=>e.trim()).filter(e=>e&&!e.toLowerCase().startsWith("browser_pow=")).join("; ")}function Dut(t){return`${t.baseUrl}|${Pvr(t.cookie)}`}function Dvr(t){let e=Put.get(Dut(t));!e||e.expires<=Date.now()||(t.cookie=a6(t.cookie,e.cookie))}async function Rw(t){let e=await Wce(t.server).catch(()=>({url:i6,cookie:""})),r=Tvr.map(i=>process.env[i]).find(Boolean),s={baseUrl:String(e.url||i6).trim().replace(/\/+$/,"")||i6,cookie:kvr(e.cookie||r||"")};return Dvr(s),s}function Fce(t,e=""){let r={"User-Agent":Cvr,Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,application/json,*/*;q=0.8","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Referer:e||t.baseUrl};return t.cookie&&(r.Cookie=t.cookie),r}function a6(t,e=[]){let r=new Map;return String(t||"").split(";").forEach(s=>{let i=s.trim(),a=i.indexOf("=");a<=0||r.set(i.slice(0,a),i.slice(a+1))}),(Array.isArray(e)?e:[e]).forEach(s=>{let i=String(s||"").split(";")[0]?.trim(),a=i.indexOf("=");if(a<=0)return;let o=i.slice(0,a),c=i.slice(a+1);c?r.set(o,c):r.delete(o)}),[...r.entries()].map(([s,i])=>`${s}=${i}`).join("; ")}function qce(t,e=i6){return new URL(String(t||"/"),e).toString()}function Bvr(t){return typeof t!="string"?!1:t.includes("\u6D4F\u89C8\u5668\u5B89\u5168\u9A8C\u8BC1")||t.includes("powSolve-")||t.includes("pow.worker-")}function Lvr(t){let e=BigInt(`0x${t.N}`),r=BigInt(`0x${t.x}`),n=Number.parseInt(t.t,10)||0;for(let s=0;s0&&await new Promise(u=>setTimeout(u,o));let c=await fe.post(qce("/res/pow",t.baseUrl),new URLSearchParams({y:a}).toString(),{headers:{...Fce(t),"Content-Type":"application/x-www-form-urlencoded"}});if(t.cookie=a6(t.cookie,c?.headers?.["set-cookie"]),!c?.data?.success)throw new Error(c?.data?.error||"\u6D4F\u89C8\u5668\u9A8C\u8BC1\u5931\u8D25");Put.set(r,{cookie:t.cookie,expires:Date.now()+Rvr})}async function jce(t,e,r={},n=!1){let s=await fe.request({url:qce(t,e.baseUrl),method:r.method||"GET",headers:Fce(e,r.referer),data:r.data,validateStatus:i=>i>=200&&i<500});return!n&&Bvr(s?.data)?(await Mvr(e,s?.headers?.["set-cookie"]),jce(t,e,r,!0)):s?.data}async function Qce(t,e,r={}){let n=await jce(t,e,r);return typeof n=="string"?n:JSON.stringify(n||"")}async function Wvr(t,e,r={}){let n=await jce(t,e,r);if(typeof n=="string"){let s=n.trim();if(!s||s.startsWith("<"))throw new Error("\u672A\u767B\u5F55\u6216 Cookie \u5DF2\u5931\u6548");return JSON.parse(s)}return n||{}}function $vr(t,e){let r=e;for(;/\s/.test(t[r]||"");)r++;let n=t[r];if(!(n==="{"?"}":n==="["?"]":""))return"";let i=[],a=!1,o=!1;for(let c=r;ce.type_id===t)?.type_name||""}function Fvr(t){return Array.isArray(t)?t.map((e,r)=>r===0?e:Nvr[e]||e).filter(e=>e!=null&&e!==""&&e!==0).map(e=>String(e)):[]}function qvr(t,e){if(t==null||t==="")return"";if(Number.isNaN(Number(t)))return String(t);let r=Number(t);return e==="mv"||r===0?Ovr[r]||String(t):r<1?`\u66F4\u81F3${Math.abs(r)}\u96C6`:`${r}\u96C6\u5168`}function jvr(t,e){return[t?.b?.[e]?`\u78C1${t.b[e]}`:"",t?.w?.[e]?`\u76D8${t.w[e]}`:"",t?.z?.[e]?`\u64AD${t.z[e]}`:""].filter(Boolean).join(" ")}function Qvr(t){return t.filter(Boolean).join(" / ")}function Hvr(t){return!t?.i||!Array.isArray(t.i)?[]:t.i.map((e,r)=>{let n=Array.isArray(t.ty)?["mv","tv","ac"][Number(t.ty[r])-1]||"mv":t.ty||"mv",s=Fvr(t.a?.[r]),i=qvr(t.g?.[r],n),a=Array.isArray(t.q?.[r])?t.q[r].join(" "):"",o=jvr(t,r),c=Qvr(s),u=[a,i,o].filter(Boolean).join(" \xB7 "),l=n==="mv"?c:i;return{vod_id:`${n}/${e}`,vod_name:bo(t.t?.[r]),vod_pic:Hce(n,e),vod_year:s[0]||"",vod_remarks:l||c||u,vod_tag:s.slice(1).join("/"),topRightRemarks:a||o||i}}).filter(e=>e.vod_id&&e.vod_name)}function Gvr(t){let e=t?.l||{};return Array.isArray(e.i)?e.i.map((r,n)=>{let s=e.d?.[n]||"mv",i=bo(e.title?.[n]),a=e.year?.[n]||"",o=e.pf?.db?.s?.[n]||e.pf?.im?.s?.[n]||"";return{vod_id:`${s}/${r}`,vod_name:i,vod_pic:Hce(s,r),vod_year:a,vod_remarks:[Uvr(s),a,o?`\u8BC4\u5206 ${o}`:""].filter(Boolean).join(" \xB7 "),vod_content:bo(e.info?.[n])}}).filter(r=>r.vod_id&&r.vod_name):[]}function Gce(t,e){return`${t}${Buffer.from(JSON.stringify(e),"utf8").toString("base64url")}`}function zce(t,e){let r=String(e||"").trim();if(!r.startsWith(t))return null;try{return JSON.parse(Buffer.from(r.slice(t.length),"base64url").toString("utf8"))}catch{return null}}function zvr(t){let e=But(t?.vod_id);return Gce(Nut,{dir:t?.dir||e.dir,id:t?.id||e.id,name:t?.vod_name||t?.name||"",pic:t?.vod_pic||t?.pic||"",remarks:t?.vod_remarks||t?.remarks||"",year:t?.vod_year||t?.year||"",tag:t?.vod_tag||t?.tag||""})}function Lut(t){return zce(Nut,t)}function Kvr(t){return{vod_id:`${t?.dir||"mv"}/${t?.id||""}`,vod_name:bo(t?.name),vod_pic:t?.pic||"",vod_year:t?.year||"",vod_remarks:bo(t?.remarks),vod_tag:t?.tag||""}}function Mut(t){let e=zvr(t);return{...t,vod_id:e,vod_tag:"folder",type_id:"guanying_pan_video",type_name:"\u7F51\u76D8\u5206\u7EC4",cate:{id:e,name:t.vod_name||"\u7F51\u76D8\u5206\u7EC4"}}}function Vvr(t,e){return Gce(Out,{dir:t?.dir||"mv",id:t?.id||"",name:t?.name||t?.vod_name||"",panKey:e})}function Wut(t){return zce(Out,t)}function Yvr(t){return Gce(kut,{url:t?.url||"",title:t?.title||"",type:t?.type||""})}function Jvr(t){return zce(kut,t)}function Xvr(t){return String(t||"").replace(/&/g,"&").replace(/[)\])】,,。;;\s]+$/g,"").trim()}function Zvr(t,e,r){let n=["title","name","t","n","text","desc","info","remark","remarks"].map(i=>bo(t?.[i])).find(Boolean);if(n)return n;let s=["title","name","t","n","text","desc","info","remark","remarks","source"];for(let i of s){let a=e?.[i];if(!Array.isArray(a))continue;let o=bo(a[r]);if(o&&!/^https?:\/\//i.test(o))return o}return""}function Kce(t){let e=new Set,r=[],n=(a,o,c=null)=>{let u=Xvr(a);!/^https?:\/\//i.test(u)||e.has(u)||(e.add(u),r.push({url:u,title:Zvr(c,t,o)}))},s=Array.isArray(t?.list)?t.list:[];for(let a=0;ar.key===e)||{key:e,name:e||"\u7F51\u76D8",pic:""}}function Vce(t){return Si().find(e=>{try{return e.validator(t)}catch{return!1}})}function Uut(t){let e=new Map;return t.forEach((r,n)=>{let s=typeof r=="string"?r:r?.url,i=Vce(s);if(!i?.key)return;e.has(i.key)||e.set(i.key,{panInfo:i,links:[]});let a=n+1;e.get(i.key).links.push({url:s,type:i.key,title:bo(r?.title)||`\u94FE\u63A5${a}`})}),[...e.values()]}async function Fut(t,e){let r=t.map(n=>typeof n=="string"?n:n?.url).filter(n=>Vce(n));return r.length===0?null:await Xt(r.slice(0,wvr),e).catch(n=>(console.warn("[guanying] \u7F51\u76D8\u89E3\u6790\u5931\u8D25:",n?.message||n),null))}function qut(t,e){e?.froms&&e?.urls&&(t.vod_play_from=e.froms,t.vod_play_url=e.urls),Array.isArray(e?.links)&&e.links.length&&(t.vod_links=e.links)}async function Yce(t,e,r){let n=await Wvr(`/res/downurl/${t}/${e}`,r,{referer:`${r.baseUrl}/${t}/${e}`});if(n?.code&&n.code!==200)throw new Error(bo(n.msg)||`\u8D44\u6E90\u63A5\u53E3\u8FD4\u56DE ${n.code}`);return n}async function eSr(t,e,r,n,s){let i;try{i=await Yce(e,r,s)}catch(o){t.vod_content=[t.vod_content,`\u8D44\u6E90\u52A0\u8F7D\u5931\u8D25\uFF1A${bo(o?.message||o)}`].filter(Boolean).join(` +`);return}let a=Kce(i.panlist).filter(o=>Vce(o.url));if(a.length){let o=await Fut(a,n);qut(t,o)}a.length&&(t.vod_content=[t.vod_content,`\u8D44\u6E90\uFF1A\u7F51\u76D8${a.length}\u6761`].filter(Boolean).join(` +`))}async function tSr(t,e){let r=await Rw(t),n=await Yce(e.dir,e.id,r),s=Uut(Kce(n.panlist));return{page:1,pagecount:1,limit:Cw,total:s.length,list:s.map(({panInfo:i,links:a})=>{let o=Vvr(e,i.key);return{vod_id:o,vod_name:i.name||i.key,vod_pic:i.pic||"",vod_remarks:`${a.length}\u6761\u8D44\u6E90`,vod_tag:"folder",type_id:"guanying_pan_category",type_name:"\u7F51\u76D8\u5206\u7EC4",panType:i.key,cate:{id:o,name:i.name||i.key}}})}}async function rSr(t,e){let r=Number.parseInt(t.body.page,10)||1,n=await Rw(t),s=await Yce(e.dir,e.id,n),a=Uut(Kce(s.panlist)).find(({panInfo:f})=>f.key===e.panKey),o=a?.links||[],c=Math.max(1,Math.ceil(o.length/Cw)),u=(r-1)*Cw,l=r<=c?o.slice(u,u+Cw):[],d=a?.panInfo||$ut(e.panKey);return{page:r,pagecount:c,limit:Cw,total:o.length,list:l.map((f,p)=>{let m=u+p+1,h=f.title||`${d.name||"\u7F51\u76D8"} \u94FE\u63A5${m}`;return{vod_id:Yvr({...f,title:h}),vod_name:h,vod_pic:d.pic||"",vod_remarks:d.name||"",type_name:d.name||""}})}}async function nSr(t,e){return await lr(t,e),{}}async function sSr(t,e){return{class:Tw}}async function iSr(t,e){let r=String(t.body?.id||t.body?.type_id||t.body?.categoryId||""),n=Lut(r);if(n?.dir&&n?.id)return await tSr(t,n);let s=Wut(r);if(s?.dir&&s?.id&&s?.panKey)return await rSr(t,s);let i=String(t.body.id||Tw[0].type_id),a=Tw.some(m=>m.type_id===i)?i:Tw[0].type_id,o=Number.parseInt(t.body.page,10)||1,c=await Rw(t),u=new URLSearchParams;o>1&&u.set("page",String(o));let l=await Qce(`/${a}${u.size?`?${u.toString()}`:""}`,c),d=ww(l,"inlist"),f=ww(l,"page")||{},p=Hvr(d).map(Mut);return{page:o,pagecount:Number(f.pages)||o,limit:Uce,total:p.length,list:p}}async function aSr(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=await Rw(t),s=[];for(let i of r){let a=Jvr(i);if(a?.url){let m=$ut(a.type),h={vod_id:String(i||""),vod_name:bo(a.title)||m.name||"\u7F51\u76D8\u8D44\u6E90",vod_pic:m.pic||"",vod_remarks:m.name||"",type_name:m.name||""};qut(h,await Fut([a.url],t)),s.push(h);continue}let o=Lut(i);if(o?.dir&&o?.id){s.push(Kvr(o));continue}if(Wut(i))continue;let{dir:c,id:u}=But(i);if(!u)continue;let l=await Qce(`/${c}/${u}`,n),d=ww(l,"d")||{},f=bo(d.title)||u,p={vod_id:`${c}/${u}`,vod_name:f,vod_pic:Hce(c,u,384),vod_year:d.year||"",vod_area:Array.isArray(d.diqu)?d.diqu.join("/"):"",vod_lang:Array.isArray(d.yuyan)?d.yuyan.join("/"):"",vod_type:Array.isArray(d.leixing)?d.leixing.join("/"):"",vod_director:Array.isArray(d.daoyan)?d.daoyan.join("/"):"",vod_actor:Array.isArray(d.zhuyan)?d.zhuyan.join("/"):"",vod_remarks:bo(d.status)||d.times||"",vod_content:bo(d.summary)};await eSr(p,c,u,t,n),s.push(p)}return{list:s}}async function oSr(t,e){return await er(t,e)}async function cSr(t,e){let r=String(t.body.wd||"").trim(),n=Number.parseInt(t.body.page,10)||1;if(!r)return{page:n,pagecount:1,limit:Uce,total:0,list:[]};let s=await Rw(t),i=new URLSearchParams({q:r,type:"",mode:"1"});n>1&&i.set("page",String(n));let a=await Qce(`/search?${i.toString()}`,s),o=ww(a,"search"),c=ww(a,"page")||{},u=Gvr(o).map(Mut);return{page:n,pagecount:Number(c.pages)||1,limit:Uce,total:u.length,list:u}}async function uSr(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/home`);if(n.home=s.json(),n.home?.class?.length){s=await t.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?.[0];i?.vod_id&&(s=await t.server.inject().post(`${r}/detail`).payload({id:i.vod_id}),n.detail=s.json())}return s=await t.server.inject().post(`${r}/search`).payload({wd:"\u75F4\u8FF7",page:1}),n.search=s.json(),n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var jut={meta:{key:"guanying",name:"\u300C\u76D8\u300D\u89C2\u5F71",type:3},api:async t=>{t.post("/init",nSr),t.post("/home",sSr),t.post("/category",iSr),t.post("/detail",aSr),t.post("/play",oSr),t.post("/search",cSr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt),t.get("/test",uSr)}};var lSr="https://img.icons8.com/fluency/96/folder-invoices--v1.png",dSr="https://img.icons8.com/color/48/video.png",Qut=[".mp4",".mkv",".webm",".avi",".wmv",".flv",".mov",".mpeg",".mpg",".m4v",".ts",".m2ts",".3gp",".rm",".rmvb",".iso"];async function fSr(t,e){let r=globalThis.getPanName?await globalThis.getPanName(t):"";return String(r||e)}function pSr(t){return Number(t?.resType||0)===2}function mSr(t){if(Number(t?.resType||0)!==1)return!1;let e=String(t?.ext||"").toLowerCase(),r=String(t?.mineType||"").toLowerCase(),n=String(t?.fileName||"").toLowerCase();return Number(t?.fileType||0)===2||r.startsWith("video/")||Qut.includes(e)||Qut.some(s=>n.endsWith(s))}function Hut(t){return String(t?.fileName||"\u672A\u77E5").trim()||"\u672A\u77E5"}function Jce(t){return String(t?.fileId||"")}function hSr(t){return Number(t?.fileSize||t?.size||0)}function gSr(t,e){return`folder@@@${t}@@@${e}`}function ySr(t){return`file@@@${Hut(t)}@@@own*${Jce(t)}`}async function ASr(t,e=""){let r=await A$e(t,e||""),n=Array.isArray(r?.list)?r.list:[],s=[];return n.forEach(i=>{let a=pSr(i);if(!a&&!mSr(i))return;let o=Hut(i);s.push({vod_id:a?gSr(o,Jce(i)):ySr(i),vod_name:o,vod_pic:a?lSr:String(i?.thumbnail||"").trim()||dSr,vod_remarks:a?"\u76EE\u5F55":Xi(hSr(i)),...a?{cate:{id:Jce(i),name:o}}:{},ratio:1.33})}),{rawCount:n.length,total:Number(r?.total||n.length),list:s}}async function xSr(t,e){return await hC(t),{}}async function bSr(t,e){return{class:[{type_id:"root",type_name:"\u6211\u7684\u5149\u9E2D"}]}}async function _Sr(t,e){let r=String(t.body.id||"root");r.startsWith("folder@@@")&&(r=r.split("@@@")[2]||""),r==="root"&&(r="");let n=Number.parseInt(t.body.page,10)||1,{rawCount:s,total:i,list:a}=await ASr(t,r||"");return{page:n,pagecount:1,limit:s,total:Math.max(i,s),list:a}}async function ESr(t,e){let r=String(t.body.id||"");if(r.startsWith("folder@@@"))return{list:[{vod_id:r,vod_name:r.split("@@@")[1]||"\u76EE\u5F55"}]};let n=r.split("@@@"),s=n[1]||"\u89C6\u9891\u64AD\u653E",i=n[2]||"",a=await fSr("guangyapan","\u5149\u9E2D");return{list:[{vod_id:r,vod_name:s,vod_content:`\u6587\u4EF6\u540D: ${s}`,vod_play_from:a,vod_play_url:`${a}$${i}`}]}}async function vSr(t,e){let r=String(t.body.id||"").split("*");if(r[0]!=="own"||!r[1])return{parse:0,url:"",msg:"\u5149\u9E2D\u64AD\u653E\u53C2\u6570\u9519\u8BEF"};try{let n=await x$e(t,r[1]);return n?.url?{parse:0,url:["\u539F\u753B",n.url]}:{parse:0,url:"",msg:n?.msg||"\u5149\u9E2D\u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740"}}catch(n){return{parse:0,url:"",msg:`\u5149\u9E2D\u63A5\u53E3\u5F02\u5E38: ${n?.message||n}`}}}async function SSr(t,e){return{page:1,pagecount:1,list:[]}}async function ISr(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);if(n.init=s.json(),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),n.home?.class?.length){s=await t.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 t.server.inject().post(`${r}/detail`).payload({id:i.vod_id}),n.detail=s.json())}return n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var Gut={meta:{key:"myguangyapan",name:"\u300C\u76D8\u300D\u5149\u9E2D",type:3},api:async t=>{t.post("/init",xSr),t.post("/home",bSr),t.post("/category",_Sr),t.post("/detail",ESr),t.post("/play",vSr),t.post("/search",SSr),t.get("/test",ISr)}};var CSr=["http://103.217.192.130:16969"],Xce=async t=>(await t.db.getObjectDefault("/huban",{}))?.urls||t.config.huban?.urls||CSr,TSr=async(t,e)=>{await t.db.push("/huban/urls",e)},wSr=async t=>{await t.db.delete("/huban/urls")};async function Zce(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await Xce(e.server)})}),t.put("/urls",async(e,r)=>{await TSr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await wSr(e.server),r.send({code:0})})}var eue,o6=t=>{if(!eue){let e=Date.now();eue=new Promise(async r=>{let n=await Xce(t),s=await Zn(n);console.log("\u864E\u6591\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return eue},K1={url:"https://zf.do-u.de5.net/",key:"woleigedouer",sendTimeout:1200,receiveTimeout:1500};async function RSr(t){try{if(!K1.url)return;let e={"Content-Type":"application/json"};K1.key&&(e.Authorization=`Bearer ${K1.key}`),await fe(K1.url,{method:"POST",headers:e,data:JSON.stringify(t),sendTimeout:K1.sendTimeout||1200,receiveTimeout:K1.receiveTimeout||1500})}catch{}}async function tue(t){return(await fe.get(t,{headers:{"User-Agent":Gt}})).data}async function NSr(t,e){let r=[{type_id:"1",type_name:"\u98CE"},{type_id:"2",type_name:"\u82B1"},{type_id:"3",type_name:"\u96EA"},{type_id:"4",type_name:"\u6708"},{type_id:"5",type_name:"\u7CBE"},{type_id:"6",type_name:"\u77ED"},{type_id:"30",type_name:"115"}],n={};return n[1]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u60CA\u609A",v:"\u60CA\u609A"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u52A8\u753B",v:"\u52A8\u753B"},{n:"\u6B66\u4FA0",v:"\u6B66\u4FA0"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u6B4C\u821E",v:"\u6B4C\u821E"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u4F20\u8BB0",v:"\u4F20\u8BB0"},{n:"\u8B66\u532A",v:"\u8B66\u532A"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u8FD0\u52A8",v:"\u8FD0\u52A8"},{n:"\u4F26\u7406",v:"\u4F26\u7406"},{n:"\u707E\u96BE",v:"\u707E\u96BE"},{n:"\u897F\u90E8",v:"\u897F\u90E8"},{n:"\u9B54\u5E7B",v:"\u9B54\u5E7B"},{n:"\u67AA\u6218",v:"\u67AA\u6218"},{n:"\u6050\u6016",v:"\u6050\u6016"},{n:"\u8BB0\u5F55",v:"\u8BB0\u5F55"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u610F\u5927\u5229",v:"\u610F\u5927\u5229"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u5176\u5B83",v:"\u5176\u5B83"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{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:"2006",v:"2006"},{n:"2005",v:"2005"},{n:"2004",v:"2004"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[2]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u5076\u50CF",v:"\u5076\u50CF"},{n:"\u5BB6\u5EAD",v:"\u5BB6\u5EAD"},{n:"\u8B66\u532A",v:"\u8B66\u532A"},{n:"\u8A00\u60C5",v:"\u8A00\u60C5"},{n:"\u519B\u4E8B",v:"\u519B\u4E8B"},{n:"\u6B66\u4FA0",v:"\u6B66\u4FA0"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u519C\u6751",v:"\u519C\u6751"},{n:"\u90FD\u5E02",v:"\u90FD\u5E02"},{n:"\u795E\u8BDD",v:"\u795E\u8BDD"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u5C11\u513F",v:"\u5C11\u513F"},{n:"\u641E\u7B11",v:"\u641E\u7B11"},{n:"\u8C0D\u6218",v:"\u8C0D\u6218"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u5E74\u4EE3",v:"\u5E74\u4EE3"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u6050\u6016",v:"\u6050\u6016"},{n:"\u60CA\u609A",v:"\u60CA\u609A"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65B0\u52A0\u5761",v:"\u65B0\u52A0\u5761"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"},{n:"\u9999\u6E2F\u5730\u533A",v:"\u9999\u6E2F\u5730\u533A"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{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:"2006",v:"2006"},{n:"2005",v:"2005"},{n:"2004",v:"2004"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[3]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u771F\u4EBA\u79C0",v:"\u771F\u4EBA\u79C0"},{n:"\u8BBF\u8C08",v:"\u8BBF\u8C08"},{n:"\u60C5\u611F",v:"\u60C5\u611F"},{n:"\u9009\u79C0",v:"\u9009\u79C0"},{n:"\u65C5\u6E38",v:"\u65C5\u6E38"},{n:"\u7F8E\u98DF",v:"\u7F8E\u98DF"},{n:"\u53E3\u79C0",v:"\u53E3\u79C0"},{n:"\u66F2\u827A",v:"\u66F2\u827A"},{n:"\u641E\u7B11",v:"\u641E\u7B11"},{n:"\u6E38\u620F",v:"\u6E38\u620F"},{n:"\u6B4C\u821E",v:"\u6B4C\u821E"},{n:"\u751F\u6D3B",v:"\u751F\u6D3B"},{n:"\u97F3\u4E50",v:"\u97F3\u4E50"},{n:"\u65F6\u5C1A",v:"\u65F6\u5C1A"},{n:"\u76CA\u667A",v:"\u76CA\u667A"},{n:"\u804C\u573A",v:"\u804C\u573A"},{n:"\u5C11\u513F",v:"\u5C11\u513F"},{n:"\u7EAA\u5B9E",v:"\u7EAA\u5B9E"},{n:"\u76DB\u4F1A",v:"\u76DB\u4F1A"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u5176\u5B83",v:"\u5176\u5B83"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{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:"2006",v:"2006"},{n:"2005",v:"2005"},{n:"2004",v:"2004"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[4]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u70ED\u8840",v:"\u70ED\u8840"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u63A8\u7406",v:"\u63A8\u7406"},{n:"\u641E\u7B11",v:"\u641E\u7B11"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u6821\u56ED",v:"\u6821\u56ED"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u673A\u6218",v:"\u673A\u6218"},{n:"\u8FD0\u52A8",v:"\u8FD0\u52A8"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u5C11\u5E74",v:"\u5C11\u5E74"},{n:"\u5C11\u5973",v:"\u5C11\u5973"},{n:"\u793E\u4F1A",v:"\u793E\u4F1A"},{n:"\u539F\u521B",v:"\u539F\u521B"},{n:"\u4EB2\u5B50",v:"\u4EB2\u5B50"},{n:"\u76CA\u667A",v:"\u76CA\u667A"},{n:"\u52B1\u5FD7",v:"\u52B1\u5FD7"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u6B27\u7F8E",v:"\u6B27\u7F8E"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{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:"2006",v:"2006"},{n:"2005",v:"2005"},{n:"2004",v:"2004"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[6]=[{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[5]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u592E\u89C6\u76F4\u64AD",v:"\u592E\u89C6\u76F4\u64AD"},{n:"\u5730\u65B9\u76F4\u64AD",v:"\u5730\u65B9\u76F4\u64AD"},{n:"\u7EFC\u827A\u8282\u76EE",v:"\u7EFC\u827A\u8282\u76EE"},{n:"\u5A31\u4E50\u8D44\u8BAF",v:"\u5A31\u4E50\u8D44\u8BAF"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u6B27\u7F8E",v:"\u6B27\u7F8E"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{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:"2004",v:"2004"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[30]=[{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],{class:r,filters:n}}async function OSr(t,e){let r=await o6(t.server),n=t.body.id,s=t.body.page,i=t.body.filters||{},a=s||1;a==0&&(a=1);let o=r+"/index.php/vod/show";i.area&&(o+=`/area/${i.area}`);let c=i.by||i.sort;c&&(o+=`/by/${c}`),i.class&&(o+=`/class/${i.class}`),o+=`/id/${n}/page/${a}`,i.year&&(o+=`/year/${i.year}`),o+=".html";let u=await tue(o,Gt),l=De(u),d=l("#main .module-item"),f=[];for(var p of d){let y=l(p).find(".module-item-pic a").attr("href"),g=l(p).find(".module-item-pic img").attr("alt"),b=l(p).find(".module-item-pic img").attr("data-src"),x=l(p).find(".module-item-text").text();f.push({vod_id:y,vod_name:g,vod_pic:b,vod_remarks:x})}let h=l("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(a)+1:parseInt(a);return{page:parseInt(a),pagecount:h,limit:72,total:72*h,list:f}}async function kSr(t,e){let r=await o6(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await tue(r+i),o=De(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let p=o(f).text(),h=o(f).next().find("a").map((y,g)=>{let b=o(g).text().trim();return b||null}).get().filter(Boolean).join(", ");p.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():p.includes("\u5BFC\u6F14")?c.vod_director=h.trim():p.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,p)=>p.children[0].data).get(),d=await Xt(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls,c.vod_links=d.links),RSr({detail_url:r+i,html:a,parsed:{vod_name:c.vod_name||"",vod_pic:c.vod_pic||"",vod_content:c.vod_content||"",panUrls:Array.isArray(l)?l:[]}}),s.push(c)}return{list:s}}async function PSr(t,e){let r=await o6(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await tue(`${r}/index.php/vod/search/wd/${s}.html`),o=De(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var zut={meta:{key:"huban",name:"\u300C\u76D8\u300D\u864E\u6591",type:3},api:async t=>{t.post("/init",lr),t.post("/home",NSr),t.post("/category",OSr),t.post("/detail",kSr),t.post("/play",er),t.post("/search",PSr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt)},check:o6};var DSr=["http://103.217.192.184:12512"],rue=async t=>(await t.db.getObjectDefault("/xiaoban",{}))?.urls||t.config.xiaoban?.urls||DSr,BSr=async(t,e)=>{await t.db.push("/xiaoban/urls",e)},LSr=async t=>{await t.db.delete("/xiaoban/urls")};async function nue(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await rue(e.server)})}),t.put("/urls",async(e,r)=>{await BSr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await LSr(e.server),r.send({code:0})})}var sue,c6=t=>{if(!sue){let e=Date.now();sue=new Promise(async r=>{let n=await rue(t),s=await Zn(n);console.log("\u5C0F\u6591\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return sue},V1={url:"https://zf.do-u.de5.net/",key:"woleigedouer",sendTimeout:1200,receiveTimeout:1500};async function MSr(t){try{if(!V1.url)return;let e={"Content-Type":"application/json"};V1.key&&(e.Authorization=`Bearer ${V1.key}`),await fe(V1.url,{method:"POST",headers:e,data:JSON.stringify(t),sendTimeout:V1.sendTimeout||1200,receiveTimeout:V1.receiveTimeout||1500})}catch{}}async function iue(t){return(await fe.get(t,{headers:{"User-Agent":Gt}})).data}async function WSr(t,e){let r=[{type_id:"1",type_name:"\u6885"},{type_id:"2",type_name:"\u5170"},{type_id:"3",type_name:"\u7AF9"},{type_id:"4",type_name:"\u83CA"},{type_id:"6",type_name:"\u77ED"},{type_id:"5",type_name:"\u7CBE"}],n={};return n[1]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u60CA\u609A",v:"\u60CA\u609A"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u52A8\u753B",v:"\u52A8\u753B"},{n:"\u6B66\u4FA0",v:"\u6B66\u4FA0"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u6B4C\u821E",v:"\u6B4C\u821E"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u4F20\u8BB0",v:"\u4F20\u8BB0"},{n:"\u8B66\u532A",v:"\u8B66\u532A"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u8FD0\u52A8",v:"\u8FD0\u52A8"},{n:"\u4F26\u7406",v:"\u4F26\u7406"},{n:"\u707E\u96BE",v:"\u707E\u96BE"},{n:"\u897F\u90E8",v:"\u897F\u90E8"},{n:"\u9B54\u5E7B",v:"\u9B54\u5E7B"},{n:"\u67AA\u6218",v:"\u67AA\u6218"},{n:"\u6050\u6016",v:"\u6050\u6016"},{n:"\u8BB0\u5F55",v:"\u8BB0\u5F55"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u610F\u5927\u5229",v:"\u610F\u5927\u5229"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u5176\u5B83",v:"\u5176\u5B83"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{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:"2006",v:"2006"},{n:"2005",v:"2005"},{n:"2004",v:"2004"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[2]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u5076\u50CF",v:"\u5076\u50CF"},{n:"\u5BB6\u5EAD",v:"\u5BB6\u5EAD"},{n:"\u8B66\u532A",v:"\u8B66\u532A"},{n:"\u8A00\u60C5",v:"\u8A00\u60C5"},{n:"\u519B\u4E8B",v:"\u519B\u4E8B"},{n:"\u6B66\u4FA0",v:"\u6B66\u4FA0"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u519C\u6751",v:"\u519C\u6751"},{n:"\u90FD\u5E02",v:"\u90FD\u5E02"},{n:"\u795E\u8BDD",v:"\u795E\u8BDD"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u5C11\u513F",v:"\u5C11\u513F"},{n:"\u641E\u7B11",v:"\u641E\u7B11"},{n:"\u8C0D\u6218",v:"\u8C0D\u6218"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u5E74\u4EE3",v:"\u5E74\u4EE3"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u6050\u6016",v:"\u6050\u6016"},{n:"\u60CA\u609A",v:"\u60CA\u609A"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65B0\u52A0\u5761",v:"\u65B0\u52A0\u5761"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"},{n:"\u9999\u6E2F\u5730\u533A",v:"\u9999\u6E2F\u5730\u533A"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{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:"2006",v:"2006"},{n:"2005",v:"2005"},{n:"2004",v:"2004"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[3]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u771F\u4EBA\u79C0",v:"\u771F\u4EBA\u79C0"},{n:"\u8BBF\u8C08",v:"\u8BBF\u8C08"},{n:"\u60C5\u611F",v:"\u60C5\u611F"},{n:"\u9009\u79C0",v:"\u9009\u79C0"},{n:"\u65C5\u6E38",v:"\u65C5\u6E38"},{n:"\u7F8E\u98DF",v:"\u7F8E\u98DF"},{n:"\u53E3\u79C0",v:"\u53E3\u79C0"},{n:"\u66F2\u827A",v:"\u66F2\u827A"},{n:"\u641E\u7B11",v:"\u641E\u7B11"},{n:"\u6E38\u620F",v:"\u6E38\u620F"},{n:"\u6B4C\u821E",v:"\u6B4C\u821E"},{n:"\u751F\u6D3B",v:"\u751F\u6D3B"},{n:"\u97F3\u4E50",v:"\u97F3\u4E50"},{n:"\u65F6\u5C1A",v:"\u65F6\u5C1A"},{n:"\u76CA\u667A",v:"\u76CA\u667A"},{n:"\u804C\u573A",v:"\u804C\u573A"},{n:"\u5C11\u513F",v:"\u5C11\u513F"},{n:"\u7EAA\u5B9E",v:"\u7EAA\u5B9E"},{n:"\u76DB\u4F1A",v:"\u76DB\u4F1A"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u5176\u5B83",v:"\u5176\u5B83"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{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:"2006",v:"2006"},{n:"2005",v:"2005"},{n:"2004",v:"2004"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[4]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u70ED\u8840",v:"\u70ED\u8840"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u63A8\u7406",v:"\u63A8\u7406"},{n:"\u641E\u7B11",v:"\u641E\u7B11"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u6821\u56ED",v:"\u6821\u56ED"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u673A\u6218",v:"\u673A\u6218"},{n:"\u8FD0\u52A8",v:"\u8FD0\u52A8"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u5C11\u5E74",v:"\u5C11\u5E74"},{n:"\u5C11\u5973",v:"\u5C11\u5973"},{n:"\u793E\u4F1A",v:"\u793E\u4F1A"},{n:"\u539F\u521B",v:"\u539F\u521B"},{n:"\u4EB2\u5B50",v:"\u4EB2\u5B50"},{n:"\u76CA\u667A",v:"\u76CA\u667A"},{n:"\u52B1\u5FD7",v:"\u52B1\u5FD7"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u6B27\u7F8E",v:"\u6B27\u7F8E"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{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:"2006",v:"2006"},{n:"2005",v:"2005"},{n:"2004",v:"2004"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[6]=[{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[5]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u592E\u89C6\u76F4\u64AD",v:"\u592E\u89C6\u76F4\u64AD"},{n:"\u5730\u65B9\u76F4\u64AD",v:"\u5730\u65B9\u76F4\u64AD"},{n:"\u7EFC\u827A\u8282\u76EE",v:"\u7EFC\u827A\u8282\u76EE"},{n:"\u5A31\u4E50\u8D44\u8BAF",v:"\u5A31\u4E50\u8D44\u8BAF"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u6B27\u7F8E",v:"\u6B27\u7F8E"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{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:"2004",v:"2004"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],{class:r,filters:n}}async function $Sr(t,e){let r=await c6(t.server),n=t.body.id,s=t.body.page,i=t.body.filters||{},a=s||1;a==0&&(a=1);let o=r+"/index.php/vod/show";i.area&&(o+=`/area/${i.area}`);let c=i.by||i.sort;c&&(o+=`/by/${c}`),i.class&&(o+=`/class/${i.class}`),o+=`/id/${n}/page/${a}`,i.year&&(o+=`/year/${i.year}`),o+=".html";let u=await iue(o,Gt),l=De(u),d=l("#main .module-item"),f=[];for(var p of d){let y=l(p).find(".module-item-pic a").attr("href"),g=l(p).find(".module-item-pic img").attr("alt"),b=l(p).find(".module-item-pic img").attr("data-src"),x=l(p).find(".module-item-text").text();f.push({vod_id:y,vod_name:g,vod_pic:b,vod_remarks:x})}let h=l("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(a)+1:parseInt(a);return{page:parseInt(a),pagecount:h,limit:72,total:72*h,list:f}}async function USr(t,e){let r=await c6(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await iue(r+i),o=De(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let p=o(f).text(),h=o(f).next().find("a").map((y,g)=>{let b=o(g).text().trim();return b||null}).get().filter(Boolean).join(", ");p.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():p.includes("\u5BFC\u6F14")?c.vod_director=h.trim():p.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,p)=>p.children[0].data).get(),d=await Xt(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls,c.vod_links=d.links),MSr({detail_url:r+i,html:a,parsed:{vod_name:c.vod_name||"",vod_pic:c.vod_pic||"",vod_content:c.vod_content||"",panUrls:Array.isArray(l)?l:[]}}),s.push(c)}return{list:s}}async function FSr(t,e){let r=await c6(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await iue(`${r}/index.php/vod/search/wd/${s}.html`),o=De(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var Kut={meta:{key:"xiaoban",name:"\u300C\u76D8\u300D\u5C0F\u6591",type:3},api:async t=>{t.post("/init",lr),t.post("/home",WSr),t.post("/category",$Sr),t.post("/detail",USr),t.post("/play",er),t.post("/search",FSr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt)},check:c6};var qSr=["https://wogg.xxooo.cf","https://www.wogg.net"],aue=async t=>(await t.db.getObjectDefault("/wanou",{}))?.urls||t.config.wanou?.urls||qSr,jSr=async(t,e)=>{await t.db.push("/wanou/urls",e)},QSr=async t=>{await t.db.delete("/wanou/urls")};async function oue(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await aue(e.server)})}),t.put("/urls",async(e,r)=>{await jSr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await QSr(e.server),r.send({code:0})})}var cue,d6=t=>{if(!cue){let e=Date.now();cue=new Promise(async r=>{let n=await aue(t),s=await Zn(n);console.log("\u73A9\u5076\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return cue},Y1={url:"https://zf.do-u.de5.net/",key:"woleigedouer",sendTimeout:1200,receiveTimeout:1500};async function HSr(t){try{if(!Y1.url)return;let e={"Content-Type":"application/json"};Y1.key&&(e.Authorization=`Bearer ${Y1.key}`),await fe(Y1.url,{method:"POST",headers:e,data:JSON.stringify(t),sendTimeout:Y1.sendTimeout||1200,receiveTimeout:Y1.receiveTimeout||1500})}catch{}}async function u6(t){return(await fe.get(t,{headers:{"User-Agent":Gt}})).data}async function GSr(t,e){return await lr(t,e),{}}async function zSr(t,e){let r=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"3",type_name:"\u52A8\u6F2B"},{type_id:"44",type_name:"\u81FB\u5F69"},{type_id:"4",type_name:"\u7EFC\u827A"},{type_id:"46",type_name:"\u7EAA\u5F55"},{type_id:"6",type_name:"\u77ED\u5267"},{type_id:"5",type_name:"\u97F3\u4E50"}],n=[{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"},{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"}],s=[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}],i=[{n:"\u5168\u90E8",v:""},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u6050\u6016",v:"\u6050\u6016"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u8B66\u532A",v:"\u8B66\u532A"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u6B66\u4FA0",v:"\u6B66\u4FA0"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u67AA\u6218",v:"\u67AA\u6218"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u60CA\u609A",v:"\u60CA\u609A"},{n:"\u7ECF\u5178",v:"\u7ECF\u5178"},{n:"\u9752\u6625",v:"\u9752\u6625"},{n:"\u6587\u827A",v:"\u6587\u827A"},{n:"\u5FAE\u7535\u5F71",v:"\u5FAE\u7535\u5F71"},{n:"\u5386\u53F2",v:"\u5386\u53F2"}],a=[{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:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u5370\u5EA6",v:"\u5370\u5EA6"},{n:"\u610F\u5927\u5229",v:"\u610F\u5927\u5229"},{n:"\u52A0\u62FF\u5927",v:"\u52A0\u62FF\u5927"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}],o={};return o[1]=[{key:"class",name:"",init:"",value:i},{key:"area",name:"",init:"",value:a},{key:"year",name:"",init:"",value:n},{key:"by",name:"",init:"time",value:s}],o[2]=[{key:"class",name:"",init:"",value:i},{key:"area",name:"",init:"",value:a},{key:"year",name:"",init:"",value:n},{key:"by",name:"",init:"time",value:s}],o[3]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u60C5\u611F",v:"\u60C5\u611F"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u70ED\u8840",v:"\u70ED\u8840"},{n:"\u63A8\u7406",v:"\u63A8\u7406"},{n:"\u641E\u7B11",v:"\u641E\u7B11"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u841D\u8389",v:"\u841D\u8389"},{n:"\u6821\u56ED",v:"\u6821\u56ED"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u673A\u6218",v:"\u673A\u6218"},{n:"\u8FD0\u52A8",v:"\u8FD0\u52A8"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u5C11\u5E74",v:"\u5C11\u5E74"},{n:"\u5C11\u5973",v:"\u5C11\u5973"},{n:"\u793E\u4F1A",v:"\u793E\u4F1A"},{n:"\u539F\u521B",v:"\u539F\u521B"},{n:"\u4EB2\u5B50",v:"\u4EB2\u5B50"},{n:"\u76CA\u667A",v:"\u76CA\u667A"},{n:"\u52B1\u5FD7",v:"\u52B1\u5FD7"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u4E2D\u56FD\u5927\u9646",v:"\u4E2D\u56FD\u5927\u9646"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:n},{key:"by",name:"",init:"time",value:s}],o[44]=[{key:"class",name:"",init:"",value:i},{key:"area",name:"",init:"",value:a},{key:"year",name:"",init:"",value:n},{key:"by",name:"",init:"time",value:s}],o[4]=[{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u4E2D\u56FD\u5927\u9646",v:"\u4E2D\u56FD\u5927\u9646"},{n:"\u4E2D\u56FD\u53F0\u6E7E",v:"\u4E2D\u56FD\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"}]},{key:"year",name:"",init:"",value:n},{key:"by",name:"",init:"time",value:s}],o[46]=[{key:"year",name:"",init:"",value:n},{key:"by",name:"",init:"time",value:s}],o[6]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u7537\u9891",v:"\u7537\u9891"},{n:"\u5973\u9891",v:"\u5973\u9891"},{n:"\u90FD\u5E02",v:"\u90FD\u5E02"},{n:"\u751C\u5BA0",v:"\u751C\u5BA0"},{n:"\u5E74\u4EE3",v:"\u5E74\u4EE3"},{n:"\u7A7F\u8D8A",v:"\u7A7F\u8D8A"},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u4EB2\u60C5",v:"\u4EB2\u60C5"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u840C\u5B9D",v:"\u840C\u5B9D"},{n:"\u91CD\u751F",v:"\u91CD\u751F"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u9006\u88AD",v:"\u9006\u88AD"},{n:"\u8650\u604B",v:"\u8650\u604B"},{n:"\u9274\u5B9D",v:"\u9274\u5B9D"},{n:"\u590D\u4EC7",v:"\u590D\u4EC7"},{n:"\u4FEE\u4ED9",v:"\u4FEE\u4ED9"}]},{key:"year",name:"",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"}]},{key:"by",name:"",init:"time",value:s}],o[5]=[{key:"by",name:"",init:"time",value:s}],{class:r,filters:o}}function KSr(t,e){let r=String(e||"").trim();if(!r)return"";if(/^https?:\/\//i.test(r)){if(/^https?:\/\/[^/]*gimg\d*\.baidu\.com\/gimg\//i.test(r)){let n=r.lastIndexOf("src=");if(n!==-1&&r.slice(n+4).includes("data:image/"))return""}return r}return r.startsWith("/img.php?url=")?r.slice(13):r.startsWith("/db.php?url=")?new URL(r,`${String(t||"").replace(/\/+$/,"")}/`).toString():new URL(r.replace(/^\/+/,""),`${String(t||"").replace(/\/+$/,"")}/`).toString()}function l6(t,e){return KSr(t,e?.attribs?.["data-src"]||e?.attribs?.src||"")}function VSr(t){let e=Array.isArray(t)?t:t.split("-");for(let r=1;r div.module-search-item").map((f,p)=>{let m=l(p).find("div.video-info-header h3 a")[0];return{vod_id:m.attribs.href.match(/voddetail\/(.*).html/)[1],vod_name:m.attribs.title,vod_pic:l6(r,l(p).find("div.module-item-pic img")[0]),vod_remarks:l(p).find("a.video-serial").text()}}).get();return{page:a,pagecount:d.length<10?a:a+1,list:d}}else{let o=[n,"","","","","","","",a,"","",""];i.area&&(o[1]=i.area),i.by&&(o[2]=i.by),i.class&&(o[3]=i.class),i.year&&(o[11]=i.year);let c=`${r}/index.php/vodshow/${o.join("-")}.html`,u=await u6(c),l=De(u),d=l("div.module-items > div.module-item").map((f,p)=>{let m=l(p).find("div.video-name a")[0];return{vod_id:m.attribs.href.match(/voddetail\/(.*).html/)[1],vod_name:m.attribs.title,vod_pic:l6(r,l(p).find("div.module-item-pic img")[0]),vod_remarks:l(p).find("div.module-item-text").text()}}).get();return{page:a,pagecount:d.length<70?a:a+1,list:d}}}async function JSr(t,e){let r=await d6(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await u6(`${r}/index.php/voddetail/${i}.html`),o=De(a),c=[],u=[],l="";o("div.video-info-items a[href*=/vodsearch/]").each((m,h)=>{let y=h.attribs.href.match(/vodsearch\/(.*).html/)[1].split("-"),g=o(h).text().trim(),b=VSr(y);if(b===5){let x={id:"s-5-"+decodeURIComponent(y[5].toString()),name:g};c.push(`[a=cr:${JSON.stringify(x)}/]${g}[/a]`)}else if(b===1){let x={id:"s-1-"+decodeURIComponent(y[1].toString()),name:g};u.push(`[a=cr:${JSON.stringify(x)}/]${g}[/a]`)}else b===13&&(l=g)});let d={vod_name:o(".page-title")[0].children[0].data,vod_pic:l6(r,o(".mobile-play .lazyload")[0]||o(".module-item-pic img")[0]),vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||"",vod_year:l,vod_actor:u.join(", "),vod_director:c.join(", "),vod_content:o("div.video-info-content p[style*=none]")[0].children[0].data.trim()},f=o("div.module-row-info p").map((m,h)=>h.children[0].data).get(),p=await Xt(f,t);p&&(d.vod_play_from=p.froms,d.vod_play_url=p.urls,d.vod_links=p.links),HSr({detail_url:`${r}/index.php/voddetail/${i}.html`,html:a,parsed:{vod_name:d.vod_name||"",vod_pic:d.vod_pic||"",vod_content:d.vod_content||"",panUrls:Array.isArray(f)?f:[]}}),s.push(d)}return{list:s}}async function XSr(t,e){let r=await d6(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await u6(`${r}/index.php/vodsearch/-------------.html?wd=${s}`),o=De(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];return{vod_id:d.attribs.href.match(/voddetail\/(.*).html/)[1],vod_name:d.attribs.title,vod_pic:l6(r,o(l).find("div.module-item-pic img")[0]),vod_remarks:o(l).find("a.video-serial").text()}}).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}async function ZSr(t,e){try{let r=function(a){a.statusCode&&a.statusCode==500&&console.error(a)},n=t.server.prefix,s={},i=await t.server.inject().post(`${n}/init`);if(s.init=i.json(),r(i.json()),i=await t.server.inject().post(`${n}/home`),s.home=i.json(),r(i.json()),s.home.class.length>0&&(i=await t.server.inject().post(`${n}/category`).payload({id:s.home.class[0].type_id,page:1,filter:!0,filters:{}}),s.category=i.json(),r(i.json()),s.category.list.length>0&&(i=await t.server.inject().post(`${n}/detail`).payload({id:s.category.list[0].vod_id}),s.detail=i.json(),r(i.json()),s.detail.list&&s.detail.list.length>0))){s.play=[];for(let a of s.detail.list){let o=a.vod_play_from.split("$$$"),c=a.vod_play_url.split("$$$");for(let u=0;u{t.post("/init",GSr),t.post("/home",zSr),t.post("/category",YSr),t.post("/detail",JSr),t.post("/play",er),t.post("/search",XSr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt),t.get("/test",ZSr)},check:d6};var eIr=["http://www.miqk.cc","https://mihdr.top","https://www.mihdr.top","https://zhizhen1.top"],uue=async t=>(await t.db.getObjectDefault("/zhizhen",{}))?.urls||t.config.zhizhen?.urls||eIr,tIr=async(t,e)=>{await t.db.push("/zhizhen/urls",e)},rIr=async t=>{await t.db.delete("/zhizhen/urls")};async function lue(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await uue(e.server)})}),t.put("/urls",async(e,r)=>{await tIr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await rIr(e.server),r.send({code:0})})}var due,f6=t=>{if(!due){let e=Date.now();due=new Promise(async r=>{let n=await uue(t),s=await Zn(n);console.log("\u81F3\u81FB\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return due},J1={url:"https://zf.do-u.de5.net/",key:"woleigedouer",sendTimeout:1200,receiveTimeout:1500};async function nIr(t){try{if(!J1.url)return;let e={"Content-Type":"application/json"};J1.key&&(e.Authorization=`Bearer ${J1.key}`),await fe(J1.url,{method:"POST",headers:e,data:JSON.stringify(t),sendTimeout:J1.sendTimeout||1200,receiveTimeout:J1.receiveTimeout||1500})}catch{}}async function fue(t){return(await fe.get(t,{headers:{"User-Agent":Gt}})).data}async function sIr(t,e){let r=[{type_id:"26",type_name:"\u81FB\u5F69"},{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:"5",type_name:"\u77ED\u5267"}],n={};return n[26]=[{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[1]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u6050\u6016",v:"\u6050\u6016"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u8B66\u532A",v:"\u8B66\u532A"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u52A8\u753B",v:"\u52A8\u753B"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u6B66\u4FA0",v:"\u6B66\u4FA0"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u67AA\u6218",v:"\u67AA\u6218"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u60CA\u609A",v:"\u60CA\u609A"},{n:"\u7ECF\u5178",v:"\u7ECF\u5178"},{n:"\u9752\u6625",v:"\u9752\u6625"},{n:"\u6587\u827A",v:"\u6587\u827A"},{n:"\u5FAE\u7535\u5F71",v:"\u5FAE\u7535\u5F71"},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u8FD0\u52A8",v:"\u8FD0\u52A8"},{n:"\u519C\u6751",v:"\u519C\u6751"},{n:"\u513F\u7AE5",v:"\u513F\u7AE5"},{n:"\u7F51\u7EDC\u7535\u5F71",v:"\u7F51\u7EDC\u7535\u5F71"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{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:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u5370\u5EA6",v:"\u5370\u5EA6"},{n:"\u610F\u5927\u5229",v:"\u610F\u5927\u5229"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u52A0\u62FF\u5927",v:"\u52A0\u62FF\u5927"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",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"},{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"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[2]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u9752\u6625\u5076\u50CF",v:"\u9752\u6625\u5076\u50CF"},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u5BB6\u5EAD",v:"\u5BB6\u5EAD"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u7ECF\u5178",v:"\u7ECF\u5178"},{n:"\u4E61\u6751",v:"\u4E61\u6751"},{n:"\u60C5\u666F",v:"\u60C5\u666F"},{n:"\u5546\u6218",v:"\u5546\u6218"},{n:"\u7F51\u5267",v:"\u7F51\u5267"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5185\u5730",v:"\u5185\u5730"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65B0\u52A0\u5761",v:"\u65B0\u52A0\u5761"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",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"},{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"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[3]=[{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5185\u5730",v:"\u5185\u5730"},{n:"\u6E2F\u53F0",v:"\u6E2F\u53F0"},{n:"\u65E5\u97E9",v:"\u65E5\u97E9"},{n:"\u6B27\u7F8E",v:"\u6B27\u7F8E"}]},{key:"year",name:"",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"},{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"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[4]=[{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u56FD\u4EA7",v:"\u56FD\u4EA7"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u6B27\u7F8E",v:"\u6B27\u7F8E"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",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"},{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"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[5]=[{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5185\u5730",v:"\u5185\u5730"},{n:"\u6E2F\u53F0",v:"\u6E2F\u53F0"},{n:"\u65E5\u97E9",v:"\u65E5\u97E9"},{n:"\u6B27\u7F8E",v:"\u6B27\u7F8E"}]},{key:"year",name:"",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"},{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"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],{class:r,filters:n}}async function iIr(t,e){let r=await f6(t.server),n=t.body.id,s=t.body.page,i=t.body.filters||{},a=s||1;a==0&&(a=1);let o=r+"/index.php/vod/show";i.area&&(o+=`/area/${i.area}`);let c=i.by||i.sort;c&&(o+=`/by/${c}`),i.class&&(o+=`/class/${i.class}`),o+=`/id/${n}/page/${a}`,i.year&&(o+=`/year/${i.year}`),o+=".html";let u=await fue(o,Gt),l=De(u),d=l("#main .module-item"),f=[];for(var p of d){let y=l(p).find(".module-item-pic a").attr("href"),g=l(p).find(".module-item-pic img").attr("alt"),b=l(p).find(".module-item-pic img").attr("data-src"),x=l(p).find(".module-item-text").text();f.push({vod_id:y,vod_name:g,vod_pic:b,vod_remarks:x})}let h=l("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(a)+1:parseInt(a);return{page:parseInt(a),pagecount:h,limit:72,total:72*h,list:f}}async function aIr(t,e){let r=await f6(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await fue(r+i),o=De(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let p=o(f).text(),h=o(f).next().find("a").map((y,g)=>{let b=o(g).text().trim();return b||null}).get().filter(Boolean).join(", ");p.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():p.includes("\u5BFC\u6F14")?c.vod_director=h.trim():p.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,p)=>p.children[0].data).get(),d=await Xt(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls,c.vod_links=d.links),nIr({detail_url:r+i,html:a,parsed:{vod_name:c.vod_name||"",vod_pic:c.vod_pic||"",vod_content:c.vod_content||"",panUrls:Array.isArray(l)?l:[]}}),s.push(c)}return{list:s}}async function oIr(t,e){let r=await f6(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await fue(`${r}/index.php/vod/search/wd/${s}.html`),o=De(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var Yut={meta:{key:"zhizhen",name:"\u300C\u76D8\u300D\u81F3\u81FB",type:3},api:async t=>{t.post("/init",lr),t.post("/home",sIr),t.post("/category",iIr),t.post("/detail",aIr),t.post("/play",er),t.post("/search",oIr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt)},check:f6};var p6=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),Jut=t=>String(t??"").split(",").map(e=>e.trim()).filter(e=>e),Xut=t=>(Array.isArray(t)?t:[]).map(e=>String(e||"").trim()).filter(e=>e),elt="douerpan,zyfb123",cIr={douerpan:"\u8C46\u513F\u76D8",zyfb123:"\u8C46\u513F123"},pue=async(t,e,r)=>{let n=await t.db.getObjectDefault("/tgchannel",{});if(p6(n,e))return n[e];let s=t.config?.tgchannel||{};return p6(s,e)?s[e]:r},Zut=t=>{if(!t||typeof t!="object"||Array.isArray(t))return{};let e={};for(let[r,n]of Object.entries(t))typeof n=="string"&&n.trim()!==""&&(e[r]=n);return e},m6=t=>pue(t,"url","https://t.me"),mue=async t=>{let e=await t.db.getObjectDefault("/tgchannel",{});if(Object.prototype.hasOwnProperty.call(e,"count"))return e.count;let r=t.config?.tgchannel||{};return Object.prototype.hasOwnProperty.call(r,"count")?r.count:""},hue=t=>pue(t,"channelUsername",elt),gue=t=>pue(t,"homeChannelUsername",elt),h6=async t=>{let e=await t.db.getObjectDefault("/tgchannel",{});if(Object.prototype.hasOwnProperty.call(e,"pic"))return e.pic;let r=t.config?.tgchannel||{};return Object.prototype.hasOwnProperty.call(r,"pic")?r.pic:!0},g6=async t=>{let e=await t.db.getObjectDefault("/tgchannel",{});if(p6(e,"channelNameMap"))return Zut(e.channelNameMap);let r=t.config?.tgchannel||{};return p6(r,"channelNameMap")?Zut(r.channelNameMap):cIr},X1=async(t,e,r)=>{await t.db.push(`/tgchannel/${e}`,r)},uIr=async t=>{await t.db.delete("/tgchannel")};async function yue(t){t.get("/config",async(e,r)=>{let n=await m6(e.server),s=await mue(e.server),i=await hue(e.server),a=await gue(e.server),o=await h6(e.server),c=await g6(e.server),u=s===""||s===null||typeof s>"u"?"":Number(s);r.send({code:0,data:{url:n,count:u,channelUsername:Jut(i),homeChannelUsername:Jut(a),pic:o,channelNameMap:c}})}),t.put("/config",async(e,r)=>{await X1(e.server,"url",e.body.url),await X1(e.server,"count",e.body.count),await X1(e.server,"channelUsername",Xut(e.body.channelUsername).join(",")),await X1(e.server,"homeChannelUsername",Xut(e.body.homeChannelUsername).join(",")),await X1(e.server,"pic",e.body.pic),await X1(e.server,"channelNameMap",e.body.channelNameMap||{}),r.send({code:0})}),t.delete("/config",async(e,r)=>{await uIr(e.server),r.send({code:0})})}function lIr(t){let e=t.attr("style"),r=/background-image:url\('([^']+)'\)/.exec(e);if(r&&r.length>1)return r[1]}function nlt(t){return t=t.replace(/https?:\/\/[^\s]+/gi,""),t=t.split(/名称[:|:]/)?.[1]||t,t=t.split(` +`)?.[0]||t,t=t.trim(),t=t.replace(/^[^\u4e00-\u9fa5A-Za-z0-9\(\[\{(【《「『〔〖〈﹝[]+/,"").trim(),t=t.replace(/^(电视剧|动漫|电影|综艺|纪录片|动画)[\s||]+/,"").trim(),/^[\(\[\{(【《「『〔〖〈﹝[]/.test(t)?(t=t.replace(/^[\(\[\{(【《「『〔〖〈﹝[][^\)\]\})】》」』〕〗〉﹞]]*[\)\]\})】》」』〕〗〉﹞]]/,"").trim(),t=t.replace(/[\(\[\{(【《「『〔〖〈﹝[].*$/,"").trim()):t=t.replace(/[\(\[\{(【《「『〔〖〈﹝[].*$/,"").trim(),t=t.replace(/((?:更新至|å…¨|第|å…±)\s*(?:第)?\s*\d+\s*集)|((?:更新至|å…¨|第|å…±)\s*(?:第)?\s*[一二三四五六七八九十百千万亿]+\s*集)|(\d+\s*集\s*å…¨)|([一二三四五六七八九十百千万亿]+\s*集\s*å…¨)|((?:更至|æ›´)\s*(?:EP)?\s*\d+)|((?:æ›´æ–°\s*)?EP\d+集)|(æ›´æ–°\d+集)|(S\d+\s*E\d+(?:已更新)?)/g,"").trim(),t=t.replace(/\s*\d+\s*\+\s*\d+\s*帧\s*/g,"").replace(/\s*4[Kk]\s*(DV|HDR10|SDR10|臻彩|杜比)?\s*(é«˜ç çŽ‡|50帧|10bit)?\s*/g,"").replace(/\s*\d+[pP]\s*/g,"").replace(/\s*(杜比视界|杜比音效|WEB-60fpsMAX|WEB-|DV|HDR10|HDR|SDR|臻彩|杜比|é«˜ç çŽ‡|ä¸­ç çŽ‡|50帧|25帧|60帧|10bit|10BIT|纯净版|完结|全景声|è¶…é«˜ç çŽ‡|EDR|æ ‡ç |Vivid|三维菁彩声|txb|æºç |剧版|æ— å°æ ‡|ATVP|IQ|Friday|多国字幕|双语|简中|日语|æ— æŸ|特别版|软字幕|补链接|MAX|ä¸­ç |音效|é«˜ç |台配|国语|环绕声|蓝光原盘|臻享超高清|首播|ç‚¹æ˜ |Viu|10B|硬字幕)\s*/g,"").replace(/\s*内封[^\s]*\s*/g,"").replace(/\s*——\s*/g," ").replace(/\s*\d{4}å¹´?\s*/g,"").replace(/\s*大小\s*\d+\.?\d*\s*[KMGT]B\s*/g,"").replace(/\d+\.?\d*\s*[KMGT]B/g,"").replace(/\s*å·²?æ›´æ–°\s*/g,"").replace(/\s*\+\s*/g," ").replace(/\s+/g," ").trim(),t=t.split(/,|,/)?.[0],t?.trim()}var dIr={"User-Agent":"MoZhao"};function Aue(t){return Si().some(e=>e.validator(t))}function slt(t,e=()=>!0){let r=[];for(let n of t){let s=n.attribs?.href;s&&e(s)&&r.push(s)}return r}function Nw(t){return slt(t,Aue)}function y6(t){return slt(t,A6)}function up(t){return[...new Set((t||[]).filter(Boolean))]}function fIr(t){return String(t||"").trim().replace(/&/g,"&").replace(/[\)\]\}>)】》」』〕〗〉﹞]、。,,;ï¼›!?!?]+$/g,"")}function pIr(t){let e=String(t||"");return up([/https?:\/\/[^\s"'<>]+/gi,/magnet:\?[^\s"'<>]+/gi,/ed2k:\/\/\|file\|.+?\|\d+\|[a-f0-9]{32}\|\//gi,/ed2k:\/\/[^\s"'<>]+/gi].flatMap(n=>e.match(n)||[]).map(fIr))}function mIr(t,e){let r=t(e).find(".tgme_widget_message_date").attr("href");if(alt(r))return r;let n=e.attribs?.["data-post"];return n?`https://t.me/${n}`:""}function xue(t){let e=[],r=pIr(t);for(let n of r)Aue(n)&&e.push(n);return e}function ilt(t){let e=[],r=t.match(/https?:\/\/[^\s]+/gi);if(r)for(let n of r)A6(n)&&e.push(n);return e}var alt=t=>/t.me\/.*\/.*/.test(t),A6=t=>/https?:\/\/(?:telegra\.ph|graph\.org)\//i.test(String(t||"")),olt=t=>Si().find(e=>e.validator(t)),clt=(t,e)=>!e||typeof e!="object"?t:e[t]||t,ult=t=>String(t||"").split(",").map(e=>e.trim()).filter(Boolean);async function bue(t){let e=await he.get(t,{timeout:5e3,headers:dIr});return De(e.data)}async function hIr(t){let e=await bue(t),r=e(".tl_article").text()||e("body").text()||"";return{links:up([...xue(r),...Nw(e("a"))])}}async function llt(t){let e=up((t||[]).filter(A6));if(!e.length)return[];let r=await Promise.all(e.map(async n=>{try{return(await hIr(n)).links}catch(s){return console.error("[tgchannel] parse telegra failed",n,s?.message||s),[]}}));return up(r.flat())}async function gIr(t){let e=await bue(t),r=e(".tgme_widget_message"),n=[];for(let s of r){let i=s.attribs["data-post"],a=lIr(e(s).find(".tgme_widget_message_photo_wrap"));e("br").replaceWith(` +`);let o=e(s).find(".tgme_widget_message_text").text(),c=nlt(o),u=o,l=up([...xue(o),...Nw(e(s).find(".tgme_widget_message_text a")),...Nw(e(s).find(".tgme_widget_message_inline_button"))]),d=up([...y6(e(s).find(".tgme_widget_message_text a")),...y6(e(s).find(".tgme_widget_message_inline_button")),...ilt(o)]),f=[...l],p=f.length?[...f]:d.length?[...d]:[];if(!p.length){let m=mIr(e,s);m&&p.push(m)}p.length&&n.push({id:p.join("|"),title:c,description:u,cover:a,messageId:Number(i.split("/")[1]),panLinks:f})}return n}async function yIr(t){let e=await bue(t),r=e('meta[property="og:description"]').attr("content"),n=e('meta[property="og:image"]').attr("content"),s=nlt(r),i=up([...xue(r||""),...Nw(e(".tgme_widget_message_text a")),...Nw(e(".tgme_widget_message_inline_button"))]),a=up([...ilt(r||""),...y6(e(".tgme_widget_message_text a")),...y6(e(".tgme_widget_message_inline_button"))]),o=i.length?[]:await llt(a),c=up([...i,...o]);return{title:s,description:r,cover:n,links:c}}async function AIr(t,e){return await lr(t,e),{}}async function xIr(t){let e=await gue(t.server),r=await g6(t.server);return{class:ult(e).map(n=>({type_id:n,type_name:clt(n,r)}))}}var tlt={},rlt={},_ue={};async function dlt(t){let e=await m6(t.server),r=await h6(t.server),n=t.body.id,s=t.body.page;s||(s=1);try{let i=await gIr(`${e}/s/${n}${s>1?`?before=${rlt[n]}`:""}`);rlt[n]=i[0].messageId,s===1&&(tlt[n]=i[i.length-1].messageId),i.reverse();let a=i.map(o=>{let c,u="";return o.panLinks.length&&o.panLinks.forEach(l=>{let d=olt(l);d&&(u+=u?`|${d.name}`:d.name,c||(c=d.pic))}),c||(c="https://telegram.org/img/apple-touch-icon.png"),{vod_name:o.title,vod_id:o.id,vod_pic:r&&o.cover||c,vod_remarks:u,rawData:o}});return a.forEach(o=>{o.vod_name&&o.vod_id&&(_ue[o.vod_id]=o.vod_name)}),{page:s,pagecount:Math.ceil(tlt[n]/a.length),list:a}}catch(i){return console.error(i),{page:s,pagecount:1,list:[]}}}async function bIr(t,e){let r=await m6(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=i.split("|"),o=_ue[i]||"";if(a.length===1&&alt(a[0])){let l=await yIr(i.replace("https://t.me",r));!o&&l.title&&(o=l.title),a=l.links}else!a.some(Aue)&&a.some(A6)&&(a=await llt(a));let c=await Xt(a,t),u={vod_id:i,vod_name:o};c&&(u.vod_play_from=c.froms,u.vod_play_url=c.urls,u.vod_links=c.links),s.push(u)}return{list:s}}async function _Ir(t,e){let r=await mue(t.server),n=await hue(t.server),s=await h6(t.server),i=await g6(t.server),a=t.body.wd,o=Number(r),c=Number.isFinite(o)?Math.floor(o):0,u=c>0,l=ult(n);if(!l.length)return{page:1,pagecount:1,list:[]};let d=await Promise.all(l.map(p=>dlt({body:{id:`${p}?q=${encodeURIComponent(a)}`},server:t.server}))),f=[];return d.forEach((p,m)=>{let h=p.list.filter(g=>g.rawData.panLinks.length);(u?h.slice(0,c):h).forEach(g=>{let b="",x;g.rawData.panLinks.forEach(A=>{let S=olt(A);S&&(b+=b?`|${S.name}`:S.name),x||(x=S.pic)}),f.push({vod_id:g.vod_id,vod_name:g.vod_name,vod_pic:s&&g.vod_pic||x,vod_remarks:`${b}:${clt(l[m],i)}`}),g.vod_name&&g.vod_id&&(_ue[g.vod_id]=g.vod_name)})}),{page:1,pagecount:1,list:f}}var flt={meta:{key:"tgchannel",name:"\u300C\u76D8\u300DTG\u641C",type:3},api:async t=>{t.post("/init",AIr),t.post("/home",xIr),t.post("/category",dlt),t.post("/detail",bIr),t.post("/play",er),t.post("/search",_Ir),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt)}};var x6=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),EIr=t=>String(t??"").split(",").map(e=>e.trim()).filter(e=>e),vIr=t=>(Array.isArray(t)?t:[]).map(e=>String(e||"").trim()).filter(e=>e),mlt=async(t,e,r)=>{let n=await t.db.getObjectDefault("/tgsou",{});if(x6(n,e))return n[e];let s=t.config?.tgsou||{};return x6(s,e)?s[e]:r},plt=t=>{if(!t||typeof t!="object"||Array.isArray(t))return{};let e={};for(let[r,n]of Object.entries(t))typeof n=="string"&&n.trim()!==""&&(e[r]=n);return e},Eue=t=>mlt(t,"url","https://tgsou.252035.xyz"),vue=async t=>{let e=await t.db.getObjectDefault("/tgsou",{});if(Object.prototype.hasOwnProperty.call(e,"count"))return e.count;let r=t.config?.tgsou||{};return Object.prototype.hasOwnProperty.call(r,"count")?r.count:""},Sue=t=>mlt(t,"channelUsername",""),Iue=async t=>{let e=await t.db.getObjectDefault("/tgsou",{});if(Object.prototype.hasOwnProperty.call(e,"pic"))return e.pic;let r=t.config?.tgsou||{};return Object.prototype.hasOwnProperty.call(r,"pic")?r.pic:!0},Cue=async t=>{let e=await t.db.getObjectDefault("/tgsou",{}),r={};if(x6(e,"channelNameMap"))r=plt(e.channelNameMap);else{let n=t.config?.tgsou||{};x6(n,"channelNameMap")&&(r=plt(n.channelNameMap))}return r},Ow=async(t,e,r)=>{await t.db.push(`/tgsou/${e}`,r)};async function Tue(t){t.get("/config",async(e,r)=>{let n=await Eue(e.server),s=await vue(e.server),i=await Sue(e.server),a=await Iue(e.server),o=await Cue(e.server),c=s===""||s===null||typeof s>"u"?"":Number(s);r.send({code:0,data:{url:n,count:c,channelUsername:EIr(i),pic:a,channelNameMap:o}})}),t.put("/config",async(e,r)=>{await Ow(e.server,"url",e.body.url),await Ow(e.server,"count",e.body.count),await Ow(e.server,"channelUsername",vIr(e.body.channelUsername).join(",")),await Ow(e.server,"pic",e.body.pic),await Ow(e.server,"channelNameMap",e.body.channelNameMap||{}),r.send({code:0})})}var hlt={};async function SIr(t,e){return await lr(t,e),{}}async function IIr(t,e){return{class:[]}}var CIr=(t,e)=>!e||typeof e!="object"?t:e[t]||t;function TIr(t){return t&&(t=t.replace(/https?:\/\/[^\s]+/gi,""),t=t.split(/名称[:|:]/)?.[1]||t,t=t.split(` +`)?.[0]||t,t=t.trim(),t=t.replace(/^[^\u4e00-\u9fa5A-Za-z0-9\(\[\{(【《「『〔〖〈﹝[]+/,"").trim(),t=t.replace(/^(电视剧|动漫|电影|综艺|纪录片|动画)[\s||]+/,"").trim(),/^[\(\[\{(【《「『〔〖〈﹝[]/.test(t)?(t=t.replace(/^[\(\[\{(【《「『〔〖〈﹝[][^\)\]\})】》」』〕〗〉﹞]]*[\)\]\})】》」』〕〗〉﹞]]/,"").trim(),t=t.replace(/[\(\[\{(【《「『〔〖〈﹝[].*$/,"").trim()):t=t.replace(/[\(\[\{(【《「『〔〖〈﹝[].*$/,"").trim(),t=t.replace(/((?:更新至|å…¨|第|å…±)\s*(?:第)?\s*\d+\s*集)|((?:更新至|å…¨|第|å…±)\s*(?:第)?\s*[一二三四五六七八九十百千万亿]+\s*集)|(\d+\s*集\s*å…¨)|([一二三四五六七八九十百千万亿]+\s*集\s*å…¨)|((?:更至|æ›´)\s*(?:EP)?\s*\d+)|((?:æ›´æ–°\s*)?EP\d+集)|(æ›´æ–°\d+集)|(S\d+\s*E\d+(?:已更新)?)/g,"").trim(),t=t.replace(/\s*\d+\s*\+\s*\d+\s*帧\s*/g,"").replace(/\s*4[Kk]\s*(DV|HDR10|SDR10|臻彩|杜比)?\s*(é«˜ç çŽ‡|50帧|10bit)?\s*/g,"").replace(/\s*\d+[pP]\s*/g,"").replace(/\s*(杜比视界|杜比音效|WEB-60fpsMAX|WEB-|DV|HDR10|HDR|SDR|臻彩|杜比|é«˜ç çŽ‡|ä¸­ç çŽ‡|50帧|25帧|60帧|10bit|10BIT|纯净版|完结|全景声|è¶…é«˜ç çŽ‡|EDR|æ ‡ç |Vivid|三维菁彩声|txb|æºç |剧版|æ— å°æ ‡|ATVP|IQ|Friday|多国字幕|双语|简中|日语|æ— æŸ|特别版|软字幕|补链接|MAX|ä¸­ç |音效|é«˜ç |台配|国语|环绕声|蓝光原盘|臻享超高清|首播|ç‚¹æ˜ |Viu|10B|硬字幕)\s*/g,"").replace(/\s*内封[^\s]*\s*/g,"").replace(/\s*——\s*/g," ").replace(/\s*\d{4}å¹´?\s*/g,"").replace(/\s*大小\s*\d+\.?\d*\s*[KMGT]B\s*/g,"").replace(/\d+\.?\d*\s*[KMGT]B/g,"").replace(/\s*å·²?æ›´æ–°\s*/g,"").replace(/\s*\+\s*/g," ").replace(/\s+/g," ").trim(),t=t.split(/,|,/)?.[0],t?.trim())}async function wIr(t,e){return{page:1,pagecount:1,list:[]}}async function RIr(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[];for(let s of r){let i=s.includes("|")?s.split("|"):[s],a=await Xt(i,t),o={};o.vod_name=hlt[s]||"",a&&(o.vod_play_from=a.froms,o.vod_play_url=a.urls,o.vod_links=a.links),n.push(o)}return{list:n}}async function NIr(t,e){let r=await Eue(t.server),n=await vue(t.server),s=await Sue(t.server),i=await Iue(t.server),a=await Cue(t.server),o=t.body.wd,c=Number(n),u=Number.isFinite(c)?Math.floor(c):0,l=u>0,d=new URL(r);d.searchParams.set("pic",String(i)),l&&d.searchParams.set("count",String(u)),d.searchParams.set("channelUsername",s),d.searchParams.set("keyword",o||"");let f=await he.get(d.toString()),p=new Map;for(let h of f.data.results){let[y,g]=h.split("$$$");if(!g)continue;let b=g.split("##");for(let x=0;xN.validator(I));if(w){let N=TIr(S)||o,k=!!R,B=k?/^https?:\/\//i.test(R)?R:`${r}/down?id=${R}&channelUsername=${y}`:w.pic,M=k?B:I;p.has(M)||p.set(M,{links:[],panInfos:[],pic:B,group:y,title:N});let D=p.get(M),L=I?.replace(/\s+/g,"");D.links.includes(L)||(D.links.push(L),D.panInfos.push(w))}}}let m=[];for(let[h,y]of p.entries()){let g=[...new Set(y.panInfos.map(b=>b.name))].join("/");m.push({vod_id:y.links.join("|"),vod_name:y.title,vod_pic:y.pic,vod_remarks:`${g}:${CIr(y.group,a)}`}),y.title&&y.links.length&&(hlt[y.links.join("|")]=y.title)}return{page:1,pagecount:1,list:m}}var glt={meta:{key:"tgsou",name:"\u300C\u76D8\u300DTG\u641C\xB2",type:3},api:async t=>{t.post("/init",SIr),t.post("/home",IIr),t.post("/category",wIr),t.post("/detail",RIr),t.post("/play",er),t.post("/search",NIr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt)}};var ylt=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),OIr="http://127.0.0.1:8080",xlt=async(t,e,r)=>{let n=await t.db.getObjectDefault("/tgfilebot",{});if(ylt(n,e))return n[e];let s=t.config?.tgfilebot||{};return ylt(s,e)?s[e]:r},wue=t=>xlt(t,"url",OIr),Rue=t=>xlt(t,"password",""),Alt=async(t,e,r)=>{await t.db.push(`/tgfilebot/${e}`,r)},kIr=async t=>{await t.db.delete("/tgfilebot")};async function Nue(t){t.get("/config",async(e,r)=>{let n=await wue(e.server),s=await Rue(e.server);r.send({code:0,data:{url:n,password:s}})}),t.put("/config",async(e,r)=>{await Alt(e.server,"url",e.body.url||""),await Alt(e.server,"password",e.body.password||""),r.send({code:0})}),t.delete("/config",async(e,r)=>{await kIr(e.server),r.send({code:0})})}var PIr="http://127.0.0.1:8080",_lt="",kw=20,DIr=30;async function BIr(t,e){return{}}function LIr(t){for(t=String(t||"").trim();t.endsWith("/");)t=t.slice(0,-1);return t}function ss(t){return String(t||"").replace(/\s+/g," ").trim()}function Elt(t){return ss(t).replace(/[$#]/g," ")}function Oue(t){return ss(t).replace(/^>+\s*/,"").replace(/^\*\*(.*?)\*\*$/,"$1").replace(/^__(.*?)__$/,"$1").replace(/^`(.*?)`$/,"$1").replace(/^\[(.*?)\]\([^)]*\)$/,"$1").replace(/^[-•]\s*/,"").replace(/^\*\s+/,"").trim()}function vlt(t){let e=String(t||"").replace(/\r\n/g,` `).split(` -`);for(let r of e){let n=ns(r);if(n&&!/^(主演|类型|制片国家|语言|ä¸Šæ˜ æ—¥æœŸ|片长|又名|导演|编剧)\s*[::]/.test(Coe(n)))return n}return""}function lot(t){return String(t||"").replace(/[0-ï¼™]/g,e=>String(e.charCodeAt(0)-65296))}function Abr(t){let e=String(t||"").replace(/两/g,"\u4E8C");if(!e)return 0;if(/^\d+$/.test(e))return Number(e);let r={\u96F6:0,"\u3007":0,\u4E00:1,\u4E8C:2,\u4E09:3,\u56DB:4,\u4E94:5,\u516D:6,\u4E03:7,\u516B:8,\u4E5D:9},n={\u5341:10,\u767E:100,\u5343:1e3,\u4E07:1e4},s=0,i=0,a=0;for(let o of e){if(r[o]!==void 0){a=r[o];continue}let c=n[o];if(!c)return 0;c===1e4?(i=(i+a)*c,s+=i,i=0):i+=(a||1)*c,a=0}return s+i+a}function H4(t){let e=ns(t).replace(/\.[a-z0-9]{2,5}$/i,""),r=e.match(/(?:^|[^0-90-ï¼™])(?:第\s*)?([0-90-ï¼™]{1,4})\s*(?:集|話|话|回|期)(?:\D|$)/);return r?"\u7B2C"+lot(r[1]).replace(/^0+/,"")+"\u96C6":(r=e.match(/^0*([1-9][0-9]{0,3})(?=[\s._\-【\[((]|$)/),r?"\u7B2C"+r[1]+"\u96C6":"")}function aot(t){let e=lot(ns(t)),r=e.match(/第\s*([0-9]{1,4}|[零〇一二三四五六七八九十百千万两]{1,8})\s*(?:集|話|话|回|期)/);return r?Abr(r[1].replace(/^0+/,"")):(r=e.match(/^0*([1-9][0-9]{0,3})(?=[\s._\-【\[((]|$)/),r?Number(r[1]):0)}function dot(t,e){let r=Coe(uot(t));if(!r)return{name:"",remark:""};let n=r.match(/^[【\[]\s*([^】\]]+?)\s*[】\]]/);if(n)return{name:ns(n[1]),remark:H4(e)};let s=r.startsWith("#")?r.replace(/^#+\s*/,"").trim():r;if(!s)return{name:"",remark:""};if(!r.startsWith("#"))return{name:ns(s),remark:H4(e)};let i=s.match(/^(.*?)\s*(第\s*[0-90-9零〇一二三四五六七八九十百千万两]+\s*(?:集|話|话|回|期))(?:\s|$)/);return i?{name:ns(i[1]),remark:ns(i[2]).replace(/\s+/g,"")}:{name:ns(s),remark:H4(e)}}function qg(t){if(!t)return[];if(Array.isArray(t))return t;if(typeof t[Symbol.iterator]=="function"&&typeof t!="string")return[...t].filter(e=>e!=null);if(typeof t.length=="number"&&typeof t!="string"){let e=[];for(let r=0;r/^\d+$/.test(e)).sort((e,r)=>Number(e)-Number(r)).map(e=>t[e]).filter(e=>e!=null):[]}function Ioe(t){return encodeURIComponent(JSON.stringify(t||{}))}function jg(t){return t?JSON.parse(decodeURIComponent(String(t))):{}}function Q4(t){if(t=Number(t||0),!t||t<0)return"";let e=["B","KB","MB","GB","TB"],r=t,n=0;for(;r>=1024&&n=100?0:r>=10?1:2;return`${r.toFixed(s)} ${e[n]}`}function ybr(t){if(t=Number(t||0),!t)return"";let e=new Date(t*1e3),r=String(e.getMonth()+1).padStart(2,"0"),n=String(e.getDate()).padStart(2,"0"),s=String(e.getHours()).padStart(2,"0"),i=String(e.getMinutes()).padStart(2,"0");return`${r}-${n} ${s}:${i}`}function q4(t,e){let r=0;for(let n of e)t.indexOf(n)>=0&&r++;return r}function fot(t){let e=String(t&&t.text||""),r=String(t&&t.name||""),n=(e+` -`+r).toLowerCase();if(!n.trim())return!1;let i=q4(n,["@duguan","\u8D4C\u9986","\u6D3B\u52A8\u9891\u9053","\u9996\u5B58","\u6D41\u6C34","\u6CE8\u518C\u9001","\u65B0\u7528\u6237\u6CE8\u518C","\u5173\u95EDvpn","\u5A31\u4E50\u57CE","\u5A31\u4E50\u5E73\u53F0","\u8D4C\u573A","\u535A\u5F69","\u767E\u5BB6\u4E50","\u516D\u5408\u5F69","\u9001\u5F69\u91D1","\u5F69\u91D1","\u6295\u6CE8","\u5145\u503C","\u63D0\u6B3E","\u63D0\u73B0","\u4E0A\u5206","\u4E0B\u5206","\u8FD4\u6C34","\u4F63\u91D1","\u76D8\u53E3","\u9A8C\u8D44","\u5B98\u65B9\u5BA2\u670D","\u798F\u5229\u9891\u9053","\u6CE8\u518C\u7F51\u5740","\u62C5\u4FDD\u57DF\u540D"]),a=q4(n,["\u6CE8\u518C","\u9996\u5B58","\u9996\u5145","\u5145\u503C","\u5B58\u6B3E","\u6D41\u6C34","\u8FD4\u6C34","\u4E0B\u6CE8","\u6295\u6CE8","\u4E0A\u5206","\u4E0B\u5206","\u5F69\u91D1","\u9001\u5F69\u91D1","\u4F63\u91D1","\u6551\u63F4\u91D1","\u63D0\u6B3E","\u63D0\u73B0","\u51FA\u6B3E","\u9886\u53D6"]),o=q4(n,["\u6D3B\u52A8\u9891\u9053","\u5E73\u53F0","\u4FE1\u8A89\u5E73\u53F0","\u5A31\u4E50\u57CE","\u5A31\u4E50\u5E73\u53F0","\u8D4C\u573A","\u535A\u5F69","\u767E\u5BB6\u4E50","\u516D\u5408\u5F69","\u89C6\u8BAF","\u771F\u4EBA","\u76D8\u53E3","\u72D7\u5E84","pg\u96C6\u56E2","pg\u5A31\u4E50\u57CE","pg\u76F4\u8425","\u6C47\u65FA","\u8C6A\u535A\u5A31\u4E50","\u9A8C\u8D44","vpn","\u6D4F\u89C8\u5668\u75284g\u7F51\u7EDC"]),c=q4(n,["\u5B98\u65B9\u5BA2\u670D","\u798F\u5229\u9891\u9053","\u6CE8\u518C\u7F51\u5740","\u62C5\u4FDD\u57DF\u540D","\u603B\u7FA4","\u5BA2\u670D","\u9891\u9053","bot","http://","https://"]),u=(n.match(/@[a-z0-9_]{4,}/g)||[]).length,l=(n.match(/[a-z0-9][a-z0-9-]+\.(?:com|net|cc|top|vip|app)\b/g)||[]).length,d=(n.match(/注册/g)||[]).length>=3;return i>=2||a>0&&o>0||a>=2&&(c>0||u>=2||l>0)||o>=2&&(c>0||u>=2||l>0)||d}async function xbr(t){let e=process.env.TGFILEBOT_URL||await _oe(t),r=process.env.TGFILEBOT_PASSWORD||process.env.TGFILEBOT_KEY||await Soe(t);return{url:gbr(e)||pbr,password:String(r||"").trim()}}async function pot(t,e,r={}){let n=await xbr(t),s=new URL(e,n.url+"/"),i={...r};n.password&&(i.key=n.password);for(let[a,o]of Object.entries(i))o==null||o===""||s.searchParams.set(a,String(o));return s.toString()}async function V4(t,e,r={},n=3e4){let s=await pot(t,e,r),i=await Ae.get(s,{timeout:n,validateStatus:()=>!0});if(i.status<200||i.status>=300)throw new Error(`TGFileBot ${e} HTTP ${i.status}`);return typeof i.data=="string"?JSON.parse(i.data):i.data||{}}function bbr(t){let e=ns(t);return e?e.startsWith("#")?[e]:[e,"#"+e]:[]}function j4(t){return Coe(t).replace(/^#+\s*/,"").replace(/[\s._\-::,,.。!!??、/\\|()[\]【】()《》<>〈〉"'“”‘’·]/g,"").toLowerCase()}function Ebr(t){return String(t||"").replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function _br(t,e){let r=ns(e).replace(/^#+\s*/,"");return r?new RegExp("(^|\\s)#"+Ebr(r)+"(?=\\s|$|#)").test(String(t||"")):!1}function G4(t){try{return jg(t&&t.vod_id)}catch{return{}}}function Sbr(t,e){let r=G4(t),n=j4(ns(e).replace(/^#+\s*/,""));if(!n)return 0;let s=j4(r.name||t&&t.vod_name||""),i=j4(uot(r.text||"")),a=j4(r.text||"");return s===n?100:i===n?98:_br(r.text||"",e)?95:s.startsWith(n)?80:i.startsWith(n)?75:s.indexOf(n)>=0?60:i.indexOf(n)>=0?50:a.indexOf(n)>=0?10:0}function vbr(t,e){return t.map((r,n)=>{let s=G4(r);return{video:r,index:n,score:Sbr(r,e),date:Number(s.date||0)}}).sort((r,n)=>n.score!==r.score?n.score-r.score:n.date!==r.date?n.date-r.date:r.index-n.index).map(r=>r.video)}function Cbr(t,e){let r=new Set(t.map(n=>{let s=G4(n);return`${s.cid||""}:${s.mid||""}`}));for(let n of e){let s=G4(n),i=`${s.cid||""}:${s.mid||""}`;i!==":"&&r.has(i)||(i!==":"&&r.add(i),t.push(n))}return t}function Ibr(t,e=""){let r=dot(t?.text||t?.name,t?.name),n=r.name||ns(t?.name)||`Telegram ${t?.mid||""}`.trim(),s=r.remark||ns(t?.remark),i={cid:t?.cid,mid:t?.mid,reply_mid:t?.reply_mid||0,name:n,remark:s,text:t?.text||"",size:t?.size||0,date:t?.date||0,channel:e||""};return{vod_id:Ioe(i),vod_name:n,type_name:e||"",vod_pic:t?.pic||t?.cover||t?.thumb||oot,vod_remarks:i.remark||"",topRightRemarks:Q4(t?.size)||""}}function mot(t){let e=[];for(let r of qg(t)){let n=r&&r.channel?r.channel:"",s=qg(r&&r.item);for(let i of s)!i||fot(i)||e.push(Ibr(i,n))}return e.sort((r,n)=>{try{return Number(jg(n.vod_id).date||0)-Number(jg(r.vod_id).date||0)}catch{return 0}}),e}function Tbr(t){if(!t||!t.cid)return!1;if(t.reply_mid)return!0;let e=String(t.text||"");return e.trim()?/(剧集选择|评论区|评论|留言|回复|comment=|t\.me\/[a-z0-9_]+\/\d+\?comment=|t\.me\/c\/\d+\/\d+\?comment=)/i.test(e):!1}function hot(t,e){return`${cot(t)}$${Ioe(wbr(e))}`}function wbr(t){return{cid:t?.cid,mid:t?.mid,reply_mid:t?.reply_mid||0,name:t?.name||"",remark:t?.remark||"",size:t?.size||0,date:t?.date||0,channel:t?.channel||""}}function Rbr(t){let e=String(t||""),r=e.indexOf("$");return r<0?{title:e,token:""}:{title:e.slice(0,r),token:e.slice(r+1)}}function Nbr(t){let e=Rbr(t);try{let r=jg(e.token),n=aot(r.remark||"");if(n>0)return n}catch{}return aot(e.title)}function Obr(t){return t.map((e,r)=>({item:e,index:r,episode:Nbr(e)})).sort((e,r)=>{let n=e.episode>0,s=r.episode>0;return n&&s&&e.episode!==r.episode?e.episode-r.episode:n!==s?n?-1:1:e.index-r.index}).map(e=>e.item)}function got(t,e){let r=cot(t),n=Q4(e);return!n||r.indexOf(n)>=0?r:`${r} ${n}`}function Pbr(t){return t&&t.items?qg(t.items):t&&t.item?[t]:qg(t)}function Dbr(t,e,r){let n=new Set;for(let s of t){let i=String(s).split("$").slice(1).join("$");try{let a=jg(i);n.add(`${a.cid||""}:${a.mid||""}`)}catch{}}for(let s of qg(r)){let i=qg(s&&s.item);for(let a of i){if(!a||!a.cid||!a.mid||fot(a))continue;let o=`${a.cid}:${a.mid}`;if(n.has(o))continue;let c=dot(a.text||e.text||a.name,a.name),u=c.name||e.name,l=c.remark||H4(a.name)||"",d={...e,cid:a.cid,mid:a.mid,reply_mid:a.reply_mid||0,name:u,remark:l,size:a.size||0,date:a.date||e.date||0,text:a.text||e.text||""},f=l||ns(a.name)||e.remark||e.name;n.add(o),t.push(hot(got(f,a.size),d))}}return t}async function kbr(t,e){try{let r=await V4(t.server,"/channels",{},12e3);return{class:qg(r.channels).map(s=>{let i=ns(s&&s.id);return i?{type_id:i,type_name:ns(s.name)||i}:null}).filter(Boolean)}}catch(r){return console.error("[tgfilebot] channels failed",r?.message||r),{class:[]}}}async function Lbr(t,e){let r=Math.max(Number.parseInt(t.body?.page||"1",10)||1,1),n=ns(t.body?.id||"all")||"all",s=await V4(t.server,"/latest",{channel:n,page:r,limit:vw}),i=mot(s.items);return{page:r,pagecount:s.more?r+1:r,limit:vw,total:s.total||i.length,list:i}}async function Bbr(t,e){let r=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],n=[];for(let s of r.filter(Boolean)){let i=jg(s),a=Ioe(i),o=ns(i.name)||`Telegram ${i.mid||""}`.trim(),c=[hot(got(i.remark||o,i.size),i)];try{let l=i.reply_mid||i.mid;if(i.cid&&l&&Tbr(i)){let d=await V4(t.server,"/replies",{cid:i.cid,mid:l,limit:mbr},2e4);Dbr(c,i,Pbr(d))}}catch(l){console.error("[tgfilebot] replies skipped",l?.message||l)}let u=[i.remark?`Remark: ${i.remark}`:"",i.channel?`Channel: ${i.channel}`:"",i.cid?`CID: ${i.cid}`:"",i.mid?`MID: ${i.mid}`:"",i.size?`Size: ${Q4(i.size)}`:"",i.date?`Date: ${ybr(i.date)}`:"",ns(i.text||"")].filter(Boolean).join(` -`);n.push({vod_id:a,vod_name:o,type_name:i.channel||"",vod_pic:i.pic||oot,vod_remarks:i.remark||"",topRightRemarks:Q4(i.size)||"",vod_content:u,vod_play_from:"TGFileBot",vod_play_url:Obr(c).join("#")})}return{list:n}}async function Mbr(t,e){let r=jg(t.body?.id);return!r.cid||!r.mid?{parse:0,url:""}:{parse:0,url:await pot(t.server,"/stream",{cid:r.cid,mid:r.mid,cate:"user"})}}async function Wbr(t,e){let r=ns(t.body?.wd||""),n=Math.max(Number.parseInt(t.body?.page||"1",10)||1,1);if(!r)return{page:n,pagecount:n,list:[]};let s=[];for(let i of bbr(r))try{let a=await V4(t.server,"/search",{keywords:i,page:n,limit:vw},2e4);s=Cbr(s,mot(a.items))}catch(a){console.error("[tgfilebot] search variant failed",i,a?.message||a)}return s=vbr(s,r),{page:n,pagecount:s.length>=vw?n+1:n,limit:vw,total:s.length,list:s}}var Aot={meta:{key:"tgfilebot",name:"\u300C\u76F4\u300DTGFileBot",type:3},api:async t=>{t.post("/init",hbr),t.post("/home",kbr),t.post("/category",Lbr),t.post("/detail",Bbr),t.post("/play",Mbr),t.post("/search",Wbr)}};var xot=Re(Cv(),1),Toe=Re(Jn(),1),Hg="https://frodo.douban.com",oi={},yot=t=>`Rexxar-Core/0.1.3 api-client/1 com.douban.frodo/7.9.0(216) Android/28 product/Xiaomi11 rom/android network/wifi udid/${t} platform/mobile com.douban.frodo/7.9.0(216) Rexxar/1.2.151 platform/mobile 1.2.151`;async function bot(t){if(oi.id&&oi.ua)return oi;let e=t.server.prefix+"/device";return oi=await t.server.db.getObjectDefault(e,{}),oi.id?oi.ua||(oi.ua=yot(oi.id),await t.server.db.push(e,oi)):(oi.id=Th(40).toLowerCase(),oi.ua=yot(oi.id),await t.server.db.push(e,oi)),oi}function Qg(t){t+=`&udid=${oi.id}&uuid=${oi.id}&&rom=android&apikey=0dad551ec0f84ed02907ff5c42e8ec70&s=rexxar_new&channel=Yingyongbao_Market&timezone=Asia/Shanghai&device_id=${oi.id}&os_rom=android&apple=c52fbb99b908be4d026954cc4374f16d&mooncake=0f607264fc6318a92b9e13c65db7cd3c&sugar=0`;let e=new URL(t),r=(0,xot.default)().unix().toString(),n=Toe.default.HmacSHA1("GET&"+encodeURIComponent(e.pathname)+"&"+r,"bf7dddc7c9cfe6f7"),s=Toe.default.enc.Base64.stringify(n);return t+"&_sig="+encodeURIComponent(s)+"&_ts="+r}async function Gg(t,e){return(await he.get(t,{headers:{"User-Agent":e||oi.ua}})).data}async function $br(t,e){return await bot(t),{}}async function Fbr(t,e){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={};return 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"}]}],n.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"}]}],n.t2=[{key:"form",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{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"}]},{key:"genre",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u6050\u6016",v:"\u6050\u6016"},{n:"\u5BB6\u5EAD",v:"\u5BB6\u5EAD"},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u6B66\u4FA0",v:"\u6B66\u4FA0"},{n:"\u9752\u6625",v:"\u9752\u6625"},{n:"\u540C\u6027",v:"\u540C\u6027"},{n:"\u97F3\u4E50",v:"\u97F3\u4E50"},{n:"\u6B4C\u821E",v:"\u6B4C\u821E"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u4F20\u8BB0",v:"\u4F20\u8BB0"},{n:"\u8FD0\u52A8",v:"\u8FD0\u52A8"},{n:"\u897F\u90E8",v:"\u897F\u90E8"},{n:"\u707E\u96BE",v:"\u707E\u96BE"}]},{key:"region",name:"",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:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u5370\u5EA6",v:"\u5370\u5EA6"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u610F\u5927\u5229",v:"\u610F\u5927\u5229"},{n:"\u52A0\u62FF\u5927",v:"\u52A0\u62FF\u5927"},{n:"\u6FB3\u5927\u5229\u4E9A",v:"\u6FB3\u5927\u5229\u4E9A"},{n:"\u4FC4\u7F57\u65AF",v:"\u4FC4\u7F57\u65AF"},{n:"\u745E\u5178",v:"\u745E\u5178"},{n:"\u4E39\u9EA6",v:"\u4E39\u9EA6"},{n:"\u5DF4\u897F",v:"\u5DF4\u897F"},{n:"\u58A8\u897F\u54E5",v:"\u58A8\u897F\u54E5"}]},{key:"year",name:"",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"},{n:"2019",v:"2019"},{n:"2010\u5E74\u4EE3",v:"2010\u5E74\u4EE3"},{n:"2000\u5E74\u4EE3",v:"2000\u5E74\u4EE3"},{n:"90\u5E74\u4EE3",v:"90\u5E74\u4EE3"},{n:"80\u5E74\u4EE3",v:"80\u5E74\u4EE3"},{n:"70\u5E74\u4EE3",v:"70\u5E74\u4EE3"},{n:"60\u5E74\u4EE3",v:"60\u5E74\u4EE3"},{n:"\u66F4\u65E9",v:"\u66F4\u65E9"}]},{key:"sort",name:"",init:"U",value:[{n:"\u70ED\u5EA6",v:"U"},{n:"\u8BC4\u5206",v:"S"},{n:"\u65F6\u95F4",v:"R"}]}],{class:r,filters:n}}async function Ubr(t,e){await bot(t);let r=t.body.id,n=t.body.page,s=t.body.filters,i=n||1;if(i==0&&(i=1),r=="t1"){let a=Qg(`${Hg}/api/v2/${s.u||"movie/hot_gaia"}?area=\u5168\u90E8&sort=recommend&playable=0&loc_id=0&start=${(i-1)*30}&count=30`),o=await Gg(a),c=[];for(let u of o.items||o.subject_collection_items){let l=(u.rating&&u.rating.value||"").toString();c.push({vod_id:u.id,vod_name:u.title,vod_pic:u.pic.normal||u.pic.large,vod_remarks:l.length>0?"\u8BC4\u5206:"+l:""})}return{page:parseInt(i),pagecount:Math.ceil(o.total/30),list:c}}else if(r=="t250"){let a=Qg(`${Hg}/api/v2/subject_collection/movie_top250/items?area=\u5168\u90E8&sort=recommend&playable=0&loc_id=0&start=${(i-1)*30}&count=30`),o=await Gg(a),c=[];for(let u of o.items||o.subject_collection_items){let l=(u.rating&&u.rating.value||"").toString();c.push({vod_id:u.id,vod_name:u.title,vod_pic:u.pic.normal||u.pic.large,vod_remarks:l.length>0?"\u8BC4\u5206:"+l:""})}return{page:parseInt(i),pagecount:Math.ceil(o.total/30),list:c}}else if(r=="t2"){let a=s.form||"",o=s.genre||"",c=s.region||"",u=s.year||"",l=s.sort||"U",d=a,f=o,p="movie";d==="\u52A8\u753B"&&(d="\u7535\u89C6\u5267",f||(f="\u52A8\u753B")),(d==="\u7535\u89C6\u5267"||d==="\u7EFC\u827A")&&(p="tv");let m={};f&&(m.\u7C7B\u578B=f),d&&(m.\u5F62\u5F0F=d),c&&(m.\u5730\u533A=c);let h=[];a&&h.push(a),o&&h.push(o),c&&h.push(c),u&&h.push(u);let A=new URLSearchParams({refresh:"0",start:((i-1)*30).toString(),count:"30",selected_categories:JSON.stringify(m),uncollect:"false",score_range:"0,10"});l&&A.append("sort",l),h.length>0&&A.append("tags",h.join(","));let g=`https://m.douban.com/rexxar/api/v2/${p}/recommend?${A.toString()}`,y=(await he.get(g,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36",Referer:"https://m.douban.com/"}})).data,x=y&&y.items?y.items:[],v=[];for(let C of x)if(C&&(C.type==="movie"||C.type==="tv")){let R="";if(C.rating&&typeof C.rating.value<"u"){let w=C.rating.value;R=typeof w=="number"?w.toFixed(1):w.toString()}v.push({vod_id:C.id||"",vod_name:C.title||"",vod_pic:C.pic&&(C.pic.normal||C.pic.large)||"",vod_remarks:R?"\u8BC4\u5206:"+R:""})}return{page:parseInt(i),pagecount:i<10?i+1:i,list:v}}else if(r=="t3"){let a=Qg(`${Hg}/api/v2/movie/category_ranks?count=30&category=recent_hot`),o=await Gg(a),c=[];for(let u of o.selected_collections)c.push({vod_id:"cr_"+u.id,vod_name:u.short_name||u.title,vod_pic:u.cover_url,vod_remarks:"",cate:{}});a=Qg(`${Hg}/api/v2/tv/category_ranks?count=30&category=recent_hot`),o=await Gg(a);for(let u of o.selected_collections)c.push({vod_id:"cr_"+u.id,vod_name:u.short_name||u.title,vod_pic:u.cover_url,vod_remarks:"",cate:{}});return{page:1,pagecount:1,list:c}}else if(r=="t4"){let a=Qg(`${Hg}/api/v2/skynet/new_playlists?subject_type=${s.type||""}&category=${s.cate||"all"}&loc_id=0&start=${(i-1)*30}&count=30`),o=await Gg(a),c=[];for(let u of o.data[0].items)c.push({vod_id:u.owner?"dl_"+u.id:"cr_"+u.id,vod_name:u.title,vod_pic:u.cover_url,vod_remarks:"",cate:{}});return{page:parseInt(i),pagecount:Math.ceil(o.total/30),list:c}}else if(r.startsWith("cr_")){let a=Qg(`${Hg}/api/v2/subject_collection/${r.substring(3)}/items?start=${(i-1)*30}&count=30&updated_at=&items_only=1`),o=await Gg(a),c=[];for(let u of o.subject_collection_items){let l=(u.rating&&u.rating.value||"").toString();c.push({vod_id:u.id,vod_name:u.title,vod_pic:u.pic.normal||u.pic.large,vod_remarks:l.length>0?"\u8BC4\u5206:"+l:""})}return{page:parseInt(i),pagecount:Math.ceil(o.total/30),list:c}}else if(r.startsWith("dl_")){let a=Qg(`${Hg}/api/v2/doulist/${r.substring(3)}/posts?start=${(i-1)*30}&count=30&updated_at=&items_only=1`),o=await Gg(a),c=[];for(let u of o.items){let l=u.content.subject;if(!l)continue;let d=(l.rating&&l.rating.value||"").toString();c.push({vod_id:l.id,vod_name:l.title,vod_pic:l.pic.normal||l.pic.large,vod_remarks:d.length>0?"\u8BC4\u5206:"+d:""})}return{page:parseInt(i),pagecount:Math.ceil(o.total/30),list:c}}}async function qbr(t,e){return{}}async function jbr(t,e){return{}}async function Hbr(t,e){return{}}async function Qbr(t,e){try{let r=function(a){a.statusCode&&a.statusCode==500&&console.error(a)},n=t.server.prefix,s={},i=await t.server.inject().post(`${n}/init`);if(s.init=i.json(),r(i.json()),i=await t.server.inject().post(`${n}/home`),s.home=i.json(),r(i.json()),s.home.class.length>0&&(i=await t.server.inject().post(`${n}/category`).payload({id:s.home.class[0].type_id,page:1,filter:!0,filters:{}}),s.category=i.json(),r(i.json()),s.category.list.length>0&&(i=await t.server.inject().post(`${n}/detail`).payload({id:s.category.list[0].vod_id}),s.detail=i.json(),r(i.json()),s.detail.list&&s.detail.list.length>0))){s.play=[];for(let a of s.detail.list){let o=a.vod_play_from.split("$$$"),c=a.vod_play_url.split("$$$");for(let u=0;u{t.post("/init",$br),t.post("/home",Fbr),t.post("/category",Ubr),t.post("/detail",qbr),t.post("/play",jbr),t.post("/search",Hbr),t.get("/test",Qbr)}};function Gbr(t){let e=String(t||"").split("#")[0]||"",r=e.indexOf("$");return r>0?e.slice(0,r).trim():""}async function Vbr(t,e){return{}}async function zbr(t,e){return"true"}async function Kbr(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[];for(let s of r){let i={vod_id:s,vod_content:"",vod_name:s,vod_pic:"https://pic.rmb.bdstatic.com/bjh/1d0b02d0f57f0a42201f92caba5107ed.jpeg"},a=await Rr(s,t);if(a){i.vod_play_from=a.froms,i.vod_play_url=a.urls;let o=Gbr(i.vod_play_url);o&&(i.vod_name=o)}n.push(i)}return{list:n}}async function Ybr(t,e){try{let r=function(a){a.statusCode&&a.statusCode==500&&console.error(a)},n=t.server.prefix,s={},i=await t.server.inject().post(`${n}/support`).payload({clip:"https://xx.xx/1.m3u8"});return s.support=i.json(),r(i.json()),i=await t.server.inject().post(`${n}/detail`).payload({id:"https://xx.xx/1.m3u8"}),s.detail=i.json(),r(i.json()),i=await t.server.inject().post(`${n}/play`).payload({flag:"xx",id:"https://xx.xx/1.m3u8"}),s.play=i.json(),r(i.json()),s}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var _ot={meta:{key:"push",name:"\u63A8\u9001",type:4},api:async t=>{t.post("/init",Vbr),t.post("/support",zbr),t.post("/detail",Kbr),t.post("/play",Or),t.get("/test",Ybr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Nr)}};var K4=async(t,e,r)=>(await t.db.getObjectDefault("/pansou",{}))?.[e]||t.config.pansou?.[e]||r,woe=async t=>K4(t,"url","https://pan.199333.xyz"),Roe=async t=>{let e=await K4(t,"channels","");return e?e.split(",").map(r=>r.trim()).filter(r=>r):[]},Noe=async t=>{let e=await K4(t,"plugins","");return e?e.split(",").map(r=>r.trim()).filter(r=>r):[]},Ooe=async t=>{let e=await K4(t,"cloudTypes","");return e?e.split(",").map(r=>r.trim()).filter(r=>r):[]},z4=async(t,e,r)=>{await t.db.push(`/pansou/${e}`,r)},Jbr=async t=>{await t.db.delete("/pansou")};async function Poe(t){t.get("/config",async(e,r)=>{let n=await woe(e.server),s=await Roe(e.server),i=await Noe(e.server),a=await Ooe(e.server);r.send({code:0,data:{url:n,channels:s,plugins:i,cloudTypes:a}})}),t.put("/config",async(e,r)=>{await z4(e.server,"url",e.body.url||""),await z4(e.server,"channels",Array.isArray(e.body.channels)?e.body.channels.join(","):""),await z4(e.server,"plugins",Array.isArray(e.body.plugins)?e.body.plugins.join(","):""),await z4(e.server,"cloudTypes",Array.isArray(e.body.cloudTypes)?e.body.cloudTypes.join(","):""),r.send({code:0})}),t.delete("/config",async(e,r)=>{await Jbr(e.server),r.send({code:0})})}var vot={},Doe="pansou_group@@@",Xbr=5*60*1e3,Zbr=30,lE=new Map,eEr={ali:"aliyun",aliyun:"aliyun",alipan:"aliyun",a189:"tianyi",189:"tianyi",tianyi:"tianyi",yidong:"mobile",mobile:"mobile",a139:"mobile",cmcc:"mobile",123:"123",pan123:"123","123pan":"123",a115:"115",pan115:"115",thunder:"xunlei"},tEr={aliyun:"ali",mobile:"yidong",123:"123",115:"115"};function Vg(t){let e=String(t||"").trim().toLowerCase();return eEr[e]||e}function Sot(t){return[...new Set((t||[]).map(Vg).filter(Boolean))]}function rEr(t,e,r=""){let n=[t,e,r].map(s=>encodeURIComponent(s||""));return`${Doe}${n.join("@@@")}`}function Cot(t,e=!1){let r=String(t||"").trim();if(!r)return null;if(r.startsWith(Doe)){let n=r.slice(Doe.length).split("@@@");return n.length<2?null:{cloudType:decodeURIComponent(n[0]||""),keyword:decodeURIComponent(n[1]||""),searchToken:decodeURIComponent(n[2]||"")}}if(e&&r.includes("|")){let n=r.indexOf("|");return{cloudType:r.slice(0,n),keyword:r.slice(n+1),searchToken:""}}return null}function Iot(t){let e=Vg(t),r=tEr[e]||e;return nf().find(n=>n.key===r||Vg(n.key)===e)}function Tot(t){return String(t?.url||t?.URL||"").replace(/\s+/g,"")}function wot(t,e=null){let r=Vg(t),n=e||Iot(r);return{key:r,name:n?.name||r,pic:n?.pic||""}}async function koe(t){return{apiUrl:await woe(t),channels:await Roe(t),plugins:await Noe(t),cloudTypes:await Ooe(t)}}function nEr(t,e,r=""){let n={kw:t};return e.channels.length>0&&(n.channels=e.channels),e.plugins.length>0&&(n.plugins=e.plugins),r?n.cloud_types=Sot([r]):e.cloudTypes.length>0&&(n.cloud_types=Sot(e.cloudTypes)),n}function sEr(){return`${Date.now().toString(36)}${Math.random().toString(36).slice(2,10)}`}function iEr(t){let e=lE.get(t);return e?e.expiresAt<=Date.now()?(lE.delete(t),null):e.mergedByType:null}function aEr(t){if(!t||typeof t!="object")return"";let e=sEr();for(lE.set(e,{mergedByType:t,expiresAt:Date.now()+Xbr});lE.size>Zbr;){let r=lE.keys().next().value;lE.delete(r)}return e}function oEr(t){return t?t.startsWith("tg:")?t.substring(3):t.startsWith("plugin:")?t.substring(7):t:null}function cEr(t){return t?t.replace(/^(名称[::])/,"").replace(/\s+/g," ").trim():""}function uEr(t,e,r=""){let n=Vg(r),s=new Map;for(let[a,o]of Object.entries(t))if(!(n&&Vg(a)!==n)&&Array.isArray(o))for(let c of o){let u=Tot(c);if(!u)continue;let l=nf().find(A=>A.validator(u));if(!l)continue;let d=wot(a,l),f=c.images&&Array.isArray(c.images)&&c.images.length>0,p=f?c.images[0]:d.pic,m=f?p:u;s.has(m)||s.set(m,{links:[],panInfos:[],sources:[],pic:p,title:cEr(c.note||e)});let h=s.get(m);if(!h.links.includes(u)&&(h.links.push(u),h.panInfos.push(d),c.source)){let A=oEr(c.source);A&&!h.sources.includes(A)&&h.sources.push(A)}}let i=[];for(let[,a]of s.entries()){let o=[...new Set(a.panInfos.map(u=>u.name))].join("/"),c=a.sources.length>0?`:${a.sources[0]}`:"";i.push({vod_id:a.links.join("|"),vod_name:a.title,vod_pic:a.pic,vod_remarks:`${o}${c}`})}return i}function lEr(t,e,r=""){let n=new Map;for(let[s,i]of Object.entries(t||{})){if(!Array.isArray(i))continue;let a=String(s||"").trim(),o=Vg(a);if(!o)continue;let c=Iot(o),u=wot(o,c);for(let l of i){let d=Tot(l);d&&(n.has(o)||n.set(o,{cloudType:o,requestCloudType:a||o,name:u.name,pic:u.pic,links:new Set}),n.get(o).links.add(d))}}return[...n.values()].map(s=>{let i=rEr(s.requestCloudType,e,r);return{vod_id:i,vod_name:s.name||s.cloudType,vod_pic:s.pic||"",vod_remarks:`${s.links.size}\u6761\u7ED3\u679C`,vod_tag:"folder",type_id:"pan_category",type_name:"\u7F51\u76D8\u5206\u7C7B",panType:s.cloudType,cate:{id:i,name:s.name||s.cloudType}}})}async function Rot(t,e,r="",n=null){n=n||await koe(t);let s=nEr(e,n,r);return Ae.post(`${n.apiUrl}/api/search`,s)}function dEr(t){t.forEach(e=>{e.vod_name&&e.vod_id&&(vot[e.vod_id]=e.vod_name)})}async function fEr(t,e){return await qr(t,e),{}}async function pEr(t,e){return{class:[]}}async function mEr(t,e){let r=Cot(t.body?.id||t.body?.type_id||t.body?.categoryId,!0);return r?.cloudType&&r?.keyword?gEr(t,r.keyword,r.cloudType,r.searchToken):{page:1,pagecount:1,list:[]}}async function hEr(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[];for(let s of r){if(Cot(s))continue;let i=s.includes("|")?s.split("|"):[s],a=await Rr(i,t),o={};o.vod_name=vot[s]||"",a&&(o.vod_play_from=a.froms,o.vod_play_url=a.urls,o.vod_links=a.links),n.push(o)}return{list:n}}async function gEr(t,e,r,n=""){try{let s=String(e||"").trim(),i=parseInt(t.body?.page||"1",10)||1;if(!s)return{page:i,pagecount:1,list:[]};if(i>1)return{page:i,pagecount:1,list:[]};let a=await koe(t.server),o=n?iEr(n):null;if(o||(o=(await Rot(t.server,s,r,a)).data?.data?.merged_by_type),o){let c=uEr(o,s,r);return dEr(c),{page:1,pagecount:1,list:c}}}catch(s){console.error("PanSou category search error:",s)}return{page:1,pagecount:1,list:[]}}async function AEr(t,e){try{let r=String(t.body.wd||"").trim(),n=parseInt(t.body?.page||"1",10)||1;if(!r)return{page:n,pagecount:1,list:[]};if(n>1)return{page:n,pagecount:1,list:[]};let s=await koe(t.server),i=await Rot(t.server,r,"",s);if(i.data&&i.data.data&&i.data.data.merged_by_type){let a=i.data.data.merged_by_type,o=aEr(a);return{page:1,pagecount:1,list:lEr(a,r,o)}}return{page:1,pagecount:1,list:[]}}catch(r){return console.error("PanSou search error:",r),{page:1,pagecount:1,list:[]}}}var Not={meta:{key:"pansou",name:"\u300C\u76D8\u300DPanSou",type:3},api:async t=>{t.post("/init",fEr),t.post("/home",pEr),t.post("/category",mEr),t.post("/detail",hEr),t.post("/play",Or),t.post("/search",AEr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Nr)}};var dE=async t=>{let e=await t.db.getObjectDefault("/live2vod",{});return{sources:e?.sources||t.config.live2vod?.sources||[],showMode:e?.showMode||t.config.live2vod?.showMode||"groups",def_pic:e?.def_pic||t.config.live2vod?.def_pic||"https://ghproxy.net/https://raw.githubusercontent.com/hjdhnx/hipy-server/master/app/static/img/lives.jpg"}},Loe=async(t,e)=>{await t.db.push("/live2vod",e)},yEr=async t=>{await t.db.delete("/live2vod")};async function Boe(t){t.get("/config",async(e,r)=>{r.send({code:0,data:await dE(e.server)})}),t.put("/config",async(e,r)=>{await Loe(e.server,e.body),r.send({code:0})}),t.delete("/config",async(e,r)=>{await yEr(e.server),r.send({code:0})}),t.get("/sources",async(e,r)=>{let n=await dE(e.server);r.send({code:0,data:n.sources||[]})}),t.post("/sources",async(e,r)=>{let{name:n,url:s,img:i}=e.body;if(!n||!s){r.code(400).send({code:1,msg:"\u540D\u79F0\u548CURL\u4E0D\u80FD\u4E3A\u7A7A"});return}let a=await dE(e.server);a.sources=a.sources||[],a.sources.push({name:n,url:s,img:i||""}),await Loe(e.server,a),r.send({code:0})}),t.delete("/sources/:index",async(e,r)=>{let n=parseInt(e.params.index),s=await dE(e.server);s.sources&&n>=0&&n{if(i=i.trim(),i.startsWith("#EXTINF:")){let a=i.replace(/'/g,'"'),o="\u672A\u77E5\u9891\u9053",c="";try{let l=a.match(/group-title="(.*?)"/);l&&(o=l[1].trim())}catch{}try{let l=a.match(/tvg-logo="(.*?)"/);l&&(c=l[1].trim())}catch{}s={name:i.split(",").slice(-1)[0].trim(),logo:c,group:o}}else if(i.startsWith("http")&&s){let a=s.group;r[a]||(r[a]=[],n.push(a)),r[a].push({name:s.name,url:i,logo:s.logo}),s=null}}),{groups:r,groupNames:n}}function EEr(t){let e=t.split(` -`),r={},n=[],s="";return e.forEach(i=>{if(i=i.trim(),!!i){if(/,#/.test(i))s=i.split(",")[0].trim(),r[s]||(r[s]=[],n.push(s));else if(i.includes(",")&&s){let a=i.split(",");a.length>=2&&a[1].trim().startsWith("http")&&r[s].push({name:a[0].trim(),url:a[1].trim(),logo:""})}}}),{groups:r,groupNames:n}}async function J4(t){if(Cw[t])return Cw[t];let e=await xEr(t),r;/#EXTM3U/.test(e)?r=bEr(e):r=EEr(e);for(let n of Object.keys(r.groups)){let s=r.groups[n],i=new Map;s.forEach(a=>{i.has(a.name)?(i.get(a.name).urls.push(a.url),!i.get(a.name).logo&&a.logo&&(i.get(a.name).logo=a.logo)):i.set(a.name,{...a,urls:[a.url]})}),r.groups[n]=Array.from(i.values())}return Cw[t]=r,r}async function _Er(t,e){let r=await dE(t.server);Bo.sources=r.sources||[],Bo.def_pic=r.def_pic||Bo.def_pic,Object.keys(Cw).forEach(s=>delete Cw[s]),Y4={};let n=Bo.sources.map(async s=>{try{let i=await J4(s.url),a=[{n:"\u5168\u90E8",v:""}];i.groupNames.forEach(o=>{a.push({n:o,v:o})}),Y4[s.url]=[{key:"group",name:"",init:"",value:a}]}catch(i){console.error(`\u9884\u52A0\u8F7D\u76F4\u64AD\u6E90 ${s.name} \u5931\u8D25: ${i.message}`),Y4[s.url]=[]}});return await Promise.all(n),{}}async function SEr(t,e){return{class:Bo.sources.map(n=>({type_id:n.url,type_name:n.name})),filters:Y4}}async function vEr(t,e){let r=t.body.id,n=t.body.page||1,i=(t.body.filters||{}).group||"";if(n>1)return{page:n,pagecount:1,list:[]};let o=Bo.sources.find(c=>c.url===r)?.img||"";try{let c=await J4(r),u=[],l=i?[i]:c.groupNames;for(let d of l){let f=c.groups[d];f&&f.forEach(p=>{u.push({vod_id:r+"$"+d+"$"+p.name,vod_name:p.name,vod_pic:p.logo||o||Bo.def_pic,vod_remarks:d})})}return{page:1,pagecount:1,total:u.length,list:u}}catch(c){return console.error(`\u83B7\u53D6\u5206\u7C7B\u9875\u5931\u8D25: ${c.message}`),{page:1,pagecount:1,list:[]}}}async function CEr(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[];for(let s of r){let i=s.split("$"),a=i[0],o=i[1],c=i.slice(2).join("$"),u=Bo.sources.find(f=>f.url===a),l=u?.img||"",d=u?.name||"\u76F4\u64AD\u6E90";try{let m=(await J4(a)).groups[o]?.find(g=>g.name===c);if(!m){n.push({vod_id:s,vod_name:c,vod_pic:l||Bo.def_pic,vod_content:"\u672A\u627E\u5230\u9891\u9053",vod_play_from:d,vod_play_url:""});continue}let A=(m.urls||[m.url]).map((g,b)=>`\u7EBF\u8DEF${b+1}$${g}`);n.push({vod_id:s,vod_name:c,type_name:o,vod_pic:m.logo||l||Bo.def_pic,vod_content:`\u9891\u9053: ${c} +`);for(let r of e){let n=ss(r);if(n&&!/^(主演|类型|制片国家|语言|ä¸Šæ˜ æ—¥æœŸ|片长|又名|导演|编剧)\s*[::]/.test(Oue(n)))return n}return""}function Slt(t){return String(t||"").replace(/[0-ï¼™]/g,e=>String(e.charCodeAt(0)-65296))}function MIr(t){let e=String(t||"").replace(/两/g,"\u4E8C");if(!e)return 0;if(/^\d+$/.test(e))return Number(e);let r={\u96F6:0,"\u3007":0,\u4E00:1,\u4E8C:2,\u4E09:3,\u56DB:4,\u4E94:5,\u516D:6,\u4E03:7,\u516B:8,\u4E5D:9},n={\u5341:10,\u767E:100,\u5343:1e3,\u4E07:1e4},s=0,i=0,a=0;for(let o of e){if(r[o]!==void 0){a=r[o];continue}let c=n[o];if(!c)return 0;c===1e4?(i=(i+a)*c,s+=i,i=0):i+=(a||1)*c,a=0}return s+i+a}function E6(t){let e=ss(t).replace(/\.[a-z0-9]{2,5}$/i,""),r=e.match(/(?:^|[^0-90-ï¼™])(?:第\s*)?([0-90-ï¼™]{1,4})\s*(?:集|話|话|回|期)(?:\D|$)/);return r?"\u7B2C"+Slt(r[1]).replace(/^0+/,"")+"\u96C6":(r=e.match(/^0*([1-9][0-9]{0,3})(?=[\s._\-【\[((]|$)/),r?"\u7B2C"+r[1]+"\u96C6":"")}function blt(t){let e=Slt(ss(t)),r=e.match(/第\s*([0-9]{1,4}|[零〇一二三四五六七八九十百千万两]{1,8})\s*(?:集|話|话|回|期)/);return r?MIr(r[1].replace(/^0+/,"")):(r=e.match(/^0*([1-9][0-9]{0,3})(?=[\s._\-【\[((]|$)/),r?Number(r[1]):0)}function Ilt(t,e){let r=Oue(vlt(t));if(!r)return{name:"",remark:""};let n=r.match(/^[【\[]\s*([^】\]]+?)\s*[】\]]/);if(n)return{name:ss(n[1]),remark:E6(e)};let s=r.startsWith("#")?r.replace(/^#+\s*/,"").trim():r;if(!s)return{name:"",remark:""};if(!r.startsWith("#"))return{name:ss(s),remark:E6(e)};let i=s.match(/^(.*?)\s*(第\s*[0-90-9零〇一二三四五六七八九十百千万两]+\s*(?:集|話|话|回|期))(?:\s|$)/);return i?{name:ss(i[1]),remark:ss(i[2]).replace(/\s+/g,"")}:{name:ss(s),remark:E6(e)}}function py(t){if(!t)return[];if(Array.isArray(t))return t;if(typeof t[Symbol.iterator]=="function"&&typeof t!="string")return[...t].filter(e=>e!=null);if(typeof t.length=="number"&&typeof t!="string"){let e=[];for(let r=0;r/^\d+$/.test(e)).sort((e,r)=>Number(e)-Number(r)).map(e=>t[e]).filter(e=>e!=null):[]}function kue(t){return encodeURIComponent(JSON.stringify(t||{}))}function my(t){return t?JSON.parse(decodeURIComponent(String(t))):{}}function v6(t){if(t=Number(t||0),!t||t<0)return"";let e=["B","KB","MB","GB","TB"],r=t,n=0;for(;r>=1024&&n=100?0:r>=10?1:2;return`${r.toFixed(s)} ${e[n]}`}function WIr(t){if(t=Number(t||0),!t)return"";let e=new Date(t*1e3),r=String(e.getMonth()+1).padStart(2,"0"),n=String(e.getDate()).padStart(2,"0"),s=String(e.getHours()).padStart(2,"0"),i=String(e.getMinutes()).padStart(2,"0");return`${r}-${n} ${s}:${i}`}function b6(t,e){let r=0;for(let n of e)t.indexOf(n)>=0&&r++;return r}function Clt(t){let e=String(t&&t.text||""),r=String(t&&t.name||""),n=(e+` +`+r).toLowerCase();if(!n.trim())return!1;let i=b6(n,["@duguan","\u8D4C\u9986","\u6D3B\u52A8\u9891\u9053","\u9996\u5B58","\u6D41\u6C34","\u6CE8\u518C\u9001","\u65B0\u7528\u6237\u6CE8\u518C","\u5173\u95EDvpn","\u5A31\u4E50\u57CE","\u5A31\u4E50\u5E73\u53F0","\u8D4C\u573A","\u535A\u5F69","\u767E\u5BB6\u4E50","\u516D\u5408\u5F69","\u9001\u5F69\u91D1","\u5F69\u91D1","\u6295\u6CE8","\u5145\u503C","\u63D0\u6B3E","\u63D0\u73B0","\u4E0A\u5206","\u4E0B\u5206","\u8FD4\u6C34","\u4F63\u91D1","\u76D8\u53E3","\u9A8C\u8D44","\u5B98\u65B9\u5BA2\u670D","\u798F\u5229\u9891\u9053","\u6CE8\u518C\u7F51\u5740","\u62C5\u4FDD\u57DF\u540D"]),a=b6(n,["\u6CE8\u518C","\u9996\u5B58","\u9996\u5145","\u5145\u503C","\u5B58\u6B3E","\u6D41\u6C34","\u8FD4\u6C34","\u4E0B\u6CE8","\u6295\u6CE8","\u4E0A\u5206","\u4E0B\u5206","\u5F69\u91D1","\u9001\u5F69\u91D1","\u4F63\u91D1","\u6551\u63F4\u91D1","\u63D0\u6B3E","\u63D0\u73B0","\u51FA\u6B3E","\u9886\u53D6"]),o=b6(n,["\u6D3B\u52A8\u9891\u9053","\u5E73\u53F0","\u4FE1\u8A89\u5E73\u53F0","\u5A31\u4E50\u57CE","\u5A31\u4E50\u5E73\u53F0","\u8D4C\u573A","\u535A\u5F69","\u767E\u5BB6\u4E50","\u516D\u5408\u5F69","\u89C6\u8BAF","\u771F\u4EBA","\u76D8\u53E3","\u72D7\u5E84","pg\u96C6\u56E2","pg\u5A31\u4E50\u57CE","pg\u76F4\u8425","\u6C47\u65FA","\u8C6A\u535A\u5A31\u4E50","\u9A8C\u8D44","vpn","\u6D4F\u89C8\u5668\u75284g\u7F51\u7EDC"]),c=b6(n,["\u5B98\u65B9\u5BA2\u670D","\u798F\u5229\u9891\u9053","\u6CE8\u518C\u7F51\u5740","\u62C5\u4FDD\u57DF\u540D","\u603B\u7FA4","\u5BA2\u670D","\u9891\u9053","bot","http://","https://"]),u=(n.match(/@[a-z0-9_]{4,}/g)||[]).length,l=(n.match(/[a-z0-9][a-z0-9-]+\.(?:com|net|cc|top|vip|app)\b/g)||[]).length,d=(n.match(/注册/g)||[]).length>=3;return i>=2||a>0&&o>0||a>=2&&(c>0||u>=2||l>0)||o>=2&&(c>0||u>=2||l>0)||d}async function $Ir(t){let e=process.env.TGFILEBOT_URL||await wue(t),r=process.env.TGFILEBOT_PASSWORD||process.env.TGFILEBOT_KEY||await Rue(t);return{url:LIr(e)||PIr,password:String(r||"").trim()}}async function Tlt(t,e,r={}){let n=await $Ir(t),s=new URL(e,n.url+"/"),i={...r};n.password&&(i.key=n.password);for(let[a,o]of Object.entries(i))o==null||o===""||s.searchParams.set(a,String(o));return s.toString()}async function I6(t,e,r={},n=3e4){let s=await Tlt(t,e,r),i=await he.get(s,{timeout:n,validateStatus:()=>!0});if(i.status<200||i.status>=300)throw new Error(`TGFileBot ${e} HTTP ${i.status}`);return typeof i.data=="string"?JSON.parse(i.data):i.data||{}}function UIr(t){let e=ss(t);return e?e.startsWith("#")?[e]:[e,"#"+e]:[]}function _6(t){return Oue(t).replace(/^#+\s*/,"").replace(/[\s._\-::,,.。!!??、/\\|()[\]【】()《》<>〈〉"'“”‘’·]/g,"").toLowerCase()}function FIr(t){return String(t||"").replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function qIr(t,e){let r=ss(e).replace(/^#+\s*/,"");return r?new RegExp("(^|\\s)#"+FIr(r)+"(?=\\s|$|#)").test(String(t||"")):!1}function S6(t){try{return my(t&&t.vod_id)}catch{return{}}}function jIr(t,e){let r=S6(t),n=_6(ss(e).replace(/^#+\s*/,""));if(!n)return 0;let s=_6(r.name||t&&t.vod_name||""),i=_6(vlt(r.text||"")),a=_6(r.text||"");return s===n?100:i===n?98:qIr(r.text||"",e)?95:s.startsWith(n)?80:i.startsWith(n)?75:s.indexOf(n)>=0?60:i.indexOf(n)>=0?50:a.indexOf(n)>=0?10:0}function QIr(t,e){return t.map((r,n)=>{let s=S6(r);return{video:r,index:n,score:jIr(r,e),date:Number(s.date||0)}}).sort((r,n)=>n.score!==r.score?n.score-r.score:n.date!==r.date?n.date-r.date:r.index-n.index).map(r=>r.video)}function HIr(t,e){let r=new Set(t.map(n=>{let s=S6(n);return`${s.cid||""}:${s.mid||""}`}));for(let n of e){let s=S6(n),i=`${s.cid||""}:${s.mid||""}`;i!==":"&&r.has(i)||(i!==":"&&r.add(i),t.push(n))}return t}function GIr(t,e=""){let r=Ilt(t?.text||t?.name,t?.name),n=r.name||ss(t?.name)||`Telegram ${t?.mid||""}`.trim(),s=r.remark||ss(t?.remark),i={cid:t?.cid,mid:t?.mid,reply_mid:t?.reply_mid||0,name:n,remark:s,text:t?.text||"",size:t?.size||0,date:t?.date||0,channel:e||""};return{vod_id:kue(i),vod_name:n,type_name:e||"",vod_pic:t?.pic||t?.cover||t?.thumb||_lt,vod_remarks:i.remark||"",topRightRemarks:v6(t?.size)||""}}function wlt(t){let e=[];for(let r of py(t)){let n=r&&r.channel?r.channel:"",s=py(r&&r.item);for(let i of s)!i||Clt(i)||e.push(GIr(i,n))}return e.sort((r,n)=>{try{return Number(my(n.vod_id).date||0)-Number(my(r.vod_id).date||0)}catch{return 0}}),e}function zIr(t){if(!t||!t.cid)return!1;if(t.reply_mid)return!0;let e=String(t.text||"");return e.trim()?/(剧集选择|评论区|评论|留言|回复|comment=|t\.me\/[a-z0-9_]+\/\d+\?comment=|t\.me\/c\/\d+\/\d+\?comment=)/i.test(e):!1}function Rlt(t,e){return`${Elt(t)}$${kue(KIr(e))}`}function KIr(t){return{cid:t?.cid,mid:t?.mid,reply_mid:t?.reply_mid||0,name:t?.name||"",remark:t?.remark||"",size:t?.size||0,date:t?.date||0,channel:t?.channel||""}}function VIr(t){let e=String(t||""),r=e.indexOf("$");return r<0?{title:e,token:""}:{title:e.slice(0,r),token:e.slice(r+1)}}function YIr(t){let e=VIr(t);try{let r=my(e.token),n=blt(r.remark||"");if(n>0)return n}catch{}return blt(e.title)}function JIr(t){return t.map((e,r)=>({item:e,index:r,episode:YIr(e)})).sort((e,r)=>{let n=e.episode>0,s=r.episode>0;return n&&s&&e.episode!==r.episode?e.episode-r.episode:n!==s?n?-1:1:e.index-r.index}).map(e=>e.item)}function Nlt(t,e){let r=Elt(t),n=v6(e);return!n||r.indexOf(n)>=0?r:`${r} ${n}`}function XIr(t){return t&&t.items?py(t.items):t&&t.item?[t]:py(t)}function ZIr(t,e,r){let n=new Set;for(let s of t){let i=String(s).split("$").slice(1).join("$");try{let a=my(i);n.add(`${a.cid||""}:${a.mid||""}`)}catch{}}for(let s of py(r)){let i=py(s&&s.item);for(let a of i){if(!a||!a.cid||!a.mid||Clt(a))continue;let o=`${a.cid}:${a.mid}`;if(n.has(o))continue;let c=Ilt(a.text||e.text||a.name,a.name),u=c.name||e.name,l=c.remark||E6(a.name)||"",d={...e,cid:a.cid,mid:a.mid,reply_mid:a.reply_mid||0,name:u,remark:l,size:a.size||0,date:a.date||e.date||0,text:a.text||e.text||""},f=l||ss(a.name)||e.remark||e.name;n.add(o),t.push(Rlt(Nlt(f,a.size),d))}}return t}async function eCr(t,e){try{let r=await I6(t.server,"/channels",{},12e3);return{class:py(r.channels).map(s=>{let i=ss(s&&s.id);return i?{type_id:i,type_name:ss(s.name)||i}:null}).filter(Boolean)}}catch(r){return console.error("[tgfilebot] channels failed",r?.message||r),{class:[]}}}async function tCr(t,e){let r=Math.max(Number.parseInt(t.body?.page||"1",10)||1,1),n=ss(t.body?.id||"all")||"all",s=await I6(t.server,"/latest",{channel:n,page:r,limit:kw}),i=wlt(s.items);return{page:r,pagecount:s.more?r+1:r,limit:kw,total:s.total||i.length,list:i}}async function rCr(t,e){let r=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],n=[];for(let s of r.filter(Boolean)){let i=my(s),a=kue(i),o=ss(i.name)||`Telegram ${i.mid||""}`.trim(),c=[Rlt(Nlt(i.remark||o,i.size),i)];try{let l=i.reply_mid||i.mid;if(i.cid&&l&&zIr(i)){let d=await I6(t.server,"/replies",{cid:i.cid,mid:l,limit:DIr},2e4);ZIr(c,i,XIr(d))}}catch(l){console.error("[tgfilebot] replies skipped",l?.message||l)}let u=[i.remark?`Remark: ${i.remark}`:"",i.channel?`Channel: ${i.channel}`:"",i.cid?`CID: ${i.cid}`:"",i.mid?`MID: ${i.mid}`:"",i.size?`Size: ${v6(i.size)}`:"",i.date?`Date: ${WIr(i.date)}`:"",ss(i.text||"")].filter(Boolean).join(` +`);n.push({vod_id:a,vod_name:o,type_name:i.channel||"",vod_pic:i.pic||_lt,vod_remarks:i.remark||"",topRightRemarks:v6(i.size)||"",vod_content:u,vod_play_from:"TGFileBot",vod_play_url:JIr(c).join("#")})}return{list:n}}async function nCr(t,e){let r=my(t.body?.id);return!r.cid||!r.mid?{parse:0,url:""}:{parse:0,url:await Tlt(t.server,"/stream",{cid:r.cid,mid:r.mid,cate:"user"})}}async function sCr(t,e){let r=ss(t.body?.wd||""),n=Math.max(Number.parseInt(t.body?.page||"1",10)||1,1);if(!r)return{page:n,pagecount:n,list:[]};let s=[];for(let i of UIr(r))try{let a=await I6(t.server,"/search",{keywords:i,page:n,limit:kw},2e4);s=HIr(s,wlt(a.items))}catch(a){console.error("[tgfilebot] search variant failed",i,a?.message||a)}return s=QIr(s,r),{page:n,pagecount:s.length>=kw?n+1:n,limit:kw,total:s.length,list:s}}var Olt={meta:{key:"tgfilebot",name:"\u300C\u76F4\u300DTGFileBot",type:3},api:async t=>{t.post("/init",BIr),t.post("/home",eCr),t.post("/category",tCr),t.post("/detail",rCr),t.post("/play",nCr),t.post("/search",sCr)}};var Plt=Ce(NI(),1),Pue=Ce(Xn(),1),hy="https://frodo.douban.com",fi={},klt=t=>`Rexxar-Core/0.1.3 api-client/1 com.douban.frodo/7.9.0(216) Android/28 product/Xiaomi11 rom/android network/wifi udid/${t} platform/mobile com.douban.frodo/7.9.0(216) Rexxar/1.2.151 platform/mobile 1.2.151`;async function Dlt(t){if(fi.id&&fi.ua)return fi;let e=t.server.prefix+"/device";return fi=await t.server.db.getObjectDefault(e,{}),fi.id?fi.ua||(fi.ua=klt(fi.id),await t.server.db.push(e,fi)):(fi.id=Yh(40).toLowerCase(),fi.ua=klt(fi.id),await t.server.db.push(e,fi)),fi}function gy(t){t+=`&udid=${fi.id}&uuid=${fi.id}&&rom=android&apikey=0dad551ec0f84ed02907ff5c42e8ec70&s=rexxar_new&channel=Yingyongbao_Market&timezone=Asia/Shanghai&device_id=${fi.id}&os_rom=android&apple=c52fbb99b908be4d026954cc4374f16d&mooncake=0f607264fc6318a92b9e13c65db7cd3c&sugar=0`;let e=new URL(t),r=(0,Plt.default)().unix().toString(),n=Pue.default.HmacSHA1("GET&"+encodeURIComponent(e.pathname)+"&"+r,"bf7dddc7c9cfe6f7"),s=Pue.default.enc.Base64.stringify(n);return t+"&_sig="+encodeURIComponent(s)+"&_ts="+r}async function yy(t,e){return(await fe.get(t,{headers:{"User-Agent":e||fi.ua}})).data}async function iCr(t,e){return await Dlt(t),{}}async function aCr(t,e){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={};return 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"}]}],n.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"}]}],n.t2=[{key:"form",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{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"}]},{key:"genre",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u6050\u6016",v:"\u6050\u6016"},{n:"\u5BB6\u5EAD",v:"\u5BB6\u5EAD"},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u6B66\u4FA0",v:"\u6B66\u4FA0"},{n:"\u9752\u6625",v:"\u9752\u6625"},{n:"\u540C\u6027",v:"\u540C\u6027"},{n:"\u97F3\u4E50",v:"\u97F3\u4E50"},{n:"\u6B4C\u821E",v:"\u6B4C\u821E"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u4F20\u8BB0",v:"\u4F20\u8BB0"},{n:"\u8FD0\u52A8",v:"\u8FD0\u52A8"},{n:"\u897F\u90E8",v:"\u897F\u90E8"},{n:"\u707E\u96BE",v:"\u707E\u96BE"}]},{key:"region",name:"",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:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u5370\u5EA6",v:"\u5370\u5EA6"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u610F\u5927\u5229",v:"\u610F\u5927\u5229"},{n:"\u52A0\u62FF\u5927",v:"\u52A0\u62FF\u5927"},{n:"\u6FB3\u5927\u5229\u4E9A",v:"\u6FB3\u5927\u5229\u4E9A"},{n:"\u4FC4\u7F57\u65AF",v:"\u4FC4\u7F57\u65AF"},{n:"\u745E\u5178",v:"\u745E\u5178"},{n:"\u4E39\u9EA6",v:"\u4E39\u9EA6"},{n:"\u5DF4\u897F",v:"\u5DF4\u897F"},{n:"\u58A8\u897F\u54E5",v:"\u58A8\u897F\u54E5"}]},{key:"year",name:"",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"},{n:"2019",v:"2019"},{n:"2010\u5E74\u4EE3",v:"2010\u5E74\u4EE3"},{n:"2000\u5E74\u4EE3",v:"2000\u5E74\u4EE3"},{n:"90\u5E74\u4EE3",v:"90\u5E74\u4EE3"},{n:"80\u5E74\u4EE3",v:"80\u5E74\u4EE3"},{n:"70\u5E74\u4EE3",v:"70\u5E74\u4EE3"},{n:"60\u5E74\u4EE3",v:"60\u5E74\u4EE3"},{n:"\u66F4\u65E9",v:"\u66F4\u65E9"}]},{key:"sort",name:"",init:"U",value:[{n:"\u70ED\u5EA6",v:"U"},{n:"\u8BC4\u5206",v:"S"},{n:"\u65F6\u95F4",v:"R"}]}],{class:r,filters:n}}async function oCr(t,e){await Dlt(t);let r=t.body.id,n=t.body.page,s=t.body.filters,i=n||1;if(i==0&&(i=1),r=="t1"){let a=gy(`${hy}/api/v2/${s.u||"movie/hot_gaia"}?area=\u5168\u90E8&sort=recommend&playable=0&loc_id=0&start=${(i-1)*30}&count=30`),o=await yy(a),c=[];for(let u of o.items||o.subject_collection_items){let l=(u.rating&&u.rating.value||"").toString();c.push({vod_id:u.id,vod_name:u.title,vod_pic:u.pic.normal||u.pic.large,vod_remarks:l.length>0?"\u8BC4\u5206:"+l:""})}return{page:parseInt(i),pagecount:Math.ceil(o.total/30),list:c}}else if(r=="t250"){let a=gy(`${hy}/api/v2/subject_collection/movie_top250/items?area=\u5168\u90E8&sort=recommend&playable=0&loc_id=0&start=${(i-1)*30}&count=30`),o=await yy(a),c=[];for(let u of o.items||o.subject_collection_items){let l=(u.rating&&u.rating.value||"").toString();c.push({vod_id:u.id,vod_name:u.title,vod_pic:u.pic.normal||u.pic.large,vod_remarks:l.length>0?"\u8BC4\u5206:"+l:""})}return{page:parseInt(i),pagecount:Math.ceil(o.total/30),list:c}}else if(r=="t2"){let a=s.form||"",o=s.genre||"",c=s.region||"",u=s.year||"",l=s.sort||"U",d=a,f=o,p="movie";d==="\u52A8\u753B"&&(d="\u7535\u89C6\u5267",f||(f="\u52A8\u753B")),(d==="\u7535\u89C6\u5267"||d==="\u7EFC\u827A")&&(p="tv");let m={};f&&(m.\u7C7B\u578B=f),d&&(m.\u5F62\u5F0F=d),c&&(m.\u5730\u533A=c);let h=[];a&&h.push(a),o&&h.push(o),c&&h.push(c),u&&h.push(u);let y=new URLSearchParams({refresh:"0",start:((i-1)*30).toString(),count:"30",selected_categories:JSON.stringify(m),uncollect:"false",score_range:"0,10"});l&&y.append("sort",l),h.length>0&&y.append("tags",h.join(","));let g=`https://m.douban.com/rexxar/api/v2/${p}/recommend?${y.toString()}`,x=(await fe.get(g,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36",Referer:"https://m.douban.com/"}})).data,A=x&&x.items?x.items:[],S=[];for(let I of A)if(I&&(I.type==="movie"||I.type==="tv")){let R="";if(I.rating&&typeof I.rating.value<"u"){let w=I.rating.value;R=typeof w=="number"?w.toFixed(1):w.toString()}S.push({vod_id:I.id||"",vod_name:I.title||"",vod_pic:I.pic&&(I.pic.normal||I.pic.large)||"",vod_remarks:R?"\u8BC4\u5206:"+R:""})}return{page:parseInt(i),pagecount:i<10?i+1:i,list:S}}else if(r=="t3"){let a=gy(`${hy}/api/v2/movie/category_ranks?count=30&category=recent_hot`),o=await yy(a),c=[];for(let u of o.selected_collections)c.push({vod_id:"cr_"+u.id,vod_name:u.short_name||u.title,vod_pic:u.cover_url,vod_remarks:"",cate:{}});a=gy(`${hy}/api/v2/tv/category_ranks?count=30&category=recent_hot`),o=await yy(a);for(let u of o.selected_collections)c.push({vod_id:"cr_"+u.id,vod_name:u.short_name||u.title,vod_pic:u.cover_url,vod_remarks:"",cate:{}});return{page:1,pagecount:1,list:c}}else if(r=="t4"){let a=gy(`${hy}/api/v2/skynet/new_playlists?subject_type=${s.type||""}&category=${s.cate||"all"}&loc_id=0&start=${(i-1)*30}&count=30`),o=await yy(a),c=[];for(let u of o.data[0].items)c.push({vod_id:u.owner?"dl_"+u.id:"cr_"+u.id,vod_name:u.title,vod_pic:u.cover_url,vod_remarks:"",cate:{}});return{page:parseInt(i),pagecount:Math.ceil(o.total/30),list:c}}else if(r.startsWith("cr_")){let a=gy(`${hy}/api/v2/subject_collection/${r.substring(3)}/items?start=${(i-1)*30}&count=30&updated_at=&items_only=1`),o=await yy(a),c=[];for(let u of o.subject_collection_items){let l=(u.rating&&u.rating.value||"").toString();c.push({vod_id:u.id,vod_name:u.title,vod_pic:u.pic.normal||u.pic.large,vod_remarks:l.length>0?"\u8BC4\u5206:"+l:""})}return{page:parseInt(i),pagecount:Math.ceil(o.total/30),list:c}}else if(r.startsWith("dl_")){let a=gy(`${hy}/api/v2/doulist/${r.substring(3)}/posts?start=${(i-1)*30}&count=30&updated_at=&items_only=1`),o=await yy(a),c=[];for(let u of o.items){let l=u.content.subject;if(!l)continue;let d=(l.rating&&l.rating.value||"").toString();c.push({vod_id:l.id,vod_name:l.title,vod_pic:l.pic.normal||l.pic.large,vod_remarks:d.length>0?"\u8BC4\u5206:"+d:""})}return{page:parseInt(i),pagecount:Math.ceil(o.total/30),list:c}}}async function cCr(t,e){return{}}async function uCr(t,e){return{}}async function lCr(t,e){return{}}async function dCr(t,e){try{let r=function(a){a.statusCode&&a.statusCode==500&&console.error(a)},n=t.server.prefix,s={},i=await t.server.inject().post(`${n}/init`);if(s.init=i.json(),r(i.json()),i=await t.server.inject().post(`${n}/home`),s.home=i.json(),r(i.json()),s.home.class.length>0&&(i=await t.server.inject().post(`${n}/category`).payload({id:s.home.class[0].type_id,page:1,filter:!0,filters:{}}),s.category=i.json(),r(i.json()),s.category.list.length>0&&(i=await t.server.inject().post(`${n}/detail`).payload({id:s.category.list[0].vod_id}),s.detail=i.json(),r(i.json()),s.detail.list&&s.detail.list.length>0))){s.play=[];for(let a of s.detail.list){let o=a.vod_play_from.split("$$$"),c=a.vod_play_url.split("$$$");for(let u=0;u{t.post("/init",iCr),t.post("/home",aCr),t.post("/category",oCr),t.post("/detail",cCr),t.post("/play",uCr),t.post("/search",lCr),t.get("/test",dCr)}};function fCr(t){let e=String(t||"").split("#")[0]||"",r=e.indexOf("$");return r>0?e.slice(0,r).trim():""}async function pCr(t,e){return{}}async function mCr(t,e){return"true"}async function hCr(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[];for(let s of r){let i={vod_id:s,vod_content:"",vod_name:s,vod_pic:"https://pic.rmb.bdstatic.com/bjh/1d0b02d0f57f0a42201f92caba5107ed.jpeg"},a=await Xt(s,t);if(a){i.vod_play_from=a.froms,i.vod_play_url=a.urls;let o=fCr(i.vod_play_url);o&&(i.vod_name=o)}n.push(i)}return{list:n}}async function gCr(t,e){try{let r=function(a){a.statusCode&&a.statusCode==500&&console.error(a)},n=t.server.prefix,s={},i=await t.server.inject().post(`${n}/support`).payload({clip:"https://xx.xx/1.m3u8"});return s.support=i.json(),r(i.json()),i=await t.server.inject().post(`${n}/detail`).payload({id:"https://xx.xx/1.m3u8"}),s.detail=i.json(),r(i.json()),i=await t.server.inject().post(`${n}/play`).payload({flag:"xx",id:"https://xx.xx/1.m3u8"}),s.play=i.json(),r(i.json()),s}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var Llt={meta:{key:"push",name:"\u63A8\u9001",type:4},api:async t=>{t.post("/init",pCr),t.post("/support",mCr),t.post("/detail",hCr),t.post("/play",er),t.get("/test",gCr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt)}};var T6=async(t,e,r)=>(await t.db.getObjectDefault("/pansou",{}))?.[e]||t.config.pansou?.[e]||r,Due=async t=>T6(t,"url","https://pan.199333.xyz"),Bue=async t=>{let e=await T6(t,"channels","");return e?e.split(",").map(r=>r.trim()).filter(r=>r):[]},Lue=async t=>{let e=await T6(t,"plugins","");return e?e.split(",").map(r=>r.trim()).filter(r=>r):[]},Mue=async t=>{let e=await T6(t,"cloudTypes","");return e?e.split(",").map(r=>r.trim()).filter(r=>r):[]},C6=async(t,e,r)=>{await t.db.push(`/pansou/${e}`,r)},yCr=async t=>{await t.db.delete("/pansou")};async function Wue(t){t.get("/config",async(e,r)=>{let n=await Due(e.server),s=await Bue(e.server),i=await Lue(e.server),a=await Mue(e.server);r.send({code:0,data:{url:n,channels:s,plugins:i,cloudTypes:a}})}),t.put("/config",async(e,r)=>{await C6(e.server,"url",e.body.url||""),await C6(e.server,"channels",Array.isArray(e.body.channels)?e.body.channels.join(","):""),await C6(e.server,"plugins",Array.isArray(e.body.plugins)?e.body.plugins.join(","):""),await C6(e.server,"cloudTypes",Array.isArray(e.body.cloudTypes)?e.body.cloudTypes.join(","):""),r.send({code:0})}),t.delete("/config",async(e,r)=>{await yCr(e.server),r.send({code:0})})}var Wlt={},$ue="pansou_group@@@",ACr=5*60*1e3,xCr=30,Z1=new Map,bCr={ali:"aliyun",aliyun:"aliyun",alipan:"aliyun",a189:"tianyi",189:"tianyi",tianyi:"tianyi",yidong:"mobile",mobile:"mobile",a139:"mobile",cmcc:"mobile",123:"123",pan123:"123","123pan":"123",a115:"115",pan115:"115",thunder:"xunlei"},_Cr={aliyun:"ali",mobile:"yidong",123:"123",115:"115"};function Ay(t){let e=String(t||"").trim().toLowerCase();return bCr[e]||e}function Mlt(t){return[...new Set((t||[]).map(Ay).filter(Boolean))]}function ECr(t,e,r=""){let n=[t,e,r].map(s=>encodeURIComponent(s||""));return`${$ue}${n.join("@@@")}`}function $lt(t,e=!1){let r=String(t||"").trim();if(!r)return null;if(r.startsWith($ue)){let n=r.slice($ue.length).split("@@@");return n.length<2?null:{cloudType:decodeURIComponent(n[0]||""),keyword:decodeURIComponent(n[1]||""),searchToken:decodeURIComponent(n[2]||"")}}if(e&&r.includes("|")){let n=r.indexOf("|");return{cloudType:r.slice(0,n),keyword:r.slice(n+1),searchToken:""}}return null}function Ult(t){let e=Ay(t),r=_Cr[e]||e;return Si().find(n=>n.key===r||Ay(n.key)===e)}function Flt(t){return String(t?.url||t?.URL||"").replace(/\s+/g,"")}function qlt(t,e=null){let r=Ay(t),n=e||Ult(r);return{key:r,name:n?.name||r,pic:n?.pic||""}}async function Uue(t){return{apiUrl:await Due(t),channels:await Bue(t),plugins:await Lue(t),cloudTypes:await Mue(t)}}function vCr(t,e,r=""){let n={kw:t};return e.channels.length>0&&(n.channels=e.channels),e.plugins.length>0&&(n.plugins=e.plugins),r?n.cloud_types=Mlt([r]):e.cloudTypes.length>0&&(n.cloud_types=Mlt(e.cloudTypes)),n}function SCr(){return`${Date.now().toString(36)}${Math.random().toString(36).slice(2,10)}`}function ICr(t){let e=Z1.get(t);return e?e.expiresAt<=Date.now()?(Z1.delete(t),null):e.mergedByType:null}function CCr(t){if(!t||typeof t!="object")return"";let e=SCr();for(Z1.set(e,{mergedByType:t,expiresAt:Date.now()+ACr});Z1.size>xCr;){let r=Z1.keys().next().value;Z1.delete(r)}return e}function TCr(t){return t?t.startsWith("tg:")?t.substring(3):t.startsWith("plugin:")?t.substring(7):t:null}function wCr(t){return t?t.replace(/^(名称[::])/,"").replace(/\s+/g," ").trim():""}function RCr(t,e,r=""){let n=Ay(r),s=new Map;for(let[a,o]of Object.entries(t))if(!(n&&Ay(a)!==n)&&Array.isArray(o))for(let c of o){let u=Flt(c);if(!u)continue;let l=Si().find(y=>y.validator(u));if(!l)continue;let d=qlt(a,l),f=c.images&&Array.isArray(c.images)&&c.images.length>0,p=f?c.images[0]:d.pic,m=f?p:u;s.has(m)||s.set(m,{links:[],panInfos:[],sources:[],pic:p,title:wCr(c.note||e)});let h=s.get(m);if(!h.links.includes(u)&&(h.links.push(u),h.panInfos.push(d),c.source)){let y=TCr(c.source);y&&!h.sources.includes(y)&&h.sources.push(y)}}let i=[];for(let[,a]of s.entries()){let o=[...new Set(a.panInfos.map(u=>u.name))].join("/"),c=a.sources.length>0?`:${a.sources[0]}`:"";i.push({vod_id:a.links.join("|"),vod_name:a.title,vod_pic:a.pic,vod_remarks:`${o}${c}`})}return i}function NCr(t,e,r=""){let n=new Map;for(let[s,i]of Object.entries(t||{})){if(!Array.isArray(i))continue;let a=String(s||"").trim(),o=Ay(a);if(!o)continue;let c=Ult(o),u=qlt(o,c);for(let l of i){let d=Flt(l);d&&(n.has(o)||n.set(o,{cloudType:o,requestCloudType:a||o,name:u.name,pic:u.pic,links:new Set}),n.get(o).links.add(d))}}return[...n.values()].map(s=>{let i=ECr(s.requestCloudType,e,r);return{vod_id:i,vod_name:s.name||s.cloudType,vod_pic:s.pic||"",vod_remarks:`${s.links.size}\u6761\u7ED3\u679C`,vod_tag:"folder",type_id:"pan_category",type_name:"\u7F51\u76D8\u5206\u7C7B",panType:s.cloudType,cate:{id:i,name:s.name||s.cloudType}}})}async function jlt(t,e,r="",n=null){n=n||await Uue(t);let s=vCr(e,n,r);return he.post(`${n.apiUrl}/api/search`,s)}function OCr(t){t.forEach(e=>{e.vod_name&&e.vod_id&&(Wlt[e.vod_id]=e.vod_name)})}async function kCr(t,e){return await lr(t,e),{}}async function PCr(t,e){return{class:[]}}async function DCr(t,e){let r=$lt(t.body?.id||t.body?.type_id||t.body?.categoryId,!0);return r?.cloudType&&r?.keyword?LCr(t,r.keyword,r.cloudType,r.searchToken):{page:1,pagecount:1,list:[]}}async function BCr(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[];for(let s of r){if($lt(s))continue;let i=s.includes("|")?s.split("|"):[s],a=await Xt(i,t),o={};o.vod_name=Wlt[s]||"",a&&(o.vod_play_from=a.froms,o.vod_play_url=a.urls,o.vod_links=a.links),n.push(o)}return{list:n}}async function LCr(t,e,r,n=""){try{let s=String(e||"").trim(),i=parseInt(t.body?.page||"1",10)||1;if(!s)return{page:i,pagecount:1,list:[]};if(i>1)return{page:i,pagecount:1,list:[]};let a=await Uue(t.server),o=n?ICr(n):null;if(o||(o=(await jlt(t.server,s,r,a)).data?.data?.merged_by_type),o){let c=RCr(o,s,r);return OCr(c),{page:1,pagecount:1,list:c}}}catch(s){console.error("PanSou category search error:",s)}return{page:1,pagecount:1,list:[]}}async function MCr(t,e){try{let r=String(t.body.wd||"").trim(),n=parseInt(t.body?.page||"1",10)||1;if(!r)return{page:n,pagecount:1,list:[]};if(n>1)return{page:n,pagecount:1,list:[]};let s=await Uue(t.server),i=await jlt(t.server,r,"",s);if(i.data&&i.data.data&&i.data.data.merged_by_type){let a=i.data.data.merged_by_type,o=CCr(a);return{page:1,pagecount:1,list:NCr(a,r,o)}}return{page:1,pagecount:1,list:[]}}catch(r){return console.error("PanSou search error:",r),{page:1,pagecount:1,list:[]}}}var Qlt={meta:{key:"pansou",name:"\u300C\u76D8\u300DPanSou",type:3},api:async t=>{t.post("/init",kCr),t.post("/home",PCr),t.post("/category",DCr),t.post("/detail",BCr),t.post("/play",er),t.post("/search",MCr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt)}};var Hlt="https://pinglian.lol";function WCr(t,e){return Object.prototype.hasOwnProperty.call(t||{},e)}function Glt(t){return String(t||"").trim().replace(/\/+$/,"")||Hlt}function zlt(t){return String(t||"").trim()}var que=async(t,e,r)=>{let n=await t.db.getObjectDefault("/pinglian",{});return WCr(n,e)?n[e]:r},jue=async t=>Glt(await que(t,"url",Hlt)),$Cr=async t=>zlt(await que(t,"username","")),UCr=async t=>String(await que(t,"password","")||""),Que=async t=>({url:await jue(t),username:await $Cr(t),password:await UCr(t)}),Fue=async(t,e,r)=>{await t.db.push(`/pinglian/${e}`,r)},FCr=async t=>{await t.db.delete("/pinglian")};async function Hue(t){t.get("/config",async(e,r)=>{r.send({code:0,data:await Que(e.server)})}),t.put("/config",async(e,r)=>{let n=e.body||{};await Fue(e.server,"url",Glt(n.url)),await Fue(e.server,"username",zlt(n.username)),await Fue(e.server,"password",String(n.password||"")),r.send({code:0})}),t.delete("/config",async(e,r)=>{await FCr(e.server),r.send({code:0})})}var Gue="https://pinglian.lol",qCr=25*60*1e3,jCr=5*60*1e3,QCr=30,w6=30,rdt="pinglian_video@@@",R6="pinglian_group@@@",zue="pinglian_link@@@",Klt=[{type_id:"1",type_name:"\u7535\u5F71\u7247",children:[{type_id:"1001",type_name:"\u5267\u60C5\u7247"},{type_id:"1002",type_name:"\u559C\u5267\u7247"},{type_id:"1004",type_name:"\u52A8\u4F5C\u7247"},{type_id:"1007",type_name:"\u6050\u6016\u7247"},{type_id:"1008",type_name:"\u7231\u60C5\u7247"},{type_id:"1011",type_name:"\u52A8\u753B\u7535\u5F71"},{type_id:"1014",type_name:"\u79D1\u5E7B\u7247"},{type_id:"1015",type_name:"\u6218\u4E89\u7247"},{type_id:"1027",type_name:"\u52A8\u753B\u7247"},{type_id:"1024",type_name:"\u7535\u5F71"},{type_id:"1028",type_name:"\u5267\u60C5"},{type_id:"1029",type_name:"\u5267\u60C5,\u60AC\u7591,\u60CA\u609A"},{type_id:"1031",type_name:"\u559C\u5267,\u7231\u60C5"},{type_id:"1032",type_name:"\u6050\u6016"},{type_id:"1033",type_name:"\u79D1\u5E7B,\u60AC\u7591,\u60CA\u609A"},{type_id:"1034",type_name:"\u559C\u5267"},{type_id:"1058",type_name:"\u5267\u60C5,\u72AF\u7F6A"},{type_id:"1059",type_name:"\u5267\u60C5,\u7231\u60C5,\u60CA\u609A"},{type_id:"1060",type_name:"\u5267\u60C5,\u60CA\u609A,\u6218\u4E89"},{type_id:"1036",type_name:"\u5267\u60C5,\u5BB6\u5EAD"},{type_id:"1037",type_name:"\u79D1\u5E7B,\u6050\u6016"},{type_id:"1038",type_name:"\u5267\u60C5,\u60CA\u609A,\u707E\u96BE"},{type_id:"1039",type_name:"\u559C\u5267 / \u52A8\u753B"},{type_id:"1040",type_name:"\u52A8\u4F5C / \u5947\u5E7B"},{type_id:"1041",type_name:"\u60AC\u7591,\u60CA\u609A,\u6050\u6016"},{type_id:"1042",type_name:"\u5267\u60C5,\u8FD0\u52A8"},{type_id:"1043",type_name:"\u559C\u5267,\u52A8\u4F5C,\u7231\u60C5"},{type_id:"1044",type_name:"\u52A8\u4F5C,\u79D1\u5E7B,\u5192\u9669"},{type_id:"1045",type_name:"\u52A8\u4F5C,\u60CA\u609A"},{type_id:"1046",type_name:"\u52A8\u4F5C,\u5947\u5E7B,\u5192\u9669"},{type_id:"1047",type_name:"\u52A8\u4F5C,\u6218\u4E89"},{type_id:"1048",type_name:"\u5267\u60C5,\u4F20\u8BB0"},{type_id:"1049",type_name:"\u559C\u5267,\u52A8\u4F5C,\u60CA\u609A"},{type_id:"1050",type_name:"\u5267\u60C5 / \u7231\u60C5"},{type_id:"1051",type_name:"\u60CA\u609A,\u6050\u6016"},{type_id:"1052",type_name:"\u559C\u5267,\u52A8\u4F5C"},{type_id:"1053",type_name:"\u5267\u60C5,\u559C\u5267,\u72AF\u7F6A"},{type_id:"1054",type_name:"\u5267\u60C5,\u60CA\u609A"},{type_id:"1055",type_name:"\u52A8\u6F2B\u7535\u5F71"},{type_id:"1056",type_name:"\u5267\u60C5,\u52A8\u4F5C,\u60CA\u609A"},{type_id:"1057",type_name:"\u5267\u60C5,\u52A8\u4F5C,\u79D1\u5E7B"}]},{type_id:"2",type_name:"\u8FDE\u7EED\u5267",children:[{type_id:"1000",type_name:"\u77ED\u5267"},{type_id:"1003",type_name:"\u56FD\u4EA7\u5267"},{type_id:"1009",type_name:"\u6B27\u7F8E\u5267"},{type_id:"1012",type_name:"\u65E5\u672C\u5267"},{type_id:"1013",type_name:"\u97E9\u56FD\u5267"},{type_id:"1016",type_name:"\u6CF0\u56FD\u5267"},{type_id:"1020",type_name:"\u6D77\u5916\u5267"},{type_id:"1022",type_name:"\u9999\u6E2F\u5267"},{type_id:"1023",type_name:"\u53F0\u6E7E\u5267"}]},{type_id:"3",type_name:"\u7EFC\u827A\u7247",children:[{type_id:"1005",type_name:"\u5927\u9646\u7EFC\u827A"},{type_id:"1018",type_name:"\u65E5\u97E9\u7EFC\u827A"},{type_id:"1019",type_name:"\u6B27\u7F8E\u7EFC\u827A"},{type_id:"1021",type_name:"\u6E2F\u53F0\u7EFC\u827A"},{type_id:"1035",type_name:"\u7EFC\u827A"}]},{type_id:"4",type_name:"\u52A8\u6F2B\u7247",children:[{type_id:"1006",type_name:"\u65E5\u97E9\u52A8\u6F2B"},{type_id:"1010",type_name:"\u56FD\u4EA7\u52A8\u6F2B"},{type_id:"1017",type_name:"\u6B27\u7F8E\u52A8\u6F2B"},{type_id:"1025",type_name:"\u6D77\u5916\u52A8\u6F2B"},{type_id:"1026",type_name:"\u6E2F\u53F0\u52A8\u6F2B"},{type_id:"1030",type_name:"\u52A8\u6F2B"}]}],HCr=[{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"},{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:"2004",v:"2004"},{n:"2003",v:"2003"},{n:"2002",v:"2002"},{n:"2001",v:"2001"},{n:"2000",v:"2000"},{n:"\u66F4\u65E9",v:"older"}],GCr=[{n:"\u5168\u90E8",v:""},{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:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u5370\u5EA6",v:"\u5370\u5EA6"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u4FC4\u7F57\u65AF",v:"\u4FC4\u7F57\u65AF"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}],zCr=[{n:"\u5168\u90E8",v:""},{n:"\u56FD\u8BED",v:"\u56FD\u8BED"},{n:"\u82F1\u8BED",v:"\u82F1\u8BED"},{n:"\u7CA4\u8BED",v:"\u7CA4\u8BED"},{n:"\u95FD\u5357\u8BED",v:"\u95FD\u5357\u8BED"},{n:"\u97E9\u8BED",v:"\u97E9\u8BED"},{n:"\u65E5\u8BED",v:"\u65E5\u8BED"},{n:"\u6CD5\u8BED",v:"\u6CD5\u8BED"},{n:"\u5FB7\u8BED",v:"\u5FB7\u8BED"},{n:"\u4FC4\u8BED",v:"\u4FC4\u8BED"},{n:"\u6CF0\u8BED",v:"\u6CF0\u8BED"},{n:"\u897F\u73ED\u7259\u8BED",v:"\u897F\u73ED\u7259\u8BED"},{n:"\u8461\u8404\u7259\u8BED",v:"\u8461\u8404\u7259\u8BED"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}],KCr={ali:"aliyun",aliyun:"aliyun",alipan:"aliyun",a189:"tianyi",189:"tianyi",tianyi:"tianyi",yidong:"mobile",mobile:"mobile",a139:"mobile",cmcc:"mobile",123:"123",pan123:"123","123pan":"123",a115:"115",pan115:"115",115:"115",quark:"quark",uc:"uc",baidu:"baidu",xunlei:"xunlei",thunder:"xunlei",guangya:"guangyapan",guangyapan:"guangyapan"},VCr={aliyun:"ali",mobile:"yidong",tianyi:"tianyi",123:"123",115:"115",quark:"quark",uc:"uc",baidu:"baidu",xunlei:"xunlei",guangyapan:"guangyapan"},Vue=new Map,e_=new Map,O6={},N6=0,Vlt="";function r_(t){let e=String(t||"").trim().toLowerCase();return KCr[e]||e}function k6(t){let e=r_(t);return VCr[e]||e}function ndt(t){let e=k6(t);return Si().find(r=>r.key===e||r_(r.key)===r_(t))}function YCr(t){return!!ndt(t)}function Yue(t){let e=r_(t),r=ndt(e);return{key:e,localKey:r?.key||k6(e),name:r?.name||e,pic:r?.pic||""}}function Dw(t){(Array.isArray(t)?t:[t]).filter(Boolean).forEach(r=>{let n=String(r).split(";")[0],s=n.indexOf("=");s<=0||(O6[n.slice(0,s)]=n.slice(s+1))})}function Bw(){return Object.entries(O6).map(([t,e])=>`${t}=${e}`).join("; ")}function t_(t,e,r={}){let n=new URL(e,t||Gue);return Object.entries(r).forEach(([s,i])=>{i==null||i===""||n.searchParams.set(s,String(i))}),n.toString()}function Jue(t){return typeof t=="string"&&(t.includes("\u9700\u8981\u767B\u5F55 - \u76D8\u94FE")||t.includes("pages/login.php")||t.includes("../api/login.php"))}async function JCr(t){let e=await Que(t).catch(()=>({username:"",password:""})),r=String(e.username||"").trim(),n=String(e.password||"");if(!r||!n)throw new Error("\u8BF7\u5148\u5728 Web \u540E\u53F0\u586B\u5199\u76D8\u94FE\u8D26\u53F7\u548C\u5BC6\u7801");return{url:e.url||Gue,username:r,password:n,key:`${e.url||Gue} +${r} +${n}`}}function XCr(t){Vlt!==t&&(O6={},N6=0,Vlt=t)}async function xy(t,e=!1){let r=await JCr(t);if(XCr(r.key),!e&&N6&&Date.now()-N6${e}

`)("div").text().replace(/\s+/g," ").trim():""}function adt(t){return on(t).replace(/^(名称[::]\s*)/,"").replace(/^🎬\s*/,"").replace(/^🐾\s*/,"").trim()}function e2r(){return`${Date.now().toString(36)}${Math.random().toString(36).slice(2,10)}`}function t2r(t){let e=e_.get(t);return e?e.expiresAt<=Date.now()?(e_.delete(t),null):e.data:null}function Ylt(t){if(!t||typeof t!="object"||Array.isArray(t))return"";let e=e2r();for(e_.set(e,{data:t,expiresAt:Date.now()+jCr});e_.size>QCr;){let r=e_.keys().next().value;e_.delete(r)}return e}function odt(t,e){return`${t}${Buffer.from(JSON.stringify(e),"utf8").toString("base64url")}`}function cdt(t,e){let r=String(e||"").trim();if(!r.startsWith(t))return null;try{return JSON.parse(Buffer.from(r.slice(t.length),"base64url").toString("utf8"))}catch{return null}}function r2r(t){return odt(rdt,{id:t.vod_id||t.id||"",name:t.vod_name||t.name||"",pic:t.vod_pic||t.pic||"",remarks:t.vod_remarks||t.remarks||"",typeName:t.type_name||t.typeName||"",year:t.vod_year||t.year||"",area:t.vod_area||t.area||""})}function udt(t){return cdt(rdt,t)}function n2r(t,e,r="",n=""){return odt(R6,{cloudType:t,keyword:e,searchToken:r,vodId:n})}function ldt(t){let e=cdt(R6,t);if(e)return e;let r=String(t||"").trim();if(!r.startsWith(R6))return null;let n=r.slice(R6.length).split("@@@");return n.length<2?null:{cloudType:decodeURIComponent(n[0]||""),keyword:decodeURIComponent(n[1]||""),searchToken:decodeURIComponent(n[2]||""),vodId:""}}function s2r(t,e=""){let r={token:t.token||"",url:t.url||"",title:t.title||e,password:t.password||"",type:t.type||"",source:t.source||"",time:t.time||""};return`${zue}${Buffer.from(JSON.stringify(r),"utf8").toString("base64url")}`}function i2r(t){let e=String(t||"").trim();if(!e.startsWith(zue))return null;try{return JSON.parse(Buffer.from(e.slice(zue.length),"base64url").toString("utf8"))}catch{return null}}function ddt(t){let e={vod_id:String(t?.vod_id??t?.local_id??""),vod_name:on(t?.vod_name),vod_pic:t?.vod_pic||"",vod_remarks:on(t?.vod_remarks||t?.type_name||""),vod_year:on(t?.vod_year),vod_area:on(t?.vod_area),type_name:on(t?.type_name)};return t?.vod_actor&&(e.vod_actor=on(t.vod_actor)),t?.vod_director&&(e.vod_director=on(t.vod_director)),t?.vod_content&&(e.vod_content=ZCr(t.vod_content)),Vue.set(e.vod_id,{...t,...e}),e}function fdt(t){let e=r2r(t);return{...t,vod_id:e,vod_tag:"folder",type_id:"pan_video",type_name:"\u7F51\u76D8\u5206\u7EC4",cate:{id:e,name:t.vod_name||"\u7F51\u76D8\u5206\u7EC4"}}}function pdt(t){return{vod_id:String(t?.id||""),vod_name:on(t?.name),vod_pic:t?.pic||"",vod_remarks:on(t?.remarks),vod_year:on(t?.year),vod_area:on(t?.area),type_name:on(t?.typeName)}}function Jlt(){return[{key:"year",name:"",init:"",value:HCr},{key:"area",name:"",init:"",value:GCr},{key:"lang",name:"",init:"",value:zCr}]}function a2r(t){return[{n:"\u5168\u90E8",v:""},...t.children.map(e=>({n:e.type_name,v:e.type_id}))]}async function o2r(t,e){return await lr(t,e),await xy(t.server).catch(r=>console.warn(`\u76D8\u94FE\u521D\u59CB\u5316\u767B\u5F55\u5931\u8D25: ${r.message}`)),{}}async function c2r(t,e){let r=[{type_id:"0",type_name:"\u5168\u90E8"},...Klt.map(s=>({type_id:s.type_id,type_name:s.type_name}))],n={};return n[0]=Jlt(),Klt.forEach(s=>{n[s.type_id]=[{key:"class",name:"",init:"",value:a2r(s)},...Jlt()]}),{class:r,filters:n}}async function mdt(t,e){let r=await Xue(t,"/api/get_videos.php",e);return!r||r.code!==1||!Array.isArray(r.list)?{page:Number(e.pg||1),pagecount:1,total:0,list:[]}:r}async function u2r(t,e){let r=t.body?.id||t.body?.type_id||t.body?.categoryId,n=udt(r);if(n?.id&&n?.name)return l2r(t,pdt(n));let s=ldt(r);if(s?.cloudType&&s?.keyword)return f2r(t,s);let i=String(t.body?.id??"0"),a=Number.parseInt(t.body?.page||"1",10)||1,o=a===0?1:a,c=t.body?.filters||{},u=String(c.class||c.tid||i||"0"),l=await mdt(t,{pg:o,t:u,year:c.year||"",area:c.area||"",lang:c.lang||""}),d=(l.list||[]).map(ddt);return{page:Number(l.page||o),pagecount:Number(l.pagecount||o),limit:30,total:Number(l.total||d.length),list:d.map(fdt)}}async function Kue(t,e,r=""){let n=await Xue(t,"/api/search_pan_links.php",{keyword:e,vod_id:r,_t:Date.now()});return!n?.success||!n.data||Array.isArray(n.data)?{}:n.data}function Xlt(t){let e=k6(t),r=Array.isArray(globalThis.Pans)?globalThis.Pans.findIndex(s=>s.key===e):-1;if(r>=0)return r;let n=Si().findIndex(s=>s.key===e);return n>=0?n:999}function hdt(t,e=""){return(t||[]).map(r=>({...r||{},type:r?.type||e})).filter(r=>YCr(r?.type))}function Zlt(t,e,r=""){let n=on(e?.vod_name||e?.name),s=String(e?.vod_id||e?.id||"");return Object.entries(t||{}).map(([i,a])=>{let o=hdt(a?.links,i);if(o.length===0)return null;let c=Yue(i),u=n2r(c.key||i,n,r,s);return{vod_id:u,vod_name:a?.name||c.name||i,vod_pic:c.pic||"",vod_remarks:`${o.length}\u6761\u8D44\u6E90`,vod_tag:"folder",type_id:"pan_category",type_name:"\u7F51\u76D8\u5206\u7EC4",panType:c.key,cate:{id:u,name:a?.name||c.name||i}}}).filter(Boolean).sort((i,a)=>Xlt(i.panType)-Xlt(a.panType))}async function l2r(t,e){let r=on(e?.vod_name),n=String(e?.vod_id||"");if(!r)return{page:1,pagecount:1,list:[]};let s=await Kue(t,r,n),i=Ylt(s),a=Zlt(s,e,i);return a.length===0&&n&&(s=await Kue(t,r,""),i=Ylt(s),a=Zlt(s,{...e,vod_id:""},i)),{page:1,pagecount:1,list:a}}function d2r(t,e){let r=r_(e);return Object.entries(t||{}).find(([n])=>r_(n)===r)?.[1]||null}function gdt(t){let e=[];t?.source&&e.push(t.source);let r=String(t?.time||"").trim();return r&&!r.startsWith("0001-01-01")&&e.push(r.replace("T"," ").replace(/Z$/,"")),t?.password&&e.push(`\u7801:${t.password}`),e.join(" / ")}async function f2r(t,e){let r=Number.parseInt(t.body?.page||"1",10)||1,n=r===0?1:r,s=on(e?.keyword),i=e?.cloudType||"",a=e?.searchToken||"",o=e?.vodId||"",u=(a?t2r(a):null)||await Kue(t,s,o),l=d2r(u,i),d=hdt(l?.links||[],i),f=Math.max(1,Math.ceil(d.length/w6)),p=(n-1)*w6,m=n<=f?d.slice(p,p+w6):[],h=Yue(i);return{page:n,pagecount:f,limit:w6,total:d.length,list:m.map(y=>({vod_id:s2r({...y,type:y.type||i},s),vod_name:adt(y.title||s),vod_pic:h.pic||"",vod_remarks:gdt(y)||h.name,type_name:l?.name||h.name}))}}async function p2r(t,e){let r=on(t.body?.wd),n=Number.parseInt(t.body?.page||"1",10)||1,s=n===0?1:n;if(!r)return{page:s,pagecount:1,list:[]};let i=await mdt(t,{pg:s,t:0,wd:r}),a=(i.list||[]).map(ddt);return{page:Number(i.page||s),pagecount:Number(i.pagecount||s),total:Number(i.total||a.length),list:a.map(fdt)}}function m2r(t){if(!t)return"";try{return JSON.parse(`"${t}"`)}catch{return t.replace(/\\\//g,"/").replace(/\\n/g,` +`).replace(/\\r/g,"\r").replace(/\\t/g," ")}}function Pw(t,e){let r=String(t||"").match(new RegExp(`${e}:\\s*"((?:\\\\.|[^"\\\\])*)"`));return r?m2r(r[1]):""}function h2r(t){let e=t("script").map((r,n)=>t(n).html()||"").get().find(r=>r.includes("window.PXZ_VIDEO_DATA"))||"";return{vodName:Pw(e,"vodName"),vodPic:Pw(e,"vodPic"),typeName:Pw(e,"typeName"),vodRemarks:Pw(e,"vodRemarks"),vodScore:Pw(e,"vodScore")}}function edt(t,e){let r="";return t(".premium-meta-grid .meta-item").each((n,s)=>{on(t(s).find(".m-label").text())===e&&(r=on(t(s).find(".m-val").text()))}),r}function g2r(){Array.isArray(globalThis.Pans)||(globalThis.Pans=Si().map(t=>({key:t.key,name:t.name,pic:t.pic,enable:!0})))}function y2r(t,e,r){let n=String(r||"").trim();if(!t||!n)return t;let s=k6(e);if(s==="tianyi")return`${t} \u8BBF\u95EE\u7801:${n}`;if(!["baidu","123","115"].includes(s))return t;try{let i=new URL(t);if(s==="115")return`${i.origin}${i.pathname}?password=${encodeURIComponent(n)}`;let a="pwd";return i.searchParams.has(a)||i.searchParams.set(a,n),i.toString()}catch{return t}}function ydt(t){return/^(https?:\/\/|magnet:\?|ed2k:\/\/|thunder:\/\/)/i.test(String(t||"").trim())}async function A2r(t,e){let r=on(t?.url);if(!r&&ydt(t?.token)&&(r=on(t.token)),!r&&t?.token){let n=await idt(e,"/api/resolve_token.php",{token:t.token});r=on(n?.url)}return y2r(r,t?.type,t?.password)}async function tdt(t,e){if(!t||t.length===0)return null;let n=(await Promise.all(t.map(async s=>{try{return await A2r(s,e)}catch(i){return console.warn(`\u76D8\u94FE\u89E3\u6790\u94FE\u63A5\u5931\u8D25: ${i.message}`),""}}))).filter(s=>s&&Si().some(i=>i.validator(s)));return n.length===0?null:(g2r(),await Xt(n,e))}async function x2r(t,e){let r=await sdt(t,"/pages/video.php",{id:e}),n=De(r),s=h2r(n),i=n(".premium-title").first().clone().children().remove().end().text().trim(),a=on(n(".title-year").first().text()).replace(/[()()]/g,""),o={vod_id:String(e),vod_name:i||s.vodName||on(n("title").text()).replace(/\s*-\s*盘链$/,""),vod_pic:n(".detail-poster img").first().attr("src")||s.vodPic||"",vod_year:a,vod_area:on(n(".premium-tags-top .p-tag.area").first().text()),type_name:on(n(".premium-tags-top .p-tag.type").first().text())||s.typeName,vod_remarks:on(n(".premium-tags-top .p-tag.quality").first().text())||s.vodRemarks,vod_director:edt(n,"\u5BFC\u6F14"),vod_actor:edt(n,"\u4E3B\u6F14"),vod_content:on(n(".premium-plot p").first().text())};return Vue.set(o.vod_id,o),o}async function b2r(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[];for(let s of r){let i=String(s||"").trim(),a=i2r(i);if(a){let u=Yue(a.type),l={vod_id:i,vod_name:adt(a.title||u.name),vod_pic:u.pic||"",vod_remarks:gdt(a),type_name:u.name},d=await tdt([a],t);d?.froms&&d?.urls&&(l.vod_play_from=d.froms,l.vod_play_url=d.urls,l.vod_links=d.links),n.push(l);continue}let o=udt(i);if(o?.id){n.push(pdt(o));continue}if(ldt(i))continue;if(ydt(i)){let u={vod_id:i,vod_name:i,vod_content:""},l=await tdt([{url:i,type:""}],t);l?.froms&&l?.urls&&(u.vod_play_from=l.froms,u.vod_play_url=l.urls,u.vod_links=l.links),n.push(u);continue}let c=Vue.get(i);if(c?.vod_play_from&&c?.vod_play_url){n.push(c);continue}n.push(await x2r(t,i))}return{list:n}}async function _2r(t,e){return await er(t,e)}var Adt={meta:{key:"pinglian",name:"\u300C\u76D8\u300D\u76D8\u94FE",type:3},api:async t=>{t.post("/init",o2r),t.post("/home",c2r),t.post("/category",u2r),t.post("/detail",b2r),t.post("/play",_2r),t.post("/search",p2r),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt)},check:jue};var s_="https://www.juhebd.com",xdt="https://res.juhebd.com",Zue=24,E2r=/https?:\/\/(?:pan\.quark\.cn|pan\.baidu\.com|pan\.xunlei\.com|www\.aliyundrive\.com|www\.alipan\.com|drive\.uc\.cn|www\.uc\.cn|115\.com|anxia\.com|www\.123pan\.com|www\.123865\.com|www\.123684\.com)[^\s"'<>,。;、))\]}】]+/gi,bdt=[{type_id:"mv",type_name:"\u7535\u5F71"},{type_id:"tv",type_name:"\u5267\u96C6"},{type_id:"acg",type_name:"\u52A8\u6F2B"}];function n_(t){return String(t||"").replace(/\s+/g," ").trim()}function _dt(t){let e=n_(t),r=e.match(/《([^》]+)》(.+)?$/);return r?{name:n_(r[1]),remarks:n_(r[2]||"").replace(/^[.。\-_\s]+/,"")}:{name:e,remarks:""}}function ele(t,e=s_){return t?new URL(t,e).toString():""}function v2r(t){return String(t||"").match(/\/([A-Za-z0-9]+)$/)?.[1]||""||String(t||"").split("/").filter(Boolean).pop()||""}async function Lw(t,e={}){let r;for(let n=0;n<3;n++)try{return(await fe.get(t,{headers:{"User-Agent":Gt,Referer:s_,...e.headers}})).data}catch(s){r=s,await new Promise(i=>setTimeout(i,300*(n+1)))}throw r}function Edt(t){let e=De(t),r=[],n=new Set;return e(".list-item a[href]").each((s,i)=>{let a=e(i),o=a.attr("href")||"";if(!/^\/(mv|tv|acg)\/[A-Za-z0-9]+/.test(o))return;let c=ele(o);if(n.has(c))return;n.add(c);let u=_dt(a.attr("title")||a.text());r.push({vod_id:c,vod_name:u.name,vod_pic:"",vod_remarks:u.remarks||n_(a.closest(".list-item").find(".list-douban, .time, .pull-right").first().text())})}),{$:e,list:r}}function vdt(t,e){let r=e;return t("a[href]").each((n,s)=>{let i=t(s).attr("href")||"",a=Number.parseInt(i.match(/-{5}(\d+)/)?.[1]||"",10);Number.isFinite(a)&&(r=Math.max(r,a))}),r}function S2r(t){let e=new Set,r=typeof t=="string"?t:JSON.stringify(t||"");for(let n of r.match(E2r)||[])e.add(n.replace(/&/g,"&"));return[...e]}function I2r(t){return{vod_play_from:"\u7F51\u76D8\u94FE\u63A5",vod_play_url:t.map((e,r)=>`\u94FE\u63A5${r+1}$${e}`).join("#"),vod_links:t.map((e,r)=>({name:`\u94FE\u63A5${r+1}`,url:e}))}}async function C2r(t,e,r){if(!e.length)return;let n=await Xt(e,r);if(n?.froms&&n?.urls){t.vod_play_from=n.froms,t.vod_play_url=n.urls,t.vod_links=n.links;return}Object.assign(t,I2r(e))}async function T2r(t,e){return await lr(t,e),{}}async function w2r(t,e){return{class:bdt}}async function R2r(t,e){let r=String(t.body.id||bdt[0].type_id),n=Number.parseInt(t.body.page,10)||1,s=`${s_}/${r}/index-----${n}`,i=await Lw(s),{$:a,list:o}=Edt(i);return{page:n,pagecount:vdt(a,n),limit:Zue,total:o.length,list:o}}async function N2r(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[];for(let s of r){let i=ele(s),a=await Lw(i),o=De(a),c=v2r(i),u=_dt(o("h3").first().clone().children().remove().end().text()||o("title").text().replace(/ - BD影视分享.*/,"")),l={vod_id:i,vod_name:u.name,vod_pic:ele(o(".film-poster").first().attr("src")||o('meta[property="og:image"]').attr("content")||"",i),vod_content:n_(o('meta[name="description"]').attr("content")||o("#description, .content, body").text()),vod_remarks:u.remarks},f=(await Lw(`${xdt}/r?${encodeURIComponent(c)}`,{headers:{Referer:i}})).match(/\/api\/rl[^"']*id=([^"'&]+)/)?.[1]||c,p=await Lw(`${s_}/api/rl?id=${encodeURIComponent(f)}`,{headers:{Referer:`${xdt}/r?${c}`}}),m=typeof p=="string"?JSON.parse(p):p,h=[];m?.data&&(h=JSON.parse(Buffer.from(m.data,"base64").toString("utf8")));let y=S2r(h);await C2r(l,y,t),!l.vod_content&&y.length&&(l.vod_content=`\u5171\u53D1\u73B0${y.length}\u4E2A\u7F51\u76D8\u94FE\u63A5`),n.push(l)}return{list:n}}async function O2r(t,e){return t.body.flag==="\u7F51\u76D8\u94FE\u63A5"?{parse:0,url:t.body.id}:await er(t,e)}async function k2r(t,e){let r=n_(t.body.wd),n=Number.parseInt(t.body.page,10)||1;if(!r)return{page:n,pagecount:0,limit:Zue,total:0,list:[]};let s=n===1?`${s_}/q/?k=${encodeURIComponent(r)}`:`${s_}/q/index-----${n}?k=${encodeURIComponent(r)}`,i=await Lw(s),{$:a,list:o}=Edt(i);return{page:n,pagecount:vdt(a,n),limit:Zue,total:o.length,list:o}}var Sdt={meta:{key:"bdjuhe",name:"\u300C\u76D8\u300D\u7EFC\u5408",type:3},api:async t=>{t.post("/init",T2r),t.post("/home",w2r),t.post("/category",R2r),t.post("/detail",N2r),t.post("/play",O2r),t.post("/search",k2r),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt)}};var D6="https://1.star2.cn",rle=15,tle=/https?:\/\/(?:pan\.quark\.cn|pan\.baidu\.com|pan\.xunlei\.com|www\.aliyundrive\.com|www\.alipan\.com|drive\.uc\.cn|www\.uc\.cn|115\.com|anxia\.com|www\.123pan\.com|www\.123865\.com|www\.123684\.com)[^\s"'<>,。;、))\]}】]+/gi,Idt=[{type_id:"mv",type_name:"\u7535\u5F71"},{type_id:"ju",type_name:"\u56FD\u5267"},{type_id:"dj",type_name:"\u77ED\u5267"},{type_id:"zy",type_name:"\u7EFC\u827A"},{type_id:"rh",type_name:"\u97E9\u65E5"},{type_id:"ym",type_name:"\u82F1\u7F8E"},{type_id:"wj",type_name:"\u5916\u5267"},{type_id:"dm",type_name:"\u52A8\u6F2B"}];function Mw(t){return String(t||"").replace(/\s+/g," ").trim()}function Cdt(t){return Mw(t).replace(/^【[^】]+】\s*/,"")}function P6(t,e=D6){return t?new URL(t,e).toString():""}async function nle(t){let e;for(let r=0;r<3;r++)try{return(await fe.get(t,{headers:{"User-Agent":Gt,Referer:D6}})).data}catch(n){e=n,await new Promise(s=>setTimeout(s,300*(r+1)))}throw e}function Tdt(t){let e=De(t),r=[],n=new Set;return e(".item").each((s,i)=>{let a=e(i),o=a.find('a.main[href], a[href*=".html"]').first(),c=o.attr("href")||"";if(!/^\/[a-z]+\/\d+\.html$/.test(c))return;let u=P6(c);n.has(u)||(n.add(u),r.push({vod_id:u,vod_name:Cdt(o.text()),vod_pic:P6(a.find("img").attr("data-src")||a.find("img").attr("src")||""),vod_remarks:Mw(a.find(".time").text())}))}),{$:e,list:r}}function wdt(t,e){let r=e;return t("a[href]").each((n,s)=>{let i=t(s).attr("href")||"",a=Number.parseInt(i.match(/_([0-9]+)\/$/)?.[1]||"",10);Number.isFinite(a)&&(r=Math.max(r,a))}),r}function P2r(t){let e=new Set;t("a[href]").each((r,n)=>{let s=(t(n).attr("href")||"").replace(/&/g,"&");tle.test(s)&&e.add(s),tle.lastIndex=0});for(let r of t.html().match(tle)||[])e.add(r.replace(/&/g,"&"));return[...e]}function D2r(t){return{vod_play_from:"\u7F51\u76D8\u94FE\u63A5",vod_play_url:t.map((e,r)=>`\u94FE\u63A5${r+1}$${e}`).join("#"),vod_links:t.map((e,r)=>({name:`\u94FE\u63A5${r+1}`,url:e}))}}async function B2r(t,e,r){if(!e.length)return;let n=await Xt(e,r);if(n?.froms&&n?.urls){t.vod_play_from=n.froms,t.vod_play_url=n.urls,t.vod_links=n.links;return}Object.assign(t,D2r(e))}async function L2r(t,e){return await lr(t,e),{}}async function M2r(t,e){return{class:Idt}}async function W2r(t,e){let r=String(t.body.id||Idt[0].type_id),n=Number.parseInt(t.body.page,10)||1,s=await nle(`${D6}/${r}_${n}/`),{$:i,list:a}=Tdt(s);return{page:n,pagecount:wdt(i,n),limit:rle,total:a.length,list:a}}async function $2r(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[];for(let s of r){let i=P6(s),a=await nle(i),o=De(a),c=Cdt(o("h1, .article-title, .title").first().text()||o("title").text().replace(/-剧透社.*/,"")),u={vod_id:i,vod_name:c,vod_pic:P6(o('meta[property="og:image"]').attr("content")||o(".content img, article img").first().attr("src")||""),vod_content:Mw(o(".entry-content, .article-content, .content").first().text())||Mw(o('meta[name="description"]').attr("content")||"")},l=P2r(o);await B2r(u,l,t),!u.vod_content&&l.length&&(u.vod_content=`\u5171\u53D1\u73B0${l.length}\u4E2A\u7F51\u76D8\u94FE\u63A5`),n.push(u)}return{list:n}}async function U2r(t,e){return t.body.flag==="\u7F51\u76D8\u94FE\u63A5"?{parse:0,url:t.body.id}:await er(t,e)}async function F2r(t,e){let r=Mw(t.body.wd),n=Number.parseInt(t.body.page,10)||1;if(!r)return{page:n,pagecount:0,limit:rle,total:0,list:[]};let s=await nle(`${D6}/search.html?keyword=${encodeURIComponent(r)}${n>1?`&page=${n}`:""}`),{$:i,list:a}=Tdt(s);return{page:n,pagecount:wdt(i,n),limit:rle,total:a.length,list:a}}var Rdt={meta:{key:"shuangxing",name:"\u300C\u76D8\u300D\u53CC\u661F",type:3},api:async t=>{t.post("/init",L2r),t.post("/home",M2r),t.post("/category",W2r),t.post("/detail",$2r),t.post("/play",U2r),t.post("/search",F2r),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt)}};var Odt=Ce(require("node:http"),1),xm=Ce(require("node:crypto"),1),_y="http://qkys.qukanwh.com",kdt="2d590b9842d064a1",q2r="09a8dc51639a31801af5f6418caebfabc695eb24",ale="okhttp/4.12.0",od=40,j2r=30*60*1e3,Q2r="MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCoYt0BP77U+DM08BiI/QbSRIfxijXo85BTPqIM1Ow8BNwhLETzRIZ+dEwdWDbydG/PspgBAfRpGaYVdJYtvaC2JnoO8+Ik6qMWojfEJxSFLa0Pb0A892tun4gsxoEMjcreZ+YGyaBxAfqX0BSMfdrOgIYaZQjYrw9TRLlUT31QoQIDAQAB",H2r="MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQCquQQ5r6+yJI8CDFkXRp8vUsdD45ov8EP12ooLs56ca2DQXaSNGS9910bAPVA9chkp0mKIvKqjAsHz5Tl9EeNPblarGEeJUIxpxZtiSqNTpvtiD/TjhpzuHYic7RAfQ/h7p/ypE8ymU42pYjsB5t26Mv6XgkLV+jzrSf73HlCuS0iMyLmt6zz3Mw9izM13EpB8iFLtfbbYymycKTx4RAmPQLwhNGex/AlUIYxXP4R2yyaa4W6mEtc6aME2QuzJFxPgP3HJ9NBx/LWVn4skxWjZ7zg+VRQRHnjyVaSLu3Z5gN5ITWCyE32qaHJa6WBahZj5jWhRyAG1bQ+xKJa8lBL5AgMBAAECggEAUwv9SjJ0PSwbhNuM2w23kcWquROWhYtTA91zGY4esehqB/IFgb2mpIh8Gje5OKqwIu/8jpd4SiOlRYdUF8sD0DfUYRZGdj2AkFNX6tBz8tVfo6wvbB6naA1lzzBij1L5JO3qsjS3cJFkb+kg2yP66AC2Z+0tpfk8eRhdtshAZwfcd1DEGt1uAvYL1eaUK9HRvpt9lPeGcHERDl2hBd4uyaF0K1O+zF9y59nYbTySWPxRZq3sFEE85xRMlstD7YZi7W2gKvMFRD4/FKmrZ3m7aKJRITtyKOyyPcYmepNv3Qv7kk59Pg38n2WWQ0Ra/bCH3E48YNCnQvZMpitkTfJhoQKBgQDbnROOYTP8OTJ6f/qhoGjxeO3x1VOaOp8l0x7b0SCfoqNGS0Cyiqj72BmJtPMPqSTjn6MmNzqbg1KOdhXyzNozs+i5ccW1M56j96mr5I/Z0FpE3oyIHNfDDBlf9M8YQqEF9oYxniYYft9oapO7cRQkHER6qpvnHTavwlv4m78CXwKBgQDHAjs2YlpKDdI1lcbZJCc7TwtH+Pd2bUki8YXafWNcPhITQHbOZjr310eK1QJC6GJncjkOqbX7yv3ivvTO35FZTQhuA1xEG1P00FG8bE0tHYPIwQHi9y0eA5cieMdo8E6XYria1mw/3fqSQEsfZyJlR32JQIoGAipM8iO1X2nZpwKBgDkMFIhnt5lNQk+P7wsNIDWZtDWdtJnboHuy29E+Abt2A/O+mI/IdRz2hau/1WO8DFkUnszOi+rZshhPlGP90rCbi1igtTrcrdjp/KkqNjPea5R4OwkgdOu1uOG0NheXNzzVTQaWjk7Opjn5dWa7eP/oV+GFb/oZHJuLYVizHGsBAoGADA7rjZEKDYCm4w5PPSr+oY5ZjaPdQrS+gLqHtMRyN82fBMGcMUdqfUfzEstzVqCEDeaS5HuOBlK3bXzKkppjUTjksN3NQmcxgBz7RuJ9DqXCLXDcb2cwuafYCYOt+YLOEEgwDVm+t2P44dG5e46hO+fICH/7nP+WlpD5buz4GfMCgYB57r3g/6hi9WUDnfc7ZAzWMqR0EhJVYKYy+KFEtdIPzhkkIHq5RASe88E9kzoGoZFdb3tIjvGZWcHerirrqWkMsuQtP/Qi0zjieid5tAPj+r4kbiCVTw0E0jnmPBzGInQi7lpeTTKnG1fbyS5lBS+WmHfIuzpECgCkxhaT+LJJkg==",G2r=xm.default.createPublicKey({key:Buffer.from(Q2r,"base64"),format:"der",type:"spki"}),Pdt=xm.default.createPrivateKey({key:Buffer.from(H2r,"base64"),format:"der",type:"pkcs8"}),Ndt=Math.ceil((Pdt.asymmetricKeyDetails?.modulusLength||2048)/8),a_=he.create({timeout:18e3,proxy:!1,httpAgent:new Odt.default.Agent({keepAlive:!0}),validateStatus:t=>t>=200&&t<500}),cd={userId:"",token:"",tokenAt:0};function z2r(t){return xm.default.createHash("md5").update(String(t)).digest("hex").toUpperCase()}function Ddt(t){return Buffer.from(JSON.stringify(t),"utf8").toString("base64url")}function Bdt(t){return JSON.parse(Buffer.from(String(t||""),"base64url").toString("utf8"))}function is(t){return String(t??"").trim()}function by(t){return Array.isArray(t)?t:[]}function sle(t){return xm.default.publicEncrypt({key:G2r,padding:xm.default.constants.RSA_PKCS1_PADDING},Buffer.from(String(t),"utf8")).toString("base64")}function K2r(t){let e=0;for(;e=0)return t.subarray(r+1)}return t}function V2r(t){let e=Buffer.from(String(t||""),"base64"),r=[];for(let n=0;n({type_id:String(n.id||""),type_name:is(n.name)})).filter(n=>n.type_id&&n.type_name),r=[];try{let n=await i_("/api/v1/app/recommend/recommendList"),s=by(n.data).slice(0,5);r=(await Promise.all(s.map(a=>i_("/api/v1/app/recommend/recommendSubList",{condition:a.id,pageNum:1,pageSize:6}).catch(()=>({}))))).flatMap(a=>by(a.data?.records).map(cle)).slice(0,24)}catch{}return{class:e,filters:{},list:r}}async function nTr(t){let e=String(t.body?.id||""),r=Math.max(parseInt(t.body?.page||1)||1,1),i=(await i_("/api/v1/app/screen/screenMovie",{condition:{classify:"",region:"",sreecnTypeEnum:"NEWEST",typeId:e,year:""},pageNum:r,pageSize:od})).data||{},a=by(i.records).map(cle),o=parseInt(i.total||i.totalRow||0)||r*od+(a.length>=od?od:0);return{list:a,page:r,pagecount:o?Math.ceil(o/od):r+(a.length>=od?1:0),limit:od,total:o}}async function sTr(t){let e=Math.max(parseInt(t.body?.page||t.body?.pg||1)||1,1),r=t.body?.wd||t.body?.key||t.body?.keyword||"",s=(await i_("/api/v1/app/search/searchMovie",{condition:{value:String(r)},pageNum:e,pageSize:od})).data||{},i=by(s.records).map(cle),a=parseInt(s.total||0)||i.length;return{list:i,page:e,pagecount:a?Math.ceil(a/od):e,limit:od,total:a}}function ile(t){return Ddt(t)}async function iTr(t){let e=Array.isArray(t.body?.id)?t.body.id[0]:t.body?.id||t.body?.ids||"",{id:r,typeId:n}=eTr(e);await lp();let s={id:r,source:0,typeId:n,userId:cd.userId,episodeId:"",episodeIndex:"",playerId:""},i=await ole(s),a=String(i.playerId||""),o=by(i.moviePlayerList),c=by(i.episodeList),u=[],l=[];c.length&&(u.push(is(o.find(p=>String(p.id)===a)?.moviePlayerName||"\u9ED8\u8BA4")),l.push(c.map((p,m)=>`${is(p.episode||p.episodeName||p.name||`\u7B2C${p.episodeIndex||m+1}\u96C6`)}$${ile({vid:r,typeId:n,playerId:a,episodeId:String(p.id||""),mode:"episode"})}`).join("#")));for(let p of o){let m=String(p.id||"");if(!m||m===a)continue;let h=parseInt(p.episodeTotal||p.totalEpisode||0)||parseInt(i.totalEpisode||0)||1;if(!h)continue;u.push(is(p.moviePlayerName||`\u7EBF\u8DEF${u.length+1}`));let y=[];for(let g=0;g{t.post("/init",tTr),t.post("/home",rTr),t.post("/category",nTr),t.post("/detail",iTr),t.post("/play",oTr),t.post("/search",sTr)},check:()=>_y};var Ww=Ce(require("node:crypto"),1);var $dt="\u6A58\u6C41",cTr="https://123-1349250429.cos.ap-shanghai.myqcloud.com/app.txt",lle="MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCr8SzZhjYy+rsya1K09t8d2K50pWFoBkgUqMpKOiW+3IEVKd4eTdvg9RSOjQ82kypL6R9BnsmrS1V8s4PVDwjQbUtYhTPPC9Hz16qY7rpD6m0d2vr09/UpWQ5uOy9PR0QTrsioveZ+DIe9jc3C+zBCu/kZSY/R8stwJoiitki3gwIDAQAB",uTr="DGVQRUX5R1LWWDLHTGJSUKG1DJRVPQ==",lTr="OC1A06E197EF10CF3F6058CA7A803B5E",dTr="com.lxf.snzlcgtzxyx",Mdt="3.0.2.1",B6="ed5fdsgucxumegqa",c_="okhttp/3.12.1",u_=21,Wdt="1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",Udt=/^(?:https?:)?\/\/.*\.(?:mp4|m3u8|flv|mkv|avi|ts|mov|mpd|m4a|wmv)(?:\?.*)?$/i,Go={host:"",hostExpireAt:0,runtimePublicKey:"",runtimeKeyExpireAt:0};function l_(t){let e="";for(let r=0;r=0x80n;)r.push(Number(e&0x7fn|0x80n)),e>>=7n;return r.push(Number(e)),Buffer.from(r)}function Qdt(t,e){return dle(t<<3|e)}function bm(t,e){let r=Buffer.from(String(e));return Buffer.concat([Qdt(t,2),dle(r.length),r])}function Hdt(t,e){return Buffer.concat([Qdt(t,0),dle(e)])}function Gdt(t){return Buffer.concat(t.filter(Boolean))}function M6(t){let e=Object.entries(t).filter(([,a])=>a!=null&&String(a)!=="").map(([a,o])=>`${a}=${o}`).join("&"),r=Date.now(),n=l_(8),s=L6(`${e}${r}`,uTr,"ECB"),i=`${n}${s}`;return Gdt([bm(1,i.slice(0,20)),bm(2,i.slice(20)),bm(3,l_(20)),Hdt(4,r),bm(5,n)])}function ule(t,e){let r=0n,n=0n;for(;e.pos{r.has(i)||r.set(i,[]),r.get(i).push(a)};for(;n.pos>3),o=Number(i&7);if(o===0)s(a,ule(e,n));else if(o===1)s(a,e.subarray(n.pos,n.pos+8)),n.pos+=8;else if(o===2){let c=ule(e,n);s(a,e.subarray(n.pos,n.pos+c)),n.pos+=c}else if(o===5)s(a,e.subarray(n.pos,n.pos+4)),n.pos+=4;else throw new Error(`unsupported protobuf wire type: ${o}`)}return r}var Ey=(t,e)=>t.get(e)?.[0],hn=(t,e)=>Ey(t,e)?.toString("utf8")||"",vy=(t,e)=>Number(Ey(t,e)||0);function zdt(t){let e=dp(t),r=vy(e,1),n=hn(e,2),s=Ey(e,3)||Buffer.alloc(0);if(r&&r!==200){let i=new Error(n||`upstream api code ${r}`);throw i.code=r,i}return s}function gTr(t){let e=dp(t);return[2,3,4,5].map(r=>hn(e,r)).join("")}function Kdt(t){let e=dp(t);return{path:hn(e,1),thumbnail:hn(e,2)}}function Ni(t){let e=String(t||"");for(let r=0;r<3;r+=1)e=e.replace(/&/g,"&").replace(/'/g,"'").replace(/"/g,'"').replace(/</g,"<").replace(/>/g,">");return e.trim()}function yTr(t){let e=dp(t),r=Ey(e,2)?Kdt(Ey(e,2)):{};return{vod_id:String(vy(e,3)),vod_name:Ni(hn(e,5)),vod_pic:r.thumbnail||r.path||"",vod_remarks:Ni(hn(e,13)),vod_area:Ni(hn(e,1)),vod_year:String(vy(e,14)||""),vod_actor:Ni(hn(e,12)),vod_director:Ni(hn(e,7)),vod_class:Ni(hn(e,15)),vod_content:Ni(hn(e,4))}}function Vdt(t){return(dp(t).get(1)||[]).map(yTr).filter(r=>r.vod_id&&r.vod_name)}function ATr(t){let e=dp(t);return{id:String(vy(e,1)),title:Ni(hn(e,2)),path:hn(e,4),source:hn(e,9),sourceCn:Ni(hn(e,10))}}function xTr(t){let e=dp(t),r=Ey(e,2)?Kdt(Ey(e,2)):{};return{vod_id:String(vy(e,4)),vod_name:Ni(hn(e,9)),vod_pic:r.path||r.thumbnail||"",type_name:Ni(hn(e,13)),vod_area:Ni(hn(e,1)),vod_year:String(vy(e,18)||""),vod_actor:Ni(hn(e,25)),vod_director:Ni(hn(e,12)),vod_remarks:Ni(hn(e,26)),vod_content:Ni(hn(e,6)||hn(e,7)),videos:(e.get(29)||[]).map(ATr).filter(n=>n.path)}}function bTr(t){let e=dp(t),r={};for(let n of e.get(6)||[]){let s=dp(n),i=hn(s,1);i&&(r[i]=hn(s,2))}return{url:hn(e,1),direct:vy(e,5),headers:r,msg:hn(e,9)}}function _Tr(t){return Udt.test(t.path)?t.path:Buffer.from(JSON.stringify({vodPlayFrom:t.source,playUrl:t.path})).toString("base64")}function ETr(t){try{return JSON.parse(Buffer.from(String(t||""),"base64").toString("utf8"))}catch{return null}}function vTr(t){if(!t?.converUrl)return[];let e={};try{e=JSON.parse(t.converUrl)}catch{return[]}return["class","area","lang","year","extend_sort"].filter(r=>typeof e[r]=="string"&&e[r].trim()).map(r=>({key:r,name:"",init:"",value:[{n:"\u5168\u90E8",v:""},...e[r].split(",").map(n=>n.trim()).filter(Boolean).map(n=>({n,v:n}))]}))}async function W6(){if(Go.host&&Date.now()0&&(n[a]=o)}return{class:r,filters:n}}async function TTr(t){let e=t.body||{},r=String(e.id||e.tid||"").trim(),n=Number(e.page||e.pg||1)||1,s=e.filters||e.extend||{},i={pagesize:String(u_),typeId1:r,page:String(n),vodOrderBy:String(s.extend_sort||""),vodArea:String(s.area||""),vodLang:String(s.lang||""),vodClass:String(s.class||""),vodYear:String(s.year||"")},a=Vdt(await $6("/api/proto/v5/drama/category",M6(i)));return{page:n,pagecount:a.length>=u_?n+1:n,limit:u_,total:a.length,list:a}}async function wTr(t){let e=String(t.body?.id||"").trim();if(!e)return{list:[]};let r=xTr(await $6("/api/proto/v5/drama/getDetail",M6({id:e}))),n=new Map;for(let s of r.videos){let i=s.sourceCn||$dt;n.has(i)||n.set(i,[]),n.get(i).push(`${s.title||n.get(i).length+1}$${_Tr(s)}`)}return delete r.videos,r.vod_play_from=[...n.keys()].join("$$$"),r.vod_play_url=[...n.values()].map(s=>s.join("#")).join("$$$"),{list:[r]}}async function RTr(t){let e=String(t.body?.id||"").trim();if(!e)return{parse:0,jx:0,url:""};if(Udt.test(e))return{parse:0,jx:0,url:e,header:{"User-Agent":c_}};let r=ETr(e);if(!r?.playUrl)return{parse:1,jx:1,url:e,header:{"User-Agent":c_}};let n=await $6("/api/proto/v5/videoUsableUrl",M6(r)),s=bTr(n);return{parse:0,jx:0,url:s.url||r.playUrl,playUrl:"",header:Object.keys(s.headers).length>0?s.headers:{"User-Agent":c_},msg:s.msg||void 0}}async function NTr(t){let e=String(t.body?.wd||t.body?.keyword||"").trim(),r=Number(t.body?.page||t.body?.pg||1)||1;if(!e)return{page:r,pagecount:r,list:[]};let n={searchKeys:e,page:String(r),pagesize:String(u_)},s=Vdt(await $6("/api/proto/v5/drama/search",M6(n)));return{page:r,pagecount:s.length>=u_?r+1:r,limit:u_,total:s.length,list:s}}var Ydt={meta:{key:"juzhi",name:"\u300C\u76F4\u300D\u6A58\u6C41",type:3},api:async t=>{t.post("/init",ITr),t.post("/home",CTr),t.post("/category",TTr),t.post("/detail",wTr),t.post("/play",RTr),t.post("/search",NTr)},check:W6};var nft=Ce(require("node:crypto"),1),sft=Ce(require("node:https"),1),ift=Ce(require("node:zlib"),1),aft=Ce(require("node:net"),1),ld={default:nft.default},OTr={default:sft.default},ple={default:ift.default},kTr={default:aft.default},Fu=ud;(function(t,e){let r=ud,n=t();for(;;)try{if(parseInt("956778PWeEsu")/1+parseInt("1231204uLzOTc")/2+-parseInt("559032vtjhhw")/3+parseInt("3084580ayhZHK")/4+parseInt("4896820tXoJWk")/5+-parseInt("417378dsKyYK")/6*(-parseInt("119cdsdmh")/7)+parseInt("8kHNAQr")/8*(-parseInt("32206833nUafGT")/9)===e)break;n.push(n.shift())}catch{n.push(n.shift())}})(F6,-726893*1+-120*9138+-4*-641008);var PTr="====",Jdt=[104,2601+2537*-1,-6609+-6679*-1,189*-31+-208*-6+4777,3737*-1+3*1271+114,168,-2145+52*44,7964+-132*-55+7547*-2,353*-26+7+324*29,-252*-1+3971+-567*7,1*-9659+-2*3943+17796,217,-1761*-1+3*-241+-2*421,-8145+8179*1,-7750+-2*2213+-11*-1111,1698*-1+487*16+-6034,4*-749+6978+-3953,-3254*-1+6365+-9599,103,-5993*1+1*4171+1927],DTr=[3409+67*37+-5754,7*-271+-4*2468+11952,-9460*1+-1*2978+-1811*-7,-1*-9259+2695+-11759,-400+-1*-6186+-1844*3,-1*-617+-3009*1+2426,-9702+2*-1154+12070,-1*-4376+134*-34+-38*-5,59*-95+-1*7329+-4*-3246,-2*-4663+7777+-16986,-1861+-51*-38],BTr=[5283*-1+4528*1+197*5,9615+-8161*-1+-17593,415*1+-1555+1283,-3*3329+1*-914+11064,183],LTr=[1286*1+-1406+159*2,-4424+-1*-4607,9219*1+2496+-11543,208+7*137+-1038,-7154+16*463,504+9769*1+-10170,1303+-2*4877+-3*-2857,-5991*-1+-31*-233+1*-13181,-10*898+1729*5+-429*-1,-356*-15+3*1697+519*-20,-768+-1*3305+-1*-4177,-5947+-362*6+8144,2063+-1829*1],MTr=[["4a1a4b2f203179584b",49],-3658+-767*-10+-4*1003,["6a63742f170a3f4ca2bdac",10*-944+10*412+1348*4],1,["7d4a4f150be9c5f5f9f9d1c49180e3",-4414*2+2113+1362*5],4049*-1+-182+-83*-51,["5451a6e9e7f0ccc3fadcd1a6e8ebfa",11*-213+-1*287+-229*-12],868+4*244+-7*263,["afe9",-463*18+1938+-6537*-1]];function WTr(t){let e=Fu,r={GRfXs:function(i,a){return i(a)},hBBpD:function(i,a){return i||a},OeaSy:function(i,a){return i%a},XjKNO:function(i,a){return i!==a},uBoKa:"base64"},n=r.GRfXs(String,r.hBBpD(t,"")).replace(/\s+/g,""),s=r.OeaSy(n.length,-7499*-1+-3360+-4135);return r.XjKNO(s,1*7274+250*-30+226)&&(n+=PTr.slice(s)),Buffer.from(n,r.uBoKa)}function U6(t){let e=Fu,r={NtHRW:function(n,s){return n(s)},NhCHS:function(n,s){return n||s},NmWHw:"hex"};return Buffer.from(r.NtHRW(String,r.NhCHS(t,"")),r.NmWHw)}function Xdt(t,e){let r=Fu;if({ZAxEj:function(s,i){return s===i}}.ZAxEj(t.length,e))return t;let n=Buffer.alloc(e,"0");return t.copy(n,2*3834+4679*1+-12347,1*6857+55*121+1126*-12,Math.min(t.length,e)),n}function $Tr(t,e){let r=Fu,n={pKMuc:function(s,i){return s&i},KwJJp:function(s,i){return s^i},zVhwT:function(s,i){return s&i},KDrdw:function(s,i){return s+i},Psawy:function(s,i){return s*i}};return n.pKMuc(n.KwJJp(t,n.zVhwT(n.KDrdw(15*219+4027+-7145,n.Psawy(e,33*141+8075+-12709)),-9082+1*2993+2*3172)),6*1546+-5281*-1+1*-14302)}function UTr(t){let e=Fu,r={YGwSU:"hex",ikBYv:function(o,c){return o>(-2*h&6)):0)g=f.indexOf(g);for(let h=0,y=p.length;h>>i},rvgxf:function(s,i){return s^i},kEVlz:function(s,i){return s|i},XSydQ:function(s,i){return s&i},oJsnV:function(s,i){return s&i},RcKbj:function(s,i){return s&i},CGqkS:function(s,i){return s|i},cqhuY:function(s,i){return s&i},qaGuy:function(s,i){return s&i},zZeWi:function(s,i){return s&i},wRhvB:function(s,i){return s^i},FsKpU:function(s,i){return s-i},eFcAQ:function(s,i){return s-i},MGbKK:function(s,i){return s===i},jxHsB:function(s,i){return s&i},VBTqL:function(s,i){return s%i},tARXP:function(s,i){return s%i},SnDJJ:function(s,i){return s===i},QiNHU:function(s,i){return s===i},ASapl:"number"};for(let s=1291*-4+-5489+10653*1;n.xgXBv(s,t.length);s++)switch(n.oxVPu($Tr,t[s],s)){case 9866+1*-41+-11*892:e.noise=n.AWyhO(n.hKbkW(n.hKbkW(e.noise||-3*1001+-375+-3378*-1,s),e.i||-107*-89+9783+-7*2758),128520+-2674*-7+-81703);break;case-13*-302+-5283+1390:e.r0=n.yQIzu(e.raw[e.i],560*14+-12*484+-1777);break;case-1*-9814+-56*38+-7652:e.r1=n.SeFjR(e.i,-1*2285+-5217+242*31)?-853+6*-302+2774:n.Capci(e.raw[n.mtBAD(e.i,1031*5+-1*8227+-439*-7)],1162+-1*-8609+39*-244);break;case 3422*-1+-64*-67+831*-1:e.r2=n.iqnDm(FTr,e.i);break;case 36:e.r3=n.FnfXN(n.rVrfN(n.hKbkW(e.r0,16686+-16471*1),n.JCHWv(-767*1+14*695+-1119*8,e.i)),-1*-3299+3422+-6466);break;case-50*39+379*-1+26*91:e.r4=n.SJeac(n.EsUkn(n.LxhYH(e.r3,-11162+-11*-1015),n.BnaIc(e.r3,-43*52+-15*262+51*121)),2*2127+4362+-8361);break;case-5*-1019+-35*-173+-11112:e.r5=n.AWyhO(~n.rvgxf(e.r2,e.r1),2580+-2393*2+-23*-107);break;case 2567+1*8931+-1637*7:e.r6=n.kEVlz(n.XSydQ(e.r5,3978+208*32+-10580),n.oJsnV(n.RcKbj(~e.r5,255),82*109+2*-845+-7047)),e.r7=n.CGqkS(n.RcKbj(n.cqhuY(~e.r4,225*32+-37*-179+-13568),6*-228+4806*-1+6228),n.qaGuy(e.r4,9361+9798*-1+29*22));break;case-823*-1+3*41+-906:e.out[e.i]=n.zZeWi(n.wRhvB(e.r6,e.r7),-9918+-2*-3495+1*3183);break;case-1*8075+5083+3057:e.part=e.parts[n.FsKpU(n.eFcAQ(e.parts.length,-3*2309+-1628*-2+-1*-3672),e.i)]||"";break;case 9647+50*9+-10031*1:e.num=n.oxVPu(parseInt,e.part.replace("0x",""),-737+1046*6+-5529);break;case-2209*1+-2632+4908:n.MGbKK(n.jxHsB(e.i,8461+-2*4519+17*34),6914+2*3217+94*-142)?e.num-=11:n.MGbKK(n.VBTqL(e.i,-509+-257*-14+1543*-2),7800+-3*2600)?e.num-=4:n.MGbKK(n.tARXP(e.i,4354+29*96+-7132),1894*2+-2*3622+-48*-72)?e.num-=-7872+-9*-863+114:n.SnDJJ(n.tARXP(e.i,-1873+-1086*1+4*741),-281*23+-1717+8180)?e.num-=3944*1+31*71+6143*-1:e.num-=-1*1033+-4519+5555;break;case 68:e.out+=String.fromCharCode(n.Capci(e.num,-1*7231+1418+6068));break;case 346*-17+-8387*-1+-2408:{let i=MTr[e.i++];e.out+=n.QiNHU(typeof i,n.ASapl)?n.iqnDm(String,e.args[i]??""):n.iqnDm(UTr,i);break}default:throw new Error("bad vm opcode "+t[s]+":"+s)}return e}function qTr(t){let e=Fu,r={UYiTH:function(i,a){return i<=a},iwuAz:function(i,a){return i(a)},MzhTW:function(i,a){return in.toLowerCase()===r)}function tft(t){let e=String(t||"").replace(/\s+/g,""),r=e.length%4;return r!==0&&(e+="====".slice(r)),Buffer.from(e,"base64")}function VTr(t){return Buffer.from(String(t||""),"hex")}function hle(t,e,r){let n=ld.default.createDecipheriv("aes-128-cbc",Buffer.from(e),Buffer.from(r));return Buffer.concat([n.update(t),n.final()]).toString("utf8")}function YTr(t,e){let r=ld.default.createDecipheriv("aes-128-ecb",Buffer.from(e),null);return Buffer.concat([r.update(t),r.final()]).toString("utf8")}function JTr(t){let e=String(t||"").replace(/\n/g,"").match(/[A-Za-z0-9]{8}\*\*(.*)/s);return e?Buffer.from(e[1].trim(),"base64").toString("utf8"):t}function XTr(t){let e=QTr(t);return e?hle(e.encrypted,e.key,e.iv):t}function ZTr(t){let e=String(t||"").replace(/(\s|^)\/\/.*$/gm,""),r=e.trim();try{if(r.startsWith("{")||r.startsWith("["))return JSON.stringify(JSON.parse(r))}catch{}return e}function mft(t,e){let r=String(e||"").toLowerCase();return r.includes("gzip")?ple.default.gunzipSync(t):r.includes("deflate")?ple.default.inflateSync(t):r.includes("br")?ple.default.brotliDecompressSync(t):t}function hft(t){let e=Buffer.from(`\r +\r +`),r=t.indexOf(e);return r<0?null:{head:t.subarray(0,r).toString("latin1"),body:t.subarray(r+e.length)}}function ewr(t){let e=0,r=[];for(;e{let a=new URL(t),o=Number(a.port||80),c=kTr.default.createConnection({host:a.hostname,port:o}),u=[],l=!1;function d(p){let m=hft(p);if(!m)return!1;let h=m.head.toLowerCase(),y=h.match(/\r\ncontent-length:\s*(\d+)/i);return y?m.body.length>=parseInt(y[1],10):/\r\ntransfer-encoding:\s*chunked/i.test(h)?m.body.includes(Buffer.from(`0\r +\r +`)):!1}function f(){if(l)return;let p=Buffer.concat(u);if(d(p)){l=!0,c.destroy();try{let m=twr(p);if(pft(m.headers||{}),m.status>=300&&m.status<400&&m.headers.location&&n<5){let h=new URL(m.headers.location,t).toString();yle(h,e,r,n+1).then(s,i);return}s(mft(m.body,m.headers["content-encoding"]).toString(r))}catch(m){i(m)}}}c.setTimeout(15e3),c.on("connect",()=>{let p={...e},m=[`GET ${a.pathname}${a.search} HTTP/1.1`],h=d_(p,"User-Agent");for(let[y,g]of Object.entries(p))m.push(`${y}: ${g}`);m.push(`Host: ${a.host}`),d_(p,"Connection")||m.push("Connection: Keep-Alive"),d_(p,"Accept-Encoding")||m.push("Accept-Encoding: gzip"),h||m.push(`User-Agent: ${oft}`),c.write(m.join(`\r +`)+`\r +\r +`)}),c.on("data",p=>{u.push(p),f()}),c.on("timeout",()=>c.destroy(new Error(`timeout GET ${t}`))),c.on("error",p=>{l||i(p)}),c.on("end",f)})}function yle(t,e={},r="utf8",n=0){return new Promise((s,i)=>{let a=new URL(t);if(a.protocol==="http:"){rwr(t,e,r,n).then(s,i);return}let o=OTr.default,c={...e};d_(c,"Accept-Encoding")||(c["Accept-Encoding"]="gzip"),d_(c,"Connection")||(c.Connection="Keep-Alive"),d_(c,"User-Agent")||(c["User-Agent"]=oft);let u=o.request({protocol:a.protocol,hostname:a.hostname,port:a.port||void 0,method:"GET",path:`${a.pathname}${a.search}`,headers:c,timeout:15e3,rejectUnauthorized:!1},l=>{let d=l.headers.location;if(l.statusCode>=300&&l.statusCode<400&&d&&n<5){l.resume();let p=new URL(d,t).toString();yle(p,e,r,n+1).then(s,i);return}let f=[];l.on("data",p=>f.push(p)),l.on("end",()=>{try{pft(l.headers||{});let p=Buffer.concat(f),m=mft(p,l.headers["content-encoding"]);s(m.toString(r))}catch(p){i(p)}})});u.on("timeout",()=>u.destroy(new Error(`timeout GET ${t}`))),u.on("error",i),u.end()})}function p_(t,e={},r="utf8"){return yle(t,e,r)}async function nwr(t,e){let r,n=e.trim();return t.includes("xpgtv.net")?r=hle(Buffer.from(n,"base64"),"XXPGXXPGXXPGXXPG","GPXXGPXXGPXXGPXX"):t.includes("162.14.115.43")?r=hle(VTr(n),"y1u21fuSl329o4Xr","9Amg1OE5L5zYJY01"):t.includes("lotics")?r=YTr(Buffer.from(n,"base64"),"loamen.commmmmmm"):r=XTr(JTr(e).trim()),ZTr(r)}function swr(t,e){let r=JSON.parse(t),n=(Array.isArray(r.sites)?r.sites:[]).find(s=>s&&s.key===e);return!n||n.ext==null?null:typeof n.ext=="string"?n.ext:JSON.stringify(n.ext)}async function iwr(t,e){let r=await p_(t,{"User-Agent":"okhttp/3.12.11",Accept:"*/*","Accept-Encoding":"identity",Connection:"close"},"latin1"),n=await nwr(t,r);return swr(n,e)}function awr(t){return qTr(t)}function owr(t){let e=String(t||"").replace(/\\n/g,` +`).trim();if(e.includes("-----BEGIN"))return ld.default.createPublicKey(e);let r=e.replace("-----BEGIN PUBLIC KEY-----","").replace("-----END PUBLIC KEY-----","").replace(/\s+/g,"");return ld.default.createPublicKey({key:Buffer.from(r,"base64"),format:"der",type:"spki"})}function cwr(t){let e=String(t||"").replace(/\\n/g,` +`).trim();if(e.includes("-----BEGIN"))return ld.default.createPrivateKey(e);let r=e.replace("-----BEGIN PRIVATE KEY-----","").replace("-----END PRIVATE KEY-----","").replace("-----BEGIN RSA PRIVATE KEY-----","").replace("-----END RSA PRIVATE KEY-----","").replace(/\s+/g,"");return ld.default.createPrivateKey({key:Buffer.from(r,"base64"),format:"der",type:"pkcs8"})}function $w(t,e){let r=owr(e),n=Buffer.from(String(t),"utf8"),s=Math.ceil((r.asymmetricKeyDetails?.modulusLength||1024)/8)-11,i=[];for(let a=0;a=0){let o=t.slice(0,n),c=tft(t.slice(n+Zdt.length)).toString("utf8").trim(),u=parseInt(c,10);if(u<0||u>o.length)throw new Error(`bad cutLen=${u}, leftLen=${o.length}`);let l=o.slice(0,u),d=o.slice(u);r=uwr(l)+d}else r=t;let s=tft(r);if(s.length%128!==0)throw new Error(`RSA cipher length is not multiple of 128: ${s.length}`);let i=cwr(e),a=[];for(let o=0;oe.trim()).filter(Boolean)}function pwr(t,e,r){let n=[],s=new Set;for(let i of r){let a=String(i||"").trim();if(!a)continue;let o=a==="\u5168\u90E8"||a.startsWith("\u5168\u90E8")?{n:"\u5168\u90E8",v:""}:{n:a,v:a},c=o.v===""?"__all__":`${o.n}|${o.v}`;s.has(c)||(s.add(c),n.push(o))}return n.length&&!n.some(i=>i.v==="")&&n.unshift({n:"\u5168\u90E8",v:""}),{key:t,name:"",init:"",value:n}}function mwr(t){return""}function hwr(t){if(!t||!t.trim())return{class:[],filters:{}};let e;try{e=JSON.parse(t)}catch{return{class:[],filters:{}}}let r=Array.isArray(e.data)?e.data:[],n=[],s={};for(let i of r){let a=String(i?.type_id??"").trim(),o=String(i?.type_name??"").trim();if(!a||!o||a==="58")continue;n.push({type_id:a,type_name:o});let c=[],u=i.type_extend&&typeof i.type_extend=="object"?i.type_extend:null;if(!u){s[a]=c;continue}for(let l of["class","area","lang","year"]){let d=fwr(u[l]);d.length&&c.push(pwr(l,mwr(l),d))}c.length&&(s[a]=c)}return{class:n,filters:s}}function gft(t){let e=JSON.parse(t),r=Array.isArray(e.data)?e.data:[],n=[];for(let s of r)n.push({vod_id:String(s.vod_id??""),vod_pic:String(s.vod_pic??""),vod_name:String(s.vod_name??""),vod_remarks:String(s.vod_remarks??"")});return n}function gwr(t,e){return!Array.isArray(t)||!e?null:t.find(r=>r&&r.name===e)||null}async function ywr(t,e){try{let r=await iwr(GTr,zTr),n=awr(r).toString("utf8"),s=JSON.parse(n),i=dwr(s.headers);Uw=s.host,f_=s.ek,Fw=s.dk,cft=s.rsaM5,lft=s.apkLength,dft=s.pkid,Sy=lwr(s.headers),uft=i["build-time"]||i.headers?.["build-time"]||""}catch(r){console.error("WexV6DaShiXiong init failed:",r.message||r)}return{}}async function Awr(t,e){try{let r=q6(),n=$w(r,f_),s=await p_(`${Uw}/v6/nav?csrf=${Iy(n)}&token=`,Sy);return hwr(s)}catch(r){return console.error("WexV6DaShiXiong home failed:",r.message||r),{class:[],filters:{}}}}async function xwr(t,e){try{let r=t.body.filters||{},n=t.body.id||"",s=t.body.page||"1",i=r.cateId==null?n:r.cateId,a=r.area==null?"":r.area,o=r.year==null?"":r.year,c=r.class==null?"":r.class,u=r.lang==null?"":r.lang,l=q6(),d=Iy($w(l,f_)),f=`/v6/video?area=${a}&year=${o}&pg=${s}&csrf=${d}&lang=${u}&class=${Iy(c)}&tid=${i}&order=time&token=`,p=await p_(Uw+f,Sy);return p=j6(p,Fw),{page:parseInt(s,10)||1,pagecount:9999,limit:12,total:999999,list:gft(p)}}catch(r){return console.error("WexV6DaShiXiong category failed:",r.message||r),{page:1,pagecount:1,limit:12,total:0,list:[]}}}async function bwr(t,e){let r="",n="",s="";try{mle=null;let i=t.body.id,a=String(Array.isArray(i)?i[0]:i),o=q6(),c=Iy($w(o,f_)),u=HTr(o,cft,lft,uft);r=u;let l=$w(u,f_),d=Iy(l),f=`${Uw}/v6/video_detail?pkid=${dft}&ck=${d}&csrf=${c}&id=${a}&token=`,p=await p_(f,Sy);n=p,p=j6(p,Fw),s=p;let m=JSON.parse(p);if(!m.data||!m.data.vod_info)throw new Error(`unexpected detail response: ${p.slice(0,500)}`);let h=m.data.vod_info,y={vod_id:String(a),vod_name:h.vod_name||"",vod_year:h.vod_year||"",vod_content:h.vod_content||"",vod_actor:h.vod_actor||"",vod_director:h.vod_director||"",vod_play_from:"",vod_play_url:""},g=Array.isArray(h.vod_url_with_player)?h.vod_url_with_player:[];mle=g;let b=[],x=[];for(let A of g)b.push(String(A.name??"")),x.push(String(A.url??""));return b.length&&(y.vod_play_from=b.join("$$$"),y.vod_play_url=x.join("$$$")),{list:[y]}}catch(i){return console.error("WexV6DaShiXiong detail failed:",i.message||i,"ckdata=",r,"plain=",s.slice(0,500),"raw=",n.slice(0,300),"Header=",Sy),{list:[]}}}async function _wr(t,e){try{let r=t.body.flag||"",n=String(t.body.id||""),s=gwr(mle,r)||{},i=eft;Object.prototype.hasOwnProperty.call(s,"user_agent")&&(i=s.user_agent||eft);let a=s.parse_api||"";if(!a||n.includes("http"))return{url:n,header:rft(i),parse:0};let o=await p_(a+n,Sy);return o=j6(o,Fw),{url:JSON.parse(o).url||"",header:rft(i),parse:0}}catch(r){return console.error("WexV6DaShiXiong play failed:",r.message||r),{url:"",header:{},parse:0}}}async function Ewr(t,e){try{let r=t.body.wd||"",n=t.body.page||"1",s=q6(),i=Iy($w(s,f_)),a=`${Uw}/v6/search?pg=${n}&csrf=${i}&text=${Iy(r)}&tid=0&token=`,o=await p_(a,Sy);return o=j6(o,Fw),{page:parseInt(n,10)||1,pagecount:9999,list:gft(o)}}catch(r){return console.error("WexV6DaShiXiong search failed:",r.message||r),{page:1,pagecount:1,list:[]}}}var yft={meta:{key:"dashixiong",name:"\u300C\u76F4\u300D\u5927\u5E08\u5144",type:3},api:async t=>{t.post("/init",ywr),t.post("/home",Awr),t.post("/category",xwr),t.post("/detail",bwr),t.post("/play",_wr),t.post("/search",Ewr)}};var Ty=Ce(require("node:crypto"),1);var Cy="https://yoapp.bytegooty.com/yoapp.php",vwr="https://yoapp.bytegooty.com",wy="yoapp_45a4b99f474dbd78bec9760023749d6524efa4f9",Swr="649ff43aec4f7c9b26d4cd8454c7327f",Iwr="1F83BDCA0957AADDCD3CE53088D60FD228ADC463EBA105495E4EBAE6962B54D6",Cwr="0ef76bb9504ed221a7943892fad460e46f46baff6be593d124836282206c3f02",Twr="49f48cf4f713d712eb4c7631d8927477",xft="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/148.0.0.0 Safari/537.36 Edg/148.0.0.0",H6=12,Ale="",m_="",qw="",Q6=null;function xle(t){return Ty.default.createHash("sha256").update(String(t??""),"utf8").digest("hex")}function wwr(t,e){return Ty.default.createHmac("sha256",Buffer.from(String(t??""),"utf8")).update(String(e??""),"utf8").digest("hex")}function ble(t,e){return Ty.default.createHmac("sha256",Buffer.from(String(t??""),"utf8")).update(String(e??""),"utf8").digest("base64").replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/g,"").replace(/[\r\n]/g,"").trim()}function _le(){return Ty.default.randomBytes(16).toString("hex")}function Rwr(){let t=Ty.default.randomUUID().replace(/-/g,"").toLowerCase(),e="0123456789abcdefghijklmnopqrstuvwxyz",r=[3,5,7,11,13,17,19,23],n=0;for(let i=0;i0?n.slice(0,s):n,a=s>=0?n.slice(s+1):"",o=i.toLowerCase();o==="token"||o==="sign"||r.push([i,a])}return r.sort((n,s)=>n[0].localeCompare(s[0])).map(([n,s])=>`${n}=${s}`).join("&")}catch{return""}}function vle(t,e,r,n,s=""){let i=new URL(r);return[t,i.pathname,Owr(r),m_,e,n,xle(kwr(r)),xle(s)].join(` +`)}function jw(t){let e=Ty.default.createDecipheriv("aes-256-cbc",Buffer.from(Cwr,"hex"),Buffer.from(Twr,"hex"));return Buffer.concat([e.update(Buffer.from(String(t||""),"base64")),e.final()]).toString("utf8")}function dd(t,e={}){if(t&&typeof t=="object")return t;try{return JSON.parse(String(t||""))}catch{return e}}async function Pwr(){let e=(await fe.get(vwr,{headers:{"User-Agent":xft}})).headers?.["set-cookie"]||[];return(Array.isArray(e)?e:[e]).filter(Boolean).map(r=>String(r).split(";")[0].trim()).filter(Boolean).join("; ")}async function Qw(t,e=Nwr()){let r=Date.now().toString(),n=_le(),s=ble(e,vle("GET",r,t,n,""));return fe.get(t,{headers:Ele(r,n,s)})}async function Dwr(t,e,r,n=Date.now().toString(),s=_le()){let i=ble(e,vle("POST",n,t,s,r));return fe.post(t,r,{headers:Ele(n,s,i)})}async function Eft(t,e){try{m_=Rwr(),qw="",Ale=await Pwr();let r=_ft(),n=Date.now().toString(),s=_le(),i=`${Cy}?action=app_config`,a=ble(r,vle("GET",n,i,s,""));await fe.get(i,{headers:Ele(n,s,a)});let o=JSON.stringify({device_id:m_,ip:""}),c=await Dwr(`${Cy}?action=device_secret`,r,o,n,s),u=dd(c.data),l=dd(jw(u.data));qw=String(l.device_secret||"")}catch(r){console.error("AnimeFanShu init failed:",r.message||r)}return{}}async function Hw(){m_&&qw||(Q6||(Q6=Eft().finally(()=>{Q6=null})),await Q6)}function Aft(t){let e=[],r=new Set;for(let n of Array.isArray(t)?t:[]){let s=String(n??"").trim();if(!s||s==="\u6392\u5E8F"||s==="\u93BA\u6391\u7C2D")continue;let i=s==="\u5168\u90E8"||s.startsWith("\u5168\u90E8")||s==="\u934F\u3129\u5134"?{n:"\u5168\u90E8",v:""}:{n:s,v:s},a=i.v===""?"__all__":`${i.n}\0${i.v}`;r.has(a)||(r.add(a),e.push(i))}return e.length?(e.some(n=>n.v==="")||e.unshift({n:"\u5168\u90E8",v:""}),e):[]}function Bwr(t){let e=dd(t),r=Array.isArray(e.sections)?e.sections:[],n=[],s={};for(let i of r){let a=String(i.type_id??"").trim(),o=String(i.type_name??"").trim();if(!a||!o)continue;n.push({type_id:a,type_name:o});let c=[],u=Aft(i.extend_class_items),l=Aft(i.extend_year_items);u.length&&c.push({key:"class",name:"",init:"",value:u}),l.length&&c.push({key:"year",name:"",init:"",value:l}),c.length&&(s[a]=c)}return{class:n,filters:s}}function vft(t){let e=dd(t),r=[];for(let n of Object.keys(e||{})){if(n==="system_verify")continue;let s=e[n]||{};r.push({vod_id:String(s.vod_id??""),vod_name:String(s.vod_name??""),vod_pic:String(s.vod_pic??""),vod_remarks:String(s.vod_remarks??"")})}return r.filter(n=>n.vod_id&&n.vod_name)}async function Lwr(t,e){await Hw();try{let r=`${Cy}?action=home_sections&token=${wy}&limit=16`,n=await Qw(r);return Bwr(typeof n.data=="string"?n.data:JSON.stringify(n.data||{}))}catch(r){return console.error("AnimeFanShu home failed:",r.message||r),{class:[],filters:{}}}}async function Mwr(t,e){await Hw();try{let r=t.body?.filters||t.body?.extend||{},n=r.cateId==null?t.body?.id||"":r.cateId,s=String(t.body?.page||"1"),i=r.year==null?"":r.year,a=r.class==null?r.type||"":r.class,o=`${Cy}?action=category_videos&token=${wy}&type_id=${n}&page=${s}&page_size=${H6}&year=${i}&class=${encodeURIComponent(a)}&sort=time`,c=await Qw(o),u=jw(dd(c.data).data);return{page:parseInt(s,10)||1,pagecount:9999,limit:H6,total:999999,list:vft(u)}}catch(r){return console.error("AnimeFanShu category failed:",r.message||r),{page:1,pagecount:1,limit:H6,total:0,list:[]}}}async function Wwr(t,e){await Hw();try{let r=Array.isArray(t.body?.id)?t.body.id[0]:t.body?.id,n=String(r||""),s=`${Cy}?action=video_detail&token=${wy}&vod_id=${n}`,i=await Qw(s),a=dd(jw(dd(i.data).data)),o={vod_id:n,vod_name:a.vod_name||"",vod_year:a.vod_year||"",vod_content:a.vod_content||"",vod_actor:a.vod_actor||"",vod_director:a.vod_director||"",vod_play_from:"",vod_play_url:""},c=[],u=[];for(let l of a.play_sources||[]){let d=l.player_name||l.from||"\u9ED8\u8BA4\u7EBF\u8DEF",f=l.from||"",m=(Array.isArray(l.episodes)?l.episodes:[]).map((h,y)=>{let g=h.name||`\u7B2C${y+1}\u96C6`,b=h.episode_id||"";return b?`${g}$${b}|||${f}|||${n}`:""}).filter(Boolean).join("#");m&&(c.push(d),u.push(m))}return o.vod_play_from=c.join("$$$"),o.vod_play_url=u.join("$$$"),{list:[o]}}catch(r){return console.error("AnimeFanShu detail failed:",r.message||r),{list:[]}}}async function $wr(t,e){await Hw();try{let[r,n,s]=String(t.body?.id||"").split("|||"),i=`${Cy}?action=video_play&token=${wy}&vod_id=${s}&source=${n}&episode_index=${r}&episode_id=${r}`,a=await Qw(i);return{url:dd(jw(dd(a.data).data)).play_url||"",header:bft(),parse:0}}catch(r){return console.error("AnimeFanShu play failed:",r.message||r),{url:"",header:{},parse:0}}}async function Uwr(t,e){await Hw();try{let r=t.body?.wd||"",n=String(t.body?.page||"1"),s=`${Cy}?action=search_videos&token=${wy}&keyword=${encodeURIComponent(r)}&page=${n}&page_size=${H6}`,i=await Qw(s),a=jw(dd(i.data).data);return{page:parseInt(n,10)||1,pagecount:9999,list:vft(a)}}catch(r){return console.error("AnimeFanShu search failed:",r.message||r),{page:1,pagecount:1,list:[]}}}var Sft={meta:{key:"fanshu",name:"\u300C\u76F4\u300D\u756A\u85AF",type:3},api:async t=>{t.post("/init",Eft),t.post("/home",Lwr),t.post("/category",Mwr),t.post("/detail",Wwr),t.post("/play",$wr),t.post("/search",Uwr)}};var Ile=Ce(require("node:crypto"),1);var Ift="https://app.whjzjx.cn",Fwr="https://u.shytkjgs.com/user/v3/account/login",qwr="B@ecf920Od8A4df7",jwr="okhttp/4.10.0",Sle=24,z6="",G6=null;function Qwr(t){return Ile.default.createHash("md5").update(String(t??"")).digest("hex")}function Hwr(t){let e=Ile.default.createCipheriv("aes-128-ecb",Buffer.from(qwr,"utf8"),null);return Buffer.concat([e.update(String(t),"utf8"),e.final()]).toString("base64")}function V6(t={}){let e={"User-Agent":jwr,platform:"1",version_name:"3.9.2"};return z6&&(e.Authorization=z6),{...e,...t}}async function Cft(t,e){try{let r=Date.now(),n={first_install_time:r,last_update_time:r,install_first_open:!0,package_name:"com.jz.xydj",device:Qwr(String(r)),timestamp:r},s=Hwr(JSON.stringify(n)),i=await fe.post(Fwr,s,{headers:V6({"Content-Type":"application/json; charset=utf-8"}),transformRequest:[a=>a]});z6=String(i.data?.data?.token||"")}catch(r){console.error("XingYa init failed:",r.message||r)}return{}}async function Tft(){z6||(G6||(G6=Cft().finally(()=>{G6=null})),await G6)}function zo(t){return String(t??"").replace(/\s+/g," ").trim()}function fp(t){return Array.isArray(t)?t:[]}function wft(t={}){return{vod_id:String(t.id??""),vod_name:zo(t.title),vod_pic:zo(t.cover_url),vod_remarks:t.total?`${t.total}\u96C6`:zo(t.score_str)}}function Gwr(t){let e={};for(let r of fp(t?.list)){let n=String(r.id??"").trim();if(!n)continue;let s=[],i=fp(r.alg_class).map(o=>{let c=zo(o.class_name),u=String(o.id??"").trim();return c==="\u5168\u90E8"||u==="0"?{n:"\u5168\u90E8",v:""}:{n:c,v:u}}).filter(o=>o.n),a=fp(r.first_level_ranking).map(o=>({n:zo(o.name),v:String(o.id??"")})).filter(o=>o.n&&o.v);i.length&&s.push({key:"class",name:"",init:"",value:i}),a.length&&s.push({key:"rank",name:"",init:"1",value:a}),s.length&&(e[n]=s)}return e}async function K6(t,e={}){return await Tft(),(await fe.get(`${Ift}${t}`,{headers:V6(),...e})).data||{}}async function zwr(t,e={}){return await Tft(),(await fe.post(`${Ift}${t}`,e,{headers:V6()})).data||{}}async function Kwr(t,e){try{let n=(await K6("/cloud/v2/theater/classes")).data||{};return{class:fp(n.list).filter(i=>!String(i.show_type||"").includes("Bookstore")).map(i=>({type_id:String(i.id??""),type_name:zo(i.class_name)})).filter(i=>i.type_id&&i.type_name),filters:Gwr(n)}}catch(r){return console.error("XingYa home failed:",r.message||r),{class:[],filters:{}}}}async function Vwr(t,e){try{let r=String(t.body?.id||""),n=Math.max(parseInt(t.body?.page||1,10)||1,1),s=t.body?.filters||t.body?.extend||{},i=[];if(r==="9"){if(n>1)return{page:n,pagecount:1,limit:0,total:0,list:[]};let o=s.rank||"1",c=await K6(`/cloud/v1/first_level_ranking/detail?id=${encodeURIComponent(o)}`);i=fp(c.data?.list)}else{let o=s.class||"0",c=await K6("/cloud/v2/theater/home_page",{params:{theater_class_id:r,class2_ids:o,type:1,page_num:n,page_size:Sle}});i=fp(c.data?.list).map(u=>u.theater||u)}let a=i.map(wft).filter(o=>o.vod_id&&o.vod_name);return{page:n,pagecount:a.length>=Sle?n+1:n,limit:r==="9"?a.length:Sle,total:a.length,list:a}}catch(r){return console.error("XingYa category failed:",r.message||r),{page:1,pagecount:1,limit:0,total:0,list:[]}}}async function Ywr(t,e){try{let r=Array.isArray(t.body?.id)?t.body.id[0]:t.body?.id,n=String(r||"");if(!n)return{list:[]};let i=(await K6("/v2/theater_parent/detail",{params:{theater_parent_id:n}})).data||{},a={vod_id:n,vod_name:zo(i.title),vod_pic:zo(i.cover_url),type_name:fp(i.desc_tags).map(zo).filter(Boolean).join(","),vod_content:zo(i.introduction),vod_play_from:"",vod_play_url:""},o=fp(i.theaters).map((c,u)=>{let l=c.num||`\u7B2C${u+1}\u96C6`,d=zo(c.son_video_url);return d?`${l}$${d}`:""}).filter(Boolean).join("#");return o&&(a.vod_play_from="\u661F\u82BD",a.vod_play_url=o),{list:[a]}}catch(r){return console.error("XingYa detail failed:",r.message||r),{list:[]}}}async function Jwr(t,e){return{url:zo(t.body?.id),header:V6(),parse:0}}async function Xwr(t,e){try{let r=zo(t.body?.wd),n=Math.max(parseInt(t.body?.page||1,10)||1,1);if(!r)return{page:n,pagecount:1,list:[]};let s=await zwr("/v3/search",{text:r}),i=fp(s.data?.theater?.search_data).map(wft).filter(a=>a.vod_id&&a.vod_name);return{page:n,pagecount:1,list:i}}catch(r){return console.error("XingYa search failed:",r.message||r),{page:1,pagecount:1,list:[]}}}var Rft={meta:{key:"xingya",name:"\u300C\u76F4\u300D\u661F\u82BD",type:3},api:async t=>{t.post("/init",Cft),t.post("/home",Kwr),t.post("/category",Vwr),t.post("/detail",Ywr),t.post("/play",Jwr),t.post("/search",Xwr)}};var h_=async t=>{let e=await t.db.getObjectDefault("/live2vod",{});return{sources:e?.sources||t.config.live2vod?.sources||[],showMode:e?.showMode||t.config.live2vod?.showMode||"groups",def_pic:e?.def_pic||t.config.live2vod?.def_pic||"https://ghproxy.net/https://raw.githubusercontent.com/hjdhnx/hipy-server/master/app/static/img/lives.jpg"}},Cle=async(t,e)=>{await t.db.push("/live2vod",e)},Zwr=async t=>{await t.db.delete("/live2vod")};async function Tle(t){t.get("/config",async(e,r)=>{r.send({code:0,data:await h_(e.server)})}),t.put("/config",async(e,r)=>{await Cle(e.server,e.body),r.send({code:0})}),t.delete("/config",async(e,r)=>{await Zwr(e.server),r.send({code:0})}),t.get("/sources",async(e,r)=>{let n=await h_(e.server);r.send({code:0,data:n.sources||[]})}),t.post("/sources",async(e,r)=>{let{name:n,url:s,img:i}=e.body;if(!n||!s){r.code(400).send({code:1,msg:"\u540D\u79F0\u548CURL\u4E0D\u80FD\u4E3A\u7A7A"});return}let a=await h_(e.server);a.sources=a.sources||[],a.sources.push({name:n,url:s,img:i||""}),await Cle(e.server,a),r.send({code:0})}),t.delete("/sources/:index",async(e,r)=>{let n=parseInt(e.params.index),s=await h_(e.server);s.sources&&n>=0&&n{if(i=i.trim(),i.startsWith("#EXTINF:")){let a=i.replace(/'/g,'"'),o="\u672A\u77E5\u9891\u9053",c="";try{let l=a.match(/group-title="(.*?)"/);l&&(o=l[1].trim())}catch{}try{let l=a.match(/tvg-logo="(.*?)"/);l&&(c=l[1].trim())}catch{}s={name:i.split(",").slice(-1)[0].trim(),logo:c,group:o}}else if(i.startsWith("http")&&s){let a=s.group;r[a]||(r[a]=[],n.push(a)),r[a].push({name:s.name,url:i,logo:s.logo}),s=null}}),{groups:r,groupNames:n}}function rRr(t){let e=t.split(` +`),r={},n=[],s="";return e.forEach(i=>{if(i=i.trim(),!!i){if(/,#/.test(i))s=i.split(",")[0].trim(),r[s]||(r[s]=[],n.push(s));else if(i.includes(",")&&s){let a=i.split(",");a.length>=2&&a[1].trim().startsWith("http")&&r[s].push({name:a[0].trim(),url:a[1].trim(),logo:""})}}}),{groups:r,groupNames:n}}async function J6(t){if(Gw[t])return Gw[t];let e=await eRr(t),r;/#EXTM3U/.test(e)?r=tRr(e):r=rRr(e);for(let n of Object.keys(r.groups)){let s=r.groups[n],i=new Map;s.forEach(a=>{i.has(a.name)?(i.get(a.name).urls.push(a.url),!i.get(a.name).logo&&a.logo&&(i.get(a.name).logo=a.logo)):i.set(a.name,{...a,urls:[a.url]})}),r.groups[n]=Array.from(i.values())}return Gw[t]=r,r}async function nRr(t,e){let r=await h_(t.server);Ko.sources=r.sources||[],Ko.def_pic=r.def_pic||Ko.def_pic,Object.keys(Gw).forEach(s=>delete Gw[s]),Y6={};let n=Ko.sources.map(async s=>{try{let i=await J6(s.url),a=[{n:"\u5168\u90E8",v:""}];i.groupNames.forEach(o=>{a.push({n:o,v:o})}),Y6[s.url]=[{key:"group",name:"",init:"",value:a}]}catch(i){console.error(`\u9884\u52A0\u8F7D\u76F4\u64AD\u6E90 ${s.name} \u5931\u8D25: ${i.message}`),Y6[s.url]=[]}});return await Promise.all(n),{}}async function sRr(t,e){return{class:Ko.sources.map(n=>({type_id:n.url,type_name:n.name})),filters:Y6}}async function iRr(t,e){let r=t.body.id,n=t.body.page||1,i=(t.body.filters||{}).group||"";if(n>1)return{page:n,pagecount:1,list:[]};let o=Ko.sources.find(c=>c.url===r)?.img||"";try{let c=await J6(r),u=[],l=i?[i]:c.groupNames;for(let d of l){let f=c.groups[d];f&&f.forEach(p=>{u.push({vod_id:r+"$"+d+"$"+p.name,vod_name:p.name,vod_pic:p.logo||o||Ko.def_pic,vod_remarks:d})})}return{page:1,pagecount:1,total:u.length,list:u}}catch(c){return console.error(`\u83B7\u53D6\u5206\u7C7B\u9875\u5931\u8D25: ${c.message}`),{page:1,pagecount:1,list:[]}}}async function aRr(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[];for(let s of r){let i=s.split("$"),a=i[0],o=i[1],c=i.slice(2).join("$"),u=Ko.sources.find(f=>f.url===a),l=u?.img||"",d=u?.name||"\u76F4\u64AD\u6E90";try{let m=(await J6(a)).groups[o]?.find(g=>g.name===c);if(!m){n.push({vod_id:s,vod_name:c,vod_pic:l||Ko.def_pic,vod_content:"\u672A\u627E\u5230\u9891\u9053",vod_play_from:d,vod_play_url:""});continue}let y=(m.urls||[m.url]).map((g,b)=>`\u7EBF\u8DEF${b+1}$${g}`);n.push({vod_id:s,vod_name:c,type_name:o,vod_pic:m.logo||l||Ko.def_pic,vod_content:`\u9891\u9053: ${c} \u5206\u7EC4: ${o} -\u6765\u6E90: ${d}`,vod_play_from:d,vod_play_url:A.join("#"),vod_remarks:o})}catch(f){console.error(`\u83B7\u53D6\u8BE6\u60C5\u5931\u8D25: ${f.message}`),n.push({vod_id:s,vod_name:c,vod_pic:l||Bo.def_pic,vod_content:`\u83B7\u53D6\u5931\u8D25: ${f.message}`,vod_play_from:d,vod_play_url:""})}}return{list:n}}async function IEr(t,e){return{parse:0,url:t.body.id}}async function TEr(t,e){let r=t.body.wd,n=[];for(let s of Bo.sources)try{let i=await J4(s.url),a=s.img||"",o=new RegExp(r,"i");for(let c of i.groupNames){let u=i.groups[c];u&&u.forEach(l=>{o.test(l.name)&&n.push({vod_id:s.url+"$"+c+"$"+l.name,vod_name:l.name,vod_pic:l.logo||a||Bo.def_pic,vod_remarks:`${s.name} \xB7 ${c}`})})}}catch(i){console.error(`\u641C\u7D22\u6E90 ${s.name} \u5931\u8D25: ${i.message}`)}return{page:1,pagecount:1,total:n.length,list:n}}async function wEr(t,e){try{let r=function(a){a.statusCode&&a.statusCode===500&&console.error(a)},n=t.server.prefix,s={},i=await t.server.inject().post(`${n}/init`);return s.init=i.json(),r(i.json()),i=await t.server.inject().post(`${n}/home`),s.home=i.json(),r(i.json()),s.home.class&&s.home.class.length>0&&(i=await t.server.inject().post(`${n}/category`).payload({id:s.home.class[0].type_id,page:1,filters:{}}),s.category=i.json(),r(i.json()),s.category.list&&s.category.list.length>0&&(i=await t.server.inject().post(`${n}/detail`).payload({id:s.category.list[0].vod_id}),s.detail=i.json(),r(i.json()))),i=await t.server.inject().post(`${n}/search`).payload({wd:"CCTV",page:1}),s.search=i.json(),r(i.json()),s}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var Oot={meta:{key:"live2vod",name:"\u300C\u76F4\u300D\u76F4\u64AD",type:3},api:async t=>{t.post("/init",_Er),t.post("/home",SEr),t.post("/category",vEr),t.post("/detail",CEr),t.post("/play",IEr),t.post("/search",TEr),t.get("/test",wEr)}};var Moe=Re(Jn(),1);var Dot=process.env.JINPAI_HOST||"https://m.jiabaide.cn",X4="Mozilla/5.0 (Linux; Android 11; Pixel 5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.91 Mobile Safari/537.36",REr=process.env.JINPAI_APP_KEY||"cb808529bae6b6be45ecfab29a4889bc",NEr={"User-Agent":X4,Referer:`${Dot}/`},OEr={typeList:["type",""],plotList:["class",""],districtList:["area",""],languageList:["lang",""],yearList:["year",""],serialList:["by",""]},PEr=[{n:"\u65F6\u95F4",v:"2"},{n:"\u4EBA\u6C14",v:"3"},{n:"\u8BC4\u5206",v:"4"}];function At(t){return String(t??"").trim()}function DEr(t){return At(t).replace(/<[^>]*>/g," ").replace(/\s+/g," ").trim()}function kot(t={}){return Object.entries(t).filter(([,e])=>e!=null&&e!=="").map(([e,r])=>`${e}=${r}`).join("&")}function kEr(t={}){let e=String(Date.now()),r={...t,key:REr,t:e},n=Moe.default.SHA1(Moe.default.MD5(kot(r)).toString()).toString();return{...NEr,t:e,sign:n}}async function fE(t,e={}){let r=kot(e),n=`${Dot}${t}${r?`?${r}`:""}`,s=await he.get(n,{headers:kEr(e),timeout:2e4,validateStatus:()=>!0});if(s.status<200||s.status>=400)throw new Error(`HTTP ${s.status} @ ${n}`);let i=typeof s.data=="string"?JSON.parse(s.data||"{}"):s.data||{};if(Number(i.code)&&Number(i.code)!==200)throw new Error(i.msg||`API code=${i.code}`);return i}function Lot(t={}){let e=At(t.vodPubdate||""),r=e?e.split("-")[0]:"";return{vod_id:At(t.vodId),vod_name:At(t.vodName),vod_pic:At(t.vodPic),vod_remarks:[At(t.vodRemarks),At(t.vodDoubanScore)].filter(Boolean).join("_"),vod_year:r,type_id:At(t.typeId),type_name:At(t.typeName)}}function LEr({vodId:t="",nid:e="",episodeName:r="",sourceName:n="",title:s=""}={}){return encodeURIComponent(JSON.stringify({vodId:At(t),nid:At(e),episodeName:At(r),sourceName:At(n),title:At(s)}))}function BEr(t=""){let e=At(t);if(!e)return null;let r=[e];try{let s=decodeURIComponent(e);s&&s!==e&&r.unshift(s)}catch{}for(let s of r)try{let i=JSON.parse(s);if(i&&typeof i=="object")return{vodId:At(i.vodId),nid:At(i.nid),episodeName:At(i.episodeName),sourceName:At(i.sourceName),title:At(i.title)}}catch{}let n=e.match(/^(.*?)@(.*)$/);return n?{vodId:At(n[1]),nid:At(n[2]),episodeName:"",sourceName:"\u91D1\u724C\u7EBF\u8DEF",title:""}:null}function MEr(...t){for(let e of t){if(Number.isFinite(e)&&e>0)return e;let r=At(e);if(!r)continue;let n=Number(r);if(Number.isFinite(n)&&n>0)return n;let s=r.match(/^(?:第\s*)?(\d+)\s*(?:集|话|期)?(?:[\s.、:_-].*)?$/);if(s){let i=Number(s[1]);if(Number.isFinite(i)&&i>0)return i}}return null}function WEr(t="",e=null){let r=At(t),n=r.match(/^(?:第\s*(\d+)\s*(?:集|话|期)\s*|(\d+)\s*[.、:_-]\s*)(.*)$/),s=n?Number(n[1]||n[2]):null,i=Number.isFinite(e)&&e>0?e:s,a=n?At(n[3]):r;return i?a?`\u7B2C${i}\u96C6 ${a}`:`\u7B2C${i}\u96C6`:a||"\u6B63\u7247"}function Bot(t,e,r){return{page:t,pagecount:t+(r.length>=e?1:0),limit:e,total:(t-1)*e+r.length+(r.length>=e?1:0),list:r}}function $Er(t=""){let e=At(t);return!e||/^\d{3,4}\s*p?$/i.test(e)?!1:/[a-z\u4e00-\u9fa5]/i.test(e)}function FEr(t=""){let e=At(t).match(/(\d{3,4})\s*p?/i);if(!e)return"";let r=Number.parseInt(e[1],10);return Number.isFinite(r)?r>=4320?"8K":r>=2160?"4K":r>=1080?"\u8D85\u6E05":r>=720?"\u9AD8\u6E05":r>=480?"\u6807\u6E05":r>=360?"\u6D41\u7545":"":""}function UEr(t={}){let e=[t.name,t.title,t.resolution].map(At).filter(Boolean),r=e.find($Er);if(r)return r;let n=e.find(s=>/^\d{3,4}\s*p?$/i.test(s));return FEr(n)||n||"\u64AD\u653E"}function Pot(t={}){let e=At(t.url||t.playUrl||t.m3u8);if(!e)return null;let r=[t.name,t.resolution,t.title].map(At).filter(Boolean).join(" "),n=UEr(t);return{name:n,qualityLabel:r,url:e,headers:{"User-Agent":X4},priority:Mot({...t,name:n,qualityLabel:r})||1}}function Mot(t={}){let e=At(`${t.qualityLabel||""} ${t.name||""}`).toLowerCase();if(!e)return 0;if(/(?:原画|原盤|原盘)/i.test(e))return 1e4;if(/(?:8k|4320)/i.test(e))return 4320;if(/(?:4k|2160)/i.test(e))return 2160;let r=e.match(/(\d{3,4})\s*p?/i);if(r){let n=Number.parseInt(r[1],10);if(Number.isFinite(n))return n}return/(?:蓝光|藍光|超清)/i.test(e)?1080:/(?:高清)/i.test(e)?720:/(?:æ ‡æ¸…|標清)/i.test(e)?480:/(?:流畅|流暢)/i.test(e)?360:0}function qEr(t=[]){return t.map((e,r)=>({item:e,index:r,score:Mot(e)})).sort((e,r)=>r.score-e.score||e.index-r.index).map(({item:e})=>e)}async function jEr(){let t=[],e={},r=await fE("/api/mw-movie/anonymous/get/filer/type"),n=Array.isArray(r.data)?r.data:[];for(let a of n){let o=At(a.typeId),c=At(a.typeName);!o||!c||t.push({type_id:o,type_name:c})}let i=(await fE("/api/mw-movie/anonymous/v1/get/filer/list")).data||{};for(let a of t){let o=a.type_id;e[o]=[];for(let[c,[u,l]]of Object.entries(OEr)){let d=c==="serialList"?[...PEr]:[{n:"\u5168\u90E8",v:""}];if(c!=="serialList"){let f=i?.[o]?.[c]||[];for(let p of f){let m=At(p.itemText);m&&d.push({n:m,v:c==="typeList"?At(p.itemValue):m})}}d.length>1&&e[o].push({key:u,name:l,init:c==="serialList"?"2":"",value:d})}}return{classes:t,filters:e}}async function HEr(t,e){return{}}async function QEr(t,e){try{let{classes:r,filters:n}=await jEr();return{class:r,filters:n}}catch(r){return console.error("jinpai home failed:",r.message),{class:[],filters:{}}}}async function GEr(t,e){let r=At(t.body?.id||"1"),n=Math.max(1,Number.parseInt(t.body?.page||1,10)),s=t.body?.filters||{},i=30;try{let a={area:s.area||"",lang:s.lang||"",pageNum:String(n),pageSize:String(i),sort:s.by||"2",sortBy:"1",type:s.type||"",type1:r,v_class:s.class||"",year:s.year||""},c=((await fE("/api/mw-movie/anonymous/video/list",a))?.data?.list||[]).map(Lot).filter(u=>u.vod_id&&u.vod_name);return Bot(n,i,c)}catch(a){return console.error("jinpai category failed:",a.message),{page:n,pagecount:n,limit:i,total:0,list:[]}}}async function VEr(t,e){let r=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],n=[];for(let s of r){let i=At(s);if(i)try{let o=(await fE("/api/mw-movie/anonymous/video/detail",{id:i})).data||{};if(!Object.keys(o).length)continue;let c=At(o.vodId||i),u=At(o.sourceName||"\u91D1\u724C\u7EBF\u8DEF"),d=(Array.isArray(o.episodeList)?o.episodeList:[]).map((f,p)=>{let m=At(f.nid||f.episodeId||f.id);if(!m)return"";let h=MEr(f.episodeNumber,f.name,p+1),A=WEr(f.name||`\u7B2C${h||p+1}\u96C6`,h),g=LEr({vodId:c,nid:m,episodeName:A,sourceName:u,title:o.vodName});return`${A}$${g}`}).filter(Boolean);n.push({vod_id:c,vod_name:At(o.vodName),vod_pic:At(o.vodPic),type_name:At(o.vodClass||o.typeName),vod_remarks:At(o.vodRemarks),vod_year:At(o.vodYear||At(o.vodPubdate).slice(0,4)),vod_area:At(o.vodArea),vod_lang:At(o.vodLang),vod_director:At(o.vodDirector),vod_actor:At(o.vodActor),vod_content:DEr(o.vodContent||o.content||""),vod_play_from:d.length?u:"",vod_play_url:d.join("#")})}catch(a){console.error("jinpai detail failed:",i,a.message)}}return{list:n}}async function zEr(t,e){let r=At(t.body?.id),n=BEr(r);if(!n?.vodId||!n?.nid)return{parse:0,url:"",header:{}};try{let s={clientType:"3",id:n.vodId,nid:n.nid},a=(await fE("/api/mw-movie/anonymous/v2/video/episode/url",s))?.data||{},o=Array.isArray(a.list)?a.list:[],c=qEr(o.map(Pot).filter(Boolean)),u={"User-Agent":X4};if(!c.length){let l=Pot(a);l&&c.push(l)}return c.length?{parse:0,url:c[0].url,data:c[0].url,urls:c,header:u}:{parse:0,url:"",data:"",urls:[],header:u}}catch(s){return console.error("jinpai play failed:",s.message),{parse:0,url:"",header:{"User-Agent":X4}}}}async function KEr(t,e){let r=At(t.body?.wd),n=Math.max(1,Number.parseInt(t.body?.page||1,10)),s=30;if(!r)return{page:n,pagecount:n,limit:s,total:0,list:[]};try{let i={keyword:r,pageNum:String(n),pageSize:String(s)},o=((await fE("/api/mw-movie/anonymous/video/searchByWordPageable",i))?.data?.list||[]).map(Lot).filter(c=>c.vod_id&&c.vod_name);return Bot(n,s,o)}catch(i){return console.error("jinpai search failed:",i.message),{page:n,pagecount:n,limit:s,total:0,list:[]}}}var Wot={meta:{key:"jinpai",name:"\u300C\u76F4\u300D\u91D1\u724C",type:3},api:async t=>{t.post("/init",HEr),t.post("/home",QEr),t.post("/category",GEr),t.post("/detail",VEr),t.post("/play",zEr),t.post("/search",KEr)}};var Z0={host:"https://api.ztcgi.com",headers:{"User-Agent":"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",Referer:"https://api.ztcgi.com",Accept:"application/json"},imgHost:"https://img.ztfgh.com"};function YEr(){return[{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"}]}function Woe(t){let e=String(t||"").trim();return e?/^https?:\/\//i.test(e)?e:e.startsWith("//")?`https:${e}`:`${Z0.imgHost}${e.startsWith("/")?e:`/${e}`}`:""}async function JEr(t,e){return{}}async function XEr(t,e){return{class:YEr()}}async function ZEr(t,e){let r=t.body.id,s=t.body.page||1;s==0&&(s=1);try{let i=`${Z0.host}/api/crumb/list?fcate_pid=${r}&category_id=&area=&year=&type=&sort=&page=${s}`,o=(await he.get(i,{headers:Z0.headers})).data,u=(Array.isArray(o.data)?o.data:[]).map(A=>({vod_id:String(A.id),vod_name:A.title||"",vod_pic:Woe(A.path||""),vod_remarks:A.mask||""})).filter(A=>A.vod_id&&A.vod_name),l=parseInt(s,10)||1,d=u.length>0,f=d?l+1:l,p=Number(o?.per_page||0)||u.length||20,m=Number(o?.total||0),h=(l-1)*p+u.length+(d?1:0);return{page:l,pagecount:f,limit:p,total:m>0?m:h,list:u}}catch{return{list:[],page:parseInt(s,10)||1,pagecount:1,limit:20,total:0}}}async function e1r(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[];for(let s of r)try{let i=`${Z0.host}/api/video/detailv2?id=${s}`,o=(await he.get(i,{headers:Z0.headers})).data.data,c={vod_id:String(o.id||s),vod_name:o.title||"",vod_pic:Woe(o.thumbnail||o.path||o.tvimg||""),type_name:(o.types||[]).map(f=>f.name).join("/")||"",vod_year:o.year||"",vod_area:o.area||"",vod_remarks:o.mask||"",vod_actor:(o.actors||[]).map(f=>f.name).join("/")||"",vod_director:(o.directors||[]).map(f=>f.name).join("/")||"",vod_content:o.description||"",vod_play_from:"",vod_play_url:""},u=Array.isArray(o.source_list_source)?o.source_list_source:[],l=[],d=[];u.forEach((f,p)=>{let m=f.name||f.source_name||`\u7EBF\u8DEF${p+1}`;if(m==="\u5E38\u89C4\u7EBF\u8DEF")return;let h=Array.isArray(f.source_list)?f.source_list:[],A=[];h.forEach((g,b)=>{let y=g.source_name||g.name||`\u7B2C${b+1}\u96C6`,x=g.url||g.play_url||"";x&&A.push(`${y}$${x}`)}),A.length>0&&(l.push(m),d.push(A.join("#")))}),c.vod_play_from=l.join("$$$"),c.vod_play_url=d.join("$$$"),n.push(c)}catch{}return{list:n}}async function t1r(t,e){let r=t.body.id,n=r.startsWith("//")?`https:${r}`:r;return n.includes(".m3u8")||n.includes(".mp4")?{parse:0,url:n,header:Z0.headers}:{parse:1,url:n}}async function r1r(t,e){let r=t.body.page,n=t.body.wd,s=r||1;s==0&&(s=1);try{let i=`${Z0.host}/api/v2/search/videoV2?key=${encodeURIComponent(n)}&category_id=88&page=${s}&pageSize=20`,o=(await he.get(i,{headers:Z0.headers})).data,u=(Array.isArray(o.data)?o.data:[]).map(d=>({vod_id:String(d.id),vod_name:d.title||"",vod_pic:Woe(d.thumbnail||d.path||""),vod_remarks:d.mask||""})).filter(d=>d.vod_id&&d.vod_name),l=o.total||0;return{page:parseInt(s),pagecount:u.length>0?parseInt(s)+1:parseInt(s),total:l,list:u}}catch{return{list:[],page:parseInt(s),pagecount:1}}}async function n1r(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);if(n.init=s.json(),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),n.home.class.length>0&&(s=await t.server.inject().post(`${r}/category`).payload({id:n.home.class[0].type_id,page:1}),n.category=s.json(),n.category.list.length>0&&(s=await t.server.inject().post(`${r}/detail`).payload({id:n.category.list[0].vod_id}),n.detail=s.json(),n.detail.list&&n.detail.list.length>0))){n.play=[];for(let i of n.detail.list){let a=i.vod_play_from.split("$$$"),o=i.vod_play_url.split("$$$");for(let c=0;c{t.post("/init",JEr),t.post("/home",XEr),t.post("/category",ZEr),t.post("/detail",e1r),t.post("/play",t1r),t.post("/search",r1r),t.get("/test",n1r)}};var pE=Re(require("node:crypto"),1);var Fot={host:"https://api.w32z7vtd.com",headers:{"Cache-Control":"no-cache",Version:"2406025",PackageName:"com.uf076bf0c246.qe439f0d5e.m8aaf56b725a.ifeb647346f",Ver:"1.9.2",Referer:"https://api.w32z7vtd.com","Content-Type":"application/x-www-form-urlencoded","User-Agent":"okhttp/3.12.0"}},$oe={"User-Agent":"Lavf/57.83.100"},s1r=`-----BEGIN PRIVATE KEY----- +\u6765\u6E90: ${d}`,vod_play_from:d,vod_play_url:y.join("#"),vod_remarks:o})}catch(f){console.error(`\u83B7\u53D6\u8BE6\u60C5\u5931\u8D25: ${f.message}`),n.push({vod_id:s,vod_name:c,vod_pic:l||Ko.def_pic,vod_content:`\u83B7\u53D6\u5931\u8D25: ${f.message}`,vod_play_from:d,vod_play_url:""})}}return{list:n}}async function oRr(t,e){return{parse:0,url:t.body.id}}async function cRr(t,e){let r=t.body.wd,n=[];for(let s of Ko.sources)try{let i=await J6(s.url),a=s.img||"",o=new RegExp(r,"i");for(let c of i.groupNames){let u=i.groups[c];u&&u.forEach(l=>{o.test(l.name)&&n.push({vod_id:s.url+"$"+c+"$"+l.name,vod_name:l.name,vod_pic:l.logo||a||Ko.def_pic,vod_remarks:`${s.name} \xB7 ${c}`})})}}catch(i){console.error(`\u641C\u7D22\u6E90 ${s.name} \u5931\u8D25: ${i.message}`)}return{page:1,pagecount:1,total:n.length,list:n}}async function uRr(t,e){try{let r=function(a){a.statusCode&&a.statusCode===500&&console.error(a)},n=t.server.prefix,s={},i=await t.server.inject().post(`${n}/init`);return s.init=i.json(),r(i.json()),i=await t.server.inject().post(`${n}/home`),s.home=i.json(),r(i.json()),s.home.class&&s.home.class.length>0&&(i=await t.server.inject().post(`${n}/category`).payload({id:s.home.class[0].type_id,page:1,filters:{}}),s.category=i.json(),r(i.json()),s.category.list&&s.category.list.length>0&&(i=await t.server.inject().post(`${n}/detail`).payload({id:s.category.list[0].vod_id}),s.detail=i.json(),r(i.json()))),i=await t.server.inject().post(`${n}/search`).payload({wd:"CCTV",page:1}),s.search=i.json(),r(i.json()),s}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var Nft={meta:{key:"live2vod",name:"\u300C\u76F4\u300D\u76F4\u64AD",type:3},api:async t=>{t.post("/init",nRr),t.post("/home",sRr),t.post("/category",iRr),t.post("/detail",aRr),t.post("/play",oRr),t.post("/search",cRr),t.get("/test",uRr)}};var wle=Ce(Xn(),1);var kft=process.env.JINPAI_HOST||"https://m.jiabaide.cn",X6="Mozilla/5.0 (Linux; Android 11; Pixel 5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.91 Mobile Safari/537.36",lRr=process.env.JINPAI_APP_KEY||"cb808529bae6b6be45ecfab29a4889bc",dRr={"User-Agent":X6,Referer:`${kft}/`},fRr={typeList:["type",""],plotList:["class",""],districtList:["area",""],languageList:["lang",""],yearList:["year",""],serialList:["by",""]},pRr=[{n:"\u65F6\u95F4",v:"2"},{n:"\u4EBA\u6C14",v:"3"},{n:"\u8BC4\u5206",v:"4"}];function At(t){return String(t??"").trim()}function mRr(t){return At(t).replace(/<[^>]*>/g," ").replace(/\s+/g," ").trim()}function Pft(t={}){return Object.entries(t).filter(([,e])=>e!=null&&e!=="").map(([e,r])=>`${e}=${r}`).join("&")}function hRr(t={}){let e=String(Date.now()),r={...t,key:lRr,t:e},n=wle.default.SHA1(wle.default.MD5(Pft(r)).toString()).toString();return{...dRr,t:e,sign:n}}async function g_(t,e={}){let r=Pft(e),n=`${kft}${t}${r?`?${r}`:""}`,s=await fe.get(n,{headers:hRr(e),timeout:2e4,validateStatus:()=>!0});if(s.status<200||s.status>=400)throw new Error(`HTTP ${s.status} @ ${n}`);let i=typeof s.data=="string"?JSON.parse(s.data||"{}"):s.data||{};if(Number(i.code)&&Number(i.code)!==200)throw new Error(i.msg||`API code=${i.code}`);return i}function Dft(t={}){let e=At(t.vodPubdate||""),r=e?e.split("-")[0]:"";return{vod_id:At(t.vodId),vod_name:At(t.vodName),vod_pic:At(t.vodPic),vod_remarks:[At(t.vodRemarks),At(t.vodDoubanScore)].filter(Boolean).join("_"),vod_year:r,type_id:At(t.typeId),type_name:At(t.typeName)}}function gRr({vodId:t="",nid:e="",episodeName:r="",sourceName:n="",title:s=""}={}){return encodeURIComponent(JSON.stringify({vodId:At(t),nid:At(e),episodeName:At(r),sourceName:At(n),title:At(s)}))}function yRr(t=""){let e=At(t);if(!e)return null;let r=[e];try{let s=decodeURIComponent(e);s&&s!==e&&r.unshift(s)}catch{}for(let s of r)try{let i=JSON.parse(s);if(i&&typeof i=="object")return{vodId:At(i.vodId),nid:At(i.nid),episodeName:At(i.episodeName),sourceName:At(i.sourceName),title:At(i.title)}}catch{}let n=e.match(/^(.*?)@(.*)$/);return n?{vodId:At(n[1]),nid:At(n[2]),episodeName:"",sourceName:"\u91D1\u724C\u7EBF\u8DEF",title:""}:null}function ARr(...t){for(let e of t){if(Number.isFinite(e)&&e>0)return e;let r=At(e);if(!r)continue;let n=Number(r);if(Number.isFinite(n)&&n>0)return n;let s=r.match(/^(?:第\s*)?(\d+)\s*(?:集|话|期)?(?:[\s.、:_-].*)?$/);if(s){let i=Number(s[1]);if(Number.isFinite(i)&&i>0)return i}}return null}function xRr(t="",e=null){let r=At(t),n=r.match(/^(?:第\s*(\d+)\s*(?:集|话|期)\s*|(\d+)\s*[.、:_-]\s*)(.*)$/),s=n?Number(n[1]||n[2]):null,i=Number.isFinite(e)&&e>0?e:s,a=n?At(n[3]):r;return i?a?`\u7B2C${i}\u96C6 ${a}`:`\u7B2C${i}\u96C6`:a||"\u6B63\u7247"}function Bft(t,e,r){return{page:t,pagecount:t+(r.length>=e?1:0),limit:e,total:(t-1)*e+r.length+(r.length>=e?1:0),list:r}}function bRr(t=""){let e=At(t);return!e||/^\d{3,4}\s*p?$/i.test(e)?!1:/[a-z\u4e00-\u9fa5]/i.test(e)}function _Rr(t=""){let e=At(t).match(/(\d{3,4})\s*p?/i);if(!e)return"";let r=Number.parseInt(e[1],10);return Number.isFinite(r)?r>=4320?"8K":r>=2160?"4K":r>=1080?"\u8D85\u6E05":r>=720?"\u9AD8\u6E05":r>=480?"\u6807\u6E05":r>=360?"\u6D41\u7545":"":""}function ERr(t={}){let e=[t.name,t.title,t.resolution].map(At).filter(Boolean),r=e.find(bRr);if(r)return r;let n=e.find(s=>/^\d{3,4}\s*p?$/i.test(s));return _Rr(n)||n||"\u64AD\u653E"}function Oft(t={}){let e=At(t.url||t.playUrl||t.m3u8);if(!e)return null;let r=[t.name,t.resolution,t.title].map(At).filter(Boolean).join(" "),n=ERr(t);return{name:n,qualityLabel:r,url:e,headers:{"User-Agent":X6},priority:Lft({...t,name:n,qualityLabel:r})||1}}function Lft(t={}){let e=At(`${t.qualityLabel||""} ${t.name||""}`).toLowerCase();if(!e)return 0;if(/(?:原画|原盤|原盘)/i.test(e))return 1e4;if(/(?:8k|4320)/i.test(e))return 4320;if(/(?:4k|2160)/i.test(e))return 2160;let r=e.match(/(\d{3,4})\s*p?/i);if(r){let n=Number.parseInt(r[1],10);if(Number.isFinite(n))return n}return/(?:蓝光|藍光|超清)/i.test(e)?1080:/(?:高清)/i.test(e)?720:/(?:æ ‡æ¸…|標清)/i.test(e)?480:/(?:流畅|流暢)/i.test(e)?360:0}function vRr(t=[]){return t.map((e,r)=>({item:e,index:r,score:Lft(e)})).sort((e,r)=>r.score-e.score||e.index-r.index).map(({item:e})=>e)}async function SRr(){let t=[],e={},r=await g_("/api/mw-movie/anonymous/get/filer/type"),n=Array.isArray(r.data)?r.data:[];for(let a of n){let o=At(a.typeId),c=At(a.typeName);!o||!c||t.push({type_id:o,type_name:c})}let i=(await g_("/api/mw-movie/anonymous/v1/get/filer/list")).data||{};for(let a of t){let o=a.type_id;e[o]=[];for(let[c,[u,l]]of Object.entries(fRr)){let d=c==="serialList"?[...pRr]:[{n:"\u5168\u90E8",v:""}];if(c!=="serialList"){let f=i?.[o]?.[c]||[];for(let p of f){let m=At(p.itemText);m&&d.push({n:m,v:c==="typeList"?At(p.itemValue):m})}}d.length>1&&e[o].push({key:u,name:l,init:c==="serialList"?"2":"",value:d})}}return{classes:t,filters:e}}async function IRr(t,e){return{}}async function CRr(t,e){try{let{classes:r,filters:n}=await SRr();return{class:r,filters:n}}catch(r){return console.error("jinpai home failed:",r.message),{class:[],filters:{}}}}async function TRr(t,e){let r=At(t.body?.id||"1"),n=Math.max(1,Number.parseInt(t.body?.page||1,10)),s=t.body?.filters||{},i=30;try{let a={area:s.area||"",lang:s.lang||"",pageNum:String(n),pageSize:String(i),sort:s.by||"2",sortBy:"1",type:s.type||"",type1:r,v_class:s.class||"",year:s.year||""},c=((await g_("/api/mw-movie/anonymous/video/list",a))?.data?.list||[]).map(Dft).filter(u=>u.vod_id&&u.vod_name);return Bft(n,i,c)}catch(a){return console.error("jinpai category failed:",a.message),{page:n,pagecount:n,limit:i,total:0,list:[]}}}async function wRr(t,e){let r=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],n=[];for(let s of r){let i=At(s);if(i)try{let o=(await g_("/api/mw-movie/anonymous/video/detail",{id:i})).data||{};if(!Object.keys(o).length)continue;let c=At(o.vodId||i),u=At(o.sourceName||"\u91D1\u724C\u7EBF\u8DEF"),d=(Array.isArray(o.episodeList)?o.episodeList:[]).map((f,p)=>{let m=At(f.nid||f.episodeId||f.id);if(!m)return"";let h=ARr(f.episodeNumber,f.name,p+1),y=xRr(f.name||`\u7B2C${h||p+1}\u96C6`,h),g=gRr({vodId:c,nid:m,episodeName:y,sourceName:u,title:o.vodName});return`${y}$${g}`}).filter(Boolean);n.push({vod_id:c,vod_name:At(o.vodName),vod_pic:At(o.vodPic),type_name:At(o.vodClass||o.typeName),vod_remarks:At(o.vodRemarks),vod_year:At(o.vodYear||At(o.vodPubdate).slice(0,4)),vod_area:At(o.vodArea),vod_lang:At(o.vodLang),vod_director:At(o.vodDirector),vod_actor:At(o.vodActor),vod_content:mRr(o.vodContent||o.content||""),vod_play_from:d.length?u:"",vod_play_url:d.join("#")})}catch(a){console.error("jinpai detail failed:",i,a.message)}}return{list:n}}async function RRr(t,e){let r=At(t.body?.id),n=yRr(r);if(!n?.vodId||!n?.nid)return{parse:0,url:"",header:{}};try{let s={clientType:"3",id:n.vodId,nid:n.nid},a=(await g_("/api/mw-movie/anonymous/v2/video/episode/url",s))?.data||{},o=Array.isArray(a.list)?a.list:[],c=vRr(o.map(Oft).filter(Boolean)),u={"User-Agent":X6};if(!c.length){let l=Oft(a);l&&c.push(l)}return c.length?{parse:0,url:c[0].url,data:c[0].url,urls:c,header:u}:{parse:0,url:"",data:"",urls:[],header:u}}catch(s){return console.error("jinpai play failed:",s.message),{parse:0,url:"",header:{"User-Agent":X6}}}}async function NRr(t,e){let r=At(t.body?.wd),n=Math.max(1,Number.parseInt(t.body?.page||1,10)),s=30;if(!r)return{page:n,pagecount:n,limit:s,total:0,list:[]};try{let i={keyword:r,pageNum:String(n),pageSize:String(s)},o=((await g_("/api/mw-movie/anonymous/video/searchByWordPageable",i))?.data?.list||[]).map(Dft).filter(c=>c.vod_id&&c.vod_name);return Bft(n,s,o)}catch(i){return console.error("jinpai search failed:",i.message),{page:n,pagecount:n,limit:s,total:0,list:[]}}}var Mft={meta:{key:"jinpai",name:"\u300C\u76F4\u300D\u91D1\u724C",type:3},api:async t=>{t.post("/init",IRr),t.post("/home",CRr),t.post("/category",TRr),t.post("/detail",wRr),t.post("/play",RRr),t.post("/search",NRr)}};var _m={host:"https://api.ztcgi.com",headers:{"User-Agent":"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",Referer:"https://api.ztcgi.com",Accept:"application/json"},imgHost:"https://img.ztfgh.com"};function ORr(){return[{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"}]}function Rle(t){let e=String(t||"").trim();return e?/^https?:\/\//i.test(e)?e:e.startsWith("//")?`https:${e}`:`${_m.imgHost}${e.startsWith("/")?e:`/${e}`}`:""}async function kRr(t,e){return{}}async function PRr(t,e){return{class:ORr()}}async function DRr(t,e){let r=t.body.id,s=t.body.page||1;s==0&&(s=1);try{let i=`${_m.host}/api/crumb/list?fcate_pid=${r}&category_id=&area=&year=&type=&sort=&page=${s}`,o=(await fe.get(i,{headers:_m.headers})).data,u=(Array.isArray(o.data)?o.data:[]).map(y=>({vod_id:String(y.id),vod_name:y.title||"",vod_pic:Rle(y.path||""),vod_remarks:y.mask||""})).filter(y=>y.vod_id&&y.vod_name),l=parseInt(s,10)||1,d=u.length>0,f=d?l+1:l,p=Number(o?.per_page||0)||u.length||20,m=Number(o?.total||0),h=(l-1)*p+u.length+(d?1:0);return{page:l,pagecount:f,limit:p,total:m>0?m:h,list:u}}catch{return{list:[],page:parseInt(s,10)||1,pagecount:1,limit:20,total:0}}}async function BRr(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[];for(let s of r)try{let i=`${_m.host}/api/video/detailv2?id=${s}`,o=(await fe.get(i,{headers:_m.headers})).data.data,c={vod_id:String(o.id||s),vod_name:o.title||"",vod_pic:Rle(o.thumbnail||o.path||o.tvimg||""),type_name:(o.types||[]).map(f=>f.name).join("/")||"",vod_year:o.year||"",vod_area:o.area||"",vod_remarks:o.mask||"",vod_actor:(o.actors||[]).map(f=>f.name).join("/")||"",vod_director:(o.directors||[]).map(f=>f.name).join("/")||"",vod_content:o.description||"",vod_play_from:"",vod_play_url:""},u=Array.isArray(o.source_list_source)?o.source_list_source:[],l=[],d=[];u.forEach((f,p)=>{let m=f.name||f.source_name||`\u7EBF\u8DEF${p+1}`;if(m==="\u5E38\u89C4\u7EBF\u8DEF")return;let h=Array.isArray(f.source_list)?f.source_list:[],y=[];h.forEach((g,b)=>{let x=g.source_name||g.name||`\u7B2C${b+1}\u96C6`,A=g.url||g.play_url||"";A&&y.push(`${x}$${A}`)}),y.length>0&&(l.push(m),d.push(y.join("#")))}),c.vod_play_from=l.join("$$$"),c.vod_play_url=d.join("$$$"),n.push(c)}catch{}return{list:n}}async function LRr(t,e){let r=t.body.id,n=r.startsWith("//")?`https:${r}`:r;return n.includes(".m3u8")||n.includes(".mp4")?{parse:0,url:n,header:_m.headers}:{parse:1,url:n}}async function MRr(t,e){let r=t.body.page,n=t.body.wd,s=r||1;s==0&&(s=1);try{let i=`${_m.host}/api/v2/search/videoV2?key=${encodeURIComponent(n)}&category_id=88&page=${s}&pageSize=20`,o=(await fe.get(i,{headers:_m.headers})).data,u=(Array.isArray(o.data)?o.data:[]).map(d=>({vod_id:String(d.id),vod_name:d.title||"",vod_pic:Rle(d.thumbnail||d.path||""),vod_remarks:d.mask||""})).filter(d=>d.vod_id&&d.vod_name),l=o.total||0;return{page:parseInt(s),pagecount:u.length>0?parseInt(s)+1:parseInt(s),total:l,list:u}}catch{return{list:[],page:parseInt(s),pagecount:1}}}async function WRr(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);if(n.init=s.json(),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),n.home.class.length>0&&(s=await t.server.inject().post(`${r}/category`).payload({id:n.home.class[0].type_id,page:1}),n.category=s.json(),n.category.list.length>0&&(s=await t.server.inject().post(`${r}/detail`).payload({id:n.category.list[0].vod_id}),n.detail=s.json(),n.detail.list&&n.detail.list.length>0))){n.play=[];for(let i of n.detail.list){let a=i.vod_play_from.split("$$$"),o=i.vod_play_url.split("$$$");for(let c=0;c{t.post("/init",kRr),t.post("/home",PRr),t.post("/category",DRr),t.post("/detail",BRr),t.post("/play",LRr),t.post("/search",MRr),t.get("/test",WRr)}};var y_=Ce(require("node:crypto"),1);var $ft={host:"https://api.w32z7vtd.com",headers:{"Cache-Control":"no-cache",Version:"2406025",PackageName:"com.uf076bf0c246.qe439f0d5e.m8aaf56b725a.ifeb647346f",Ver:"1.9.2",Referer:"https://api.w32z7vtd.com","Content-Type":"application/x-www-form-urlencoded","User-Agent":"okhttp/3.12.0"}},Nle={"User-Agent":"Lavf/57.83.100"},$Rr=`-----BEGIN PRIVATE KEY----- MIICdgIBADANBgkqhkiG9w0BAQEFAASCAmAwggJcAgEAAoGAe6hKrWLi1zQmjTT1 ozbE4QdFeJGNxubxld6GrFGximxfMsMB6BpJhpcTouAqywAFppiKetUBBbXwYsYU 1wNr648XVmPmCMCy4rY8vdliFnbMUj086DU6Z+/oXBdWU3/b1G0DN3E9wULRSwcK @@ -10031,8 +10047,8 @@ jUJE8WAG7WLj/oCOWEh+ic6NIwTdAkEAj0X8nhx6AXsgCYRql1klbqtVmL8+95KZ K7PnLWG/IfjQUy3pPGoSaZ7fdquG8bq8oyf5+dzjE/oTXcByS+6XRQJAP/5ciy1b L3NhUhsaOVy55MHXnPjdcTX0FaLi+ybXZIfIQ2P4rb19mVq1feMbCXhz+L1rG8oa t5lYKfpe8k83ZA== ------END PRIVATE KEY-----`,Uot="Qmxi5ciWXbQzkr7o+SUNiUuQxQEf8/AVyUWY4T/BGhcXBIUz4nOyHBGf9A4KbM0iKF3yp9M7WAY0rrs5PzdTAOB45plcS2zZ0wUibcXuGJ29VVGRWKGwE9zu2vLwhfgjTaaDpXo4rby+7GxXTktzJmxvneOUdYeHi+PZsThlvPI=",Foe="1be86e8e18a9fa18b2b8d5432699dad0.ac008ed650fd087bfbecf2fda9d82e9835253ef24843e6b18fcd128b10763497bcf9d53e959f5377cde038c20ccf9d17f604c9b8bb6e61041def86729b2fc7408bd241e23c213ac57f0226ee656e2bb0a583ae0e4f3bf6c6ab6c490c9a6f0d8cdfd366aacf5d83193671a8f77cd1af1ff2e9145de92ec43ec87cf4bdc563f6e919fe32861b0e93b118ec37d8035fbb3c.59dd05c5d9a8ae726528783128218f15fe6f2c0c8145eddab112b374fcfe3d79",Tw={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"},i1r=[{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"}],a1r={1:[{key:"year",name:"",init:"0",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"}]},{key:"area",name:"",init:"0",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"}]},{key:"sort",name:"",init:"d_id",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}],2:[{key:"year",name:"",init:"0",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"}]},{key:"area",name:"",init:"0",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"}]},{key:"sort",name:"",init:"d_id",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}],3:[{key:"year",name:"",init:"0",value:[{n:"\u5168\u90E8",v:"0"},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"}]},{key:"area",name:"",init:"0",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:"",init:"d_id",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}],4:[{key:"year",name:"",init:"0",value:[{n:"\u5168\u90E8",v:"0"},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"}]},{key:"area",name:"",init:"0",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:"",init:"d_id",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}],64:[{key:"year",name:"",init:"0",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:"",init:"d_id",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}]},Iw=new Map,o1r={category:3e5,detail:3e5,play:3e5,search:6e4};function c1r(t){return pE.default.createHash("md5").update(t).digest("hex")}function u1r(t){let e=Buffer.from("mvXBSW7ekreItNsT","utf8"),r=Buffer.from("2U3IrJL8szAKp0Fj","utf8"),n=pE.default.createCipheriv("aes-128-cbc",e,r),s=n.update(t,"utf8","hex");return s+=n.final("hex"),s.toUpperCase()}function l1r(t,e,r){let n=Buffer.from(e,"utf8"),s=Buffer.from(r,"utf8"),i=pE.default.createDecipheriv("aes-128-cbc",n,s),a=i.update(t,"hex","utf8");return a+=i.final("utf8"),a}function d1r(t){let e=Buffer.from(t,"base64"),r=256,n=[];for(let s=0;se.expire?(Iw.delete(t),null):e.data:null}function m1r(t,e,r){Iw.set(t,{data:e,expire:Date.now()+(o1r[r]||6e4)}),Iw.size>200&&Iw.clear()}async function ww(t,e,r="category"){let n=`${e}|${JSON.stringify(t)}`;if(r!=="none"){let p=p1r(n);if(p)return p}let s=Math.floor(Date.now()/1e3).toString(),i=u1r(JSON.stringify(t)),a=f1r(i,s),o=new URLSearchParams({token:Foe,token_id:"",phone_type:"1",time:s,phone_model:"xiaomi-22021211rc",keys:Uot,request_key:i,signature:a,app_id:"1",ad_version:"1"}).toString(),c=await he.post(`${Fot.host}${e}`,o,{headers:Fot.headers});if(c.status!==200||!c.data?.data?.keys||!c.data?.data?.response_key)return null;let u=d1r(c.data.data.keys);if(!u)return null;let l=JSON.parse(u),d=l1r(c.data.data.response_key,l.key,l.iv);if(!d)return null;let f=JSON.parse(d);return r!=="none"&&f&&m1r(n,f,r),f}function qot(t){return{vod_id:`${t.vod_id}/${t.vod_continu||0}`,vod_name:t.vod_name,vod_pic:t.vod_pic,vod_remarks:(t.vod_continu||0)===0?"\u7535\u5F71":`\u66F4\u65B0\u81F3${t.vod_continu}\u96C6`}}function h1r(t){let e=String(t||"").trim();if(!e)return"";let r=e.split("/")[0];return/^\d+$/.test(r)?r:e.match(/(\d+)/)?.[1]||e}function Z4(t){let e=String(t||"").toLowerCase().replace("p","");return e==="8k"?100:e==="4k"||e==="2160"?90:e==="1440"?80:e==="1080"?70:e==="720"?60:e==="\u8D85\u6E05"?50:e==="\u9AD8\u6E05"?40:e==="\u6807\u6E05"?30:10}async function g1r(t,e){return{}}async function A1r(t,e){return{class:i1r,filters:a1r}}async function y1r(t,e){let r=t.body.id,n=String(t.body.page||1),s=t.body.filters||{};if(!r)return{page:1,pagecount:0,list:[]};let i=await ww({area:s.area||"0",year:s.year||"0",pageSize:"20",sort:s.sort||"d_id",page:n,tid:String(r)},Tw.INDEX_LIST,"category"),a=Array.isArray(i?.list)?i.list.map(u=>qot(u)):[],o=parseInt(n,10)||1,c=parseInt(i?.totalPage||0,10)||(a.length>0?o+1:o);return{page:o,pagecount:c,list:a}}async function x1r(t,e){let r=String(t.body.wd||"").trim(),n=String(t.body.page||1);if(!r)return{page:1,pagecount:0,list:[]};let s=await ww({keywords:r,order_val:"1",page:n},Tw.FIND_MORE,"search"),a=(Array.isArray(s?.list)?s.list:[]).filter(u=>String(u?.vod_name||"").toLowerCase().includes(r.toLowerCase())).map(u=>qot(u)),o=parseInt(n,10)||1,c=parseInt(s?.totalPage||0,10)||(a.length>0?o+1:o);return{page:o,pagecount:c,list:a}}async function b1r(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[];for(let s of r){let i=String(s||""),a=h1r(i);if(!a)continue;let[o,c]=await Promise.all([ww({token_id:"1649412",vod_id:a,mobile_time:Math.floor(Date.now()/1e3).toString(),tokename:Foe},Tw.PLAY_INFO,"detail"),ww({vurl_cloud_id:"2",vod_d_id:a},Tw.VURL_SHOW,"detail")]),u=o?.vodInfo;if(!u)continue;let l=[],d=Array.isArray(c?.list)?c.list:[];d.forEach((f,p)=>{let m=f?.play;if(!m||typeof m!="object")return;let h=[],A=[];if(Object.entries(m).forEach(([y,x])=>{x?.param&&(h.push(String(x.param)),A.push(String(y)))}),!h.length)return;A.sort((y,x)=>Z4(x)-Z4(y));let g=d.length===1?String(u.vod_name||"\u6B63\u7247"):String(f?.name||p+1),b=`${h[0]}||${A.join("@")}`;l.push(`${g}$${b}`)}),n.push({vod_id:i,vod_name:u.vod_name||"",vod_pic:u.vod_pic||"",vod_year:u.vod_year||"",vod_area:u.vod_area||"",vod_remarks:u.vod_remarks||(Number(u.vod_continu||0)===0?"\u7535\u5F71":`\u66F4\u65B0\u81F3${u.vod_continu}\u96C6`),vod_actor:u.vod_actor||"",vod_director:u.vod_director||"",vod_content:String(u.vod_use_content||u.vod_content||"").trim(),vod_play_from:l.length>0?"\u74DC\u5B50\u4E13\u7EBF":"",vod_play_url:l.length>0?l.join("#"):""})}return{list:n}}async function E1r(t,e){let r=String(t.body.id||"").trim();if(!r)return{parse:0,url:"",header:$oe};let n=r.split("||");if(n.length<2)return{parse:0,url:r,header:$oe};let s={};n[0].split("&").forEach(c=>{let[u,l]=c.split("=");u&&(s[u]=l||"")});let i=n[1].split("@").filter(Boolean);i.length>0&&(i.sort((c,u)=>Z4(u)-Z4(c)),s.resolution=i[0]);let a=await ww(s,Tw.VURL_DETAIL,"play");return{parse:0,url:String(a?.url||"").trim(),header:$oe}}var jot={meta:{key:"guazi",name:"\u300C\u76F4\u300D\u74DC\u5B50",type:3},api:async t=>{t.post("/init",g1r),t.post("/home",A1r),t.post("/category",y1r),t.post("/detail",b1r),t.post("/play",E1r),t.post("/search",x1r)}};var zf=String(process.env.PPNIX_HOST||"https://www.ppnix.com").trim(),_1r=String(process.env.PPNIX_LANG_PATH||"/cn").trim(),Qot=String(process.env.PPNIX_UA||"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/145.0.0.0 Safari/537.36").trim(),Got=24,S1r=10*60*1e3,v1r=[{type_id:"movie",type_name:"\u7535\u5F71"},{type_id:"tv",type_name:"\u7535\u89C6\u5267"}],C1r={time:"newstime",hits:"onclick",score:"rating",newstime:"newstime",onclick:"onclick",rating:"rating"},Gl={expiresAt:0,filters:{},filterDef:{movie:{class:"",area:"",year:"",by:"newstime"},tv:{class:"",area:"",year:"",by:"newstime"}}};function gn(t){return t==null?"":String(t).trim()}function I1r(t=""){let e=gn(t);return e?e.startsWith("/")?e.replace(/\/+$/,""):`/${e.replace(/\/+$/,"")}`:"/cn"}var Kg=I1r(_1r);function Vot(t=""){let e=gn(t);return e?/^https?:\/\//i.test(e)?e:e.startsWith("/")?`${zf}${e}`:`${zf}/${e}`:`${zf}${Kg}/`}function zg(t){return gn(t).replace(//gi," ").replace(/<[^>]+>/g," ").replace(/ /gi," ").replace(/ /gi," ").replace(/&/gi,"&").replace(/"/gi,'"').replace(/'/gi,"'").replace(/</gi,"<").replace(/>/gi,">").replace(/\s+/g," ").trim()}function zot(t){let e=gn(t);return e?/^https?:\/\//i.test(e)?e:e.startsWith("//")?`https:${e}`:e.startsWith("/")?`${zf}${e}`:`${zf}/${e}`:""}function T1r(t){let e=[],r=new Set;for(let n of Array.isArray(t)?t:[]){let s=gn(n?.vod_id||n?.vod_name);!s||r.has(s)||(r.add(s),e.push(n))}return e}function Kot(t){let e=gn(t);return e?/^https?:\/\//i.test(e)||e.startsWith("/")?e:e.startsWith("movie/")||e.startsWith("tv/")?`${Kg}/${e}`:`${Kg}/${e.replace(/^\/+/,"")}`:""}async function Rw(t,e={}){let r=Vot(t),n={"User-Agent":Qot,"Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",Referer:e.referer||`${zf}${Kg}/`,...e.headers||{}},s=await he({url:r,method:e.method||"GET",headers:n,data:e.body,timeout:e.timeout||2e4,responseType:"text",validateStatus:()=>!0,maxRedirects:5}),i=Number(s.status||0),a=typeof s.data=="string"?s.data:String(s.data||"");if(i!==200)throw new Error(`HTTP ${i||"unknown"} @ ${r}`);return a}function Yot(t,e,r=""){let n=[];return t(e).each((s,i)=>{let a=t(i),o=a.find("a.thumbnail, h2 a, a").first(),c=gn(o.attr("href")||a.find("h2 a").attr("href")||""),u=Kot(c),l=zg(a.find("img.thumb").attr("alt")||a.find("h2 a").text()||o.text()),d=zot(a.find("img.thumb").attr("src")||a.find("img.thumb").attr("data-src")||""),f=zg(a.find("footer .rate").text()||a.find("footer").text());!u||!l||n.push({vod_id:u,vod_name:l,vod_pic:d,vod_remarks:f,type_id:r,type_name:r==="movie"?"\u7535\u5F71":r==="tv"?"\u7535\u89C6\u5267":""})}),T1r(n)}function w1r(t=""){let e=(t.match(/infoid\s*=\s*(\d+)/)||[])[1]||"",r=t.match(/m3u8\s*=\s*\[(.*?)\]/s);if(!r)return{infoId:e,items:[]};let n=[],s=/'([^']*)'|"([^"]*)"/g,i;for(;(i=s.exec(r[1]))!==null;){let a=gn(i[1]||i[2]||"");a&&n.push(a)}return{infoId:e,items:[...new Set(n)]}}function R1r(t){let e=gn(t.infoId||""),r=encodeURIComponent(gn(t.param||"")),n=encodeURIComponent(gn(t.referer||"")),s=encodeURIComponent(gn(t.episodeName||""));return`${e}|${r}|${n}|${s}`}function N1r(t){try{let e=String(t||"").split("|");return{infoId:gn(e[0]||""),param:decodeURIComponent(e[1]||""),referer:decodeURIComponent(e[2]||""),episodeName:decodeURIComponent(e[3]||"")}}catch{return{}}}function O1r(t={}){let e=t&&typeof t=="object"?t:{};return{class:gn(e.class||e.type||e.cate||""),area:gn(e.area||""),year:gn(e.year||""),by:gn(e.by||e.sort||"newstime")||"newstime"}}function qoe(t,e=1,r={}){let n=O1r(r),s=n.class,i=n.area,a=n.year,o=C1r[n.by]||"newstime",c=Number(e)<=1?"":`${Number(e)-1}`;return`${Kg}/${t}/${s}-${i}-${a}-${c}-${o}.html`}function P1r(t=[]){return[...new Set((t||[]).map(e=>gn(e)).filter(Boolean))]}function Uoe(t,e,r=""){let n=[];return t(e).find("a").each((s,i)=>{let a=gn(t(i).text());!a||a===r||n.push(a)}),P1r(n)}function Hot(t){let e=[],r=t(".lists-content.filter dl");if(!r.length)return e;let n=Uoe(t,r.eq(0),"\u5168\u90E8");n.length&&e.push({key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},...n.map(a=>({n:a,v:a}))]});let s=Uoe(t,r.eq(1),"\u5168\u90E8");s.length&&e.push({key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},...s.map(a=>({n:a,v:a}))]});let i=Uoe(t,r.eq(2),"\u5168\u90E8");return i.length&&e.push({key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},...i.map(a=>({n:a,v:a}))]}),e.push({key:"by",name:"",init:"newstime",value:[{n:"\u65F6\u95F4",v:"newstime"},{n:"\u4EBA\u6C14",v:"onclick"},{n:"\u8BC4\u5206",v:"rating"}]}),e}async function D1r(t=!1){if(!t&&Gl.expiresAt>Date.now()&&Object.keys(Gl.filters).length>0)return{filters:Gl.filters,filter_def:Gl.filterDef};try{let[e,r]=await Promise.all([Rw(qoe("movie",1,{})),Rw(qoe("tv",1,{}))]);Gl.filters={movie:Hot(Me(e)),tv:Hot(Me(r))},Gl.expiresAt=Date.now()+S1r}catch{if(!Object.keys(Gl.filters).length){let e=[{key:"by",name:"",init:"newstime",value:[{n:"\u6309\u65F6\u95F4",v:"newstime"},{n:"\u6309\u4EBA\u6C14",v:"onclick"},{n:"\u6309\u8BC4\u5206",v:"rating"}]}];Gl.filters={movie:e,tv:e}}}return{filters:Gl.filters,filter_def:Gl.filterDef}}async function k1r(t,e){return{}}async function L1r(t,e){let{filters:r}=await D1r();return{class:v1r,filters:r}}async function B1r(t,e){try{let r=gn(t.body?.id||"movie"),n=Math.max(1,Number(t.body?.page||1)||1),s=t.body?.filters||{},i=await Rw(qoe(r,n,s)),a=Me(i),o=Yot(a,".lists-content > ul > li, .lists .lists-content ul li",r).filter(d=>d.vod_id.includes(`/${r}/`)),c=n,l=[...(a(".pagination, .pages, .pagenavi").html()||"").matchAll(/---(\d+)-\.html/g)].map(d=>Number(d[1])+1);return l.length?c=Math.max(n,...l):o.length>=Got&&(c=n+1),{page:n,pagecount:c,list:o}}catch{let r=Math.max(1,Number(t.body?.page||1)||1);return{page:r,pagecount:r,list:[]}}}async function M1r(t,e){let r=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],n=[];for(let s of r)try{let i=Kot(s);if(!i)continue;let a=await Rw(i),o=Me(a),c=zg(o("h1.product-title").text()),u=zg(o("title").text()).replace(/\s*\([^)]*\).*/,""),l=c.replace(/\s*\([^)]*\)\s*$/,"").trim()||u,d=zot(o("header.product-header img.thumb").attr("src")||""),f=zg(o(".product-excerpt").filter((v,C)=>o(C).text().includes("\u7B80\u4ECB\uFF1A")).text()).replace(/^简介:/,"").trim(),p=zg(o(".product-excerpt").filter((v,C)=>o(C).text().includes("\u5BFC\u6F14\uFF1A")).find("span").text()),m=zg(o(".product-excerpt").filter((v,C)=>o(C).text().includes("\u4E3B\u6F14\uFF1A")).find("span").text()).replace(/\s*\/\s*/g,","),h=(c.match(/\((\d{4})\)/)||[])[1]||"",A=i.includes("/movie/")?"\u7535\u5F71":i.includes("/tv/")?"\u7535\u89C6\u5267":"",{infoId:g,items:b}=w1r(a),y=(i.match(/(\d+)\.html/)||[])[1]||"",x=b.map((v,C)=>{let R=b.length>1?`\u7B2C${C+1}\u96C6`:gn(v)||"\u6B63\u7247",w=R1r({infoId:g||y,param:v,referer:Vot(i),episodeName:R});return`${R}$${w}`});n.push({vod_id:i,vod_name:l,vod_pic:d,type_name:A,vod_year:h,vod_director:p,vod_actor:m,vod_content:f,vod_play_from:x.length?"PPnix":"",vod_play_url:x.join("#")})}catch{continue}return{list:n}}async function W1r(t,e){try{let r=N1r(t.body?.id||""),n=gn(r.infoId),s=gn(r.param);if(!n||!s)return{parse:0,url:gn(t.body?.id||"")};let i=gn(r.referer||`${zf}${Kg}/`);return{parse:0,url:`${zf}/info/m3u8/${n}/${encodeURIComponent(s)}.m3u8`,header:{Referer:i,Origin:zf,"User-Agent":Qot}}}catch{return{parse:1,url:gn(t.body?.id||""),header:{}}}}async function $1r(t,e){try{let r=gn(t.body?.wd||""),n=Math.max(1,Number(t.body?.page||1)||1);if(!r)return{page:1,pagecount:1,list:[]};let s=encodeURIComponent(r),i=n<=1?"":`-page-${n}`,a=await Rw(`${Kg}/search/${s}--.html${i}`),o=Me(a),c=Yot(o,".lists-content > ul > li, .lists .lists-content ul li").filter(u=>/\/(movie|tv)\/\d+\.html/.test(u.vod_id));return{page:n,pagecount:c.length>=Got?n+1:n,list:c}}catch{let r=Math.max(1,Number(t.body?.page||1)||1);return{page:r,pagecount:r,list:[]}}}var Jot={meta:{key:"ppnix",name:"\u300C\u76F4\u300DPPnix",type:3},api:async t=>{t.post("/init",k1r),t.post("/home",L1r),t.post("/category",B1r),t.post("/detail",M1r),t.post("/play",W1r),t.post("/search",$1r)}};var qn={key:"anime1",name:"Anime1\u52D5\u756B",host:"https://anime1.me",listUrl:"https://d1zquzjgwo9yb.cloudfront.net/",playApi:"https://v.anime1.me/api",pic:"https://sta.anicdn.com/playerImg/8.jpg",ua:"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/142.0.0.0 Safari/537.36",timeout:15e3},Nw=48,F1r=5*60*1e3,U1r=60,Xot=(()=>{let t=Math.max(new Date().getFullYear(),2025),e=[];for(let r=t;r>=2018;r-=1)e.push({type_id:String(r),type_name:String(r)});return[{type_id:"\u9023\u8F09\u4E2D",type_name:"\u9023\u8F09\u4E2D"},...e,{type_id:"2017",type_name:"\u66F4\u65E9"}]})(),tM={expireAt:0,list:[]},eM=null;function Yg(t){return Me(`
${String(t||"")}
`).text().replace(/\s+/g," ").trim()}function Qoe(t=qn.host){return{"User-Agent":qn.ua,Referer:t,"Accept-Language":"zh-CN,zh;q=0.9"}}function Ow(t,e=qn.host){let r=String(t||"").trim();if(!r)return"";try{return new URL(r,e).href}catch{return""}}function Goe(t){let e=String(t||"").trim();if(!e)return"";try{let n=new URL(e,qn.host).searchParams.get("cat");if(n)return n}catch{}return e.replace(/^\/?\?cat=/,"")}function q1r(t){let e=String(t||"").trim();if(/^https?:\/\//i.test(e))return e;if(e.startsWith("/"))return Ow(e);let r=Goe(e);return r?`${qn.host}/?cat=${encodeURIComponent(r)}`:qn.host}function j1r(t){let e=String(t||"").trim();return e?e.startsWith("//")?`https:${e}`:Ow(e,qn.host):""}function H1r(t){if(!Array.isArray(t))return null;let e=String(t[0]??"").trim(),r=Yg(t[1]);return!e||!r?null:{id:e,vod_id:e,vod_name:r,vod_pic:qn.pic,vod_remarks:Yg(t[2]),vod_year:String(t[3]??"").trim(),type_name:Yg(t[4]),vod_actor:Yg(t[5])}}async function Hoe(t,e={}){let r=Ow(t,e.base||qn.host),n=await he({url:r,method:"get",timeout:e.timeout||qn.timeout,responseType:"text",transformResponse:[s=>s],validateStatus:()=>!0,headers:{...Qoe(e.referer||qn.host),...e.headers||{}}});if(n.status<200||n.status>=300)throw new Error(`HTTP ${n.status}`);return String(n.data||"")}async function Q1r(){let t=await he({url:`${qn.listUrl}?_=${Date.now()}`,method:"get",timeout:qn.timeout,responseType:"text",transformResponse:[n=>n],validateStatus:()=>!0,headers:Qoe(qn.host)});if(t.status<200||t.status>=300)throw new Error(`HTTP ${t.status}`);let e=JSON.parse(String(t.data||"{}")),r=Object.values(e).map(H1r).filter(Boolean);return tM={expireAt:Date.now()+F1r,list:r},r}async function rM(){return tM.expireAt>Date.now()&&tM.list.length>0?tM.list:(eM||(eM=Q1r().finally(()=>{eM=null})),eM)}function Zot(t,e){let r=String(e||"\u9023\u8F09\u4E2D").trim();return r==="\u9023\u8F09\u4E2D"?t.filter(n=>n.vod_remarks.includes("\u9023\u8F09\u4E2D")):r==="2017"?t.filter(n=>{let s=Number.parseInt(n.vod_year,10);return Number.isFinite(s)&&s<=2017}):t.filter(n=>n.vod_year===r)}function ect(t,e,r=Nw){let n=Math.max(1,Number.parseInt(e,10)||1),s=t.length,i=Math.max(1,Math.ceil(s/r));return{list:t.slice((n-1)*r,n*r),page:n,pagecount:i,limit:r,total:s}}function G1r(t,e){let r=Goe(e);return t.find(n=>n.id===r||n.vod_id===r)}function V1r(t){return Yg(t).replace(/[$#]/g," ").trim()}function z1r(t,e){let r=Yg(t),n=r.match(/\[(.*)\]/);return V1r(n?.[1]||r||`\u7B2C${e+1}\u96C6`)}function K1r(t){return Buffer.from(JSON.stringify(t||{}),"utf8").toString("base64")}function Y1r(t){try{let e=JSON.parse(Buffer.from(String(t||""),"base64").toString("utf8"));return e&&typeof e=="object"?e:{}}catch{return{}}}function J1r(t,e,r){let n=Me(t||"");n(".site-main article").each((s,i)=>{let a=String(n(i).find("[data-apireq]").first().attr("data-apireq")||"").trim();if(!a||r.has(a))return;let o=n(i).find(".entry-title").first().text();r.add(a),e.push({name:z1r(o,e.length),apiReq:a})})}async function X1r(t,e){let r=[],n=new Set,s=new Set,i=t,a=e;for(let o=0;or.trim()).filter(r=>["e","p","h"].includes(r.split("=")[0])).join("; ")}function joe(t,e=qn.host){let r={"User-Agent":qn.ua,Referer:e||qn.host};return t&&(r.Cookie=t),r}async function e_r(t,e){let r=await he({url:qn.playApi,method:"post",data:`d=${t}`,timeout:qn.timeout,responseType:"text",transformResponse:[i=>i],validateStatus:()=>!0,headers:{...Qoe(qn.host),"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8"}});if(r.status<200||r.status>=300)throw new Error(`HTTP ${r.status}`);let n=JSON.parse(String(r.data||"{}")),s=j1r(n?.s?.[0]?.src);if(!s)throw new Error("empty play url");return{url:s,cookie:Z1r(r.headers?.["set-cookie"])}}async function t_r(t,e){return{}}async function r_r(t,e){try{let r=Zot(await rM(),"\u9023\u8F09\u4E2D").slice(0,Nw);return{class:Xot,filters:{},list:r}}catch(r){return console.error("anime1 home failed:",r.message),{class:Xot,filters:{},list:[]}}}async function n_r(t,e){let r=t.body?.id||t.body?.tid||"\u9023\u8F09\u4E2D",n=t.body?.page||1;try{return ect(Zot(await rM(),r),n)}catch(s){return console.error("anime1 category failed:",s.message),{list:[],page:Math.max(1,Number.parseInt(n,10)||1),pagecount:1,limit:Nw,total:0}}}async function s_r(t,e){let r=String(t.body?.wd||"").trim(),n=t.body?.page||1;if(!r)return{list:[],page:1,pagecount:1,limit:Nw,total:0};try{let s=r.toLowerCase(),i=(await rM()).filter(a=>a.vod_name.toLowerCase().includes(s));return ect(i,n)}catch(s){return console.error("anime1 search failed:",s.message),{list:[],page:Math.max(1,Number.parseInt(n,10)||1),pagecount:1,limit:Nw,total:0}}}async function i_r(t,e){let r=t.body?.id,n=(Array.isArray(r)?r:String(r||"").split(",")).map(a=>String(a||"").trim()).filter(Boolean),s=[],i=await rM().catch(()=>[]);for(let a of n){let o=Goe(a),c=q1r(a);try{let u=await Hoe(c),l=Me(u||""),d=G1r(i,a),f=Yg(l(".page-title, h1").first().text()),m=(await X1r(u,c)).map(h=>`${h.name}$${K1r({apiReq:h.apiReq,referer:c})}`).join("#");s.push({vod_id:o||a,vod_name:d?.vod_name||f||o||a,vod_pic:d?.vod_pic||qn.pic,vod_remarks:d?.vod_remarks||"",vod_year:d?.vod_year||"",type_name:d?.type_name||"",vod_actor:d?.vod_actor||"",vod_content:d?.vod_remarks||"",vod_play_from:"Anime1",vod_play_url:m})}catch(u){console.error("anime1 detail failed:",a,u.message)}}return{list:s}}async function a_r(t,e){let r=String(t.body?.id||"").trim(),n=Y1r(r),s=String(n.apiReq||r).trim(),i=n.referer||qn.host;if(!s)return{parse:0,jx:0,url:"",header:joe("",i)};try{let a=await e_r(s,i);return{parse:0,jx:0,url:a.url,playId:a.url,header:joe(a.cookie,qn.host)}}catch(a){return console.error("anime1 play failed:",a.message),{parse:0,jx:0,url:"",header:joe("",i)}}}var tct={meta:{key:qn.key,name:"\u300C\u76F4\u300DAnime1",type:3},api:async t=>{t.post("/init",t_r),t.post("/home",r_r),t.post("/category",n_r),t.post("/detail",i_r),t.post("/play",a_r),t.post("/search",s_r)}};var Jg="https://gimy01.tv",sct="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36",o_r=[{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"}],rct={\u5287:"\u5267",\u96FB:"\u7535",\u8996:"\u89C6",\u7DDA:"\u7EBF",\u570B:"\u56FD",\u7522:"\u4EA7",\u7D9C:"\u7EFC",\u85DD:"\u827A",\u52D5:"\u52A8",\u756B:"\u753B",\u985E:"\u7C7B",\u5225:"\u522B",\u72C0:"\u72B6",\u614B:"\u6001",\u5C0E:"\u5BFC",\u984C:"\u9898",\u6B61:"\u6B22",\u6A02:"\u4E50",\u611B:"\u7231",\u5F8C:"\u540E",\u9580:"\u95E8",\u9F8D:"\u9F99",\u99AC:"\u9A6C",\u98A8:"\u98CE",\u96F2:"\u4E91",\u8207:"\u4E0E",\u842C:"\u4E07",\u7121:"\u65E0",\u7DDA\u4E0A\u770B:"\u7EBF\u4E0A\u770B",\u9023\u7E8C\u5287:"\u8FDE\u7EED\u5267",\u96FB\u8996\u5287:"\u7535\u89C6\u5267",\u96FB\u5F71:"\u7535\u5F71",\u52D5\u6F2B:"\u52A8\u6F2B",\u7D9C\u85DD:"\u7EFC\u827A"};function Xg(t){return String(t||"").replace(/\/+$/,"")}function ict(t){return String(t||"").replace(/<[^>]+>/g," ").replace(/ /gi," ").replace(/&/gi,"&").replace(/"/gi,'"').replace(/'/g,"'").replace(/\s+/g," ").trim()}function Wo(t){let e=ict(t);return Object.keys(rct).forEach(r=>{e=e.replace(new RegExp(r,"g"),rct[r])}),e}function c_r(t){return String(t||"").replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Zg(t){let e=String(t||"").trim().replace(/^["']|["']$/g,"");return e?/^https?:\/\//i.test(e)?e:e.startsWith("//")?"https:"+e:e.startsWith("/")?Xg(Jg)+e:Xg(Jg)+"/"+e.replace(/^\.\//,""):""}function nM(t){return{"User-Agent":sct,"Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Referer:t||Xg(Jg)+"/"}}function u_r(t){let e=String(t||""),r=e.trim();if(!r.startsWith('"')||!r.endsWith('"'))return e;try{let n=JSON.parse(r);if(typeof n=="string"&&/(?:])/i.test(n))return n}catch{}return e}function l_r(t){return new Promise(e=>setTimeout(e,t))}function d_r(t){let e=String(t?.code||"").toUpperCase(),r=String(t?.message||"");return["ECONNRESET","ETIMEDOUT","ECONNABORTED","EAI_AGAIN"].includes(e)||/socket disconnected|TLS connection|timeout/i.test(r)}async function Pw(t,e={}){let r=Number.isInteger(e.retries)?e.retries:2,n;for(let s=0;s<=r;s+=1)try{let i=await he(t,{method:e.method||"get",headers:{...nM(e.referer),...e.headers||{}},data:e.data,timeout:e.timeout||2e4,responseType:"text",transformResponse:[a=>a]});return u_r(i.data)}catch(i){if(n=i,s>=r||!d_r(i))throw i;await l_r(300*(s+1))}throw n}function f_r(t){let e=String(t||""),r=[/var\s+player_data\s*=\s*(\{[\s\S]*?\})\s*<\/script>/i,/var\s+player_aaaa\s*=\s*(\{[\s\S]*?\})\s*;/i,/player_data\s*=\s*(\{[\s\S]*?\})\s*;/i];for(let n of r){let s=e.match(n);if(s)try{return JSON.parse(s[1])}catch{}}return null}function p_r(t){let e=String(t?.url||"").trim(),r=String(t?.encrypt||"").trim();if(!e)return"";if(r==="1")try{return decodeURIComponent(e)}catch{return e}if(r==="2")try{return decodeURIComponent(Buffer.from(e,"base64").toString("utf8"))}catch{try{return Buffer.from(e,"base64").toString("utf8")}catch{return e}}return e}function act(t){let e=String(t||"").trim();if(!e)return null;try{return JSON.parse(e)}catch{let n=e.match(/\{[\s\S]*\}/);if(!n)return null;try{return JSON.parse(n[0])}catch{}}return null}function oct(t){return/^https?:\/\//i.test(t)&&/(?:\.m3u8|\.mp4|\.flv|\.m4v|\.m4s)(?:[?#]|$)/i.test(t)}function cct(t){let e=String(t||"").trim();if(!e)return"";if(oct(e))return e;let r=act(e);if(r&&typeof r=="object"){let s=cct(r.url||r.video||r.playurl);if(s)return s}let n=e.match(/https?:\/\/[^"'<>\s]+(?:\.m3u8|\.mp4|\.flv|\.m4v)(?:[^"'<>\s]*)?/i);return n?n[0]:""}function uct(t,e){let r=String(t||""),n=String(e||"");if(/^JDQM-/i.test(r)||/^JDQM$/i.test(n))return"JDQM";if(/^JDHG-/i.test(r)||/^JDHG$/i.test(n))return"JDHG";if(/^JD-/i.test(r)||/^(?:JD4K|JD2K)$/i.test(n)&&/^JD/i.test(r))return"JD2K";if(/^JK2-/i.test(r)||/^JK2$/i.test(n))return"JK2";if(/^NSYS-/i.test(r)||/^NSYS$/i.test(n))return"NSYS";if(/^NBY-/i.test(r)||/^NBY$/i.test(n))return"NBY";if(/^JinLiDj-/i.test(r)||/^djplayer$/i.test(n))return"djplayer";if(/^(?:znjson|znkan)-/i.test(r)||/^znjson$/i.test(n))return"znjson";let s=r.match(/^(JSYBL|JSYMG|JSYQY|JSYDJ|JSYHS|JSYRR|JSYYK|JSYTX)-/i);return s?s[1].toUpperCase():/^(?:JSYBL|JSYMG|JSYQY|JSYDJ|JSYHS|JSYRR|JSYYK|JSYTX)$/i.test(n)?n.toUpperCase():/(?:iqiyi\.com|bilibili\.com|v\.qq\.com|sohu\.com|pptv\.com|letv\.com|xigua\.com|mgtv\.com)/i.test(r)?"etcjc":/v\.youku\.com/i.test(r)?"kmjc":"normal"}function m_r(t,e){let r=uct(t,e);return/^(?:JD4K|JD2K|JDQM|JDHG)$/i.test(r)?"d":/^(?:JSYBL|JSYMG|JSYQY|JSYDJ|JSYHS|JSYRR|JSYYK|JSYTX)$/i.test(r)?"j":r==="normal"?"o":"v"}function h_r(t,e,r,n){let s="https://player.gimy.bot/"+m_r(t,e)+"/",i=uct(t,e),a=n||r,o=s+"?url="+encodeURIComponent(t);return o+="&jctype="+encodeURIComponent(i),a&&(o+="&next="+encodeURIComponent("//"+a.replace(/^https?:\/\//i,""))),{parseBase:s,referer:o}}function nct(t,e=Xg(Jg)){return{"User-Agent":sct,Referer:t||Xg(Jg)+"/",Origin:e}}function g_r(t){return{vod_id:t.vod_id||"",vod_name:t.vod_name||"",vod_pic:t.vod_pic||"",vod_remarks:t.vod_remarks||""}}function lct(t,e){let r=[],n={};return(e&&e.length?e:t.root()).find("a[href*='/vod/'], a[href*='/detail/']").each((i,a)=>{let o=t(a),c=o.attr("href")||"",u=Zg(c);if(!/(?:\/detail\/|\/vod\/)\d+\.html/i.test(u)||n[u])return;let l=Wo(o.attr("title")||o.find("img").attr("alt")||o.find(".title, .video-text, .module-poster-item-title, h3, h4, h5").first().text()||o.text());if(!l)return;let d=o.closest(".module-item, li, .public-list-box, .video-item, .item, .module-poster-item, .myui-vodlist__box"),f=Zg(o.attr("data-original")||o.attr("data-src")||o.attr("data-bg")||o.find("img").attr("data-original")||o.find("img").attr("data-src")||o.find("img").attr("src")||d.find("a.video-pic").first().attr("data-original")||d.find("a.video-pic").first().attr("data-src")||d.find("img").first().attr("data-original")||d.find("img").first().attr("data-src")||d.find("img").first().attr("src")||""),p=d.html()||o.parent().html()||"",m=String(p).match(/(?:更新至第?\d+集|更新第?\d+集|\(?\d+å…¨\)?|å…¨\d+集|已完結|已完结|HD中字|HD|TC|HC|搶先版|抢先版)/i);n[u]=!0,r.push(g_r({vod_id:u,vod_name:l,vod_pic:f,vod_remarks:m?Wo(m[0]):""}))}),r}function Mo(t,e){let r=new RegExp("]*>\\s*"+c_r(e)+"\\s*[\uFF1A:]\\s*<\\/span>([\\s\\S]*?)<\\/(?:li|div)>","i"),n=String(t||"").match(r);return n?Wo(n[1]):""}function A_r(t){let e=[],r=[],n=new Set,s=(c,u)=>(Wo(c)||u||"\u6B63\u7247").replace(/[$#]/g," ").trim(),i=c=>{let u=[],l=new Set;return c.find("a[href*='/play/'], a[href*='/eps/']").each((d,f)=>{let p=t(f),m=p.attr("href")||"",h=Zg(m);if(!h||l.has(h))return;l.add(h);let A=s(p.attr("title")||p.text(),"\u7B2C"+(u.length+1)+"\u96C6");u.push(A+"$"+h)}),u},a=(c,u,l)=>{if(!u.length)return;let d=Wo(c)||"\u9ED8\u8BA4\u7EBF\u8DEF",f=String(l||d||r.length);n.has(f)||(n.add(f),r.push({from:d,urls:u.join("#")}))},o=new Map;return t(".source[data-route-switch], [data-line-name][data-route-switch]").each((c,u)=>{let l=t(u),d=String(l.attr("data-route-switch")||"").trim(),f=l.clone();f.children().remove();let p=Wo(l.attr("data-line-name")||f.text()||l.text());d&&p&&o.set(d,p)}),t(".episodes-route[data-route-sid], .eps[data-route-sid]").each((c,u)=>{let l=t(u),d=String(l.attr("data-route-sid")||"").trim();a(o.get(d)||"\u7EBF\u8DEF"+(d||r.length+1),i(l),"route:"+(d||r.length+1))}),t("#playTab a[href^='#con_playlist_']").each((c,u)=>{let l=t(u),d=String(l.attr("href")||"").replace(/^#/,""),f=Wo(l.text())||d;d&&e.push({tabId:d,name:f})}),t("ul[id^='con_playlist_']").each((c,u)=>{let l=t(u),d=l.attr("id")||"",f=Wo(l.prevAll("li").first().text())||d;d&&!e.some(p=>p.tabId===d)&&e.push({tabId:d,name:f})}),e.forEach(c=>{a(c.name,i(t("#"+c.tabId)),"tab:"+c.tabId)}),r.length||a("Gimy",i(t.root()),"fallback:gimy"),{playFrom:r.map(c=>c.from).join("$$$"),playUrl:r.map(c=>c.urls).join("$$$")}}async function y_r(t,e){return{}}async function x_r(t,e){return{class:o_r}}async function b_r(t,e){let r=String(t.body?.id||"2"),n=Number.parseInt(t.body?.page||1,10);(!n||n<1)&&(n=1);let s=await Pw(Xg(Jg)+"/type/"+r+(n>1?"-"+n:"")+".html"),i=Me(s),a=lct(i);return{page:n,pagecount:a.length>0?n+1:n,list:a}}async function E_r(t,e){let r=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],n=[];for(let s of r){let i=String(s||"").trim();if(!i)continue;let a=/^https?:\/\//i.test(i)?i:Zg(i),o=await Pw(a),c=Me(o),u=A_r(c),l=c("h1.text-overflow, h1").first().text()||c("title").text(),d=Mo(o,"\u985E\u5225")||Mo(o,"\u7C7B\u522B"),f=d.match(/\b(?:19|20)\d{2}\b/)?.[0]||"";n.push({vod_id:a,vod_name:Wo(l.replace(/(?:線上看|线上看)[\s\S]*$/i,"")),vod_pic:Zg(c("meta[property='og:image']").attr("content")||(c(".details-pic .video-pic").attr("style")||"").match(/url\(([^)]+)\)/)?.[1]||c("img").first().attr("src")||""),vod_content:Wo(c(".switch-box .text, .details-content .text, .details-content, .detail-sketch").first().text()||c("meta[name='description']").attr("content")||""),vod_remarks:Mo(o,"\u72C0\u614B")||Mo(o,"\u72B6\u6001"),type_name:Wo(d.replace(/\s*[·.]\s*(?:19|20)\d{2}\b.*$/,"")),vod_year:Mo(o,"\u5E74\u4EE3")||Mo(o,"\u5E74\u4EFD")||f,vod_area:Mo(o,"\u570B\u5BB6/\u5730\u5340")||Mo(o,"\u56FD\u5BB6/\u5730\u533A")||Mo(o,"\u5730\u5340")||Mo(o,"\u5730\u533A"),vod_actor:Mo(o,"\u4E3B\u6F14")||Wo(c("li:contains('\u4E3B\u6F14') a, .detail__meta div:contains('\u4E3B\u6F14') a").map((p,m)=>c(m).text()).get().join(" / ")),vod_director:Mo(o,"\u5C0E\u6F14")||Mo(o,"\u5BFC\u6F14")||Wo(c("li:contains('\u5C0E\u6F14') a, li:contains('\u5BFC\u6F14') a, .detail__meta div:contains('\u5C0E\u6F14') a, .detail__meta div:contains('\u5BFC\u6F14') a").map((p,m)=>c(m).text()).get().join(" / ")),vod_play_from:u.playFrom,vod_play_url:u.playUrl})}return{list:n}}async function __r(t,e){let r=String(t.body?.id||"").trim();if(!r)return{parse:1,url:""};let n=/^https?:\/\//i.test(r)?r:Zg(r);try{let s=await Pw(n,{referer:n}),i=f_r(s),a=p_r(i),o=String(i?.from||t.body?.flag||"").trim();if(!a)return{parse:1,url:n,header:nM(n)};if(oct(a))return{parse:0,url:a,header:nct(n)};let c=i?.link_next?Zg(i.link_next):"",u=h_r(a,o,n,c),l=await Pw(u.parseBase+"parse.php?url="+encodeURIComponent(a)+"&_t="+Date.now(),{referer:u.referer,headers:{Accept:"application/json, text/plain, */*"}}),d=act(l),f=cct(d?.url||d?.video||d?.playurl);return f?{parse:0,url:f,header:nct(u.referer,"https://player.gimy.bot")}:{parse:1,url:a,header:nM(n)}}catch(s){return console.error("gimy play failed:",s.message),{parse:1,url:n,header:nM(n)}}}async function S_r(t,e){let r=ict(t.body?.wd),n=Number.parseInt(t.body?.page||1,10);if((!n||n<1)&&(n=1),!r)return{page:n,pagecount:n,list:[]};let s=Xg(Jg)+"/search/-------------.html?wd="+encodeURIComponent(r)+"&page="+n,i=await Pw(s),a=Me(i),o=lct(a,a(".box-main-content").first());return{page:n,pagecount:o.length>0?n+1:n,list:o}}var dct={meta:{key:"gimy",name:"\u300C\u76F4\u300D\u5267\u8FF7",type:3},api:async t=>{t.post("/init",y_r),t.post("/home",x_r),t.post("/category",b_r),t.post("/detail",E_r),t.post("/play",__r),t.post("/search",S_r)}};var Voe="https://hanxiaoquan.hanju.workers.dev",v_r="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36",C_r=[{type_id:"0",type_name:"\u97E9\u5267"},{type_id:"1",type_name:"\u97E9\u5F71"},{type_id:"2",type_name:"\u65E5\u97E9\u7EFC"},{type_id:"3",type_name:"\u65E5\u97E9\u6F2B"},{type_id:"100",type_name:"\u70ED\u95E8"}];function zoe(t){return String(t||"").replace(/\/+$/,"")}function Vl(t){return String(t||"").replace(/\s+/g," ").trim()}function I_r(t){let e=String(t||"").trim();return e?e.startsWith("//")?"https:"+e:/^https?:\/\//i.test(e)?e:zoe(Voe)+(e.startsWith("/")?e:"/"+e):""}function fct(){let t=zoe(Voe);return{"User-Agent":v_r,Accept:"application/json, text/plain, */*","Content-Type":"application/json",Origin:t,Referer:t+"/"}}async function Koe(t,e,r=3e4){let n=await he(zoe(Voe)+t,{method:"post",headers:fct(),data:e||{},timeout:r,responseType:"json"});return typeof n.data=="string"?JSON.parse(n.data):n.data||{}}function Yoe(t){return{vod_id:String(t?.vod_id||""),vod_name:Vl(t?.vod_name),vod_pic:I_r(t?.vod_pic),vod_remarks:Vl(t?.vod_remarks||t?.vod_class),vod_year:Vl(t?.vod_year),vod_director:Vl(t?.vod_director),vod_actor:Vl(t?.vod_actor),vod_content:Vl(t?.vod_content)}}function mE(t){return String(t||"").toLowerCase().replace(/\s+/g,"").replace(/[·•・\-—_::,,.。'"“”‘’!?!?()()\[\]【】]/g,"")}function T_r(t,e){let r=mE(e),n=mE(t?.vod_name),s=mE(t?.vod_remarks),i=mE(t?.vod_actor),a=mE(t?.vod_director),o=mE(t?.vod_content);return r?n===r?1e4:n.startsWith(r)?8e3-n.length:n.includes(r)?6e3-n.indexOf(r):s.includes(r)?2500-s.indexOf(r):i.includes(r)?1800-i.indexOf(r):a.includes(r)?1500-a.indexOf(r):o.includes(r)?500-o.indexOf(r):0:0}function w_r(t,e,r){let n=[],s=Array.isArray(t)?t:[];for(let i of s){let a=Yoe(i);if(!a.vod_id||!a.vod_name||r[a.vod_id])continue;let o=T_r(a,e);o<=0||(r[a.vod_id]=!0,a._searchScore=o,n.push(a))}return n}function R_r(t){let e=Yoe(t);e.type_name=Vl(t?.vod_class),e.vod_area=Vl(t?.vod_area)||"\u97E9\u56FD";let n=(Array.isArray(t?.vod_play_url)?t.vod_play_url:[]).map((s,i)=>{let a=Vl(s?.t||s?.name)||"\u7B2C"+(i+1)+"\u96C6",o=String(s?.u||s?.url||"").trim();return o?a+"$"+o:""}).filter(Boolean).join("#");return e.vod_play_from=n?"\u9ED8\u8BA4\u7EBF\u8DEF":"",e.vod_play_url=n,e}function N_r(t,e,r){let n=Number(t?.pagecount||t?.pageCount||t?.totalPage||0);return Number.isFinite(n)&&n>0?n:r.length>0?e+1:e}async function O_r(t,e){return{}}async function P_r(t,e){return{class:C_r}}async function D_r(t,e){let r=String(t.body?.id||"0"),n=Number.parseInt(t.body?.page||1,10);(!n||n<1)&&(n=1);let s=await Koe("/api/list",{c_id:r,page:String(n)}),i=(Array.isArray(s?.data)?s.data:[]).map(Yoe).filter(a=>a.vod_id&&a.vod_name);return{page:n,pagecount:N_r(s,n,i),total:s?.total||i.length,list:i}}async function k_r(t,e){let r=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],n=[];for(let s of r){let i=String(s||"").trim();if(!i)continue;let a=await Koe("/api/detail",{b_id:i});a?.data&&n.push(R_r(a.data))}return{list:n}}async function L_r(t,e){let r=String(t.body?.id||"").trim();return r?{parse:0,url:r,header:fct()}:{parse:1,url:""}}async function B_r(t,e){let r=Vl(t.body?.wd),n=Number.parseInt(t.body?.page||1,10);if((!n||n<1)&&(n=1),!r)return{page:n,pagecount:n,list:[]};let s={},i=[],a=n===1?5:n;for(let o=n;o<=a;o++){let c=await Koe("/api/search",{keyword:r,page:String(o)},6e4),u=w_r(c?.data,r,s);if(i.push(...u),!Array.isArray(c?.data)||c.data.length<20||n>1)break}return i.sort((o,c)=>{let u=Number(c._searchScore||0)-Number(o._searchScore||0);return u!==0?u:o.vod_name.localeCompare(c.vod_name,"zh-CN")}),i.forEach(o=>{delete o._searchScore}),{page:n,pagecount:i.length>0?n+1:n,list:i}}var pct={meta:{key:"hanxiaoquan",name:"\u300C\u76F4\u300D\u97E9\u5C0F\u5708",type:3},api:async t=>{t.post("/init",O_r),t.post("/home",P_r),t.post("/category",D_r),t.post("/detail",k_r),t.post("/play",L_r),t.post("/search",B_r)}};var Xoe=Re(require("node:vm"),1),lo=Re(Jn(),1);var xa={key:"wbbb",name:"\u6B6A\u6BD4\u5DF4\u535C",host:"https://wbbb1.com",ua:"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/136.0.0.0 Safari/537.36",timeout:2e4},mct=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"3",type_name:"\u52A8\u6F2B"},{type_id:"4",type_name:"\u7EFC\u827A"}],M_r=/^(?:lzm3u8|bfzym3u8)$/i;function hct(t){return String(t||"").replace(/\/+$/,"")}function Bs(t,e,r=1,n=""){let s=String(t||"").match(e);return s&&s[r]||n}function Ts(t=""){return String(t).replace(//gi," ").replace(//gi," ").replace(/<[^>]+>/g," ").replace(/ /gi," ").replace(/&/gi,"&").replace(/"/gi,'"').replace(/'/g,"'").replace(/\s+/g," ").trim()}function Joe(t=""){return Ts(t).replace(/\s*\/\s*/g,"/").replace(/^\/+|\/+$/g,"").trim()}function gct(t=""){return String(t).replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function fo(t=""){let e=String(t||"").trim();return e?/^https?:\/\//i.test(e)?e:e.startsWith("//")?`https:${e}`:e.startsWith("/")?hct(xa.host)+e:hct(xa.host)+"/"+e.replace(/^\.\//,""):""}function W_r(t=""){let e=String(t||"").trim();if(!e)return"";if(e.startsWith("//"))return e;if(/^https?:\/\//i.test(e))try{let r=new URL(e);return`//${r.host}${r.pathname}${r.search}${r.hash}`}catch{}if(e.startsWith("/"))try{return`//${new URL(xa.host).host}${e}`}catch{}return e}function $_r(t){return(Array.isArray(t)?t:[]).map(e=>String(e||"").split(";")[0].trim()).filter(Boolean).join("; ")}function bct(t=`${xa.host}/`){return{"User-Agent":xa.ua,Referer:t,"Accept-Language":"zh-CN,zh;q=0.9"}}async function gE(t,e={}){let r=/^https?:\/\//i.test(t)?t:fo(t),n=await he({url:r,method:e.method||"get",data:e.data,timeout:e.timeout||xa.timeout,responseType:"text",transformResponse:[s=>s],validateStatus:()=>!0,headers:{...bct(e.referer),...e.headers||{}}});if(n.status<200||n.status>=300)throw new Error(`HTTP ${n.status}`);return String(n.data||"")}async function F_r(t,e={}){let r=await he({url:t,method:e.method||"get",data:e.data,timeout:e.timeout||xa.timeout,validateStatus:()=>!0,headers:e.headers||{}});if(r.status<200||r.status>=300)throw new Error(`HTTP ${r.status}`);return typeof r.data=="string"?JSON.parse(r.data):r.data}function Zoe(t=""){let e=Ts(String(t||"")).replace(/\s+/g,"").trim();return!e||/^(?:排序|选择播放源|切换播放源|更多|展开|æ”¶èµ·)$/i.test(e)}function U_r(t=""){let e=String(t||"").trim();if(!e)return"";let r=e.match(/\/detail\/(\d+)\.html/i)||e.match(/^(\d+)$/);return r?r[1]:e}function q_r(t=""){if(t&&typeof t=="object"&&!Array.isArray(t)){let i=fo(t.playUrl||t.playId||t.url||t.id||""),a=Ts(t.name||"").trim();return!i||!a?null:{name:a,id:i,playId:i,playUrl:i,url:i}}let e=String(t||"").trim();if(!e)return null;let r=e.indexOf("$");if(r<0)return null;let n=e.slice(0,r).trim(),s=fo(e.slice(r+1).trim());return!n||!s?null:{name:n,id:s,playId:s,playUrl:s,url:s}}function Act(t,e,r=0){if(Zoe(t))return null;let n=Ts(String(t||"")).replace(/\s+/g," ").trim()||`\u7EBF\u8DEF${r+1}`,s=new Set,i=[];for(let a of Array.isArray(e)?e:[]){let o=q_r(a);!o||s.has(o.playId)||(s.add(o.playId),i.push(o))}return i.length?{name:n,url:i.map(a=>`${a.name}$${a.playUrl}`).join("#"),episodes:i}:null}function j_r(t){let e=Bs(t,/href=["']\/detail\/(\d+)\.html["']/i,1,""),r=Ts(Bs(t,/
([\s\S]*?)<\/div>/i,1,""))||Bs(t,/alt=["']([^"']+)["']/i,1,""),n=fo(Bs(t,/(?:data-original|data-src|src)=["']([^"']+)["']/i,1,"")),s=Ts(Bs(t,/
([\s\S]*?)<\/div>/i,1,""));return{vod_id:e,vod_name:r,vod_pic:n,vod_remarks:s}}function tce(t){let e=String(t||""),r=[],n=/([\s\S]*?)<\/a>/gi,s;for(;(s=n.exec(e))!==null;){let a=s[0];r.push({vod_id:s[1],vod_name:Ts(s[2]),vod_pic:fo(Bs(a,/(?:data-original|data-src|src)=["']([^"']+)["']/i,1,"")),vod_remarks:Ts(Bs(a,/
([\s\S]*?)<\/div>/i,1,""))})}if(r.length)return r;let i=/
([\s\S]*?)<\/div>\s*<\/div>/gi;for(;(s=i.exec(e))!==null;){let a=j_r(s[1]);a.vod_id&&a.vod_name&&r.push(a)}return r}function H_r(t){let e=[],r=/]*class=["'][^"'>]*\bmodule-tab-item\b[^"'>]*["'][^>]*>([\s\S]*?)<\/div>/gi,n;for(;(n=r.exec(t))!==null;){let s=n[0],i=Bs(s,/data-dropdown-value\s*=\s*['"]([^'"]+)['"]/i,1,"").trim();if(i){Zoe(i)||e.push(i);continue}let a=Ts(n[1]||"").trim();a&&!Zoe(a)&&e.push(a)}return e}function Q_r(t){let e=[],r=/
([\s\S]*?)<\/div>/gi,n;for(;(n=r.exec(t))!==null;){let i=n[1],a=[],o=/]+class=["']module-play-list-link[^"']*["'][^>]+href=["']([^"']+)["'][^>]*>([\s\S]*?)<\/a>/gi,c;for(;(c=o.exec(i))!==null;){let u=fo(c[1]),l=Ts(c[2]).trim();!u||!l||a.push(`${l}$${u}`)}a.length&&e.push(a)}if(e.length)return e;let s=[...t.matchAll(/]+href=["']([^"']*\/(?:vplay|play)\/[^"'#]+)["'][^>]*>([\s\S]*?)<\/a>/gi)];return s.length?[s.map(i=>`${Ts(i[2]).trim()||"\u64AD\u653E"}$${fo(i[1])}`)]:e}function G_r(t="",e=""){let r=Ts(Bs(t,/]+module-play-list-link[^"']*active[^"']*[^>]*>([\s\S]*?)<\/a>/i,1,"")),n=Ts(Bs(t,/(?:正在播放|当前播放)[^::]*[::]\s*([\s\S]*?)(?:<|$)/i,1,"")),s=r||n;return e&&s&&(s=s.replace(new RegExp(`^${gct(e)}\\s*`),"").trim(),s=s.replace(new RegExp(`^\u300A?${gct(e)}\u300B?\\s*`),"").trim()),s.trim()}function V_r(t="",e={}){let r=String(e?.vod_data?.vod_name||"").trim(),n=G_r(t,r);return`\u5728\u7EBF\u64AD\u653E${r}${n?` ${n}`:""}`.trim()||r||"\u5728\u7EBF\u64AD\u653E"}function z_r(t){let e=[/var\s+player_aaaa\s*=\s*(\{.*?\})<\/script>/s,/var\s+player_.*?=\s*(\{.*?\})<\/script>/s,/player_aaaa\s*=\s*(\{.*?\})\s*;/s,/player_data\s*=\s*(\{.*?\})\s*;/s];for(let r of e){let n=String(t||"").match(r);if(n)try{return JSON.parse(n[1])}catch{}}return null}function K_r(t,e){let r=String(t||"").trim(),n=String(e||"").trim();if(n==="1")try{r=unescape(r)}catch{}else if(n==="2"){try{r=Buffer.from(r,"base64").toString("utf8")}catch{}try{r=unescape(r)}catch{}}return fo(r)}function ece(t,e){let r=String(t||"").trim(),n=String(e||"").trim();if(!r)return!1;if(/\.(?:m3u8|mp4|m4v|m4a|mp3|flv|avi|mkv|mov|webm)(?:[?#]|$)/i.test(r)||/^(?:m3u8|mp4|m4v|m4a|mp3|flv|avi|mkv|mov|webm)$/i.test(n)&&/^https?:\/\//i.test(r)||M_r.test(n))return!0;try{let s=new URL(r);return/\.(?:m3u8|mp4|m4v|m4a|mp3|flv|avi|mkv|mov|webm)(?:$|\?)/i.test(s.pathname+s.search)}catch{return!1}}function yct(t=""){let e=String(t||"").trim();if(/^[A-Za-z0-9+/]+={0,2}$/.test(e)&&e.length%4===0)try{return lo.default.enc.Base64.parse(e)}catch{}return lo.default.enc.Utf8.parse(e)}function Y_r(t){let e=()=>{},r=function(){return{on:e,hide:e,show:e,html:e,text:e,click:e,append:e,remove:e,css:e,attr:e,addClass:e,removeClass:e,find:()=>({}),val:()=>"",ready:e,length:0}};r.post=e,r.ajax=e,r.get=e,r.fn={};let n=new URL(t),s={console,CryptoJS:lo.default,URL,URLSearchParams,Buffer,atob:i=>Buffer.from(i,"base64").toString("binary"),btoa:i=>Buffer.from(i,"binary").toString("base64"),setTimeout:e,setInterval:()=>0,clearTimeout:e,clearInterval:e,fetch:async()=>({ok:!0,status:200,headers:new Map,text:async()=>"",json:async()=>({})}),localStorage:{getItem:()=>null,setItem:e,removeItem:e},sessionStorage:{getItem:()=>null,setItem:e,removeItem:e},navigator:{userAgent:xa.ua,clipboard:{writeText:async()=>{}}},document:{title:"wbbb-parser",body:{},addEventListener:e,querySelector:()=>null,createElement:()=>({style:{},click:e}),getElementById:()=>({style:{},addEventListener:e,play:async()=>{},pause:e})},location:{origin:n.origin,pathname:n.pathname,search:n.search,href:n.toString(),host:n.host},window:null,top:null,parent:null,self:null,$:r,jQuery:r,Artplayer(){return{on:e,once:e,emit:e,destroy:e,template:{},plugins:{},setting:{show:e},controls:{add:e},layers:{add:e},events:{proxy:e},notice:{show:e},storage:{get:()=>null,set:e}}},animation:{}};return s.window=s,s.top=s,s.parent=s,s.self=s,s}async function J_r(t,e){let r=Bs(e,/]+src=["']([^"']*setting\.js[^"']*)["']/i,1,"");if(!r)throw new Error("setting.js missing");let n=new URL(r,t).toString(),i=`${await gE(n,{referer:t})} -;globalThis.__wbbbResolveRuntime={ urlValueurl, keyValue, vkeyValue, ckeyValue, nextParam, titleParam };`,a=Y_r(t);Xoe.default.createContext(a),Xoe.default.runInContext(i,a,{timeout:5e3});let o={...a.__wbbbResolveRuntime||{},decrypt:typeof a.decrypt=="function"?a.decrypt.bind(a):null,deplay:typeof a.deplay=="function"?a.deplay.bind(a):null};if(!o.urlValueurl||!o.keyValue||!o.vkeyValue||!o.ckeyValue)throw new Error("setting runtime params missing");return o}async function X_r(t,e,r){let n=W_r(e),s=String(r||"").trim(),i=`https://xn--qvr2v.850088.xyz/player/?url=${encodeURIComponent(t)}${n?`&next=${encodeURIComponent(n)}`:""}${s?`&title=${encodeURIComponent(s)}`:""}`,a=await he.get(i,{timeout:xa.timeout,responseType:"text",transformResponse:[A=>A],validateStatus:()=>!0,headers:bct(`${xa.host}/`)});if(a.status<200||a.status>=300)throw new Error(`HTTP ${a.status}`);let o=String(a.data||""),c=$_r(a.headers?.["set-cookie"]),u=await J_r(i,o),l=u.urlValueurl||`${String(t||"").trim()}${n?`&next=${n}`:""}`,d="https://xn--qvr2v.850088.xyz/player/api.php",f=new URLSearchParams({url:l,key:u.keyValue,vkey:u.vkeyValue,ckey:u.ckeyValue}).toString(),p=await F_r(d,{method:"post",data:f,headers:{"User-Agent":xa.ua,"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8","X-Requested-With":"XMLHttpRequest",Referer:i,Origin:"https://xn--qvr2v.850088.xyz",...c?{Cookie:c}:{}}});if(!p||Number(p.code)!==200||!p.url)throw new Error(p?.msg||"parse api failed");let m=String(p.url||"").trim(),h="";if(m&&u&&typeof u.decrypt=="function")try{h=(u.decrypt(m)||"").trim();try{h=decodeURIComponent(h)}catch{}}catch{}if(!h&&m&&u&&typeof u.deplay=="function")try{let A=String(u.deplay(p.aes_key||"")||"").trim(),g=String(u.deplay(p.aes_iv||"")||"").trim();if(A&&g){h=(lo.default.AES.decrypt(m,lo.default.enc.Utf8.parse(A),{iv:lo.default.enc.Utf8.parse(g),mode:lo.default.mode.CBC,padding:lo.default.pad.Pkcs7}).toString(lo.default.enc.Utf8)||"").trim();try{h=decodeURIComponent(h)}catch{}}}catch{}if(!h){let A=yct(p.aes_key||""),g=yct(p.aes_iv||"");if(m&&A&&g)try{h=(lo.default.AES.decrypt(m,A,{iv:g,mode:lo.default.mode.CBC,padding:lo.default.pad.Pkcs7}).toString(lo.default.enc.Utf8)||"").trim();try{h=decodeURIComponent(h)}catch{}}catch{}}if(!h&&/^https?:\/\//i.test(m)&&(h=m),!h)try{h=decodeURIComponent(m)}catch{h=m}return h=fo(h),ece(h,p.type||"")||(h=i),{url:h,type:p.type||"",parsePageUrl:i}}function hE(t={}){return{"User-Agent":xa.ua,Referer:`${xa.host}/`,Origin:xa.host,...t}}function xct(t,e={}){return{parse:1,jx:1,url:t,playId:t,urls:[{name:"\u55C5\u63A2\u7EBF\u8DEF",url:t,playId:t}],header:hE(e)}}async function Z_r(t,e){return{}}async function eSr(t,e){try{let r=await gE("/");return{class:mct,filters:{},list:tce(r).slice(0,40)}}catch(r){return console.error("wbbb home failed:",r.message),{class:mct,filters:{},list:[]}}}async function tSr(t,e){let r=String(t.body?.id||"1"),n=Number.parseInt(t.body?.page||1,10);(!n||n<1)&&(n=1);try{let s=n>1?`/show/${r}--------${n}---.html`:`/show/${r}-----------.html`,i=await gE(s),a=tce(i),o=i.includes('title="\u4E0B\u4E00\u9875"')||i.includes("title='\u4E0B\u4E00\u9875'");return{page:n,pagecount:o?n+1:n,limit:20,total:(n-1)*20+a.length+(o?1:0),list:a}}catch(s){return console.error("wbbb category failed:",s.message),{page:n,pagecount:n,limit:20,total:0,list:[]}}}async function rSr(t,e){let r=t.body?.id,n=(Array.isArray(r)?r:String(r||"").split(",")).map(i=>String(i||"").trim()).filter(Boolean),s=[];for(let i of n)try{let a=U_r(i),o=/^https?:\/\//i.test(a)?a:`/detail/${a}.html`,c=await gE(o),u=[...c.matchAll(/
([\s\S]*?)<\/div>/gi)].map(h=>h[1]),l=H_r(c),d=Q_r(c),f=[];if(d.forEach((h,A)=>{let g=Act(l[A]||`\u7EBF\u8DEF${A+1}`,h,A);g&&f.push(g)}),f.length===0){let h=new Set,A=[...c.matchAll(/]+href=["']([^"']*\/(?:vplay|play)\/[^"']+\.html)["'][^>]*>([\s\S]*?)<\/a>/gi)].map((b,y)=>{let x=fo(b[1]),v=Ts(b[2]).trim()||`\u7B2C${y+1}\u96C6`;return!x||h.has(x)?"":(h.add(x),`${v}$${x}`)}).filter(Boolean),g=Act(l[0]||"\u64AD\u653E\u7EBF\u8DEF",A,0);g&&(f=[g])}let p=f.map(h=>h.name),m=f.map(h=>h.url);s.push({vod_id:a,vod_name:Ts(Bs(c,/]*>([\s\S]*?)<\/h1>/i,1,"")),vod_pic:fo(Bs(c,/
[\s\S]*?]+data-original=["']([^"']+)["']/i,1,""))||fo(Bs(c,/
[\s\S]*?]+(?:data-src|src)=["']([^"']+)["']/i,1,"")),type_name:Joe(u[2]||""),vod_year:Ts(u[0]||""),vod_area:Ts(u[1]||""),vod_remarks:Ts(Bs(c,/
([\s\S]*?)<\/div>/i,1,""))||Ts(Bs(c,/\u66f4\u65b0\u81f3[^<\s]+/,0,"")),vod_actor:Joe(Bs(c,/\u4e3b\u6f14:[\s\S]*?]*class=["']module-info-item-content["']>([\s\S]*?)<\/div>/i,1,"")),vod_director:Joe(Bs(c,/\u5bfc\u6f14:[\s\S]*?]*class=["']module-info-item-content["']>([\s\S]*?)<\/div>/i,1,"")),vod_content:Ts(Bs(c,/
]*>([\s\S]*?)<\/div>/i,1,"")),vod_play_from:p.join("$$$"),vod_play_url:m.join("$$$")})}catch(a){console.error("wbbb detail failed:",i,a.message)}return{list:s}}async function nSr(t,e){let r=String(t.body?.wd||"").trim(),n=Number.parseInt(t.body?.page||1,10);if((!n||n<1)&&(n=1),!r)return{page:n,pagecount:n,total:0,list:[]};try{let s=`/search/-------------.html?wd=${encodeURIComponent(r)}${n>1?`&page=${n}`:""}`,i=await gE(s),a=tce(i);return{page:n,pagecount:a.length>=20?n+1:n,total:a.length,list:a}}catch(s){return console.error("wbbb search failed:",s.message),{page:n,pagecount:n,total:0,list:[]}}}async function sSr(t,e){let r=String(t.body?.id||"").trim();if(!r)return{parse:1,jx:1,url:"",playId:""};let n=/^https?:\/\//i.test(r)?r:fo(r);try{let s=await gE(n,{referer:n}),i=z_r(s);if(!i)return{parse:0,jx:0,url:n,playId:n,header:hE()};let a=String(i.from||t.body?.flag||"").trim(),o=K_r(i.url,i.encrypt);if(ece(o,a))return{parse:0,jx:0,url:o,playId:o,header:hE({Referer:n})};let c=String(i.parse||i.jx||"").trim();if(c){let u=/^https?:\/\//i.test(c)?`${c}${encodeURIComponent(o)}`:fo(`${c}${encodeURIComponent(o)}`);return{parse:0,jx:0,url:u,playId:u,header:hE({Referer:n})}}try{let u=await X_r(String(i.url||""),n,V_r(s,i));if(u?.url){let l=hE({Referer:u.parsePageUrl||n});return ece(u.url,u.type||"")?{parse:0,jx:0,url:u.url,playId:u.url,header:l}:xct(u.url,l)}}catch(u){console.warn("wbbb resolve failed:",u.message)}return xct(o||n,{Referer:n})}catch(s){return console.error("wbbb play failed:",s.message),{parse:1,jx:1,url:n,playId:n,header:hE({Referer:n})}}}var Ect={meta:{key:xa.key,name:"\u300C\u76F4\u300D\u6B6A\u6BD4",type:3},api:async t=>{t.post("/init",Z_r),t.post("/home",eSr),t.post("/category",tSr),t.post("/detail",rSr),t.post("/play",sSr),t.post("/search",nSr)}};var kw={key:"girigiri",name:"girigiri\u7231\u52A8\u6F2B",host:"https://ani.girigirilove.com",ua:"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/134.0.0.0 Safari/537.36",timeout:15e3},ba=kw.host,rce=kw.ua,Dw=48;function Ru(t){return String(t||"").replace(//gi," ").replace(//gi," ").replace(/<[^>]+>/g," ").replace(/ /gi," ").replace(/&/gi,"&").replace(/"/gi,'"').replace(/'/g,"'").replace(/\s+/g," ").trim()}function zl(t){let e=String(t||"").trim();return e?/^https?:\/\//i.test(e)?e:e.startsWith("/")?ba+e:ba+"/"+e:""}function _ct(t){try{return Buffer.from(JSON.stringify(t||{}),"utf8").toString("base64")}catch{return""}}function iSr(t){try{return JSON.parse(Buffer.from(t||"","base64").toString("utf8"))}catch{return{}}}function aSr(t){let e=new Set,r=[];for(let n of t||[]){let s=n?.vod_id;!s||e.has(s)||(e.add(s),r.push(n))}return r}function oSr(t){try{let e=Buffer.from(t||"","base64").toString("utf8");return decodeURIComponent(e)}catch{return t||""}}async function iM(t,e={}){let r=/^https?:\/\//i.test(t)?t:zl(t),n=await he({url:r,method:e.method||"get",data:e.data,timeout:e.timeout||kw.timeout,responseType:"text",transformResponse:[s=>s],validateStatus:()=>!0,headers:{"User-Agent":rce,Referer:e.referer||ba+"/","Accept-Language":"zh-CN,zh;q=0.9",...e.headers||{}}});if(n.status<200||n.status>=300)throw new Error(`HTTP ${n.status}`);return String(n.data||"")}async function cSr(t,e={}){let r=/^https?:\/\//i.test(t)?t:zl(t),n=await he.get(r,{timeout:e.timeout||kw.timeout,validateStatus:()=>!0,headers:{"User-Agent":rce,Referer:e.referer||ba+"/","Accept-Language":"zh-CN,zh;q=0.9",...e.headers||{}}});if(n.status<200||n.status>=300)throw new Error(`HTTP ${n.status}`);return n.data}function Ict(t){let e=[],r=t.match(/
[\s\S]*?<\/div>\s*<\/div>\s*<\/div>/g)||[];for(let n of r){let s=(n.match(/class="public-list-exp"[^>]*href="([^"]+)"/)||[])[1]||"",i=(n.match(/class="public-list-exp"[^>]*title="([^"]+)"/)||[])[1]||(n.match(/class="time-title[^"]*"[^>]*title="([^"]+)"/)||[])[1]||"",a=(n.match(/data-src="([^"]+)"/)||[])[1]||(n.match(/src="([^"]+)"/)||[])[1]||"",o=(n.match(/[\s\S]*?data-background="([^"]+)"[\s\S]*?([^<]+)<\/span>[\s\S]*?

([^<]+)<\/h3>[\s\S]*?
([\s\S]*?)<\/div>/g,n;for(;(n=r.exec(t))!==null;)e.push({vod_id:n[1],vod_name:Ru(n[4]),vod_pic:zl(n[2]),vod_remarks:Ru(n[3]),vod_content:Ru(n[5])});return e}function sM(t,e){let r=e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),n=t.match(new RegExp(`

${r}

[\\s\\S]*?
([\\s\\S]*?)

`));return n?Ict(n[1]):[]}var Sct=[{type_id:"2",type_name:"\u65E5\u756A"},{type_id:"3",type_name:"\u7F8E\u756A"},{type_id:"21",type_name:"\u5287\u5834\u7248"},{type_id:"20",type_name:"\u771F\u4EBA\u756A\u5287"},{type_id:"24",type_name:"BD\u526F\u97F3\u8ECC"},{type_id:"26",type_name:"\u6F14\u5531\u6703&\u5468\u908A\u6D3B\u52D5&\u5176\u4ED6"}],po={n:"\u5168\u90E8",v:""},AE={key:"by",name:"",init:"time",value:[{n:"\u6309\u6700\u65B0",v:"time"},{n:"\u6309\u6700\u70ED",v:"hits"},{n:"\u6309\u8BC4\u5206",v:"score"}]},yE={key:"month",name:"",init:"",value:[po,{n:"\u4E00\u6708",v:"\u4E00\u6708"},{n:"\u56DB\u6708",v:"\u56DB\u6708"},{n:"\u4E03\u6708",v:"\u4E03\u6708"},{n:"\u5341\u6708",v:"\u5341\u6708"}]},xE={key:"year",name:"",init:"",value:(()=>{let t=[po];for(let e=2026;e>=2001;e--)t.push({n:String(e),v:String(e)});return t.push({n:"2000\u81F390\u5E74\u4EE3",v:"2000\u81F390\u5E74\u4EE3"}),t})()},vct={2:[{key:"class",name:"",init:"",value:[po,...["\u559C\u5267","\u7231\u60C5","\u6050\u6016","\u52A8\u4F5C","\u79D1\u5E7B","\u5267\u60C5","\u6218\u4E89","\u5947\u5E7B","\u5192\u9669","\u60AC\u7591","\u6821\u56ED","\u540E\u5BAB","\u70ED\u8840","\u8FD0\u52A8","\u804C\u573A","\u767E\u5408","\u4E59\u5973","\u673A\u7532","\u65E5\u5E38","\u9B54\u6CD5\u5C11\u5973","\u5F02\u4E16\u754C","\u7231\u6296\u9732","\u97F3\u4E50","\u840C"].map(t=>({n:t,v:t}))]},yE,xE,{key:"lang",name:"",init:"",value:[po,{n:"\u65E5\u8BED",v:"\u65E5\u8BED"},{n:"\u56FD\u8BED",v:"\u56FD\u8BED"}]},{key:"version",name:"",init:"",value:[po,{n:"TV\u756A",v:"TV\u756A"},{n:"\u6CE1\u9762\u756A",v:"\u6CE1\u9762\u756A"},{n:"OVA",v:"OVA"}]},{key:"state",name:"",init:"",value:[po,{n:"\u5C0F\u8BF4\u6539",v:"\u5C0F\u8BF4\u6539"},{n:"\u6F2B\u753B\u6539",v:"\u6F2B\u753B\u6539"},{n:"\u6E38\u620F\u6539",v:"\u6E38\u620F\u6539"},{n:"\u539F\u521B",v:"\u539F\u521B"}]},AE],3:[{key:"class",name:"",init:"",value:[po,...["\u641E\u7B11","\u7231\u60C5","\u6050\u6016","\u52A8\u4F5C","\u79D1\u5E7B","\u5267\u60C5","\u6218\u4E89","\u5947\u5E7B","\u5192\u9669","\u60AC\u7591","\u6821\u56ED","\u540E\u5BAB","\u70ED\u8840","\u8FD0\u52A8"].map(t=>({n:t,v:t}))]},yE,xE,{key:"lang",name:"",init:"",value:[po,{n:"\u56FD\u8BED",v:"\u56FD\u8BED"},{n:"\u82F1\u8BED",v:"\u82F1\u8BED"}]},AE],21:[{key:"class",name:"",init:"",value:[po,...["\u559C\u5267","\u7231\u60C5","\u6050\u6016","\u52A8\u4F5C","\u79D1\u5E7B","\u5267\u60C5","\u6218\u4E89","\u5947\u5E7B","\u5192\u9669","\u60AC\u7591","\u6821\u56ED","\u540E\u5BAB","\u70ED\u8840","\u8FD0\u52A8","\u767E\u5408","\u803D\u7F8E","\u673A\u7532","\u65E5\u5E38","\u9B54\u6CD5\u5C11\u5973","\u5F02\u4E16\u754C","\u7231\u6296\u9732","\u97F3\u4E50"].map(t=>({n:t,v:t}))]},yE,xE,{key:"lang",name:"",init:"",value:[po,{n:"\u65E5\u8BED",v:"\u65E5\u8BED"},{n:"\u4E2D\u6587",v:"\u4E2D\u6587"},{n:"\u82F1\u8BED",v:"\u82F1\u8BED"}]},AE],20:[{key:"class",name:"",init:"",value:[po,...["\u559C\u5267","\u7231\u60C5","\u6050\u6016","\u52A8\u4F5C","\u79D1\u5E7B","\u5267\u60C5","\u6218\u4E89","\u5947\u5E7B","\u5192\u9669","\u60AC\u7591","\u6821\u56ED","\u540E\u5BAB","\u70ED\u8840","\u8FD0\u52A8","\u804C\u573A","\u767E\u5408","\u4E59\u5973","\u673A\u7532","\u65E5\u5E38","\u9B54\u6CD5\u5C11\u5973","\u5F02\u4E16\u754C","\u7231\u6296\u9732","\u97F3\u4E50","\u840C","\u7EAA\u5F55\u7247"].map(t=>({n:t,v:t}))]},yE,xE,{key:"lang",name:"",init:"",value:[po,{n:"\u65E5\u8BED",v:"\u65E5\u8BED"},{n:"\u82F1\u8BED",v:"\u82F1\u8BED"},{n:"\u6CF0\u8BED",v:"\u6CF0\u8BED"}]},AE],24:[{key:"class",name:"",init:"",value:[po,...["\u559C\u5267","\u7231\u60C5","\u6050\u6016","\u52A8\u4F5C","\u79D1\u5E7B","\u5267\u60C5","\u6218\u4E89","\u5947\u5E7B","\u5192\u9669","\u60AC\u7591","\u6821\u56ED","\u540E\u5BAB","\u70ED\u8840","\u8FD0\u52A8","\u767E\u5408","\u4E59\u5973","\u673A\u7532","\u65E5\u5E38","\u9B54\u6CD5\u5C11\u5973","\u5F02\u4E16\u754C","\u7231\u6296\u9732","\u97F3\u4E50"].map(t=>({n:t,v:t}))]},yE,xE,AE],26:[{key:"class",name:"",init:"",value:[po,{n:"\u6F14\u5531\u4F1A",v:"\u6F14\u5531\u4F1A"},{n:"\u5468\u8FB9\u6D3B\u52A8",v:"\u5468\u8FB9\u6D3B\u52A8"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},yE,xE,AE]};function lSr(t,e,r={}){let n=t||"2",s=m=>encodeURIComponent(m||""),i=r.by||"",a=r.class||"",o=r.month||"",c=r.year||"",u=r.version||"",l=r.state||"",d=r.lang||"",f=e>1?String(e):"",p=`/show/${n}-${s(o)}-${s(i)}-${s(a)}-${s(d)}----${f}-${s(l)}--${s(c)}/`;return u&&(p+=`version/${s(u)}/`),ba+p}function Cct(t,e={}){return{"User-Agent":rce,Referer:t||ba+"/",Origin:ba,...e}}async function dSr(t,e){return{}}async function fSr(t,e){try{let r=await iM(ba+"/"),n=aSr([...uSr(r),...sM(r,"\u6700\u8FD1\u5927\u5BB6\u5728\u770B"),...sM(r,"\u6216\u8BB8\u4F60\u611F\u5174\u8DA3\uFF1F"),...sM(r,"\u65E5\u756A"),...sM(r,"\u5267\u573A\u7248")]).slice(0,40);return{class:Sct,filters:vct,list:n}}catch(r){return console.error("girigiri home failed:",r.message),{class:Sct,filters:vct,list:[]}}}async function pSr(t,e){let r=String(t.body?.id||t.body?.tid||"2"),n=Math.max(1,Number(t.body?.page||1)),s={...t.body?.filters||{}},i=lSr(r,n,s);try{let a=await iM(i),o=Ict(a);if(!o.length)return{list:[],page:n,pagecount:n,limit:Dw,total:0};let u=[`--------${n+1}---/`,`-${n+1}---/`].some(l=>a.includes(l));return{list:o,page:n,pagecount:u?n+1:n,limit:Dw,total:n*Dw+(u?Dw:o.length)}}catch(a){return console.error("girigiri category failed:",a.message),{list:[],page:n,pagecount:n,limit:Dw,total:0}}}async function mSr(t,e){let r=String(t.body?.wd||"").trim();if(!r)return{list:[]};try{let n=`${ba}/index.php/ajax/suggest?mid=1&wd=${encodeURIComponent(r)}`;return{list:((await cSr(n,{headers:{"X-Requested-With":"XMLHttpRequest",Referer:`${ba}/search/-------------/`}}))?.list||[]).map(i=>({vod_id:`/GV${i.id}/`,vod_name:i.name||"",vod_pic:zl(i.pic||""),vod_remarks:""}))}}catch(n){return console.error("girigiri search failed:",n.message),{list:[]}}}async function hSr(t,e){let r=t.body?.id,n=(Array.isArray(r)?r:String(r||"").split(",")).map(i=>String(i||"").trim()).filter(Boolean),s=[];for(let i of n){let a=zl(i);if(a)try{let o=await iM(a),c=Ru((o.match(/(.*?)<\//i)||[])[1]||"").replace(/_.*$/,""),u=zl((o.match(/<img[^>]+data-src="([^"]+\.webp)"/)||[])[1]||""),l=Ru((o.match(/<div id="height_limit" class="text cor3">([\s\S]*?)<\/div>/)||[])[1]||""),d=Ru((o.match(/<p>([^<]*?(?:æ›´æ–°|點|支持杜比)[^<]*?)<\/p>/)||[])[1]||""),f=(o.match(/20\d{2}/)||[])[0]||"",p=[],m=/<a class="swiper-slide"[^>]*>[\s\S]*? ([^<]+)<span class="badge">(\d+)<\/span><\/a>/g,h;for(;(h=m.exec(o))!==null;)p.push({name:Ru(h[1]),count:Number(h[2]||0)});let A=o.match(/<div class="anthology wow[\s\S]*?<script>\$\("\.anthology-tab a"\)\.eq\(0\)/),g=A?A[0]:"",b=[],y=/<div class="anthology-list-box[^>]*>([\s\S]*?)<\/div><\/div>/g,x;for(;(x=y.exec(g))!==null;){let R=[],w=/href="([^"]*\/play[^\"]+)"[^>]*>([^<]+)<\/a>/g,N;for(;(N=w.exec(x[1]))!==null;){let P=Ru(N[2]),L=N[1];L.includes("/play")&&R.push({name:P,playId:_ct({playUrl:L,epName:P,vodName:c,referer:i})})}R.length&&b.push(R)}if(!b.length){let R=[],w=/href="([^"]*\/play[^\"]+)"[^>]*>([^<]+)<\/a>/g,N;for(;(N=w.exec(g||o))!==null;){let P=N[1];if(!P.includes("/play"))continue;let L=Ru(N[2]);R.push({name:L,playId:_ct({playUrl:P,epName:L,vodName:c,referer:i})})}R.length&&b.push(R)}let v=[],C=[];for(let R=0;R<b.length;R+=1){let w=p[R]?.name||`\u7EBF\u8DEF${R+1}`,N=b[R].map(P=>`${P.name}$${P.playId}`);v.push(w),C.push(N.join("#"))}s.push({vod_id:i,vod_name:c,vod_pic:u,vod_remarks:d,vod_content:l,vod_director:"",vod_actor:"",vod_year:f,vod_play_from:v.join("$$$"),vod_play_url:C.join("$$$")})}catch(o){console.error("girigiri detail failed:",i,o.message)}}return{list:s}}async function gSr(t,e){let r=String(t.body?.id||"").trim(),n=iSr(r),s=n.playUrl||r||"",i=zl(n.referer||"/"),a=zl(s);try{let c=(await iM(a,{referer:i||ba+"/",headers:{Origin:ba,Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"}})).match(/var\s+player_aaaa\s*=\s*(\{[\s\S]*?\})<\/script>/);if(!c)throw new Error("player_aaaa not found");let u=JSON.parse(c[1]),l=u.url||"";u.encrypt===2?l=oSr(l):u.encrypt===1&&(l=decodeURIComponent(l));let d=l;/^https?:\/\//i.test(d)||(d=zl(d));let f=new URL(d).origin,p=f===ba?i||ba+"/":f+"/";return{parse:0,url:d,header:Cct(p)}}catch(o){return console.error("girigiri play failed:",o.message),{parse:0,url:a,header:Cct(ba+"/")}}}var Tct={meta:{key:kw.key,name:"\u300C\u76F4\u300D\u7231\u52A8\u6F2B",type:3},api:async t=>{t.post("/init",dSr),t.post("/home",fSr),t.post("/category",pSr),t.post("/detail",hSr),t.post("/play",gSr),t.post("/search",mSr)}};var em=Re(Jn(),1),Kf="https://www.cycani.org",Rct="https://player.cycanime.com",Nct="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36",ASr="YLwJVbXw77pk2eOrAnFdBo2c3mWkLtodMni2wk81GCnP94ZltW",Lw=48,eA=[{type_id:"20",type_name:"TV\u756A\u7EC4"},{type_id:"21",type_name:"\u5267\u573A\u756A\u7EC4"}],ySr={\u7C7B\u578B:"class",\u5E74\u4EFD:"year",\u5B57\u6BCD:"letter"},xSr={class:"\u7C7B\u578B",year:"\u5E74\u4EFD",letter:"\u5B57\u6BCD",by:"\u6392\u5E8F"},bSr={key:"by",name:"\u6392\u5E8F",init:"time",value:[{n:"\u6309\u6700\u65B0",v:"time"},{n:"\u6309\u6700\u70ED",v:"hits"},{n:"\u6309\u8BC4\u5206",v:"score"}]},nce=new Map;function Ki(t){return String(t||"").replace(/ /gi," ").replace(/<br\s*\/?>/gi," ").replace(/<[^>]+>/g," ").replace(/\s+/g," ").trim()}function Oct(t){let e=Number.parseInt(t,10);return Number.isFinite(e)&&e>0?e:1}function Bw(t,e=Kf){let r=String(t||"").trim();return r?/^https?:\/\//i.test(r)?r:r.startsWith("//")?`https:${r}`:new URL(r,e).toString():""}function Pct(t=`${Kf}/`,e="text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8"){return{"User-Agent":Nct,Accept:e,"Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Referer:t}}async function tA(t,e=`${Kf}/`,r){let n=Bw(t),s=await he.get(n,{headers:Pct(e,r),timeout:15e3,maxContentLength:3*1024*1024});return typeof s.data=="string"?s.data:String(s.data||"")}async function ESr(t,e=`${Kf}/`){let r=Bw(t),n=await he.get(r,{headers:{...Pct(e,"application/json,text/javascript,*/*;q=0.01"),"X-Requested-With":"XMLHttpRequest"},timeout:15e3,maxContentLength:1024*1024});if(typeof n.data=="string")try{return JSON.parse(n.data)}catch{return null}return n.data||null}function aM(t){return encodeURIComponent(String(t||"").trim())}function Dct(t,e=1,r={}){let n=String(t||eA[0].type_id).trim()||eA[0].type_id,s=[],i=String(r.by||r.sort||"").trim(),a=String(r.class||"").trim(),o=String(r.letter||"").trim(),c=String(r.year||"").trim();return i&&s.push("by",aM(i)),a&&s.push("class",aM(a)),o&&s.push("letter",aM(o)),c&&s.push("year",aM(c)),e>1&&s.push("page",String(e)),`/show/${n}${s.length?`/${s.join("/")}`:""}.html`}function kct(t){return(String(t||"").match(/\/bangumi\/(\d+)\.html/i)||[])[1]||""}function _Sr(t){let e=String(t||"").match(/\/watch\/(\d+)\/(\d+)\/(\d+)\.html/i);return e?`${e[1]}/${e[2]}/${e[3]}`:""}function SSr(t){try{let e=JSON.parse(String(t||""));if(e&&e.id)return String(e.id)}catch{}return String(t||"").match(/\d+/)?.[0]||String(t||"").trim()}function wct(t,e){let r=t(e),n=r.find('a[href*="/bangumi/"]').first(),s=n.attr("href")||"",i=kct(s);if(!i)return null;let a=r.find("img").first(),o=Ki(n.attr("title")||a.attr("alt")||n.text());if(!o)return null;let c=a.attr("data-src")||a.attr("data-original")||a.attr("src")||"",u=Ki(r.find(".public-list-subtitle,.public-list-prb,.slide-info-remarks").first().text());return{vod_id:i,vod_name:o,vod_pic:Bw(c),vod_remarks:u}}function sce(t){let e=Me(t||""),r=[],n=new Set;return e(".public-list-box,.swiper-slide").each((s,i)=>{let a=wct(e,i);!a||n.has(a.vod_id)||(n.add(a.vod_id),r.push(a))}),r.length===0&&e('a[href*="/bangumi/"]').each((s,i)=>{let a=wct(e,e(i).closest("li,div").first());!a||n.has(a.vod_id)||(n.add(a.vod_id),r.push(a))}),r}function Lct(t){let e=Me(t||""),r=[],n=new Set;return e(".ec-casc-list .nav-swiper").each((s,i)=>{let a=e(i),o=Ki(a.find(".filter-text span").first().text()),c=a.find(".vod-ajax-select[data-type]").first().attr("data-type")||ySr[o]||"";if(!c||c==="channel"||c==="type"||n.has(c))return;let u=[];a.find(".vod-ajax-select").each((l,d)=>{let f=e(d),p=Ki(f.find("a").first().text()||f.text()),m=String(f.attr("data-val")||"").trim();!p||p==="\u5206\u7C7B\u8D44\u6E90\u4E0D\u4EE3\u8868\u5168\u90E8\u8D44\u6E90"||!m&&p!=="\u5168\u90E8"||u.some(h=>h.v===m)||u.push({n:p,v:m})}),u.length>0&&(n.add(c),r.push({key:c,name:xSr[c]||o||c,init:"",value:u}))}),r.push(bSr),r}async function vSr(t){let e=String(t||eA[0].type_id);if(nce.has(e))return nce.get(e);let r=await tA(Dct(e,1),`${Kf}/`),n=Lct(r);return nce.set(e,n),n}function CSr(t,e,r){let s=Ki(Me(t||"")(".page-tip").first().text()).match(/当前\s*(\d+)\s*\/\s*(\d+)\s*页/);return s?Number.parseInt(s[2],10)||e:r>=Lw?e+1:e}async function ISr(){let t={};await Promise.all(eA.map(async r=>{t[r.type_id]=await vSr(r.type_id).catch(()=>[])}));let e=await tA("/");return{class:eA,filters:t,list:sce(e).slice(0,Lw)}}async function TSr(t){let e=t.body||{},r=String(e.id||eA[0].type_id).trim()||eA[0].type_id,n=Oct(e.page),s=e.filters||e.extend||e.ext||{},i=Dct(r,n,s),a=await tA(i,`${Kf}/show/${r}.html`),o=sce(a),c=CSr(a,n,o.length);return{page:n,pagecount:c,limit:Lw,total:c*Lw,list:o,filter:Lct(a)}}function wSr(t,e){let r=Me(t||""),n=e||kct(r('link[rel="canonical"]').attr("href")||""),s=Ki(r(".slide-info-title").first().text())||Ki(r("h1,h2,h3").first().text())||Ki(r("title").text().replace(/[_-].*$/,"")),i=Bw(r(".detail-pic img,.player-vod-no1 img").map((p,m)=>r(m).attr("data-src")||r(m).attr("data-original")||r(m).attr("src")).get().find(p=>p&&!String(p).startsWith("data:image"))),a=Ki(r(".slide-info-remarks").first().text()),o=Ki(r("#height_limit,.small-text,.vod-content,.text").first().text()),c=r(".partition").filter((p,m)=>/演员/.test(r(m).text())).find("a").map((p,m)=>Ki(r(m).text())).get().filter(Boolean).join(","),u=r(".partition").filter((p,m)=>/导演/.test(r(m).text())).find("a").map((p,m)=>Ki(r(m).text())).get().filter(Boolean).join(","),l=r(".partition").filter((p,m)=>/类型/.test(r(m).text())).find("a").map((p,m)=>Ki(r(m).text())).get().filter(Boolean).join(","),d=[],f=[];return r(".anthology-list-box").each((p,m)=>{let h=Ki(r(".anthology-tab a").eq(p).clone().children().remove().end().text())||`CYC_${p+1}`,A=[];r(m).find('a[href*="/watch/"]').each((g,b)=>{let y=_Sr(r(b).attr("href"));if(!y)return;let x=Ki(r(b).text())||`\u7B2C${A.length+1}\u96C6`;A.push(`${x}$${y}`)}),A.length>0&&(d.push(h),f.push(A.join("#")))}),{vod_id:n,vod_name:s,vod_pic:i,vod_remarks:a,type_name:l,vod_actor:c,vod_director:u,vod_content:o,vod_play_from:d.join("$$$"),vod_play_url:f.join("$$$")}}async function RSr(t){let e=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],r=[];for(let n of e.filter(Boolean)){let s=SSr(n);if(!s)continue;let i=await tA(`/bangumi/${s}.html`,`${Kf}/`);r.push(wSr(i,s))}return{list:r}}function NSr(t){let e=String(t?.encrypt||""),r=String(t?.url||"");return e==="1"?decodeURIComponent(r):e==="2"?decodeURIComponent(Buffer.from(r,"base64").toString("utf8")):r}function OSr(t){let e=String(t||"").match(/var\s+player_aaaa\s*=\s*(\{[\s\S]*?\})\s*<\/script>/i)||String(t||"").match(/var\s+player_aaaa\s*=\s*(\{[\s\S]*?\})\s*;/i);return e?JSON.parse(e[1]):null}function PSr(t){let e={},r=String(t||"");for(let n of["url","vkey","next","title","poster"]){let s=r.match(new RegExp(`["']${n}["']\\s*:\\s*["']([^"']*)["']`));s&&(e[n]=s[1])}return e}function DSr(t){let e=Me(t||""),r=String(e('meta[name="viewport"]').attr("id")||"").replace(/^now_/,""),n=String(e('meta[charset="UTF-8"]').attr("id")||e("meta[charset]").attr("id")||"").replace(/^now_/,"");return!r||!n||r.length!==n.length?"":n.split("").map((s,i)=>({id:Number(s),text:r[i]||""})).sort((s,i)=>s.id-i.id).map(s=>s.text).join("")}function kSr(t,e){let r=DSr(e);if(!r)return"";let n=em.default.MD5(r+ASr).toString(),s=em.default.enc.Utf8.parse(n.substring(16)),i=em.default.enc.Utf8.parse(n.substring(0,16));return em.default.AES.decrypt(t,s,{iv:i,mode:em.default.mode.CBC,padding:em.default.pad.Pkcs7}).toString(em.default.enc.Utf8)}async function LSr(t,e){if(/^https?:\/\//i.test(t))return t;let r=`${Rct}/?url=${encodeURIComponent(t)}`,n=await tA(r,`${Kf}${e}`),s=PSr(n);return kSr(s.url||"",n)||""}async function BSr(t){let e=String(t.body?.id||"").trim(),r=e.match(/(\d+)\/(\d+)\/(\d+)/)||e.match(/watch\/(\d+)\/(\d+)\/(\d+)/);if(!r)return{parse:0,url:"",header:{}};let n=`/watch/${r[1]}/${r[2]}/${r[3]}.html`,s=await tA(n,`${Kf}/bangumi/${r[1]}.html`),i=OSr(s);if(!i)return{parse:0,url:"",header:{}};let a=NSr(i);return{parse:0,jx:0,url:await LSr(a,n),header:{"User-Agent":Nct,Referer:`${Rct}/`}}}async function MSr(t){let e=String(t.body?.wd||"").trim(),r=Oct(t.body?.page);if(!e)return{page:r,pagecount:1,limit:20,total:0,list:[]};let n=await ESr(`/index.php/ajax/suggest?mid=1&limit=20&page=${r}&wd=${encodeURIComponent(e)}`),i=(Array.isArray(n?.list)?n.list:[]).map(a=>({vod_id:String(a.id||""),vod_name:Ki(a.name),vod_pic:Bw(a.pic||""),vod_remarks:""})).filter(a=>a.vod_id&&a.vod_name);return{page:Number(n?.page||r),pagecount:Number(n?.pagecount||r),limit:Number(n?.limit||20),total:Number(n?.total||i.length),list:i}}async function WSr(t,e){return{}}async function $Sr(){let t=await tA("/");return{list:sce(t).slice(0,Lw)}}var Bct={meta:{key:"ciyuancheng",name:"\u300C\u76F4\u300D\u6B21\u5143\u57CE",type:3},api:async t=>{t.post("/init",WSr),t.post("/home",ISr),t.post("/homeVod",$Sr),t.post("/category",TSr),t.post("/detail",RSr),t.post("/play",BSr),t.post("/search",MSr)}};var bE={key:"xifan",name:"\u7A00\u996D\u52A8\u6F2B",host:"https://anime.xifanacg.com",ua:"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/135.0.0.0 Safari/537.36",timeout:15e3},_i=bE.host,Ww=bE.ua,Mct=40;function Ea(t){return String(t||"").replace(/<script[\s\S]*?<\/script>/gi," ").replace(/<style[\s\S]*?<\/style>/gi," ").replace(/<[^>]+>/g," ").replace(/ /gi," ").replace(/&/gi,"&").replace(/'/g,"'").replace(/"/g,'"').replace(/\s+/g," ").trim()}function FSr(t){return Ea(t).replace(/\s*[_-]\s*(?:连载新番|完结旧番|剧场版|美漫).*$/i,"").replace(/\s*-\s*稀饭动漫.*$/i,"").replace(/\s*-\s*免费高清动漫分享.*$/i,"").trim()}function Nc(t){let e=String(t||"").trim();return e?/^https?:\/\//i.test(e)?e:e.startsWith("/")?_i+e:_i+"/"+e:""}function Wct(t){try{return Buffer.from(JSON.stringify(t||{}),"utf8").toString("base64")}catch{return""}}function USr(t){try{return JSON.parse(Buffer.from(t||"","base64").toString("utf8"))}catch{return{}}}function qSr(t){let e=new Set,r=[];for(let n of t||[]){let s=n?.vod_id;!s||e.has(s)||(e.add(s),r.push(n))}return r}function jSr(t){try{let e=Buffer.from(t||"","base64").toString("utf8");return decodeURIComponent(e)}catch{return t||""}}function HSr(t){try{let e=new URL(t);return e.hostname.endsWith("pan.wo.cn")||e.hostname.endsWith("moedot.net")}catch{return!1}}function QSr(t,e){let r={"User-Agent":Ww};if(HSr(t))return r;let n=new URL(t).origin;return r.Referer=n===_i?e||_i+"/":n+"/",r.Origin=_i,r}async function ice(t,e={}){let r=/^https?:\/\//i.test(t)?t:Nc(t),n=await he({url:r,method:e.method||"get",data:e.data,timeout:e.timeout||bE.timeout,responseType:"text",transformResponse:[s=>s],validateStatus:()=>!0,headers:{"User-Agent":Ww,Referer:e.referer||_i+"/","Accept-Language":"zh-CN,zh;q=0.9",...e.headers||{}}});if(n.status<200||n.status>=300)throw new Error(`HTTP ${n.status}`);return String(n.data||"")}async function GSr(t,e,r={}){let n=/^https?:\/\//i.test(t)?t:Nc(t),s=await he({url:n,method:"post",data:e,timeout:r.timeout||bE.timeout,validateStatus:()=>!0,headers:{"User-Agent":Ww,Referer:r.referer||_i+"/","Content-Type":"application/x-www-form-urlencoded; charset=UTF-8","X-Requested-With":"XMLHttpRequest","Accept-Language":"zh-CN,zh;q=0.9",...r.headers||{}}});if(s.status<200||s.status>=300)throw new Error(`HTTP ${s.status}`);return s.data}async function VSr(t,e={}){let r=/^https?:\/\//i.test(t)?t:Nc(t),n=await he.get(r,{timeout:e.timeout||bE.timeout,validateStatus:()=>!0,headers:{"User-Agent":Ww,Referer:e.referer||_i+"/","X-Requested-With":"XMLHttpRequest","Accept-Language":"zh-CN,zh;q=0.9",...e.headers||{}}});if(n.status<200||n.status>=300)throw new Error(`HTTP ${n.status}`);return n.data}function zSr(t){let e=[],r=String(t||"").match(/<div class="public-list-box[\s\S]*?<\/div>\s*<\/div>\s*<\/div>/g)||[];for(let n of r){let s=(n.match(/class="(?:public-list-exp|time-title)[^"]*"[^>]*href="([^"]+)"/)||[])[1]||"",i=(n.match(/class="public-list-exp"[^>]*title="([^"]+)"/)||[])[1]||(n.match(/class="time-title[^"]*"[^>]*title="([^"]+)"/)||[])[1]||Ea((n.match(/class="time-title[^"]*"[^>]*>([\s\S]*?)<\/a>/)||[])[1]||""),a=(n.match(/data-src="([^"]+)"/)||[])[1]||(n.match(/src="([^"]+)"/)||[])[1]||"",o=(n.match(/<span class="public-list-prb[^>]*>([\s\S]*?)<\/span>/)||[])[1]||"";!s||!i||e.push({vod_id:s,vod_name:Ea(i),vod_pic:Nc(a),vod_remarks:Ea(o)})}return e}function KSr(t){let e=[],r=/<div class="swiper-slide">[\s\S]*?<div class="swiper-lazy[^"]*" data-background="([^"]+)"[\s\S]*?<a class="lank" href="([^"]+)"[\s\S]*?<h3 class="slide-info-title hide">([\s\S]*?)<\/h3>[\s\S]*?<li>([^<]*)<\/li>/g,n;for(;(n=r.exec(String(t||"")))!==null;)e.push({vod_id:n[2],vod_name:Ea(n[3]),vod_pic:Nc(n[1]),vod_remarks:Ea(n[4])});return e}var $ct=[{type_id:"1",type_name:"\u8FDE\u8F7D\u65B0\u756A"},{type_id:"2",type_name:"\u5B8C\u7ED3\u65E7\u756A"},{type_id:"3",type_name:"\u5267\u573A\u7248"},{type_id:"21",type_name:"\u7F8E\u6F2B"}],Mw={n:"\u5168\u90E8",v:""},oM={key:"by",name:"",init:"time",value:[{n:"\u6309\u6700\u65B0",v:"time"},{n:"\u6309\u6700\u70ED",v:"hits"},{n:"\u6309\u8BC4\u5206",v:"score"}]},Fct={key:"year",name:"",init:"",value:(()=>{let t=[Mw];for(let e=2026;e>=2005;e--)t.push({n:String(e),v:String(e)});return t})()},Uct={key:"class",name:"",init:"",value:[Mw,...["\u641E\u7B11","\u539F\u521B","\u8F7B\u5C0F\u8BF4\u6539","\u604B\u7231","\u767E\u5408","\u6F2B\u6539","\u6821\u56ED","\u6218\u6597","\u6CBB\u6108","\u5947\u5E7B","\u65E5\u5E38","\u9752\u6625","\u4E59\u5973\u5411","\u60AC\u7591","\u540E\u5BAB","\u79D1\u5E7B","\u5192\u9669","\u70ED\u8840","\u5F02\u4E16\u754C","\u6E38\u620F\u6539","\u97F3\u4E50","\u5076\u50CF","\u7F8E\u98DF","\u803D\u7F8E"].map(t=>({n:t,v:t}))]},qct={1:[Uct,{key:"area",name:"",init:"",value:[Mw,{n:"\u65E5\u672C",v:"\u65E5\u672C"}]},Fct,oM],2:[Uct,Fct,oM],3:[{key:"area",name:"",init:"",value:[Mw,{n:"\u65E5\u672C",v:"\u65E5\u672C"}]},{key:"year",name:"",init:"",value:(()=>{let t=[Mw];for(let e=2026;e>=2004;e--)t.push({n:String(e),v:String(e)});return t})()},oM],21:[oM]};async function YSr(t,e){return{}}async function JSr(t,e){try{let r=await ice(_i+"/"),n=qSr([...KSr(r),...zSr(r)]).slice(0,40);return{class:$ct,filters:qct,list:n}}catch(r){return console.error("xifan home failed:",r.message),{class:$ct,filters:qct,list:[]}}}async function XSr(t,e){let r=String(t.body?.id||t.body?.tid||"1"),n=Math.max(1,Number(t.body?.page||1)),s={...t.body?.filters||{}},i=new URLSearchParams;i.set("type",r),i.set("page",String(n)),i.set("by",String(s.by||"time")),s.class&&i.set("class",String(s.class)),s.area&&i.set("area",String(s.area)),s.year&&i.set("year",String(s.year));try{let a=await GSr(`${_i}/index.php/ds_api/vod`,i.toString(),{referer:`${_i}/type/${r}.html`}),o=typeof a=="string"?JSON.parse(a):a||{},c=(o.list||[]).map(u=>({vod_id:u.url||`/bangumi/${u.vod_id}.html`,vod_name:u.vod_name||"",vod_pic:Nc(String(u.vod_pic||"").replace(/\\\//g,"/")),vod_remarks:u.vod_remarks||""})).filter(u=>u.vod_id&&u.vod_name);return{list:c,page:Number(o.page||n),pagecount:Number(o.pagecount||n),limit:Number(o.limit||Mct),total:Number(o.total||c.length)}}catch(a){return console.error("xifan category failed:",a.message),{list:[],page:n,pagecount:n,limit:Mct,total:0}}}async function ZSr(t,e){let r=String(t.body?.wd||"").trim();if(!r)return{list:[]};try{return{list:((await VSr(`${_i}/index.php/ajax/suggest?mid=1&wd=${encodeURIComponent(r)}`,{referer:`${_i}/search/wd/${encodeURIComponent(r)}.html`}))?.list||[]).map(s=>({vod_id:`/bangumi/${s.id}.html`,vod_name:s.name||"",vod_pic:Nc(s.pic||""),vod_remarks:""}))}}catch(n){return console.error("xifan search failed:",n.message),{list:[]}}}async function evr(t,e){let r=t.body?.id,n=(Array.isArray(r)?r:String(r||"").split(",")).map(i=>String(i||"").trim()).filter(Boolean),s=[];for(let i of n){let a=Nc(i);if(a)try{let o=await ice(a),c=FSr((o.match(/<h3[^>]*>([\s\S]*?)<\/h3>/i)||[])[1]||(o.match(/<title>(.*?)<\/title>/i)||[])[1]||""),u=Nc((o.match(/<div class="detail-pic">[\s\S]*?<img[^>]+(?:data-src|src)="([^"]+)"/i)||[])[1]||""),l=Ea((o.match(/<span class="slide-info-remarks cor5">([\s\S]*?)<\/span>/i)||[])[1]||""),d=Ea((o.match(/<span class="slide-info-remarks">\s*<a href="\/search\/year\/[^"]+"[^>]*>([\s\S]*?)<\/a>/i)||[])[1]||""),f=Ea((o.match(/<span class="slide-info-remarks">\s*<a href="\/search\/area\/[^"]+"[^>]*>([\s\S]*?)<\/a>/i)||[])[1]||""),p=Ea((o.match(/导演\s*:<\/strong>([\s\S]*?)<\/div>/i)||[])[1]||""),m=Ea((o.match(/演员\s*:<\/strong>([\s\S]*?)<\/div>/i)||[])[1]||""),h=Ea((o.match(/<div id="height_limit" class="text cor3">([\s\S]*?)<\/div>/i)||[])[1]||""),A=[],g=/<a class="swiper-slide">[\s\S]*? ([^<]+)<span class="badge">(\d+)<\/span><\/a>/g,b;for(;(b=g.exec(o))!==null;)A.push({name:Ea(b[1]),count:Number(b[2]||0)});let y=o.match(/<div class="anthology-list[\s\S]*?<script>\$\("\.anthology-tab a"\)\.eq\(0\)/),x=y?y[0]:o,v=[],C=/<div class="anthology-list-box[^>]*>[\s\S]*?<ul class="anthology-list-play size">([\s\S]*?)<\/ul>[\s\S]*?<\/div>\s*<\/div>/g,R;for(;(R=C.exec(x))!==null;){let P=[],L=/<a class="[^"]*" href="([^"]*\/watch[^"]+)"[^>]*>\s*(?:<span>)?([^<]+)(?:<\/span>)?\s*<\/a>/g,M;for(;(M=L.exec(R[1]))!==null;){let k=M[1];k.includes("/watch/")&&P.push({name:Ea(M[2]),playId:Wct({playUrl:k,vodName:c,referer:i})})}P.length&&v.push(P)}if(!v.length){let P=[],L=/href="([^"]*\/watch[^"]+)"[^>]*>\s*(?:<span>)?([^<]+)(?:<\/span>)?\s*<\/a>/g,M;for(;(M=L.exec(o))!==null;){let k=M[1];k.includes("/watch/")&&P.push({name:Ea(M[2]),playId:Wct({playUrl:k,vodName:c,referer:i})})}P.length&&v.push(P)}let w=[],N=[];for(let P=0;P<v.length;P+=1){let L=A[P]?.name||`\u7EBF\u8DEF${P+1}`,M=v[P].map(k=>`${k.name}$${k.playId}`);w.push(L),N.push(M.join("#"))}s.push({vod_id:i,vod_name:c,vod_pic:u,vod_remarks:l,vod_content:h,vod_director:p,vod_actor:m,vod_year:d,vod_area:f,vod_play_from:w.join("$$$"),vod_play_url:N.join("$$$")})}catch(o){console.error("xifan detail failed:",i,o.message)}}return{list:s}}async function tvr(t,e){let r=String(t.body?.id||"").trim(),n=USr(r),s=n.playUrl||r||"",i=Nc(n.referer||"/"),a=Nc(s);try{let c=(await ice(a,{referer:i||_i+"/",headers:{Origin:_i}})).match(/var\s+player_aaaa\s*=\s*(\{[\s\S]*?\})<\/script>/);if(!c)throw new Error("player_aaaa not found");let u=JSON.parse(c[1]),l=String(u.url||"").replace(/\\\//g,"/");Number(u.encrypt)===2?l=jSr(l):Number(u.encrypt)===1&&(l=decodeURIComponent(l));let d=l;return/^https?:\/\//i.test(d)||(d=Nc(d)),{parse:0,url:d,header:QSr(d,i)}}catch(o){return console.error("xifan play failed:",o.message),{parse:0,url:a,header:{"User-Agent":Ww,Referer:_i+"/",Origin:_i}}}}var jct={meta:{key:bE.key,name:"\u300C\u76F4\u300D\u7A00\u996D",type:3},api:async t=>{t.post("/init",YSr),t.post("/home",JSr),t.post("/category",XSr),t.post("/detail",evr),t.post("/play",tvr),t.post("/search",ZSr)}};var _a={key:"xifannext",name:"\u7A00\u996D\u52A8\u6F2B Next",host:"https://next.xifanacg.com",supabase:"https://rzmsnqblptbceicadbyd.supabase.co",anonKey:"sb_publishable_aCb7uwyLN6H-sMjze4dRGA_2MDuROLF",ua:"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/135.0.0.0 Safari/537.36",timeout:15e3},Kl=_a.host,tm=24,Uw={n:"\u5168\u90E8",v:""},Hct=[{type_id:"all",type_name:"\u5168\u90E8\u756A\u5267"},{type_id:"recent",type_name:"\u6700\u8FD1\u66F4\u65B0"},{type_id:"ranking",type_name:"\u6392\u884C\u699C"},{type_id:"schedule",type_name:"\u5468\u8868"}],rvr={key:"format",name:"",init:"",value:[Uw,{n:"TV \u52A8\u753B",v:"tv"},{n:"\u5267\u573A\u7248",v:"movie"},{n:"OVA",v:"ova"},{n:"OAD",v:"oad"},{n:"Web \u52A8\u753B",v:"web"},{n:"\u5176\u4ED6",v:"other"}]},nvr={key:"finished",name:"",init:"",value:[Uw,{n:"\u8FDE\u8F7D\u4E2D",v:"0"},{n:"\u5B8C\u7ED3",v:"1"}]},svr={key:"year",name:"",init:"",value:(()=>{let t=[Uw];for(let e=2026;e>=2007;e-=1)t.push({n:String(e),v:String(e)});return t.push({n:"\u66F4\u65E9",v:"older"}),t})()},ivr={key:"tag",name:"",init:"",value:[Uw,...["\u6F2B\u753B\u6539","\u5C0F\u8BF4\u6539","\u5947\u5E7B","\u6218\u6597","\u539F\u521B","\u604B\u7231","\u6821\u56ED","\u65E5\u5E38","\u767E\u5408","\u540E\u5BAB","\u79D1\u5E7B","\u6E38\u620F\u6539","\u60AC\u7591","\u5192\u9669","\u7A7F\u8D8A","\u97F3\u4E50","\u8FD0\u52A8","\u673A\u6218","\u559C\u5267","\u5C11\u5E74\u5411","\u63A8\u7406","\u5C11\u5973\u5411","\u804C\u573A","\u7F8E\u98DF","\u9752\u5E74\u5411"].map(t=>({n:t,v:t}))]},avr={key:"sort",name:"",init:"title",value:[{n:"\u6807\u9898",v:"title"},{n:"\u70ED\u5EA6",v:"view_count"},{n:"\u8BC4\u5206",v:"bangumi_score"},{n:"\u6700\u65B0",v:"release_date"}]},ovr={key:"days",name:"",init:"7",value:[{n:"7 \u5929",v:"7"},{n:"14 \u5929",v:"14"}]},cvr={key:"kind",name:"",init:"trending_week",value:[{n:"\u70ED\u5EA6",v:"trending_week"},{n:"\u8BC4\u5206",v:"rating"},{n:"\u98D9\u5347",v:"rising"},{n:"\u5B9D\u85CF",v:"hidden_gem"},{n:"\u5F39\u5E55",v:"danmaku_heat"}]},uvr={key:"section",name:"",init:"all",value:[{n:"\u603B\u699C",v:"all"},{n:"\u65B0\u756A",v:"ongoing"},{n:"\u5B8C\u7ED3",v:"finished"},{n:"\u5267\u573A\u7248",v:"movie"},{n:"\u7F8E\u6F2B",v:"western"}]},lvr={key:"weekday",name:"",init:"",value:[Uw,{n:"\u5468\u4E00",v:"0"},{n:"\u5468\u4E8C",v:"1"},{n:"\u5468\u4E09",v:"2"},{n:"\u5468\u56DB",v:"3"},{n:"\u5468\u4E94",v:"4"},{n:"\u5468\u516D",v:"5"},{n:"\u5468\u65E5",v:"6"}]},Qct={all:[rvr,nvr,svr,ivr,avr],recent:[ovr],ranking:[cvr,uvr],schedule:[lvr]};function Yf(t){return String(t||"").replace(/<script[\s\S]*?<\/script>/gi," ").replace(/<style[\s\S]*?<\/style>/gi," ").replace(/<[^>]+>/g," ").replace(/ /gi," ").replace(/&/gi,"&").replace(/'/g,"'").replace(/"/g,'"').replace(/\s+/g," ").trim()}function Vct(t){let e=String(t||"").trim();return e?/^https?:\/\//i.test(e)?e:e.startsWith("/")?Kl+e:`${Kl}/${e}`:""}function zct(t){let e=Vct(t);if(!e)return"";try{let r=new URL(e);if(r.hostname==="next.xifanacg.com"&&r.pathname==="/_next/image")return decodeURIComponent(r.searchParams.get("url")||e)}catch{}return e}function dvr(t){try{return Buffer.from(JSON.stringify(t||{}),"utf8").toString("base64")}catch{return""}}function fvr(t){try{return JSON.parse(Buffer.from(t||"","base64").toString("utf8"))}catch{return{}}}function Kct(t){return Yf(t).replace(/[$#]/g," ").trim()}function Yct(t){let e=String(t||"").trim();return e&&e.match(/(?:\/anime\/|^)(\d+)/)?.[1]||""}function Nu(...t){return t.find(e=>e!=null&&e!=="")}function pvr(t={}){return{...t.extend||{},...t.filter||{},...t.filters||{}}}function mvr(t={}){let e=Number(Nu(t.current_episodes,t.currentEpisodes,0)),r=Number(Nu(t.total_episodes,t.totalEpisodes,0));if(r>0&&e>0&&e<r)return`\u66F4\u65B0\u81F3 ${e} / ${r}`;if(r>0)return`\u5168 ${r} \u96C6`;let n=Nu(t.release_year,t.releaseYear,t.datePublished);if(n)return String(n);let s=Nu(t.bangumi_score,t.bangumiScore);return s!==void 0?String(s):""}function $w(t={}){let e=Yct(Nu(t.id,t.url,t["@id"]));return{vod_id:e?`/anime/${e}`:"",vod_name:Yf(t.title||t.name||""),vod_pic:zct(Nu(t.cover_url,t.coverUrl,t.image,t.pic,"")),vod_remarks:mvr(t)}}function hvr(t,e){let r=String(e||"").trim();return r?{sortBy:r,sortOrder:r==="title"?"asc":"desc"}:t==="recent"?{sortBy:"release_date",sortOrder:"desc"}:t==="ranking"?{sortBy:"bangumi_score",sortOrder:"desc"}:{sortBy:"title",sortOrder:"asc"}}function oce(t={}){return String(t.year||"").trim()==="older"||String(t.older||"").trim()==="1"}function cce({tid:t="all",page:e=1,extend:r={},searchTerm:n=""}={}){let{sortBy:s,sortOrder:i}=hvr(t,Nu(r.sort,r.by)),a=Number.parseInt(String(r.year||""),10),o=String(r.finished??"").trim();return{search_term:n||null,page_number:e,items_per_page:tm,sort_by:s,sort_order:i,filter_type_id:null,filter_meta_tags:r.tag?[String(r.tag)]:null,filter_is_finished:o===""?null:o==="1",filter_format:r.format||null,filter_release_year:!oce(r)&&Number.isFinite(a)?a:null,filter_only_published:!0}}function gvr(t,e={}){let r=new URLSearchParams;t>1&&r.set("page",String(t)),e.format&&r.set("format",String(e.format)),String(e.finished??"").trim()&&r.set("finished",String(e.finished)),oce(e)?r.set("older","1"):e.year&&r.set("year",String(e.year)),e.tag&&r.set("tag",String(e.tag));let n=String(Nu(e.sort,e.by,"")).trim();n&&n!=="title"&&r.set("sort",n);let s=r.toString();return`/browse${s?`?${s}`:""}`}function ace(t){let e={"User-Agent":_a.ua};try{let r=new URL(t).hostname;if(r.endsWith("pan.wo.cn")||r.endsWith("moedot.net"))return e}catch{return e}return e.Referer=`${Kl}/`,e.Origin=Kl,e}async function qw(t,e={}){let r=/^https?:\/\//i.test(t)?t:Vct(t),n=await he({url:r,method:"get",timeout:e.timeout||_a.timeout,responseType:"text",transformResponse:[s=>s],validateStatus:()=>!0,headers:{"User-Agent":_a.ua,Referer:e.referer||`${Kl}/`,"Accept-Language":"zh-CN,zh;q=0.9",...e.headers||{}}});if(n.status<200||n.status>=300)throw new Error(`HTTP ${n.status}`);return String(n.data||"")}async function Fw(t,e){let r=await he({url:`${_a.supabase}/rest/v1/rpc/${t}`,method:"post",data:e,timeout:_a.timeout,validateStatus:()=>!0,headers:{apikey:_a.anonKey,Authorization:`Bearer ${_a.anonKey}`,"Content-Type":"application/json",Origin:Kl,Referer:`${Kl}/`,"User-Agent":_a.ua,"X-Client-Info":"supabase-js-web/2.49.1"}});if(r.status<200||r.status>=300)throw new Error(`RPC ${t} HTTP ${r.status}`);return r.data}async function Avr(t,e){let r=await he({url:`${_a.supabase}/functions/v1/${t}`,method:"post",data:e,timeout:_a.timeout,validateStatus:()=>!0,headers:{apikey:_a.anonKey,Authorization:`Bearer ${_a.anonKey}`,"Content-Type":"application/json",Origin:Kl,Referer:`${Kl}/`,"User-Agent":_a.ua}});if(r.status<200||r.status>=300)throw new Error(`Function ${t} HTTP ${r.status}`);return r.data}function Jct(t){let e=Me(t||""),r=[];return e('script[type="application/ld+json"]').each((n,s)=>{try{let i=JSON.parse(e(s).text()||"{}");Array.isArray(i?.["@graph"])?r.push(...i["@graph"]):r.push(i)}catch{}}),r}function yvr(t,e){return Jct(t).find(r=>{let n=r?.["@type"],s=String(r?.url||r?.["@id"]||"");return(n==="TVSeries"||n==="Movie")&&s.includes(`/anime/${e}`)})||{}}function Gct(t,e){let r="";return t("dt").each((n,s)=>{if(Yf(t(s).text())===e)return r=Yf(t(s).next("dd").text()),!1}),r}function xvr(t,e){let r=0;for(let n=e-1;n>=0&&t[n]==="\\";n-=1)r+=1;return r}function bvr(t){return JSON.parse(String(t||"").replace(/\\"/g,'"').replace(/\\\\/g,"\\"))}function uM(t,e){let r=String(t||""),n=`\\"${e}\\":`,s=`"${e}":`,i=r.indexOf(n),a=!0;if(i<0&&(i=r.indexOf(s),a=!1),i<0)return[];let o=r.indexOf("[",i);if(o<0)return[];let c=0,u=!1,l=!1;for(let d=o;d<r.length;d+=1){let f=r[d];if(a&&f==='"'&&xvr(r,d)%4===1){u=!u;continue}if(!a){if(l){l=!1;continue}if(f==="\\"&&u){l=!0;continue}if(f==='"'){u=!u;continue}}if(!u){if(f==="[")c+=1;else if(f==="]"&&(c-=1,c===0)){let p=r.slice(o,d+1);try{return a?bvr(p):JSON.parse(p)}catch{return[]}}}}return[]}function Evr(t){let e=Jct(t).find(n=>n?.["@type"]==="ItemList")||{};return(Array.isArray(e.itemListElement)?e.itemListElement:[]).map(n=>$w(n?.item||n)).filter(n=>n.vod_id&&n.vod_name)}function _vr(t,e){let r=String(t||"").match(/当前已选[\s\S]{0,120}?å…±[\s\S]{0,40}?(\d+)[\s\S]{0,40}?部/);return r?Number(r[1]):e}function Svr(t,e){let r=e;for(let n of String(t||"").matchAll(/[?&]page=(\d+)/g))r=Math.max(r,Number(n[1]));return Math.max(1,r)}function vvr(t,e){let r=Me(t||""),n=[];return r(`a[href*="/anime/${e}/play/"]`).each((s,i)=>{let o=(r(i).attr("href")||"").match(/\/play\/(\d+)(?:\?source=([^&#]+))?/);if(!o)return;let c=Number(o[1]),u=Kct(r(i).text())||`\u7B2C ${n.length+1} \u96C6`;!c||n.some(l=>l.id===c)||n.push({id:c,title:u,episode_number:n.length+1})}),n.length?[{code:"xfxf1",name:"\u7A00\u996D\u65B0\u756A\u4E3B\u7EBF-1",episodes:n}]:[]}function Cvr(t,e){let r=Number(t?.episode_number||e+1),n=Number.isInteger(r)?String(r).padStart(2,"0"):String(e+1).padStart(2,"0"),s=Kct(t?.title||"");return s?`\u7B2C ${n} \u96C6 ${s}`:`\u7B2C ${n} \u96C6`}function Ivr(t,e,r,n){let s=[],i=[];for(let a of t||[]){let c=(Array.isArray(a?.episodes)?a.episodes:[]).map((u,l)=>{let d=Number(u?.id||0);if(!d)return"";let f=dvr({animeId:Number(e),episodeId:d,sourceCode:a.code||"",sourceName:a.name||"",vodName:r,referer:n});return`${Cvr(u,l)}$${f}`}).filter(Boolean);c.length&&(s.push(Yf(a.name||a.code||`\u7EBF\u8DEF${s.length+1}`)),i.push(c.join("#")))}return{vod_play_from:s.join("$$$"),vod_play_url:i.join("$$$")}}async function Tvr(t,e){return{}}async function wvr(t,e){try{let r=await Fw("search_animes",cce({tid:"recent",page:1,extend:{by:"release_date"}}));return{class:Hct,filters:Qct,list:(Array.isArray(r)?r:[]).map($w).filter(n=>n.vod_id&&n.vod_name)}}catch(r){return console.error("xifannext home failed:",r.message),{class:Hct,filters:Qct,list:[]}}}function cM(t){return(Array.isArray(t)?t:[]).map($w).filter(e=>e.vod_id&&e.vod_name)}function Rvr(t){let e=new Set;return t.filter(r=>!r.vod_id||e.has(r.vod_id)?!1:(e.add(r.vod_id),!0))}function Xct(t,e){let r=cM(t);return{list:e>1?[]:r,page:e,pagecount:1,limit:tm,total:r.length}}async function Nvr(t,e){if(oce(e)){let a=await qw(gvr(t,e)),o=Evr(a),c=_vr(a,o.length),u=Svr(a,Math.ceil(c/tm)||t);return{list:o,page:t,pagecount:u,limit:tm,total:c}}let r=await Fw("search_animes",cce({tid:"all",page:t,extend:e})),n=Array.isArray(r)?r:[],s=cM(n),i=Number(n[0]?.total_count||s.length);return{list:s,page:t,pagecount:Math.max(1,Math.ceil(i/tm)),limit:tm,total:i}}async function Ovr(t,e){let r=await qw("/recent"),n=Number(Nu(e.days,7)),s=uM(r,"windows"),i=s.find(a=>Number(a?.days)===n)||s[0]||{};return Xct(i.items||[],t)}async function Pvr(t,e){let r=String(Nu(e.kind,"trending_week")).trim()||"trending_week",n=String(Nu(e.section,"all")).trim()||"all",s=await qw(`/rankings?kind=${encodeURIComponent(r)}`),i=uM(s,"sections"),a=i.find(o=>String(o?.key||"")===n)||i[0]||{};return Xct(a.items||[],t)}async function Dvr(t,e){let r=await qw("/schedule"),n=String(e.weekday??"").trim(),s=uM(r,"schedule"),i=n===""?Rvr(s.flatMap(a=>cM(a?.animes||[]))):cM((s.find(a=>String(a?.weekday)===n)||{}).animes||[]);return{list:t>1?[]:i,page:t,pagecount:1,limit:tm,total:i.length}}async function kvr(t,e){let r=String(t.body?.id||t.body?.tid||"all"),n=Math.max(1,Number(t.body?.page||t.body?.pg||1)),s=pvr(t.body||{});try{return r==="recent"?await Ovr(n,s):r==="ranking"?await Pvr(n,s):r==="schedule"?await Dvr(n,s):await Nvr(n,s)}catch(i){return console.error("xifannext category failed:",i.message),{list:[],page:n,pagecount:n,limit:tm,total:0}}}async function Lvr(t,e){let r=String(t.body?.wd||"").trim();if(!r)return{list:[]};try{let n=await Fw("suggest_animes",{q:r,lim:20}),s=(Array.isArray(n)?n:[]).map($w).filter(i=>i.vod_id&&i.vod_name);if(!s.length){let i=await Fw("search_animes",cce({page:1,searchTerm:r}));s=(Array.isArray(i)?i:[]).map($w).filter(a=>a.vod_id&&a.vod_name)}return{list:s}}catch(n){return console.error("xifannext search failed:",n.message),{list:[]}}}async function Bvr(t,e){let r=t.body?.id,n=(Array.isArray(r)?r:String(r||"").split(",")).map(Yct).filter(Boolean),s=[];for(let i of n){let a=`/anime/${i}`;try{let o=await qw(a),c=Me(o),u=yvr(o,i),l=Yf(u.name||c("h1").first().text()),d=uM(o,"sources"),f=d.length?d:vvr(o,i),p=Ivr(f,i,l,a);s.push({vod_id:a,vod_name:l,vod_pic:zct(u.image||c("img[alt]").first().attr("src")||""),vod_remarks:u.numberOfEpisodes?`\u5168 ${u.numberOfEpisodes} \u96C6`:"",vod_content:Yf(u.description||""),vod_director:Gct(c,"\u5BFC\u6F14"),vod_actor:Gct(c,"\u58F0\u4F18"),vod_year:String(u.datePublished||"").slice(0,4),vod_area:Yf(u.countryOfOrigin||""),vod_class:Array.isArray(u.genre)?u.genre.join(","):Yf(u.genre||""),...p})}catch(o){console.error("xifannext detail failed:",i,o.message)}}return{list:s}}async function Mvr(t,e){let r=String(t.body?.id||"").trim(),n=fvr(r),s=Number(n.episodeId||(r.match(/\/play\/(\d+)/)||[])[1]||0),i=String(n.sourceCode||(()=>{try{return new URL(r,Kl).searchParams.get("source")||""}catch{return""}})()).trim();if(!s)return{parse:0,url:r,header:ace(r)};try{let a=await Fw("get_play_url",{p_episode_id:s}),o=Array.isArray(a?.urls)?a.urls:[],c=o.find(l=>String(l.source_code||"")===i)||o[0]||{},u=String(c.url||"").trim();if(!u){let l=await Avr("issue-hls-playback",{episode_id:s});u=String(l?.url||"").trim()}if(!u)throw new Error("play url not found");return{parse:0,url:u,header:ace(u)}}catch(a){return console.error("xifannext play failed:",s,a.message),{parse:0,url:r,header:ace(r)}}}var Zct={meta:{key:_a.key,name:"\u300C\u76F4\u300D\u7A00\u996D\xB2",type:3},api:async t=>{t.post("/init",Tvr),t.post("/home",wvr),t.post("/category",kvr),t.post("/detail",Bvr),t.post("/play",Mvr),t.post("/search",Lvr)}};var _E="https://4kzn.com",Wvr={"User-Agent":Gr,"Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Referer:`${_E}/`},uce={key:"by",name:"",init:"date",value:[{n:"\u53D1\u5E03",v:"date"},{n:"\u66F4\u65B0",v:"modified"},{n:"\u6D4F\u89C8",v:"views"},{n:"\u70B9\u8D5E",v:"like"}]},eut=[{type_id:"books/zuixin",type_name:"\u5F71\u89C6"},{type_id:"books/top250",type_name:"TOP250"},{type_id:"books/juji",type_name:"\u5267\u96C6"},{type_id:"books/dianying",type_name:"\u7535\u5F71"},{type_id:"books/xiliehj",type_name:"\u7CFB\u5217\u5408\u96C6"},{type_id:"books/manwei",type_name:"\u6F2B\u5A01\u7535\u5F71\u7CFB\u5217\u5408\u96C6"},{type_id:"books/mztkn",type_name:"\u540D\u4FA6\u63A2\u67EF\u5357\u5267\u573A\u7248\u5408\u96C6"},{type_id:"books/hanniba",type_name:"\u6C49\u5C3C\u62D4\u5408\u96C6"}],lM={};for(let t of eut)lM[t.type_id]=[uce];lM["books/juji"]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5267\u60C5",v:"juq"},{n:"\u60CA\u609A",v:"jings"},{n:"\u72AF\u7F6A",v:"fanzuii"},{n:"\u52A8\u4F5C",v:"jjdongzuo"},{n:"\u5386\u53F2",v:"jjlishi"},{n:"\u6218\u4E89",v:"jjzhanzheng"},{n:"\u5192\u9669",v:"jjmaoxian"},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u6700\u65B0",v:"zuixin-juji"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u5BB6\u5EAD",v:"\u5BB6\u5EAD"},{n:"\u6050\u6016",v:"\u6050\u6016"},{n:"\u897F\u90E8",v:"\u897F\u90E8"},{n:"\u52A8\u753B",v:"\u52A8\u753B"}]},uce];lM["books/dianying"]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u559C\u5267",v:"xiju"},{n:"\u7231\u60C5",v:"aiqing"},{n:"\u5267\u60C5",v:"juqing"},{n:"\u60AC\u7591",v:"xuanyi"},{n:"\u4F20\u8BB0",v:"zhuanji"},{n:"\u52A8\u4F5C",v:"dongzuo"},{n:"\u79D1\u5E7B",v:"kehuan"},{n:"\u72AF\u7F6A",v:"fanzui"},{n:"\u5947\u5E7B",v:"qihuan"},{n:"\u5192\u9669",v:"maoxian"},{n:"\u5BB6\u5EAD",v:"jiating"},{n:"\u8FD0\u52A8",v:"yundong"},{n:"\u6B4C\u821E",v:"gewu"},{n:"\u6218\u4E89",v:"zhanzheng"},{n:"\u60CA\u609A",v:"jingsong"},{n:"\u897F\u90E8",v:"xibu"},{n:"\u52A8\u753B",v:"donghua"},{n:"\u707E\u96BE",v:"zainan"},{n:"\u6050\u6016",v:"kongbu"},{n:"\u5386\u53F2",v:"lishi"},{n:"\u97F3\u4E50",v:"yinyue"},{n:"\u540C\u6027",v:"tongxing"},{n:"\u7EAA\u5F55\u7247",v:"jilupian"},{n:"\u53E4\u88C5",v:"guzhuang"},{n:"\u513F\u7AE5",v:"ertong"},{n:"\u6B66\u4FA0",v:"\u6B66\u4FA0"}]},uce];async function lce(t){return(await he.get(t,{headers:Wvr})).data}function rA(t){let e=String(t||"").trim();return e?/^https?:\/\//i.test(e)?e:e.startsWith("//")?`https:${e}`:e.startsWith("/")?`${_E}${e}`:`${_E}/${e.replace(/^\/+/,"")}`:""}function EE(t){return String(t||"").replace(/<[^>]+>/g," ").replace(/ /gi," ").replace(/\s+/g," ").trim()}function tut(t){let e=Me(t),r=[],n=new Set;return e("article.posts-item").each((s,i)=>{let a=e(i).find('a.item-image, h3.item-title a, a[target="_blank"]').first(),o=rA(a.attr("href")||""),c=EE(e(i).find(".item-title a").first().text()||a.text()||e(i).attr("data-title")||"");if(!o||!c||n.has(o))return;n.add(o);let u=rA(e(i).find("img").first().attr("data-src")||e(i).find("img").first().attr("src")||""),l=EE(e(i).find(".line1.text-muted.text-xs, .book-info, .item-desc, .sub-title").first().text());r.push({vod_id:o,vod_name:c,vod_pic:u,vod_remarks:l})}),r}function $vr(t){let e=t.match(/\/books\/[^"']+\/page\/(\d+)/g),r=e?e.map(i=>Number((i.match(/(\d+)$/)||[0,1])[1]||1)):[],n=r.length?Math.max(...r):1,s=/class="next-page[^>]*>\s*<a[^>]*href="[^"]+\/page\/\d+"/i.test(t);return{pagecount:Math.max(n,s?n+1:1)}}async function Fvr(t,e){return{class:eut,filters:lM}}async function Uvr(t,e){try{let r=String(t.body.id||"books/zuixin").replace(/^\/+/,""),n=t.body.page,s=t.body.filters||{},i=parseInt(n,10);(!i||i<1)&&(i=1);let a=r;s.class&&(a=`books/${encodeURIComponent(s.class)}`);let o=i>1?`${_E}/${a}/page/${i}`:`${_E}/${a}`;s.by&&(o+=`?orderby=${s.by}`);let c=await lce(o),u=tut(c),{pagecount:l}=$vr(c);return{page:i,pagecount:l,limit:72,total:l*Math.max(u.length,1),list:u}}catch(r){return console.error("[4kzn][category]",r.message),{page:1,pagecount:0,limit:72,total:0,list:[]}}}async function qvr(t,e){try{let r=String(t.body.id||"").trim();if(!r)return{list:[]};let n=/^https?:\/\//i.test(r)?r:rA(r),s=await lce(n),i=Me(s),a=EE(i("h1, h2, .book-title").first().text())||EE(i("meta[property='og:title']").attr("content")||""),o=rA(i('.book-cover img, meta[property="og:image"]').first().attr("data-src")||i('.book-cover img, meta[property="og:image"]').first().attr("content")||i(".book-cover img").first().attr("src")||""),c=EE(i("meta[name='description']").attr("content")||i(".panel-body.single").text()),u=[],l=new Set,d=[".site-go a[target='_blank']","a[target='_blank'][href*='pan.quark.cn']","a[href*='quark.cn']","a[href*='uc.cn']","a[href*='aliyundrive.com']","a[href*='115.com']"].join(", ");if(i(d).each((p,m)=>{let h=rA(i(m).attr("href")||"");!h||l.has(h)||(l.add(h),u.push(h))}),!u.length){let p=i("a.external[href*='pan.quark.cn'], a[href*='pan.quark.cn'], a[href*='quark.cn']").first(),m=rA(p.attr("href")||"");m&&u.push(m)}let f={vod_id:n,vod_name:a,vod_pic:o,vod_content:c};if(u.length){let p=await Rr(u,t);p?.froms&&p?.urls&&(f.vod_play_from=p.froms,f.vod_play_url=p.urls,f.vod_links=p.links)}return{list:[f]}}catch(r){return console.error("[4kzn][detail]",r.message),{list:[]}}}async function jvr(t,e){try{let r=t.body.wd,n=t.body.page,s=parseInt(n,10);if((!s||s<1)&&(s=1),!r)return{page:s,pagecount:0,limit:72,total:0,list:[]};let i=`${_E}/?s=${encodeURIComponent(r)}`,a=await lce(i),o=tut(a);if(!o.length){let c=Me(a);o=[],c("a[href*='/book/'], a[href*='/sites/']").each((u,l)=>{let d=c(l),f=rA(d.attr("href")||""),p=EE(d.text());!f||!p||p.includes(r)&&o.push({vod_id:f,vod_name:p,vod_pic:"",vod_remarks:""})})}return{page:s,pagecount:1,limit:72,total:o.length,list:o}}catch(r){return console.error("[4kzn][search]",r.message),{page:1,pagecount:0,limit:72,total:0,list:[]}}}var rut={meta:{key:"4kzn",name:"\u300C\u76D8\u300D\u6307\u5357",type:3},api:async t=>{t.post("/init",qr),t.post("/home",Fvr),t.post("/category",Uvr),t.post("/detail",qvr),t.post("/play",Or),t.post("/search",jvr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Nr)}};var jw="https://kafeizhibo.com",Hvr=`${jw}/api/v1`,uut="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/134.0.0.0 Safari/537.36",Qvr={"User-Agent":uut,Accept:"application/json, text/plain, */*",Referer:`${jw}/pc/replay`},dce="live:",dM="schedule:",Gvr=/\.(m3u8|mp4|mkv|flv|avi|webm|mov)(?:[?#]|$)/i,nut=[{type_id:"schedule",type_name:"\u8D5B\u7A0B"},{type_id:"live",type_name:"\u76F4\u64AD"},{type_id:"replay",type_name:"\u5F55\u64AD"}],Vvr=[{n:"\u5168\u90E8",v:"all"},{n:"\u70ED\u95E8",v:"hot"},{n:"\u8DB3\u7403",v:"1"},{n:"\u7BEE\u7403",v:"2"},{n:"\u7F51\u7403",v:"3"},{n:"\u53F0\u7403",v:"19"}],zvr=[{n:"\u5168\u90E8",v:"all"},{n:"\u70ED\u95E8",v:"hot"},{n:"NBA",v:"nba"},{n:"\u8DB3\u7403",v:"1"},{n:"\u7BEE\u7403",v:"2"}],Kvr=[{n:"\u5168\u90E8",v:"all"},{n:"\u70ED\u95E8",v:"hot"},{n:"\u8DB3\u7403",v:"1"},{n:"\u7BEE\u7403",v:"2"},{n:"\u7F51\u7403",v:"3"},{n:"\u53F0\u7403",v:"19"}],sut={live:[{key:"type",name:"",init:"all",value:Vvr}],replay:[{key:"type",name:"",init:"all",value:zvr}],schedule:[{key:"type",name:"",init:"all",value:Kvr}]},lut=new Map;function xt(t){return String(t??"").trim()}function iut(t){return t!=null&&xt(t)!==""}function SE(t=""){let e=xt(t);if(!e)return"";if(/^https?:\/\//i.test(e))return e;if(e.startsWith("//"))return`https:${e}`;try{return new URL(e,jw).toString()}catch{return e}}function dut(t=""){let e=xt(t);return e?/^https?:\/\//i.test(e)?e:e.startsWith("//")?`https:${e}`:e.startsWith("/")?SE(e):/^[\w.-]+\.[a-z]{2,}(?:[/:?#]|$)/i.test(e)?`https://${e}`:e:""}function Yvr(t=""){return/^https?:\/\//i.test(xt(t))}function Jvr(t=""){return Gvr.test(xt(t))}function fM(t={}){let e=SE(t.cover_image);return e&&!e.includes("default_cover")?e:SE(t.home_team_logo)||SE(t.away_team_logo)||e}function fce(t={}){return SE(t.screenshot)||fM(t.match_info||t)||SE(t.avatar)||fM(t)}function Yl(t={}){return!iut(t.home_score)||!iut(t.away_score)?"":`${xt(t.home_score)} - ${xt(t.away_score)}`}function rm(t={}){let e=xt(t.home_team),r=xt(t.away_team),n=xt(t.league_name),s=xt(t.match_name||t.title||t.name||(t.match_id??t.id)),i=e&&r?`${e} vs ${r}`:e||r||s||"\u8D5B\u4E8B\u5F55\u50CF";return n?`${i} (${n})`:i}function pce(t=""){let e=xt(t).toLowerCase();return{live:"\u76F4\u64AD\u4E2D",online:"\u5728\u7EBF",finished:"\u5DF2\u7ED3\u675F",upcoming:"\u672A\u5F00\u59CB"}[e]||xt(t)}function Xvr(t=""){let e=xt(t),r=e.match(/^(\d{4})-(\d{2})-(\d{2})\s+(\d{2}:\d{2})/);return r?{time:r[4],date:`${r[2]}-${r[3]}`}:{time:e,date:""}}function vE(t={}){let e=t.data??t;return Array.isArray(e)?e:Array.isArray(e?.list)?e.list:Array.isArray(e?.records)?e.records:Array.isArray(e?.items)?e.items:[]}function aut(t={}){let e=t.data??t,r=[e?.total,e?.count,t?.total,t?.count];for(let n of r){let s=Number.parseInt(n,10);if(Number.isFinite(s)&&s>=0)return s}return null}function out(t,e,r,n=null){let s=Number.isFinite(n)?n:null;return{page:t,pagecount:s===null?t+(r.length>=e?1:0):Math.max(t,Math.ceil(s/e)),limit:e,total:s===null?(t-1)*e+r.length+(r.length>=e?1:0):s,list:r}}async function Hw(t,e={}){let r=t.startsWith("http")?t:`${Hvr}${t}`,n=await he.get(r,{params:e,headers:Qvr,timeout:15e3,validateStatus:()=>!0});if(n.status<200||n.status>=400)throw new Error(`HTTP ${n.status} @ ${r}`);let s=typeof n.data=="string"?JSON.parse(n.data||"{}"):n.data||{},i=Number(s?.code);if(Number.isFinite(i)&&i!==0&&i!==200)throw new Error(s?.message||s?.msg||`API code=${s.code}`);return s}async function fut(t=1,e=30,{league:r="",type:n=""}={}){let s={page:t,size:e};return r?s.league=r:n&&n!=="all"&&n!=="nba"&&(s.type=n),Hw("/recordings",s)}async function put(t="all"){return Hw("/archor",{type:t||"all",_t:Date.now()})}async function Zvr(t){return Hw(`/room/${encodeURIComponent(t)}`)}async function mut(t="hot",e=1,r=30){return Hw("/schedule",{type:t||"hot",page:e,size:r,platform:"pc",_t:Date.now()})}function hut(t={}){let e=xt(t.match_id??t.id),r=xt(t.recording_count),n=[Yl(t),xt(t.start_time),r?`${r}\u4E2A\u5F55\u50CF`:""].filter(Boolean);return{vod_id:e,vod_name:rm(t),vod_pic:fM(t),vod_remarks:n.join(" | "),type_name:xt(t.league_name)}}function gut(t={}){let e=t.match_info||t,r=xt(t.room_id||t.archor?.room_id||t.match_id),n=pce(t.status||e.status),s=xt(t.heat),i=[n,Yl(t)||Yl(e),s?`\u70ED\u5EA6 ${s}`:""].filter(Boolean);return{vod_id:r?`${dce}${r}`:"",vod_name:xt(t.title)||rm(e),vod_pic:fce(t),vod_remarks:i.join(" | "),type_name:xt(t.league_name||e.league_name)}}function Aut(t={}){if(t.archor?.room_id)return xt(t.archor.room_id);let r=(Array.isArray(t.archors)?t.archors:[]).find(n=>n?.room_id);return xt(r?.room_id||t.room_id)}function yut(t={}){let e=Aut(t),r=xt(t.match_id??t.id),n=e&&r?`${dM}${r}:${e}`:"",s=Xvr(t.start_time),i=[s.time||pce(t.status),s.date,Yl(t),t.is_hot?"\u70ED\u95E8":""].filter(Boolean);return n&&lut.set(n,t),{vod_id:n,vod_name:xt(t.title)||rm(t),vod_pic:fce(t),vod_remarks:i.join(" | "),type_name:xt(t.league_name)}}function xut(t,e){return(xt(t)||e).replace(/[$#]/g," ").replace(/\s+/g," ").trim()||e}function cut(t=[],e="\u64AD\u653E"){return t.map((r,n)=>{let s=dut(r.video_url||r.stream_url||r.url||r.play_url);return s?`${xut(r.title||r.name,`${e}${n+1}`)}$${encodeURIComponent(s)}`:""}).filter(Boolean).join("#")}function eCr(t=""){let e=xt(t);if(!e)return"";try{return decodeURIComponent(e)}catch{return e}}function tCr(t=""){let e=xt(t);return e==="live"?"all":e.startsWith("live_")?e.slice(5)||"all":null}function rCr(t={}){let e=t.room_info||{},r=t.archor||{},n=t.teams||{};return{match_id:e.match_id||t.match_id,room_id:e.room_id||r.room_id,title:e.title||r.name,league_name:e.league||e.league_name,home_team:n.home?.name||e.home_team,away_team:n.away?.name||e.away_team,home_team_logo:n.home?.logo,away_team_logo:n.away?.logo,home_score:e.home_score??t.home_score,away_score:e.away_score??t.away_score,status:t.status||e.status||r.status,screenshot:r.screenshot,screenshot_updated_at:r.screenshot_updated_at,avatar:r.avatar||e.avatar,heat:r.heat,notice:e.notice||e.notice_h5}}function nCr(t={}){return{match_id:t.match_id||t.id,room_id:Aut(t),title:xt(t.title)||rm(t),league_name:t.league_name,home_team:t.home_team||t.homeTeam?.name,away_team:t.away_team||t.awayTeam?.name,home_team_logo:t.home_team_logo||t.homeTeam?.logo,away_team_logo:t.away_team_logo||t.awayTeam?.logo,home_score:t.home_score,away_score:t.away_score,status:t.status,screenshot:t.screenshot,avatar:t.archor?.avatar,heat:t.archor?.heat,start_time:t.start_time,notice:t.is_hot?"\u70ED\u95E8\u8D5B\u7A0B":""}}function sCr(t={}){let e=[],r=new Set,n=(s={},i="\u7EBF\u8DEF")=>{let a=dut(s.stream_url||s.url||s.play_url);!a||r.has(a)||(r.add(a),e.push({name:xut(s.name||s.title,`${i}${e.length+1}`),url:a}))};return n(t,"\u7EBF\u8DEF"),n(t.archor,"\u4E3B\u64AD"),(Array.isArray(t.archors)?t.archors:[]).forEach(s=>n(s,"\u4E3B\u64AD")),(Array.isArray(t.signals)?t.signals:[]).forEach(s=>n(s,"\u7EBF\u8DEF")),[t.external_signals_pc,t.external_signals,t.external_signals_h5,t.room_info?.external_signals_pc,t.room_info?.external_signals,t.room_info?.external_signals_h5].forEach(s=>{(Array.isArray(s)?s:[]).forEach(i=>n(i,"\u5916\u90E8"))}),e}async function iCr(t,e){return{}}async function aCr(t,e){try{let r=await mut("all",1,30),n=vE(r).map(yut).filter(s=>s.vod_id&&s.vod_name);return{class:nut,filters:sut,list:n}}catch(r){return console.error("kafei home failed:",r.message),{class:nut,filters:sut,list:[]}}}async function oCr(t,e){let r=xt(t.body?.id||"all"),n=Math.max(1,Number.parseInt(t.body?.page||1,10)),s=t.body?.filters||{};if(r==="schedule"){let u=xt(s.type||"all"),l=30;try{let d=await mut(u,n,l),f=vE(d).map(yut).filter(p=>p.vod_id&&p.vod_name);return out(n,l,f,aut(d))}catch(d){return console.error("kafei schedule category failed:",u,d.message),{page:n,pagecount:n,limit:l,total:0,list:[]}}}let i=tCr(r);if(i!==null){let u=xt(s.type||i||"all");if(n>1)return{page:n,pagecount:1,limit:100,total:0,list:[]};try{let l=await put(u),d=vE(l).map(gut).filter(f=>f.vod_id&&f.vod_name);return{page:1,pagecount:1,limit:d.length||100,total:d.length,list:d}}catch(l){return console.error("kafei live category failed:",r,l.message),{page:1,pagecount:1,limit:100,total:0,list:[]}}}let a=r==="replay"?xt(s.type||"all"):r,o=a.toLowerCase(),c=o==="nba"?20:30;try{let u=await fut(n,c,{league:o==="nba"?"NBA":"",type:o==="all"?"":a}),l=vE(u).map(hut).filter(d=>d.vod_id&&d.vod_name);return out(n,c,l,aut(u))}catch(u){return console.error("kafei category failed:",r,u.message),{page:n,pagecount:n,limit:c,total:0,list:[]}}}async function cCr(t,e){let r=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],n=[];for(let s of r){let i=xt(s);if(i)try{if(i.startsWith(dce)||i.startsWith(dM)){let h=i.startsWith(dM),A=h?i.slice(dM.length).split(":").pop():i.slice(dce.length),g=h?lut.get(i):null,b=g?null:await Zvr(A),y=g||b?.data||{},x=g?nCr(y):rCr(y),C=sCr(y).map(R=>`${R.name}$${encodeURIComponent(R.url)}`).join("#");n.push({vod_id:i,vod_name:xt(x.title)||rm(x),vod_pic:fce(x),type_name:xt(x.league_name),vod_remarks:[pce(x.status),Yl(x)].filter(Boolean).join(" | "),vod_content:[xt(x.league_name),xt(x.title)||rm(x),Yl(x)?`\u6BD4\u5206 ${Yl(x)}`:"",xt(x.start_time)?`\u6BD4\u8D5B\u65F6\u95F4: ${xt(x.start_time)}`:"",xt(x.notice)].filter(Boolean).join("\uFF0C"),vod_play_from:C?"\u76F4\u64AD":"",vod_play_url:C});continue}let o=(await Hw(`/match/${encodeURIComponent(i)}/recordings`)).data||{},c=o.match||o,u=Array.isArray(o.replays)?o.replays:[],l=Array.isArray(o.highlights)?o.highlights:[],d=[],f=[],p=cut(u,"\u5F55\u50CF");p&&(d.push("\u5F55\u50CF"),f.push(p));let m=cut(l,"\u96C6\u9526");m&&(d.push("\u96C6\u9526"),f.push(m)),n.push({vod_id:i,vod_name:rm(c),vod_pic:fM(c),type_name:xt(c.league_name),vod_remarks:Yl(c),vod_content:[xt(c.league_name),xt(c.match_round),rm(c),Yl(c)?`\u6BD4\u5206 ${Yl(c)}`:"",xt(c.start_time)?`\u6BD4\u8D5B\u65F6\u95F4: ${xt(c.start_time)}`:""].filter(Boolean).join("\uFF0C"),vod_play_from:d.join("$$$"),vod_play_url:f.join("$$$")})}catch(a){console.error("kafei detail failed:",i,a.message)}}return{list:n}}async function uCr(t,e){let r=eCr(t.body?.id);return r?{parse:Yvr(r)&&!Jvr(r)?1:0,url:r,header:{"User-Agent":uut,Referer:jw,Origin:jw}}:{parse:0,url:"",header:{}}}async function lCr(t,e){let r=xt(t.body?.wd||t.body?.keyword).toLowerCase(),n=100;if(!r)return{page:1,pagecount:1,limit:n,total:0,list:[]};try{let[s,i]=await Promise.allSettled([put("all"),fut(1,n)]),a=s.status==="fulfilled"?vE(s.value):[],o=i.status==="fulfilled"?vE(i.value):[],c=a.filter(d=>{let f=d.match_info||d;return[d.title,d.name,d.home_team,d.away_team,d.league_name,f.home_team,f.away_team,f.league_name].map(xt).join(" ").toLowerCase().includes(r)}).map(gut),u=o.filter(d=>[d.home_team,d.away_team,d.league_name,d.match_name,d.title].map(xt).join(" ").toLowerCase().includes(r)).map(hut),l=[...c,...u].filter(d=>d.vod_id&&d.vod_name);return{page:1,pagecount:1,limit:n,total:l.length,list:l}}catch(s){return console.error("kafei search failed:",s.message),{page:1,pagecount:1,limit:n,total:0,list:[]}}}var but={meta:{key:"kafei",name:"\u300C\u76F4\u300D\u5496\u5561",type:3},api:async t=>{t.post("/init",iCr),t.post("/home",aCr),t.post("/category",oCr),t.post("/detail",cCr),t.post("/play",uCr),t.post("/search",lCr)}};var _ut=require("crypto");var mce="/embySpider",Jl={clientName:"SenPlayer",clientVersion:"6.0.5",deviceName:"iPhone",language:"zh-cn",userAgent:"SenPlayer/6.0.5"};function dCr(){return(0,_ut.randomUUID)().toUpperCase()}function Sut(t,e=!1){return $o(t)||(e?dCr():"")}function CE({token:t="",contentType:e=!1,deviceId:r="",userId:n=""}={}){let s=Sut(r),i=$o(t),a=$o(n),o={"X-Emby-Authorization":[`MediaBrowser Token="${i}"`,`UserId="${a}"`,`Client="${Jl.clientName}"`,`Device="${Jl.deviceName}"`,`DeviceId="${s}"`,`Version="${Jl.clientVersion}"`].join(", "),"X-Emby-Client":Jl.clientName,"X-Emby-Device-Name":Jl.deviceName,"X-Emby-Device-Id":s,"X-Emby-Client-Version":Jl.clientVersion,"X-Emby-Language":Jl.language,"User-Agent":Jl.userAgent};return e&&(o["Content-Type"]="application/json"),i&&(o["X-Emby-Token"]=i),o}function vut(t){return String(t||"").trim().replace(/\/+$/,"")}function $o(t){return String(t||"").trim()}function fCr(t){return String(t||"").trim()}function Cut(t){return $o(t).toLowerCase().replace(/[^a-z0-9_-]+/g,"-").replace(/^-+|-+$/g,"").slice(0,40)}function pCr(t,e){let n=`${t?.name||""}-${t?.host||""}-${t?.username||""}`.toLowerCase().replace(/^https?:\/\//,"").replace(/[^a-z0-9_-]+/g,"-").replace(/^-+|-+$/g,"").slice(0,28),s=n||RQ().slice(0,8);for(;e.has(s);)s=`${(n||"emby").slice(0,24)}-${RQ().slice(0,4)}`;return e.add(s),s}function mCr(t,e,r={}){let n=vut(t?.host),s=$o(t?.username),i=$o(t?.name),a=Cut(t?.id),o=a&&!e.has(a)?a:pCr({name:i,host:n,username:s},e);return e.add(o),{id:o,name:i,host:n,username:s,password:String(t?.password||""),deviceId:Sut(t?.deviceId,r.ensureDeviceId),logo:fCr(t?.logo),libraries:hce(t?.libraries),libraryStats:Iut(t?.libraryStats)}}function Iut(t={}){return{movieCount:Math.max(0,Number(t?.movieCount||0)||0),seriesCount:Math.max(0,Number(t?.seriesCount||0)||0)}}function hce(t=[]){return Array.isArray(t)?t.map(e=>({id:$o(e?.id||e?.Id),name:$o(e?.name||e?.Name),collectionType:$o(e?.collectionType||e?.CollectionType)})).filter(e=>e.id).map(e=>({...e,name:e.name||e.id})):[]}function hCr(t=[]){return hce(t.map(e=>({id:e?.Id,name:e?.Name,collectionType:e?.CollectionType})))}function pM(t={},e={}){let r=new Set;return{servers:(Array.isArray(t?.servers)?t.servers:[]).filter(i=>i&&typeof i=="object").filter(i=>$o(i?.id)||$o(i?.name)||vut(i?.host)||$o(i?.username)||String(i?.password||"")).map(i=>mCr(i,r,e)).filter(i=>i.host||i.username)}}function gCr(t){return{servers:t.servers}}var gce=async t=>{let e=await t.db.getObjectDefault(mce,{});return pM(e)},Qw=async t=>(await gce(t)).servers,IE=async(t,e="")=>{let r=await gce(t),n=Cut(e);return n&&r.servers.find(s=>s.id===n)||null},ACr=async(t,e)=>{let r=pM(e,{ensureDeviceId:!0});return await t.db.push(mce,gCr(r)),r},yCr=async t=>{await t.db.delete(mce)};async function xCr(t){let{host:e,username:r,password:n,deviceId:s}=t,i=`${e}/emby/Users/authenticatebyname`,o=(await he.post(i,{Username:r,Pw:n||"",Password:n||""},{headers:CE({contentType:!0,deviceId:s}),timeout:1e4})).data;if(!o?.AccessToken||!o?.User?.Id)throw new Error("\u8BA4\u8BC1\u5931\u8D25\uFF0C\u8BF7\u68C0\u67E5\u7528\u6237\u540D\u548C\u5BC6\u7801");return o}function bCr(t="",e="",r=""){return CE({token:t,contentType:!0,deviceId:e,userId:r})}async function mM(t,e="",r="",n=""){return(await he.get(t,{headers:e?bCr(e,r,n):CE({deviceId:r}),timeout:1e4})).data}async function ECr(t,e="",r=""){try{return await mM(`${t.host}/emby/System/Info/Public`,e,t.deviceId,r)}catch{try{return await mM(`${t.host}/emby/System/Info`,e,t.deviceId,r)}catch{return{}}}}async function _Cr(t,e,r){try{let n=await mM(`${t.host}/emby/Users/${encodeURIComponent(e)}/Views`,r,t.deviceId,e);return Array.isArray(n?.Items)?n.Items:[]}catch{return[]}}async function Eut(t,e,r,n,s){let i=new URLSearchParams({ParentId:String(n||""),Recursive:"true",IncludeItemTypes:s,StartIndex:"0",Limit:"1"});try{let a=await mM(`${t.host}/emby/Users/${encodeURIComponent(e)}/Items?${i.toString()}`,r,t.deviceId,e);return Math.max(0,Number(a?.TotalRecordCount||0)||0)}catch{return 0}}async function SCr(t,e,r,n=[]){let s={movieCount:0,seriesCount:0},i=[];for(let a of n){let o=String(a?.Id||"");if(!o)continue;let c=String(a?.CollectionType||"").toLowerCase();(!c||c==="movies")&&i.push(Eut(t,e,r,o,"Movie").then(u=>{s.movieCount+=u})),(!c||c==="tvshows")&&i.push(Eut(t,e,r,o,"Series").then(u=>{s.seriesCount+=u}))}return await Promise.allSettled(i),s}async function vCr(t){let e=await xCr(t),r=e.AccessToken,n=e.User.Id,[s,i]=await Promise.all([ECr(t,r,n),_Cr(t,n,r)]),a=await SCr(t,n,r,i);return{serverName:$o(s?.ServerName),libraries:hCr(i),libraryStats:a}}function CCr(t,e={}){return{...t,name:t.name||e.serverName||"Emby",libraries:hce(e.libraries||t.libraries),libraryStats:Iut(e.libraryStats||t.libraryStats)}}function ICr(t){return t?.response?.status===401?"\u7528\u6237\u540D\u6216\u5BC6\u7801\u9519\u8BEF":`\u8FDE\u63A5\u5931\u8D25: ${t.message}`}async function Ace(t){t.get("/setting",async(e,r)=>{r.send({code:0,data:await gce(e.server)})}),t.post("/verify",async(e,r)=>{let s=pM({servers:[e.body||{}]},{ensureDeviceId:!0}).servers[0];if(!s||!s.host||!s.username){r.send({code:-1,message:"\u670D\u52A1\u5668\u5730\u5740\u548C\u7528\u6237\u540D\u4E0D\u80FD\u4E3A\u7A7A"});return}try{let i=await vCr(s);r.send({code:0,data:CCr(s,i)})}catch(i){r.send({code:-1,message:ICr(i)})}}),t.put("/setting",async(e,r)=>{let n=pM(e.body||{},{ensureDeviceId:!0});for(let i of n.servers)if(!i.host||!i.username){r.send({code:-1,message:`${i.name||"Emby"} \u7684\u670D\u52A1\u5668\u5730\u5740\u548C\u7528\u6237\u540D\u4E0D\u80FD\u4E3A\u7A7A`});return}let s=await ACr(e.server,n);r.send({code:0,data:s})}),t.delete("/setting",async(e,r)=>{await yCr(e.server),r.send({code:0})})}var Ece="::",Out=["PrimaryImageAspectRatio","BasicSyncInfo","ProductionYear","RecursiveItemCount","ChildCount"].join(","),yce=new Map;function TCr(){return{baseUrl:"",username:"",password:"",deviceId:"",accessToken:"",userId:""}}function wCr(t){let e=t||"default";return yce.has(e)||yce.set(e,TCr()),yce.get(e)}async function RCr(t,e=""){let r=await IE(t,e),n=String(r?.host||"").replace(/\/$/,""),s=r?.username||"",i=r?.password||"",a=r?.deviceId||"",o=wCr(r?.id||e);if(!n||!s)throw new Error("\u8BF7\u5728\u7BA1\u7406\u9875\u9762\u914D\u7F6E Emby \u670D\u52A1\u5668\u5730\u5740\u548C\u7528\u6237\u540D");return o.baseUrl===n&&o.username===s&&o.password===i&&o.deviceId===a||(o.baseUrl=n,o.username=s,o.password=i,o.deviceId=a,o.accessToken="",o.userId=""),o}async function Sce(t){let e=`${t.baseUrl}/emby/Users/authenticatebyname`,n=(await he.post(e,{Username:t.username,Pw:t.password||"",Password:t.password||""},{headers:CE({contentType:!0,deviceId:t.deviceId}),timeout:15e3})).data;if(!n||!n.AccessToken||!n.User?.Id)throw new Error("Emby\u8BA4\u8BC1\u5931\u8D25\uFF0C\u8BF7\u68C0\u67E5\u7528\u6237\u540D\u548C\u5BC6\u7801");t.accessToken=n.AccessToken,t.userId=n.User.Id}async function nm(t,e=""){let r=await RCr(t,e);return(!r.accessToken||!r.userId)&&await Sce(r),r}function hM(t){return CE({token:t.accessToken,deviceId:t.deviceId,userId:t.userId})}function TE(t,e){let r=String(t||""),n=String(e||"");return!r||!n?"":`${encodeURIComponent(r)}${Ece}${n}`}function Put(t){let e=String(t||""),r=e.indexOf(Ece);if(r<0)return{serverId:"",itemId:""};let n=e.slice(0,r);return{serverId:decodeURIComponent(n),itemId:e.slice(r+Ece.length)}}function NCr(t){return String(t.body?.id||"").trim()}function Tut(t){return String(t||"").split(",")[0].trim()}function OCr(t){let r=Tut(t?.headers?.["x-forwarded-proto"])||t?.protocol||"http",s=Tut(t?.headers?.["x-forwarded-host"])||t?.headers?.host||"";return s?`${r}://${s}`:""}function PCr(t=""){let e=String(t||"").toLowerCase();return e==="movies"?"Movie":e==="tvshows"?"Series":"Movie,Series"}function xce(t){let e=Number(t);return Number.isFinite(e)&&e>0?Math.floor(e):0}function DCr(t={}){return String(t?.Type||"").toLowerCase()!=="series"?0:xce(t.RecursiveItemCount)||xce(t.EpisodeCount)||xce(t.ChildCount)}function kCr(t=[]){let e=[],r=t.reduce((n,s)=>Math.max(n,s.list.length),0);for(let n=0;n<r;n++)for(let s of t)s.list[n]&&e.push(s.list[n]);return e}async function Dut(t,e){let r=await nm(t,e),n=await nA(`/emby/Users/${r.userId}/Views`,t,e);return Array.isArray(n?.Items)?n.Items:[]}function _ce(t=[]){let e=[];for(let r of t){let n=String(r?.Id||r?.id||"");n&&e.push({n:r.Name||r.name||n,v:n})}return e.length===0?[]:[{key:"library",name:"",init:e[0].v,value:e}]}function bce(t=[]){return(Array.isArray(t)?t:[]).map(e=>{let r=String(e?.id||e?.Id||"").trim();return r?{type_id:r,type_name:String(e?.name||e?.Name||r).trim()||r}:null}).filter(Boolean)}async function nA(t,e,r="",n={}){let s=await nm(e,r),i=`${s.baseUrl}${t}`;try{return(await he({method:n.method||"GET",url:i,headers:hM(s),data:n.data,timeout:15e3})).data}catch(a){if(a?.response?.status===401)return s.accessToken="",await Sce(s),(await he({method:n.method||"GET",url:i,headers:hM(s),data:n.data,timeout:15e3})).data;throw a}}function LCr(t=""){let e=String(t||"").trim();return/^[A-Za-z]+$/.test(e)?e:"Primary"}function BCr(t,e=300){let r=parseInt(t||e,10);return!Number.isFinite(r)||r<=0?e:Math.min(r,1200)}function kut(t,e="",r=null){if(t.ImageTags?.Primary){let s=`/spider/emby/3/image?${new URLSearchParams({serverId:e,itemId:String(t.Id||""),maxHeight:"300",tag:String(t.ImageTags.Primary)}).toString()}`,i=OCr(r);return i?`${i}${s}`:s}return""}function Lut(t,e="",r=null){let n=DCr(t);return{vod_id:TE(e,t.Id),vod_name:t.Name||"",vod_pic:kut(t,e,r),vod_remarks:n>0?String(n):"",vod_year:t.ProductionYear?String(t.ProductionYear):""}}async function wut(t,e){return{}}async function MCr(t,e){let r=t.query||{},n=String(r.serverId||"").trim(),s=String(r.itemId||"").trim();if(!n||!s)return e.code(404),"";try{let i=await nm(t.server,n),a=LCr(r.type||"Primary"),o=new URLSearchParams({maxHeight:String(BCr(r.maxHeight,300))}),c=String(r.tag||"").trim();c&&o.set("tag",c);let u=`${i.baseUrl}/emby/Items/${encodeURIComponent(s)}/Images/${a}?${o.toString()}`,l;try{l=await he.get(u,{responseType:"stream",headers:hM(i),timeout:15e3})}catch(d){if(d?.response?.status!==401)throw d;i.accessToken="",await Sce(i),l=await he.get(u,{responseType:"stream",headers:hM(i),timeout:15e3})}return e.header("Content-Type",l.headers?.["content-type"]||"image/jpeg"),e.header("Cache-Control","private, max-age=86400"),l.headers?.["content-length"]&&e.header("Content-Length",l.headers["content-length"]),e.send(l.data)}catch(i){return console.error("emby image failed:",i.message),e.code(i?.response?.status===404?404:502),""}}async function WCr(t,e){try{let n=(await Qw(t.server)).filter(a=>a?.host&&a?.username);if(n.length===0)return{class:[],filters:{}};let s=n.map((a,o)=>({type_id:a.id,type_name:a.name||`Emby ${o+1}`})),i={};for(let a of n){let o=a.id;i[o]=_ce(a.libraries)}return{class:s,filters:i}}catch(r){return console.error("emby home failed:",r.message),{class:[],filters:{}}}}async function $Cr(t,e){let r=String(t.params?.serverId||"").trim();if(!r)return{class:[],filters:{}};try{let n=await IE(t.server,r),s=bce(n?.libraries);if(s.length===0){let i=await Dut(t.server,r);s=bce(i)}return{class:s,filters:{}}}catch(n){console.error("emby server home failed:",n.message);let s=await IE(t.server,r).catch(()=>null);return{class:bce(s?.libraries),filters:{}}}}async function But(t,e,r="",n={}){let s=t.body?.filters||{},i=Math.max(1,parseInt(t.body?.page||1,10)),a=20,o=(i-1)*a;if(!e)return{page:i,pagecount:i,limit:a,total:0,list:[],filters:n.filterKey?{}:void 0};try{let c=await nm(t.server,e),u=await Dut(t.server,e),l=_ce(u),d=String(r||"").trim();!d&&n.useFilterLibrary!==!1&&(d=String(s.library||"").trim()),d||(d=String(u[0]?.Id||"").trim());let f="Movie,Series";if(d){let y=await nA(`/emby/Users/${c.userId}/Items/${d}`,t.server,e);f=PCr(y?.CollectionType)}let p=new URLSearchParams({StartIndex:String(o),Limit:String(a),Recursive:"true",Fields:Out,ImageTypeLimit:"1",EnableImageTypes:"Primary",IncludeItemTypes:f,SortBy:"DateLastContentAdded,DateCreated",SortOrder:"Descending"});d&&p.set("ParentId",d);let m=await nA(`/emby/Users/${c.userId}/Items?${p.toString()}`,t.server,e),h=m?.Items||[],A=m?.TotalRecordCount||h.length,g=h.map(y=>Lut(y,e,t)),b={page:i,pagecount:Math.max(i,Math.ceil(A/a)),limit:a,total:A,list:g};return n.filterKey&&(b.filters={[n.filterKey]:l}),b}catch(c){console.error("emby category failed:",c.message);let u=await IE(t.server,e).catch(()=>null),l={page:i,pagecount:i,limit:a,total:0,list:[]};return n.filterKey&&(l.filters={[n.filterKey]:_ce(u?.libraries)}),l}}async function FCr(t,e){let r=NCr(t);return But(t,r,"",{filterKey:r,useFilterLibrary:!0})}async function UCr(t,e){let r=String(t.params?.serverId||"").trim(),n=String(t.body?.id||"").trim();return But(t,r,n,{useFilterLibrary:!1})}async function Rut(t,e){let r=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],n=[];for(let s of r)if(s)try{let{serverId:i,itemId:a}=Put(s);if(!i||!a)continue;let o=await nm(t.server,i),c=await nA(`/emby/Users/${o.userId}/Items/${a}`,t.server,i);if(!c)continue;let u={vod_id:TE(i,c.Id),vod_name:c.Name||"",vod_pic:kut(c,i,t),vod_remarks:c.ProductionYear?String(c.ProductionYear):"",vod_year:c.ProductionYear?String(c.ProductionYear):"",vod_content:c.Overview||"",vod_director:(c.People||[]).filter(l=>l.Type==="Director").map(l=>l.Name).join(","),vod_actor:(c.People||[]).filter(l=>l.Type==="Actor").map(l=>l.Name).join(","),vod_play_from:"",vod_play_url:""};if(c.Type==="Movie")u.vod_play_from="Emby",u.vod_play_url=`${c.Name}$${TE(i,c.Id)}`;else if(c.Type==="Series"){let d=(await nA(`/emby/Shows/${c.Id}/Episodes?userId=${o.userId}&Fields=BasicSyncInfo`,t.server,i))?.Items||[];if(d.length>0){let f={};for(let h of d){let A=h.SeasonName||`\u7B2C${h.ParentIndexNumber||1}\u5B63`;f[A]||(f[A]=[]);let g=h.Name===`\u7B2C ${h.IndexNumber} \u96C6`?h.Name:`${h.IndexNumber}.${h.Name}`;f[A].push(`${g}$${TE(i,h.Id)}`)}let p=[],m=[];for(let[h,A]of Object.entries(f))p.push(h),m.push(A.join("#"));u.vod_play_from=p.join("$$$"),u.vod_play_url=m.join("$$$")}else u.vod_play_from="Emby",u.vod_play_url=`${c.Name}$${TE(i,c.Id)}`}else u.vod_play_from="Emby",u.vod_play_url=`${c.Name}$${TE(i,c.Id)}`;n.push(u)}catch(i){console.error("emby detail failed:",s,i.message)}return{list:n}}async function qCr(t,e,r){let n=await nm(t,e),s=encodeURIComponent(r),i=await nA(`/emby/Users/${n.userId}/Items/${s}?Fields=Path`,t,e),o=(Array.isArray(i?.MediaSources)?i.MediaSources:[]).find(c=>String(c?.Id||"").trim())||null;return String(o?.Id||"").trim()}async function Nut(t,e){let{serverId:r,itemId:n}=Put(t.body?.id||"");if(!r||!n)return{parse:0,url:"",header:{}};try{let s=await nm(t.server,r),i=encodeURIComponent(n),a=new URLSearchParams({static:"true",api_key:s.accessToken}),o=await qCr(t.server,r,n).catch(()=>"");return o&&a.set("MediaSourceId",o),{parse:0,url:`${s.baseUrl}/emby/Videos/${i}/stream.mkv?${a.toString()}`,header:{"User-Agent":Jl.userAgent}}}catch(s){return console.error("emby play failed:",s.message),{parse:0,url:"",header:{}}}}async function Mut(t,e=[]){let r=(t.body?.wd||"").trim(),n=Math.max(1,parseInt(t.body?.page||1,10)),s=20;if(!r)return{page:n,pagecount:n,limit:s,total:0,list:[]};if(e.length===0)return{page:n,pagecount:n,limit:s,total:0,list:[]};try{let i=(n-1)*s,a=n*s,o=await Promise.allSettled(e.map(async d=>{let f=d.id,p=await nm(t.server,f),m=new URLSearchParams({SearchTerm:r,StartIndex:"0",Limit:String(a),Recursive:"true",Fields:Out,ImageTypeLimit:"1",EnableImageTypes:"Primary",IncludeItemTypes:"Movie,Series",SortBy:"DateLastContentAdded,DateCreated",SortOrder:"Descending"}),h=await nA(`/emby/Users/${p.userId}/Items?${m.toString()}`,t.server,f),A=h?.Items||[];return{total:Math.max(0,Number(h?.TotalRecordCount||A.length)||0),list:A.map(g=>Lut(g,f,t))}})),c=[],u=0;for(let d of o){if(d.status!=="fulfilled"){console.error("emby search server failed:",d.reason?.message||d.reason);continue}u+=d.value.total,c.push(d.value)}let l=kCr(c);return{page:n,pagecount:Math.max(n,Math.ceil(u/s)),limit:s,total:u,list:l.slice(i,a)}}catch(i){return console.error("emby search failed:",i.message),{page:n,pagecount:n,limit:s,total:0,list:[]}}}async function jCr(t,e){let r=await Qw(t.server);return Mut(t,r.filter(n=>n?.host&&n?.username))}async function HCr(t,e){let r=String(t.params?.serverId||"").trim(),n=await IE(t.server,r).catch(()=>null);return Mut(t,n?.host&&n?.username?[n]:[])}var Wut={meta:{key:"emby",name:"Emby",type:3,hidden:!0},api:async t=>{t.post("/init",wut),t.get("/image",MCr),t.post("/home",WCr),t.post("/category",FCr),t.post("/detail",Rut),t.post("/play",Nut),t.post("/search",jCr),t.post("/server/:serverId/init",wut),t.post("/server/:serverId/home",$Cr),t.post("/server/:serverId/category",UCr),t.post("/server/:serverId/detail",Rut),t.post("/server/:serverId/play",Nut),t.post("/server/:serverId/search",HCr)}};var vce="/alistVideo",Fut={servers:[{id:"alist_default",name:"\u4EBF\u82EF\u6B63\u7ECF\u7684Alist\u5E93",server:"https://pan.lm379.cn"}]};function QCr(t,e="server"){return`alist_${String(t||e).trim().toLowerCase().replace(/^https?:\/\//,"").replace(/[^a-z0-9_-]+/g,"-").replace(/^-+|-+$/g,"").slice(0,64)||e}`}function Cce(t={}){return{id:t.id||"",name:String(t.name||"").trim(),server:String(t.server||"").trim().replace(/\/+$/,""),username:String(t.username||"").trim(),password:String(t.password||""),token:String(t.token||"").trim(),otpCode:String(t.otpCode||t.otp_code||"").trim()}}function Ice(t={}){let e=Array.isArray(t?.servers)?t.servers:[],r=new Set;return{servers:e.map((n,s)=>{let i={...Cce(n),otpCode:""};if(!i.server)return null;i.id||(i.id=QCr(i.server||i.name,`server_${s+1}`));let a=i.id,o=a,c=2;for(;r.has(o);)o=`${a}_${c}`,c+=1;return r.add(o),i.id=o,i}).filter(Boolean)}}function GCr(t={}){return`catpaw_${String(t.id||t.server||t.name||"default").trim().replace(/[^a-zA-Z0-9_-]/g,"_").slice(0,96)||"alist"}`}function wE(t={},e=""){let r=String(e||t.token||"").trim(),n={"Content-Type":"application/json","Client-Id":GCr(t)};return r&&(n.Authorization=r),n}function Tce(t,e={}){return t?.status===401||t?.status===403||e?.code===401||e?.code===403}async function gM(t={},e={}){let r=Cce(t);if(r.token)return r.token;if(!r.server||!r.username)return"";let n={username:r.username,password:r.password};r.otpCode&&(n.otp_code=r.otpCode);let i=(await he.post(r.server+"/api/auth/login",n,{headers:wE(r),timeout:e.timeout||1e4})).data||{};if(i.code!==200||!i.data?.token)throw new Error(i.message||"Alist \u767B\u5F55\u5931\u8D25");return i.data.token}async function $ut(t,e=""){let r=await he.post(t.server+"/api/fs/list",{path:"/",page:1,per_page:1},{headers:wE(t,e),timeout:1e4});return{resp:r,json:r.data||{}}}var Uut=async t=>{let e=await t.db.getObjectDefault(vce,Fut);return Ice(e)},VCr=async(t,e)=>{let r=Ice(e);return await t.db.push(vce,r),r},zCr=async t=>{await t.db.delete(vce)},Gw=async t=>(await Uut(t)).servers;async function wce(t){t.get("/setting",async(e,r)=>{r.send({code:0,data:await Uut(e.server)})}),t.put("/setting",async(e,r)=>{let n=Ice(e.body||{});if(n.servers.some(i=>!i.server)){r.send({code:-1,message:"\u670D\u52A1\u5668\u5730\u5740\u4E0D\u80FD\u4E3A\u7A7A"});return}let s=await VCr(e.server,n);r.send({code:0,data:s})}),t.delete("/setting",async(e,r)=>{await zCr(e.server),r.send({code:0,data:Fut})}),t.post("/verify",async(e,r)=>{let n=Cce(e.body||{});if(!n.server){r.send({code:-1,message:"\u670D\u52A1\u5668\u5730\u5740\u4E0D\u80FD\u4E3A\u7A7A"});return}try{let s=await gM(n),{resp:i,json:a}=await $ut(n,s);if(Tce(i,a)&&n.username&&(s=await gM({...n,token:""}),{resp:i,json:a}=await $ut(n,s)),a.code!==200){r.send({code:-1,message:a.message||"\u8FDE\u63A5\u5931\u8D25"});return}r.send({code:0,data:{...n,token:s||n.token,otpCode:""}})}catch(s){r.send({code:-1,message:`\u8FDE\u63A5\u5931\u8D25: ${s.message}`})}})}var KCr=new Set([".mp4",".mkv",".avi",".wmv",".flv",".mov",".webm",".ts",".m4v",".rmvb",".rm",".3gp",".mpg",".mpeg",".vob",".iso"]),YCr=new Set([".srt",".ass",".ssa",".sub",".scc",".stl",".ttml",".vtt"]),Vut="https://img.icons8.com/fluency/96/folder-invoices--v1.png",zut="https://img.icons8.com/color/48/video.png",JCr=new Set(["AliyundriveOpen","AliyunShare","BaiduNetdisk","BaiduShare2","Quark","QuarkShare","UC","UCShare","UCTV","115 Cloud","115 Share"]),Kut="Mozilla/5.0 (iPhone; CPU iPhone OS 16_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.6 Mobile/15E148 Safari/604.1",Ou={},RE={},Rce="alist:";function xM(t){let e=t.lastIndexOf(".");return e<0?!1:KCr.has(t.slice(e).toLowerCase())}function Yut(t){let e=t.lastIndexOf(".");return e<0?!1:YCr.has(t.slice(e).toLowerCase())}function Nce(t){return!t||t<=0?"":t>1024**4?(t/1024**4).toFixed(2)+"TB":t>1024**3?(t/1024**3).toFixed(2)+"GB":t>1024**2?(t/1024**2).toFixed(2)+"MB":(t/1024).toFixed(2)+"KB"}function sm(t,e,r=""){let n=String(r||"").trim();return n?Rce+Buffer.from(JSON.stringify({serverId:n,name:t,path:e||"/"}),"utf8").toString("base64url"):`${t}||${e}`}function bM(t){let e=String(t||"");if(e.startsWith(Rce))try{let n=JSON.parse(Buffer.from(e.slice(Rce.length),"base64url").toString("utf8"));return{serverId:String(n?.serverId||""),name:String(n?.name||""),path:String(n?.path||"/")}}catch{return{serverId:"",name:"",path:"/"}}let r=e.indexOf("||");return r<0?{serverId:"",name:e,path:"/"}:{serverId:"",name:e.slice(0,r),path:e.slice(r+2)||"/"}}function XCr(t,e=""){let r=String(e||"").trim();if(r&&Ou[r])return Ou[r];let n=String(t||"").trim();return n&&Ou[n]?Ou[n]:Object.values(Ou).find(s=>r&&s?.id===r||n&&s?.name===n)}function Jut(t){return String(t||"").split(",")[0].trim()}function qut(t){return Jut(t).replace(/^\w+:\/\//,"").split("/")[0].trim()}function ZCr(t){let e=String(t?.server?.address?.()?.url||"").trim(),n=qut(t?.headers?.["x-forwarded-host"])||qut(t?.headers?.host);if(!n)return e;let s=Jut(t?.headers?.["x-forwarded-proto"]),i=e.startsWith("https://")?"https":"http";return`${s||String(t?.protocol||"").trim()||i}://${n}`}function eIr(t,e,r=""){return Buffer.from(JSON.stringify({serverId:r,name:t,path:e}),"utf8").toString("base64url")}function tIr(t){let e=JSON.parse(Buffer.from(String(t||""),"base64url").toString("utf8"));return{serverId:String(e?.serverId||""),name:String(e?.name||""),path:String(e?.path||"/")}}function rIr(t){return String(t||"").toLowerCase().includes("115")}function nIr(t){let e=String(t?.provider||""),r=String(t?.raw_url||"");return JCr.has(e)||rIr(e)||r.includes("115cdn.net")}function sIr(t){return String(t||"/").replace(/^\/?/,"/").split("/").map((r,n)=>n===0?"":encodeURIComponent(r)).join("/")}function iIr(t,e,r){let n=new URL("/d"+sIr(e),t.server);return r&&n.searchParams.set("sign",r),n.toString()}function jut(t,e,r,n=""){let s=r.split("/").filter(Boolean).pop()||"video.bin",i=String(t?.server?.prefix||"").replace(/\/$/,"");return`${ZCr(t)}${i}/proxy/${eIr(e,r,n)}/${encodeURIComponent(s)}`}function aIr(t){let e={};for(let r of["range","if-range","if-none-match","if-modified-since"])t.headers?.[r]&&(e[r]=t.headers[r]);return e}function oIr(t,e,r){return{...aIr(r),...wE(t,e),"User-Agent":Kut,Referer:"https://www.alipan.com/"}}function cIr(){return{"User-Agent":Kut,Referer:"https://www.alipan.com/"}}function Xut(t){return t.id||t.server||t.name}async function AM(t,e=!1){let r=Xut(t);if(!e){if(RE[r])return RE[r];if(t.token)return t.token}let n=await gM({...t,token:e?"":t.token});return n&&(RE[r]=n),n}async function EM(t,e,r={},n=!0){let s=await AM(t),i=wE(t,s),a=await he.post(t.server+e,r,{headers:i,timeout:15e3}).catch(c=>c.response||{status:500,data:{}}),o=a.data||{};if(n&&Tce(a,o)&&t.username){let c=Xut(t);delete RE[c];let u=await AM(t,!0),d=(await he.post(t.server+e,r,{headers:wE(t,u),timeout:15e3}).catch(f=>f.response||{status:500,data:{}})).data||{};if(d.code!==200)throw new Error(d.message||"Alist API error");return d.data}if(o.code!==200)throw new Error(o.message||"Alist API error");return o.data}async function Zut(t,e,r=1){return EM(t,"/api/fs/list",{path:e,page:r,per_page:0,refresh:!1})}async function yM(t,e){return EM(t,"/api/fs/get",{path:e})}async function uIr(t,e,r,n={}){return he.request({url:t,method:r,headers:e,responseType:r==="HEAD"?"text":"stream",timeout:3e4,maxRedirects:n.maxRedirects??5,validateStatus:()=>!0})}async function elt(t,e,r,n,s){let i=iIr(t,e,r),a=await uIr(i,oIr(t,n,s),"GET",{maxRedirects:0});a.data?.destroy&&a.data.destroy();let o=a.headers?.location;return a.status>=300&&a.status<400&&o?new URL(o,i).toString():""}async function lIr(t,e){await Vw(t.server);let r;try{r=tIr(t.params?.id)}catch{return e.code(400),"bad proxy id"}let n=await _M(t.server,r);if(!n)return e.code(404),"drive not found";try{let s=await yM(n,r.path);if(!s?.raw_url)return e.code(404),"raw_url empty";if(s.sign){let i=await AM(n),a=await elt(n,r.path,s.sign,i,t);if(a)return e.redirect(302,a),""}return s.raw_url?(e.redirect(302,s.raw_url),""):(e.code(502),"proxy failed")}catch(s){return console.error("[alist-video] proxy failed:",s.message),e.code(502),s.message}}async function dIr(t,e,r="/"){return EM(t,"/api/fs/search",{parent:r,keywords:e,scope:0,page:1,per_page:100})}function fIr(t){let e=t.replace(/^\//,"").split("/");return e.length>1?"/"+e.slice(1).join("/"):"/"}function pIr(t={},e="Alist"){let r=String(t.name||"").trim();if(r)return r;try{return new URL(t.server).hostname||e}catch{return e}}function tlt(t={}){let e=String(t.server||"").replace(/\/$/,"");if(!e)return null;let r=pIr({...t,server:e});return{id:String(t.id||"").trim(),name:r,server:e,username:t.username||"",password:t.password||"",token:t.token||"",otpCode:t.otpCode||""}}function rlt(t){if(!t)return null;let e=t.id||t.name;return e?(Ou[e]=t,t):null}async function Oce(t){let e=await Gw(t);for(let r of Object.keys(Ou))delete Ou[r];for(let r of Object.keys(RE))delete RE[r];for(let r of e)rlt(tlt(r));return e}async function Vw(t){Object.keys(Ou).length===0&&await Oce(t)}async function zw(t,e){let r=String(e||"").trim();if(!r)return null;let n=await Gw(t),s=tlt(n.find(i=>i?.id===r));return rlt(s)}async function _M(t,e={}){let r=XCr(e.name,e.serverId);return r||(e.serverId?zw(t,e.serverId):null)}async function mIr(t,e){return await Oce(t.server),{}}async function hIr(t,e){if((await Oce(t.server)).length===0)return{class:[],filters:{}};let n=[];for(let s of Object.values(Ou))n.push({type_id:sm(s.name,"/",s.id),type_name:s.name});return{class:n,filters:{}}}async function gIr(t,e){let r=await zw(t.server,t.params?.serverId);return r?{class:[{type_id:sm(r.name,"/",r.id),type_name:r.name}],filters:{}}:{class:[],filters:{}}}async function nlt(t,e){await Vw(t.server);let r=t.body.id,n=Math.max(1,parseInt(t.body.page||1,10)),{serverId:s,name:i,path:a}=bM(r),o=await _M(t.server,{name:i,serverId:s});if(!o)return{page:n,pagecount:n,list:[]};let c=o.id||s;try{let u=await Zut(o,a,n),l=u.content||[],d=[];for(let h of l){let A=a.replace(/\/?$/,"/")+h.name;if(h.is_dir){let g=sm(o.name,A,c);d.push({vod_id:g,vod_name:h.name,vod_pic:h.thumb||Vut,vod_remarks:"",vod_tag:"folder",cate:{id:g,name:h.name}})}else xM(h.name)&&d.push({vod_id:sm(o.name,A,c),vod_name:h.name,vod_pic:h.thumb||zut,vod_remarks:Nce(h.size),vod_tag:"file"})}let f=u.total||d.length,p=u.per_page||f,m=p>0?Math.ceil(f/p):1;return{page:n,pagecount:m,list:d}}catch(u){return console.error("[alist-video] category failed:",u.message),{page:n,pagecount:n,list:[]}}}async function AIr(t,e){let r=String(t.params?.serverId||"").trim(),n=await zw(t.server,r);if(!n){let a=Math.max(1,parseInt(t.body?.page||1,10));return{page:a,pagecount:a,list:[]}}let s=String(t.body?.id||"").trim(),i=s?bM(s):{path:"/"};return t.body={...t.body||{},id:sm(n.name,i.path||"/",n.id)},nlt(t,e)}async function Hut(t,e,r=3,n=0){if(n>=r)return[];try{let i=(await EM(t,"/api/fs/list",{path:e,page:1,per_page:500,refresh:!1})).content||[],a=[],o=[],c=[];for(let u of i){let l=e.replace(/\/?$/,"/")+u.name;u.is_dir?c.push({name:u.name,path:l}):xM(u.name)?a.push({name:u.name,path:l,size:u.size}):Yut(u.name)&&o.push({name:u.name,path:l})}return{videos:a,subtitles:o,subfolders:c}}catch{return{videos:[],subtitles:[],subfolders:[]}}}async function Qut(t,e){await Vw(t.server);let r=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],n=[];for(let s of r){if(!s)continue;let{serverId:i,name:a,path:o}=bM(s),c=await _M(t.server,{name:a,serverId:i});if(!c)continue;let u=c.id||i;try{let l=await yM(c,o),d=l.is_dir;if(!d&&xM(l.name)){n.push({vod_id:s,vod_name:l.name,vod_pic:l.thumb||"",vod_content:`\u5927\u5C0F: ${Nce(l.size)}`,vod_play_from:"Alist",vod_play_url:`${l.name}$${s}`});continue}if(d){let f=await Hut(c,o),p=[],m=[];f.videos.length>0&&(p.push("\u5F53\u524D\u76EE\u5F55"),m.push(f.videos.map(h=>`${h.name}$${sm(c.name,h.path,u)}`).join("#")));for(let h of f.subfolders){let A=await Hut(c,h.path);A.videos.length>0&&(p.push(h.name),m.push(A.videos.map(g=>`${g.name}$${sm(c.name,g.path,u)}`).join("#")))}p.length===0?n.push({vod_id:s,vod_name:l.name||o.split("/").filter(Boolean).pop()||"Alist",vod_pic:l.thumb||"",vod_content:"\u8BE5\u76EE\u5F55\u4E0B\u6CA1\u6709\u89C6\u9891\u6587\u4EF6",vod_play_from:"",vod_play_url:""}):n.push({vod_id:s,vod_name:l.name||o.split("/").filter(Boolean).pop()||"Alist",vod_pic:l.thumb||"",vod_content:`\u5171 ${p.reduce((h,A,g)=>h+m[g].split("#").length,0)} \u4E2A\u89C6\u9891`,vod_play_from:p.join("$$$"),vod_play_url:m.join("$$$")})}}catch(l){console.error("[alist-video] detail failed:",s,l.message)}}return{list:n}}async function Gut(t,e){await Vw(t.server);let r=t.body?.id||"",{serverId:n,name:s,path:i}=bM(r),a=await _M(t.server,{name:s,serverId:n});if(!a)return{parse:0,url:"",header:{}};let o=a.id||n;try{let c=await yM(a,i),u=c.raw_url;if(!u)return{parse:0,url:"",header:{}};let l={parse:0,url:u,header:{}};if(c.provider==="AliyundriveOpen"||c.provider==="AliyundriveShare2Open")l.header={"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",Referer:"https://www.alipan.com/"};else if(nIr(c))if(l.header=cIr(),c.sign){let m=await AM(a),h=await elt(a,i,c.sign,m,t);h?l.url=h:l.url=jut(t,a.name,i,o)}else l.url=jut(t,a.name,i,o);let d=i.substring(0,i.lastIndexOf("/")+1),f=i.substring(i.lastIndexOf("/")+1),p=f.substring(0,f.lastIndexOf("."));try{let h=((await Zut(a,d)).content||[]).filter(A=>Yut(A.name)&&A.name.includes(p)).slice(0,3);if(h.length>0){let A=[];for(let g of h)try{let b=await yM(a,d+g.name);b.raw_url&&A.push(b.raw_url)}catch{}A.length>0&&(l.subt=A[0])}}catch{}return l}catch(c){return console.error("[alist-video] play failed:",c.message),{parse:0,url:"",header:{}}}}async function slt(t,e){let r=(t.body?.wd||"").trim(),n=Math.max(1,parseInt(t.body?.page||1,10));if(!r)return{page:n,pagecount:n,list:[]};let s=[];for(let i of e)try{let o=(await dIr(i,r)).content||[];for(let c of o)if(c.is_dir||xM(c.name)){let l=fIr(String(c.parent||"/")).replace(/\/?$/,"/")+c.name,d=sm(i.name,l,i.id);s.push({vod_id:d,vod_name:c.name,vod_pic:c.thumb||(c.is_dir?Vut:zut),vod_remarks:c.is_dir?"":Nce(c.size),...c.is_dir?{cate:{id:d,name:c.name}}:{}})}}catch{}return{page:n,pagecount:n,list:s}}async function yIr(t,e){return await Vw(t.server),slt(t,Object.values(Ou))}async function xIr(t,e){return await zw(t.server,t.params?.serverId),{}}async function bIr(t,e){let r=await zw(t.server,t.params?.serverId);return slt(t,r?[r]:[])}var ilt={meta:{key:"alist-video",name:"Alist",type:3,hidden:!0},api:async t=>{t.post("/init",mIr),t.post("/home",hIr),t.post("/category",nlt),t.post("/detail",Qut),t.post("/search",yIr),t.post("/play",Gut),t.get("/proxy/:id/:file",lIr),t.post("/server/:serverId/init",xIr),t.post("/server/:serverId/home",gIr),t.post("/server/:serverId/category",AIr),t.post("/server/:serverId/detail",Qut),t.post("/server/:serverId/search",bIr),t.post("/server/:serverId/play",Gut)}};var Kw=async t=>(await t.db.getObjectDefault("/sites",{}))?.list||t.config.sites.list,EIr=async(t,e)=>{await t.db.push("/sites/list",e)},_Ir=async t=>{await t.db.delete("/sites/list")};async function Pce(t){t.get("/list",async(e,r)=>{r.send({code:0,data:await Kw(e.server)})}),t.put("/list",async(e,r)=>{await EIr(e.server,e.body.list),r.send({code:0})}),t.delete("/list",async(e,r)=>{await _Ir(e.server),r.send({code:0})})}var alt="\u5185\u7F6E\u5F39\u5E55",SIr=9321;function ult(t){return String(t||"").split(",")[0].trim()}function olt(t){return ult(t).replace(/^\w+:\/\//,"").split("/")[0].trim()}function clt(t){let e=String(t||"").trim().toLowerCase().split(":")[0];return e==="localhost"||e==="127.0.0.1"||e==="0.0.0.0"||e==="::1"}function vIr(t,e=null){let r=String(t?.address?.()?.url||"").trim(),s=olt(e?.headers?.["x-forwarded-host"])||olt(e?.headers?.host),i=ult(e?.headers?.["x-forwarded-proto"]),a=r.startsWith("https://")?"https":"http",o=i||String(e?.protocol||"").trim()||a;if(s&&!clt(s))return`${o}://${s}`;let c=String(D0()||"").trim(),u=Number.parseInt(String(t?.address?.()?.port||""),10);return c&&!clt(c)?Number.isFinite(u)&&u>0?`${o}://${c}:${u}`:`${o}://${c}`:r}function llt(t,e,r=null){if(!e||typeof e!="object"||!Array.isArray(e.urls))return e;let n=vIr(t,r),s=iae(n,SIr),i=e.urls.map(a=>{if(!a||typeof a!="object")return a;let o=String(a.name||"").trim();return a.builtin===!0||o===alt?{...a,builtin:!0,name:o||alt,address:s}:a});return{...e,urls:i}}var SM=async(t,e=null)=>{let n=await t.db.getObjectDefault("/danmu")||t.config.danmu;return llt(t,n,e)},CIr=async(t,e,r=null)=>{await t.db.push("/danmu",llt(t,e,r))},IIr=async t=>{await t.db.delete("/danmu")},TIr=3,Dce=(t,e=TIr)=>{messageToDart({action:"toast",opt:{message:t,duration:e}})},wIr=t=>{try{let e=new URL(t);return e.searchParams.set("format","json"),e.toString()}catch{return null}},RIr=t=>Array.isArray(t?.comments)?t.comments.length:Array.isArray(t)?t.length:0;async function kce(t){t.get("/setting",async(e,r)=>{r.send({code:0,data:await SM(e.server,e)})}),t.put("/setting",async(e,r)=>{await CIr(e.server,e.body,e),r.send({code:0})}),t.delete("/setting",async(e,r)=>{await IIr(e.server),r.send({code:0})}),t.post("/push",async(e,r)=>{let n=e.body||{},s=n.url,i=n.sourceName||"\u5F39\u5E55\u6E90",a=n.previewUrl||wIr(s);if(!s){r.code(400).send({code:1,message:"Missing push url"});return}a&&(async()=>{try{let o=await Ae.get(a,{timeout:1e4}),c=RIr(o.data);c>0?Dce(`\u901A\u8FC7 ${i} - \u89E3\u6790\u5230 ${c} \u6761\u5F39\u5E55`):Dce("\u6CA1\u6709\u627E\u5230\u5F39\u5E55\u5466~")}catch(o){console.error("Manual danmu preview failed:",o),Dce("\u6CA1\u6709\u627E\u5230\u5F39\u5E55\u5466~")}})(),messageToDart({action:"danmuPush",opt:{url:s}}),r.send({code:0})}),t.get("/fe",(e,r)=>{r.type("text/html").send(` +-----END PRIVATE KEY-----`,Uft="Qmxi5ciWXbQzkr7o+SUNiUuQxQEf8/AVyUWY4T/BGhcXBIUz4nOyHBGf9A4KbM0iKF3yp9M7WAY0rrs5PzdTAOB45plcS2zZ0wUibcXuGJ29VVGRWKGwE9zu2vLwhfgjTaaDpXo4rby+7GxXTktzJmxvneOUdYeHi+PZsThlvPI=",Ole="1be86e8e18a9fa18b2b8d5432699dad0.ac008ed650fd087bfbecf2fda9d82e9835253ef24843e6b18fcd128b10763497bcf9d53e959f5377cde038c20ccf9d17f604c9b8bb6e61041def86729b2fc7408bd241e23c213ac57f0226ee656e2bb0a583ae0e4f3bf6c6ab6c490c9a6f0d8cdfd366aacf5d83193671a8f77cd1af1ff2e9145de92ec43ec87cf4bdc563f6e919fe32861b0e93b118ec37d8035fbb3c.59dd05c5d9a8ae726528783128218f15fe6f2c0c8145eddab112b374fcfe3d79",Kw={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"},URr=[{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"}],FRr={1:[{key:"year",name:"",init:"0",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"}]},{key:"area",name:"",init:"0",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"}]},{key:"sort",name:"",init:"d_id",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}],2:[{key:"year",name:"",init:"0",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"}]},{key:"area",name:"",init:"0",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"}]},{key:"sort",name:"",init:"d_id",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}],3:[{key:"year",name:"",init:"0",value:[{n:"\u5168\u90E8",v:"0"},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"}]},{key:"area",name:"",init:"0",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:"",init:"d_id",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}],4:[{key:"year",name:"",init:"0",value:[{n:"\u5168\u90E8",v:"0"},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"}]},{key:"area",name:"",init:"0",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:"",init:"d_id",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}],64:[{key:"year",name:"",init:"0",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:"",init:"d_id",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}]},zw=new Map,qRr={category:3e5,detail:3e5,play:3e5,search:6e4};function jRr(t){return y_.default.createHash("md5").update(t).digest("hex")}function QRr(t){let e=Buffer.from("mvXBSW7ekreItNsT","utf8"),r=Buffer.from("2U3IrJL8szAKp0Fj","utf8"),n=y_.default.createCipheriv("aes-128-cbc",e,r),s=n.update(t,"utf8","hex");return s+=n.final("hex"),s.toUpperCase()}function HRr(t,e,r){let n=Buffer.from(e,"utf8"),s=Buffer.from(r,"utf8"),i=y_.default.createDecipheriv("aes-128-cbc",n,s),a=i.update(t,"hex","utf8");return a+=i.final("utf8"),a}function GRr(t){let e=Buffer.from(t,"base64"),r=256,n=[];for(let s=0;s<e.length;s+=r){let i=e.slice(s,s+r),a=y_.default.privateDecrypt({key:$Rr,padding:y_.default.constants.RSA_NO_PADDING},i),o=a.indexOf(0,2);if(o===-1){for(o=0;o<a.length&&a[o]===0;)o+=1;n.push(a.slice(o))}else n.push(a.slice(o+1))}return Buffer.concat(n).toString("utf8").trim()}function zRr(t,e){let r=`token_id=,token=${Ole},phone_type=1,request_key=${t},app_id=1,time=${e},keys=${Uft}*&zvdvdvddbfikkkumtmdwqppp?|4Y!s!2br`;return jRr(r)}function KRr(t){let e=zw.get(t);return e?Date.now()>e.expire?(zw.delete(t),null):e.data:null}function VRr(t,e,r){zw.set(t,{data:e,expire:Date.now()+(qRr[r]||6e4)}),zw.size>200&&zw.clear()}async function Vw(t,e,r="category"){let n=`${e}|${JSON.stringify(t)}`;if(r!=="none"){let p=KRr(n);if(p)return p}let s=Math.floor(Date.now()/1e3).toString(),i=QRr(JSON.stringify(t)),a=zRr(i,s),o=new URLSearchParams({token:Ole,token_id:"",phone_type:"1",time:s,phone_model:"xiaomi-22021211rc",keys:Uft,request_key:i,signature:a,app_id:"1",ad_version:"1"}).toString(),c=await fe.post(`${$ft.host}${e}`,o,{headers:$ft.headers});if(c.status!==200||!c.data?.data?.keys||!c.data?.data?.response_key)return null;let u=GRr(c.data.data.keys);if(!u)return null;let l=JSON.parse(u),d=HRr(c.data.data.response_key,l.key,l.iv);if(!d)return null;let f=JSON.parse(d);return r!=="none"&&f&&VRr(n,f,r),f}function Fft(t){return{vod_id:`${t.vod_id}/${t.vod_continu||0}`,vod_name:t.vod_name,vod_pic:t.vod_pic,vod_remarks:(t.vod_continu||0)===0?"\u7535\u5F71":`\u66F4\u65B0\u81F3${t.vod_continu}\u96C6`}}function YRr(t){let e=String(t||"").trim();if(!e)return"";let r=e.split("/")[0];return/^\d+$/.test(r)?r:e.match(/(\d+)/)?.[1]||e}function Z6(t){let e=String(t||"").toLowerCase().replace("p","");return e==="8k"?100:e==="4k"||e==="2160"?90:e==="1440"?80:e==="1080"?70:e==="720"?60:e==="\u8D85\u6E05"?50:e==="\u9AD8\u6E05"?40:e==="\u6807\u6E05"?30:10}async function JRr(t,e){return{}}async function XRr(t,e){return{class:URr,filters:FRr}}async function ZRr(t,e){let r=t.body.id,n=String(t.body.page||1),s=t.body.filters||{};if(!r)return{page:1,pagecount:0,list:[]};let i=await Vw({area:s.area||"0",year:s.year||"0",pageSize:"20",sort:s.sort||"d_id",page:n,tid:String(r)},Kw.INDEX_LIST,"category"),a=Array.isArray(i?.list)?i.list.map(u=>Fft(u)):[],o=parseInt(n,10)||1,c=parseInt(i?.totalPage||0,10)||(a.length>0?o+1:o);return{page:o,pagecount:c,list:a}}async function eNr(t,e){let r=String(t.body.wd||"").trim(),n=String(t.body.page||1);if(!r)return{page:1,pagecount:0,list:[]};let s=await Vw({keywords:r,order_val:"1",page:n},Kw.FIND_MORE,"search"),a=(Array.isArray(s?.list)?s.list:[]).filter(u=>String(u?.vod_name||"").toLowerCase().includes(r.toLowerCase())).map(u=>Fft(u)),o=parseInt(n,10)||1,c=parseInt(s?.totalPage||0,10)||(a.length>0?o+1:o);return{page:o,pagecount:c,list:a}}async function tNr(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[];for(let s of r){let i=String(s||""),a=YRr(i);if(!a)continue;let[o,c]=await Promise.all([Vw({token_id:"1649412",vod_id:a,mobile_time:Math.floor(Date.now()/1e3).toString(),tokename:Ole},Kw.PLAY_INFO,"detail"),Vw({vurl_cloud_id:"2",vod_d_id:a},Kw.VURL_SHOW,"detail")]),u=o?.vodInfo;if(!u)continue;let l=[],d=Array.isArray(c?.list)?c.list:[];d.forEach((f,p)=>{let m=f?.play;if(!m||typeof m!="object")return;let h=[],y=[];if(Object.entries(m).forEach(([x,A])=>{A?.param&&(h.push(String(A.param)),y.push(String(x)))}),!h.length)return;y.sort((x,A)=>Z6(A)-Z6(x));let g=d.length===1?String(u.vod_name||"\u6B63\u7247"):String(f?.name||p+1),b=`${h[0]}||${y.join("@")}`;l.push(`${g}$${b}`)}),n.push({vod_id:i,vod_name:u.vod_name||"",vod_pic:u.vod_pic||"",vod_year:u.vod_year||"",vod_area:u.vod_area||"",vod_remarks:u.vod_remarks||(Number(u.vod_continu||0)===0?"\u7535\u5F71":`\u66F4\u65B0\u81F3${u.vod_continu}\u96C6`),vod_actor:u.vod_actor||"",vod_director:u.vod_director||"",vod_content:String(u.vod_use_content||u.vod_content||"").trim(),vod_play_from:l.length>0?"\u74DC\u5B50\u4E13\u7EBF":"",vod_play_url:l.length>0?l.join("#"):""})}return{list:n}}async function rNr(t,e){let r=String(t.body.id||"").trim();if(!r)return{parse:0,url:"",header:Nle};let n=r.split("||");if(n.length<2)return{parse:0,url:r,header:Nle};let s={};n[0].split("&").forEach(c=>{let[u,l]=c.split("=");u&&(s[u]=l||"")});let i=n[1].split("@").filter(Boolean);i.length>0&&(i.sort((c,u)=>Z6(u)-Z6(c)),s.resolution=i[0]);let a=await Vw(s,Kw.VURL_DETAIL,"play");return{parse:0,url:String(a?.url||"").trim(),header:Nle}}var qft={meta:{key:"guazi",name:"\u300C\u76F4\u300D\u74DC\u5B50",type:3},api:async t=>{t.post("/init",JRr),t.post("/home",XRr),t.post("/category",ZRr),t.post("/detail",tNr),t.post("/play",rNr),t.post("/search",eNr)}};var pp=String(process.env.PPNIX_HOST||"https://www.ppnix.com").trim(),nNr=String(process.env.PPNIX_LANG_PATH||"/cn").trim(),Qft=String(process.env.PPNIX_UA||"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/145.0.0.0 Safari/537.36").trim(),Hft=24,sNr=10*60*1e3,iNr=[{type_id:"movie",type_name:"\u7535\u5F71"},{type_id:"tv",type_name:"\u7535\u89C6\u5267"}],aNr={time:"newstime",hits:"onclick",score:"rating",newstime:"newstime",onclick:"onclick",rating:"rating"},fd={expiresAt:0,filters:{},filterDef:{movie:{class:"",area:"",year:"",by:"newstime"},tv:{class:"",area:"",year:"",by:"newstime"}}};function gn(t){return t==null?"":String(t).trim()}function oNr(t=""){let e=gn(t);return e?e.startsWith("/")?e.replace(/\/+$/,""):`/${e.replace(/\/+$/,"")}`:"/cn"}var Ny=oNr(nNr);function Gft(t=""){let e=gn(t);return e?/^https?:\/\//i.test(e)?e:e.startsWith("/")?`${pp}${e}`:`${pp}/${e}`:`${pp}${Ny}/`}function Ry(t){return gn(t).replace(/<br\s*\/?>/gi," ").replace(/<[^>]+>/g," ").replace(/ /gi," ").replace(/ /gi," ").replace(/&/gi,"&").replace(/"/gi,'"').replace(/'/gi,"'").replace(/</gi,"<").replace(/>/gi,">").replace(/\s+/g," ").trim()}function zft(t){let e=gn(t);return e?/^https?:\/\//i.test(e)?e:e.startsWith("//")?`https:${e}`:e.startsWith("/")?`${pp}${e}`:`${pp}/${e}`:""}function cNr(t){let e=[],r=new Set;for(let n of Array.isArray(t)?t:[]){let s=gn(n?.vod_id||n?.vod_name);!s||r.has(s)||(r.add(s),e.push(n))}return e}function Kft(t){let e=gn(t);return e?/^https?:\/\//i.test(e)||e.startsWith("/")?e:e.startsWith("movie/")||e.startsWith("tv/")?`${Ny}/${e}`:`${Ny}/${e.replace(/^\/+/,"")}`:""}async function Yw(t,e={}){let r=Gft(t),n={"User-Agent":Qft,"Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",Referer:e.referer||`${pp}${Ny}/`,...e.headers||{}},s=await fe({url:r,method:e.method||"GET",headers:n,data:e.body,timeout:e.timeout||2e4,responseType:"text",validateStatus:()=>!0,maxRedirects:5}),i=Number(s.status||0),a=typeof s.data=="string"?s.data:String(s.data||"");if(i!==200)throw new Error(`HTTP ${i||"unknown"} @ ${r}`);return a}function Vft(t,e,r=""){let n=[];return t(e).each((s,i)=>{let a=t(i),o=a.find("a.thumbnail, h2 a, a").first(),c=gn(o.attr("href")||a.find("h2 a").attr("href")||""),u=Kft(c),l=Ry(a.find("img.thumb").attr("alt")||a.find("h2 a").text()||o.text()),d=zft(a.find("img.thumb").attr("src")||a.find("img.thumb").attr("data-src")||""),f=Ry(a.find("footer .rate").text()||a.find("footer").text());!u||!l||n.push({vod_id:u,vod_name:l,vod_pic:d,vod_remarks:f,type_id:r,type_name:r==="movie"?"\u7535\u5F71":r==="tv"?"\u7535\u89C6\u5267":""})}),cNr(n)}function uNr(t=""){let e=(t.match(/infoid\s*=\s*(\d+)/)||[])[1]||"",r=t.match(/m3u8\s*=\s*\[(.*?)\]/s);if(!r)return{infoId:e,items:[]};let n=[],s=/'([^']*)'|"([^"]*)"/g,i;for(;(i=s.exec(r[1]))!==null;){let a=gn(i[1]||i[2]||"");a&&n.push(a)}return{infoId:e,items:[...new Set(n)]}}function lNr(t){let e=gn(t.infoId||""),r=encodeURIComponent(gn(t.param||"")),n=encodeURIComponent(gn(t.referer||"")),s=encodeURIComponent(gn(t.episodeName||""));return`${e}|${r}|${n}|${s}`}function dNr(t){try{let e=String(t||"").split("|");return{infoId:gn(e[0]||""),param:decodeURIComponent(e[1]||""),referer:decodeURIComponent(e[2]||""),episodeName:decodeURIComponent(e[3]||"")}}catch{return{}}}function fNr(t={}){let e=t&&typeof t=="object"?t:{};return{class:gn(e.class||e.type||e.cate||""),area:gn(e.area||""),year:gn(e.year||""),by:gn(e.by||e.sort||"newstime")||"newstime"}}function Ple(t,e=1,r={}){let n=fNr(r),s=n.class,i=n.area,a=n.year,o=aNr[n.by]||"newstime",c=Number(e)<=1?"":`${Number(e)-1}`;return`${Ny}/${t}/${s}-${i}-${a}-${c}-${o}.html`}function pNr(t=[]){return[...new Set((t||[]).map(e=>gn(e)).filter(Boolean))]}function kle(t,e,r=""){let n=[];return t(e).find("a").each((s,i)=>{let a=gn(t(i).text());!a||a===r||n.push(a)}),pNr(n)}function jft(t){let e=[],r=t(".lists-content.filter dl");if(!r.length)return e;let n=kle(t,r.eq(0),"\u5168\u90E8");n.length&&e.push({key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},...n.map(a=>({n:a,v:a}))]});let s=kle(t,r.eq(1),"\u5168\u90E8");s.length&&e.push({key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},...s.map(a=>({n:a,v:a}))]});let i=kle(t,r.eq(2),"\u5168\u90E8");return i.length&&e.push({key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},...i.map(a=>({n:a,v:a}))]}),e.push({key:"by",name:"",init:"newstime",value:[{n:"\u65F6\u95F4",v:"newstime"},{n:"\u4EBA\u6C14",v:"onclick"},{n:"\u8BC4\u5206",v:"rating"}]}),e}async function mNr(t=!1){if(!t&&fd.expiresAt>Date.now()&&Object.keys(fd.filters).length>0)return{filters:fd.filters,filter_def:fd.filterDef};try{let[e,r]=await Promise.all([Yw(Ple("movie",1,{})),Yw(Ple("tv",1,{}))]);fd.filters={movie:jft(De(e)),tv:jft(De(r))},fd.expiresAt=Date.now()+sNr}catch{if(!Object.keys(fd.filters).length){let e=[{key:"by",name:"",init:"newstime",value:[{n:"\u6309\u65F6\u95F4",v:"newstime"},{n:"\u6309\u4EBA\u6C14",v:"onclick"},{n:"\u6309\u8BC4\u5206",v:"rating"}]}];fd.filters={movie:e,tv:e}}}return{filters:fd.filters,filter_def:fd.filterDef}}async function hNr(t,e){return{}}async function gNr(t,e){let{filters:r}=await mNr();return{class:iNr,filters:r}}async function yNr(t,e){try{let r=gn(t.body?.id||"movie"),n=Math.max(1,Number(t.body?.page||1)||1),s=t.body?.filters||{},i=await Yw(Ple(r,n,s)),a=De(i),o=Vft(a,".lists-content > ul > li, .lists .lists-content ul li",r).filter(d=>d.vod_id.includes(`/${r}/`)),c=n,l=[...(a(".pagination, .pages, .pagenavi").html()||"").matchAll(/---(\d+)-\.html/g)].map(d=>Number(d[1])+1);return l.length?c=Math.max(n,...l):o.length>=Hft&&(c=n+1),{page:n,pagecount:c,list:o}}catch{let r=Math.max(1,Number(t.body?.page||1)||1);return{page:r,pagecount:r,list:[]}}}async function ANr(t,e){let r=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],n=[];for(let s of r)try{let i=Kft(s);if(!i)continue;let a=await Yw(i),o=De(a),c=Ry(o("h1.product-title").text()),u=Ry(o("title").text()).replace(/\s*\([^)]*\).*/,""),l=c.replace(/\s*\([^)]*\)\s*$/,"").trim()||u,d=zft(o("header.product-header img.thumb").attr("src")||""),f=Ry(o(".product-excerpt").filter((S,I)=>o(I).text().includes("\u7B80\u4ECB\uFF1A")).text()).replace(/^简介:/,"").trim(),p=Ry(o(".product-excerpt").filter((S,I)=>o(I).text().includes("\u5BFC\u6F14\uFF1A")).find("span").text()),m=Ry(o(".product-excerpt").filter((S,I)=>o(I).text().includes("\u4E3B\u6F14\uFF1A")).find("span").text()).replace(/\s*\/\s*/g,","),h=(c.match(/\((\d{4})\)/)||[])[1]||"",y=i.includes("/movie/")?"\u7535\u5F71":i.includes("/tv/")?"\u7535\u89C6\u5267":"",{infoId:g,items:b}=uNr(a),x=(i.match(/(\d+)\.html/)||[])[1]||"",A=b.map((S,I)=>{let R=b.length>1?`\u7B2C${I+1}\u96C6`:gn(S)||"\u6B63\u7247",w=lNr({infoId:g||x,param:S,referer:Gft(i),episodeName:R});return`${R}$${w}`});n.push({vod_id:i,vod_name:l,vod_pic:d,type_name:y,vod_year:h,vod_director:p,vod_actor:m,vod_content:f,vod_play_from:A.length?"PPnix":"",vod_play_url:A.join("#")})}catch{continue}return{list:n}}async function xNr(t,e){try{let r=dNr(t.body?.id||""),n=gn(r.infoId),s=gn(r.param);if(!n||!s)return{parse:0,url:gn(t.body?.id||"")};let i=gn(r.referer||`${pp}${Ny}/`);return{parse:0,url:`${pp}/info/m3u8/${n}/${encodeURIComponent(s)}.m3u8`,header:{Referer:i,Origin:pp,"User-Agent":Qft}}}catch{return{parse:1,url:gn(t.body?.id||""),header:{}}}}async function bNr(t,e){try{let r=gn(t.body?.wd||""),n=Math.max(1,Number(t.body?.page||1)||1);if(!r)return{page:1,pagecount:1,list:[]};let s=encodeURIComponent(r),i=n<=1?"":`-page-${n}`,a=await Yw(`${Ny}/search/${s}--.html${i}`),o=De(a),c=Vft(o,".lists-content > ul > li, .lists .lists-content ul li").filter(u=>/\/(movie|tv)\/\d+\.html/.test(u.vod_id));return{page:n,pagecount:c.length>=Hft?n+1:n,list:c}}catch{let r=Math.max(1,Number(t.body?.page||1)||1);return{page:r,pagecount:r,list:[]}}}var Yft={meta:{key:"ppnix",name:"\u300C\u76F4\u300DPPnix",type:3},api:async t=>{t.post("/init",hNr),t.post("/home",gNr),t.post("/category",yNr),t.post("/detail",ANr),t.post("/play",xNr),t.post("/search",bNr)}};var jn={key:"anime1",name:"Anime1\u52D5\u756B",host:"https://anime1.me",listUrl:"https://d1zquzjgwo9yb.cloudfront.net/",playApi:"https://v.anime1.me/api",pic:"https://sta.anicdn.com/playerImg/8.jpg",ua:"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/142.0.0.0 Safari/537.36",timeout:15e3},Jw=48,_Nr=5*60*1e3,ENr=60,Jft=(()=>{let t=Math.max(new Date().getFullYear(),2025),e=[];for(let r=t;r>=2018;r-=1)e.push({type_id:String(r),type_name:String(r)});return[{type_id:"\u9023\u8F09\u4E2D",type_name:"\u9023\u8F09\u4E2D"},...e,{type_id:"2017",type_name:"\u66F4\u65E9"}]})(),tM={expireAt:0,list:[]},eM=null;function Oy(t){return De(`<div>${String(t||"")}</div>`).text().replace(/\s+/g," ").trim()}function Lle(t=jn.host){return{"User-Agent":jn.ua,Referer:t,"Accept-Language":"zh-CN,zh;q=0.9"}}function Xw(t,e=jn.host){let r=String(t||"").trim();if(!r)return"";try{return new URL(r,e).href}catch{return""}}function Mle(t){let e=String(t||"").trim();if(!e)return"";try{let n=new URL(e,jn.host).searchParams.get("cat");if(n)return n}catch{}return e.replace(/^\/?\?cat=/,"")}function vNr(t){let e=String(t||"").trim();if(/^https?:\/\//i.test(e))return e;if(e.startsWith("/"))return Xw(e);let r=Mle(e);return r?`${jn.host}/?cat=${encodeURIComponent(r)}`:jn.host}function SNr(t){let e=String(t||"").trim();return e?e.startsWith("//")?`https:${e}`:Xw(e,jn.host):""}function INr(t){if(!Array.isArray(t))return null;let e=String(t[0]??"").trim(),r=Oy(t[1]);return!e||!r?null:{id:e,vod_id:e,vod_name:r,vod_pic:jn.pic,vod_remarks:Oy(t[2]),vod_year:String(t[3]??"").trim(),type_name:Oy(t[4]),vod_actor:Oy(t[5])}}async function Ble(t,e={}){let r=Xw(t,e.base||jn.host),n=await fe({url:r,method:"get",timeout:e.timeout||jn.timeout,responseType:"text",transformResponse:[s=>s],validateStatus:()=>!0,headers:{...Lle(e.referer||jn.host),...e.headers||{}}});if(n.status<200||n.status>=300)throw new Error(`HTTP ${n.status}`);return String(n.data||"")}async function CNr(){let t=await fe({url:`${jn.listUrl}?_=${Date.now()}`,method:"get",timeout:jn.timeout,responseType:"text",transformResponse:[n=>n],validateStatus:()=>!0,headers:Lle(jn.host)});if(t.status<200||t.status>=300)throw new Error(`HTTP ${t.status}`);let e=JSON.parse(String(t.data||"{}")),r=Object.values(e).map(INr).filter(Boolean);return tM={expireAt:Date.now()+_Nr,list:r},r}async function rM(){return tM.expireAt>Date.now()&&tM.list.length>0?tM.list:(eM||(eM=CNr().finally(()=>{eM=null})),eM)}function Xft(t,e){let r=String(e||"\u9023\u8F09\u4E2D").trim();return r==="\u9023\u8F09\u4E2D"?t.filter(n=>n.vod_remarks.includes("\u9023\u8F09\u4E2D")):r==="2017"?t.filter(n=>{let s=Number.parseInt(n.vod_year,10);return Number.isFinite(s)&&s<=2017}):t.filter(n=>n.vod_year===r)}function Zft(t,e,r=Jw){let n=Math.max(1,Number.parseInt(e,10)||1),s=t.length,i=Math.max(1,Math.ceil(s/r));return{list:t.slice((n-1)*r,n*r),page:n,pagecount:i,limit:r,total:s}}function TNr(t,e){let r=Mle(e);return t.find(n=>n.id===r||n.vod_id===r)}function wNr(t){return Oy(t).replace(/[$#]/g," ").trim()}function RNr(t,e){let r=Oy(t),n=r.match(/\[(.*)\]/);return wNr(n?.[1]||r||`\u7B2C${e+1}\u96C6`)}function NNr(t){return Buffer.from(JSON.stringify(t||{}),"utf8").toString("base64")}function ONr(t){try{let e=JSON.parse(Buffer.from(String(t||""),"base64").toString("utf8"));return e&&typeof e=="object"?e:{}}catch{return{}}}function kNr(t,e,r){let n=De(t||"");n(".site-main article").each((s,i)=>{let a=String(n(i).find("[data-apireq]").first().attr("data-apireq")||"").trim();if(!a||r.has(a))return;let o=n(i).find(".entry-title").first().text();r.add(a),e.push({name:RNr(o,e.length),apiReq:a})})}async function PNr(t,e){let r=[],n=new Set,s=new Set,i=t,a=e;for(let o=0;o<ENr&&i;o+=1){n.add(a),kNr(i,r,s);let c=De(i||"");if(o===0&&r.length===0){let l=Xw(c(".cat-links a").first().attr("href"),a);if(l&&!n.has(l)){a=l,i=await Ble(a,{referer:e});continue}}let u=Xw(c(".nav-previous a").first().attr("href"),a);if(!u||n.has(u))break;a=u,i=await Ble(a,{referer:e})}return r.reverse()}function DNr(t){return(Array.isArray(t)?t.join(";"):String(t||"")).split(";").map(r=>r.trim()).filter(r=>["e","p","h"].includes(r.split("=")[0])).join("; ")}function Dle(t,e=jn.host){let r={"User-Agent":jn.ua,Referer:e||jn.host};return t&&(r.Cookie=t),r}async function BNr(t,e){let r=await fe({url:jn.playApi,method:"post",data:`d=${t}`,timeout:jn.timeout,responseType:"text",transformResponse:[i=>i],validateStatus:()=>!0,headers:{...Lle(jn.host),"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8"}});if(r.status<200||r.status>=300)throw new Error(`HTTP ${r.status}`);let n=JSON.parse(String(r.data||"{}")),s=SNr(n?.s?.[0]?.src);if(!s)throw new Error("empty play url");return{url:s,cookie:DNr(r.headers?.["set-cookie"])}}async function LNr(t,e){return{}}async function MNr(t,e){try{let r=Xft(await rM(),"\u9023\u8F09\u4E2D").slice(0,Jw);return{class:Jft,filters:{},list:r}}catch(r){return console.error("anime1 home failed:",r.message),{class:Jft,filters:{},list:[]}}}async function WNr(t,e){let r=t.body?.id||t.body?.tid||"\u9023\u8F09\u4E2D",n=t.body?.page||1;try{return Zft(Xft(await rM(),r),n)}catch(s){return console.error("anime1 category failed:",s.message),{list:[],page:Math.max(1,Number.parseInt(n,10)||1),pagecount:1,limit:Jw,total:0}}}async function $Nr(t,e){let r=String(t.body?.wd||"").trim(),n=t.body?.page||1;if(!r)return{list:[],page:1,pagecount:1,limit:Jw,total:0};try{let s=r.toLowerCase(),i=(await rM()).filter(a=>a.vod_name.toLowerCase().includes(s));return Zft(i,n)}catch(s){return console.error("anime1 search failed:",s.message),{list:[],page:Math.max(1,Number.parseInt(n,10)||1),pagecount:1,limit:Jw,total:0}}}async function UNr(t,e){let r=t.body?.id,n=(Array.isArray(r)?r:String(r||"").split(",")).map(a=>String(a||"").trim()).filter(Boolean),s=[],i=await rM().catch(()=>[]);for(let a of n){let o=Mle(a),c=vNr(a);try{let u=await Ble(c),l=De(u||""),d=TNr(i,a),f=Oy(l(".page-title, h1").first().text()),m=(await PNr(u,c)).map(h=>`${h.name}$${NNr({apiReq:h.apiReq,referer:c})}`).join("#");s.push({vod_id:o||a,vod_name:d?.vod_name||f||o||a,vod_pic:d?.vod_pic||jn.pic,vod_remarks:d?.vod_remarks||"",vod_year:d?.vod_year||"",type_name:d?.type_name||"",vod_actor:d?.vod_actor||"",vod_content:d?.vod_remarks||"",vod_play_from:"Anime1",vod_play_url:m})}catch(u){console.error("anime1 detail failed:",a,u.message)}}return{list:s}}async function FNr(t,e){let r=String(t.body?.id||"").trim(),n=ONr(r),s=String(n.apiReq||r).trim(),i=n.referer||jn.host;if(!s)return{parse:0,jx:0,url:"",header:Dle("",i)};try{let a=await BNr(s,i);return{parse:0,jx:0,url:a.url,playId:a.url,header:Dle(a.cookie,jn.host)}}catch(a){return console.error("anime1 play failed:",a.message),{parse:0,jx:0,url:"",header:Dle("",i)}}}var ept={meta:{key:jn.key,name:"\u300C\u76F4\u300DAnime1",type:3},api:async t=>{t.post("/init",LNr),t.post("/home",MNr),t.post("/category",WNr),t.post("/detail",UNr),t.post("/play",FNr),t.post("/search",$Nr)}};var ky="https://gimy01.tv",npt="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36",qNr=[{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"}],tpt={\u5287:"\u5267",\u96FB:"\u7535",\u8996:"\u89C6",\u7DDA:"\u7EBF",\u570B:"\u56FD",\u7522:"\u4EA7",\u7D9C:"\u7EFC",\u85DD:"\u827A",\u52D5:"\u52A8",\u756B:"\u753B",\u985E:"\u7C7B",\u5225:"\u522B",\u72C0:"\u72B6",\u614B:"\u6001",\u5C0E:"\u5BFC",\u984C:"\u9898",\u6B61:"\u6B22",\u6A02:"\u4E50",\u611B:"\u7231",\u5F8C:"\u540E",\u9580:"\u95E8",\u9F8D:"\u9F99",\u99AC:"\u9A6C",\u98A8:"\u98CE",\u96F2:"\u4E91",\u8207:"\u4E0E",\u842C:"\u4E07",\u7121:"\u65E0",\u7DDA\u4E0A\u770B:"\u7EBF\u4E0A\u770B",\u9023\u7E8C\u5287:"\u8FDE\u7EED\u5267",\u96FB\u8996\u5287:"\u7535\u89C6\u5267",\u96FB\u5F71:"\u7535\u5F71",\u52D5\u6F2B:"\u52A8\u6F2B",\u7D9C\u85DD:"\u7EFC\u827A"};function Py(t){return String(t||"").replace(/\/+$/,"")}function spt(t){return String(t||"").replace(/<[^>]+>/g," ").replace(/ /gi," ").replace(/&/gi,"&").replace(/"/gi,'"').replace(/'/g,"'").replace(/\s+/g," ").trim()}function Yo(t){let e=spt(t);return Object.keys(tpt).forEach(r=>{e=e.replace(new RegExp(r,"g"),tpt[r])}),e}function jNr(t){return String(t||"").replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Dy(t){let e=String(t||"").trim().replace(/^["']|["']$/g,"");return e?/^https?:\/\//i.test(e)?e:e.startsWith("//")?"https:"+e:e.startsWith("/")?Py(ky)+e:Py(ky)+"/"+e.replace(/^\.\//,""):""}function nM(t){return{"User-Agent":npt,"Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Referer:t||Py(ky)+"/"}}function QNr(t){let e=String(t||""),r=e.trim();if(!r.startsWith('"')||!r.endsWith('"'))return e;try{let n=JSON.parse(r);if(typeof n=="string"&&/(?:<!doctype\s+html|<html[\s>])/i.test(n))return n}catch{}return e}function HNr(t){return new Promise(e=>setTimeout(e,t))}function GNr(t){let e=String(t?.code||"").toUpperCase(),r=String(t?.message||"");return["ECONNRESET","ETIMEDOUT","ECONNABORTED","EAI_AGAIN"].includes(e)||/socket disconnected|TLS connection|timeout/i.test(r)}async function Zw(t,e={}){let r=Number.isInteger(e.retries)?e.retries:2,n;for(let s=0;s<=r;s+=1)try{let i=await fe(t,{method:e.method||"get",headers:{...nM(e.referer),...e.headers||{}},data:e.data,timeout:e.timeout||2e4,responseType:"text",transformResponse:[a=>a]});return QNr(i.data)}catch(i){if(n=i,s>=r||!GNr(i))throw i;await HNr(300*(s+1))}throw n}function zNr(t){let e=String(t||""),r=[/var\s+player_data\s*=\s*(\{[\s\S]*?\})\s*<\/script>/i,/var\s+player_aaaa\s*=\s*(\{[\s\S]*?\})\s*;/i,/player_data\s*=\s*(\{[\s\S]*?\})\s*;/i];for(let n of r){let s=e.match(n);if(s)try{return JSON.parse(s[1])}catch{}}return null}function KNr(t){let e=String(t?.url||"").trim(),r=String(t?.encrypt||"").trim();if(!e)return"";if(r==="1")try{return decodeURIComponent(e)}catch{return e}if(r==="2")try{return decodeURIComponent(Buffer.from(e,"base64").toString("utf8"))}catch{try{return Buffer.from(e,"base64").toString("utf8")}catch{return e}}return e}function ipt(t){let e=String(t||"").trim();if(!e)return null;try{return JSON.parse(e)}catch{let n=e.match(/\{[\s\S]*\}/);if(!n)return null;try{return JSON.parse(n[0])}catch{}}return null}function apt(t){return/^https?:\/\//i.test(t)&&/(?:\.m3u8|\.mp4|\.flv|\.m4v|\.m4s)(?:[?#]|$)/i.test(t)}function opt(t){let e=String(t||"").trim();if(!e)return"";if(apt(e))return e;let r=ipt(e);if(r&&typeof r=="object"){let s=opt(r.url||r.video||r.playurl);if(s)return s}let n=e.match(/https?:\/\/[^"'<>\s]+(?:\.m3u8|\.mp4|\.flv|\.m4v)(?:[^"'<>\s]*)?/i);return n?n[0]:""}function cpt(t,e){let r=String(t||""),n=String(e||"");if(/^JDQM-/i.test(r)||/^JDQM$/i.test(n))return"JDQM";if(/^JDHG-/i.test(r)||/^JDHG$/i.test(n))return"JDHG";if(/^JD-/i.test(r)||/^(?:JD4K|JD2K)$/i.test(n)&&/^JD/i.test(r))return"JD2K";if(/^JK2-/i.test(r)||/^JK2$/i.test(n))return"JK2";if(/^NSYS-/i.test(r)||/^NSYS$/i.test(n))return"NSYS";if(/^NBY-/i.test(r)||/^NBY$/i.test(n))return"NBY";if(/^JinLiDj-/i.test(r)||/^djplayer$/i.test(n))return"djplayer";if(/^(?:znjson|znkan)-/i.test(r)||/^znjson$/i.test(n))return"znjson";let s=r.match(/^(JSYBL|JSYMG|JSYQY|JSYDJ|JSYHS|JSYRR|JSYYK|JSYTX)-/i);return s?s[1].toUpperCase():/^(?:JSYBL|JSYMG|JSYQY|JSYDJ|JSYHS|JSYRR|JSYYK|JSYTX)$/i.test(n)?n.toUpperCase():/(?:iqiyi\.com|bilibili\.com|v\.qq\.com|sohu\.com|pptv\.com|letv\.com|xigua\.com|mgtv\.com)/i.test(r)?"etcjc":/v\.youku\.com/i.test(r)?"kmjc":"normal"}function VNr(t,e){let r=cpt(t,e);return/^(?:JD4K|JD2K|JDQM|JDHG)$/i.test(r)?"d":/^(?:JSYBL|JSYMG|JSYQY|JSYDJ|JSYHS|JSYRR|JSYYK|JSYTX)$/i.test(r)?"j":r==="normal"?"o":"v"}function YNr(t,e,r,n){let s="https://player.gimy.bot/"+VNr(t,e)+"/",i=cpt(t,e),a=n||r,o=s+"?url="+encodeURIComponent(t);return o+="&jctype="+encodeURIComponent(i),a&&(o+="&next="+encodeURIComponent("//"+a.replace(/^https?:\/\//i,""))),{parseBase:s,referer:o}}function rpt(t,e=Py(ky)){return{"User-Agent":npt,Referer:t||Py(ky)+"/",Origin:e}}function JNr(t){return{vod_id:t.vod_id||"",vod_name:t.vod_name||"",vod_pic:t.vod_pic||"",vod_remarks:t.vod_remarks||""}}function upt(t,e){let r=[],n={};return(e&&e.length?e:t.root()).find("a[href*='/vod/'], a[href*='/detail/']").each((i,a)=>{let o=t(a),c=o.attr("href")||"",u=Dy(c);if(!/(?:\/detail\/|\/vod\/)\d+\.html/i.test(u)||n[u])return;let l=Yo(o.attr("title")||o.find("img").attr("alt")||o.find(".title, .video-text, .module-poster-item-title, h3, h4, h5").first().text()||o.text());if(!l)return;let d=o.closest(".module-item, li, .public-list-box, .video-item, .item, .module-poster-item, .myui-vodlist__box"),f=Dy(o.attr("data-original")||o.attr("data-src")||o.attr("data-bg")||o.find("img").attr("data-original")||o.find("img").attr("data-src")||o.find("img").attr("src")||d.find("a.video-pic").first().attr("data-original")||d.find("a.video-pic").first().attr("data-src")||d.find("img").first().attr("data-original")||d.find("img").first().attr("data-src")||d.find("img").first().attr("src")||""),p=d.html()||o.parent().html()||"",m=String(p).match(/(?:更新至第?\d+集|更新第?\d+集|\(?\d+å…¨\)?|å…¨\d+集|已完結|已完结|HD中字|HD|TC|HC|搶先版|抢先版)/i);n[u]=!0,r.push(JNr({vod_id:u,vod_name:l,vod_pic:f,vod_remarks:m?Yo(m[0]):""}))}),r}function Vo(t,e){let r=new RegExp("<span[^>]*>\\s*"+jNr(e)+"\\s*[\uFF1A:]\\s*<\\/span>([\\s\\S]*?)<\\/(?:li|div)>","i"),n=String(t||"").match(r);return n?Yo(n[1]):""}function XNr(t){let e=[],r=[],n=new Set,s=(c,u)=>(Yo(c)||u||"\u6B63\u7247").replace(/[$#]/g," ").trim(),i=c=>{let u=[],l=new Set;return c.find("a[href*='/play/'], a[href*='/eps/']").each((d,f)=>{let p=t(f),m=p.attr("href")||"",h=Dy(m);if(!h||l.has(h))return;l.add(h);let y=s(p.attr("title")||p.text(),"\u7B2C"+(u.length+1)+"\u96C6");u.push(y+"$"+h)}),u},a=(c,u,l)=>{if(!u.length)return;let d=Yo(c)||"\u9ED8\u8BA4\u7EBF\u8DEF",f=String(l||d||r.length);n.has(f)||(n.add(f),r.push({from:d,urls:u.join("#")}))},o=new Map;return t(".source[data-route-switch], [data-line-name][data-route-switch]").each((c,u)=>{let l=t(u),d=String(l.attr("data-route-switch")||"").trim(),f=l.clone();f.children().remove();let p=Yo(l.attr("data-line-name")||f.text()||l.text());d&&p&&o.set(d,p)}),t(".episodes-route[data-route-sid], .eps[data-route-sid]").each((c,u)=>{let l=t(u),d=String(l.attr("data-route-sid")||"").trim();a(o.get(d)||"\u7EBF\u8DEF"+(d||r.length+1),i(l),"route:"+(d||r.length+1))}),t("#playTab a[href^='#con_playlist_']").each((c,u)=>{let l=t(u),d=String(l.attr("href")||"").replace(/^#/,""),f=Yo(l.text())||d;d&&e.push({tabId:d,name:f})}),t("ul[id^='con_playlist_']").each((c,u)=>{let l=t(u),d=l.attr("id")||"",f=Yo(l.prevAll("li").first().text())||d;d&&!e.some(p=>p.tabId===d)&&e.push({tabId:d,name:f})}),e.forEach(c=>{a(c.name,i(t("#"+c.tabId)),"tab:"+c.tabId)}),r.length||a("Gimy",i(t.root()),"fallback:gimy"),{playFrom:r.map(c=>c.from).join("$$$"),playUrl:r.map(c=>c.urls).join("$$$")}}async function ZNr(t,e){return{}}async function eOr(t,e){return{class:qNr}}async function tOr(t,e){let r=String(t.body?.id||"2"),n=Number.parseInt(t.body?.page||1,10);(!n||n<1)&&(n=1);let s=await Zw(Py(ky)+"/type/"+r+(n>1?"-"+n:"")+".html"),i=De(s),a=upt(i);return{page:n,pagecount:a.length>0?n+1:n,list:a}}async function rOr(t,e){let r=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],n=[];for(let s of r){let i=String(s||"").trim();if(!i)continue;let a=/^https?:\/\//i.test(i)?i:Dy(i),o=await Zw(a),c=De(o),u=XNr(c),l=c("h1.text-overflow, h1").first().text()||c("title").text(),d=Vo(o,"\u985E\u5225")||Vo(o,"\u7C7B\u522B"),f=d.match(/\b(?:19|20)\d{2}\b/)?.[0]||"";n.push({vod_id:a,vod_name:Yo(l.replace(/(?:線上看|线上看)[\s\S]*$/i,"")),vod_pic:Dy(c("meta[property='og:image']").attr("content")||(c(".details-pic .video-pic").attr("style")||"").match(/url\(([^)]+)\)/)?.[1]||c("img").first().attr("src")||""),vod_content:Yo(c(".switch-box .text, .details-content .text, .details-content, .detail-sketch").first().text()||c("meta[name='description']").attr("content")||""),vod_remarks:Vo(o,"\u72C0\u614B")||Vo(o,"\u72B6\u6001"),type_name:Yo(d.replace(/\s*[·.]\s*(?:19|20)\d{2}\b.*$/,"")),vod_year:Vo(o,"\u5E74\u4EE3")||Vo(o,"\u5E74\u4EFD")||f,vod_area:Vo(o,"\u570B\u5BB6/\u5730\u5340")||Vo(o,"\u56FD\u5BB6/\u5730\u533A")||Vo(o,"\u5730\u5340")||Vo(o,"\u5730\u533A"),vod_actor:Vo(o,"\u4E3B\u6F14")||Yo(c("li:contains('\u4E3B\u6F14') a, .detail__meta div:contains('\u4E3B\u6F14') a").map((p,m)=>c(m).text()).get().join(" / ")),vod_director:Vo(o,"\u5C0E\u6F14")||Vo(o,"\u5BFC\u6F14")||Yo(c("li:contains('\u5C0E\u6F14') a, li:contains('\u5BFC\u6F14') a, .detail__meta div:contains('\u5C0E\u6F14') a, .detail__meta div:contains('\u5BFC\u6F14') a").map((p,m)=>c(m).text()).get().join(" / ")),vod_play_from:u.playFrom,vod_play_url:u.playUrl})}return{list:n}}async function nOr(t,e){let r=String(t.body?.id||"").trim();if(!r)return{parse:1,url:""};let n=/^https?:\/\//i.test(r)?r:Dy(r);try{let s=await Zw(n,{referer:n}),i=zNr(s),a=KNr(i),o=String(i?.from||t.body?.flag||"").trim();if(!a)return{parse:1,url:n,header:nM(n)};if(apt(a))return{parse:0,url:a,header:rpt(n)};let c=i?.link_next?Dy(i.link_next):"",u=YNr(a,o,n,c),l=await Zw(u.parseBase+"parse.php?url="+encodeURIComponent(a)+"&_t="+Date.now(),{referer:u.referer,headers:{Accept:"application/json, text/plain, */*"}}),d=ipt(l),f=opt(d?.url||d?.video||d?.playurl);return f?{parse:0,url:f,header:rpt(u.referer,"https://player.gimy.bot")}:{parse:1,url:a,header:nM(n)}}catch(s){return console.error("gimy play failed:",s.message),{parse:1,url:n,header:nM(n)}}}async function sOr(t,e){let r=spt(t.body?.wd),n=Number.parseInt(t.body?.page||1,10);if((!n||n<1)&&(n=1),!r)return{page:n,pagecount:n,list:[]};let s=Py(ky)+"/search/-------------.html?wd="+encodeURIComponent(r)+"&page="+n,i=await Zw(s),a=De(i),o=upt(a,a(".box-main-content").first());return{page:n,pagecount:o.length>0?n+1:n,list:o}}var lpt={meta:{key:"gimy",name:"\u300C\u76F4\u300D\u5267\u8FF7",type:3},api:async t=>{t.post("/init",ZNr),t.post("/home",eOr),t.post("/category",tOr),t.post("/detail",rOr),t.post("/play",nOr),t.post("/search",sOr)}};var A_="https://www.dbku.tv",iOr="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36",aOr=2e4,dpt=[{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"}],oOr={\u7C7B\u578B:"tid",\u5267\u60C5:"class",\u5730\u533A:"area",\u5E74\u4EFD:"year",\u8BED\u8A00:"lang",\u5B57\u6BCD:"letter",\u6392\u5E8F:"by"},cOr={area:1,by:2,class:3,lang:4,letter:5,year:11},sM={expireAt:0,value:null};function x_(t){return String(t||"").replace(/\/+$/,"")}function pi(t=""){return String(t||"").replace(/<script[\s\S]*?<\/script>/gi," ").replace(/<style[\s\S]*?<\/style>/gi," ").replace(/<[^>]+>/g," ").replace(/ /gi," ").replace(/&/gi,"&").replace(/"/gi,'"').replace(/'/g,"'").replace(/\s+/g," ").trim()}function Em(t=""){let e=String(t||"").trim().replace(/^["']|["']$/g,"");return e?/^https?:\/\//i.test(e)?e:e.startsWith("//")?"https:"+e:e.startsWith("/")?x_(A_)+e:x_(A_)+"/"+e.replace(/^\.\//,""):""}function iM(t){return{"User-Agent":iOr,"Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Referer:t||x_(A_)+"/"}}async function tR(t,e={}){let r=/^https?:\/\//i.test(t)?t:Em(t),n=await fe(r,{method:e.method||"get",headers:{...iM(e.referer),...e.headers||{}},data:e.data,timeout:e.timeout||aOr,responseType:"text",transformResponse:[s=>s]});return String(n.data||"")}function uOr(t){let e=String(t?.url||"").trim(),r=String(t?.encrypt||"").trim();if(!e)return"";if(r==="1")try{return decodeURIComponent(e)}catch{return e}if(r==="2")try{return decodeURIComponent(Buffer.from(e,"base64").toString("utf8"))}catch{try{return Buffer.from(e,"base64").toString("utf8")}catch{return e}}return e}function lOr(t){let e=String(t||"").match(/var\s+player_data\s*=\s*(\{[\s\S]*?\})\s*<\/script>/i)||String(t||"").match(/player_data\s*=\s*(\{[\s\S]*?\})\s*;/i);if(!e)return null;try{return JSON.parse(e[1])}catch{return null}}function dOr(t){return/^https?:\/\//i.test(t)&&/(?:\.m3u8|\.mp4|\.flv|\.m4v|\.m4s)(?:[?#]|$)/i.test(t)}function fOr(t,e=1,r={}){let n=new Array(12).fill("");n[0]=String(r.tid||t||"1").trim(),n[1]=String(r.area||"").trim(),n[2]=String(r.by||r.sort||"").trim(),n[3]=String(r.class||"").trim(),n[4]=String(r.lang||"").trim(),n[5]=String(r.letter||"").trim(),n[8]=String(e||1).trim(),n[11]=String(r.year||"").trim();let s=n.map(i=>encodeURIComponent(i)).join("-");return`${x_(A_)}/vodshow/${s}.html`}function pOr(t,e){let r=String(t||"").match(/\/vodshow\/([^/?#]+)\.html/i);if(!r)return"";let n=decodeURIComponent(r[1]).split("-");if(e==="tid")return n[0]||"";let s=cOr[e];return s===void 0?"":n[s]||""}function mOr(t){let e={};return t(".myui-screen__list").each((r,n)=>{let s=pi(t(n).find("li:first a").text()),i=oOr[s];if(!i)return;let a=[];t(n).find("li a").slice(1).each((o,c)=>{let u=pi(t(c).text());if(!u)return;let l=t(c).attr("href")||"",d=o===0?"":pOr(l,i);a.push({n:u,v:d})}),a.length>1&&(e[i]={key:i,name:"",init:"",value:a})}),Object.values(e)}async function hOr(){if(sM.value&&sM.expireAt>Date.now())return sM.value;let t={};return await Promise.all(dpt.map(async e=>{try{let r=await tR(`${x_(A_)}/vodshow/${e.type_id}-----------.html`),n=De(r),s=mOr(n);s.length&&(t[e.type_id]=s)}catch(r){console.error(`dbku filter fetch failed ${e.type_id}:`,r.message)}})),sM={expireAt:Date.now()+6*60*60*1e3,value:t},t}function fpt(t,e){let r=e&&e.length?e:t.root(),n=[],s=new Set;return r.find(".myui-vodlist__box").each((i,a)=>{let o=t(a),c=o.find('a.myui-vodlist__thumb[href*="/voddetail/"]').first(),u=c.attr("href")||"",l=u.match(/\/voddetail\/\d+\.html/i)?u:"",d=pi(c.attr("title")||o.find(".title a").first().text());!l||!d||s.has(l)||(s.add(l),n.push({vod_id:l,vod_name:d,vod_pic:Em(c.attr("data-original")||c.find("img").attr("data-original")||c.find("img").attr("src")||""),vod_remarks:pi(c.find(".pic-text").text())}))}),n.length||r.find(".myui-vodlist__media li").each((i,a)=>{let o=t(a),c=o.find('a[href*="/voddetail/"]').first(),u=c.attr("href")||"",l=u.match(/\/voddetail\/\d+\.html/i)?u:"",d=pi(c.attr("title")||o.find(".title a").first().text());!l||!d||s.has(l)||(s.add(l),n.push({vod_id:l,vod_name:d,vod_pic:Em(o.find("[data-original]").first().attr("data-original")||o.find("img").first().attr("src")||""),vod_remarks:pi(o.find(".pic-text, .pic-tag").first().text())}))}),n}function eR(t,e){let r=t(".myui-content__detail p.data").filter((s,i)=>pi(t(i).text()).includes(`${e}\uFF1A`)).first();if(!r.length)return"";let n=r.clone();return n.find(".text-muted, .split-line").remove(),pi(n.text().replace(new RegExp(`^${e}[\uFF1A:]?`),""))}function gOr(t){let e=[],r=[];if(t('.tab-content [id^="playlist"]').each((n,s)=>{let i=[];t(s).find('a[href*="/vodplay/"]').each((a,o)=>{let c=pi(t(o).text()),u=t(o).attr("href")||"";!c||!u||i.push(`${c}$${Em(u)}`)}),i.length&&(e.push(n===0?"\u72EC\u64AD\u5E93":`\u72EC\u64AD\u5E93${n+1}`),r.push(i.join("#")))}),!r.length){let n=[];t('a[href*="/vodplay/"]').each((s,i)=>{let a=pi(t(i).text()),o=t(i).attr("href")||"";!a||!o||!/第|正片|HD|全集|期|集/i.test(a)||n.push(`${a}$${Em(o)}`)}),n.length&&(e.push("\u72EC\u64AD\u5E93"),r.push([...new Set(n)].join("#")))}return{playFrom:e.join("$$$"),playUrl:r.join("$$$")}}async function yOr(t,e){return{}}async function AOr(t,e){return{class:dpt,filters:await hOr()}}async function xOr(t,e){let r=String(t.body?.id||"1").trim(),n=Number.parseInt(t.body?.page||1,10);(!n||n<1)&&(n=1);let s=t.body?.filters||{},i=fOr(r,n,s),a=await tR(i),o=De(a),c=fpt(o,o("#content-container").first()),u=pi(o(".myui-page").first().text()),l=Number.parseInt(u.match(/\d+\s*\/\s*(\d+)/)?.[1]||"",10),d=o(".myui-page a").filter((f,p)=>pi(o(p).text())==="\u4E0B\u4E00\u9875").length>0;return{page:n,pagecount:l||(d?n+1:n),limit:48,total:(l||(d?n+1:n))*48,list:c}}async function bOr(t,e){let r=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],n=[];for(let s of r){let i=Em(s);if(!i)continue;let a=await tR(i),o=De(a),c=gOr(o);n.push({vod_id:String(s||""),vod_name:pi(o(".myui-content__detail h1.title").first().text()||o("title").text().replace(/线上看[\s\S]*$/i,"")),vod_pic:Em(o(".myui-content__thumb img").first().attr("data-original")||o("meta[property='og:image']").attr("content")||""),type_name:eR(o,"\u5206\u7C7B"),vod_year:eR(o,"\u5E74\u4EFD"),vod_area:eR(o,"\u5730\u533A"),vod_remarks:pi(o('.myui-content__detail .data:contains("\u66F4\u65B0") .text-red').first().text()),vod_actor:eR(o,"\u4E3B\u6F14"),vod_director:eR(o,"\u5BFC\u6F14"),vod_content:pi(o("#desc .data p").first().text()||o("#desc .sketch").first().text()),vod_play_from:c.playFrom,vod_play_url:c.playUrl})}return{list:n}}async function _Or(t,e){let r=String(t.body?.id||"").trim();if(!r)return{parse:1,url:""};let n=Em(r);try{let s=await tR(n,{referer:n}),i=lOr(s),a=uOr(i);return dOr(a)?{parse:0,url:a,header:iM(n)}:{parse:1,url:a||n,header:iM(n)}}catch(s){return console.error("dbku play failed:",s.message),{parse:1,url:n,header:iM(n)}}}async function EOr(t,e){let r=pi(t.body?.wd||""),n=Number.parseInt(t.body?.page||1,10);if((!n||n<1)&&(n=1),!r)return{page:n,pagecount:n,list:[]};let s=`${x_(A_)}/vodsearch/-------------.html?wd=${encodeURIComponent(r)}&page=${n}`,i=await tR(s),a=De(i),o=fpt(a,a("#content-container").first()),c=pi(a(".myui-page").first().text()),u=Number.parseInt(c.match(/\d+\s*\/\s*(\d+)/)?.[1]||"",10),l=a(".myui-page a").filter((d,f)=>pi(a(f).text())==="\u4E0B\u4E00\u9875").length>0;return{page:n,pagecount:u||(l?n+1:n),list:o}}var ppt={meta:{key:"dbku",name:"\u300C\u76F4\u300D\u72EC\u64AD\u5E93",type:3},api:async t=>{t.post("/init",yOr),t.post("/home",AOr),t.post("/category",xOr),t.post("/detail",bOr),t.post("/play",_Or),t.post("/search",EOr)}};var Wle="https://hanxiaoquan.hanju.workers.dev",vOr="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36",SOr=[{type_id:"0",type_name:"\u97E9\u5267"},{type_id:"1",type_name:"\u97E9\u5F71"},{type_id:"2",type_name:"\u65E5\u97E9\u7EFC"},{type_id:"3",type_name:"\u65E5\u97E9\u6F2B"},{type_id:"100",type_name:"\u70ED\u95E8"}];function $le(t){return String(t||"").replace(/\/+$/,"")}function pd(t){return String(t||"").replace(/\s+/g," ").trim()}function IOr(t){let e=String(t||"").trim();return e?e.startsWith("//")?"https:"+e:/^https?:\/\//i.test(e)?e:$le(Wle)+(e.startsWith("/")?e:"/"+e):""}function mpt(){let t=$le(Wle);return{"User-Agent":vOr,Accept:"application/json, text/plain, */*","Content-Type":"application/json",Origin:t,Referer:t+"/"}}async function Ule(t,e,r=3e4){let n=await fe($le(Wle)+t,{method:"post",headers:mpt(),data:e||{},timeout:r,responseType:"json"});return typeof n.data=="string"?JSON.parse(n.data):n.data||{}}function Fle(t){return{vod_id:String(t?.vod_id||""),vod_name:pd(t?.vod_name),vod_pic:IOr(t?.vod_pic),vod_remarks:pd(t?.vod_remarks||t?.vod_class),vod_year:pd(t?.vod_year),vod_director:pd(t?.vod_director),vod_actor:pd(t?.vod_actor),vod_content:pd(t?.vod_content)}}function b_(t){return String(t||"").toLowerCase().replace(/\s+/g,"").replace(/[·•・\-—_::,,.。'"“”‘’!?!?()()\[\]【】]/g,"")}function COr(t,e){let r=b_(e),n=b_(t?.vod_name),s=b_(t?.vod_remarks),i=b_(t?.vod_actor),a=b_(t?.vod_director),o=b_(t?.vod_content);return r?n===r?1e4:n.startsWith(r)?8e3-n.length:n.includes(r)?6e3-n.indexOf(r):s.includes(r)?2500-s.indexOf(r):i.includes(r)?1800-i.indexOf(r):a.includes(r)?1500-a.indexOf(r):o.includes(r)?500-o.indexOf(r):0:0}function TOr(t,e,r){let n=[],s=Array.isArray(t)?t:[];for(let i of s){let a=Fle(i);if(!a.vod_id||!a.vod_name||r[a.vod_id])continue;let o=COr(a,e);o<=0||(r[a.vod_id]=!0,a._searchScore=o,n.push(a))}return n}function wOr(t){let e=Fle(t);e.type_name=pd(t?.vod_class),e.vod_area=pd(t?.vod_area)||"\u97E9\u56FD";let n=(Array.isArray(t?.vod_play_url)?t.vod_play_url:[]).map((s,i)=>{let a=pd(s?.t||s?.name)||"\u7B2C"+(i+1)+"\u96C6",o=String(s?.u||s?.url||"").trim();return o?a+"$"+o:""}).filter(Boolean).join("#");return e.vod_play_from=n?"\u9ED8\u8BA4\u7EBF\u8DEF":"",e.vod_play_url=n,e}function ROr(t,e,r){let n=Number(t?.pagecount||t?.pageCount||t?.totalPage||0);return Number.isFinite(n)&&n>0?n:r.length>0?e+1:e}async function NOr(t,e){return{}}async function OOr(t,e){return{class:SOr}}async function kOr(t,e){let r=String(t.body?.id||"0"),n=Number.parseInt(t.body?.page||1,10);(!n||n<1)&&(n=1);let s=await Ule("/api/list",{c_id:r,page:String(n)}),i=(Array.isArray(s?.data)?s.data:[]).map(Fle).filter(a=>a.vod_id&&a.vod_name);return{page:n,pagecount:ROr(s,n,i),total:s?.total||i.length,list:i}}async function POr(t,e){let r=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],n=[];for(let s of r){let i=String(s||"").trim();if(!i)continue;let a=await Ule("/api/detail",{b_id:i});a?.data&&n.push(wOr(a.data))}return{list:n}}async function DOr(t,e){let r=String(t.body?.id||"").trim();return r?{parse:0,url:r,header:mpt()}:{parse:1,url:""}}async function BOr(t,e){let r=pd(t.body?.wd),n=Number.parseInt(t.body?.page||1,10);if((!n||n<1)&&(n=1),!r)return{page:n,pagecount:n,list:[]};let s={},i=[],a=n===1?5:n;for(let o=n;o<=a;o++){let c=await Ule("/api/search",{keyword:r,page:String(o)},6e4),u=TOr(c?.data,r,s);if(i.push(...u),!Array.isArray(c?.data)||c.data.length<20||n>1)break}return i.sort((o,c)=>{let u=Number(c._searchScore||0)-Number(o._searchScore||0);return u!==0?u:o.vod_name.localeCompare(c.vod_name,"zh-CN")}),i.forEach(o=>{delete o._searchScore}),{page:n,pagecount:i.length>0?n+1:n,list:i}}var hpt={meta:{key:"hanxiaoquan",name:"\u300C\u76F4\u300D\u97E9\u5C0F\u5708",type:3},api:async t=>{t.post("/init",NOr),t.post("/home",OOr),t.post("/category",kOr),t.post("/detail",POr),t.post("/play",DOr),t.post("/search",BOr)}};var jle=Ce(require("node:vm"),1),_o=Ce(Xn(),1);var wa={key:"wbbb",name:"\u6B6A\u6BD4\u5DF4\u535C",host:"https://wbbb1.com",ua:"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/136.0.0.0 Safari/537.36",timeout:2e4},gpt=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"3",type_name:"\u52A8\u6F2B"},{type_id:"4",type_name:"\u7EFC\u827A"}],LOr=/^(?:lzm3u8|bfzym3u8)$/i;function ypt(t){return String(t||"").replace(/\/+$/,"")}function Ws(t,e,r=1,n=""){let s=String(t||"").match(e);return s&&s[r]||n}function Rs(t=""){return String(t).replace(/<script[\s\S]*?<\/script>/gi," ").replace(/<style[\s\S]*?<\/style>/gi," ").replace(/<[^>]+>/g," ").replace(/ /gi," ").replace(/&/gi,"&").replace(/"/gi,'"').replace(/'/g,"'").replace(/\s+/g," ").trim()}function qle(t=""){return Rs(t).replace(/\s*\/\s*/g,"/").replace(/^\/+|\/+$/g,"").trim()}function Apt(t=""){return String(t).replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Eo(t=""){let e=String(t||"").trim();return e?/^https?:\/\//i.test(e)?e:e.startsWith("//")?`https:${e}`:e.startsWith("/")?ypt(wa.host)+e:ypt(wa.host)+"/"+e.replace(/^\.\//,""):""}function MOr(t=""){let e=String(t||"").trim();if(!e)return"";if(e.startsWith("//"))return e;if(/^https?:\/\//i.test(e))try{let r=new URL(e);return`//${r.host}${r.pathname}${r.search}${r.hash}`}catch{}if(e.startsWith("/"))try{return`//${new URL(wa.host).host}${e}`}catch{}return e}function WOr(t){return(Array.isArray(t)?t:[]).map(e=>String(e||"").split(";")[0].trim()).filter(Boolean).join("; ")}function Ept(t=`${wa.host}/`){return{"User-Agent":wa.ua,Referer:t,"Accept-Language":"zh-CN,zh;q=0.9"}}async function E_(t,e={}){let r=/^https?:\/\//i.test(t)?t:Eo(t),n=await fe({url:r,method:e.method||"get",data:e.data,timeout:e.timeout||wa.timeout,responseType:"text",transformResponse:[s=>s],validateStatus:()=>!0,headers:{...Ept(e.referer),...e.headers||{}}});if(n.status<200||n.status>=300)throw new Error(`HTTP ${n.status}`);return String(n.data||"")}async function $Or(t,e={}){let r=await fe({url:t,method:e.method||"get",data:e.data,timeout:e.timeout||wa.timeout,validateStatus:()=>!0,headers:e.headers||{}});if(r.status<200||r.status>=300)throw new Error(`HTTP ${r.status}`);return typeof r.data=="string"?JSON.parse(r.data):r.data}function Qle(t=""){let e=Rs(String(t||"")).replace(/\s+/g,"").trim();return!e||/^(?:排序|选择播放源|切换播放源|更多|展开|æ”¶èµ·)$/i.test(e)}function UOr(t=""){let e=String(t||"").trim();if(!e)return"";let r=e.match(/\/detail\/(\d+)\.html/i)||e.match(/^(\d+)$/);return r?r[1]:e}function FOr(t=""){if(t&&typeof t=="object"&&!Array.isArray(t)){let i=Eo(t.playUrl||t.playId||t.url||t.id||""),a=Rs(t.name||"").trim();return!i||!a?null:{name:a,id:i,playId:i,playUrl:i,url:i}}let e=String(t||"").trim();if(!e)return null;let r=e.indexOf("$");if(r<0)return null;let n=e.slice(0,r).trim(),s=Eo(e.slice(r+1).trim());return!n||!s?null:{name:n,id:s,playId:s,playUrl:s,url:s}}function xpt(t,e,r=0){if(Qle(t))return null;let n=Rs(String(t||"")).replace(/\s+/g," ").trim()||`\u7EBF\u8DEF${r+1}`,s=new Set,i=[];for(let a of Array.isArray(e)?e:[]){let o=FOr(a);!o||s.has(o.playId)||(s.add(o.playId),i.push(o))}return i.length?{name:n,url:i.map(a=>`${a.name}$${a.playUrl}`).join("#"),episodes:i}:null}function qOr(t){let e=Ws(t,/href=["']\/detail\/(\d+)\.html["']/i,1,""),r=Rs(Ws(t,/<div class=["']module-(?:poster-item-title|card-item-title)["']>([\s\S]*?)<\/div>/i,1,""))||Ws(t,/alt=["']([^"']+)["']/i,1,""),n=Eo(Ws(t,/(?:data-original|data-src|src)=["']([^"']+)["']/i,1,"")),s=Rs(Ws(t,/<div class=["']module-item-note["']>([\s\S]*?)<\/div>/i,1,""));return{vod_id:e,vod_name:r,vod_pic:n,vod_remarks:s}}function Gle(t){let e=String(t||""),r=[],n=/<a href=["']\/detail\/(\d+)\.html["'] title=["']([^"']+)["'] class=["']module-poster-item module-item["']>([\s\S]*?)<\/a>/gi,s;for(;(s=n.exec(e))!==null;){let a=s[0];r.push({vod_id:s[1],vod_name:Rs(s[2]),vod_pic:Eo(Ws(a,/(?:data-original|data-src|src)=["']([^"']+)["']/i,1,"")),vod_remarks:Rs(Ws(a,/<div class=["']module-item-note["']>([\s\S]*?)<\/div>/i,1,""))})}if(r.length)return r;let i=/<div class=["']module-card-item module-item["']>([\s\S]*?)<\/div>\s*<\/div>/gi;for(;(s=i.exec(e))!==null;){let a=qOr(s[1]);a.vod_id&&a.vod_name&&r.push(a)}return r}function jOr(t){let e=[],r=/<div[^>]*class=["'][^"'>]*\bmodule-tab-item\b[^"'>]*["'][^>]*>([\s\S]*?)<\/div>/gi,n;for(;(n=r.exec(t))!==null;){let s=n[0],i=Ws(s,/data-dropdown-value\s*=\s*['"]([^'"]+)['"]/i,1,"").trim();if(i){Qle(i)||e.push(i);continue}let a=Rs(n[1]||"").trim();a&&!Qle(a)&&e.push(a)}return e}function QOr(t){let e=[],r=/<div class=["']module-play-list-content[^"']*["']>([\s\S]*?)<\/div>/gi,n;for(;(n=r.exec(t))!==null;){let i=n[1],a=[],o=/<a[^>]+class=["']module-play-list-link[^"']*["'][^>]+href=["']([^"']+)["'][^>]*>([\s\S]*?)<\/a>/gi,c;for(;(c=o.exec(i))!==null;){let u=Eo(c[1]),l=Rs(c[2]).trim();!u||!l||a.push(`${l}$${u}`)}a.length&&e.push(a)}if(e.length)return e;let s=[...t.matchAll(/<a[^>]+href=["']([^"']*\/(?:vplay|play)\/[^"'#]+)["'][^>]*>([\s\S]*?)<\/a>/gi)];return s.length?[s.map(i=>`${Rs(i[2]).trim()||"\u64AD\u653E"}$${Eo(i[1])}`)]:e}function HOr(t="",e=""){let r=Rs(Ws(t,/<a[^>]+module-play-list-link[^"']*active[^"']*[^>]*>([\s\S]*?)<\/a>/i,1,"")),n=Rs(Ws(t,/(?:正在播放|当前播放)[^::]*[::]\s*([\s\S]*?)(?:<|$)/i,1,"")),s=r||n;return e&&s&&(s=s.replace(new RegExp(`^${Apt(e)}\\s*`),"").trim(),s=s.replace(new RegExp(`^\u300A?${Apt(e)}\u300B?\\s*`),"").trim()),s.trim()}function GOr(t="",e={}){let r=String(e?.vod_data?.vod_name||"").trim(),n=HOr(t,r);return`\u5728\u7EBF\u64AD\u653E${r}${n?` ${n}`:""}`.trim()||r||"\u5728\u7EBF\u64AD\u653E"}function zOr(t){let e=[/var\s+player_aaaa\s*=\s*(\{.*?\})<\/script>/s,/var\s+player_.*?=\s*(\{.*?\})<\/script>/s,/player_aaaa\s*=\s*(\{.*?\})\s*;/s,/player_data\s*=\s*(\{.*?\})\s*;/s];for(let r of e){let n=String(t||"").match(r);if(n)try{return JSON.parse(n[1])}catch{}}return null}function KOr(t,e){let r=String(t||"").trim(),n=String(e||"").trim();if(n==="1")try{r=unescape(r)}catch{}else if(n==="2"){try{r=Buffer.from(r,"base64").toString("utf8")}catch{}try{r=unescape(r)}catch{}}return Eo(r)}function Hle(t,e){let r=String(t||"").trim(),n=String(e||"").trim();if(!r)return!1;if(/\.(?:m3u8|mp4|m4v|m4a|mp3|flv|avi|mkv|mov|webm)(?:[?#]|$)/i.test(r)||/^(?:m3u8|mp4|m4v|m4a|mp3|flv|avi|mkv|mov|webm)$/i.test(n)&&/^https?:\/\//i.test(r)||LOr.test(n))return!0;try{let s=new URL(r);return/\.(?:m3u8|mp4|m4v|m4a|mp3|flv|avi|mkv|mov|webm)(?:$|\?)/i.test(s.pathname+s.search)}catch{return!1}}function bpt(t=""){let e=String(t||"").trim();if(/^[A-Za-z0-9+/]+={0,2}$/.test(e)&&e.length%4===0)try{return _o.default.enc.Base64.parse(e)}catch{}return _o.default.enc.Utf8.parse(e)}function VOr(t){let e=()=>{},r=function(){return{on:e,hide:e,show:e,html:e,text:e,click:e,append:e,remove:e,css:e,attr:e,addClass:e,removeClass:e,find:()=>({}),val:()=>"",ready:e,length:0}};r.post=e,r.ajax=e,r.get=e,r.fn={};let n=new URL(t),s={console,CryptoJS:_o.default,URL,URLSearchParams,Buffer,atob:i=>Buffer.from(i,"base64").toString("binary"),btoa:i=>Buffer.from(i,"binary").toString("base64"),setTimeout:e,setInterval:()=>0,clearTimeout:e,clearInterval:e,fetch:async()=>({ok:!0,status:200,headers:new Map,text:async()=>"",json:async()=>({})}),localStorage:{getItem:()=>null,setItem:e,removeItem:e},sessionStorage:{getItem:()=>null,setItem:e,removeItem:e},navigator:{userAgent:wa.ua,clipboard:{writeText:async()=>{}}},document:{title:"wbbb-parser",body:{},addEventListener:e,querySelector:()=>null,createElement:()=>({style:{},click:e}),getElementById:()=>({style:{},addEventListener:e,play:async()=>{},pause:e})},location:{origin:n.origin,pathname:n.pathname,search:n.search,href:n.toString(),host:n.host},window:null,top:null,parent:null,self:null,$:r,jQuery:r,Artplayer(){return{on:e,once:e,emit:e,destroy:e,template:{},plugins:{},setting:{show:e},controls:{add:e},layers:{add:e},events:{proxy:e},notice:{show:e},storage:{get:()=>null,set:e}}},animation:{}};return s.window=s,s.top=s,s.parent=s,s.self=s,s}async function YOr(t,e){let r=Ws(e,/<script[^>]+src=["']([^"']*setting\.js[^"']*)["']/i,1,"");if(!r)throw new Error("setting.js missing");let n=new URL(r,t).toString(),i=`${await E_(n,{referer:t})} +;globalThis.__wbbbResolveRuntime={ urlValueurl, keyValue, vkeyValue, ckeyValue, nextParam, titleParam };`,a=VOr(t);jle.default.createContext(a),jle.default.runInContext(i,a,{timeout:5e3});let o={...a.__wbbbResolveRuntime||{},decrypt:typeof a.decrypt=="function"?a.decrypt.bind(a):null,deplay:typeof a.deplay=="function"?a.deplay.bind(a):null};if(!o.urlValueurl||!o.keyValue||!o.vkeyValue||!o.ckeyValue)throw new Error("setting runtime params missing");return o}async function JOr(t,e,r){let n=MOr(e),s=String(r||"").trim(),i=`https://xn--qvr2v.850088.xyz/player/?url=${encodeURIComponent(t)}${n?`&next=${encodeURIComponent(n)}`:""}${s?`&title=${encodeURIComponent(s)}`:""}`,a=await fe.get(i,{timeout:wa.timeout,responseType:"text",transformResponse:[y=>y],validateStatus:()=>!0,headers:Ept(`${wa.host}/`)});if(a.status<200||a.status>=300)throw new Error(`HTTP ${a.status}`);let o=String(a.data||""),c=WOr(a.headers?.["set-cookie"]),u=await YOr(i,o),l=u.urlValueurl||`${String(t||"").trim()}${n?`&next=${n}`:""}`,d="https://xn--qvr2v.850088.xyz/player/api.php",f=new URLSearchParams({url:l,key:u.keyValue,vkey:u.vkeyValue,ckey:u.ckeyValue}).toString(),p=await $Or(d,{method:"post",data:f,headers:{"User-Agent":wa.ua,"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8","X-Requested-With":"XMLHttpRequest",Referer:i,Origin:"https://xn--qvr2v.850088.xyz",...c?{Cookie:c}:{}}});if(!p||Number(p.code)!==200||!p.url)throw new Error(p?.msg||"parse api failed");let m=String(p.url||"").trim(),h="";if(m&&u&&typeof u.decrypt=="function")try{h=(u.decrypt(m)||"").trim();try{h=decodeURIComponent(h)}catch{}}catch{}if(!h&&m&&u&&typeof u.deplay=="function")try{let y=String(u.deplay(p.aes_key||"")||"").trim(),g=String(u.deplay(p.aes_iv||"")||"").trim();if(y&&g){h=(_o.default.AES.decrypt(m,_o.default.enc.Utf8.parse(y),{iv:_o.default.enc.Utf8.parse(g),mode:_o.default.mode.CBC,padding:_o.default.pad.Pkcs7}).toString(_o.default.enc.Utf8)||"").trim();try{h=decodeURIComponent(h)}catch{}}}catch{}if(!h){let y=bpt(p.aes_key||""),g=bpt(p.aes_iv||"");if(m&&y&&g)try{h=(_o.default.AES.decrypt(m,y,{iv:g,mode:_o.default.mode.CBC,padding:_o.default.pad.Pkcs7}).toString(_o.default.enc.Utf8)||"").trim();try{h=decodeURIComponent(h)}catch{}}catch{}}if(!h&&/^https?:\/\//i.test(m)&&(h=m),!h)try{h=decodeURIComponent(m)}catch{h=m}return h=Eo(h),Hle(h,p.type||"")||(h=i),{url:h,type:p.type||"",parsePageUrl:i}}function __(t={}){return{"User-Agent":wa.ua,Referer:`${wa.host}/`,Origin:wa.host,...t}}function _pt(t,e={}){return{parse:1,jx:1,url:t,playId:t,urls:[{name:"\u55C5\u63A2\u7EBF\u8DEF",url:t,playId:t}],header:__(e)}}async function XOr(t,e){return{}}async function ZOr(t,e){try{let r=await E_("/");return{class:gpt,filters:{},list:Gle(r).slice(0,40)}}catch(r){return console.error("wbbb home failed:",r.message),{class:gpt,filters:{},list:[]}}}async function ekr(t,e){let r=String(t.body?.id||"1"),n=Number.parseInt(t.body?.page||1,10);(!n||n<1)&&(n=1);try{let s=n>1?`/show/${r}--------${n}---.html`:`/show/${r}-----------.html`,i=await E_(s),a=Gle(i),o=i.includes('title="\u4E0B\u4E00\u9875"')||i.includes("title='\u4E0B\u4E00\u9875'");return{page:n,pagecount:o?n+1:n,limit:20,total:(n-1)*20+a.length+(o?1:0),list:a}}catch(s){return console.error("wbbb category failed:",s.message),{page:n,pagecount:n,limit:20,total:0,list:[]}}}async function tkr(t,e){let r=t.body?.id,n=(Array.isArray(r)?r:String(r||"").split(",")).map(i=>String(i||"").trim()).filter(Boolean),s=[];for(let i of n)try{let a=UOr(i),o=/^https?:\/\//i.test(a)?a:`/detail/${a}.html`,c=await E_(o),u=[...c.matchAll(/<div class=["']module-info-tag-link["']>([\s\S]*?)<\/div>/gi)].map(h=>h[1]),l=jOr(c),d=QOr(c),f=[];if(d.forEach((h,y)=>{let g=xpt(l[y]||`\u7EBF\u8DEF${y+1}`,h,y);g&&f.push(g)}),f.length===0){let h=new Set,y=[...c.matchAll(/<a[^>]+href=["']([^"']*\/(?:vplay|play)\/[^"']+\.html)["'][^>]*>([\s\S]*?)<\/a>/gi)].map((b,x)=>{let A=Eo(b[1]),S=Rs(b[2]).trim()||`\u7B2C${x+1}\u96C6`;return!A||h.has(A)?"":(h.add(A),`${S}$${A}`)}).filter(Boolean),g=xpt(l[0]||"\u64AD\u653E\u7EBF\u8DEF",y,0);g&&(f=[g])}let p=f.map(h=>h.name),m=f.map(h=>h.url);s.push({vod_id:a,vod_name:Rs(Ws(c,/<h1[^>]*>([\s\S]*?)<\/h1>/i,1,"")),vod_pic:Eo(Ws(c,/<div class=["']module-item-pic["']>[\s\S]*?<img[^>]+data-original=["']([^"']+)["']/i,1,""))||Eo(Ws(c,/<div class=["']module-item-pic["']>[\s\S]*?<img[^>]+(?:data-src|src)=["']([^"']+)["']/i,1,"")),type_name:qle(u[2]||""),vod_year:Rs(u[0]||""),vod_area:Rs(u[1]||""),vod_remarks:Rs(Ws(c,/<div class=["']module-item-note["']>([\s\S]*?)<\/div>/i,1,""))||Rs(Ws(c,/\u66f4\u65b0\u81f3[^<\s]+/,0,"")),vod_actor:qle(Ws(c,/\u4e3b\u6f14:[\s\S]*?<div[^>]*class=["']module-info-item-content["']>([\s\S]*?)<\/div>/i,1,"")),vod_director:qle(Ws(c,/\u5bfc\u6f14:[\s\S]*?<div[^>]*class=["']module-info-item-content["']>([\s\S]*?)<\/div>/i,1,"")),vod_content:Rs(Ws(c,/<div class=["']module-info-introduction-content[^"']*["'][^>]*>([\s\S]*?)<\/div>/i,1,"")),vod_play_from:p.join("$$$"),vod_play_url:m.join("$$$")})}catch(a){console.error("wbbb detail failed:",i,a.message)}return{list:s}}async function rkr(t,e){let r=String(t.body?.wd||"").trim(),n=Number.parseInt(t.body?.page||1,10);if((!n||n<1)&&(n=1),!r)return{page:n,pagecount:n,total:0,list:[]};try{let s=`/search/-------------.html?wd=${encodeURIComponent(r)}${n>1?`&page=${n}`:""}`,i=await E_(s),a=Gle(i);return{page:n,pagecount:a.length>=20?n+1:n,total:a.length,list:a}}catch(s){return console.error("wbbb search failed:",s.message),{page:n,pagecount:n,total:0,list:[]}}}async function nkr(t,e){let r=String(t.body?.id||"").trim();if(!r)return{parse:1,jx:1,url:"",playId:""};let n=/^https?:\/\//i.test(r)?r:Eo(r);try{let s=await E_(n,{referer:n}),i=zOr(s);if(!i)return{parse:0,jx:0,url:n,playId:n,header:__()};let a=String(i.from||t.body?.flag||"").trim(),o=KOr(i.url,i.encrypt);if(Hle(o,a))return{parse:0,jx:0,url:o,playId:o,header:__({Referer:n})};let c=String(i.parse||i.jx||"").trim();if(c){let u=/^https?:\/\//i.test(c)?`${c}${encodeURIComponent(o)}`:Eo(`${c}${encodeURIComponent(o)}`);return{parse:0,jx:0,url:u,playId:u,header:__({Referer:n})}}try{let u=await JOr(String(i.url||""),n,GOr(s,i));if(u?.url){let l=__({Referer:u.parsePageUrl||n});return Hle(u.url,u.type||"")?{parse:0,jx:0,url:u.url,playId:u.url,header:l}:_pt(u.url,l)}}catch(u){console.warn("wbbb resolve failed:",u.message)}return _pt(o||n,{Referer:n})}catch(s){return console.error("wbbb play failed:",s.message),{parse:1,jx:1,url:n,playId:n,header:__({Referer:n})}}}var vpt={meta:{key:wa.key,name:"\u300C\u76F4\u300D\u6B6A\u6BD4",type:3},api:async t=>{t.post("/init",XOr),t.post("/home",ZOr),t.post("/category",ekr),t.post("/detail",tkr),t.post("/play",nkr),t.post("/search",rkr)}};var nR={key:"girigiri",name:"girigiri\u7231\u52A8\u6F2B",host:"https://ani.girigirilove.com",ua:"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/134.0.0.0 Safari/537.36",timeout:15e3},Ra=nR.host,zle=nR.ua,rR=48;function qu(t){return String(t||"").replace(/<script[\s\S]*?<\/script>/gi," ").replace(/<style[\s\S]*?<\/style>/gi," ").replace(/<[^>]+>/g," ").replace(/ /gi," ").replace(/&/gi,"&").replace(/"/gi,'"').replace(/'/g,"'").replace(/\s+/g," ").trim()}function md(t){let e=String(t||"").trim();return e?/^https?:\/\//i.test(e)?e:e.startsWith("/")?Ra+e:Ra+"/"+e:""}function Spt(t){try{return Buffer.from(JSON.stringify(t||{}),"utf8").toString("base64")}catch{return""}}function skr(t){try{return JSON.parse(Buffer.from(t||"","base64").toString("utf8"))}catch{return{}}}function ikr(t){let e=new Set,r=[];for(let n of t||[]){let s=n?.vod_id;!s||e.has(s)||(e.add(s),r.push(n))}return r}function akr(t){try{let e=Buffer.from(t||"","base64").toString("utf8");return decodeURIComponent(e)}catch{return t||""}}async function oM(t,e={}){let r=/^https?:\/\//i.test(t)?t:md(t),n=await fe({url:r,method:e.method||"get",data:e.data,timeout:e.timeout||nR.timeout,responseType:"text",transformResponse:[s=>s],validateStatus:()=>!0,headers:{"User-Agent":zle,Referer:e.referer||Ra+"/","Accept-Language":"zh-CN,zh;q=0.9",...e.headers||{}}});if(n.status<200||n.status>=300)throw new Error(`HTTP ${n.status}`);return String(n.data||"")}async function okr(t,e={}){let r=/^https?:\/\//i.test(t)?t:md(t),n=await fe.get(r,{timeout:e.timeout||nR.timeout,validateStatus:()=>!0,headers:{"User-Agent":zle,Referer:e.referer||Ra+"/","Accept-Language":"zh-CN,zh;q=0.9",...e.headers||{}}});if(n.status<200||n.status>=300)throw new Error(`HTTP ${n.status}`);return n.data}function wpt(t){let e=[],r=t.match(/<div class="public-list-box public-pic-b">[\s\S]*?<\/div>\s*<\/div>\s*<\/div>/g)||[];for(let n of r){let s=(n.match(/class="public-list-exp"[^>]*href="([^"]+)"/)||[])[1]||"",i=(n.match(/class="public-list-exp"[^>]*title="([^"]+)"/)||[])[1]||(n.match(/class="time-title[^"]*"[^>]*title="([^"]+)"/)||[])[1]||"",a=(n.match(/data-src="([^"]+)"/)||[])[1]||(n.match(/src="([^"]+)"/)||[])[1]||"",o=(n.match(/<span class="public-list-prb[^>]*>([\s\S]*?)<\/span>/)||[])[1]||"";!s||!i||e.push({vod_id:s,vod_name:qu(i),vod_pic:md(a),vod_remarks:qu(o)})}return e}function ckr(t){let e=[],r=/<div class="slide-time-bj swiper-slide"><a href="([^"]+)">[\s\S]*?data-background="([^"]+)"[\s\S]*?<span>([^<]+)<\/span>[\s\S]*?<h3 class="slide-info-title hide">([^<]+)<\/h3>[\s\S]*?<div class="slide-info hide2">([\s\S]*?)<\/div>/g,n;for(;(n=r.exec(t))!==null;)e.push({vod_id:n[1],vod_name:qu(n[4]),vod_pic:md(n[2]),vod_remarks:qu(n[3]),vod_content:qu(n[5])});return e}function aM(t,e){let r=e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),n=t.match(new RegExp(`<h4 class="title-h cor4">${r}</h4>[\\s\\S]*?<div class="flex wrap border-box public-r(?: hide-b-2)? diy-center1 mask2">([\\s\\S]*?)</div></div></div>`));return n?wpt(n[1]):[]}var Ipt=[{type_id:"2",type_name:"\u65E5\u756A"},{type_id:"3",type_name:"\u7F8E\u756A"},{type_id:"21",type_name:"\u5287\u5834\u7248"},{type_id:"20",type_name:"\u771F\u4EBA\u756A\u5287"},{type_id:"24",type_name:"BD\u526F\u97F3\u8ECC"},{type_id:"26",type_name:"\u6F14\u5531\u6703&\u5468\u908A\u6D3B\u52D5&\u5176\u4ED6"}],vo={n:"\u5168\u90E8",v:""},v_={key:"by",name:"",init:"time",value:[{n:"\u6309\u6700\u65B0",v:"time"},{n:"\u6309\u6700\u70ED",v:"hits"},{n:"\u6309\u8BC4\u5206",v:"score"}]},S_={key:"month",name:"",init:"",value:[vo,{n:"\u4E00\u6708",v:"\u4E00\u6708"},{n:"\u56DB\u6708",v:"\u56DB\u6708"},{n:"\u4E03\u6708",v:"\u4E03\u6708"},{n:"\u5341\u6708",v:"\u5341\u6708"}]},I_={key:"year",name:"",init:"",value:(()=>{let t=[vo];for(let e=2026;e>=2001;e--)t.push({n:String(e),v:String(e)});return t.push({n:"2000\u81F390\u5E74\u4EE3",v:"2000\u81F390\u5E74\u4EE3"}),t})()},Cpt={2:[{key:"class",name:"",init:"",value:[vo,...["\u559C\u5267","\u7231\u60C5","\u6050\u6016","\u52A8\u4F5C","\u79D1\u5E7B","\u5267\u60C5","\u6218\u4E89","\u5947\u5E7B","\u5192\u9669","\u60AC\u7591","\u6821\u56ED","\u540E\u5BAB","\u70ED\u8840","\u8FD0\u52A8","\u804C\u573A","\u767E\u5408","\u4E59\u5973","\u673A\u7532","\u65E5\u5E38","\u9B54\u6CD5\u5C11\u5973","\u5F02\u4E16\u754C","\u7231\u6296\u9732","\u97F3\u4E50","\u840C"].map(t=>({n:t,v:t}))]},S_,I_,{key:"lang",name:"",init:"",value:[vo,{n:"\u65E5\u8BED",v:"\u65E5\u8BED"},{n:"\u56FD\u8BED",v:"\u56FD\u8BED"}]},{key:"version",name:"",init:"",value:[vo,{n:"TV\u756A",v:"TV\u756A"},{n:"\u6CE1\u9762\u756A",v:"\u6CE1\u9762\u756A"},{n:"OVA",v:"OVA"}]},{key:"state",name:"",init:"",value:[vo,{n:"\u5C0F\u8BF4\u6539",v:"\u5C0F\u8BF4\u6539"},{n:"\u6F2B\u753B\u6539",v:"\u6F2B\u753B\u6539"},{n:"\u6E38\u620F\u6539",v:"\u6E38\u620F\u6539"},{n:"\u539F\u521B",v:"\u539F\u521B"}]},v_],3:[{key:"class",name:"",init:"",value:[vo,...["\u641E\u7B11","\u7231\u60C5","\u6050\u6016","\u52A8\u4F5C","\u79D1\u5E7B","\u5267\u60C5","\u6218\u4E89","\u5947\u5E7B","\u5192\u9669","\u60AC\u7591","\u6821\u56ED","\u540E\u5BAB","\u70ED\u8840","\u8FD0\u52A8"].map(t=>({n:t,v:t}))]},S_,I_,{key:"lang",name:"",init:"",value:[vo,{n:"\u56FD\u8BED",v:"\u56FD\u8BED"},{n:"\u82F1\u8BED",v:"\u82F1\u8BED"}]},v_],21:[{key:"class",name:"",init:"",value:[vo,...["\u559C\u5267","\u7231\u60C5","\u6050\u6016","\u52A8\u4F5C","\u79D1\u5E7B","\u5267\u60C5","\u6218\u4E89","\u5947\u5E7B","\u5192\u9669","\u60AC\u7591","\u6821\u56ED","\u540E\u5BAB","\u70ED\u8840","\u8FD0\u52A8","\u767E\u5408","\u803D\u7F8E","\u673A\u7532","\u65E5\u5E38","\u9B54\u6CD5\u5C11\u5973","\u5F02\u4E16\u754C","\u7231\u6296\u9732","\u97F3\u4E50"].map(t=>({n:t,v:t}))]},S_,I_,{key:"lang",name:"",init:"",value:[vo,{n:"\u65E5\u8BED",v:"\u65E5\u8BED"},{n:"\u4E2D\u6587",v:"\u4E2D\u6587"},{n:"\u82F1\u8BED",v:"\u82F1\u8BED"}]},v_],20:[{key:"class",name:"",init:"",value:[vo,...["\u559C\u5267","\u7231\u60C5","\u6050\u6016","\u52A8\u4F5C","\u79D1\u5E7B","\u5267\u60C5","\u6218\u4E89","\u5947\u5E7B","\u5192\u9669","\u60AC\u7591","\u6821\u56ED","\u540E\u5BAB","\u70ED\u8840","\u8FD0\u52A8","\u804C\u573A","\u767E\u5408","\u4E59\u5973","\u673A\u7532","\u65E5\u5E38","\u9B54\u6CD5\u5C11\u5973","\u5F02\u4E16\u754C","\u7231\u6296\u9732","\u97F3\u4E50","\u840C","\u7EAA\u5F55\u7247"].map(t=>({n:t,v:t}))]},S_,I_,{key:"lang",name:"",init:"",value:[vo,{n:"\u65E5\u8BED",v:"\u65E5\u8BED"},{n:"\u82F1\u8BED",v:"\u82F1\u8BED"},{n:"\u6CF0\u8BED",v:"\u6CF0\u8BED"}]},v_],24:[{key:"class",name:"",init:"",value:[vo,...["\u559C\u5267","\u7231\u60C5","\u6050\u6016","\u52A8\u4F5C","\u79D1\u5E7B","\u5267\u60C5","\u6218\u4E89","\u5947\u5E7B","\u5192\u9669","\u60AC\u7591","\u6821\u56ED","\u540E\u5BAB","\u70ED\u8840","\u8FD0\u52A8","\u767E\u5408","\u4E59\u5973","\u673A\u7532","\u65E5\u5E38","\u9B54\u6CD5\u5C11\u5973","\u5F02\u4E16\u754C","\u7231\u6296\u9732","\u97F3\u4E50"].map(t=>({n:t,v:t}))]},S_,I_,v_],26:[{key:"class",name:"",init:"",value:[vo,{n:"\u6F14\u5531\u4F1A",v:"\u6F14\u5531\u4F1A"},{n:"\u5468\u8FB9\u6D3B\u52A8",v:"\u5468\u8FB9\u6D3B\u52A8"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},S_,I_,v_]};function ukr(t,e,r={}){let n=t||"2",s=m=>encodeURIComponent(m||""),i=r.by||"",a=r.class||"",o=r.month||"",c=r.year||"",u=r.version||"",l=r.state||"",d=r.lang||"",f=e>1?String(e):"",p=`/show/${n}-${s(o)}-${s(i)}-${s(a)}-${s(d)}----${f}-${s(l)}--${s(c)}/`;return u&&(p+=`version/${s(u)}/`),Ra+p}function Tpt(t,e={}){return{"User-Agent":zle,Referer:t||Ra+"/",Origin:Ra,...e}}async function lkr(t,e){return{}}async function dkr(t,e){try{let r=await oM(Ra+"/"),n=ikr([...ckr(r),...aM(r,"\u6700\u8FD1\u5927\u5BB6\u5728\u770B"),...aM(r,"\u6216\u8BB8\u4F60\u611F\u5174\u8DA3\uFF1F"),...aM(r,"\u65E5\u756A"),...aM(r,"\u5267\u573A\u7248")]).slice(0,40);return{class:Ipt,filters:Cpt,list:n}}catch(r){return console.error("girigiri home failed:",r.message),{class:Ipt,filters:Cpt,list:[]}}}async function fkr(t,e){let r=String(t.body?.id||t.body?.tid||"2"),n=Math.max(1,Number(t.body?.page||1)),s={...t.body?.filters||{}},i=ukr(r,n,s);try{let a=await oM(i),o=wpt(a);if(!o.length)return{list:[],page:n,pagecount:n,limit:rR,total:0};let u=[`--------${n+1}---/`,`-${n+1}---/`].some(l=>a.includes(l));return{list:o,page:n,pagecount:u?n+1:n,limit:rR,total:n*rR+(u?rR:o.length)}}catch(a){return console.error("girigiri category failed:",a.message),{list:[],page:n,pagecount:n,limit:rR,total:0}}}async function pkr(t,e){let r=String(t.body?.wd||"").trim();if(!r)return{list:[]};try{let n=`${Ra}/index.php/ajax/suggest?mid=1&wd=${encodeURIComponent(r)}`;return{list:((await okr(n,{headers:{"X-Requested-With":"XMLHttpRequest",Referer:`${Ra}/search/-------------/`}}))?.list||[]).map(i=>({vod_id:`/GV${i.id}/`,vod_name:i.name||"",vod_pic:md(i.pic||""),vod_remarks:""}))}}catch(n){return console.error("girigiri search failed:",n.message),{list:[]}}}async function mkr(t,e){let r=t.body?.id,n=(Array.isArray(r)?r:String(r||"").split(",")).map(i=>String(i||"").trim()).filter(Boolean),s=[];for(let i of n){let a=md(i);if(a)try{let o=await oM(a),c=qu((o.match(/<title>(.*?)<\//i)||[])[1]||"").replace(/_.*$/,""),u=md((o.match(/<img[^>]+data-src="([^"]+\.webp)"/)||[])[1]||""),l=qu((o.match(/<div id="height_limit" class="text cor3">([\s\S]*?)<\/div>/)||[])[1]||""),d=qu((o.match(/<p>([^<]*?(?:æ›´æ–°|點|支持杜比)[^<]*?)<\/p>/)||[])[1]||""),f=(o.match(/20\d{2}/)||[])[0]||"",p=[],m=/<a class="swiper-slide"[^>]*>[\s\S]*? ([^<]+)<span class="badge">(\d+)<\/span><\/a>/g,h;for(;(h=m.exec(o))!==null;)p.push({name:qu(h[1]),count:Number(h[2]||0)});let y=o.match(/<div class="anthology wow[\s\S]*?<script>\$\("\.anthology-tab a"\)\.eq\(0\)/),g=y?y[0]:"",b=[],x=/<div class="anthology-list-box[^>]*>([\s\S]*?)<\/div><\/div>/g,A;for(;(A=x.exec(g))!==null;){let R=[],w=/href="([^"]*\/play[^\"]+)"[^>]*>([^<]+)<\/a>/g,N;for(;(N=w.exec(A[1]))!==null;){let k=qu(N[2]),B=N[1];B.includes("/play")&&R.push({name:k,playId:Spt({playUrl:B,epName:k,vodName:c,referer:i})})}R.length&&b.push(R)}if(!b.length){let R=[],w=/href="([^"]*\/play[^\"]+)"[^>]*>([^<]+)<\/a>/g,N;for(;(N=w.exec(g||o))!==null;){let k=N[1];if(!k.includes("/play"))continue;let B=qu(N[2]);R.push({name:B,playId:Spt({playUrl:k,epName:B,vodName:c,referer:i})})}R.length&&b.push(R)}let S=[],I=[];for(let R=0;R<b.length;R+=1){let w=p[R]?.name||`\u7EBF\u8DEF${R+1}`,N=b[R].map(k=>`${k.name}$${k.playId}`);S.push(w),I.push(N.join("#"))}s.push({vod_id:i,vod_name:c,vod_pic:u,vod_remarks:d,vod_content:l,vod_director:"",vod_actor:"",vod_year:f,vod_play_from:S.join("$$$"),vod_play_url:I.join("$$$")})}catch(o){console.error("girigiri detail failed:",i,o.message)}}return{list:s}}async function hkr(t,e){let r=String(t.body?.id||"").trim(),n=skr(r),s=n.playUrl||r||"",i=md(n.referer||"/"),a=md(s);try{let c=(await oM(a,{referer:i||Ra+"/",headers:{Origin:Ra,Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"}})).match(/var\s+player_aaaa\s*=\s*(\{[\s\S]*?\})<\/script>/);if(!c)throw new Error("player_aaaa not found");let u=JSON.parse(c[1]),l=u.url||"";u.encrypt===2?l=akr(l):u.encrypt===1&&(l=decodeURIComponent(l));let d=l;/^https?:\/\//i.test(d)||(d=md(d));let f=new URL(d).origin,p=f===Ra?i||Ra+"/":f+"/";return{parse:0,url:d,header:Tpt(p)}}catch(o){return console.error("girigiri play failed:",o.message),{parse:0,url:a,header:Tpt(Ra+"/")}}}var Rpt={meta:{key:nR.key,name:"\u300C\u76F4\u300D\u7231\u52A8\u6F2B",type:3},api:async t=>{t.post("/init",lkr),t.post("/home",dkr),t.post("/category",fkr),t.post("/detail",mkr),t.post("/play",hkr),t.post("/search",pkr)}};var vm=Ce(Xn(),1),mp="https://www.cycani.org",Opt="https://player.cycanime.com",kpt="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36",gkr="YLwJVbXw77pk2eOrAnFdBo2c3mWkLtodMni2wk81GCnP94ZltW",sR=48,By=[{type_id:"20",type_name:"TV\u756A\u7EC4"},{type_id:"21",type_name:"\u5267\u573A\u756A\u7EC4"}],ykr={\u7C7B\u578B:"class",\u5E74\u4EFD:"year",\u5B57\u6BCD:"letter"},Akr={class:"\u7C7B\u578B",year:"\u5E74\u4EFD",letter:"\u5B57\u6BCD",by:"\u6392\u5E8F"},xkr={key:"by",name:"\u6392\u5E8F",init:"time",value:[{n:"\u6309\u6700\u65B0",v:"time"},{n:"\u6309\u6700\u70ED",v:"hits"},{n:"\u6309\u8BC4\u5206",v:"score"}]},Kle=new Map;function sa(t){return String(t||"").replace(/ /gi," ").replace(/<br\s*\/?>/gi," ").replace(/<[^>]+>/g," ").replace(/\s+/g," ").trim()}function Ppt(t){let e=Number.parseInt(t,10);return Number.isFinite(e)&&e>0?e:1}function iR(t,e=mp){let r=String(t||"").trim();return r?/^https?:\/\//i.test(r)?r:r.startsWith("//")?`https:${r}`:new URL(r,e).toString():""}function Dpt(t=`${mp}/`,e="text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8"){return{"User-Agent":kpt,Accept:e,"Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Referer:t}}async function Ly(t,e=`${mp}/`,r){let n=iR(t),s=await fe.get(n,{headers:Dpt(e,r),timeout:15e3,maxContentLength:3*1024*1024});return typeof s.data=="string"?s.data:String(s.data||"")}async function bkr(t,e=`${mp}/`){let r=iR(t),n=await fe.get(r,{headers:{...Dpt(e,"application/json,text/javascript,*/*;q=0.01"),"X-Requested-With":"XMLHttpRequest"},timeout:15e3,maxContentLength:1024*1024});if(typeof n.data=="string")try{return JSON.parse(n.data)}catch{return null}return n.data||null}function cM(t){return encodeURIComponent(String(t||"").trim())}function Bpt(t,e=1,r={}){let n=String(t||By[0].type_id).trim()||By[0].type_id,s=[],i=String(r.by||r.sort||"").trim(),a=String(r.class||"").trim(),o=String(r.letter||"").trim(),c=String(r.year||"").trim();return i&&s.push("by",cM(i)),a&&s.push("class",cM(a)),o&&s.push("letter",cM(o)),c&&s.push("year",cM(c)),e>1&&s.push("page",String(e)),`/show/${n}${s.length?`/${s.join("/")}`:""}.html`}function Lpt(t){return(String(t||"").match(/\/bangumi\/(\d+)\.html/i)||[])[1]||""}function _kr(t){let e=String(t||"").match(/\/watch\/(\d+)\/(\d+)\/(\d+)\.html/i);return e?`${e[1]}/${e[2]}/${e[3]}`:""}function Ekr(t){try{let e=JSON.parse(String(t||""));if(e&&e.id)return String(e.id)}catch{}return String(t||"").match(/\d+/)?.[0]||String(t||"").trim()}function Npt(t,e){let r=t(e),n=r.find('a[href*="/bangumi/"]').first(),s=n.attr("href")||"",i=Lpt(s);if(!i)return null;let a=r.find("img").first(),o=sa(n.attr("title")||a.attr("alt")||n.text());if(!o)return null;let c=a.attr("data-src")||a.attr("data-original")||a.attr("src")||"",u=sa(r.find(".public-list-subtitle,.public-list-prb,.slide-info-remarks").first().text());return{vod_id:i,vod_name:o,vod_pic:iR(c),vod_remarks:u}}function Vle(t){let e=De(t||""),r=[],n=new Set;return e(".public-list-box,.swiper-slide").each((s,i)=>{let a=Npt(e,i);!a||n.has(a.vod_id)||(n.add(a.vod_id),r.push(a))}),r.length===0&&e('a[href*="/bangumi/"]').each((s,i)=>{let a=Npt(e,e(i).closest("li,div").first());!a||n.has(a.vod_id)||(n.add(a.vod_id),r.push(a))}),r}function Mpt(t){let e=De(t||""),r=[],n=new Set;return e(".ec-casc-list .nav-swiper").each((s,i)=>{let a=e(i),o=sa(a.find(".filter-text span").first().text()),c=a.find(".vod-ajax-select[data-type]").first().attr("data-type")||ykr[o]||"";if(!c||c==="channel"||c==="type"||n.has(c))return;let u=[];a.find(".vod-ajax-select").each((l,d)=>{let f=e(d),p=sa(f.find("a").first().text()||f.text()),m=String(f.attr("data-val")||"").trim();!p||p==="\u5206\u7C7B\u8D44\u6E90\u4E0D\u4EE3\u8868\u5168\u90E8\u8D44\u6E90"||!m&&p!=="\u5168\u90E8"||u.some(h=>h.v===m)||u.push({n:p,v:m})}),u.length>0&&(n.add(c),r.push({key:c,name:Akr[c]||o||c,init:"",value:u}))}),r.push(xkr),r}async function vkr(t){let e=String(t||By[0].type_id);if(Kle.has(e))return Kle.get(e);let r=await Ly(Bpt(e,1),`${mp}/`),n=Mpt(r);return Kle.set(e,n),n}function Skr(t,e,r){let s=sa(De(t||"")(".page-tip").first().text()).match(/当前\s*(\d+)\s*\/\s*(\d+)\s*页/);return s?Number.parseInt(s[2],10)||e:r>=sR?e+1:e}async function Ikr(){let t={};await Promise.all(By.map(async r=>{t[r.type_id]=await vkr(r.type_id).catch(()=>[])}));let e=await Ly("/");return{class:By,filters:t,list:Vle(e).slice(0,sR)}}async function Ckr(t){let e=t.body||{},r=String(e.id||By[0].type_id).trim()||By[0].type_id,n=Ppt(e.page),s=e.filters||e.extend||e.ext||{},i=Bpt(r,n,s),a=await Ly(i,`${mp}/show/${r}.html`),o=Vle(a),c=Skr(a,n,o.length);return{page:n,pagecount:c,limit:sR,total:c*sR,list:o,filter:Mpt(a)}}function Tkr(t,e){let r=De(t||""),n=e||Lpt(r('link[rel="canonical"]').attr("href")||""),s=sa(r(".slide-info-title").first().text())||sa(r("h1,h2,h3").first().text())||sa(r("title").text().replace(/[_-].*$/,"")),i=iR(r(".detail-pic img,.player-vod-no1 img").map((p,m)=>r(m).attr("data-src")||r(m).attr("data-original")||r(m).attr("src")).get().find(p=>p&&!String(p).startsWith("data:image"))),a=sa(r(".slide-info-remarks").first().text()),o=sa(r("#height_limit,.small-text,.vod-content,.text").first().text()),c=r(".partition").filter((p,m)=>/演员/.test(r(m).text())).find("a").map((p,m)=>sa(r(m).text())).get().filter(Boolean).join(","),u=r(".partition").filter((p,m)=>/导演/.test(r(m).text())).find("a").map((p,m)=>sa(r(m).text())).get().filter(Boolean).join(","),l=r(".partition").filter((p,m)=>/类型/.test(r(m).text())).find("a").map((p,m)=>sa(r(m).text())).get().filter(Boolean).join(","),d=[],f=[];return r(".anthology-list-box").each((p,m)=>{let h=sa(r(".anthology-tab a").eq(p).clone().children().remove().end().text())||`CYC_${p+1}`,y=[];r(m).find('a[href*="/watch/"]').each((g,b)=>{let x=_kr(r(b).attr("href"));if(!x)return;let A=sa(r(b).text())||`\u7B2C${y.length+1}\u96C6`;y.push(`${A}$${x}`)}),y.length>0&&(d.push(h),f.push(y.join("#")))}),{vod_id:n,vod_name:s,vod_pic:i,vod_remarks:a,type_name:l,vod_actor:c,vod_director:u,vod_content:o,vod_play_from:d.join("$$$"),vod_play_url:f.join("$$$")}}async function wkr(t){let e=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],r=[];for(let n of e.filter(Boolean)){let s=Ekr(n);if(!s)continue;let i=await Ly(`/bangumi/${s}.html`,`${mp}/`);r.push(Tkr(i,s))}return{list:r}}function Rkr(t){let e=String(t?.encrypt||""),r=String(t?.url||"");return e==="1"?decodeURIComponent(r):e==="2"?decodeURIComponent(Buffer.from(r,"base64").toString("utf8")):r}function Nkr(t){let e=String(t||"").match(/var\s+player_aaaa\s*=\s*(\{[\s\S]*?\})\s*<\/script>/i)||String(t||"").match(/var\s+player_aaaa\s*=\s*(\{[\s\S]*?\})\s*;/i);return e?JSON.parse(e[1]):null}function Okr(t){let e={},r=String(t||"");for(let n of["url","vkey","next","title","poster"]){let s=r.match(new RegExp(`["']${n}["']\\s*:\\s*["']([^"']*)["']`));s&&(e[n]=s[1])}return e}function kkr(t){let e=De(t||""),r=String(e('meta[name="viewport"]').attr("id")||"").replace(/^now_/,""),n=String(e('meta[charset="UTF-8"]').attr("id")||e("meta[charset]").attr("id")||"").replace(/^now_/,"");return!r||!n||r.length!==n.length?"":n.split("").map((s,i)=>({id:Number(s),text:r[i]||""})).sort((s,i)=>s.id-i.id).map(s=>s.text).join("")}function Pkr(t,e){let r=kkr(e);if(!r)return"";let n=vm.default.MD5(r+gkr).toString(),s=vm.default.enc.Utf8.parse(n.substring(16)),i=vm.default.enc.Utf8.parse(n.substring(0,16));return vm.default.AES.decrypt(t,s,{iv:i,mode:vm.default.mode.CBC,padding:vm.default.pad.Pkcs7}).toString(vm.default.enc.Utf8)}async function Dkr(t,e){if(/^https?:\/\//i.test(t))return t;let r=`${Opt}/?url=${encodeURIComponent(t)}`,n=await Ly(r,`${mp}${e}`),s=Okr(n);return Pkr(s.url||"",n)||""}async function Bkr(t){let e=String(t.body?.id||"").trim(),r=e.match(/(\d+)\/(\d+)\/(\d+)/)||e.match(/watch\/(\d+)\/(\d+)\/(\d+)/);if(!r)return{parse:0,url:"",header:{}};let n=`/watch/${r[1]}/${r[2]}/${r[3]}.html`,s=await Ly(n,`${mp}/bangumi/${r[1]}.html`),i=Nkr(s);if(!i)return{parse:0,url:"",header:{}};let a=Rkr(i);return{parse:0,jx:0,url:await Dkr(a,n),header:{"User-Agent":kpt,Referer:`${Opt}/`}}}async function Lkr(t){let e=String(t.body?.wd||"").trim(),r=Ppt(t.body?.page);if(!e)return{page:r,pagecount:1,limit:20,total:0,list:[]};let n=await bkr(`/index.php/ajax/suggest?mid=1&limit=20&page=${r}&wd=${encodeURIComponent(e)}`),i=(Array.isArray(n?.list)?n.list:[]).map(a=>({vod_id:String(a.id||""),vod_name:sa(a.name),vod_pic:iR(a.pic||""),vod_remarks:""})).filter(a=>a.vod_id&&a.vod_name);return{page:Number(n?.page||r),pagecount:Number(n?.pagecount||r),limit:Number(n?.limit||20),total:Number(n?.total||i.length),list:i}}async function Mkr(t,e){return{}}async function Wkr(){let t=await Ly("/");return{list:Vle(t).slice(0,sR)}}var Wpt={meta:{key:"ciyuancheng",name:"\u300C\u76F4\u300D\u6B21\u5143\u57CE",type:3},api:async t=>{t.post("/init",Mkr),t.post("/home",Ikr),t.post("/homeVod",Wkr),t.post("/category",Ckr),t.post("/detail",wkr),t.post("/play",Bkr),t.post("/search",Lkr)}};var C_={key:"xifan",name:"\u7A00\u996D\u52A8\u6F2B",host:"https://anime.xifanacg.com",ua:"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/135.0.0.0 Safari/537.36",timeout:15e3},Oi=C_.host,oR=C_.ua,$pt=40;function Na(t){return String(t||"").replace(/<script[\s\S]*?<\/script>/gi," ").replace(/<style[\s\S]*?<\/style>/gi," ").replace(/<[^>]+>/g," ").replace(/ /gi," ").replace(/&/gi,"&").replace(/'/g,"'").replace(/"/g,'"').replace(/\s+/g," ").trim()}function $kr(t){return Na(t).replace(/\s*[_-]\s*(?:连载新番|完结旧番|剧场版|美漫).*$/i,"").replace(/\s*-\s*稀饭动漫.*$/i,"").replace(/\s*-\s*免费高清动漫分享.*$/i,"").trim()}function Fc(t){let e=String(t||"").trim();return e?/^https?:\/\//i.test(e)?e:e.startsWith("/")?Oi+e:Oi+"/"+e:""}function Upt(t){try{return Buffer.from(JSON.stringify(t||{}),"utf8").toString("base64")}catch{return""}}function Ukr(t){try{return JSON.parse(Buffer.from(t||"","base64").toString("utf8"))}catch{return{}}}function Fkr(t){let e=new Set,r=[];for(let n of t||[]){let s=n?.vod_id;!s||e.has(s)||(e.add(s),r.push(n))}return r}function qkr(t){try{let e=Buffer.from(t||"","base64").toString("utf8");return decodeURIComponent(e)}catch{return t||""}}function jkr(t){try{let e=new URL(t);return e.hostname.endsWith("pan.wo.cn")||e.hostname.endsWith("moedot.net")}catch{return!1}}function Qkr(t,e){let r={"User-Agent":oR};if(jkr(t))return r;let n=new URL(t).origin;return r.Referer=n===Oi?e||Oi+"/":n+"/",r.Origin=Oi,r}async function Yle(t,e={}){let r=/^https?:\/\//i.test(t)?t:Fc(t),n=await fe({url:r,method:e.method||"get",data:e.data,timeout:e.timeout||C_.timeout,responseType:"text",transformResponse:[s=>s],validateStatus:()=>!0,headers:{"User-Agent":oR,Referer:e.referer||Oi+"/","Accept-Language":"zh-CN,zh;q=0.9",...e.headers||{}}});if(n.status<200||n.status>=300)throw new Error(`HTTP ${n.status}`);return String(n.data||"")}async function Hkr(t,e,r={}){let n=/^https?:\/\//i.test(t)?t:Fc(t),s=await fe({url:n,method:"post",data:e,timeout:r.timeout||C_.timeout,validateStatus:()=>!0,headers:{"User-Agent":oR,Referer:r.referer||Oi+"/","Content-Type":"application/x-www-form-urlencoded; charset=UTF-8","X-Requested-With":"XMLHttpRequest","Accept-Language":"zh-CN,zh;q=0.9",...r.headers||{}}});if(s.status<200||s.status>=300)throw new Error(`HTTP ${s.status}`);return s.data}async function Gkr(t,e={}){let r=/^https?:\/\//i.test(t)?t:Fc(t),n=await fe.get(r,{timeout:e.timeout||C_.timeout,validateStatus:()=>!0,headers:{"User-Agent":oR,Referer:e.referer||Oi+"/","X-Requested-With":"XMLHttpRequest","Accept-Language":"zh-CN,zh;q=0.9",...e.headers||{}}});if(n.status<200||n.status>=300)throw new Error(`HTTP ${n.status}`);return n.data}function zkr(t){let e=[],r=String(t||"").match(/<div class="public-list-box[\s\S]*?<\/div>\s*<\/div>\s*<\/div>/g)||[];for(let n of r){let s=(n.match(/class="(?:public-list-exp|time-title)[^"]*"[^>]*href="([^"]+)"/)||[])[1]||"",i=(n.match(/class="public-list-exp"[^>]*title="([^"]+)"/)||[])[1]||(n.match(/class="time-title[^"]*"[^>]*title="([^"]+)"/)||[])[1]||Na((n.match(/class="time-title[^"]*"[^>]*>([\s\S]*?)<\/a>/)||[])[1]||""),a=(n.match(/data-src="([^"]+)"/)||[])[1]||(n.match(/src="([^"]+)"/)||[])[1]||"",o=(n.match(/<span class="public-list-prb[^>]*>([\s\S]*?)<\/span>/)||[])[1]||"";!s||!i||e.push({vod_id:s,vod_name:Na(i),vod_pic:Fc(a),vod_remarks:Na(o)})}return e}function Kkr(t){let e=[],r=/<div class="swiper-slide">[\s\S]*?<div class="swiper-lazy[^"]*" data-background="([^"]+)"[\s\S]*?<a class="lank" href="([^"]+)"[\s\S]*?<h3 class="slide-info-title hide">([\s\S]*?)<\/h3>[\s\S]*?<li>([^<]*)<\/li>/g,n;for(;(n=r.exec(String(t||"")))!==null;)e.push({vod_id:n[2],vod_name:Na(n[3]),vod_pic:Fc(n[1]),vod_remarks:Na(n[4])});return e}var Fpt=[{type_id:"1",type_name:"\u8FDE\u8F7D\u65B0\u756A"},{type_id:"2",type_name:"\u5B8C\u7ED3\u65E7\u756A"},{type_id:"3",type_name:"\u5267\u573A\u7248"},{type_id:"21",type_name:"\u7F8E\u6F2B"}],aR={n:"\u5168\u90E8",v:""},uM={key:"by",name:"",init:"time",value:[{n:"\u6309\u6700\u65B0",v:"time"},{n:"\u6309\u6700\u70ED",v:"hits"},{n:"\u6309\u8BC4\u5206",v:"score"}]},qpt={key:"year",name:"",init:"",value:(()=>{let t=[aR];for(let e=2026;e>=2005;e--)t.push({n:String(e),v:String(e)});return t})()},jpt={key:"class",name:"",init:"",value:[aR,...["\u641E\u7B11","\u539F\u521B","\u8F7B\u5C0F\u8BF4\u6539","\u604B\u7231","\u767E\u5408","\u6F2B\u6539","\u6821\u56ED","\u6218\u6597","\u6CBB\u6108","\u5947\u5E7B","\u65E5\u5E38","\u9752\u6625","\u4E59\u5973\u5411","\u60AC\u7591","\u540E\u5BAB","\u79D1\u5E7B","\u5192\u9669","\u70ED\u8840","\u5F02\u4E16\u754C","\u6E38\u620F\u6539","\u97F3\u4E50","\u5076\u50CF","\u7F8E\u98DF","\u803D\u7F8E"].map(t=>({n:t,v:t}))]},Qpt={1:[jpt,{key:"area",name:"",init:"",value:[aR,{n:"\u65E5\u672C",v:"\u65E5\u672C"}]},qpt,uM],2:[jpt,qpt,uM],3:[{key:"area",name:"",init:"",value:[aR,{n:"\u65E5\u672C",v:"\u65E5\u672C"}]},{key:"year",name:"",init:"",value:(()=>{let t=[aR];for(let e=2026;e>=2004;e--)t.push({n:String(e),v:String(e)});return t})()},uM],21:[uM]};async function Vkr(t,e){return{}}async function Ykr(t,e){try{let r=await Yle(Oi+"/"),n=Fkr([...Kkr(r),...zkr(r)]).slice(0,40);return{class:Fpt,filters:Qpt,list:n}}catch(r){return console.error("xifan home failed:",r.message),{class:Fpt,filters:Qpt,list:[]}}}async function Jkr(t,e){let r=String(t.body?.id||t.body?.tid||"1"),n=Math.max(1,Number(t.body?.page||1)),s={...t.body?.filters||{}},i=new URLSearchParams;i.set("type",r),i.set("page",String(n)),i.set("by",String(s.by||"time")),s.class&&i.set("class",String(s.class)),s.area&&i.set("area",String(s.area)),s.year&&i.set("year",String(s.year));try{let a=await Hkr(`${Oi}/index.php/ds_api/vod`,i.toString(),{referer:`${Oi}/type/${r}.html`}),o=typeof a=="string"?JSON.parse(a):a||{},c=(o.list||[]).map(u=>({vod_id:u.url||`/bangumi/${u.vod_id}.html`,vod_name:u.vod_name||"",vod_pic:Fc(String(u.vod_pic||"").replace(/\\\//g,"/")),vod_remarks:u.vod_remarks||""})).filter(u=>u.vod_id&&u.vod_name);return{list:c,page:Number(o.page||n),pagecount:Number(o.pagecount||n),limit:Number(o.limit||$pt),total:Number(o.total||c.length)}}catch(a){return console.error("xifan category failed:",a.message),{list:[],page:n,pagecount:n,limit:$pt,total:0}}}async function Xkr(t,e){let r=String(t.body?.wd||"").trim();if(!r)return{list:[]};try{return{list:((await Gkr(`${Oi}/index.php/ajax/suggest?mid=1&wd=${encodeURIComponent(r)}`,{referer:`${Oi}/search/wd/${encodeURIComponent(r)}.html`}))?.list||[]).map(s=>({vod_id:`/bangumi/${s.id}.html`,vod_name:s.name||"",vod_pic:Fc(s.pic||""),vod_remarks:""}))}}catch(n){return console.error("xifan search failed:",n.message),{list:[]}}}async function Zkr(t,e){let r=t.body?.id,n=(Array.isArray(r)?r:String(r||"").split(",")).map(i=>String(i||"").trim()).filter(Boolean),s=[];for(let i of n){let a=Fc(i);if(a)try{let o=await Yle(a),c=$kr((o.match(/<h3[^>]*>([\s\S]*?)<\/h3>/i)||[])[1]||(o.match(/<title>(.*?)<\/title>/i)||[])[1]||""),u=Fc((o.match(/<div class="detail-pic">[\s\S]*?<img[^>]+(?:data-src|src)="([^"]+)"/i)||[])[1]||""),l=Na((o.match(/<span class="slide-info-remarks cor5">([\s\S]*?)<\/span>/i)||[])[1]||""),d=Na((o.match(/<span class="slide-info-remarks">\s*<a href="\/search\/year\/[^"]+"[^>]*>([\s\S]*?)<\/a>/i)||[])[1]||""),f=Na((o.match(/<span class="slide-info-remarks">\s*<a href="\/search\/area\/[^"]+"[^>]*>([\s\S]*?)<\/a>/i)||[])[1]||""),p=Na((o.match(/导演\s*:<\/strong>([\s\S]*?)<\/div>/i)||[])[1]||""),m=Na((o.match(/演员\s*:<\/strong>([\s\S]*?)<\/div>/i)||[])[1]||""),h=Na((o.match(/<div id="height_limit" class="text cor3">([\s\S]*?)<\/div>/i)||[])[1]||""),y=[],g=/<a class="swiper-slide">[\s\S]*? ([^<]+)<span class="badge">(\d+)<\/span><\/a>/g,b;for(;(b=g.exec(o))!==null;)y.push({name:Na(b[1]),count:Number(b[2]||0)});let x=o.match(/<div class="anthology-list[\s\S]*?<script>\$\("\.anthology-tab a"\)\.eq\(0\)/),A=x?x[0]:o,S=[],I=/<div class="anthology-list-box[^>]*>[\s\S]*?<ul class="anthology-list-play size">([\s\S]*?)<\/ul>[\s\S]*?<\/div>\s*<\/div>/g,R;for(;(R=I.exec(A))!==null;){let k=[],B=/<a class="[^"]*" href="([^"]*\/watch[^"]+)"[^>]*>\s*(?:<span>)?([^<]+)(?:<\/span>)?\s*<\/a>/g,M;for(;(M=B.exec(R[1]))!==null;){let D=M[1];D.includes("/watch/")&&k.push({name:Na(M[2]),playId:Upt({playUrl:D,vodName:c,referer:i})})}k.length&&S.push(k)}if(!S.length){let k=[],B=/href="([^"]*\/watch[^"]+)"[^>]*>\s*(?:<span>)?([^<]+)(?:<\/span>)?\s*<\/a>/g,M;for(;(M=B.exec(o))!==null;){let D=M[1];D.includes("/watch/")&&k.push({name:Na(M[2]),playId:Upt({playUrl:D,vodName:c,referer:i})})}k.length&&S.push(k)}let w=[],N=[];for(let k=0;k<S.length;k+=1){let B=y[k]?.name||`\u7EBF\u8DEF${k+1}`,M=S[k].map(D=>`${D.name}$${D.playId}`);w.push(B),N.push(M.join("#"))}s.push({vod_id:i,vod_name:c,vod_pic:u,vod_remarks:l,vod_content:h,vod_director:p,vod_actor:m,vod_year:d,vod_area:f,vod_play_from:w.join("$$$"),vod_play_url:N.join("$$$")})}catch(o){console.error("xifan detail failed:",i,o.message)}}return{list:s}}async function ePr(t,e){let r=String(t.body?.id||"").trim(),n=Ukr(r),s=n.playUrl||r||"",i=Fc(n.referer||"/"),a=Fc(s);try{let c=(await Yle(a,{referer:i||Oi+"/",headers:{Origin:Oi}})).match(/var\s+player_aaaa\s*=\s*(\{[\s\S]*?\})<\/script>/);if(!c)throw new Error("player_aaaa not found");let u=JSON.parse(c[1]),l=String(u.url||"").replace(/\\\//g,"/");Number(u.encrypt)===2?l=qkr(l):Number(u.encrypt)===1&&(l=decodeURIComponent(l));let d=l;return/^https?:\/\//i.test(d)||(d=Fc(d)),{parse:0,url:d,header:Qkr(d,i)}}catch(o){return console.error("xifan play failed:",o.message),{parse:0,url:a,header:{"User-Agent":oR,Referer:Oi+"/",Origin:Oi}}}}var Hpt={meta:{key:C_.key,name:"\u300C\u76F4\u300D\u7A00\u996D",type:3},api:async t=>{t.post("/init",Vkr),t.post("/home",Ykr),t.post("/category",Jkr),t.post("/detail",Zkr),t.post("/play",ePr),t.post("/search",Xkr)}};var Oa={key:"xifannext",name:"\u7A00\u996D\u52A8\u6F2B Next",host:"https://next.xifanacg.com",supabase:"https://rzmsnqblptbceicadbyd.supabase.co",anonKey:"sb_publishable_aCb7uwyLN6H-sMjze4dRGA_2MDuROLF",ua:"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/135.0.0.0 Safari/537.36",timeout:15e3},hd=Oa.host,Sm=24,lR={n:"\u5168\u90E8",v:""},Gpt=[{type_id:"all",type_name:"\u5168\u90E8\u756A\u5267"},{type_id:"recent",type_name:"\u6700\u8FD1\u66F4\u65B0"},{type_id:"ranking",type_name:"\u6392\u884C\u699C"},{type_id:"schedule",type_name:"\u5468\u8868"}],tPr={key:"format",name:"",init:"",value:[lR,{n:"TV \u52A8\u753B",v:"tv"},{n:"\u5267\u573A\u7248",v:"movie"},{n:"OVA",v:"ova"},{n:"OAD",v:"oad"},{n:"Web \u52A8\u753B",v:"web"},{n:"\u5176\u4ED6",v:"other"}]},rPr={key:"finished",name:"",init:"",value:[lR,{n:"\u8FDE\u8F7D\u4E2D",v:"0"},{n:"\u5B8C\u7ED3",v:"1"}]},nPr={key:"year",name:"",init:"",value:(()=>{let t=[lR];for(let e=2026;e>=2007;e-=1)t.push({n:String(e),v:String(e)});return t.push({n:"\u66F4\u65E9",v:"older"}),t})()},sPr={key:"tag",name:"",init:"",value:[lR,...["\u6F2B\u753B\u6539","\u5C0F\u8BF4\u6539","\u5947\u5E7B","\u6218\u6597","\u539F\u521B","\u604B\u7231","\u6821\u56ED","\u65E5\u5E38","\u767E\u5408","\u540E\u5BAB","\u79D1\u5E7B","\u6E38\u620F\u6539","\u60AC\u7591","\u5192\u9669","\u7A7F\u8D8A","\u97F3\u4E50","\u8FD0\u52A8","\u673A\u6218","\u559C\u5267","\u5C11\u5E74\u5411","\u63A8\u7406","\u5C11\u5973\u5411","\u804C\u573A","\u7F8E\u98DF","\u9752\u5E74\u5411"].map(t=>({n:t,v:t}))]},iPr={key:"sort",name:"",init:"title",value:[{n:"\u6807\u9898",v:"title"},{n:"\u70ED\u5EA6",v:"view_count"},{n:"\u8BC4\u5206",v:"bangumi_score"},{n:"\u6700\u65B0",v:"release_date"}]},aPr={key:"days",name:"",init:"7",value:[{n:"7 \u5929",v:"7"},{n:"14 \u5929",v:"14"}]},oPr={key:"kind",name:"",init:"trending_week",value:[{n:"\u70ED\u5EA6",v:"trending_week"},{n:"\u8BC4\u5206",v:"rating"},{n:"\u98D9\u5347",v:"rising"},{n:"\u5B9D\u85CF",v:"hidden_gem"},{n:"\u5F39\u5E55",v:"danmaku_heat"}]},cPr={key:"section",name:"",init:"all",value:[{n:"\u603B\u699C",v:"all"},{n:"\u65B0\u756A",v:"ongoing"},{n:"\u5B8C\u7ED3",v:"finished"},{n:"\u5267\u573A\u7248",v:"movie"},{n:"\u7F8E\u6F2B",v:"western"}]},uPr={key:"weekday",name:"",init:"",value:[lR,{n:"\u5468\u4E00",v:"0"},{n:"\u5468\u4E8C",v:"1"},{n:"\u5468\u4E09",v:"2"},{n:"\u5468\u56DB",v:"3"},{n:"\u5468\u4E94",v:"4"},{n:"\u5468\u516D",v:"5"},{n:"\u5468\u65E5",v:"6"}]},zpt={all:[tPr,rPr,nPr,sPr,iPr],recent:[aPr],ranking:[oPr,cPr],schedule:[uPr]};function hp(t){return String(t||"").replace(/<script[\s\S]*?<\/script>/gi," ").replace(/<style[\s\S]*?<\/style>/gi," ").replace(/<[^>]+>/g," ").replace(/ /gi," ").replace(/&/gi,"&").replace(/'/g,"'").replace(/"/g,'"').replace(/\s+/g," ").trim()}function Vpt(t){let e=String(t||"").trim();return e?/^https?:\/\//i.test(e)?e:e.startsWith("/")?hd+e:`${hd}/${e}`:""}function Ypt(t){let e=Vpt(t);if(!e)return"";try{let r=new URL(e);if(r.hostname==="next.xifanacg.com"&&r.pathname==="/_next/image")return decodeURIComponent(r.searchParams.get("url")||e)}catch{}return e}function lPr(t){try{return Buffer.from(JSON.stringify(t||{}),"utf8").toString("base64")}catch{return""}}function dPr(t){try{return JSON.parse(Buffer.from(t||"","base64").toString("utf8"))}catch{return{}}}function Jpt(t){return hp(t).replace(/[$#]/g," ").trim()}function Xpt(t){let e=String(t||"").trim();return e&&e.match(/(?:\/anime\/|^)(\d+)/)?.[1]||""}function ju(...t){return t.find(e=>e!=null&&e!=="")}function fPr(t={}){return{...t.extend||{},...t.filter||{},...t.filters||{}}}function pPr(t={}){let e=Number(ju(t.current_episodes,t.currentEpisodes,0)),r=Number(ju(t.total_episodes,t.totalEpisodes,0));if(r>0&&e>0&&e<r)return`\u66F4\u65B0\u81F3 ${e} / ${r}`;if(r>0)return`\u5168 ${r} \u96C6`;let n=ju(t.release_year,t.releaseYear,t.datePublished);if(n)return String(n);let s=ju(t.bangumi_score,t.bangumiScore);return s!==void 0?String(s):""}function cR(t={}){let e=Xpt(ju(t.id,t.url,t["@id"]));return{vod_id:e?`/anime/${e}`:"",vod_name:hp(t.title||t.name||""),vod_pic:Ypt(ju(t.cover_url,t.coverUrl,t.image,t.pic,"")),vod_remarks:pPr(t)}}function mPr(t,e){let r=String(e||"").trim();return r?{sortBy:r,sortOrder:r==="title"?"asc":"desc"}:t==="recent"?{sortBy:"release_date",sortOrder:"desc"}:t==="ranking"?{sortBy:"bangumi_score",sortOrder:"desc"}:{sortBy:"title",sortOrder:"asc"}}function Xle(t={}){return String(t.year||"").trim()==="older"||String(t.older||"").trim()==="1"}function Zle({tid:t="all",page:e=1,extend:r={},searchTerm:n=""}={}){let{sortBy:s,sortOrder:i}=mPr(t,ju(r.sort,r.by)),a=Number.parseInt(String(r.year||""),10),o=String(r.finished??"").trim();return{search_term:n||null,page_number:e,items_per_page:Sm,sort_by:s,sort_order:i,filter_type_id:null,filter_meta_tags:r.tag?[String(r.tag)]:null,filter_is_finished:o===""?null:o==="1",filter_format:r.format||null,filter_release_year:!Xle(r)&&Number.isFinite(a)?a:null,filter_only_published:!0}}function hPr(t,e={}){let r=new URLSearchParams;t>1&&r.set("page",String(t)),e.format&&r.set("format",String(e.format)),String(e.finished??"").trim()&&r.set("finished",String(e.finished)),Xle(e)?r.set("older","1"):e.year&&r.set("year",String(e.year)),e.tag&&r.set("tag",String(e.tag));let n=String(ju(e.sort,e.by,"")).trim();n&&n!=="title"&&r.set("sort",n);let s=r.toString();return`/browse${s?`?${s}`:""}`}function Jle(t){let e={"User-Agent":Oa.ua};try{let r=new URL(t).hostname;if(r.endsWith("pan.wo.cn")||r.endsWith("moedot.net"))return e}catch{return e}return e.Referer=`${hd}/`,e.Origin=hd,e}async function dR(t,e={}){let r=/^https?:\/\//i.test(t)?t:Vpt(t),n=await fe({url:r,method:"get",timeout:e.timeout||Oa.timeout,responseType:"text",transformResponse:[s=>s],validateStatus:()=>!0,headers:{"User-Agent":Oa.ua,Referer:e.referer||`${hd}/`,"Accept-Language":"zh-CN,zh;q=0.9",...e.headers||{}}});if(n.status<200||n.status>=300)throw new Error(`HTTP ${n.status}`);return String(n.data||"")}async function uR(t,e){let r=await fe({url:`${Oa.supabase}/rest/v1/rpc/${t}`,method:"post",data:e,timeout:Oa.timeout,validateStatus:()=>!0,headers:{apikey:Oa.anonKey,Authorization:`Bearer ${Oa.anonKey}`,"Content-Type":"application/json",Origin:hd,Referer:`${hd}/`,"User-Agent":Oa.ua,"X-Client-Info":"supabase-js-web/2.49.1"}});if(r.status<200||r.status>=300)throw new Error(`RPC ${t} HTTP ${r.status}`);return r.data}async function gPr(t,e){let r=await fe({url:`${Oa.supabase}/functions/v1/${t}`,method:"post",data:e,timeout:Oa.timeout,validateStatus:()=>!0,headers:{apikey:Oa.anonKey,Authorization:`Bearer ${Oa.anonKey}`,"Content-Type":"application/json",Origin:hd,Referer:`${hd}/`,"User-Agent":Oa.ua}});if(r.status<200||r.status>=300)throw new Error(`Function ${t} HTTP ${r.status}`);return r.data}function Zpt(t){let e=De(t||""),r=[];return e('script[type="application/ld+json"]').each((n,s)=>{try{let i=JSON.parse(e(s).text()||"{}");Array.isArray(i?.["@graph"])?r.push(...i["@graph"]):r.push(i)}catch{}}),r}function yPr(t,e){return Zpt(t).find(r=>{let n=r?.["@type"],s=String(r?.url||r?.["@id"]||"");return(n==="TVSeries"||n==="Movie")&&s.includes(`/anime/${e}`)})||{}}function Kpt(t,e){let r="";return t("dt").each((n,s)=>{if(hp(t(s).text())===e)return r=hp(t(s).next("dd").text()),!1}),r}function APr(t,e){let r=0;for(let n=e-1;n>=0&&t[n]==="\\";n-=1)r+=1;return r}function xPr(t){return JSON.parse(String(t||"").replace(/\\"/g,'"').replace(/\\\\/g,"\\"))}function dM(t,e){let r=String(t||""),n=`\\"${e}\\":`,s=`"${e}":`,i=r.indexOf(n),a=!0;if(i<0&&(i=r.indexOf(s),a=!1),i<0)return[];let o=r.indexOf("[",i);if(o<0)return[];let c=0,u=!1,l=!1;for(let d=o;d<r.length;d+=1){let f=r[d];if(a&&f==='"'&&APr(r,d)%4===1){u=!u;continue}if(!a){if(l){l=!1;continue}if(f==="\\"&&u){l=!0;continue}if(f==='"'){u=!u;continue}}if(!u){if(f==="[")c+=1;else if(f==="]"&&(c-=1,c===0)){let p=r.slice(o,d+1);try{return a?xPr(p):JSON.parse(p)}catch{return[]}}}}return[]}function bPr(t){let e=Zpt(t).find(n=>n?.["@type"]==="ItemList")||{};return(Array.isArray(e.itemListElement)?e.itemListElement:[]).map(n=>cR(n?.item||n)).filter(n=>n.vod_id&&n.vod_name)}function _Pr(t,e){let r=String(t||"").match(/当前已选[\s\S]{0,120}?å…±[\s\S]{0,40}?(\d+)[\s\S]{0,40}?部/);return r?Number(r[1]):e}function EPr(t,e){let r=e;for(let n of String(t||"").matchAll(/[?&]page=(\d+)/g))r=Math.max(r,Number(n[1]));return Math.max(1,r)}function vPr(t,e){let r=De(t||""),n=[];return r(`a[href*="/anime/${e}/play/"]`).each((s,i)=>{let o=(r(i).attr("href")||"").match(/\/play\/(\d+)(?:\?source=([^&#]+))?/);if(!o)return;let c=Number(o[1]),u=Jpt(r(i).text())||`\u7B2C ${n.length+1} \u96C6`;!c||n.some(l=>l.id===c)||n.push({id:c,title:u,episode_number:n.length+1})}),n.length?[{code:"xfxf1",name:"\u7A00\u996D\u65B0\u756A\u4E3B\u7EBF-1",episodes:n}]:[]}function SPr(t,e){let r=Number(t?.episode_number||e+1),n=Number.isInteger(r)?String(r).padStart(2,"0"):String(e+1).padStart(2,"0"),s=Jpt(t?.title||"");return s?`\u7B2C ${n} \u96C6 ${s}`:`\u7B2C ${n} \u96C6`}function IPr(t,e,r,n){let s=[],i=[];for(let a of t||[]){let c=(Array.isArray(a?.episodes)?a.episodes:[]).map((u,l)=>{let d=Number(u?.id||0);if(!d)return"";let f=lPr({animeId:Number(e),episodeId:d,sourceCode:a.code||"",sourceName:a.name||"",vodName:r,referer:n});return`${SPr(u,l)}$${f}`}).filter(Boolean);c.length&&(s.push(hp(a.name||a.code||`\u7EBF\u8DEF${s.length+1}`)),i.push(c.join("#")))}return{vod_play_from:s.join("$$$"),vod_play_url:i.join("$$$")}}async function CPr(t,e){return{}}async function TPr(t,e){try{let r=await uR("search_animes",Zle({tid:"recent",page:1,extend:{by:"release_date"}}));return{class:Gpt,filters:zpt,list:(Array.isArray(r)?r:[]).map(cR).filter(n=>n.vod_id&&n.vod_name)}}catch(r){return console.error("xifannext home failed:",r.message),{class:Gpt,filters:zpt,list:[]}}}function lM(t){return(Array.isArray(t)?t:[]).map(cR).filter(e=>e.vod_id&&e.vod_name)}function wPr(t){let e=new Set;return t.filter(r=>!r.vod_id||e.has(r.vod_id)?!1:(e.add(r.vod_id),!0))}function e0t(t,e){let r=lM(t);return{list:e>1?[]:r,page:e,pagecount:1,limit:Sm,total:r.length}}async function RPr(t,e){if(Xle(e)){let a=await dR(hPr(t,e)),o=bPr(a),c=_Pr(a,o.length),u=EPr(a,Math.ceil(c/Sm)||t);return{list:o,page:t,pagecount:u,limit:Sm,total:c}}let r=await uR("search_animes",Zle({tid:"all",page:t,extend:e})),n=Array.isArray(r)?r:[],s=lM(n),i=Number(n[0]?.total_count||s.length);return{list:s,page:t,pagecount:Math.max(1,Math.ceil(i/Sm)),limit:Sm,total:i}}async function NPr(t,e){let r=await dR("/recent"),n=Number(ju(e.days,7)),s=dM(r,"windows"),i=s.find(a=>Number(a?.days)===n)||s[0]||{};return e0t(i.items||[],t)}async function OPr(t,e){let r=String(ju(e.kind,"trending_week")).trim()||"trending_week",n=String(ju(e.section,"all")).trim()||"all",s=await dR(`/rankings?kind=${encodeURIComponent(r)}`),i=dM(s,"sections"),a=i.find(o=>String(o?.key||"")===n)||i[0]||{};return e0t(a.items||[],t)}async function kPr(t,e){let r=await dR("/schedule"),n=String(e.weekday??"").trim(),s=dM(r,"schedule"),i=n===""?wPr(s.flatMap(a=>lM(a?.animes||[]))):lM((s.find(a=>String(a?.weekday)===n)||{}).animes||[]);return{list:t>1?[]:i,page:t,pagecount:1,limit:Sm,total:i.length}}async function PPr(t,e){let r=String(t.body?.id||t.body?.tid||"all"),n=Math.max(1,Number(t.body?.page||t.body?.pg||1)),s=fPr(t.body||{});try{return r==="recent"?await NPr(n,s):r==="ranking"?await OPr(n,s):r==="schedule"?await kPr(n,s):await RPr(n,s)}catch(i){return console.error("xifannext category failed:",i.message),{list:[],page:n,pagecount:n,limit:Sm,total:0}}}async function DPr(t,e){let r=String(t.body?.wd||"").trim();if(!r)return{list:[]};try{let n=await uR("suggest_animes",{q:r,lim:20}),s=(Array.isArray(n)?n:[]).map(cR).filter(i=>i.vod_id&&i.vod_name);if(!s.length){let i=await uR("search_animes",Zle({page:1,searchTerm:r}));s=(Array.isArray(i)?i:[]).map(cR).filter(a=>a.vod_id&&a.vod_name)}return{list:s}}catch(n){return console.error("xifannext search failed:",n.message),{list:[]}}}async function BPr(t,e){let r=t.body?.id,n=(Array.isArray(r)?r:String(r||"").split(",")).map(Xpt).filter(Boolean),s=[];for(let i of n){let a=`/anime/${i}`;try{let o=await dR(a),c=De(o),u=yPr(o,i),l=hp(u.name||c("h1").first().text()),d=dM(o,"sources"),f=d.length?d:vPr(o,i),p=IPr(f,i,l,a);s.push({vod_id:a,vod_name:l,vod_pic:Ypt(u.image||c("img[alt]").first().attr("src")||""),vod_remarks:u.numberOfEpisodes?`\u5168 ${u.numberOfEpisodes} \u96C6`:"",vod_content:hp(u.description||""),vod_director:Kpt(c,"\u5BFC\u6F14"),vod_actor:Kpt(c,"\u58F0\u4F18"),vod_year:String(u.datePublished||"").slice(0,4),vod_area:hp(u.countryOfOrigin||""),vod_class:Array.isArray(u.genre)?u.genre.join(","):hp(u.genre||""),...p})}catch(o){console.error("xifannext detail failed:",i,o.message)}}return{list:s}}async function LPr(t,e){let r=String(t.body?.id||"").trim(),n=dPr(r),s=Number(n.episodeId||(r.match(/\/play\/(\d+)/)||[])[1]||0),i=String(n.sourceCode||(()=>{try{return new URL(r,hd).searchParams.get("source")||""}catch{return""}})()).trim();if(!s)return{parse:0,url:r,header:Jle(r)};try{let a=await uR("get_play_url",{p_episode_id:s}),o=Array.isArray(a?.urls)?a.urls:[],c=o.find(l=>String(l.source_code||"")===i)||o[0]||{},u=String(c.url||"").trim();if(!u){let l=await gPr("issue-hls-playback",{episode_id:s});u=String(l?.url||"").trim()}if(!u)throw new Error("play url not found");return{parse:0,url:u,header:Jle(u)}}catch(a){return console.error("xifannext play failed:",s,a.message),{parse:0,url:r,header:Jle(r)}}}var t0t={meta:{key:Oa.key,name:"\u300C\u76F4\u300D\u7A00\u996D\xB2",type:3},api:async t=>{t.post("/init",CPr),t.post("/home",TPr),t.post("/category",PPr),t.post("/detail",BPr),t.post("/play",LPr),t.post("/search",DPr)}};var w_="https://4kzn.com",MPr={"User-Agent":Gt,"Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Referer:`${w_}/`},ede={key:"by",name:"",init:"date",value:[{n:"\u53D1\u5E03",v:"date"},{n:"\u66F4\u65B0",v:"modified"},{n:"\u6D4F\u89C8",v:"views"},{n:"\u70B9\u8D5E",v:"like"}]},r0t=[{type_id:"books/zuixin",type_name:"\u5F71\u89C6"},{type_id:"books/top250",type_name:"TOP250"},{type_id:"books/juji",type_name:"\u5267\u96C6"},{type_id:"books/dianying",type_name:"\u7535\u5F71"},{type_id:"books/xiliehj",type_name:"\u7CFB\u5217\u5408\u96C6"},{type_id:"books/manwei",type_name:"\u6F2B\u5A01\u7535\u5F71\u7CFB\u5217\u5408\u96C6"},{type_id:"books/mztkn",type_name:"\u540D\u4FA6\u63A2\u67EF\u5357\u5267\u573A\u7248\u5408\u96C6"},{type_id:"books/hanniba",type_name:"\u6C49\u5C3C\u62D4\u5408\u96C6"}],fM={};for(let t of r0t)fM[t.type_id]=[ede];fM["books/juji"]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5267\u60C5",v:"juq"},{n:"\u60CA\u609A",v:"jings"},{n:"\u72AF\u7F6A",v:"fanzuii"},{n:"\u52A8\u4F5C",v:"jjdongzuo"},{n:"\u5386\u53F2",v:"jjlishi"},{n:"\u6218\u4E89",v:"jjzhanzheng"},{n:"\u5192\u9669",v:"jjmaoxian"},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u6700\u65B0",v:"zuixin-juji"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u5BB6\u5EAD",v:"\u5BB6\u5EAD"},{n:"\u6050\u6016",v:"\u6050\u6016"},{n:"\u897F\u90E8",v:"\u897F\u90E8"},{n:"\u52A8\u753B",v:"\u52A8\u753B"}]},ede];fM["books/dianying"]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u559C\u5267",v:"xiju"},{n:"\u7231\u60C5",v:"aiqing"},{n:"\u5267\u60C5",v:"juqing"},{n:"\u60AC\u7591",v:"xuanyi"},{n:"\u4F20\u8BB0",v:"zhuanji"},{n:"\u52A8\u4F5C",v:"dongzuo"},{n:"\u79D1\u5E7B",v:"kehuan"},{n:"\u72AF\u7F6A",v:"fanzui"},{n:"\u5947\u5E7B",v:"qihuan"},{n:"\u5192\u9669",v:"maoxian"},{n:"\u5BB6\u5EAD",v:"jiating"},{n:"\u8FD0\u52A8",v:"yundong"},{n:"\u6B4C\u821E",v:"gewu"},{n:"\u6218\u4E89",v:"zhanzheng"},{n:"\u60CA\u609A",v:"jingsong"},{n:"\u897F\u90E8",v:"xibu"},{n:"\u52A8\u753B",v:"donghua"},{n:"\u707E\u96BE",v:"zainan"},{n:"\u6050\u6016",v:"kongbu"},{n:"\u5386\u53F2",v:"lishi"},{n:"\u97F3\u4E50",v:"yinyue"},{n:"\u540C\u6027",v:"tongxing"},{n:"\u7EAA\u5F55\u7247",v:"jilupian"},{n:"\u53E4\u88C5",v:"guzhuang"},{n:"\u513F\u7AE5",v:"ertong"},{n:"\u6B66\u4FA0",v:"\u6B66\u4FA0"}]},ede];async function tde(t){return(await fe.get(t,{headers:MPr})).data}function My(t){let e=String(t||"").trim();return e?/^https?:\/\//i.test(e)?e:e.startsWith("//")?`https:${e}`:e.startsWith("/")?`${w_}${e}`:`${w_}/${e.replace(/^\/+/,"")}`:""}function T_(t){return String(t||"").replace(/<[^>]+>/g," ").replace(/ /gi," ").replace(/\s+/g," ").trim()}function n0t(t){let e=De(t),r=[],n=new Set;return e("article.posts-item").each((s,i)=>{let a=e(i).find('a.item-image, h3.item-title a, a[target="_blank"]').first(),o=My(a.attr("href")||""),c=T_(e(i).find(".item-title a").first().text()||a.text()||e(i).attr("data-title")||"");if(!o||!c||n.has(o))return;n.add(o);let u=My(e(i).find("img").first().attr("data-src")||e(i).find("img").first().attr("src")||""),l=T_(e(i).find(".line1.text-muted.text-xs, .book-info, .item-desc, .sub-title").first().text());r.push({vod_id:o,vod_name:c,vod_pic:u,vod_remarks:l})}),r}function WPr(t){let e=t.match(/\/books\/[^"']+\/page\/(\d+)/g),r=e?e.map(i=>Number((i.match(/(\d+)$/)||[0,1])[1]||1)):[],n=r.length?Math.max(...r):1,s=/class="next-page[^>]*>\s*<a[^>]*href="[^"]+\/page\/\d+"/i.test(t);return{pagecount:Math.max(n,s?n+1:1)}}async function $Pr(t,e){return{class:r0t,filters:fM}}async function UPr(t,e){try{let r=String(t.body.id||"books/zuixin").replace(/^\/+/,""),n=t.body.page,s=t.body.filters||{},i=parseInt(n,10);(!i||i<1)&&(i=1);let a=r;s.class&&(a=`books/${encodeURIComponent(s.class)}`);let o=i>1?`${w_}/${a}/page/${i}`:`${w_}/${a}`;s.by&&(o+=`?orderby=${s.by}`);let c=await tde(o),u=n0t(c),{pagecount:l}=WPr(c);return{page:i,pagecount:l,limit:72,total:l*Math.max(u.length,1),list:u}}catch(r){return console.error("[4kzn][category]",r.message),{page:1,pagecount:0,limit:72,total:0,list:[]}}}async function FPr(t,e){try{let r=String(t.body.id||"").trim();if(!r)return{list:[]};let n=/^https?:\/\//i.test(r)?r:My(r),s=await tde(n),i=De(s),a=T_(i("h1, h2, .book-title").first().text())||T_(i("meta[property='og:title']").attr("content")||""),o=My(i('.book-cover img, meta[property="og:image"]').first().attr("data-src")||i('.book-cover img, meta[property="og:image"]').first().attr("content")||i(".book-cover img").first().attr("src")||""),c=T_(i("meta[name='description']").attr("content")||i(".panel-body.single").text()),u=[],l=new Set,d=[".site-go a[target='_blank']","a[target='_blank'][href*='pan.quark.cn']","a[href*='quark.cn']","a[href*='uc.cn']","a[href*='aliyundrive.com']","a[href*='115.com']"].join(", ");if(i(d).each((p,m)=>{let h=My(i(m).attr("href")||"");!h||l.has(h)||(l.add(h),u.push(h))}),!u.length){let p=i("a.external[href*='pan.quark.cn'], a[href*='pan.quark.cn'], a[href*='quark.cn']").first(),m=My(p.attr("href")||"");m&&u.push(m)}let f={vod_id:n,vod_name:a,vod_pic:o,vod_content:c};if(u.length){let p=await Xt(u,t);p?.froms&&p?.urls&&(f.vod_play_from=p.froms,f.vod_play_url=p.urls,f.vod_links=p.links)}return{list:[f]}}catch(r){return console.error("[4kzn][detail]",r.message),{list:[]}}}async function qPr(t,e){try{let r=t.body.wd,n=t.body.page,s=parseInt(n,10);if((!s||s<1)&&(s=1),!r)return{page:s,pagecount:0,limit:72,total:0,list:[]};let i=`${w_}/?s=${encodeURIComponent(r)}`,a=await tde(i),o=n0t(a);if(!o.length){let c=De(a);o=[],c("a[href*='/book/'], a[href*='/sites/']").each((u,l)=>{let d=c(l),f=My(d.attr("href")||""),p=T_(d.text());!f||!p||p.includes(r)&&o.push({vod_id:f,vod_name:p,vod_pic:"",vod_remarks:""})})}return{page:s,pagecount:1,limit:72,total:o.length,list:o}}catch(r){return console.error("[4kzn][search]",r.message),{page:1,pagecount:0,limit:72,total:0,list:[]}}}var s0t={meta:{key:"4kzn",name:"\u300C\u76D8\u300D\u6307\u5357",type:3},api:async t=>{t.post("/init",lr),t.post("/home",$Pr),t.post("/category",UPr),t.post("/detail",FPr),t.post("/play",er),t.post("/search",qPr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt)}};var fR="https://kafeizhibo.com",jPr=`${fR}/api/v1`,d0t="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/134.0.0.0 Safari/537.36",QPr={"User-Agent":d0t,Accept:"application/json, text/plain, */*",Referer:`${fR}/pc/replay`},rde="live:",pM="schedule:",HPr=/\.(m3u8|mp4|mkv|flv|avi|webm|mov)(?:[?#]|$)/i,i0t=[{type_id:"schedule",type_name:"\u8D5B\u7A0B"},{type_id:"live",type_name:"\u76F4\u64AD"},{type_id:"replay",type_name:"\u5F55\u64AD"}],GPr=[{n:"\u5168\u90E8",v:"all"},{n:"\u70ED\u95E8",v:"hot"},{n:"\u8DB3\u7403",v:"1"},{n:"\u7BEE\u7403",v:"2"},{n:"\u7F51\u7403",v:"3"},{n:"\u53F0\u7403",v:"19"}],zPr=[{n:"\u5168\u90E8",v:"all"},{n:"\u70ED\u95E8",v:"hot"},{n:"NBA",v:"nba"},{n:"\u8DB3\u7403",v:"1"},{n:"\u7BEE\u7403",v:"2"}],KPr=[{n:"\u5168\u90E8",v:"all"},{n:"\u70ED\u95E8",v:"hot"},{n:"\u8DB3\u7403",v:"1"},{n:"\u7BEE\u7403",v:"2"},{n:"\u7F51\u7403",v:"3"},{n:"\u53F0\u7403",v:"19"}],a0t={live:[{key:"type",name:"",init:"all",value:GPr}],replay:[{key:"type",name:"",init:"all",value:zPr}],schedule:[{key:"type",name:"",init:"all",value:KPr}]},f0t=new Map;function bt(t){return String(t??"").trim()}function o0t(t){return t!=null&&bt(t)!==""}function R_(t=""){let e=bt(t);if(!e)return"";if(/^https?:\/\//i.test(e))return e;if(e.startsWith("//"))return`https:${e}`;try{return new URL(e,fR).toString()}catch{return e}}function p0t(t=""){let e=bt(t);return e?/^https?:\/\//i.test(e)?e:e.startsWith("//")?`https:${e}`:e.startsWith("/")?R_(e):/^[\w.-]+\.[a-z]{2,}(?:[/:?#]|$)/i.test(e)?`https://${e}`:e:""}function VPr(t=""){return/^https?:\/\//i.test(bt(t))}function YPr(t=""){return HPr.test(bt(t))}function mM(t={}){let e=R_(t.cover_image);return e&&!e.includes("default_cover")?e:R_(t.home_team_logo)||R_(t.away_team_logo)||e}function nde(t={}){return R_(t.screenshot)||mM(t.match_info||t)||R_(t.avatar)||mM(t)}function gd(t={}){return!o0t(t.home_score)||!o0t(t.away_score)?"":`${bt(t.home_score)} - ${bt(t.away_score)}`}function Im(t={}){let e=bt(t.home_team),r=bt(t.away_team),n=bt(t.league_name),s=bt(t.match_name||t.title||t.name||(t.match_id??t.id)),i=e&&r?`${e} vs ${r}`:e||r||s||"\u8D5B\u4E8B\u5F55\u50CF";return n?`${i} (${n})`:i}function sde(t=""){let e=bt(t).toLowerCase();return{live:"\u76F4\u64AD\u4E2D",online:"\u5728\u7EBF",finished:"\u5DF2\u7ED3\u675F",upcoming:"\u672A\u5F00\u59CB"}[e]||bt(t)}function JPr(t=""){let e=bt(t),r=e.match(/^(\d{4})-(\d{2})-(\d{2})\s+(\d{2}:\d{2})/);return r?{time:r[4],date:`${r[2]}-${r[3]}`}:{time:e,date:""}}function N_(t={}){let e=t.data??t;return Array.isArray(e)?e:Array.isArray(e?.list)?e.list:Array.isArray(e?.records)?e.records:Array.isArray(e?.items)?e.items:[]}function c0t(t={}){let e=t.data??t,r=[e?.total,e?.count,t?.total,t?.count];for(let n of r){let s=Number.parseInt(n,10);if(Number.isFinite(s)&&s>=0)return s}return null}function u0t(t,e,r,n=null){let s=Number.isFinite(n)?n:null;return{page:t,pagecount:s===null?t+(r.length>=e?1:0):Math.max(t,Math.ceil(s/e)),limit:e,total:s===null?(t-1)*e+r.length+(r.length>=e?1:0):s,list:r}}async function pR(t,e={}){let r=t.startsWith("http")?t:`${jPr}${t}`,n=await fe.get(r,{params:e,headers:QPr,timeout:15e3,validateStatus:()=>!0});if(n.status<200||n.status>=400)throw new Error(`HTTP ${n.status} @ ${r}`);let s=typeof n.data=="string"?JSON.parse(n.data||"{}"):n.data||{},i=Number(s?.code);if(Number.isFinite(i)&&i!==0&&i!==200)throw new Error(s?.message||s?.msg||`API code=${s.code}`);return s}async function m0t(t=1,e=30,{league:r="",type:n=""}={}){let s={page:t,size:e};return r?s.league=r:n&&n!=="all"&&n!=="nba"&&(s.type=n),pR("/recordings",s)}async function h0t(t="all"){return pR("/archor",{type:t||"all",_t:Date.now()})}async function XPr(t){return pR(`/room/${encodeURIComponent(t)}`)}async function g0t(t="hot",e=1,r=30){return pR("/schedule",{type:t||"hot",page:e,size:r,platform:"pc",_t:Date.now()})}function y0t(t={}){let e=bt(t.match_id??t.id),r=bt(t.recording_count),n=[gd(t),bt(t.start_time),r?`${r}\u4E2A\u5F55\u50CF`:""].filter(Boolean);return{vod_id:e,vod_name:Im(t),vod_pic:mM(t),vod_remarks:n.join(" | "),type_name:bt(t.league_name)}}function A0t(t={}){let e=t.match_info||t,r=bt(t.room_id||t.archor?.room_id||t.match_id),n=sde(t.status||e.status),s=bt(t.heat),i=[n,gd(t)||gd(e),s?`\u70ED\u5EA6 ${s}`:""].filter(Boolean);return{vod_id:r?`${rde}${r}`:"",vod_name:bt(t.title)||Im(e),vod_pic:nde(t),vod_remarks:i.join(" | "),type_name:bt(t.league_name||e.league_name)}}function x0t(t={}){if(t.archor?.room_id)return bt(t.archor.room_id);let r=(Array.isArray(t.archors)?t.archors:[]).find(n=>n?.room_id);return bt(r?.room_id||t.room_id)}function b0t(t={}){let e=x0t(t),r=bt(t.match_id??t.id),n=e&&r?`${pM}${r}:${e}`:"",s=JPr(t.start_time),i=[s.time||sde(t.status),s.date,gd(t),t.is_hot?"\u70ED\u95E8":""].filter(Boolean);return n&&f0t.set(n,t),{vod_id:n,vod_name:bt(t.title)||Im(t),vod_pic:nde(t),vod_remarks:i.join(" | "),type_name:bt(t.league_name)}}function _0t(t,e){return(bt(t)||e).replace(/[$#]/g," ").replace(/\s+/g," ").trim()||e}function l0t(t=[],e="\u64AD\u653E"){return t.map((r,n)=>{let s=p0t(r.video_url||r.stream_url||r.url||r.play_url);return s?`${_0t(r.title||r.name,`${e}${n+1}`)}$${encodeURIComponent(s)}`:""}).filter(Boolean).join("#")}function ZPr(t=""){let e=bt(t);if(!e)return"";try{return decodeURIComponent(e)}catch{return e}}function e3r(t=""){let e=bt(t);return e==="live"?"all":e.startsWith("live_")?e.slice(5)||"all":null}function t3r(t={}){let e=t.room_info||{},r=t.archor||{},n=t.teams||{};return{match_id:e.match_id||t.match_id,room_id:e.room_id||r.room_id,title:e.title||r.name,league_name:e.league||e.league_name,home_team:n.home?.name||e.home_team,away_team:n.away?.name||e.away_team,home_team_logo:n.home?.logo,away_team_logo:n.away?.logo,home_score:e.home_score??t.home_score,away_score:e.away_score??t.away_score,status:t.status||e.status||r.status,screenshot:r.screenshot,screenshot_updated_at:r.screenshot_updated_at,avatar:r.avatar||e.avatar,heat:r.heat,notice:e.notice||e.notice_h5}}function r3r(t={}){return{match_id:t.match_id||t.id,room_id:x0t(t),title:bt(t.title)||Im(t),league_name:t.league_name,home_team:t.home_team||t.homeTeam?.name,away_team:t.away_team||t.awayTeam?.name,home_team_logo:t.home_team_logo||t.homeTeam?.logo,away_team_logo:t.away_team_logo||t.awayTeam?.logo,home_score:t.home_score,away_score:t.away_score,status:t.status,screenshot:t.screenshot,avatar:t.archor?.avatar,heat:t.archor?.heat,start_time:t.start_time,notice:t.is_hot?"\u70ED\u95E8\u8D5B\u7A0B":""}}function n3r(t={}){let e=[],r=new Set,n=(s={},i="\u7EBF\u8DEF")=>{let a=p0t(s.stream_url||s.url||s.play_url);!a||r.has(a)||(r.add(a),e.push({name:_0t(s.name||s.title,`${i}${e.length+1}`),url:a}))};return n(t,"\u7EBF\u8DEF"),n(t.archor,"\u4E3B\u64AD"),(Array.isArray(t.archors)?t.archors:[]).forEach(s=>n(s,"\u4E3B\u64AD")),(Array.isArray(t.signals)?t.signals:[]).forEach(s=>n(s,"\u7EBF\u8DEF")),[t.external_signals_pc,t.external_signals,t.external_signals_h5,t.room_info?.external_signals_pc,t.room_info?.external_signals,t.room_info?.external_signals_h5].forEach(s=>{(Array.isArray(s)?s:[]).forEach(i=>n(i,"\u5916\u90E8"))}),e}async function s3r(t,e){return{}}async function i3r(t,e){try{let r=await g0t("all",1,30),n=N_(r).map(b0t).filter(s=>s.vod_id&&s.vod_name);return{class:i0t,filters:a0t,list:n}}catch(r){return console.error("kafei home failed:",r.message),{class:i0t,filters:a0t,list:[]}}}async function a3r(t,e){let r=bt(t.body?.id||"all"),n=Math.max(1,Number.parseInt(t.body?.page||1,10)),s=t.body?.filters||{};if(r==="schedule"){let u=bt(s.type||"all"),l=30;try{let d=await g0t(u,n,l),f=N_(d).map(b0t).filter(p=>p.vod_id&&p.vod_name);return u0t(n,l,f,c0t(d))}catch(d){return console.error("kafei schedule category failed:",u,d.message),{page:n,pagecount:n,limit:l,total:0,list:[]}}}let i=e3r(r);if(i!==null){let u=bt(s.type||i||"all");if(n>1)return{page:n,pagecount:1,limit:100,total:0,list:[]};try{let l=await h0t(u),d=N_(l).map(A0t).filter(f=>f.vod_id&&f.vod_name);return{page:1,pagecount:1,limit:d.length||100,total:d.length,list:d}}catch(l){return console.error("kafei live category failed:",r,l.message),{page:1,pagecount:1,limit:100,total:0,list:[]}}}let a=r==="replay"?bt(s.type||"all"):r,o=a.toLowerCase(),c=o==="nba"?20:30;try{let u=await m0t(n,c,{league:o==="nba"?"NBA":"",type:o==="all"?"":a}),l=N_(u).map(y0t).filter(d=>d.vod_id&&d.vod_name);return u0t(n,c,l,c0t(u))}catch(u){return console.error("kafei category failed:",r,u.message),{page:n,pagecount:n,limit:c,total:0,list:[]}}}async function o3r(t,e){let r=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],n=[];for(let s of r){let i=bt(s);if(i)try{if(i.startsWith(rde)||i.startsWith(pM)){let h=i.startsWith(pM),y=h?i.slice(pM.length).split(":").pop():i.slice(rde.length),g=h?f0t.get(i):null,b=g?null:await XPr(y),x=g||b?.data||{},A=g?r3r(x):t3r(x),I=n3r(x).map(R=>`${R.name}$${encodeURIComponent(R.url)}`).join("#");n.push({vod_id:i,vod_name:bt(A.title)||Im(A),vod_pic:nde(A),type_name:bt(A.league_name),vod_remarks:[sde(A.status),gd(A)].filter(Boolean).join(" | "),vod_content:[bt(A.league_name),bt(A.title)||Im(A),gd(A)?`\u6BD4\u5206 ${gd(A)}`:"",bt(A.start_time)?`\u6BD4\u8D5B\u65F6\u95F4: ${bt(A.start_time)}`:"",bt(A.notice)].filter(Boolean).join("\uFF0C"),vod_play_from:I?"\u76F4\u64AD":"",vod_play_url:I});continue}let o=(await pR(`/match/${encodeURIComponent(i)}/recordings`)).data||{},c=o.match||o,u=Array.isArray(o.replays)?o.replays:[],l=Array.isArray(o.highlights)?o.highlights:[],d=[],f=[],p=l0t(u,"\u5F55\u50CF");p&&(d.push("\u5F55\u50CF"),f.push(p));let m=l0t(l,"\u96C6\u9526");m&&(d.push("\u96C6\u9526"),f.push(m)),n.push({vod_id:i,vod_name:Im(c),vod_pic:mM(c),type_name:bt(c.league_name),vod_remarks:gd(c),vod_content:[bt(c.league_name),bt(c.match_round),Im(c),gd(c)?`\u6BD4\u5206 ${gd(c)}`:"",bt(c.start_time)?`\u6BD4\u8D5B\u65F6\u95F4: ${bt(c.start_time)}`:""].filter(Boolean).join("\uFF0C"),vod_play_from:d.join("$$$"),vod_play_url:f.join("$$$")})}catch(a){console.error("kafei detail failed:",i,a.message)}}return{list:n}}async function c3r(t,e){let r=ZPr(t.body?.id);return r?{parse:VPr(r)&&!YPr(r)?1:0,url:r,header:{"User-Agent":d0t,Referer:fR,Origin:fR}}:{parse:0,url:"",header:{}}}async function u3r(t,e){let r=bt(t.body?.wd||t.body?.keyword).toLowerCase(),n=100;if(!r)return{page:1,pagecount:1,limit:n,total:0,list:[]};try{let[s,i]=await Promise.allSettled([h0t("all"),m0t(1,n)]),a=s.status==="fulfilled"?N_(s.value):[],o=i.status==="fulfilled"?N_(i.value):[],c=a.filter(d=>{let f=d.match_info||d;return[d.title,d.name,d.home_team,d.away_team,d.league_name,f.home_team,f.away_team,f.league_name].map(bt).join(" ").toLowerCase().includes(r)}).map(A0t),u=o.filter(d=>[d.home_team,d.away_team,d.league_name,d.match_name,d.title].map(bt).join(" ").toLowerCase().includes(r)).map(y0t),l=[...c,...u].filter(d=>d.vod_id&&d.vod_name);return{page:1,pagecount:1,limit:n,total:l.length,list:l}}catch(s){return console.error("kafei search failed:",s.message),{page:1,pagecount:1,limit:n,total:0,list:[]}}}var E0t={meta:{key:"kafei",name:"\u300C\u76F4\u300D\u5496\u5561",type:3},api:async t=>{t.post("/init",s3r),t.post("/home",i3r),t.post("/category",a3r),t.post("/detail",o3r),t.post("/play",c3r),t.post("/search",u3r)}};var S0t=require("crypto");var ide="/embySpider",yd={clientName:"SenPlayer",clientVersion:"6.0.5",deviceName:"iPhone",language:"zh-cn",userAgent:"SenPlayer/6.0.5"};function l3r(){return(0,S0t.randomUUID)().toUpperCase()}function I0t(t,e=!1){return Jo(t)||(e?l3r():"")}function O_({token:t="",contentType:e=!1,deviceId:r="",userId:n=""}={}){let s=I0t(r),i=Jo(t),a=Jo(n),o={"X-Emby-Authorization":[`MediaBrowser Token="${i}"`,`UserId="${a}"`,`Client="${yd.clientName}"`,`Device="${yd.deviceName}"`,`DeviceId="${s}"`,`Version="${yd.clientVersion}"`].join(", "),"X-Emby-Client":yd.clientName,"X-Emby-Device-Name":yd.deviceName,"X-Emby-Device-Id":s,"X-Emby-Client-Version":yd.clientVersion,"X-Emby-Language":yd.language,"User-Agent":yd.userAgent};return e&&(o["Content-Type"]="application/json"),i&&(o["X-Emby-Token"]=i),o}function C0t(t){return String(t||"").trim().replace(/\/+$/,"")}function Jo(t){return String(t||"").trim()}function d3r(t){return String(t||"").trim()}function T0t(t){return Jo(t).toLowerCase().replace(/[^a-z0-9_-]+/g,"-").replace(/^-+|-+$/g,"").slice(0,40)}function f3r(t,e){let n=`${t?.name||""}-${t?.host||""}-${t?.username||""}`.toLowerCase().replace(/^https?:\/\//,"").replace(/[^a-z0-9_-]+/g,"-").replace(/^-+|-+$/g,"").slice(0,28),s=n||Oz().slice(0,8);for(;e.has(s);)s=`${(n||"emby").slice(0,24)}-${Oz().slice(0,4)}`;return e.add(s),s}function p3r(t,e,r={}){let n=C0t(t?.host),s=Jo(t?.username),i=Jo(t?.name),a=T0t(t?.id),o=a&&!e.has(a)?a:f3r({name:i,host:n,username:s},e);return e.add(o),{id:o,name:i,host:n,username:s,password:String(t?.password||""),deviceId:I0t(t?.deviceId,r.ensureDeviceId),logo:d3r(t?.logo),libraries:ade(t?.libraries),libraryStats:w0t(t?.libraryStats)}}function w0t(t={}){return{movieCount:Math.max(0,Number(t?.movieCount||0)||0),seriesCount:Math.max(0,Number(t?.seriesCount||0)||0)}}function ade(t=[]){return Array.isArray(t)?t.map(e=>({id:Jo(e?.id||e?.Id),name:Jo(e?.name||e?.Name),collectionType:Jo(e?.collectionType||e?.CollectionType)})).filter(e=>e.id).map(e=>({...e,name:e.name||e.id})):[]}function m3r(t=[]){return ade(t.map(e=>({id:e?.Id,name:e?.Name,collectionType:e?.CollectionType})))}function hM(t={},e={}){let r=new Set;return{servers:(Array.isArray(t?.servers)?t.servers:[]).filter(i=>i&&typeof i=="object").filter(i=>Jo(i?.id)||Jo(i?.name)||C0t(i?.host)||Jo(i?.username)||String(i?.password||"")).map(i=>p3r(i,r,e)).filter(i=>i.host||i.username)}}function h3r(t){return{servers:t.servers}}var ode=async t=>{let e=await t.db.getObjectDefault(ide,{});return hM(e)},mR=async t=>(await ode(t)).servers,k_=async(t,e="")=>{let r=await ode(t),n=T0t(e);return n&&r.servers.find(s=>s.id===n)||null},g3r=async(t,e)=>{let r=hM(e,{ensureDeviceId:!0});return await t.db.push(ide,h3r(r)),r},y3r=async t=>{await t.db.delete(ide)};async function A3r(t){let{host:e,username:r,password:n,deviceId:s}=t,i=`${e}/emby/Users/authenticatebyname`,o=(await fe.post(i,{Username:r,Pw:n||"",Password:n||""},{headers:O_({contentType:!0,deviceId:s}),timeout:1e4})).data;if(!o?.AccessToken||!o?.User?.Id)throw new Error("\u8BA4\u8BC1\u5931\u8D25\uFF0C\u8BF7\u68C0\u67E5\u7528\u6237\u540D\u548C\u5BC6\u7801");return o}function x3r(t="",e="",r=""){return O_({token:t,contentType:!0,deviceId:e,userId:r})}async function gM(t,e="",r="",n=""){return(await fe.get(t,{headers:e?x3r(e,r,n):O_({deviceId:r}),timeout:1e4})).data}async function b3r(t,e="",r=""){try{return await gM(`${t.host}/emby/System/Info/Public`,e,t.deviceId,r)}catch{try{return await gM(`${t.host}/emby/System/Info`,e,t.deviceId,r)}catch{return{}}}}async function _3r(t,e,r){try{let n=await gM(`${t.host}/emby/Users/${encodeURIComponent(e)}/Views`,r,t.deviceId,e);return Array.isArray(n?.Items)?n.Items:[]}catch{return[]}}async function v0t(t,e,r,n,s){let i=new URLSearchParams({ParentId:String(n||""),Recursive:"true",IncludeItemTypes:s,StartIndex:"0",Limit:"1"});try{let a=await gM(`${t.host}/emby/Users/${encodeURIComponent(e)}/Items?${i.toString()}`,r,t.deviceId,e);return Math.max(0,Number(a?.TotalRecordCount||0)||0)}catch{return 0}}async function E3r(t,e,r,n=[]){let s={movieCount:0,seriesCount:0},i=[];for(let a of n){let o=String(a?.Id||"");if(!o)continue;let c=String(a?.CollectionType||"").toLowerCase();(!c||c==="movies")&&i.push(v0t(t,e,r,o,"Movie").then(u=>{s.movieCount+=u})),(!c||c==="tvshows")&&i.push(v0t(t,e,r,o,"Series").then(u=>{s.seriesCount+=u}))}return await Promise.allSettled(i),s}async function v3r(t){let e=await A3r(t),r=e.AccessToken,n=e.User.Id,[s,i]=await Promise.all([b3r(t,r,n),_3r(t,n,r)]),a=await E3r(t,n,r,i);return{serverName:Jo(s?.ServerName),libraries:m3r(i),libraryStats:a}}function S3r(t,e={}){return{...t,name:t.name||e.serverName||"Emby",libraries:ade(e.libraries||t.libraries),libraryStats:w0t(e.libraryStats||t.libraryStats)}}function I3r(t){return t?.response?.status===401?"\u7528\u6237\u540D\u6216\u5BC6\u7801\u9519\u8BEF":`\u8FDE\u63A5\u5931\u8D25: ${t.message}`}async function cde(t){t.get("/setting",async(e,r)=>{r.send({code:0,data:await ode(e.server)})}),t.post("/verify",async(e,r)=>{let s=hM({servers:[e.body||{}]},{ensureDeviceId:!0}).servers[0];if(!s||!s.host||!s.username){r.send({code:-1,message:"\u670D\u52A1\u5668\u5730\u5740\u548C\u7528\u6237\u540D\u4E0D\u80FD\u4E3A\u7A7A"});return}try{let i=await v3r(s);r.send({code:0,data:S3r(s,i)})}catch(i){r.send({code:-1,message:I3r(i)})}}),t.put("/setting",async(e,r)=>{let n=hM(e.body||{},{ensureDeviceId:!0});for(let i of n.servers)if(!i.host||!i.username){r.send({code:-1,message:`${i.name||"Emby"} \u7684\u670D\u52A1\u5668\u5730\u5740\u548C\u7528\u6237\u540D\u4E0D\u80FD\u4E3A\u7A7A`});return}let s=await g3r(e.server,n);r.send({code:0,data:s})}),t.delete("/setting",async(e,r)=>{await y3r(e.server),r.send({code:0})})}var fde="::",P0t=["PrimaryImageAspectRatio","BasicSyncInfo","ProductionYear","RecursiveItemCount","ChildCount"].join(","),ude=new Map;function C3r(){return{baseUrl:"",username:"",password:"",deviceId:"",accessToken:"",userId:""}}function T3r(t){let e=t||"default";return ude.has(e)||ude.set(e,C3r()),ude.get(e)}async function w3r(t,e=""){let r=await k_(t,e),n=String(r?.host||"").replace(/\/$/,""),s=r?.username||"",i=r?.password||"",a=r?.deviceId||"",o=T3r(r?.id||e);if(!n||!s)throw new Error("\u8BF7\u5728\u7BA1\u7406\u9875\u9762\u914D\u7F6E Emby \u670D\u52A1\u5668\u5730\u5740\u548C\u7528\u6237\u540D");return o.baseUrl===n&&o.username===s&&o.password===i&&o.deviceId===a||(o.baseUrl=n,o.username=s,o.password=i,o.deviceId=a,o.accessToken="",o.userId=""),o}async function mde(t){let e=`${t.baseUrl}/emby/Users/authenticatebyname`,n=(await fe.post(e,{Username:t.username,Pw:t.password||"",Password:t.password||""},{headers:O_({contentType:!0,deviceId:t.deviceId}),timeout:15e3})).data;if(!n||!n.AccessToken||!n.User?.Id)throw new Error("Emby\u8BA4\u8BC1\u5931\u8D25\uFF0C\u8BF7\u68C0\u67E5\u7528\u6237\u540D\u548C\u5BC6\u7801");t.accessToken=n.AccessToken,t.userId=n.User.Id}async function Cm(t,e=""){let r=await w3r(t,e);return(!r.accessToken||!r.userId)&&await mde(r),r}function yM(t){return O_({token:t.accessToken,deviceId:t.deviceId,userId:t.userId})}function P_(t,e){let r=String(t||""),n=String(e||"");return!r||!n?"":`${encodeURIComponent(r)}${fde}${n}`}function D0t(t){let e=String(t||""),r=e.indexOf(fde);if(r<0)return{serverId:"",itemId:""};let n=e.slice(0,r);return{serverId:decodeURIComponent(n),itemId:e.slice(r+fde.length)}}function R3r(t){return String(t.body?.id||"").trim()}function R0t(t){return String(t||"").split(",")[0].trim()}function N3r(t){let r=R0t(t?.headers?.["x-forwarded-proto"])||t?.protocol||"http",s=R0t(t?.headers?.["x-forwarded-host"])||t?.headers?.host||"";return s?`${r}://${s}`:""}function O3r(t=""){let e=String(t||"").toLowerCase();return e==="movies"?"Movie":e==="tvshows"?"Series":"Movie,Series"}function lde(t){let e=Number(t);return Number.isFinite(e)&&e>0?Math.floor(e):0}function k3r(t={}){return String(t?.Type||"").toLowerCase()!=="series"?0:lde(t.RecursiveItemCount)||lde(t.EpisodeCount)||lde(t.ChildCount)}function P3r(t=[]){let e=[],r=t.reduce((n,s)=>Math.max(n,s.list.length),0);for(let n=0;n<r;n++)for(let s of t)s.list[n]&&e.push(s.list[n]);return e}async function B0t(t,e){let r=await Cm(t,e),n=await Wy(`/emby/Users/${r.userId}/Views`,t,e);return Array.isArray(n?.Items)?n.Items:[]}function pde(t=[]){let e=[];for(let r of t){let n=String(r?.Id||r?.id||"");n&&e.push({n:r.Name||r.name||n,v:n})}return e.length===0?[]:[{key:"library",name:"",init:e[0].v,value:e}]}function dde(t=[]){return(Array.isArray(t)?t:[]).map(e=>{let r=String(e?.id||e?.Id||"").trim();return r?{type_id:r,type_name:String(e?.name||e?.Name||r).trim()||r}:null}).filter(Boolean)}async function Wy(t,e,r="",n={}){let s=await Cm(e,r),i=`${s.baseUrl}${t}`;try{return(await fe({method:n.method||"GET",url:i,headers:yM(s),data:n.data,timeout:15e3})).data}catch(a){if(a?.response?.status===401)return s.accessToken="",await mde(s),(await fe({method:n.method||"GET",url:i,headers:yM(s),data:n.data,timeout:15e3})).data;throw a}}function D3r(t=""){let e=String(t||"").trim();return/^[A-Za-z]+$/.test(e)?e:"Primary"}function B3r(t,e=300){let r=parseInt(t||e,10);return!Number.isFinite(r)||r<=0?e:Math.min(r,1200)}function L0t(t,e="",r=null){if(t.ImageTags?.Primary){let s=`/spider/emby/3/image?${new URLSearchParams({serverId:e,itemId:String(t.Id||""),maxHeight:"300",tag:String(t.ImageTags.Primary)}).toString()}`,i=N3r(r);return i?`${i}${s}`:s}return""}function M0t(t,e="",r=null){let n=k3r(t);return{vod_id:P_(e,t.Id),vod_name:t.Name||"",vod_pic:L0t(t,e,r),vod_remarks:n>0?String(n):"",vod_year:t.ProductionYear?String(t.ProductionYear):""}}async function N0t(t,e){return{}}async function L3r(t,e){let r=t.query||{},n=String(r.serverId||"").trim(),s=String(r.itemId||"").trim();if(!n||!s)return e.code(404),"";try{let i=await Cm(t.server,n),a=D3r(r.type||"Primary"),o=new URLSearchParams({maxHeight:String(B3r(r.maxHeight,300))}),c=String(r.tag||"").trim();c&&o.set("tag",c);let u=`${i.baseUrl}/emby/Items/${encodeURIComponent(s)}/Images/${a}?${o.toString()}`,l;try{l=await fe.get(u,{responseType:"stream",headers:yM(i),timeout:15e3})}catch(d){if(d?.response?.status!==401)throw d;i.accessToken="",await mde(i),l=await fe.get(u,{responseType:"stream",headers:yM(i),timeout:15e3})}return e.header("Content-Type",l.headers?.["content-type"]||"image/jpeg"),e.header("Cache-Control","private, max-age=86400"),l.headers?.["content-length"]&&e.header("Content-Length",l.headers["content-length"]),e.send(l.data)}catch(i){return console.error("emby image failed:",i.message),e.code(i?.response?.status===404?404:502),""}}async function M3r(t,e){try{let n=(await mR(t.server)).filter(a=>a?.host&&a?.username);if(n.length===0)return{class:[],filters:{}};let s=n.map((a,o)=>({type_id:a.id,type_name:a.name||`Emby ${o+1}`})),i={};for(let a of n){let o=a.id;i[o]=pde(a.libraries)}return{class:s,filters:i}}catch(r){return console.error("emby home failed:",r.message),{class:[],filters:{}}}}async function W3r(t,e){let r=String(t.params?.serverId||"").trim();if(!r)return{class:[],filters:{}};try{let n=await k_(t.server,r),s=dde(n?.libraries);if(s.length===0){let i=await B0t(t.server,r);s=dde(i)}return{class:s,filters:{}}}catch(n){console.error("emby server home failed:",n.message);let s=await k_(t.server,r).catch(()=>null);return{class:dde(s?.libraries),filters:{}}}}async function W0t(t,e,r="",n={}){let s=t.body?.filters||{},i=Math.max(1,parseInt(t.body?.page||1,10)),a=20,o=(i-1)*a;if(!e)return{page:i,pagecount:i,limit:a,total:0,list:[],filters:n.filterKey?{}:void 0};try{let c=await Cm(t.server,e),u=await B0t(t.server,e),l=pde(u),d=String(r||"").trim();!d&&n.useFilterLibrary!==!1&&(d=String(s.library||"").trim()),d||(d=String(u[0]?.Id||"").trim());let f="Movie,Series";if(d){let x=await Wy(`/emby/Users/${c.userId}/Items/${d}`,t.server,e);f=O3r(x?.CollectionType)}let p=new URLSearchParams({StartIndex:String(o),Limit:String(a),Recursive:"true",Fields:P0t,ImageTypeLimit:"1",EnableImageTypes:"Primary",IncludeItemTypes:f,SortBy:"DateLastContentAdded,DateCreated",SortOrder:"Descending"});d&&p.set("ParentId",d);let m=await Wy(`/emby/Users/${c.userId}/Items?${p.toString()}`,t.server,e),h=m?.Items||[],y=m?.TotalRecordCount||h.length,g=h.map(x=>M0t(x,e,t)),b={page:i,pagecount:Math.max(i,Math.ceil(y/a)),limit:a,total:y,list:g};return n.filterKey&&(b.filters={[n.filterKey]:l}),b}catch(c){console.error("emby category failed:",c.message);let u=await k_(t.server,e).catch(()=>null),l={page:i,pagecount:i,limit:a,total:0,list:[]};return n.filterKey&&(l.filters={[n.filterKey]:pde(u?.libraries)}),l}}async function $3r(t,e){let r=R3r(t);return W0t(t,r,"",{filterKey:r,useFilterLibrary:!0})}async function U3r(t,e){let r=String(t.params?.serverId||"").trim(),n=String(t.body?.id||"").trim();return W0t(t,r,n,{useFilterLibrary:!1})}async function O0t(t,e){let r=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],n=[];for(let s of r)if(s)try{let{serverId:i,itemId:a}=D0t(s);if(!i||!a)continue;let o=await Cm(t.server,i),c=await Wy(`/emby/Users/${o.userId}/Items/${a}`,t.server,i);if(!c)continue;let u={vod_id:P_(i,c.Id),vod_name:c.Name||"",vod_pic:L0t(c,i,t),vod_remarks:c.ProductionYear?String(c.ProductionYear):"",vod_year:c.ProductionYear?String(c.ProductionYear):"",vod_content:c.Overview||"",vod_director:(c.People||[]).filter(l=>l.Type==="Director").map(l=>l.Name).join(","),vod_actor:(c.People||[]).filter(l=>l.Type==="Actor").map(l=>l.Name).join(","),vod_play_from:"",vod_play_url:""};if(c.Type==="Movie")u.vod_play_from="Emby",u.vod_play_url=`${c.Name}$${P_(i,c.Id)}`;else if(c.Type==="Series"){let d=(await Wy(`/emby/Shows/${c.Id}/Episodes?userId=${o.userId}&Fields=BasicSyncInfo`,t.server,i))?.Items||[];if(d.length>0){let f={};for(let h of d){let y=h.SeasonName||`\u7B2C${h.ParentIndexNumber||1}\u5B63`;f[y]||(f[y]=[]);let g=h.Name===`\u7B2C ${h.IndexNumber} \u96C6`?h.Name:`${h.IndexNumber}.${h.Name}`;f[y].push(`${g}$${P_(i,h.Id)}`)}let p=[],m=[];for(let[h,y]of Object.entries(f))p.push(h),m.push(y.join("#"));u.vod_play_from=p.join("$$$"),u.vod_play_url=m.join("$$$")}else u.vod_play_from="Emby",u.vod_play_url=`${c.Name}$${P_(i,c.Id)}`}else u.vod_play_from="Emby",u.vod_play_url=`${c.Name}$${P_(i,c.Id)}`;n.push(u)}catch(i){console.error("emby detail failed:",s,i.message)}return{list:n}}async function F3r(t,e,r){let n=await Cm(t,e),s=encodeURIComponent(r),i=await Wy(`/emby/Users/${n.userId}/Items/${s}?Fields=Path`,t,e),o=(Array.isArray(i?.MediaSources)?i.MediaSources:[]).find(c=>String(c?.Id||"").trim())||null;return String(o?.Id||"").trim()}async function k0t(t,e){let{serverId:r,itemId:n}=D0t(t.body?.id||"");if(!r||!n)return{parse:0,url:"",header:{}};try{let s=await Cm(t.server,r),i=encodeURIComponent(n),a=new URLSearchParams({static:"true",api_key:s.accessToken}),o=await F3r(t.server,r,n).catch(()=>"");return o&&a.set("MediaSourceId",o),{parse:0,url:`${s.baseUrl}/emby/Videos/${i}/stream.mkv?${a.toString()}`,header:{"User-Agent":yd.userAgent}}}catch(s){return console.error("emby play failed:",s.message),{parse:0,url:"",header:{}}}}async function $0t(t,e=[]){let r=(t.body?.wd||"").trim(),n=Math.max(1,parseInt(t.body?.page||1,10)),s=20;if(!r)return{page:n,pagecount:n,limit:s,total:0,list:[]};if(e.length===0)return{page:n,pagecount:n,limit:s,total:0,list:[]};try{let i=(n-1)*s,a=n*s,o=await Promise.allSettled(e.map(async d=>{let f=d.id,p=await Cm(t.server,f),m=new URLSearchParams({SearchTerm:r,StartIndex:"0",Limit:String(a),Recursive:"true",Fields:P0t,ImageTypeLimit:"1",EnableImageTypes:"Primary",IncludeItemTypes:"Movie,Series",SortBy:"DateLastContentAdded,DateCreated",SortOrder:"Descending"}),h=await Wy(`/emby/Users/${p.userId}/Items?${m.toString()}`,t.server,f),y=h?.Items||[];return{total:Math.max(0,Number(h?.TotalRecordCount||y.length)||0),list:y.map(g=>M0t(g,f,t))}})),c=[],u=0;for(let d of o){if(d.status!=="fulfilled"){console.error("emby search server failed:",d.reason?.message||d.reason);continue}u+=d.value.total,c.push(d.value)}let l=P3r(c);return{page:n,pagecount:Math.max(n,Math.ceil(u/s)),limit:s,total:u,list:l.slice(i,a)}}catch(i){return console.error("emby search failed:",i.message),{page:n,pagecount:n,limit:s,total:0,list:[]}}}async function q3r(t,e){let r=await mR(t.server);return $0t(t,r.filter(n=>n?.host&&n?.username))}async function j3r(t,e){let r=String(t.params?.serverId||"").trim(),n=await k_(t.server,r).catch(()=>null);return $0t(t,n?.host&&n?.username?[n]:[])}var U0t={meta:{key:"emby",name:"Emby",type:3,hidden:!0},api:async t=>{t.post("/init",N0t),t.get("/image",L3r),t.post("/home",M3r),t.post("/category",$3r),t.post("/detail",O0t),t.post("/play",k0t),t.post("/search",q3r),t.post("/server/:serverId/init",N0t),t.post("/server/:serverId/home",W3r),t.post("/server/:serverId/category",U3r),t.post("/server/:serverId/detail",O0t),t.post("/server/:serverId/play",k0t),t.post("/server/:serverId/search",j3r)}};var hde="/alistVideo",q0t={servers:[{id:"alist_default",name:"\u4EBF\u82EF\u6B63\u7ECF\u7684Alist\u5E93",server:"https://pan.lm379.cn"}]};function Q3r(t,e="server"){return`alist_${String(t||e).trim().toLowerCase().replace(/^https?:\/\//,"").replace(/[^a-z0-9_-]+/g,"-").replace(/^-+|-+$/g,"").slice(0,64)||e}`}function gde(t={}){return{id:t.id||"",name:String(t.name||"").trim(),server:String(t.server||"").trim().replace(/\/+$/,""),username:String(t.username||"").trim(),password:String(t.password||""),token:String(t.token||"").trim(),otpCode:String(t.otpCode||t.otp_code||"").trim()}}function yde(t={}){let e=Array.isArray(t?.servers)?t.servers:[],r=new Set;return{servers:e.map((n,s)=>{let i={...gde(n),otpCode:""};if(!i.server)return null;i.id||(i.id=Q3r(i.server||i.name,`server_${s+1}`));let a=i.id,o=a,c=2;for(;r.has(o);)o=`${a}_${c}`,c+=1;return r.add(o),i.id=o,i}).filter(Boolean)}}function H3r(t={}){return`catpaw_${String(t.id||t.server||t.name||"default").trim().replace(/[^a-zA-Z0-9_-]/g,"_").slice(0,96)||"alist"}`}function D_(t={},e=""){let r=String(e||t.token||"").trim(),n={"Content-Type":"application/json","Client-Id":H3r(t)};return r&&(n.Authorization=r),n}function Ade(t,e={}){return t?.status===401||t?.status===403||e?.code===401||e?.code===403}async function AM(t={},e={}){let r=gde(t);if(r.token)return r.token;if(!r.server||!r.username)return"";let n={username:r.username,password:r.password};r.otpCode&&(n.otp_code=r.otpCode);let i=(await fe.post(r.server+"/api/auth/login",n,{headers:D_(r),timeout:e.timeout||1e4})).data||{};if(i.code!==200||!i.data?.token)throw new Error(i.message||"Alist \u767B\u5F55\u5931\u8D25");return i.data.token}async function F0t(t,e=""){let r=await fe.post(t.server+"/api/fs/list",{path:"/",page:1,per_page:1},{headers:D_(t,e),timeout:1e4});return{resp:r,json:r.data||{}}}var j0t=async t=>{let e=await t.db.getObjectDefault(hde,q0t);return yde(e)},G3r=async(t,e)=>{let r=yde(e);return await t.db.push(hde,r),r},z3r=async t=>{await t.db.delete(hde)},hR=async t=>(await j0t(t)).servers;async function xde(t){t.get("/setting",async(e,r)=>{r.send({code:0,data:await j0t(e.server)})}),t.put("/setting",async(e,r)=>{let n=yde(e.body||{});if(n.servers.some(i=>!i.server)){r.send({code:-1,message:"\u670D\u52A1\u5668\u5730\u5740\u4E0D\u80FD\u4E3A\u7A7A"});return}let s=await G3r(e.server,n);r.send({code:0,data:s})}),t.delete("/setting",async(e,r)=>{await z3r(e.server),r.send({code:0,data:q0t})}),t.post("/verify",async(e,r)=>{let n=gde(e.body||{});if(!n.server){r.send({code:-1,message:"\u670D\u52A1\u5668\u5730\u5740\u4E0D\u80FD\u4E3A\u7A7A"});return}try{let s=await AM(n),{resp:i,json:a}=await F0t(n,s);if(Ade(i,a)&&n.username&&(s=await AM({...n,token:""}),{resp:i,json:a}=await F0t(n,s)),a.code!==200){r.send({code:-1,message:a.message||"\u8FDE\u63A5\u5931\u8D25"});return}r.send({code:0,data:{...n,token:s||n.token,otpCode:""}})}catch(s){r.send({code:-1,message:`\u8FDE\u63A5\u5931\u8D25: ${s.message}`})}})}var K3r=new Set([".mp4",".mkv",".avi",".wmv",".flv",".mov",".webm",".ts",".m4v",".rmvb",".rm",".3gp",".mpg",".mpeg",".vob",".iso"]),V3r=new Set([".srt",".ass",".ssa",".sub",".scc",".stl",".ttml",".vtt"]),V0t="https://img.icons8.com/fluency/96/folder-invoices--v1.png",Y0t="https://img.icons8.com/color/48/video.png",Y3r=new Set(["AliyundriveOpen","AliyunShare","BaiduNetdisk","BaiduShare2","Quark","QuarkShare","UC","UCShare","UCTV","115 Cloud","115 Share"]),J0t="Mozilla/5.0 (iPhone; CPU iPhone OS 16_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.6 Mobile/15E148 Safari/604.1",Qu={},B_={},bde="alist:";function _M(t){let e=t.lastIndexOf(".");return e<0?!1:K3r.has(t.slice(e).toLowerCase())}function X0t(t){let e=t.lastIndexOf(".");return e<0?!1:V3r.has(t.slice(e).toLowerCase())}function _de(t){return!t||t<=0?"":t>1024**4?(t/1024**4).toFixed(2)+"TB":t>1024**3?(t/1024**3).toFixed(2)+"GB":t>1024**2?(t/1024**2).toFixed(2)+"MB":(t/1024).toFixed(2)+"KB"}function Tm(t,e,r=""){let n=String(r||"").trim();return n?bde+Buffer.from(JSON.stringify({serverId:n,name:t,path:e||"/"}),"utf8").toString("base64url"):`${t}||${e}`}function EM(t){let e=String(t||"");if(e.startsWith(bde))try{let n=JSON.parse(Buffer.from(e.slice(bde.length),"base64url").toString("utf8"));return{serverId:String(n?.serverId||""),name:String(n?.name||""),path:String(n?.path||"/")}}catch{return{serverId:"",name:"",path:"/"}}let r=e.indexOf("||");return r<0?{serverId:"",name:e,path:"/"}:{serverId:"",name:e.slice(0,r),path:e.slice(r+2)||"/"}}function J3r(t,e=""){let r=String(e||"").trim();if(r&&Qu[r])return Qu[r];let n=String(t||"").trim();return n&&Qu[n]?Qu[n]:Object.values(Qu).find(s=>r&&s?.id===r||n&&s?.name===n)}function Z0t(t){return String(t||"").split(",")[0].trim()}function Q0t(t){return Z0t(t).replace(/^\w+:\/\//,"").split("/")[0].trim()}function X3r(t){let e=String(t?.server?.address?.()?.url||"").trim(),n=Q0t(t?.headers?.["x-forwarded-host"])||Q0t(t?.headers?.host);if(!n)return e;let s=Z0t(t?.headers?.["x-forwarded-proto"]),i=e.startsWith("https://")?"https":"http";return`${s||String(t?.protocol||"").trim()||i}://${n}`}function Z3r(t,e,r=""){return Buffer.from(JSON.stringify({serverId:r,name:t,path:e}),"utf8").toString("base64url")}function eDr(t){let e=JSON.parse(Buffer.from(String(t||""),"base64url").toString("utf8"));return{serverId:String(e?.serverId||""),name:String(e?.name||""),path:String(e?.path||"/")}}function tDr(t){return String(t||"").toLowerCase().includes("115")}function rDr(t){let e=String(t?.provider||""),r=String(t?.raw_url||"");return Y3r.has(e)||tDr(e)||r.includes("115cdn.net")}function nDr(t){return String(t||"/").replace(/^\/?/,"/").split("/").map((r,n)=>n===0?"":encodeURIComponent(r)).join("/")}function sDr(t,e,r){let n=new URL("/d"+nDr(e),t.server);return r&&n.searchParams.set("sign",r),n.toString()}function H0t(t,e,r,n=""){let s=r.split("/").filter(Boolean).pop()||"video.bin",i=String(t?.server?.prefix||"").replace(/\/$/,"");return`${X3r(t)}${i}/proxy/${Z3r(e,r,n)}/${encodeURIComponent(s)}`}function iDr(t){let e={};for(let r of["range","if-range","if-none-match","if-modified-since"])t.headers?.[r]&&(e[r]=t.headers[r]);return e}function aDr(t,e,r){return{...iDr(r),...D_(t,e),"User-Agent":J0t,Referer:"https://www.alipan.com/"}}function oDr(){return{"User-Agent":J0t,Referer:"https://www.alipan.com/"}}function emt(t){return t.id||t.server||t.name}async function xM(t,e=!1){let r=emt(t);if(!e){if(B_[r])return B_[r];if(t.token)return t.token}let n=await AM({...t,token:e?"":t.token});return n&&(B_[r]=n),n}async function vM(t,e,r={},n=!0){let s=await xM(t),i=D_(t,s),a=await fe.post(t.server+e,r,{headers:i,timeout:15e3}).catch(c=>c.response||{status:500,data:{}}),o=a.data||{};if(n&&Ade(a,o)&&t.username){let c=emt(t);delete B_[c];let u=await xM(t,!0),d=(await fe.post(t.server+e,r,{headers:D_(t,u),timeout:15e3}).catch(f=>f.response||{status:500,data:{}})).data||{};if(d.code!==200)throw new Error(d.message||"Alist API error");return d.data}if(o.code!==200)throw new Error(o.message||"Alist API error");return o.data}async function tmt(t,e,r=1){return vM(t,"/api/fs/list",{path:e,page:r,per_page:0,refresh:!1})}async function bM(t,e){return vM(t,"/api/fs/get",{path:e})}async function cDr(t,e,r,n={}){return fe.request({url:t,method:r,headers:e,responseType:r==="HEAD"?"text":"stream",timeout:3e4,maxRedirects:n.maxRedirects??5,validateStatus:()=>!0})}async function rmt(t,e,r,n,s){let i=sDr(t,e,r),a=await cDr(i,aDr(t,n,s),"GET",{maxRedirects:0});a.data?.destroy&&a.data.destroy();let o=a.headers?.location;return a.status>=300&&a.status<400&&o?new URL(o,i).toString():""}async function uDr(t,e){await gR(t.server);let r;try{r=eDr(t.params?.id)}catch{return e.code(400),"bad proxy id"}let n=await SM(t.server,r);if(!n)return e.code(404),"drive not found";try{let s=await bM(n,r.path);if(!s?.raw_url)return e.code(404),"raw_url empty";if(s.sign){let i=await xM(n),a=await rmt(n,r.path,s.sign,i,t);if(a)return e.redirect(302,a),""}return s.raw_url?(e.redirect(302,s.raw_url),""):(e.code(502),"proxy failed")}catch(s){return console.error("[alist-video] proxy failed:",s.message),e.code(502),s.message}}async function lDr(t,e,r="/"){return vM(t,"/api/fs/search",{parent:r,keywords:e,scope:0,page:1,per_page:100})}function dDr(t){let e=t.replace(/^\//,"").split("/");return e.length>1?"/"+e.slice(1).join("/"):"/"}function fDr(t={},e="Alist"){let r=String(t.name||"").trim();if(r)return r;try{return new URL(t.server).hostname||e}catch{return e}}function nmt(t={}){let e=String(t.server||"").replace(/\/$/,"");if(!e)return null;let r=fDr({...t,server:e});return{id:String(t.id||"").trim(),name:r,server:e,username:t.username||"",password:t.password||"",token:t.token||"",otpCode:t.otpCode||""}}function smt(t){if(!t)return null;let e=t.id||t.name;return e?(Qu[e]=t,t):null}async function Ede(t){let e=await hR(t);for(let r of Object.keys(Qu))delete Qu[r];for(let r of Object.keys(B_))delete B_[r];for(let r of e)smt(nmt(r));return e}async function gR(t){Object.keys(Qu).length===0&&await Ede(t)}async function yR(t,e){let r=String(e||"").trim();if(!r)return null;let n=await hR(t),s=nmt(n.find(i=>i?.id===r));return smt(s)}async function SM(t,e={}){let r=J3r(e.name,e.serverId);return r||(e.serverId?yR(t,e.serverId):null)}async function pDr(t,e){return await Ede(t.server),{}}async function mDr(t,e){if((await Ede(t.server)).length===0)return{class:[],filters:{}};let n=[];for(let s of Object.values(Qu))n.push({type_id:Tm(s.name,"/",s.id),type_name:s.name});return{class:n,filters:{}}}async function hDr(t,e){let r=await yR(t.server,t.params?.serverId);return r?{class:[{type_id:Tm(r.name,"/",r.id),type_name:r.name}],filters:{}}:{class:[],filters:{}}}async function imt(t,e){await gR(t.server);let r=t.body.id,n=Math.max(1,parseInt(t.body.page||1,10)),{serverId:s,name:i,path:a}=EM(r),o=await SM(t.server,{name:i,serverId:s});if(!o)return{page:n,pagecount:n,list:[]};let c=o.id||s;try{let u=await tmt(o,a,n),l=u.content||[],d=[];for(let h of l){let y=a.replace(/\/?$/,"/")+h.name;if(h.is_dir){let g=Tm(o.name,y,c);d.push({vod_id:g,vod_name:h.name,vod_pic:h.thumb||V0t,vod_remarks:"",vod_tag:"folder",cate:{id:g,name:h.name}})}else _M(h.name)&&d.push({vod_id:Tm(o.name,y,c),vod_name:h.name,vod_pic:h.thumb||Y0t,vod_remarks:_de(h.size),vod_tag:"file"})}let f=u.total||d.length,p=u.per_page||f,m=p>0?Math.ceil(f/p):1;return{page:n,pagecount:m,list:d}}catch(u){return console.error("[alist-video] category failed:",u.message),{page:n,pagecount:n,list:[]}}}async function gDr(t,e){let r=String(t.params?.serverId||"").trim(),n=await yR(t.server,r);if(!n){let a=Math.max(1,parseInt(t.body?.page||1,10));return{page:a,pagecount:a,list:[]}}let s=String(t.body?.id||"").trim(),i=s?EM(s):{path:"/"};return t.body={...t.body||{},id:Tm(n.name,i.path||"/",n.id)},imt(t,e)}async function G0t(t,e,r=3,n=0){if(n>=r)return[];try{let i=(await vM(t,"/api/fs/list",{path:e,page:1,per_page:500,refresh:!1})).content||[],a=[],o=[],c=[];for(let u of i){let l=e.replace(/\/?$/,"/")+u.name;u.is_dir?c.push({name:u.name,path:l}):_M(u.name)?a.push({name:u.name,path:l,size:u.size}):X0t(u.name)&&o.push({name:u.name,path:l})}return{videos:a,subtitles:o,subfolders:c}}catch{return{videos:[],subtitles:[],subfolders:[]}}}async function z0t(t,e){await gR(t.server);let r=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],n=[];for(let s of r){if(!s)continue;let{serverId:i,name:a,path:o}=EM(s),c=await SM(t.server,{name:a,serverId:i});if(!c)continue;let u=c.id||i;try{let l=await bM(c,o),d=l.is_dir;if(!d&&_M(l.name)){n.push({vod_id:s,vod_name:l.name,vod_pic:l.thumb||"",vod_content:`\u5927\u5C0F: ${_de(l.size)}`,vod_play_from:"Alist",vod_play_url:`${l.name}$${s}`});continue}if(d){let f=await G0t(c,o),p=[],m=[];f.videos.length>0&&(p.push("\u5F53\u524D\u76EE\u5F55"),m.push(f.videos.map(h=>`${h.name}$${Tm(c.name,h.path,u)}`).join("#")));for(let h of f.subfolders){let y=await G0t(c,h.path);y.videos.length>0&&(p.push(h.name),m.push(y.videos.map(g=>`${g.name}$${Tm(c.name,g.path,u)}`).join("#")))}p.length===0?n.push({vod_id:s,vod_name:l.name||o.split("/").filter(Boolean).pop()||"Alist",vod_pic:l.thumb||"",vod_content:"\u8BE5\u76EE\u5F55\u4E0B\u6CA1\u6709\u89C6\u9891\u6587\u4EF6",vod_play_from:"",vod_play_url:""}):n.push({vod_id:s,vod_name:l.name||o.split("/").filter(Boolean).pop()||"Alist",vod_pic:l.thumb||"",vod_content:`\u5171 ${p.reduce((h,y,g)=>h+m[g].split("#").length,0)} \u4E2A\u89C6\u9891`,vod_play_from:p.join("$$$"),vod_play_url:m.join("$$$")})}}catch(l){console.error("[alist-video] detail failed:",s,l.message)}}return{list:n}}async function K0t(t,e){await gR(t.server);let r=t.body?.id||"",{serverId:n,name:s,path:i}=EM(r),a=await SM(t.server,{name:s,serverId:n});if(!a)return{parse:0,url:"",header:{}};let o=a.id||n;try{let c=await bM(a,i),u=c.raw_url;if(!u)return{parse:0,url:"",header:{}};let l={parse:0,url:u,header:{}};if(c.provider==="AliyundriveOpen"||c.provider==="AliyundriveShare2Open")l.header={"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",Referer:"https://www.alipan.com/"};else if(rDr(c))if(l.header=oDr(),c.sign){let m=await xM(a),h=await rmt(a,i,c.sign,m,t);h?l.url=h:l.url=H0t(t,a.name,i,o)}else l.url=H0t(t,a.name,i,o);let d=i.substring(0,i.lastIndexOf("/")+1),f=i.substring(i.lastIndexOf("/")+1),p=f.substring(0,f.lastIndexOf("."));try{let h=((await tmt(a,d)).content||[]).filter(y=>X0t(y.name)&&y.name.includes(p)).slice(0,3);if(h.length>0){let y=[];for(let g of h)try{let b=await bM(a,d+g.name);b.raw_url&&y.push(b.raw_url)}catch{}y.length>0&&(l.subt=y[0])}}catch{}return l}catch(c){return console.error("[alist-video] play failed:",c.message),{parse:0,url:"",header:{}}}}async function amt(t,e){let r=(t.body?.wd||"").trim(),n=Math.max(1,parseInt(t.body?.page||1,10));if(!r)return{page:n,pagecount:n,list:[]};let s=[];for(let i of e)try{let o=(await lDr(i,r)).content||[];for(let c of o)if(c.is_dir||_M(c.name)){let l=dDr(String(c.parent||"/")).replace(/\/?$/,"/")+c.name,d=Tm(i.name,l,i.id);s.push({vod_id:d,vod_name:c.name,vod_pic:c.thumb||(c.is_dir?V0t:Y0t),vod_remarks:c.is_dir?"":_de(c.size),...c.is_dir?{cate:{id:d,name:c.name}}:{}})}}catch{}return{page:n,pagecount:n,list:s}}async function yDr(t,e){return await gR(t.server),amt(t,Object.values(Qu))}async function ADr(t,e){return await yR(t.server,t.params?.serverId),{}}async function xDr(t,e){let r=await yR(t.server,t.params?.serverId);return amt(t,r?[r]:[])}var omt={meta:{key:"alist-video",name:"Alist",type:3,hidden:!0},api:async t=>{t.post("/init",pDr),t.post("/home",mDr),t.post("/category",imt),t.post("/detail",z0t),t.post("/search",yDr),t.post("/play",K0t),t.get("/proxy/:id/:file",uDr),t.post("/server/:serverId/init",ADr),t.post("/server/:serverId/home",hDr),t.post("/server/:serverId/category",gDr),t.post("/server/:serverId/detail",z0t),t.post("/server/:serverId/search",xDr),t.post("/server/:serverId/play",K0t)}};var AR=async t=>(await t.db.getObjectDefault("/sites",{}))?.list||t.config.sites.list,bDr=async(t,e)=>{await t.db.push("/sites/list",e)},_Dr=async t=>{await t.db.delete("/sites/list")};async function vde(t){t.get("/list",async(e,r)=>{r.send({code:0,data:await AR(e.server)})}),t.put("/list",async(e,r)=>{await bDr(e.server,e.body.list),r.send({code:0})}),t.delete("/list",async(e,r)=>{await _Dr(e.server),r.send({code:0})})}var cmt="\u5185\u7F6E\u5F39\u5E55",EDr=9321;function dmt(t){return String(t||"").split(",")[0].trim()}function umt(t){return dmt(t).replace(/^\w+:\/\//,"").split("/")[0].trim()}function lmt(t){let e=String(t||"").trim().toLowerCase().split(":")[0];return e==="localhost"||e==="127.0.0.1"||e==="0.0.0.0"||e==="::1"}function vDr(t,e=null){let r=String(t?.address?.()?.url||"").trim(),s=umt(e?.headers?.["x-forwarded-host"])||umt(e?.headers?.host),i=dmt(e?.headers?.["x-forwarded-proto"]),a=r.startsWith("https://")?"https":"http",o=i||String(e?.protocol||"").trim()||a;if(s&&!lmt(s))return`${o}://${s}`;let c=String(Z0()||"").trim(),u=Number.parseInt(String(t?.address?.()?.port||""),10);return c&&!lmt(c)?Number.isFinite(u)&&u>0?`${o}://${c}:${u}`:`${o}://${c}`:r}function fmt(t,e,r=null){if(!e||typeof e!="object"||!Array.isArray(e.urls))return e;let n=vDr(t,r),s=cce(n,EDr),i=e.urls.map(a=>{if(!a||typeof a!="object")return a;let o=String(a.name||"").trim();return a.builtin===!0||o===cmt?{...a,builtin:!0,name:o||cmt,address:s}:a});return{...e,urls:i}}var IM=async(t,e=null)=>{let n=await t.db.getObjectDefault("/danmu")||t.config.danmu;return fmt(t,n,e)},SDr=async(t,e,r=null)=>{await t.db.push("/danmu",fmt(t,e,r))},IDr=async t=>{await t.db.delete("/danmu")},CDr=3,Sde=(t,e=CDr)=>{messageToDart({action:"toast",opt:{message:t,duration:e}})},TDr=t=>{try{let e=new URL(t);return e.searchParams.set("format","json"),e.toString()}catch{return null}},wDr=t=>Array.isArray(t?.comments)?t.comments.length:Array.isArray(t)?t.length:0;async function Ide(t){t.get("/setting",async(e,r)=>{r.send({code:0,data:await IM(e.server,e)})}),t.put("/setting",async(e,r)=>{await SDr(e.server,e.body,e),r.send({code:0})}),t.delete("/setting",async(e,r)=>{await IDr(e.server),r.send({code:0})}),t.post("/push",async(e,r)=>{let n=e.body||{},s=n.url,i=n.sourceName||"\u5F39\u5E55\u6E90",a=n.previewUrl||TDr(s);if(!s){r.code(400).send({code:1,message:"Missing push url"});return}a&&(async()=>{try{let o=await he.get(a,{timeout:1e4}),c=wDr(o.data);c>0?Sde(`\u901A\u8FC7 ${i} - \u89E3\u6790\u5230 ${c} \u6761\u5F39\u5E55`):Sde("\u6CA1\u6709\u627E\u5230\u5F39\u5E55\u5466~")}catch(o){console.error("Manual danmu preview failed:",o),Sde("\u6CA1\u6709\u627E\u5230\u5F39\u5E55\u5466~")}})(),messageToDart({action:"danmuPush",opt:{url:s}}),r.send({code:0})}),t.get("/fe",(e,r)=>{r.type("text/html").send(` <!DOCTYPE html> <html> <head> @@ -10050,7 +10066,7 @@ t5lYKfpe8k83ZA== <script>${globalThis.danmuBundle}</script> </body> </html> - `)})}var Blt=Re(Jn(),1),Mlt=Re(Cv(),1),sue=Re(nC(),1);var Lce=["\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"],NIr=["\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","\u7B2C\u4E00\u5B63","\u7B2C\u4E8C\u5B63","\u7B2C\u4E09\u5B63","\u7B2C\u56DB\u5B63","\u7B2C\u4E94\u5B63","\u7B2C\u516D\u5B63","\u7B2C\u4E03\u5B63","\u7B2C\u516B\u5B63","\u7B2C\u4E5D\u5B63","\u7B2C\u5341\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"],OIr=[...Lce,...NIr],dlt=new RegExp(OIr.join("|"),"ig"),PIr=new RegExp(Lce.join("|"),"ig");function sA(t){if(!t||!t.trim())return"";let e=t.trim();e=e.replace(/丨/g,""),e=e.replace(/-/g," "),e=e.replace(PIr,""),e=e.replace(/\s+/g," ").trim();let r=e.match(/^[\u4e00-\u9fa5]+\d+(?=:|\s|$)/);if(r)return r[0];let n=e.match(/^[\u4e00-\u9fa5]+[\u4e00-\u9fa50-9]+\s*(?=\(\d{4}\))/);if(n)return n[0];let s=e.match(/^[\u4e00-\u9fa5]+[\u4e00-\u9fa5 ,.,。、]+\s*(?=\(|【|\s+\d{4})/),i=s?s[0].trim():"",a=!1,o=e.match(/《(.+?)》/);if(o)e=o[1],a=!0;else{let l=new RegExp(`\u3010((?!${Lce.join("|")})[\u4E00-\u9FA5]{2,}[^/]+?)\u3011`,"i"),d=e.match(l);d&&(e=d[1],a=!0)}!a&&i&&(e=i);let c=[[/.*-/g,""],[/\b\d{4}\b/g,""],[/(?<!^)\[.*?\]|\{.*?\}|(.*?)|「.*?」/g," "],[/\b\d+(\.\d+)?[GMK]B?\b/gi,""],[dlt,""],[/豆瓣\d+(\.\d+)?/g,""],[/\b\d+(?=fps|帧)/g,""],[/\b[a-zA-Z]\b/g,""],[/(?<![\u4e00-\u9fa5])\b\d+\b(?![\u4e00-\u9fa5])/g,""],[/[^a-zA-Z0-9\u4e00-\u9fa5 ]/g,""],[/\s+/g," "]];for(let l of c)e=e.replace(l[0],l[1]);e=e.trim(),e.includes(" ")&&(e=e.substring(0,e.indexOf(" "))),!a&&i&&(e=e.replace(/\s/g,""));let u=t.match(/([\u4e00-\u9fa5]{2,})\s*$/);if(u){let l=u[1];(e.length<2||/\d+集/.test(e))&&(e=l)}if(!e){let l=t.match(/\[(.*?)\]/);l&&(e=l[1].trim(),e=e.replace(dlt,"").replace(/\d+/g,"").replace(/\s+/g," ").trim())}return e.trim()}function Bce(t){if(!t)return"";let e=t.match(/(?:^|[^a-zA-Z0-9])(S|Season)\s*(\d+)/i);if(e&&(e[1].toLowerCase()==="s"||e[1].toLowerCase()==="season"))return e[2].padStart(2,"0");let r=t.match(/第\s*([一二三四五六七八九十百千万亿\d]+)\s*å­£/);return r?Jf(r[1]).padStart(2,"0"):""}var flt={\u96F6:0,\u4E00:1,\u4E8C:2,\u4E09:3,\u56DB:4,\u4E94:5,\u516D:6,\u4E03:7,\u516B:8,\u4E5D:9},plt={\u5341:10,\u767E:100,\u5343:1e3,\u4E07:1e4,\u4EBF:1e8};function mlt(t){if(!t)return-1;let e=0,r=0,n=0,s=!1;for(let i=0;i<t.length;i++){let a=t[i];if(flt.hasOwnProperty(a))n=flt[a];else if(plt.hasOwnProperty(a)){let o=plt[a];o===10?(n===0&&(n=1),r+=n*o,n=0):o===1e4||o===1e8?(r+=n,e+=r*o,r=0,n=0,s=!0):(r+=(n||1)*o,n=0)}else return-1}return s||(e+=r),e+=n,t.startsWith("\u5341")&&e<20&&(e=10+e%10),e}function Jf(t){return t&&t.replace(/([零一二三四五六七八九十百千万亿]+)|(\d+)/g,(e,r,n)=>{if(r){let s=mlt(r);return s!==-1?String(s):e}else if(n)return String(parseInt(n,10));return e})}function DIr(t){let e=t;return e=e.replace(/[(()[\]【】{}]\s*([上中下])\s*[)()[\]【】{}]/g,"$1"),e=e.replace(/(\[|\{|\(|【).*?(\]|\}|)|】)/g," "),e=e.replace(/\d+\s*(fps|帧|frames?|hz|赫兹)/gi," "),e=e.replace(/\b(\d+(p|k|i)|4k|8k|uhd|hd|fhd|qhd|2160p|1440p|1080p|720p|480p|360p)\b/gi," "),e=e.replace(/\b(19|20)\d{2}\b/g," "),e=e.replace(/\b(?:dts|ddp|aac|ac3|eac3|truehd|atmos)\d+(?:\.\d+)?\b|\b\d+\.\d+\b/gi," "),e=e.replace(/\b(8bit|10bit|12bit)\b/gi," "),e=e.replace(/\b(hdr|hdr10|hdr10\+|dolby vision|dv|hlg)\b/gi," "),e=e.replace(/\b(x264|x265|h\.264|h\.265|h264|h265|hevc|mpeg4|av1|vp9)\b/gi," "),e=e.replace(/\b(web-dl|bluray|bdrip|hdrip|dvdrip|brrip|hdtv|dvdr|cam|ts|tc|r5|scr)\b/gi," "),e=e.replace(/\b(hq|sd|hd|fhd|uhd|imax|superbit|remux|extended|uncut|directors cut|dc|special edition|se)\b/gi," "),e=e.replace(/\b(é«˜ç |é«˜ç çŽ‡|é«˜ç ç‰ˆ|超清|高清|æ ‡æ¸…|æ— æ°´å°|完整版|æœªåˆ å‡|åŠ é•¿ç‰ˆ|导演剪辑版|特效字幕|内嵌字幕|双语字幕|中文字幕|英文字幕|繁体字幕|简体字幕|多音轨|杜比音效|全景声|hdr)\b/gi," "),e=e.replace(/[\-\_.,()]+/g," "),e.replace(/\s+/g," ").trim()}function kIr(t){let e=t.replace(/(\[|\{|\(|【).*?(\]|\}|)|】)/g," ");if(/s\d+e\d+/i.test(e))return"-1";let r=e.match(/[\u4e00-\u9fa5\-\_\.\s]+(0*\d{1,8})(?:[\-\_\.\s]|$)/);if(r){let n=r[1],s=parseInt(n,10);if(s>0&&!(s>=1900&&s<=2100))return Jf(n)}if(r=e.trim().match(/^0*\d{1,8}$/),r){let n=r[0],s=parseInt(n,10);if(s>0&&!(s>=1900&&s<=2100))return Jf(n)}return"-1"}function LIr(t){let e="\u671F|\u5B63",r="\u4E0A\u4E2D\u4E0B",n="\u96C6\u8A71\u8BDD",s=new RegExp(`(\u7B2C?)(0*(d{1,8}|[\u96F6\u4E00\u4E8C\u4E09\u56DB\u4E94\u516D\u4E03\u516B\u4E5D\u5341\u767E\u5343\u4E07\u4EBF]+))((?:${e})[${r}]?[\uFF08(]?[${r}]?[)\uFF09]?)`),i=t.match(s);if(i){let o=i[1],c=i[2],u=i[4].replace(/[(())]/g,"");return c=Jf(c),o+c+u}let a=Array.from(t.matchAll(/(?:s\d+.*?e|e)(\d{1,8})(?!\d)/gi));if(a.length>0)return Jf(a[a.length-1][1]);if(s=new RegExp(`\u7B2C([\u96F6\u4E00\u4E8C\u4E09\u56DB\u4E94\u516D\u4E03\u516B\u4E5D\u5341\u767E\u5343\u4E07\u4EBF]+)[${n}]`),i=t.match(s),i){let o=mlt(i[1]);return o>0?String(o):"-1"}return s=new RegExp(`\u7B2C(d{1,8})[${n}]`),i=t.match(s),i||(i=t.match(/ep(\d{1,8})/i),i)||(s=new RegExp(`(d{1,8})[${n}]`),i=t.match(s),i)?Jf(i[1]):"-1"}function BIr(t){let e="a-zA-Z\xC0-\u017F",r=new RegExp(`(?<![${e}d])0*(\\d{1,8})(?![${e}d])`,"gu"),n=t.match(r);if(n)for(let s of n){let i=parseInt(s,10);if(!(i>=1900&&i<=2100))return Jf(s)}return"-1"}function Yw(t){if(!t)return"-1";let e=t,r=e.lastIndexOf(".");r>0&&(e=e.substring(0,r));let n=DIr(e),s=LIr(n);if(s!=="-1")return s;let i=kIr(e);return i!=="-1"?i:BIr(n)}var Mce=async t=>(await t.db.getObjectDefault("/t4",{}))?.list||t.config.t4?.list||[],MIr=async(t,e)=>{await t.db.push("/t4/list",e)},WIr=async t=>{await t.db.delete("/t4/list")};async function Wce(t){t.get("/list",async(e,r)=>{r.send({code:0,data:await Mce(e.server)})}),t.put("/list",async(e,r)=>{await MIr(e.server,e.body),r.send({code:0})}),t.delete("/list",async(e,r)=>{await WIr(e.server),r.send({code:0})})}function $ce(t,e){let r=Ae.create({baseURL:e});function n(){return{}}async function s(){try{let{data:u}=await r.get("",{params:{filter:!0}});return u}catch(u){return console.warn(u),{class:[]}}}async function i(u){try{let{data:l}=await r.get("",{params:{ac:"detail",t:u.body.id,pg:u.body.page||1}});return l}catch(l){console.warn(l)}}async function a(u){try{let{data:l}=await r.get("",{params:{ac:"detail",ids:u.body.id}});return l}catch(l){console.warn(l)}}async function o(u){try{let{data:l}=await r.get("",{params:{play:u.body.id,flag:u.body.flag}});return!l.url&&!l.urls&&u.body.id.startsWith("http")?{url:u.body.id}:l}catch(l){console.warn(l)}}async function c(u){try{let{data:l}=await r.get("",{params:{ac:"list",wd:u.body.wd}});return l}catch(l){console.warn(l)}}return{meta:{key:t,name:t,type:3,t4:!0},api:async u=>{u.post("/init",n),u.post("/home",s),u.post("/category",i),u.post("/detail",a),u.post("/play",o),u.post("/search",c)}}}var $Ir=["/api.php/provide/vod/","/api.php/provide/vod","/api.php/app/","/api.php/app"],vM="\u300C\u91C7\u300D",FIr=[{name:`${vM}\u7535\u5F71\u5929\u5802`,address:"http://dyttzyw.com/api.php/provide/vod/"}];function Uce(t,e="https"){let r=String(t||"").trim();return r?/^https?:\/\//i.test(r)?r:`${e}://${r}`:""}function qce(t){try{return new URL(t)}catch{return null}}function UIr(t=""){let e=String(t||"").toLowerCase();return e==="localhost"||e.includes(".")||e.includes(":")||/^\d{1,3}(?:\.\d{1,3}){3}$/.test(e)}function qIr(t){for(let e of["ac","wd","t","pg","ids","quick"])t.searchParams.delete(e);return t.hash="",t}function glt(t){let e=String(t||"").trim(),r=/^https?:\/\//i.test(e),n=qce(Uce(e));return!n||!["http:","https:"].includes(n.protocol)||!r&&!UIr(n.hostname)?"":(qIr(n),n.toString())}function jIr(t={},e=""){let r=String(t.name||t.title||e||"").trim();return r||qce(Uce(t.address||t.api||t.url||""))?.hostname||"CMS"}function HIr(t){let e=String(t||"").trim();return e?e.startsWith(vM)?e:`${vM}${e}`:`${vM}CMS`}function jce(t,e=""){if(!t||typeof t!="object")return null;let r=String(t.address||t.api||t.url||"").trim(),n=glt(r);return n?{name:HIr(jIr({...t,address:n},e)),address:n}:null}function Alt(t){if(typeof t=="string")try{return Alt(JSON.parse(t))}catch{return[]}return Array.isArray(t)?t:!t||typeof t!="object"?[]:Array.isArray(t.sites)?t.sites:Array.isArray(t.list)?t.list:t.api_site&&typeof t.api_site=="object"?Object.entries(t.api_site).map(([e,r])=>({...r,key:e})):[]}function QIr(t){let e=new Set;return Alt(t).map(r=>jce(r,r?.key)).filter(r=>!r||e.has(r.address)?!1:(e.add(r.address),!0))}function GIr(t){let e=String(t||"").trim(),r=[],n=s=>{let i=glt(s);i&&!r.includes(i)&&r.push(i)};for(let s of["https","http"]){let i=qce(Uce(e,s));if(!i)continue;if(n(i.toString()),!i.pathname||i.pathname==="/")for(let o of $Ir)n(`${i.origin}${o}`)}return r}async function hlt(t,e=void 0){let r=await he.get(t,{params:e,timeout:1e4,validateStatus:n=>n>=200&&n<400});if(typeof r.data=="string")try{return JSON.parse(r.data)}catch{return r.data}return r.data}function VIr(t){return!!t&&typeof t=="object"&&Array.isArray(t.class)}async function zIr(t,e=""){let r=String(t||"").trim();if(!r)throw new Error("\u8BF7\u8F93\u5165 CMS \u5730\u5740");let n=GIr(r);for(let s of n)try{let i=await hlt(s),a=QIr(i);if(a.length>0)return{type:"config",sources:a}}catch{}for(let s of n)try{let i=await hlt(s,{ac:"class"});if(VIr(i))return{type:"cms",sources:[jce({name:e,address:s})].filter(Boolean)}}catch{}throw new Error("\u672A\u8BC6\u522B\u5230\u53EF\u7528\u7684 CMS \u6E90")}function Fce(t=[]){let e=new Set;return(Array.isArray(t)?t:[]).map(r=>jce(r)).filter(r=>!r||e.has(r.address)?!1:(e.add(r.address),!0))}var Hce=async t=>{let e=await t.db.getObjectDefault("/cms",{});if(e&&Object.prototype.hasOwnProperty.call(e,"list"))return Fce(e.list);let r=Array.isArray(t.config.cms?.list)?t.config.cms.list:[];return Fce(r.length>0?r:FIr)},KIr=async(t,e)=>{await t.db.push("/cms/list",Fce(e))},YIr=async t=>{await t.db.delete("/cms/list")};async function Qce(t){t.get("/list",async(e,r)=>{r.send({code:0,data:await Hce(e.server)})}),t.put("/list",async(e,r)=>{await KIr(e.server,e.body),r.send({code:0})}),t.post("/resolve",async(e,r)=>{try{r.send({code:0,data:await zIr(e.body?.url,e.body?.name)})}catch(n){r.send({code:-1,message:n.message||"CMS \u89E3\u6790\u5931\u8D25"})}}),t.delete("/list",async(e,r)=>{await YIr(e.server),r.send({code:0})})}var JIr=/\.(m3u8|mp4|mkv|flv|avi|webm|mov)(?:[?#]|$)/i,Gce="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0 Safari/537.36";function XIr(t=""){return/^https?:\/\//i.test(String(t||"").trim())}function ZIr(t=""){return JIr.test(String(t||"").trim())}function eTr(t="",e=""){try{return new URL(String(t||"").trim(),e).toString()}catch{return String(t||"").trim()}}function tTr(t=""){let e=[/["']([^"']+\.m3u8(?:\?[^"']*)?)["']/i,/(https?:\/\/[^\s"'<>]+\.m3u8(?:\?[^\s"'<>]*)?)/i];for(let r of e){let n=r.exec(String(t||""));if(n?.[1])return n[1].replace(/\\\//g,"/")}return""}function Vce(t,e){let r=he.create({baseURL:e});function n(){return{}}async function s(){try{let{data:u}=await r.get("",{params:{ac:"class"}});return u}catch(u){return console.warn(u),{class:[]}}}async function i(u){try{let{data:l}=await r.get("",{params:{ac:"detail",t:u.body.id,pg:u.body.page||1}});return l}catch(l){console.warn(l)}}async function a(u){try{let{data:l}=await r.get("",{params:{ac:"detail",ids:u.body.id}});return l}catch(l){console.warn(l)}}async function o(u){let l=String(u.body.id||"").trim();if(!l)return{url:""};if(!XIr(l)||ZIr(l))return{parse:0,url:l};try{let{data:d}=await he.get(l,{timeout:1e4,headers:{"User-Agent":Gce,Referer:l}}),f=tTr(d);if(f)return{parse:0,url:eTr(f,l),header:{Referer:l,"User-Agent":Gce}}}catch(d){console.warn(d)}return{parse:1,url:l,header:{Referer:l,"User-Agent":Gce}}}async function c(u){try{let{data:l}=await r.get("",{params:{ac:"list",wd:u.body.wd}});return l}catch(l){console.warn(l)}}return{meta:{key:t,name:t,type:3,cms:!0},api:async u=>{u.post("/init",n),u.post("/home",s),u.post("/category",i),u.post("/detail",a),u.post("/play",o),u.post("/search",c)}}}var iA={HOME:0,CATEGORY:0,SEARCH:0,DETAIL:12e4,PLAY:3e4,SPIDERS:0},zce=class{constructor(e=800){this.max=Math.max(100,Number(e)||800),this.data=new Map,this.pending=new Map}get(e){if(!this.data.has(e))return;let r=this.data.get(e);if(r.expireAt>0&&r.expireAt<=Date.now()){this.data.delete(e);return}return this.data.delete(e),this.data.set(e,r),r.value}set(e,r,n=0){let s=n>0?Date.now()+n:0;return this.data.has(e)&&this.data.delete(e),this.data.set(e,{value:r,expireAt:s}),this.compact(),r}delete(e){this.pending.delete(e),this.data.delete(e)}clear(){this.pending.clear(),this.data.clear()}compact(){for(;this.data.size>this.max;){let e=this.data.keys().next().value;this.data.delete(e)}}async wrap(e,r,n){let s=this.get(e);if(s!==void 0)return s;if(this.pending.has(e))return this.pending.get(e);let i=(async()=>{try{let a=await n();return a!==void 0&&this.set(e,a,r),a}finally{this.pending.delete(e)}})();return this.pending.set(e,i),i}};function CM(t={}){return new zce(t.max||800)}async function Xf(t,e,r,n){return!t||typeof t.wrap!="function"||Number(r)<=0?n():t.wrap(e,r,n)}function im(t=[]){return t.map(e=>String(e)).join(":")}function rTr(t){let e=String(t||"").trim().replace(/\/+$/,""),r=e.match(/^\/spider\/([^/]+)\/(\d+)(?:\/.*)?$/);return r?{apiBase:e,spiderKey:decodeURIComponent(r[1]),spiderType:Number(r[2])}:null}function Kce(t){return String(t||"").split(",")[0].trim()}function IM(t=null){let r=Kce(t?.headers?.["x-forwarded-host"])||Kce(t?.headers?.host);if(!r)return{headers:void 0,cacheVary:"-"};let s=Kce(t?.headers?.["x-forwarded-proto"])||String(t?.protocol||"http").trim()||"http";return{headers:{host:r,"x-forwarded-host":r,"x-forwarded-proto":s},cacheVary:`${s}://${r}`}}function nTr(t=[],e=[]){let r={};if(t.forEach(i=>{r[i.key]=i}),!Array.isArray(e)||!e.length)return t;let n={},s=[];return e.forEach(i=>{n[i.key]=!0;let a=r[i.key];if(!a||!i.enable)return;let o=typeof i.name=="string"?i.name.trim():"";s.push({...a,name:o||a.name})}),t.forEach(i=>{n[i.key]||s.push(i)}),s}async function Xl(t){let e=t.embyContext?.cache;return Xf(e,"emby:enabled-video-spiders:v2",iA.SPIDERS,async()=>{let r=await t.inject({method:"GET",url:"/full-config"});if(r.statusCode>=400)return[];let n=r.json(),s=Array.isArray(n?.video?.sites)?n.video.sites:[],i=await Kw(t).catch(()=>[]),a=nTr(s,i),o={},c=[];return a.forEach(u=>{let l=rTr(u.api);if(!l||l.spiderType!==3)return;let d=`${u.key}:${l.apiBase}`;o[d]||(o[d]=!0,c.push({siteKey:u.key,siteName:u.name||l.spiderKey,spiderKey:l.spiderKey,spiderType:l.spiderType,apiBase:l.apiBase,api:u.api}))}),c})}function aA(t=[],e,r=null,n=""){let s=r===null?null:Number(r),i=String(n||"").trim();return t.find(a=>a.spiderKey!==e?!1:s===null?!0:i&&a.apiBase!==i?!1:Number(a.spiderType)===s)||null}async function oA(t,e,r,n,s={},i={}){let a=i?.headers&&typeof i.headers=="object"?i.headers:void 0,o=String(i?.apiBase||"").trim()||`/spider/${encodeURIComponent(e)}/${r}`,c=await t.inject({method:"POST",url:`${o.replace(/\/+$/,"")}/${n}`,payload:s,headers:a});if(c.statusCode>=400)throw new Error(`Spider call failed: ${e}/${r}/${n} ${c.statusCode}`);let u=t.embyContext?.config?.requestLog;try{let l=c.json();if(u&&(n==="detail"||n==="play")){if(n==="detail"){let d=Array.isArray(l?.list)&&l.list.length>0?l.list[0]:null,f=String(d?.vod_play_from||""),p=String(d?.vod_play_url||""),m=f?f.split("$$$").filter(Boolean).length:0,h=p?p.split("$$$").map(A=>String(A||"").split("#").filter(Boolean).length):[];console.log("[Emby Spider] detail:",JSON.stringify({spiderKey:e,spiderType:r,request:{id:String(s?.id||"")},response:{listCount:Array.isArray(l?.list)?l.list.length:0,vodId:String(d?.vod_id||""),vodName:String(d?.vod_name||""),vodRemarks:String(d?.vod_remarks||""),lineCount:m,episodeCountPerLine:h.slice(0,10)}}))}else if(n==="play"){let d=l?.header&&typeof l.header=="object"?Object.keys(l.header):[];console.log("[Emby Spider] play:",JSON.stringify({spiderKey:e,spiderType:r,request:{flag:String(s?.flag||""),idPreview:String(s?.id||"").slice(0,80)},response:{parse:Number(l?.parse||0),hasUrl:!!l?.url,urlPreview:String(l?.url||"").slice(0,120),headerKeys:d}}))}}return l}catch{return{}}}async function Jw(t,e,r=null){let n=t.embyContext?.cache,s=IM(r),i=im(["emby","home",e.spiderKey,e.spiderType,e.apiBase||"",s.cacheVary]);return Xf(n,i,iA.HOME,()=>oA(t,e.spiderKey,e.spiderType,"home",{},{headers:s.headers,apiBase:e.apiBase}))}async function NE(t,e,r,n=1,s={},i=null){let a=t.embyContext?.cache,o=IM(i),c=im(["emby","category",e.spiderKey,e.spiderType,e.apiBase||"",r,n,JSON.stringify(s||{}),o.cacheVary]);return Xf(a,c,iA.CATEGORY,()=>oA(t,e.spiderKey,e.spiderType,"category",{id:r,page:n,filter:!0,filters:s||{}},{headers:o.headers,apiBase:e.apiBase}))}async function Oc(t,e,r,n=null){let s=t.embyContext?.cache,i=IM(n),a=im(["emby","detail",e.spiderKey,e.spiderType,e.apiBase||"",r,i.cacheVary]);return Xf(s,a,iA.DETAIL,()=>oA(t,e.spiderKey,e.spiderType,"detail",{id:r},{headers:i.headers,apiBase:e.apiBase}))}async function ylt(t,e,r,n=1){let s=t.embyContext?.cache,i=im(["emby","search",e.spiderKey,e.spiderType,e.apiBase||"",r,n]);return Xf(s,i,iA.SEARCH,()=>oA(t,e.spiderKey,e.spiderType,"search",{wd:r,page:n},{apiBase:e.apiBase}))}async function am(t,e,r,n,s=null){let i=t.embyContext?.cache,a=IM(s),o=im(["emby","play",e.spiderKey,e.spiderType,e.apiBase||"",r,n,a.cacheVary]);return Xf(i,o,iA.PLAY,()=>oA(t,e.spiderKey,e.spiderType,"play",{flag:r,id:n},{headers:a.headers,apiBase:e.apiBase}))}function Pc(t){return!t||!Array.isArray(t.list)||!t.list.length?null:t.list[0]}function Zl(t={}){return{spiderKey:String(t.k||t.spiderKey||""),spiderType:Number(t.t||t.spiderType||3),apiBase:String(t.a||t.apiBase||"")}}var Yce=Re(require("node:fs"),1),Xw=Re(require("node:path"),1),sTr=()=>{try{return`const appConfig = {\r + `)})}var Wmt=Ce(Xn(),1),$mt=Ce(NI(),1),Vde=Ce(oC(),1);var Cde=["\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"],RDr=["\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","\u7B2C\u4E00\u5B63","\u7B2C\u4E8C\u5B63","\u7B2C\u4E09\u5B63","\u7B2C\u56DB\u5B63","\u7B2C\u4E94\u5B63","\u7B2C\u516D\u5B63","\u7B2C\u4E03\u5B63","\u7B2C\u516B\u5B63","\u7B2C\u4E5D\u5B63","\u7B2C\u5341\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"],NDr=[...Cde,...RDr],pmt=new RegExp(NDr.join("|"),"ig"),ODr=new RegExp(Cde.join("|"),"ig");function $y(t){if(!t||!t.trim())return"";let e=t.trim();e=e.replace(/丨/g,""),e=e.replace(/-/g," "),e=e.replace(ODr,""),e=e.replace(/\s+/g," ").trim();let r=e.match(/^[\u4e00-\u9fa5]+\d+(?=:|\s|$)/);if(r)return r[0];let n=e.match(/^[\u4e00-\u9fa5]+[\u4e00-\u9fa50-9]+\s*(?=\(\d{4}\))/);if(n)return n[0];let s=e.match(/^[\u4e00-\u9fa5]+[\u4e00-\u9fa5 ,.,。、]+\s*(?=\(|【|\s+\d{4})/),i=s?s[0].trim():"",a=!1,o=e.match(/《(.+?)》/);if(o)e=o[1],a=!0;else{let l=new RegExp(`\u3010((?!${Cde.join("|")})[\u4E00-\u9FA5]{2,}[^/]+?)\u3011`,"i"),d=e.match(l);d&&(e=d[1],a=!0)}!a&&i&&(e=i);let c=[[/.*-/g,""],[/\b\d{4}\b/g,""],[/(?<!^)\[.*?\]|\{.*?\}|(.*?)|「.*?」/g," "],[/\b\d+(\.\d+)?[GMK]B?\b/gi,""],[pmt,""],[/豆瓣\d+(\.\d+)?/g,""],[/\b\d+(?=fps|帧)/g,""],[/\b[a-zA-Z]\b/g,""],[/(?<![\u4e00-\u9fa5])\b\d+\b(?![\u4e00-\u9fa5])/g,""],[/[^a-zA-Z0-9\u4e00-\u9fa5 ]/g,""],[/\s+/g," "]];for(let l of c)e=e.replace(l[0],l[1]);e=e.trim(),e.includes(" ")&&(e=e.substring(0,e.indexOf(" "))),!a&&i&&(e=e.replace(/\s/g,""));let u=t.match(/([\u4e00-\u9fa5]{2,})\s*$/);if(u){let l=u[1];(e.length<2||/\d+集/.test(e))&&(e=l)}if(!e){let l=t.match(/\[(.*?)\]/);l&&(e=l[1].trim(),e=e.replace(pmt,"").replace(/\d+/g,"").replace(/\s+/g," ").trim())}return e.trim()}function Tde(t){if(!t)return"";let e=t.match(/(?:^|[^a-zA-Z0-9])(S|Season)\s*(\d+)/i);if(e&&(e[1].toLowerCase()==="s"||e[1].toLowerCase()==="season"))return e[2].padStart(2,"0");let r=t.match(/第\s*([一二三四五六七八九十百千万亿\d]+)\s*å­£/);return r?gp(r[1]).padStart(2,"0"):""}var mmt={\u96F6:0,\u4E00:1,\u4E8C:2,\u4E09:3,\u56DB:4,\u4E94:5,\u516D:6,\u4E03:7,\u516B:8,\u4E5D:9},hmt={\u5341:10,\u767E:100,\u5343:1e3,\u4E07:1e4,\u4EBF:1e8};function gmt(t){if(!t)return-1;let e=0,r=0,n=0,s=!1;for(let i=0;i<t.length;i++){let a=t[i];if(mmt.hasOwnProperty(a))n=mmt[a];else if(hmt.hasOwnProperty(a)){let o=hmt[a];o===10?(n===0&&(n=1),r+=n*o,n=0):o===1e4||o===1e8?(r+=n,e+=r*o,r=0,n=0,s=!0):(r+=(n||1)*o,n=0)}else return-1}return s||(e+=r),e+=n,t.startsWith("\u5341")&&e<20&&(e=10+e%10),e}function gp(t){return t&&t.replace(/([零一二三四五六七八九十百千万亿]+)|(\d+)/g,(e,r,n)=>{if(r){let s=gmt(r);return s!==-1?String(s):e}else if(n)return String(parseInt(n,10));return e})}function kDr(t){let e=t;return e=e.replace(/[(()[\]【】{}]\s*([上中下])\s*[)()[\]【】{}]/g,"$1"),e=e.replace(/(\[|\{|\(|【).*?(\]|\}|)|】)/g," "),e=e.replace(/\d+\s*(fps|帧|frames?|hz|赫兹)/gi," "),e=e.replace(/\b(\d+(p|k|i)|4k|8k|uhd|hd|fhd|qhd|2160p|1440p|1080p|720p|480p|360p)\b/gi," "),e=e.replace(/\b(19|20)\d{2}\b/g," "),e=e.replace(/\b(?:dts|ddp|aac|ac3|eac3|truehd|atmos)\d+(?:\.\d+)?\b|\b\d+\.\d+\b/gi," "),e=e.replace(/\b(8bit|10bit|12bit)\b/gi," "),e=e.replace(/\b(hdr|hdr10|hdr10\+|dolby vision|dv|hlg)\b/gi," "),e=e.replace(/\b(x264|x265|h\.264|h\.265|h264|h265|hevc|mpeg4|av1|vp9)\b/gi," "),e=e.replace(/\b(web-dl|bluray|bdrip|hdrip|dvdrip|brrip|hdtv|dvdr|cam|ts|tc|r5|scr)\b/gi," "),e=e.replace(/\b(hq|sd|hd|fhd|uhd|imax|superbit|remux|extended|uncut|directors cut|dc|special edition|se)\b/gi," "),e=e.replace(/\b(é«˜ç |é«˜ç çŽ‡|é«˜ç ç‰ˆ|超清|高清|æ ‡æ¸…|æ— æ°´å°|完整版|æœªåˆ å‡|åŠ é•¿ç‰ˆ|导演剪辑版|特效字幕|内嵌字幕|双语字幕|中文字幕|英文字幕|繁体字幕|简体字幕|多音轨|杜比音效|全景声|hdr)\b/gi," "),e=e.replace(/[\-\_.,()]+/g," "),e.replace(/\s+/g," ").trim()}function PDr(t){let e=t.replace(/(\[|\{|\(|【).*?(\]|\}|)|】)/g," ");if(/s\d+e\d+/i.test(e))return"-1";let r=e.match(/[\u4e00-\u9fa5\-\_\.\s]+(0*\d{1,8})(?:[\-\_\.\s]|$)/);if(r){let n=r[1],s=parseInt(n,10);if(s>0&&!(s>=1900&&s<=2100))return gp(n)}if(r=e.trim().match(/^0*\d{1,8}$/),r){let n=r[0],s=parseInt(n,10);if(s>0&&!(s>=1900&&s<=2100))return gp(n)}return"-1"}function DDr(t){let e="\u671F|\u5B63",r="\u4E0A\u4E2D\u4E0B",n="\u96C6\u8A71\u8BDD",s=new RegExp(`(\u7B2C?)(0*(d{1,8}|[\u96F6\u4E00\u4E8C\u4E09\u56DB\u4E94\u516D\u4E03\u516B\u4E5D\u5341\u767E\u5343\u4E07\u4EBF]+))((?:${e})[${r}]?[\uFF08(]?[${r}]?[)\uFF09]?)`),i=t.match(s);if(i){let o=i[1],c=i[2],u=i[4].replace(/[(())]/g,"");return c=gp(c),o+c+u}let a=Array.from(t.matchAll(/(?:s\d+.*?e|e)(\d{1,8})(?!\d)/gi));if(a.length>0)return gp(a[a.length-1][1]);if(s=new RegExp(`\u7B2C([\u96F6\u4E00\u4E8C\u4E09\u56DB\u4E94\u516D\u4E03\u516B\u4E5D\u5341\u767E\u5343\u4E07\u4EBF]+)[${n}]`),i=t.match(s),i){let o=gmt(i[1]);return o>0?String(o):"-1"}return s=new RegExp(`\u7B2C(d{1,8})[${n}]`),i=t.match(s),i||(i=t.match(/ep(\d{1,8})/i),i)||(s=new RegExp(`(d{1,8})[${n}]`),i=t.match(s),i)?gp(i[1]):"-1"}function BDr(t){let e="a-zA-Z\xC0-\u017F",r=new RegExp(`(?<![${e}d])0*(\\d{1,8})(?![${e}d])`,"gu"),n=t.match(r);if(n)for(let s of n){let i=parseInt(s,10);if(!(i>=1900&&i<=2100))return gp(s)}return"-1"}function xR(t){if(!t)return"-1";let e=t,r=e.lastIndexOf(".");r>0&&(e=e.substring(0,r));let n=kDr(e),s=DDr(n);if(s!=="-1")return s;let i=PDr(e);return i!=="-1"?i:BDr(n)}var wde=async t=>(await t.db.getObjectDefault("/t4",{}))?.list||t.config.t4?.list||[],LDr=async(t,e)=>{await t.db.push("/t4/list",e)},MDr=async t=>{await t.db.delete("/t4/list")};async function Rde(t){t.get("/list",async(e,r)=>{r.send({code:0,data:await wde(e.server)})}),t.put("/list",async(e,r)=>{await LDr(e.server,e.body),r.send({code:0})}),t.delete("/list",async(e,r)=>{await MDr(e.server),r.send({code:0})})}function Nde(t,e){let r=he.create({baseURL:e});function n(){return{}}async function s(){try{let{data:u}=await r.get("",{params:{filter:!0}});return u}catch(u){return console.warn(u),{class:[]}}}async function i(u){try{let{data:l}=await r.get("",{params:{ac:"detail",t:u.body.id,pg:u.body.page||1}});return l}catch(l){console.warn(l)}}async function a(u){try{let{data:l}=await r.get("",{params:{ac:"detail",ids:u.body.id}});return l}catch(l){console.warn(l)}}async function o(u){try{let{data:l}=await r.get("",{params:{play:u.body.id,flag:u.body.flag}});return!l.url&&!l.urls&&u.body.id.startsWith("http")?{url:u.body.id}:l}catch(l){console.warn(l)}}async function c(u){try{let{data:l}=await r.get("",{params:{ac:"list",wd:u.body.wd}});return l}catch(l){console.warn(l)}}return{meta:{key:t,name:t,type:3,t4:!0},api:async u=>{u.post("/init",n),u.post("/home",s),u.post("/category",i),u.post("/detail",a),u.post("/play",o),u.post("/search",c)}}}var WDr=["/api.php/provide/vod/","/api.php/provide/vod","/api.php/app/","/api.php/app"],CM="\u300C\u91C7\u300D",$Dr=[{name:`${CM}\u7535\u5F71\u5929\u5802`,address:"http://dyttzyw.com/api.php/provide/vod/"}];function kde(t,e="https"){let r=String(t||"").trim();return r?/^https?:\/\//i.test(r)?r:`${e}://${r}`:""}function Pde(t){try{return new URL(t)}catch{return null}}function UDr(t=""){let e=String(t||"").toLowerCase();return e==="localhost"||e.includes(".")||e.includes(":")||/^\d{1,3}(?:\.\d{1,3}){3}$/.test(e)}function FDr(t){for(let e of["ac","wd","t","pg","ids","quick"])t.searchParams.delete(e);return t.hash="",t}function Amt(t){let e=String(t||"").trim(),r=/^https?:\/\//i.test(e),n=Pde(kde(e));return!n||!["http:","https:"].includes(n.protocol)||!r&&!UDr(n.hostname)?"":(FDr(n),n.toString())}function qDr(t={},e=""){let r=String(t.name||t.title||e||"").trim();return r||Pde(kde(t.address||t.api||t.url||""))?.hostname||"CMS"}function jDr(t){let e=String(t||"").trim();return e?e.startsWith(CM)?e:`${CM}${e}`:`${CM}CMS`}function Dde(t,e=""){if(!t||typeof t!="object")return null;let r=String(t.address||t.api||t.url||"").trim(),n=Amt(r);return n?{name:jDr(qDr({...t,address:n},e)),address:n}:null}function xmt(t){if(typeof t=="string")try{return xmt(JSON.parse(t))}catch{return[]}return Array.isArray(t)?t:!t||typeof t!="object"?[]:Array.isArray(t.sites)?t.sites:Array.isArray(t.list)?t.list:t.api_site&&typeof t.api_site=="object"?Object.entries(t.api_site).map(([e,r])=>({...r,key:e})):[]}function QDr(t){let e=new Set;return xmt(t).map(r=>Dde(r,r?.key)).filter(r=>!r||e.has(r.address)?!1:(e.add(r.address),!0))}function HDr(t){let e=String(t||"").trim(),r=[],n=s=>{let i=Amt(s);i&&!r.includes(i)&&r.push(i)};for(let s of["https","http"]){let i=Pde(kde(e,s));if(!i)continue;if(n(i.toString()),!i.pathname||i.pathname==="/")for(let o of WDr)n(`${i.origin}${o}`)}return r}async function ymt(t,e=void 0){let r=await fe.get(t,{params:e,timeout:1e4,validateStatus:n=>n>=200&&n<400});if(typeof r.data=="string")try{return JSON.parse(r.data)}catch{return r.data}return r.data}function GDr(t){return!!t&&typeof t=="object"&&Array.isArray(t.class)}async function zDr(t,e=""){let r=String(t||"").trim();if(!r)throw new Error("\u8BF7\u8F93\u5165 CMS \u5730\u5740");let n=HDr(r);for(let s of n)try{let i=await ymt(s),a=QDr(i);if(a.length>0)return{type:"config",sources:a}}catch{}for(let s of n)try{let i=await ymt(s,{ac:"class"});if(GDr(i))return{type:"cms",sources:[Dde({name:e,address:s})].filter(Boolean)}}catch{}throw new Error("\u672A\u8BC6\u522B\u5230\u53EF\u7528\u7684 CMS \u6E90")}function Ode(t=[]){let e=new Set;return(Array.isArray(t)?t:[]).map(r=>Dde(r)).filter(r=>!r||e.has(r.address)?!1:(e.add(r.address),!0))}var Bde=async t=>{let e=await t.db.getObjectDefault("/cms",{});if(e&&Object.prototype.hasOwnProperty.call(e,"list"))return Ode(e.list);let r=Array.isArray(t.config.cms?.list)?t.config.cms.list:[];return Ode(r.length>0?r:$Dr)},KDr=async(t,e)=>{await t.db.push("/cms/list",Ode(e))},VDr=async t=>{await t.db.delete("/cms/list")};async function Lde(t){t.get("/list",async(e,r)=>{r.send({code:0,data:await Bde(e.server)})}),t.put("/list",async(e,r)=>{await KDr(e.server,e.body),r.send({code:0})}),t.post("/resolve",async(e,r)=>{try{r.send({code:0,data:await zDr(e.body?.url,e.body?.name)})}catch(n){r.send({code:-1,message:n.message||"CMS \u89E3\u6790\u5931\u8D25"})}}),t.delete("/list",async(e,r)=>{await VDr(e.server),r.send({code:0})})}var YDr=/\.(m3u8|mp4|mkv|flv|avi|webm|mov)(?:[?#]|$)/i,Mde="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0 Safari/537.36";function JDr(t=""){return/^https?:\/\//i.test(String(t||"").trim())}function XDr(t=""){return YDr.test(String(t||"").trim())}function ZDr(t="",e=""){try{return new URL(String(t||"").trim(),e).toString()}catch{return String(t||"").trim()}}function e4r(t=""){let e=[/["']([^"']+\.m3u8(?:\?[^"']*)?)["']/i,/(https?:\/\/[^\s"'<>]+\.m3u8(?:\?[^\s"'<>]*)?)/i];for(let r of e){let n=r.exec(String(t||""));if(n?.[1])return n[1].replace(/\\\//g,"/")}return""}function Wde(t,e){let r=fe.create({baseURL:e});function n(){return{}}async function s(){try{let{data:u}=await r.get("",{params:{ac:"class"}});return u}catch(u){return console.warn(u),{class:[]}}}async function i(u){try{let{data:l}=await r.get("",{params:{ac:"detail",t:u.body.id,pg:u.body.page||1}});return l}catch(l){console.warn(l)}}async function a(u){try{let{data:l}=await r.get("",{params:{ac:"detail",ids:u.body.id}});return l}catch(l){console.warn(l)}}async function o(u){let l=String(u.body.id||"").trim();if(!l)return{url:""};if(!JDr(l)||XDr(l))return{parse:0,url:l};try{let{data:d}=await fe.get(l,{timeout:1e4,headers:{"User-Agent":Mde,Referer:l}}),f=e4r(d);if(f)return{parse:0,url:ZDr(f,l),header:{Referer:l,"User-Agent":Mde}}}catch(d){console.warn(d)}return{parse:1,url:l,header:{Referer:l,"User-Agent":Mde}}}async function c(u){try{let{data:l}=await r.get("",{params:{ac:"list",wd:u.body.wd}});return l}catch(l){console.warn(l)}}return{meta:{key:t,name:t,type:3,cms:!0},api:async u=>{u.post("/init",n),u.post("/home",s),u.post("/category",i),u.post("/detail",a),u.post("/play",o),u.post("/search",c)}}}var Uy={HOME:0,CATEGORY:0,SEARCH:0,DETAIL:12e4,PLAY:3e4,SPIDERS:0},$de=class{constructor(e=800){this.max=Math.max(100,Number(e)||800),this.data=new Map,this.pending=new Map}get(e){if(!this.data.has(e))return;let r=this.data.get(e);if(r.expireAt>0&&r.expireAt<=Date.now()){this.data.delete(e);return}return this.data.delete(e),this.data.set(e,r),r.value}set(e,r,n=0){let s=n>0?Date.now()+n:0;return this.data.has(e)&&this.data.delete(e),this.data.set(e,{value:r,expireAt:s}),this.compact(),r}delete(e){this.pending.delete(e),this.data.delete(e)}clear(){this.pending.clear(),this.data.clear()}compact(){for(;this.data.size>this.max;){let e=this.data.keys().next().value;this.data.delete(e)}}async wrap(e,r,n){let s=this.get(e);if(s!==void 0)return s;if(this.pending.has(e))return this.pending.get(e);let i=(async()=>{try{let a=await n();return a!==void 0&&this.set(e,a,r),a}finally{this.pending.delete(e)}})();return this.pending.set(e,i),i}};function TM(t={}){return new $de(t.max||800)}async function yp(t,e,r,n){return!t||typeof t.wrap!="function"||Number(r)<=0?n():t.wrap(e,r,n)}function wm(t=[]){return t.map(e=>String(e)).join(":")}function t4r(t){let e=String(t||"").trim().replace(/\/+$/,""),r=e.match(/^\/spider\/([^/]+)\/(\d+)(?:\/.*)?$/);return r?{apiBase:e,spiderKey:decodeURIComponent(r[1]),spiderType:Number(r[2])}:null}function Ude(t){return String(t||"").split(",")[0].trim()}function wM(t=null){let r=Ude(t?.headers?.["x-forwarded-host"])||Ude(t?.headers?.host);if(!r)return{headers:void 0,cacheVary:"-"};let s=Ude(t?.headers?.["x-forwarded-proto"])||String(t?.protocol||"http").trim()||"http";return{headers:{host:r,"x-forwarded-host":r,"x-forwarded-proto":s},cacheVary:`${s}://${r}`}}function r4r(t=[],e=[]){let r={};if(t.forEach(i=>{r[i.key]=i}),!Array.isArray(e)||!e.length)return t;let n={},s=[];return e.forEach(i=>{n[i.key]=!0;let a=r[i.key];if(!a||!i.enable)return;let o=typeof i.name=="string"?i.name.trim():"";s.push({...a,name:o||a.name})}),t.forEach(i=>{n[i.key]||s.push(i)}),s}async function Ad(t){let e=t.embyContext?.cache;return yp(e,"emby:enabled-video-spiders:v2",Uy.SPIDERS,async()=>{let r=await t.inject({method:"GET",url:"/full-config"});if(r.statusCode>=400)return[];let n=r.json(),s=Array.isArray(n?.video?.sites)?n.video.sites:[],i=await AR(t).catch(()=>[]),a=r4r(s,i),o={},c=[];return a.forEach(u=>{let l=t4r(u.api);if(!l||l.spiderType!==3)return;let d=`${u.key}:${l.apiBase}`;o[d]||(o[d]=!0,c.push({siteKey:u.key,siteName:u.name||l.spiderKey,spiderKey:l.spiderKey,spiderType:l.spiderType,apiBase:l.apiBase,api:u.api}))}),c})}function Fy(t=[],e,r=null,n=""){let s=r===null?null:Number(r),i=String(n||"").trim();return t.find(a=>a.spiderKey!==e?!1:s===null?!0:i&&a.apiBase!==i?!1:Number(a.spiderType)===s)||null}async function qy(t,e,r,n,s={},i={}){let a=i?.headers&&typeof i.headers=="object"?i.headers:void 0,o=String(i?.apiBase||"").trim()||`/spider/${encodeURIComponent(e)}/${r}`,c=await t.inject({method:"POST",url:`${o.replace(/\/+$/,"")}/${n}`,payload:s,headers:a});if(c.statusCode>=400)throw new Error(`Spider call failed: ${e}/${r}/${n} ${c.statusCode}`);let u=t.embyContext?.config?.requestLog;try{let l=c.json();if(u&&(n==="detail"||n==="play")){if(n==="detail"){let d=Array.isArray(l?.list)&&l.list.length>0?l.list[0]:null,f=String(d?.vod_play_from||""),p=String(d?.vod_play_url||""),m=f?f.split("$$$").filter(Boolean).length:0,h=p?p.split("$$$").map(y=>String(y||"").split("#").filter(Boolean).length):[];console.log("[Emby Spider] detail:",JSON.stringify({spiderKey:e,spiderType:r,request:{id:String(s?.id||"")},response:{listCount:Array.isArray(l?.list)?l.list.length:0,vodId:String(d?.vod_id||""),vodName:String(d?.vod_name||""),vodRemarks:String(d?.vod_remarks||""),lineCount:m,episodeCountPerLine:h.slice(0,10)}}))}else if(n==="play"){let d=l?.header&&typeof l.header=="object"?Object.keys(l.header):[];console.log("[Emby Spider] play:",JSON.stringify({spiderKey:e,spiderType:r,request:{flag:String(s?.flag||""),idPreview:String(s?.id||"").slice(0,80)},response:{parse:Number(l?.parse||0),hasUrl:!!l?.url,urlPreview:String(l?.url||"").slice(0,120),headerKeys:d}}))}}return l}catch{return{}}}async function bR(t,e,r=null){let n=t.embyContext?.cache,s=wM(r),i=wm(["emby","home",e.spiderKey,e.spiderType,e.apiBase||"",s.cacheVary]);return yp(n,i,Uy.HOME,()=>qy(t,e.spiderKey,e.spiderType,"home",{},{headers:s.headers,apiBase:e.apiBase}))}async function L_(t,e,r,n=1,s={},i=null){let a=t.embyContext?.cache,o=wM(i),c=wm(["emby","category",e.spiderKey,e.spiderType,e.apiBase||"",r,n,JSON.stringify(s||{}),o.cacheVary]);return yp(a,c,Uy.CATEGORY,()=>qy(t,e.spiderKey,e.spiderType,"category",{id:r,page:n,filter:!0,filters:s||{}},{headers:o.headers,apiBase:e.apiBase}))}async function qc(t,e,r,n=null){let s=t.embyContext?.cache,i=wM(n),a=wm(["emby","detail",e.spiderKey,e.spiderType,e.apiBase||"",r,i.cacheVary]);return yp(s,a,Uy.DETAIL,()=>qy(t,e.spiderKey,e.spiderType,"detail",{id:r},{headers:i.headers,apiBase:e.apiBase}))}async function bmt(t,e,r,n=1){let s=t.embyContext?.cache,i=wm(["emby","search",e.spiderKey,e.spiderType,e.apiBase||"",r,n]);return yp(s,i,Uy.SEARCH,()=>qy(t,e.spiderKey,e.spiderType,"search",{wd:r,page:n},{apiBase:e.apiBase}))}async function Rm(t,e,r,n,s=null){let i=t.embyContext?.cache,a=wM(s),o=wm(["emby","play",e.spiderKey,e.spiderType,e.apiBase||"",r,n,a.cacheVary]);return yp(i,o,Uy.PLAY,()=>qy(t,e.spiderKey,e.spiderType,"play",{flag:r,id:n},{headers:a.headers,apiBase:e.apiBase}))}function jc(t){return!t||!Array.isArray(t.list)||!t.list.length?null:t.list[0]}function xd(t={}){return{spiderKey:String(t.k||t.spiderKey||""),spiderType:Number(t.t||t.spiderType||3),apiBase:String(t.a||t.apiBase||"")}}var Fde=Ce(require("node:fs"),1),_R=Ce(require("node:path"),1),n4r=()=>{try{return`const appConfig = {\r _webSite: '',\r /**\r * \u7F51\u7AD9\u4E3B\u9875\uFF0Cuz \u8C03\u7528\u6BCF\u4E2A\u51FD\u6570\u524D\u90FD\u4F1A\u8FDB\u884C\u8D4B\u503C\u64CD\u4F5C\r @@ -10513,27 +10529,77 @@ async function searchVideo(args) {\r }\r return JSON.stringify(backData)\r }\r -`}catch{return""}},xlt=t=>{let e=String(t||"").trim();return e.toLowerCase().endsWith(".js")?e.slice(0,-3):e},blt=(t,e={})=>{let r=Object.entries(e).filter(([,n])=>n!=null&&n!=="").map(([n,s])=>`${encodeURIComponent(n)}=${encodeURIComponent(String(s))}`).join("&");return r?`${t}${t.includes("?")?"&":"?"}${r}`:t},Elt=(t,e,r={})=>blt(`${t}/api/${encodeURIComponent(e)}`,{filter:!0,...r}),_lt=(t,e,r={})=>blt(`${t}/uz.js`,{...r,key:e}),iTr=()=>{let t=[Xw.default.resolve(process.cwd(),"src/assets/uz.js"),Xw.default.resolve(process.cwd(),"nodejs/src/assets/uz.js"),Xw.default.resolve(process.cwd(),"dist/assets/uz.js"),Xw.default.resolve(process.cwd(),"nodejs/dist/assets/uz.js")],e=t.find(r=>Yce.default.existsSync(r));if(!e)throw new Error(`uz.js asset not found: ${t.join(", ")}`);return e},Slt=()=>sTr()||Yce.default.readFileSync(iTr(),"utf8"),vlt=t=>({vod:t.map(e=>({key:e.module,name:e.name,api:e.scriptUrl,webSite:e.t4ApiUrl,version:1,type:101}))});var aTr=new Set(["0","false","no","off"]),TM=()=>({username:process.env.CATPAW_DIST_AUTH_USER||"CatPawPlay",password:process.env.CATPAW_DIST_AUTH_PASS||"CatPawPlay"}),wM=()=>{let t=String(process.env.CATPAW_DIST_AUTH||"").trim().toLowerCase();return!aTr.has(t)},Zw=(t,e={})=>{let r=e.includePrefix!==!1,s=String(t.headers?.["x-forwarded-host"]||"").split(",")[0].trim()||String(t.headers?.host||"").split(",")[0].trim(),a=String(t.headers?.["x-forwarded-proto"]||"").split(",")[0].trim()||String(t.protocol||"").trim()||(t.socket?.encrypted?"https":"http"),o=r?String(t.server?.prefix||"").replace(/\/$/,""):"";if(s)return`${a}://${s}${o}`;let c=t.server?.address?.();return c?.url?`${String(c.url).replace(/\/$/,"")}${o}`:c?.port?`http://127.0.0.1:${c.port}${o}`:o||""},e2=(t,e,r=null)=>{if(!t)return e;let n=new URL(e,t);return(r?.username||r?.password)&&(n.username=r.username||"",n.password=r.password||""),n.toString()};var PE="/spider",oTr=new Set([".cjs",".mjs",".js"]),Wlt=/^[a-z0-9_-]{2,32}$/,$lt=new Set(["http:","https:"]),s2="nodejs_",Flt="__catpawProfile",cTr=new Set([Flt,"server","embyPlayback"]),uTr=[{url:"/index.js",fileName:"index.js",contentType:"application/javascript; charset=utf-8"},{url:"/index.js.md5",fileName:"index.js.md5",md5Source:"index.js",contentType:"text/plain; charset=utf-8"},{url:"/index.config.js",fileName:"index.config.js",contentType:"application/javascript; charset=utf-8"},{url:"/index.config.js.md5",fileName:"index.config.js.md5",md5Source:"index.config.js",contentType:"text/plain; charset=utf-8"}],t2={key:"",expireAt:0,spiders:[]},om={key:"",promise:null},Clt=new Map,lTr=t=>({...t.query&&typeof t.query=="object"?t.query:{},...t.body&&typeof t.body=="object"?t.body:{}}),Jce=(t,e=!1)=>{if(t==null||t==="")return e;let r=String(t).trim().toLowerCase();return["1","true","yes","on"].includes(r)?!0:["0","false","no","off"].includes(r)?!1:e},dTr=(t,e={})=>{if(t==null||t==="")return e;if(typeof t=="object")return t;try{let r=Buffer.from(String(t),"base64").toString("utf8");return JSON.parse(r)}catch{try{return JSON.parse(String(t))}catch{return e}}},fTr=t=>{let e={},n=String(t.headers?.["x-forwarded-host"]||"").split(",")[0].trim()||String(t.headers?.host||"").split(",")[0].trim(),i=String(t.headers?.["x-forwarded-proto"]||"").split(",")[0].trim()||String(t.protocol||"").trim();return n&&(e.host=n,e["x-forwarded-host"]=n),i&&(e["x-forwarded-proto"]=i),Object.keys(e).length>0?e:void 0},pTr=t=>{let e=String(t||"").trim().replace(/\/+$/,""),r=e.match(/^\/spider\/([^/]+)\/(\d+)(?:\/.*)?$/);return r?{spiderKey:decodeURIComponent(r[1]),spiderType:Number(r[2]),apiBase:e}:null},mTr=t=>{let e=String(t||"").trim();return e.toLowerCase().startsWith(s2)?e.slice(s2.length):e},Ult=(t,e,r)=>{!r||Number(r.spiderType)!==3||e.map(n=>String(n||"").trim()).filter(Boolean).forEach(n=>{t.set(n.toLowerCase(),r)})},hTr=t=>{let e=new Map;return t.forEach(r=>{let n=String(r?.meta?.key||"").trim(),s=Number(r?.meta?.type||0);if(!n||s!==3||r?.meta?.hidden)return;let i={spiderKey:n,spiderType:s,apiBase:`${PE}/${encodeURIComponent(n)}/${s}`};Ult(e,[n,`${s2}${n}`],i)}),e},Ilt=(t,e)=>{let r=String(e||"").trim();if(!r)return null;let n=r.toLowerCase(),s=n.startsWith(s2)?n.slice(s2.length):n;return t.get(n)||t.get(s)||null},gTr=t=>{let[e,r]=String(t||"").split(/\s+/,2);if(e?.toLowerCase()!=="basic"||!r)return null;let n="";try{n=Buffer.from(r,"base64").toString("utf8")}catch{return null}let s=n.indexOf(":");return s<0?null:{username:n.slice(0,s),password:n.slice(s+1)}},ATr=(t,e)=>{let r=gTr(t.headers?.authorization),n=TM();return r?.username===n.username&&r?.password===n.password?!0:(e.code(401).header("WWW-Authenticate",'Basic realm="CatPaw dist"').send("Authentication required"),!1)},yTr=t=>Ms.default.resolve(process.cwd(),"dist",t),qlt=t=>Object.prototype.toString.call(t)==="[object Object]",rue=(t,e={})=>{try{return JSON.parse(JSON.stringify(t??e))}catch{return e}},xTr=t=>JSON.stringify(t,null,2).replace(/^(\s*)"([A-Za-z_$][\w$]*)":/gm,"$1$2:"),bTr=async t=>{try{let e=await t.getData("/");return qlt(e)?e:{}}catch{return{}}},ETr=t=>{let e={};return Object.entries(qlt(t)?t:{}).forEach(([r,n])=>{cTr.has(r)||(e[r]=rue(n,n))}),e},_Tr=async({db:t,config:e})=>{let r=await bTr(t),n=ETr(r),s={...rue(e,{}),...rue(n,{})};return delete s.server,Object.keys(n).length>0&&(s[Flt]=n),["var index_config = {"," server: {}, //\u8FD9\u91CC\u4E0D\u8981\u52A8\uFF0C\u52A0\u7A7A\u683C\u90FD\u4E0D\u884C\uFF0C\u540E\u53F0\u81EA\u52A8\u751F\u6210",xTr(s).replace(/^\{\n?/,"").replace(/\n?\}$/,""),"};",'if (typeof module !== "undefined" && module.exports) module.exports = index_config;',""].join(` -`)},STr=async(t,e,r)=>(t.md5Source||t.fileName)!=="index.config.js"?e:Buffer.from(await _Tr(r),"utf8"),vTr=async(t,e,r,n)=>{if(ATr(e,r))try{let s=t.md5Source||t.fileName,i=await OE.default.readFile(yTr(s)),a=await STr(t,i,n),o=t.md5Source?(0,PM.createHash)("md5").update(a).digest("hex"):a;r.header("Content-Type",t.contentType).send(o)}catch(s){if(s?.code==="ENOENT"){r.code(404).send({error:`dist artifact not found: ${t.fileName}`,hint:"\u8BF7\u5148\u5728 nodejs \u76EE\u5F55\u8FD0\u884C npm run build \u6216 npm run build:dbg"});return}throw s}},Xce=(t,e=!1)=>{if(t==null||t==="")return e;let r=String(t).trim().toLowerCase();return["1","true","yes","on"].includes(r)?!0:["0","false","no","off"].includes(r)?!1:e},Zce=(t,e=0)=>{let r=Number.parseInt(t,10);return Number.isFinite(r)?r:e},CTr=t=>{let e=String(t||"").trim();if(!e)return"";try{let r=new URL(e);return $lt.has(r.protocol)?(r.hash="",r.href):""}catch{return""}},Tlt=t=>{let r=(Array.isArray(t)?t:typeof t=="string"?t.split(/[\r\n,;]/):[]).map(n=>CTr(n)).filter(Boolean);return[...new Set(r)]},eue=(t,e,r)=>{if(!Number.isFinite(e)||e<=0)return t;let n;return Promise.race([t,new Promise((s,i)=>{n=setTimeout(()=>i(new Error(r)),e)})]).finally(()=>clearTimeout(n))},ITr=async t=>{try{let e=await OE.default.stat(t);return`${e.mtimeMs}-${e.size}`}catch{return"0"}},jlt=(t={})=>{let e=t.customSpiders||{},r=process.env.NODE_PATH||"/data",n=typeof e.dir=="string"?e.dir.trim():"",s=Tlt(process.env.CATPAW_CUSTOM_SPIDER_URLS),i=Tlt(e.urls),a=s.length>0?s:i,o=process.env.CATPAW_CUSTOM_SPIDER_DIR||n||Ms.default.join(r,"custom-spiders");return{enabled:Xce(process.env.CATPAW_CUSTOM_SPIDER_ENABLED,e.enabled??!0),strict:Xce(process.env.CATPAW_CUSTOM_SPIDER_STRICT,e.strict??!1),allowOverride:Xce(process.env.CATPAW_CUSTOM_SPIDER_ALLOW_OVERRIDE,e.allowOverride??!1),cacheTtlMs:Math.max(0,Zce(process.env.CATPAW_CUSTOM_SPIDER_CACHE_TTL_MS,e.cacheTtlMs??5e3)),factoryTimeoutMs:Math.max(0,Zce(process.env.CATPAW_CUSTOM_SPIDER_FACTORY_TIMEOUT_MS,e.factoryTimeoutMs??1e4)),urlTimeoutMs:Math.max(1e3,Zce(process.env.CATPAW_CUSTOM_SPIDER_URL_TIMEOUT_MS,e.urlTimeoutMs??1e4)),dir:Ms.default.resolve(o),urls:a}},wlt=(t,e)=>{let n=`[custom-spider:${Ms.default.basename(e)}]`,s=Object.freeze({info:(...i)=>console.log(n,...i),warn:(...i)=>console.warn(n,...i),error:(...i)=>console.error(n,...i),debug:(...i)=>console.debug(n,...i)});return Object.freeze({http:Object.freeze({axios:Ae,req:he,create:(i={})=>Ae.create(i)}),cheerio:Object.freeze({load:Me}),utils:Object.freeze({extractTitle:sA,findEpisodeNumber:Yw,firstSuccessfulUrl:Xn}),logger:s,app:Object.freeze({spiderPrefix:PE,nodePath:process.env.NODE_PATH||"."})})},TTr=async t=>{try{return(await OE.default.readdir(t,{withFileTypes:!0})).filter(r=>r.isFile()).map(r=>Ms.default.join(t,r.name)).filter(r=>oTr.has(Ms.default.extname(r).toLowerCase())).sort((r,n)=>r.localeCompare(n))}catch(e){if(e?.code==="ENOENT")return[];throw e}},NM=t=>{if(typeof t=="string")return t;if(Buffer.isBuffer(t))return t.toString("utf8");if(t==null)return"";try{return JSON.stringify(t)}catch{return String(t)}},OM=new Map,iue=t=>String(t||"").trim(),wTr=t=>{let e=NM(t);if(!e)return"";let r=e.split(/\r?\n/,80);for(let n of r){let s=String(n||"").trim();if(!s)continue;let i=s.match(/^(?:\/\/+|\/\*+|\*+)?\s*@name(?:\s*[::])?\s+(.+?)\s*$/i);if(!i?.[1])continue;let a=i[1].replace(/\*\/\s*$/,"").trim();if(a)return a}return""},Hlt=(t,e)=>{let r=iue(t);if(!r)return"";let n=wTr(e);return n?(OM.set(r,n),n):(OM.delete(r),"")},Qlt=t=>{let e=iue(t);return e?String(OM.get(e)||"").trim():""},Rlt={axios:Ae,cheerio:Sv,"crypto-js":Blt.default,dayjs:Mlt.default,qs:sue.default},RTr=(t,e)=>{let r=n=>n==="omnibox_sdk"?{request:async(s,i={})=>{let a=String(i.method||"GET").toUpperCase(),o=i.headers||{},c=i.body;c&&typeof c=="object"&&!Buffer.isBuffer(c)&&String(o["Content-Type"]||o["content-type"]||"").toLowerCase().includes("application/json")&&(c=JSON.stringify(c));let u=await Ae.request({url:s,method:a,headers:o,data:c,timeout:i.timeout,validateStatus:()=>!0});return{statusCode:u.status,body:NM(u.data)}},log:(s,...i)=>{let a=i.map(o=>typeof o=="string"?o:NM(o)).join(" ");return s==="error"?console.error(a):s==="warn"||s==="warning"?console.warn(a):console.log(a)},getSourceId:async()=>"builtin",processScraping:async(s,i,a,o=[])=>{let c=String(s||"");return Clt.set(c,{scrapeData:null,scrapeType:"",videoMappings:[]}),{ok:!1,unsupported:!0,count:Array.isArray(o)?o.length:0}},getScrapeMetadata:async s=>{let i=String(s||"");return Clt.get(i)||null}}:n==="spider_runner"?{run:()=>{}}:Rlt[n]?Rlt[n]:t(n);return r.resolve=t.resolve?.bind(t),r.main={filename:e},r},Glt=(t,e)=>{let r=String(t?.message||""),n=r.includes("require is not defined")||r.includes("module is not defined")||r.includes("exports is not defined"),s=/(?:^|\W)module\.exports(?:\W|$)|(?:^|\W)exports\.[A-Za-z_$][\w$]*|(?:^|\W)require\s*\(/m.test(e);return n||s},Vlt=(t,e,r="")=>{let n={exports:{}},s=r||(0,nue.pathToFileURL)(Ms.default.resolve(process.cwd(),".custom-spider-runtime.cjs")).href,i=(0,Llt.createRequire)(s),a=RTr(i,e);return new Function("require","module","exports","__filename","__dirname",t)(a,n,n.exports,e,Ms.default.dirname(e)),{default:n.exports}},NTr=async(t,e)=>{let r=await Ae.get(t,{responseType:"text",timeout:e,transformResponse:[a=>a],validateStatus:()=>!0});if(r.status>=400)throw new Error(`[custom-spider] \u8FDC\u7A0B\u63D2\u4EF6\u62C9\u53D6\u5931\u8D25(${r.status}): ${t}`);let n=NM(r.data);Hlt(t,n);let s=(0,PM.createHash)("sha1").update(n).digest("hex").slice(0,12),i=`data:text/javascript;charset=utf-8,${encodeURIComponent(n)}`;try{return await import(`${i}#${s}`)}catch(a){if(!Glt(a,n))throw a;let o;try{let c=new URL(t),u=Ms.default.basename(c.pathname)||`remote-${s}.js`;o=Ms.default.resolve(process.cwd(),".remote-custom-spiders",u)}catch{o=Ms.default.resolve(process.cwd(),".remote-custom-spiders",`remote-${s}.js`)}return Vlt(n,o)}},OTr=async t=>{let e=iue(t),r="",n=!1;try{r=await OE.default.readFile(t,"utf8"),n=!0,Hlt(e,r)}catch{OM.delete(e)}let s=(0,nue.pathToFileURL)(t);s.searchParams.set("v",await ITr(t));try{return await import(s.href)}catch(i){if(Ms.default.extname(t).toLowerCase()!==".js")throw i;let o=n?r:await OE.default.readFile(t,"utf8");if(!Glt(i,o))throw i;return Vlt(o,t,s.href)}},Nlt=t=>!!t&&typeof t=="object"&&typeof t.api=="function",Olt=t=>!t||typeof t!="object"||typeof t.api=="function"?!1:["home","category","detail","search","play"].some(r=>typeof t[r]=="function"),PTr=t=>{let e=String(t||"");if(!e.includes("%"))return e;try{return decodeURIComponent(e)}catch{return e}},DM=t=>{let e=String(t||"").trim();if(!e)return"";try{let r=new URL(e);if($lt.has(r.protocol)){let n=Ms.default.parse(Ms.default.basename(r.pathname||"")).name;return PTr(n)}}catch{}return Ms.default.parse(e).name},DTr=t=>{let e=DM(t),r=String(e).trim().toLowerCase().replace(/[^a-z0-9_-]/g,"");return Wlt.test(r)?r:`omni_${(0,PM.createHash)("sha1").update(t).digest("hex").slice(0,10)}`},kTr=t=>{if(!t||typeof t!="object"||t.vod_play_from&&t.vod_play_url)return t;let e=Array.isArray(t.vod_play_sources)?t.vod_play_sources:[];if(e.length===0)return t;let r=[],n=[];return e.forEach((s,i)=>{let a=String(s?.name||`\u7EBF\u8DEF${i+1}`).trim()||`\u7EBF\u8DEF${i+1}`,c=(Array.isArray(s?.episodes)?s.episodes:[]).map((u,l)=>{let d=String(u?.name||`\u64AD\u653E${l+1}`).trim()||`\u64AD\u653E${l+1}`,f=String(u?.playId||u?.url||u?.id||"").trim();return f?`${d}$${f}`:""}).filter(Boolean);c.length>0&&(r.push(a),n.push(c.join("#")))}),r.length===0||n.length===0?t:{...t,vod_play_from:r.join("$$$"),vod_play_url:n.join("$$$")}},RM=t=>t&&typeof t=="object"?t:{list:[]},Plt=t=>{let e=RM(t),r=Array.isArray(e.list)?e.list:[];return{...e,list:r.map(n=>kTr(n))}},LTr=(t,e="")=>{if(t&&typeof t=="object"){let r=String(t.url||"").trim();if(r)return{...t,parse:t.parse??0,url:r,header:t.header||{}};let n=Array.isArray(t.urls)?t.urls:[];if(n.length>0){let s=n[0]||{},i=String(s.url||s.playId||s.id||"").trim();if(i)return{parse:t.parse??0,url:i,header:t.header||{}}}if(t.parse!==void 0)return{parse:t.parse??0,url:"",header:t.header||{}}}return typeof t=="string"&&t.trim()?{parse:0,url:t.trim()}:{parse:1,url:String(e||"")}},BTr=(t,e)=>{let r=t.meta||t.META||{},n=Number(r.type),s=Number.isInteger(n)&&n>=0&&n<50?n:3,i=String(r.key||"").trim()||DTr(e),a=Qlt(e),o=String(r.name||"").trim()||a||DM(e)||i,c=async(u,l)=>{if(typeof u!="function")return{};let d=await u(l||{});return d===void 0?{}:d};return{meta:{key:i,name:o,type:s},api:async u=>{u.post("/init",async()=>({})),u.post("/home",async l=>{let d=await c(t.home,{filter:l.body?.filter??!1});return RM(d)}),u.post("/category",async l=>{let d=l.body||{},f=await c(t.category,{categoryId:d.id,id:d.id,page:d.page??1,filters:d.filters||{},filter:d.filter??!1});return RM(f)}),u.post("/detail",async l=>{let d=l.body?.id;if(Array.isArray(d)){let p=[];for(let m of d){let h=await c(t.detail,{videoId:m,id:m}),A=Plt(h);Array.isArray(A.list)&&p.push(...A.list)}return{list:p}}let f=await c(t.detail,{videoId:d,id:d});return Plt(f)}),u.post("/search",async l=>{let d=l.body?.wd??"",f=await c(t.search,{keyword:d,wd:d,page:l.body?.page??1,quick:l.body?.quick??!1});return RM(f)}),u.post("/play",async l=>{let d=l.body?.id??"",f=await c(t.play,{playId:d,id:d,flag:l.body?.flag??""});return LTr(f,d)})}}},MTr=(t,e)=>{let r=typeof t?.createSpider=="function"&&t.createSpider||typeof t?.default?.createSpider=="function"&&t.default.createSpider;if(r)return{mode:"factory",value:r};let n=Nlt(t?.default)&&t.default||Nlt(t)&&t;if(n)return{mode:"spider",value:n};let s=Olt(t?.default)&&t.default||Olt(t)&&t;if(s)return{mode:"omnibox-object",value:s};let i=typeof t?.default=="function"&&t.default||typeof t=="function"&&t;if(i)return{mode:"callable",value:i};throw new Error(`${e} \u7F3A\u5C11 createSpider(ctx) / spider \u5BF9\u8C61 / omnibox \u5BF9\u8C61 / legacy register \u5BFC\u51FA`)},WTr=t=>{let e=String(t?.message||"");return e?e.includes("spider \u5FC5\u987B\u662F\u5BF9\u8C61")||e.includes("spider.api \u5FC5\u987B\u662F\u51FD\u6570")||e.includes("spider.check \u5FC5\u987B\u662F\u51FD\u6570")||e.includes("is not a function")||e.includes("Cannot read properties of undefined")||e.includes("Cannot set properties of undefined"):!1},$Tr=(t,e)=>{let r=String(t?.meta?.key||"").trim(),n=String(t?.meta?.api||"").trim(),s=DM(e),i=[];r&&i.push(r);let a=n.match(/\/([a-zA-Z0-9_-]+)$/);a?.[1]&&i.push(a[1]),s&&i.push(s);for(let o of i){let c=String(o).trim().toLowerCase().replace(/[^a-z0-9_-]/g,"");if(Wlt.test(c))return{key:c,from:o}}return null},FTr=t=>{if(!t||typeof t!="object"||Object.keys(t).length===0)return"";try{return Buffer.from(JSON.stringify(t),"utf8").toString("base64")}catch{return""}},r2=async(t,e,r)=>{let n,a=await t({query:r,server:e},{send(o){return n=o,o}});return a===void 0?n:a},UTr=async(t,e)=>{let r=[],n={get(l,d){r.push({method:"get",routePath:l,handler:d})},post(l,d){r.push({method:"post",routePath:l,handler:d})},put(l,d){r.push({method:"put",routePath:l,handler:d})},delete(l,d){r.push({method:"delete",routePath:l,handler:d})}},s={sites:[]};await Promise.resolve(t(n,s));let i=Array.isArray(s.sites)?s.sites:[];if(i.length===0)throw new Error(`${e} legacy register \u672A\u901A\u8FC7 opt.sites \u66B4\u9732 meta`);i.length>1&&console.warn(`[custom-spider] legacy register \u4EC5\u517C\u5BB9\u9996\u4E2A site: ${Ms.default.basename(e)}`);let a=i[0]||{},o=String(a.api||"").trim(),c=o?r.find(l=>l.routePath===o):null;if(o&&!c){let l=r.map(d=>d.routePath).join(", ");throw new Error(`${e} legacy register meta.api(${o}) \u672A\u5339\u914D\u5DF2\u6CE8\u518C\u8DEF\u7531: ${l||"(none)"}`)}let u=c;if(!u)if(r.length===1)u=r[0];else{let l=r.map(d=>d.routePath).join(", ");throw new Error(`${e} legacy register \u8DEF\u7531\u4E0D\u660E\u786E\uFF0C\u8BF7\u63D0\u4F9B\u53EF\u5339\u914D\u7684 meta.api\uFF0C\u5F53\u524D\u8DEF\u7531: ${l||"(none)"}`)}if(!u||typeof u.handler!="function")throw new Error(`${e} legacy register \u672A\u6CE8\u518C\u6709\u6548\u8DEF\u7531`);return{meta:{key:a.key,name:a.name,type:a.type},api:async l=>{l.post("/init",async()=>({})),l.post("/home",async d=>r2(u.handler,d.server,{filter:d.body?.filter??!1})),l.post("/category",async d=>{let f=d.body||{},p={ac:"detail",t:f.id,pg:f.page??1,filter:f.filter??!1},m=FTr(f.filters);return m&&(p.ext=m),r2(u.handler,d.server,p)}),l.post("/detail",async d=>{let f=d.body?.id,p=Array.isArray(f)?f.join(","):f;return r2(u.handler,d.server,{ac:"detail",ids:p})}),l.post("/search",async d=>r2(u.handler,d.server,{wd:d.body?.wd??"",pg:d.body?.page??1,quick:d.body?.quick??!1})),l.post("/play",async d=>r2(u.handler,d.server,{play:d.body?.id??"",flag:d.body?.flag??"",parser:d.body?.parser??""}))}}},n2=(t,e)=>{if(!t||typeof t!="object")throw new Error(`${e} spider \u5FC5\u987B\u662F\u5BF9\u8C61`);if(typeof t.api!="function")throw new Error(`${e} spider.api \u5FC5\u987B\u662F\u51FD\u6570`);if(t.check&&typeof t.check!="function")throw new Error(`${e} spider.check \u5FC5\u987B\u662F\u51FD\u6570`);let r=$Tr(t,e);if(!r)throw new Error(`${e} meta.key \u4E0D\u5408\u6CD5`);let n=r.key,s=Qlt(e),i=String(t.meta?.name||"").trim()||s||DM(e)||n,a=Number(t.meta?.type);if(!i)throw new Error(`${e} meta.name \u4E0D\u80FD\u4E3A\u7A7A`);if(!Number.isInteger(a)||a<0||a>=50)throw new Error(`${e} meta.type \u5FC5\u987B\u662F 0-49 \u7684\u6574\u6570`);let o=String(t.meta?.key||"").trim();return o&&o!==n&&console.log(`[custom-spider] key \u517C\u5BB9\u4FEE\u6B63: ${o} -> ${n}`),{...t,meta:{...t.meta,key:n,name:i,type:a,custom:!0}}},qTr=(t,e=!1)=>{let r=[],n=new Map;return t.forEach(s=>{let i=`${s.meta.key}:${s.meta.type}`;if(!n.has(i)){n.set(i,r.length),r.push(s);return}if(e&&s.meta?.custom){console.warn(`[custom-spider] override: ${i}`),r[n.get(i)]=s;return}console.warn(`[custom-spider] duplicate ignored: ${i}`)}),r},jTr=async t=>{let e=jlt(t.config);if(!e.enabled)return[];let r=`${e.dir}|${e.urls.join(",")}|${e.urlTimeoutMs}|${e.strict}|${e.cacheTtlMs}|${e.factoryTimeoutMs}`,n=Date.now();if(e.cacheTtlMs>0&&t2.key===r&&t2.expireAt>n)return t2.spiders;if(om.promise&&om.key===r)return om.promise;om.key=r,om.promise=(async()=>{let s=await TTr(e.dir),i=e.urls;if(s.length===0&&i.length===0)return t2={key:r,expireAt:e.cacheTtlMs>0?Date.now()+e.cacheTtlMs:0,spiders:[]},[];s.length>0&&console.log(`[custom-spider] \u53D1\u73B0 ${s.length} \u4E2A\u672C\u5730\u63D2\u4EF6: ${s.map(l=>Ms.default.basename(l)).join(", ")}`),i.length>0&&console.log(`[custom-spider] \u53D1\u73B0 ${i.length} \u4E2A\u8FDC\u7A0B\u63D2\u4EF6: ${i.join(", ")}`);let a=[...s.map(l=>({id:l,display:Ms.default.basename(l),load:()=>OTr(l)})),...i.map(l=>({id:l,display:l,load:()=>NTr(l,e.urlTimeoutMs)}))],o=await Promise.allSettled(a.map(async l=>{let d=await l.load(),f=MTr(d,l.id);if(f.mode==="spider")return console.log(`[custom-spider] \u517C\u5BB9\u6A21\u5F0F\u52A0\u8F7D: ${l.display} (legacy spider export)`),n2(f.value,l.id);if(f.mode==="omnibox-object"){console.log(`[custom-spider] \u517C\u5BB9\u6A21\u5F0F\u52A0\u8F7D: ${l.display} (omnibox object export)`);let h=BTr(f.value,l.id);return n2(h,l.id)}if(f.mode==="callable"){let h=wlt(t,l.id);try{let A=await eue(Promise.resolve(f.value(h)),e.factoryTimeoutMs,`[custom-spider] createSpider \u8D85\u65F6: ${l.id}`);return n2(A,l.id)}catch(A){if(!WTr(A))throw A;console.log(`[custom-spider] \u517C\u5BB9\u6A21\u5F0F\u52A0\u8F7D: ${l.display} (legacy register export)`);let g=await eue(UTr(f.value,l.id),e.factoryTimeoutMs,`[custom-spider] legacy register \u9002\u914D\u8D85\u65F6: ${l.id}`);return n2(g,l.id)}}let p=wlt(t,l.id),m=await eue(Promise.resolve(f.value(p)),e.factoryTimeoutMs,`[custom-spider] createSpider \u8D85\u65F6: ${l.id}`);return n2(m,l.id)})),c=[],u=[];if(o.forEach((l,d)=>{l.status==="fulfilled"?c.push(l.value):(u.push(a[d].display),console.error(`[custom-spider] \u52A0\u8F7D\u5931\u8D25: ${a[d].display}`,l.reason))}),e.strict&&u.length>0)throw new Error(`[custom-spider] strict \u6A21\u5F0F: ${u.length} \u4E2A\u63D2\u4EF6\u52A0\u8F7D\u5931\u8D25`);return c.length>0&&console.log(`[custom-spider] \u6210\u529F\u52A0\u8F7D ${c.length} \u4E2A\u63D2\u4EF6`),t2={key:r,expireAt:e.cacheTtlMs>0?Date.now()+e.cacheTtlMs:0,spiders:c},c})();try{return await om.promise}finally{om.key===r&&(om={key:"",promise:null})}},Dlt=async t=>{let e=[but,Oot,_ot],r=[Eot,$it,Lat,Fit,Uit,qit,Bat,S5e,jit,Hit,vat,Cat,rut,kat,Xat,rot,Not,bat,Vit,Kit,Zit,tat,Sat,sat,aat,ilt,Wut,dct,Ect,jot,Wot,$ot,jct,Zct,Jot,pct,Tct,Bct,tct,Aot];(await Mce(t)).forEach(o=>{r.push($ce(o.name,o.address))}),(await Hce(t)).forEach(o=>{r.push(Vce(o.name,o.address))});let i=await jTr(t);r.push(...i),r.push(...e);let{allowOverride:a}=jlt(t.config);return qTr(r,a)},klt=(t,e,r)=>{r<10?t.video.sites.push(e):r>=10&&r<20?t.read.sites.push(e):r>=20&&r<30?t.comic.sites.push(e):r>=30&&r<40?t.music.sites.push(e):r>=40&&r<50&&t.pan.sites.push(e)},HTr=async(t,e)=>{(await Qw(e).catch(()=>[])).filter(n=>n?.id&&n?.host&&n?.username).forEach(n=>{t.video.sites.push({key:`nodejs_emby_${n.id}`,name:`\u300C\u76F4\u300D${n.name||"Emby"}`,type:3,api:`${PE}/emby/3/server/${encodeURIComponent(n.id)}`})})},QTr=async(t,e)=>{(await Gw(e).catch(()=>[])).filter(n=>n?.id&&n?.server).forEach(n=>{t.video.sites.push({key:`nodejs_alist_${n.id}`,name:`\u300C\u76F4\u300D${n.name||"Alist"}`,type:3,api:`${PE}/alist-video/3/server/${encodeURIComponent(n.id)}`})})},tue={};async function aue(t,{db:e,config:r}){t.hasContentTypeParser("application/x-www-form-urlencoded")||t.addContentTypeParser("application/x-www-form-urlencoded",{parseAs:"string"},(p,m,h)=>{h(null,sue.default.parse(String(m||"")))});let n=await Dlt({db:e,config:r}),s=hTr(n),i=new Map(s),a=async()=>null;n.forEach(p=>{let m=PE+"/"+p.meta.key+"/"+p.meta.type;t.register(p.api,{prefix:m});try{let h=p.check?.(t);h&&typeof h.then=="function"&&h.catch(A=>console.error(`[spider-check] ${p.meta.key} failed:`,A))}catch(h){console.error(`[spider-check] ${p.meta.key} failed:`,h)}console.log("Register spider: "+m)});let o=(p,m,h,A={})=>oA(t,m.spiderKey,m.spiderType,h,A,{apiBase:m.apiBase,headers:fTr(p)}),c=async(p,m)=>{let h=xlt(m),A=Ilt(i,h);return A||(await a(p),A=Ilt(i,h)),{module:h,spider:A}},u=p=>{let m=p.query?.token;return m==null||m===""?{}:{token:m}},l=async(p,m)=>{m.type("application/javascript; charset=utf-8").send(Slt())},d=async(p,m)=>{let{module:h,spider:A}=await c(p,p.params?.module);if(!A){m.code(404).send({error:"module not found"});return}return l(p,m)},f=async(p,m)=>{let{spider:h}=await c(p,p.params?.module);if(!h){m.code(404).send({error:"module not found"});return}let A=lTr(p);try{if(A.refresh!==void 0){m.send(await o(p,h,"init",{ext:A.extend||A.ext||"",extend:A.extend}));return}if(A.play!==void 0){m.send(await o(p,h,"play",{id:A.play,flag:A.flag,extend:A.extend}));return}if(A.ac==="action"&&A.action!==void 0){m.send(await o(p,h,"action",{action:A.action,value:A.value,extend:A.extend}));return}if(A.ac==="detail"&&A.ids!==void 0){m.send(await o(p,h,"detail",{id:A.ids,extend:A.extend}));return}if(A.t!==void 0){m.send(await o(p,h,"category",{id:A.t,page:A.pg||A.page||1,filter:Jce(A.filter,!0),filters:dTr(A.ext||A.f,{}),extend:A.extend}));return}if(A.wd!==void 0){m.send(await o(p,h,"search",{wd:A.wd,page:A.pg||A.page||1,quick:Jce(A.quick,!1),extend:A.extend}));return}m.send(await o(p,h,"home",{filter:Jce(A.filter,!0),extend:A.extend}))}catch(g){p.log?.error?.(g);let b=g?.message||"internal error",y=Number(b.match(/\s(\d{3})$/)?.[1]||500);m.code(y>=400&&y<600?y:500).send({error:b})}};t.get("/uz.js",l),t.get("/api/uz/:module",d),t.route({method:["GET","POST"],url:"/api/:module",handler:f}),t.route({method:["GET","POST"],url:"/api/:version/:kind/:module",handler:f}),wM()&&uTr.forEach(p=>{t.get(p.url,async(m,h)=>vTr(p,m,h,{db:e,config:r}))}),t.register(async p=>{p.get("/check",async function(x,v){v.send({run:!p.stop})});let m=async()=>{let x={video:{sites:[]},read:{sites:[]},comic:{sites:[]},music:{sites:[]},pan:{sites:[]},color:p.config.color||[]},v=await Dlt({db:e,config:r}),C=!1,R=!1,w=[];for(let N of v){let P=Object.assign({},N.meta);if(P.hidden){P.key==="emby"?C=!0:P.key==="alist-video"&&(R=!0);continue}P.api=PE+"/"+P.key+"/"+P.type,P.key="nodejs_"+P.key;let L=N.meta.type;if(P.cms){w.push({meta:P,stype:L});continue}klt(x,P,L)}return C&&await HTr(x,{db:e,config:r}),R&&await QTr(x,{db:e,config:r}),w.forEach(({meta:N,stype:P})=>klt(x,N,P)),x},h=async(x,v)=>{let C=await Kw(x.server),R=v.video.sites,w={},N={};R.forEach(L=>{N[L.key]=L});let P=[];return C.forEach(L=>{w[L.key]=!0;let M=N[L.key];if(M&&L.enable){let k=typeof L.name=="string"?L.name.trim():"";P.push({...M,name:k||M.name})}}),R.forEach(L=>{w[L.key]||P.push(L)}),v.video.sites=P,v},A=async x=>{let v=await m();return await h(x,v),v},g=x=>{let v=pTr(x.api);if(!v||Number(v.spiderType)!==3)return null;let C=mTr(x.key);return Ult(i,[x.key,C],v),{module:C,ref:v}};a=async x=>{(await A(x)).video.sites.forEach(g)};let b=async x=>{let v=await A(x),C=Zw(x).replace(/\/$/,""),R=v.video.sites.map(w=>{let N=g(w);if(!N)return null;let P=N.module,L={key:`t4_${P}`,name:w.name,type:4,api:`${C}/api/${encodeURIComponent(P)}`,searchable:w.searchable??1,quickSearch:w.quickSearch??0,filterable:w.filterable??1};return w.ext!==void 0&&w.ext!==null&&w.ext!==""&&(L.ext=w.ext),L}).filter(Boolean);return{sites_count:R.length,sites:R,color:v.color||[]}},y=async(x,v)=>{let C=await A(x),R=Zw(x).replace(/\/$/,""),w=u(x),N=C.video.sites.map(P=>{let L=g(P);if(!L)return null;let M=L.module;return{module:M,name:P.name,scriptUrl:_lt(R,M,w),t4ApiUrl:Elt(R,M,w)}}).filter(Boolean);v.send(vlt(N))};p.get("/config",async function(x,v){let C=await A(x);C.video.danmuSearchUrl=`http://127.0.0.1:${x.server.address().port}/website/danmu/fe`,v.send(C)}),p.get("/t4",b),p.get("/uz",y),p.get("/full-config",m)}),t.get("/danmu-proxy",async(p,m)=>{try{let A=String(p.query?.format||"").toLowerCase()==="json",g=(J=200)=>{if(A){m.code(J).send({success:!1,comments:[],count:0,match:null});return}m.code(J).header("Content-Type","application/xml"),m.send('<?xml version="1.0" encoding="UTF-8"?><i/>')},b=await SM(p.server);if(!b?.autoPush){g();return}let{name:y,episodeNumber:x,originalName:v}=p.query,C=String(v||"").trim(),R=String(y||"").trim()||sA(C)||C,w=b.debug||!1;w&&(console.log("=== \u5F39\u5E55\u5339\u914D\u8C03\u8BD5\u4FE1\u606F ==="),console.log("\u4F20\u5165\u53C2\u6570:"),console.log(" - \u89C6\u9891\u540D\u79F0:",R||"(\u672A\u63D0\u4F9B)"),console.log(" - \u539F\u59CB\u540D\u79F0:",C||"(\u672A\u63D0\u4F9B)"),console.log(" - \u96C6\u6570:",x),console.log("\u914D\u7F6E\u7684\u5F39\u5E55\u6E90\u6570\u91CF:",b.urls.length));let N=1,L=(C||R).match(/第([一二三四五六七八九十\d]+)å­£/);if(L){let J=L[1];N={\u4E00:1,\u4E8C:2,\u4E09:3,\u56DB:4,\u4E94:5,\u516D:6,\u4E03:7,\u516B:8,\u4E5D:9,\u5341:10}[J]||parseInt(J)||1,w&&console.log("\u68C0\u6D4B\u5230\u5B63\u6570\u4FE1\u606F:",`\u7B2C${N}\u5B63`)}let M=`S${N}`,k=!x||x==="0",B=R;!k&&x&&(B=`${R} ${M}E${x}`),w&&console.log("\u6784\u9020\u7684\u6587\u4EF6\u540D:",B);let Z=async(J,se,oe)=>{w&&(console.log(` -\u6B63\u5728\u8BF7\u6C42\u5F39\u5E55\u6E90: ${J.name||J.address}`),console.log(`\u8BF7\u6C42URL: ${J.address}/api/v2/match`),console.log(`\u8BF7\u6C42\u9636\u6BB5: ${oe}`),console.log(`\u8BF7\u6C42\u6570\u636E: { fileName: "${se}" }`));let ue=await Ae.post(`${J.address}/api/v2/match`,{fileName:se},{headers:{"Content-Type":"application/json"},timeout:1e4});if(w&&(console.log(` -${J.name||J.address} \u8FD4\u56DE\u7ED3\u679C:`),console.log(" - \u5339\u914D\u6210\u529F:",ue.data?.success),console.log(" - \u662F\u5426\u5339\u914D:",ue.data?.isMatched),console.log(" - \u5339\u914D\u6761\u6570:",ue.data?.matches?.length||0)),ue.data?.success&&ue.data?.isMatched&&ue.data?.matches?.length>0){let Ce=ue.data.matches[0];return w&&(console.log(" - \u5339\u914D\u7ED3\u679C:"),console.log(" * \u96C6\u6570ID:",Ce.episodeId),console.log(" * \u96C6\u6570\u6807\u9898:",Ce.episodeTitle),console.log(" * \u52A8\u753B\u6807\u9898:",Ce.animeTitle)),{url:J,match:Ce,score:100}}return null},W=b.urls.map(async J=>{try{let se=await Z(J,B,"episode-aware");return!se&&!k&&x&&(w&&console.log(` - \u5206\u96C6\u5339\u914D\u5931\u8D25\uFF0C\u964D\u7EA7\u4EC5\u6807\u9898\u91CD\u8BD5: ${R}`),se=await Z(J,R,"title-only-fallback")),!se&&w&&console.log(" - \u672A\u627E\u5230\u7CBE\u786E\u5339\u914D"),se}catch(se){return w&&(console.log(` -${J.name||J.address} \u8BF7\u6C42\u5931\u8D25:`),console.log(" - \u9519\u8BEF\u4FE1\u606F:",se.message),se.response&&(console.log(" - \u54CD\u5E94\u72B6\u6001\u7801:",se.response.status),console.log(" - \u54CD\u5E94\u6570\u636E:",JSON.stringify(se.response.data)))),null}}),V=(await Promise.all(W)).filter(J=>J!==null);w&&console.log(` -\u5339\u914D\u7ED3\u679C\u6C47\u603B: \u5171 ${V.length} \u4E2A\u6709\u6548\u7ED3\u679C`);let j=null;if(V.length>0){let J=V[0];w&&(console.log("\u9009\u62E9\u7684\u5F39\u5E55\u6E90:",J.url.name||J.url.address),console.log("\u9009\u62E9\u7684\u96C6\u6570:",J.match.episodeTitle)),j={url:`${J.url.address}/api/v2/comment/${J.match.episodeId}?withRelated=true&chConvert=1`,sourceName:J.url.name||"\u5F39\u5E55\u6E90",episodeTitle:J.match.episodeTitle,match:{animeTitle:J.match.animeTitle||"",episodeTitle:J.match.episodeTitle||"",episodeId:J.match.episodeId||"",sourceName:J.url.name||"\u5F39\u5E55\u6E90"}},messageToDart({action:"toast",opt:{message:`\u5339\u914D\u5230 ${j.episodeTitle} - \u5F39\u5E55\u89E3\u6790\u4E2D......`,duration:3}})}else w&&console.log(` +`}catch{return""}},_mt=t=>{let e=String(t||"").trim();return e.toLowerCase().endsWith(".js")?e.slice(0,-3):e},Emt=(t,e={})=>{let r=Object.entries(e).filter(([,n])=>n!=null&&n!=="").map(([n,s])=>`${encodeURIComponent(n)}=${encodeURIComponent(String(s))}`).join("&");return r?`${t}${t.includes("?")?"&":"?"}${r}`:t},vmt=(t,e,r={})=>Emt(`${t}/api/${encodeURIComponent(e)}`,{filter:!0,...r}),Smt=(t,e,r={})=>Emt(`${t}/uz.js`,{...r,key:e}),s4r=()=>{let t=[_R.default.resolve(process.cwd(),"src/assets/uz.js"),_R.default.resolve(process.cwd(),"nodejs/src/assets/uz.js"),_R.default.resolve(process.cwd(),"dist/assets/uz.js"),_R.default.resolve(process.cwd(),"nodejs/dist/assets/uz.js")],e=t.find(r=>Fde.default.existsSync(r));if(!e)throw new Error(`uz.js asset not found: ${t.join(", ")}`);return e},Imt=()=>n4r()||Fde.default.readFileSync(s4r(),"utf8"),Cmt=t=>({vod:t.map(e=>({key:e.module,name:e.name,api:e.scriptUrl,webSite:e.t4ApiUrl,version:1,type:101}))});var i4r=new Set(["0","false","no","off"]),RM=()=>({username:process.env.CATPAW_DIST_AUTH_USER||"CatPawPlay",password:process.env.CATPAW_DIST_AUTH_PASS||"CatPawPlay"}),NM=()=>{let t=String(process.env.CATPAW_DIST_AUTH||"").trim().toLowerCase();return!i4r.has(t)},ER=(t,e={})=>{let r=e.includePrefix!==!1,s=String(t.headers?.["x-forwarded-host"]||"").split(",")[0].trim()||String(t.headers?.host||"").split(",")[0].trim(),a=String(t.headers?.["x-forwarded-proto"]||"").split(",")[0].trim()||String(t.protocol||"").trim()||(t.socket?.encrypted?"https":"http"),o=r?String(t.server?.prefix||"").replace(/\/$/,""):"";if(s)return`${a}://${s}${o}`;let c=t.server?.address?.();return c?.url?`${String(c.url).replace(/\/$/,"")}${o}`:c?.port?`http://127.0.0.1:${c.port}${o}`:o||""},vR=(t,e,r=null)=>{if(!t)return e;let n=new URL(e,t);return(r?.username||r?.password)&&(n.username=r.username||"",n.password=r.password||""),n.toString()};var W_="/spider",a4r=new Set([".cjs",".mjs",".js"]),Umt=/^[a-z0-9_-]{2,32}$/,Fmt=new Set(["http:","https:"]),TR="nodejs_",qmt="__catpawProfile",o4r=new Set([qmt,"server","embyPlayback"]),c4r=[{url:"/index.js",fileName:"index.js",contentType:"application/javascript; charset=utf-8"},{url:"/index.js.md5",fileName:"index.js.md5",md5Source:"index.js",contentType:"text/plain; charset=utf-8"},{url:"/index.config.js",fileName:"index.config.js",contentType:"application/javascript; charset=utf-8"},{url:"/index.config.js.md5",fileName:"index.config.js.md5",md5Source:"index.config.js",contentType:"text/plain; charset=utf-8"}],SR={key:"",expireAt:0,spiders:[]},Nm={key:"",promise:null},Tmt=new Map,u4r=t=>({...t.query&&typeof t.query=="object"?t.query:{},...t.body&&typeof t.body=="object"?t.body:{}}),qde=(t,e=!1)=>{if(t==null||t==="")return e;let r=String(t).trim().toLowerCase();return["1","true","yes","on"].includes(r)?!0:["0","false","no","off"].includes(r)?!1:e},l4r=(t,e={})=>{if(t==null||t==="")return e;if(typeof t=="object")return t;try{let r=Buffer.from(String(t),"base64").toString("utf8");return JSON.parse(r)}catch{try{return JSON.parse(String(t))}catch{return e}}},d4r=t=>{let e={},n=String(t.headers?.["x-forwarded-host"]||"").split(",")[0].trim()||String(t.headers?.host||"").split(",")[0].trim(),i=String(t.headers?.["x-forwarded-proto"]||"").split(",")[0].trim()||String(t.protocol||"").trim();return n&&(e.host=n,e["x-forwarded-host"]=n),i&&(e["x-forwarded-proto"]=i),Object.keys(e).length>0?e:void 0},f4r=t=>{let e=String(t||"").trim().replace(/\/+$/,""),r=e.match(/^\/spider\/([^/]+)\/(\d+)(?:\/.*)?$/);return r?{spiderKey:decodeURIComponent(r[1]),spiderType:Number(r[2]),apiBase:e}:null},p4r=t=>{let e=String(t||"").trim();return e.toLowerCase().startsWith(TR)?e.slice(TR.length):e},jmt=(t,e,r)=>{!r||Number(r.spiderType)!==3||e.map(n=>String(n||"").trim()).filter(Boolean).forEach(n=>{t.set(n.toLowerCase(),r)})},m4r=t=>{let e=new Map;return t.forEach(r=>{let n=String(r?.meta?.key||"").trim(),s=Number(r?.meta?.type||0);if(!n||s!==3||r?.meta?.hidden)return;let i={spiderKey:n,spiderType:s,apiBase:`${W_}/${encodeURIComponent(n)}/${s}`};jmt(e,[n,`${TR}${n}`],i)}),e},wmt=(t,e)=>{let r=String(e||"").trim();if(!r)return null;let n=r.toLowerCase(),s=n.startsWith(TR)?n.slice(TR.length):n;return t.get(n)||t.get(s)||null},h4r=t=>{let[e,r]=String(t||"").split(/\s+/,2);if(e?.toLowerCase()!=="basic"||!r)return null;let n="";try{n=Buffer.from(r,"base64").toString("utf8")}catch{return null}let s=n.indexOf(":");return s<0?null:{username:n.slice(0,s),password:n.slice(s+1)}},g4r=(t,e)=>{let r=h4r(t.headers?.authorization),n=RM();return r?.username===n.username&&r?.password===n.password?!0:(e.code(401).header("WWW-Authenticate",'Basic realm="CatPaw dist"').send("Authentication required"),!1)},y4r=t=>$s.default.resolve(process.cwd(),"dist",t),Qmt=t=>Object.prototype.toString.call(t)==="[object Object]",zde=(t,e={})=>{try{return JSON.parse(JSON.stringify(t??e))}catch{return e}},A4r=t=>JSON.stringify(t,null,2).replace(/^(\s*)"([A-Za-z_$][\w$]*)":/gm,"$1$2:"),x4r=async t=>{try{let e=await t.getData("/");return Qmt(e)?e:{}}catch{return{}}},b4r=t=>{let e={};return Object.entries(Qmt(t)?t:{}).forEach(([r,n])=>{o4r.has(r)||(e[r]=zde(n,n))}),e},_4r=async({db:t,config:e})=>{let r=await x4r(t),n=b4r(r),s={...zde(e,{}),...zde(n,{})};return delete s.server,Object.keys(n).length>0&&(s[qmt]=n),["var index_config = {"," server: {}, //\u8FD9\u91CC\u4E0D\u8981\u52A8\uFF0C\u52A0\u7A7A\u683C\u90FD\u4E0D\u884C\uFF0C\u540E\u53F0\u81EA\u52A8\u751F\u6210",A4r(s).replace(/^\{\n?/,"").replace(/\n?\}$/,""),"};",'if (typeof module !== "undefined" && module.exports) module.exports = index_config;',""].join(` +`)},E4r=async(t,e,r)=>(t.md5Source||t.fileName)!=="index.config.js"?e:Buffer.from(await _4r(r),"utf8"),v4r=async(t,e,r,n)=>{if(g4r(e,r))try{let s=t.md5Source||t.fileName,i=await M_.default.readFile(y4r(s)),a=await E4r(t,i,n),o=t.md5Source?(0,DM.createHash)("md5").update(a).digest("hex"):a;r.header("Content-Type",t.contentType).send(o)}catch(s){if(s?.code==="ENOENT"){r.code(404).send({error:`dist artifact not found: ${t.fileName}`,hint:"\u8BF7\u5148\u5728 nodejs \u76EE\u5F55\u8FD0\u884C npm run build \u6216 npm run build:dbg"});return}throw s}},jde=(t,e=!1)=>{if(t==null||t==="")return e;let r=String(t).trim().toLowerCase();return["1","true","yes","on"].includes(r)?!0:["0","false","no","off"].includes(r)?!1:e},Qde=(t,e=0)=>{let r=Number.parseInt(t,10);return Number.isFinite(r)?r:e},S4r=t=>{let e=String(t||"").trim();if(!e)return"";try{let r=new URL(e);return Fmt.has(r.protocol)?(r.hash="",r.href):""}catch{return""}},Rmt=t=>{let r=(Array.isArray(t)?t:typeof t=="string"?t.split(/[\r\n,;]/):[]).map(n=>S4r(n)).filter(Boolean);return[...new Set(r)]},Hde=(t,e,r)=>{if(!Number.isFinite(e)||e<=0)return t;let n;return Promise.race([t,new Promise((s,i)=>{n=setTimeout(()=>i(new Error(r)),e)})]).finally(()=>clearTimeout(n))},I4r=async t=>{try{let e=await M_.default.stat(t);return`${e.mtimeMs}-${e.size}`}catch{return"0"}},Hmt=(t={})=>{let e=t.customSpiders||{},r=process.env.NODE_PATH||"/data",n=typeof e.dir=="string"?e.dir.trim():"",s=Rmt(process.env.CATPAW_CUSTOM_SPIDER_URLS),i=Rmt(e.urls),a=s.length>0?s:i,o=process.env.CATPAW_CUSTOM_SPIDER_DIR||n||$s.default.join(r,"custom-spiders");return{enabled:jde(process.env.CATPAW_CUSTOM_SPIDER_ENABLED,e.enabled??!0),strict:jde(process.env.CATPAW_CUSTOM_SPIDER_STRICT,e.strict??!1),allowOverride:jde(process.env.CATPAW_CUSTOM_SPIDER_ALLOW_OVERRIDE,e.allowOverride??!1),cacheTtlMs:Math.max(0,Qde(process.env.CATPAW_CUSTOM_SPIDER_CACHE_TTL_MS,e.cacheTtlMs??5e3)),factoryTimeoutMs:Math.max(0,Qde(process.env.CATPAW_CUSTOM_SPIDER_FACTORY_TIMEOUT_MS,e.factoryTimeoutMs??1e4)),urlTimeoutMs:Math.max(1e3,Qde(process.env.CATPAW_CUSTOM_SPIDER_URL_TIMEOUT_MS,e.urlTimeoutMs??1e4)),dir:$s.default.resolve(o),urls:a}},Nmt=(t,e)=>{let n=`[custom-spider:${$s.default.basename(e)}]`,s=Object.freeze({info:(...i)=>console.log(n,...i),warn:(...i)=>console.warn(n,...i),error:(...i)=>console.error(n,...i),debug:(...i)=>console.debug(n,...i)});return Object.freeze({http:Object.freeze({axios:he,req:fe,create:(i={})=>he.create(i)}),cheerio:Object.freeze({load:De}),utils:Object.freeze({extractTitle:$y,findEpisodeNumber:xR,firstSuccessfulUrl:Zn}),logger:s,app:Object.freeze({spiderPrefix:W_,nodePath:process.env.NODE_PATH||"."})})},C4r=async t=>{try{return(await M_.default.readdir(t,{withFileTypes:!0})).filter(r=>r.isFile()).map(r=>$s.default.join(t,r.name)).filter(r=>a4r.has($s.default.extname(r).toLowerCase())).sort((r,n)=>r.localeCompare(n))}catch(e){if(e?.code==="ENOENT")return[];throw e}},kM=t=>{if(typeof t=="string")return t;if(Buffer.isBuffer(t))return t.toString("utf8");if(t==null)return"";try{return JSON.stringify(t)}catch{return String(t)}},PM=new Map,Yde=t=>String(t||"").trim(),T4r=t=>{let e=kM(t);if(!e)return"";let r=e.split(/\r?\n/,80);for(let n of r){let s=String(n||"").trim();if(!s)continue;let i=s.match(/^(?:\/\/+|\/\*+|\*+)?\s*@name(?:\s*[::])?\s+(.+?)\s*$/i);if(!i?.[1])continue;let a=i[1].replace(/\*\/\s*$/,"").trim();if(a)return a}return""},Gmt=(t,e)=>{let r=Yde(t);if(!r)return"";let n=T4r(e);return n?(PM.set(r,n),n):(PM.delete(r),"")},zmt=t=>{let e=Yde(t);return e?String(PM.get(e)||"").trim():""},Omt={axios:he,cheerio:JD,"crypto-js":Wmt.default,dayjs:$mt.default,qs:Vde.default},w4r=(t,e)=>{let r=n=>n==="omnibox_sdk"?{request:async(s,i={})=>{let a=String(i.method||"GET").toUpperCase(),o=i.headers||{},c=i.body;c&&typeof c=="object"&&!Buffer.isBuffer(c)&&String(o["Content-Type"]||o["content-type"]||"").toLowerCase().includes("application/json")&&(c=JSON.stringify(c));let u=await he.request({url:s,method:a,headers:o,data:c,timeout:i.timeout,validateStatus:()=>!0});return{statusCode:u.status,body:kM(u.data)}},log:(s,...i)=>{let a=i.map(o=>typeof o=="string"?o:kM(o)).join(" ");return s==="error"?console.error(a):s==="warn"||s==="warning"?console.warn(a):console.log(a)},getSourceId:async()=>"builtin",processScraping:async(s,i,a,o=[])=>{let c=String(s||"");return Tmt.set(c,{scrapeData:null,scrapeType:"",videoMappings:[]}),{ok:!1,unsupported:!0,count:Array.isArray(o)?o.length:0}},getScrapeMetadata:async s=>{let i=String(s||"");return Tmt.get(i)||null}}:n==="spider_runner"?{run:()=>{}}:Omt[n]?Omt[n]:t(n);return r.resolve=t.resolve?.bind(t),r.main={filename:e},r},Kmt=(t,e)=>{let r=String(t?.message||""),n=r.includes("require is not defined")||r.includes("module is not defined")||r.includes("exports is not defined"),s=/(?:^|\W)module\.exports(?:\W|$)|(?:^|\W)exports\.[A-Za-z_$][\w$]*|(?:^|\W)require\s*\(/m.test(e);return n||s},Vmt=(t,e,r="")=>{let n={exports:{}},s=r||(0,Kde.pathToFileURL)($s.default.resolve(process.cwd(),".custom-spider-runtime.cjs")).href,i=(0,Mmt.createRequire)(s),a=w4r(i,e);return new Function("require","module","exports","__filename","__dirname",t)(a,n,n.exports,e,$s.default.dirname(e)),{default:n.exports}},R4r=async(t,e)=>{let r=await he.get(t,{responseType:"text",timeout:e,transformResponse:[a=>a],validateStatus:()=>!0});if(r.status>=400)throw new Error(`[custom-spider] \u8FDC\u7A0B\u63D2\u4EF6\u62C9\u53D6\u5931\u8D25(${r.status}): ${t}`);let n=kM(r.data);Gmt(t,n);let s=(0,DM.createHash)("sha1").update(n).digest("hex").slice(0,12),i=`data:text/javascript;charset=utf-8,${encodeURIComponent(n)}`;try{return await import(`${i}#${s}`)}catch(a){if(!Kmt(a,n))throw a;let o;try{let c=new URL(t),u=$s.default.basename(c.pathname)||`remote-${s}.js`;o=$s.default.resolve(process.cwd(),".remote-custom-spiders",u)}catch{o=$s.default.resolve(process.cwd(),".remote-custom-spiders",`remote-${s}.js`)}return Vmt(n,o)}},N4r=async t=>{let e=Yde(t),r="",n=!1;try{r=await M_.default.readFile(t,"utf8"),n=!0,Gmt(e,r)}catch{PM.delete(e)}let s=(0,Kde.pathToFileURL)(t);s.searchParams.set("v",await I4r(t));try{return await import(s.href)}catch(i){if($s.default.extname(t).toLowerCase()!==".js")throw i;let o=n?r:await M_.default.readFile(t,"utf8");if(!Kmt(i,o))throw i;return Vmt(o,t,s.href)}},kmt=t=>!!t&&typeof t=="object"&&typeof t.api=="function",Pmt=t=>!t||typeof t!="object"||typeof t.api=="function"?!1:["home","category","detail","search","play"].some(r=>typeof t[r]=="function"),O4r=t=>{let e=String(t||"");if(!e.includes("%"))return e;try{return decodeURIComponent(e)}catch{return e}},BM=t=>{let e=String(t||"").trim();if(!e)return"";try{let r=new URL(e);if(Fmt.has(r.protocol)){let n=$s.default.parse($s.default.basename(r.pathname||"")).name;return O4r(n)}}catch{}return $s.default.parse(e).name},k4r=t=>{let e=BM(t),r=String(e).trim().toLowerCase().replace(/[^a-z0-9_-]/g,"");return Umt.test(r)?r:`omni_${(0,DM.createHash)("sha1").update(t).digest("hex").slice(0,10)}`},P4r=t=>{if(!t||typeof t!="object"||t.vod_play_from&&t.vod_play_url)return t;let e=Array.isArray(t.vod_play_sources)?t.vod_play_sources:[];if(e.length===0)return t;let r=[],n=[];return e.forEach((s,i)=>{let a=String(s?.name||`\u7EBF\u8DEF${i+1}`).trim()||`\u7EBF\u8DEF${i+1}`,c=(Array.isArray(s?.episodes)?s.episodes:[]).map((u,l)=>{let d=String(u?.name||`\u64AD\u653E${l+1}`).trim()||`\u64AD\u653E${l+1}`,f=String(u?.playId||u?.url||u?.id||"").trim();return f?`${d}$${f}`:""}).filter(Boolean);c.length>0&&(r.push(a),n.push(c.join("#")))}),r.length===0||n.length===0?t:{...t,vod_play_from:r.join("$$$"),vod_play_url:n.join("$$$")}},OM=t=>t&&typeof t=="object"?t:{list:[]},Dmt=t=>{let e=OM(t),r=Array.isArray(e.list)?e.list:[];return{...e,list:r.map(n=>P4r(n))}},D4r=(t,e="")=>{if(t&&typeof t=="object"){let r=String(t.url||"").trim();if(r)return{...t,parse:t.parse??0,url:r,header:t.header||{}};let n=Array.isArray(t.urls)?t.urls:[];if(n.length>0){let s=n[0]||{},i=String(s.url||s.playId||s.id||"").trim();if(i)return{parse:t.parse??0,url:i,header:t.header||{}}}if(t.parse!==void 0)return{parse:t.parse??0,url:"",header:t.header||{}}}return typeof t=="string"&&t.trim()?{parse:0,url:t.trim()}:{parse:1,url:String(e||"")}},B4r=(t,e)=>{let r=t.meta||t.META||{},n=Number(r.type),s=Number.isInteger(n)&&n>=0&&n<50?n:3,i=String(r.key||"").trim()||k4r(e),a=zmt(e),o=String(r.name||"").trim()||a||BM(e)||i,c=async(u,l)=>{if(typeof u!="function")return{};let d=await u(l||{});return d===void 0?{}:d};return{meta:{key:i,name:o,type:s},api:async u=>{u.post("/init",async()=>({})),u.post("/home",async l=>{let d=await c(t.home,{filter:l.body?.filter??!1});return OM(d)}),u.post("/category",async l=>{let d=l.body||{},f=await c(t.category,{categoryId:d.id,id:d.id,page:d.page??1,filters:d.filters||{},filter:d.filter??!1});return OM(f)}),u.post("/detail",async l=>{let d=l.body?.id;if(Array.isArray(d)){let p=[];for(let m of d){let h=await c(t.detail,{videoId:m,id:m}),y=Dmt(h);Array.isArray(y.list)&&p.push(...y.list)}return{list:p}}let f=await c(t.detail,{videoId:d,id:d});return Dmt(f)}),u.post("/search",async l=>{let d=l.body?.wd??"",f=await c(t.search,{keyword:d,wd:d,page:l.body?.page??1,quick:l.body?.quick??!1});return OM(f)}),u.post("/play",async l=>{let d=l.body?.id??"",f=await c(t.play,{playId:d,id:d,flag:l.body?.flag??""});return D4r(f,d)})}}},L4r=(t,e)=>{let r=typeof t?.createSpider=="function"&&t.createSpider||typeof t?.default?.createSpider=="function"&&t.default.createSpider;if(r)return{mode:"factory",value:r};let n=kmt(t?.default)&&t.default||kmt(t)&&t;if(n)return{mode:"spider",value:n};let s=Pmt(t?.default)&&t.default||Pmt(t)&&t;if(s)return{mode:"omnibox-object",value:s};let i=typeof t?.default=="function"&&t.default||typeof t=="function"&&t;if(i)return{mode:"callable",value:i};throw new Error(`${e} \u7F3A\u5C11 createSpider(ctx) / spider \u5BF9\u8C61 / omnibox \u5BF9\u8C61 / legacy register \u5BFC\u51FA`)},M4r=t=>{let e=String(t?.message||"");return e?e.includes("spider \u5FC5\u987B\u662F\u5BF9\u8C61")||e.includes("spider.api \u5FC5\u987B\u662F\u51FD\u6570")||e.includes("spider.check \u5FC5\u987B\u662F\u51FD\u6570")||e.includes("is not a function")||e.includes("Cannot read properties of undefined")||e.includes("Cannot set properties of undefined"):!1},W4r=(t,e)=>{let r=String(t?.meta?.key||"").trim(),n=String(t?.meta?.api||"").trim(),s=BM(e),i=[];r&&i.push(r);let a=n.match(/\/([a-zA-Z0-9_-]+)$/);a?.[1]&&i.push(a[1]),s&&i.push(s);for(let o of i){let c=String(o).trim().toLowerCase().replace(/[^a-z0-9_-]/g,"");if(Umt.test(c))return{key:c,from:o}}return null},$4r=t=>{if(!t||typeof t!="object"||Object.keys(t).length===0)return"";try{return Buffer.from(JSON.stringify(t),"utf8").toString("base64")}catch{return""}},IR=async(t,e,r)=>{let n,a=await t({query:r,server:e},{send(o){return n=o,o}});return a===void 0?n:a},U4r=async(t,e)=>{let r=[],n={get(l,d){r.push({method:"get",routePath:l,handler:d})},post(l,d){r.push({method:"post",routePath:l,handler:d})},put(l,d){r.push({method:"put",routePath:l,handler:d})},delete(l,d){r.push({method:"delete",routePath:l,handler:d})}},s={sites:[]};await Promise.resolve(t(n,s));let i=Array.isArray(s.sites)?s.sites:[];if(i.length===0)throw new Error(`${e} legacy register \u672A\u901A\u8FC7 opt.sites \u66B4\u9732 meta`);i.length>1&&console.warn(`[custom-spider] legacy register \u4EC5\u517C\u5BB9\u9996\u4E2A site: ${$s.default.basename(e)}`);let a=i[0]||{},o=String(a.api||"").trim(),c=o?r.find(l=>l.routePath===o):null;if(o&&!c){let l=r.map(d=>d.routePath).join(", ");throw new Error(`${e} legacy register meta.api(${o}) \u672A\u5339\u914D\u5DF2\u6CE8\u518C\u8DEF\u7531: ${l||"(none)"}`)}let u=c;if(!u)if(r.length===1)u=r[0];else{let l=r.map(d=>d.routePath).join(", ");throw new Error(`${e} legacy register \u8DEF\u7531\u4E0D\u660E\u786E\uFF0C\u8BF7\u63D0\u4F9B\u53EF\u5339\u914D\u7684 meta.api\uFF0C\u5F53\u524D\u8DEF\u7531: ${l||"(none)"}`)}if(!u||typeof u.handler!="function")throw new Error(`${e} legacy register \u672A\u6CE8\u518C\u6709\u6548\u8DEF\u7531`);return{meta:{key:a.key,name:a.name,type:a.type},api:async l=>{l.post("/init",async()=>({})),l.post("/home",async d=>IR(u.handler,d.server,{filter:d.body?.filter??!1})),l.post("/category",async d=>{let f=d.body||{},p={ac:"detail",t:f.id,pg:f.page??1,filter:f.filter??!1},m=$4r(f.filters);return m&&(p.ext=m),IR(u.handler,d.server,p)}),l.post("/detail",async d=>{let f=d.body?.id,p=Array.isArray(f)?f.join(","):f;return IR(u.handler,d.server,{ac:"detail",ids:p})}),l.post("/search",async d=>IR(u.handler,d.server,{wd:d.body?.wd??"",pg:d.body?.page??1,quick:d.body?.quick??!1})),l.post("/play",async d=>IR(u.handler,d.server,{play:d.body?.id??"",flag:d.body?.flag??"",parser:d.body?.parser??""}))}}},CR=(t,e)=>{if(!t||typeof t!="object")throw new Error(`${e} spider \u5FC5\u987B\u662F\u5BF9\u8C61`);if(typeof t.api!="function")throw new Error(`${e} spider.api \u5FC5\u987B\u662F\u51FD\u6570`);if(t.check&&typeof t.check!="function")throw new Error(`${e} spider.check \u5FC5\u987B\u662F\u51FD\u6570`);let r=W4r(t,e);if(!r)throw new Error(`${e} meta.key \u4E0D\u5408\u6CD5`);let n=r.key,s=zmt(e),i=String(t.meta?.name||"").trim()||s||BM(e)||n,a=Number(t.meta?.type);if(!i)throw new Error(`${e} meta.name \u4E0D\u80FD\u4E3A\u7A7A`);if(!Number.isInteger(a)||a<0||a>=50)throw new Error(`${e} meta.type \u5FC5\u987B\u662F 0-49 \u7684\u6574\u6570`);let o=String(t.meta?.key||"").trim();return o&&o!==n&&console.log(`[custom-spider] key \u517C\u5BB9\u4FEE\u6B63: ${o} -> ${n}`),{...t,meta:{...t.meta,key:n,name:i,type:a,custom:!0}}},F4r=(t,e=!1)=>{let r=[],n=new Map;return t.forEach(s=>{let i=`${s.meta.key}:${s.meta.type}`;if(!n.has(i)){n.set(i,r.length),r.push(s);return}if(e&&s.meta?.custom){console.warn(`[custom-spider] override: ${i}`),r[n.get(i)]=s;return}console.warn(`[custom-spider] duplicate ignored: ${i}`)}),r},q4r=async t=>{let e=Hmt(t.config);if(!e.enabled)return[];let r=`${e.dir}|${e.urls.join(",")}|${e.urlTimeoutMs}|${e.strict}|${e.cacheTtlMs}|${e.factoryTimeoutMs}`,n=Date.now();if(e.cacheTtlMs>0&&SR.key===r&&SR.expireAt>n)return SR.spiders;if(Nm.promise&&Nm.key===r)return Nm.promise;Nm.key=r,Nm.promise=(async()=>{let s=await C4r(e.dir),i=e.urls;if(s.length===0&&i.length===0)return SR={key:r,expireAt:e.cacheTtlMs>0?Date.now()+e.cacheTtlMs:0,spiders:[]},[];s.length>0&&console.log(`[custom-spider] \u53D1\u73B0 ${s.length} \u4E2A\u672C\u5730\u63D2\u4EF6: ${s.map(l=>$s.default.basename(l)).join(", ")}`),i.length>0&&console.log(`[custom-spider] \u53D1\u73B0 ${i.length} \u4E2A\u8FDC\u7A0B\u63D2\u4EF6: ${i.join(", ")}`);let a=[...s.map(l=>({id:l,display:$s.default.basename(l),load:()=>N4r(l)})),...i.map(l=>({id:l,display:l,load:()=>R4r(l,e.urlTimeoutMs)}))],o=await Promise.allSettled(a.map(async l=>{let d=await l.load(),f=L4r(d,l.id);if(f.mode==="spider")return console.log(`[custom-spider] \u517C\u5BB9\u6A21\u5F0F\u52A0\u8F7D: ${l.display} (legacy spider export)`),CR(f.value,l.id);if(f.mode==="omnibox-object"){console.log(`[custom-spider] \u517C\u5BB9\u6A21\u5F0F\u52A0\u8F7D: ${l.display} (omnibox object export)`);let h=B4r(f.value,l.id);return CR(h,l.id)}if(f.mode==="callable"){let h=Nmt(t,l.id);try{let y=await Hde(Promise.resolve(f.value(h)),e.factoryTimeoutMs,`[custom-spider] createSpider \u8D85\u65F6: ${l.id}`);return CR(y,l.id)}catch(y){if(!M4r(y))throw y;console.log(`[custom-spider] \u517C\u5BB9\u6A21\u5F0F\u52A0\u8F7D: ${l.display} (legacy register export)`);let g=await Hde(U4r(f.value,l.id),e.factoryTimeoutMs,`[custom-spider] legacy register \u9002\u914D\u8D85\u65F6: ${l.id}`);return CR(g,l.id)}}let p=Nmt(t,l.id),m=await Hde(Promise.resolve(f.value(p)),e.factoryTimeoutMs,`[custom-spider] createSpider \u8D85\u65F6: ${l.id}`);return CR(m,l.id)})),c=[],u=[];if(o.forEach((l,d)=>{l.status==="fulfilled"?c.push(l.value):(u.push(a[d].display),console.error(`[custom-spider] \u52A0\u8F7D\u5931\u8D25: ${a[d].display}`,l.reason))}),e.strict&&u.length>0)throw new Error(`[custom-spider] strict \u6A21\u5F0F: ${u.length} \u4E2A\u63D2\u4EF6\u52A0\u8F7D\u5931\u8D25`);return c.length>0&&console.log(`[custom-spider] \u6210\u529F\u52A0\u8F7D ${c.length} \u4E2A\u63D2\u4EF6`),SR={key:r,expireAt:e.cacheTtlMs>0?Date.now()+e.cacheTtlMs:0,spiders:c},c})();try{return await Nm.promise}finally{Nm.key===r&&(Nm={key:"",promise:null})}},Bmt=async t=>{let e=[E0t,Nft,Llt],r=[Blt,qct,Vut,jct,Qct,Hct,Yut,I$e,Gct,zct,zut,Kut,s0t,Adt,jut,Sdt,Rdt,flt,glt,Qlt,vut,Yct,Xct,rut,sut,Gut,out,uut,omt,U0t,Ldt,Ydt,lpt,vpt,qft,Mft,Wft,Rft,Sft,Hpt,t0t,Yft,ppt,yft,hpt,Rpt,Wpt,ept,Olt];(await wde(t)).forEach(o=>{r.push(Nde(o.name,o.address))}),(await Bde(t)).forEach(o=>{r.push(Wde(o.name,o.address))});let i=await q4r(t);r.push(...i),r.push(...e);let{allowOverride:a}=Hmt(t.config);return F4r(r,a)},Lmt=(t,e,r)=>{r<10?t.video.sites.push(e):r>=10&&r<20?t.read.sites.push(e):r>=20&&r<30?t.comic.sites.push(e):r>=30&&r<40?t.music.sites.push(e):r>=40&&r<50&&t.pan.sites.push(e)},j4r=async(t,e)=>{(await mR(e).catch(()=>[])).filter(n=>n?.id&&n?.host&&n?.username).forEach(n=>{t.video.sites.push({key:`nodejs_emby_${n.id}`,name:`\u300C\u76F4\u300D${n.name||"Emby"}`,type:3,api:`${W_}/emby/3/server/${encodeURIComponent(n.id)}`})})},Q4r=async(t,e)=>{(await hR(e).catch(()=>[])).filter(n=>n?.id&&n?.server).forEach(n=>{t.video.sites.push({key:`nodejs_alist_${n.id}`,name:`\u300C\u76F4\u300D${n.name||"Alist"}`,type:3,api:`${W_}/alist-video/3/server/${encodeURIComponent(n.id)}`})})},Gde={};async function Jde(t,{db:e,config:r}){t.hasContentTypeParser("application/x-www-form-urlencoded")||t.addContentTypeParser("application/x-www-form-urlencoded",{parseAs:"string"},(p,m,h)=>{h(null,Vde.default.parse(String(m||"")))});let n=await Bmt({db:e,config:r}),s=m4r(n),i=new Map(s),a=async()=>null;n.forEach(p=>{let m=W_+"/"+p.meta.key+"/"+p.meta.type;t.register(p.api,{prefix:m});try{let h=p.check?.(t);h&&typeof h.then=="function"&&h.catch(y=>console.error(`[spider-check] ${p.meta.key} failed:`,y))}catch(h){console.error(`[spider-check] ${p.meta.key} failed:`,h)}console.log("Register spider: "+m)});let o=(p,m,h,y={})=>qy(t,m.spiderKey,m.spiderType,h,y,{apiBase:m.apiBase,headers:d4r(p)}),c=async(p,m)=>{let h=_mt(m),y=wmt(i,h);return y||(await a(p),y=wmt(i,h)),{module:h,spider:y}},u=p=>{let m=p.query?.token;return m==null||m===""?{}:{token:m}},l=async(p,m)=>{m.type("application/javascript; charset=utf-8").send(Imt())},d=async(p,m)=>{let{module:h,spider:y}=await c(p,p.params?.module);if(!y){m.code(404).send({error:"module not found"});return}return l(p,m)},f=async(p,m)=>{let{spider:h}=await c(p,p.params?.module);if(!h){m.code(404).send({error:"module not found"});return}let y=u4r(p);try{if(y.refresh!==void 0){m.send(await o(p,h,"init",{ext:y.extend||y.ext||"",extend:y.extend}));return}if(y.play!==void 0){m.send(await o(p,h,"play",{id:y.play,flag:y.flag,extend:y.extend}));return}if(y.ac==="action"&&y.action!==void 0){m.send(await o(p,h,"action",{action:y.action,value:y.value,extend:y.extend}));return}if(y.ac==="detail"&&y.ids!==void 0){m.send(await o(p,h,"detail",{id:y.ids,extend:y.extend}));return}if(y.t!==void 0){m.send(await o(p,h,"category",{id:y.t,page:y.pg||y.page||1,filter:qde(y.filter,!0),filters:l4r(y.ext||y.f,{}),extend:y.extend}));return}if(y.wd!==void 0){m.send(await o(p,h,"search",{wd:y.wd,page:y.pg||y.page||1,quick:qde(y.quick,!1),extend:y.extend}));return}m.send(await o(p,h,"home",{filter:qde(y.filter,!0),extend:y.extend}))}catch(g){p.log?.error?.(g);let b=g?.message||"internal error",x=Number(b.match(/\s(\d{3})$/)?.[1]||500);m.code(x>=400&&x<600?x:500).send({error:b})}};t.get("/uz.js",l),t.get("/api/uz/:module",d),t.route({method:["GET","POST"],url:"/api/:module",handler:f}),t.route({method:["GET","POST"],url:"/api/:version/:kind/:module",handler:f}),NM()&&c4r.forEach(p=>{t.get(p.url,async(m,h)=>v4r(p,m,h,{db:e,config:r}))}),t.register(async p=>{p.get("/check",async function(A,S){S.send({run:!p.stop})});let m=async()=>{let A={video:{sites:[]},read:{sites:[]},comic:{sites:[]},music:{sites:[]},pan:{sites:[]},color:p.config.color||[]},S=await Bmt({db:e,config:r}),I=!1,R=!1,w=[];for(let N of S){let k=Object.assign({},N.meta);if(k.hidden){k.key==="emby"?I=!0:k.key==="alist-video"&&(R=!0);continue}k.api=W_+"/"+k.key+"/"+k.type,k.key="nodejs_"+k.key;let B=N.meta.type;if(k.cms){w.push({meta:k,stype:B});continue}Lmt(A,k,B)}return I&&await j4r(A,{db:e,config:r}),R&&await Q4r(A,{db:e,config:r}),w.forEach(({meta:N,stype:k})=>Lmt(A,N,k)),A},h=async(A,S)=>{let I=await AR(A.server),R=S.video.sites,w={},N={};R.forEach(B=>{N[B.key]=B});let k=[];return I.forEach(B=>{w[B.key]=!0;let M=N[B.key];if(M&&B.enable){let D=typeof B.name=="string"?B.name.trim():"";k.push({...M,name:D||M.name})}}),R.forEach(B=>{w[B.key]||k.push(B)}),S.video.sites=k,S},y=async A=>{let S=await m();return await h(A,S),S},g=A=>{let S=f4r(A.api);if(!S||Number(S.spiderType)!==3)return null;let I=p4r(A.key);return jmt(i,[A.key,I],S),{module:I,ref:S}};a=async A=>{(await y(A)).video.sites.forEach(g)};let b=async A=>{let S=await y(A),I=ER(A).replace(/\/$/,""),R=S.video.sites.map(w=>{let N=g(w);if(!N)return null;let k=N.module,B={key:`t4_${k}`,name:w.name,type:4,api:`${I}/api/${encodeURIComponent(k)}`,searchable:w.searchable??1,quickSearch:w.quickSearch??0,filterable:w.filterable??1};return w.ext!==void 0&&w.ext!==null&&w.ext!==""&&(B.ext=w.ext),B}).filter(Boolean);return{sites_count:R.length,sites:R,color:S.color||[]}},x=async(A,S)=>{let I=await y(A),R=ER(A).replace(/\/$/,""),w=u(A),N=I.video.sites.map(k=>{let B=g(k);if(!B)return null;let M=B.module;return{module:M,name:k.name,scriptUrl:Smt(R,M,w),t4ApiUrl:vmt(R,M,w)}}).filter(Boolean);S.send(Cmt(N))};p.get("/config",async function(A,S){let I=await y(A);I.video.danmuSearchUrl=`http://127.0.0.1:${A.server.address().port}/website/danmu/fe`,S.send(I)}),p.get("/t4",b),p.get("/uz",x),p.get("/full-config",m)}),t.get("/danmu-proxy",async(p,m)=>{try{let y=String(p.query?.format||"").toLowerCase()==="json",g=(J=200)=>{if(y){m.code(J).send({success:!1,comments:[],count:0,match:null});return}m.code(J).header("Content-Type","application/xml"),m.send('<?xml version="1.0" encoding="UTF-8"?><i/>')},b=await IM(p.server);if(!b?.autoPush){g();return}let{name:x,episodeNumber:A,originalName:S}=p.query,I=String(S||"").trim(),R=String(x||"").trim()||$y(I)||I,w=b.debug||!1;w&&(console.log("=== \u5F39\u5E55\u5339\u914D\u8C03\u8BD5\u4FE1\u606F ==="),console.log("\u4F20\u5165\u53C2\u6570:"),console.log(" - \u89C6\u9891\u540D\u79F0:",R||"(\u672A\u63D0\u4F9B)"),console.log(" - \u539F\u59CB\u540D\u79F0:",I||"(\u672A\u63D0\u4F9B)"),console.log(" - \u96C6\u6570:",A),console.log("\u914D\u7F6E\u7684\u5F39\u5E55\u6E90\u6570\u91CF:",b.urls.length));let N=1,B=(I||R).match(/第([一二三四五六七八九十\d]+)å­£/);if(B){let J=B[1];N={\u4E00:1,\u4E8C:2,\u4E09:3,\u56DB:4,\u4E94:5,\u516D:6,\u4E03:7,\u516B:8,\u4E5D:9,\u5341:10}[J]||parseInt(J)||1,w&&console.log("\u68C0\u6D4B\u5230\u5B63\u6570\u4FE1\u606F:",`\u7B2C${N}\u5B63`)}let M=`S${N}`,D=!A||A==="0",L=R;!D&&A&&(L=`${R} ${M}E${A}`),w&&console.log("\u6784\u9020\u7684\u6587\u4EF6\u540D:",L);let Z=async(J,se,oe)=>{w&&(console.log(` +\u6B63\u5728\u8BF7\u6C42\u5F39\u5E55\u6E90: ${J.name||J.address}`),console.log(`\u8BF7\u6C42URL: ${J.address}/api/v2/match`),console.log(`\u8BF7\u6C42\u9636\u6BB5: ${oe}`),console.log(`\u8BF7\u6C42\u6570\u636E: { fileName: "${se}" }`));let ue=await he.post(`${J.address}/api/v2/match`,{fileName:se},{headers:{"Content-Type":"application/json"},timeout:1e4});if(w&&(console.log(` +${J.name||J.address} \u8FD4\u56DE\u7ED3\u679C:`),console.log(" - \u5339\u914D\u6210\u529F:",ue.data?.success),console.log(" - \u662F\u5426\u5339\u914D:",ue.data?.isMatched),console.log(" - \u5339\u914D\u6761\u6570:",ue.data?.matches?.length||0)),ue.data?.success&&ue.data?.isMatched&&ue.data?.matches?.length>0){let Te=ue.data.matches[0];return w&&(console.log(" - \u5339\u914D\u7ED3\u679C:"),console.log(" * \u96C6\u6570ID:",Te.episodeId),console.log(" * \u96C6\u6570\u6807\u9898:",Te.episodeTitle),console.log(" * \u52A8\u753B\u6807\u9898:",Te.animeTitle)),{url:J,match:Te,score:100}}return null},W=b.urls.map(async J=>{try{let se=await Z(J,L,"episode-aware");return!se&&!D&&A&&(w&&console.log(` - \u5206\u96C6\u5339\u914D\u5931\u8D25\uFF0C\u964D\u7EA7\u4EC5\u6807\u9898\u91CD\u8BD5: ${R}`),se=await Z(J,R,"title-only-fallback")),!se&&w&&console.log(" - \u672A\u627E\u5230\u7CBE\u786E\u5339\u914D"),se}catch(se){return w&&(console.log(` +${J.name||J.address} \u8BF7\u6C42\u5931\u8D25:`),console.log(" - \u9519\u8BEF\u4FE1\u606F:",se.message),se.response&&(console.log(" - \u54CD\u5E94\u72B6\u6001\u7801:",se.response.status),console.log(" - \u54CD\u5E94\u6570\u636E:",JSON.stringify(se.response.data)))),null}}),z=(await Promise.all(W)).filter(J=>J!==null);w&&console.log(` +\u5339\u914D\u7ED3\u679C\u6C47\u603B: \u5171 ${z.length} \u4E2A\u6709\u6548\u7ED3\u679C`);let j=null;if(z.length>0){let J=z[0];w&&(console.log("\u9009\u62E9\u7684\u5F39\u5E55\u6E90:",J.url.name||J.url.address),console.log("\u9009\u62E9\u7684\u96C6\u6570:",J.match.episodeTitle)),j={url:`${J.url.address}/api/v2/comment/${J.match.episodeId}?withRelated=true&chConvert=1`,sourceName:J.url.name||"\u5F39\u5E55\u6E90",episodeTitle:J.match.episodeTitle,match:{animeTitle:J.match.animeTitle||"",episodeTitle:J.match.episodeTitle||"",episodeId:J.match.episodeId||"",sourceName:J.url.name||"\u5F39\u5E55\u6E90"}},messageToDart({action:"toast",opt:{message:`\u5339\u914D\u5230 ${j.episodeTitle} - \u5F39\u5E55\u89E3\u6790\u4E2D......`,duration:3}})}else w&&console.log(` \u6240\u6709\u5F39\u5E55\u6E90\u5747\u672A\u5339\u914D\u6210\u529F`);if(j){w&&(console.log(` -=== \u8BF7\u6C42\u5F39\u5E55\u6570\u636E ===`),console.log("\u5F39\u5E55URL:",j.url));let J=await Ae.get(j.url,{timeout:1e4});w&&(console.log("\u5F39\u5E55\u54CD\u5E94\u72B6\u6001:",J.status),console.log("\u5F39\u5E55\u6570\u636E:",J.data?.comments?.length||0,"\u6761"));let se=Array.isArray(J.data?.comments)?J.data.comments.filter(Ce=>Ce?.p&&String(Ce?.m||"").trim()!==""):[],oe=se.length;if(messageToDart({action:"toast",opt:{message:`\u901A\u8FC7 ${j.sourceName} - \u89E3\u6790\u5230 ${oe} \u6761\u5F39\u5E55`,duration:3}}),A){m.send({success:oe>0,comments:se,count:oe,match:j.match});return}let ue=`<?xml version="1.0" encoding="UTF-8"?> +=== \u8BF7\u6C42\u5F39\u5E55\u6570\u636E ===`),console.log("\u5F39\u5E55URL:",j.url));let J=await he.get(j.url,{timeout:1e4});w&&(console.log("\u5F39\u5E55\u54CD\u5E94\u72B6\u6001:",J.status),console.log("\u5F39\u5E55\u6570\u636E:",J.data?.comments?.length||0,"\u6761"));let se=Array.isArray(J.data?.comments)?J.data.comments.filter(Te=>Te?.p&&String(Te?.m||"").trim()!==""):[],oe=se.length;if(messageToDart({action:"toast",opt:{message:`\u901A\u8FC7 ${j.sourceName} - \u89E3\u6790\u5230 ${oe} \u6761\u5F39\u5E55`,duration:3}}),y){m.send({success:oe>0,comments:se,count:oe,match:j.match});return}let ue=`<?xml version="1.0" encoding="UTF-8"?> <i> -`;for(let Ce of se){let we=String(Ce.m).trim();if(we){let qe=we.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'");ue+=` <d p="${Ce.p}">${qe}</d> +`;for(let Te of se){let Ne=String(Te.m).trim();if(Ne){let je=Ne.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'");ue+=` <d p="${Te.p}">${je}</d> `}}ue+="</i>",w&&(console.log("\u8F6C\u6362\u540E\u7684\u5F39\u5E55\u6570\u91CF:",oe),console.log("XML\u6570\u636E\u5927\u5C0F:",ue.length,"\u5B57\u8282"),console.log("XML\u6570\u636E\u9884\u89C8:",ue.substring(0,500)),console.log(`=== \u5F39\u5E55\u5339\u914D\u5B8C\u6210 === `)),m.header("Content-Type","application/xml"),m.send(ue)}else messageToDart({action:"toast",opt:{message:"\u6CA1\u6709\u627E\u5230\u5F39\u5E55\u5466~",duration:3}}),g()}catch(h){console.error(` === \u5F39\u5E55\u5339\u914D\u53D1\u751F\u9519\u8BEF ===`),console.error("\u9519\u8BEF\u7C7B\u578B:",h.name),console.error("\u9519\u8BEF\u4FE1\u606F:",h.message),console.error("\u9519\u8BEF\u5806\u6808:",h.stack),console.error(`========================= -`),messageToDart({action:"toast",opt:{message:"\u6CA1\u6709\u627E\u5230\u5F39\u5E55\u5466~",duration:2}}),String(p.query?.format||"").toLowerCase()==="json"?m.code(500).send({success:!1,error:"Failed to fetch danmu content",comments:[],count:0,match:null}):m.code(500).send({error:"Failed to fetch danmu content"})}}),t.addHook("onSend",(p,m,h,A)=>{if(m.sent||m.raw?.headersSent||!p.url.endsWith("/detail")&&!p.url.endsWith("/play"))return A(null,h);let g=typeof h=="string"?h:Buffer.isBuffer(h)?h.toString():null;if(!g)return A(null,h);SM(p.server).then(b=>{if(!b?.autoPush)return A(null,h);try{if(p.url.endsWith("/detail")){let y=JSON.parse(g),x=Array.isArray(y?.list)?y.list[0]:null;if(!x||typeof x!="object")return A(null,h);let v=String(x.vod_play_from||""),C=String(x.vod_play_url||"");if(!v||!C)return A(null,h);let R=String(x.vod_name||"").trim(),N=String(sA(R)||"").trim()||R;tue={};let P=v.split("$$$").filter(Boolean);return C.split("$$$").filter(Boolean).forEach((L,M)=>{L.split("#").forEach(k=>{let[B,Z]=k.split("$");if(!Z)return;let W=P[M]||`\u7EBF\u8DEF${M+1}`;tue[`${W}_${Z}`]={name:N,originalName:R,episodeNumber:Yw(B)}})}),A(null,h)}if(p.url.endsWith("/play")){let y=JSON.parse(g);if((y.url||y.url?.length||y.urls?.length)&&!y?.extra?.danmaku){let x=p.body||{},v=`${x.flag||""}_${x.id||""}`,C=tue[v];if(C){y.extra||(y.extra={});let R=new URL(`http://127.0.0.1:${p.server.address().port}/danmu-proxy`);return R.searchParams.set("name",C.name),R.searchParams.set("episodeNumber",C.episodeNumber),C.originalName&&R.searchParams.set("originalName",C.originalName),y.extra.danmaku=R.toString(),A(null,JSON.stringify(y))}}}}catch(y){console.error(y)}return A(null,h)}).catch(b=>(console.error(b),A(null,h)))})}var u6=Re(ldt(),1);var fdt=Re(v0(),1),a2=Re(Jn(),1);var FM="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",BE={NEW:"NEW",SCANNED:"SCANNED",CONFIRMED:"CONFIRMED",EXPIRED:"EXPIRED",CANCELED:"CANCELED"},ddt={encode(t,e=3e5){let r={data:t,expireTime:Date.now()+e};return Buffer.from(JSON.stringify(r)).toString("base64url")},decode(t){try{if(!t)return null;let e=JSON.parse(Buffer.from(t,"base64url").toString());return Date.now()>e.expireTime?null:e.data}catch{return null}}},owr=async t=>{let e=a2.default.enc.Hex.stringify(a2.default.MD5(t.config.quark.cookie)).toString();return(await t.db.getObjectDefault("/quark",{}))[e]??""},cwr=async(t,e)=>{let r=a2.default.enc.Hex.stringify(a2.default.MD5(t.config.quark.cookie)).toString();await t.db.push(`/quark/${r}`,e)};async function vue(t){t.get("/qrcode",async(r,n)=>{try{let s=await Ae.get("https://uop.quark.cn/cas/ajax/getTokenForQrcodeLogin?client_id=532&v=1.2",{headers:{"User-Agent":FM}}),i=s.data.data.members.token,a=hl(s.headers["set-cookie"]),o=ddt.encode({token:i,cookies:a}),c="https://su.quark.cn/4_eMHBJ?token="+i+"&client_id=532&ssb=weblogin&uc_param_str=&uc_biz_str=S%3Acustom%7COPT%3ASAREA%400%7COPT%3AIMMERSIVE%401%7COPT%3ABACK_BTN_STYLE%400",u=await fdt.default.toBuffer(c,{width:300,height:300});n.header("X-Session-Key",o),n.send(u)}catch(s){console.error("\u5938\u514B\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25:",s),n.status(500).send({code:-1,message:"\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25"})}}),t.post("/check-status",async(r,n)=>{let{sessionKey:s}=r.body,i=ddt.decode(s);if(!i)return n.send({code:0,data:{status:BE.EXPIRED}});let{token:a,cookies:o}=i;try{let c=await Ae.get(`https://uop.quark.cn/cas/ajax/getServiceTicketByQrcodeToken?client_id=532&v=1.2&token=${a}`,{headers:{"User-Agent":FM}});if(c.data.status===2e6){let u=await e(c.data.data.members.service_ticket,o);n.send({code:0,data:{status:BE.CONFIRMED,cookie:u}})}else c.data.status===50004002?n.send({code:0,data:{status:BE.EXPIRED}}):c.data.status===50004001?n.send({code:0,data:{status:BE.NEW}}):n.send({code:0,data:{status:BE.NEW}})}catch(c){console.error("\u5938\u514B\u72B6\u6001\u68C0\u67E5\u5931\u8D25:",c),n.send({code:0,data:{status:BE.NEW}})}});async function e(r,n){let s=[...n],i=await Ae.get(`https://pan.quark.cn/account/info?st=${r}&fr=pc&platform=pc`,{headers:{"User-Agent":FM,Cookie:s.join("")}});i.headers["set-cookie"]&&(s=s.concat(hl(i.headers["set-cookie"])));let a=await Ae.get("https://drive-pc.quark.cn/1/clouddrive/share/sharepage/dir?pr=ucpro&fr=pc&uc_param_str=&aver=1",{headers:{"User-Agent":FM,Cookie:s.join("")}});return a.headers["set-cookie"]&&(s=s.concat(hl(a.headers["set-cookie"]))),s.join("")}t.post("/cookie",(r,n)=>{n.send({code:-1,message:"\u8BF7\u4F7F\u7528 /check-status \u63A5\u53E3"})}),t.get("/cookie",async(r,n)=>{n.send({code:0,data:await owr(r.server)})}),t.put("/cookie",async(r,n)=>{await cwr(r.server,r.body.cookie),n.send({code:0})})}var o2=Re(Jn(),1);var uA={NEW:"NEW",SCANNED:"SCANNED",CONFIRMED:"CONFIRMED",EXPIRED:"EXPIRED",CANCELED:"CANCELED"},pdt={encode(t,e=3e5){let r={data:t,expireTime:Date.now()+e};return Buffer.from(JSON.stringify(r)).toString("base64url")},decode(t){try{if(!t)return null;let e=JSON.parse(Buffer.from(t,"base64url").toString());return Date.now()>e.expireTime?null:e.data}catch{return null}}},uwr=async t=>{let e=o2.default.enc.Hex.stringify(o2.default.MD5(t.config.uc.token)).toString();return(await t.db.getObjectDefault("/uc",{}))[e]??""},lwr=async(t,e)=>{let r=o2.default.enc.Hex.stringify(o2.default.MD5(t.config.uc.token)).toString();await t.db.push(`/uc/${r}`,e)};async function Cue(t){t.get("/qrcode",async(e,r)=>{try{let n="/oauth/authorize",s=Math.floor(Date.now()/1e3).toString()+"000",i=bc.DeviceID,a=Kv(i,s),o=jk("GET",n,s,Cs.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":Cs.clientID,...bc.AccessToken?{Authorization:`Bearer ${bc.AccessToken}`}:{}},u=await Ae.get(`${Cs.api}${n}`,{params:{req_id:a,access_token:bc.AccessToken,app_ver:Cs.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:Cs.channel,auth_type:"code",client_id:Cs.clientID,scope:"netdisk",qrcode:"1",qr_width:"460",qr_height:"460"},headers:c}),l=pdt.encode({query_token:u.data.query_token,req_id:a});r.header("X-Session-Key",l),r.send(Buffer.from(u.data.qr_data,"base64"))}catch(n){console.error("UC-TV\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25:",n),r.status(500).send({code:-1,message:"\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25"})}}),t.post("/check-status",async(e,r)=>{let{sessionKey:n}=e.body,s=pdt.decode(n);if(!s)return r.send({code:0,data:{status:uA.EXPIRED}});let{query_token:i}=s;try{let a="/oauth/code",o=Math.floor(Date.now()/1e3).toString()+"000",c=bc.DeviceID,u=Kv(c,o),l=jk("GET",a,o,Cs.signKey),d={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":o,"x-pan-token":l,"x-pan-client-id":Cs.clientID,...bc.AccessToken?{Authorization:`Bearer ${bc.AccessToken}`}:{}},f=await Ae.get(`${Cs.api}${a}`,{params:{req_id:u,access_token:bc.AccessToken,app_ver:Cs.appVer,device_id:c,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:Cs.channel,client_id:Cs.clientID,scope:"netdisk",query_token:i},headers:d,validateStatus:p=>p<500});if(f.data.status===0){let p="/token",m=Math.floor(Date.now()/1e3).toString()+"000",h=Kv(bc.DeviceID,m),A=JSON.stringify({req_id:h,app_ver:Cs.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:Cs.channel,code:f.data.code}),g=await Ae.post(`${Cs.codeApi}${p}`,A,{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"}});g.data.code===200?r.send({code:0,data:{status:uA.CONFIRMED,cookie:g.data.data.access_token}}):r.send({code:0,data:{status:uA.NEW}})}else f.data.errno===11003?r.send({code:0,data:{status:uA.NEW}}):f.data.status===-1||f.data.errno===11001?r.send({code:0,data:{status:uA.EXPIRED}}):r.send({code:0,data:{status:uA.NEW}})}catch(a){console.error("UC-TV\u72B6\u6001\u68C0\u67E5\u5931\u8D25:",a),r.send({code:0,data:{status:uA.NEW}})}}),t.post("/token",async(e,r)=>{r.send({code:-1,message:"\u8BF7\u4F7F\u7528 /check-status \u63A5\u53E3"})}),t.get("/token",async(e,r)=>{r.send({code:0,data:await uwr(e.server)})}),t.put("/token",async(e,r)=>{await lwr(e.server,e.body.cookie),r.send({code:0})})}var mdt=async(t,e)=>(await t.db.getObjectDefault("/tyi",{}))?.[e]||"",hdt=async(t,e,r)=>{await t.db.push(`/tyi/${e}`,r)};async function Iue(t){t.get("/account",async(e,r)=>{let n=await mdt(e.server,"cloud_account"),s=await mdt(e.server,"cloud_password");r.send({code:0,data:{username:n,password:s}})}),t.put("/account",async(e,r)=>{await hdt(e.server,"cloud_account",e.body.username),await hdt(e.server,"cloud_password",e.body.password),r.send({code:0})})}var dwr=["https://www.leijing1.com"],fwr=async t=>(await t.db.getObjectDefault("/leijing",{}))?.urls||t.config.leijing?.urls||dwr,pwr=async(t,e)=>{await t.db.push("/leijing/urls",e)},mwr=async t=>{await t.db.delete("/leijing/urls")};async function Tue(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await fwr(e.server)})}),t.put("/urls",async(e,r)=>{await pwr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await mwr(e.server),r.send({code:0})})}var wue=async(t,e)=>{let r=await t.db.getObjectDefault("/pan123",{});return Object.prototype.hasOwnProperty.call(r||{},e)?r[e]:""},Rue=async(t,e,r)=>{await t.db.push(`/pan123/${e}`,r)};function hwr(t,e=!1){if(typeof t=="boolean")return t;if(typeof t=="string"){let r=t.trim().toLowerCase();if(["1","true","yes","on"].includes(r))return!0;if(["0","false","no","off"].includes(r))return!1}return e}async function Nue(t){t.get("/account",async(e,r)=>{let n=await wue(e.server,"pan_passport"),s=await wue(e.server,"pan_password"),i=await wue(e.server,"use_direct_download");r.send({code:0,data:{username:n,password:s,useDirectDownload:hwr(i,!0)}})}),t.put("/account",async(e,r)=>{await Rue(e.server,"pan_passport",e.body.username),await Rue(e.server,"pan_password",e.body.password),await Rue(e.server,"use_direct_download",e.body.useDirectDownload===!0),r.send({code:0})})}var lA=async(t,e)=>(await t.db.getObjectDefault("/xun",{}))?.[e]||"",ed=async(t,e,r)=>{await t.db.push(`/xun/${e}`,r)},Oue=(t="")=>String(t||"").trim();async function Pue(t){t.get("/account",async(e,r)=>{let n=await lA(e.server,"xun_username"),s=await lA(e.server,"xun_password"),i=!!await lA(e.server,"xun_auth");r.send({code:0,data:{username:n,password:s,hasAuth:i}})}),t.put("/account",async(e,r)=>{await ed(e.server,"xun_username",e.body.username||""),await ed(e.server,"xun_password",e.body.password||""),await ed(e.server,"xun_auth",""),await ed(e.server,"xun_refresh_token",""),await ed(e.server,"xun_user_id",""),r.send({code:0})}),t.get("/auth-status",async(e,r)=>{let n=!!await lA(e.server,"xun_auth");r.send({code:0,data:{hasAuth:n}})}),t.post("/login",async(e,r)=>{try{let n=Oue(e.body?.username),s=Oue(e.body?.password);if(!n){r.send({code:1,message:"\u8BF7\u8F93\u5165\u8FC5\u96F7\u8D26\u53F7"});return}if(!s){r.send({code:1,message:"\u8BF7\u8F93\u5165\u8FC5\u96F7\u5BC6\u7801"});return}await ed(e.server,"xun_username",n),await ed(e.server,"xun_password",s),await ed(e.server,"xun_auth",""),await ed(e.server,"xun_refresh_token",""),await ed(e.server,"xun_user_id",""),await ab(e),await zh.getDownload_auth();let i=!!await lA(e.server,"xun_auth");r.send({code:i?0:1,message:i?"\u767B\u5F55\u6210\u529F":"\u767B\u5F55\u5931\u8D25\uFF0C\u8BF7\u68C0\u67E5\u8D26\u53F7\u5BC6\u7801",data:{hasAuth:i}})}catch(n){console.warn("[xunlei] password login failed",{hasUsername:!!Oue(e.body?.username),message:n?.message||String(n)}),r.send({code:1,message:n?.message||"\u8FC5\u96F7\u8D26\u53F7\u5BC6\u7801\u767B\u5F55\u5931\u8D25"})}}),t.post("/send-code",async(e,r)=>{if(await ab(e),!await lA(e.server,"xun_username")){r.send({code:1,message:"\u8BF7\u5148\u4FDD\u5B58\u8FC5\u96F7\u8D26\u53F7"});return}await zh.getVerifyCode(),r.send({code:0,data:{sent:!0}})}),t.post("/verify-code",async(e,r)=>{await ab(e);let n=String(e.body?.code||"").trim();if(!n){r.send({code:1,message:"\u9A8C\u8BC1\u7801\u4E0D\u80FD\u4E3A\u7A7A"});return}await zh.getVerify(n);let s=!!await lA(e.server,"xun_auth");r.send({code:s?0:1,message:s?"\u767B\u5F55\u6210\u529F":"\u767B\u5F55\u5931\u8D25\uFF0C\u8BF7\u68C0\u67E5\u9A8C\u8BC1\u7801",data:{hasAuth:s}})})}var ydt=Re(v0(),1),Due=Re(Jn(),1),xdt=Re(nC(),1),bdt="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",va={NEW:"NEW",SCANNED:"SCANNED",CONFIRMED:"CONFIRMED",EXPIRED:"EXPIRED",CANCELED:"CANCELED"},gdt={encode(t,e=3e5){let r={data:t,expireTime:Date.now()+e};return Buffer.from(JSON.stringify(r)).toString("base64url")},decode(t){try{if(!t)return null;let e=JSON.parse(Buffer.from(t,"base64url").toString());return Date.now()>e.expireTime?null:e.data}catch{return null}}},Adt=null;function Edt(t){return Due.default.enc.Hex.stringify(Due.default.MD5(t.config.ali.token)).toString()}var gwr=async t=>{let e=await t.db.getObjectDefault("/ali",{});return String(e.token||e[Edt(t)]||"").trim()},Awr=async(t,e)=>{let r=String(e||"").trim();await t.db.push("/ali/token",r),await t.db.push(`/ali/${Edt(t)}`,r)};function ywr(t){return{t:t.t,appName:"aliyun_drive",ck:t.ck,appEntrance:"web",isMobile:"false",lang:"zh_CN",returnUrl:"",navlanguage:"zh-CN",navPlatform:"MacIntel",fromSite:"52",bizParams:""}}function xwr(t){let e=String(t||"").toUpperCase();return e===va.CONFIRMED?va.CONFIRMED:e===va.SCANNED||e==="SCANED"?va.SCANNED:e===va.CANCELED||e==="CANCELLED"?va.CANCELED:e===va.NEW?va.NEW:va.EXPIRED}async function bwr(){return(await Ae.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",{headers:{"User-Agent":bdt}})).data?.content?.data}async function Ewr(t){return(await Ae.post("https://passport.aliyundrive.com/newlogin/qrcode/query.do?appName=aliyun_drive&fromSite=52&_bx-v=2.2.3",xdt.default.stringify(ywr(t)),{headers:{"content-type":"application/x-www-form-urlencoded","User-Agent":bdt,referer:"https://www.aliyundrive.com/"}})).data?.content?.data||null}function _wr(t){let e=t?.bizExt;if(!e)return"";let r=Buffer.from(e,"base64").toString("utf8");try{return JSON.parse(r)?.pds_login_result?.refreshToken||""}catch{return JSON.parse(decodeURI(r))?.pds_login_result?.refreshToken||""}}async function Swr(t){let e=await Ewr(t);if(!e)return{status:va.EXPIRED};let r=xwr(e.qrCodeStatus);if(r!==va.CONFIRMED)return{status:r};let n=_wr(e);return n?{status:va.CONFIRMED,cookie:n}:{status:va.EXPIRED}}async function kue(t){t.get("/qrcode",async(e,r)=>{try{let n=await bwr();if(!n?.ck||!n?.t||!n?.codeContent)throw new Error("\u4E8C\u7EF4\u7801\u5185\u5BB9\u7F3A\u5931");Adt={ck:n.ck,t:n.t};let s=gdt.encode(Adt),i=await ydt.default.toBuffer(n.codeContent,{width:300,height:300});r.header("X-Session-Key",s),r.send(i)}catch(n){console.error("\u963F\u91CC\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25:",n),r.status(500).send({code:-1,message:"\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25"})}}),t.post("/check-status",async(e,r)=>{let n=gdt.decode(e.body?.sessionKey);if(!n)return r.send({code:0,data:{status:va.EXPIRED}});try{let s=await Swr(n);r.send({code:0,data:s})}catch(s){console.error("\u963F\u91CC\u72B6\u6001\u68C0\u67E5\u5931\u8D25:",s),r.send({code:0,data:{status:va.EXPIRED}})}}),t.get("/token",async(e,r)=>{r.send({code:0,data:await gwr(e.server)})}),t.put("/token",async(e,r)=>{let n=e.body?.cookie??e.body?.data?.token??"";await Awr(e.server,n),r.send({code:0})})}var D0n=Re(v0(),1),L0n=Re(Jn(),1);var ME="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36",dA={NEW:"NEW",SCANNED:"SCANNED",CONFIRMED:"CONFIRMED",EXPIRED:"EXPIRED",CANCELED:"CANCELED"},_dt={encode(t,e=3e5){let r={data:t,expireTime:Date.now()+e};return Buffer.from(JSON.stringify(r)).toString("base64url")},decode(t){try{if(!t)return null;let e=JSON.parse(Buffer.from(t,"base64url").toString());return Date.now()>e.expireTime?null:e.data}catch{return null}}},vwr=async t=>(await t.db.getObjectDefault("/baidu",{}))["baidu_cookie"]??"",Lue=async(t,e)=>{await t.db.push("/baidu/baidu_cookie",e)};function Cwr(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(t){let e=Math.random()*16|0;return(t==="x"?e:e&3|8).toString(16)})}async function Bue(t){t.get("/qrcode",async(r,n)=>{try{let s=Cwr(),i=new Date().getTime().toString(),a=Math.floor(new Date().getTime()/1e3).toString(),o=`tangram_guid_${i}`,u=(await he.get("https://passport.baidu.com/v2/api/getqrcode",{params:{lp:"pc",qrloginfrom:"pc",gid:s,callback:o,apiver:"v3",tt:a,tpl:"netdisk",_:i},headers:{"User-Agent":ME,Referer:"https://pan.baidu.com","sec-ch-ua-platform":'"Windows"',DNT:"1"}})).data;if(typeof u=="string"){u=u.replace(/^[^(]*\(/,"").replace(/\);?$/,"");let l=JSON.parse(u);if(l.errno===0){let d=_dt.encode({sign:l.sign,channel_id:l.channel_id}),f="https://"+l.imgurl,p=await he.get(f,{responseType:"arraybuffer",headers:{"User-Agent":ME}});n.header("X-Session-Key",d),n.send(p.data)}else throw new Error(`\u83B7\u53D6\u4E8C\u7EF4\u7801\u5931\u8D25: ${l.errmsg||"\u672A\u77E5\u9519\u8BEF"}`)}else throw new Error("\u54CD\u5E94\u683C\u5F0F\u9519\u8BEF")}catch(s){console.error("\u767E\u5EA6\u4E8C\u7EF4\u7801\u83B7\u53D6\u5931\u8D25:",s),n.status(500).send({code:-1,message:s?.message||"\u83B7\u53D6\u4E8C\u7EF4\u7801\u5931\u8D25"})}}),t.post("/check-status",async(r,n)=>{let{sessionKey:s}=r.body,i=_dt.decode(s);if(!i)return n.send({code:0,data:{status:dA.EXPIRED}});let{sign:a}=i;try{let o=new Date().getTime().toString(),c=`tangram_guid_${o}`,l=(await he.get("https://passport.baidu.com/channel/unicast",{params:{channel_id:a,tpl:"netdisk",apiver:"v3",tt:Math.floor(new Date().getTime()/1e3).toString(),callback:c,_:o},headers:{"User-Agent":ME,Referer:"https://pan.baidu.com"}})).data;if(typeof l=="string"){l=l.replace(/^[^(]*\(/,"").replace(/\);?\s*$/,"").trim();let d=JSON.parse(l);if(d.errno===0&&d.channel_v){let f=JSON.parse(d.channel_v);if(f.status===1)return n.send({code:0,data:{status:dA.SCANNED}});if(f.status===0&&f.v){let p=await e(f.v,r.server);return n.send({code:0,data:{status:dA.CONFIRMED,cookie:p}})}}else{if(d.errno===1)return n.send({code:0,data:{status:dA.NEW}});if(d.errno===2)return n.send({code:0,data:{status:dA.EXPIRED}})}}n.send({code:0,data:{status:dA.NEW}})}catch(o){console.error("\u767E\u5EA6\u72B6\u6001\u68C0\u67E5\u5931\u8D25:",o),n.send({code:0,data:{status:dA.NEW}})}});async function e(r,n){let s=new Date().getTime().toString(),i=Math.floor(new Date().getTime()/1e3).toString(),o=(await he.get("https://passport.baidu.com/v3/login/main/qrbdusslogin",{params:{v:s,bduss:r,u:"https://pan.baidu.com/disk/main#/index?category=all",loginVersion:"v5",qrcode:"1",tpl:"netdisk",maskId:"",fileId:"",apiver:"v3",tt:s,traceid:"",time:i,alg:"v3",elapsed:"1"},headers:{"User-Agent":ME,Referer:"https://pan.baidu.com/","Accept-Language":"zh-CN,zh;q=0.9"},timeout:3e4})).data;if(typeof o=="string"){o=o.replace(/^[^(]*\(/,"").replace(/\);?\s*$/,"").trim();let c=o.match(/"bduss":\s*"([^"]+)"/),u=o.match(/"stoken":\s*"([^"]+)"/),l=o.match(/"ptoken":\s*"([^"]+)"/),d=o.match(/"ubi":\s*"([^"]+)"/);if(c&&u&&l&&d){let f=c[1],p=u[1],m=l[1],h=encodeURIComponent(d[1]),g=Object.entries({newlogin:"1",UBI:h,STOKEN:p,BDUSS:f,PTOKEN:m,BDUSS_BFESS:f,STOKEN_BFESS:p,PTOKEN_BFESS:m,UBI_BFESS:h}).map(([x,v])=>`${x}=${v}`).join("; "),y=(await he.get("https://passport.baidu.com/v3/login/api/auth/?return_type=5&tpl=netdisk&u=https://pan.baidu.com/disk/home",{headers:{"User-Agent":ME,Referer:"https://pan.baidu.com/",Cookie:g},maxRedirects:0,validateStatus:x=>x===302||x===200})).headers.location;if(y){let v=(await he.get(y,{headers:{"User-Agent":ME,Referer:"https://pan.baidu.com/",Cookie:g},maxRedirects:0,validateStatus:w=>w===302||w===200})).headers["set-cookie"],C="";if(v){let w=v.find(N=>N.toLowerCase().includes("stoken"));w&&(C=w.split(";")[0])}let R=C?`BDUSS=${f};${C};`:`BDUSS=${f};STOKEN=${p};`;return await Lue(n,R),R}else{let x=`BDUSS=${f};STOKEN=${p};`;return await Lue(n,x),x}}}throw new Error("Cookie\u89E3\u6790\u5931\u8D25")}t.post("/cookie",async(r,n)=>{n.send({code:-1,message:"\u8BF7\u4F7F\u7528 /check-status \u63A5\u53E3"})}),t.get("/cookie",async(r,n)=>{n.send({code:0,data:await vwr(r.server)})}),t.put("/cookie",async(r,n)=>{await Lue(r.server,r.body.cookie),n.send({code:0})})}var Idt=require("crypto");var Tdt=Re(v0(),1),wdt="https://account.guangyapan.com",Mue="aMe-8VSlkrbQXpUR",Sdt="0123456789abcdef0123456789abcdef",Zf={NEW:"NEW",SCANNED:"SCANNED",CONFIRMED:"CONFIRMED",EXPIRED:"EXPIRED",CANCELED:"CANCELED"},Iwr="urn:ietf:params:oauth:grant-type:device_code",vdt={encode(t,e=12e4){let r={data:t,expireTime:Date.now()+e};return Buffer.from(JSON.stringify(r)).toString("base64url")},decode(t){try{if(!t)return null;let e=JSON.parse(Buffer.from(t,"base64url").toString());return Date.now()>e.expireTime?null:e.data}catch{return null}}},UM=async(t,e)=>(await t.db.getObjectDefault("/guangyapan",{}))?.[e]||"",c2=async(t,e,r)=>{await t.db.push(`/guangyapan/${e}`,r)};function Rdt(t){if(!t)return{};if(typeof t=="string")try{return JSON.parse(t)}catch{return{message:t}}return t}function Xi(t){return String(t||"").trim()}function Twr(t){let e=String(t||"").trim().toLowerCase();return e=e.replace(/^wdi10\./,""),e=e.replace(/x+$/g,""),e=e.replace(/[^0-9a-f]/g,""),e.length===32?e:""}async function wwr(t){let e=Twr(await UM(t,"device_id"));if(e)return e;let r=Sdt;try{r=(0,Idt.randomBytes)(16).toString("hex")}catch{r=Sdt}return await c2(t,"device_id",r),r}function Ndt(t){return{Accept:"application/json, text/plain, */*","Content-Type":"application/json","X-Client-Id":Mue,"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 Rwr(t){let e=Xi(t?.access_token||t?.accessToken),r=Xi(t?.refresh_token||t?.refreshToken);return{accessToken:e,refreshToken:r}}function Nwr(t,e){let{accessToken:r,refreshToken:n}=Rwr(e);if(t>=200&&t<300&&(n||r))return{status:Zf.CONFIRMED,accessToken:r,refreshToken:n};let s=Xi(e?.error).toLowerCase();return s==="authorization_pending"||s==="slow_down"?{status:Zf.NEW}:s==="access_denied"?{status:Zf.CANCELED}:s.includes("expired")||s==="invalid_grant"?{status:Zf.EXPIRED}:{status:Zf.NEW}}function Owr(t){let e=Xi(t?.refreshToken);return e||Xi(t?.accessToken)}async function Pwr(t){let e=await Ae.post(`${wdt}/v1/auth/device/code`,{scope:"user",client_id:Mue},{headers:Ndt(t),validateStatus:()=>!0}),r=Rdt(e.data),n=Xi(r?.device_code),s=Xi(r?.verification_uri_complete||r?.verification_url),i=Number(r?.expires_in||120);if(e.status<200||e.status>=300||!n||!s)throw new Error(r?.error_description||r?.message||`status=${e.status}`);return{deviceCode:n,verifyUrl:s,expiresIn:i}}async function Dwr(t){let e=await Ae.post(`${wdt}/v1/auth/token`,{grant_type:Iwr,device_code:t.deviceCode,client_id:Mue},{headers:Ndt(t.deviceId),validateStatus:()=>!0});return Nwr(e.status,Rdt(e.data))}async function Cdt(t,e){let r=Xi(e?.accessToken),n=Xi(e?.refreshToken);n&&await c2(t,"refresh_token",n),r&&await c2(t,"access_token",r)}function kwr(t){let e=Xi(t?.cookie),r=Xi(t?.accessToken||t?.data?.accessToken),n=Xi(t?.refreshToken||t?.data?.refreshToken),s=!1;if(!r&&!n&&e)try{let i=JSON.parse(e);s=!0,r=Xi(i?.accessToken||i?.access_token),n=Xi(i?.refreshToken||i?.refresh_token)}catch{n=e}return!s&&!n&&e&&(n=e),{accessToken:r,refreshToken:n}}async function Wue(t){t.get("/qrcode",async(e,r)=>{try{let n=await wwr(e.server),s=await Pwr(n),i=vdt.encode({deviceCode:s.deviceCode,deviceId:n},Math.max(1e3,s.expiresIn*1e3)),a=await Tdt.default.toBuffer(s.verifyUrl,{width:300,height:300});r.header("X-Session-Key",i),r.type("image/png").send(a)}catch(n){console.error("\u5149\u9E2D\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25:",n),r.status(500).send({code:-1,message:"\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25"})}}),t.post("/check-status",async(e,r)=>{let n=vdt.decode(e.body?.sessionKey);if(!n)return r.send({code:0,data:{status:Zf.EXPIRED}});try{let s=await Dwr(n);if(s.status===Zf.CONFIRMED)return await Cdt(e.server,s),r.send({code:0,data:{status:Zf.CONFIRMED,cookie:Owr(s)}});r.send({code:0,data:s})}catch(s){console.error("\u5149\u9E2D\u72B6\u6001\u68C0\u67E5\u5931\u8D25:",s),r.send({code:0,data:{status:Zf.NEW}})}}),t.get("/token",async(e,r)=>{r.send({code:0,data:await UM(e.server,"refresh_token")})}),t.put("/token",async(e,r)=>{await Cdt(e.server,kwr(e.body||{})),r.send({code:0})}),t.get("/account",async(e,r)=>{r.send({code:0,data:{accessToken:await UM(e.server,"access_token"),refreshToken:await UM(e.server,"refresh_token")}})}),t.put("/account",async(e,r)=>{await c2(e.server,"access_token",Xi(e.body?.accessToken)),await c2(e.server,"refresh_token",Xi(e.body?.refreshToken)),r.send({code:0})})}var qM=Re(require("crypto"),1),mo=Re(Jn(),1),kdt="https://user-njs.yun.139.com/user",Uue="7.17.4",Lwr="mCloud_4.3.0_536",$ue=670,Bwr=292,Ldt=mo.default.enc.Utf8.parse("h7DLzCTAjn+altjy2a9E9FSt7AC6pmx1"),Odt=`||9|${Uue}|chrome||0||windows 10||zh-CN|||`,que=(t="")=>String(t||"").replace(/^Basic\s+/i,"").trim(),Ca=(t="")=>String(t||"").trim(),Fue=(t="")=>qM.default.createHash("md5").update(String(t)).digest("hex"),Mwr=(t="")=>qM.default.createHash("sha1").update(String(t)).digest("hex"),Wwr=t=>{try{return JSON.stringify(t)}catch{return String(t)}},$wr=t=>{try{return JSON.parse(t)}catch{return null}},Pdt=(t="",e=160)=>String(t).replace(/\s+/g," ").slice(0,e),Fwr=(t,e="\u79FB\u52A8\u4E91\u76D8\u63A5\u53E3\u8FD4\u56DE\u5F02\u5E38")=>typeof t=="string"?t||e:t&&typeof t=="object"?t.message||t.msg||t.desc||t.resultDesc||Wwr(t):t==null?e:String(t),WE=(t="")=>{let e=Ca(t);return e.length<7?e?"***":"":`${e.slice(0,3)}****${e.slice(-4)}`},jue=(t={},e="\u79FB\u52A8\u4E91\u76D8\u63A5\u53E3\u8FD4\u56DE\u5F02\u5E38")=>{let r=String(t.code??t.status??t.resultCode??t.resultcode??""),n=Fwr(t.message??t.msg??t.desc??t.resultDesc??t.errorMessage,r?`${e}\uFF1A${r}`:e),s=new Error(r?`${n}\uFF08${r}\uFF09`:n);return s.yidongCode=r,s.yidongData=t.data,s.yidongResult=t,s.statusCode=t.statusCode,s},Uwr=t=>{let e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",r="";for(let n=0;n<t;n+=1)r+=e[Math.floor(Math.random()*e.length)];return r},qwr=(t={})=>encodeURIComponent(JSON.stringify({...t})).split("").sort().join(""),jwr=(t={})=>{let e=String(Date.now()),r=Uwr(16),n=Fue(Buffer.from(qwr(t)).toString("base64")),s=Fue(`${e}:${r}`);return`${e},${r},${Fue(n+s).toUpperCase()}`},Hwr=(t={},e={})=>({caller:"web","Content-Type":"application/json;charset=UTF-8","CMS-DEVICE":"default","X-Deviceinfo":`||9|${Uue}|chrome||0||windows 10||zh-CN|||`,"x-yun-channel-source":"10000034","x-huawei-channelSrc":"10000034","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":Uue,"mcloud-channel":"1000101","mcloud-client":"10701","mcloud-sign":jwr(t),"mcloud-skey":"","INNER-HCY-ROUTER-HTTPS":"1",...e}),Bdt=t=>{let e=t?.data||{},r=String(e.code??e.status??e.resultCode??e.resultcode??"");if(e.success===!1||r&&r!=="0"&&r!=="0000")throw jue(e);return e},Qwr=(t={})=>{let e=mo.default.lib.WordArray.random(16),r=mo.default.enc.Utf8.parse(typeof t=="string"?t:JSON.stringify(t)),n=mo.default.AES.encrypt(r,Ldt,{iv:e,mode:mo.default.mode.CBC,padding:mo.default.pad.Pkcs7});return mo.default.enc.Base64.stringify(e.concat(n.ciphertext))},Gwr=(t="")=>{let e=mo.default.enc.Base64.parse(String(t)),r=e.clone(),n=r.words.splice(4);r.init(r.words),e.init(n);let s=mo.default.AES.decrypt(mo.default.enc.Base64.stringify(e),Ldt,{iv:r,mode:mo.default.mode.CBC,padding:mo.default.pad.Pkcs7}).toString(mo.default.enc.Utf8);return JSON.parse(s)},Mdt=(t="")=>{if(typeof t!="string")return t;try{return Gwr(t)}catch(e){let r=$wr(t);return r&&typeof r=="object"?r:(console.warn("[yidong] cool response decrypt failed",{dataLength:String(t).length,dataPreview:Pdt(t),message:e?.message||String(e)}),{success:!1,code:"COOL_DECRYPT_FAILED",message:`\u79FB\u52A8\u4E91\u76D8\u52A0\u5BC6\u54CD\u5E94\u89E3\u6790\u5931\u8D25\uFF1A${Pdt(t)||e?.message||String(e)}`})}},Vwr=t=>{let e=Mdt(t?.data);return Bdt({data:e})},zwr=t=>{let e=qM.default.createDecipheriv("aes-128-ecb",Buffer.from("qPqDw263XgFgL3u8"),null);return e.setAutoPadding(!0),Buffer.concat([e.update(Buffer.from(t,"hex")),e.final()]).toString("utf8")},Kwr=t=>{if(typeof t!="string")return t||{};try{return JSON.parse(zwr(t))}catch{try{return JSON.parse(t)}catch{throw new Error("\u79FB\u52A8\u4E91\u76D8\u767B\u5F55\u7ED3\u679C\u89E3\u6790\u5931\u8D25")}}},Ywr=(t,e)=>!t||!e?"":Buffer.from(`pc:${t}:${e}`,"utf8").toString("base64"),Ddt=async(t,e,r={})=>{try{let n=await Ae.post(`${kdt}${t}`,e,{timeout:3e4,headers:Hwr(e,r)});return Bdt(n)}catch(n){if(n?.response?.data){let s=n.response.data;throw jue(s,"\u79FB\u52A8\u4E91\u76D8\u63A5\u53E3\u8BF7\u6C42\u5931\u8D25")}throw n}},Jwr=async(t,e,r={})=>{let{clientInfo:n,...s}=r;try{let i=await Ae.post(`${kdt}${t}`,Qwr(e),{timeout:3e4,headers:{"Content-Type":"application/json;charset=UTF-8","hcy-cool-flag":"1","x-Nationcode":e.nationCode||"+86","x-deviceinfo":n||Odt,"x-yun-client-info":n||Odt,"x-yun-app-channel":"10000034",...s}});return Vwr(i)}catch(i){if(i?.response?.data){let a=Mdt(i.response.data);throw jue(a,"\u79FB\u52A8\u4E91\u76D8\u63A5\u53E3\u8BF7\u6C42\u5931\u8D25")}throw i}},u2=async(t,e)=>(await t.db.getObjectDefault("/yidong",{}))?.[e]||"",td=async(t,e,r)=>{let n=e==="authorization"?que(r):Ca(r);await t.db.push(`/yidong/${e}`,n),e==="authorization"&&(globalThis.YidongAuthorization=n)},Wdt=async t=>{globalThis.YidongAuthorization=que(await u2(t,"authorization"))};async function Hue(t){t.get("/authorization",async(e,r)=>{let n=que(await u2(e.server,"authorization")),s=Ca(await u2(e.server,"phone"));globalThis.YidongAuthorization=n,r.send({code:0,data:{authorization:n,phone:s,hasAuth:!!n}})}),t.put("/authorization",async(e,r)=>{await td(e.server,"authorization",e.body.authorization),r.send({code:0})}),t.post("/send-code",async(e,r)=>{let n=Ca(e.body?.phone),s=Math.random();try{if(!/^1[3456789]\d{9}$/.test(n)){r.send({code:1,message:"\u8BF7\u8F93\u5165\u6B63\u786E\u7684\u4E2D\u56FD\u5927\u9646\u624B\u673A\u53F7"});return}let i={phoneNumber:n,reqType:3,random:s,nationCode:"+86",clientType:$ue},a=await Ddt("/sms/getSmsCode",i,{"x-NationCode":"+86"}),o=Ca(a?.data?.random||a?.random||s);await td(e.server,"phone",n),await td(e.server,"smsRandom",o),await td(e.server,"smsLoginRandom",s),console.info("[yidong] sms code sent",{phone:WE(n),reqType:i.reqType,randomLength:o.length}),r.send({code:0,data:{sent:!0}})}catch(i){if(console.warn("[yidong] send code failed",{phone:WE(e.body?.phone),code:i?.yidongCode,message:i?.message||String(i)}),i?.yidongCode==="200059554"){let a=Number(i?.yidongData?.captchaType||i?.yidongResult?.data?.captchaType||2);await td(e.server,"phone",n),await td(e.server,"smsLoginRandom",s),console.info("[yidong] sms code requires captcha",{phone:WE(n),captchaType:a}),r.send({code:0,data:{captchaRequired:!0,captchaType:a}});return}r.send({code:1,message:i?.message||"\u53D1\u9001\u9A8C\u8BC1\u7801\u5931\u8D25"})}}),t.post("/send-code-captcha",async(e,r)=>{try{let n=Ca(e.body?.phone),s=Number(e.body?.captchaType||2),i=e.body?.puzzleVerfycode??e.body?.puzzleVerfyCode,a=Ca(e.body?.clientInfo);if(!/^1[3456789]\d{9}$/.test(n)){r.send({code:1,message:"\u8BF7\u8F93\u5165\u6B63\u786E\u7684\u4E2D\u56FD\u5927\u9646\u624B\u673A\u53F7"});return}if(!i){r.send({code:1,message:"\u8BF7\u5148\u5B8C\u6210\u6ED1\u5757\u9A8C\u8BC1"});return}let o=Ca(await u2(e.server,"smsLoginRandom")),c=Number(o),u=o&&Number.isFinite(c)?c:Math.random(),d=await Jwr("/sms/getSmsCode",{phoneNumber:n,reqType:3,random:u,nationCode:"+86",clientType:$ue,captchaType:s,puzzleVerfycode:i},a?{clientInfo:a}:{}),f=Ca(d?.data?.random||d?.random||u);await td(e.server,"phone",n),await td(e.server,"smsRandom",f),console.info("[yidong] sms code sent after captcha",{phone:WE(n),captchaType:s,randomLength:f.length}),r.send({code:0,data:{sent:!0}})}catch(n){console.warn("[yidong] send code after captcha failed",{phone:WE(e.body?.phone),code:n?.yidongCode,message:n?.message||String(n)}),r.send({code:1,message:n?.message||"\u6ED1\u5757\u9A8C\u8BC1\u540E\u53D1\u9001\u9A8C\u8BC1\u7801\u5931\u8D25"})}}),t.post("/verify-code",async(e,r)=>{let n="";try{let s=Ca(e.body?.phone),i=Ca(e.body?.code);if(!/^1[3456789]\d{9}$/.test(s)){r.send({code:1,message:"\u8BF7\u8F93\u5165\u6B63\u786E\u7684\u4E2D\u56FD\u5927\u9646\u624B\u673A\u53F7"});return}if(!i){r.send({code:1,message:"\u9A8C\u8BC1\u7801\u4E0D\u80FD\u4E3A\u7A7A"});return}n=Ca(await u2(e.server,"smsRandom"));let a={msisdn:s,random:"",dycpwd:i,cpid:Bwr,clienttype:$ue,version:Lwr,pintype:5,secinfo:Mwr(`fetion.com.cn:${i}`).toUpperCase(),verType:2,loginMode:"0",extInfo:{ifOpenAccount:"1"}},o=await Ddt("/thirdlogin",a,{"x-NationCode":"+86"}),c=Kwr(o.data),u=Ca(c.account||s),l=Ca(c.token||c.authToken),d=Ywr(u,l);if(!d){r.send({code:1,message:"\u79FB\u52A8\u4E91\u76D8\u767B\u5F55\u6210\u529F\u4F46\u672A\u8FD4\u56DE\u6709\u6548 token"});return}await td(e.server,"phone",s),await td(e.server,"authorization",d),r.send({code:0,message:"\u767B\u5F55\u6210\u529F",data:{hasAuth:!0,authorization:d}})}catch(s){console.warn("[yidong] verify code failed",{phone:WE(e.body?.phone),codeLength:Ca(e.body?.code).length,smsRandomLength:n.length,message:s?.message||String(s)}),r.send({code:1,message:s?.message||"\u9A8C\u8BC1\u7801\u767B\u5F55\u5931\u8D25"})}})}var jM=[{key:"quark",name:"\u5938\u514B",enable:!0,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",chunkSize:512,poolSize:10,noSaveMode:!1},{key:"uc",name:"UC",enable:!0,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",chunkSize:512,poolSize:10},{key:"ali",name:"\u963F\u91CC",enable:!0,pic:"https://inews.gtimg.com/newsapp_bt/0/13263837859/1000",chunkSize:128,poolSize:20},{key:"baidu",name:"\u767E\u5EA6",enable:!0,pic:"https://nd-static.bdstatic.com/m-static/v20-main/home/img/icon-home-new.b4083345.png"},{key:"xunlei",name:"\u8FC5\u96F7",enable:!0,pic:"https://img.geekie.site/i/2026/03/22/190713.png"},{key:"tianyi",name:"\u5929\u7FFC",enable:!0,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:"yidong",name:"\u79FB\u52A8",enable:!0,pic:"https://yun.139.com/w/static/img/LOGO.png"},{key:"123",name:"123",enable:!0,pic:"https://statics.123957.com/static/favicon.ico"},{key:"115",name:"115",enable:!0,pic:"https://img.pcsoft.com.cn/soft/202104/093230-608b5e2ed5912.jpg"},{key:"guangyapan",name:"\u5149\u9E2D",enable:!0,pic:"https://www.guangyapan.com/icon.png"}],Que=async t=>{let r=(await t.db.getObjectDefault("/pans",{}))?.list||t.config.pans.list;return r.filter(n=>jM.some(s=>s.key===n.key)).concat(jM.filter(n=>!r.some(s=>s.key===n.key))).map(n=>({...jM.find(i=>i.key===n.key),...n}))},Xwr=async(t,e)=>{await t.db.push("/pans/list",e),globalThis.Pans=e},Zwr=async t=>{await t.db.delete("/pans/list"),globalThis.Pans=jM};async function Gue(t){t.get("/list",async(e,r)=>{r.send({code:0,data:await Que(e.server)})}),t.put("/list",async(e,r)=>{await Xwr(e.server,e.body.list),r.send({code:0})}),t.delete("/list",async(e,r)=>{await Zwr(e.server),r.send({code:0})})}var $dt=Re(Cv(),1);async function Vue(t){t.get("/",async(e,r)=>{r.header("Content-Disposition",`attachment; filename="config.${(0,$dt.default)().format("YYYY-MM-DD")}.json"`);let n=await e.server.db.getData("/");r.send(JSON.stringify(n,null,4))}),t.put("/",async(e,r)=>{await e.server.db.push("/",e.body),r.send({code:0})})}var Fdt=Re(require("crypto"),1);function Ut(t=[],e=null){let r=Array.isArray(t)?t:[];return{Items:r,TotalRecordCount:typeof e=="number"?e:r.length}}function Xr(t,e,r=""){if(!t||typeof t!="object")return r;for(let n of e)if(t[n]!==void 0&&t[n]!==null)return t[n];return r}function zue(t,e){return typeof t!="string"||!t.trim()?[]:t.split(e).map(r=>String(r||"").trim()).filter(Boolean)}function e2r(t){let e=String(t||""),r=e.lastIndexOf("$");return r<=0?{name:e||"\u64AD\u653E",playId:""}:{name:e.slice(0,r).trim()||"\u64AD\u653E",playId:e.slice(r+1).trim()}}function ho(t,e){let r=zue(t,"$$$"),n=zue(e,"$$$"),s=Math.max(r.length,n.length),i=[];for(let a=0;a<s;a++){let c=zue(n[a]||"","#").map(e2r).filter(u=>u.playId);i.push({flag:r[a]||`\u7EBF\u8DEF${a+1}`,episodes:c})}return i}function fA(t,e=1){let r=Number.parseInt(Yw(String(t||"")),10);if(Number.isInteger(r)&&r>0)return r;let n=Number.parseInt(String(e||1),10);return Number.isInteger(n)&&n>0?n:1}function t2r(t,e=""){let r=[];for(let n=0;n<t.length;n+=2){let s=String(t[n]||"").trim(),i=Yue(t[n+1]||"");i&&r.push({label:s,url:i})}if(!r.length)return t.map(s=>Yue(s)).find(Boolean)||"";if(e){let n=r.find(s=>s.label===e);if(n)return n.url}return r[0].url}function Kue(t=""){return/^(https?:\/\/|push:\/\/)/i.test(String(t||"").trim())}function Yue(t=""){let e=String(t||"").trim();if(!e)return"";if(Kue(e))return e;let r=e.split("#").map(n=>String(n||"").trim()).filter(Boolean);for(let n of r){if(Kue(n))return n;let i=n.split(",").map(c=>String(c||"").trim()).filter(Boolean).find(c=>Kue(c));if(i)return i;let a=n.match(/(https?:\/\/[^\s,]+)/i);if(a?.[1])return a[1].trim();let o=n.match(/(push:\/\/[^\s,]+)/i);if(o?.[1])return o[1].trim()}return""}function um(t,e=""){let r=t?.url||"";Array.isArray(r)?r=t2r(r,e):r=Yue(r),typeof r!="string"&&(r="");let n={};return t?.header&&typeof t.header=="object"&&Object.keys(t.header).forEach(s=>{let i=t.header[s];i!=null&&(n[s]=String(i))}),{parse:Number(t?.parse||0),url:r.trim(),header:n}}function Pu(t,e=60){let r=Number(t);return!Number.isFinite(r)||r<=0?e:Math.min(200,r)}function Ia(t=[],e=0,r=60){let n=Array.isArray(t)?t:[],s=Math.max(0,Number(e)||0),i=Pu(r,60);return n.slice(s,s+i)}function ss(t={}){return{IsFavorite:!1,Played:!1,PlayCount:0,PlaybackPositionTicks:0,...t}}function $E(t={}){let e=`${t?.vod_name||""} ${t?.vod_remarks||""}`;return/(æ›´æ–°|第\s*\d+\s*[集话期]|连载|season|s\d+e\d+)/i.test(e)?"Series":"Movie"}function Ws(){return new Date().toISOString()}function r2r(t={}){if(typeof t=="string")try{t=JSON.parse(t)}catch{t={}}return{username:String(t?.username||t?.Username||t?.name||t?.Name||""),password:String(t?.pw||t?.Pw||t?.password||t?.Password||"")}}function n2r(t=""){let e={};return String(t).replace(/^MediaBrowser\s+/i,"").replace(/^Emby\s+/i,"").replace(/,\s+/g,",").split(",").forEach(n=>{let[s,i]=n.split("="),a=String(s||"").trim().toLowerCase(),o=String(i||"").replace(/"/g,"").trim();a&&o&&(e[a]=o)}),e}function s2r(t){let e=t.query||{},r=n2r(t.headers?.["x-emby-authorization"]||t.headers?.authorization||"");return{client:r.client||String(e["x-emby-client"]||e["X-Emby-Client"]||""),device:r.device||String(e["x-emby-device-name"]||e["X-Emby-Device-Name"]||""),deviceId:r.deviceid||String(e["x-emby-device-id"]||e["X-Emby-Device-Id"]||""),version:r.version||String(e["x-emby-client-version"]||e["X-Emby-Client-Version"]||"")}}function i2r(t){let e=Ws();return{Name:t.user.name,ServerId:t.config.serverId,Id:t.user.id,HasPassword:!0,HasConfiguredPassword:!0,HasConfiguredEasyPassword:!1,EnableAutoLogin:!1,LastLoginDate:e,LastActivityDate:e,Policy:{IsAdministrator:!0,IsHidden:!1,IsDisabled:!1,EnableRemoteAccess:!0,EnableContentDeletion:!1,EnableContentDownloading:!0,EnableSyncTranscoding:!0,EnableMediaPlayback:!0,EnableAudioPlaybackTranscoding:!0,EnableVideoPlaybackTranscoding:!0,EnablePlaybackRemuxing:!0,EnableSubtitleManagement:!1,AuthenticationProviderId:"Emby.Server.Implementations.Library.DefaultAuthenticationProvider"},Configuration:{PlayDefaultAudioTrack:!0,DisplayMissingEpisodes:!1,SubtitleMode:"Default",EnableLocalPassword:!1,HidePlayedInLatest:!0,RememberAudioSelections:!0,RememberSubtitleSelections:!0}}}function a2r(t,e,r){let n=Ws();return{PlayState:{CanSeek:!0,IsPaused:!1,IsMuted:!1,RepeatMode:"RepeatNone",SubtitleOffset:0,PlaybackRate:1},AdditionalUsers:[],RemoteEndPoint:"mycatpaw",PlayableMediaTypes:["Video"],PlaylistIndex:0,PlaylistLength:0,Id:e.Id,ServerId:t.config.serverId,UserId:e.Id,UserName:e.Name,Client:r.client,LastActivityDate:n,DeviceName:r.device,InternalDeviceId:0,DeviceId:r.deviceId,ApplicationVersion:r.version||t.config.version,SupportedCommands:[],SupportsRemoteControl:!1}}async function Jue(t){let e=new Map,r=5,n=60*1e3;function s(a){let o=Date.now(),c=e.get(a);return!c||o-c.windowStart>n?!1:c.count>=r}function i(a){let o=Date.now(),c=e.get(a);!c||o-c.windowStart>n?e.set(a,{count:1,windowStart:o}):c.count++}t.get("/Public",async()=>[]),t.post("/AuthenticateByName",async(a,o)=>{let c=t.embyContext;if(!c.config.enable)return o.code(503),"Emby disabled";let u=a.ip||"unknown";if(s(u))return o.code(429),"\u8BF7\u6C42\u8FC7\u4E8E\u9891\u7E41\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5";let l=r2r(a.body||{});if(console.log("[Emby Auth] login attempt:",JSON.stringify({username:l.username,hasPassword:!!l.password,ip:u})),l.username!==c.config.username||l.password!==c.config.password)return i(u),o.code(401),"\u7528\u6237\u540D\u6216\u5BC6\u7801\u9519\u8BEF";let d=Fdt.default.randomBytes(24).toString("hex"),f=s2r(a),p=Date.now(),m=c.config.tokenTtlMs>0?p+c.config.tokenTtlMs:0;c.tokens.set(d,{token:d,userId:c.user.id,userName:c.user.name,createdAt:p,lastUsedAt:p,expireAt:m,device:f});let h=i2r(c),A=a2r(c,h,f);return{User:h,SessionInfo:A,AccessToken:d,ServerId:c.config.serverId}}),t.post("/Logout",{preHandler:t.embyRequireAuth},async(a,o)=>{a.embyToken&&t.embyContext.tokens.delete(a.embyToken),o.code(204).send()}),t.get("/Me",{preHandler:t.embyRequireAuth},async a=>({Name:a.embyUser?.Name||t.embyContext.user.name,Id:a.embyUser?.Id||t.embyContext.user.id,ServerId:t.embyContext.config.serverId,Policy:{},Configuration:{},EnableAutoLogin:!1,LastLoginDate:Ws(),LastActivityDate:Ws()}))}async function Xue(t){t.get("/Info/Public",async()=>{let e=t.embyContext.config;return{LocalAddresses:[],RemoteAddresses:[],ServerName:e.serverName,Version:e.version,Id:e.serverId}}),t.get("/Info",{preHandler:t.embyRequireAuth},async()=>{let e=t.embyContext.config;return{SystemUpdateLevel:"Release",OperatingSystemDisplayName:"Node.js",HasPendingRestart:!1,IsShuttingDown:!1,HasImageEnhancers:!1,SupportsLibraryMonitor:!1,SupportsLocalPortConfiguration:!1,SupportsWakeServer:!1,CanSelfRestart:!1,CanSelfUpdate:!1,CanLaunchWebBrowser:!1,ProgramDataPath:"/",ItemsByNamePath:"/metadata",CachePath:"/cache",LogPath:"/logs",InternalMetadataPath:"/metadata",TranscodingTempPath:"/tmp",HttpServerPortNumber:8096,SupportsHttps:!1,HttpsPortNumber:8920,HasUpdateAvailable:!1,SupportsAutoRunAtStartup:!1,HardwareAccelerationRequiresPremiere:!1,WakeOnLanInfo:{MacAddress:"",BroadcastAddress:"",Port:0},IsInMaintenanceMode:!1,LocalAddress:"",LocalAddresses:[],WanAddress:"",RemoteAddresses:[],ServerName:e.serverName,Version:e.version,Id:e.serverId}}),t.get("/Ping",async(e,r)=>(r.type("text/plain; charset=utf-8"),"MyCatPaw Emby")),t.get("/Endpoint",async()=>({IsInNetwork:!0}))}var Udt=new Set(["lib","cat","vod","sea","ep","img","media"]);function wn(t,e={}){if(!Udt.has(t))throw new Error(`Unsupported item type: ${t}`);let r=JSON.stringify(e||{}),n=Buffer.from(r,"utf8").toString("base64url");return`${t}:${n}`}function $s(t){if(typeof t!="string")return null;let e=t.indexOf(":");if(e<=0)return null;let r=t.slice(0,e);if(!Udt.has(r))return null;let n=t.slice(e+1);if(!n)return null;try{let s=Buffer.from(n,"base64url").toString("utf8"),i=JSON.parse(s);return!i||typeof i!="object"?null:{type:r,payload:i}}catch{return null}}function Zue(t,e){let r=wn("lib",{k:t.spiderKey,t:t.spiderType,...t.siteName?{n:t.siteName}:{},...t.apiBase?{a:t.apiBase}:{}});return{Name:t.siteName,ServerId:e,Id:r,Guid:r,Etag:r,IsFolder:!0,Type:"CollectionFolder",PrimaryImageAspectRatio:1.7778,CanDelete:!1,CanDownload:!1,DisplayPreferencesId:r,UserData:ss(),ImageTags:{Primary:r},BackdropImageTags:[],ChildCount:0}}async function ele(t){t.get("/MediaFolders",{preHandler:t.embyRequireAuth},async()=>{let e=t.embyContext.config.serverId,r=await Xl(t);return Ut(r.map(n=>Zue(n,e)))}),t.get("/VirtualFolders",{preHandler:t.embyRequireAuth},async()=>{let e=t.embyContext.config.serverId;return(await Xl(t)).map(n=>{let s=Zue(n,e);return{Name:s.Name,Locations:[],LibraryOptions:{},ItemId:s.Id,Id:s.Id,Guid:s.Guid}})}),t.get("/SelectableMediaFolders",{preHandler:t.embyRequireAuth},async()=>{let e=t.embyContext.config.serverId,r=await Xl(t);return Ut(r.map(n=>{let s=Zue(n,e);return{Name:s.Name,Id:s.Id,Path:"",Type:"Virtual"}}))}),t.post("/Refresh",{preHandler:t.embyRequireAuth},async(e,r)=>{r.code(204).send()}),t.post("/RefreshMediaLibrary",{preHandler:t.embyRequireAuth},async(e,r)=>{r.code(204).send()})}var o2r="/embyPlayback",c2r=.92,u2r=1500;function HM(t,e=0){let r=Number(t);return Number.isFinite(r)?r:e}function tle(t,e=!1){if(t==null||t==="")return e;let r=String(t).trim().toLowerCase();return["1","true","yes","on"].includes(r)?!0:["0","false","no","off"].includes(r)?!1:e}function l2r(t){if(t instanceof Date){let n=t.getTime();return Number.isFinite(n)?new Date(n).toISOString():""}let e=String(t||"").trim();if(!e)return"";let r=Date.parse(e);return Number.isFinite(r)?new Date(r).toISOString():""}function QM(t){let e=t&&typeof t=="object"?t:{};return{users:e.users&&typeof e.users=="object"?e.users:{}}}function lm(t){let e=t?.embyContext;return!e||typeof e!="object"?QM(null):((!e.playbackState||typeof e.playbackState!="object")&&(e.playbackState=QM(null)),(!e.playbackState.users||typeof e.playbackState.users!="object")&&(e.playbackState.users={}),e.playbackState)}function pA(t,e){let r=String(e||"").trim();return r?((!t.users[r]||typeof t.users[r]!="object")&&(t.users[r]={items:{}}),(!t.users[r].items||typeof t.users[r].items!="object")&&(t.users[r].items={}),t.users[r]):null}function ep(t,e=""){let r=t&&typeof t=="object"?t:{};return{itemId:String(e||r.itemId||"").trim(),name:String(r.name||"").trim(),isFavorite:!!r.isFavorite,played:!!r.played,playCount:Math.max(0,Math.floor(HM(r.playCount,0))),playbackPositionTicks:Math.max(0,Math.floor(HM(r.playbackPositionTicks,0))),lastPlayedDate:l2r(r.lastPlayedDate),mediaSourceId:String(r.mediaSourceId||"").trim()}}function qdt(t={}){return Date.parse(String(t?.lastPlayedDate||""))||0}function d2r(t=""){let e=String(t||"").trim();return e?e.match(/\d{4}/)?.[0]||e:""}function Hdt(t={}){let e=String(t.k||"").trim(),r=String(t.v||"").trim();if(!e||!r)return null;let n=d2r(t.y);return{k:e,t:Number(t.t||3),v:r,...t.n?{n:String(t.n||"")}:{},...t.u?{u:String(t.u||"")}:{},...t.r?{r:String(t.r||"")}:{},...n?{y:n}:{}}}function f2r(t={}){let e=Hdt(t);return e?{...e,l:Number(t.l||0)}:null}function p2r(t={}){let e=Hdt(t);return e?wn("vod",e):""}function m2r(t={}){let e=f2r(t);return e?wn("sea",e):""}function Qdt(t){return t?.type==="ep"||t?.type==="media"}function h2r(t,e){if(!Qdt(t)||!["vod","sea"].includes(e?.type))return!1;let r=t.payload||{},n=e.payload||{};return!(String(r.k||"")!==String(n.k||"")||Number(r.t||3)!==Number(n.t||3)||String(r.v||"")!==String(n.v||"")||e.type==="sea"&&Number(r.l||0)!==Number(n.l||0))}function Gdt(t,e,r,n={}){let s=$s(String(r||""));if(!["vod","sea"].includes(s?.type))return[];let i=lm(t),a=pA(i,e);if(!a)return[];let o=!!n?.includePlayed;return Object.entries(a.items||{}).map(([c,u])=>({record:ep(u,c),decoded:$s(c)})).filter(({record:c,decoded:u})=>!h2r(u,s)||c.playbackPositionTicks<=0?!1:o||!c.played).sort((c,u)=>qdt(u.record)-qdt(c.record))}function l2(t,e,r,n={}){return Gdt(t,e,r,n)[0]||null}async function jdt(t){try{if(!t?.db?.push)return;await t.db.push(o2r,lm(t))}catch{}}function GM(t,e=!1){let r=t?.embyContext;if(!(!r||typeof r!="object")){if(e){r.playbackPersistTimer&&(clearTimeout(r.playbackPersistTimer),r.playbackPersistTimer=null),jdt(t);return}r.playbackPersistTimer||(r.playbackPersistTimer=setTimeout(async()=>{r.playbackPersistTimer=null,await jdt(t)},u2r))}}function g2r(t={},e=""){let r=[t?.ItemId,t?.itemId,t?.NowPlayingItem?.Id,t?.nowPlayingItem?.Id,t?.PlayingItemId,t?.playingItemId,t?.PlayableItemId,t?.playableItemId,e];for(let n of r){let s=String(n||"").trim();if(s)return s}return""}function A2r(t={}){let e=[t?.PositionTicks,t?.positionTicks,t?.PlaybackPositionTicks,t?.playbackPositionTicks,t?.Position,t?.position];for(let r of e){let n=Math.floor(HM(r,NaN));if(Number.isFinite(n)&&n>=0)return n}return 0}function y2r(t={}){let e=[t?.RunTimeTicks,t?.runTimeTicks,t?.NowPlayingItem?.RunTimeTicks,t?.nowPlayingItem?.runTimeTicks];for(let r of e){let n=Math.floor(HM(r,NaN));if(Number.isFinite(n)&&n>0)return n}return 0}function x2r(t,e,r,n){return tle(t?.Played,!1)||tle(t?.IsPlayed,!1)||e==="played"?!0:e!=="stopped"||n<=0?!1:r/n>=c2r}function b2r(t,e,r){let n=String(r||"").trim();if(!n)return null;let s=lm(t),i=pA(s,e);if(!i)return null;let a=i.items[n];return!a||typeof a!="object"?null:ep(a,n)}function Fo(t,e,r,n={}){let s=String(r||"").trim();if(!s)return ss(n);let i=b2r(t,e,s),o=l2(t,e,s)?.record||null||i;return o?ss({...n,IsFavorite:!!(i?.isFavorite||o.isFavorite),Played:o.played,PlayCount:o.playCount,PlaybackPositionTicks:o.playbackPositionTicks,...o.lastPlayedDate?{LastPlayedDate:o.lastPlayedDate}:{}}):ss(n)}function Fs(t,e,r=[]){return!Array.isArray(r)||!r.length||r.forEach(n=>{!n||!n.Id||(n.UserData=Fo(t,e,String(n.Id||""),n.UserData||{}))}),r}async function d2(t,e,r={},n="progress"){let s=g2r(r);if(!s)return null;let i=lm(t),a=pA(i,e);if(!a)return null;let o=ep(a.items[s],s),c=A2r(r),u=y2r(r),l=x2r(r,n,c,u),d=ep(o,s);d.lastPlayedDate=Ws(),c>0&&(d.playbackPositionTicks=c);let f=String(r?.ItemName||r?.itemName||r?.Name||r?.name||r?.NowPlayingItem?.Name||"").trim();f&&(d.name=f);let p=String(r?.MediaSourceId||r?.mediaSourceId||"").trim();return p&&(d.mediaSourceId=p),l?(d.played=!0,d.playCount=Math.max(1,d.playCount+(o.played?0:1)),d.playbackPositionTicks=0):n!=="ping"&&(c>0||n==="stopped"||n==="progress"||n==="playing")&&(d.played=!1),(r?.IsFavorite!==void 0||r?.isFavorite!==void 0)&&(d.isFavorite=tle(r?.IsFavorite??r?.isFavorite,d.isFavorite)),a.items[s]=d,GM(t,n==="stopped"),d}async function Vdt(t,e,r,n){let s=String(r||"").trim();if(!s)return ss();let i=lm(t),a=pA(i,e);if(!a)return ss();let o=ep(a.items[s],s),c=ep(o,s);return c.played=!!n,c.lastPlayedDate=Ws(),c.played&&(c.playCount=Math.max(1,c.playCount+(o.played?0:1))),c.playbackPositionTicks=0,a.items[s]=c,GM(t,!0),Fo(t,e,s)}async function zdt(t,e,r,n){let s=String(r||"").trim();if(!s)return ss();let i=lm(t),a=pA(i,e);if(!a)return ss();let o=ep(a.items[s],s);return o.isFavorite=!!n,o.lastPlayedDate=Ws(),a.items[s]=o,GM(t,!0),Fo(t,e,s)}async function Kdt(t,e,r){let n=String(r||"").trim();if(!n)return ss();let s=lm(t),i=pA(s,e);if(!i)return ss();let a=new Set([n,...Gdt(t,e,n).map(({record:o})=>o.itemId)]);for(let o of a){let c=ep(i.items[o],o);c.played=!1,c.playbackPositionTicks=0,c.lastPlayedDate=Ws(),i.items[o]=c}return GM(t,!0),Fo(t,e,n)}function E2r(t=""){let e=$s(String(t||""));return e?e.type==="vod"?{type:"Series",isFolder:!0,canPlay:!1,mediaType:"Video"}:e.type==="sea"?{type:"Season",isFolder:!0,canPlay:!1,mediaType:void 0}:e.type==="ep"||e.type==="media"?{type:"Episode",isFolder:!1,canPlay:!0,mediaType:"Video"}:{type:"Video",isFolder:!1,canPlay:!0,mediaType:"Video"}:{type:"Video",isFolder:!1,canPlay:!0,mediaType:"Video"}}function _2r(t){if(t?.name)return String(t.name);let e=$s(String(t?.itemId||"")),r=String(e?.payload?.n||"").trim();return r||"\u7EE7\u7EED\u64AD\u653E"}function S2r(t,e,r,n){let s=$s(String(n?.itemId||""));if(Qdt(s)){let a=p2r(s.payload||{});if(a){let o=m2r(s.payload||{});return{Name:String(s?.payload?.n||n?.name||"").trim()||"\u7EE7\u7EED\u64AD\u653E",Id:a,ServerId:r,IsFolder:!0,Type:"Series",MediaType:"Video",CollectionType:"tvshows",...o?{SeasonId:o}:{},DateCreated:n.lastPlayedDate||Ws(),ImageTags:{Primary:a},BackdropImageTags:[],UserData:Fo(t,e,a)}}}let i=E2r(n.itemId);return{Name:_2r(n),Id:n.itemId,ServerId:r,IsFolder:i.isFolder,Type:i.type,...i.mediaType?{MediaType:i.mediaType}:{},...i.canPlay?{CanPlay:!0}:{},DateCreated:n.lastPlayedDate||Ws(),ImageTags:{Primary:n.itemId},BackdropImageTags:[],UserData:Fo(t,e,n.itemId)}}function v2r(t={}){let e=$s(String(t?.Id||"")),r=e?.payload||{},n=String(r.k||"").trim(),s=String(r.v||"").trim();return e?.type==="vod"&&n&&s?`series:${n}:${Number(r.t||3)}:${s}`:e?.type==="sea"&&n&&s?`season:${n}:${Number(r.t||3)}:${s}:${Number(r.l||0)}`:`item:${String(t?.Id||"")}`}function Ydt(t,e,r){let n=lm(t),s=pA(n,e);if(!s)return[];let i=Object.entries(s.items||{}).map(([c,u])=>ep(u,c)).filter(c=>c.playbackPositionTicks>0&&!c.played).sort((c,u)=>{let l=Date.parse(String(c.lastPlayedDate||""))||0;return(Date.parse(String(u.lastPlayedDate||""))||0)-l}),a=new Set,o=[];for(let c of i){let u=S2r(t,e,r,c),l=v2r(u);!u?.Id||a.has(l)||(a.add(l),o.push(u))}return o}var C2r="https://api.themoviedb.org/3",Jdt=8e3,I2r=2,Xdt=20,Zdt=20;function eft(t=0){return new Promise(e=>setTimeout(e,Math.max(0,Number(t)||0)))}function f2(t){let e=t.embyContext?.config||{},r=String(e.tmdbApiKey||"").trim();return!e.tmdbEnable||!r?null:{apiKey:r,language:String(e.tmdbLanguage||"zh-CN"),imageBase:String(e.tmdbImageBase||"https://image.tmdb.org/t/p/original").replace(/\/+$/,""),timeoutMs:Jdt}}function tft(t="zh-CN"){let e=String(t||"zh-CN").trim().split(/[-_]/)[0].toLowerCase(),r=new Set;return e&&r.add(e),r.add("en"),r.add("null"),Array.from(r).join(",")}function T2r(t){let e=t.embyContext;return e.tmdbClientState||(e.tmdbClientState={tokens:Zdt,lastRefillAt:Date.now()}),e.tmdbClientState}function w2r(t){let e=Date.now(),r=Math.max(0,e-t.lastRefillAt)/1e3;r<=0||(t.tokens=Math.min(Zdt,t.tokens+r*Xdt),t.lastRefillAt=e)}async function R2r(t){let e=T2r(t);for(;;){if(w2r(e),e.tokens>=1){e.tokens-=1;return}let r=Math.max(0,1-e.tokens),n=Math.max(50,Math.ceil(r/Xdt*1e3));await eft(n)}}function N2r(t){let e=Number(t?.response?.status||0);return!e||e===429||e>=500}function O2r(t,e=0){let r=Number(t?.response?.headers?.["retry-after"]||0);return Number.isFinite(r)&&r>0?r*1e3:Math.min(4e3,500*(e+1))}function mA(t){return!!f2(t)}function p2(t,e=""){let r=String(e||"").trim();return r?/^https?:\/\//i.test(r)?r:`${f2(t)?.imageBase||"https://image.tmdb.org/t/p/original"}${r.startsWith("/")?"":"/"}${r}`:""}async function m2(t,e,r={},n={}){let s=f2(t);if(!s)return null;let i={...r||{}};i.language||(i.language=s.language);let a=Math.max(0,Number(n.maxRetries??I2r)||0);for(let o=0;o<=a;o+=1){await R2r(t);try{return(await Ae.get(`${C2r}${e}`,{params:{api_key:s.apiKey,...i},timeout:Number(n.timeoutMs||s.timeoutMs||Jdt),headers:{Accept:"application/json"}})).data||null}catch(c){if(o>=a||!N2r(c))return null;await eft(O2r(c,o))}}return null}async function rft(t,e,r=null){return m2(t,"/search/tv",{query:e,...r?{first_air_date_year:r}:{}})}async function nft(t,e,r=null){return m2(t,"/search/movie",{query:e,...r?{primary_release_year:r}:{}})}async function sft(t,e){let r=f2(t);return m2(t,`/tv/${Number(e)}`,{append_to_response:"external_ids,content_ratings,images,credits",include_image_language:tft(r?.language||"zh-CN")})}async function ift(t,e){let r=f2(t);return m2(t,`/movie/${Number(e)}`,{append_to_response:"external_ids,release_dates,images,credits",include_image_language:tft(r?.language||"zh-CN")})}async function aft(t,e,r){return m2(t,`/tv/${Number(e)}/season/${Number(r)}`)}function Mn(t=""){return String(t||"").trim()}function oft(t=[]){let e=[],r=new Set;for(let n of t){let s=Mn(n);!s||r.has(s)||(r.add(s),e.push(s))}return e}function P2r(t=""){let e=Mn(t);if(!e)return null;let r=e.replace(/[·•::\-_.!!??,,'"/\\()[\]{}【】《》\s]+$/g,"");if(!r)return null;let n=r.match(/([1-9]\d{0,2})$/);if(!n?.[1])return null;let s=Number.parseInt(n[1],10);return!Number.isInteger(s)||s<=0||s>50?null:s}function uft({explicitSources:t=[],suffixSources:e=[]}={}){for(let r of oft(t)){let n=Number.parseInt(Bce(r),10);if(Number.isInteger(n)&&n>0)return{seasonNumber:n,explicit:!0,strategy:"pattern"}}for(let r of oft(e)){let n=P2r(r);if(Number.isInteger(n)&&n>0)return{seasonNumber:n,explicit:!0,strategy:"title_suffix"}}return{seasonNumber:null,explicit:!1,strategy:"none"}}function D2r(t="",e={},r="tv"){let n=String(t||"");if(r!=="tv"||!n||String(e?.seasonHintStrategy||"")!=="title_suffix")return"";let s=Number.parseInt(String(e?.seasonNumber||""),10);if(!Number.isInteger(s)||s<=0)return"";let i=String(s);if(!n.endsWith(i))return"";let a=n.slice(0,Math.max(0,n.length-i.length));return a.length>=2?a:""}function cft(t="",e=""){return!t||!e?0:t===e?1:t.includes(e)||e.includes(t)?Math.min(.95,Math.min(t.length,e.length)/Math.max(t.length,e.length)+.15):NQ(t,e).length/Math.max(t.length,e.length)}function hA(t=""){let e=Mn(t).match(/\b(19|20)\d{2}\b/);return e?.[0]?Number(e[0]):null}function rle(t=""){let e=Mn(t);return Mn(sA(e)||e).toLowerCase().replace(/[·•::\-_.!!??,,'"/\\()[\]{}【】《》\s]+/g,"").replace(/第[一二三四五六七八九十百千万亿\d]+å­£/g,"").replace(/年番总集篇|年番合集篇|总集篇|合集篇|年番/g,"")}function lft(t={}){let e=Mn(t?.tmdbHintTitle||t?.vod_name||t?.name||""),r=Mn(sA(e)||e),n=Mn(t?.tmdbHintRemarks||t?.vod_remarks||""),s=uft({explicitSources:[Mn(t?.tmdbHintTitle),Mn(t?.tmdbHintRemarks),e,n,Mn(t?.vod_name),Mn(t?.vod_remarks)],suffixSources:[e,r,Mn(t?.tmdbHintTitle),Mn(t?.vod_name),Mn(t?.name)]});return{rawTitle:e,cleanedTitle:r,normalizedTitle:rle(r||e),altTitle:n,year:hA(t?.tmdbHintYear||t?.vod_year),seasonNumber:s.seasonNumber,seasonHintStrategy:s.strategy}}function nle(t={},e=null){let r=uft({explicitSources:[Mn(t?.tmdbHintTitle),Mn(t?.tmdbHintRemarks),Mn(t?.vod_name),Mn(t?.vod_remarks),Mn(e?.flag)],suffixSources:[Mn(t?.tmdbHintTitle),Mn(t?.vod_name),Mn(t?.name)]});return Number.isInteger(r.seasonNumber)&&r.seasonNumber>0?{seasonNumber:r.seasonNumber,explicit:r.explicit,strategy:r.strategy}:{seasonNumber:1,explicit:!1,strategy:"default"}}function dft(t={},e="tv"){return Mn(e==="movie"?t?.title||t?.original_title||t?.name||t?.original_name||"":t?.name||t?.original_name||t?.title||t?.original_title||"")}function k2r(t={},e="tv"){return hA(e==="movie"?t?.release_date:t?.first_air_date)}function L2r(t,e,r){let n=rle(t?.cleanedTitle||t?.rawTitle||""),s=D2r(n,t,r),i=rle(dft(e,r)),a=cft(n,i),o=cft(s,i);return Math.max(a,o)}function B2r(t,e,r){let n=r==="tv"&&String(t?.seasonHintStrategy||"")==="title_suffix"&&Number.parseInt(String(t?.seasonNumber||""),10)>1;if(!t?.year)return .5;let s=k2r(e,r);if(!s)return n?.5:.2;let i=Math.abs(t.year-s);return n&&i>=2?.5:i===0?1:i===1?.7:i===2?.4:0}function M2r(t,e,r){if(r!=="tv"||!t?.seasonNumber)return .5;let n=Number.parseInt(Bce(dft(e,r)),10)||null;return n?n===t.seasonNumber?1:.2:.5}function W2r(t,e,r="tv"){let n=L2r(t,e,r),s=B2r(t,e,r),i=M2r(t,e,r),a=Math.min(Number(e?.popularity||0)/100,1),o=Math.min(Number(e?.vote_average||0)/10,1),c=Math.max(a,o),u=Number((n*.7+s*.2+i*.05+c*.05).toFixed(4));return{title:Number(n.toFixed(4)),year:Number(s.toFixed(4)),season:Number(i.toFixed(4)),heat:Number(c.toFixed(4)),score:u}}function fft(t,e=[],r="tv"){let n=(Array.isArray(e)?e:[]).map(i=>{let a=W2r(t,i,r);return{candidate:i,score:a.score,breakdown:a}}).sort((i,a)=>a.score-i.score),s=n[0]||null;return!s||s.score<.5?{status:"NO_MATCH",best:null,candidates:n.slice(0,3)}:s.score<.8?{status:"CANDIDATE",best:s,candidates:n.slice(0,3)}:{status:"MATCH",best:s,candidates:n.slice(0,3)}}function VM(t={},e=null,r=0){return nle(t,e).seasonNumber}var AA={BINDING:30*24*60*60*1e3,DETAIL:7*24*60*60*1e3,SEASON:7*24*60*60*1e3,NO_MATCH:24*60*60*1e3,FAILURE:10*60*1e3};function ile(t){let e=t.embyContext;return e.tmdbStore||(e.tmdbStore={memory:CM({max:1200}),pending:new Map}),e.tmdbStore}function sle(t=""){return`/embyTmdb/${Buffer.from(String(t||""),"utf8").toString("base64url")}`}function $2r(t,e=0){return{value:t,expireAt:e>0?Date.now()+e:0}}function F2r(t=null){return!!(t&&t.expireAt>0&&t.expireAt<=Date.now())}async function U2r(t,e){try{let r=await t.db?.getObjectDefault(sle(e),null);return!r||typeof r!="object"?null:F2r(r)?(t.db?.delete&&await t.db.delete(sle(e)).catch(()=>{}),null):r}catch{return null}}async function gA(t,e,r={}){let n=ile(t),s=n.memory.get(e);if(s!==void 0)return s;if(r.persist===!1)return null;let i=await U2r(t,e);if(!i)return null;let a=i.expireAt>0?Math.max(1e3,i.expireAt-Date.now()):0;return n.memory.set(e,i.value,a),i.value}async function FE(t,e,r,n=0,s={}){if(ile(t).memory.set(e,r,n),s.persist===!1)return r;try{t.db?.push&&await t.db.push(sle(e),$2r(r,n))}catch{}return r}async function ale(t,e,r,n,s={}){let i=await gA(t,e,s);if(i!==null)return i;let a=ile(t);if(a.pending.has(e))return a.pending.get(e);let o=(async()=>{try{let c=await gA(t,e,s);if(c!==null)return c;let u=await n();return u!=null?FE(t,e,u,r,s):null}finally{a.pending.delete(e)}})();return a.pending.set(e,o),o}function Du(t=""){return String(t||"").trim()}function q2r(t=""){let e=hA(t);return e?String(e):""}function yA(t={},e={}){let r=t&&typeof t=="object"?t:{},n=Du(e?.n),s=Du(e?.r),i=q2r(e?.y||e?.vod_year),a=Du(e?.u);return n&&(r.tmdbHintTitle=n),s&&(r.tmdbHintRemarks=s),i&&(r.tmdbHintYear=i),!Du(r.vod_name)&&n&&(r.vod_name=n),!Du(r.vod_remarks)&&s&&(r.vod_remarks=s),!Du(r.vod_year)&&i&&(r.vod_year=i),!Du(r.vod_pic)&&a&&(r.vod_pic=a),r}function j2r(t={}){let e=Du(t?.v);return e?yA({vod_id:e,vod_name:"",vod_pic:"",vod_remarks:"",vod_year:""},t):null}function Vn(t={}){let e={};return Object.entries(t).forEach(([r,n])=>{n!=null&&(typeof n=="string"&&!n.trim()||Array.isArray(n)&&n.length===0||!Array.isArray(n)&&typeof n=="object"&&Object.keys(n).length===0||(e[r]=n))}),e}function cle(t){let e=Number(t);return Number.isFinite(e)&&e>0?Number(e.toFixed(1)):void 0}function ule(t=""){let e=String(t||"").trim();return/^\d{4}-\d{2}-\d{2}$/.test(e)?`${e}T00:00:00.000Z`:void 0}function H2r(t){let e=Number(t);return Number.isFinite(e)&&e>0?Math.round(e*60*1e7):void 0}function Q2r(t=[]){return(Array.isArray(t)?t:[]).map(e=>String(e?.name||"").trim()).filter(Boolean)}function G2r(t=[]){return(Array.isArray(t)?t:[]).filter(e=>e?.name).map(e=>({Name:String(e.name),Id:String(e.id||e.name)}))}function V2r(t={},e="tv"){return e==="movie"?{name:String(t?.title||t?.original_title||"").trim(),originalTitle:String(t?.original_title||t?.title||"").trim()}:{name:String(t?.name||t?.original_name||"").trim(),originalTitle:String(t?.original_name||t?.name||"").trim()}}function z2r(t=""){return String(t||"").trim().toLowerCase()}function K2r(t={}){let e=Array.isArray(t?.images?.logos)?t.images.logos:[];if(!e.length)return[];let r=e.map((n,s)=>{let i=z2r(n?.iso_639_1),a=String(n?.file_path||"").trim(),o=Number(n?.vote_average||0),c=Number(n?.vote_count||0),u=Number(n?.width||0),l=i?i==="en"?2:3:1;return{index:s,filePath:a,voteAverage:Number.isFinite(o)?o:0,voteCount:Number.isFinite(c)?c:0,width:Number.isFinite(u)?u:0,languageScore:l}}).filter(n=>n.filePath);return r.sort((n,s)=>s.languageScore-n.languageScore||s.voteAverage-n.voteAverage||s.voteCount-n.voteCount||s.width-n.width||n.index-s.index),r}function zM(t={}){let e=K2r(t);return e.length&&e[0]?.filePath||""}function Y2r(t="",e="",r=0){let n=Vn({n:String(t||"").trim(),u:String(e||"").trim()||void 0,pid:Number(r||0)>0?String(r):void 0});return wn("img",n)}function J2r(t,e={},r={}){let n=String(e?.name||e?.original_name||"").trim();if(!n)return null;let s=p2(t,e?.profile_path||""),i=Number(e?.id||0),a=Y2r(n,s,i),o=String(r.role||"").trim(),c=String(r.type||"Actor").trim();return Vn({Name:n,Id:a,Role:o||void 0,Type:c||void 0,PrimaryImageTag:s?a:void 0,ImageTags:s?{Primary:a}:void 0})}function X2r(t={},e){let r=Array.isArray(t?.credits?.cast)?t.credits.cast:[],n=[],s=new Set,i=(o,c="")=>{if(!o)return;let u=String(c||`${o.Name}:${o.Role||""}`);s.has(u)||(s.add(u),n.push(o))};return[...r].map((o,c)=>({person:o,index:c,order:Number(o?.order??c),popularity:Number(o?.popularity||0)})).sort((o,c)=>o.order-c.order||c.popularity-o.popularity||o.index-c.index).slice(0,24).forEach(o=>{let c=Number(o.person?.id||0),u=String(o.person?.character||"").trim()||"\u6F14\u5458";i(J2r(e,o.person,{role:u,type:"Actor"}),c>0?`cast:${c}`:`cast:${o.person?.name||""}:${u}`)}),n.slice(0,24)}function Z2r(t={}){let e={};return t?.id&&(e.Tmdb=String(t.id)),t?.external_ids?.imdb_id&&(e.Imdb=String(t.external_ids.imdb_id)),t?.external_ids?.tvdb_id&&(e.Tvdb=String(t.external_ids.tvdb_id)),Object.keys(e).length>0?e:void 0}function pft(t=[]){let e=(Array.isArray(t)?t:[]).map(r=>({country:String(r?.iso_3166_1||"").trim().toUpperCase(),certification:String(r?.certification||r?.rating||"").trim()})).filter(r=>r.certification);for(let r of["US","CN","GB","HK","TW"]){let n=e.find(s=>s.country===r);if(n)return n.certification}return e[0]?.certification||void 0}function eRr(t={},e="tv"){if(e==="movie"){let r=[];return(Array.isArray(t?.release_dates?.results)?t.release_dates.results:[]).forEach(s=>{(Array.isArray(s?.release_dates)?s.release_dates:[]).forEach(a=>{r.push({iso_3166_1:s?.iso_3166_1,certification:a?.certification})})}),pft(r)}return pft(Array.isArray(t?.content_ratings?.results)?t.content_ratings.results:[])}function tRr(t,e){return`binding:${String(t?.spiderKey||"")}:${Number(t?.spiderType||3)}:${String(t?.apiBase||"")}:${String(e?.vod_id||"")}`}function rRr(t,e,r){return`detail:${String(t||"")}:${Number(e||0)}:${String(r||"zh-CN")}`}function nRr(t,e,r){return`season:${Number(t||0)}:${Number(e||0)}:${String(r||"zh-CN")}`}function sRr(t){return`no-match:v2:${String(t?.normalizedTitle||"")}:${String(t?.year||"")}:${String(t?.seasonNumber||"")}:${String(t?.seasonHintStrategy||"")}`}function hft(t){return`failure:${t}`}function tp(t,e,r={}){if(t.embyContext?.config?.requestLog)try{console.log(`[Emby Transform] ${e}:`,JSON.stringify(r))}catch{}}function gft(t={},e="tv"){return e==="movie"?String(t?.title||t?.original_title||t?.name||t?.original_name||"").trim():String(t?.name||t?.original_name||t?.title||t?.original_title||"").trim()}function Aft(t={},e="tv"){return String(e==="movie"?t?.release_date||"":t?.first_air_date||"").trim()}function ole(t={}){let e=typeof t?.year=="number"&&Number.isFinite(t.year)?t.year:void 0,r=typeof t?.seasonNumber=="number"&&Number.isFinite(t.seasonNumber)?t.seasonNumber:void 0,n=String(t?.seasonHintStrategy||"").trim()||void 0;return Vn({rawTitle:String(t?.rawTitle||""),cleanedTitle:String(t?.cleanedTitle||""),normalizedTitle:String(t?.normalizedTitle||""),altTitle:String(t?.altTitle||""),year:e,seasonNumber:r,seasonHintStrategy:n})}function iRr(t=[],e="tv",r=3){return(Array.isArray(t)?t:[]).slice(0,Math.max(0,Number(r)||0)).map(n=>{let s=n?.candidate||{},i=n?.breakdown||{};return Vn({id:Number(s?.id||0)||void 0,title:gft(s,e),date:Aft(s,e),popularity:Number.isFinite(Number(s?.popularity))?Number(s.popularity):void 0,voteAverage:Number.isFinite(Number(s?.vote_average))?Number(s.vote_average):void 0,score:Number.isFinite(Number(n?.score))?Number(n.score):void 0,breakdown:Vn({title:Number.isFinite(Number(i?.title))?Number(i.title):void 0,year:Number.isFinite(Number(i?.year))?Number(i.year):void 0,season:Number.isFinite(Number(i?.season))?Number(i.season):void 0,heat:Number.isFinite(Number(i?.heat))?Number(i.heat):void 0})})})}function mft(t=null){if(!t?.candidate)return null;let e=t.candidate;return Vn({mediaType:String(t.mediaType||""),status:String(t.status||""),score:Number.isFinite(Number(t.score))?Number(t.score):void 0,candidate:Vn({id:Number(e?.id||0)||void 0,title:gft(e,t.mediaType||"tv"),date:Aft(e,t.mediaType||"tv")}),breakdown:Vn({title:Number.isFinite(Number(t?.breakdown?.title))?Number(t.breakdown.title):void 0,year:Number.isFinite(Number(t?.breakdown?.year))?Number(t.breakdown.year):void 0,season:Number.isFinite(Number(t?.breakdown?.season))?Number(t.breakdown.season):void 0,heat:Number.isFinite(Number(t?.breakdown?.heat))?Number(t.breakdown.heat):void 0})})}function aRr(t={},e={}){let r=String(e.preferredMediaType||"").trim().toLowerCase();return r==="tv"?e.allowFallback===!1?["tv"]:["tv","movie"]:r==="movie"?e.allowFallback===!1?["movie"]:["movie","tv"]:$E(t)==="Series"?e.allowFallback===!0?["tv","movie"]:["tv"]:["movie","tv"]}async function oRr(t,e,r){let n=[...new Set([e?.cleanedTitle,e?.rawTitle].map(c=>String(c||"").trim()).filter(Boolean))],s=new Map,i=[],o=r==="tv"&&Number.parseInt(String(e?.seasonNumber||""),10)>1&&String(e?.seasonHintStrategy||"")==="title_suffix"?null:e?.year;for(let c of n){let u=r==="movie"?await nft(t,c,e?.year):await rft(t,c,o),l=Array.isArray(u?.results)?u.results:[],d=0;if(l.forEach(f=>{let p=Number(f?.id||0);p>0&&!s.has(p)&&(s.set(p,f),d+=1)}),i.push(Vn({query:c,resultCount:l.length,acceptedCount:d,collectedCount:s.size})),s.size>=5)break}return{results:Array.from(s.values()),queryLogs:i}}async function UE(t,e,r,n={}){if(!mA(t)||!e?.spiderKey||!r?.vod_id)return null;let s={spiderKey:String(e?.spiderKey||""),spiderType:Number(e?.spiderType||3),vodId:String(r?.vod_id||"")},i=tRr(e,r),a=String(n.preferredMediaType||"").trim().toLowerCase(),o=await gA(t,i);if(o?.tmdbId&&o?.mediaType)return a&&n.allowFallback===!1&&o.mediaType!==a?(tp(t,"tmdb.match.binding.cache.reject",Vn({...s,cachedMediaType:String(o.mediaType||""),preferredMediaType:a})),null):(tp(t,"tmdb.match.binding.cache.hit",Vn({...s,mediaType:String(o.mediaType||""),tmdbId:Number(o.tmdbId||0)||void 0,score:Number.isFinite(Number(o.score))?Number(o.score):void 0})),o);let c=lft(r),u=typeof n.allowFallback=="boolean"?n.allowFallback:void 0;if(tp(t,"tmdb.match.input",Vn({...s,input:ole(c),preferredMediaType:a||void 0,allowFallback:u})),!c?.normalizedTitle)return tp(t,"tmdb.match.skip.invalid_input",Vn({...s,input:ole(c)})),null;let l=sRr(c),d=await gA(t,l);if(d)return tp(t,"tmdb.match.skip.no_match_cache",Vn({...s,status:String(d?.status||""),score:Number.isFinite(Number(d?.score))?Number(d.score):void 0})),null;let f=null;for(let m of aRr(r,n)){let{results:h,queryLogs:A}=await oRr(t,c,m),g=fft(c,h,m);if(tp(t,"tmdb.match.round",Vn({...s,mediaType:m,queryLogs:A,resultCount:h.length,status:g.status,bestScore:Number.isFinite(Number(g?.best?.score))?Number(g.best.score):void 0,topCandidates:iRr(g.candidates,m,3)})),g.best&&(!f||g.best.score>f.score)&&(f={mediaType:m,...g.best,status:g.status}),g.status==="MATCH"&&g.best?.candidate?.id){let b=g.best.candidate,y=Vn({mediaType:m,tmdbId:Number(b.id),score:g.best.score,matchedTitle:String(m==="movie"?b.title||b.original_title||"":b.name||b.original_name||""),matchedYear:m==="movie"?hA(b.release_date):hA(b.first_air_date),updatedAt:Date.now()});return await FE(t,i,y,AA.BINDING),tp(t,"tmdb.match.binding.set",Vn({...s,mediaType:m,tmdbId:Number(y.tmdbId||0)||void 0,score:Number.isFinite(Number(y.score))?Number(y.score):void 0,matchedTitle:String(y.matchedTitle||""),matchedYear:Number.isFinite(Number(y.matchedYear))?Number(y.matchedYear):void 0,best:mft({mediaType:m,...g.best,status:g.status})})),y}}let p={status:f?.score>=.5?"CANDIDATE":"NO_MATCH",score:Number(f?.score||0),checkedAt:Date.now()};return await FE(t,l,p,f?.score>=.5?15*60*1e3:AA.NO_MATCH),tp(t,"tmdb.match.no_match_set",Vn({...s,noMatch:p,best:mft(f),input:ole(c)})),null}async function yft(t,e={},r={}){try{if(!mA(t))return null;let n=Zl(e),s=j2r(e);return!n?.spiderKey||!s?.vod_id?null:Cft(t,{spiderRef:n,vod:s,options:r})}catch{return null}}async function qE(t,e){if(!e?.tmdbId||!e?.mediaType)return null;let r=String(t.embyContext?.config?.tmdbLanguage||"zh-CN"),n=rRr(e.mediaType,e.tmdbId,r),s=hft(n);if(await gA(t,s))return null;let i=await ale(t,n,AA.DETAIL,async()=>{let a=e.mediaType==="movie"?await ift(t,e.tmdbId):await sft(t,e.tmdbId);return a?.id?a:null});return i?.id?i:(await FE(t,s,{failedAt:Date.now()},AA.FAILURE),null)}async function cRr(t,e,r){if(!e?.tmdbId||e?.mediaType!=="tv")return null;let n=String(t.embyContext?.config?.tmdbLanguage||"zh-CN"),s=nRr(e.tmdbId,r,n),i=hft(s);if(await gA(t,i))return null;let a=await ale(t,s,AA.SEASON,async()=>{let o=await aft(t,e.tmdbId,r);return o?.season_number!=null?o:null});return a?.season_number!=null?a:(await FE(t,i,{failedAt:Date.now()},AA.FAILURE),null)}function uRr(t={},e=null){let r=[Du(t?.tmdbHintTitle||t?.vod_name),Du(t?.tmdbHintRemarks||t?.vod_remarks),Du(e?.flag)].filter(Boolean).join(" ");return/年番/i.test(r)}function lRr(t=""){let e=String(t||"").trim();if(!e)return null;let r=Number.parseInt(e,10);if(Number.isInteger(r)&&r>0)return r;let n=e.match(/(\d{1,4})/);if(!n?.[1])return null;let s=Number.parseInt(n[1],10);return Number.isInteger(s)&&s>0?s:null}function dRr(t=null){let r=(Array.isArray(t?.episodes)?t.episodes:[]).map(n=>lRr(n?.name)).filter(n=>Number.isInteger(n)&&n>0);return r.length?{count:r.length,min:Math.min(...r),max:Math.max(...r)}:{count:0,min:0,max:0}}function xft(t={}){return(Array.isArray(t?.seasons)?t.seasons:[]).map(e=>({seasonNumber:Number(e?.season_number||0),episodeCount:Number(e?.episode_count||0),name:String(e?.name||"").trim()})).filter(e=>Number.isInteger(e.seasonNumber)&&e.seasonNumber>0)}function fRr(t={},e={},r=null,n={seasonNumber:1,explicit:!1}){let s=xft(t),i=Number(n?.seasonNumber||1),a=Number.isInteger(i)&&i>0?i:1,o=!!n?.explicit,c=uRr(e,r),u=dRr(r),l=d=>{let f=Number(d||0);return!Number.isInteger(f)||f<=0?[]:s.filter(p=>p.episodeCount>=f).sort((p,m)=>m.seasonNumber-p.seasonNumber||m.episodeCount-p.episodeCount)};if(!s.length)return{seasonNumber:a,reason:"no_tmdb_seasons",explicit:o,yearFan:c,episodeStats:u,seasons:[]};if(o&&s.some(d=>d.seasonNumber===a))return{seasonNumber:a,reason:"explicit_hint",explicit:o,yearFan:c,episodeStats:u,seasons:s};if(c){let d=l(u.max);return d.length?{seasonNumber:d[0].seasonNumber,reason:"yearfan_episode_cap",explicit:o,yearFan:c,episodeStats:u,seasons:s}:{seasonNumber:[...s].sort((p,m)=>m.episodeCount-p.episodeCount||m.seasonNumber-p.seasonNumber)[0].seasonNumber,reason:"yearfan_largest_season",explicit:o,yearFan:c,episodeStats:u,seasons:s}}if(u.max>=6&&u.count>=u.max){let d=s.filter(f=>f.episodeCount===u.max);if(d.length===1)return{seasonNumber:d[0].seasonNumber,reason:"episode_count_exact_unique",explicit:o,yearFan:c,episodeStats:u,seasons:s}}if(!o&&u.max>=100){let d=l(u.max);if(d.length)return{seasonNumber:d[0].seasonNumber,reason:"high_episode_secondary",explicit:o,yearFan:c,episodeStats:u,seasons:s}}return s.some(d=>d.seasonNumber===a)?{seasonNumber:a,reason:o?"explicit_hint":"default_hint",explicit:o,yearFan:c,episodeStats:u,seasons:s}:{seasonNumber:[...s].sort((f,p)=>f.seasonNumber-p.seasonNumber)[0].seasonNumber,reason:"fallback_first_available",explicit:o,yearFan:c,episodeStats:u,seasons:s}}async function h2(t,e,r={},n=null,s=0,i=null){if(e?.mediaType!=="tv")return{seasonNumber:null,seasonDetail:null,detail:null};let a=i||await qE(t,e);if(!a)return{seasonNumber:null,seasonDetail:null,detail:null};let o=nle(r,n),c=fRr(a,r,n,o),u=Number(c?.seasonNumber||0);if(!Number.isInteger(u)||u<=0)return{seasonNumber:null,seasonDetail:null,detail:a};let l=await cRr(t,e,u);return tp(t,"tmdb.match.season_resolve",Vn({spiderKey:String(e?.spiderKey||""),tmdbId:Number(e?.tmdbId||0)||void 0,lineIndex:Number.isInteger(Number(s))?Number(s):void 0,chosenSeason:u,reason:String(c?.reason||""),explicitHint:c?.explicit===!0?!0:void 0,yearFanHint:c?.yearFan===!0?!0:void 0,episodeMax:Number(c?.episodeStats?.max||0)||void 0,seasonCandidates:Array.isArray(c?.seasons)?c.seasons.map(d=>Vn({seasonNumber:Number(d?.seasonNumber||0)||void 0,episodeCount:Number(d?.episodeCount||0)||void 0,name:String(d?.name||"")})):void 0})),{seasonNumber:u,seasonDetail:l&&l?.season_number!=null?l:null,detail:a}}async function bft(t,e,r={},n=null){let s=await h2(t,e,r,null,0,n);return{seasonNumber:s.seasonNumber,seasonDetail:s.seasonDetail}}function pRr(t,e,r,n=null){let s=e?.mediaType==="movie"?"movie":"tv",i=s==="tv"?xft(t).length:0,a=Number(n?.seasonNumber||0),o=n?.seasonDetail||null,c=s==="tv"&&Number.isInteger(a)&&a>0&&o?.season_number!=null,u=s==="movie"?t?.release_date:o?.air_date||t?.first_air_date,l=s==="movie"?Number(t?.runtime||0):Array.isArray(t?.episode_run_time)?t.episode_run_time.find(m=>Number(m)>0):0,d=V2r(t,s),f=zM(t),p=c?o?.poster_path||t?.backdrop_path||t?.poster_path||"":t?.backdrop_path||t?.poster_path||"";return Vn({Name:d.name||void 0,OriginalTitle:d.originalTitle||void 0,Overview:String(t?.overview||"").trim()||void 0,Taglines:t?.tagline?[String(t.tagline)]:void 0,Genres:Q2r(t?.genres),GenreItems:G2r(t?.genres),People:X2r(t,r),ProviderIds:Z2r(t),CommunityRating:cle(t?.vote_average),RunTimeTicks:H2r(l),OfficialRating:eRr(t,s),PremiereDate:ule(u),ProductionYear:hA(u)||void 0,SeasonCount:i>0?i:void 0,ChildCount:i>0?i:void 0,BackdropImageTags:p?["tmdb"]:void 0,ImageTags:f?{Logo:"tmdb"}:void 0})}function mRr(t,e){return Vn({Overview:String(t?.overview||"").trim()||void 0,PremiereDate:ule(t?.air_date),CommunityRating:cle(t?.vote_average)})}function hRr(t,e,r,n){return Vn({Name:String(e?.name||"").trim()||void 0,Overview:String(e?.overview||"").trim()||void 0,CommunityRating:cle(e?.vote_average),PremiereDate:ule(e?.air_date),BackdropImageTags:e?.still_path?["tmdb"]:void 0})}function Eft(t,e,r=-1){let n=Array.isArray(t?.episodes)?t.episodes:[],s=n.find(i=>Number(i?.episode_number||0)===Number(e||0));return s||(r>=0&&r<n.length?n[r]:null)}function _ft(t,e,r){let n=fA(t,Number(e||0)+1),s=String(t||"").trim(),i=Number.parseInt(s,10);if(/^\d{3,4}$/.test(s)&&Number.isInteger(i)&&r>0){let a=Math.floor(i/100),o=i%100;if(a===r&&o>0)return o}return n}async function Sft(t,e={}){if(!mA(t))return null;let r=await UE(t,e?.spiderRef,e?.vod,{preferredMediaType:"tv",allowFallback:!1});if(!r||r.mediaType!=="tv")return null;let n=await h2(t,r,e?.vod||{},e?.line||null,Number(e?.lineIndex||0),null);return!n?.seasonDetail||!n?.seasonNumber?null:{seasonNumber:n.seasonNumber,seasonDetail:n.seasonDetail}}function vft(t,e={}){if(!t?.seasonDetail||!t?.seasonNumber)return null;let r=_ft(e?.episode?.name,e?.episodeIndex,t.seasonNumber),n=Eft(t.seasonDetail,r,Number(e?.episodeIndex||0));return n?hRr(t.seasonDetail,n,t.seasonNumber,r):null}async function gRr(t,e){let r=e?.payload||{},n=Zl(r),s=String(r.v||"");if(!n?.spiderKey||!s)return null;let i=await Oc(t,n,s).catch(()=>null),a=yA({vod_id:s,vod_name:String(r.n||""),vod_pic:String(r.u||""),vod_remarks:String(r.r||""),vod_year:String(r.y||"")},r),o=Pc(i)||a;return yA(o,r),!String(o?.vod_name||"").trim()&&r?.n&&(o.vod_name=String(r.n||"").trim()),!String(o?.vod_pic||"").trim()&&r?.u&&(o.vod_pic=String(r.u||"").trim()),{spiderRef:n,vod:o,lines:ho(o?.vod_play_from,o?.vod_play_url)}}function ARr(t,e="primary",r=null){let n=String(e||"primary").trim().toLowerCase(),s=r?.seasonDetail||null,i=String(s?.poster_path||"").trim();return n==="logo"?zM(t):["backdrop","thumb","banner"].includes(n)?i||t?.backdrop_path||t?.poster_path||"":i||t?.poster_path||t?.backdrop_path||""}function yRr(t,e,r="primary"){let n=String(r||"primary").trim().toLowerCase();return n==="logo"?zM(t):["backdrop","thumb","banner"].includes(n)?t?.backdrop_path||e?.poster_path||t?.poster_path||"":e?.poster_path||t?.poster_path||t?.backdrop_path||""}function xRr(t,e,r="primary"){let n=String(r||"primary").trim().toLowerCase();return n==="logo"?zM(t):["backdrop","thumb","banner"].includes(n)?e?.still_path||t?.backdrop_path||t?.poster_path||"":e?.still_path||t?.poster_path||t?.backdrop_path||""}async function Cft(t,e={}){try{if(!mA(t))return null;let r=await UE(t,e?.spiderRef,e?.vod,e?.options||{});if(!r)return null;let n=await qE(t,r);if(!n)return null;let s=await bft(t,r,e?.vod||{},n);return pRr(n,r,t,s)}catch{return null}}async function bRr(t,e={}){try{if(!mA(t))return null;let r=await UE(t,e?.spiderRef,e?.vod,{preferredMediaType:"tv",allowFallback:!1});if(!r||r.mediaType!=="tv")return null;let n=await qE(t,r);if(!n)return null;let s=await h2(t,r,e?.vod||{},e?.line||null,Number(e?.lineIndex||0),n);return s?.seasonDetail?mRr(s.seasonDetail,s.seasonNumber):null}catch{return null}}async function g2(t,e={}){try{let r=await Sft(t,e);return r?vft(r,e):null}catch{return null}}async function KM(t,e={}){let r=Array.isArray(e?.episodes)?e.episodes:[];if(!r.length)return[];try{let n=await Sft(t,e);if(!n)return r.map(()=>null);let s=Number(e?.episodeOffset||0);return r.map((i,a)=>vft(n,{episode:i,episodeIndex:s+a}))}catch{return r.map(()=>null)}}async function YM(t,e,r={}){return e==="vod"?Cft(t,r):e==="season"?bRr(t,r):e==="episode"?g2(t,r):null}async function Ift(t,e,r="Primary"){try{if(!mA(t))return"";if(e?.type==="img")return String(e?.payload?.u||"");let n=await gRr(t,e);if(!n)return"";let{spiderRef:s,vod:i,lines:a}=n,o=String(r||"Primary").trim().toLowerCase();if(e?.type==="vod"){let c=await UE(t,s,i,{});if(!c)return"";let u=await qE(t,c);if(!u)return"";let l=await bft(t,c,i,u);return p2(t,ARr(u,o,l||null))}if(e?.type==="sea"){let c=await UE(t,s,i,{preferredMediaType:"tv",allowFallback:!1});if(!c||c.mediaType!=="tv")return"";let u=await qE(t,c);if(!u)return"";let l=Number(e?.payload?.l||0),f=(await h2(t,c,i,a?.[l]||null,l,u))?.seasonDetail||null;return u&&f?p2(t,yRr(u,f,o)):""}if(e?.type==="ep"||e?.type==="media"){let c=await UE(t,s,i,{preferredMediaType:"tv",allowFallback:!1});if(!c||c.mediaType!=="tv")return"";let u=await qE(t,c);if(!u)return"";let l=Number(e?.payload?.l||0),d=Number(e?.payload?.e||0),f=a?.[l],p=f?.episodes?.[d],m=await h2(t,c,i,f||null,l,u),h=Number(m?.seasonNumber||0),A=m?.seasonDetail||null;if(!A)return"";let g=_ft(p?.name,d,h),b=Eft(A,g,d);return b?p2(t,xRr(u,b,o)):""}return""}catch{return""}}var Oft=!0,ERr=new Set(["tgchannel","tgsou","pansou","panta"]),_Rr=!1,SRr=8e3;function vRr(t){return ERr.has(String(t||""))}function CRr(t=""){return/(移动|yidong|139)/i.test(String(t||""))}function IRr(t=""){try{let e=String(new URL(String(t||"")).hostname||"").toLowerCase();return e.includes("mcloud.139.com")||e.includes("yun.139.com")}catch{return!1}}function Tft(t="",e="mkv"){let r=String(t||"").trim();if(!r)return e;if(/\.m3u8($|\?)/i.test(r))return"m3u8";try{let s=new URL(r).pathname.match(/\.([a-z0-9]{2,6})$/i);if(s?.[1])return s[1].toLowerCase()}catch{}return e}function JM(t,e){let r=wn("lib",{k:t.spiderKey,t:t.spiderType,...t.siteName?{n:t.siteName}:{},...t.apiBase?{a:t.apiBase}:{}});return{Name:t.siteName,Id:r,ServerId:e,IsFolder:!0,Type:"CollectionFolder",PrimaryImageAspectRatio:1.7778,ImageTags:{Primary:r},BackdropImageTags:[],UserData:ss()}}function TRr(t,e,r,n){let s=String(e.type_name||e.type_id||""),i=wn("cat",{k:t.spiderKey,t:t.spiderType,c:String(e.type_id),...s?{n:s}:{},...t.apiBase?{a:t.apiBase}:{}});return{Name:s,Id:i,ParentId:r,ServerId:n,IsFolder:!0,Type:"Folder",PrimaryImageAspectRatio:1.7778,ImageTags:{Primary:i},BackdropImageTags:[],UserData:ss()}}var Pft=new Set(["movie","series","video","episode","musicvideo"]);function wft(t=""){return String(t||"").split(",").map(e=>e.trim().toLowerCase()).filter(Boolean)}function wRr(t=[],e=!1){return e?!0:t.some(r=>Pft.has(r))}function RRr(t=[]){return t.some(e=>Pft.has(e))}function NRr(t=[],e=!1,r=""){return e?!1:t.includes("folder")?!0:/(^|,)isfolder(,|$)/i.test(String(r||""))}function ORr(t,e=[]){if(!e.length)return!0;let r=String(t?.Type||"").toLowerCase();return!!(e.includes(r)||e.includes("video")&&["movie","video","episode"].includes(r)||e.includes("folder")&&t?.IsFolder)}function y2(t=[],e=[]){return e.length?t.filter(r=>ORr(r,e)):t}function A2(t,e,r){return!r||!r.Id||(r.UserData=Fo(t,e,String(r.Id||""),r.UserData||{})),r}function Rft(t=[]){let e=[],r=t.filter(s=>Array.isArray(s)&&s.length),n=r.reduce((s,i)=>Math.max(s,i.length),0);for(let s=0;s<n;s+=1)r.forEach(i=>{i[s]&&e.push(i[s])});return e}function Nft(t){let e=null,r=new Promise((n,s)=>{e=setTimeout(()=>s(new Error("timeout")),SRr)});return Promise.race([t,r]).finally(()=>{e&&clearTimeout(e)})}async function e6(t,e,r,n,s,i,a,o=[],c=null){let u=Math.max(0,Number(n)||0),l=Math.max(1,Number(s)||1),d=await NE(t,e,r,1,{},c).catch(()=>null),f=Array.isArray(d?.list)?d.list:[],p=Number(d?.limit||0),m=Math.max(1,p||f.length||l),h=Math.floor(u/m)+1,A=u%m,g=[],b=h,y=!1,x=!1,v=Number(d?.pagecount||0),C=Number(d?.total||0),R=h+Math.max(3,Math.ceil((A+l)/m)+2);for(;g.length<l&&b<=R;){let M=b===1?d:await NE(t,e,r,b,{},c).catch(()=>null),k=Array.isArray(M?.list)?M.list:[],B=y2(k.map(ue=>r6(e,ue,i,a)),o),Z=Number(M?.pagecount||0);Z>0&&(v=Math.max(v,Z));let W=Number(M?.total||0);W>0&&(C=Math.max(C,W));let F=b===h?A:0,V=B.slice(F),j=l-g.length;g.push(...V.slice(0,j));let J=Math.min(V.length,j);y=F+J>=B.length;let se=B.length===0,oe=v>0&&b>=v&&y;if(se||oe){x=!0;break}if(g.length>=l)break;b+=1}let w=Number.isFinite(C)&&C>0&&C<9e3,N=g.length>=l;N&&x&&(N=!1),N&&v>0&&b>=v&&y&&(N=!1),N&&w&&u+g.length>=C&&(N=!1);let P=u+g.length+(N?1:0),L=P;return w&&(L=Math.max(C,u+g.length),N&&(L=Math.max(L,P))),{rows:g,totalRecordCount:L}}async function lle(t,e,r,n,s=[],i=0,a=16,o=null){let c=await Jw(t,e,o).catch(()=>null),u=Array.isArray(c?.class)?c.class.filter(f=>String(f?.type_id||"").trim()):[];if(u.length){let f=String(u[0].type_id||"");if(f)return e6(t,e,f,i,a,r,n,s,o)}let l=Array.isArray(c?.list)?c.list:[],d=y2(l.map(f=>r6(e,f,r,n)),s);return{rows:Ia(d,i,a),totalRecordCount:d.length}}function Dft(t={}){return String(t?.siteName||t?.spiderKey||"").trim()}function kft(t={}){let e=String(t?.vod_tag||"").trim().toLowerCase(),r=t?.cate&&typeof t.cate=="object"?t.cate:null,n=String(r?.id||"").trim(),s=String(t?.vod_id||"").trim();return n||(e==="folder"&&s?s:"")}function PRr(t,e,r,n,s={}){let i=!!s?.includeSourcePrefix,a=kft(e),o=String(e.vod_pic||"").trim(),c=String(e.vod_remarks||"").trim(),u=String(e.vod_year||"").trim(),l=Dft(t),d=String(e.vod_name||e?.cate?.name||a||"").trim(),f=d||"\u672A\u547D\u540D\u76EE\u5F55",p={k:t.spiderKey,t:t.spiderType,c:a,...t.apiBase?{a:t.apiBase}:{}};o&&(p.u=o),d&&(p.n=d),c&&(p.r=c),u&&(p.y=u);let m=wn("cat",p);return{Name:i&&l?`${l} \xB7 ${f}`:f,Id:m,ParentId:r,ServerId:n,IsFolder:!0,Type:"Folder",Overview:c,PrimaryImageAspectRatio:1.7778,ImageTags:{Primary:m},BackdropImageTags:[],UserData:ss()}}function r6(t,e,r,n,s={}){if(kft(e))return PRr(t,e,r,n,s);let i=!!s?.includeSourcePrefix,a=String(e.vod_pic||""),o=String(e.vod_remarks||"").trim(),c=String(e.vod_year||"").trim(),u=Dft(t),l=String(e.vod_name||"").trim(),d=l||"\u672A\u547D\u540D",f={k:t.spiderKey,t:t.spiderType,v:String(e.vod_id),...t.apiBase?{a:t.apiBase}:{}};a&&(f.u=a),l&&(f.n=l),o&&(f.r=o),c&&(f.y=c);let p=wn("vod",f),h=Oft?"Series":$E(e);return{Name:i&&u?`${u} \xB7 ${d}`:d,Id:p,ParentId:r,ServerId:n,IsFolder:h==="Series",Type:h,MediaType:"Video",Overview:String(e.vod_remarks||""),PrimaryImageAspectRatio:.6667,ImageTags:{Primary:p},BackdropImageTags:[],UserData:ss()}}async function DRr(t,e,r,n,s,i){let a=String(r?.vod_name||"").trim(),o=String(r?.vod_pic||"").trim(),c=String(r?.tmdbHintRemarks||r?.vod_remarks||"").trim(),u=String(r?.tmdbHintYear||r?.vod_year||"").trim(),l=[],d=new Map;for(let f=0;f<n.length;f+=1){let p=n[f],m={k:e.spiderKey,t:e.spiderType,v:String(r.vod_id),l:f,...e.apiBase?{a:e.apiBase}:{}};a&&(m.n=a),o&&(m.u=o),c&&(m.r=c),u&&(m.y=u);let h=wn("sea",m),A={Name:p.flag||`\u7EBF\u8DEF${f+1}`,Id:h,ParentId:s,ServerId:i,IsFolder:!0,Type:"Season",IndexNumber:f+1,SeriesId:s,SeriesName:a,ChildCount:p.episodes.length,ImageTags:{Primary:h},BackdropImageTags:[],UserData:ss()},b=`s${VM(r,p,f)}`,y=d.get(b);y===void 0&&(y=await YM(t,"season",{spiderRef:e,vod:r,line:p,lineIndex:f})||null,d.set(b,y)),y&&Object.assign(A,y),l.push(A)}return l}async function kRr(t,e,r,n,s,i,a,o){let c=s[i];if(!c)return[];let u=[],l=String(n?.vod_name||"").trim(),d=String(n?.vod_pic||"").trim(),f=String(n?.tmdbHintRemarks||n?.vod_remarks||"").trim(),p=String(n?.tmdbHintYear||n?.vod_year||"").trim(),m=Array.isArray(c?.episodes)?c.episodes:[],h=await KM(t,{spiderRef:r,vod:n,line:c,lineIndex:i,episodes:m,episodeOffset:0});for(let A=0;A<m.length;A+=1){let g=m[A],b=fA(g?.name,A+1),y={k:r.spiderKey,t:r.spiderType,v:String(n.vod_id),l:i,e:A,f:c.flag,p:g.playId,...r.apiBase?{a:r.apiBase}:{}};l&&(y.n=l),d&&(y.u=d),f&&(y.r=f),p&&(y.y=p);let x=wn("ep",y),v=await fle(t,e,{k:r.spiderKey,t:r.spiderType,...r.apiBase?{a:r.apiBase}:{},v:String(n.vod_id),l:i,e:A,f:c.flag,p:g.playId},String(c.flag||`\u7EBF\u8DEF${i+1}`));u.push({Name:g.name||`\u7B2C${A+1}\u96C6`,Id:x,ParentId:a,ServerId:o,IsFolder:!1,Type:"Episode",MediaType:"Video",SeriesName:String(n.vod_name||""),IndexNumber:b,ParentIndexNumber:i+1,CanPlay:!0,PrimaryImageAspectRatio:.6667,ImageTags:{Primary:x},BackdropImageTags:[],UserData:ss(),MediaSources:[v],...h[A]||{}})}return u}function jE(t={}){return{spiderKey:String(t.k||""),spiderType:Number(t.t||3),apiBase:String(t.a||"")}}function XM(t={}){return{Overview:"",Taglines:[],Genres:[],GenreItems:[],People:[],Tags:[],ProviderIds:{},ProductionLocations:[],CommunityRating:0,CriticRating:0,RunTimeTicks:0,OfficialRating:"",...t}}function t6(t,e,r={}){if(t.embyContext?.config?.requestLog)try{console.log(`[Emby Transform] ${e}:`,JSON.stringify(r))}catch{}}function dle(t={},e=""){let r=ho(t.vod_play_from,t.vod_play_url).filter(i=>Array.isArray(i?.episodes)&&i.episodes.length>0),n=r.reduce((i,a)=>Math.max(i,a.episodes.length),0),s=Oft?r.length>0:r.length>1||n>1||$E(t)==="Series";return{lines:r,isSeries:s}}function LRr(t){let r=String(t.headers?.["x-forwarded-proto"]||"").split(",")[0].trim()||t.protocol||"http",s=String(t.headers?.["x-forwarded-host"]||"").split(",")[0].trim()||t.headers?.host||"127.0.0.1";return`${r}://${s}`}function BRr(t,e,r="mkv"){return`${LRr(t)}/emby${Lft(t,e,r,!0)}`}function Lft(t,e,r="mkv",n=!1){let s=/^[a-z0-9]{2,8}$/i.test(String(r||""))?String(r).toLowerCase():"mkv",i=n&&t.embyToken?`?api_key=${encodeURIComponent(t.embyToken)}`:"";return`/videos/${String(e||"")}/stream.${s}${i}`}async function fle(t,e,r,n="\u9ED8\u8BA4"){let s=wn("media",{k:String(r?.k||""),t:Number(r?.t||3),v:String(r?.v||""),l:Number(r?.l||0),e:Number(r?.e||0),f:String(r?.f||n||""),...r?.a?{a:String(r.a||"")}:{}}),i=vRr(r?.k)?"m3u8":"mkv",a=Tft(String(r?.p||""),i),o=BRr(e,s,a),c=Lft(e,s,a,!0),u={},l=!1,d=String(n||r?.f||"");if(_Rr&&CRr(d)&&r?.k&&r?.f&&r?.p){let p={spiderKey:String(r.k||""),spiderType:Number(r.t||3),apiBase:String(r.a||"")},m=await am(t,p,String(r.f||""),String(r.p||""),e).catch(()=>null),h=um(m||{},String(n||""));h.url&&IRr(h.url)&&(a=Tft(h.url,a),o=h.url,c=h.url,u=h.header||{},l=!1)}return{Id:s,Name:n,Type:"Default",Protocol:"Http",Container:a,IsRemote:!0,SupportsTranscoding:!1,SupportsDirectStream:!0,SupportsDirectPlay:!0,IsInfiniteStream:!1,SupportsProbing:!1,MediaStreams:[],RequiredHttpHeaders:u,Path:o,DirectStreamUrl:c,AddApiKeyToDirectStreamUrl:l,ItemId:s}}async function MRr(t,e,r,n,s=[]){let i=String(n?.vod_id||"");return!r?.spiderKey||!i?[]:(await Promise.all(s.map(async(o,c)=>{let u=o?.episodes?.[0];return u?.playId?fle(t,e,{k:r.spiderKey,t:r.spiderType,...r.apiBase?{a:r.apiBase}:{},v:i,l:c,e:0,f:String(o.flag||""),p:String(u.playId)},String(o.flag||`\u7EBF\u8DEF${c+1}`)):null}))).filter(Boolean)}function WRr(t={},e={}){let r=String(t?.vod_name||"").trim();if(r)return r;let n=String(e?.n||"").trim();if(n)return n;let s=ho(t?.vod_play_from,t?.vod_play_url),i=String(s?.[0]?.episodes?.[0]?.name||"").trim();if(i)return i;let a=String(t?.vod_remarks||"").trim();return a||"\u672A\u547D\u540D"}async function ZM(t,e,r=null){let n=jE(e);if(!n.spiderKey||!e.v)return null;let s=await Oc(t,n,String(e.v),r).catch(()=>null),i=Pc(s);if(!i)return null;yA(i,e),!String(i?.vod_pic||"").trim()&&e?.u&&(i.vod_pic=String(e.u||"").trim()),i.vod_name=WRr(i,e);let{lines:a,isSeries:o}=dle(i,n.spiderKey);return t6(t,"vod.source",{spiderKey:n.spiderKey,spiderType:n.spiderType,vodId:String(i.vod_id||e.v||""),vodName:String(i.vod_name||""),vodRemarks:String(i.vod_remarks||""),guessVideoType:$E(i),isSeriesByRule:o,lineCount:a.length,episodeCountPerLine:a.map(c=>c.episodes.length).slice(0,10)}),{spiderRef:n,vod:i}}async function ple(t){t.get("/:userId",{preHandler:t.embyRequireAuth},async()=>{let e=t.embyContext,r=Ws();return{Name:e.user.name,ServerId:e.config.serverId,Id:e.user.id,LastActivityDate:r,LastLoginDate:r}}),t.get("/:userId/Views",{preHandler:t.embyRequireAuth},async()=>{let e=t.embyContext.config.serverId,r=await Xl(t);return Ut(r.map(n=>JM(n,e)))}),t.get("/:userId/Items/Resume",{preHandler:t.embyRequireAuth},async e=>{let r=e.query||{},n=Number(Xr(r,["StartIndex","startindex"],0)),s=Pu(Xr(r,["Limit","limit"],50),50),i=e.embyUser?.Id||String(e.params.userId||t.embyContext.user.id),a=Ydt(t,i,t.embyContext.config.serverId);return Ut(Ia(a,n,s),a.length)}),t.get("/:userId/Items/Latest",{preHandler:t.embyRequireAuth},async e=>{let r=e.query||{},n=t.embyContext.config.serverId,s=e.embyUser?.Id||String(e.params.userId||t.embyContext.user.id),i=String(Xr(r,["ParentId","parentid"],"")),a=Pu(Xr(r,["Limit","limit"],16),16),o=wft(Xr(r,["IncludeItemTypes","includeitemtypes"],"")),c=String(Xr(r,["MediaTypes","mediatypes"],"")).toLowerCase();!o.length&&c.includes("video")&&(o=["movie","series","video"]);let u=await Xl(t),l=$s(i);if(l?.type==="lib"){let h=jE(l.payload),A=aA(u,h.spiderKey,h.spiderType,h.apiBase)||{siteName:h.spiderKey,spiderKey:h.spiderKey,spiderType:h.spiderType,apiBase:h.apiBase},g=await lle(t,A,i,n,o,0,a,e);return Fs(t,s,g.rows)}if(l?.type==="cat"){let h=jE(l.payload),A=aA(u,h.spiderKey,h.spiderType,h.apiBase)||{siteName:h.spiderKey,spiderKey:h.spiderKey,spiderType:h.spiderType,apiBase:h.apiBase},g=await e6(t,A,String(l.payload.c||""),0,a,i,n,o,e);return Fs(t,s,g.rows)}let d=Math.min(Math.max(a,6),20),p=(await Promise.allSettled(u.map(h=>Nft(lle(t,h,JM(h,n).Id,n,o,0,d,e))))).filter(h=>h.status==="fulfilled").map(h=>h.value.rows),m=Rft(p).slice(0,a);return Fs(t,s,m)}),t.get("/:userId/Items",{preHandler:t.embyRequireAuth},async e=>{let r=e.query||{},n=t.embyContext.config.serverId,s=e.embyUser?.Id||String(e.params.userId||t.embyContext.user.id),i=String(Xr(r,["SortBy","sortby"],""));if(i.includes("IsFavoriteOrLiked"))return Ut([]);let a=String(Xr(r,["ParentId","parentid"],"")),o=String(Xr(r,["SearchTerm","searchterm","NameStartsWith","namestartswith"],"")).trim(),c=Number(Xr(r,["StartIndex","startindex"],0)),u=Pu(Xr(r,["Limit","limit"],60),60),l=Number(Xr(r,["Page","page"],Math.floor(Math.max(0,c)/u)+1))||1,d=wft(Xr(r,["IncludeItemTypes","includeitemtypes"],"")),f=String(Xr(r,["Recursive","recursive"],"")).trim().toLowerCase()==="true",p=String(Xr(r,["MediaTypes","mediatypes"],"")).toLowerCase(),m=await Xl(t);if(o){let g=t.embyContext?.config?.searchSourcePrefix!==!1,b=[];await Promise.allSettled(m.map(async x=>{try{let v=await Promise.race([ylt(t,x,o,l),new Promise((R,w)=>setTimeout(()=>w(new Error("timeout")),8e3))]);(Array.isArray(v?.list)?v.list:[]).forEach(R=>b.push(r6(x,R,"0",n,{includeSourcePrefix:g})))}catch{}}));let y=Fs(t,s,y2(b,d));return Ut(Ia(y,c,u),y.length)}if(!a&&f&&(RRr(d)||p.includes("video"))){let A=d.length?d:["movie","series","video"],g=Math.min(Math.max(u,6),20),y=(await Promise.allSettled(m.map(v=>Nft(lle(t,v,JM(v,n).Id,n,A,0,g,e))))).filter(v=>v.status==="fulfilled").map(v=>v.value.rows),x=Fs(t,s,Rft(y));return Ut(Ia(x,c,u),x.length)}if(!a){let A=Fs(t,s,m.map(g=>JM(g,n)));return Ut(Ia(A,c,u),A.length)}let h=$s(a);if(!h)return Ut([]);if(h.type==="lib"){let A=jE(h.payload),g=aA(m,A.spiderKey,A.spiderType,A.apiBase)||{siteName:A.spiderKey,spiderKey:A.spiderKey,spiderType:A.spiderType,apiBase:A.apiBase},b=await Jw(t,g,e).catch(()=>null),y=Array.isArray(b?.class)?b.class.filter(R=>String(R?.type_id||"").trim()):[];if(y.length&&(NRr(d,f,i)||!wRr(d,f))){let R=y.map(N=>TRr(g,N,a,n)),w=Fs(t,s,y2(R,d));return Ut(Ia(w,c,u),w.length)}if(y.length){let R=String(y[0].type_id||"");if(R){let w=await e6(t,g,R,c,u,a,n,d,e);return Fs(t,s,w.rows),Ut(w.rows,w.totalRecordCount)}}let v=(Array.isArray(b?.list)?b.list:[]).map(R=>r6(g,R,a,n)),C=Fs(t,s,y2(v,d));return Ut(Ia(C,c,u),C.length)}if(h.type==="cat"){let A=jE(h.payload),g=aA(m,A.spiderKey,A.spiderType,A.apiBase)||{siteName:A.spiderKey,spiderKey:A.spiderKey,spiderType:A.spiderType,apiBase:A.apiBase},b=String(h.payload.c||""),y=await e6(t,g,b,c,u,a,n,d,e);return Fs(t,s,y.rows),Ut(y.rows,y.totalRecordCount)}if(h.type==="vod"){let A=await ZM(t,h.payload,e);if(!A)return Ut([]);let{spiderRef:g,vod:b}=A,{lines:y,isSeries:x}=dle(b,g.spiderKey);if(!y.length)return Ut([]);if(x){let v=await DRr(t,g,b,y,a,n);return Fs(t,s,v),Ut(Ia(v,c,u),v.length)}return Ut([])}if(h.type==="sea"){let A=await ZM(t,h.payload,e);if(!A)return Ut([]);let{spiderRef:g,vod:b}=A,y=ho(b.vod_play_from,b.vod_play_url);if(!y.length)return Ut([]);let x=Number(h.payload.l||0),v=await kRr(t,e,g,b,y,x,a,n);return Fs(t,s,v),Ut(Ia(v,c,u),v.length)}return Ut([])}),t.get("/:userId/Items/:itemId",{preHandler:t.embyRequireAuth},async(e,r)=>{let n=$s(e.params.itemId);if(!n)return r.code(404),{};let s=e.embyUser?.Id||String(e.params.userId||t.embyContext.user.id);if(n.type==="ep"){let i=await ZM(t,n.payload,e),a=String(i?.vod?.vod_name||"\u64AD\u653E"),o=Number(n?.payload?.l||0),c=Number(n?.payload?.e||0),u=ho(i?.vod?.vod_play_from,i?.vod?.vod_play_url),l=u?.[o]?.episodes?.[c]?.name||"",d=u?.[o]||null,f=d?.episodes?.[c]||null,p=fA(l,c+1),m=wn("vod",{k:String(n?.payload?.k||""),t:Number(n?.payload?.t||3),v:String(n?.payload?.v||""),...n?.payload?.a?{a:String(n.payload.a||"")}:{},...n?.payload?.n?{n:String(n.payload.n||"")}:{},...n?.payload?.u?{u:String(n.payload.u||"")}:{},...n?.payload?.r?{r:String(n.payload.r||"")}:{},...n?.payload?.y?{y:String(n.payload.y||"")}:{}}),h=wn("sea",{k:String(n?.payload?.k||""),t:Number(n?.payload?.t||3),v:String(n?.payload?.v||""),l:o,...n?.payload?.a?{a:String(n.payload.a||"")}:{},...n?.payload?.n?{n:String(n.payload.n||"")}:{},...n?.payload?.u?{u:String(n.payload.u||"")}:{},...n?.payload?.r?{r:String(n.payload.r||"")}:{},...n?.payload?.y?{y:String(n.payload.y||"")}:{}}),A=n.payload?.k&&n.payload?.v&&n.payload?.f&&n.payload?.p?[await fle(t,e,{k:String(n.payload.k||""),t:Number(n.payload.t||3),v:String(n.payload.v||""),l:Number(n.payload.l||0),e:Number(n.payload.e||0),f:String(n.payload.f||""),p:String(n.payload.p||""),...n.payload.a?{a:String(n.payload.a||"")}:{}},String(n.payload.f||"\u9ED8\u8BA4"))]:[];return t6(t,"item.detail.ep",{itemId:e.params.itemId,sourceType:n.type,vodName:String(i?.vod?.vod_name||""),mediaSourceCount:A.length,canPlay:!0}),A2(t,s,{Name:a,Id:e.params.itemId,Type:"Episode",IsFolder:!1,MediaType:"Video",CanPlay:!0,SeriesId:m,SeriesName:a,SeasonId:h,SeasonName:String(n?.payload?.f||`\u7EBF\u8DEF${o+1}`),IndexNumber:p,ParentIndexNumber:o+1,DateCreated:Ws(),ImageTags:{Primary:e.params.itemId},BackdropImageTags:[],UserData:Fo(t,s,e.params.itemId),...XM(),...f?await g2(t,{spiderRef:jE(n.payload),vod:i?.vod||{},line:d,lineIndex:o,episode:f,episodeIndex:c})||{}:{},MediaSources:A})}if(n.type==="sea"){let i=Number(n?.payload?.l||0);return A2(t,s,{Name:`\u7EBF\u8DEF${i+1}`,Id:e.params.itemId,Type:"Season",IsFolder:!0,IndexNumber:i+1,DateCreated:Ws(),ImageTags:{Primary:e.params.itemId},BackdropImageTags:[],UserData:Fo(t,s,e.params.itemId),...XM()})}if(n.type==="cat"){let i=String(n.payload?.n||n.payload?.c||n.payload?.k||"\u76EE\u5F55");return A2(t,s,{Name:i,Id:e.params.itemId,Type:"Folder",IsFolder:!0,ServerId:t.embyContext.config.serverId,PrimaryImageAspectRatio:1.7778,ImageTags:{Primary:e.params.itemId},BackdropImageTags:[],UserData:Fo(t,s,e.params.itemId),...XM({Overview:String(n.payload?.r||"")})})}if(n.type==="vod"){let i=yft(t,n.payload).catch(()=>null),a=await ZM(t,n.payload,e);if(!a)return r.code(404),{};let{lines:o,isSeries:c}=dle(a.vod,a.spiderRef.spiderKey),u=c?"Series":"Movie",[l,d]=await Promise.all([MRr(t,e,a.spiderRef,a.vod,o),i]),f=d&&typeof d=="object"?{...d}:{},p={Primary:e.params.itemId,...f.ImageTags&&typeof f.ImageTags=="object"?f.ImageTags:{}};delete f.ImageTags;let m=c?[]:l,h=c?l.length>0:m.length>0;return t6(t,"item.detail.vod",{itemId:e.params.itemId,spiderKey:a.spiderRef.spiderKey,spiderType:a.spiderRef.spiderType,vodId:String(a.vod.vod_id||""),vodName:String(a.vod.vod_name||""),type:u,isFolder:c,canPlay:h,lineCount:o.length,mediaSourceCount:m.length,firstMediaSource:m[0]?{name:m[0].Name,path:m[0].Path,id:m[0].Id}:null}),A2(t,s,{Name:String(a.vod.vod_name||""),Id:e.params.itemId,IsFolder:c,Type:u,MediaType:"Video",CollectionType:c?"tvshows":void 0,CanPlay:h,DateCreated:Ws(),PrimaryImageAspectRatio:.6667,ProductionYear:Number(a.vod.vod_year||0)||void 0,ImageTags:p,BackdropImageTags:[],UserData:Fo(t,s,e.params.itemId),ChildCount:c?o.length>1?o.length:o[0]?.episodes?.length||0:void 0,SeasonCount:c?o.length:void 0,RecursiveItemCount:c?o.reduce((A,g)=>A+(g?.episodes?.length||0),0):void 0,...XM({Overview:String(a.vod.vod_content||"")}),...f,MediaSources:m})}return A2(t,s,{Name:String(n.payload?.k||""),Id:e.params.itemId,IsFolder:!0,Type:"Folder",ImageTags:{Primary:e.params.itemId},BackdropImageTags:[],UserData:Fo(t,s,e.params.itemId)})}),t.get("/:userId/Items/:itemId/LocalTrailers",{preHandler:t.embyRequireAuth},async()=>[]),t.get("/:userId/Items/:itemId/SpecialFeatures",{preHandler:t.embyRequireAuth},async()=>[]),t.all("/:userId/Items/:itemId/PlaybackInfo",{preHandler:t.embyRequireAuth},async(e,r)=>{if(!["GET","POST"].includes(e.method))return r.code(405),"";let n=new URLSearchParams,s=e.query||{};Object.keys(s).forEach(d=>{let f=s[d];f!=null&&n.set(d,String(f))});let i=n.toString(),a=`/emby/Items/${encodeURIComponent(String(e.params.itemId||""))}/PlaybackInfo${i?`?${i}`:""}`;t6(t,"playback.alias",{from:e.raw.url,to:a,method:e.method});let o={};e.embyToken&&(o["x-emby-token"]=e.embyToken);let c=e.method==="POST"?e.body||{}:void 0,u=await t.inject({method:e.method,url:a,headers:o,payload:c});r.code(u.statusCode);let l=u.headers?.["content-type"];if(l&&r.header("content-type",l),!u.body)return"";if(String(l||"").includes("application/json"))try{return JSON.parse(u.body)}catch{return u.body}return u.body}),t.post("/:userId/Items/:itemId/HideFromResume",{preHandler:t.embyRequireAuth},async e=>{let r=e.embyUser?.Id||String(e.params.userId||t.embyContext.user.id);return Kdt(t,r,String(e.params.itemId||""))}),t.all("/:userId/FavoriteItems/:itemId/:isDelete?",{preHandler:t.embyRequireAuth},async(e,r)=>{if(!["POST","DELETE"].includes(e.method))return r.code(405),"";let n=e.embyUser?.Id||String(e.params.userId||t.embyContext.user.id);return zdt(t,n,String(e.params.itemId||""),e.method==="POST")}),t.all("/:userId/PlayedItems/:itemId/:isDelete?",{preHandler:t.embyRequireAuth},async(e,r)=>{if(!["POST","DELETE"].includes(e.method))return r.code(405),"";let n=e.embyUser?.Id||String(e.params.userId||t.embyContext.user.id);return Vdt(t,n,String(e.params.itemId||""),e.method==="POST")})}var $Rr=30*60*1e3,HE=16/9,x2=960,FRr=1920,URr=360,qRr=9,qft=24,jRr=12e3,gle=9e3,Bft=5*1024*1024,Mft=80,Wft=24,$ft=[["#556b2f","#bed98a"],["#5b3a82","#b37bd9"],["#235f73","#8fd2dc"],["#7a3341","#d98498"],["#2f5c43","#9ac78d"],["#6f4a2f","#d39a5d"],["#354f7d","#91aee6"],["#73395f","#cb87af"]],mle=null;function hle(t=""){return String(t||"").replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function jft(t,e,r){return Math.max(e,Math.min(r,t))}function HRr(t=""){let e=2166136261,r=String(t||"");for(let n=0;n<r.length;n+=1)e^=r.charCodeAt(n),e=Math.imul(e,16777619);return e>>>0}function Hft(t){return jft(Math.round(Number(t)||0),0,255)}function Fft(t=[]){return`#${t.slice(0,3).map(e=>Hft(e).toString(16).padStart(2,"0")).join("")}`}function Uft(t=[],e=[],r=.5){return[0,1,2].map(n=>Hft((t[n]||0)*(1-r)+(e[n]||0)*r))}function QRr(t={}){return{spiderKey:String(t.k||t.spiderKey||""),spiderType:Number(t.t||t.spiderType||3),apiBase:String(t.a||t.apiBase||"")}}function Ale(t,e,r=null){let n=null,s=new Promise(i=>{n=setTimeout(()=>i(r),e)});return Promise.race([t,s]).finally(()=>{n&&clearTimeout(n)})}function b2(t=[]){let e=new Set,r=[];for(let n of t){let s=String(n||"").trim();!s||e.has(s)||(e.add(s),r.push(s))}return r}function Qft(t=""){let e=String(t||"").trim();if(!e)return"";try{let r=new URL(e);return["http:","https:"].includes(r.protocol)?r.toString():""}catch{return""}}function GRr(t="",e="\u5A92\u4F53\u5E93"){return String(t||"").trim().replace(/^(?:「[^」]*」\s*)+/,"").trim()||e}function yle(t=[]){return b2((Array.isArray(t)?t:[]).map(e=>Qft(e?.vod_pic)).filter(Boolean))}async function VRr(t,e={}){let r=QRr(e);if(!r.spiderKey)return null;let n=await Xl(t).catch(()=>[]);return aA(n,r.spiderKey,r.spiderType,r.apiBase)||{siteName:String(e.n||r.spiderKey),spiderKey:r.spiderKey,spiderType:r.spiderType,apiBase:r.apiBase}}async function zRr(t,e,r){let n=await Ale(Jw(t,e,r).catch(()=>null),gle,null),s=yle(n?.list||[]);if(s.length>=qft)return s;let i=Array.isArray(n?.class)?n.class.filter(c=>String(c?.type_id||"").trim()):[];if(!i.length)return s;let a=i.slice(0,5).map(c=>Ale(NE(t,e,String(c.type_id||""),1,{},r).then(u=>yle(u?.list||[])).catch(()=>[]),gle,[]));return(await Promise.allSettled(a)).forEach(c=>{c.status==="fulfilled"&&s.push(...c.value)}),b2(s)}async function KRr(t,e,r={},n){let s=[],i=Qft(r.u);i&&s.push(i);let a=String(r.c||"").trim();if(!a)return b2(s);let o=await Ale(NE(t,e,a,1,{},n).catch(()=>null),gle,null);return s.push(...yle(o?.list||[])),b2(s)}async function YRr(t,e,r){let n=await VRr(t,e?.payload||{});if(!n)return{spider:null,posterUrls:[]};let s=[];return e?.type==="lib"?s=await zRr(t,n,r):e?.type==="cat"&&(s=await KRr(t,n,e.payload||{},r)),{spider:n,posterUrls:s}}function JRr(t,e=0){let r=t?.payload||{},n=GRr(r.n||r.name||r.k,"\u5A92\u4F53\u5E93"),s=t?.type==="cat"?"FOLDER":"LIBRARY";return{title:n,subtitle:s,countText:e>0?`${e} IMAGES`:"MYCATPAW"}}function XRr(t={}){let e=Number(t.Width||t.width||t.MaxWidth||t.maxWidth||0),r=Number(t.Height||t.height||t.MaxHeight||t.maxHeight||0),n=x2,s=Math.round(x2/HE);if(e>0&&r>0){let i=Math.min(e/x2,r/(x2/HE));n=Math.round(x2*i),s=Math.round(n/HE)}else e>0?(n=Math.round(e),s=Math.round(n/HE)):r>0&&(s=Math.round(r),n=Math.round(s*HE));return n=jft(n,URr,FRr),s=Math.round(n/HE),{width:n,height:s}}async function ZRr(){return mle||(mle=import("sharp").then(t=>t.default||t).catch(()=>null)),mle}function n6(t=""){return $ft[HRr(t)%$ft.length]}function eNr(t,e=3){let r=Math.max(3,Number(e)||3),n=Math.floor(t.length/r);if(!n)return!0;let s=0,i=0,a=0,o=0,c=0,u=0,l=0,d=0,f=0,p=new Set;for(let v=0;v<t.length;v+=r){let C=t[v]||0,R=t[v+1]||0,w=t[v+2]||0,N=C*.299+R*.587+w*.114,P=Math.max(C,R,w),L=Math.min(C,R,w);s+=C,i+=R,a+=w,o+=C*C,c+=R*R,u+=w*w,l+=N,d+=N*N,f+=P-L,p.add(`${C>>4}:${R>>4}:${w>>4}`)}let m=s/n,h=i/n,A=a/n,g=l/n,b=Math.sqrt(Math.max(0,d/n-g*g)),y=(Math.sqrt(Math.max(0,o/n-m*m))+Math.sqrt(Math.max(0,c/n-h*h))+Math.sqrt(Math.max(0,u/n-A*A)))/3,x=f/n;return b<8&&y<8||(g>242||g<16)&&b<12&&y<12||x<7&&b<10||p.size<=3||p.size<=6&&b<20&&x<12}async function tNr(t,e){try{let r=await t(e).metadata();if(!r?.width||!r?.height||r.width<Mft||r.height<Mft)return!1;let{data:n,info:s}=await t(e).resize(Wft,Wft,{fit:"cover"}).removeAlpha().raw().toBuffer({resolveWithObject:!0});return!eNr(n,s?.channels||3)}catch{return!1}}async function rNr(t,e){try{return await t(e).rotate().resize({width:420,height:620,fit:"cover",withoutEnlargement:!0}).flatten({background:"#f2f4f7"}).jpeg({quality:82,mozjpeg:!0}).toBuffer()}catch{return null}}async function nNr(t,e=null){try{let r=new URL(t),n=await Ae.get(r.toString(),{responseType:"arraybuffer",timeout:jRr,maxContentLength:Bft,headers:{Accept:"image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8",Referer:`${r.protocol}//${r.host}/`,"User-Agent":"Mozilla/5.0 EmbyDynamicCover/1.0"},validateStatus:o=>o>=200&&o<300}),s=String(n.headers?.["content-type"]||"").split(";")[0].trim().toLowerCase(),i=s&&s.startsWith("image/")?s:"image/jpeg",a=Buffer.from(n.data||[]);if(!a.length||a.length>Bft)return null;if(e){if(!await tNr(e,a))return null;let o=await rNr(e,a);return o?.length?{dataUri:`data:image/jpeg;base64,${o.toString("base64")}`,buffer:o}:null}return{dataUri:`data:${i};base64,${a.toString("base64")}`,buffer:a}}catch{return null}}async function sNr(t=[],e=null){let n=b2(t).slice(0,qft).map(a=>nNr(a,e));return(await Promise.allSettled(n)).filter(a=>a.status==="fulfilled"&&a.value?.dataUri).map(a=>a.value).slice(0,qRr)}async function iNr(t,e=[],r=""){let n=e.find(s=>s?.buffer);if(!n)return n6(r);try{let i=((await t(n.buffer).resize(24,24,{fit:"cover"}).stats()).channels||[]).slice(0,3).map(c=>c.mean||0),a=Uft(i,[0,0,0],.38),o=Uft(i,[255,255,255],.48);return[Fft(a),Fft(o)]}catch{return n6(r)}}function aNr(t=""){let e=String(t||"\u5A92\u4F53\u5E93").trim()||"\u5A92\u4F53\u5E93";if(e.length<=8)return[e];if(/[\u4e00-\u9fff]/.test(e)){let i=e.slice(0,8),a=e.slice(8,16);return a?[i,a]:[i]}let r=e.split(/\s+/).filter(Boolean);if(r.length<=1)return[e.slice(0,16)];let n=[],s="";return r.forEach(i=>{let a=s?`${s} ${i}`:i;if(a.length>12&&s){n.push(s),s=i;return}s=a}),s&&n.push(s),n.slice(0,2)}function Gft(t=[],e,r){let n=e*.16,s=n*1.48,i=e*.025,a=e*.52,o=-r*.16,c=3;return[2,0,1,3,4,5,8,6,7].map((l,d)=>{let f=Math.floor(d/c),p=d%c,m=a+f*(n+i),h=o+p*(s+i),A=`posterClip${d}`,g=t[l%t.length];return{x:m,y:h,w:n,h:s,r:e*.015,clipId:A,href:g?.dataUri||""}})}function oNr(t,e,r=""){let n=Gft([{dataUri:""}],t,e),s=n6(r);return n.map((i,a)=>{let o=.18+a%3*.08;return` +`),messageToDart({action:"toast",opt:{message:"\u6CA1\u6709\u627E\u5230\u5F39\u5E55\u5466~",duration:2}}),String(p.query?.format||"").toLowerCase()==="json"?m.code(500).send({success:!1,error:"Failed to fetch danmu content",comments:[],count:0,match:null}):m.code(500).send({error:"Failed to fetch danmu content"})}}),t.addHook("onSend",(p,m,h,y)=>{if(m.sent||m.raw?.headersSent||!p.url.endsWith("/detail")&&!p.url.endsWith("/play"))return y(null,h);let g=typeof h=="string"?h:Buffer.isBuffer(h)?h.toString():null;if(!g)return y(null,h);IM(p.server).then(b=>{if(!b?.autoPush)return y(null,h);try{if(p.url.endsWith("/detail")){let x=JSON.parse(g),A=Array.isArray(x?.list)?x.list[0]:null;if(!A||typeof A!="object")return y(null,h);let S=String(A.vod_play_from||""),I=String(A.vod_play_url||"");if(!S||!I)return y(null,h);let R=String(A.vod_name||"").trim(),N=String($y(R)||"").trim()||R;Gde={};let k=S.split("$$$").filter(Boolean);return I.split("$$$").filter(Boolean).forEach((B,M)=>{B.split("#").forEach(D=>{let[L,Z]=D.split("$");if(!Z)return;let W=k[M]||`\u7EBF\u8DEF${M+1}`;Gde[`${W}_${Z}`]={name:N,originalName:R,episodeNumber:xR(L)}})}),y(null,h)}if(p.url.endsWith("/play")){let x=JSON.parse(g);if((x.url||x.url?.length||x.urls?.length)&&!x?.extra?.danmaku){let A=p.body||{},S=`${A.flag||""}_${A.id||""}`,I=Gde[S];if(I){x.extra||(x.extra={});let R=new URL(`http://127.0.0.1:${p.server.address().port}/danmu-proxy`);return R.searchParams.set("name",I.name),R.searchParams.set("episodeNumber",I.episodeNumber),I.originalName&&R.searchParams.set("originalName",I.originalName),x.extra.danmaku=R.toString(),y(null,JSON.stringify(x))}}}}catch(x){console.error(x)}return y(null,h)}).catch(b=>(console.error(b),y(null,h)))})}var dW=Ce(fht(),1);var mht=Ce(Q0(),1),RR=Ce(Xn(),1);var qM="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",q_={NEW:"NEW",SCANNED:"SCANNED",CONFIRMED:"CONFIRMED",EXPIRED:"EXPIRED",CANCELED:"CANCELED"},pht={encode(t,e=3e5){let r={data:t,expireTime:Date.now()+e};return Buffer.from(JSON.stringify(r)).toString("base64url")},decode(t){try{if(!t)return null;let e=JSON.parse(Buffer.from(t,"base64url").toString());return Date.now()>e.expireTime?null:e.data}catch{return null}}},aBr=async t=>{let e=RR.default.enc.Hex.stringify(RR.default.MD5(t.config.quark.cookie)).toString();return(await t.db.getObjectDefault("/quark",{}))[e]??""},oBr=async(t,e)=>{let r=RR.default.enc.Hex.stringify(RR.default.MD5(t.config.quark.cookie)).toString();await t.db.push(`/quark/${r}`,e)};async function hfe(t){t.get("/qrcode",async(r,n)=>{try{let s=await he.get("https://uop.quark.cn/cas/ajax/getTokenForQrcodeLogin?client_id=532&v=1.2",{headers:{"User-Agent":qM}}),i=s.data.data.members.token,a=wl(s.headers["set-cookie"]),o=pht.encode({token:i,cookies:a}),c="https://su.quark.cn/4_eMHBJ?token="+i+"&client_id=532&ssb=weblogin&uc_param_str=&uc_biz_str=S%3Acustom%7COPT%3ASAREA%400%7COPT%3AIMMERSIVE%401%7COPT%3ABACK_BTN_STYLE%400",u=await mht.default.toBuffer(c,{width:300,height:300});n.header("X-Session-Key",o),n.send(u)}catch(s){console.error("\u5938\u514B\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25:",s),n.status(500).send({code:-1,message:"\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25"})}}),t.post("/check-status",async(r,n)=>{let{sessionKey:s}=r.body,i=pht.decode(s);if(!i)return n.send({code:0,data:{status:q_.EXPIRED}});let{token:a,cookies:o}=i;try{let c=await he.get(`https://uop.quark.cn/cas/ajax/getServiceTicketByQrcodeToken?client_id=532&v=1.2&token=${a}`,{headers:{"User-Agent":qM}});if(c.data.status===2e6){let u=await e(c.data.data.members.service_ticket,o);n.send({code:0,data:{status:q_.CONFIRMED,cookie:u}})}else c.data.status===50004002?n.send({code:0,data:{status:q_.EXPIRED}}):c.data.status===50004001?n.send({code:0,data:{status:q_.NEW}}):n.send({code:0,data:{status:q_.NEW}})}catch(c){console.error("\u5938\u514B\u72B6\u6001\u68C0\u67E5\u5931\u8D25:",c),n.send({code:0,data:{status:q_.NEW}})}});async function e(r,n){let s=[...n],i=await he.get(`https://pan.quark.cn/account/info?st=${r}&fr=pc&platform=pc`,{headers:{"User-Agent":qM,Cookie:s.join("")}});i.headers["set-cookie"]&&(s=s.concat(wl(i.headers["set-cookie"])));let a=await he.get("https://drive-pc.quark.cn/1/clouddrive/share/sharepage/dir?pr=ucpro&fr=pc&uc_param_str=&aver=1",{headers:{"User-Agent":qM,Cookie:s.join("")}});return a.headers["set-cookie"]&&(s=s.concat(wl(a.headers["set-cookie"]))),s.join("")}t.post("/cookie",(r,n)=>{n.send({code:-1,message:"\u8BF7\u4F7F\u7528 /check-status \u63A5\u53E3"})}),t.get("/cookie",async(r,n)=>{n.send({code:0,data:await aBr(r.server)})}),t.put("/cookie",async(r,n)=>{await oBr(r.server,r.body?.cookie??""),n.send({code:0})})}var NR=Ce(Xn(),1);var Qy={NEW:"NEW",SCANNED:"SCANNED",CONFIRMED:"CONFIRMED",EXPIRED:"EXPIRED",CANCELED:"CANCELED"},hht={encode(t,e=3e5){let r={data:t,expireTime:Date.now()+e};return Buffer.from(JSON.stringify(r)).toString("base64url")},decode(t){try{if(!t)return null;let e=JSON.parse(Buffer.from(t,"base64url").toString());return Date.now()>e.expireTime?null:e.data}catch{return null}}},cBr=async t=>{let e=NR.default.enc.Hex.stringify(NR.default.MD5(t.config.uc.token)).toString();return(await t.db.getObjectDefault("/uc",{}))[e]??""},uBr=async(t,e)=>{let r=NR.default.enc.Hex.stringify(NR.default.MD5(t.config.uc.token)).toString(),n=fg(e),s=n?.refresh_token||n?.expires_at?mB(n):String(e||"");await t.db.push(`/uc/${r}`,s)};async function gfe(t){t.get("/qrcode",async(e,r)=>{try{let n="/oauth/authorize",s=Math.floor(Date.now()/1e3).toString()+"000",i=lo.DeviceID,a=kb(i,s),o=pB("GET",n,s,Wn.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":Wn.clientID,...lo.AccessToken?{Authorization:`Bearer ${lo.AccessToken}`}:{}},u=await he.get(`${Wn.api}${n}`,{params:{req_id:a,access_token:lo.AccessToken,app_ver:Wn.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:Wn.channel,auth_type:"code",client_id:Wn.clientID,scope:"netdisk",qrcode:"1",qr_width:"460",qr_height:"460"},headers:c}),l=hht.encode({query_token:u.data.query_token,req_id:a});r.header("X-Session-Key",l),r.send(Buffer.from(u.data.qr_data,"base64"))}catch(n){console.error("UC-TV\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25:",n),r.status(500).send({code:-1,message:"\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25"})}}),t.post("/check-status",async(e,r)=>{let{sessionKey:n}=e.body,s=hht.decode(n);if(!s)return r.send({code:0,data:{status:Qy.EXPIRED}});let{query_token:i}=s;try{let a="/oauth/code",o=Math.floor(Date.now()/1e3).toString()+"000",c=lo.DeviceID,u=kb(c,o),l=pB("GET",a,o,Wn.signKey),d={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":o,"x-pan-token":l,"x-pan-client-id":Wn.clientID,...lo.AccessToken?{Authorization:`Bearer ${lo.AccessToken}`}:{}},f=await he.get(`${Wn.api}${a}`,{params:{req_id:u,access_token:lo.AccessToken,app_ver:Wn.appVer,device_id:c,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:Wn.channel,client_id:Wn.clientID,scope:"netdisk",query_token:i},headers:d,validateStatus:p=>p<500});if(f.data.status===0){let p="/token",m=Math.floor(Date.now()/1e3).toString()+"000",h=kb(lo.DeviceID,m),y=JSON.stringify({req_id:h,app_ver:Wn.appVer,device_id:lo.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:Wn.channel,code:f.data.code}),g=await he.post(`${Wn.codeApi}${p}`,y,{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"}}),b=fg(g.data.data);g.data.code===200&&b?.access_token?r.send({code:0,data:{status:Qy.CONFIRMED,cookie:mB(b)}}):r.send({code:0,data:{status:Qy.NEW}})}else f.data.errno===11003?r.send({code:0,data:{status:Qy.NEW}}):f.data.status===-1||f.data.errno===11001?r.send({code:0,data:{status:Qy.EXPIRED}}):r.send({code:0,data:{status:Qy.NEW}})}catch(a){console.error("UC-TV\u72B6\u6001\u68C0\u67E5\u5931\u8D25:",a),r.send({code:0,data:{status:Qy.NEW}})}}),t.post("/token",async(e,r)=>{r.send({code:-1,message:"\u8BF7\u4F7F\u7528 /check-status \u63A5\u53E3"})}),t.get("/token",async(e,r)=>{r.send({code:0,data:await cBr(e.server)})}),t.put("/token",async(e,r)=>{await uBr(e.server,e.body?.cookie??""),r.send({code:0})})}var ght=async(t,e)=>(await t.db.getObjectDefault("/tyi",{}))?.[e]||"",yht=async(t,e,r)=>{await t.db.push(`/tyi/${e}`,r)};async function yfe(t){t.get("/account",async(e,r)=>{let n=await ght(e.server,"cloud_account"),s=await ght(e.server,"cloud_password");r.send({code:0,data:{username:n,password:s}})}),t.put("/account",async(e,r)=>{await yht(e.server,"cloud_account",e.body.username),await yht(e.server,"cloud_password",e.body.password),r.send({code:0})})}var lBr=["https://www.leijing1.com"],dBr=async t=>(await t.db.getObjectDefault("/leijing",{}))?.urls||t.config.leijing?.urls||lBr,fBr=async(t,e)=>{await t.db.push("/leijing/urls",e)},pBr=async t=>{await t.db.delete("/leijing/urls")};async function Afe(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await dBr(e.server)})}),t.put("/urls",async(e,r)=>{await fBr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await pBr(e.server),r.send({code:0})})}var _ht="https://api.oplist.org.cn",OR="https://oauth.litepan.top",mBr=5*60*1e3,xfe=new Map,Ns=async(t,e)=>{let r=await t.db.getObjectDefault("/pan123",{});return Object.prototype.hasOwnProperty.call(r||{},e)?r[e]:""},Qc=async(t,e,r)=>{await t.db.push(`/pan123/${e}`,r)},mi=t=>String(t||"").trim(),Eht=t=>new Promise(e=>setTimeout(e,t));function hBr(t,e=!1){if(typeof t=="boolean")return t;if(typeof t=="string"){let r=t.trim().toLowerCase();if(["1","true","yes","on"].includes(r))return!0;if(["0","false","no","off"].includes(r))return!1}return e}function _fe(t){let e=t?.data?.token_data||t?.token_data||t?.data||t||{};return{accessToken:mi(e.access_token||e.accessToken||e.accessTokenStr),refreshToken:mi(e.refresh_token||e.refreshToken),expiresIn:e.expires_in||e.expiresIn||""}}function Ap(t,e){return t?.message||t?.detail||t?.error_description||t?.error||t?.text||e}function vht(t){return String(t||"").replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function Aht(t){let e=mi(t),r=vht(e),n=JSON.stringify(e);return`<!doctype html> +<html lang="zh-CN"> +<head> + <meta charset="utf-8"> + <meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover"> + <meta http-equiv="refresh" content="1;url=${r}"> + <title>\u6B63\u5728\u8FDE\u63A5\u6388\u6743\u670D\u52A1 + + + +
+

\u6B63\u5728\u8FDE\u63A5\u6388\u6743\u670D\u52A1

+

\u8BF7\u7A0D\u5019\uFF0C\u9875\u9762\u5C06\u81EA\u52A8\u8DF3\u8F6C\u5230 OAuth \u6388\u6743\u9875\u3002

+

\u5982\u679C\u6CA1\u6709\u8DF3\u8F6C\uFF0C\u8BF7\u70B9\u8FD9\u91CC\u7EE7\u7EED

+
+ + +`}function xht(t){return` + + + + + \u6388\u6743\u542F\u52A8\u5931\u8D25 + + + +
+

\u6388\u6743\u542F\u52A8\u5931\u8D25

+

${vht(t||"OAuth \u542F\u52A8\u5931\u8D25")}

+
+ +`}function gBr(t){try{let e=new URL(t);return e.hostname==="www.123pan.com"&&e.pathname==="/auth"&&(e.hostname="yun.123pan.com"),e.toString()}catch{return t}}async function bfe(t,e={}){let r=mi(e.accessToken||e.access_token),n=mi(e.refreshToken||e.refresh_token);return r&&await Qc(t,"open_access_token",r),n&&await Qc(t,"open_refresh_token",n),(e.expiresIn||e.expires_in)&&await Qc(t,"open_expires_in",Number(e.expiresIn||e.expires_in)||""),{accessToken:r,refreshToken:n}}async function yBr(){let t=await he.get(`${_ht}/123cloud/requests`,{params:{server_use:"true"},timeout:15e3,validateStatus:null,headers:{Accept:"application/json"}});if(t.status>=400)throw new Error(Ap(t.data,`OpenList \u6388\u6743\u8BF7\u6C42\u5931\u8D25: ${t.status}`));let e=mi(t.data?.text||t.data?.data?.oauth_url||t.data?.oauth_url);if(!e)throw new Error(Ap(t.data,"OpenList \u672A\u8FD4\u56DE\u6388\u6743\u5730\u5740"));return gBr(e)}async function ABr(t){let e=await he.get(`${_ht}/123cloud/renewapi`,{params:{apps_types:"123cloud_oa",refresh_ui:t,server_use:"true"},timeout:15e3,validateStatus:null,headers:{Accept:"application/json"}});if(e.status>=400)throw new Error(Ap(e.data,`OpenList \u5237\u65B0 Token \u5931\u8D25: ${e.status}`));let r=_fe(e.data);if(!r.accessToken)throw new Error(Ap(e.data,"OpenList \u672A\u8FD4\u56DE access_token"));return r}async function xBr(){let t=await he.post(`${OR}/api/oauth/start`,{driver_type:"123\u4E91\u76D8Open",server_use:!0,callback_url:`${OR}/callback-popup`},{timeout:15e3,validateStatus:null,headers:{"Content-Type":"application/json",Accept:"application/json"}});if(t.status>=400||t.data?.success===!1)throw new Error(Ap(t.data,`LitePan OAuth \u542F\u52A8\u5931\u8D25: ${t.status}`));let e=t.data?.data||{},r=mi(e.session_id||e.sessionId),n=mi(e.oauth_url||e.oauthUrl);if(!r||!n)throw new Error("LitePan OAuth \u672A\u8FD4\u56DE session_id \u6216 oauth_url");return{sessionId:r,oauthUrl:n,expiresIn:e.expires_in||e.expiresIn||""}}async function bBr(t){let e=await he.get(`${OR}/api/oauth/status/${encodeURIComponent(t)}`,{timeout:1e4,validateStatus:null,headers:{Accept:"application/json"}});if(e.status>=400||e.data?.success===!1)throw new Error(Ap(e.data,`LitePan OAuth \u72B6\u6001\u67E5\u8BE2\u5931\u8D25: ${e.status}`));return e.data?.data||{}}async function _Br(t){let e=await he.post(`${OR}/api/oauth/confirm-received/${encodeURIComponent(t)}`,null,{timeout:8e3,validateStatus:null,headers:{Accept:"application/json"}});if(e.status>=400||e.data?.success===!1)throw new Error(Ap(e.data,`LitePan Token \u63A5\u6536\u786E\u8BA4\u5931\u8D25: ${e.status}`));return e.data}async function EBr(t){let e=null;for(let r=0;r<3;r+=1)try{return await _Br(t)}catch(n){e=n,r<2&&await Eht((r+1)*1e3)}throw e}async function vBr(t,e={}){let r=mi(e.sessionId||e.session_id);return r?(await Qc(t,"litepan_oauth_session_id",r),await Qc(t,"litepan_oauth_completed_at",""),r):""}async function bht(t){let e=Number(await Ns(t,"litepan_oauth_completed_at"))||0;return!e||Date.now()-e>mBr||!mi(await Ns(t,"open_access_token"))?null:{status:"success",hasAccessToken:!0,hasRefreshToken:!!mi(await Ns(t,"open_refresh_token")),expiresIn:await Ns(t,"open_expires_in")||""}}async function Sht(t,e){let r=mi(e);if(!r)return await bht(t)||{status:"idle",error:""};let n=await bBr(r);if(n.status!=="success")return{status:n.status||"pending",error:n.error||n.message||""};let s=_fe(n);if(!s.accessToken)throw new Error("LitePan OAuth \u6210\u529F\u4F46\u672A\u8FD4\u56DE access_token");let i=await bfe(t,s);try{await EBr(r)}catch(a){let o=await bht(t);return o||{status:"pending",error:`\u7B49\u5F85 LitePan \u786E\u8BA4\u63A5\u6536 Token\uFF1A${a?.message||a}`,hasAccessToken:!!(i.accessToken||await Ns(t,"open_access_token")),hasRefreshToken:!!(i.refreshToken||await Ns(t,"open_refresh_token")),expiresIn:s.expiresIn||""}}return await Qc(t,"litepan_oauth_session_id",""),await Qc(t,"litepan_oauth_completed_at",Date.now()),{status:"success",hasAccessToken:!!(i.accessToken||await Ns(t,"open_access_token")),hasRefreshToken:!!(i.refreshToken||await Ns(t,"open_refresh_token")),expiresIn:s.expiresIn||""}}function SBr(t,e){let r=mi(e);if(!r||xfe.has(r))return;let n=(async()=>{for(let s=0;s<45;s+=1){let i=await Sht(t,r);if(i.status==="success"||i.status==="error")return;await Eht(s<3?2e3:s<10?3e3:4e3)}})().catch(s=>{t.log?.warn?.(`LitePan OAuth background poll failed: ${s?.message||s}`)}).finally(()=>{xfe.delete(r)});xfe.set(r,n)}async function IBr(t){let e=await he.post(`${OR}/api/oauth/refresh`,{driver_type:"123\u4E91\u76D8Open",refresh_token:t},{timeout:15e3,validateStatus:null,headers:{"Content-Type":"application/json",Accept:"application/json"}});if(e.status>=400||e.data?.success===!1)throw new Error(Ap(e.data,`LitePan \u5237\u65B0 Token \u5931\u8D25: ${e.status}`));let r=_fe(e.data);if(!r.accessToken)throw new Error(Ap(e.data,"LitePan \u672A\u8FD4\u56DE access_token"));return r}async function Efe(t){t.get("/account",async(e,r)=>{let n=await Ns(e.server,"pan_passport"),s=await Ns(e.server,"pan_password"),i=await Ns(e.server,"use_direct_download"),a=await Ns(e.server,"open_access_token"),o=await Ns(e.server,"open_refresh_token");r.send({code:0,data:{username:n,password:s,useDirectDownload:hBr(i,!0),accessToken:a,refreshToken:o}})}),t.put("/account",async(e,r)=>{await Qc(e.server,"pan_passport",e.body.username),await Qc(e.server,"pan_password",e.body.password),await Qc(e.server,"use_direct_download",e.body.useDirectDownload===!0),await Qc(e.server,"open_access_token",mi(e.body.accessToken)),await Qc(e.server,"open_refresh_token",mi(e.body.refreshToken)),r.send({code:0})}),t.get("/oauth/openlist/redirect",async(e,r)=>{try{let n=await yBr();r.type("text/html; charset=utf-8").send(Aht(n))}catch(n){r.code(500).type("text/html; charset=utf-8").send(xht(n?.message||String(n)))}}),t.post("/oauth/openlist/refresh",async(e,r)=>{try{let n=mi(await Ns(e.server,"open_refresh_token"));if(!n){r.send({code:1,message:"\u8BF7\u5148\u586B\u5199\u6216\u83B7\u53D6 123 Open refresh_token"});return}let s=await ABr(n),i=await bfe(e.server,s);r.send({code:0,data:{hasAccessToken:!!(i.accessToken||await Ns(e.server,"open_access_token")),hasRefreshToken:!!(i.refreshToken||await Ns(e.server,"open_refresh_token")),expiresIn:s.expiresIn||""}})}catch(n){r.send({code:1,message:n?.message||String(n)})}}),t.get("/oauth/litepan/redirect",async(e,r)=>{try{let n=await xBr();if(!n?.sessionId||!n?.oauthUrl)throw new Error("LitePan OAuth \u672A\u8FD4\u56DE\u6388\u6743\u4F1A\u8BDD");await vBr(e.server,n),SBr(e.server,n.sessionId),r.type("text/html; charset=utf-8").send(Aht(n.oauthUrl))}catch(n){r.code(500).type("text/html; charset=utf-8").send(xht(n?.message||String(n)))}}),t.get("/oauth/litepan/status/latest",async(e,r)=>{try{let n=mi(await Ns(e.server,"litepan_oauth_session_id"));r.send({code:0,data:await Sht(e.server,n)})}catch(n){r.send({code:1,message:n?.message||String(n)})}}),t.post("/oauth/litepan/refresh",async(e,r)=>{try{let n=mi(await Ns(e.server,"open_refresh_token"));if(!n){r.send({code:1,message:"\u8BF7\u5148\u586B\u5199\u6216\u83B7\u53D6 123 Open refresh_token"});return}let s=await IBr(n),i=await bfe(e.server,s);r.send({code:0,data:{hasAccessToken:!!(i.accessToken||await Ns(e.server,"open_access_token")),hasRefreshToken:!!(i.refreshToken||await Ns(e.server,"open_refresh_token")),expiresIn:s.expiresIn||""}})}catch(n){r.send({code:1,message:n?.message||String(n)})}})}var Hy=async(t,e)=>(await t.db.getObjectDefault("/xun",{}))?.[e]||"",bd=async(t,e,r)=>{await t.db.push(`/xun/${e}`,r)},vfe=(t="")=>String(t||"").trim();async function Sfe(t){t.get("/account",async(e,r)=>{let n=await Hy(e.server,"xun_username"),s=await Hy(e.server,"xun_password"),i=!!await Hy(e.server,"xun_auth");r.send({code:0,data:{username:n,password:s,hasAuth:i}})}),t.put("/account",async(e,r)=>{await bd(e.server,"xun_username",e.body.username||""),await bd(e.server,"xun_password",e.body.password||""),await bd(e.server,"xun_auth",""),await bd(e.server,"xun_refresh_token",""),await bd(e.server,"xun_user_id",""),r.send({code:0})}),t.get("/auth-status",async(e,r)=>{let n=!!await Hy(e.server,"xun_auth");r.send({code:0,data:{hasAuth:n}})}),t.post("/login",async(e,r)=>{try{let n=vfe(e.body?.username),s=vfe(e.body?.password);if(!n){r.send({code:1,message:"\u8BF7\u8F93\u5165\u8FC5\u96F7\u8D26\u53F7"});return}if(!s){r.send({code:1,message:"\u8BF7\u8F93\u5165\u8FC5\u96F7\u5BC6\u7801"});return}await bd(e.server,"xun_username",n),await bd(e.server,"xun_password",s),await bd(e.server,"xun_auth",""),await bd(e.server,"xun_refresh_token",""),await bd(e.server,"xun_user_id",""),await Ub(e),await bg.getDownload_auth();let i=!!await Hy(e.server,"xun_auth");r.send({code:i?0:1,message:i?"\u767B\u5F55\u6210\u529F":"\u767B\u5F55\u5931\u8D25\uFF0C\u8BF7\u68C0\u67E5\u8D26\u53F7\u5BC6\u7801",data:{hasAuth:i}})}catch(n){console.warn("[xunlei] password login failed",{hasUsername:!!vfe(e.body?.username),message:n?.message||String(n)}),r.send({code:1,message:n?.message||"\u8FC5\u96F7\u8D26\u53F7\u5BC6\u7801\u767B\u5F55\u5931\u8D25"})}}),t.post("/send-code",async(e,r)=>{if(await Ub(e),!await Hy(e.server,"xun_username")){r.send({code:1,message:"\u8BF7\u5148\u4FDD\u5B58\u8FC5\u96F7\u8D26\u53F7"});return}await bg.getVerifyCode(),r.send({code:0,data:{sent:!0}})}),t.post("/verify-code",async(e,r)=>{await Ub(e);let n=String(e.body?.code||"").trim();if(!n){r.send({code:1,message:"\u9A8C\u8BC1\u7801\u4E0D\u80FD\u4E3A\u7A7A"});return}await bg.getVerify(n);let s=!!await Hy(e.server,"xun_auth");r.send({code:s?0:1,message:s?"\u767B\u5F55\u6210\u529F":"\u767B\u5F55\u5931\u8D25\uFF0C\u8BF7\u68C0\u67E5\u9A8C\u8BC1\u7801",data:{hasAuth:s}})})}var Tht=Ce(Q0(),1),Ife=Ce(Xn(),1),wht=Ce(oC(),1),Rht="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",Pa={NEW:"NEW",SCANNED:"SCANNED",CONFIRMED:"CONFIRMED",EXPIRED:"EXPIRED",CANCELED:"CANCELED"},Iht={encode(t,e=3e5){let r={data:t,expireTime:Date.now()+e};return Buffer.from(JSON.stringify(r)).toString("base64url")},decode(t){try{if(!t)return null;let e=JSON.parse(Buffer.from(t,"base64url").toString());return Date.now()>e.expireTime?null:e.data}catch{return null}}},Cht=null;function Nht(t){return Ife.default.enc.Hex.stringify(Ife.default.MD5(t.config.ali.token)).toString()}var CBr=async t=>{let e=await t.db.getObjectDefault("/ali",{});return String(e.token||e[Nht(t)]||"").trim()},TBr=async(t,e)=>{let r=String(e||"").trim();await t.db.push("/ali/token",r),await t.db.push(`/ali/${Nht(t)}`,r)};function wBr(t){return{t:t.t,appName:"aliyun_drive",ck:t.ck,appEntrance:"web",isMobile:"false",lang:"zh_CN",returnUrl:"",navlanguage:"zh-CN",navPlatform:"MacIntel",fromSite:"52",bizParams:""}}function RBr(t){let e=String(t||"").toUpperCase();return e===Pa.CONFIRMED?Pa.CONFIRMED:e===Pa.SCANNED||e==="SCANED"?Pa.SCANNED:e===Pa.CANCELED||e==="CANCELLED"?Pa.CANCELED:e===Pa.NEW?Pa.NEW:Pa.EXPIRED}async function NBr(){return(await he.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",{headers:{"User-Agent":Rht}})).data?.content?.data}async function OBr(t){return(await he.post("https://passport.aliyundrive.com/newlogin/qrcode/query.do?appName=aliyun_drive&fromSite=52&_bx-v=2.2.3",wht.default.stringify(wBr(t)),{headers:{"content-type":"application/x-www-form-urlencoded","User-Agent":Rht,referer:"https://www.aliyundrive.com/"}})).data?.content?.data||null}function kBr(t){let e=t?.bizExt;if(!e)return"";let r=Buffer.from(e,"base64").toString("utf8");try{return JSON.parse(r)?.pds_login_result?.refreshToken||""}catch{return JSON.parse(decodeURI(r))?.pds_login_result?.refreshToken||""}}async function PBr(t){let e=await OBr(t);if(!e)return{status:Pa.EXPIRED};let r=RBr(e.qrCodeStatus);if(r!==Pa.CONFIRMED)return{status:r};let n=kBr(e);return n?{status:Pa.CONFIRMED,cookie:n}:{status:Pa.EXPIRED}}async function Cfe(t){t.get("/qrcode",async(e,r)=>{try{let n=await NBr();if(!n?.ck||!n?.t||!n?.codeContent)throw new Error("\u4E8C\u7EF4\u7801\u5185\u5BB9\u7F3A\u5931");Cht={ck:n.ck,t:n.t};let s=Iht.encode(Cht),i=await Tht.default.toBuffer(n.codeContent,{width:300,height:300});r.header("X-Session-Key",s),r.send(i)}catch(n){console.error("\u963F\u91CC\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25:",n),r.status(500).send({code:-1,message:"\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25"})}}),t.post("/check-status",async(e,r)=>{let n=Iht.decode(e.body?.sessionKey);if(!n)return r.send({code:0,data:{status:Pa.EXPIRED}});try{let s=await PBr(n);r.send({code:0,data:s})}catch(s){console.error("\u963F\u91CC\u72B6\u6001\u68C0\u67E5\u5931\u8D25:",s),r.send({code:0,data:{status:Pa.EXPIRED}})}}),t.get("/token",async(e,r)=>{r.send({code:0,data:await CBr(e.server)})}),t.put("/token",async(e,r)=>{let n=e.body?.cookie??e.body?.data?.token??"";await TBr(e.server,n),r.send({code:0})})}var xvn=Ce(Q0(),1),_vn=Ce(Xn(),1);var j_="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36",Gy={NEW:"NEW",SCANNED:"SCANNED",CONFIRMED:"CONFIRMED",EXPIRED:"EXPIRED",CANCELED:"CANCELED"},Oht={encode(t,e=3e5){let r={data:t,expireTime:Date.now()+e};return Buffer.from(JSON.stringify(r)).toString("base64url")},decode(t){try{if(!t)return null;let e=JSON.parse(Buffer.from(t,"base64url").toString());return Date.now()>e.expireTime?null:e.data}catch{return null}}},DBr=async t=>(await t.db.getObjectDefault("/baidu",{}))["baidu_cookie"]??"",Tfe=async(t,e)=>{await t.db.push("/baidu/baidu_cookie",e)};function BBr(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(t){let e=Math.random()*16|0;return(t==="x"?e:e&3|8).toString(16)})}async function wfe(t){t.get("/qrcode",async(r,n)=>{try{let s=BBr(),i=new Date().getTime().toString(),a=Math.floor(new Date().getTime()/1e3).toString(),o=`tangram_guid_${i}`,u=(await fe.get("https://passport.baidu.com/v2/api/getqrcode",{params:{lp:"pc",qrloginfrom:"pc",gid:s,callback:o,apiver:"v3",tt:a,tpl:"netdisk",_:i},headers:{"User-Agent":j_,Referer:"https://pan.baidu.com","sec-ch-ua-platform":'"Windows"',DNT:"1"}})).data;if(typeof u=="string"){u=u.replace(/^[^(]*\(/,"").replace(/\);?$/,"");let l=JSON.parse(u);if(l.errno===0){let d=Oht.encode({sign:l.sign,channel_id:l.channel_id}),f="https://"+l.imgurl,p=await fe.get(f,{responseType:"arraybuffer",headers:{"User-Agent":j_}});n.header("X-Session-Key",d),n.send(p.data)}else throw new Error(`\u83B7\u53D6\u4E8C\u7EF4\u7801\u5931\u8D25: ${l.errmsg||"\u672A\u77E5\u9519\u8BEF"}`)}else throw new Error("\u54CD\u5E94\u683C\u5F0F\u9519\u8BEF")}catch(s){console.error("\u767E\u5EA6\u4E8C\u7EF4\u7801\u83B7\u53D6\u5931\u8D25:",s),n.status(500).send({code:-1,message:s?.message||"\u83B7\u53D6\u4E8C\u7EF4\u7801\u5931\u8D25"})}}),t.post("/check-status",async(r,n)=>{let{sessionKey:s}=r.body,i=Oht.decode(s);if(!i)return n.send({code:0,data:{status:Gy.EXPIRED}});let{sign:a}=i;try{let o=new Date().getTime().toString(),c=`tangram_guid_${o}`,l=(await fe.get("https://passport.baidu.com/channel/unicast",{params:{channel_id:a,tpl:"netdisk",apiver:"v3",tt:Math.floor(new Date().getTime()/1e3).toString(),callback:c,_:o},headers:{"User-Agent":j_,Referer:"https://pan.baidu.com"}})).data;if(typeof l=="string"){l=l.replace(/^[^(]*\(/,"").replace(/\);?\s*$/,"").trim();let d=JSON.parse(l);if(d.errno===0&&d.channel_v){let f=JSON.parse(d.channel_v);if(f.status===1)return n.send({code:0,data:{status:Gy.SCANNED}});if(f.status===0&&f.v){let p=await e(f.v,r.server);return n.send({code:0,data:{status:Gy.CONFIRMED,cookie:p}})}}else{if(d.errno===1)return n.send({code:0,data:{status:Gy.NEW}});if(d.errno===2)return n.send({code:0,data:{status:Gy.EXPIRED}})}}n.send({code:0,data:{status:Gy.NEW}})}catch(o){console.error("\u767E\u5EA6\u72B6\u6001\u68C0\u67E5\u5931\u8D25:",o),n.send({code:0,data:{status:Gy.NEW}})}});async function e(r,n){let s=new Date().getTime().toString(),i=Math.floor(new Date().getTime()/1e3).toString(),o=(await fe.get("https://passport.baidu.com/v3/login/main/qrbdusslogin",{params:{v:s,bduss:r,u:"https://pan.baidu.com/disk/main#/index?category=all",loginVersion:"v5",qrcode:"1",tpl:"netdisk",maskId:"",fileId:"",apiver:"v3",tt:s,traceid:"",time:i,alg:"v3",elapsed:"1"},headers:{"User-Agent":j_,Referer:"https://pan.baidu.com/","Accept-Language":"zh-CN,zh;q=0.9"},timeout:3e4})).data;if(typeof o=="string"){o=o.replace(/^[^(]*\(/,"").replace(/\);?\s*$/,"").trim();let c=o.match(/"bduss":\s*"([^"]+)"/),u=o.match(/"stoken":\s*"([^"]+)"/),l=o.match(/"ptoken":\s*"([^"]+)"/),d=o.match(/"ubi":\s*"([^"]+)"/);if(c&&u&&l&&d){let f=c[1],p=u[1],m=l[1],h=encodeURIComponent(d[1]),g=Object.entries({newlogin:"1",UBI:h,STOKEN:p,BDUSS:f,PTOKEN:m,BDUSS_BFESS:f,STOKEN_BFESS:p,PTOKEN_BFESS:m,UBI_BFESS:h}).map(([A,S])=>`${A}=${S}`).join("; "),x=(await fe.get("https://passport.baidu.com/v3/login/api/auth/?return_type=5&tpl=netdisk&u=https://pan.baidu.com/disk/home",{headers:{"User-Agent":j_,Referer:"https://pan.baidu.com/",Cookie:g},maxRedirects:0,validateStatus:A=>A===302||A===200})).headers.location;if(x){let S=(await fe.get(x,{headers:{"User-Agent":j_,Referer:"https://pan.baidu.com/",Cookie:g},maxRedirects:0,validateStatus:w=>w===302||w===200})).headers["set-cookie"],I="";if(S){let w=S.find(N=>N.toLowerCase().includes("stoken"));w&&(I=w.split(";")[0])}let R=I?`BDUSS=${f};${I};`:`BDUSS=${f};STOKEN=${p};`;return await Tfe(n,R),R}else{let A=`BDUSS=${f};STOKEN=${p};`;return await Tfe(n,A),A}}}throw new Error("Cookie\u89E3\u6790\u5931\u8D25")}t.post("/cookie",async(r,n)=>{n.send({code:-1,message:"\u8BF7\u4F7F\u7528 /check-status \u63A5\u53E3"})}),t.get("/cookie",async(r,n)=>{n.send({code:0,data:await DBr(r.server)})}),t.put("/cookie",async(r,n)=>{await Tfe(r.server,r.body?.cookie??""),n.send({code:0})})}var Bht=require("crypto");var Lht=Ce(Q0(),1),Mht="https://account.guangyapan.com",Rfe="aMe-8VSlkrbQXpUR",kht="0123456789abcdef0123456789abcdef",xp={NEW:"NEW",SCANNED:"SCANNED",CONFIRMED:"CONFIRMED",EXPIRED:"EXPIRED",CANCELED:"CANCELED"},LBr="urn:ietf:params:oauth:grant-type:device_code",Pht={encode(t,e=12e4){let r={data:t,expireTime:Date.now()+e};return Buffer.from(JSON.stringify(r)).toString("base64url")},decode(t){try{if(!t)return null;let e=JSON.parse(Buffer.from(t,"base64url").toString());return Date.now()>e.expireTime?null:e.data}catch{return null}}},jM=async(t,e)=>(await t.db.getObjectDefault("/guangyapan",{}))?.[e]||"",kR=async(t,e,r)=>{await t.db.push(`/guangyapan/${e}`,r)};function Wht(t){if(!t)return{};if(typeof t=="string")try{return JSON.parse(t)}catch{return{message:t}}return t}function oa(t){return String(t||"").trim()}function MBr(t){let e=String(t||"").trim().toLowerCase();return e=e.replace(/^wdi10\./,""),e=e.replace(/x+$/g,""),e=e.replace(/[^0-9a-f]/g,""),e.length===32?e:""}async function WBr(t){let e=MBr(await jM(t,"device_id"));if(e)return e;let r=kht;try{r=(0,Bht.randomBytes)(16).toString("hex")}catch{r=kht}return await kR(t,"device_id",r),r}function $ht(t){return{Accept:"application/json, text/plain, */*","Content-Type":"application/json","X-Client-Id":Rfe,"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 $Br(t){let e=oa(t?.access_token||t?.accessToken),r=oa(t?.refresh_token||t?.refreshToken);return{accessToken:e,refreshToken:r}}function UBr(t,e){let{accessToken:r,refreshToken:n}=$Br(e);if(t>=200&&t<300&&(n||r))return{status:xp.CONFIRMED,accessToken:r,refreshToken:n};let s=oa(e?.error).toLowerCase();return s==="authorization_pending"||s==="slow_down"?{status:xp.NEW}:s==="access_denied"?{status:xp.CANCELED}:s.includes("expired")||s==="invalid_grant"?{status:xp.EXPIRED}:{status:xp.NEW}}function FBr(t){let e=oa(t?.refreshToken);return e||oa(t?.accessToken)}async function qBr(t){let e=await he.post(`${Mht}/v1/auth/device/code`,{scope:"user",client_id:Rfe},{headers:$ht(t),validateStatus:()=>!0}),r=Wht(e.data),n=oa(r?.device_code),s=oa(r?.verification_uri_complete||r?.verification_url),i=Number(r?.expires_in||120);if(e.status<200||e.status>=300||!n||!s)throw new Error(r?.error_description||r?.message||`status=${e.status}`);return{deviceCode:n,verifyUrl:s,expiresIn:i}}async function jBr(t){let e=await he.post(`${Mht}/v1/auth/token`,{grant_type:LBr,device_code:t.deviceCode,client_id:Rfe},{headers:$ht(t.deviceId),validateStatus:()=>!0});return UBr(e.status,Wht(e.data))}async function Dht(t,e){let r=oa(e?.accessToken),n=oa(e?.refreshToken);n&&await kR(t,"refresh_token",n),r&&await kR(t,"access_token",r)}function QBr(t){let e=oa(t?.cookie),r=oa(t?.accessToken||t?.data?.accessToken),n=oa(t?.refreshToken||t?.data?.refreshToken),s=!1;if(!r&&!n&&e)try{let i=JSON.parse(e);s=!0,r=oa(i?.accessToken||i?.access_token),n=oa(i?.refreshToken||i?.refresh_token)}catch{n=e}return!s&&!n&&e&&(n=e),{accessToken:r,refreshToken:n}}async function Nfe(t){t.get("/qrcode",async(e,r)=>{try{let n=await WBr(e.server),s=await qBr(n),i=Pht.encode({deviceCode:s.deviceCode,deviceId:n},Math.max(1e3,s.expiresIn*1e3)),a=await Lht.default.toBuffer(s.verifyUrl,{width:300,height:300});r.header("X-Session-Key",i),r.type("image/png").send(a)}catch(n){console.error("\u5149\u9E2D\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25:",n),r.status(500).send({code:-1,message:"\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25"})}}),t.post("/check-status",async(e,r)=>{let n=Pht.decode(e.body?.sessionKey);if(!n)return r.send({code:0,data:{status:xp.EXPIRED}});try{let s=await jBr(n);if(s.status===xp.CONFIRMED)return await Dht(e.server,s),r.send({code:0,data:{status:xp.CONFIRMED,cookie:FBr(s)}});r.send({code:0,data:s})}catch(s){console.error("\u5149\u9E2D\u72B6\u6001\u68C0\u67E5\u5931\u8D25:",s),r.send({code:0,data:{status:xp.NEW}})}}),t.get("/token",async(e,r)=>{r.send({code:0,data:await jM(e.server,"refresh_token")})}),t.put("/token",async(e,r)=>{await Dht(e.server,QBr(e.body||{})),r.send({code:0})}),t.get("/account",async(e,r)=>{r.send({code:0,data:{accessToken:await jM(e.server,"access_token"),refreshToken:await jM(e.server,"refresh_token")}})}),t.put("/account",async(e,r)=>{await kR(e.server,"access_token",oa(e.body?.accessToken)),await kR(e.server,"refresh_token",oa(e.body?.refreshToken)),r.send({code:0})})}var QM=Ce(require("crypto"),1),So=Ce(Xn(),1),jht="https://user-njs.yun.139.com/user",Pfe="7.17.4",HBr="mCloud_4.3.0_536",Ofe=670,GBr=292,Qht=So.default.enc.Utf8.parse("h7DLzCTAjn+altjy2a9E9FSt7AC6pmx1"),Uht=`||9|${Pfe}|chrome||0||windows 10||zh-CN|||`,Dfe=(t="")=>String(t||"").replace(/^Basic\s+/i,"").trim(),Da=(t="")=>String(t||"").trim(),kfe=(t="")=>QM.default.createHash("md5").update(String(t)).digest("hex"),zBr=(t="")=>QM.default.createHash("sha1").update(String(t)).digest("hex"),KBr=t=>{try{return JSON.stringify(t)}catch{return String(t)}},VBr=t=>{try{return JSON.parse(t)}catch{return null}},Fht=(t="",e=160)=>String(t).replace(/\s+/g," ").slice(0,e),YBr=(t,e="\u79FB\u52A8\u4E91\u76D8\u63A5\u53E3\u8FD4\u56DE\u5F02\u5E38")=>typeof t=="string"?t||e:t&&typeof t=="object"?t.message||t.msg||t.desc||t.resultDesc||KBr(t):t==null?e:String(t),Q_=(t="")=>{let e=Da(t);return e.length<7?e?"***":"":`${e.slice(0,3)}****${e.slice(-4)}`},Bfe=(t={},e="\u79FB\u52A8\u4E91\u76D8\u63A5\u53E3\u8FD4\u56DE\u5F02\u5E38")=>{let r=String(t.code??t.status??t.resultCode??t.resultcode??""),n=YBr(t.message??t.msg??t.desc??t.resultDesc??t.errorMessage,r?`${e}\uFF1A${r}`:e),s=new Error(r?`${n}\uFF08${r}\uFF09`:n);return s.yidongCode=r,s.yidongData=t.data,s.yidongResult=t,s.statusCode=t.statusCode,s},JBr=t=>{let e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",r="";for(let n=0;nencodeURIComponent(JSON.stringify({...t})).split("").sort().join(""),ZBr=(t={})=>{let e=String(Date.now()),r=JBr(16),n=kfe(Buffer.from(XBr(t)).toString("base64")),s=kfe(`${e}:${r}`);return`${e},${r},${kfe(n+s).toUpperCase()}`},eLr=(t={},e={})=>({caller:"web","Content-Type":"application/json;charset=UTF-8","CMS-DEVICE":"default","X-Deviceinfo":`||9|${Pfe}|chrome||0||windows 10||zh-CN|||`,"x-yun-channel-source":"10000034","x-huawei-channelSrc":"10000034","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":Pfe,"mcloud-channel":"1000101","mcloud-client":"10701","mcloud-sign":ZBr(t),"mcloud-skey":"","INNER-HCY-ROUTER-HTTPS":"1",...e}),Hht=t=>{let e=t?.data||{},r=String(e.code??e.status??e.resultCode??e.resultcode??"");if(e.success===!1||r&&r!=="0"&&r!=="0000")throw Bfe(e);return e},tLr=(t={})=>{let e=So.default.lib.WordArray.random(16),r=So.default.enc.Utf8.parse(typeof t=="string"?t:JSON.stringify(t)),n=So.default.AES.encrypt(r,Qht,{iv:e,mode:So.default.mode.CBC,padding:So.default.pad.Pkcs7});return So.default.enc.Base64.stringify(e.concat(n.ciphertext))},rLr=(t="")=>{let e=So.default.enc.Base64.parse(String(t)),r=e.clone(),n=r.words.splice(4);r.init(r.words),e.init(n);let s=So.default.AES.decrypt(So.default.enc.Base64.stringify(e),Qht,{iv:r,mode:So.default.mode.CBC,padding:So.default.pad.Pkcs7}).toString(So.default.enc.Utf8);return JSON.parse(s)},Ght=(t="")=>{if(typeof t!="string")return t;try{return rLr(t)}catch(e){let r=VBr(t);return r&&typeof r=="object"?r:(console.warn("[yidong] cool response decrypt failed",{dataLength:String(t).length,dataPreview:Fht(t),message:e?.message||String(e)}),{success:!1,code:"COOL_DECRYPT_FAILED",message:`\u79FB\u52A8\u4E91\u76D8\u52A0\u5BC6\u54CD\u5E94\u89E3\u6790\u5931\u8D25\uFF1A${Fht(t)||e?.message||String(e)}`})}},nLr=t=>{let e=Ght(t?.data);return Hht({data:e})},sLr=t=>{let e=QM.default.createDecipheriv("aes-128-ecb",Buffer.from("qPqDw263XgFgL3u8"),null);return e.setAutoPadding(!0),Buffer.concat([e.update(Buffer.from(t,"hex")),e.final()]).toString("utf8")},iLr=t=>{if(typeof t!="string")return t||{};try{return JSON.parse(sLr(t))}catch{try{return JSON.parse(t)}catch{throw new Error("\u79FB\u52A8\u4E91\u76D8\u767B\u5F55\u7ED3\u679C\u89E3\u6790\u5931\u8D25")}}},aLr=(t,e)=>!t||!e?"":Buffer.from(`pc:${t}:${e}`,"utf8").toString("base64"),qht=async(t,e,r={})=>{try{let n=await he.post(`${jht}${t}`,e,{timeout:3e4,headers:eLr(e,r)});return Hht(n)}catch(n){if(n?.response?.data){let s=n.response.data;throw Bfe(s,"\u79FB\u52A8\u4E91\u76D8\u63A5\u53E3\u8BF7\u6C42\u5931\u8D25")}throw n}},oLr=async(t,e,r={})=>{let{clientInfo:n,...s}=r;try{let i=await he.post(`${jht}${t}`,tLr(e),{timeout:3e4,headers:{"Content-Type":"application/json;charset=UTF-8","hcy-cool-flag":"1","x-Nationcode":e.nationCode||"+86","x-deviceinfo":n||Uht,"x-yun-client-info":n||Uht,"x-yun-app-channel":"10000034",...s}});return nLr(i)}catch(i){if(i?.response?.data){let a=Ght(i.response.data);throw Bfe(a,"\u79FB\u52A8\u4E91\u76D8\u63A5\u53E3\u8BF7\u6C42\u5931\u8D25")}throw i}},PR=async(t,e)=>(await t.db.getObjectDefault("/yidong",{}))?.[e]||"",_d=async(t,e,r)=>{let n=e==="authorization"?Dfe(r):Da(r);await t.db.push(`/yidong/${e}`,n),e==="authorization"&&(globalThis.YidongAuthorization=n)},zht=async t=>{globalThis.YidongAuthorization=Dfe(await PR(t,"authorization"))};async function Lfe(t){t.get("/authorization",async(e,r)=>{let n=Dfe(await PR(e.server,"authorization")),s=Da(await PR(e.server,"phone"));globalThis.YidongAuthorization=n,r.send({code:0,data:{authorization:n,phone:s,hasAuth:!!n}})}),t.put("/authorization",async(e,r)=>{await _d(e.server,"authorization",e.body.authorization),r.send({code:0})}),t.post("/send-code",async(e,r)=>{let n=Da(e.body?.phone),s=Math.random();try{if(!/^1[3456789]\d{9}$/.test(n)){r.send({code:1,message:"\u8BF7\u8F93\u5165\u6B63\u786E\u7684\u4E2D\u56FD\u5927\u9646\u624B\u673A\u53F7"});return}let i={phoneNumber:n,reqType:3,random:s,nationCode:"+86",clientType:Ofe},a=await qht("/sms/getSmsCode",i,{"x-NationCode":"+86"}),o=Da(a?.data?.random||a?.random||s);await _d(e.server,"phone",n),await _d(e.server,"smsRandom",o),await _d(e.server,"smsLoginRandom",s),console.info("[yidong] sms code sent",{phone:Q_(n),reqType:i.reqType,randomLength:o.length}),r.send({code:0,data:{sent:!0}})}catch(i){if(console.warn("[yidong] send code failed",{phone:Q_(e.body?.phone),code:i?.yidongCode,message:i?.message||String(i)}),i?.yidongCode==="200059554"){let a=Number(i?.yidongData?.captchaType||i?.yidongResult?.data?.captchaType||2);await _d(e.server,"phone",n),await _d(e.server,"smsLoginRandom",s),console.info("[yidong] sms code requires captcha",{phone:Q_(n),captchaType:a}),r.send({code:0,data:{captchaRequired:!0,captchaType:a}});return}r.send({code:1,message:i?.message||"\u53D1\u9001\u9A8C\u8BC1\u7801\u5931\u8D25"})}}),t.post("/send-code-captcha",async(e,r)=>{try{let n=Da(e.body?.phone),s=Number(e.body?.captchaType||2),i=e.body?.puzzleVerfycode??e.body?.puzzleVerfyCode,a=Da(e.body?.clientInfo);if(!/^1[3456789]\d{9}$/.test(n)){r.send({code:1,message:"\u8BF7\u8F93\u5165\u6B63\u786E\u7684\u4E2D\u56FD\u5927\u9646\u624B\u673A\u53F7"});return}if(!i){r.send({code:1,message:"\u8BF7\u5148\u5B8C\u6210\u6ED1\u5757\u9A8C\u8BC1"});return}let o=Da(await PR(e.server,"smsLoginRandom")),c=Number(o),u=o&&Number.isFinite(c)?c:Math.random(),d=await oLr("/sms/getSmsCode",{phoneNumber:n,reqType:3,random:u,nationCode:"+86",clientType:Ofe,captchaType:s,puzzleVerfycode:i},a?{clientInfo:a}:{}),f=Da(d?.data?.random||d?.random||u);await _d(e.server,"phone",n),await _d(e.server,"smsRandom",f),console.info("[yidong] sms code sent after captcha",{phone:Q_(n),captchaType:s,randomLength:f.length}),r.send({code:0,data:{sent:!0}})}catch(n){console.warn("[yidong] send code after captcha failed",{phone:Q_(e.body?.phone),code:n?.yidongCode,message:n?.message||String(n)}),r.send({code:1,message:n?.message||"\u6ED1\u5757\u9A8C\u8BC1\u540E\u53D1\u9001\u9A8C\u8BC1\u7801\u5931\u8D25"})}}),t.post("/verify-code",async(e,r)=>{let n="";try{let s=Da(e.body?.phone),i=Da(e.body?.code);if(!/^1[3456789]\d{9}$/.test(s)){r.send({code:1,message:"\u8BF7\u8F93\u5165\u6B63\u786E\u7684\u4E2D\u56FD\u5927\u9646\u624B\u673A\u53F7"});return}if(!i){r.send({code:1,message:"\u9A8C\u8BC1\u7801\u4E0D\u80FD\u4E3A\u7A7A"});return}n=Da(await PR(e.server,"smsRandom"));let a={msisdn:s,random:"",dycpwd:i,cpid:GBr,clienttype:Ofe,version:HBr,pintype:5,secinfo:zBr(`fetion.com.cn:${i}`).toUpperCase(),verType:2,loginMode:"0",extInfo:{ifOpenAccount:"1"}},o=await qht("/thirdlogin",a,{"x-NationCode":"+86"}),c=iLr(o.data),u=Da(c.account||s),l=Da(c.token||c.authToken),d=aLr(u,l);if(!d){r.send({code:1,message:"\u79FB\u52A8\u4E91\u76D8\u767B\u5F55\u6210\u529F\u4F46\u672A\u8FD4\u56DE\u6709\u6548 token"});return}await _d(e.server,"phone",s),await _d(e.server,"authorization",d),r.send({code:0,message:"\u767B\u5F55\u6210\u529F",data:{hasAuth:!0,authorization:d}})}catch(s){console.warn("[yidong] verify code failed",{phone:Q_(e.body?.phone),codeLength:Da(e.body?.code).length,smsRandomLength:n.length,message:s?.message||String(s)}),r.send({code:1,message:s?.message||"\u9A8C\u8BC1\u7801\u767B\u5F55\u5931\u8D25"})}})}var HM=[{key:"quark",name:"\u5938\u514B",enable:!0,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",chunkSize:512,poolSize:10,noSaveMode:!1},{key:"uc",name:"UC",enable:!0,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",chunkSize:512,poolSize:10},{key:"ali",name:"\u963F\u91CC",enable:!0,pic:"https://inews.gtimg.com/newsapp_bt/0/13263837859/1000",chunkSize:128,poolSize:20},{key:"baidu",name:"\u767E\u5EA6",enable:!0,pic:"https://nd-static.bdstatic.com/m-static/v20-main/home/img/icon-home-new.b4083345.png"},{key:"xunlei",name:"\u8FC5\u96F7",enable:!0,pic:"https://img.geekie.site/i/2026/03/22/190713.png"},{key:"tianyi",name:"\u5929\u7FFC",enable:!0,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:"yidong",name:"\u79FB\u52A8",enable:!0,pic:"https://yun.139.com/w/static/img/LOGO.png"},{key:"123",name:"123",enable:!0,pic:"https://statics.123957.com/static/favicon.ico"},{key:"115",name:"115",enable:!0,pic:"https://img.pcsoft.com.cn/soft/202104/093230-608b5e2ed5912.jpg"},{key:"guangyapan",name:"\u5149\u9E2D",enable:!0,pic:"https://www.guangyapan.com/icon.png"}],Mfe=async t=>{let r=(await t.db.getObjectDefault("/pans",{}))?.list||t.config.pans.list;return r.filter(n=>HM.some(s=>s.key===n.key)).concat(HM.filter(n=>!r.some(s=>s.key===n.key))).map(n=>({...HM.find(i=>i.key===n.key),...n}))},cLr=async(t,e)=>{await t.db.push("/pans/list",e),globalThis.Pans=e},uLr=async t=>{await t.db.delete("/pans/list"),globalThis.Pans=HM};async function Wfe(t){t.get("/list",async(e,r)=>{r.send({code:0,data:await Mfe(e.server)})}),t.put("/list",async(e,r)=>{await cLr(e.server,e.body.list),r.send({code:0})}),t.delete("/list",async(e,r)=>{await uLr(e.server),r.send({code:0})})}var Kht=Ce(NI(),1);async function $fe(t){t.get("/",async(e,r)=>{r.header("Content-Disposition",`attachment; filename="config.${(0,Kht.default)().format("YYYY-MM-DD")}.json"`);let n=await e.server.db.getData("/");r.send(JSON.stringify(n,null,4))}),t.put("/",async(e,r)=>{await e.server.db.push("/",e.body),r.send({code:0})})}var Vht=Ce(require("crypto"),1);function Ft(t=[],e=null){let r=Array.isArray(t)?t:[];return{Items:r,TotalRecordCount:typeof e=="number"?e:r.length}}function Jr(t,e,r=""){if(!t||typeof t!="object")return r;for(let n of e)if(t[n]!==void 0&&t[n]!==null)return t[n];return r}function Ufe(t,e){return typeof t!="string"||!t.trim()?[]:t.split(e).map(r=>String(r||"").trim()).filter(Boolean)}function lLr(t){let e=String(t||""),r=e.lastIndexOf("$");return r<=0?{name:e||"\u64AD\u653E",playId:""}:{name:e.slice(0,r).trim()||"\u64AD\u653E",playId:e.slice(r+1).trim()}}function Io(t,e){let r=Ufe(t,"$$$"),n=Ufe(e,"$$$"),s=Math.max(r.length,n.length),i=[];for(let a=0;au.playId);i.push({flag:r[a]||`\u7EBF\u8DEF${a+1}`,episodes:c})}return i}function zy(t,e=1){let r=Number.parseInt(xR(String(t||"")),10);if(Number.isInteger(r)&&r>0)return r;let n=Number.parseInt(String(e||1),10);return Number.isInteger(n)&&n>0?n:1}function dLr(t,e=""){let r=[];for(let n=0;nqfe(s)).find(Boolean)||"";if(e){let n=r.find(s=>s.label===e);if(n)return n.url}return r[0].url}function Ffe(t=""){return/^(https?:\/\/|push:\/\/)/i.test(String(t||"").trim())}function qfe(t=""){let e=String(t||"").trim();if(!e)return"";if(Ffe(e))return e;let r=e.split("#").map(n=>String(n||"").trim()).filter(Boolean);for(let n of r){if(Ffe(n))return n;let i=n.split(",").map(c=>String(c||"").trim()).filter(Boolean).find(c=>Ffe(c));if(i)return i;let a=n.match(/(https?:\/\/[^\s,]+)/i);if(a?.[1])return a[1].trim();let o=n.match(/(push:\/\/[^\s,]+)/i);if(o?.[1])return o[1].trim()}return""}function km(t,e=""){let r=t?.url||"";Array.isArray(r)?r=dLr(r,e):r=qfe(r),typeof r!="string"&&(r="");let n={};return t?.header&&typeof t.header=="object"&&Object.keys(t.header).forEach(s=>{let i=t.header[s];i!=null&&(n[s]=String(i))}),{parse:Number(t?.parse||0),url:r.trim(),header:n}}function Hu(t,e=60){let r=Number(t);return!Number.isFinite(r)||r<=0?e:Math.min(200,r)}function Ba(t=[],e=0,r=60){let n=Array.isArray(t)?t:[],s=Math.max(0,Number(e)||0),i=Hu(r,60);return n.slice(s,s+i)}function as(t={}){return{IsFavorite:!1,Played:!1,PlayCount:0,PlaybackPositionTicks:0,...t}}function H_(t={}){let e=`${t?.vod_name||""} ${t?.vod_remarks||""}`;return/(æ›´æ–°|第\s*\d+\s*[集话期]|连载|season|s\d+e\d+)/i.test(e)?"Series":"Movie"}function Us(){return new Date().toISOString()}function fLr(t={}){if(typeof t=="string")try{t=JSON.parse(t)}catch{t={}}return{username:String(t?.username||t?.Username||t?.name||t?.Name||""),password:String(t?.pw||t?.Pw||t?.password||t?.Password||"")}}function pLr(t=""){let e={};return String(t).replace(/^MediaBrowser\s+/i,"").replace(/^Emby\s+/i,"").replace(/,\s+/g,",").split(",").forEach(n=>{let[s,i]=n.split("="),a=String(s||"").trim().toLowerCase(),o=String(i||"").replace(/"/g,"").trim();a&&o&&(e[a]=o)}),e}function mLr(t){let e=t.query||{},r=pLr(t.headers?.["x-emby-authorization"]||t.headers?.authorization||"");return{client:r.client||String(e["x-emby-client"]||e["X-Emby-Client"]||""),device:r.device||String(e["x-emby-device-name"]||e["X-Emby-Device-Name"]||""),deviceId:r.deviceid||String(e["x-emby-device-id"]||e["X-Emby-Device-Id"]||""),version:r.version||String(e["x-emby-client-version"]||e["X-Emby-Client-Version"]||"")}}function hLr(t){let e=Us();return{Name:t.user.name,ServerId:t.config.serverId,Id:t.user.id,HasPassword:!0,HasConfiguredPassword:!0,HasConfiguredEasyPassword:!1,EnableAutoLogin:!1,LastLoginDate:e,LastActivityDate:e,Policy:{IsAdministrator:!0,IsHidden:!1,IsDisabled:!1,EnableRemoteAccess:!0,EnableContentDeletion:!1,EnableContentDownloading:!0,EnableSyncTranscoding:!0,EnableMediaPlayback:!0,EnableAudioPlaybackTranscoding:!0,EnableVideoPlaybackTranscoding:!0,EnablePlaybackRemuxing:!0,EnableSubtitleManagement:!1,AuthenticationProviderId:"Emby.Server.Implementations.Library.DefaultAuthenticationProvider"},Configuration:{PlayDefaultAudioTrack:!0,DisplayMissingEpisodes:!1,SubtitleMode:"Default",EnableLocalPassword:!1,HidePlayedInLatest:!0,RememberAudioSelections:!0,RememberSubtitleSelections:!0}}}function gLr(t,e,r){let n=Us();return{PlayState:{CanSeek:!0,IsPaused:!1,IsMuted:!1,RepeatMode:"RepeatNone",SubtitleOffset:0,PlaybackRate:1},AdditionalUsers:[],RemoteEndPoint:"mycatpaw",PlayableMediaTypes:["Video"],PlaylistIndex:0,PlaylistLength:0,Id:e.Id,ServerId:t.config.serverId,UserId:e.Id,UserName:e.Name,Client:r.client,LastActivityDate:n,DeviceName:r.device,InternalDeviceId:0,DeviceId:r.deviceId,ApplicationVersion:r.version||t.config.version,SupportedCommands:[],SupportsRemoteControl:!1}}async function jfe(t){let e=new Map,r=5,n=60*1e3;function s(a){let o=Date.now(),c=e.get(a);return!c||o-c.windowStart>n?!1:c.count>=r}function i(a){let o=Date.now(),c=e.get(a);!c||o-c.windowStart>n?e.set(a,{count:1,windowStart:o}):c.count++}t.get("/Public",async()=>[]),t.post("/AuthenticateByName",async(a,o)=>{let c=t.embyContext;if(!c.config.enable)return o.code(503),"Emby disabled";let u=a.ip||"unknown";if(s(u))return o.code(429),"\u8BF7\u6C42\u8FC7\u4E8E\u9891\u7E41\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5";let l=fLr(a.body||{});if(console.log("[Emby Auth] login attempt:",JSON.stringify({username:l.username,hasPassword:!!l.password,ip:u})),l.username!==c.config.username||l.password!==c.config.password)return i(u),o.code(401),"\u7528\u6237\u540D\u6216\u5BC6\u7801\u9519\u8BEF";let d=Vht.default.randomBytes(24).toString("hex"),f=mLr(a),p=Date.now(),m=c.config.tokenTtlMs>0?p+c.config.tokenTtlMs:0;c.tokens.set(d,{token:d,userId:c.user.id,userName:c.user.name,createdAt:p,lastUsedAt:p,expireAt:m,device:f});let h=hLr(c),y=gLr(c,h,f);return{User:h,SessionInfo:y,AccessToken:d,ServerId:c.config.serverId}}),t.post("/Logout",{preHandler:t.embyRequireAuth},async(a,o)=>{a.embyToken&&t.embyContext.tokens.delete(a.embyToken),o.code(204).send()}),t.get("/Me",{preHandler:t.embyRequireAuth},async a=>({Name:a.embyUser?.Name||t.embyContext.user.name,Id:a.embyUser?.Id||t.embyContext.user.id,ServerId:t.embyContext.config.serverId,Policy:{},Configuration:{},EnableAutoLogin:!1,LastLoginDate:Us(),LastActivityDate:Us()}))}async function Qfe(t){t.get("/Info/Public",async()=>{let e=t.embyContext.config;return{LocalAddresses:[],RemoteAddresses:[],ServerName:e.serverName,Version:e.version,Id:e.serverId}}),t.get("/Info",{preHandler:t.embyRequireAuth},async()=>{let e=t.embyContext.config;return{SystemUpdateLevel:"Release",OperatingSystemDisplayName:"Node.js",HasPendingRestart:!1,IsShuttingDown:!1,HasImageEnhancers:!1,SupportsLibraryMonitor:!1,SupportsLocalPortConfiguration:!1,SupportsWakeServer:!1,CanSelfRestart:!1,CanSelfUpdate:!1,CanLaunchWebBrowser:!1,ProgramDataPath:"/",ItemsByNamePath:"/metadata",CachePath:"/cache",LogPath:"/logs",InternalMetadataPath:"/metadata",TranscodingTempPath:"/tmp",HttpServerPortNumber:8096,SupportsHttps:!1,HttpsPortNumber:8920,HasUpdateAvailable:!1,SupportsAutoRunAtStartup:!1,HardwareAccelerationRequiresPremiere:!1,WakeOnLanInfo:{MacAddress:"",BroadcastAddress:"",Port:0},IsInMaintenanceMode:!1,LocalAddress:"",LocalAddresses:[],WanAddress:"",RemoteAddresses:[],ServerName:e.serverName,Version:e.version,Id:e.serverId}}),t.get("/Ping",async(e,r)=>(r.type("text/plain; charset=utf-8"),"MyCatPaw Emby")),t.get("/Endpoint",async()=>({IsInNetwork:!0}))}var Yht=new Set(["lib","cat","vod","sea","ep","img","media"]);function wn(t,e={}){if(!Yht.has(t))throw new Error(`Unsupported item type: ${t}`);let r=JSON.stringify(e||{}),n=Buffer.from(r,"utf8").toString("base64url");return`${t}:${n}`}function Fs(t){if(typeof t!="string")return null;let e=t.indexOf(":");if(e<=0)return null;let r=t.slice(0,e);if(!Yht.has(r))return null;let n=t.slice(e+1);if(!n)return null;try{let s=Buffer.from(n,"base64url").toString("utf8"),i=JSON.parse(s);return!i||typeof i!="object"?null:{type:r,payload:i}}catch{return null}}function Hfe(t,e){let r=wn("lib",{k:t.spiderKey,t:t.spiderType,...t.siteName?{n:t.siteName}:{},...t.apiBase?{a:t.apiBase}:{}});return{Name:t.siteName,ServerId:e,Id:r,Guid:r,Etag:r,IsFolder:!0,Type:"CollectionFolder",PrimaryImageAspectRatio:1.7778,CanDelete:!1,CanDownload:!1,DisplayPreferencesId:r,UserData:as(),ImageTags:{Primary:r},BackdropImageTags:[],ChildCount:0}}async function Gfe(t){t.get("/MediaFolders",{preHandler:t.embyRequireAuth},async()=>{let e=t.embyContext.config.serverId,r=await Ad(t);return Ft(r.map(n=>Hfe(n,e)))}),t.get("/VirtualFolders",{preHandler:t.embyRequireAuth},async()=>{let e=t.embyContext.config.serverId;return(await Ad(t)).map(n=>{let s=Hfe(n,e);return{Name:s.Name,Locations:[],LibraryOptions:{},ItemId:s.Id,Id:s.Id,Guid:s.Guid}})}),t.get("/SelectableMediaFolders",{preHandler:t.embyRequireAuth},async()=>{let e=t.embyContext.config.serverId,r=await Ad(t);return Ft(r.map(n=>{let s=Hfe(n,e);return{Name:s.Name,Id:s.Id,Path:"",Type:"Virtual"}}))}),t.post("/Refresh",{preHandler:t.embyRequireAuth},async(e,r)=>{r.code(204).send()}),t.post("/RefreshMediaLibrary",{preHandler:t.embyRequireAuth},async(e,r)=>{r.code(204).send()})}var yLr="/embyPlayback",ALr=.92,xLr=1500;function GM(t,e=0){let r=Number(t);return Number.isFinite(r)?r:e}function zfe(t,e=!1){if(t==null||t==="")return e;let r=String(t).trim().toLowerCase();return["1","true","yes","on"].includes(r)?!0:["0","false","no","off"].includes(r)?!1:e}function bLr(t){if(t instanceof Date){let n=t.getTime();return Number.isFinite(n)?new Date(n).toISOString():""}let e=String(t||"").trim();if(!e)return"";let r=Date.parse(e);return Number.isFinite(r)?new Date(r).toISOString():""}function zM(t){let e=t&&typeof t=="object"?t:{};return{users:e.users&&typeof e.users=="object"?e.users:{}}}function Pm(t){let e=t?.embyContext;return!e||typeof e!="object"?zM(null):((!e.playbackState||typeof e.playbackState!="object")&&(e.playbackState=zM(null)),(!e.playbackState.users||typeof e.playbackState.users!="object")&&(e.playbackState.users={}),e.playbackState)}function Ky(t,e){let r=String(e||"").trim();return r?((!t.users[r]||typeof t.users[r]!="object")&&(t.users[r]={items:{}}),(!t.users[r].items||typeof t.users[r].items!="object")&&(t.users[r].items={}),t.users[r]):null}function bp(t,e=""){let r=t&&typeof t=="object"?t:{};return{itemId:String(e||r.itemId||"").trim(),name:String(r.name||"").trim(),isFavorite:!!r.isFavorite,played:!!r.played,playCount:Math.max(0,Math.floor(GM(r.playCount,0))),playbackPositionTicks:Math.max(0,Math.floor(GM(r.playbackPositionTicks,0))),lastPlayedDate:bLr(r.lastPlayedDate),mediaSourceId:String(r.mediaSourceId||"").trim()}}function Jht(t={}){return Date.parse(String(t?.lastPlayedDate||""))||0}function _Lr(t=""){let e=String(t||"").trim();return e?e.match(/\d{4}/)?.[0]||e:""}function Zht(t={}){let e=String(t.k||"").trim(),r=String(t.v||"").trim();if(!e||!r)return null;let n=_Lr(t.y);return{k:e,t:Number(t.t||3),v:r,...t.n?{n:String(t.n||"")}:{},...t.u?{u:String(t.u||"")}:{},...t.r?{r:String(t.r||"")}:{},...n?{y:n}:{}}}function ELr(t={}){let e=Zht(t);return e?{...e,l:Number(t.l||0)}:null}function vLr(t={}){let e=Zht(t);return e?wn("vod",e):""}function SLr(t={}){let e=ELr(t);return e?wn("sea",e):""}function egt(t){return t?.type==="ep"||t?.type==="media"}function ILr(t,e){if(!egt(t)||!["vod","sea"].includes(e?.type))return!1;let r=t.payload||{},n=e.payload||{};return!(String(r.k||"")!==String(n.k||"")||Number(r.t||3)!==Number(n.t||3)||String(r.v||"")!==String(n.v||"")||e.type==="sea"&&Number(r.l||0)!==Number(n.l||0))}function tgt(t,e,r,n={}){let s=Fs(String(r||""));if(!["vod","sea"].includes(s?.type))return[];let i=Pm(t),a=Ky(i,e);if(!a)return[];let o=!!n?.includePlayed;return Object.entries(a.items||{}).map(([c,u])=>({record:bp(u,c),decoded:Fs(c)})).filter(({record:c,decoded:u})=>!ILr(u,s)||c.playbackPositionTicks<=0?!1:o||!c.played).sort((c,u)=>Jht(u.record)-Jht(c.record))}function DR(t,e,r,n={}){return tgt(t,e,r,n)[0]||null}async function Xht(t){try{if(!t?.db?.push)return;await t.db.push(yLr,Pm(t))}catch{}}function KM(t,e=!1){let r=t?.embyContext;if(!(!r||typeof r!="object")){if(e){r.playbackPersistTimer&&(clearTimeout(r.playbackPersistTimer),r.playbackPersistTimer=null),Xht(t);return}r.playbackPersistTimer||(r.playbackPersistTimer=setTimeout(async()=>{r.playbackPersistTimer=null,await Xht(t)},xLr))}}function CLr(t={},e=""){let r=[t?.ItemId,t?.itemId,t?.NowPlayingItem?.Id,t?.nowPlayingItem?.Id,t?.PlayingItemId,t?.playingItemId,t?.PlayableItemId,t?.playableItemId,e];for(let n of r){let s=String(n||"").trim();if(s)return s}return""}function TLr(t={}){let e=[t?.PositionTicks,t?.positionTicks,t?.PlaybackPositionTicks,t?.playbackPositionTicks,t?.Position,t?.position];for(let r of e){let n=Math.floor(GM(r,NaN));if(Number.isFinite(n)&&n>=0)return n}return 0}function wLr(t={}){let e=[t?.RunTimeTicks,t?.runTimeTicks,t?.NowPlayingItem?.RunTimeTicks,t?.nowPlayingItem?.runTimeTicks];for(let r of e){let n=Math.floor(GM(r,NaN));if(Number.isFinite(n)&&n>0)return n}return 0}function RLr(t,e,r,n){return zfe(t?.Played,!1)||zfe(t?.IsPlayed,!1)||e==="played"?!0:e!=="stopped"||n<=0?!1:r/n>=ALr}function NLr(t,e,r){let n=String(r||"").trim();if(!n)return null;let s=Pm(t),i=Ky(s,e);if(!i)return null;let a=i.items[n];return!a||typeof a!="object"?null:bp(a,n)}function Xo(t,e,r,n={}){let s=String(r||"").trim();if(!s)return as(n);let i=NLr(t,e,s),o=DR(t,e,s)?.record||null||i;return o?as({...n,IsFavorite:!!(i?.isFavorite||o.isFavorite),Played:o.played,PlayCount:o.playCount,PlaybackPositionTicks:o.playbackPositionTicks,...o.lastPlayedDate?{LastPlayedDate:o.lastPlayedDate}:{}}):as(n)}function qs(t,e,r=[]){return!Array.isArray(r)||!r.length||r.forEach(n=>{!n||!n.Id||(n.UserData=Xo(t,e,String(n.Id||""),n.UserData||{}))}),r}async function BR(t,e,r={},n="progress"){let s=CLr(r);if(!s)return null;let i=Pm(t),a=Ky(i,e);if(!a)return null;let o=bp(a.items[s],s),c=TLr(r),u=wLr(r),l=RLr(r,n,c,u),d=bp(o,s);d.lastPlayedDate=Us(),c>0&&(d.playbackPositionTicks=c);let f=String(r?.ItemName||r?.itemName||r?.Name||r?.name||r?.NowPlayingItem?.Name||"").trim();f&&(d.name=f);let p=String(r?.MediaSourceId||r?.mediaSourceId||"").trim();return p&&(d.mediaSourceId=p),l?(d.played=!0,d.playCount=Math.max(1,d.playCount+(o.played?0:1)),d.playbackPositionTicks=0):n!=="ping"&&(c>0||n==="stopped"||n==="progress"||n==="playing")&&(d.played=!1),(r?.IsFavorite!==void 0||r?.isFavorite!==void 0)&&(d.isFavorite=zfe(r?.IsFavorite??r?.isFavorite,d.isFavorite)),a.items[s]=d,KM(t,n==="stopped"),d}async function rgt(t,e,r,n){let s=String(r||"").trim();if(!s)return as();let i=Pm(t),a=Ky(i,e);if(!a)return as();let o=bp(a.items[s],s),c=bp(o,s);return c.played=!!n,c.lastPlayedDate=Us(),c.played&&(c.playCount=Math.max(1,c.playCount+(o.played?0:1))),c.playbackPositionTicks=0,a.items[s]=c,KM(t,!0),Xo(t,e,s)}async function ngt(t,e,r,n){let s=String(r||"").trim();if(!s)return as();let i=Pm(t),a=Ky(i,e);if(!a)return as();let o=bp(a.items[s],s);return o.isFavorite=!!n,o.lastPlayedDate=Us(),a.items[s]=o,KM(t,!0),Xo(t,e,s)}async function sgt(t,e,r){let n=String(r||"").trim();if(!n)return as();let s=Pm(t),i=Ky(s,e);if(!i)return as();let a=new Set([n,...tgt(t,e,n).map(({record:o})=>o.itemId)]);for(let o of a){let c=bp(i.items[o],o);c.played=!1,c.playbackPositionTicks=0,c.lastPlayedDate=Us(),i.items[o]=c}return KM(t,!0),Xo(t,e,n)}function OLr(t=""){let e=Fs(String(t||""));return e?e.type==="vod"?{type:"Series",isFolder:!0,canPlay:!1,mediaType:"Video"}:e.type==="sea"?{type:"Season",isFolder:!0,canPlay:!1,mediaType:void 0}:e.type==="ep"||e.type==="media"?{type:"Episode",isFolder:!1,canPlay:!0,mediaType:"Video"}:{type:"Video",isFolder:!1,canPlay:!0,mediaType:"Video"}:{type:"Video",isFolder:!1,canPlay:!0,mediaType:"Video"}}function kLr(t){if(t?.name)return String(t.name);let e=Fs(String(t?.itemId||"")),r=String(e?.payload?.n||"").trim();return r||"\u7EE7\u7EED\u64AD\u653E"}function PLr(t,e,r,n){let s=Fs(String(n?.itemId||""));if(egt(s)){let a=vLr(s.payload||{});if(a){let o=SLr(s.payload||{});return{Name:String(s?.payload?.n||n?.name||"").trim()||"\u7EE7\u7EED\u64AD\u653E",Id:a,ServerId:r,IsFolder:!0,Type:"Series",MediaType:"Video",CollectionType:"tvshows",...o?{SeasonId:o}:{},DateCreated:n.lastPlayedDate||Us(),ImageTags:{Primary:a},BackdropImageTags:[],UserData:Xo(t,e,a)}}}let i=OLr(n.itemId);return{Name:kLr(n),Id:n.itemId,ServerId:r,IsFolder:i.isFolder,Type:i.type,...i.mediaType?{MediaType:i.mediaType}:{},...i.canPlay?{CanPlay:!0}:{},DateCreated:n.lastPlayedDate||Us(),ImageTags:{Primary:n.itemId},BackdropImageTags:[],UserData:Xo(t,e,n.itemId)}}function DLr(t={}){let e=Fs(String(t?.Id||"")),r=e?.payload||{},n=String(r.k||"").trim(),s=String(r.v||"").trim();return e?.type==="vod"&&n&&s?`series:${n}:${Number(r.t||3)}:${s}`:e?.type==="sea"&&n&&s?`season:${n}:${Number(r.t||3)}:${s}:${Number(r.l||0)}`:`item:${String(t?.Id||"")}`}function igt(t,e,r){let n=Pm(t),s=Ky(n,e);if(!s)return[];let i=Object.entries(s.items||{}).map(([c,u])=>bp(u,c)).filter(c=>c.playbackPositionTicks>0&&!c.played).sort((c,u)=>{let l=Date.parse(String(c.lastPlayedDate||""))||0;return(Date.parse(String(u.lastPlayedDate||""))||0)-l}),a=new Set,o=[];for(let c of i){let u=PLr(t,e,r,c),l=DLr(u);!u?.Id||a.has(l)||(a.add(l),o.push(u))}return o}var BLr="https://api.themoviedb.org/3",agt=8e3,LLr=2,ogt=20,cgt=20;function ugt(t=0){return new Promise(e=>setTimeout(e,Math.max(0,Number(t)||0)))}function LR(t){let e=t.embyContext?.config||{},r=String(e.tmdbApiKey||"").trim();return!e.tmdbEnable||!r?null:{apiKey:r,language:String(e.tmdbLanguage||"zh-CN"),imageBase:String(e.tmdbImageBase||"https://image.tmdb.org/t/p/original").replace(/\/+$/,""),timeoutMs:agt}}function lgt(t="zh-CN"){let e=String(t||"zh-CN").trim().split(/[-_]/)[0].toLowerCase(),r=new Set;return e&&r.add(e),r.add("en"),r.add("null"),Array.from(r).join(",")}function MLr(t){let e=t.embyContext;return e.tmdbClientState||(e.tmdbClientState={tokens:cgt,lastRefillAt:Date.now()}),e.tmdbClientState}function WLr(t){let e=Date.now(),r=Math.max(0,e-t.lastRefillAt)/1e3;r<=0||(t.tokens=Math.min(cgt,t.tokens+r*ogt),t.lastRefillAt=e)}async function $Lr(t){let e=MLr(t);for(;;){if(WLr(e),e.tokens>=1){e.tokens-=1;return}let r=Math.max(0,1-e.tokens),n=Math.max(50,Math.ceil(r/ogt*1e3));await ugt(n)}}function ULr(t){let e=Number(t?.response?.status||0);return!e||e===429||e>=500}function FLr(t,e=0){let r=Number(t?.response?.headers?.["retry-after"]||0);return Number.isFinite(r)&&r>0?r*1e3:Math.min(4e3,500*(e+1))}function Vy(t){return!!LR(t)}function MR(t,e=""){let r=String(e||"").trim();return r?/^https?:\/\//i.test(r)?r:`${LR(t)?.imageBase||"https://image.tmdb.org/t/p/original"}${r.startsWith("/")?"":"/"}${r}`:""}async function WR(t,e,r={},n={}){let s=LR(t);if(!s)return null;let i={...r||{}};i.language||(i.language=s.language);let a=Math.max(0,Number(n.maxRetries??LLr)||0);for(let o=0;o<=a;o+=1){await $Lr(t);try{return(await he.get(`${BLr}${e}`,{params:{api_key:s.apiKey,...i},timeout:Number(n.timeoutMs||s.timeoutMs||agt),headers:{Accept:"application/json"}})).data||null}catch(c){if(o>=a||!ULr(c))return null;await ugt(FLr(c,o))}}return null}async function dgt(t,e,r=null){return WR(t,"/search/tv",{query:e,...r?{first_air_date_year:r}:{}})}async function fgt(t,e,r=null){return WR(t,"/search/movie",{query:e,...r?{primary_release_year:r}:{}})}async function pgt(t,e){let r=LR(t);return WR(t,`/tv/${Number(e)}`,{append_to_response:"external_ids,content_ratings,images,credits",include_image_language:lgt(r?.language||"zh-CN")})}async function mgt(t,e){let r=LR(t);return WR(t,`/movie/${Number(e)}`,{append_to_response:"external_ids,release_dates,images,credits",include_image_language:lgt(r?.language||"zh-CN")})}async function hgt(t,e,r){return WR(t,`/tv/${Number(e)}/season/${Number(r)}`)}function Mn(t=""){return String(t||"").trim()}function ggt(t=[]){let e=[],r=new Set;for(let n of t){let s=Mn(n);!s||r.has(s)||(r.add(s),e.push(s))}return e}function qLr(t=""){let e=Mn(t);if(!e)return null;let r=e.replace(/[·•::\-_.!!??,,'"/\\()[\]{}【】《》\s]+$/g,"");if(!r)return null;let n=r.match(/([1-9]\d{0,2})$/);if(!n?.[1])return null;let s=Number.parseInt(n[1],10);return!Number.isInteger(s)||s<=0||s>50?null:s}function Agt({explicitSources:t=[],suffixSources:e=[]}={}){for(let r of ggt(t)){let n=Number.parseInt(Tde(r),10);if(Number.isInteger(n)&&n>0)return{seasonNumber:n,explicit:!0,strategy:"pattern"}}for(let r of ggt(e)){let n=qLr(r);if(Number.isInteger(n)&&n>0)return{seasonNumber:n,explicit:!0,strategy:"title_suffix"}}return{seasonNumber:null,explicit:!1,strategy:"none"}}function jLr(t="",e={},r="tv"){let n=String(t||"");if(r!=="tv"||!n||String(e?.seasonHintStrategy||"")!=="title_suffix")return"";let s=Number.parseInt(String(e?.seasonNumber||""),10);if(!Number.isInteger(s)||s<=0)return"";let i=String(s);if(!n.endsWith(i))return"";let a=n.slice(0,Math.max(0,n.length-i.length));return a.length>=2?a:""}function ygt(t="",e=""){return!t||!e?0:t===e?1:t.includes(e)||e.includes(t)?Math.min(.95,Math.min(t.length,e.length)/Math.max(t.length,e.length)+.15):kz(t,e).length/Math.max(t.length,e.length)}function Yy(t=""){let e=Mn(t).match(/\b(19|20)\d{2}\b/);return e?.[0]?Number(e[0]):null}function Kfe(t=""){let e=Mn(t);return Mn($y(e)||e).toLowerCase().replace(/[·•::\-_.!!??,,'"/\\()[\]{}【】《》\s]+/g,"").replace(/第[一二三四五六七八九十百千万亿\d]+å­£/g,"").replace(/年番总集篇|年番合集篇|总集篇|合集篇|年番/g,"")}function xgt(t={}){let e=Mn(t?.tmdbHintTitle||t?.vod_name||t?.name||""),r=Mn($y(e)||e),n=Mn(t?.tmdbHintRemarks||t?.vod_remarks||""),s=Agt({explicitSources:[Mn(t?.tmdbHintTitle),Mn(t?.tmdbHintRemarks),e,n,Mn(t?.vod_name),Mn(t?.vod_remarks)],suffixSources:[e,r,Mn(t?.tmdbHintTitle),Mn(t?.vod_name),Mn(t?.name)]});return{rawTitle:e,cleanedTitle:r,normalizedTitle:Kfe(r||e),altTitle:n,year:Yy(t?.tmdbHintYear||t?.vod_year),seasonNumber:s.seasonNumber,seasonHintStrategy:s.strategy}}function Vfe(t={},e=null){let r=Agt({explicitSources:[Mn(t?.tmdbHintTitle),Mn(t?.tmdbHintRemarks),Mn(t?.vod_name),Mn(t?.vod_remarks),Mn(e?.flag)],suffixSources:[Mn(t?.tmdbHintTitle),Mn(t?.vod_name),Mn(t?.name)]});return Number.isInteger(r.seasonNumber)&&r.seasonNumber>0?{seasonNumber:r.seasonNumber,explicit:r.explicit,strategy:r.strategy}:{seasonNumber:1,explicit:!1,strategy:"default"}}function bgt(t={},e="tv"){return Mn(e==="movie"?t?.title||t?.original_title||t?.name||t?.original_name||"":t?.name||t?.original_name||t?.title||t?.original_title||"")}function QLr(t={},e="tv"){return Yy(e==="movie"?t?.release_date:t?.first_air_date)}function HLr(t,e,r){let n=Kfe(t?.cleanedTitle||t?.rawTitle||""),s=jLr(n,t,r),i=Kfe(bgt(e,r)),a=ygt(n,i),o=ygt(s,i);return Math.max(a,o)}function GLr(t,e,r){let n=r==="tv"&&String(t?.seasonHintStrategy||"")==="title_suffix"&&Number.parseInt(String(t?.seasonNumber||""),10)>1;if(!t?.year)return .5;let s=QLr(e,r);if(!s)return n?.5:.2;let i=Math.abs(t.year-s);return n&&i>=2?.5:i===0?1:i===1?.7:i===2?.4:0}function zLr(t,e,r){if(r!=="tv"||!t?.seasonNumber)return .5;let n=Number.parseInt(Tde(bgt(e,r)),10)||null;return n?n===t.seasonNumber?1:.2:.5}function KLr(t,e,r="tv"){let n=HLr(t,e,r),s=GLr(t,e,r),i=zLr(t,e,r),a=Math.min(Number(e?.popularity||0)/100,1),o=Math.min(Number(e?.vote_average||0)/10,1),c=Math.max(a,o),u=Number((n*.7+s*.2+i*.05+c*.05).toFixed(4));return{title:Number(n.toFixed(4)),year:Number(s.toFixed(4)),season:Number(i.toFixed(4)),heat:Number(c.toFixed(4)),score:u}}function _gt(t,e=[],r="tv"){let n=(Array.isArray(e)?e:[]).map(i=>{let a=KLr(t,i,r);return{candidate:i,score:a.score,breakdown:a}}).sort((i,a)=>a.score-i.score),s=n[0]||null;return!s||s.score<.5?{status:"NO_MATCH",best:null,candidates:n.slice(0,3)}:s.score<.8?{status:"CANDIDATE",best:s,candidates:n.slice(0,3)}:{status:"MATCH",best:s,candidates:n.slice(0,3)}}function VM(t={},e=null,r=0){return Vfe(t,e).seasonNumber}var Xy={BINDING:30*24*60*60*1e3,DETAIL:7*24*60*60*1e3,SEASON:7*24*60*60*1e3,NO_MATCH:24*60*60*1e3,FAILURE:10*60*1e3};function Jfe(t){let e=t.embyContext;return e.tmdbStore||(e.tmdbStore={memory:TM({max:1200}),pending:new Map}),e.tmdbStore}function Yfe(t=""){return`/embyTmdb/${Buffer.from(String(t||""),"utf8").toString("base64url")}`}function VLr(t,e=0){return{value:t,expireAt:e>0?Date.now()+e:0}}function YLr(t=null){return!!(t&&t.expireAt>0&&t.expireAt<=Date.now())}async function JLr(t,e){try{let r=await t.db?.getObjectDefault(Yfe(e),null);return!r||typeof r!="object"?null:YLr(r)?(t.db?.delete&&await t.db.delete(Yfe(e)).catch(()=>{}),null):r}catch{return null}}async function Jy(t,e,r={}){let n=Jfe(t),s=n.memory.get(e);if(s!==void 0)return s;if(r.persist===!1)return null;let i=await JLr(t,e);if(!i)return null;let a=i.expireAt>0?Math.max(1e3,i.expireAt-Date.now()):0;return n.memory.set(e,i.value,a),i.value}async function G_(t,e,r,n=0,s={}){if(Jfe(t).memory.set(e,r,n),s.persist===!1)return r;try{t.db?.push&&await t.db.push(Yfe(e),VLr(r,n))}catch{}return r}async function Xfe(t,e,r,n,s={}){let i=await Jy(t,e,s);if(i!==null)return i;let a=Jfe(t);if(a.pending.has(e))return a.pending.get(e);let o=(async()=>{try{let c=await Jy(t,e,s);if(c!==null)return c;let u=await n();return u!=null?G_(t,e,u,r,s):null}finally{a.pending.delete(e)}})();return a.pending.set(e,o),o}function Gu(t=""){return String(t||"").trim()}function XLr(t=""){let e=Yy(t);return e?String(e):""}function Zy(t={},e={}){let r=t&&typeof t=="object"?t:{},n=Gu(e?.n),s=Gu(e?.r),i=XLr(e?.y||e?.vod_year),a=Gu(e?.u);return n&&(r.tmdbHintTitle=n),s&&(r.tmdbHintRemarks=s),i&&(r.tmdbHintYear=i),!Gu(r.vod_name)&&n&&(r.vod_name=n),!Gu(r.vod_remarks)&&s&&(r.vod_remarks=s),!Gu(r.vod_year)&&i&&(r.vod_year=i),!Gu(r.vod_pic)&&a&&(r.vod_pic=a),r}function ZLr(t={}){let e=Gu(t?.v);return e?Zy({vod_id:e,vod_name:"",vod_pic:"",vod_remarks:"",vod_year:""},t):null}function Kn(t={}){let e={};return Object.entries(t).forEach(([r,n])=>{n!=null&&(typeof n=="string"&&!n.trim()||Array.isArray(n)&&n.length===0||!Array.isArray(n)&&typeof n=="object"&&Object.keys(n).length===0||(e[r]=n))}),e}function epe(t){let e=Number(t);return Number.isFinite(e)&&e>0?Number(e.toFixed(1)):void 0}function tpe(t=""){let e=String(t||"").trim();return/^\d{4}-\d{2}-\d{2}$/.test(e)?`${e}T00:00:00.000Z`:void 0}function e5r(t){let e=Number(t);return Number.isFinite(e)&&e>0?Math.round(e*60*1e7):void 0}function t5r(t=[]){return(Array.isArray(t)?t:[]).map(e=>String(e?.name||"").trim()).filter(Boolean)}function r5r(t=[]){return(Array.isArray(t)?t:[]).filter(e=>e?.name).map(e=>({Name:String(e.name),Id:String(e.id||e.name)}))}function n5r(t={},e="tv"){return e==="movie"?{name:String(t?.title||t?.original_title||"").trim(),originalTitle:String(t?.original_title||t?.title||"").trim()}:{name:String(t?.name||t?.original_name||"").trim(),originalTitle:String(t?.original_name||t?.name||"").trim()}}function s5r(t=""){return String(t||"").trim().toLowerCase()}function i5r(t={}){let e=Array.isArray(t?.images?.logos)?t.images.logos:[];if(!e.length)return[];let r=e.map((n,s)=>{let i=s5r(n?.iso_639_1),a=String(n?.file_path||"").trim(),o=Number(n?.vote_average||0),c=Number(n?.vote_count||0),u=Number(n?.width||0),l=i?i==="en"?2:3:1;return{index:s,filePath:a,voteAverage:Number.isFinite(o)?o:0,voteCount:Number.isFinite(c)?c:0,width:Number.isFinite(u)?u:0,languageScore:l}}).filter(n=>n.filePath);return r.sort((n,s)=>s.languageScore-n.languageScore||s.voteAverage-n.voteAverage||s.voteCount-n.voteCount||s.width-n.width||n.index-s.index),r}function YM(t={}){let e=i5r(t);return e.length&&e[0]?.filePath||""}function a5r(t="",e="",r=0){let n=Kn({n:String(t||"").trim(),u:String(e||"").trim()||void 0,pid:Number(r||0)>0?String(r):void 0});return wn("img",n)}function o5r(t,e={},r={}){let n=String(e?.name||e?.original_name||"").trim();if(!n)return null;let s=MR(t,e?.profile_path||""),i=Number(e?.id||0),a=a5r(n,s,i),o=String(r.role||"").trim(),c=String(r.type||"Actor").trim();return Kn({Name:n,Id:a,Role:o||void 0,Type:c||void 0,PrimaryImageTag:s?a:void 0,ImageTags:s?{Primary:a}:void 0})}function c5r(t={},e){let r=Array.isArray(t?.credits?.cast)?t.credits.cast:[],n=[],s=new Set,i=(o,c="")=>{if(!o)return;let u=String(c||`${o.Name}:${o.Role||""}`);s.has(u)||(s.add(u),n.push(o))};return[...r].map((o,c)=>({person:o,index:c,order:Number(o?.order??c),popularity:Number(o?.popularity||0)})).sort((o,c)=>o.order-c.order||c.popularity-o.popularity||o.index-c.index).slice(0,24).forEach(o=>{let c=Number(o.person?.id||0),u=String(o.person?.character||"").trim()||"\u6F14\u5458";i(o5r(e,o.person,{role:u,type:"Actor"}),c>0?`cast:${c}`:`cast:${o.person?.name||""}:${u}`)}),n.slice(0,24)}function u5r(t={}){let e={};return t?.id&&(e.Tmdb=String(t.id)),t?.external_ids?.imdb_id&&(e.Imdb=String(t.external_ids.imdb_id)),t?.external_ids?.tvdb_id&&(e.Tvdb=String(t.external_ids.tvdb_id)),Object.keys(e).length>0?e:void 0}function Egt(t=[]){let e=(Array.isArray(t)?t:[]).map(r=>({country:String(r?.iso_3166_1||"").trim().toUpperCase(),certification:String(r?.certification||r?.rating||"").trim()})).filter(r=>r.certification);for(let r of["US","CN","GB","HK","TW"]){let n=e.find(s=>s.country===r);if(n)return n.certification}return e[0]?.certification||void 0}function l5r(t={},e="tv"){if(e==="movie"){let r=[];return(Array.isArray(t?.release_dates?.results)?t.release_dates.results:[]).forEach(s=>{(Array.isArray(s?.release_dates)?s.release_dates:[]).forEach(a=>{r.push({iso_3166_1:s?.iso_3166_1,certification:a?.certification})})}),Egt(r)}return Egt(Array.isArray(t?.content_ratings?.results)?t.content_ratings.results:[])}function d5r(t,e){return`binding:${String(t?.spiderKey||"")}:${Number(t?.spiderType||3)}:${String(t?.apiBase||"")}:${String(e?.vod_id||"")}`}function f5r(t,e,r){return`detail:${String(t||"")}:${Number(e||0)}:${String(r||"zh-CN")}`}function p5r(t,e,r){return`season:${Number(t||0)}:${Number(e||0)}:${String(r||"zh-CN")}`}function m5r(t){return`no-match:v2:${String(t?.normalizedTitle||"")}:${String(t?.year||"")}:${String(t?.seasonNumber||"")}:${String(t?.seasonHintStrategy||"")}`}function Sgt(t){return`failure:${t}`}function _p(t,e,r={}){if(t.embyContext?.config?.requestLog)try{console.log(`[Emby Transform] ${e}:`,JSON.stringify(r))}catch{}}function Igt(t={},e="tv"){return e==="movie"?String(t?.title||t?.original_title||t?.name||t?.original_name||"").trim():String(t?.name||t?.original_name||t?.title||t?.original_title||"").trim()}function Cgt(t={},e="tv"){return String(e==="movie"?t?.release_date||"":t?.first_air_date||"").trim()}function Zfe(t={}){let e=typeof t?.year=="number"&&Number.isFinite(t.year)?t.year:void 0,r=typeof t?.seasonNumber=="number"&&Number.isFinite(t.seasonNumber)?t.seasonNumber:void 0,n=String(t?.seasonHintStrategy||"").trim()||void 0;return Kn({rawTitle:String(t?.rawTitle||""),cleanedTitle:String(t?.cleanedTitle||""),normalizedTitle:String(t?.normalizedTitle||""),altTitle:String(t?.altTitle||""),year:e,seasonNumber:r,seasonHintStrategy:n})}function h5r(t=[],e="tv",r=3){return(Array.isArray(t)?t:[]).slice(0,Math.max(0,Number(r)||0)).map(n=>{let s=n?.candidate||{},i=n?.breakdown||{};return Kn({id:Number(s?.id||0)||void 0,title:Igt(s,e),date:Cgt(s,e),popularity:Number.isFinite(Number(s?.popularity))?Number(s.popularity):void 0,voteAverage:Number.isFinite(Number(s?.vote_average))?Number(s.vote_average):void 0,score:Number.isFinite(Number(n?.score))?Number(n.score):void 0,breakdown:Kn({title:Number.isFinite(Number(i?.title))?Number(i.title):void 0,year:Number.isFinite(Number(i?.year))?Number(i.year):void 0,season:Number.isFinite(Number(i?.season))?Number(i.season):void 0,heat:Number.isFinite(Number(i?.heat))?Number(i.heat):void 0})})})}function vgt(t=null){if(!t?.candidate)return null;let e=t.candidate;return Kn({mediaType:String(t.mediaType||""),status:String(t.status||""),score:Number.isFinite(Number(t.score))?Number(t.score):void 0,candidate:Kn({id:Number(e?.id||0)||void 0,title:Igt(e,t.mediaType||"tv"),date:Cgt(e,t.mediaType||"tv")}),breakdown:Kn({title:Number.isFinite(Number(t?.breakdown?.title))?Number(t.breakdown.title):void 0,year:Number.isFinite(Number(t?.breakdown?.year))?Number(t.breakdown.year):void 0,season:Number.isFinite(Number(t?.breakdown?.season))?Number(t.breakdown.season):void 0,heat:Number.isFinite(Number(t?.breakdown?.heat))?Number(t.breakdown.heat):void 0})})}function g5r(t={},e={}){let r=String(e.preferredMediaType||"").trim().toLowerCase();return r==="tv"?e.allowFallback===!1?["tv"]:["tv","movie"]:r==="movie"?e.allowFallback===!1?["movie"]:["movie","tv"]:H_(t)==="Series"?e.allowFallback===!0?["tv","movie"]:["tv"]:["movie","tv"]}async function y5r(t,e,r){let n=[...new Set([e?.cleanedTitle,e?.rawTitle].map(c=>String(c||"").trim()).filter(Boolean))],s=new Map,i=[],o=r==="tv"&&Number.parseInt(String(e?.seasonNumber||""),10)>1&&String(e?.seasonHintStrategy||"")==="title_suffix"?null:e?.year;for(let c of n){let u=r==="movie"?await fgt(t,c,e?.year):await dgt(t,c,o),l=Array.isArray(u?.results)?u.results:[],d=0;if(l.forEach(f=>{let p=Number(f?.id||0);p>0&&!s.has(p)&&(s.set(p,f),d+=1)}),i.push(Kn({query:c,resultCount:l.length,acceptedCount:d,collectedCount:s.size})),s.size>=5)break}return{results:Array.from(s.values()),queryLogs:i}}async function z_(t,e,r,n={}){if(!Vy(t)||!e?.spiderKey||!r?.vod_id)return null;let s={spiderKey:String(e?.spiderKey||""),spiderType:Number(e?.spiderType||3),vodId:String(r?.vod_id||"")},i=d5r(e,r),a=String(n.preferredMediaType||"").trim().toLowerCase(),o=await Jy(t,i);if(o?.tmdbId&&o?.mediaType)return a&&n.allowFallback===!1&&o.mediaType!==a?(_p(t,"tmdb.match.binding.cache.reject",Kn({...s,cachedMediaType:String(o.mediaType||""),preferredMediaType:a})),null):(_p(t,"tmdb.match.binding.cache.hit",Kn({...s,mediaType:String(o.mediaType||""),tmdbId:Number(o.tmdbId||0)||void 0,score:Number.isFinite(Number(o.score))?Number(o.score):void 0})),o);let c=xgt(r),u=typeof n.allowFallback=="boolean"?n.allowFallback:void 0;if(_p(t,"tmdb.match.input",Kn({...s,input:Zfe(c),preferredMediaType:a||void 0,allowFallback:u})),!c?.normalizedTitle)return _p(t,"tmdb.match.skip.invalid_input",Kn({...s,input:Zfe(c)})),null;let l=m5r(c),d=await Jy(t,l);if(d)return _p(t,"tmdb.match.skip.no_match_cache",Kn({...s,status:String(d?.status||""),score:Number.isFinite(Number(d?.score))?Number(d.score):void 0})),null;let f=null;for(let m of g5r(r,n)){let{results:h,queryLogs:y}=await y5r(t,c,m),g=_gt(c,h,m);if(_p(t,"tmdb.match.round",Kn({...s,mediaType:m,queryLogs:y,resultCount:h.length,status:g.status,bestScore:Number.isFinite(Number(g?.best?.score))?Number(g.best.score):void 0,topCandidates:h5r(g.candidates,m,3)})),g.best&&(!f||g.best.score>f.score)&&(f={mediaType:m,...g.best,status:g.status}),g.status==="MATCH"&&g.best?.candidate?.id){let b=g.best.candidate,x=Kn({mediaType:m,tmdbId:Number(b.id),score:g.best.score,matchedTitle:String(m==="movie"?b.title||b.original_title||"":b.name||b.original_name||""),matchedYear:m==="movie"?Yy(b.release_date):Yy(b.first_air_date),updatedAt:Date.now()});return await G_(t,i,x,Xy.BINDING),_p(t,"tmdb.match.binding.set",Kn({...s,mediaType:m,tmdbId:Number(x.tmdbId||0)||void 0,score:Number.isFinite(Number(x.score))?Number(x.score):void 0,matchedTitle:String(x.matchedTitle||""),matchedYear:Number.isFinite(Number(x.matchedYear))?Number(x.matchedYear):void 0,best:vgt({mediaType:m,...g.best,status:g.status})})),x}}let p={status:f?.score>=.5?"CANDIDATE":"NO_MATCH",score:Number(f?.score||0),checkedAt:Date.now()};return await G_(t,l,p,f?.score>=.5?15*60*1e3:Xy.NO_MATCH),_p(t,"tmdb.match.no_match_set",Kn({...s,noMatch:p,best:vgt(f),input:Zfe(c)})),null}async function Tgt(t,e={},r={}){try{if(!Vy(t))return null;let n=xd(e),s=ZLr(e);return!n?.spiderKey||!s?.vod_id?null:Dgt(t,{spiderRef:n,vod:s,options:r})}catch{return null}}async function K_(t,e){if(!e?.tmdbId||!e?.mediaType)return null;let r=String(t.embyContext?.config?.tmdbLanguage||"zh-CN"),n=f5r(e.mediaType,e.tmdbId,r),s=Sgt(n);if(await Jy(t,s))return null;let i=await Xfe(t,n,Xy.DETAIL,async()=>{let a=e.mediaType==="movie"?await mgt(t,e.tmdbId):await pgt(t,e.tmdbId);return a?.id?a:null});return i?.id?i:(await G_(t,s,{failedAt:Date.now()},Xy.FAILURE),null)}async function A5r(t,e,r){if(!e?.tmdbId||e?.mediaType!=="tv")return null;let n=String(t.embyContext?.config?.tmdbLanguage||"zh-CN"),s=p5r(e.tmdbId,r,n),i=Sgt(s);if(await Jy(t,i))return null;let a=await Xfe(t,s,Xy.SEASON,async()=>{let o=await hgt(t,e.tmdbId,r);return o?.season_number!=null?o:null});return a?.season_number!=null?a:(await G_(t,i,{failedAt:Date.now()},Xy.FAILURE),null)}function x5r(t={},e=null){let r=[Gu(t?.tmdbHintTitle||t?.vod_name),Gu(t?.tmdbHintRemarks||t?.vod_remarks),Gu(e?.flag)].filter(Boolean).join(" ");return/年番/i.test(r)}function b5r(t=""){let e=String(t||"").trim();if(!e)return null;let r=Number.parseInt(e,10);if(Number.isInteger(r)&&r>0)return r;let n=e.match(/(\d{1,4})/);if(!n?.[1])return null;let s=Number.parseInt(n[1],10);return Number.isInteger(s)&&s>0?s:null}function _5r(t=null){let r=(Array.isArray(t?.episodes)?t.episodes:[]).map(n=>b5r(n?.name)).filter(n=>Number.isInteger(n)&&n>0);return r.length?{count:r.length,min:Math.min(...r),max:Math.max(...r)}:{count:0,min:0,max:0}}function wgt(t={}){return(Array.isArray(t?.seasons)?t.seasons:[]).map(e=>({seasonNumber:Number(e?.season_number||0),episodeCount:Number(e?.episode_count||0),name:String(e?.name||"").trim()})).filter(e=>Number.isInteger(e.seasonNumber)&&e.seasonNumber>0)}function E5r(t={},e={},r=null,n={seasonNumber:1,explicit:!1}){let s=wgt(t),i=Number(n?.seasonNumber||1),a=Number.isInteger(i)&&i>0?i:1,o=!!n?.explicit,c=x5r(e,r),u=_5r(r),l=d=>{let f=Number(d||0);return!Number.isInteger(f)||f<=0?[]:s.filter(p=>p.episodeCount>=f).sort((p,m)=>m.seasonNumber-p.seasonNumber||m.episodeCount-p.episodeCount)};if(!s.length)return{seasonNumber:a,reason:"no_tmdb_seasons",explicit:o,yearFan:c,episodeStats:u,seasons:[]};if(o&&s.some(d=>d.seasonNumber===a))return{seasonNumber:a,reason:"explicit_hint",explicit:o,yearFan:c,episodeStats:u,seasons:s};if(c){let d=l(u.max);return d.length?{seasonNumber:d[0].seasonNumber,reason:"yearfan_episode_cap",explicit:o,yearFan:c,episodeStats:u,seasons:s}:{seasonNumber:[...s].sort((p,m)=>m.episodeCount-p.episodeCount||m.seasonNumber-p.seasonNumber)[0].seasonNumber,reason:"yearfan_largest_season",explicit:o,yearFan:c,episodeStats:u,seasons:s}}if(u.max>=6&&u.count>=u.max){let d=s.filter(f=>f.episodeCount===u.max);if(d.length===1)return{seasonNumber:d[0].seasonNumber,reason:"episode_count_exact_unique",explicit:o,yearFan:c,episodeStats:u,seasons:s}}if(!o&&u.max>=100){let d=l(u.max);if(d.length)return{seasonNumber:d[0].seasonNumber,reason:"high_episode_secondary",explicit:o,yearFan:c,episodeStats:u,seasons:s}}return s.some(d=>d.seasonNumber===a)?{seasonNumber:a,reason:o?"explicit_hint":"default_hint",explicit:o,yearFan:c,episodeStats:u,seasons:s}:{seasonNumber:[...s].sort((f,p)=>f.seasonNumber-p.seasonNumber)[0].seasonNumber,reason:"fallback_first_available",explicit:o,yearFan:c,episodeStats:u,seasons:s}}async function $R(t,e,r={},n=null,s=0,i=null){if(e?.mediaType!=="tv")return{seasonNumber:null,seasonDetail:null,detail:null};let a=i||await K_(t,e);if(!a)return{seasonNumber:null,seasonDetail:null,detail:null};let o=Vfe(r,n),c=E5r(a,r,n,o),u=Number(c?.seasonNumber||0);if(!Number.isInteger(u)||u<=0)return{seasonNumber:null,seasonDetail:null,detail:a};let l=await A5r(t,e,u);return _p(t,"tmdb.match.season_resolve",Kn({spiderKey:String(e?.spiderKey||""),tmdbId:Number(e?.tmdbId||0)||void 0,lineIndex:Number.isInteger(Number(s))?Number(s):void 0,chosenSeason:u,reason:String(c?.reason||""),explicitHint:c?.explicit===!0?!0:void 0,yearFanHint:c?.yearFan===!0?!0:void 0,episodeMax:Number(c?.episodeStats?.max||0)||void 0,seasonCandidates:Array.isArray(c?.seasons)?c.seasons.map(d=>Kn({seasonNumber:Number(d?.seasonNumber||0)||void 0,episodeCount:Number(d?.episodeCount||0)||void 0,name:String(d?.name||"")})):void 0})),{seasonNumber:u,seasonDetail:l&&l?.season_number!=null?l:null,detail:a}}async function Rgt(t,e,r={},n=null){let s=await $R(t,e,r,null,0,n);return{seasonNumber:s.seasonNumber,seasonDetail:s.seasonDetail}}function v5r(t,e,r,n=null){let s=e?.mediaType==="movie"?"movie":"tv",i=s==="tv"?wgt(t).length:0,a=Number(n?.seasonNumber||0),o=n?.seasonDetail||null,c=s==="tv"&&Number.isInteger(a)&&a>0&&o?.season_number!=null,u=s==="movie"?t?.release_date:o?.air_date||t?.first_air_date,l=s==="movie"?Number(t?.runtime||0):Array.isArray(t?.episode_run_time)?t.episode_run_time.find(m=>Number(m)>0):0,d=n5r(t,s),f=YM(t),p=c?o?.poster_path||t?.backdrop_path||t?.poster_path||"":t?.backdrop_path||t?.poster_path||"";return Kn({Name:d.name||void 0,OriginalTitle:d.originalTitle||void 0,Overview:String(t?.overview||"").trim()||void 0,Taglines:t?.tagline?[String(t.tagline)]:void 0,Genres:t5r(t?.genres),GenreItems:r5r(t?.genres),People:c5r(t,r),ProviderIds:u5r(t),CommunityRating:epe(t?.vote_average),RunTimeTicks:e5r(l),OfficialRating:l5r(t,s),PremiereDate:tpe(u),ProductionYear:Yy(u)||void 0,SeasonCount:i>0?i:void 0,ChildCount:i>0?i:void 0,BackdropImageTags:p?["tmdb"]:void 0,ImageTags:f?{Logo:"tmdb"}:void 0})}function S5r(t,e){return Kn({Overview:String(t?.overview||"").trim()||void 0,PremiereDate:tpe(t?.air_date),CommunityRating:epe(t?.vote_average)})}function I5r(t,e,r,n){return Kn({Name:String(e?.name||"").trim()||void 0,Overview:String(e?.overview||"").trim()||void 0,CommunityRating:epe(e?.vote_average),PremiereDate:tpe(e?.air_date),BackdropImageTags:e?.still_path?["tmdb"]:void 0})}function Ngt(t,e,r=-1){let n=Array.isArray(t?.episodes)?t.episodes:[],s=n.find(i=>Number(i?.episode_number||0)===Number(e||0));return s||(r>=0&&r0){let a=Math.floor(i/100),o=i%100;if(a===r&&o>0)return o}return n}async function kgt(t,e={}){if(!Vy(t))return null;let r=await z_(t,e?.spiderRef,e?.vod,{preferredMediaType:"tv",allowFallback:!1});if(!r||r.mediaType!=="tv")return null;let n=await $R(t,r,e?.vod||{},e?.line||null,Number(e?.lineIndex||0),null);return!n?.seasonDetail||!n?.seasonNumber?null:{seasonNumber:n.seasonNumber,seasonDetail:n.seasonDetail}}function Pgt(t,e={}){if(!t?.seasonDetail||!t?.seasonNumber)return null;let r=Ogt(e?.episode?.name,e?.episodeIndex,t.seasonNumber),n=Ngt(t.seasonDetail,r,Number(e?.episodeIndex||0));return n?I5r(t.seasonDetail,n,t.seasonNumber,r):null}async function C5r(t,e){let r=e?.payload||{},n=xd(r),s=String(r.v||"");if(!n?.spiderKey||!s)return null;let i=await qc(t,n,s).catch(()=>null),a=Zy({vod_id:s,vod_name:String(r.n||""),vod_pic:String(r.u||""),vod_remarks:String(r.r||""),vod_year:String(r.y||"")},r),o=jc(i)||a;return Zy(o,r),!String(o?.vod_name||"").trim()&&r?.n&&(o.vod_name=String(r.n||"").trim()),!String(o?.vod_pic||"").trim()&&r?.u&&(o.vod_pic=String(r.u||"").trim()),{spiderRef:n,vod:o,lines:Io(o?.vod_play_from,o?.vod_play_url)}}function T5r(t,e="primary",r=null){let n=String(e||"primary").trim().toLowerCase(),s=r?.seasonDetail||null,i=String(s?.poster_path||"").trim();return n==="logo"?YM(t):["backdrop","thumb","banner"].includes(n)?i||t?.backdrop_path||t?.poster_path||"":i||t?.poster_path||t?.backdrop_path||""}function w5r(t,e,r="primary"){let n=String(r||"primary").trim().toLowerCase();return n==="logo"?YM(t):["backdrop","thumb","banner"].includes(n)?t?.backdrop_path||e?.poster_path||t?.poster_path||"":e?.poster_path||t?.poster_path||t?.backdrop_path||""}function R5r(t,e,r="primary"){let n=String(r||"primary").trim().toLowerCase();return n==="logo"?YM(t):["backdrop","thumb","banner"].includes(n)?e?.still_path||t?.backdrop_path||t?.poster_path||"":e?.still_path||t?.poster_path||t?.backdrop_path||""}async function Dgt(t,e={}){try{if(!Vy(t))return null;let r=await z_(t,e?.spiderRef,e?.vod,e?.options||{});if(!r)return null;let n=await K_(t,r);if(!n)return null;let s=await Rgt(t,r,e?.vod||{},n);return v5r(n,r,t,s)}catch{return null}}async function N5r(t,e={}){try{if(!Vy(t))return null;let r=await z_(t,e?.spiderRef,e?.vod,{preferredMediaType:"tv",allowFallback:!1});if(!r||r.mediaType!=="tv")return null;let n=await K_(t,r);if(!n)return null;let s=await $R(t,r,e?.vod||{},e?.line||null,Number(e?.lineIndex||0),n);return s?.seasonDetail?S5r(s.seasonDetail,s.seasonNumber):null}catch{return null}}async function UR(t,e={}){try{let r=await kgt(t,e);return r?Pgt(r,e):null}catch{return null}}async function JM(t,e={}){let r=Array.isArray(e?.episodes)?e.episodes:[];if(!r.length)return[];try{let n=await kgt(t,e);if(!n)return r.map(()=>null);let s=Number(e?.episodeOffset||0);return r.map((i,a)=>Pgt(n,{episode:i,episodeIndex:s+a}))}catch{return r.map(()=>null)}}async function XM(t,e,r={}){return e==="vod"?Dgt(t,r):e==="season"?N5r(t,r):e==="episode"?UR(t,r):null}async function Bgt(t,e,r="Primary"){try{if(!Vy(t))return"";if(e?.type==="img")return String(e?.payload?.u||"");let n=await C5r(t,e);if(!n)return"";let{spiderRef:s,vod:i,lines:a}=n,o=String(r||"Primary").trim().toLowerCase();if(e?.type==="vod"){let c=await z_(t,s,i,{});if(!c)return"";let u=await K_(t,c);if(!u)return"";let l=await Rgt(t,c,i,u);return MR(t,T5r(u,o,l||null))}if(e?.type==="sea"){let c=await z_(t,s,i,{preferredMediaType:"tv",allowFallback:!1});if(!c||c.mediaType!=="tv")return"";let u=await K_(t,c);if(!u)return"";let l=Number(e?.payload?.l||0),f=(await $R(t,c,i,a?.[l]||null,l,u))?.seasonDetail||null;return u&&f?MR(t,w5r(u,f,o)):""}if(e?.type==="ep"||e?.type==="media"){let c=await z_(t,s,i,{preferredMediaType:"tv",allowFallback:!1});if(!c||c.mediaType!=="tv")return"";let u=await K_(t,c);if(!u)return"";let l=Number(e?.payload?.l||0),d=Number(e?.payload?.e||0),f=a?.[l],p=f?.episodes?.[d],m=await $R(t,c,i,f||null,l,u),h=Number(m?.seasonNumber||0),y=m?.seasonDetail||null;if(!y)return"";let g=Ogt(p?.name,d,h),b=Ngt(y,g,d);return b?MR(t,R5r(u,b,o)):""}return""}catch{return""}}var Ugt=!0,O5r=new Set(["tgchannel","tgsou","pansou","panta"]),k5r=!1,P5r=8e3;function D5r(t){return O5r.has(String(t||""))}function B5r(t=""){return/(移动|yidong|139)/i.test(String(t||""))}function L5r(t=""){try{let e=String(new URL(String(t||"")).hostname||"").toLowerCase();return e.includes("mcloud.139.com")||e.includes("yun.139.com")}catch{return!1}}function Lgt(t="",e="mkv"){let r=String(t||"").trim();if(!r)return e;if(/\.m3u8($|\?)/i.test(r))return"m3u8";try{let s=new URL(r).pathname.match(/\.([a-z0-9]{2,6})$/i);if(s?.[1])return s[1].toLowerCase()}catch{}return e}function ZM(t,e){let r=wn("lib",{k:t.spiderKey,t:t.spiderType,...t.siteName?{n:t.siteName}:{},...t.apiBase?{a:t.apiBase}:{}});return{Name:t.siteName,Id:r,ServerId:e,IsFolder:!0,Type:"CollectionFolder",PrimaryImageAspectRatio:1.7778,ImageTags:{Primary:r},BackdropImageTags:[],UserData:as()}}function M5r(t,e,r,n){let s=String(e.type_name||e.type_id||""),i=wn("cat",{k:t.spiderKey,t:t.spiderType,c:String(e.type_id),...s?{n:s}:{},...t.apiBase?{a:t.apiBase}:{}});return{Name:s,Id:i,ParentId:r,ServerId:n,IsFolder:!0,Type:"Folder",PrimaryImageAspectRatio:1.7778,ImageTags:{Primary:i},BackdropImageTags:[],UserData:as()}}var Fgt=new Set(["movie","series","video","episode","musicvideo"]);function Mgt(t=""){return String(t||"").split(",").map(e=>e.trim().toLowerCase()).filter(Boolean)}function W5r(t=[],e=!1){return e?!0:t.some(r=>Fgt.has(r))}function $5r(t=[]){return t.some(e=>Fgt.has(e))}function U5r(t=[],e=!1,r=""){return e?!1:t.includes("folder")?!0:/(^|,)isfolder(,|$)/i.test(String(r||""))}function F5r(t,e=[]){if(!e.length)return!0;let r=String(t?.Type||"").toLowerCase();return!!(e.includes(r)||e.includes("video")&&["movie","video","episode"].includes(r)||e.includes("folder")&&t?.IsFolder)}function qR(t=[],e=[]){return e.length?t.filter(r=>F5r(r,e)):t}function FR(t,e,r){return!r||!r.Id||(r.UserData=Xo(t,e,String(r.Id||""),r.UserData||{})),r}function Wgt(t=[]){let e=[],r=t.filter(s=>Array.isArray(s)&&s.length),n=r.reduce((s,i)=>Math.max(s,i.length),0);for(let s=0;s{i[s]&&e.push(i[s])});return e}function $gt(t){let e=null,r=new Promise((n,s)=>{e=setTimeout(()=>s(new Error("timeout")),P5r)});return Promise.race([t,r]).finally(()=>{e&&clearTimeout(e)})}async function rW(t,e,r,n,s,i,a,o=[],c=null){let u=Math.max(0,Number(n)||0),l=Math.max(1,Number(s)||1),d=await L_(t,e,r,1,{},c).catch(()=>null),f=Array.isArray(d?.list)?d.list:[],p=Number(d?.limit||0),m=Math.max(1,p||f.length||l),h=Math.floor(u/m)+1,y=u%m,g=[],b=h,x=!1,A=!1,S=Number(d?.pagecount||0),I=Number(d?.total||0),R=h+Math.max(3,Math.ceil((y+l)/m)+2);for(;g.lengthnull),D=Array.isArray(M?.list)?M.list:[],L=qR(D.map(ue=>sW(e,ue,i,a)),o),Z=Number(M?.pagecount||0);Z>0&&(S=Math.max(S,Z));let W=Number(M?.total||0);W>0&&(I=Math.max(I,W));let U=b===h?y:0,z=L.slice(U),j=l-g.length;g.push(...z.slice(0,j));let J=Math.min(z.length,j);x=U+J>=L.length;let se=L.length===0,oe=S>0&&b>=S&&x;if(se||oe){A=!0;break}if(g.length>=l)break;b+=1}let w=Number.isFinite(I)&&I>0&&I<9e3,N=g.length>=l;N&&A&&(N=!1),N&&S>0&&b>=S&&x&&(N=!1),N&&w&&u+g.length>=I&&(N=!1);let k=u+g.length+(N?1:0),B=k;return w&&(B=Math.max(I,u+g.length),N&&(B=Math.max(B,k))),{rows:g,totalRecordCount:B}}async function rpe(t,e,r,n,s=[],i=0,a=16,o=null){let c=await bR(t,e,o).catch(()=>null),u=Array.isArray(c?.class)?c.class.filter(f=>String(f?.type_id||"").trim()):[];if(u.length){let f=String(u[0].type_id||"");if(f)return rW(t,e,f,i,a,r,n,s,o)}let l=Array.isArray(c?.list)?c.list:[],d=qR(l.map(f=>sW(e,f,r,n)),s);return{rows:Ba(d,i,a),totalRecordCount:d.length}}function qgt(t={}){return String(t?.siteName||t?.spiderKey||"").trim()}function jgt(t={}){let e=String(t?.vod_tag||"").trim().toLowerCase(),r=t?.cate&&typeof t.cate=="object"?t.cate:null,n=String(r?.id||"").trim(),s=String(t?.vod_id||"").trim();return n||(e==="folder"&&s?s:"")}function q5r(t,e,r,n,s={}){let i=!!s?.includeSourcePrefix,a=jgt(e),o=String(e.vod_pic||"").trim(),c=String(e.vod_remarks||"").trim(),u=String(e.vod_year||"").trim(),l=qgt(t),d=String(e.vod_name||e?.cate?.name||a||"").trim(),f=d||"\u672A\u547D\u540D\u76EE\u5F55",p={k:t.spiderKey,t:t.spiderType,c:a,...t.apiBase?{a:t.apiBase}:{}};o&&(p.u=o),d&&(p.n=d),c&&(p.r=c),u&&(p.y=u);let m=wn("cat",p);return{Name:i&&l?`${l} \xB7 ${f}`:f,Id:m,ParentId:r,ServerId:n,IsFolder:!0,Type:"Folder",Overview:c,PrimaryImageAspectRatio:1.7778,ImageTags:{Primary:m},BackdropImageTags:[],UserData:as()}}function sW(t,e,r,n,s={}){if(jgt(e))return q5r(t,e,r,n,s);let i=!!s?.includeSourcePrefix,a=String(e.vod_pic||""),o=String(e.vod_remarks||"").trim(),c=String(e.vod_year||"").trim(),u=qgt(t),l=String(e.vod_name||"").trim(),d=l||"\u672A\u547D\u540D",f={k:t.spiderKey,t:t.spiderType,v:String(e.vod_id),...t.apiBase?{a:t.apiBase}:{}};a&&(f.u=a),l&&(f.n=l),o&&(f.r=o),c&&(f.y=c);let p=wn("vod",f),h=Ugt?"Series":H_(e);return{Name:i&&u?`${u} \xB7 ${d}`:d,Id:p,ParentId:r,ServerId:n,IsFolder:h==="Series",Type:h,MediaType:"Video",Overview:String(e.vod_remarks||""),PrimaryImageAspectRatio:.6667,ImageTags:{Primary:p},BackdropImageTags:[],UserData:as()}}async function j5r(t,e,r,n,s,i){let a=String(r?.vod_name||"").trim(),o=String(r?.vod_pic||"").trim(),c=String(r?.tmdbHintRemarks||r?.vod_remarks||"").trim(),u=String(r?.tmdbHintYear||r?.vod_year||"").trim(),l=[],d=new Map;for(let f=0;fArray.isArray(i?.episodes)&&i.episodes.length>0),n=r.reduce((i,a)=>Math.max(i,a.episodes.length),0),s=Ugt?r.length>0:r.length>1||n>1||H_(t)==="Series";return{lines:r,isSeries:s}}function H5r(t){let r=String(t.headers?.["x-forwarded-proto"]||"").split(",")[0].trim()||t.protocol||"http",s=String(t.headers?.["x-forwarded-host"]||"").split(",")[0].trim()||t.headers?.host||"127.0.0.1";return`${r}://${s}`}function G5r(t,e,r="mkv"){return`${H5r(t)}/emby${Qgt(t,e,r,!0)}`}function Qgt(t,e,r="mkv",n=!1){let s=/^[a-z0-9]{2,8}$/i.test(String(r||""))?String(r).toLowerCase():"mkv",i=n&&t.embyToken?`?api_key=${encodeURIComponent(t.embyToken)}`:"";return`/videos/${String(e||"")}/stream.${s}${i}`}async function spe(t,e,r,n="\u9ED8\u8BA4"){let s=wn("media",{k:String(r?.k||""),t:Number(r?.t||3),v:String(r?.v||""),l:Number(r?.l||0),e:Number(r?.e||0),f:String(r?.f||n||""),...r?.a?{a:String(r.a||"")}:{}}),i=D5r(r?.k)?"m3u8":"mkv",a=Lgt(String(r?.p||""),i),o=G5r(e,s,a),c=Qgt(e,s,a,!0),u={},l=!1,d=String(n||r?.f||"");if(k5r&&B5r(d)&&r?.k&&r?.f&&r?.p){let p={spiderKey:String(r.k||""),spiderType:Number(r.t||3),apiBase:String(r.a||"")},m=await Rm(t,p,String(r.f||""),String(r.p||""),e).catch(()=>null),h=km(m||{},String(n||""));h.url&&L5r(h.url)&&(a=Lgt(h.url,a),o=h.url,c=h.url,u=h.header||{},l=!1)}return{Id:s,Name:n,Type:"Default",Protocol:"Http",Container:a,IsRemote:!0,SupportsTranscoding:!1,SupportsDirectStream:!0,SupportsDirectPlay:!0,IsInfiniteStream:!1,SupportsProbing:!1,MediaStreams:[],RequiredHttpHeaders:u,Path:o,DirectStreamUrl:c,AddApiKeyToDirectStreamUrl:l,ItemId:s}}async function z5r(t,e,r,n,s=[]){let i=String(n?.vod_id||"");return!r?.spiderKey||!i?[]:(await Promise.all(s.map(async(o,c)=>{let u=o?.episodes?.[0];return u?.playId?spe(t,e,{k:r.spiderKey,t:r.spiderType,...r.apiBase?{a:r.apiBase}:{},v:i,l:c,e:0,f:String(o.flag||""),p:String(u.playId)},String(o.flag||`\u7EBF\u8DEF${c+1}`)):null}))).filter(Boolean)}function K5r(t={},e={}){let r=String(t?.vod_name||"").trim();if(r)return r;let n=String(e?.n||"").trim();if(n)return n;let s=Io(t?.vod_play_from,t?.vod_play_url),i=String(s?.[0]?.episodes?.[0]?.name||"").trim();if(i)return i;let a=String(t?.vod_remarks||"").trim();return a||"\u672A\u547D\u540D"}async function tW(t,e,r=null){let n=V_(e);if(!n.spiderKey||!e.v)return null;let s=await qc(t,n,String(e.v),r).catch(()=>null),i=jc(s);if(!i)return null;Zy(i,e),!String(i?.vod_pic||"").trim()&&e?.u&&(i.vod_pic=String(e.u||"").trim()),i.vod_name=K5r(i,e);let{lines:a,isSeries:o}=npe(i,n.spiderKey);return nW(t,"vod.source",{spiderKey:n.spiderKey,spiderType:n.spiderType,vodId:String(i.vod_id||e.v||""),vodName:String(i.vod_name||""),vodRemarks:String(i.vod_remarks||""),guessVideoType:H_(i),isSeriesByRule:o,lineCount:a.length,episodeCountPerLine:a.map(c=>c.episodes.length).slice(0,10)}),{spiderRef:n,vod:i}}async function ipe(t){t.get("/:userId",{preHandler:t.embyRequireAuth},async()=>{let e=t.embyContext,r=Us();return{Name:e.user.name,ServerId:e.config.serverId,Id:e.user.id,LastActivityDate:r,LastLoginDate:r}}),t.get("/:userId/Views",{preHandler:t.embyRequireAuth},async()=>{let e=t.embyContext.config.serverId,r=await Ad(t);return Ft(r.map(n=>ZM(n,e)))}),t.get("/:userId/Items/Resume",{preHandler:t.embyRequireAuth},async e=>{let r=e.query||{},n=Number(Jr(r,["StartIndex","startindex"],0)),s=Hu(Jr(r,["Limit","limit"],50),50),i=e.embyUser?.Id||String(e.params.userId||t.embyContext.user.id),a=igt(t,i,t.embyContext.config.serverId);return Ft(Ba(a,n,s),a.length)}),t.get("/:userId/Items/Latest",{preHandler:t.embyRequireAuth},async e=>{let r=e.query||{},n=t.embyContext.config.serverId,s=e.embyUser?.Id||String(e.params.userId||t.embyContext.user.id),i=String(Jr(r,["ParentId","parentid"],"")),a=Hu(Jr(r,["Limit","limit"],16),16),o=Mgt(Jr(r,["IncludeItemTypes","includeitemtypes"],"")),c=String(Jr(r,["MediaTypes","mediatypes"],"")).toLowerCase();!o.length&&c.includes("video")&&(o=["movie","series","video"]);let u=await Ad(t),l=Fs(i);if(l?.type==="lib"){let h=V_(l.payload),y=Fy(u,h.spiderKey,h.spiderType,h.apiBase)||{siteName:h.spiderKey,spiderKey:h.spiderKey,spiderType:h.spiderType,apiBase:h.apiBase},g=await rpe(t,y,i,n,o,0,a,e);return qs(t,s,g.rows)}if(l?.type==="cat"){let h=V_(l.payload),y=Fy(u,h.spiderKey,h.spiderType,h.apiBase)||{siteName:h.spiderKey,spiderKey:h.spiderKey,spiderType:h.spiderType,apiBase:h.apiBase},g=await rW(t,y,String(l.payload.c||""),0,a,i,n,o,e);return qs(t,s,g.rows)}let d=Math.min(Math.max(a,6),20),p=(await Promise.allSettled(u.map(h=>$gt(rpe(t,h,ZM(h,n).Id,n,o,0,d,e))))).filter(h=>h.status==="fulfilled").map(h=>h.value.rows),m=Wgt(p).slice(0,a);return qs(t,s,m)}),t.get("/:userId/Items",{preHandler:t.embyRequireAuth},async e=>{let r=e.query||{},n=t.embyContext.config.serverId,s=e.embyUser?.Id||String(e.params.userId||t.embyContext.user.id),i=String(Jr(r,["SortBy","sortby"],""));if(i.includes("IsFavoriteOrLiked"))return Ft([]);let a=String(Jr(r,["ParentId","parentid"],"")),o=String(Jr(r,["SearchTerm","searchterm","NameStartsWith","namestartswith"],"")).trim(),c=Number(Jr(r,["StartIndex","startindex"],0)),u=Hu(Jr(r,["Limit","limit"],60),60),l=Number(Jr(r,["Page","page"],Math.floor(Math.max(0,c)/u)+1))||1,d=Mgt(Jr(r,["IncludeItemTypes","includeitemtypes"],"")),f=String(Jr(r,["Recursive","recursive"],"")).trim().toLowerCase()==="true",p=String(Jr(r,["MediaTypes","mediatypes"],"")).toLowerCase(),m=await Ad(t);if(o){let g=t.embyContext?.config?.searchSourcePrefix!==!1,b=[];await Promise.allSettled(m.map(async A=>{try{let S=await Promise.race([bmt(t,A,o,l),new Promise((R,w)=>setTimeout(()=>w(new Error("timeout")),8e3))]);(Array.isArray(S?.list)?S.list:[]).forEach(R=>b.push(sW(A,R,"0",n,{includeSourcePrefix:g})))}catch{}}));let x=qs(t,s,qR(b,d));return Ft(Ba(x,c,u),x.length)}if(!a&&f&&($5r(d)||p.includes("video"))){let y=d.length?d:["movie","series","video"],g=Math.min(Math.max(u,6),20),x=(await Promise.allSettled(m.map(S=>$gt(rpe(t,S,ZM(S,n).Id,n,y,0,g,e))))).filter(S=>S.status==="fulfilled").map(S=>S.value.rows),A=qs(t,s,Wgt(x));return Ft(Ba(A,c,u),A.length)}if(!a){let y=qs(t,s,m.map(g=>ZM(g,n)));return Ft(Ba(y,c,u),y.length)}let h=Fs(a);if(!h)return Ft([]);if(h.type==="lib"){let y=V_(h.payload),g=Fy(m,y.spiderKey,y.spiderType,y.apiBase)||{siteName:y.spiderKey,spiderKey:y.spiderKey,spiderType:y.spiderType,apiBase:y.apiBase},b=await bR(t,g,e).catch(()=>null),x=Array.isArray(b?.class)?b.class.filter(R=>String(R?.type_id||"").trim()):[];if(x.length&&(U5r(d,f,i)||!W5r(d,f))){let R=x.map(N=>M5r(g,N,a,n)),w=qs(t,s,qR(R,d));return Ft(Ba(w,c,u),w.length)}if(x.length){let R=String(x[0].type_id||"");if(R){let w=await rW(t,g,R,c,u,a,n,d,e);return qs(t,s,w.rows),Ft(w.rows,w.totalRecordCount)}}let S=(Array.isArray(b?.list)?b.list:[]).map(R=>sW(g,R,a,n)),I=qs(t,s,qR(S,d));return Ft(Ba(I,c,u),I.length)}if(h.type==="cat"){let y=V_(h.payload),g=Fy(m,y.spiderKey,y.spiderType,y.apiBase)||{siteName:y.spiderKey,spiderKey:y.spiderKey,spiderType:y.spiderType,apiBase:y.apiBase},b=String(h.payload.c||""),x=await rW(t,g,b,c,u,a,n,d,e);return qs(t,s,x.rows),Ft(x.rows,x.totalRecordCount)}if(h.type==="vod"){let y=await tW(t,h.payload,e);if(!y)return Ft([]);let{spiderRef:g,vod:b}=y,{lines:x,isSeries:A}=npe(b,g.spiderKey);if(!x.length)return Ft([]);if(A){let S=await j5r(t,g,b,x,a,n);return qs(t,s,S),Ft(Ba(S,c,u),S.length)}return Ft([])}if(h.type==="sea"){let y=await tW(t,h.payload,e);if(!y)return Ft([]);let{spiderRef:g,vod:b}=y,x=Io(b.vod_play_from,b.vod_play_url);if(!x.length)return Ft([]);let A=Number(h.payload.l||0),S=await Q5r(t,e,g,b,x,A,a,n);return qs(t,s,S),Ft(Ba(S,c,u),S.length)}return Ft([])}),t.get("/:userId/Items/:itemId",{preHandler:t.embyRequireAuth},async(e,r)=>{let n=Fs(e.params.itemId);if(!n)return r.code(404),{};let s=e.embyUser?.Id||String(e.params.userId||t.embyContext.user.id);if(n.type==="ep"){let i=await tW(t,n.payload,e),a=String(i?.vod?.vod_name||"\u64AD\u653E"),o=Number(n?.payload?.l||0),c=Number(n?.payload?.e||0),u=Io(i?.vod?.vod_play_from,i?.vod?.vod_play_url),l=u?.[o]?.episodes?.[c]?.name||"",d=u?.[o]||null,f=d?.episodes?.[c]||null,p=zy(l,c+1),m=wn("vod",{k:String(n?.payload?.k||""),t:Number(n?.payload?.t||3),v:String(n?.payload?.v||""),...n?.payload?.a?{a:String(n.payload.a||"")}:{},...n?.payload?.n?{n:String(n.payload.n||"")}:{},...n?.payload?.u?{u:String(n.payload.u||"")}:{},...n?.payload?.r?{r:String(n.payload.r||"")}:{},...n?.payload?.y?{y:String(n.payload.y||"")}:{}}),h=wn("sea",{k:String(n?.payload?.k||""),t:Number(n?.payload?.t||3),v:String(n?.payload?.v||""),l:o,...n?.payload?.a?{a:String(n.payload.a||"")}:{},...n?.payload?.n?{n:String(n.payload.n||"")}:{},...n?.payload?.u?{u:String(n.payload.u||"")}:{},...n?.payload?.r?{r:String(n.payload.r||"")}:{},...n?.payload?.y?{y:String(n.payload.y||"")}:{}}),y=n.payload?.k&&n.payload?.v&&n.payload?.f&&n.payload?.p?[await spe(t,e,{k:String(n.payload.k||""),t:Number(n.payload.t||3),v:String(n.payload.v||""),l:Number(n.payload.l||0),e:Number(n.payload.e||0),f:String(n.payload.f||""),p:String(n.payload.p||""),...n.payload.a?{a:String(n.payload.a||"")}:{}},String(n.payload.f||"\u9ED8\u8BA4"))]:[];return nW(t,"item.detail.ep",{itemId:e.params.itemId,sourceType:n.type,vodName:String(i?.vod?.vod_name||""),mediaSourceCount:y.length,canPlay:!0}),FR(t,s,{Name:a,Id:e.params.itemId,Type:"Episode",IsFolder:!1,MediaType:"Video",CanPlay:!0,SeriesId:m,SeriesName:a,SeasonId:h,SeasonName:String(n?.payload?.f||`\u7EBF\u8DEF${o+1}`),IndexNumber:p,ParentIndexNumber:o+1,DateCreated:Us(),ImageTags:{Primary:e.params.itemId},BackdropImageTags:[],UserData:Xo(t,s,e.params.itemId),...eW(),...f?await UR(t,{spiderRef:V_(n.payload),vod:i?.vod||{},line:d,lineIndex:o,episode:f,episodeIndex:c})||{}:{},MediaSources:y})}if(n.type==="sea"){let i=Number(n?.payload?.l||0);return FR(t,s,{Name:`\u7EBF\u8DEF${i+1}`,Id:e.params.itemId,Type:"Season",IsFolder:!0,IndexNumber:i+1,DateCreated:Us(),ImageTags:{Primary:e.params.itemId},BackdropImageTags:[],UserData:Xo(t,s,e.params.itemId),...eW()})}if(n.type==="cat"){let i=String(n.payload?.n||n.payload?.c||n.payload?.k||"\u76EE\u5F55");return FR(t,s,{Name:i,Id:e.params.itemId,Type:"Folder",IsFolder:!0,ServerId:t.embyContext.config.serverId,PrimaryImageAspectRatio:1.7778,ImageTags:{Primary:e.params.itemId},BackdropImageTags:[],UserData:Xo(t,s,e.params.itemId),...eW({Overview:String(n.payload?.r||"")})})}if(n.type==="vod"){let i=Tgt(t,n.payload).catch(()=>null),a=await tW(t,n.payload,e);if(!a)return r.code(404),{};let{lines:o,isSeries:c}=npe(a.vod,a.spiderRef.spiderKey),u=c?"Series":"Movie",[l,d]=await Promise.all([z5r(t,e,a.spiderRef,a.vod,o),i]),f=d&&typeof d=="object"?{...d}:{},p={Primary:e.params.itemId,...f.ImageTags&&typeof f.ImageTags=="object"?f.ImageTags:{}};delete f.ImageTags;let m=c?[]:l,h=c?l.length>0:m.length>0;return nW(t,"item.detail.vod",{itemId:e.params.itemId,spiderKey:a.spiderRef.spiderKey,spiderType:a.spiderRef.spiderType,vodId:String(a.vod.vod_id||""),vodName:String(a.vod.vod_name||""),type:u,isFolder:c,canPlay:h,lineCount:o.length,mediaSourceCount:m.length,firstMediaSource:m[0]?{name:m[0].Name,path:m[0].Path,id:m[0].Id}:null}),FR(t,s,{Name:String(a.vod.vod_name||""),Id:e.params.itemId,IsFolder:c,Type:u,MediaType:"Video",CollectionType:c?"tvshows":void 0,CanPlay:h,DateCreated:Us(),PrimaryImageAspectRatio:.6667,ProductionYear:Number(a.vod.vod_year||0)||void 0,ImageTags:p,BackdropImageTags:[],UserData:Xo(t,s,e.params.itemId),ChildCount:c?o.length>1?o.length:o[0]?.episodes?.length||0:void 0,SeasonCount:c?o.length:void 0,RecursiveItemCount:c?o.reduce((y,g)=>y+(g?.episodes?.length||0),0):void 0,...eW({Overview:String(a.vod.vod_content||"")}),...f,MediaSources:m})}return FR(t,s,{Name:String(n.payload?.k||""),Id:e.params.itemId,IsFolder:!0,Type:"Folder",ImageTags:{Primary:e.params.itemId},BackdropImageTags:[],UserData:Xo(t,s,e.params.itemId)})}),t.get("/:userId/Items/:itemId/LocalTrailers",{preHandler:t.embyRequireAuth},async()=>[]),t.get("/:userId/Items/:itemId/SpecialFeatures",{preHandler:t.embyRequireAuth},async()=>[]),t.all("/:userId/Items/:itemId/PlaybackInfo",{preHandler:t.embyRequireAuth},async(e,r)=>{if(!["GET","POST"].includes(e.method))return r.code(405),"";let n=new URLSearchParams,s=e.query||{};Object.keys(s).forEach(d=>{let f=s[d];f!=null&&n.set(d,String(f))});let i=n.toString(),a=`/emby/Items/${encodeURIComponent(String(e.params.itemId||""))}/PlaybackInfo${i?`?${i}`:""}`;nW(t,"playback.alias",{from:e.raw.url,to:a,method:e.method});let o={};e.embyToken&&(o["x-emby-token"]=e.embyToken);let c=e.method==="POST"?e.body||{}:void 0,u=await t.inject({method:e.method,url:a,headers:o,payload:c});r.code(u.statusCode);let l=u.headers?.["content-type"];if(l&&r.header("content-type",l),!u.body)return"";if(String(l||"").includes("application/json"))try{return JSON.parse(u.body)}catch{return u.body}return u.body}),t.post("/:userId/Items/:itemId/HideFromResume",{preHandler:t.embyRequireAuth},async e=>{let r=e.embyUser?.Id||String(e.params.userId||t.embyContext.user.id);return sgt(t,r,String(e.params.itemId||""))}),t.all("/:userId/FavoriteItems/:itemId/:isDelete?",{preHandler:t.embyRequireAuth},async(e,r)=>{if(!["POST","DELETE"].includes(e.method))return r.code(405),"";let n=e.embyUser?.Id||String(e.params.userId||t.embyContext.user.id);return ngt(t,n,String(e.params.itemId||""),e.method==="POST")}),t.all("/:userId/PlayedItems/:itemId/:isDelete?",{preHandler:t.embyRequireAuth},async(e,r)=>{if(!["POST","DELETE"].includes(e.method))return r.code(405),"";let n=e.embyUser?.Id||String(e.params.userId||t.embyContext.user.id);return rgt(t,n,String(e.params.itemId||""),e.method==="POST")})}var V5r=30*60*1e3,Y_=16/9,jR=960,Y5r=1920,J5r=360,X5r=9,Jgt=24,Z5r=12e3,cpe=9e3,Hgt=5*1024*1024,Ggt=80,zgt=24,Kgt=[["#556b2f","#bed98a"],["#5b3a82","#b37bd9"],["#235f73","#8fd2dc"],["#7a3341","#d98498"],["#2f5c43","#9ac78d"],["#6f4a2f","#d39a5d"],["#354f7d","#91aee6"],["#73395f","#cb87af"]],ape=null;function ope(t=""){return String(t||"").replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}function Xgt(t,e,r){return Math.max(e,Math.min(r,t))}function e6r(t=""){let e=2166136261,r=String(t||"");for(let n=0;n>>0}function Zgt(t){return Xgt(Math.round(Number(t)||0),0,255)}function Vgt(t=[]){return`#${t.slice(0,3).map(e=>Zgt(e).toString(16).padStart(2,"0")).join("")}`}function Ygt(t=[],e=[],r=.5){return[0,1,2].map(n=>Zgt((t[n]||0)*(1-r)+(e[n]||0)*r))}function t6r(t={}){return{spiderKey:String(t.k||t.spiderKey||""),spiderType:Number(t.t||t.spiderType||3),apiBase:String(t.a||t.apiBase||"")}}function upe(t,e,r=null){let n=null,s=new Promise(i=>{n=setTimeout(()=>i(r),e)});return Promise.race([t,s]).finally(()=>{n&&clearTimeout(n)})}function QR(t=[]){let e=new Set,r=[];for(let n of t){let s=String(n||"").trim();!s||e.has(s)||(e.add(s),r.push(s))}return r}function eyt(t=""){let e=String(t||"").trim();if(!e)return"";try{let r=new URL(e);return["http:","https:"].includes(r.protocol)?r.toString():""}catch{return""}}function r6r(t="",e="\u5A92\u4F53\u5E93"){return String(t||"").trim().replace(/^(?:「[^」]*」\s*)+/,"").trim()||e}function lpe(t=[]){return QR((Array.isArray(t)?t:[]).map(e=>eyt(e?.vod_pic)).filter(Boolean))}async function n6r(t,e={}){let r=t6r(e);if(!r.spiderKey)return null;let n=await Ad(t).catch(()=>[]);return Fy(n,r.spiderKey,r.spiderType,r.apiBase)||{siteName:String(e.n||r.spiderKey),spiderKey:r.spiderKey,spiderType:r.spiderType,apiBase:r.apiBase}}async function s6r(t,e,r){let n=await upe(bR(t,e,r).catch(()=>null),cpe,null),s=lpe(n?.list||[]);if(s.length>=Jgt)return s;let i=Array.isArray(n?.class)?n.class.filter(c=>String(c?.type_id||"").trim()):[];if(!i.length)return s;let a=i.slice(0,5).map(c=>upe(L_(t,e,String(c.type_id||""),1,{},r).then(u=>lpe(u?.list||[])).catch(()=>[]),cpe,[]));return(await Promise.allSettled(a)).forEach(c=>{c.status==="fulfilled"&&s.push(...c.value)}),QR(s)}async function i6r(t,e,r={},n){let s=[],i=eyt(r.u);i&&s.push(i);let a=String(r.c||"").trim();if(!a)return QR(s);let o=await upe(L_(t,e,a,1,{},n).catch(()=>null),cpe,null);return s.push(...lpe(o?.list||[])),QR(s)}async function a6r(t,e,r){let n=await n6r(t,e?.payload||{});if(!n)return{spider:null,posterUrls:[]};let s=[];return e?.type==="lib"?s=await s6r(t,n,r):e?.type==="cat"&&(s=await i6r(t,n,e.payload||{},r)),{spider:n,posterUrls:s}}function o6r(t,e=0){let r=t?.payload||{},n=r6r(r.n||r.name||r.k,"\u5A92\u4F53\u5E93"),s=t?.type==="cat"?"FOLDER":"LIBRARY";return{title:n,subtitle:s,countText:e>0?`${e} IMAGES`:"MYCATPAW"}}function c6r(t={}){let e=Number(t.Width||t.width||t.MaxWidth||t.maxWidth||0),r=Number(t.Height||t.height||t.MaxHeight||t.maxHeight||0),n=jR,s=Math.round(jR/Y_);if(e>0&&r>0){let i=Math.min(e/jR,r/(jR/Y_));n=Math.round(jR*i),s=Math.round(n/Y_)}else e>0?(n=Math.round(e),s=Math.round(n/Y_)):r>0&&(s=Math.round(r),n=Math.round(s*Y_));return n=Xgt(n,J5r,Y5r),s=Math.round(n/Y_),{width:n,height:s}}async function u6r(){return ape||(ape=import("sharp").then(t=>t.default||t).catch(()=>null)),ape}function iW(t=""){return Kgt[e6r(t)%Kgt.length]}function l6r(t,e=3){let r=Math.max(3,Number(e)||3),n=Math.floor(t.length/r);if(!n)return!0;let s=0,i=0,a=0,o=0,c=0,u=0,l=0,d=0,f=0,p=new Set;for(let S=0;S>4}:${R>>4}:${w>>4}`)}let m=s/n,h=i/n,y=a/n,g=l/n,b=Math.sqrt(Math.max(0,d/n-g*g)),x=(Math.sqrt(Math.max(0,o/n-m*m))+Math.sqrt(Math.max(0,c/n-h*h))+Math.sqrt(Math.max(0,u/n-y*y)))/3,A=f/n;return b<8&&x<8||(g>242||g<16)&&b<12&&x<12||A<7&&b<10||p.size<=3||p.size<=6&&b<20&&A<12}async function d6r(t,e){try{let r=await t(e).metadata();if(!r?.width||!r?.height||r.widtho>=200&&o<300}),s=String(n.headers?.["content-type"]||"").split(";")[0].trim().toLowerCase(),i=s&&s.startsWith("image/")?s:"image/jpeg",a=Buffer.from(n.data||[]);if(!a.length||a.length>Hgt)return null;if(e){if(!await d6r(e,a))return null;let o=await f6r(e,a);return o?.length?{dataUri:`data:image/jpeg;base64,${o.toString("base64")}`,buffer:o}:null}return{dataUri:`data:${i};base64,${a.toString("base64")}`,buffer:a}}catch{return null}}async function m6r(t=[],e=null){let n=QR(t).slice(0,Jgt).map(a=>p6r(a,e));return(await Promise.allSettled(n)).filter(a=>a.status==="fulfilled"&&a.value?.dataUri).map(a=>a.value).slice(0,X5r)}async function h6r(t,e=[],r=""){let n=e.find(s=>s?.buffer);if(!n)return iW(r);try{let i=((await t(n.buffer).resize(24,24,{fit:"cover"}).stats()).channels||[]).slice(0,3).map(c=>c.mean||0),a=Ygt(i,[0,0,0],.38),o=Ygt(i,[255,255,255],.48);return[Vgt(a),Vgt(o)]}catch{return iW(r)}}function g6r(t=""){let e=String(t||"\u5A92\u4F53\u5E93").trim()||"\u5A92\u4F53\u5E93";if(e.length<=8)return[e];if(/[\u4e00-\u9fff]/.test(e)){let i=e.slice(0,8),a=e.slice(8,16);return a?[i,a]:[i]}let r=e.split(/\s+/).filter(Boolean);if(r.length<=1)return[e.slice(0,16)];let n=[],s="";return r.forEach(i=>{let a=s?`${s} ${i}`:i;if(a.length>12&&s){n.push(s),s=i;return}s=a}),s&&n.push(s),n.slice(0,2)}function tyt(t=[],e,r){let n=e*.16,s=n*1.48,i=e*.025,a=e*.52,o=-r*.16,c=3;return[2,0,1,3,4,5,8,6,7].map((l,d)=>{let f=Math.floor(d/c),p=d%c,m=a+f*(n+i),h=o+p*(s+i),y=`posterClip${d}`,g=t[l%t.length];return{x:m,y:h,w:n,h:s,r:e*.015,clipId:y,href:g?.dataUri||""}})}function y6r(t,e,r=""){let n=tyt([{dataUri:""}],t,e),s=iW(r);return n.map((i,a)=>{let o=.18+a%3*.08;return` - `}).join("")}function cNr({width:t,height:e,title:r,subtitle:n,countText:s,posterImages:i,palette:a}){let o=aNr(r),c=o.some(h=>h.length>8)?t*.082:t*.105,u=t*.034,l=c*1.08,d=i.length?Gft(i,t,e):[],f=d.map(h=>` + `}).join("")}function A6r({width:t,height:e,title:r,subtitle:n,countText:s,posterImages:i,palette:a}){let o=g6r(r),c=o.some(h=>h.length>8)?t*.082:t*.105,u=t*.034,l=c*1.08,d=i.length?tyt(i,t,e):[],f=d.map(h=>` - `).join(""),m=o.map((h,A)=>` - ${hle(h)} + `).join(""),m=o.map((h,y)=>` + ${ope(h)} `).join("");return` @@ -10588,15 +10654,15 @@ ${J.name||J.address} \u8BF7\u6C42\u5931\u8D25:`),console.log(" - \u9519\u8BEF\u - ${i.length?p:oNr(t,e,r)} + ${i.length?p:y6r(t,e,r)} ${m} - ${hle(n)} - ${hle(s)} -`}function uNr(t=""){return String(t||"Primary").trim().toLowerCase()==="primary"}function xle(t,e="Primary"){return uNr(e)&&["lib","cat"].includes(t?.type)}async function Vft(t,e,r){if(!xle(e,r?.params?.imageType||"Primary"))return null;let{width:n,height:s}=XRr(r?.query||{}),i=im(["emby","dynamic-cover-v2",e.type,JSON.stringify(e.payload||{}),n,s]);return Xf(t.embyContext?.cache,i,$Rr,async()=>{let a=await YRr(t,e,r),o=await ZRr(),c=o?await sNr(a.posterUrls,o):[],u=JRr(e,o?c.length:a.posterUrls.length),l=o?await iNr(o,c,u.title):n6(u.title),d=cNr({width:n,height:s,title:u.title,subtitle:u.subtitle,countText:u.countText,posterImages:c,palette:l});return o?{buffer:await o(Buffer.from(d,"utf8"),{density:96}).png({compressionLevel:8,adaptiveFiltering:!0}).toBuffer(),contentType:"image/png"}:{buffer:Buffer.from(d,"utf8"),contentType:"image/svg+xml; charset=utf-8"}})}var lNr=!1;function dNr(t,e,r={}){if(t.embyContext?.config?.requestLog)try{console.log(`[Emby Transform] ${e}:`,JSON.stringify(r))}catch{}}async function zft(t,e={}){if(e.u)return String(e.u);let r=Zl(e),n=String(e.v||"");if(!r.spiderKey||!n)return"";let s=await Oc(t,r,n).catch(()=>null),i=Pc(s);return String(i?.vod_pic||"")}function fNr(t,e="Primary",r={}){let n=String(e||"Primary").trim().toLowerCase();return String(r?.tag||r?.Tag||"").trim().toLowerCase()==="tmdb"||t?.type!=="vod"?!0:["backdrop","thumb","banner","logo"].includes(n)}async function pNr(t,e,r="Primary",n={}){if(e?.type==="vod"&&!fNr(e,r,n)){let i=await zft(t,e?.payload||{});if(i)return i}let s=await Ift(t,e,r).catch(()=>"");return s||(e?.type==="img"?String(e?.payload?.u||""):zft(t,e?.payload||{}))}function Kft(t){if(!t?.payload||typeof t.payload!="object")return null;let e=t.payload;return t.type==="media"||t.type==="ep"?{k:String(e.k||""),t:Number(e.t||3),v:String(e.v||""),l:Number(e.l||0),e:Number(e.e||0),f:String(e.f||""),p:String(e.p||""),a:String(e.a||"")}:null}async function mNr(t,e,r=""){let n=Kft(e);if(n)return n;if(r&&["vod","sea"].includes(e.type)){let p=l2(t,r,wn(e.type,e.payload||{})),m=Kft(p?.decoded);if(m?.k&&m?.f&&m?.p)return m}let s=e.payload||{};if(!["vod","sea"].includes(e.type))return null;let i=Zl(s),a=String(s.v||"");if(!i.spiderKey||!a)return null;let o=await Oc(t,i,a).catch(()=>null),c=Pc(o);if(!c)return null;let u=ho(c.vod_play_from,c.vod_play_url);if(!u.length)return null;let l=e.type==="sea"?Number(s.l||0):0,d=u[l]||u[0];if(!d||!d.episodes.length)return null;let f=d.episodes[0];return{k:i.spiderKey,t:i.spiderType,v:a,l,e:0,f:String(d.flag||""),p:String(f.playId||""),...i.apiBase?{a:i.apiBase}:{}}}function hNr(t=""){let e=String(t||"").trim();if(!e)return"mkv";if(/\.m3u8($|\?)/i.test(e))return"m3u8";try{let n=new URL(e).pathname.match(/\.([a-z0-9]{2,6})$/i);if(n?.[1])return n[1].toLowerCase()}catch{}return"mkv"}function gNr(t=""){try{let e=String(new URL(String(t||"")).hostname||"").toLowerCase();return e.includes("mcloud.139.com")||e.includes("yun.139.com")}catch{return!1}}async function ANr(t,e,r){let n={spiderKey:e.k,spiderType:Number(e.t||3),apiBase:String(e.a||"")},s=await am(t,n,e.f,e.p,r).catch(()=>null),i=um(s||{},""),a=String(i.url||"");return{container:hNr(a),requiredHeaders:i.header||{},directUrl:a,useDirectUrl:lNr&&gNr(a)}}function yNr(t){let r=String(t.headers?.["x-forwarded-proto"]||"").split(",")[0].trim()||t.protocol||"http",s=String(t.headers?.["x-forwarded-host"]||"").split(",")[0].trim()||t.headers?.host||"127.0.0.1";return`${r}://${s}`}function xNr(t="mkv"){return/^[a-z0-9]{2,8}$/i.test(String(t||""))?String(t).toLowerCase():"mkv"}function Yft(t,e,r="mkv",n=!1){let s=xNr(r),i=n&&t.embyToken?`?api_key=${encodeURIComponent(t.embyToken)}`:"";return`/videos/${String(e||"")}/stream.${s}${i}`}function bNr(t,e,r="mkv",n=!0){return`${yNr(t)}/emby${Yft(t,e,r,n)}`}async function ble(t){t.get("/",{preHandler:t.embyRequireAuth},async(e,r)=>{let n=e.query||{},s=String(n.userid||n.UserId||e.embyUser?.Id||t.embyContext.user.id),i=new URLSearchParams;Object.keys(n).forEach(c=>{if(c==="userid"||c==="UserId")return;let u=n[c];u!=null&&i.set(c,String(u))});let a=`/emby/Users/${encodeURIComponent(s)}/Items`,o=i.toString();o&&(a+=`?${o}`),r.redirect(301,a)}),t.get("/:itemId/Images/:imageType",async(e,r)=>{let n=$s(e.params.itemId);if(!n)return r.code(404),"";if(xle(n,e.params.imageType||"Primary")){let i=await Vft(t,n,e).catch(()=>null);if(i?.buffer?.length)return r.header("Content-Type",i.contentType||"image/png"),r.header("Cache-Control","public, max-age=1800"),r.header("Content-Length",String(i.buffer.length)),r.send(i.buffer)}let s=await pNr(t,n,e.params.imageType||"Primary",e.query||{});if(!s)return r.code(404),"";try{let i=new URL(s);if(!["http:","https:"].includes(i.protocol))return r.code(403),""}catch{return r.code(404),""}try{let i=await Ae.get(s,{responseType:"stream",timeout:1e4,headers:{"User-Agent":"Mozilla/5.0 EmbyImageProxy"}}),a=i.headers?.["content-type"]||"image/jpeg";return r.header("Content-Type",a),r.header("Cache-Control","public, max-age=86400"),i.headers?.["content-length"]&&r.header("Content-Length",i.headers["content-length"]),r.send(i.data)}catch{return r.code(502),""}}),t.all("/:itemId/PlaybackInfo",{preHandler:t.embyRequireAuth},async(e,r)=>{if(!["GET","POST"].includes(e.method))return r.code(405),"";let n=e.params.itemId,s=$s(n);if(!s)return r.code(404),{};let i=e.embyUser?.Id||t.embyContext.user.id,a=await mNr(t,s,i);if(!a||!a.k||!a.f||!a.p)return r.code(404),{};let o=wn("media",{k:String(a.k||""),t:Number(a.t||3),v:String(a.v||""),l:Number(a.l||0),e:Number(a.e||0),f:String(a.f||""),...a.a?{a:String(a.a||"")}:{}}),c=await ANr(t,a,e),u=bNr(e,o,c.container,!0),l=c.useDirectUrl&&c.directUrl?c.directUrl:u,d=c.useDirectUrl&&c.directUrl?c.directUrl:Yft(e,o,c.container,!0),f=!1,p=c.useDirectUrl?c.requiredHeaders||{}:{};return dNr(t,"playback.info",{itemId:n,mediaId:o,spiderKey:a.k,lineFlag:a.f,container:c.container,useDirectUrl:c.useDirectUrl,streamUrl:l,directStreamUrl:d,hasRequiredHeaders:Object.keys(p).length>0,addApiKeyToDirectStreamUrl:f}),{MediaSources:[{Id:o,Name:"\u9ED8\u8BA4",Type:"Default",Protocol:"Http",Container:c.container,IsRemote:!0,SupportsTranscoding:!1,SupportsDirectStream:!0,SupportsDirectPlay:!0,IsInfiniteStream:!1,RequiresOpening:!1,RequiresClosing:!1,RequiresLooping:!1,SupportsProbing:!1,MediaStreams:[],RequiredHttpHeaders:p,Path:l,DirectStreamUrl:d,AddApiKeyToDirectStreamUrl:f,ItemId:o}],PlaySessionId:n}}),t.get("/:itemId/Similar",{preHandler:t.embyRequireAuth},async()=>Ut([])),t.get("/Counts",{preHandler:t.embyRequireAuth},async()=>({MovieCount:0,SeriesCount:0,EpisodeCount:0,GameCount:0,ArtistCount:0,ProgramCount:0,GameSystemCount:0,TrailerCount:0,SongCount:0,AlbumCount:0,MusicVideoCount:0,BoxSetCount:0,BookCount:0,ItemCount:0}))}var ENr=new Set(["tgchannel","tgsou","pansou","panta"]);function Ele(t){try{return decodeURIComponent(String(t||""))}catch{return String(t||"")}}function _Nr(t=""){let e=String(t||""),r=[e,Ele(e),Ele(Ele(e))];for(let n of r){let s=$s(n);if(s)return s}return null}function SNr(t={}){return{k:String(t.k||""),t:Number(t.t||3),v:String(t.v||""),l:Number(t.l||0),e:Number(t.e||0),f:String(t.f||""),p:String(t.p||""),a:String(t.a||"")}}async function vNr(t,e={}){let r=SNr(e);if(!r.k||!r.v)return null;if(r.f&&r.p)return r;let n={spiderKey:r.k,spiderType:r.t,apiBase:r.a},s=await Oc(t,n,r.v).catch(()=>null),i=Pc(s);if(!i)return null;let a=ho(i.vod_play_from,i.vod_play_url).filter(f=>Array.isArray(f?.episodes)&&f.episodes.length>0);if(!a.length)return null;let o=Math.max(0,Math.min(a.length-1,Number(r.l||0))),c=a[o],u=Array.isArray(c?.episodes)?c.episodes:[];if(!u.length)return null;let l=Math.max(0,Math.min(u.length-1,Number(r.e||0))),d=u[l];return d?.playId?{...r,l:o,e:l,f:r.f||String(c.flag||""),p:String(d.playId||"")}:null}async function CNr(t,e){if(!e)return null;if(e.type==="media"||e.type==="ep")return vNr(t,e.payload||{});if(!["vod","sea"].includes(e.type))return null;let r=e.payload||{},n=Zl(r),s=String(r.v||"");if(!n.spiderKey||!s)return null;let i=await Oc(t,n,s).catch(()=>null),a=Pc(i);if(!a)return null;let o=ho(a.vod_play_from,a.vod_play_url);if(!o.length)return null;let c=e.type==="sea"?Number(r.l||0):0,u=o[c]||o[0];if(!u||!u.episodes.length)return null;let l=u.episodes[0];return{k:n.spiderKey,t:n.spiderType,v:s,l:c,e:0,f:String(u.flag||""),p:String(l.playId||""),...n.apiBase?{a:n.apiBase}:{}}}function INr(t,e={}){let r={"User-Agent":t.headers?.["user-agent"]||"Mozilla/5.0 EmbyVideoProxy"};return t.headers?.range&&(r.Range=t.headers.range),e&&typeof e=="object"&&Object.keys(e).forEach(n=>{let s=e[n];s!=null&&(r[n]=String(s))}),r}async function Jft(t,e,r,n){let s=await Ae.get(r,{responseType:"stream",timeout:3e4,maxRedirects:5,validateStatus:()=>!0,headers:INr(t,n)}),i=["content-type","content-length","accept-ranges","content-range","cache-control","etag","last-modified"];return e.code(s.status),i.forEach(a=>{let o=s.headers?.[a];o!=null&&e.header(a,o)}),e.send(s.data)}function TNr(t={},e=""){if(ENr.has(String(t.k||"")))return!0;try{let r=String(new URL(String(e||"")).hostname||"").toLowerCase();return r.includes("mcloud.139.com")||r.includes("yun.139.com")}catch{return!1}}function wNr(t=""){try{return new URL(String(t||"")).toString()}catch{return String(t||"")}}async function _le(t,e,r,n=""){let s=_Nr(e.params.mediaId);if(!s)return r.code(404),"";let i=await CNr(t,s);if(!i||!i.k||!i.f||!i.p)return r.code(404),"";let a={spiderKey:i.k,spiderType:i.t,apiBase:String(i.a||"")},o=await am(t,a,i.f,i.p,e).catch(()=>null),c=um(o||{},String(e.query?.line||""));if(!c.url)return r.code(404),"";let u=String(n||"").trim(),l=u;try{let d=String(e.raw?.url||""),f=`/${String(e.params.mediaId||"")}/`,p=d.indexOf(f);if(p>=0){let m=d.slice(p+f.length).trim();m&&(l=m)}}catch{}if(u&&!/^stream\./i.test(u))try{let d=new URL(c.url),f=new URL(l||u,d);return Jft(e,r,f.toString(),c.header)}catch{return r.code(400),""}try{let d=new URL(c.url);if(!["http:","https:"].includes(d.protocol))return r.code(403),""}catch{return r.code(400),""}return TNr(i,c.url)||Object.keys(c.header||{}).length>0?Jft(e,r,c.url,c.header):r.redirect(307,wNr(c.url))}async function Sle(t){let e=async(r,n)=>{t.embyExtractToken(r)&&await t.embyRequireAuth(r,n)};t.get("/:mediaId/AdditionalParts",{preHandler:e},async()=>Ut([])),t.get("/:mediaId/stream.mkv",{preHandler:e},async(r,n)=>_le(t,r,n,"stream.mkv")),t.get("/:mediaId/:fileName",{preHandler:e},async(r,n)=>_le(t,r,n,String(r.params.fileName||""))),t.get("/:mediaId/*",{preHandler:e},async(r,n)=>_le(t,r,n,String(r.params["*"]||""))),t.get("/:mediaId/subtitles/:subtitleId",{preHandler:e},async(r,n)=>(n.code(404),""))}var RNr=new Set(["tgchannel","tgsou","pansou","panta"]),NNr=!1;function ONr(t=""){return/(移动|yidong|139)/i.test(String(t||""))}function PNr(t=""){try{let e=String(new URL(String(t||"")).hostname||"").toLowerCase();return e.includes("mcloud.139.com")||e.includes("yun.139.com")}catch{return!1}}function Xft(t="",e="mkv"){let r=String(t||"").trim();if(!r)return e;if(/\.m3u8($|\?)/i.test(r))return"m3u8";try{let s=new URL(r).pathname.match(/\.([a-z0-9]{2,6})$/i);if(s?.[1])return s[1].toLowerCase()}catch{}return e}function DNr(t,e,r={}){if(t.embyContext?.config?.requestLog)try{console.log(`[Emby Transform] ${e}:`,JSON.stringify(r))}catch{}}function kNr(t){let r=String(t?.headers?.["x-forwarded-proto"]||"").split(",")[0].trim()||t?.protocol||"http",s=String(t?.headers?.["x-forwarded-host"]||"").split(",")[0].trim()||t?.headers?.host||"127.0.0.1";return`${r}://${s}`}function LNr(t,e,r="mkv"){return`${kNr(t)}/emby${tpt(t,e,r,!0)}`}function tpt(t,e,r="mkv",n=!1){let s=/^[a-z0-9]{2,8}$/i.test(String(r||""))?String(r).toLowerCase():"mkv",i=n&&t?.embyToken?`?api_key=${encodeURIComponent(t.embyToken)}`:"";return`/videos/${String(e||"")}/stream.${s}${i}`}async function BNr(t,e,r,n="\u9ED8\u8BA4"){let s=wn("media",{k:String(r?.k||""),t:Number(r?.t||3),v:String(r?.v||""),l:Number(r?.l||0),e:Number(r?.e||0),f:String(r?.f||n||""),...r?.a?{a:String(r.a||"")}:{}}),i=RNr.has(String(r?.k||""))?"m3u8":"mkv",a=Xft(String(r?.p||""),i),o=LNr(e,s,a),c=tpt(e,s,a,!0),u={},l=!1,d=String(n||r?.f||"");if(NNr&&ONr(d)&&r?.k&&r?.f&&r?.p){let p={spiderKey:String(r.k||""),spiderType:Number(r.t||3),apiBase:String(r.a||"")},m=await am(t,p,String(r.f||""),String(r.p||""),e).catch(()=>null),h=um(m||{},String(n||""));h.url&&PNr(h.url)&&(a=Xft(h.url,a),o=h.url,c=h.url,u=h.header||{},l=!1)}return{Id:s,Name:n,Type:"Default",Protocol:"Http",Container:a,IsRemote:!0,SupportsTranscoding:!1,SupportsDirectStream:!0,SupportsDirectPlay:!0,IsInfiniteStream:!1,SupportsProbing:!1,MediaStreams:[],RequiredHttpHeaders:u,Path:o,DirectStreamUrl:c,AddApiKeyToDirectStreamUrl:l,ItemId:s}}async function MNr(t,e,r,n,s,i){let a=String(r?.vod_name||""),o=String(r?.vod_pic||"").trim(),c=String(r?.tmdbHintRemarks||r?.vod_remarks||"").trim(),u=String(r?.tmdbHintYear||r?.vod_year||"").trim(),l=[],d=new Map;for(let f=0;fe+(Array.isArray(r?.line?.episodes)?r.line.episodes.length:0),0)}async function rpt(t,e,r,n,s,i,a,o=1/0){let c=[],u=Number(o),l=Number.isFinite(u)&&u>0?Math.floor(u):1/0;for(let d of s){let f=Array.isArray(d?.line?.episodes)?d.line.episodes:[],p=Number(d?.episodeOffset||0),m=await KM(t,{spiderRef:r,vod:n,line:d?.line,lineIndex:Number(d?.lineIndex||0),episodes:f,episodeOffset:p});for(let h=0;h=l)return c}}return c}function npt(t,e){if(!t?.payload||typeof t.payload!="object"||t.type==="vod")return e;let r=t.payload,n=String(r.k||""),s=String(r.v||"");return!n||!s?e:wn("vod",{k:n,t:Number(r.t||3),v:s,...r.a?{a:String(r.a||"")}:{},...r.n?{n:String(r.n||"")}:{},...r.u?{u:String(r.u||"")}:{}})}function spt(t=[],e={},r=null){let n=String(Xr(e,["seasonid","SeasonId","seasonId"],""));if(n){let i=$s(n);if(i?.type==="sea"){let a=Number(i.payload?.l||0),o=t[a];return o?[{line:o,lineIndex:a}]:[]}}let s=Number(Xr(e,["season","Season"],NaN));if(Number.isFinite(s)&&s>0){let i=s-1,a=t[i];return a?[{line:a,lineIndex:i}]:[]}if(r?.type==="sea"){let i=Number(r.payload?.l||0),a=t[i];return a?[{line:a,lineIndex:i}]:[]}if(r?.type==="ep"){let i=Number(r.payload?.l||0),a=Number(r.payload?.e||0),o=t[i];return!o||!o.episodes[a]?[]:[{line:{...o,episodes:[o.episodes[a]]},lineIndex:i,episodeOffset:a}]}return t.map((i,a)=>({line:i,lineIndex:a}))}function FNr(t,e,r,n=[]){let i=l2(t,e,r)?.decoded?.payload||null;if(!i)return n;let a=Number(i.l||0),o=Number(i.e||0),c=n.find(l=>Number(l?.lineIndex||0)===a),u=Array.isArray(c?.line?.episodes)?c.line.episodes:[];return u[o]?[{...c,episodeOffset:o,line:{...c.line,episodes:u.slice(o)}}]:n}async function vle(t,e){let r=$s(e);if(!r||!["vod","sea","ep"].includes(r.type))return null;let n=r.payload||{},s=Zl(n),i=String(n.v||"");if(!s.spiderKey||!i)return null;let a=await Oc(t,s,i).catch(()=>null),o=Pc(a);if(!o)return null;yA(o,n),!String(o?.vod_pic||"").trim()&&n?.u&&(o.vod_pic=String(n.u||"").trim());let c=ho(o.vod_play_from,o.vod_play_url);return c.length?{decoded:r,spiderRef:s,vod:o,lines:c}:null}async function Zft(t,e,r={},n=null){let s=await vle(t,e);if(!s)return[];let{decoded:i,spiderRef:a,vod:o,lines:c}=s,u=spt(c,r,i);if(!u.length)return[];let l=npt(i,e);return rpt(t,n,a,o,u,l,t.embyContext.config.serverId)}async function ept(t,e){let r=await vle(t,e);if(!r)return[];let{spiderRef:n,vod:s,lines:i}=r;return MNr(t,n,s,i,e,t.embyContext.config.serverId)}async function Cle(t){let e={preHandler:t.embyRequireAuth};t.get("/Persons",e,async()=>Ut([])),t.get("/Genres",e,async()=>Ut([])),t.get("/Tags",e,async()=>Ut([])),t.get("/OfficialRatings",e,async()=>Ut([])),t.get("/Years",e,async()=>Ut([])),t.get("/Studios",e,async()=>Ut([])),t.get("/Shows/NextUp",e,async r=>{let n=r.query||{},s=String(Xr(n,["SeriesId","seriesId"],"")).trim(),i=Pu(Xr(n,["Limit","limit"],1),1),a=r.embyUser?.Id||t.embyContext.user.id;if(!s)return Ut([]);let o=await vle(t,s);if(!o)return Ut([]);let{decoded:c,spiderRef:u,vod:l,lines:d}=o,f=npt(c,s),p=FNr(t,a,f,spt(d,n,c));if(!p.length)return Ut([]);let m=$Nr(p),h=Fs(t,a,await rpt(t,r,u,l,p,f,t.embyContext.config.serverId,i));return DNr(t,"nextup.result",{seriesId:s,total:m,first:h[0]?{id:h[0].Id,type:h[0].Type,canPlay:h[0].CanPlay,mediaSourceCount:Array.isArray(h[0].MediaSources)?h[0].MediaSources.length:0}:null}),Ut(h,m)}),t.get("/Shows/:seriesId/Seasons",e,async r=>{let n=r.query||{},s=Number(Xr(n,["StartIndex","startindex"],0)),i=Pu(Xr(n,["Limit","limit"],150),150),a=String(r.params.seriesId||""),o=r.embyUser?.Id||t.embyContext.user.id,c=Fs(t,o,await ept(t,a));return Ut(Ia(c,s,i),c.length)}),t.get("/Shows/:seriesId/Episodes",e,async r=>{let n=r.query||{},s=Number(Xr(n,["StartIndex","startindex"],0)),i=Pu(Xr(n,["Limit","limit"],150),150),a=String(r.params.seriesId||""),o=r.embyUser?.Id||t.embyContext.user.id,c=Fs(t,o,await Zft(t,a,n,r));return Ut(Ia(c,s,i),c.length)}),t.get("/Items/:itemId/Seasons",e,async r=>{let n=r.query||{},s=Number(Xr(n,["StartIndex","startindex"],0)),i=Pu(Xr(n,["Limit","limit"],150),150),a=String(r.params.itemId||""),o=r.embyUser?.Id||t.embyContext.user.id,c=Fs(t,o,await ept(t,a));return Ut(Ia(c,s,i),c.length)}),t.get("/Items/:itemId/Episodes",e,async r=>{let n=r.query||{},s=Number(Xr(n,["StartIndex","startindex"],0)),i=Pu(Xr(n,["Limit","limit"],150),150),a=String(r.params.itemId||""),o=r.embyUser?.Id||t.embyContext.user.id,c=Fs(t,o,await Zft(t,a,n,r));return Ut(Ia(c,s,i),c.length)}),t.get("/Sessions",e,async r=>[{PlayState:{CanSeek:!0,IsPaused:!1,IsMuted:!1,RepeatMode:"RepeatNone",SleepTimerMode:"None",SubtitleOffset:0,Shuffle:!1,PlaybackRate:1},AdditionalUsers:[],RemoteEndPoint:"mycatpaw",Protocol:"HTTP/1.1",PlayableMediaTypes:["Video"],PlaylistIndex:0,PlaylistLength:0,Id:t.embyContext.config.serverId,ServerId:t.embyContext.config.serverId,UserId:r.embyUser?.Id||"",UserName:r.embyUser?.Name||"",Client:"",LastActivityDate:Ws(),DeviceName:"",InternalDeviceId:0,DeviceId:"",ApplicationVersion:t.embyContext.config.version,SupportedCommands:[],SupportsRemoteControl:!1}]),t.post("/Sessions/Playing",e,async(r,n)=>{let s=r.embyUser?.Id||t.embyContext.user.id;await d2(t,s,r.body||{},"playing"),n.code(204).send()}),t.post("/Sessions/Playing/Progress",e,async(r,n)=>{let s=r.embyUser?.Id||t.embyContext.user.id;await d2(t,s,r.body||{},"progress"),n.code(204).send()}),t.post("/Sessions/Playing/Stopped",e,async(r,n)=>{let s=r.embyUser?.Id||t.embyContext.user.id;await d2(t,s,r.body||{},"stopped"),n.code(204).send()}),t.post("/Sessions/Playing/Ping",e,async(r,n)=>{let s=r.embyUser?.Id||t.embyContext.user.id;await d2(t,s,r.body||{},"ping"),n.code(204).send()}),t.get("/DisplayPreferences/Usersettings",e,async()=>({Id:"usersettings",CustomPrefs:{},SortOrder:"Ascending"})),t.get("/Environment/DefaultDirectoryBrowser",e,async()=>Ut([]))}function ipt(t){return t&&String(t).match(/Token="?([^",\s]+)"?/i)?.[1]||""}var Ile=Symbol("embyLogStartAt"),UNr=/(token|password|passwd|pwd|pw|authorization|cookie|api[_-]?key|session)/i;function s6(t){let e=String(t??"");return e?e.length<=6?"***":`${e.slice(0,2)}***${e.slice(-2)}`:""}function QE(t,e=0,r=new WeakSet){if(t==null)return t;if(typeof t=="string")return t.length>240?`${t.slice(0,240)}...(truncated)`:t;if(typeof t!="object")return t;if(r.has(t))return"[Circular]";if(e>=3)return"[MaxDepth]";if(r.add(t),Array.isArray(t))return t.slice(0,10).map(s=>QE(s,e+1,r));let n={};for(let[s,i]of Object.entries(t)){if(UNr.test(s)){n[s]=s6(i);continue}n[s]=QE(i,e+1,r)}return n}function qNr(t){return t.routeOptions?.url||t.url||t.raw?.url||""}function Tle(t,e){if(t==null||t==="")return e;let r=String(t).trim().toLowerCase();return["0","false","off","no"].includes(r)?!1:["1","true","on","yes"].includes(r)?!0:e}function jNr(t,e,r){let n=String(e||"").trim();if(!n){r(null,{});return}try{r(null,JSON.parse(n))}catch(s){s.statusCode=400,r(s)}}function E2(t={}){let e=String(process.env.EMBY_TMDB_API_KEY||t.tmdbApiKey||"");return{enable:t.enable!==!1,username:String(process.env.EMBY_USERNAME||t.username||"CatPawPlay"),password:String(process.env.EMBY_PASSWORD||t.password||"CatPawPlay"),serverName:String(process.env.EMBY_SERVER_NAME||t.serverName||"CatPawPlay"),serverId:String(process.env.EMBY_SERVER_ID||t.serverId||"mycatpaw"),version:String(process.env.EMBY_VERSION||t.version||"4.8.0.80"),apiKey:String(process.env.EMBY_API_KEY||t.apiKey||""),searchSourcePrefix:Tle(process.env.EMBY_SEARCH_SOURCE_PREFIX,t.searchSourcePrefix!==!1),tokenTtlMs:Number(t.tokenTtlMs||30*24*60*60*1e3),requestLog:Tle(process.env.EMBY_REQUEST_LOG,process.env.NODE_ENV==="development"?t.requestLog!==!1:t.requestLog===!0),recoverToken:t.recoverToken!==!1&&process.env.EMBY_RECOVER_TOKEN!=="0",tmdbEnable:Tle(process.env.EMBY_TMDB_ENABLE,t.tmdbEnable!==!1&&!!e),tmdbApiKey:e,tmdbLanguage:String(process.env.EMBY_TMDB_LANGUAGE||t.tmdbLanguage||"zh-CN"),tmdbImageBase:String(process.env.EMBY_TMDB_IMAGE_BASE||t.tmdbImageBase||"https://image.tmdb.org/t/p/original")}}async function wle(t){let e=null;try{e=await t.db?.getObjectDefault("/emby",null)}catch{}let r=null;try{r=await t.db?.getObjectDefault("/embyPlayback",null)}catch{}let n=E2({...t.config?.emby||{},...e&&typeof e=="object"?e:{}}),s={config:n,cache:CM({max:1200}),tmdbStore:null,tmdbClientState:null,tokens:new Map,user:{id:"emby-user-001",name:n.username},playbackState:QM(r),playbackPersistTimer:null};globalThis.__catpawEmbyRuntime=s,t.addContentTypeParser("application/json",{parseAs:"string"},jNr),t.addContentTypeParser("application/x-www-form-urlencoded",{parseAs:"string"},(i,a,o)=>{try{let c=new URLSearchParams(String(a)),u={};for(let[l,d]of c.entries())u[l]=d;o(null,u)}catch(c){o(c)}}),t.decorate("embyContext",s),t.decorate("embyExtractToken",function(a){let o=a.query||{};return o["x-emby-token"]||o.api_key||o["X-Emby-Token"]||a.headers?.["x-emby-token"]||ipt(a.headers?.["x-emby-authorization"])||ipt(a.headers?.authorization)||""}),t.decorate("embyRequireAuth",async function(a,o){if(!s.config.enable){o.code(503).send("Emby disabled");return}let c=t.embyExtractToken(a);if(!c){o.code(401).send("Unauthorized");return}if(s.config.apiKey&&c===s.config.apiKey){a.embyToken=c,a.embyUser={Id:s.user.id,Name:s.user.name};return}let u=s.tokens.get(c);if(!u){if(!s.config.recoverToken){o.code(401).send("Unauthorized");return}let l=Date.now();u={token:c,userId:s.user.id,userName:s.user.name,createdAt:l,lastUsedAt:l,expireAt:s.config.tokenTtlMs>0?l+s.config.tokenTtlMs:0,device:{client:"RecoveredClient",device:"RecoveredDevice",deviceId:"",version:s.config.version}},s.tokens.set(c,u),s.config.requestLog&&console.warn(`[Emby Auth] recovered token session token=${s6(c)} path=${a.raw?.url||a.url}`)}if(u.expireAt>0&&u.expireAt<=Date.now()){s.tokens.delete(c),o.code(401).send("Unauthorized");return}u.lastUsedAt=Date.now(),a.embyToken=c,a.embySession=u,a.embyUser={Id:u.userId,Name:u.userName}}),t.addHook("preHandler",async i=>{if(!s.config.requestLog)return;i[Ile]=process.hrtime.bigint();let a=qNr(i),o=QE(i.query||{}),c=i.body===void 0?void 0:QE(i.body),u=t.embyExtractToken(i),l=u?s6(u):"-",d=Object.keys(o).length>0?` query=${JSON.stringify(o)}`:"",f=c!==void 0?` body=${JSON.stringify(c)}`:"";console.log(`[Emby Req] #${i.id} ${i.method} ${i.raw.url} route=${a}${d}${f} token=${l}`)}),t.addHook("onError",async(i,a,o)=>{if(!s.config.requestLog)return;let c=i[Ile],u=typeof c=="bigint"?(Number(process.hrtime.bigint()-c)/1e6).toFixed(1):"-",l=a.statusCode||o.statusCode||500;console.error(`[Emby Err] #${i.id} ${i.method} ${i.raw?.url||i.url} status=${l} cost=${u}ms message=${o.message}`)}),t.addHook("onResponse",async(i,a)=>{if(!s.config.requestLog)return;let o=i[Ile],c=typeof o=="bigint"?(Number(process.hrtime.bigint()-o)/1e6).toFixed(1):"-";console.log(`[Emby Res] #${i.id} ${i.method} ${i.raw.url} status=${a.statusCode} cost=${c}ms`)}),t.setNotFoundHandler((i,a)=>{if(s.config.requestLog){let o=QE(i.query||{}),c=i.body===void 0?void 0:QE(i.body),u=t.embyExtractToken(i),l=u?s6(u):"-",d=Object.keys(o).length>0?` query=${JSON.stringify(o)}`:"",f=c!==void 0?` body=${JSON.stringify(c)}`:"";console.warn(`[Emby 404] ${i.method} ${i.raw.url}${d}${f} token=${l}`)}a.code(404).send("Not Found")}),t.addHook("onClose",async()=>{s.tokens.clear(),s.cache.clear(),s.tmdbStore?.memory?.clear?.(),s.tmdbStore?.pending?.clear?.(),s.tmdbStore=null,s.tmdbClientState=null,s.playbackPersistTimer&&(clearTimeout(s.playbackPersistTimer),s.playbackPersistTimer=null),globalThis.__catpawEmbyRuntime===s&&(globalThis.__catpawEmbyRuntime=null)}),t.register(Xue,{prefix:"/System"}),t.register(Jue,{prefix:"/Users"}),t.register(ele,{prefix:"/Library"}),t.register(ple,{prefix:"/Users"}),t.register(ble,{prefix:"/Items"}),t.register(Sle,{prefix:"/Videos"}),t.register(Cle)}function Rle(t={},e={}){let r=e.includeSecrets===!0;return{enable:t.enable!==!1,username:String(t.username||""),password:String(t.password||""),serverName:String(t.serverName||""),searchSourcePrefix:t.searchSourcePrefix!==!1,tmdbEnable:t.tmdbEnable!==!1,...r?{tmdbApiKey:String(t.tmdbApiKey||"")}:{},tmdbLanguage:String(t.tmdbLanguage||"zh-CN"),tmdbImageBase:String(t.tmdbImageBase||"https://image.tmdb.org/t/p/original")}}async function apt(t){let e=await t.db.getObjectDefault("/emby",null);return e&&typeof e=="object"?e:{}}function opt(){let t=globalThis.__catpawEmbyRuntime;return t&&typeof t=="object"?t:null}function cpt(t={}){let e=opt();if(!e?.config)return;let r=String(e.config.username||""),n=String(e.config.password||""),s=String(e.config.tmdbApiKey||""),i=Object.prototype.hasOwnProperty.call(t,"tmdbApiKey"),a=String(t.username||r),o=String(i?t.tmdbApiKey||"":e.config.tmdbApiKey||"");Object.assign(e.config,{enable:t.enable!==!1,username:a,password:String(t.password||""),serverName:String(t.serverName||e.config.serverName||""),searchSourcePrefix:t.searchSourcePrefix!==!1,tmdbEnable:t.tmdbEnable!==!1,tmdbApiKey:o,tmdbLanguage:String(t.tmdbLanguage||e.config.tmdbLanguage||"zh-CN"),tmdbImageBase:String(t.tmdbImageBase||e.config.tmdbImageBase||"https://image.tmdb.org/t/p/original")}),e.user.name=a,r!==e.config.username||n!==e.config.password?e.tokens?.clear():e.tokens?.size&&e.tokens.forEach(l=>{l.userName=e.config.username}),s!==o&&(e.tmdbStore?.memory?.clear?.(),e.tmdbStore?.pending?.clear?.(),e.tmdbClientState=null)}var HNr=async t=>{let e=await apt(t),r=E2({...t.config?.emby||{},...e});return Rle(r,{includeSecrets:!0})},QNr=async(t,e)=>{let r=await apt(t),n=E2({...t.config?.emby||{},...r,...e&&typeof e=="object"?e:{}}),s=Rle(n,{includeSecrets:!0});return await t.db.push("/emby",s),cpt(s),s},GNr=async t=>{await t.db.delete("/emby");let e=Rle(E2(t.config?.emby||{}),{includeSecrets:!0});return cpt(e),e},VNr=async t=>{let e=opt();e?.tmdbStore?.memory?.clear?.(),e?.tmdbStore?.pending?.clear?.(),e&&(e.tmdbStore=null,e.tmdbClientState=null),await t.db.delete("/embyTmdb").catch(()=>{})};async function Nle(t){t.get("/setting",async(e,r)=>{r.send({code:0,data:await HNr(e.server)})}),t.put("/setting",async(e,r)=>{await QNr(e.server,e.body||{}),r.send({code:0})}),t.delete("/setting",async(e,r)=>{await GNr(e.server),r.send({code:0})}),t.post("/tmdb/cache/clear",async(e,r)=>{await VNr(e.server),r.send({code:0})})}var zNr=t=>{let e=Zw(t,{includePrefix:!1}).replace(/\/$/,""),r=wM()?TM():null;return[{key:"t4",name:"T4 \u8BA2\u9605",url:e2(e,"/t4")},{key:"uz",name:"UZ \u8BA2\u9605",url:e2(e,"/uz")},{key:"cat",name:"\u732B\u6E90\u8BA2\u9605",url:e2(e,"/index.js.md5",r)},{key:"emby",name:"Emby \u670D\u52A1\u5668",url:e2(e,"/emby")}]};async function Ole(t){t.get("/",(e,r)=>{r.type("text/html").send(` + ${ope(n)} + ${ope(s)} +`}function x6r(t=""){return String(t||"Primary").trim().toLowerCase()==="primary"}function dpe(t,e="Primary"){return x6r(e)&&["lib","cat"].includes(t?.type)}async function ryt(t,e,r){if(!dpe(e,r?.params?.imageType||"Primary"))return null;let{width:n,height:s}=c6r(r?.query||{}),i=wm(["emby","dynamic-cover-v2",e.type,JSON.stringify(e.payload||{}),n,s]);return yp(t.embyContext?.cache,i,V5r,async()=>{let a=await a6r(t,e,r),o=await u6r(),c=o?await m6r(a.posterUrls,o):[],u=o6r(e,o?c.length:a.posterUrls.length),l=o?await h6r(o,c,u.title):iW(u.title),d=A6r({width:n,height:s,title:u.title,subtitle:u.subtitle,countText:u.countText,posterImages:c,palette:l});return o?{buffer:await o(Buffer.from(d,"utf8"),{density:96}).png({compressionLevel:8,adaptiveFiltering:!0}).toBuffer(),contentType:"image/png"}:{buffer:Buffer.from(d,"utf8"),contentType:"image/svg+xml; charset=utf-8"}})}var b6r=!1;function _6r(t,e,r={}){if(t.embyContext?.config?.requestLog)try{console.log(`[Emby Transform] ${e}:`,JSON.stringify(r))}catch{}}async function nyt(t,e={}){if(e.u)return String(e.u);let r=xd(e),n=String(e.v||"");if(!r.spiderKey||!n)return"";let s=await qc(t,r,n).catch(()=>null),i=jc(s);return String(i?.vod_pic||"")}function E6r(t,e="Primary",r={}){let n=String(e||"Primary").trim().toLowerCase();return String(r?.tag||r?.Tag||"").trim().toLowerCase()==="tmdb"||t?.type!=="vod"?!0:["backdrop","thumb","banner","logo"].includes(n)}async function v6r(t,e,r="Primary",n={}){if(e?.type==="vod"&&!E6r(e,r,n)){let i=await nyt(t,e?.payload||{});if(i)return i}let s=await Bgt(t,e,r).catch(()=>"");return s||(e?.type==="img"?String(e?.payload?.u||""):nyt(t,e?.payload||{}))}function syt(t){if(!t?.payload||typeof t.payload!="object")return null;let e=t.payload;return t.type==="media"||t.type==="ep"?{k:String(e.k||""),t:Number(e.t||3),v:String(e.v||""),l:Number(e.l||0),e:Number(e.e||0),f:String(e.f||""),p:String(e.p||""),a:String(e.a||"")}:null}async function S6r(t,e,r=""){let n=syt(e);if(n)return n;if(r&&["vod","sea"].includes(e.type)){let p=DR(t,r,wn(e.type,e.payload||{})),m=syt(p?.decoded);if(m?.k&&m?.f&&m?.p)return m}let s=e.payload||{};if(!["vod","sea"].includes(e.type))return null;let i=xd(s),a=String(s.v||"");if(!i.spiderKey||!a)return null;let o=await qc(t,i,a).catch(()=>null),c=jc(o);if(!c)return null;let u=Io(c.vod_play_from,c.vod_play_url);if(!u.length)return null;let l=e.type==="sea"?Number(s.l||0):0,d=u[l]||u[0];if(!d||!d.episodes.length)return null;let f=d.episodes[0];return{k:i.spiderKey,t:i.spiderType,v:a,l,e:0,f:String(d.flag||""),p:String(f.playId||""),...i.apiBase?{a:i.apiBase}:{}}}function I6r(t=""){let e=String(t||"").trim();if(!e)return"mkv";if(/\.m3u8($|\?)/i.test(e))return"m3u8";try{let n=new URL(e).pathname.match(/\.([a-z0-9]{2,6})$/i);if(n?.[1])return n[1].toLowerCase()}catch{}return"mkv"}function C6r(t=""){try{let e=String(new URL(String(t||"")).hostname||"").toLowerCase();return e.includes("mcloud.139.com")||e.includes("yun.139.com")}catch{return!1}}async function T6r(t,e,r){let n={spiderKey:e.k,spiderType:Number(e.t||3),apiBase:String(e.a||"")},s=await Rm(t,n,e.f,e.p,r).catch(()=>null),i=km(s||{},""),a=String(i.url||"");return{container:I6r(a),requiredHeaders:i.header||{},directUrl:a,useDirectUrl:b6r&&C6r(a)}}function w6r(t){let r=String(t.headers?.["x-forwarded-proto"]||"").split(",")[0].trim()||t.protocol||"http",s=String(t.headers?.["x-forwarded-host"]||"").split(",")[0].trim()||t.headers?.host||"127.0.0.1";return`${r}://${s}`}function R6r(t="mkv"){return/^[a-z0-9]{2,8}$/i.test(String(t||""))?String(t).toLowerCase():"mkv"}function iyt(t,e,r="mkv",n=!1){let s=R6r(r),i=n&&t.embyToken?`?api_key=${encodeURIComponent(t.embyToken)}`:"";return`/videos/${String(e||"")}/stream.${s}${i}`}function N6r(t,e,r="mkv",n=!0){return`${w6r(t)}/emby${iyt(t,e,r,n)}`}async function fpe(t){t.get("/",{preHandler:t.embyRequireAuth},async(e,r)=>{let n=e.query||{},s=String(n.userid||n.UserId||e.embyUser?.Id||t.embyContext.user.id),i=new URLSearchParams;Object.keys(n).forEach(c=>{if(c==="userid"||c==="UserId")return;let u=n[c];u!=null&&i.set(c,String(u))});let a=`/emby/Users/${encodeURIComponent(s)}/Items`,o=i.toString();o&&(a+=`?${o}`),r.redirect(301,a)}),t.get("/:itemId/Images/:imageType",async(e,r)=>{let n=Fs(e.params.itemId);if(!n)return r.code(404),"";if(dpe(n,e.params.imageType||"Primary")){let i=await ryt(t,n,e).catch(()=>null);if(i?.buffer?.length)return r.header("Content-Type",i.contentType||"image/png"),r.header("Cache-Control","public, max-age=1800"),r.header("Content-Length",String(i.buffer.length)),r.send(i.buffer)}let s=await v6r(t,n,e.params.imageType||"Primary",e.query||{});if(!s)return r.code(404),"";try{let i=new URL(s);if(!["http:","https:"].includes(i.protocol))return r.code(403),""}catch{return r.code(404),""}try{let i=await he.get(s,{responseType:"stream",timeout:1e4,headers:{"User-Agent":"Mozilla/5.0 EmbyImageProxy"}}),a=i.headers?.["content-type"]||"image/jpeg";return r.header("Content-Type",a),r.header("Cache-Control","public, max-age=86400"),i.headers?.["content-length"]&&r.header("Content-Length",i.headers["content-length"]),r.send(i.data)}catch{return r.code(502),""}}),t.all("/:itemId/PlaybackInfo",{preHandler:t.embyRequireAuth},async(e,r)=>{if(!["GET","POST"].includes(e.method))return r.code(405),"";let n=e.params.itemId,s=Fs(n);if(!s)return r.code(404),{};let i=e.embyUser?.Id||t.embyContext.user.id,a=await S6r(t,s,i);if(!a||!a.k||!a.f||!a.p)return r.code(404),{};let o=wn("media",{k:String(a.k||""),t:Number(a.t||3),v:String(a.v||""),l:Number(a.l||0),e:Number(a.e||0),f:String(a.f||""),...a.a?{a:String(a.a||"")}:{}}),c=await T6r(t,a,e),u=N6r(e,o,c.container,!0),l=c.useDirectUrl&&c.directUrl?c.directUrl:u,d=c.useDirectUrl&&c.directUrl?c.directUrl:iyt(e,o,c.container,!0),f=!1,p=c.useDirectUrl?c.requiredHeaders||{}:{};return _6r(t,"playback.info",{itemId:n,mediaId:o,spiderKey:a.k,lineFlag:a.f,container:c.container,useDirectUrl:c.useDirectUrl,streamUrl:l,directStreamUrl:d,hasRequiredHeaders:Object.keys(p).length>0,addApiKeyToDirectStreamUrl:f}),{MediaSources:[{Id:o,Name:"\u9ED8\u8BA4",Type:"Default",Protocol:"Http",Container:c.container,IsRemote:!0,SupportsTranscoding:!1,SupportsDirectStream:!0,SupportsDirectPlay:!0,IsInfiniteStream:!1,RequiresOpening:!1,RequiresClosing:!1,RequiresLooping:!1,SupportsProbing:!1,MediaStreams:[],RequiredHttpHeaders:p,Path:l,DirectStreamUrl:d,AddApiKeyToDirectStreamUrl:f,ItemId:o}],PlaySessionId:n}}),t.get("/:itemId/Similar",{preHandler:t.embyRequireAuth},async()=>Ft([])),t.get("/Counts",{preHandler:t.embyRequireAuth},async()=>({MovieCount:0,SeriesCount:0,EpisodeCount:0,GameCount:0,ArtistCount:0,ProgramCount:0,GameSystemCount:0,TrailerCount:0,SongCount:0,AlbumCount:0,MusicVideoCount:0,BoxSetCount:0,BookCount:0,ItemCount:0}))}var O6r=new Set(["tgchannel","tgsou","pansou","panta"]);function ppe(t){try{return decodeURIComponent(String(t||""))}catch{return String(t||"")}}function k6r(t=""){let e=String(t||""),r=[e,ppe(e),ppe(ppe(e))];for(let n of r){let s=Fs(n);if(s)return s}return null}function P6r(t={}){return{k:String(t.k||""),t:Number(t.t||3),v:String(t.v||""),l:Number(t.l||0),e:Number(t.e||0),f:String(t.f||""),p:String(t.p||""),a:String(t.a||"")}}async function D6r(t,e={}){let r=P6r(e);if(!r.k||!r.v)return null;if(r.f&&r.p)return r;let n={spiderKey:r.k,spiderType:r.t,apiBase:r.a},s=await qc(t,n,r.v).catch(()=>null),i=jc(s);if(!i)return null;let a=Io(i.vod_play_from,i.vod_play_url).filter(f=>Array.isArray(f?.episodes)&&f.episodes.length>0);if(!a.length)return null;let o=Math.max(0,Math.min(a.length-1,Number(r.l||0))),c=a[o],u=Array.isArray(c?.episodes)?c.episodes:[];if(!u.length)return null;let l=Math.max(0,Math.min(u.length-1,Number(r.e||0))),d=u[l];return d?.playId?{...r,l:o,e:l,f:r.f||String(c.flag||""),p:String(d.playId||"")}:null}async function B6r(t,e){if(!e)return null;if(e.type==="media"||e.type==="ep")return D6r(t,e.payload||{});if(!["vod","sea"].includes(e.type))return null;let r=e.payload||{},n=xd(r),s=String(r.v||"");if(!n.spiderKey||!s)return null;let i=await qc(t,n,s).catch(()=>null),a=jc(i);if(!a)return null;let o=Io(a.vod_play_from,a.vod_play_url);if(!o.length)return null;let c=e.type==="sea"?Number(r.l||0):0,u=o[c]||o[0];if(!u||!u.episodes.length)return null;let l=u.episodes[0];return{k:n.spiderKey,t:n.spiderType,v:s,l:c,e:0,f:String(u.flag||""),p:String(l.playId||""),...n.apiBase?{a:n.apiBase}:{}}}function L6r(t,e={}){let r={"User-Agent":t.headers?.["user-agent"]||"Mozilla/5.0 EmbyVideoProxy"};return t.headers?.range&&(r.Range=t.headers.range),e&&typeof e=="object"&&Object.keys(e).forEach(n=>{let s=e[n];s!=null&&(r[n]=String(s))}),r}async function ayt(t,e,r,n){let s=await he.get(r,{responseType:"stream",timeout:3e4,maxRedirects:5,validateStatus:()=>!0,headers:L6r(t,n)}),i=["content-type","content-length","accept-ranges","content-range","cache-control","etag","last-modified"];return e.code(s.status),i.forEach(a=>{let o=s.headers?.[a];o!=null&&e.header(a,o)}),e.send(s.data)}function M6r(t={},e=""){if(O6r.has(String(t.k||"")))return!0;try{let r=String(new URL(String(e||"")).hostname||"").toLowerCase();return r.includes("mcloud.139.com")||r.includes("yun.139.com")}catch{return!1}}function W6r(t=""){try{return new URL(String(t||"")).toString()}catch{return String(t||"")}}async function mpe(t,e,r,n=""){let s=k6r(e.params.mediaId);if(!s)return r.code(404),"";let i=await B6r(t,s);if(!i||!i.k||!i.f||!i.p)return r.code(404),"";let a={spiderKey:i.k,spiderType:i.t,apiBase:String(i.a||"")},o=await Rm(t,a,i.f,i.p,e).catch(()=>null),c=km(o||{},String(e.query?.line||""));if(!c.url)return r.code(404),"";let u=String(n||"").trim(),l=u;try{let d=String(e.raw?.url||""),f=`/${String(e.params.mediaId||"")}/`,p=d.indexOf(f);if(p>=0){let m=d.slice(p+f.length).trim();m&&(l=m)}}catch{}if(u&&!/^stream\./i.test(u))try{let d=new URL(c.url),f=new URL(l||u,d);return ayt(e,r,f.toString(),c.header)}catch{return r.code(400),""}try{let d=new URL(c.url);if(!["http:","https:"].includes(d.protocol))return r.code(403),""}catch{return r.code(400),""}return M6r(i,c.url)||Object.keys(c.header||{}).length>0?ayt(e,r,c.url,c.header):r.redirect(307,W6r(c.url))}async function hpe(t){let e=async(r,n)=>{t.embyExtractToken(r)&&await t.embyRequireAuth(r,n)};t.get("/:mediaId/AdditionalParts",{preHandler:e},async()=>Ft([])),t.get("/:mediaId/stream.mkv",{preHandler:e},async(r,n)=>mpe(t,r,n,"stream.mkv")),t.get("/:mediaId/:fileName",{preHandler:e},async(r,n)=>mpe(t,r,n,String(r.params.fileName||""))),t.get("/:mediaId/*",{preHandler:e},async(r,n)=>mpe(t,r,n,String(r.params["*"]||""))),t.get("/:mediaId/subtitles/:subtitleId",{preHandler:e},async(r,n)=>(n.code(404),""))}var $6r=new Set(["tgchannel","tgsou","pansou","panta"]),U6r=!1;function F6r(t=""){return/(移动|yidong|139)/i.test(String(t||""))}function q6r(t=""){try{let e=String(new URL(String(t||"")).hostname||"").toLowerCase();return e.includes("mcloud.139.com")||e.includes("yun.139.com")}catch{return!1}}function oyt(t="",e="mkv"){let r=String(t||"").trim();if(!r)return e;if(/\.m3u8($|\?)/i.test(r))return"m3u8";try{let s=new URL(r).pathname.match(/\.([a-z0-9]{2,6})$/i);if(s?.[1])return s[1].toLowerCase()}catch{}return e}function j6r(t,e,r={}){if(t.embyContext?.config?.requestLog)try{console.log(`[Emby Transform] ${e}:`,JSON.stringify(r))}catch{}}function Q6r(t){let r=String(t?.headers?.["x-forwarded-proto"]||"").split(",")[0].trim()||t?.protocol||"http",s=String(t?.headers?.["x-forwarded-host"]||"").split(",")[0].trim()||t?.headers?.host||"127.0.0.1";return`${r}://${s}`}function H6r(t,e,r="mkv"){return`${Q6r(t)}/emby${lyt(t,e,r,!0)}`}function lyt(t,e,r="mkv",n=!1){let s=/^[a-z0-9]{2,8}$/i.test(String(r||""))?String(r).toLowerCase():"mkv",i=n&&t?.embyToken?`?api_key=${encodeURIComponent(t.embyToken)}`:"";return`/videos/${String(e||"")}/stream.${s}${i}`}async function G6r(t,e,r,n="\u9ED8\u8BA4"){let s=wn("media",{k:String(r?.k||""),t:Number(r?.t||3),v:String(r?.v||""),l:Number(r?.l||0),e:Number(r?.e||0),f:String(r?.f||n||""),...r?.a?{a:String(r.a||"")}:{}}),i=$6r.has(String(r?.k||""))?"m3u8":"mkv",a=oyt(String(r?.p||""),i),o=H6r(e,s,a),c=lyt(e,s,a,!0),u={},l=!1,d=String(n||r?.f||"");if(U6r&&F6r(d)&&r?.k&&r?.f&&r?.p){let p={spiderKey:String(r.k||""),spiderType:Number(r.t||3),apiBase:String(r.a||"")},m=await Rm(t,p,String(r.f||""),String(r.p||""),e).catch(()=>null),h=km(m||{},String(n||""));h.url&&q6r(h.url)&&(a=oyt(h.url,a),o=h.url,c=h.url,u=h.header||{},l=!1)}return{Id:s,Name:n,Type:"Default",Protocol:"Http",Container:a,IsRemote:!0,SupportsTranscoding:!1,SupportsDirectStream:!0,SupportsDirectPlay:!0,IsInfiniteStream:!1,SupportsProbing:!1,MediaStreams:[],RequiredHttpHeaders:u,Path:o,DirectStreamUrl:c,AddApiKeyToDirectStreamUrl:l,ItemId:s}}async function z6r(t,e,r,n,s,i){let a=String(r?.vod_name||""),o=String(r?.vod_pic||"").trim(),c=String(r?.tmdbHintRemarks||r?.vod_remarks||"").trim(),u=String(r?.tmdbHintYear||r?.vod_year||"").trim(),l=[],d=new Map;for(let f=0;fe+(Array.isArray(r?.line?.episodes)?r.line.episodes.length:0),0)}async function dyt(t,e,r,n,s,i,a,o=1/0){let c=[],u=Number(o),l=Number.isFinite(u)&&u>0?Math.floor(u):1/0;for(let d of s){let f=Array.isArray(d?.line?.episodes)?d.line.episodes:[],p=Number(d?.episodeOffset||0),m=await JM(t,{spiderRef:r,vod:n,line:d?.line,lineIndex:Number(d?.lineIndex||0),episodes:f,episodeOffset:p});for(let h=0;h=l)return c}}return c}function fyt(t,e){if(!t?.payload||typeof t.payload!="object"||t.type==="vod")return e;let r=t.payload,n=String(r.k||""),s=String(r.v||"");return!n||!s?e:wn("vod",{k:n,t:Number(r.t||3),v:s,...r.a?{a:String(r.a||"")}:{},...r.n?{n:String(r.n||"")}:{},...r.u?{u:String(r.u||"")}:{}})}function pyt(t=[],e={},r=null){let n=String(Jr(e,["seasonid","SeasonId","seasonId"],""));if(n){let i=Fs(n);if(i?.type==="sea"){let a=Number(i.payload?.l||0),o=t[a];return o?[{line:o,lineIndex:a}]:[]}}let s=Number(Jr(e,["season","Season"],NaN));if(Number.isFinite(s)&&s>0){let i=s-1,a=t[i];return a?[{line:a,lineIndex:i}]:[]}if(r?.type==="sea"){let i=Number(r.payload?.l||0),a=t[i];return a?[{line:a,lineIndex:i}]:[]}if(r?.type==="ep"){let i=Number(r.payload?.l||0),a=Number(r.payload?.e||0),o=t[i];return!o||!o.episodes[a]?[]:[{line:{...o,episodes:[o.episodes[a]]},lineIndex:i,episodeOffset:a}]}return t.map((i,a)=>({line:i,lineIndex:a}))}function Y6r(t,e,r,n=[]){let i=DR(t,e,r)?.decoded?.payload||null;if(!i)return n;let a=Number(i.l||0),o=Number(i.e||0),c=n.find(l=>Number(l?.lineIndex||0)===a),u=Array.isArray(c?.line?.episodes)?c.line.episodes:[];return u[o]?[{...c,episodeOffset:o,line:{...c.line,episodes:u.slice(o)}}]:n}async function gpe(t,e){let r=Fs(e);if(!r||!["vod","sea","ep"].includes(r.type))return null;let n=r.payload||{},s=xd(n),i=String(n.v||"");if(!s.spiderKey||!i)return null;let a=await qc(t,s,i).catch(()=>null),o=jc(a);if(!o)return null;Zy(o,n),!String(o?.vod_pic||"").trim()&&n?.u&&(o.vod_pic=String(n.u||"").trim());let c=Io(o.vod_play_from,o.vod_play_url);return c.length?{decoded:r,spiderRef:s,vod:o,lines:c}:null}async function cyt(t,e,r={},n=null){let s=await gpe(t,e);if(!s)return[];let{decoded:i,spiderRef:a,vod:o,lines:c}=s,u=pyt(c,r,i);if(!u.length)return[];let l=fyt(i,e);return dyt(t,n,a,o,u,l,t.embyContext.config.serverId)}async function uyt(t,e){let r=await gpe(t,e);if(!r)return[];let{spiderRef:n,vod:s,lines:i}=r;return z6r(t,n,s,i,e,t.embyContext.config.serverId)}async function ype(t){let e={preHandler:t.embyRequireAuth};t.get("/Persons",e,async()=>Ft([])),t.get("/Genres",e,async()=>Ft([])),t.get("/Tags",e,async()=>Ft([])),t.get("/OfficialRatings",e,async()=>Ft([])),t.get("/Years",e,async()=>Ft([])),t.get("/Studios",e,async()=>Ft([])),t.get("/Shows/NextUp",e,async r=>{let n=r.query||{},s=String(Jr(n,["SeriesId","seriesId"],"")).trim(),i=Hu(Jr(n,["Limit","limit"],1),1),a=r.embyUser?.Id||t.embyContext.user.id;if(!s)return Ft([]);let o=await gpe(t,s);if(!o)return Ft([]);let{decoded:c,spiderRef:u,vod:l,lines:d}=o,f=fyt(c,s),p=Y6r(t,a,f,pyt(d,n,c));if(!p.length)return Ft([]);let m=V6r(p),h=qs(t,a,await dyt(t,r,u,l,p,f,t.embyContext.config.serverId,i));return j6r(t,"nextup.result",{seriesId:s,total:m,first:h[0]?{id:h[0].Id,type:h[0].Type,canPlay:h[0].CanPlay,mediaSourceCount:Array.isArray(h[0].MediaSources)?h[0].MediaSources.length:0}:null}),Ft(h,m)}),t.get("/Shows/:seriesId/Seasons",e,async r=>{let n=r.query||{},s=Number(Jr(n,["StartIndex","startindex"],0)),i=Hu(Jr(n,["Limit","limit"],150),150),a=String(r.params.seriesId||""),o=r.embyUser?.Id||t.embyContext.user.id,c=qs(t,o,await uyt(t,a));return Ft(Ba(c,s,i),c.length)}),t.get("/Shows/:seriesId/Episodes",e,async r=>{let n=r.query||{},s=Number(Jr(n,["StartIndex","startindex"],0)),i=Hu(Jr(n,["Limit","limit"],150),150),a=String(r.params.seriesId||""),o=r.embyUser?.Id||t.embyContext.user.id,c=qs(t,o,await cyt(t,a,n,r));return Ft(Ba(c,s,i),c.length)}),t.get("/Items/:itemId/Seasons",e,async r=>{let n=r.query||{},s=Number(Jr(n,["StartIndex","startindex"],0)),i=Hu(Jr(n,["Limit","limit"],150),150),a=String(r.params.itemId||""),o=r.embyUser?.Id||t.embyContext.user.id,c=qs(t,o,await uyt(t,a));return Ft(Ba(c,s,i),c.length)}),t.get("/Items/:itemId/Episodes",e,async r=>{let n=r.query||{},s=Number(Jr(n,["StartIndex","startindex"],0)),i=Hu(Jr(n,["Limit","limit"],150),150),a=String(r.params.itemId||""),o=r.embyUser?.Id||t.embyContext.user.id,c=qs(t,o,await cyt(t,a,n,r));return Ft(Ba(c,s,i),c.length)}),t.get("/Sessions",e,async r=>[{PlayState:{CanSeek:!0,IsPaused:!1,IsMuted:!1,RepeatMode:"RepeatNone",SleepTimerMode:"None",SubtitleOffset:0,Shuffle:!1,PlaybackRate:1},AdditionalUsers:[],RemoteEndPoint:"mycatpaw",Protocol:"HTTP/1.1",PlayableMediaTypes:["Video"],PlaylistIndex:0,PlaylistLength:0,Id:t.embyContext.config.serverId,ServerId:t.embyContext.config.serverId,UserId:r.embyUser?.Id||"",UserName:r.embyUser?.Name||"",Client:"",LastActivityDate:Us(),DeviceName:"",InternalDeviceId:0,DeviceId:"",ApplicationVersion:t.embyContext.config.version,SupportedCommands:[],SupportsRemoteControl:!1}]),t.post("/Sessions/Playing",e,async(r,n)=>{let s=r.embyUser?.Id||t.embyContext.user.id;await BR(t,s,r.body||{},"playing"),n.code(204).send()}),t.post("/Sessions/Playing/Progress",e,async(r,n)=>{let s=r.embyUser?.Id||t.embyContext.user.id;await BR(t,s,r.body||{},"progress"),n.code(204).send()}),t.post("/Sessions/Playing/Stopped",e,async(r,n)=>{let s=r.embyUser?.Id||t.embyContext.user.id;await BR(t,s,r.body||{},"stopped"),n.code(204).send()}),t.post("/Sessions/Playing/Ping",e,async(r,n)=>{let s=r.embyUser?.Id||t.embyContext.user.id;await BR(t,s,r.body||{},"ping"),n.code(204).send()}),t.get("/DisplayPreferences/Usersettings",e,async()=>({Id:"usersettings",CustomPrefs:{},SortOrder:"Ascending"})),t.get("/Environment/DefaultDirectoryBrowser",e,async()=>Ft([]))}function myt(t){return t&&String(t).match(/Token="?([^",\s]+)"?/i)?.[1]||""}var Ape=Symbol("embyLogStartAt"),J6r=/(token|password|passwd|pwd|pw|authorization|cookie|api[_-]?key|session)/i;function aW(t){let e=String(t??"");return e?e.length<=6?"***":`${e.slice(0,2)}***${e.slice(-2)}`:""}function J_(t,e=0,r=new WeakSet){if(t==null)return t;if(typeof t=="string")return t.length>240?`${t.slice(0,240)}...(truncated)`:t;if(typeof t!="object")return t;if(r.has(t))return"[Circular]";if(e>=3)return"[MaxDepth]";if(r.add(t),Array.isArray(t))return t.slice(0,10).map(s=>J_(s,e+1,r));let n={};for(let[s,i]of Object.entries(t)){if(J6r.test(s)){n[s]=aW(i);continue}n[s]=J_(i,e+1,r)}return n}function X6r(t){return t.routeOptions?.url||t.url||t.raw?.url||""}function xpe(t,e){if(t==null||t==="")return e;let r=String(t).trim().toLowerCase();return["0","false","off","no"].includes(r)?!1:["1","true","on","yes"].includes(r)?!0:e}function Z6r(t,e,r){let n=String(e||"").trim();if(!n){r(null,{});return}try{r(null,JSON.parse(n))}catch(s){s.statusCode=400,r(s)}}function HR(t={}){let e=String(process.env.EMBY_TMDB_API_KEY||t.tmdbApiKey||"");return{enable:t.enable!==!1,username:String(process.env.EMBY_USERNAME||t.username||"CatPawPlay"),password:String(process.env.EMBY_PASSWORD||t.password||"CatPawPlay"),serverName:String(process.env.EMBY_SERVER_NAME||t.serverName||"CatPawPlay"),serverId:String(process.env.EMBY_SERVER_ID||t.serverId||"mycatpaw"),version:String(process.env.EMBY_VERSION||t.version||"4.8.0.80"),apiKey:String(process.env.EMBY_API_KEY||t.apiKey||""),searchSourcePrefix:xpe(process.env.EMBY_SEARCH_SOURCE_PREFIX,t.searchSourcePrefix!==!1),tokenTtlMs:Number(t.tokenTtlMs||30*24*60*60*1e3),requestLog:xpe(process.env.EMBY_REQUEST_LOG,process.env.NODE_ENV==="development"?t.requestLog!==!1:t.requestLog===!0),recoverToken:t.recoverToken!==!1&&process.env.EMBY_RECOVER_TOKEN!=="0",tmdbEnable:xpe(process.env.EMBY_TMDB_ENABLE,t.tmdbEnable!==!1&&!!e),tmdbApiKey:e,tmdbLanguage:String(process.env.EMBY_TMDB_LANGUAGE||t.tmdbLanguage||"zh-CN"),tmdbImageBase:String(process.env.EMBY_TMDB_IMAGE_BASE||t.tmdbImageBase||"https://image.tmdb.org/t/p/original")}}async function bpe(t){let e=null;try{e=await t.db?.getObjectDefault("/emby",null)}catch{}let r=null;try{r=await t.db?.getObjectDefault("/embyPlayback",null)}catch{}let n=HR({...t.config?.emby||{},...e&&typeof e=="object"?e:{}}),s={config:n,cache:TM({max:1200}),tmdbStore:null,tmdbClientState:null,tokens:new Map,user:{id:"emby-user-001",name:n.username},playbackState:zM(r),playbackPersistTimer:null};globalThis.__catpawEmbyRuntime=s,t.addContentTypeParser("application/json",{parseAs:"string"},Z6r),t.addContentTypeParser("application/x-www-form-urlencoded",{parseAs:"string"},(i,a,o)=>{try{let c=new URLSearchParams(String(a)),u={};for(let[l,d]of c.entries())u[l]=d;o(null,u)}catch(c){o(c)}}),t.decorate("embyContext",s),t.decorate("embyExtractToken",function(a){let o=a.query||{};return o["x-emby-token"]||o.api_key||o["X-Emby-Token"]||a.headers?.["x-emby-token"]||myt(a.headers?.["x-emby-authorization"])||myt(a.headers?.authorization)||""}),t.decorate("embyRequireAuth",async function(a,o){if(!s.config.enable){o.code(503).send("Emby disabled");return}let c=t.embyExtractToken(a);if(!c){o.code(401).send("Unauthorized");return}if(s.config.apiKey&&c===s.config.apiKey){a.embyToken=c,a.embyUser={Id:s.user.id,Name:s.user.name};return}let u=s.tokens.get(c);if(!u){if(!s.config.recoverToken){o.code(401).send("Unauthorized");return}let l=Date.now();u={token:c,userId:s.user.id,userName:s.user.name,createdAt:l,lastUsedAt:l,expireAt:s.config.tokenTtlMs>0?l+s.config.tokenTtlMs:0,device:{client:"RecoveredClient",device:"RecoveredDevice",deviceId:"",version:s.config.version}},s.tokens.set(c,u),s.config.requestLog&&console.warn(`[Emby Auth] recovered token session token=${aW(c)} path=${a.raw?.url||a.url}`)}if(u.expireAt>0&&u.expireAt<=Date.now()){s.tokens.delete(c),o.code(401).send("Unauthorized");return}u.lastUsedAt=Date.now(),a.embyToken=c,a.embySession=u,a.embyUser={Id:u.userId,Name:u.userName}}),t.addHook("preHandler",async i=>{if(!s.config.requestLog)return;i[Ape]=process.hrtime.bigint();let a=X6r(i),o=J_(i.query||{}),c=i.body===void 0?void 0:J_(i.body),u=t.embyExtractToken(i),l=u?aW(u):"-",d=Object.keys(o).length>0?` query=${JSON.stringify(o)}`:"",f=c!==void 0?` body=${JSON.stringify(c)}`:"";console.log(`[Emby Req] #${i.id} ${i.method} ${i.raw.url} route=${a}${d}${f} token=${l}`)}),t.addHook("onError",async(i,a,o)=>{if(!s.config.requestLog)return;let c=i[Ape],u=typeof c=="bigint"?(Number(process.hrtime.bigint()-c)/1e6).toFixed(1):"-",l=a.statusCode||o.statusCode||500;console.error(`[Emby Err] #${i.id} ${i.method} ${i.raw?.url||i.url} status=${l} cost=${u}ms message=${o.message}`)}),t.addHook("onResponse",async(i,a)=>{if(!s.config.requestLog)return;let o=i[Ape],c=typeof o=="bigint"?(Number(process.hrtime.bigint()-o)/1e6).toFixed(1):"-";console.log(`[Emby Res] #${i.id} ${i.method} ${i.raw.url} status=${a.statusCode} cost=${c}ms`)}),t.setNotFoundHandler((i,a)=>{if(s.config.requestLog){let o=J_(i.query||{}),c=i.body===void 0?void 0:J_(i.body),u=t.embyExtractToken(i),l=u?aW(u):"-",d=Object.keys(o).length>0?` query=${JSON.stringify(o)}`:"",f=c!==void 0?` body=${JSON.stringify(c)}`:"";console.warn(`[Emby 404] ${i.method} ${i.raw.url}${d}${f} token=${l}`)}a.code(404).send("Not Found")}),t.addHook("onClose",async()=>{s.tokens.clear(),s.cache.clear(),s.tmdbStore?.memory?.clear?.(),s.tmdbStore?.pending?.clear?.(),s.tmdbStore=null,s.tmdbClientState=null,s.playbackPersistTimer&&(clearTimeout(s.playbackPersistTimer),s.playbackPersistTimer=null),globalThis.__catpawEmbyRuntime===s&&(globalThis.__catpawEmbyRuntime=null)}),t.register(Qfe,{prefix:"/System"}),t.register(jfe,{prefix:"/Users"}),t.register(Gfe,{prefix:"/Library"}),t.register(ipe,{prefix:"/Users"}),t.register(fpe,{prefix:"/Items"}),t.register(hpe,{prefix:"/Videos"}),t.register(ype)}function _pe(t={},e={}){let r=e.includeSecrets===!0;return{enable:t.enable!==!1,username:String(t.username||""),password:String(t.password||""),serverName:String(t.serverName||""),searchSourcePrefix:t.searchSourcePrefix!==!1,tmdbEnable:t.tmdbEnable!==!1,...r?{tmdbApiKey:String(t.tmdbApiKey||"")}:{},tmdbLanguage:String(t.tmdbLanguage||"zh-CN"),tmdbImageBase:String(t.tmdbImageBase||"https://image.tmdb.org/t/p/original")}}async function hyt(t){let e=await t.db.getObjectDefault("/emby",null);return e&&typeof e=="object"?e:{}}function gyt(){let t=globalThis.__catpawEmbyRuntime;return t&&typeof t=="object"?t:null}function yyt(t={}){let e=gyt();if(!e?.config)return;let r=String(e.config.username||""),n=String(e.config.password||""),s=String(e.config.tmdbApiKey||""),i=Object.prototype.hasOwnProperty.call(t,"tmdbApiKey"),a=String(t.username||r),o=String(i?t.tmdbApiKey||"":e.config.tmdbApiKey||"");Object.assign(e.config,{enable:t.enable!==!1,username:a,password:String(t.password||""),serverName:String(t.serverName||e.config.serverName||""),searchSourcePrefix:t.searchSourcePrefix!==!1,tmdbEnable:t.tmdbEnable!==!1,tmdbApiKey:o,tmdbLanguage:String(t.tmdbLanguage||e.config.tmdbLanguage||"zh-CN"),tmdbImageBase:String(t.tmdbImageBase||e.config.tmdbImageBase||"https://image.tmdb.org/t/p/original")}),e.user.name=a,r!==e.config.username||n!==e.config.password?e.tokens?.clear():e.tokens?.size&&e.tokens.forEach(l=>{l.userName=e.config.username}),s!==o&&(e.tmdbStore?.memory?.clear?.(),e.tmdbStore?.pending?.clear?.(),e.tmdbClientState=null)}var eMr=async t=>{let e=await hyt(t),r=HR({...t.config?.emby||{},...e});return _pe(r,{includeSecrets:!0})},tMr=async(t,e)=>{let r=await hyt(t),n=HR({...t.config?.emby||{},...r,...e&&typeof e=="object"?e:{}}),s=_pe(n,{includeSecrets:!0});return await t.db.push("/emby",s),yyt(s),s},rMr=async t=>{await t.db.delete("/emby");let e=_pe(HR(t.config?.emby||{}),{includeSecrets:!0});return yyt(e),e},nMr=async t=>{let e=gyt();e?.tmdbStore?.memory?.clear?.(),e?.tmdbStore?.pending?.clear?.(),e&&(e.tmdbStore=null,e.tmdbClientState=null),await t.db.delete("/embyTmdb").catch(()=>{})};async function Epe(t){t.get("/setting",async(e,r)=>{r.send({code:0,data:await eMr(e.server)})}),t.put("/setting",async(e,r)=>{await tMr(e.server,e.body||{}),r.send({code:0})}),t.delete("/setting",async(e,r)=>{await rMr(e.server),r.send({code:0})}),t.post("/tmdb/cache/clear",async(e,r)=>{await nMr(e.server),r.send({code:0})})}var sMr=t=>{let e=ER(t,{includePrefix:!1}).replace(/\/$/,""),r=NM()?RM():null;return[{key:"t4",name:"T4 \u8BA2\u9605",url:vR(e,"/t4")},{key:"uz",name:"UZ \u8BA2\u9605",url:vR(e,"/uz")},{key:"cat",name:"\u732B\u6E90\u8BA2\u9605",url:vR(e,"/index.js.md5",r)},{key:"emby",name:"Emby \u670D\u52A1\u5668",url:vR(e,"/emby")}]};async function vpe(t){t.get("/",(e,r)=>{r.type("text/html").send(` @@ -10615,7 +10681,7 @@ ${J.name||J.address} \u8BF7\u6C42\u5931\u8D25:`),console.log(" - \u9519\u8BEF\u - `)}),t.get("/subscriptions",(e,r)=>{r.send({code:0,data:{endpoints:zNr(e)}})}),t.register(vue,{prefix:"/quark"}),t.register(iV,{prefix:"/uc"}),t.register(Cue,{prefix:"/uc-tv"}),t.register(VV,{prefix:"/115"}),t.register(cae,{prefix:"/muou"}),t.register(mz,{prefix:"/duoduo"}),t.register(fae,{prefix:"/labi"}),t.register(gae,{prefix:"/shandian"}),t.register(bae,{prefix:"/ouge"}),t.register(vae,{prefix:"/erxiao"}),t.register(Mae,{prefix:"/huban"}),t.register(Uae,{prefix:"/xiaoban"}),t.register(Iue,{prefix:"/tianyi"}),t.register(toe,{prefix:"/wanou"}),t.register(Tue,{prefix:"/leijing"}),t.register(soe,{prefix:"/zhizhen"}),t.register(Eoe,{prefix:"/tgsou"}),t.register(Poe,{prefix:"/pansou"}),t.register(Nue,{prefix:"/pan123"}),t.register(Pue,{prefix:"/xunlei"}),t.register(kue,{prefix:"/ali"}),t.register(Bue,{prefix:"/baidu"}),t.register(Wue,{prefix:"/guangyapan"}),t.register(Hue,{prefix:"/yidong"}),t.register(doe,{prefix:"/tgchannel"}),t.register(voe,{prefix:"/tgfilebot"}),t.register(Pce,{prefix:"/sites"}),t.register(Gue,{prefix:"/pans"}),t.register(Vue,{prefix:"/backup"}),t.register(kce,{prefix:"/danmu"}),t.register(Nle,{prefix:"/emby"}),t.register(Ace,{prefix:"/emby-spider"}),t.register(wce,{prefix:"/alist-video"}),t.register(Wce,{prefix:"/t4"}),t.register(Qce,{prefix:"/cms"}),t.register(Boe,{prefix:"/live2vod"}),t.register(Dae,{prefix:"/123ypzysq"})}var jr=null,Ple="__catpawProfile",i6=Number.parseInt(process.env.CATPAW_LOG_LIMIT||"1500",10)||1500,KNr=Number.parseInt(process.env.CATPAW_LOG_TEXT_LIMIT||"4096",10)||4096,xA=[],ppt=["log","info","warn","error","debug"],_2={},a6=!1;function ku(t,e=KNr){let r=String(t||"");if(!Number.isFinite(e)||e<=0||r.length<=e)return r;let n=Math.max(0,Math.floor(e*.75)),s=Math.max(0,e-n);return`${r.slice(0,n)}...(truncated ${r.length-e} chars)...${r.slice(-s)}`}function YNr(t){if(typeof t=="string")return ku(t);if(t instanceof Error)return ku(JSON.stringify(o6(t)));try{return ku(JSON.stringify(S2(t)))}catch{try{return ku(String(t))}catch{return"[Unserializable]"}}}function mpt(t,e=2,r=2){let n=String(t||"");return n?n.length<=e+r?"*".repeat(n.length):`${n.slice(0,e)}***${n.slice(-r)}`:""}function S2(t,e=0){if(t==null)return t;if(e>=2)return Array.isArray(t)?`[Array(${t.length})]`:typeof t=="object"?`[Object(${Object.keys(t).length})]`:t;if(Array.isArray(t))return{type:"array",length:t.length,sample:t.slice(0,3).map(r=>S2(r,e+1))};if(typeof t=="object"){let r={};for(let[n,s]of Object.entries(t)){let i=n.toLowerCase();if(["cookie","cookies","token","authorization","auth","passwd","password","session","sess"].some(a=>i.includes(a))){s&&typeof s=="object"&&!Array.isArray(s)?r[n]={type:"object",keys:Object.keys(s).length,sampleKeys:Object.keys(s).slice(0,3)}:r[n]=mpt(s);continue}r[n]=S2(s,e+1)}return r}return typeof t=="string"&&t.length>120?`${t.slice(0,40)}...(${t.length} chars)...${t.slice(-12)}`:t}function hpt(t){if(!t||typeof t!="object")return{};let e=typeof t.toJSON=="function"?t.toJSON():t,r={};for(let[n,s]of Object.entries(e||{})){let i=n.toLowerCase();["cookie","authorization","token","secret","password"].some(a=>i.includes(a))?r[n]=mpt(s):r[n]=ku(s,260)}return r}function JNr(t){if(!(!t||typeof t!="object"))return{method:t.method,url:ku(t.url||"",500),baseURL:ku(t.baseURL||"",260),timeout:t.timeout,maxContentLength:t.maxContentLength,maxBodyLength:t.maxBodyLength,proxy:t.proxy,headers:hpt(t.headers)}}function XNr(t){if(!(!t||typeof t!="object"))return{method:t.method,protocol:t.protocol,host:t.host||t.hostname,path:ku(t.path||t.pathname||"",500),currentUrl:ku(t._currentUrl||"",500)}}function ZNr(t){if(!t||typeof t!="object")return;let e=t.data;return{status:t.status,statusText:t.statusText,headers:hpt(t.headers),data:typeof e=="string"?ku(e,1e3):S2(e)}}function o6(t){if(!t||typeof t!="object")return t;let e={name:t.name,message:t.message||String(t),code:t.code,status:t.status,statusCode:t.statusCode,stack:ku(t.stack||"",4e3)},r=JNr(t.config),n=XNr(t.request),s=ZNr(t.response);return r&&(e.config=r),n&&(e.request=n),s&&(e.response=s),e}function eOr(t){return t instanceof Error?o6(t):t}function tOr(){return process.env.NODE_ENV==="development"?!1:{serializers:{err:o6,error:o6}}}function rOr(t){if(!t||typeof t!="object")return t;let e={action:t.action||"-"};if(t.action==="saveProfile"&&t.opt&&typeof t.opt=="object"){let r=t.opt;return e.opt={keys:Object.keys(r),sitesCount:Array.isArray(r.sites?.list)?r.sites.list.length:void 0,pansCount:Array.isArray(r.pans?.list)?r.pans.list.length:void 0,quarkKeys:r.quark&&typeof r.quark=="object"?Object.keys(r.quark).length:void 0,ucKeys:r.uc&&typeof r.uc=="object"?Object.keys(r.uc).length:void 0},e}return S2(t)}function nOr(t,e){xA.push({ts:new Date().toISOString(),level:t,msg:e.map(YNr).join(" ")}),xA.length>i6&&xA.splice(0,xA.length-i6)}function sOr(){a6||(ppt.forEach(t=>{let e=console[t];typeof e=="function"&&(_2[t]=e.bind(console),console[t]=(...r)=>{nOr(t,r),Nit()||_2[t](...r.map(eOr))})}),a6=!0)}function iOr(){a6&&(ppt.forEach(t=>{_2[t]&&(console[t]=_2[t],delete _2[t])}),a6=!1)}function aOr(t){t.get("/api/catpaw-logs",async e=>{let r=Number.parseInt(e.query?.limit,10),n=Number.isFinite(r)&&r>0?Math.min(r,i6):i6,s=xA.slice(-n);return{success:!0,total:xA.length,count:s.length,logs:s}}),t.post("/api/catpaw-logs/clear",async()=>(xA.length=0,{success:!0}))}function c6(...t){}function v2(t){return Object.prototype.toString.call(t)==="[object Object]"}function oOr(t){let e=t?.[Ple];return v2(e)?e:null}function upt(t){if(!v2(t))return{};if(!(Ple in t))return t;let{[Ple]:e,...r}=t;return r}function Dle(t){return v2(t)&&Object.keys(t).length>0}function lpt(t){if(t===void 0)return t;try{return JSON.parse(JSON.stringify(t))}catch{return t}}function dpt(t,e){if(!Dle(t))return{found:!1};let r=String(e||"/");if(r==="/"||r==="")return{found:!0,value:t};let n=r.split("/").filter(Boolean),s=t;for(let i of n){if(!v2(s)&&!Array.isArray(s))return{found:!1};if(!Object.prototype.hasOwnProperty.call(s,i))return{found:!1};s=s[i]}return{found:!0,value:s}}function cOr(t,e){return{...t,...e}}function uOr(t,e){if(!Dle(e))return;let r=t.getData.bind(t),n=typeof t.getObjectDefault=="function"?t.getObjectDefault.bind(t):null;t.getData=async s=>{let i=dpt(e,s);return i.found?lpt(i.value):r(s)},n&&(t.getObjectDefault=async(s,i)=>{let a=dpt(e,s);return a.found?lpt(a.value):n(s,i)})}async function lOr(t){let e=oOr(t),r=Dle(e),n=r?cOr(upt(t),e):upt(t);jr=(0,fpt.default)({serverFactory:catServerFactory,forceCloseConnections:!0,caseSensitive:!1,logger:tOr(),maxParamLength:10240}),sOr(),aOr(jr),globalThis.messageToDart=jr.messageToDart=async u=>{try{console.log("messageToDart",rOr(u));let l=catDartServerPort();return l==0?null:(await Ae.post(`http://127.0.0.1:${l}/msg`,u)).data}catch(l){return console.error(l),null}},jr.address=function(){let u=this.server.address();return u.url=`http://${D0()}:${u.port}`,u.dynamic="js2p://_WEB_",u},jr.addHook("onError",async(u,l,d)=>(console.error("[fastify-error]",d),d.statusCode||(d.statusCode=500),d)),jr.addHook("onRequest",async u=>{if(process.env.NODE_ENV!=="development")return;let l=String(u.raw?.url||u.url||"");if(/stream\.(m3u8|mkv)|\/videos\//i.test(l)){let d=String(u.headers?.host||"-");console.log(`[Stream Probe] ${u.method} ${l} host=${d}`)}}),jr.stop=!1,jr.config=n;let s=9321;c6("before start()",{danmuPort:s,node:process.version,platform:`${process.platform}/${process.arch}`}),Pit(s),c6("after start()",{danmuPort:s}),jr.db=new u6.JsonDB(new u6.Config((process.env.NODE_PATH||".")+"/default.db.json",!0,!0,"/",!0));let i=jr.db.getData.bind(jr.db);r&&uOr(jr.db,n);let a=jr.db.push.bind(jr.db);jr.db.push=async(...u)=>{let l=await a(...u);return i("/").then(d=>{jr.messageToDart({action:"saveProfile",opt:d})}),l};let o=jr.db.delete.bind(jr.db);jr.db.delete=async(...u)=>{let l=await o(...u);return i("/").then(d=>{jr.messageToDart({action:"saveProfile",opt:d})}),l},r||jr.messageToDart({action:"queryProfile"}).then(u=>{if(u&&Object.keys(u).length>0){let l=v2(u)?u:{};a("/",l)}}),jr.register(aue,{db:jr.db,config:n}),jr.register(Ole,{prefix:"/website"}),jr.register(wle,{prefix:"/emby"}),globalThis.Pans=await Que(jr),await Wdt(jr),globalThis.getPanName=u=>globalThis.Pans.find(l=>l.key===u)?.name,globalThis.getPanEnabled=u=>globalThis.Pans.find(l=>l.key===u)?.enable;let c=(u,l=!0)=>{let d=l&&process.env.DEV_HTTP_PORT?process.env.DEV_HTTP_PORT:u;jr.listen({port:d,host:"0.0.0.0"},(f,p)=>{f?(console.error(f),f.code==="EADDRINUSE"&&(console.log(`Port ${d} is already in use. Trying next available port...`),c(u+1,!1))):console.log(`Server listening on ${p}`)})};c(2333)}async function dOr(){c6("before stop()"),Dit(),c6("after stop()"),jr&&(jr.close(),jr.stop=!0),iOr(),jr=null}0&&(module.exports={start,stop}); + `)}),t.get("/subscriptions",(e,r)=>{r.send({code:0,data:{endpoints:sMr(e)}})}),t.register(hfe,{prefix:"/quark"}),t.register(oV,{prefix:"/uc"}),t.register(gfe,{prefix:"/uc-tv"}),t.register(VV,{prefix:"/115"}),t.register(dce,{prefix:"/muou"}),t.register(yY,{prefix:"/duoduo"}),t.register(hce,{prefix:"/labi"}),t.register(xce,{prefix:"/shandian"}),t.register(vce,{prefix:"/ouge"}),t.register(Tce,{prefix:"/erxiao"}),t.register(Zce,{prefix:"/huban"}),t.register(nue,{prefix:"/xiaoban"}),t.register(yfe,{prefix:"/tianyi"}),t.register(oue,{prefix:"/wanou"}),t.register(Afe,{prefix:"/leijing"}),t.register(lue,{prefix:"/zhizhen"}),t.register(Tue,{prefix:"/tgsou"}),t.register(Wue,{prefix:"/pansou"}),t.register(Hue,{prefix:"/pinglian"}),t.register(Efe,{prefix:"/pan123"}),t.register(Sfe,{prefix:"/xunlei"}),t.register(Cfe,{prefix:"/ali"}),t.register(wfe,{prefix:"/baidu"}),t.register(Nfe,{prefix:"/guangyapan"}),t.register(Lfe,{prefix:"/yidong"}),t.register(yue,{prefix:"/tgchannel"}),t.register(Nue,{prefix:"/tgfilebot"}),t.register(vde,{prefix:"/sites"}),t.register(Wfe,{prefix:"/pans"}),t.register($fe,{prefix:"/backup"}),t.register(Ide,{prefix:"/danmu"}),t.register(Epe,{prefix:"/emby"}),t.register(cde,{prefix:"/emby-spider"}),t.register(xde,{prefix:"/alist-video"}),t.register(Rde,{prefix:"/t4"}),t.register(Lde,{prefix:"/cms"}),t.register(Tle,{prefix:"/live2vod"}),t.register(Lce,{prefix:"/123ypzysq"}),t.register($ce,{prefix:"/guanying"})}var jr=null,Spe="__catpawProfile",oW=Number.parseInt(process.env.CATPAW_LOG_LIMIT||"1500",10)||1500,iMr=Number.parseInt(process.env.CATPAW_LOG_TEXT_LIMIT||"4096",10)||4096,eA=[],Eyt=["log","info","warn","error","debug"],GR={},cW=!1;function zu(t,e=iMr){let r=String(t||"");if(!Number.isFinite(e)||e<=0||r.length<=e)return r;let n=Math.max(0,Math.floor(e*.75)),s=Math.max(0,e-n);return`${r.slice(0,n)}...(truncated ${r.length-e} chars)...${r.slice(-s)}`}function aMr(t){if(typeof t=="string")return zu(t);if(t instanceof Error)return zu(JSON.stringify(uW(t)));try{return zu(JSON.stringify(zR(t)))}catch{try{return zu(String(t))}catch{return"[Unserializable]"}}}function vyt(t,e=2,r=2){let n=String(t||"");return n?n.length<=e+r?"*".repeat(n.length):`${n.slice(0,e)}***${n.slice(-r)}`:""}function zR(t,e=0){if(t==null)return t;if(e>=2)return Array.isArray(t)?`[Array(${t.length})]`:typeof t=="object"?`[Object(${Object.keys(t).length})]`:t;if(Array.isArray(t))return{type:"array",length:t.length,sample:t.slice(0,3).map(r=>zR(r,e+1))};if(typeof t=="object"){let r={};for(let[n,s]of Object.entries(t)){let i=n.toLowerCase();if(["cookie","cookies","token","authorization","auth","passwd","password","session","sess"].some(a=>i.includes(a))){s&&typeof s=="object"&&!Array.isArray(s)?r[n]={type:"object",keys:Object.keys(s).length,sampleKeys:Object.keys(s).slice(0,3)}:r[n]=vyt(s);continue}r[n]=zR(s,e+1)}return r}return typeof t=="string"&&t.length>120?`${t.slice(0,40)}...(${t.length} chars)...${t.slice(-12)}`:t}function Syt(t){if(!t||typeof t!="object")return{};let e=typeof t.toJSON=="function"?t.toJSON():t,r={};for(let[n,s]of Object.entries(e||{})){let i=n.toLowerCase();["cookie","authorization","token","secret","password"].some(a=>i.includes(a))?r[n]=vyt(s):r[n]=zu(s,260)}return r}function oMr(t){if(!(!t||typeof t!="object"))return{method:t.method,url:zu(t.url||"",500),baseURL:zu(t.baseURL||"",260),timeout:t.timeout,maxContentLength:t.maxContentLength,maxBodyLength:t.maxBodyLength,proxy:t.proxy,headers:Syt(t.headers)}}function cMr(t){if(!(!t||typeof t!="object"))return{method:t.method,protocol:t.protocol,host:t.host||t.hostname,path:zu(t.path||t.pathname||"",500),currentUrl:zu(t._currentUrl||"",500)}}function uMr(t){if(!t||typeof t!="object")return;let e=t.data;return{status:t.status,statusText:t.statusText,headers:Syt(t.headers),data:typeof e=="string"?zu(e,1e3):zR(e)}}function uW(t){if(!t||typeof t!="object")return t;let e={name:t.name,message:t.message||String(t),code:t.code,status:t.status,statusCode:t.statusCode,stack:zu(t.stack||"",4e3)},r=oMr(t.config),n=cMr(t.request),s=uMr(t.response);return r&&(e.config=r),n&&(e.request=n),s&&(e.response=s),e}function lMr(t){return t instanceof Error?uW(t):t}function dMr(){return process.env.NODE_ENV==="development"?!1:{serializers:{err:uW,error:uW}}}function fMr(t){if(!t||typeof t!="object")return t;let e={action:t.action||"-"};if(t.action==="saveProfile"&&t.opt&&typeof t.opt=="object"){let r=t.opt;return e.opt={keys:Object.keys(r),sitesCount:Array.isArray(r.sites?.list)?r.sites.list.length:void 0,pansCount:Array.isArray(r.pans?.list)?r.pans.list.length:void 0,quarkKeys:r.quark&&typeof r.quark=="object"?Object.keys(r.quark).length:void 0,ucKeys:r.uc&&typeof r.uc=="object"?Object.keys(r.uc).length:void 0},e}return zR(t)}function pMr(t,e){eA.push({ts:new Date().toISOString(),level:t,msg:e.map(aMr).join(" ")}),eA.length>oW&&eA.splice(0,eA.length-oW)}function mMr(){cW||(Eyt.forEach(t=>{let e=console[t];typeof e=="function"&&(GR[t]=e.bind(console),console[t]=(...r)=>{pMr(t,r),Pct()||GR[t](...r.map(lMr))})}),cW=!0)}function hMr(){cW&&(Eyt.forEach(t=>{GR[t]&&(console[t]=GR[t],delete GR[t])}),cW=!1)}function gMr(t){t.get("/api/catpaw-logs",async e=>{let r=Number.parseInt(e.query?.limit,10),n=Number.isFinite(r)&&r>0?Math.min(r,oW):oW,s=eA.slice(-n);return{success:!0,total:eA.length,count:s.length,logs:s}}),t.post("/api/catpaw-logs/clear",async()=>(eA.length=0,{success:!0}))}function lW(...t){}function KR(t){return Object.prototype.toString.call(t)==="[object Object]"}function yMr(t){let e=t?.[Spe];return KR(e)?e:null}function Ayt(t){if(!KR(t))return{};if(!(Spe in t))return t;let{[Spe]:e,...r}=t;return r}function Ipe(t){return KR(t)&&Object.keys(t).length>0}function xyt(t){if(t===void 0)return t;try{return JSON.parse(JSON.stringify(t))}catch{return t}}function byt(t,e){if(!Ipe(t))return{found:!1};let r=String(e||"/");if(r==="/"||r==="")return{found:!0,value:t};let n=r.split("/").filter(Boolean),s=t;for(let i of n){if(!KR(s)&&!Array.isArray(s))return{found:!1};if(!Object.prototype.hasOwnProperty.call(s,i))return{found:!1};s=s[i]}return{found:!0,value:s}}function AMr(t,e){return{...t,...e}}function xMr(t,e){if(!Ipe(e))return;let r=t.getData.bind(t),n=typeof t.getObjectDefault=="function"?t.getObjectDefault.bind(t):null;t.getData=async s=>{let i=byt(e,s);return i.found?xyt(i.value):r(s)},n&&(t.getObjectDefault=async(s,i)=>{let a=byt(e,s);return a.found?xyt(a.value):n(s,i)})}async function bMr(t){let e=yMr(t),r=Ipe(e),n=r?AMr(Ayt(t),e):Ayt(t);jr=(0,_yt.default)({serverFactory:catServerFactory,forceCloseConnections:!0,caseSensitive:!1,logger:dMr(),maxParamLength:10240}),mMr(),gMr(jr),globalThis.messageToDart=jr.messageToDart=async u=>{try{console.log("messageToDart",fMr(u));let l=catDartServerPort();return l==0?null:(await he.post(`http://127.0.0.1:${l}/msg`,u)).data}catch(l){return console.error(l),null}},jr.address=function(){let u=this.server.address();return u.url=`http://${Z0()}:${u.port}`,u.dynamic="js2p://_WEB_",u},jr.addHook("onError",async(u,l,d)=>(console.error("[fastify-error]",d),d.statusCode||(d.statusCode=500),d)),jr.addHook("onRequest",async u=>{if(process.env.NODE_ENV!=="development")return;let l=String(u.raw?.url||u.url||"");if(/stream\.(m3u8|mkv)|\/videos\//i.test(l)){let d=String(u.headers?.host||"-");console.log(`[Stream Probe] ${u.method} ${l} host=${d}`)}}),jr.stop=!1,jr.config=n;let s=9321;lW("before start()",{danmuPort:s,node:process.version,platform:`${process.platform}/${process.arch}`}),Bct(s),lW("after start()",{danmuPort:s}),jr.db=new dW.JsonDB(new dW.Config((process.env.NODE_PATH||".")+"/default.db.json",!0,!0,"/",!0));let i=jr.db.getData.bind(jr.db);r&&xMr(jr.db,n);let a=jr.db.push.bind(jr.db);jr.db.push=async(...u)=>{let l=await a(...u);return i("/").then(d=>{jr.messageToDart({action:"saveProfile",opt:d})}),l};let o=jr.db.delete.bind(jr.db);jr.db.delete=async(...u)=>{let l=await o(...u);return i("/").then(d=>{jr.messageToDart({action:"saveProfile",opt:d})}),l},r||jr.messageToDart({action:"queryProfile"}).then(u=>{if(u&&Object.keys(u).length>0){let l=KR(u)?u:{};a("/",l)}}),jr.register(Jde,{db:jr.db,config:n}),jr.register(vpe,{prefix:"/website"}),jr.register(bpe,{prefix:"/emby"}),globalThis.Pans=await Mfe(jr),await zht(jr),globalThis.getPanName=u=>globalThis.Pans.find(l=>l.key===u)?.name,globalThis.getPanEnabled=u=>globalThis.Pans.find(l=>l.key===u)?.enable;let c=(u,l=!0)=>{let d=l&&process.env.DEV_HTTP_PORT?process.env.DEV_HTTP_PORT:u;jr.listen({port:d,host:"0.0.0.0"},(f,p)=>{f?(console.error(f),f.code==="EADDRINUSE"&&(console.log(`Port ${d} is already in use. Trying next available port...`),c(u+1,!1))):console.log(`Server listening on ${p}`)})};c(2333)}async function _Mr(){lW("before stop()"),Lct(),lW("after stop()"),jr&&(jr.close(),jr.stop=!0),hMr(),jr=null}0&&(module.exports={start,stop}); /*! Bundled license information: forwarded/index.js: diff --git a/catvod/douer/index.js.md5 b/catvod/douer/index.js.md5 index 4ecc10d1..9f95edab 100644 --- a/catvod/douer/index.js.md5 +++ b/catvod/douer/index.js.md5 @@ -1 +1 @@ -A6813D18271C488B1010D4634C1A3220 \ No newline at end of file +1CA0FF0764DBC72579BF819B51410F47 \ No newline at end of file diff --git a/tbapi1/PG/lib/aliproxy.tar.xz b/tbapi1/PG/lib/aliproxy.tar.xz index 3a5117b8..63488a79 100644 Binary files a/tbapi1/PG/lib/aliproxy.tar.xz and b/tbapi1/PG/lib/aliproxy.tar.xz differ diff --git a/tbapi1/PG/lib/aliproxy.tar.xz.md5 b/tbapi1/PG/lib/aliproxy.tar.xz.md5 index f66bcec0..a5f7bae8 100644 --- a/tbapi1/PG/lib/aliproxy.tar.xz.md5 +++ b/tbapi1/PG/lib/aliproxy.tar.xz.md5 @@ -1 +1 @@ -72717ec3c495637b2065aed95eabd3a2 +755bbc960002a4c4fa8a47e8b4b7bfb2 diff --git a/tbapi1/PG/pg.jar b/tbapi1/PG/pg.jar index 95f2d405..895f19c3 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 7de775e8..c0fb6da9 100644 --- a/tbapi1/PG/pg.jar.md5 +++ b/tbapi1/PG/pg.jar.md5 @@ -1 +1 @@ -5ed445244809b31bbad56fdc39034c08 \ No newline at end of file +2eeac16a797fde611b07d37389e80c31 \ No newline at end of file diff --git a/tvbox/lib/iptv.m3u b/tvbox/lib/iptv.m3u index caee5119..076072f7 100755 --- a/tvbox/lib/iptv.m3u +++ b/tvbox/lib/iptv.m3u @@ -76,15 +76,15 @@ http://www.520345.xyz:8188/rtp/239.69.1.111:10304?$LR•IPV4•11『线路3』 #EXTINF:-1 tvg-id="CCTV4K" tvg-name="CCTV4K" group-title="4K",CCTV4K http://home.amucn.net:8800/udp/239.49.0.82:8000$LR•IPV4•11『线路4』 #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=1783738800-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-a3b6211ac6216364658c2ed2b35f324b&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•11『线路5』 +https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4k_mbd.m3u8?auth_key=1783746000-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-9506187e2170a2680534df6e34133fee&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•11『线路5』 #EXTINF:-1 tvg-id="CCTV4K" tvg-name="CCTV4K" group-title="4K",CCTV4K -http://198.204.240.250:82/live/cctv4k.m3u8$LR•IPV4•11『线路6』 +https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4k_mbd.m3u8?auth_key=1783742400-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-b5fa4a51df4a44a9f4b42b8923a48bc9&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•11『线路6』 #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=1783731600-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-04b27a198b2f04c15287bec6e71771b5&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•11『线路7』 +http://192.151.150.154/live/cctv4k.m3u8$LR•IPV4•11『线路7』 #EXTINF:-1 tvg-id="CCTV4K" tvg-name="CCTV4K" group-title="4K",CCTV4K -http://192.151.150.154/live/cctv4k.m3u8$LR•IPV4•11『线路8』 +http://173.208.212.130:8181/720p/cctv4k.m3u8$LR•IPV4•11『线路8』 #EXTINF:-1 tvg-id="CCTV4K" tvg-name="CCTV4K" group-title="4K",CCTV4K -http://173.208.212.130:8181/720p/cctv4k.m3u8$LR•IPV4•11『线路9』 +http://198.204.240.250:82/live/cctv4k.m3u8$LR•IPV4•11『线路9』 #EXTINF:-1 tvg-id="CCTV4K" tvg-name="CCTV4K" group-title="4K",CCTV4K http://fn.tmde.top:35455/nptv/cctv4k.m3u8$LR•IPV4•11『线路10』 #EXTINF:-1 tvg-id="CCTV4K" tvg-name="CCTV4K" group-title="4K",CCTV4K @@ -102,65 +102,67 @@ http://fn.tmde.top:35455/nptv/cctv8k.m3u8$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-id="CCTV8K" tvg-name="CCTV8K" group-title="8K",CCTV8K http://xc.mfykeke.top:35455/nptv/cctv8k.m3u8$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-id="CCTV1" tvg-name="CCTV1" group-title="央视",CCTV1 -http://207.56.13.146:81/cdnlive/cctv1.m3u8$LR•IPV4•25『线路1』 +http://112.27.235.94:8000/hls/1/index.m3u8$LR•IPV4•26『线路1』 #EXTINF:-1 tvg-id="CCTV1" tvg-name="CCTV1" group-title="央视",CCTV1 -http://play.kankanlive.com/live/1698234869325962.m3u8$LR•IPV4•25『线路2』 +http://207.56.13.146:81/cdnlive/cctv1.m3u8$LR•IPV4•26『线路2』 #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•25『线路3』 +http://play.kankanlive.com/live/1698234869325962.m3u8$LR•IPV4•26『线路3』 #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•25『线路4』 +http://120.198.95.220:9901/tsfile/live/1015_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•26『线路4』 #EXTINF:-1 tvg-id="CCTV1" tvg-name="CCTV1" group-title="央视",CCTV1 -http://74.91.26.218:82/live/cctv1hd.m3u8$LR•IPV4•25『线路5』 +http://153.0.171.163:9901/tsfile/live/0001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路5』 #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•25『线路6』 +http://74.91.26.218:82/live/cctv1hd.m3u8$LR•IPV4•26『线路6』 #EXTINF:-1 tvg-id="CCTV1" tvg-name="CCTV1" group-title="央视",CCTV1 -http://112.46.105.20:8009/hls/501/index.m3u8$LR•IPV4•25『线路7』 +http://38.75.136.137:98/gslb/dsdqbv/cctv1hd.m3u8?auth=test20251009$LR•IPV4•26『线路7』 #EXTINF:-1 tvg-id="CCTV1" tvg-name="CCTV1" group-title="央视",CCTV1 -http://php.jdshipin.com/TVOD/iptv.php?id=rthk33$LR•IPV4•25『线路8』 +http://112.46.105.20:8009/hls/501/index.m3u8$LR•IPV4•26『线路8』 #EXTINF:-1 tvg-id="CCTV1" tvg-name="CCTV1" group-title="央视",CCTV1 -https://rthktv33-live.akamaized.net/hls/live/2101641/RTHKTV33/stream04/streamPlaylist.m3u8$LR•IPV4•25『线路9』 +http://php.jdshipin.com/TVOD/iptv.php?id=rthk33$LR•IPV4•26『线路9』 #EXTINF:-1 tvg-id="CCTV1" tvg-name="CCTV1" group-title="央视",CCTV1 -http://60.10.139.113:8801/hls/1/index.m3u8$LR•IPV4•25『线路10』 +https://rthktv33-live.akamaized.net/hls/live/2101641/RTHKTV33/stream04/streamPlaylist.m3u8$LR•IPV4•26『线路10』 #EXTINF:-1 tvg-id="CCTV1" tvg-name="CCTV1" group-title="央视",CCTV1 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000004000002226&livemode=1&stbId=yu&mode=1&$LR•IPV4•25『线路11』 +http://60.10.139.113:8801/hls/1/index.m3u8$LR•IPV4•26『线路11』 #EXTINF:-1 tvg-id="CCTV1" tvg-name="CCTV1" group-title="央视",CCTV1 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000030810&livemode=1&stbId=yu&mode=1&$LR•IPV4•25『线路12』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000004000002226&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路12』 #EXTINF:-1 tvg-id="CCTV1" tvg-name="CCTV1" group-title="央视",CCTV1 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000018602&livemode=1&stbId=yu&mode=1&$LR•IPV4•25『线路13』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000030810&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路13』 #EXTINF:-1 tvg-id="CCTV1" tvg-name="CCTV1" group-title="央视",CCTV1 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000021973&livemode=1&stbId=yu&mode=1&$LR•IPV4•25『线路14』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000018602&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路14』 #EXTINF:-1 tvg-id="CCTV1" tvg-name="CCTV1" group-title="央视",CCTV1 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265001&livemode=1&stbId=yu&mode=1&$LR•IPV4•25『线路15』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000021973&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路15』 #EXTINF:-1 tvg-id="CCTV1" tvg-name="CCTV1" group-title="央视",CCTV1 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=reallive-cctv1&livemode=1&stbId=yu&mode=1&$LR•IPV4•25『线路16』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265001&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路16』 #EXTINF:-1 tvg-id="CCTV1" tvg-name="CCTV1" group-title="央视",CCTV1 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000001000004953&livemode=1&stbId=yu&mode=1&$LR•IPV4•25『线路17』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=reallive-cctv1&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路17』 #EXTINF:-1 tvg-id="CCTV1" tvg-name="CCTV1" group-title="央视",CCTV1 -http://111.29.9.35:6610/000000001000/1000000001000018602/index.m3u8?channel-id=ystenlive&Contentid=1000000001000018602&livemode=1&stbId=3$LR•IPV4•25『线路18』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000001000004953&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路18』 #EXTINF:-1 tvg-id="CCTV1" tvg-name="CCTV1" group-title="央视",CCTV1 -http://111.29.9.33:6610/000000001000/1000000001000021973/index.m3u8?channel-id=bestzb&Contentid=1000000001000021973&livemode=1&stbId=3$LR•IPV4•25『线路19』 +http://111.29.9.35:6610/000000001000/1000000001000018602/index.m3u8?channel-id=ystenlive&Contentid=1000000001000018602&livemode=1&stbId=3$LR•IPV4•26『线路19』 #EXTINF:-1 tvg-id="CCTV1" tvg-name="CCTV1" group-title="央视",CCTV1 -http://69.30.245.50/live/cctv1.m3u8$LR•IPV4•25『线路20』 +http://111.29.9.33:6610/000000001000/1000000001000021973/index.m3u8?channel-id=bestzb&Contentid=1000000001000021973&livemode=1&stbId=3$LR•IPV4•26『线路20』 #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•25『线路21』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226895/1.m3u8?$LR•IPV6•26『线路21』 #EXTINF:-1 tvg-id="CCTV1" tvg-name="CCTV1" group-title="央视",CCTV1 -http://192.151.150.154/live/cctv1hd.m3u8$LR•IPV4•25『线路22』 +http://192.151.150.154/live/cctv1hd.m3u8$LR•IPV4•26『线路22』 #EXTINF:-1 tvg-id="CCTV1" tvg-name="CCTV1" group-title="央视",CCTV1 -http://173.208.212.130:8181/1080p/cctv1.m3u8$LR•IPV4•25『线路23』 +http://173.208.212.130:8181/1080p/cctv1.m3u8$LR•IPV4•26『线路23』 #EXTINF:-1 tvg-id="CCTV1" tvg-name="CCTV1" group-title="央视",CCTV1 -http://173.208.212.130:8181/720p/cctv1.m3u8$LR•IPV4•25『线路24』 +http://173.208.212.130:8181/720p/cctv1.m3u8$LR•IPV4•26『线路24』 #EXTINF:-1 tvg-id="CCTV1" tvg-name="CCTV1" group-title="央视",CCTV1 -http://204.12.221.218:8181/3m1080p/cctv1.m3u8$LR•IPV4•25『线路25』 +http://204.12.221.218:8181/3m1080p/cctv1.m3u8$LR•IPV4•26『线路25』 +#EXTINF:-1 tvg-id="CCTV1" tvg-name="CCTV1" group-title="央视",CCTV1 +http://69.30.245.50/live/cctv1.m3u8$LR•IPV4•26『线路26』 #EXTINF:-1 tvg-id="CCTV2" tvg-name="CCTV2" group-title="央视",CCTV2 -http://120.198.95.220:9901/tsfile/live/1016_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•23『线路1』 +http://112.46.85.60:8009/hls/502/index.m3u8$LR•IPV4•23『线路1』 #EXTINF:-1 tvg-id="CCTV2" tvg-name="CCTV2" group-title="央视",CCTV2 -http://207.56.13.146:81/cdnlive/cctv2.m3u8$LR•IPV4•23『线路2』 +http://120.198.95.220:9901/tsfile/live/1016_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•23『线路2』 #EXTINF:-1 tvg-id="CCTV2" tvg-name="CCTV2" group-title="央视",CCTV2 -http://36.136.38.87:9901/tsfile/live/0002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•23『线路3』 +http://207.56.13.146:81/cdnlive/cctv2.m3u8$LR•IPV4•23『线路3』 #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•23『线路4』 +http://36.136.38.87:9901/tsfile/live/0002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•23『线路4』 #EXTINF:-1 tvg-id="CCTV2" tvg-name="CCTV2" group-title="央视",CCTV2 -http://112.27.235.94:8000/hls/2/index.m3u8$LR•IPV4•23『线路5』 +http://153.0.171.163:9901/tsfile/live/0002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•23『线路5』 #EXTINF:-1 tvg-id="CCTV2" tvg-name="CCTV2" group-title="央视",CCTV2 http://pull-hls-f11.douyincdn.com/media/stream-407062262674621100.m3u8?arch_hrchy=w1&exp_hrchy=w1&expire=1771769775&major_anchor_level=common&sign=98406f42e949db5477a402c85cbee007&t_id=037-20260215221614EEA56BB994BB42D25308-a6AVAz$LR•IPV4•23『线路6』 #EXTINF:-1 tvg-id="CCTV2" tvg-name="CCTV2" group-title="央视",CCTV2 @@ -184,29 +186,29 @@ http://111.29.9.34:6610/000000001000/1000000001000012442/index.m3u8?channel-id=y #EXTINF:-1 tvg-id="CCTV2" tvg-name="CCTV2" group-title="央视",CCTV2 http://111.29.9.33:6610/000000001000/1000000001000012442/index.m3u8?channel-id=bestzb&Contentid=1000000001000012442&livemode=1&stbId=3$LR•IPV4•23『线路16』 #EXTINF:-1 tvg-id="CCTV2" tvg-name="CCTV2" group-title="央视",CCTV2 -http://74.91.26.218:82/live/cctv2hd.m3u8$LR•IPV4•23『线路17』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226893/1.m3u8?$LR•IPV6•23『线路17』 #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•23『线路18』 +http://69.30.245.50/live/cctv2.m3u8$LR•IPV4•23『线路18』 #EXTINF:-1 tvg-id="CCTV2" tvg-name="CCTV2" group-title="央视",CCTV2 -http://69.30.245.50/live/cctv2.m3u8$LR•IPV4•23『线路19』 +http://173.208.212.130:8181/720p/cctv2.m3u8$LR•IPV4•23『线路19』 #EXTINF:-1 tvg-id="CCTV2" tvg-name="CCTV2" group-title="央视",CCTV2 -http://173.208.212.130:8181/720p/cctv2.m3u8$LR•IPV4•23『线路20』 +http://192.151.150.154/live/cctv2hd.m3u8$LR•IPV4•23『线路20』 #EXTINF:-1 tvg-id="CCTV2" tvg-name="CCTV2" group-title="央视",CCTV2 -http://192.151.150.154/live/cctv2hd.m3u8$LR•IPV4•23『线路21』 +http://173.208.212.130:8181/1080p/cctv2.m3u8$LR•IPV4•23『线路21』 #EXTINF:-1 tvg-id="CCTV2" tvg-name="CCTV2" group-title="央视",CCTV2 -http://173.208.212.130:8181/1080p/cctv2.m3u8$LR•IPV4•23『线路22』 +http://204.12.221.218:8181/3m1080p/cctv2.m3u8$LR•IPV4•23『线路22』 #EXTINF:-1 tvg-id="CCTV2" tvg-name="CCTV2" group-title="央视",CCTV2 -http://204.12.221.218:8181/3m1080p/cctv2.m3u8$LR•IPV4•23『线路23』 +http://74.91.26.218:82/live/cctv2hd.m3u8$LR•IPV4•23『线路23』 #EXTINF:-1 tvg-id="CCTV3" tvg-name="CCTV3" group-title="央视",CCTV3 -http://123.163.114.168:85/tsfile/live/0003_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•21『线路1』 +http://74.91.26.218:82/live/cctv3hd.m3u8$LR•IPV4•21『线路1』 #EXTINF:-1 tvg-id="CCTV3" tvg-name="CCTV3" group-title="央视",CCTV3 -http://222.223.41.27:8888/hls/3/index.m3u8$LR•IPV4•21『线路2』 +http://123.163.114.168:85/tsfile/live/0003_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•21『线路2』 #EXTINF:-1 tvg-id="CCTV3" tvg-name="CCTV3" group-title="央视",CCTV3 -http://121.57.88.206:898/hls/3/index.m3u8$LR•IPV4•21『线路3』 +http://222.223.41.27:8888/hls/3/index.m3u8$LR•IPV4•21『线路3』 #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•21『线路4』 +http://121.57.88.206:898/hls/3/index.m3u8$LR•IPV4•21『线路4』 #EXTINF:-1 tvg-id="CCTV3" tvg-name="CCTV3" group-title="央视",CCTV3 -http://74.91.26.218:82/live/cctv3hd.m3u8$LR•IPV4•21『线路5』 +http://120.198.95.220:9901/tsfile/live/1017_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•21『线路5』 #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•21『线路6』 #EXTINF:-1 tvg-id="CCTV3" tvg-name="CCTV3" group-title="央视",CCTV3 @@ -240,15 +242,15 @@ http://173.208.212.130:8181/720p/cctv3.m3u8$LR•IPV4•21『线路20』 #EXTINF:-1 tvg-id="CCTV3" tvg-name="CCTV3" group-title="央视",CCTV3 http://204.12.221.218:8181/3m1080p/cctv3.m3u8$LR•IPV4•21『线路21』 #EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 -http://123.163.114.168:85/tsfile/live/0004_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路1』 +https://global.cgtn.cicc.media.caton.cloud/master/cgtn-america.m3u8$LR•IPV4•26『线路1』 #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•26『线路2』 +http://123.163.114.168:85/tsfile/live/0004_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路2』 #EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 -http://36.136.38.87:9901/tsfile/live/0004_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路3』 +http://38.75.136.137:98/gslb/dsdqbv/cctv4hd.m3u8?auth=test20251009$LR•IPV4•26『线路3』 #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•26『线路4』 +http://36.136.38.87:9901/tsfile/live/0004_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路4』 #EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 -https://global.cgtn.cicc.media.caton.cloud/master/cgtn-america.m3u8$LR•IPV4•26『线路5』 +http://153.0.171.163:9901/tsfile/live/0004_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路5』 #EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 http://74.91.26.218:82/live/cctv4hd.m3u8$LR•IPV4•26『线路6』 #EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 @@ -270,33 +272,33 @@ http://111.29.9.40:6610/000000001000/5000000005000030093/index.m3u8?channel-id=b #EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 http://111.29.9.33:6610/000000001000/1000000002000031664/index.m3u8?channel-id=bestzb&Contentid=1000000002000031664&livemode=1&stbId=3$LR•IPV4•26『线路15』 #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=1783738800-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-51e8b9f9c94dcce18451a546b462beb1&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•26『线路16』 +https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1783746000-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-02e028da2bbd51e65163edbb07cd365e&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•26『线路16』 #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=1783666800-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-96a1fc3c6c225c78e9026808895bf05a&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•26『线路17』 #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=1783731600-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-8abff3eb62a4395bc0145a840cc6a6fc&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•26『线路18』 +https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1783742400-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-19149547a7d5dfb5bd31f3815e03c8ea&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•26『线路18』 #EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 -https://dash2.antik.sk/live/test_cctv_tizen/playlist.m3u8$LR•IPV4•26『线路19』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226335/1.m3u8?$LR•IPV6•26『线路19』 #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•26『线路20』 +http://69.30.245.50/live/cctv4.m3u8$LR•IPV4•26『线路20』 #EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 -http://69.30.245.50/live/cctv4.m3u8$LR•IPV4•26『线路21』 +http://207.56.13.146:81/cdnlive/cctv4.m3u8$LR•IPV4•26『线路21』 #EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 -http://207.56.13.146:81/cdnlive/cctv4.m3u8$LR•IPV4•26『线路22』 +http://192.151.150.154/live/cctv4hd.m3u8$LR•IPV4•26『线路22』 #EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 -http://192.151.150.154/live/cctv4hd.m3u8$LR•IPV4•26『线路23』 +http://173.208.212.130:8181/1080p/cctv4.m3u8$LR•IPV4•26『线路23』 #EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 -http://173.208.212.130:8181/1080p/cctv4.m3u8$LR•IPV4•26『线路24』 +http://173.208.212.130:8181/720p/cctv4.m3u8$LR•IPV4•26『线路24』 #EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 -http://173.208.212.130:8181/720p/cctv4.m3u8$LR•IPV4•26『线路25』 +http://204.12.221.218:8181/3m1080p/cctv4.m3u8$LR•IPV4•26『线路25』 #EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 -http://204.12.221.218:8181/3m1080p/cctv4.m3u8$LR•IPV4•26『线路26』 +https://dash2.antik.sk/live/test_cctv_tizen/playlist.m3u8$LR•IPV4•26『线路26』 #EXTINF:-1 tvg-id="CCTV5" tvg-name="CCTV5" group-title="央视",CCTV5 -http://123.163.114.168:85/tsfile/live/0005_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•29『线路1』 +http://112.27.235.94:8000/hls/5/index.m3u8$LR•IPV4•29『线路1』 #EXTINF:-1 tvg-id="CCTV5" tvg-name="CCTV5" group-title="央视",CCTV5 -http://74.91.26.218:82/live/cctv5hd.m3u8$LR•IPV4•29『线路2』 +http://123.163.114.168:85/tsfile/live/0005_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•29『线路2』 #EXTINF:-1 tvg-id="CCTV5" tvg-name="CCTV5" group-title="央视",CCTV5 -http://112.27.235.94:8000/hls/5/index.m3u8$LR•IPV4•29『线路3』 +http://74.91.26.218:82/live/cctv5hd.m3u8$LR•IPV4•29『线路3』 #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•29『线路4』 #EXTINF:-1 tvg-id="CCTV5" tvg-name="CCTV5" group-title="央视",CCTV5 @@ -350,15 +352,15 @@ http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221 #EXTINF:-1 tvg-id="CCTV5" tvg-name="CCTV5" group-title="央视",CCTV5 http://192.151.150.154/live/cctv5p.m3u8$LR•IPV4•29『线路29』 #EXTINF:-1 tvg-id="CCTV6" tvg-name="CCTV6" group-title="央视",CCTV6 -http://120.198.95.220:9901/tsfile/live/1021_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•22『线路1』 +http://112.27.235.94:8000/hls/7/index.m3u8$LR•IPV4•22『线路1』 #EXTINF:-1 tvg-id="CCTV6" tvg-name="CCTV6" group-title="央视",CCTV6 -http://222.223.41.27:8888/hls/6/index.m3u8$LR•IPV4•22『线路2』 +http://120.198.95.220:9901/tsfile/live/1021_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•22『线路2』 #EXTINF:-1 tvg-id="CCTV6" tvg-name="CCTV6" group-title="央视",CCTV6 -http://123.163.114.168:9901/tsfile/live/0006_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•22『线路3』 +http://222.223.41.27:8888/hls/6/index.m3u8$LR•IPV4•22『线路3』 #EXTINF:-1 tvg-id="CCTV6" tvg-name="CCTV6" group-title="央视",CCTV6 -http://204.12.221.218:8181/3m1080p/cctv6.m3u8$LR•IPV4•22『线路4』 +http://123.163.114.168:9901/tsfile/live/0006_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•22『线路4』 #EXTINF:-1 tvg-id="CCTV6" tvg-name="CCTV6" group-title="央视",CCTV6 -http://112.27.235.94:8000/hls/7/index.m3u8$LR•IPV4•22『线路5』 +http://204.12.221.218:8181/3m1080p/cctv6.m3u8$LR•IPV4•22『线路5』 #EXTINF:-1 tvg-id="CCTV6" tvg-name="CCTV6" group-title="央视",CCTV6 http://74.91.26.218:82/live/cctv6hd.m3u8$LR•IPV4•22『线路6』 #EXTINF:-1 tvg-id="CCTV6" tvg-name="CCTV6" group-title="央视",CCTV6 @@ -380,27 +382,27 @@ http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=61170998 #EXTINF:-1 tvg-id="CCTV6" tvg-name="CCTV6" group-title="央视",CCTV6 http://111.29.9.33:6610/000000001000/1000000001000016466/index.m3u8?channel-id=bestzb&Contentid=1000000001000016466&livemode=1&stbId=3$LR•IPV4•22『线路15』 #EXTINF:-1 tvg-id="CCTV6" tvg-name="CCTV6" group-title="央视",CCTV6 -http://69.30.245.50/live/cctv6.m3u8$LR•IPV4•22『线路16』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226468/1.m3u8?$LR•IPV6•22『线路16』 #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•22『线路17』 +http://198.204.240.250:82/live/cctv6.m3u8$LR•IPV4•22『线路17』 #EXTINF:-1 tvg-id="CCTV6" tvg-name="CCTV6" group-title="央视",CCTV6 -http://198.204.240.250:82/live/cctv6.m3u8$LR•IPV4•22『线路18』 +http://173.208.212.130:8181/1080p/cctv6.m3u8$LR•IPV4•22『线路18』 #EXTINF:-1 tvg-id="CCTV6" tvg-name="CCTV6" group-title="央视",CCTV6 -http://173.208.212.130:8181/1080p/cctv6.m3u8$LR•IPV4•22『线路19』 +http://173.208.212.130:8181/720p/cctv6.m3u8$LR•IPV4•22『线路19』 #EXTINF:-1 tvg-id="CCTV6" tvg-name="CCTV6" group-title="央视",CCTV6 -http://173.208.212.130:8181/720p/cctv6.m3u8$LR•IPV4•22『线路20』 +http://207.56.13.146:81/cdnlive/cctv6.m3u8$LR•IPV4•22『线路20』 #EXTINF:-1 tvg-id="CCTV6" tvg-name="CCTV6" group-title="央视",CCTV6 -http://207.56.13.146:81/cdnlive/cctv6.m3u8$LR•IPV4•22『线路21』 +http://192.151.150.154/live/cctv6hd.m3u8$LR•IPV4•22『线路21』 #EXTINF:-1 tvg-id="CCTV6" tvg-name="CCTV6" group-title="央视",CCTV6 -http://192.151.150.154/live/cctv6hd.m3u8$LR•IPV4•22『线路22』 +http://69.30.245.50/live/cctv6.m3u8$LR•IPV4•22『线路22』 #EXTINF:-1 tvg-id="CCTV7" tvg-name="CCTV7" group-title="央视",CCTV7 -http://123.163.114.168:9901/tsfile/live/0007_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•23『线路1』 +http://112.27.235.94:8000/hls/8/index.m3u8$LR•IPV4•23『线路1』 #EXTINF:-1 tvg-id="CCTV7" tvg-name="CCTV7" group-title="央视",CCTV7 -http://118.193.115.2:9901/tsfile/live/0007_1.m3u8?key=txiptv$LR•IPV4•23『线路2』 +http://123.163.114.168:9901/tsfile/live/0007_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•23『线路2』 #EXTINF:-1 tvg-id="CCTV7" tvg-name="CCTV7" group-title="央视",CCTV7 -http://107.150.60.122/live/cctv7hd.m3u8$LR•IPV4•23『线路3』 +http://118.193.115.2:9901/tsfile/live/0007_1.m3u8?key=txiptv$LR•IPV4•23『线路3』 #EXTINF:-1 tvg-id="CCTV7" tvg-name="CCTV7" group-title="央视",CCTV7 -http://112.27.235.94:8000/hls/8/index.m3u8$LR•IPV4•23『线路4』 +http://107.150.60.122/live/cctv7hd.m3u8$LR•IPV4•23『线路4』 #EXTINF:-1 tvg-id="CCTV7" tvg-name="CCTV7" group-title="央视",CCTV7 http://74.91.26.218:82/live/cctv7hd.m3u8$LR•IPV4•23『线路5』 #EXTINF:-1 tvg-id="CCTV7" tvg-name="CCTV7" group-title="央视",CCTV7 @@ -440,9 +442,9 @@ http://173.208.212.130:8181/720p/cctv7.m3u8$LR•IPV4•23『线路22』 #EXTINF:-1 tvg-id="CCTV7" tvg-name="CCTV7" group-title="央视",CCTV7 http://204.12.221.218:8181/3m1080p/cctv7.m3u8$LR•IPV4•23『线路23』 #EXTINF:-1 tvg-id="CCTV8" tvg-name="CCTV8" group-title="央视",CCTV8 -http://112.123.243.37:50085/tsfile/live/0009_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•18『线路1』 +http://112.27.235.94:8000/hls/9/index.m3u8$LR•IPV4•18『线路1』 #EXTINF:-1 tvg-id="CCTV8" tvg-name="CCTV8" group-title="央视",CCTV8 -http://112.27.235.94:8000/hls/9/index.m3u8$LR•IPV4•18『线路2』 +http://112.123.243.37:50085/tsfile/live/0009_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•18『线路2』 #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•18『线路3』 #EXTINF:-1 tvg-id="CCTV8" tvg-name="CCTV8" group-title="央视",CCTV8 @@ -460,29 +462,29 @@ http://111.29.9.33:6610/000000001000/1000000001000003736/index.m3u8?channel-id=b #EXTINF:-1 tvg-id="CCTV8" tvg-name="CCTV8" group-title="央视",CCTV8 http://183.196.25.171:808/hls/77/index.m3u8$LR•IPV4•18『线路10』 #EXTINF:-1 tvg-id="CCTV8" tvg-name="CCTV8" group-title="央视",CCTV8 -http://74.91.26.218:82/live/cctv8hd.m3u8$LR•IPV4•18『线路11』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226485/1.m3u8?$LR•IPV6•18『线路11』 #EXTINF:-1 tvg-id="CCTV8" tvg-name="CCTV8" group-title="央视",CCTV8 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226485/1.m3u8?$LR•IPV6•18『线路12』 +http://207.56.13.146:81/cdnlive/cctv8.m3u8$LR•IPV4•18『线路12』 #EXTINF:-1 tvg-id="CCTV8" tvg-name="CCTV8" group-title="央视",CCTV8 -http://207.56.13.146:81/cdnlive/cctv8.m3u8$LR•IPV4•18『线路13』 +http://69.30.245.50/live/cctv8.m3u8$LR•IPV4•18『线路13』 #EXTINF:-1 tvg-id="CCTV8" tvg-name="CCTV8" group-title="央视",CCTV8 -http://69.30.245.50/live/cctv8.m3u8$LR•IPV4•18『线路14』 +http://173.208.212.130:8181/720p/cctv8.m3u8$LR•IPV4•18『线路14』 #EXTINF:-1 tvg-id="CCTV8" tvg-name="CCTV8" group-title="央视",CCTV8 -http://173.208.212.130:8181/720p/cctv8.m3u8$LR•IPV4•18『线路15』 +http://192.151.150.154/live/cctv8hd.m3u8$LR•IPV4•18『线路15』 #EXTINF:-1 tvg-id="CCTV8" tvg-name="CCTV8" group-title="央视",CCTV8 -http://192.151.150.154/live/cctv8hd.m3u8$LR•IPV4•18『线路16』 +http://173.208.212.130:8181/1080p/cctv8.m3u8$LR•IPV4•18『线路16』 #EXTINF:-1 tvg-id="CCTV8" tvg-name="CCTV8" group-title="央视",CCTV8 -http://173.208.212.130:8181/1080p/cctv8.m3u8$LR•IPV4•18『线路17』 +http://204.12.221.218:8181/3m1080p/cctv8.m3u8$LR•IPV4•18『线路17』 #EXTINF:-1 tvg-id="CCTV8" tvg-name="CCTV8" group-title="央视",CCTV8 -http://204.12.221.218:8181/3m1080p/cctv8.m3u8$LR•IPV4•18『线路18』 +http://74.91.26.218:82/live/cctv8hd.m3u8$LR•IPV4•18『线路18』 #EXTINF:-1 tvg-id="CCTV9" tvg-name="CCTV9" group-title="央视",CCTV9 -http://123.163.114.168:9901/tsfile/live/0009_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•23『线路1』 +http://112.46.85.60:8009/hls/509/index.m3u8$LR•IPV4•23『线路1』 #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•23『线路2』 +http://123.163.114.168:9901/tsfile/live/0009_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•23『线路2』 #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•23『线路3』 +http://38.75.136.137:98/gslb/dsdqbv/cctv9hd.m3u8?auth=test20251009$LR•IPV4•23『线路3』 #EXTINF:-1 tvg-id="CCTV9" tvg-name="CCTV9" group-title="央视",CCTV9 -http://112.27.235.94:8000/hls/10/index.m3u8$LR•IPV4•23『线路4』 +http://153.0.171.163:9901/tsfile/live/1008_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•23『线路4』 #EXTINF:-1 tvg-id="CCTV9" tvg-name="CCTV9" group-title="央视",CCTV9 http://74.91.26.218:82/live/cctv9hd.m3u8$LR•IPV4•23『线路5』 #EXTINF:-1 tvg-id="CCTV9" tvg-name="CCTV9" group-title="央视",CCTV9 @@ -504,23 +506,23 @@ http://111.29.9.33:6610/000000001000/1000000001000028286/index.m3u8?channel-id=y #EXTINF:-1 tvg-id="CCTV9" tvg-name="CCTV9" group-title="央视",CCTV9 http://111.29.9.33:6610/000000001000/1000000001000014583/index.m3u8?channel-id=bestzb&Contentid=1000000001000014583&livemode=1&stbId=3$LR•IPV4•23『线路14』 #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=7bbc669eee2044d8761aa03624b105c7$LR•IPV4•23『线路15』 +https://v4-702cae17a28d6e4f0c0002bba021d934.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=16c50a21b4dbd7f799ba43a4a3f02212$LR•IPV4•23『线路15』 #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=279b026fed672d59628112a0fa829209$LR•IPV4•23『线路16』 +https://v4-702cae17a28d6e4f0c0002bba021d934.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=87228f9521462cf4fab49a1fe67efd25$LR•IPV4•23『线路16』 #EXTINF:-1 tvg-id="CCTV9" tvg-name="CCTV9" group-title="央视",CCTV9 -https://xykt-fix.github.io/Y77.m3u8$LR•IPV4•23『线路17』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226944/1.m3u8?$LR•IPV6•23『线路17』 #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•23『线路18』 +http://207.56.13.146:81/cdnlive/cctv9.m3u8$LR•IPV4•23『线路18』 #EXTINF:-1 tvg-id="CCTV9" tvg-name="CCTV9" group-title="央视",CCTV9 -http://207.56.13.146:81/cdnlive/cctv9.m3u8$LR•IPV4•23『线路19』 +http://192.151.150.154/live/cctv9hd.m3u8$LR•IPV4•23『线路19』 #EXTINF:-1 tvg-id="CCTV9" tvg-name="CCTV9" group-title="央视",CCTV9 -http://192.151.150.154/live/cctv9hd.m3u8$LR•IPV4•23『线路20』 +http://173.208.212.130:8181/1080p/cctv9.m3u8$LR•IPV4•23『线路20』 #EXTINF:-1 tvg-id="CCTV9" tvg-name="CCTV9" group-title="央视",CCTV9 -http://173.208.212.130:8181/1080p/cctv9.m3u8$LR•IPV4•23『线路21』 +http://173.208.212.130:8181/720p/cctv9.m3u8$LR•IPV4•23『线路21』 #EXTINF:-1 tvg-id="CCTV9" tvg-name="CCTV9" group-title="央视",CCTV9 -http://173.208.212.130:8181/720p/cctv9.m3u8$LR•IPV4•23『线路22』 +http://204.12.221.218:8181/3m1080p/cctv9.m3u8$LR•IPV4•23『线路22』 #EXTINF:-1 tvg-id="CCTV9" tvg-name="CCTV9" group-title="央视",CCTV9 -http://204.12.221.218:8181/3m1080p/cctv9.m3u8$LR•IPV4•23『线路23』 +https://xykt-fix.github.io/Y77.m3u8$LR•IPV4•23『线路23』 #EXTINF:-1 tvg-id="CCTV10" tvg-name="CCTV10" group-title="央视",CCTV10 http://112.27.235.94:8000/hls/11/index.m3u8$LR•IPV4•22『线路1』 #EXTINF:-1 tvg-id="CCTV10" tvg-name="CCTV10" group-title="央视",CCTV10 @@ -566,17 +568,17 @@ http://173.208.212.130:8181/720p/cctv10.m3u8$LR•IPV4•22『线路21』 #EXTINF:-1 tvg-id="CCTV10" tvg-name="CCTV10" group-title="央视",CCTV10 http://204.12.221.218:8181/3m1080p/cctv10.m3u8$LR•IPV4•22『线路22』 #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•22『线路1』 +http://112.27.235.94:8000/hls/12/index.m3u8$LR•IPV4•22『线路1』 #EXTINF:-1 tvg-id="CCTV11" tvg-name="CCTV11" group-title="央视",CCTV11 -http://123.163.114.168:9901/tsfile/live/0011_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•22『线路2』 +http://112.123.243.37:50085/tsfile/live/0012_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•22『线路2』 #EXTINF:-1 tvg-id="CCTV11" tvg-name="CCTV11" group-title="央视",CCTV11 -http://38.75.136.137:98/gslb/dsdqpub/cctv11hd.m3u8?auth=testpub$LR•IPV4•22『线路3』 +http://123.163.114.168:9901/tsfile/live/0011_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•22『线路3』 #EXTINF:-1 tvg-id="CCTV11" tvg-name="CCTV11" group-title="央视",CCTV11 -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv11hd$LR•IPV4•22『线路4』 +http://38.75.136.137:98/gslb/dsdqpub/cctv11hd.m3u8?auth=testpub$LR•IPV4•22『线路4』 #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•22『线路5』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv11hd$LR•IPV4•22『线路5』 #EXTINF:-1 tvg-id="CCTV11" tvg-name="CCTV11" group-title="央视",CCTV11 -http://112.27.235.94:8000/hls/12/index.m3u8$LR•IPV4•22『线路6』 +http://cd-live-stream.news.cctvplus.com/live/smil:CHANNEL1.smil/chunklist_w744036192_b1000000.m3u8$LR•IPV4•22『线路6』 #EXTINF:-1 tvg-id="CCTV11" tvg-name="CCTV11" group-title="央视",CCTV11 http://74.91.26.218:82/live/cctv11hd.m3u8$LR•IPV4•22『线路7』 #EXTINF:-1 tvg-id="CCTV11" tvg-name="CCTV11" group-title="央视",CCTV11 @@ -610,11 +612,11 @@ http://173.208.212.130:8181/720p/cctv11.m3u8$LR•IPV4•22『线路21』 #EXTINF:-1 tvg-id="CCTV11" tvg-name="CCTV11" group-title="央视",CCTV11 http://204.12.221.218:8181/3m1080p/cctv11.m3u8$LR•IPV4•22『线路22』 #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•20『线路1』 +http://74.91.26.218:82/live/cctv12hd.m3u8$LR•IPV4•20『线路1』 #EXTINF:-1 tvg-id="CCTV12" tvg-name="CCTV12" group-title="央视",CCTV12 -http://118.193.115.2:9901/tsfile/live/0012_1.m3u8?key=txiptv$LR•IPV4•20『线路2』 +http://112.123.243.37:50085/tsfile/live/0013_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•20『线路2』 #EXTINF:-1 tvg-id="CCTV12" tvg-name="CCTV12" group-title="央视",CCTV12 -http://74.91.26.218:82/live/cctv12hd.m3u8$LR•IPV4•20『线路3』 +http://118.193.115.2:9901/tsfile/live/0012_1.m3u8?key=txiptv$LR•IPV4•20『线路3』 #EXTINF:-1 tvg-id="CCTV12" tvg-name="CCTV12" group-title="央视",CCTV12 http://107.150.60.122/live/cctv12hd.m3u8$LR•IPV4•20『线路4』 #EXTINF:-1 tvg-id="CCTV12" tvg-name="CCTV12" group-title="央视",CCTV12 @@ -650,11 +652,11 @@ http://173.208.212.130:8181/720p/cctv12.m3u8$LR•IPV4•20『线路19』 #EXTINF:-1 tvg-id="CCTV12" tvg-name="CCTV12" group-title="央视",CCTV12 http://204.12.221.218:8181/3m1080p/cctv12.m3u8$LR•IPV4•20『线路20』 #EXTINF:-1 tvg-id="CCTV13" tvg-name="CCTV13" group-title="央视",CCTV13 -http://pull-hls-f26.douyinliving.com/media/stream-696107587393815378.m3u8?expire=6a50c3ab&sign=070f9c37ad3a8bb2e34edefb037983df&s_anchor=1&arch_hrchy=s2&major_anchor_level=vip&t_id=037-202607031804263FBA01D0DD5362E5EA3B-NVx2Sh$LR•IPV4•23『线路1』 +http://112.27.235.94:8000/hls/14/index.m3u8$LR•IPV4•23『线路1』 #EXTINF:-1 tvg-id="CCTV13" tvg-name="CCTV13" group-title="央视",CCTV13 -http://183.129.255.66:8480/hls/14/index.m3u8$LR•IPV4•23『线路2』 +http://pull-hls-f26.douyinliving.com/media/stream-696107587393815378.m3u8?expire=6a50c3ab&sign=070f9c37ad3a8bb2e34edefb037983df&s_anchor=1&arch_hrchy=s2&major_anchor_level=vip&t_id=037-202607031804263FBA01D0DD5362E5EA3B-NVx2Sh$LR•IPV4•23『线路2』 #EXTINF:-1 tvg-id="CCTV13" tvg-name="CCTV13" group-title="央视",CCTV13 -http://112.27.235.94:8000/hls/14/index.m3u8$LR•IPV4•23『线路3』 +http://183.129.255.66:8480/hls/14/index.m3u8$LR•IPV4•23『线路3』 #EXTINF:-1 tvg-id="CCTV13" tvg-name="CCTV13" group-title="央视",CCTV13 http://74.91.26.218:82/live/cctv13hd.m3u8$LR•IPV4•23『线路4』 #EXTINF:-1 tvg-id="CCTV13" tvg-name="CCTV13" group-title="央视",CCTV13 @@ -674,55 +676,55 @@ http://111.29.9.35:6610/000000001000/1000000002000021303/index.m3u8?channel-id=y #EXTINF:-1 tvg-id="CCTV13" tvg-name="CCTV13" group-title="央视",CCTV13 http://111.29.9.33:6610/000000001000/1000000002000021303/index.m3u8?channel-id=bestzb&Contentid=1000000002000021303&livemode=1&stbId=3$LR•IPV4•23『线路12』 #EXTINF:-1 tvg-id="CCTV13" tvg-name="CCTV13" group-title="央视",CCTV13 -http://go.bkpcp.top/mg/cctv13$LR•IPV4•23『线路13』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226316/1.m3u8?$LR•IPV6•23『线路13』 #EXTINF:-1 tvg-id="CCTV13" tvg-name="CCTV13" group-title="央视",CCTV13 -https://cdn3.163189.xyz/163189/cctv13$LR•IPV4•23『线路14』 +http://123.163.114.168:9901/tsfile/live/0013_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•23『线路14』 #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•23『线路15』 +http://116.128.243.121:85/tsfile/live/0013_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•23『线路15』 #EXTINF:-1 tvg-id="CCTV13" tvg-name="CCTV13" group-title="央视",CCTV13 -http://123.163.114.168:9901/tsfile/live/0013_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•23『线路16』 +https://event.pull.hebtv.com/jishi/cp1.m3u8$LR•IPV4•23『线路16』 #EXTINF:-1 tvg-id="CCTV13" tvg-name="CCTV13" group-title="央视",CCTV13 -http://116.128.243.121:85/tsfile/live/0013_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•23『线路17』 +http://207.56.13.146:81/cdnlive/cctv13.m3u8$LR•IPV4•23『线路17』 #EXTINF:-1 tvg-id="CCTV13" tvg-name="CCTV13" group-title="央视",CCTV13 -https://event.pull.hebtv.com/jishi/cp1.m3u8$LR•IPV4•23『线路18』 +http://192.151.150.154/live/cctv13hd.m3u8$LR•IPV4•23『线路18』 #EXTINF:-1 tvg-id="CCTV13" tvg-name="CCTV13" group-title="央视",CCTV13 -http://207.56.13.146:81/cdnlive/cctv13.m3u8$LR•IPV4•23『线路19』 +http://173.208.212.130:8181/1080p/cctv13.m3u8$LR•IPV4•23『线路19』 #EXTINF:-1 tvg-id="CCTV13" tvg-name="CCTV13" group-title="央视",CCTV13 -http://192.151.150.154/live/cctv13hd.m3u8$LR•IPV4•23『线路20』 +http://173.208.212.130:8181/720p/cctv13.m3u8$LR•IPV4•23『线路20』 #EXTINF:-1 tvg-id="CCTV13" tvg-name="CCTV13" group-title="央视",CCTV13 -http://173.208.212.130:8181/1080p/cctv13.m3u8$LR•IPV4•23『线路21』 +http://204.12.221.218:8181/3m1080p/cctv13.m3u8$LR•IPV4•23『线路21』 #EXTINF:-1 tvg-id="CCTV13" tvg-name="CCTV13" group-title="央视",CCTV13 -http://173.208.212.130:8181/720p/cctv13.m3u8$LR•IPV4•23『线路22』 +http://go.bkpcp.top/mg/cctv13$LR•IPV4•23『线路22』 #EXTINF:-1 tvg-id="CCTV13" tvg-name="CCTV13" group-title="央视",CCTV13 -http://204.12.221.218:8181/3m1080p/cctv13.m3u8$LR•IPV4•23『线路23』 +https://cdn3.163189.xyz/163189/cctv13$LR•IPV4•23『线路23』 #EXTINF:-1 tvg-id="CCTV14" tvg-name="CCTV14" group-title="央视",CCTV14 -http://123.163.114.168:9901/tsfile/live/0014_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•23『线路1』 +http://112.27.235.94:8000/hls/15/index.m3u8$LR•IPV4•23『线路1』 #EXTINF:-1 tvg-id="CCTV14" tvg-name="CCTV14" group-title="央视",CCTV14 -http://112.27.235.94:8000/hls/15/index.m3u8$LR•IPV4•23『线路2』 +http://123.163.114.168:9901/tsfile/live/0014_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•23『线路2』 #EXTINF:-1 tvg-id="CCTV14" tvg-name="CCTV14" group-title="央视",CCTV14 -http://112.123.243.37:50085/tsfile/live/0015_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•23『线路3』 +http://74.91.26.218:82/live/cctv14hd.m3u8$LR•IPV4•23『线路3』 #EXTINF:-1 tvg-id="CCTV14" tvg-name="CCTV14" group-title="央视",CCTV14 -http://74.91.26.218:82/live/cctv14hd.m3u8$LR•IPV4•23『线路4』 +http://38.75.136.137:98/gslb/dsdqbv/cctv14hd.m3u8?auth=test20251009$LR•IPV4•23『线路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•23『线路5』 +http://153.0.171.163:9901/tsfile/live/1013_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•23『线路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•23『线路6』 +http://60.10.139.113:8801/hls/13/index.m3u8$LR•IPV4•23『线路6』 #EXTINF:-1 tvg-id="CCTV14" tvg-name="CCTV14" group-title="央视",CCTV14 -http://60.10.139.113:8801/hls/13/index.m3u8$LR•IPV4•23『线路7』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000004000006673&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路7』 #EXTINF:-1 tvg-id="CCTV14" tvg-name="CCTV14" group-title="央视",CCTV14 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000004000006673&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路8』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000023358&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路8』 #EXTINF:-1 tvg-id="CCTV14" tvg-name="CCTV14" group-title="央视",CCTV14 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000023358&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路9』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000008170&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路9』 #EXTINF:-1 tvg-id="CCTV14" tvg-name="CCTV14" group-title="央视",CCTV14 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000008170&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路10』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000021349&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路10』 #EXTINF:-1 tvg-id="CCTV14" tvg-name="CCTV14" group-title="央视",CCTV14 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000021349&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路11』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000000172&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路11』 #EXTINF:-1 tvg-id="CCTV14" tvg-name="CCTV14" group-title="央视",CCTV14 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000000172&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路12』 +http://111.29.9.36:6610/000000001000/5000000004000006673/index.m3u8?channel-id=bestzb&Contentid=5000000004000006673&livemode=1&stbId=3$LR•IPV4•23『线路12』 #EXTINF:-1 tvg-id="CCTV14" tvg-name="CCTV14" group-title="央视",CCTV14 -http://111.29.9.36:6610/000000001000/5000000004000006673/index.m3u8?channel-id=bestzb&Contentid=5000000004000006673&livemode=1&stbId=3$LR•IPV4•23『线路13』 +http://111.29.9.33:6610/000000001000/1000000001000008170/index.m3u8?channel-id=bestzb&Contentid=1000000001000008170&livemode=1&stbId=3$LR•IPV4•23『线路13』 #EXTINF:-1 tvg-id="CCTV14" tvg-name="CCTV14" group-title="央视",CCTV14 -http://111.29.9.33:6610/000000001000/1000000001000008170/index.m3u8?channel-id=bestzb&Contentid=1000000001000008170&livemode=1&stbId=3$LR•IPV4•23『线路14』 +http://112.123.243.37:50085/tsfile/live/0015_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•23『线路14』 #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•23『线路15』 #EXTINF:-1 tvg-id="CCTV14" tvg-name="CCTV14" group-title="央视",CCTV14 @@ -742,9 +744,9 @@ http://173.208.212.130:8181/720p/cctv14.m3u8$LR•IPV4•23『线路22』 #EXTINF:-1 tvg-id="CCTV14" tvg-name="CCTV14" group-title="央视",CCTV14 http://204.12.221.218:8181/3m1080p/cctv14.m3u8$LR•IPV4•23『线路23』 #EXTINF:-1 tvg-id="CCTV15" tvg-name="CCTV15" group-title="央视",CCTV15 -http://123.163.114.168:85/tsfile/live/0015_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路1』 +http://112.27.235.94:8000/hls/16/index.m3u8$LR•IPV4•18『线路1』 #EXTINF:-1 tvg-id="CCTV15" tvg-name="CCTV15" group-title="央视",CCTV15 -http://112.27.235.94:8000/hls/16/index.m3u8$LR•IPV4•18『线路2』 +http://123.163.114.168:85/tsfile/live/0015_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路2』 #EXTINF:-1 tvg-id="CCTV15" tvg-name="CCTV15" group-title="央视",CCTV15 http://74.91.26.218:82/live/cctv15hd.m3u8$LR•IPV4•18『线路3』 #EXTINF:-1 tvg-id="CCTV15" tvg-name="CCTV15" group-title="央视",CCTV15 @@ -764,19 +766,19 @@ http://111.29.9.36:6610/000000001000/1000000002000008163/index.m3u8?channel-id=y #EXTINF:-1 tvg-id="CCTV15" tvg-name="CCTV15" group-title="央视",CCTV15 http://111.29.9.33:6610/000000001000/1000000002000008163/index.m3u8?channel-id=bestzb&Contentid=1000000002000008163&livemode=1&stbId=3$LR•IPV4•18『线路11』 #EXTINF:-1 tvg-id="CCTV15" tvg-name="CCTV15" group-title="央视",CCTV15 -https://xykt-fix.github.io/play/a02e/index.m3u8$LR•IPV4•18『线路12』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226333/1.m3u8?$LR•IPV6•18『线路12』 #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•18『线路13』 +http://207.56.13.146:81/cdnlive/cctv15.m3u8$LR•IPV4•18『线路13』 #EXTINF:-1 tvg-id="CCTV15" tvg-name="CCTV15" group-title="央视",CCTV15 -http://207.56.13.146:81/cdnlive/cctv15.m3u8$LR•IPV4•18『线路14』 +http://192.151.150.154/live/cctv15hd.m3u8$LR•IPV4•18『线路14』 #EXTINF:-1 tvg-id="CCTV15" tvg-name="CCTV15" group-title="央视",CCTV15 -http://192.151.150.154/live/cctv15hd.m3u8$LR•IPV4•18『线路15』 +http://173.208.212.130:8181/1080p/cctv15.m3u8$LR•IPV4•18『线路15』 #EXTINF:-1 tvg-id="CCTV15" tvg-name="CCTV15" group-title="央视",CCTV15 -http://173.208.212.130:8181/1080p/cctv15.m3u8$LR•IPV4•18『线路16』 +http://173.208.212.130:8181/720p/cctv15.m3u8$LR•IPV4•18『线路16』 #EXTINF:-1 tvg-id="CCTV15" tvg-name="CCTV15" group-title="央视",CCTV15 -http://173.208.212.130:8181/720p/cctv15.m3u8$LR•IPV4•18『线路17』 +http://204.12.221.218:8181/3m1080p/cctv15.m3u8$LR•IPV4•18『线路17』 #EXTINF:-1 tvg-id="CCTV15" tvg-name="CCTV15" group-title="央视",CCTV15 -http://204.12.221.218:8181/3m1080p/cctv15.m3u8$LR•IPV4•18『线路18』 +https://xykt-fix.github.io/play/a02e/index.m3u8$LR•IPV4•18『线路18』 #EXTINF:-1 tvg-id="CCTV16" tvg-name="CCTV16" group-title="央视",CCTV16 http://drive.mxmy.net:8888/udp/239.3.1.184:8001$LR•IPV4•12『线路1』 #EXTINF:-1 tvg-id="CCTV16" tvg-name="CCTV16" group-title="央视",CCTV16 @@ -996,25 +998,25 @@ http://192.151.150.154/live/wsjk.m3u8$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-id="CCTV卫生健康" tvg-name="CCTV卫生健康" group-title="央视",CCTV卫生健康 http://173.208.212.130:8181/720p/wsjk.m3u8$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-id="CETV1" tvg-name="CETV1" group-title="央视",CETV1 -http://117.161.133.51:81/gitv_live/G_CETV-1/G_CETV-1.m3u8?p=GITV$LR•IPV4•6『线路1』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000027253&livemode=1&stbId=yu&mode=1&$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-id="CETV1" tvg-name="CETV1" group-title="央视",CETV1 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000027253&livemode=1&stbId=yu&mode=1&$LR•IPV4•6『线路2』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000288015&livemode=1&stbId=yu&mode=1&$LR•IPV4•6『线路2』 #EXTINF:-1 tvg-id="CETV1" tvg-name="CETV1" group-title="央视",CETV1 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000288015&livemode=1&stbId=yu&mode=1&$LR•IPV4•6『线路3』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000002000002652&livemode=1&stbId=yu&mode=1&$LR•IPV4•6『线路3』 #EXTINF:-1 tvg-id="CETV1" tvg-name="CETV1" group-title="央视",CETV1 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000002000002652&livemode=1&stbId=yu&mode=1&$LR•IPV4•6『线路4』 +http://117.161.133.51:81/gitv_live/G_CETV-1/G_CETV-1.m3u8?p=GITV$LR•IPV4•6『线路4』 #EXTINF:-1 tvg-id="CETV1" tvg-name="CETV1" group-title="央视",CETV1 http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226494/1.m3u8?$LR•IPV6•6『线路5』 #EXTINF:-1 tvg-id="CETV1" tvg-name="CETV1" group-title="央视",CETV1 http://111.29.9.33:6610/000000001000/5000000002000002652/index.m3u8?channel-id=bestzb&Contentid=5000000002000002652&livemode=1&stbId=3$LR•IPV4•6『线路6』 #EXTINF:-1 tvg-id="CETV2" tvg-name="CETV2" group-title="央视",CETV2 -http://117.161.133.51:81/gitv_live/G_CETV-2/G_CETV-2.m3u8?p=GITV$LR•IPV4•5『线路1』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000288017&livemode=1&stbId=yu&mode=1&$LR•IPV4•5『线路1』 #EXTINF:-1 tvg-id="CETV2" tvg-name="CETV2" group-title="央视",CETV2 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000288017&livemode=1&stbId=yu&mode=1&$LR•IPV4•5『线路2』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000005000266004&livemode=1&stbId=yu&mode=1&$LR•IPV4•5『线路2』 #EXTINF:-1 tvg-id="CETV2" tvg-name="CETV2" group-title="央视",CETV2 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000005000266004&livemode=1&stbId=yu&mode=1&$LR•IPV4•5『线路3』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000031201&livemode=1&stbId=yu&mode=1&$LR•IPV4•5『线路3』 #EXTINF:-1 tvg-id="CETV2" tvg-name="CETV2" group-title="央视",CETV2 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000031201&livemode=1&stbId=yu&mode=1&$LR•IPV4•5『线路4』 +http://117.161.133.51:81/gitv_live/G_CETV-2/G_CETV-2.m3u8?p=GITV$LR•IPV4•5『线路4』 #EXTINF:-1 tvg-id="CETV2" tvg-name="CETV2" group-title="央视",CETV2 http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226537/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7E7AxXs4eTU2oiWrhopr9sHw%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNNxsM0Bor098BJglrhfEQTl%2CEND$LR•IPV6•5『线路5』 #EXTINF:-1 tvg-id="CETV4" tvg-name="CETV4" group-title="央视",CETV4 @@ -1124,17 +1126,17 @@ http://120.196.232.43:8088/rrs03.hw.gmcc.net/PLTV/651/224/3221226698/1.m3u8$LR #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•30『线路2』 #EXTINF:-1 tvg-id="湖南卫视" tvg-name="湖南卫视" group-title="卫视",湖南卫视 -http://120.198.95.220:9901/tsfile/live/1044_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•30『线路3』 +http://112.27.235.94:8000/hls/31/index.m3u8$LR•IPV4•30『线路3』 #EXTINF:-1 tvg-id="湖南卫视" tvg-name="湖南卫视" group-title="卫视",湖南卫视 -http://38.75.136.137:98/gslb/dsdqpub/hnwshd.m3u8?auth=testpub$LR•IPV4•30『线路4』 +http://120.198.95.220:9901/tsfile/live/1044_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•30『线路4』 #EXTINF:-1 tvg-id="湖南卫视" tvg-name="湖南卫视" group-title="卫视",湖南卫视 -http://107.150.60.122/live/hnwshd.m3u8$LR•IPV4•30『线路5』 +http://38.75.136.137:98/gslb/dsdqpub/hnwshd.m3u8?auth=testpub$LR•IPV4•30『线路5』 #EXTINF:-1 tvg-id="湖南卫视" tvg-name="湖南卫视" group-title="卫视",湖南卫视 -http://36.136.38.87:9901/tsfile/live/0128_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•30『线路6』 +http://107.150.60.122/live/hnwshd.m3u8$LR•IPV4•30『线路6』 #EXTINF:-1 tvg-id="湖南卫视" tvg-name="湖南卫视" group-title="卫视",湖南卫视 -http://antvlive.ab5c6921.cdnviet.com/antv/playlist.m3u8$LR•IPV4•30『线路7』 +http://36.136.38.87:9901/tsfile/live/0128_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•30『线路7』 #EXTINF:-1 tvg-id="湖南卫视" tvg-name="湖南卫视" group-title="卫视",湖南卫视 -http://112.27.235.94:8000/hls/31/index.m3u8$LR•IPV4•30『线路8』 +http://antvlive.ab5c6921.cdnviet.com/antv/playlist.m3u8$LR•IPV4•30『线路8』 #EXTINF:-1 tvg-id="湖南卫视" tvg-name="湖南卫视" group-title="卫视",湖南卫视 http://74.91.26.218:82/live/hnwshd.m3u8$LR•IPV4•30『线路9』 #EXTINF:-1 tvg-id="湖南卫视" tvg-name="湖南卫视" group-title="卫视",湖南卫视 @@ -1182,9 +1184,9 @@ http://111.29.9.33:6610/000000001000/1000000001000009115/index.m3u8?channel-id=b #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 http://zwebl02.cztv.com/live/channel01720Pnew.m3u8?auth_key=1783296043-345b9d43c732b0171c3e0fe16feb7ef1-0-c3f79a991105aa2cfff62f9813656e20$LR•IPV4•34『线路1』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://39.134.115.163:8080/PLTV/88888910/224/3221225703/index.m3u8$LR•IPV4•34『线路2』 +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•34『线路2』 #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•34『线路3』 +http://112.27.235.94:8000/hls/29/index.m3u8$LR•IPV4•34『线路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•34『线路4』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 @@ -1192,123 +1194,121 @@ http://124.228.160.210:9901/tsfile/live/0124_1.m3u8?key=txiptv&playlive=1&authid #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 http://36.136.38.87:9901/tsfile/live/0124_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•34『线路6』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://112.27.235.94:8000/hls/29/index.m3u8$LR•IPV4•34『线路7』 +http://38.75.136.137:98/gslb/dsdqpub/zjwshd.m3u8?auth=testpub$LR•IPV4•34『线路7』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://38.75.136.137:98/gslb/dsdqpub/zjwshd.m3u8?auth=testpub$LR•IPV4•34『线路8』 +http://ali-xwl.cztv.com/live/channel011080Plxw.m3u8$LR•IPV4•34『线路8』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://ali-xwl.cztv.com/live/channel011080Plxw.m3u8$LR•IPV4•34『线路9』 +http://ali-xwl.cztv.com/live/channel01720Plxw.m3u8$LR•IPV4•34『线路9』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://ali-xwl.cztv.com/live/channel01720Plxw.m3u8$LR•IPV4•34『线路10』 +http://23.237.228.134/live6/zhejiang.m3u8$LR•IPV4•34『线路10』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://23.237.228.134/live6/zhejiang.m3u8$LR•IPV4•34『线路11』 +http://gfr.x3322.net:9901/tsfile/live/1087_1.m3u8$LR•IPV4•34『线路11』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://gfr.x3322.net:9901/tsfile/live/1087_1.m3u8$LR•IPV4•34『线路12』 +http://api.kkitv.itv888.cn:8080/hls/urjqjvyf41q/index.m3u8$LR•IPV4•34『线路12』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://api.kkitv.itv888.cn:8080/hls/urjqjvyf41q/index.m3u8$LR•IPV4•34『线路13』 +https://iptv.catvod.com/catvod.php?id=zjws$LR•IPV4•34『线路13』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -https://iptv.catvod.com/catvod.php?id=zjws$LR•IPV4•34『线路14』 +https://httop.top/ysp-浙江卫视$LR•IPV4•34『线路14』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -https://httop.top/ysp-浙江卫视$LR•IPV4•34『线路15』 +http://iptv.huuc.edu.cn/hls/zjhd.m3u8$LR•IPV4•34『线路15』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://iptv.huuc.edu.cn/hls/zjhd.m3u8$LR•IPV4•34『线路16』 +http://153.0.171.163:9901/tsfile/live/0124_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•34『线路16』 #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•34『线路17』 +http://60.10.139.113:8801/hls/18/index.m3u8$LR•IPV4•34『线路17』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://60.10.139.113:8801/hls/18/index.m3u8$LR•IPV4•34『线路18』 +http://207.56.13.146:81/cdnlive/zjws.m3u8$LR•IPV4•34『线路18』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://207.56.13.146:81/cdnlive/zjws.m3u8$LR•IPV4•34『线路19』 +http://192.151.150.154/live/zjwshd.m3u8$LR•IPV4•34『线路19』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://192.151.150.154/live/zjwshd.m3u8$LR•IPV4•34『线路20』 +http://173.208.212.130:8181/1080p/zjws.m3u8$LR•IPV4•34『线路20』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://173.208.212.130:8181/1080p/zjws.m3u8$LR•IPV4•34『线路21』 +http://173.208.212.130:8181/720p/zjws.m3u8$LR•IPV4•34『线路21』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://173.208.212.130:8181/720p/zjws.m3u8$LR•IPV4•34『线路22』 +http://204.12.221.218:8181/3m1080p/zjws.m3u8$LR•IPV4•34『线路22』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://204.12.221.218:8181/3m1080p/zjws.m3u8$LR•IPV4•34『线路23』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000007275&livemode=1&stbId=yu&mode=1&$LR•IPV4•34『线路23』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000007275&livemode=1&stbId=yu&mode=1&$LR•IPV4•34『线路24』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000017320&livemode=1&stbId=yu&mode=1&$LR•IPV4•34『线路24』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000017320&livemode=1&stbId=yu&mode=1&$LR•IPV4•34『线路25』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000009806&livemode=1&stbId=yu&mode=1&$LR•IPV4•34『线路25』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000009806&livemode=1&stbId=yu&mode=1&$LR•IPV4•34『线路26』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000014260&livemode=1&stbId=yu&mode=1&$LR•IPV4•34『线路26』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000014260&livemode=1&stbId=yu&mode=1&$LR•IPV4•34『线路27』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=7889730693553663314&livemode=1&stbId=yu&mode=1&$LR•IPV4•34『线路27』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=7889730693553663314&livemode=1&stbId=yu&mode=1&$LR•IPV4•34『线路28』 +https://ali-m-l.cztv.com/channels/lantian/channel001/1080p.m3u8$LR•IPV4•34『线路28』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -https://ali-m-l.cztv.com/channels/lantian/channel001/1080p.m3u8$LR•IPV4•34『线路29』 +http://ali-m-l.cztv.com:80/channels/lantian/channel001/1080p.m3u8#http://ali-m-l.cztv.com/channels/lantian/channel001/1080p.m3u8#https://ali-m-l.cztv.com/channels/lantian/channel001/1080p.m3u8#https://ali-m-l.cztv.com/channels/lantian/channel001/1080p.m3u8?#http://ali-m-l.cztv.com:80/channels/lantian/channel001/1080p.m3u8$LR•IPV4•34『线路29』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://ali-m-l.cztv.com:80/channels/lantian/channel001/1080p.m3u8#http://ali-m-l.cztv.com/channels/lantian/channel001/1080p.m3u8#https://ali-m-l.cztv.com/channels/lantian/channel001/1080p.m3u8#https://ali-m-l.cztv.com/channels/lantian/channel001/1080p.m3u8?#http://ali-m-l.cztv.com:80/channels/lantian/channel001/1080p.m3u8$LR•IPV4•34『线路30』 +http://183.215.134.239:19901/tsfile/live/0124_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•34『线路30』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://183.215.134.239:19901/tsfile/live/0124_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•34『线路31』 +http://ali-m-l.cztv.com/channels/lantian/channel001/720p.m3u8$LR•IPV4•34『线路31』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://ali-m-l.cztv.com/channels/lantian/channel001/720p.m3u8$LR•IPV4•34『线路32』 +http://ali-m-l.cztv.com:80/channels/lantian/channel001/1080p.m3u8$LR•IPV4•34『线路32』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://ali-m-l.cztv.com:80/channels/lantian/channel001/1080p.m3u8$LR•IPV4•34『线路33』 +http://111.29.9.33:6610/000000001000/1000000001000009806/index.m3u8?channel-id=bestzb&Contentid=1000000001000009806&livemode=1&stbId=3$LR•IPV4•34『线路33』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://111.29.9.33:6610/000000001000/1000000001000009806/index.m3u8?channel-id=bestzb&Contentid=1000000001000009806&livemode=1&stbId=3$LR•IPV4•34『线路34』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225703/index.m3u8$LR•IPV4•34『线路34』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://118.81.195.79:9003/hls/23/index.m3u8$LR•IPV4•29『线路1』 +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•28『线路1』 #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•29『线路2』 +https://txmov2.a.kwimgs.com/bs3/video-hls/5219953535631090825_hlsb.m3u8$LR•IPV4•28『线路2』 #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•29『线路3』 +http://120.198.95.220:9901/tsfile/live/1047_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•28『线路3』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://123.163.114.168:85/tsfile/live/0107_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•29『线路4』 +http://123.163.114.168:85/tsfile/live/0107_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•28『线路4』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -https://txmov2.a.kwimgs.com/bs3/video-hls/5219953535631090825_hlsb.m3u8$LR•IPV4•29『线路5』 +http://124.228.160.210:9901/tsfile/live/1005_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•28『线路5』 #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•29『线路6』 +http://153.0.171.163:9901/tsfile/live/0107_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•28『线路6』 #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•29『线路7』 +http://38.75.136.137:98/gslb/dsdqbv/dfwshd.m3u8?auth=test20251009$LR•IPV4•28『线路7』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://bp-resource-dfl.bestv.cn/155/3/video.m3u8$LR•IPV4•29『线路8』 +http://23.237.228.134/live3/dongfang.m3u8$LR•IPV4•28『线路8』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://38.75.136.137:98/gslb/dsdqbv/dfwshd.m3u8?auth=test20251009$LR•IPV4•29『线路9』 +http://43.251.226.89:8080/play/36.m3u8$LR•IPV4•28『线路9』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://23.237.228.134/live3/dongfang.m3u8$LR•IPV4•29『线路10』 +http://gfr.x3322.net:9901/tsfile/live/1085_1.m3u8$LR•IPV4•28『线路10』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://43.251.226.89:8080/play/36.m3u8$LR•IPV4•29『线路11』 +http://api.kkitv.itv888.cn:8080/hls/p269fvbehye/index.m3u8$LR•IPV4•28『线路11』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://gfr.x3322.net:9901/tsfile/live/1085_1.m3u8$LR•IPV4•29『线路12』 +https://iptv.catvod.com/catvod.php?id=dfws$LR•IPV4•28『线路12』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://api.kkitv.itv888.cn:8080/hls/p269fvbehye/index.m3u8$LR•IPV4•29『线路13』 +https://httop.top/ysp-东方卫视$LR•IPV4•28『线路13』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -https://iptv.catvod.com/catvod.php?id=dfws$LR•IPV4•29『线路14』 +http://iptv.huuc.edu.cn/hls/dfhd.m3u8$LR•IPV4•28『线路14』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -https://httop.top/ysp-东方卫视$LR•IPV4•29『线路15』 +http://mg.hmysapp.cn:177/ckmg/zb.php?id=dfws$LR•IPV4•28『线路15』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://iptv.huuc.edu.cn/hls/dfhd.m3u8$LR•IPV4•29『线路16』 +http://omnix.cn:4000/udp/225.1.8.45:8032$LR•IPV4•28『线路16』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://mg.hmysapp.cn:177/ckmg/zb.php?id=dfws$LR•IPV4•29『线路17』 +http://60.10.139.113:8801/hls/22/index.m3u8$LR•IPV4•28『线路17』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://omnix.cn:4000/udp/225.1.8.45:8032$LR•IPV4•29『线路18』 +http://207.56.13.146:81/cdnlive/dfws.m3u8$LR•IPV4•28『线路18』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://60.10.139.113:8801/hls/22/index.m3u8$LR•IPV4•29『线路19』 +http://192.151.150.154/live/dfwshd.m3u8$LR•IPV4•28『线路19』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://207.56.13.146:81/cdnlive/dfws.m3u8$LR•IPV4•29『线路20』 +http://173.208.212.130:8181/720p/dfws.m3u8$LR•IPV4•28『线路20』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://192.151.150.154/live/dfwshd.m3u8$LR•IPV4•29『线路21』 +http://204.12.221.218:8181/3m1080p/dfws.m3u8$LR•IPV4•28『线路21』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://173.208.212.130:8181/720p/dfws.m3u8$LR•IPV4•29『线路22』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000005866&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路22』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://204.12.221.218:8181/3m1080p/dfws.m3u8$LR•IPV4•29『线路23』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000030202&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路23』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000005866&livemode=1&stbId=yu&mode=1&$LR•IPV4•29『线路24』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=6081477947334326291&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路24』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000030202&livemode=1&stbId=yu&mode=1&$LR•IPV4•29『线路25』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000014098&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路25』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=6081477947334326291&livemode=1&stbId=yu&mode=1&$LR•IPV4•29『线路26』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000010000032246&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路26』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000014098&livemode=1&stbId=yu&mode=1&$LR•IPV4•29『线路27』 +http://111.29.9.33:6610/000000001000/1000000001000005866/index.m3u8?channel-id=bestzb&Contentid=1000000001000005866&livemode=1&stbId=3$LR•IPV4•28『线路27』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000010000032246&livemode=1&stbId=yu&mode=1&$LR•IPV4•29『线路28』 -#EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://111.29.9.33:6610/000000001000/1000000001000005866/index.m3u8?channel-id=bestzb&Contentid=1000000001000005866&livemode=1&stbId=3$LR•IPV4•29『线路29』 +http://118.81.195.79:9003/hls/23/index.m3u8$LR•IPV4•28『线路28』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 -http://go.bkpcp.top/mg/bjws$LR•IPV4•29『线路1』 +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•29『线路1』 #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•29『线路2』 +http://112.27.235.94:8000/hls/27/index.m3u8$LR•IPV4•29『线路2』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 http://120.198.95.220:9901/tsfile/live/1050_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•29『线路3』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 @@ -1322,109 +1322,109 @@ http://120.198.95.220:9901/tsfile/live/1065_1.m3u8?key=txiptv&playlive=1&down=1$ #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•29『线路8』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 -http://112.27.235.94:8000/hls/27/index.m3u8$LR•IPV4•29『线路9』 +http://38.75.136.137:98/gslb/dsdqpub/bjwshd.m3u8?auth=testpub$LR•IPV4•29『线路9』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 -http://38.75.136.137:98/gslb/dsdqpub/bjwshd.m3u8?auth=testpub$LR•IPV4•29『线路10』 +http://23.237.228.134/live3/beijing.m3u8$LR•IPV4•29『线路10』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 -http://23.237.228.134/live3/beijing.m3u8$LR•IPV4•29『线路11』 +http://43.251.226.89:8080/play/40.m3u8$LR•IPV4•29『线路11』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 -http://43.251.226.89:8080/play/40.m3u8$LR•IPV4•29『线路12』 +http://gfr.x3322.net:9901/tsfile/live/1089_1.m3u8$LR•IPV4•29『线路12』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 -http://gfr.x3322.net:9901/tsfile/live/1089_1.m3u8$LR•IPV4•29『线路13』 +http://api.kkitv.itv888.cn:8080/hls/h5uud1z84gn/index.m3u8$LR•IPV4•29『线路13』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 -http://api.kkitv.itv888.cn:8080/hls/h5uud1z84gn/index.m3u8$LR•IPV4•29『线路14』 +https://iptv.catvod.com/catvod.php?id=bjws$LR•IPV4•29『线路14』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 -https://iptv.catvod.com/catvod.php?id=bjws$LR•IPV4•29『线路15』 +https://httop.top/ysp-北京卫视$LR•IPV4•29『线路15』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 -https://httop.top/ysp-北京卫视$LR•IPV4•29『线路16』 +http://iptv.huuc.edu.cn/hls/btv1hd.m3u8$LR•IPV4•29『线路16』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 -http://iptv.huuc.edu.cn/hls/btv1hd.m3u8$LR•IPV4•29『线路17』 +http://60.10.139.113:8801/hls/20/index.m3u8$LR•IPV4•29『线路17』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 -http://60.10.139.113:8801/hls/20/index.m3u8$LR•IPV4•29『线路18』 +http://192.151.150.154/live/bjwshd.m3u8$LR•IPV4•29『线路18』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 -http://192.151.150.154/live/bjwshd.m3u8$LR•IPV4•29『线路19』 +http://173.208.212.130:8181/720p/bjws.m3u8$LR•IPV4•29『线路19』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 -http://173.208.212.130:8181/720p/bjws.m3u8$LR•IPV4•29『线路20』 +http://204.12.221.218:8181/3m1080p/bjws.m3u8$LR•IPV4•29『线路20』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 -http://204.12.221.218:8181/3m1080p/bjws.m3u8$LR•IPV4•29『线路21』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000031556&livemode=1&stbId=yu&mode=1&$LR•IPV4•29『线路21』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000031556&livemode=1&stbId=yu&mode=1&$LR•IPV4•29『线路22』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000011502&livemode=1&stbId=yu&mode=1&$LR•IPV4•29『线路22』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000011502&livemode=1&stbId=yu&mode=1&$LR•IPV4•29『线路23』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000017156&livemode=1&stbId=yu&mode=1&$LR•IPV4•29『线路23』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000017156&livemode=1&stbId=yu&mode=1&$LR•IPV4•29『线路24』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000021288&livemode=1&stbId=yu&mode=1&$LR•IPV4•29『线路24』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000021288&livemode=1&stbId=yu&mode=1&$LR•IPV4•29『线路25』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265027&livemode=1&stbId=yu&mode=1&$LR•IPV4•29『线路25』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265027&livemode=1&stbId=yu&mode=1&$LR•IPV4•29『线路26』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=8186688740528366039&livemode=1&stbId=yu&mode=1&$LR•IPV4•29『线路26』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=8186688740528366039&livemode=1&stbId=yu&mode=1&$LR•IPV4•29『线路27』 +http://111.29.9.42:6610/000000001000/1000000001000017156/index.m3u8?channel-id=ystenlive&Contentid=1000000001000017156&livemode=1&stbId=3$LR•IPV4•29『线路27』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 -http://111.29.9.42:6610/000000001000/1000000001000017156/index.m3u8?channel-id=ystenlive&Contentid=1000000001000017156&livemode=1&stbId=3$LR•IPV4•29『线路28』 +http://111.29.9.33:6610/000000001000/1000000001000017156/index.m3u8?channel-id=bestzb&Contentid=1000000001000017156&livemode=1&stbId=3$LR•IPV4•29『线路28』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 -http://111.29.9.33:6610/000000001000/1000000001000017156/index.m3u8?channel-id=bestzb&Contentid=1000000001000017156&livemode=1&stbId=3$LR•IPV4•29『线路29』 +http://go.bkpcp.top/mg/bjws$LR•IPV4•29『线路29』 #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•26『线路1』 +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•26『线路1』 #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•26『线路2』 +http://112.46.85.60:8009/hls/33/index.m3u8$LR•IPV4•26『线路2』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 http://204.12.221.218:8181/3m1080p/jsws.m3u8$LR•IPV4•26『线路3』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 http://36.136.38.87:9901/tsfile/live/0127_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路4』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://112.46.85.60:8009/hls/33/index.m3u8$LR•IPV4•26『线路5』 +http://38.75.136.137:98/gslb/dsdqbv/jswshd.m3u8?auth=test20251009$LR•IPV4•26『线路5』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://38.75.136.137:98/gslb/dsdqbv/jswshd.m3u8?auth=test20251009$LR•IPV4•26『线路6』 +https://hlsbkmgsplive.miguvideo.com/migu/kailu/jswshd265/55/20200407/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•26『线路6』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -https://hlsbkmgsplive.miguvideo.com/migu/kailu/jswshd265/55/20200407/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•26『线路7』 +http://23.237.228.134/live3/jiangsu.m3u8$LR•IPV4•26『线路7』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://23.237.228.134/live3/jiangsu.m3u8$LR•IPV4•26『线路8』 +http://43.251.226.89:8080/play/37.m3u8$LR•IPV4•26『线路8』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://43.251.226.89:8080/play/37.m3u8$LR•IPV4•26『线路9』 +http://gfr.x3322.net:9901/tsfile/live/1086_1.m3u8$LR•IPV4•26『线路9』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://gfr.x3322.net:9901/tsfile/live/1086_1.m3u8$LR•IPV4•26『线路10』 +http://api.kkitv.itv888.cn:8080/hls/g1upm1u239/index.m3u8$LR•IPV4•26『线路10』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://api.kkitv.itv888.cn:8080/hls/g1upm1u239/index.m3u8$LR•IPV4•26『线路11』 +https://httop.top/ysp-江苏卫视$LR•IPV4•26『线路11』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -https://httop.top/ysp-江苏卫视$LR•IPV4•26『线路12』 +http://iptv.huuc.edu.cn/hls/jshd.m3u8$LR•IPV4•26『线路12』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://iptv.huuc.edu.cn/hls/jshd.m3u8$LR•IPV4•26『线路13』 +http://mg.hmysapp.cn:177/ckmg/zb.php?id=jsws$LR•IPV4•26『线路13』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://mg.hmysapp.cn:177/ckmg/zb.php?id=jsws$LR•IPV4•26『线路14』 +http://60.10.139.113:8801/hls/19/index.m3u8$LR•IPV4•26『线路14』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://60.10.139.113:8801/hls/19/index.m3u8$LR•IPV4•26『线路15』 +http://207.56.13.146:81/cdnlive/jsws.m3u8$LR•IPV4•26『线路15』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://207.56.13.146:81/cdnlive/jsws.m3u8$LR•IPV4•26『线路16』 +http://192.151.150.154/live/jswshd.m3u8$LR•IPV4•26『线路16』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://192.151.150.154/live/jswshd.m3u8$LR•IPV4•26『线路17』 +http://173.208.212.130:8181/1080p/jsws.m3u8$LR•IPV4•26『线路17』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://173.208.212.130:8181/1080p/jsws.m3u8$LR•IPV4•26『线路18』 +http://173.208.212.130:8181/720p/jsws.m3u8$LR•IPV4•26『线路18』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://173.208.212.130:8181/720p/jsws.m3u8$LR•IPV4•26『线路19』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000004684&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路19』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000004684&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路20』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=4796340999304424198&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路20』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=4796340999304424198&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路21』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000019351&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路21』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000019351&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路22』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000010000018509&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路22』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000010000018509&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路23』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000001828&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路23』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000001828&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路24』 +http://111.29.9.42:6610/000000001000/5000000004000019351/index.m3u8?channel-id=bestzb&Contentid=5000000004000019351&livemode=1&stbId=3$LR•IPV4•26『线路24』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://111.29.9.42:6610/000000001000/5000000004000019351/index.m3u8?channel-id=bestzb&Contentid=5000000004000019351&livemode=1&stbId=3$LR•IPV4•26『线路25』 +http://111.29.9.33:6610/000000001000/1000000001000001828/index.m3u8?channel-id=bestzb&Contentid=1000000001000001828&livemode=1&stbId=3$LR•IPV4•26『线路25』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://111.29.9.33:6610/000000001000/1000000001000001828/index.m3u8?channel-id=bestzb&Contentid=1000000001000001828&livemode=1&stbId=3$LR•IPV4•26『线路26』 +http://39.134.24.166/dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226200/index.m3u8$LR•IPV4•26『线路26』 #EXTINF:-1 tvg-id="安徽卫视" tvg-name="安徽卫视" group-title="卫视",安徽卫视 https://piccpndks.v.kcdnvip.com/audio/anhui_2/index.m3u8$LR•IPV4•24『线路1』 #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•24『线路2』 #EXTINF:-1 tvg-id="安徽卫视" tvg-name="安徽卫视" group-title="卫视",安徽卫视 -http://120.198.95.220:9901/tsfile/live/1059_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•24『线路3』 +http://112.27.235.94:8000/hls/26/index.m3u8$LR•IPV4•24『线路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•24『线路4』 +http://120.198.95.220:9901/tsfile/live/1059_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•24『线路4』 #EXTINF:-1 tvg-id="安徽卫视" tvg-name="安徽卫视" group-title="卫视",安徽卫视 -http://112.27.235.94:8000/hls/26/index.m3u8$LR•IPV4•24『线路5』 +http://124.228.160.210:9901/tsfile/live/0130_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•24『线路5』 #EXTINF:-1 tvg-id="安徽卫视" tvg-name="安徽卫视" group-title="卫视",安徽卫视 http://23.237.228.134/live8/anhui.m3u8$LR•IPV4•24『线路6』 #EXTINF:-1 tvg-id="安徽卫视" tvg-name="安徽卫视" group-title="卫视",安徽卫视 @@ -1466,9 +1466,9 @@ http://111.29.9.33:6610/000000001000/1000000001000020780/index.m3u8?channel-id=b #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 http://tmpstream.hyrtv.cn/xwzh/sd/live.m3u8$LR•IPV4•22『线路1』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://118.81.195.79:9003/hls/22/index.m3u8$LR•IPV4•22『线路2』 +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•22『线路2』 #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•22『线路3』 +http://112.27.235.94:8000/hls/36/index.m3u8$LR•IPV4•22『线路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•22『线路4』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 @@ -1476,41 +1476,41 @@ http://120.198.95.220:9901/tsfile/live/1066_1.m3u8?key=txiptv&playlive=1&down=1$ #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•22『线路6』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://112.27.235.94:8000/hls/36/index.m3u8$LR•IPV4•22『线路7』 +http://23.237.228.134/live6/chongqing.m3u8$LR•IPV4•22『线路7』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://23.237.228.134/live6/chongqing.m3u8$LR•IPV4•22『线路8』 +http://43.251.226.89:8080/play/55.m3u8$LR•IPV4•22『线路8』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://43.251.226.89:8080/play/55.m3u8$LR•IPV4•22『线路9』 +http://gfr.x3322.net:9901/tsfile/live/1093_1.m3u8$LR•IPV4•22『线路9』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://gfr.x3322.net:9901/tsfile/live/1093_1.m3u8$LR•IPV4•22『线路10』 +http://api.kkitv.itv888.cn:8080/hls/ogh3s6tbw6/index.m3u8$LR•IPV4•22『线路10』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://api.kkitv.itv888.cn:8080/hls/ogh3s6tbw6/index.m3u8$LR•IPV4•22『线路11』 +https://iptv.catvod.com/catvod.php?id=cqws$LR•IPV4•22『线路11』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 -https://iptv.catvod.com/catvod.php?id=cqws$LR•IPV4•22『线路12』 +https://httop.top/ysp-重庆卫视$LR•IPV4•22『线路12』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 -https://httop.top/ysp-重庆卫视$LR•IPV4•22『线路13』 +http://iptv.huuc.edu.cn/hls/cqhd.m3u8$LR•IPV4•22『线路13』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://iptv.huuc.edu.cn/hls/cqhd.m3u8$LR•IPV4•22『线路14』 +http://60.10.139.113:8801/hls/31/index.m3u8$LR•IPV4•22『线路14』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://60.10.139.113:8801/hls/31/index.m3u8$LR•IPV4•22『线路15』 +http://207.56.13.146:81/cdnlive/cqws.m3u8$LR•IPV4•22『线路15』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://207.56.13.146:81/cdnlive/cqws.m3u8$LR•IPV4•22『线路16』 +http://192.151.150.154/live/cqwshd.m3u8$LR•IPV4•22『线路16』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://192.151.150.154/live/cqwshd.m3u8$LR•IPV4•22『线路17』 +http://204.12.221.218:8181/3m1080p/cqws.m3u8$LR•IPV4•22『线路17』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://204.12.221.218:8181/3m1080p/cqws.m3u8$LR•IPV4•22『线路18』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000025797&livemode=1&stbId=yu&mode=1&$LR•IPV4•22『线路18』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000025797&livemode=1&stbId=yu&mode=1&$LR•IPV4•22『线路19』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000001096&livemode=1&stbId=yu&mode=1&$LR•IPV4•22『线路19』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000001096&livemode=1&stbId=yu&mode=1&$LR•IPV4•22『线路20』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000018937&livemode=1&stbId=yu&mode=1&$LR•IPV4•22『线路20』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000018937&livemode=1&stbId=yu&mode=1&$LR•IPV4•22『线路21』 +http://111.29.9.33:6610/000000001000/1000000001000001096/index.m3u8?channel-id=bestzb&Contentid=1000000001000001096&livemode=1&stbId=3$LR•IPV4•22『线路21』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://111.29.9.33:6610/000000001000/1000000001000001096/index.m3u8?channel-id=bestzb&Contentid=1000000001000001096&livemode=1&stbId=3$LR•IPV4•22『线路22』 +http://118.81.195.79:9003/hls/22/index.m3u8$LR•IPV4•22『线路22』 #EXTINF:-1 tvg-id="四川卫视" tvg-name="四川卫视" group-title="卫视",四川卫视 -http://39.134.115.163:8080/PLTV/88888910/224/3221225733/index.m3u8$LR•IPV4•23『线路1』 +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•23『线路1』 #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•23『线路2』 +http://112.27.235.94:8000/hls/35/index.m3u8$LR•IPV4•23『线路2』 #EXTINF:-1 tvg-id="四川卫视" tvg-name="四川卫视" group-title="卫视",四川卫视 http://222.90.21.30:9901/hls/45/index.m3u8$LR•IPV4•23『线路3』 #EXTINF:-1 tvg-id="四川卫视" tvg-name="四川卫视" group-title="卫视",四川卫视 @@ -1526,37 +1526,37 @@ http://120.198.95.220:9901/tsfile/live/1060_1.m3u8?key=txiptv&playlive=1&down=1$ #EXTINF:-1 tvg-id="四川卫视" tvg-name="四川卫视" group-title="卫视",四川卫视 http://153.0.171.163:85/tsfile/live/0123_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•23『线路9』 #EXTINF:-1 tvg-id="四川卫视" tvg-name="四川卫视" group-title="卫视",四川卫视 -http://112.27.235.94:8000/hls/35/index.m3u8$LR•IPV4•23『线路10』 +http://38.75.136.137:98/gslb/dsdqpub/scwshd.m3u8?auth=testpub$LR•IPV4•23『线路10』 #EXTINF:-1 tvg-id="四川卫视" tvg-name="四川卫视" group-title="卫视",四川卫视 -http://38.75.136.137:98/gslb/dsdqpub/scwshd.m3u8?auth=testpub$LR•IPV4•23『线路11』 +http://api.kkitv.itv888.cn:8080/hls/p2npnppn96p/index.m3u8$LR•IPV4•23『线路11』 #EXTINF:-1 tvg-id="四川卫视" tvg-name="四川卫视" group-title="卫视",四川卫视 -http://api.kkitv.itv888.cn:8080/hls/p2npnppn96p/index.m3u8$LR•IPV4•23『线路12』 +https://iptv.catvod.com/catvod.php?id=scws$LR•IPV4•23『线路12』 #EXTINF:-1 tvg-id="四川卫视" tvg-name="四川卫视" group-title="卫视",四川卫视 -https://iptv.catvod.com/catvod.php?id=scws$LR•IPV4•23『线路13』 +https://httop.top/ysp-四川卫视$LR•IPV4•23『线路13』 #EXTINF:-1 tvg-id="四川卫视" tvg-name="四川卫视" group-title="卫视",四川卫视 -https://httop.top/ysp-四川卫视$LR•IPV4•23『线路14』 +http://iptv.huuc.edu.cn/hls/schd.m3u8$LR•IPV4•23『线路14』 #EXTINF:-1 tvg-id="四川卫视" tvg-name="四川卫视" group-title="卫视",四川卫视 -http://iptv.huuc.edu.cn/hls/schd.m3u8$LR•IPV4•23『线路15』 +http://60.10.139.113:8801/hls/30/index.m3u8$LR•IPV4•23『线路15』 #EXTINF:-1 tvg-id="四川卫视" tvg-name="四川卫视" group-title="卫视",四川卫视 -http://60.10.139.113:8801/hls/30/index.m3u8$LR•IPV4•23『线路16』 +http://207.56.13.146:81/cdnlive/scws.m3u8$LR•IPV4•23『线路16』 #EXTINF:-1 tvg-id="四川卫视" tvg-name="四川卫视" group-title="卫视",四川卫视 -http://207.56.13.146:81/cdnlive/scws.m3u8$LR•IPV4•23『线路17』 +http://192.151.150.154/live/scwshd.m3u8$LR•IPV4•23『线路17』 #EXTINF:-1 tvg-id="四川卫视" tvg-name="四川卫视" group-title="卫视",四川卫视 -http://192.151.150.154/live/scwshd.m3u8$LR•IPV4•23『线路18』 +http://204.12.221.218:8181/3m1080p/scws.m3u8$LR•IPV4•23『线路18』 #EXTINF:-1 tvg-id="四川卫视" tvg-name="四川卫视" group-title="卫视",四川卫视 -http://204.12.221.218:8181/3m1080p/scws.m3u8$LR•IPV4•23『线路19』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000006119&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路19』 #EXTINF:-1 tvg-id="四川卫视" tvg-name="四川卫视" group-title="卫视",四川卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000006119&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路20』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000016825&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路20』 #EXTINF:-1 tvg-id="四川卫视" tvg-name="四川卫视" group-title="卫视",四川卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000016825&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路21』 +http://111.29.9.37:6610/000000001000/1000000002000016825/index.m3u8?stbId=3&livemode=1&IASHttpSessionId=OTT$LR•IPV4•23『线路21』 #EXTINF:-1 tvg-id="四川卫视" tvg-name="四川卫视" group-title="卫视",四川卫视 -http://111.29.9.37:6610/000000001000/1000000002000016825/index.m3u8?stbId=3&livemode=1&IASHttpSessionId=OTT$LR•IPV4•23『线路22』 +http://111.29.9.33:6610/000000001000/1000000002000016825/index.m3u8?channel-id=bestzb&Contentid=1000000002000016825&livemode=1&stbId=3$LR•IPV4•23『线路22』 #EXTINF:-1 tvg-id="四川卫视" tvg-name="四川卫视" group-title="卫视",四川卫视 -http://111.29.9.33:6610/000000001000/1000000002000016825/index.m3u8?channel-id=bestzb&Contentid=1000000002000016825&livemode=1&stbId=3$LR•IPV4•23『线路23』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225733/index.m3u8$LR•IPV4•23『线路23』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://118.81.195.79:9003/hls/24/index.m3u8$LR•IPV4•26『线路1』 +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•26『线路1』 #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•26『线路2』 +http://112.27.235.94:8000/hls/38/index.m3u8$LR•IPV4•26『线路2』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 http://live.zohi.tv/video/s10001-fztv-3/index.m3u8$LR•IPV4•26『线路3』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 @@ -1566,105 +1566,103 @@ http://36.136.38.87:9901/tsfile/live/0137_1.m3u8?key=txiptv&playlive=1&authid=0$ #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•26『线路6』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://61.136.172.236:9901/tsfile/live/0137_1.m3u8$LR•IPV4•26『线路7』 +http://38.75.136.137:98/gslb/dsdqpub/dnwshd.m3u8?auth=testpub$LR•IPV4•26『线路7』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://38.75.136.137:98/gslb/dsdqpub/dnwshd.m3u8?auth=testpub$LR•IPV4•26『线路8』 +https://hlsbkmgsplive.miguvideo.com/migu/kailu/dongnanws/51/20230724/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•26『线路8』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -https://hlsbkmgsplive.miguvideo.com/migu/kailu/dongnanws/51/20230724/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•26『线路9』 +http://23.237.228.134/live6/dongnan.m3u8$LR•IPV4•26『线路9』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://23.237.228.134/live6/dongnan.m3u8$LR•IPV4•26『线路10』 +http://23.237.228.134/live8/gansu.m3u8$LR•IPV4•26『线路10』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://23.237.228.134/live8/gansu.m3u8$LR•IPV4•26『线路11』 +http://43.251.226.89:8080/play/49.m3u8$LR•IPV4•26『线路11』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://43.251.226.89:8080/play/49.m3u8$LR•IPV4•26『线路12』 +http://gfr.x3322.net:9901/tsfile/live/1099_1.m3u8$LR•IPV4•26『线路12』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://gfr.x3322.net:9901/tsfile/live/1099_1.m3u8$LR•IPV4•26『线路13』 +http://api.kkitv.itv888.cn:8080/hls/jjt15bvbl7a/index.m3u8$LR•IPV4•26『线路13』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://api.kkitv.itv888.cn:8080/hls/jjt15bvbl7a/index.m3u8$LR•IPV4•26『线路14』 +https://iptv.catvod.com/catvod.php?id=dnws$LR•IPV4•26『线路14』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -https://iptv.catvod.com/catvod.php?id=dnws$LR•IPV4•26『线路15』 +https://httop.top/ysp-东南卫视$LR•IPV4•26『线路15』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -https://httop.top/ysp-东南卫视$LR•IPV4•26『线路16』 +http://iptv.huuc.edu.cn/hls/dnhd.m3u8$LR•IPV4•26『线路16』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://iptv.huuc.edu.cn/hls/dnhd.m3u8$LR•IPV4•26『线路17』 +http://60.10.139.113:8801/hls/21/index.m3u8$LR•IPV4•26『线路17』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://60.10.139.113:8801/hls/21/index.m3u8$LR•IPV4•26『线路18』 +http://207.56.13.146:81/cdnlive/dnws.m3u8$LR•IPV4•26『线路18』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://207.56.13.146:81/cdnlive/dnws.m3u8$LR•IPV4•26『线路19』 +http://192.151.150.154/live/dnwshd.m3u8$LR•IPV4•26『线路19』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://192.151.150.154/live/dnwshd.m3u8$LR•IPV4•26『线路20』 +http://204.12.221.218:8181/3m1080p/dnws.m3u8$LR•IPV4•26『线路20』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://204.12.221.218:8181/3m1080p/dnws.m3u8$LR•IPV4•26『线路21』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000010584&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路21』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000010584&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路22』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000001000005829&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路22』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000001000005829&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路23』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000002000009263&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路23』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000002000009263&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路24』 +http://111.29.9.37:6610/000000001000/1000000002000009263/index.m3u8?stbId=3&livemode=1&IASHttpSessionId=OTT$LR•IPV4•26『线路24』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://111.29.9.37:6610/000000001000/1000000002000009263/index.m3u8?stbId=3&livemode=1&IASHttpSessionId=OTT$LR•IPV4•26『线路25』 +http://111.29.9.33:6610/000000001000/1000000002000009263/index.m3u8?channel-id=bestzb&Contentid=1000000002000009263&livemode=1&stbId=3$LR•IPV4•26『线路25』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://111.29.9.33:6610/000000001000/1000000002000009263/index.m3u8?channel-id=bestzb&Contentid=1000000002000009263&livemode=1&stbId=3$LR•IPV4•26『线路26』 +http://118.81.195.79:9003/hls/24/index.m3u8$LR•IPV4•26『线路26』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="卫视",深圳卫视 -https://sztv-hls.sztv.com.cn/sztvgjpd/500/o47pzsvm.m3u8?sign=04712152a9c7592d280cc50a0597352b&t=6a4aff31$LR•IPV4•28『线路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•27『线路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•28『线路2』 +http://112.27.235.94:8000/hls/33/index.m3u8$LR•IPV4•27『线路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•28『线路3』 +http://120.198.95.220:9901/tsfile/live/1048_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•27『线路3』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://123.163.114.168:9901/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•28『线路4』 +http://123.163.114.168:9901/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•27『线路4』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://38.75.136.137:98/gslb/dsdqpub/szwshd.m3u8?auth=testpub$LR•IPV4•28『线路5』 +http://38.75.136.137:98/gslb/dsdqpub/szwshd.m3u8?auth=testpub$LR•IPV4•27『线路5』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://198.204.228.26/live/szwshd.m3u8$LR•IPV4•28『线路6』 +http://198.204.228.26/live/szwshd.m3u8$LR•IPV4•27『线路6』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://36.136.38.87:9901/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•28『线路7』 +http://36.136.38.87:9901/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•27『线路7』 #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•28『线路8』 +http://153.0.171.163:9901/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•27『线路8』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://112.27.235.94:8000/hls/33/index.m3u8$LR•IPV4•28『线路9』 +http://23.237.228.134/live6/shenzhen.m3u8$LR•IPV4•27『线路9』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://23.237.228.134/live6/shenzhen.m3u8$LR•IPV4•28『线路10』 +http://gfr.x3322.net:9901/tsfile/live/1095_1.m3u8$LR•IPV4•27『线路10』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://gfr.x3322.net:9901/tsfile/live/1095_1.m3u8$LR•IPV4•28『线路11』 +http://api.kkitv.itv888.cn:8080/hls/iftsd32ykm/index.m3u8$LR•IPV4•27『线路11』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://api.kkitv.itv888.cn:8080/hls/iftsd32ykm/index.m3u8$LR•IPV4•28『线路12』 +https://iptv.catvod.com/catvod.php?id=szws$LR•IPV4•27『线路12』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="卫视",深圳卫视 -https://iptv.catvod.com/catvod.php?id=szws$LR•IPV4•28『线路13』 +https://httop.top/ysp-深圳卫视$LR•IPV4•27『线路13』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="卫视",深圳卫视 -https://httop.top/ysp-深圳卫视$LR•IPV4•28『线路14』 +http://iptv.huuc.edu.cn/hls/szhd.m3u8$LR•IPV4•27『线路14』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://iptv.huuc.edu.cn/hls/szhd.m3u8$LR•IPV4•28『线路15』 +http://38.64.72.148:80/hls/modn/list/4007/playlist.m3u8$LR•IPV4•27『线路15』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://38.64.72.148:80/hls/modn/list/4007/playlist.m3u8$LR•IPV4•28『线路16』 +http://60.10.139.113:8801/hls/24/index.m3u8$LR•IPV4•27『线路16』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://60.10.139.113:8801/hls/24/index.m3u8$LR•IPV4•28『线路17』 +http://207.56.13.146:81/cdnlive/szws.m3u8$LR•IPV4•27『线路17』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://207.56.13.146:81/cdnlive/szws.m3u8$LR•IPV4•28『线路18』 +http://192.151.150.154/live/szwshd.m3u8$LR•IPV4•27『线路18』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://192.151.150.154/live/szwshd.m3u8$LR•IPV4•28『线路19』 +http://173.208.212.130:8181/720p/szws.m3u8$LR•IPV4•27『线路19』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://173.208.212.130:8181/720p/szws.m3u8$LR•IPV4•28『线路20』 +http://204.12.221.218:8181/3m1080p/szws.m3u8$LR•IPV4•27『线路20』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://204.12.221.218:8181/3m1080p/szws.m3u8$LR•IPV4•28『线路21』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000024026&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路21』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000024026&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路22』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000007410&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路22』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000007410&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路23』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000009227&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路23』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000009227&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路24』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000011645&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路24』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000011645&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路25』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=5352218613763113657&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路25』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=5352218613763113657&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路26』 +http://111.29.9.38:6610/000000001000/1000000001000009227/index.m3u8?channel-id=ystenlive&Contentid=1000000001000009227&livemode=1&stbId=3$LR•IPV4•27『线路26』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://111.29.9.38:6610/000000001000/1000000001000009227/index.m3u8?channel-id=ystenlive&Contentid=1000000001000009227&livemode=1&stbId=3$LR•IPV4•28『线路27』 -#EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://111.29.9.33:6610/000000001000/1000000001000009227/index.m3u8?channel-id=bestzb&Contentid=1000000001000009227&livemode=1&stbId=3$LR•IPV4•28『线路28』 +http://111.29.9.33:6610/000000001000/1000000001000009227/index.m3u8?channel-id=bestzb&Contentid=1000000001000009227&livemode=1&stbId=3$LR•IPV4•27『线路27』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -http://118.81.195.79:9003/hls/26/index.m3u8$LR•IPV4•27『线路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•27『线路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•27『线路2』 +http://112.27.235.94:8000/hls/30/index.m3u8$LR•IPV4•27『线路2』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 http://173.208.212.130:8181/720p/gdws.m3u8$LR•IPV4•27『线路3』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 @@ -1676,49 +1674,49 @@ http://124.228.160.210:9901/tsfile/live/0125_1.m3u8?key=txiptv&playlive=1&authid #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•27『线路7』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -http://112.27.235.94:8000/hls/30/index.m3u8$LR•IPV4•27『线路8』 +http://23.237.228.134/live6/guangdong.m3u8$LR•IPV4•27『线路8』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -http://23.237.228.134/live6/guangdong.m3u8$LR•IPV4•27『线路9』 +http://43.251.226.89:8080/play/38.m3u8$LR•IPV4•27『线路9』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -http://43.251.226.89:8080/play/38.m3u8$LR•IPV4•27『线路10』 +http://gfr.x3322.net:9901/tsfile/live/1096_1.m3u8$LR•IPV4•27『线路10』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -http://gfr.x3322.net:9901/tsfile/live/1096_1.m3u8$LR•IPV4•27『线路11』 +http://api.kkitv.itv888.cn:8080/hls/qr6872071g/index.m3u8$LR•IPV4•27『线路11』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -http://api.kkitv.itv888.cn:8080/hls/qr6872071g/index.m3u8$LR•IPV4•27『线路12』 +https://iptv.catvod.com/catvod.php?id=gdws$LR•IPV4•27『线路12』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -https://iptv.catvod.com/catvod.php?id=gdws$LR•IPV4•27『线路13』 +https://httop.top/ysp-广东卫视$LR•IPV4•27『线路13』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -https://httop.top/ysp-广东卫视$LR•IPV4•27『线路14』 +http://iptv.huuc.edu.cn/hls/gdhd.m3u8$LR•IPV4•27『线路14』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -http://iptv.huuc.edu.cn/hls/gdhd.m3u8$LR•IPV4•27『线路15』 +http://mg.hmysapp.cn:177/ckmg/zb.php?id=gdws$LR•IPV4•27『线路15』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -http://mg.hmysapp.cn:177/ckmg/zb.php?id=gdws$LR•IPV4•27『线路16』 +http://60.10.139.113:8801/hls/26/index.m3u8$LR•IPV4•27『线路16』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -http://60.10.139.113:8801/hls/26/index.m3u8$LR•IPV4•27『线路17』 +http://207.56.13.146:81/cdnlive/gdws.m3u8$LR•IPV4•27『线路17』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -http://207.56.13.146:81/cdnlive/gdws.m3u8$LR•IPV4•27『线路18』 +http://192.151.150.154/live/gdwshd.m3u8$LR•IPV4•27『线路18』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -http://192.151.150.154/live/gdwshd.m3u8$LR•IPV4•27『线路19』 +http://204.12.221.218:8181/3m1080p/gdws.m3u8$LR•IPV4•27『线路19』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -http://204.12.221.218:8181/3m1080p/gdws.m3u8$LR•IPV4•27『线路20』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=5616881981321254555&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路20』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=5616881981321254555&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路21』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000030417&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路21』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000030417&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路22』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000014694&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路22』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000014694&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路23』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000014176&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路23』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000014176&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路24』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000028357&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路24』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000028357&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路25』 +http://111.29.9.36:6610/000000001000/1000000001000028357/index.m3u8?channel-id=ystenlive&Contentid=1000000001000028357&livemode=1&stbId=3$LR•IPV4•27『线路25』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -http://111.29.9.36:6610/000000001000/1000000001000028357/index.m3u8?channel-id=ystenlive&Contentid=1000000001000028357&livemode=1&stbId=3$LR•IPV4•27『线路26』 +http://111.29.9.33:6610/000000001000/1000000001000014176/index.m3u8?channel-id=bestzb&Contentid=1000000001000014176&livemode=1&stbId=3$LR•IPV4•27『线路26』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -http://111.29.9.33:6610/000000001000/1000000001000014176/index.m3u8?channel-id=bestzb&Contentid=1000000001000014176&livemode=1&stbId=3$LR•IPV4•27『线路27』 +http://118.81.195.79:9003/hls/26/index.m3u8$LR•IPV4•27『线路27』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -http://118.81.195.79:9003/hls/27/index.m3u8$LR•IPV4•23『线路1』 +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•23『线路1』 #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•23『线路2』 +https://hlscdn.liangtv.cn/live/de0f97348eb84f62aa6b7d8cf0430770/dd505d87880c478f901f38560ca4d4e6.m3u8$LR•IPV4•23『线路2』 #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•23『线路3』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 @@ -1730,175 +1728,171 @@ http://36.136.38.87:9901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=1&authid=0$ #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 http://153.0.171.163:9901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•23『线路7』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -https://hlscdn.liangtv.cn/live/de0f97348eb84f62aa6b7d8cf0430770/dd505d87880c478f901f38560ca4d4e6.m3u8$LR•IPV4•23『线路8』 +http://38.75.136.137:98/gslb/dsdqpub/gxwshd.m3u8?auth=testpub$LR•IPV4•23『线路8』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -http://38.75.136.137:98/gslb/dsdqpub/gxwshd.m3u8?auth=testpub$LR•IPV4•23『线路9』 +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•23『线路9』 #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•23『线路10』 +http://23.237.228.134/live6/guangxi.m3u8$LR•IPV4•23『线路10』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -http://23.237.228.134/live6/guangxi.m3u8$LR•IPV4•23『线路11』 +http://23.237.228.134/live6/guizhou.m3u8$LR•IPV4•23『线路11』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -http://23.237.228.134/live6/guizhou.m3u8$LR•IPV4•23『线路12』 +http://api.kkitv.itv888.cn:8080/hls/yvz4ndj9dqb/index.m3u8$LR•IPV4•23『线路12』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -http://api.kkitv.itv888.cn:8080/hls/yvz4ndj9dqb/index.m3u8$LR•IPV4•23『线路13』 +https://iptv.catvod.com/catvod.php?id=gxws$LR•IPV4•23『线路13』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -https://iptv.catvod.com/catvod.php?id=gxws$LR•IPV4•23『线路14』 +https://httop.top/ysp-广西卫视$LR•IPV4•23『线路14』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -https://httop.top/ysp-广西卫视$LR•IPV4•23『线路15』 +http://60.10.139.113:8801/hls/52/index.m3u8$LR•IPV4•23『线路15』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -http://60.10.139.113:8801/hls/52/index.m3u8$LR•IPV4•23『线路16』 +http://207.56.13.146:81/cdnlive/gxws.m3u8$LR•IPV4•23『线路16』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -http://207.56.13.146:81/cdnlive/gxws.m3u8$LR•IPV4•23『线路17』 +http://192.151.150.154/live/gxwshd.m3u8$LR•IPV4•23『线路17』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -http://192.151.150.154/live/gxwshd.m3u8$LR•IPV4•23『线路18』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000031118&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路18』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000031118&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路19』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000006000040014&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路19』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000006000040014&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路20』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000002000019837&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路20』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000002000019837&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路21』 +http://111.29.9.37:6610/000000001000/1000000002000019837/index.m3u8?stbId=3&livemode=1&IASHttpSessionId=OTT$LR•IPV4•23『线路21』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -http://111.29.9.37:6610/000000001000/1000000002000019837/index.m3u8?stbId=3&livemode=1&IASHttpSessionId=OTT$LR•IPV4•23『线路22』 +http://111.29.9.33:6610/000000001000/1000000002000019837/index.m3u8?channel-id=bestzb&Contentid=1000000002000019837&livemode=1&stbId=3$LR•IPV4•23『线路22』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -http://111.29.9.33:6610/000000001000/1000000002000019837/index.m3u8?channel-id=bestzb&Contentid=1000000002000019837&livemode=1&stbId=3$LR•IPV4•23『线路23』 +http://118.81.195.79:9003/hls/27/index.m3u8$LR•IPV4•23『线路23』 #EXTINF:-1 tvg-id="厦门卫视" tvg-name="厦门卫视" group-title="卫视",厦门卫视 -https://live1b.kxm.xmtv.cn/xmtvbf/tvzb/live.m3u8$LR•IPV4•8『线路1』 +http://183.11.239.36:808/hls/17/index.m3u8$LR•IPV4•7『线路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•8『线路2』 +https://iptv.catvod.com/catvod.php?id=xmws$LR•IPV4•7『线路2』 #EXTINF:-1 tvg-id="厦门卫视" tvg-name="厦门卫视" group-title="卫视",厦门卫视 -http://112.25.48.68/live/program/live/xmws/1300000/mnf.m3u8$LR•IPV4•8『线路3』 +http://192.151.150.154/live/xmws.m3u8$LR•IPV4•7『线路3』 #EXTINF:-1 tvg-id="厦门卫视" tvg-name="厦门卫视" group-title="卫视",厦门卫视 -http://183.11.239.36:808/hls/17/index.m3u8$LR•IPV4•8『线路4』 +http://204.12.221.218:8181/3m1080p/xmws.m3u8$LR•IPV4•7『线路4』 #EXTINF:-1 tvg-id="厦门卫视" tvg-name="厦门卫视" group-title="卫视",厦门卫视 -https://iptv.catvod.com/catvod.php?id=xmws$LR•IPV4•8『线路5』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000005000266006&livemode=1&stbId=yu&mode=1&$LR•IPV4•7『线路5』 #EXTINF:-1 tvg-id="厦门卫视" tvg-name="厦门卫视" group-title="卫视",厦门卫视 -http://192.151.150.154/live/xmws.m3u8$LR•IPV4•8『线路6』 +http://223.110.245.159/ott.js.chinamobile.com/PLTV/3/224/3221226996/index.m3u8$LR•IPV4•7『线路6』 #EXTINF:-1 tvg-id="厦门卫视" tvg-name="厦门卫视" group-title="卫视",厦门卫视 -http://204.12.221.218:8181/3m1080p/xmws.m3u8$LR•IPV4•8『线路7』 -#EXTINF:-1 tvg-id="厦门卫视" tvg-name="厦门卫视" group-title="卫视",厦门卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000005000266006&livemode=1&stbId=yu&mode=1&$LR•IPV4•8『线路8』 +http://112.25.48.68/live/program/live/xmws/1300000/mnf.m3u8$LR•IPV4•7『线路7』 #EXTINF:-1 tvg-id="甘肃卫视" tvg-name="甘肃卫视" group-title="卫视",甘肃卫视 -http://118.81.195.79:9003/hls/25/index.m3u8$LR•IPV4•12『线路1』 +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•12『线路1』 #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•12『线路2』 +https://iptv.catvod.com/catvod.php?id=gsws$LR•IPV4•12『线路2』 #EXTINF:-1 tvg-id="甘肃卫视" tvg-name="甘肃卫视" group-title="卫视",甘肃卫视 -https://iptv.catvod.com/catvod.php?id=gsws$LR•IPV4•12『线路3』 +https://httop.top/ysp-甘肃卫视$LR•IPV4•12『线路3』 #EXTINF:-1 tvg-id="甘肃卫视" tvg-name="甘肃卫视" group-title="卫视",甘肃卫视 -https://httop.top/ysp-甘肃卫视$LR•IPV4•12『线路4』 +http://207.56.13.146:81/cdnlive/gsws.m3u8$LR•IPV4•12『线路4』 #EXTINF:-1 tvg-id="甘肃卫视" tvg-name="甘肃卫视" group-title="卫视",甘肃卫视 -http://207.56.13.146:81/cdnlive/gsws.m3u8$LR•IPV4•12『线路5』 +http://192.151.150.154/live/gswshd.m3u8$LR•IPV4•12『线路5』 #EXTINF:-1 tvg-id="甘肃卫视" tvg-name="甘肃卫视" group-title="卫视",甘肃卫视 -http://192.151.150.154/live/gswshd.m3u8$LR•IPV4•12『线路6』 +http://204.12.221.218:8181/3m1080p/gsws.m3u8$LR•IPV4•12『线路6』 #EXTINF:-1 tvg-id="甘肃卫视" tvg-name="甘肃卫视" group-title="卫视",甘肃卫视 -http://204.12.221.218:8181/3m1080p/gsws.m3u8$LR•IPV4•12『线路7』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000031121&livemode=1&stbId=yu&mode=1&$LR•IPV4•12『线路7』 #EXTINF:-1 tvg-id="甘肃卫视" tvg-name="甘肃卫视" group-title="卫视",甘肃卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000031121&livemode=1&stbId=yu&mode=1&$LR•IPV4•12『线路8』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000017827&livemode=1&stbId=yu&mode=1&$LR•IPV4•12『线路8』 #EXTINF:-1 tvg-id="甘肃卫视" tvg-name="甘肃卫视" group-title="卫视",甘肃卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000017827&livemode=1&stbId=yu&mode=1&$LR•IPV4•12『线路9』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000006000040021&livemode=1&stbId=yu&mode=1&$LR•IPV4•12『线路9』 #EXTINF:-1 tvg-id="甘肃卫视" tvg-name="甘肃卫视" group-title="卫视",甘肃卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000006000040021&livemode=1&stbId=yu&mode=1&$LR•IPV4•12『线路10』 +http://111.29.9.37:6610/000000001000/1000000002000017827/index.m3u8?stbId=3&livemode=1&IASHttpSessionId=OTT$LR•IPV4•12『线路10』 #EXTINF:-1 tvg-id="甘肃卫视" tvg-name="甘肃卫视" group-title="卫视",甘肃卫视 -http://111.29.9.37:6610/000000001000/1000000002000017827/index.m3u8?stbId=3&livemode=1&IASHttpSessionId=OTT$LR•IPV4•12『线路11』 +http://111.29.9.33:6610/000000001000/1000000002000017827/index.m3u8?channel-id=bestzb&Contentid=1000000002000017827&livemode=1&stbId=3$LR•IPV4•12『线路11』 #EXTINF:-1 tvg-id="甘肃卫视" tvg-name="甘肃卫视" group-title="卫视",甘肃卫视 -http://111.29.9.33:6610/000000001000/1000000002000017827/index.m3u8?channel-id=bestzb&Contentid=1000000002000017827&livemode=1&stbId=3$LR•IPV4•12『线路12』 +http://118.81.195.79:9003/hls/25/index.m3u8$LR•IPV4•12『线路12』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://183.207.248.71/gitv/live1/G_GUIZHOU/G_GUIZHOU$LR•IPV4•25『线路1』 +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•25『线路1』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://39.134.115.163:8080/PLTV/88888910/224/3221225728/index.m3u8$LR•IPV4•25『线路2』 +http://112.27.235.94:8000/hls/46/index.m3u8$LR•IPV4•25『线路2』 #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•25『线路3』 +http://120.198.95.220:9901/tsfile/live/1052_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•25『线路3』 #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•25『线路4』 +http://222.214.208.34:59901/tsfile/live/0120_1.m3u8$LR•IPV4•25『线路4』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://222.214.208.34:59901/tsfile/live/0120_1.m3u8$LR•IPV4•25『线路5』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=gzwshd$LR•IPV4•25『线路5』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=gzwshd$LR•IPV4•25『线路6』 +http://222.90.21.30:9901/hls/34/index.m3u8$LR•IPV4•25『线路6』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://222.90.21.30:9901/hls/34/index.m3u8$LR•IPV4•25『线路7』 +https://shcm-stream-cf1.stream.264788.xyz/cms001/ch00000090990000001184/index.m3u8?streamid=091bd59ea031989839c23459bb8cc9d4&streamkey=02BjlnRKVk4w1OimLNBUheOcwPFu2B6oL1pyXGnUypEwAWXSi5pA2M8vAAQNdTDwVOBg3wflpOJH2qUejFLrTdJs5UqkOuOhX0oeeOuZCXNP6xGvpxjLkvkGHVF&token=1775846394-f40678590315c3a3-0-795d5d8e9ef7cc7d142de1b17bf1df44$LR•IPV4•25『线路7』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -https://shcm-stream-cf1.stream.264788.xyz/cms001/ch00000090990000001184/index.m3u8?streamid=091bd59ea031989839c23459bb8cc9d4&streamkey=02BjlnRKVk4w1OimLNBUheOcwPFu2B6oL1pyXGnUypEwAWXSi5pA2M8vAAQNdTDwVOBg3wflpOJH2qUejFLrTdJs5UqkOuOhX0oeeOuZCXNP6xGvpxjLkvkGHVF&token=1775846394-f40678590315c3a3-0-795d5d8e9ef7cc7d142de1b17bf1df44$LR•IPV4•25『线路8』 +http://36.136.38.87:9901/tsfile/live/0120_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•25『线路8』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://36.136.38.87:9901/tsfile/live/0120_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•25『线路9』 +http://153.0.171.163:9901/tsfile/live/0120_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•25『线路9』 #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•25『线路10』 +http://38.75.136.137:98/gslb/dsdqpub/gzwshd.m3u8?auth=testpub$LR•IPV4•25『线路10』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://112.27.235.94:8000/hls/46/index.m3u8$LR•IPV4•25『线路11』 +http://23.237.228.134/live6/hainan.m3u8$LR•IPV4•25『线路11』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://38.75.136.137:98/gslb/dsdqpub/gzwshd.m3u8?auth=testpub$LR•IPV4•25『线路12』 +http://gfr.x3322.net:9901/tsfile/live/1100_1.m3u8$LR•IPV4•25『线路12』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://23.237.228.134/live6/hainan.m3u8$LR•IPV4•25『线路13』 +http://api.kkitv.itv888.cn:8080/hls/5dqtpf3arun/index.m3u8$LR•IPV4•25『线路13』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://gfr.x3322.net:9901/tsfile/live/1100_1.m3u8$LR•IPV4•25『线路14』 +https://iptv.catvod.com/catvod.php?id=gzws$LR•IPV4•25『线路14』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://api.kkitv.itv888.cn:8080/hls/5dqtpf3arun/index.m3u8$LR•IPV4•25『线路15』 +https://httop.top/ysp-贵州卫视$LR•IPV4•25『线路15』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -https://iptv.catvod.com/catvod.php?id=gzws$LR•IPV4•25『线路16』 +http://60.10.139.113:8801/hls/36/index.m3u8$LR•IPV4•25『线路16』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -https://httop.top/ysp-贵州卫视$LR•IPV4•25『线路17』 +http://207.56.13.146:81/cdnlive/gzws.m3u8$LR•IPV4•25『线路17』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://60.10.139.113:8801/hls/36/index.m3u8$LR•IPV4•25『线路18』 +http://192.151.150.154/live/gzwshd.m3u8$LR•IPV4•25『线路18』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://207.56.13.146:81/cdnlive/gzws.m3u8$LR•IPV4•25『线路19』 +http://204.12.221.218:8181/3m1080p/gzws.m3u8$LR•IPV4•25『线路19』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://192.151.150.154/live/gzwshd.m3u8$LR•IPV4•25『线路20』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000025843&livemode=1&stbId=yu&mode=1&$LR•IPV4•25『线路20』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://204.12.221.218:8181/3m1080p/gzws.m3u8$LR•IPV4•25『线路21』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000002000003169&livemode=1&stbId=yu&mode=1&$LR•IPV4•25『线路21』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000025843&livemode=1&stbId=yu&mode=1&$LR•IPV4•25『线路22』 +http://111.29.9.44:6610/000000001000/5000000004000025843/index.m3u8?channel-id=bestzb&Contentid=5000000004000025843&livemode=1&stbId=3$LR•IPV4•25『线路22』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000002000003169&livemode=1&stbId=yu&mode=1&$LR•IPV4•25『线路23』 +http://111.29.9.33:6610/000000001000/1000000002000003169/index.m3u8?channel-id=bestzb&Contentid=1000000002000003169&livemode=1&stbId=3$LR•IPV4•25『线路23』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://111.29.9.44:6610/000000001000/5000000004000025843/index.m3u8?channel-id=bestzb&Contentid=5000000004000025843&livemode=1&stbId=3$LR•IPV4•25『线路24』 +http://183.207.248.71/gitv/live1/G_GUIZHOU/G_GUIZHOU$LR•IPV4•25『线路24』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://111.29.9.33:6610/000000001000/1000000002000003169/index.m3u8?channel-id=bestzb&Contentid=1000000002000003169&livemode=1&stbId=3$LR•IPV4•25『线路25』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225728/index.m3u8$LR•IPV4•25『线路25』 #EXTINF:-1 tvg-id="河北卫视" tvg-name="河北卫视" group-title="卫视",河北卫视 -https://tv.pull.hebtv.com/jishi/nongminpindao.m3u8?t=1783327215&k=768f81548dfa25e1b24b8756b10b0e20$LR•IPV4•22『线路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•21『线路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•22『线路2』 +http://112.27.235.94:8000/hls/39/index.m3u8$LR•IPV4•21『线路2』 #EXTINF:-1 tvg-id="河北卫视" tvg-name="河北卫视" group-title="卫视",河北卫视 -http://222.90.21.30:9901/hls/44/index.m3u8$LR•IPV4•22『线路3』 +http://222.90.21.30:9901/hls/44/index.m3u8$LR•IPV4•21『线路3』 #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•22『线路4』 +http://36.136.38.87:9901/tsfile/live/0117_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•21『线路4』 #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•22『线路5』 +http://153.0.171.163:9901/tsfile/live/0117_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•21『线路5』 #EXTINF:-1 tvg-id="河北卫视" tvg-name="河北卫视" group-title="卫视",河北卫视 -http://event.pull.hebtv.com/jishi/weishi_tingyun.m3u8$LR•IPV4•22『线路6』 +http://event.pull.hebtv.com/jishi/weishi_tingyun.m3u8$LR•IPV4•21『线路6』 #EXTINF:-1 tvg-id="河北卫视" tvg-name="河北卫视" group-title="卫视",河北卫视 -http://120.76.248.139/live/bfgd/4200000108.m3u8$LR•IPV4•22『线路7』 +http://23.237.228.134/live8/hebei.m3u8$LR•IPV4•21『线路7』 #EXTINF:-1 tvg-id="河北卫视" tvg-name="河北卫视" group-title="卫视",河北卫视 -http://23.237.228.134/live8/hebei.m3u8$LR•IPV4•22『线路8』 +http://43.251.226.89:8080/play/42.m3u8$LR•IPV4•21『线路8』 #EXTINF:-1 tvg-id="河北卫视" tvg-name="河北卫视" group-title="卫视",河北卫视 -http://43.251.226.89:8080/play/42.m3u8$LR•IPV4•22『线路9』 +http://gfr.x3322.net:9901/tsfile/live/1091_1.m3u8$LR•IPV4•21『线路9』 #EXTINF:-1 tvg-id="河北卫视" tvg-name="河北卫视" group-title="卫视",河北卫视 -http://gfr.x3322.net:9901/tsfile/live/1091_1.m3u8$LR•IPV4•22『线路10』 +https://iptv.catvod.com/catvod.php?id=hbws$LR•IPV4•21『线路10』 #EXTINF:-1 tvg-id="河北卫视" tvg-name="河北卫视" group-title="卫视",河北卫视 -https://iptv.catvod.com/catvod.php?id=hbws$LR•IPV4•22『线路11』 +https://httop.top/ysp-河北卫视$LR•IPV4•21『线路11』 #EXTINF:-1 tvg-id="河北卫视" tvg-name="河北卫视" group-title="卫视",河北卫视 -https://httop.top/ysp-河北卫视$LR•IPV4•22『线路12』 +http://iptv.huuc.edu.cn/hls/hebhd.m3u8$LR•IPV4•21『线路12』 #EXTINF:-1 tvg-id="河北卫视" tvg-name="河北卫视" group-title="卫视",河北卫视 -http://iptv.huuc.edu.cn/hls/hebhd.m3u8$LR•IPV4•22『线路13』 +http://60.10.139.113:8801/hls/16/index.m3u8$LR•IPV4•21『线路13』 #EXTINF:-1 tvg-id="河北卫视" tvg-name="河北卫视" group-title="卫视",河北卫视 -http://60.10.139.113:8801/hls/16/index.m3u8$LR•IPV4•22『线路14』 +http://207.56.13.146:81/cdnlive/hews.m3u8$LR•IPV4•21『线路14』 #EXTINF:-1 tvg-id="河北卫视" tvg-name="河北卫视" group-title="卫视",河北卫视 -http://207.56.13.146:81/cdnlive/hews.m3u8$LR•IPV4•22『线路15』 +http://192.151.150.154/live/hewshd.m3u8$LR•IPV4•21『线路15』 #EXTINF:-1 tvg-id="河北卫视" tvg-name="河北卫视" group-title="卫视",河北卫视 -http://192.151.150.154/live/hewshd.m3u8$LR•IPV4•22『线路16』 +http://173.208.212.130:8181/720p/hews.m3u8$LR•IPV4•21『线路16』 #EXTINF:-1 tvg-id="河北卫视" tvg-name="河北卫视" group-title="卫视",河北卫视 -http://173.208.212.130:8181/720p/hews.m3u8$LR•IPV4•22『线路17』 +http://204.12.221.218:8181/3m1080p/hews.m3u8$LR•IPV4•21『线路17』 #EXTINF:-1 tvg-id="河北卫视" tvg-name="河北卫视" group-title="卫视",河北卫视 -http://204.12.221.218:8181/3m1080p/hews.m3u8$LR•IPV4•22『线路18』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040016&livemode=1&stbId=yu&mode=1&$LR•IPV4•21『线路18』 #EXTINF:-1 tvg-id="河北卫视" tvg-name="河北卫视" group-title="卫视",河北卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040016&livemode=1&stbId=yu&mode=1&$LR•IPV4•22『线路19』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000017118&livemode=1&stbId=yu&mode=1&$LR•IPV4•21『线路19』 #EXTINF:-1 tvg-id="河北卫视" tvg-name="河北卫视" group-title="卫视",河北卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000017118&livemode=1&stbId=yu&mode=1&$LR•IPV4•22『线路20』 +http://111.29.9.37:6610/000000001000/1000000002000017118/index.m3u8?stbId=3&livemode=1&IASHttpSessionId=OTT$LR•IPV4•21『线路20』 #EXTINF:-1 tvg-id="河北卫视" tvg-name="河北卫视" group-title="卫视",河北卫视 -http://111.29.9.37:6610/000000001000/1000000002000017118/index.m3u8?stbId=3&livemode=1&IASHttpSessionId=OTT$LR•IPV4•22『线路21』 -#EXTINF:-1 tvg-id="河北卫视" tvg-name="河北卫视" group-title="卫视",河北卫视 -http://111.29.9.33:6610/000000001000/1000000002000017118/index.m3u8?channel-id=bestzb&Contentid=1000000002000017118&livemode=1&stbId=3$LR•IPV4•22『线路22』 +http://111.29.9.33:6610/000000001000/1000000002000017118/index.m3u8?channel-id=bestzb&Contentid=1000000002000017118&livemode=1&stbId=3$LR•IPV4•21『线路21』 #EXTINF:-1 tvg-id="河南卫视" tvg-name="河南卫视" group-title="卫视",河南卫视 http://tvcdn.stream3.hndt.com/tv/65c4a6d5017e1000b2b6ea2500000000_transios/playlist.m3u8?wsSecret=3349ed85d315534f17d152a0e8c90f6a&wsTime=1783529303$LR•IPV4•23『线路1』 #EXTINF:-1 tvg-id="河南卫视" tvg-name="河南卫视" group-title="卫视",河南卫视 -http://118.81.195.79:9003/hls/30/index.m3u8$LR•IPV4•23『线路2』 +http://112.27.235.94:8000/hls/37/index.m3u8$LR•IPV4•23『线路2』 #EXTINF:-1 tvg-id="河南卫视" tvg-name="河南卫视" group-title="卫视",河南卫视 http://222.90.21.30:9901/hls/31/index.m3u8$LR•IPV4•23『线路3』 #EXTINF:-1 tvg-id="河南卫视" tvg-name="河南卫视" group-title="卫视",河南卫视 @@ -1910,41 +1904,41 @@ http://63.141.230.178:82/gslb/zbdq5.m3u8?id=hawshd$LR•IPV4•23『线路6』 #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•23『线路7』 #EXTINF:-1 tvg-id="河南卫视" tvg-name="河南卫视" group-title="卫视",河南卫视 -http://112.27.235.94:8000/hls/37/index.m3u8$LR•IPV4•23『线路8』 +http://38.75.136.137:98/gslb/dsdqpub/hawshd.m3u8?auth=testpub$LR•IPV4•23『线路8』 #EXTINF:-1 tvg-id="河南卫视" tvg-name="河南卫视" group-title="卫视",河南卫视 -http://38.75.136.137:98/gslb/dsdqpub/hawshd.m3u8?auth=testpub$LR•IPV4•23『线路9』 +http://23.237.228.134/live6/henan.m3u8$LR•IPV4•23『线路9』 #EXTINF:-1 tvg-id="河南卫视" tvg-name="河南卫视" group-title="卫视",河南卫视 -http://23.237.228.134/live6/henan.m3u8$LR•IPV4•23『线路10』 +http://43.251.226.89:8080/play/44.m3u8$LR•IPV4•23『线路10』 #EXTINF:-1 tvg-id="河南卫视" tvg-name="河南卫视" group-title="卫视",河南卫视 -http://43.251.226.89:8080/play/44.m3u8$LR•IPV4•23『线路11』 +https://iptv.catvod.com/catvod.php?id=hnws$LR•IPV4•23『线路11』 #EXTINF:-1 tvg-id="河南卫视" tvg-name="河南卫视" group-title="卫视",河南卫视 -https://iptv.catvod.com/catvod.php?id=hnws$LR•IPV4•23『线路12』 +https://httop.top/ysp-河南卫视$LR•IPV4•23『线路12』 #EXTINF:-1 tvg-id="河南卫视" tvg-name="河南卫视" group-title="卫视",河南卫视 -https://httop.top/ysp-河南卫视$LR•IPV4•23『线路13』 +http://60.10.139.113:8801/hls/32/index.m3u8$LR•IPV4•23『线路13』 #EXTINF:-1 tvg-id="河南卫视" tvg-name="河南卫视" group-title="卫视",河南卫视 -http://60.10.139.113:8801/hls/32/index.m3u8$LR•IPV4•23『线路14』 +http://1.94.31.214/php/hntv.php?id=hnws#http://lxajh.top/tv/hn.php?id=hnws$LR•IPV4•23『线路14』 #EXTINF:-1 tvg-id="河南卫视" tvg-name="河南卫视" group-title="卫视",河南卫视 -http://1.94.31.214/php/hntv.php?id=hnws#http://lxajh.top/tv/hn.php?id=hnws$LR•IPV4•23『线路15』 +http://207.56.13.146:81/cdnlive/haws.m3u8$LR•IPV4•23『线路15』 #EXTINF:-1 tvg-id="河南卫视" tvg-name="河南卫视" group-title="卫视",河南卫视 -http://207.56.13.146:81/cdnlive/haws.m3u8$LR•IPV4•23『线路16』 +http://192.151.150.154/live/hawshd.m3u8$LR•IPV4•23『线路16』 #EXTINF:-1 tvg-id="河南卫视" tvg-name="河南卫视" group-title="卫视",河南卫视 -http://192.151.150.154/live/hawshd.m3u8$LR•IPV4•23『线路17』 +http://204.12.221.218:8181/3m1080p/haws.m3u8$LR•IPV4•23『线路17』 #EXTINF:-1 tvg-id="河南卫视" tvg-name="河南卫视" group-title="卫视",河南卫视 -http://204.12.221.218:8181/3m1080p/haws.m3u8$LR•IPV4•23『线路18』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000005000017925&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路18』 #EXTINF:-1 tvg-id="河南卫视" tvg-name="河南卫视" group-title="卫视",河南卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000005000017925&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路19』 +http://1.94.31.214/php/hntv.php?id=hnws$LR•IPV4•23『线路19』 #EXTINF:-1 tvg-id="河南卫视" tvg-name="河南卫视" group-title="卫视",河南卫视 -http://1.94.31.214/php/hntv.php?id=hnws$LR•IPV4•23『线路20』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000031119&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路20』 #EXTINF:-1 tvg-id="河南卫视" tvg-name="河南卫视" group-title="卫视",河南卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000031119&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路21』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=7304224304099543804&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路21』 #EXTINF:-1 tvg-id="河南卫视" tvg-name="河南卫视" group-title="卫视",河南卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=7304224304099543804&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路22』 +http://111.29.9.33:6610/000000001000/5000000011000031119/index.m3u8?channel-id=bestzb&Contentid=5000000011000031119&livemode=1&stbId=3$LR•IPV4•23『线路22』 #EXTINF:-1 tvg-id="河南卫视" tvg-name="河南卫视" group-title="卫视",河南卫视 -http://111.29.9.33:6610/000000001000/5000000011000031119/index.m3u8?channel-id=bestzb&Contentid=5000000011000031119&livemode=1&stbId=3$LR•IPV4•23『线路23』 +http://118.81.195.79:9003/hls/30/index.m3u8$LR•IPV4•23『线路23』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://118.81.195.79:9003/hls/31/index.m3u8$LR•IPV4•23『线路1』 +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•23『线路1』 #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•23『线路2』 +http://112.27.235.94:8000/hls/48/index.m3u8$LR•IPV4•23『线路2』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 http://38.75.136.137:98/gslb/dsdqpub/hljwshd.m3u8?auth=testpub$LR•IPV4•23『线路3』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 @@ -1954,43 +1948,43 @@ http://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8$LR•IPV4•23『线 #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•23『线路6』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://112.27.235.94:8000/hls/48/index.m3u8$LR•IPV4•23『线路7』 +http://23.237.228.134/live6/heilongjiang.m3u8$LR•IPV4•23『线路7』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://23.237.228.134/live6/heilongjiang.m3u8$LR•IPV4•23『线路8』 +http://gfr.x3322.net:9901/tsfile/live/1094_1.m3u8$LR•IPV4•23『线路8』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://gfr.x3322.net:9901/tsfile/live/1094_1.m3u8$LR•IPV4•23『线路9』 +http://api.kkitv.itv888.cn:8080/hls/2a24lcvser/index.m3u8$LR•IPV4•23『线路9』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://api.kkitv.itv888.cn:8080/hls/2a24lcvser/index.m3u8$LR•IPV4•23『线路10』 +https://iptv.catvod.com/catvod.php?id=hljws$LR•IPV4•23『线路10』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -https://iptv.catvod.com/catvod.php?id=hljws$LR•IPV4•23『线路11』 +https://httop.top/ysp-黑龙江卫视$LR•IPV4•23『线路11』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -https://httop.top/ysp-黑龙江卫视$LR•IPV4•23『线路12』 +http://iptv.huuc.edu.cn/hls/hljhd.m3u8$LR•IPV4•23『线路12』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://iptv.huuc.edu.cn/hls/hljhd.m3u8$LR•IPV4•23『线路13』 +http://60.10.139.113:8801/hls/27/index.m3u8$LR•IPV4•23『线路13』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://60.10.139.113:8801/hls/27/index.m3u8$LR•IPV4•23『线路14』 +http://207.56.13.146:81/cdnlive/hljws.m3u8$LR•IPV4•23『线路14』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://207.56.13.146:81/cdnlive/hljws.m3u8$LR•IPV4•23『线路15』 +http://192.151.150.154/live/hljwshd.m3u8$LR•IPV4•23『线路15』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://192.151.150.154/live/hljwshd.m3u8$LR•IPV4•23『线路16』 +http://204.12.221.218:8181/3m1080p/hljws.m3u8$LR•IPV4•23『线路16』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://204.12.221.218:8181/3m1080p/hljws.m3u8$LR•IPV4•23『线路17』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000025203&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路17』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000025203&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路18』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000001925&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路18』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000001925&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路19』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000031107&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路19』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000031107&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路20』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000009082&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路20』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000009082&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路21』 +https://idclive.hljtv.com:4430/live/hljws_own.m3u8$LR•IPV4•23『线路21』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -https://idclive.hljtv.com:4430/live/hljws_own.m3u8$LR•IPV4•23『线路22』 +http://111.29.9.33:6610/000000001000/1000000001000001925/index.m3u8?channel-id=bestzb&Contentid=1000000001000001925&livemode=1&stbId=3$LR•IPV4•23『线路22』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://111.29.9.33:6610/000000001000/1000000001000001925/index.m3u8?channel-id=bestzb&Contentid=1000000001000001925&livemode=1&stbId=3$LR•IPV4•23『线路23』 +http://118.81.195.79:9003/hls/31/index.m3u8$LR•IPV4•23『线路23』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://118.81.195.79:9003/hls/32/index.m3u8$LR•IPV4•27『线路1』 +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•27『线路1』 #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•27『线路2』 +http://112.27.235.94:8000/hls/41/index.m3u8$LR•IPV4•27『线路2』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 http://120.198.95.220:9901/tsfile/live/1053_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•27『线路3』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 @@ -2000,53 +1994,53 @@ http://153.0.171.163:85/tsfile/live/0132_1.m3u8?key=txiptv&playlive=1&authid=0$L #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•27『线路6』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://112.27.235.94:8000/hls/41/index.m3u8$LR•IPV4•27『线路7』 +http://38.75.136.137:98/gslb/dsdqpub/hbwshd.m3u8?auth=testpub$LR•IPV4•27『线路7』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://38.75.136.137:98/gslb/dsdqpub/hbwshd.m3u8?auth=testpub$LR•IPV4•27『线路8』 +http://23.237.228.134/live6/hubei.m3u8$LR•IPV4•27『线路8』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://23.237.228.134/live6/hubei.m3u8$LR•IPV4•27『线路9』 +http://43.251.226.89:8080/play/46.m3u8$LR•IPV4•27『线路9』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://43.251.226.89:8080/play/46.m3u8$LR•IPV4•27『线路10』 +http://gfr.x3322.net:9901/tsfile/live/1088_1.m3u8$LR•IPV4•27『线路10』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://gfr.x3322.net:9901/tsfile/live/1088_1.m3u8$LR•IPV4•27『线路11』 +http://api.kkitv.itv888.cn:8080/hls/qwummpaoaq/index.m3u8$LR•IPV4•27『线路11』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://api.kkitv.itv888.cn:8080/hls/qwummpaoaq/index.m3u8$LR•IPV4•27『线路12』 +https://iptv.catvod.com/catvod.php?id=hubws$LR•IPV4•27『线路12』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -https://iptv.catvod.com/catvod.php?id=hubws$LR•IPV4•27『线路13』 +https://httop.top/ysp-湖北卫视$LR•IPV4•27『线路13』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -https://httop.top/ysp-湖北卫视$LR•IPV4•27『线路14』 +http://iptv.huuc.edu.cn/hls/hbhd.m3u8$LR•IPV4•27『线路14』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://iptv.huuc.edu.cn/hls/hbhd.m3u8$LR•IPV4•27『线路15』 +http://mg.hmysapp.cn:177/ckmg/zb.php?id=hubws$LR•IPV4•27『线路15』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://mg.hmysapp.cn:177/ckmg/zb.php?id=hubws$LR•IPV4•27『线路16』 +http://www.745612.xyz:7788/rtp/235.254.198.72:1564$LR•IPV4•27『线路16』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://www.745612.xyz:7788/rtp/235.254.198.72:1564$LR•IPV4•27『线路17』 +http://60.10.139.113:8801/hls/29/index.m3u8$LR•IPV4•27『线路17』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://60.10.139.113:8801/hls/29/index.m3u8$LR•IPV4•27『线路18』 +http://207.56.13.146:81/cdnlive/hbws.m3u8$LR•IPV4•27『线路18』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://207.56.13.146:81/cdnlive/hbws.m3u8$LR•IPV4•27『线路19』 +http://192.151.150.154/live/hbwshd.m3u8$LR•IPV4•27『线路19』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://192.151.150.154/live/hbwshd.m3u8$LR•IPV4•27『线路20』 +http://204.12.221.218:8181/3m1080p/hbws.m3u8$LR•IPV4•27『线路20』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://204.12.221.218:8181/3m1080p/hbws.m3u8$LR•IPV4•27『线路21』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000014954&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路21』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000014954&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路22』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000022140&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路22』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000022140&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路23』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000010355&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路23』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000010355&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路24』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000024621&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路24』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000024621&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路25』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265023&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路25』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265023&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路26』 +http://111.29.9.33:6610/000000001000/1000000001000010355/index.m3u8?channel-id=bestzb&Contentid=1000000001000010355&livemode=1&stbId=3$LR•IPV4•27『线路26』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://111.29.9.33:6610/000000001000/1000000001000010355/index.m3u8?channel-id=bestzb&Contentid=1000000001000010355&livemode=1&stbId=3$LR•IPV4•27『线路27』 +http://118.81.195.79:9003/hls/32/index.m3u8$LR•IPV4•27『线路27』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 https://jsp-tv-live.jxtvcn.com.cn/live-jsp/tv_fsgw.m3u8?t=1783295288&token=93978a22-19b9-4338-9ae6-ea0616a4fb0f&d=832d77a639d34ebdb3f0f61903951f1b$LR•IPV4•26『线路1』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://39.134.115.163:8080/PLTV/88888910/224/3221225705/index.m3u8$LR•IPV4•26『线路2』 +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•26『线路2』 #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•26『线路3』 +http://112.27.235.94:8000/hls/44/index.m3u8$LR•IPV4•26『线路3』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 http://222.169.85.8:9901/tsfile/live/0138_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路4』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 @@ -2054,49 +2048,49 @@ http://123.163.114.168:85/tsfile/live/0138_1.m3u8?key=txiptv&playlive=1&authid=0 #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•26『线路6』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://112.27.235.94:8000/hls/44/index.m3u8$LR•IPV4•26『线路7』 +http://38.75.136.137:98/gslb/dsdqpub/jxwshd.m3u8?auth=testpub$LR•IPV4•26『线路7』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://38.75.136.137:98/gslb/dsdqpub/jxwshd.m3u8?auth=testpub$LR•IPV4•26『线路8』 +http://23.237.228.134/live8/jiangxi.m3u8$LR•IPV4•26『线路8』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://23.237.228.134/live8/jiangxi.m3u8$LR•IPV4•26『线路9』 +http://43.251.226.89:8080/play/43.m3u8$LR•IPV4•26『线路9』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://43.251.226.89:8080/play/43.m3u8$LR•IPV4•26『线路10』 +http://api.kkitv.itv888.cn:8080/hls/pv0np60bpin/index.m3u8$LR•IPV4•26『线路10』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://api.kkitv.itv888.cn:8080/hls/pv0np60bpin/index.m3u8$LR•IPV4•26『线路11』 +https://iptv.catvod.com/catvod.php?id=jxws$LR•IPV4•26『线路11』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -https://iptv.catvod.com/catvod.php?id=jxws$LR•IPV4•26『线路12』 +https://httop.top/ysp-江西卫视$LR•IPV4•26『线路12』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -https://httop.top/ysp-江西卫视$LR•IPV4•26『线路13』 +http://iptv.huuc.edu.cn/hls/jxhd.m3u8$LR•IPV4•26『线路13』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://iptv.huuc.edu.cn/hls/jxhd.m3u8$LR•IPV4•26『线路14』 +http://mg.hmysapp.cn:177/ckmg/zb.php?id=jxws$LR•IPV4•26『线路14』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://mg.hmysapp.cn:177/ckmg/zb.php?id=jxws$LR•IPV4•26『线路15』 +http://153.0.171.163:9901/tsfile/live/0138_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路15』 #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•26『线路16』 +http://60.10.139.113:8801/hls/37/index.m3u8$LR•IPV4•26『线路16』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://60.10.139.113:8801/hls/37/index.m3u8$LR•IPV4•26『线路17』 +http://207.56.13.146:81/cdnlive/jxws.m3u8$LR•IPV4•26『线路17』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://207.56.13.146:81/cdnlive/jxws.m3u8$LR•IPV4•26『线路18』 +http://192.151.150.154/live/jxwshd.m3u8$LR•IPV4•26『线路18』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://192.151.150.154/live/jxwshd.m3u8$LR•IPV4•26『线路19』 +http://204.12.221.218:8181/3m1080p/jxws.m3u8$LR•IPV4•26『线路19』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://204.12.221.218:8181/3m1080p/jxws.m3u8$LR•IPV4•26『线路20』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000011210&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路20』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000011210&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路21』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000013731&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路21』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000013731&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路22』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000006000268001&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路22』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000006000268001&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路23』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000001000032154&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路23』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000001000032154&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路24』 +http://111.29.9.39:6610/000000001000/5000000004000011210/index.m3u8?channel-id=bestzb&Contentid=5000000004000011210&livemode=1&stbId=3$LR•IPV4•26『线路24』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://111.29.9.39:6610/000000001000/5000000004000011210/index.m3u8?channel-id=bestzb&Contentid=5000000004000011210&livemode=1&stbId=3$LR•IPV4•26『线路25』 +http://111.29.9.33:6610/000000001000/1000000001000013731/index.m3u8?channel-id=bestzb&Contentid=1000000001000013731&livemode=1&stbId=3$LR•IPV4•26『线路25』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://111.29.9.33:6610/000000001000/1000000001000013731/index.m3u8?channel-id=bestzb&Contentid=1000000001000013731&livemode=1&stbId=3$LR•IPV4•26『线路26』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225705/index.m3u8$LR•IPV4•26『线路26』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://118.81.195.79:9003/hls/34/index.m3u8$LR•IPV4•22『线路1』 +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•22『线路1』 #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•22『线路2』 +http://cssbyd.imwork.net:8082/hls/41/index.m3u8$LR•IPV4•22『线路2』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 http://222.90.21.30:9901/hls/35/index.m3u8$LR•IPV4•22『线路3』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 @@ -2106,83 +2100,83 @@ http://112.123.243.37:50085/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid #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•22『线路6』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://cssbyd.imwork.net:8082/hls/41/index.m3u8$LR•IPV4•22『线路7』 +http://38.75.136.137:98/gslb/dsdqpub/jlwshd.m3u8?auth=testpub$LR•IPV4•22『线路7』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://38.75.136.137:98/gslb/dsdqpub/jlwshd.m3u8?auth=testpub$LR•IPV4•22『线路8』 +http://23.237.228.134/live8/jilin.m3u8$LR•IPV4•22『线路8』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://23.237.228.134/live8/jilin.m3u8$LR•IPV4•22『线路9』 +http://43.251.226.89:8080/play/47.m3u8$LR•IPV4•22『线路9』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://43.251.226.89:8080/play/47.m3u8$LR•IPV4•22『线路10』 +http://api.kkitv.itv888.cn:8080/hls/b6dl8yuvu/index.m3u$LR•IPV4•22『线路10』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://api.kkitv.itv888.cn:8080/hls/b6dl8yuvu/index.m3u$LR•IPV4•22『线路11』 +https://iptv.catvod.com/catvod.php?id=jlws$LR•IPV4•22『线路11』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -https://iptv.catvod.com/catvod.php?id=jlws$LR•IPV4•22『线路12』 +https://httop.top/ysp-吉林卫视$LR•IPV4•22『线路12』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -https://httop.top/ysp-吉林卫视$LR•IPV4•22『线路13』 +http://153.0.171.163:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•22『线路13』 #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•22『线路14』 +http://60.10.139.113:8801/hls/38/index.m3u8$LR•IPV4•22『线路14』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://60.10.139.113:8801/hls/38/index.m3u8$LR•IPV4•22『线路15』 +http://207.56.13.146:81/cdnlive/jlws.m3u8$LR•IPV4•22『线路15』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://207.56.13.146:81/cdnlive/jlws.m3u8$LR•IPV4•22『线路16』 +http://192.151.150.154/live/jlwshd.m3u8$LR•IPV4•22『线路16』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://192.151.150.154/live/jlwshd.m3u8$LR•IPV4•22『线路17』 +http://204.12.221.218:8181/3m1080p/jlws.m3u8$LR•IPV4•22『线路17』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://204.12.221.218:8181/3m1080p/jlws.m3u8$LR•IPV4•22『线路18』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000031117&livemode=1&stbId=yu&mode=1&$LR•IPV4•22『线路18』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000031117&livemode=1&stbId=yu&mode=1&$LR•IPV4•22『线路19』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=6042486520432105075&livemode=1&stbId=yu&mode=1&$LR•IPV4•22『线路19』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=6042486520432105075&livemode=1&stbId=yu&mode=1&$LR•IPV4•22『线路20』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000006000040013&livemode=1&stbId=yu&mode=1&$LR•IPV4•22『线路20』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000006000040013&livemode=1&stbId=yu&mode=1&$LR•IPV4•22『线路21』 +http://111.29.9.33:6610/000000001000/5000000011000031117/index.m3u8?channel-id=bestzb&Contentid=5000000011000031117&livemode=1&stbId=3$LR•IPV4•22『线路21』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://111.29.9.33:6610/000000001000/5000000011000031117/index.m3u8?channel-id=bestzb&Contentid=5000000011000031117&livemode=1&stbId=3$LR•IPV4•22『线路22』 +http://118.81.195.79:9003/hls/34/index.m3u8$LR•IPV4•22『线路22』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://39.134.115.163:8080/PLTV/88888910/224/3221225667/index.m3u8$LR•IPV4•21『线路1』 +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•21『线路1』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://117.169.120.140:8080/live/neimenggustv/.m3u8$LR•IPV4•21『线路2』 +http://cssbyd.imwork.net:8082/hls/44/index.m3u8$LR•IPV4•21『线路2』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://183.207.248.71/gitv/live1/G_NEIMENGGU/G_NEIMENGGU$LR•IPV4•21『线路3』 +http://38.75.136.137:98/gslb/dsdqpub/nmgws.m3u8?auth=testpub$LR•IPV4•21『线路3』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://223.110.245.173/PLTV/4/224/3221225836/index.m3u8$LR•IPV4•21『线路4』 +http://192.151.150.154/live/nmgws.m3u8$LR•IPV4•21『线路4』 #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•21『线路5』 +http://107.150.60.122/live/nmgws.m3u8$LR•IPV4•21『线路5』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://38.75.136.137:98/gslb/dsdqpub/nmgws.m3u8?auth=testpub$LR•IPV4•21『线路6』 +http://207.56.13.146:81/cdnlive/nmgws.m3u8$LR•IPV4•21『线路6』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://192.151.150.154/live/nmgws.m3u8$LR•IPV4•21『线路7』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=nmgws$LR•IPV4•21『线路7』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://107.150.60.122/live/nmgws.m3u8$LR•IPV4•21『线路8』 +http://58.56.162.102:4466/newlive/live/hls/40/live.m3u8$LR•IPV4•21『线路8』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://207.56.13.146:81/cdnlive/nmgws.m3u8$LR•IPV4•21『线路9』 +http://153.0.171.163:9901/tsfile/live/0109_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•21『线路9』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=nmgws$LR•IPV4•21『线路10』 +http://23.237.228.134/live8/neimenggu.m3u8$LR•IPV4•21『线路10』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://58.56.162.102:4466/newlive/live/hls/40/live.m3u8$LR•IPV4•21『线路11』 +https://iptv.catvod.com/catvod.php?id=nmws$LR•IPV4•21『线路11』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://153.0.171.163:9901/tsfile/live/0109_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•21『线路12』 +https://httop.top/ysp-内蒙古卫视$LR•IPV4•21『线路12』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://cssbyd.imwork.net:8082/hls/44/index.m3u8$LR•IPV4•21『线路13』 +http://60.10.139.113:8801/hls/55/index.m3u8$LR•IPV4•21『线路13』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://23.237.228.134/live8/neimenggu.m3u8$LR•IPV4•21『线路14』 +http://jasonzhangnas.f3322.net:7088/udp/233.18.204.217:5140$LR•IPV4•21『线路14』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -https://iptv.catvod.com/catvod.php?id=nmws$LR•IPV4•21『线路15』 +http://204.12.221.218:8181/3m1080p/nmgws.m3u8$LR•IPV4•21『线路15』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -https://httop.top/ysp-内蒙古卫视$LR•IPV4•21『线路16』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000014080&livemode=1&stbId=yu&mode=1&$LR•IPV4•21『线路16』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://60.10.139.113:8801/hls/55/index.m3u8$LR•IPV4•21『线路17』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=7331079758781182663&livemode=1&stbId=yu&mode=1&$LR•IPV4•21『线路17』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://jasonzhangnas.f3322.net:7088/udp/233.18.204.217:5140$LR•IPV4•21『线路18』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225667/index.m3u8$LR•IPV4•21『线路18』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://204.12.221.218:8181/3m1080p/nmgws.m3u8$LR•IPV4•21『线路19』 +http://117.169.120.140:8080/live/neimenggustv/.m3u8$LR•IPV4•21『线路19』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000014080&livemode=1&stbId=yu&mode=1&$LR•IPV4•21『线路20』 +http://183.207.248.71/gitv/live1/G_NEIMENGGU/G_NEIMENGGU$LR•IPV4•21『线路20』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=7331079758781182663&livemode=1&stbId=yu&mode=1&$LR•IPV4•21『线路21』 +http://223.110.245.173/PLTV/4/224/3221225836/index.m3u8$LR•IPV4•21『线路21』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://39.134.39.37/PLTV/88888888/224/3221226209/index.m3u8$LR•IPV4•25『线路1』 +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•25『线路1』 #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•25『线路2』 +http://112.27.235.94:8000/hls/47/index.m3u8$LR•IPV4•25『线路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•25『线路3』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 @@ -2192,47 +2186,47 @@ http://36.136.38.87:9901/tsfile/live/0121_1.m3u8?key=txiptv&playlive=1&authid=0$ #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•25『线路6』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://112.27.235.94:8000/hls/47/index.m3u8$LR•IPV4•25『线路7』 +http://38.75.136.137:98/gslb/dsdqpub/lnwshd.m3u8?auth=testpub$LR•IPV4•25『线路7』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://38.75.136.137:98/gslb/dsdqpub/lnwshd.m3u8?auth=testpub$LR•IPV4•25『线路8』 +https://hlsbkmgsplive.miguvideo.com/migu/kailu/lnwshd265/54/20200407/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•25『线路8』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -https://hlsbkmgsplive.miguvideo.com/migu/kailu/lnwshd265/54/20200407/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•25『线路9』 +http://23.237.228.134/live8/liaoning.m3u8$LR•IPV4•25『线路9』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://23.237.228.134/live8/liaoning.m3u8$LR•IPV4•25『线路10』 +http://43.251.226.89:8080/play/41.m3u8$LR•IPV4•25『线路10』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://43.251.226.89:8080/play/41.m3u8$LR•IPV4•25『线路11』 +http://gfr.x3322.net:9901/tsfile/live/1097_1.m3u8$LR•IPV4•25『线路11』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://gfr.x3322.net:9901/tsfile/live/1097_1.m3u8$LR•IPV4•25『线路12』 +http://api.kkitv.itv888.cn:8080/hls/iibq0absdjr/index.m3u8$LR•IPV4•25『线路12』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://api.kkitv.itv888.cn:8080/hls/iibq0absdjr/index.m3u8$LR•IPV4•25『线路13』 +https://iptv.catvod.com/catvod.php?id=lnws$LR•IPV4•25『线路13』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -https://iptv.catvod.com/catvod.php?id=lnws$LR•IPV4•25『线路14』 +https://httop.top/ysp-辽宁卫视$LR•IPV4•25『线路14』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -https://httop.top/ysp-辽宁卫视$LR•IPV4•25『线路15』 +http://iptv.huuc.edu.cn/hls/lnhd.m3u8$LR•IPV4•25『线路15』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://iptv.huuc.edu.cn/hls/lnhd.m3u8$LR•IPV4•25『线路16』 +http://60.10.139.113:8801/hls/28/index.m3u8$LR•IPV4•25『线路16』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://60.10.139.113:8801/hls/28/index.m3u8$LR•IPV4•25『线路17』 +http://207.56.13.146:81/cdnlive/lnws.m3u8$LR•IPV4•25『线路17』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://207.56.13.146:81/cdnlive/lnws.m3u8$LR•IPV4•25『线路18』 +http://192.151.150.154/live/lnwshd.m3u8$LR•IPV4•25『线路18』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://192.151.150.154/live/lnwshd.m3u8$LR•IPV4•25『线路19』 +http://204.12.221.218:8181/3m1080p/lnws.m3u8$LR•IPV4•25『线路19』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://204.12.221.218:8181/3m1080p/lnws.m3u8$LR•IPV4•25『线路20』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000011671&livemode=1&stbId=yu&mode=1&$LR•IPV4•25『线路20』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000011671&livemode=1&stbId=yu&mode=1&$LR•IPV4•25『线路21』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000001945&livemode=1&stbId=yu&mode=1&$LR•IPV4•25『线路21』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000001945&livemode=1&stbId=yu&mode=1&$LR•IPV4•25『线路22』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000024033&livemode=1&stbId=yu&mode=1&$LR•IPV4•25『线路22』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000024033&livemode=1&stbId=yu&mode=1&$LR•IPV4•25『线路23』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000001000008940&livemode=1&stbId=yu&mode=1&$LR•IPV4•25『线路23』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000001000008940&livemode=1&stbId=yu&mode=1&$LR•IPV4•25『线路24』 +http://111.29.9.33:6610/000000001000/1000000001000001945/index.m3u8?channel-id=bestzb&Contentid=1000000001000001945&livemode=1&stbId=3$LR•IPV4•25『线路24』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://111.29.9.33:6610/000000001000/1000000001000001945/index.m3u8?channel-id=bestzb&Contentid=1000000001000001945&livemode=1&stbId=3$LR•IPV4•25『线路25』 +http://39.134.39.37/PLTV/88888888/224/3221226209/index.m3u8$LR•IPV4•25『线路25』 #EXTINF:-1 tvg-id="宁夏卫视" tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://39.134.115.163:8080/PLTV/88888910/224/3221225726/index.m3u8$LR•IPV4•16『线路1』 +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•16『线路1』 #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•16『线路2』 +http://120.76.248.139/live/bfgd/4200000118.m3u8$LR•IPV4•16『线路2』 #EXTINF:-1 tvg-id="宁夏卫视" tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 http://192.151.150.154/live/nxws.m3u8$LR•IPV4•16『线路3』 #EXTINF:-1 tvg-id="宁夏卫视" tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 @@ -2240,31 +2234,31 @@ http://107.150.60.122/live/nxws.m3u8$LR•IPV4•16『线路4』 #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•16『线路5』 #EXTINF:-1 tvg-id="宁夏卫视" tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://120.76.248.139/live/bfgd/4200000118.m3u8$LR•IPV4•16『线路6』 +http://43.251.226.89:8080/play/54.m3u8$LR•IPV4•16『线路6』 #EXTINF:-1 tvg-id="宁夏卫视" tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://43.251.226.89:8080/play/54.m3u8$LR•IPV4•16『线路7』 +https://iptv.catvod.com/catvod.php?id=nxws$LR•IPV4•16『线路7』 #EXTINF:-1 tvg-id="宁夏卫视" tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -https://iptv.catvod.com/catvod.php?id=nxws$LR•IPV4•16『线路8』 +https://httop.top/ysp-宁夏卫视$LR•IPV4•16『线路8』 #EXTINF:-1 tvg-id="宁夏卫视" tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -https://httop.top/ysp-宁夏卫视$LR•IPV4•16『线路9』 +http://60.10.139.113:8801/hls/57/index.m3u8$LR•IPV4•16『线路9』 #EXTINF:-1 tvg-id="宁夏卫视" tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://60.10.139.113:8801/hls/57/index.m3u8$LR•IPV4•16『线路10』 +http://jasonzhangnas.f3322.net:7088/udp/233.18.204.230:5140$LR•IPV4•16『线路10』 #EXTINF:-1 tvg-id="宁夏卫视" tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://jasonzhangnas.f3322.net:7088/udp/233.18.204.230:5140$LR•IPV4•16『线路11』 +http://207.56.13.146:81/cdnlive/nxws.m3u8$LR•IPV4•16『线路11』 #EXTINF:-1 tvg-id="宁夏卫视" tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://207.56.13.146:81/cdnlive/nxws.m3u8$LR•IPV4•16『线路12』 +http://204.12.221.218:8181/3m1080p/nxws.m3u8$LR•IPV4•16『线路12』 #EXTINF:-1 tvg-id="宁夏卫视" tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://204.12.221.218:8181/3m1080p/nxws.m3u8$LR•IPV4•16『线路13』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000031451&livemode=1&stbId=yu&mode=1&$LR•IPV4•16『线路13』 #EXTINF:-1 tvg-id="宁夏卫视" tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000031451&livemode=1&stbId=yu&mode=1&$LR•IPV4•16『线路14』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040022&livemode=1&stbId=yu&mode=1&$LR•IPV4•16『线路14』 #EXTINF:-1 tvg-id="宁夏卫视" tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040022&livemode=1&stbId=yu&mode=1&$LR•IPV4•16『线路15』 +http://111.29.9.33:6610/000000001000/1000000002000031451/index.m3u8?channel-id=bestzb&Contentid=1000000002000031451&livemode=1&stbId=3$LR•IPV4•16『线路15』 #EXTINF:-1 tvg-id="宁夏卫视" tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://111.29.9.33:6610/000000001000/1000000002000031451/index.m3u8?channel-id=bestzb&Contentid=1000000002000031451&livemode=1&stbId=3$LR•IPV4•16『线路16』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225726/index.m3u8$LR•IPV4•16『线路16』 #EXTINF:-1 tvg-id="青海卫视" tvg-name="青海卫视" group-title="卫视",青海卫视 -http://live.geermurmt.com/qhws/sd/live.m3u8$LR•IPV4•19『线路1』 +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•19『线路1』 #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•19『线路2』 +http://123.130.84.106:8154/tsfile/live/0140_1.m3u8$LR•IPV4•19『线路2』 #EXTINF:-1 tvg-id="青海卫视" tvg-name="青海卫视" group-title="卫视",青海卫视 http://222.90.21.30:9901/hls/42/index.m3u8$LR•IPV4•19『线路3』 #EXTINF:-1 tvg-id="青海卫视" tvg-name="青海卫视" group-title="卫视",青海卫视 @@ -2276,223 +2270,221 @@ http://107.150.60.122/live/qhws.m3u8$LR•IPV4•19『线路6』 #EXTINF:-1 tvg-id="青海卫视" tvg-name="青海卫视" group-title="卫视",青海卫视 http://198.204.228.26/live/qhws.m3u8$LR•IPV4•19『线路7』 #EXTINF:-1 tvg-id="青海卫视" tvg-name="青海卫视" group-title="卫视",青海卫视 -http://123.130.84.106:8154/tsfile/live/0140_1.m3u8$LR•IPV4•19『线路8』 +http://23.237.228.134/live8/qinghai.m3u8$LR•IPV4•19『线路8』 #EXTINF:-1 tvg-id="青海卫视" tvg-name="青海卫视" group-title="卫视",青海卫视 -http://23.237.228.134/live8/qinghai.m3u8$LR•IPV4•19『线路9』 +http://43.251.226.89:8080/play/48.m3u8$LR•IPV4•19『线路9』 #EXTINF:-1 tvg-id="青海卫视" tvg-name="青海卫视" group-title="卫视",青海卫视 -http://43.251.226.89:8080/play/48.m3u8$LR•IPV4•19『线路10』 +https://iptv.catvod.com/catvod.php?id=qhws$LR•IPV4•19『线路10』 #EXTINF:-1 tvg-id="青海卫视" tvg-name="青海卫视" group-title="卫视",青海卫视 -https://iptv.catvod.com/catvod.php?id=qhws$LR•IPV4•19『线路11』 +https://httop.top/ysp-青海卫视$LR•IPV4•19『线路11』 #EXTINF:-1 tvg-id="青海卫视" tvg-name="青海卫视" group-title="卫视",青海卫视 -https://httop.top/ysp-青海卫视$LR•IPV4•19『线路12』 +http://153.0.171.163:9901/tsfile/live/0140_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•19『线路12』 #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•19『线路13』 +http://60.10.139.113:8801/hls/56/index.m3u8$LR•IPV4•19『线路13』 #EXTINF:-1 tvg-id="青海卫视" tvg-name="青海卫视" group-title="卫视",青海卫视 -http://60.10.139.113:8801/hls/56/index.m3u8$LR•IPV4•19『线路14』 +http://207.56.13.146:81/cdnlive/qhws.m3u8$LR•IPV4•19『线路14』 #EXTINF:-1 tvg-id="青海卫视" tvg-name="青海卫视" group-title="卫视",青海卫视 -http://207.56.13.146:81/cdnlive/qhws.m3u8$LR•IPV4•19『线路15』 +http://204.12.221.218:8181/3m1080p/qhws.m3u8$LR•IPV4•19『线路15』 #EXTINF:-1 tvg-id="青海卫视" tvg-name="青海卫视" group-title="卫视",青海卫视 -http://204.12.221.218:8181/3m1080p/qhws.m3u8$LR•IPV4•19『线路16』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040015&livemode=1&stbId=yu&mode=1&$LR•IPV4•19『线路16』 #EXTINF:-1 tvg-id="青海卫视" tvg-name="青海卫视" group-title="卫视",青海卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040015&livemode=1&stbId=yu&mode=1&$LR•IPV4•19『线路17』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000013359&livemode=1&stbId=yu&mode=1&$LR•IPV4•19『线路17』 #EXTINF:-1 tvg-id="青海卫视" tvg-name="青海卫视" group-title="卫视",青海卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000013359&livemode=1&stbId=yu&mode=1&$LR•IPV4•19『线路18』 +http://111.29.9.33:6610/000000001000/1000000002000013359/index.m3u8?channel-id=bestzb&Contentid=1000000002000013359&livemode=1&stbId=3$LR•IPV4•19『线路18』 #EXTINF:-1 tvg-id="青海卫视" tvg-name="青海卫视" group-title="卫视",青海卫视 -http://111.29.9.33:6610/000000001000/1000000002000013359/index.m3u8?channel-id=bestzb&Contentid=1000000002000013359&livemode=1&stbId=3$LR•IPV4•19『线路19』 +http://live.geermurmt.com/qhws/sd/live.m3u8$LR•IPV4•19『线路19』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://125.210.152.18:9090/live/SDWSHD_H265.m3u8$LR•IPV4•31『线路1』 +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•31『线路1』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://39.134.115.163:8080/PLTV/88888910/224/3221225697/index.m3u8$LR•IPV4•31『线路2』 +http://112.27.235.94:8000/hls/34/index.m3u8$LR•IPV4•31『线路2』 #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•31『线路3』 +http://123.163.114.168:9901/tsfile/live/0131_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•31『线路3』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://123.163.114.168:9901/tsfile/live/0131_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•31『线路4』 +http://198.204.228.26/live/sdwshd.m3u8$LR•IPV4•31『线路4』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://198.204.228.26/live/sdwshd.m3u8$LR•IPV4•31『线路5』 +http://207.56.13.146:81/cdnlive/sdws.m3u8$LR•IPV4•31『线路5』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://207.56.13.146:81/cdnlive/sdws.m3u8$LR•IPV4•31『线路6』 +http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8$LR•IPV4•31『线路6』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8$LR•IPV4•31『线路7』 +http://120.198.95.220:9901/tsfile/live/1063_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•31『线路7』 #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•31『线路8』 +http://36.136.38.87:9901/tsfile/live/0131_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•31『线路8』 #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•31『线路9』 +http://153.0.171.163:9901/tsfile/live/0131_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•31『线路9』 #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•31『线路10』 +http://38.75.136.137:98/gslb/dsdqpub/sdwshd.m3u8?auth=testpub$LR•IPV4•31『线路10』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://112.27.235.94:8000/hls/34/index.m3u8$LR•IPV4•31『线路11』 +https://hlsbkmgsplive.miguvideo.com/wd_r4/yg/shandongwshd/3000/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•31『线路11』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://38.75.136.137:98/gslb/dsdqpub/sdwshd.m3u8?auth=testpub$LR•IPV4•31『线路12』 +https://hlsbkmgsplive.miguvideo.com/wd-shandonghd-1200/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•31『线路12』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -https://hlsbkmgsplive.miguvideo.com/wd_r4/yg/shandongwshd/3000/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•31『线路13』 +http://23.237.228.134/live8/shandong.m3u8$LR•IPV4•31『线路13』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -https://hlsbkmgsplive.miguvideo.com/wd-shandonghd-1200/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•31『线路14』 +http://gfr.x3322.net:9901/tsfile/live/1098_1.m3u8$LR•IPV4•31『线路14』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://23.237.228.134/live8/shandong.m3u8$LR•IPV4•31『线路15』 +http://api.kkitv.itv888.cn:8080/hls/6gcdai13om5/index.m3u8$LR•IPV4•31『线路15』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://gfr.x3322.net:9901/tsfile/live/1098_1.m3u8$LR•IPV4•31『线路16』 +https://iptv.catvod.com/catvod.php?id=sdws$LR•IPV4•31『线路16』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://api.kkitv.itv888.cn:8080/hls/6gcdai13om5/index.m3u8$LR•IPV4•31『线路17』 +https://httop.top/ysp-山东卫视$LR•IPV4•31『线路17』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -https://iptv.catvod.com/catvod.php?id=sdws$LR•IPV4•31『线路18』 +http://iptv.huuc.edu.cn/hls/sdhd.m3u8$LR•IPV4•31『线路18』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -https://httop.top/ysp-山东卫视$LR•IPV4•31『线路19』 +http://60.10.139.113:8801/hls/25/index.m3u8$LR•IPV4•31『线路19』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://iptv.huuc.edu.cn/hls/sdhd.m3u8$LR•IPV4•31『线路20』 +http://192.151.150.154/live/sdwshd.m3u8$LR•IPV4•31『线路20』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://60.10.139.113:8801/hls/25/index.m3u8$LR•IPV4•31『线路21』 +http://173.208.212.130:8181/720p/sdws.m3u8$LR•IPV4•31『线路21』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://192.151.150.154/live/sdwshd.m3u8$LR•IPV4•31『线路22』 +http://204.12.221.218:8181/3m1080p/sdws.m3u8$LR•IPV4•31『线路22』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://173.208.212.130:8181/720p/sdws.m3u8$LR•IPV4•31『线路23』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000020424&livemode=1&stbId=yu&mode=1&$LR•IPV4•31『线路23』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://204.12.221.218:8181/3m1080p/sdws.m3u8$LR•IPV4•31『线路24』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000012807&livemode=1&stbId=yu&mode=1&$LR•IPV4•31『线路24』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000020424&livemode=1&stbId=yu&mode=1&$LR•IPV4•31『线路25』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000016568&livemode=1&stbId=yu&mode=1&$LR•IPV4•31『线路25』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000012807&livemode=1&stbId=yu&mode=1&$LR•IPV4•31『线路26』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000027763&livemode=1&stbId=yu&mode=1&$LR•IPV4•31『线路26』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000016568&livemode=1&stbId=yu&mode=1&$LR•IPV4•31『线路27』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=7347081113971056899&livemode=1&stbId=yu&mode=1&$LR•IPV4•31『线路27』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000027763&livemode=1&stbId=yu&mode=1&$LR•IPV4•31『线路28』 +http://111.29.9.37:6610/000000001000/1000000001000012807/index.m3u8?channel-id=ystenlive&Contentid=1000000001000012807&livemode=1&stbId=3$LR•IPV4•31『线路28』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=7347081113971056899&livemode=1&stbId=yu&mode=1&$LR•IPV4•31『线路29』 +http://111.29.9.33:6610/000000001000/1000000001000012807/index.m3u8?channel-id=bestzb&Contentid=1000000001000012807&livemode=1&stbId=3$LR•IPV4•31『线路29』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://111.29.9.37:6610/000000001000/1000000001000012807/index.m3u8?channel-id=ystenlive&Contentid=1000000001000012807&livemode=1&stbId=3$LR•IPV4•31『线路30』 +http://125.210.152.18:9090/live/SDWSHD_H265.m3u8$LR•IPV4•31『线路30』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://111.29.9.33:6610/000000001000/1000000001000012807/index.m3u8?channel-id=bestzb&Contentid=1000000001000012807&livemode=1&stbId=3$LR•IPV4•31『线路31』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225697/index.m3u8$LR•IPV4•31『线路31』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -https://piccpndks.v.kcdnvip.com/audio/tianjin_2/index.m3u8$LR•IPV4•27『线路1』 +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•26『线路1』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://39.134.115.163:8080/PLTV/88888910/224/3221225698/index.m3u8$LR•IPV4•27『线路2』 +http://112.27.235.94:8000/hls/42/index.m3u8$LR•IPV4•26『线路2』 #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•27『线路3』 +http://204.12.221.218:8181/3m1080p/tjws.m3u8$LR•IPV4•26『线路3』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://204.12.221.218:8181/3m1080p/tjws.m3u8$LR•IPV4•27『线路4』 +http://173.208.212.130:8181/720p/tjws.m3u8$LR•IPV4•26『线路4』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://173.208.212.130:8181/720p/tjws.m3u8$LR•IPV4•27『线路5』 +http://120.198.95.220:9901/tsfile/live/1067_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•26『线路5』 #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•27『线路6』 +http://36.136.38.87:9901/tsfile/live/0135_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路6』 #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•27『线路7』 +http://38.75.136.137:98/gslb/dsdqpub/tjwshd.m3u8?auth=testpub$LR•IPV4•26『线路7』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://112.27.235.94:8000/hls/42/index.m3u8$LR•IPV4•27『线路8』 +http://23.237.228.134/live8/tianjing.m3u8$LR•IPV4•26『线路8』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://38.75.136.137:98/gslb/dsdqpub/tjwshd.m3u8?auth=testpub$LR•IPV4•27『线路9』 +http://gfr.x3322.net:9901/tsfile/live/1090_1.m3u8$LR•IPV4•26『线路9』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://23.237.228.134/live8/tianjing.m3u8$LR•IPV4•27『线路10』 +http://api.kkitv.itv888.cn:8080/hls/z2lkdkrb4w/index.m3u8$LR•IPV4•26『线路10』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://gfr.x3322.net:9901/tsfile/live/1090_1.m3u8$LR•IPV4•27『线路11』 +https://iptv.catvod.com/catvod.php?id=tjws$LR•IPV4•26『线路11』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://api.kkitv.itv888.cn:8080/hls/z2lkdkrb4w/index.m3u8$LR•IPV4•27『线路12』 +https://httop.top/ysp-天津卫视$LR•IPV4•26『线路12』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -https://iptv.catvod.com/catvod.php?id=tjws$LR•IPV4•27『线路13』 +http://iptv.huuc.edu.cn/hls/tjhd.m3u8$LR•IPV4•26『线路13』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -https://httop.top/ysp-天津卫视$LR•IPV4•27『线路14』 +http://153.0.171.163:9901/tsfile/live/0135_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路14』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://iptv.huuc.edu.cn/hls/tjhd.m3u8$LR•IPV4•27『线路15』 +http://60.10.139.113:8801/hls/23/index.m3u8$LR•IPV4•26『线路15』 #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•27『线路16』 +http://207.56.13.146:81/cdnlive/tjws.m3u8$LR•IPV4•26『线路16』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://60.10.139.113:8801/hls/23/index.m3u8$LR•IPV4•27『线路17』 +http://192.151.150.154/live/tjwshd.m3u8$LR•IPV4•26『线路17』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://207.56.13.146:81/cdnlive/tjws.m3u8$LR•IPV4•27『线路18』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000001000030788&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路18』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://192.151.150.154/live/tjwshd.m3u8$LR•IPV4•27『线路19』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000006827&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路19』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000001000030788&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路20』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000000831&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路20』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000006827&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路21』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000003475&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路21』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000000831&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路22』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265026&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路22』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000003475&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路23』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=6707942579111517572&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路23』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265026&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路24』 +http://111.29.9.38:6610/000000001000/5000000004000006827/index.m3u8?channel-id=bestzb&Contentid=5000000004000006827&livemode=1&stbId=3$LR•IPV4•26『线路24』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=6707942579111517572&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路25』 +http://111.29.9.33:6610/000000001000/1000000001000000831/index.m3u8?channel-id=bestzb&Contentid=1000000001000000831&livemode=1&stbId=3$LR•IPV4•26『线路25』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://111.29.9.38:6610/000000001000/5000000004000006827/index.m3u8?channel-id=bestzb&Contentid=5000000004000006827&livemode=1&stbId=3$LR•IPV4•27『线路26』 -#EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://111.29.9.33:6610/000000001000/1000000001000000831/index.m3u8?channel-id=bestzb&Contentid=1000000001000000831&livemode=1&stbId=3$LR•IPV4•27『线路27』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225698/index.m3u8$LR•IPV4•26『线路26』 #EXTINF:-1 tvg-id="海南卫视" tvg-name="海南卫视" group-title="卫视",海南卫视 https://livelyws.chinamcache.com/lyws/zb03.m3u8$LR•IPV4•15『线路1』 #EXTINF:-1 tvg-id="海南卫视" tvg-name="海南卫视" group-title="卫视",海南卫视 -http://118.81.195.79:9003/hls/28/index.m3u8$LR•IPV4•15『线路2』 +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•15『线路2』 #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•15『线路3』 +http://120.76.248.139/live/bfgd/4200000473.m3u8$LR•IPV4•15『线路3』 #EXTINF:-1 tvg-id="海南卫视" tvg-name="海南卫视" group-title="卫视",海南卫视 http://222.90.21.30:9901/hls/37/index.m3u8$LR•IPV4•15『线路4』 #EXTINF:-1 tvg-id="海南卫视" tvg-name="海南卫视" group-title="卫视",海南卫视 -http://120.76.248.139/live/bfgd/4200000473.m3u8$LR•IPV4•15『线路5』 +http://43.251.226.89:8080/play/50.m3u8$LR•IPV4•15『线路5』 #EXTINF:-1 tvg-id="海南卫视" tvg-name="海南卫视" group-title="卫视",海南卫视 -http://43.251.226.89:8080/play/50.m3u8$LR•IPV4•15『线路6』 +http://api.kkitv.itv888.cn:8080/hls/c1cajhsgba8/index.m3u8$LR•IPV4•15『线路6』 #EXTINF:-1 tvg-id="海南卫视" tvg-name="海南卫视" group-title="卫视",海南卫视 -http://api.kkitv.itv888.cn:8080/hls/c1cajhsgba8/index.m3u8$LR•IPV4•15『线路7』 +https://iptv.catvod.com/catvod.php?id=hinws$LR•IPV4•15『线路7』 #EXTINF:-1 tvg-id="海南卫视" tvg-name="海南卫视" group-title="卫视",海南卫视 -https://iptv.catvod.com/catvod.php?id=hinws$LR•IPV4•15『线路8』 +https://httop.top/ysp-海南卫视$LR•IPV4•15『线路8』 #EXTINF:-1 tvg-id="海南卫视" tvg-name="海南卫视" group-title="卫视",海南卫视 -https://httop.top/ysp-海南卫视$LR•IPV4•15『线路9』 +http://nn.7x9d.cn/地方台8563/海南.php?id=hnws$LR•IPV4•15『线路9』 #EXTINF:-1 tvg-id="海南卫视" tvg-name="海南卫视" group-title="卫视",海南卫视 -http://nn.7x9d.cn/地方台8563/海南.php?id=hnws$LR•IPV4•15『线路10』 +http://207.56.13.146:81/cdnlive/lyws.m3u8$LR•IPV4•15『线路10』 #EXTINF:-1 tvg-id="海南卫视" tvg-name="海南卫视" group-title="卫视",海南卫视 -http://207.56.13.146:81/cdnlive/lyws.m3u8$LR•IPV4•15『线路11』 +http://204.12.221.218:8181/3m1080p/lyws.m3u8$LR•IPV4•15『线路11』 #EXTINF:-1 tvg-id="海南卫视" tvg-name="海南卫视" group-title="卫视",海南卫视 -http://204.12.221.218:8181/3m1080p/lyws.m3u8$LR•IPV4•15『线路12』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000006211&livemode=1&stbId=yu&mode=1&$LR•IPV4•15『线路12』 #EXTINF:-1 tvg-id="海南卫视" tvg-name="海南卫视" group-title="卫视",海南卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000006211&livemode=1&stbId=yu&mode=1&$LR•IPV4•15『线路13』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=7899627377857656087&livemode=1&stbId=yu&mode=1&$LR•IPV4•15『线路13』 #EXTINF:-1 tvg-id="海南卫视" tvg-name="海南卫视" group-title="卫视",海南卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=7899627377857656087&livemode=1&stbId=yu&mode=1&$LR•IPV4•15『线路14』 +http://111.29.9.33:6610/000000001000/5000000004000006211/index.m3u8?channel-id=bestzb&Contentid=5000000004000006211&livemode=1&stbId=3$LR•IPV4•15『线路14』 #EXTINF:-1 tvg-id="海南卫视" tvg-name="海南卫视" group-title="卫视",海南卫视 -http://111.29.9.33:6610/000000001000/5000000004000006211/index.m3u8?channel-id=bestzb&Contentid=5000000004000006211&livemode=1&stbId=3$LR•IPV4•15『线路15』 +http://118.81.195.79:9003/hls/28/index.m3u8$LR•IPV4•15『线路15』 #EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://39.134.115.163:8080/PLTV/88888910/224/3221225725/index.m3u8$LR•IPV4•21『线路1』 +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•21『线路1』 #EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://183.207.248.71/cntv/live1/xinjiangstv/xinjiangstv$LR•IPV4•21『线路2』 +http://218.84.12.186:8001/hls/main/playlist.m3u8?zxinjd;http://218.84.12.186:8001/hls/main/playlist.m3u8zxinjd$LR•IPV4•21『线路2』 #EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://183.207.248.71/gitv/live1/G_XINJIANG/G_XINJIANG$LR•IPV4•21『线路3』 +http://123.163.114.168:9901/tsfile/live/0110_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•21『线路3』 #EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://183.207.249.15/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•21『线路4』 +http://198.204.228.26/live/xjws.m3u8$LR•IPV4•21『线路4』 #EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://223.110.243.136/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•21『线路5』 +http://112.123.243.37:50085/tsfile/live/0143_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•21『线路5』 #EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://112.25.48.68/live/program/live/xjws/1300000/mnf.m3u8$LR•IPV4•21『线路6』 +http://58.56.162.102:4466/newlive/live/hls/44/live.m3u8$LR•IPV4•21『线路6』 #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•21『线路7』 +https://iptv.catvod.com/catvod.php?id=xjws$LR•IPV4•21『线路7』 #EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://123.163.114.168:9901/tsfile/live/0110_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•21『线路8』 +https://httop.top/ysp-新疆卫视$LR•IPV4•21『线路8』 #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•21『线路9』 +http://jasonzhangnas.f3322.net:7088/udp/233.18.204.220:5140$LR•IPV4•21『线路9』 #EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://198.204.228.26/live/xjws.m3u8$LR•IPV4•21『线路10』 +http://207.56.13.146:81/cdnlive/xjws.m3u8$LR•IPV4•21『线路10』 #EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://112.123.243.37:50085/tsfile/live/0143_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•21『线路11』 +http://192.151.150.154/live/xjws.m3u8$LR•IPV4•21『线路11』 #EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://58.56.162.102:4466/newlive/live/hls/44/live.m3u8$LR•IPV4•21『线路12』 +http://204.12.221.218:8181/3m1080p/xjws.m3u8$LR•IPV4•21『线路12』 #EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 -https://iptv.catvod.com/catvod.php?id=xjws$LR•IPV4•21『线路13』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040018&livemode=1&stbId=yu&mode=1&$LR•IPV4•21『线路13』 #EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 -https://httop.top/ysp-新疆卫视$LR•IPV4•21『线路14』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000029441&livemode=1&stbId=yu&mode=1&$LR•IPV4•21『线路14』 #EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://jasonzhangnas.f3322.net:7088/udp/233.18.204.220:5140$LR•IPV4•21『线路15』 +http://111.29.9.33:6610/000000001000/1000000002000029441/index.m3u8?channel-id=bestzb&Contentid=1000000002000029441&livemode=1&stbId=3$LR•IPV4•21『线路15』 #EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://207.56.13.146:81/cdnlive/xjws.m3u8$LR•IPV4•21『线路16』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225725/index.m3u8$LR•IPV4•21『线路16』 #EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://192.151.150.154/live/xjws.m3u8$LR•IPV4•21『线路17』 +http://183.207.248.71/cntv/live1/xinjiangstv/xinjiangstv$LR•IPV4•21『线路17』 #EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://204.12.221.218:8181/3m1080p/xjws.m3u8$LR•IPV4•21『线路18』 +http://183.207.248.71/gitv/live1/G_XINJIANG/G_XINJIANG$LR•IPV4•21『线路18』 #EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040018&livemode=1&stbId=yu&mode=1&$LR•IPV4•21『线路19』 +http://183.207.249.15/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•21『线路19』 #EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000029441&livemode=1&stbId=yu&mode=1&$LR•IPV4•21『线路20』 +http://223.110.243.136/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•21『线路20』 #EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://111.29.9.33:6610/000000001000/1000000002000029441/index.m3u8?channel-id=bestzb&Contentid=1000000002000029441&livemode=1&stbId=3$LR•IPV4•21『线路21』 +http://112.25.48.68/live/program/live/xjws/1300000/mnf.m3u8$LR•IPV4•21『线路21』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 http://p2.ioioz.com/xgplayer.php?id=https://hwapi.yntv.net/ew265l/z1z6s5.m3u8$LR•IPV4•24『线路1』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -https://hwapi.yunshicloud.com/8xughf/e0bx15.m3u8$LR•IPV4•24『线路2』 +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•24『线路2』 #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•24『线路3』 +http://112.27.235.94:8000/hls/40/index.m3u8$LR•IPV4•24『线路3』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 http://123.163.114.168:85/tsfile/live/0119_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•24『线路4』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 @@ -2508,59 +2500,59 @@ http://207.56.13.146:81/cdnlive/ynws.m3u8$LR•IPV4•24『线路9』 #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•24『线路10』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -http://112.27.235.94:8000/hls/40/index.m3u8$LR•IPV4•24『线路11』 +http://23.237.228.134/live8/yunnan.m3u8$LR•IPV4•24『线路11』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -http://23.237.228.134/live8/yunnan.m3u8$LR•IPV4•24『线路12』 +https://iptv.catvod.com/catvod.php?id=ynws$LR•IPV4•24『线路12』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -https://iptv.catvod.com/catvod.php?id=ynws$LR•IPV4•24『线路13』 +https://httop.top/ysp-云南卫视$LR•IPV4•24『线路13』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -https://httop.top/ysp-云南卫视$LR•IPV4•24『线路14』 +http://153.0.171.163:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•24『线路14』 #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•24『线路15』 +http://60.10.139.113:8801/hls/51/index.m3u8$LR•IPV4•24『线路15』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -http://60.10.139.113:8801/hls/51/index.m3u8$LR•IPV4•24『线路16』 +http://192.151.150.154/live/ynwshd.m3u8$LR•IPV4•24『线路16』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -http://192.151.150.154/live/ynwshd.m3u8$LR•IPV4•24『线路17』 +http://204.12.221.218:8181/3m1080p/ynws.m3u8$LR•IPV4•24『线路17』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -http://204.12.221.218:8181/3m1080p/ynws.m3u8$LR•IPV4•24『线路18』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000031120&livemode=1&stbId=yu&mode=1&$LR•IPV4•24『线路18』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000031120&livemode=1&stbId=yu&mode=1&$LR•IPV4•24『线路19』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000006000040019&livemode=1&stbId=yu&mode=1&$LR•IPV4•24『线路19』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000006000040019&livemode=1&stbId=yu&mode=1&$LR•IPV4•24『线路20』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000002000024694&livemode=1&stbId=yu&mode=1&$LR•IPV4•24『线路20』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000002000024694&livemode=1&stbId=yu&mode=1&$LR•IPV4•24『线路21』 +http://111.29.9.37:6610/000000001000/1000000002000024694/index.m3u8?stbId=3&livemode=1&IASHttpSessionId=OTT$LR•IPV4•24『线路21』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -http://111.29.9.37:6610/000000001000/1000000002000024694/index.m3u8?stbId=3&livemode=1&IASHttpSessionId=OTT$LR•IPV4•24『线路22』 +http://111.43.126.240:9003/hls/60/index.m3u8$LR•IPV4•24『线路22』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -http://111.43.126.240:9003/hls/60/index.m3u8$LR•IPV4•24『线路23』 +http://111.29.9.33:6610/000000001000/1000000002000024694/index.m3u8?channel-id=bestzb&Contentid=1000000002000024694&livemode=1&stbId=3$LR•IPV4•24『线路23』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -http://111.29.9.33:6610/000000001000/1000000002000024694/index.m3u8?channel-id=bestzb&Contentid=1000000002000024694&livemode=1&stbId=3$LR•IPV4•24『线路24』 +https://hwapi.yunshicloud.com/8xughf/e0bx15.m3u8$LR•IPV4•24『线路24』 #EXTINF:-1 tvg-id="西藏卫视" tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://39.134.115.163:8080/PLTV/88888910/224/3221225723/index.m3u8$LR•IPV4•13『线路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•13『线路1』 #EXTINF:-1 tvg-id="西藏卫视" tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://117.169.120.140:8080/live/xizangstv/.m3u8$LR•IPV4•13『线路2』 +http://cssbyd.imwork.net:8082/hls/46/index.m3u8$LR•IPV4•13『线路2』 #EXTINF:-1 tvg-id="西藏卫视" tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://183.207.249.16/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•13『线路3』 +http://107.150.60.122/live/xzws.m3u8$LR•IPV4•13『线路3』 #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•13『线路4』 +http://222.90.21.30:9901/hls/90/index.m3u8$LR•IPV4•13『线路4』 #EXTINF:-1 tvg-id="西藏卫视" tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://107.150.60.122/live/xzws.m3u8$LR•IPV4•13『线路5』 +https://iptv.catvod.com/catvod.php?id=xzws$LR•IPV4•13『线路5』 #EXTINF:-1 tvg-id="西藏卫视" tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://222.90.21.30:9901/hls/90/index.m3u8$LR•IPV4•13『线路6』 +http://jasonzhangnas.f3322.net:7088/udp/233.18.204.222:5140$LR•IPV4•13『线路6』 #EXTINF:-1 tvg-id="西藏卫视" tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://cssbyd.imwork.net:8082/hls/46/index.m3u8$LR•IPV4•13『线路7』 +http://207.56.13.146:81/cdnlive/xzws.m3u8$LR•IPV4•13『线路7』 #EXTINF:-1 tvg-id="西藏卫视" tvg-name="西藏卫视" group-title="卫视",西藏卫视 -https://iptv.catvod.com/catvod.php?id=xzws$LR•IPV4•13『线路8』 +http://204.12.221.218:8181/3m1080p/xzws.m3u8$LR•IPV4•13『线路8』 #EXTINF:-1 tvg-id="西藏卫视" tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://jasonzhangnas.f3322.net:7088/udp/233.18.204.222:5140$LR•IPV4•13『线路9』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5381760837640571168&livemode=1&stbId=yu&mode=1&$LR•IPV4•13『线路9』 #EXTINF:-1 tvg-id="西藏卫视" tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://207.56.13.146:81/cdnlive/xzws.m3u8$LR•IPV4•13『线路10』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=6603041244077933770&livemode=1&stbId=yu&mode=1&$LR•IPV4•13『线路10』 #EXTINF:-1 tvg-id="西藏卫视" tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://204.12.221.218:8181/3m1080p/xzws.m3u8$LR•IPV4•13『线路11』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225723/index.m3u8$LR•IPV4•13『线路11』 #EXTINF:-1 tvg-id="西藏卫视" tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5381760837640571168&livemode=1&stbId=yu&mode=1&$LR•IPV4•13『线路12』 +http://117.169.120.140:8080/live/xizangstv/.m3u8$LR•IPV4•13『线路12』 #EXTINF:-1 tvg-id="西藏卫视" tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=6603041244077933770&livemode=1&stbId=yu&mode=1&$LR•IPV4•13『线路13』 +http://183.207.249.16/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•13『线路13』 #EXTINF:-1 tvg-id="海峡卫视" tvg-name="海峡卫视" group-title="卫视",海峡卫视 http://38.64.72.148:80/hls/modn/list/4009/playlist.m3u8$LR•IPV4•5『线路1』 #EXTINF:-1 tvg-id="海峡卫视" tvg-name="海峡卫视" group-title="卫视",海峡卫视 @@ -2572,7 +2564,7 @@ http://8.138.7.223/tv/hxws.m3u8$LR•IPV4•5『线路4』 #EXTINF:-1 tvg-id="海峡卫视" tvg-name="海峡卫视" group-title="卫视",海峡卫视 http://hlsbkmgsplive.miguvideo.com/migu/kailu/haixiaws/57/20230724/01.m3u8?msisdn=&Channel_ID=&ContentId=&HlsSubType=&HlsProfileId=&encrypt=$LR•IPV4•5『线路5』 #EXTINF:-1 tvg-id="兵团卫视" tvg-name="兵团卫视" group-title="卫视",兵团卫视 -http://112.25.48.68/live/program/live/btws/1300000/mnf.m3u8$LR•IPV4•14『线路1』 +http://218.13.170.98:9901/tsfile/live/0115_1.m3u8$LR•IPV4•14『线路1』 #EXTINF:-1 tvg-id="兵团卫视" tvg-name="兵团卫视" group-title="卫视",兵团卫视 http://222.90.21.30:9901/hls/65/index.m3u8$LR•IPV4•14『线路2』 #EXTINF:-1 tvg-id="兵团卫视" tvg-name="兵团卫视" group-title="卫视",兵团卫视 @@ -2582,33 +2574,33 @@ http://38.75.136.137:98/gslb/dsdqpub/btws.m3u8?auth=testpub$LR•IPV4•14『线 #EXTINF:-1 tvg-id="兵团卫视" tvg-name="兵团卫视" group-title="卫视",兵团卫视 http://198.204.228.26/live/btws.m3u8$LR•IPV4•14『线路5』 #EXTINF:-1 tvg-id="兵团卫视" tvg-name="兵团卫视" group-title="卫视",兵团卫视 -http://218.13.170.98:9901/tsfile/live/0115_1.m3u8$LR•IPV4•14『线路6』 +http://43.251.226.89:8080/play/53.m3u8$LR•IPV4•14『线路6』 #EXTINF:-1 tvg-id="兵团卫视" tvg-name="兵团卫视" group-title="卫视",兵团卫视 -http://43.251.226.89:8080/play/53.m3u8$LR•IPV4•14『线路7』 +https://iptv.catvod.com/catvod.php?id=btws$LR•IPV4•14『线路7』 #EXTINF:-1 tvg-id="兵团卫视" tvg-name="兵团卫视" group-title="卫视",兵团卫视 -https://iptv.catvod.com/catvod.php?id=btws$LR•IPV4•14『线路8』 +https://httop.top/ysp-兵团卫视$LR•IPV4•14『线路8』 #EXTINF:-1 tvg-id="兵团卫视" tvg-name="兵团卫视" group-title="卫视",兵团卫视 -https://httop.top/ysp-兵团卫视$LR•IPV4•14『线路9』 +http://jasonzhangnas.f3322.net:7088/udp/233.18.204.221:5140$LR•IPV4•14『线路9』 #EXTINF:-1 tvg-id="兵团卫视" tvg-name="兵团卫视" group-title="卫视",兵团卫视 -http://jasonzhangnas.f3322.net:7088/udp/233.18.204.221:5140$LR•IPV4•14『线路10』 +http://192.151.150.154/live/btws.m3u8$LR•IPV4•14『线路10』 #EXTINF:-1 tvg-id="兵团卫视" tvg-name="兵团卫视" group-title="卫视",兵团卫视 -http://192.151.150.154/live/btws.m3u8$LR•IPV4•14『线路11』 +http://204.12.221.218:8181/3m1080p/btws.m3u8$LR•IPV4•14『线路11』 #EXTINF:-1 tvg-id="兵团卫视" tvg-name="兵团卫视" group-title="卫视",兵团卫视 -http://204.12.221.218:8181/3m1080p/btws.m3u8$LR•IPV4•14『线路12』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000005000266005&livemode=1&stbId=yu&mode=1&$LR•IPV4•14『线路12』 #EXTINF:-1 tvg-id="兵团卫视" tvg-name="兵团卫视" group-title="卫视",兵团卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000005000266005&livemode=1&stbId=yu&mode=1&$LR•IPV4•14『线路13』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040020&livemode=1&stbId=yu&mode=1&$LR•IPV4•14『线路13』 #EXTINF:-1 tvg-id="兵团卫视" tvg-name="兵团卫视" group-title="卫视",兵团卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040020&livemode=1&stbId=yu&mode=1&$LR•IPV4•14『线路14』 +http://112.25.48.68/live/program/live/btws/1300000/mnf.m3u8$LR•IPV4•14『线路14』 #EXTINF:-1 tvg-id="安多卫视" tvg-name="安多卫视" group-title="卫视",安多卫视 https://liveout.xntv.tv/a65jur/96iln2.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="安多卫视" tvg-name="安多卫视" group-title="卫视",安多卫视 http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000022124&livemode=1&stbId=yu&mode=1&$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="康巴卫视" tvg-name="康巴卫视" group-title="卫视",康巴卫视 -http://scgctvshow.sctv.com/hdlive/kangba/1.m3u8$LR•IPV4•3『线路1』 +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•3『线路1』 #EXTINF:-1 tvg-id="康巴卫视" tvg-name="康巴卫视" group-title="卫视",康巴卫视 -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•3『线路2』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000005000266002&livemode=1&stbId=yu&mode=1&$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="康巴卫视" tvg-name="康巴卫视" group-title="卫视",康巴卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000005000266002&livemode=1&stbId=yu&mode=1&$LR•IPV4•3『线路3』 +http://scgctvshow.sctv.com/hdlive/kangba/1.m3u8$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="农林卫视" tvg-name="农林卫视" group-title="卫视",农林卫视 http://120.76.248.139/live/bfgd/4200000122.m3u8$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-id="农林卫视" tvg-name="农林卫视" group-title="卫视",农林卫视 @@ -2642,13 +2634,13 @@ http://btjg.net:809/hls/142/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/3221227045/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7Eq0D3NdTUN7FuRzr8eJsbQA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•7『线路1』 #EXTINF:-1 tvg-id="延边卫视" tvg-name="延边卫视" group-title="卫视",延边卫视 -https://srs.iyb983.cn:443/video/CYS/index.m3u8$LR•IPV4•7『线路2』 +http://120.76.248.139/live/bfgd/4200000117.m3u8$LR•IPV4•7『线路2』 #EXTINF:-1 tvg-id="延边卫视" tvg-name="延边卫视" group-title="卫视",延边卫视 -https://srs.iyb983.cn/video/CYS/index.m3u8$LR•IPV4•7『线路3』 +https://srs.iyb983.cn:443/video/CYS/index.m3u8$LR•IPV4•7『线路3』 #EXTINF:-1 tvg-id="延边卫视" tvg-name="延边卫视" group-title="卫视",延边卫视 -http://222.90.21.30:9901/hls/67/index.m3u8$LR•IPV4•7『线路4』 +https://srs.iyb983.cn/video/CYS/index.m3u8$LR•IPV4•7『线路4』 #EXTINF:-1 tvg-id="延边卫视" tvg-name="延边卫视" group-title="卫视",延边卫视 -http://120.76.248.139/live/bfgd/4200000117.m3u8$LR•IPV4•7『线路5』 +http://222.90.21.30:9901/hls/67/index.m3u8$LR•IPV4•7『线路5』 #EXTINF:-1 tvg-id="延边卫视" tvg-name="延边卫视" group-title="卫视",延边卫视 http://204.12.221.218:8181/3m1080p/ybws.m3u8$LR•IPV4•7『线路6』 #EXTINF:-1 tvg-id="延边卫视" tvg-name="延边卫视" group-title="卫视",延边卫视 @@ -2662,11 +2654,11 @@ http://111.29.9.33:6610/000000001000/1000000001000028380/index.m3u8?channel-id=b #EXTINF:-1 tvg-id="家庭理财" tvg-name="家庭理财" group-title="卫视",家庭理财 http://223.110.245.139/PLTV/4/224/3221227011/index.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="梨园" tvg-name="梨园" group-title="卫视",梨园 -http://60.10.139.113:8801/hls/86/index.m3u8$LR•IPV4•3『线路1』 +https://dxtx.hntv.tv/live/lypd.m3u8?txSecret=10c771842a0be59e8b575d765173ec96&txTime=7B923E0A&wsSecret=41543190cdf375f1c73207222bb96542&wsTime=1769313549$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="梨园" tvg-name="梨园" group-title="卫视",梨园 -http://1.94.31.214/php/hntv.php?id=hnly$LR•IPV4•3『线路2』 +http://60.10.139.113:8801/hls/86/index.m3u8$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="梨园" tvg-name="梨园" group-title="卫视",梨园 -https://dxtx.hntv.tv/live/lypd.m3u8?txSecret=10c771842a0be59e8b575d765173ec96&txTime=7B923E0A&wsSecret=41543190cdf375f1c73207222bb96542&wsTime=1769313549$LR•IPV4•3『线路3』 +http://1.94.31.214/php/hntv.php?id=hnly$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="辽宁公共" tvg-name="辽宁公共" group-title="卫视",辽宁公共 http://120.76.248.139/live/bfgd/4200000077.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="中华特产" tvg-name="中华特产" group-title="卫视",中华特产 @@ -2680,7 +2672,7 @@ 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="卫视",山西卫视 -http://118.81.195.79:9003/hls/19/index.m3u8$LR•IPV4•20『线路1』 +https://livehhhttps.sxrtv.com/lsdream/q8RVWgs/1000/n1sh84V.m3u8$LR•IPV4•20『线路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•20『线路2』 #EXTINF:-1 tvg-id="山西卫视" tvg-name="山西卫视" group-title="卫视",山西卫视 @@ -2698,75 +2690,75 @@ http://222.90.21.30:9901/hls/32/index.m3u8$LR•IPV4•20『线路8』 #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•20『线路9』 #EXTINF:-1 tvg-id="山西卫视" tvg-name="山西卫视" group-title="卫视",山西卫视 -http://112.27.235.94:8000/hls/45/index.m3u8$LR•IPV4•20『线路10』 +http://23.237.228.134/live8/shanxi.m3u8$LR•IPV4•20『线路10』 #EXTINF:-1 tvg-id="山西卫视" tvg-name="山西卫视" group-title="卫视",山西卫视 -http://23.237.228.134/live8/shanxi.m3u8$LR•IPV4•20『线路11』 +https://iptv.catvod.com/catvod.php?id=sxiws$LR•IPV4•20『线路11』 #EXTINF:-1 tvg-id="山西卫视" tvg-name="山西卫视" group-title="卫视",山西卫视 -https://iptv.catvod.com/catvod.php?id=sxiws$LR•IPV4•20『线路12』 +https://httop.top/ysp-山西卫视$LR•IPV4•20『线路12』 #EXTINF:-1 tvg-id="山西卫视" tvg-name="山西卫视" group-title="卫视",山西卫视 -https://httop.top/ysp-山西卫视$LR•IPV4•20『线路13』 +http://60.10.139.113:8801/hls/54/index.m3u8$LR•IPV4•20『线路13』 #EXTINF:-1 tvg-id="山西卫视" tvg-name="山西卫视" group-title="卫视",山西卫视 -http://60.10.139.113:8801/hls/54/index.m3u8$LR•IPV4•20『线路14』 +http://jasonzhangnas.f3322.net:7088/udp/233.18.204.211:5140$LR•IPV4•20『线路14』 #EXTINF:-1 tvg-id="山西卫视" tvg-name="山西卫视" group-title="卫视",山西卫视 -http://jasonzhangnas.f3322.net:7088/udp/233.18.204.211:5140$LR•IPV4•20『线路15』 +http://207.56.13.146:81/cdnlive/sxws.m3u8$LR•IPV4•20『线路15』 #EXTINF:-1 tvg-id="山西卫视" tvg-name="山西卫视" group-title="卫视",山西卫视 -http://207.56.13.146:81/cdnlive/sxws.m3u8$LR•IPV4•20『线路16』 +http://192.151.150.154/live/sxwshd.m3u8$LR•IPV4•20『线路16』 #EXTINF:-1 tvg-id="山西卫视" tvg-name="山西卫视" group-title="卫视",山西卫视 -http://192.151.150.154/live/sxwshd.m3u8$LR•IPV4•20『线路17』 +http://204.12.221.218:8181/3m1080p/sxws.m3u8$LR•IPV4•20『线路17』 #EXTINF:-1 tvg-id="山西卫视" tvg-name="山西卫视" group-title="卫视",山西卫视 -http://204.12.221.218:8181/3m1080p/sxws.m3u8$LR•IPV4•20『线路18』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040023&livemode=1&stbId=yu&mode=1&$LR•IPV4•20『线路18』 #EXTINF:-1 tvg-id="山西卫视" tvg-name="山西卫视" group-title="卫视",山西卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040023&livemode=1&stbId=yu&mode=1&$LR•IPV4•20『线路19』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000021220&livemode=1&stbId=yu&mode=1&$LR•IPV4•20『线路19』 #EXTINF:-1 tvg-id="山西卫视" tvg-name="山西卫视" group-title="卫视",山西卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000021220&livemode=1&stbId=yu&mode=1&$LR•IPV4•20『线路20』 +http://118.81.195.79:9003/hls/19/index.m3u8$LR•IPV4•20『线路20』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 http://stream.snrtv.com/sxbc-3-kszDIO.m3u8$LR•IPV4•24『线路1』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://39.134.115.163:8080/PLTV/88888910/224/3221225729/index.m3u8$LR•IPV4•24『线路2』 +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•24『线路2』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://223.110.245.139/PLTV/4/224/3221227022/index.m3u8$LR•IPV4•24『线路3』 +http://112.27.235.94:8000/hls/43/index.m3u8$LR•IPV4•24『线路3』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://112.25.48.68/live/program/live/sxws/1300000/mnf.m3u8$LR•IPV4•24『线路4』 +http://38.75.136.137:98/gslb/dsdqpub/snwshd.m3u8?auth=testpub$LR•IPV4•24『线路4』 #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•24『线路5』 +http://36.136.38.87:9901/tsfile/live/0136_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•24『线路5』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://38.75.136.137:98/gslb/dsdqpub/snwshd.m3u8?auth=testpub$LR•IPV4•24『线路6』 +http://120.198.95.220:9901/tsfile/live/1068_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•24『线路6』 #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•24『线路7』 +http://cssbyd.imwork.net:8082/hls/42/index.m3u8$LR•IPV4•24『线路7』 #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•24『线路8』 +http://38.75.136.137:98/gslb/dsdqpub/sxwshd.m3u8?auth=testpub$LR•IPV4•24『线路8』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://cssbyd.imwork.net:8082/hls/42/index.m3u8$LR•IPV4•24『线路9』 +http://23.237.228.134/live6/sichuan.m3u8$LR•IPV4•24『线路9』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://112.27.235.94:8000/hls/43/index.m3u8$LR•IPV4•24『线路10』 +http://43.251.226.89:8080/play/45.m3u8$LR•IPV4•24『线路10』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://38.75.136.137:98/gslb/dsdqpub/sxwshd.m3u8?auth=testpub$LR•IPV4•24『线路11』 +https://iptv.catvod.com/catvod.php?id=sxws$LR•IPV4•24『线路11』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://23.237.228.134/live6/sichuan.m3u8$LR•IPV4•24『线路12』 +https://httop.top/ysp-陕西卫视$LR•IPV4•24『线路12』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://43.251.226.89:8080/play/45.m3u8$LR•IPV4•24『线路13』 +http://mg.hmysapp.cn:177/ckmg/zb.php?id=sxws$LR•IPV4•24『线路13』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -https://iptv.catvod.com/catvod.php?id=sxws$LR•IPV4•24『线路14』 +http://153.0.171.163:9901/tsfile/live/0136_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•24『线路14』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -https://httop.top/ysp-陕西卫视$LR•IPV4•24『线路15』 +http://60.10.139.113:8801/hls/53/index.m3u8$LR•IPV4•24『线路15』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://mg.hmysapp.cn:177/ckmg/zb.php?id=sxws$LR•IPV4•24『线路16』 +http://jasonzhangnas.f3322.net:7088/udp/233.18.204.223:5140$LR•IPV4•24『线路16』 #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•24『线路17』 +http://207.56.13.146:81/cdnlive/snws.m3u8$LR•IPV4•24『线路17』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://60.10.139.113:8801/hls/53/index.m3u8$LR•IPV4•24『线路18』 +http://192.151.150.154/live/snwshd.m3u8$LR•IPV4•24『线路18』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://jasonzhangnas.f3322.net:7088/udp/233.18.204.223:5140$LR•IPV4•24『线路19』 +http://204.12.221.218:8181/3m1080p/snws.m3u8$LR•IPV4•24『线路19』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://207.56.13.146:81/cdnlive/snws.m3u8$LR•IPV4•24『线路20』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000007495&livemode=1&stbId=yu&mode=1&$LR•IPV4•24『线路20』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://192.151.150.154/live/snwshd.m3u8$LR•IPV4•24『线路21』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000006000040017&livemode=1&stbId=yu&mode=1&$LR•IPV4•24『线路21』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://204.12.221.218:8181/3m1080p/snws.m3u8$LR•IPV4•24『线路22』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225729/index.m3u8$LR•IPV4•24『线路22』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000007495&livemode=1&stbId=yu&mode=1&$LR•IPV4•24『线路23』 +http://223.110.245.139/PLTV/4/224/3221227022/index.m3u8$LR•IPV4•24『线路23』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000006000040017&livemode=1&stbId=yu&mode=1&$LR•IPV4•24『线路24』 +http://112.25.48.68/live/program/live/sxws/1300000/mnf.m3u8$LR•IPV4•24『线路24』 #EXTINF:-1 tvg-id="CHC影迷电影" tvg-name="CHC影迷电影" group-title="数字",CHC影迷电影 p3p://167.114.175.6:55331/63ec4caf00020428e445513c2d902fdb$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="CHC影迷电影" tvg-name="CHC影迷电影" group-title="数字",CHC影迷电影 @@ -3130,9 +3122,9 @@ http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=100000 #EXTINF:-1 tvg-id="NewTV动作电影" tvg-name="NewTV动作电影" group-title="数字",NewTV动作电影 http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=8103864434730665389&livemode=1&stbId=yu&mode=1&$LR•IPV4•4『线路2』 #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•4『线路3』 +http://live.metshop.top/huya/11602077?cdn=alicdn$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-id="NewTV动作电影" tvg-name="NewTV动作电影" group-title="数字",NewTV动作电影 -http://live.metshop.top/huya/11602077?cdn=alicdn$LR•IPV4•4『线路4』 +http://39.134.19.68/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226465/index.m3u8$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-id="NewTV惊悚悬疑" tvg-name="NewTV惊悚悬疑" group-title="数字",NewTV惊悚悬疑 http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000004000024282&livemode=1&stbId=yu&mode=1&$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="NewTV惊悚悬疑" tvg-name="NewTV惊悚悬疑" group-title="数字",NewTV惊悚悬疑 @@ -3146,13 +3138,13 @@ http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=646038 #EXTINF:-1 tvg-id="NewTV精品体育" tvg-name="NewTV精品体育" group-title="数字",NewTV精品体育 http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000004000014634&livemode=1&stbId=yu&mode=1&$LR•IPV4•8『线路2』 #EXTINF:-1 tvg-id="NewTV精品体育" tvg-name="NewTV精品体育" group-title="数字",NewTV精品体育 -https://epg.pw/stream/866a097a0907c9832440f8df38272dd555abf05200dfbafcc137e214c9b30ca7.m3u8$LR•IPV4•8『线路3』 +https://epg.pw/stream/94ed0232b61ce8d89883160a4cdfbfc8f3225cae70ef8e17d93eec249a3c8ad6.m3u8$LR•IPV4•8『线路3』 #EXTINF:-1 tvg-id="NewTV精品体育" tvg-name="NewTV精品体育" group-title="数字",NewTV精品体育 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5739&tk=23a9aca1f79f$LR•IPV4•8『线路4』 +https://epg.pw/stream/866a097a0907c9832440f8df38272dd555abf05200dfbafcc137e214c9b30ca7.m3u8$LR•IPV4•8『线路4』 #EXTINF:-1 tvg-id="NewTV精品体育" tvg-name="NewTV精品体育" group-title="数字",NewTV精品体育 -https://epg.pw/stream/f7556eccd4ae06b0c2991fdc7a4f8388496559f728cc82459a8e50346040e226.m3u8$LR•IPV4•8『线路5』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5739&tk=23a9aca1f79f$LR•IPV4•8『线路5』 #EXTINF:-1 tvg-id="NewTV精品体育" tvg-name="NewTV精品体育" group-title="数字",NewTV精品体育 -https://epg.pw/stream/94ed0232b61ce8d89883160a4cdfbfc8f3225cae70ef8e17d93eec249a3c8ad6.m3u8$LR•IPV4•8『线路6』 +https://epg.pw/stream/f7556eccd4ae06b0c2991fdc7a4f8388496559f728cc82459a8e50346040e226.m3u8$LR•IPV4•8『线路6』 #EXTINF:-1 tvg-id="NewTV精品体育" tvg-name="NewTV精品体育" group-title="数字",NewTV精品体育 http://dl.wifi942.com:66/jsyd/jsyd.php?id=GITV-JS-65$LR•IPV4•8『线路7』 #EXTINF:-1 tvg-id="NewTV精品体育" tvg-name="NewTV精品体育" group-title="数字",NewTV精品体育 @@ -3202,23 +3194,23 @@ http://111.29.9.33:6610/000000001000/1000000001000000515/index.m3u8?channel-id=b #EXTINF:-1 tvg-id="NewTV哒啵赛事" tvg-name="NewTV哒啵赛事" group-title="数字",NewTV哒啵赛事 http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5320946857686967621&livemode=1&stbId=yu&mode=1&$LR•IPV4 #EXTINF:-1 tvg-id="卡酷少儿" tvg-name="卡酷少儿" group-title="数字",卡酷少儿 -http://192.151.150.154/live/btvkk.m3u8$LR•IPV4•5『线路1』 +http://218.13.170.98:9901/tsfile/live/1021_1.m3u8$LR•IPV4•5『线路1』 #EXTINF:-1 tvg-id="卡酷少儿" tvg-name="卡酷少儿" group-title="数字",卡酷少儿 -http://204.12.221.218:8181/3m1080p/btvkk.m3u8$LR•IPV4•5『线路2』 +http://192.151.150.154/live/btvkk.m3u8$LR•IPV4•5『线路2』 #EXTINF:-1 tvg-id="卡酷少儿" tvg-name="卡酷少儿" group-title="数字",卡酷少儿 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=7851974109718180595&livemode=1&stbId=yu&mode=1&$LR•IPV4•5『线路3』 +http://204.12.221.218:8181/3m1080p/btvkk.m3u8$LR•IPV4•5『线路3』 #EXTINF:-1 tvg-id="卡酷少儿" tvg-name="卡酷少儿" group-title="数字",卡酷少儿 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=7589856436881630561&livemode=1&stbId=yu&mode=1&$LR•IPV4•5『线路4』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=7851974109718180595&livemode=1&stbId=yu&mode=1&$LR•IPV4•5『线路4』 #EXTINF:-1 tvg-id="卡酷少儿" tvg-name="卡酷少儿" group-title="数字",卡酷少儿 -http://218.13.170.98:9901/tsfile/live/1021_1.m3u8$LR•IPV4•5『线路5』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=7589856436881630561&livemode=1&stbId=yu&mode=1&$LR•IPV4•5『线路5』 #EXTINF:-1 tvg-id="优漫卡通" tvg-name="优漫卡通" group-title="数字",优漫卡通 -http://183.207.249.15/PLTV/4/224/3221225933/index.m3u8$LR•IPV4•4『线路1』 +http://192.151.150.154/live/ymkt.m3u8$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-id="优漫卡通" tvg-name="优漫卡通" group-title="数字",优漫卡通 -http://192.151.150.154/live/ymkt.m3u8$LR•IPV4•4『线路2』 +http://204.12.221.218:8181/3m1080p/ymkt.m3u8$LR•IPV4•4『线路2』 #EXTINF:-1 tvg-id="优漫卡通" tvg-name="优漫卡通" group-title="数字",优漫卡通 -http://204.12.221.218:8181/3m1080p/ymkt.m3u8$LR•IPV4•4『线路3』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000010063&livemode=1&stbId=yu&mode=1&$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-id="优漫卡通" tvg-name="优漫卡通" group-title="数字",优漫卡通 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000010063&livemode=1&stbId=yu&mode=1&$LR•IPV4•4『线路4』 +http://183.207.249.15/PLTV/4/224/3221225933/index.m3u8$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-id="哈哈炫动" tvg-name="哈哈炫动" group-title="数字",哈哈炫动 http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000031123&livemode=1&stbId=yu&mode=1&$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-id="哈哈炫动" tvg-name="哈哈炫动" group-title="数字",哈哈炫动 @@ -3228,39 +3220,39 @@ http://111.29.9.33:6610/000000001000/5000000011000031123/index.m3u8?channel-id=b #EXTINF:-1 tvg-id="哈哈炫动" tvg-name="哈哈炫动" group-title="数字",哈哈炫动 http://223.110.245.139/PLTV/4/224/3221226388/index.m3u8$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-id="嘉佳卡通" tvg-name="嘉佳卡通" group-title="数字",嘉佳卡通 -http://223.110.245.139/PLTV/4/224/3221227009/index.m3u8$LR•IPV4•7『线路1』 +http://192.151.150.154/live/gdjjkt.m3u8$LR•IPV4•7『线路1』 #EXTINF:-1 tvg-id="嘉佳卡通" tvg-name="嘉佳卡通" group-title="数字",嘉佳卡通 -http://112.25.48.68/live/program/live/jjkt/1300000/mnf.m3u8$LR•IPV4•7『线路2』 +http://204.12.221.218:8181/3m1080p/gdjjkt.m3u8$LR•IPV4•7『线路2』 #EXTINF:-1 tvg-id="嘉佳卡通" tvg-name="嘉佳卡通" group-title="数字",嘉佳卡通 -http://192.151.150.154/live/gdjjkt.m3u8$LR•IPV4•7『线路3』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000025964&livemode=1&stbId=yu&mode=1&$LR•IPV4•7『线路3』 #EXTINF:-1 tvg-id="嘉佳卡通" tvg-name="嘉佳卡通" group-title="数字",嘉佳卡通 -http://204.12.221.218:8181/3m1080p/gdjjkt.m3u8$LR•IPV4•7『线路4』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=4739906347743456369&livemode=1&stbId=yu&mode=1&$LR•IPV4•7『线路4』 #EXTINF:-1 tvg-id="嘉佳卡通" tvg-name="嘉佳卡通" group-title="数字",嘉佳卡通 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000025964&livemode=1&stbId=yu&mode=1&$LR•IPV4•7『线路5』 +http://111.29.9.33:6610/000000001000/1000000002000025964/index.m3u8?channel-id=bestzb&Contentid=1000000002000025964&livemode=1&stbId=3$LR•IPV4•7『线路5』 #EXTINF:-1 tvg-id="嘉佳卡通" tvg-name="嘉佳卡通" group-title="数字",嘉佳卡通 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=4739906347743456369&livemode=1&stbId=yu&mode=1&$LR•IPV4•7『线路6』 +http://223.110.245.139/PLTV/4/224/3221227009/index.m3u8$LR•IPV4•7『线路6』 #EXTINF:-1 tvg-id="嘉佳卡通" tvg-name="嘉佳卡通" group-title="数字",嘉佳卡通 -http://111.29.9.33:6610/000000001000/1000000002000025964/index.m3u8?channel-id=bestzb&Contentid=1000000002000025964&livemode=1&stbId=3$LR•IPV4•7『线路7』 +http://112.25.48.68/live/program/live/jjkt/1300000/mnf.m3u8$LR•IPV4•7『线路7』 #EXTINF:-1 tvg-id="金鹰卡通" tvg-name="金鹰卡通" group-title="数字",金鹰卡通 http://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2hzPSZ1aXA9MTA2LjE0LjM4LjU1JmRlZj0xJm1hY2lkPTY4NmU4Y2Y4Yzg4ZTc3ZWM5YTA3OTMyODlmNTM0ODQyYWJlYzRmM2MmcWlkPSZyYXV0aF9lbmFibGU9b2ZmJmNkbmV4X2lkPWFsX3Bob25lMyZ0ZXJtPTUmZXM9MTc4MzMyMDYyOCZzPTk5ZTQ2ZmRlYTY5ZGQ5MzEwMzAxZGZjNWM3ZWI2OWI2JnVpZD0mdXVpZD0wN2NlZmFjNWM1MjAyMjI3MmQ5OGNmYTE2YjJlM2YzZS02YTBlMjYzNyZ2PTImYXM9MCZfY2FyQ29kZT0w/JYKTMPP360.m3u8$LR•IPV4•10『线路1』 #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•10『线路2』 +http://183.11.239.36:808/hls/69/index.m3u8$LR•IPV4•10『线路2』 #EXTINF:-1 tvg-id="金鹰卡通" tvg-name="金鹰卡通" group-title="数字",金鹰卡通 -http://183.11.239.36:808/hls/69/index.m3u8$LR•IPV4•10『线路3』 +http://204.12.221.218:8181/3m1080p/hnjykt.m3u8$LR•IPV4•10『线路3』 #EXTINF:-1 tvg-id="金鹰卡通" tvg-name="金鹰卡通" group-title="数字",金鹰卡通 -http://120.198.95.220:9901/tsfile/live/1033_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•10『线路4』 +https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/JYKTMPP360.m3u8$LR•IPV4•10『线路4』 #EXTINF:-1 tvg-id="金鹰卡通" tvg-name="金鹰卡通" group-title="数字",金鹰卡通 -http://204.12.221.218:8181/3m1080p/hnjykt.m3u8$LR•IPV4•10『线路5』 +http://183.237.95.108:9901/tsfile/live/1099_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•10『线路5』 #EXTINF:-1 tvg-id="金鹰卡通" tvg-name="金鹰卡通" group-title="数字",金鹰卡通 -https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/JYKTMPP360.m3u8$LR•IPV4•10『线路6』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040024&livemode=1&stbId=yu&mode=1&$LR•IPV4•10『线路6』 #EXTINF:-1 tvg-id="金鹰卡通" tvg-name="金鹰卡通" group-title="数字",金鹰卡通 -http://183.237.95.108:9901/tsfile/live/1099_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•10『线路7』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000016601&livemode=1&stbId=yu&mode=1&$LR•IPV4•10『线路7』 #EXTINF:-1 tvg-id="金鹰卡通" tvg-name="金鹰卡通" group-title="数字",金鹰卡通 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040024&livemode=1&stbId=yu&mode=1&$LR•IPV4•10『线路8』 +http://111.29.9.33:6610/000000001000/5000000006000040024/index.m3u8?channel-id=bestzb&Contentid=5000000006000040024&livemode=1&stbId=3$LR•IPV4•10『线路8』 #EXTINF:-1 tvg-id="金鹰卡通" tvg-name="金鹰卡通" group-title="数字",金鹰卡通 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000016601&livemode=1&stbId=yu&mode=1&$LR•IPV4•10『线路9』 +http://120.198.95.220:9901/tsfile/live/1033_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•10『线路9』 #EXTINF:-1 tvg-id="金鹰卡通" tvg-name="金鹰卡通" group-title="数字",金鹰卡通 -http://111.29.9.33:6610/000000001000/5000000006000040024/index.m3u8?channel-id=bestzb&Contentid=5000000006000040024&livemode=1&stbId=3$LR•IPV4•10『线路10』 +http://223.110.245.145/ott.js.chinamobile.com/PLTV/3/224/3221226303/index.m3u8$LR•IPV4•10『线路10』 #EXTINF:-1 tvg-id="金鹰纪实" tvg-name="金鹰纪实" group-title="数字",金鹰纪实 http://iptv.huuc.edu.cn/hls/gedocu.m3u8$LR•IPV4•90『线路1』 #EXTINF:-1 tvg-id="金鹰纪实" tvg-name="金鹰纪实" group-title="数字",金鹰纪实 @@ -3514,9 +3506,9 @@ http://27.12.12.29:1234/961930263$LR•IPV4•36『线路35』 #EXTINF:-1 tvg-id="快乐垂钓" tvg-name="快乐垂钓" group-title="数字",快乐垂钓 https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/KLCDMPP360.m3u8$LR•IPV4•36『线路36』 #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://111.29.9.33:6610/000000001000/1000000004000019008/index.m3u8?channel-id=bestzb&Contentid=1000000004000019008&livemode=1&stbId=3$LR•IPV4 #EXTINF:-1 tvg-id="天元围棋" tvg-name="天元围棋" group-title="数字",天元围棋 @@ -3540,17 +3532,17 @@ 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•6『线路1』 +http://101.43.145.141:12002/itv/1000000004000011651.m3u8?cdn=ystenlive$LR•IPV4•6『线路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•6『线路2』 +https://live.264788.xyz/channel/chunxiang4k?streamid=c162e99191441b46592808f7f1afe8b0&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•6『线路2』 #EXTINF:-1 tvg-id="纯享4K" tvg-name="纯享4K" group-title="数字",纯享4K -https://live.264788.xyz/channel/chunxiang4k?streamid=c162e99191441b46592808f7f1afe8b0&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•6『线路3』 +https://live.264788.xyz/channel/chunxiang4k?streamid=a12e69928ae928860407d7ec7bfe4ac8&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•6『线路3』 #EXTINF:-1 tvg-id="纯享4K" tvg-name="纯享4K" group-title="数字",纯享4K -https://live.264788.xyz/channel/chunxiang4k?streamid=a12e69928ae928860407d7ec7bfe4ac8&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•6『线路4』 +http://home.wwang.pw:35455/itv/1000000004000011651.m3u8?cdn=ystenlive$LR•IPV4•6『线路4』 #EXTINF:-1 tvg-id="纯享4K" tvg-name="纯享4K" group-title="数字",纯享4K -http://home.wwang.pw:35455/itv/1000000004000011651.m3u8?cdn=ystenlive$LR•IPV4•6『线路5』 +http://111.29.9.33:6610/000000001000/1000000004000011651/index.m3u8?channel-id=bestzb&Contentid=1000000004000011651&livemode=1&stbId=3$LR•IPV4•6『线路5』 #EXTINF:-1 tvg-id="纯享4K" tvg-name="纯享4K" group-title="数字",纯享4K -http://111.29.9.33:6610/000000001000/1000000004000011651/index.m3u8?channel-id=bestzb&Contentid=1000000004000011651&livemode=1&stbId=3$LR•IPV4•6『线路6』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225786/index.m3u8$LR•IPV4•6『线路6』 #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="安徽",滁州科教频道 @@ -3562,9 +3554,9 @@ https://ls.qingting.fm/live/21303/64k.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="铜陵新闻综合频道" tvg-name="铜陵新闻综合频道" group-title="安徽",铜陵新闻综合频道 http://dstpush1.retalltech.com/app/stream1.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="亳州农村" tvg-name="亳州农村" group-title="安徽",亳州农村 -http://220.180.110.101:8083/videos/live/39/13/o4ncrHkSp7q09/o4ncrHkSp7q09.m3u8$LR•IPV4•2『线路1』 +http://zbbf2.ahbztv.com/live/418.m3u8?zanhd$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="亳州农村" tvg-name="亳州农村" group-title="安徽",亳州农村 -http://zbbf2.ahbztv.com/live/418.m3u8?zanhd$LR•IPV4•2『线路2』 +http://220.180.110.101:8083/videos/live/39/13/o4ncrHkSp7q09/o4ncrHkSp7q09.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="北京财经" tvg-name="北京财经" group-title="北京",北京财经 http://ivi.bupt.edu.cn/hls/btv5.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="北京青年" tvg-name="北京青年" group-title="北京",北京青年 @@ -3586,31 +3578,31 @@ https://31182.hlsplay.aodianyun.com/lms_31182/tv_channel_175.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="南宁影视娱乐" tvg-name="南宁影视娱乐" group-title="广西",南宁影视娱乐 http://hls.nntv.cn/nnlive/YSYL_244.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="邢台综合" tvg-name="邢台综合" group-title="河北",邢台综合 -http://222.223.119.21:8888/newlive/live/hls/54/live.m3u8$LR•IPV4•2『线路1』 +https://jwplay.hebyun.com.cn:443/live/xtsrmtzs/1500k/tzwj_video.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="邢台综合" tvg-name="邢台综合" group-title="河北",邢台综合 -https://jwplay.hebyun.com.cn:443/live/xtsrmtzs/1500k/tzwj_video.m3u8$LR•IPV4•2『线路2』 +http://222.223.119.21:8888/newlive/live/hls/54/live.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="河北都市" tvg-name="河北都市" group-title="河北",河北都市 -http://121.19.134.246:808/hls/21/index.m3u8$LR•IPV4•2『线路1』 +http://1.94.31.214/php/hebei.php?id=hbds$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="河北都市" tvg-name="河北都市" group-title="河北",河北都市 -https://radio.pull.hebtv.com/live/hebnczx.m3u8$LR•IPV4•2『线路2』 +http://121.19.134.246:808/hls/21/index.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="河北农民" tvg-name="河北农民" group-title="河北",河北农民 -http://121.19.134.246:808/hls/25/index.m3u8$LR•IPV4•2『线路1』 +https://ls.qingting.fm/live/1650/64k.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="河北农民" tvg-name="河北农民" group-title="河北",河北农民 -https://ls.qingting.fm/live/1650/64k.m3u8$LR•IPV4•2『线路2』 +http://121.19.134.246:808/hls/25/index.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="鹿泉一套" tvg-name="鹿泉一套" group-title="河北",鹿泉一套 http://hblq.chinashadt.com:2036/live/stream:luquan1.stream/playlist.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="河北经济" tvg-name="河北经济" group-title="河北",河北经济 -http://121.19.134.246:808/hls/20/index.m3u8$LR•IPV4•2『线路1』 +http://1.94.31.214/php/hebei.php?id=jjsh$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="河北经济" tvg-name="河北经济" group-title="河北",河北经济 -http://1.94.31.214/php/hebei.php?id=jjsh$LR•IPV4•2『线路2』 +http://121.19.134.246:808/hls/20/index.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="河北影视" tvg-name="河北影视" group-title="河北",河北影视 -http://121.19.134.246:808/hls/22/index.m3u8$LR•IPV4•2『线路1』 +http://1.94.31.214/php/hebei.php?id=hbys$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="河北影视" tvg-name="河北影视" group-title="河北",河北影视 -http://1.94.31.214/php/hebei.php?id=hbys$LR•IPV4•2『线路2』 +http://121.19.134.246:808/hls/22/index.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="河北公共" tvg-name="河北公共" group-title="河北",河北公共 -http://121.19.134.246:808/hls/24/index.m3u8$LR•IPV4•2『线路1』 +http://1.94.31.214/php/hebei.php?id=hbgg$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="河北公共" tvg-name="河北公共" group-title="河北",河北公共 -http://1.94.31.214/php/hebei.php?id=hbgg$LR•IPV4•2『线路2』 +http://121.19.134.246:808/hls/24/index.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="鹿泉二套" tvg-name="鹿泉二套" group-title="河北",鹿泉二套 http://hblq.chinashadt.com:2036/live/stream:luquan2.stream/playlist.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="内蒙新闻" tvg-name="内蒙新闻" group-title="内蒙古",内蒙新闻 @@ -3654,17 +3646,17 @@ http://183.207.248.71/gitv/live1/G_NJSB/G_NJSB$LR•IPV4 #EXTINF:-1 tvg-id="江苏体育" tvg-name="江苏体育" group-title="江苏",江苏体育 http://183.207.248.71/gitv/live1/G_JSTY/G_JSTY$LR•IPV4 #EXTINF:-1 tvg-id="南京教科" tvg-name="南京教科" group-title="江苏",南京教科 -https://live.nbs.cn/channels/njtv/jkpd/m3u8:500k/live.m3u8$LR•IPV4•4『线路1』 +http://nklive.nbs.cn/hls/75b3c462-b831-4de7-a34b-5d3221db2069/index.m3u8$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-id="南京教科" tvg-name="南京教科" group-title="江苏",南京教科 -http://183.207.248.71/gitv/live1/G_NJJK/G_NJJK$LR•IPV4•4『线路2』 +https://live.nbs.cn/channels/njtv/jkpd/m3u8:500k/live.m3u8$LR•IPV4•4『线路2』 #EXTINF:-1 tvg-id="南京教科" tvg-name="南京教科" group-title="江苏",南京教科 -http://223.110.245.155/ott.js.chinamobile.com/PLTV/3/224/3221227194/index.m3u8$LR•IPV4•4『线路3』 +http://183.207.248.71/gitv/live1/G_NJJK/G_NJJK$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-id="南京教科" tvg-name="南京教科" group-title="江苏",南京教科 -http://nklive.nbs.cn/hls/75b3c462-b831-4de7-a34b-5d3221db2069/index.m3u8$LR•IPV4•4『线路4』 +http://223.110.245.155/ott.js.chinamobile.com/PLTV/3/224/3221227194/index.m3u8$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-id="南京少儿" tvg-name="南京少儿" group-title="江苏",南京少儿 -https://live.nbs.cn/channels/njtv/sepd/m3u8:500k/live.m3u8$LR•IPV4•2『线路1』 +http://nklive.nbs.cn/hls/e0981f3f-1a20-4a59-b8d1-17feb83a4610/index.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="南京少儿" tvg-name="南京少儿" group-title="江苏",南京少儿 -http://nklive.nbs.cn/hls/e0981f3f-1a20-4a59-b8d1-17feb83a4610/index.m3u8$LR•IPV4•2『线路2』 +https://live.nbs.cn/channels/njtv/sepd/m3u8:500k/live.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="苏州4k" tvg-name="苏州4k" group-title="江苏",苏州4k https://live-auth.51kandianshi.com/szgd/csztv4k_hd.m3u8$LR•IPV4•5『线路1』 #EXTINF:-1 tvg-id="苏州4k" tvg-name="苏州4k" group-title="江苏",苏州4k @@ -3765,8 +3757,6 @@ https://t.freetv.fun/live/zhe-jiang-jing-ji-sheng-huo-3.m3u8$LR•IPV4•25『 http://ali-xwl.cztv.com/live/channel031080Plxw.m3u8$LR•IPV4•25『线路24』 #EXTINF:-1 tvg-id="浙江生活" tvg-name="浙江生活" group-title="浙江",浙江生活 https://t.freetv.fun/live/zhe-jiang-jing-ji-sheng-huo-1.m3u8$LR•IPV4•25『线路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』 #EXTINF:-1 tvg-id="浙江教育" tvg-name="浙江教育" group-title="浙江",浙江教育 @@ -4040,11 +4030,11 @@ http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8242&tk=23a9aca1f79f$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$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="浙江经济" tvg-name="浙江经济" group-title="浙江",浙江经济 -http://live.hznet.tv:1935/live/live2/500k/tzwj_video.m3u8$LR•IPV4•3『线路2』 +http://live.hznet.tv:1935/live/live2/500K/tzwj_video.m3u8?shandd$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="浙江经济" tvg-name="浙江经济" group-title="浙江",浙江经济 -http://live.hznet.tv:1935/live/live2/500K/tzwj_video.m3u8?shandd$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』 #EXTINF:-1 tvg-id="之江纪录" tvg-name="之江纪录" group-title="浙江",之江纪录 @@ -4060,13 +4050,13 @@ http://ali-m-l.cztv.com/channels/lantian/channel12/1080p.m3u8$LR•IPV4•6『 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 https://ali-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8$LR•IPV4•30『线路1』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -http://ali-xwl.cztv.com/live/channel101080Plxw.m3u8$LR•IPV4•30『线路2』 +http://ali-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8$LR•IPV4•30『线路2』 #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•30『线路3』 +http://ali-xwl.cztv.com/live/channel101080Plxw.m3u8$LR•IPV4•30『线路3』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -https://stream1.freetv.fun/zhe-jiang-guo-ji-9.m3u8$LR•IPV4•30『线路4』 +http://ali-vl.cztv.com/channels/lantian/channel010/360p.m3u8?a=1000&d=4e3d476240659192311f471b7b63aec2&k=d26568bae9dd23dd781c769c148459b2&t=1683180450$LR•IPV4•30『线路4』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -http://ali-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8$LR•IPV4•30『线路5』 +https://stream1.freetv.fun/zhe-jiang-guo-ji-9.m3u8$LR•IPV4•30『线路5』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 https://stream1.freetv.fun/zhe-jiang-guo-ji-11.m3u8$LR•IPV4•30『线路6』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 @@ -4230,9 +4220,9 @@ http://l.cztvcloud.com/channels/lantian/SXsuichang1/720p.m3u8?zzhed$LR•IPV4• #EXTINF:-1 tvg-id="遂昌综合" tvg-name="遂昌综合" group-title="浙江",遂昌综合 http://l.cztvcloud.com/channels/lantian/SXsuichang1/720p.m3u8?zzhed;http://l.cztvcloud.com/channels/lantian/SXsuichang1/720p.m3u8zzhed$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="象山综合" tvg-name="象山综合" group-title="浙江",象山综合 -http://l.cztvcloud.com/channels/lantian/SXxiangshan1/720p.m3u8$LR•IPV4•3『线路1』 +http://play-sh13.quklive.com/live/1702360350551252.m3u8?auth_key=2037107484-800189c57a5a44d3b823b60cf84f6756-0-a6f6828a62d5c167cff5e68735fa0d39$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="象山综合" tvg-name="象山综合" group-title="浙江",象山综合 -http://play-sh13.quklive.com/live/1702360350551252.m3u8?auth_key=2037107484-800189c57a5a44d3b823b60cf84f6756-0-a6f6828a62d5c167cff5e68735fa0d39$LR•IPV4•3『线路2』 +http://l.cztvcloud.com/channels/lantian/SXxiangshan1/720p.m3u8$LR•IPV4•3『线路2』 #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="浙江",衢江新闻综合 @@ -4250,9 +4240,9 @@ https://t.freetv.fun/live/qu-jiang-xin-wen-zong-he.m3u8$LR•IPV4•7『线路6 #EXTINF:-1 tvg-id="衢江新闻综合" tvg-name="衢江新闻综合" group-title="浙江",衢江新闻综合 https://stream1.freetv.fun/qu-jiang-xin-wen-zong-he-1.m3u8$LR•IPV4•7『线路7』 #EXTINF:-1 tvg-id="萧山生活" tvg-name="萧山生活" group-title="浙江",萧山生活 -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『线路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』 #EXTINF:-1 tvg-id="萧山新闻综合" tvg-name="萧山新闻综合" group-title="浙江",萧山新闻综合 @@ -4308,9 +4298,9 @@ https://stream1.freetv.fun/cang-nan-xin-wen-zong-he-2.m3u8$LR•IPV4•9『线 #EXTINF:-1 tvg-id="苍南新闻综合" tvg-name="苍南新闻综合" group-title="浙江",苍南新闻综合 https://stream1.freetv.fun/cang-nan-xin-wen-zong-he-7.m3u8$LR•IPV4•9『线路9』 #EXTINF:-1 tvg-id="缙云综合" tvg-name="缙云综合" group-title="浙江",缙云综合 -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『线路1』 #EXTINF:-1 tvg-id="缙云综合" tvg-name="缙云综合" group-title="浙江",缙云综合 -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『线路2』 #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="浙江",缙云新闻综合 @@ -4318,9 +4308,9 @@ http://l.cztvcloud.com/channels/lantian/SXjinyun1/720p.m3u8$LR•IPV4•2『线 #EXTINF:-1 tvg-id="缙云新闻综合" tvg-name="缙云新闻综合" group-title="浙江",缙云新闻综合 http://l.cztvcloud.com/channels/lantian/SXjinyun1/720p.m3u8?fbl=$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="绍兴电视台公共" tvg-name="绍兴电视台公共" group-title="浙江",绍兴电视台公共 -http://live.shaoxing.com.cn/video/s10001-sxtv2/index.m3u8?zzhed$LR•IPV4•2『线路1』 +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?%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『线路2』 +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-sxtv1/index.m3u8$LR•IPV4•9『线路1』 #EXTINF:-1 tvg-id="绍兴新闻综合" tvg-name="绍兴新闻综合" group-title="浙江",绍兴新闻综合 @@ -4548,9 +4538,9 @@ http://l.cztvcloud.com/channels/lantian/SXyuyao1/720p.m3u8$LR•IPV4•6『线 #EXTINF:-1 tvg-id="余姚姚江文化" tvg-name="余姚姚江文化" group-title="浙江",余姚姚江文化 https://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-id="余姚姚江文化" tvg-name="余姚姚江文化" group-title="浙江",余姚姚江文化 -http://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8?zzhed$LR•IPV4•4『线路2』 +http://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8zzhed$LR•IPV4•4『线路2』 #EXTINF:-1 tvg-id="余姚姚江文化" tvg-name="余姚姚江文化" group-title="浙江",余姚姚江文化 -http://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8zzhed$LR•IPV4•4『线路3』 +http://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8?zzhed$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-id="余姚姚江文化" tvg-name="余姚姚江文化" group-title="浙江",余姚姚江文化 https://l.cztvcloud.com/channels/lantian/SXyuyao2/720p.m3u8$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-id="云和新闻综合" tvg-name="云和新闻综合" group-title="浙江",云和新闻综合 @@ -4938,15 +4928,15 @@ http://ls.qingting.fm/live/4877.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="长沙新闻综合" tvg-name="长沙新闻综合" group-title="湖南",长沙新闻综合 http://phonetx.qing.mgtv.com/nn_live/nn_x64/8.8&/CSXWMPP360.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•2『线路1』 +https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/CSXWMPP360.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="长沙新闻" tvg-name="长沙新闻" group-title="湖南",长沙新闻 -https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/CSXWMPP360.m3u8$LR•IPV4•2『线路2』 +http://35848.hlsplay.aodianyun.com/guangdianyun_35848/tv_channel_346.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="长沙政法" tvg-name="长沙政法" group-title="湖南",长沙政法 -http://35848.hlsplay.aodianyun.com/guangdianyun_35848/tv_channel_348.m3u8$LR•IPV4•3『线路1』 +http://phonetx.qing.mgtv.com/nn_live/nn_x64/8.8&/CSZFMPP360.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="长沙政法" tvg-name="长沙政法" group-title="湖南",长沙政法 -http://phonetx.qing.mgtv.com/nn_live/nn_x64/8.8&/CSZFMPP360.m3u8$LR•IPV4•3『线路2』 +https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/CSZFMPP360.m3u8$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="长沙政法" tvg-name="长沙政法" group-title="湖南",长沙政法 -https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/CSZFMPP360.m3u8$LR•IPV4•3『线路3』 +http://35848.hlsplay.aodianyun.com/guangdianyun_35848/tv_channel_348.m3u8$LR•IPV4•3『线路3』 #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="湖南",衡阳新闻综合 @@ -5218,41 +5208,41 @@ https://stream1.freetv.fun/shi-yan-xin-wen-3.m3u8$LR•IPV4•8『线路7』 #EXTINF:-1 tvg-id="十堰新闻" tvg-name="十堰新闻" group-title="湖北",十堰新闻 https://stream1.freetv.fun/shi-yan-xin-wen-4.m3u8$LR•IPV4•8『线路8』 #EXTINF:-1 tvg-id="荆门新闻综合" tvg-name="荆门新闻综合" group-title="湖北",荆门新闻综合 -https://t.freetv.fun/live/jing-men-xin-wen-zong-he.m3u8$LR•IPV4•14『线路1』 +http://stream.jmtv.com.cn/xwzh/sd/live.m3u8$LR•IPV4•14『线路1』 #EXTINF:-1 tvg-id="荆门新闻综合" tvg-name="荆门新闻综合" group-title="湖北",荆门新闻综合 -https://stream1.freetv.fun/jing-men-xin-wen-zong-he-4.m3u8$LR•IPV4•14『线路2』 +https://t.freetv.fun/live/jing-men-xin-wen-zong-he.m3u8$LR•IPV4•14『线路2』 #EXTINF:-1 tvg-id="荆门新闻综合" tvg-name="荆门新闻综合" group-title="湖北",荆门新闻综合 -http://stream.jmtv.com.cn/xwzh/sd/live.m3u8?zhubd$LR•IPV4•14『线路3』 +https://stream1.freetv.fun/jing-men-xin-wen-zong-he-4.m3u8$LR•IPV4•14『线路3』 #EXTINF:-1 tvg-id="荆门新闻综合" tvg-name="荆门新闻综合" group-title="湖北",荆门新闻综合 -https://t.freetv.fun/live/jing-men-xin-wen-zong-he-1-1.m3u8$LR•IPV4•14『线路4』 +http://stream.jmtv.com.cn/xwzh/sd/live.m3u8?zhubd$LR•IPV4•14『线路4』 #EXTINF:-1 tvg-id="荆门新闻综合" tvg-name="荆门新闻综合" group-title="湖北",荆门新闻综合 -https://stream.jmtv.com.cn/xwzh/playlist.m3u8?_upt=3e28e7271664278691$LR•IPV4•14『线路5』 +https://t.freetv.fun/live/jing-men-xin-wen-zong-he-1-1.m3u8$LR•IPV4•14『线路5』 #EXTINF:-1 tvg-id="荆门新闻综合" tvg-name="荆门新闻综合" group-title="湖北",荆门新闻综合 -http://stream.jmtv.com.cn/xwzh/sd/live.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•14『线路6』 +https://stream.jmtv.com.cn/xwzh/playlist.m3u8?_upt=3e28e7271664278691$LR•IPV4•14『线路6』 #EXTINF:-1 tvg-id="荆门新闻综合" tvg-name="荆门新闻综合" group-title="湖北",荆门新闻综合 -https://stream1.freetv.fun/jing-men-xin-wen-zong-he-6.m3u8$LR•IPV4•14『线路7』 +http://stream.jmtv.com.cn/xwzh/sd/live.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•14『线路7』 #EXTINF:-1 tvg-id="荆门新闻综合" tvg-name="荆门新闻综合" group-title="湖北",荆门新闻综合 -https://stream1.freetv.fun/jing-men-xin-wen-zong-he-5.m3u8$LR•IPV4•14『线路8』 +https://stream1.freetv.fun/jing-men-xin-wen-zong-he-6.m3u8$LR•IPV4•14『线路8』 #EXTINF:-1 tvg-id="荆门新闻综合" tvg-name="荆门新闻综合" group-title="湖北",荆门新闻综合 -https://stream1.freetv.fun/jing-men-xin-wen-zong-he-3.m3u8$LR•IPV4•14『线路9』 +https://stream1.freetv.fun/jing-men-xin-wen-zong-he-5.m3u8$LR•IPV4•14『线路9』 #EXTINF:-1 tvg-id="荆门新闻综合" tvg-name="荆门新闻综合" group-title="湖北",荆门新闻综合 -https://stream1.freetv.fun/jing-men-xin-wen-zong-he-1.m3u8$LR•IPV4•14『线路10』 +https://stream1.freetv.fun/jing-men-xin-wen-zong-he-3.m3u8$LR•IPV4•14『线路10』 #EXTINF:-1 tvg-id="荆门新闻综合" tvg-name="荆门新闻综合" group-title="湖北",荆门新闻综合 -https://stream1.freetv.fun/jing-men-xin-wen-zong-he-2.m3u8$LR•IPV4•14『线路11』 +https://stream1.freetv.fun/jing-men-xin-wen-zong-he-1.m3u8$LR•IPV4•14『线路11』 #EXTINF:-1 tvg-id="荆门新闻综合" tvg-name="荆门新闻综合" group-title="湖北",荆门新闻综合 -http://stream.jmtv.com.cn/xwzh/sd/live.m3u8$LR•IPV4•14『线路12』 +https://stream1.freetv.fun/jing-men-xin-wen-zong-he-2.m3u8$LR•IPV4•14『线路12』 #EXTINF:-1 tvg-id="荆门新闻综合" tvg-name="荆门新闻综合" group-title="湖北",荆门新闻综合 https://t.freetv.fun/live/jing-men-xin-wen-zong-he-5.m3u8$LR•IPV4•14『线路13』 #EXTINF:-1 tvg-id="荆门新闻综合" tvg-name="荆门新闻综合" group-title="湖北",荆门新闻综合 https://t.freetv.fun/live/jing-men-xin-wen-zong-he-2.m3u8$LR•IPV4•14『线路14』 #EXTINF:-1 tvg-id="武汉一台新闻综合" tvg-name="武汉一台新闻综合" group-title="湖北",武汉一台新闻综合 -http://stream.appwuhan.com/1tzb/sd/live.m3u8$LR•IPV4•9『线路1』 +https://ls.qingting.fm/live/20198/64k.m3u8$LR•IPV4•9『线路1』 #EXTINF:-1 tvg-id="武汉一台新闻综合" tvg-name="武汉一台新闻综合" group-title="湖北",武汉一台新闻综合 -https://stream1.freetv.fun/wu-yi-1xin-wen-zong-he-1.m3u8$LR•IPV4•9『线路2』 +http://stream.appwuhan.com/1tzb/sd/live.m3u8$LR•IPV4•9『线路2』 #EXTINF:-1 tvg-id="武汉一台新闻综合" tvg-name="武汉一台新闻综合" group-title="湖北",武汉一台新闻综合 -http://stream.appwuhan.com:80/1tzb/sd/live.m3u8$LR•IPV4•9『线路3』 +https://stream1.freetv.fun/wu-yi-1xin-wen-zong-he-1.m3u8$LR•IPV4•9『线路3』 #EXTINF:-1 tvg-id="武汉一台新闻综合" tvg-name="武汉一台新闻综合" group-title="湖北",武汉一台新闻综合 -https://ls.qingting.fm/live/20198/64k.m3u8$LR•IPV4•9『线路4』 +http://stream.appwuhan.com:80/1tzb/sd/live.m3u8$LR•IPV4•9『线路4』 #EXTINF:-1 tvg-id="武汉一台新闻综合" tvg-name="武汉一台新闻综合" group-title="湖北",武汉一台新闻综合 https://stream1.freetv.fun/wu-yi-xin-wen-zong-he-1.m3u8$LR•IPV4•9『线路5』 #EXTINF:-1 tvg-id="武汉一台新闻综合" tvg-name="武汉一台新闻综合" group-title="湖北",武汉一台新闻综合 @@ -5312,13 +5302,13 @@ http://120.76.248.139/live/bfgd/4200000075.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="辽宁生活" tvg-name="辽宁生活" group-title="辽宁",辽宁生活 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/4200000480.m3u8$LR•IPV4 +http://dassby.qqff.top:99/live/辽宁经济/index.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="辽宁都市" tvg-name="辽宁都市" group-title="辽宁",辽宁都市 -http://120.76.248.139/live/bfgd/4200000068.m3u8$LR•IPV4 +http://120.76.248.139/live/bfgd/4200000610.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="辽宁体育" tvg-name="辽宁体育" group-title="辽宁",辽宁体育 -https://stream1.freetv.fun/liao-zhu-ti-yu-3.m3u8$LR•IPV4•3『线路1』 +http://dassby.qqff.top:99/live/辽宁体育/index.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="辽宁体育" tvg-name="辽宁体育" group-title="辽宁",辽宁体育 -http://dassby.qqff.top:99/live/辽宁体育/index.m3u8$LR•IPV4•3『线路2』 +https://stream1.freetv.fun/liao-zhu-ti-yu-3.m3u8$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="辽宁体育" tvg-name="辽宁体育" group-title="辽宁",辽宁体育 http://120.76.248.139/live/bfgd/4200000611.m3u8$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="朝阳新闻综合" tvg-name="朝阳新闻综合" group-title="辽宁",朝阳新闻综合 @@ -5404,39 +5394,39 @@ http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5771&tk=a0c4f6cfaba3$LR•IPV4•5『 #EXTINF:-1 tvg-id="汕头文旅体育" tvg-name="汕头文旅体育" group-title="广东",汕头文旅体育 http://120.77.205.62:8087/rtp/239.253.43.44:5146$LR•IPV4•5『线路5』 #EXTINF:-1 tvg-id="广东珠江" tvg-name="广东珠江" group-title="广东",广东珠江 -http://[2409:8087:5e00:24::10]:6060/200000001898/460000089800010091/0.m3u8$LR•IPV6•122『线路1』 +http://cdn2.163189.xyz/live/gdzj/stream.m3u8$LR•IPV4•122『线路1』 #EXTINF:-1 tvg-id="广东珠江" tvg-name="广东珠江" group-title="广东",广东珠江 -https://t.freetv.fun/live/yan-dong-zhu-jiang-8.m3u8$LR•IPV4•122『线路2』 +http://[2409:8087:5e00:24::10]:6060/200000001898/460000089800010091/0.m3u8$LR•IPV6•122『线路2』 #EXTINF:-1 tvg-id="广东珠江" tvg-name="广东珠江" group-title="广东",广东珠江 -https://t.freetv.fun/live/yan-dong-zhu-jiang-gao-qing-15.m3u8$LR•IPV4•122『线路3』 +https://t.freetv.fun/live/yan-dong-zhu-jiang-8.m3u8$LR•IPV4•122『线路3』 #EXTINF:-1 tvg-id="广东珠江" tvg-name="广东珠江" group-title="广东",广东珠江 -https://stream1.freetv.fun/yan-dong-zhu-jiang-gao-qing-1.m3u8$LR•IPV4•122『线路4』 +https://t.freetv.fun/live/yan-dong-zhu-jiang-gao-qing-15.m3u8$LR•IPV4•122『线路4』 #EXTINF:-1 tvg-id="广东珠江" tvg-name="广东珠江" group-title="广东",广东珠江 -https://stream1.freetv.fun/yan-dong-zhu-jiang-7.m3u8$LR•IPV4•122『线路5』 +https://stream1.freetv.fun/yan-dong-zhu-jiang-gao-qing-1.m3u8$LR•IPV4•122『线路5』 #EXTINF:-1 tvg-id="广东珠江" tvg-name="广东珠江" group-title="广东",广东珠江 -http://qjrhc.jydjd.top:2911/udp/224.1.100.24:11111$LR•IPV4•122『线路6』 +https://stream1.freetv.fun/yan-dong-zhu-jiang-7.m3u8$LR•IPV4•122『线路6』 #EXTINF:-1 tvg-id="广东珠江" tvg-name="广东珠江" group-title="广东",广东珠江 -https://stream1.freetv.fun/yan-dong-zhu-jiang-11.ctv$LR•IPV4•122『线路7』 +http://qjrhc.jydjd.top:2911/udp/224.1.100.24:11111$LR•IPV4•122『线路7』 #EXTINF:-1 tvg-id="广东珠江" tvg-name="广东珠江" group-title="广东",广东珠江 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=7152&tk=b53028476470$LR•IPV4•122『线路8』 +https://stream1.freetv.fun/yan-dong-zhu-jiang-11.ctv$LR•IPV4•122『线路8』 #EXTINF:-1 tvg-id="广东珠江" tvg-name="广东珠江" group-title="广东",广东珠江 -https://tv.cdn.com.mp/live/gdzj/stream.m3u8$LR•IPV4•122『线路9』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=7152&tk=b53028476470$LR•IPV4•122『线路9』 #EXTINF:-1 tvg-id="广东珠江" tvg-name="广东珠江" group-title="广东",广东珠江 -https://t.freetv.fun/live/yan-dong-zhu-jiang-gao-qing-4.m3u8$LR•IPV4•122『线路10』 +https://tv.cdn.com.mp/live/gdzj/stream.m3u8$LR•IPV4•122『线路10』 #EXTINF:-1 tvg-id="广东珠江" tvg-name="广东珠江" group-title="广东",广东珠江 -http://218.15.183.23:9901/tsfile/live/23009_1.m3u8$LR•IPV4•122『线路11』 +https://t.freetv.fun/live/yan-dong-zhu-jiang-gao-qing-4.m3u8$LR•IPV4•122『线路11』 #EXTINF:-1 tvg-id="广东珠江" tvg-name="广东珠江" group-title="广东",广东珠江 -http://120.77.205.62:8087/rtp/239.77.0.1:5146$LR•IPV4•122『线路12』 +http://218.15.183.23:9901/tsfile/live/23009_1.m3u8$LR•IPV4•122『线路12』 #EXTINF:-1 tvg-id="广东珠江" tvg-name="广东珠江" group-title="广东",广东珠江 -https://stream1.freetv.fun/yan-dong-zhu-jiang-4.m3u8$LR•IPV4•122『线路13』 +http://120.77.205.62:8087/rtp/239.77.0.1:5146$LR•IPV4•122『线路13』 #EXTINF:-1 tvg-id="广东珠江" tvg-name="广东珠江" group-title="广东",广东珠江 -https://stream1.freetv.fun/3e6c646d717a824425bca6f4f12c9091cc4725ab1afa8227b24b7a5bc6fcb019.m3u8$LR•IPV4•122『线路14』 +https://stream1.freetv.fun/yan-dong-zhu-jiang-4.m3u8$LR•IPV4•122『线路14』 #EXTINF:-1 tvg-id="广东珠江" tvg-name="广东珠江" group-title="广东",广东珠江 -https://stream1.freetv.fun/ipv6-yan-dong-zhu-jiang-8.m3u8$LR•IPV4•122『线路15』 +https://stream1.freetv.fun/3e6c646d717a824425bca6f4f12c9091cc4725ab1afa8227b24b7a5bc6fcb019.m3u8$LR•IPV4•122『线路15』 #EXTINF:-1 tvg-id="广东珠江" tvg-name="广东珠江" group-title="广东",广东珠江 -https://stream1.freetv.fun/yan-dong-zhu-jiang-31.m3u8$LR•IPV4•122『线路16』 +https://stream1.freetv.fun/ipv6-yan-dong-zhu-jiang-8.m3u8$LR•IPV4•122『线路16』 #EXTINF:-1 tvg-id="广东珠江" tvg-name="广东珠江" group-title="广东",广东珠江 -http://cdn2.163189.xyz/live/gdzj/stream.m3u8$LR•IPV4•122『线路17』 +https://stream1.freetv.fun/yan-dong-zhu-jiang-31.m3u8$LR•IPV4•122『线路17』 #EXTINF:-1 tvg-id="广东珠江" tvg-name="广东珠江" group-title="广东",广东珠江 https://hls-gateway.vpstv.net/streams/476221.m3u8$LR•IPV4•122『线路18』 #EXTINF:-1 tvg-id="广东珠江" tvg-name="广东珠江" group-title="广东",广东珠江 @@ -5648,117 +5638,117 @@ http://107.150.60.122/live/gdzja.m3u8$LR•IPV4•122『线路121』 #EXTINF:-1 tvg-id="广东珠江" tvg-name="广东珠江" group-title="广东",广东珠江 https://stream1.freetv.fun/yan-dong-zhu-jiang-17.ctv$LR•IPV4•122『线路122』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -http://116.77.239.26:44300/tsfile/live/0124_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•110『线路1』 +http://cdn2.163189.xyz/live/gdty/stream.m3u8$LR•IPV4•110『线路1』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -http://183.237.95.108:9901/tsfile/live/1033_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•110『线路2』 +http://116.77.239.26:44300/tsfile/live/0124_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•110『线路2』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -http://120.77.205.62:8087/rtp/239.77.1.97:5146$LR•IPV4•110『线路3』 +http://183.237.95.108:9901/tsfile/live/1033_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•110『线路3』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -https://t.freetv.fun/live/yan-dong-ti-yu-5.m3u8$LR•IPV4•110『线路4』 +http://120.77.205.62:8087/rtp/239.77.1.97:5146$LR•IPV4•110『线路4』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -http://120.238.94.82:9901/tsfile/live/1012_1.m3u8$LR•IPV4•110『线路5』 +https://t.freetv.fun/live/yan-dong-ti-yu-5.m3u8$LR•IPV4•110『线路5』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-15.m3u8$LR•IPV4•110『线路6』 +http://120.238.94.82:9901/tsfile/live/1012_1.m3u8$LR•IPV4•110『线路6』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -https://stream1.freetv.fun/yan-dong-ti-yu-20.m3u8$LR•IPV4•110『线路7』 +https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-15.m3u8$LR•IPV4•110『线路7』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -https://stream1.freetv.fun/yan-dong-ti-yu-11.ctv$LR•IPV4•110『线路8』 +https://stream1.freetv.fun/yan-dong-ti-yu-20.m3u8$LR•IPV4•110『线路8』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -https://stream1.freetv.fun/yan-dong-ti-yu-17.m3u8$LR•IPV4•110『线路9』 +https://stream1.freetv.fun/yan-dong-ti-yu-11.ctv$LR•IPV4•110『线路9』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -https://t.freetv.fun/live/yan-dong-ti-yu-3.php$LR•IPV4•110『线路10』 +https://stream1.freetv.fun/yan-dong-ti-yu-17.m3u8$LR•IPV4•110『线路10』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-8.m3u8$LR•IPV4•110『线路11』 +https://t.freetv.fun/live/yan-dong-ti-yu-3.php$LR•IPV4•110『线路11』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -https://epg.pw/stream/7b470f9fc5c305db0c8622117b7b25ca00eb35ba3e93e865cf0ff9df5c736681.m3u8$LR•IPV4•110『线路12』 +https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-8.m3u8$LR•IPV4•110『线路12』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -http://218.15.183.23:9901/tsfile/live/23012_1.m3u8$LR•IPV4•110『线路13』 +https://epg.pw/stream/7b470f9fc5c305db0c8622117b7b25ca00eb35ba3e93e865cf0ff9df5c736681.m3u8$LR•IPV4•110『线路13』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -https://stream1.freetv.fun/yan-dong-ti-yu-34.ctv$LR•IPV4•110『线路14』 +http://218.15.183.23:9901/tsfile/live/23012_1.m3u8$LR•IPV4•110『线路14』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -http://120.198.101.106:9901/tsfile/live/1012_1.m3u8?key=txiptv$LR•IPV4•110『线路15』 +https://stream1.freetv.fun/yan-dong-ti-yu-34.ctv$LR•IPV4•110『线路15』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -https://stream1.freetv.fun/yan-dong-ti-yu-24.m3u8$LR•IPV4•110『线路16』 +http://120.198.101.106:9901/tsfile/live/1012_1.m3u8?key=txiptv$LR•IPV4•110『线路16』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=gdty$LR•IPV4•110『线路17』 +https://stream1.freetv.fun/yan-dong-ti-yu-24.m3u8$LR•IPV4•110『线路17』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-7.m3u8$LR•IPV4•110『线路18』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=gdty$LR•IPV4•110『线路18』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -http://120.198.95.220:9901/tsfile/live/1010_1.m3u8?key=txiptv$LR•IPV4•110『线路19』 +https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-7.m3u8$LR•IPV4•110『线路19』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-10.m3u8$LR•IPV4•110『线路20』 +http://120.198.95.220:9901/tsfile/live/1010_1.m3u8?key=txiptv$LR•IPV4•110『线路20』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -https://stream1.freetv.fun/yan-dong-ti-yu-17.ctv$LR•IPV4•110『线路21』 +https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-10.m3u8$LR•IPV4•110『线路21』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -http://api2.52tb.xyz/info?id=414&token=20230218qkyjia$LR•IPV4•110『线路22』 +https://stream1.freetv.fun/yan-dong-ti-yu-17.ctv$LR•IPV4•110『线路22』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -https://stream1.freetv.fun/yan-dong-ti-yu-16.ctv$LR•IPV4•110『线路23』 +http://api2.52tb.xyz/info?id=414&token=20230218qkyjia$LR•IPV4•110『线路23』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -https://stream1.freetv.fun/yan-dong-ti-yu-16.m3u8$LR•IPV4•110『线路24』 +https://stream1.freetv.fun/yan-dong-ti-yu-16.ctv$LR•IPV4•110『线路24』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -http://120.77.205.62:8087/rtp/239.77.0.168:5146$LR•IPV4•110『线路25』 +https://stream1.freetv.fun/yan-dong-ti-yu-16.m3u8$LR•IPV4•110『线路25』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -https://t.freetv.fun/live/yan-dong-ti-yu-15.m3u8$LR•IPV4•110『线路26』 +http://120.77.205.62:8087/rtp/239.77.0.168:5146$LR•IPV4•110『线路26』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -https://t.freetv.fun/live/yan-dong-ti-yu-10.m3u8$LR•IPV4•110『线路27』 +https://t.freetv.fun/live/yan-dong-ti-yu-15.m3u8$LR•IPV4•110『线路27』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -https://stream1.freetv.fun/yan-dong-ti-yu-36.m3u8$LR•IPV4•110『线路28』 +https://t.freetv.fun/live/yan-dong-ti-yu-10.m3u8$LR•IPV4•110『线路28』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -https://stream1.freetv.fun/yan-dong-ti-yu-6.ctv$LR•IPV4•110『线路29』 +https://stream1.freetv.fun/yan-dong-ti-yu-36.m3u8$LR•IPV4•110『线路29』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -https://stream1.freetv.fun/yan-dong-ti-yu-26.ctv$LR•IPV4•110『线路30』 +https://stream1.freetv.fun/yan-dong-ti-yu-6.ctv$LR•IPV4•110『线路30』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -http://119.32.12.17:2901/udp/224.1.100.34:11111$LR•IPV4•110『线路31』 +https://stream1.freetv.fun/yan-dong-ti-yu-26.ctv$LR•IPV4•110『线路31』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-3.m3u8$LR•IPV4•110『线路32』 +http://119.32.12.17:2901/udp/224.1.100.34:11111$LR•IPV4•110『线路32』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -http://120.77.205.62:8087/rtp/239.77.0.112:5146$LR•IPV4•110『线路33』 +https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-3.m3u8$LR•IPV4•110『线路33』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -https://stream1.freetv.fun/yan-dong-ti-yu-30.m3u8$LR•IPV4•110『线路34』 +http://120.77.205.62:8087/rtp/239.77.0.112:5146$LR•IPV4•110『线路34』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -http://218.15.214.115:10000/udp/239.77.0.112:5146$LR•IPV4•110『线路35』 +https://stream1.freetv.fun/yan-dong-ti-yu-30.m3u8$LR•IPV4•110『线路35』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -https://t.freetv.fun/live/yan-dong-ti-yu-11.m3u8$LR•IPV4•110『线路36』 +http://218.15.214.115:10000/udp/239.77.0.112:5146$LR•IPV4•110『线路36』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -http://119.32.12.32:2901/udp/224.1.100.34:11111$LR•IPV4•110『线路37』 +https://t.freetv.fun/live/yan-dong-ti-yu-11.m3u8$LR•IPV4•110『线路37』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -http://php.jdshipin.com/PLTV/iptv.php?id=gdty$LR•IPV4•110『线路38』 +http://119.32.12.32:2901/udp/224.1.100.34:11111$LR•IPV4•110『线路38』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -https://stream1.freetv.fun/yan-dong-ti-yu-7.ctv$LR•IPV4•110『线路39』 +http://php.jdshipin.com/PLTV/iptv.php?id=gdty$LR•IPV4•110『线路39』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -https://stream1.freetv.fun/yan-dong-ti-yu-18.ctv$LR•IPV4•110『线路40』 +https://stream1.freetv.fun/yan-dong-ti-yu-7.ctv$LR•IPV4•110『线路40』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -https://stream1.freetv.fun/yan-dong-ti-yu-1.m3u8$LR•IPV4•110『线路41』 +https://stream1.freetv.fun/yan-dong-ti-yu-18.ctv$LR•IPV4•110『线路41』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -https://stream1.freetv.fun/yan-dong-ti-yu-27.m3u8$LR•IPV4•110『线路42』 +https://stream1.freetv.fun/yan-dong-ti-yu-1.m3u8$LR•IPV4•110『线路42』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -http://67.220.71.199:2347/livehttpplay?channel_id=30031$LR•IPV4•110『线路43』 +https://stream1.freetv.fun/yan-dong-ti-yu-27.m3u8$LR•IPV4•110『线路43』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -http://api.mytv666.top/api/hk.php?id=3635306561306164626438636438373731346432656366353839663866326232267469643d74762669643d3131$LR•IPV4•110『线路44』 +http://67.220.71.199:2347/livehttpplay?channel_id=30031$LR•IPV4•110『线路44』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -https://t.freetv.fun/live/yan-dong-ti-yu.m3u8$LR•IPV4•110『线路45』 +http://api.mytv666.top/api/hk.php?id=3635306561306164626438636438373731346432656366353839663866326232267469643d74762669643d3131$LR•IPV4•110『线路45』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -https://hls-gateway.vpstv.net/streams/476954.m3u8$LR•IPV4•110『线路46』 +https://t.freetv.fun/live/yan-dong-ti-yu.m3u8$LR•IPV4•110『线路46』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -https://stream1.freetv.fun/yan-dong-ti-yu-12.m3u8$LR•IPV4•110『线路47』 +https://hls-gateway.vpstv.net/streams/476954.m3u8$LR•IPV4•110『线路47』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -https://stream1.freetv.fun/yan-dong-ti-yu-21.m3u8$LR•IPV4•110『线路48』 +https://stream1.freetv.fun/yan-dong-ti-yu-12.m3u8$LR•IPV4•110『线路48』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -http://api2.52tb.xyz/info?id=414&token=20230218jsyklh$LR•IPV4•110『线路49』 +https://stream1.freetv.fun/yan-dong-ti-yu-21.m3u8$LR•IPV4•110『线路49』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-16.m3u8$LR•IPV4•110『线路50』 +http://api2.52tb.xyz/info?id=414&token=20230218jsyklh$LR•IPV4•110『线路50』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -https://t.freetv.fun/live/yan-dong-ti-yu-1.m3u8$LR•IPV4•110『线路51』 +https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-16.m3u8$LR•IPV4•110『线路51』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-13.m3u8$LR•IPV4•110『线路52』 +https://t.freetv.fun/live/yan-dong-ti-yu-1.m3u8$LR•IPV4•110『线路52』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-5.m3u8$LR•IPV4•110『线路53』 +https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-13.m3u8$LR•IPV4•110『线路53』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-12.m3u8$LR•IPV4•110『线路54』 +https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-5.m3u8$LR•IPV4•110『线路54』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -https://stream1.freetv.fun/yan-dong-ti-yu-gao-qing-2.m3u8$LR•IPV4•110『线路55』 +https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-12.m3u8$LR•IPV4•110『线路55』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 -http://cdn2.163189.xyz/live/gdty/stream.m3u8$LR•IPV4•110『线路56』 +https://stream1.freetv.fun/yan-dong-ti-yu-gao-qing-2.m3u8$LR•IPV4•110『线路56』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 https://stream1.freetv.fun/yan-dong-ti-yu-19.m3u8$LR•IPV4•110『线路57』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 @@ -5868,27 +5858,27 @@ http://bxtv.3a.ink/api.php?id=gdty$LR•IPV4•110『线路109』 #EXTINF:-1 tvg-id="广东体育" tvg-name="广东体育" group-title="广东",广东体育 http://111.221.137.234:44330/tsfile/live/0124_1.m3u8$LR•IPV4•110『线路110』 #EXTINF:-1 tvg-id="广东民生" tvg-name="广东民生" group-title="广东",广东民生 -http://121.11.160.7:9901/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•54『线路1』 +http://183.11.239.36:808/hls/18/index.m3u8$LR•IPV4•54『线路1』 #EXTINF:-1 tvg-id="广东民生" tvg-name="广东民生" group-title="广东",广东民生 -https://stream1.freetv.fun/yan-dong-min-sheng-13.ctv$LR•IPV4•54『线路2』 +http://121.11.160.7:9901/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•54『线路2』 #EXTINF:-1 tvg-id="广东民生" tvg-name="广东民生" group-title="广东",广东民生 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1648&tk=a0c4f6cfaba3$LR•IPV4•54『线路3』 +https://stream1.freetv.fun/yan-dong-min-sheng-13.ctv$LR•IPV4•54『线路3』 #EXTINF:-1 tvg-id="广东民生" tvg-name="广东民生" group-title="广东",广东民生 -https://stream1.freetv.fun/yan-dong-min-sheng-32.ctv$LR•IPV4•54『线路4』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1648&tk=a0c4f6cfaba3$LR•IPV4•54『线路4』 #EXTINF:-1 tvg-id="广东民生" tvg-name="广东民生" group-title="广东",广东民生 -https://t.freetv.fun/live/yan-dong-min-sheng-1.m3u8$LR•IPV4•54『线路5』 +https://stream1.freetv.fun/yan-dong-min-sheng-32.ctv$LR•IPV4•54『线路5』 #EXTINF:-1 tvg-id="广东民生" tvg-name="广东民生" group-title="广东",广东民生 -https://t.freetv.fun/live/yan-dong-min-sheng-6.m3u8$LR•IPV4•54『线路6』 +https://t.freetv.fun/live/yan-dong-min-sheng-1.m3u8$LR•IPV4•54『线路6』 #EXTINF:-1 tvg-id="广东民生" tvg-name="广东民生" group-title="广东",广东民生 -http://38.75.136.137:98/gslb/dsdqpub/gdgg.m3u8?auth=testpub$LR•IPV4•54『线路7』 +https://t.freetv.fun/live/yan-dong-min-sheng-6.m3u8$LR•IPV4•54『线路7』 #EXTINF:-1 tvg-id="广东民生" tvg-name="广东民生" group-title="广东",广东民生 -https://stream1.freetv.fun/yan-dong-min-sheng-6.ctv$LR•IPV4•54『线路8』 +http://38.75.136.137:98/gslb/dsdqpub/gdgg.m3u8?auth=testpub$LR•IPV4•54『线路8』 #EXTINF:-1 tvg-id="广东民生" tvg-name="广东民生" group-title="广东",广东民生 -https://stream1.freetv.fun/yan-dong-min-sheng-3.ctv$LR•IPV4•54『线路9』 +https://stream1.freetv.fun/yan-dong-min-sheng-6.ctv$LR•IPV4•54『线路9』 #EXTINF:-1 tvg-id="广东民生" tvg-name="广东民生" group-title="广东",广东民生 -http://119.32.12.17:2901/udp/224.1.100.4:11111$LR•IPV4•54『线路10』 +https://stream1.freetv.fun/yan-dong-min-sheng-3.ctv$LR•IPV4•54『线路10』 #EXTINF:-1 tvg-id="广东民生" tvg-name="广东民生" group-title="广东",广东民生 -http://183.11.239.36:808/hls/18/index.m3u8$LR•IPV4•54『线路11』 +http://119.32.12.17:2901/udp/224.1.100.4:11111$LR•IPV4•54『线路11』 #EXTINF:-1 tvg-id="广东民生" tvg-name="广东民生" group-title="广东",广东民生 http://183.237.95.108:9901/tsfile/live/1032_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•54『线路12』 #EXTINF:-1 tvg-id="广东民生" tvg-name="广东民生" group-title="广东",广东民生 @@ -5976,9 +5966,9 @@ https://stream1.freetv.fun/yan-dong-min-sheng-17.ctv$LR•IPV4•54『线路53 #EXTINF:-1 tvg-id="广东民生" tvg-name="广东民生" group-title="广东",广东民生 https://stream1.freetv.fun/yan-dong-min-sheng-14.m3u8$LR•IPV4•54『线路54』 #EXTINF:-1 tvg-id="广东少儿" tvg-name="广东少儿" group-title="广东",广东少儿 -http://192.151.150.154/live/gdtvs5.m3u8$LR•IPV4•2『线路1』 +http://gmxw.7766.org:808/hls/175/index.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="广东少儿" tvg-name="广东少儿" group-title="广东",广东少儿 -http://gmxw.7766.org:808/hls/175/index.m3u8$LR•IPV4•2『线路2』 +http://192.151.150.154/live/gdtvs5.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="岭南戏曲" tvg-name="岭南戏曲" group-title="广东",岭南戏曲 http://192.151.150.154/live/gdlnxq.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="大湾区卫视" tvg-name="大湾区卫视" group-title="广东",大湾区卫视 @@ -5994,153 +5984,153 @@ http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=100000 #EXTINF:-1 tvg-id="大湾区卫视" tvg-name="大湾区卫视" group-title="广东",大湾区卫视 http://gslbserv.itv.cmvideo.cn:80/5000000011000265001/1.m3u8?channel-id=ystenlive&Contentid=1000000002000011619&livemode=1&stbId=toShengfen&mode=1&$LR•IPV4•6『线路6』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 -https://stream1.freetv.fun/yan-zhou-zong-he-15.ctv$LR•IPV4•56『线路1』 +http://tencentplay.gztv.com/live/zonghes.m3u8?txSecret=c8dbe86d6f86eb1a21999ab479fd5667&txTime=18d3c4690e8$LR•IPV4•56『线路1』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 -https://tencentplay.gztv.com/live/zonghes.m3u8?txSecret=f0147ae6453a80f5989f382368b72aad&txTime=18d00acf487$LR•IPV4•56『线路2』 +https://stream1.freetv.fun/yan-zhou-zong-he-15.ctv$LR•IPV4•56『线路2』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 -https://t.freetv.fun/live/yan-zhou-zong-he-7.m3u8$LR•IPV4•56『线路3』 +https://tencentplay.gztv.com/live/zonghes.m3u8?txSecret=f0147ae6453a80f5989f382368b72aad&txTime=18d00acf487$LR•IPV4•56『线路3』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 -https://stream1.freetv.fun/yan-zhou-zong-he-3.ctv$LR•IPV4•56『线路4』 +https://t.freetv.fun/live/yan-zhou-zong-he-7.m3u8$LR•IPV4•56『线路4』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 -https://t.freetv.fun/live/yan-zhou-zong-he.php$LR•IPV4•56『线路5』 +https://stream1.freetv.fun/yan-zhou-zong-he-3.ctv$LR•IPV4•56『线路5』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 -https://stream1.freetv.fun/yan-zhou-zong-he-19.ctv$LR•IPV4•56『线路6』 +https://t.freetv.fun/live/yan-zhou-zong-he.php$LR•IPV4•56『线路6』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 -http://r.jdshipin.com/iR6Gq$LR•IPV4•56『线路7』 +https://stream1.freetv.fun/yan-zhou-zong-he-19.ctv$LR•IPV4•56『线路7』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 -https://t.freetv.fun/live/yan-zhou-zong-he-1.m3u8$LR•IPV4•56『线路8』 +http://r.jdshipin.com/iR6Gq$LR•IPV4•56『线路8』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 -https://t.freetv.fun/live/yan-zhou-zong-he-3.m3u8$LR•IPV4•56『线路9』 +https://t.freetv.fun/live/yan-zhou-zong-he-1.m3u8$LR•IPV4•56『线路9』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 -https://stream1.freetv.fun/yan-zhou-zong-he-17.ctv$LR•IPV4•56『线路10』 +https://t.freetv.fun/live/yan-zhou-zong-he-3.m3u8$LR•IPV4•56『线路10』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 -http://180.142.144.54:8181/tsfile/live/0115_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•56『线路11』 +https://stream1.freetv.fun/yan-zhou-zong-he-17.ctv$LR•IPV4•56『线路11』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 -https://tencentplaygsm.gztv.com/live/zonghes.m3u8?txTime=659a5111&txSecret=36b95cb955327d8262812e0e4f772aa5$LR•IPV4•56『线路12』 +http://180.142.144.54:8181/tsfile/live/0115_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•56『线路12』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 -https://t.freetv.fun/live/yan-zhou-zong-he-8.m3u8$LR•IPV4•56『线路13』 +https://tencentplaygsm.gztv.com/live/zonghes.m3u8?txTime=659a5111&txSecret=36b95cb955327d8262812e0e4f772aa5$LR•IPV4•56『线路13』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 -http://125.89.163.44:8888/udp/239.253.43.71:5146$LR•IPV4•56『线路14』 +https://t.freetv.fun/live/yan-zhou-zong-he-8.m3u8$LR•IPV4•56『线路14』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 -https://tencentplay.gztv.com/live/zonghes.m3u8?txSecret=5d7708684007fcea395caff98369084c&txTime=19019c37743$LR•IPV4•56『线路15』 +http://125.89.163.44:8888/udp/239.253.43.71:5146$LR•IPV4•56『线路15』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 -https://stream1.freetv.fun/yan-zhou-zong-he-29.ctv$LR•IPV4•56『线路16』 +https://tencentplay.gztv.com/live/zonghes.m3u8?txSecret=5d7708684007fcea395caff98369084c&txTime=19019c37743$LR•IPV4•56『线路16』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 -https://stream1.freetv.fun/yan-zhou-zong-he-14.ctv$LR•IPV4•56『线路17』 +https://stream1.freetv.fun/yan-zhou-zong-he-29.ctv$LR•IPV4•56『线路17』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 -https://stream1.freetv.fun/yan-zhou-zong-he-27.ctv$LR•IPV4•56『线路18』 +https://stream1.freetv.fun/yan-zhou-zong-he-14.ctv$LR•IPV4•56『线路18』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 -https://stream1.freetv.fun/yan-zhou-zong-he-26.ctv$LR•IPV4•56『线路19』 +https://stream1.freetv.fun/yan-zhou-zong-he-27.ctv$LR•IPV4•56『线路19』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 -http://qjrhc.jydjd.top:2911/udp/224.1.100.36:11111$LR•IPV4•56『线路20』 +https://stream1.freetv.fun/yan-zhou-zong-he-26.ctv$LR•IPV4•56『线路20』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 -http://119.32.12.17:2901/udp/224.1.100.36:11111$LR•IPV4•56『线路21』 +http://qjrhc.jydjd.top:2911/udp/224.1.100.36:11111$LR•IPV4•56『线路21』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 -https://t.freetv.fun/live/yan-zhou-zong-he-2.m3u8$LR•IPV4•56『线路22』 +http://119.32.12.17:2901/udp/224.1.100.36:11111$LR•IPV4•56『线路22』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 -http://qjrhc.jydjd.top:2911/udp/224.1.100.35:11111$LR•IPV4•56『线路23』 +https://t.freetv.fun/live/yan-zhou-zong-he-2.m3u8$LR•IPV4•56『线路23』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 -http://dns.yiandrive.com:15907/gztv/zhonghe$LR•IPV4•56『线路24』 +http://qjrhc.jydjd.top:2911/udp/224.1.100.35:11111$LR•IPV4•56『线路24』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 -https://stream1.freetv.fun/yan-zhou-zong-he-24.ctv$LR•IPV4•56『线路25』 +http://dns.yiandrive.com:15907/gztv/zhonghe$LR•IPV4•56『线路25』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 -https://stream1.freetv.fun/yan-zhou-zong-he-8.ctv$LR•IPV4•56『线路26』 +https://stream1.freetv.fun/yan-zhou-zong-he-24.ctv$LR•IPV4•56『线路26』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 -http://120.77.205.62:8087/rtp/239.253.43.71:5146$LR•IPV4•56『线路27』 +https://stream1.freetv.fun/yan-zhou-zong-he-8.ctv$LR•IPV4•56『线路27』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 -http://120.77.205.62:8087/rtp/239.253.43.66:5146$LR•IPV4•56『线路28』 +http://120.77.205.62:8087/rtp/239.253.43.71:5146$LR•IPV4•56『线路28』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 -https://stream1.freetv.fun/yan-zhou-zong-he-30.ctv$LR•IPV4•56『线路29』 +http://120.77.205.62:8087/rtp/239.253.43.66:5146$LR•IPV4•56『线路29』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 -https://t.freetv.fun/live/yan-zhou-zong-he-9.m3u8$LR•IPV4•56『线路30』 +https://stream1.freetv.fun/yan-zhou-zong-he-30.ctv$LR•IPV4•56『线路30』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 -https://stream1.freetv.fun/yan-zhou-zong-he-13.ctv$LR•IPV4•56『线路31』 +https://t.freetv.fun/live/yan-zhou-zong-he-9.m3u8$LR•IPV4•56『线路31』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 -https://stream1.freetv.fun/yan-zhou-zong-he-16.ctv$LR•IPV4•56『线路32』 +https://stream1.freetv.fun/yan-zhou-zong-he-13.ctv$LR•IPV4•56『线路32』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 -https://stream1.freetv.fun/yan-zhou-zong-he-4.ctv$LR•IPV4•56『线路33』 +https://stream1.freetv.fun/yan-zhou-zong-he-16.ctv$LR•IPV4•56『线路33』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 -http://1.94.31.214/live/live9/channel/js/k-web/PLTV/ku9/js/gztv.js?id=zonghes$LR•IPV4•56『线路34』 +https://stream1.freetv.fun/yan-zhou-zong-he-4.ctv$LR•IPV4•56『线路34』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 -https://stream1.freetv.fun/yan-zhou-zong-he-1.m3u8$LR•IPV4•56『线路35』 +http://1.94.31.214/live/live9/channel/js/k-web/PLTV/ku9/js/gztv.js?id=zonghes$LR•IPV4•56『线路35』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 -https://stream1.freetv.fun/yan-zhou-zong-he-2.m3u8$LR•IPV4•56『线路36』 +https://stream1.freetv.fun/yan-zhou-zong-he-1.m3u8$LR•IPV4•56『线路36』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 -https://stream1.freetv.fun/yan-zhou-zong-he-31.ctv$LR•IPV4•56『线路37』 +https://stream1.freetv.fun/yan-zhou-zong-he-2.m3u8$LR•IPV4•56『线路37』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 -http://180.143.83.48:8181/tsfile/live/0115_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•56『线路38』 +https://stream1.freetv.fun/yan-zhou-zong-he-31.ctv$LR•IPV4•56『线路38』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 -https://stream1.freetv.fun/yan-zhou-zong-he-5.ctv$LR•IPV4•56『线路39』 +http://180.143.83.48:8181/tsfile/live/0115_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•56『线路39』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 -https://tencentplaygsm.gztv.com/live/zonghes.m3u8?txTime=6594e9b7&txSecret=adb23b34fb694750ac8b8ff14a21a424$LR•IPV4•56『线路40』 +https://stream1.freetv.fun/yan-zhou-zong-he-5.ctv$LR•IPV4•56『线路40』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 -https://tencentplay.gztv.com/live/zonghes.m3u8?txSecret=e381ab098841a0badbf7e11f24143cf7&txTime=18e6ff43701$LR•IPV4•56『线路41』 +https://tencentplaygsm.gztv.com/live/zonghes.m3u8?txTime=6594e9b7&txSecret=adb23b34fb694750ac8b8ff14a21a424$LR•IPV4•56『线路41』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 -https://stream1.freetv.fun/yan-zhou-zong-he-9.ctv$LR•IPV4•56『线路42』 +https://tencentplay.gztv.com/live/zonghes.m3u8?txSecret=e381ab098841a0badbf7e11f24143cf7&txTime=18e6ff43701$LR•IPV4•56『线路42』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 -https://stream1.freetv.fun/yan-zhou-zong-he-22.ctv$LR•IPV4•56『线路43』 +https://stream1.freetv.fun/yan-zhou-zong-he-9.ctv$LR•IPV4•56『线路43』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 -https://stream1.freetv.fun/yan-zhou-zong-he-25.ctv$LR•IPV4•56『线路44』 +https://stream1.freetv.fun/yan-zhou-zong-he-22.ctv$LR•IPV4•56『线路44』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 -https://stream1.freetv.fun/yan-zhou-zong-he-12.ctv$LR•IPV4•56『线路45』 +https://stream1.freetv.fun/yan-zhou-zong-he-25.ctv$LR•IPV4•56『线路45』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 -https://stream1.freetv.fun/yan-zhou-zong-he-23.ctv$LR•IPV4•56『线路46』 +https://stream1.freetv.fun/yan-zhou-zong-he-12.ctv$LR•IPV4•56『线路46』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 -https://stream1.freetv.fun/yan-zhou-zong-he-21.ctv$LR•IPV4•56『线路47』 +https://stream1.freetv.fun/yan-zhou-zong-he-23.ctv$LR•IPV4•56『线路47』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 -https://stream1.freetv.fun/yan-zhou-zong-he-10.m3u8$LR•IPV4•56『线路48』 +https://stream1.freetv.fun/yan-zhou-zong-he-21.ctv$LR•IPV4•56『线路48』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 -http://119.32.12.32:2901/udp/224.1.100.36:11111$LR•IPV4•56『线路49』 +https://stream1.freetv.fun/yan-zhou-zong-he-10.m3u8$LR•IPV4•56『线路49』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 -https://tencentplay.gztv.com/live/zonghes.m3u8?txSecret=439b0fd2cf766b363c93a59cbcbe1370&txTime=18d00acf488$LR•IPV4•56『线路50』 +http://119.32.12.32:2901/udp/224.1.100.36:11111$LR•IPV4•56『线路50』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 -https://stream1.freetv.fun/yan-zhou-zong-he-6.m3u8$LR•IPV4•56『线路51』 +https://tencentplay.gztv.com/live/zonghes.m3u8?txSecret=439b0fd2cf766b363c93a59cbcbe1370&txTime=18d00acf488$LR•IPV4•56『线路51』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 -https://stream1.freetv.fun/yan-zhou-zong-he-11.ctv$LR•IPV4•56『线路52』 +https://stream1.freetv.fun/yan-zhou-zong-he-6.m3u8$LR•IPV4•56『线路52』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 -https://t.freetv.fun/live/yan-zhou-zong-he-5.m3u8$LR•IPV4•56『线路53』 +https://stream1.freetv.fun/yan-zhou-zong-he-11.ctv$LR•IPV4•56『线路53』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 -http://r.jdshipin.com/snhya$LR•IPV4•56『线路54』 +https://t.freetv.fun/live/yan-zhou-zong-he-5.m3u8$LR•IPV4•56『线路54』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 -http://tencentplay.gztv.com/live/zonghes.m3u8?txSecret=c8dbe86d6f86eb1a21999ab479fd5667&txTime=18d3c4690e8$LR•IPV4•56『线路55』 +http://r.jdshipin.com/snhya$LR•IPV4•56『线路55』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 https://stream1.freetv.fun/yan-zhou-zong-he-18.ctv$LR•IPV4•56『线路56』 #EXTINF:-1 tvg-id="广州新闻" tvg-name="广州新闻" group-title="广东",广州新闻 -https://t.freetv.fun/live/yan-zhou-xin-wen-4.php$LR•IPV4•41『线路1』 +http://tencentplay.gztv.com/live/xinwen.m3u8?txSecret=d2c2db0b598c02ec1b5623728434d367&txTime=18d57929bd3$LR•IPV4•41『线路1』 #EXTINF:-1 tvg-id="广州新闻" tvg-name="广州新闻" group-title="广东",广州新闻 -https://stream1.freetv.fun/yan-zhou-xin-wen-10.ctv$LR•IPV4•41『线路2』 +https://t.freetv.fun/live/yan-zhou-xin-wen-4.php$LR•IPV4•41『线路2』 #EXTINF:-1 tvg-id="广州新闻" tvg-name="广州新闻" group-title="广东",广州新闻 -https://tencentplay.gztv.com/live/xinwen.m3u8?txSecret=6f73647cae387d01a3c2132074132a83&txTime=18d00acf487$LR•IPV4•41『线路3』 +https://stream1.freetv.fun/yan-zhou-xin-wen-10.ctv$LR•IPV4•41『线路3』 #EXTINF:-1 tvg-id="广州新闻" tvg-name="广州新闻" group-title="广东",广州新闻 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=9924&tk=a0c4f6cfaba3$LR•IPV4•41『线路4』 +https://tencentplay.gztv.com/live/xinwen.m3u8?txSecret=6f73647cae387d01a3c2132074132a83&txTime=18d00acf487$LR•IPV4•41『线路4』 #EXTINF:-1 tvg-id="广州新闻" tvg-name="广州新闻" group-title="广东",广州新闻 -https://stream1.freetv.fun/yan-zhou-xin-wen-23.ctv$LR•IPV4•41『线路5』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=9924&tk=a0c4f6cfaba3$LR•IPV4•41『线路5』 #EXTINF:-1 tvg-id="广州新闻" tvg-name="广州新闻" group-title="广东",广州新闻 -https://stream1.freetv.fun/yan-zhou-xin-wen-7.ctv$LR•IPV4•41『线路6』 +https://stream1.freetv.fun/yan-zhou-xin-wen-23.ctv$LR•IPV4•41『线路6』 #EXTINF:-1 tvg-id="广州新闻" tvg-name="广州新闻" group-title="广东",广州新闻 -https://stream1.freetv.fun/yan-zhou-xin-wen-25.ctv$LR•IPV4•41『线路7』 +https://stream1.freetv.fun/yan-zhou-xin-wen-7.ctv$LR•IPV4•41『线路7』 #EXTINF:-1 tvg-id="广州新闻" tvg-name="广州新闻" group-title="广东",广州新闻 -https://stream1.freetv.fun/yan-zhou-xin-wen-19.ctv$LR•IPV4•41『线路8』 +https://stream1.freetv.fun/yan-zhou-xin-wen-25.ctv$LR•IPV4•41『线路8』 #EXTINF:-1 tvg-id="广州新闻" tvg-name="广州新闻" group-title="广东",广州新闻 -https://stream1.freetv.fun/yan-zhou-xin-wen-21.ctv$LR•IPV4•41『线路9』 +https://stream1.freetv.fun/yan-zhou-xin-wen-19.ctv$LR•IPV4•41『线路9』 #EXTINF:-1 tvg-id="广州新闻" tvg-name="广州新闻" group-title="广东",广州新闻 -https://stream1.freetv.fun/yan-zhou-xin-wen-20.ctv$LR•IPV4•41『线路10』 +https://stream1.freetv.fun/yan-zhou-xin-wen-21.ctv$LR•IPV4•41『线路10』 #EXTINF:-1 tvg-id="广州新闻" tvg-name="广州新闻" group-title="广东",广州新闻 -http://125.89.163.44:8888/udp/239.253.43.72:5146$LR•IPV4•41『线路11』 +https://stream1.freetv.fun/yan-zhou-xin-wen-20.ctv$LR•IPV4•41『线路11』 #EXTINF:-1 tvg-id="广州新闻" tvg-name="广州新闻" group-title="广东",广州新闻 -https://t.freetv.fun/live/yan-zhou-xin-wen.m3u8$LR•IPV4•41『线路12』 +http://125.89.163.44:8888/udp/239.253.43.72:5146$LR•IPV4•41『线路12』 #EXTINF:-1 tvg-id="广州新闻" tvg-name="广州新闻" group-title="广东",广州新闻 -https://stream1.freetv.fun/yan-zhou-xin-wen-2.ctv$LR•IPV4•41『线路13』 +https://t.freetv.fun/live/yan-zhou-xin-wen.m3u8$LR•IPV4•41『线路13』 #EXTINF:-1 tvg-id="广州新闻" tvg-name="广州新闻" group-title="广东",广州新闻 -https://stream1.freetv.fun/yan-zhou-xin-wen-6.ctv$LR•IPV4•41『线路14』 +https://stream1.freetv.fun/yan-zhou-xin-wen-2.ctv$LR•IPV4•41『线路14』 #EXTINF:-1 tvg-id="广州新闻" tvg-name="广州新闻" group-title="广东",广州新闻 -https://stream1.freetv.fun/yan-zhou-xin-wen-8.m3u8$LR•IPV4•41『线路15』 +https://stream1.freetv.fun/yan-zhou-xin-wen-6.ctv$LR•IPV4•41『线路15』 #EXTINF:-1 tvg-id="广州新闻" tvg-name="广州新闻" group-title="广东",广州新闻 -https://stream1.freetv.fun/yan-zhou-xin-wen-13.ctv$LR•IPV4•41『线路16』 +https://stream1.freetv.fun/yan-zhou-xin-wen-8.m3u8$LR•IPV4•41『线路16』 #EXTINF:-1 tvg-id="广州新闻" tvg-name="广州新闻" group-title="广东",广州新闻 -https://t.freetv.fun/live/yan-zhou-xin-wen-2.m3u8$LR•IPV4•41『线路17』 +https://stream1.freetv.fun/yan-zhou-xin-wen-13.ctv$LR•IPV4•41『线路17』 #EXTINF:-1 tvg-id="广州新闻" tvg-name="广州新闻" group-title="广东",广州新闻 -http://tencentplay.gztv.com/live/xinwen.m3u8?txSecret=d2c2db0b598c02ec1b5623728434d367&txTime=18d57929bd3$LR•IPV4•41『线路18』 +https://t.freetv.fun/live/yan-zhou-xin-wen-2.m3u8$LR•IPV4•41『线路18』 #EXTINF:-1 tvg-id="广州新闻" tvg-name="广州新闻" group-title="广东",广州新闻 https://stream1.freetv.fun/yan-zhou-xin-wen-11.m3u8$LR•IPV4•41『线路19』 #EXTINF:-1 tvg-id="广州新闻" tvg-name="广州新闻" group-title="广东",广州新闻 @@ -6270,43 +6260,43 @@ https://stream1.freetv.fun/yan-zhou-ying-shi-12.ctv$LR•IPV4•40『线路40』 #EXTINF:-1 tvg-id="广州法治" tvg-name="广州法治" group-title="广东",广州法治 http://tencentplay.gztv.com/live/fazhi.m3u8?txSecret=3e84cd8eba844b5dc2150612295c7a52&txTime=18d578f4493$LR•IPV4 #EXTINF:-1 tvg-id="广州竞赛" tvg-name="广州竞赛" group-title="广东",广州竞赛 -https://stream1.freetv.fun/yan-zhou-jing-sai-7.ctv$LR•IPV4•54『线路1』 +http://8.138.7.223/tv/gzjs.m3u8$LR•IPV4•54『线路1』 #EXTINF:-1 tvg-id="广州竞赛" tvg-name="广州竞赛" group-title="广东",广州竞赛 -https://stream1.freetv.fun/yan-zhou-jing-sai-31.ctv$LR•IPV4•54『线路2』 +https://stream1.freetv.fun/yan-zhou-jing-sai-7.ctv$LR•IPV4•54『线路2』 #EXTINF:-1 tvg-id="广州竞赛" tvg-name="广州竞赛" group-title="广东",广州竞赛 -http://125.89.163.44:8888/udp/239.253.43.75:5146$LR•IPV4•54『线路3』 +https://stream1.freetv.fun/yan-zhou-jing-sai-31.ctv$LR•IPV4•54『线路3』 #EXTINF:-1 tvg-id="广州竞赛" tvg-name="广州竞赛" group-title="广东",广州竞赛 -https://stream1.freetv.fun/yan-zhou-jing-sai-11.m3u8$LR•IPV4•54『线路4』 +http://125.89.163.44:8888/udp/239.253.43.75:5146$LR•IPV4•54『线路4』 #EXTINF:-1 tvg-id="广州竞赛" tvg-name="广州竞赛" group-title="广东",广州竞赛 -https://tencentplaygsm.gztv.com/live/jingsai.m3u8?txTime=6594e9c9&txSecret=66dc779a3a36272e652238dd37624bbf$LR•IPV4•54『线路5』 +https://stream1.freetv.fun/yan-zhou-jing-sai-11.m3u8$LR•IPV4•54『线路5』 #EXTINF:-1 tvg-id="广州竞赛" tvg-name="广州竞赛" group-title="广东",广州竞赛 -https://stream1.freetv.fun/yan-zhou-jing-sai-29.ctv$LR•IPV4•54『线路6』 +https://tencentplaygsm.gztv.com/live/jingsai.m3u8?txTime=6594e9c9&txSecret=66dc779a3a36272e652238dd37624bbf$LR•IPV4•54『线路6』 #EXTINF:-1 tvg-id="广州竞赛" tvg-name="广州竞赛" group-title="广东",广州竞赛 -https://stream1.freetv.fun/yan-zhou-jing-sai-21.ctv$LR•IPV4•54『线路7』 +https://stream1.freetv.fun/yan-zhou-jing-sai-29.ctv$LR•IPV4•54『线路7』 #EXTINF:-1 tvg-id="广州竞赛" tvg-name="广州竞赛" group-title="广东",广州竞赛 -https://stream1.freetv.fun/yan-zhou-jing-sai-12.m3u8$LR•IPV4•54『线路8』 +https://stream1.freetv.fun/yan-zhou-jing-sai-21.ctv$LR•IPV4•54『线路8』 #EXTINF:-1 tvg-id="广州竞赛" tvg-name="广州竞赛" group-title="广东",广州竞赛 -https://stream1.freetv.fun/yan-zhou-jing-sai-16.ctv$LR•IPV4•54『线路9』 +https://stream1.freetv.fun/yan-zhou-jing-sai-12.m3u8$LR•IPV4•54『线路9』 #EXTINF:-1 tvg-id="广州竞赛" tvg-name="广州竞赛" group-title="广东",广州竞赛 -https://stream1.freetv.fun/yan-zhou-jing-sai-15.ctv$LR•IPV4•54『线路10』 +https://stream1.freetv.fun/yan-zhou-jing-sai-16.ctv$LR•IPV4•54『线路10』 #EXTINF:-1 tvg-id="广州竞赛" tvg-name="广州竞赛" group-title="广东",广州竞赛 -https://stream1.freetv.fun/yan-zhou-jing-sai-32.ctv$LR•IPV4•54『线路11』 +https://stream1.freetv.fun/yan-zhou-jing-sai-15.ctv$LR•IPV4•54『线路11』 #EXTINF:-1 tvg-id="广州竞赛" tvg-name="广州竞赛" group-title="广东",广州竞赛 -https://stream1.freetv.fun/yan-zhou-jing-sai-38.ctv$LR•IPV4•54『线路12』 +https://stream1.freetv.fun/yan-zhou-jing-sai-32.ctv$LR•IPV4•54『线路12』 #EXTINF:-1 tvg-id="广州竞赛" tvg-name="广州竞赛" group-title="广东",广州竞赛 -https://stream1.freetv.fun/yan-zhou-jing-sai-3.ctv$LR•IPV4•54『线路13』 +https://stream1.freetv.fun/yan-zhou-jing-sai-38.ctv$LR•IPV4•54『线路13』 #EXTINF:-1 tvg-id="广州竞赛" tvg-name="广州竞赛" group-title="广东",广州竞赛 -https://stream1.freetv.fun/yan-zhou-jing-sai-33.ctv$LR•IPV4•54『线路14』 +https://stream1.freetv.fun/yan-zhou-jing-sai-3.ctv$LR•IPV4•54『线路14』 #EXTINF:-1 tvg-id="广州竞赛" tvg-name="广州竞赛" group-title="广东",广州竞赛 -http://qjrhc.jydjd.top:2911/udp/224.1.100.105:11111$LR•IPV4•54『线路15』 +https://stream1.freetv.fun/yan-zhou-jing-sai-33.ctv$LR•IPV4•54『线路15』 #EXTINF:-1 tvg-id="广州竞赛" tvg-name="广州竞赛" group-title="广东",广州竞赛 -http://nn.7x9d.cn/地方台8563/gsw.php?id=gzjs$LR•IPV4•54『线路16』 +http://qjrhc.jydjd.top:2911/udp/224.1.100.105:11111$LR•IPV4•54『线路16』 #EXTINF:-1 tvg-id="广州竞赛" tvg-name="广州竞赛" group-title="广东",广州竞赛 -https://tencentplay.gztv.com/live/jingsai.m3u8?txSecret=49c8041461997c7a97dbcc3c7fd11b4f&txTime=18d00acf487$LR•IPV4•54『线路17』 +http://nn.7x9d.cn/地方台8563/gsw.php?id=gzjs$LR•IPV4•54『线路17』 #EXTINF:-1 tvg-id="广州竞赛" tvg-name="广州竞赛" group-title="广东",广州竞赛 -https://stream1.freetv.fun/yan-zhou-jing-sai-9.ctv$LR•IPV4•54『线路18』 +https://tencentplay.gztv.com/live/jingsai.m3u8?txSecret=49c8041461997c7a97dbcc3c7fd11b4f&txTime=18d00acf487$LR•IPV4•54『线路18』 #EXTINF:-1 tvg-id="广州竞赛" tvg-name="广州竞赛" group-title="广东",广州竞赛 -http://8.138.7.223/tv/gzjs.m3u8$LR•IPV4•54『线路19』 +https://stream1.freetv.fun/yan-zhou-jing-sai-9.ctv$LR•IPV4•54『线路19』 #EXTINF:-1 tvg-id="广州竞赛" tvg-name="广州竞赛" group-title="广东",广州竞赛 https://tencentplaygsm.gztv.com/live/jingsai.m3u8?txTime=659a5124&txSecret=72dcf9be1f18b8cbb1d96df34dc9a2a9$LR•IPV4•54『线路20』 #EXTINF:-1 tvg-id="广州竞赛" tvg-name="广州竞赛" group-title="广东",广州竞赛 @@ -6446,19 +6436,19 @@ http://120.77.205.62:8087/rtp/239.77.0.196:5146$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-id="江门侨乡生活" tvg-name="江门侨乡生活" group-title="广东",江门侨乡生活 http://125.89.163.44:8888/udp/239.77.0.202:5146$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-id="河源综合" tvg-name="河源综合" group-title="广东",河源综合 -https://tmpstream.hyrtv.cn/xwzh/sd/live.m3u8$LR•IPV4•5『线路1』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8947&tk=a0c4f6cfaba3$LR•IPV4•5『线路1』 #EXTINF:-1 tvg-id="河源综合" tvg-name="河源综合" group-title="广东",河源综合 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8947&tk=a0c4f6cfaba3$LR•IPV4•5『线路2』 +http://125.89.163.44:8888/udp/239.253.43.213:5146$LR•IPV4•5『线路2』 #EXTINF:-1 tvg-id="河源综合" tvg-name="河源综合" group-title="广东",河源综合 -http://125.89.163.44:8888/udp/239.253.43.213:5146$LR•IPV4•5『线路3』 +http://120.234.5.28:6000/udp/239.21.0.48:3532$LR•IPV4•5『线路3』 #EXTINF:-1 tvg-id="河源综合" tvg-name="河源综合" group-title="广东",河源综合 -http://120.234.5.28:6000/udp/239.21.0.48:3532$LR•IPV4•5『线路4』 +https://tmpstream.hyrtv.cn/xwzh/sd/live.m3u8?_upt=f767206b1671099007$LR•IPV4•5『线路4』 #EXTINF:-1 tvg-id="河源综合" tvg-name="河源综合" group-title="广东",河源综合 -https://tmpstream.hyrtv.cn/xwzh/sd/live.m3u8?_upt=f767206b1671099007$LR•IPV4•5『线路5』 +https://tmpstream.hyrtv.cn/xwzh/sd/live.m3u8$LR•IPV4•5『线路5』 #EXTINF:-1 tvg-id="河源公共" tvg-name="河源公共" group-title="广东",河源公共 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5263&tk=a0c4f6cfaba3$LR•IPV4•6『线路1』 +http://tmpstream.hyrtv.cn/hygg/sd/live.m3u8$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-id="河源公共" tvg-name="河源公共" group-title="广东",河源公共 -http://tmpstream.hyrtv.cn/hygg/sd/live.m3u8$LR•IPV4•6『线路2』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5263&tk=a0c4f6cfaba3$LR•IPV4•6『线路2』 #EXTINF:-1 tvg-id="河源公共" tvg-name="河源公共" group-title="广东",河源公共 https://tmpstream.hyrtv.cn/hygg/sd/live.m3u8$LR•IPV4•6『线路3』 #EXTINF:-1 tvg-id="河源公共" tvg-name="河源公共" group-title="广东",河源公共 @@ -6872,7 +6862,7 @@ http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1734&tk=b53028476470$LR•IPV4•7『 #EXTINF:-1 tvg-id="上海外语" tvg-name="上海外语" group-title="上海",上海外语 http://111.22.153.159:35455/itv/2000000002000000001.m3u8?cdn=hnbblive$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://8.138.7.223/tv/shtv.php?id=wxty$LR•IPV4•44『线路1』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 https://stream1.freetv.fun/wu-xing-ti-yu-4.m3u8$LR•IPV4•44『线路2』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 @@ -6884,81 +6874,81 @@ https://stream1.freetv.fun/wu-xing-ti-yu-13.ctv$LR•IPV4•44『线路5』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 http://home.wwang.pw:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•44『线路6』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -http://8.138.7.223/tv/shtv.php?id=wxty$LR•IPV4•44『线路7』 +http://api2.52tb.xyz/info?id=375&token=20230120rdbtgv$LR•IPV4•44『线路7』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -http://api2.52tb.xyz/info?id=375&token=20230120rdbtgv$LR•IPV4•44『线路8』 +https://other.ottiptv.cc/wxty.m3u8$LR•IPV4•44『线路8』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://other.ottiptv.cc/wxty.m3u8$LR•IPV4•44『线路9』 +http://36.105.100.208:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•44『线路9』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -http://36.105.100.208:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•44『线路10』 +https://migu.188766.xyz/?migutoken=ed5a02a3b87f3dcc808d4b733daf5cf9&id=%E4%BA%94%E6%98%9F%E4%BD%93%E8%82%B2&pp=1$LR•IPV4•44『线路10』 #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『线路11』 +http://live.xmcdn.com/live/57/64.m3u8$LR•IPV4•44『线路11』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -http://live.xmcdn.com/live/57/64.m3u8$LR•IPV4•44『线路12』 +https://t.freetv.fun/live/wu-xing-ti-yu-2.m3u8$LR•IPV4•44『线路12』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://t.freetv.fun/live/wu-xing-ti-yu-2.m3u8$LR•IPV4•44『线路13』 +https://zby.130519.xyz/PLTV/11/224/3221225732/index.m3u8$LR•IPV4•44『线路13』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://zby.130519.xyz/PLTV/11/224/3221225732/index.m3u8$LR•IPV4•44『线路14』 +https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-2.m3u8$LR•IPV4•44『线路14』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-2.m3u8$LR•IPV4•44『线路15』 +https://stream1.freetv.fun/wu-xing-ti-yu-11.m3u8$LR•IPV4•44『线路15』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-11.m3u8$LR•IPV4•44『线路16』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=wxtyhd$LR•IPV4•44『线路16』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=wxtyhd$LR•IPV4•44『线路17』 +https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-7.m3u8$LR•IPV4•44『线路17』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-7.m3u8$LR•IPV4•44『线路18』 +https://stream1.freetv.fun/wu-xing-ti-yu-15.m3u8$LR•IPV4•44『线路18』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-15.m3u8$LR•IPV4•44『线路19』 +https://stream1.freetv.fun/wu-xing-ti-yu-10.m3u8$LR•IPV4•44『线路19』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-10.m3u8$LR•IPV4•44『线路20』 +https://stream1.freetv.fun/wu-xing-ti-yu-7.m3u8$LR•IPV4•44『线路20』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-7.m3u8$LR•IPV4•44『线路21』 +http://101.35.240.114:88/live.php?id=五星体育$LR•IPV4•44『线路21』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -http://101.35.240.114:88/live.php?id=五星体育$LR•IPV4•44『线路22』 +https://stream1.freetv.fun/wu-xing-ti-yu-13.m3u8$LR•IPV4•44『线路22』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-13.m3u8$LR•IPV4•44『线路23』 +https://stream1.freetv.fun/wu-xing-ti-yu-14.m3u8$LR•IPV4•44『线路23』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-14.m3u8$LR•IPV4•44『线路24』 +https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-10.m3u8$LR•IPV4•44『线路24』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-10.m3u8$LR•IPV4•44『线路25』 +http://3501776.xyz:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•44『线路25』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -http://3501776.xyz:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•44『线路26』 +https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-8.m3u8$LR•IPV4•44『线路26』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-8.m3u8$LR•IPV4•44『线路27』 +https://stream1.freetv.fun/wu-xing-ti-yu-12.m3u8$LR•IPV4•44『线路27』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-12.m3u8$LR•IPV4•44『线路28』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4759&tk=7d4ad8f156e3$LR•IPV4•44『线路28』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4759&tk=7d4ad8f156e3$LR•IPV4•44『线路29』 +https://stream1.freetv.fun/wu-xing-ti-yu-3.m3u8$LR•IPV4•44『线路29』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-3.m3u8$LR•IPV4•44『线路30』 +https://stream1.freetv.fun/wu-xing-ti-yu-2.m3u8$LR•IPV4•44『线路30』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-2.m3u8$LR•IPV4•44『线路31』 +https://stream1.freetv.fun/wu-xing-ti-yu-5.m3u8$LR•IPV4•44『线路31』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-5.m3u8$LR•IPV4•44『线路32』 +https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-3.m3u8$LR•IPV4•44『线路32』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-3.m3u8$LR•IPV4•44『线路33』 +https://stream1.freetv.fun/wu-xing-ti-yu-1.m3u8$LR•IPV4•44『线路33』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-1.m3u8$LR•IPV4•44『线路34』 +http://bp-livetytv.bestv.cn/ch/bestvwxty.m3u8$LR•IPV4•44『线路34』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -http://bp-livetytv.bestv.cn/ch/bestvwxty.m3u8$LR•IPV4•44『线路35』 +https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-6.m3u8$LR•IPV4•44『线路35』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-6.m3u8$LR•IPV4•44『线路36』 +https://stream1.freetv.fun/wu-xing-ti-yu-6.m3u8$LR•IPV4•44『线路36』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-6.m3u8$LR•IPV4•44『线路37』 +https://t.freetv.fun/live/wu-xing-ti-yu-4.m3u8$LR•IPV4•44『线路37』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://t.freetv.fun/live/wu-xing-ti-yu-4.m3u8$LR•IPV4•44『线路38』 +https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-1.m3u8$LR•IPV4•44『线路38』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-1.m3u8$LR•IPV4•44『线路39』 +https://stream1.freetv.fun/wu-xing-ti-yu-9.m3u8$LR•IPV4•44『线路39』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-9.m3u8$LR•IPV4•44『线路40』 +https://stream1.freetv.fun/wu-xing-ti-yu-8.m3u8$LR•IPV4•44『线路40』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-8.m3u8$LR•IPV4•44『线路41』 +https://t.freetv.fun/live/wu-xing-ti-yu-6.m3u8$LR•IPV4•44『线路41』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://t.freetv.fun/live/wu-xing-ti-yu-6.m3u8$LR•IPV4•44『线路42』 +https://t.freetv.fun/live/wu-xing-ti-yu.m3u8$LR•IPV4•44『线路42』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://t.freetv.fun/live/wu-xing-ti-yu.m3u8$LR•IPV4•44『线路43』 +https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-14.m3u8$LR•IPV4•44『线路43』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-14.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="上海",东方影视 http://111.22.153.159:35455/itv/5000000010000032212.m3u8?cdn=bestzb$LR•IPV4•33『线路1』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 @@ -7046,119 +7036,119 @@ http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4946&tk=97475bb89d45$LR•IPV4•10 #EXTINF:-1 tvg-id="东方财经" tvg-name="东方财经" group-title="上海",东方财经 http://111.22.153.159:35455/itv/5000000007000010003.m3u8?cdn=bestzb$LR•IPV4•10『线路10』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://zby.130519.xyz/PLTV/11/224/3221225737/index.m3u8$LR•IPV4•53『线路1』 +https://satellitepull.cnr.cn/live/wx32dycjgb/playlist.m3u8$LR•IPV4•53『线路1』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://stream1.freetv.fun/ipv6-di-yi-cai-jing-11.m3u8$LR•IPV4•53『线路2』 +http://satellitepull.cnr.cn/live/wx32dycjgb/playlist.m3u8$LR•IPV4•53『线路2』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4663&tk=f6cc1e0a0e1a$LR•IPV4•53『线路3』 +https://zby.130519.xyz/PLTV/11/224/3221225737/index.m3u8$LR•IPV4•53『线路3』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://stream1.freetv.fun/di-yi-cai-jing-13.m3u8$LR•IPV4•53『线路4』 +https://stream1.freetv.fun/ipv6-di-yi-cai-jing-11.m3u8$LR•IPV4•53『线路4』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://a1live.livecdn.yicai.com/live/radio_tv.m3u8$LR•IPV4•53『线路5』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4663&tk=f6cc1e0a0e1a$LR•IPV4•53『线路5』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://mgtv.ottiptv.cc/migu/608780988.m3u8?migutoken=0c7df30d952e5d120406d3eb259cd5e26ec6aa86037008719de147cc6fbc34e877c3e3d7b9617267f35521bdddc4c5995e6fc0583816a5df1bfe19814868525e736733676761a4b2d4db618e84$LR•IPV4•53『线路6』 +https://stream1.freetv.fun/di-yi-cai-jing-13.m3u8$LR•IPV4•53『线路6』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://116.52.173.34:1234/608780988$LR•IPV4•53『线路7』 +http://a1live.livecdn.yicai.com/live/radio_tv.m3u8$LR•IPV4•53『线路7』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://stream1.freetv.fun/ipv6-di-yi-cai-jing-4.m3u8$LR•IPV4•53『线路8』 +https://mgtv.ottiptv.cc/migu/608780988.m3u8?migutoken=0c7df30d952e5d120406d3eb259cd5e26ec6aa86037008719de147cc6fbc34e877c3e3d7b9617267f35521bdddc4c5995e6fc0583816a5df1bfe19814868525e736733676761a4b2d4db618e84$LR•IPV4•53『线路8』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://www.freetv.top/migu/608780988.m3u8?migutoken=62e21890acbd9928d0be0b4eae9f5e32e1879604b785ee7ce8751d5001a9ff431d7714025aa03d48a2b190ff214e5115dcb6ba455c3d26b1db0f5b3cb49c5967429ff3b1fe8e96e87cc6146543$LR•IPV4•53『线路9』 +http://116.52.173.34:1234/608780988$LR•IPV4•53『线路9』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://www.freetv.top/migu/608780988.m3u8?migutoken=94882e783c75b9369ca6a018f97fe3a3c0018f9da123958e316bb810ef22e907f0672a7d63496e5cb5041eb125b1f1ee6996ac856b0c0c9828348878b8a4101384b9a851fb1dea60a7fafeea35$LR•IPV4•53『线路10』 +https://stream1.freetv.fun/ipv6-di-yi-cai-jing-4.m3u8$LR•IPV4•53『线路10』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://satellitepull.cnr.cn/live/wx32dycjgb/playlist.m3u8$LR•IPV4•53『线路11』 +https://www.freetv.top/migu/608780988.m3u8?migutoken=62e21890acbd9928d0be0b4eae9f5e32e1879604b785ee7ce8751d5001a9ff431d7714025aa03d48a2b190ff214e5115dcb6ba455c3d26b1db0f5b3cb49c5967429ff3b1fe8e96e87cc6146543$LR•IPV4•53『线路11』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://stream1.freetv.fun/di-yi-cai-jing-9.m3u8$LR•IPV4•53『线路12』 +https://www.freetv.top/migu/608780988.m3u8?migutoken=94882e783c75b9369ca6a018f97fe3a3c0018f9da123958e316bb810ef22e907f0672a7d63496e5cb5041eb125b1f1ee6996ac856b0c0c9828348878b8a4101384b9a851fb1dea60a7fafeea35$LR•IPV4•53『线路12』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0771&tk=a0c4f6cfaba3$LR•IPV4•53『线路13』 +https://stream1.freetv.fun/di-yi-cai-jing-9.m3u8$LR•IPV4•53『线路13』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://stream1.freetv.fun/ipv6-di-yi-cai-jing-7.m3u8$LR•IPV4•53『线路14』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0771&tk=a0c4f6cfaba3$LR•IPV4•53『线路14』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://stream1.freetv.fun/ipv6-di-yi-cai-jing-3.m3u8$LR•IPV4•53『线路15』 +https://stream1.freetv.fun/ipv6-di-yi-cai-jing-7.m3u8$LR•IPV4•53『线路15』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://t.061899.xyz/tl/tl.php?id=dycj$LR•IPV4•53『线路16』 +https://stream1.freetv.fun/ipv6-di-yi-cai-jing-3.m3u8$LR•IPV4•53『线路16』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4810&tk=23a9aca1f79f$LR•IPV4•53『线路17』 +http://t.061899.xyz/tl/tl.php?id=dycj$LR•IPV4•53『线路17』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://t.freetv.fun/live/di-yi-cai-jing-2.m3u8$LR•IPV4•53『线路18』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4810&tk=23a9aca1f79f$LR•IPV4•53『线路18』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://stream1.freetv.fun/di-yi-cai-jing-12.m3u8$LR•IPV4•53『线路19』 +https://t.freetv.fun/live/di-yi-cai-jing-2.m3u8$LR•IPV4•53『线路19』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://stream1.freetv.fun/ipv6-di-yi-cai-jing-8.m3u8$LR•IPV4•53『线路20』 +https://stream1.freetv.fun/di-yi-cai-jing-12.m3u8$LR•IPV4•53『线路20』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=7436&tk=b53028476470$LR•IPV4•53『线路21』 +https://stream1.freetv.fun/ipv6-di-yi-cai-jing-8.m3u8$LR•IPV4•53『线路21』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://stream1.freetv.fun/di-yi-cai-jing-3.m3u8$LR•IPV4•53『线路22』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=7436&tk=b53028476470$LR•IPV4•53『线路22』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://migu.188766.xyz/?migutoken=20bb1a06124bd6ea328162fe9605882d&id=dycj&type=sz$LR•IPV4•53『线路23』 +https://stream1.freetv.fun/di-yi-cai-jing-3.m3u8$LR•IPV4•53『线路23』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://111.228.4.117:6789/migu720p.php?id=608780988$LR•IPV4•53『线路24』 +https://migu.188766.xyz/?migutoken=20bb1a06124bd6ea328162fe9605882d&id=dycj&type=sz$LR•IPV4•53『线路24』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://hlsztemgsplive.miguvideo.com:8080/wd_r1/2018/bestv/dycj/1000/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=699212&netType=0&sid=2201008312&pid=2028597139×tamp=20260710040230&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=608780988&ParentNodeID=-99&assertID=2201008312&client_ip=171.8.79.254&SecurityKey=20260710040230&promotionId=&mvid=2201008312&mcid=500020&playurlVersion=WX-A1-9.6.1.6-SNAPSHOT&userid=&jmhm=&videocodec=h264&appCode=miguvideo_android&bean=mgspad&tid=android&conFee=0&encrypt=493b7c6bd3118c23e9193cc29cda9b1e&sv=10004&ct=android$LR•IPV4•53『线路25』 +http://111.228.4.117:6789/migu720p.php?id=608780988$LR•IPV4•53『线路25』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://stream1.freetv.fun/di-yi-cai-jing-10.m3u8$LR•IPV4•53『线路26』 +http://hlsztemgsplive.miguvideo.com:8080/wd_r1/2018/bestv/dycj/1000/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=699212&netType=0&sid=2201008312&pid=2028597139×tamp=20260710040230&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=608780988&ParentNodeID=-99&assertID=2201008312&client_ip=171.8.79.254&SecurityKey=20260710040230&promotionId=&mvid=2201008312&mcid=500020&playurlVersion=WX-A1-9.6.1.6-SNAPSHOT&userid=&jmhm=&videocodec=h264&appCode=miguvideo_android&bean=mgspad&tid=android&conFee=0&encrypt=493b7c6bd3118c23e9193cc29cda9b1e&sv=10004&ct=android$LR•IPV4•53『线路26』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://115.190.247.176:1111/608780988$LR•IPV4•53『线路27』 +https://stream1.freetv.fun/di-yi-cai-jing-10.m3u8$LR•IPV4•53『线路27』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://gslbmgsplive.miguvideo.com/wd_r1/2018/bestv/dycj/1000/index.m3u8?msisdn=2025091908013429b62173a5e24f8ea1f310d5ed32e792&mdspid=&spid=699212&netType=0&sid=2201008312&pid=2028597139×tamp=20250919080134&Channel_ID=0116_2600000900-99000-201600010010027&ProgramID=608780988&ParentNodeID=-99&assertID=2201008312&client_ip=106.13.250.88&SecurityKey=20250919080134&promotionId=&mvid=2201008312&mcid=500020&playurlVersion=WX-A1-8.9.1-RELEASE&userid=&jmhm=&videocodec=h264&bean=mgspad&tid=android&conFee=0&puData=6c828d22c926cc843970f3f1c7455bea&ddCalcu=a6eceb815285804d72c21cf932f60c7c9834$LR•IPV4•53『线路28』 +http://115.190.247.176:1111/608780988$LR•IPV4•53『线路28』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://stream1.freetv.fun/ipv6-di-yi-cai-jing-1.ctv$LR•IPV4•53『线路29』 +http://gslbmgsplive.miguvideo.com/wd_r1/2018/bestv/dycj/1000/index.m3u8?msisdn=2025091908013429b62173a5e24f8ea1f310d5ed32e792&mdspid=&spid=699212&netType=0&sid=2201008312&pid=2028597139×tamp=20250919080134&Channel_ID=0116_2600000900-99000-201600010010027&ProgramID=608780988&ParentNodeID=-99&assertID=2201008312&client_ip=106.13.250.88&SecurityKey=20250919080134&promotionId=&mvid=2201008312&mcid=500020&playurlVersion=WX-A1-8.9.1-RELEASE&userid=&jmhm=&videocodec=h264&bean=mgspad&tid=android&conFee=0&puData=6c828d22c926cc843970f3f1c7455bea&ddCalcu=a6eceb815285804d72c21cf932f60c7c9834$LR•IPV4•53『线路29』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://8.138.7.223/tv/shtv.php?id=dycj$LR•IPV4•53『线路30』 +https://stream1.freetv.fun/ipv6-di-yi-cai-jing-1.ctv$LR•IPV4•53『线路30』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8321&tk=e640d0a1bf70$LR•IPV4•53『线路31』 +http://8.138.7.223/tv/shtv.php?id=dycj$LR•IPV4•53『线路31』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://live.xmcdn.com/live/56/64.m3u8$LR•IPV4•53『线路32』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8321&tk=e640d0a1bf70$LR•IPV4•53『线路32』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://123.113.205.253:3000/608780988$LR•IPV4•53『线路33』 +http://live.xmcdn.com/live/56/64.m3u8$LR•IPV4•53『线路33』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://t.freetv.fun/live/di-yi-cai-jing.m3u8$LR•IPV4•53『线路34』 +http://123.113.205.253:3000/608780988$LR•IPV4•53『线路34』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://43.251.226.89:8080/play/59.m3u8$LR•IPV4•53『线路35』 +https://t.freetv.fun/live/di-yi-cai-jing.m3u8$LR•IPV4•53『线路35』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://stream1.freetv.fun/di-yi-cai-jing-5.m3u8$LR•IPV4•53『线路36』 +http://43.251.226.89:8080/play/59.m3u8$LR•IPV4•53『线路36』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://101.43.145.141:12002/itv/5000000010000027146.m3u8?cdn=bestzb$LR•IPV4•53『线路37』 +https://stream1.freetv.fun/di-yi-cai-jing-5.m3u8$LR•IPV4•53『线路37』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://stream1.freetv.fun/di-yi-cai-jing-7.m3u8$LR•IPV4•53『线路38』 +http://101.43.145.141:12002/itv/5000000010000027146.m3u8?cdn=bestzb$LR•IPV4•53『线路38』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0917&tk=2aca1ad9a849$LR•IPV4•53『线路39』 +https://stream1.freetv.fun/di-yi-cai-jing-7.m3u8$LR•IPV4•53『线路39』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4640&tk=e503191f8e20$LR•IPV4•53『线路40』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0917&tk=2aca1ad9a849$LR•IPV4•53『线路40』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://hls-gateway.vpstv.net/streams/708851.m3u8$LR•IPV4•53『线路41』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4640&tk=e503191f8e20$LR•IPV4•53『线路41』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://migu.188766.xyz/?migutoken=48076f7837fe4f59da0dbd882998f16d&id=dycj&type=sz$LR•IPV4•53『线路42』 +https://hls-gateway.vpstv.net/streams/708851.m3u8$LR•IPV4•53『线路42』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://stream1.freetv.fun/di-yi-cai-jing-6.ctv$LR•IPV4•53『线路43』 +https://migu.188766.xyz/?migutoken=48076f7837fe4f59da0dbd882998f16d&id=dycj&type=sz$LR•IPV4•53『线路43』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://hlszymgsplive.miguvideo.com:8080/wd_r1/2018/bestv/dycj/1000/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=699212&netType=0&sid=2201008312&pid=2028597139×tamp=20260710080234&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=608780988&ParentNodeID=-99&assertID=2201008312&client_ip=171.8.79.254&SecurityKey=20260710080234&promotionId=&mvid=2201008312&mcid=500020&playurlVersion=WX-A1-9.6.1.6-SNAPSHOT&userid=&jmhm=&videocodec=h264&appCode=miguvideo_android&bean=mgspad&tid=android&conFee=0&encrypt=9abd614b3d575e67ef0ea504124ae44c&sv=10004&ct=android$LR•IPV4•53『线路44』 +https://stream1.freetv.fun/di-yi-cai-jing-6.ctv$LR•IPV4•53『线路44』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://stream1.freetv.fun/ipv6-di-yi-cai-jing-5.m3u8$LR•IPV4•53『线路45』 +http://hlszymgsplive.miguvideo.com:8080/wd_r1/2018/bestv/dycj/1000/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=699212&netType=0&sid=2201008312&pid=2028597139×tamp=20260710080234&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=608780988&ParentNodeID=-99&assertID=2201008312&client_ip=171.8.79.254&SecurityKey=20260710080234&promotionId=&mvid=2201008312&mcid=500020&playurlVersion=WX-A1-9.6.1.6-SNAPSHOT&userid=&jmhm=&videocodec=h264&appCode=miguvideo_android&bean=mgspad&tid=android&conFee=0&encrypt=9abd614b3d575e67ef0ea504124ae44c&sv=10004&ct=android$LR•IPV4•53『线路45』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8820&tk=e640d0a1bf70$LR•IPV4•53『线路46』 +https://stream1.freetv.fun/ipv6-di-yi-cai-jing-5.m3u8$LR•IPV4•53『线路46』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6806&tk=a0c4f6cfaba3$LR•IPV4•53『线路47』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8820&tk=e640d0a1bf70$LR•IPV4•53『线路47』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://stream1.freetv.fun/ipv6-di-yi-cai-jing-6.m3u8$LR•IPV4•53『线路48』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6806&tk=a0c4f6cfaba3$LR•IPV4•53『线路48』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://bp-livetytv.bestv.cn/ch/bestvdycj.m3u8$LR•IPV4•53『线路49』 +https://stream1.freetv.fun/ipv6-di-yi-cai-jing-6.m3u8$LR•IPV4•53『线路49』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://ls.qingting.fm/live/276.m3u8$LR•IPV4•53『线路50』 +http://bp-livetytv.bestv.cn/ch/bestvdycj.m3u8$LR•IPV4•53『线路50』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://47.104.178.59:3566/608780988$LR•IPV4•53『线路51』 +http://ls.qingting.fm/live/276.m3u8$LR•IPV4•53『线路51』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://satellitepull.cnr.cn/live/wx32dycjgb/playlist.m3u8$LR•IPV4•53『线路52』 +http://47.104.178.59:3566/608780988$LR•IPV4•53『线路52』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 https://stream1.freetv.fun/di-yi-cai-jing-2.m3u8$LR•IPV4•53『线路53』 #EXTINF:-1 tvg-id="上海纪实" tvg-name="上海纪实" group-title="上海",上海纪实 -http://iptv.huuc.edu.cn/hls/docuchina.m3u8$LR•IPV4•10『线路1』 +https://stream1.freetv.fun/ipv6-shang-hai-ji-shi-ren-wen-5.m3u8$LR•IPV4•10『线路1』 #EXTINF:-1 tvg-id="上海纪实" tvg-name="上海纪实" group-title="上海",上海纪实 -https://stream1.freetv.fun/ipv6-shang-hai-ji-shi-ren-wen-5.m3u8$LR•IPV4•10『线路2』 +https://stream1.freetv.fun/ipv6-shang-hai-ji-shi-ren-wen-1.m3u8$LR•IPV4•10『线路2』 #EXTINF:-1 tvg-id="上海纪实" tvg-name="上海纪实" group-title="上海",上海纪实 -https://stream1.freetv.fun/ipv6-shang-hai-ji-shi-ren-wen-1.m3u8$LR•IPV4•10『线路3』 +https://stream1.freetv.fun/ipv6-shang-hai-ji-shi-ren-wen-2.m3u8$LR•IPV4•10『线路3』 #EXTINF:-1 tvg-id="上海纪实" tvg-name="上海纪实" group-title="上海",上海纪实 -https://stream1.freetv.fun/ipv6-shang-hai-ji-shi-ren-wen-2.m3u8$LR•IPV4•10『线路4』 +http://iptv.huuc.edu.cn/hls/docuchina.m3u8$LR•IPV4•10『线路4』 #EXTINF:-1 tvg-id="上海纪实" tvg-name="上海纪实" group-title="上海",上海纪实 https://hls-gateway.vpstv.net/streams/709570.m3u8$LR•IPV4•10『线路5』 #EXTINF:-1 tvg-id="上海纪实" tvg-name="上海纪实" group-title="上海",上海纪实 @@ -7172,303 +7162,303 @@ http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5196&tk=23a9aca1f79f$LR•IPV4•10 #EXTINF:-1 tvg-id="上海纪实" tvg-name="上海纪实" group-title="上海",上海纪实 https://stream1.freetv.fun/shang-hai-ji-shi-ren-wen-1.m3u8$LR•IPV4•10『线路10』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream2.jlntv.cn/baicheng1/sd/live.m3u8$LR•IPV4•119『线路1』 +http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8?zzhed#http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8$LR•IPV4•119『线路1』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://live.cztv.cc:85/live/xwpd.m3u8$LR•IPV4•119『线路2』 +https://stream1.freetv.fun/xin-wen-zong-he-3.m3u8$LR•IPV4•119『线路2』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://117.156.28.119/270000001111/1110000001/index.m3u8$LR•IPV4•119『线路3』 +https://stream1.freetv.fun/xin-wen-zong-he-15.m3u8$LR•IPV4•119『线路3』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://pili-live-hls.hebitv.com/hebi/hebi.m3u8$LR•IPV4•119『线路4』 +http://150.158.112.123/公众号~玉玉软件库/mg.php?id=shxwzh$LR•IPV4•119『线路4』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream2.jlntv.cn/naxw/sd/live.m3u8$LR•IPV4•119『线路5』 +http://tvpull.dxhmt.cn:9081/tv/10326-1.m3u8$LR•IPV4•119『线路5』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://uni6rtmp.tulix.tv:1935/vbstv/vbsabr.smil/chunklist_w439903609_b1228800.m3u8$LR•IPV4•119『线路6』 +http://hlszymgsplive.miguvideo.com:8080/migu/kailu/xwzhhd265/54/20200407/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=600697&netType=0&sid=5910022325&pid=2028597139×tamp=20260710040229&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=651632657&ParentNodeID=-99&assertID=5910022325&client_ip=171.8.79.254&SecurityKey=20260710040229&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=a2ca4a1f84e955c93f655153a2b187c0&sv=10004&ct=android$LR•IPV4•119『线路6』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://221.5.213.4:30000/1111.m3u8$LR•IPV4•119『线路7』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2441&tk=e640d0a1bf70$LR•IPV4•119『线路7』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream2.jlntv.cn/jilin1/sd/live.m3u8$LR•IPV4•119『线路8』 +https://stream1.freetv.fun/ipv6-xin-wen-zong-he-7.m3u8$LR•IPV4•119『线路8』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://30515.hlsplay.aodianyun.com/lms_30515/tv_channel_239.m3u8$LR•IPV4•119『线路9』 +https://stream1.freetv.fun/xin-wen-zong-he-2.m3u8$LR•IPV4•119『线路9』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream2.jlntv.cn/sptv/sd/live.m3u8$LR•IPV4•119『线路10』 +https://mgtv.ottiptv.cc/migu/651632657.m3u8?migutoken=348c9164063c2b1df215dd2fa7cd92cb119d8a335ae0edfb5d615a6c714e71b669eee2f5ff1730afa92af7ca41d0aa96e3a280d7e5f2069eb8a3b852f3ebc270147489d7c8bfb08a7c4b9c4d80$LR•IPV4•119『线路10』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://live.ahsz.tv/video/s10001-szzh/index.m3u8$LR•IPV4•119『线路11』 +http://bp-livetytv.bestv.cn/ch/bestvxwzh.m3u8$LR•IPV4•119『线路11』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://guangshui.live.tempsource.cjyun.org/videotmp/s10146-GSXW.m3u8$LR•IPV4•119『线路12』 +https://stream1.freetv.fun/xin-wen-zong-he-14.m3u8$LR•IPV4•119『线路12』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream2.jlntv.cn/jlyb/sd/live.m3u8$LR•IPV4•119『线路13』 +http://t.061899.xyz/tl/tl.php?id=shxwzh$LR•IPV4•119『线路13』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream2.jlntv.cn/sytv/sd/live.m3u8$LR•IPV4•119『线路14』 +https://stream1.freetv.fun/ipv6-xin-wen-zong-he-14.m3u8$LR•IPV4•119『线路14』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://222.179.155.21:1935/ch1.m3u8$LR•IPV4•119『线路15』 +https://stream1.freetv.fun/xin-wen-zong-he-9.m3u8$LR•IPV4•119『线路15』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://117.172.215.250:8083/videos/live/35/39/GQVbrgob5CGJM/GQVbrgob5CGJM.m3u8$LR•IPV4•119『线路16』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0708&tk=23a9aca1f79f$LR•IPV4•119『线路16』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://220.180.110.101:8083/videos/live/36/57/hwEHU4UVQ1Iv5/hwEHU4UVQ1Iv5.m3u8$LR•IPV4•119『线路17』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0610&tk=b53028476470$LR•IPV4•119『线路17』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://live.hnxttv.com:9601/live/xwzh/800K/tzwj_video.m3u8$LR•IPV4•119『线路18』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2865&tk=f6cc1e0a0e1a$LR•IPV4•119『线路18』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://stream.bzcm.net/2/sd/live.m3u8$LR•IPV4•119『线路19』 +https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-6.m3u8$LR•IPV4•119『线路19』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://117.156.28.119/270000001111/1110000145/index.m3u8$LR•IPV4•119『线路20』 +https://www.freetv.top/migu/651632657.m3u8?migutoken=b4a3e55048f55ec1c8fc5b509fbdf32f2dc5d255f5f218e79e84ca9a87fb9f2239927cb11b448f18285b50b81b4cd50a1354e9be5a3283375e85372798c3f3eb3ad60adf45eb5615f68eb4825f$LR•IPV4•119『线路20』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream2.jlntv.cn/baishan1/sd/live.m3u8$LR•IPV4•119『线路21』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5985&tk=e640d0a1bf70$LR•IPV4•119『线路21』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://live1.wuhubtv.com/channel1/sd/live.m3u8$LR•IPV4•119『线路22』 +https://m3u8-channel.lytv.tv/nmip-media/channellive/channel111841/playlist.m3u8$LR•IPV4•119『线路22』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://palive.patv123.com:8091/live/xwpd_800K.m3u8$LR•IPV4•119『线路23』 +https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-10.m3u8$LR•IPV4•119『线路23』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream2.jlntv.cn/liaoyuan1/sd/live.m3u8$LR•IPV4•119『线路24』 +http://live.wanyuannews.com/wytv/hd/live.m3u8?zsicd$LR•IPV4•119『线路24』 #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•119『线路25』 +https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-3.m3u8$LR•IPV4•119『线路25』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/ji-nan-xin-wen-zong-he-7.m3u8$LR•IPV4•119『线路26』 +https://xatv-yt.xiancity.cn/live/1/index.m3u8$LR•IPV4•119『线路26』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/ipv6-ji-nan-xin-wen-zong-he-8.m3u8$LR•IPV4•119『线路27』 +http://123.113.205.253:3000/651632657$LR•IPV4•119『线路27』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://stream.zztvzd.com/1/sd/live.m3u8$LR•IPV4•119『线路28』 +https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-2.m3u8$LR•IPV4•119『线路28』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://stream.zztvzd.com/1/sd/live.m3u8?shandd$LR•IPV4•119『线路29』 +https://stream1.freetv.fun/xin-wen-zong-he-1.ctv$LR•IPV4•119『线路29』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/ipv6-wei-fang-xin-wen-zong-he-1.m3u8$LR•IPV4•119『线路30』 +https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-12.m3u8$LR•IPV4•119『线路30』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/ipv6-wei-fang-xin-wen-zong-he-2.m3u8$LR•IPV4•119『线路31』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2394&tk=e503191f8e20$LR•IPV4•119『线路31』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://live.yantaitv.cn/live/3e81a8879da44c5dadf3bd9c10468e1c/9b776d420ee4438199b7657c8eb88f07-1.m3u8$LR•IPV4•119『线路32』 +https://t.freetv.fun/live/shang-hai-xin-wen-zong-he-4.m3u8$LR•IPV4•119『线路32』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://live.hznet.tv:1935/live/live1/500k/tzwj_video.m3u8$LR•IPV4•119『线路33』 +http://115.190.247.176:1111/651632657$LR•IPV4•119『线路33』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://live.hznet.tv:1935/live/live1/500K/tzwj_video.m3u8?shandd$LR•IPV4•119『线路34』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2810&tk=a0c4f6cfaba3$LR•IPV4•119『线路34』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/xin-wen-zong-he-3.m3u8$LR•IPV4•119『线路35』 +https://www.freetv.top/migu/651632657.m3u8?migutoken=5ae42e8fda034ab7bf5171dafa0043e70cd12bcd716940c4572fde52ea92b0785f16f1bdbce4c83f5e075b250fe95668f19f8527dda57c27db24f95d412614d99c86a3a2d9341d88b5224b7068$LR•IPV4•119『线路35』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/xin-wen-zong-he-15.m3u8$LR•IPV4•119『线路36』 +https://hls-gateway.vpstv.net/streams/708847.m3u8$LR•IPV4•119『线路36』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://150.158.112.123/公众号~玉玉软件库/mg.php?id=shxwzh$LR•IPV4•119『线路37』 +https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-7.m3u8$LR•IPV4•119『线路37』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://tvpull.dxhmt.cn:9081/tv/10326-1.m3u8$LR•IPV4•119『线路38』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5599&tk=2aca1ad9a849$LR•IPV4•119『线路38』 #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=20260710040229&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=651632657&ParentNodeID=-99&assertID=5910022325&client_ip=171.8.79.254&SecurityKey=20260710040229&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=a2ca4a1f84e955c93f655153a2b187c0&sv=10004&ct=android$LR•IPV4•119『线路39』 +https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-1.m3u8$LR•IPV4•119『线路39』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2441&tk=e640d0a1bf70$LR•IPV4•119『线路40』 +https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-3.m3u8$LR•IPV4•119『线路40』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/ipv6-xin-wen-zong-he-7.m3u8$LR•IPV4•119『线路41』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5014&tk=a0c4f6cfaba3$LR•IPV4•119『线路41』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/xin-wen-zong-he-2.m3u8$LR•IPV4•119『线路42』 +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•119『线路42』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://mgtv.ottiptv.cc/migu/651632657.m3u8?migutoken=348c9164063c2b1df215dd2fa7cd92cb119d8a335ae0edfb5d615a6c714e71b669eee2f5ff1730afa92af7ca41d0aa96e3a280d7e5f2069eb8a3b852f3ebc270147489d7c8bfb08a7c4b9c4d80$LR•IPV4•119『线路43』 +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•119『线路43』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://bp-livetytv.bestv.cn/ch/bestvxwzh.m3u8$LR•IPV4•119『线路44』 +https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-2.m3u8$LR•IPV4•119『线路44』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/xin-wen-zong-he-14.m3u8$LR•IPV4•119『线路45』 +https://stream1.freetv.fun/xin-wen-zong-he-11.ctv$LR•IPV4•119『线路45』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://t.061899.xyz/tl/tl.php?id=shxwzh$LR•IPV4•119『线路46』 +https://m3u8channel.yunxya.com/nmip-media/channellive/channel100028/playlist.m3u8$LR•IPV4•119『线路46』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/ipv6-xin-wen-zong-he-14.m3u8$LR•IPV4•119『线路47』 +http://111.228.4.117:6789/migu720p.php?id=651632657$LR•IPV4•119『线路47』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/xin-wen-zong-he-9.m3u8$LR•IPV4•119『线路48』 +https://zby.130519.xyz/PLTV/11/224/3221226136/index.m3u8$LR•IPV4•119『线路48』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0708&tk=23a9aca1f79f$LR•IPV4•119『线路49』 +http://api3.52tb.xyz/info?id=371&token=20221127jxwhhemby$LR•IPV4•119『线路49』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0610&tk=b53028476470$LR•IPV4•119『线路50』 +https://stream1.freetv.fun/xin-wen-zong-he-5.m3u8$LR•IPV4•119『线路50』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2865&tk=f6cc1e0a0e1a$LR•IPV4•119『线路51』 +https://tvfile.scjgtv.cn:443/nmip-media/channellive/channel104126/playlist.m3u8"$LR•IPV4•119『线路51』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-6.m3u8$LR•IPV4•119『线路52』 +https://stream1.freetv.fun/xin-wen-zong-he-13.m3u8$LR•IPV4•119『线路52』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://www.freetv.top/migu/651632657.m3u8?migutoken=b4a3e55048f55ec1c8fc5b509fbdf32f2dc5d255f5f218e79e84ca9a87fb9f2239927cb11b448f18285b50b81b4cd50a1354e9be5a3283375e85372798c3f3eb3ad60adf45eb5615f68eb4825f$LR•IPV4•119『线路53』 +http://mgsp-yx2.live.miguvideo.com:8088/migu/kailu/xwzhhd265/54/20200407/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=600697&netType=0&sid=5910022325&pid=2028597139×tamp=20260710080234&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=651632657&ParentNodeID=-99&assertID=5910022325&client_ip=171.8.79.254&SecurityKey=20260710080234&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=34511b5d9e559b32e1fcf280f128d445&sv=10004&ct=android$LR•IPV4•119『线路53』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5985&tk=e640d0a1bf70$LR•IPV4•119『线路54』 +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•119『线路54』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://m3u8-channel.lytv.tv/nmip-media/channellive/channel111841/playlist.m3u8$LR•IPV4•119『线路55』 +https://stream1.freetv.fun/ipv6-xin-wen-zong-he-10.m3u8$LR•IPV4•119『线路55』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-10.m3u8$LR•IPV4•119『线路56』 +https://live.pzhkai.com/xwzhtl/sd/live.m3u8$LR•IPV4•119『线路56』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://live.wanyuannews.com/wytv/hd/live.m3u8?zsicd$LR•IPV4•119『线路57』 +https://qcfile.qcrmt.com/nmip-media/channellive/channel100933/playlist.m3u8$LR•IPV4•119『线路57』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-3.m3u8$LR•IPV4•119『线路58』 +http://api2.52tb.xyz/info?id=371&token=20230218qkyjia$LR•IPV4•119『线路58』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://xatv-yt.xiancity.cn/live/1/index.m3u8$LR•IPV4•119『线路59』 +http://43.251.226.89:8080/play/57.m3u8$LR•IPV4•119『线路59』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://123.113.205.253:3000/651632657$LR•IPV4•119『线路60』 +http://p2.vzan.com/slowlive/596867413819827251/live.m3u8$LR•IPV4•119『线路60』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-2.m3u8$LR•IPV4•119『线路61』 +http://47.104.178.59:3566/651632657$LR•IPV4•119『线路61』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/xin-wen-zong-he-1.ctv$LR•IPV4•119『线路62』 +https://cm-live.ntjoy.com/live/4f1.m3u8$LR•IPV4•119『线路62』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-12.m3u8$LR•IPV4•119『线路63』 +https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-8.m3u8$LR•IPV4•119『线路63』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2394&tk=e503191f8e20$LR•IPV4•119『线路64』 +http://116.52.173.34:1234/651632657$LR•IPV4•119『线路64』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://t.freetv.fun/live/shang-hai-xin-wen-zong-he-4.m3u8$LR•IPV4•119『线路65』 +http://stream8.jlntv.cn/shulan/sd/live.m3u8?_upt=332db6421699196585$LR•IPV4•119『线路65』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://115.190.247.176:1111/651632657$LR•IPV4•119『线路66』 +http://stream5.jlntv.cn/hn/sd/live.m3u8$LR•IPV4•119『线路66』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2810&tk=a0c4f6cfaba3$LR•IPV4•119『线路67』 +http://pili-live-hls.ybcxjd.com/jdh-live/2108111201035597.m3u8?zsicd$LR•IPV4•119『线路67』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://www.freetv.top/migu/651632657.m3u8?migutoken=5ae42e8fda034ab7bf5171dafa0043e70cd12bcd716940c4572fde52ea92b0785f16f1bdbce4c83f5e075b250fe95668f19f8527dda57c27db24f95d412614d99c86a3a2d9341d88b5224b7068$LR•IPV4•119『线路68』 +http://live.spccmc.com:90/live/spxwzh.m3u8?zsicd$LR•IPV4•119『线路68』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://hls-gateway.vpstv.net/streams/708847.m3u8$LR•IPV4•119『线路69』 +http://live.iwcmt.cn:90/live/zhxw.m3u8$LR•IPV4•119『线路69』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-7.m3u8$LR•IPV4•119『线路70』 +http://live.jinchuanrmt.com:90/live/zhxw.m3u8?zsicd$LR•IPV4•119『线路70』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5599&tk=2aca1ad9a849$LR•IPV4•119『线路71』 +https://play.yunxya.com/channellive/xinwen.m3u8$LR•IPV4•119『线路71』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-1.m3u8$LR•IPV4•119『线路72』 +http://ls.qingting.fm/live/267.m3u8$LR•IPV4•119『线路72』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-3.m3u8$LR•IPV4•119『线路73』 +http://hslive.hsnewsnet.com/lsdream/hve9Wjs/1000/live.m3u8$LR•IPV4•119『线路73』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5014&tk=a0c4f6cfaba3$LR•IPV4•119『线路74』 +https://p2.vzan.com/slowlive/596867413819827251/live.m3u8?zbid=1725814272&tpid=1516989100&type=0$LR•IPV4•119『线路74』 #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•119『线路75』 +https://tntgjhjb.live.sxmty.com/live/hls/3a4585ac11ec4e1bb07b419101b370c3/baf63e2b313440c2a25d7859f9b73b05-1.m3u8?zshanxd$LR•IPV4•119『线路75』 #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•119『线路76』 +http://uzoiczhh.live.sxmty.com/live/hls/0d41f1480c4042d49927858f01fde707/53130407737b417b9a6259b57246bae3.m3u8?zshanxd$LR•IPV4•119『线路76』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-2.m3u8$LR•IPV4•119『线路77』 +https://ls.qingting.fm/live/5043/64k.m3u8$LR•IPV4•119『线路77』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/xin-wen-zong-he-11.ctv$LR•IPV4•119『线路78』 +http://liveout.btzx.com.cn/62ds9e/4nxdih.m3u8?fbl=$LR•IPV4•119『线路78』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://m3u8channel.yunxya.com/nmip-media/channellive/channel100028/playlist.m3u8$LR•IPV4•119『线路79』 +http://nklive.nbs.cn/hls/d511bc9d-a694-4453-b3a2-4fc842cc97a1/index.m3u8$LR•IPV4•119『线路79』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://111.228.4.117:6789/migu720p.php?id=651632657$LR•IPV4•119『线路80』 +http://cm-wshls.homecdn.com/live/2aa50.m3u8$LR•IPV4•119『线路80』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://zby.130519.xyz/PLTV/11/224/3221226136/index.m3u8$LR•IPV4•119『线路81』 +http://ls.qingting.fm/live/23797.m3u8$LR•IPV4•119『线路81』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://api3.52tb.xyz/info?id=371&token=20221127jxwhhemby$LR•IPV4•119『线路82』 +https://play.kankanlive.com/live/1720583434627241.m3u8$LR•IPV4•119『线路82』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/xin-wen-zong-he-5.m3u8$LR•IPV4•119『线路83』 +https://ls.qingting.fm/live/5022100/64k.m3u8$LR•IPV4•119『线路83』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://tvfile.scjgtv.cn:443/nmip-media/channellive/channel104126/playlist.m3u8"$LR•IPV4•119『线路84』 +https://liveout.xntv.tv/a65jur/96iln2.m3u8?zqinghd$LR•IPV4•119『线路84』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/xin-wen-zong-he-13.m3u8$LR•IPV4•119『线路85』 +http://live.qthnews.org.cn:1935/live/live1/800k/tzwj_video.m3u8$LR•IPV4•119『线路85』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://mgsp-yx2.live.miguvideo.com:8088/migu/kailu/xwzhhd265/54/20200407/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=600697&netType=0&sid=5910022325&pid=2028597139×tamp=20260710080234&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=651632657&ParentNodeID=-99&assertID=5910022325&client_ip=171.8.79.254&SecurityKey=20260710080234&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=34511b5d9e559b32e1fcf280f128d445&sv=10004&ct=android$LR•IPV4•119『线路86』 +http://stream.hrbtv.net/xwzh/sd/live.m3u8?zheild$LR•IPV4•119『线路86』 #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•119『线路87』 +https://stream1.freetv.fun/ji-nan-xin-wen-zong-he-7.m3u8$LR•IPV4•119『线路87』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/ipv6-xin-wen-zong-he-10.m3u8$LR•IPV4•119『线路88』 +https://stream1.freetv.fun/ipv6-ji-nan-xin-wen-zong-he-8.m3u8$LR•IPV4•119『线路88』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://live.pzhkai.com/xwzhtl/sd/live.m3u8$LR•IPV4•119『线路89』 +http://stream.zztvzd.com/1/sd/live.m3u8$LR•IPV4•119『线路89』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://qcfile.qcrmt.com/nmip-media/channellive/channel100933/playlist.m3u8$LR•IPV4•119『线路90』 +http://stream.zztvzd.com/1/sd/live.m3u8?shandd$LR•IPV4•119『线路90』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://api2.52tb.xyz/info?id=371&token=20230218qkyjia$LR•IPV4•119『线路91』 +https://stream1.freetv.fun/ipv6-wei-fang-xin-wen-zong-he-1.m3u8$LR•IPV4•119『线路91』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://43.251.226.89:8080/play/57.m3u8$LR•IPV4•119『线路92』 +https://stream1.freetv.fun/ipv6-wei-fang-xin-wen-zong-he-2.m3u8$LR•IPV4•119『线路92』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://p2.vzan.com/slowlive/596867413819827251/live.m3u8$LR•IPV4•119『线路93』 +http://live.yantaitv.cn/live/3e81a8879da44c5dadf3bd9c10468e1c/9b776d420ee4438199b7657c8eb88f07-1.m3u8$LR•IPV4•119『线路93』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://47.104.178.59:3566/651632657$LR•IPV4•119『线路94』 +http://live.hznet.tv:1935/live/live1/500k/tzwj_video.m3u8$LR•IPV4•119『线路94』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://cm-live.ntjoy.com/live/4f1.m3u8$LR•IPV4•119『线路95』 +http://live.hznet.tv:1935/live/live1/500K/tzwj_video.m3u8?shandd$LR•IPV4•119『线路95』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-8.m3u8$LR•IPV4•119『线路96』 +https://stream2.jlntv.cn/baicheng1/sd/live.m3u8$LR•IPV4•119『线路96』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://116.52.173.34:1234/651632657$LR•IPV4•119『线路97』 +http://live.cztv.cc:85/live/xwpd.m3u8$LR•IPV4•119『线路97』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://stream8.jlntv.cn/shulan/sd/live.m3u8?_upt=332db6421699196585$LR•IPV4•119『线路98』 +http://117.156.28.119/270000001111/1110000001/index.m3u8$LR•IPV4•119『线路98』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://stream5.jlntv.cn/hn/sd/live.m3u8$LR•IPV4•119『线路99』 +http://pili-live-hls.hebitv.com/hebi/hebi.m3u8$LR•IPV4•119『线路99』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://pili-live-hls.ybcxjd.com/jdh-live/2108111201035597.m3u8?zsicd$LR•IPV4•119『线路100』 +https://stream2.jlntv.cn/naxw/sd/live.m3u8$LR•IPV4•119『线路100』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://live.spccmc.com:90/live/spxwzh.m3u8?zsicd$LR•IPV4•119『线路101』 +http://uni6rtmp.tulix.tv:1935/vbstv/vbsabr.smil/chunklist_w439903609_b1228800.m3u8$LR•IPV4•119『线路101』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://live.iwcmt.cn:90/live/zhxw.m3u8$LR•IPV4•119『线路102』 +http://221.5.213.4:30000/1111.m3u8$LR•IPV4•119『线路102』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://live.jinchuanrmt.com:90/live/zhxw.m3u8?zsicd$LR•IPV4•119『线路103』 +https://stream2.jlntv.cn/jilin1/sd/live.m3u8$LR•IPV4•119『线路103』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://play.yunxya.com/channellive/xinwen.m3u8$LR•IPV4•119『线路104』 +http://30515.hlsplay.aodianyun.com/lms_30515/tv_channel_239.m3u8$LR•IPV4•119『线路104』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://ls.qingting.fm/live/267.m3u8$LR•IPV4•119『线路105』 +https://stream2.jlntv.cn/sptv/sd/live.m3u8$LR•IPV4•119『线路105』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://hslive.hsnewsnet.com/lsdream/hve9Wjs/1000/live.m3u8$LR•IPV4•119『线路106』 +http://live.ahsz.tv/video/s10001-szzh/index.m3u8$LR•IPV4•119『线路106』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://p2.vzan.com/slowlive/596867413819827251/live.m3u8?zbid=1725814272&tpid=1516989100&type=0$LR•IPV4•119『线路107』 +http://guangshui.live.tempsource.cjyun.org/videotmp/s10146-GSXW.m3u8$LR•IPV4•119『线路107』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://tntgjhjb.live.sxmty.com/live/hls/3a4585ac11ec4e1bb07b419101b370c3/baf63e2b313440c2a25d7859f9b73b05-1.m3u8?zshanxd$LR•IPV4•119『线路108』 +https://stream2.jlntv.cn/jlyb/sd/live.m3u8$LR•IPV4•119『线路108』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://uzoiczhh.live.sxmty.com/live/hls/0d41f1480c4042d49927858f01fde707/53130407737b417b9a6259b57246bae3.m3u8?zshanxd$LR•IPV4•119『线路109』 +https://stream2.jlntv.cn/sytv/sd/live.m3u8$LR•IPV4•119『线路109』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://ls.qingting.fm/live/5043/64k.m3u8$LR•IPV4•119『线路110』 +http://222.179.155.21:1935/ch1.m3u8$LR•IPV4•119『线路110』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://liveout.btzx.com.cn/62ds9e/4nxdih.m3u8?fbl=$LR•IPV4•119『线路111』 +http://117.172.215.250:8083/videos/live/35/39/GQVbrgob5CGJM/GQVbrgob5CGJM.m3u8$LR•IPV4•119『线路111』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://nklive.nbs.cn/hls/d511bc9d-a694-4453-b3a2-4fc842cc97a1/index.m3u8$LR•IPV4•119『线路112』 +http://220.180.110.101:8083/videos/live/36/57/hwEHU4UVQ1Iv5/hwEHU4UVQ1Iv5.m3u8$LR•IPV4•119『线路112』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://cm-wshls.homecdn.com/live/2aa50.m3u8$LR•IPV4•119『线路113』 +http://live.hnxttv.com:9601/live/xwzh/800K/tzwj_video.m3u8$LR•IPV4•119『线路113』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://ls.qingting.fm/live/23797.m3u8$LR•IPV4•119『线路114』 +http://stream.bzcm.net/2/sd/live.m3u8$LR•IPV4•119『线路114』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://play.kankanlive.com/live/1720583434627241.m3u8$LR•IPV4•119『线路115』 +http://117.156.28.119/270000001111/1110000145/index.m3u8$LR•IPV4•119『线路115』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://ls.qingting.fm/live/5022100/64k.m3u8$LR•IPV4•119『线路116』 +https://stream2.jlntv.cn/baishan1/sd/live.m3u8$LR•IPV4•119『线路116』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://liveout.xntv.tv/a65jur/96iln2.m3u8?zqinghd$LR•IPV4•119『线路117』 +http://live1.wuhubtv.com/channel1/sd/live.m3u8$LR•IPV4•119『线路117』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://live.qthnews.org.cn:1935/live/live1/800k/tzwj_video.m3u8$LR•IPV4•119『线路118』 +http://palive.patv123.com:8091/live/xwpd_800K.m3u8$LR•IPV4•119『线路118』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://stream.hrbtv.net/xwzh/sd/live.m3u8?zheild$LR•IPV4•119『线路119』 +https://stream2.jlntv.cn/liaoyuan1/sd/live.m3u8$LR•IPV4•119『线路119』 #EXTINF:-1 tvg-id="西安新闻" tvg-name="西安新闻" group-title="陕西",西安新闻 -http://stream2.xiancity.cn/xatv1/playlist.m3u8$LR•IPV4•2『线路1』 +http://112.46.105.20:8009/hls/28/index.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』 +http://stream2.xiancity.cn/xatv1/playlist.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="山东少儿" tvg-name="山东少儿" group-title="山东",山东少儿 -http://livealone302.iqilu.com/iqilu/sepd.m3u8$LR•IPV4•16『线路1』 +https://stream1.freetv.fun/shan-dong-shao-er-10.m3u8$LR•IPV4•16『线路1』 #EXTINF:-1 tvg-id="山东少儿" tvg-name="山东少儿" group-title="山东",山东少儿 -https://stream1.freetv.fun/shan-dong-shao-er-10.m3u8$LR•IPV4•16『线路2』 +https://stream1.freetv.fun/shan-dong-shao-er-7.m3u8$LR•IPV4•16『线路2』 #EXTINF:-1 tvg-id="山东少儿" tvg-name="山东少儿" group-title="山东",山东少儿 -https://stream1.freetv.fun/shan-dong-shao-er-7.m3u8$LR•IPV4•16『线路3』 +https://stream1.freetv.fun/shan-dong-shao-er-8.m3u8$LR•IPV4•16『线路3』 #EXTINF:-1 tvg-id="山东少儿" tvg-name="山东少儿" group-title="山东",山东少儿 -https://stream1.freetv.fun/shan-dong-shao-er-8.m3u8$LR•IPV4•16『线路4』 +http://58.57.40.22:9901/tsfile/live/1024_1.m3u8$LR•IPV4•16『线路4』 #EXTINF:-1 tvg-id="山东少儿" tvg-name="山东少儿" group-title="山东",山东少儿 -http://58.57.40.22:9901/tsfile/live/1024_1.m3u8$LR•IPV4•16『线路5』 +http://111.14.181.15:9901/tsfile/live/1005_1.m3u8?key=tvbox6_com&playlive=1&authid=0$LR•IPV4•16『线路5』 #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『线路6』 +https://stream1.freetv.fun/shan-dong-shao-er-9.m3u8$LR•IPV4•16『线路6』 #EXTINF:-1 tvg-id="山东少儿" tvg-name="山东少儿" group-title="山东",山东少儿 -https://stream1.freetv.fun/shan-dong-shao-er-9.m3u8$LR•IPV4•16『线路7』 +https://stream1.freetv.fun/shan-dong-shao-er-6.m3u8$LR•IPV4•16『线路7』 #EXTINF:-1 tvg-id="山东少儿" tvg-name="山东少儿" group-title="山东",山东少儿 -https://stream1.freetv.fun/shan-dong-shao-er-6.m3u8$LR•IPV4•16『线路8』 +http://111.14.181.15:9901/tsfile/live/1005_1.m3u8$LR•IPV4•16『线路8』 #EXTINF:-1 tvg-id="山东少儿" tvg-name="山东少儿" group-title="山东",山东少儿 -http://111.14.181.15:9901/tsfile/live/1005_1.m3u8$LR•IPV4•16『线路9』 +https://stream1.freetv.fun/shan-dong-shao-er-5.m3u8$LR•IPV4•16『线路9』 #EXTINF:-1 tvg-id="山东少儿" tvg-name="山东少儿" group-title="山东",山东少儿 -https://stream1.freetv.fun/shan-dong-shao-er-5.m3u8$LR•IPV4•16『线路10』 +https://stream1.freetv.fun/shan-dong-shao-er-1.m3u8$LR•IPV4•16『线路10』 #EXTINF:-1 tvg-id="山东少儿" tvg-name="山东少儿" group-title="山东",山东少儿 -https://stream1.freetv.fun/shan-dong-shao-er-1.m3u8$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』 +http://123.132.233.194:352/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路12』 #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『线路13』 +https://stream1.freetv.fun/shan-dong-shao-er-4.m3u8$LR•IPV4•16『线路13』 #EXTINF:-1 tvg-id="山东少儿" tvg-name="山东少儿" group-title="山东",山东少儿 -https://stream1.freetv.fun/shan-dong-shao-er-4.m3u8$LR•IPV4•16『线路14』 +http://221.2.148.205:8154/tsfile/live/1007_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路14』 #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『线路15』 +http://123.129.70.178:9901/tsfile/live/1004_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路15』 #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『线路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』 +http://live.xmcdn.com/live/1440/64.m3u8$LR•IPV4•12『线路1』 #EXTINF:-1 tvg-id="山东新闻" tvg-name="山东新闻" group-title="山东",山东新闻 -http://live.xmcdn.com/live/1440/64.m3u8$LR•IPV4•12『线路2』 +https://stream1.freetv.fun/shan-dong-xin-wen-7.m3u8$LR•IPV4•12『线路2』 #EXTINF:-1 tvg-id="山东新闻" tvg-name="山东新闻" group-title="山东",山东新闻 -https://stream1.freetv.fun/shan-dong-xin-wen-7.m3u8$LR•IPV4•12『线路3』 +https://stream1.freetv.fun/shan-dong-xin-wen-3.m3u8$LR•IPV4•12『线路3』 #EXTINF:-1 tvg-id="山东新闻" tvg-name="山东新闻" group-title="山东",山东新闻 -https://stream1.freetv.fun/shan-dong-xin-wen-3.m3u8$LR•IPV4•12『线路4』 +https://stream1.freetv.fun/shan-dong-xin-wen-10.m3u8$LR•IPV4•12『线路4』 #EXTINF:-1 tvg-id="山东新闻" tvg-name="山东新闻" group-title="山东",山东新闻 -https://stream1.freetv.fun/shan-dong-xin-wen-10.m3u8$LR•IPV4•12『线路5』 +https://stream1.freetv.fun/shan-dong-xin-wen-4.m3u8$LR•IPV4•12『线路5』 #EXTINF:-1 tvg-id="山东新闻" tvg-name="山东新闻" group-title="山东",山东新闻 -https://stream1.freetv.fun/shan-dong-xin-wen-4.m3u8$LR•IPV4•12『线路6』 +https://stream1.freetv.fun/shan-dong-xin-wen-6.m3u8$LR•IPV4•12『线路6』 #EXTINF:-1 tvg-id="山东新闻" tvg-name="山东新闻" group-title="山东",山东新闻 -https://stream1.freetv.fun/shan-dong-xin-wen-6.m3u8$LR•IPV4•12『线路7』 +https://stream1.freetv.fun/shan-dong-xin-wen-2.m3u8$LR•IPV4•12『线路7』 #EXTINF:-1 tvg-id="山东新闻" tvg-name="山东新闻" group-title="山东",山东新闻 -https://stream1.freetv.fun/shan-dong-xin-wen-2.m3u8$LR•IPV4•12『线路8』 +https://stream1.freetv.fun/shan-dong-xin-wen-1.m3u8$LR•IPV4•12『线路8』 #EXTINF:-1 tvg-id="山东新闻" tvg-name="山东新闻" group-title="山东",山东新闻 -https://stream1.freetv.fun/shan-dong-xin-wen-1.m3u8$LR•IPV4•12『线路9』 +http://221.2.148.205:8154/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路9』 #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『线路10』 +http://123.129.70.178:9901/tsfile/live/1000_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路10』 #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『线路11』 +http://ls.qingting.fm/live/60180.m3u8$LR•IPV4•12『线路11』 #EXTINF:-1 tvg-id="山东新闻" tvg-name="山东新闻" group-title="山东",山东新闻 -http://ls.qingting.fm/live/60180.m3u8$LR•IPV4•12『线路12』 +http://livealone302.iqilu.com/iqilu/ggpd.m3u8$LR•IPV4•12『线路12』 #EXTINF:-1 tvg-id="山东教育" tvg-name="山东教育" group-title="山东",山东教育 https://test1.live.sdetv.com.cn/live/dianshizhibo/playlist.m3u8$LR•IPV4•22『线路1』 #EXTINF:-1 tvg-id="山东教育" tvg-name="山东教育" group-title="山东",山东教育 @@ -7514,89 +7504,89 @@ 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://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000004097&livemode=1&stbId=yu&mode=1&$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://123.130.84.106:8154/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路1』 #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『线路2』 +http://123.129.70.178:9901/tsfile/live/0019_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路2』 #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『线路3』 +http://221.2.148.205:8154/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路3』 #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『线路4』 +http://111.14.181.15:9901/tsfile/live/1000_1.m3u8?key=tvbox6_com&playlive=1&authid=0$LR•IPV4•10『线路4』 #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『线路5』 +http://123.132.233.194:352/tsfile/live/1019_1.m3u8$LR•IPV4•10『线路5』 #EXTINF:-1 tvg-id="山东齐鲁" tvg-name="山东齐鲁" group-title="山东",山东齐鲁 -http://123.132.233.194:352/tsfile/live/1019_1.m3u8$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://61.156.228.12:8154/tsfile/live/1001_1.m3u8$LR•IPV4•10『线路7』 #EXTINF:-1 tvg-id="山东齐鲁" tvg-name="山东齐鲁" group-title="山东",山东齐鲁 -http://61.156.228.12:8154/tsfile/live/1001_1.m3u8$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://111.14.181.15:9901/tsfile/live/1000_1.m3u8$LR•IPV4•10『线路9』 #EXTINF:-1 tvg-id="山东齐鲁" tvg-name="山东齐鲁" group-title="山东",山东齐鲁 -http://111.14.181.15:9901/tsfile/live/1000_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://ls.qingting.fm/live/60260.m3u8$LR•IPV4•7『线路1』 #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『线路2』 #EXTINF:-1 tvg-id="山东生活" tvg-name="山东生活" group-title="山东",山东生活 -http://ls.qingting.fm/live/60260.m3u8$LR•IPV4•7『线路3』 +http://58.57.40.22:9901/tsfile/live/1018_1.m3u8$LR•IPV4•7『线路3』 #EXTINF:-1 tvg-id="山东生活" tvg-name="山东生活" group-title="山东",山东生活 -http://58.57.40.22:9901/tsfile/live/1018_1.m3u8$LR•IPV4•7『线路4』 +http://123.129.70.178:9901/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•7『线路4』 #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『线路5』 +http://api3.52tb.xyz/info?id=527&token=20221127jxwhhemby$LR•IPV4•7『线路5』 #EXTINF:-1 tvg-id="山东生活" tvg-name="山东生活" group-title="山东",山东生活 -http://api3.52tb.xyz/info?id=527&token=20221127jxwhhemby$LR•IPV4•7『线路6』 +http://live.xmcdn.com/live/802/64.m3u8$LR•IPV4•7『线路6』 #EXTINF:-1 tvg-id="山东生活" tvg-name="山东生活" group-title="山东",山东生活 -http://live.xmcdn.com/live/802/64.m3u8$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://123.129.70.178:9901/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•37『线路1』 #EXTINF:-1 tvg-id="山东体育" tvg-name="山东体育" group-title="山东",山东体育 -http://123.129.70.178:9901/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•37『线路2』 +https://stream1.freetv.fun/shan-dong-ti-yu-4.m3u8$LR•IPV4•37『线路2』 #EXTINF:-1 tvg-id="山东体育" tvg-name="山东体育" group-title="山东",山东体育 -https://stream1.freetv.fun/shan-dong-ti-yu-4.m3u8$LR•IPV4•37『线路3』 +https://stream1.freetv.fun/shan-dong-ti-yu-9.m3u8$LR•IPV4•37『线路3』 #EXTINF:-1 tvg-id="山东体育" tvg-name="山东体育" group-title="山东",山东体育 -https://stream1.freetv.fun/shan-dong-ti-yu-9.m3u8$LR•IPV4•37『线路4』 +http://123.132.233.194:352/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•37『线路4』 #EXTINF:-1 tvg-id="山东体育" tvg-name="山东体育" group-title="山东",山东体育 -http://123.132.233.194:352/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•37『线路5』 +https://stream1.freetv.fun/shan-dong-ti-yu-10.m3u8$LR•IPV4•37『线路5』 #EXTINF:-1 tvg-id="山东体育" tvg-name="山东体育" group-title="山东",山东体育 -https://stream1.freetv.fun/shan-dong-ti-yu-10.m3u8$LR•IPV4•37『线路6』 +https://stream1.freetv.fun/shan-dong-ti-yu-2.m3u8$LR•IPV4•37『线路6』 #EXTINF:-1 tvg-id="山东体育" tvg-name="山东体育" group-title="山东",山东体育 -https://stream1.freetv.fun/shan-dong-ti-yu-2.m3u8$LR•IPV4•37『线路7』 +https://stream1.freetv.fun/shan-dong-ti-yu-15.m3u8$LR•IPV4•37『线路7』 #EXTINF:-1 tvg-id="山东体育" tvg-name="山东体育" group-title="山东",山东体育 -https://stream1.freetv.fun/shan-dong-ti-yu-15.m3u8$LR•IPV4•37『线路8』 +https://stream1.freetv.fun/shan-dong-ti-yu-1.m3u8$LR•IPV4•37『线路8』 #EXTINF:-1 tvg-id="山东体育" tvg-name="山东体育" group-title="山东",山东体育 -https://stream1.freetv.fun/shan-dong-ti-yu-1.m3u8$LR•IPV4•37『线路9』 +http://123.130.84.106:8154/tsfile/live/1006_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•37『线路9』 #EXTINF:-1 tvg-id="山东体育" tvg-name="山东体育" group-title="山东",山东体育 -http://123.130.84.106:8154/tsfile/live/1006_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•37『线路10』 +https://stream1.freetv.fun/shan-dong-ti-yu-16.m3u8$LR•IPV4•37『线路10』 #EXTINF:-1 tvg-id="山东体育" tvg-name="山东体育" group-title="山东",山东体育 -https://stream1.freetv.fun/shan-dong-ti-yu-16.m3u8$LR•IPV4•37『线路11』 +http://111.14.181.15:9901/tsfile/live/1022_1.m3u8?key=tvbox6_com&playlive=1&authid=0$LR•IPV4•37『线路11』 #EXTINF:-1 tvg-id="山东体育" tvg-name="山东体育" group-title="山东",山东体育 -http://111.14.181.15:9901/tsfile/live/1022_1.m3u8?key=tvbox6_com&playlive=1&authid=0$LR•IPV4•37『线路12』 +https://satellitepull.cnr.cn/live/wxsdtyxxgb/playlist.m3u8$LR•IPV4•37『线路12』 #EXTINF:-1 tvg-id="山东体育" tvg-name="山东体育" group-title="山东",山东体育 -https://satellitepull.cnr.cn/live/wxsdtyxxgb/playlist.m3u8$LR•IPV4•37『线路13』 +https://stream1.freetv.fun/shan-dong-ti-yu-25.m3u8$LR•IPV4•37『线路13』 #EXTINF:-1 tvg-id="山东体育" tvg-name="山东体育" group-title="山东",山东体育 -https://stream1.freetv.fun/shan-dong-ti-yu-25.m3u8$LR•IPV4•37『线路14』 +http://58.57.40.22:9901/tsfile/live/1020_1.m3u8$LR•IPV4•37『线路14』 #EXTINF:-1 tvg-id="山东体育" tvg-name="山东体育" group-title="山东",山东体育 -http://58.57.40.22:9901/tsfile/live/1020_1.m3u8$LR•IPV4•37『线路15』 +https://stream1.freetv.fun/shan-dong-ti-yu-8.m3u8$LR•IPV4•37『线路15』 #EXTINF:-1 tvg-id="山东体育" tvg-name="山东体育" group-title="山东",山东体育 -https://stream1.freetv.fun/shan-dong-ti-yu-8.m3u8$LR•IPV4•37『线路16』 +https://stream1.freetv.fun/shan-dong-ti-yu-14.m3u8$LR•IPV4•37『线路16』 #EXTINF:-1 tvg-id="山东体育" tvg-name="山东体育" group-title="山东",山东体育 -https://stream1.freetv.fun/shan-dong-ti-yu-14.m3u8$LR•IPV4•37『线路17』 +http://221.2.148.205:8154/tsfile/live/1006_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•37『线路17』 #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『线路18』 +https://stream1.freetv.fun/shan-dong-ti-yu-3.m3u8$LR•IPV4•37『线路18』 #EXTINF:-1 tvg-id="山东体育" tvg-name="山东体育" group-title="山东",山东体育 -https://stream1.freetv.fun/shan-dong-ti-yu-3.m3u8$LR•IPV4•37『线路19』 +http://live.xmcdn.com/live/805/64.m3u8$LR•IPV4•37『线路19』 #EXTINF:-1 tvg-id="山东体育" tvg-name="山东体育" group-title="山东",山东体育 -http://live.xmcdn.com/live/805/64.m3u8$LR•IPV4•37『线路20』 +http://61.156.228.12:8154/tsfile/live/1006_1.m3u8$LR•IPV4•37『线路20』 #EXTINF:-1 tvg-id="山东体育" tvg-name="山东体育" group-title="山东",山东体育 -http://61.156.228.12:8154/tsfile/live/1006_1.m3u8$LR•IPV4•37『线路21』 +https://stream1.freetv.fun/shan-dong-ti-yu-5.m3u8$LR•IPV4•37『线路21』 #EXTINF:-1 tvg-id="山东体育" tvg-name="山东体育" group-title="山东",山东体育 -https://stream1.freetv.fun/shan-dong-ti-yu-5.m3u8$LR•IPV4•37『线路22』 +http://123.130.84.106:8154/tsfile/live/1006_1.m3u8$LR•IPV4•37『线路22』 #EXTINF:-1 tvg-id="山东体育" tvg-name="山东体育" group-title="山东",山东体育 -http://123.130.84.106:8154/tsfile/live/1006_1.m3u8$LR•IPV4•37『线路23』 +http://livealone302.iqilu.com/iqilu/typd.m3u8$LR•IPV4•37『线路23』 #EXTINF:-1 tvg-id="山东体育" tvg-name="山东体育" group-title="山东",山东体育 https://stream1.freetv.fun/shan-dong-ti-yu-7.m3u8$LR•IPV4•37『线路24』 #EXTINF:-1 tvg-id="山东体育" tvg-name="山东体育" group-title="山东",山东体育 @@ -7626,17 +7616,17 @@ http://satellitepull.cnr.cn/live/wxsdtyxxgb/playlist.m3u8$LR•IPV4•37『线 #EXTINF:-1 tvg-id="山东体育" tvg-name="山东体育" group-title="山东",山东体育 https://stream1.freetv.fun/shan-dong-ti-yu-12.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.132.233.194:352/tsfile/live/1000_1.m3u8$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-id="山东综艺" tvg-name="山东综艺" group-title="山东",山东综艺 -http://123.132.233.194:352/tsfile/live/1000_1.m3u8$LR•IPV4•6『线路2』 +http://221.2.148.205:8154/tsfile/live/1003_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•6『线路2』 #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『线路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://123.129.70.178:9901/tsfile/live/1001_1.m3u8$LR•IPV4•6『线路4』 #EXTINF:-1 tvg-id="山东综艺" tvg-name="山东综艺" group-title="山东",山东综艺 -http://123.129.70.178:9901/tsfile/live/1001_1.m3u8$LR•IPV4•6『线路5』 +http://111.14.181.15:9901/tsfile/live/1004_1.m3u8?key=tvbox6_com&playlive=1&authid=0$LR•IPV4•6『线路5』 #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『线路6』 +http://livealone302.iqilu.com/iqilu/zypd.m3u8$LR•IPV4•6『线路6』 #EXTINF:-1 tvg-id="山东文旅" tvg-name="山东文旅" group-title="山东",山东文旅 http://58.57.40.22:9901/tsfile/live/1023_1.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="山东文旅" tvg-name="山东文旅" group-title="山东",山东文旅 @@ -7666,185 +7656,185 @@ http://scgctvshow.sctv.com/hdlive/sctv7/index.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="凤凰中文" tvg-name="凤凰中文" group-title="港澳台",凤凰中文 http://api.mg.itv888.cn:8080/hls/2f80047f91e/index.m3u8$LR•IPV4•17『线路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•17『线路2』 +http://r.jdshipin.com/cCCzW$LR•IPV4•17『线路2』 #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•17『线路3』 +http://cdn6.163189.xyz/163189/fhzw$LR•IPV4•17『线路3』 #EXTINF:-1 tvg-id="凤凰中文" tvg-name="凤凰中文" group-title="港澳台",凤凰中文 -http://218.206.193.218:8888/hls/66/index.m3u8$LR•IPV4•17『线路4』 +http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•17『线路4』 #EXTINF:-1 tvg-id="凤凰中文" tvg-name="凤凰中文" group-title="港澳台",凤凰中文 -https://k44991.kylintv.tv/live/pxna_iphone.m3u8$LR•IPV4•17『线路5』 +http://218.206.193.218:8888/hls/66/index.m3u8$LR•IPV4•17『线路5』 #EXTINF:-1 tvg-id="凤凰中文" tvg-name="凤凰中文" group-title="港澳台",凤凰中文 -http://tianhewan.top/ZIPP.php?url=http://211.72.65.236:8577/.m3u8$LR•IPV4•17『线路6』 +https://k44991.kylintv.tv/live/pxna_iphone.m3u8$LR•IPV4•17『线路6』 #EXTINF:-1 tvg-id="凤凰中文" tvg-name="凤凰中文" group-title="港澳台",凤凰中文 -http://146.56.153.245:20121/bysid/258$LR•IPV4•17『线路7』 +http://tianhewan.top/ZIPP.php?url=http://211.72.65.236:8577/.m3u8$LR•IPV4•17『线路7』 #EXTINF:-1 tvg-id="凤凰中文" tvg-name="凤凰中文" group-title="港澳台",凤凰中文 -http://e1.woc.iiiya.cn:8888/rtp/239.61.2.184:9092$LR•IPV4•17『线路8』 +http://146.56.153.245:20121/bysid/258$LR•IPV4•17『线路8』 #EXTINF:-1 tvg-id="凤凰中文" tvg-name="凤凰中文" group-title="港澳台",凤凰中文 -http://php.jdshipin.com/TVOD/iptv.php?id=fhzw$LR•IPV4•17『线路9』 +http://e1.woc.iiiya.cn:8888/rtp/239.61.2.184:9092$LR•IPV4•17『线路9』 #EXTINF:-1 tvg-id="凤凰中文" tvg-name="凤凰中文" group-title="港澳台",凤凰中文 -http://122.117.71.103:8574/http/61.222.53.250:8078/hls/21/80/phoenixch.m3u8$LR•IPV4•17『线路10』 +http://php.jdshipin.com/TVOD/iptv.php?id=fhzw$LR•IPV4•17『线路10』 #EXTINF:-1 tvg-id="凤凰中文" tvg-name="凤凰中文" group-title="港澳台",凤凰中文 -http://148.135.93.213:81/phenix.php?id=fhzw$LR•IPV4•17『线路11』 +http://122.117.71.103:8574/http/61.222.53.250:8078/hls/21/80/phoenixch.m3u8$LR•IPV4•17『线路11』 #EXTINF:-1 tvg-id="凤凰中文" tvg-name="凤凰中文" group-title="港澳台",凤凰中文 -http://211.75.171.121:8577/http/61.67.128.137:8078/hls/21/80/phoenixch.m3u8$LR•IPV4•17『线路12』 +http://148.135.93.213:81/phenix.php?id=fhzw$LR•IPV4•17『线路12』 #EXTINF:-1 tvg-id="凤凰中文" tvg-name="凤凰中文" group-title="港澳台",凤凰中文 -http://43.251.226.89:8080/play/888.m3u8$LR•IPV4•17『线路13』 +http://211.75.171.121:8577/http/61.67.128.137:8078/hls/21/80/phoenixch.m3u8$LR•IPV4•17『线路13』 #EXTINF:-1 tvg-id="凤凰中文" tvg-name="凤凰中文" group-title="港澳台",凤凰中文 -http://push.cdn1.hls123.de:8080/streams/a4y2t99pzyi/index.m3u8$LR•IPV4•17『线路14』 +http://43.251.226.89:8080/play/888.m3u8$LR•IPV4•17『线路14』 #EXTINF:-1 tvg-id="凤凰中文" tvg-name="凤凰中文" group-title="港澳台",凤凰中文 -https://flv-play.clouda.com/live/fhzw-6zSJoUiicyU3ovDlMvflVRLQlVCMRCARnyJ0NPlfcs3eWJNeJSDRMAz4VgeQV3Diy6.flv$LR•IPV4•17『线路15』 +http://push.cdn1.hls123.de:8080/streams/a4y2t99pzyi/index.m3u8$LR•IPV4•17『线路15』 #EXTINF:-1 tvg-id="凤凰中文" tvg-name="凤凰中文" group-title="港澳台",凤凰中文 -http://r.jdshipin.com/cCCzW$LR•IPV4•17『线路16』 +https://flv-play.clouda.com/live/fhzw-6zSJoUiicyU3ovDlMvflVRLQlVCMRCARnyJ0NPlfcs3eWJNeJSDRMAz4VgeQV3Diy6.flv$LR•IPV4•17『线路16』 #EXTINF:-1 tvg-id="凤凰中文" tvg-name="凤凰中文" group-title="港澳台",凤凰中文 -http://cdn6.163189.xyz/163189/fhzw$LR•IPV4•17『线路17』 +http://223.110.245.139/ott.js.chinamobile.com/PLTV/3/224/3221226922/index.m3u8$LR•IPV4•17『线路17』 #EXTINF:-1 tvg-id="凤凰资讯" tvg-name="凤凰资讯" group-title="港澳台",凤凰资讯 http://api.mg.itv888.cn:8080/hls/11ef1dc70d8/index.m3u8$LR•IPV4•18『线路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•18『线路2』 +http://r.jdshipin.com/0Rp07$LR•IPV4•18『线路2』 #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•18『线路3』 +http://php.jdshipin.com/TVOD/iptv.php?id=fhzx$LR•IPV4•18『线路3』 #EXTINF:-1 tvg-id="凤凰资讯" tvg-name="凤凰资讯" group-title="港澳台",凤凰资讯 -http://zmgd.zyrnet.com:8888/hls/109/index.m3u8$LR•IPV4•18『线路4』 +http://cdn6.163189.xyz/163189/fhzx$LR•IPV4•18『线路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•18『线路5』 +http://221.7.175.154:8445/tsfile/live/1021_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路5』 #EXTINF:-1 tvg-id="凤凰资讯" tvg-name="凤凰资讯" group-title="港澳台",凤凰资讯 -http://php.jdshipin.com/TVOD/iptv.php?id=fhzx$LR•IPV4•18『线路6』 +http://zmgd.zyrnet.com:8888/hls/109/index.m3u8$LR•IPV4•18『线路6』 #EXTINF:-1 tvg-id="凤凰资讯" tvg-name="凤凰资讯" group-title="港澳台",凤凰资讯 -http://122.117.71.103:8573/http/61.222.53.250:8078/hls/20/80/phoenixif.m3u8$LR•IPV4•18『线路7』 +http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•18『线路7』 #EXTINF:-1 tvg-id="凤凰资讯" tvg-name="凤凰资讯" group-title="港澳台",凤凰资讯 -http://e1.woc.iiiya.cn:8888/rtp/239.61.2.183:9086$LR•IPV4•18『线路8』 +http://122.117.71.103:8573/http/61.222.53.250:8078/hls/20/80/phoenixif.m3u8$LR•IPV4•18『线路8』 #EXTINF:-1 tvg-id="凤凰资讯" tvg-name="凤凰资讯" group-title="港澳台",凤凰资讯 -http://146.56.153.245:20121/bysid/257$LR•IPV4•18『线路9』 +http://e1.woc.iiiya.cn:8888/rtp/239.61.2.183:9086$LR•IPV4•18『线路9』 #EXTINF:-1 tvg-id="凤凰资讯" tvg-name="凤凰资讯" group-title="港澳台",凤凰资讯 -http://tianhewan.top/ZIPP.php?url=http://211.72.65.236:8576/.m3u8$LR•IPV4•18『线路10』 +http://146.56.153.245:20121/bysid/257$LR•IPV4•18『线路10』 #EXTINF:-1 tvg-id="凤凰资讯" tvg-name="凤凰资讯" group-title="港澳台",凤凰资讯 -http://148.135.93.213:81/phenix.php?id=fhzx$LR•IPV4•18『线路11』 +http://tianhewan.top/ZIPP.php?url=http://211.72.65.236:8576/.m3u8$LR•IPV4•18『线路11』 #EXTINF:-1 tvg-id="凤凰资讯" tvg-name="凤凰资讯" group-title="港澳台",凤凰资讯 -http://211.75.171.121:8576/http/61.67.128.137:8078/hls/20/80/phoenixif.m3u8$LR•IPV4•18『线路12』 +http://148.135.93.213:81/phenix.php?id=fhzx$LR•IPV4•18『线路12』 #EXTINF:-1 tvg-id="凤凰资讯" tvg-name="凤凰资讯" group-title="港澳台",凤凰资讯 -http://43.251.226.89:8080/play/889.m3u8$LR•IPV4•18『线路13』 +http://211.75.171.121:8576/http/61.67.128.137:8078/hls/20/80/phoenixif.m3u8$LR•IPV4•18『线路13』 #EXTINF:-1 tvg-id="凤凰资讯" tvg-name="凤凰资讯" group-title="港澳台",凤凰资讯 -p3p://167.114.175.6:55331/5fffbf860003807cedf4e1016c3c3ed2$LR•IPV4•18『线路14』 +http://43.251.226.89:8080/play/889.m3u8$LR•IPV4•18『线路14』 #EXTINF:-1 tvg-id="凤凰资讯" tvg-name="凤凰资讯" group-title="港澳台",凤凰资讯 -http://push.cdn1.hls123.de:8080/streams/0u0qd5ovqkg/index.m3u8$LR•IPV4•18『线路15』 +p3p://167.114.175.6:55331/5fffbf860003807cedf4e1016c3c3ed2$LR•IPV4•18『线路15』 #EXTINF:-1 tvg-id="凤凰资讯" tvg-name="凤凰资讯" group-title="港澳台",凤凰资讯 -https://flv-play.clouda.com/live/fhzx-gCDIOsNFJ7DX5OI8hsebeQNHPm66LAMZgmIcGYcfIIEzXWKCVG2cQgbZdRq2aUVqJR.flv$LR•IPV4•18『线路16』 +http://push.cdn1.hls123.de:8080/streams/0u0qd5ovqkg/index.m3u8$LR•IPV4•18『线路16』 #EXTINF:-1 tvg-id="凤凰资讯" tvg-name="凤凰资讯" group-title="港澳台",凤凰资讯 -http://r.jdshipin.com/0Rp07$LR•IPV4•18『线路17』 +https://flv-play.clouda.com/live/fhzx-gCDIOsNFJ7DX5OI8hsebeQNHPm66LAMZgmIcGYcfIIEzXWKCVG2cQgbZdRq2aUVqJR.flv$LR•IPV4•18『线路17』 #EXTINF:-1 tvg-id="凤凰资讯" tvg-name="凤凰资讯" group-title="港澳台",凤凰资讯 -http://cdn6.163189.xyz/163189/fhzx$LR•IPV4•18『线路18』 +http://223.110.245.167/ott.js.chinamobile.com/PLTV/3/224/3221226923/index.m3u8$LR•IPV4•18『线路18』 #EXTINF:-1 tvg-id="凤凰香港" tvg-name="凤凰香港" group-title="港澳台",凤凰香港 -http://223.110.245.136/PLTV/3/224/3221226975/index.m3u8$LR•IPV4•12『线路1』 +http://r.jdshipin.com/yDoTN$LR•IPV4•12『线路1』 #EXTINF:-1 tvg-id="凤凰香港" tvg-name="凤凰香港" group-title="港澳台",凤凰香港 -http://122.152.202.33/s/81a8a44f/index.m3u8?id=fhhk$LR•IPV4•12『线路2』 +http://php.jdshipin.com/TVOD/iptv.php?id=fhhk$LR•IPV4•12『线路2』 #EXTINF:-1 tvg-id="凤凰香港" tvg-name="凤凰香港" group-title="港澳台",凤凰香港 -https://epg.pw/stream/8770e89223a086eb1b8a0c931e42296d772a8069ad3eb72540e0c434e7cb3e93.m3u8$LR•IPV4•12『线路3』 +http://cdn6.163189.xyz/163189/fhhk$LR•IPV4•12『线路3』 #EXTINF:-1 tvg-id="凤凰香港" tvg-name="凤凰香港" group-title="港澳台",凤凰香港 -https://epg.pw/stream/5f16dc7fc8aaaed3205516c63e4a8c24bca9dbba1181684244729cf574505b0e.m3u8$LR•IPV4•12『线路4』 +http://122.152.202.33/s/81a8a44f/index.m3u8?id=fhhk$LR•IPV4•12『线路4』 #EXTINF:-1 tvg-id="凤凰香港" tvg-name="凤凰香港" group-title="港澳台",凤凰香港 -http://148.135.93.213:81/phenix.php?id=fhhk$LR•IPV4•12『线路5』 +https://epg.pw/stream/8770e89223a086eb1b8a0c931e42296d772a8069ad3eb72540e0c434e7cb3e93.m3u8$LR•IPV4•12『线路5』 #EXTINF:-1 tvg-id="凤凰香港" tvg-name="凤凰香港" group-title="港澳台",凤凰香港 -http://43.251.226.89:8080/play/890.m3u8$LR•IPV4•12『线路6』 +https://epg.pw/stream/5f16dc7fc8aaaed3205516c63e4a8c24bca9dbba1181684244729cf574505b0e.m3u8$LR•IPV4•12『线路6』 #EXTINF:-1 tvg-id="凤凰香港" tvg-name="凤凰香港" group-title="港澳台",凤凰香港 -p3p://167.114.175.6:55331/5fe0b82c000cac9774c17f262e43314d$LR•IPV4•12『线路7』 +http://148.135.93.213:81/phenix.php?id=fhhk$LR•IPV4•12『线路7』 #EXTINF:-1 tvg-id="凤凰香港" tvg-name="凤凰香港" group-title="港澳台",凤凰香港 -http://push.cdn1.hls123.de:8080/streams/898y722sqjr/index.m3u8$LR•IPV4•12『线路8』 +http://43.251.226.89:8080/play/890.m3u8$LR•IPV4•12『线路8』 #EXTINF:-1 tvg-id="凤凰香港" tvg-name="凤凰香港" group-title="港澳台",凤凰香港 -https://flv-play.clouda.com/live/fhxg-s6ZqbJPCkU54D3ojHvlJm4el9wbnzF1VJ6J0oPumsZIfuPtYq1enmIhy43vWcUaaPf4U2xRRWNGOXX5BiusMXxxQ.flv$LR•IPV4•12『线路9』 +p3p://167.114.175.6:55331/5fe0b82c000cac9774c17f262e43314d$LR•IPV4•12『线路9』 #EXTINF:-1 tvg-id="凤凰香港" tvg-name="凤凰香港" group-title="港澳台",凤凰香港 -http://r.jdshipin.com/yDoTN$LR•IPV4•12『线路10』 +http://push.cdn1.hls123.de:8080/streams/898y722sqjr/index.m3u8$LR•IPV4•12『线路10』 #EXTINF:-1 tvg-id="凤凰香港" tvg-name="凤凰香港" group-title="港澳台",凤凰香港 -http://php.jdshipin.com/TVOD/iptv.php?id=fhhk$LR•IPV4•12『线路11』 +https://flv-play.clouda.com/live/fhxg-s6ZqbJPCkU54D3ojHvlJm4el9wbnzF1VJ6J0oPumsZIfuPtYq1enmIhy43vWcUaaPf4U2xRRWNGOXX5BiusMXxxQ.flv$LR•IPV4•12『线路11』 #EXTINF:-1 tvg-id="凤凰香港" tvg-name="凤凰香港" group-title="港澳台",凤凰香港 -http://cdn6.163189.xyz/163189/fhhk$LR•IPV4•12『线路12』 +http://223.110.245.136/PLTV/3/224/3221226975/index.m3u8$LR•IPV4•12『线路12』 #EXTINF:-1 tvg-id="TVB翡翠台" tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -p3p://167.114.175.6:55331/653e4c02000ea0440c8c63fd3e5d709d$LR•IPV4•36『线路1』 +http://cdn9.163189.xyz/smt1.1.php?id=jade_twn$LR•IPV4•36『线路1』 #EXTINF:-1 tvg-id="TVB翡翠台" tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -p3p://167.114.175.6:55331/66c04cec000a20ac2dbf03c71cf661c9$LR•IPV4•36『线路2』 +p3p://167.114.175.6:55331/653e4c02000ea0440c8c63fd3e5d709d$LR•IPV4•36『线路2』 #EXTINF:-1 tvg-id="TVB翡翠台" tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -p3p://108.181.32.169:19673/6533f6560002787f2d01338b57197695$LR•IPV4•36『线路3』 +p3p://167.114.175.6:55331/66c04cec000a20ac2dbf03c71cf661c9$LR•IPV4•36『线路3』 #EXTINF:-1 tvg-id="TVB翡翠台" tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://cdn9.163189.xyz/smt1.1.php?id=jade_twn$LR•IPV4•36『线路4』 +p3p://108.181.32.169:19673/6533f6560002787f2d01338b57197695$LR•IPV4•36『线路4』 #EXTINF:-1 tvg-id="TVB翡翠台" tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://php.jdshipin.com:8880/TVOD/iptv.php?id=fct$LR•IPV4•36『线路5』 +http://php.jdshipin.com/TVOD/iptv.php?id=huali2$LR•IPV4•36『线路5』 #EXTINF:-1 tvg-id="TVB翡翠台" tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://php.jdshipin.com/TVOD/iptv.php?id=fct3$LR•IPV4•36『线路6』 +http://php.jdshipin.com:8880/TVOD/iptv.php?id=fct4$LR•IPV4•36『线路6』 #EXTINF:-1 tvg-id="TVB翡翠台" tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://php.jdshipin.com/TVOD/iptv.php?id=fct$LR•IPV4•36『线路7』 +http://php.jdshipin.com:8880/TVOD/iptv.php?id=j1$LR•IPV4•36『线路7』 #EXTINF:-1 tvg-id="TVB翡翠台" tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://hls.168.us.kg/u/81/master.m3u8$LR•IPV4•36『线路8』 +http://php.jdshipin.com:8880/TVOD/iptv.php?id=fct$LR•IPV4•36『线路8』 #EXTINF:-1 tvg-id="TVB翡翠台" tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://r.jdshipin.com/62WM7$LR•IPV4•36『线路9』 +http://php.jdshipin.com/TVOD/iptv.php?id=fct3$LR•IPV4•36『线路9』 #EXTINF:-1 tvg-id="TVB翡翠台" tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://php.jdshipin.com/TVOD/iptv.php?id=fct4$LR•IPV4•36『线路10』 +http://php.jdshipin.com/TVOD/iptv.php?id=fct$LR•IPV4•36『线路10』 #EXTINF:-1 tvg-id="TVB翡翠台" tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://php.jdshipin.com:8880/smt.php?id=jade_twn$LR•IPV4•36『线路11』 +http://hls.168.us.kg/u/81/master.m3u8$LR•IPV4•36『线路11』 #EXTINF:-1 tvg-id="TVB翡翠台" tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://php.jdshipin.com/smt.php?id=jade_twn$LR•IPV4•36『线路12』 +http://r.jdshipin.com/62WM7$LR•IPV4•36『线路12』 #EXTINF:-1 tvg-id="TVB翡翠台" tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://cdn9.1689.us.kg/smt1.1.php?id=jade_twn$LR•IPV4•36『线路13』 +http://php.jdshipin.com/TVOD/iptv.php?id=fct4$LR•IPV4•36『线路13』 #EXTINF:-1 tvg-id="TVB翡翠台" tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://ali.hlspull.yximgs.com/live/l3w1tt2dkzvpukkliu64ah005-golive.flv$LR•IPV4•36『线路14』 +http://php.jdshipin.com:8880/smt.php?id=jade_twn$LR•IPV4•36『线路14』 #EXTINF:-1 tvg-id="TVB翡翠台" tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://58.250.155.2:8180/TV00000000000000000032@HHZT$LR•IPV4•36『线路15』 +http://php.jdshipin.com/smt.php?id=jade_twn$LR•IPV4•36『线路15』 #EXTINF:-1 tvg-id="TVB翡翠台" tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://hotelplay.net/live/pmb8krf68n4z/4d8cf4af8de3574c/476935.m3u8$LR•IPV4•36『线路16』 +http://cdn9.1689.us.kg/smt1.1.php?id=jade_twn$LR•IPV4•36『线路16』 #EXTINF:-1 tvg-id="TVB翡翠台" tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://ali.hlspull.yximgs.com/live/awei_jade.flv$LR•IPV4•36『线路17』 +http://ali.hlspull.yximgs.com/live/l3w1tt2dkzvpukkliu64ah005-golive.flv$LR•IPV4•36『线路17』 #EXTINF:-1 tvg-id="TVB翡翠台" tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -p3p://167.114.175.6:55331/653e49c20006c60f0c8397f7771b1b7b$LR•IPV4•36『线路18』 +http://58.250.155.2:8180/TV00000000000000000032@HHZT$LR•IPV4•36『线路18』 #EXTINF:-1 tvg-id="TVB翡翠台" tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -https://hls-gateway.vpstv.net/streams/476929.m3u8$LR•IPV4•36『线路19』 +http://hotelplay.net/live/pmb8krf68n4z/4d8cf4af8de3574c/476935.m3u8$LR•IPV4•36『线路19』 #EXTINF:-1 tvg-id="TVB翡翠台" tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://124.244.129.167:9004/0.ts$LR•IPV4•36『线路20』 +http://ali.hlspull.yximgs.com/live/awei_jade.flv$LR•IPV4•36『线路20』 #EXTINF:-1 tvg-id="TVB翡翠台" tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://qingyi.7766.org:9004/0.ts$LR•IPV4•36『线路21』 +p3p://167.114.175.6:55331/653e49c20006c60f0c8397f7771b1b7b$LR•IPV4•36『线路21』 #EXTINF:-1 tvg-id="TVB翡翠台" tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://push.cdn1.hls123.de:8080/streams/ef5addc0849/index.m3u8$LR•IPV4•36『线路22』 +https://hls-gateway.vpstv.net/streams/476929.m3u8$LR•IPV4•36『线路22』 #EXTINF:-1 tvg-id="TVB翡翠台" tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://push.cdn1.hls123.de:8080/streams/n6dnsi33w2e/index.m3u8$LR•IPV4•36『线路23』 +http://124.244.129.167:9004/0.ts$LR•IPV4•36『线路23』 #EXTINF:-1 tvg-id="TVB翡翠台" tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://php.jdshipin.com/TVOD/iptv.php?id=huali2$LR•IPV4•36『线路24』 +http://qingyi.7766.org:9004/0.ts$LR•IPV4•36『线路24』 #EXTINF:-1 tvg-id="TVB翡翠台" tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://php.jdshipin.com:8880/TVOD/iptv.php?id=fct4$LR•IPV4•36『线路25』 +http://push.cdn1.hls123.de:8080/streams/ef5addc0849/index.m3u8$LR•IPV4•36『线路25』 #EXTINF:-1 tvg-id="TVB翡翠台" tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://php.jdshipin.com:8880/TVOD/iptv.php?id=j1$LR•IPV4•36『线路26』 +http://push.cdn1.hls123.de:8080/streams/n6dnsi33w2e/index.m3u8$LR•IPV4•36『线路26』 #EXTINF:-1 tvg-id="TVB翡翠台" tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -https://mytv.cdn.loc.cc/o12.php?id=fct$LR•IPV4•36『线路27』 +https://gcalic.v.myalicdn.com/gc/fcw03_1/index.m3u8$LR•IPV4•36『线路27』 #EXTINF:-1 tvg-id="TVB翡翠台" tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://43.251.226.89:8080/play/867.m3u8$LR•IPV4•36『线路28』 +http://cdn6.163189.xyz/163189/fct4k$LR•IPV4•36『线路28』 #EXTINF:-1 tvg-id="TVB翡翠台" tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://43.251.226.89:8080/play/868.m3u8$LR•IPV4•36『线路29』 +https://mytv.cdn.loc.cc/o12.php?id=fct$LR•IPV4•36『线路29』 #EXTINF:-1 tvg-id="TVB翡翠台" tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://43.251.226.89:8080/play/869.m3u8$LR•IPV4•36『线路30』 +http://43.251.226.89:8080/play/867.m3u8$LR•IPV4•36『线路30』 #EXTINF:-1 tvg-id="TVB翡翠台" tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://43.251.226.89:8080/play/894.m3u8$LR•IPV4•36『线路31』 +http://43.251.226.89:8080/play/868.m3u8$LR•IPV4•36『线路31』 #EXTINF:-1 tvg-id="TVB翡翠台" tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://43.251.226.89:8080/play/895.m3u8$LR•IPV4•36『线路32』 +http://43.251.226.89:8080/play/869.m3u8$LR•IPV4•36『线路32』 #EXTINF:-1 tvg-id="TVB翡翠台" tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -https://rtmp.play.live.tieba.com/live/FC-jeT4nLMVrUuYYF1zrjAOgphyDowTHE2GMxjLxPqIlRQMJDhcbFPAiSIzDGwPF77NfidpWnLiDqicTmg8mV7ichVA.flv$LR•IPV4•36『线路33』 +http://43.251.226.89:8080/play/894.m3u8$LR•IPV4•36『线路33』 #EXTINF:-1 tvg-id="TVB翡翠台" tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -https://flv-play.clouda.com/live/fc-0StF0ynwlSa7hrv7OF4easlc5FZmZpEjC6AeAaCOogpDCWWipXDZFKTn9DvV3WQiAHjYtcE6ZqmDFmnvRAARmtRA.flv$LR•IPV4•36『线路34』 +http://43.251.226.89:8080/play/895.m3u8$LR•IPV4•36『线路34』 #EXTINF:-1 tvg-id="TVB翡翠台" tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -https://gcalic.v.myalicdn.com/gc/fcw03_1/index.m3u8$LR•IPV4•36『线路35』 +https://rtmp.play.live.tieba.com/live/FC-jeT4nLMVrUuYYF1zrjAOgphyDowTHE2GMxjLxPqIlRQMJDhcbFPAiSIzDGwPF77NfidpWnLiDqicTmg8mV7ichVA.flv$LR•IPV4•36『线路35』 #EXTINF:-1 tvg-id="TVB翡翠台" tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://cdn6.163189.xyz/163189/fct4k$LR•IPV4•36『线路36』 +https://flv-play.clouda.com/live/fc-0StF0ynwlSa7hrv7OF4easlc5FZmZpEjC6AeAaCOogpDCWWipXDZFKTn9DvV3WQiAHjYtcE6ZqmDFmnvRAARmtRA.flv$LR•IPV4•36『线路36』 #EXTINF:-1 tvg-id="TVB明珠台" tvg-name="TVB明珠台" group-title="港澳台",TVB明珠台 -http://php.jdshipin.com/TVOD/iptv.php?id=mzt2$LR•IPV4•17『线路1』 +http://cdn9.163189.xyz/smt1.1.php?id=pearl_twn$LR•IPV4•17『线路1』 #EXTINF:-1 tvg-id="TVB明珠台" tvg-name="TVB明珠台" group-title="港澳台",TVB明珠台 -http://php.jdshipin.com/PLTV/iptv.php?id=mzt2$LR•IPV4•17『线路2』 +http://php.jdshipin.com/TVOD/iptv.php?id=mzt2$LR•IPV4•17『线路2』 #EXTINF:-1 tvg-id="TVB明珠台" tvg-name="TVB明珠台" group-title="港澳台",TVB明珠台 -http://php.jdshipin.com/PLTV/iptv.php?id=mzt$LR•IPV4•17『线路3』 +http://php.jdshipin.com/PLTV/iptv.php?id=mzt2$LR•IPV4•17『线路3』 #EXTINF:-1 tvg-id="TVB明珠台" tvg-name="TVB明珠台" group-title="港澳台",TVB明珠台 -http://php.jdshipin.com/TVOD/iptv.php?id=mzt$LR•IPV4•17『线路4』 +http://php.jdshipin.com/PLTV/iptv.php?id=mzt$LR•IPV4•17『线路4』 #EXTINF:-1 tvg-id="TVB明珠台" tvg-name="TVB明珠台" group-title="港澳台",TVB明珠台 -http://hls.168.us.kg/u/84/master.m3u8$LR•IPV4•17『线路5』 +http://php.jdshipin.com/TVOD/iptv.php?id=mzt$LR•IPV4•17『线路5』 #EXTINF:-1 tvg-id="TVB明珠台" tvg-name="TVB明珠台" group-title="港澳台",TVB明珠台 -p3p://167.114.175.6:55331/611d99f3000116024a845bb9627404c9$LR•IPV4•17『线路6』 +http://hls.168.us.kg/u/84/master.m3u8$LR•IPV4•17『线路6』 #EXTINF:-1 tvg-id="TVB明珠台" tvg-name="TVB明珠台" group-title="港澳台",TVB明珠台 -http://php.jdshipin.com:8880/smt.php?id=pearl_twn$LR•IPV4•17『线路7』 +p3p://167.114.175.6:55331/611d99f3000116024a845bb9627404c9$LR•IPV4•17『线路7』 #EXTINF:-1 tvg-id="TVB明珠台" tvg-name="TVB明珠台" group-title="港澳台",TVB明珠台 -http://cdn9.163189.xyz/smt1.1.php?id=pearl_twn$LR•IPV4•17『线路8』 +http://php.jdshipin.com:8880/smt.php?id=pearl_twn$LR•IPV4•17『线路8』 #EXTINF:-1 tvg-id="TVB明珠台" tvg-name="TVB明珠台" group-title="港澳台",TVB明珠台 https://hls-gateway.vpstv.net/streams/476936.m3u8$LR•IPV4•17『线路9』 #EXTINF:-1 tvg-id="TVB明珠台" tvg-name="TVB明珠台" group-title="港澳台",TVB明珠台 @@ -7864,13 +7854,13 @@ https://rtmp.play.live.tieba.com/live//MZ-75gIBwRfJZ3RrMGEzQPAdi3zVypiQ7z9CX7mFF #EXTINF:-1 tvg-id="TVB明珠台" tvg-name="TVB明珠台" group-title="港澳台",TVB明珠台 https://flv-play.clouda.com/live/mz-X4DYjEwtWNHLlq9hBWs8o4HWYKLq7ChxxavhYKcZOcRlFh0guIp954ka9YGs8MAF9FOJ2gPvg5wcd8Yr7WSISG3g.flv$LR•IPV4•17『线路17』 #EXTINF:-1 tvg-id="TVB无线新闻" tvg-name="TVB无线新闻" group-title="港澳台",TVB无线新闻 -http://php.jdshipin.com/smt.php?id=inews_twn$LR•IPV4•16『线路1』 +http://cdn9.163189.xyz/smt1.1.php?id=inews_twn$LR•IPV4•16『线路1』 #EXTINF:-1 tvg-id="TVB无线新闻" tvg-name="TVB无线新闻" group-title="港澳台",TVB无线新闻 -http://php.jdshipin.com/TVOD/iptv.php?id=wxxwt$LR•IPV4•16『线路2』 +http://php.jdshipin.com/smt.php?id=inews_twn$LR•IPV4•16『线路2』 #EXTINF:-1 tvg-id="TVB无线新闻" tvg-name="TVB无线新闻" group-title="港澳台",TVB无线新闻 -http://r.jdshipin.com/CkuBd$LR•IPV4•16『线路3』 +http://php.jdshipin.com/TVOD/iptv.php?id=wxxwt$LR•IPV4•16『线路3』 #EXTINF:-1 tvg-id="TVB无线新闻" tvg-name="TVB无线新闻" group-title="港澳台",TVB无线新闻 -http://cdn9.163189.xyz/smt1.1.php?id=inews_twn$LR•IPV4•16『线路4』 +http://r.jdshipin.com/CkuBd$LR•IPV4•16『线路4』 #EXTINF:-1 tvg-id="TVB无线新闻" tvg-name="TVB无线新闻" group-title="港澳台",TVB无线新闻 http://74.91.26.218:82/live/inews.m3u8$LR•IPV4•16『线路5』 #EXTINF:-1 tvg-id="TVB无线新闻" tvg-name="TVB无线新闻" group-title="港澳台",TVB无线新闻 @@ -7886,73 +7876,75 @@ p3p://167.114.175.6:55331/66c9c0df00016a4852abc2d358ee0ccb$LR•IPV4•16『线 #EXTINF:-1 tvg-id="TVB无线新闻" tvg-name="TVB无线新闻" group-title="港澳台",TVB无线新闻 p3p://167.114.175.6:55331/653e4818000b73240c7d19181340415e$LR•IPV4•16『线路11』 #EXTINF:-1 tvg-id="TVB无线新闻" tvg-name="TVB无线新闻" group-title="港澳台",TVB无线新闻 -http://43.251.226.89:8080/play/865.m3u8$LR•IPV4•16『线路12』 +http://php.jdshipin.com/TVOD/iptv.php?id=wxxw$LR•IPV4•16『线路12』 #EXTINF:-1 tvg-id="TVB无线新闻" tvg-name="TVB无线新闻" group-title="港澳台",TVB无线新闻 -http://43.251.226.89:8080/play/893.m3u8$LR•IPV4•16『线路13』 +http://43.251.226.89:8080/play/865.m3u8$LR•IPV4•16『线路13』 #EXTINF:-1 tvg-id="TVB无线新闻" tvg-name="TVB无线新闻" group-title="港澳台",TVB无线新闻 -https://hls-gateway.vpstv.net/streams/708884.m3u8$LR•IPV4•16『线路14』 +http://43.251.226.89:8080/play/893.m3u8$LR•IPV4•16『线路14』 #EXTINF:-1 tvg-id="TVB无线新闻" tvg-name="TVB无线新闻" group-title="港澳台",TVB无线新闻 -http://push.cdn1.hls123.de:8080/streams/n66wwnx3l7i/index.m3u8$LR•IPV4•16『线路15』 +https://hls-gateway.vpstv.net/streams/708884.m3u8$LR•IPV4•16『线路15』 #EXTINF:-1 tvg-id="TVB无线新闻" tvg-name="TVB无线新闻" group-title="港澳台",TVB无线新闻 -http://php.jdshipin.com/TVOD/iptv.php?id=wxxw$LR•IPV4•16『线路16』 +http://push.cdn1.hls123.de:8080/streams/n66wwnx3l7i/index.m3u8$LR•IPV4•16『线路16』 #EXTINF:-1 tvg-id="TVB星河" tvg-name="TVB星河" group-title="港澳台",TVB星河 -http://php.jdshipin.com/TVOD/iptv.php?id=xinghe$LR•IPV4•15『线路1』 +http://r.jdshipin.com/Voac4$LR•IPV4•16『线路1』 #EXTINF:-1 tvg-id="TVB星河" tvg-name="TVB星河" group-title="港澳台",TVB星河 -http://php.jdshipin.com:8880/smt.php?id=Xinhe$LR•IPV4•15『线路2』 +http://php.jdshipin.com/TVOD/iptv.php?id=xinghe$LR•IPV4•16『线路2』 #EXTINF:-1 tvg-id="TVB星河" tvg-name="TVB星河" group-title="港澳台",TVB星河 -http://cdn9.1689.us.kg/smt1.1.php?id=Xinhe$LR•IPV4•15『线路3』 +http://php.jdshipin.com:8880/smt.php?id=Xinhe$LR•IPV4•16『线路3』 #EXTINF:-1 tvg-id="TVB星河" tvg-name="TVB星河" group-title="港澳台",TVB星河 -http://v2h.jdshipin.com/xinghe_1/xinghe_1.stream/chunklist_w106.m3u8$LR•IPV4•15『线路4』 +http://cdn9.1689.us.kg/smt1.1.php?id=Xinhe$LR•IPV4•16『线路4』 #EXTINF:-1 tvg-id="TVB星河" tvg-name="TVB星河" group-title="港澳台",TVB星河 -http://php.jdshipin.com:8880/TVOD/iptv.php?id=xinghe$LR•IPV4•15『线路5』 +http://v2h.jdshipin.com/xinghe_1/xinghe_1.stream/chunklist_w106.m3u8$LR•IPV4•16『线路5』 #EXTINF:-1 tvg-id="TVB星河" tvg-name="TVB星河" group-title="港澳台",TVB星河 -https://tv.mytvsuper.xyz/tvb/xinghe/xinghe.m3u8$LR•IPV4•15『线路6』 +http://php.jdshipin.com:8880/TVOD/iptv.php?id=xinghe$LR•IPV4•16『线路6』 #EXTINF:-1 tvg-id="TVB星河" tvg-name="TVB星河" group-title="港澳台",TVB星河 -p3p://167.114.175.6:55331/5fdee23d000b670a6d96428e4c334643$LR•IPV4•15『线路7』 +https://tv.mytvsuper.xyz/tvb/xinghe/xinghe.m3u8$LR•IPV4•16『线路7』 #EXTINF:-1 tvg-id="TVB星河" tvg-name="TVB星河" group-title="港澳台",TVB星河 -p3p://167.114.175.6:55331/6563174f0002ffaf9c45dd927c7d6df1$LR•IPV4•15『线路8』 +p3p://167.114.175.6:55331/5fdee23d000b670a6d96428e4c334643$LR•IPV4•16『线路8』 #EXTINF:-1 tvg-id="TVB星河" tvg-name="TVB星河" group-title="港澳台",TVB星河 -http://push.cdn1.hls123.de:8080/streams/hbiwgswysds/index.m3u8$LR•IPV4•15『线路9』 +p3p://167.114.175.6:55331/6563174f0002ffaf9c45dd927c7d6df1$LR•IPV4•16『线路9』 #EXTINF:-1 tvg-id="TVB星河" tvg-name="TVB星河" group-title="港澳台",TVB星河 -https://flv-play.clouda.com/live/13-ut3RFdJxRGEIEn2AMMPEkKK5TfHBIgvlqwcjFuAItD6Y2IgzaDEznMF3EswnXWDb4O.flv$LR•IPV4•15『线路10』 +http://push.cdn1.hls123.de:8080/streams/hbiwgswysds/index.m3u8$LR•IPV4•16『线路10』 #EXTINF:-1 tvg-id="TVB星河" tvg-name="TVB星河" group-title="港澳台",TVB星河 -http://43.251.226.89:8080/play/876.m3u8$LR•IPV4•15『线路11』 +https://flv-play.clouda.com/live/13-ut3RFdJxRGEIEn2AMMPEkKK5TfHBIgvlqwcjFuAItD6Y2IgzaDEznMF3EswnXWDb4O.flv$LR•IPV4•16『线路11』 #EXTINF:-1 tvg-id="TVB星河" tvg-name="TVB星河" group-title="港澳台",TVB星河 -http://43.251.226.89:8080/play/877.m3u8$LR•IPV4•15『线路12』 +https://live.ottiptv.cc/huya/23734169$LR•IPV4•16『线路12』 #EXTINF:-1 tvg-id="TVB星河" tvg-name="TVB星河" group-title="港澳台",TVB星河 -http://43.251.226.89:8080/play/898.m3u8$LR•IPV4•15『线路13』 +http://43.251.226.89:8080/play/876.m3u8$LR•IPV4•16『线路13』 #EXTINF:-1 tvg-id="TVB星河" tvg-name="TVB星河" group-title="港澳台",TVB星河 -https://hls-gateway.vpstv.net/streams/709489.m3u8$LR•IPV4•15『线路14』 +http://43.251.226.89:8080/play/877.m3u8$LR•IPV4•16『线路14』 #EXTINF:-1 tvg-id="TVB星河" tvg-name="TVB星河" group-title="港澳台",TVB星河 -https://live.ottiptv.cc/huya/23734169$LR•IPV4•15『线路15』 +http://43.251.226.89:8080/play/898.m3u8$LR•IPV4•16『线路15』 +#EXTINF:-1 tvg-id="TVB星河" tvg-name="TVB星河" group-title="港澳台",TVB星河 +https://hls-gateway.vpstv.net/streams/709489.m3u8$LR•IPV4•16『线路16』 #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•12『线路1』 +http://38.64.72.148/hls/modn/list/4013/chunklist1.m3u8$LR•IPV4•12『线路1』 #EXTINF:-1 tvg-id="台视" tvg-name="台视" group-title="港澳台",台视 http://74.91.26.218:82/live/ttvcj.m3u8$LR•IPV4•12『线路2』 #EXTINF:-1 tvg-id="台视" tvg-name="台视" group-title="港澳台",台视 @@ -7974,7 +7966,7 @@ http://211.72.174.95:8112/0.ts$LR•IPV4•12『线路10』 #EXTINF:-1 tvg-id="台视" tvg-name="台视" group-title="港澳台",台视 http://220.135.241.47:8315/0.ts$LR•IPV4•12『线路11』 #EXTINF:-1 tvg-id="台视" tvg-name="台视" group-title="港澳台",台视 -http://38.64.72.148/hls/modn/list/4013/chunklist1.m3u8$LR•IPV4•12『线路12』 +http://162.19.247.76:22222/live/taishi/index.m3u8$LR•IPV4•12『线路12』 #EXTINF:-1 tvg-id="民视新闻" tvg-name="民视新闻" group-title="港澳台",民视新闻 http://38.64.72.148:80/hls/modn/list/4012/chunklist0.m3u8$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-id="民视新闻" tvg-name="民视新闻" group-title="港澳台",民视新闻 @@ -7988,11 +7980,11 @@ http://rihou.cc:555/tv/民视新闻$LR•IPV4•6『线路5』 #EXTINF:-1 tvg-id="民视新闻" tvg-name="民视新闻" group-title="港澳台",民视新闻 http://211.72.174.95:8117/0.ts$LR•IPV4•6『线路6』 #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/chunklist_w99771165.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』 #EXTINF:-1 tvg-id="耀才财经" tvg-name="耀才财经" group-title="港澳台",耀才财经 -https://v3.mediacast.hk/webcast/bshdlive-pc/chunklist_w99771165.m3u8$LR•IPV4•3『线路3』 +http://202.69.67.66:443/webcast/bshdlive-mobile/playlist.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』 #EXTINF:-1 tvg-id="美亚C+" tvg-name="美亚C+" group-title="港澳台",美亚C+ @@ -8002,39 +7994,39 @@ http://ottproxy2.ist.ooo/livehls/MOB-U1-NO/02.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="港澳台",龙华偶像 -http://43.251.226.89:8080/play/911.m3u8$LR•IPV4•4『线路1』 +https://cdn8.163189.xyz/live/lhox/stream.m3u8$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-id="龙华偶像" tvg-name="龙华偶像" group-title="港澳台",龙华偶像 -http://cdn8.163189.xyz/163189/lhox$LR•IPV4•4『线路2』 +http://43.251.226.89:8080/play/911.m3u8$LR•IPV4•4『线路2』 #EXTINF:-1 tvg-id="龙华偶像" tvg-name="龙华偶像" group-title="港澳台",龙华偶像 -p3p://167.114.175.6:55331/609bb1b0000732744f174daa791d3b43$LR•IPV4•4『线路3』 +http://cdn8.163189.xyz/163189/lhox$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-id="龙华偶像" tvg-name="龙华偶像" group-title="港澳台",龙华偶像 -https://cdn8.163189.xyz/live/lhox/stream.m3u8$LR•IPV4•4『线路4』 +p3p://167.114.175.6:55331/609bb1b0000732744f174daa791d3b43$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-id="龙华经典" tvg-name="龙华经典" group-title="港澳台",龙华经典 -http://43.251.226.89:8080/play/909.m3u8$LR•IPV4•4『线路1』 +https://cdn8.163189.xyz/live/lhjd/stream.m3u8$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-id="龙华经典" tvg-name="龙华经典" group-title="港澳台",龙华经典 -http://cdn8.163189.xyz/163189/lhjd$LR•IPV4•4『线路2』 +http://43.251.226.89:8080/play/909.m3u8$LR•IPV4•4『线路2』 #EXTINF:-1 tvg-id="龙华经典" tvg-name="龙华经典" group-title="港澳台",龙华经典 -p3p://167.114.175.6:55331/6223b9d8000ef67e3e8a2073190e36d5$LR•IPV4•4『线路3』 +http://cdn8.163189.xyz/163189/lhjd$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-id="龙华经典" tvg-name="龙华经典" group-title="港澳台",龙华经典 -https://cdn8.163189.xyz/live/lhjd/stream.m3u8$LR•IPV4•4『线路4』 +p3p://167.114.175.6:55331/6223b9d8000ef67e3e8a2073190e36d5$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-id="纬来日本" tvg-name="纬来日本" group-title="港澳台",纬来日本 rtmp://f13h.mine.nu/sat/tv771$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="纬来日本" tvg-name="纬来日本" group-title="港澳台",纬来日本 p3p://167.114.175.6:55331/5fe1add80007bbbd788125c43bf36060$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="纬来体育" tvg-name="纬来体育" group-title="港澳台",纬来体育 -http://148.135.34.95/mn.php?playurl=http://www.pelotas.org:8278/videolandsport/playlist.m3u8$LR•IPV4•27『线路1』 +https://epg.pw/stream/4f18dfe0593db5c686eb64ae8edaf2a9202d4d46bdc9bbde2cee27708e12ea01.m3u8$LR•IPV4•27『线路1』 #EXTINF:-1 tvg-id="纬来体育" tvg-name="纬来体育" group-title="港澳台",纬来体育 -http://zb.xmzb.xyz/123.php?id=⚽马上oppppp一纬来体育$LR•IPV4•27『线路2』 +http://148.135.34.95/mn.php?playurl=http://www.pelotas.org:8278/videolandsport/playlist.m3u8$LR•IPV4•27『线路2』 #EXTINF:-1 tvg-id="纬来体育" tvg-name="纬来体育" group-title="港澳台",纬来体育 -https://epg.pw/stream/8855a9936e37e608a0ec8a014cce1673dee9c5d68d560da376cc92e5edef2b25.m3u8$LR•IPV4•27『线路3』 +http://zb.xmzb.xyz/123.php?id=⚽马上oppppp一纬来体育$LR•IPV4•27『线路3』 #EXTINF:-1 tvg-id="纬来体育" tvg-name="纬来体育" group-title="港澳台",纬来体育 -https://epg.pw/stream/ab6df63b64d0cc44a1f4f029ed847a26fa54a7aebd455578fb05a63f02c22f4b.m3u8$LR•IPV4•27『线路4』 +https://epg.pw/stream/8855a9936e37e608a0ec8a014cce1673dee9c5d68d560da376cc92e5edef2b25.m3u8$LR•IPV4•27『线路4』 #EXTINF:-1 tvg-id="纬来体育" tvg-name="纬来体育" group-title="港澳台",纬来体育 -https://stream1.freetv.fun/wei-lai-ti-yu-3.m3u8$LR•IPV4•27『线路5』 +https://epg.pw/stream/ab6df63b64d0cc44a1f4f029ed847a26fa54a7aebd455578fb05a63f02c22f4b.m3u8$LR•IPV4•27『线路5』 #EXTINF:-1 tvg-id="纬来体育" tvg-name="纬来体育" group-title="港澳台",纬来体育 -https://cdn.iptv8k.top/dl/jrys.php?id=292&time=20240926215313&ip=111.229.253.40$LR•IPV4•27『线路6』 +https://stream1.freetv.fun/wei-lai-ti-yu-3.m3u8$LR•IPV4•27『线路6』 #EXTINF:-1 tvg-id="纬来体育" tvg-name="纬来体育" group-title="港澳台",纬来体育 -https://epg.pw/stream/4f18dfe0593db5c686eb64ae8edaf2a9202d4d46bdc9bbde2cee27708e12ea01.m3u8$LR•IPV4•27『线路7』 +https://cdn.iptv8k.top/dl/jrys.php?id=292&time=20240926215313&ip=111.229.253.40$LR•IPV4•27『线路7』 #EXTINF:-1 tvg-id="纬来体育" tvg-name="纬来体育" group-title="港澳台",纬来体育 http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2056&tk=e640d0a1bf70$LR•IPV4•27『线路8』 #EXTINF:-1 tvg-id="纬来体育" tvg-name="纬来体育" group-title="港澳台",纬来体育 @@ -8098,137 +8090,137 @@ 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://217.26.190.76:8888/play/a0m6/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://217.26.190.76:8888/play/a0m6/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•9『线路1』 #EXTINF:-1 tvg-id="DW" tvg-name="DW" group-title="港澳台",DW -https://dwamdstream103.akamaized.net/hls/live/2015526/dwstream103/master.m3u8$LR•IPV4•9『线路2』 +https://dwamdstream102.akamaized.net/hls/live/2015525/dwstream102/stream05/streamPlaylist.m3u8$LR•IPV4•9『线路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•9『线路3』 +http://aktv.top/AKTV/live/aktv3/dw/AKTV.m3u8$LR•IPV4•9『线路3』 #EXTINF:-1 tvg-id="DW" tvg-name="DW" group-title="港澳台",DW -https://dwamdstream104.akamaized.net/hls/live/2015530/dwstream104/master.m3u8$LR•IPV4•9『线路4』 +http://37.27.111.214:8080/live/46/hls.m3u8$LR•IPV4•9『线路4』 #EXTINF:-1 tvg-id="DW" tvg-name="DW" group-title="港澳台",DW -https://dwamdstream110.akamaized.net/hls/live/2017971/dwstream110/master.m3u8$LR•IPV4•9『线路5』 +https://dwamdstream104.akamaized.net/hls/live/2015530/dwstream104/stream04/streamPlaylist.m3u8$LR•IPV4•9『线路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•9『线路6』 +https://dwamdstream103.akamaized.net/hls/live/2015526/dwstream103/master.m3u8$LR•IPV4•9『线路6』 #EXTINF:-1 tvg-id="DW" tvg-name="DW" group-title="港澳台",DW -http://aktv.top/AKTV/live/aktv3/dw/AKTV.m3u8$LR•IPV4•9『线路7』 +https://amg01644-amg01644c1-amgplt0343.playout.now3.amagi.tv/ts-eu-w1-n2/playlist/amg01644-amg01644c1-amgplt0343/playlist.m3u8$LR•IPV4•9『线路7』 #EXTINF:-1 tvg-id="DW" tvg-name="DW" group-title="港澳台",DW -http://37.27.111.214:8080/live/46/hls.m3u8$LR•IPV4•9『线路8』 +https://dwamdstream104.akamaized.net/hls/live/2015530/dwstream104/master.m3u8$LR•IPV4•9『线路8』 #EXTINF:-1 tvg-id="DW" tvg-name="DW" group-title="港澳台",DW -https://dwamdstream104.akamaized.net/hls/live/2015530/dwstream104/stream04/streamPlaylist.m3u8$LR•IPV4•9『线路9』 +https://dwamdstream110.akamaized.net/hls/live/2017971/dwstream110/master.m3u8$LR•IPV4•9『线路9』 #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•6『线路1』 +https://amg00106-france24-france24-samsunguk-qvpp8.amagi.tv/playlist/amg00106-france24-france24-samsunguk/playlist.m3u8$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-id="France 24" tvg-name="France 24" group-title="港澳台",France 24 -https://live.france24.com/hls/live/2037218-b/F24_EN_HI_HLS/master_5000.m3u8$LR•IPV4•6『线路2』 +https://live.france24.com/hls/live/2037222-b/F24_AR_HI_HLS/master_5000.m3u8$LR•IPV4•6『线路2』 #EXTINF:-1 tvg-id="France 24" tvg-name="France 24" group-title="港澳台",France 24 -https://live.france24.com/hls/live/2037220-b/F24_ES_HI_HLS/master_5000.m3u8$LR•IPV4•6『线路3』 +https://live.france24.com/hls/live/2037218-b/F24_EN_HI_HLS/master_5000.m3u8$LR•IPV4•6『线路3』 #EXTINF:-1 tvg-id="France 24" tvg-name="France 24" group-title="港澳台",France 24 -https://live.france24.com/hls/live/2037179-b/F24_FR_HI_HLS/master_5000.m3u8$LR•IPV4•6『线路4』 +https://live.france24.com/hls/live/2037220-b/F24_ES_HI_HLS/master_5000.m3u8$LR•IPV4•6『线路4』 #EXTINF:-1 tvg-id="France 24" tvg-name="France 24" group-title="港澳台",France 24 -https://amg00106-amg00106c1-rakuten-uk-4654.playouts.now.amagi.tv/playlist/amg00106-france24fast-france24-rakutenuk/playlist.m3u8$LR•IPV4•6『线路5』 +https://live.france24.com/hls/live/2037179-b/F24_FR_HI_HLS/master_5000.m3u8$LR•IPV4•6『线路5』 #EXTINF:-1 tvg-id="France 24" tvg-name="France 24" group-title="港澳台",France 24 -https://amg00106-france24-france24-samsunguk-qvpp8.amagi.tv/playlist/amg00106-france24-france24-samsunguk/playlist.m3u8$LR•IPV4•6『线路6』 +https://amg00106-amg00106c1-rakuten-uk-4654.playouts.now.amagi.tv/playlist/amg00106-france24fast-france24-rakutenuk/playlist.m3u8$LR•IPV4•6『线路6』 #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•4『线路1』 +http://aktv.top/AKTV/live/aktv3/nhkworldjapan/AKTV.m3u8$LR•IPV4•4『线路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•4『线路2』 +https://media-tyo.hls.nhkworld.jp/hls/w/live/master.m3u8$LR•IPV4•4『线路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•4『线路3』 +https://masterpl.hls.nhkworld.jp/hls/w/live/smarttv.m3u8$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-id="NHK WorldJapan" tvg-name="NHK WorldJapan" group-title="港澳台",NHK World-Japan -https://media-tyo.hls.nhkworld.jp/hls/w/live/master.m3u8$LR•IPV4•4『线路4』 +https://nhk.lls.pbs.org/index.m3u8$LR•IPV4•4『线路4』 #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•11『线路1』 +http://free.cnlive.club/channel/n75fc9ff7/index.m3u8?q=1752629214236$LR•IPV4•11『线路1』 #EXTINF:-1 tvg-id="Nick Jr" tvg-name="Nick Jr" group-title="港澳台",Nick Jr -https://stream8.cinerama.uz/1501/playlist.m3u8$LR•IPV4•11『线路2』 +http://108.181.20.255:27347/livehttpplay?channel_id=23044$LR•IPV4•11『线路2』 #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•11『线路3』 +http://bethoven.af-stream.com:1600/s/kwtlxswl/nick-jr-il/video.m3u8$LR•IPV4•11『线路3』 #EXTINF:-1 tvg-id="Nick Jr" tvg-name="Nick Jr" group-title="港澳台",Nick Jr -https://jmp2.uk/plu-67f3eb1c443f0671bc03ece8.m3u8$LR•IPV4•11『线路4』 +https://stream8.cinerama.uz/1501/playlist.m3u8$LR•IPV4•11『线路4』 #EXTINF:-1 tvg-id="Nick Jr" tvg-name="Nick Jr" group-title="港澳台",Nick Jr -https://jmp2.uk/plu-6824ce95f09106f4b18f4114.m3u8$LR•IPV4•11『线路5』 +http://40.160.24.55/NICK_JR/index.m3u8$LR•IPV4•11『线路5』 #EXTINF:-1 tvg-id="Nick Jr" tvg-name="Nick Jr" group-title="港澳台",Nick Jr -https://jmp2.uk/plu-5ddd7cb2cbb9010009b4fe32.m3u8$LR•IPV4•11『线路6』 +https://jmp2.uk/plu-67f3eb1c443f0671bc03ece8.m3u8$LR•IPV4•11『线路6』 #EXTINF:-1 tvg-id="Nick Jr" tvg-name="Nick Jr" group-title="港澳台",Nick Jr -http://179.60.51.134:8888/NICK-JR/index.m3u8$LR•IPV4•11『线路7』 +https://jmp2.uk/plu-6824ce95f09106f4b18f4114.m3u8$LR•IPV4•11『线路7』 #EXTINF:-1 tvg-id="Nick Jr" tvg-name="Nick Jr" group-title="港澳台",Nick Jr -https://jmp2.uk/plu-62bdb75c3afd1200079146a6.m3u8$LR•IPV4•11『线路8』 +https://jmp2.uk/plu-5ddd7cb2cbb9010009b4fe32.m3u8$LR•IPV4•11『线路8』 #EXTINF:-1 tvg-id="Nick Jr" tvg-name="Nick Jr" group-title="港澳台",Nick Jr -https://jmp2.uk/plu-5ca6748a37b88b269472dad9.m3u8$LR•IPV4•11『线路9』 +http://179.60.51.134:8888/NICK-JR/index.m3u8$LR•IPV4•11『线路9』 #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•11『线路10』 +https://jmp2.uk/plu-62bdb75c3afd1200079146a6.m3u8$LR•IPV4•11『线路10』 #EXTINF:-1 tvg-id="Nick Jr" tvg-name="Nick Jr" group-title="港澳台",Nick Jr -http://108.181.20.255:27347/livehttpplay?channel_id=23044$LR•IPV4•11『线路11』 +https://jmp2.uk/plu-5ca6748a37b88b269472dad9.m3u8$LR•IPV4•11『线路11』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -http://213.91.179.28:8000/play/a056$LR•IPV4•27『线路1』 +http://free.cnlive.club/channel/n6a165737/index.m3u8?q=1752629214236$LR•IPV4•27『线路1』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -https://ma.anixa.tv/clips/stream/nickelodeon/playlist.php$LR•IPV4•27『线路2』 +http://213.91.179.28:8000/play/a056$LR•IPV4•27『线路2』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -http://151.80.18.177:86/Nickelodeon_FR/index.m3u8$LR•IPV4•27『线路3』 +https://ma.anixa.tv/clips/stream/nickelodeon/playlist.php$LR•IPV4•27『线路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•27『线路4』 +http://151.80.18.177:86/Nickelodeon_FR/index.m3u8$LR•IPV4•27『线路4』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -http://149.71.34.166:8000/play/a00u/index.m3u8$LR•IPV4•27『线路5』 +http://bethoven.af-stream.com:1600/s/kwtlxswl/yes-nickelodeon-il/video.m3u8$LR•IPV4•27『线路5』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -http://193.239.186.231/NICK/index.m3u8$LR•IPV4•27『线路6』 +http://149.71.34.166:8000/play/a00u/index.m3u8$LR•IPV4•27『线路6』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -http://82.78.243.219:45739/play/a00o/index.m3u8$LR•IPV4•27『线路7』 +http://193.239.186.231/NICK/index.m3u8$LR•IPV4•27『线路7』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -http://23.237.104.106:8080/USA_NICKELODEON/index.m3u8$LR•IPV4•27『线路8』 +http://82.78.243.219:45739/play/a00o/index.m3u8$LR•IPV4•27『线路8』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -http://202.169.224.202:8800/udp/239.9.1.17:1234$LR•IPV4•27『线路9』 +http://23.237.104.106:8080/USA_NICKELODEON/index.m3u8$LR•IPV4•27『线路9』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -https://stream8.cinerama.uz/1500/playlist.m3u8$LR•IPV4•27『线路10』 +http://202.169.224.202:8800/udp/239.9.1.17:1234$LR•IPV4•27『线路10』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -https://jmp2.uk/plu-6824cda00101510f9eeaa011.m3u8$LR•IPV4•27『线路11』 +https://stream8.cinerama.uz/1500/playlist.m3u8$LR•IPV4•27『线路11』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -https://jmp2.uk/plu-6824ce10c5d53e1351ceb8d1.m3u8$LR•IPV4•27『线路12』 +https://jmp2.uk/plu-6824cda00101510f9eeaa011.m3u8$LR•IPV4•27『线路12』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -https://jmp2.uk/plu-67f3eb800a1beb98767ca748.m3u8$LR•IPV4•27『线路13』 +https://jmp2.uk/plu-6824ce10c5d53e1351ceb8d1.m3u8$LR•IPV4•27『线路13』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -https://jmp2.uk/plu-5d8d08395f39465da6fb3ec4.m3u8$LR•IPV4•27『线路14』 +https://jmp2.uk/plu-67f3eb800a1beb98767ca748.m3u8$LR•IPV4•27『线路14』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -http://46.149.191.217:9011/play/a018$LR•IPV4•27『线路15』 +https://jmp2.uk/plu-5d8d08395f39465da6fb3ec4.m3u8$LR•IPV4•27『线路15』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -http://151.80.18.177:86/Nickelodeon_Junior/index.m3u8$LR•IPV4•27『线路16』 +http://46.149.191.217:9011/play/a018$LR•IPV4•27『线路16』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -http://179.60.51.134:8888/NICK/index.m3u8$LR•IPV4•27『线路17』 +http://151.80.18.177:86/Nickelodeon_Junior/index.m3u8$LR•IPV4•27『线路17』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -https://jmp2.uk/plu-5f0d668b872e4400073acc68.m3u8$LR•IPV4•27『线路18』 +http://179.60.51.134:8888/NICK/index.m3u8$LR•IPV4•27『线路18』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -https://jmp2.uk/plu-60f5fabf0721880007cd50e3.m3u8$LR•IPV4•27『线路19』 +https://jmp2.uk/plu-5f0d668b872e4400073acc68.m3u8$LR•IPV4•27『线路19』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -https://jmp2.uk/plu-5fab09a8749b1a00077d35d2.m3u8$LR•IPV4•27『线路20』 +https://jmp2.uk/plu-60f5fabf0721880007cd50e3.m3u8$LR•IPV4•27『线路20』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -https://jmp2.uk/plu-5ede448d3d50590007a4419e.m3u8$LR•IPV4•27『线路21』 +https://jmp2.uk/plu-5fab09a8749b1a00077d35d2.m3u8$LR•IPV4•27『线路21』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -https://jmp2.uk/plu-645951c0e94c38000802d2cb.m3u8$LR•IPV4•27『线路22』 +https://jmp2.uk/plu-5ede448d3d50590007a4419e.m3u8$LR•IPV4•27『线路22』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -https://jmp2.uk/plu-645952687cb4b100084ed52e.m3u8$LR•IPV4•27『线路23』 +https://jmp2.uk/plu-645951c0e94c38000802d2cb.m3u8$LR•IPV4•27『线路23』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -https://jmp2.uk/plu-620ff46e0a576e0007dc2f89.m3u8$LR•IPV4•27『线路24』 +https://jmp2.uk/plu-645952687cb4b100084ed52e.m3u8$LR•IPV4•27『线路24』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -https://jmp2.uk/plu-620ff0a01f9e8700076c6f9d.m3u8$LR•IPV4•27『线路25』 +https://jmp2.uk/plu-620ff46e0a576e0007dc2f89.m3u8$LR•IPV4•27『线路25』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -https://jmp2.uk/plu-5ca673e0d0bd6c2689c94ce3.m3u8$LR•IPV4•27『线路26』 +https://jmp2.uk/plu-620ff0a01f9e8700076c6f9d.m3u8$LR•IPV4•27『线路26』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -http://free.cnlive.club/channel/n6a165737/index.m3u8?q=1752629214236$LR•IPV4•27『线路27』 +https://jmp2.uk/plu-5ca673e0d0bd6c2689c94ce3.m3u8$LR•IPV4•27『线路27』 #EXTINF:-1 tvg-id="Thrill" tvg-name="Thrill" group-title="港澳台",Thrill https://cdn10jtedge.indihometv.com/atm/DASH/thrill/manifest.mpd$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="Thrill" tvg-name="Thrill" group-title="港澳台",Thrill @@ -8260,29 +8252,29 @@ p3p://167.114.175.6:55331/612db8220006940e897960753ab534e9$LR•IPV4 #EXTINF:-1 tvg-id="镜新闻" tvg-name="镜新闻" group-title="港澳台",镜新闻 p3p://167.114.175.6:55331/63ebd33c0003c437e26ae87279d061f1$LR•IPV4 #EXTINF:-1 tvg-id="龙华卡通" tvg-name="龙华卡通" group-title="港澳台",龙华卡通 -http://43.251.226.89:8080/play/910.m3u8$LR•IPV4•4『线路1』 +https://cdn8.163189.xyz/live/lhkt/stream.m3u8$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-id="龙华卡通" tvg-name="龙华卡通" group-title="港澳台",龙华卡通 -http://cdn8.163189.xyz/163189/lhkt$LR•IPV4•4『线路2』 +http://43.251.226.89:8080/play/910.m3u8$LR•IPV4•4『线路2』 #EXTINF:-1 tvg-id="龙华卡通" tvg-name="龙华卡通" group-title="港澳台",龙华卡通 -p3p://167.114.175.6:55331/6264b6e0000669483c6365b319d43878$LR•IPV4•4『线路3』 +http://cdn8.163189.xyz/163189/lhkt$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-id="龙华卡通" tvg-name="龙华卡通" group-title="港澳台",龙华卡通 -https://cdn8.163189.xyz/live/lhkt/stream.m3u8$LR•IPV4•4『线路4』 +p3p://167.114.175.6:55331/6264b6e0000669483c6365b319d43878$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-id="龙华日韩" tvg-name="龙华日韩" group-title="港澳台",龙华日韩 -http://43.251.226.89:8080/play/912.m3u8$LR•IPV4•4『线路1』 +https://cdn8.163189.xyz/live/lhrh/stream.m3u8$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-id="龙华日韩" tvg-name="龙华日韩" group-title="港澳台",龙华日韩 -http://cdn8.163189.xyz/163189/lhrh$LR•IPV4•4『线路2』 +http://43.251.226.89:8080/play/912.m3u8$LR•IPV4•4『线路2』 #EXTINF:-1 tvg-id="龙华日韩" tvg-name="龙华日韩" group-title="港澳台",龙华日韩 -p3p://167.114.175.6:55331/621e1d0e00085766289da9bb1d7120af$LR•IPV4•4『线路3』 +http://cdn8.163189.xyz/163189/lhrh$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-id="龙华日韩" tvg-name="龙华日韩" group-title="港澳台",龙华日韩 -https://cdn8.163189.xyz/live/lhrh/stream.m3u8$LR•IPV4•4『线路4』 +p3p://167.114.175.6:55331/621e1d0e00085766289da9bb1d7120af$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-id="龙华洋片" tvg-name="龙华洋片" group-title="港澳台",龙华洋片 -http://43.251.226.89:8080/play/908.m3u8$LR•IPV4•4『线路1』 +https://cdn8.163189.xyz/live/lhyp/stream.m3u8$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-id="龙华洋片" tvg-name="龙华洋片" group-title="港澳台",龙华洋片 -http://cdn8.163189.xyz/163189/lhyp$LR•IPV4•4『线路2』 +http://43.251.226.89:8080/play/908.m3u8$LR•IPV4•4『线路2』 #EXTINF:-1 tvg-id="龙华洋片" tvg-name="龙华洋片" group-title="港澳台",龙华洋片 -p3p://167.114.175.6:55331/64c0e1af000875f522a785c0570b06ae$LR•IPV4•4『线路3』 +http://cdn8.163189.xyz/163189/lhyp$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-id="龙华洋片" tvg-name="龙华洋片" group-title="港澳台",龙华洋片 -https://cdn8.163189.xyz/live/lhyp/stream.m3u8$LR•IPV4•4『线路4』 +p3p://167.114.175.6:55331/64c0e1af000875f522a785c0570b06ae$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-id="美亚电影台" tvg-name="美亚电影台" group-title="港澳台",美亚电影台 http://43.251.226.89:8080/play/880.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="美亚电影台" tvg-name="美亚电影台" group-title="港澳台",美亚电影台 @@ -8304,9 +8296,9 @@ p3p://167.114.175.6:55331/602c73500002f4d29c90fa1270f21160$LR•IPV4•2『线 #EXTINF:-1 tvg-id="凤凰卫视" tvg-name="凤凰卫视" group-title="港澳台",凤凰卫视 http://cdn.132.us.kg/live/fhzw/stream.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="Viutv" tvg-name="Viutv" group-title="港澳台",Viutv -https://cdn.163189.xyz/163189/viu$LR•IPV4•8『线路1』 +http://php.jdshipin.com/TVOD/iptv.php?id=viutv$LR•IPV4•8『线路1』 #EXTINF:-1 tvg-id="Viutv" tvg-name="Viutv" group-title="港澳台",Viutv -http://php.jdshipin.com/TVOD/iptv.php?id=viutv$LR•IPV4•8『线路2』 +https://cdn.163189.xyz/163189/viu$LR•IPV4•8『线路2』 #EXTINF:-1 tvg-id="Viutv" tvg-name="Viutv" group-title="港澳台",Viutv http://php.jdshipin.com:8880/TVOD/iptv.php?id=viutv$LR•IPV4•8『线路3』 #EXTINF:-1 tvg-id="Viutv" tvg-name="Viutv" group-title="港澳台",Viutv @@ -8392,11 +8384,11 @@ https://raw.githubusercontent.com/ChiSheng9/iptv/master/TV03.m3u8$LR•IPV4•2 #EXTINF:-1 tvg-id="东森财经" tvg-name="东森财经" group-title="港澳台",东森财经 p3p://167.114.175.6:55331/61468bd70005123dea7373f226636dba$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="龙华戏剧" tvg-name="龙华戏剧" group-title="港澳台",龙华戏剧 -http://43.251.226.89:8080/play/913.m3u8$LR•IPV4•3『线路1』 +https://cdn8.163189.xyz/live/lhxj/stream.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="龙华戏剧" tvg-name="龙华戏剧" group-title="港澳台",龙华戏剧 -http://cdn8.163189.xyz/163189/lhxj$LR•IPV4•3『线路2』 +http://43.251.226.89:8080/play/913.m3u8$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="龙华戏剧" tvg-name="龙华戏剧" group-title="港澳台",龙华戏剧 -https://cdn8.163189.xyz/live/lhxj/stream.m3u8$LR•IPV4•3『线路3』 +http://cdn8.163189.xyz/163189/lhxj$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="靖天育乐" tvg-name="靖天育乐" group-title="港澳台",靖天育乐 p3p://167.114.175.6:55331/6223be04000a57323e9a6b2919b21d76$LR•IPV4 #EXTINF:-1 tvg-id="靖天欢乐" tvg-name="靖天欢乐" group-title="港澳台",靖天欢乐 @@ -8432,11 +8424,11 @@ 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/ndGgS$LR•IPV4•10『线路1』 +http://r.jdshipin.com/Nr5jq$LR•IPV4•10『线路1』 #EXTINF:-1 tvg-id="TVB Plus" tvg-name="TVB Plus" group-title="港澳台",TVB Plus http://php.jdshipin.com/TVOD/iptv.php?id=j2$LR•IPV4•10『线路2』 #EXTINF:-1 tvg-id="TVB Plus" tvg-name="TVB Plus" group-title="港澳台",TVB Plus @@ -8456,51 +8448,51 @@ p3p://167.114.175.6:55331/653e4d3e000b344f0c91357e73163f82$LR•IPV4•10『线 #EXTINF:-1 tvg-id="TVB Plus" tvg-name="TVB Plus" group-title="港澳台",TVB Plus http://push.cdn1.hls123.de:8080/streams/gw8n98gubb4/index.m3u8$LR•IPV4•10『线路10』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://45.162.231.38:7779/AXN/index.m3u8$LR•IPV4•23『线路1』 +p3p://167.114.175.6:55331/66d23a53000d25d573c606e3274f26c5$LR•IPV4•23『线路1』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://cdn.haititivi.com/AXN/index.m3u8$LR•IPV4•23『线路2』 +p3p://167.114.175.6:55331/6258ddc5000ee8a40e1bc8f50dec545c$LR•IPV4•23『线路2』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://5.57.74.130:8000/play/a0at/index.m3u8$LR•IPV4•23『线路3』 +http://45.162.231.38:7779/AXN/index.m3u8$LR•IPV4•23『线路3』 #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•23『线路4』 +http://cdn.haititivi.com/AXN/index.m3u8$LR•IPV4•23『线路4』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://88.212.15.19/live/test_black/playlist.m3u8$LR•IPV4•23『线路5』 +http://5.57.74.130:8000/play/a0at/index.m3u8$LR•IPV4•23『线路5』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://82.78.243.219:45739/play/a00e/index.m3u8$LR•IPV4•23『线路6』 +http://85.14.32.26:8800/udp/239.100.10.17:5000$LR•IPV4•23『线路6』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://46.149.191.217:9009/play/a02d$LR•IPV4•23『线路7』 +http://88.212.15.19/live/test_black/playlist.m3u8$LR•IPV4•23『线路7』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://85.11.144.9:4222/AXN$LR•IPV4•23『线路8』 +http://82.78.243.219:45739/play/a00e/index.m3u8$LR•IPV4•23『线路8』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://88.212.15.19/live/test_axn/playlist.m3u8$LR•IPV4•23『线路9』 +http://46.149.191.217:9009/play/a02d$LR•IPV4•23『线路9』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://82.78.243.219:45739/play/a01n/index.m3u8$LR•IPV4•23『线路10』 +http://85.11.144.9:4222/AXN$LR•IPV4•23『线路10』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://138.121.15.230:9002/AXN/index.m3u8$LR•IPV4•23『线路11』 +http://88.212.15.19/live/test_axn/playlist.m3u8$LR•IPV4•23『线路11』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://177.234.249.178:8888/AXN/index.m3u8$LR•IPV4•23『线路12』 +http://82.78.243.219:45739/play/a01n/index.m3u8$LR•IPV4•23『线路12』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://177.245.131.133:8080/AXN/index.m3u8$LR•IPV4•23『线路13』 +http://138.121.15.230:9002/AXN/index.m3u8$LR•IPV4•23『线路13』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://45.6.4.35/AXN/index.m3u8$LR•IPV4•23『线路14』 +http://177.234.249.178:8888/AXN/index.m3u8$LR•IPV4•23『线路14』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://50.7.120.34:8080/AXN_BLACK/index.m3u8$LR•IPV4•23『线路15』 +http://177.245.131.133:8080/AXN/index.m3u8$LR•IPV4•23『线路15』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -https://lb.dstvmultimedia.com/AXNSpin/index.m3u8$LR•IPV4•23『线路16』 +http://45.6.4.35/AXN/index.m3u8$LR•IPV4•23『线路16』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://82.78.243.219:45739/play/a00n/index.m3u8$LR•IPV4•23『线路17』 +http://50.7.120.34:8080/AXN_BLACK/index.m3u8$LR•IPV4•23『线路17』 #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•23『线路18』 +https://lb.dstvmultimedia.com/AXNSpin/index.m3u8$LR•IPV4•23『线路18』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://88.212.15.19/live/test_white/playlist.m3u8$LR•IPV4•23『线路19』 +http://82.78.243.219:45739/play/a00n/index.m3u8$LR•IPV4•23『线路19』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://50.7.120.34:8080/AXN_WHITE/index.m3u8$LR•IPV4•23『线路20』 +http://85.14.32.26:8800/udp/239.100.10.18:5000$LR•IPV4•23『线路20』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://54.37.19.157/axn/playlist.m3u8$LR•IPV4•23『线路21』 +http://88.212.15.19/live/test_white/playlist.m3u8$LR•IPV4•23『线路21』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -p3p://167.114.175.6:55331/66d23a53000d25d573c606e3274f26c5$LR•IPV4•23『线路22』 +http://50.7.120.34:8080/AXN_WHITE/index.m3u8$LR•IPV4•23『线路22』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -p3p://167.114.175.6:55331/6258ddc5000ee8a40e1bc8f50dec545c$LR•IPV4•23『线路23』 +http://54.37.19.157/axn/playlist.m3u8$LR•IPV4•23『线路23』 #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="港澳台",澳门卫视 @@ -8532,77 +8524,77 @@ https://live.streamingfast.net/osmflivech1.m3u8$LR•IPV4•38『线路1』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good https://live.streamingfast.net/osmflivech2.m3u8$LR•IPV4•38『线路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•38『线路3』 +http://live.streamingfast.net/hls-live/goodtv/_definst_/liveevent/live-ch1-3.m3u8$LR•IPV4•38『线路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•38『线路4』 +http://live.streamingfast.net/hls-live/goodtv/_definst_/liveevent/live-ch2-3.m3u8$LR•IPV4•38『线路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•38『线路5』 +p3p://167.114.175.6:55331/63ed9f4900046160e96ffb5b44333476$LR•IPV4•38『线路5』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech3.m3u8$LR•IPV4•38『线路6』 +https://aajtaklive.vgcdn.net/v1/master/611d79b11b77e2f571934fd80ca1413453772ac7/3196cced-ce29-4219-9809-f07ccdaa02b9/vglive-sk-848805/master.m3u8$LR•IPV4•38『线路6』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech5.m3u8$LR•IPV4•38『线路7』 +http://stream1.ai-net.net:1935/gtv1/_definst_/smil:gtv.smil/playlist.m3u8$LR•IPV4•38『线路7』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech6.m3u8$LR•IPV4•38『线路8』 +https://58c04fb1d143f.streamlock.net/feel_good_radio_1/feel_good_radio_1/playlist.m3u8$LR•IPV4•38『线路8』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech7.m3u8$LR•IPV4•38『线路9』 +https://live.streamingfast.net/osmflivech3.m3u8$LR•IPV4•38『线路9』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech9.m3u8$LR•IPV4•38『线路10』 +https://live.streamingfast.net/osmflivech5.m3u8$LR•IPV4•38『线路10』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech12.m3u8$LR•IPV4•38『线路11』 +https://live.streamingfast.net/osmflivech6.m3u8$LR•IPV4•38『线路11』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech14.m3u8$LR•IPV4•38『线路12』 +https://live.streamingfast.net/osmflivech7.m3u8$LR•IPV4•38『线路12』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech15.m3u8$LR•IPV4•38『线路13』 +https://live.streamingfast.net/osmflivech9.m3u8$LR•IPV4•38『线路13』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech16.m3u8$LR•IPV4•38『线路14』 +https://live.streamingfast.net/osmflivech12.m3u8$LR•IPV4•38『线路14』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech17.m3u8$LR•IPV4•38『线路15』 +https://live.streamingfast.net/osmflivech14.m3u8$LR•IPV4•38『线路15』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech18.m3u8$LR•IPV4•38『线路16』 +https://live.streamingfast.net/osmflivech15.m3u8$LR•IPV4•38『线路16』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech20.m3u8$LR•IPV4•38『线路17』 +https://live.streamingfast.net/osmflivech16.m3u8$LR•IPV4•38『线路17』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech21.m3u8$LR•IPV4•38『线路18』 +https://live.streamingfast.net/osmflivech17.m3u8$LR•IPV4•38『线路18』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech24.m3u8$LR•IPV4•38『线路19』 +https://live.streamingfast.net/osmflivech18.m3u8$LR•IPV4•38『线路19』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech27.m3u8$LR•IPV4•38『线路20』 +https://live.streamingfast.net/osmflivech20.m3u8$LR•IPV4•38『线路20』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech28.m3u8$LR•IPV4•38『线路21』 +https://live.streamingfast.net/osmflivech21.m3u8$LR•IPV4•38『线路21』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech29.m3u8$LR•IPV4•38『线路22』 +https://live.streamingfast.net/osmflivech24.m3u8$LR•IPV4•38『线路22』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech30.m3u8$LR•IPV4•38『线路23』 +https://live.streamingfast.net/osmflivech27.m3u8$LR•IPV4•38『线路23』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech31.m3u8$LR•IPV4•38『线路24』 +https://live.streamingfast.net/osmflivech28.m3u8$LR•IPV4•38『线路24』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech32.m3u8$LR•IPV4•38『线路25』 +https://live.streamingfast.net/osmflivech29.m3u8$LR•IPV4•38『线路25』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech33.m3u8$LR•IPV4•38『线路26』 +https://live.streamingfast.net/osmflivech30.m3u8$LR•IPV4•38『线路26』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech38.m3u8$LR•IPV4•38『线路27』 +https://live.streamingfast.net/osmflivech31.m3u8$LR•IPV4•38『线路27』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech40.m3u8$LR•IPV4•38『线路28』 +https://live.streamingfast.net/osmflivech32.m3u8$LR•IPV4•38『线路28』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech45.m3u8$LR•IPV4•38『线路29』 +https://live.streamingfast.net/osmflivech33.m3u8$LR•IPV4•38『线路29』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech47.m3u8$LR•IPV4•38『线路30』 +https://live.streamingfast.net/osmflivech38.m3u8$LR•IPV4•38『线路30』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech49.m3u8$LR•IPV4•38『线路31』 +https://live.streamingfast.net/osmflivech40.m3u8$LR•IPV4•38『线路31』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech50.m3u8$LR•IPV4•38『线路32』 +https://live.streamingfast.net/osmflivech45.m3u8$LR•IPV4•38『线路32』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://jmp2.uk/plu-65775af3b3801200084a3aa4.m3u8$LR•IPV4•38『线路33』 +https://live.streamingfast.net/osmflivech47.m3u8$LR•IPV4•38『线路33』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://jmp2.uk/plu-685a995b460ac82fa504342c.m3u8$LR•IPV4•38『线路34』 +https://live.streamingfast.net/osmflivech49.m3u8$LR•IPV4•38『线路34』 #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•38『线路35』 +https://live.streamingfast.net/osmflivech50.m3u8$LR•IPV4•38『线路35』 #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•38『线路36』 +https://jmp2.uk/plu-65775af3b3801200084a3aa4.m3u8$LR•IPV4•38『线路36』 #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•38『线路37』 +https://jmp2.uk/plu-685a995b460ac82fa504342c.m3u8$LR•IPV4•38『线路37』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -p3p://167.114.175.6:55331/63ed9f4900046160e96ffb5b44333476$LR•IPV4•38『线路38』 +https://amg01448-samsungin-ndtvgoodtimes-samsungin-ad-gp.amagi.tv/playlist/amg01448-samsungin-ndtvgoodtimes-samsungin/playlist.m3u8$LR•IPV4•38『线路38』 #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 @@ -8628,35 +8620,35 @@ https://ythls.armelin.one/channel/UC2VmWn8dAqkzlQqvy02E1PA.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="Global News" tvg-name="Global News" group-title="港澳台",Global News https://live.corusdigitaldev.com/groupb/live/3062d0e3-ed4c-4f47-8482-95648250f4b8/live.isml/.m3u8$LR•IPV4•16『线路1』 #EXTINF:-1 tvg-id="Global News" tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cbf063257170000724590c.m3u8$LR•IPV4•16『线路2』 +http://iptv.zkbhj.com/tv/url/go?id=188da1cd42026cce4e3c6fd900520b5bf2325e82e1723382000c25c9009b1449703a53d8cb741b92224765715d1a7388d43b8da7f422852ecf86f83de913c00f$LR•IPV4•16『线路2』 #EXTINF:-1 tvg-id="Global News" tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cbf23dcfb48300077f8348.m3u8$LR•IPV4•16『线路3』 +https://jmp2.uk/plu-62cbf063257170000724590c.m3u8$LR•IPV4•16『线路3』 #EXTINF:-1 tvg-id="Global News" tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cbf2de1fba5f0007e47d9c.m3u8$LR•IPV4•16『线路4』 +https://jmp2.uk/plu-62cbf23dcfb48300077f8348.m3u8$LR•IPV4•16『线路4』 #EXTINF:-1 tvg-id="Global News" tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cbf398b8e02600071deda5.m3u8$LR•IPV4•16『线路5』 +https://jmp2.uk/plu-62cbf2de1fba5f0007e47d9c.m3u8$LR•IPV4•16『线路5』 #EXTINF:-1 tvg-id="Global News" tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cbf4964446e2000742073e.m3u8$LR•IPV4•16『线路6』 +https://jmp2.uk/plu-62cbf398b8e02600071deda5.m3u8$LR•IPV4•16『线路6』 #EXTINF:-1 tvg-id="Global News" tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cbf7439cb58900088dc77b.m3u8$LR•IPV4•16『线路7』 +https://jmp2.uk/plu-62cbf4964446e2000742073e.m3u8$LR•IPV4•16『线路7』 #EXTINF:-1 tvg-id="Global News" tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cbfbd6ad95670007f567af.m3u8$LR•IPV4•16『线路8』 +https://jmp2.uk/plu-62cbf7439cb58900088dc77b.m3u8$LR•IPV4•16『线路8』 #EXTINF:-1 tvg-id="Global News" tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cbef9ebb857100072fc187.m3u8$LR•IPV4•16『线路9』 +https://jmp2.uk/plu-62cbfbd6ad95670007f567af.m3u8$LR•IPV4•16『线路9』 #EXTINF:-1 tvg-id="Global News" tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cbfc572dc3750007a493ce.m3u8$LR•IPV4•16『线路10』 +https://jmp2.uk/plu-62cbef9ebb857100072fc187.m3u8$LR•IPV4•16『线路10』 #EXTINF:-1 tvg-id="Global News" tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cbfcd8c2db990007861e43.m3u8$LR•IPV4•16『线路11』 +https://jmp2.uk/plu-62cbfc572dc3750007a493ce.m3u8$LR•IPV4•16『线路11』 #EXTINF:-1 tvg-id="Global News" tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cbff53ca8f2200080253b5.m3u8$LR•IPV4•16『线路12』 +https://jmp2.uk/plu-62cbfcd8c2db990007861e43.m3u8$LR•IPV4•16『线路12』 #EXTINF:-1 tvg-id="Global News" tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cc00359cb58900088dc840.m3u8$LR•IPV4•16『线路13』 +https://jmp2.uk/plu-62cbff53ca8f2200080253b5.m3u8$LR•IPV4•16『线路13』 #EXTINF:-1 tvg-id="Global News" tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cc00b3b821cf00070f82c3.m3u8$LR•IPV4•16『线路14』 +https://jmp2.uk/plu-62cc00359cb58900088dc840.m3u8$LR•IPV4•16『线路14』 #EXTINF:-1 tvg-id="Global News" tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cc0120880c890007191016.m3u8$LR•IPV4•16『线路15』 +https://jmp2.uk/plu-62cc00b3b821cf00070f82c3.m3u8$LR•IPV4•16『线路15』 #EXTINF:-1 tvg-id="Global News" tvg-name="Global News" group-title="港澳台",Global News -http://iptv.zkbhj.com/tv/url/go?id=188da1cd42026cce4e3c6fd900520b5bf2325e82e1723382000c25c9009b1449703a53d8cb741b92224765715d1a7388d43b8da7f422852ecf86f83de913c00f$LR•IPV4•16『线路16』 +https://jmp2.uk/plu-62cc0120880c890007191016.m3u8$LR•IPV4•16『线路16』 #EXTINF:-1 tvg-id="SET iNews" tvg-name="SET iNews" group-title="港澳台",SET iNews https://ythls.armelin.one/channel/UCoNYj9OFHZn3ACmmeRCPwbA.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="TTV News" tvg-name="TTV News" group-title="港澳台",TTV News @@ -8686,13 +8678,13 @@ 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•4『线路1』 +http://php.jdshipin.com/TVOD/iptv.php?id=hoytv$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-id="HOY TV" tvg-name="HOY TV" group-title="港澳台",HOY TV p3p://167.114.175.6:55331/62184bc3000cd48f11e47b06202b7e18$LR•IPV4•4『线路2』 #EXTINF:-1 tvg-id="HOY TV" tvg-name="HOY TV" group-title="港澳台",HOY TV http://push.cdn1.hls123.de:8080/streams/dguce4v9b69/index.m3u8$LR•IPV4•4『线路3』 #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•4『线路4』 +https://hoytv-live-stream.hoy.tv/ch77/index.m3u8$LR•IPV4•4『线路4』 #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 @@ -8760,21 +8752,21 @@ 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://amg00556-amg00556c3-firetv-us-6060.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•8『线路1』 +https://t.freetv.fun/live/nba-tv.m3u8$LR•IPV4•8『线路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•8『线路2』 +https://t.freetv.fun/live/nba-tv-2.php$LR•IPV4•8『线路2』 #EXTINF:-1 tvg-id="NBA TV" tvg-name="NBA TV" group-title="港澳台",NBA TV -https://t.freetv.fun/live/nba-tv.m3u8$LR•IPV4•8『线路3』 +https://stream1.freetv.fun/nba-tv-7.m3u8$LR•IPV4•8『线路3』 #EXTINF:-1 tvg-id="NBA TV" tvg-name="NBA TV" group-title="港澳台",NBA TV -https://t.freetv.fun/live/nba-tv-2.php$LR•IPV4•8『线路4』 +https://stream1.freetv.fun/nba-tv-5.m3u8$LR•IPV4•8『线路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•8『线路5』 +http://170.yfvodcdn.com:19980/live/nbaTV2/hls.m3u8$LR•IPV4•8『线路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•8『线路6』 +p3p://167.114.175.6:55331/65a587500007bc039fca3566638e69af$LR•IPV4•8『线路6』 #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•8『线路7』 +https://amg00556-amg00556c3-firetv-us-6060.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•8『线路7』 #EXTINF:-1 tvg-id="NBA TV" tvg-name="NBA TV" group-title="港澳台",NBA TV -p3p://167.114.175.6:55331/65a587500007bc039fca3566638e69af$LR•IPV4•8『线路8』 +http://user.scalecdn.co:8080/live/54706135/09221986/3092.m3u8$LR•IPV4•8『线路8』 #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 @@ -8804,253 +8796,253 @@ 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•100『线路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•100『线路3』 +http://free.cnlive.club/channel/356e7ac6/index.m3u8?q=1752629214236$LR•IPV4•100『线路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•100『线路4』 +http://free.cnlive.club/channel/359a630b/index.m3u8?q=1752629214236$LR•IPV4•100『线路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•100『线路5』 +p3p://167.114.175.6:55331/64026f590000e9663abc652f25176282$LR•IPV4•100『线路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•100『线路6』 +p3p://167.114.175.6:55331/6444eb2e000921503e6ecfe873cd10b1$LR•IPV4•100『线路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•100『线路7』 +http://125.227.210.55:8165/VideoInput/play.ts$LR•IPV4•100『线路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•100『线路8』 +https://d2vnbkvjbims7j.cloudfront.net/containerA/LTN/playlist.m3u8$LR•IPV4•100『线路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•100『线路9』 +https://amg00793-amg00793c6-xumo-us-2669.playouts.now.amagi.tv/BBCStudios-BBCEarthA-hls/playlist540p.m3u8$LR•IPV4•100『线路9』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://193.46.58.239:8080/BBCOneHD/index.m3u8$LR•IPV4•100『线路10』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_alba/hevc_iptv_mse_v0.mpd$LR•IPV4•100『线路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•100『线路11』 +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•100『线路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•100『线路12』 +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•100『线路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•100『线路13』 +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•100『线路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•100『线路14』 +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•100『线路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•100『线路15』 +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•100『线路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•100『线路16』 +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•100『线路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•100『线路17』 +http://193.46.58.239:8080/BBCOneHD/index.m3u8$LR•IPV4•100『线路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•100『线路18』 +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•100『线路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•100『线路19』 +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•100『线路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•100『线路20』 +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•100『线路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•100『线路21』 +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•100『线路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•100『线路22』 +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•100『线路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•100『线路23』 +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•100『线路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•100『线路24』 +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•100『线路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•100『线路25』 +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•100『线路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•100『线路26』 +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•100『线路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•100『线路27』 +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•100『线路27』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://193.46.58.239:8080/BBCTwoHD/index.m3u8$LR•IPV4•100『线路28』 +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•100『线路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•100『线路29』 +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•100『线路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•100『线路30』 +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•100『线路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•100『线路31』 +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•100『线路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•100『线路32』 +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•100『线路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•100『线路33』 +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•100『线路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•100『线路34』 +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•100『线路34』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://138.121.15.230:9002/BBC-NEWS/index.m3u8$LR•IPV4•100『线路35』 +http://193.46.58.239:8080/BBCTwoHD/index.m3u8$LR•IPV4•100『线路35』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://23.237.104.106:8080/USA_BBC_NEWS/index.m3u8$LR•IPV4•100『线路36』 +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•100『线路36』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://45.153.96.44:8001$LR•IPV4•100『线路37』 +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•100『线路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•100『线路38』 +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•100『线路38』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://23.239.31.26:8989/bbcamerica/index.m3u8$LR•IPV4•100『线路39』 +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•100『线路39』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://81.15.109.89:8001/play/BBCBrit$LR•IPV4•100『线路40』 +https://pb-iiczlgfysam0q.akamaized.net/v1/amcnetworks_bbcnews_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•100『线路40』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://81.15.109.89:8001/play/BBCFirst$LR•IPV4•100『线路41』 +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•100『线路41』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://d1em2hga7sgumq.cloudfront.net/playlist.m3u8$LR•IPV4•100『线路42』 +http://138.121.15.230:9002/BBC-NEWS/index.m3u8$LR•IPV4•100『线路42』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://pb-0ix3l1oxmg1fj.akamaized.net/playlist.m3u8$LR•IPV4•100『线路43』 +http://23.237.104.106:8080/USA_BBC_NEWS/index.m3u8$LR•IPV4•100『线路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•100『线路44』 +http://45.153.96.44:8001$LR•IPV4•100『线路44』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://bbc-impossible-1-us.xumo.wurl.tv/playlist.m3u8$LR•IPV4•100『线路45』 +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•100『线路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•100『线路46』 +http://23.239.31.26:8989/bbcamerica/index.m3u8$LR•IPV4•100『线路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•100『线路47』 +http://81.15.109.89:8001/play/BBCBrit$LR•IPV4•100『线路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•100『线路48』 +http://81.15.109.89:8001/play/BBCFirst$LR•IPV4•100『线路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•100『线路49』 +https://d1em2hga7sgumq.cloudfront.net/playlist.m3u8$LR•IPV4•100『线路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•100『线路50』 +https://pb-0ix3l1oxmg1fj.akamaized.net/playlist.m3u8$LR•IPV4•100『线路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•100『线路51』 +https://amg00793-amg00793c41-rakuten-it-5445.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•100『线路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•100『线路52』 +https://bbc-impossible-1-us.xumo.wurl.tv/playlist.m3u8$LR•IPV4•100『线路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•100『线路53』 +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•100『线路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•100『线路54』 +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•100『线路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•100『线路55』 +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•100『线路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•100『线路56』 +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•100『线路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•100『线路57』 +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•100『线路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•100『线路58』 +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•100『线路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•100『线路59』 +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•100『线路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•100『线路60』 +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•100『线路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•100『线路61』 +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•100『线路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•100『线路62』 +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•100『线路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•100『线路63』 +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•100『线路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•100『线路64』 +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•100『线路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•100『线路65』 +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•100『线路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•100『线路66』 +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•100『线路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•100『线路67』 +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•100『线路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•100『线路68』 +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•100『线路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•100『线路69』 +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•100『线路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•100『线路70』 +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•100『线路70』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://jmp2.uk/plu-60dafb9a0df1ba000758d37b.m3u8$LR•IPV4•100『线路71』 +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•100『线路71』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://jmp2.uk/plu-62e7fa5ab5062e0007dcf97d.m3u8$LR•IPV4•100『线路72』 +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•100『线路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•100『线路73』 +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•100『线路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•100『线路74』 +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•100『线路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•100『线路75』 +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•100『线路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•100『线路76』 +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•100『线路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•100『线路77』 +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•100『线路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•100『线路78』 +https://jmp2.uk/plu-60dafb9a0df1ba000758d37b.m3u8$LR•IPV4•100『线路78』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://dmr1h4skdal9h.cloudfront.net/playlist.m3u8$LR•IPV4•100『线路79』 +https://jmp2.uk/plu-62e7fa5ab5062e0007dcf97d.m3u8$LR•IPV4•100『线路79』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://bbc-classicdrwho-1-us.roku.wurl.tv/playlist.m3u8$LR•IPV4•100『线路80』 +https://amg00793-amg00793c5-xumo-us-2664.playouts.now.amagi.tv/bbcstudios-bbctopgear8min-all/playlist.m3u8$LR•IPV4•100『线路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•100『线路81』 +https://amg00793-amg00793c5-firetv-us-4068.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•100『线路81』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://d11r33s5i066xh.cloudfront.net/playlist.m3u8$LR•IPV4•100『线路82』 +https://amg00793-amg00793c49-rakuten-fi-5848.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•100『线路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•100『线路83』 +https://amg00793-amg00793c45-rakuten-fr-5539.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•100『线路83』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://81.15.109.89:8001/play/BBCLifestyle$LR•IPV4•100『线路84』 +https://amg00793-amg00793c44-rakuten-de-5538.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•100『线路84』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://jmp2.uk/plu-60e4519e6873180007d3cddb.m3u8$LR•IPV4•100『线路85』 +https://amg00793-amg00793c43-rakuten-it-5537.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•100『线路85』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://81.15.109.89:8001/play/BBCEarth$LR•IPV4•100『线路86』 +https://dmr1h4skdal9h.cloudfront.net/playlist.m3u8$LR•IPV4•100『线路86』 #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•100『线路87』 +https://bbc-classicdrwho-1-us.roku.wurl.tv/playlist.m3u8$LR•IPV4•100『线路87』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://185.102.171.218/BBCEarth/index.m3u8$LR•IPV4•100『线路88』 +https://amg00793-amg00793c40-rakuten-es-5444.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•100『线路88』 #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•100『线路89』 +https://d11r33s5i066xh.cloudfront.net/playlist.m3u8$LR•IPV4•100『线路89』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://d1e9r0b71zfwk7.cloudfront.net/playlist.m3u8$LR•IPV4•100『线路90』 +https://cdn4.skygo.mn/live/disk1/BBC_lifestyle/HLSv3-FTA/BBC_lifestyle.m3u8$LR•IPV4•100『线路90』 #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•100『线路91』 +http://81.15.109.89:8001/play/BBCLifestyle$LR•IPV4•100『线路91』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://193.46.58.239:8080/CbeebiesHD/index.m3u8$LR•IPV4•100『线路92』 +https://jmp2.uk/plu-60e4519e6873180007d3cddb.m3u8$LR•IPV4•100『线路92』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://193.46.58.239:8080/CBBCHD/index.m3u8$LR•IPV4•100『线路93』 +http://81.15.109.89:8001/play/BBCEarth$LR•IPV4•100『线路93』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://free.cnlive.club/channel/356e7ac6/index.m3u8?q=1752629214236$LR•IPV4•100『线路94』 +https://amg00793-amg00793c6-xumo-us-2669.playouts.now.amagi.tv/BBCStudios-BBCEarthA-hls/playlist.m3u8$LR•IPV4•100『线路94』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://free.cnlive.club/channel/359a630b/index.m3u8?q=1752629214236$LR•IPV4•100『线路95』 +http://185.102.171.218/BBCEarth/index.m3u8$LR•IPV4•100『线路95』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -p3p://167.114.175.6:55331/64026f590000e9663abc652f25176282$LR•IPV4•100『线路96』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_parliament/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路96』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -p3p://167.114.175.6:55331/6444eb2e000921503e6ecfe873cd10b1$LR•IPV4•100『线路97』 +https://d1e9r0b71zfwk7.cloudfront.net/playlist.m3u8$LR•IPV4•100『线路97』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://125.227.210.55:8165/VideoInput/play.ts$LR•IPV4•100『线路98』 +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•100『线路98』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://d2vnbkvjbims7j.cloudfront.net/containerA/LTN/playlist.m3u8$LR•IPV4•100『线路99』 +http://193.46.58.239:8080/CbeebiesHD/index.m3u8$LR•IPV4•100『线路99』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://amg00793-amg00793c6-xumo-us-2669.playouts.now.amagi.tv/BBCStudios-BBCEarthA-hls/playlist540p.m3u8$LR•IPV4•100『线路100』 +http://193.46.58.239:8080/CBBCHD/index.m3u8$LR•IPV4•100『线路100』 #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://ds2c506obo7m8.cloudfront.net/v1/master/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-7zjq3tdqasbg8/index.m3u8$LR•IPV4•12『线路1』 #EXTINF:-1 tvg-id="CNN" tvg-name="CNN" group-title="港澳台",CNN -http://88.212.15.19/live/test_cnn_pirma_news/playlist.m3u8$LR•IPV4•12『线路2』 +http://live.cnnindonesia.com/livecnn/smil:cnntv.smil/chunklist_w1285822120_b384000_sleng.m3u8$LR•IPV4•12『线路2』 #EXTINF:-1 tvg-id="CNN" tvg-name="CNN" group-title="港澳台",CNN -https://jmp2.uk/plu-66c45c274f25dd00092739ee.m3u8$LR•IPV4•12『线路3』 +http://88.212.15.19/live/test_cnn_pirma_news/playlist.m3u8$LR•IPV4•12『线路3』 #EXTINF:-1 tvg-id="CNN" tvg-name="CNN" group-title="港澳台",CNN -https://jmp2.uk/plu-5421f71da6af422839419cb3.m3u8$LR•IPV4•12『线路4』 +https://jmp2.uk/plu-66c45c274f25dd00092739ee.m3u8$LR•IPV4•12『线路4』 #EXTINF:-1 tvg-id="CNN" tvg-name="CNN" group-title="港澳台",CNN -https://jmp2.uk/plu-66337e365a402e00087eccaf.m3u8$LR•IPV4•12『线路5』 +https://jmp2.uk/plu-5421f71da6af422839419cb3.m3u8$LR•IPV4•12『线路5』 #EXTINF:-1 tvg-id="CNN" tvg-name="CNN" group-title="港澳台",CNN -https://jmp2.uk/plu-66c45c0de7f5e80008b82005.m3u8$LR•IPV4•12『线路6』 +https://jmp2.uk/plu-66337e365a402e00087eccaf.m3u8$LR•IPV4•12『线路6』 #EXTINF:-1 tvg-id="CNN" tvg-name="CNN" group-title="港澳台",CNN -https://jmp2.uk/plu-66c45b36a72e7b0008a2b291.m3u8$LR•IPV4•12『线路7』 +https://jmp2.uk/plu-66c45c0de7f5e80008b82005.m3u8$LR•IPV4•12『线路7』 #EXTINF:-1 tvg-id="CNN" tvg-name="CNN" group-title="港澳台",CNN -https://jmp2.uk/plu-66c45ba803e3b20008d8c294.m3u8$LR•IPV4•12『线路8』 +https://jmp2.uk/plu-66c45b36a72e7b0008a2b291.m3u8$LR•IPV4•12『线路8』 #EXTINF:-1 tvg-id="CNN" tvg-name="CNN" group-title="港澳台",CNN -https://jmp2.uk/plu-66dff9d46ad04d0008fda4de.m3u8$LR•IPV4•12『线路9』 +https://jmp2.uk/plu-66c45ba803e3b20008d8c294.m3u8$LR•IPV4•12『线路9』 #EXTINF:-1 tvg-id="CNN" tvg-name="CNN" group-title="港澳台",CNN -https://jmp2.uk/plu-673248f9030a2c0008033af8.m3u8$LR•IPV4•12『线路10』 +https://jmp2.uk/plu-66dff9d46ad04d0008fda4de.m3u8$LR•IPV4•12『线路10』 #EXTINF:-1 tvg-id="CNN" tvg-name="CNN" group-title="港澳台",CNN -https://jmp2.uk/plu-66e0b4536ad04d0008fff4b2.m3u8$LR•IPV4•12『线路11』 +https://jmp2.uk/plu-673248f9030a2c0008033af8.m3u8$LR•IPV4•12『线路11』 #EXTINF:-1 tvg-id="CNN" tvg-name="CNN" group-title="港澳台",CNN -http://live.cnnindonesia.com/livecnn/smil:cnntv.smil/chunklist_w1285822120_b384000_sleng.m3u8$LR•IPV4•12『线路12』 +https://jmp2.uk/plu-66e0b4536ad04d0008fff4b2.m3u8$LR•IPV4•12『线路12』 #EXTINF:-1 tvg-id="CBC News" tvg-name="CBC News" group-title="港澳台",CBC News -https://d2ny9lo79ujali.cloudfront.net/CBC_News_International.m3u8$LR•IPV4•8『线路1』 +https://dbrb49pjoymg4.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod_default_xumo-ams-aws/master.m3u8?ads.xumo_channelId=99991276$LR•IPV4•8『线路1』 #EXTINF:-1 tvg-id="CBC News" tvg-name="CBC News" group-title="港澳台",CBC News -https://jmp2.uk/plu-6536725167bd1a00084481bc.m3u8$LR•IPV4•8『线路2』 +https://d2ny9lo79ujali.cloudfront.net/CBC_News_International.m3u8$LR•IPV4•8『线路2』 #EXTINF:-1 tvg-id="CBC News" tvg-name="CBC News" group-title="港澳台",CBC News -https://amagi-streams.akamaized.net/hls/live/2110960/cbcnewsbc/master.m3u8$LR•IPV4•8『线路3』 +https://jmp2.uk/plu-6536725167bd1a00084481bc.m3u8$LR•IPV4•8『线路3』 #EXTINF:-1 tvg-id="CBC News" tvg-name="CBC News" group-title="港澳台",CBC News -https://jmp2.uk/plu-66a8f01914a2bb00084dd86c.m3u8$LR•IPV4•8『线路4』 +https://amagi-streams.akamaized.net/hls/live/2110960/cbcnewsbc/master.m3u8$LR•IPV4•8『线路4』 #EXTINF:-1 tvg-id="CBC News" tvg-name="CBC News" group-title="港澳台",CBC News -https://amagi-streams.akamaized.net/hls/live/2110962/cbcexplore/master.m3u8$LR•IPV4•8『线路5』 +https://jmp2.uk/plu-66a8f01914a2bb00084dd86c.m3u8$LR•IPV4•8『线路5』 #EXTINF:-1 tvg-id="CBC News" tvg-name="CBC News" group-title="港澳台",CBC News -https://amagi-streams.akamaized.net/hls/live/2110961/cbctoronto/master.m3u8$LR•IPV4•8『线路6』 +https://amagi-streams.akamaized.net/hls/live/2110962/cbcexplore/master.m3u8$LR•IPV4•8『线路6』 #EXTINF:-1 tvg-id="CBC News" tvg-name="CBC News" group-title="港澳台",CBC News -https://jmp2.uk/plu-6536721dbfbaec00088687c0.m3u8$LR•IPV4•8『线路7』 +https://amagi-streams.akamaized.net/hls/live/2110961/cbctoronto/master.m3u8$LR•IPV4•8『线路7』 #EXTINF:-1 tvg-id="CBC News" tvg-name="CBC News" group-title="港澳台",CBC News -https://dbrb49pjoymg4.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod_default_xumo-ams-aws/master.m3u8?ads.xumo_channelId=99991276$LR•IPV4•8『线路8』 +https://jmp2.uk/plu-6536721dbfbaec00088687c0.m3u8$LR•IPV4•8『线路8』 #EXTINF:-1 tvg-id="Sky News" tvg-name="Sky News" group-title="港澳台",Sky News https://d39chvnxm26pgp.cloudfront.net/v1/master/72588bff830dec7b26d7cbbf5f3c24928aec5c03/cc-sthen6ms4vxgv-stage/WNSFO/ABR.m3u8$LR•IPV4•10『线路1』 #EXTINF:-1 tvg-id="Sky News" tvg-name="Sky News" group-title="港澳台",Sky News @@ -9074,21 +9066,21 @@ https://distro001-gb-hls1-prd.delivery.skycdp.com/easel_cdn/ngrp:weather_loop.st #EXTINF:-1 tvg-id="Al Jazeera" tvg-name="Al Jazeera" group-title="港澳台",Al Jazeera https://live-hls-aje-ak.getaj.net/AJE/01.m3u8$LR•IPV4•9『线路1』 #EXTINF:-1 tvg-id="Al Jazeera" tvg-name="Al Jazeera" group-title="港澳台",Al Jazeera -https://live-hls-apps-aja-fa.getaj.net/AJA/01.m3u8$LR•IPV4•9『线路2』 +http://live-hls-web-aja.getaj.net/AJA/02.m3u8$LR•IPV4•9『线路2』 #EXTINF:-1 tvg-id="Al Jazeera" tvg-name="Al Jazeera" group-title="港澳台",Al Jazeera -https://live-hls-web-aja2-gcp.thehlive.com/AJA2/index.m3u8$LR•IPV4•9『线路3』 +https://live-hls-apps-aja-fa.getaj.net/AJA/01.m3u8$LR•IPV4•9『线路3』 #EXTINF:-1 tvg-id="Al Jazeera" tvg-name="Al Jazeera" group-title="港澳台",Al Jazeera -https://live-hls-apps-aje-fa.getaj.net/AJE/index.m3u8$LR•IPV4•9『线路4』 +https://live-hls-web-aja2-gcp.thehlive.com/AJA2/index.m3u8$LR•IPV4•9『线路4』 #EXTINF:-1 tvg-id="Al Jazeera" tvg-name="Al Jazeera" group-title="港澳台",Al Jazeera -https://live-hls-apps-ajm-fa.getaj.net/AJM/index.m3u8$LR•IPV4•9『线路5』 +https://live-hls-apps-aje-fa.getaj.net/AJE/index.m3u8$LR•IPV4•9『线路5』 #EXTINF:-1 tvg-id="Al Jazeera" tvg-name="Al Jazeera" group-title="港澳台",Al Jazeera -https://live-hls-apps-ajm24-fa.getaj.net/AJM24/index.m3u8$LR•IPV4•9『线路6』 +https://live-hls-apps-ajm-fa.getaj.net/AJM/index.m3u8$LR•IPV4•9『线路6』 #EXTINF:-1 tvg-id="Al Jazeera" tvg-name="Al Jazeera" group-title="港澳台",Al Jazeera -https://live-hls-apps-ajm2-fa.getaj.net/AJM2/index.m3u8$LR•IPV4•9『线路7』 +https://live-hls-apps-ajm24-fa.getaj.net/AJM24/index.m3u8$LR•IPV4•9『线路7』 #EXTINF:-1 tvg-id="Al Jazeera" tvg-name="Al Jazeera" group-title="港澳台",Al Jazeera -https://live-hls-apps-ajd-fa.getaj.net/AJD/index.m3u8$LR•IPV4•9『线路8』 +https://live-hls-apps-ajm2-fa.getaj.net/AJM2/index.m3u8$LR•IPV4•9『线路8』 #EXTINF:-1 tvg-id="Al Jazeera" tvg-name="Al Jazeera" group-title="港澳台",Al Jazeera -http://live-hls-web-aja.getaj.net/AJA/02.m3u8$LR•IPV4•9『线路9』 +https://live-hls-apps-ajd-fa.getaj.net/AJD/index.m3u8$LR•IPV4•9『线路9』 #EXTINF:-1 tvg-id="Arirang" tvg-name="Arirang" group-title="港澳台",Arirang https://amdlive-ch01-ctnd-com.akamaized.net/arirang_1ch/smil:arirang_1ch.smil/chunklist_b3256000_sleng.m3u8$LR•IPV4•5『线路1』 #EXTINF:-1 tvg-id="Arirang" tvg-name="Arirang" group-title="港澳台",Arirang @@ -9120,89 +9112,89 @@ http://s.rocketdns.info:8080/live/monstercable/Dq6jjknxCr/2179.ts$LR•IPV4•26 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY http://s.rocketdns.info:8080/live/monstercable/Dq6jjknxCr/2182.ts$LR•IPV4•26『线路3』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -https://cdn5.smart-tv-data.com/bluesky/bluesky-live/playlist.m3u8$LR•IPV4•26『线路4』 +http://nocable.cc:8080//OURTV/OURTV@4806/35241$LR•IPV4•26『线路4』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://80.194.62.172:50002/stream/channelid/1848745953$LR•IPV4•26『线路5』 +http://nocable.cc:8080//OURTV/OURTV@4806/35244$LR•IPV4•26『线路5』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -https://primetv-prod.akamaized.net/v1/prime-freeview-aes128.m3u8$LR•IPV4•26『线路6』 +http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001373$LR•IPV4•26『线路6』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -https://linear-p.media.skyone.co.nz/primeplus1.clear.m3u8$LR•IPV4•26『线路7』 +http://nocable.cc:8080//OURTV/OURTV@4806/35240$LR•IPV4•26『线路7』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -https://eu.live.skyfolk.mk/live.m3u8$LR•IPV4•26『线路8』 +http://nocable.cc:8080//OURTV/OURTV@4806/137720$LR•IPV4•26『线路8』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -https://636ffd31f0e12.streamlock.net/RacingStream1/RacingStream1/playlist.m3u8$LR•IPV4•26『线路9』 +http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001376$LR•IPV4•26『线路9』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -https://636ffd31f0e12.streamlock.net/RacingStream2/RacingStream2/playlist.m3u8$LR•IPV4•26『线路10』 +http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001378$LR•IPV4•26『线路10』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -https://skylivetab-new.akamaized.net/hls/live/2038782/stcsd/index.m3u8$LR•IPV4•26『线路11』 +http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001379$LR•IPV4•26『线路11』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://nocable.cc:8080//OURTV/OURTV@4806/35241$LR•IPV4•26『线路12』 +http://nocable.cc:8080//OURTV/OURTV@4806/53705$LR•IPV4•26『线路12』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://nocable.cc:8080//OURTV/OURTV@4806/35244$LR•IPV4•26『线路13』 +http://nocable.cc:8080//OURTV/OURTV@4806/35238$LR•IPV4•26『线路13』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001373$LR•IPV4•26『线路14』 +http://nocable.cc:8080//OURTV/OURTV@4806/53663$LR•IPV4•26『线路14』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://nocable.cc:8080//OURTV/OURTV@4806/35240$LR•IPV4•26『线路15』 +http://nocable.cc:8080//OURTV/OURTV@4806/45940$LR•IPV4•26『线路15』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://nocable.cc:8080//OURTV/OURTV@4806/137720$LR•IPV4•26『线路16』 +http://vocotv.pro//revol/revol/276918$LR•IPV4•26『线路16』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001376$LR•IPV4•26『线路17』 +http://vocotv.pro//revol/revol/276924$LR•IPV4•26『线路17』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001378$LR•IPV4•26『线路18』 +http://vocotv.pro//revol/revol/276906$LR•IPV4•26『线路18』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001379$LR•IPV4•26『线路19』 +https://cdn5.smart-tv-data.com/bluesky/bluesky-live/playlist.m3u8$LR•IPV4•26『线路19』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://nocable.cc:8080//OURTV/OURTV@4806/53705$LR•IPV4•26『线路20』 +http://80.194.62.172:50002/stream/channelid/1848745953$LR•IPV4•26『线路20』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://nocable.cc:8080//OURTV/OURTV@4806/35238$LR•IPV4•26『线路21』 +https://primetv-prod.akamaized.net/v1/prime-freeview-aes128.m3u8$LR•IPV4•26『线路21』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://nocable.cc:8080//OURTV/OURTV@4806/53663$LR•IPV4•26『线路22』 +https://linear-p.media.skyone.co.nz/primeplus1.clear.m3u8$LR•IPV4•26『线路22』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://nocable.cc:8080//OURTV/OURTV@4806/45940$LR•IPV4•26『线路23』 +https://eu.live.skyfolk.mk/live.m3u8$LR•IPV4•26『线路23』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://vocotv.pro//revol/revol/276918$LR•IPV4•26『线路24』 +https://636ffd31f0e12.streamlock.net/RacingStream1/RacingStream1/playlist.m3u8$LR•IPV4•26『线路24』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://vocotv.pro//revol/revol/276924$LR•IPV4•26『线路25』 +https://636ffd31f0e12.streamlock.net/RacingStream2/RacingStream2/playlist.m3u8$LR•IPV4•26『线路25』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://vocotv.pro//revol/revol/276906$LR•IPV4•26『线路26』 +https://skylivetab-new.akamaized.net/hls/live/2038782/stcsd/index.m3u8$LR•IPV4•26『线路26』 #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+ -https://jmp2.uk/plu-660c29b5aec9680008f5b4a4.m3u8$LR•IPV4•12『线路1』 +https://d2w9q46ikgrcwx.cloudfront.net/v1/manifest/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-of5cbk3sav3w5/554c05e7-129a-4758-97ba-aa2292e58973/1.m3u8$LR•IPV4•12『线路1』 #EXTINF:-1 tvg-id="FIFA+" tvg-name="FIFA+" group-title="港澳台",FIFA+ -https://37b4c228.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWZyX0ZJRkFQbHVzRnJlbmNoX0hMUw/playlist.m3u8$LR•IPV4•12『线路2』 +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•12『线路2』 #EXTINF:-1 tvg-id="FIFA+" tvg-name="FIFA+" group-title="港澳台",FIFA+ -https://4397879b.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWRlX0ZJRkFQbHVzR2VybWFuX0hMUw/playlist.m3u8$LR•IPV4•12『线路3』 +https://d2w9q46ikgrcwx.cloudfront.net/v1/manifest/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-of5cbk3sav3w5/035f3906-e664-4f1b-83f0-a7547730adce/0.m3u8$LR•IPV4•12『线路3』 #EXTINF:-1 tvg-id="FIFA+" tvg-name="FIFA+" group-title="港澳台",FIFA+ -https://6c849fb3.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/TEctbXhfRklGQVBsdXNTcGFuaXNoLTFfSExT/playlist.m3u8$LR•IPV4•12『线路4』 +https://d2w9q46ikgrcwx.cloudfront.net/v1/manifest/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-of5cbk3sav3w5/b31ebba5-b6b6-4083-9426-1c4bd66b7119/0.m3u8$LR•IPV4•12『线路4』 #EXTINF:-1 tvg-id="FIFA+" tvg-name="FIFA+" group-title="港澳台",FIFA+ -https://5d95f7d7.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWl0X0ZJRkFQbHVzSXRhbGlhbl9ITFM/playlist.m3u8$LR•IPV4•12『线路5』 +https://jmp2.uk/plu-660c29b5aec9680008f5b4a4.m3u8$LR•IPV4•12『线路5』 #EXTINF:-1 tvg-id="FIFA+" tvg-name="FIFA+" group-title="港澳台",FIFA+ -https://e3be9ac5.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/TEctYnJfRklGQVBsdXNQb3J0dWd1ZXNlX0hMUw/playlist.m3u8$LR•IPV4•12『线路6』 +https://37b4c228.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWZyX0ZJRkFQbHVzRnJlbmNoX0hMUw/playlist.m3u8$LR•IPV4•12『线路6』 #EXTINF:-1 tvg-id="FIFA+" tvg-name="FIFA+" group-title="港澳台",FIFA+ -https://d63fabad.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWVzX0ZJRkFQbHVzU3BhbmlzaF9ITFM/playlist.m3u8$LR•IPV4•12『线路7』 +https://4397879b.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWRlX0ZJRkFQbHVzR2VybWFuX0hMUw/playlist.m3u8$LR•IPV4•12『线路7』 #EXTINF:-1 tvg-id="FIFA+" tvg-name="FIFA+" group-title="港澳台",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•12『线路8』 +https://6c849fb3.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/TEctbXhfRklGQVBsdXNTcGFuaXNoLTFfSExT/playlist.m3u8$LR•IPV4•12『线路8』 #EXTINF:-1 tvg-id="FIFA+" tvg-name="FIFA+" group-title="港澳台",FIFA+ -https://cffda8ff.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/U2Ftc3VuZy1nYl9GSUZBUGx1c3dvbWVuX0hMUw/playlist.m3u8$LR•IPV4•12『线路9』 +https://5d95f7d7.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWl0X0ZJRkFQbHVzSXRhbGlhbl9ITFM/playlist.m3u8$LR•IPV4•12『线路9』 #EXTINF:-1 tvg-id="FIFA+" tvg-name="FIFA+" group-title="港澳台",FIFA+ -https://d2w9q46ikgrcwx.cloudfront.net/v1/manifest/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-of5cbk3sav3w5/554c05e7-129a-4758-97ba-aa2292e58973/1.m3u8$LR•IPV4•12『线路10』 +https://e3be9ac5.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/TEctYnJfRklGQVBsdXNQb3J0dWd1ZXNlX0hMUw/playlist.m3u8$LR•IPV4•12『线路10』 #EXTINF:-1 tvg-id="FIFA+" tvg-name="FIFA+" group-title="港澳台",FIFA+ -https://d2w9q46ikgrcwx.cloudfront.net/v1/manifest/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-of5cbk3sav3w5/035f3906-e664-4f1b-83f0-a7547730adce/0.m3u8$LR•IPV4•12『线路11』 +https://d63fabad.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWVzX0ZJRkFQbHVzU3BhbmlzaF9ITFM/playlist.m3u8$LR•IPV4•12『线路11』 #EXTINF:-1 tvg-id="FIFA+" tvg-name="FIFA+" group-title="港澳台",FIFA+ -https://d2w9q46ikgrcwx.cloudfront.net/v1/manifest/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-of5cbk3sav3w5/b31ebba5-b6b6-4083-9426-1c4bd66b7119/0.m3u8$LR•IPV4•12『线路12』 +https://cffda8ff.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/U2Ftc3VuZy1nYl9GSUZBUGx1c3dvbWVuX0hMUw/playlist.m3u8$LR•IPV4•12『线路12』 #EXTINF:-1 tvg-id="Newsmax" tvg-name="Newsmax" group-title="港澳台",Newsmax https://nmx1ota.akamaized.net/hls/live/2107010/Live_1/3.m3u8$LR•IPV4•6『线路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•6『线路2』 +http://nmxlive.akamaized.net/hls/live/529965/Live_1/index.m3u8$LR•IPV4•6『线路2』 #EXTINF:-1 tvg-id="Newsmax" tvg-name="Newsmax" group-title="港澳台",Newsmax -https://amg00217-newsmax-newsmax-zeasn-022k9.amagi.tv/playlist.m3u8$LR•IPV4•6『线路3』 +https://nmxlive.akamaized.net/hls/live/529965/Live_1/index.m3u8$LR•IPV4•6『线路3』 #EXTINF:-1 tvg-id="Newsmax" tvg-name="Newsmax" group-title="港澳台",Newsmax -https://nmx1ota.akamaized.net/hls/live/2107010/Live_1/index.m3u8$LR•IPV4•6『线路4』 +https://2-fss-2.streamhoster.com/pl_120/206858-4404556-1/playlist.m3u8$LR•IPV4•6『线路4』 #EXTINF:-1 tvg-id="Newsmax" tvg-name="Newsmax" group-title="港澳台",Newsmax -http://nmxlive.akamaized.net/hls/live/529965/Live_1/index.m3u8$LR•IPV4•6『线路5』 +https://amg00217-newsmax-newsmax-zeasn-022k9.amagi.tv/playlist.m3u8$LR•IPV4•6『线路5』 #EXTINF:-1 tvg-id="Newsmax" tvg-name="Newsmax" group-title="港澳台",Newsmax -https://nmxlive.akamaized.net/hls/live/529965/Live_1/index.m3u8$LR•IPV4•6『线路6』 +https://nmx1ota.akamaized.net/hls/live/2107010/Live_1/index.m3u8$LR•IPV4•6『线路6』 #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 @@ -9224,21 +9216,21 @@ 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•8『线路1』 +p3p://167.114.175.6:55331/655fa9280009c6278edfc1176731425f$LR•IPV4•8『线路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•8『线路2』 +https://d18dyiwu97wm6q.cloudfront.net/playlist2160p.m3u8$LR•IPV4•8『线路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•8『线路3』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1761&tk=f6cc1e0a0e1a$LR•IPV4•8『线路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•8『线路4』 +http://rihou.cc:555/tv/LoveNature$LR•IPV4•8『线路4』 #EXTINF:-1 tvg-id="Love Nature" tvg-name="Love Nature" group-title="港澳台",Love Nature -p3p://167.114.175.6:55331/655fa9280009c6278edfc1176731425f$LR•IPV4•8『线路5』 +https://amg01515-amg01515c17-xumo-us-2489.playouts.now.amagi.tv/bamus-lovenaturespanish-roku/playlist.m3u8$LR•IPV4•8『线路5』 #EXTINF:-1 tvg-id="Love Nature" tvg-name="Love Nature" group-title="港澳台",Love Nature -https://d18dyiwu97wm6q.cloudfront.net/playlist2160p.m3u8$LR•IPV4•8『线路6』 +https://aegis-cloudfront-1.tubi.video/6d6d0f24-8445-4b4c-bdf6-44f9e38beaa4/playlist.m3u8$LR•IPV4•8『线路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•8『线路7』 +https://pb-ehs1glsha1juy.akamaized.net/Love_Nature_4K.m3u8$LR•IPV4•8『线路7』 #EXTINF:-1 tvg-id="Love Nature" tvg-name="Love Nature" group-title="港澳台",Love Nature -http://rihou.cc:555/tv/LoveNature$LR•IPV4•8『线路8』 +http://185.246.209.113/LOVENATUREHD/index.m3u8$LR•IPV4•8『线路8』 #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 @@ -9246,57 +9238,57 @@ https://wildearth-plex.amagi.tv/masterR1080p.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="Clarity 4K" tvg-name="Clarity 4K" group-title="港澳台",Clarity 4K https://pb-qyrvophnifz47.akamaized.net/Clarity_4K.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="Stadium" tvg-name="Stadium" group-title="港澳台",Stadium -https://wurl120sports.global.transmit.live/hls/679a907dce42a042c23ace37/v1/stadium_gracenote/samsung_us/latest/main/hls/playlist.m3u8$LR•IPV4•2『线路1』 +https://2d006483e2aa43fe812f7b464cb2916d.mediatailor.us-east-1.amazonaws.com/v1/master/44f73ba4d03e9607dcd9bebdcb8494d86964f1d8/Samsung_Stadium/playlist.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="Stadium" tvg-name="Stadium" group-title="港澳台",Stadium -https://2d006483e2aa43fe812f7b464cb2916d.mediatailor.us-east-1.amazonaws.com/v1/master/44f73ba4d03e9607dcd9bebdcb8494d86964f1d8/Samsung_Stadium/playlist.m3u8$LR•IPV4•2『线路2』 +https://wurl120sports.global.transmit.live/hls/679a907dce42a042c23ace37/v1/stadium_gracenote/samsung_us/latest/main/hls/playlist.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="Pop" tvg-name="Pop" group-title="港澳台",Pop -http://206.212.244.63/139/index.m3u8$LR•IPV4•24『线路1』 +http://bgdc.live:25461/catrinamcdermott/catrinamcdermott/51112$LR•IPV4•24『线路1』 #EXTINF:-1 tvg-id="Pop" tvg-name="Pop" group-title="港澳台",Pop -https://radio.congoplanet.com/Congo_Planet_TV_Pop.sdp/Congo_Planet_TV_Pop/playlist.m3u8$LR•IPV4•24『线路2』 +http://206.212.244.63/139/index.m3u8$LR•IPV4•24『线路2』 #EXTINF:-1 tvg-id="Pop" tvg-name="Pop" group-title="港澳台",Pop -https://d3kmrn2mstrnk5.cloudfront.net/f4acc9ba_daae_4ed0_b836_32126cead919/hls/playlist.m3u8$LR•IPV4•24『线路3』 +https://radio.congoplanet.com/Congo_Planet_TV_Pop.sdp/Congo_Planet_TV_Pop/playlist.m3u8$LR•IPV4•24『线路3』 #EXTINF:-1 tvg-id="Pop" tvg-name="Pop" group-title="港澳台",Pop -https://amg01753-narrativeentert-popkids-lggb-xyy5k.amagi.tv/ts-eu-w1-n2/playlist/amg01753-narrativeentert-popkids-lggb/playlist.m3u8$LR•IPV4•24『线路4』 +https://d3kmrn2mstrnk5.cloudfront.net/f4acc9ba_daae_4ed0_b836_32126cead919/hls/playlist.m3u8$LR•IPV4•24『线路4』 #EXTINF:-1 tvg-id="Pop" tvg-name="Pop" group-title="港澳台",Pop -https://stream.ads.ottera.tv/playlist.m3u8?network_id=1086$LR•IPV4•24『线路5』 +https://amg01753-narrativeentert-popkids-lggb-xyy5k.amagi.tv/ts-eu-w1-n2/playlist/amg01753-narrativeentert-popkids-lggb/playlist.m3u8$LR•IPV4•24『线路5』 #EXTINF:-1 tvg-id="Pop" tvg-name="Pop" group-title="港澳台",Pop -https://amg00056-amg00056c7-rakuten-de-3245.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•24『线路6』 +https://stream.ads.ottera.tv/playlist.m3u8?network_id=1086$LR•IPV4•24『线路6』 #EXTINF:-1 tvg-id="Pop" tvg-name="Pop" group-title="港澳台",Pop -https://amg00056-amg00056c8-rakuten-it-3239.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•24『线路7』 +https://amg00056-amg00056c7-rakuten-de-3245.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•24『线路7』 #EXTINF:-1 tvg-id="Pop" tvg-name="Pop" group-title="港澳台",Pop -https://amg00056-amg00056c10-rakuten-es-3242.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•24『线路8』 +https://amg00056-amg00056c8-rakuten-it-3239.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•24『线路8』 #EXTINF:-1 tvg-id="Pop" tvg-name="Pop" group-title="港澳台",Pop -https://d2n3779oy6efpi.cloudfront.net/playlist.m3u8$LR•IPV4•24『线路9』 +https://amg00056-amg00056c10-rakuten-es-3242.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•24『线路9』 #EXTINF:-1 tvg-id="Pop" tvg-name="Pop" group-title="港澳台",Pop -https://amg00056-amg00056c15-rakuten-it-3241.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•24『线路10』 +https://d2n3779oy6efpi.cloudfront.net/playlist.m3u8$LR•IPV4•24『线路10』 #EXTINF:-1 tvg-id="Pop" tvg-name="Pop" group-title="港澳台",Pop -https://amg01753-amg01753c9-samsung-gb-8005.playouts.now.amagi.tv/ts-eu-w1-n2/playlist/amg01753-narrativeuk-popup-samsunggb/playlist.m3u8$LR•IPV4•24『线路11』 +https://amg00056-amg00056c15-rakuten-it-3241.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•24『线路11』 #EXTINF:-1 tvg-id="Pop" tvg-name="Pop" group-title="港澳台",Pop -https://jmp2.uk/plu-6093f7b5bb49b90007cecaad.m3u8$LR•IPV4•24『线路12』 +https://amg01753-amg01753c9-samsung-gb-8005.playouts.now.amagi.tv/ts-eu-w1-n2/playlist/amg01753-narrativeuk-popup-samsunggb/playlist.m3u8$LR•IPV4•24『线路12』 #EXTINF:-1 tvg-id="Pop" tvg-name="Pop" group-title="港澳台",Pop -https://amg01753-narrativeuk-amg01753c1-lg-gb-1830.playouts.now.amagi.tv/playlist/amg01753-narrativeuk-tinypop-lggb/playlist.m3u8$LR•IPV4•24『线路13』 +https://jmp2.uk/plu-6093f7b5bb49b90007cecaad.m3u8$LR•IPV4•24『线路13』 #EXTINF:-1 tvg-id="Pop" tvg-name="Pop" group-title="港澳台",Pop -http://92.114.85.72:8000/play/a08p$LR•IPV4•24『线路14』 +https://amg01753-narrativeuk-amg01753c1-lg-gb-1830.playouts.now.amagi.tv/playlist/amg01753-narrativeuk-tinypop-lggb/playlist.m3u8$LR•IPV4•24『线路14』 #EXTINF:-1 tvg-id="Pop" tvg-name="Pop" group-title="港澳台",Pop -https://dogus-live.daioncdn.net/kralpoptv/playlist.m3u8$LR•IPV4•24『线路15』 +http://92.114.85.72:8000/play/a08p$LR•IPV4•24『线路15』 #EXTINF:-1 tvg-id="Pop" tvg-name="Pop" group-title="港澳台",Pop -https://jmp2.uk/plu-6047fbdbbb776a0007e7f2ff.m3u8$LR•IPV4•24『线路16』 +https://dogus-live.daioncdn.net/kralpoptv/playlist.m3u8$LR•IPV4•24『线路16』 #EXTINF:-1 tvg-id="Pop" tvg-name="Pop" group-title="港澳台",Pop -https://jmp2.uk/plu-65410176770cf1000866bf31.m3u8$LR•IPV4•24『线路17』 +https://jmp2.uk/plu-6047fbdbbb776a0007e7f2ff.m3u8$LR•IPV4•24『线路17』 #EXTINF:-1 tvg-id="Pop" tvg-name="Pop" group-title="港澳台",Pop -https://jmp2.uk/plu-6047fabfce6e8e00070bcc9f.m3u8$LR•IPV4•24『线路18』 +https://jmp2.uk/plu-65410176770cf1000866bf31.m3u8$LR•IPV4•24『线路18』 #EXTINF:-1 tvg-id="Pop" tvg-name="Pop" group-title="港澳台",Pop -https://jmp2.uk/plu-5d14fd1a252d35decbc4080c.m3u8$LR•IPV4•24『线路19』 +https://jmp2.uk/plu-6047fabfce6e8e00070bcc9f.m3u8$LR•IPV4•24『线路19』 #EXTINF:-1 tvg-id="Pop" tvg-name="Pop" group-title="港澳台",Pop -https://janus.xpbroadcasting.com:8443/hls/popworld.m3u8$LR•IPV4•24『线路20』 +https://jmp2.uk/plu-5d14fd1a252d35decbc4080c.m3u8$LR•IPV4•24『线路20』 #EXTINF:-1 tvg-id="Pop" tvg-name="Pop" group-title="港澳台",Pop -https://lotus.stingray.com/manifest/ose-104ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•24『线路21』 +https://janus.xpbroadcasting.com:8443/hls/popworld.m3u8$LR•IPV4•24『线路21』 #EXTINF:-1 tvg-id="Pop" tvg-name="Pop" group-title="港澳台",Pop -https://lotus.stingray.com/manifest/ose-190ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•24『线路22』 +https://lotus.stingray.com/manifest/ose-104ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•24『线路22』 #EXTINF:-1 tvg-id="Pop" tvg-name="Pop" group-title="港澳台",Pop -https://d128y56w6v2kax.cloudfront.net/playlist/amg00056-vevotv-vevopopau-samsungau/playlist.m3u8$LR•IPV4•24『线路23』 +https://lotus.stingray.com/manifest/ose-190ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•24『线路23』 #EXTINF:-1 tvg-id="Pop" tvg-name="Pop" group-title="港澳台",Pop -http://bgdc.live:25461/catrinamcdermott/catrinamcdermott/51112$LR•IPV4•24『线路24』 +https://d128y56w6v2kax.cloudfront.net/playlist/amg00056-vevotv-vevopopau-samsungau/playlist.m3u8$LR•IPV4•24『线路24』 #EXTINF:-1 tvg-id="Tastemade" tvg-name="Tastemade" group-title="港澳台",Tastemade https://jmp2.uk/plu-68b88821e542386ab0bf5bef.m3u8$LR•IPV4•15『线路1』 #EXTINF:-1 tvg-id="Tastemade" tvg-name="Tastemade" group-title="港澳台",Tastemade @@ -9340,71 +9332,71 @@ 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•17『线路1』 +https://epg.pw/stream/d2edf469b9079064a283f4b0811cbf6f2597ebbb3d08dcf77036a4b5a791b7cf.m3u8$LR•IPV4•17『线路1』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -http://23.237.104.106:8080/USA_BLOOMBERG/index.m3u8$LR•IPV4•17『线路2』 +https://bloomberg-bloombergtv-3-nl.samsung.wurl.tv/playlist.m3u8$LR•IPV4•17『线路2』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://bloomberg.com/media-manifest/streams/aus.m3u8$LR•IPV4•17『线路3』 +https://bloomberg-bloombergtv-5-eu.plex.wurl.tv/3ea2c48ba0034cc276591c94a5b439c0.m3u8$LR•IPV4•17『线路3』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -http://213.91.179.28:8000/play/a04m$LR•IPV4•17『线路4』 +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•17『线路4』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://bloomberg.com/media-manifest/streams/eu-event.m3u8$LR•IPV4•17『线路5』 +https://cdn-uw2-prod.tsv2.amagi.tv/linear/amg01601-bloomberg-bloombergplus-hls-rakutenjp/playlist.m3u8$LR•IPV4•17『线路5』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://bloomberg.com/media-manifest/streams/eu.m3u8$LR•IPV4•17『线路6』 +https://ciner.daioncdn.net/bloomberght/bloomberght.m3u8$LR•IPV4•17『线路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•17『线路7』 +http://23.237.104.106:8080/USA_BLOOMBERG/index.m3u8$LR•IPV4•17『线路7』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://bloomberg.com/media-manifest/streams/us-event.m3u8$LR•IPV4•17『线路8』 +https://bloomberg.com/media-manifest/streams/aus.m3u8$LR•IPV4•17『线路8』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://bloomberg.com/media-manifest/streams/politics.m3u8$LR•IPV4•17『线路9』 +http://213.91.179.28:8000/play/a04m$LR•IPV4•17『线路9』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://d8975dc3.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/U2Ftc3VuZy1nYl9CbG9vbWJlcmdUVlBsdXNfSExT/playlist.m3u8$LR•IPV4•17『线路10』 +https://bloomberg.com/media-manifest/streams/eu-event.m3u8$LR•IPV4•17『线路10』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://86ebec83.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWV1X0Jsb29tYmVyZ1RWUGx1c19ITFM/playlist.m3u8$LR•IPV4•17『线路11』 +https://bloomberg.com/media-manifest/streams/eu.m3u8$LR•IPV4•17『线路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•17『线路12』 +https://cdn4.skygo.mn/live/disk1/BloombergMon/DASH-FTA/BloombergMon.mpd$LR•IPV4•17『线路12』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://epg.pw/stream/d2edf469b9079064a283f4b0811cbf6f2597ebbb3d08dcf77036a4b5a791b7cf.m3u8$LR•IPV4•17『线路13』 +https://bloomberg.com/media-manifest/streams/us-event.m3u8$LR•IPV4•17『线路13』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://bloomberg-bloombergtv-3-nl.samsung.wurl.tv/playlist.m3u8$LR•IPV4•17『线路14』 +https://bloomberg.com/media-manifest/streams/politics.m3u8$LR•IPV4•17『线路14』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://bloomberg-bloombergtv-5-eu.plex.wurl.tv/3ea2c48ba0034cc276591c94a5b439c0.m3u8$LR•IPV4•17『线路15』 +https://d8975dc3.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/U2Ftc3VuZy1nYl9CbG9vbWJlcmdUVlBsdXNfSExT/playlist.m3u8$LR•IPV4•17『线路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•17『线路16』 +https://86ebec83.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWV1X0Jsb29tYmVyZ1RWUGx1c19ITFM/playlist.m3u8$LR•IPV4•17『线路16』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://cdn-uw2-prod.tsv2.amagi.tv/linear/amg01601-bloomberg-bloombergplus-hls-rakutenjp/playlist.m3u8$LR•IPV4•17『线路17』 +https://pe-ak-lp01a-9c9media.akamaized.net/live/News1BNNDigi/p/dash/00000001/1bba52dc66e4c68e/manifest.mpd$LR•IPV4•17『线路17』 #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 -http://rezofoot.tv/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』 +http://rezofoot.tv/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://206.212.244.63/42/index.m3u8$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://206.212.244.63/42/index.m3u8$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•5『线路1』 #EXTINF:-1 tvg-id="TV8" tvg-name="TV8" group-title="港澳台",TV8 @@ -9428,7 +9420,7 @@ p3p://167.114.175.6:55331/612ee43d000c84ea8e0dab707a8b2e0d$LR•IPV4 #EXTINF:-1 tvg-id="中天綜合" tvg-name="中天綜合" group-title="港澳台",中天綜合 http://23.237.10.66:16372$LR•IPV4 #EXTINF:-1 tvg-id="澳视澳门" tvg-name="澳视澳门" group-title="港澳台",澳视澳门 -https://cdn6.163189.xyz/163189/asam$LR•IPV4•9『线路1』 +http://php.jdshipin.com:8880/TVOD/iptv.php?id=asam$LR•IPV4•9『线路1』 #EXTINF:-1 tvg-id="澳视澳门" tvg-name="澳视澳门" group-title="港澳台",澳视澳门 http://php.jdshipin.com/TVOD/iptv.php?id=asam$LR•IPV4•9『线路2』 #EXTINF:-1 tvg-id="澳视澳门" tvg-name="澳视澳门" group-title="港澳台",澳视澳门 @@ -9452,23 +9444,21 @@ http://cdn9.163189.xyz/smt3.1.1.php?id=Tvbclassic$LR•IPV4 #EXTINF:-1 tvg-id="MOMO TV" tvg-name="MOMO TV" group-title="港澳台",MOMO TV http://free.cnlive.club/channel/5fe8f622/index.m3u8?q=1752629214236$LR•IPV4 #EXTINF:-1 tvg-id="HOY78" tvg-name="HOY78" group-title="港澳台",HOY78 -http://bziyunshao.synology.me:8891/bysid/78$LR•IPV4•2『线路1』 +http://cdn.163189.xyz/live/hoy/stream.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="HOY78" tvg-name="HOY78" group-title="港澳台",HOY78 -http://cdn.163189.xyz/live/hoy/stream.m3u8$LR•IPV4•2『线路2』 +http://bziyunshao.synology.me:8891/bysid/78$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="ASTRO AOD" tvg-name="ASTRO AOD" group-title="港澳台",ASTRO AOD http://php.jdshipin.com/TVOD/iptv.php?id=aod$LR•IPV4 #EXTINF:-1 tvg-id="ELEVEN体育3" tvg-name="ELEVEN体育3" group-title="港澳台",ELEVEN体育3 https://smart.pendy.dpdns.org/Smart.php?id=eltasport3_twn$LR•IPV4 #EXTINF:-1 tvg-id="澳视卫星" tvg-name="澳视卫星" group-title="港澳台",澳视卫星 -https://cdn6.163189.xyz/163189/as$LR•IPV4•5『线路1』 +http://php.jdshipin.com/TVOD/iptv.php?id=as$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-id="澳视卫星" tvg-name="澳视卫星" group-title="港澳台",澳视卫星 -http://php.jdshipin.com/TVOD/iptv.php?id=as$LR•IPV4•5『线路2』 +http://103.233.191.134:1935/ch3/ch3.live/playlist.m3u8$LR•IPV4•4『线路2』 #EXTINF:-1 tvg-id="澳视卫星" tvg-name="澳视卫星" group-title="港澳台",澳视卫星 -http://103.233.191.134:1935/ch3/ch3.live/playlist.m3u8$LR•IPV4•5『线路3』 +http://43.251.226.89:8080/play/901.m3u8$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-id="澳视卫星" tvg-name="澳视卫星" group-title="港澳台",澳视卫星 -http://43.251.226.89:8080/play/901.m3u8$LR•IPV4•5『线路4』 -#EXTINF:-1 tvg-id="澳视卫星" tvg-name="澳视卫星" group-title="港澳台",澳视卫星 -http://push.cdn1.hls123.de:8080/streams/gese9d57376/index.m3u8$LR•IPV4•5『线路5』 +http://push.cdn1.hls123.de:8080/streams/gese9d57376/index.m3u8$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-id="八度空间" tvg-name="八度空间" group-title="港澳台",八度空间 https://cdn6.163189.xyz/163189/8tv$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="八度空间" tvg-name="八度空间" group-title="港澳台",八度空间 @@ -9492,9 +9482,9 @@ http://cdn6.163189.xyz/163189/amty$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="澳门体育" tvg-name="澳门体育" group-title="港澳台",澳门体育 http://43.251.226.89:8080/play/902.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="澳门综艺" tvg-name="澳门综艺" group-title="港澳台",澳门综艺 -http://43.251.226.89:8080/play/903.m3u8$LR•IPV4•2『线路1』 +http://cdn6.163189.xyz/163189/amzy$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="澳门综艺" tvg-name="澳门综艺" group-title="港澳台",澳门综艺 -http://cdn6.163189.xyz/163189/amzy$LR•IPV4•2『线路2』 +http://43.251.226.89:8080/play/903.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="NU2" tvg-name="NU2" group-title="港澳台",NU2 https://raw.githubusercontent.com/ChiSheng9/iptv/master/TV14.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="华视" tvg-name="华视" group-title="港澳台",华视HD @@ -9506,33 +9496,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/tvbox/lib/iptv.txt b/tvbox/lib/iptv.txt index 4405be59..a5b82c14 100755 --- a/tvbox/lib/iptv.txt +++ b/tvbox/lib/iptv.txt @@ -38,11 +38,11 @@ CCTV4K,http://vip1.xinketongxun.fun:8082/tsfile/live/1026_1.m3u8$LR•IPV4•11 CCTV4K,http://101.43.145.141:12002/gaoma/cctv4k.m3u8$LR•IPV4•11『线路2』 CCTV4K,http://www.520345.xyz:8188/rtp/239.69.1.111:10304?$LR•IPV4•11『线路3』 CCTV4K,http://home.amucn.net:8800/udp/239.49.0.82:8000$LR•IPV4•11『线路4』 -CCTV4K,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4k_mbd.m3u8?auth_key=1783738800-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-a3b6211ac6216364658c2ed2b35f324b&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•11『线路5』 -CCTV4K,http://198.204.240.250:82/live/cctv4k.m3u8$LR•IPV4•11『线路6』 -CCTV4K,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4k_mbd.m3u8?auth_key=1783731600-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-04b27a198b2f04c15287bec6e71771b5&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•11『线路7』 -CCTV4K,http://192.151.150.154/live/cctv4k.m3u8$LR•IPV4•11『线路8』 -CCTV4K,http://173.208.212.130:8181/720p/cctv4k.m3u8$LR•IPV4•11『线路9』 +CCTV4K,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4k_mbd.m3u8?auth_key=1783746000-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-9506187e2170a2680534df6e34133fee&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•11『线路5』 +CCTV4K,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4k_mbd.m3u8?auth_key=1783742400-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-b5fa4a51df4a44a9f4b42b8923a48bc9&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•11『线路6』 +CCTV4K,http://192.151.150.154/live/cctv4k.m3u8$LR•IPV4•11『线路7』 +CCTV4K,http://173.208.212.130:8181/720p/cctv4k.m3u8$LR•IPV4•11『线路8』 +CCTV4K,http://198.204.240.250:82/live/cctv4k.m3u8$LR•IPV4•11『线路9』 CCTV4K,http://fn.tmde.top:35455/nptv/cctv4k.m3u8$LR•IPV4•11『线路10』 CCTV4K,http://xc.mfykeke.top:35455/nptv/cctv4k.m3u8$LR•IPV4•11『线路11』 @@ -55,36 +55,37 @@ CCTV8K,http://fn.tmde.top:35455/nptv/cctv8k.m3u8$LR•IPV4•4『线路3』 CCTV8K,http://xc.mfykeke.top:35455/nptv/cctv8k.m3u8$LR•IPV4•4『线路4』 央视,#genre# -CCTV1,http://207.56.13.146:81/cdnlive/cctv1.m3u8$LR•IPV4•25『线路1』 -CCTV1,http://play.kankanlive.com/live/1698234869325962.m3u8$LR•IPV4•25『线路2』 -CCTV1,http://120.198.95.220:9901/tsfile/live/1015_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•25『线路3』 -CCTV1,http://153.0.171.163:9901/tsfile/live/0001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•25『线路4』 -CCTV1,http://74.91.26.218:82/live/cctv1hd.m3u8$LR•IPV4•25『线路5』 -CCTV1,http://38.75.136.137:98/gslb/dsdqbv/cctv1hd.m3u8?auth=test20251009$LR•IPV4•25『线路6』 -CCTV1,http://112.46.105.20:8009/hls/501/index.m3u8$LR•IPV4•25『线路7』 -CCTV1,http://php.jdshipin.com/TVOD/iptv.php?id=rthk33$LR•IPV4•25『线路8』 -CCTV1,https://rthktv33-live.akamaized.net/hls/live/2101641/RTHKTV33/stream04/streamPlaylist.m3u8$LR•IPV4•25『线路9』 -CCTV1,http://60.10.139.113:8801/hls/1/index.m3u8$LR•IPV4•25『线路10』 -CCTV1,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000004000002226&livemode=1&stbId=yu&mode=1&$LR•IPV4•25『线路11』 -CCTV1,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000030810&livemode=1&stbId=yu&mode=1&$LR•IPV4•25『线路12』 -CCTV1,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000018602&livemode=1&stbId=yu&mode=1&$LR•IPV4•25『线路13』 -CCTV1,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000021973&livemode=1&stbId=yu&mode=1&$LR•IPV4•25『线路14』 -CCTV1,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265001&livemode=1&stbId=yu&mode=1&$LR•IPV4•25『线路15』 -CCTV1,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=reallive-cctv1&livemode=1&stbId=yu&mode=1&$LR•IPV4•25『线路16』 -CCTV1,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000001000004953&livemode=1&stbId=yu&mode=1&$LR•IPV4•25『线路17』 -CCTV1,http://111.29.9.35:6610/000000001000/1000000001000018602/index.m3u8?channel-id=ystenlive&Contentid=1000000001000018602&livemode=1&stbId=3$LR•IPV4•25『线路18』 -CCTV1,http://111.29.9.33:6610/000000001000/1000000001000021973/index.m3u8?channel-id=bestzb&Contentid=1000000001000021973&livemode=1&stbId=3$LR•IPV4•25『线路19』 -CCTV1,http://69.30.245.50/live/cctv1.m3u8$LR•IPV4•25『线路20』 -CCTV1,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226895/1.m3u8?$LR•IPV6•25『线路21』 -CCTV1,http://192.151.150.154/live/cctv1hd.m3u8$LR•IPV4•25『线路22』 -CCTV1,http://173.208.212.130:8181/1080p/cctv1.m3u8$LR•IPV4•25『线路23』 -CCTV1,http://173.208.212.130:8181/720p/cctv1.m3u8$LR•IPV4•25『线路24』 -CCTV1,http://204.12.221.218:8181/3m1080p/cctv1.m3u8$LR•IPV4•25『线路25』 -CCTV2,http://120.198.95.220:9901/tsfile/live/1016_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•23『线路1』 -CCTV2,http://207.56.13.146:81/cdnlive/cctv2.m3u8$LR•IPV4•23『线路2』 -CCTV2,http://36.136.38.87:9901/tsfile/live/0002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•23『线路3』 -CCTV2,http://153.0.171.163:9901/tsfile/live/0002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•23『线路4』 -CCTV2,http://112.27.235.94:8000/hls/2/index.m3u8$LR•IPV4•23『线路5』 +CCTV1,http://112.27.235.94:8000/hls/1/index.m3u8$LR•IPV4•26『线路1』 +CCTV1,http://207.56.13.146:81/cdnlive/cctv1.m3u8$LR•IPV4•26『线路2』 +CCTV1,http://play.kankanlive.com/live/1698234869325962.m3u8$LR•IPV4•26『线路3』 +CCTV1,http://120.198.95.220:9901/tsfile/live/1015_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•26『线路4』 +CCTV1,http://153.0.171.163:9901/tsfile/live/0001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路5』 +CCTV1,http://74.91.26.218:82/live/cctv1hd.m3u8$LR•IPV4•26『线路6』 +CCTV1,http://38.75.136.137:98/gslb/dsdqbv/cctv1hd.m3u8?auth=test20251009$LR•IPV4•26『线路7』 +CCTV1,http://112.46.105.20:8009/hls/501/index.m3u8$LR•IPV4•26『线路8』 +CCTV1,http://php.jdshipin.com/TVOD/iptv.php?id=rthk33$LR•IPV4•26『线路9』 +CCTV1,https://rthktv33-live.akamaized.net/hls/live/2101641/RTHKTV33/stream04/streamPlaylist.m3u8$LR•IPV4•26『线路10』 +CCTV1,http://60.10.139.113:8801/hls/1/index.m3u8$LR•IPV4•26『线路11』 +CCTV1,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000004000002226&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路12』 +CCTV1,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000030810&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路13』 +CCTV1,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000018602&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路14』 +CCTV1,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000021973&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路15』 +CCTV1,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265001&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路16』 +CCTV1,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=reallive-cctv1&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路17』 +CCTV1,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000001000004953&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路18』 +CCTV1,http://111.29.9.35:6610/000000001000/1000000001000018602/index.m3u8?channel-id=ystenlive&Contentid=1000000001000018602&livemode=1&stbId=3$LR•IPV4•26『线路19』 +CCTV1,http://111.29.9.33:6610/000000001000/1000000001000021973/index.m3u8?channel-id=bestzb&Contentid=1000000001000021973&livemode=1&stbId=3$LR•IPV4•26『线路20』 +CCTV1,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226895/1.m3u8?$LR•IPV6•26『线路21』 +CCTV1,http://192.151.150.154/live/cctv1hd.m3u8$LR•IPV4•26『线路22』 +CCTV1,http://173.208.212.130:8181/1080p/cctv1.m3u8$LR•IPV4•26『线路23』 +CCTV1,http://173.208.212.130:8181/720p/cctv1.m3u8$LR•IPV4•26『线路24』 +CCTV1,http://204.12.221.218:8181/3m1080p/cctv1.m3u8$LR•IPV4•26『线路25』 +CCTV1,http://69.30.245.50/live/cctv1.m3u8$LR•IPV4•26『线路26』 +CCTV2,http://112.46.85.60:8009/hls/502/index.m3u8$LR•IPV4•23『线路1』 +CCTV2,http://120.198.95.220:9901/tsfile/live/1016_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•23『线路2』 +CCTV2,http://207.56.13.146:81/cdnlive/cctv2.m3u8$LR•IPV4•23『线路3』 +CCTV2,http://36.136.38.87:9901/tsfile/live/0002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•23『线路4』 +CCTV2,http://153.0.171.163:9901/tsfile/live/0002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•23『线路5』 CCTV2,http://pull-hls-f11.douyincdn.com/media/stream-407062262674621100.m3u8?arch_hrchy=w1&exp_hrchy=w1&expire=1771769775&major_anchor_level=common&sign=98406f42e949db5477a402c85cbee007&t_id=037-20260215221614EEA56BB994BB42D25308-a6AVAz$LR•IPV4•23『线路6』 CCTV2,http://38.75.136.137:98/gslb/dsdqbv/cctv2hd.m3u8?auth=test20251009$LR•IPV4•23『线路7』 CCTV2,http://112.46.105.20:8009/hls/502/index.m3u8$LR•IPV4•23『线路8』 @@ -96,18 +97,18 @@ CCTV2,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=10 CCTV2,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265002&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路14』 CCTV2,http://111.29.9.34:6610/000000001000/1000000001000012442/index.m3u8?channel-id=ystenlive&Contentid=1000000001000012442&livemode=1&stbId=3$LR•IPV4•23『线路15』 CCTV2,http://111.29.9.33:6610/000000001000/1000000001000012442/index.m3u8?channel-id=bestzb&Contentid=1000000001000012442&livemode=1&stbId=3$LR•IPV4•23『线路16』 -CCTV2,http://74.91.26.218:82/live/cctv2hd.m3u8$LR•IPV4•23『线路17』 -CCTV2,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226893/1.m3u8?$LR•IPV6•23『线路18』 -CCTV2,http://69.30.245.50/live/cctv2.m3u8$LR•IPV4•23『线路19』 -CCTV2,http://173.208.212.130:8181/720p/cctv2.m3u8$LR•IPV4•23『线路20』 -CCTV2,http://192.151.150.154/live/cctv2hd.m3u8$LR•IPV4•23『线路21』 -CCTV2,http://173.208.212.130:8181/1080p/cctv2.m3u8$LR•IPV4•23『线路22』 -CCTV2,http://204.12.221.218:8181/3m1080p/cctv2.m3u8$LR•IPV4•23『线路23』 -CCTV3,http://123.163.114.168:85/tsfile/live/0003_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•21『线路1』 -CCTV3,http://222.223.41.27:8888/hls/3/index.m3u8$LR•IPV4•21『线路2』 -CCTV3,http://121.57.88.206:898/hls/3/index.m3u8$LR•IPV4•21『线路3』 -CCTV3,http://120.198.95.220:9901/tsfile/live/1017_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•21『线路4』 -CCTV3,http://74.91.26.218:82/live/cctv3hd.m3u8$LR•IPV4•21『线路5』 +CCTV2,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226893/1.m3u8?$LR•IPV6•23『线路17』 +CCTV2,http://69.30.245.50/live/cctv2.m3u8$LR•IPV4•23『线路18』 +CCTV2,http://173.208.212.130:8181/720p/cctv2.m3u8$LR•IPV4•23『线路19』 +CCTV2,http://192.151.150.154/live/cctv2hd.m3u8$LR•IPV4•23『线路20』 +CCTV2,http://173.208.212.130:8181/1080p/cctv2.m3u8$LR•IPV4•23『线路21』 +CCTV2,http://204.12.221.218:8181/3m1080p/cctv2.m3u8$LR•IPV4•23『线路22』 +CCTV2,http://74.91.26.218:82/live/cctv2hd.m3u8$LR•IPV4•23『线路23』 +CCTV3,http://74.91.26.218:82/live/cctv3hd.m3u8$LR•IPV4•21『线路1』 +CCTV3,http://123.163.114.168:85/tsfile/live/0003_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•21『线路2』 +CCTV3,http://222.223.41.27:8888/hls/3/index.m3u8$LR•IPV4•21『线路3』 +CCTV3,http://121.57.88.206:898/hls/3/index.m3u8$LR•IPV4•21『线路4』 +CCTV3,http://120.198.95.220:9901/tsfile/live/1017_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•21『线路5』 CCTV3,http://38.75.136.137:98/gslb/dsdqbv/cctv3hd.m3u8?auth=test20251009$LR•IPV4•21『线路6』 CCTV3,http://112.46.105.20:8009/hls/3/index.m3u8$LR•IPV4•21『线路7』 CCTV3,http://153.0.171.163:9901/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•21『线路8』 @@ -124,11 +125,11 @@ CCTV3,http://192.151.150.154/live/cctv3hd.m3u8$LR•IPV4•21『线路18』 CCTV3,http://173.208.212.130:8181/1080p/cctv3.m3u8$LR•IPV4•21『线路19』 CCTV3,http://173.208.212.130:8181/720p/cctv3.m3u8$LR•IPV4•21『线路20』 CCTV3,http://204.12.221.218:8181/3m1080p/cctv3.m3u8$LR•IPV4•21『线路21』 -CCTV4,http://123.163.114.168:85/tsfile/live/0004_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路1』 -CCTV4,http://38.75.136.137:98/gslb/dsdqbv/cctv4hd.m3u8?auth=test20251009$LR•IPV4•26『线路2』 -CCTV4,http://36.136.38.87:9901/tsfile/live/0004_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路3』 -CCTV4,http://153.0.171.163:9901/tsfile/live/0004_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路4』 -CCTV4,https://global.cgtn.cicc.media.caton.cloud/master/cgtn-america.m3u8$LR•IPV4•26『线路5』 +CCTV4,https://global.cgtn.cicc.media.caton.cloud/master/cgtn-america.m3u8$LR•IPV4•26『线路1』 +CCTV4,http://123.163.114.168:85/tsfile/live/0004_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路2』 +CCTV4,http://38.75.136.137:98/gslb/dsdqbv/cctv4hd.m3u8?auth=test20251009$LR•IPV4•26『线路3』 +CCTV4,http://36.136.38.87:9901/tsfile/live/0004_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路4』 +CCTV4,http://153.0.171.163:9901/tsfile/live/0004_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路5』 CCTV4,http://74.91.26.218:82/live/cctv4hd.m3u8$LR•IPV4•26『线路6』 CCTV4,http://112.46.105.20:8009/hls/4/index.m3u8$LR•IPV4•26『线路7』 CCTV4,p3p://167.114.175.6:55331/61244d9c0006885d64b1b7591f6c12a0$LR•IPV4•26『线路8』 @@ -139,20 +140,20 @@ CCTV4,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=10 CCTV4,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265004&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路13』 CCTV4,http://111.29.9.40:6610/000000001000/5000000005000030093/index.m3u8?channel-id=bestzb&Contentid=5000000005000030093&livemode=1&stbId=3$LR•IPV4•26『线路14』 CCTV4,http://111.29.9.33:6610/000000001000/1000000002000031664/index.m3u8?channel-id=bestzb&Contentid=1000000002000031664&livemode=1&stbId=3$LR•IPV4•26『线路15』 -CCTV4,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1783738800-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-51e8b9f9c94dcce18451a546b462beb1&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•26『线路16』 +CCTV4,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1783746000-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-02e028da2bbd51e65163edbb07cd365e&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•26『线路16』 CCTV4,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1783666800-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-96a1fc3c6c225c78e9026808895bf05a&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•26『线路17』 -CCTV4,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1783731600-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-8abff3eb62a4395bc0145a840cc6a6fc&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•26『线路18』 -CCTV4,https://dash2.antik.sk/live/test_cctv_tizen/playlist.m3u8$LR•IPV4•26『线路19』 -CCTV4,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226335/1.m3u8?$LR•IPV6•26『线路20』 -CCTV4,http://69.30.245.50/live/cctv4.m3u8$LR•IPV4•26『线路21』 -CCTV4,http://207.56.13.146:81/cdnlive/cctv4.m3u8$LR•IPV4•26『线路22』 -CCTV4,http://192.151.150.154/live/cctv4hd.m3u8$LR•IPV4•26『线路23』 -CCTV4,http://173.208.212.130:8181/1080p/cctv4.m3u8$LR•IPV4•26『线路24』 -CCTV4,http://173.208.212.130:8181/720p/cctv4.m3u8$LR•IPV4•26『线路25』 -CCTV4,http://204.12.221.218:8181/3m1080p/cctv4.m3u8$LR•IPV4•26『线路26』 -CCTV5,http://123.163.114.168:85/tsfile/live/0005_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•29『线路1』 -CCTV5,http://74.91.26.218:82/live/cctv5hd.m3u8$LR•IPV4•29『线路2』 -CCTV5,http://112.27.235.94:8000/hls/5/index.m3u8$LR•IPV4•29『线路3』 +CCTV4,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1783742400-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-19149547a7d5dfb5bd31f3815e03c8ea&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•26『线路18』 +CCTV4,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226335/1.m3u8?$LR•IPV6•26『线路19』 +CCTV4,http://69.30.245.50/live/cctv4.m3u8$LR•IPV4•26『线路20』 +CCTV4,http://207.56.13.146:81/cdnlive/cctv4.m3u8$LR•IPV4•26『线路21』 +CCTV4,http://192.151.150.154/live/cctv4hd.m3u8$LR•IPV4•26『线路22』 +CCTV4,http://173.208.212.130:8181/1080p/cctv4.m3u8$LR•IPV4•26『线路23』 +CCTV4,http://173.208.212.130:8181/720p/cctv4.m3u8$LR•IPV4•26『线路24』 +CCTV4,http://204.12.221.218:8181/3m1080p/cctv4.m3u8$LR•IPV4•26『线路25』 +CCTV4,https://dash2.antik.sk/live/test_cctv_tizen/playlist.m3u8$LR•IPV4•26『线路26』 +CCTV5,http://112.27.235.94:8000/hls/5/index.m3u8$LR•IPV4•29『线路1』 +CCTV5,http://123.163.114.168:85/tsfile/live/0005_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•29『线路2』 +CCTV5,http://74.91.26.218:82/live/cctv5hd.m3u8$LR•IPV4•29『线路3』 CCTV5,http://38.75.136.137:98/gslb/dsdqbv/cctv5hd.m3u8?auth=test20251009$LR•IPV4•29『线路4』 CCTV5,http://112.46.105.20:8009/hls/503/index.m3u8$LR•IPV4•29『线路5』 CCTV5,http://153.0.171.163:9901/tsfile/live/0005_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•29『线路6』 @@ -179,11 +180,11 @@ CCTV5,http://223.112.114.228:50080/newlive/live/hls/180/live.m3u8$LR•IPV4•29 CCTV5,http://111.29.9.33:6610/000000001000/1000000001000020505/index.m3u8?channel-id=bestzb&Contentid=1000000001000020505&livemode=1&stbId=3$LR•IPV4•29『线路27』 CCTV5,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226894/1.m3u8?$LR•IPV6•29『线路28』 CCTV5,http://192.151.150.154/live/cctv5p.m3u8$LR•IPV4•29『线路29』 -CCTV6,http://120.198.95.220:9901/tsfile/live/1021_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•22『线路1』 -CCTV6,http://222.223.41.27:8888/hls/6/index.m3u8$LR•IPV4•22『线路2』 -CCTV6,http://123.163.114.168:9901/tsfile/live/0006_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•22『线路3』 -CCTV6,http://204.12.221.218:8181/3m1080p/cctv6.m3u8$LR•IPV4•22『线路4』 -CCTV6,http://112.27.235.94:8000/hls/7/index.m3u8$LR•IPV4•22『线路5』 +CCTV6,http://112.27.235.94:8000/hls/7/index.m3u8$LR•IPV4•22『线路1』 +CCTV6,http://120.198.95.220:9901/tsfile/live/1021_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•22『线路2』 +CCTV6,http://222.223.41.27:8888/hls/6/index.m3u8$LR•IPV4•22『线路3』 +CCTV6,http://123.163.114.168:9901/tsfile/live/0006_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•22『线路4』 +CCTV6,http://204.12.221.218:8181/3m1080p/cctv6.m3u8$LR•IPV4•22『线路5』 CCTV6,http://74.91.26.218:82/live/cctv6hd.m3u8$LR•IPV4•22『线路6』 CCTV6,http://38.75.136.137:98/gslb/dsdqbv/cctv6hd.m3u8?auth=test20251009$LR•IPV4•22『线路7』 CCTV6,http://112.46.105.20:8009/hls/6/index.m3u8$LR•IPV4•22『线路8』 @@ -194,17 +195,17 @@ CCTV6,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=10 CCTV6,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265006&livemode=1&stbId=yu&mode=1&$LR•IPV4•22『线路13』 CCTV6,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=6117099895556651277&livemode=1&stbId=yu&mode=1&$LR•IPV4•22『线路14』 CCTV6,http://111.29.9.33:6610/000000001000/1000000001000016466/index.m3u8?channel-id=bestzb&Contentid=1000000001000016466&livemode=1&stbId=3$LR•IPV4•22『线路15』 -CCTV6,http://69.30.245.50/live/cctv6.m3u8$LR•IPV4•22『线路16』 -CCTV6,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226468/1.m3u8?$LR•IPV6•22『线路17』 -CCTV6,http://198.204.240.250:82/live/cctv6.m3u8$LR•IPV4•22『线路18』 -CCTV6,http://173.208.212.130:8181/1080p/cctv6.m3u8$LR•IPV4•22『线路19』 -CCTV6,http://173.208.212.130:8181/720p/cctv6.m3u8$LR•IPV4•22『线路20』 -CCTV6,http://207.56.13.146:81/cdnlive/cctv6.m3u8$LR•IPV4•22『线路21』 -CCTV6,http://192.151.150.154/live/cctv6hd.m3u8$LR•IPV4•22『线路22』 -CCTV7,http://123.163.114.168:9901/tsfile/live/0007_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•23『线路1』 -CCTV7,http://118.193.115.2:9901/tsfile/live/0007_1.m3u8?key=txiptv$LR•IPV4•23『线路2』 -CCTV7,http://107.150.60.122/live/cctv7hd.m3u8$LR•IPV4•23『线路3』 -CCTV7,http://112.27.235.94:8000/hls/8/index.m3u8$LR•IPV4•23『线路4』 +CCTV6,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226468/1.m3u8?$LR•IPV6•22『线路16』 +CCTV6,http://198.204.240.250:82/live/cctv6.m3u8$LR•IPV4•22『线路17』 +CCTV6,http://173.208.212.130:8181/1080p/cctv6.m3u8$LR•IPV4•22『线路18』 +CCTV6,http://173.208.212.130:8181/720p/cctv6.m3u8$LR•IPV4•22『线路19』 +CCTV6,http://207.56.13.146:81/cdnlive/cctv6.m3u8$LR•IPV4•22『线路20』 +CCTV6,http://192.151.150.154/live/cctv6hd.m3u8$LR•IPV4•22『线路21』 +CCTV6,http://69.30.245.50/live/cctv6.m3u8$LR•IPV4•22『线路22』 +CCTV7,http://112.27.235.94:8000/hls/8/index.m3u8$LR•IPV4•23『线路1』 +CCTV7,http://123.163.114.168:9901/tsfile/live/0007_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•23『线路2』 +CCTV7,http://118.193.115.2:9901/tsfile/live/0007_1.m3u8?key=txiptv$LR•IPV4•23『线路3』 +CCTV7,http://107.150.60.122/live/cctv7hd.m3u8$LR•IPV4•23『线路4』 CCTV7,http://74.91.26.218:82/live/cctv7hd.m3u8$LR•IPV4•23『线路5』 CCTV7,http://38.75.136.137:98/gslb/dsdqbv/cctv7hd.m3u8?auth=test20251009$LR•IPV4•23『线路6』 CCTV7,http://112.46.105.20:8009/hls/504/index.m3u8$LR•IPV4•23『线路7』 @@ -224,8 +225,8 @@ CCTV7,http://207.56.13.146:81/cdnlive/cctv7.m3u8$LR•IPV4•23『线路20』 CCTV7,http://173.208.212.130:8181/1080p/cctv7.m3u8$LR•IPV4•23『线路21』 CCTV7,http://173.208.212.130:8181/720p/cctv7.m3u8$LR•IPV4•23『线路22』 CCTV7,http://204.12.221.218:8181/3m1080p/cctv7.m3u8$LR•IPV4•23『线路23』 -CCTV8,http://112.123.243.37:50085/tsfile/live/0009_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•18『线路1』 -CCTV8,http://112.27.235.94:8000/hls/9/index.m3u8$LR•IPV4•18『线路2』 +CCTV8,http://112.27.235.94:8000/hls/9/index.m3u8$LR•IPV4•18『线路1』 +CCTV8,http://112.123.243.37:50085/tsfile/live/0009_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•18『线路2』 CCTV8,http://38.75.136.137:98/gslb/dsdqbv/cctv8hd.m3u8?auth=test20251009$LR•IPV4•18『线路3』 CCTV8,http://112.46.105.20:8009/hls/8/index.m3u8$LR•IPV4•18『线路4』 CCTV8,http://153.0.171.163:9901/tsfile/live/1007_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路5』 @@ -234,18 +235,18 @@ CCTV8,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=10 CCTV8,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265008&livemode=1&stbId=yu&mode=1&$LR•IPV4•18『线路8』 CCTV8,http://111.29.9.33:6610/000000001000/1000000001000003736/index.m3u8?channel-id=bestzb&Contentid=1000000001000003736&livemode=1&stbId=3$LR•IPV4•18『线路9』 CCTV8,http://183.196.25.171:808/hls/77/index.m3u8$LR•IPV4•18『线路10』 -CCTV8,http://74.91.26.218:82/live/cctv8hd.m3u8$LR•IPV4•18『线路11』 -CCTV8,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226485/1.m3u8?$LR•IPV6•18『线路12』 -CCTV8,http://207.56.13.146:81/cdnlive/cctv8.m3u8$LR•IPV4•18『线路13』 -CCTV8,http://69.30.245.50/live/cctv8.m3u8$LR•IPV4•18『线路14』 -CCTV8,http://173.208.212.130:8181/720p/cctv8.m3u8$LR•IPV4•18『线路15』 -CCTV8,http://192.151.150.154/live/cctv8hd.m3u8$LR•IPV4•18『线路16』 -CCTV8,http://173.208.212.130:8181/1080p/cctv8.m3u8$LR•IPV4•18『线路17』 -CCTV8,http://204.12.221.218:8181/3m1080p/cctv8.m3u8$LR•IPV4•18『线路18』 -CCTV9,http://123.163.114.168:9901/tsfile/live/0009_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•23『线路1』 -CCTV9,http://38.75.136.137:98/gslb/dsdqbv/cctv9hd.m3u8?auth=test20251009$LR•IPV4•23『线路2』 -CCTV9,http://153.0.171.163:9901/tsfile/live/1008_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•23『线路3』 -CCTV9,http://112.27.235.94:8000/hls/10/index.m3u8$LR•IPV4•23『线路4』 +CCTV8,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226485/1.m3u8?$LR•IPV6•18『线路11』 +CCTV8,http://207.56.13.146:81/cdnlive/cctv8.m3u8$LR•IPV4•18『线路12』 +CCTV8,http://69.30.245.50/live/cctv8.m3u8$LR•IPV4•18『线路13』 +CCTV8,http://173.208.212.130:8181/720p/cctv8.m3u8$LR•IPV4•18『线路14』 +CCTV8,http://192.151.150.154/live/cctv8hd.m3u8$LR•IPV4•18『线路15』 +CCTV8,http://173.208.212.130:8181/1080p/cctv8.m3u8$LR•IPV4•18『线路16』 +CCTV8,http://204.12.221.218:8181/3m1080p/cctv8.m3u8$LR•IPV4•18『线路17』 +CCTV8,http://74.91.26.218:82/live/cctv8hd.m3u8$LR•IPV4•18『线路18』 +CCTV9,http://112.46.85.60:8009/hls/509/index.m3u8$LR•IPV4•23『线路1』 +CCTV9,http://123.163.114.168:9901/tsfile/live/0009_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•23『线路2』 +CCTV9,http://38.75.136.137:98/gslb/dsdqbv/cctv9hd.m3u8?auth=test20251009$LR•IPV4•23『线路3』 +CCTV9,http://153.0.171.163:9901/tsfile/live/1008_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•23『线路4』 CCTV9,http://74.91.26.218:82/live/cctv9hd.m3u8$LR•IPV4•23『线路5』 CCTV9,http://112.46.105.20:8009/hls/509/index.m3u8$LR•IPV4•23『线路6』 CCTV9,http://60.10.139.113:8801/hls/9/index.m3u8$LR•IPV4•23『线路7』 @@ -256,15 +257,15 @@ CCTV9,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=10 CCTV9,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265009&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路12』 CCTV9,http://111.29.9.33:6610/000000001000/1000000001000028286/index.m3u8?channel-id=ystenlive&Contentid=1000000001000028286&livemode=1&stbId=3$LR•IPV4•23『线路13』 CCTV9,http://111.29.9.33:6610/000000001000/1000000001000014583/index.m3u8?channel-id=bestzb&Contentid=1000000001000014583&livemode=1&stbId=3$LR•IPV4•23『线路14』 -CCTV9,https://v4-e6b1c5baf4e240fe63adbf68dda23435.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=7bbc669eee2044d8761aa03624b105c7$LR•IPV4•23『线路15』 -CCTV9,https://v4-e6b1c5baf4e240fe63adbf68dda23435.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=279b026fed672d59628112a0fa829209$LR•IPV4•23『线路16』 -CCTV9,https://xykt-fix.github.io/Y77.m3u8$LR•IPV4•23『线路17』 -CCTV9,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226944/1.m3u8?$LR•IPV6•23『线路18』 -CCTV9,http://207.56.13.146:81/cdnlive/cctv9.m3u8$LR•IPV4•23『线路19』 -CCTV9,http://192.151.150.154/live/cctv9hd.m3u8$LR•IPV4•23『线路20』 -CCTV9,http://173.208.212.130:8181/1080p/cctv9.m3u8$LR•IPV4•23『线路21』 -CCTV9,http://173.208.212.130:8181/720p/cctv9.m3u8$LR•IPV4•23『线路22』 -CCTV9,http://204.12.221.218:8181/3m1080p/cctv9.m3u8$LR•IPV4•23『线路23』 +CCTV9,https://v4-702cae17a28d6e4f0c0002bba021d934.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=16c50a21b4dbd7f799ba43a4a3f02212$LR•IPV4•23『线路15』 +CCTV9,https://v4-702cae17a28d6e4f0c0002bba021d934.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=87228f9521462cf4fab49a1fe67efd25$LR•IPV4•23『线路16』 +CCTV9,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226944/1.m3u8?$LR•IPV6•23『线路17』 +CCTV9,http://207.56.13.146:81/cdnlive/cctv9.m3u8$LR•IPV4•23『线路18』 +CCTV9,http://192.151.150.154/live/cctv9hd.m3u8$LR•IPV4•23『线路19』 +CCTV9,http://173.208.212.130:8181/1080p/cctv9.m3u8$LR•IPV4•23『线路20』 +CCTV9,http://173.208.212.130:8181/720p/cctv9.m3u8$LR•IPV4•23『线路21』 +CCTV9,http://204.12.221.218:8181/3m1080p/cctv9.m3u8$LR•IPV4•23『线路22』 +CCTV9,https://xykt-fix.github.io/Y77.m3u8$LR•IPV4•23『线路23』 CCTV10,http://112.27.235.94:8000/hls/11/index.m3u8$LR•IPV4•22『线路1』 CCTV10,http://74.91.26.218:82/live/cctv10hd.m3u8$LR•IPV4•22『线路2』 CCTV10,http://38.75.136.137:98/gslb/dsdqbv/cctv10hd.m3u8?auth=test20251009$LR•IPV4•22『线路3』 @@ -287,12 +288,12 @@ CCTV10,http://192.151.150.154/live/cctv10hd.m3u8$LR•IPV4•22『线路19』 CCTV10,http://173.208.212.130:8181/1080p/cctv10.m3u8$LR•IPV4•22『线路20』 CCTV10,http://173.208.212.130:8181/720p/cctv10.m3u8$LR•IPV4•22『线路21』 CCTV10,http://204.12.221.218:8181/3m1080p/cctv10.m3u8$LR•IPV4•22『线路22』 -CCTV11,http://112.123.243.37:50085/tsfile/live/0012_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•22『线路1』 -CCTV11,http://123.163.114.168:9901/tsfile/live/0011_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•22『线路2』 -CCTV11,http://38.75.136.137:98/gslb/dsdqpub/cctv11hd.m3u8?auth=testpub$LR•IPV4•22『线路3』 -CCTV11,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv11hd$LR•IPV4•22『线路4』 -CCTV11,http://cd-live-stream.news.cctvplus.com/live/smil:CHANNEL1.smil/chunklist_w744036192_b1000000.m3u8$LR•IPV4•22『线路5』 -CCTV11,http://112.27.235.94:8000/hls/12/index.m3u8$LR•IPV4•22『线路6』 +CCTV11,http://112.27.235.94:8000/hls/12/index.m3u8$LR•IPV4•22『线路1』 +CCTV11,http://112.123.243.37:50085/tsfile/live/0012_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•22『线路2』 +CCTV11,http://123.163.114.168:9901/tsfile/live/0011_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•22『线路3』 +CCTV11,http://38.75.136.137:98/gslb/dsdqpub/cctv11hd.m3u8?auth=testpub$LR•IPV4•22『线路4』 +CCTV11,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv11hd$LR•IPV4•22『线路5』 +CCTV11,http://cd-live-stream.news.cctvplus.com/live/smil:CHANNEL1.smil/chunklist_w744036192_b1000000.m3u8$LR•IPV4•22『线路6』 CCTV11,http://74.91.26.218:82/live/cctv11hd.m3u8$LR•IPV4•22『线路7』 CCTV11,http://38.75.136.137:98/gslb/dsdqbv/cctv11hd.m3u8?auth=test20251009$LR•IPV4•22『线路8』 CCTV11,http://153.0.171.163:9901/tsfile/live/1010_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•22『线路9』 @@ -309,9 +310,9 @@ CCTV11,http://192.151.150.154/live/cctv11hd.m3u8$LR•IPV4•22『线路19』 CCTV11,http://173.208.212.130:8181/1080p/cctv11.m3u8$LR•IPV4•22『线路20』 CCTV11,http://173.208.212.130:8181/720p/cctv11.m3u8$LR•IPV4•22『线路21』 CCTV11,http://204.12.221.218:8181/3m1080p/cctv11.m3u8$LR•IPV4•22『线路22』 -CCTV12,http://112.123.243.37:50085/tsfile/live/0013_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•20『线路1』 -CCTV12,http://118.193.115.2:9901/tsfile/live/0012_1.m3u8?key=txiptv$LR•IPV4•20『线路2』 -CCTV12,http://74.91.26.218:82/live/cctv12hd.m3u8$LR•IPV4•20『线路3』 +CCTV12,http://74.91.26.218:82/live/cctv12hd.m3u8$LR•IPV4•20『线路1』 +CCTV12,http://112.123.243.37:50085/tsfile/live/0013_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•20『线路2』 +CCTV12,http://118.193.115.2:9901/tsfile/live/0012_1.m3u8?key=txiptv$LR•IPV4•20『线路3』 CCTV12,http://107.150.60.122/live/cctv12hd.m3u8$LR•IPV4•20『线路4』 CCTV12,http://38.75.136.137:98/gslb/dsdqbv/cctv12hd.m3u8?auth=test20251009$LR•IPV4•20『线路5』 CCTV12,http://112.46.105.20:8009/hls/507/index.m3u8$LR•IPV4•20『线路6』 @@ -329,9 +330,9 @@ CCTV12,http://192.151.150.154/live/cctv12hd.m3u8$LR•IPV4•20『线路17』 CCTV12,http://173.208.212.130:8181/1080p/cctv12.m3u8$LR•IPV4•20『线路18』 CCTV12,http://173.208.212.130:8181/720p/cctv12.m3u8$LR•IPV4•20『线路19』 CCTV12,http://204.12.221.218:8181/3m1080p/cctv12.m3u8$LR•IPV4•20『线路20』 -CCTV13,http://pull-hls-f26.douyinliving.com/media/stream-696107587393815378.m3u8?expire=6a50c3ab&sign=070f9c37ad3a8bb2e34edefb037983df&s_anchor=1&arch_hrchy=s2&major_anchor_level=vip&t_id=037-202607031804263FBA01D0DD5362E5EA3B-NVx2Sh$LR•IPV4•23『线路1』 -CCTV13,http://183.129.255.66:8480/hls/14/index.m3u8$LR•IPV4•23『线路2』 -CCTV13,http://112.27.235.94:8000/hls/14/index.m3u8$LR•IPV4•23『线路3』 +CCTV13,http://112.27.235.94:8000/hls/14/index.m3u8$LR•IPV4•23『线路1』 +CCTV13,http://pull-hls-f26.douyinliving.com/media/stream-696107587393815378.m3u8?expire=6a50c3ab&sign=070f9c37ad3a8bb2e34edefb037983df&s_anchor=1&arch_hrchy=s2&major_anchor_level=vip&t_id=037-202607031804263FBA01D0DD5362E5EA3B-NVx2Sh$LR•IPV4•23『线路2』 +CCTV13,http://183.129.255.66:8480/hls/14/index.m3u8$LR•IPV4•23『线路3』 CCTV13,http://74.91.26.218:82/live/cctv13hd.m3u8$LR•IPV4•23『线路4』 CCTV13,http://38.75.136.137:98/gslb/dsdqbv/cctv13hd.m3u8?auth=test20251009$LR•IPV4•23『线路5』 CCTV13,http://153.0.171.163:9901/tsfile/live/1012_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•23『线路6』 @@ -341,31 +342,31 @@ CCTV13,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000 CCTV13,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000002000021303&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路10』 CCTV13,http://111.29.9.35:6610/000000001000/1000000002000021303/index.m3u8?channel-id=ystenlive&Contentid=1000000002000021303&livemode=1&stbId=3$LR•IPV4•23『线路11』 CCTV13,http://111.29.9.33:6610/000000001000/1000000002000021303/index.m3u8?channel-id=bestzb&Contentid=1000000002000021303&livemode=1&stbId=3$LR•IPV4•23『线路12』 -CCTV13,http://go.bkpcp.top/mg/cctv13$LR•IPV4•23『线路13』 -CCTV13,https://cdn3.163189.xyz/163189/cctv13$LR•IPV4•23『线路14』 -CCTV13,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226316/1.m3u8?$LR•IPV6•23『线路15』 -CCTV13,http://123.163.114.168:9901/tsfile/live/0013_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•23『线路16』 -CCTV13,http://116.128.243.121:85/tsfile/live/0013_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•23『线路17』 -CCTV13,https://event.pull.hebtv.com/jishi/cp1.m3u8$LR•IPV4•23『线路18』 -CCTV13,http://207.56.13.146:81/cdnlive/cctv13.m3u8$LR•IPV4•23『线路19』 -CCTV13,http://192.151.150.154/live/cctv13hd.m3u8$LR•IPV4•23『线路20』 -CCTV13,http://173.208.212.130:8181/1080p/cctv13.m3u8$LR•IPV4•23『线路21』 -CCTV13,http://173.208.212.130:8181/720p/cctv13.m3u8$LR•IPV4•23『线路22』 -CCTV13,http://204.12.221.218:8181/3m1080p/cctv13.m3u8$LR•IPV4•23『线路23』 -CCTV14,http://123.163.114.168:9901/tsfile/live/0014_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•23『线路1』 -CCTV14,http://112.27.235.94:8000/hls/15/index.m3u8$LR•IPV4•23『线路2』 -CCTV14,http://112.123.243.37:50085/tsfile/live/0015_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•23『线路3』 -CCTV14,http://74.91.26.218:82/live/cctv14hd.m3u8$LR•IPV4•23『线路4』 -CCTV14,http://38.75.136.137:98/gslb/dsdqbv/cctv14hd.m3u8?auth=test20251009$LR•IPV4•23『线路5』 -CCTV14,http://153.0.171.163:9901/tsfile/live/1013_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•23『线路6』 -CCTV14,http://60.10.139.113:8801/hls/13/index.m3u8$LR•IPV4•23『线路7』 -CCTV14,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000004000006673&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路8』 -CCTV14,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000023358&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路9』 -CCTV14,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000008170&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路10』 -CCTV14,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000021349&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路11』 -CCTV14,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000000172&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路12』 -CCTV14,http://111.29.9.36:6610/000000001000/5000000004000006673/index.m3u8?channel-id=bestzb&Contentid=5000000004000006673&livemode=1&stbId=3$LR•IPV4•23『线路13』 -CCTV14,http://111.29.9.33:6610/000000001000/1000000001000008170/index.m3u8?channel-id=bestzb&Contentid=1000000001000008170&livemode=1&stbId=3$LR•IPV4•23『线路14』 +CCTV13,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226316/1.m3u8?$LR•IPV6•23『线路13』 +CCTV13,http://123.163.114.168:9901/tsfile/live/0013_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•23『线路14』 +CCTV13,http://116.128.243.121:85/tsfile/live/0013_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•23『线路15』 +CCTV13,https://event.pull.hebtv.com/jishi/cp1.m3u8$LR•IPV4•23『线路16』 +CCTV13,http://207.56.13.146:81/cdnlive/cctv13.m3u8$LR•IPV4•23『线路17』 +CCTV13,http://192.151.150.154/live/cctv13hd.m3u8$LR•IPV4•23『线路18』 +CCTV13,http://173.208.212.130:8181/1080p/cctv13.m3u8$LR•IPV4•23『线路19』 +CCTV13,http://173.208.212.130:8181/720p/cctv13.m3u8$LR•IPV4•23『线路20』 +CCTV13,http://204.12.221.218:8181/3m1080p/cctv13.m3u8$LR•IPV4•23『线路21』 +CCTV13,http://go.bkpcp.top/mg/cctv13$LR•IPV4•23『线路22』 +CCTV13,https://cdn3.163189.xyz/163189/cctv13$LR•IPV4•23『线路23』 +CCTV14,http://112.27.235.94:8000/hls/15/index.m3u8$LR•IPV4•23『线路1』 +CCTV14,http://123.163.114.168:9901/tsfile/live/0014_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•23『线路2』 +CCTV14,http://74.91.26.218:82/live/cctv14hd.m3u8$LR•IPV4•23『线路3』 +CCTV14,http://38.75.136.137:98/gslb/dsdqbv/cctv14hd.m3u8?auth=test20251009$LR•IPV4•23『线路4』 +CCTV14,http://153.0.171.163:9901/tsfile/live/1013_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•23『线路5』 +CCTV14,http://60.10.139.113:8801/hls/13/index.m3u8$LR•IPV4•23『线路6』 +CCTV14,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000004000006673&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路7』 +CCTV14,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000023358&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路8』 +CCTV14,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000008170&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路9』 +CCTV14,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000021349&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路10』 +CCTV14,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000000172&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路11』 +CCTV14,http://111.29.9.36:6610/000000001000/5000000004000006673/index.m3u8?channel-id=bestzb&Contentid=5000000004000006673&livemode=1&stbId=3$LR•IPV4•23『线路12』 +CCTV14,http://111.29.9.33:6610/000000001000/1000000001000008170/index.m3u8?channel-id=bestzb&Contentid=1000000001000008170&livemode=1&stbId=3$LR•IPV4•23『线路13』 +CCTV14,http://112.123.243.37:50085/tsfile/live/0015_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•23『线路14』 CCTV14,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226947/1.m3u8?$LR•IPV6•23『线路15』 CCTV14,https://event.pull.hebtv.com/jishi/cp2.m3u8$LR•IPV4•23『线路16』 CCTV14,http://38.75.136.137:98/gslb/dsdqpub/cctv14hd.m3u8?auth=testpub$LR•IPV4•23『线路17』 @@ -375,8 +376,8 @@ CCTV14,http://192.151.150.154/live/cctv14hd.m3u8$LR•IPV4•23『线路20』 CCTV14,http://173.208.212.130:8181/1080p/cctv14.m3u8$LR•IPV4•23『线路21』 CCTV14,http://173.208.212.130:8181/720p/cctv14.m3u8$LR•IPV4•23『线路22』 CCTV14,http://204.12.221.218:8181/3m1080p/cctv14.m3u8$LR•IPV4•23『线路23』 -CCTV15,http://123.163.114.168:85/tsfile/live/0015_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路1』 -CCTV15,http://112.27.235.94:8000/hls/16/index.m3u8$LR•IPV4•18『线路2』 +CCTV15,http://112.27.235.94:8000/hls/16/index.m3u8$LR•IPV4•18『线路1』 +CCTV15,http://123.163.114.168:85/tsfile/live/0015_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路2』 CCTV15,http://74.91.26.218:82/live/cctv15hd.m3u8$LR•IPV4•18『线路3』 CCTV15,http://38.75.136.137:98/gslb/dsdqbv/cctv15hd.m3u8?auth=test20251009$LR•IPV4•18『线路4』 CCTV15,http://153.0.171.163:9901/tsfile/live/1014_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路5』 @@ -386,13 +387,13 @@ CCTV15,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000 CCTV15,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000002000008163&livemode=1&stbId=yu&mode=1&$LR•IPV4•18『线路9』 CCTV15,http://111.29.9.36:6610/000000001000/1000000002000008163/index.m3u8?channel-id=ystenlive&Contentid=1000000002000008163&livemode=1&stbId=3$LR•IPV4•18『线路10』 CCTV15,http://111.29.9.33:6610/000000001000/1000000002000008163/index.m3u8?channel-id=bestzb&Contentid=1000000002000008163&livemode=1&stbId=3$LR•IPV4•18『线路11』 -CCTV15,https://xykt-fix.github.io/play/a02e/index.m3u8$LR•IPV4•18『线路12』 -CCTV15,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226333/1.m3u8?$LR•IPV6•18『线路13』 -CCTV15,http://207.56.13.146:81/cdnlive/cctv15.m3u8$LR•IPV4•18『线路14』 -CCTV15,http://192.151.150.154/live/cctv15hd.m3u8$LR•IPV4•18『线路15』 -CCTV15,http://173.208.212.130:8181/1080p/cctv15.m3u8$LR•IPV4•18『线路16』 -CCTV15,http://173.208.212.130:8181/720p/cctv15.m3u8$LR•IPV4•18『线路17』 -CCTV15,http://204.12.221.218:8181/3m1080p/cctv15.m3u8$LR•IPV4•18『线路18』 +CCTV15,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226333/1.m3u8?$LR•IPV6•18『线路12』 +CCTV15,http://207.56.13.146:81/cdnlive/cctv15.m3u8$LR•IPV4•18『线路13』 +CCTV15,http://192.151.150.154/live/cctv15hd.m3u8$LR•IPV4•18『线路14』 +CCTV15,http://173.208.212.130:8181/1080p/cctv15.m3u8$LR•IPV4•18『线路15』 +CCTV15,http://173.208.212.130:8181/720p/cctv15.m3u8$LR•IPV4•18『线路16』 +CCTV15,http://204.12.221.218:8181/3m1080p/cctv15.m3u8$LR•IPV4•18『线路17』 +CCTV15,https://xykt-fix.github.io/play/a02e/index.m3u8$LR•IPV4•18『线路18』 CCTV16,http://drive.mxmy.net:8888/udp/239.3.1.184:8001$LR•IPV4•12『线路1』 CCTV16,http://74.91.26.218:82/live/cctv16hd.m3u8$LR•IPV4•12『线路2』 CCTV16,http://38.75.136.137:98/gslb/dsdqbv/cctv16hd.m3u8?auth=test20251009$LR•IPV4•12『线路3』 @@ -502,16 +503,16 @@ CCTV卫生健康,http://38.75.136.137:98/gslb/dsdqpub/wsjk.m3u8?auth=testpub$LR CCTV卫生健康,http://207.56.13.146:81/cdnlive/wsjk.m3u8$LR•IPV4•4『线路2』 CCTV卫生健康,http://192.151.150.154/live/wsjk.m3u8$LR•IPV4•4『线路3』 CCTV卫生健康,http://173.208.212.130:8181/720p/wsjk.m3u8$LR•IPV4•4『线路4』 -CETV1,http://117.161.133.51:81/gitv_live/G_CETV-1/G_CETV-1.m3u8?p=GITV$LR•IPV4•6『线路1』 -CETV1,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000027253&livemode=1&stbId=yu&mode=1&$LR•IPV4•6『线路2』 -CETV1,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000288015&livemode=1&stbId=yu&mode=1&$LR•IPV4•6『线路3』 -CETV1,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000002000002652&livemode=1&stbId=yu&mode=1&$LR•IPV4•6『线路4』 +CETV1,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000027253&livemode=1&stbId=yu&mode=1&$LR•IPV4•6『线路1』 +CETV1,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000288015&livemode=1&stbId=yu&mode=1&$LR•IPV4•6『线路2』 +CETV1,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000002000002652&livemode=1&stbId=yu&mode=1&$LR•IPV4•6『线路3』 +CETV1,http://117.161.133.51:81/gitv_live/G_CETV-1/G_CETV-1.m3u8?p=GITV$LR•IPV4•6『线路4』 CETV1,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226494/1.m3u8?$LR•IPV6•6『线路5』 CETV1,http://111.29.9.33:6610/000000001000/5000000002000002652/index.m3u8?channel-id=bestzb&Contentid=5000000002000002652&livemode=1&stbId=3$LR•IPV4•6『线路6』 -CETV2,http://117.161.133.51:81/gitv_live/G_CETV-2/G_CETV-2.m3u8?p=GITV$LR•IPV4•5『线路1』 -CETV2,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000288017&livemode=1&stbId=yu&mode=1&$LR•IPV4•5『线路2』 -CETV2,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000005000266004&livemode=1&stbId=yu&mode=1&$LR•IPV4•5『线路3』 -CETV2,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000031201&livemode=1&stbId=yu&mode=1&$LR•IPV4•5『线路4』 +CETV2,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000288017&livemode=1&stbId=yu&mode=1&$LR•IPV4•5『线路1』 +CETV2,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000005000266004&livemode=1&stbId=yu&mode=1&$LR•IPV4•5『线路2』 +CETV2,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000031201&livemode=1&stbId=yu&mode=1&$LR•IPV4•5『线路3』 +CETV2,http://117.161.133.51:81/gitv_live/G_CETV-2/G_CETV-2.m3u8?p=GITV$LR•IPV4•5『线路4』 CETV2,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226537/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7E7AxXs4eTU2oiWrhopr9sHw%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNNxsM0Bor098BJglrhfEQTl%2CEND$LR•IPV6•5『线路5』 CETV4,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000031126&livemode=1&stbId=yu&mode=1&$LR•IPV4•5『线路1』 CETV4,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000005000025333&livemode=1&stbId=yu&mode=1&$LR•IPV4•5『线路2』 @@ -568,12 +569,12 @@ CGTN阿语,https://0472.org/hls/cgtna.m3u8?3.24.160:5140$LR•IPV4•4『线路4 星空卫视,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•30『线路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•30『线路2』 -湖南卫视,http://120.198.95.220:9901/tsfile/live/1044_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•30『线路3』 -湖南卫视,http://38.75.136.137:98/gslb/dsdqpub/hnwshd.m3u8?auth=testpub$LR•IPV4•30『线路4』 -湖南卫视,http://107.150.60.122/live/hnwshd.m3u8$LR•IPV4•30『线路5』 -湖南卫视,http://36.136.38.87:9901/tsfile/live/0128_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•30『线路6』 -湖南卫视,http://antvlive.ab5c6921.cdnviet.com/antv/playlist.m3u8$LR•IPV4•30『线路7』 -湖南卫视,http://112.27.235.94:8000/hls/31/index.m3u8$LR•IPV4•30『线路8』 +湖南卫视,http://112.27.235.94:8000/hls/31/index.m3u8$LR•IPV4•30『线路3』 +湖南卫视,http://120.198.95.220:9901/tsfile/live/1044_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•30『线路4』 +湖南卫视,http://38.75.136.137:98/gslb/dsdqpub/hnwshd.m3u8?auth=testpub$LR•IPV4•30『线路5』 +湖南卫视,http://107.150.60.122/live/hnwshd.m3u8$LR•IPV4•30『线路6』 +湖南卫视,http://36.136.38.87:9901/tsfile/live/0128_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•30『线路7』 +湖南卫视,http://antvlive.ab5c6921.cdnviet.com/antv/playlist.m3u8$LR•IPV4•30『线路8』 湖南卫视,http://74.91.26.218:82/live/hnwshd.m3u8$LR•IPV4•30『线路9』 湖南卫视,https://hlsbkmgsplive.miguvideo.com/wd-hunanhd-2500/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•30『线路10』 湖南卫视,https://hlsbkmgsplive.miguvideo.com/wd-hunanhd-1200/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•30『线路11』 @@ -597,128 +598,127 @@ CGTN阿语,https://0472.org/hls/cgtna.m3u8?3.24.160:5140$LR•IPV4•4『线路4 湖南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000010000030452&livemode=1&stbId=yu&mode=1&$LR•IPV4•30『线路29』 湖南卫视,http://111.29.9.33:6610/000000001000/1000000001000009115/index.m3u8?channel-id=bestzb&Contentid=1000000001000009115&livemode=1&stbId=3$LR•IPV4•30『线路30』 浙江卫视,http://zwebl02.cztv.com/live/channel01720Pnew.m3u8?auth_key=1783296043-345b9d43c732b0171c3e0fe16feb7ef1-0-c3f79a991105aa2cfff62f9813656e20$LR•IPV4•34『线路1』 -浙江卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225703/index.m3u8$LR•IPV4•34『线路2』 -浙江卫视,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•34『线路3』 +浙江卫视,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•34『线路2』 +浙江卫视,http://112.27.235.94:8000/hls/29/index.m3u8$LR•IPV4•34『线路3』 浙江卫视,http://120.198.95.220:9901/tsfile/live/1045_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•34『线路4』 浙江卫视,http://124.228.160.210:9901/tsfile/live/0124_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•34『线路5』 浙江卫视,http://36.136.38.87:9901/tsfile/live/0124_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•34『线路6』 -浙江卫视,http://112.27.235.94:8000/hls/29/index.m3u8$LR•IPV4•34『线路7』 -浙江卫视,http://38.75.136.137:98/gslb/dsdqpub/zjwshd.m3u8?auth=testpub$LR•IPV4•34『线路8』 -浙江卫视,http://ali-xwl.cztv.com/live/channel011080Plxw.m3u8$LR•IPV4•34『线路9』 -浙江卫视,http://ali-xwl.cztv.com/live/channel01720Plxw.m3u8$LR•IPV4•34『线路10』 -浙江卫视,http://23.237.228.134/live6/zhejiang.m3u8$LR•IPV4•34『线路11』 -浙江卫视,http://gfr.x3322.net:9901/tsfile/live/1087_1.m3u8$LR•IPV4•34『线路12』 -浙江卫视,http://api.kkitv.itv888.cn:8080/hls/urjqjvyf41q/index.m3u8$LR•IPV4•34『线路13』 -浙江卫视,https://iptv.catvod.com/catvod.php?id=zjws$LR•IPV4•34『线路14』 -浙江卫视,https://httop.top/ysp-浙江卫视$LR•IPV4•34『线路15』 -浙江卫视,http://iptv.huuc.edu.cn/hls/zjhd.m3u8$LR•IPV4•34『线路16』 -浙江卫视,http://153.0.171.163:9901/tsfile/live/0124_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•34『线路17』 -浙江卫视,http://60.10.139.113:8801/hls/18/index.m3u8$LR•IPV4•34『线路18』 -浙江卫视,http://207.56.13.146:81/cdnlive/zjws.m3u8$LR•IPV4•34『线路19』 -浙江卫视,http://192.151.150.154/live/zjwshd.m3u8$LR•IPV4•34『线路20』 -浙江卫视,http://173.208.212.130:8181/1080p/zjws.m3u8$LR•IPV4•34『线路21』 -浙江卫视,http://173.208.212.130:8181/720p/zjws.m3u8$LR•IPV4•34『线路22』 -浙江卫视,http://204.12.221.218:8181/3m1080p/zjws.m3u8$LR•IPV4•34『线路23』 -浙江卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000007275&livemode=1&stbId=yu&mode=1&$LR•IPV4•34『线路24』 -浙江卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000017320&livemode=1&stbId=yu&mode=1&$LR•IPV4•34『线路25』 -浙江卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000009806&livemode=1&stbId=yu&mode=1&$LR•IPV4•34『线路26』 -浙江卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000014260&livemode=1&stbId=yu&mode=1&$LR•IPV4•34『线路27』 -浙江卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=7889730693553663314&livemode=1&stbId=yu&mode=1&$LR•IPV4•34『线路28』 -浙江卫视,https://ali-m-l.cztv.com/channels/lantian/channel001/1080p.m3u8$LR•IPV4•34『线路29』 -浙江卫视,http://ali-m-l.cztv.com:80/channels/lantian/channel001/1080p.m3u8#http://ali-m-l.cztv.com/channels/lantian/channel001/1080p.m3u8#https://ali-m-l.cztv.com/channels/lantian/channel001/1080p.m3u8#https://ali-m-l.cztv.com/channels/lantian/channel001/1080p.m3u8?#http://ali-m-l.cztv.com:80/channels/lantian/channel001/1080p.m3u8$LR•IPV4•34『线路30』 -浙江卫视,http://183.215.134.239:19901/tsfile/live/0124_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•34『线路31』 -浙江卫视,http://ali-m-l.cztv.com/channels/lantian/channel001/720p.m3u8$LR•IPV4•34『线路32』 -浙江卫视,http://ali-m-l.cztv.com:80/channels/lantian/channel001/1080p.m3u8$LR•IPV4•34『线路33』 -浙江卫视,http://111.29.9.33:6610/000000001000/1000000001000009806/index.m3u8?channel-id=bestzb&Contentid=1000000001000009806&livemode=1&stbId=3$LR•IPV4•34『线路34』 -东方卫视,http://118.81.195.79:9003/hls/23/index.m3u8$LR•IPV4•29『线路1』 -东方卫视,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•29『线路2』 -东方卫视,http://120.198.95.220:9901/tsfile/live/1047_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•29『线路3』 -东方卫视,http://123.163.114.168:85/tsfile/live/0107_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•29『线路4』 -东方卫视,https://txmov2.a.kwimgs.com/bs3/video-hls/5219953535631090825_hlsb.m3u8$LR•IPV4•29『线路5』 -东方卫视,http://124.228.160.210:9901/tsfile/live/1005_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•29『线路6』 -东方卫视,http://153.0.171.163:9901/tsfile/live/0107_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•29『线路7』 -东方卫视,http://bp-resource-dfl.bestv.cn/155/3/video.m3u8$LR•IPV4•29『线路8』 -东方卫视,http://38.75.136.137:98/gslb/dsdqbv/dfwshd.m3u8?auth=test20251009$LR•IPV4•29『线路9』 -东方卫视,http://23.237.228.134/live3/dongfang.m3u8$LR•IPV4•29『线路10』 -东方卫视,http://43.251.226.89:8080/play/36.m3u8$LR•IPV4•29『线路11』 -东方卫视,http://gfr.x3322.net:9901/tsfile/live/1085_1.m3u8$LR•IPV4•29『线路12』 -东方卫视,http://api.kkitv.itv888.cn:8080/hls/p269fvbehye/index.m3u8$LR•IPV4•29『线路13』 -东方卫视,https://iptv.catvod.com/catvod.php?id=dfws$LR•IPV4•29『线路14』 -东方卫视,https://httop.top/ysp-东方卫视$LR•IPV4•29『线路15』 -东方卫视,http://iptv.huuc.edu.cn/hls/dfhd.m3u8$LR•IPV4•29『线路16』 -东方卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=dfws$LR•IPV4•29『线路17』 -东方卫视,http://omnix.cn:4000/udp/225.1.8.45:8032$LR•IPV4•29『线路18』 -东方卫视,http://60.10.139.113:8801/hls/22/index.m3u8$LR•IPV4•29『线路19』 -东方卫视,http://207.56.13.146:81/cdnlive/dfws.m3u8$LR•IPV4•29『线路20』 -东方卫视,http://192.151.150.154/live/dfwshd.m3u8$LR•IPV4•29『线路21』 -东方卫视,http://173.208.212.130:8181/720p/dfws.m3u8$LR•IPV4•29『线路22』 -东方卫视,http://204.12.221.218:8181/3m1080p/dfws.m3u8$LR•IPV4•29『线路23』 -东方卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000005866&livemode=1&stbId=yu&mode=1&$LR•IPV4•29『线路24』 -东方卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000030202&livemode=1&stbId=yu&mode=1&$LR•IPV4•29『线路25』 -东方卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=6081477947334326291&livemode=1&stbId=yu&mode=1&$LR•IPV4•29『线路26』 -东方卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000014098&livemode=1&stbId=yu&mode=1&$LR•IPV4•29『线路27』 -东方卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000010000032246&livemode=1&stbId=yu&mode=1&$LR•IPV4•29『线路28』 -东方卫视,http://111.29.9.33:6610/000000001000/1000000001000005866/index.m3u8?channel-id=bestzb&Contentid=1000000001000005866&livemode=1&stbId=3$LR•IPV4•29『线路29』 -北京卫视,http://go.bkpcp.top/mg/bjws$LR•IPV4•29『线路1』 -北京卫视,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•29『线路2』 +浙江卫视,http://38.75.136.137:98/gslb/dsdqpub/zjwshd.m3u8?auth=testpub$LR•IPV4•34『线路7』 +浙江卫视,http://ali-xwl.cztv.com/live/channel011080Plxw.m3u8$LR•IPV4•34『线路8』 +浙江卫视,http://ali-xwl.cztv.com/live/channel01720Plxw.m3u8$LR•IPV4•34『线路9』 +浙江卫视,http://23.237.228.134/live6/zhejiang.m3u8$LR•IPV4•34『线路10』 +浙江卫视,http://gfr.x3322.net:9901/tsfile/live/1087_1.m3u8$LR•IPV4•34『线路11』 +浙江卫视,http://api.kkitv.itv888.cn:8080/hls/urjqjvyf41q/index.m3u8$LR•IPV4•34『线路12』 +浙江卫视,https://iptv.catvod.com/catvod.php?id=zjws$LR•IPV4•34『线路13』 +浙江卫视,https://httop.top/ysp-浙江卫视$LR•IPV4•34『线路14』 +浙江卫视,http://iptv.huuc.edu.cn/hls/zjhd.m3u8$LR•IPV4•34『线路15』 +浙江卫视,http://153.0.171.163:9901/tsfile/live/0124_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•34『线路16』 +浙江卫视,http://60.10.139.113:8801/hls/18/index.m3u8$LR•IPV4•34『线路17』 +浙江卫视,http://207.56.13.146:81/cdnlive/zjws.m3u8$LR•IPV4•34『线路18』 +浙江卫视,http://192.151.150.154/live/zjwshd.m3u8$LR•IPV4•34『线路19』 +浙江卫视,http://173.208.212.130:8181/1080p/zjws.m3u8$LR•IPV4•34『线路20』 +浙江卫视,http://173.208.212.130:8181/720p/zjws.m3u8$LR•IPV4•34『线路21』 +浙江卫视,http://204.12.221.218:8181/3m1080p/zjws.m3u8$LR•IPV4•34『线路22』 +浙江卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000007275&livemode=1&stbId=yu&mode=1&$LR•IPV4•34『线路23』 +浙江卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000017320&livemode=1&stbId=yu&mode=1&$LR•IPV4•34『线路24』 +浙江卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000009806&livemode=1&stbId=yu&mode=1&$LR•IPV4•34『线路25』 +浙江卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000014260&livemode=1&stbId=yu&mode=1&$LR•IPV4•34『线路26』 +浙江卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=7889730693553663314&livemode=1&stbId=yu&mode=1&$LR•IPV4•34『线路27』 +浙江卫视,https://ali-m-l.cztv.com/channels/lantian/channel001/1080p.m3u8$LR•IPV4•34『线路28』 +浙江卫视,http://ali-m-l.cztv.com:80/channels/lantian/channel001/1080p.m3u8#http://ali-m-l.cztv.com/channels/lantian/channel001/1080p.m3u8#https://ali-m-l.cztv.com/channels/lantian/channel001/1080p.m3u8#https://ali-m-l.cztv.com/channels/lantian/channel001/1080p.m3u8?#http://ali-m-l.cztv.com:80/channels/lantian/channel001/1080p.m3u8$LR•IPV4•34『线路29』 +浙江卫视,http://183.215.134.239:19901/tsfile/live/0124_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•34『线路30』 +浙江卫视,http://ali-m-l.cztv.com/channels/lantian/channel001/720p.m3u8$LR•IPV4•34『线路31』 +浙江卫视,http://ali-m-l.cztv.com:80/channels/lantian/channel001/1080p.m3u8$LR•IPV4•34『线路32』 +浙江卫视,http://111.29.9.33:6610/000000001000/1000000001000009806/index.m3u8?channel-id=bestzb&Contentid=1000000001000009806&livemode=1&stbId=3$LR•IPV4•34『线路33』 +浙江卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225703/index.m3u8$LR•IPV4•34『线路34』 +东方卫视,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•28『线路1』 +东方卫视,https://txmov2.a.kwimgs.com/bs3/video-hls/5219953535631090825_hlsb.m3u8$LR•IPV4•28『线路2』 +东方卫视,http://120.198.95.220:9901/tsfile/live/1047_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•28『线路3』 +东方卫视,http://123.163.114.168:85/tsfile/live/0107_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•28『线路4』 +东方卫视,http://124.228.160.210:9901/tsfile/live/1005_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•28『线路5』 +东方卫视,http://153.0.171.163:9901/tsfile/live/0107_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•28『线路6』 +东方卫视,http://38.75.136.137:98/gslb/dsdqbv/dfwshd.m3u8?auth=test20251009$LR•IPV4•28『线路7』 +东方卫视,http://23.237.228.134/live3/dongfang.m3u8$LR•IPV4•28『线路8』 +东方卫视,http://43.251.226.89:8080/play/36.m3u8$LR•IPV4•28『线路9』 +东方卫视,http://gfr.x3322.net:9901/tsfile/live/1085_1.m3u8$LR•IPV4•28『线路10』 +东方卫视,http://api.kkitv.itv888.cn:8080/hls/p269fvbehye/index.m3u8$LR•IPV4•28『线路11』 +东方卫视,https://iptv.catvod.com/catvod.php?id=dfws$LR•IPV4•28『线路12』 +东方卫视,https://httop.top/ysp-东方卫视$LR•IPV4•28『线路13』 +东方卫视,http://iptv.huuc.edu.cn/hls/dfhd.m3u8$LR•IPV4•28『线路14』 +东方卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=dfws$LR•IPV4•28『线路15』 +东方卫视,http://omnix.cn:4000/udp/225.1.8.45:8032$LR•IPV4•28『线路16』 +东方卫视,http://60.10.139.113:8801/hls/22/index.m3u8$LR•IPV4•28『线路17』 +东方卫视,http://207.56.13.146:81/cdnlive/dfws.m3u8$LR•IPV4•28『线路18』 +东方卫视,http://192.151.150.154/live/dfwshd.m3u8$LR•IPV4•28『线路19』 +东方卫视,http://173.208.212.130:8181/720p/dfws.m3u8$LR•IPV4•28『线路20』 +东方卫视,http://204.12.221.218:8181/3m1080p/dfws.m3u8$LR•IPV4•28『线路21』 +东方卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000005866&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路22』 +东方卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000030202&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路23』 +东方卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=6081477947334326291&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路24』 +东方卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000014098&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路25』 +东方卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000010000032246&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路26』 +东方卫视,http://111.29.9.33:6610/000000001000/1000000001000005866/index.m3u8?channel-id=bestzb&Contentid=1000000001000005866&livemode=1&stbId=3$LR•IPV4•28『线路27』 +东方卫视,http://118.81.195.79:9003/hls/23/index.m3u8$LR•IPV4•28『线路28』 +北京卫视,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•29『线路1』 +北京卫视,http://112.27.235.94:8000/hls/27/index.m3u8$LR•IPV4•29『线路2』 北京卫视,http://120.198.95.220:9901/tsfile/live/1050_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•29『线路3』 北京卫视,http://207.56.13.146:81/cdnlive/bjws.m3u8$LR•IPV4•29『线路4』 北京卫视,http://222.90.21.30:9901/hls/23/index.m3u8$LR•IPV4•29『线路5』 北京卫视,http://124.228.160.210:9901/tsfile/live/0122_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•29『线路6』 北京卫视,http://120.198.95.220:9901/tsfile/live/1065_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•29『线路7』 北京卫视,http://153.0.171.163:9901/tsfile/live/0122_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•29『线路8』 -北京卫视,http://112.27.235.94:8000/hls/27/index.m3u8$LR•IPV4•29『线路9』 -北京卫视,http://38.75.136.137:98/gslb/dsdqpub/bjwshd.m3u8?auth=testpub$LR•IPV4•29『线路10』 -北京卫视,http://23.237.228.134/live3/beijing.m3u8$LR•IPV4•29『线路11』 -北京卫视,http://43.251.226.89:8080/play/40.m3u8$LR•IPV4•29『线路12』 -北京卫视,http://gfr.x3322.net:9901/tsfile/live/1089_1.m3u8$LR•IPV4•29『线路13』 -北京卫视,http://api.kkitv.itv888.cn:8080/hls/h5uud1z84gn/index.m3u8$LR•IPV4•29『线路14』 -北京卫视,https://iptv.catvod.com/catvod.php?id=bjws$LR•IPV4•29『线路15』 -北京卫视,https://httop.top/ysp-北京卫视$LR•IPV4•29『线路16』 -北京卫视,http://iptv.huuc.edu.cn/hls/btv1hd.m3u8$LR•IPV4•29『线路17』 -北京卫视,http://60.10.139.113:8801/hls/20/index.m3u8$LR•IPV4•29『线路18』 -北京卫视,http://192.151.150.154/live/bjwshd.m3u8$LR•IPV4•29『线路19』 -北京卫视,http://173.208.212.130:8181/720p/bjws.m3u8$LR•IPV4•29『线路20』 -北京卫视,http://204.12.221.218:8181/3m1080p/bjws.m3u8$LR•IPV4•29『线路21』 -北京卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000031556&livemode=1&stbId=yu&mode=1&$LR•IPV4•29『线路22』 -北京卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000011502&livemode=1&stbId=yu&mode=1&$LR•IPV4•29『线路23』 -北京卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000017156&livemode=1&stbId=yu&mode=1&$LR•IPV4•29『线路24』 -北京卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000021288&livemode=1&stbId=yu&mode=1&$LR•IPV4•29『线路25』 -北京卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265027&livemode=1&stbId=yu&mode=1&$LR•IPV4•29『线路26』 -北京卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=8186688740528366039&livemode=1&stbId=yu&mode=1&$LR•IPV4•29『线路27』 -北京卫视,http://111.29.9.42:6610/000000001000/1000000001000017156/index.m3u8?channel-id=ystenlive&Contentid=1000000001000017156&livemode=1&stbId=3$LR•IPV4•29『线路28』 -北京卫视,http://111.29.9.33:6610/000000001000/1000000001000017156/index.m3u8?channel-id=bestzb&Contentid=1000000001000017156&livemode=1&stbId=3$LR•IPV4•29『线路29』 -江苏卫视,http://39.134.24.166/dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226200/index.m3u8$LR•IPV4•26『线路1』 -江苏卫视,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•26『线路2』 +北京卫视,http://38.75.136.137:98/gslb/dsdqpub/bjwshd.m3u8?auth=testpub$LR•IPV4•29『线路9』 +北京卫视,http://23.237.228.134/live3/beijing.m3u8$LR•IPV4•29『线路10』 +北京卫视,http://43.251.226.89:8080/play/40.m3u8$LR•IPV4•29『线路11』 +北京卫视,http://gfr.x3322.net:9901/tsfile/live/1089_1.m3u8$LR•IPV4•29『线路12』 +北京卫视,http://api.kkitv.itv888.cn:8080/hls/h5uud1z84gn/index.m3u8$LR•IPV4•29『线路13』 +北京卫视,https://iptv.catvod.com/catvod.php?id=bjws$LR•IPV4•29『线路14』 +北京卫视,https://httop.top/ysp-北京卫视$LR•IPV4•29『线路15』 +北京卫视,http://iptv.huuc.edu.cn/hls/btv1hd.m3u8$LR•IPV4•29『线路16』 +北京卫视,http://60.10.139.113:8801/hls/20/index.m3u8$LR•IPV4•29『线路17』 +北京卫视,http://192.151.150.154/live/bjwshd.m3u8$LR•IPV4•29『线路18』 +北京卫视,http://173.208.212.130:8181/720p/bjws.m3u8$LR•IPV4•29『线路19』 +北京卫视,http://204.12.221.218:8181/3m1080p/bjws.m3u8$LR•IPV4•29『线路20』 +北京卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000031556&livemode=1&stbId=yu&mode=1&$LR•IPV4•29『线路21』 +北京卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000011502&livemode=1&stbId=yu&mode=1&$LR•IPV4•29『线路22』 +北京卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000017156&livemode=1&stbId=yu&mode=1&$LR•IPV4•29『线路23』 +北京卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000021288&livemode=1&stbId=yu&mode=1&$LR•IPV4•29『线路24』 +北京卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265027&livemode=1&stbId=yu&mode=1&$LR•IPV4•29『线路25』 +北京卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=8186688740528366039&livemode=1&stbId=yu&mode=1&$LR•IPV4•29『线路26』 +北京卫视,http://111.29.9.42:6610/000000001000/1000000001000017156/index.m3u8?channel-id=ystenlive&Contentid=1000000001000017156&livemode=1&stbId=3$LR•IPV4•29『线路27』 +北京卫视,http://111.29.9.33:6610/000000001000/1000000001000017156/index.m3u8?channel-id=bestzb&Contentid=1000000001000017156&livemode=1&stbId=3$LR•IPV4•29『线路28』 +北京卫视,http://go.bkpcp.top/mg/bjws$LR•IPV4•29『线路29』 +江苏卫视,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•26『线路1』 +江苏卫视,http://112.46.85.60:8009/hls/33/index.m3u8$LR•IPV4•26『线路2』 江苏卫视,http://204.12.221.218:8181/3m1080p/jsws.m3u8$LR•IPV4•26『线路3』 江苏卫视,http://36.136.38.87:9901/tsfile/live/0127_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路4』 -江苏卫视,http://112.46.85.60:8009/hls/33/index.m3u8$LR•IPV4•26『线路5』 -江苏卫视,http://38.75.136.137:98/gslb/dsdqbv/jswshd.m3u8?auth=test20251009$LR•IPV4•26『线路6』 -江苏卫视,https://hlsbkmgsplive.miguvideo.com/migu/kailu/jswshd265/55/20200407/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•26『线路7』 -江苏卫视,http://23.237.228.134/live3/jiangsu.m3u8$LR•IPV4•26『线路8』 -江苏卫视,http://43.251.226.89:8080/play/37.m3u8$LR•IPV4•26『线路9』 -江苏卫视,http://gfr.x3322.net:9901/tsfile/live/1086_1.m3u8$LR•IPV4•26『线路10』 -江苏卫视,http://api.kkitv.itv888.cn:8080/hls/g1upm1u239/index.m3u8$LR•IPV4•26『线路11』 -江苏卫视,https://httop.top/ysp-江苏卫视$LR•IPV4•26『线路12』 -江苏卫视,http://iptv.huuc.edu.cn/hls/jshd.m3u8$LR•IPV4•26『线路13』 -江苏卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=jsws$LR•IPV4•26『线路14』 -江苏卫视,http://60.10.139.113:8801/hls/19/index.m3u8$LR•IPV4•26『线路15』 -江苏卫视,http://207.56.13.146:81/cdnlive/jsws.m3u8$LR•IPV4•26『线路16』 -江苏卫视,http://192.151.150.154/live/jswshd.m3u8$LR•IPV4•26『线路17』 -江苏卫视,http://173.208.212.130:8181/1080p/jsws.m3u8$LR•IPV4•26『线路18』 -江苏卫视,http://173.208.212.130:8181/720p/jsws.m3u8$LR•IPV4•26『线路19』 -江苏卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000004684&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路20』 -江苏卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=4796340999304424198&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路21』 -江苏卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000019351&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路22』 -江苏卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000010000018509&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路23』 -江苏卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000001828&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路24』 -江苏卫视,http://111.29.9.42:6610/000000001000/5000000004000019351/index.m3u8?channel-id=bestzb&Contentid=5000000004000019351&livemode=1&stbId=3$LR•IPV4•26『线路25』 -江苏卫视,http://111.29.9.33:6610/000000001000/1000000001000001828/index.m3u8?channel-id=bestzb&Contentid=1000000001000001828&livemode=1&stbId=3$LR•IPV4•26『线路26』 +江苏卫视,http://38.75.136.137:98/gslb/dsdqbv/jswshd.m3u8?auth=test20251009$LR•IPV4•26『线路5』 +江苏卫视,https://hlsbkmgsplive.miguvideo.com/migu/kailu/jswshd265/55/20200407/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•26『线路6』 +江苏卫视,http://23.237.228.134/live3/jiangsu.m3u8$LR•IPV4•26『线路7』 +江苏卫视,http://43.251.226.89:8080/play/37.m3u8$LR•IPV4•26『线路8』 +江苏卫视,http://gfr.x3322.net:9901/tsfile/live/1086_1.m3u8$LR•IPV4•26『线路9』 +江苏卫视,http://api.kkitv.itv888.cn:8080/hls/g1upm1u239/index.m3u8$LR•IPV4•26『线路10』 +江苏卫视,https://httop.top/ysp-江苏卫视$LR•IPV4•26『线路11』 +江苏卫视,http://iptv.huuc.edu.cn/hls/jshd.m3u8$LR•IPV4•26『线路12』 +江苏卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=jsws$LR•IPV4•26『线路13』 +江苏卫视,http://60.10.139.113:8801/hls/19/index.m3u8$LR•IPV4•26『线路14』 +江苏卫视,http://207.56.13.146:81/cdnlive/jsws.m3u8$LR•IPV4•26『线路15』 +江苏卫视,http://192.151.150.154/live/jswshd.m3u8$LR•IPV4•26『线路16』 +江苏卫视,http://173.208.212.130:8181/1080p/jsws.m3u8$LR•IPV4•26『线路17』 +江苏卫视,http://173.208.212.130:8181/720p/jsws.m3u8$LR•IPV4•26『线路18』 +江苏卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000004684&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路19』 +江苏卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=4796340999304424198&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路20』 +江苏卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000019351&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路21』 +江苏卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000010000018509&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路22』 +江苏卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000001828&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路23』 +江苏卫视,http://111.29.9.42:6610/000000001000/5000000004000019351/index.m3u8?channel-id=bestzb&Contentid=5000000004000019351&livemode=1&stbId=3$LR•IPV4•26『线路24』 +江苏卫视,http://111.29.9.33:6610/000000001000/1000000001000001828/index.m3u8?channel-id=bestzb&Contentid=1000000001000001828&livemode=1&stbId=3$LR•IPV4•26『线路25』 +江苏卫视,http://39.134.24.166/dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226200/index.m3u8$LR•IPV4•26『线路26』 安徽卫视,https://piccpndks.v.kcdnvip.com/audio/anhui_2/index.m3u8$LR•IPV4•24『线路1』 安徽卫视,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•24『线路2』 -安徽卫视,http://120.198.95.220:9901/tsfile/live/1059_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•24『线路3』 -安徽卫视,http://124.228.160.210:9901/tsfile/live/0130_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•24『线路4』 -安徽卫视,http://112.27.235.94:8000/hls/26/index.m3u8$LR•IPV4•24『线路5』 +安徽卫视,http://112.27.235.94:8000/hls/26/index.m3u8$LR•IPV4•24『线路3』 +安徽卫视,http://120.198.95.220:9901/tsfile/live/1059_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•24『线路4』 +安徽卫视,http://124.228.160.210:9901/tsfile/live/0130_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•24『线路5』 安徽卫视,http://23.237.228.134/live8/anhui.m3u8$LR•IPV4•24『线路6』 安徽卫视,http://gfr.x3322.net:9901/tsfile/live/1092_1.m3u8$LR•IPV4•24『线路7』 安徽卫视,http://api.kkitv.itv888.cn:8080/hls/m8hvytneunk/index.m3u8$LR•IPV4•24『线路8』 @@ -739,29 +739,29 @@ CGTN阿语,https://0472.org/hls/cgtna.m3u8?3.24.160:5140$LR•IPV4•4『线路4 安徽卫视,http://111.29.9.34:6610/000000001000/1000000001000020780/index.m3u8?channel-id=ystenlive&Contentid=1000000001000020780&livemode=1&stbId=3$LR•IPV4•24『线路23』 安徽卫视,http://111.29.9.33:6610/000000001000/1000000001000020780/index.m3u8?channel-id=bestzb&Contentid=1000000001000020780&livemode=1&stbId=3$LR•IPV4•24『线路24』 重庆卫视,http://tmpstream.hyrtv.cn/xwzh/sd/live.m3u8$LR•IPV4•22『线路1』 -重庆卫视,http://118.81.195.79:9003/hls/22/index.m3u8$LR•IPV4•22『线路2』 -重庆卫视,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•22『线路3』 +重庆卫视,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•22『线路2』 +重庆卫视,http://112.27.235.94:8000/hls/36/index.m3u8$LR•IPV4•22『线路3』 重庆卫视,http://112.123.243.37:50085/tsfile/live/0131_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•22『线路4』 重庆卫视,http://120.198.95.220:9901/tsfile/live/1066_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•22『线路5』 重庆卫视,http://153.0.171.163:9901/tsfile/live/0142_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•22『线路6』 -重庆卫视,http://112.27.235.94:8000/hls/36/index.m3u8$LR•IPV4•22『线路7』 -重庆卫视,http://23.237.228.134/live6/chongqing.m3u8$LR•IPV4•22『线路8』 -重庆卫视,http://43.251.226.89:8080/play/55.m3u8$LR•IPV4•22『线路9』 -重庆卫视,http://gfr.x3322.net:9901/tsfile/live/1093_1.m3u8$LR•IPV4•22『线路10』 -重庆卫视,http://api.kkitv.itv888.cn:8080/hls/ogh3s6tbw6/index.m3u8$LR•IPV4•22『线路11』 -重庆卫视,https://iptv.catvod.com/catvod.php?id=cqws$LR•IPV4•22『线路12』 -重庆卫视,https://httop.top/ysp-重庆卫视$LR•IPV4•22『线路13』 -重庆卫视,http://iptv.huuc.edu.cn/hls/cqhd.m3u8$LR•IPV4•22『线路14』 -重庆卫视,http://60.10.139.113:8801/hls/31/index.m3u8$LR•IPV4•22『线路15』 -重庆卫视,http://207.56.13.146:81/cdnlive/cqws.m3u8$LR•IPV4•22『线路16』 -重庆卫视,http://192.151.150.154/live/cqwshd.m3u8$LR•IPV4•22『线路17』 -重庆卫视,http://204.12.221.218:8181/3m1080p/cqws.m3u8$LR•IPV4•22『线路18』 -重庆卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000025797&livemode=1&stbId=yu&mode=1&$LR•IPV4•22『线路19』 -重庆卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000001096&livemode=1&stbId=yu&mode=1&$LR•IPV4•22『线路20』 -重庆卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000018937&livemode=1&stbId=yu&mode=1&$LR•IPV4•22『线路21』 -重庆卫视,http://111.29.9.33:6610/000000001000/1000000001000001096/index.m3u8?channel-id=bestzb&Contentid=1000000001000001096&livemode=1&stbId=3$LR•IPV4•22『线路22』 -四川卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225733/index.m3u8$LR•IPV4•23『线路1』 -四川卫视,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•23『线路2』 +重庆卫视,http://23.237.228.134/live6/chongqing.m3u8$LR•IPV4•22『线路7』 +重庆卫视,http://43.251.226.89:8080/play/55.m3u8$LR•IPV4•22『线路8』 +重庆卫视,http://gfr.x3322.net:9901/tsfile/live/1093_1.m3u8$LR•IPV4•22『线路9』 +重庆卫视,http://api.kkitv.itv888.cn:8080/hls/ogh3s6tbw6/index.m3u8$LR•IPV4•22『线路10』 +重庆卫视,https://iptv.catvod.com/catvod.php?id=cqws$LR•IPV4•22『线路11』 +重庆卫视,https://httop.top/ysp-重庆卫视$LR•IPV4•22『线路12』 +重庆卫视,http://iptv.huuc.edu.cn/hls/cqhd.m3u8$LR•IPV4•22『线路13』 +重庆卫视,http://60.10.139.113:8801/hls/31/index.m3u8$LR•IPV4•22『线路14』 +重庆卫视,http://207.56.13.146:81/cdnlive/cqws.m3u8$LR•IPV4•22『线路15』 +重庆卫视,http://192.151.150.154/live/cqwshd.m3u8$LR•IPV4•22『线路16』 +重庆卫视,http://204.12.221.218:8181/3m1080p/cqws.m3u8$LR•IPV4•22『线路17』 +重庆卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000025797&livemode=1&stbId=yu&mode=1&$LR•IPV4•22『线路18』 +重庆卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000001096&livemode=1&stbId=yu&mode=1&$LR•IPV4•22『线路19』 +重庆卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000018937&livemode=1&stbId=yu&mode=1&$LR•IPV4•22『线路20』 +重庆卫视,http://111.29.9.33:6610/000000001000/1000000001000001096/index.m3u8?channel-id=bestzb&Contentid=1000000001000001096&livemode=1&stbId=3$LR•IPV4•22『线路21』 +重庆卫视,http://118.81.195.79:9003/hls/22/index.m3u8$LR•IPV4•22『线路22』 +四川卫视,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•23『线路1』 +四川卫视,http://112.27.235.94:8000/hls/35/index.m3u8$LR•IPV4•23『线路2』 四川卫视,http://222.90.21.30:9901/hls/45/index.m3u8$LR•IPV4•23『线路3』 四川卫视,http://198.204.228.26/live/scwshd.m3u8$LR•IPV4•23『线路4』 四川卫视,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=scwshd$LR•IPV4•23『线路5』 @@ -769,490 +769,486 @@ CGTN阿语,https://0472.org/hls/cgtna.m3u8?3.24.160:5140$LR•IPV4•4『线路4 四川卫视,http://112.123.243.37:50085/tsfile/live/0139_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•23『线路7』 四川卫视,http://120.198.95.220:9901/tsfile/live/1060_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•23『线路8』 四川卫视,http://153.0.171.163:85/tsfile/live/0123_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•23『线路9』 -四川卫视,http://112.27.235.94:8000/hls/35/index.m3u8$LR•IPV4•23『线路10』 -四川卫视,http://38.75.136.137:98/gslb/dsdqpub/scwshd.m3u8?auth=testpub$LR•IPV4•23『线路11』 -四川卫视,http://api.kkitv.itv888.cn:8080/hls/p2npnppn96p/index.m3u8$LR•IPV4•23『线路12』 -四川卫视,https://iptv.catvod.com/catvod.php?id=scws$LR•IPV4•23『线路13』 -四川卫视,https://httop.top/ysp-四川卫视$LR•IPV4•23『线路14』 -四川卫视,http://iptv.huuc.edu.cn/hls/schd.m3u8$LR•IPV4•23『线路15』 -四川卫视,http://60.10.139.113:8801/hls/30/index.m3u8$LR•IPV4•23『线路16』 -四川卫视,http://207.56.13.146:81/cdnlive/scws.m3u8$LR•IPV4•23『线路17』 -四川卫视,http://192.151.150.154/live/scwshd.m3u8$LR•IPV4•23『线路18』 -四川卫视,http://204.12.221.218:8181/3m1080p/scws.m3u8$LR•IPV4•23『线路19』 -四川卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000006119&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路20』 -四川卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000016825&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路21』 -四川卫视,http://111.29.9.37:6610/000000001000/1000000002000016825/index.m3u8?stbId=3&livemode=1&IASHttpSessionId=OTT$LR•IPV4•23『线路22』 -四川卫视,http://111.29.9.33:6610/000000001000/1000000002000016825/index.m3u8?channel-id=bestzb&Contentid=1000000002000016825&livemode=1&stbId=3$LR•IPV4•23『线路23』 -东南卫视,http://118.81.195.79:9003/hls/24/index.m3u8$LR•IPV4•26『线路1』 -东南卫视,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•26『线路2』 +四川卫视,http://38.75.136.137:98/gslb/dsdqpub/scwshd.m3u8?auth=testpub$LR•IPV4•23『线路10』 +四川卫视,http://api.kkitv.itv888.cn:8080/hls/p2npnppn96p/index.m3u8$LR•IPV4•23『线路11』 +四川卫视,https://iptv.catvod.com/catvod.php?id=scws$LR•IPV4•23『线路12』 +四川卫视,https://httop.top/ysp-四川卫视$LR•IPV4•23『线路13』 +四川卫视,http://iptv.huuc.edu.cn/hls/schd.m3u8$LR•IPV4•23『线路14』 +四川卫视,http://60.10.139.113:8801/hls/30/index.m3u8$LR•IPV4•23『线路15』 +四川卫视,http://207.56.13.146:81/cdnlive/scws.m3u8$LR•IPV4•23『线路16』 +四川卫视,http://192.151.150.154/live/scwshd.m3u8$LR•IPV4•23『线路17』 +四川卫视,http://204.12.221.218:8181/3m1080p/scws.m3u8$LR•IPV4•23『线路18』 +四川卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000006119&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路19』 +四川卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000016825&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路20』 +四川卫视,http://111.29.9.37:6610/000000001000/1000000002000016825/index.m3u8?stbId=3&livemode=1&IASHttpSessionId=OTT$LR•IPV4•23『线路21』 +四川卫视,http://111.29.9.33:6610/000000001000/1000000002000016825/index.m3u8?channel-id=bestzb&Contentid=1000000002000016825&livemode=1&stbId=3$LR•IPV4•23『线路22』 +四川卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225733/index.m3u8$LR•IPV4•23『线路23』 +东南卫视,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•26『线路1』 +东南卫视,http://112.27.235.94:8000/hls/38/index.m3u8$LR•IPV4•26『线路2』 东南卫视,http://live.zohi.tv/video/s10001-fztv-3/index.m3u8$LR•IPV4•26『线路3』 东南卫视,http://123.163.114.168:85/tsfile/live/0137_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路4』 东南卫视,http://36.136.38.87:9901/tsfile/live/0137_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路5』 东南卫视,http://153.0.171.163:9901/tsfile/live/0137_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路6』 -东南卫视,http://61.136.172.236:9901/tsfile/live/0137_1.m3u8$LR•IPV4•26『线路7』 -东南卫视,http://38.75.136.137:98/gslb/dsdqpub/dnwshd.m3u8?auth=testpub$LR•IPV4•26『线路8』 -东南卫视,https://hlsbkmgsplive.miguvideo.com/migu/kailu/dongnanws/51/20230724/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•26『线路9』 -东南卫视,http://23.237.228.134/live6/dongnan.m3u8$LR•IPV4•26『线路10』 -东南卫视,http://23.237.228.134/live8/gansu.m3u8$LR•IPV4•26『线路11』 -东南卫视,http://43.251.226.89:8080/play/49.m3u8$LR•IPV4•26『线路12』 -东南卫视,http://gfr.x3322.net:9901/tsfile/live/1099_1.m3u8$LR•IPV4•26『线路13』 -东南卫视,http://api.kkitv.itv888.cn:8080/hls/jjt15bvbl7a/index.m3u8$LR•IPV4•26『线路14』 -东南卫视,https://iptv.catvod.com/catvod.php?id=dnws$LR•IPV4•26『线路15』 -东南卫视,https://httop.top/ysp-东南卫视$LR•IPV4•26『线路16』 -东南卫视,http://iptv.huuc.edu.cn/hls/dnhd.m3u8$LR•IPV4•26『线路17』 -东南卫视,http://60.10.139.113:8801/hls/21/index.m3u8$LR•IPV4•26『线路18』 -东南卫视,http://207.56.13.146:81/cdnlive/dnws.m3u8$LR•IPV4•26『线路19』 -东南卫视,http://192.151.150.154/live/dnwshd.m3u8$LR•IPV4•26『线路20』 -东南卫视,http://204.12.221.218:8181/3m1080p/dnws.m3u8$LR•IPV4•26『线路21』 -东南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000010584&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路22』 -东南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000001000005829&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路23』 -东南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000002000009263&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路24』 -东南卫视,http://111.29.9.37:6610/000000001000/1000000002000009263/index.m3u8?stbId=3&livemode=1&IASHttpSessionId=OTT$LR•IPV4•26『线路25』 -东南卫视,http://111.29.9.33:6610/000000001000/1000000002000009263/index.m3u8?channel-id=bestzb&Contentid=1000000002000009263&livemode=1&stbId=3$LR•IPV4•26『线路26』 -深圳卫视,https://sztv-hls.sztv.com.cn/sztvgjpd/500/o47pzsvm.m3u8?sign=04712152a9c7592d280cc50a0597352b&t=6a4aff31$LR•IPV4•28『线路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•28『线路2』 -深圳卫视,http://120.198.95.220:9901/tsfile/live/1048_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•28『线路3』 -深圳卫视,http://123.163.114.168:9901/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•28『线路4』 -深圳卫视,http://38.75.136.137:98/gslb/dsdqpub/szwshd.m3u8?auth=testpub$LR•IPV4•28『线路5』 -深圳卫视,http://198.204.228.26/live/szwshd.m3u8$LR•IPV4•28『线路6』 -深圳卫视,http://36.136.38.87:9901/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•28『线路7』 -深圳卫视,http://153.0.171.163:9901/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•28『线路8』 -深圳卫视,http://112.27.235.94:8000/hls/33/index.m3u8$LR•IPV4•28『线路9』 -深圳卫视,http://23.237.228.134/live6/shenzhen.m3u8$LR•IPV4•28『线路10』 -深圳卫视,http://gfr.x3322.net:9901/tsfile/live/1095_1.m3u8$LR•IPV4•28『线路11』 -深圳卫视,http://api.kkitv.itv888.cn:8080/hls/iftsd32ykm/index.m3u8$LR•IPV4•28『线路12』 -深圳卫视,https://iptv.catvod.com/catvod.php?id=szws$LR•IPV4•28『线路13』 -深圳卫视,https://httop.top/ysp-深圳卫视$LR•IPV4•28『线路14』 -深圳卫视,http://iptv.huuc.edu.cn/hls/szhd.m3u8$LR•IPV4•28『线路15』 -深圳卫视,http://38.64.72.148:80/hls/modn/list/4007/playlist.m3u8$LR•IPV4•28『线路16』 -深圳卫视,http://60.10.139.113:8801/hls/24/index.m3u8$LR•IPV4•28『线路17』 -深圳卫视,http://207.56.13.146:81/cdnlive/szws.m3u8$LR•IPV4•28『线路18』 -深圳卫视,http://192.151.150.154/live/szwshd.m3u8$LR•IPV4•28『线路19』 -深圳卫视,http://173.208.212.130:8181/720p/szws.m3u8$LR•IPV4•28『线路20』 -深圳卫视,http://204.12.221.218:8181/3m1080p/szws.m3u8$LR•IPV4•28『线路21』 -深圳卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000024026&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路22』 -深圳卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000007410&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路23』 -深圳卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000009227&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路24』 -深圳卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000011645&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路25』 -深圳卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=5352218613763113657&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路26』 -深圳卫视,http://111.29.9.38:6610/000000001000/1000000001000009227/index.m3u8?channel-id=ystenlive&Contentid=1000000001000009227&livemode=1&stbId=3$LR•IPV4•28『线路27』 -深圳卫视,http://111.29.9.33:6610/000000001000/1000000001000009227/index.m3u8?channel-id=bestzb&Contentid=1000000001000009227&livemode=1&stbId=3$LR•IPV4•28『线路28』 -广东卫视,http://118.81.195.79:9003/hls/26/index.m3u8$LR•IPV4•27『线路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•27『线路2』 +东南卫视,http://38.75.136.137:98/gslb/dsdqpub/dnwshd.m3u8?auth=testpub$LR•IPV4•26『线路7』 +东南卫视,https://hlsbkmgsplive.miguvideo.com/migu/kailu/dongnanws/51/20230724/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•26『线路8』 +东南卫视,http://23.237.228.134/live6/dongnan.m3u8$LR•IPV4•26『线路9』 +东南卫视,http://23.237.228.134/live8/gansu.m3u8$LR•IPV4•26『线路10』 +东南卫视,http://43.251.226.89:8080/play/49.m3u8$LR•IPV4•26『线路11』 +东南卫视,http://gfr.x3322.net:9901/tsfile/live/1099_1.m3u8$LR•IPV4•26『线路12』 +东南卫视,http://api.kkitv.itv888.cn:8080/hls/jjt15bvbl7a/index.m3u8$LR•IPV4•26『线路13』 +东南卫视,https://iptv.catvod.com/catvod.php?id=dnws$LR•IPV4•26『线路14』 +东南卫视,https://httop.top/ysp-东南卫视$LR•IPV4•26『线路15』 +东南卫视,http://iptv.huuc.edu.cn/hls/dnhd.m3u8$LR•IPV4•26『线路16』 +东南卫视,http://60.10.139.113:8801/hls/21/index.m3u8$LR•IPV4•26『线路17』 +东南卫视,http://207.56.13.146:81/cdnlive/dnws.m3u8$LR•IPV4•26『线路18』 +东南卫视,http://192.151.150.154/live/dnwshd.m3u8$LR•IPV4•26『线路19』 +东南卫视,http://204.12.221.218:8181/3m1080p/dnws.m3u8$LR•IPV4•26『线路20』 +东南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000010584&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路21』 +东南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000001000005829&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路22』 +东南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000002000009263&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路23』 +东南卫视,http://111.29.9.37:6610/000000001000/1000000002000009263/index.m3u8?stbId=3&livemode=1&IASHttpSessionId=OTT$LR•IPV4•26『线路24』 +东南卫视,http://111.29.9.33:6610/000000001000/1000000002000009263/index.m3u8?channel-id=bestzb&Contentid=1000000002000009263&livemode=1&stbId=3$LR•IPV4•26『线路25』 +东南卫视,http://118.81.195.79:9003/hls/24/index.m3u8$LR•IPV4•26『线路26』 +深圳卫视,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•27『线路1』 +深圳卫视,http://112.27.235.94:8000/hls/33/index.m3u8$LR•IPV4•27『线路2』 +深圳卫视,http://120.198.95.220:9901/tsfile/live/1048_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•27『线路3』 +深圳卫视,http://123.163.114.168:9901/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•27『线路4』 +深圳卫视,http://38.75.136.137:98/gslb/dsdqpub/szwshd.m3u8?auth=testpub$LR•IPV4•27『线路5』 +深圳卫视,http://198.204.228.26/live/szwshd.m3u8$LR•IPV4•27『线路6』 +深圳卫视,http://36.136.38.87:9901/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•27『线路7』 +深圳卫视,http://153.0.171.163:9901/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•27『线路8』 +深圳卫视,http://23.237.228.134/live6/shenzhen.m3u8$LR•IPV4•27『线路9』 +深圳卫视,http://gfr.x3322.net:9901/tsfile/live/1095_1.m3u8$LR•IPV4•27『线路10』 +深圳卫视,http://api.kkitv.itv888.cn:8080/hls/iftsd32ykm/index.m3u8$LR•IPV4•27『线路11』 +深圳卫视,https://iptv.catvod.com/catvod.php?id=szws$LR•IPV4•27『线路12』 +深圳卫视,https://httop.top/ysp-深圳卫视$LR•IPV4•27『线路13』 +深圳卫视,http://iptv.huuc.edu.cn/hls/szhd.m3u8$LR•IPV4•27『线路14』 +深圳卫视,http://38.64.72.148:80/hls/modn/list/4007/playlist.m3u8$LR•IPV4•27『线路15』 +深圳卫视,http://60.10.139.113:8801/hls/24/index.m3u8$LR•IPV4•27『线路16』 +深圳卫视,http://207.56.13.146:81/cdnlive/szws.m3u8$LR•IPV4•27『线路17』 +深圳卫视,http://192.151.150.154/live/szwshd.m3u8$LR•IPV4•27『线路18』 +深圳卫视,http://173.208.212.130:8181/720p/szws.m3u8$LR•IPV4•27『线路19』 +深圳卫视,http://204.12.221.218:8181/3m1080p/szws.m3u8$LR•IPV4•27『线路20』 +深圳卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000024026&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路21』 +深圳卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000007410&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路22』 +深圳卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000009227&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路23』 +深圳卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000011645&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路24』 +深圳卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=5352218613763113657&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路25』 +深圳卫视,http://111.29.9.38:6610/000000001000/1000000001000009227/index.m3u8?channel-id=ystenlive&Contentid=1000000001000009227&livemode=1&stbId=3$LR•IPV4•27『线路26』 +深圳卫视,http://111.29.9.33:6610/000000001000/1000000001000009227/index.m3u8?channel-id=bestzb&Contentid=1000000001000009227&livemode=1&stbId=3$LR•IPV4•27『线路27』 +广东卫视,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•27『线路1』 +广东卫视,http://112.27.235.94:8000/hls/30/index.m3u8$LR•IPV4•27『线路2』 广东卫视,http://173.208.212.130:8181/720p/gdws.m3u8$LR•IPV4•27『线路3』 广东卫视,http://38.75.136.137:98/gslb/dsdqpub/gdwshd.m3u8?auth=testpub$LR•IPV4•27『线路4』 广东卫视,http://107.150.60.122/live/gdwshd.m3u8$LR•IPV4•27『线路5』 广东卫视,http://124.228.160.210:9901/tsfile/live/0125_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•27『线路6』 广东卫视,http://153.0.171.163:9901/tsfile/live/0125_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•27『线路7』 -广东卫视,http://112.27.235.94:8000/hls/30/index.m3u8$LR•IPV4•27『线路8』 -广东卫视,http://23.237.228.134/live6/guangdong.m3u8$LR•IPV4•27『线路9』 -广东卫视,http://43.251.226.89:8080/play/38.m3u8$LR•IPV4•27『线路10』 -广东卫视,http://gfr.x3322.net:9901/tsfile/live/1096_1.m3u8$LR•IPV4•27『线路11』 -广东卫视,http://api.kkitv.itv888.cn:8080/hls/qr6872071g/index.m3u8$LR•IPV4•27『线路12』 -广东卫视,https://iptv.catvod.com/catvod.php?id=gdws$LR•IPV4•27『线路13』 -广东卫视,https://httop.top/ysp-广东卫视$LR•IPV4•27『线路14』 -广东卫视,http://iptv.huuc.edu.cn/hls/gdhd.m3u8$LR•IPV4•27『线路15』 -广东卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=gdws$LR•IPV4•27『线路16』 -广东卫视,http://60.10.139.113:8801/hls/26/index.m3u8$LR•IPV4•27『线路17』 -广东卫视,http://207.56.13.146:81/cdnlive/gdws.m3u8$LR•IPV4•27『线路18』 -广东卫视,http://192.151.150.154/live/gdwshd.m3u8$LR•IPV4•27『线路19』 -广东卫视,http://204.12.221.218:8181/3m1080p/gdws.m3u8$LR•IPV4•27『线路20』 -广东卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=5616881981321254555&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路21』 -广东卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000030417&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路22』 -广东卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000014694&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路23』 -广东卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000014176&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路24』 -广东卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000028357&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路25』 -广东卫视,http://111.29.9.36:6610/000000001000/1000000001000028357/index.m3u8?channel-id=ystenlive&Contentid=1000000001000028357&livemode=1&stbId=3$LR•IPV4•27『线路26』 -广东卫视,http://111.29.9.33:6610/000000001000/1000000001000014176/index.m3u8?channel-id=bestzb&Contentid=1000000001000014176&livemode=1&stbId=3$LR•IPV4•27『线路27』 -广西卫视,http://118.81.195.79:9003/hls/27/index.m3u8$LR•IPV4•23『线路1』 -广西卫视,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•23『线路2』 +广东卫视,http://23.237.228.134/live6/guangdong.m3u8$LR•IPV4•27『线路8』 +广东卫视,http://43.251.226.89:8080/play/38.m3u8$LR•IPV4•27『线路9』 +广东卫视,http://gfr.x3322.net:9901/tsfile/live/1096_1.m3u8$LR•IPV4•27『线路10』 +广东卫视,http://api.kkitv.itv888.cn:8080/hls/qr6872071g/index.m3u8$LR•IPV4•27『线路11』 +广东卫视,https://iptv.catvod.com/catvod.php?id=gdws$LR•IPV4•27『线路12』 +广东卫视,https://httop.top/ysp-广东卫视$LR•IPV4•27『线路13』 +广东卫视,http://iptv.huuc.edu.cn/hls/gdhd.m3u8$LR•IPV4•27『线路14』 +广东卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=gdws$LR•IPV4•27『线路15』 +广东卫视,http://60.10.139.113:8801/hls/26/index.m3u8$LR•IPV4•27『线路16』 +广东卫视,http://207.56.13.146:81/cdnlive/gdws.m3u8$LR•IPV4•27『线路17』 +广东卫视,http://192.151.150.154/live/gdwshd.m3u8$LR•IPV4•27『线路18』 +广东卫视,http://204.12.221.218:8181/3m1080p/gdws.m3u8$LR•IPV4•27『线路19』 +广东卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=5616881981321254555&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路20』 +广东卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000030417&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路21』 +广东卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000014694&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路22』 +广东卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000014176&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路23』 +广东卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000028357&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路24』 +广东卫视,http://111.29.9.36:6610/000000001000/1000000001000028357/index.m3u8?channel-id=ystenlive&Contentid=1000000001000028357&livemode=1&stbId=3$LR•IPV4•27『线路25』 +广东卫视,http://111.29.9.33:6610/000000001000/1000000001000014176/index.m3u8?channel-id=bestzb&Contentid=1000000001000014176&livemode=1&stbId=3$LR•IPV4•27『线路26』 +广东卫视,http://118.81.195.79:9003/hls/26/index.m3u8$LR•IPV4•27『线路27』 +广西卫视,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•23『线路1』 +广西卫视,https://hlscdn.liangtv.cn/live/de0f97348eb84f62aa6b7d8cf0430770/dd505d87880c478f901f38560ca4d4e6.m3u8$LR•IPV4•23『线路2』 广西卫视,http://120.198.95.220:9901/tsfile/live/1054_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•23『线路3』 广西卫视,http://123.163.114.168:85/tsfile/live/0113_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•23『线路4』 广西卫视,https://gd202.tv1288.xyz/tsfile/live/1028_1.m3u8$LR•IPV4•23『线路5』 广西卫视,http://36.136.38.87:9901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•23『线路6』 广西卫视,http://153.0.171.163:9901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•23『线路7』 -广西卫视,https://hlscdn.liangtv.cn/live/de0f97348eb84f62aa6b7d8cf0430770/dd505d87880c478f901f38560ca4d4e6.m3u8$LR•IPV4•23『线路8』 -广西卫视,http://38.75.136.137:98/gslb/dsdqpub/gxwshd.m3u8?auth=testpub$LR•IPV4•23『线路9』 -广西卫视,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•23『线路10』 -广西卫视,http://23.237.228.134/live6/guangxi.m3u8$LR•IPV4•23『线路11』 -广西卫视,http://23.237.228.134/live6/guizhou.m3u8$LR•IPV4•23『线路12』 -广西卫视,http://api.kkitv.itv888.cn:8080/hls/yvz4ndj9dqb/index.m3u8$LR•IPV4•23『线路13』 -广西卫视,https://iptv.catvod.com/catvod.php?id=gxws$LR•IPV4•23『线路14』 -广西卫视,https://httop.top/ysp-广西卫视$LR•IPV4•23『线路15』 -广西卫视,http://60.10.139.113:8801/hls/52/index.m3u8$LR•IPV4•23『线路16』 -广西卫视,http://207.56.13.146:81/cdnlive/gxws.m3u8$LR•IPV4•23『线路17』 -广西卫视,http://192.151.150.154/live/gxwshd.m3u8$LR•IPV4•23『线路18』 -广西卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000031118&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路19』 -广西卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000006000040014&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路20』 -广西卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000002000019837&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路21』 -广西卫视,http://111.29.9.37:6610/000000001000/1000000002000019837/index.m3u8?stbId=3&livemode=1&IASHttpSessionId=OTT$LR•IPV4•23『线路22』 -广西卫视,http://111.29.9.33:6610/000000001000/1000000002000019837/index.m3u8?channel-id=bestzb&Contentid=1000000002000019837&livemode=1&stbId=3$LR•IPV4•23『线路23』 -厦门卫视,https://live1b.kxm.xmtv.cn/xmtvbf/tvzb/live.m3u8$LR•IPV4•8『线路1』 -厦门卫视,http://223.110.245.159/ott.js.chinamobile.com/PLTV/3/224/3221226996/index.m3u8$LR•IPV4•8『线路2』 -厦门卫视,http://112.25.48.68/live/program/live/xmws/1300000/mnf.m3u8$LR•IPV4•8『线路3』 -厦门卫视,http://183.11.239.36:808/hls/17/index.m3u8$LR•IPV4•8『线路4』 -厦门卫视,https://iptv.catvod.com/catvod.php?id=xmws$LR•IPV4•8『线路5』 -厦门卫视,http://192.151.150.154/live/xmws.m3u8$LR•IPV4•8『线路6』 -厦门卫视,http://204.12.221.218:8181/3m1080p/xmws.m3u8$LR•IPV4•8『线路7』 -厦门卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000005000266006&livemode=1&stbId=yu&mode=1&$LR•IPV4•8『线路8』 -甘肃卫视,http://118.81.195.79:9003/hls/25/index.m3u8$LR•IPV4•12『线路1』 -甘肃卫视,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•12『线路2』 -甘肃卫视,https://iptv.catvod.com/catvod.php?id=gsws$LR•IPV4•12『线路3』 -甘肃卫视,https://httop.top/ysp-甘肃卫视$LR•IPV4•12『线路4』 -甘肃卫视,http://207.56.13.146:81/cdnlive/gsws.m3u8$LR•IPV4•12『线路5』 -甘肃卫视,http://192.151.150.154/live/gswshd.m3u8$LR•IPV4•12『线路6』 -甘肃卫视,http://204.12.221.218:8181/3m1080p/gsws.m3u8$LR•IPV4•12『线路7』 -甘肃卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000031121&livemode=1&stbId=yu&mode=1&$LR•IPV4•12『线路8』 -甘肃卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000017827&livemode=1&stbId=yu&mode=1&$LR•IPV4•12『线路9』 -甘肃卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000006000040021&livemode=1&stbId=yu&mode=1&$LR•IPV4•12『线路10』 -甘肃卫视,http://111.29.9.37:6610/000000001000/1000000002000017827/index.m3u8?stbId=3&livemode=1&IASHttpSessionId=OTT$LR•IPV4•12『线路11』 -甘肃卫视,http://111.29.9.33:6610/000000001000/1000000002000017827/index.m3u8?channel-id=bestzb&Contentid=1000000002000017827&livemode=1&stbId=3$LR•IPV4•12『线路12』 -贵州卫视,http://183.207.248.71/gitv/live1/G_GUIZHOU/G_GUIZHOU$LR•IPV4•25『线路1』 -贵州卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225728/index.m3u8$LR•IPV4•25『线路2』 -贵州卫视,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•25『线路3』 -贵州卫视,http://120.198.95.220:9901/tsfile/live/1052_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•25『线路4』 -贵州卫视,http://222.214.208.34:59901/tsfile/live/0120_1.m3u8$LR•IPV4•25『线路5』 -贵州卫视,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=gzwshd$LR•IPV4•25『线路6』 -贵州卫视,http://222.90.21.30:9901/hls/34/index.m3u8$LR•IPV4•25『线路7』 -贵州卫视,https://shcm-stream-cf1.stream.264788.xyz/cms001/ch00000090990000001184/index.m3u8?streamid=091bd59ea031989839c23459bb8cc9d4&streamkey=02BjlnRKVk4w1OimLNBUheOcwPFu2B6oL1pyXGnUypEwAWXSi5pA2M8vAAQNdTDwVOBg3wflpOJH2qUejFLrTdJs5UqkOuOhX0oeeOuZCXNP6xGvpxjLkvkGHVF&token=1775846394-f40678590315c3a3-0-795d5d8e9ef7cc7d142de1b17bf1df44$LR•IPV4•25『线路8』 -贵州卫视,http://36.136.38.87:9901/tsfile/live/0120_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•25『线路9』 -贵州卫视,http://153.0.171.163:9901/tsfile/live/0120_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•25『线路10』 -贵州卫视,http://112.27.235.94:8000/hls/46/index.m3u8$LR•IPV4•25『线路11』 -贵州卫视,http://38.75.136.137:98/gslb/dsdqpub/gzwshd.m3u8?auth=testpub$LR•IPV4•25『线路12』 -贵州卫视,http://23.237.228.134/live6/hainan.m3u8$LR•IPV4•25『线路13』 -贵州卫视,http://gfr.x3322.net:9901/tsfile/live/1100_1.m3u8$LR•IPV4•25『线路14』 -贵州卫视,http://api.kkitv.itv888.cn:8080/hls/5dqtpf3arun/index.m3u8$LR•IPV4•25『线路15』 -贵州卫视,https://iptv.catvod.com/catvod.php?id=gzws$LR•IPV4•25『线路16』 -贵州卫视,https://httop.top/ysp-贵州卫视$LR•IPV4•25『线路17』 -贵州卫视,http://60.10.139.113:8801/hls/36/index.m3u8$LR•IPV4•25『线路18』 -贵州卫视,http://207.56.13.146:81/cdnlive/gzws.m3u8$LR•IPV4•25『线路19』 -贵州卫视,http://192.151.150.154/live/gzwshd.m3u8$LR•IPV4•25『线路20』 -贵州卫视,http://204.12.221.218:8181/3m1080p/gzws.m3u8$LR•IPV4•25『线路21』 -贵州卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000025843&livemode=1&stbId=yu&mode=1&$LR•IPV4•25『线路22』 -贵州卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000002000003169&livemode=1&stbId=yu&mode=1&$LR•IPV4•25『线路23』 -贵州卫视,http://111.29.9.44:6610/000000001000/5000000004000025843/index.m3u8?channel-id=bestzb&Contentid=5000000004000025843&livemode=1&stbId=3$LR•IPV4•25『线路24』 -贵州卫视,http://111.29.9.33:6610/000000001000/1000000002000003169/index.m3u8?channel-id=bestzb&Contentid=1000000002000003169&livemode=1&stbId=3$LR•IPV4•25『线路25』 -河北卫视,https://tv.pull.hebtv.com/jishi/nongminpindao.m3u8?t=1783327215&k=768f81548dfa25e1b24b8756b10b0e20$LR•IPV4•22『线路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•22『线路2』 -河北卫视,http://222.90.21.30:9901/hls/44/index.m3u8$LR•IPV4•22『线路3』 -河北卫视,http://36.136.38.87:9901/tsfile/live/0117_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•22『线路4』 -河北卫视,http://153.0.171.163:9901/tsfile/live/0117_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•22『线路5』 -河北卫视,http://event.pull.hebtv.com/jishi/weishi_tingyun.m3u8$LR•IPV4•22『线路6』 -河北卫视,http://120.76.248.139/live/bfgd/4200000108.m3u8$LR•IPV4•22『线路7』 -河北卫视,http://23.237.228.134/live8/hebei.m3u8$LR•IPV4•22『线路8』 -河北卫视,http://43.251.226.89:8080/play/42.m3u8$LR•IPV4•22『线路9』 -河北卫视,http://gfr.x3322.net:9901/tsfile/live/1091_1.m3u8$LR•IPV4•22『线路10』 -河北卫视,https://iptv.catvod.com/catvod.php?id=hbws$LR•IPV4•22『线路11』 -河北卫视,https://httop.top/ysp-河北卫视$LR•IPV4•22『线路12』 -河北卫视,http://iptv.huuc.edu.cn/hls/hebhd.m3u8$LR•IPV4•22『线路13』 -河北卫视,http://60.10.139.113:8801/hls/16/index.m3u8$LR•IPV4•22『线路14』 -河北卫视,http://207.56.13.146:81/cdnlive/hews.m3u8$LR•IPV4•22『线路15』 -河北卫视,http://192.151.150.154/live/hewshd.m3u8$LR•IPV4•22『线路16』 -河北卫视,http://173.208.212.130:8181/720p/hews.m3u8$LR•IPV4•22『线路17』 -河北卫视,http://204.12.221.218:8181/3m1080p/hews.m3u8$LR•IPV4•22『线路18』 -河北卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040016&livemode=1&stbId=yu&mode=1&$LR•IPV4•22『线路19』 -河北卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000017118&livemode=1&stbId=yu&mode=1&$LR•IPV4•22『线路20』 -河北卫视,http://111.29.9.37:6610/000000001000/1000000002000017118/index.m3u8?stbId=3&livemode=1&IASHttpSessionId=OTT$LR•IPV4•22『线路21』 -河北卫视,http://111.29.9.33:6610/000000001000/1000000002000017118/index.m3u8?channel-id=bestzb&Contentid=1000000002000017118&livemode=1&stbId=3$LR•IPV4•22『线路22』 +广西卫视,http://38.75.136.137:98/gslb/dsdqpub/gxwshd.m3u8?auth=testpub$LR•IPV4•23『线路8』 +广西卫视,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•23『线路9』 +广西卫视,http://23.237.228.134/live6/guangxi.m3u8$LR•IPV4•23『线路10』 +广西卫视,http://23.237.228.134/live6/guizhou.m3u8$LR•IPV4•23『线路11』 +广西卫视,http://api.kkitv.itv888.cn:8080/hls/yvz4ndj9dqb/index.m3u8$LR•IPV4•23『线路12』 +广西卫视,https://iptv.catvod.com/catvod.php?id=gxws$LR•IPV4•23『线路13』 +广西卫视,https://httop.top/ysp-广西卫视$LR•IPV4•23『线路14』 +广西卫视,http://60.10.139.113:8801/hls/52/index.m3u8$LR•IPV4•23『线路15』 +广西卫视,http://207.56.13.146:81/cdnlive/gxws.m3u8$LR•IPV4•23『线路16』 +广西卫视,http://192.151.150.154/live/gxwshd.m3u8$LR•IPV4•23『线路17』 +广西卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000031118&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路18』 +广西卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000006000040014&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路19』 +广西卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000002000019837&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路20』 +广西卫视,http://111.29.9.37:6610/000000001000/1000000002000019837/index.m3u8?stbId=3&livemode=1&IASHttpSessionId=OTT$LR•IPV4•23『线路21』 +广西卫视,http://111.29.9.33:6610/000000001000/1000000002000019837/index.m3u8?channel-id=bestzb&Contentid=1000000002000019837&livemode=1&stbId=3$LR•IPV4•23『线路22』 +广西卫视,http://118.81.195.79:9003/hls/27/index.m3u8$LR•IPV4•23『线路23』 +厦门卫视,http://183.11.239.36:808/hls/17/index.m3u8$LR•IPV4•7『线路1』 +厦门卫视,https://iptv.catvod.com/catvod.php?id=xmws$LR•IPV4•7『线路2』 +厦门卫视,http://192.151.150.154/live/xmws.m3u8$LR•IPV4•7『线路3』 +厦门卫视,http://204.12.221.218:8181/3m1080p/xmws.m3u8$LR•IPV4•7『线路4』 +厦门卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000005000266006&livemode=1&stbId=yu&mode=1&$LR•IPV4•7『线路5』 +厦门卫视,http://223.110.245.159/ott.js.chinamobile.com/PLTV/3/224/3221226996/index.m3u8$LR•IPV4•7『线路6』 +厦门卫视,http://112.25.48.68/live/program/live/xmws/1300000/mnf.m3u8$LR•IPV4•7『线路7』 +甘肃卫视,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•12『线路1』 +甘肃卫视,https://iptv.catvod.com/catvod.php?id=gsws$LR•IPV4•12『线路2』 +甘肃卫视,https://httop.top/ysp-甘肃卫视$LR•IPV4•12『线路3』 +甘肃卫视,http://207.56.13.146:81/cdnlive/gsws.m3u8$LR•IPV4•12『线路4』 +甘肃卫视,http://192.151.150.154/live/gswshd.m3u8$LR•IPV4•12『线路5』 +甘肃卫视,http://204.12.221.218:8181/3m1080p/gsws.m3u8$LR•IPV4•12『线路6』 +甘肃卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000031121&livemode=1&stbId=yu&mode=1&$LR•IPV4•12『线路7』 +甘肃卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000017827&livemode=1&stbId=yu&mode=1&$LR•IPV4•12『线路8』 +甘肃卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000006000040021&livemode=1&stbId=yu&mode=1&$LR•IPV4•12『线路9』 +甘肃卫视,http://111.29.9.37:6610/000000001000/1000000002000017827/index.m3u8?stbId=3&livemode=1&IASHttpSessionId=OTT$LR•IPV4•12『线路10』 +甘肃卫视,http://111.29.9.33:6610/000000001000/1000000002000017827/index.m3u8?channel-id=bestzb&Contentid=1000000002000017827&livemode=1&stbId=3$LR•IPV4•12『线路11』 +甘肃卫视,http://118.81.195.79:9003/hls/25/index.m3u8$LR•IPV4•12『线路12』 +贵州卫视,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•25『线路1』 +贵州卫视,http://112.27.235.94:8000/hls/46/index.m3u8$LR•IPV4•25『线路2』 +贵州卫视,http://120.198.95.220:9901/tsfile/live/1052_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•25『线路3』 +贵州卫视,http://222.214.208.34:59901/tsfile/live/0120_1.m3u8$LR•IPV4•25『线路4』 +贵州卫视,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=gzwshd$LR•IPV4•25『线路5』 +贵州卫视,http://222.90.21.30:9901/hls/34/index.m3u8$LR•IPV4•25『线路6』 +贵州卫视,https://shcm-stream-cf1.stream.264788.xyz/cms001/ch00000090990000001184/index.m3u8?streamid=091bd59ea031989839c23459bb8cc9d4&streamkey=02BjlnRKVk4w1OimLNBUheOcwPFu2B6oL1pyXGnUypEwAWXSi5pA2M8vAAQNdTDwVOBg3wflpOJH2qUejFLrTdJs5UqkOuOhX0oeeOuZCXNP6xGvpxjLkvkGHVF&token=1775846394-f40678590315c3a3-0-795d5d8e9ef7cc7d142de1b17bf1df44$LR•IPV4•25『线路7』 +贵州卫视,http://36.136.38.87:9901/tsfile/live/0120_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•25『线路8』 +贵州卫视,http://153.0.171.163:9901/tsfile/live/0120_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•25『线路9』 +贵州卫视,http://38.75.136.137:98/gslb/dsdqpub/gzwshd.m3u8?auth=testpub$LR•IPV4•25『线路10』 +贵州卫视,http://23.237.228.134/live6/hainan.m3u8$LR•IPV4•25『线路11』 +贵州卫视,http://gfr.x3322.net:9901/tsfile/live/1100_1.m3u8$LR•IPV4•25『线路12』 +贵州卫视,http://api.kkitv.itv888.cn:8080/hls/5dqtpf3arun/index.m3u8$LR•IPV4•25『线路13』 +贵州卫视,https://iptv.catvod.com/catvod.php?id=gzws$LR•IPV4•25『线路14』 +贵州卫视,https://httop.top/ysp-贵州卫视$LR•IPV4•25『线路15』 +贵州卫视,http://60.10.139.113:8801/hls/36/index.m3u8$LR•IPV4•25『线路16』 +贵州卫视,http://207.56.13.146:81/cdnlive/gzws.m3u8$LR•IPV4•25『线路17』 +贵州卫视,http://192.151.150.154/live/gzwshd.m3u8$LR•IPV4•25『线路18』 +贵州卫视,http://204.12.221.218:8181/3m1080p/gzws.m3u8$LR•IPV4•25『线路19』 +贵州卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000025843&livemode=1&stbId=yu&mode=1&$LR•IPV4•25『线路20』 +贵州卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000002000003169&livemode=1&stbId=yu&mode=1&$LR•IPV4•25『线路21』 +贵州卫视,http://111.29.9.44:6610/000000001000/5000000004000025843/index.m3u8?channel-id=bestzb&Contentid=5000000004000025843&livemode=1&stbId=3$LR•IPV4•25『线路22』 +贵州卫视,http://111.29.9.33:6610/000000001000/1000000002000003169/index.m3u8?channel-id=bestzb&Contentid=1000000002000003169&livemode=1&stbId=3$LR•IPV4•25『线路23』 +贵州卫视,http://183.207.248.71/gitv/live1/G_GUIZHOU/G_GUIZHOU$LR•IPV4•25『线路24』 +贵州卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225728/index.m3u8$LR•IPV4•25『线路25』 +河北卫视,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•21『线路1』 +河北卫视,http://112.27.235.94:8000/hls/39/index.m3u8$LR•IPV4•21『线路2』 +河北卫视,http://222.90.21.30:9901/hls/44/index.m3u8$LR•IPV4•21『线路3』 +河北卫视,http://36.136.38.87:9901/tsfile/live/0117_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•21『线路4』 +河北卫视,http://153.0.171.163:9901/tsfile/live/0117_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•21『线路5』 +河北卫视,http://event.pull.hebtv.com/jishi/weishi_tingyun.m3u8$LR•IPV4•21『线路6』 +河北卫视,http://23.237.228.134/live8/hebei.m3u8$LR•IPV4•21『线路7』 +河北卫视,http://43.251.226.89:8080/play/42.m3u8$LR•IPV4•21『线路8』 +河北卫视,http://gfr.x3322.net:9901/tsfile/live/1091_1.m3u8$LR•IPV4•21『线路9』 +河北卫视,https://iptv.catvod.com/catvod.php?id=hbws$LR•IPV4•21『线路10』 +河北卫视,https://httop.top/ysp-河北卫视$LR•IPV4•21『线路11』 +河北卫视,http://iptv.huuc.edu.cn/hls/hebhd.m3u8$LR•IPV4•21『线路12』 +河北卫视,http://60.10.139.113:8801/hls/16/index.m3u8$LR•IPV4•21『线路13』 +河北卫视,http://207.56.13.146:81/cdnlive/hews.m3u8$LR•IPV4•21『线路14』 +河北卫视,http://192.151.150.154/live/hewshd.m3u8$LR•IPV4•21『线路15』 +河北卫视,http://173.208.212.130:8181/720p/hews.m3u8$LR•IPV4•21『线路16』 +河北卫视,http://204.12.221.218:8181/3m1080p/hews.m3u8$LR•IPV4•21『线路17』 +河北卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040016&livemode=1&stbId=yu&mode=1&$LR•IPV4•21『线路18』 +河北卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000017118&livemode=1&stbId=yu&mode=1&$LR•IPV4•21『线路19』 +河北卫视,http://111.29.9.37:6610/000000001000/1000000002000017118/index.m3u8?stbId=3&livemode=1&IASHttpSessionId=OTT$LR•IPV4•21『线路20』 +河北卫视,http://111.29.9.33:6610/000000001000/1000000002000017118/index.m3u8?channel-id=bestzb&Contentid=1000000002000017118&livemode=1&stbId=3$LR•IPV4•21『线路21』 河南卫视,http://tvcdn.stream3.hndt.com/tv/65c4a6d5017e1000b2b6ea2500000000_transios/playlist.m3u8?wsSecret=3349ed85d315534f17d152a0e8c90f6a&wsTime=1783529303$LR•IPV4•23『线路1』 -河南卫视,http://118.81.195.79:9003/hls/30/index.m3u8$LR•IPV4•23『线路2』 +河南卫视,http://112.27.235.94:8000/hls/37/index.m3u8$LR•IPV4•23『线路2』 河南卫视,http://222.90.21.30:9901/hls/31/index.m3u8$LR•IPV4•23『线路3』 河南卫视,http://173.208.212.130:8181/720p/haws.m3u8$LR•IPV4•23『线路4』 河南卫视,http://123.163.114.168:85/tsfile/live/0139_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•23『线路5』 河南卫视,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=hawshd$LR•IPV4•23『线路6』 河南卫视,http://153.0.171.163:9901/tsfile/live/0139_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•23『线路7』 -河南卫视,http://112.27.235.94:8000/hls/37/index.m3u8$LR•IPV4•23『线路8』 -河南卫视,http://38.75.136.137:98/gslb/dsdqpub/hawshd.m3u8?auth=testpub$LR•IPV4•23『线路9』 -河南卫视,http://23.237.228.134/live6/henan.m3u8$LR•IPV4•23『线路10』 -河南卫视,http://43.251.226.89:8080/play/44.m3u8$LR•IPV4•23『线路11』 -河南卫视,https://iptv.catvod.com/catvod.php?id=hnws$LR•IPV4•23『线路12』 -河南卫视,https://httop.top/ysp-河南卫视$LR•IPV4•23『线路13』 -河南卫视,http://60.10.139.113:8801/hls/32/index.m3u8$LR•IPV4•23『线路14』 -河南卫视,http://1.94.31.214/php/hntv.php?id=hnws#http://lxajh.top/tv/hn.php?id=hnws$LR•IPV4•23『线路15』 -河南卫视,http://207.56.13.146:81/cdnlive/haws.m3u8$LR•IPV4•23『线路16』 -河南卫视,http://192.151.150.154/live/hawshd.m3u8$LR•IPV4•23『线路17』 -河南卫视,http://204.12.221.218:8181/3m1080p/haws.m3u8$LR•IPV4•23『线路18』 -河南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000005000017925&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路19』 -河南卫视,http://1.94.31.214/php/hntv.php?id=hnws$LR•IPV4•23『线路20』 -河南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000031119&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路21』 -河南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=7304224304099543804&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路22』 -河南卫视,http://111.29.9.33:6610/000000001000/5000000011000031119/index.m3u8?channel-id=bestzb&Contentid=5000000011000031119&livemode=1&stbId=3$LR•IPV4•23『线路23』 -黑龙江卫视,http://118.81.195.79:9003/hls/31/index.m3u8$LR•IPV4•23『线路1』 -黑龙江卫视,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•23『线路2』 +河南卫视,http://38.75.136.137:98/gslb/dsdqpub/hawshd.m3u8?auth=testpub$LR•IPV4•23『线路8』 +河南卫视,http://23.237.228.134/live6/henan.m3u8$LR•IPV4•23『线路9』 +河南卫视,http://43.251.226.89:8080/play/44.m3u8$LR•IPV4•23『线路10』 +河南卫视,https://iptv.catvod.com/catvod.php?id=hnws$LR•IPV4•23『线路11』 +河南卫视,https://httop.top/ysp-河南卫视$LR•IPV4•23『线路12』 +河南卫视,http://60.10.139.113:8801/hls/32/index.m3u8$LR•IPV4•23『线路13』 +河南卫视,http://1.94.31.214/php/hntv.php?id=hnws#http://lxajh.top/tv/hn.php?id=hnws$LR•IPV4•23『线路14』 +河南卫视,http://207.56.13.146:81/cdnlive/haws.m3u8$LR•IPV4•23『线路15』 +河南卫视,http://192.151.150.154/live/hawshd.m3u8$LR•IPV4•23『线路16』 +河南卫视,http://204.12.221.218:8181/3m1080p/haws.m3u8$LR•IPV4•23『线路17』 +河南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000005000017925&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路18』 +河南卫视,http://1.94.31.214/php/hntv.php?id=hnws$LR•IPV4•23『线路19』 +河南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000031119&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路20』 +河南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=7304224304099543804&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路21』 +河南卫视,http://111.29.9.33:6610/000000001000/5000000011000031119/index.m3u8?channel-id=bestzb&Contentid=5000000011000031119&livemode=1&stbId=3$LR•IPV4•23『线路22』 +河南卫视,http://118.81.195.79:9003/hls/30/index.m3u8$LR•IPV4•23『线路23』 +黑龙江卫视,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•23『线路1』 +黑龙江卫视,http://112.27.235.94:8000/hls/48/index.m3u8$LR•IPV4•23『线路2』 黑龙江卫视,http://38.75.136.137:98/gslb/dsdqpub/hljwshd.m3u8?auth=testpub$LR•IPV4•23『线路3』 黑龙江卫视,http://36.136.38.87:9901/tsfile/live/0143_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•23『线路4』 黑龙江卫视,http://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8$LR•IPV4•23『线路5』 黑龙江卫视,http://153.0.171.163:9901/tsfile/live/0143_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•23『线路6』 -黑龙江卫视,http://112.27.235.94:8000/hls/48/index.m3u8$LR•IPV4•23『线路7』 -黑龙江卫视,http://23.237.228.134/live6/heilongjiang.m3u8$LR•IPV4•23『线路8』 -黑龙江卫视,http://gfr.x3322.net:9901/tsfile/live/1094_1.m3u8$LR•IPV4•23『线路9』 -黑龙江卫视,http://api.kkitv.itv888.cn:8080/hls/2a24lcvser/index.m3u8$LR•IPV4•23『线路10』 -黑龙江卫视,https://iptv.catvod.com/catvod.php?id=hljws$LR•IPV4•23『线路11』 -黑龙江卫视,https://httop.top/ysp-黑龙江卫视$LR•IPV4•23『线路12』 -黑龙江卫视,http://iptv.huuc.edu.cn/hls/hljhd.m3u8$LR•IPV4•23『线路13』 -黑龙江卫视,http://60.10.139.113:8801/hls/27/index.m3u8$LR•IPV4•23『线路14』 -黑龙江卫视,http://207.56.13.146:81/cdnlive/hljws.m3u8$LR•IPV4•23『线路15』 -黑龙江卫视,http://192.151.150.154/live/hljwshd.m3u8$LR•IPV4•23『线路16』 -黑龙江卫视,http://204.12.221.218:8181/3m1080p/hljws.m3u8$LR•IPV4•23『线路17』 -黑龙江卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000025203&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路18』 -黑龙江卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000001925&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路19』 -黑龙江卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000031107&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路20』 -黑龙江卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000009082&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路21』 -黑龙江卫视,https://idclive.hljtv.com:4430/live/hljws_own.m3u8$LR•IPV4•23『线路22』 -黑龙江卫视,http://111.29.9.33:6610/000000001000/1000000001000001925/index.m3u8?channel-id=bestzb&Contentid=1000000001000001925&livemode=1&stbId=3$LR•IPV4•23『线路23』 -湖北卫视,http://118.81.195.79:9003/hls/32/index.m3u8$LR•IPV4•27『线路1』 -湖北卫视,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•27『线路2』 +黑龙江卫视,http://23.237.228.134/live6/heilongjiang.m3u8$LR•IPV4•23『线路7』 +黑龙江卫视,http://gfr.x3322.net:9901/tsfile/live/1094_1.m3u8$LR•IPV4•23『线路8』 +黑龙江卫视,http://api.kkitv.itv888.cn:8080/hls/2a24lcvser/index.m3u8$LR•IPV4•23『线路9』 +黑龙江卫视,https://iptv.catvod.com/catvod.php?id=hljws$LR•IPV4•23『线路10』 +黑龙江卫视,https://httop.top/ysp-黑龙江卫视$LR•IPV4•23『线路11』 +黑龙江卫视,http://iptv.huuc.edu.cn/hls/hljhd.m3u8$LR•IPV4•23『线路12』 +黑龙江卫视,http://60.10.139.113:8801/hls/27/index.m3u8$LR•IPV4•23『线路13』 +黑龙江卫视,http://207.56.13.146:81/cdnlive/hljws.m3u8$LR•IPV4•23『线路14』 +黑龙江卫视,http://192.151.150.154/live/hljwshd.m3u8$LR•IPV4•23『线路15』 +黑龙江卫视,http://204.12.221.218:8181/3m1080p/hljws.m3u8$LR•IPV4•23『线路16』 +黑龙江卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000025203&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路17』 +黑龙江卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000001925&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路18』 +黑龙江卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000031107&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路19』 +黑龙江卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000009082&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路20』 +黑龙江卫视,https://idclive.hljtv.com:4430/live/hljws_own.m3u8$LR•IPV4•23『线路21』 +黑龙江卫视,http://111.29.9.33:6610/000000001000/1000000001000001925/index.m3u8?channel-id=bestzb&Contentid=1000000001000001925&livemode=1&stbId=3$LR•IPV4•23『线路22』 +黑龙江卫视,http://118.81.195.79:9003/hls/31/index.m3u8$LR•IPV4•23『线路23』 +湖北卫视,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•27『线路1』 +湖北卫视,http://112.27.235.94:8000/hls/41/index.m3u8$LR•IPV4•27『线路2』 湖北卫视,http://120.198.95.220:9901/tsfile/live/1053_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•27『线路3』 湖北卫视,http://36.136.38.87:9901/tsfile/live/0132_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•27『线路4』 湖北卫视,http://153.0.171.163:85/tsfile/live/0132_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•27『线路5』 湖北卫视,http://153.0.171.163:9901/tsfile/live/0132_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•27『线路6』 -湖北卫视,http://112.27.235.94:8000/hls/41/index.m3u8$LR•IPV4•27『线路7』 -湖北卫视,http://38.75.136.137:98/gslb/dsdqpub/hbwshd.m3u8?auth=testpub$LR•IPV4•27『线路8』 -湖北卫视,http://23.237.228.134/live6/hubei.m3u8$LR•IPV4•27『线路9』 -湖北卫视,http://43.251.226.89:8080/play/46.m3u8$LR•IPV4•27『线路10』 -湖北卫视,http://gfr.x3322.net:9901/tsfile/live/1088_1.m3u8$LR•IPV4•27『线路11』 -湖北卫视,http://api.kkitv.itv888.cn:8080/hls/qwummpaoaq/index.m3u8$LR•IPV4•27『线路12』 -湖北卫视,https://iptv.catvod.com/catvod.php?id=hubws$LR•IPV4•27『线路13』 -湖北卫视,https://httop.top/ysp-湖北卫视$LR•IPV4•27『线路14』 -湖北卫视,http://iptv.huuc.edu.cn/hls/hbhd.m3u8$LR•IPV4•27『线路15』 -湖北卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=hubws$LR•IPV4•27『线路16』 -湖北卫视,http://www.745612.xyz:7788/rtp/235.254.198.72:1564$LR•IPV4•27『线路17』 -湖北卫视,http://60.10.139.113:8801/hls/29/index.m3u8$LR•IPV4•27『线路18』 -湖北卫视,http://207.56.13.146:81/cdnlive/hbws.m3u8$LR•IPV4•27『线路19』 -湖北卫视,http://192.151.150.154/live/hbwshd.m3u8$LR•IPV4•27『线路20』 -湖北卫视,http://204.12.221.218:8181/3m1080p/hbws.m3u8$LR•IPV4•27『线路21』 -湖北卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000014954&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路22』 -湖北卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000022140&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路23』 -湖北卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000010355&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路24』 -湖北卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000024621&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路25』 -湖北卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265023&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路26』 -湖北卫视,http://111.29.9.33:6610/000000001000/1000000001000010355/index.m3u8?channel-id=bestzb&Contentid=1000000001000010355&livemode=1&stbId=3$LR•IPV4•27『线路27』 +湖北卫视,http://38.75.136.137:98/gslb/dsdqpub/hbwshd.m3u8?auth=testpub$LR•IPV4•27『线路7』 +湖北卫视,http://23.237.228.134/live6/hubei.m3u8$LR•IPV4•27『线路8』 +湖北卫视,http://43.251.226.89:8080/play/46.m3u8$LR•IPV4•27『线路9』 +湖北卫视,http://gfr.x3322.net:9901/tsfile/live/1088_1.m3u8$LR•IPV4•27『线路10』 +湖北卫视,http://api.kkitv.itv888.cn:8080/hls/qwummpaoaq/index.m3u8$LR•IPV4•27『线路11』 +湖北卫视,https://iptv.catvod.com/catvod.php?id=hubws$LR•IPV4•27『线路12』 +湖北卫视,https://httop.top/ysp-湖北卫视$LR•IPV4•27『线路13』 +湖北卫视,http://iptv.huuc.edu.cn/hls/hbhd.m3u8$LR•IPV4•27『线路14』 +湖北卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=hubws$LR•IPV4•27『线路15』 +湖北卫视,http://www.745612.xyz:7788/rtp/235.254.198.72:1564$LR•IPV4•27『线路16』 +湖北卫视,http://60.10.139.113:8801/hls/29/index.m3u8$LR•IPV4•27『线路17』 +湖北卫视,http://207.56.13.146:81/cdnlive/hbws.m3u8$LR•IPV4•27『线路18』 +湖北卫视,http://192.151.150.154/live/hbwshd.m3u8$LR•IPV4•27『线路19』 +湖北卫视,http://204.12.221.218:8181/3m1080p/hbws.m3u8$LR•IPV4•27『线路20』 +湖北卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000014954&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路21』 +湖北卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000022140&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路22』 +湖北卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000010355&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路23』 +湖北卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000024621&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路24』 +湖北卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265023&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路25』 +湖北卫视,http://111.29.9.33:6610/000000001000/1000000001000010355/index.m3u8?channel-id=bestzb&Contentid=1000000001000010355&livemode=1&stbId=3$LR•IPV4•27『线路26』 +湖北卫视,http://118.81.195.79:9003/hls/32/index.m3u8$LR•IPV4•27『线路27』 江西卫视,https://jsp-tv-live.jxtvcn.com.cn/live-jsp/tv_fsgw.m3u8?t=1783295288&token=93978a22-19b9-4338-9ae6-ea0616a4fb0f&d=832d77a639d34ebdb3f0f61903951f1b$LR•IPV4•26『线路1』 -江西卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225705/index.m3u8$LR•IPV4•26『线路2』 -江西卫视,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•26『线路3』 +江西卫视,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•26『线路2』 +江西卫视,http://112.27.235.94:8000/hls/44/index.m3u8$LR•IPV4•26『线路3』 江西卫视,http://222.169.85.8:9901/tsfile/live/0138_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路4』 江西卫视,http://123.163.114.168:85/tsfile/live/0138_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路5』 江西卫视,http://120.198.95.220:9901/tsfile/live/1061_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•26『线路6』 -江西卫视,http://112.27.235.94:8000/hls/44/index.m3u8$LR•IPV4•26『线路7』 -江西卫视,http://38.75.136.137:98/gslb/dsdqpub/jxwshd.m3u8?auth=testpub$LR•IPV4•26『线路8』 -江西卫视,http://23.237.228.134/live8/jiangxi.m3u8$LR•IPV4•26『线路9』 -江西卫视,http://43.251.226.89:8080/play/43.m3u8$LR•IPV4•26『线路10』 -江西卫视,http://api.kkitv.itv888.cn:8080/hls/pv0np60bpin/index.m3u8$LR•IPV4•26『线路11』 -江西卫视,https://iptv.catvod.com/catvod.php?id=jxws$LR•IPV4•26『线路12』 -江西卫视,https://httop.top/ysp-江西卫视$LR•IPV4•26『线路13』 -江西卫视,http://iptv.huuc.edu.cn/hls/jxhd.m3u8$LR•IPV4•26『线路14』 -江西卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=jxws$LR•IPV4•26『线路15』 -江西卫视,http://153.0.171.163:9901/tsfile/live/0138_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路16』 -江西卫视,http://60.10.139.113:8801/hls/37/index.m3u8$LR•IPV4•26『线路17』 -江西卫视,http://207.56.13.146:81/cdnlive/jxws.m3u8$LR•IPV4•26『线路18』 -江西卫视,http://192.151.150.154/live/jxwshd.m3u8$LR•IPV4•26『线路19』 -江西卫视,http://204.12.221.218:8181/3m1080p/jxws.m3u8$LR•IPV4•26『线路20』 -江西卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000011210&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路21』 -江西卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000013731&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路22』 -江西卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000006000268001&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路23』 -江西卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000001000032154&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路24』 -江西卫视,http://111.29.9.39:6610/000000001000/5000000004000011210/index.m3u8?channel-id=bestzb&Contentid=5000000004000011210&livemode=1&stbId=3$LR•IPV4•26『线路25』 -江西卫视,http://111.29.9.33:6610/000000001000/1000000001000013731/index.m3u8?channel-id=bestzb&Contentid=1000000001000013731&livemode=1&stbId=3$LR•IPV4•26『线路26』 -吉林卫视,http://118.81.195.79:9003/hls/34/index.m3u8$LR•IPV4•22『线路1』 -吉林卫视,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•22『线路2』 +江西卫视,http://38.75.136.137:98/gslb/dsdqpub/jxwshd.m3u8?auth=testpub$LR•IPV4•26『线路7』 +江西卫视,http://23.237.228.134/live8/jiangxi.m3u8$LR•IPV4•26『线路8』 +江西卫视,http://43.251.226.89:8080/play/43.m3u8$LR•IPV4•26『线路9』 +江西卫视,http://api.kkitv.itv888.cn:8080/hls/pv0np60bpin/index.m3u8$LR•IPV4•26『线路10』 +江西卫视,https://iptv.catvod.com/catvod.php?id=jxws$LR•IPV4•26『线路11』 +江西卫视,https://httop.top/ysp-江西卫视$LR•IPV4•26『线路12』 +江西卫视,http://iptv.huuc.edu.cn/hls/jxhd.m3u8$LR•IPV4•26『线路13』 +江西卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=jxws$LR•IPV4•26『线路14』 +江西卫视,http://153.0.171.163:9901/tsfile/live/0138_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路15』 +江西卫视,http://60.10.139.113:8801/hls/37/index.m3u8$LR•IPV4•26『线路16』 +江西卫视,http://207.56.13.146:81/cdnlive/jxws.m3u8$LR•IPV4•26『线路17』 +江西卫视,http://192.151.150.154/live/jxwshd.m3u8$LR•IPV4•26『线路18』 +江西卫视,http://204.12.221.218:8181/3m1080p/jxws.m3u8$LR•IPV4•26『线路19』 +江西卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000011210&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路20』 +江西卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000013731&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路21』 +江西卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000006000268001&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路22』 +江西卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000001000032154&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路23』 +江西卫视,http://111.29.9.39:6610/000000001000/5000000004000011210/index.m3u8?channel-id=bestzb&Contentid=5000000004000011210&livemode=1&stbId=3$LR•IPV4•26『线路24』 +江西卫视,http://111.29.9.33:6610/000000001000/1000000001000013731/index.m3u8?channel-id=bestzb&Contentid=1000000001000013731&livemode=1&stbId=3$LR•IPV4•26『线路25』 +江西卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225705/index.m3u8$LR•IPV4•26『线路26』 +吉林卫视,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•22『线路1』 +吉林卫视,http://cssbyd.imwork.net:8082/hls/41/index.m3u8$LR•IPV4•22『线路2』 吉林卫视,http://222.90.21.30:9901/hls/35/index.m3u8$LR•IPV4•22『线路3』 吉林卫视,http://198.204.228.26/live/jlwshd.m3u8$LR•IPV4•22『线路4』 吉林卫视,http://112.123.243.37:50085/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•22『线路5』 吉林卫视,http://36.136.38.87:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•22『线路6』 -吉林卫视,http://cssbyd.imwork.net:8082/hls/41/index.m3u8$LR•IPV4•22『线路7』 -吉林卫视,http://38.75.136.137:98/gslb/dsdqpub/jlwshd.m3u8?auth=testpub$LR•IPV4•22『线路8』 -吉林卫视,http://23.237.228.134/live8/jilin.m3u8$LR•IPV4•22『线路9』 -吉林卫视,http://43.251.226.89:8080/play/47.m3u8$LR•IPV4•22『线路10』 -吉林卫视,http://api.kkitv.itv888.cn:8080/hls/b6dl8yuvu/index.m3u$LR•IPV4•22『线路11』 -吉林卫视,https://iptv.catvod.com/catvod.php?id=jlws$LR•IPV4•22『线路12』 -吉林卫视,https://httop.top/ysp-吉林卫视$LR•IPV4•22『线路13』 -吉林卫视,http://153.0.171.163:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•22『线路14』 -吉林卫视,http://60.10.139.113:8801/hls/38/index.m3u8$LR•IPV4•22『线路15』 -吉林卫视,http://207.56.13.146:81/cdnlive/jlws.m3u8$LR•IPV4•22『线路16』 -吉林卫视,http://192.151.150.154/live/jlwshd.m3u8$LR•IPV4•22『线路17』 -吉林卫视,http://204.12.221.218:8181/3m1080p/jlws.m3u8$LR•IPV4•22『线路18』 -吉林卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000031117&livemode=1&stbId=yu&mode=1&$LR•IPV4•22『线路19』 -吉林卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=6042486520432105075&livemode=1&stbId=yu&mode=1&$LR•IPV4•22『线路20』 -吉林卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000006000040013&livemode=1&stbId=yu&mode=1&$LR•IPV4•22『线路21』 -吉林卫视,http://111.29.9.33:6610/000000001000/5000000011000031117/index.m3u8?channel-id=bestzb&Contentid=5000000011000031117&livemode=1&stbId=3$LR•IPV4•22『线路22』 -内蒙古卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225667/index.m3u8$LR•IPV4•21『线路1』 -内蒙古卫视,http://117.169.120.140:8080/live/neimenggustv/.m3u8$LR•IPV4•21『线路2』 -内蒙古卫视,http://183.207.248.71/gitv/live1/G_NEIMENGGU/G_NEIMENGGU$LR•IPV4•21『线路3』 -内蒙古卫视,http://223.110.245.173/PLTV/4/224/3221225836/index.m3u8$LR•IPV4•21『线路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•21『线路5』 -内蒙古卫视,http://38.75.136.137:98/gslb/dsdqpub/nmgws.m3u8?auth=testpub$LR•IPV4•21『线路6』 -内蒙古卫视,http://192.151.150.154/live/nmgws.m3u8$LR•IPV4•21『线路7』 -内蒙古卫视,http://107.150.60.122/live/nmgws.m3u8$LR•IPV4•21『线路8』 -内蒙古卫视,http://207.56.13.146:81/cdnlive/nmgws.m3u8$LR•IPV4•21『线路9』 -内蒙古卫视,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=nmgws$LR•IPV4•21『线路10』 -内蒙古卫视,http://58.56.162.102:4466/newlive/live/hls/40/live.m3u8$LR•IPV4•21『线路11』 -内蒙古卫视,http://153.0.171.163:9901/tsfile/live/0109_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•21『线路12』 -内蒙古卫视,http://cssbyd.imwork.net:8082/hls/44/index.m3u8$LR•IPV4•21『线路13』 -内蒙古卫视,http://23.237.228.134/live8/neimenggu.m3u8$LR•IPV4•21『线路14』 -内蒙古卫视,https://iptv.catvod.com/catvod.php?id=nmws$LR•IPV4•21『线路15』 -内蒙古卫视,https://httop.top/ysp-内蒙古卫视$LR•IPV4•21『线路16』 -内蒙古卫视,http://60.10.139.113:8801/hls/55/index.m3u8$LR•IPV4•21『线路17』 -内蒙古卫视,http://jasonzhangnas.f3322.net:7088/udp/233.18.204.217:5140$LR•IPV4•21『线路18』 -内蒙古卫视,http://204.12.221.218:8181/3m1080p/nmgws.m3u8$LR•IPV4•21『线路19』 -内蒙古卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000014080&livemode=1&stbId=yu&mode=1&$LR•IPV4•21『线路20』 -内蒙古卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=7331079758781182663&livemode=1&stbId=yu&mode=1&$LR•IPV4•21『线路21』 -辽宁卫视,http://39.134.39.37/PLTV/88888888/224/3221226209/index.m3u8$LR•IPV4•25『线路1』 -辽宁卫视,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•25『线路2』 +吉林卫视,http://38.75.136.137:98/gslb/dsdqpub/jlwshd.m3u8?auth=testpub$LR•IPV4•22『线路7』 +吉林卫视,http://23.237.228.134/live8/jilin.m3u8$LR•IPV4•22『线路8』 +吉林卫视,http://43.251.226.89:8080/play/47.m3u8$LR•IPV4•22『线路9』 +吉林卫视,http://api.kkitv.itv888.cn:8080/hls/b6dl8yuvu/index.m3u$LR•IPV4•22『线路10』 +吉林卫视,https://iptv.catvod.com/catvod.php?id=jlws$LR•IPV4•22『线路11』 +吉林卫视,https://httop.top/ysp-吉林卫视$LR•IPV4•22『线路12』 +吉林卫视,http://153.0.171.163:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•22『线路13』 +吉林卫视,http://60.10.139.113:8801/hls/38/index.m3u8$LR•IPV4•22『线路14』 +吉林卫视,http://207.56.13.146:81/cdnlive/jlws.m3u8$LR•IPV4•22『线路15』 +吉林卫视,http://192.151.150.154/live/jlwshd.m3u8$LR•IPV4•22『线路16』 +吉林卫视,http://204.12.221.218:8181/3m1080p/jlws.m3u8$LR•IPV4•22『线路17』 +吉林卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000031117&livemode=1&stbId=yu&mode=1&$LR•IPV4•22『线路18』 +吉林卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=6042486520432105075&livemode=1&stbId=yu&mode=1&$LR•IPV4•22『线路19』 +吉林卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000006000040013&livemode=1&stbId=yu&mode=1&$LR•IPV4•22『线路20』 +吉林卫视,http://111.29.9.33:6610/000000001000/5000000011000031117/index.m3u8?channel-id=bestzb&Contentid=5000000011000031117&livemode=1&stbId=3$LR•IPV4•22『线路21』 +吉林卫视,http://118.81.195.79:9003/hls/34/index.m3u8$LR•IPV4•22『线路22』 +内蒙古卫视,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•21『线路1』 +内蒙古卫视,http://cssbyd.imwork.net:8082/hls/44/index.m3u8$LR•IPV4•21『线路2』 +内蒙古卫视,http://38.75.136.137:98/gslb/dsdqpub/nmgws.m3u8?auth=testpub$LR•IPV4•21『线路3』 +内蒙古卫视,http://192.151.150.154/live/nmgws.m3u8$LR•IPV4•21『线路4』 +内蒙古卫视,http://107.150.60.122/live/nmgws.m3u8$LR•IPV4•21『线路5』 +内蒙古卫视,http://207.56.13.146:81/cdnlive/nmgws.m3u8$LR•IPV4•21『线路6』 +内蒙古卫视,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=nmgws$LR•IPV4•21『线路7』 +内蒙古卫视,http://58.56.162.102:4466/newlive/live/hls/40/live.m3u8$LR•IPV4•21『线路8』 +内蒙古卫视,http://153.0.171.163:9901/tsfile/live/0109_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•21『线路9』 +内蒙古卫视,http://23.237.228.134/live8/neimenggu.m3u8$LR•IPV4•21『线路10』 +内蒙古卫视,https://iptv.catvod.com/catvod.php?id=nmws$LR•IPV4•21『线路11』 +内蒙古卫视,https://httop.top/ysp-内蒙古卫视$LR•IPV4•21『线路12』 +内蒙古卫视,http://60.10.139.113:8801/hls/55/index.m3u8$LR•IPV4•21『线路13』 +内蒙古卫视,http://jasonzhangnas.f3322.net:7088/udp/233.18.204.217:5140$LR•IPV4•21『线路14』 +内蒙古卫视,http://204.12.221.218:8181/3m1080p/nmgws.m3u8$LR•IPV4•21『线路15』 +内蒙古卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000014080&livemode=1&stbId=yu&mode=1&$LR•IPV4•21『线路16』 +内蒙古卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=7331079758781182663&livemode=1&stbId=yu&mode=1&$LR•IPV4•21『线路17』 +内蒙古卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225667/index.m3u8$LR•IPV4•21『线路18』 +内蒙古卫视,http://117.169.120.140:8080/live/neimenggustv/.m3u8$LR•IPV4•21『线路19』 +内蒙古卫视,http://183.207.248.71/gitv/live1/G_NEIMENGGU/G_NEIMENGGU$LR•IPV4•21『线路20』 +内蒙古卫视,http://223.110.245.173/PLTV/4/224/3221225836/index.m3u8$LR•IPV4•21『线路21』 +辽宁卫视,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•25『线路1』 +辽宁卫视,http://112.27.235.94:8000/hls/47/index.m3u8$LR•IPV4•25『线路2』 辽宁卫视,http://120.198.95.220:9901/tsfile/live/1051_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•25『线路3』 辽宁卫视,http://123.163.114.168:9901/tsfile/live/0121_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•25『线路4』 辽宁卫视,http://36.136.38.87:9901/tsfile/live/0121_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•25『线路5』 辽宁卫视,http://153.0.171.163:9901/tsfile/live/0121_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•25『线路6』 -辽宁卫视,http://112.27.235.94:8000/hls/47/index.m3u8$LR•IPV4•25『线路7』 -辽宁卫视,http://38.75.136.137:98/gslb/dsdqpub/lnwshd.m3u8?auth=testpub$LR•IPV4•25『线路8』 -辽宁卫视,https://hlsbkmgsplive.miguvideo.com/migu/kailu/lnwshd265/54/20200407/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•25『线路9』 -辽宁卫视,http://23.237.228.134/live8/liaoning.m3u8$LR•IPV4•25『线路10』 -辽宁卫视,http://43.251.226.89:8080/play/41.m3u8$LR•IPV4•25『线路11』 -辽宁卫视,http://gfr.x3322.net:9901/tsfile/live/1097_1.m3u8$LR•IPV4•25『线路12』 -辽宁卫视,http://api.kkitv.itv888.cn:8080/hls/iibq0absdjr/index.m3u8$LR•IPV4•25『线路13』 -辽宁卫视,https://iptv.catvod.com/catvod.php?id=lnws$LR•IPV4•25『线路14』 -辽宁卫视,https://httop.top/ysp-辽宁卫视$LR•IPV4•25『线路15』 -辽宁卫视,http://iptv.huuc.edu.cn/hls/lnhd.m3u8$LR•IPV4•25『线路16』 -辽宁卫视,http://60.10.139.113:8801/hls/28/index.m3u8$LR•IPV4•25『线路17』 -辽宁卫视,http://207.56.13.146:81/cdnlive/lnws.m3u8$LR•IPV4•25『线路18』 -辽宁卫视,http://192.151.150.154/live/lnwshd.m3u8$LR•IPV4•25『线路19』 -辽宁卫视,http://204.12.221.218:8181/3m1080p/lnws.m3u8$LR•IPV4•25『线路20』 -辽宁卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000011671&livemode=1&stbId=yu&mode=1&$LR•IPV4•25『线路21』 -辽宁卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000001945&livemode=1&stbId=yu&mode=1&$LR•IPV4•25『线路22』 -辽宁卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000024033&livemode=1&stbId=yu&mode=1&$LR•IPV4•25『线路23』 -辽宁卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000001000008940&livemode=1&stbId=yu&mode=1&$LR•IPV4•25『线路24』 -辽宁卫视,http://111.29.9.33:6610/000000001000/1000000001000001945/index.m3u8?channel-id=bestzb&Contentid=1000000001000001945&livemode=1&stbId=3$LR•IPV4•25『线路25』 -宁夏卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225726/index.m3u8$LR•IPV4•16『线路1』 -宁夏卫视,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•16『线路2』 +辽宁卫视,http://38.75.136.137:98/gslb/dsdqpub/lnwshd.m3u8?auth=testpub$LR•IPV4•25『线路7』 +辽宁卫视,https://hlsbkmgsplive.miguvideo.com/migu/kailu/lnwshd265/54/20200407/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•25『线路8』 +辽宁卫视,http://23.237.228.134/live8/liaoning.m3u8$LR•IPV4•25『线路9』 +辽宁卫视,http://43.251.226.89:8080/play/41.m3u8$LR•IPV4•25『线路10』 +辽宁卫视,http://gfr.x3322.net:9901/tsfile/live/1097_1.m3u8$LR•IPV4•25『线路11』 +辽宁卫视,http://api.kkitv.itv888.cn:8080/hls/iibq0absdjr/index.m3u8$LR•IPV4•25『线路12』 +辽宁卫视,https://iptv.catvod.com/catvod.php?id=lnws$LR•IPV4•25『线路13』 +辽宁卫视,https://httop.top/ysp-辽宁卫视$LR•IPV4•25『线路14』 +辽宁卫视,http://iptv.huuc.edu.cn/hls/lnhd.m3u8$LR•IPV4•25『线路15』 +辽宁卫视,http://60.10.139.113:8801/hls/28/index.m3u8$LR•IPV4•25『线路16』 +辽宁卫视,http://207.56.13.146:81/cdnlive/lnws.m3u8$LR•IPV4•25『线路17』 +辽宁卫视,http://192.151.150.154/live/lnwshd.m3u8$LR•IPV4•25『线路18』 +辽宁卫视,http://204.12.221.218:8181/3m1080p/lnws.m3u8$LR•IPV4•25『线路19』 +辽宁卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000011671&livemode=1&stbId=yu&mode=1&$LR•IPV4•25『线路20』 +辽宁卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000001945&livemode=1&stbId=yu&mode=1&$LR•IPV4•25『线路21』 +辽宁卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000024033&livemode=1&stbId=yu&mode=1&$LR•IPV4•25『线路22』 +辽宁卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000001000008940&livemode=1&stbId=yu&mode=1&$LR•IPV4•25『线路23』 +辽宁卫视,http://111.29.9.33:6610/000000001000/1000000001000001945/index.m3u8?channel-id=bestzb&Contentid=1000000001000001945&livemode=1&stbId=3$LR•IPV4•25『线路24』 +辽宁卫视,http://39.134.39.37/PLTV/88888888/224/3221226209/index.m3u8$LR•IPV4•25『线路25』 +宁夏卫视,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•16『线路1』 +宁夏卫视,http://120.76.248.139/live/bfgd/4200000118.m3u8$LR•IPV4•16『线路2』 宁夏卫视,http://192.151.150.154/live/nxws.m3u8$LR•IPV4•16『线路3』 宁夏卫视,http://107.150.60.122/live/nxws.m3u8$LR•IPV4•16『线路4』 宁夏卫视,http://153.0.171.163:9901/tsfile/live/0112_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路5』 -宁夏卫视,http://120.76.248.139/live/bfgd/4200000118.m3u8$LR•IPV4•16『线路6』 -宁夏卫视,http://43.251.226.89:8080/play/54.m3u8$LR•IPV4•16『线路7』 -宁夏卫视,https://iptv.catvod.com/catvod.php?id=nxws$LR•IPV4•16『线路8』 -宁夏卫视,https://httop.top/ysp-宁夏卫视$LR•IPV4•16『线路9』 -宁夏卫视,http://60.10.139.113:8801/hls/57/index.m3u8$LR•IPV4•16『线路10』 -宁夏卫视,http://jasonzhangnas.f3322.net:7088/udp/233.18.204.230:5140$LR•IPV4•16『线路11』 -宁夏卫视,http://207.56.13.146:81/cdnlive/nxws.m3u8$LR•IPV4•16『线路12』 -宁夏卫视,http://204.12.221.218:8181/3m1080p/nxws.m3u8$LR•IPV4•16『线路13』 -宁夏卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000031451&livemode=1&stbId=yu&mode=1&$LR•IPV4•16『线路14』 -宁夏卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040022&livemode=1&stbId=yu&mode=1&$LR•IPV4•16『线路15』 -宁夏卫视,http://111.29.9.33:6610/000000001000/1000000002000031451/index.m3u8?channel-id=bestzb&Contentid=1000000002000031451&livemode=1&stbId=3$LR•IPV4•16『线路16』 -青海卫视,http://live.geermurmt.com/qhws/sd/live.m3u8$LR•IPV4•19『线路1』 -青海卫视,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•19『线路2』 +宁夏卫视,http://43.251.226.89:8080/play/54.m3u8$LR•IPV4•16『线路6』 +宁夏卫视,https://iptv.catvod.com/catvod.php?id=nxws$LR•IPV4•16『线路7』 +宁夏卫视,https://httop.top/ysp-宁夏卫视$LR•IPV4•16『线路8』 +宁夏卫视,http://60.10.139.113:8801/hls/57/index.m3u8$LR•IPV4•16『线路9』 +宁夏卫视,http://jasonzhangnas.f3322.net:7088/udp/233.18.204.230:5140$LR•IPV4•16『线路10』 +宁夏卫视,http://207.56.13.146:81/cdnlive/nxws.m3u8$LR•IPV4•16『线路11』 +宁夏卫视,http://204.12.221.218:8181/3m1080p/nxws.m3u8$LR•IPV4•16『线路12』 +宁夏卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000031451&livemode=1&stbId=yu&mode=1&$LR•IPV4•16『线路13』 +宁夏卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040022&livemode=1&stbId=yu&mode=1&$LR•IPV4•16『线路14』 +宁夏卫视,http://111.29.9.33:6610/000000001000/1000000002000031451/index.m3u8?channel-id=bestzb&Contentid=1000000002000031451&livemode=1&stbId=3$LR•IPV4•16『线路15』 +宁夏卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225726/index.m3u8$LR•IPV4•16『线路16』 +青海卫视,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•19『线路1』 +青海卫视,http://123.130.84.106:8154/tsfile/live/0140_1.m3u8$LR•IPV4•19『线路2』 青海卫视,http://222.90.21.30:9901/hls/42/index.m3u8$LR•IPV4•19『线路3』 青海卫视,http://123.163.114.168:85/tsfile/live/0140_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•19『线路4』 青海卫视,http://192.151.150.154/live/qhws.m3u8$LR•IPV4•19『线路5』 青海卫视,http://107.150.60.122/live/qhws.m3u8$LR•IPV4•19『线路6』 青海卫视,http://198.204.228.26/live/qhws.m3u8$LR•IPV4•19『线路7』 -青海卫视,http://123.130.84.106:8154/tsfile/live/0140_1.m3u8$LR•IPV4•19『线路8』 -青海卫视,http://23.237.228.134/live8/qinghai.m3u8$LR•IPV4•19『线路9』 -青海卫视,http://43.251.226.89:8080/play/48.m3u8$LR•IPV4•19『线路10』 -青海卫视,https://iptv.catvod.com/catvod.php?id=qhws$LR•IPV4•19『线路11』 -青海卫视,https://httop.top/ysp-青海卫视$LR•IPV4•19『线路12』 -青海卫视,http://153.0.171.163:9901/tsfile/live/0140_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•19『线路13』 -青海卫视,http://60.10.139.113:8801/hls/56/index.m3u8$LR•IPV4•19『线路14』 -青海卫视,http://207.56.13.146:81/cdnlive/qhws.m3u8$LR•IPV4•19『线路15』 -青海卫视,http://204.12.221.218:8181/3m1080p/qhws.m3u8$LR•IPV4•19『线路16』 -青海卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040015&livemode=1&stbId=yu&mode=1&$LR•IPV4•19『线路17』 -青海卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000013359&livemode=1&stbId=yu&mode=1&$LR•IPV4•19『线路18』 -青海卫视,http://111.29.9.33:6610/000000001000/1000000002000013359/index.m3u8?channel-id=bestzb&Contentid=1000000002000013359&livemode=1&stbId=3$LR•IPV4•19『线路19』 -山东卫视,http://125.210.152.18:9090/live/SDWSHD_H265.m3u8$LR•IPV4•31『线路1』 -山东卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225697/index.m3u8$LR•IPV4•31『线路2』 -山东卫视,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•31『线路3』 -山东卫视,http://123.163.114.168:9901/tsfile/live/0131_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•31『线路4』 -山东卫视,http://198.204.228.26/live/sdwshd.m3u8$LR•IPV4•31『线路5』 -山东卫视,http://207.56.13.146:81/cdnlive/sdws.m3u8$LR•IPV4•31『线路6』 -山东卫视,http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8$LR•IPV4•31『线路7』 -山东卫视,http://120.198.95.220:9901/tsfile/live/1063_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•31『线路8』 -山东卫视,http://36.136.38.87:9901/tsfile/live/0131_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•31『线路9』 -山东卫视,http://153.0.171.163:9901/tsfile/live/0131_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•31『线路10』 -山东卫视,http://112.27.235.94:8000/hls/34/index.m3u8$LR•IPV4•31『线路11』 -山东卫视,http://38.75.136.137:98/gslb/dsdqpub/sdwshd.m3u8?auth=testpub$LR•IPV4•31『线路12』 -山东卫视,https://hlsbkmgsplive.miguvideo.com/wd_r4/yg/shandongwshd/3000/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•31『线路13』 -山东卫视,https://hlsbkmgsplive.miguvideo.com/wd-shandonghd-1200/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•31『线路14』 -山东卫视,http://23.237.228.134/live8/shandong.m3u8$LR•IPV4•31『线路15』 -山东卫视,http://gfr.x3322.net:9901/tsfile/live/1098_1.m3u8$LR•IPV4•31『线路16』 -山东卫视,http://api.kkitv.itv888.cn:8080/hls/6gcdai13om5/index.m3u8$LR•IPV4•31『线路17』 -山东卫视,https://iptv.catvod.com/catvod.php?id=sdws$LR•IPV4•31『线路18』 -山东卫视,https://httop.top/ysp-山东卫视$LR•IPV4•31『线路19』 -山东卫视,http://iptv.huuc.edu.cn/hls/sdhd.m3u8$LR•IPV4•31『线路20』 -山东卫视,http://60.10.139.113:8801/hls/25/index.m3u8$LR•IPV4•31『线路21』 -山东卫视,http://192.151.150.154/live/sdwshd.m3u8$LR•IPV4•31『线路22』 -山东卫视,http://173.208.212.130:8181/720p/sdws.m3u8$LR•IPV4•31『线路23』 -山东卫视,http://204.12.221.218:8181/3m1080p/sdws.m3u8$LR•IPV4•31『线路24』 -山东卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000020424&livemode=1&stbId=yu&mode=1&$LR•IPV4•31『线路25』 -山东卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000012807&livemode=1&stbId=yu&mode=1&$LR•IPV4•31『线路26』 -山东卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000016568&livemode=1&stbId=yu&mode=1&$LR•IPV4•31『线路27』 -山东卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000027763&livemode=1&stbId=yu&mode=1&$LR•IPV4•31『线路28』 -山东卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=7347081113971056899&livemode=1&stbId=yu&mode=1&$LR•IPV4•31『线路29』 -山东卫视,http://111.29.9.37:6610/000000001000/1000000001000012807/index.m3u8?channel-id=ystenlive&Contentid=1000000001000012807&livemode=1&stbId=3$LR•IPV4•31『线路30』 -山东卫视,http://111.29.9.33:6610/000000001000/1000000001000012807/index.m3u8?channel-id=bestzb&Contentid=1000000001000012807&livemode=1&stbId=3$LR•IPV4•31『线路31』 -天津卫视,https://piccpndks.v.kcdnvip.com/audio/tianjin_2/index.m3u8$LR•IPV4•27『线路1』 -天津卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225698/index.m3u8$LR•IPV4•27『线路2』 -天津卫视,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•27『线路3』 -天津卫视,http://204.12.221.218:8181/3m1080p/tjws.m3u8$LR•IPV4•27『线路4』 -天津卫视,http://173.208.212.130:8181/720p/tjws.m3u8$LR•IPV4•27『线路5』 -天津卫视,http://120.198.95.220:9901/tsfile/live/1067_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•27『线路6』 -天津卫视,http://36.136.38.87:9901/tsfile/live/0135_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•27『线路7』 -天津卫视,http://112.27.235.94:8000/hls/42/index.m3u8$LR•IPV4•27『线路8』 -天津卫视,http://38.75.136.137:98/gslb/dsdqpub/tjwshd.m3u8?auth=testpub$LR•IPV4•27『线路9』 -天津卫视,http://23.237.228.134/live8/tianjing.m3u8$LR•IPV4•27『线路10』 -天津卫视,http://gfr.x3322.net:9901/tsfile/live/1090_1.m3u8$LR•IPV4•27『线路11』 -天津卫视,http://api.kkitv.itv888.cn:8080/hls/z2lkdkrb4w/index.m3u8$LR•IPV4•27『线路12』 -天津卫视,https://iptv.catvod.com/catvod.php?id=tjws$LR•IPV4•27『线路13』 -天津卫视,https://httop.top/ysp-天津卫视$LR•IPV4•27『线路14』 -天津卫视,http://iptv.huuc.edu.cn/hls/tjhd.m3u8$LR•IPV4•27『线路15』 -天津卫视,http://153.0.171.163:9901/tsfile/live/0135_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•27『线路16』 -天津卫视,http://60.10.139.113:8801/hls/23/index.m3u8$LR•IPV4•27『线路17』 -天津卫视,http://207.56.13.146:81/cdnlive/tjws.m3u8$LR•IPV4•27『线路18』 -天津卫视,http://192.151.150.154/live/tjwshd.m3u8$LR•IPV4•27『线路19』 -天津卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000001000030788&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路20』 -天津卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000006827&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路21』 -天津卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000000831&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路22』 -天津卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000003475&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路23』 -天津卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265026&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路24』 -天津卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=6707942579111517572&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路25』 -天津卫视,http://111.29.9.38:6610/000000001000/5000000004000006827/index.m3u8?channel-id=bestzb&Contentid=5000000004000006827&livemode=1&stbId=3$LR•IPV4•27『线路26』 -天津卫视,http://111.29.9.33:6610/000000001000/1000000001000000831/index.m3u8?channel-id=bestzb&Contentid=1000000001000000831&livemode=1&stbId=3$LR•IPV4•27『线路27』 +青海卫视,http://23.237.228.134/live8/qinghai.m3u8$LR•IPV4•19『线路8』 +青海卫视,http://43.251.226.89:8080/play/48.m3u8$LR•IPV4•19『线路9』 +青海卫视,https://iptv.catvod.com/catvod.php?id=qhws$LR•IPV4•19『线路10』 +青海卫视,https://httop.top/ysp-青海卫视$LR•IPV4•19『线路11』 +青海卫视,http://153.0.171.163:9901/tsfile/live/0140_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•19『线路12』 +青海卫视,http://60.10.139.113:8801/hls/56/index.m3u8$LR•IPV4•19『线路13』 +青海卫视,http://207.56.13.146:81/cdnlive/qhws.m3u8$LR•IPV4•19『线路14』 +青海卫视,http://204.12.221.218:8181/3m1080p/qhws.m3u8$LR•IPV4•19『线路15』 +青海卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040015&livemode=1&stbId=yu&mode=1&$LR•IPV4•19『线路16』 +青海卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000013359&livemode=1&stbId=yu&mode=1&$LR•IPV4•19『线路17』 +青海卫视,http://111.29.9.33:6610/000000001000/1000000002000013359/index.m3u8?channel-id=bestzb&Contentid=1000000002000013359&livemode=1&stbId=3$LR•IPV4•19『线路18』 +青海卫视,http://live.geermurmt.com/qhws/sd/live.m3u8$LR•IPV4•19『线路19』 +山东卫视,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•31『线路1』 +山东卫视,http://112.27.235.94:8000/hls/34/index.m3u8$LR•IPV4•31『线路2』 +山东卫视,http://123.163.114.168:9901/tsfile/live/0131_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•31『线路3』 +山东卫视,http://198.204.228.26/live/sdwshd.m3u8$LR•IPV4•31『线路4』 +山东卫视,http://207.56.13.146:81/cdnlive/sdws.m3u8$LR•IPV4•31『线路5』 +山东卫视,http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8$LR•IPV4•31『线路6』 +山东卫视,http://120.198.95.220:9901/tsfile/live/1063_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•31『线路7』 +山东卫视,http://36.136.38.87:9901/tsfile/live/0131_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•31『线路8』 +山东卫视,http://153.0.171.163:9901/tsfile/live/0131_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•31『线路9』 +山东卫视,http://38.75.136.137:98/gslb/dsdqpub/sdwshd.m3u8?auth=testpub$LR•IPV4•31『线路10』 +山东卫视,https://hlsbkmgsplive.miguvideo.com/wd_r4/yg/shandongwshd/3000/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•31『线路11』 +山东卫视,https://hlsbkmgsplive.miguvideo.com/wd-shandonghd-1200/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•31『线路12』 +山东卫视,http://23.237.228.134/live8/shandong.m3u8$LR•IPV4•31『线路13』 +山东卫视,http://gfr.x3322.net:9901/tsfile/live/1098_1.m3u8$LR•IPV4•31『线路14』 +山东卫视,http://api.kkitv.itv888.cn:8080/hls/6gcdai13om5/index.m3u8$LR•IPV4•31『线路15』 +山东卫视,https://iptv.catvod.com/catvod.php?id=sdws$LR•IPV4•31『线路16』 +山东卫视,https://httop.top/ysp-山东卫视$LR•IPV4•31『线路17』 +山东卫视,http://iptv.huuc.edu.cn/hls/sdhd.m3u8$LR•IPV4•31『线路18』 +山东卫视,http://60.10.139.113:8801/hls/25/index.m3u8$LR•IPV4•31『线路19』 +山东卫视,http://192.151.150.154/live/sdwshd.m3u8$LR•IPV4•31『线路20』 +山东卫视,http://173.208.212.130:8181/720p/sdws.m3u8$LR•IPV4•31『线路21』 +山东卫视,http://204.12.221.218:8181/3m1080p/sdws.m3u8$LR•IPV4•31『线路22』 +山东卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000020424&livemode=1&stbId=yu&mode=1&$LR•IPV4•31『线路23』 +山东卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000012807&livemode=1&stbId=yu&mode=1&$LR•IPV4•31『线路24』 +山东卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000016568&livemode=1&stbId=yu&mode=1&$LR•IPV4•31『线路25』 +山东卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000027763&livemode=1&stbId=yu&mode=1&$LR•IPV4•31『线路26』 +山东卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=7347081113971056899&livemode=1&stbId=yu&mode=1&$LR•IPV4•31『线路27』 +山东卫视,http://111.29.9.37:6610/000000001000/1000000001000012807/index.m3u8?channel-id=ystenlive&Contentid=1000000001000012807&livemode=1&stbId=3$LR•IPV4•31『线路28』 +山东卫视,http://111.29.9.33:6610/000000001000/1000000001000012807/index.m3u8?channel-id=bestzb&Contentid=1000000001000012807&livemode=1&stbId=3$LR•IPV4•31『线路29』 +山东卫视,http://125.210.152.18:9090/live/SDWSHD_H265.m3u8$LR•IPV4•31『线路30』 +山东卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225697/index.m3u8$LR•IPV4•31『线路31』 +天津卫视,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•26『线路1』 +天津卫视,http://112.27.235.94:8000/hls/42/index.m3u8$LR•IPV4•26『线路2』 +天津卫视,http://204.12.221.218:8181/3m1080p/tjws.m3u8$LR•IPV4•26『线路3』 +天津卫视,http://173.208.212.130:8181/720p/tjws.m3u8$LR•IPV4•26『线路4』 +天津卫视,http://120.198.95.220:9901/tsfile/live/1067_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•26『线路5』 +天津卫视,http://36.136.38.87:9901/tsfile/live/0135_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路6』 +天津卫视,http://38.75.136.137:98/gslb/dsdqpub/tjwshd.m3u8?auth=testpub$LR•IPV4•26『线路7』 +天津卫视,http://23.237.228.134/live8/tianjing.m3u8$LR•IPV4•26『线路8』 +天津卫视,http://gfr.x3322.net:9901/tsfile/live/1090_1.m3u8$LR•IPV4•26『线路9』 +天津卫视,http://api.kkitv.itv888.cn:8080/hls/z2lkdkrb4w/index.m3u8$LR•IPV4•26『线路10』 +天津卫视,https://iptv.catvod.com/catvod.php?id=tjws$LR•IPV4•26『线路11』 +天津卫视,https://httop.top/ysp-天津卫视$LR•IPV4•26『线路12』 +天津卫视,http://iptv.huuc.edu.cn/hls/tjhd.m3u8$LR•IPV4•26『线路13』 +天津卫视,http://153.0.171.163:9901/tsfile/live/0135_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路14』 +天津卫视,http://60.10.139.113:8801/hls/23/index.m3u8$LR•IPV4•26『线路15』 +天津卫视,http://207.56.13.146:81/cdnlive/tjws.m3u8$LR•IPV4•26『线路16』 +天津卫视,http://192.151.150.154/live/tjwshd.m3u8$LR•IPV4•26『线路17』 +天津卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000001000030788&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路18』 +天津卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000006827&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路19』 +天津卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000000831&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路20』 +天津卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000003475&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路21』 +天津卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265026&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路22』 +天津卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=6707942579111517572&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路23』 +天津卫视,http://111.29.9.38:6610/000000001000/5000000004000006827/index.m3u8?channel-id=bestzb&Contentid=5000000004000006827&livemode=1&stbId=3$LR•IPV4•26『线路24』 +天津卫视,http://111.29.9.33:6610/000000001000/1000000001000000831/index.m3u8?channel-id=bestzb&Contentid=1000000001000000831&livemode=1&stbId=3$LR•IPV4•26『线路25』 +天津卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225698/index.m3u8$LR•IPV4•26『线路26』 海南卫视,https://livelyws.chinamcache.com/lyws/zb03.m3u8$LR•IPV4•15『线路1』 -海南卫视,http://118.81.195.79:9003/hls/28/index.m3u8$LR•IPV4•15『线路2』 -海南卫视,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•15『线路3』 +海南卫视,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•15『线路2』 +海南卫视,http://120.76.248.139/live/bfgd/4200000473.m3u8$LR•IPV4•15『线路3』 海南卫视,http://222.90.21.30:9901/hls/37/index.m3u8$LR•IPV4•15『线路4』 -海南卫视,http://120.76.248.139/live/bfgd/4200000473.m3u8$LR•IPV4•15『线路5』 -海南卫视,http://43.251.226.89:8080/play/50.m3u8$LR•IPV4•15『线路6』 -海南卫视,http://api.kkitv.itv888.cn:8080/hls/c1cajhsgba8/index.m3u8$LR•IPV4•15『线路7』 -海南卫视,https://iptv.catvod.com/catvod.php?id=hinws$LR•IPV4•15『线路8』 -海南卫视,https://httop.top/ysp-海南卫视$LR•IPV4•15『线路9』 -海南卫视,http://nn.7x9d.cn/地方台8563/海南.php?id=hnws$LR•IPV4•15『线路10』 -海南卫视,http://207.56.13.146:81/cdnlive/lyws.m3u8$LR•IPV4•15『线路11』 -海南卫视,http://204.12.221.218:8181/3m1080p/lyws.m3u8$LR•IPV4•15『线路12』 -海南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000006211&livemode=1&stbId=yu&mode=1&$LR•IPV4•15『线路13』 -海南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=7899627377857656087&livemode=1&stbId=yu&mode=1&$LR•IPV4•15『线路14』 -海南卫视,http://111.29.9.33:6610/000000001000/5000000004000006211/index.m3u8?channel-id=bestzb&Contentid=5000000004000006211&livemode=1&stbId=3$LR•IPV4•15『线路15』 -新疆卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225725/index.m3u8$LR•IPV4•21『线路1』 -新疆卫视,http://183.207.248.71/cntv/live1/xinjiangstv/xinjiangstv$LR•IPV4•21『线路2』 -新疆卫视,http://183.207.248.71/gitv/live1/G_XINJIANG/G_XINJIANG$LR•IPV4•21『线路3』 -新疆卫视,http://183.207.249.15/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•21『线路4』 -新疆卫视,http://223.110.243.136/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•21『线路5』 -新疆卫视,http://112.25.48.68/live/program/live/xjws/1300000/mnf.m3u8$LR•IPV4•21『线路6』 -新疆卫视,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•21『线路7』 -新疆卫视,http://123.163.114.168:9901/tsfile/live/0110_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•21『线路8』 -新疆卫视,http://218.84.12.186:8001/hls/main/playlist.m3u8?zxinjd;http://218.84.12.186:8001/hls/main/playlist.m3u8zxinjd$LR•IPV4•21『线路9』 -新疆卫视,http://198.204.228.26/live/xjws.m3u8$LR•IPV4•21『线路10』 -新疆卫视,http://112.123.243.37:50085/tsfile/live/0143_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•21『线路11』 -新疆卫视,http://58.56.162.102:4466/newlive/live/hls/44/live.m3u8$LR•IPV4•21『线路12』 -新疆卫视,https://iptv.catvod.com/catvod.php?id=xjws$LR•IPV4•21『线路13』 -新疆卫视,https://httop.top/ysp-新疆卫视$LR•IPV4•21『线路14』 -新疆卫视,http://jasonzhangnas.f3322.net:7088/udp/233.18.204.220:5140$LR•IPV4•21『线路15』 -新疆卫视,http://207.56.13.146:81/cdnlive/xjws.m3u8$LR•IPV4•21『线路16』 -新疆卫视,http://192.151.150.154/live/xjws.m3u8$LR•IPV4•21『线路17』 -新疆卫视,http://204.12.221.218:8181/3m1080p/xjws.m3u8$LR•IPV4•21『线路18』 -新疆卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040018&livemode=1&stbId=yu&mode=1&$LR•IPV4•21『线路19』 -新疆卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000029441&livemode=1&stbId=yu&mode=1&$LR•IPV4•21『线路20』 -新疆卫视,http://111.29.9.33:6610/000000001000/1000000002000029441/index.m3u8?channel-id=bestzb&Contentid=1000000002000029441&livemode=1&stbId=3$LR•IPV4•21『线路21』 +海南卫视,http://43.251.226.89:8080/play/50.m3u8$LR•IPV4•15『线路5』 +海南卫视,http://api.kkitv.itv888.cn:8080/hls/c1cajhsgba8/index.m3u8$LR•IPV4•15『线路6』 +海南卫视,https://iptv.catvod.com/catvod.php?id=hinws$LR•IPV4•15『线路7』 +海南卫视,https://httop.top/ysp-海南卫视$LR•IPV4•15『线路8』 +海南卫视,http://nn.7x9d.cn/地方台8563/海南.php?id=hnws$LR•IPV4•15『线路9』 +海南卫视,http://207.56.13.146:81/cdnlive/lyws.m3u8$LR•IPV4•15『线路10』 +海南卫视,http://204.12.221.218:8181/3m1080p/lyws.m3u8$LR•IPV4•15『线路11』 +海南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000006211&livemode=1&stbId=yu&mode=1&$LR•IPV4•15『线路12』 +海南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=7899627377857656087&livemode=1&stbId=yu&mode=1&$LR•IPV4•15『线路13』 +海南卫视,http://111.29.9.33:6610/000000001000/5000000004000006211/index.m3u8?channel-id=bestzb&Contentid=5000000004000006211&livemode=1&stbId=3$LR•IPV4•15『线路14』 +海南卫视,http://118.81.195.79:9003/hls/28/index.m3u8$LR•IPV4•15『线路15』 +新疆卫视,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•21『线路1』 +新疆卫视,http://218.84.12.186:8001/hls/main/playlist.m3u8?zxinjd;http://218.84.12.186:8001/hls/main/playlist.m3u8zxinjd$LR•IPV4•21『线路2』 +新疆卫视,http://123.163.114.168:9901/tsfile/live/0110_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•21『线路3』 +新疆卫视,http://198.204.228.26/live/xjws.m3u8$LR•IPV4•21『线路4』 +新疆卫视,http://112.123.243.37:50085/tsfile/live/0143_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•21『线路5』 +新疆卫视,http://58.56.162.102:4466/newlive/live/hls/44/live.m3u8$LR•IPV4•21『线路6』 +新疆卫视,https://iptv.catvod.com/catvod.php?id=xjws$LR•IPV4•21『线路7』 +新疆卫视,https://httop.top/ysp-新疆卫视$LR•IPV4•21『线路8』 +新疆卫视,http://jasonzhangnas.f3322.net:7088/udp/233.18.204.220:5140$LR•IPV4•21『线路9』 +新疆卫视,http://207.56.13.146:81/cdnlive/xjws.m3u8$LR•IPV4•21『线路10』 +新疆卫视,http://192.151.150.154/live/xjws.m3u8$LR•IPV4•21『线路11』 +新疆卫视,http://204.12.221.218:8181/3m1080p/xjws.m3u8$LR•IPV4•21『线路12』 +新疆卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040018&livemode=1&stbId=yu&mode=1&$LR•IPV4•21『线路13』 +新疆卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000029441&livemode=1&stbId=yu&mode=1&$LR•IPV4•21『线路14』 +新疆卫视,http://111.29.9.33:6610/000000001000/1000000002000029441/index.m3u8?channel-id=bestzb&Contentid=1000000002000029441&livemode=1&stbId=3$LR•IPV4•21『线路15』 +新疆卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225725/index.m3u8$LR•IPV4•21『线路16』 +新疆卫视,http://183.207.248.71/cntv/live1/xinjiangstv/xinjiangstv$LR•IPV4•21『线路17』 +新疆卫视,http://183.207.248.71/gitv/live1/G_XINJIANG/G_XINJIANG$LR•IPV4•21『线路18』 +新疆卫视,http://183.207.249.15/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•21『线路19』 +新疆卫视,http://223.110.243.136/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•21『线路20』 +新疆卫视,http://112.25.48.68/live/program/live/xjws/1300000/mnf.m3u8$LR•IPV4•21『线路21』 云南卫视,http://p2.ioioz.com/xgplayer.php?id=https://hwapi.yntv.net/ew265l/z1z6s5.m3u8$LR•IPV4•24『线路1』 -云南卫视,https://hwapi.yunshicloud.com/8xughf/e0bx15.m3u8$LR•IPV4•24『线路2』 -云南卫视,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•24『线路3』 +云南卫视,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•24『线路2』 +云南卫视,http://112.27.235.94:8000/hls/40/index.m3u8$LR•IPV4•24『线路3』 云南卫视,http://123.163.114.168:85/tsfile/live/0119_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•24『线路4』 云南卫视,http://123.163.114.168:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•24『线路5』 云南卫视,http://38.75.136.137:98/gslb/dsdqpub/ynwshd.m3u8?auth=testpub$LR•IPV4•24『线路6』 @@ -1260,57 +1256,57 @@ CGTN阿语,https://0472.org/hls/cgtna.m3u8?3.24.160:5140$LR•IPV4•4『线路4 云南卫视,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=ynwshd$LR•IPV4•24『线路8』 云南卫视,http://207.56.13.146:81/cdnlive/ynws.m3u8$LR•IPV4•24『线路9』 云南卫视,http://36.136.38.87:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•24『线路10』 -云南卫视,http://112.27.235.94:8000/hls/40/index.m3u8$LR•IPV4•24『线路11』 -云南卫视,http://23.237.228.134/live8/yunnan.m3u8$LR•IPV4•24『线路12』 -云南卫视,https://iptv.catvod.com/catvod.php?id=ynws$LR•IPV4•24『线路13』 -云南卫视,https://httop.top/ysp-云南卫视$LR•IPV4•24『线路14』 -云南卫视,http://153.0.171.163:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•24『线路15』 -云南卫视,http://60.10.139.113:8801/hls/51/index.m3u8$LR•IPV4•24『线路16』 -云南卫视,http://192.151.150.154/live/ynwshd.m3u8$LR•IPV4•24『线路17』 -云南卫视,http://204.12.221.218:8181/3m1080p/ynws.m3u8$LR•IPV4•24『线路18』 -云南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000031120&livemode=1&stbId=yu&mode=1&$LR•IPV4•24『线路19』 -云南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000006000040019&livemode=1&stbId=yu&mode=1&$LR•IPV4•24『线路20』 -云南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000002000024694&livemode=1&stbId=yu&mode=1&$LR•IPV4•24『线路21』 -云南卫视,http://111.29.9.37:6610/000000001000/1000000002000024694/index.m3u8?stbId=3&livemode=1&IASHttpSessionId=OTT$LR•IPV4•24『线路22』 -云南卫视,http://111.43.126.240:9003/hls/60/index.m3u8$LR•IPV4•24『线路23』 -云南卫视,http://111.29.9.33:6610/000000001000/1000000002000024694/index.m3u8?channel-id=bestzb&Contentid=1000000002000024694&livemode=1&stbId=3$LR•IPV4•24『线路24』 -西藏卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225723/index.m3u8$LR•IPV4•13『线路1』 -西藏卫视,http://117.169.120.140:8080/live/xizangstv/.m3u8$LR•IPV4•13『线路2』 -西藏卫视,http://183.207.249.16/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•13『线路3』 -西藏卫视,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•13『线路4』 -西藏卫视,http://107.150.60.122/live/xzws.m3u8$LR•IPV4•13『线路5』 -西藏卫视,http://222.90.21.30:9901/hls/90/index.m3u8$LR•IPV4•13『线路6』 -西藏卫视,http://cssbyd.imwork.net:8082/hls/46/index.m3u8$LR•IPV4•13『线路7』 -西藏卫视,https://iptv.catvod.com/catvod.php?id=xzws$LR•IPV4•13『线路8』 -西藏卫视,http://jasonzhangnas.f3322.net:7088/udp/233.18.204.222:5140$LR•IPV4•13『线路9』 -西藏卫视,http://207.56.13.146:81/cdnlive/xzws.m3u8$LR•IPV4•13『线路10』 -西藏卫视,http://204.12.221.218:8181/3m1080p/xzws.m3u8$LR•IPV4•13『线路11』 -西藏卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5381760837640571168&livemode=1&stbId=yu&mode=1&$LR•IPV4•13『线路12』 -西藏卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=6603041244077933770&livemode=1&stbId=yu&mode=1&$LR•IPV4•13『线路13』 +云南卫视,http://23.237.228.134/live8/yunnan.m3u8$LR•IPV4•24『线路11』 +云南卫视,https://iptv.catvod.com/catvod.php?id=ynws$LR•IPV4•24『线路12』 +云南卫视,https://httop.top/ysp-云南卫视$LR•IPV4•24『线路13』 +云南卫视,http://153.0.171.163:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•24『线路14』 +云南卫视,http://60.10.139.113:8801/hls/51/index.m3u8$LR•IPV4•24『线路15』 +云南卫视,http://192.151.150.154/live/ynwshd.m3u8$LR•IPV4•24『线路16』 +云南卫视,http://204.12.221.218:8181/3m1080p/ynws.m3u8$LR•IPV4•24『线路17』 +云南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000031120&livemode=1&stbId=yu&mode=1&$LR•IPV4•24『线路18』 +云南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000006000040019&livemode=1&stbId=yu&mode=1&$LR•IPV4•24『线路19』 +云南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000002000024694&livemode=1&stbId=yu&mode=1&$LR•IPV4•24『线路20』 +云南卫视,http://111.29.9.37:6610/000000001000/1000000002000024694/index.m3u8?stbId=3&livemode=1&IASHttpSessionId=OTT$LR•IPV4•24『线路21』 +云南卫视,http://111.43.126.240:9003/hls/60/index.m3u8$LR•IPV4•24『线路22』 +云南卫视,http://111.29.9.33:6610/000000001000/1000000002000024694/index.m3u8?channel-id=bestzb&Contentid=1000000002000024694&livemode=1&stbId=3$LR•IPV4•24『线路23』 +云南卫视,https://hwapi.yunshicloud.com/8xughf/e0bx15.m3u8$LR•IPV4•24『线路24』 +西藏卫视,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•13『线路1』 +西藏卫视,http://cssbyd.imwork.net:8082/hls/46/index.m3u8$LR•IPV4•13『线路2』 +西藏卫视,http://107.150.60.122/live/xzws.m3u8$LR•IPV4•13『线路3』 +西藏卫视,http://222.90.21.30:9901/hls/90/index.m3u8$LR•IPV4•13『线路4』 +西藏卫视,https://iptv.catvod.com/catvod.php?id=xzws$LR•IPV4•13『线路5』 +西藏卫视,http://jasonzhangnas.f3322.net:7088/udp/233.18.204.222:5140$LR•IPV4•13『线路6』 +西藏卫视,http://207.56.13.146:81/cdnlive/xzws.m3u8$LR•IPV4•13『线路7』 +西藏卫视,http://204.12.221.218:8181/3m1080p/xzws.m3u8$LR•IPV4•13『线路8』 +西藏卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5381760837640571168&livemode=1&stbId=yu&mode=1&$LR•IPV4•13『线路9』 +西藏卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=6603041244077933770&livemode=1&stbId=yu&mode=1&$LR•IPV4•13『线路10』 +西藏卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225723/index.m3u8$LR•IPV4•13『线路11』 +西藏卫视,http://117.169.120.140:8080/live/xizangstv/.m3u8$LR•IPV4•13『线路12』 +西藏卫视,http://183.207.249.16/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•13『线路13』 海峡卫视,http://38.64.72.148:80/hls/modn/list/4009/playlist.m3u8$LR•IPV4•5『线路1』 海峡卫视,http://43.251.226.89:8080/play/51.m3u8$LR•IPV4•5『线路2』 海峡卫视,p3p://167.114.175.6:55331/63ec47390001586de42ffc1a7e1856a6$LR•IPV4•5『线路3』 海峡卫视,http://8.138.7.223/tv/hxws.m3u8$LR•IPV4•5『线路4』 海峡卫视,http://hlsbkmgsplive.miguvideo.com/migu/kailu/haixiaws/57/20230724/01.m3u8?msisdn=&Channel_ID=&ContentId=&HlsSubType=&HlsProfileId=&encrypt=$LR•IPV4•5『线路5』 -兵团卫视,http://112.25.48.68/live/program/live/btws/1300000/mnf.m3u8$LR•IPV4•14『线路1』 +兵团卫视,http://218.13.170.98:9901/tsfile/live/0115_1.m3u8$LR•IPV4•14『线路1』 兵团卫视,http://222.90.21.30:9901/hls/65/index.m3u8$LR•IPV4•14『线路2』 兵团卫视,http://107.150.60.122/live/btws.m3u8$LR•IPV4•14『线路3』 兵团卫视,http://38.75.136.137:98/gslb/dsdqpub/btws.m3u8?auth=testpub$LR•IPV4•14『线路4』 兵团卫视,http://198.204.228.26/live/btws.m3u8$LR•IPV4•14『线路5』 -兵团卫视,http://218.13.170.98:9901/tsfile/live/0115_1.m3u8$LR•IPV4•14『线路6』 -兵团卫视,http://43.251.226.89:8080/play/53.m3u8$LR•IPV4•14『线路7』 -兵团卫视,https://iptv.catvod.com/catvod.php?id=btws$LR•IPV4•14『线路8』 -兵团卫视,https://httop.top/ysp-兵团卫视$LR•IPV4•14『线路9』 -兵团卫视,http://jasonzhangnas.f3322.net:7088/udp/233.18.204.221:5140$LR•IPV4•14『线路10』 -兵团卫视,http://192.151.150.154/live/btws.m3u8$LR•IPV4•14『线路11』 -兵团卫视,http://204.12.221.218:8181/3m1080p/btws.m3u8$LR•IPV4•14『线路12』 -兵团卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000005000266005&livemode=1&stbId=yu&mode=1&$LR•IPV4•14『线路13』 -兵团卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040020&livemode=1&stbId=yu&mode=1&$LR•IPV4•14『线路14』 +兵团卫视,http://43.251.226.89:8080/play/53.m3u8$LR•IPV4•14『线路6』 +兵团卫视,https://iptv.catvod.com/catvod.php?id=btws$LR•IPV4•14『线路7』 +兵团卫视,https://httop.top/ysp-兵团卫视$LR•IPV4•14『线路8』 +兵团卫视,http://jasonzhangnas.f3322.net:7088/udp/233.18.204.221:5140$LR•IPV4•14『线路9』 +兵团卫视,http://192.151.150.154/live/btws.m3u8$LR•IPV4•14『线路10』 +兵团卫视,http://204.12.221.218:8181/3m1080p/btws.m3u8$LR•IPV4•14『线路11』 +兵团卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000005000266005&livemode=1&stbId=yu&mode=1&$LR•IPV4•14『线路12』 +兵团卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040020&livemode=1&stbId=yu&mode=1&$LR•IPV4•14『线路13』 +兵团卫视,http://112.25.48.68/live/program/live/btws/1300000/mnf.m3u8$LR•IPV4•14『线路14』 安多卫视,https://liveout.xntv.tv/a65jur/96iln2.m3u8$LR•IPV4•2『线路1』 安多卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000022124&livemode=1&stbId=yu&mode=1&$LR•IPV4•2『线路2』 -康巴卫视,http://scgctvshow.sctv.com/hdlive/kangba/1.m3u8$LR•IPV4•3『线路1』 -康巴卫视,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•3『线路2』 -康巴卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000005000266002&livemode=1&stbId=yu&mode=1&$LR•IPV4•3『线路3』 +康巴卫视,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•3『线路1』 +康巴卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000005000266002&livemode=1&stbId=yu&mode=1&$LR•IPV4•3『线路2』 +康巴卫视,http://scgctvshow.sctv.com/hdlive/kangba/1.m3u8$LR•IPV4•3『线路3』 农林卫视,http://120.76.248.139/live/bfgd/4200000122.m3u8$LR•IPV4•4『线路1』 农林卫视,http://43.251.226.89:8080/play/52.m3u8$LR•IPV4•4『线路2』 农林卫视,http://204.12.221.218:8181/3m1080p/snnl.m3u8$LR•IPV4•4『线路3』 @@ -1327,26 +1323,26 @@ CGTN阿语,https://0472.org/hls/cgtna.m3u8?3.24.160:5140$LR•IPV4•4『线路4 三沙卫视,http://nn.7x9d.cn/地方台8563/海南.php?id=ssws$LR•IPV4•11『线路10』 三沙卫视,http://btjg.net:809/hls/142/index.m3u8$LR•IPV4•11『线路11』 延边卫视,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•7『线路1』 -延边卫视,https://srs.iyb983.cn:443/video/CYS/index.m3u8$LR•IPV4•7『线路2』 -延边卫视,https://srs.iyb983.cn/video/CYS/index.m3u8$LR•IPV4•7『线路3』 -延边卫视,http://222.90.21.30:9901/hls/67/index.m3u8$LR•IPV4•7『线路4』 -延边卫视,http://120.76.248.139/live/bfgd/4200000117.m3u8$LR•IPV4•7『线路5』 +延边卫视,http://120.76.248.139/live/bfgd/4200000117.m3u8$LR•IPV4•7『线路2』 +延边卫视,https://srs.iyb983.cn:443/video/CYS/index.m3u8$LR•IPV4•7『线路3』 +延边卫视,https://srs.iyb983.cn/video/CYS/index.m3u8$LR•IPV4•7『线路4』 +延边卫视,http://222.90.21.30:9901/hls/67/index.m3u8$LR•IPV4•7『线路5』 延边卫视,http://204.12.221.218:8181/3m1080p/ybws.m3u8$LR•IPV4•7『线路6』 延边卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000005000266008&livemode=1&stbId=yu&mode=1&$LR•IPV4•7『线路7』 中国教育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://111.29.9.33:6610/000000001000/1000000001000028380/index.m3u8?channel-id=bestzb&Contentid=1000000001000028380&livemode=1&stbId=3$LR•IPV4 家庭理财,http://223.110.245.139/PLTV/4/224/3221227011/index.m3u8$LR•IPV4 -梨园,http://60.10.139.113:8801/hls/86/index.m3u8$LR•IPV4•3『线路1』 -梨园,http://1.94.31.214/php/hntv.php?id=hnly$LR•IPV4•3『线路2』 -梨园,https://dxtx.hntv.tv/live/lypd.m3u8?txSecret=10c771842a0be59e8b575d765173ec96&txTime=7B923E0A&wsSecret=41543190cdf375f1c73207222bb96542&wsTime=1769313549$LR•IPV4•3『线路3』 +梨园,https://dxtx.hntv.tv/live/lypd.m3u8?txSecret=10c771842a0be59e8b575d765173ec96&txTime=7B923E0A&wsSecret=41543190cdf375f1c73207222bb96542&wsTime=1769313549$LR•IPV4•3『线路1』 +梨园,http://60.10.139.113:8801/hls/86/index.m3u8$LR•IPV4•3『线路2』 +梨园,http://1.94.31.214/php/hntv.php?id=hnly$LR•IPV4•3『线路3』 辽宁公共,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』 -山西卫视,http://118.81.195.79:9003/hls/19/index.m3u8$LR•IPV4•20『线路1』 +山西卫视,https://livehhhttps.sxrtv.com/lsdream/q8RVWgs/1000/n1sh84V.m3u8$LR•IPV4•20『线路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•20『线路2』 山西卫视,http://119.39.9.8:9901/tsfile/live/0118_1.m3u8$LR•IPV4•20『线路3』 山西卫视,http://107.150.60.122/live/sxwshd.m3u8$LR•IPV4•20『线路4』 @@ -1355,41 +1351,41 @@ CGTN阿语,https://0472.org/hls/cgtna.m3u8?3.24.160:5140$LR•IPV4•4『线路4 山西卫视,http://36.136.38.87:9901/tsfile/live/0118_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•20『线路7』 山西卫视,http://222.90.21.30:9901/hls/32/index.m3u8$LR•IPV4•20『线路8』 山西卫视,http://153.0.171.163:9901/tsfile/live/0118_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•20『线路9』 -山西卫视,http://112.27.235.94:8000/hls/45/index.m3u8$LR•IPV4•20『线路10』 -山西卫视,http://23.237.228.134/live8/shanxi.m3u8$LR•IPV4•20『线路11』 -山西卫视,https://iptv.catvod.com/catvod.php?id=sxiws$LR•IPV4•20『线路12』 -山西卫视,https://httop.top/ysp-山西卫视$LR•IPV4•20『线路13』 -山西卫视,http://60.10.139.113:8801/hls/54/index.m3u8$LR•IPV4•20『线路14』 -山西卫视,http://jasonzhangnas.f3322.net:7088/udp/233.18.204.211:5140$LR•IPV4•20『线路15』 -山西卫视,http://207.56.13.146:81/cdnlive/sxws.m3u8$LR•IPV4•20『线路16』 -山西卫视,http://192.151.150.154/live/sxwshd.m3u8$LR•IPV4•20『线路17』 -山西卫视,http://204.12.221.218:8181/3m1080p/sxws.m3u8$LR•IPV4•20『线路18』 -山西卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040023&livemode=1&stbId=yu&mode=1&$LR•IPV4•20『线路19』 -山西卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000021220&livemode=1&stbId=yu&mode=1&$LR•IPV4•20『线路20』 +山西卫视,http://23.237.228.134/live8/shanxi.m3u8$LR•IPV4•20『线路10』 +山西卫视,https://iptv.catvod.com/catvod.php?id=sxiws$LR•IPV4•20『线路11』 +山西卫视,https://httop.top/ysp-山西卫视$LR•IPV4•20『线路12』 +山西卫视,http://60.10.139.113:8801/hls/54/index.m3u8$LR•IPV4•20『线路13』 +山西卫视,http://jasonzhangnas.f3322.net:7088/udp/233.18.204.211:5140$LR•IPV4•20『线路14』 +山西卫视,http://207.56.13.146:81/cdnlive/sxws.m3u8$LR•IPV4•20『线路15』 +山西卫视,http://192.151.150.154/live/sxwshd.m3u8$LR•IPV4•20『线路16』 +山西卫视,http://204.12.221.218:8181/3m1080p/sxws.m3u8$LR•IPV4•20『线路17』 +山西卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040023&livemode=1&stbId=yu&mode=1&$LR•IPV4•20『线路18』 +山西卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000021220&livemode=1&stbId=yu&mode=1&$LR•IPV4•20『线路19』 +山西卫视,http://118.81.195.79:9003/hls/19/index.m3u8$LR•IPV4•20『线路20』 陕西卫视,http://stream.snrtv.com/sxbc-3-kszDIO.m3u8$LR•IPV4•24『线路1』 -陕西卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225729/index.m3u8$LR•IPV4•24『线路2』 -陕西卫视,http://223.110.245.139/PLTV/4/224/3221227022/index.m3u8$LR•IPV4•24『线路3』 -陕西卫视,http://112.25.48.68/live/program/live/sxws/1300000/mnf.m3u8$LR•IPV4•24『线路4』 -陕西卫视,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•24『线路5』 -陕西卫视,http://38.75.136.137:98/gslb/dsdqpub/snwshd.m3u8?auth=testpub$LR•IPV4•24『线路6』 -陕西卫视,http://36.136.38.87:9901/tsfile/live/0136_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•24『线路7』 -陕西卫视,http://120.198.95.220:9901/tsfile/live/1068_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•24『线路8』 -陕西卫视,http://cssbyd.imwork.net:8082/hls/42/index.m3u8$LR•IPV4•24『线路9』 -陕西卫视,http://112.27.235.94:8000/hls/43/index.m3u8$LR•IPV4•24『线路10』 -陕西卫视,http://38.75.136.137:98/gslb/dsdqpub/sxwshd.m3u8?auth=testpub$LR•IPV4•24『线路11』 -陕西卫视,http://23.237.228.134/live6/sichuan.m3u8$LR•IPV4•24『线路12』 -陕西卫视,http://43.251.226.89:8080/play/45.m3u8$LR•IPV4•24『线路13』 -陕西卫视,https://iptv.catvod.com/catvod.php?id=sxws$LR•IPV4•24『线路14』 -陕西卫视,https://httop.top/ysp-陕西卫视$LR•IPV4•24『线路15』 -陕西卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=sxws$LR•IPV4•24『线路16』 -陕西卫视,http://153.0.171.163:9901/tsfile/live/0136_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•24『线路17』 -陕西卫视,http://60.10.139.113:8801/hls/53/index.m3u8$LR•IPV4•24『线路18』 -陕西卫视,http://jasonzhangnas.f3322.net:7088/udp/233.18.204.223:5140$LR•IPV4•24『线路19』 -陕西卫视,http://207.56.13.146:81/cdnlive/snws.m3u8$LR•IPV4•24『线路20』 -陕西卫视,http://192.151.150.154/live/snwshd.m3u8$LR•IPV4•24『线路21』 -陕西卫视,http://204.12.221.218:8181/3m1080p/snws.m3u8$LR•IPV4•24『线路22』 -陕西卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000007495&livemode=1&stbId=yu&mode=1&$LR•IPV4•24『线路23』 -陕西卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000006000040017&livemode=1&stbId=yu&mode=1&$LR•IPV4•24『线路24』 +陕西卫视,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•24『线路2』 +陕西卫视,http://112.27.235.94:8000/hls/43/index.m3u8$LR•IPV4•24『线路3』 +陕西卫视,http://38.75.136.137:98/gslb/dsdqpub/snwshd.m3u8?auth=testpub$LR•IPV4•24『线路4』 +陕西卫视,http://36.136.38.87:9901/tsfile/live/0136_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•24『线路5』 +陕西卫视,http://120.198.95.220:9901/tsfile/live/1068_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•24『线路6』 +陕西卫视,http://cssbyd.imwork.net:8082/hls/42/index.m3u8$LR•IPV4•24『线路7』 +陕西卫视,http://38.75.136.137:98/gslb/dsdqpub/sxwshd.m3u8?auth=testpub$LR•IPV4•24『线路8』 +陕西卫视,http://23.237.228.134/live6/sichuan.m3u8$LR•IPV4•24『线路9』 +陕西卫视,http://43.251.226.89:8080/play/45.m3u8$LR•IPV4•24『线路10』 +陕西卫视,https://iptv.catvod.com/catvod.php?id=sxws$LR•IPV4•24『线路11』 +陕西卫视,https://httop.top/ysp-陕西卫视$LR•IPV4•24『线路12』 +陕西卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=sxws$LR•IPV4•24『线路13』 +陕西卫视,http://153.0.171.163:9901/tsfile/live/0136_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•24『线路14』 +陕西卫视,http://60.10.139.113:8801/hls/53/index.m3u8$LR•IPV4•24『线路15』 +陕西卫视,http://jasonzhangnas.f3322.net:7088/udp/233.18.204.223:5140$LR•IPV4•24『线路16』 +陕西卫视,http://207.56.13.146:81/cdnlive/snws.m3u8$LR•IPV4•24『线路17』 +陕西卫视,http://192.151.150.154/live/snwshd.m3u8$LR•IPV4•24『线路18』 +陕西卫视,http://204.12.221.218:8181/3m1080p/snws.m3u8$LR•IPV4•24『线路19』 +陕西卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000007495&livemode=1&stbId=yu&mode=1&$LR•IPV4•24『线路20』 +陕西卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000006000040017&livemode=1&stbId=yu&mode=1&$LR•IPV4•24『线路21』 +陕西卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225729/index.m3u8$LR•IPV4•24『线路22』 +陕西卫视,http://223.110.245.139/PLTV/4/224/3221227022/index.m3u8$LR•IPV4•24『线路23』 +陕西卫视,http://112.25.48.68/live/program/live/sxws/1300000/mnf.m3u8$LR•IPV4•24『线路24』 数字,#genre# CHC影迷电影,p3p://167.114.175.6:55331/63ec4caf00020428e445513c2d902fdb$LR•IPV4•3『线路1』 @@ -1573,18 +1569,18 @@ NewTV军旅剧场,http://gslbserv.itv.cmvideo.cn:80/000000001000/748507595106866 NewTV军旅剧场,http://php.jdshipin.com/TVOD/hnyd.php?id=200000001898/460000089800010079$LR•IPV4•4『线路4』 NewTV动作电影,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000004000018653&livemode=1&stbId=yu&mode=1&$LR•IPV4•4『线路1』 NewTV动作电影,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=8103864434730665389&livemode=1&stbId=yu&mode=1&$LR•IPV4•4『线路2』 -NewTV动作电影,http://39.134.19.68/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226465/index.m3u8$LR•IPV4•4『线路3』 -NewTV动作电影,http://live.metshop.top/huya/11602077?cdn=alicdn$LR•IPV4•4『线路4』 +NewTV动作电影,http://live.metshop.top/huya/11602077?cdn=alicdn$LR•IPV4•4『线路3』 +NewTV动作电影,http://39.134.19.68/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226465/index.m3u8$LR•IPV4•4『线路4』 NewTV惊悚悬疑,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000004000024282&livemode=1&stbId=yu&mode=1&$LR•IPV4•3『线路1』 NewTV惊悚悬疑,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=7151256057701199617&livemode=1&stbId=yu&mode=1&$LR•IPV4•3『线路2』 NewTV惊悚悬疑,http://111.29.9.33:6610/000000001000/1000000004000024282/index.m3u8?channel-id=bestzb&Contentid=1000000004000024282&livemode=1&stbId=3$LR•IPV4•3『线路3』 NewTV潮妈辣婆,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=6516734029835465177&livemode=1&stbId=yu&mode=1&$LR•IPV4 NewTV精品体育,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=6460382139625130259&livemode=1&stbId=yu&mode=1&$LR•IPV4•8『线路1』 NewTV精品体育,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000004000014634&livemode=1&stbId=yu&mode=1&$LR•IPV4•8『线路2』 -NewTV精品体育,https://epg.pw/stream/866a097a0907c9832440f8df38272dd555abf05200dfbafcc137e214c9b30ca7.m3u8$LR•IPV4•8『线路3』 -NewTV精品体育,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5739&tk=23a9aca1f79f$LR•IPV4•8『线路4』 -NewTV精品体育,https://epg.pw/stream/f7556eccd4ae06b0c2991fdc7a4f8388496559f728cc82459a8e50346040e226.m3u8$LR•IPV4•8『线路5』 -NewTV精品体育,https://epg.pw/stream/94ed0232b61ce8d89883160a4cdfbfc8f3225cae70ef8e17d93eec249a3c8ad6.m3u8$LR•IPV4•8『线路6』 +NewTV精品体育,https://epg.pw/stream/94ed0232b61ce8d89883160a4cdfbfc8f3225cae70ef8e17d93eec249a3c8ad6.m3u8$LR•IPV4•8『线路3』 +NewTV精品体育,https://epg.pw/stream/866a097a0907c9832440f8df38272dd555abf05200dfbafcc137e214c9b30ca7.m3u8$LR•IPV4•8『线路4』 +NewTV精品体育,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5739&tk=23a9aca1f79f$LR•IPV4•8『线路5』 +NewTV精品体育,https://epg.pw/stream/f7556eccd4ae06b0c2991fdc7a4f8388496559f728cc82459a8e50346040e226.m3u8$LR•IPV4•8『线路6』 NewTV精品体育,http://dl.wifi942.com:66/jsyd/jsyd.php?id=GITV-JS-65$LR•IPV4•8『线路7』 NewTV精品体育,http://146.56.165.66:7788/TVOD/2000000003000000021/hnbblive/index.m3u8$LR•IPV4•8『线路8』 NewTV家庭剧场,http://lvbaiducdnct.inter.ptqy.gitv.tv/tslive/c59_fast_999_1080P_t10/c59_fast_999_1080P_t10.m3u8?d$LR•IPV4•4『线路1』 @@ -1609,36 +1605,36 @@ NewTV农业致富,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLiv NewTV炫舞未来,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000000515&livemode=1&stbId=yu&mode=1&$LR•IPV4•2『线路1』 NewTV炫舞未来,http://111.29.9.33:6610/000000001000/1000000001000000515/index.m3u8?channel-id=bestzb&Contentid=1000000001000000515&livemode=1&stbId=3$LR•IPV4•2『线路2』 NewTV哒啵赛事,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5320946857686967621&livemode=1&stbId=yu&mode=1&$LR•IPV4 -卡酷少儿,http://192.151.150.154/live/btvkk.m3u8$LR•IPV4•5『线路1』 -卡酷少儿,http://204.12.221.218:8181/3m1080p/btvkk.m3u8$LR•IPV4•5『线路2』 -卡酷少儿,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=7851974109718180595&livemode=1&stbId=yu&mode=1&$LR•IPV4•5『线路3』 -卡酷少儿,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=7589856436881630561&livemode=1&stbId=yu&mode=1&$LR•IPV4•5『线路4』 -卡酷少儿,http://218.13.170.98:9901/tsfile/live/1021_1.m3u8$LR•IPV4•5『线路5』 -优漫卡通,http://183.207.249.15/PLTV/4/224/3221225933/index.m3u8$LR•IPV4•4『线路1』 -优漫卡通,http://192.151.150.154/live/ymkt.m3u8$LR•IPV4•4『线路2』 -优漫卡通,http://204.12.221.218:8181/3m1080p/ymkt.m3u8$LR•IPV4•4『线路3』 -优漫卡通,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000010063&livemode=1&stbId=yu&mode=1&$LR•IPV4•4『线路4』 +卡酷少儿,http://218.13.170.98:9901/tsfile/live/1021_1.m3u8$LR•IPV4•5『线路1』 +卡酷少儿,http://192.151.150.154/live/btvkk.m3u8$LR•IPV4•5『线路2』 +卡酷少儿,http://204.12.221.218:8181/3m1080p/btvkk.m3u8$LR•IPV4•5『线路3』 +卡酷少儿,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=7851974109718180595&livemode=1&stbId=yu&mode=1&$LR•IPV4•5『线路4』 +卡酷少儿,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=7589856436881630561&livemode=1&stbId=yu&mode=1&$LR•IPV4•5『线路5』 +优漫卡通,http://192.151.150.154/live/ymkt.m3u8$LR•IPV4•4『线路1』 +优漫卡通,http://204.12.221.218:8181/3m1080p/ymkt.m3u8$LR•IPV4•4『线路2』 +优漫卡通,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000010063&livemode=1&stbId=yu&mode=1&$LR•IPV4•4『线路3』 +优漫卡通,http://183.207.249.15/PLTV/4/224/3221225933/index.m3u8$LR•IPV4•4『线路4』 哈哈炫动,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000031123&livemode=1&stbId=yu&mode=1&$LR•IPV4•4『线路1』 哈哈炫动,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000005000031641&livemode=1&stbId=yu&mode=1&$LR•IPV4•4『线路2』 哈哈炫动,http://111.29.9.33:6610/000000001000/5000000011000031123/index.m3u8?channel-id=bestzb&Contentid=5000000011000031123&livemode=1&stbId=3$LR•IPV4•4『线路3』 哈哈炫动,http://223.110.245.139/PLTV/4/224/3221226388/index.m3u8$LR•IPV4•4『线路4』 -嘉佳卡通,http://223.110.245.139/PLTV/4/224/3221227009/index.m3u8$LR•IPV4•7『线路1』 -嘉佳卡通,http://112.25.48.68/live/program/live/jjkt/1300000/mnf.m3u8$LR•IPV4•7『线路2』 -嘉佳卡通,http://192.151.150.154/live/gdjjkt.m3u8$LR•IPV4•7『线路3』 -嘉佳卡通,http://204.12.221.218:8181/3m1080p/gdjjkt.m3u8$LR•IPV4•7『线路4』 -嘉佳卡通,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000025964&livemode=1&stbId=yu&mode=1&$LR•IPV4•7『线路5』 -嘉佳卡通,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=4739906347743456369&livemode=1&stbId=yu&mode=1&$LR•IPV4•7『线路6』 -嘉佳卡通,http://111.29.9.33:6610/000000001000/1000000002000025964/index.m3u8?channel-id=bestzb&Contentid=1000000002000025964&livemode=1&stbId=3$LR•IPV4•7『线路7』 +嘉佳卡通,http://192.151.150.154/live/gdjjkt.m3u8$LR•IPV4•7『线路1』 +嘉佳卡通,http://204.12.221.218:8181/3m1080p/gdjjkt.m3u8$LR•IPV4•7『线路2』 +嘉佳卡通,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000025964&livemode=1&stbId=yu&mode=1&$LR•IPV4•7『线路3』 +嘉佳卡通,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=4739906347743456369&livemode=1&stbId=yu&mode=1&$LR•IPV4•7『线路4』 +嘉佳卡通,http://111.29.9.33:6610/000000001000/1000000002000025964/index.m3u8?channel-id=bestzb&Contentid=1000000002000025964&livemode=1&stbId=3$LR•IPV4•7『线路5』 +嘉佳卡通,http://223.110.245.139/PLTV/4/224/3221227009/index.m3u8$LR•IPV4•7『线路6』 +嘉佳卡通,http://112.25.48.68/live/program/live/jjkt/1300000/mnf.m3u8$LR•IPV4•7『线路7』 金鹰卡通,http://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2hzPSZ1aXA9MTA2LjE0LjM4LjU1JmRlZj0xJm1hY2lkPTY4NmU4Y2Y4Yzg4ZTc3ZWM5YTA3OTMyODlmNTM0ODQyYWJlYzRmM2MmcWlkPSZyYXV0aF9lbmFibGU9b2ZmJmNkbmV4X2lkPWFsX3Bob25lMyZ0ZXJtPTUmZXM9MTc4MzMyMDYyOCZzPTk5ZTQ2ZmRlYTY5ZGQ5MzEwMzAxZGZjNWM3ZWI2OWI2JnVpZD0mdXVpZD0wN2NlZmFjNWM1MjAyMjI3MmQ5OGNmYTE2YjJlM2YzZS02YTBlMjYzNyZ2PTImYXM9MCZfY2FyQ29kZT0w/JYKTMPP360.m3u8$LR•IPV4•10『线路1』 -金鹰卡通,http://223.110.245.145/ott.js.chinamobile.com/PLTV/3/224/3221226303/index.m3u8$LR•IPV4•10『线路2』 -金鹰卡通,http://183.11.239.36:808/hls/69/index.m3u8$LR•IPV4•10『线路3』 -金鹰卡通,http://120.198.95.220:9901/tsfile/live/1033_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•10『线路4』 -金鹰卡通,http://204.12.221.218:8181/3m1080p/hnjykt.m3u8$LR•IPV4•10『线路5』 -金鹰卡通,https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/JYKTMPP360.m3u8$LR•IPV4•10『线路6』 -金鹰卡通,http://183.237.95.108:9901/tsfile/live/1099_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•10『线路7』 -金鹰卡通,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040024&livemode=1&stbId=yu&mode=1&$LR•IPV4•10『线路8』 -金鹰卡通,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000016601&livemode=1&stbId=yu&mode=1&$LR•IPV4•10『线路9』 -金鹰卡通,http://111.29.9.33:6610/000000001000/5000000006000040024/index.m3u8?channel-id=bestzb&Contentid=5000000006000040024&livemode=1&stbId=3$LR•IPV4•10『线路10』 +金鹰卡通,http://183.11.239.36:808/hls/69/index.m3u8$LR•IPV4•10『线路2』 +金鹰卡通,http://204.12.221.218:8181/3m1080p/hnjykt.m3u8$LR•IPV4•10『线路3』 +金鹰卡通,https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/JYKTMPP360.m3u8$LR•IPV4•10『线路4』 +金鹰卡通,http://183.237.95.108:9901/tsfile/live/1099_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•10『线路5』 +金鹰卡通,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040024&livemode=1&stbId=yu&mode=1&$LR•IPV4•10『线路6』 +金鹰卡通,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000016601&livemode=1&stbId=yu&mode=1&$LR•IPV4•10『线路7』 +金鹰卡通,http://111.29.9.33:6610/000000001000/5000000006000040024/index.m3u8?channel-id=bestzb&Contentid=5000000006000040024&livemode=1&stbId=3$LR•IPV4•10『线路8』 +金鹰卡通,http://120.198.95.220:9901/tsfile/live/1033_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•10『线路9』 +金鹰卡通,http://223.110.245.145/ott.js.chinamobile.com/PLTV/3/224/3221226303/index.m3u8$LR•IPV4•10『线路10』 金鹰纪实,http://iptv.huuc.edu.cn/hls/gedocu.m3u8$LR•IPV4•90『线路1』 金鹰纪实,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8115&tk=e640d0a1bf70$LR•IPV4•90『线路2』 金鹰纪实,http://58.57.40.22:9901/tsfile/live/1070_1.m3u8$LR•IPV4•90『线路3』 @@ -1765,8 +1761,8 @@ NewTV哒啵赛事,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLiv 快乐垂钓,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8454&tk=a0c4f6cfaba3$LR•IPV4•36『线路34』 快乐垂钓,http://27.12.12.29:1234/961930263$LR•IPV4•36『线路35』 快乐垂钓,https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/KLCDMPP360.m3u8$LR•IPV4•36『线路36』 -纪实人文,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://111.29.9.33:6610/000000001000/1000000004000019008/index.m3u8?channel-id=bestzb&Contentid=1000000004000019008&livemode=1&stbId=3$LR•IPV4 天元围棋,http://dl.wifi942.com:66/jsyd/jsyd.php?id=G_TIANYUANWQ$LR•IPV4•7『线路1』 天元围棋,http://204.12.221.218:8181/3m1080p/gztywq.m3u8$LR•IPV4•7『线路2』 @@ -1778,12 +1774,12 @@ NewTV哒啵赛事,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLiv 弈坛春秋,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•6『线路1』 -纯享4K,http://101.43.145.141:12002/itv/1000000004000011651.m3u8?cdn=ystenlive$LR•IPV4•6『线路2』 -纯享4K,https://live.264788.xyz/channel/chunxiang4k?streamid=c162e99191441b46592808f7f1afe8b0&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•6『线路3』 -纯享4K,https://live.264788.xyz/channel/chunxiang4k?streamid=a12e69928ae928860407d7ec7bfe4ac8&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•6『线路4』 -纯享4K,http://home.wwang.pw:35455/itv/1000000004000011651.m3u8?cdn=ystenlive$LR•IPV4•6『线路5』 -纯享4K,http://111.29.9.33:6610/000000001000/1000000004000011651/index.m3u8?channel-id=bestzb&Contentid=1000000004000011651&livemode=1&stbId=3$LR•IPV4•6『线路6』 +纯享4K,http://101.43.145.141:12002/itv/1000000004000011651.m3u8?cdn=ystenlive$LR•IPV4•6『线路1』 +纯享4K,https://live.264788.xyz/channel/chunxiang4k?streamid=c162e99191441b46592808f7f1afe8b0&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•6『线路2』 +纯享4K,https://live.264788.xyz/channel/chunxiang4k?streamid=a12e69928ae928860407d7ec7bfe4ac8&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•6『线路3』 +纯享4K,http://home.wwang.pw:35455/itv/1000000004000011651.m3u8?cdn=ystenlive$LR•IPV4•6『线路4』 +纯享4K,http://111.29.9.33:6610/000000001000/1000000004000011651/index.m3u8?channel-id=bestzb&Contentid=1000000004000011651&livemode=1&stbId=3$LR•IPV4•6『线路5』 +纯享4K,http://39.134.115.163:8080/PLTV/88888910/224/3221225786/index.m3u8$LR•IPV4•6『线路6』 安徽,#genre# 滁州新闻综合频道,http://183.167.193.45:1935/live/cztvzh/playlist.m3u8$LR•IPV4 @@ -1791,8 +1787,8 @@ NewTV哒啵赛事,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLiv 滁州公共频道,http://183.167.193.45:1935/live/cztvgg/playlist.m3u8$LR•IPV4 铜陵新闻综合频道,https://ls.qingting.fm/live/21303/64k.m3u8$LR•IPV4•2『线路1』 铜陵新闻综合频道,http://dstpush1.retalltech.com/app/stream1.m3u8$LR•IPV4•2『线路2』 -亳州农村,http://220.180.110.101:8083/videos/live/39/13/o4ncrHkSp7q09/o4ncrHkSp7q09.m3u8$LR•IPV4•2『线路1』 -亳州农村,http://zbbf2.ahbztv.com/live/418.m3u8?zanhd$LR•IPV4•2『线路2』 +亳州农村,http://zbbf2.ahbztv.com/live/418.m3u8?zanhd$LR•IPV4•2『线路1』 +亳州农村,http://220.180.110.101:8083/videos/live/39/13/o4ncrHkSp7q09/o4ncrHkSp7q09.m3u8$LR•IPV4•2『线路2』 北京,#genre# 北京财经,http://ivi.bupt.edu.cn/hls/btv5.m3u8$LR•IPV4 @@ -1813,19 +1809,19 @@ NewTV哒啵赛事,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLiv 南宁影视娱乐,http://hls.nntv.cn/nnlive/YSYL_244.m3u8$LR•IPV4 河北,#genre# -邢台综合,http://222.223.119.21:8888/newlive/live/hls/54/live.m3u8$LR•IPV4•2『线路1』 -邢台综合,https://jwplay.hebyun.com.cn:443/live/xtsrmtzs/1500k/tzwj_video.m3u8$LR•IPV4•2『线路2』 -河北都市,http://121.19.134.246:808/hls/21/index.m3u8$LR•IPV4•2『线路1』 -河北都市,https://radio.pull.hebtv.com/live/hebnczx.m3u8$LR•IPV4•2『线路2』 -河北农民,http://121.19.134.246:808/hls/25/index.m3u8$LR•IPV4•2『线路1』 -河北农民,https://ls.qingting.fm/live/1650/64k.m3u8$LR•IPV4•2『线路2』 +邢台综合,https://jwplay.hebyun.com.cn:443/live/xtsrmtzs/1500k/tzwj_video.m3u8$LR•IPV4•2『线路1』 +邢台综合,http://222.223.119.21:8888/newlive/live/hls/54/live.m3u8$LR•IPV4•2『线路2』 +河北都市,http://1.94.31.214/php/hebei.php?id=hbds$LR•IPV4•2『线路1』 +河北都市,http://121.19.134.246:808/hls/21/index.m3u8$LR•IPV4•2『线路2』 +河北农民,https://ls.qingting.fm/live/1650/64k.m3u8$LR•IPV4•2『线路1』 +河北农民,http://121.19.134.246:808/hls/25/index.m3u8$LR•IPV4•2『线路2』 鹿泉一套,http://hblq.chinashadt.com:2036/live/stream:luquan1.stream/playlist.m3u8$LR•IPV4 -河北经济,http://121.19.134.246:808/hls/20/index.m3u8$LR•IPV4•2『线路1』 -河北经济,http://1.94.31.214/php/hebei.php?id=jjsh$LR•IPV4•2『线路2』 -河北影视,http://121.19.134.246:808/hls/22/index.m3u8$LR•IPV4•2『线路1』 -河北影视,http://1.94.31.214/php/hebei.php?id=hbys$LR•IPV4•2『线路2』 -河北公共,http://121.19.134.246:808/hls/24/index.m3u8$LR•IPV4•2『线路1』 -河北公共,http://1.94.31.214/php/hebei.php?id=hbgg$LR•IPV4•2『线路2』 +河北经济,http://1.94.31.214/php/hebei.php?id=jjsh$LR•IPV4•2『线路1』 +河北经济,http://121.19.134.246:808/hls/20/index.m3u8$LR•IPV4•2『线路2』 +河北影视,http://1.94.31.214/php/hebei.php?id=hbys$LR•IPV4•2『线路1』 +河北影视,http://121.19.134.246:808/hls/22/index.m3u8$LR•IPV4•2『线路2』 +河北公共,http://1.94.31.214/php/hebei.php?id=hbgg$LR•IPV4•2『线路1』 +河北公共,http://121.19.134.246:808/hls/24/index.m3u8$LR•IPV4•2『线路2』 鹿泉二套,http://hblq.chinashadt.com:2036/live/stream:luquan2.stream/playlist.m3u8$LR•IPV4 内蒙古,#genre# @@ -1851,12 +1847,12 @@ NewTV哒啵赛事,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLiv 江苏教育,http://223.110.245.151/ott.js.chinamobile.com/PLTV/3/224/3221225923/index.m3u8$LR•IPV4 南京十八,http://183.207.248.71/gitv/live1/G_NJSB/G_NJSB$LR•IPV4 江苏体育,http://183.207.248.71/gitv/live1/G_JSTY/G_JSTY$LR•IPV4 -南京教科,https://live.nbs.cn/channels/njtv/jkpd/m3u8:500k/live.m3u8$LR•IPV4•4『线路1』 -南京教科,http://183.207.248.71/gitv/live1/G_NJJK/G_NJJK$LR•IPV4•4『线路2』 -南京教科,http://223.110.245.155/ott.js.chinamobile.com/PLTV/3/224/3221227194/index.m3u8$LR•IPV4•4『线路3』 -南京教科,http://nklive.nbs.cn/hls/75b3c462-b831-4de7-a34b-5d3221db2069/index.m3u8$LR•IPV4•4『线路4』 -南京少儿,https://live.nbs.cn/channels/njtv/sepd/m3u8:500k/live.m3u8$LR•IPV4•2『线路1』 -南京少儿,http://nklive.nbs.cn/hls/e0981f3f-1a20-4a59-b8d1-17feb83a4610/index.m3u8$LR•IPV4•2『线路2』 +南京教科,http://nklive.nbs.cn/hls/75b3c462-b831-4de7-a34b-5d3221db2069/index.m3u8$LR•IPV4•4『线路1』 +南京教科,https://live.nbs.cn/channels/njtv/jkpd/m3u8:500k/live.m3u8$LR•IPV4•4『线路2』 +南京教科,http://183.207.248.71/gitv/live1/G_NJJK/G_NJJK$LR•IPV4•4『线路3』 +南京教科,http://223.110.245.155/ott.js.chinamobile.com/PLTV/3/224/3221227194/index.m3u8$LR•IPV4•4『线路4』 +南京少儿,http://nklive.nbs.cn/hls/e0981f3f-1a20-4a59-b8d1-17feb83a4610/index.m3u8$LR•IPV4•2『线路1』 +南京少儿,https://live.nbs.cn/channels/njtv/sepd/m3u8:500k/live.m3u8$LR•IPV4•2『线路2』 苏州4k,https://live-auth.51kandianshi.com/szgd/csztv4k_hd.m3u8$LR•IPV4•5『线路1』 苏州4k,http://43.251.226.89:8080/play/927.m3u8$LR•IPV4•5『线路2』 苏州4k,https://tylive.kan0512.com/norecord/csztv4k_4k.m3u8$LR•IPV4•5『线路3』 @@ -1909,7 +1905,6 @@ NewTV哒啵赛事,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLiv 浙江生活,https://t.freetv.fun/live/zhe-jiang-jing-ji-sheng-huo-3.m3u8$LR•IPV4•25『线路23』 浙江生活,http://ali-xwl.cztv.com/live/channel031080Plxw.m3u8$LR•IPV4•25『线路24』 浙江生活,https://t.freetv.fun/live/zhe-jiang-jing-ji-sheng-huo-1.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』 @@ -2046,9 +2041,9 @@ NewTV哒啵赛事,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLiv 浙江教科,http://ali-vl.cztv.com/channels/lantian/channel004/360p.m3u8$LR•IPV4•10『线路8』 浙江教科,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8242&tk=23a9aca1f79f$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$LR•IPV4•3『线路2』 -浙江经济,http://live.hznet.tv:1935/live/live2/500K/tzwj_video.m3u8?shandd$LR•IPV4•3『线路3』 +浙江经济,http://live.hznet.tv:1935/live/live2/500k/tzwj_video.m3u8$LR•IPV4•3『线路1』 +浙江经济,http://live.hznet.tv:1935/live/live2/500K/tzwj_video.m3u8?shandd$LR•IPV4•3『线路2』 +浙江经济,http://222.179.155.21:1935/ch0.m3u8$LR•IPV4•3『线路3』 之江纪录,https://ali-m-l.cztv.com/channels/lantian/channel012/1080p.m3u8$LR•IPV4•6『线路1』 之江纪录,https://ali-m-l.cztv.com/channels/lantian/channel12/720p.m3u8$LR•IPV4•6『线路2』 之江纪录,http://ali-m-l.cztv.com/channels/lantian/channel012/1080p.m3u8$LR•IPV4•6『线路3』 @@ -2056,10 +2051,10 @@ NewTV哒啵赛事,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLiv 之江纪录,http://zwebl02.cztv.com/live/channel121080P.m3u8?auth_key=2524708799-0-0-c33efdd495bcdd2ddc42e7c408405037$LR•IPV4•6『线路5』 之江纪录,http://ali-m-l.cztv.com/channels/lantian/channel12/1080p.m3u8$LR•IPV4•6『线路6』 浙江国际,https://ali-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8$LR•IPV4•30『线路1』 -浙江国际,http://ali-xwl.cztv.com/live/channel101080Plxw.m3u8$LR•IPV4•30『线路2』 -浙江国际,http://ali-vl.cztv.com/channels/lantian/channel010/360p.m3u8?a=1000&d=4e3d476240659192311f471b7b63aec2&k=d26568bae9dd23dd781c769c148459b2&t=1683180450$LR•IPV4•30『线路3』 -浙江国际,https://stream1.freetv.fun/zhe-jiang-guo-ji-9.m3u8$LR•IPV4•30『线路4』 -浙江国际,http://ali-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8$LR•IPV4•30『线路5』 +浙江国际,http://ali-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8$LR•IPV4•30『线路2』 +浙江国际,http://ali-xwl.cztv.com/live/channel101080Plxw.m3u8$LR•IPV4•30『线路3』 +浙江国际,http://ali-vl.cztv.com/channels/lantian/channel010/360p.m3u8?a=1000&d=4e3d476240659192311f471b7b63aec2&k=d26568bae9dd23dd781c769c148459b2&t=1683180450$LR•IPV4•30『线路4』 +浙江国际,https://stream1.freetv.fun/zhe-jiang-guo-ji-9.m3u8$LR•IPV4•30『线路5』 浙江国际,https://stream1.freetv.fun/zhe-jiang-guo-ji-11.m3u8$LR•IPV4•30『线路6』 浙江国际,https://stream1.freetv.fun/zhe-jiang-guo-ji-10.m3u8$LR•IPV4•30『线路7』 浙江国际,https://stream1.freetv.fun/8edc171ba7945fd93cc0f2c9e39b48ba0a94500d0029db9456dfdc2d75f9ea9d.m3u8$LR•IPV4•30『线路8』 @@ -2141,8 +2136,8 @@ NewTV哒啵赛事,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLiv 鄞州一套,http://pili-publish.yzxw.newaircloud.com/newaircloud-yzxw/yzxw_20190925090843.m3u8?zzhed$LR•IPV4 遂昌综合,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/SXxiangshan1/720p.m3u8$LR•IPV4•3『线路1』 -象山综合,http://play-sh13.quklive.com/live/1702360350551252.m3u8?auth_key=2037107484-800189c57a5a44d3b823b60cf84f6756-0-a6f6828a62d5c167cff5e68735fa0d39$LR•IPV4•3『线路2』 +象山综合,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•7『线路1』 衢江新闻综合,https://stream1.freetv.fun/qu-jiang-xin-wen-zong-he-2.m3u8$LR•IPV4•7『线路2』 @@ -2151,8 +2146,8 @@ NewTV哒啵赛事,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLiv 衢江新闻综合,https://stream1.freetv.fun/qu-jiang-xin-wen-zong-he-3.m3u8$LR•IPV4•7『线路5』 衢江新闻综合,https://t.freetv.fun/live/qu-jiang-xin-wen-zong-he.m3u8$LR•IPV4•7『线路6』 衢江新闻综合,https://stream1.freetv.fun/qu-jiang-xin-wen-zong-he-1.m3u8$LR•IPV4•7『线路7』 -萧山生活,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』 +萧山生活,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『线路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-6.m3u8$LR•IPV4•17『线路2』 @@ -2180,13 +2175,13 @@ NewTV哒啵赛事,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLiv 苍南新闻综合,https://stream1.freetv.fun/cang-nan-xin-wen-zong-he-4.ctv$LR•IPV4•9『线路7』 苍南新闻综合,https://stream1.freetv.fun/cang-nan-xin-wen-zong-he-2.m3u8$LR•IPV4•9『线路8』 苍南新闻综合,https://stream1.freetv.fun/cang-nan-xin-wen-zong-he-7.m3u8$LR•IPV4•9『线路9』 -缙云综合,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『线路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://live.shaoxing.com.cn/video/s10001-sxtv2/index.m3u8?zzhed$LR•IPV4•2『线路1』 -绍兴电视台公共,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『线路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-sxtv1/index.m3u8$LR•IPV4•9『线路1』 绍兴新闻综合,https://stream1.freetv.fun/shao-xing-xin-wen-zong-he-3.m3u8$LR•IPV4•9『线路2』 绍兴新闻综合,http://live.shaoxing.com.cn/video/s10001-sxhb/index.m3u8?zzhed$LR•IPV4•9『线路3』 @@ -2300,8 +2295,8 @@ NewTV哒啵赛事,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLiv 余姚综合,http://l.cztvcloud.com/channels/lantian/SXyuyao1/720p.m3u8?cWlkPSZzPTg3OWMwYmMyZDMzYTFhZGY3NDQxMjgyYTg1MmUzNTY0JmVzPTE3MDY2Nzc4NzMmdXVpZD0yMjdiY2MzNGNiNGY0MThlYjRiY2IxYzcwNmZjODNkMS02NzQ3NDY2NyZ2PTImYXM9MCZjZG5leF9pZD10eF9waG9uZV9saXZl$LR•IPV4•6『线路5』 余姚综合,http://l.cztvcloud.com/channels/lantian/SXyuyao1/720p.m3u8$LR•IPV4•6『线路6』 余姚姚江文化,https://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8$LR•IPV4•4『线路1』 -余姚姚江文化,http://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8?zzhed$LR•IPV4•4『线路2』 -余姚姚江文化,http://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8zzhed$LR•IPV4•4『线路3』 +余姚姚江文化,http://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8zzhed$LR•IPV4•4『线路2』 +余姚姚江文化,http://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8?zzhed$LR•IPV4•4『线路3』 余姚姚江文化,https://l.cztvcloud.com/channels/lantian/SXyuyao2/720p.m3u8$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』 @@ -2497,11 +2492,11 @@ NewTV哒啵赛事,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLiv 湖南公共,https://stream1.freetv.fun/hu-nan-gong-gong-3.m3u8$LR•IPV4•12『线路12』 长沙新闻综合,http://ls.qingting.fm/live/4877.m3u8$LR•IPV4•2『线路1』 长沙新闻综合,http://phonetx.qing.mgtv.com/nn_live/nn_x64/8.8&/CSXWMPP360.m3u8$LR•IPV4•2『线路2』 -长沙新闻,http://35848.hlsplay.aodianyun.com/guangdianyun_35848/tv_channel_346.m3u8$LR•IPV4•2『线路1』 -长沙新闻,https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/CSXWMPP360.m3u8$LR•IPV4•2『线路2』 -长沙政法,http://35848.hlsplay.aodianyun.com/guangdianyun_35848/tv_channel_348.m3u8$LR•IPV4•3『线路1』 -长沙政法,http://phonetx.qing.mgtv.com/nn_live/nn_x64/8.8&/CSZFMPP360.m3u8$LR•IPV4•3『线路2』 -长沙政法,https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/CSZFMPP360.m3u8$LR•IPV4•3『线路3』 +长沙新闻,https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/CSXWMPP360.m3u8$LR•IPV4•2『线路1』 +长沙新闻,http://35848.hlsplay.aodianyun.com/guangdianyun_35848/tv_channel_346.m3u8$LR•IPV4•2『线路2』 +长沙政法,http://phonetx.qing.mgtv.com/nn_live/nn_x64/8.8&/CSZFMPP360.m3u8$LR•IPV4•3『线路1』 +长沙政法,https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/CSZFMPP360.m3u8$LR•IPV4•3『线路2』 +长沙政法,http://35848.hlsplay.aodianyun.com/guangdianyun_35848/tv_channel_348.m3u8$LR•IPV4•3『线路3』 长沙女性,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 @@ -2639,24 +2634,24 @@ NewTV哒啵赛事,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLiv 十堰新闻,https://p8.vzan.com/slowlive/034028687228317362/live.m3u8?zbid=351104&amp%3Btpid=868100086$LR•IPV4•8『线路6』 十堰新闻,https://stream1.freetv.fun/shi-yan-xin-wen-3.m3u8$LR•IPV4•8『线路7』 十堰新闻,https://stream1.freetv.fun/shi-yan-xin-wen-4.m3u8$LR•IPV4•8『线路8』 -荆门新闻综合,https://t.freetv.fun/live/jing-men-xin-wen-zong-he.m3u8$LR•IPV4•14『线路1』 -荆门新闻综合,https://stream1.freetv.fun/jing-men-xin-wen-zong-he-4.m3u8$LR•IPV4•14『线路2』 -荆门新闻综合,http://stream.jmtv.com.cn/xwzh/sd/live.m3u8?zhubd$LR•IPV4•14『线路3』 -荆门新闻综合,https://t.freetv.fun/live/jing-men-xin-wen-zong-he-1-1.m3u8$LR•IPV4•14『线路4』 -荆门新闻综合,https://stream.jmtv.com.cn/xwzh/playlist.m3u8?_upt=3e28e7271664278691$LR•IPV4•14『线路5』 -荆门新闻综合,http://stream.jmtv.com.cn/xwzh/sd/live.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•14『线路6』 -荆门新闻综合,https://stream1.freetv.fun/jing-men-xin-wen-zong-he-6.m3u8$LR•IPV4•14『线路7』 -荆门新闻综合,https://stream1.freetv.fun/jing-men-xin-wen-zong-he-5.m3u8$LR•IPV4•14『线路8』 -荆门新闻综合,https://stream1.freetv.fun/jing-men-xin-wen-zong-he-3.m3u8$LR•IPV4•14『线路9』 -荆门新闻综合,https://stream1.freetv.fun/jing-men-xin-wen-zong-he-1.m3u8$LR•IPV4•14『线路10』 -荆门新闻综合,https://stream1.freetv.fun/jing-men-xin-wen-zong-he-2.m3u8$LR•IPV4•14『线路11』 -荆门新闻综合,http://stream.jmtv.com.cn/xwzh/sd/live.m3u8$LR•IPV4•14『线路12』 +荆门新闻综合,http://stream.jmtv.com.cn/xwzh/sd/live.m3u8$LR•IPV4•14『线路1』 +荆门新闻综合,https://t.freetv.fun/live/jing-men-xin-wen-zong-he.m3u8$LR•IPV4•14『线路2』 +荆门新闻综合,https://stream1.freetv.fun/jing-men-xin-wen-zong-he-4.m3u8$LR•IPV4•14『线路3』 +荆门新闻综合,http://stream.jmtv.com.cn/xwzh/sd/live.m3u8?zhubd$LR•IPV4•14『线路4』 +荆门新闻综合,https://t.freetv.fun/live/jing-men-xin-wen-zong-he-1-1.m3u8$LR•IPV4•14『线路5』 +荆门新闻综合,https://stream.jmtv.com.cn/xwzh/playlist.m3u8?_upt=3e28e7271664278691$LR•IPV4•14『线路6』 +荆门新闻综合,http://stream.jmtv.com.cn/xwzh/sd/live.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•14『线路7』 +荆门新闻综合,https://stream1.freetv.fun/jing-men-xin-wen-zong-he-6.m3u8$LR•IPV4•14『线路8』 +荆门新闻综合,https://stream1.freetv.fun/jing-men-xin-wen-zong-he-5.m3u8$LR•IPV4•14『线路9』 +荆门新闻综合,https://stream1.freetv.fun/jing-men-xin-wen-zong-he-3.m3u8$LR•IPV4•14『线路10』 +荆门新闻综合,https://stream1.freetv.fun/jing-men-xin-wen-zong-he-1.m3u8$LR•IPV4•14『线路11』 +荆门新闻综合,https://stream1.freetv.fun/jing-men-xin-wen-zong-he-2.m3u8$LR•IPV4•14『线路12』 荆门新闻综合,https://t.freetv.fun/live/jing-men-xin-wen-zong-he-5.m3u8$LR•IPV4•14『线路13』 荆门新闻综合,https://t.freetv.fun/live/jing-men-xin-wen-zong-he-2.m3u8$LR•IPV4•14『线路14』 -武汉一台新闻综合,http://stream.appwuhan.com/1tzb/sd/live.m3u8$LR•IPV4•9『线路1』 -武汉一台新闻综合,https://stream1.freetv.fun/wu-yi-1xin-wen-zong-he-1.m3u8$LR•IPV4•9『线路2』 -武汉一台新闻综合,http://stream.appwuhan.com:80/1tzb/sd/live.m3u8$LR•IPV4•9『线路3』 -武汉一台新闻综合,https://ls.qingting.fm/live/20198/64k.m3u8$LR•IPV4•9『线路4』 +武汉一台新闻综合,https://ls.qingting.fm/live/20198/64k.m3u8$LR•IPV4•9『线路1』 +武汉一台新闻综合,http://stream.appwuhan.com/1tzb/sd/live.m3u8$LR•IPV4•9『线路2』 +武汉一台新闻综合,https://stream1.freetv.fun/wu-yi-1xin-wen-zong-he-1.m3u8$LR•IPV4•9『线路3』 +武汉一台新闻综合,http://stream.appwuhan.com:80/1tzb/sd/live.m3u8$LR•IPV4•9『线路4』 武汉一台新闻综合,https://stream1.freetv.fun/wu-yi-xin-wen-zong-he-1.m3u8$LR•IPV4•9『线路5』 武汉一台新闻综合,https://stream1.freetv.fun/wu-yi-xin-wen-zong-he-7.m3u8$LR•IPV4•9『线路6』 武汉一台新闻综合,https://stream1.freetv.fun/wu-yi-yi-tai-xin-wen-zong-he-4.m3u8$LR•IPV4•9『线路7』 @@ -2690,10 +2685,10 @@ NewTV哒啵赛事,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLiv 辽宁影视剧,http://120.76.248.139/live/bfgd/4200000070.m3u8$LR•IPV4 辽宁教育青少,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/4200000480.m3u8$LR•IPV4 -辽宁都市,http://120.76.248.139/live/bfgd/4200000068.m3u8$LR•IPV4 -辽宁体育,https://stream1.freetv.fun/liao-zhu-ti-yu-3.m3u8$LR•IPV4•3『线路1』 -辽宁体育,http://dassby.qqff.top:99/live/辽宁体育/index.m3u8$LR•IPV4•3『线路2』 +辽宁经济,http://dassby.qqff.top:99/live/辽宁经济/index.m3u8$LR•IPV4 +辽宁都市,http://120.76.248.139/live/bfgd/4200000610.m3u8$LR•IPV4 +辽宁体育,http://dassby.qqff.top:99/live/辽宁体育/index.m3u8$LR•IPV4•3『线路1』 +辽宁体育,https://stream1.freetv.fun/liao-zhu-ti-yu-3.m3u8$LR•IPV4•3『线路2』 辽宁体育,http://120.76.248.139/live/bfgd/4200000611.m3u8$LR•IPV4•3『线路3』 朝阳新闻综合,http://120.76.248.139/live/bfgd/4200000282.m3u8$LR•IPV4 @@ -2738,23 +2733,23 @@ NewTV哒啵赛事,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLiv 汕头文旅体育,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0590&tk=a0c4f6cfaba3$LR•IPV4•5『线路3』 汕头文旅体育,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5771&tk=a0c4f6cfaba3$LR•IPV4•5『线路4』 汕头文旅体育,http://120.77.205.62:8087/rtp/239.253.43.44:5146$LR•IPV4•5『线路5』 -广东珠江,http://[2409:8087:5e00:24::10]:6060/200000001898/460000089800010091/0.m3u8$LR•IPV6•122『线路1』 -广东珠江,https://t.freetv.fun/live/yan-dong-zhu-jiang-8.m3u8$LR•IPV4•122『线路2』 -广东珠江,https://t.freetv.fun/live/yan-dong-zhu-jiang-gao-qing-15.m3u8$LR•IPV4•122『线路3』 -广东珠江,https://stream1.freetv.fun/yan-dong-zhu-jiang-gao-qing-1.m3u8$LR•IPV4•122『线路4』 -广东珠江,https://stream1.freetv.fun/yan-dong-zhu-jiang-7.m3u8$LR•IPV4•122『线路5』 -广东珠江,http://qjrhc.jydjd.top:2911/udp/224.1.100.24:11111$LR•IPV4•122『线路6』 -广东珠江,https://stream1.freetv.fun/yan-dong-zhu-jiang-11.ctv$LR•IPV4•122『线路7』 -广东珠江,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=7152&tk=b53028476470$LR•IPV4•122『线路8』 -广东珠江,https://tv.cdn.com.mp/live/gdzj/stream.m3u8$LR•IPV4•122『线路9』 -广东珠江,https://t.freetv.fun/live/yan-dong-zhu-jiang-gao-qing-4.m3u8$LR•IPV4•122『线路10』 -广东珠江,http://218.15.183.23:9901/tsfile/live/23009_1.m3u8$LR•IPV4•122『线路11』 -广东珠江,http://120.77.205.62:8087/rtp/239.77.0.1:5146$LR•IPV4•122『线路12』 -广东珠江,https://stream1.freetv.fun/yan-dong-zhu-jiang-4.m3u8$LR•IPV4•122『线路13』 -广东珠江,https://stream1.freetv.fun/3e6c646d717a824425bca6f4f12c9091cc4725ab1afa8227b24b7a5bc6fcb019.m3u8$LR•IPV4•122『线路14』 -广东珠江,https://stream1.freetv.fun/ipv6-yan-dong-zhu-jiang-8.m3u8$LR•IPV4•122『线路15』 -广东珠江,https://stream1.freetv.fun/yan-dong-zhu-jiang-31.m3u8$LR•IPV4•122『线路16』 -广东珠江,http://cdn2.163189.xyz/live/gdzj/stream.m3u8$LR•IPV4•122『线路17』 +广东珠江,http://cdn2.163189.xyz/live/gdzj/stream.m3u8$LR•IPV4•122『线路1』 +广东珠江,http://[2409:8087:5e00:24::10]:6060/200000001898/460000089800010091/0.m3u8$LR•IPV6•122『线路2』 +广东珠江,https://t.freetv.fun/live/yan-dong-zhu-jiang-8.m3u8$LR•IPV4•122『线路3』 +广东珠江,https://t.freetv.fun/live/yan-dong-zhu-jiang-gao-qing-15.m3u8$LR•IPV4•122『线路4』 +广东珠江,https://stream1.freetv.fun/yan-dong-zhu-jiang-gao-qing-1.m3u8$LR•IPV4•122『线路5』 +广东珠江,https://stream1.freetv.fun/yan-dong-zhu-jiang-7.m3u8$LR•IPV4•122『线路6』 +广东珠江,http://qjrhc.jydjd.top:2911/udp/224.1.100.24:11111$LR•IPV4•122『线路7』 +广东珠江,https://stream1.freetv.fun/yan-dong-zhu-jiang-11.ctv$LR•IPV4•122『线路8』 +广东珠江,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=7152&tk=b53028476470$LR•IPV4•122『线路9』 +广东珠江,https://tv.cdn.com.mp/live/gdzj/stream.m3u8$LR•IPV4•122『线路10』 +广东珠江,https://t.freetv.fun/live/yan-dong-zhu-jiang-gao-qing-4.m3u8$LR•IPV4•122『线路11』 +广东珠江,http://218.15.183.23:9901/tsfile/live/23009_1.m3u8$LR•IPV4•122『线路12』 +广东珠江,http://120.77.205.62:8087/rtp/239.77.0.1:5146$LR•IPV4•122『线路13』 +广东珠江,https://stream1.freetv.fun/yan-dong-zhu-jiang-4.m3u8$LR•IPV4•122『线路14』 +广东珠江,https://stream1.freetv.fun/3e6c646d717a824425bca6f4f12c9091cc4725ab1afa8227b24b7a5bc6fcb019.m3u8$LR•IPV4•122『线路15』 +广东珠江,https://stream1.freetv.fun/ipv6-yan-dong-zhu-jiang-8.m3u8$LR•IPV4•122『线路16』 +广东珠江,https://stream1.freetv.fun/yan-dong-zhu-jiang-31.m3u8$LR•IPV4•122『线路17』 广东珠江,https://hls-gateway.vpstv.net/streams/476221.m3u8$LR•IPV4•122『线路18』 广东珠江,https://live.ximalaya.com/radio-first-page-app/live/252/64.m3u8?transcode=ts$LR•IPV4•122『线路19』 广东珠江,http://api.mytv666.top/api/hk.php?id=6162313131666165376133396363636237633834663162366130663635663031267469643d74762669643d39$LR•IPV4•122『线路20』 @@ -2860,62 +2855,62 @@ NewTV哒啵赛事,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLiv 广东珠江,http://bak.dou.ddns-ip.net/api.php?n=cctvxxx&id=XeKpjn&tk=zUr4K92Dl6kh$LR•IPV4•122『线路120』 广东珠江,http://107.150.60.122/live/gdzja.m3u8$LR•IPV4•122『线路121』 广东珠江,https://stream1.freetv.fun/yan-dong-zhu-jiang-17.ctv$LR•IPV4•122『线路122』 -广东体育,http://116.77.239.26:44300/tsfile/live/0124_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•110『线路1』 -广东体育,http://183.237.95.108:9901/tsfile/live/1033_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•110『线路2』 -广东体育,http://120.77.205.62:8087/rtp/239.77.1.97:5146$LR•IPV4•110『线路3』 -广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-5.m3u8$LR•IPV4•110『线路4』 -广东体育,http://120.238.94.82:9901/tsfile/live/1012_1.m3u8$LR•IPV4•110『线路5』 -广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-15.m3u8$LR•IPV4•110『线路6』 -广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-20.m3u8$LR•IPV4•110『线路7』 -广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-11.ctv$LR•IPV4•110『线路8』 -广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-17.m3u8$LR•IPV4•110『线路9』 -广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-3.php$LR•IPV4•110『线路10』 -广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-8.m3u8$LR•IPV4•110『线路11』 -广东体育,https://epg.pw/stream/7b470f9fc5c305db0c8622117b7b25ca00eb35ba3e93e865cf0ff9df5c736681.m3u8$LR•IPV4•110『线路12』 -广东体育,http://218.15.183.23:9901/tsfile/live/23012_1.m3u8$LR•IPV4•110『线路13』 -广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-34.ctv$LR•IPV4•110『线路14』 -广东体育,http://120.198.101.106:9901/tsfile/live/1012_1.m3u8?key=txiptv$LR•IPV4•110『线路15』 -广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-24.m3u8$LR•IPV4•110『线路16』 -广东体育,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=gdty$LR•IPV4•110『线路17』 -广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-7.m3u8$LR•IPV4•110『线路18』 -广东体育,http://120.198.95.220:9901/tsfile/live/1010_1.m3u8?key=txiptv$LR•IPV4•110『线路19』 -广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-10.m3u8$LR•IPV4•110『线路20』 -广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-17.ctv$LR•IPV4•110『线路21』 -广东体育,http://api2.52tb.xyz/info?id=414&token=20230218qkyjia$LR•IPV4•110『线路22』 -广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-16.ctv$LR•IPV4•110『线路23』 -广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-16.m3u8$LR•IPV4•110『线路24』 -广东体育,http://120.77.205.62:8087/rtp/239.77.0.168:5146$LR•IPV4•110『线路25』 -广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-15.m3u8$LR•IPV4•110『线路26』 -广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-10.m3u8$LR•IPV4•110『线路27』 -广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-36.m3u8$LR•IPV4•110『线路28』 -广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-6.ctv$LR•IPV4•110『线路29』 -广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-26.ctv$LR•IPV4•110『线路30』 -广东体育,http://119.32.12.17:2901/udp/224.1.100.34:11111$LR•IPV4•110『线路31』 -广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-3.m3u8$LR•IPV4•110『线路32』 -广东体育,http://120.77.205.62:8087/rtp/239.77.0.112:5146$LR•IPV4•110『线路33』 -广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-30.m3u8$LR•IPV4•110『线路34』 -广东体育,http://218.15.214.115:10000/udp/239.77.0.112:5146$LR•IPV4•110『线路35』 -广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-11.m3u8$LR•IPV4•110『线路36』 -广东体育,http://119.32.12.32:2901/udp/224.1.100.34:11111$LR•IPV4•110『线路37』 -广东体育,http://php.jdshipin.com/PLTV/iptv.php?id=gdty$LR•IPV4•110『线路38』 -广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-7.ctv$LR•IPV4•110『线路39』 -广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-18.ctv$LR•IPV4•110『线路40』 -广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-1.m3u8$LR•IPV4•110『线路41』 -广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-27.m3u8$LR•IPV4•110『线路42』 -广东体育,http://67.220.71.199:2347/livehttpplay?channel_id=30031$LR•IPV4•110『线路43』 -广东体育,http://api.mytv666.top/api/hk.php?id=3635306561306164626438636438373731346432656366353839663866326232267469643d74762669643d3131$LR•IPV4•110『线路44』 -广东体育,https://t.freetv.fun/live/yan-dong-ti-yu.m3u8$LR•IPV4•110『线路45』 -广东体育,https://hls-gateway.vpstv.net/streams/476954.m3u8$LR•IPV4•110『线路46』 -广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-12.m3u8$LR•IPV4•110『线路47』 -广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-21.m3u8$LR•IPV4•110『线路48』 -广东体育,http://api2.52tb.xyz/info?id=414&token=20230218jsyklh$LR•IPV4•110『线路49』 -广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-16.m3u8$LR•IPV4•110『线路50』 -广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-1.m3u8$LR•IPV4•110『线路51』 -广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-13.m3u8$LR•IPV4•110『线路52』 -广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-5.m3u8$LR•IPV4•110『线路53』 -广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-12.m3u8$LR•IPV4•110『线路54』 -广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-gao-qing-2.m3u8$LR•IPV4•110『线路55』 -广东体育,http://cdn2.163189.xyz/live/gdty/stream.m3u8$LR•IPV4•110『线路56』 +广东体育,http://cdn2.163189.xyz/live/gdty/stream.m3u8$LR•IPV4•110『线路1』 +广东体育,http://116.77.239.26:44300/tsfile/live/0124_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•110『线路2』 +广东体育,http://183.237.95.108:9901/tsfile/live/1033_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•110『线路3』 +广东体育,http://120.77.205.62:8087/rtp/239.77.1.97:5146$LR•IPV4•110『线路4』 +广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-5.m3u8$LR•IPV4•110『线路5』 +广东体育,http://120.238.94.82:9901/tsfile/live/1012_1.m3u8$LR•IPV4•110『线路6』 +广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-15.m3u8$LR•IPV4•110『线路7』 +广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-20.m3u8$LR•IPV4•110『线路8』 +广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-11.ctv$LR•IPV4•110『线路9』 +广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-17.m3u8$LR•IPV4•110『线路10』 +广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-3.php$LR•IPV4•110『线路11』 +广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-8.m3u8$LR•IPV4•110『线路12』 +广东体育,https://epg.pw/stream/7b470f9fc5c305db0c8622117b7b25ca00eb35ba3e93e865cf0ff9df5c736681.m3u8$LR•IPV4•110『线路13』 +广东体育,http://218.15.183.23:9901/tsfile/live/23012_1.m3u8$LR•IPV4•110『线路14』 +广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-34.ctv$LR•IPV4•110『线路15』 +广东体育,http://120.198.101.106:9901/tsfile/live/1012_1.m3u8?key=txiptv$LR•IPV4•110『线路16』 +广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-24.m3u8$LR•IPV4•110『线路17』 +广东体育,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=gdty$LR•IPV4•110『线路18』 +广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-7.m3u8$LR•IPV4•110『线路19』 +广东体育,http://120.198.95.220:9901/tsfile/live/1010_1.m3u8?key=txiptv$LR•IPV4•110『线路20』 +广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-10.m3u8$LR•IPV4•110『线路21』 +广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-17.ctv$LR•IPV4•110『线路22』 +广东体育,http://api2.52tb.xyz/info?id=414&token=20230218qkyjia$LR•IPV4•110『线路23』 +广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-16.ctv$LR•IPV4•110『线路24』 +广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-16.m3u8$LR•IPV4•110『线路25』 +广东体育,http://120.77.205.62:8087/rtp/239.77.0.168:5146$LR•IPV4•110『线路26』 +广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-15.m3u8$LR•IPV4•110『线路27』 +广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-10.m3u8$LR•IPV4•110『线路28』 +广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-36.m3u8$LR•IPV4•110『线路29』 +广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-6.ctv$LR•IPV4•110『线路30』 +广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-26.ctv$LR•IPV4•110『线路31』 +广东体育,http://119.32.12.17:2901/udp/224.1.100.34:11111$LR•IPV4•110『线路32』 +广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-3.m3u8$LR•IPV4•110『线路33』 +广东体育,http://120.77.205.62:8087/rtp/239.77.0.112:5146$LR•IPV4•110『线路34』 +广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-30.m3u8$LR•IPV4•110『线路35』 +广东体育,http://218.15.214.115:10000/udp/239.77.0.112:5146$LR•IPV4•110『线路36』 +广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-11.m3u8$LR•IPV4•110『线路37』 +广东体育,http://119.32.12.32:2901/udp/224.1.100.34:11111$LR•IPV4•110『线路38』 +广东体育,http://php.jdshipin.com/PLTV/iptv.php?id=gdty$LR•IPV4•110『线路39』 +广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-7.ctv$LR•IPV4•110『线路40』 +广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-18.ctv$LR•IPV4•110『线路41』 +广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-1.m3u8$LR•IPV4•110『线路42』 +广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-27.m3u8$LR•IPV4•110『线路43』 +广东体育,http://67.220.71.199:2347/livehttpplay?channel_id=30031$LR•IPV4•110『线路44』 +广东体育,http://api.mytv666.top/api/hk.php?id=3635306561306164626438636438373731346432656366353839663866326232267469643d74762669643d3131$LR•IPV4•110『线路45』 +广东体育,https://t.freetv.fun/live/yan-dong-ti-yu.m3u8$LR•IPV4•110『线路46』 +广东体育,https://hls-gateway.vpstv.net/streams/476954.m3u8$LR•IPV4•110『线路47』 +广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-12.m3u8$LR•IPV4•110『线路48』 +广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-21.m3u8$LR•IPV4•110『线路49』 +广东体育,http://api2.52tb.xyz/info?id=414&token=20230218jsyklh$LR•IPV4•110『线路50』 +广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-16.m3u8$LR•IPV4•110『线路51』 +广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-1.m3u8$LR•IPV4•110『线路52』 +广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-13.m3u8$LR•IPV4•110『线路53』 +广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-5.m3u8$LR•IPV4•110『线路54』 +广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-12.m3u8$LR•IPV4•110『线路55』 +广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-gao-qing-2.m3u8$LR•IPV4•110『线路56』 广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-19.m3u8$LR•IPV4•110『线路57』 广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-33.ctv$LR•IPV4•110『线路58』 广东体育,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2030&tk=a0c4f6cfaba3$LR•IPV4•110『线路59』 @@ -2970,17 +2965,17 @@ NewTV哒啵赛事,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLiv 广东体育,http://120.238.94.10:9901/tsfile/live/1012_1.m3u8$LR•IPV4•110『线路108』 广东体育,http://bxtv.3a.ink/api.php?id=gdty$LR•IPV4•110『线路109』 广东体育,http://111.221.137.234:44330/tsfile/live/0124_1.m3u8$LR•IPV4•110『线路110』 -广东民生,http://121.11.160.7:9901/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•54『线路1』 -广东民生,https://stream1.freetv.fun/yan-dong-min-sheng-13.ctv$LR•IPV4•54『线路2』 -广东民生,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1648&tk=a0c4f6cfaba3$LR•IPV4•54『线路3』 -广东民生,https://stream1.freetv.fun/yan-dong-min-sheng-32.ctv$LR•IPV4•54『线路4』 -广东民生,https://t.freetv.fun/live/yan-dong-min-sheng-1.m3u8$LR•IPV4•54『线路5』 -广东民生,https://t.freetv.fun/live/yan-dong-min-sheng-6.m3u8$LR•IPV4•54『线路6』 -广东民生,http://38.75.136.137:98/gslb/dsdqpub/gdgg.m3u8?auth=testpub$LR•IPV4•54『线路7』 -广东民生,https://stream1.freetv.fun/yan-dong-min-sheng-6.ctv$LR•IPV4•54『线路8』 -广东民生,https://stream1.freetv.fun/yan-dong-min-sheng-3.ctv$LR•IPV4•54『线路9』 -广东民生,http://119.32.12.17:2901/udp/224.1.100.4:11111$LR•IPV4•54『线路10』 -广东民生,http://183.11.239.36:808/hls/18/index.m3u8$LR•IPV4•54『线路11』 +广东民生,http://183.11.239.36:808/hls/18/index.m3u8$LR•IPV4•54『线路1』 +广东民生,http://121.11.160.7:9901/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•54『线路2』 +广东民生,https://stream1.freetv.fun/yan-dong-min-sheng-13.ctv$LR•IPV4•54『线路3』 +广东民生,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1648&tk=a0c4f6cfaba3$LR•IPV4•54『线路4』 +广东民生,https://stream1.freetv.fun/yan-dong-min-sheng-32.ctv$LR•IPV4•54『线路5』 +广东民生,https://t.freetv.fun/live/yan-dong-min-sheng-1.m3u8$LR•IPV4•54『线路6』 +广东民生,https://t.freetv.fun/live/yan-dong-min-sheng-6.m3u8$LR•IPV4•54『线路7』 +广东民生,http://38.75.136.137:98/gslb/dsdqpub/gdgg.m3u8?auth=testpub$LR•IPV4•54『线路8』 +广东民生,https://stream1.freetv.fun/yan-dong-min-sheng-6.ctv$LR•IPV4•54『线路9』 +广东民生,https://stream1.freetv.fun/yan-dong-min-sheng-3.ctv$LR•IPV4•54『线路10』 +广东民生,http://119.32.12.17:2901/udp/224.1.100.4:11111$LR•IPV4•54『线路11』 广东民生,http://183.237.95.108:9901/tsfile/live/1032_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•54『线路12』 广东民生,http://119.32.12.32:2901/udp/224.1.100.4:11111$LR•IPV4•54『线路13』 广东民生,https://stream1.freetv.fun/yan-dong-min-sheng-25.ctv$LR•IPV4•54『线路14』 @@ -3024,8 +3019,8 @@ NewTV哒啵赛事,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLiv 广东民生,https://t.freetv.fun/live/yan-dong-min-sheng-7.m3u8$LR•IPV4•54『线路52』 广东民生,https://stream1.freetv.fun/yan-dong-min-sheng-17.ctv$LR•IPV4•54『线路53』 广东民生,https://stream1.freetv.fun/yan-dong-min-sheng-14.m3u8$LR•IPV4•54『线路54』 -广东少儿,http://192.151.150.154/live/gdtvs5.m3u8$LR•IPV4•2『线路1』 -广东少儿,http://gmxw.7766.org:808/hls/175/index.m3u8$LR•IPV4•2『线路2』 +广东少儿,http://gmxw.7766.org:808/hls/175/index.m3u8$LR•IPV4•2『线路1』 +广东少儿,http://192.151.150.154/live/gdtvs5.m3u8$LR•IPV4•2『线路2』 岭南戏曲,http://192.151.150.154/live/gdlnxq.m3u8$LR•IPV4 大湾区卫视,http://222.128.55.152:9080/live/dwq.m3u8$LR•IPV4•6『线路1』 大湾区卫视,http://43.251.226.89:8080/play/39.m3u8$LR•IPV4•6『线路2』 @@ -3033,80 +3028,80 @@ NewTV哒啵赛事,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLiv 大湾区卫视,http://192.151.150.154/live/nfws.m3u8$LR•IPV4•6『线路4』 大湾区卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000011619&livemode=1&stbId=yu&mode=1&$LR•IPV4•6『线路5』 大湾区卫视,http://gslbserv.itv.cmvideo.cn:80/5000000011000265001/1.m3u8?channel-id=ystenlive&Contentid=1000000002000011619&livemode=1&stbId=toShengfen&mode=1&$LR•IPV4•6『线路6』 -广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-15.ctv$LR•IPV4•56『线路1』 -广州综合,https://tencentplay.gztv.com/live/zonghes.m3u8?txSecret=f0147ae6453a80f5989f382368b72aad&txTime=18d00acf487$LR•IPV4•56『线路2』 -广州综合,https://t.freetv.fun/live/yan-zhou-zong-he-7.m3u8$LR•IPV4•56『线路3』 -广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-3.ctv$LR•IPV4•56『线路4』 -广州综合,https://t.freetv.fun/live/yan-zhou-zong-he.php$LR•IPV4•56『线路5』 -广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-19.ctv$LR•IPV4•56『线路6』 -广州综合,http://r.jdshipin.com/iR6Gq$LR•IPV4•56『线路7』 -广州综合,https://t.freetv.fun/live/yan-zhou-zong-he-1.m3u8$LR•IPV4•56『线路8』 -广州综合,https://t.freetv.fun/live/yan-zhou-zong-he-3.m3u8$LR•IPV4•56『线路9』 -广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-17.ctv$LR•IPV4•56『线路10』 -广州综合,http://180.142.144.54:8181/tsfile/live/0115_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•56『线路11』 -广州综合,https://tencentplaygsm.gztv.com/live/zonghes.m3u8?txTime=659a5111&txSecret=36b95cb955327d8262812e0e4f772aa5$LR•IPV4•56『线路12』 -广州综合,https://t.freetv.fun/live/yan-zhou-zong-he-8.m3u8$LR•IPV4•56『线路13』 -广州综合,http://125.89.163.44:8888/udp/239.253.43.71:5146$LR•IPV4•56『线路14』 -广州综合,https://tencentplay.gztv.com/live/zonghes.m3u8?txSecret=5d7708684007fcea395caff98369084c&txTime=19019c37743$LR•IPV4•56『线路15』 -广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-29.ctv$LR•IPV4•56『线路16』 -广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-14.ctv$LR•IPV4•56『线路17』 -广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-27.ctv$LR•IPV4•56『线路18』 -广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-26.ctv$LR•IPV4•56『线路19』 -广州综合,http://qjrhc.jydjd.top:2911/udp/224.1.100.36:11111$LR•IPV4•56『线路20』 -广州综合,http://119.32.12.17:2901/udp/224.1.100.36:11111$LR•IPV4•56『线路21』 -广州综合,https://t.freetv.fun/live/yan-zhou-zong-he-2.m3u8$LR•IPV4•56『线路22』 -广州综合,http://qjrhc.jydjd.top:2911/udp/224.1.100.35:11111$LR•IPV4•56『线路23』 -广州综合,http://dns.yiandrive.com:15907/gztv/zhonghe$LR•IPV4•56『线路24』 -广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-24.ctv$LR•IPV4•56『线路25』 -广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-8.ctv$LR•IPV4•56『线路26』 -广州综合,http://120.77.205.62:8087/rtp/239.253.43.71:5146$LR•IPV4•56『线路27』 -广州综合,http://120.77.205.62:8087/rtp/239.253.43.66:5146$LR•IPV4•56『线路28』 -广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-30.ctv$LR•IPV4•56『线路29』 -广州综合,https://t.freetv.fun/live/yan-zhou-zong-he-9.m3u8$LR•IPV4•56『线路30』 -广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-13.ctv$LR•IPV4•56『线路31』 -广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-16.ctv$LR•IPV4•56『线路32』 -广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-4.ctv$LR•IPV4•56『线路33』 -广州综合,http://1.94.31.214/live/live9/channel/js/k-web/PLTV/ku9/js/gztv.js?id=zonghes$LR•IPV4•56『线路34』 -广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-1.m3u8$LR•IPV4•56『线路35』 -广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-2.m3u8$LR•IPV4•56『线路36』 -广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-31.ctv$LR•IPV4•56『线路37』 -广州综合,http://180.143.83.48:8181/tsfile/live/0115_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•56『线路38』 -广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-5.ctv$LR•IPV4•56『线路39』 -广州综合,https://tencentplaygsm.gztv.com/live/zonghes.m3u8?txTime=6594e9b7&txSecret=adb23b34fb694750ac8b8ff14a21a424$LR•IPV4•56『线路40』 -广州综合,https://tencentplay.gztv.com/live/zonghes.m3u8?txSecret=e381ab098841a0badbf7e11f24143cf7&txTime=18e6ff43701$LR•IPV4•56『线路41』 -广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-9.ctv$LR•IPV4•56『线路42』 -广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-22.ctv$LR•IPV4•56『线路43』 -广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-25.ctv$LR•IPV4•56『线路44』 -广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-12.ctv$LR•IPV4•56『线路45』 -广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-23.ctv$LR•IPV4•56『线路46』 -广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-21.ctv$LR•IPV4•56『线路47』 -广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-10.m3u8$LR•IPV4•56『线路48』 -广州综合,http://119.32.12.32:2901/udp/224.1.100.36:11111$LR•IPV4•56『线路49』 -广州综合,https://tencentplay.gztv.com/live/zonghes.m3u8?txSecret=439b0fd2cf766b363c93a59cbcbe1370&txTime=18d00acf488$LR•IPV4•56『线路50』 -广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-6.m3u8$LR•IPV4•56『线路51』 -广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-11.ctv$LR•IPV4•56『线路52』 -广州综合,https://t.freetv.fun/live/yan-zhou-zong-he-5.m3u8$LR•IPV4•56『线路53』 -广州综合,http://r.jdshipin.com/snhya$LR•IPV4•56『线路54』 -广州综合,http://tencentplay.gztv.com/live/zonghes.m3u8?txSecret=c8dbe86d6f86eb1a21999ab479fd5667&txTime=18d3c4690e8$LR•IPV4•56『线路55』 +广州综合,http://tencentplay.gztv.com/live/zonghes.m3u8?txSecret=c8dbe86d6f86eb1a21999ab479fd5667&txTime=18d3c4690e8$LR•IPV4•56『线路1』 +广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-15.ctv$LR•IPV4•56『线路2』 +广州综合,https://tencentplay.gztv.com/live/zonghes.m3u8?txSecret=f0147ae6453a80f5989f382368b72aad&txTime=18d00acf487$LR•IPV4•56『线路3』 +广州综合,https://t.freetv.fun/live/yan-zhou-zong-he-7.m3u8$LR•IPV4•56『线路4』 +广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-3.ctv$LR•IPV4•56『线路5』 +广州综合,https://t.freetv.fun/live/yan-zhou-zong-he.php$LR•IPV4•56『线路6』 +广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-19.ctv$LR•IPV4•56『线路7』 +广州综合,http://r.jdshipin.com/iR6Gq$LR•IPV4•56『线路8』 +广州综合,https://t.freetv.fun/live/yan-zhou-zong-he-1.m3u8$LR•IPV4•56『线路9』 +广州综合,https://t.freetv.fun/live/yan-zhou-zong-he-3.m3u8$LR•IPV4•56『线路10』 +广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-17.ctv$LR•IPV4•56『线路11』 +广州综合,http://180.142.144.54:8181/tsfile/live/0115_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•56『线路12』 +广州综合,https://tencentplaygsm.gztv.com/live/zonghes.m3u8?txTime=659a5111&txSecret=36b95cb955327d8262812e0e4f772aa5$LR•IPV4•56『线路13』 +广州综合,https://t.freetv.fun/live/yan-zhou-zong-he-8.m3u8$LR•IPV4•56『线路14』 +广州综合,http://125.89.163.44:8888/udp/239.253.43.71:5146$LR•IPV4•56『线路15』 +广州综合,https://tencentplay.gztv.com/live/zonghes.m3u8?txSecret=5d7708684007fcea395caff98369084c&txTime=19019c37743$LR•IPV4•56『线路16』 +广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-29.ctv$LR•IPV4•56『线路17』 +广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-14.ctv$LR•IPV4•56『线路18』 +广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-27.ctv$LR•IPV4•56『线路19』 +广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-26.ctv$LR•IPV4•56『线路20』 +广州综合,http://qjrhc.jydjd.top:2911/udp/224.1.100.36:11111$LR•IPV4•56『线路21』 +广州综合,http://119.32.12.17:2901/udp/224.1.100.36:11111$LR•IPV4•56『线路22』 +广州综合,https://t.freetv.fun/live/yan-zhou-zong-he-2.m3u8$LR•IPV4•56『线路23』 +广州综合,http://qjrhc.jydjd.top:2911/udp/224.1.100.35:11111$LR•IPV4•56『线路24』 +广州综合,http://dns.yiandrive.com:15907/gztv/zhonghe$LR•IPV4•56『线路25』 +广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-24.ctv$LR•IPV4•56『线路26』 +广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-8.ctv$LR•IPV4•56『线路27』 +广州综合,http://120.77.205.62:8087/rtp/239.253.43.71:5146$LR•IPV4•56『线路28』 +广州综合,http://120.77.205.62:8087/rtp/239.253.43.66:5146$LR•IPV4•56『线路29』 +广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-30.ctv$LR•IPV4•56『线路30』 +广州综合,https://t.freetv.fun/live/yan-zhou-zong-he-9.m3u8$LR•IPV4•56『线路31』 +广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-13.ctv$LR•IPV4•56『线路32』 +广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-16.ctv$LR•IPV4•56『线路33』 +广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-4.ctv$LR•IPV4•56『线路34』 +广州综合,http://1.94.31.214/live/live9/channel/js/k-web/PLTV/ku9/js/gztv.js?id=zonghes$LR•IPV4•56『线路35』 +广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-1.m3u8$LR•IPV4•56『线路36』 +广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-2.m3u8$LR•IPV4•56『线路37』 +广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-31.ctv$LR•IPV4•56『线路38』 +广州综合,http://180.143.83.48:8181/tsfile/live/0115_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•56『线路39』 +广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-5.ctv$LR•IPV4•56『线路40』 +广州综合,https://tencentplaygsm.gztv.com/live/zonghes.m3u8?txTime=6594e9b7&txSecret=adb23b34fb694750ac8b8ff14a21a424$LR•IPV4•56『线路41』 +广州综合,https://tencentplay.gztv.com/live/zonghes.m3u8?txSecret=e381ab098841a0badbf7e11f24143cf7&txTime=18e6ff43701$LR•IPV4•56『线路42』 +广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-9.ctv$LR•IPV4•56『线路43』 +广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-22.ctv$LR•IPV4•56『线路44』 +广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-25.ctv$LR•IPV4•56『线路45』 +广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-12.ctv$LR•IPV4•56『线路46』 +广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-23.ctv$LR•IPV4•56『线路47』 +广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-21.ctv$LR•IPV4•56『线路48』 +广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-10.m3u8$LR•IPV4•56『线路49』 +广州综合,http://119.32.12.32:2901/udp/224.1.100.36:11111$LR•IPV4•56『线路50』 +广州综合,https://tencentplay.gztv.com/live/zonghes.m3u8?txSecret=439b0fd2cf766b363c93a59cbcbe1370&txTime=18d00acf488$LR•IPV4•56『线路51』 +广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-6.m3u8$LR•IPV4•56『线路52』 +广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-11.ctv$LR•IPV4•56『线路53』 +广州综合,https://t.freetv.fun/live/yan-zhou-zong-he-5.m3u8$LR•IPV4•56『线路54』 +广州综合,http://r.jdshipin.com/snhya$LR•IPV4•56『线路55』 广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-18.ctv$LR•IPV4•56『线路56』 -广州新闻,https://t.freetv.fun/live/yan-zhou-xin-wen-4.php$LR•IPV4•41『线路1』 -广州新闻,https://stream1.freetv.fun/yan-zhou-xin-wen-10.ctv$LR•IPV4•41『线路2』 -广州新闻,https://tencentplay.gztv.com/live/xinwen.m3u8?txSecret=6f73647cae387d01a3c2132074132a83&txTime=18d00acf487$LR•IPV4•41『线路3』 -广州新闻,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=9924&tk=a0c4f6cfaba3$LR•IPV4•41『线路4』 -广州新闻,https://stream1.freetv.fun/yan-zhou-xin-wen-23.ctv$LR•IPV4•41『线路5』 -广州新闻,https://stream1.freetv.fun/yan-zhou-xin-wen-7.ctv$LR•IPV4•41『线路6』 -广州新闻,https://stream1.freetv.fun/yan-zhou-xin-wen-25.ctv$LR•IPV4•41『线路7』 -广州新闻,https://stream1.freetv.fun/yan-zhou-xin-wen-19.ctv$LR•IPV4•41『线路8』 -广州新闻,https://stream1.freetv.fun/yan-zhou-xin-wen-21.ctv$LR•IPV4•41『线路9』 -广州新闻,https://stream1.freetv.fun/yan-zhou-xin-wen-20.ctv$LR•IPV4•41『线路10』 -广州新闻,http://125.89.163.44:8888/udp/239.253.43.72:5146$LR•IPV4•41『线路11』 -广州新闻,https://t.freetv.fun/live/yan-zhou-xin-wen.m3u8$LR•IPV4•41『线路12』 -广州新闻,https://stream1.freetv.fun/yan-zhou-xin-wen-2.ctv$LR•IPV4•41『线路13』 -广州新闻,https://stream1.freetv.fun/yan-zhou-xin-wen-6.ctv$LR•IPV4•41『线路14』 -广州新闻,https://stream1.freetv.fun/yan-zhou-xin-wen-8.m3u8$LR•IPV4•41『线路15』 -广州新闻,https://stream1.freetv.fun/yan-zhou-xin-wen-13.ctv$LR•IPV4•41『线路16』 -广州新闻,https://t.freetv.fun/live/yan-zhou-xin-wen-2.m3u8$LR•IPV4•41『线路17』 -广州新闻,http://tencentplay.gztv.com/live/xinwen.m3u8?txSecret=d2c2db0b598c02ec1b5623728434d367&txTime=18d57929bd3$LR•IPV4•41『线路18』 +广州新闻,http://tencentplay.gztv.com/live/xinwen.m3u8?txSecret=d2c2db0b598c02ec1b5623728434d367&txTime=18d57929bd3$LR•IPV4•41『线路1』 +广州新闻,https://t.freetv.fun/live/yan-zhou-xin-wen-4.php$LR•IPV4•41『线路2』 +广州新闻,https://stream1.freetv.fun/yan-zhou-xin-wen-10.ctv$LR•IPV4•41『线路3』 +广州新闻,https://tencentplay.gztv.com/live/xinwen.m3u8?txSecret=6f73647cae387d01a3c2132074132a83&txTime=18d00acf487$LR•IPV4•41『线路4』 +广州新闻,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=9924&tk=a0c4f6cfaba3$LR•IPV4•41『线路5』 +广州新闻,https://stream1.freetv.fun/yan-zhou-xin-wen-23.ctv$LR•IPV4•41『线路6』 +广州新闻,https://stream1.freetv.fun/yan-zhou-xin-wen-7.ctv$LR•IPV4•41『线路7』 +广州新闻,https://stream1.freetv.fun/yan-zhou-xin-wen-25.ctv$LR•IPV4•41『线路8』 +广州新闻,https://stream1.freetv.fun/yan-zhou-xin-wen-19.ctv$LR•IPV4•41『线路9』 +广州新闻,https://stream1.freetv.fun/yan-zhou-xin-wen-21.ctv$LR•IPV4•41『线路10』 +广州新闻,https://stream1.freetv.fun/yan-zhou-xin-wen-20.ctv$LR•IPV4•41『线路11』 +广州新闻,http://125.89.163.44:8888/udp/239.253.43.72:5146$LR•IPV4•41『线路12』 +广州新闻,https://t.freetv.fun/live/yan-zhou-xin-wen.m3u8$LR•IPV4•41『线路13』 +广州新闻,https://stream1.freetv.fun/yan-zhou-xin-wen-2.ctv$LR•IPV4•41『线路14』 +广州新闻,https://stream1.freetv.fun/yan-zhou-xin-wen-6.ctv$LR•IPV4•41『线路15』 +广州新闻,https://stream1.freetv.fun/yan-zhou-xin-wen-8.m3u8$LR•IPV4•41『线路16』 +广州新闻,https://stream1.freetv.fun/yan-zhou-xin-wen-13.ctv$LR•IPV4•41『线路17』 +广州新闻,https://t.freetv.fun/live/yan-zhou-xin-wen-2.m3u8$LR•IPV4•41『线路18』 广州新闻,https://stream1.freetv.fun/yan-zhou-xin-wen-11.m3u8$LR•IPV4•41『线路19』 广州新闻,https://stream1.freetv.fun/yan-zhou-xin-wen-15.ctv$LR•IPV4•41『线路20』 广州新闻,https://stream1.freetv.fun/yan-zhou-xin-wen-26.ctv$LR•IPV4•41『线路21』 @@ -3171,25 +3166,25 @@ NewTV哒啵赛事,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLiv 广州影视,https://stream1.freetv.fun/yan-zhou-ying-shi-10.ctv$LR•IPV4•40『线路39』 广州影视,https://stream1.freetv.fun/yan-zhou-ying-shi-12.ctv$LR•IPV4•40『线路40』 广州法治,http://tencentplay.gztv.com/live/fazhi.m3u8?txSecret=3e84cd8eba844b5dc2150612295c7a52&txTime=18d578f4493$LR•IPV4 -广州竞赛,https://stream1.freetv.fun/yan-zhou-jing-sai-7.ctv$LR•IPV4•54『线路1』 -广州竞赛,https://stream1.freetv.fun/yan-zhou-jing-sai-31.ctv$LR•IPV4•54『线路2』 -广州竞赛,http://125.89.163.44:8888/udp/239.253.43.75:5146$LR•IPV4•54『线路3』 -广州竞赛,https://stream1.freetv.fun/yan-zhou-jing-sai-11.m3u8$LR•IPV4•54『线路4』 -广州竞赛,https://tencentplaygsm.gztv.com/live/jingsai.m3u8?txTime=6594e9c9&txSecret=66dc779a3a36272e652238dd37624bbf$LR•IPV4•54『线路5』 -广州竞赛,https://stream1.freetv.fun/yan-zhou-jing-sai-29.ctv$LR•IPV4•54『线路6』 -广州竞赛,https://stream1.freetv.fun/yan-zhou-jing-sai-21.ctv$LR•IPV4•54『线路7』 -广州竞赛,https://stream1.freetv.fun/yan-zhou-jing-sai-12.m3u8$LR•IPV4•54『线路8』 -广州竞赛,https://stream1.freetv.fun/yan-zhou-jing-sai-16.ctv$LR•IPV4•54『线路9』 -广州竞赛,https://stream1.freetv.fun/yan-zhou-jing-sai-15.ctv$LR•IPV4•54『线路10』 -广州竞赛,https://stream1.freetv.fun/yan-zhou-jing-sai-32.ctv$LR•IPV4•54『线路11』 -广州竞赛,https://stream1.freetv.fun/yan-zhou-jing-sai-38.ctv$LR•IPV4•54『线路12』 -广州竞赛,https://stream1.freetv.fun/yan-zhou-jing-sai-3.ctv$LR•IPV4•54『线路13』 -广州竞赛,https://stream1.freetv.fun/yan-zhou-jing-sai-33.ctv$LR•IPV4•54『线路14』 -广州竞赛,http://qjrhc.jydjd.top:2911/udp/224.1.100.105:11111$LR•IPV4•54『线路15』 -广州竞赛,http://nn.7x9d.cn/地方台8563/gsw.php?id=gzjs$LR•IPV4•54『线路16』 -广州竞赛,https://tencentplay.gztv.com/live/jingsai.m3u8?txSecret=49c8041461997c7a97dbcc3c7fd11b4f&txTime=18d00acf487$LR•IPV4•54『线路17』 -广州竞赛,https://stream1.freetv.fun/yan-zhou-jing-sai-9.ctv$LR•IPV4•54『线路18』 -广州竞赛,http://8.138.7.223/tv/gzjs.m3u8$LR•IPV4•54『线路19』 +广州竞赛,http://8.138.7.223/tv/gzjs.m3u8$LR•IPV4•54『线路1』 +广州竞赛,https://stream1.freetv.fun/yan-zhou-jing-sai-7.ctv$LR•IPV4•54『线路2』 +广州竞赛,https://stream1.freetv.fun/yan-zhou-jing-sai-31.ctv$LR•IPV4•54『线路3』 +广州竞赛,http://125.89.163.44:8888/udp/239.253.43.75:5146$LR•IPV4•54『线路4』 +广州竞赛,https://stream1.freetv.fun/yan-zhou-jing-sai-11.m3u8$LR•IPV4•54『线路5』 +广州竞赛,https://tencentplaygsm.gztv.com/live/jingsai.m3u8?txTime=6594e9c9&txSecret=66dc779a3a36272e652238dd37624bbf$LR•IPV4•54『线路6』 +广州竞赛,https://stream1.freetv.fun/yan-zhou-jing-sai-29.ctv$LR•IPV4•54『线路7』 +广州竞赛,https://stream1.freetv.fun/yan-zhou-jing-sai-21.ctv$LR•IPV4•54『线路8』 +广州竞赛,https://stream1.freetv.fun/yan-zhou-jing-sai-12.m3u8$LR•IPV4•54『线路9』 +广州竞赛,https://stream1.freetv.fun/yan-zhou-jing-sai-16.ctv$LR•IPV4•54『线路10』 +广州竞赛,https://stream1.freetv.fun/yan-zhou-jing-sai-15.ctv$LR•IPV4•54『线路11』 +广州竞赛,https://stream1.freetv.fun/yan-zhou-jing-sai-32.ctv$LR•IPV4•54『线路12』 +广州竞赛,https://stream1.freetv.fun/yan-zhou-jing-sai-38.ctv$LR•IPV4•54『线路13』 +广州竞赛,https://stream1.freetv.fun/yan-zhou-jing-sai-3.ctv$LR•IPV4•54『线路14』 +广州竞赛,https://stream1.freetv.fun/yan-zhou-jing-sai-33.ctv$LR•IPV4•54『线路15』 +广州竞赛,http://qjrhc.jydjd.top:2911/udp/224.1.100.105:11111$LR•IPV4•54『线路16』 +广州竞赛,http://nn.7x9d.cn/地方台8563/gsw.php?id=gzjs$LR•IPV4•54『线路17』 +广州竞赛,https://tencentplay.gztv.com/live/jingsai.m3u8?txSecret=49c8041461997c7a97dbcc3c7fd11b4f&txTime=18d00acf487$LR•IPV4•54『线路18』 +广州竞赛,https://stream1.freetv.fun/yan-zhou-jing-sai-9.ctv$LR•IPV4•54『线路19』 广州竞赛,https://tencentplaygsm.gztv.com/live/jingsai.m3u8?txTime=659a5124&txSecret=72dcf9be1f18b8cbb1d96df34dc9a2a9$LR•IPV4•54『线路20』 广州竞赛,https://stream1.freetv.fun/yan-zhou-jing-sai-37.m3u8$LR•IPV4•54『线路21』 广州竞赛,http://119.32.12.32:2901/udp/224.1.100.105:11111$LR•IPV4•54『线路22』 @@ -3259,13 +3254,13 @@ NewTV哒啵赛事,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLiv 江门侨乡生活,http://1.94.31.214/live/live9/channel/js/k-web/PLTV/ku9/js/shenzhen.js?QUN=酷9-JS交流群424765458&id=jmqxsh$LR•IPV4•4『线路2』 江门侨乡生活,http://120.77.205.62:8087/rtp/239.77.0.196:5146$LR•IPV4•4『线路3』 江门侨乡生活,http://125.89.163.44:8888/udp/239.77.0.202:5146$LR•IPV4•4『线路4』 -河源综合,https://tmpstream.hyrtv.cn/xwzh/sd/live.m3u8$LR•IPV4•5『线路1』 -河源综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8947&tk=a0c4f6cfaba3$LR•IPV4•5『线路2』 -河源综合,http://125.89.163.44:8888/udp/239.253.43.213:5146$LR•IPV4•5『线路3』 -河源综合,http://120.234.5.28:6000/udp/239.21.0.48:3532$LR•IPV4•5『线路4』 -河源综合,https://tmpstream.hyrtv.cn/xwzh/sd/live.m3u8?_upt=f767206b1671099007$LR•IPV4•5『线路5』 -河源公共,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5263&tk=a0c4f6cfaba3$LR•IPV4•6『线路1』 -河源公共,http://tmpstream.hyrtv.cn/hygg/sd/live.m3u8$LR•IPV4•6『线路2』 +河源综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8947&tk=a0c4f6cfaba3$LR•IPV4•5『线路1』 +河源综合,http://125.89.163.44:8888/udp/239.253.43.213:5146$LR•IPV4•5『线路2』 +河源综合,http://120.234.5.28:6000/udp/239.21.0.48:3532$LR•IPV4•5『线路3』 +河源综合,https://tmpstream.hyrtv.cn/xwzh/sd/live.m3u8?_upt=f767206b1671099007$LR•IPV4•5『线路4』 +河源综合,https://tmpstream.hyrtv.cn/xwzh/sd/live.m3u8$LR•IPV4•5『线路5』 +河源公共,http://tmpstream.hyrtv.cn/hygg/sd/live.m3u8$LR•IPV4•6『线路1』 +河源公共,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5263&tk=a0c4f6cfaba3$LR•IPV4•6『线路2』 河源公共,https://tmpstream.hyrtv.cn/hygg/sd/live.m3u8$LR•IPV4•6『线路3』 河源公共,http://120.234.5.28:6000/udp/239.21.0.49:3536$LR•IPV4•6『线路4』 河源公共,http://125.89.163.44:8888/udp/239.253.43.214:5146$LR•IPV4•6『线路5』 @@ -3474,50 +3469,50 @@ NewTV哒啵赛事,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLiv 上海外语,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2446&tk=e640d0a1bf70$LR•IPV4•7『线路5』 上海外语,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1734&tk=b53028476470$LR•IPV4•7『线路6』 上海外语,http://111.22.153.159:35455/itv/2000000002000000001.m3u8?cdn=hnbblive$LR•IPV4•7『线路7』 -五星体育,http://223.110.245.147/ott.js.chinamobile.com/PLTV/3/224/3221226799/index.m3u8$LR•IPV4•44『线路1』 +五星体育,http://8.138.7.223/tv/shtv.php?id=wxty$LR•IPV4•44『线路1』 五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-4.m3u8$LR•IPV4•44『线路2』 五星体育,https://hls-gateway.vpstv.net/streams/636980.m3u8$LR•IPV4•44『线路3』 五星体育,https://t.freetv.fun/live/wu-xing-ti-yu-1.m3u8$LR•IPV4•44『线路4』 五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-13.ctv$LR•IPV4•44『线路5』 五星体育,http://home.wwang.pw:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•44『线路6』 -五星体育,http://8.138.7.223/tv/shtv.php?id=wxty$LR•IPV4•44『线路7』 -五星体育,http://api2.52tb.xyz/info?id=375&token=20230120rdbtgv$LR•IPV4•44『线路8』 -五星体育,https://other.ottiptv.cc/wxty.m3u8$LR•IPV4•44『线路9』 -五星体育,http://36.105.100.208:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•44『线路10』 -五星体育,https://migu.188766.xyz/?migutoken=ed5a02a3b87f3dcc808d4b733daf5cf9&id=%E4%BA%94%E6%98%9F%E4%BD%93%E8%82%B2&pp=1$LR•IPV4•44『线路11』 -五星体育,http://live.xmcdn.com/live/57/64.m3u8$LR•IPV4•44『线路12』 -五星体育,https://t.freetv.fun/live/wu-xing-ti-yu-2.m3u8$LR•IPV4•44『线路13』 -五星体育,https://zby.130519.xyz/PLTV/11/224/3221225732/index.m3u8$LR•IPV4•44『线路14』 -五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-2.m3u8$LR•IPV4•44『线路15』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-11.m3u8$LR•IPV4•44『线路16』 -五星体育,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=wxtyhd$LR•IPV4•44『线路17』 -五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-7.m3u8$LR•IPV4•44『线路18』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-15.m3u8$LR•IPV4•44『线路19』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-10.m3u8$LR•IPV4•44『线路20』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-7.m3u8$LR•IPV4•44『线路21』 -五星体育,http://101.35.240.114:88/live.php?id=五星体育$LR•IPV4•44『线路22』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-13.m3u8$LR•IPV4•44『线路23』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-14.m3u8$LR•IPV4•44『线路24』 -五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-10.m3u8$LR•IPV4•44『线路25』 -五星体育,http://3501776.xyz:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•44『线路26』 -五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-8.m3u8$LR•IPV4•44『线路27』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-12.m3u8$LR•IPV4•44『线路28』 -五星体育,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4759&tk=7d4ad8f156e3$LR•IPV4•44『线路29』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-3.m3u8$LR•IPV4•44『线路30』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-2.m3u8$LR•IPV4•44『线路31』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-5.m3u8$LR•IPV4•44『线路32』 -五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-3.m3u8$LR•IPV4•44『线路33』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-1.m3u8$LR•IPV4•44『线路34』 -五星体育,http://bp-livetytv.bestv.cn/ch/bestvwxty.m3u8$LR•IPV4•44『线路35』 -五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-6.m3u8$LR•IPV4•44『线路36』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-6.m3u8$LR•IPV4•44『线路37』 -五星体育,https://t.freetv.fun/live/wu-xing-ti-yu-4.m3u8$LR•IPV4•44『线路38』 -五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-1.m3u8$LR•IPV4•44『线路39』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-9.m3u8$LR•IPV4•44『线路40』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-8.m3u8$LR•IPV4•44『线路41』 -五星体育,https://t.freetv.fun/live/wu-xing-ti-yu-6.m3u8$LR•IPV4•44『线路42』 -五星体育,https://t.freetv.fun/live/wu-xing-ti-yu.m3u8$LR•IPV4•44『线路43』 -五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-14.m3u8$LR•IPV4•44『线路44』 +五星体育,http://api2.52tb.xyz/info?id=375&token=20230120rdbtgv$LR•IPV4•44『线路7』 +五星体育,https://other.ottiptv.cc/wxty.m3u8$LR•IPV4•44『线路8』 +五星体育,http://36.105.100.208:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•44『线路9』 +五星体育,https://migu.188766.xyz/?migutoken=ed5a02a3b87f3dcc808d4b733daf5cf9&id=%E4%BA%94%E6%98%9F%E4%BD%93%E8%82%B2&pp=1$LR•IPV4•44『线路10』 +五星体育,http://live.xmcdn.com/live/57/64.m3u8$LR•IPV4•44『线路11』 +五星体育,https://t.freetv.fun/live/wu-xing-ti-yu-2.m3u8$LR•IPV4•44『线路12』 +五星体育,https://zby.130519.xyz/PLTV/11/224/3221225732/index.m3u8$LR•IPV4•44『线路13』 +五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-2.m3u8$LR•IPV4•44『线路14』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-11.m3u8$LR•IPV4•44『线路15』 +五星体育,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=wxtyhd$LR•IPV4•44『线路16』 +五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-7.m3u8$LR•IPV4•44『线路17』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-15.m3u8$LR•IPV4•44『线路18』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-10.m3u8$LR•IPV4•44『线路19』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-7.m3u8$LR•IPV4•44『线路20』 +五星体育,http://101.35.240.114:88/live.php?id=五星体育$LR•IPV4•44『线路21』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-13.m3u8$LR•IPV4•44『线路22』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-14.m3u8$LR•IPV4•44『线路23』 +五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-10.m3u8$LR•IPV4•44『线路24』 +五星体育,http://3501776.xyz:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•44『线路25』 +五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-8.m3u8$LR•IPV4•44『线路26』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-12.m3u8$LR•IPV4•44『线路27』 +五星体育,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4759&tk=7d4ad8f156e3$LR•IPV4•44『线路28』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-3.m3u8$LR•IPV4•44『线路29』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-2.m3u8$LR•IPV4•44『线路30』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-5.m3u8$LR•IPV4•44『线路31』 +五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-3.m3u8$LR•IPV4•44『线路32』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-1.m3u8$LR•IPV4•44『线路33』 +五星体育,http://bp-livetytv.bestv.cn/ch/bestvwxty.m3u8$LR•IPV4•44『线路34』 +五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-6.m3u8$LR•IPV4•44『线路35』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-6.m3u8$LR•IPV4•44『线路36』 +五星体育,https://t.freetv.fun/live/wu-xing-ti-yu-4.m3u8$LR•IPV4•44『线路37』 +五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-1.m3u8$LR•IPV4•44『线路38』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-9.m3u8$LR•IPV4•44『线路39』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-8.m3u8$LR•IPV4•44『线路40』 +五星体育,https://t.freetv.fun/live/wu-xing-ti-yu-6.m3u8$LR•IPV4•44『线路41』 +五星体育,https://t.freetv.fun/live/wu-xing-ti-yu.m3u8$LR•IPV4•44『线路42』 +五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-14.m3u8$LR•IPV4•44『线路43』 +五星体育,http://223.110.245.147/ott.js.chinamobile.com/PLTV/3/224/3221226799/index.m3u8$LR•IPV4•44『线路44』 东方影视,http://111.22.153.159:35455/itv/5000000010000032212.m3u8?cdn=bestzb$LR•IPV4•33『线路1』 东方影视,https://www.freetv.top/migu/617290047.m3u8?migutoken=86c02ad0875d5cc49d77bcc8bdb628f2c9d508ffc323b964a03c8f92dde4afafa0345cf5a8fefbdf915c748e3d11c6c18e27ae1e21a609cec31a45e6c437db26a7a243625f9cf35c271171a22c$LR•IPV4•33『线路2』 东方影视,https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-5.m3u8$LR•IPV4•33『线路3』 @@ -3561,222 +3556,222 @@ NewTV哒啵赛事,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLiv 东方财经,https://zby.130519.xyz/PLTV/11/224/3221226134/index.m3u8$LR•IPV4•10『线路8』 东方财经,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4946&tk=97475bb89d45$LR•IPV4•10『线路9』 东方财经,http://111.22.153.159:35455/itv/5000000007000010003.m3u8?cdn=bestzb$LR•IPV4•10『线路10』 -第一财经,https://zby.130519.xyz/PLTV/11/224/3221225737/index.m3u8$LR•IPV4•53『线路1』 -第一财经,https://stream1.freetv.fun/ipv6-di-yi-cai-jing-11.m3u8$LR•IPV4•53『线路2』 -第一财经,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4663&tk=f6cc1e0a0e1a$LR•IPV4•53『线路3』 -第一财经,https://stream1.freetv.fun/di-yi-cai-jing-13.m3u8$LR•IPV4•53『线路4』 -第一财经,http://a1live.livecdn.yicai.com/live/radio_tv.m3u8$LR•IPV4•53『线路5』 -第一财经,https://mgtv.ottiptv.cc/migu/608780988.m3u8?migutoken=0c7df30d952e5d120406d3eb259cd5e26ec6aa86037008719de147cc6fbc34e877c3e3d7b9617267f35521bdddc4c5995e6fc0583816a5df1bfe19814868525e736733676761a4b2d4db618e84$LR•IPV4•53『线路6』 -第一财经,http://116.52.173.34:1234/608780988$LR•IPV4•53『线路7』 -第一财经,https://stream1.freetv.fun/ipv6-di-yi-cai-jing-4.m3u8$LR•IPV4•53『线路8』 -第一财经,https://www.freetv.top/migu/608780988.m3u8?migutoken=62e21890acbd9928d0be0b4eae9f5e32e1879604b785ee7ce8751d5001a9ff431d7714025aa03d48a2b190ff214e5115dcb6ba455c3d26b1db0f5b3cb49c5967429ff3b1fe8e96e87cc6146543$LR•IPV4•53『线路9』 -第一财经,https://www.freetv.top/migu/608780988.m3u8?migutoken=94882e783c75b9369ca6a018f97fe3a3c0018f9da123958e316bb810ef22e907f0672a7d63496e5cb5041eb125b1f1ee6996ac856b0c0c9828348878b8a4101384b9a851fb1dea60a7fafeea35$LR•IPV4•53『线路10』 -第一财经,https://satellitepull.cnr.cn/live/wx32dycjgb/playlist.m3u8$LR•IPV4•53『线路11』 -第一财经,https://stream1.freetv.fun/di-yi-cai-jing-9.m3u8$LR•IPV4•53『线路12』 -第一财经,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0771&tk=a0c4f6cfaba3$LR•IPV4•53『线路13』 -第一财经,https://stream1.freetv.fun/ipv6-di-yi-cai-jing-7.m3u8$LR•IPV4•53『线路14』 -第一财经,https://stream1.freetv.fun/ipv6-di-yi-cai-jing-3.m3u8$LR•IPV4•53『线路15』 -第一财经,http://t.061899.xyz/tl/tl.php?id=dycj$LR•IPV4•53『线路16』 -第一财经,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4810&tk=23a9aca1f79f$LR•IPV4•53『线路17』 -第一财经,https://t.freetv.fun/live/di-yi-cai-jing-2.m3u8$LR•IPV4•53『线路18』 -第一财经,https://stream1.freetv.fun/di-yi-cai-jing-12.m3u8$LR•IPV4•53『线路19』 -第一财经,https://stream1.freetv.fun/ipv6-di-yi-cai-jing-8.m3u8$LR•IPV4•53『线路20』 -第一财经,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=7436&tk=b53028476470$LR•IPV4•53『线路21』 -第一财经,https://stream1.freetv.fun/di-yi-cai-jing-3.m3u8$LR•IPV4•53『线路22』 -第一财经,https://migu.188766.xyz/?migutoken=20bb1a06124bd6ea328162fe9605882d&id=dycj&type=sz$LR•IPV4•53『线路23』 -第一财经,http://111.228.4.117:6789/migu720p.php?id=608780988$LR•IPV4•53『线路24』 -第一财经,http://hlsztemgsplive.miguvideo.com:8080/wd_r1/2018/bestv/dycj/1000/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=699212&netType=0&sid=2201008312&pid=2028597139×tamp=20260710040230&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=608780988&ParentNodeID=-99&assertID=2201008312&client_ip=171.8.79.254&SecurityKey=20260710040230&promotionId=&mvid=2201008312&mcid=500020&playurlVersion=WX-A1-9.6.1.6-SNAPSHOT&userid=&jmhm=&videocodec=h264&appCode=miguvideo_android&bean=mgspad&tid=android&conFee=0&encrypt=493b7c6bd3118c23e9193cc29cda9b1e&sv=10004&ct=android$LR•IPV4•53『线路25』 -第一财经,https://stream1.freetv.fun/di-yi-cai-jing-10.m3u8$LR•IPV4•53『线路26』 -第一财经,http://115.190.247.176:1111/608780988$LR•IPV4•53『线路27』 -第一财经,http://gslbmgsplive.miguvideo.com/wd_r1/2018/bestv/dycj/1000/index.m3u8?msisdn=2025091908013429b62173a5e24f8ea1f310d5ed32e792&mdspid=&spid=699212&netType=0&sid=2201008312&pid=2028597139×tamp=20250919080134&Channel_ID=0116_2600000900-99000-201600010010027&ProgramID=608780988&ParentNodeID=-99&assertID=2201008312&client_ip=106.13.250.88&SecurityKey=20250919080134&promotionId=&mvid=2201008312&mcid=500020&playurlVersion=WX-A1-8.9.1-RELEASE&userid=&jmhm=&videocodec=h264&bean=mgspad&tid=android&conFee=0&puData=6c828d22c926cc843970f3f1c7455bea&ddCalcu=a6eceb815285804d72c21cf932f60c7c9834$LR•IPV4•53『线路28』 -第一财经,https://stream1.freetv.fun/ipv6-di-yi-cai-jing-1.ctv$LR•IPV4•53『线路29』 -第一财经,http://8.138.7.223/tv/shtv.php?id=dycj$LR•IPV4•53『线路30』 -第一财经,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8321&tk=e640d0a1bf70$LR•IPV4•53『线路31』 -第一财经,http://live.xmcdn.com/live/56/64.m3u8$LR•IPV4•53『线路32』 -第一财经,http://123.113.205.253:3000/608780988$LR•IPV4•53『线路33』 -第一财经,https://t.freetv.fun/live/di-yi-cai-jing.m3u8$LR•IPV4•53『线路34』 -第一财经,http://43.251.226.89:8080/play/59.m3u8$LR•IPV4•53『线路35』 -第一财经,https://stream1.freetv.fun/di-yi-cai-jing-5.m3u8$LR•IPV4•53『线路36』 -第一财经,http://101.43.145.141:12002/itv/5000000010000027146.m3u8?cdn=bestzb$LR•IPV4•53『线路37』 -第一财经,https://stream1.freetv.fun/di-yi-cai-jing-7.m3u8$LR•IPV4•53『线路38』 -第一财经,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0917&tk=2aca1ad9a849$LR•IPV4•53『线路39』 -第一财经,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4640&tk=e503191f8e20$LR•IPV4•53『线路40』 -第一财经,https://hls-gateway.vpstv.net/streams/708851.m3u8$LR•IPV4•53『线路41』 -第一财经,https://migu.188766.xyz/?migutoken=48076f7837fe4f59da0dbd882998f16d&id=dycj&type=sz$LR•IPV4•53『线路42』 -第一财经,https://stream1.freetv.fun/di-yi-cai-jing-6.ctv$LR•IPV4•53『线路43』 -第一财经,http://hlszymgsplive.miguvideo.com:8080/wd_r1/2018/bestv/dycj/1000/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=699212&netType=0&sid=2201008312&pid=2028597139×tamp=20260710080234&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=608780988&ParentNodeID=-99&assertID=2201008312&client_ip=171.8.79.254&SecurityKey=20260710080234&promotionId=&mvid=2201008312&mcid=500020&playurlVersion=WX-A1-9.6.1.6-SNAPSHOT&userid=&jmhm=&videocodec=h264&appCode=miguvideo_android&bean=mgspad&tid=android&conFee=0&encrypt=9abd614b3d575e67ef0ea504124ae44c&sv=10004&ct=android$LR•IPV4•53『线路44』 -第一财经,https://stream1.freetv.fun/ipv6-di-yi-cai-jing-5.m3u8$LR•IPV4•53『线路45』 -第一财经,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8820&tk=e640d0a1bf70$LR•IPV4•53『线路46』 -第一财经,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6806&tk=a0c4f6cfaba3$LR•IPV4•53『线路47』 -第一财经,https://stream1.freetv.fun/ipv6-di-yi-cai-jing-6.m3u8$LR•IPV4•53『线路48』 -第一财经,http://bp-livetytv.bestv.cn/ch/bestvdycj.m3u8$LR•IPV4•53『线路49』 -第一财经,http://ls.qingting.fm/live/276.m3u8$LR•IPV4•53『线路50』 -第一财经,http://47.104.178.59:3566/608780988$LR•IPV4•53『线路51』 -第一财经,http://satellitepull.cnr.cn/live/wx32dycjgb/playlist.m3u8$LR•IPV4•53『线路52』 +第一财经,https://satellitepull.cnr.cn/live/wx32dycjgb/playlist.m3u8$LR•IPV4•53『线路1』 +第一财经,http://satellitepull.cnr.cn/live/wx32dycjgb/playlist.m3u8$LR•IPV4•53『线路2』 +第一财经,https://zby.130519.xyz/PLTV/11/224/3221225737/index.m3u8$LR•IPV4•53『线路3』 +第一财经,https://stream1.freetv.fun/ipv6-di-yi-cai-jing-11.m3u8$LR•IPV4•53『线路4』 +第一财经,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4663&tk=f6cc1e0a0e1a$LR•IPV4•53『线路5』 +第一财经,https://stream1.freetv.fun/di-yi-cai-jing-13.m3u8$LR•IPV4•53『线路6』 +第一财经,http://a1live.livecdn.yicai.com/live/radio_tv.m3u8$LR•IPV4•53『线路7』 +第一财经,https://mgtv.ottiptv.cc/migu/608780988.m3u8?migutoken=0c7df30d952e5d120406d3eb259cd5e26ec6aa86037008719de147cc6fbc34e877c3e3d7b9617267f35521bdddc4c5995e6fc0583816a5df1bfe19814868525e736733676761a4b2d4db618e84$LR•IPV4•53『线路8』 +第一财经,http://116.52.173.34:1234/608780988$LR•IPV4•53『线路9』 +第一财经,https://stream1.freetv.fun/ipv6-di-yi-cai-jing-4.m3u8$LR•IPV4•53『线路10』 +第一财经,https://www.freetv.top/migu/608780988.m3u8?migutoken=62e21890acbd9928d0be0b4eae9f5e32e1879604b785ee7ce8751d5001a9ff431d7714025aa03d48a2b190ff214e5115dcb6ba455c3d26b1db0f5b3cb49c5967429ff3b1fe8e96e87cc6146543$LR•IPV4•53『线路11』 +第一财经,https://www.freetv.top/migu/608780988.m3u8?migutoken=94882e783c75b9369ca6a018f97fe3a3c0018f9da123958e316bb810ef22e907f0672a7d63496e5cb5041eb125b1f1ee6996ac856b0c0c9828348878b8a4101384b9a851fb1dea60a7fafeea35$LR•IPV4•53『线路12』 +第一财经,https://stream1.freetv.fun/di-yi-cai-jing-9.m3u8$LR•IPV4•53『线路13』 +第一财经,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0771&tk=a0c4f6cfaba3$LR•IPV4•53『线路14』 +第一财经,https://stream1.freetv.fun/ipv6-di-yi-cai-jing-7.m3u8$LR•IPV4•53『线路15』 +第一财经,https://stream1.freetv.fun/ipv6-di-yi-cai-jing-3.m3u8$LR•IPV4•53『线路16』 +第一财经,http://t.061899.xyz/tl/tl.php?id=dycj$LR•IPV4•53『线路17』 +第一财经,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4810&tk=23a9aca1f79f$LR•IPV4•53『线路18』 +第一财经,https://t.freetv.fun/live/di-yi-cai-jing-2.m3u8$LR•IPV4•53『线路19』 +第一财经,https://stream1.freetv.fun/di-yi-cai-jing-12.m3u8$LR•IPV4•53『线路20』 +第一财经,https://stream1.freetv.fun/ipv6-di-yi-cai-jing-8.m3u8$LR•IPV4•53『线路21』 +第一财经,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=7436&tk=b53028476470$LR•IPV4•53『线路22』 +第一财经,https://stream1.freetv.fun/di-yi-cai-jing-3.m3u8$LR•IPV4•53『线路23』 +第一财经,https://migu.188766.xyz/?migutoken=20bb1a06124bd6ea328162fe9605882d&id=dycj&type=sz$LR•IPV4•53『线路24』 +第一财经,http://111.228.4.117:6789/migu720p.php?id=608780988$LR•IPV4•53『线路25』 +第一财经,http://hlsztemgsplive.miguvideo.com:8080/wd_r1/2018/bestv/dycj/1000/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=699212&netType=0&sid=2201008312&pid=2028597139×tamp=20260710040230&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=608780988&ParentNodeID=-99&assertID=2201008312&client_ip=171.8.79.254&SecurityKey=20260710040230&promotionId=&mvid=2201008312&mcid=500020&playurlVersion=WX-A1-9.6.1.6-SNAPSHOT&userid=&jmhm=&videocodec=h264&appCode=miguvideo_android&bean=mgspad&tid=android&conFee=0&encrypt=493b7c6bd3118c23e9193cc29cda9b1e&sv=10004&ct=android$LR•IPV4•53『线路26』 +第一财经,https://stream1.freetv.fun/di-yi-cai-jing-10.m3u8$LR•IPV4•53『线路27』 +第一财经,http://115.190.247.176:1111/608780988$LR•IPV4•53『线路28』 +第一财经,http://gslbmgsplive.miguvideo.com/wd_r1/2018/bestv/dycj/1000/index.m3u8?msisdn=2025091908013429b62173a5e24f8ea1f310d5ed32e792&mdspid=&spid=699212&netType=0&sid=2201008312&pid=2028597139×tamp=20250919080134&Channel_ID=0116_2600000900-99000-201600010010027&ProgramID=608780988&ParentNodeID=-99&assertID=2201008312&client_ip=106.13.250.88&SecurityKey=20250919080134&promotionId=&mvid=2201008312&mcid=500020&playurlVersion=WX-A1-8.9.1-RELEASE&userid=&jmhm=&videocodec=h264&bean=mgspad&tid=android&conFee=0&puData=6c828d22c926cc843970f3f1c7455bea&ddCalcu=a6eceb815285804d72c21cf932f60c7c9834$LR•IPV4•53『线路29』 +第一财经,https://stream1.freetv.fun/ipv6-di-yi-cai-jing-1.ctv$LR•IPV4•53『线路30』 +第一财经,http://8.138.7.223/tv/shtv.php?id=dycj$LR•IPV4•53『线路31』 +第一财经,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8321&tk=e640d0a1bf70$LR•IPV4•53『线路32』 +第一财经,http://live.xmcdn.com/live/56/64.m3u8$LR•IPV4•53『线路33』 +第一财经,http://123.113.205.253:3000/608780988$LR•IPV4•53『线路34』 +第一财经,https://t.freetv.fun/live/di-yi-cai-jing.m3u8$LR•IPV4•53『线路35』 +第一财经,http://43.251.226.89:8080/play/59.m3u8$LR•IPV4•53『线路36』 +第一财经,https://stream1.freetv.fun/di-yi-cai-jing-5.m3u8$LR•IPV4•53『线路37』 +第一财经,http://101.43.145.141:12002/itv/5000000010000027146.m3u8?cdn=bestzb$LR•IPV4•53『线路38』 +第一财经,https://stream1.freetv.fun/di-yi-cai-jing-7.m3u8$LR•IPV4•53『线路39』 +第一财经,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0917&tk=2aca1ad9a849$LR•IPV4•53『线路40』 +第一财经,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4640&tk=e503191f8e20$LR•IPV4•53『线路41』 +第一财经,https://hls-gateway.vpstv.net/streams/708851.m3u8$LR•IPV4•53『线路42』 +第一财经,https://migu.188766.xyz/?migutoken=48076f7837fe4f59da0dbd882998f16d&id=dycj&type=sz$LR•IPV4•53『线路43』 +第一财经,https://stream1.freetv.fun/di-yi-cai-jing-6.ctv$LR•IPV4•53『线路44』 +第一财经,http://hlszymgsplive.miguvideo.com:8080/wd_r1/2018/bestv/dycj/1000/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=699212&netType=0&sid=2201008312&pid=2028597139×tamp=20260710080234&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=608780988&ParentNodeID=-99&assertID=2201008312&client_ip=171.8.79.254&SecurityKey=20260710080234&promotionId=&mvid=2201008312&mcid=500020&playurlVersion=WX-A1-9.6.1.6-SNAPSHOT&userid=&jmhm=&videocodec=h264&appCode=miguvideo_android&bean=mgspad&tid=android&conFee=0&encrypt=9abd614b3d575e67ef0ea504124ae44c&sv=10004&ct=android$LR•IPV4•53『线路45』 +第一财经,https://stream1.freetv.fun/ipv6-di-yi-cai-jing-5.m3u8$LR•IPV4•53『线路46』 +第一财经,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8820&tk=e640d0a1bf70$LR•IPV4•53『线路47』 +第一财经,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6806&tk=a0c4f6cfaba3$LR•IPV4•53『线路48』 +第一财经,https://stream1.freetv.fun/ipv6-di-yi-cai-jing-6.m3u8$LR•IPV4•53『线路49』 +第一财经,http://bp-livetytv.bestv.cn/ch/bestvdycj.m3u8$LR•IPV4•53『线路50』 +第一财经,http://ls.qingting.fm/live/276.m3u8$LR•IPV4•53『线路51』 +第一财经,http://47.104.178.59:3566/608780988$LR•IPV4•53『线路52』 第一财经,https://stream1.freetv.fun/di-yi-cai-jing-2.m3u8$LR•IPV4•53『线路53』 -上海纪实,http://iptv.huuc.edu.cn/hls/docuchina.m3u8$LR•IPV4•10『线路1』 -上海纪实,https://stream1.freetv.fun/ipv6-shang-hai-ji-shi-ren-wen-5.m3u8$LR•IPV4•10『线路2』 -上海纪实,https://stream1.freetv.fun/ipv6-shang-hai-ji-shi-ren-wen-1.m3u8$LR•IPV4•10『线路3』 -上海纪实,https://stream1.freetv.fun/ipv6-shang-hai-ji-shi-ren-wen-2.m3u8$LR•IPV4•10『线路4』 +上海纪实,https://stream1.freetv.fun/ipv6-shang-hai-ji-shi-ren-wen-5.m3u8$LR•IPV4•10『线路1』 +上海纪实,https://stream1.freetv.fun/ipv6-shang-hai-ji-shi-ren-wen-1.m3u8$LR•IPV4•10『线路2』 +上海纪实,https://stream1.freetv.fun/ipv6-shang-hai-ji-shi-ren-wen-2.m3u8$LR•IPV4•10『线路3』 +上海纪实,http://iptv.huuc.edu.cn/hls/docuchina.m3u8$LR•IPV4•10『线路4』 上海纪实,https://hls-gateway.vpstv.net/streams/709570.m3u8$LR•IPV4•10『线路5』 上海纪实,http://13457610200.8866.org:2018/live/上海纪实/index.m3u8$LR•IPV4•10『线路6』 上海纪实,https://stream1.freetv.fun/ipv6-shang-hai-ji-shi-ren-wen-3.m3u8$LR•IPV4•10『线路7』 上海纪实,http://wouu.net:9977/udp/239.93.1.137:5140$LR•IPV4•10『线路8』 上海纪实,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5196&tk=23a9aca1f79f$LR•IPV4•10『线路9』 上海纪实,https://stream1.freetv.fun/shang-hai-ji-shi-ren-wen-1.m3u8$LR•IPV4•10『线路10』 -新闻综合,https://stream2.jlntv.cn/baicheng1/sd/live.m3u8$LR•IPV4•119『线路1』 -新闻综合,http://live.cztv.cc:85/live/xwpd.m3u8$LR•IPV4•119『线路2』 -新闻综合,http://117.156.28.119/270000001111/1110000001/index.m3u8$LR•IPV4•119『线路3』 -新闻综合,http://pili-live-hls.hebitv.com/hebi/hebi.m3u8$LR•IPV4•119『线路4』 -新闻综合,https://stream2.jlntv.cn/naxw/sd/live.m3u8$LR•IPV4•119『线路5』 -新闻综合,http://uni6rtmp.tulix.tv:1935/vbstv/vbsabr.smil/chunklist_w439903609_b1228800.m3u8$LR•IPV4•119『线路6』 -新闻综合,http://221.5.213.4:30000/1111.m3u8$LR•IPV4•119『线路7』 -新闻综合,https://stream2.jlntv.cn/jilin1/sd/live.m3u8$LR•IPV4•119『线路8』 -新闻综合,http://30515.hlsplay.aodianyun.com/lms_30515/tv_channel_239.m3u8$LR•IPV4•119『线路9』 -新闻综合,https://stream2.jlntv.cn/sptv/sd/live.m3u8$LR•IPV4•119『线路10』 -新闻综合,http://live.ahsz.tv/video/s10001-szzh/index.m3u8$LR•IPV4•119『线路11』 -新闻综合,http://guangshui.live.tempsource.cjyun.org/videotmp/s10146-GSXW.m3u8$LR•IPV4•119『线路12』 -新闻综合,https://stream2.jlntv.cn/jlyb/sd/live.m3u8$LR•IPV4•119『线路13』 -新闻综合,https://stream2.jlntv.cn/sytv/sd/live.m3u8$LR•IPV4•119『线路14』 -新闻综合,http://222.179.155.21:1935/ch1.m3u8$LR•IPV4•119『线路15』 -新闻综合,http://117.172.215.250:8083/videos/live/35/39/GQVbrgob5CGJM/GQVbrgob5CGJM.m3u8$LR•IPV4•119『线路16』 -新闻综合,http://220.180.110.101:8083/videos/live/36/57/hwEHU4UVQ1Iv5/hwEHU4UVQ1Iv5.m3u8$LR•IPV4•119『线路17』 -新闻综合,http://live.hnxttv.com:9601/live/xwzh/800K/tzwj_video.m3u8$LR•IPV4•119『线路18』 -新闻综合,http://stream.bzcm.net/2/sd/live.m3u8$LR•IPV4•119『线路19』 -新闻综合,http://117.156.28.119/270000001111/1110000145/index.m3u8$LR•IPV4•119『线路20』 -新闻综合,https://stream2.jlntv.cn/baishan1/sd/live.m3u8$LR•IPV4•119『线路21』 -新闻综合,http://live1.wuhubtv.com/channel1/sd/live.m3u8$LR•IPV4•119『线路22』 -新闻综合,http://palive.patv123.com:8091/live/xwpd_800K.m3u8$LR•IPV4•119『线路23』 -新闻综合,https://stream2.jlntv.cn/liaoyuan1/sd/live.m3u8$LR•IPV4•119『线路24』 -新闻综合,http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8?zzhed#http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8$LR•IPV4•119『线路25』 -新闻综合,https://stream1.freetv.fun/ji-nan-xin-wen-zong-he-7.m3u8$LR•IPV4•119『线路26』 -新闻综合,https://stream1.freetv.fun/ipv6-ji-nan-xin-wen-zong-he-8.m3u8$LR•IPV4•119『线路27』 -新闻综合,http://stream.zztvzd.com/1/sd/live.m3u8$LR•IPV4•119『线路28』 -新闻综合,http://stream.zztvzd.com/1/sd/live.m3u8?shandd$LR•IPV4•119『线路29』 -新闻综合,https://stream1.freetv.fun/ipv6-wei-fang-xin-wen-zong-he-1.m3u8$LR•IPV4•119『线路30』 -新闻综合,https://stream1.freetv.fun/ipv6-wei-fang-xin-wen-zong-he-2.m3u8$LR•IPV4•119『线路31』 -新闻综合,http://live.yantaitv.cn/live/3e81a8879da44c5dadf3bd9c10468e1c/9b776d420ee4438199b7657c8eb88f07-1.m3u8$LR•IPV4•119『线路32』 -新闻综合,http://live.hznet.tv:1935/live/live1/500k/tzwj_video.m3u8$LR•IPV4•119『线路33』 -新闻综合,http://live.hznet.tv:1935/live/live1/500K/tzwj_video.m3u8?shandd$LR•IPV4•119『线路34』 -新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-3.m3u8$LR•IPV4•119『线路35』 -新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-15.m3u8$LR•IPV4•119『线路36』 -新闻综合,http://150.158.112.123/公众号~玉玉软件库/mg.php?id=shxwzh$LR•IPV4•119『线路37』 -新闻综合,http://tvpull.dxhmt.cn:9081/tv/10326-1.m3u8$LR•IPV4•119『线路38』 -新闻综合,http://hlszymgsplive.miguvideo.com:8080/migu/kailu/xwzhhd265/54/20200407/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=600697&netType=0&sid=5910022325&pid=2028597139×tamp=20260710040229&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=651632657&ParentNodeID=-99&assertID=5910022325&client_ip=171.8.79.254&SecurityKey=20260710040229&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=a2ca4a1f84e955c93f655153a2b187c0&sv=10004&ct=android$LR•IPV4•119『线路39』 -新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2441&tk=e640d0a1bf70$LR•IPV4•119『线路40』 -新闻综合,https://stream1.freetv.fun/ipv6-xin-wen-zong-he-7.m3u8$LR•IPV4•119『线路41』 -新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-2.m3u8$LR•IPV4•119『线路42』 -新闻综合,https://mgtv.ottiptv.cc/migu/651632657.m3u8?migutoken=348c9164063c2b1df215dd2fa7cd92cb119d8a335ae0edfb5d615a6c714e71b669eee2f5ff1730afa92af7ca41d0aa96e3a280d7e5f2069eb8a3b852f3ebc270147489d7c8bfb08a7c4b9c4d80$LR•IPV4•119『线路43』 -新闻综合,http://bp-livetytv.bestv.cn/ch/bestvxwzh.m3u8$LR•IPV4•119『线路44』 -新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-14.m3u8$LR•IPV4•119『线路45』 -新闻综合,http://t.061899.xyz/tl/tl.php?id=shxwzh$LR•IPV4•119『线路46』 -新闻综合,https://stream1.freetv.fun/ipv6-xin-wen-zong-he-14.m3u8$LR•IPV4•119『线路47』 -新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-9.m3u8$LR•IPV4•119『线路48』 -新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0708&tk=23a9aca1f79f$LR•IPV4•119『线路49』 -新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0610&tk=b53028476470$LR•IPV4•119『线路50』 -新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2865&tk=f6cc1e0a0e1a$LR•IPV4•119『线路51』 -新闻综合,https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-6.m3u8$LR•IPV4•119『线路52』 -新闻综合,https://www.freetv.top/migu/651632657.m3u8?migutoken=b4a3e55048f55ec1c8fc5b509fbdf32f2dc5d255f5f218e79e84ca9a87fb9f2239927cb11b448f18285b50b81b4cd50a1354e9be5a3283375e85372798c3f3eb3ad60adf45eb5615f68eb4825f$LR•IPV4•119『线路53』 -新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5985&tk=e640d0a1bf70$LR•IPV4•119『线路54』 -新闻综合,https://m3u8-channel.lytv.tv/nmip-media/channellive/channel111841/playlist.m3u8$LR•IPV4•119『线路55』 -新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-10.m3u8$LR•IPV4•119『线路56』 -新闻综合,http://live.wanyuannews.com/wytv/hd/live.m3u8?zsicd$LR•IPV4•119『线路57』 -新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-3.m3u8$LR•IPV4•119『线路58』 -新闻综合,https://xatv-yt.xiancity.cn/live/1/index.m3u8$LR•IPV4•119『线路59』 -新闻综合,http://123.113.205.253:3000/651632657$LR•IPV4•119『线路60』 -新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-2.m3u8$LR•IPV4•119『线路61』 -新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-1.ctv$LR•IPV4•119『线路62』 -新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-12.m3u8$LR•IPV4•119『线路63』 -新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2394&tk=e503191f8e20$LR•IPV4•119『线路64』 -新闻综合,https://t.freetv.fun/live/shang-hai-xin-wen-zong-he-4.m3u8$LR•IPV4•119『线路65』 -新闻综合,http://115.190.247.176:1111/651632657$LR•IPV4•119『线路66』 -新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2810&tk=a0c4f6cfaba3$LR•IPV4•119『线路67』 -新闻综合,https://www.freetv.top/migu/651632657.m3u8?migutoken=5ae42e8fda034ab7bf5171dafa0043e70cd12bcd716940c4572fde52ea92b0785f16f1bdbce4c83f5e075b250fe95668f19f8527dda57c27db24f95d412614d99c86a3a2d9341d88b5224b7068$LR•IPV4•119『线路68』 -新闻综合,https://hls-gateway.vpstv.net/streams/708847.m3u8$LR•IPV4•119『线路69』 -新闻综合,https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-7.m3u8$LR•IPV4•119『线路70』 -新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5599&tk=2aca1ad9a849$LR•IPV4•119『线路71』 -新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-1.m3u8$LR•IPV4•119『线路72』 -新闻综合,https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-3.m3u8$LR•IPV4•119『线路73』 -新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5014&tk=a0c4f6cfaba3$LR•IPV4•119『线路74』 -新闻综合,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•119『线路75』 -新闻综合,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•119『线路76』 -新闻综合,https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-2.m3u8$LR•IPV4•119『线路77』 -新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-11.ctv$LR•IPV4•119『线路78』 -新闻综合,https://m3u8channel.yunxya.com/nmip-media/channellive/channel100028/playlist.m3u8$LR•IPV4•119『线路79』 -新闻综合,http://111.228.4.117:6789/migu720p.php?id=651632657$LR•IPV4•119『线路80』 -新闻综合,https://zby.130519.xyz/PLTV/11/224/3221226136/index.m3u8$LR•IPV4•119『线路81』 -新闻综合,http://api3.52tb.xyz/info?id=371&token=20221127jxwhhemby$LR•IPV4•119『线路82』 -新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-5.m3u8$LR•IPV4•119『线路83』 -新闻综合,https://tvfile.scjgtv.cn:443/nmip-media/channellive/channel104126/playlist.m3u8"$LR•IPV4•119『线路84』 -新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-13.m3u8$LR•IPV4•119『线路85』 -新闻综合,http://mgsp-yx2.live.miguvideo.com:8088/migu/kailu/xwzhhd265/54/20200407/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=600697&netType=0&sid=5910022325&pid=2028597139×tamp=20260710080234&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=651632657&ParentNodeID=-99&assertID=5910022325&client_ip=171.8.79.254&SecurityKey=20260710080234&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=34511b5d9e559b32e1fcf280f128d445&sv=10004&ct=android$LR•IPV4•119『线路86』 -新闻综合,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•119『线路87』 -新闻综合,https://stream1.freetv.fun/ipv6-xin-wen-zong-he-10.m3u8$LR•IPV4•119『线路88』 -新闻综合,https://live.pzhkai.com/xwzhtl/sd/live.m3u8$LR•IPV4•119『线路89』 -新闻综合,https://qcfile.qcrmt.com/nmip-media/channellive/channel100933/playlist.m3u8$LR•IPV4•119『线路90』 -新闻综合,http://api2.52tb.xyz/info?id=371&token=20230218qkyjia$LR•IPV4•119『线路91』 -新闻综合,http://43.251.226.89:8080/play/57.m3u8$LR•IPV4•119『线路92』 -新闻综合,http://p2.vzan.com/slowlive/596867413819827251/live.m3u8$LR•IPV4•119『线路93』 -新闻综合,http://47.104.178.59:3566/651632657$LR•IPV4•119『线路94』 -新闻综合,https://cm-live.ntjoy.com/live/4f1.m3u8$LR•IPV4•119『线路95』 -新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-8.m3u8$LR•IPV4•119『线路96』 -新闻综合,http://116.52.173.34:1234/651632657$LR•IPV4•119『线路97』 -新闻综合,http://stream8.jlntv.cn/shulan/sd/live.m3u8?_upt=332db6421699196585$LR•IPV4•119『线路98』 -新闻综合,http://stream5.jlntv.cn/hn/sd/live.m3u8$LR•IPV4•119『线路99』 -新闻综合,http://pili-live-hls.ybcxjd.com/jdh-live/2108111201035597.m3u8?zsicd$LR•IPV4•119『线路100』 -新闻综合,http://live.spccmc.com:90/live/spxwzh.m3u8?zsicd$LR•IPV4•119『线路101』 -新闻综合,http://live.iwcmt.cn:90/live/zhxw.m3u8$LR•IPV4•119『线路102』 -新闻综合,http://live.jinchuanrmt.com:90/live/zhxw.m3u8?zsicd$LR•IPV4•119『线路103』 -新闻综合,https://play.yunxya.com/channellive/xinwen.m3u8$LR•IPV4•119『线路104』 -新闻综合,http://ls.qingting.fm/live/267.m3u8$LR•IPV4•119『线路105』 -新闻综合,http://hslive.hsnewsnet.com/lsdream/hve9Wjs/1000/live.m3u8$LR•IPV4•119『线路106』 -新闻综合,https://p2.vzan.com/slowlive/596867413819827251/live.m3u8?zbid=1725814272&tpid=1516989100&type=0$LR•IPV4•119『线路107』 -新闻综合,https://tntgjhjb.live.sxmty.com/live/hls/3a4585ac11ec4e1bb07b419101b370c3/baf63e2b313440c2a25d7859f9b73b05-1.m3u8?zshanxd$LR•IPV4•119『线路108』 -新闻综合,http://uzoiczhh.live.sxmty.com/live/hls/0d41f1480c4042d49927858f01fde707/53130407737b417b9a6259b57246bae3.m3u8?zshanxd$LR•IPV4•119『线路109』 -新闻综合,https://ls.qingting.fm/live/5043/64k.m3u8$LR•IPV4•119『线路110』 -新闻综合,http://liveout.btzx.com.cn/62ds9e/4nxdih.m3u8?fbl=$LR•IPV4•119『线路111』 -新闻综合,http://nklive.nbs.cn/hls/d511bc9d-a694-4453-b3a2-4fc842cc97a1/index.m3u8$LR•IPV4•119『线路112』 -新闻综合,http://cm-wshls.homecdn.com/live/2aa50.m3u8$LR•IPV4•119『线路113』 -新闻综合,http://ls.qingting.fm/live/23797.m3u8$LR•IPV4•119『线路114』 -新闻综合,https://play.kankanlive.com/live/1720583434627241.m3u8$LR•IPV4•119『线路115』 -新闻综合,https://ls.qingting.fm/live/5022100/64k.m3u8$LR•IPV4•119『线路116』 -新闻综合,https://liveout.xntv.tv/a65jur/96iln2.m3u8?zqinghd$LR•IPV4•119『线路117』 -新闻综合,http://live.qthnews.org.cn:1935/live/live1/800k/tzwj_video.m3u8$LR•IPV4•119『线路118』 -新闻综合,http://stream.hrbtv.net/xwzh/sd/live.m3u8?zheild$LR•IPV4•119『线路119』 +新闻综合,http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8?zzhed#http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8$LR•IPV4•119『线路1』 +新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-3.m3u8$LR•IPV4•119『线路2』 +新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-15.m3u8$LR•IPV4•119『线路3』 +新闻综合,http://150.158.112.123/公众号~玉玉软件库/mg.php?id=shxwzh$LR•IPV4•119『线路4』 +新闻综合,http://tvpull.dxhmt.cn:9081/tv/10326-1.m3u8$LR•IPV4•119『线路5』 +新闻综合,http://hlszymgsplive.miguvideo.com:8080/migu/kailu/xwzhhd265/54/20200407/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=600697&netType=0&sid=5910022325&pid=2028597139×tamp=20260710040229&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=651632657&ParentNodeID=-99&assertID=5910022325&client_ip=171.8.79.254&SecurityKey=20260710040229&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=a2ca4a1f84e955c93f655153a2b187c0&sv=10004&ct=android$LR•IPV4•119『线路6』 +新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2441&tk=e640d0a1bf70$LR•IPV4•119『线路7』 +新闻综合,https://stream1.freetv.fun/ipv6-xin-wen-zong-he-7.m3u8$LR•IPV4•119『线路8』 +新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-2.m3u8$LR•IPV4•119『线路9』 +新闻综合,https://mgtv.ottiptv.cc/migu/651632657.m3u8?migutoken=348c9164063c2b1df215dd2fa7cd92cb119d8a335ae0edfb5d615a6c714e71b669eee2f5ff1730afa92af7ca41d0aa96e3a280d7e5f2069eb8a3b852f3ebc270147489d7c8bfb08a7c4b9c4d80$LR•IPV4•119『线路10』 +新闻综合,http://bp-livetytv.bestv.cn/ch/bestvxwzh.m3u8$LR•IPV4•119『线路11』 +新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-14.m3u8$LR•IPV4•119『线路12』 +新闻综合,http://t.061899.xyz/tl/tl.php?id=shxwzh$LR•IPV4•119『线路13』 +新闻综合,https://stream1.freetv.fun/ipv6-xin-wen-zong-he-14.m3u8$LR•IPV4•119『线路14』 +新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-9.m3u8$LR•IPV4•119『线路15』 +新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0708&tk=23a9aca1f79f$LR•IPV4•119『线路16』 +新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0610&tk=b53028476470$LR•IPV4•119『线路17』 +新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2865&tk=f6cc1e0a0e1a$LR•IPV4•119『线路18』 +新闻综合,https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-6.m3u8$LR•IPV4•119『线路19』 +新闻综合,https://www.freetv.top/migu/651632657.m3u8?migutoken=b4a3e55048f55ec1c8fc5b509fbdf32f2dc5d255f5f218e79e84ca9a87fb9f2239927cb11b448f18285b50b81b4cd50a1354e9be5a3283375e85372798c3f3eb3ad60adf45eb5615f68eb4825f$LR•IPV4•119『线路20』 +新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5985&tk=e640d0a1bf70$LR•IPV4•119『线路21』 +新闻综合,https://m3u8-channel.lytv.tv/nmip-media/channellive/channel111841/playlist.m3u8$LR•IPV4•119『线路22』 +新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-10.m3u8$LR•IPV4•119『线路23』 +新闻综合,http://live.wanyuannews.com/wytv/hd/live.m3u8?zsicd$LR•IPV4•119『线路24』 +新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-3.m3u8$LR•IPV4•119『线路25』 +新闻综合,https://xatv-yt.xiancity.cn/live/1/index.m3u8$LR•IPV4•119『线路26』 +新闻综合,http://123.113.205.253:3000/651632657$LR•IPV4•119『线路27』 +新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-2.m3u8$LR•IPV4•119『线路28』 +新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-1.ctv$LR•IPV4•119『线路29』 +新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-12.m3u8$LR•IPV4•119『线路30』 +新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2394&tk=e503191f8e20$LR•IPV4•119『线路31』 +新闻综合,https://t.freetv.fun/live/shang-hai-xin-wen-zong-he-4.m3u8$LR•IPV4•119『线路32』 +新闻综合,http://115.190.247.176:1111/651632657$LR•IPV4•119『线路33』 +新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2810&tk=a0c4f6cfaba3$LR•IPV4•119『线路34』 +新闻综合,https://www.freetv.top/migu/651632657.m3u8?migutoken=5ae42e8fda034ab7bf5171dafa0043e70cd12bcd716940c4572fde52ea92b0785f16f1bdbce4c83f5e075b250fe95668f19f8527dda57c27db24f95d412614d99c86a3a2d9341d88b5224b7068$LR•IPV4•119『线路35』 +新闻综合,https://hls-gateway.vpstv.net/streams/708847.m3u8$LR•IPV4•119『线路36』 +新闻综合,https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-7.m3u8$LR•IPV4•119『线路37』 +新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5599&tk=2aca1ad9a849$LR•IPV4•119『线路38』 +新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-1.m3u8$LR•IPV4•119『线路39』 +新闻综合,https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-3.m3u8$LR•IPV4•119『线路40』 +新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5014&tk=a0c4f6cfaba3$LR•IPV4•119『线路41』 +新闻综合,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•119『线路42』 +新闻综合,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•119『线路43』 +新闻综合,https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-2.m3u8$LR•IPV4•119『线路44』 +新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-11.ctv$LR•IPV4•119『线路45』 +新闻综合,https://m3u8channel.yunxya.com/nmip-media/channellive/channel100028/playlist.m3u8$LR•IPV4•119『线路46』 +新闻综合,http://111.228.4.117:6789/migu720p.php?id=651632657$LR•IPV4•119『线路47』 +新闻综合,https://zby.130519.xyz/PLTV/11/224/3221226136/index.m3u8$LR•IPV4•119『线路48』 +新闻综合,http://api3.52tb.xyz/info?id=371&token=20221127jxwhhemby$LR•IPV4•119『线路49』 +新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-5.m3u8$LR•IPV4•119『线路50』 +新闻综合,https://tvfile.scjgtv.cn:443/nmip-media/channellive/channel104126/playlist.m3u8"$LR•IPV4•119『线路51』 +新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-13.m3u8$LR•IPV4•119『线路52』 +新闻综合,http://mgsp-yx2.live.miguvideo.com:8088/migu/kailu/xwzhhd265/54/20200407/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=600697&netType=0&sid=5910022325&pid=2028597139×tamp=20260710080234&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=651632657&ParentNodeID=-99&assertID=5910022325&client_ip=171.8.79.254&SecurityKey=20260710080234&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=34511b5d9e559b32e1fcf280f128d445&sv=10004&ct=android$LR•IPV4•119『线路53』 +新闻综合,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•119『线路54』 +新闻综合,https://stream1.freetv.fun/ipv6-xin-wen-zong-he-10.m3u8$LR•IPV4•119『线路55』 +新闻综合,https://live.pzhkai.com/xwzhtl/sd/live.m3u8$LR•IPV4•119『线路56』 +新闻综合,https://qcfile.qcrmt.com/nmip-media/channellive/channel100933/playlist.m3u8$LR•IPV4•119『线路57』 +新闻综合,http://api2.52tb.xyz/info?id=371&token=20230218qkyjia$LR•IPV4•119『线路58』 +新闻综合,http://43.251.226.89:8080/play/57.m3u8$LR•IPV4•119『线路59』 +新闻综合,http://p2.vzan.com/slowlive/596867413819827251/live.m3u8$LR•IPV4•119『线路60』 +新闻综合,http://47.104.178.59:3566/651632657$LR•IPV4•119『线路61』 +新闻综合,https://cm-live.ntjoy.com/live/4f1.m3u8$LR•IPV4•119『线路62』 +新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-8.m3u8$LR•IPV4•119『线路63』 +新闻综合,http://116.52.173.34:1234/651632657$LR•IPV4•119『线路64』 +新闻综合,http://stream8.jlntv.cn/shulan/sd/live.m3u8?_upt=332db6421699196585$LR•IPV4•119『线路65』 +新闻综合,http://stream5.jlntv.cn/hn/sd/live.m3u8$LR•IPV4•119『线路66』 +新闻综合,http://pili-live-hls.ybcxjd.com/jdh-live/2108111201035597.m3u8?zsicd$LR•IPV4•119『线路67』 +新闻综合,http://live.spccmc.com:90/live/spxwzh.m3u8?zsicd$LR•IPV4•119『线路68』 +新闻综合,http://live.iwcmt.cn:90/live/zhxw.m3u8$LR•IPV4•119『线路69』 +新闻综合,http://live.jinchuanrmt.com:90/live/zhxw.m3u8?zsicd$LR•IPV4•119『线路70』 +新闻综合,https://play.yunxya.com/channellive/xinwen.m3u8$LR•IPV4•119『线路71』 +新闻综合,http://ls.qingting.fm/live/267.m3u8$LR•IPV4•119『线路72』 +新闻综合,http://hslive.hsnewsnet.com/lsdream/hve9Wjs/1000/live.m3u8$LR•IPV4•119『线路73』 +新闻综合,https://p2.vzan.com/slowlive/596867413819827251/live.m3u8?zbid=1725814272&tpid=1516989100&type=0$LR•IPV4•119『线路74』 +新闻综合,https://tntgjhjb.live.sxmty.com/live/hls/3a4585ac11ec4e1bb07b419101b370c3/baf63e2b313440c2a25d7859f9b73b05-1.m3u8?zshanxd$LR•IPV4•119『线路75』 +新闻综合,http://uzoiczhh.live.sxmty.com/live/hls/0d41f1480c4042d49927858f01fde707/53130407737b417b9a6259b57246bae3.m3u8?zshanxd$LR•IPV4•119『线路76』 +新闻综合,https://ls.qingting.fm/live/5043/64k.m3u8$LR•IPV4•119『线路77』 +新闻综合,http://liveout.btzx.com.cn/62ds9e/4nxdih.m3u8?fbl=$LR•IPV4•119『线路78』 +新闻综合,http://nklive.nbs.cn/hls/d511bc9d-a694-4453-b3a2-4fc842cc97a1/index.m3u8$LR•IPV4•119『线路79』 +新闻综合,http://cm-wshls.homecdn.com/live/2aa50.m3u8$LR•IPV4•119『线路80』 +新闻综合,http://ls.qingting.fm/live/23797.m3u8$LR•IPV4•119『线路81』 +新闻综合,https://play.kankanlive.com/live/1720583434627241.m3u8$LR•IPV4•119『线路82』 +新闻综合,https://ls.qingting.fm/live/5022100/64k.m3u8$LR•IPV4•119『线路83』 +新闻综合,https://liveout.xntv.tv/a65jur/96iln2.m3u8?zqinghd$LR•IPV4•119『线路84』 +新闻综合,http://live.qthnews.org.cn:1935/live/live1/800k/tzwj_video.m3u8$LR•IPV4•119『线路85』 +新闻综合,http://stream.hrbtv.net/xwzh/sd/live.m3u8?zheild$LR•IPV4•119『线路86』 +新闻综合,https://stream1.freetv.fun/ji-nan-xin-wen-zong-he-7.m3u8$LR•IPV4•119『线路87』 +新闻综合,https://stream1.freetv.fun/ipv6-ji-nan-xin-wen-zong-he-8.m3u8$LR•IPV4•119『线路88』 +新闻综合,http://stream.zztvzd.com/1/sd/live.m3u8$LR•IPV4•119『线路89』 +新闻综合,http://stream.zztvzd.com/1/sd/live.m3u8?shandd$LR•IPV4•119『线路90』 +新闻综合,https://stream1.freetv.fun/ipv6-wei-fang-xin-wen-zong-he-1.m3u8$LR•IPV4•119『线路91』 +新闻综合,https://stream1.freetv.fun/ipv6-wei-fang-xin-wen-zong-he-2.m3u8$LR•IPV4•119『线路92』 +新闻综合,http://live.yantaitv.cn/live/3e81a8879da44c5dadf3bd9c10468e1c/9b776d420ee4438199b7657c8eb88f07-1.m3u8$LR•IPV4•119『线路93』 +新闻综合,http://live.hznet.tv:1935/live/live1/500k/tzwj_video.m3u8$LR•IPV4•119『线路94』 +新闻综合,http://live.hznet.tv:1935/live/live1/500K/tzwj_video.m3u8?shandd$LR•IPV4•119『线路95』 +新闻综合,https://stream2.jlntv.cn/baicheng1/sd/live.m3u8$LR•IPV4•119『线路96』 +新闻综合,http://live.cztv.cc:85/live/xwpd.m3u8$LR•IPV4•119『线路97』 +新闻综合,http://117.156.28.119/270000001111/1110000001/index.m3u8$LR•IPV4•119『线路98』 +新闻综合,http://pili-live-hls.hebitv.com/hebi/hebi.m3u8$LR•IPV4•119『线路99』 +新闻综合,https://stream2.jlntv.cn/naxw/sd/live.m3u8$LR•IPV4•119『线路100』 +新闻综合,http://uni6rtmp.tulix.tv:1935/vbstv/vbsabr.smil/chunklist_w439903609_b1228800.m3u8$LR•IPV4•119『线路101』 +新闻综合,http://221.5.213.4:30000/1111.m3u8$LR•IPV4•119『线路102』 +新闻综合,https://stream2.jlntv.cn/jilin1/sd/live.m3u8$LR•IPV4•119『线路103』 +新闻综合,http://30515.hlsplay.aodianyun.com/lms_30515/tv_channel_239.m3u8$LR•IPV4•119『线路104』 +新闻综合,https://stream2.jlntv.cn/sptv/sd/live.m3u8$LR•IPV4•119『线路105』 +新闻综合,http://live.ahsz.tv/video/s10001-szzh/index.m3u8$LR•IPV4•119『线路106』 +新闻综合,http://guangshui.live.tempsource.cjyun.org/videotmp/s10146-GSXW.m3u8$LR•IPV4•119『线路107』 +新闻综合,https://stream2.jlntv.cn/jlyb/sd/live.m3u8$LR•IPV4•119『线路108』 +新闻综合,https://stream2.jlntv.cn/sytv/sd/live.m3u8$LR•IPV4•119『线路109』 +新闻综合,http://222.179.155.21:1935/ch1.m3u8$LR•IPV4•119『线路110』 +新闻综合,http://117.172.215.250:8083/videos/live/35/39/GQVbrgob5CGJM/GQVbrgob5CGJM.m3u8$LR•IPV4•119『线路111』 +新闻综合,http://220.180.110.101:8083/videos/live/36/57/hwEHU4UVQ1Iv5/hwEHU4UVQ1Iv5.m3u8$LR•IPV4•119『线路112』 +新闻综合,http://live.hnxttv.com:9601/live/xwzh/800K/tzwj_video.m3u8$LR•IPV4•119『线路113』 +新闻综合,http://stream.bzcm.net/2/sd/live.m3u8$LR•IPV4•119『线路114』 +新闻综合,http://117.156.28.119/270000001111/1110000145/index.m3u8$LR•IPV4•119『线路115』 +新闻综合,https://stream2.jlntv.cn/baishan1/sd/live.m3u8$LR•IPV4•119『线路116』 +新闻综合,http://live1.wuhubtv.com/channel1/sd/live.m3u8$LR•IPV4•119『线路117』 +新闻综合,http://palive.patv123.com:8091/live/xwpd_800K.m3u8$LR•IPV4•119『线路118』 +新闻综合,https://stream2.jlntv.cn/liaoyuan1/sd/live.m3u8$LR•IPV4•119『线路119』 陕西,#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』 +西安新闻,http://112.46.105.20:8009/hls/28/index.m3u8$LR•IPV4•2『线路1』 +西安新闻,http://stream2.xiancity.cn/xatv1/playlist.m3u8$LR•IPV4•2『线路2』 山东,#genre# -山东少儿,http://livealone302.iqilu.com/iqilu/sepd.m3u8$LR•IPV4•16『线路1』 -山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-10.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-8.m3u8$LR•IPV4•16『线路4』 -山东少儿,http://58.57.40.22:9901/tsfile/live/1024_1.m3u8$LR•IPV4•16『线路5』 -山东少儿,http://111.14.181.15:9901/tsfile/live/1005_1.m3u8?key=tvbox6_com&playlive=1&authid=0$LR•IPV4•16『线路6』 -山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-9.m3u8$LR•IPV4•16『线路7』 -山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-6.m3u8$LR•IPV4•16『线路8』 -山东少儿,http://111.14.181.15:9901/tsfile/live/1005_1.m3u8$LR•IPV4•16『线路9』 -山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-5.m3u8$LR•IPV4•16『线路10』 -山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-1.m3u8$LR•IPV4•16『线路11』 -山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-2.m3u8$LR•IPV4•16『线路12』 -山东少儿,http://123.132.233.194:352/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路13』 -山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-4.m3u8$LR•IPV4•16『线路14』 -山东少儿,http://221.2.148.205:8154/tsfile/live/1007_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路15』 -山东少儿,http://123.129.70.178:9901/tsfile/live/1004_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路16』 -山东新闻,http://livealone302.iqilu.com/iqilu/ggpd.m3u8$LR•IPV4•12『线路1』 -山东新闻,http://live.xmcdn.com/live/1440/64.m3u8$LR•IPV4•12『线路2』 -山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-7.m3u8$LR•IPV4•12『线路3』 -山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-3.m3u8$LR•IPV4•12『线路4』 -山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-10.m3u8$LR•IPV4•12『线路5』 -山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-4.m3u8$LR•IPV4•12『线路6』 -山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-6.m3u8$LR•IPV4•12『线路7』 -山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-2.m3u8$LR•IPV4•12『线路8』 -山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-1.m3u8$LR•IPV4•12『线路9』 -山东新闻,http://221.2.148.205:8154/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路10』 -山东新闻,http://123.129.70.178:9901/tsfile/live/1000_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路11』 -山东新闻,http://ls.qingting.fm/live/60180.m3u8$LR•IPV4•12『线路12』 +山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-10.m3u8$LR•IPV4•16『线路1』 +山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-7.m3u8$LR•IPV4•16『线路2』 +山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-8.m3u8$LR•IPV4•16『线路3』 +山东少儿,http://58.57.40.22:9901/tsfile/live/1024_1.m3u8$LR•IPV4•16『线路4』 +山东少儿,http://111.14.181.15:9901/tsfile/live/1005_1.m3u8?key=tvbox6_com&playlive=1&authid=0$LR•IPV4•16『线路5』 +山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-9.m3u8$LR•IPV4•16『线路6』 +山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-6.m3u8$LR•IPV4•16『线路7』 +山东少儿,http://111.14.181.15:9901/tsfile/live/1005_1.m3u8$LR•IPV4•16『线路8』 +山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-5.m3u8$LR•IPV4•16『线路9』 +山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-1.m3u8$LR•IPV4•16『线路10』 +山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-2.m3u8$LR•IPV4•16『线路11』 +山东少儿,http://123.132.233.194:352/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路12』 +山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-4.m3u8$LR•IPV4•16『线路13』 +山东少儿,http://221.2.148.205:8154/tsfile/live/1007_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路14』 +山东少儿,http://123.129.70.178:9901/tsfile/live/1004_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路15』 +山东少儿,http://livealone302.iqilu.com/iqilu/sepd.m3u8$LR•IPV4•16『线路16』 +山东新闻,http://live.xmcdn.com/live/1440/64.m3u8$LR•IPV4•12『线路1』 +山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-7.m3u8$LR•IPV4•12『线路2』 +山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-3.m3u8$LR•IPV4•12『线路3』 +山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-10.m3u8$LR•IPV4•12『线路4』 +山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-4.m3u8$LR•IPV4•12『线路5』 +山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-6.m3u8$LR•IPV4•12『线路6』 +山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-2.m3u8$LR•IPV4•12『线路7』 +山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-1.m3u8$LR•IPV4•12『线路8』 +山东新闻,http://221.2.148.205:8154/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路9』 +山东新闻,http://123.129.70.178:9901/tsfile/live/1000_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路10』 +山东新闻,http://ls.qingting.fm/live/60180.m3u8$LR•IPV4•12『线路11』 +山东新闻,http://livealone302.iqilu.com/iqilu/ggpd.m3u8$LR•IPV4•12『线路12』 山东教育,https://test1.live.sdetv.com.cn/live/dianshizhibo/playlist.m3u8$LR•IPV4•22『线路1』 山东教育,https://migu.188766.xyz/?migutoken=1134813ab83db9f651ce86515f06b7c5&id=%E5%B1%B1%E4%B8%9C%E6%95%99%E8%82%B2&type=yy$LR•IPV4•22『线路2』 山东教育,http://76.5432123.xyz/杂项代理/学习强国.php?id=sdjy$LR•IPV4•22『线路3』 @@ -3799,48 +3794,48 @@ NewTV哒啵赛事,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLiv 山东教育,http://112.132.10.54:9901/tsfile/live/1018_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•22『线路20』 山东教育,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=7973&tk=a0c4f6cfaba3$LR•IPV4•22『线路21』 山东教育,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000004097&livemode=1&stbId=yu&mode=1&$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://123.130.84.106:8154/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路2』 -山东齐鲁,http://123.129.70.178:9901/tsfile/live/0019_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路3』 -山东齐鲁,http://221.2.148.205:8154/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路4』 -山东齐鲁,http://111.14.181.15:9901/tsfile/live/1000_1.m3u8?key=tvbox6_com&playlive=1&authid=0$LR•IPV4•10『线路5』 -山东齐鲁,http://123.132.233.194:352/tsfile/live/1019_1.m3u8$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://61.156.228.12:8154/tsfile/live/1001_1.m3u8$LR•IPV4•10『线路8』 -山东齐鲁,http://123.130.84.106:8154/tsfile/live/1001_1.m3u8$LR•IPV4•10『线路9』 -山东齐鲁,http://111.14.181.15:9901/tsfile/live/1000_1.m3u8$LR•IPV4•10『线路10』 -山东生活,http://livealone302.iqilu.com/iqilu/shpd.m3u8$LR•IPV4•7『线路1』 +山东农科,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://123.130.84.106:8154/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路1』 +山东齐鲁,http://123.129.70.178:9901/tsfile/live/0019_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路2』 +山东齐鲁,http://221.2.148.205: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?key=tvbox6_com&playlive=1&authid=0$LR•IPV4•10『线路4』 +山东齐鲁,http://123.132.233.194:352/tsfile/live/1019_1.m3u8$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://61.156.228.12:8154/tsfile/live/1001_1.m3u8$LR•IPV4•10『线路7』 +山东齐鲁,http://123.130.84.106:8154/tsfile/live/1001_1.m3u8$LR•IPV4•10『线路8』 +山东齐鲁,http://111.14.181.15:9901/tsfile/live/1000_1.m3u8$LR•IPV4•10『线路9』 +山东齐鲁,http://livealone302.iqilu.com/iqilu/qlpd.m3u8$LR•IPV4•10『线路10』 +山东生活,http://ls.qingting.fm/live/60260.m3u8$LR•IPV4•7『线路1』 山东生活,http://221.2.148.205:8154/tsfile/live/1005_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•7『线路2』 -山东生活,http://ls.qingting.fm/live/60260.m3u8$LR•IPV4•7『线路3』 -山东生活,http://58.57.40.22:9901/tsfile/live/1018_1.m3u8$LR•IPV4•7『线路4』 -山东生活,http://123.129.70.178:9901/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•7『线路5』 -山东生活,http://api3.52tb.xyz/info?id=527&token=20221127jxwhhemby$LR•IPV4•7『线路6』 -山东生活,http://live.xmcdn.com/live/802/64.m3u8$LR•IPV4•7『线路7』 -山东体育,http://livealone302.iqilu.com/iqilu/typd.m3u8$LR•IPV4•37『线路1』 -山东体育,http://123.129.70.178:9901/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•37『线路2』 -山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-4.m3u8$LR•IPV4•37『线路3』 -山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-9.m3u8$LR•IPV4•37『线路4』 -山东体育,http://123.132.233.194:352/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•37『线路5』 -山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-10.m3u8$LR•IPV4•37『线路6』 -山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-2.m3u8$LR•IPV4•37『线路7』 -山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-15.m3u8$LR•IPV4•37『线路8』 -山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-1.m3u8$LR•IPV4•37『线路9』 -山东体育,http://123.130.84.106:8154/tsfile/live/1006_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•37『线路10』 -山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-16.m3u8$LR•IPV4•37『线路11』 -山东体育,http://111.14.181.15:9901/tsfile/live/1022_1.m3u8?key=tvbox6_com&playlive=1&authid=0$LR•IPV4•37『线路12』 -山东体育,https://satellitepull.cnr.cn/live/wxsdtyxxgb/playlist.m3u8$LR•IPV4•37『线路13』 -山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-25.m3u8$LR•IPV4•37『线路14』 -山东体育,http://58.57.40.22:9901/tsfile/live/1020_1.m3u8$LR•IPV4•37『线路15』 -山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-8.m3u8$LR•IPV4•37『线路16』 -山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-14.m3u8$LR•IPV4•37『线路17』 -山东体育,http://221.2.148.205:8154/tsfile/live/1006_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•37『线路18』 -山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-3.m3u8$LR•IPV4•37『线路19』 -山东体育,http://live.xmcdn.com/live/805/64.m3u8$LR•IPV4•37『线路20』 -山东体育,http://61.156.228.12:8154/tsfile/live/1006_1.m3u8$LR•IPV4•37『线路21』 -山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-5.m3u8$LR•IPV4•37『线路22』 -山东体育,http://123.130.84.106:8154/tsfile/live/1006_1.m3u8$LR•IPV4•37『线路23』 +山东生活,http://58.57.40.22:9901/tsfile/live/1018_1.m3u8$LR•IPV4•7『线路3』 +山东生活,http://123.129.70.178:9901/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•7『线路4』 +山东生活,http://api3.52tb.xyz/info?id=527&token=20221127jxwhhemby$LR•IPV4•7『线路5』 +山东生活,http://live.xmcdn.com/live/802/64.m3u8$LR•IPV4•7『线路6』 +山东生活,http://livealone302.iqilu.com/iqilu/shpd.m3u8$LR•IPV4•7『线路7』 +山东体育,http://123.129.70.178:9901/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•37『线路1』 +山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-4.m3u8$LR•IPV4•37『线路2』 +山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-9.m3u8$LR•IPV4•37『线路3』 +山东体育,http://123.132.233.194:352/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•37『线路4』 +山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-10.m3u8$LR•IPV4•37『线路5』 +山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-2.m3u8$LR•IPV4•37『线路6』 +山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-15.m3u8$LR•IPV4•37『线路7』 +山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-1.m3u8$LR•IPV4•37『线路8』 +山东体育,http://123.130.84.106:8154/tsfile/live/1006_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•37『线路9』 +山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-16.m3u8$LR•IPV4•37『线路10』 +山东体育,http://111.14.181.15:9901/tsfile/live/1022_1.m3u8?key=tvbox6_com&playlive=1&authid=0$LR•IPV4•37『线路11』 +山东体育,https://satellitepull.cnr.cn/live/wxsdtyxxgb/playlist.m3u8$LR•IPV4•37『线路12』 +山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-25.m3u8$LR•IPV4•37『线路13』 +山东体育,http://58.57.40.22:9901/tsfile/live/1020_1.m3u8$LR•IPV4•37『线路14』 +山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-8.m3u8$LR•IPV4•37『线路15』 +山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-14.m3u8$LR•IPV4•37『线路16』 +山东体育,http://221.2.148.205:8154/tsfile/live/1006_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•37『线路17』 +山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-3.m3u8$LR•IPV4•37『线路18』 +山东体育,http://live.xmcdn.com/live/805/64.m3u8$LR•IPV4•37『线路19』 +山东体育,http://61.156.228.12:8154/tsfile/live/1006_1.m3u8$LR•IPV4•37『线路20』 +山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-5.m3u8$LR•IPV4•37『线路21』 +山东体育,http://123.130.84.106:8154/tsfile/live/1006_1.m3u8$LR•IPV4•37『线路22』 +山东体育,http://livealone302.iqilu.com/iqilu/typd.m3u8$LR•IPV4•37『线路23』 山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-7.m3u8$LR•IPV4•37『线路24』 山东体育,http://111.14.181.15:9901/tsfile/live/1022_1.m3u8$LR•IPV4•37『线路25』 山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-24.m3u8$LR•IPV4•37『线路26』 @@ -3855,12 +3850,12 @@ NewTV哒啵赛事,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLiv 山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-22.m3u8$LR•IPV4•37『线路35』 山东体育,http://satellitepull.cnr.cn/live/wxsdtyxxgb/playlist.m3u8$LR•IPV4•37『线路36』 山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-12.m3u8$LR•IPV4•37『线路37』 -山东综艺,http://livealone302.iqilu.com/iqilu/zypd.m3u8$LR•IPV4•6『线路1』 -山东综艺,http://123.132.233.194:352/tsfile/live/1000_1.m3u8$LR•IPV4•6『线路2』 -山东综艺,http://221.2.148.205:8154/tsfile/live/1003_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•6『线路3』 -山东综艺,http://58.57.40.22:9901/tsfile/live/1021_1.m3u8$LR•IPV4•6『线路4』 -山东综艺,http://123.129.70.178:9901/tsfile/live/1001_1.m3u8$LR•IPV4•6『线路5』 -山东综艺,http://111.14.181.15:9901/tsfile/live/1004_1.m3u8?key=tvbox6_com&playlive=1&authid=0$LR•IPV4•6『线路6』 +山东综艺,http://123.132.233.194:352/tsfile/live/1000_1.m3u8$LR•IPV4•6『线路1』 +山东综艺,http://221.2.148.205:8154/tsfile/live/1003_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•6『线路2』 +山东综艺,http://58.57.40.22:9901/tsfile/live/1021_1.m3u8$LR•IPV4•6『线路3』 +山东综艺,http://123.129.70.178:9901/tsfile/live/1001_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://livealone302.iqilu.com/iqilu/zypd.m3u8$LR•IPV4•6『线路6』 山东文旅,http://58.57.40.22:9901/tsfile/live/1023_1.m3u8$LR•IPV4•3『线路1』 山东文旅,http://60.209.125.254:352/tsfile/live/1004_1.m3u8?ace$LR•IPV4•3『线路2』 山东文旅,http://221.2.148.205:8154/tsfile/live/1004_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•3『线路3』 @@ -3881,96 +3876,96 @@ NewTV哒啵赛事,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLiv 港澳台,#genre# 凤凰中文,http://api.mg.itv888.cn:8080/hls/2f80047f91e/index.m3u8$LR•IPV4•17『线路1』 -凤凰中文,http://223.110.245.139/ott.js.chinamobile.com/PLTV/3/224/3221226922/index.m3u8$LR•IPV4•17『线路2』 -凤凰中文,http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•17『线路3』 -凤凰中文,http://218.206.193.218:8888/hls/66/index.m3u8$LR•IPV4•17『线路4』 -凤凰中文,https://k44991.kylintv.tv/live/pxna_iphone.m3u8$LR•IPV4•17『线路5』 -凤凰中文,http://tianhewan.top/ZIPP.php?url=http://211.72.65.236:8577/.m3u8$LR•IPV4•17『线路6』 -凤凰中文,http://146.56.153.245:20121/bysid/258$LR•IPV4•17『线路7』 -凤凰中文,http://e1.woc.iiiya.cn:8888/rtp/239.61.2.184:9092$LR•IPV4•17『线路8』 -凤凰中文,http://php.jdshipin.com/TVOD/iptv.php?id=fhzw$LR•IPV4•17『线路9』 -凤凰中文,http://122.117.71.103:8574/http/61.222.53.250:8078/hls/21/80/phoenixch.m3u8$LR•IPV4•17『线路10』 -凤凰中文,http://148.135.93.213:81/phenix.php?id=fhzw$LR•IPV4•17『线路11』 -凤凰中文,http://211.75.171.121:8577/http/61.67.128.137:8078/hls/21/80/phoenixch.m3u8$LR•IPV4•17『线路12』 -凤凰中文,http://43.251.226.89:8080/play/888.m3u8$LR•IPV4•17『线路13』 -凤凰中文,http://push.cdn1.hls123.de:8080/streams/a4y2t99pzyi/index.m3u8$LR•IPV4•17『线路14』 -凤凰中文,https://flv-play.clouda.com/live/fhzw-6zSJoUiicyU3ovDlMvflVRLQlVCMRCARnyJ0NPlfcs3eWJNeJSDRMAz4VgeQV3Diy6.flv$LR•IPV4•17『线路15』 -凤凰中文,http://r.jdshipin.com/cCCzW$LR•IPV4•17『线路16』 -凤凰中文,http://cdn6.163189.xyz/163189/fhzw$LR•IPV4•17『线路17』 +凤凰中文,http://r.jdshipin.com/cCCzW$LR•IPV4•17『线路2』 +凤凰中文,http://cdn6.163189.xyz/163189/fhzw$LR•IPV4•17『线路3』 +凤凰中文,http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•17『线路4』 +凤凰中文,http://218.206.193.218:8888/hls/66/index.m3u8$LR•IPV4•17『线路5』 +凤凰中文,https://k44991.kylintv.tv/live/pxna_iphone.m3u8$LR•IPV4•17『线路6』 +凤凰中文,http://tianhewan.top/ZIPP.php?url=http://211.72.65.236:8577/.m3u8$LR•IPV4•17『线路7』 +凤凰中文,http://146.56.153.245:20121/bysid/258$LR•IPV4•17『线路8』 +凤凰中文,http://e1.woc.iiiya.cn:8888/rtp/239.61.2.184:9092$LR•IPV4•17『线路9』 +凤凰中文,http://php.jdshipin.com/TVOD/iptv.php?id=fhzw$LR•IPV4•17『线路10』 +凤凰中文,http://122.117.71.103:8574/http/61.222.53.250:8078/hls/21/80/phoenixch.m3u8$LR•IPV4•17『线路11』 +凤凰中文,http://148.135.93.213:81/phenix.php?id=fhzw$LR•IPV4•17『线路12』 +凤凰中文,http://211.75.171.121:8577/http/61.67.128.137:8078/hls/21/80/phoenixch.m3u8$LR•IPV4•17『线路13』 +凤凰中文,http://43.251.226.89:8080/play/888.m3u8$LR•IPV4•17『线路14』 +凤凰中文,http://push.cdn1.hls123.de:8080/streams/a4y2t99pzyi/index.m3u8$LR•IPV4•17『线路15』 +凤凰中文,https://flv-play.clouda.com/live/fhzw-6zSJoUiicyU3ovDlMvflVRLQlVCMRCARnyJ0NPlfcs3eWJNeJSDRMAz4VgeQV3Diy6.flv$LR•IPV4•17『线路16』 +凤凰中文,http://223.110.245.139/ott.js.chinamobile.com/PLTV/3/224/3221226922/index.m3u8$LR•IPV4•17『线路17』 凤凰资讯,http://api.mg.itv888.cn:8080/hls/11ef1dc70d8/index.m3u8$LR•IPV4•18『线路1』 -凤凰资讯,http://223.110.245.167/ott.js.chinamobile.com/PLTV/3/224/3221226923/index.m3u8$LR•IPV4•18『线路2』 -凤凰资讯,http://221.7.175.154:8445/tsfile/live/1021_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路3』 -凤凰资讯,http://zmgd.zyrnet.com:8888/hls/109/index.m3u8$LR•IPV4•18『线路4』 -凤凰资讯,http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•18『线路5』 -凤凰资讯,http://php.jdshipin.com/TVOD/iptv.php?id=fhzx$LR•IPV4•18『线路6』 -凤凰资讯,http://122.117.71.103:8573/http/61.222.53.250:8078/hls/20/80/phoenixif.m3u8$LR•IPV4•18『线路7』 -凤凰资讯,http://e1.woc.iiiya.cn:8888/rtp/239.61.2.183:9086$LR•IPV4•18『线路8』 -凤凰资讯,http://146.56.153.245:20121/bysid/257$LR•IPV4•18『线路9』 -凤凰资讯,http://tianhewan.top/ZIPP.php?url=http://211.72.65.236:8576/.m3u8$LR•IPV4•18『线路10』 -凤凰资讯,http://148.135.93.213:81/phenix.php?id=fhzx$LR•IPV4•18『线路11』 -凤凰资讯,http://211.75.171.121:8576/http/61.67.128.137:8078/hls/20/80/phoenixif.m3u8$LR•IPV4•18『线路12』 -凤凰资讯,http://43.251.226.89:8080/play/889.m3u8$LR•IPV4•18『线路13』 -凤凰资讯,p3p://167.114.175.6:55331/5fffbf860003807cedf4e1016c3c3ed2$LR•IPV4•18『线路14』 -凤凰资讯,http://push.cdn1.hls123.de:8080/streams/0u0qd5ovqkg/index.m3u8$LR•IPV4•18『线路15』 -凤凰资讯,https://flv-play.clouda.com/live/fhzx-gCDIOsNFJ7DX5OI8hsebeQNHPm66LAMZgmIcGYcfIIEzXWKCVG2cQgbZdRq2aUVqJR.flv$LR•IPV4•18『线路16』 -凤凰资讯,http://r.jdshipin.com/0Rp07$LR•IPV4•18『线路17』 -凤凰资讯,http://cdn6.163189.xyz/163189/fhzx$LR•IPV4•18『线路18』 -凤凰香港,http://223.110.245.136/PLTV/3/224/3221226975/index.m3u8$LR•IPV4•12『线路1』 -凤凰香港,http://122.152.202.33/s/81a8a44f/index.m3u8?id=fhhk$LR•IPV4•12『线路2』 -凤凰香港,https://epg.pw/stream/8770e89223a086eb1b8a0c931e42296d772a8069ad3eb72540e0c434e7cb3e93.m3u8$LR•IPV4•12『线路3』 -凤凰香港,https://epg.pw/stream/5f16dc7fc8aaaed3205516c63e4a8c24bca9dbba1181684244729cf574505b0e.m3u8$LR•IPV4•12『线路4』 -凤凰香港,http://148.135.93.213:81/phenix.php?id=fhhk$LR•IPV4•12『线路5』 -凤凰香港,http://43.251.226.89:8080/play/890.m3u8$LR•IPV4•12『线路6』 -凤凰香港,p3p://167.114.175.6:55331/5fe0b82c000cac9774c17f262e43314d$LR•IPV4•12『线路7』 -凤凰香港,http://push.cdn1.hls123.de:8080/streams/898y722sqjr/index.m3u8$LR•IPV4•12『线路8』 -凤凰香港,https://flv-play.clouda.com/live/fhxg-s6ZqbJPCkU54D3ojHvlJm4el9wbnzF1VJ6J0oPumsZIfuPtYq1enmIhy43vWcUaaPf4U2xRRWNGOXX5BiusMXxxQ.flv$LR•IPV4•12『线路9』 -凤凰香港,http://r.jdshipin.com/yDoTN$LR•IPV4•12『线路10』 -凤凰香港,http://php.jdshipin.com/TVOD/iptv.php?id=fhhk$LR•IPV4•12『线路11』 -凤凰香港,http://cdn6.163189.xyz/163189/fhhk$LR•IPV4•12『线路12』 -TVB翡翠台,p3p://167.114.175.6:55331/653e4c02000ea0440c8c63fd3e5d709d$LR•IPV4•36『线路1』 -TVB翡翠台,p3p://167.114.175.6:55331/66c04cec000a20ac2dbf03c71cf661c9$LR•IPV4•36『线路2』 -TVB翡翠台,p3p://108.181.32.169:19673/6533f6560002787f2d01338b57197695$LR•IPV4•36『线路3』 -TVB翡翠台,http://cdn9.163189.xyz/smt1.1.php?id=jade_twn$LR•IPV4•36『线路4』 -TVB翡翠台,http://php.jdshipin.com:8880/TVOD/iptv.php?id=fct$LR•IPV4•36『线路5』 -TVB翡翠台,http://php.jdshipin.com/TVOD/iptv.php?id=fct3$LR•IPV4•36『线路6』 -TVB翡翠台,http://php.jdshipin.com/TVOD/iptv.php?id=fct$LR•IPV4•36『线路7』 -TVB翡翠台,http://hls.168.us.kg/u/81/master.m3u8$LR•IPV4•36『线路8』 -TVB翡翠台,http://r.jdshipin.com/62WM7$LR•IPV4•36『线路9』 -TVB翡翠台,http://php.jdshipin.com/TVOD/iptv.php?id=fct4$LR•IPV4•36『线路10』 -TVB翡翠台,http://php.jdshipin.com:8880/smt.php?id=jade_twn$LR•IPV4•36『线路11』 -TVB翡翠台,http://php.jdshipin.com/smt.php?id=jade_twn$LR•IPV4•36『线路12』 -TVB翡翠台,http://cdn9.1689.us.kg/smt1.1.php?id=jade_twn$LR•IPV4•36『线路13』 -TVB翡翠台,http://ali.hlspull.yximgs.com/live/l3w1tt2dkzvpukkliu64ah005-golive.flv$LR•IPV4•36『线路14』 -TVB翡翠台,http://58.250.155.2:8180/TV00000000000000000032@HHZT$LR•IPV4•36『线路15』 -TVB翡翠台,http://hotelplay.net/live/pmb8krf68n4z/4d8cf4af8de3574c/476935.m3u8$LR•IPV4•36『线路16』 -TVB翡翠台,http://ali.hlspull.yximgs.com/live/awei_jade.flv$LR•IPV4•36『线路17』 -TVB翡翠台,p3p://167.114.175.6:55331/653e49c20006c60f0c8397f7771b1b7b$LR•IPV4•36『线路18』 -TVB翡翠台,https://hls-gateway.vpstv.net/streams/476929.m3u8$LR•IPV4•36『线路19』 -TVB翡翠台,http://124.244.129.167:9004/0.ts$LR•IPV4•36『线路20』 -TVB翡翠台,http://qingyi.7766.org:9004/0.ts$LR•IPV4•36『线路21』 -TVB翡翠台,http://push.cdn1.hls123.de:8080/streams/ef5addc0849/index.m3u8$LR•IPV4•36『线路22』 -TVB翡翠台,http://push.cdn1.hls123.de:8080/streams/n6dnsi33w2e/index.m3u8$LR•IPV4•36『线路23』 -TVB翡翠台,http://php.jdshipin.com/TVOD/iptv.php?id=huali2$LR•IPV4•36『线路24』 -TVB翡翠台,http://php.jdshipin.com:8880/TVOD/iptv.php?id=fct4$LR•IPV4•36『线路25』 -TVB翡翠台,http://php.jdshipin.com:8880/TVOD/iptv.php?id=j1$LR•IPV4•36『线路26』 -TVB翡翠台,https://mytv.cdn.loc.cc/o12.php?id=fct$LR•IPV4•36『线路27』 -TVB翡翠台,http://43.251.226.89:8080/play/867.m3u8$LR•IPV4•36『线路28』 -TVB翡翠台,http://43.251.226.89:8080/play/868.m3u8$LR•IPV4•36『线路29』 -TVB翡翠台,http://43.251.226.89:8080/play/869.m3u8$LR•IPV4•36『线路30』 -TVB翡翠台,http://43.251.226.89:8080/play/894.m3u8$LR•IPV4•36『线路31』 -TVB翡翠台,http://43.251.226.89:8080/play/895.m3u8$LR•IPV4•36『线路32』 -TVB翡翠台,https://rtmp.play.live.tieba.com/live/FC-jeT4nLMVrUuYYF1zrjAOgphyDowTHE2GMxjLxPqIlRQMJDhcbFPAiSIzDGwPF77NfidpWnLiDqicTmg8mV7ichVA.flv$LR•IPV4•36『线路33』 -TVB翡翠台,https://flv-play.clouda.com/live/fc-0StF0ynwlSa7hrv7OF4easlc5FZmZpEjC6AeAaCOogpDCWWipXDZFKTn9DvV3WQiAHjYtcE6ZqmDFmnvRAARmtRA.flv$LR•IPV4•36『线路34』 -TVB翡翠台,https://gcalic.v.myalicdn.com/gc/fcw03_1/index.m3u8$LR•IPV4•36『线路35』 -TVB翡翠台,http://cdn6.163189.xyz/163189/fct4k$LR•IPV4•36『线路36』 -TVB明珠台,http://php.jdshipin.com/TVOD/iptv.php?id=mzt2$LR•IPV4•17『线路1』 -TVB明珠台,http://php.jdshipin.com/PLTV/iptv.php?id=mzt2$LR•IPV4•17『线路2』 -TVB明珠台,http://php.jdshipin.com/PLTV/iptv.php?id=mzt$LR•IPV4•17『线路3』 -TVB明珠台,http://php.jdshipin.com/TVOD/iptv.php?id=mzt$LR•IPV4•17『线路4』 -TVB明珠台,http://hls.168.us.kg/u/84/master.m3u8$LR•IPV4•17『线路5』 -TVB明珠台,p3p://167.114.175.6:55331/611d99f3000116024a845bb9627404c9$LR•IPV4•17『线路6』 -TVB明珠台,http://php.jdshipin.com:8880/smt.php?id=pearl_twn$LR•IPV4•17『线路7』 -TVB明珠台,http://cdn9.163189.xyz/smt1.1.php?id=pearl_twn$LR•IPV4•17『线路8』 +凤凰资讯,http://r.jdshipin.com/0Rp07$LR•IPV4•18『线路2』 +凤凰资讯,http://php.jdshipin.com/TVOD/iptv.php?id=fhzx$LR•IPV4•18『线路3』 +凤凰资讯,http://cdn6.163189.xyz/163189/fhzx$LR•IPV4•18『线路4』 +凤凰资讯,http://221.7.175.154:8445/tsfile/live/1021_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路5』 +凤凰资讯,http://zmgd.zyrnet.com:8888/hls/109/index.m3u8$LR•IPV4•18『线路6』 +凤凰资讯,http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•18『线路7』 +凤凰资讯,http://122.117.71.103:8573/http/61.222.53.250:8078/hls/20/80/phoenixif.m3u8$LR•IPV4•18『线路8』 +凤凰资讯,http://e1.woc.iiiya.cn:8888/rtp/239.61.2.183:9086$LR•IPV4•18『线路9』 +凤凰资讯,http://146.56.153.245:20121/bysid/257$LR•IPV4•18『线路10』 +凤凰资讯,http://tianhewan.top/ZIPP.php?url=http://211.72.65.236:8576/.m3u8$LR•IPV4•18『线路11』 +凤凰资讯,http://148.135.93.213:81/phenix.php?id=fhzx$LR•IPV4•18『线路12』 +凤凰资讯,http://211.75.171.121:8576/http/61.67.128.137:8078/hls/20/80/phoenixif.m3u8$LR•IPV4•18『线路13』 +凤凰资讯,http://43.251.226.89:8080/play/889.m3u8$LR•IPV4•18『线路14』 +凤凰资讯,p3p://167.114.175.6:55331/5fffbf860003807cedf4e1016c3c3ed2$LR•IPV4•18『线路15』 +凤凰资讯,http://push.cdn1.hls123.de:8080/streams/0u0qd5ovqkg/index.m3u8$LR•IPV4•18『线路16』 +凤凰资讯,https://flv-play.clouda.com/live/fhzx-gCDIOsNFJ7DX5OI8hsebeQNHPm66LAMZgmIcGYcfIIEzXWKCVG2cQgbZdRq2aUVqJR.flv$LR•IPV4•18『线路17』 +凤凰资讯,http://223.110.245.167/ott.js.chinamobile.com/PLTV/3/224/3221226923/index.m3u8$LR•IPV4•18『线路18』 +凤凰香港,http://r.jdshipin.com/yDoTN$LR•IPV4•12『线路1』 +凤凰香港,http://php.jdshipin.com/TVOD/iptv.php?id=fhhk$LR•IPV4•12『线路2』 +凤凰香港,http://cdn6.163189.xyz/163189/fhhk$LR•IPV4•12『线路3』 +凤凰香港,http://122.152.202.33/s/81a8a44f/index.m3u8?id=fhhk$LR•IPV4•12『线路4』 +凤凰香港,https://epg.pw/stream/8770e89223a086eb1b8a0c931e42296d772a8069ad3eb72540e0c434e7cb3e93.m3u8$LR•IPV4•12『线路5』 +凤凰香港,https://epg.pw/stream/5f16dc7fc8aaaed3205516c63e4a8c24bca9dbba1181684244729cf574505b0e.m3u8$LR•IPV4•12『线路6』 +凤凰香港,http://148.135.93.213:81/phenix.php?id=fhhk$LR•IPV4•12『线路7』 +凤凰香港,http://43.251.226.89:8080/play/890.m3u8$LR•IPV4•12『线路8』 +凤凰香港,p3p://167.114.175.6:55331/5fe0b82c000cac9774c17f262e43314d$LR•IPV4•12『线路9』 +凤凰香港,http://push.cdn1.hls123.de:8080/streams/898y722sqjr/index.m3u8$LR•IPV4•12『线路10』 +凤凰香港,https://flv-play.clouda.com/live/fhxg-s6ZqbJPCkU54D3ojHvlJm4el9wbnzF1VJ6J0oPumsZIfuPtYq1enmIhy43vWcUaaPf4U2xRRWNGOXX5BiusMXxxQ.flv$LR•IPV4•12『线路11』 +凤凰香港,http://223.110.245.136/PLTV/3/224/3221226975/index.m3u8$LR•IPV4•12『线路12』 +TVB翡翠台,http://cdn9.163189.xyz/smt1.1.php?id=jade_twn$LR•IPV4•36『线路1』 +TVB翡翠台,p3p://167.114.175.6:55331/653e4c02000ea0440c8c63fd3e5d709d$LR•IPV4•36『线路2』 +TVB翡翠台,p3p://167.114.175.6:55331/66c04cec000a20ac2dbf03c71cf661c9$LR•IPV4•36『线路3』 +TVB翡翠台,p3p://108.181.32.169:19673/6533f6560002787f2d01338b57197695$LR•IPV4•36『线路4』 +TVB翡翠台,http://php.jdshipin.com/TVOD/iptv.php?id=huali2$LR•IPV4•36『线路5』 +TVB翡翠台,http://php.jdshipin.com:8880/TVOD/iptv.php?id=fct4$LR•IPV4•36『线路6』 +TVB翡翠台,http://php.jdshipin.com:8880/TVOD/iptv.php?id=j1$LR•IPV4•36『线路7』 +TVB翡翠台,http://php.jdshipin.com:8880/TVOD/iptv.php?id=fct$LR•IPV4•36『线路8』 +TVB翡翠台,http://php.jdshipin.com/TVOD/iptv.php?id=fct3$LR•IPV4•36『线路9』 +TVB翡翠台,http://php.jdshipin.com/TVOD/iptv.php?id=fct$LR•IPV4•36『线路10』 +TVB翡翠台,http://hls.168.us.kg/u/81/master.m3u8$LR•IPV4•36『线路11』 +TVB翡翠台,http://r.jdshipin.com/62WM7$LR•IPV4•36『线路12』 +TVB翡翠台,http://php.jdshipin.com/TVOD/iptv.php?id=fct4$LR•IPV4•36『线路13』 +TVB翡翠台,http://php.jdshipin.com:8880/smt.php?id=jade_twn$LR•IPV4•36『线路14』 +TVB翡翠台,http://php.jdshipin.com/smt.php?id=jade_twn$LR•IPV4•36『线路15』 +TVB翡翠台,http://cdn9.1689.us.kg/smt1.1.php?id=jade_twn$LR•IPV4•36『线路16』 +TVB翡翠台,http://ali.hlspull.yximgs.com/live/l3w1tt2dkzvpukkliu64ah005-golive.flv$LR•IPV4•36『线路17』 +TVB翡翠台,http://58.250.155.2:8180/TV00000000000000000032@HHZT$LR•IPV4•36『线路18』 +TVB翡翠台,http://hotelplay.net/live/pmb8krf68n4z/4d8cf4af8de3574c/476935.m3u8$LR•IPV4•36『线路19』 +TVB翡翠台,http://ali.hlspull.yximgs.com/live/awei_jade.flv$LR•IPV4•36『线路20』 +TVB翡翠台,p3p://167.114.175.6:55331/653e49c20006c60f0c8397f7771b1b7b$LR•IPV4•36『线路21』 +TVB翡翠台,https://hls-gateway.vpstv.net/streams/476929.m3u8$LR•IPV4•36『线路22』 +TVB翡翠台,http://124.244.129.167:9004/0.ts$LR•IPV4•36『线路23』 +TVB翡翠台,http://qingyi.7766.org:9004/0.ts$LR•IPV4•36『线路24』 +TVB翡翠台,http://push.cdn1.hls123.de:8080/streams/ef5addc0849/index.m3u8$LR•IPV4•36『线路25』 +TVB翡翠台,http://push.cdn1.hls123.de:8080/streams/n6dnsi33w2e/index.m3u8$LR•IPV4•36『线路26』 +TVB翡翠台,https://gcalic.v.myalicdn.com/gc/fcw03_1/index.m3u8$LR•IPV4•36『线路27』 +TVB翡翠台,http://cdn6.163189.xyz/163189/fct4k$LR•IPV4•36『线路28』 +TVB翡翠台,https://mytv.cdn.loc.cc/o12.php?id=fct$LR•IPV4•36『线路29』 +TVB翡翠台,http://43.251.226.89:8080/play/867.m3u8$LR•IPV4•36『线路30』 +TVB翡翠台,http://43.251.226.89:8080/play/868.m3u8$LR•IPV4•36『线路31』 +TVB翡翠台,http://43.251.226.89:8080/play/869.m3u8$LR•IPV4•36『线路32』 +TVB翡翠台,http://43.251.226.89:8080/play/894.m3u8$LR•IPV4•36『线路33』 +TVB翡翠台,http://43.251.226.89:8080/play/895.m3u8$LR•IPV4•36『线路34』 +TVB翡翠台,https://rtmp.play.live.tieba.com/live/FC-jeT4nLMVrUuYYF1zrjAOgphyDowTHE2GMxjLxPqIlRQMJDhcbFPAiSIzDGwPF77NfidpWnLiDqicTmg8mV7ichVA.flv$LR•IPV4•36『线路35』 +TVB翡翠台,https://flv-play.clouda.com/live/fc-0StF0ynwlSa7hrv7OF4easlc5FZmZpEjC6AeAaCOogpDCWWipXDZFKTn9DvV3WQiAHjYtcE6ZqmDFmnvRAARmtRA.flv$LR•IPV4•36『线路36』 +TVB明珠台,http://cdn9.163189.xyz/smt1.1.php?id=pearl_twn$LR•IPV4•17『线路1』 +TVB明珠台,http://php.jdshipin.com/TVOD/iptv.php?id=mzt2$LR•IPV4•17『线路2』 +TVB明珠台,http://php.jdshipin.com/PLTV/iptv.php?id=mzt2$LR•IPV4•17『线路3』 +TVB明珠台,http://php.jdshipin.com/PLTV/iptv.php?id=mzt$LR•IPV4•17『线路4』 +TVB明珠台,http://php.jdshipin.com/TVOD/iptv.php?id=mzt$LR•IPV4•17『线路5』 +TVB明珠台,http://hls.168.us.kg/u/84/master.m3u8$LR•IPV4•17『线路6』 +TVB明珠台,p3p://167.114.175.6:55331/611d99f3000116024a845bb9627404c9$LR•IPV4•17『线路7』 +TVB明珠台,http://php.jdshipin.com:8880/smt.php?id=pearl_twn$LR•IPV4•17『线路8』 TVB明珠台,https://hls-gateway.vpstv.net/streams/476936.m3u8$LR•IPV4•17『线路9』 TVB明珠台,http://push.cdn1.hls123.de:8080/streams/89a8p45a15e/index.m3u8$LR•IPV4•17『线路10』 TVB明珠台,p3p://167.114.175.6:55331/602f1ba9000814efa6f2970333d309d9$LR•IPV4•17『线路11』 @@ -3980,10 +3975,10 @@ TVB明珠台,http://43.251.226.89:8080/play/872.m3u8$LR•IPV4•17『线路14 TVB明珠台,http://43.251.226.89:8080/play/897.m3u8$LR•IPV4•17『线路15』 TVB明珠台,https://rtmp.play.live.tieba.com/live//MZ-75gIBwRfJZ3RrMGEzQPAdi3zVypiQ7z9CX7mFFWT0axbBxDJ6LrmKo47NVPt08bBadAZNAmywLSGE4wQwFeuTVwh.flv$LR•IPV4•17『线路16』 TVB明珠台,https://flv-play.clouda.com/live/mz-X4DYjEwtWNHLlq9hBWs8o4HWYKLq7ChxxavhYKcZOcRlFh0guIp954ka9YGs8MAF9FOJ2gPvg5wcd8Yr7WSISG3g.flv$LR•IPV4•17『线路17』 -TVB无线新闻,http://php.jdshipin.com/smt.php?id=inews_twn$LR•IPV4•16『线路1』 -TVB无线新闻,http://php.jdshipin.com/TVOD/iptv.php?id=wxxwt$LR•IPV4•16『线路2』 -TVB无线新闻,http://r.jdshipin.com/CkuBd$LR•IPV4•16『线路3』 -TVB无线新闻,http://cdn9.163189.xyz/smt1.1.php?id=inews_twn$LR•IPV4•16『线路4』 +TVB无线新闻,http://cdn9.163189.xyz/smt1.1.php?id=inews_twn$LR•IPV4•16『线路1』 +TVB无线新闻,http://php.jdshipin.com/smt.php?id=inews_twn$LR•IPV4•16『线路2』 +TVB无线新闻,http://php.jdshipin.com/TVOD/iptv.php?id=wxxwt$LR•IPV4•16『线路3』 +TVB无线新闻,http://r.jdshipin.com/CkuBd$LR•IPV4•16『线路4』 TVB无线新闻,http://74.91.26.218:82/live/inews.m3u8$LR•IPV4•16『线路5』 TVB无线新闻,http://php.jdshipin.com:8880/smt.php?id=inews_twn$LR•IPV4•16『线路6』 TVB无线新闻,http://v2hcdn.jdshipin.com/news/news.stream/chunklist_w1005.m3u8$LR•IPV4•16『线路7』 @@ -3991,40 +3986,41 @@ TVB无线新闻,p3p://167.114.175.6:55331/653e4703000daead0c78dfb07723484e$LR• TVB无线新闻,p3p://108.181.32.169:19673/66c414110003f1f047eb7cb30cd84a38$LR•IPV4•16『线路9』 TVB无线新闻,p3p://167.114.175.6:55331/66c9c0df00016a4852abc2d358ee0ccb$LR•IPV4•16『线路10』 TVB无线新闻,p3p://167.114.175.6:55331/653e4818000b73240c7d19181340415e$LR•IPV4•16『线路11』 -TVB无线新闻,http://43.251.226.89:8080/play/865.m3u8$LR•IPV4•16『线路12』 -TVB无线新闻,http://43.251.226.89:8080/play/893.m3u8$LR•IPV4•16『线路13』 -TVB无线新闻,https://hls-gateway.vpstv.net/streams/708884.m3u8$LR•IPV4•16『线路14』 -TVB无线新闻,http://push.cdn1.hls123.de:8080/streams/n66wwnx3l7i/index.m3u8$LR•IPV4•16『线路15』 -TVB无线新闻,http://php.jdshipin.com/TVOD/iptv.php?id=wxxw$LR•IPV4•16『线路16』 -TVB星河,http://php.jdshipin.com/TVOD/iptv.php?id=xinghe$LR•IPV4•15『线路1』 -TVB星河,http://php.jdshipin.com:8880/smt.php?id=Xinhe$LR•IPV4•15『线路2』 -TVB星河,http://cdn9.1689.us.kg/smt1.1.php?id=Xinhe$LR•IPV4•15『线路3』 -TVB星河,http://v2h.jdshipin.com/xinghe_1/xinghe_1.stream/chunklist_w106.m3u8$LR•IPV4•15『线路4』 -TVB星河,http://php.jdshipin.com:8880/TVOD/iptv.php?id=xinghe$LR•IPV4•15『线路5』 -TVB星河,https://tv.mytvsuper.xyz/tvb/xinghe/xinghe.m3u8$LR•IPV4•15『线路6』 -TVB星河,p3p://167.114.175.6:55331/5fdee23d000b670a6d96428e4c334643$LR•IPV4•15『线路7』 -TVB星河,p3p://167.114.175.6:55331/6563174f0002ffaf9c45dd927c7d6df1$LR•IPV4•15『线路8』 -TVB星河,http://push.cdn1.hls123.de:8080/streams/hbiwgswysds/index.m3u8$LR•IPV4•15『线路9』 -TVB星河,https://flv-play.clouda.com/live/13-ut3RFdJxRGEIEn2AMMPEkKK5TfHBIgvlqwcjFuAItD6Y2IgzaDEznMF3EswnXWDb4O.flv$LR•IPV4•15『线路10』 -TVB星河,http://43.251.226.89:8080/play/876.m3u8$LR•IPV4•15『线路11』 -TVB星河,http://43.251.226.89:8080/play/877.m3u8$LR•IPV4•15『线路12』 -TVB星河,http://43.251.226.89:8080/play/898.m3u8$LR•IPV4•15『线路13』 -TVB星河,https://hls-gateway.vpstv.net/streams/709489.m3u8$LR•IPV4•15『线路14』 -TVB星河,https://live.ottiptv.cc/huya/23734169$LR•IPV4•15『线路15』 +TVB无线新闻,http://php.jdshipin.com/TVOD/iptv.php?id=wxxw$LR•IPV4•16『线路12』 +TVB无线新闻,http://43.251.226.89:8080/play/865.m3u8$LR•IPV4•16『线路13』 +TVB无线新闻,http://43.251.226.89:8080/play/893.m3u8$LR•IPV4•16『线路14』 +TVB无线新闻,https://hls-gateway.vpstv.net/streams/708884.m3u8$LR•IPV4•16『线路15』 +TVB无线新闻,http://push.cdn1.hls123.de:8080/streams/n66wwnx3l7i/index.m3u8$LR•IPV4•16『线路16』 +TVB星河,http://r.jdshipin.com/Voac4$LR•IPV4•16『线路1』 +TVB星河,http://php.jdshipin.com/TVOD/iptv.php?id=xinghe$LR•IPV4•16『线路2』 +TVB星河,http://php.jdshipin.com:8880/smt.php?id=Xinhe$LR•IPV4•16『线路3』 +TVB星河,http://cdn9.1689.us.kg/smt1.1.php?id=Xinhe$LR•IPV4•16『线路4』 +TVB星河,http://v2h.jdshipin.com/xinghe_1/xinghe_1.stream/chunklist_w106.m3u8$LR•IPV4•16『线路5』 +TVB星河,http://php.jdshipin.com:8880/TVOD/iptv.php?id=xinghe$LR•IPV4•16『线路6』 +TVB星河,https://tv.mytvsuper.xyz/tvb/xinghe/xinghe.m3u8$LR•IPV4•16『线路7』 +TVB星河,p3p://167.114.175.6:55331/5fdee23d000b670a6d96428e4c334643$LR•IPV4•16『线路8』 +TVB星河,p3p://167.114.175.6:55331/6563174f0002ffaf9c45dd927c7d6df1$LR•IPV4•16『线路9』 +TVB星河,http://push.cdn1.hls123.de:8080/streams/hbiwgswysds/index.m3u8$LR•IPV4•16『线路10』 +TVB星河,https://flv-play.clouda.com/live/13-ut3RFdJxRGEIEn2AMMPEkKK5TfHBIgvlqwcjFuAItD6Y2IgzaDEznMF3EswnXWDb4O.flv$LR•IPV4•16『线路11』 +TVB星河,https://live.ottiptv.cc/huya/23734169$LR•IPV4•16『线路12』 +TVB星河,http://43.251.226.89:8080/play/876.m3u8$LR•IPV4•16『线路13』 +TVB星河,http://43.251.226.89:8080/play/877.m3u8$LR•IPV4•16『线路14』 +TVB星河,http://43.251.226.89:8080/play/898.m3u8$LR•IPV4•16『线路15』 +TVB星河,https://hls-gateway.vpstv.net/streams/709489.m3u8$LR•IPV4•16『线路16』 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•12『线路1』 +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://38.64.72.148/hls/modn/list/4013/chunklist1.m3u8$LR•IPV4•12『线路1』 台视,http://74.91.26.218:82/live/ttvcj.m3u8$LR•IPV4•12『线路2』 台视,http://74.91.26.218:82/live/ttvzh.m3u8$LR•IPV4•12『线路3』 台视,http://38.64.72.148:80/hls/modn/list/4013/chunklist0.m3u8$LR•IPV4•12『线路4』 @@ -4035,37 +4031,37 @@ TVBS,p3p://167.114.175.6:55331/61efd0a100047e1a7f9fa38d29f5746d$LR•IPV4•13 台视,p3p://167.114.175.6:55331/6223b571000a13023e78ece5030b5b05$LR•IPV4•12『线路9』 台视,http://211.72.174.95:8112/0.ts$LR•IPV4•12『线路10』 台视,http://220.135.241.47:8315/0.ts$LR•IPV4•12『线路11』 -台视,http://38.64.72.148/hls/modn/list/4013/chunklist1.m3u8$LR•IPV4•12『线路12』 +台视,http://162.19.247.76:22222/live/taishi/index.m3u8$LR•IPV4•12『线路12』 民视新闻,http://38.64.72.148:80/hls/modn/list/4012/chunklist0.m3u8$LR•IPV4•6『线路1』 民视新闻,http://38.64.72.148:80/hls/modn/list/4012/chunklist1.m3u8$LR•IPV4•6『线路2』 民视新闻,http://38.64.72.148/hls/modn/list/4012/chunklist0.m3u8$LR•IPV4•6『线路3』 民视新闻,http://38.64.72.148/hls/modn/list/4012/chunklist1.m3u8$LR•IPV4•6『线路4』 民视新闻,http://rihou.cc:555/tv/民视新闻$LR•IPV4•6『线路5』 民视新闻,http://211.72.174.95:8117/0.ts$LR•IPV4•6『线路6』 -耀才财经,http://202.69.67.66:443/webcast/bshdlive-mobile/playlist.m3u8$LR•IPV4•3『线路1』 +耀才财经,https://v3.mediacast.hk/webcast/bshdlive-pc/chunklist_w99771165.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/chunklist_w99771165.m3u8$LR•IPV4•3『线路3』 +耀才财经,http://202.69.67.66:443/webcast/bshdlive-mobile/playlist.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』 数位电影,p3p://167.114.175.6:55331/6223ae1b0007136f3e5c44280e3300fa$LR•IPV4 -龙华偶像,http://43.251.226.89:8080/play/911.m3u8$LR•IPV4•4『线路1』 -龙华偶像,http://cdn8.163189.xyz/163189/lhox$LR•IPV4•4『线路2』 -龙华偶像,p3p://167.114.175.6:55331/609bb1b0000732744f174daa791d3b43$LR•IPV4•4『线路3』 -龙华偶像,https://cdn8.163189.xyz/live/lhox/stream.m3u8$LR•IPV4•4『线路4』 -龙华经典,http://43.251.226.89:8080/play/909.m3u8$LR•IPV4•4『线路1』 -龙华经典,http://cdn8.163189.xyz/163189/lhjd$LR•IPV4•4『线路2』 -龙华经典,p3p://167.114.175.6:55331/6223b9d8000ef67e3e8a2073190e36d5$LR•IPV4•4『线路3』 -龙华经典,https://cdn8.163189.xyz/live/lhjd/stream.m3u8$LR•IPV4•4『线路4』 +龙华偶像,https://cdn8.163189.xyz/live/lhox/stream.m3u8$LR•IPV4•4『线路1』 +龙华偶像,http://43.251.226.89:8080/play/911.m3u8$LR•IPV4•4『线路2』 +龙华偶像,http://cdn8.163189.xyz/163189/lhox$LR•IPV4•4『线路3』 +龙华偶像,p3p://167.114.175.6:55331/609bb1b0000732744f174daa791d3b43$LR•IPV4•4『线路4』 +龙华经典,https://cdn8.163189.xyz/live/lhjd/stream.m3u8$LR•IPV4•4『线路1』 +龙华经典,http://43.251.226.89:8080/play/909.m3u8$LR•IPV4•4『线路2』 +龙华经典,http://cdn8.163189.xyz/163189/lhjd$LR•IPV4•4『线路3』 +龙华经典,p3p://167.114.175.6:55331/6223b9d8000ef67e3e8a2073190e36d5$LR•IPV4•4『线路4』 纬来日本,rtmp://f13h.mine.nu/sat/tv771$LR•IPV4•2『线路1』 纬来日本,p3p://167.114.175.6:55331/5fe1add80007bbbd788125c43bf36060$LR•IPV4•2『线路2』 -纬来体育,http://148.135.34.95/mn.php?playurl=http://www.pelotas.org:8278/videolandsport/playlist.m3u8$LR•IPV4•27『线路1』 -纬来体育,http://zb.xmzb.xyz/123.php?id=⚽马上oppppp一纬来体育$LR•IPV4•27『线路2』 -纬来体育,https://epg.pw/stream/8855a9936e37e608a0ec8a014cce1673dee9c5d68d560da376cc92e5edef2b25.m3u8$LR•IPV4•27『线路3』 -纬来体育,https://epg.pw/stream/ab6df63b64d0cc44a1f4f029ed847a26fa54a7aebd455578fb05a63f02c22f4b.m3u8$LR•IPV4•27『线路4』 -纬来体育,https://stream1.freetv.fun/wei-lai-ti-yu-3.m3u8$LR•IPV4•27『线路5』 -纬来体育,https://cdn.iptv8k.top/dl/jrys.php?id=292&time=20240926215313&ip=111.229.253.40$LR•IPV4•27『线路6』 -纬来体育,https://epg.pw/stream/4f18dfe0593db5c686eb64ae8edaf2a9202d4d46bdc9bbde2cee27708e12ea01.m3u8$LR•IPV4•27『线路7』 +纬来体育,https://epg.pw/stream/4f18dfe0593db5c686eb64ae8edaf2a9202d4d46bdc9bbde2cee27708e12ea01.m3u8$LR•IPV4•27『线路1』 +纬来体育,http://148.135.34.95/mn.php?playurl=http://www.pelotas.org:8278/videolandsport/playlist.m3u8$LR•IPV4•27『线路2』 +纬来体育,http://zb.xmzb.xyz/123.php?id=⚽马上oppppp一纬来体育$LR•IPV4•27『线路3』 +纬来体育,https://epg.pw/stream/8855a9936e37e608a0ec8a014cce1673dee9c5d68d560da376cc92e5edef2b25.m3u8$LR•IPV4•27『线路4』 +纬来体育,https://epg.pw/stream/ab6df63b64d0cc44a1f4f029ed847a26fa54a7aebd455578fb05a63f02c22f4b.m3u8$LR•IPV4•27『线路5』 +纬来体育,https://stream1.freetv.fun/wei-lai-ti-yu-3.m3u8$LR•IPV4•27『线路6』 +纬来体育,https://cdn.iptv8k.top/dl/jrys.php?id=292&time=20240926215313&ip=111.229.253.40$LR•IPV4•27『线路7』 纬来体育,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2056&tk=e640d0a1bf70$LR•IPV4•27『线路8』 纬来体育,http://122.117.71.103:8562/http/61.222.53.250:8081/hls/67/809/ch28.m3u8$LR•IPV4•27『线路9』 纬来体育,http://api.mytv666.top/api/hk.php?id=6330343464373162386136666261663835613165633337366136386437306133267469643d74762669643d3737$LR•IPV4•27『线路10』 @@ -4097,72 +4093,72 @@ 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://217.26.190.76:8888/play/a0m6/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://217.26.190.76:8888/play/a0m6/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•9『线路1』 -DW,https://dwamdstream103.akamaized.net/hls/live/2015526/dwstream103/master.m3u8$LR•IPV4•9『线路2』 -DW,https://amg01644-amg01644c1-amgplt0343.playout.now3.amagi.tv/ts-eu-w1-n2/playlist/amg01644-amg01644c1-amgplt0343/playlist.m3u8$LR•IPV4•9『线路3』 -DW,https://dwamdstream104.akamaized.net/hls/live/2015530/dwstream104/master.m3u8$LR•IPV4•9『线路4』 -DW,https://dwamdstream110.akamaized.net/hls/live/2017971/dwstream110/master.m3u8$LR•IPV4•9『线路5』 -DW,https://dwamdstream102.akamaized.net/hls/live/2015525/dwstream102/stream05/streamPlaylist.m3u8$LR•IPV4•9『线路6』 -DW,http://aktv.top/AKTV/live/aktv3/dw/AKTV.m3u8$LR•IPV4•9『线路7』 -DW,http://37.27.111.214:8080/live/46/hls.m3u8$LR•IPV4•9『线路8』 -DW,https://dwamdstream104.akamaized.net/hls/live/2015530/dwstream104/stream04/streamPlaylist.m3u8$LR•IPV4•9『线路9』 -France 24,https://live.france24.com/hls/live/2037222-b/F24_AR_HI_HLS/master_5000.m3u8$LR•IPV4•6『线路1』 -France 24,https://live.france24.com/hls/live/2037218-b/F24_EN_HI_HLS/master_5000.m3u8$LR•IPV4•6『线路2』 -France 24,https://live.france24.com/hls/live/2037220-b/F24_ES_HI_HLS/master_5000.m3u8$LR•IPV4•6『线路3』 -France 24,https://live.france24.com/hls/live/2037179-b/F24_FR_HI_HLS/master_5000.m3u8$LR•IPV4•6『线路4』 -France 24,https://amg00106-amg00106c1-rakuten-uk-4654.playouts.now.amagi.tv/playlist/amg00106-france24fast-france24-rakutenuk/playlist.m3u8$LR•IPV4•6『线路5』 -France 24,https://amg00106-france24-france24-samsunguk-qvpp8.amagi.tv/playlist/amg00106-france24-france24-samsunguk/playlist.m3u8$LR•IPV4•6『线路6』 +DW,https://dwamdstream102.akamaized.net/hls/live/2015525/dwstream102/stream05/streamPlaylist.m3u8$LR•IPV4•9『线路2』 +DW,http://aktv.top/AKTV/live/aktv3/dw/AKTV.m3u8$LR•IPV4•9『线路3』 +DW,http://37.27.111.214:8080/live/46/hls.m3u8$LR•IPV4•9『线路4』 +DW,https://dwamdstream104.akamaized.net/hls/live/2015530/dwstream104/stream04/streamPlaylist.m3u8$LR•IPV4•9『线路5』 +DW,https://dwamdstream103.akamaized.net/hls/live/2015526/dwstream103/master.m3u8$LR•IPV4•9『线路6』 +DW,https://amg01644-amg01644c1-amgplt0343.playout.now3.amagi.tv/ts-eu-w1-n2/playlist/amg01644-amg01644c1-amgplt0343/playlist.m3u8$LR•IPV4•9『线路7』 +DW,https://dwamdstream104.akamaized.net/hls/live/2015530/dwstream104/master.m3u8$LR•IPV4•9『线路8』 +DW,https://dwamdstream110.akamaized.net/hls/live/2017971/dwstream110/master.m3u8$LR•IPV4•9『线路9』 +France 24,https://amg00106-france24-france24-samsunguk-qvpp8.amagi.tv/playlist/amg00106-france24-france24-samsunguk/playlist.m3u8$LR•IPV4•6『线路1』 +France 24,https://live.france24.com/hls/live/2037222-b/F24_AR_HI_HLS/master_5000.m3u8$LR•IPV4•6『线路2』 +France 24,https://live.france24.com/hls/live/2037218-b/F24_EN_HI_HLS/master_5000.m3u8$LR•IPV4•6『线路3』 +France 24,https://live.france24.com/hls/live/2037220-b/F24_ES_HI_HLS/master_5000.m3u8$LR•IPV4•6『线路4』 +France 24,https://live.france24.com/hls/live/2037179-b/F24_FR_HI_HLS/master_5000.m3u8$LR•IPV4•6『线路5』 +France 24,https://amg00106-amg00106c1-rakuten-uk-4654.playouts.now.amagi.tv/playlist/amg00106-france24fast-france24-rakutenuk/playlist.m3u8$LR•IPV4•6『线路6』 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•4『线路1』 -NHK World-Japan,https://nhk.lls.pbs.org/index.m3u8$LR•IPV4•4『线路2』 -NHK World-Japan,http://aktv.top/AKTV/live/aktv3/nhkworldjapan/AKTV.m3u8$LR•IPV4•4『线路3』 -NHK World-Japan,https://media-tyo.hls.nhkworld.jp/hls/w/live/master.m3u8$LR•IPV4•4『线路4』 -Nick Jr,http://bethoven.af-stream.com:1600/s/kwtlxswl/nick-jr-il/video.m3u8$LR•IPV4•11『线路1』 -Nick Jr,https://stream8.cinerama.uz/1501/playlist.m3u8$LR•IPV4•11『线路2』 -Nick Jr,http://40.160.24.55/NICK_JR/index.m3u8$LR•IPV4•11『线路3』 -Nick Jr,https://jmp2.uk/plu-67f3eb1c443f0671bc03ece8.m3u8$LR•IPV4•11『线路4』 -Nick Jr,https://jmp2.uk/plu-6824ce95f09106f4b18f4114.m3u8$LR•IPV4•11『线路5』 -Nick Jr,https://jmp2.uk/plu-5ddd7cb2cbb9010009b4fe32.m3u8$LR•IPV4•11『线路6』 -Nick Jr,http://179.60.51.134:8888/NICK-JR/index.m3u8$LR•IPV4•11『线路7』 -Nick Jr,https://jmp2.uk/plu-62bdb75c3afd1200079146a6.m3u8$LR•IPV4•11『线路8』 -Nick Jr,https://jmp2.uk/plu-5ca6748a37b88b269472dad9.m3u8$LR•IPV4•11『线路9』 -Nick Jr,http://free.cnlive.club/channel/n75fc9ff7/index.m3u8?q=1752629214236$LR•IPV4•11『线路10』 -Nick Jr,http://108.181.20.255:27347/livehttpplay?channel_id=23044$LR•IPV4•11『线路11』 -Nickelodeon,http://213.91.179.28:8000/play/a056$LR•IPV4•27『线路1』 -Nickelodeon,https://ma.anixa.tv/clips/stream/nickelodeon/playlist.php$LR•IPV4•27『线路2』 -Nickelodeon,http://151.80.18.177:86/Nickelodeon_FR/index.m3u8$LR•IPV4•27『线路3』 -Nickelodeon,http://bethoven.af-stream.com:1600/s/kwtlxswl/yes-nickelodeon-il/video.m3u8$LR•IPV4•27『线路4』 -Nickelodeon,http://149.71.34.166:8000/play/a00u/index.m3u8$LR•IPV4•27『线路5』 -Nickelodeon,http://193.239.186.231/NICK/index.m3u8$LR•IPV4•27『线路6』 -Nickelodeon,http://82.78.243.219:45739/play/a00o/index.m3u8$LR•IPV4•27『线路7』 -Nickelodeon,http://23.237.104.106:8080/USA_NICKELODEON/index.m3u8$LR•IPV4•27『线路8』 -Nickelodeon,http://202.169.224.202:8800/udp/239.9.1.17:1234$LR•IPV4•27『线路9』 -Nickelodeon,https://stream8.cinerama.uz/1500/playlist.m3u8$LR•IPV4•27『线路10』 -Nickelodeon,https://jmp2.uk/plu-6824cda00101510f9eeaa011.m3u8$LR•IPV4•27『线路11』 -Nickelodeon,https://jmp2.uk/plu-6824ce10c5d53e1351ceb8d1.m3u8$LR•IPV4•27『线路12』 -Nickelodeon,https://jmp2.uk/plu-67f3eb800a1beb98767ca748.m3u8$LR•IPV4•27『线路13』 -Nickelodeon,https://jmp2.uk/plu-5d8d08395f39465da6fb3ec4.m3u8$LR•IPV4•27『线路14』 -Nickelodeon,http://46.149.191.217:9011/play/a018$LR•IPV4•27『线路15』 -Nickelodeon,http://151.80.18.177:86/Nickelodeon_Junior/index.m3u8$LR•IPV4•27『线路16』 -Nickelodeon,http://179.60.51.134:8888/NICK/index.m3u8$LR•IPV4•27『线路17』 -Nickelodeon,https://jmp2.uk/plu-5f0d668b872e4400073acc68.m3u8$LR•IPV4•27『线路18』 -Nickelodeon,https://jmp2.uk/plu-60f5fabf0721880007cd50e3.m3u8$LR•IPV4•27『线路19』 -Nickelodeon,https://jmp2.uk/plu-5fab09a8749b1a00077d35d2.m3u8$LR•IPV4•27『线路20』 -Nickelodeon,https://jmp2.uk/plu-5ede448d3d50590007a4419e.m3u8$LR•IPV4•27『线路21』 -Nickelodeon,https://jmp2.uk/plu-645951c0e94c38000802d2cb.m3u8$LR•IPV4•27『线路22』 -Nickelodeon,https://jmp2.uk/plu-645952687cb4b100084ed52e.m3u8$LR•IPV4•27『线路23』 -Nickelodeon,https://jmp2.uk/plu-620ff46e0a576e0007dc2f89.m3u8$LR•IPV4•27『线路24』 -Nickelodeon,https://jmp2.uk/plu-620ff0a01f9e8700076c6f9d.m3u8$LR•IPV4•27『线路25』 -Nickelodeon,https://jmp2.uk/plu-5ca673e0d0bd6c2689c94ce3.m3u8$LR•IPV4•27『线路26』 -Nickelodeon,http://free.cnlive.club/channel/n6a165737/index.m3u8?q=1752629214236$LR•IPV4•27『线路27』 +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•4『线路1』 +NHK World-Japan,https://media-tyo.hls.nhkworld.jp/hls/w/live/master.m3u8$LR•IPV4•4『线路2』 +NHK World-Japan,https://masterpl.hls.nhkworld.jp/hls/w/live/smarttv.m3u8$LR•IPV4•4『线路3』 +NHK World-Japan,https://nhk.lls.pbs.org/index.m3u8$LR•IPV4•4『线路4』 +Nick Jr,http://free.cnlive.club/channel/n75fc9ff7/index.m3u8?q=1752629214236$LR•IPV4•11『线路1』 +Nick Jr,http://108.181.20.255:27347/livehttpplay?channel_id=23044$LR•IPV4•11『线路2』 +Nick Jr,http://bethoven.af-stream.com:1600/s/kwtlxswl/nick-jr-il/video.m3u8$LR•IPV4•11『线路3』 +Nick Jr,https://stream8.cinerama.uz/1501/playlist.m3u8$LR•IPV4•11『线路4』 +Nick Jr,http://40.160.24.55/NICK_JR/index.m3u8$LR•IPV4•11『线路5』 +Nick Jr,https://jmp2.uk/plu-67f3eb1c443f0671bc03ece8.m3u8$LR•IPV4•11『线路6』 +Nick Jr,https://jmp2.uk/plu-6824ce95f09106f4b18f4114.m3u8$LR•IPV4•11『线路7』 +Nick Jr,https://jmp2.uk/plu-5ddd7cb2cbb9010009b4fe32.m3u8$LR•IPV4•11『线路8』 +Nick Jr,http://179.60.51.134:8888/NICK-JR/index.m3u8$LR•IPV4•11『线路9』 +Nick Jr,https://jmp2.uk/plu-62bdb75c3afd1200079146a6.m3u8$LR•IPV4•11『线路10』 +Nick Jr,https://jmp2.uk/plu-5ca6748a37b88b269472dad9.m3u8$LR•IPV4•11『线路11』 +Nickelodeon,http://free.cnlive.club/channel/n6a165737/index.m3u8?q=1752629214236$LR•IPV4•27『线路1』 +Nickelodeon,http://213.91.179.28:8000/play/a056$LR•IPV4•27『线路2』 +Nickelodeon,https://ma.anixa.tv/clips/stream/nickelodeon/playlist.php$LR•IPV4•27『线路3』 +Nickelodeon,http://151.80.18.177:86/Nickelodeon_FR/index.m3u8$LR•IPV4•27『线路4』 +Nickelodeon,http://bethoven.af-stream.com:1600/s/kwtlxswl/yes-nickelodeon-il/video.m3u8$LR•IPV4•27『线路5』 +Nickelodeon,http://149.71.34.166:8000/play/a00u/index.m3u8$LR•IPV4•27『线路6』 +Nickelodeon,http://193.239.186.231/NICK/index.m3u8$LR•IPV4•27『线路7』 +Nickelodeon,http://82.78.243.219:45739/play/a00o/index.m3u8$LR•IPV4•27『线路8』 +Nickelodeon,http://23.237.104.106:8080/USA_NICKELODEON/index.m3u8$LR•IPV4•27『线路9』 +Nickelodeon,http://202.169.224.202:8800/udp/239.9.1.17:1234$LR•IPV4•27『线路10』 +Nickelodeon,https://stream8.cinerama.uz/1500/playlist.m3u8$LR•IPV4•27『线路11』 +Nickelodeon,https://jmp2.uk/plu-6824cda00101510f9eeaa011.m3u8$LR•IPV4•27『线路12』 +Nickelodeon,https://jmp2.uk/plu-6824ce10c5d53e1351ceb8d1.m3u8$LR•IPV4•27『线路13』 +Nickelodeon,https://jmp2.uk/plu-67f3eb800a1beb98767ca748.m3u8$LR•IPV4•27『线路14』 +Nickelodeon,https://jmp2.uk/plu-5d8d08395f39465da6fb3ec4.m3u8$LR•IPV4•27『线路15』 +Nickelodeon,http://46.149.191.217:9011/play/a018$LR•IPV4•27『线路16』 +Nickelodeon,http://151.80.18.177:86/Nickelodeon_Junior/index.m3u8$LR•IPV4•27『线路17』 +Nickelodeon,http://179.60.51.134:8888/NICK/index.m3u8$LR•IPV4•27『线路18』 +Nickelodeon,https://jmp2.uk/plu-5f0d668b872e4400073acc68.m3u8$LR•IPV4•27『线路19』 +Nickelodeon,https://jmp2.uk/plu-60f5fabf0721880007cd50e3.m3u8$LR•IPV4•27『线路20』 +Nickelodeon,https://jmp2.uk/plu-5fab09a8749b1a00077d35d2.m3u8$LR•IPV4•27『线路21』 +Nickelodeon,https://jmp2.uk/plu-5ede448d3d50590007a4419e.m3u8$LR•IPV4•27『线路22』 +Nickelodeon,https://jmp2.uk/plu-645951c0e94c38000802d2cb.m3u8$LR•IPV4•27『线路23』 +Nickelodeon,https://jmp2.uk/plu-645952687cb4b100084ed52e.m3u8$LR•IPV4•27『线路24』 +Nickelodeon,https://jmp2.uk/plu-620ff46e0a576e0007dc2f89.m3u8$LR•IPV4•27『线路25』 +Nickelodeon,https://jmp2.uk/plu-620ff0a01f9e8700076c6f9d.m3u8$LR•IPV4•27『线路26』 +Nickelodeon,https://jmp2.uk/plu-5ca673e0d0bd6c2689c94ce3.m3u8$LR•IPV4•27『线路27』 Thrill,https://cdn10jtedge.indihometv.com/atm/DASH/thrill/manifest.mpd$LR•IPV4•2『线路1』 Thrill,https://8c4e8f4f.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/Um9rdV9DcmltZVRocmlsbEhlcl9ITFM/playlist.m3u8$LR•IPV4•2『线路2』 ZooMoo,p3p://167.114.175.6:55331/65679bc200084412adeb40284be664e6$LR•IPV4 @@ -4178,18 +4174,18 @@ ZooMoo,p3p://167.114.175.6:55331/65679bc200084412adeb40284be664e6$LR•IPV4 寰宇新闻,http://rihou.cc:555/tv/寰宇新闻$LR•IPV4•3『线路3』 靖天国际,p3p://167.114.175.6:55331/612db8220006940e897960753ab534e9$LR•IPV4 镜新闻,p3p://167.114.175.6:55331/63ebd33c0003c437e26ae87279d061f1$LR•IPV4 -龙华卡通,http://43.251.226.89:8080/play/910.m3u8$LR•IPV4•4『线路1』 -龙华卡通,http://cdn8.163189.xyz/163189/lhkt$LR•IPV4•4『线路2』 -龙华卡通,p3p://167.114.175.6:55331/6264b6e0000669483c6365b319d43878$LR•IPV4•4『线路3』 -龙华卡通,https://cdn8.163189.xyz/live/lhkt/stream.m3u8$LR•IPV4•4『线路4』 -龙华日韩,http://43.251.226.89:8080/play/912.m3u8$LR•IPV4•4『线路1』 -龙华日韩,http://cdn8.163189.xyz/163189/lhrh$LR•IPV4•4『线路2』 -龙华日韩,p3p://167.114.175.6:55331/621e1d0e00085766289da9bb1d7120af$LR•IPV4•4『线路3』 -龙华日韩,https://cdn8.163189.xyz/live/lhrh/stream.m3u8$LR•IPV4•4『线路4』 -龙华洋片,http://43.251.226.89:8080/play/908.m3u8$LR•IPV4•4『线路1』 -龙华洋片,http://cdn8.163189.xyz/163189/lhyp$LR•IPV4•4『线路2』 -龙华洋片,p3p://167.114.175.6:55331/64c0e1af000875f522a785c0570b06ae$LR•IPV4•4『线路3』 -龙华洋片,https://cdn8.163189.xyz/live/lhyp/stream.m3u8$LR•IPV4•4『线路4』 +龙华卡通,https://cdn8.163189.xyz/live/lhkt/stream.m3u8$LR•IPV4•4『线路1』 +龙华卡通,http://43.251.226.89:8080/play/910.m3u8$LR•IPV4•4『线路2』 +龙华卡通,http://cdn8.163189.xyz/163189/lhkt$LR•IPV4•4『线路3』 +龙华卡通,p3p://167.114.175.6:55331/6264b6e0000669483c6365b319d43878$LR•IPV4•4『线路4』 +龙华日韩,https://cdn8.163189.xyz/live/lhrh/stream.m3u8$LR•IPV4•4『线路1』 +龙华日韩,http://43.251.226.89:8080/play/912.m3u8$LR•IPV4•4『线路2』 +龙华日韩,http://cdn8.163189.xyz/163189/lhrh$LR•IPV4•4『线路3』 +龙华日韩,p3p://167.114.175.6:55331/621e1d0e00085766289da9bb1d7120af$LR•IPV4•4『线路4』 +龙华洋片,https://cdn8.163189.xyz/live/lhyp/stream.m3u8$LR•IPV4•4『线路1』 +龙华洋片,http://43.251.226.89:8080/play/908.m3u8$LR•IPV4•4『线路2』 +龙华洋片,http://cdn8.163189.xyz/163189/lhyp$LR•IPV4•4『线路3』 +龙华洋片,p3p://167.114.175.6:55331/64c0e1af000875f522a785c0570b06ae$LR•IPV4•4『线路4』 美亚电影台,http://43.251.226.89:8080/play/880.m3u8$LR•IPV4•3『线路1』 美亚电影台,p3p://167.114.175.6:55331/655f8ccc0007d2578e70f934113a2428$LR•IPV4•3『线路2』 美亚电影台,p3p://167.114.175.6:55331/64c3653f0007f6812c7970122ff43531$LR•IPV4•3『线路3』 @@ -4200,8 +4196,8 @@ ZooMoo,p3p://167.114.175.6:55331/65679bc200084412adeb40284be664e6$LR•IPV4 三立戏剧,http://61.221.215.25:8800/hls/41/index.m3u8$LR•IPV4 凤凰卫视,p3p://167.114.175.6:55331/602c73500002f4d29c90fa1270f21160$LR•IPV4•2『线路1』 凤凰卫视,http://cdn.132.us.kg/live/fhzw/stream.m3u8$LR•IPV4•2『线路2』 -Viutv,https://cdn.163189.xyz/163189/viu$LR•IPV4•8『线路1』 -Viutv,http://php.jdshipin.com/TVOD/iptv.php?id=viutv$LR•IPV4•8『线路2』 +Viutv,http://php.jdshipin.com/TVOD/iptv.php?id=viutv$LR•IPV4•8『线路1』 +Viutv,https://cdn.163189.xyz/163189/viu$LR•IPV4•8『线路2』 Viutv,http://php.jdshipin.com:8880/TVOD/iptv.php?id=viutv$LR•IPV4•8『线路3』 Viutv,http://php.jdshipin.com/PLTV/iptv.php?id=viutv2$LR•IPV4•8『线路4』 Viutv,http://rihou.cc:555/tv/[Cx]VIUTV英$LR•IPV4•8『线路5』 @@ -4244,9 +4240,9 @@ RTHK32,https://cdn5.163189.xyz/live/rthk32/stream.m3u8$LR•IPV4•5『线路5 寰宇财经,p3p://167.114.175.6:55331/64e36edf00052681a99e432a601547f5$LR•IPV4 东森财经,https://raw.githubusercontent.com/ChiSheng9/iptv/master/TV03.m3u8$LR•IPV4•2『线路1』 东森财经,p3p://167.114.175.6:55331/61468bd70005123dea7373f226636dba$LR•IPV4•2『线路2』 -龙华戏剧,http://43.251.226.89:8080/play/913.m3u8$LR•IPV4•3『线路1』 -龙华戏剧,http://cdn8.163189.xyz/163189/lhxj$LR•IPV4•3『线路2』 -龙华戏剧,https://cdn8.163189.xyz/live/lhxj/stream.m3u8$LR•IPV4•3『线路3』 +龙华戏剧,https://cdn8.163189.xyz/live/lhxj/stream.m3u8$LR•IPV4•3『线路1』 +龙华戏剧,http://43.251.226.89:8080/play/913.m3u8$LR•IPV4•3『线路2』 +龙华戏剧,http://cdn8.163189.xyz/163189/lhxj$LR•IPV4•3『线路3』 靖天育乐,p3p://167.114.175.6:55331/6223be04000a57323e9a6b2919b21d76$LR•IPV4 靖天欢乐,p3p://167.114.175.6:55331/6258f7e400070ac10e81d00831393e97$LR•IPV4 靖天综合,p3p://167.114.175.6:55331/6223bd68000c7a903e980a5524d66f67$LR•IPV4 @@ -4264,9 +4260,9 @@ RTHK32,https://cdn5.163189.xyz/live/rthk32/stream.m3u8$LR•IPV4•5『线路5 东森超视,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/ndGgS$LR•IPV4•10『线路1』 +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://r.jdshipin.com/Nr5jq$LR•IPV4•10『线路1』 TVB Plus,http://php.jdshipin.com/TVOD/iptv.php?id=j2$LR•IPV4•10『线路2』 TVB Plus,http://php.jdshipin.com/PLTV/iptv.php?id=j2$LR•IPV4•10『线路3』 TVB Plus,http://cdn.132.us.kg/live/tvbp/stream.m3u8$LR•IPV4•10『线路4』 @@ -4276,29 +4272,29 @@ TVB Plus,http://rihou.cc:555/tv/[Pd]Plus综合$LR•IPV4•10『线路7』 TVB Plus,p3p://167.114.175.6:55331/6649bce20008d56453eeebfc022701f1$LR•IPV4•10『线路8』 TVB Plus,p3p://167.114.175.6:55331/653e4d3e000b344f0c91357e73163f82$LR•IPV4•10『线路9』 TVB Plus,http://push.cdn1.hls123.de:8080/streams/gw8n98gubb4/index.m3u8$LR•IPV4•10『线路10』 -AXN,http://45.162.231.38:7779/AXN/index.m3u8$LR•IPV4•23『线路1』 -AXN,http://cdn.haititivi.com/AXN/index.m3u8$LR•IPV4•23『线路2』 -AXN,http://5.57.74.130:8000/play/a0at/index.m3u8$LR•IPV4•23『线路3』 -AXN,http://85.14.32.26:8800/udp/239.100.10.17:5000$LR•IPV4•23『线路4』 -AXN,http://88.212.15.19/live/test_black/playlist.m3u8$LR•IPV4•23『线路5』 -AXN,http://82.78.243.219:45739/play/a00e/index.m3u8$LR•IPV4•23『线路6』 -AXN,http://46.149.191.217:9009/play/a02d$LR•IPV4•23『线路7』 -AXN,http://85.11.144.9:4222/AXN$LR•IPV4•23『线路8』 -AXN,http://88.212.15.19/live/test_axn/playlist.m3u8$LR•IPV4•23『线路9』 -AXN,http://82.78.243.219:45739/play/a01n/index.m3u8$LR•IPV4•23『线路10』 -AXN,http://138.121.15.230:9002/AXN/index.m3u8$LR•IPV4•23『线路11』 -AXN,http://177.234.249.178:8888/AXN/index.m3u8$LR•IPV4•23『线路12』 -AXN,http://177.245.131.133:8080/AXN/index.m3u8$LR•IPV4•23『线路13』 -AXN,http://45.6.4.35/AXN/index.m3u8$LR•IPV4•23『线路14』 -AXN,http://50.7.120.34:8080/AXN_BLACK/index.m3u8$LR•IPV4•23『线路15』 -AXN,https://lb.dstvmultimedia.com/AXNSpin/index.m3u8$LR•IPV4•23『线路16』 -AXN,http://82.78.243.219:45739/play/a00n/index.m3u8$LR•IPV4•23『线路17』 -AXN,http://85.14.32.26:8800/udp/239.100.10.18:5000$LR•IPV4•23『线路18』 -AXN,http://88.212.15.19/live/test_white/playlist.m3u8$LR•IPV4•23『线路19』 -AXN,http://50.7.120.34:8080/AXN_WHITE/index.m3u8$LR•IPV4•23『线路20』 -AXN,http://54.37.19.157/axn/playlist.m3u8$LR•IPV4•23『线路21』 -AXN,p3p://167.114.175.6:55331/66d23a53000d25d573c606e3274f26c5$LR•IPV4•23『线路22』 -AXN,p3p://167.114.175.6:55331/6258ddc5000ee8a40e1bc8f50dec545c$LR•IPV4•23『线路23』 +AXN,p3p://167.114.175.6:55331/66d23a53000d25d573c606e3274f26c5$LR•IPV4•23『线路1』 +AXN,p3p://167.114.175.6:55331/6258ddc5000ee8a40e1bc8f50dec545c$LR•IPV4•23『线路2』 +AXN,http://45.162.231.38:7779/AXN/index.m3u8$LR•IPV4•23『线路3』 +AXN,http://cdn.haititivi.com/AXN/index.m3u8$LR•IPV4•23『线路4』 +AXN,http://5.57.74.130:8000/play/a0at/index.m3u8$LR•IPV4•23『线路5』 +AXN,http://85.14.32.26:8800/udp/239.100.10.17:5000$LR•IPV4•23『线路6』 +AXN,http://88.212.15.19/live/test_black/playlist.m3u8$LR•IPV4•23『线路7』 +AXN,http://82.78.243.219:45739/play/a00e/index.m3u8$LR•IPV4•23『线路8』 +AXN,http://46.149.191.217:9009/play/a02d$LR•IPV4•23『线路9』 +AXN,http://85.11.144.9:4222/AXN$LR•IPV4•23『线路10』 +AXN,http://88.212.15.19/live/test_axn/playlist.m3u8$LR•IPV4•23『线路11』 +AXN,http://82.78.243.219:45739/play/a01n/index.m3u8$LR•IPV4•23『线路12』 +AXN,http://138.121.15.230:9002/AXN/index.m3u8$LR•IPV4•23『线路13』 +AXN,http://177.234.249.178:8888/AXN/index.m3u8$LR•IPV4•23『线路14』 +AXN,http://177.245.131.133:8080/AXN/index.m3u8$LR•IPV4•23『线路15』 +AXN,http://45.6.4.35/AXN/index.m3u8$LR•IPV4•23『线路16』 +AXN,http://50.7.120.34:8080/AXN_BLACK/index.m3u8$LR•IPV4•23『线路17』 +AXN,https://lb.dstvmultimedia.com/AXNSpin/index.m3u8$LR•IPV4•23『线路18』 +AXN,http://82.78.243.219:45739/play/a00n/index.m3u8$LR•IPV4•23『线路19』 +AXN,http://85.14.32.26:8800/udp/239.100.10.18:5000$LR•IPV4•23『线路20』 +AXN,http://88.212.15.19/live/test_white/playlist.m3u8$LR•IPV4•23『线路21』 +AXN,http://50.7.120.34:8080/AXN_WHITE/index.m3u8$LR•IPV4•23『线路22』 +AXN,http://54.37.19.157/axn/playlist.m3u8$LR•IPV4•23『线路23』 娱乐新闻,https://hls-gateway.vpstv.net/streams/708904.m3u8$LR•IPV4 澳门卫视,http://61.244.22.4/ch1/ch1.live/playlist.m3u8$LR•IPV4•3『线路1』 澳门卫视,http://php.jdshipin.com:8880/TVOD/iptv.php?id=as$LR•IPV4•3『线路2』 @@ -4314,42 +4310,42 @@ 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•38『线路1』 Good,https://live.streamingfast.net/osmflivech2.m3u8$LR•IPV4•38『线路2』 -Good,https://aajtaklive.vgcdn.net/v1/master/611d79b11b77e2f571934fd80ca1413453772ac7/3196cced-ce29-4219-9809-f07ccdaa02b9/vglive-sk-848805/master.m3u8$LR•IPV4•38『线路3』 -Good,http://stream1.ai-net.net:1935/gtv1/_definst_/smil:gtv.smil/playlist.m3u8$LR•IPV4•38『线路4』 -Good,https://58c04fb1d143f.streamlock.net/feel_good_radio_1/feel_good_radio_1/playlist.m3u8$LR•IPV4•38『线路5』 -Good,https://live.streamingfast.net/osmflivech3.m3u8$LR•IPV4•38『线路6』 -Good,https://live.streamingfast.net/osmflivech5.m3u8$LR•IPV4•38『线路7』 -Good,https://live.streamingfast.net/osmflivech6.m3u8$LR•IPV4•38『线路8』 -Good,https://live.streamingfast.net/osmflivech7.m3u8$LR•IPV4•38『线路9』 -Good,https://live.streamingfast.net/osmflivech9.m3u8$LR•IPV4•38『线路10』 -Good,https://live.streamingfast.net/osmflivech12.m3u8$LR•IPV4•38『线路11』 -Good,https://live.streamingfast.net/osmflivech14.m3u8$LR•IPV4•38『线路12』 -Good,https://live.streamingfast.net/osmflivech15.m3u8$LR•IPV4•38『线路13』 -Good,https://live.streamingfast.net/osmflivech16.m3u8$LR•IPV4•38『线路14』 -Good,https://live.streamingfast.net/osmflivech17.m3u8$LR•IPV4•38『线路15』 -Good,https://live.streamingfast.net/osmflivech18.m3u8$LR•IPV4•38『线路16』 -Good,https://live.streamingfast.net/osmflivech20.m3u8$LR•IPV4•38『线路17』 -Good,https://live.streamingfast.net/osmflivech21.m3u8$LR•IPV4•38『线路18』 -Good,https://live.streamingfast.net/osmflivech24.m3u8$LR•IPV4•38『线路19』 -Good,https://live.streamingfast.net/osmflivech27.m3u8$LR•IPV4•38『线路20』 -Good,https://live.streamingfast.net/osmflivech28.m3u8$LR•IPV4•38『线路21』 -Good,https://live.streamingfast.net/osmflivech29.m3u8$LR•IPV4•38『线路22』 -Good,https://live.streamingfast.net/osmflivech30.m3u8$LR•IPV4•38『线路23』 -Good,https://live.streamingfast.net/osmflivech31.m3u8$LR•IPV4•38『线路24』 -Good,https://live.streamingfast.net/osmflivech32.m3u8$LR•IPV4•38『线路25』 -Good,https://live.streamingfast.net/osmflivech33.m3u8$LR•IPV4•38『线路26』 -Good,https://live.streamingfast.net/osmflivech38.m3u8$LR•IPV4•38『线路27』 -Good,https://live.streamingfast.net/osmflivech40.m3u8$LR•IPV4•38『线路28』 -Good,https://live.streamingfast.net/osmflivech45.m3u8$LR•IPV4•38『线路29』 -Good,https://live.streamingfast.net/osmflivech47.m3u8$LR•IPV4•38『线路30』 -Good,https://live.streamingfast.net/osmflivech49.m3u8$LR•IPV4•38『线路31』 -Good,https://live.streamingfast.net/osmflivech50.m3u8$LR•IPV4•38『线路32』 -Good,https://jmp2.uk/plu-65775af3b3801200084a3aa4.m3u8$LR•IPV4•38『线路33』 -Good,https://jmp2.uk/plu-685a995b460ac82fa504342c.m3u8$LR•IPV4•38『线路34』 -Good,https://amg01448-samsungin-ndtvgoodtimes-samsungin-ad-gp.amagi.tv/playlist/amg01448-samsungin-ndtvgoodtimes-samsungin/playlist.m3u8$LR•IPV4•38『线路35』 -Good,http://live.streamingfast.net/hls-live/goodtv/_definst_/liveevent/live-ch1-3.m3u8$LR•IPV4•38『线路36』 -Good,http://live.streamingfast.net/hls-live/goodtv/_definst_/liveevent/live-ch2-3.m3u8$LR•IPV4•38『线路37』 -Good,p3p://167.114.175.6:55331/63ed9f4900046160e96ffb5b44333476$LR•IPV4•38『线路38』 +Good,http://live.streamingfast.net/hls-live/goodtv/_definst_/liveevent/live-ch1-3.m3u8$LR•IPV4•38『线路3』 +Good,http://live.streamingfast.net/hls-live/goodtv/_definst_/liveevent/live-ch2-3.m3u8$LR•IPV4•38『线路4』 +Good,p3p://167.114.175.6:55331/63ed9f4900046160e96ffb5b44333476$LR•IPV4•38『线路5』 +Good,https://aajtaklive.vgcdn.net/v1/master/611d79b11b77e2f571934fd80ca1413453772ac7/3196cced-ce29-4219-9809-f07ccdaa02b9/vglive-sk-848805/master.m3u8$LR•IPV4•38『线路6』 +Good,http://stream1.ai-net.net:1935/gtv1/_definst_/smil:gtv.smil/playlist.m3u8$LR•IPV4•38『线路7』 +Good,https://58c04fb1d143f.streamlock.net/feel_good_radio_1/feel_good_radio_1/playlist.m3u8$LR•IPV4•38『线路8』 +Good,https://live.streamingfast.net/osmflivech3.m3u8$LR•IPV4•38『线路9』 +Good,https://live.streamingfast.net/osmflivech5.m3u8$LR•IPV4•38『线路10』 +Good,https://live.streamingfast.net/osmflivech6.m3u8$LR•IPV4•38『线路11』 +Good,https://live.streamingfast.net/osmflivech7.m3u8$LR•IPV4•38『线路12』 +Good,https://live.streamingfast.net/osmflivech9.m3u8$LR•IPV4•38『线路13』 +Good,https://live.streamingfast.net/osmflivech12.m3u8$LR•IPV4•38『线路14』 +Good,https://live.streamingfast.net/osmflivech14.m3u8$LR•IPV4•38『线路15』 +Good,https://live.streamingfast.net/osmflivech15.m3u8$LR•IPV4•38『线路16』 +Good,https://live.streamingfast.net/osmflivech16.m3u8$LR•IPV4•38『线路17』 +Good,https://live.streamingfast.net/osmflivech17.m3u8$LR•IPV4•38『线路18』 +Good,https://live.streamingfast.net/osmflivech18.m3u8$LR•IPV4•38『线路19』 +Good,https://live.streamingfast.net/osmflivech20.m3u8$LR•IPV4•38『线路20』 +Good,https://live.streamingfast.net/osmflivech21.m3u8$LR•IPV4•38『线路21』 +Good,https://live.streamingfast.net/osmflivech24.m3u8$LR•IPV4•38『线路22』 +Good,https://live.streamingfast.net/osmflivech27.m3u8$LR•IPV4•38『线路23』 +Good,https://live.streamingfast.net/osmflivech28.m3u8$LR•IPV4•38『线路24』 +Good,https://live.streamingfast.net/osmflivech29.m3u8$LR•IPV4•38『线路25』 +Good,https://live.streamingfast.net/osmflivech30.m3u8$LR•IPV4•38『线路26』 +Good,https://live.streamingfast.net/osmflivech31.m3u8$LR•IPV4•38『线路27』 +Good,https://live.streamingfast.net/osmflivech32.m3u8$LR•IPV4•38『线路28』 +Good,https://live.streamingfast.net/osmflivech33.m3u8$LR•IPV4•38『线路29』 +Good,https://live.streamingfast.net/osmflivech38.m3u8$LR•IPV4•38『线路30』 +Good,https://live.streamingfast.net/osmflivech40.m3u8$LR•IPV4•38『线路31』 +Good,https://live.streamingfast.net/osmflivech45.m3u8$LR•IPV4•38『线路32』 +Good,https://live.streamingfast.net/osmflivech47.m3u8$LR•IPV4•38『线路33』 +Good,https://live.streamingfast.net/osmflivech49.m3u8$LR•IPV4•38『线路34』 +Good,https://live.streamingfast.net/osmflivech50.m3u8$LR•IPV4•38『线路35』 +Good,https://jmp2.uk/plu-65775af3b3801200084a3aa4.m3u8$LR•IPV4•38『线路36』 +Good,https://jmp2.uk/plu-685a995b460ac82fa504342c.m3u8$LR•IPV4•38『线路37』 +Good,https://amg01448-samsungin-ndtvgoodtimes-samsungin-ad-gp.amagi.tv/playlist/amg01448-samsungin-ndtvgoodtimes-samsungin/playlist.m3u8$LR•IPV4•38『线路38』 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』 @@ -4362,21 +4358,21 @@ EBC YOYO,https://ythls.armelin.one/channel/UCiWRSesvSYmY7YOyz0tv_zQ.m3u8$LR•IP CTi News,https://raw.githubusercontent.com/ChiSheng9/iptv/master/TV28.m3u8$LR•IPV4 FTV News,https://ythls.armelin.one/channel/UC2VmWn8dAqkzlQqvy02E1PA.m3u8$LR•IPV4 Global News,https://live.corusdigitaldev.com/groupb/live/3062d0e3-ed4c-4f47-8482-95648250f4b8/live.isml/.m3u8$LR•IPV4•16『线路1』 -Global News,https://jmp2.uk/plu-62cbf063257170000724590c.m3u8$LR•IPV4•16『线路2』 -Global News,https://jmp2.uk/plu-62cbf23dcfb48300077f8348.m3u8$LR•IPV4•16『线路3』 -Global News,https://jmp2.uk/plu-62cbf2de1fba5f0007e47d9c.m3u8$LR•IPV4•16『线路4』 -Global News,https://jmp2.uk/plu-62cbf398b8e02600071deda5.m3u8$LR•IPV4•16『线路5』 -Global News,https://jmp2.uk/plu-62cbf4964446e2000742073e.m3u8$LR•IPV4•16『线路6』 -Global News,https://jmp2.uk/plu-62cbf7439cb58900088dc77b.m3u8$LR•IPV4•16『线路7』 -Global News,https://jmp2.uk/plu-62cbfbd6ad95670007f567af.m3u8$LR•IPV4•16『线路8』 -Global News,https://jmp2.uk/plu-62cbef9ebb857100072fc187.m3u8$LR•IPV4•16『线路9』 -Global News,https://jmp2.uk/plu-62cbfc572dc3750007a493ce.m3u8$LR•IPV4•16『线路10』 -Global News,https://jmp2.uk/plu-62cbfcd8c2db990007861e43.m3u8$LR•IPV4•16『线路11』 -Global News,https://jmp2.uk/plu-62cbff53ca8f2200080253b5.m3u8$LR•IPV4•16『线路12』 -Global News,https://jmp2.uk/plu-62cc00359cb58900088dc840.m3u8$LR•IPV4•16『线路13』 -Global News,https://jmp2.uk/plu-62cc00b3b821cf00070f82c3.m3u8$LR•IPV4•16『线路14』 -Global News,https://jmp2.uk/plu-62cc0120880c890007191016.m3u8$LR•IPV4•16『线路15』 -Global News,http://iptv.zkbhj.com/tv/url/go?id=188da1cd42026cce4e3c6fd900520b5bf2325e82e1723382000c25c9009b1449703a53d8cb741b92224765715d1a7388d43b8da7f422852ecf86f83de913c00f$LR•IPV4•16『线路16』 +Global News,http://iptv.zkbhj.com/tv/url/go?id=188da1cd42026cce4e3c6fd900520b5bf2325e82e1723382000c25c9009b1449703a53d8cb741b92224765715d1a7388d43b8da7f422852ecf86f83de913c00f$LR•IPV4•16『线路2』 +Global News,https://jmp2.uk/plu-62cbf063257170000724590c.m3u8$LR•IPV4•16『线路3』 +Global News,https://jmp2.uk/plu-62cbf23dcfb48300077f8348.m3u8$LR•IPV4•16『线路4』 +Global News,https://jmp2.uk/plu-62cbf2de1fba5f0007e47d9c.m3u8$LR•IPV4•16『线路5』 +Global News,https://jmp2.uk/plu-62cbf398b8e02600071deda5.m3u8$LR•IPV4•16『线路6』 +Global News,https://jmp2.uk/plu-62cbf4964446e2000742073e.m3u8$LR•IPV4•16『线路7』 +Global News,https://jmp2.uk/plu-62cbf7439cb58900088dc77b.m3u8$LR•IPV4•16『线路8』 +Global News,https://jmp2.uk/plu-62cbfbd6ad95670007f567af.m3u8$LR•IPV4•16『线路9』 +Global News,https://jmp2.uk/plu-62cbef9ebb857100072fc187.m3u8$LR•IPV4•16『线路10』 +Global News,https://jmp2.uk/plu-62cbfc572dc3750007a493ce.m3u8$LR•IPV4•16『线路11』 +Global News,https://jmp2.uk/plu-62cbfcd8c2db990007861e43.m3u8$LR•IPV4•16『线路12』 +Global News,https://jmp2.uk/plu-62cbff53ca8f2200080253b5.m3u8$LR•IPV4•16『线路13』 +Global News,https://jmp2.uk/plu-62cc00359cb58900088dc840.m3u8$LR•IPV4•16『线路14』 +Global News,https://jmp2.uk/plu-62cc00b3b821cf00070f82c3.m3u8$LR•IPV4•16『线路15』 +Global News,https://jmp2.uk/plu-62cc0120880c890007191016.m3u8$LR•IPV4•16『线路16』 SET iNews,https://ythls.armelin.one/channel/UCoNYj9OFHZn3ACmmeRCPwbA.m3u8$LR•IPV4 TTV News,https://ythls.armelin.one/channel/UC8ROUUjHzEQm-ndb69CX8Ww.m3u8$LR•IPV4 mnews,https://ythls.armelin.one/channel/UC4LjkybVKXCDlneVXlKAbmw.m3u8$LR•IPV4 @@ -4391,10 +4387,10 @@ 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•4『线路1』 +HOY TV,http://php.jdshipin.com/TVOD/iptv.php?id=hoytv$LR•IPV4•4『线路1』 HOY TV,p3p://167.114.175.6:55331/62184bc3000cd48f11e47b06202b7e18$LR•IPV4•4『线路2』 HOY TV,http://push.cdn1.hls123.de:8080/streams/dguce4v9b69/index.m3u8$LR•IPV4•4『线路3』 -HOY TV,http://php.jdshipin.com/TVOD/iptv.php?id=hoytv$LR•IPV4•4『线路4』 +HOY TV,https://hoytv-live-stream.hoy.tv/ch77/index.m3u8$LR•IPV4•4『线路4』 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 @@ -4428,14 +4424,14 @@ 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://amg00556-amg00556c3-firetv-us-6060.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•8『线路1』 -NBA TV,http://user.scalecdn.co:8080/live/54706135/09221986/3092.m3u8$LR•IPV4•8『线路2』 -NBA TV,https://t.freetv.fun/live/nba-tv.m3u8$LR•IPV4•8『线路3』 -NBA TV,https://t.freetv.fun/live/nba-tv-2.php$LR•IPV4•8『线路4』 -NBA TV,https://stream1.freetv.fun/nba-tv-7.m3u8$LR•IPV4•8『线路5』 -NBA TV,https://stream1.freetv.fun/nba-tv-5.m3u8$LR•IPV4•8『线路6』 -NBA TV,http://170.yfvodcdn.com:19980/live/nbaTV2/hls.m3u8$LR•IPV4•8『线路7』 -NBA TV,p3p://167.114.175.6:55331/65a587500007bc039fca3566638e69af$LR•IPV4•8『线路8』 +NBA TV,https://t.freetv.fun/live/nba-tv.m3u8$LR•IPV4•8『线路1』 +NBA TV,https://t.freetv.fun/live/nba-tv-2.php$LR•IPV4•8『线路2』 +NBA TV,https://stream1.freetv.fun/nba-tv-7.m3u8$LR•IPV4•8『线路3』 +NBA TV,https://stream1.freetv.fun/nba-tv-5.m3u8$LR•IPV4•8『线路4』 +NBA TV,http://170.yfvodcdn.com:19980/live/nbaTV2/hls.m3u8$LR•IPV4•8『线路5』 +NBA TV,p3p://167.114.175.6:55331/65a587500007bc039fca3566638e69af$LR•IPV4•8『线路6』 +NBA TV,https://amg00556-amg00556c3-firetv-us-6060.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•8『线路7』 +NBA TV,http://user.scalecdn.co:8080/live/54706135/09221986/3092.m3u8$LR•IPV4•8『线路8』 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』 @@ -4450,130 +4446,130 @@ 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•100『线路1』 BBC,https://aegis-cloudfront-1.tubi.video/bb1fc6ad-9948-42ea-aaf3-20acfcdeecac/playlist.m3u8$LR•IPV4•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路9』 -BBC,http://193.46.58.239:8080/BBCOneHD/index.m3u8$LR•IPV4•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路27』 -BBC,http://193.46.58.239:8080/BBCTwoHD/index.m3u8$LR•IPV4•100『线路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•100『线路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•100『线路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•100『线路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•100『线路32』 -BBC,https://pb-iiczlgfysam0q.akamaized.net/v1/amcnetworks_bbcnews_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•100『线路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•100『线路34』 -BBC,http://138.121.15.230:9002/BBC-NEWS/index.m3u8$LR•IPV4•100『线路35』 -BBC,http://23.237.104.106:8080/USA_BBC_NEWS/index.m3u8$LR•IPV4•100『线路36』 -BBC,http://45.153.96.44:8001$LR•IPV4•100『线路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•100『线路38』 -BBC,http://23.239.31.26:8989/bbcamerica/index.m3u8$LR•IPV4•100『线路39』 -BBC,http://81.15.109.89:8001/play/BBCBrit$LR•IPV4•100『线路40』 -BBC,http://81.15.109.89:8001/play/BBCFirst$LR•IPV4•100『线路41』 -BBC,https://d1em2hga7sgumq.cloudfront.net/playlist.m3u8$LR•IPV4•100『线路42』 -BBC,https://pb-0ix3l1oxmg1fj.akamaized.net/playlist.m3u8$LR•IPV4•100『线路43』 -BBC,https://amg00793-amg00793c41-rakuten-it-5445.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•100『线路44』 -BBC,https://bbc-impossible-1-us.xumo.wurl.tv/playlist.m3u8$LR•IPV4•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路70』 -BBC,https://jmp2.uk/plu-60dafb9a0df1ba000758d37b.m3u8$LR•IPV4•100『线路71』 -BBC,https://jmp2.uk/plu-62e7fa5ab5062e0007dcf97d.m3u8$LR•IPV4•100『线路72』 -BBC,https://amg00793-amg00793c5-xumo-us-2664.playouts.now.amagi.tv/bbcstudios-bbctopgear8min-all/playlist.m3u8$LR•IPV4•100『线路73』 -BBC,https://amg00793-amg00793c5-firetv-us-4068.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•100『线路74』 -BBC,https://amg00793-amg00793c49-rakuten-fi-5848.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•100『线路75』 -BBC,https://amg00793-amg00793c45-rakuten-fr-5539.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•100『线路76』 -BBC,https://amg00793-amg00793c44-rakuten-de-5538.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•100『线路77』 -BBC,https://amg00793-amg00793c43-rakuten-it-5537.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•100『线路78』 -BBC,https://dmr1h4skdal9h.cloudfront.net/playlist.m3u8$LR•IPV4•100『线路79』 -BBC,https://bbc-classicdrwho-1-us.roku.wurl.tv/playlist.m3u8$LR•IPV4•100『线路80』 -BBC,https://amg00793-amg00793c40-rakuten-es-5444.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•100『线路81』 -BBC,https://d11r33s5i066xh.cloudfront.net/playlist.m3u8$LR•IPV4•100『线路82』 -BBC,https://cdn4.skygo.mn/live/disk1/BBC_lifestyle/HLSv3-FTA/BBC_lifestyle.m3u8$LR•IPV4•100『线路83』 -BBC,http://81.15.109.89:8001/play/BBCLifestyle$LR•IPV4•100『线路84』 -BBC,https://jmp2.uk/plu-60e4519e6873180007d3cddb.m3u8$LR•IPV4•100『线路85』 -BBC,http://81.15.109.89:8001/play/BBCEarth$LR•IPV4•100『线路86』 -BBC,https://amg00793-amg00793c6-xumo-us-2669.playouts.now.amagi.tv/BBCStudios-BBCEarthA-hls/playlist.m3u8$LR•IPV4•100『线路87』 -BBC,http://185.102.171.218/BBCEarth/index.m3u8$LR•IPV4•100『线路88』 -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•100『线路89』 -BBC,https://d1e9r0b71zfwk7.cloudfront.net/playlist.m3u8$LR•IPV4•100『线路90』 -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•100『线路91』 -BBC,http://193.46.58.239:8080/CbeebiesHD/index.m3u8$LR•IPV4•100『线路92』 -BBC,http://193.46.58.239:8080/CBBCHD/index.m3u8$LR•IPV4•100『线路93』 -BBC,http://free.cnlive.club/channel/356e7ac6/index.m3u8?q=1752629214236$LR•IPV4•100『线路94』 -BBC,http://free.cnlive.club/channel/359a630b/index.m3u8?q=1752629214236$LR•IPV4•100『线路95』 -BBC,p3p://167.114.175.6:55331/64026f590000e9663abc652f25176282$LR•IPV4•100『线路96』 -BBC,p3p://167.114.175.6:55331/6444eb2e000921503e6ecfe873cd10b1$LR•IPV4•100『线路97』 -BBC,http://125.227.210.55:8165/VideoInput/play.ts$LR•IPV4•100『线路98』 -BBC,https://d2vnbkvjbims7j.cloudfront.net/containerA/LTN/playlist.m3u8$LR•IPV4•100『线路99』 -BBC,https://amg00793-amg00793c6-xumo-us-2669.playouts.now.amagi.tv/BBCStudios-BBCEarthA-hls/playlist540p.m3u8$LR•IPV4•100『线路100』 +BBC,http://free.cnlive.club/channel/356e7ac6/index.m3u8?q=1752629214236$LR•IPV4•100『线路3』 +BBC,http://free.cnlive.club/channel/359a630b/index.m3u8?q=1752629214236$LR•IPV4•100『线路4』 +BBC,p3p://167.114.175.6:55331/64026f590000e9663abc652f25176282$LR•IPV4•100『线路5』 +BBC,p3p://167.114.175.6:55331/6444eb2e000921503e6ecfe873cd10b1$LR•IPV4•100『线路6』 +BBC,http://125.227.210.55:8165/VideoInput/play.ts$LR•IPV4•100『线路7』 +BBC,https://d2vnbkvjbims7j.cloudfront.net/containerA/LTN/playlist.m3u8$LR•IPV4•100『线路8』 +BBC,https://amg00793-amg00793c6-xumo-us-2669.playouts.now.amagi.tv/BBCStudios-BBCEarthA-hls/playlist540p.m3u8$LR•IPV4•100『线路9』 +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•100『线路10』 +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•100『线路11』 +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•100『线路12』 +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•100『线路13』 +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•100『线路14』 +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•100『线路15』 +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•100『线路16』 +BBC,http://193.46.58.239:8080/BBCOneHD/index.m3u8$LR•IPV4•100『线路17』 +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•100『线路18』 +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•100『线路19』 +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•100『线路20』 +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•100『线路21』 +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•100『线路22』 +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•100『线路23』 +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•100『线路24』 +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•100『线路25』 +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•100『线路26』 +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•100『线路27』 +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•100『线路28』 +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•100『线路29』 +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•100『线路30』 +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•100『线路31』 +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•100『线路32』 +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•100『线路33』 +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•100『线路34』 +BBC,http://193.46.58.239:8080/BBCTwoHD/index.m3u8$LR•IPV4•100『线路35』 +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•100『线路36』 +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•100『线路37』 +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•100『线路38』 +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•100『线路39』 +BBC,https://pb-iiczlgfysam0q.akamaized.net/v1/amcnetworks_bbcnews_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•100『线路40』 +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•100『线路41』 +BBC,http://138.121.15.230:9002/BBC-NEWS/index.m3u8$LR•IPV4•100『线路42』 +BBC,http://23.237.104.106:8080/USA_BBC_NEWS/index.m3u8$LR•IPV4•100『线路43』 +BBC,http://45.153.96.44:8001$LR•IPV4•100『线路44』 +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•100『线路45』 +BBC,http://23.239.31.26:8989/bbcamerica/index.m3u8$LR•IPV4•100『线路46』 +BBC,http://81.15.109.89:8001/play/BBCBrit$LR•IPV4•100『线路47』 +BBC,http://81.15.109.89:8001/play/BBCFirst$LR•IPV4•100『线路48』 +BBC,https://d1em2hga7sgumq.cloudfront.net/playlist.m3u8$LR•IPV4•100『线路49』 +BBC,https://pb-0ix3l1oxmg1fj.akamaized.net/playlist.m3u8$LR•IPV4•100『线路50』 +BBC,https://amg00793-amg00793c41-rakuten-it-5445.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•100『线路51』 +BBC,https://bbc-impossible-1-us.xumo.wurl.tv/playlist.m3u8$LR•IPV4•100『线路52』 +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•100『线路53』 +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•100『线路54』 +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•100『线路55』 +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•100『线路56』 +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•100『线路57』 +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•100『线路58』 +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•100『线路59』 +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•100『线路60』 +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•100『线路61』 +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•100『线路62』 +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•100『线路63』 +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•100『线路64』 +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•100『线路65』 +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•100『线路66』 +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•100『线路67』 +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•100『线路68』 +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•100『线路69』 +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•100『线路70』 +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•100『线路71』 +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•100『线路72』 +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•100『线路73』 +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•100『线路74』 +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•100『线路75』 +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•100『线路76』 +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•100『线路77』 +BBC,https://jmp2.uk/plu-60dafb9a0df1ba000758d37b.m3u8$LR•IPV4•100『线路78』 +BBC,https://jmp2.uk/plu-62e7fa5ab5062e0007dcf97d.m3u8$LR•IPV4•100『线路79』 +BBC,https://amg00793-amg00793c5-xumo-us-2664.playouts.now.amagi.tv/bbcstudios-bbctopgear8min-all/playlist.m3u8$LR•IPV4•100『线路80』 +BBC,https://amg00793-amg00793c5-firetv-us-4068.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•100『线路81』 +BBC,https://amg00793-amg00793c49-rakuten-fi-5848.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•100『线路82』 +BBC,https://amg00793-amg00793c45-rakuten-fr-5539.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•100『线路83』 +BBC,https://amg00793-amg00793c44-rakuten-de-5538.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•100『线路84』 +BBC,https://amg00793-amg00793c43-rakuten-it-5537.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•100『线路85』 +BBC,https://dmr1h4skdal9h.cloudfront.net/playlist.m3u8$LR•IPV4•100『线路86』 +BBC,https://bbc-classicdrwho-1-us.roku.wurl.tv/playlist.m3u8$LR•IPV4•100『线路87』 +BBC,https://amg00793-amg00793c40-rakuten-es-5444.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•100『线路88』 +BBC,https://d11r33s5i066xh.cloudfront.net/playlist.m3u8$LR•IPV4•100『线路89』 +BBC,https://cdn4.skygo.mn/live/disk1/BBC_lifestyle/HLSv3-FTA/BBC_lifestyle.m3u8$LR•IPV4•100『线路90』 +BBC,http://81.15.109.89:8001/play/BBCLifestyle$LR•IPV4•100『线路91』 +BBC,https://jmp2.uk/plu-60e4519e6873180007d3cddb.m3u8$LR•IPV4•100『线路92』 +BBC,http://81.15.109.89:8001/play/BBCEarth$LR•IPV4•100『线路93』 +BBC,https://amg00793-amg00793c6-xumo-us-2669.playouts.now.amagi.tv/BBCStudios-BBCEarthA-hls/playlist.m3u8$LR•IPV4•100『线路94』 +BBC,http://185.102.171.218/BBCEarth/index.m3u8$LR•IPV4•100『线路95』 +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•100『线路96』 +BBC,https://d1e9r0b71zfwk7.cloudfront.net/playlist.m3u8$LR•IPV4•100『线路97』 +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•100『线路98』 +BBC,http://193.46.58.239:8080/CbeebiesHD/index.m3u8$LR•IPV4•100『线路99』 +BBC,http://193.46.58.239:8080/CBBCHD/index.m3u8$LR•IPV4•100『线路100』 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://ds2c506obo7m8.cloudfront.net/v1/master/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-7zjq3tdqasbg8/index.m3u8$LR•IPV4•12『线路1』 -CNN,http://88.212.15.19/live/test_cnn_pirma_news/playlist.m3u8$LR•IPV4•12『线路2』 -CNN,https://jmp2.uk/plu-66c45c274f25dd00092739ee.m3u8$LR•IPV4•12『线路3』 -CNN,https://jmp2.uk/plu-5421f71da6af422839419cb3.m3u8$LR•IPV4•12『线路4』 -CNN,https://jmp2.uk/plu-66337e365a402e00087eccaf.m3u8$LR•IPV4•12『线路5』 -CNN,https://jmp2.uk/plu-66c45c0de7f5e80008b82005.m3u8$LR•IPV4•12『线路6』 -CNN,https://jmp2.uk/plu-66c45b36a72e7b0008a2b291.m3u8$LR•IPV4•12『线路7』 -CNN,https://jmp2.uk/plu-66c45ba803e3b20008d8c294.m3u8$LR•IPV4•12『线路8』 -CNN,https://jmp2.uk/plu-66dff9d46ad04d0008fda4de.m3u8$LR•IPV4•12『线路9』 -CNN,https://jmp2.uk/plu-673248f9030a2c0008033af8.m3u8$LR•IPV4•12『线路10』 -CNN,https://jmp2.uk/plu-66e0b4536ad04d0008fff4b2.m3u8$LR•IPV4•12『线路11』 -CNN,http://live.cnnindonesia.com/livecnn/smil:cnntv.smil/chunklist_w1285822120_b384000_sleng.m3u8$LR•IPV4•12『线路12』 -CBC News,https://d2ny9lo79ujali.cloudfront.net/CBC_News_International.m3u8$LR•IPV4•8『线路1』 -CBC News,https://jmp2.uk/plu-6536725167bd1a00084481bc.m3u8$LR•IPV4•8『线路2』 -CBC News,https://amagi-streams.akamaized.net/hls/live/2110960/cbcnewsbc/master.m3u8$LR•IPV4•8『线路3』 -CBC News,https://jmp2.uk/plu-66a8f01914a2bb00084dd86c.m3u8$LR•IPV4•8『线路4』 -CBC News,https://amagi-streams.akamaized.net/hls/live/2110962/cbcexplore/master.m3u8$LR•IPV4•8『线路5』 -CBC News,https://amagi-streams.akamaized.net/hls/live/2110961/cbctoronto/master.m3u8$LR•IPV4•8『线路6』 -CBC News,https://jmp2.uk/plu-6536721dbfbaec00088687c0.m3u8$LR•IPV4•8『线路7』 -CBC News,https://dbrb49pjoymg4.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod_default_xumo-ams-aws/master.m3u8?ads.xumo_channelId=99991276$LR•IPV4•8『线路8』 +CNN,http://live.cnnindonesia.com/livecnn/smil:cnntv.smil/chunklist_w1285822120_b384000_sleng.m3u8$LR•IPV4•12『线路2』 +CNN,http://88.212.15.19/live/test_cnn_pirma_news/playlist.m3u8$LR•IPV4•12『线路3』 +CNN,https://jmp2.uk/plu-66c45c274f25dd00092739ee.m3u8$LR•IPV4•12『线路4』 +CNN,https://jmp2.uk/plu-5421f71da6af422839419cb3.m3u8$LR•IPV4•12『线路5』 +CNN,https://jmp2.uk/plu-66337e365a402e00087eccaf.m3u8$LR•IPV4•12『线路6』 +CNN,https://jmp2.uk/plu-66c45c0de7f5e80008b82005.m3u8$LR•IPV4•12『线路7』 +CNN,https://jmp2.uk/plu-66c45b36a72e7b0008a2b291.m3u8$LR•IPV4•12『线路8』 +CNN,https://jmp2.uk/plu-66c45ba803e3b20008d8c294.m3u8$LR•IPV4•12『线路9』 +CNN,https://jmp2.uk/plu-66dff9d46ad04d0008fda4de.m3u8$LR•IPV4•12『线路10』 +CNN,https://jmp2.uk/plu-673248f9030a2c0008033af8.m3u8$LR•IPV4•12『线路11』 +CNN,https://jmp2.uk/plu-66e0b4536ad04d0008fff4b2.m3u8$LR•IPV4•12『线路12』 +CBC News,https://dbrb49pjoymg4.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod_default_xumo-ams-aws/master.m3u8?ads.xumo_channelId=99991276$LR•IPV4•8『线路1』 +CBC News,https://d2ny9lo79ujali.cloudfront.net/CBC_News_International.m3u8$LR•IPV4•8『线路2』 +CBC News,https://jmp2.uk/plu-6536725167bd1a00084481bc.m3u8$LR•IPV4•8『线路3』 +CBC News,https://amagi-streams.akamaized.net/hls/live/2110960/cbcnewsbc/master.m3u8$LR•IPV4•8『线路4』 +CBC News,https://jmp2.uk/plu-66a8f01914a2bb00084dd86c.m3u8$LR•IPV4•8『线路5』 +CBC News,https://amagi-streams.akamaized.net/hls/live/2110962/cbcexplore/master.m3u8$LR•IPV4•8『线路6』 +CBC News,https://amagi-streams.akamaized.net/hls/live/2110961/cbctoronto/master.m3u8$LR•IPV4•8『线路7』 +CBC News,https://jmp2.uk/plu-6536721dbfbaec00088687c0.m3u8$LR•IPV4•8『线路8』 Sky News,https://d39chvnxm26pgp.cloudfront.net/v1/master/72588bff830dec7b26d7cbbf5f3c24928aec5c03/cc-sthen6ms4vxgv-stage/WNSFO/ABR.m3u8$LR•IPV4•10『线路1』 Sky News,http://41.205.77.102/SKYNEWS/index.m3u8$LR•IPV4•10『线路2』 Sky News,https://live-stream.skynewsarabia.com/c-horizontal-channel/horizontal-stream/index.m3u8$LR•IPV4•10『线路3』 @@ -4585,14 +4581,14 @@ Sky News,https://skynewsau-live.akamaized.net/hls/live/2002690/skynewsau-extra2/ Sky News,https://skynewsau-live.akamaized.net/hls/live/2002691/skynewsau-extra3/master.m3u8$LR•IPV4•10『线路9』 Sky News,https://distro001-gb-hls1-prd.delivery.skycdp.com/easel_cdn/ngrp:weather_loop.stream_all/playlist.m3u8$LR•IPV4•10『线路10』 Al Jazeera,https://live-hls-aje-ak.getaj.net/AJE/01.m3u8$LR•IPV4•9『线路1』 -Al Jazeera,https://live-hls-apps-aja-fa.getaj.net/AJA/01.m3u8$LR•IPV4•9『线路2』 -Al Jazeera,https://live-hls-web-aja2-gcp.thehlive.com/AJA2/index.m3u8$LR•IPV4•9『线路3』 -Al Jazeera,https://live-hls-apps-aje-fa.getaj.net/AJE/index.m3u8$LR•IPV4•9『线路4』 -Al Jazeera,https://live-hls-apps-ajm-fa.getaj.net/AJM/index.m3u8$LR•IPV4•9『线路5』 -Al Jazeera,https://live-hls-apps-ajm24-fa.getaj.net/AJM24/index.m3u8$LR•IPV4•9『线路6』 -Al Jazeera,https://live-hls-apps-ajm2-fa.getaj.net/AJM2/index.m3u8$LR•IPV4•9『线路7』 -Al Jazeera,https://live-hls-apps-ajd-fa.getaj.net/AJD/index.m3u8$LR•IPV4•9『线路8』 -Al Jazeera,http://live-hls-web-aja.getaj.net/AJA/02.m3u8$LR•IPV4•9『线路9』 +Al Jazeera,http://live-hls-web-aja.getaj.net/AJA/02.m3u8$LR•IPV4•9『线路2』 +Al Jazeera,https://live-hls-apps-aja-fa.getaj.net/AJA/01.m3u8$LR•IPV4•9『线路3』 +Al Jazeera,https://live-hls-web-aja2-gcp.thehlive.com/AJA2/index.m3u8$LR•IPV4•9『线路4』 +Al Jazeera,https://live-hls-apps-aje-fa.getaj.net/AJE/index.m3u8$LR•IPV4•9『线路5』 +Al Jazeera,https://live-hls-apps-ajm-fa.getaj.net/AJM/index.m3u8$LR•IPV4•9『线路6』 +Al Jazeera,https://live-hls-apps-ajm24-fa.getaj.net/AJM24/index.m3u8$LR•IPV4•9『线路7』 +Al Jazeera,https://live-hls-apps-ajm2-fa.getaj.net/AJM2/index.m3u8$LR•IPV4•9『线路8』 +Al Jazeera,https://live-hls-apps-ajd-fa.getaj.net/AJD/index.m3u8$LR•IPV4•9『线路9』 Arirang,https://amdlive-ch01-ctnd-com.akamaized.net/arirang_1ch/smil:arirang_1ch.smil/chunklist_b3256000_sleng.m3u8$LR•IPV4•5『线路1』 Arirang,http://amdlive-ch01.ctnd.com.edgesuite.net/arirang_3ch/smil:arirang_3ch.smil/playlist.m3u8$LR•IPV4•5『线路2』 Arirang,https://amdlive-ch02-ctnd-com.akamaized.net/arirang_2ch/smil:arirang_2ch.smil/playlist.m3u8$LR•IPV4•5『线路3』 @@ -4608,48 +4604,48 @@ Fashion TV,http://free.cnlive.club/channel/n7852a99f/index.m3u8?q=1752629214236$ SKY,http://s.rocketdns.info:8080/live/monstercable/Dq6jjknxCr/2188.ts$LR•IPV4•26『线路1』 SKY,http://s.rocketdns.info:8080/live/monstercable/Dq6jjknxCr/2179.ts$LR•IPV4•26『线路2』 SKY,http://s.rocketdns.info:8080/live/monstercable/Dq6jjknxCr/2182.ts$LR•IPV4•26『线路3』 -SKY,https://cdn5.smart-tv-data.com/bluesky/bluesky-live/playlist.m3u8$LR•IPV4•26『线路4』 -SKY,http://80.194.62.172:50002/stream/channelid/1848745953$LR•IPV4•26『线路5』 -SKY,https://primetv-prod.akamaized.net/v1/prime-freeview-aes128.m3u8$LR•IPV4•26『线路6』 -SKY,https://linear-p.media.skyone.co.nz/primeplus1.clear.m3u8$LR•IPV4•26『线路7』 -SKY,https://eu.live.skyfolk.mk/live.m3u8$LR•IPV4•26『线路8』 -SKY,https://636ffd31f0e12.streamlock.net/RacingStream1/RacingStream1/playlist.m3u8$LR•IPV4•26『线路9』 -SKY,https://636ffd31f0e12.streamlock.net/RacingStream2/RacingStream2/playlist.m3u8$LR•IPV4•26『线路10』 -SKY,https://skylivetab-new.akamaized.net/hls/live/2038782/stcsd/index.m3u8$LR•IPV4•26『线路11』 -SKY,http://nocable.cc:8080//OURTV/OURTV@4806/35241$LR•IPV4•26『线路12』 -SKY,http://nocable.cc:8080//OURTV/OURTV@4806/35244$LR•IPV4•26『线路13』 -SKY,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001373$LR•IPV4•26『线路14』 -SKY,http://nocable.cc:8080//OURTV/OURTV@4806/35240$LR•IPV4•26『线路15』 -SKY,http://nocable.cc:8080//OURTV/OURTV@4806/137720$LR•IPV4•26『线路16』 -SKY,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001376$LR•IPV4•26『线路17』 -SKY,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001378$LR•IPV4•26『线路18』 -SKY,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001379$LR•IPV4•26『线路19』 -SKY,http://nocable.cc:8080//OURTV/OURTV@4806/53705$LR•IPV4•26『线路20』 -SKY,http://nocable.cc:8080//OURTV/OURTV@4806/35238$LR•IPV4•26『线路21』 -SKY,http://nocable.cc:8080//OURTV/OURTV@4806/53663$LR•IPV4•26『线路22』 -SKY,http://nocable.cc:8080//OURTV/OURTV@4806/45940$LR•IPV4•26『线路23』 -SKY,http://vocotv.pro//revol/revol/276918$LR•IPV4•26『线路24』 -SKY,http://vocotv.pro//revol/revol/276924$LR•IPV4•26『线路25』 -SKY,http://vocotv.pro//revol/revol/276906$LR•IPV4•26『线路26』 +SKY,http://nocable.cc:8080//OURTV/OURTV@4806/35241$LR•IPV4•26『线路4』 +SKY,http://nocable.cc:8080//OURTV/OURTV@4806/35244$LR•IPV4•26『线路5』 +SKY,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001373$LR•IPV4•26『线路6』 +SKY,http://nocable.cc:8080//OURTV/OURTV@4806/35240$LR•IPV4•26『线路7』 +SKY,http://nocable.cc:8080//OURTV/OURTV@4806/137720$LR•IPV4•26『线路8』 +SKY,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001376$LR•IPV4•26『线路9』 +SKY,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001378$LR•IPV4•26『线路10』 +SKY,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001379$LR•IPV4•26『线路11』 +SKY,http://nocable.cc:8080//OURTV/OURTV@4806/53705$LR•IPV4•26『线路12』 +SKY,http://nocable.cc:8080//OURTV/OURTV@4806/35238$LR•IPV4•26『线路13』 +SKY,http://nocable.cc:8080//OURTV/OURTV@4806/53663$LR•IPV4•26『线路14』 +SKY,http://nocable.cc:8080//OURTV/OURTV@4806/45940$LR•IPV4•26『线路15』 +SKY,http://vocotv.pro//revol/revol/276918$LR•IPV4•26『线路16』 +SKY,http://vocotv.pro//revol/revol/276924$LR•IPV4•26『线路17』 +SKY,http://vocotv.pro//revol/revol/276906$LR•IPV4•26『线路18』 +SKY,https://cdn5.smart-tv-data.com/bluesky/bluesky-live/playlist.m3u8$LR•IPV4•26『线路19』 +SKY,http://80.194.62.172:50002/stream/channelid/1848745953$LR•IPV4•26『线路20』 +SKY,https://primetv-prod.akamaized.net/v1/prime-freeview-aes128.m3u8$LR•IPV4•26『线路21』 +SKY,https://linear-p.media.skyone.co.nz/primeplus1.clear.m3u8$LR•IPV4•26『线路22』 +SKY,https://eu.live.skyfolk.mk/live.m3u8$LR•IPV4•26『线路23』 +SKY,https://636ffd31f0e12.streamlock.net/RacingStream1/RacingStream1/playlist.m3u8$LR•IPV4•26『线路24』 +SKY,https://636ffd31f0e12.streamlock.net/RacingStream2/RacingStream2/playlist.m3u8$LR•IPV4•26『线路25』 +SKY,https://skylivetab-new.akamaized.net/hls/live/2038782/stcsd/index.m3u8$LR•IPV4•26『线路26』 KBS world,http://31.148.48.15/KBS_World/index.m3u8$LR•IPV4 -FIFA+,https://jmp2.uk/plu-660c29b5aec9680008f5b4a4.m3u8$LR•IPV4•12『线路1』 -FIFA+,https://37b4c228.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWZyX0ZJRkFQbHVzRnJlbmNoX0hMUw/playlist.m3u8$LR•IPV4•12『线路2』 -FIFA+,https://4397879b.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWRlX0ZJRkFQbHVzR2VybWFuX0hMUw/playlist.m3u8$LR•IPV4•12『线路3』 -FIFA+,https://6c849fb3.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/TEctbXhfRklGQVBsdXNTcGFuaXNoLTFfSExT/playlist.m3u8$LR•IPV4•12『线路4』 -FIFA+,https://5d95f7d7.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWl0X0ZJRkFQbHVzSXRhbGlhbl9ITFM/playlist.m3u8$LR•IPV4•12『线路5』 -FIFA+,https://e3be9ac5.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/TEctYnJfRklGQVBsdXNQb3J0dWd1ZXNlX0hMUw/playlist.m3u8$LR•IPV4•12『线路6』 -FIFA+,https://d63fabad.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWVzX0ZJRkFQbHVzU3BhbmlzaF9ITFM/playlist.m3u8$LR•IPV4•12『线路7』 -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•12『线路8』 -FIFA+,https://cffda8ff.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/U2Ftc3VuZy1nYl9GSUZBUGx1c3dvbWVuX0hMUw/playlist.m3u8$LR•IPV4•12『线路9』 -FIFA+,https://d2w9q46ikgrcwx.cloudfront.net/v1/manifest/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-of5cbk3sav3w5/554c05e7-129a-4758-97ba-aa2292e58973/1.m3u8$LR•IPV4•12『线路10』 -FIFA+,https://d2w9q46ikgrcwx.cloudfront.net/v1/manifest/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-of5cbk3sav3w5/035f3906-e664-4f1b-83f0-a7547730adce/0.m3u8$LR•IPV4•12『线路11』 -FIFA+,https://d2w9q46ikgrcwx.cloudfront.net/v1/manifest/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-of5cbk3sav3w5/b31ebba5-b6b6-4083-9426-1c4bd66b7119/0.m3u8$LR•IPV4•12『线路12』 +FIFA+,https://d2w9q46ikgrcwx.cloudfront.net/v1/manifest/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-of5cbk3sav3w5/554c05e7-129a-4758-97ba-aa2292e58973/1.m3u8$LR•IPV4•12『线路1』 +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•12『线路2』 +FIFA+,https://d2w9q46ikgrcwx.cloudfront.net/v1/manifest/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-of5cbk3sav3w5/035f3906-e664-4f1b-83f0-a7547730adce/0.m3u8$LR•IPV4•12『线路3』 +FIFA+,https://d2w9q46ikgrcwx.cloudfront.net/v1/manifest/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-of5cbk3sav3w5/b31ebba5-b6b6-4083-9426-1c4bd66b7119/0.m3u8$LR•IPV4•12『线路4』 +FIFA+,https://jmp2.uk/plu-660c29b5aec9680008f5b4a4.m3u8$LR•IPV4•12『线路5』 +FIFA+,https://37b4c228.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWZyX0ZJRkFQbHVzRnJlbmNoX0hMUw/playlist.m3u8$LR•IPV4•12『线路6』 +FIFA+,https://4397879b.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWRlX0ZJRkFQbHVzR2VybWFuX0hMUw/playlist.m3u8$LR•IPV4•12『线路7』 +FIFA+,https://6c849fb3.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/TEctbXhfRklGQVBsdXNTcGFuaXNoLTFfSExT/playlist.m3u8$LR•IPV4•12『线路8』 +FIFA+,https://5d95f7d7.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWl0X0ZJRkFQbHVzSXRhbGlhbl9ITFM/playlist.m3u8$LR•IPV4•12『线路9』 +FIFA+,https://e3be9ac5.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/TEctYnJfRklGQVBsdXNQb3J0dWd1ZXNlX0hMUw/playlist.m3u8$LR•IPV4•12『线路10』 +FIFA+,https://d63fabad.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWVzX0ZJRkFQbHVzU3BhbmlzaF9ITFM/playlist.m3u8$LR•IPV4•12『线路11』 +FIFA+,https://cffda8ff.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/U2Ftc3VuZy1nYl9GSUZBUGx1c3dvbWVuX0hMUw/playlist.m3u8$LR•IPV4•12『线路12』 Newsmax,https://nmx1ota.akamaized.net/hls/live/2107010/Live_1/3.m3u8$LR•IPV4•6『线路1』 -Newsmax,https://2-fss-2.streamhoster.com/pl_120/206858-4404556-1/playlist.m3u8$LR•IPV4•6『线路2』 -Newsmax,https://amg00217-newsmax-newsmax-zeasn-022k9.amagi.tv/playlist.m3u8$LR•IPV4•6『线路3』 -Newsmax,https://nmx1ota.akamaized.net/hls/live/2107010/Live_1/index.m3u8$LR•IPV4•6『线路4』 -Newsmax,http://nmxlive.akamaized.net/hls/live/529965/Live_1/index.m3u8$LR•IPV4•6『线路5』 -Newsmax,https://nmxlive.akamaized.net/hls/live/529965/Live_1/index.m3u8$LR•IPV4•6『线路6』 +Newsmax,http://nmxlive.akamaized.net/hls/live/529965/Live_1/index.m3u8$LR•IPV4•6『线路2』 +Newsmax,https://nmxlive.akamaized.net/hls/live/529965/Live_1/index.m3u8$LR•IPV4•6『线路3』 +Newsmax,https://2-fss-2.streamhoster.com/pl_120/206858-4404556-1/playlist.m3u8$LR•IPV4•6『线路4』 +Newsmax,https://amg00217-newsmax-newsmax-zeasn-022k9.amagi.tv/playlist.m3u8$LR•IPV4•6『线路5』 +Newsmax,https://nmx1ota.akamaized.net/hls/live/2107010/Live_1/index.m3u8$LR•IPV4•6『线路6』 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』 @@ -4660,43 +4656,43 @@ 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•8『线路1』 -Love Nature,https://aegis-cloudfront-1.tubi.video/6d6d0f24-8445-4b4c-bdf6-44f9e38beaa4/playlist.m3u8$LR•IPV4•8『线路2』 -Love Nature,https://pb-ehs1glsha1juy.akamaized.net/Love_Nature_4K.m3u8$LR•IPV4•8『线路3』 -Love Nature,http://185.246.209.113/LOVENATUREHD/index.m3u8$LR•IPV4•8『线路4』 -Love Nature,p3p://167.114.175.6:55331/655fa9280009c6278edfc1176731425f$LR•IPV4•8『线路5』 -Love Nature,https://d18dyiwu97wm6q.cloudfront.net/playlist2160p.m3u8$LR•IPV4•8『线路6』 -Love Nature,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1761&tk=f6cc1e0a0e1a$LR•IPV4•8『线路7』 -Love Nature,http://rihou.cc:555/tv/LoveNature$LR•IPV4•8『线路8』 +Love Nature,p3p://167.114.175.6:55331/655fa9280009c6278edfc1176731425f$LR•IPV4•8『线路1』 +Love Nature,https://d18dyiwu97wm6q.cloudfront.net/playlist2160p.m3u8$LR•IPV4•8『线路2』 +Love Nature,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1761&tk=f6cc1e0a0e1a$LR•IPV4•8『线路3』 +Love Nature,http://rihou.cc:555/tv/LoveNature$LR•IPV4•8『线路4』 +Love Nature,https://amg01515-amg01515c17-xumo-us-2489.playouts.now.amagi.tv/bamus-lovenaturespanish-roku/playlist.m3u8$LR•IPV4•8『线路5』 +Love Nature,https://aegis-cloudfront-1.tubi.video/6d6d0f24-8445-4b4c-bdf6-44f9e38beaa4/playlist.m3u8$LR•IPV4•8『线路6』 +Love Nature,https://pb-ehs1glsha1juy.akamaized.net/Love_Nature_4K.m3u8$LR•IPV4•8『线路7』 +Love Nature,http://185.246.209.113/LOVENATUREHD/index.m3u8$LR•IPV4•8『线路8』 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 -Stadium,https://wurl120sports.global.transmit.live/hls/679a907dce42a042c23ace37/v1/stadium_gracenote/samsung_us/latest/main/hls/playlist.m3u8$LR•IPV4•2『线路1』 -Stadium,https://2d006483e2aa43fe812f7b464cb2916d.mediatailor.us-east-1.amazonaws.com/v1/master/44f73ba4d03e9607dcd9bebdcb8494d86964f1d8/Samsung_Stadium/playlist.m3u8$LR•IPV4•2『线路2』 -Pop,http://206.212.244.63/139/index.m3u8$LR•IPV4•24『线路1』 -Pop,https://radio.congoplanet.com/Congo_Planet_TV_Pop.sdp/Congo_Planet_TV_Pop/playlist.m3u8$LR•IPV4•24『线路2』 -Pop,https://d3kmrn2mstrnk5.cloudfront.net/f4acc9ba_daae_4ed0_b836_32126cead919/hls/playlist.m3u8$LR•IPV4•24『线路3』 -Pop,https://amg01753-narrativeentert-popkids-lggb-xyy5k.amagi.tv/ts-eu-w1-n2/playlist/amg01753-narrativeentert-popkids-lggb/playlist.m3u8$LR•IPV4•24『线路4』 -Pop,https://stream.ads.ottera.tv/playlist.m3u8?network_id=1086$LR•IPV4•24『线路5』 -Pop,https://amg00056-amg00056c7-rakuten-de-3245.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•24『线路6』 -Pop,https://amg00056-amg00056c8-rakuten-it-3239.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•24『线路7』 -Pop,https://amg00056-amg00056c10-rakuten-es-3242.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•24『线路8』 -Pop,https://d2n3779oy6efpi.cloudfront.net/playlist.m3u8$LR•IPV4•24『线路9』 -Pop,https://amg00056-amg00056c15-rakuten-it-3241.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•24『线路10』 -Pop,https://amg01753-amg01753c9-samsung-gb-8005.playouts.now.amagi.tv/ts-eu-w1-n2/playlist/amg01753-narrativeuk-popup-samsunggb/playlist.m3u8$LR•IPV4•24『线路11』 -Pop,https://jmp2.uk/plu-6093f7b5bb49b90007cecaad.m3u8$LR•IPV4•24『线路12』 -Pop,https://amg01753-narrativeuk-amg01753c1-lg-gb-1830.playouts.now.amagi.tv/playlist/amg01753-narrativeuk-tinypop-lggb/playlist.m3u8$LR•IPV4•24『线路13』 -Pop,http://92.114.85.72:8000/play/a08p$LR•IPV4•24『线路14』 -Pop,https://dogus-live.daioncdn.net/kralpoptv/playlist.m3u8$LR•IPV4•24『线路15』 -Pop,https://jmp2.uk/plu-6047fbdbbb776a0007e7f2ff.m3u8$LR•IPV4•24『线路16』 -Pop,https://jmp2.uk/plu-65410176770cf1000866bf31.m3u8$LR•IPV4•24『线路17』 -Pop,https://jmp2.uk/plu-6047fabfce6e8e00070bcc9f.m3u8$LR•IPV4•24『线路18』 -Pop,https://jmp2.uk/plu-5d14fd1a252d35decbc4080c.m3u8$LR•IPV4•24『线路19』 -Pop,https://janus.xpbroadcasting.com:8443/hls/popworld.m3u8$LR•IPV4•24『线路20』 -Pop,https://lotus.stingray.com/manifest/ose-104ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•24『线路21』 -Pop,https://lotus.stingray.com/manifest/ose-190ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•24『线路22』 -Pop,https://d128y56w6v2kax.cloudfront.net/playlist/amg00056-vevotv-vevopopau-samsungau/playlist.m3u8$LR•IPV4•24『线路23』 -Pop,http://bgdc.live:25461/catrinamcdermott/catrinamcdermott/51112$LR•IPV4•24『线路24』 +Stadium,https://2d006483e2aa43fe812f7b464cb2916d.mediatailor.us-east-1.amazonaws.com/v1/master/44f73ba4d03e9607dcd9bebdcb8494d86964f1d8/Samsung_Stadium/playlist.m3u8$LR•IPV4•2『线路1』 +Stadium,https://wurl120sports.global.transmit.live/hls/679a907dce42a042c23ace37/v1/stadium_gracenote/samsung_us/latest/main/hls/playlist.m3u8$LR•IPV4•2『线路2』 +Pop,http://bgdc.live:25461/catrinamcdermott/catrinamcdermott/51112$LR•IPV4•24『线路1』 +Pop,http://206.212.244.63/139/index.m3u8$LR•IPV4•24『线路2』 +Pop,https://radio.congoplanet.com/Congo_Planet_TV_Pop.sdp/Congo_Planet_TV_Pop/playlist.m3u8$LR•IPV4•24『线路3』 +Pop,https://d3kmrn2mstrnk5.cloudfront.net/f4acc9ba_daae_4ed0_b836_32126cead919/hls/playlist.m3u8$LR•IPV4•24『线路4』 +Pop,https://amg01753-narrativeentert-popkids-lggb-xyy5k.amagi.tv/ts-eu-w1-n2/playlist/amg01753-narrativeentert-popkids-lggb/playlist.m3u8$LR•IPV4•24『线路5』 +Pop,https://stream.ads.ottera.tv/playlist.m3u8?network_id=1086$LR•IPV4•24『线路6』 +Pop,https://amg00056-amg00056c7-rakuten-de-3245.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•24『线路7』 +Pop,https://amg00056-amg00056c8-rakuten-it-3239.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•24『线路8』 +Pop,https://amg00056-amg00056c10-rakuten-es-3242.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•24『线路9』 +Pop,https://d2n3779oy6efpi.cloudfront.net/playlist.m3u8$LR•IPV4•24『线路10』 +Pop,https://amg00056-amg00056c15-rakuten-it-3241.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•24『线路11』 +Pop,https://amg01753-amg01753c9-samsung-gb-8005.playouts.now.amagi.tv/ts-eu-w1-n2/playlist/amg01753-narrativeuk-popup-samsunggb/playlist.m3u8$LR•IPV4•24『线路12』 +Pop,https://jmp2.uk/plu-6093f7b5bb49b90007cecaad.m3u8$LR•IPV4•24『线路13』 +Pop,https://amg01753-narrativeuk-amg01753c1-lg-gb-1830.playouts.now.amagi.tv/playlist/amg01753-narrativeuk-tinypop-lggb/playlist.m3u8$LR•IPV4•24『线路14』 +Pop,http://92.114.85.72:8000/play/a08p$LR•IPV4•24『线路15』 +Pop,https://dogus-live.daioncdn.net/kralpoptv/playlist.m3u8$LR•IPV4•24『线路16』 +Pop,https://jmp2.uk/plu-6047fbdbbb776a0007e7f2ff.m3u8$LR•IPV4•24『线路17』 +Pop,https://jmp2.uk/plu-65410176770cf1000866bf31.m3u8$LR•IPV4•24『线路18』 +Pop,https://jmp2.uk/plu-6047fabfce6e8e00070bcc9f.m3u8$LR•IPV4•24『线路19』 +Pop,https://jmp2.uk/plu-5d14fd1a252d35decbc4080c.m3u8$LR•IPV4•24『线路20』 +Pop,https://janus.xpbroadcasting.com:8443/hls/popworld.m3u8$LR•IPV4•24『线路21』 +Pop,https://lotus.stingray.com/manifest/ose-104ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•24『线路22』 +Pop,https://lotus.stingray.com/manifest/ose-190ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•24『线路23』 +Pop,https://d128y56w6v2kax.cloudfront.net/playlist/amg00056-vevotv-vevopopau-samsungau/playlist.m3u8$LR•IPV4•24『线路24』 Tastemade,https://jmp2.uk/plu-68b88821e542386ab0bf5bef.m3u8$LR•IPV4•15『线路1』 Tastemade,https://jmp2.uk/plu-68b887c2e77777498226a0de.m3u8$LR•IPV4•15『线路2』 Tastemade,https://d3ca4qxsdzlrju.cloudfront.net/Tastemade_Home.m3u8$LR•IPV4•15『线路3』 @@ -4718,39 +4714,39 @@ 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•17『线路1』 -Bloomberg,http://23.237.104.106:8080/USA_BLOOMBERG/index.m3u8$LR•IPV4•17『线路2』 -Bloomberg,https://bloomberg.com/media-manifest/streams/aus.m3u8$LR•IPV4•17『线路3』 -Bloomberg,http://213.91.179.28:8000/play/a04m$LR•IPV4•17『线路4』 -Bloomberg,https://bloomberg.com/media-manifest/streams/eu-event.m3u8$LR•IPV4•17『线路5』 -Bloomberg,https://bloomberg.com/media-manifest/streams/eu.m3u8$LR•IPV4•17『线路6』 -Bloomberg,https://cdn4.skygo.mn/live/disk1/BloombergMon/DASH-FTA/BloombergMon.mpd$LR•IPV4•17『线路7』 -Bloomberg,https://bloomberg.com/media-manifest/streams/us-event.m3u8$LR•IPV4•17『线路8』 -Bloomberg,https://bloomberg.com/media-manifest/streams/politics.m3u8$LR•IPV4•17『线路9』 -Bloomberg,https://d8975dc3.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/U2Ftc3VuZy1nYl9CbG9vbWJlcmdUVlBsdXNfSExT/playlist.m3u8$LR•IPV4•17『线路10』 -Bloomberg,https://86ebec83.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWV1X0Jsb29tYmVyZ1RWUGx1c19ITFM/playlist.m3u8$LR•IPV4•17『线路11』 -Bloomberg,https://pe-ak-lp01a-9c9media.akamaized.net/live/News1BNNDigi/p/dash/00000001/1bba52dc66e4c68e/manifest.mpd$LR•IPV4•17『线路12』 -Bloomberg,https://epg.pw/stream/d2edf469b9079064a283f4b0811cbf6f2597ebbb3d08dcf77036a4b5a791b7cf.m3u8$LR•IPV4•17『线路13』 -Bloomberg,https://bloomberg-bloombergtv-3-nl.samsung.wurl.tv/playlist.m3u8$LR•IPV4•17『线路14』 -Bloomberg,https://bloomberg-bloombergtv-5-eu.plex.wurl.tv/3ea2c48ba0034cc276591c94a5b439c0.m3u8$LR•IPV4•17『线路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•17『线路16』 -Bloomberg,https://cdn-uw2-prod.tsv2.amagi.tv/linear/amg01601-bloomberg-bloombergplus-hls-rakutenjp/playlist.m3u8$LR•IPV4•17『线路17』 -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,http://rezofoot.tv/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://206.212.244.63/42/index.m3u8$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://epg.pw/stream/d2edf469b9079064a283f4b0811cbf6f2597ebbb3d08dcf77036a4b5a791b7cf.m3u8$LR•IPV4•17『线路1』 +Bloomberg,https://bloomberg-bloombergtv-3-nl.samsung.wurl.tv/playlist.m3u8$LR•IPV4•17『线路2』 +Bloomberg,https://bloomberg-bloombergtv-5-eu.plex.wurl.tv/3ea2c48ba0034cc276591c94a5b439c0.m3u8$LR•IPV4•17『线路3』 +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•17『线路4』 +Bloomberg,https://cdn-uw2-prod.tsv2.amagi.tv/linear/amg01601-bloomberg-bloombergplus-hls-rakutenjp/playlist.m3u8$LR•IPV4•17『线路5』 +Bloomberg,https://ciner.daioncdn.net/bloomberght/bloomberght.m3u8$LR•IPV4•17『线路6』 +Bloomberg,http://23.237.104.106:8080/USA_BLOOMBERG/index.m3u8$LR•IPV4•17『线路7』 +Bloomberg,https://bloomberg.com/media-manifest/streams/aus.m3u8$LR•IPV4•17『线路8』 +Bloomberg,http://213.91.179.28:8000/play/a04m$LR•IPV4•17『线路9』 +Bloomberg,https://bloomberg.com/media-manifest/streams/eu-event.m3u8$LR•IPV4•17『线路10』 +Bloomberg,https://bloomberg.com/media-manifest/streams/eu.m3u8$LR•IPV4•17『线路11』 +Bloomberg,https://cdn4.skygo.mn/live/disk1/BloombergMon/DASH-FTA/BloombergMon.mpd$LR•IPV4•17『线路12』 +Bloomberg,https://bloomberg.com/media-manifest/streams/us-event.m3u8$LR•IPV4•17『线路13』 +Bloomberg,https://bloomberg.com/media-manifest/streams/politics.m3u8$LR•IPV4•17『线路14』 +Bloomberg,https://d8975dc3.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/U2Ftc3VuZy1nYl9CbG9vbWJlcmdUVlBsdXNfSExT/playlist.m3u8$LR•IPV4•17『线路15』 +Bloomberg,https://86ebec83.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWV1X0Jsb29tYmVyZ1RWUGx1c19ITFM/playlist.m3u8$LR•IPV4•17『线路16』 +Bloomberg,https://pe-ak-lp01a-9c9media.akamaized.net/live/News1BNNDigi/p/dash/00000001/1bba52dc66e4c68e/manifest.mpd$LR•IPV4•17『线路17』 +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,http://rezofoot.tv/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://206.212.244.63/42/index.m3u8$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•5『线路1』 TV8,https://k20.usastreams.com:8081/tv8/index.m3u8$LR•IPV4•5『线路2』 TV8,https://cdn4.skygo.mn/live/disk1/TV8HD/DASH-FTA/TV8HD.mpd$LR•IPV4•5『线路3』 @@ -4762,7 +4758,7 @@ ViuTV6,https://flv-play.clouda.com/live/viu6-D6pO0qnPgYtsKeTdGr82OSkWEl8zBX3XM1t 博斯高球2,p3p://167.114.175.6:55331/6258e1c9000c6f010e2b77e9601b5186$LR•IPV4 博斯魅力,p3p://167.114.175.6:55331/612ee43d000c84ea8e0dab707a8b2e0d$LR•IPV4 中天綜合,http://23.237.10.66:16372$LR•IPV4 -澳视澳门,https://cdn6.163189.xyz/163189/asam$LR•IPV4•9『线路1』 +澳视澳门,http://php.jdshipin.com:8880/TVOD/iptv.php?id=asam$LR•IPV4•9『线路1』 澳视澳门,http://php.jdshipin.com/TVOD/iptv.php?id=asam$LR•IPV4•9『线路2』 澳视澳门,http://php.jdshipin.com/PLTV/iptv.php?id=asam$LR•IPV4•9『线路3』 澳视澳门,http://1b6467f415.iok.la:9931/tsfile/live/1039_1.m3u8$LR•IPV4•9『线路4』 @@ -4774,15 +4770,14 @@ ViuTV6,https://flv-play.clouda.com/live/viu6-D6pO0qnPgYtsKeTdGr82OSkWEl8zBX3XM1t TVB J1,p3p://167.114.175.6:55331/63efe0de000858baf2402a646c573e1b$LR•IPV4 千禧经典,http://cdn9.163189.xyz/smt3.1.1.php?id=Tvbclassic$LR•IPV4 MOMO TV,http://free.cnlive.club/channel/5fe8f622/index.m3u8?q=1752629214236$LR•IPV4 -HOY78,http://bziyunshao.synology.me:8891/bysid/78$LR•IPV4•2『线路1』 -HOY78,http://cdn.163189.xyz/live/hoy/stream.m3u8$LR•IPV4•2『线路2』 +HOY78,http://cdn.163189.xyz/live/hoy/stream.m3u8$LR•IPV4•2『线路1』 +HOY78,http://bziyunshao.synology.me:8891/bysid/78$LR•IPV4•2『线路2』 ASTRO AOD,http://php.jdshipin.com/TVOD/iptv.php?id=aod$LR•IPV4 ELEVEN体育3,https://smart.pendy.dpdns.org/Smart.php?id=eltasport3_twn$LR•IPV4 -澳视卫星,https://cdn6.163189.xyz/163189/as$LR•IPV4•5『线路1』 -澳视卫星,http://php.jdshipin.com/TVOD/iptv.php?id=as$LR•IPV4•5『线路2』 -澳视卫星,http://103.233.191.134:1935/ch3/ch3.live/playlist.m3u8$LR•IPV4•5『线路3』 -澳视卫星,http://43.251.226.89:8080/play/901.m3u8$LR•IPV4•5『线路4』 -澳视卫星,http://push.cdn1.hls123.de:8080/streams/gese9d57376/index.m3u8$LR•IPV4•5『线路5』 +澳视卫星,http://php.jdshipin.com/TVOD/iptv.php?id=as$LR•IPV4•4『线路1』 +澳视卫星,http://103.233.191.134:1935/ch3/ch3.live/playlist.m3u8$LR•IPV4•4『线路2』 +澳视卫星,http://43.251.226.89:8080/play/901.m3u8$LR•IPV4•4『线路3』 +澳视卫星,http://push.cdn1.hls123.de:8080/streams/gese9d57376/index.m3u8$LR•IPV4•4『线路4』 八度空间,https://cdn6.163189.xyz/163189/8tv$LR•IPV4•2『线路1』 八度空间,http://43.251.226.89:8080/play/917.m3u8$LR•IPV4•2『线路2』 CH5,https://cdn6.163189.xyz/163189/ch5$LR•IPV4•2『线路1』 @@ -4794,8 +4789,8 @@ CHU,http://43.251.226.89:8080/play/914.m3u8$LR•IPV4•2『线路2』 NOW NEWS,https://d35j504z0x2vu2.cloudfront.net/v1/master/0bc8e8376bd8417a1b6761138aa41c26c7309312/times-now-news/master.m3u8?ads.vf=yxbqJWPCXd4$LR•IPV4 澳门体育,http://cdn6.163189.xyz/163189/amty$LR•IPV4•2『线路1』 澳门体育,http://43.251.226.89:8080/play/902.m3u8$LR•IPV4•2『线路2』 -澳门综艺,http://43.251.226.89:8080/play/903.m3u8$LR•IPV4•2『线路1』 -澳门综艺,http://cdn6.163189.xyz/163189/amzy$LR•IPV4•2『线路2』 +澳门综艺,http://cdn6.163189.xyz/163189/amzy$LR•IPV4•2『线路1』 +澳门综艺,http://43.251.226.89:8080/play/903.m3u8$LR•IPV4•2『线路2』 NU2,https://raw.githubusercontent.com/ChiSheng9/iptv/master/TV14.m3u8$LR•IPV4 华视HD,https://raw.githubusercontent.com/ChiSheng9/iptv/master/TV12.m3u8$LR•IPV4 @@ -4803,20 +4798,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/tvbox/lib/iptv_test.m3u b/tvbox/lib/iptv_test.m3u index e0b4ddc7..b28338e7 100755 --- a/tvbox/lib/iptv_test.m3u +++ b/tvbox/lib/iptv_test.m3u @@ -1,42 +1,42 @@ #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=1783738800-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-a3b6211ac6216364658c2ed2b35f324b&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•5『线路1』 +https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4k_mbd.m3u8?auth_key=1783746000-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-9506187e2170a2680534df6e34133fee&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•5『线路1』 #EXTINF:-1 tvg-id="CCTV4K" tvg-name="CCTV4K" group-title="央视频道",CCTV-4K -http://198.204.240.250:82/live/cctv4k.m3u8$LR•IPV4•5『线路2』 +https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4k_mbd.m3u8?auth_key=1783742400-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-b5fa4a51df4a44a9f4b42b8923a48bc9&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•5『线路2』 #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=1783731600-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-04b27a198b2f04c15287bec6e71771b5&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•5『线路3』 +http://192.151.150.154/live/cctv4k.m3u8$LR•IPV4•5『线路3』 #EXTINF:-1 tvg-id="CCTV4K" tvg-name="CCTV4K" group-title="央视频道",CCTV-4K -http://192.151.150.154/live/cctv4k.m3u8$LR•IPV4•5『线路4』 +http://173.208.212.130:8181/720p/cctv4k.m3u8$LR•IPV4•5『线路4』 #EXTINF:-1 tvg-id="CCTV4K" tvg-name="CCTV4K" group-title="央视频道",CCTV-4K -http://173.208.212.130:8181/720p/cctv4k.m3u8$LR•IPV4•5『线路5』 +http://198.204.240.250:82/live/cctv4k.m3u8$LR•IPV4•5『线路5』 #EXTINF:-1 tvg-id="象山综合" tvg-name="象山综合" group-title="浙江频道",象山综合 -http://l.cztvcloud.com/channels/lantian/SXxiangshan1/720p.m3u8$LR•IPV4•3『线路1』 +http://play-sh13.quklive.com/live/1702360350551252.m3u8?auth_key=2037107484-800189c57a5a44d3b823b60cf84f6756-0-a6f6828a62d5c167cff5e68735fa0d39$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="象山综合" tvg-name="象山综合" group-title="浙江频道",象山综合 -http://play-sh13.quklive.com/live/1702360350551252.m3u8?auth_key=2037107484-800189c57a5a44d3b823b60cf84f6756-0-a6f6828a62d5c167cff5e68735fa0d39$LR•IPV4•3『线路2』 +http://l.cztvcloud.com/channels/lantian/SXxiangshan1/720p.m3u8$LR•IPV4•3『线路2』 #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://zzy789.xyz/douyu1.php?id=4246519$LR•IPV4•2『线路1』 +http://www.goodiptv.club/douyu/4246519$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="邵氏影院" tvg-name="邵氏影院" group-title="电影轮播",邵氏影院 -http://www.goodiptv.club/douyu/4246519$LR•IPV4•2『线路2』 +http://zzy789.xyz/douyu1.php?id=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•8『线路1』 +http://cdn.jdshipin.com:8880/huya.php?id=11352941$LR•IPV4•8『线路1』 #EXTINF:-1 tvg-id="功夫" tvg-name="功夫" group-title="经典小品",功夫 -http://43.251.226.89:8080/play/878.m3u8$LR•IPV4•8『线路2』 +http://live.metshop.top/huya/11352941?cdn=alicdn$LR•IPV4•8『线路2』 #EXTINF:-1 tvg-id="功夫" tvg-name="功夫" group-title="经典小品",功夫 -http://43.251.226.89:8080/play/899.m3u8$LR•IPV4•8『线路3』 +https://ukzy.ukubf4.com/20220407/j3bjFWpb/index.m3u8$LR•IPV4•8『线路3』 #EXTINF:-1 tvg-id="功夫" tvg-name="功夫" group-title="经典小品",功夫 -https://vip.ffzy-play2.com/20221124/1291_468b2efb/index.m3u8$LR•IPV4•8『线路4』 +http://43.251.226.89:8080/play/878.m3u8$LR•IPV4•8『线路4』 #EXTINF:-1 tvg-id="功夫" tvg-name="功夫" group-title="经典小品",功夫 -https://hls-gateway.vpstv.net/streams/476226.m3u8$LR•IPV4•8『线路5』 +http://43.251.226.89:8080/play/899.m3u8$LR•IPV4•8『线路5』 #EXTINF:-1 tvg-id="功夫" tvg-name="功夫" group-title="经典小品",功夫 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5897056882324761054&livemode=1&stbId=yu&mode=1&$LR•IPV4•8『线路6』 +https://vip.ffzy-play2.com/20221124/1291_468b2efb/index.m3u8$LR•IPV4•8『线路6』 #EXTINF:-1 tvg-id="功夫" tvg-name="功夫" group-title="经典小品",功夫 -http://cdn.jdshipin.com:8880/huya.php?id=11352941$LR•IPV4•8『线路7』 +https://hls-gateway.vpstv.net/streams/476226.m3u8$LR•IPV4•8『线路7』 #EXTINF:-1 tvg-id="功夫" tvg-name="功夫" group-title="经典小品",功夫 -http://live.metshop.top/huya/11352941?cdn=alicdn$LR•IPV4•8『线路8』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5897056882324761054&livemode=1&stbId=yu&mode=1&$LR•IPV4•8『线路8』 #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 @@ -126,21 +126,21 @@ http://103.193.151.146/huya.php?id=11601966$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="七龙珠" tvg-name="七龙珠" group-title="动画频道",七龙珠 https://live.ottiptv.cc/huya/11601966$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="哆啦A梦" tvg-name="哆啦A梦" group-title="动画频道",哆啦A梦 -http://103.193.151.146/huya.php?id=11601963$LR•IPV4•2『线路1』 +https://live.ottiptv.cc/huya/11601963$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="哆啦A梦" tvg-name="哆啦A梦" group-title="动画频道",哆啦A梦 -https://live.ottiptv.cc/huya/11601963$LR•IPV4•2『线路2』 +http://103.193.151.146/huya.php?id=11601963$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="蜡笔小新" tvg-name="蜡笔小新" group-title="动画频道",蜡笔小新 http://103.193.151.146/huya.php?id=11352970$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="蜡笔小新" tvg-name="蜡笔小新" group-title="动画频道",蜡笔小新 https://live.ottiptv.cc/huya/11352970$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="喜羊羊与灰太狼" tvg-name="喜羊羊与灰太狼" group-title="动画频道",喜羊羊与灰太狼 -http://103.193.151.146/huya.php?id=23865080$LR•IPV4•2『线路1』 +https://live.ottiptv.cc/huya/23865080$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="喜羊羊与灰太狼" tvg-name="喜羊羊与灰太狼" group-title="动画频道",喜羊羊与灰太狼 -https://live.ottiptv.cc/huya/23865080$LR•IPV4•2『线路2』 +http://103.193.151.146/huya.php?id=23865080$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="精灵宝可梦" tvg-name="精灵宝可梦" group-title="动画频道",精灵宝可梦 -http://103.193.151.146/huya.php?id=23749096$LR•IPV4•2『线路1』 +https://live.ottiptv.cc/huya/23749096$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="精灵宝可梦" tvg-name="精灵宝可梦" group-title="动画频道",精灵宝可梦 -https://live.ottiptv.cc/huya/23749096$LR•IPV4•2『线路2』 +http://103.193.151.146/huya.php?id=23749096$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="名侦探柯南" tvg-name="名侦探柯南" group-title="动画频道",名侦探柯南 https://live.ottiptv.cc/huya/30080236$LR•IPV4 #EXTINF:-1 tvg-id="航海王" tvg-name="航海王" group-title="动画频道",航海王 @@ -156,9 +156,9 @@ http://zzy789.xyz/douyu1.php?id=747764$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="刀刀影院" tvg-name="刀刀影院" group-title="斗鱼影视",刀刀影院 http://huanqiuzhibo.cn/manifest/douyu.php?id=747764$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="华语影视" tvg-name="华语影视" group-title="斗鱼影视",华语影视 -http://zzy789.xyz/douyu1.php?id=3928$LR•IPV4•2『线路1』 +http://www.goodiptv.club/douyu/3928$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="华语影视" tvg-name="华语影视" group-title="斗鱼影视",华语影视 -http://www.goodiptv.club/douyu/3928$LR•IPV4•2『线路2』 +http://zzy789.xyz/douyu1.php?id=3928$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="斗鱼港剧" tvg-name="斗鱼港剧" group-title="斗鱼影视",斗鱼港剧 http://www.goodiptv.club/douyu/5061550$LR•IPV4 #EXTINF:-1 tvg-id="橙记港剧" tvg-name="橙记港剧" group-title="斗鱼影视",橙记港剧 @@ -166,9 +166,9 @@ http://www.goodiptv.club/douyu/4549169$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="橙记港剧" tvg-name="橙记港剧" group-title="斗鱼影视",橙记港剧 http://huanqiuzhibo.cn/manifest/douyu.php?id=4549169$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="经典剧集" tvg-name="经典剧集" group-title="斗鱼影视",经典剧集 -http://zzy789.xyz/douyu1.php?id=6863367$LR•IPV4•2『线路1』 +http://www.goodiptv.club/douyu/6863367$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="经典剧集" tvg-name="经典剧集" group-title="斗鱼影视",经典剧集 -http://www.goodiptv.club/douyu/6863367$LR•IPV4•2『线路2』 +http://zzy789.xyz/douyu1.php?id=6863367$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="热门港剧" tvg-name="热门港剧" group-title="斗鱼影视",热门港剧 http://zzy789.xyz/douyu1.php?id=5522351$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="热门港剧" tvg-name="热门港剧" group-title="斗鱼影视",热门港剧 @@ -190,7 +190,9 @@ https://live.ottiptv.cc/yy/1356043677$LR•IPV4 #EXTINF:-1 tvg-id="少年包青天第三部" tvg-name="少年包青天第三部" group-title="电视剧频道",少年包青天第三部 https://live.ottiptv.cc/yy/1382736814$LR•IPV4 #EXTINF:-1 tvg-id="爱情公寓" tvg-name="爱情公寓" group-title="电视剧频道",爱情公寓 -https://goodiptv.club/douyu/4105989$LR•IPV4 +https://live.ottiptv.cc/huya/11336726$LR•IPV4•2『线路1』 +#EXTINF:-1 tvg-id="爱情公寓" tvg-name="爱情公寓" group-title="电视剧频道",爱情公寓 +https://goodiptv.club/douyu/4105989$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="雪豹" tvg-name="雪豹" group-title="电视剧频道",雪豹 https://live.ottiptv.cc/huya/29580970$LR•IPV4 #EXTINF:-1 tvg-id="特种兵之火凤凰" tvg-name="特种兵之火凤凰" group-title="电视剧频道",特种兵之火凤凰 @@ -223,6 +225,8 @@ https://live.ottiptv.cc/yy/1354936244$LR•IPV4 https://live.ottiptv.cc/yy/1382749903$LR•IPV4 #EXTINF:-1 tvg-id="我是特种兵之利刃出鞘" tvg-name="我是特种兵之利刃出鞘" group-title="电视剧频道",我是特种兵之利刃出鞘 https://live.ottiptv.cc/yy/37999586$LR•IPV4 +#EXTINF:-1 tvg-id="狂飙" tvg-name="狂飙" group-title="电视剧频道",狂飙 +https://live.ottiptv.cc/yy/1355142167$LR•IPV4 #EXTINF:-1 tvg-id="乌龙闯情关" tvg-name="乌龙闯情关" group-title="电视剧频道",乌龙闯情关 https://live.ottiptv.cc/huya/26355767$LR•IPV4 #EXTINF:-1 tvg-id="柳舟计" tvg-name="柳舟计" group-title="电视剧频道",柳舟计 @@ -320,15 +324,15 @@ http://ali-m-l.cztv.com/channels/lantian/channel012/1080p.m3u8?$LR•IPV4•2『 #EXTINF:-1 tvg-id="之江记录" tvg-name="之江记录" group-title="☘️浙江频道",之江记录 https://ali-m-l.cztv.com/channels/lantian/channel012/1080p.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="钱江都市" tvg-name="钱江都市" group-title="☘️浙江频道",钱江都市 -https://stream1.freetv.fun/qian-jiang-du-shi-1.m3u8$LR•IPV4•5『线路1』 +https://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8$LR•IPV4•5『线路1』 #EXTINF:-1 tvg-id="钱江都市" tvg-name="钱江都市" group-title="☘️浙江频道",钱江都市 -http://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8?zzhed$LR•IPV4•5『线路2』 +https://stream1.freetv.fun/qian-jiang-du-shi-1.m3u8$LR•IPV4•5『线路2』 #EXTINF:-1 tvg-id="钱江都市" tvg-name="钱江都市" group-title="☘️浙江频道",钱江都市 -https://stream1.freetv.fun/qian-jiang-du-shi-2.m3u8$LR•IPV4•5『线路3』 +http://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8?zzhed$LR•IPV4•5『线路3』 #EXTINF:-1 tvg-id="钱江都市" tvg-name="钱江都市" group-title="☘️浙江频道",钱江都市 -https://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8?$LR•IPV4•5『线路4』 +https://stream1.freetv.fun/qian-jiang-du-shi-2.m3u8$LR•IPV4•5『线路4』 #EXTINF:-1 tvg-id="钱江都市" tvg-name="钱江都市" group-title="☘️浙江频道",钱江都市 -https://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="☘️浙江频道",上虞文化 @@ -386,11 +390,11 @@ 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.m3u8zzhed$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』 #EXTINF:-1 tvg-id="姚江文化" tvg-name="姚江文化" group-title="☘️浙江频道",姚江文化 -http://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8zzhed$LR•IPV4•5『线路4』 +https://l.cztvcloud.com/channels/lantian/SXyuyao2/720p.m3u8$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="☘️浙江频道",嵊州新闻 @@ -766,29 +770,29 @@ http://hbqjdb.chinashadt.com:2035/live/3.stream/playlist.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="荆门科教文旅" tvg-name="荆门科教文旅" group-title="☘️湖北频道",荆门科教文旅 http://stream.jmtv.com.cn/ggsh/sd/live.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="荆门新闻" tvg-name="荆门新闻" group-title="☘️湖北频道",荆门新闻 -https://t.freetv.fun/live/jing-men-xin-wen-zong-he.m3u8$LR•IPV4•14『线路1』 +http://stream.jmtv.com.cn/xwzh/sd/live.m3u8$LR•IPV4•14『线路1』 #EXTINF:-1 tvg-id="荆门新闻" tvg-name="荆门新闻" group-title="☘️湖北频道",荆门新闻 -https://stream1.freetv.fun/jing-men-xin-wen-zong-he-4.m3u8$LR•IPV4•14『线路2』 +https://t.freetv.fun/live/jing-men-xin-wen-zong-he.m3u8$LR•IPV4•14『线路2』 #EXTINF:-1 tvg-id="荆门新闻" tvg-name="荆门新闻" group-title="☘️湖北频道",荆门新闻 -http://stream.jmtv.com.cn/xwzh/sd/live.m3u8?zhubd$LR•IPV4•14『线路3』 +https://stream1.freetv.fun/jing-men-xin-wen-zong-he-4.m3u8$LR•IPV4•14『线路3』 #EXTINF:-1 tvg-id="荆门新闻" tvg-name="荆门新闻" group-title="☘️湖北频道",荆门新闻 -https://t.freetv.fun/live/jing-men-xin-wen-zong-he-1-1.m3u8$LR•IPV4•14『线路4』 +http://stream.jmtv.com.cn/xwzh/sd/live.m3u8?zhubd$LR•IPV4•14『线路4』 #EXTINF:-1 tvg-id="荆门新闻" tvg-name="荆门新闻" group-title="☘️湖北频道",荆门新闻 -https://stream.jmtv.com.cn/xwzh/playlist.m3u8?_upt=3e28e7271664278691$LR•IPV4•14『线路5』 +https://t.freetv.fun/live/jing-men-xin-wen-zong-he-1-1.m3u8$LR•IPV4•14『线路5』 #EXTINF:-1 tvg-id="荆门新闻" tvg-name="荆门新闻" group-title="☘️湖北频道",荆门新闻 -http://stream.jmtv.com.cn/xwzh/sd/live.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•14『线路6』 +https://stream.jmtv.com.cn/xwzh/playlist.m3u8?_upt=3e28e7271664278691$LR•IPV4•14『线路6』 #EXTINF:-1 tvg-id="荆门新闻" tvg-name="荆门新闻" group-title="☘️湖北频道",荆门新闻 -https://stream1.freetv.fun/jing-men-xin-wen-zong-he-6.m3u8$LR•IPV4•14『线路7』 +http://stream.jmtv.com.cn/xwzh/sd/live.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•14『线路7』 #EXTINF:-1 tvg-id="荆门新闻" tvg-name="荆门新闻" group-title="☘️湖北频道",荆门新闻 -https://stream1.freetv.fun/jing-men-xin-wen-zong-he-5.m3u8$LR•IPV4•14『线路8』 +https://stream1.freetv.fun/jing-men-xin-wen-zong-he-6.m3u8$LR•IPV4•14『线路8』 #EXTINF:-1 tvg-id="荆门新闻" tvg-name="荆门新闻" group-title="☘️湖北频道",荆门新闻 -https://stream1.freetv.fun/jing-men-xin-wen-zong-he-3.m3u8$LR•IPV4•14『线路9』 +https://stream1.freetv.fun/jing-men-xin-wen-zong-he-5.m3u8$LR•IPV4•14『线路9』 #EXTINF:-1 tvg-id="荆门新闻" tvg-name="荆门新闻" group-title="☘️湖北频道",荆门新闻 -https://stream1.freetv.fun/jing-men-xin-wen-zong-he-1.m3u8$LR•IPV4•14『线路10』 +https://stream1.freetv.fun/jing-men-xin-wen-zong-he-3.m3u8$LR•IPV4•14『线路10』 #EXTINF:-1 tvg-id="荆门新闻" tvg-name="荆门新闻" group-title="☘️湖北频道",荆门新闻 -https://stream1.freetv.fun/jing-men-xin-wen-zong-he-2.m3u8$LR•IPV4•14『线路11』 +https://stream1.freetv.fun/jing-men-xin-wen-zong-he-1.m3u8$LR•IPV4•14『线路11』 #EXTINF:-1 tvg-id="荆门新闻" tvg-name="荆门新闻" group-title="☘️湖北频道",荆门新闻 -http://stream.jmtv.com.cn/xwzh/sd/live.m3u8$LR•IPV4•14『线路12』 +https://stream1.freetv.fun/jing-men-xin-wen-zong-he-2.m3u8$LR•IPV4•14『线路12』 #EXTINF:-1 tvg-id="荆门新闻" tvg-name="荆门新闻" group-title="☘️湖北频道",荆门新闻 https://t.freetv.fun/live/jing-men-xin-wen-zong-he-5.m3u8$LR•IPV4•14『线路13』 #EXTINF:-1 tvg-id="荆门新闻" tvg-name="荆门新闻" group-title="☘️湖北频道",荆门新闻 @@ -872,105 +876,105 @@ https://hkstv.tv/api/m3u8-proxy?url=http%3A%2F%2Fwebcast.hkstv.tv%2Flivestream%2 #EXTINF:-1 tvg-id="凤凰卫视中文台" tvg-name="凤凰卫视中文台" group-title="港澳台",凤凰卫视中文台 http://api.mg.itv888.cn:8080/hls/2f80047f91e/index.m3u8$LR•IPV4•17『线路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•17『线路2』 +http://r.jdshipin.com/cCCzW$LR•IPV4•17『线路2』 #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•17『线路3』 +http://cdn6.163189.xyz/163189/fhzw$LR•IPV4•17『线路3』 #EXTINF:-1 tvg-id="凤凰卫视中文台" tvg-name="凤凰卫视中文台" group-title="港澳台",凤凰卫视中文台 -http://218.206.193.218:8888/hls/66/index.m3u8$LR•IPV4•17『线路4』 +http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•17『线路4』 #EXTINF:-1 tvg-id="凤凰卫视中文台" tvg-name="凤凰卫视中文台" group-title="港澳台",凤凰卫视中文台 -https://k44991.kylintv.tv/live/pxna_iphone.m3u8$LR•IPV4•17『线路5』 +http://218.206.193.218:8888/hls/66/index.m3u8$LR•IPV4•17『线路5』 #EXTINF:-1 tvg-id="凤凰卫视中文台" tvg-name="凤凰卫视中文台" group-title="港澳台",凤凰卫视中文台 -http://tianhewan.top/ZIPP.php?url=http://211.72.65.236:8577/.m3u8$LR•IPV4•17『线路6』 +https://k44991.kylintv.tv/live/pxna_iphone.m3u8$LR•IPV4•17『线路6』 #EXTINF:-1 tvg-id="凤凰卫视中文台" tvg-name="凤凰卫视中文台" group-title="港澳台",凤凰卫视中文台 -http://146.56.153.245:20121/bysid/258$LR•IPV4•17『线路7』 +http://tianhewan.top/ZIPP.php?url=http://211.72.65.236:8577/.m3u8$LR•IPV4•17『线路7』 #EXTINF:-1 tvg-id="凤凰卫视中文台" tvg-name="凤凰卫视中文台" group-title="港澳台",凤凰卫视中文台 -http://e1.woc.iiiya.cn:8888/rtp/239.61.2.184:9092$LR•IPV4•17『线路8』 +http://146.56.153.245:20121/bysid/258$LR•IPV4•17『线路8』 #EXTINF:-1 tvg-id="凤凰卫视中文台" tvg-name="凤凰卫视中文台" group-title="港澳台",凤凰卫视中文台 -http://php.jdshipin.com/TVOD/iptv.php?id=fhzw$LR•IPV4•17『线路9』 +http://e1.woc.iiiya.cn:8888/rtp/239.61.2.184:9092$LR•IPV4•17『线路9』 #EXTINF:-1 tvg-id="凤凰卫视中文台" tvg-name="凤凰卫视中文台" group-title="港澳台",凤凰卫视中文台 -http://122.117.71.103:8574/http/61.222.53.250:8078/hls/21/80/phoenixch.m3u8$LR•IPV4•17『线路10』 +http://php.jdshipin.com/TVOD/iptv.php?id=fhzw$LR•IPV4•17『线路10』 #EXTINF:-1 tvg-id="凤凰卫视中文台" tvg-name="凤凰卫视中文台" group-title="港澳台",凤凰卫视中文台 -http://148.135.93.213:81/phenix.php?id=fhzw$LR•IPV4•17『线路11』 +http://122.117.71.103:8574/http/61.222.53.250:8078/hls/21/80/phoenixch.m3u8$LR•IPV4•17『线路11』 #EXTINF:-1 tvg-id="凤凰卫视中文台" tvg-name="凤凰卫视中文台" group-title="港澳台",凤凰卫视中文台 -http://211.75.171.121:8577/http/61.67.128.137:8078/hls/21/80/phoenixch.m3u8$LR•IPV4•17『线路12』 +http://148.135.93.213:81/phenix.php?id=fhzw$LR•IPV4•17『线路12』 #EXTINF:-1 tvg-id="凤凰卫视中文台" tvg-name="凤凰卫视中文台" group-title="港澳台",凤凰卫视中文台 -http://43.251.226.89:8080/play/888.m3u8$LR•IPV4•17『线路13』 +http://211.75.171.121:8577/http/61.67.128.137:8078/hls/21/80/phoenixch.m3u8$LR•IPV4•17『线路13』 #EXTINF:-1 tvg-id="凤凰卫视中文台" tvg-name="凤凰卫视中文台" group-title="港澳台",凤凰卫视中文台 -http://push.cdn1.hls123.de:8080/streams/a4y2t99pzyi/index.m3u8$LR•IPV4•17『线路14』 +http://43.251.226.89:8080/play/888.m3u8$LR•IPV4•17『线路14』 #EXTINF:-1 tvg-id="凤凰卫视中文台" tvg-name="凤凰卫视中文台" group-title="港澳台",凤凰卫视中文台 -https://flv-play.clouda.com/live/fhzw-6zSJoUiicyU3ovDlMvflVRLQlVCMRCARnyJ0NPlfcs3eWJNeJSDRMAz4VgeQV3Diy6.flv$LR•IPV4•17『线路15』 +http://push.cdn1.hls123.de:8080/streams/a4y2t99pzyi/index.m3u8$LR•IPV4•17『线路15』 #EXTINF:-1 tvg-id="凤凰卫视中文台" tvg-name="凤凰卫视中文台" group-title="港澳台",凤凰卫视中文台 -http://r.jdshipin.com/cCCzW$LR•IPV4•17『线路16』 +https://flv-play.clouda.com/live/fhzw-6zSJoUiicyU3ovDlMvflVRLQlVCMRCARnyJ0NPlfcs3eWJNeJSDRMAz4VgeQV3Diy6.flv$LR•IPV4•17『线路16』 #EXTINF:-1 tvg-id="凤凰卫视中文台" tvg-name="凤凰卫视中文台" group-title="港澳台",凤凰卫视中文台 -http://cdn6.163189.xyz/163189/fhzw$LR•IPV4•17『线路17』 +http://223.110.245.139/ott.js.chinamobile.com/PLTV/3/224/3221226922/index.m3u8$LR•IPV4•17『线路17』 #EXTINF:-1 tvg-id="凤凰卫视资讯台" tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 http://api.mg.itv888.cn:8080/hls/11ef1dc70d8/index.m3u8$LR•IPV4•18『线路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•18『线路2』 +http://r.jdshipin.com/0Rp07$LR•IPV4•18『线路2』 #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•18『线路3』 +http://php.jdshipin.com/TVOD/iptv.php?id=fhzx$LR•IPV4•18『线路3』 #EXTINF:-1 tvg-id="凤凰卫视资讯台" tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 -http://zmgd.zyrnet.com:8888/hls/109/index.m3u8$LR•IPV4•18『线路4』 +http://cdn6.163189.xyz/163189/fhzx$LR•IPV4•18『线路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•18『线路5』 +http://221.7.175.154:8445/tsfile/live/1021_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路5』 #EXTINF:-1 tvg-id="凤凰卫视资讯台" tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 -http://php.jdshipin.com/TVOD/iptv.php?id=fhzx$LR•IPV4•18『线路6』 +http://zmgd.zyrnet.com:8888/hls/109/index.m3u8$LR•IPV4•18『线路6』 #EXTINF:-1 tvg-id="凤凰卫视资讯台" tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 -http://122.117.71.103:8573/http/61.222.53.250:8078/hls/20/80/phoenixif.m3u8$LR•IPV4•18『线路7』 +http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•18『线路7』 #EXTINF:-1 tvg-id="凤凰卫视资讯台" tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 -http://e1.woc.iiiya.cn:8888/rtp/239.61.2.183:9086$LR•IPV4•18『线路8』 +http://122.117.71.103:8573/http/61.222.53.250:8078/hls/20/80/phoenixif.m3u8$LR•IPV4•18『线路8』 #EXTINF:-1 tvg-id="凤凰卫视资讯台" tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 -http://146.56.153.245:20121/bysid/257$LR•IPV4•18『线路9』 +http://e1.woc.iiiya.cn:8888/rtp/239.61.2.183:9086$LR•IPV4•18『线路9』 #EXTINF:-1 tvg-id="凤凰卫视资讯台" tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 -http://tianhewan.top/ZIPP.php?url=http://211.72.65.236:8576/.m3u8$LR•IPV4•18『线路10』 +http://146.56.153.245:20121/bysid/257$LR•IPV4•18『线路10』 #EXTINF:-1 tvg-id="凤凰卫视资讯台" tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 -http://148.135.93.213:81/phenix.php?id=fhzx$LR•IPV4•18『线路11』 +http://tianhewan.top/ZIPP.php?url=http://211.72.65.236:8576/.m3u8$LR•IPV4•18『线路11』 #EXTINF:-1 tvg-id="凤凰卫视资讯台" tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 -http://211.75.171.121:8576/http/61.67.128.137:8078/hls/20/80/phoenixif.m3u8$LR•IPV4•18『线路12』 +http://148.135.93.213:81/phenix.php?id=fhzx$LR•IPV4•18『线路12』 #EXTINF:-1 tvg-id="凤凰卫视资讯台" tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 -http://43.251.226.89:8080/play/889.m3u8$LR•IPV4•18『线路13』 +http://211.75.171.121:8576/http/61.67.128.137:8078/hls/20/80/phoenixif.m3u8$LR•IPV4•18『线路13』 #EXTINF:-1 tvg-id="凤凰卫视资讯台" tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 -p3p://167.114.175.6:55331/5fffbf860003807cedf4e1016c3c3ed2$LR•IPV4•18『线路14』 +http://43.251.226.89:8080/play/889.m3u8$LR•IPV4•18『线路14』 #EXTINF:-1 tvg-id="凤凰卫视资讯台" tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 -http://push.cdn1.hls123.de:8080/streams/0u0qd5ovqkg/index.m3u8$LR•IPV4•18『线路15』 +p3p://167.114.175.6:55331/5fffbf860003807cedf4e1016c3c3ed2$LR•IPV4•18『线路15』 #EXTINF:-1 tvg-id="凤凰卫视资讯台" tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 -https://flv-play.clouda.com/live/fhzx-gCDIOsNFJ7DX5OI8hsebeQNHPm66LAMZgmIcGYcfIIEzXWKCVG2cQgbZdRq2aUVqJR.flv$LR•IPV4•18『线路16』 +http://push.cdn1.hls123.de:8080/streams/0u0qd5ovqkg/index.m3u8$LR•IPV4•18『线路16』 #EXTINF:-1 tvg-id="凤凰卫视资讯台" tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 -http://r.jdshipin.com/0Rp07$LR•IPV4•18『线路17』 +https://flv-play.clouda.com/live/fhzx-gCDIOsNFJ7DX5OI8hsebeQNHPm66LAMZgmIcGYcfIIEzXWKCVG2cQgbZdRq2aUVqJR.flv$LR•IPV4•18『线路17』 #EXTINF:-1 tvg-id="凤凰卫视资讯台" tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 -http://cdn6.163189.xyz/163189/fhzx$LR•IPV4•18『线路18』 +http://223.110.245.167/ott.js.chinamobile.com/PLTV/3/224/3221226923/index.m3u8$LR•IPV4•18『线路18』 #EXTINF:-1 tvg-id="凤凰卫视香港台" tvg-name="凤凰卫视香港台" group-title="港澳台",凤凰卫视香港台 -http://223.110.245.136/PLTV/3/224/3221226975/index.m3u8$LR•IPV4•12『线路1』 +http://r.jdshipin.com/yDoTN$LR•IPV4•12『线路1』 #EXTINF:-1 tvg-id="凤凰卫视香港台" tvg-name="凤凰卫视香港台" group-title="港澳台",凤凰卫视香港台 -http://122.152.202.33/s/81a8a44f/index.m3u8?id=fhhk$LR•IPV4•12『线路2』 +http://php.jdshipin.com/TVOD/iptv.php?id=fhhk$LR•IPV4•12『线路2』 #EXTINF:-1 tvg-id="凤凰卫视香港台" tvg-name="凤凰卫视香港台" group-title="港澳台",凤凰卫视香港台 -https://epg.pw/stream/8770e89223a086eb1b8a0c931e42296d772a8069ad3eb72540e0c434e7cb3e93.m3u8$LR•IPV4•12『线路3』 +http://cdn6.163189.xyz/163189/fhhk$LR•IPV4•12『线路3』 #EXTINF:-1 tvg-id="凤凰卫视香港台" tvg-name="凤凰卫视香港台" group-title="港澳台",凤凰卫视香港台 -https://epg.pw/stream/5f16dc7fc8aaaed3205516c63e4a8c24bca9dbba1181684244729cf574505b0e.m3u8$LR•IPV4•12『线路4』 +http://122.152.202.33/s/81a8a44f/index.m3u8?id=fhhk$LR•IPV4•12『线路4』 #EXTINF:-1 tvg-id="凤凰卫视香港台" tvg-name="凤凰卫视香港台" group-title="港澳台",凤凰卫视香港台 -http://148.135.93.213:81/phenix.php?id=fhhk$LR•IPV4•12『线路5』 +https://epg.pw/stream/8770e89223a086eb1b8a0c931e42296d772a8069ad3eb72540e0c434e7cb3e93.m3u8$LR•IPV4•12『线路5』 #EXTINF:-1 tvg-id="凤凰卫视香港台" tvg-name="凤凰卫视香港台" group-title="港澳台",凤凰卫视香港台 -http://43.251.226.89:8080/play/890.m3u8$LR•IPV4•12『线路6』 +https://epg.pw/stream/5f16dc7fc8aaaed3205516c63e4a8c24bca9dbba1181684244729cf574505b0e.m3u8$LR•IPV4•12『线路6』 #EXTINF:-1 tvg-id="凤凰卫视香港台" tvg-name="凤凰卫视香港台" group-title="港澳台",凤凰卫视香港台 -p3p://167.114.175.6:55331/5fe0b82c000cac9774c17f262e43314d$LR•IPV4•12『线路7』 +http://148.135.93.213:81/phenix.php?id=fhhk$LR•IPV4•12『线路7』 #EXTINF:-1 tvg-id="凤凰卫视香港台" tvg-name="凤凰卫视香港台" group-title="港澳台",凤凰卫视香港台 -http://push.cdn1.hls123.de:8080/streams/898y722sqjr/index.m3u8$LR•IPV4•12『线路8』 +http://43.251.226.89:8080/play/890.m3u8$LR•IPV4•12『线路8』 #EXTINF:-1 tvg-id="凤凰卫视香港台" tvg-name="凤凰卫视香港台" group-title="港澳台",凤凰卫视香港台 -https://flv-play.clouda.com/live/fhxg-s6ZqbJPCkU54D3ojHvlJm4el9wbnzF1VJ6J0oPumsZIfuPtYq1enmIhy43vWcUaaPf4U2xRRWNGOXX5BiusMXxxQ.flv$LR•IPV4•12『线路9』 +p3p://167.114.175.6:55331/5fe0b82c000cac9774c17f262e43314d$LR•IPV4•12『线路9』 #EXTINF:-1 tvg-id="凤凰卫视香港台" tvg-name="凤凰卫视香港台" group-title="港澳台",凤凰卫视香港台 -http://r.jdshipin.com/yDoTN$LR•IPV4•12『线路10』 +http://push.cdn1.hls123.de:8080/streams/898y722sqjr/index.m3u8$LR•IPV4•12『线路10』 #EXTINF:-1 tvg-id="凤凰卫视香港台" tvg-name="凤凰卫视香港台" group-title="港澳台",凤凰卫视香港台 -http://php.jdshipin.com/TVOD/iptv.php?id=fhhk$LR•IPV4•12『线路11』 +https://flv-play.clouda.com/live/fhxg-s6ZqbJPCkU54D3ojHvlJm4el9wbnzF1VJ6J0oPumsZIfuPtYq1enmIhy43vWcUaaPf4U2xRRWNGOXX5BiusMXxxQ.flv$LR•IPV4•12『线路11』 #EXTINF:-1 tvg-id="凤凰卫视香港台" tvg-name="凤凰卫视香港台" group-title="港澳台",凤凰卫视香港台 -http://cdn6.163189.xyz/163189/fhhk$LR•IPV4•12『线路12』 +http://223.110.245.136/PLTV/3/224/3221226975/index.m3u8$LR•IPV4•12『线路12』 #EXTINF:-1 tvg-id="台视新闻" tvg-name="台视新闻" group-title="港澳台",台视新闻 -http://38.64.72.148:80/hls/modn/list/4013/chunklist0.m3u8$LR•IPV4•4『线路1』 +http://38.64.72.148/hls/modn/list/4013/chunklist1.m3u8$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-id="台视新闻" tvg-name="台视新闻" group-title="港澳台",台视新闻 -http://38.64.72.148:80/hls/modn/list/4013/chunklist1.m3u8$LR•IPV4•4『线路2』 +http://38.64.72.148:80/hls/modn/list/4013/chunklist0.m3u8$LR•IPV4•4『线路2』 #EXTINF:-1 tvg-id="台视新闻" tvg-name="台视新闻" group-title="港澳台",台视新闻 -http://38.64.72.148/hls/modn/list/4013/chunklist0.m3u8$LR•IPV4•4『线路3』 +http://38.64.72.148:80/hls/modn/list/4013/chunklist1.m3u8$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-id="台视新闻" tvg-name="台视新闻" group-title="港澳台",台视新闻 -http://38.64.72.148/hls/modn/list/4013/chunklist1.m3u8$LR•IPV4•4『线路4』 +http://38.64.72.148/hls/modn/list/4013/chunklist0.m3u8$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-id="万州综合" tvg-name="万州综合" group-title="☘️重庆频道",万州综合 http://123.146.162.24:8013/tslslive/noEX9SG/hls/live_sd.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="荣昌综合" tvg-name="荣昌综合" group-title="☘️重庆频道",荣昌综合 @@ -978,59 +982,57 @@ 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="☘️天津频道",天津 -https://piccpndks.v.kcdnvip.com/audio/tianjin_2/index.m3u8$LR•IPV4•27『线路1』 +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•26『线路1』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://39.134.115.163:8080/PLTV/88888910/224/3221225698/index.m3u8$LR•IPV4•27『线路2』 +http://112.27.235.94:8000/hls/42/index.m3u8$LR•IPV4•26『线路2』 #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•27『线路3』 +http://204.12.221.218:8181/3m1080p/tjws.m3u8$LR•IPV4•26『线路3』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://204.12.221.218:8181/3m1080p/tjws.m3u8$LR•IPV4•27『线路4』 +http://173.208.212.130:8181/720p/tjws.m3u8$LR•IPV4•26『线路4』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://173.208.212.130:8181/720p/tjws.m3u8$LR•IPV4•27『线路5』 +http://120.198.95.220:9901/tsfile/live/1067_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•26『线路5』 #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•27『线路6』 +http://36.136.38.87:9901/tsfile/live/0135_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路6』 #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•27『线路7』 +http://38.75.136.137:98/gslb/dsdqpub/tjwshd.m3u8?auth=testpub$LR•IPV4•26『线路7』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://112.27.235.94:8000/hls/42/index.m3u8$LR•IPV4•27『线路8』 +http://23.237.228.134/live8/tianjing.m3u8$LR•IPV4•26『线路8』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://38.75.136.137:98/gslb/dsdqpub/tjwshd.m3u8?auth=testpub$LR•IPV4•27『线路9』 +http://gfr.x3322.net:9901/tsfile/live/1090_1.m3u8$LR•IPV4•26『线路9』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://23.237.228.134/live8/tianjing.m3u8$LR•IPV4•27『线路10』 +http://api.kkitv.itv888.cn:8080/hls/z2lkdkrb4w/index.m3u8$LR•IPV4•26『线路10』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://gfr.x3322.net:9901/tsfile/live/1090_1.m3u8$LR•IPV4•27『线路11』 +https://iptv.catvod.com/catvod.php?id=tjws$LR•IPV4•26『线路11』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://api.kkitv.itv888.cn:8080/hls/z2lkdkrb4w/index.m3u8$LR•IPV4•27『线路12』 +https://httop.top/ysp-天津卫视$LR•IPV4•26『线路12』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -https://iptv.catvod.com/catvod.php?id=tjws$LR•IPV4•27『线路13』 +http://iptv.huuc.edu.cn/hls/tjhd.m3u8$LR•IPV4•26『线路13』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -https://httop.top/ysp-天津卫视$LR•IPV4•27『线路14』 +http://153.0.171.163:9901/tsfile/live/0135_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路14』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://iptv.huuc.edu.cn/hls/tjhd.m3u8$LR•IPV4•27『线路15』 +http://60.10.139.113:8801/hls/23/index.m3u8$LR•IPV4•26『线路15』 #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•27『线路16』 +http://207.56.13.146:81/cdnlive/tjws.m3u8$LR•IPV4•26『线路16』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://60.10.139.113:8801/hls/23/index.m3u8$LR•IPV4•27『线路17』 +http://192.151.150.154/live/tjwshd.m3u8$LR•IPV4•26『线路17』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://207.56.13.146:81/cdnlive/tjws.m3u8$LR•IPV4•27『线路18』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000001000030788&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路18』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://192.151.150.154/live/tjwshd.m3u8$LR•IPV4•27『线路19』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000006827&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路19』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000001000030788&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路20』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000000831&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路20』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000006827&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路21』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000003475&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路21』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000000831&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路22』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265026&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路22』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000003475&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路23』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=6707942579111517572&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路23』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265026&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路24』 +http://111.29.9.38:6610/000000001000/5000000004000006827/index.m3u8?channel-id=bestzb&Contentid=5000000004000006827&livemode=1&stbId=3$LR•IPV4•26『线路24』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=6707942579111517572&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路25』 +http://111.29.9.33:6610/000000001000/1000000001000000831/index.m3u8?channel-id=bestzb&Contentid=1000000001000000831&livemode=1&stbId=3$LR•IPV4•26『线路25』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://111.29.9.38:6610/000000001000/5000000004000006827/index.m3u8?channel-id=bestzb&Contentid=5000000004000006827&livemode=1&stbId=3$LR•IPV4•27『线路26』 -#EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://111.29.9.33:6610/000000001000/1000000001000000831/index.m3u8?channel-id=bestzb&Contentid=1000000001000000831&livemode=1&stbId=3$LR•IPV4•27『线路27』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225698/index.m3u8$LR•IPV4•26『线路26』 #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="☘️甘肃频道",渭源新闻 @@ -1126,9 +1128,9 @@ https://live.ottiptv.cc/huya/25567648$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="火影忍者" tvg-name="火影忍者" group-title="🪁动画频道",火影忍者 https://live.ottiptv.cc/huya/29465866$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="海绵宝宝" tvg-name="海绵宝宝" group-title="🪁动画频道",海绵宝宝 -https://live.ottiptv.cc/huya/11352919$LR•IPV4•2『线路1』 +https://live.metshop.top/douyu/3949681$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="海绵宝宝" tvg-name="海绵宝宝" group-title="🪁动画频道",海绵宝宝 -https://live.metshop.top/douyu/3949681$LR•IPV4•2『线路2』 +https://live.ottiptv.cc/huya/11352919$LR•IPV4•2『线路2』 #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="百事通",华语影院 @@ -1268,91 +1270,91 @@ https://hlive.ktv.go.kr/live/klive_h.stream/playlist.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="KShopping" tvg-name="KShopping" group-title="•韩国",KShopping https://fhs8036.bd-61.ktcdn.co.kr/klive/smil:klive.smil/playlist.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="MBC" tvg-name="MBC" group-title="•韩国",MBC -https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-bollywood/546eb40d7dcf9a209255dd2496903764/index.m3u8$LR•IPV4•37『线路1』 +https://stream.chmbc.co.kr/TV/myStream/playlist.m3u8$LR•IPV4•37『线路1』 #EXTINF:-1 tvg-id="MBC" tvg-name="MBC" group-title="•韩国",MBC -https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-1/15cf99af5de54063fdabfefe66adc075/index.m3u8$LR•IPV4•37『线路2』 +https://5c3639aa99149.streamlock.net/live_TV/tv/playlist.m3u8$LR•IPV4•37『线路2』 #EXTINF:-1 tvg-id="MBC" tvg-name="MBC" group-title="•韩国",MBC -https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-1-na/eec141533c90dd34722c503a296dd0d8/index.m3u8$LR•IPV4•37『线路3』 +https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-5/ee6b000cee0629411b666ab26cb13e9b/index.m3u8$LR•IPV4•37『线路3』 #EXTINF:-1 tvg-id="MBC" tvg-name="MBC" group-title="•韩国",MBC -https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-1-usa/fdac3a4fc0473f1f56e07ec1d63a4b7b/index.m3u8$LR•IPV4•37『线路4』 +http://211.33.246.4:32954/cj_live/myStream.sdp/chunklist_w517347500.m3u8$LR•IPV4•37『线路4』 #EXTINF:-1 tvg-id="MBC" tvg-name="MBC" group-title="•韩国",MBC -http://andong.webcasting.co.kr/live/mbc/playlist.m3u8$LR•IPV4•37『线路5』 +https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-1/15cf99af5de54063fdabfefe66adc075/index.m3u8$LR•IPV4•37『线路5』 #EXTINF:-1 tvg-id="MBC" tvg-name="MBC" group-title="•韩国",MBC -https://stream.bsmbc.com/livetv/BusanMBC_TV_onairstream/playlist.m3u8$LR•IPV4•37『线路6』 +https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-1-na/eec141533c90dd34722c503a296dd0d8/index.m3u8$LR•IPV4•37『线路6』 #EXTINF:-1 tvg-id="MBC" tvg-name="MBC" group-title="•韩国",MBC -https://stream.chmbc.co.kr/TV/myStream/playlist.m3u8$LR•IPV4•37『线路7』 +https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-1-usa/fdac3a4fc0473f1f56e07ec1d63a4b7b/index.m3u8$LR•IPV4•37『线路7』 #EXTINF:-1 tvg-id="MBC" tvg-name="MBC" group-title="•韩国",MBC -http://211.33.246.4:32954/cj_live/myStream.sdp/playlist.m3u8$LR•IPV4•37『线路8』 +http://andong.webcasting.co.kr/live/mbc/playlist.m3u8$LR•IPV4•37『线路8』 #EXTINF:-1 tvg-id="MBC" tvg-name="MBC" group-title="•韩国",MBC -https://5ee1ec6f32118.streamlock.net/live/livetv/playlist.m3u8$LR•IPV4•37『线路9』 +https://stream.bsmbc.com/livetv/BusanMBC_TV_onairstream/playlist.m3u8$LR•IPV4•37『线路9』 #EXTINF:-1 tvg-id="MBC" tvg-name="MBC" group-title="•韩国",MBC -https://ns1.tjmbc.co.kr/live/myStream.sdp/playlist.m3u8$LR•IPV4•37『线路10』 +http://211.33.246.4:32954/cj_live/myStream.sdp/playlist.m3u8$LR•IPV4•37『线路10』 #EXTINF:-1 tvg-id="MBC" tvg-name="MBC" group-title="•韩国",MBC -http://123.254.93.7:1935/tvlive/livestream2/playlist.m3u8$LR•IPV4•37『线路11』 +https://5ee1ec6f32118.streamlock.net/live/livetv/playlist.m3u8$LR•IPV4•37『线路11』 #EXTINF:-1 tvg-id="MBC" tvg-name="MBC" group-title="•韩国",MBC -https://media.kjmbc.co.kr/hls/live/stream/playlist.m3u8$LR•IPV4•37『线路12』 +https://ns1.tjmbc.co.kr/live/myStream.sdp/playlist.m3u8$LR•IPV4•37『线路12』 #EXTINF:-1 tvg-id="MBC" tvg-name="MBC" group-title="•韩国",MBC -https://624a79c87201d.streamlock.net/MBCTV/TV1.stream/playlist.m3u8$LR•IPV4•37『线路13』 +http://123.254.93.7:1935/tvlive/livestream2/playlist.m3u8$LR•IPV4•37『线路13』 #EXTINF:-1 tvg-id="MBC" tvg-name="MBC" group-title="•韩国",MBC -https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-iraq/e38c44b1b43474e1c39cb5b90203691e/index.m3u8$LR•IPV4•37『线路14』 +https://media.kjmbc.co.kr/hls/live/stream/playlist.m3u8$LR•IPV4•37『线路14』 #EXTINF:-1 tvg-id="MBC" tvg-name="MBC" group-title="•韩国",MBC -https://wowza.jejumbc.com/live/tv_jejumbc/playlist.m3u8$LR•IPV4•37『线路15』 +https://624a79c87201d.streamlock.net/MBCTV/TV1.stream/playlist.m3u8$LR•IPV4•37『线路15』 #EXTINF:-1 tvg-id="MBC" tvg-name="MBC" group-title="•韩国",MBC -https://5ee9633b25727.streamlock.net/jmbc_tv/_definst_/jmbc_tv.stream/playlist.m3u8$LR•IPV4•37『线路16』 +https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-iraq/e38c44b1b43474e1c39cb5b90203691e/index.m3u8$LR•IPV4•37『线路16』 #EXTINF:-1 tvg-id="MBC" tvg-name="MBC" group-title="•韩国",MBC -https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-masr/956eac069c78a35d47245db6cdbb1575/index.m3u8$LR•IPV4•37『线路17』 +https://wowza.jejumbc.com/live/tv_jejumbc/playlist.m3u8$LR•IPV4•37『线路17』 #EXTINF:-1 tvg-id="MBC" tvg-name="MBC" group-title="•韩国",MBC -https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-masr-2/754931856515075b0aabf0e583495c68/index.m3u8$LR•IPV4•37『线路18』 +https://5ee9633b25727.streamlock.net/jmbc_tv/_definst_/jmbc_tv.stream/playlist.m3u8$LR•IPV4•37『线路18』 #EXTINF:-1 tvg-id="MBC" tvg-name="MBC" group-title="•韩国",MBC -https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-masr-usa/cd8d40acdab28aac0582faa3bd3983f1/index.m3u8$LR•IPV4•37『线路19』 +https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-masr/956eac069c78a35d47245db6cdbb1575/index.m3u8$LR•IPV4•37『线路19』 #EXTINF:-1 tvg-id="MBC" tvg-name="MBC" group-title="•韩国",MBC -http://vod.mpmbc.co.kr:1935/live/encoder-tv/playlist.m3u8$LR•IPV4•37『线路20』 +https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-masr-2/754931856515075b0aabf0e583495c68/index.m3u8$LR•IPV4•37『线路20』 #EXTINF:-1 tvg-id="MBC" tvg-name="MBC" group-title="•韩国",MBC -https://mumt03.tangotv.in/MBCTV/index.m3u8$LR•IPV4•37『线路21』 +https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-masr-usa/cd8d40acdab28aac0582faa3bd3983f1/index.m3u8$LR•IPV4•37『线路21』 #EXTINF:-1 tvg-id="MBC" tvg-name="MBC" group-title="•韩国",MBC -https://5c3639aa99149.streamlock.net/live_TV/tv/playlist.m3u8$LR•IPV4•37『线路22』 +http://vod.mpmbc.co.kr:1935/live/encoder-tv/playlist.m3u8$LR•IPV4•37『线路22』 #EXTINF:-1 tvg-id="MBC" tvg-name="MBC" group-title="•韩国",MBC -https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-4/24f134f1cd63db9346439e96b86ca6ed/index.m3u8$LR•IPV4•37『线路23』 +https://mumt03.tangotv.in/MBCTV/index.m3u8$LR•IPV4•37『线路23』 #EXTINF:-1 tvg-id="MBC" tvg-name="MBC" group-title="•韩国",MBC -https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-drama/2c28a458e2f3253e678b07ac7d13fe71/index.m3u8$LR•IPV4•37『线路24』 +https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-bollywood/546eb40d7dcf9a209255dd2496903764/index.m3u8$LR•IPV4•37『线路24』 #EXTINF:-1 tvg-id="MBC" tvg-name="MBC" group-title="•韩国",MBC -http://mytv.dothome.co.kr/ch/catv/26.php$LR•IPV4•37『线路25』 +https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-4/24f134f1cd63db9346439e96b86ca6ed/index.m3u8$LR•IPV4•37『线路25』 #EXTINF:-1 tvg-id="MBC" tvg-name="MBC" group-title="•韩国",MBC -https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-persia/818ee8e4b592dc497608f066d825bfb4/index.m3u8$LR•IPV4•37『线路26』 +https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-drama/2c28a458e2f3253e678b07ac7d13fe71/index.m3u8$LR•IPV4•37『线路26』 #EXTINF:-1 tvg-id="MBC" tvg-name="MBC" group-title="•韩国",MBC -https://cdn8.fntvchannel.com/v1/master/02eeb1726c343dc9c30c32e93dee82013e157021/FNTV-CHANNEL_CDN77/index.m3u8$LR•IPV4•37『线路27』 +http://mytv.dothome.co.kr/ch/catv/26.php$LR•IPV4•37『线路27』 #EXTINF:-1 tvg-id="MBC" tvg-name="MBC" group-title="•韩国",MBC -http://mytv.dothome.co.kr/ch/catv/28.php$LR•IPV4•37『线路28』 +https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-persia/818ee8e4b592dc497608f066d825bfb4/index.m3u8$LR•IPV4•37『线路28』 #EXTINF:-1 tvg-id="MBC" tvg-name="MBC" group-title="•韩国",MBC -https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-3-usa/5d58265a862a476dc7f97694addb5ded/index.m3u8$LR•IPV4•37『线路29』 +https://cdn8.fntvchannel.com/v1/master/02eeb1726c343dc9c30c32e93dee82013e157021/FNTV-CHANNEL_CDN77/index.m3u8$LR•IPV4•37『线路29』 #EXTINF:-1 tvg-id="MBC" tvg-name="MBC" group-title="•韩国",MBC -https://dbbv9umqcd7cs.cloudfront.net/out/v1/db15b75c3cc0400c91961468d6a232ac/index.m3u8$LR•IPV4•37『线路30』 +http://mytv.dothome.co.kr/ch/catv/28.php$LR•IPV4•37『线路30』 #EXTINF:-1 tvg-id="MBC" tvg-name="MBC" group-title="•韩国",MBC -https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-mood/78367bf48ccdba501d0d014a10c21031/index.m3u8$LR•IPV4•37『线路31』 +https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-3-usa/5d58265a862a476dc7f97694addb5ded/index.m3u8$LR•IPV4•37『线路31』 #EXTINF:-1 tvg-id="MBC" tvg-name="MBC" group-title="•韩国",MBC -https://shd-gcp-live.edgenextcdn.net/live/bitmovin-wanasah/13e82ea6232fa647c43b26e8a41f173d/index.m3u8$LR•IPV4•37『线路32』 +https://dbbv9umqcd7cs.cloudfront.net/out/v1/db15b75c3cc0400c91961468d6a232ac/index.m3u8$LR•IPV4•37『线路32』 #EXTINF:-1 tvg-id="MBC" tvg-name="MBC" group-title="•韩国",MBC -https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-drama-usa/ea2f5db904aff224b7066e59c7f585a2/index.m3u8$LR•IPV4•37『线路33』 +https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-mood/78367bf48ccdba501d0d014a10c21031/index.m3u8$LR•IPV4•37『线路33』 #EXTINF:-1 tvg-id="MBC" tvg-name="MBC" group-title="•韩国",MBC -https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-masr-drama/567b703c19ede6598222de81b0e4508b/index.m3u8$LR•IPV4•37『线路34』 +https://shd-gcp-live.edgenextcdn.net/live/bitmovin-wanasah/13e82ea6232fa647c43b26e8a41f173d/index.m3u8$LR•IPV4•37『线路34』 #EXTINF:-1 tvg-id="MBC" tvg-name="MBC" group-title="•韩国",MBC -https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-5/ee6b000cee0629411b666ab26cb13e9b/index.m3u8$LR•IPV4•37『线路35』 +https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-drama-usa/ea2f5db904aff224b7066e59c7f585a2/index.m3u8$LR•IPV4•37『线路35』 #EXTINF:-1 tvg-id="MBC" tvg-name="MBC" group-title="•韩国",MBC -https://cdn-us-east-prod-ingest-infra-dacast-com.akamaized.net/624ff8f9-db18-da92-4d42-896fa2ff3eb3/source/index.m3u8$LR•IPV4•37『线路36』 +https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-masr-drama/567b703c19ede6598222de81b0e4508b/index.m3u8$LR•IPV4•37『线路36』 #EXTINF:-1 tvg-id="MBC" tvg-name="MBC" group-title="•韩国",MBC -http://211.33.246.4:32954/cj_live/myStream.sdp/chunklist_w517347500.m3u8$LR•IPV4•37『线路37』 +https://cdn-us-east-prod-ingest-infra-dacast-com.akamaized.net/624ff8f9-db18-da92-4d42-896fa2ff3eb3/source/index.m3u8$LR•IPV4•37『线路37』 #EXTINF:-1 tvg-id="NBS" tvg-name="NBS" group-title="•韩国",NBS https://media.joycorp.co.kr:4443/live/ngrp:live_all/playlist.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="SBS" tvg-name="SBS" group-title="•韩国",SBS https://ads.its-newid.net/api/manifest.m3u8?tp=lg_channels&channel_name=sbsk-drama&channel_id=newid_008&mpf=c064f5f4-39af1962-7c36be2c&apikey=48230e6b-1cea0097-15975f93-39af1962&auth=474ab4cb-5d47aa0a-84d0cbca-2a3730a6&ads.live=[CONTENT_LIVE]&ads.deviceid=[DEVICE_ID]&ads.ifa=[IFA]&ads.ifatype=[IFA_TYPE]&ads.lat=[LMT]&ads.donotsell=[DNS]&ads.ua=[UA]&ads.ip=[IP]&ads.gdpr=[GDPR]&ads.gdpr_consent=[GDPR_CONSENT]&ads.country=[COUNTRY]&ads.us_privacy=[US_PRIVACY]&ads.appstoreurl=[APP_STOREURL]&ads.bundleid=[APP_BUNDLE]&ads.appname=[APP_NAME]&ads.appversion=[APP_VERSION]&ads.devicetype=[DEVICE_TYPE]&ads.devicemake=[DEVICE_MAKE]&ads.devicemodel=[DEVICE_MODEL]&ads.targetad=[TARGETAD_ALLOWED]&ads.fck=[FCK]&ads.viewsize=[VIEWSIZE]&ads.givn=[NONCE]$LR•IPV4•9『线路1』 #EXTINF:-1 tvg-id="SBS" tvg-name="SBS" group-title="•韩国",SBS -http://1.222.207.80:1935/live/cjbtv/playlist.m3u8$LR•IPV4•9『线路2』 +http://61.85.197.53:1935/jtv_live/myStream/playlist.m3u8$LR•IPV4•9『线路2』 #EXTINF:-1 tvg-id="SBS" tvg-name="SBS" group-title="•韩国",SBS -http://61.82.49.4:1935/live/_definst_/tv.stream/playlist.m3u8$LR•IPV4•9『线路3』 +http://1.222.207.80:1935/live/cjbtv/playlist.m3u8$LR•IPV4•9『线路3』 #EXTINF:-1 tvg-id="SBS" tvg-name="SBS" group-title="•韩国",SBS -http://123.140.197.22/stream/1/play.m3u8$LR•IPV4•9『线路4』 +http://61.82.49.4:1935/live/_definst_/tv.stream/playlist.m3u8$LR•IPV4•9『线路4』 #EXTINF:-1 tvg-id="SBS" tvg-name="SBS" group-title="•韩国",SBS -http://61.85.197.53:1935/jtv_live/myStream/playlist.m3u8$LR•IPV4•9『线路5』 +http://123.140.197.22/stream/1/play.m3u8$LR•IPV4•9『线路5』 #EXTINF:-1 tvg-id="SBS" tvg-name="SBS" group-title="•韩国",SBS https://vod.ikbc.co.kr/KBCTV/tv/playlist.m3u8$LR•IPV4•9『线路6』 #EXTINF:-1 tvg-id="SBS" tvg-name="SBS" group-title="•韩国",SBS @@ -1466,11 +1468,11 @@ https://stream.realitatea.net/realitatea/plus_md/ts:playlist.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="Reuters" tvg-name="Reuters" group-title="•杂货",Reuters https://dbrb49pjoymg4.cloudfront.net/manifest/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod_default_xumo-ams-aws/e7493ea5-5c1c-4d7a-a3f7-e95516048ad8/3.m3u8$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-id="Reuters" tvg-name="Reuters" group-title="•杂货",Reuters -https://amg00453-reuters-amg00453c1-rakuten-uk-2110.playouts.now.amagi.tv/playlist/amg00453-reuters-reuters-rakutenuk/playlist.m3u8$LR•IPV4•4『线路2』 +https://cdn-uw2-prod.tsv2.amagi.tv/linear/amg00453-reuters-reuters-hls-rakutenjp/playlist.m3u8$LR•IPV4•4『线路2』 #EXTINF:-1 tvg-id="Reuters" tvg-name="Reuters" group-title="•杂货",Reuters -https://amg00453-amg00453c1-distrotv-us-7691.playouts.now.amagi.tv/playlist/amg00453-reuters-reuters-distrotvus/playlist.m3u8$LR•IPV4•4『线路3』 +https://amg00453-reuters-amg00453c1-rakuten-uk-2110.playouts.now.amagi.tv/playlist/amg00453-reuters-reuters-rakutenuk/playlist.m3u8$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-id="Reuters" tvg-name="Reuters" group-title="•杂货",Reuters -https://cdn-uw2-prod.tsv2.amagi.tv/linear/amg00453-reuters-reuters-hls-rakutenjp/playlist.m3u8$LR•IPV4•4『线路4』 +https://amg00453-amg00453c1-distrotv-us-7691.playouts.now.amagi.tv/playlist/amg00453-reuters-reuters-distrotvus/playlist.m3u8$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-id="RTV Rijnstreek TV" tvg-name="RTV Rijnstreek TV" group-title="•杂货",RTV Rijnstreek TV https://ms7.mx-cd.net/tv/290-3222276/RTV_Rijnstreek.smil/playlist.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="Ryan and Friends" tvg-name="Ryan and Friends" group-title="•杂货",Ryan and Friends @@ -1506,139 +1508,139 @@ 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•53『线路1』 +http://nocable.cc:8080//OURTV/OURTV@4806/35241$LR•IPV4•53『线路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•53『线路2』 +http://nocable.cc:8080//OURTV/OURTV@4806/35244$LR•IPV4•53『线路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•53『线路3』 +http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001373$LR•IPV4•53『线路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•53『线路4』 +http://nocable.cc:8080//OURTV/OURTV@4806/35240$LR•IPV4•53『线路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•53『线路5』 +http://nocable.cc:8080//OURTV/OURTV@4806/137720$LR•IPV4•53『线路5』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://41.223.30.230/ZEECINEMA/index.m3u8$LR•IPV4•53『线路6』 +http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001376$LR•IPV4•53『线路6』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://app.ncare.live/c3VydmVyX8RpbEU9Mi8xNy8yMDE0GIDU6RgzQ6NTAgdEoaeFzbF92YWxIZTO0U0ezN1IzMyfvcGVMZEJCTEFWeVN3PTOmdFsaWRtaW51aiPhnPTI2/atnbanglauk-off.stream/playlist.m3u8$LR•IPV4•53『线路7』 +http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001378$LR•IPV4•53『线路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•53『线路8』 +http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001379$LR•IPV4•53『线路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•53『线路9』 +http://nocable.cc:8080//OURTV/OURTV@4806/53705$LR•IPV4•53『线路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•53『线路10』 +http://nocable.cc:8080//OURTV/OURTV@4806/35238$LR•IPV4•53『线路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•53『线路11』 +http://nocable.cc:8080//OURTV/OURTV@4806/53663$LR•IPV4•53『线路11』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://45.153.96.44:8001$LR•IPV4•53『线路12』 +http://nocable.cc:8080//OURTV/OURTV@4806/45940$LR•IPV4•53『线路12』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://mini.allinonereborn.fun/tata.php?id=11783$LR•IPV4•53『线路13』 +http://vocotv.pro//revol/revol/276918$LR•IPV4•53『线路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•53『线路14』 +http://vocotv.pro//revol/revol/276924$LR•IPV4•53『线路14』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://d34z4embz0hjf6.cloudfront.net/out/v1/7ac2789ff9a544a49337d1ffc54ce61c/index.m3u8$LR•IPV4•53『线路15』 +http://vocotv.pro//revol/revol/276906$LR•IPV4•53『线路15』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://jmp2.uk/plu-638e10de75c3a30007092693.m3u8$LR•IPV4•53『线路16』 +https://app.ncare.live/c3VydmVyX8RpbEU9Mi8xNy8yMDE0GIDU6RgzQ6NTAgdEoaeFzbF92YWxIZTO0U0ezN1IzMyfvcGVMZEJCTEFWeVN3PTOmdFsaWRtaW51aiPhnPTI2/atnbanglauk-off.stream/playlist.m3u8$LR•IPV4•53『线路16』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://jmp2.uk/plu-62bed7cb3279cb0007735327.m3u8$LR•IPV4•53『线路17』 +https://moviesphereuk-samsunguk.amagi.tv/playlist.m3u8$LR•IPV4•53『线路17』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://d1nn4ic5ci0eid.cloudfront.net/MasterchefUKPoweredbyBanijay_GB.m3u8$LR•IPV4•53『线路18』 +https://0145451975a64b35866170fd2e8fa486.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-5987/master.m3u8$LR•IPV4•53『线路18』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://dvqpty1sb3rry.cloudfront.net/PointlessUKPoweredbyBanijay_GB.m3u8$LR•IPV4•53『线路19』 +https://54045f0c40fd442c8b06df076aaf1e85.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6065/master.m3u8$LR•IPV4•53『线路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•53『线路20』 +https://9be783d652cd4b099cf63e1dc134c4a3.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6181/master.m3u8$LR•IPV4•53『线路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•53『线路21』 +https://fee09fd665814f51b939b6d106cf5f66.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6093/master.m3u8$LR•IPV4•53『线路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•53『线路22』 +http://41.223.30.230/ZEECINEMA/index.m3u8$LR•IPV4•53『线路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•53『线路23』 +https://qvcuk-live.akamaized.net/hls/live/2097112/qvc/master.m3u8$LR•IPV4•53『线路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•53『线路24』 +https://qvcuk-live.akamaized.net/hls/live/2097112/qby/master.m3u8$LR•IPV4•53『线路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•53『线路25』 +https://qvcuk-live.akamaized.net/hls/live/2097112/qex/master.m3u8$LR•IPV4•53『线路25』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://d35j504z0x2vu2.cloudfront.net/v1/master/0bc8e8376bd8417a1b6761138aa41c26c7309312/trace-uk/encrypted.m3u8?ads.vf=cgXMgPi7oBS$LR•IPV4•53『线路26』 +https://qvcuk-live.akamaized.net/hls/live/2097112/qst/master.m3u8$LR•IPV4•53『线路26』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://d2n3779oy6efpi.cloudfront.net/playlist.m3u8$LR•IPV4•53『线路27』 +http://45.153.96.44:8001$LR•IPV4•53『线路27』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://d2l4tng0wskzvn.cloudfront.net/Trace_GB.m3u8$LR•IPV4•53『线路28』 +https://mini.allinonereborn.fun/tata.php?id=11783$LR•IPV4•53『线路28』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://hls.vantagetv.co.uk/vmusicuk_stream/index.m3u8$LR•IPV4•53『线路29』 +https://cdn3.wowza.com/5/L1Uzd2FrbVlLRG1W/live/smil:lwukweb.smil/playlist.m3u8$LR•IPV4•53『线路29』 #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•53『线路30』 +https://d34z4embz0hjf6.cloudfront.net/out/v1/7ac2789ff9a544a49337d1ffc54ce61c/index.m3u8$LR•IPV4•53『线路30』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://bbc-antiquesroadshowuk-1-us.roku.wurl.tv/playlist.m3u8$LR•IPV4•53『线路31』 +https://jmp2.uk/plu-638e10de75c3a30007092693.m3u8$LR•IPV4•53『线路31』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://jmp2.uk/plu-692edc78d52ea9e4858cf78f.m3u8$LR•IPV4•53『线路32』 +https://jmp2.uk/plu-62bed7cb3279cb0007735327.m3u8$LR•IPV4•53『线路32』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://jmp2.uk/plu-692edcff77f0147d69f19498.m3u8$LR•IPV4•53『线路33』 +https://d1nn4ic5ci0eid.cloudfront.net/MasterchefUKPoweredbyBanijay_GB.m3u8$LR•IPV4•53『线路33』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://jmp2.uk/plu-692edd6bdb8695f63e14f3b9.m3u8$LR•IPV4•53『线路34』 +https://dvqpty1sb3rry.cloudfront.net/PointlessUKPoweredbyBanijay_GB.m3u8$LR•IPV4•53『线路34』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://b6cca454.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/U2Ftc3VuZy1nYl9UcnVlQ3JpbWVVS2Zyb21DQlNSZWFsaXR5X0hMUw/playlist.m3u8$LR•IPV4•53『线路35』 +https://68f6dfd1f2bd415b9c42f1d383004b69.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6233/master.m3u8$LR•IPV4•53『线路35』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://ntd02.akamaized.net/NTD-UK/index.m3u8$LR•IPV4•53『线路36』 +https://2c88ed8c4df9479aa0c7138dc42115e2.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6194/master.m3u8$LR•IPV4•53『线路36』 #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•53『线路37』 +https://sci-fi-rakuten-tv-uk.fast.rakuten.tv/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6241/master.m3u8$LR•IPV4•53『线路37』 #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•53『线路38』 +https://thriller-rakuten-tv-uk.fast.rakuten.tv/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6482/master.m3u8$LR•IPV4•53『线路38』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://nocable.cc:8080//OURTV/OURTV@4806/35241$LR•IPV4•53『线路39』 +https://live-tbn-ssai.simplestreamcdn.com/v1/master/774d979dd66704abea7c5b62cb34c6815fda0d35/tbn-live/manifest.m3u8$LR•IPV4•53『线路39』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://nocable.cc:8080//OURTV/OURTV@4806/35244$LR•IPV4•53『线路40』 +https://amg01131-tracetv-amg01131c5-stirr-us-4389.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•53『线路40』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001373$LR•IPV4•53『线路41』 +https://d35j504z0x2vu2.cloudfront.net/v1/master/0bc8e8376bd8417a1b6761138aa41c26c7309312/trace-uk/encrypted.m3u8?ads.vf=cgXMgPi7oBS$LR•IPV4•53『线路41』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://nocable.cc:8080//OURTV/OURTV@4806/35240$LR•IPV4•53『线路42』 +https://d2n3779oy6efpi.cloudfront.net/playlist.m3u8$LR•IPV4•53『线路42』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://nocable.cc:8080//OURTV/OURTV@4806/137720$LR•IPV4•53『线路43』 +https://d2l4tng0wskzvn.cloudfront.net/Trace_GB.m3u8$LR•IPV4•53『线路43』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001376$LR•IPV4•53『线路44』 +https://hls.vantagetv.co.uk/vmusicuk_stream/index.m3u8$LR•IPV4•53『线路44』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001378$LR•IPV4•53『线路45』 +https://amg01243-xitenetworksint-hitsuk-samsunguk-mvovq.amagi.tv/playlist/amg01243-xitenetworksint-hitsuk-samsunguk/playlist.m3u8$LR•IPV4•53『线路45』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001379$LR•IPV4•53『线路46』 +https://bbc-antiquesroadshowuk-1-us.roku.wurl.tv/playlist.m3u8$LR•IPV4•53『线路46』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://nocable.cc:8080//OURTV/OURTV@4806/53705$LR•IPV4•53『线路47』 +https://jmp2.uk/plu-692edc78d52ea9e4858cf78f.m3u8$LR•IPV4•53『线路47』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://nocable.cc:8080//OURTV/OURTV@4806/35238$LR•IPV4•53『线路48』 +https://jmp2.uk/plu-692edcff77f0147d69f19498.m3u8$LR•IPV4•53『线路48』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://nocable.cc:8080//OURTV/OURTV@4806/53663$LR•IPV4•53『线路49』 +https://jmp2.uk/plu-692edd6bdb8695f63e14f3b9.m3u8$LR•IPV4•53『线路49』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://nocable.cc:8080//OURTV/OURTV@4806/45940$LR•IPV4•53『线路50』 +https://b6cca454.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/U2Ftc3VuZy1nYl9UcnVlQ3JpbWVVS2Zyb21DQlNSZWFsaXR5X0hMUw/playlist.m3u8$LR•IPV4•53『线路50』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://vocotv.pro//revol/revol/276918$LR•IPV4•53『线路51』 +https://ntd02.akamaized.net/NTD-UK/index.m3u8$LR•IPV4•53『线路51』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://vocotv.pro//revol/revol/276924$LR•IPV4•53『线路52』 +https://e3207568b726401995c25670faaf32e4.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6203/master.m3u8$LR•IPV4•53『线路52』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://vocotv.pro//revol/revol/276906$LR•IPV4•53『线路53』 +https://1a3566cb46914c5499fbc86fbc4ac87e.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-932-WORBUKENFAST-WHALETVPLUS/932/whaletvplus/hls/master/playlist.m3u8$LR•IPV4•53『线路53』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US -http://138.121.15.230:9002/DEPELICULA/index.m3u8$LR•IPV4•18『线路1』 +p3p://167.114.175.6:55331/63efe07e000c1db2f23eb46a4e00518a$LR•IPV4•18『线路1』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US -https://stream.smotrim.ru/hls2/planeta_rtr_usa/playlist_4.m3u8$LR•IPV4•18『线路2』 +p3p://167.114.175.6:55331/63efe0de000858baf2402a646c573e1b$LR•IPV4•18『线路2』 #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•18『线路3』 +p3p://167.114.175.6:55331/63efe252000a7658f245d81113e44b34$LR•IPV4•18『线路3』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US -https://jmp2.uk/plu-6304f20c941c5d00089634e7.m3u8$LR•IPV4•18『线路4』 +p3p://167.114.175.6:55331/63efe2e2000d23b5f2480b4125294b9a$LR•IPV4•18『线路4』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US -https://jmp2.uk/plu-63988b61c8d285000798a22a.m3u8$LR•IPV4•18『线路5』 +https://stream.smotrim.ru/hls2/planeta_rtr_usa/playlist_4.m3u8$LR•IPV4•18『线路5』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US -http://206.212.244.63/641/index.m3u8$LR•IPV4•18『线路6』 +https://amg17233-amg17233c1-wisptv-us-6409.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•18『线路6』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US -https://janus.xpbroadcasting.com:8443/hls/xptvUS.m3u8$LR•IPV4•18『线路7』 +http://138.121.15.230:9002/DEPELICULA/index.m3u8$LR•IPV4•18『线路7』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US -https://bloomberg.com/media-manifest/streams/us-event.m3u8$LR•IPV4•18『线路8』 +https://jmp2.uk/plu-6304f20c941c5d00089634e7.m3u8$LR•IPV4•18『线路8』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US -https://bloomberg.com/media-manifest/streams/politics.m3u8$LR•IPV4•18『线路9』 +https://jmp2.uk/plu-63988b61c8d285000798a22a.m3u8$LR•IPV4•18『线路9』 #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•18『线路10』 +http://206.212.244.63/641/index.m3u8$LR•IPV4•18『线路10』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US -p3p://167.114.175.6:55331/63efe07e000c1db2f23eb46a4e00518a$LR•IPV4•18『线路11』 +https://janus.xpbroadcasting.com:8443/hls/xptvUS.m3u8$LR•IPV4•18『线路11』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US -p3p://167.114.175.6:55331/63efe0de000858baf2402a646c573e1b$LR•IPV4•18『线路12』 +https://bloomberg.com/media-manifest/streams/us-event.m3u8$LR•IPV4•18『线路12』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US -p3p://167.114.175.6:55331/63efe252000a7658f245d81113e44b34$LR•IPV4•18『线路13』 +https://bloomberg.com/media-manifest/streams/politics.m3u8$LR•IPV4•18『线路13』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US -p3p://167.114.175.6:55331/63efe2e2000d23b5f2480b4125294b9a$LR•IPV4•18『线路14』 +https://0b73ace69ebb45eaa249bb87837cb958.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-644-WORBUSENFAST-LG_US/644/lgtv/hls/master/playlist.m3u8$LR•IPV4•18『线路14』 #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•18『线路15』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US @@ -1918,31 +1920,31 @@ http://23.237.104.106:8080/USA_HBO/index.m3u8$LR•IPV4•15『线路1』 #EXTINF:-1 tvg-id="HBO" tvg-name="HBO" group-title="💓专享源🅰️",HBO http://23.237.104.106:8080/USA_HBO2/index.m3u8$LR•IPV4•15『线路2』 #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•15『线路3』 +p3p://167.114.175.6:55331/66d22f6b0001f87c739b69c977f063dd$LR•IPV4•15『线路3』 #EXTINF:-1 tvg-id="HBO" tvg-name="HBO" group-title="💓专享源🅰️",HBO -p3p://167.114.175.6:55331/66d22f6b0001f87c739b69c977f063dd$LR•IPV4•15『线路4』 +p3p://167.114.175.6:55331/623a6e38000091d497395ce957b27132$LR•IPV4•15『线路4』 #EXTINF:-1 tvg-id="HBO" tvg-name="HBO" group-title="💓专享源🅰️",HBO -p3p://167.114.175.6:55331/623a6e38000091d497395ce957b27132$LR•IPV4•15『线路5』 +p3p://167.114.175.6:55331/623a706d0003edf59741fcc023dc0089$LR•IPV4•15『线路5』 #EXTINF:-1 tvg-id="HBO" tvg-name="HBO" group-title="💓专享源🅰️",HBO -p3p://167.114.175.6:55331/623a706d0003edf59741fcc023dc0089$LR•IPV4•15『线路6』 +p3p://167.114.175.6:55331/623a700000069676974053b555b700d4$LR•IPV4•15『线路6』 #EXTINF:-1 tvg-id="HBO" tvg-name="HBO" group-title="💓专享源🅰️",HBO -p3p://167.114.175.6:55331/623a700000069676974053b555b700d4$LR•IPV4•15『线路7』 +p3p://167.114.175.6:55331/64e364fb000a0212a977a1cd342976da$LR•IPV4•15『线路7』 #EXTINF:-1 tvg-id="HBO" tvg-name="HBO" group-title="💓专享源🅰️",HBO -p3p://167.114.175.6:55331/64e364fb000a0212a977a1cd342976da$LR•IPV4•15『线路8』 +p3p://167.114.175.6:55331/65d07877000b028d4787830a723c4ce7$LR•IPV4•15『线路8』 #EXTINF:-1 tvg-id="HBO" tvg-name="HBO" group-title="💓专享源🅰️",HBO -p3p://167.114.175.6:55331/65d07877000b028d4787830a723c4ce7$LR•IPV4•15『线路9』 +http://125.227.210.55:8153/VideoInput/play.ts$LR•IPV4•15『线路9』 #EXTINF:-1 tvg-id="HBO" tvg-name="HBO" group-title="💓专享源🅰️",HBO -http://125.227.210.55:8153/VideoInput/play.ts$LR•IPV4•15『线路10』 +http://23.237.104.106:8080/USA_HBO/tracks-v1a1/mono.m3u8$LR•IPV4•15『线路10』 #EXTINF:-1 tvg-id="HBO" tvg-name="HBO" group-title="💓专享源🅰️",HBO -http://23.237.104.106:8080/USA_HBO/tracks-v1a1/mono.m3u8$LR•IPV4•15『线路11』 +http://23.237.104.106:8080/USA_HBO2/tracks-v1a1/mono.m3u8$LR•IPV4•15『线路11』 #EXTINF:-1 tvg-id="HBO" tvg-name="HBO" group-title="💓专享源🅰️",HBO -http://23.237.104.106:8080/USA_HBO2/tracks-v1a1/mono.m3u8$LR•IPV4•15『线路12』 +http://23.237.104.106:8080/USA_HBO_COMEDY/tracks-v1a1/mono.m3u8$LR•IPV4•15『线路12』 #EXTINF:-1 tvg-id="HBO" tvg-name="HBO" group-title="💓专享源🅰️",HBO -http://23.237.104.106:8080/USA_HBO_COMEDY/tracks-v1a1/mono.m3u8$LR•IPV4•15『线路13』 +http://23.237.104.106:8080/USA_HBO_ZONE/tracks-v1a1/mono.m3u8$LR•IPV4•15『线路13』 #EXTINF:-1 tvg-id="HBO" tvg-name="HBO" group-title="💓专享源🅰️",HBO -http://23.237.104.106:8080/USA_HBO_ZONE/tracks-v1a1/mono.m3u8$LR•IPV4•15『线路14』 +http://108.181.20.255:27347/livehttpplay?channel_id=23049$LR•IPV4•15『线路14』 #EXTINF:-1 tvg-id="HBO" tvg-name="HBO" group-title="💓专享源🅰️",HBO -http://108.181.20.255:27347/livehttpplay?channel_id=23049$LR•IPV4•15『线路15』 +https://live-manifest.production-public.tubi.io/live/9fe78734-1db2-49b4-af7b-3c89f5f256ad/playlist.m3u8$LR•IPV4•15『线路15』 #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 @@ -2272,93 +2274,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://d3s7x6kmqcnb6b.cloudfront.net/d/distro001a/0NPOY54L3YURIZHAY396/hls3/now,-1m/m.m3u8?ads.vf=qEyxmCFMVta$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-amg00841c7-rakuten-uk-2820.playouts.now.amagi.tv/playlist/amg00841-aeemeafast-historyhuntersrakuten-rakutenuk/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://amg00841-amg00841c9-samsung-gb-3032.playouts.now.amagi.tv/playlist/amg00841-aeemeafast-historyhunterssamsung-samsunggb/playlist.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-65819fc1b9adc4000813f37d.m3u8$LR•IPV4•46『线路14』 +https://d3s7x6kmqcnb6b.cloudfront.net/d/distro001a/0NPOY54L3YURIZHAY396/hls3/now,-1m/m.m3u8?ads.vf=qEyxmCFMVta$LR•IPV4•46『线路14』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://jmp2.uk/plu-65775d29dfed030008cb3db2.m3u8$LR•IPV4•46『线路15』 +https://amg00841-amg00841c7-rakuten-uk-2820.playouts.now.amagi.tv/playlist/amg00841-aeemeafast-historyhuntersrakuten-rakutenuk/playlist.m3u8$LR•IPV4•46『线路15』 #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『线路16』 +https://amg00841-amg00841c9-samsung-gb-3032.playouts.now.amagi.tv/playlist/amg00841-aeemeafast-historyhunterssamsung-samsunggb/playlist.m3u8$LR•IPV4•46『线路16』 #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『线路17』 +https://jmp2.uk/plu-65819fc1b9adc4000813f37d.m3u8$LR•IPV4•46『线路17』 #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『线路18』 +https://jmp2.uk/plu-65775d29dfed030008cb3db2.m3u8$LR•IPV4•46『线路18』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://d35j504z0x2vu2.cloudfront.net/v1/master/0bc8e8376bd8417a1b6761138aa41c26c7309312/true-history/playlist.m3u8?ads.vf=G1hGexOV3sS$LR•IPV4•46『线路19』 +https://pb-m89wlp8flmjzf.akamaized.net/v1/aenetworks_modernmarvels_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•46『线路19』 #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『线路20』 +https://amg02333-pbs-amg02333c1-samsung-au-1253.playouts.now.amagi.tv/playlist/amg02333-pbsdistributionfast-pbshistory-samsungau/playlist.m3u8$LR•IPV4•46『线路20』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://jmp2.uk/plu-6000a6f4c3f8550008fc9b91.m3u8$LR•IPV4•46『线路21』 +https://amg02333-pbs-amg02333c1-samsung-nz-1254.playouts.now.amagi.tv/playlist/amg02333-pbsdistributionfast-pbshistory-samsungnz/playlist.m3u8$LR•IPV4•46『线路21』 #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『线路22』 +https://d35j504z0x2vu2.cloudfront.net/v1/master/0bc8e8376bd8417a1b6761138aa41c26c7309312/true-history/playlist.m3u8?ads.vf=G1hGexOV3sS$LR•IPV4•46『线路22』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://rpn.bozztv.com/gusa/gusa-tvshollywoohistory/index.m3u8$LR•IPV4•46『线路23』 +https://linear-188.frequency.stream/dist/xumo/188/hls/master/playlist.m3u8$LR•IPV4•46『线路23』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://213.91.179.28:8000/play/a0c1$LR•IPV4•46『线路24』 +https://jmp2.uk/plu-6000a6f4c3f8550008fc9b91.m3u8$LR•IPV4•46『线路24』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://177.52.24.163/HISTORY-HD/index.m3u8$LR•IPV4•46『线路25』 +https://dxagbr7yc4m1d.cloudfront.net/v1/aenetworks_skills_thrills_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•46『线路25』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://88.212.15.19/live/test_history/playlist.m3u8$LR•IPV4•46『线路26』 +https://rpn.bozztv.com/gusa/gusa-tvshollywoohistory/index.m3u8$LR•IPV4•46『线路26』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://82.78.243.219:45739/play/a01f/index.m3u8$LR•IPV4•46『线路27』 +http://213.91.179.28:8000/play/a0c1$LR•IPV4•46『线路27』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://206.212.244.63/91/index.m3u8$LR•IPV4•46『线路28』 +http://177.52.24.163/HISTORY-HD/index.m3u8$LR•IPV4•46『线路28』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://138.121.15.230:9002/HISTORY-2/index.m3u8$LR•IPV4•46『线路29』 +http://88.212.15.19/live/test_history/playlist.m3u8$LR•IPV4•46『线路29』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://45.162.231.38:7779/History_2/index.m3u8$LR•IPV4•46『线路30』 +http://82.78.243.219:45739/play/a01f/index.m3u8$LR•IPV4•46『线路30』 #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『线路31』 +http://206.212.244.63/91/index.m3u8$LR•IPV4•46『线路31』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://lds-timeline-rakuten.amagi.tv/playlist.m3u8$LR•IPV4•46『线路32』 +http://138.121.15.230:9002/HISTORY-2/index.m3u8$LR•IPV4•46『线路32』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://138.121.15.230:9002/HISTORY-CHANNEL/index.m3u8$LR•IPV4•46『线路33』 +http://45.162.231.38:7779/History_2/index.m3u8$LR•IPV4•46『线路33』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://45.6.4.35/HISTORY/index.m3u8$LR•IPV4•46『线路34』 +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『线路34』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://103.72.101.252:8080/live/1471.m3u8$LR•IPV4•46『线路35』 +https://lds-timeline-rakuten.amagi.tv/playlist.m3u8$LR•IPV4•46『线路35』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://103.154.3.101:5001/live/577.m3u8$LR•IPV4•46『线路36』 +http://138.121.15.230:9002/HISTORY-CHANNEL/index.m3u8$LR•IPV4•46『线路36』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://jmp2.uk/plu-5d767b1c126c65d0a307355f.m3u8$LR•IPV4•46『线路37』 +http://45.6.4.35/HISTORY/index.m3u8$LR•IPV4•46『线路37』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://jmp2.uk/plu-5d4af1803e7983b391d73b13.m3u8$LR•IPV4•46『线路38』 +http://103.72.101.252:8080/live/1471.m3u8$LR•IPV4•46『线路38』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://jmp2.uk/plu-5a4d35dfa5c02e717a234f86.m3u8$LR•IPV4•46『线路39』 +http://103.154.3.101:5001/live/577.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-5d767b1c126c65d0a307355f.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-5d4af1803e7983b391d73b13.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://jmp2.uk/plu-5a4d35dfa5c02e717a234f86.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="斯诺克" tvg-name="斯诺克" group-title="🏈体育赛事🏆️",斯诺克 https://live.ottiptv.cc/huya/880214$LR•IPV4 #EXTINF:-1 tvg-id="视频8M1080咪视通1" tvg-name="视频8M1080咪视通1" group-title="🏈体育赛事🏆️",视频_8M1080_咪视通-1 @@ -2594,55 +2596,55 @@ 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 http://fl2.moveonjoy.com/MLB_NETWORK/index.m3u8$LR•IPV4 #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』 +http://108.181.20.255:27347/livehttpplay?channel_id=23055$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://d1jzu95oc8fgt3.cloudfront.net/v1/master/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-zyqcok4bm0lgq/FOX_Sports.m3u8$LR•IPV4•8『线路3』 #EXTINF:-1 tvg-id="FOX Sports" tvg-name="FOX Sports" group-title="⚽️SPORTS",FOX Sports -http://45.6.4.35/FOX_SPORT/index.m3u8$LR•IPV4•8『线路4』 +https://d1jzu95oc8fgt3.cloudfront.net/FOX_Sports.m3u8$LR•IPV4•8『线路4』 #EXTINF:-1 tvg-id="FOX Sports" tvg-name="FOX Sports" group-title="⚽️SPORTS",FOX Sports -https://streamvidex.qzz.io/videx/fox1usa/index.m3u8$LR•IPV4•8『线路5』 +https://amg02855-foxsports-amg02855c1-xumo-us-1755.playouts.now.amagi.tv/Fox-Sports-AmazonNews/playlist.m3u8$LR•IPV4•8『线路5』 #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『线路6』 +https://live-manifest.production-public.tubi.io/live/6035c7fd-efff-4ec7-93dc-aa0c7a58ba47/playlist.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=23055$LR•IPV4•8『线路7』 +http://45.6.4.35/FOX_SPORT/index.m3u8$LR•IPV4•8『线路7』 #EXTINF:-1 tvg-id="FOX Sports" tvg-name="FOX Sports" group-title="⚽️SPORTS",FOX Sports -https://d1jzu95oc8fgt3.cloudfront.net/v1/master/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-zyqcok4bm0lgq/FOX_Sports.m3u8$LR•IPV4•8『线路8』 +https://streamvidex.qzz.io/videx/fox1usa/index.m3u8$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•11『线路1』 +https://t.freetv.fun/live/nba-tv.m3u8$LR•IPV4•11『线路1』 #EXTINF:-1 tvg-id="NBA" tvg-name="NBA" group-title="⚽️SPORTS",NBA -https://jmp2.uk/plu-6792c30abc03978b9b8bb832.m3u8$LR•IPV4•11『线路2』 +https://t.freetv.fun/live/nba-tv-2.php$LR•IPV4•11『线路2』 #EXTINF:-1 tvg-id="NBA" tvg-name="NBA" group-title="⚽️SPORTS",NBA -https://amg00556-amg00556c3-firetv-us-6060.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•11『线路3』 +https://stream1.freetv.fun/nba-tv-7.m3u8$LR•IPV4•11『线路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•11『线路4』 +https://stream1.freetv.fun/nba-tv-5.m3u8$LR•IPV4•11『线路4』 #EXTINF:-1 tvg-id="NBA" tvg-name="NBA" group-title="⚽️SPORTS",NBA -https://t.freetv.fun/live/nba-tv.m3u8$LR•IPV4•11『线路5』 +http://170.yfvodcdn.com:19980/live/nbaTV2/hls.m3u8$LR•IPV4•11『线路5』 #EXTINF:-1 tvg-id="NBA" tvg-name="NBA" group-title="⚽️SPORTS",NBA -https://t.freetv.fun/live/nba-tv-2.php$LR•IPV4•11『线路6』 +p3p://167.114.175.6:55331/65a587500007bc039fca3566638e69af$LR•IPV4•11『线路6』 #EXTINF:-1 tvg-id="NBA" tvg-name="NBA" group-title="⚽️SPORTS",NBA -https://stream1.freetv.fun/nba-tv-7.m3u8$LR•IPV4•11『线路7』 +http://103.148.44.38:8000/play/a03m/index.m3u8$LR•IPV4•11『线路7』 #EXTINF:-1 tvg-id="NBA" tvg-name="NBA" group-title="⚽️SPORTS",NBA -https://stream1.freetv.fun/nba-tv-5.m3u8$LR•IPV4•11『线路8』 +https://live-manifest.production-public.tubi.io/live/553b8d5e-fd2a-4a61-bdfa-73b34c299d75/playlist.m3u8$LR•IPV4•11『线路8』 #EXTINF:-1 tvg-id="NBA" tvg-name="NBA" group-title="⚽️SPORTS",NBA -http://170.yfvodcdn.com:19980/live/nbaTV2/hls.m3u8$LR•IPV4•11『线路9』 +https://jmp2.uk/plu-6792c30abc03978b9b8bb832.m3u8$LR•IPV4•11『线路9』 #EXTINF:-1 tvg-id="NBA" tvg-name="NBA" group-title="⚽️SPORTS",NBA -p3p://167.114.175.6:55331/65a587500007bc039fca3566638e69af$LR•IPV4•11『线路10』 +https://amg00556-amg00556c3-firetv-us-6060.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•11『线路10』 #EXTINF:-1 tvg-id="NBA" tvg-name="NBA" group-title="⚽️SPORTS",NBA -http://103.148.44.38:8000/play/a03m/index.m3u8$LR•IPV4•11『线路11』 +http://user.scalecdn.co:8080/live/54706135/09221986/3092.m3u8$LR•IPV4•11『线路11』 #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://200.10.30.241:8000/play/a01r/index.m3u8$LR•IPV4•6『线路3』 #EXTINF:-1 tvg-id="ESPN" tvg-name="ESPN" group-title="⚽️SPORTS",ESPN -http://41.205.93.154/ESPN/index.m3u8$LR•IPV4•6『线路4』 +http://181.78.197.59:8000/play/a07z/index.m3u8$LR•IPV4•6『线路4』 #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『线路5』 +http://181.78.197.59:8000/play/a081/index.m3u8$LR•IPV4•6『线路5』 #EXTINF:-1 tvg-id="ESPN" tvg-name="ESPN" group-title="⚽️SPORTS",ESPN -http://200.10.30.241:8000/play/a01r/index.m3u8$LR•IPV4•6『线路6』 +http://181.78.197.59:8000/play/a07n/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",緯來體育 @@ -2702,17 +2704,17 @@ https://vip.ffzy-play6.com/20221206/10068_4bfccafe/index.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="建党伟业" tvg-name="建党伟业" group-title="🎞️电影点播",建党伟业 https://vip.ffzy-play6.com/20221019/168_f44e1477/index.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="江湖" tvg-name="江湖" group-title="🎞️电影点播",江湖 -https://vip.ffzy-play6.com/20221019/84_a64c541f/index.m3u8$LR•IPV4•6『线路1』 +http://cdn.jdshipin.com:8880/huya.php?id=23865142$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-id="江湖" tvg-name="江湖" group-title="🎞️电影点播",江湖 -https://vip.ffzy-play7.com/20221115/4682_5ffb4872/index.m3u8$LR•IPV4•6『线路2』 +https://vip.ffzy-play6.com/20221019/84_a64c541f/index.m3u8$LR•IPV4•6『线路2』 #EXTINF:-1 tvg-id="江湖" tvg-name="江湖" group-title="🎞️电影点播",江湖 -https://vip.ffzy-play7.com/20230205/13419_960c8951/index.m3u8$LR•IPV4•6『线路3』 +https://vip.ffzy-play7.com/20221115/4682_5ffb4872/index.m3u8$LR•IPV4•6『线路3』 #EXTINF:-1 tvg-id="江湖" tvg-name="江湖" group-title="🎞️电影点播",江湖 -https://vip.ffzy-play7.com/20221115/4681_38b34b56/index.m3u8$LR•IPV4•6『线路4』 +https://vip.ffzy-play7.com/20230205/13419_960c8951/index.m3u8$LR•IPV4•6『线路4』 #EXTINF:-1 tvg-id="江湖" tvg-name="江湖" group-title="🎞️电影点播",江湖 -https://vip.ffzy-play.com/20221017/1755_28d3688d/index.m3u8$LR•IPV4•6『线路5』 +https://vip.ffzy-play7.com/20221115/4681_38b34b56/index.m3u8$LR•IPV4•6『线路5』 #EXTINF:-1 tvg-id="江湖" tvg-name="江湖" group-title="🎞️电影点播",江湖 -http://cdn.jdshipin.com:8880/huya.php?id=23865142$LR•IPV4•6『线路6』 +https://vip.ffzy-play.com/20221017/1755_28d3688d/index.m3u8$LR•IPV4•6『线路6』 #EXTINF:-1 tvg-id="僵尸先生" tvg-name="僵尸先生" group-title="🎞️电影点播",僵尸先生 https://vip.ffzy-play7.com/20230507/24165_799a7b4a/index.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="僵尸先生" tvg-name="僵尸先生" group-title="🎞️电影点播",僵尸先生 @@ -3336,67 +3338,67 @@ 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=7bbc669eee2044d8761aa03624b105c7$LR•IPV4•43『线路1』 +https://v4-702cae17a28d6e4f0c0002bba021d934.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=16c50a21b4dbd7f799ba43a4a3f02212$LR•IPV4•43『线路1』 #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=279b026fed672d59628112a0fa829209$LR•IPV4•43『线路2』 +https://v4-702cae17a28d6e4f0c0002bba021d934.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=87228f9521462cf4fab49a1fe67efd25$LR•IPV4•43『线路2』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -https://ali-m-l.cztv.com/channels/lantian/channel12/720p.m3u8$LR•IPV4•43『线路3』 +https://rt-doc.rttv.com/dvr/rtdru/rtdru1080.m3u8$LR•IPV4•43『线路3』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/n3f497a4c/index.m3u8?q=1752629214236$LR•IPV4•43『线路4』 +https://rt-rtd.rttv.com/dvr/rtdoc/playlist_4500Kb.m3u8$LR•IPV4•43『线路4』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/2ae73b1a/index.m3u8?q=1752629214236$LR•IPV4•43『线路5』 +http://free.cnlive.club/channel/n3f497a4c/index.m3u8?q=1752629214236$LR•IPV4•43『线路5』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/nb957a7c/index.m3u8?q=1752629214236$LR•IPV4•43『线路6』 +http://free.cnlive.club/channel/2ae73b1a/index.m3u8?q=1752629214236$LR•IPV4•43『线路6』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/n3efbe5af/index.m3u8?q=1752629214236$LR•IPV4•43『线路7』 +http://free.cnlive.club/channel/nb957a7c/index.m3u8?q=1752629214236$LR•IPV4•43『线路7』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/1404dfbd/index.m3u8?q=1752629214236$LR•IPV4•43『线路8』 +http://free.cnlive.club/channel/n3efbe5af/index.m3u8?q=1752629214236$LR•IPV4•43『线路8』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/n3287f647/index.m3u8?q=1752629214236$LR•IPV4•43『线路9』 +http://free.cnlive.club/channel/1404dfbd/index.m3u8?q=1752629214236$LR•IPV4•43『线路9』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/n2517f7dd/index.m3u8?q=1752629214236$LR•IPV4•43『线路10』 +http://free.cnlive.club/channel/n3287f647/index.m3u8?q=1752629214236$LR•IPV4•43『线路10』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/4b914480/index.m3u8?q=1752629214236$LR•IPV4•43『线路11』 +http://free.cnlive.club/channel/n2517f7dd/index.m3u8?q=1752629214236$LR•IPV4•43『线路11』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/6272ba2c/index.m3u8?q=1752629214236$LR•IPV4•43『线路12』 +http://free.cnlive.club/channel/4b914480/index.m3u8?q=1752629214236$LR•IPV4•43『线路12』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/24a7393c/index.m3u8?q=1752629214236$LR•IPV4•43『线路13』 +http://free.cnlive.club/channel/6272ba2c/index.m3u8?q=1752629214236$LR•IPV4•43『线路13』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/n75e57aab/index.m3u8?q=1752629214236$LR•IPV4•43『线路14』 +http://free.cnlive.club/channel/24a7393c/index.m3u8?q=1752629214236$LR•IPV4•43『线路14』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/n7852a99f/index.m3u8?q=1752629214236$LR•IPV4•43『线路15』 +http://free.cnlive.club/channel/n75e57aab/index.m3u8?q=1752629214236$LR•IPV4•43『线路15』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/356e7ac6/index.m3u8?q=1752629214236$LR•IPV4•43『线路16』 +http://free.cnlive.club/channel/n7852a99f/index.m3u8?q=1752629214236$LR•IPV4•43『线路16』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/359a630b/index.m3u8?q=1752629214236$LR•IPV4•43『线路17』 +http://free.cnlive.club/channel/356e7ac6/index.m3u8?q=1752629214236$LR•IPV4•43『线路17』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/n7a0c7aec/index.m3u8?q=1752629214236$LR•IPV4•43『线路18』 +http://free.cnlive.club/channel/359a630b/index.m3u8?q=1752629214236$LR•IPV4•43『线路18』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/n6582cfc7/index.m3u8?q=1752629214236$LR•IPV4•43『线路19』 +http://free.cnlive.club/channel/n7a0c7aec/index.m3u8?q=1752629214236$LR•IPV4•43『线路19』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/n18e58008/index.m3u8?q=1752629214236$LR•IPV4•43『线路20』 +http://free.cnlive.club/channel/n6582cfc7/index.m3u8?q=1752629214236$LR•IPV4•43『线路20』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/6c975854/index.m3u8?q=1752629214236$LR•IPV4•43『线路21』 +http://free.cnlive.club/channel/n18e58008/index.m3u8?q=1752629214236$LR•IPV4•43『线路21』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/n28af27dd/index.m3u8?q=1752629214236$LR•IPV4•43『线路22』 +http://free.cnlive.club/channel/6c975854/index.m3u8?q=1752629214236$LR•IPV4•43『线路22』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/264e2d58/index.m3u8?q=1752629214236$LR•IPV4•43『线路23』 +http://free.cnlive.club/channel/n28af27dd/index.m3u8?q=1752629214236$LR•IPV4•43『线路23』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/2631a9ae/index.m3u8?q=1752629214236$LR•IPV4•43『线路24』 +http://free.cnlive.club/channel/264e2d58/index.m3u8?q=1752629214236$LR•IPV4•43『线路24』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://ali-m-l.cztv.com/channels/lantian/channel012/1080p.m3u8$LR•IPV4•43『线路25』 +http://free.cnlive.club/channel/2631a9ae/index.m3u8?q=1752629214236$LR•IPV4•43『线路25』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://120.55.49.231:3095/rtp/233.50.202.25:5140$LR•IPV4•43『线路26』 +https://ali-m-l.cztv.com/channels/lantian/channel12/720p.m3u8$LR•IPV4•43『线路26』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://zwebl02.cztv.com/live/channel121080P.m3u8?auth_key=2524708799-0-0-c33efdd495bcdd2ddc42e7c408405037$LR•IPV4•43『线路27』 +http://ali-m-l.cztv.com/channels/lantian/channel012/1080p.m3u8$LR•IPV4•43『线路27』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://ali-m-l.cztv.com/channels/lantian/channel12/1080p.m3u8$LR•IPV4•43『线路28』 +http://120.55.49.231:3095/rtp/233.50.202.25:5140$LR•IPV4•43『线路28』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://lsfb.avap.jilintv.cn/zqvk7vpj/channel/da805d8d77a24db8aaa62328eb6d874e/index.m3u8$LR•IPV4•43『线路29』 +http://zwebl02.cztv.com/live/channel121080P.m3u8?auth_key=2524708799-0-0-c33efdd495bcdd2ddc42e7c408405037$LR•IPV4•43『线路29』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -https://rt-doc.rttv.com/dvr/rtdru/rtdru1080.m3u8$LR•IPV4•43『线路30』 +http://ali-m-l.cztv.com/channels/lantian/channel12/1080p.m3u8$LR•IPV4•43『线路30』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -https://rt-rtd.rttv.com/dvr/rtdoc/playlist_4500Kb.m3u8$LR•IPV4•43『线路31』 +http://lsfb.avap.jilintv.cn/zqvk7vpj/channel/da805d8d77a24db8aaa62328eb6d874e/index.m3u8$LR•IPV4•43『线路31』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 p3p://167.114.175.6:55331/623baf7a0004e5d79c2047cd46107be2$LR•IPV4•43『线路32』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 @@ -3408,17 +3410,17 @@ https://svs.itworkscdn.net/asharqdiscoverylive/asharqd.smil/playlist_dvr.m3u8$LR #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 p3p://167.114.175.6:55331/62c9a44500000cd3c69dc74b77c62c82$LR•IPV4•43『线路36』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://23.237.104.106:8080/USA_MTV_LIVE/index.m3u8$LR•IPV4•43『线路37』 +http://108.181.20.255:27347/livehttpplay?channel_id=23081$LR•IPV4•43『线路37』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://108.181.20.255:27347/livehttpplay?channel_id=23081$LR•IPV4•43『线路38』 +http://23.237.104.106:8080/USA_MTV_LIVE/index.m3u8$LR•IPV4•43『线路38』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 p3p://167.114.175.6:55331/5fe16de700083ba97787607e74d90cb5$LR•IPV4•43『线路39』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -https://i.mjh.nz/.r/sky-hgtv.m3u8$LR•IPV4•43『线路40』 +p3p://167.114.175.6:55331/644518fd0002d5953f21bedc56b6465f$LR•IPV4•43『线路40』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -p3p://167.114.175.6:55331/644518fd0002d5953f21bedc56b6465f$LR•IPV4•43『线路41』 +http://108.181.20.255:27347/livehttpplay?channel_id=23097$LR•IPV4•43『线路41』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://108.181.20.255:27347/livehttpplay?channel_id=23097$LR•IPV4•43『线路42』 +https://i.mjh.nz/.r/sky-hgtv.m3u8$LR•IPV4•43『线路42』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 p3p://167.114.175.6:55331/61e4f963000c710c55474e4e1e2273d9$LR•IPV4•43『线路43』 #EXTINF:-1 tvg-id="樱桃小丸子剧" tvg-name="樱桃小丸子剧" group-title="💓儿童专享",樱桃小丸子剧 @@ -3440,29 +3442,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•27『线路1』 +http://free.cnlive.club/channel/n59903092/index.m3u8?q=1752629214236$LR•IPV4•27『线路1』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 -http://free.cnlive.club/channel/n59903092/index.m3u8?q=1752629214236$LR•IPV4•27『线路2』 +http://free.cnlive.club/channel/33dc4490/index.m3u8?q=1752629214236$LR•IPV4•27『线路2』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 -http://free.cnlive.club/channel/33dc4490/index.m3u8?q=1752629214236$LR•IPV4•27『线路3』 +http://free.cnlive.club/channel/n149d9627/index.m3u8?q=1752629214236$LR•IPV4•27『线路3』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 -http://free.cnlive.club/channel/n149d9627/index.m3u8?q=1752629214236$LR•IPV4•27『线路4』 +http://free.cnlive.club/channel/5fe8f622/index.m3u8?q=1752629214236$LR•IPV4•27『线路4』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 -http://free.cnlive.club/channel/5fe8f622/index.m3u8?q=1752629214236$LR•IPV4•27『线路5』 +http://free.cnlive.club/channel/7af110c4/index.m3u8?q=1752629214236$LR•IPV4•27『线路5』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 -http://free.cnlive.club/channel/7af110c4/index.m3u8?q=1752629214236$LR•IPV4•27『线路6』 +http://free.cnlive.club/channel/18a1ad0/index.m3u8?q=1752629214236$LR•IPV4•27『线路6』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 -http://free.cnlive.club/channel/18a1ad0/index.m3u8?q=1752629214236$LR•IPV4•27『线路7』 +http://free.cnlive.club/channel/n70dedb3e/index.m3u8?q=1752629214236$LR•IPV4•27『线路7』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 -http://free.cnlive.club/channel/n70dedb3e/index.m3u8?q=1752629214236$LR•IPV4•27『线路8』 +http://free.cnlive.club/channel/n6567f5b8/index.m3u8?q=1752629214236$LR•IPV4•27『线路8』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 -http://free.cnlive.club/channel/n6567f5b8/index.m3u8?q=1752629214236$LR•IPV4•27『线路9』 +http://free.cnlive.club/channel/n6a165737/index.m3u8?q=1752629214236$LR•IPV4•27『线路9』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 -http://free.cnlive.club/channel/n6a165737/index.m3u8?q=1752629214236$LR•IPV4•27『线路10』 +http://free.cnlive.club/channel/n75fc9ff7/index.m3u8?q=1752629214236$LR•IPV4•27『线路10』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 -http://free.cnlive.club/channel/n75fc9ff7/index.m3u8?q=1752629214236$LR•IPV4•27『线路11』 +p3p://167.114.175.6:55331/6233e0ca0000ca8f7da159a76b755519$LR•IPV4•27『线路11』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 -p3p://167.114.175.6:55331/6233e0ca0000ca8f7da159a76b755519$LR•IPV4•27『线路12』 +http://scgctvshow.sctv.com/hdlive/sctv7/index.m3u8$LR•IPV4•27『线路12』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 https://cdn10jtedge.indihometv.com/atm/DASH/cbeebies/manifest.mpd$LR•IPV4•27『线路13』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 @@ -3486,19 +3488,19 @@ https://trs1.aynaott.com/discoverykids/index.m3u8$LR•IPV4•27『线路22』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 https://627bb251f23c7.streamlock.net:444/ExtremaKids/ExtremaKids/playlist.m3u8$LR•IPV4•27『线路23』 #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•27『线路24』 +p3p://167.114.175.6:55331/6506d1a00000a99a33d7555a4b747caa$LR•IPV4•27『线路24』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 -p3p://167.114.175.6:55331/6506d1a00000a99a33d7555a4b747caa$LR•IPV4•27『线路25』 +p3p://167.114.175.6:55331/61e0f9f0000ec6db45a9e87848424184$LR•IPV4•27『线路25』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 -p3p://167.114.175.6:55331/61e0f9f0000ec6db45a9e87848424184$LR•IPV4•27『线路26』 +https://amg02159-kcglobal-amg02159c1-samsung-in-521.playouts.now.amagi.tv/playlist/amg02159-kcglobal-animax-samsungin/playlist.m3u8$LR•IPV4•27『线路26』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 p3p://167.114.175.6:55331/64bea3f00002bdf919e6522520650b26$LR•IPV4•27『线路27』 #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 @@ -3590,13 +3592,13 @@ 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://92.36.202.5:10001/play/a01o$LR•IPV4•4『线路1』 +p3p://167.114.175.6:55331/6506c5e500027c7f33a9834b5d937568$LR•IPV4•4『线路1』 #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•4『线路2』 +http://92.36.202.5:10001/play/a01o$LR•IPV4•4『线路2』 #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•4『线路3』 +http://149.71.34.166:8000/play/a01f/index.m3u8$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-id="Star Movies" tvg-name="Star Movies" group-title="🍹定制P3P☕️",Star Movies -p3p://167.114.175.6:55331/6506c5e500027c7f33a9834b5d937568$LR•IPV4•4『线路4』 +http://149.71.34.166:8000/play/a01g/index.m3u8$LR•IPV4•4『线路4』 #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 @@ -3630,9 +3632,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☕️",面包台 @@ -3672,35 +3674,35 @@ 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•15『线路1』 +p3p://167.114.175.6:55331/64c7ce3f000afa423db36d3f378c386d$LR•IPV4•15『线路1』 #EXTINF:-1 tvg-id="Z" tvg-name="Z" group-title="🍹定制P3P☕️",Z -http://s1.media-planet.sk/live/novezamky/BratuMarian.m3u8$LR•IPV4•15『线路2』 +http://zbbf2.ahbztv.com/live/418.m3u8$LR•IPV4•15『线路2』 #EXTINF:-1 tvg-id="Z" tvg-name="Z" group-title="🍹定制P3P☕️",Z -https://d3s7x6kmqcnb6b.cloudfront.net/d/distro001a/CUXB534IAMTJM7Z4BKKS/hls3/now,-1m/m.m3u8?ads.vf=0RN164SO2bG$LR•IPV4•15『线路3』 +https://live.artidijitalmedya.com/artidijital_kanalz/kanalz/playlist.m3u8$LR•IPV4•15『线路3』 #EXTINF:-1 tvg-id="Z" tvg-name="Z" group-title="🍹定制P3P☕️",Z -https://d3s7x6kmqcnb6b.cloudfront.net/d/distro001a/8WOSAE6HHWJY8KP8BW2C/hls3/now,-1m/m.m3u8?ads.vf=7-VUi572FgK$LR•IPV4•15『线路4』 +http://s1.media-planet.sk/live/novezamky/BratuMarian.m3u8$LR•IPV4•15『线路4』 #EXTINF:-1 tvg-id="Z" tvg-name="Z" group-title="🍹定制P3P☕️",Z -https://d3s7x6kmqcnb6b.cloudfront.net/d/distro001a/P6T1SCG4XU9MM36TQSB5/hls3/now,-1m/m.m3u8?ads.vf=4TlF3ABNLHW$LR•IPV4•15『线路5』 +https://d3s7x6kmqcnb6b.cloudfront.net/d/distro001a/CUXB534IAMTJM7Z4BKKS/hls3/now,-1m/m.m3u8?ads.vf=0RN164SO2bG$LR•IPV4•15『线路5』 #EXTINF:-1 tvg-id="Z" tvg-name="Z" group-title="🍹定制P3P☕️",Z -https://jmp2.uk/plu-68e8fd7c3ede4398bc69af93.m3u8$LR•IPV4•15『线路6』 +https://d3s7x6kmqcnb6b.cloudfront.net/d/distro001a/8WOSAE6HHWJY8KP8BW2C/hls3/now,-1m/m.m3u8?ads.vf=7-VUi572FgK$LR•IPV4•15『线路6』 #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•15『线路7』 +https://d3s7x6kmqcnb6b.cloudfront.net/d/distro001a/P6T1SCG4XU9MM36TQSB5/hls3/now,-1m/m.m3u8?ads.vf=4TlF3ABNLHW$LR•IPV4•15『线路7』 #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•15『线路8』 +https://jmp2.uk/plu-68e8fd7c3ede4398bc69af93.m3u8$LR•IPV4•15『线路8』 #EXTINF:-1 tvg-id="Z" tvg-name="Z" group-title="🍹定制P3P☕️",Z -https://jmp2.uk/plu-652d0b756208700008d758ad.m3u8$LR•IPV4•15『线路9』 +https://d39g1vxj2ef6in.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/master.m3u8?ads.xumo_channelId=88883103$LR•IPV4•15『线路9』 #EXTINF:-1 tvg-id="Z" tvg-name="Z" group-title="🍹定制P3P☕️",Z -https://stream.ztv.zp.ua/hls/live.m3u8$LR•IPV4•15『线路10』 +https://amg02393-awpg-amg02393c3-rakuten-uk-2462.playouts.now.amagi.tv/playlist/amg02393-awpg-leszamours-rakutenuk/playlist.m3u8$LR•IPV4•15『线路10』 #EXTINF:-1 tvg-id="Z" tvg-name="Z" group-title="🍹定制P3P☕️",Z -https://jmp2.uk/plu-66b3af48d2d50d00083d6936.m3u8$LR•IPV4•15『线路11』 +https://jmp2.uk/plu-652d0b756208700008d758ad.m3u8$LR•IPV4•15『线路11』 #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•15『线路12』 +https://stream.ztv.zp.ua/hls/live.m3u8$LR•IPV4•15『线路12』 #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•15『线路13』 +https://jmp2.uk/plu-66b3af48d2d50d00083d6936.m3u8$LR•IPV4•15『线路13』 #EXTINF:-1 tvg-id="Z" tvg-name="Z" group-title="🍹定制P3P☕️",Z -p3p://167.114.175.6:55331/64c7ce3f000afa423db36d3f378c386d$LR•IPV4•15『线路14』 +https://d1hz1p2gea2zy4.cloudfront.net/live/rmgtv/RMG-TRENDSZFR-LIVE/index.m3u8$LR•IPV4•15『线路14』 #EXTINF:-1 tvg-id="Z" tvg-name="Z" group-title="🍹定制P3P☕️",Z -http://zbbf2.ahbztv.com/live/418.m3u8$LR•IPV4•15『线路15』 +https://d1hz1p2gea2zy4.cloudfront.net/live/rmgtv/RMG-TRENDSZNL-LIVE/index.m3u8$LR•IPV4•15『线路15』 #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 @@ -3712,67 +3714,67 @@ 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•33『线路2』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -https://webtvstream.bhtelecom.ba/hls7/filmbox_premium.m3u8$LR•IPV4•33『线路3』 +http://37.27.111.214:8080/live/28/hls.m3u8$LR•IPV4•33『线路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•33『线路4』 +p3p://167.114.175.6:55331/6233e648000735057db6cf734adf440d$LR•IPV4•33『线路4』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -http://46.149.191.217:9005/play/a01x$LR•IPV4•33『线路5』 +http://108.181.20.255:27347/livehttpplay?channel_id=23074$LR•IPV4•33『线路5』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -https://cdn10jtedge.indihometv.com/atm/DASH/hitsmovie/manifest.mpd$LR•IPV4•33『线路6』 +http://108.181.20.255:27347/livehttpplay?channel_id=23011$LR•IPV4•33『线路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•33『线路7』 +https://webtvstream.bhtelecom.ba/hls7/filmbox_premium.m3u8$LR•IPV4•33『线路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•33『线路8』 +http://88.212.15.19/live/test_film_boxpremium_hd_hevc/playlist.m3u8$LR•IPV4•33『线路8』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -https://cdn10jtedge.indihometv.com/atm/DASH/hits/manifest.mpd$LR•IPV4•33『线路9』 +http://46.149.191.217:9005/play/a01x$LR•IPV4•33『线路9』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -https://d3s7x6kmqcnb6b.cloudfront.net/d/distro001a/MH8JAMWTLW2AQV5RA55S/hls3/now,-1m/m.m3u8?ads.vf=TGt7I6yRWZC$LR•IPV4•33『线路10』 +https://cdn10jtedge.indihometv.com/atm/DASH/hitsmovie/manifest.mpd$LR•IPV4•33『线路10』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -https://stream.ads.ottera.tv/playlist.m3u8?network_id=1058$LR•IPV4•33『线路11』 +https://5098a8b860504a3690fd2e7c0a18d68f.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-817-FR-SONYONEHITSACTION-LG_FR/playlist.m3u8$LR•IPV4•33『线路11』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -https://mumt03.tangotv.in/CLASSICHITS/index.m3u8$LR•IPV4•33『线路12』 +https://7aa9671895264ec9a384dfed1b992171.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-818-FR-SONYONEHITSCOMDIE-LG_FR/playlist.m3u8$LR•IPV4•33『线路12』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -https://mumt02.tangotv.in/EVERGREENHITS/index.m3u8$LR•IPV4•33『线路13』 +https://cdn10jtedge.indihometv.com/atm/DASH/hits/manifest.mpd$LR•IPV4•33『线路13』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -https://mumt01.tangotv.in/HINDIHITS/index.m3u8$LR•IPV4•33『线路14』 +https://d3s7x6kmqcnb6b.cloudfront.net/d/distro001a/MH8JAMWTLW2AQV5RA55S/hls3/now,-1m/m.m3u8?ads.vf=TGt7I6yRWZC$LR•IPV4•33『线路14』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -https://d3s7x6kmqcnb6b.cloudfront.net/d/distro001a/G7RPZJDZ6V3CRIAWTNFU/hls3/now,-1m/m.m3u8?ads.vf=vc24NGfvvqe$LR•IPV4•33『线路15』 +https://stream.ads.ottera.tv/playlist.m3u8?network_id=1058$LR•IPV4•33『线路15』 #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•33『线路16』 +https://mumt03.tangotv.in/CLASSICHITS/index.m3u8$LR•IPV4•33『线路16』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -https://d2tuyivcrvbj81.cloudfront.net/XITE_Christian_Hits.m3u8$LR•IPV4•33『线路17』 +https://mumt02.tangotv.in/EVERGREENHITS/index.m3u8$LR•IPV4•33『线路17』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -http://31.148.48.15/Bridge_TV_Dance/index.m3u8$LR•IPV4•33『线路18』 +https://mumt01.tangotv.in/HINDIHITS/index.m3u8$LR•IPV4•33『线路18』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -http://cm.hostlagarto.com:8081/hits360tv/hits360HD.myStream/playlist.m3u8$LR•IPV4•33『线路19』 +https://d3s7x6kmqcnb6b.cloudfront.net/d/distro001a/G7RPZJDZ6V3CRIAWTNFU/hls3/now,-1m/m.m3u8?ads.vf=vc24NGfvvqe$LR•IPV4•33『线路19』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -http://88.212.15.19/live/mb_hits/index.m3u8$LR•IPV4•33『线路20』 +https://lotus.stingray.com/manifest/ose-237ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•33『线路20』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -https://test.946985.filegear-sg.me/proxy/a23981548880f405$LR•IPV4•33『线路21』 +https://d2tuyivcrvbj81.cloudfront.net/XITE_Christian_Hits.m3u8$LR•IPV4•33『线路21』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -https://stream.ottlive.co.in/punjabihits/index.m3u8$LR•IPV4•33『线路22』 +http://31.148.48.15/Bridge_TV_Dance/index.m3u8$LR•IPV4•33『线路22』 #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•33『线路23』 +http://cm.hostlagarto.com:8081/hits360tv/hits360HD.myStream/playlist.m3u8$LR•IPV4•33『线路23』 #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•33『线路24』 +http://88.212.15.19/live/mb_hits/index.m3u8$LR•IPV4•33『线路24』 #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•33『线路25』 +https://test.946985.filegear-sg.me/proxy/a23981548880f405$LR•IPV4•33『线路25』 #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•33『线路26』 +https://stream.ottlive.co.in/punjabihits/index.m3u8$LR•IPV4•33『线路26』 #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•33『线路27』 +https://lotus.stingray.com/manifest/ose-214ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•33『线路27』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -https://d726x48n2pd5h.cloudfront.net/XITE_Hits.m3u8$LR•IPV4•33『线路28』 +https://d39g1vxj2ef6in.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/master.m3u8?ads.xumo_channelId=88883053$LR•IPV4•33『线路28』 #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•33『线路29』 +https://lotus.stingray.com/manifest/ose-155ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•33『线路29』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -http://37.27.111.214:8080/live/28/hls.m3u8$LR•IPV4•33『线路30』 +https://d39g1vxj2ef6in.cloudfront.net/v1/manifest/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/54947915-6504-4548-aaef-eabd451f8607/1.m3u8$LR•IPV4•33『线路30』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -p3p://167.114.175.6:55331/6233e648000735057db6cf734adf440d$LR•IPV4•33『线路31』 +https://vglivessai.akamaized.net/sg/v1/master/611d79b11b77e2f571934fd80ca1413453772ac7/e11b0319-52e8-4190-ab03-3931cc68eac9/index.m3u8$LR•IPV4•33『线路31』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -http://108.181.20.255:27347/livehttpplay?channel_id=23074$LR•IPV4•33『线路32』 +https://d726x48n2pd5h.cloudfront.net/XITE_Hits.m3u8$LR•IPV4•33『线路32』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -http://108.181.20.255:27347/livehttpplay?channel_id=23011$LR•IPV4•33『线路33』 +https://d726x48n2pd5h.cloudfront.net/v1/master/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-skxr1pazhltvp/XITE_Hits.m3u8$LR•IPV4•33『线路33』 #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☕️",中旺电视 @@ -3844,11 +3846,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☕️",爱尔达娱乐 @@ -3884,9 +3886,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 @@ -3904,17 +3906,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☕️",台湾戏剧 @@ -3930,21 +3932,21 @@ 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•8『线路1』 +http://rbmn-live.akamaized.net/hls/live/590964/BoRB-AT/master_6660.m3u8$LR•IPV4•8『线路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•8『线路2』 +https://rbmn-live.akamaized.net/hls/live/590964/BoRB-AT/master_1660.m3u8$LR•IPV4•8『线路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•8『线路3』 +https://3ea22335.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWdiX1JlZEJ1bGxUVl9ITFM/playlist.m3u8$LR•IPV4•8『线路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•8『线路4』 +https://rbmn-live.akamaized.net/hls/live/590964/BoRB-AT/master.m3u8$LR•IPV4•8『线路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•8『线路5』 +https://db34cc6127ac459db55cab5f97cd66b9.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-680-WORBAUENFAST-WHALETVPLUS/680/whaletvplus/hls/master/playlist.m3u8$LR•IPV4•8『线路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•8『线路6』 +https://d03ae6b5c6724c24867e97a3dc04934a.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-1026-WORBBRPTFAST-WHALETVPLUS/1026/hls/master/playlist.m3u8$LR•IPV4•8『线路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•8『线路7』 +https://46cfeb23c7f74853bba7a256655a3119.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-582-WORBDACHDEFAST-WHALETVPLUS/582/whaletvplus/hls/master/playlist.m3u8$LR•IPV4•8『线路7』 #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_1660.m3u8$LR•IPV4•8『线路8』 +https://886bd3fbc782459f8de7555d32d7e9ce.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-957-WORBLATAMESFAST-WHALETVPLUS/957/whaletvplus/hls/master/playlist.m3u8$LR•IPV4•8『线路8』 #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 @@ -3982,7 +3984,7 @@ http://38.75.136.137:98/gslb/dsdqpub/bqkj.m3u8?auth=testpub$LR•IPV4•3『线 #EXTINF:-1 tvg-id="CCTV兵器" tvg-name="CCTV兵器" group-title="🌐央视频道",CCTV兵器 http://60.10.139.113:8801/hls/72/index.m3u8$LR•IPV4•3『线路3』 #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=1783738800-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-51e8b9f9c94dcce18451a546b462beb1&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•225『线路1』 +https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1783746000-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-02e028da2bbd51e65163edbb07cd365e&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•225『线路1』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV http://183.196.25.171:808/hls/77/index.m3u8$LR•IPV4•225『线路2』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV @@ -3994,503 +3996,503 @@ http://183.196.25.171:808/hls/93/index.m3u8$LR•IPV4•225『线路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=1783666800-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-96a1fc3c6c225c78e9026808895bf05a&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•225『线路6』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://69.30.245.50/live/cctv6.m3u8$LR•IPV4•225『线路7』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226895/1.m3u8?$LR•IPV6•225『线路7』 #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•225『线路8』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226893/1.m3u8?$LR•IPV6•225『线路8』 #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•225『线路9』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226471/1.m3u8?$LR•IPV6•225『线路9』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://69.30.245.50/live/cctv1.m3u8$LR•IPV4•225『线路10』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226335/1.m3u8?$LR•IPV6•225『线路10』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv1hd.m3u8$LR•IPV4•225『线路11』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226469/1.m3u8?$LR•IPV6•225『线路11』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://global.cgtn.cicc.media.caton.cloud/master/cgtn-america.m3u8$LR•IPV4•225『线路12』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226468/1.m3u8?$LR•IPV6•225『线路12』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv4hd.m3u8$LR•IPV4•225『线路13』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226946/1.m3u8?$LR•IPV6•225『线路13』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://dash2.antik.sk/live/test_cctv_tizen/playlist.m3u8$LR•IPV4•225『线路14』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226485/1.m3u8?$LR•IPV6•225『线路14』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://go.bkpcp.top/mg/cctv13$LR•IPV4•225『线路15』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226944/1.m3u8?$LR•IPV6•225『线路15』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://cdn3.163189.xyz/163189/cctv13$LR•IPV4•225『线路16』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226937/1.m3u8?$LR•IPV6•225『线路16』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv8hd.m3u8$LR•IPV4•225『线路17』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226334/1.m3u8?$LR•IPV6•225『线路17』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv3hd.m3u8$LR•IPV4•225『线路18』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226942/1.m3u8?$LR•IPV6•225『线路18』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/cctv8k.m3u8$LR•IPV4•225『线路19』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226316/1.m3u8?$LR•IPV6•225『线路19』 #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•225『线路20』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226947/1.m3u8?$LR•IPV6•225『线路20』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://solo.disfrutaenlared.com:1936/redcctv/redcctv/playlist.m3u8$LR•IPV4•225『线路21』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226333/1.m3u8?$LR•IPV6•225『线路21』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv14hd.m3u8$LR•IPV4•225『线路22』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227002/1.m3u8?$LR•IPV6•225『线路22』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv11hd.m3u8$LR•IPV4•225『线路23』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226318/1.m3u8?$LR•IPV6•225『线路23』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://xykt-fix.github.io/play/a02e/index.m3u8$LR•IPV4•225『线路24』 +https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1783742400-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-19149547a7d5dfb5bd31f3815e03c8ea&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•225『线路24』 #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•225『线路25』 +https://shcm-stream-cf1.stream.264788.xyz/cms001/ch00000090990000001620/index.m3u8?streamid=8a034b40397504e25b3775c772237996&streamkey=01vY5fRxC8VyKg4oq30vfikHXTCAKySLP29l6OG91kQlzDttHgzNLkUw5kivm3PfNsVHJv5FgdsPBYFYI2IWpt7tfRCuFHqLT2pvX67ubMds8jl2DHtvOh0&token=1775754349-4f33f4f84a4abeba-0-91687dc8c9325092efa1d00f330d2710$LR•IPV4•225『线路25』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv12hd.m3u8$LR•IPV4•225『线路26』 +https://epg.pw/stream/ca9c1cd4b97fb824cedd7fedfd0c7a950afdd7f00751cfbb7c2d89831d7746a5.m3u8$LR•IPV4•225『线路26』 #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•225『线路27』 +https://epg.pw/stream/6d7bf281e3d739806a73f5373acaa6e01988ec9739f5ac1355ce54b47a928472.m3u8$LR•IPV4•225『线路27』 #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•225『线路28』 +https://epg.pw/stream/ac8062ec9484078061d3bef507c15a423ac57ae4144e3fcc4b0a198dd420f911.m3u8$LR•IPV4•225『线路28』 #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•225『线路29』 +http://192.151.150.154/live/cctv1hd.m3u8$LR•IPV4•225『线路29』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv16hd.m3u8$LR•IPV4•225『线路30』 +http://69.30.245.50/live/cctv2.m3u8$LR•IPV4•225『线路30』 #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•225『线路31』 +http://173.208.212.130:8181/720p/cctv2.m3u8$LR•IPV4•225『线路31』 #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•225『线路32』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv3hd$LR•IPV4•225『线路32』 #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•225『线路33』 +http://69.30.245.50/live/cctv4.m3u8$LR•IPV4•225『线路33』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv2hd.m3u8$LR•IPV4•225『线路34』 +http://207.56.13.146:81/cdnlive/cctv4.m3u8$LR•IPV4•225『线路34』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://xykt-fix.github.io/Y77.m3u8$LR•IPV4•225『线路35』 +http://198.204.240.250:82/live/cctv6.m3u8$LR•IPV4•225『线路35』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv7hd.m3u8$LR•IPV4•225『线路36』 +http://173.208.212.130:8181/1080p/cctv6.m3u8$LR•IPV4•225『线路36』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv10hd.m3u8$LR•IPV4•225『线路37』 +http://173.208.212.130:8181/720p/cctv6.m3u8$LR•IPV4•225『线路37』 #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•225『线路38』 +http://74.91.26.218:82/live/cctv7hd.m3u8$LR•IPV4•225『线路38』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv17hd.m3u8$LR•IPV4•225『线路39』 +http://192.151.150.154/live/cctv7hd.m3u8$LR•IPV4•225『线路39』 #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•225『线路40』 +http://38.75.136.137:98/gslb/dsdqbv/cctv7hd.m3u8?auth=test20251009$LR•IPV4•225『线路40』 #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•225『线路41』 +http://207.56.13.146:81/cdnlive/cctv7.m3u8$LR•IPV4•225『线路41』 #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•225『线路42』 +http://207.56.13.146:81/cdnlive/cctv8.m3u8$LR•IPV4•225『线路42』 #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•225『线路43』 +http://69.30.245.50/live/cctv8.m3u8$LR•IPV4•225『线路43』 #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•225『线路44』 +http://173.208.212.130:8181/720p/cctv8.m3u8$LR•IPV4•225『线路44』 #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•225『线路45』 +http://222.223.41.27:8888/hls/10/index.m3u8$LR•IPV4•225『线路45』 #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•225『线路46』 +https://hwapi.yntv.net/ew265l/z1z6s5.m3u8$LR•IPV4•225『线路46』 #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•225『线路47』 +http://69.30.245.50/live/cctv10.m3u8$LR•IPV4•225『线路47』 #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•225『线路48』 +http://207.56.13.146:81/cdnlive/cctv11.m3u8$LR•IPV4•225『线路48』 #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•225『线路49』 +http://123.163.114.168:9901/tsfile/live/0013_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•225『线路49』 #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•225『线路50』 +http://116.128.243.121:85/tsfile/live/0013_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•225『线路50』 #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•225『线路51』 +https://event.pull.hebtv.com/jishi/cp1.m3u8$LR•IPV4•225『线路51』 #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•225『线路52』 +https://event.pull.hebtv.com/jishi/cp2.m3u8$LR•IPV4•225『线路52』 #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•225『线路53』 +http://74.91.26.218:82/live/cctv14hd.m3u8$LR•IPV4•225『线路53』 #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•225『线路54』 +http://38.75.136.137:98/gslb/dsdqbv/cctv14hd.m3u8?auth=test20251009$LR•IPV4•225『线路54』 #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•225『线路55』 +http://38.75.136.137:98/gslb/dsdqpub/cctv14hd.m3u8?auth=testpub$LR•IPV4•225『线路55』 #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•225『线路56』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv14hd$LR•IPV4•225『线路56』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/cctv1hd.m3u8$LR•IPV4•225『线路57』 +http://74.91.26.218:82/live/cctv16hd.m3u8$LR•IPV4•225『线路57』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://69.30.245.50/live/cctv2.m3u8$LR•IPV4•225『线路58』 +http://38.75.136.137:98/gslb/dsdqpub/wsjk.m3u8?auth=testpub$LR•IPV4•225『线路58』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/cctv2.m3u8$LR•IPV4•225『线路59』 +http://38.75.136.137:98/gslb/dsdqpub/ystq.m3u8?auth=testpub$LR•IPV4•225『线路59』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv3hd$LR•IPV4•225『线路60』 +http://38.75.136.137:98/gslb/dsdqpub/dyjc.m3u8?auth=testpub$LR•IPV4•225『线路60』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://69.30.245.50/live/cctv4.m3u8$LR•IPV4•225『线路61』 +http://38.75.136.137:98/gslb/dsdqpub/fyjc.m3u8?auth=testpub$LR•IPV4•225『线路61』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/cctv4.m3u8$LR•IPV4•225『线路62』 +http://38.75.136.137:98/gslb/dsdqpub/hjjc.m3u8?auth=testpub$LR•IPV4•225『线路62』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://198.204.240.250:82/live/cctv6.m3u8$LR•IPV4•225『线路63』 +http://38.75.136.137:98/gslb/dsdqpub/fyzq.m3u8?auth=testpub$LR•IPV4•225『线路63』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/1080p/cctv6.m3u8$LR•IPV4•225『线路64』 +http://38.75.136.137:98/gslb/dsdqpub/fyyy.m3u8?auth=testpub$LR•IPV4•225『线路64』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/cctv6.m3u8$LR•IPV4•225『线路65』 +http://38.75.136.137:98/gslb/dsdqpub/sjdl.m3u8?auth=testpub$LR•IPV4•225『线路65』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/cctv7hd.m3u8$LR•IPV4•225『线路66』 +http://38.75.136.137:98/gslb/dsdqpub/dszn.m3u8?auth=testpub$LR•IPV4•225『线路66』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://38.75.136.137:98/gslb/dsdqbv/cctv7hd.m3u8?auth=test20251009$LR•IPV4•225『线路67』 +http://38.75.136.137:98/gslb/dsdqpub/ysjp.m3u8?auth=testpub$LR•IPV4•225『线路67』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/cctv7.m3u8$LR•IPV4•225『线路68』 +http://38.75.136.137:98/gslb/dsdqpub/nxss.m3u8?auth=testpub$LR•IPV4•225『线路68』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/cctv8.m3u8$LR•IPV4•225『线路69』 +http://111.61.236.247:9081/hls/58/index.m3u8$LR•IPV4•225『线路69』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://69.30.245.50/live/cctv8.m3u8$LR•IPV4•225『线路70』 +http://111.61.236.247:9081/hls/62/index.m3u8$LR•IPV4•225『线路70』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/cctv8.m3u8$LR•IPV4•225『线路71』 +http://xc.mfykeke.top:35455/nptv/dyjc.m3u8$LR•IPV4•225『线路71』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://222.223.41.27:8888/hls/10/index.m3u8$LR•IPV4•225『线路72』 +http://xc.mfykeke.top:35455/nptv/fyjc.m3u8$LR•IPV4•225『线路72』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://hwapi.yntv.net/ew265l/z1z6s5.m3u8$LR•IPV4•225『线路73』 +http://xc.mfykeke.top:35455/nptv/hjjc.m3u8$LR•IPV4•225『线路73』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://69.30.245.50/live/cctv10.m3u8$LR•IPV4•225『线路74』 +http://www.tszhgjj.cn:7000/rtp/239.253.93.249:6427$LR•IPV4•225『线路74』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/cctv11.m3u8$LR•IPV4•225『线路75』 +http://fn.tmde.top:35455/nptv/cctv4k.m3u8$LR•IPV4•225『线路75』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://123.163.114.168:9901/tsfile/live/0013_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•225『线路76』 +http://fn.tmde.top:35455/nptv/cctv8k.m3u8$LR•IPV4•225『线路76』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://116.128.243.121:85/tsfile/live/0013_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•225『线路77』 +http://xc.mfykeke.top:35455/nptv/cctv4k.m3u8$LR•IPV4•225『线路77』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://event.pull.hebtv.com/jishi/cp1.m3u8$LR•IPV4•225『线路78』 +http://xc.mfykeke.top:35455/nptv/cctv8k.m3u8$LR•IPV4•225『线路78』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://event.pull.hebtv.com/jishi/cp2.m3u8$LR•IPV4•225『线路79』 +http://60.10.139.113:8801/hls/64/index.m3u8$LR•IPV4•225『线路79』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://38.75.136.137:98/gslb/dsdqbv/cctv14hd.m3u8?auth=test20251009$LR•IPV4•225『线路80』 +http://60.10.139.113:8801/hls/65/index.m3u8$LR•IPV4•225『线路80』 #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•225『线路81』 +http://60.10.139.113:8801/hls/66/index.m3u8$LR•IPV4•225『线路81』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv14hd$LR•IPV4•225『线路82』 +http://60.10.139.113:8801/hls/67/index.m3u8$LR•IPV4•225『线路82』 #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=1783731600-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-8abff3eb62a4395bc0145a840cc6a6fc&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•225『线路83』 +http://60.10.139.113:8801/hls/68/index.m3u8$LR•IPV4•225『线路83』 #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•225『线路84』 +http://60.10.139.113:8801/hls/69/index.m3u8$LR•IPV4•225『线路84』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://epg.pw/stream/ca9c1cd4b97fb824cedd7fedfd0c7a950afdd7f00751cfbb7c2d89831d7746a5.m3u8$LR•IPV4•225『线路85』 +http://60.10.139.113:8801/hls/70/index.m3u8$LR•IPV4•225『线路85』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://epg.pw/stream/6d7bf281e3d739806a73f5373acaa6e01988ec9739f5ac1355ce54b47a928472.m3u8$LR•IPV4•225『线路86』 +http://60.10.139.113:8801/hls/79/index.m3u8$LR•IPV4•225『线路86』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://epg.pw/stream/ac8062ec9484078061d3bef507c15a423ac57ae4144e3fcc4b0a198dd420f911.m3u8$LR•IPV4•225『线路87』 +http://60.10.139.113:8801/hls/80/index.m3u8$LR•IPV4•225『线路87』 #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•225『线路88』 +http://60.10.139.113:8801/hls/73/index.m3u8$LR•IPV4•225『线路88』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://111.61.236.247:9081/hls/58/index.m3u8$LR•IPV4•225『线路89』 +http://207.56.13.146:81/cdnlive/cctv1.m3u8$LR•IPV4•225『线路89』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://111.61.236.247:9081/hls/62/index.m3u8$LR•IPV4•225『线路90』 +http://207.56.13.146:81/cdnlive/cctv2.m3u8$LR•IPV4•225『线路90』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://xc.mfykeke.top:35455/nptv/dyjc.m3u8$LR•IPV4•225『线路91』 +http://207.56.13.146:81/cdnlive/cctv3.m3u8$LR•IPV4•225『线路91』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://xc.mfykeke.top:35455/nptv/fyjc.m3u8$LR•IPV4•225『线路92』 +http://207.56.13.146:81/cdnlive/cctv5.m3u8$LR•IPV4•225『线路92』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://xc.mfykeke.top:35455/nptv/hjjc.m3u8$LR•IPV4•225『线路93』 +http://207.56.13.146:81/cdnlive/cctv6.m3u8$LR•IPV4•225『线路93』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://www.tszhgjj.cn:7000/rtp/239.253.93.249:6427$LR•IPV4•225『线路94』 +http://207.56.13.146:81/cdnlive/cctv9.m3u8$LR•IPV4•225『线路94』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://fn.tmde.top:35455/nptv/cctv4k.m3u8$LR•IPV4•225『线路95』 +http://207.56.13.146:81/cdnlive/cctv10.m3u8$LR•IPV4•225『线路95』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://fn.tmde.top:35455/nptv/cctv8k.m3u8$LR•IPV4•225『线路96』 +http://207.56.13.146:81/cdnlive/cctv12.m3u8$LR•IPV4•225『线路96』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://xc.mfykeke.top:35455/nptv/cctv4k.m3u8$LR•IPV4•225『线路97』 +http://207.56.13.146:81/cdnlive/cctv13.m3u8$LR•IPV4•225『线路97』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://xc.mfykeke.top:35455/nptv/cctv8k.m3u8$LR•IPV4•225『线路98』 +http://207.56.13.146:81/cdnlive/cctv14.m3u8$LR•IPV4•225『线路98』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://60.10.139.113:8801/hls/64/index.m3u8$LR•IPV4•225『线路99』 +http://207.56.13.146:81/cdnlive/cctv15.m3u8$LR•IPV4•225『线路99』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://60.10.139.113:8801/hls/65/index.m3u8$LR•IPV4•225『线路100』 +http://207.56.13.146:81/cdnlive/cctv16.m3u8$LR•IPV4•225『线路100』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://60.10.139.113:8801/hls/66/index.m3u8$LR•IPV4•225『线路101』 +http://207.56.13.146:81/cdnlive/cctv17.m3u8$LR•IPV4•225『线路101』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://60.10.139.113:8801/hls/67/index.m3u8$LR•IPV4•225『线路102』 +http://207.56.13.146:81/cdnlive/cctv5p.m3u8$LR•IPV4•225『线路102』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://60.10.139.113:8801/hls/68/index.m3u8$LR•IPV4•225『线路103』 +http://207.56.13.146:81/cdnlive/gfjs.m3u8$LR•IPV4•225『线路103』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://60.10.139.113:8801/hls/69/index.m3u8$LR•IPV4•225『线路104』 +http://207.56.13.146:81/cdnlive/nxss.m3u8$LR•IPV4•225『线路104』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://60.10.139.113:8801/hls/70/index.m3u8$LR•IPV4•225『线路105』 +http://207.56.13.146:81/cdnlive/sjdl.m3u8$LR•IPV4•225『线路105』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://60.10.139.113:8801/hls/79/index.m3u8$LR•IPV4•225『线路106』 +http://207.56.13.146:81/cdnlive/wsjk.m3u8$LR•IPV4•225『线路106』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://60.10.139.113:8801/hls/80/index.m3u8$LR•IPV4•225『线路107』 +http://207.56.13.146:81/cdnlive/ysjp.m3u8$LR•IPV4•225『线路107』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://60.10.139.113:8801/hls/73/index.m3u8$LR•IPV4•225『线路108』 +http://207.56.13.146:81/cdnlive/dyjc.m3u8$LR•IPV4•225『线路108』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/cctv1.m3u8$LR•IPV4•225『线路109』 +http://207.56.13.146:81/cdnlive/hjjc.m3u8$LR•IPV4•225『线路109』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/cctv2.m3u8$LR•IPV4•225『线路110』 +http://207.56.13.146:81/cdnlive/fyjc.m3u8$LR•IPV4•225『线路110』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/cctv3.m3u8$LR•IPV4•225『线路111』 +http://207.56.13.146:81/cdnlive/fyzq.m3u8$LR•IPV4•225『线路111』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/cctv5.m3u8$LR•IPV4•225『线路112』 +http://207.56.13.146:81/cdnlive/fyyy.m3u8$LR•IPV4•225『线路112』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/cctv6.m3u8$LR•IPV4•225『线路113』 +http://207.56.13.146:81/cdnlive/ystq.m3u8$LR•IPV4•225『线路113』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/cctv9.m3u8$LR•IPV4•225『线路114』 +http://207.56.13.146:81/cdnlive/gefwq.m3u8$LR•IPV4•225『线路114』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/cctv10.m3u8$LR•IPV4•225『线路115』 +http://192.151.150.154/live/cctv2hd.m3u8$LR•IPV4•225『线路115』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/cctv12.m3u8$LR•IPV4•225『线路116』 +http://192.151.150.154/live/cctv3hd.m3u8$LR•IPV4•225『线路116』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/cctv13.m3u8$LR•IPV4•225『线路117』 +http://192.151.150.154/live/cctv4hd.m3u8$LR•IPV4•225『线路117』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/cctv14.m3u8$LR•IPV4•225『线路118』 +http://192.151.150.154/live/cctv5hd.m3u8$LR•IPV4•225『线路118』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/cctv15.m3u8$LR•IPV4•225『线路119』 +http://192.151.150.154/live/cctv5p.m3u8$LR•IPV4•225『线路119』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/cctv16.m3u8$LR•IPV4•225『线路120』 +http://192.151.150.154/live/cctv6hd.m3u8$LR•IPV4•225『线路120』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/cctv17.m3u8$LR•IPV4•225『线路121』 +http://192.151.150.154/live/cctv8hd.m3u8$LR•IPV4•225『线路121』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/cctv5p.m3u8$LR•IPV4•225『线路122』 +http://192.151.150.154/live/cctv9hd.m3u8$LR•IPV4•225『线路122』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/gfjs.m3u8$LR•IPV4•225『线路123』 +http://192.151.150.154/live/cctv10hd.m3u8$LR•IPV4•225『线路123』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/nxss.m3u8$LR•IPV4•225『线路124』 +http://192.151.150.154/live/cctv11hd.m3u8$LR•IPV4•225『线路124』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/sjdl.m3u8$LR•IPV4•225『线路125』 +http://192.151.150.154/live/cctv12hd.m3u8$LR•IPV4•225『线路125』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/wsjk.m3u8$LR•IPV4•225『线路126』 +http://192.151.150.154/live/cctv13hd.m3u8$LR•IPV4•225『线路126』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/ysjp.m3u8$LR•IPV4•225『线路127』 +http://192.151.150.154/live/cctv14hd.m3u8$LR•IPV4•225『线路127』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/dyjc.m3u8$LR•IPV4•225『线路128』 +http://192.151.150.154/live/cctv15hd.m3u8$LR•IPV4•225『线路128』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/hjjc.m3u8$LR•IPV4•225『线路129』 +http://192.151.150.154/live/cctv16hd.m3u8$LR•IPV4•225『线路129』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/fyjc.m3u8$LR•IPV4•225『线路130』 +http://192.151.150.154/live/cctv17hd.m3u8$LR•IPV4•225『线路130』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/fyzq.m3u8$LR•IPV4•225『线路131』 +http://192.151.150.154/live/cctv8k.m3u8$LR•IPV4•225『线路131』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/fyyy.m3u8$LR•IPV4•225『线路132』 +http://192.151.150.154/live/dszn.m3u8$LR•IPV4•225『线路132』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/ystq.m3u8$LR•IPV4•225『线路133』 +http://192.151.150.154/live/dyjc.m3u8$LR•IPV4•225『线路133』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/gefwq.m3u8$LR•IPV4•225『线路134』 +http://192.151.150.154/live/fyjc.m3u8$LR•IPV4•225『线路134』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/cctv2hd.m3u8$LR•IPV4•225『线路135』 +http://192.151.150.154/live/fyyy.m3u8$LR•IPV4•225『线路135』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/cctv3hd.m3u8$LR•IPV4•225『线路136』 +http://192.151.150.154/live/fyzq.m3u8$LR•IPV4•225『线路136』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/cctv4hd.m3u8$LR•IPV4•225『线路137』 +http://192.151.150.154/live/gefwq.m3u8$LR•IPV4•225『线路137』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/cctv5hd.m3u8$LR•IPV4•225『线路138』 +http://192.151.150.154/live/gfjs.m3u8$LR•IPV4•225『线路138』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/cctv5p.m3u8$LR•IPV4•225『线路139』 +http://192.151.150.154/live/nxss.m3u8$LR•IPV4•225『线路139』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/cctv6hd.m3u8$LR•IPV4•225『线路140』 +http://192.151.150.154/live/sjdl.m3u8$LR•IPV4•225『线路140』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/cctv8hd.m3u8$LR•IPV4•225『线路141』 +http://192.151.150.154/live/hjjc.m3u8$LR•IPV4•225『线路141』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/cctv9hd.m3u8$LR•IPV4•225『线路142』 +http://192.151.150.154/live/ystq.m3u8$LR•IPV4•225『线路142』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/cctv10hd.m3u8$LR•IPV4•225『线路143』 +http://192.151.150.154/live/ysjp.m3u8$LR•IPV4•225『线路143』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/cctv11hd.m3u8$LR•IPV4•225『线路144』 +http://192.151.150.154/live/wsjk.m3u8$LR•IPV4•225『线路144』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/cctv12hd.m3u8$LR•IPV4•225『线路145』 +http://173.208.212.130:8181/1080p/cctv1.m3u8$LR•IPV4•225『线路145』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/cctv13hd.m3u8$LR•IPV4•225『线路146』 +http://173.208.212.130:8181/1080p/cctv2.m3u8$LR•IPV4•225『线路146』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/cctv14hd.m3u8$LR•IPV4•225『线路147』 +http://173.208.212.130:8181/1080p/cctv3.m3u8$LR•IPV4•225『线路147』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/cctv15hd.m3u8$LR•IPV4•225『线路148』 +http://173.208.212.130:8181/1080p/cctv4.m3u8$LR•IPV4•225『线路148』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/cctv16hd.m3u8$LR•IPV4•225『线路149』 +http://173.208.212.130:8181/1080p/cctv5.m3u8$LR•IPV4•225『线路149』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/cctv17hd.m3u8$LR•IPV4•225『线路150』 +http://173.208.212.130:8181/1080p/cctv7.m3u8$LR•IPV4•225『线路150』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/dszn.m3u8$LR•IPV4•225『线路151』 +http://173.208.212.130:8181/1080p/cctv8.m3u8$LR•IPV4•225『线路151』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/dyjc.m3u8$LR•IPV4•225『线路152』 +http://173.208.212.130:8181/1080p/cctv9.m3u8$LR•IPV4•225『线路152』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/fyjc.m3u8$LR•IPV4•225『线路153』 +http://173.208.212.130:8181/1080p/cctv10.m3u8$LR•IPV4•225『线路153』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/fyyy.m3u8$LR•IPV4•225『线路154』 +http://173.208.212.130:8181/1080p/cctv11.m3u8$LR•IPV4•225『线路154』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/fyzq.m3u8$LR•IPV4•225『线路155』 +http://173.208.212.130:8181/1080p/cctv12.m3u8$LR•IPV4•225『线路155』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/gefwq.m3u8$LR•IPV4•225『线路156』 +http://173.208.212.130:8181/1080p/cctv13.m3u8$LR•IPV4•225『线路156』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/gfjs.m3u8$LR•IPV4•225『线路157』 +http://173.208.212.130:8181/1080p/cctv14.m3u8$LR•IPV4•225『线路157』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/nxss.m3u8$LR•IPV4•225『线路158』 +http://173.208.212.130:8181/1080p/cctv15.m3u8$LR•IPV4•225『线路158』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/sjdl.m3u8$LR•IPV4•225『线路159』 +http://173.208.212.130:8181/1080p/cctv16.m3u8$LR•IPV4•225『线路159』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/hjjc.m3u8$LR•IPV4•225『线路160』 +http://173.208.212.130:8181/1080p/cctv17.m3u8$LR•IPV4•225『线路160』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/ystq.m3u8$LR•IPV4•225『线路161』 +http://173.208.212.130:8181/1080p/cctv5p.m3u8$LR•IPV4•225『线路161』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/ysjp.m3u8$LR•IPV4•225『线路162』 +http://173.208.212.130:8181/720p/cctv1.m3u8$LR•IPV4•225『线路162』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/wsjk.m3u8$LR•IPV4•225『线路163』 +http://173.208.212.130:8181/720p/cctv3.m3u8$LR•IPV4•225『线路163』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/1080p/cctv1.m3u8$LR•IPV4•225『线路164』 +http://173.208.212.130:8181/720p/cctv4.m3u8$LR•IPV4•225『线路164』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/1080p/cctv2.m3u8$LR•IPV4•225『线路165』 +http://173.208.212.130:8181/720p/cctv5.m3u8$LR•IPV4•225『线路165』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/1080p/cctv3.m3u8$LR•IPV4•225『线路166』 +http://173.208.212.130:8181/720p/cctv7.m3u8$LR•IPV4•225『线路166』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/1080p/cctv4.m3u8$LR•IPV4•225『线路167』 +http://173.208.212.130:8181/720p/cctv9.m3u8$LR•IPV4•225『线路167』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/1080p/cctv5.m3u8$LR•IPV4•225『线路168』 +http://173.208.212.130:8181/720p/cctv10.m3u8$LR•IPV4•225『线路168』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/1080p/cctv7.m3u8$LR•IPV4•225『线路169』 +http://173.208.212.130:8181/720p/cctv11.m3u8$LR•IPV4•225『线路169』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/1080p/cctv8.m3u8$LR•IPV4•225『线路170』 +http://173.208.212.130:8181/720p/cctv12.m3u8$LR•IPV4•225『线路170』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/1080p/cctv9.m3u8$LR•IPV4•225『线路171』 +http://173.208.212.130:8181/720p/cctv13.m3u8$LR•IPV4•225『线路171』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/1080p/cctv10.m3u8$LR•IPV4•225『线路172』 +http://173.208.212.130:8181/720p/cctv14.m3u8$LR•IPV4•225『线路172』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/1080p/cctv11.m3u8$LR•IPV4•225『线路173』 +http://173.208.212.130:8181/720p/cctv15.m3u8$LR•IPV4•225『线路173』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/1080p/cctv12.m3u8$LR•IPV4•225『线路174』 +http://173.208.212.130:8181/720p/cctv16.m3u8$LR•IPV4•225『线路174』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/1080p/cctv13.m3u8$LR•IPV4•225『线路175』 +http://173.208.212.130:8181/720p/cctv17.m3u8$LR•IPV4•225『线路175』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/1080p/cctv14.m3u8$LR•IPV4•225『线路176』 +http://173.208.212.130:8181/720p/cctv5p.m3u8$LR•IPV4•225『线路176』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/1080p/cctv15.m3u8$LR•IPV4•225『线路177』 +http://173.208.212.130:8181/720p/cctv8k.m3u8$LR•IPV4•225『线路177』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/1080p/cctv16.m3u8$LR•IPV4•225『线路178』 +http://173.208.212.130:8181/720p/dyjc.m3u8$LR•IPV4•225『线路178』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/1080p/cctv17.m3u8$LR•IPV4•225『线路179』 +http://173.208.212.130:8181/720p/fyjc.m3u8$LR•IPV4•225『线路179』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/1080p/cctv5p.m3u8$LR•IPV4•225『线路180』 +http://173.208.212.130:8181/720p/hjjc.m3u8$LR•IPV4•225『线路180』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/cctv1.m3u8$LR•IPV4•225『线路181』 +http://173.208.212.130:8181/720p/gfjs.m3u8$LR•IPV4•225『线路181』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/cctv3.m3u8$LR•IPV4•225『线路182』 +http://173.208.212.130:8181/720p/nxss.m3u8$LR•IPV4•225『线路182』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/cctv4.m3u8$LR•IPV4•225『线路183』 +http://173.208.212.130:8181/720p/sjdl.m3u8$LR•IPV4•225『线路183』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/cctv5.m3u8$LR•IPV4•225『线路184』 +http://173.208.212.130:8181/720p/wsjk.m3u8$LR•IPV4•225『线路184』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/cctv7.m3u8$LR•IPV4•225『线路185』 +http://173.208.212.130:8181/720p/ysjp.m3u8$LR•IPV4•225『线路185』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/cctv9.m3u8$LR•IPV4•225『线路186』 +http://173.208.212.130:8181/720p/fyyy.m3u8$LR•IPV4•225『线路186』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/cctv10.m3u8$LR•IPV4•225『线路187』 +http://173.208.212.130:8181/720p/ystq.m3u8$LR•IPV4•225『线路187』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/cctv11.m3u8$LR•IPV4•225『线路188』 +http://173.208.212.130:8181/720p/fyzq.m3u8$LR•IPV4•225『线路188』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/cctv12.m3u8$LR•IPV4•225『线路189』 +http://173.208.212.130:8181/720p/gefwq.m3u8$LR•IPV4•225『线路189』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/cctv13.m3u8$LR•IPV4•225『线路190』 +http://204.12.221.218:8181/3m1080p/cctv1.m3u8$LR•IPV4•225『线路190』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/cctv14.m3u8$LR•IPV4•225『线路191』 +http://204.12.221.218:8181/3m1080p/cctv2.m3u8$LR•IPV4•225『线路191』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/cctv15.m3u8$LR•IPV4•225『线路192』 +http://204.12.221.218:8181/3m1080p/cctv3.m3u8$LR•IPV4•225『线路192』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/cctv16.m3u8$LR•IPV4•225『线路193』 +http://204.12.221.218:8181/3m1080p/cctv4.m3u8$LR•IPV4•225『线路193』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/cctv17.m3u8$LR•IPV4•225『线路194』 +http://204.12.221.218:8181/3m1080p/cctv5.m3u8$LR•IPV4•225『线路194』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/cctv5p.m3u8$LR•IPV4•225『线路195』 +http://204.12.221.218:8181/3m1080p/cctv6.m3u8$LR•IPV4•225『线路195』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/cctv8k.m3u8$LR•IPV4•225『线路196』 +http://204.12.221.218:8181/3m1080p/cctv7.m3u8$LR•IPV4•225『线路196』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/dyjc.m3u8$LR•IPV4•225『线路197』 +http://204.12.221.218:8181/3m1080p/cctv8.m3u8$LR•IPV4•225『线路197』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/fyjc.m3u8$LR•IPV4•225『线路198』 +http://204.12.221.218:8181/3m1080p/cctv9.m3u8$LR•IPV4•225『线路198』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/hjjc.m3u8$LR•IPV4•225『线路199』 +http://204.12.221.218:8181/3m1080p/cctv10.m3u8$LR•IPV4•225『线路199』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/gfjs.m3u8$LR•IPV4•225『线路200』 +http://204.12.221.218:8181/3m1080p/cctv11.m3u8$LR•IPV4•225『线路200』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/nxss.m3u8$LR•IPV4•225『线路201』 +http://204.12.221.218:8181/3m1080p/cctv12.m3u8$LR•IPV4•225『线路201』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/sjdl.m3u8$LR•IPV4•225『线路202』 +http://204.12.221.218:8181/3m1080p/cctv13.m3u8$LR•IPV4•225『线路202』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/wsjk.m3u8$LR•IPV4•225『线路203』 +http://204.12.221.218:8181/3m1080p/cctv14.m3u8$LR•IPV4•225『线路203』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/ysjp.m3u8$LR•IPV4•225『线路204』 +http://204.12.221.218:8181/3m1080p/cctv15.m3u8$LR•IPV4•225『线路204』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/fyyy.m3u8$LR•IPV4•225『线路205』 +http://204.12.221.218:8181/3m1080p/cctv16.m3u8$LR•IPV4•225『线路205』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/ystq.m3u8$LR•IPV4•225『线路206』 +http://204.12.221.218:8181/3m1080p/cctv17.m3u8$LR•IPV4•225『线路206』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/fyzq.m3u8$LR•IPV4•225『线路207』 +http://69.30.245.50/live/cctv1.m3u8$LR•IPV4•225『线路207』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/gefwq.m3u8$LR•IPV4•225『线路208』 +http://74.91.26.218:82/live/cctv2hd.m3u8$LR•IPV4•225『线路208』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://204.12.221.218:8181/3m1080p/cctv1.m3u8$LR•IPV4•225『线路209』 +http://74.91.26.218:82/live/cctv3hd.m3u8$LR•IPV4•225『线路209』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://204.12.221.218:8181/3m1080p/cctv2.m3u8$LR•IPV4•225『线路210』 +http://69.30.245.50/live/cctv6.m3u8$LR•IPV4•225『线路210』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://204.12.221.218:8181/3m1080p/cctv3.m3u8$LR•IPV4•225『线路211』 +http://74.91.26.218:82/live/cctv8hd.m3u8$LR•IPV4•225『线路211』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://204.12.221.218:8181/3m1080p/cctv4.m3u8$LR•IPV4•225『线路212』 +http://74.91.26.218:82/live/cctv10hd.m3u8$LR•IPV4•225『线路212』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://204.12.221.218:8181/3m1080p/cctv5.m3u8$LR•IPV4•225『线路213』 +http://74.91.26.218:82/live/cctv11hd.m3u8$LR•IPV4•225『线路213』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://204.12.221.218:8181/3m1080p/cctv6.m3u8$LR•IPV4•225『线路214』 +https://xykt-fix.github.io/play/a02e/index.m3u8$LR•IPV4•225『线路214』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://204.12.221.218:8181/3m1080p/cctv7.m3u8$LR•IPV4•225『线路215』 +http://74.91.26.218:82/live/cctv17hd.m3u8$LR•IPV4•225『线路215』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://204.12.221.218:8181/3m1080p/cctv8.m3u8$LR•IPV4•225『线路216』 +http://74.91.26.218:82/live/cctv1hd.m3u8$LR•IPV4•225『线路216』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://204.12.221.218:8181/3m1080p/cctv9.m3u8$LR•IPV4•225『线路217』 +https://global.cgtn.cicc.media.caton.cloud/master/cgtn-america.m3u8$LR•IPV4•225『线路217』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://204.12.221.218:8181/3m1080p/cctv10.m3u8$LR•IPV4•225『线路218』 +http://74.91.26.218:82/live/cctv4hd.m3u8$LR•IPV4•225『线路218』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://204.12.221.218:8181/3m1080p/cctv11.m3u8$LR•IPV4•225『线路219』 +https://dash2.antik.sk/live/test_cctv_tizen/playlist.m3u8$LR•IPV4•225『线路219』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://204.12.221.218:8181/3m1080p/cctv12.m3u8$LR•IPV4•225『线路220』 +http://go.bkpcp.top/mg/cctv13$LR•IPV4•225『线路220』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://204.12.221.218:8181/3m1080p/cctv13.m3u8$LR•IPV4•225『线路221』 +https://cdn3.163189.xyz/163189/cctv13$LR•IPV4•225『线路221』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://204.12.221.218:8181/3m1080p/cctv14.m3u8$LR•IPV4•225『线路222』 +https://solo.disfrutaenlared.com:1936/redcctv/redcctv/playlist.m3u8$LR•IPV4•225『线路222』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://204.12.221.218:8181/3m1080p/cctv15.m3u8$LR•IPV4•225『线路223』 +http://74.91.26.218:82/live/cctv12hd.m3u8$LR•IPV4•225『线路223』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://204.12.221.218:8181/3m1080p/cctv16.m3u8$LR•IPV4•225『线路224』 +http://38.75.136.137:98/gslb/dsdqpub/gefwq.m3u8?auth=testpub$LR•IPV4•225『线路224』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://204.12.221.218:8181/3m1080p/cctv17.m3u8$LR•IPV4•225『线路225』 +https://xykt-fix.github.io/Y77.m3u8$LR•IPV4•225『线路225』 #EXTINF:-1 tvg-id="周星驰" tvg-name="周星驰" group-title="明星",周星驰 -https://live.ottiptv.cc/huya/11336587$LR•IPV4•2『线路1』 +http://cdn.jdshipin.com:8880/huya.php?id=11342412$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="周星驰" tvg-name="周星驰" group-title="明星",周星驰 -http://cdn.jdshipin.com:8880/huya.php?id=11342412$LR•IPV4•2『线路2』 +https://live.ottiptv.cc/huya/11336587$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="李连杰" tvg-name="李连杰" group-title="明星",李连杰 -https://live.ottiptv.cc/huya/11342390$LR•IPV4•2『线路1』 +http://cdn.jdshipin.com:8880/huya.php?id=11342390$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="李连杰" tvg-name="李连杰" group-title="明星",李连杰 -http://cdn.jdshipin.com:8880/huya.php?id=11342390$LR•IPV4•2『线路2』 +https://live.ottiptv.cc/huya/11342390$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="洪金宝" tvg-name="洪金宝" group-title="明星",洪金宝 https://live.ottiptv.cc/huya/11279251$LR•IPV4 #EXTINF:-1 tvg-id="梁家辉" tvg-name="梁家辉" group-title="明星",梁家辉 -https://live.ottiptv.cc/huya/11342429$LR•IPV4•2『线路1』 +http://live.metshop.top/huya/11342429?cdn=alicdn$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="梁家辉" tvg-name="梁家辉" group-title="明星",梁家辉 -http://live.metshop.top/huya/11342429?cdn=alicdn$LR•IPV4•2『线路2』 +https://live.ottiptv.cc/huya/11342429$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="刘德华" tvg-name="刘德华" group-title="明星",刘德华 -http://epg.112114.xyz/douyu/2516864$LR•IPV4•5『线路1』 +http://cdn.jdshipin.com:8880/huya.php?id=11342424$LR•IPV4•5『线路1』 #EXTINF:-1 tvg-id="刘德华" tvg-name="刘德华" group-title="明星",刘德华 -https://live.ottiptv.cc/huya/11342424$LR•IPV4•5『线路2』 +http://live.metshop.top/huya/11342424?cdn=alicdn$LR•IPV4•5『线路2』 #EXTINF:-1 tvg-id="刘德华" tvg-name="刘德华" group-title="明星",刘德华 -https://k0ub7yffy10yfz.djvod.ndcimgs.com/upic/2023/07/25/08/BMjAyMzA3MjUwODU3MzRfMzYxMjUyNDA3MV8xMDg4MTUzNTczMzFfMF8z_b_Bf67605afd92859a39e607f504f43c9f7.mp4$LR•IPV4•5『线路3』 +https://live.ottiptv.cc/huya/11342424$LR•IPV4•5『线路3』 #EXTINF:-1 tvg-id="刘德华" tvg-name="刘德华" group-title="明星",刘德华 -http://cdn.jdshipin.com:8880/huya.php?id=11342424$LR•IPV4•5『线路4』 +https://k0ub7yffy10yfz.djvod.ndcimgs.com/upic/2023/07/25/08/BMjAyMzA3MjUwODU3MzRfMzYxMjUyNDA3MV8xMDg4MTUzNTczMzFfMF8z_b_Bf67605afd92859a39e607f504f43c9f7.mp4$LR•IPV4•5『线路4』 #EXTINF:-1 tvg-id="刘德华" tvg-name="刘德华" group-title="明星",刘德华 -http://live.metshop.top/huya/11342424?cdn=alicdn$LR•IPV4•5『线路5』 +http://epg.112114.xyz/douyu/2516864$LR•IPV4•5『线路5』 #EXTINF:-1 tvg-id="成龙" tvg-name="成龙" group-title="明星",成龙 -https://live.ottiptv.cc/huya/11342386$LR•IPV4•3『线路1』 +http://cdn.jdshipin.com:8880/huya.php?id=11342386$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="成龙" tvg-name="成龙" group-title="明星",成龙 -https://live.ottiptv.cc/huya/11352946$LR•IPV4•3『线路2』 +https://live.ottiptv.cc/huya/11342386$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="成龙" tvg-name="成龙" group-title="明星",成龙 -http://cdn.jdshipin.com:8880/huya.php?id=11342386$LR•IPV4•3『线路3』 +https://live.ottiptv.cc/huya/11352946$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="王晶" tvg-name="王晶" group-title="明星",王晶 -https://live.ottiptv.cc/huya/11602058$LR•IPV4•2『线路1』 +http://cdn.jdshipin.com:8880/huya.php?id=11602058$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="王晶" tvg-name="王晶" group-title="明星",王晶 -http://cdn.jdshipin.com:8880/huya.php?id=11602058$LR•IPV4•2『线路2』 +https://live.ottiptv.cc/huya/11602058$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="黄渤" tvg-name="黄渤" group-title="明星",黄渤 -https://live.ottiptv.cc/huya/11352876$LR•IPV4•2『线路1』 +http://cdn.jdshipin.com:8880/huya.php?id=11352876$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="黄渤" tvg-name="黄渤" group-title="明星",黄渤 -http://cdn.jdshipin.com:8880/huya.php?id=11352876$LR•IPV4•2『线路2』 +https://live.ottiptv.cc/huya/11352876$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="林正英" tvg-name="林正英" group-title="明星",林正英 -http://epg.112114.xyz/douyu/218859$LR•IPV4•4『线路1』 +http://cdn.jdshipin.com:8880/huya.php?id=11342421$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-id="林正英" tvg-name="林正英" group-title="明星",林正英 http://zzy789.xyz/douyu1.php?id=7356023$LR•IPV4•4『线路2』 #EXTINF:-1 tvg-id="林正英" tvg-name="林正英" group-title="明星",林正英 https://live.ottiptv.cc/huya/11342421$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-id="林正英" tvg-name="林正英" group-title="明星",林正英 -http://cdn.jdshipin.com:8880/huya.php?id=11342421$LR•IPV4•4『线路4』 +http://epg.112114.xyz/douyu/218859$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-id="甄子丹" tvg-name="甄子丹" group-title="明星",甄子丹 -https://live.ottiptv.cc/huya/11352935$LR•IPV4•2『线路1』 +http://cdn.jdshipin.com:8880/huya.php?id=11352935$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="甄子丹" tvg-name="甄子丹" group-title="明星",甄子丹 -http://cdn.jdshipin.com:8880/huya.php?id=11352935$LR•IPV4•2『线路2』 +https://live.ottiptv.cc/huya/11352935$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="灾难片" tvg-name="灾难片" group-title="主题片",灾难片 https://live.ottiptv.cc/huya/23728647$LR•IPV4 #EXTINF:-1 tvg-id="谍战片" tvg-name="谍战片" group-title="主题片",谍战片 -https://live.ottiptv.cc/huya/26355810$LR•IPV4•2『线路1』 +http://live.metshop.top/huya/21059587?cdn=alicdn$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="谍战片" tvg-name="谍战片" group-title="主题片",谍战片 -http://live.metshop.top/huya/21059587?cdn=alicdn$LR•IPV4•2『线路2』 +https://live.ottiptv.cc/huya/26355810$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="战争片" tvg-name="战争片" group-title="主题片",战争片 -https://live.ottiptv.cc/huya/21059618$LR•IPV4•2『线路1』 +http://live.metshop.top/huya/21059574?cdn=alicdn$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="战争片" tvg-name="战争片" group-title="主题片",战争片 -http://live.metshop.top/huya/21059574?cdn=alicdn$LR•IPV4•2『线路2』 +https://live.ottiptv.cc/huya/21059618$LR•IPV4•2『线路2』 #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="纪录片",人与自然 @@ -4630,17 +4632,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$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 @@ -4994,13 +4994,13 @@ http://ali-vl.cztv.com/channels/lantian/channel007/360p.m3u8$LR•IPV4•33『 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 https://ali-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8$LR•IPV4•30『线路1』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -http://ali-xwl.cztv.com/live/channel101080Plxw.m3u8$LR•IPV4•30『线路2』 +http://ali-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8$LR•IPV4•30『线路2』 #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•30『线路3』 +http://ali-xwl.cztv.com/live/channel101080Plxw.m3u8$LR•IPV4•30『线路3』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -https://stream1.freetv.fun/zhe-jiang-guo-ji-9.m3u8$LR•IPV4•30『线路4』 +http://ali-vl.cztv.com/channels/lantian/channel010/360p.m3u8?a=1000&d=4e3d476240659192311f471b7b63aec2&k=d26568bae9dd23dd781c769c148459b2&t=1683180450$LR•IPV4•30『线路4』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -http://ali-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8$LR•IPV4•30『线路5』 +https://stream1.freetv.fun/zhe-jiang-guo-ji-9.m3u8$LR•IPV4•30『线路5』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 https://stream1.freetv.fun/zhe-jiang-guo-ji-11.m3u8$LR•IPV4•30『线路6』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 @@ -5380,9 +5380,9 @@ http://l.cztvcloud.com/channels/lantian/SXsuichang1/720p.m3u8?zzhed$LR•IPV4• #EXTINF:-1 tvg-id="遂昌综合" tvg-name="遂昌综合" group-title="浙江",遂昌综合 http://l.cztvcloud.com/channels/lantian/SXsuichang1/720p.m3u8?zzhed;http://l.cztvcloud.com/channels/lantian/SXsuichang1/720p.m3u8zzhed$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="缙云综合" tvg-name="缙云综合" group-title="浙江",缙云综合 -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『线路1』 #EXTINF:-1 tvg-id="缙云综合" tvg-name="缙云综合" group-title="浙江",缙云综合 -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『线路2』 #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="浙江",缙云新闻综合 @@ -5390,9 +5390,9 @@ http://l.cztvcloud.com/channels/lantian/SXjinyun1/720p.m3u8$LR•IPV4•2『线 #EXTINF:-1 tvg-id="缙云新闻综合" tvg-name="缙云新闻综合" group-title="浙江",缙云新闻综合 http://l.cztvcloud.com/channels/lantian/SXjinyun1/720p.m3u8?fbl=$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="绍兴电视台公共" tvg-name="绍兴电视台公共" group-title="浙江",绍兴电视台公共 -http://live.shaoxing.com.cn/video/s10001-sxtv2/index.m3u8?zzhed$LR•IPV4•2『线路1』 +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?%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『线路2』 +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』 #EXTINF:-1 tvg-id="绍兴公共" tvg-name="绍兴公共" group-title="浙江",绍兴公共 @@ -5518,61 +5518,59 @@ http://ali-m-l.cztv.com/channels/lantian/channel009/1080p.m3u8$LR•IPV4•2『 #EXTINF:-1 tvg-id="中国蓝新闻" tvg-name="中国蓝新闻" group-title="浙江",中国蓝新闻 https://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/sztvgjpd/500/o47pzsvm.m3u8?sign=04712152a9c7592d280cc50a0597352b&t=6a4aff31$LR•IPV4•28『线路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•27『线路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•28『线路2』 +http://112.27.235.94:8000/hls/33/index.m3u8$LR•IPV4•27『线路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•28『线路3』 +http://120.198.95.220:9901/tsfile/live/1048_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•27『线路3』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="广东",深圳卫视 -http://123.163.114.168:9901/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•28『线路4』 +http://123.163.114.168:9901/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•27『线路4』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="广东",深圳卫视 -http://38.75.136.137:98/gslb/dsdqpub/szwshd.m3u8?auth=testpub$LR•IPV4•28『线路5』 +http://38.75.136.137:98/gslb/dsdqpub/szwshd.m3u8?auth=testpub$LR•IPV4•27『线路5』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="广东",深圳卫视 -http://198.204.228.26/live/szwshd.m3u8$LR•IPV4•28『线路6』 +http://198.204.228.26/live/szwshd.m3u8$LR•IPV4•27『线路6』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="广东",深圳卫视 -http://36.136.38.87:9901/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•28『线路7』 +http://36.136.38.87:9901/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•27『线路7』 #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•28『线路8』 +http://153.0.171.163:9901/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•27『线路8』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="广东",深圳卫视 -http://112.27.235.94:8000/hls/33/index.m3u8$LR•IPV4•28『线路9』 +http://23.237.228.134/live6/shenzhen.m3u8$LR•IPV4•27『线路9』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="广东",深圳卫视 -http://23.237.228.134/live6/shenzhen.m3u8$LR•IPV4•28『线路10』 +http://gfr.x3322.net:9901/tsfile/live/1095_1.m3u8$LR•IPV4•27『线路10』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="广东",深圳卫视 -http://gfr.x3322.net:9901/tsfile/live/1095_1.m3u8$LR•IPV4•28『线路11』 +http://api.kkitv.itv888.cn:8080/hls/iftsd32ykm/index.m3u8$LR•IPV4•27『线路11』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="广东",深圳卫视 -http://api.kkitv.itv888.cn:8080/hls/iftsd32ykm/index.m3u8$LR•IPV4•28『线路12』 +https://iptv.catvod.com/catvod.php?id=szws$LR•IPV4•27『线路12』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="广东",深圳卫视 -https://iptv.catvod.com/catvod.php?id=szws$LR•IPV4•28『线路13』 +https://httop.top/ysp-深圳卫视$LR•IPV4•27『线路13』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="广东",深圳卫视 -https://httop.top/ysp-深圳卫视$LR•IPV4•28『线路14』 +http://iptv.huuc.edu.cn/hls/szhd.m3u8$LR•IPV4•27『线路14』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="广东",深圳卫视 -http://iptv.huuc.edu.cn/hls/szhd.m3u8$LR•IPV4•28『线路15』 +http://38.64.72.148:80/hls/modn/list/4007/playlist.m3u8$LR•IPV4•27『线路15』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="广东",深圳卫视 -http://38.64.72.148:80/hls/modn/list/4007/playlist.m3u8$LR•IPV4•28『线路16』 +http://60.10.139.113:8801/hls/24/index.m3u8$LR•IPV4•27『线路16』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="广东",深圳卫视 -http://60.10.139.113:8801/hls/24/index.m3u8$LR•IPV4•28『线路17』 +http://207.56.13.146:81/cdnlive/szws.m3u8$LR•IPV4•27『线路17』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="广东",深圳卫视 -http://207.56.13.146:81/cdnlive/szws.m3u8$LR•IPV4•28『线路18』 +http://192.151.150.154/live/szwshd.m3u8$LR•IPV4•27『线路18』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="广东",深圳卫视 -http://192.151.150.154/live/szwshd.m3u8$LR•IPV4•28『线路19』 +http://173.208.212.130:8181/720p/szws.m3u8$LR•IPV4•27『线路19』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="广东",深圳卫视 -http://173.208.212.130:8181/720p/szws.m3u8$LR•IPV4•28『线路20』 +http://204.12.221.218:8181/3m1080p/szws.m3u8$LR•IPV4•27『线路20』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="广东",深圳卫视 -http://204.12.221.218:8181/3m1080p/szws.m3u8$LR•IPV4•28『线路21』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000024026&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路21』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="广东",深圳卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000024026&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路22』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000007410&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路22』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="广东",深圳卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000007410&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路23』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000009227&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路23』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="广东",深圳卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000009227&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路24』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000011645&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路24』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="广东",深圳卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000011645&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路25』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=5352218613763113657&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路25』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="广东",深圳卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=5352218613763113657&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路26』 +http://111.29.9.38:6610/000000001000/1000000001000009227/index.m3u8?channel-id=ystenlive&Contentid=1000000001000009227&livemode=1&stbId=3$LR•IPV4•27『线路26』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="广东",深圳卫视 -http://111.29.9.38:6610/000000001000/1000000001000009227/index.m3u8?channel-id=ystenlive&Contentid=1000000001000009227&livemode=1&stbId=3$LR•IPV4•28『线路27』 -#EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="广东",深圳卫视 -http://111.29.9.33:6610/000000001000/1000000001000009227/index.m3u8?channel-id=bestzb&Contentid=1000000001000009227&livemode=1&stbId=3$LR•IPV4•28『线路28』 +http://111.29.9.33:6610/000000001000/1000000001000009227/index.m3u8?channel-id=bestzb&Contentid=1000000001000009227&livemode=1&stbId=3$LR•IPV4•27『线路27』 #EXTINF:-1 tvg-id="汕头经济" tvg-name="汕头经济" group-title="广东",汕头经济 http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=9512&tk=a0c4f6cfaba3$LR•IPV4•11『线路1』 #EXTINF:-1 tvg-id="汕头经济" tvg-name="汕头经济" group-title="广东",汕头经济 diff --git a/tvbox/lib/iptv_test.txt b/tvbox/lib/iptv_test.txt index 34a5d507..7ce62b2c 100755 --- a/tvbox/lib/iptv_test.txt +++ b/tvbox/lib/iptv_test.txt @@ -1,32 +1,32 @@ 央视频道,#genre# -CCTV-4K,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4k_mbd.m3u8?auth_key=1783738800-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-a3b6211ac6216364658c2ed2b35f324b&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•5『线路1』 -CCTV-4K,http://198.204.240.250:82/live/cctv4k.m3u8$LR•IPV4•5『线路2』 -CCTV-4K,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4k_mbd.m3u8?auth_key=1783731600-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-04b27a198b2f04c15287bec6e71771b5&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•5『线路3』 -CCTV-4K,http://192.151.150.154/live/cctv4k.m3u8$LR•IPV4•5『线路4』 -CCTV-4K,http://173.208.212.130:8181/720p/cctv4k.m3u8$LR•IPV4•5『线路5』 +CCTV-4K,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4k_mbd.m3u8?auth_key=1783746000-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-9506187e2170a2680534df6e34133fee&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•5『线路1』 +CCTV-4K,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4k_mbd.m3u8?auth_key=1783742400-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-b5fa4a51df4a44a9f4b42b8923a48bc9&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•5『线路2』 +CCTV-4K,http://192.151.150.154/live/cctv4k.m3u8$LR•IPV4•5『线路3』 +CCTV-4K,http://173.208.212.130:8181/720p/cctv4k.m3u8$LR•IPV4•5『线路4』 +CCTV-4K,http://198.204.240.250:82/live/cctv4k.m3u8$LR•IPV4•5『线路5』 浙江频道,#genre# -象山综合,http://l.cztvcloud.com/channels/lantian/SXxiangshan1/720p.m3u8$LR•IPV4•3『线路1』 -象山综合,http://play-sh13.quklive.com/live/1702360350551252.m3u8?auth_key=2037107484-800189c57a5a44d3b823b60cf84f6756-0-a6f6828a62d5c167cff5e68735fa0d39$LR•IPV4•3『线路2』 +象山综合,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』 电影轮播,#genre# -邵氏影院,http://zzy789.xyz/douyu1.php?id=4246519$LR•IPV4•2『线路1』 -邵氏影院,http://www.goodiptv.club/douyu/4246519$LR•IPV4•2『线路2』 +邵氏影院,http://www.goodiptv.club/douyu/4246519$LR•IPV4•2『线路1』 +邵氏影院,http://zzy789.xyz/douyu1.php?id=4246519$LR•IPV4•2『线路2』 重庆频道,#genre# 铜梁综合,http://183.64.174.171:40123/ch1.m3u8?zzhongqd$LR•IPV4 经典小品,#genre# -功夫,https://ukzy.ukubf4.com/20220407/j3bjFWpb/index.m3u8$LR•IPV4•8『线路1』 -功夫,http://43.251.226.89:8080/play/878.m3u8$LR•IPV4•8『线路2』 -功夫,http://43.251.226.89:8080/play/899.m3u8$LR•IPV4•8『线路3』 -功夫,https://vip.ffzy-play2.com/20221124/1291_468b2efb/index.m3u8$LR•IPV4•8『线路4』 -功夫,https://hls-gateway.vpstv.net/streams/476226.m3u8$LR•IPV4•8『线路5』 -功夫,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5897056882324761054&livemode=1&stbId=yu&mode=1&$LR•IPV4•8『线路6』 -功夫,http://cdn.jdshipin.com:8880/huya.php?id=11352941$LR•IPV4•8『线路7』 -功夫,http://live.metshop.top/huya/11352941?cdn=alicdn$LR•IPV4•8『线路8』 +功夫,http://cdn.jdshipin.com:8880/huya.php?id=11352941$LR•IPV4•8『线路1』 +功夫,http://live.metshop.top/huya/11352941?cdn=alicdn$LR•IPV4•8『线路2』 +功夫,https://ukzy.ukubf4.com/20220407/j3bjFWpb/index.m3u8$LR•IPV4•8『线路3』 +功夫,http://43.251.226.89:8080/play/878.m3u8$LR•IPV4•8『线路4』 +功夫,http://43.251.226.89:8080/play/899.m3u8$LR•IPV4•8『线路5』 +功夫,https://vip.ffzy-play2.com/20221124/1291_468b2efb/index.m3u8$LR•IPV4•8『线路6』 +功夫,https://hls-gateway.vpstv.net/streams/476226.m3u8$LR•IPV4•8『线路7』 +功夫,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5897056882324761054&livemode=1&stbId=yu&mode=1&$LR•IPV4•8『线路8』 小草,https://i.uik.cc/view.php/0bb3de0276d838610d458fd3379b33a0.mp4$LR•IPV4 4K频道,#genre# @@ -85,14 +85,14 @@ RTHK32,http://php.jdshipin.com:8880/TVOD/iptv.php?id=rthk32$LR•IPV4 七龙珠,https://live.metshop.top/huya/11601966$LR•IPV4•3『线路1』 七龙珠,http://103.193.151.146/huya.php?id=11601966$LR•IPV4•3『线路2』 七龙珠,https://live.ottiptv.cc/huya/11601966$LR•IPV4•3『线路3』 -哆啦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』 +哆啦A梦,https://live.ottiptv.cc/huya/11601963$LR•IPV4•2『线路1』 +哆啦A梦,http://103.193.151.146/huya.php?id=11601963$LR•IPV4•2『线路2』 蜡笔小新,http://103.193.151.146/huya.php?id=11352970$LR•IPV4•2『线路1』 蜡笔小新,https://live.ottiptv.cc/huya/11352970$LR•IPV4•2『线路2』 -喜羊羊与灰太狼,http://103.193.151.146/huya.php?id=23865080$LR•IPV4•2『线路1』 -喜羊羊与灰太狼,https://live.ottiptv.cc/huya/23865080$LR•IPV4•2『线路2』 -精灵宝可梦,http://103.193.151.146/huya.php?id=23749096$LR•IPV4•2『线路1』 -精灵宝可梦,https://live.ottiptv.cc/huya/23749096$LR•IPV4•2『线路2』 +喜羊羊与灰太狼,https://live.ottiptv.cc/huya/23865080$LR•IPV4•2『线路1』 +喜羊羊与灰太狼,http://103.193.151.146/huya.php?id=23865080$LR•IPV4•2『线路2』 +精灵宝可梦,https://live.ottiptv.cc/huya/23749096$LR•IPV4•2『线路1』 +精灵宝可梦,http://103.193.151.146/huya.php?id=23749096$LR•IPV4•2『线路2』 名侦探柯南,https://live.ottiptv.cc/huya/30080236$LR•IPV4 航海王,http://103.193.151.146/huya.php?id=16913382$LR•IPV4 @@ -104,13 +104,13 @@ RTHK32,http://php.jdshipin.com:8880/TVOD/iptv.php?id=rthk32$LR•IPV4 冰冰影剧,http://www.goodiptv.club/douyu/74374$LR•IPV4 刀刀影院,http://zzy789.xyz/douyu1.php?id=747764$LR•IPV4•2『线路1』 刀刀影院,http://huanqiuzhibo.cn/manifest/douyu.php?id=747764$LR•IPV4•2『线路2』 -华语影视,http://zzy789.xyz/douyu1.php?id=3928$LR•IPV4•2『线路1』 -华语影视,http://www.goodiptv.club/douyu/3928$LR•IPV4•2『线路2』 +华语影视,http://www.goodiptv.club/douyu/3928$LR•IPV4•2『线路1』 +华语影视,http://zzy789.xyz/douyu1.php?id=3928$LR•IPV4•2『线路2』 斗鱼港剧,http://www.goodiptv.club/douyu/5061550$LR•IPV4 橙记港剧,http://www.goodiptv.club/douyu/4549169$LR•IPV4•2『线路1』 橙记港剧,http://huanqiuzhibo.cn/manifest/douyu.php?id=4549169$LR•IPV4•2『线路2』 -经典剧集,http://zzy789.xyz/douyu1.php?id=6863367$LR•IPV4•2『线路1』 -经典剧集,http://www.goodiptv.club/douyu/6863367$LR•IPV4•2『线路2』 +经典剧集,http://www.goodiptv.club/douyu/6863367$LR•IPV4•2『线路1』 +经典剧集,http://zzy789.xyz/douyu1.php?id=6863367$LR•IPV4•2『线路2』 热门港剧,http://zzy789.xyz/douyu1.php?id=5522351$LR•IPV4•2『线路1』 热门港剧,http://huanqiuzhibo.cn/manifest/douyu.php?id=5522351$LR•IPV4•2『线路2』 贝爷求生,http://www.goodiptv.club/douyu/9661369$LR•IPV4•6『线路1』 @@ -123,7 +123,8 @@ RTHK32,http://php.jdshipin.com:8880/TVOD/iptv.php?id=rthk32$LR•IPV4 电视剧频道,#genre# 少年包青天第一部,https://live.ottiptv.cc/yy/1356043677$LR•IPV4 少年包青天第三部,https://live.ottiptv.cc/yy/1382736814$LR•IPV4 -爱情公寓,https://goodiptv.club/douyu/4105989$LR•IPV4 +爱情公寓,https://live.ottiptv.cc/huya/11336726$LR•IPV4•2『线路1』 +爱情公寓,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』 @@ -140,6 +141,7 @@ RTHK32,http://php.jdshipin.com:8880/TVOD/iptv.php?id=rthk32$LR•IPV4 伪装者,https://live.ottiptv.cc/yy/1354936244$LR•IPV4 仙剑奇侠传,https://live.ottiptv.cc/yy/1382749903$LR•IPV4 我是特种兵之利刃出鞘,https://live.ottiptv.cc/yy/37999586$LR•IPV4 +狂飙,https://live.ottiptv.cc/yy/1355142167$LR•IPV4 乌龙闯情关,https://live.ottiptv.cc/huya/26355767$LR•IPV4 柳舟计,https://live.ottiptv.cc/huya/23860039$LR•IPV4 流水迢迢,https://live.ottiptv.cc/huya/23865036$LR•IPV4 @@ -194,11 +196,11 @@ RTHK32,http://php.jdshipin.com:8880/TVOD/iptv.php?id=rthk32$LR•IPV4 浙江影视,https://ali-m-l.cztv.com/channels/lantian/channel005/1080p.m3u8?$LR•IPV4•2『线路2』 之江记录,http://ali-m-l.cztv.com/channels/lantian/channel012/1080p.m3u8?$LR•IPV4•2『线路1』 之江记录,https://ali-m-l.cztv.com/channels/lantian/channel012/1080p.m3u8$LR•IPV4•2『线路2』 -钱江都市,https://stream1.freetv.fun/qian-jiang-du-shi-1.m3u8$LR•IPV4•5『线路1』 -钱江都市,http://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8?zzhed$LR•IPV4•5『线路2』 -钱江都市,https://stream1.freetv.fun/qian-jiang-du-shi-2.m3u8$LR•IPV4•5『线路3』 -钱江都市,https://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8?$LR•IPV4•5『线路4』 -钱江都市,https://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『线路1』 +钱江都市,https://stream1.freetv.fun/qian-jiang-du-shi-1.m3u8$LR•IPV4•5『线路2』 +钱江都市,http://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8?zzhed$LR•IPV4•5『线路3』 +钱江都市,https://stream1.freetv.fun/qian-jiang-du-shi-2.m3u8$LR•IPV4•5『线路4』 +钱江都市,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://t.freetv.fun/live/shang-yu-wen-hua-ying-yuan.m3u8$LR•IPV4•12『线路2』 @@ -227,9 +229,9 @@ YMG未来,http://l.cztvcloud.com/channels/lantian/SXyuhang3/720p.m3u8?$LR•IPV4 兰溪新闻,https://stream1.freetv.fun/lan-xi-xin-wen-zong-he-3.m3u8$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.m3u8zzhed$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.m3u8zzhed$LR•IPV4•5『线路4』 +姚江文化,https://l.cztvcloud.com/channels/lantian/SXyuyao2/720p.m3u8$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』 @@ -429,18 +431,18 @@ YMG未来,http://l.cztvcloud.com/channels/lantian/SXyuhang3/720p.m3u8?$LR•IPV4 武汉六台外语,http://stream.appwuhan.com/6tzb/sd/live.m3u8$LR•IPV4 [湖北]潜江综合,http://hbqjdb.chinashadt.com:2035/live/3.stream/playlist.m3u8$LR•IPV4 荆门科教文旅,http://stream.jmtv.com.cn/ggsh/sd/live.m3u8$LR•IPV4 -荆门新闻,https://t.freetv.fun/live/jing-men-xin-wen-zong-he.m3u8$LR•IPV4•14『线路1』 -荆门新闻,https://stream1.freetv.fun/jing-men-xin-wen-zong-he-4.m3u8$LR•IPV4•14『线路2』 -荆门新闻,http://stream.jmtv.com.cn/xwzh/sd/live.m3u8?zhubd$LR•IPV4•14『线路3』 -荆门新闻,https://t.freetv.fun/live/jing-men-xin-wen-zong-he-1-1.m3u8$LR•IPV4•14『线路4』 -荆门新闻,https://stream.jmtv.com.cn/xwzh/playlist.m3u8?_upt=3e28e7271664278691$LR•IPV4•14『线路5』 -荆门新闻,http://stream.jmtv.com.cn/xwzh/sd/live.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•14『线路6』 -荆门新闻,https://stream1.freetv.fun/jing-men-xin-wen-zong-he-6.m3u8$LR•IPV4•14『线路7』 -荆门新闻,https://stream1.freetv.fun/jing-men-xin-wen-zong-he-5.m3u8$LR•IPV4•14『线路8』 -荆门新闻,https://stream1.freetv.fun/jing-men-xin-wen-zong-he-3.m3u8$LR•IPV4•14『线路9』 -荆门新闻,https://stream1.freetv.fun/jing-men-xin-wen-zong-he-1.m3u8$LR•IPV4•14『线路10』 -荆门新闻,https://stream1.freetv.fun/jing-men-xin-wen-zong-he-2.m3u8$LR•IPV4•14『线路11』 -荆门新闻,http://stream.jmtv.com.cn/xwzh/sd/live.m3u8$LR•IPV4•14『线路12』 +荆门新闻,http://stream.jmtv.com.cn/xwzh/sd/live.m3u8$LR•IPV4•14『线路1』 +荆门新闻,https://t.freetv.fun/live/jing-men-xin-wen-zong-he.m3u8$LR•IPV4•14『线路2』 +荆门新闻,https://stream1.freetv.fun/jing-men-xin-wen-zong-he-4.m3u8$LR•IPV4•14『线路3』 +荆门新闻,http://stream.jmtv.com.cn/xwzh/sd/live.m3u8?zhubd$LR•IPV4•14『线路4』 +荆门新闻,https://t.freetv.fun/live/jing-men-xin-wen-zong-he-1-1.m3u8$LR•IPV4•14『线路5』 +荆门新闻,https://stream.jmtv.com.cn/xwzh/playlist.m3u8?_upt=3e28e7271664278691$LR•IPV4•14『线路6』 +荆门新闻,http://stream.jmtv.com.cn/xwzh/sd/live.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•14『线路7』 +荆门新闻,https://stream1.freetv.fun/jing-men-xin-wen-zong-he-6.m3u8$LR•IPV4•14『线路8』 +荆门新闻,https://stream1.freetv.fun/jing-men-xin-wen-zong-he-5.m3u8$LR•IPV4•14『线路9』 +荆门新闻,https://stream1.freetv.fun/jing-men-xin-wen-zong-he-3.m3u8$LR•IPV4•14『线路10』 +荆门新闻,https://stream1.freetv.fun/jing-men-xin-wen-zong-he-1.m3u8$LR•IPV4•14『线路11』 +荆门新闻,https://stream1.freetv.fun/jing-men-xin-wen-zong-he-2.m3u8$LR•IPV4•14『线路12』 荆门新闻,https://t.freetv.fun/live/jing-men-xin-wen-zong-he-5.m3u8$LR•IPV4•14『线路13』 荆门新闻,https://t.freetv.fun/live/jing-men-xin-wen-zong-he-2.m3u8$LR•IPV4•14『线路14』 @@ -488,56 +490,56 @@ Now星影,p3p://167.114.175.6:55331/65bf5e010005226704b84f4f048a4148$LR•IPV4 澳门莲花,http://push.cdn1.hls123.de:8080/streams/8nsrl4s4evv/index.m3u8$LR•IPV4•3『线路3』 香港卫视,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•17『线路1』 -凤凰卫视中文台,http://223.110.245.139/ott.js.chinamobile.com/PLTV/3/224/3221226922/index.m3u8$LR•IPV4•17『线路2』 -凤凰卫视中文台,http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•17『线路3』 -凤凰卫视中文台,http://218.206.193.218:8888/hls/66/index.m3u8$LR•IPV4•17『线路4』 -凤凰卫视中文台,https://k44991.kylintv.tv/live/pxna_iphone.m3u8$LR•IPV4•17『线路5』 -凤凰卫视中文台,http://tianhewan.top/ZIPP.php?url=http://211.72.65.236:8577/.m3u8$LR•IPV4•17『线路6』 -凤凰卫视中文台,http://146.56.153.245:20121/bysid/258$LR•IPV4•17『线路7』 -凤凰卫视中文台,http://e1.woc.iiiya.cn:8888/rtp/239.61.2.184:9092$LR•IPV4•17『线路8』 -凤凰卫视中文台,http://php.jdshipin.com/TVOD/iptv.php?id=fhzw$LR•IPV4•17『线路9』 -凤凰卫视中文台,http://122.117.71.103:8574/http/61.222.53.250:8078/hls/21/80/phoenixch.m3u8$LR•IPV4•17『线路10』 -凤凰卫视中文台,http://148.135.93.213:81/phenix.php?id=fhzw$LR•IPV4•17『线路11』 -凤凰卫视中文台,http://211.75.171.121:8577/http/61.67.128.137:8078/hls/21/80/phoenixch.m3u8$LR•IPV4•17『线路12』 -凤凰卫视中文台,http://43.251.226.89:8080/play/888.m3u8$LR•IPV4•17『线路13』 -凤凰卫视中文台,http://push.cdn1.hls123.de:8080/streams/a4y2t99pzyi/index.m3u8$LR•IPV4•17『线路14』 -凤凰卫视中文台,https://flv-play.clouda.com/live/fhzw-6zSJoUiicyU3ovDlMvflVRLQlVCMRCARnyJ0NPlfcs3eWJNeJSDRMAz4VgeQV3Diy6.flv$LR•IPV4•17『线路15』 -凤凰卫视中文台,http://r.jdshipin.com/cCCzW$LR•IPV4•17『线路16』 -凤凰卫视中文台,http://cdn6.163189.xyz/163189/fhzw$LR•IPV4•17『线路17』 +凤凰卫视中文台,http://r.jdshipin.com/cCCzW$LR•IPV4•17『线路2』 +凤凰卫视中文台,http://cdn6.163189.xyz/163189/fhzw$LR•IPV4•17『线路3』 +凤凰卫视中文台,http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•17『线路4』 +凤凰卫视中文台,http://218.206.193.218:8888/hls/66/index.m3u8$LR•IPV4•17『线路5』 +凤凰卫视中文台,https://k44991.kylintv.tv/live/pxna_iphone.m3u8$LR•IPV4•17『线路6』 +凤凰卫视中文台,http://tianhewan.top/ZIPP.php?url=http://211.72.65.236:8577/.m3u8$LR•IPV4•17『线路7』 +凤凰卫视中文台,http://146.56.153.245:20121/bysid/258$LR•IPV4•17『线路8』 +凤凰卫视中文台,http://e1.woc.iiiya.cn:8888/rtp/239.61.2.184:9092$LR•IPV4•17『线路9』 +凤凰卫视中文台,http://php.jdshipin.com/TVOD/iptv.php?id=fhzw$LR•IPV4•17『线路10』 +凤凰卫视中文台,http://122.117.71.103:8574/http/61.222.53.250:8078/hls/21/80/phoenixch.m3u8$LR•IPV4•17『线路11』 +凤凰卫视中文台,http://148.135.93.213:81/phenix.php?id=fhzw$LR•IPV4•17『线路12』 +凤凰卫视中文台,http://211.75.171.121:8577/http/61.67.128.137:8078/hls/21/80/phoenixch.m3u8$LR•IPV4•17『线路13』 +凤凰卫视中文台,http://43.251.226.89:8080/play/888.m3u8$LR•IPV4•17『线路14』 +凤凰卫视中文台,http://push.cdn1.hls123.de:8080/streams/a4y2t99pzyi/index.m3u8$LR•IPV4•17『线路15』 +凤凰卫视中文台,https://flv-play.clouda.com/live/fhzw-6zSJoUiicyU3ovDlMvflVRLQlVCMRCARnyJ0NPlfcs3eWJNeJSDRMAz4VgeQV3Diy6.flv$LR•IPV4•17『线路16』 +凤凰卫视中文台,http://223.110.245.139/ott.js.chinamobile.com/PLTV/3/224/3221226922/index.m3u8$LR•IPV4•17『线路17』 凤凰卫视资讯台,http://api.mg.itv888.cn:8080/hls/11ef1dc70d8/index.m3u8$LR•IPV4•18『线路1』 -凤凰卫视资讯台,http://223.110.245.167/ott.js.chinamobile.com/PLTV/3/224/3221226923/index.m3u8$LR•IPV4•18『线路2』 -凤凰卫视资讯台,http://221.7.175.154:8445/tsfile/live/1021_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路3』 -凤凰卫视资讯台,http://zmgd.zyrnet.com:8888/hls/109/index.m3u8$LR•IPV4•18『线路4』 -凤凰卫视资讯台,http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•18『线路5』 -凤凰卫视资讯台,http://php.jdshipin.com/TVOD/iptv.php?id=fhzx$LR•IPV4•18『线路6』 -凤凰卫视资讯台,http://122.117.71.103:8573/http/61.222.53.250:8078/hls/20/80/phoenixif.m3u8$LR•IPV4•18『线路7』 -凤凰卫视资讯台,http://e1.woc.iiiya.cn:8888/rtp/239.61.2.183:9086$LR•IPV4•18『线路8』 -凤凰卫视资讯台,http://146.56.153.245:20121/bysid/257$LR•IPV4•18『线路9』 -凤凰卫视资讯台,http://tianhewan.top/ZIPP.php?url=http://211.72.65.236:8576/.m3u8$LR•IPV4•18『线路10』 -凤凰卫视资讯台,http://148.135.93.213:81/phenix.php?id=fhzx$LR•IPV4•18『线路11』 -凤凰卫视资讯台,http://211.75.171.121:8576/http/61.67.128.137:8078/hls/20/80/phoenixif.m3u8$LR•IPV4•18『线路12』 -凤凰卫视资讯台,http://43.251.226.89:8080/play/889.m3u8$LR•IPV4•18『线路13』 -凤凰卫视资讯台,p3p://167.114.175.6:55331/5fffbf860003807cedf4e1016c3c3ed2$LR•IPV4•18『线路14』 -凤凰卫视资讯台,http://push.cdn1.hls123.de:8080/streams/0u0qd5ovqkg/index.m3u8$LR•IPV4•18『线路15』 -凤凰卫视资讯台,https://flv-play.clouda.com/live/fhzx-gCDIOsNFJ7DX5OI8hsebeQNHPm66LAMZgmIcGYcfIIEzXWKCVG2cQgbZdRq2aUVqJR.flv$LR•IPV4•18『线路16』 -凤凰卫视资讯台,http://r.jdshipin.com/0Rp07$LR•IPV4•18『线路17』 -凤凰卫视资讯台,http://cdn6.163189.xyz/163189/fhzx$LR•IPV4•18『线路18』 -凤凰卫视香港台,http://223.110.245.136/PLTV/3/224/3221226975/index.m3u8$LR•IPV4•12『线路1』 -凤凰卫视香港台,http://122.152.202.33/s/81a8a44f/index.m3u8?id=fhhk$LR•IPV4•12『线路2』 -凤凰卫视香港台,https://epg.pw/stream/8770e89223a086eb1b8a0c931e42296d772a8069ad3eb72540e0c434e7cb3e93.m3u8$LR•IPV4•12『线路3』 -凤凰卫视香港台,https://epg.pw/stream/5f16dc7fc8aaaed3205516c63e4a8c24bca9dbba1181684244729cf574505b0e.m3u8$LR•IPV4•12『线路4』 -凤凰卫视香港台,http://148.135.93.213:81/phenix.php?id=fhhk$LR•IPV4•12『线路5』 -凤凰卫视香港台,http://43.251.226.89:8080/play/890.m3u8$LR•IPV4•12『线路6』 -凤凰卫视香港台,p3p://167.114.175.6:55331/5fe0b82c000cac9774c17f262e43314d$LR•IPV4•12『线路7』 -凤凰卫视香港台,http://push.cdn1.hls123.de:8080/streams/898y722sqjr/index.m3u8$LR•IPV4•12『线路8』 -凤凰卫视香港台,https://flv-play.clouda.com/live/fhxg-s6ZqbJPCkU54D3ojHvlJm4el9wbnzF1VJ6J0oPumsZIfuPtYq1enmIhy43vWcUaaPf4U2xRRWNGOXX5BiusMXxxQ.flv$LR•IPV4•12『线路9』 -凤凰卫视香港台,http://r.jdshipin.com/yDoTN$LR•IPV4•12『线路10』 -凤凰卫视香港台,http://php.jdshipin.com/TVOD/iptv.php?id=fhhk$LR•IPV4•12『线路11』 -凤凰卫视香港台,http://cdn6.163189.xyz/163189/fhhk$LR•IPV4•12『线路12』 -台视新闻,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』 -台视新闻,http://38.64.72.148/hls/modn/list/4013/chunklist1.m3u8$LR•IPV4•4『线路4』 +凤凰卫视资讯台,http://r.jdshipin.com/0Rp07$LR•IPV4•18『线路2』 +凤凰卫视资讯台,http://php.jdshipin.com/TVOD/iptv.php?id=fhzx$LR•IPV4•18『线路3』 +凤凰卫视资讯台,http://cdn6.163189.xyz/163189/fhzx$LR•IPV4•18『线路4』 +凤凰卫视资讯台,http://221.7.175.154:8445/tsfile/live/1021_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路5』 +凤凰卫视资讯台,http://zmgd.zyrnet.com:8888/hls/109/index.m3u8$LR•IPV4•18『线路6』 +凤凰卫视资讯台,http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•18『线路7』 +凤凰卫视资讯台,http://122.117.71.103:8573/http/61.222.53.250:8078/hls/20/80/phoenixif.m3u8$LR•IPV4•18『线路8』 +凤凰卫视资讯台,http://e1.woc.iiiya.cn:8888/rtp/239.61.2.183:9086$LR•IPV4•18『线路9』 +凤凰卫视资讯台,http://146.56.153.245:20121/bysid/257$LR•IPV4•18『线路10』 +凤凰卫视资讯台,http://tianhewan.top/ZIPP.php?url=http://211.72.65.236:8576/.m3u8$LR•IPV4•18『线路11』 +凤凰卫视资讯台,http://148.135.93.213:81/phenix.php?id=fhzx$LR•IPV4•18『线路12』 +凤凰卫视资讯台,http://211.75.171.121:8576/http/61.67.128.137:8078/hls/20/80/phoenixif.m3u8$LR•IPV4•18『线路13』 +凤凰卫视资讯台,http://43.251.226.89:8080/play/889.m3u8$LR•IPV4•18『线路14』 +凤凰卫视资讯台,p3p://167.114.175.6:55331/5fffbf860003807cedf4e1016c3c3ed2$LR•IPV4•18『线路15』 +凤凰卫视资讯台,http://push.cdn1.hls123.de:8080/streams/0u0qd5ovqkg/index.m3u8$LR•IPV4•18『线路16』 +凤凰卫视资讯台,https://flv-play.clouda.com/live/fhzx-gCDIOsNFJ7DX5OI8hsebeQNHPm66LAMZgmIcGYcfIIEzXWKCVG2cQgbZdRq2aUVqJR.flv$LR•IPV4•18『线路17』 +凤凰卫视资讯台,http://223.110.245.167/ott.js.chinamobile.com/PLTV/3/224/3221226923/index.m3u8$LR•IPV4•18『线路18』 +凤凰卫视香港台,http://r.jdshipin.com/yDoTN$LR•IPV4•12『线路1』 +凤凰卫视香港台,http://php.jdshipin.com/TVOD/iptv.php?id=fhhk$LR•IPV4•12『线路2』 +凤凰卫视香港台,http://cdn6.163189.xyz/163189/fhhk$LR•IPV4•12『线路3』 +凤凰卫视香港台,http://122.152.202.33/s/81a8a44f/index.m3u8?id=fhhk$LR•IPV4•12『线路4』 +凤凰卫视香港台,https://epg.pw/stream/8770e89223a086eb1b8a0c931e42296d772a8069ad3eb72540e0c434e7cb3e93.m3u8$LR•IPV4•12『线路5』 +凤凰卫视香港台,https://epg.pw/stream/5f16dc7fc8aaaed3205516c63e4a8c24bca9dbba1181684244729cf574505b0e.m3u8$LR•IPV4•12『线路6』 +凤凰卫视香港台,http://148.135.93.213:81/phenix.php?id=fhhk$LR•IPV4•12『线路7』 +凤凰卫视香港台,http://43.251.226.89:8080/play/890.m3u8$LR•IPV4•12『线路8』 +凤凰卫视香港台,p3p://167.114.175.6:55331/5fe0b82c000cac9774c17f262e43314d$LR•IPV4•12『线路9』 +凤凰卫视香港台,http://push.cdn1.hls123.de:8080/streams/898y722sqjr/index.m3u8$LR•IPV4•12『线路10』 +凤凰卫视香港台,https://flv-play.clouda.com/live/fhxg-s6ZqbJPCkU54D3ojHvlJm4el9wbnzF1VJ6J0oPumsZIfuPtYq1enmIhy43vWcUaaPf4U2xRRWNGOXX5BiusMXxxQ.flv$LR•IPV4•12『线路11』 +凤凰卫视香港台,http://223.110.245.136/PLTV/3/224/3221226975/index.m3u8$LR•IPV4•12『线路12』 +台视新闻,http://38.64.72.148/hls/modn/list/4013/chunklist1.m3u8$LR•IPV4•4『线路1』 +台视新闻,http://38.64.72.148:80/hls/modn/list/4013/chunklist0.m3u8$LR•IPV4•4『线路2』 +台视新闻,http://38.64.72.148:80/hls/modn/list/4013/chunklist1.m3u8$LR•IPV4•4『线路3』 +台视新闻,http://38.64.72.148/hls/modn/list/4013/chunklist0.m3u8$LR•IPV4•4『线路4』 ☘️重庆频道,#genre# 万州综合,http://123.146.162.24:8013/tslslive/noEX9SG/hls/live_sd.m3u8$LR•IPV4 @@ -547,33 +549,32 @@ Now星影,p3p://167.114.175.6:55331/65bf5e010005226704b84f4f048a4148$LR•IPV4 来宾综合,http://zb.gxlbamc.com:1935/live/lbzh.stream/playlist.m3u8$LR•IPV4 ☘️天津频道,#genre# -天津,https://piccpndks.v.kcdnvip.com/audio/tianjin_2/index.m3u8$LR•IPV4•27『线路1』 -天津,http://39.134.115.163:8080/PLTV/88888910/224/3221225698/index.m3u8$LR•IPV4•27『线路2』 -天津,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•27『线路3』 -天津,http://204.12.221.218:8181/3m1080p/tjws.m3u8$LR•IPV4•27『线路4』 -天津,http://173.208.212.130:8181/720p/tjws.m3u8$LR•IPV4•27『线路5』 -天津,http://120.198.95.220:9901/tsfile/live/1067_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•27『线路6』 -天津,http://36.136.38.87:9901/tsfile/live/0135_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•27『线路7』 -天津,http://112.27.235.94:8000/hls/42/index.m3u8$LR•IPV4•27『线路8』 -天津,http://38.75.136.137:98/gslb/dsdqpub/tjwshd.m3u8?auth=testpub$LR•IPV4•27『线路9』 -天津,http://23.237.228.134/live8/tianjing.m3u8$LR•IPV4•27『线路10』 -天津,http://gfr.x3322.net:9901/tsfile/live/1090_1.m3u8$LR•IPV4•27『线路11』 -天津,http://api.kkitv.itv888.cn:8080/hls/z2lkdkrb4w/index.m3u8$LR•IPV4•27『线路12』 -天津,https://iptv.catvod.com/catvod.php?id=tjws$LR•IPV4•27『线路13』 -天津,https://httop.top/ysp-天津卫视$LR•IPV4•27『线路14』 -天津,http://iptv.huuc.edu.cn/hls/tjhd.m3u8$LR•IPV4•27『线路15』 -天津,http://153.0.171.163:9901/tsfile/live/0135_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•27『线路16』 -天津,http://60.10.139.113:8801/hls/23/index.m3u8$LR•IPV4•27『线路17』 -天津,http://207.56.13.146:81/cdnlive/tjws.m3u8$LR•IPV4•27『线路18』 -天津,http://192.151.150.154/live/tjwshd.m3u8$LR•IPV4•27『线路19』 -天津,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000001000030788&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路20』 -天津,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000006827&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路21』 -天津,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000000831&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路22』 -天津,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000003475&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路23』 -天津,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265026&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路24』 -天津,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=6707942579111517572&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路25』 -天津,http://111.29.9.38:6610/000000001000/5000000004000006827/index.m3u8?channel-id=bestzb&Contentid=5000000004000006827&livemode=1&stbId=3$LR•IPV4•27『线路26』 -天津,http://111.29.9.33:6610/000000001000/1000000001000000831/index.m3u8?channel-id=bestzb&Contentid=1000000001000000831&livemode=1&stbId=3$LR•IPV4•27『线路27』 +天津,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•26『线路1』 +天津,http://112.27.235.94:8000/hls/42/index.m3u8$LR•IPV4•26『线路2』 +天津,http://204.12.221.218:8181/3m1080p/tjws.m3u8$LR•IPV4•26『线路3』 +天津,http://173.208.212.130:8181/720p/tjws.m3u8$LR•IPV4•26『线路4』 +天津,http://120.198.95.220:9901/tsfile/live/1067_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•26『线路5』 +天津,http://36.136.38.87:9901/tsfile/live/0135_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路6』 +天津,http://38.75.136.137:98/gslb/dsdqpub/tjwshd.m3u8?auth=testpub$LR•IPV4•26『线路7』 +天津,http://23.237.228.134/live8/tianjing.m3u8$LR•IPV4•26『线路8』 +天津,http://gfr.x3322.net:9901/tsfile/live/1090_1.m3u8$LR•IPV4•26『线路9』 +天津,http://api.kkitv.itv888.cn:8080/hls/z2lkdkrb4w/index.m3u8$LR•IPV4•26『线路10』 +天津,https://iptv.catvod.com/catvod.php?id=tjws$LR•IPV4•26『线路11』 +天津,https://httop.top/ysp-天津卫视$LR•IPV4•26『线路12』 +天津,http://iptv.huuc.edu.cn/hls/tjhd.m3u8$LR•IPV4•26『线路13』 +天津,http://153.0.171.163:9901/tsfile/live/0135_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路14』 +天津,http://60.10.139.113:8801/hls/23/index.m3u8$LR•IPV4•26『线路15』 +天津,http://207.56.13.146:81/cdnlive/tjws.m3u8$LR•IPV4•26『线路16』 +天津,http://192.151.150.154/live/tjwshd.m3u8$LR•IPV4•26『线路17』 +天津,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000001000030788&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路18』 +天津,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000006827&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路19』 +天津,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000000831&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路20』 +天津,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000003475&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路21』 +天津,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265026&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路22』 +天津,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=6707942579111517572&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路23』 +天津,http://111.29.9.38:6610/000000001000/5000000004000006827/index.m3u8?channel-id=bestzb&Contentid=5000000004000006827&livemode=1&stbId=3$LR•IPV4•26『线路24』 +天津,http://111.29.9.33:6610/000000001000/1000000001000000831/index.m3u8?channel-id=bestzb&Contentid=1000000001000000831&livemode=1&stbId=3$LR•IPV4•26『线路25』 +天津,http://39.134.115.163:8080/PLTV/88888910/224/3221225698/index.m3u8$LR•IPV4•26『线路26』 ☘️甘肃频道,#genre# 西峰综合,https://play.kankanlive.com/live/1683944827526991.m3u8$LR•IPV4 @@ -639,8 +640,8 @@ CN卡通,p3p://167.114.175.6:55331/648353bb0006d4d93236315a766b692a$LR•IPV4• CN卡通,http://23.237.104.106:8080/USA_CARTOON_NETWORK/tracks-v1a1/mono.m3u8$LR•IPV4•4『线路4』 火影忍者,https://live.ottiptv.cc/huya/25567648$LR•IPV4•2『线路1』 火影忍者,https://live.ottiptv.cc/huya/29465866$LR•IPV4•2『线路2』 -海绵宝宝,https://live.ottiptv.cc/huya/11352919$LR•IPV4•2『线路1』 -海绵宝宝,https://live.metshop.top/douyu/3949681$LR•IPV4•2『线路2』 +海绵宝宝,https://live.metshop.top/douyu/3949681$LR•IPV4•2『线路1』 +海绵宝宝,https://live.ottiptv.cc/huya/11352919$LR•IPV4•2『线路2』 🎵音乐频道,#genre# 音乐现场,https://satellitepull.cnr.cn/live/wx32nmgyygb/playlist.m3u8$LR•IPV4 @@ -730,49 +731,49 @@ GS Shop,https://gstv-gsshop.gsshop.com/gsshop_hd/gsshop_hd.stream/playlist.m3u8$ KCTV 광주,http://119.77.96.184:1935/chn05/chn05/playlist.m3u8$LR•IPV4 Korea TV,https://hlive.ktv.go.kr/live/klive_h.stream/playlist.m3u8$LR•IPV4 KShopping,https://fhs8036.bd-61.ktcdn.co.kr/klive/smil:klive.smil/playlist.m3u8$LR•IPV4 -MBC,https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-bollywood/546eb40d7dcf9a209255dd2496903764/index.m3u8$LR•IPV4•37『线路1』 -MBC,https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-1/15cf99af5de54063fdabfefe66adc075/index.m3u8$LR•IPV4•37『线路2』 -MBC,https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-1-na/eec141533c90dd34722c503a296dd0d8/index.m3u8$LR•IPV4•37『线路3』 -MBC,https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-1-usa/fdac3a4fc0473f1f56e07ec1d63a4b7b/index.m3u8$LR•IPV4•37『线路4』 -MBC,http://andong.webcasting.co.kr/live/mbc/playlist.m3u8$LR•IPV4•37『线路5』 -MBC,https://stream.bsmbc.com/livetv/BusanMBC_TV_onairstream/playlist.m3u8$LR•IPV4•37『线路6』 -MBC,https://stream.chmbc.co.kr/TV/myStream/playlist.m3u8$LR•IPV4•37『线路7』 -MBC,http://211.33.246.4:32954/cj_live/myStream.sdp/playlist.m3u8$LR•IPV4•37『线路8』 -MBC,https://5ee1ec6f32118.streamlock.net/live/livetv/playlist.m3u8$LR•IPV4•37『线路9』 -MBC,https://ns1.tjmbc.co.kr/live/myStream.sdp/playlist.m3u8$LR•IPV4•37『线路10』 -MBC,http://123.254.93.7:1935/tvlive/livestream2/playlist.m3u8$LR•IPV4•37『线路11』 -MBC,https://media.kjmbc.co.kr/hls/live/stream/playlist.m3u8$LR•IPV4•37『线路12』 -MBC,https://624a79c87201d.streamlock.net/MBCTV/TV1.stream/playlist.m3u8$LR•IPV4•37『线路13』 -MBC,https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-iraq/e38c44b1b43474e1c39cb5b90203691e/index.m3u8$LR•IPV4•37『线路14』 -MBC,https://wowza.jejumbc.com/live/tv_jejumbc/playlist.m3u8$LR•IPV4•37『线路15』 -MBC,https://5ee9633b25727.streamlock.net/jmbc_tv/_definst_/jmbc_tv.stream/playlist.m3u8$LR•IPV4•37『线路16』 -MBC,https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-masr/956eac069c78a35d47245db6cdbb1575/index.m3u8$LR•IPV4•37『线路17』 -MBC,https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-masr-2/754931856515075b0aabf0e583495c68/index.m3u8$LR•IPV4•37『线路18』 -MBC,https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-masr-usa/cd8d40acdab28aac0582faa3bd3983f1/index.m3u8$LR•IPV4•37『线路19』 -MBC,http://vod.mpmbc.co.kr:1935/live/encoder-tv/playlist.m3u8$LR•IPV4•37『线路20』 -MBC,https://mumt03.tangotv.in/MBCTV/index.m3u8$LR•IPV4•37『线路21』 -MBC,https://5c3639aa99149.streamlock.net/live_TV/tv/playlist.m3u8$LR•IPV4•37『线路22』 -MBC,https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-4/24f134f1cd63db9346439e96b86ca6ed/index.m3u8$LR•IPV4•37『线路23』 -MBC,https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-drama/2c28a458e2f3253e678b07ac7d13fe71/index.m3u8$LR•IPV4•37『线路24』 -MBC,http://mytv.dothome.co.kr/ch/catv/26.php$LR•IPV4•37『线路25』 -MBC,https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-persia/818ee8e4b592dc497608f066d825bfb4/index.m3u8$LR•IPV4•37『线路26』 -MBC,https://cdn8.fntvchannel.com/v1/master/02eeb1726c343dc9c30c32e93dee82013e157021/FNTV-CHANNEL_CDN77/index.m3u8$LR•IPV4•37『线路27』 -MBC,http://mytv.dothome.co.kr/ch/catv/28.php$LR•IPV4•37『线路28』 -MBC,https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-3-usa/5d58265a862a476dc7f97694addb5ded/index.m3u8$LR•IPV4•37『线路29』 -MBC,https://dbbv9umqcd7cs.cloudfront.net/out/v1/db15b75c3cc0400c91961468d6a232ac/index.m3u8$LR•IPV4•37『线路30』 -MBC,https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-mood/78367bf48ccdba501d0d014a10c21031/index.m3u8$LR•IPV4•37『线路31』 -MBC,https://shd-gcp-live.edgenextcdn.net/live/bitmovin-wanasah/13e82ea6232fa647c43b26e8a41f173d/index.m3u8$LR•IPV4•37『线路32』 -MBC,https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-drama-usa/ea2f5db904aff224b7066e59c7f585a2/index.m3u8$LR•IPV4•37『线路33』 -MBC,https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-masr-drama/567b703c19ede6598222de81b0e4508b/index.m3u8$LR•IPV4•37『线路34』 -MBC,https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-5/ee6b000cee0629411b666ab26cb13e9b/index.m3u8$LR•IPV4•37『线路35』 -MBC,https://cdn-us-east-prod-ingest-infra-dacast-com.akamaized.net/624ff8f9-db18-da92-4d42-896fa2ff3eb3/source/index.m3u8$LR•IPV4•37『线路36』 -MBC,http://211.33.246.4:32954/cj_live/myStream.sdp/chunklist_w517347500.m3u8$LR•IPV4•37『线路37』 +MBC,https://stream.chmbc.co.kr/TV/myStream/playlist.m3u8$LR•IPV4•37『线路1』 +MBC,https://5c3639aa99149.streamlock.net/live_TV/tv/playlist.m3u8$LR•IPV4•37『线路2』 +MBC,https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-5/ee6b000cee0629411b666ab26cb13e9b/index.m3u8$LR•IPV4•37『线路3』 +MBC,http://211.33.246.4:32954/cj_live/myStream.sdp/chunklist_w517347500.m3u8$LR•IPV4•37『线路4』 +MBC,https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-1/15cf99af5de54063fdabfefe66adc075/index.m3u8$LR•IPV4•37『线路5』 +MBC,https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-1-na/eec141533c90dd34722c503a296dd0d8/index.m3u8$LR•IPV4•37『线路6』 +MBC,https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-1-usa/fdac3a4fc0473f1f56e07ec1d63a4b7b/index.m3u8$LR•IPV4•37『线路7』 +MBC,http://andong.webcasting.co.kr/live/mbc/playlist.m3u8$LR•IPV4•37『线路8』 +MBC,https://stream.bsmbc.com/livetv/BusanMBC_TV_onairstream/playlist.m3u8$LR•IPV4•37『线路9』 +MBC,http://211.33.246.4:32954/cj_live/myStream.sdp/playlist.m3u8$LR•IPV4•37『线路10』 +MBC,https://5ee1ec6f32118.streamlock.net/live/livetv/playlist.m3u8$LR•IPV4•37『线路11』 +MBC,https://ns1.tjmbc.co.kr/live/myStream.sdp/playlist.m3u8$LR•IPV4•37『线路12』 +MBC,http://123.254.93.7:1935/tvlive/livestream2/playlist.m3u8$LR•IPV4•37『线路13』 +MBC,https://media.kjmbc.co.kr/hls/live/stream/playlist.m3u8$LR•IPV4•37『线路14』 +MBC,https://624a79c87201d.streamlock.net/MBCTV/TV1.stream/playlist.m3u8$LR•IPV4•37『线路15』 +MBC,https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-iraq/e38c44b1b43474e1c39cb5b90203691e/index.m3u8$LR•IPV4•37『线路16』 +MBC,https://wowza.jejumbc.com/live/tv_jejumbc/playlist.m3u8$LR•IPV4•37『线路17』 +MBC,https://5ee9633b25727.streamlock.net/jmbc_tv/_definst_/jmbc_tv.stream/playlist.m3u8$LR•IPV4•37『线路18』 +MBC,https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-masr/956eac069c78a35d47245db6cdbb1575/index.m3u8$LR•IPV4•37『线路19』 +MBC,https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-masr-2/754931856515075b0aabf0e583495c68/index.m3u8$LR•IPV4•37『线路20』 +MBC,https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-masr-usa/cd8d40acdab28aac0582faa3bd3983f1/index.m3u8$LR•IPV4•37『线路21』 +MBC,http://vod.mpmbc.co.kr:1935/live/encoder-tv/playlist.m3u8$LR•IPV4•37『线路22』 +MBC,https://mumt03.tangotv.in/MBCTV/index.m3u8$LR•IPV4•37『线路23』 +MBC,https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-bollywood/546eb40d7dcf9a209255dd2496903764/index.m3u8$LR•IPV4•37『线路24』 +MBC,https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-4/24f134f1cd63db9346439e96b86ca6ed/index.m3u8$LR•IPV4•37『线路25』 +MBC,https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-drama/2c28a458e2f3253e678b07ac7d13fe71/index.m3u8$LR•IPV4•37『线路26』 +MBC,http://mytv.dothome.co.kr/ch/catv/26.php$LR•IPV4•37『线路27』 +MBC,https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-persia/818ee8e4b592dc497608f066d825bfb4/index.m3u8$LR•IPV4•37『线路28』 +MBC,https://cdn8.fntvchannel.com/v1/master/02eeb1726c343dc9c30c32e93dee82013e157021/FNTV-CHANNEL_CDN77/index.m3u8$LR•IPV4•37『线路29』 +MBC,http://mytv.dothome.co.kr/ch/catv/28.php$LR•IPV4•37『线路30』 +MBC,https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-3-usa/5d58265a862a476dc7f97694addb5ded/index.m3u8$LR•IPV4•37『线路31』 +MBC,https://dbbv9umqcd7cs.cloudfront.net/out/v1/db15b75c3cc0400c91961468d6a232ac/index.m3u8$LR•IPV4•37『线路32』 +MBC,https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-mood/78367bf48ccdba501d0d014a10c21031/index.m3u8$LR•IPV4•37『线路33』 +MBC,https://shd-gcp-live.edgenextcdn.net/live/bitmovin-wanasah/13e82ea6232fa647c43b26e8a41f173d/index.m3u8$LR•IPV4•37『线路34』 +MBC,https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-drama-usa/ea2f5db904aff224b7066e59c7f585a2/index.m3u8$LR•IPV4•37『线路35』 +MBC,https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-masr-drama/567b703c19ede6598222de81b0e4508b/index.m3u8$LR•IPV4•37『线路36』 +MBC,https://cdn-us-east-prod-ingest-infra-dacast-com.akamaized.net/624ff8f9-db18-da92-4d42-896fa2ff3eb3/source/index.m3u8$LR•IPV4•37『线路37』 NBS,https://media.joycorp.co.kr:4443/live/ngrp:live_all/playlist.m3u8$LR•IPV4 SBS,https://ads.its-newid.net/api/manifest.m3u8?tp=lg_channels&channel_name=sbsk-drama&channel_id=newid_008&mpf=c064f5f4-39af1962-7c36be2c&apikey=48230e6b-1cea0097-15975f93-39af1962&auth=474ab4cb-5d47aa0a-84d0cbca-2a3730a6&ads.live=[CONTENT_LIVE]&ads.deviceid=[DEVICE_ID]&ads.ifa=[IFA]&ads.ifatype=[IFA_TYPE]&ads.lat=[LMT]&ads.donotsell=[DNS]&ads.ua=[UA]&ads.ip=[IP]&ads.gdpr=[GDPR]&ads.gdpr_consent=[GDPR_CONSENT]&ads.country=[COUNTRY]&ads.us_privacy=[US_PRIVACY]&ads.appstoreurl=[APP_STOREURL]&ads.bundleid=[APP_BUNDLE]&ads.appname=[APP_NAME]&ads.appversion=[APP_VERSION]&ads.devicetype=[DEVICE_TYPE]&ads.devicemake=[DEVICE_MAKE]&ads.devicemodel=[DEVICE_MODEL]&ads.targetad=[TARGETAD_ALLOWED]&ads.fck=[FCK]&ads.viewsize=[VIEWSIZE]&ads.givn=[NONCE]$LR•IPV4•9『线路1』 -SBS,http://1.222.207.80:1935/live/cjbtv/playlist.m3u8$LR•IPV4•9『线路2』 -SBS,http://61.82.49.4:1935/live/_definst_/tv.stream/playlist.m3u8$LR•IPV4•9『线路3』 -SBS,http://123.140.197.22/stream/1/play.m3u8$LR•IPV4•9『线路4』 -SBS,http://61.85.197.53:1935/jtv_live/myStream/playlist.m3u8$LR•IPV4•9『线路5』 +SBS,http://61.85.197.53:1935/jtv_live/myStream/playlist.m3u8$LR•IPV4•9『线路2』 +SBS,http://1.222.207.80:1935/live/cjbtv/playlist.m3u8$LR•IPV4•9『线路3』 +SBS,http://61.82.49.4:1935/live/_definst_/tv.stream/playlist.m3u8$LR•IPV4•9『线路4』 +SBS,http://123.140.197.22/stream/1/play.m3u8$LR•IPV4•9『线路5』 SBS,https://vod.ikbc.co.kr/KBCTV/tv/playlist.m3u8$LR•IPV4•9『线路6』 SBS,https://stream1.knn.co.kr/hls/9ly4534y7dm2xfa123r2_tv/index.m3u8$LR•IPV4•9『线路7』 SBS,http://203.251.91.122:1935/on-air-Backup/tv/playlist.m3u8$LR•IPV4•9『线路8』 @@ -833,9 +834,9 @@ Midpen Media Center Government etc Channel 26,https://5c2974786200d.streamlock.n Midpen Media Center Government etc Channel 29,https://5c2974786200d.streamlock.net/live-chan29/ngrp:ch29_all/playlist.m3u8$LR•IPV4 Realitatea Plus,https://stream.realitatea.net/realitatea/plus_md/ts:playlist.m3u8$LR•IPV4 Reuters,https://dbrb49pjoymg4.cloudfront.net/manifest/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod_default_xumo-ams-aws/e7493ea5-5c1c-4d7a-a3f7-e95516048ad8/3.m3u8$LR•IPV4•4『线路1』 -Reuters,https://amg00453-reuters-amg00453c1-rakuten-uk-2110.playouts.now.amagi.tv/playlist/amg00453-reuters-reuters-rakutenuk/playlist.m3u8$LR•IPV4•4『线路2』 -Reuters,https://amg00453-amg00453c1-distrotv-us-7691.playouts.now.amagi.tv/playlist/amg00453-reuters-reuters-distrotvus/playlist.m3u8$LR•IPV4•4『线路3』 -Reuters,https://cdn-uw2-prod.tsv2.amagi.tv/linear/amg00453-reuters-reuters-hls-rakutenjp/playlist.m3u8$LR•IPV4•4『线路4』 +Reuters,https://cdn-uw2-prod.tsv2.amagi.tv/linear/amg00453-reuters-reuters-hls-rakutenjp/playlist.m3u8$LR•IPV4•4『线路2』 +Reuters,https://amg00453-reuters-amg00453c1-rakuten-uk-2110.playouts.now.amagi.tv/playlist/amg00453-reuters-reuters-rakutenuk/playlist.m3u8$LR•IPV4•4『线路3』 +Reuters,https://amg00453-amg00453c1-distrotv-us-7691.playouts.now.amagi.tv/playlist/amg00453-reuters-reuters-distrotvus/playlist.m3u8$LR•IPV4•4『线路4』 RTV Rijnstreek TV,https://ms7.mx-cd.net/tv/290-3222276/RTV_Rijnstreek.smil/playlist.m3u8$LR•IPV4 Ryan and Friends,https://ryanandfriends-samsungau.amagi.tv/playlist.m3u8$LR•IPV4 SEA TV,https://iptv.prosto.tv/ch238/index.m3u8$LR•IPV4 @@ -853,73 +854,73 @@ 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•53『线路1』 -UK,https://0145451975a64b35866170fd2e8fa486.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-5987/master.m3u8$LR•IPV4•53『线路2』 -UK,https://54045f0c40fd442c8b06df076aaf1e85.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6065/master.m3u8$LR•IPV4•53『线路3』 -UK,https://9be783d652cd4b099cf63e1dc134c4a3.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6181/master.m3u8$LR•IPV4•53『线路4』 -UK,https://fee09fd665814f51b939b6d106cf5f66.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6093/master.m3u8$LR•IPV4•53『线路5』 -UK,http://41.223.30.230/ZEECINEMA/index.m3u8$LR•IPV4•53『线路6』 -UK,https://app.ncare.live/c3VydmVyX8RpbEU9Mi8xNy8yMDE0GIDU6RgzQ6NTAgdEoaeFzbF92YWxIZTO0U0ezN1IzMyfvcGVMZEJCTEFWeVN3PTOmdFsaWRtaW51aiPhnPTI2/atnbanglauk-off.stream/playlist.m3u8$LR•IPV4•53『线路7』 -UK,https://qvcuk-live.akamaized.net/hls/live/2097112/qvc/master.m3u8$LR•IPV4•53『线路8』 -UK,https://qvcuk-live.akamaized.net/hls/live/2097112/qby/master.m3u8$LR•IPV4•53『线路9』 -UK,https://qvcuk-live.akamaized.net/hls/live/2097112/qex/master.m3u8$LR•IPV4•53『线路10』 -UK,https://qvcuk-live.akamaized.net/hls/live/2097112/qst/master.m3u8$LR•IPV4•53『线路11』 -UK,http://45.153.96.44:8001$LR•IPV4•53『线路12』 -UK,https://mini.allinonereborn.fun/tata.php?id=11783$LR•IPV4•53『线路13』 -UK,https://cdn3.wowza.com/5/L1Uzd2FrbVlLRG1W/live/smil:lwukweb.smil/playlist.m3u8$LR•IPV4•53『线路14』 -UK,https://d34z4embz0hjf6.cloudfront.net/out/v1/7ac2789ff9a544a49337d1ffc54ce61c/index.m3u8$LR•IPV4•53『线路15』 -UK,https://jmp2.uk/plu-638e10de75c3a30007092693.m3u8$LR•IPV4•53『线路16』 -UK,https://jmp2.uk/plu-62bed7cb3279cb0007735327.m3u8$LR•IPV4•53『线路17』 -UK,https://d1nn4ic5ci0eid.cloudfront.net/MasterchefUKPoweredbyBanijay_GB.m3u8$LR•IPV4•53『线路18』 -UK,https://dvqpty1sb3rry.cloudfront.net/PointlessUKPoweredbyBanijay_GB.m3u8$LR•IPV4•53『线路19』 -UK,https://68f6dfd1f2bd415b9c42f1d383004b69.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6233/master.m3u8$LR•IPV4•53『线路20』 -UK,https://2c88ed8c4df9479aa0c7138dc42115e2.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6194/master.m3u8$LR•IPV4•53『线路21』 -UK,https://sci-fi-rakuten-tv-uk.fast.rakuten.tv/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6241/master.m3u8$LR•IPV4•53『线路22』 -UK,https://thriller-rakuten-tv-uk.fast.rakuten.tv/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6482/master.m3u8$LR•IPV4•53『线路23』 -UK,https://live-tbn-ssai.simplestreamcdn.com/v1/master/774d979dd66704abea7c5b62cb34c6815fda0d35/tbn-live/manifest.m3u8$LR•IPV4•53『线路24』 -UK,https://amg01131-tracetv-amg01131c5-stirr-us-4389.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•53『线路25』 -UK,https://d35j504z0x2vu2.cloudfront.net/v1/master/0bc8e8376bd8417a1b6761138aa41c26c7309312/trace-uk/encrypted.m3u8?ads.vf=cgXMgPi7oBS$LR•IPV4•53『线路26』 -UK,https://d2n3779oy6efpi.cloudfront.net/playlist.m3u8$LR•IPV4•53『线路27』 -UK,https://d2l4tng0wskzvn.cloudfront.net/Trace_GB.m3u8$LR•IPV4•53『线路28』 -UK,https://hls.vantagetv.co.uk/vmusicuk_stream/index.m3u8$LR•IPV4•53『线路29』 -UK,https://amg01243-xitenetworksint-hitsuk-samsunguk-mvovq.amagi.tv/playlist/amg01243-xitenetworksint-hitsuk-samsunguk/playlist.m3u8$LR•IPV4•53『线路30』 -UK,https://bbc-antiquesroadshowuk-1-us.roku.wurl.tv/playlist.m3u8$LR•IPV4•53『线路31』 -UK,https://jmp2.uk/plu-692edc78d52ea9e4858cf78f.m3u8$LR•IPV4•53『线路32』 -UK,https://jmp2.uk/plu-692edcff77f0147d69f19498.m3u8$LR•IPV4•53『线路33』 -UK,https://jmp2.uk/plu-692edd6bdb8695f63e14f3b9.m3u8$LR•IPV4•53『线路34』 -UK,https://b6cca454.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/U2Ftc3VuZy1nYl9UcnVlQ3JpbWVVS2Zyb21DQlNSZWFsaXR5X0hMUw/playlist.m3u8$LR•IPV4•53『线路35』 -UK,https://ntd02.akamaized.net/NTD-UK/index.m3u8$LR•IPV4•53『线路36』 -UK,https://e3207568b726401995c25670faaf32e4.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6203/master.m3u8$LR•IPV4•53『线路37』 -UK,https://1a3566cb46914c5499fbc86fbc4ac87e.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-932-WORBUKENFAST-WHALETVPLUS/932/whaletvplus/hls/master/playlist.m3u8$LR•IPV4•53『线路38』 -UK,http://nocable.cc:8080//OURTV/OURTV@4806/35241$LR•IPV4•53『线路39』 -UK,http://nocable.cc:8080//OURTV/OURTV@4806/35244$LR•IPV4•53『线路40』 -UK,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001373$LR•IPV4•53『线路41』 -UK,http://nocable.cc:8080//OURTV/OURTV@4806/35240$LR•IPV4•53『线路42』 -UK,http://nocable.cc:8080//OURTV/OURTV@4806/137720$LR•IPV4•53『线路43』 -UK,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001376$LR•IPV4•53『线路44』 -UK,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001378$LR•IPV4•53『线路45』 -UK,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001379$LR•IPV4•53『线路46』 -UK,http://nocable.cc:8080//OURTV/OURTV@4806/53705$LR•IPV4•53『线路47』 -UK,http://nocable.cc:8080//OURTV/OURTV@4806/35238$LR•IPV4•53『线路48』 -UK,http://nocable.cc:8080//OURTV/OURTV@4806/53663$LR•IPV4•53『线路49』 -UK,http://nocable.cc:8080//OURTV/OURTV@4806/45940$LR•IPV4•53『线路50』 -UK,http://vocotv.pro//revol/revol/276918$LR•IPV4•53『线路51』 -UK,http://vocotv.pro//revol/revol/276924$LR•IPV4•53『线路52』 -UK,http://vocotv.pro//revol/revol/276906$LR•IPV4•53『线路53』 -US,http://138.121.15.230:9002/DEPELICULA/index.m3u8$LR•IPV4•18『线路1』 -US,https://stream.smotrim.ru/hls2/planeta_rtr_usa/playlist_4.m3u8$LR•IPV4•18『线路2』 -US,https://amg17233-amg17233c1-wisptv-us-6409.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•18『线路3』 -US,https://jmp2.uk/plu-6304f20c941c5d00089634e7.m3u8$LR•IPV4•18『线路4』 -US,https://jmp2.uk/plu-63988b61c8d285000798a22a.m3u8$LR•IPV4•18『线路5』 -US,http://206.212.244.63/641/index.m3u8$LR•IPV4•18『线路6』 -US,https://janus.xpbroadcasting.com:8443/hls/xptvUS.m3u8$LR•IPV4•18『线路7』 -US,https://bloomberg.com/media-manifest/streams/us-event.m3u8$LR•IPV4•18『线路8』 -US,https://bloomberg.com/media-manifest/streams/politics.m3u8$LR•IPV4•18『线路9』 -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•18『线路10』 -US,p3p://167.114.175.6:55331/63efe07e000c1db2f23eb46a4e00518a$LR•IPV4•18『线路11』 -US,p3p://167.114.175.6:55331/63efe0de000858baf2402a646c573e1b$LR•IPV4•18『线路12』 -US,p3p://167.114.175.6:55331/63efe252000a7658f245d81113e44b34$LR•IPV4•18『线路13』 -US,p3p://167.114.175.6:55331/63efe2e2000d23b5f2480b4125294b9a$LR•IPV4•18『线路14』 +UK,http://nocable.cc:8080//OURTV/OURTV@4806/35241$LR•IPV4•53『线路1』 +UK,http://nocable.cc:8080//OURTV/OURTV@4806/35244$LR•IPV4•53『线路2』 +UK,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001373$LR•IPV4•53『线路3』 +UK,http://nocable.cc:8080//OURTV/OURTV@4806/35240$LR•IPV4•53『线路4』 +UK,http://nocable.cc:8080//OURTV/OURTV@4806/137720$LR•IPV4•53『线路5』 +UK,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001376$LR•IPV4•53『线路6』 +UK,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001378$LR•IPV4•53『线路7』 +UK,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001379$LR•IPV4•53『线路8』 +UK,http://nocable.cc:8080//OURTV/OURTV@4806/53705$LR•IPV4•53『线路9』 +UK,http://nocable.cc:8080//OURTV/OURTV@4806/35238$LR•IPV4•53『线路10』 +UK,http://nocable.cc:8080//OURTV/OURTV@4806/53663$LR•IPV4•53『线路11』 +UK,http://nocable.cc:8080//OURTV/OURTV@4806/45940$LR•IPV4•53『线路12』 +UK,http://vocotv.pro//revol/revol/276918$LR•IPV4•53『线路13』 +UK,http://vocotv.pro//revol/revol/276924$LR•IPV4•53『线路14』 +UK,http://vocotv.pro//revol/revol/276906$LR•IPV4•53『线路15』 +UK,https://app.ncare.live/c3VydmVyX8RpbEU9Mi8xNy8yMDE0GIDU6RgzQ6NTAgdEoaeFzbF92YWxIZTO0U0ezN1IzMyfvcGVMZEJCTEFWeVN3PTOmdFsaWRtaW51aiPhnPTI2/atnbanglauk-off.stream/playlist.m3u8$LR•IPV4•53『线路16』 +UK,https://moviesphereuk-samsunguk.amagi.tv/playlist.m3u8$LR•IPV4•53『线路17』 +UK,https://0145451975a64b35866170fd2e8fa486.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-5987/master.m3u8$LR•IPV4•53『线路18』 +UK,https://54045f0c40fd442c8b06df076aaf1e85.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6065/master.m3u8$LR•IPV4•53『线路19』 +UK,https://9be783d652cd4b099cf63e1dc134c4a3.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6181/master.m3u8$LR•IPV4•53『线路20』 +UK,https://fee09fd665814f51b939b6d106cf5f66.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6093/master.m3u8$LR•IPV4•53『线路21』 +UK,http://41.223.30.230/ZEECINEMA/index.m3u8$LR•IPV4•53『线路22』 +UK,https://qvcuk-live.akamaized.net/hls/live/2097112/qvc/master.m3u8$LR•IPV4•53『线路23』 +UK,https://qvcuk-live.akamaized.net/hls/live/2097112/qby/master.m3u8$LR•IPV4•53『线路24』 +UK,https://qvcuk-live.akamaized.net/hls/live/2097112/qex/master.m3u8$LR•IPV4•53『线路25』 +UK,https://qvcuk-live.akamaized.net/hls/live/2097112/qst/master.m3u8$LR•IPV4•53『线路26』 +UK,http://45.153.96.44:8001$LR•IPV4•53『线路27』 +UK,https://mini.allinonereborn.fun/tata.php?id=11783$LR•IPV4•53『线路28』 +UK,https://cdn3.wowza.com/5/L1Uzd2FrbVlLRG1W/live/smil:lwukweb.smil/playlist.m3u8$LR•IPV4•53『线路29』 +UK,https://d34z4embz0hjf6.cloudfront.net/out/v1/7ac2789ff9a544a49337d1ffc54ce61c/index.m3u8$LR•IPV4•53『线路30』 +UK,https://jmp2.uk/plu-638e10de75c3a30007092693.m3u8$LR•IPV4•53『线路31』 +UK,https://jmp2.uk/plu-62bed7cb3279cb0007735327.m3u8$LR•IPV4•53『线路32』 +UK,https://d1nn4ic5ci0eid.cloudfront.net/MasterchefUKPoweredbyBanijay_GB.m3u8$LR•IPV4•53『线路33』 +UK,https://dvqpty1sb3rry.cloudfront.net/PointlessUKPoweredbyBanijay_GB.m3u8$LR•IPV4•53『线路34』 +UK,https://68f6dfd1f2bd415b9c42f1d383004b69.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6233/master.m3u8$LR•IPV4•53『线路35』 +UK,https://2c88ed8c4df9479aa0c7138dc42115e2.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6194/master.m3u8$LR•IPV4•53『线路36』 +UK,https://sci-fi-rakuten-tv-uk.fast.rakuten.tv/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6241/master.m3u8$LR•IPV4•53『线路37』 +UK,https://thriller-rakuten-tv-uk.fast.rakuten.tv/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6482/master.m3u8$LR•IPV4•53『线路38』 +UK,https://live-tbn-ssai.simplestreamcdn.com/v1/master/774d979dd66704abea7c5b62cb34c6815fda0d35/tbn-live/manifest.m3u8$LR•IPV4•53『线路39』 +UK,https://amg01131-tracetv-amg01131c5-stirr-us-4389.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•53『线路40』 +UK,https://d35j504z0x2vu2.cloudfront.net/v1/master/0bc8e8376bd8417a1b6761138aa41c26c7309312/trace-uk/encrypted.m3u8?ads.vf=cgXMgPi7oBS$LR•IPV4•53『线路41』 +UK,https://d2n3779oy6efpi.cloudfront.net/playlist.m3u8$LR•IPV4•53『线路42』 +UK,https://d2l4tng0wskzvn.cloudfront.net/Trace_GB.m3u8$LR•IPV4•53『线路43』 +UK,https://hls.vantagetv.co.uk/vmusicuk_stream/index.m3u8$LR•IPV4•53『线路44』 +UK,https://amg01243-xitenetworksint-hitsuk-samsunguk-mvovq.amagi.tv/playlist/amg01243-xitenetworksint-hitsuk-samsunguk/playlist.m3u8$LR•IPV4•53『线路45』 +UK,https://bbc-antiquesroadshowuk-1-us.roku.wurl.tv/playlist.m3u8$LR•IPV4•53『线路46』 +UK,https://jmp2.uk/plu-692edc78d52ea9e4858cf78f.m3u8$LR•IPV4•53『线路47』 +UK,https://jmp2.uk/plu-692edcff77f0147d69f19498.m3u8$LR•IPV4•53『线路48』 +UK,https://jmp2.uk/plu-692edd6bdb8695f63e14f3b9.m3u8$LR•IPV4•53『线路49』 +UK,https://b6cca454.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/U2Ftc3VuZy1nYl9UcnVlQ3JpbWVVS2Zyb21DQlNSZWFsaXR5X0hMUw/playlist.m3u8$LR•IPV4•53『线路50』 +UK,https://ntd02.akamaized.net/NTD-UK/index.m3u8$LR•IPV4•53『线路51』 +UK,https://e3207568b726401995c25670faaf32e4.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6203/master.m3u8$LR•IPV4•53『线路52』 +UK,https://1a3566cb46914c5499fbc86fbc4ac87e.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-932-WORBUKENFAST-WHALETVPLUS/932/whaletvplus/hls/master/playlist.m3u8$LR•IPV4•53『线路53』 +US,p3p://167.114.175.6:55331/63efe07e000c1db2f23eb46a4e00518a$LR•IPV4•18『线路1』 +US,p3p://167.114.175.6:55331/63efe0de000858baf2402a646c573e1b$LR•IPV4•18『线路2』 +US,p3p://167.114.175.6:55331/63efe252000a7658f245d81113e44b34$LR•IPV4•18『线路3』 +US,p3p://167.114.175.6:55331/63efe2e2000d23b5f2480b4125294b9a$LR•IPV4•18『线路4』 +US,https://stream.smotrim.ru/hls2/planeta_rtr_usa/playlist_4.m3u8$LR•IPV4•18『线路5』 +US,https://amg17233-amg17233c1-wisptv-us-6409.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•18『线路6』 +US,http://138.121.15.230:9002/DEPELICULA/index.m3u8$LR•IPV4•18『线路7』 +US,https://jmp2.uk/plu-6304f20c941c5d00089634e7.m3u8$LR•IPV4•18『线路8』 +US,https://jmp2.uk/plu-63988b61c8d285000798a22a.m3u8$LR•IPV4•18『线路9』 +US,http://206.212.244.63/641/index.m3u8$LR•IPV4•18『线路10』 +US,https://janus.xpbroadcasting.com:8443/hls/xptvUS.m3u8$LR•IPV4•18『线路11』 +US,https://bloomberg.com/media-manifest/streams/us-event.m3u8$LR•IPV4•18『线路12』 +US,https://bloomberg.com/media-manifest/streams/politics.m3u8$LR•IPV4•18『线路13』 +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•18『线路14』 US,https://amg01942-amg01942c5-stirr-us-10184.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•18『线路15』 US,https://content.uplynk.com/channel/64ca339f04964a5e961c3207a7771bf1.m3u8$LR•IPV4•18『线路16』 US,https://jmp2.uk/plu-62cebd7302478b00073a6b71.m3u8$LR•IPV4•18『线路17』 @@ -1077,19 +1078,19 @@ zonghe,#genre# 钱塘江,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,http://23.237.104.106:8080/USA_HBO/index.m3u8$LR•IPV4•15『线路1』 HBO,http://23.237.104.106:8080/USA_HBO2/index.m3u8$LR•IPV4•15『线路2』 -HBO,https://live-manifest.production-public.tubi.io/live/9fe78734-1db2-49b4-af7b-3c89f5f256ad/playlist.m3u8$LR•IPV4•15『线路3』 -HBO,p3p://167.114.175.6:55331/66d22f6b0001f87c739b69c977f063dd$LR•IPV4•15『线路4』 -HBO,p3p://167.114.175.6:55331/623a6e38000091d497395ce957b27132$LR•IPV4•15『线路5』 -HBO,p3p://167.114.175.6:55331/623a706d0003edf59741fcc023dc0089$LR•IPV4•15『线路6』 -HBO,p3p://167.114.175.6:55331/623a700000069676974053b555b700d4$LR•IPV4•15『线路7』 -HBO,p3p://167.114.175.6:55331/64e364fb000a0212a977a1cd342976da$LR•IPV4•15『线路8』 -HBO,p3p://167.114.175.6:55331/65d07877000b028d4787830a723c4ce7$LR•IPV4•15『线路9』 -HBO,http://125.227.210.55:8153/VideoInput/play.ts$LR•IPV4•15『线路10』 -HBO,http://23.237.104.106:8080/USA_HBO/tracks-v1a1/mono.m3u8$LR•IPV4•15『线路11』 -HBO,http://23.237.104.106:8080/USA_HBO2/tracks-v1a1/mono.m3u8$LR•IPV4•15『线路12』 -HBO,http://23.237.104.106:8080/USA_HBO_COMEDY/tracks-v1a1/mono.m3u8$LR•IPV4•15『线路13』 -HBO,http://23.237.104.106:8080/USA_HBO_ZONE/tracks-v1a1/mono.m3u8$LR•IPV4•15『线路14』 -HBO,http://108.181.20.255:27347/livehttpplay?channel_id=23049$LR•IPV4•15『线路15』 +HBO,p3p://167.114.175.6:55331/66d22f6b0001f87c739b69c977f063dd$LR•IPV4•15『线路3』 +HBO,p3p://167.114.175.6:55331/623a6e38000091d497395ce957b27132$LR•IPV4•15『线路4』 +HBO,p3p://167.114.175.6:55331/623a706d0003edf59741fcc023dc0089$LR•IPV4•15『线路5』 +HBO,p3p://167.114.175.6:55331/623a700000069676974053b555b700d4$LR•IPV4•15『线路6』 +HBO,p3p://167.114.175.6:55331/64e364fb000a0212a977a1cd342976da$LR•IPV4•15『线路7』 +HBO,p3p://167.114.175.6:55331/65d07877000b028d4787830a723c4ce7$LR•IPV4•15『线路8』 +HBO,http://125.227.210.55:8153/VideoInput/play.ts$LR•IPV4•15『线路9』 +HBO,http://23.237.104.106:8080/USA_HBO/tracks-v1a1/mono.m3u8$LR•IPV4•15『线路10』 +HBO,http://23.237.104.106:8080/USA_HBO2/tracks-v1a1/mono.m3u8$LR•IPV4•15『线路11』 +HBO,http://23.237.104.106:8080/USA_HBO_COMEDY/tracks-v1a1/mono.m3u8$LR•IPV4•15『线路12』 +HBO,http://23.237.104.106:8080/USA_HBO_ZONE/tracks-v1a1/mono.m3u8$LR•IPV4•15『线路13』 +HBO,http://108.181.20.255:27347/livehttpplay?channel_id=23049$LR•IPV4•15『线路14』 +HBO,https://live-manifest.production-public.tubi.io/live/9fe78734-1db2-49b4-af7b-3c89f5f256ad/playlist.m3u8$LR•IPV4•15『线路15』 ▶️哪吒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 @@ -1260,50 +1261,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://d3s7x6kmqcnb6b.cloudfront.net/d/distro001a/0NPOY54L3YURIZHAY396/hls3/now,-1m/m.m3u8?ads.vf=qEyxmCFMVta$LR•IPV4•46『线路11』 -HISTORY,https://amg00841-amg00841c7-rakuten-uk-2820.playouts.now.amagi.tv/playlist/amg00841-aeemeafast-historyhuntersrakuten-rakutenuk/playlist.m3u8$LR•IPV4•46『线路12』 -HISTORY,https://amg00841-amg00841c9-samsung-gb-3032.playouts.now.amagi.tv/playlist/amg00841-aeemeafast-historyhunterssamsung-samsunggb/playlist.m3u8$LR•IPV4•46『线路13』 -HISTORY,https://jmp2.uk/plu-65819fc1b9adc4000813f37d.m3u8$LR•IPV4•46『线路14』 -HISTORY,https://jmp2.uk/plu-65775d29dfed030008cb3db2.m3u8$LR•IPV4•46『线路15』 -HISTORY,https://pb-m89wlp8flmjzf.akamaized.net/v1/aenetworks_modernmarvels_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•46『线路16』 -HISTORY,https://amg02333-pbs-amg02333c1-samsung-au-1253.playouts.now.amagi.tv/playlist/amg02333-pbsdistributionfast-pbshistory-samsungau/playlist.m3u8$LR•IPV4•46『线路17』 -HISTORY,https://amg02333-pbs-amg02333c1-samsung-nz-1254.playouts.now.amagi.tv/playlist/amg02333-pbsdistributionfast-pbshistory-samsungnz/playlist.m3u8$LR•IPV4•46『线路18』 -HISTORY,https://d35j504z0x2vu2.cloudfront.net/v1/master/0bc8e8376bd8417a1b6761138aa41c26c7309312/true-history/playlist.m3u8?ads.vf=G1hGexOV3sS$LR•IPV4•46『线路19』 -HISTORY,https://linear-188.frequency.stream/dist/xumo/188/hls/master/playlist.m3u8$LR•IPV4•46『线路20』 -HISTORY,https://jmp2.uk/plu-6000a6f4c3f8550008fc9b91.m3u8$LR•IPV4•46『线路21』 -HISTORY,https://dxagbr7yc4m1d.cloudfront.net/v1/aenetworks_skills_thrills_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•46『线路22』 -HISTORY,https://rpn.bozztv.com/gusa/gusa-tvshollywoohistory/index.m3u8$LR•IPV4•46『线路23』 -HISTORY,http://213.91.179.28:8000/play/a0c1$LR•IPV4•46『线路24』 -HISTORY,http://177.52.24.163/HISTORY-HD/index.m3u8$LR•IPV4•46『线路25』 -HISTORY,http://88.212.15.19/live/test_history/playlist.m3u8$LR•IPV4•46『线路26』 -HISTORY,http://82.78.243.219:45739/play/a01f/index.m3u8$LR•IPV4•46『线路27』 -HISTORY,http://206.212.244.63/91/index.m3u8$LR•IPV4•46『线路28』 -HISTORY,http://138.121.15.230:9002/HISTORY-2/index.m3u8$LR•IPV4•46『线路29』 -HISTORY,http://45.162.231.38:7779/History_2/index.m3u8$LR•IPV4•46『线路30』 -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『线路31』 -HISTORY,https://lds-timeline-rakuten.amagi.tv/playlist.m3u8$LR•IPV4•46『线路32』 -HISTORY,http://138.121.15.230:9002/HISTORY-CHANNEL/index.m3u8$LR•IPV4•46『线路33』 -HISTORY,http://45.6.4.35/HISTORY/index.m3u8$LR•IPV4•46『线路34』 -HISTORY,http://103.72.101.252:8080/live/1471.m3u8$LR•IPV4•46『线路35』 -HISTORY,http://103.154.3.101:5001/live/577.m3u8$LR•IPV4•46『线路36』 -HISTORY,https://jmp2.uk/plu-5d767b1c126c65d0a307355f.m3u8$LR•IPV4•46『线路37』 -HISTORY,https://jmp2.uk/plu-5d4af1803e7983b391d73b13.m3u8$LR•IPV4•46『线路38』 -HISTORY,https://jmp2.uk/plu-5a4d35dfa5c02e717a234f86.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://d3s7x6kmqcnb6b.cloudfront.net/d/distro001a/0NPOY54L3YURIZHAY396/hls3/now,-1m/m.m3u8?ads.vf=qEyxmCFMVta$LR•IPV4•46『线路14』 +HISTORY,https://amg00841-amg00841c7-rakuten-uk-2820.playouts.now.amagi.tv/playlist/amg00841-aeemeafast-historyhuntersrakuten-rakutenuk/playlist.m3u8$LR•IPV4•46『线路15』 +HISTORY,https://amg00841-amg00841c9-samsung-gb-3032.playouts.now.amagi.tv/playlist/amg00841-aeemeafast-historyhunterssamsung-samsunggb/playlist.m3u8$LR•IPV4•46『线路16』 +HISTORY,https://jmp2.uk/plu-65819fc1b9adc4000813f37d.m3u8$LR•IPV4•46『线路17』 +HISTORY,https://jmp2.uk/plu-65775d29dfed030008cb3db2.m3u8$LR•IPV4•46『线路18』 +HISTORY,https://pb-m89wlp8flmjzf.akamaized.net/v1/aenetworks_modernmarvels_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•46『线路19』 +HISTORY,https://amg02333-pbs-amg02333c1-samsung-au-1253.playouts.now.amagi.tv/playlist/amg02333-pbsdistributionfast-pbshistory-samsungau/playlist.m3u8$LR•IPV4•46『线路20』 +HISTORY,https://amg02333-pbs-amg02333c1-samsung-nz-1254.playouts.now.amagi.tv/playlist/amg02333-pbsdistributionfast-pbshistory-samsungnz/playlist.m3u8$LR•IPV4•46『线路21』 +HISTORY,https://d35j504z0x2vu2.cloudfront.net/v1/master/0bc8e8376bd8417a1b6761138aa41c26c7309312/true-history/playlist.m3u8?ads.vf=G1hGexOV3sS$LR•IPV4•46『线路22』 +HISTORY,https://linear-188.frequency.stream/dist/xumo/188/hls/master/playlist.m3u8$LR•IPV4•46『线路23』 +HISTORY,https://jmp2.uk/plu-6000a6f4c3f8550008fc9b91.m3u8$LR•IPV4•46『线路24』 +HISTORY,https://dxagbr7yc4m1d.cloudfront.net/v1/aenetworks_skills_thrills_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•46『线路25』 +HISTORY,https://rpn.bozztv.com/gusa/gusa-tvshollywoohistory/index.m3u8$LR•IPV4•46『线路26』 +HISTORY,http://213.91.179.28:8000/play/a0c1$LR•IPV4•46『线路27』 +HISTORY,http://177.52.24.163/HISTORY-HD/index.m3u8$LR•IPV4•46『线路28』 +HISTORY,http://88.212.15.19/live/test_history/playlist.m3u8$LR•IPV4•46『线路29』 +HISTORY,http://82.78.243.219:45739/play/a01f/index.m3u8$LR•IPV4•46『线路30』 +HISTORY,http://206.212.244.63/91/index.m3u8$LR•IPV4•46『线路31』 +HISTORY,http://138.121.15.230:9002/HISTORY-2/index.m3u8$LR•IPV4•46『线路32』 +HISTORY,http://45.162.231.38:7779/History_2/index.m3u8$LR•IPV4•46『线路33』 +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『线路34』 +HISTORY,https://lds-timeline-rakuten.amagi.tv/playlist.m3u8$LR•IPV4•46『线路35』 +HISTORY,http://138.121.15.230:9002/HISTORY-CHANNEL/index.m3u8$LR•IPV4•46『线路36』 +HISTORY,http://45.6.4.35/HISTORY/index.m3u8$LR•IPV4•46『线路37』 +HISTORY,http://103.72.101.252:8080/live/1471.m3u8$LR•IPV4•46『线路38』 +HISTORY,http://103.154.3.101:5001/live/577.m3u8$LR•IPV4•46『线路39』 +HISTORY,https://jmp2.uk/plu-5d767b1c126c65d0a307355f.m3u8$LR•IPV4•46『线路40』 +HISTORY,https://jmp2.uk/plu-5d4af1803e7983b391d73b13.m3u8$LR•IPV4•46『线路41』 +HISTORY,https://jmp2.uk/plu-5a4d35dfa5c02e717a234f86.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# 斯诺克,https://live.ottiptv.cc/huya/880214$LR•IPV4 @@ -1427,31 +1428,31 @@ 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,http://fl2.moveonjoy.com/MLB_NETWORK/index.m3u8$LR•IPV4 -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,http://45.6.4.35/FOX_SPORT/index.m3u8$LR•IPV4•8『线路4』 -FOX Sports,https://streamvidex.qzz.io/videx/fox1usa/index.m3u8$LR•IPV4•8『线路5』 -FOX Sports,http://fl2.moveonjoy.com/FOX_Sports_1/index.m3u8$LR•IPV4•8『线路6』 -FOX Sports,http://108.181.20.255:27347/livehttpplay?channel_id=23055$LR•IPV4•8『线路7』 -FOX Sports,https://d1jzu95oc8fgt3.cloudfront.net/v1/master/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-zyqcok4bm0lgq/FOX_Sports.m3u8$LR•IPV4•8『线路8』 -NBA,https://live-manifest.production-public.tubi.io/live/553b8d5e-fd2a-4a61-bdfa-73b34c299d75/playlist.m3u8$LR•IPV4•11『线路1』 -NBA,https://jmp2.uk/plu-6792c30abc03978b9b8bb832.m3u8$LR•IPV4•11『线路2』 -NBA,https://amg00556-amg00556c3-firetv-us-6060.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•11『线路3』 -NBA,http://user.scalecdn.co:8080/live/54706135/09221986/3092.m3u8$LR•IPV4•11『线路4』 -NBA,https://t.freetv.fun/live/nba-tv.m3u8$LR•IPV4•11『线路5』 -NBA,https://t.freetv.fun/live/nba-tv-2.php$LR•IPV4•11『线路6』 -NBA,https://stream1.freetv.fun/nba-tv-7.m3u8$LR•IPV4•11『线路7』 -NBA,https://stream1.freetv.fun/nba-tv-5.m3u8$LR•IPV4•11『线路8』 -NBA,http://170.yfvodcdn.com:19980/live/nbaTV2/hls.m3u8$LR•IPV4•11『线路9』 -NBA,p3p://167.114.175.6:55331/65a587500007bc039fca3566638e69af$LR•IPV4•11『线路10』 -NBA,http://103.148.44.38:8000/play/a03m/index.m3u8$LR•IPV4•11『线路11』 -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://41.205.93.154/ESPN/index.m3u8$LR•IPV4•6『线路4』 -ESPN,http://38.96.178.201:80/live/ESPNHD/index.m3u8$LR•IPV4•6『线路5』 -ESPN,http://200.10.30.241:8000/play/a01r/index.m3u8$LR•IPV4•6『线路6』 +FOX Sports,http://fl2.moveonjoy.com/FOX_Sports_1/index.m3u8$LR•IPV4•8『线路1』 +FOX Sports,http://108.181.20.255:27347/livehttpplay?channel_id=23055$LR•IPV4•8『线路2』 +FOX Sports,https://d1jzu95oc8fgt3.cloudfront.net/v1/master/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-zyqcok4bm0lgq/FOX_Sports.m3u8$LR•IPV4•8『线路3』 +FOX Sports,https://d1jzu95oc8fgt3.cloudfront.net/FOX_Sports.m3u8$LR•IPV4•8『线路4』 +FOX Sports,https://amg02855-foxsports-amg02855c1-xumo-us-1755.playouts.now.amagi.tv/Fox-Sports-AmazonNews/playlist.m3u8$LR•IPV4•8『线路5』 +FOX Sports,https://live-manifest.production-public.tubi.io/live/6035c7fd-efff-4ec7-93dc-aa0c7a58ba47/playlist.m3u8$LR•IPV4•8『线路6』 +FOX Sports,http://45.6.4.35/FOX_SPORT/index.m3u8$LR•IPV4•8『线路7』 +FOX Sports,https://streamvidex.qzz.io/videx/fox1usa/index.m3u8$LR•IPV4•8『线路8』 +NBA,https://t.freetv.fun/live/nba-tv.m3u8$LR•IPV4•11『线路1』 +NBA,https://t.freetv.fun/live/nba-tv-2.php$LR•IPV4•11『线路2』 +NBA,https://stream1.freetv.fun/nba-tv-7.m3u8$LR•IPV4•11『线路3』 +NBA,https://stream1.freetv.fun/nba-tv-5.m3u8$LR•IPV4•11『线路4』 +NBA,http://170.yfvodcdn.com:19980/live/nbaTV2/hls.m3u8$LR•IPV4•11『线路5』 +NBA,p3p://167.114.175.6:55331/65a587500007bc039fca3566638e69af$LR•IPV4•11『线路6』 +NBA,http://103.148.44.38:8000/play/a03m/index.m3u8$LR•IPV4•11『线路7』 +NBA,https://live-manifest.production-public.tubi.io/live/553b8d5e-fd2a-4a61-bdfa-73b34c299d75/playlist.m3u8$LR•IPV4•11『线路8』 +NBA,https://jmp2.uk/plu-6792c30abc03978b9b8bb832.m3u8$LR•IPV4•11『线路9』 +NBA,https://amg00556-amg00556c3-firetv-us-6060.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•11『线路10』 +NBA,http://user.scalecdn.co:8080/live/54706135/09221986/3092.m3u8$LR•IPV4•11『线路11』 +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://200.10.30.241:8000/play/a01r/index.m3u8$LR•IPV4•6『线路3』 +ESPN,http://181.78.197.59:8000/play/a07z/index.m3u8$LR•IPV4•6『线路4』 +ESPN,http://181.78.197.59:8000/play/a081/index.m3u8$LR•IPV4•6『线路5』 +ESPN,http://181.78.197.59:8000/play/a07n/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 @@ -1483,12 +1484,12 @@ TraceSports,http://209.141.58.162:4994/proxy?url=http%3A//209.141.58.162%3A5050/ 没完没了,https://vip.ffzy-play6.com/20221129/9376_7f06747a/index.m3u8$LR•IPV4 甲方乙方,https://vip.ffzy-play6.com/20221206/10068_4bfccafe/index.m3u8$LR•IPV4 建党伟业,https://vip.ffzy-play6.com/20221019/168_f44e1477/index.m3u8$LR•IPV4 -江湖,https://vip.ffzy-play6.com/20221019/84_a64c541f/index.m3u8$LR•IPV4•6『线路1』 -江湖,https://vip.ffzy-play7.com/20221115/4682_5ffb4872/index.m3u8$LR•IPV4•6『线路2』 -江湖,https://vip.ffzy-play7.com/20230205/13419_960c8951/index.m3u8$LR•IPV4•6『线路3』 -江湖,https://vip.ffzy-play7.com/20221115/4681_38b34b56/index.m3u8$LR•IPV4•6『线路4』 -江湖,https://vip.ffzy-play.com/20221017/1755_28d3688d/index.m3u8$LR•IPV4•6『线路5』 -江湖,http://cdn.jdshipin.com:8880/huya.php?id=23865142$LR•IPV4•6『线路6』 +江湖,http://cdn.jdshipin.com:8880/huya.php?id=23865142$LR•IPV4•6『线路1』 +江湖,https://vip.ffzy-play6.com/20221019/84_a64c541f/index.m3u8$LR•IPV4•6『线路2』 +江湖,https://vip.ffzy-play7.com/20221115/4682_5ffb4872/index.m3u8$LR•IPV4•6『线路3』 +江湖,https://vip.ffzy-play7.com/20230205/13419_960c8951/index.m3u8$LR•IPV4•6『线路4』 +江湖,https://vip.ffzy-play7.com/20221115/4681_38b34b56/index.m3u8$LR•IPV4•6『线路5』 +江湖,https://vip.ffzy-play.com/20221017/1755_28d3688d/index.m3u8$LR•IPV4•6『线路6』 僵尸先生,https://vip.ffzy-play7.com/20230507/24165_799a7b4a/index.m3u8$LR•IPV4•2『线路1』 僵尸先生,https://vip.ffzy-play6.com/20221129/9451_47cd067c/index.m3u8$LR•IPV4•2『线路2』 僵尸至尊,https://vip.ffzy-play6.com/20221129/9344_44b64a1a/index.m3u8$LR•IPV4 @@ -1804,48 +1805,48 @@ 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=7bbc669eee2044d8761aa03624b105c7$LR•IPV4•43『线路1』 -纪录,https://v4-e6b1c5baf4e240fe63adbf68dda23435.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=279b026fed672d59628112a0fa829209$LR•IPV4•43『线路2』 -纪录,https://ali-m-l.cztv.com/channels/lantian/channel12/720p.m3u8$LR•IPV4•43『线路3』 -纪录,http://free.cnlive.club/channel/n3f497a4c/index.m3u8?q=1752629214236$LR•IPV4•43『线路4』 -纪录,http://free.cnlive.club/channel/2ae73b1a/index.m3u8?q=1752629214236$LR•IPV4•43『线路5』 -纪录,http://free.cnlive.club/channel/nb957a7c/index.m3u8?q=1752629214236$LR•IPV4•43『线路6』 -纪录,http://free.cnlive.club/channel/n3efbe5af/index.m3u8?q=1752629214236$LR•IPV4•43『线路7』 -纪录,http://free.cnlive.club/channel/1404dfbd/index.m3u8?q=1752629214236$LR•IPV4•43『线路8』 -纪录,http://free.cnlive.club/channel/n3287f647/index.m3u8?q=1752629214236$LR•IPV4•43『线路9』 -纪录,http://free.cnlive.club/channel/n2517f7dd/index.m3u8?q=1752629214236$LR•IPV4•43『线路10』 -纪录,http://free.cnlive.club/channel/4b914480/index.m3u8?q=1752629214236$LR•IPV4•43『线路11』 -纪录,http://free.cnlive.club/channel/6272ba2c/index.m3u8?q=1752629214236$LR•IPV4•43『线路12』 -纪录,http://free.cnlive.club/channel/24a7393c/index.m3u8?q=1752629214236$LR•IPV4•43『线路13』 -纪录,http://free.cnlive.club/channel/n75e57aab/index.m3u8?q=1752629214236$LR•IPV4•43『线路14』 -纪录,http://free.cnlive.club/channel/n7852a99f/index.m3u8?q=1752629214236$LR•IPV4•43『线路15』 -纪录,http://free.cnlive.club/channel/356e7ac6/index.m3u8?q=1752629214236$LR•IPV4•43『线路16』 -纪录,http://free.cnlive.club/channel/359a630b/index.m3u8?q=1752629214236$LR•IPV4•43『线路17』 -纪录,http://free.cnlive.club/channel/n7a0c7aec/index.m3u8?q=1752629214236$LR•IPV4•43『线路18』 -纪录,http://free.cnlive.club/channel/n6582cfc7/index.m3u8?q=1752629214236$LR•IPV4•43『线路19』 -纪录,http://free.cnlive.club/channel/n18e58008/index.m3u8?q=1752629214236$LR•IPV4•43『线路20』 -纪录,http://free.cnlive.club/channel/6c975854/index.m3u8?q=1752629214236$LR•IPV4•43『线路21』 -纪录,http://free.cnlive.club/channel/n28af27dd/index.m3u8?q=1752629214236$LR•IPV4•43『线路22』 -纪录,http://free.cnlive.club/channel/264e2d58/index.m3u8?q=1752629214236$LR•IPV4•43『线路23』 -纪录,http://free.cnlive.club/channel/2631a9ae/index.m3u8?q=1752629214236$LR•IPV4•43『线路24』 -纪录,http://ali-m-l.cztv.com/channels/lantian/channel012/1080p.m3u8$LR•IPV4•43『线路25』 -纪录,http://120.55.49.231:3095/rtp/233.50.202.25:5140$LR•IPV4•43『线路26』 -纪录,http://zwebl02.cztv.com/live/channel121080P.m3u8?auth_key=2524708799-0-0-c33efdd495bcdd2ddc42e7c408405037$LR•IPV4•43『线路27』 -纪录,http://ali-m-l.cztv.com/channels/lantian/channel12/1080p.m3u8$LR•IPV4•43『线路28』 -纪录,http://lsfb.avap.jilintv.cn/zqvk7vpj/channel/da805d8d77a24db8aaa62328eb6d874e/index.m3u8$LR•IPV4•43『线路29』 -纪录,https://rt-doc.rttv.com/dvr/rtdru/rtdru1080.m3u8$LR•IPV4•43『线路30』 -纪录,https://rt-rtd.rttv.com/dvr/rtdoc/playlist_4500Kb.m3u8$LR•IPV4•43『线路31』 +纪录,https://v4-702cae17a28d6e4f0c0002bba021d934.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=16c50a21b4dbd7f799ba43a4a3f02212$LR•IPV4•43『线路1』 +纪录,https://v4-702cae17a28d6e4f0c0002bba021d934.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=87228f9521462cf4fab49a1fe67efd25$LR•IPV4•43『线路2』 +纪录,https://rt-doc.rttv.com/dvr/rtdru/rtdru1080.m3u8$LR•IPV4•43『线路3』 +纪录,https://rt-rtd.rttv.com/dvr/rtdoc/playlist_4500Kb.m3u8$LR•IPV4•43『线路4』 +纪录,http://free.cnlive.club/channel/n3f497a4c/index.m3u8?q=1752629214236$LR•IPV4•43『线路5』 +纪录,http://free.cnlive.club/channel/2ae73b1a/index.m3u8?q=1752629214236$LR•IPV4•43『线路6』 +纪录,http://free.cnlive.club/channel/nb957a7c/index.m3u8?q=1752629214236$LR•IPV4•43『线路7』 +纪录,http://free.cnlive.club/channel/n3efbe5af/index.m3u8?q=1752629214236$LR•IPV4•43『线路8』 +纪录,http://free.cnlive.club/channel/1404dfbd/index.m3u8?q=1752629214236$LR•IPV4•43『线路9』 +纪录,http://free.cnlive.club/channel/n3287f647/index.m3u8?q=1752629214236$LR•IPV4•43『线路10』 +纪录,http://free.cnlive.club/channel/n2517f7dd/index.m3u8?q=1752629214236$LR•IPV4•43『线路11』 +纪录,http://free.cnlive.club/channel/4b914480/index.m3u8?q=1752629214236$LR•IPV4•43『线路12』 +纪录,http://free.cnlive.club/channel/6272ba2c/index.m3u8?q=1752629214236$LR•IPV4•43『线路13』 +纪录,http://free.cnlive.club/channel/24a7393c/index.m3u8?q=1752629214236$LR•IPV4•43『线路14』 +纪录,http://free.cnlive.club/channel/n75e57aab/index.m3u8?q=1752629214236$LR•IPV4•43『线路15』 +纪录,http://free.cnlive.club/channel/n7852a99f/index.m3u8?q=1752629214236$LR•IPV4•43『线路16』 +纪录,http://free.cnlive.club/channel/356e7ac6/index.m3u8?q=1752629214236$LR•IPV4•43『线路17』 +纪录,http://free.cnlive.club/channel/359a630b/index.m3u8?q=1752629214236$LR•IPV4•43『线路18』 +纪录,http://free.cnlive.club/channel/n7a0c7aec/index.m3u8?q=1752629214236$LR•IPV4•43『线路19』 +纪录,http://free.cnlive.club/channel/n6582cfc7/index.m3u8?q=1752629214236$LR•IPV4•43『线路20』 +纪录,http://free.cnlive.club/channel/n18e58008/index.m3u8?q=1752629214236$LR•IPV4•43『线路21』 +纪录,http://free.cnlive.club/channel/6c975854/index.m3u8?q=1752629214236$LR•IPV4•43『线路22』 +纪录,http://free.cnlive.club/channel/n28af27dd/index.m3u8?q=1752629214236$LR•IPV4•43『线路23』 +纪录,http://free.cnlive.club/channel/264e2d58/index.m3u8?q=1752629214236$LR•IPV4•43『线路24』 +纪录,http://free.cnlive.club/channel/2631a9ae/index.m3u8?q=1752629214236$LR•IPV4•43『线路25』 +纪录,https://ali-m-l.cztv.com/channels/lantian/channel12/720p.m3u8$LR•IPV4•43『线路26』 +纪录,http://ali-m-l.cztv.com/channels/lantian/channel012/1080p.m3u8$LR•IPV4•43『线路27』 +纪录,http://120.55.49.231:3095/rtp/233.50.202.25:5140$LR•IPV4•43『线路28』 +纪录,http://zwebl02.cztv.com/live/channel121080P.m3u8?auth_key=2524708799-0-0-c33efdd495bcdd2ddc42e7c408405037$LR•IPV4•43『线路29』 +纪录,http://ali-m-l.cztv.com/channels/lantian/channel12/1080p.m3u8$LR•IPV4•43『线路30』 +纪录,http://lsfb.avap.jilintv.cn/zqvk7vpj/channel/da805d8d77a24db8aaa62328eb6d874e/index.m3u8$LR•IPV4•43『线路31』 纪录,p3p://167.114.175.6:55331/623baf7a0004e5d79c2047cd46107be2$LR•IPV4•43『线路32』 纪录,http://23.237.104.106:8080/USA_DISCOVERY/index.m3u8$LR•IPV4•43『线路33』 纪录,https://jmp2.uk/plu-6400f731d200410008f9b339.m3u8$LR•IPV4•43『线路34』 纪录,https://svs.itworkscdn.net/asharqdiscoverylive/asharqd.smil/playlist_dvr.m3u8$LR•IPV4•43『线路35』 纪录,p3p://167.114.175.6:55331/62c9a44500000cd3c69dc74b77c62c82$LR•IPV4•43『线路36』 -纪录,http://23.237.104.106:8080/USA_MTV_LIVE/index.m3u8$LR•IPV4•43『线路37』 -纪录,http://108.181.20.255:27347/livehttpplay?channel_id=23081$LR•IPV4•43『线路38』 +纪录,http://108.181.20.255:27347/livehttpplay?channel_id=23081$LR•IPV4•43『线路37』 +纪录,http://23.237.104.106:8080/USA_MTV_LIVE/index.m3u8$LR•IPV4•43『线路38』 纪录,p3p://167.114.175.6:55331/5fe16de700083ba97787607e74d90cb5$LR•IPV4•43『线路39』 -纪录,https://i.mjh.nz/.r/sky-hgtv.m3u8$LR•IPV4•43『线路40』 -纪录,p3p://167.114.175.6:55331/644518fd0002d5953f21bedc56b6465f$LR•IPV4•43『线路41』 -纪录,http://108.181.20.255:27347/livehttpplay?channel_id=23097$LR•IPV4•43『线路42』 +纪录,p3p://167.114.175.6:55331/644518fd0002d5953f21bedc56b6465f$LR•IPV4•43『线路40』 +纪录,http://108.181.20.255:27347/livehttpplay?channel_id=23097$LR•IPV4•43『线路41』 +纪录,https://i.mjh.nz/.r/sky-hgtv.m3u8$LR•IPV4•43『线路42』 纪录,p3p://167.114.175.6:55331/61e4f963000c710c55474e4e1e2273d9$LR•IPV4•43『线路43』 💓儿童专享,#genre# @@ -1858,18 +1859,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•27『线路1』 -儿童,http://free.cnlive.club/channel/n59903092/index.m3u8?q=1752629214236$LR•IPV4•27『线路2』 -儿童,http://free.cnlive.club/channel/33dc4490/index.m3u8?q=1752629214236$LR•IPV4•27『线路3』 -儿童,http://free.cnlive.club/channel/n149d9627/index.m3u8?q=1752629214236$LR•IPV4•27『线路4』 -儿童,http://free.cnlive.club/channel/5fe8f622/index.m3u8?q=1752629214236$LR•IPV4•27『线路5』 -儿童,http://free.cnlive.club/channel/7af110c4/index.m3u8?q=1752629214236$LR•IPV4•27『线路6』 -儿童,http://free.cnlive.club/channel/18a1ad0/index.m3u8?q=1752629214236$LR•IPV4•27『线路7』 -儿童,http://free.cnlive.club/channel/n70dedb3e/index.m3u8?q=1752629214236$LR•IPV4•27『线路8』 -儿童,http://free.cnlive.club/channel/n6567f5b8/index.m3u8?q=1752629214236$LR•IPV4•27『线路9』 -儿童,http://free.cnlive.club/channel/n6a165737/index.m3u8?q=1752629214236$LR•IPV4•27『线路10』 -儿童,http://free.cnlive.club/channel/n75fc9ff7/index.m3u8?q=1752629214236$LR•IPV4•27『线路11』 -儿童,p3p://167.114.175.6:55331/6233e0ca0000ca8f7da159a76b755519$LR•IPV4•27『线路12』 +儿童,http://free.cnlive.club/channel/n59903092/index.m3u8?q=1752629214236$LR•IPV4•27『线路1』 +儿童,http://free.cnlive.club/channel/33dc4490/index.m3u8?q=1752629214236$LR•IPV4•27『线路2』 +儿童,http://free.cnlive.club/channel/n149d9627/index.m3u8?q=1752629214236$LR•IPV4•27『线路3』 +儿童,http://free.cnlive.club/channel/5fe8f622/index.m3u8?q=1752629214236$LR•IPV4•27『线路4』 +儿童,http://free.cnlive.club/channel/7af110c4/index.m3u8?q=1752629214236$LR•IPV4•27『线路5』 +儿童,http://free.cnlive.club/channel/18a1ad0/index.m3u8?q=1752629214236$LR•IPV4•27『线路6』 +儿童,http://free.cnlive.club/channel/n70dedb3e/index.m3u8?q=1752629214236$LR•IPV4•27『线路7』 +儿童,http://free.cnlive.club/channel/n6567f5b8/index.m3u8?q=1752629214236$LR•IPV4•27『线路8』 +儿童,http://free.cnlive.club/channel/n6a165737/index.m3u8?q=1752629214236$LR•IPV4•27『线路9』 +儿童,http://free.cnlive.club/channel/n75fc9ff7/index.m3u8?q=1752629214236$LR•IPV4•27『线路10』 +儿童,p3p://167.114.175.6:55331/6233e0ca0000ca8f7da159a76b755519$LR•IPV4•27『线路11』 +儿童,http://scgctvshow.sctv.com/hdlive/sctv7/index.m3u8$LR•IPV4•27『线路12』 儿童,https://cdn10jtedge.indihometv.com/atm/DASH/cbeebies/manifest.mpd$LR•IPV4•27『线路13』 儿童,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:cbeebies_hd/iptv_hd_abr_v1.mpd$LR•IPV4•27『线路14』 儿童,http://193.46.58.239:8080/CbeebiesHD/index.m3u8$LR•IPV4•27『线路15』 @@ -1881,15 +1882,15 @@ FanpopTV,https://streaming-cl.sh1ny.space/memfs/e16d2f72-70b5-4bf5-b9c5-107b6390 儿童,https://jmp2.uk/plu-60fb01a24795a6000762fe83.m3u8$LR•IPV4•27『线路21』 儿童,https://trs1.aynaott.com/discoverykids/index.m3u8$LR•IPV4•27『线路22』 儿童,https://627bb251f23c7.streamlock.net:444/ExtremaKids/ExtremaKids/playlist.m3u8$LR•IPV4•27『线路23』 -儿童,https://amg02159-kcglobal-amg02159c1-samsung-in-521.playouts.now.amagi.tv/playlist/amg02159-kcglobal-animax-samsungin/playlist.m3u8$LR•IPV4•27『线路24』 -儿童,p3p://167.114.175.6:55331/6506d1a00000a99a33d7555a4b747caa$LR•IPV4•27『线路25』 -儿童,p3p://167.114.175.6:55331/61e0f9f0000ec6db45a9e87848424184$LR•IPV4•27『线路26』 +儿童,p3p://167.114.175.6:55331/6506d1a00000a99a33d7555a4b747caa$LR•IPV4•27『线路24』 +儿童,p3p://167.114.175.6:55331/61e0f9f0000ec6db45a9e87848424184$LR•IPV4•27『线路25』 +儿童,https://amg02159-kcglobal-amg02159c1-samsung-in-521.playouts.now.amagi.tv/playlist/amg02159-kcglobal-animax-samsungin/playlist.m3u8$LR•IPV4•27『线路26』 儿童,p3p://167.114.175.6:55331/64bea3f00002bdf919e6522520650b26$LR•IPV4•27『线路27』 🍹定制台☕️,#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 @@ -1937,10 +1938,10 @@ 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://92.36.202.5:10001/play/a01o$LR•IPV4•4『线路1』 -Star Movies,http://149.71.34.166:8000/play/a01f/index.m3u8$LR•IPV4•4『线路2』 -Star Movies,http://149.71.34.166:8000/play/a01g/index.m3u8$LR•IPV4•4『线路3』 -Star Movies,p3p://167.114.175.6:55331/6506c5e500027c7f33a9834b5d937568$LR•IPV4•4『线路4』 +Star Movies,p3p://167.114.175.6:55331/6506c5e500027c7f33a9834b5d937568$LR•IPV4•4『线路1』 +Star Movies,http://92.36.202.5:10001/play/a01o$LR•IPV4•4『线路2』 +Star Movies,http://149.71.34.166:8000/play/a01f/index.m3u8$LR•IPV4•4『线路3』 +Star Movies,http://149.71.34.166:8000/play/a01g/index.m3u8$LR•IPV4•4『线路4』 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 @@ -1957,8 +1958,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 @@ -1978,57 +1979,57 @@ 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•15『线路1』 -Z,http://s1.media-planet.sk/live/novezamky/BratuMarian.m3u8$LR•IPV4•15『线路2』 -Z,https://d3s7x6kmqcnb6b.cloudfront.net/d/distro001a/CUXB534IAMTJM7Z4BKKS/hls3/now,-1m/m.m3u8?ads.vf=0RN164SO2bG$LR•IPV4•15『线路3』 -Z,https://d3s7x6kmqcnb6b.cloudfront.net/d/distro001a/8WOSAE6HHWJY8KP8BW2C/hls3/now,-1m/m.m3u8?ads.vf=7-VUi572FgK$LR•IPV4•15『线路4』 -Z,https://d3s7x6kmqcnb6b.cloudfront.net/d/distro001a/P6T1SCG4XU9MM36TQSB5/hls3/now,-1m/m.m3u8?ads.vf=4TlF3ABNLHW$LR•IPV4•15『线路5』 -Z,https://jmp2.uk/plu-68e8fd7c3ede4398bc69af93.m3u8$LR•IPV4•15『线路6』 -Z,https://d39g1vxj2ef6in.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/master.m3u8?ads.xumo_channelId=88883103$LR•IPV4•15『线路7』 -Z,https://amg02393-awpg-amg02393c3-rakuten-uk-2462.playouts.now.amagi.tv/playlist/amg02393-awpg-leszamours-rakutenuk/playlist.m3u8$LR•IPV4•15『线路8』 -Z,https://jmp2.uk/plu-652d0b756208700008d758ad.m3u8$LR•IPV4•15『线路9』 -Z,https://stream.ztv.zp.ua/hls/live.m3u8$LR•IPV4•15『线路10』 -Z,https://jmp2.uk/plu-66b3af48d2d50d00083d6936.m3u8$LR•IPV4•15『线路11』 -Z,https://d1hz1p2gea2zy4.cloudfront.net/live/rmgtv/RMG-TRENDSZFR-LIVE/index.m3u8$LR•IPV4•15『线路12』 -Z,https://d1hz1p2gea2zy4.cloudfront.net/live/rmgtv/RMG-TRENDSZNL-LIVE/index.m3u8$LR•IPV4•15『线路13』 -Z,p3p://167.114.175.6:55331/64c7ce3f000afa423db36d3f378c386d$LR•IPV4•15『线路14』 -Z,http://zbbf2.ahbztv.com/live/418.m3u8$LR•IPV4•15『线路15』 +Z,p3p://167.114.175.6:55331/64c7ce3f000afa423db36d3f378c386d$LR•IPV4•15『线路1』 +Z,http://zbbf2.ahbztv.com/live/418.m3u8$LR•IPV4•15『线路2』 +Z,https://live.artidijitalmedya.com/artidijital_kanalz/kanalz/playlist.m3u8$LR•IPV4•15『线路3』 +Z,http://s1.media-planet.sk/live/novezamky/BratuMarian.m3u8$LR•IPV4•15『线路4』 +Z,https://d3s7x6kmqcnb6b.cloudfront.net/d/distro001a/CUXB534IAMTJM7Z4BKKS/hls3/now,-1m/m.m3u8?ads.vf=0RN164SO2bG$LR•IPV4•15『线路5』 +Z,https://d3s7x6kmqcnb6b.cloudfront.net/d/distro001a/8WOSAE6HHWJY8KP8BW2C/hls3/now,-1m/m.m3u8?ads.vf=7-VUi572FgK$LR•IPV4•15『线路6』 +Z,https://d3s7x6kmqcnb6b.cloudfront.net/d/distro001a/P6T1SCG4XU9MM36TQSB5/hls3/now,-1m/m.m3u8?ads.vf=4TlF3ABNLHW$LR•IPV4•15『线路7』 +Z,https://jmp2.uk/plu-68e8fd7c3ede4398bc69af93.m3u8$LR•IPV4•15『线路8』 +Z,https://d39g1vxj2ef6in.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/master.m3u8?ads.xumo_channelId=88883103$LR•IPV4•15『线路9』 +Z,https://amg02393-awpg-amg02393c3-rakuten-uk-2462.playouts.now.amagi.tv/playlist/amg02393-awpg-leszamours-rakutenuk/playlist.m3u8$LR•IPV4•15『线路10』 +Z,https://jmp2.uk/plu-652d0b756208700008d758ad.m3u8$LR•IPV4•15『线路11』 +Z,https://stream.ztv.zp.ua/hls/live.m3u8$LR•IPV4•15『线路12』 +Z,https://jmp2.uk/plu-66b3af48d2d50d00083d6936.m3u8$LR•IPV4•15『线路13』 +Z,https://d1hz1p2gea2zy4.cloudfront.net/live/rmgtv/RMG-TRENDSZFR-LIVE/index.m3u8$LR•IPV4•15『线路14』 +Z,https://d1hz1p2gea2zy4.cloudfront.net/live/rmgtv/RMG-TRENDSZNL-LIVE/index.m3u8$LR•IPV4•15『线路15』 博斯无限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•33『线路1』 HITS,https://9f8e2ffcd87f4c469be7194e48f84874.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-802-UK-SONYONECOMEDYHITS-LG_UK/playlist.m3u8$LR•IPV4•33『线路2』 -HITS,https://webtvstream.bhtelecom.ba/hls7/filmbox_premium.m3u8$LR•IPV4•33『线路3』 -HITS,http://88.212.15.19/live/test_film_boxpremium_hd_hevc/playlist.m3u8$LR•IPV4•33『线路4』 -HITS,http://46.149.191.217:9005/play/a01x$LR•IPV4•33『线路5』 -HITS,https://cdn10jtedge.indihometv.com/atm/DASH/hitsmovie/manifest.mpd$LR•IPV4•33『线路6』 -HITS,https://5098a8b860504a3690fd2e7c0a18d68f.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-817-FR-SONYONEHITSACTION-LG_FR/playlist.m3u8$LR•IPV4•33『线路7』 -HITS,https://7aa9671895264ec9a384dfed1b992171.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-818-FR-SONYONEHITSCOMDIE-LG_FR/playlist.m3u8$LR•IPV4•33『线路8』 -HITS,https://cdn10jtedge.indihometv.com/atm/DASH/hits/manifest.mpd$LR•IPV4•33『线路9』 -HITS,https://d3s7x6kmqcnb6b.cloudfront.net/d/distro001a/MH8JAMWTLW2AQV5RA55S/hls3/now,-1m/m.m3u8?ads.vf=TGt7I6yRWZC$LR•IPV4•33『线路10』 -HITS,https://stream.ads.ottera.tv/playlist.m3u8?network_id=1058$LR•IPV4•33『线路11』 -HITS,https://mumt03.tangotv.in/CLASSICHITS/index.m3u8$LR•IPV4•33『线路12』 -HITS,https://mumt02.tangotv.in/EVERGREENHITS/index.m3u8$LR•IPV4•33『线路13』 -HITS,https://mumt01.tangotv.in/HINDIHITS/index.m3u8$LR•IPV4•33『线路14』 -HITS,https://d3s7x6kmqcnb6b.cloudfront.net/d/distro001a/G7RPZJDZ6V3CRIAWTNFU/hls3/now,-1m/m.m3u8?ads.vf=vc24NGfvvqe$LR•IPV4•33『线路15』 -HITS,https://lotus.stingray.com/manifest/ose-237ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•33『线路16』 -HITS,https://d2tuyivcrvbj81.cloudfront.net/XITE_Christian_Hits.m3u8$LR•IPV4•33『线路17』 -HITS,http://31.148.48.15/Bridge_TV_Dance/index.m3u8$LR•IPV4•33『线路18』 -HITS,http://cm.hostlagarto.com:8081/hits360tv/hits360HD.myStream/playlist.m3u8$LR•IPV4•33『线路19』 -HITS,http://88.212.15.19/live/mb_hits/index.m3u8$LR•IPV4•33『线路20』 -HITS,https://test.946985.filegear-sg.me/proxy/a23981548880f405$LR•IPV4•33『线路21』 -HITS,https://stream.ottlive.co.in/punjabihits/index.m3u8$LR•IPV4•33『线路22』 -HITS,https://lotus.stingray.com/manifest/ose-214ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•33『线路23』 -HITS,https://d39g1vxj2ef6in.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/master.m3u8?ads.xumo_channelId=88883053$LR•IPV4•33『线路24』 -HITS,https://lotus.stingray.com/manifest/ose-155ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•33『线路25』 -HITS,https://d39g1vxj2ef6in.cloudfront.net/v1/manifest/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/54947915-6504-4548-aaef-eabd451f8607/1.m3u8$LR•IPV4•33『线路26』 -HITS,https://vglivessai.akamaized.net/sg/v1/master/611d79b11b77e2f571934fd80ca1413453772ac7/e11b0319-52e8-4190-ab03-3931cc68eac9/index.m3u8$LR•IPV4•33『线路27』 -HITS,https://d726x48n2pd5h.cloudfront.net/XITE_Hits.m3u8$LR•IPV4•33『线路28』 -HITS,https://d726x48n2pd5h.cloudfront.net/v1/master/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-skxr1pazhltvp/XITE_Hits.m3u8$LR•IPV4•33『线路29』 -HITS,http://37.27.111.214:8080/live/28/hls.m3u8$LR•IPV4•33『线路30』 -HITS,p3p://167.114.175.6:55331/6233e648000735057db6cf734adf440d$LR•IPV4•33『线路31』 -HITS,http://108.181.20.255:27347/livehttpplay?channel_id=23074$LR•IPV4•33『线路32』 -HITS,http://108.181.20.255:27347/livehttpplay?channel_id=23011$LR•IPV4•33『线路33』 +HITS,http://37.27.111.214:8080/live/28/hls.m3u8$LR•IPV4•33『线路3』 +HITS,p3p://167.114.175.6:55331/6233e648000735057db6cf734adf440d$LR•IPV4•33『线路4』 +HITS,http://108.181.20.255:27347/livehttpplay?channel_id=23074$LR•IPV4•33『线路5』 +HITS,http://108.181.20.255:27347/livehttpplay?channel_id=23011$LR•IPV4•33『线路6』 +HITS,https://webtvstream.bhtelecom.ba/hls7/filmbox_premium.m3u8$LR•IPV4•33『线路7』 +HITS,http://88.212.15.19/live/test_film_boxpremium_hd_hevc/playlist.m3u8$LR•IPV4•33『线路8』 +HITS,http://46.149.191.217:9005/play/a01x$LR•IPV4•33『线路9』 +HITS,https://cdn10jtedge.indihometv.com/atm/DASH/hitsmovie/manifest.mpd$LR•IPV4•33『线路10』 +HITS,https://5098a8b860504a3690fd2e7c0a18d68f.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-817-FR-SONYONEHITSACTION-LG_FR/playlist.m3u8$LR•IPV4•33『线路11』 +HITS,https://7aa9671895264ec9a384dfed1b992171.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-818-FR-SONYONEHITSCOMDIE-LG_FR/playlist.m3u8$LR•IPV4•33『线路12』 +HITS,https://cdn10jtedge.indihometv.com/atm/DASH/hits/manifest.mpd$LR•IPV4•33『线路13』 +HITS,https://d3s7x6kmqcnb6b.cloudfront.net/d/distro001a/MH8JAMWTLW2AQV5RA55S/hls3/now,-1m/m.m3u8?ads.vf=TGt7I6yRWZC$LR•IPV4•33『线路14』 +HITS,https://stream.ads.ottera.tv/playlist.m3u8?network_id=1058$LR•IPV4•33『线路15』 +HITS,https://mumt03.tangotv.in/CLASSICHITS/index.m3u8$LR•IPV4•33『线路16』 +HITS,https://mumt02.tangotv.in/EVERGREENHITS/index.m3u8$LR•IPV4•33『线路17』 +HITS,https://mumt01.tangotv.in/HINDIHITS/index.m3u8$LR•IPV4•33『线路18』 +HITS,https://d3s7x6kmqcnb6b.cloudfront.net/d/distro001a/G7RPZJDZ6V3CRIAWTNFU/hls3/now,-1m/m.m3u8?ads.vf=vc24NGfvvqe$LR•IPV4•33『线路19』 +HITS,https://lotus.stingray.com/manifest/ose-237ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•33『线路20』 +HITS,https://d2tuyivcrvbj81.cloudfront.net/XITE_Christian_Hits.m3u8$LR•IPV4•33『线路21』 +HITS,http://31.148.48.15/Bridge_TV_Dance/index.m3u8$LR•IPV4•33『线路22』 +HITS,http://cm.hostlagarto.com:8081/hits360tv/hits360HD.myStream/playlist.m3u8$LR•IPV4•33『线路23』 +HITS,http://88.212.15.19/live/mb_hits/index.m3u8$LR•IPV4•33『线路24』 +HITS,https://test.946985.filegear-sg.me/proxy/a23981548880f405$LR•IPV4•33『线路25』 +HITS,https://stream.ottlive.co.in/punjabihits/index.m3u8$LR•IPV4•33『线路26』 +HITS,https://lotus.stingray.com/manifest/ose-214ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•33『线路27』 +HITS,https://d39g1vxj2ef6in.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/master.m3u8?ads.xumo_channelId=88883053$LR•IPV4•33『线路28』 +HITS,https://lotus.stingray.com/manifest/ose-155ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•33『线路29』 +HITS,https://d39g1vxj2ef6in.cloudfront.net/v1/manifest/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/54947915-6504-4548-aaef-eabd451f8607/1.m3u8$LR•IPV4•33『线路30』 +HITS,https://vglivessai.akamaized.net/sg/v1/master/611d79b11b77e2f571934fd80ca1413453772ac7/e11b0319-52e8-4190-ab03-3931cc68eac9/index.m3u8$LR•IPV4•33『线路31』 +HITS,https://d726x48n2pd5h.cloudfront.net/XITE_Hits.m3u8$LR•IPV4•33『线路32』 +HITS,https://d726x48n2pd5h.cloudfront.net/v1/master/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-skxr1pazhltvp/XITE_Hits.m3u8$LR•IPV4•33『线路33』 探索亚洲,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 @@ -2064,9 +2065,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•4『线路1』 @@ -2084,8 +2085,8 @@ Boomerang,http://23.237.104.106:8080/USA_BOOMERANG/index.m3u8$LR•IPV4•2『 原住民电视,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 @@ -2094,12 +2095,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 @@ -2109,14 +2110,14 @@ 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•8『线路1』 -Red Bull TV,https://rbmn-live.akamaized.net/hls/live/590964/BoRB-AT/master.m3u8$LR•IPV4•8『线路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•8『线路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•8『线路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•8『线路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•8『线路6』 -Red Bull TV,http://rbmn-live.akamaized.net/hls/live/590964/BoRB-AT/master_6660.m3u8$LR•IPV4•8『线路7』 -Red Bull TV,https://rbmn-live.akamaized.net/hls/live/590964/BoRB-AT/master_1660.m3u8$LR•IPV4•8『线路8』 +Red Bull TV,http://rbmn-live.akamaized.net/hls/live/590964/BoRB-AT/master_6660.m3u8$LR•IPV4•8『线路1』 +Red Bull TV,https://rbmn-live.akamaized.net/hls/live/590964/BoRB-AT/master_1660.m3u8$LR•IPV4•8『线路2』 +Red Bull TV,https://3ea22335.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWdiX1JlZEJ1bGxUVl9ITFM/playlist.m3u8$LR•IPV4•8『线路3』 +Red Bull TV,https://rbmn-live.akamaized.net/hls/live/590964/BoRB-AT/master.m3u8$LR•IPV4•8『线路4』 +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•8『线路5』 +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•8『线路6』 +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•8『线路7』 +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•8『线路8』 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』 @@ -2141,265 +2142,265 @@ Loupe 4K,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4726&tk=f6cc1e0a0e1a$LR•IP CCTV兵器,http://38.75.136.137:98/gslb/dsdqpub/gfjs.m3u8?auth=testpub$LR•IPV4•3『线路1』 CCTV兵器,http://38.75.136.137:98/gslb/dsdqpub/bqkj.m3u8?auth=testpub$LR•IPV4•3『线路2』 CCTV兵器,http://60.10.139.113:8801/hls/72/index.m3u8$LR•IPV4•3『线路3』 -CCTV,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1783738800-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-51e8b9f9c94dcce18451a546b462beb1&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•225『线路1』 +CCTV,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1783746000-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-02e028da2bbd51e65163edbb07cd365e&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•225『线路1』 CCTV,http://183.196.25.171:808/hls/77/index.m3u8$LR•IPV4•225『线路2』 CCTV,http://183.196.25.171:808/hls/11/index.m3u8$LR•IPV4•225『线路3』 CCTV,https://piccpndks.v.kcdnvip.com/audio/cctv16_2/index.m3u8$LR•IPV4•225『线路4』 CCTV,http://183.196.25.171:808/hls/93/index.m3u8$LR•IPV4•225『线路5』 CCTV,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1783666800-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-96a1fc3c6c225c78e9026808895bf05a&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•225『线路6』 -CCTV,http://69.30.245.50/live/cctv6.m3u8$LR•IPV4•225『线路7』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/fyjc.m3u8?auth=testpub$LR•IPV4•225『线路8』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/dyjc.m3u8?auth=testpub$LR•IPV4•225『线路9』 -CCTV,http://69.30.245.50/live/cctv1.m3u8$LR•IPV4•225『线路10』 -CCTV,http://74.91.26.218:82/live/cctv1hd.m3u8$LR•IPV4•225『线路11』 -CCTV,https://global.cgtn.cicc.media.caton.cloud/master/cgtn-america.m3u8$LR•IPV4•225『线路12』 -CCTV,http://74.91.26.218:82/live/cctv4hd.m3u8$LR•IPV4•225『线路13』 -CCTV,https://dash2.antik.sk/live/test_cctv_tizen/playlist.m3u8$LR•IPV4•225『线路14』 -CCTV,http://go.bkpcp.top/mg/cctv13$LR•IPV4•225『线路15』 -CCTV,https://cdn3.163189.xyz/163189/cctv13$LR•IPV4•225『线路16』 -CCTV,http://74.91.26.218:82/live/cctv8hd.m3u8$LR•IPV4•225『线路17』 -CCTV,http://74.91.26.218:82/live/cctv3hd.m3u8$LR•IPV4•225『线路18』 -CCTV,http://192.151.150.154/live/cctv8k.m3u8$LR•IPV4•225『线路19』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/ysjp.m3u8?auth=testpub$LR•IPV4•225『线路20』 -CCTV,https://solo.disfrutaenlared.com:1936/redcctv/redcctv/playlist.m3u8$LR•IPV4•225『线路21』 -CCTV,http://74.91.26.218:82/live/cctv14hd.m3u8$LR•IPV4•225『线路22』 -CCTV,http://74.91.26.218:82/live/cctv11hd.m3u8$LR•IPV4•225『线路23』 -CCTV,https://xykt-fix.github.io/play/a02e/index.m3u8$LR•IPV4•225『线路24』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/fyyy.m3u8?auth=testpub$LR•IPV4•225『线路25』 -CCTV,http://74.91.26.218:82/live/cctv12hd.m3u8$LR•IPV4•225『线路26』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/wsjk.m3u8?auth=testpub$LR•IPV4•225『线路27』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/nxss.m3u8?auth=testpub$LR•IPV4•225『线路28』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/hjjc.m3u8?auth=testpub$LR•IPV4•225『线路29』 -CCTV,http://74.91.26.218:82/live/cctv16hd.m3u8$LR•IPV4•225『线路30』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/ystq.m3u8?auth=testpub$LR•IPV4•225『线路31』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/gefwq.m3u8?auth=testpub$LR•IPV4•225『线路32』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/fyzq.m3u8?auth=testpub$LR•IPV4•225『线路33』 -CCTV,http://74.91.26.218:82/live/cctv2hd.m3u8$LR•IPV4•225『线路34』 -CCTV,https://xykt-fix.github.io/Y77.m3u8$LR•IPV4•225『线路35』 -CCTV,http://74.91.26.218:82/live/cctv7hd.m3u8$LR•IPV4•225『线路36』 -CCTV,http://74.91.26.218:82/live/cctv10hd.m3u8$LR•IPV4•225『线路37』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/sjdl.m3u8?auth=testpub$LR•IPV4•225『线路38』 -CCTV,http://74.91.26.218:82/live/cctv17hd.m3u8$LR•IPV4•225『线路39』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226895/1.m3u8?$LR•IPV6•225『线路40』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226893/1.m3u8?$LR•IPV6•225『线路41』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226471/1.m3u8?$LR•IPV6•225『线路42』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226335/1.m3u8?$LR•IPV6•225『线路43』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226469/1.m3u8?$LR•IPV6•225『线路44』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226468/1.m3u8?$LR•IPV6•225『线路45』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226946/1.m3u8?$LR•IPV6•225『线路46』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226485/1.m3u8?$LR•IPV6•225『线路47』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226944/1.m3u8?$LR•IPV6•225『线路48』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226937/1.m3u8?$LR•IPV6•225『线路49』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226334/1.m3u8?$LR•IPV6•225『线路50』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226942/1.m3u8?$LR•IPV6•225『线路51』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226316/1.m3u8?$LR•IPV6•225『线路52』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226947/1.m3u8?$LR•IPV6•225『线路53』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226333/1.m3u8?$LR•IPV6•225『线路54』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227002/1.m3u8?$LR•IPV6•225『线路55』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226318/1.m3u8?$LR•IPV6•225『线路56』 -CCTV,http://192.151.150.154/live/cctv1hd.m3u8$LR•IPV4•225『线路57』 -CCTV,http://69.30.245.50/live/cctv2.m3u8$LR•IPV4•225『线路58』 -CCTV,http://173.208.212.130:8181/720p/cctv2.m3u8$LR•IPV4•225『线路59』 -CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv3hd$LR•IPV4•225『线路60』 -CCTV,http://69.30.245.50/live/cctv4.m3u8$LR•IPV4•225『线路61』 -CCTV,http://207.56.13.146:81/cdnlive/cctv4.m3u8$LR•IPV4•225『线路62』 -CCTV,http://198.204.240.250:82/live/cctv6.m3u8$LR•IPV4•225『线路63』 -CCTV,http://173.208.212.130:8181/1080p/cctv6.m3u8$LR•IPV4•225『线路64』 -CCTV,http://173.208.212.130:8181/720p/cctv6.m3u8$LR•IPV4•225『线路65』 -CCTV,http://192.151.150.154/live/cctv7hd.m3u8$LR•IPV4•225『线路66』 -CCTV,http://38.75.136.137:98/gslb/dsdqbv/cctv7hd.m3u8?auth=test20251009$LR•IPV4•225『线路67』 -CCTV,http://207.56.13.146:81/cdnlive/cctv7.m3u8$LR•IPV4•225『线路68』 -CCTV,http://207.56.13.146:81/cdnlive/cctv8.m3u8$LR•IPV4•225『线路69』 -CCTV,http://69.30.245.50/live/cctv8.m3u8$LR•IPV4•225『线路70』 -CCTV,http://173.208.212.130:8181/720p/cctv8.m3u8$LR•IPV4•225『线路71』 -CCTV,http://222.223.41.27:8888/hls/10/index.m3u8$LR•IPV4•225『线路72』 -CCTV,https://hwapi.yntv.net/ew265l/z1z6s5.m3u8$LR•IPV4•225『线路73』 -CCTV,http://69.30.245.50/live/cctv10.m3u8$LR•IPV4•225『线路74』 -CCTV,http://207.56.13.146:81/cdnlive/cctv11.m3u8$LR•IPV4•225『线路75』 -CCTV,http://123.163.114.168:9901/tsfile/live/0013_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•225『线路76』 -CCTV,http://116.128.243.121:85/tsfile/live/0013_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•225『线路77』 -CCTV,https://event.pull.hebtv.com/jishi/cp1.m3u8$LR•IPV4•225『线路78』 -CCTV,https://event.pull.hebtv.com/jishi/cp2.m3u8$LR•IPV4•225『线路79』 -CCTV,http://38.75.136.137:98/gslb/dsdqbv/cctv14hd.m3u8?auth=test20251009$LR•IPV4•225『线路80』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/cctv14hd.m3u8?auth=testpub$LR•IPV4•225『线路81』 -CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv14hd$LR•IPV4•225『线路82』 -CCTV,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1783731600-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-8abff3eb62a4395bc0145a840cc6a6fc&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•225『线路83』 -CCTV,https://shcm-stream-cf1.stream.264788.xyz/cms001/ch00000090990000001620/index.m3u8?streamid=8a034b40397504e25b3775c772237996&streamkey=01vY5fRxC8VyKg4oq30vfikHXTCAKySLP29l6OG91kQlzDttHgzNLkUw5kivm3PfNsVHJv5FgdsPBYFYI2IWpt7tfRCuFHqLT2pvX67ubMds8jl2DHtvOh0&token=1775754349-4f33f4f84a4abeba-0-91687dc8c9325092efa1d00f330d2710$LR•IPV4•225『线路84』 -CCTV,https://epg.pw/stream/ca9c1cd4b97fb824cedd7fedfd0c7a950afdd7f00751cfbb7c2d89831d7746a5.m3u8$LR•IPV4•225『线路85』 -CCTV,https://epg.pw/stream/6d7bf281e3d739806a73f5373acaa6e01988ec9739f5ac1355ce54b47a928472.m3u8$LR•IPV4•225『线路86』 -CCTV,https://epg.pw/stream/ac8062ec9484078061d3bef507c15a423ac57ae4144e3fcc4b0a198dd420f911.m3u8$LR•IPV4•225『线路87』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/dszn.m3u8?auth=testpub$LR•IPV4•225『线路88』 -CCTV,http://111.61.236.247:9081/hls/58/index.m3u8$LR•IPV4•225『线路89』 -CCTV,http://111.61.236.247:9081/hls/62/index.m3u8$LR•IPV4•225『线路90』 -CCTV,http://xc.mfykeke.top:35455/nptv/dyjc.m3u8$LR•IPV4•225『线路91』 -CCTV,http://xc.mfykeke.top:35455/nptv/fyjc.m3u8$LR•IPV4•225『线路92』 -CCTV,http://xc.mfykeke.top:35455/nptv/hjjc.m3u8$LR•IPV4•225『线路93』 -CCTV,http://www.tszhgjj.cn:7000/rtp/239.253.93.249:6427$LR•IPV4•225『线路94』 -CCTV,http://fn.tmde.top:35455/nptv/cctv4k.m3u8$LR•IPV4•225『线路95』 -CCTV,http://fn.tmde.top:35455/nptv/cctv8k.m3u8$LR•IPV4•225『线路96』 -CCTV,http://xc.mfykeke.top:35455/nptv/cctv4k.m3u8$LR•IPV4•225『线路97』 -CCTV,http://xc.mfykeke.top:35455/nptv/cctv8k.m3u8$LR•IPV4•225『线路98』 -CCTV,http://60.10.139.113:8801/hls/64/index.m3u8$LR•IPV4•225『线路99』 -CCTV,http://60.10.139.113:8801/hls/65/index.m3u8$LR•IPV4•225『线路100』 -CCTV,http://60.10.139.113:8801/hls/66/index.m3u8$LR•IPV4•225『线路101』 -CCTV,http://60.10.139.113:8801/hls/67/index.m3u8$LR•IPV4•225『线路102』 -CCTV,http://60.10.139.113:8801/hls/68/index.m3u8$LR•IPV4•225『线路103』 -CCTV,http://60.10.139.113:8801/hls/69/index.m3u8$LR•IPV4•225『线路104』 -CCTV,http://60.10.139.113:8801/hls/70/index.m3u8$LR•IPV4•225『线路105』 -CCTV,http://60.10.139.113:8801/hls/79/index.m3u8$LR•IPV4•225『线路106』 -CCTV,http://60.10.139.113:8801/hls/80/index.m3u8$LR•IPV4•225『线路107』 -CCTV,http://60.10.139.113:8801/hls/73/index.m3u8$LR•IPV4•225『线路108』 -CCTV,http://207.56.13.146:81/cdnlive/cctv1.m3u8$LR•IPV4•225『线路109』 -CCTV,http://207.56.13.146:81/cdnlive/cctv2.m3u8$LR•IPV4•225『线路110』 -CCTV,http://207.56.13.146:81/cdnlive/cctv3.m3u8$LR•IPV4•225『线路111』 -CCTV,http://207.56.13.146:81/cdnlive/cctv5.m3u8$LR•IPV4•225『线路112』 -CCTV,http://207.56.13.146:81/cdnlive/cctv6.m3u8$LR•IPV4•225『线路113』 -CCTV,http://207.56.13.146:81/cdnlive/cctv9.m3u8$LR•IPV4•225『线路114』 -CCTV,http://207.56.13.146:81/cdnlive/cctv10.m3u8$LR•IPV4•225『线路115』 -CCTV,http://207.56.13.146:81/cdnlive/cctv12.m3u8$LR•IPV4•225『线路116』 -CCTV,http://207.56.13.146:81/cdnlive/cctv13.m3u8$LR•IPV4•225『线路117』 -CCTV,http://207.56.13.146:81/cdnlive/cctv14.m3u8$LR•IPV4•225『线路118』 -CCTV,http://207.56.13.146:81/cdnlive/cctv15.m3u8$LR•IPV4•225『线路119』 -CCTV,http://207.56.13.146:81/cdnlive/cctv16.m3u8$LR•IPV4•225『线路120』 -CCTV,http://207.56.13.146:81/cdnlive/cctv17.m3u8$LR•IPV4•225『线路121』 -CCTV,http://207.56.13.146:81/cdnlive/cctv5p.m3u8$LR•IPV4•225『线路122』 -CCTV,http://207.56.13.146:81/cdnlive/gfjs.m3u8$LR•IPV4•225『线路123』 -CCTV,http://207.56.13.146:81/cdnlive/nxss.m3u8$LR•IPV4•225『线路124』 -CCTV,http://207.56.13.146:81/cdnlive/sjdl.m3u8$LR•IPV4•225『线路125』 -CCTV,http://207.56.13.146:81/cdnlive/wsjk.m3u8$LR•IPV4•225『线路126』 -CCTV,http://207.56.13.146:81/cdnlive/ysjp.m3u8$LR•IPV4•225『线路127』 -CCTV,http://207.56.13.146:81/cdnlive/dyjc.m3u8$LR•IPV4•225『线路128』 -CCTV,http://207.56.13.146:81/cdnlive/hjjc.m3u8$LR•IPV4•225『线路129』 -CCTV,http://207.56.13.146:81/cdnlive/fyjc.m3u8$LR•IPV4•225『线路130』 -CCTV,http://207.56.13.146:81/cdnlive/fyzq.m3u8$LR•IPV4•225『线路131』 -CCTV,http://207.56.13.146:81/cdnlive/fyyy.m3u8$LR•IPV4•225『线路132』 -CCTV,http://207.56.13.146:81/cdnlive/ystq.m3u8$LR•IPV4•225『线路133』 -CCTV,http://207.56.13.146:81/cdnlive/gefwq.m3u8$LR•IPV4•225『线路134』 -CCTV,http://192.151.150.154/live/cctv2hd.m3u8$LR•IPV4•225『线路135』 -CCTV,http://192.151.150.154/live/cctv3hd.m3u8$LR•IPV4•225『线路136』 -CCTV,http://192.151.150.154/live/cctv4hd.m3u8$LR•IPV4•225『线路137』 -CCTV,http://192.151.150.154/live/cctv5hd.m3u8$LR•IPV4•225『线路138』 -CCTV,http://192.151.150.154/live/cctv5p.m3u8$LR•IPV4•225『线路139』 -CCTV,http://192.151.150.154/live/cctv6hd.m3u8$LR•IPV4•225『线路140』 -CCTV,http://192.151.150.154/live/cctv8hd.m3u8$LR•IPV4•225『线路141』 -CCTV,http://192.151.150.154/live/cctv9hd.m3u8$LR•IPV4•225『线路142』 -CCTV,http://192.151.150.154/live/cctv10hd.m3u8$LR•IPV4•225『线路143』 -CCTV,http://192.151.150.154/live/cctv11hd.m3u8$LR•IPV4•225『线路144』 -CCTV,http://192.151.150.154/live/cctv12hd.m3u8$LR•IPV4•225『线路145』 -CCTV,http://192.151.150.154/live/cctv13hd.m3u8$LR•IPV4•225『线路146』 -CCTV,http://192.151.150.154/live/cctv14hd.m3u8$LR•IPV4•225『线路147』 -CCTV,http://192.151.150.154/live/cctv15hd.m3u8$LR•IPV4•225『线路148』 -CCTV,http://192.151.150.154/live/cctv16hd.m3u8$LR•IPV4•225『线路149』 -CCTV,http://192.151.150.154/live/cctv17hd.m3u8$LR•IPV4•225『线路150』 -CCTV,http://192.151.150.154/live/dszn.m3u8$LR•IPV4•225『线路151』 -CCTV,http://192.151.150.154/live/dyjc.m3u8$LR•IPV4•225『线路152』 -CCTV,http://192.151.150.154/live/fyjc.m3u8$LR•IPV4•225『线路153』 -CCTV,http://192.151.150.154/live/fyyy.m3u8$LR•IPV4•225『线路154』 -CCTV,http://192.151.150.154/live/fyzq.m3u8$LR•IPV4•225『线路155』 -CCTV,http://192.151.150.154/live/gefwq.m3u8$LR•IPV4•225『线路156』 -CCTV,http://192.151.150.154/live/gfjs.m3u8$LR•IPV4•225『线路157』 -CCTV,http://192.151.150.154/live/nxss.m3u8$LR•IPV4•225『线路158』 -CCTV,http://192.151.150.154/live/sjdl.m3u8$LR•IPV4•225『线路159』 -CCTV,http://192.151.150.154/live/hjjc.m3u8$LR•IPV4•225『线路160』 -CCTV,http://192.151.150.154/live/ystq.m3u8$LR•IPV4•225『线路161』 -CCTV,http://192.151.150.154/live/ysjp.m3u8$LR•IPV4•225『线路162』 -CCTV,http://192.151.150.154/live/wsjk.m3u8$LR•IPV4•225『线路163』 -CCTV,http://173.208.212.130:8181/1080p/cctv1.m3u8$LR•IPV4•225『线路164』 -CCTV,http://173.208.212.130:8181/1080p/cctv2.m3u8$LR•IPV4•225『线路165』 -CCTV,http://173.208.212.130:8181/1080p/cctv3.m3u8$LR•IPV4•225『线路166』 -CCTV,http://173.208.212.130:8181/1080p/cctv4.m3u8$LR•IPV4•225『线路167』 -CCTV,http://173.208.212.130:8181/1080p/cctv5.m3u8$LR•IPV4•225『线路168』 -CCTV,http://173.208.212.130:8181/1080p/cctv7.m3u8$LR•IPV4•225『线路169』 -CCTV,http://173.208.212.130:8181/1080p/cctv8.m3u8$LR•IPV4•225『线路170』 -CCTV,http://173.208.212.130:8181/1080p/cctv9.m3u8$LR•IPV4•225『线路171』 -CCTV,http://173.208.212.130:8181/1080p/cctv10.m3u8$LR•IPV4•225『线路172』 -CCTV,http://173.208.212.130:8181/1080p/cctv11.m3u8$LR•IPV4•225『线路173』 -CCTV,http://173.208.212.130:8181/1080p/cctv12.m3u8$LR•IPV4•225『线路174』 -CCTV,http://173.208.212.130:8181/1080p/cctv13.m3u8$LR•IPV4•225『线路175』 -CCTV,http://173.208.212.130:8181/1080p/cctv14.m3u8$LR•IPV4•225『线路176』 -CCTV,http://173.208.212.130:8181/1080p/cctv15.m3u8$LR•IPV4•225『线路177』 -CCTV,http://173.208.212.130:8181/1080p/cctv16.m3u8$LR•IPV4•225『线路178』 -CCTV,http://173.208.212.130:8181/1080p/cctv17.m3u8$LR•IPV4•225『线路179』 -CCTV,http://173.208.212.130:8181/1080p/cctv5p.m3u8$LR•IPV4•225『线路180』 -CCTV,http://173.208.212.130:8181/720p/cctv1.m3u8$LR•IPV4•225『线路181』 -CCTV,http://173.208.212.130:8181/720p/cctv3.m3u8$LR•IPV4•225『线路182』 -CCTV,http://173.208.212.130:8181/720p/cctv4.m3u8$LR•IPV4•225『线路183』 -CCTV,http://173.208.212.130:8181/720p/cctv5.m3u8$LR•IPV4•225『线路184』 -CCTV,http://173.208.212.130:8181/720p/cctv7.m3u8$LR•IPV4•225『线路185』 -CCTV,http://173.208.212.130:8181/720p/cctv9.m3u8$LR•IPV4•225『线路186』 -CCTV,http://173.208.212.130:8181/720p/cctv10.m3u8$LR•IPV4•225『线路187』 -CCTV,http://173.208.212.130:8181/720p/cctv11.m3u8$LR•IPV4•225『线路188』 -CCTV,http://173.208.212.130:8181/720p/cctv12.m3u8$LR•IPV4•225『线路189』 -CCTV,http://173.208.212.130:8181/720p/cctv13.m3u8$LR•IPV4•225『线路190』 -CCTV,http://173.208.212.130:8181/720p/cctv14.m3u8$LR•IPV4•225『线路191』 -CCTV,http://173.208.212.130:8181/720p/cctv15.m3u8$LR•IPV4•225『线路192』 -CCTV,http://173.208.212.130:8181/720p/cctv16.m3u8$LR•IPV4•225『线路193』 -CCTV,http://173.208.212.130:8181/720p/cctv17.m3u8$LR•IPV4•225『线路194』 -CCTV,http://173.208.212.130:8181/720p/cctv5p.m3u8$LR•IPV4•225『线路195』 -CCTV,http://173.208.212.130:8181/720p/cctv8k.m3u8$LR•IPV4•225『线路196』 -CCTV,http://173.208.212.130:8181/720p/dyjc.m3u8$LR•IPV4•225『线路197』 -CCTV,http://173.208.212.130:8181/720p/fyjc.m3u8$LR•IPV4•225『线路198』 -CCTV,http://173.208.212.130:8181/720p/hjjc.m3u8$LR•IPV4•225『线路199』 -CCTV,http://173.208.212.130:8181/720p/gfjs.m3u8$LR•IPV4•225『线路200』 -CCTV,http://173.208.212.130:8181/720p/nxss.m3u8$LR•IPV4•225『线路201』 -CCTV,http://173.208.212.130:8181/720p/sjdl.m3u8$LR•IPV4•225『线路202』 -CCTV,http://173.208.212.130:8181/720p/wsjk.m3u8$LR•IPV4•225『线路203』 -CCTV,http://173.208.212.130:8181/720p/ysjp.m3u8$LR•IPV4•225『线路204』 -CCTV,http://173.208.212.130:8181/720p/fyyy.m3u8$LR•IPV4•225『线路205』 -CCTV,http://173.208.212.130:8181/720p/ystq.m3u8$LR•IPV4•225『线路206』 -CCTV,http://173.208.212.130:8181/720p/fyzq.m3u8$LR•IPV4•225『线路207』 -CCTV,http://173.208.212.130:8181/720p/gefwq.m3u8$LR•IPV4•225『线路208』 -CCTV,http://204.12.221.218:8181/3m1080p/cctv1.m3u8$LR•IPV4•225『线路209』 -CCTV,http://204.12.221.218:8181/3m1080p/cctv2.m3u8$LR•IPV4•225『线路210』 -CCTV,http://204.12.221.218:8181/3m1080p/cctv3.m3u8$LR•IPV4•225『线路211』 -CCTV,http://204.12.221.218:8181/3m1080p/cctv4.m3u8$LR•IPV4•225『线路212』 -CCTV,http://204.12.221.218:8181/3m1080p/cctv5.m3u8$LR•IPV4•225『线路213』 -CCTV,http://204.12.221.218:8181/3m1080p/cctv6.m3u8$LR•IPV4•225『线路214』 -CCTV,http://204.12.221.218:8181/3m1080p/cctv7.m3u8$LR•IPV4•225『线路215』 -CCTV,http://204.12.221.218:8181/3m1080p/cctv8.m3u8$LR•IPV4•225『线路216』 -CCTV,http://204.12.221.218:8181/3m1080p/cctv9.m3u8$LR•IPV4•225『线路217』 -CCTV,http://204.12.221.218:8181/3m1080p/cctv10.m3u8$LR•IPV4•225『线路218』 -CCTV,http://204.12.221.218:8181/3m1080p/cctv11.m3u8$LR•IPV4•225『线路219』 -CCTV,http://204.12.221.218:8181/3m1080p/cctv12.m3u8$LR•IPV4•225『线路220』 -CCTV,http://204.12.221.218:8181/3m1080p/cctv13.m3u8$LR•IPV4•225『线路221』 -CCTV,http://204.12.221.218:8181/3m1080p/cctv14.m3u8$LR•IPV4•225『线路222』 -CCTV,http://204.12.221.218:8181/3m1080p/cctv15.m3u8$LR•IPV4•225『线路223』 -CCTV,http://204.12.221.218:8181/3m1080p/cctv16.m3u8$LR•IPV4•225『线路224』 -CCTV,http://204.12.221.218:8181/3m1080p/cctv17.m3u8$LR•IPV4•225『线路225』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226895/1.m3u8?$LR•IPV6•225『线路7』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226893/1.m3u8?$LR•IPV6•225『线路8』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226471/1.m3u8?$LR•IPV6•225『线路9』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226335/1.m3u8?$LR•IPV6•225『线路10』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226469/1.m3u8?$LR•IPV6•225『线路11』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226468/1.m3u8?$LR•IPV6•225『线路12』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226946/1.m3u8?$LR•IPV6•225『线路13』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226485/1.m3u8?$LR•IPV6•225『线路14』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226944/1.m3u8?$LR•IPV6•225『线路15』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226937/1.m3u8?$LR•IPV6•225『线路16』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226334/1.m3u8?$LR•IPV6•225『线路17』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226942/1.m3u8?$LR•IPV6•225『线路18』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226316/1.m3u8?$LR•IPV6•225『线路19』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226947/1.m3u8?$LR•IPV6•225『线路20』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226333/1.m3u8?$LR•IPV6•225『线路21』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227002/1.m3u8?$LR•IPV6•225『线路22』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226318/1.m3u8?$LR•IPV6•225『线路23』 +CCTV,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1783742400-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-19149547a7d5dfb5bd31f3815e03c8ea&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•225『线路24』 +CCTV,https://shcm-stream-cf1.stream.264788.xyz/cms001/ch00000090990000001620/index.m3u8?streamid=8a034b40397504e25b3775c772237996&streamkey=01vY5fRxC8VyKg4oq30vfikHXTCAKySLP29l6OG91kQlzDttHgzNLkUw5kivm3PfNsVHJv5FgdsPBYFYI2IWpt7tfRCuFHqLT2pvX67ubMds8jl2DHtvOh0&token=1775754349-4f33f4f84a4abeba-0-91687dc8c9325092efa1d00f330d2710$LR•IPV4•225『线路25』 +CCTV,https://epg.pw/stream/ca9c1cd4b97fb824cedd7fedfd0c7a950afdd7f00751cfbb7c2d89831d7746a5.m3u8$LR•IPV4•225『线路26』 +CCTV,https://epg.pw/stream/6d7bf281e3d739806a73f5373acaa6e01988ec9739f5ac1355ce54b47a928472.m3u8$LR•IPV4•225『线路27』 +CCTV,https://epg.pw/stream/ac8062ec9484078061d3bef507c15a423ac57ae4144e3fcc4b0a198dd420f911.m3u8$LR•IPV4•225『线路28』 +CCTV,http://192.151.150.154/live/cctv1hd.m3u8$LR•IPV4•225『线路29』 +CCTV,http://69.30.245.50/live/cctv2.m3u8$LR•IPV4•225『线路30』 +CCTV,http://173.208.212.130:8181/720p/cctv2.m3u8$LR•IPV4•225『线路31』 +CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv3hd$LR•IPV4•225『线路32』 +CCTV,http://69.30.245.50/live/cctv4.m3u8$LR•IPV4•225『线路33』 +CCTV,http://207.56.13.146:81/cdnlive/cctv4.m3u8$LR•IPV4•225『线路34』 +CCTV,http://198.204.240.250:82/live/cctv6.m3u8$LR•IPV4•225『线路35』 +CCTV,http://173.208.212.130:8181/1080p/cctv6.m3u8$LR•IPV4•225『线路36』 +CCTV,http://173.208.212.130:8181/720p/cctv6.m3u8$LR•IPV4•225『线路37』 +CCTV,http://74.91.26.218:82/live/cctv7hd.m3u8$LR•IPV4•225『线路38』 +CCTV,http://192.151.150.154/live/cctv7hd.m3u8$LR•IPV4•225『线路39』 +CCTV,http://38.75.136.137:98/gslb/dsdqbv/cctv7hd.m3u8?auth=test20251009$LR•IPV4•225『线路40』 +CCTV,http://207.56.13.146:81/cdnlive/cctv7.m3u8$LR•IPV4•225『线路41』 +CCTV,http://207.56.13.146:81/cdnlive/cctv8.m3u8$LR•IPV4•225『线路42』 +CCTV,http://69.30.245.50/live/cctv8.m3u8$LR•IPV4•225『线路43』 +CCTV,http://173.208.212.130:8181/720p/cctv8.m3u8$LR•IPV4•225『线路44』 +CCTV,http://222.223.41.27:8888/hls/10/index.m3u8$LR•IPV4•225『线路45』 +CCTV,https://hwapi.yntv.net/ew265l/z1z6s5.m3u8$LR•IPV4•225『线路46』 +CCTV,http://69.30.245.50/live/cctv10.m3u8$LR•IPV4•225『线路47』 +CCTV,http://207.56.13.146:81/cdnlive/cctv11.m3u8$LR•IPV4•225『线路48』 +CCTV,http://123.163.114.168:9901/tsfile/live/0013_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•225『线路49』 +CCTV,http://116.128.243.121:85/tsfile/live/0013_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•225『线路50』 +CCTV,https://event.pull.hebtv.com/jishi/cp1.m3u8$LR•IPV4•225『线路51』 +CCTV,https://event.pull.hebtv.com/jishi/cp2.m3u8$LR•IPV4•225『线路52』 +CCTV,http://74.91.26.218:82/live/cctv14hd.m3u8$LR•IPV4•225『线路53』 +CCTV,http://38.75.136.137:98/gslb/dsdqbv/cctv14hd.m3u8?auth=test20251009$LR•IPV4•225『线路54』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/cctv14hd.m3u8?auth=testpub$LR•IPV4•225『线路55』 +CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv14hd$LR•IPV4•225『线路56』 +CCTV,http://74.91.26.218:82/live/cctv16hd.m3u8$LR•IPV4•225『线路57』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/wsjk.m3u8?auth=testpub$LR•IPV4•225『线路58』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/ystq.m3u8?auth=testpub$LR•IPV4•225『线路59』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/dyjc.m3u8?auth=testpub$LR•IPV4•225『线路60』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/fyjc.m3u8?auth=testpub$LR•IPV4•225『线路61』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/hjjc.m3u8?auth=testpub$LR•IPV4•225『线路62』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/fyzq.m3u8?auth=testpub$LR•IPV4•225『线路63』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/fyyy.m3u8?auth=testpub$LR•IPV4•225『线路64』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/sjdl.m3u8?auth=testpub$LR•IPV4•225『线路65』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/dszn.m3u8?auth=testpub$LR•IPV4•225『线路66』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/ysjp.m3u8?auth=testpub$LR•IPV4•225『线路67』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/nxss.m3u8?auth=testpub$LR•IPV4•225『线路68』 +CCTV,http://111.61.236.247:9081/hls/58/index.m3u8$LR•IPV4•225『线路69』 +CCTV,http://111.61.236.247:9081/hls/62/index.m3u8$LR•IPV4•225『线路70』 +CCTV,http://xc.mfykeke.top:35455/nptv/dyjc.m3u8$LR•IPV4•225『线路71』 +CCTV,http://xc.mfykeke.top:35455/nptv/fyjc.m3u8$LR•IPV4•225『线路72』 +CCTV,http://xc.mfykeke.top:35455/nptv/hjjc.m3u8$LR•IPV4•225『线路73』 +CCTV,http://www.tszhgjj.cn:7000/rtp/239.253.93.249:6427$LR•IPV4•225『线路74』 +CCTV,http://fn.tmde.top:35455/nptv/cctv4k.m3u8$LR•IPV4•225『线路75』 +CCTV,http://fn.tmde.top:35455/nptv/cctv8k.m3u8$LR•IPV4•225『线路76』 +CCTV,http://xc.mfykeke.top:35455/nptv/cctv4k.m3u8$LR•IPV4•225『线路77』 +CCTV,http://xc.mfykeke.top:35455/nptv/cctv8k.m3u8$LR•IPV4•225『线路78』 +CCTV,http://60.10.139.113:8801/hls/64/index.m3u8$LR•IPV4•225『线路79』 +CCTV,http://60.10.139.113:8801/hls/65/index.m3u8$LR•IPV4•225『线路80』 +CCTV,http://60.10.139.113:8801/hls/66/index.m3u8$LR•IPV4•225『线路81』 +CCTV,http://60.10.139.113:8801/hls/67/index.m3u8$LR•IPV4•225『线路82』 +CCTV,http://60.10.139.113:8801/hls/68/index.m3u8$LR•IPV4•225『线路83』 +CCTV,http://60.10.139.113:8801/hls/69/index.m3u8$LR•IPV4•225『线路84』 +CCTV,http://60.10.139.113:8801/hls/70/index.m3u8$LR•IPV4•225『线路85』 +CCTV,http://60.10.139.113:8801/hls/79/index.m3u8$LR•IPV4•225『线路86』 +CCTV,http://60.10.139.113:8801/hls/80/index.m3u8$LR•IPV4•225『线路87』 +CCTV,http://60.10.139.113:8801/hls/73/index.m3u8$LR•IPV4•225『线路88』 +CCTV,http://207.56.13.146:81/cdnlive/cctv1.m3u8$LR•IPV4•225『线路89』 +CCTV,http://207.56.13.146:81/cdnlive/cctv2.m3u8$LR•IPV4•225『线路90』 +CCTV,http://207.56.13.146:81/cdnlive/cctv3.m3u8$LR•IPV4•225『线路91』 +CCTV,http://207.56.13.146:81/cdnlive/cctv5.m3u8$LR•IPV4•225『线路92』 +CCTV,http://207.56.13.146:81/cdnlive/cctv6.m3u8$LR•IPV4•225『线路93』 +CCTV,http://207.56.13.146:81/cdnlive/cctv9.m3u8$LR•IPV4•225『线路94』 +CCTV,http://207.56.13.146:81/cdnlive/cctv10.m3u8$LR•IPV4•225『线路95』 +CCTV,http://207.56.13.146:81/cdnlive/cctv12.m3u8$LR•IPV4•225『线路96』 +CCTV,http://207.56.13.146:81/cdnlive/cctv13.m3u8$LR•IPV4•225『线路97』 +CCTV,http://207.56.13.146:81/cdnlive/cctv14.m3u8$LR•IPV4•225『线路98』 +CCTV,http://207.56.13.146:81/cdnlive/cctv15.m3u8$LR•IPV4•225『线路99』 +CCTV,http://207.56.13.146:81/cdnlive/cctv16.m3u8$LR•IPV4•225『线路100』 +CCTV,http://207.56.13.146:81/cdnlive/cctv17.m3u8$LR•IPV4•225『线路101』 +CCTV,http://207.56.13.146:81/cdnlive/cctv5p.m3u8$LR•IPV4•225『线路102』 +CCTV,http://207.56.13.146:81/cdnlive/gfjs.m3u8$LR•IPV4•225『线路103』 +CCTV,http://207.56.13.146:81/cdnlive/nxss.m3u8$LR•IPV4•225『线路104』 +CCTV,http://207.56.13.146:81/cdnlive/sjdl.m3u8$LR•IPV4•225『线路105』 +CCTV,http://207.56.13.146:81/cdnlive/wsjk.m3u8$LR•IPV4•225『线路106』 +CCTV,http://207.56.13.146:81/cdnlive/ysjp.m3u8$LR•IPV4•225『线路107』 +CCTV,http://207.56.13.146:81/cdnlive/dyjc.m3u8$LR•IPV4•225『线路108』 +CCTV,http://207.56.13.146:81/cdnlive/hjjc.m3u8$LR•IPV4•225『线路109』 +CCTV,http://207.56.13.146:81/cdnlive/fyjc.m3u8$LR•IPV4•225『线路110』 +CCTV,http://207.56.13.146:81/cdnlive/fyzq.m3u8$LR•IPV4•225『线路111』 +CCTV,http://207.56.13.146:81/cdnlive/fyyy.m3u8$LR•IPV4•225『线路112』 +CCTV,http://207.56.13.146:81/cdnlive/ystq.m3u8$LR•IPV4•225『线路113』 +CCTV,http://207.56.13.146:81/cdnlive/gefwq.m3u8$LR•IPV4•225『线路114』 +CCTV,http://192.151.150.154/live/cctv2hd.m3u8$LR•IPV4•225『线路115』 +CCTV,http://192.151.150.154/live/cctv3hd.m3u8$LR•IPV4•225『线路116』 +CCTV,http://192.151.150.154/live/cctv4hd.m3u8$LR•IPV4•225『线路117』 +CCTV,http://192.151.150.154/live/cctv5hd.m3u8$LR•IPV4•225『线路118』 +CCTV,http://192.151.150.154/live/cctv5p.m3u8$LR•IPV4•225『线路119』 +CCTV,http://192.151.150.154/live/cctv6hd.m3u8$LR•IPV4•225『线路120』 +CCTV,http://192.151.150.154/live/cctv8hd.m3u8$LR•IPV4•225『线路121』 +CCTV,http://192.151.150.154/live/cctv9hd.m3u8$LR•IPV4•225『线路122』 +CCTV,http://192.151.150.154/live/cctv10hd.m3u8$LR•IPV4•225『线路123』 +CCTV,http://192.151.150.154/live/cctv11hd.m3u8$LR•IPV4•225『线路124』 +CCTV,http://192.151.150.154/live/cctv12hd.m3u8$LR•IPV4•225『线路125』 +CCTV,http://192.151.150.154/live/cctv13hd.m3u8$LR•IPV4•225『线路126』 +CCTV,http://192.151.150.154/live/cctv14hd.m3u8$LR•IPV4•225『线路127』 +CCTV,http://192.151.150.154/live/cctv15hd.m3u8$LR•IPV4•225『线路128』 +CCTV,http://192.151.150.154/live/cctv16hd.m3u8$LR•IPV4•225『线路129』 +CCTV,http://192.151.150.154/live/cctv17hd.m3u8$LR•IPV4•225『线路130』 +CCTV,http://192.151.150.154/live/cctv8k.m3u8$LR•IPV4•225『线路131』 +CCTV,http://192.151.150.154/live/dszn.m3u8$LR•IPV4•225『线路132』 +CCTV,http://192.151.150.154/live/dyjc.m3u8$LR•IPV4•225『线路133』 +CCTV,http://192.151.150.154/live/fyjc.m3u8$LR•IPV4•225『线路134』 +CCTV,http://192.151.150.154/live/fyyy.m3u8$LR•IPV4•225『线路135』 +CCTV,http://192.151.150.154/live/fyzq.m3u8$LR•IPV4•225『线路136』 +CCTV,http://192.151.150.154/live/gefwq.m3u8$LR•IPV4•225『线路137』 +CCTV,http://192.151.150.154/live/gfjs.m3u8$LR•IPV4•225『线路138』 +CCTV,http://192.151.150.154/live/nxss.m3u8$LR•IPV4•225『线路139』 +CCTV,http://192.151.150.154/live/sjdl.m3u8$LR•IPV4•225『线路140』 +CCTV,http://192.151.150.154/live/hjjc.m3u8$LR•IPV4•225『线路141』 +CCTV,http://192.151.150.154/live/ystq.m3u8$LR•IPV4•225『线路142』 +CCTV,http://192.151.150.154/live/ysjp.m3u8$LR•IPV4•225『线路143』 +CCTV,http://192.151.150.154/live/wsjk.m3u8$LR•IPV4•225『线路144』 +CCTV,http://173.208.212.130:8181/1080p/cctv1.m3u8$LR•IPV4•225『线路145』 +CCTV,http://173.208.212.130:8181/1080p/cctv2.m3u8$LR•IPV4•225『线路146』 +CCTV,http://173.208.212.130:8181/1080p/cctv3.m3u8$LR•IPV4•225『线路147』 +CCTV,http://173.208.212.130:8181/1080p/cctv4.m3u8$LR•IPV4•225『线路148』 +CCTV,http://173.208.212.130:8181/1080p/cctv5.m3u8$LR•IPV4•225『线路149』 +CCTV,http://173.208.212.130:8181/1080p/cctv7.m3u8$LR•IPV4•225『线路150』 +CCTV,http://173.208.212.130:8181/1080p/cctv8.m3u8$LR•IPV4•225『线路151』 +CCTV,http://173.208.212.130:8181/1080p/cctv9.m3u8$LR•IPV4•225『线路152』 +CCTV,http://173.208.212.130:8181/1080p/cctv10.m3u8$LR•IPV4•225『线路153』 +CCTV,http://173.208.212.130:8181/1080p/cctv11.m3u8$LR•IPV4•225『线路154』 +CCTV,http://173.208.212.130:8181/1080p/cctv12.m3u8$LR•IPV4•225『线路155』 +CCTV,http://173.208.212.130:8181/1080p/cctv13.m3u8$LR•IPV4•225『线路156』 +CCTV,http://173.208.212.130:8181/1080p/cctv14.m3u8$LR•IPV4•225『线路157』 +CCTV,http://173.208.212.130:8181/1080p/cctv15.m3u8$LR•IPV4•225『线路158』 +CCTV,http://173.208.212.130:8181/1080p/cctv16.m3u8$LR•IPV4•225『线路159』 +CCTV,http://173.208.212.130:8181/1080p/cctv17.m3u8$LR•IPV4•225『线路160』 +CCTV,http://173.208.212.130:8181/1080p/cctv5p.m3u8$LR•IPV4•225『线路161』 +CCTV,http://173.208.212.130:8181/720p/cctv1.m3u8$LR•IPV4•225『线路162』 +CCTV,http://173.208.212.130:8181/720p/cctv3.m3u8$LR•IPV4•225『线路163』 +CCTV,http://173.208.212.130:8181/720p/cctv4.m3u8$LR•IPV4•225『线路164』 +CCTV,http://173.208.212.130:8181/720p/cctv5.m3u8$LR•IPV4•225『线路165』 +CCTV,http://173.208.212.130:8181/720p/cctv7.m3u8$LR•IPV4•225『线路166』 +CCTV,http://173.208.212.130:8181/720p/cctv9.m3u8$LR•IPV4•225『线路167』 +CCTV,http://173.208.212.130:8181/720p/cctv10.m3u8$LR•IPV4•225『线路168』 +CCTV,http://173.208.212.130:8181/720p/cctv11.m3u8$LR•IPV4•225『线路169』 +CCTV,http://173.208.212.130:8181/720p/cctv12.m3u8$LR•IPV4•225『线路170』 +CCTV,http://173.208.212.130:8181/720p/cctv13.m3u8$LR•IPV4•225『线路171』 +CCTV,http://173.208.212.130:8181/720p/cctv14.m3u8$LR•IPV4•225『线路172』 +CCTV,http://173.208.212.130:8181/720p/cctv15.m3u8$LR•IPV4•225『线路173』 +CCTV,http://173.208.212.130:8181/720p/cctv16.m3u8$LR•IPV4•225『线路174』 +CCTV,http://173.208.212.130:8181/720p/cctv17.m3u8$LR•IPV4•225『线路175』 +CCTV,http://173.208.212.130:8181/720p/cctv5p.m3u8$LR•IPV4•225『线路176』 +CCTV,http://173.208.212.130:8181/720p/cctv8k.m3u8$LR•IPV4•225『线路177』 +CCTV,http://173.208.212.130:8181/720p/dyjc.m3u8$LR•IPV4•225『线路178』 +CCTV,http://173.208.212.130:8181/720p/fyjc.m3u8$LR•IPV4•225『线路179』 +CCTV,http://173.208.212.130:8181/720p/hjjc.m3u8$LR•IPV4•225『线路180』 +CCTV,http://173.208.212.130:8181/720p/gfjs.m3u8$LR•IPV4•225『线路181』 +CCTV,http://173.208.212.130:8181/720p/nxss.m3u8$LR•IPV4•225『线路182』 +CCTV,http://173.208.212.130:8181/720p/sjdl.m3u8$LR•IPV4•225『线路183』 +CCTV,http://173.208.212.130:8181/720p/wsjk.m3u8$LR•IPV4•225『线路184』 +CCTV,http://173.208.212.130:8181/720p/ysjp.m3u8$LR•IPV4•225『线路185』 +CCTV,http://173.208.212.130:8181/720p/fyyy.m3u8$LR•IPV4•225『线路186』 +CCTV,http://173.208.212.130:8181/720p/ystq.m3u8$LR•IPV4•225『线路187』 +CCTV,http://173.208.212.130:8181/720p/fyzq.m3u8$LR•IPV4•225『线路188』 +CCTV,http://173.208.212.130:8181/720p/gefwq.m3u8$LR•IPV4•225『线路189』 +CCTV,http://204.12.221.218:8181/3m1080p/cctv1.m3u8$LR•IPV4•225『线路190』 +CCTV,http://204.12.221.218:8181/3m1080p/cctv2.m3u8$LR•IPV4•225『线路191』 +CCTV,http://204.12.221.218:8181/3m1080p/cctv3.m3u8$LR•IPV4•225『线路192』 +CCTV,http://204.12.221.218:8181/3m1080p/cctv4.m3u8$LR•IPV4•225『线路193』 +CCTV,http://204.12.221.218:8181/3m1080p/cctv5.m3u8$LR•IPV4•225『线路194』 +CCTV,http://204.12.221.218:8181/3m1080p/cctv6.m3u8$LR•IPV4•225『线路195』 +CCTV,http://204.12.221.218:8181/3m1080p/cctv7.m3u8$LR•IPV4•225『线路196』 +CCTV,http://204.12.221.218:8181/3m1080p/cctv8.m3u8$LR•IPV4•225『线路197』 +CCTV,http://204.12.221.218:8181/3m1080p/cctv9.m3u8$LR•IPV4•225『线路198』 +CCTV,http://204.12.221.218:8181/3m1080p/cctv10.m3u8$LR•IPV4•225『线路199』 +CCTV,http://204.12.221.218:8181/3m1080p/cctv11.m3u8$LR•IPV4•225『线路200』 +CCTV,http://204.12.221.218:8181/3m1080p/cctv12.m3u8$LR•IPV4•225『线路201』 +CCTV,http://204.12.221.218:8181/3m1080p/cctv13.m3u8$LR•IPV4•225『线路202』 +CCTV,http://204.12.221.218:8181/3m1080p/cctv14.m3u8$LR•IPV4•225『线路203』 +CCTV,http://204.12.221.218:8181/3m1080p/cctv15.m3u8$LR•IPV4•225『线路204』 +CCTV,http://204.12.221.218:8181/3m1080p/cctv16.m3u8$LR•IPV4•225『线路205』 +CCTV,http://204.12.221.218:8181/3m1080p/cctv17.m3u8$LR•IPV4•225『线路206』 +CCTV,http://69.30.245.50/live/cctv1.m3u8$LR•IPV4•225『线路207』 +CCTV,http://74.91.26.218:82/live/cctv2hd.m3u8$LR•IPV4•225『线路208』 +CCTV,http://74.91.26.218:82/live/cctv3hd.m3u8$LR•IPV4•225『线路209』 +CCTV,http://69.30.245.50/live/cctv6.m3u8$LR•IPV4•225『线路210』 +CCTV,http://74.91.26.218:82/live/cctv8hd.m3u8$LR•IPV4•225『线路211』 +CCTV,http://74.91.26.218:82/live/cctv10hd.m3u8$LR•IPV4•225『线路212』 +CCTV,http://74.91.26.218:82/live/cctv11hd.m3u8$LR•IPV4•225『线路213』 +CCTV,https://xykt-fix.github.io/play/a02e/index.m3u8$LR•IPV4•225『线路214』 +CCTV,http://74.91.26.218:82/live/cctv17hd.m3u8$LR•IPV4•225『线路215』 +CCTV,http://74.91.26.218:82/live/cctv1hd.m3u8$LR•IPV4•225『线路216』 +CCTV,https://global.cgtn.cicc.media.caton.cloud/master/cgtn-america.m3u8$LR•IPV4•225『线路217』 +CCTV,http://74.91.26.218:82/live/cctv4hd.m3u8$LR•IPV4•225『线路218』 +CCTV,https://dash2.antik.sk/live/test_cctv_tizen/playlist.m3u8$LR•IPV4•225『线路219』 +CCTV,http://go.bkpcp.top/mg/cctv13$LR•IPV4•225『线路220』 +CCTV,https://cdn3.163189.xyz/163189/cctv13$LR•IPV4•225『线路221』 +CCTV,https://solo.disfrutaenlared.com:1936/redcctv/redcctv/playlist.m3u8$LR•IPV4•225『线路222』 +CCTV,http://74.91.26.218:82/live/cctv12hd.m3u8$LR•IPV4•225『线路223』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/gefwq.m3u8?auth=testpub$LR•IPV4•225『线路224』 +CCTV,https://xykt-fix.github.io/Y77.m3u8$LR•IPV4•225『线路225』 明星,#genre# -周星驰,https://live.ottiptv.cc/huya/11336587$LR•IPV4•2『线路1』 -周星驰,http://cdn.jdshipin.com:8880/huya.php?id=11342412$LR•IPV4•2『线路2』 -李连杰,https://live.ottiptv.cc/huya/11342390$LR•IPV4•2『线路1』 -李连杰,http://cdn.jdshipin.com:8880/huya.php?id=11342390$LR•IPV4•2『线路2』 +周星驰,http://cdn.jdshipin.com:8880/huya.php?id=11342412$LR•IPV4•2『线路1』 +周星驰,https://live.ottiptv.cc/huya/11336587$LR•IPV4•2『线路2』 +李连杰,http://cdn.jdshipin.com:8880/huya.php?id=11342390$LR•IPV4•2『线路1』 +李连杰,https://live.ottiptv.cc/huya/11342390$LR•IPV4•2『线路2』 洪金宝,https://live.ottiptv.cc/huya/11279251$LR•IPV4 -梁家辉,https://live.ottiptv.cc/huya/11342429$LR•IPV4•2『线路1』 -梁家辉,http://live.metshop.top/huya/11342429?cdn=alicdn$LR•IPV4•2『线路2』 -刘德华,http://epg.112114.xyz/douyu/2516864$LR•IPV4•5『线路1』 -刘德华,https://live.ottiptv.cc/huya/11342424$LR•IPV4•5『线路2』 -刘德华,https://k0ub7yffy10yfz.djvod.ndcimgs.com/upic/2023/07/25/08/BMjAyMzA3MjUwODU3MzRfMzYxMjUyNDA3MV8xMDg4MTUzNTczMzFfMF8z_b_Bf67605afd92859a39e607f504f43c9f7.mp4$LR•IPV4•5『线路3』 -刘德华,http://cdn.jdshipin.com:8880/huya.php?id=11342424$LR•IPV4•5『线路4』 -刘德华,http://live.metshop.top/huya/11342424?cdn=alicdn$LR•IPV4•5『线路5』 -成龙,https://live.ottiptv.cc/huya/11342386$LR•IPV4•3『线路1』 -成龙,https://live.ottiptv.cc/huya/11352946$LR•IPV4•3『线路2』 -成龙,http://cdn.jdshipin.com:8880/huya.php?id=11342386$LR•IPV4•3『线路3』 -王晶,https://live.ottiptv.cc/huya/11602058$LR•IPV4•2『线路1』 -王晶,http://cdn.jdshipin.com:8880/huya.php?id=11602058$LR•IPV4•2『线路2』 -黄渤,https://live.ottiptv.cc/huya/11352876$LR•IPV4•2『线路1』 -黄渤,http://cdn.jdshipin.com:8880/huya.php?id=11352876$LR•IPV4•2『线路2』 -林正英,http://epg.112114.xyz/douyu/218859$LR•IPV4•4『线路1』 +梁家辉,http://live.metshop.top/huya/11342429?cdn=alicdn$LR•IPV4•2『线路1』 +梁家辉,https://live.ottiptv.cc/huya/11342429$LR•IPV4•2『线路2』 +刘德华,http://cdn.jdshipin.com:8880/huya.php?id=11342424$LR•IPV4•5『线路1』 +刘德华,http://live.metshop.top/huya/11342424?cdn=alicdn$LR•IPV4•5『线路2』 +刘德华,https://live.ottiptv.cc/huya/11342424$LR•IPV4•5『线路3』 +刘德华,https://k0ub7yffy10yfz.djvod.ndcimgs.com/upic/2023/07/25/08/BMjAyMzA3MjUwODU3MzRfMzYxMjUyNDA3MV8xMDg4MTUzNTczMzFfMF8z_b_Bf67605afd92859a39e607f504f43c9f7.mp4$LR•IPV4•5『线路4』 +刘德华,http://epg.112114.xyz/douyu/2516864$LR•IPV4•5『线路5』 +成龙,http://cdn.jdshipin.com:8880/huya.php?id=11342386$LR•IPV4•3『线路1』 +成龙,https://live.ottiptv.cc/huya/11342386$LR•IPV4•3『线路2』 +成龙,https://live.ottiptv.cc/huya/11352946$LR•IPV4•3『线路3』 +王晶,http://cdn.jdshipin.com:8880/huya.php?id=11602058$LR•IPV4•2『线路1』 +王晶,https://live.ottiptv.cc/huya/11602058$LR•IPV4•2『线路2』 +黄渤,http://cdn.jdshipin.com:8880/huya.php?id=11352876$LR•IPV4•2『线路1』 +黄渤,https://live.ottiptv.cc/huya/11352876$LR•IPV4•2『线路2』 +林正英,http://cdn.jdshipin.com:8880/huya.php?id=11342421$LR•IPV4•4『线路1』 林正英,http://zzy789.xyz/douyu1.php?id=7356023$LR•IPV4•4『线路2』 林正英,https://live.ottiptv.cc/huya/11342421$LR•IPV4•4『线路3』 -林正英,http://cdn.jdshipin.com:8880/huya.php?id=11342421$LR•IPV4•4『线路4』 -甄子丹,https://live.ottiptv.cc/huya/11352935$LR•IPV4•2『线路1』 -甄子丹,http://cdn.jdshipin.com:8880/huya.php?id=11352935$LR•IPV4•2『线路2』 +林正英,http://epg.112114.xyz/douyu/218859$LR•IPV4•4『线路4』 +甄子丹,http://cdn.jdshipin.com:8880/huya.php?id=11352935$LR•IPV4•2『线路1』 +甄子丹,https://live.ottiptv.cc/huya/11352935$LR•IPV4•2『线路2』 主题片,#genre# 灾难片,https://live.ottiptv.cc/huya/23728647$LR•IPV4 -谍战片,https://live.ottiptv.cc/huya/26355810$LR•IPV4•2『线路1』 -谍战片,http://live.metshop.top/huya/21059587?cdn=alicdn$LR•IPV4•2『线路2』 -战争片,https://live.ottiptv.cc/huya/21059618$LR•IPV4•2『线路1』 -战争片,http://live.metshop.top/huya/21059574?cdn=alicdn$LR•IPV4•2『线路2』 +谍战片,http://live.metshop.top/huya/21059587?cdn=alicdn$LR•IPV4•2『线路1』 +谍战片,https://live.ottiptv.cc/huya/26355810$LR•IPV4•2『线路2』 +战争片,http://live.metshop.top/huya/21059574?cdn=alicdn$LR•IPV4•2『线路1』 +战争片,https://live.ottiptv.cc/huya/21059618$LR•IPV4•2『线路2』 国际台,#genre# VOA美国之音,https://voa-ingest.akamaized.net/hls/live/2033878/tvmc08/playlist.m3u8$LR•IPV4 @@ -2477,12 +2478,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$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 @@ -2669,10 +2669,10 @@ S哥影视,https://live.ottiptv.cc/huya/24720260$LR•IPV4 浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-10.m3u8$LR•IPV4•33『线路32』 浙江新闻,http://ali-vl.cztv.com/channels/lantian/channel007/360p.m3u8$LR•IPV4•33『线路33』 浙江国际,https://ali-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8$LR•IPV4•30『线路1』 -浙江国际,http://ali-xwl.cztv.com/live/channel101080Plxw.m3u8$LR•IPV4•30『线路2』 -浙江国际,http://ali-vl.cztv.com/channels/lantian/channel010/360p.m3u8?a=1000&d=4e3d476240659192311f471b7b63aec2&k=d26568bae9dd23dd781c769c148459b2&t=1683180450$LR•IPV4•30『线路3』 -浙江国际,https://stream1.freetv.fun/zhe-jiang-guo-ji-9.m3u8$LR•IPV4•30『线路4』 -浙江国际,http://ali-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8$LR•IPV4•30『线路5』 +浙江国际,http://ali-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8$LR•IPV4•30『线路2』 +浙江国际,http://ali-xwl.cztv.com/live/channel101080Plxw.m3u8$LR•IPV4•30『线路3』 +浙江国际,http://ali-vl.cztv.com/channels/lantian/channel010/360p.m3u8?a=1000&d=4e3d476240659192311f471b7b63aec2&k=d26568bae9dd23dd781c769c148459b2&t=1683180450$LR•IPV4•30『线路4』 +浙江国际,https://stream1.freetv.fun/zhe-jiang-guo-ji-9.m3u8$LR•IPV4•30『线路5』 浙江国际,https://stream1.freetv.fun/zhe-jiang-guo-ji-11.m3u8$LR•IPV4•30『线路6』 浙江国际,https://stream1.freetv.fun/zhe-jiang-guo-ji-10.m3u8$LR•IPV4•30『线路7』 浙江国际,https://stream1.freetv.fun/8edc171ba7945fd93cc0f2c9e39b48ba0a94500d0029db9456dfdc2d75f9ea9d.m3u8$LR•IPV4•30『线路8』 @@ -2862,13 +2862,13 @@ S哥影视,https://live.ottiptv.cc/huya/24720260$LR•IPV4 浙江遂昌,http://play-sh13.quklive.com/live/1708426592499070.m3u8?auth_key=2028414342-e92bda8423ad478c987a8b7ae82abe0e-0-c616f7fabb9675e1ed1d84d9edae7e07$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『线路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://live.shaoxing.com.cn/video/s10001-sxtv2/index.m3u8?zzhed$LR•IPV4•2『线路1』 -绍兴电视台公共,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『线路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-3.m3u8$LR•IPV4•7『线路2』 绍兴公共,https://stream1.freetv.fun/shao-xing-gong-gong-8.m3u8$LR•IPV4•7『线路3』 @@ -2933,34 +2933,33 @@ S哥影视,https://live.ottiptv.cc/huya/24720260$LR•IPV4 中国蓝新闻,https://ali-m-l.cztv.com/channels/lantian/channel009/1080p.m3u8?$LR•IPV4•2『线路2』 广东,#genre# -深圳卫视,https://sztv-hls.sztv.com.cn/sztvgjpd/500/o47pzsvm.m3u8?sign=04712152a9c7592d280cc50a0597352b&t=6a4aff31$LR•IPV4•28『线路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•28『线路2』 -深圳卫视,http://120.198.95.220:9901/tsfile/live/1048_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•28『线路3』 -深圳卫视,http://123.163.114.168:9901/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•28『线路4』 -深圳卫视,http://38.75.136.137:98/gslb/dsdqpub/szwshd.m3u8?auth=testpub$LR•IPV4•28『线路5』 -深圳卫视,http://198.204.228.26/live/szwshd.m3u8$LR•IPV4•28『线路6』 -深圳卫视,http://36.136.38.87:9901/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•28『线路7』 -深圳卫视,http://153.0.171.163:9901/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•28『线路8』 -深圳卫视,http://112.27.235.94:8000/hls/33/index.m3u8$LR•IPV4•28『线路9』 -深圳卫视,http://23.237.228.134/live6/shenzhen.m3u8$LR•IPV4•28『线路10』 -深圳卫视,http://gfr.x3322.net:9901/tsfile/live/1095_1.m3u8$LR•IPV4•28『线路11』 -深圳卫视,http://api.kkitv.itv888.cn:8080/hls/iftsd32ykm/index.m3u8$LR•IPV4•28『线路12』 -深圳卫视,https://iptv.catvod.com/catvod.php?id=szws$LR•IPV4•28『线路13』 -深圳卫视,https://httop.top/ysp-深圳卫视$LR•IPV4•28『线路14』 -深圳卫视,http://iptv.huuc.edu.cn/hls/szhd.m3u8$LR•IPV4•28『线路15』 -深圳卫视,http://38.64.72.148:80/hls/modn/list/4007/playlist.m3u8$LR•IPV4•28『线路16』 -深圳卫视,http://60.10.139.113:8801/hls/24/index.m3u8$LR•IPV4•28『线路17』 -深圳卫视,http://207.56.13.146:81/cdnlive/szws.m3u8$LR•IPV4•28『线路18』 -深圳卫视,http://192.151.150.154/live/szwshd.m3u8$LR•IPV4•28『线路19』 -深圳卫视,http://173.208.212.130:8181/720p/szws.m3u8$LR•IPV4•28『线路20』 -深圳卫视,http://204.12.221.218:8181/3m1080p/szws.m3u8$LR•IPV4•28『线路21』 -深圳卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000024026&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路22』 -深圳卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000007410&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路23』 -深圳卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000009227&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路24』 -深圳卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000011645&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路25』 -深圳卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=5352218613763113657&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路26』 -深圳卫视,http://111.29.9.38:6610/000000001000/1000000001000009227/index.m3u8?channel-id=ystenlive&Contentid=1000000001000009227&livemode=1&stbId=3$LR•IPV4•28『线路27』 -深圳卫视,http://111.29.9.33:6610/000000001000/1000000001000009227/index.m3u8?channel-id=bestzb&Contentid=1000000001000009227&livemode=1&stbId=3$LR•IPV4•28『线路28』 +深圳卫视,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•27『线路1』 +深圳卫视,http://112.27.235.94:8000/hls/33/index.m3u8$LR•IPV4•27『线路2』 +深圳卫视,http://120.198.95.220:9901/tsfile/live/1048_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•27『线路3』 +深圳卫视,http://123.163.114.168:9901/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•27『线路4』 +深圳卫视,http://38.75.136.137:98/gslb/dsdqpub/szwshd.m3u8?auth=testpub$LR•IPV4•27『线路5』 +深圳卫视,http://198.204.228.26/live/szwshd.m3u8$LR•IPV4•27『线路6』 +深圳卫视,http://36.136.38.87:9901/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•27『线路7』 +深圳卫视,http://153.0.171.163:9901/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•27『线路8』 +深圳卫视,http://23.237.228.134/live6/shenzhen.m3u8$LR•IPV4•27『线路9』 +深圳卫视,http://gfr.x3322.net:9901/tsfile/live/1095_1.m3u8$LR•IPV4•27『线路10』 +深圳卫视,http://api.kkitv.itv888.cn:8080/hls/iftsd32ykm/index.m3u8$LR•IPV4•27『线路11』 +深圳卫视,https://iptv.catvod.com/catvod.php?id=szws$LR•IPV4•27『线路12』 +深圳卫视,https://httop.top/ysp-深圳卫视$LR•IPV4•27『线路13』 +深圳卫视,http://iptv.huuc.edu.cn/hls/szhd.m3u8$LR•IPV4•27『线路14』 +深圳卫视,http://38.64.72.148:80/hls/modn/list/4007/playlist.m3u8$LR•IPV4•27『线路15』 +深圳卫视,http://60.10.139.113:8801/hls/24/index.m3u8$LR•IPV4•27『线路16』 +深圳卫视,http://207.56.13.146:81/cdnlive/szws.m3u8$LR•IPV4•27『线路17』 +深圳卫视,http://192.151.150.154/live/szwshd.m3u8$LR•IPV4•27『线路18』 +深圳卫视,http://173.208.212.130:8181/720p/szws.m3u8$LR•IPV4•27『线路19』 +深圳卫视,http://204.12.221.218:8181/3m1080p/szws.m3u8$LR•IPV4•27『线路20』 +深圳卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000024026&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路21』 +深圳卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000007410&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路22』 +深圳卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000009227&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路23』 +深圳卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000011645&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路24』 +深圳卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=5352218613763113657&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路25』 +深圳卫视,http://111.29.9.38:6610/000000001000/1000000001000009227/index.m3u8?channel-id=ystenlive&Contentid=1000000001000009227&livemode=1&stbId=3$LR•IPV4•27『线路26』 +深圳卫视,http://111.29.9.33:6610/000000001000/1000000001000009227/index.m3u8?channel-id=bestzb&Contentid=1000000001000009227&livemode=1&stbId=3$LR•IPV4•27『线路27』 汕头经济,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=9512&tk=a0c4f6cfaba3$LR•IPV4•11『线路1』 汕头经济,http://bak.dou.ddns-ip.net/api.php?n=cctvxxx&id=LEsjua&tk=zUr4K92Dl6kh$LR•IPV4•11『线路2』 汕头经济,https://stream1.freetv.fun/shan-tou-jing-ji-1.ctv$LR•IPV4•11『线路3』 diff --git a/tvbox/lib/sbjh.m3u b/tvbox/lib/sbjh.m3u index 3d45a515..f2f4dac5 100755 --- a/tvbox/lib/sbjh.m3u +++ b/tvbox/lib/sbjh.m3u @@ -1,368 +1,376 @@ #EXTM3U x-tvg-url="" #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/yingke.jpg" group-title="映客",大浪交友厅 -http://extlive-pull-ws.inke.cn/live/1783666814732064.flv?auth_version=1&codecInfo=8192&dpSrc=-1&from=hallfe&ikHost=ws&ikLiveType=multiplayer&ikLog=1&md5sum=8e39&pushHost=zego-sixlive.link.inke.cn×tamp=1783675508 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",金枝玉叶 -http://x3spmlacr.yueyongli.top/live/cx_386185.flv?wsSecret=59477cf22bc0d4315a8b1c8f4e809c7b&wsTime=1783656146 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",软绵绵呀 -http://77b.xn--ypzw80d.com/live/cx_9825.flv?wsSecret=69f336f809477bc0571d11bb260205e3&wsTime=1783669958 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小羽渔 -http://myijapiwuewla.cssymt.com/live/cx_386159.flv?wsSecret=0a8a904d99bc6e647d8e40e61437c30d&wsTime=1783671091 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",蓉宝 -http://xlajunasjwqoet.cssymt.com/live/cx_386171.flv?wsSecret=001da5abcdeb3bc9a7eb0d7c9be81c5d&wsTime=1783662271 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",巧乐兹 -http://la193sahrigxt.sqfkkj.top/live/cx_386037.flv?wsSecret=b5ada6f895fe88d9ce6204e19bc00171&wsTime=1783667560 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小耳朵66 -http://x3spmlacr.yueyongli.top/live/cx_361786.flv?wsSecret=a175251b96cb58b28429012d98d5cca9&wsTime=1783658071 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",7喜 -http://77bo.xn--t8w422e.com/live/cx_14544.flv?wsSecret=cf96405b462e190c08071daebc0906c8&wsTime=1783656206 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",嘉宁 -http://la193sahrigxt.sqfkkj.top/live/cx_385600.flv?wsSecret=625570f9d626844426eb090ebe741c1b&wsTime=1783669147 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",芝芝莓莓 -http://77bo.xn--uw0as83a.com/live/cx_15810.flv?wsSecret=96d881622af0ad10dc64e4c11e9130dc&wsTime=1783669631 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",哆米 -http://likeahjadksetla.abrillantlee.top/live/cx_384763.flv?wsSecret=7e44c1e753a69829b85a402bfeb1b199&wsTime=1783653772 -#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="卡哇伊",慕慕呀 -rtmp://hongyangz.xn--fiq64bk2i52brzu7srde4a640a0sk.com/live/8086_1687906258899 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",真实探花嫖娼@ -http://77bo.xn--t8w422e.com/live/cx_15710.flv?wsSecret=2dc1944a162813e51f069aea9aab3f4b&wsTime=1783612908 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",脆脆脆脆鲨. -http://x3spmlacr.yueyongli.top/live/cx_357874.flv?wsSecret=5d4c53009e363e35f80cffdeedaf40f7&wsTime=1783664120 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",多米, -http://xlajunasjwqoet.cssymt.com/live/cx_364327.flv?wsSecret=9733b14f4cfa0c0df57f7f2007e4e431&wsTime=1783656847 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",亲亲狐狸 -http://xcrmumeetla.abrillantlee.top/live/cx_385616.flv?wsSecret=f7d51f285ba932857ce301252476e01b&wsTime=1783673877 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小七七 -http://likeahjadksetla.abrillantlee.top/live/cx_386764.flv?wsSecret=86b0d4f7c3b300b7d1abe05555328870&wsTime=1783659638 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",精彩剧情@ -http://77b.xn--ypzw80d.com/live/cx_16437.flv?wsSecret=4eb3a5cd4aa9316ce8565237bd53ad9f&wsTime=1783511123 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",职场身体上位@ -http://77bo.xn--fhqv92p.com/live/cx_15604.flv?wsSecret=5e61bd9a6e6fe67058bdba1401b01de2&wsTime=1783606500 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",依依实力带飞 -http://xcplawater02.yueyongli.top/live/cx_364954.flv?wsSecret=b1ca3b9a90a1e31cbbc7b69f4ec07e4c&wsTime=1783663200 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",草莓味 -http://xcrmumeetla.abrillantlee.top/live/cx_386880.flv?wsSecret=49384f17b2cc2ad57060e57ff20baa5b&wsTime=1783662234 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",辣辣酱 -http://xrgszsbrila.yueyongli.top/live/cx_386281.flv?wsSecret=bb280ddfdab46b416bda65ca99a5cbb7&wsTime=1783674673 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",宝宝 -http://xzqppsukemrla.jinkangyl.com/live/cx_386729.flv?wsSecret=e985d4e6d121935b10a668ac75b4460f&wsTime=1783673348 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",未成年@ -http://77bo.xn--fhqv92p.com/live/cx_28.flv?wsSecret=6d89b87746fb02d70e60554b09ecce02&wsTime=1783611906 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",按摩馆的秘密@ -http://77bo.xn--fhqv92p.com/live/cx_15652.flv?wsSecret=4f7d861ebdfa95e3de438822c638b327&wsTime=1783611676 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小容儿 -http://guetnzweozela.sqfkkj.top/live/cx_385596.flv?wsSecret=57a20c7a856ec1d3f2a94f0be4afebc9&wsTime=1783673729 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",六小姐 -http://77bo.xn--4lw519c.com/live/cx_15779.flv?wsSecret=4847ad9d85a45f2eb4cdf4e7bce76a67&wsTime=1783669988 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小小妲己呼呼啦 -http://likeahjadksetla.abrillantlee.top/live/cx_384266.flv?wsSecret=39dd8245fea40057960b5c01cf2f00fb&wsTime=1783672365 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",going%20你 -http://x3spmlacr.yueyongli.top/live/cx_377639.flv?wsSecret=6a5e20097dc16d0d31e4c2d5012436dc&wsTime=1783673667 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",妹妹超白 -http://77bo.xn--kcrp02i.com/live/cx_15460.flv?wsSecret=8c298275884b42dac2efad5a13f0f502&wsTime=1783670645 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",甜心格格 -http://lawoazletjsuet.sqfkkj.top/live/cx_385555.flv?wsSecret=45373fb16b33c0c13706185c650b3187&wsTime=1783667573 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",安克娜娜 -http://la193sahrigxt.sqfkkj.top/live/cx_380928.flv?wsSecret=d1bb39c7f3e524e24236966221608664&wsTime=1783668232 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",茂密的小森林 -http://likeahjadksetla.abrillantlee.top/live/cx_380333.flv?wsSecret=aaf52d3a7cacfb1db1f5529d203379d0&wsTime=1783674539 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",夏小小 -http://xzqppsukemrla.jinkangyl.com/live/cx_386751.flv?wsSecret=d772e05b8aef0665496e24b319a2c0db&wsTime=1783675109 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",国产三级片@ -http://77bo.xn--fhqv92p.com/live/cx_16585.flv?wsSecret=c9f711fbc49fb4f3e31af647209fdc69&wsTime=1783612386 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",照雪 -http://xlajunasjwqoet.cssymt.com/live/cx_378879.flv?wsSecret=1fa58b27c8ca10892cffad569e56f04d&wsTime=1783672859 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",乌龙苹果茶 -http://77bo.xn--vuqy52q.com/live/cx_15530.flv?wsSecret=ee5ea4bb08968bb4155b67241ce684ca&wsTime=1783670267 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",饱饱- -http://77bo.xn--4lw519c.com/live/cx_15777.flv?wsSecret=f75fad94671cd86d91a5ec12ccce43be&wsTime=1783670502 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小佩奇 -http://77bo.xn--vuqy52q.com/live/cx_3932.flv?wsSecret=e46a71ce9af61d2ec1345511add4ec2d&wsTime=1783670705 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",苦牙妹 -http://lawoazletjsuet.sqfkkj.top/live/cx_386097.flv?wsSecret=e9f011da6b7e59fee0e21c5ed53b4d62&wsTime=1783671676 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",奶思思吖 -http://xlajunasjwqoet.cssymt.com/live/cx_386124.flv?wsSecret=c9fa4baa4a649002ca09d0bb4cd4606f&wsTime=1783674538 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小荔枝 -http://myijapiwuewla.cssymt.com/live/cx_1216.flv?wsSecret=97cbea4fd6461d235a603a240bdf1041&wsTime=1783668814 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",Yomi%252520 -http://xzqppsukemrla.jinkangyl.com/live/cx_386432.flv?wsSecret=5c1b4110fa2afcdc2ac73ac36d941155&wsTime=1783658191 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小小的人儿 -http://xcrmumeetla.abrillantlee.top/live/cx_386115.flv?wsSecret=63c61ae58ea91f037586f6917fafdcc5&wsTime=1783673923 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",你的小可爱 -http://77b.xn--vuqy52q.com/live/cx_6279.flv?wsSecret=1a087fbb8c9b4889b934626213af200e&wsTime=1783669661 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",一对性感情侣 -http://x3spmlacr.yueyongli.top/live/cx_383343.flv?wsSecret=e6cf59adf907c3000dbf45b21368ea7f&wsTime=1783663968 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",瑞蕊蕊 -http://77bo.xn--t8w422e.com/live/cx_16310.flv?wsSecret=453e864e4a09f3326e6829f4cae759eb&wsTime=1783671324 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",国产乱伦强奸@ -http://77bo.xn--fhqv92p.com/live/cx_31.flv?wsSecret=f357ca39e603950a7a1584802751855a&wsTime=1783611474 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",熊郝晓水多多%20 -http://lawoazletjsuet.sqfkkj.top/live/cx_380425.flv?wsSecret=1d542b78e4f9b3e9650e5cbff19ff1ea&wsTime=1783664047 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",冰美式 -http://likeahjadksetla.abrillantlee.top/live/cx_386857.flv?wsSecret=7da66823b687a6b229b24f12650f90ed&wsTime=1783673812 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",%20小丽 -http://likeahjadksetla.abrillantlee.top/live/cx_386098.flv?wsSecret=931fe5f7164028b6f38ca42ff4e36a05&wsTime=1783666393 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",露露秋 -http://xzqppsukemrla.jinkangyl.com/live/cx_386224.flv?wsSecret=9e3023c7fda93ad0eb7571cebf5839dc&wsTime=1783660055 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",樱小雪 -http://xcrmumeetla.abrillantlee.top/live/cx_372684.flv?wsSecret=0dd768e98504e3b30bda0503f32c5a3f&wsTime=1783670961 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",梅梅 -http://xcrmumeetla.abrillantlee.top/live/cx_386830.flv?wsSecret=91a3a8375c08001088b46cc2d9c3c5f8&wsTime=1783662114 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",大胸美眉 -http://xcrmumeetla.abrillantlee.top/live/cx_386645.flv?wsSecret=da53a0283b197d38aa8192cc729f7914&wsTime=1783675070 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",舟舟 -http://xcrmumeetla.abrillantlee.top/live/cx_386585.flv?wsSecret=802b570a73db24141603cae828d99b71&wsTime=1783671821 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",日本av放映室 -http://xcrmumeetla.abrillantlee.top/live/cx_373479.flv?wsSecret=c60808c902f54a92482ed6f32bf95b13&wsTime=1783647855 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",大蜜蜜 -http://lawoazletjsuet.sqfkkj.top/live/cx_384488.flv?wsSecret=d4a6a5e852e63f7b1bcf25eed56dd14b&wsTime=1783674851 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",岛国一本道东京热 -http://x3spmlacr.yueyongli.top/live/cx_385550.flv?wsSecret=43a00a4b6c99d6088f85db5befde63cc&wsTime=1783667884 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",花花姐姐 -http://77bo.xn--thqp73n.com/live/cx_16165.flv?wsSecret=ca307b44ea6de0c4e6c99a9e45fad3b9&wsTime=1783669250 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",我是你的猫 -http://myijapiwuewla.cssymt.com/live/cx_385556.flv?wsSecret=05d834f8a086c30febdf828fce5f69b6&wsTime=1783670789 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小怪兽o -http://77bo.xn--uw0as83a.com/live/cx_16620.flv?wsSecret=994172c77404f386da84fd0fd9c2e998&wsTime=1783670255 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小奶兮兮%7E -http://x3spmlacr.yueyongli.top/live/cx_385572.flv?wsSecret=b6b980b445899213b9eab1e6d4c82e8c&wsTime=1783672668 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",糕冷小美 -http://xzqppsukemrla.jinkangyl.com/live/cx_375631.flv?wsSecret=7655192f53a8e0fef4f28f6cf976dd7c&wsTime=1783674157 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",是炫子吖 -http://77bo.xn--kcrp02i.com/live/cx_11178.flv?wsSecret=04e158147562a0bf837c71acfc703d23&wsTime=1783670067 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",眯崽 -http://likeahjadksetla.abrillantlee.top/live/cx_383425.flv?wsSecret=70309ff3ebb2a873567572a04d6138e5&wsTime=1783655676 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",诱惑勾引潮吹@ -http://77bo.xn--fhqv92p.com/live/cx_24.flv?wsSecret=6ec8de27d6ed83481e0e021b9989a71b&wsTime=1783611799 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",招财元宝 -http://guetnzweozela.sqfkkj.top/live/cx_386181.flv?wsSecret=c5ae8ad7f46fb17a587917ff6f9554bb&wsTime=1783672708 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小幸运321 -http://77bo.xn--kcrp02i.com/live/cx_15519.flv?wsSecret=2d87c8fe7dd0702d6e666e01316be351&wsTime=1783670530 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",欧美白人黑人合集 -http://x3spmlacr.yueyongli.top/live/cx_375008.flv?wsSecret=6275b1f563348a224187f64209fee34c&wsTime=1783511115 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",大奶水蜜桃 -http://77bo.xn--t8w422e.com/live/cx_15824.flv?wsSecret=fabee35eee7dc873add9e2f4f762c11f&wsTime=1783670017 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小木木 -http://xcrmumeetla.abrillantlee.top/live/cx_385669.flv?wsSecret=7bcfc49f9d6f17f1ae4238aec0d390f5&wsTime=1783672468 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",BB小饼 -http://xrgszsbrila.yueyongli.top/live/cx_384624.flv?wsSecret=34a83a7016b620bf1bc3ea7fa8a96059&wsTime=1783662574 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",深喉控 -http://xzqppsukemrla.jinkangyl.com/live/cx_385964.flv?wsSecret=95e504f48f2a2f89bad36f035e443b4c&wsTime=1783667152 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",奶味葡萄 -http://xrgszsbrila.yueyongli.top/live/cx_386127.flv?wsSecret=da2d4699654394319b319bfda6a068f4&wsTime=1783669163 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",奶u -http://la193sahrigxt.sqfkkj.top/live/cx_381417.flv?wsSecret=5f5f824d617ff5f35c0ae1371ac94336&wsTime=1783670176 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",放荡的妻子 -http://likeahjadksetla.abrillantlee.top/live/cx_386576.flv?wsSecret=15256198cba98a02e2030ff418a5ca69&wsTime=1783670632 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",Timi: -http://xzqppsukemrla.jinkangyl.com/live/cx_364955.flv?wsSecret=aee4068dc47440d0cd15e4c3c5fabebc&wsTime=1783674457 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",Baby%252520 -http://la193sahrigxt.sqfkkj.top/live/cx_386302.flv?wsSecret=0ccdbe6fceb473b4272701c69db8d31f&wsTime=1783666248 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",三岁小葵 -http://myijapiwuewla.cssymt.com/live/cx_383044.flv?wsSecret=ecb7f93d0d9cab55a166847428101f09&wsTime=1783667756 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",精彩大秀@ -http://77b.xn--ypzw80d.com/live/cx_15861.flv?wsSecret=9d9ab928bb2910790a67114d53c505bb&wsTime=1783510957 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",05后少女专场@ -http://77bo.xn--4lw519c.com/live/cx_30.flv?wsSecret=f19a0d4fcac7289dcd1efc9423a3e370&wsTime=1783667924 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",心心丫 -http://77bo.xn--uw0as83a.com/live/cx_15985.flv?wsSecret=e1204bc29d1ad2e123d7c9043692db0c&wsTime=1783671797 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",婷妹妹 -http://xrgszsbrila.yueyongli.top/live/cx_366485.flv?wsSecret=7d19dc3b6c1a8f292251577d909dc01d&wsTime=1783662683 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",萌萌柠 -http://xzqppsukemrla.jinkangyl.com/live/cx_384055.flv?wsSecret=9cf6d65b1281673c71f18850848285c0&wsTime=1783673512 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",奶嘟嘟 -http://77b.xn--vuqy52q.com/live/cx_12613.flv?wsSecret=9dd6e80b37cdf8b51d4a4f6216377bc5&wsTime=1783671088 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",至尊百家乐 -http://myijapiwuewla.cssymt.com/live/cx_386778.flv?wsSecret=101247beb2559027f4654ae8352851ac&wsTime=1783426995 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",美美- -http://lawoazletjsuet.sqfkkj.top/live/cx_376409.flv?wsSecret=68f497004e54abf3c76f524d8e352cee&wsTime=1783674291 +http://extlive-pull-ws.inke.cn/live/1783688364976586.flv?auth_version=1&codecInfo=8192&dpSrc=-1&from=hallfe&ikHost=ws&ikLiveType=multiplayer&ikLog=1&md5sum=c848&pushHost=zego-sixlive.link.inke.cn×tamp=1783691837 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",奶思兔 +http://la193sahrigxt.sqfkkj.top/live/cx_375411.flv?wsSecret=a0a0ece07ad08c5c56cff1e5290e4f2f&wsTime=1783687671 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",梨儿 +http://guetnzweozela.sqfkkj.top/live/cx_386173.flv?wsSecret=98adaa44a83213f59590b3fdd99c8d46&wsTime=1783681294 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",花开 +http://77bo.xn--4lw519c.com/live/cx_16312.flv?wsSecret=6d1eeb999206790dbe700200ef97f509&wsTime=1783684056 #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",户外打野@ http://77bo.xn--fhqv92p.com/live/cx_15642.flv?wsSecret=35d2ca28b2d92695ff213f0ce5ccf854&wsTime=1783657266 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",深情女人 -http://la193sahrigxt.sqfkkj.top/live/cx_386094.flv?wsSecret=3536c3dbdc9e4a0438a2802b8b43a063&wsTime=1783664346 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",是你的小咪- -http://xrgszsbrila.yueyongli.top/live/cx_382407.flv?wsSecret=45b43875d609bb073887bbcdc75055a2&wsTime=1783674046 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",金西西 -http://xlajunasjwqoet.cssymt.com/live/cx_16397.flv?wsSecret=b0ea34f615394d9b16a4f17cc5d16ab5&wsTime=1783665310 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",大白兔奶糖 -http://lawoazletjsuet.sqfkkj.top/live/cx_384721.flv?wsSecret=bd2ee192e7494d715058c6451cf02448&wsTime=1783660121 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",许安画 -http://myijapiwuewla.cssymt.com/live/cx_361599.flv?wsSecret=9adff6e1dca95cc0f069f2b9e1eacca0&wsTime=1783669335 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",水仙子 -http://xcrmumeetla.abrillantlee.top/live/cx_385924.flv?wsSecret=16a8ebd32bc0a0342c5d65991b9392e4&wsTime=1783671387 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",依情柔念 -http://xcrmumeetla.abrillantlee.top/live/cx_386831.flv?wsSecret=3676be9051763478576b5c518e286488&wsTime=1783670617 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",溜溜子 -http://x3spmlacr.yueyongli.top/live/cx_386319.flv?wsSecret=486441099919f806024e2d4a24df5715&wsTime=1783663194 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",水多多一线天 -http://x3spmlacr.yueyongli.top/live/cx_386894.flv?wsSecret=50485613a9fe17c32830beeab89f9518&wsTime=1783660362 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小薇薇 -http://la193sahrigxt.sqfkkj.top/live/cx_386718.flv?wsSecret=c5186ebd37159410fcc21366bebc0d52&wsTime=1783672909 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",媚儿6 -http://x3spmlacr.yueyongli.top/live/cx_386176.flv?wsSecret=3d9c97980ac440f561ed1e3b9d4b6308&wsTime=1783665262 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",香香 +http://likeahjadksetla.abrillantlee.top/live/cx_386009.flv?wsSecret=94849b0230b7a6ec9f1761c803dda9e8&wsTime=1783690717 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小乖 +http://lawoazletjsuet.sqfkkj.top/live/cx_376602.flv?wsSecret=a58f0562cd9812bcb6e61cd179e2df3d&wsTime=1783682089 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",岛国一本道东京热 +http://x3spmlacr.yueyongli.top/live/cx_385550.flv?wsSecret=43a00a4b6c99d6088f85db5befde63cc&wsTime=1783667884 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",舟舟 +http://xcrmumeetla.abrillantlee.top/live/cx_386585.flv?wsSecret=98804eee18cc75ad193c9de4004d9241&wsTime=1783686203 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",一苒 +http://xrgszsbrila.yueyongli.top/live/cx_385160.flv?wsSecret=ef2063691d8e4e617f8e988476b1bd31&wsTime=1783684445 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小内内 +http://77bo.xn--fhqv92p.com/live/cx_14836.flv?wsSecret=9e77545c973453011583d61f51554151&wsTime=1783684521 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",懒懒Q +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://xcrmumeetla.abrillantlee.top/live/cx_386645.flv?wsSecret=8757b51293ddc88e7ef13b6ecfe9625d&wsTime=1783679414 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",申溪宁 +http://la193sahrigxt.sqfkkj.top/live/cx_379581.flv?wsSecret=c20c177b5aacb089ea3ff1e07bb714df&wsTime=1783677657 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",奶味葡萄 +http://xzqppsukemrla.jinkangyl.com/live/cx_386127.flv?wsSecret=c48acc69bb667611860dcd849482a846&wsTime=1783687253 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",我超甜 +http://xzqppsukemrla.jinkangyl.com/live/cx_351087.flv?wsSecret=8f51abbe3e68a63b5afb7c7e6980c2ce&wsTime=1783690328 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",司理理 +http://likeahjadksetla.abrillantlee.top/live/cx_377328.flv?wsSecret=f01124b8b3e08746b36488429b18515f&wsTime=1783684962 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",原儿 +http://77bo.xn--ypzw80d.com/live/cx_15169.flv?wsSecret=d4622c74413b53db32b992a6abfbf488&wsTime=1783683408 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小酒窝儿。 +http://x3spmlacr.yueyongli.top/live/cx_381555.flv?wsSecret=46ec30527d4c2bc44b350925fabbb637&wsTime=1783685067 #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",三叶 http://likeahjadksetla.abrillantlee.top/live/cx_380465.flv?wsSecret=650c756359f4ff182c708c05067e5403&wsTime=1783672125 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",Cos二次元@ -http://77b.xn--ypzw80d.com/live/cx_32.flv?wsSecret=953dc0b7f572ad0c552237e44f46e1ce&wsTime=1783516559 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",露呀 -http://xrgszsbrila.yueyongli.top/live/cx_386033.flv?wsSecret=7cf151595f9017822c85d99c2ead61b8&wsTime=1783672908 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",蓝汐 -http://77b.xn--ypzw80d.com/live/cx_4062.flv?wsSecret=49cbed8d71da5ceb461f9e3774cd18eb&wsTime=1783664209 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",紫紫 +http://x3spmlacr.yueyongli.top/live/cx_385375.flv?wsSecret=d69f4dfe2c7d463bdf402cc275ef2c03&wsTime=1783676607 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",io. +http://likeahjadksetla.abrillantlee.top/live/cx_374282.flv?wsSecret=1bce24817b7152e2e444a01fa7a6869d&wsTime=1783691406 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",乡村表妹 +http://likeahjadksetla.abrillantlee.top/live/cx_379199.flv?wsSecret=b7b72fd7567c2622ef4788f25a0122fa&wsTime=1783688094 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",甜豆 +http://77bo.xn--thqp73n.com/live/cx_15561.flv?wsSecret=41fbfee5711c6e1105bea0ca6cf9cac6&wsTime=1783683898 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",蛋糕呀 +http://xrgszsbrila.yueyongli.top/live/cx_343894.flv?wsSecret=2ec11f2e78d2b049974f377d221b1802&wsTime=1783686668 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",风骚露骨 +http://likeahjadksetla.abrillantlee.top/live/cx_376873.flv?wsSecret=cd8cf4ae8935f946718ac7202a0ef392&wsTime=1783689429 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",酸奶奶昔 +http://lawoazletjsuet.sqfkkj.top/live/cx_386725.flv?wsSecret=0fd509f6ab435c868c626da64aff29c7&wsTime=1783672837 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",涂一瀛 +http://x3spmlacr.yueyongli.top/live/cx_362643.flv?wsSecret=533c2b5b202e9f28ab13c2cf13612a67&wsTime=1783685253 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",Timi: +http://xzqppsukemrla.jinkangyl.com/live/cx_364955.flv?wsSecret=fca9a7b8d11bee352ccfa8eb1744c15d&wsTime=1783685021 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",苦牙妹 +http://lawoazletjsuet.sqfkkj.top/live/cx_386097.flv?wsSecret=e9f011da6b7e59fee0e21c5ed53b4d62&wsTime=1783671676 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",求爱妹妹 +http://77bo.xn--thqp73n.com/live/cx_16614.flv?wsSecret=6e9d98e941f8b48cb419b9204d0d74f4&wsTime=1783684655 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",辣椒味的魅 +http://77b.xn--ypzw80d.com/live/cx_16698.flv?wsSecret=f6864a454640f3e2ffa5a4a63adbede3&wsTime=1783676224 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",未成年@ +http://77bo.xn--fhqv92p.com/live/cx_28.flv?wsSecret=6d89b87746fb02d70e60554b09ecce02&wsTime=1783611906 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",浓浓 +http://x3spmlacr.yueyongli.top/live/cx_368741.flv?wsSecret=50d78712fce6f940fbde07c03642e780&wsTime=1783684422 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",姜南溪 +http://x3spmlacr.yueyongli.top/live/cx_381480.flv?wsSecret=2312bee64329432bfb4697145efde839&wsTime=1783676715 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",酥酥m +http://lawoazletjsuet.sqfkkj.top/live/cx_385708.flv?wsSecret=12b3516b5aacaa8ea0c2697e49fa86a1&wsTime=1783690164 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",紧4u +http://xrgszsbrila.yueyongli.top/live/cx_385566.flv?wsSecret=aa701c01d17d8ae6ab49c5bde5cfeb28&wsTime=1783683470 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",酥糖 +http://guetnzweozela.sqfkkj.top/live/cx_386811.flv?wsSecret=340515aef8a5c71c1a3ad6f0597777ab&wsTime=1783682721 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",钱多多 +http://xcrmumeetla.abrillantlee.top/live/cx_386889.flv?wsSecret=490ab2f563f424495cb0cd2246d94df7&wsTime=1783685835 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",奶香四溢 +http://xzqppsukemrla.jinkangyl.com/live/cx_385040.flv?wsSecret=759ca2adacd75a8a7238cc3d31699086&wsTime=1783690532 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",慕夏 +http://x3spmlacr.yueyongli.top/live/cx_381391.flv?wsSecret=3252a8139060766f30f83a518f30fe2b&wsTime=1783688316 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",草莓不甜 +http://xlajunasjwqoet.cssymt.com/live/cx_349623.flv?wsSecret=cb73d231ea79de5bc8109b0a3dd47735&wsTime=1783676931 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",姐姐r +http://x3spmlacr.yueyongli.top/live/cx_363144.flv?wsSecret=fa61eaf34c4c3525dac5faadb401bb2f&wsTime=1783676721 #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",少女乱伦@ http://77b.xn--ypzw80d.com/live/cx_15966.flv?wsSecret=1c4a82a57bc9e80f7f6617342a21b227&wsTime=1783510635 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",苏恬 -http://lawoazletjsuet.sqfkkj.top/live/cx_381511.flv?wsSecret=ba0fc3a7bdbda038e870986ae2ab1270&wsTime=1783658475 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",恰口酱酱 +http://xcplawater02.yueyongli.top/live/cx_378408.flv?wsSecret=3b9009191117f293638147f186a22a38&wsTime=1783681713 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",刘开心 +http://xcrmumeetla.abrillantlee.top/live/cx_368659.flv?wsSecret=978d5b6e18065dfed0674b457cfa3442&wsTime=1783689326 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",云杉 +http://lawoazletjsuet.sqfkkj.top/live/cx_385568.flv?wsSecret=ae7a2c1456f7a064d1ef9ae8a6fd59da&wsTime=1783684997 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",巧乐滋 +http://77bo.xn--uw0as83a.com/live/cx_14892.flv?wsSecret=beddb49422fa2c84af7f46718c2c13c9&wsTime=1783684261 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",崽崽猫 +http://xrgszsbrila.yueyongli.top/live/cx_385468.flv?wsSecret=d04f7682c792efba86aa2198296c5f28&wsTime=1783684119 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小猫可爱 +http://xcrmumeetla.abrillantlee.top/live/cx_386626.flv?wsSecret=75c22fbc744d67e80e8970c45b4ba71b&wsTime=1783690183 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",清禾 +http://myijapiwuewla.cssymt.com/live/cx_386787.flv?wsSecret=c9cf7b54461e12375d26b90c3fc5a839&wsTime=1783691536 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",亲亲 +http://xcrmumeetla.abrillantlee.top/live/cx_386748.flv?wsSecret=7aa78c6529762b65ab6e49dec0bb8365&wsTime=1783673652 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",依情柔念 +http://xcrmumeetla.abrillantlee.top/live/cx_386831.flv?wsSecret=a29c079230a2fdef762db8204acd2946&wsTime=1783680878 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",欧美白人黑人合集 +http://x3spmlacr.yueyongli.top/live/cx_375008.flv?wsSecret=6275b1f563348a224187f64209fee34c&wsTime=1783511115 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",国产乱伦强奸@ +http://77bo.xn--fhqv92p.com/live/cx_31.flv?wsSecret=f357ca39e603950a7a1584802751855a&wsTime=1783611474 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",至尊百家乐 +http://myijapiwuewla.cssymt.com/live/cx_386778.flv?wsSecret=101247beb2559027f4654ae8352851ac&wsTime=1783426995 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",看看裙底 +http://77bo.xn--vuqy52q.com/live/cx_5113.flv?wsSecret=be16420f20781f05deeb45ee2fe11fd5&wsTime=1783684616 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",云朵啊 +http://77bo.xn--vuqy52q.com/live/cx_15308.flv?wsSecret=3e9883da4c4f9357efea2dd92cdf62af&wsTime=1783683618 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",安安。。 +http://lawoazletjsuet.sqfkkj.top/live/cx_386060.flv?wsSecret=5a3c8b6df44ebc0f37052472ba370913&wsTime=1783682972 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",海棠依旧 +http://x3spmlacr.yueyongli.top/live/cx_382709.flv?wsSecret=2b2ab3e091eae39c3e3308872463ab6c&wsTime=1783692047 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",南小奈 +http://la193sahrigxt.sqfkkj.top/live/cx_385898.flv?wsSecret=3845d2146afc134b1ea46a7c327e908f&wsTime=1783683952 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",掰块小饼干 +http://xrgszsbrila.yueyongli.top/live/cx_385760.flv?wsSecret=52a6c9a22d0e098202999ebc38a6b92e&wsTime=1783675653 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小七七 +http://likeahjadksetla.abrillantlee.top/live/cx_386764.flv?wsSecret=281c4a1c4661e74979d0cedb9b7f90e2&wsTime=1783683847 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",妩媚御姐 +http://likeahjadksetla.abrillantlee.top/live/cx_384791.flv?wsSecret=cae2773490ac61b5ea644716536c376f&wsTime=1783688075 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",纯情瑶%20M- +http://xcrmumeetla.abrillantlee.top/live/cx_368240.flv?wsSecret=a95f13f3800ffe831c2b8e0c615f8722&wsTime=1783691303 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",金枝玉叶 +http://x3spmlacr.yueyongli.top/live/cx_386185.flv?wsSecret=81f3c4156d277df67600ac0a146b2843&wsTime=1783688368 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",多水水 +http://guetnzweozela.sqfkkj.top/live/cx_385841.flv?wsSecret=7452bf2e1632f9c1ff1aa3b3a7065eb9&wsTime=1783688247 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",日本av放映室 +http://x3spmlacr.yueyongli.top/live/cx_373479.flv?wsSecret=73b0689b3d8c62443c9083e773d255d8&wsTime=1783682401 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",大胸团子 +http://77bo.xn--t8w422e.com/live/cx_16469.flv?wsSecret=635d43947e1dc50b947cb1aeb6093181&wsTime=1783692119 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",职场身体上位@ +http://77bo.xn--fhqv92p.com/live/cx_15604.flv?wsSecret=5e61bd9a6e6fe67058bdba1401b01de2&wsTime=1783606500 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",安琪 +http://lawoazletjsuet.sqfkkj.top/live/cx_384377.flv?wsSecret=3f43eaf630351751865108eea35875d3&wsTime=1783684545 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",可可好骚 +http://la193sahrigxt.sqfkkj.top/live/cx_386068.flv?wsSecret=6b326ba21f3a87af6a94230ca070b2cd&wsTime=1783682883 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",旺旺雪饼 +http://77b.xn--vuqy52q.com/live/cx_16401.flv?wsSecret=6685ed7b3be413289c64fa5936550904&wsTime=1783683322 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小喇叭 +http://77bo.xn--vuqy52q.com/live/cx_4605.flv?wsSecret=7b4d894704e4c27fc409c6dc6586d7d7&wsTime=1783684604 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",兮若 +http://lawoazletjsuet.sqfkkj.top/live/cx_369026.flv?wsSecret=a13288396e4ab18dc90c02e06b042c6b&wsTime=1783675433 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",四毛 +http://77bo.xn--thqp73n.com/live/cx_15377.flv?wsSecret=17bf5f95b92ba0568c2e1235570d5417&wsTime=1783683994 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",泡泡糖o +http://xrgszsbrila.yueyongli.top/live/cx_386163.flv?wsSecret=fe7390d136d7211e1a5b01ae6454efd6&wsTime=1783686968 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",欲望女孩i +http://77bo.xn--t8w422e.com/live/cx_6263.flv?wsSecret=a90bf564674ee77b0a691c746fced516&wsTime=1783684313 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",诱惑勾引潮吹@ +http://77bo.xn--fhqv92p.com/live/cx_24.flv?wsSecret=6ec8de27d6ed83481e0e021b9989a71b&wsTime=1783611799 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小纯纯! +http://lawoazletjsuet.sqfkkj.top/live/cx_378676.flv?wsSecret=32d90860cb2a1a2598c7635c53c8a1e0&wsTime=1783678754 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",依依实力带飞 +http://xcplawater02.yueyongli.top/live/cx_364954.flv?wsSecret=17d7685131f90b12cc902e16a9cfa3ee&wsTime=1783681050 #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",狂草精神小妹.@ http://77b.xn--ypzw80d.com/live/cx_120.flv?wsSecret=fed4963c6821af0ff9c68e4408fa33c6&wsTime=1783516392 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",恩恩呢 -http://xrgszsbrila.yueyongli.top/live/cx_385370.flv?wsSecret=1389997e59a52960884deecfdf28c548&wsTime=1783669195 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",浪花朵朵 -http://77bo.xn--uw0as83a.com/live/cx_16309.flv?wsSecret=4e89caba481ed7cb9663326ce19ae868&wsTime=1783671038 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",晶晶、 -http://la193sahrigxt.sqfkkj.top/live/cx_352189.flv?wsSecret=2350c10ce937944a309774ca163c922a&wsTime=1783663520 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",美丽的蝴蝶 -http://lawoazletjsuet.sqfkkj.top/live/cx_370859.flv?wsSecret=bcf76ae6ce4acf018085dff41e943157&wsTime=1783673501 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",温玥玥 -http://guetnzweozela.sqfkkj.top/live/cx_385701.flv?wsSecret=fd444ab17fc694948cdca2338387135f&wsTime=1783672215 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",颜宝 -http://77bo.xn--t8w422e.com/live/cx_16565.flv?wsSecret=4ce4891b5a1f606872edeef83aa4f3cf&wsTime=1783671346 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",宝宝嫩骚逼 -http://xcrmumeetla.abrillantlee.top/live/cx_386829.flv?wsSecret=433d1b01657c37c19eb95cdfda4d2921&wsTime=1783671696 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",优乐美o -http://lawoazletjsuet.sqfkkj.top/live/cx_358896.flv?wsSecret=1a1599ff7fbfcff7758d37d764cdcaaf&wsTime=1783664345 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",淼淼 -http://la193sahrigxt.sqfkkj.top/live/cx_385696.flv?wsSecret=7ec004a55c04ce84e425d74a38d51ae9&wsTime=1783669942 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",依儿 -http://guetnzweozela.sqfkkj.top/live/cx_386781.flv?wsSecret=513f976693a3e4cb75daaf6688e594a4&wsTime=1783666937 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",Kiki%20甜心贝 -http://xlajunasjwqoet.cssymt.com/live/cx_385075.flv?wsSecret=f931425b60443e8b1c66a0e4020264b9&wsTime=1783673098 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",青衣小姐 -http://la193sahrigxt.sqfkkj.top/live/cx_386849.flv?wsSecret=719a564467f202de7e9db20f6915f1cd&wsTime=1783655700 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",亲亲 -http://xcrmumeetla.abrillantlee.top/live/cx_386748.flv?wsSecret=7aa78c6529762b65ab6e49dec0bb8365&wsTime=1783673652 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",酸奶奶昔 -http://lawoazletjsuet.sqfkkj.top/live/cx_386725.flv?wsSecret=0fd509f6ab435c868c626da64aff29c7&wsTime=1783672837 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",粉粉白鹿 -http://guetnzweozela.sqfkkj.top/live/cx_386178.flv?wsSecret=6ce17b5c959cc91de9d772c259514ef7&wsTime=1783666869 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",曦儿 -http://x3spmlacr.yueyongli.top/live/cx_385527.flv?wsSecret=99718d44b8fa43ab5e4427b60cea9031&wsTime=1783657151 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",人鱼姬 -http://la193sahrigxt.sqfkkj.top/live/cx_386671.flv?wsSecret=5f993c2cfbde82c457ff1ec2bd202a6e&wsTime=1783668909 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",慕慕呀 -http://77bo.xn--4lw519c.com/live/cx_16762.flv?wsSecret=994b1b08ff5b7602310055d8afb97d53&wsTime=1783670615 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",仙桃桃 -http://likeahjadksetla.abrillantlee.top/live/cx_382623.flv?wsSecret=804377a40ff982670632dbf70d862f2c&wsTime=1783667781 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",秀人模特甜甜 -http://likeahjadksetla.abrillantlee.top/live/cx_386103.flv?wsSecret=dbc5efb712d2af89d8c726ef63715349&wsTime=1783668251 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",是肉丝呀 -http://77bo.xn--4lw519c.com/live/cx_13322.flv?wsSecret=2bb2cc8ab8d7f9f8d80c50f46ef6d7a8&wsTime=1783669821 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/huahudie.jpg" group-title="花蝴蝶",小妈 -http://xcrmumeetla.abrillantlee.top/live/cx_386682.flv?wsSecret=767f1aad5ba04b2711524ccab48b40ed&wsTime=1783663015 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/LOVE.jpg" group-title="LOVE",大浪交友厅 -http://extlive-pull-ws.inke.cn/live/1783666814732064.flv?auth_version=1&codecInfo=8192&dpSrc=-1&from=hallfe&ikHost=ws&ikLiveType=multiplayer&ikLog=1&md5sum=4c73&pushHost=zego-sixlive.link.inke.cn×tamp=1783675324 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/xiaodaji.jpg" group-title="小妲己",支付宝风控解除 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",钢管二萌 +http://xlajunasjwqoet.cssymt.com/live/cx_367602.flv?wsSecret=10ead9d374b5ddd95aea08adfd4547c7&wsTime=1783690269 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",煎饼果子- +http://likeahjadksetla.abrillantlee.top/live/cx_371833.flv?wsSecret=173e1c662c3a1c6072488dbd762fa189&wsTime=1783691027 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",坦克贝塔 +http://xzqppsukemrla.jinkangyl.com/live/cx_381205.flv?wsSecret=fe749f825cd98e575ba2412c6738374f&wsTime=1783683305 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",草莓味 +http://xcrmumeetla.abrillantlee.top/live/cx_386880.flv?wsSecret=2043157f4ca0da7af0012a30b759ed48&wsTime=1783685352 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",仙宁 +http://xrgszsbrila.yueyongli.top/live/cx_386707.flv?wsSecret=4680b2a6c60ae3250391062eb24018fc&wsTime=1783683598 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",八尺夫人 +http://la193sahrigxt.sqfkkj.top/live/cx_368657.flv?wsSecret=3f6caf12fccfe10c88df21c3909aee0d&wsTime=1783684213 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",哇韩水水 +http://x3spmlacr.yueyongli.top/live/cx_366905.flv?wsSecret=73a5d8443a21eae23bd0713c256b4f50&wsTime=1783684067 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",国产三级片@ +http://77bo.xn--fhqv92p.com/live/cx_16585.flv?wsSecret=c9f711fbc49fb4f3e31af647209fdc69&wsTime=1783612386 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",玫瑰姑娘 +http://lawoazletjsuet.sqfkkj.top/live/cx_385821.flv?wsSecret=74e3ad970dcccf8e6c686f0433c235c8&wsTime=1783692092 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小欣很敏感 +http://xcrmumeetla.abrillantlee.top/live/cx_386066.flv?wsSecret=54a432e5d59b643e8cbee9063af53e24&wsTime=1783682990 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",奶u +http://la193sahrigxt.sqfkkj.top/live/cx_381417.flv?wsSecret=af6b682ee872dea66cb5f5b1e519403e&wsTime=1783686999 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",比水蜜桃还嫩 +http://xzqppsukemrla.jinkangyl.com/live/cx_385994.flv?wsSecret=e08e5afff7ff13b4600e4dfeaa6fb37a&wsTime=1783692023 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",骚月月 +http://xzqppsukemrla.jinkangyl.com/live/cx_386092.flv?wsSecret=890f6584b509f6ff55029de1642550b7&wsTime=1783680924 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",婷妹妹 +http://myijapiwuewla.cssymt.com/live/cx_366485.flv?wsSecret=affcb62f1b89409fa3005db16386ce10&wsTime=1783688662 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",不加糖 +http://77bo.xn--uw0as83a.com/live/cx_16743.flv?wsSecret=5a6ce118c5f17d22903f56ba78802d6a&wsTime=1783683890 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",真实探花嫖娼@ +http://77bo.xn--t8w422e.com/live/cx_15710.flv?wsSecret=2dc1944a162813e51f069aea9aab3f4b&wsTime=1783612908 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",贝贝 +http://xcrmumeetla.abrillantlee.top/live/cx_386683.flv?wsSecret=fc491b45688fe7217b80675758fa65c4&wsTime=1783689464 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",精彩大秀@ +http://77b.xn--ypzw80d.com/live/cx_15861.flv?wsSecret=9d9ab928bb2910790a67114d53c505bb&wsTime=1783510957 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",包莘菜 +http://lawoazletjsuet.sqfkkj.top/live/cx_386099.flv?wsSecret=a954be31a98e95b6694fa58c2d4b5dfe&wsTime=1783691945 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",奶油小甜甜 +http://77bo.xn--thqp73n.com/live/cx_15503.flv?wsSecret=8c8cfb40e1fd4e9c34281b6364c0d548&wsTime=1783684695 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",按摩馆的秘密@ +http://77bo.xn--fhqv92p.com/live/cx_15652.flv?wsSecret=4f7d861ebdfa95e3de438822c638b327&wsTime=1783611676 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",支付宝风控解除 https://vod.dengzhidao.cn/video/fengkong.mp4 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/yiyi.jpg" group-title="依依",后入希希要用力 -http://lawoazletjsuet.sqfkkj.top/live/cx_354263.flv?wsSecret=01a8b2ea161e80696020c2ff35737821&wsTime=1783675152 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/yiyi.jpg" group-title="依依",玖月儿 -http://guetnzweozela.sqfkkj.top/live/cx_386166.flv?wsSecret=3c84d8322e1d53d691531947a8ff2dc7&wsTime=1783675570 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/yiyi.jpg" group-title="依依",萌萌不暴躁 -http://77b.xn--vuqy52q.com/live/cx_15547.flv?wsSecret=d209bfc2ea367025bfc16f10cfc5983a&wsTime=1783675273 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/yiyi.jpg" group-title="依依",奶思思吖 -http://xlajunasjwqoet.cssymt.com/live/cx_386124.flv?wsSecret=839fa664ba76a082eb20bc4c932a9416&wsTime=1783675603 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/yiyi.jpg" group-title="依依",小容儿 -http://guetnzweozela.sqfkkj.top/live/cx_385596.flv?wsSecret=b368f3425d22e1526cc2f7b7eda3cebd&wsTime=1783675510 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/yiyi.jpg" group-title="依依",可爱脏脏包~ -http://lawoazletjsuet.sqfkkj.top/live/cx_371833.flv?wsSecret=91b80b6413836f35630fe85419da84b5&wsTime=1783675426 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/yiyi.jpg" group-title="依依",兮若 -http://lawoazletjsuet.sqfkkj.top/live/cx_369026.flv?wsSecret=a13288396e4ab18dc90c02e06b042c6b&wsTime=1783675433 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/yiyi.jpg" group-title="依依",比水蜜桃还嫩 -http://xzqppsukemrla.jinkangyl.com/live/cx_385994.flv?wsSecret=29b2c24226ea9701c5f2efe261a050fc&wsTime=1783675575 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/aosika.jpg" group-title="奥斯卡",%20小丽 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",%20小丽 http://likeahjadksetla.abrillantlee.top/live/cx_386098.flv?wsSecret=2e387a53b0d07bea39ded1c3d505239d&wsTime=1783675420 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",MarissaFox -https://edge-cdn2.streamparty.online/LiveApp/streams/user6a0c6b55e6315/gJ5MytKHuo7cZl0s12978981134140274_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",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="欧美FEATURED",SofiAnne -https://edge-cdn2.streamparty.online/LiveApp/streams/user6a01d7f30e31b/ByywJuZPTl0LTVdi9198725527600407_adaptive.m3u8 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",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="欧美FEATURED",KeiraDark -https://edge-cdn2.streamparty.online/LiveApp/streams/user677d5dd479c88/p8g3t8SIdlqQcnwa5296648744363006_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",安欣 +http://77bo.xn--vuqy52q.com/live/cx_7945.flv?wsSecret=23c58a7572cc539d9bf4ee6bdd8683b5&wsTime=1783677465 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",妮妮兔s +http://xzqppsukemrla.jinkangyl.com/live/cx_386262.flv?wsSecret=bfc3df51c60f3cda89fc38bfe1dabe92&wsTime=1783689721 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",宝宝嫩骚逼 +http://xcrmumeetla.abrillantlee.top/live/cx_386829.flv?wsSecret=3320b80e8b1f9a801305e7b7914f0e4a&wsTime=1783690140 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",可爱鱼i +http://guetnzweozela.sqfkkj.top/live/cx_384046.flv?wsSecret=dacccbf73c20854b51831851188b18c8&wsTime=1783685812 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",熊郝晓水多多%20 +http://la193sahrigxt.sqfkkj.top/live/cx_380425.flv?wsSecret=85a6df75020c656f418eee9f4528b17a&wsTime=1783681426 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",三岁小葵 +http://myijapiwuewla.cssymt.com/live/cx_383044.flv?wsSecret=b4cfa78ccf3c452ebb7412eea3121438&wsTime=1783684196 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",多米, +http://xlajunasjwqoet.cssymt.com/live/cx_364327.flv?wsSecret=9733b14f4cfa0c0df57f7f2007e4e431&wsTime=1783656847 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",米妮宝 +http://77bo.xn--vuqy52q.com/live/cx_15542.flv?wsSecret=0aaf44f0c20b2871dae9afc36baf7c22&wsTime=1783676855 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",巧乐兹 +http://la193sahrigxt.sqfkkj.top/live/cx_386037.flv?wsSecret=b5ada6f895fe88d9ce6204e19bc00171&wsTime=1783667560 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",精彩剧情@ +http://77b.xn--ypzw80d.com/live/cx_16437.flv?wsSecret=4eb3a5cd4aa9316ce8565237bd53ad9f&wsTime=1783511123 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",蓝汐 +http://77b.xn--ypzw80d.com/live/cx_4062.flv?wsSecret=09dddd27e274469fab1a274b15a79b18&wsTime=1783684283 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",淼淼 +http://lawoazletjsuet.sqfkkj.top/live/cx_385696.flv?wsSecret=8ca5f02fc00159d99b4b61515420fecd&wsTime=1783690861 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",Cos二次元@ +http://77b.xn--ypzw80d.com/live/cx_32.flv?wsSecret=953dc0b7f572ad0c552237e44f46e1ce&wsTime=1783516559 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",05后少女专场@ +http://77bo.xn--4lw519c.com/live/cx_30.flv?wsSecret=f19a0d4fcac7289dcd1efc9423a3e370&wsTime=1783667924 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",骚倪倪 +http://77b.xn--ypzw80d.com/live/cx_14193.flv?wsSecret=bed2556aa53219323a003fa72aa7f4a1&wsTime=1783683940 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",娜娜 +http://lawoazletjsuet.sqfkkj.top/live/cx_386747.flv?wsSecret=cb09ba384f23fd884ba96861bad5a00b&wsTime=1783691541 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",氧气 +http://77bo.xn--uw0as83a.com/live/cx_74.flv?wsSecret=cd96765f075df5364742fc6441a98fb0&wsTime=1783692026 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",离异的妈妈 +http://likeahjadksetla.abrillantlee.top/live/cx_386013.flv?wsSecret=b17b89c84fd9154a4492731bee230a0d&wsTime=1783691624 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",有有 +http://77bo.xn--4lw519c.com/live/cx_16689.flv?wsSecret=47b6cc67f37eb0ab4e083d9723025996&wsTime=1783684538 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",甜心KK教主 +http://myijapiwuewla.cssymt.com/live/cx_369452.flv?wsSecret=4b79a142abcbae3f22241c62239bb6b9&wsTime=1783677144 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",温%20酒 +http://likeahjadksetla.abrillantlee.top/live/cx_362932.flv?wsSecret=347214d66e4dbff819542864ca38d076&wsTime=1783679707 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",骚的不行 +http://xcrmumeetla.abrillantlee.top/live/cx_386065.flv?wsSecret=1720917512e50b6a7718efe4901fd1f9&wsTime=1783683770 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",懒懒Q +http://myijapiwuewla.cssymt.com/live/cx_385968.flv?wsSecret=e14da8005f8dd7ccbbcf1ad2c7d49bec&wsTime=1783689612 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",欧北北 +http://77b.xn--ypzw80d.com/live/cx_16645.flv?wsSecret=213bdb19ded7d5ded769321a4c97d0f8&wsTime=1783684077 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/huahudie.jpg" group-title="花蝴蝶",妩媚御姐 +http://likeahjadksetla.abrillantlee.top/live/cx_384791.flv?wsSecret=3c216cf124820c5cdc5eb2718b548888&wsTime=1783692462 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/huahudie.jpg" group-title="花蝴蝶",是小奶猫吖 +http://77b.xn--vuqy52q.com/live/cx_15562.flv?wsSecret=483e1843c1a5e5b3f2e839025b978808&wsTime=1783686393 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/huahudie.jpg" group-title="花蝴蝶",绝情瑶 +http://likeahjadksetla.abrillantlee.top/live/cx_385363.flv?wsSecret=def67874f84f480b9849458ada81fdb2&wsTime=1783692669 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/huahudie.jpg" group-title="花蝴蝶",你的煮人 +http://xlajunasjwqoet.cssymt.com/live/cx_384691.flv?wsSecret=eafde89299a177ef6b54e132de22d00d&wsTime=1783692680 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/huahudie.jpg" group-title="花蝴蝶",小耳朵66 +http://x3spmlacr.yueyongli.top/live/cx_361786.flv?wsSecret=542312ce813ebd47efeadab417ebb03c&wsTime=1783692501 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/huahudie.jpg" group-title="花蝴蝶",诱惑绾绾 +http://guetnzweozela.sqfkkj.top/live/cx_385731.flv?wsSecret=83ef83b544b62e8df11171e11bdbe04d&wsTime=1783692345 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/huahudie.jpg" group-title="花蝴蝶",芷萌 +http://la193sahrigxt.sqfkkj.top/live/cx_385851.flv?wsSecret=58be539c6a42b22a23a3ea0ef42aca97&wsTime=1783678703 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/huahudie.jpg" group-title="花蝴蝶",小薇薇 +http://likeahjadksetla.abrillantlee.top/live/cx_386718.flv?wsSecret=97ffa1339321b799e49e0f4aad7aa84e&wsTime=1783692420 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/huahudie.jpg" group-title="花蝴蝶",月下风流 +http://la193sahrigxt.sqfkkj.top/live/cx_383164.flv?wsSecret=d25417eb86db3529eab3dd93c0f2b231&wsTime=1783691882 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/huahudie.jpg" group-title="花蝴蝶",李富贵 +http://77bo.xn--thqp73n.com/live/cx_15595.flv?wsSecret=3b16ce63aa758bc8ee13e7aa4a5e2fbf&wsTime=1783684935 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mitao.jpg" group-title="蜜桃",小肉松 +http://77bo.xn--t8w422e.com/live/cx_16669.flv?wsSecret=176ba889cdf73ef21359a550f24427f9&wsTime=1783683535 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mitao.jpg" group-title="蜜桃",小薇薇 +http://la193sahrigxt.sqfkkj.top/live/cx_386718.flv?wsSecret=11394756be40321b7b0da9ed399afebb&wsTime=1783685356 #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",JennaDay https://edge-cdn2.streamparty.online/LiveApp/streams/user69d61da796417/hWUdmayE7Bw7dGGe7157472229606929_adaptive.m3u8 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",TessaXStar -https://edge-cdn2.streamparty.online/LiveApp/streams/user6a2fb7c745d22/EDfBZzFemZrBTyL211951088870308826_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",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",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",LacieWard -https://edge-cdn2.streamparty.online/LiveApp/streams/user6a38e244a74bd/whtn02rboyKJR18F13420066312806619_adaptive.m3u8 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",CelesteBailey -https://edge-cdn2.streamparty.online/LiveApp/streams/user6a38dee219182/oqilRPiDzqigeImO15159018879948457_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",BunnySexy -https://edge-cdn1.streamparty.online/LiveApp/streams/user6991f87a1a537/3tQDgVW4Ty9Di6aJ3460330674181926_adaptive.m3u8 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",New_kessie -https://edge-cdn1.streamparty.online/LiveApp/streams/user684ba8098f3a1/9qmnGuPCZxkj5ecW11175676102547289_adaptive.m3u8 -#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",Arianaxo -https://edge-cdn2.streamparty.online/LiveApp/streams/user6a3d23c8acd15/wZHVLDbhVl2pvkiD14570846175192791_adaptive.m3u8 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",Wildkitty -https://edge-cdn1.streamparty.online/LiveApp/streams/user6a054a950175d/geBxG8g1RSdGwbaQ9081039991381223_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",Beatricee -https://edge-cdn1.streamparty.online/LiveApp/streams/user68ea413b25b58/k3jdgKHs0th8SsuC3401127514170365_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",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="欧美FEATURED",maiyenii -https://edge-cdn2.streamparty.online/LiveApp/streams/user6a3d4bc525b33/bT1UBBn9MA7zZp0Q13399707660518417_adaptive.m3u8 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",JadeRoyce -https://edge-cdn2.streamparty.online/LiveApp/streams/user69e9f43aeb884/lG6urQh6xzdzbmly7292263411761171_adaptive.m3u8 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",xinbao -https://edge-cdn2.streamparty.online/LiveApp/streams/user6887331d82b7e/ffNvpn6rZ2virpz63397945979591053_adaptive.m3u8 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",LexiStorm -https://edge-cdn2.streamparty.online/LiveApp/streams/user6a3d32250062c/EDa5AyFVa5bQC6R714565448046580986_adaptive.m3u8 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",prettybabyalani -https://manifest-server.naiadsystems.com/live/58cbe87e-7787-48ca-b41a-6fe6a0a89573.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=meowth%3A8303&btk=dWo0zouYN3bCxcj4H5Mb0t6iv%2BrX6FXBLajChquK2tc&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%22meowth%3A8303%22%2C%22btk%22%3A%22dWo0zouYN3bCxcj4H5Mb0t6iv%2BrX6FXBLajChquK2tc%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2258cbe87e-7787-48ca-b41a-6fe6a0a89573%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",MissMaeva -https://manifest-server.naiadsystems.com/live/348969d3-acef-40ab-8996-ee9692baeef3.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=cloyster%3A8303&btk=bYtPorQxxqgMo5McQiWSG6EJ%2Bvfq6yQA9LVECYhZxXs&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%22cloyster%3A8303%22%2C%22btk%22%3A%22bYtPorQxxqgMo5McQiWSG6EJ%2Bvfq6yQA9LVECYhZxXs%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22348969d3-acef-40ab-8996-ee9692baeef3%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",ArielSweetieee -https://manifest-server.naiadsystems.com/live/5150c4d6-0ae5-45c4-99fd-123fc440ffc8.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=gastly%3A8303&btk=Oi9tWicNv33MsDSHZFZCBMS8LzYqmGs0M7Bi1dPMFkg&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%22gastly%3A8303%22%2C%22btk%22%3A%22Oi9tWicNv33MsDSHZFZCBMS8LzYqmGs0M7Bi1dPMFkg%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%225150c4d6-0ae5-45c4-99fd-123fc440ffc8%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",AlanaGrecco -https://manifest-server.naiadsystems.com/live/298b9b21-fa7c-4b46-b348-44916e8b74a6.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=machop%3A8303&btk=vr%2BnKt%2B5%2F%2Bx59QbWc3CvJhzrKKNQ5ua7gJKYzIckhgM&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%22machop%3A8303%22%2C%22btk%22%3A%22vr%2BnKt%2B5%2F%2Bx59QbWc3CvJhzrKKNQ5ua7gJKYzIckhgM%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22298b9b21-fa7c-4b46-b348-44916e8b74a6%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",Scarlettsteelexo -https://manifest-server.naiadsystems.com/live/082a44ca-e022-4103-8f79-9d962744c86a.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=haunter%3A8303&btk=opMMRcyPWf5HShjfibdR3V%2F2Sy5lguJx8bxBloEeXR4&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%22haunter%3A8303%22%2C%22btk%22%3A%22opMMRcyPWf5HShjfibdR3V%2F2Sy5lguJx8bxBloEeXR4%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22082a44ca-e022-4103-8f79-9d962744c86a%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",AARISS -https://manifest-server.naiadsystems.com/live/14633f36-a482-4528-8208-e0689fc1090a.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=gastly%3A8303&btk=fbV0586lJtq3CqyRKoqWSVMUt2%2FB3fjisPw6QNCwznM&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%22gastly%3A8303%22%2C%22btk%22%3A%22fbV0586lJtq3CqyRKoqWSVMUt2%2FB3fjisPw6QNCwznM%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2214633f36-a482-4528-8208-e0689fc1090a%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",Aurelia -https://manifest-server.naiadsystems.com/live/da5942c2-c3e5-4bc3-bdf5-26125367cf2a.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=alakazam%3A8303&btk=cJoGti%2BIxfJ4n2iQQfcQz2lrzQGeb8axLWX7Qh6wxVs&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%22alakazam%3A8303%22%2C%22btk%22%3A%22cJoGti%2BIxfJ4n2iQQfcQz2lrzQGeb8axLWX7Qh6wxVs%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22da5942c2-c3e5-4bc3-bdf5-26125367cf2a%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/07b75627-87a5-4fb5-a6cc-e9e1078cc384.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=dugtrio%3A8303&btk=cahcS1orHnnXsUK0A5dPhe9Kz3pMVc1tFCsCzB17VKs&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%22cahcS1orHnnXsUK0A5dPhe9Kz3pMVc1tFCsCzB17VKs%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2207b75627-87a5-4fb5-a6cc-e9e1078cc384%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",Stacy_babyy -https://manifest-server.naiadsystems.com/live/1aab577b-5430-4b95-93b7-d88cddf2cccb.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=slowpoke%3A8303&btk=r94qwu%2FFDjAvHyzA6GFRvhcYkfT%2FFw2cK7JagF1eDS4&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%22slowpoke%3A8303%22%2C%22btk%22%3A%22r94qwu%2FFDjAvHyzA6GFRvhcYkfT%2FFw2cK7JagF1eDS4%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%221aab577b-5430-4b95-93b7-d88cddf2cccb%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",LuciaKing -https://manifest-server.naiadsystems.com/live/a3cf21e5-b4ff-4bf1-bf9b-55106c46ac21.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=skeleton%3A8303&btk=wpWOIaYJf2xbxlLEOyhtrxgxNIVuhDmbp1POns1%2B4EY&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%22skeleton%3A8303%22%2C%22btk%22%3A%22wpWOIaYJf2xbxlLEOyhtrxgxNIVuhDmbp1POns1%2B4EY%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22a3cf21e5-b4ff-4bf1-bf9b-55106c46ac21%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",EddieDean -https://manifest-server.naiadsystems.com/live/b7975db7-7009-4cfe-90d5-c40a1bd29631.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=charmeleon%3A8303&btk=nTEiiZJzqffEznQM3fQxoOTcgPwt%2B%2BH6kaRnxoxHSlU&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-13.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22charmeleon%3A8303%22%2C%22btk%22%3A%22nTEiiZJzqffEznQM3fQxoOTcgPwt%2B%2BH6kaRnxoxHSlU%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22b7975db7-7009-4cfe-90d5-c40a1bd29631%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",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",BrilliantGirl +https://edge-cdn1.streamparty.online/LiveApp/streams/user6a1811ad44f41/veTelw5yQqOHxYIg12059528877235568_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",Sunny_Teaze +https://edge-cdn2.streamparty.online/LiveApp/streams/user68a9d09be9e9f/byhdmS2QPueibK2l5380343047783103_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",AllisonMuse +https://edge-cdn2.streamparty.online/LiveApp/streams/user6a295f0dbfdd2/z3EcLy4A80xqXxxx11530153382310414_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",Lara%2520Lane +https://edge-cdn1.streamparty.online/LiveApp/streams/user66fe4b3f807bb/yY3HdDPqWT3xqgj25171166761289005_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",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",arimass +https://edge-cdn2.streamparty.online/LiveApp/streams/user6899013b52a9e/znPnssfS8l4XwgHN5256588541267439_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",candytreo +https://edge-cdn1.streamparty.online/LiveApp/streams/user692876c22a8bb/A1kRNuTDjOto4gE84674242873473355_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",RaveBunny +https://edge-cdn2.streamparty.online/LiveApp/streams/user6a425dfa358d4/3dNwh16d9EoG6rXz158003363582314_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",SELENETYLOR +https://edge-cdn1.streamparty.online/LiveApp/streams/user667d6bcb8a831_blur/cRyAB5JaAN2MMbvk14040629208338608_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",RebecaBlack +https://edge-cdn1.streamparty.online/LiveApp/streams/user6a049ecc8010e/99Zua2o7qmEKh7cf10193644438696697_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",Kitty26 +https://edge-cdn1.streamparty.online/LiveApp/streams/user678fdc118d014_blur/3e8uEatYSXc3ylAk14040741967900439_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",ElizabetthKitty +https://edge-cdn1.streamparty.online/LiveApp/streams/user6984c6ef213ee_blur/GmPNp4w91XpRa73u15786472153677495_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",beauty-milf +https://edge-cdn1.streamparty.online/LiveApp/streams/user670db86b148bc/MXtii9Wf67hREwcD5207793701052097_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",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",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",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",Lissa%2520Ross +https://edge-cdn1.streamparty.online/LiveApp/streams/user634edcdb15bd6/E8BKg3Zud0050sv45469431980931049_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",KateBecket +https://edge-cdn1.streamparty.online/LiveApp/streams/user69f61c08ae4ce/kpqzT44djGCxeEqy10021028225187637_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",AmellyWhite +https://edge-cdn2.streamparty.online/LiveApp/streams/user6a1989c42a649/3WaV7QSB5m8NFnyc10408993775241620_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",shirleyni +https://edge-cdn1.streamparty.online/LiveApp/streams/user69a8fe38ed922/yp9B4NdUQ7j7uFbb5234426583164306_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",Nancy_Sun_ +https://edge-cdn2.streamparty.online/LiveApp/streams/user686e9ac672357/5FCJ1Ctq0WwT8WQ75354597415865462_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",JOYSA6923 +https://edge-cdn2.streamparty.online/LiveApp/streams/user69edca23af562/DIXVHFlXIdlNchSs8709808048417460_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",CoolTatis +https://edge-cdn2.streamparty.online/LiveApp/streams/user6a16ab749d06d/gj08kdezuoG4FpOn11967797102612381_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",Baomi +https://edge-cdn2.streamparty.online/LiveApp/streams/user6938f7945fa07/drxqGWHFDbgSiQik5972460873790609_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",nathaly_jones +https://edge-cdn1.streamparty.online/LiveApp/streams/user6a089bf4b7f64/RdtNnfUYZcTGEMPg11059816901756895_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",NathaxaLeans +https://edge-cdn1.streamparty.online/LiveApp/streams/user697b8f2ff3c56/gPglIMf5oK7Pabk05166857864985062_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",sofiap +https://edge-cdn1.streamparty.online/LiveApp/streams/user677f366f821e9/wwDf52rMN5WqeyBO5195524202288308_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",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="欧美FEATURED",DurtyDyannna +https://manifest-server.naiadsystems.com/live/0f6b1fa6-19e9-47c1-81c7-45144c3f071b.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=magneton%3A8303&btk=hFqHnGVevCWZQ6eDqBi41sfR8Az8axFh45V40fehodc&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%22magneton%3A8303%22%2C%22btk%22%3A%22hFqHnGVevCWZQ6eDqBi41sfR8Az8axFh45V40fehodc%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%220f6b1fa6-19e9-47c1-81c7-45144c3f071b%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 rtmp://hongyangz.xn--fiq64bk2i52brzu7srde4a640a0sk.com/live/6062_1688606258868 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEMALE",JadeRoyce +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 https://edge-cdn1.streamparty.online/LiveApp/streams/user67fa214eb6296/RVMsYNw6r6Rj9swB5197559416299566_adaptive.m3u8 #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEMALE",lalisabrown @@ -375,16 +383,10 @@ https://edge-cdn2.streamparty.online/LiveApp/streams/user69746c6e1b380/CxJ0ElIPn https://hjfghjghjghj05.oss-ap-northeast-2.aliyuncs.com/zxcvb/1.flv #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEMALE",ainel_kim https://edge-cdn2.streamparty.online/LiveApp/streams/user6a088affe4bfe/GjFCb3XtbLhdLLQN11130656431954962_adaptive.m3u8 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEMALE",Baomi -https://edge-cdn2.streamparty.online/LiveApp/streams/user6938f7945fa07/drxqGWHFDbgSiQik5972460873790609_adaptive.m3u8 #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEMALE",hana_lucky 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 https://edge-cdn2.streamparty.online/LiveApp/streams/user6a0604fc2c9cf/rM4FIj9hKhI8XxKg11702611433109106_adaptive.m3u8 #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEMALE",simihazee @@ -393,12 +395,16 @@ https://edge-cdn2.streamparty.online/LiveApp/streams/user6a08ace76c347/IwrhhMNzR https://edge-cdn2.streamparty.online/LiveApp/streams/user67cef17436f29/3CrXDCHhd0NEbkgr7054644214103704_adaptive.m3u8 #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEMALE",LenaaPaull https://edge-cdn2.streamparty.online/LiveApp/streams/user67bc6a6a5eee6/CWLkTVfzTylAz16P5301335316098394_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEMALE",KeiraDark +rtmp://hongyangz.xn--fiq64bk2i52brzu7srde4a640a0sk.com/live/8086_1687906258899 #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEMALE",GanseloiMix 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 https://manifest-server.naiadsystems.com/live/a9dff8d7-6ea7-4f61-aec1-bd7eb9189caa.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=tentacruel%3A8323&btk=OZHvCBh%2FRmIEL5Na2XiT7Awypc2Xf8Rp%2Bzbnuc46KGI&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%3A8323%22%2C%22btk%22%3A%22OZHvCBh%2FRmIEL5Na2XiT7Awypc2Xf8Rp%2Bzbnuc46KGI%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22a9dff8d7-6ea7-4f61-aec1-bd7eb9189caa%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",TheLadyKatrina @@ -427,169 +433,161 @@ 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",prettybabyalani -https://manifest-server.naiadsystems.com/live/58cbe87e-7787-48ca-b41a-6fe6a0a89573.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=meowth%3A8303&btk=FLP1TRjLvlbW0j%2BuCSicEMqUGPMlEpLNVE6WnYRLY9I&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%22meowth%3A8303%22%2C%22btk%22%3A%22FLP1TRjLvlbW0j%2BuCSicEMqUGPMlEpLNVE6WnYRLY9I%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2258cbe87e-7787-48ca-b41a-6fe6a0a89573%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",MissMaeva -https://manifest-server.naiadsystems.com/live/348969d3-acef-40ab-8996-ee9692baeef3.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=cloyster%3A8303&btk=VqqlPB7uUH7dT1I6onc6ZQber2cz3Kr1o1B18nVmcDE&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%22cloyster%3A8303%22%2C%22btk%22%3A%22VqqlPB7uUH7dT1I6onc6ZQber2cz3Kr1o1B18nVmcDE%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22348969d3-acef-40ab-8996-ee9692baeef3%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",ArielSweetieee -https://manifest-server.naiadsystems.com/live/5150c4d6-0ae5-45c4-99fd-123fc440ffc8.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=gastly%3A8303&btk=kRma2lRa7IR6vobqQyKV6lE66VpfUOCQGPW%2Br33c2Bw&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%22gastly%3A8303%22%2C%22btk%22%3A%22kRma2lRa7IR6vobqQyKV6lE66VpfUOCQGPW%2Br33c2Bw%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%225150c4d6-0ae5-45c4-99fd-123fc440ffc8%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",AlanaGrecco -https://manifest-server.naiadsystems.com/live/298b9b21-fa7c-4b46-b348-44916e8b74a6.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=machop%3A8303&btk=vOkX0eKtBGzIhs6oznyPiR9BBRnASU5dnycwc8VtJKI&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%22machop%3A8303%22%2C%22btk%22%3A%22vOkX0eKtBGzIhs6oznyPiR9BBRnASU5dnycwc8VtJKI%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22298b9b21-fa7c-4b46-b348-44916e8b74a6%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",Scarlettsteelexo -https://manifest-server.naiadsystems.com/live/082a44ca-e022-4103-8f79-9d962744c86a.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=haunter%3A8303&btk=tfzyzoo06ChPuW5uHAT155SFX1jXt%2BysK2ARJyun5gE&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%22haunter%3A8303%22%2C%22btk%22%3A%22tfzyzoo06ChPuW5uHAT155SFX1jXt%2BysK2ARJyun5gE%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22082a44ca-e022-4103-8f79-9d962744c86a%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",AARISS -https://manifest-server.naiadsystems.com/live/14633f36-a482-4528-8208-e0689fc1090a.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=gastly%3A8303&btk=qWS6uNw%2BNuXEsBucUxD5lmlFJEuVCTtoGUbtOBYLRIg&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%22gastly%3A8303%22%2C%22btk%22%3A%22qWS6uNw%2BNuXEsBucUxD5lmlFJEuVCTtoGUbtOBYLRIg%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2214633f36-a482-4528-8208-e0689fc1090a%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",Aurelia -https://manifest-server.naiadsystems.com/live/da5942c2-c3e5-4bc3-bdf5-26125367cf2a.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=alakazam%3A8303&btk=KgbQboDk%2BhrxtHrCbO6Z%2FfPGtr9WYxKnSpDJ%2F8MoAGI&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%22alakazam%3A8303%22%2C%22btk%22%3A%22KgbQboDk%2BhrxtHrCbO6Z%2FfPGtr9WYxKnSpDJ%2F8MoAGI%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22da5942c2-c3e5-4bc3-bdf5-26125367cf2a%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/07b75627-87a5-4fb5-a6cc-e9e1078cc384.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=dugtrio%3A8303&btk=nr0h9aHEzhzBMhk1%2FmrslRW1pJr1S9NLbykOTkH5tno&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%22nr0h9aHEzhzBMhk1%2FmrslRW1pJr1S9NLbykOTkH5tno%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2207b75627-87a5-4fb5-a6cc-e9e1078cc384%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",Stacy_babyy -https://manifest-server.naiadsystems.com/live/1aab577b-5430-4b95-93b7-d88cddf2cccb.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=slowpoke%3A8303&btk=8Mbl1lzLnLZKff4hbzUjC8ENBcpRFBnWN3ecKEwJi2A&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%22slowpoke%3A8303%22%2C%22btk%22%3A%228Mbl1lzLnLZKff4hbzUjC8ENBcpRFBnWN3ecKEwJi2A%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%221aab577b-5430-4b95-93b7-d88cddf2cccb%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",LuciaKing -https://manifest-server.naiadsystems.com/live/a3cf21e5-b4ff-4bf1-bf9b-55106c46ac21.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=skeleton%3A8303&btk=JUALBKyv%2B5Vqo0hxUTKRGlPwWzLNOdS5hg6JAyXDo%2F4&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%22skeleton%3A8303%22%2C%22btk%22%3A%22JUALBKyv%2B5Vqo0hxUTKRGlPwWzLNOdS5hg6JAyXDo%2F4%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22a3cf21e5-b4ff-4bf1-bf9b-55106c46ac21%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",Grace_Golden_x -https://manifest-server.naiadsystems.com/live/5c096ac3-27eb-4d04-a92c-d37287c36ca7.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=lickitung%3A8303&btk=DDxNlq%2Bbrns0zTbQUft6aaffBbdZ8Y%2BLbZ95xAUr4t8&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%22lickitung%3A8303%22%2C%22btk%22%3A%22DDxNlq%2Bbrns0zTbQUft6aaffBbdZ8Y%2BLbZ95xAUr4t8%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%225c096ac3-27eb-4d04-a92c-d37287c36ca7%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/fbe18cc5-5b65-46db-9fbf-9a0917fe669f.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=hitmonchan%3A8303&btk=0YYRYLgSUClERrSi8ewBsej7Xfwt15YEi3E3vOsy6F8&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-11.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22hitmonchan%3A8303%22%2C%22btk%22%3A%220YYRYLgSUClERrSi8ewBsej7Xfwt15YEi3E3vOsy6F8%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22fbe18cc5-5b65-46db-9fbf-9a0917fe669f%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/e7a39973-7e10-4edc-a2c0-44a6d9fdfdb5.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=koffing%3A8303&btk=N6UmTKUz31EQ4gjq%2Fua%2BVB1GqqbNzioArrBnI0pwp4Y&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%22koffing%3A8303%22%2C%22btk%22%3A%22N6UmTKUz31EQ4gjq%2Fua%2BVB1GqqbNzioArrBnI0pwp4Y%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22e7a39973-7e10-4edc-a2c0-44a6d9fdfdb5%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",jiujiu-898 +https://edge-cdn1.streamparty.online/LiveApp/streams/user68a98ba0ca29b/a4g7aThXK29jP4dQ7832275019191490_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",DurtyDyannna +https://manifest-server.naiadsystems.com/live/0f6b1fa6-19e9-47c1-81c7-45144c3f071b.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=magneton%3A8303&btk=kATVpUavT%2FUvDJyibcxY6Bes1le5FdZbmtuE1kuHr7w&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%22magneton%3A8303%22%2C%22btk%22%3A%22kATVpUavT%2FUvDJyibcxY6Bes1le5FdZbmtuE1kuHr7w%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%220f6b1fa6-19e9-47c1-81c7-45144c3f071b%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",GoddessBiancaBelle +https://manifest-server.naiadsystems.com/live/c7b6dc51-72a1-49b3-bf18-37eccf9a50cb.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=alakazam%3A8303&btk=0wiHSfz9465fh1nL2RY4v2pyzoy4pMxIrPMa3BMs%2BE8&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%22alakazam%3A8303%22%2C%22btk%22%3A%220wiHSfz9465fh1nL2RY4v2pyzoy4pMxIrPMa3BMs%2BE8%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22c7b6dc51-72a1-49b3-bf18-37eccf9a50cb%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",NatalllieLynn +https://manifest-server.naiadsystems.com/live/007822cf-0a2a-4468-addb-eda694d4c849.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=hitmonchan%3A8303&btk=5W8v4WBV9Hp84uTM%2F6FYJCF2ZIOFswFO%2BrpKo8v6L%2BY&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-7.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22hitmonchan%3A8303%22%2C%22btk%22%3A%225W8v4WBV9Hp84uTM%2F6FYJCF2ZIOFswFO%2BrpKo8v6L%2BY%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22007822cf-0a2a-4468-addb-eda694d4c849%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",GoddessAriCalypso +https://manifest-server.naiadsystems.com/live/cc3a14d8-aee6-44cf-9d6f-8fb08521a656.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=openstork%3A8303&btk=j2M0Leh%2BooTJP4SltsksZKBILGJ3gDbktErQHXxbA%2FA&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%22openstork%3A8303%22%2C%22btk%22%3A%22j2M0Leh%2BooTJP4SltsksZKBILGJ3gDbktErQHXxbA%2FA%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22cc3a14d8-aee6-44cf-9d6f-8fb08521a656%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",LanaKalas +https://manifest-server.naiadsystems.com/live/b62634de-b9ca-48ff-8df0-42fb42fc4b32.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=kraken%3A8303&btk=Og0oG31STU3K3gJ6rtwtsO4NYk3gOcb7RpCdruyQO5c&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%22kraken%3A8303%22%2C%22btk%22%3A%22Og0oG31STU3K3gJ6rtwtsO4NYk3gOcb7RpCdruyQO5c%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22b62634de-b9ca-48ff-8df0-42fb42fc4b32%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",MollyLoveNZ +https://manifest-server.naiadsystems.com/live/3481190d-4157-4c56-a0e1-d706f794f5df.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=metapod%3A8303&btk=ulIcVgTpTXu%2FZeQfRafdM2FbOdXComj%2BYqJsJ2u0YlA&d=%7B%22u%22%3A%22https%3A%2F%2Fsea-6.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22metapod%3A8303%22%2C%22btk%22%3A%22ulIcVgTpTXu%2FZeQfRafdM2FbOdXComj%2BYqJsJ2u0YlA%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%223481190d-4157-4c56-a0e1-d706f794f5df%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",misshornymiss +https://manifest-server.naiadsystems.com/live/56b169ed-ebc4-41ed-811e-20cd40126cec.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=icedolphin%3A8303&btk=bFjPVo9kQzGJY58Iv3KtkoPHb%2BWH9yIyPDIWPse%2FtvA&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%22icedolphin%3A8303%22%2C%22btk%22%3A%22bFjPVo9kQzGJY58Iv3KtkoPHb%2BWH9yIyPDIWPse%2FtvA%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2256b169ed-ebc4-41ed-811e-20cd40126cec%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",Tiny_Taylorr +https://manifest-server.naiadsystems.com/live/c8c2c223-cce8-4550-8000-f78935c2bac5.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=geodude%3A8303&btk=%2BV3g4zfG7MNbSHpGeUy2VyyRSeJRSnzkygeXjO8vqTo&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%22geodude%3A8303%22%2C%22btk%22%3A%22%2BV3g4zfG7MNbSHpGeUy2VyyRSeJRSnzkygeXjO8vqTo%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22c8c2c223-cce8-4550-8000-f78935c2bac5%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",arianaaaXO +https://manifest-server.naiadsystems.com/live/bbe0651e-81ff-4b60-8c5b-1e40a3b441fe.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=earthturtle%3A8303&btk=D9dQi2WDkxK%2FYTYO%2FTqjlVeHIpBkkeghOec2EDKcToQ&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%22earthturtle%3A8303%22%2C%22btk%22%3A%22D9dQi2WDkxK%2FYTYO%2FTqjlVeHIpBkkeghOec2EDKcToQ%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22bbe0651e-81ff-4b60-8c5b-1e40a3b441fe%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",maygreyy +https://manifest-server.naiadsystems.com/live/80ab6b79-ac0f-44c6-a189-bee5ee3ddf9b.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=primeape%3A8303&btk=WMcxykriZs1nmA%2Bfhe9ggJeX8PKnayitWUOOSVUAnLo&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-21.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22primeape%3A8303%22%2C%22btk%22%3A%22WMcxykriZs1nmA%2Bfhe9ggJeX8PKnayitWUOOSVUAnLo%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2280ab6b79-ac0f-44c6-a189-bee5ee3ddf9b%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",AliviaBlaze +https://manifest-server.naiadsystems.com/live/4a29e8e6-d87f-43c4-954e-f3fbef4a971d.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=threehorn%3A8303&btk=8%2BVwoKolsWwZ87DzOWkbUIVzwsJlQs9hsjvswYtJCl0&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-15.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22threehorn%3A8303%22%2C%22btk%22%3A%228%2BVwoKolsWwZ87DzOWkbUIVzwsJlQs9hsjvswYtJCl0%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%224a29e8e6-d87f-43c4-954e-f3fbef4a971d%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/b336aec8-9d98-4ae5-9bf8-9b650b0218be.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=pinchy%3A8303&btk=JOvWnRCY29UvcGbABDaDEi4Zedwv0cFbygC41fr4bZU&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%22pinchy%3A8303%22%2C%22btk%22%3A%22JOvWnRCY29UvcGbABDaDEi4Zedwv0cFbygC41fr4bZU%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22b336aec8-9d98-4ae5-9bf8-9b650b0218be%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",XYourNaughtyTillyX +https://manifest-server.naiadsystems.com/live/993664a8-6e21-41b1-92ab-faede9fc2607.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=hypno%3A8303&btk=MeZLpX%2BaQH%2F7LFCko3vK2h5fjURY0cALQn6yJB5kMI8&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-7.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22hypno%3A8303%22%2C%22btk%22%3A%22MeZLpX%2BaQH%2F7LFCko3vK2h5fjURY0cALQn6yJB5kMI8%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22993664a8-6e21-41b1-92ab-faede9fc2607%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",GoddessAmberD +https://manifest-server.naiadsystems.com/live/806f1df3-017a-4c33-9007-39e051e0f801.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=kangaskhan%3A8303&btk=v7w%2FvAJofAWQoEl6ZDjIWxNs1uyI82vx%2B9jjAfL8cNE&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-15.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22kangaskhan%3A8303%22%2C%22btk%22%3A%22v7w%2FvAJofAWQoEl6ZDjIWxNs1uyI82vx%2B9jjAfL8cNE%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22806f1df3-017a-4c33-9007-39e051e0f801%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",Lilly_Vanilla +https://manifest-server.naiadsystems.com/live/0f8b98ae-7c40-4e9a-8c67-52844545a86c.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=rapidash%3A8303&btk=cIPGn2uyGslftUyLwPvx3uu6HLO38uJw9bDmElXct8s&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%22rapidash%3A8303%22%2C%22btk%22%3A%22cIPGn2uyGslftUyLwPvx3uu6HLO38uJw9bDmElXct8s%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%220f8b98ae-7c40-4e9a-8c67-52844545a86c%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",PinkAndreea +https://manifest-server.naiadsystems.com/live/16fa881e-c443-44cd-85b8-cdf8b252b28b.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=clefable%3A8303&btk=nSqmbgs6q2WOFtO0dF69XwFlx3uNizZGIFcUv3zJbKs&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%22clefable%3A8303%22%2C%22btk%22%3A%22nSqmbgs6q2WOFtO0dF69XwFlx3uNizZGIFcUv3zJbKs%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2216fa881e-c443-44cd-85b8-cdf8b252b28b%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",QueenChloeXO -https://manifest-server.naiadsystems.com/live/a9873459-a7f9-45bf-8d8e-a3372d1d17f2.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=glaucous%3A8303&btk=zq1Q5jOeUcdwb2Fbwgg10WMlyCAGOvL98eHlCGbiet8&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%22glaucous%3A8303%22%2C%22btk%22%3A%22zq1Q5jOeUcdwb2Fbwgg10WMlyCAGOvL98eHlCGbiet8%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22a9873459-a7f9-45bf-8d8e-a3372d1d17f2%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",JessieBlonde -https://manifest-server.naiadsystems.com/live/cf1aee91-cfe9-4207-97e2-efc603bf27ce.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=cloyster%3A8303&btk=IMdy%2Baw%2F3EzMb4pZj%2BwSShJyhUyd5L%2Bp3OcaIgMnKWU&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-7.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22cloyster%3A8303%22%2C%22btk%22%3A%22IMdy%2Baw%2F3EzMb4pZj%2BwSShJyhUyd5L%2Bp3OcaIgMnKWU%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22cf1aee91-cfe9-4207-97e2-efc603bf27ce%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",AnnieRose -https://manifest-server.naiadsystems.com/live/8a4c1bde-ecbf-4857-9f3e-8535fbeacffc.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=sandslash%3A8303&btk=bi5rvO2XHs4YH7o0nA%2FgNqAKIKdD4UKI5e1HgKAZI5Q&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%22sandslash%3A8303%22%2C%22btk%22%3A%22bi5rvO2XHs4YH7o0nA%2FgNqAKIKdD4UKI5e1HgKAZI5Q%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%228a4c1bde-ecbf-4857-9f3e-8535fbeacffc%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",FlirtyWithFreya -https://manifest-server.naiadsystems.com/live/88a22666-f949-4716-b008-1aee47f27d28.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=hypno%3A8303&btk=b4LemCptBpuc7f2EnBce%2BUSJi0dP15pl0uglEY2C1Ag&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%22hypno%3A8303%22%2C%22btk%22%3A%22b4LemCptBpuc7f2EnBce%2BUSJi0dP15pl0uglEY2C1Ag%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2288a22666-f949-4716-b008-1aee47f27d28%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",Liyanamee -https://manifest-server.naiadsystems.com/live/4503eb7f-ec94-42a9-95dd-a26659b661d4.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=weedle%3A8303&btk=W56KXSsenwqbfxCeJQSVFxXBEUj1r92FkCvE8rp%2Blw8&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%22weedle%3A8303%22%2C%22btk%22%3A%22W56KXSsenwqbfxCeJQSVFxXBEUj1r92FkCvE8rp%2Blw8%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%224503eb7f-ec94-42a9-95dd-a26659b661d4%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",VivianUK -https://manifest-server.naiadsystems.com/live/ed4778d5-dad2-443a-b6f3-22ee554827b9.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=ekans%3A8303&btk=TX2yhGb%2FpD3tzHcciRbwCMNoLyqxg7TCJlTiTxcAv7c&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-4.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22ekans%3A8303%22%2C%22btk%22%3A%22TX2yhGb%2FpD3tzHcciRbwCMNoLyqxg7TCJlTiTxcAv7c%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22ed4778d5-dad2-443a-b6f3-22ee554827b9%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",MagdaFit -https://manifest-server.naiadsystems.com/live/bcbb3b5c-2eba-493b-aa2b-b243526dfb50.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=cloyster%3A8303&btk=9lg5RYgq4piqM0Hjd8EsAcy%2BQOnGMvRC0YXDGJJDUFo&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-12.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22cloyster%3A8303%22%2C%22btk%22%3A%229lg5RYgq4piqM0Hjd8EsAcy%2BQOnGMvRC0YXDGJJDUFo%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22bcbb3b5c-2eba-493b-aa2b-b243526dfb50%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",LLspinz -https://manifest-server.naiadsystems.com/live/c766b6da-1446-454a-9a71-6d1a8d11dcd5.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=windeagle%3A8303&btk=uBr%2Fe1Lg3zbtIOSqSI1Hfn0XuRV6iDovNnnlkTT%2B1Xw&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%22windeagle%3A8303%22%2C%22btk%22%3A%22uBr%2Fe1Lg3zbtIOSqSI1Hfn0XuRV6iDovNnnlkTT%2B1Xw%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22c766b6da-1446-454a-9a71-6d1a8d11dcd5%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",AshleyBankx -https://manifest-server.naiadsystems.com/live/7acc15af-1bdf-4b0f-a1f8-24ab8305f4ad.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=meowth%3A8303&btk=k4OuGV72R0o%2FThY7S%2F3yjgd8Yj3Pp0Js7U6vzCTC8hA&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-21.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22meowth%3A8303%22%2C%22btk%22%3A%22k4OuGV72R0o%2FThY7S%2F3yjgd8Yj3Pp0Js7U6vzCTC8hA%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%227acc15af-1bdf-4b0f-a1f8-24ab8305f4ad%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",SweetSara33 -https://manifest-server.naiadsystems.com/live/1531e147-c250-41b1-ab21-292c9901c063.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=rapidash%3A8303&btk=3hXF5omp8HAkoPHu9lWBcY3ZLTaG0ILdyKEHJ4r%2BSxs&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%22rapidash%3A8303%22%2C%22btk%22%3A%223hXF5omp8HAkoPHu9lWBcY3ZLTaG0ILdyKEHJ4r%2BSxs%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%221531e147-c250-41b1-ab21-292c9901c063%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",AidaVarela -https://manifest-server.naiadsystems.com/live/2c27e941-23dc-4df5-9e2c-ea698268bcb4.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=growlithe%3A8303&btk=csuOnxOLuC0pa3kQPuh%2BpdnuiDyGOFM6TidxRP4pFq0&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%22growlithe%3A8303%22%2C%22btk%22%3A%22csuOnxOLuC0pa3kQPuh%2BpdnuiDyGOFM6TidxRP4pFq0%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%222c27e941-23dc-4df5-9e2c-ea698268bcb4%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",alessandrabicet -https://manifest-server.naiadsystems.com/live/7a42092f-83f5-45a5-b7aa-16eb1ab721d6.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=pikachu%3A8303&btk=uXLAsPivk7btrg4GQ0FuRMbr%2B3iSam7xhCdBiinjtRU&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%22pikachu%3A8303%22%2C%22btk%22%3A%22uXLAsPivk7btrg4GQ0FuRMbr%2B3iSam7xhCdBiinjtRU%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%227a42092f-83f5-45a5-b7aa-16eb1ab721d6%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",roseangelap -https://manifest-server.naiadsystems.com/live/b7d85ef7-11c0-4ee6-b1da-f80abe1b9cf2.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=haunter%3A8303&btk=oaYMVnJkh7Nq11KUB6X9Aq64Bb3R6XNrwEs5vFK8MJM&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-6.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22haunter%3A8303%22%2C%22btk%22%3A%22oaYMVnJkh7Nq11KUB6X9Aq64Bb3R6XNrwEs5vFK8MJM%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22b7d85ef7-11c0-4ee6-b1da-f80abe1b9cf2%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",lisaxlov -https://manifest-server.naiadsystems.com/live/96b1b7dd-bdac-49e8-9bbd-5c8a57db41aa.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=arbok%3A8323&btk=XH34Wi4hwrPsn5EhuNQmp2JkBSNlx9UNfWx3WUXEtf4&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-13.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22arbok%3A8323%22%2C%22btk%22%3A%22XH34Wi4hwrPsn5EhuNQmp2JkBSNlx9UNfWx3WUXEtf4%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2296b1b7dd-bdac-49e8-9bbd-5c8a57db41aa%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",sexymistress1998 -https://manifest-server.naiadsystems.com/live/d577e850-cf2b-4672-8585-d5c70cd1b2c0.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=cubone%3A8303&btk=b%2FNRWuzHkU9kRRkyQIDZ%2FlXX8zUgdEHdsGW3Nu6GgXs&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%22cubone%3A8303%22%2C%22btk%22%3A%22b%2FNRWuzHkU9kRRkyQIDZ%2FlXX8zUgdEHdsGW3Nu6GgXs%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22d577e850-cf2b-4672-8585-d5c70cd1b2c0%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",AmyJ -https://manifest-server.naiadsystems.com/live/af3fadc0-8d09-4d29-bc5c-79f8788377ab.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=cloyster%3A8303&btk=tJyNOXPGAftueULND2J2KpfwAuHw8YzJjroTlxoLaE4&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%22cloyster%3A8303%22%2C%22btk%22%3A%22tJyNOXPGAftueULND2J2KpfwAuHw8YzJjroTlxoLaE4%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22af3fadc0-8d09-4d29-bc5c-79f8788377ab%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",RubyDeschain -https://manifest-server.naiadsystems.com/live/49f18c05-585b-4f58-9cc3-bf5d26264d79.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=machamp%3A8303&btk=ZHrZ9sl%2BYHd%2FqtB5huJSdDFWSeqQtGnAGI1tmWUffCs&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%22machamp%3A8303%22%2C%22btk%22%3A%22ZHrZ9sl%2BYHd%2FqtB5huJSdDFWSeqQtGnAGI1tmWUffCs%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2249f18c05-585b-4f58-9cc3-bf5d26264d79%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",Miss_Jessie_Woods -https://manifest-server.naiadsystems.com/live/225e444f-ba59-4cd4-86f9-18d273380b5a.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=exeggcute%3A8303&btk=Xwu2iqAgGqpiU%2BbdSs044nxDHpksdie7XzWaZ5tXVY0&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-8.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22exeggcute%3A8303%22%2C%22btk%22%3A%22Xwu2iqAgGqpiU%2BbdSs044nxDHpksdie7XzWaZ5tXVY0%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22225e444f-ba59-4cd4-86f9-18d273380b5a%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",NikoJhon -https://manifest-server.naiadsystems.com/live/e86086d6-3d41-4987-89a2-df8de99e5341.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=meowth%3A8303&btk=03anUKrS4tPEPLMZOyi20otpPCGf0mnAt3AEW4TLPz4&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%2203anUKrS4tPEPLMZOyi20otpPCGf0mnAt3AEW4TLPz4%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22e86086d6-3d41-4987-89a2-df8de99e5341%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",Georgia_Sweetie -https://manifest-server.naiadsystems.com/live/ef2517b8-3912-42b5-8969-89cd90202c81.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=mankey%3A8303&btk=%2B1%2FhIwsy7TEjPSyfjtxcCI6teHaWrGcONgFeemMz4E0&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%22%2B1%2FhIwsy7TEjPSyfjtxcCI6teHaWrGcONgFeemMz4E0%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22ef2517b8-3912-42b5-8969-89cd90202c81%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",Ydamis26 -https://manifest-server.naiadsystems.com/live/a5a0d5be-9670-47ef-8d8d-39a85c6712c5.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=slowking%3A8303&btk=FMdtOzFaAVfVo%2BTs418vsit8DQXo%2BptJD9YDxcE3mEI&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%22slowking%3A8303%22%2C%22btk%22%3A%22FMdtOzFaAVfVo%2BTs418vsit8DQXo%2BptJD9YDxcE3mEI%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22a5a0d5be-9670-47ef-8d8d-39a85c6712c5%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 +https://manifest-server.naiadsystems.com/live/fa5af4e5-1217-4276-9db0-fe7f74d11428.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=beedrill%3A8303&btk=PIAMdEH%2BRwcMyT8ZMF0ULrkSMoibELU3S%2FVCSlrHDfU&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-16.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22beedrill%3A8303%22%2C%22btk%22%3A%22PIAMdEH%2BRwcMyT8ZMF0ULrkSMoibELU3S%2FVCSlrHDfU%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22fa5af4e5-1217-4276-9db0-fe7f74d11428%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",CuriousClaraUK +https://manifest-server.naiadsystems.com/live/67dc29b6-a375-459c-96f6-9483800a6add.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=gastly%3A8303&btk=hxinZocQHnevLnYDWpjSIeINh1srCqyhYA7BUKNq%2FlI&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%22gastly%3A8303%22%2C%22btk%22%3A%22hxinZocQHnevLnYDWpjSIeINh1srCqyhYA7BUKNq%2FlI%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2267dc29b6-a375-459c-96f6-9483800a6add%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",SophieeeXxX +https://manifest-server.naiadsystems.com/live/703a3b65-ded6-41f8-ba6b-cc0d0c5ac9fb.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=sandslash%3A8303&btk=CHh5a0HmGEG3NFERCIIlNjlUm%2B5sCR1JtFgo2erEmec&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%22CHh5a0HmGEG3NFERCIIlNjlUm%2B5sCR1JtFgo2erEmec%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22703a3b65-ded6-41f8-ba6b-cc0d0c5ac9fb%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",IvanaKors +https://manifest-server.naiadsystems.com/live/01f2aeb2-a5e8-412d-8fee-20a14273fc10.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=diglett%3A8303&btk=9pxsLWubivEcrDJPxQZy0IgjSxPENwiu71Kx%2Fj%2Bc5p8&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-21.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22diglett%3A8303%22%2C%22btk%22%3A%229pxsLWubivEcrDJPxQZy0IgjSxPENwiu71Kx%2Fj%2Bc5p8%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2201f2aeb2-a5e8-412d-8fee-20a14273fc10%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",LivSummers +https://manifest-server.naiadsystems.com/live/881c4c7f-c189-41fd-86f3-ffca5e254ad2.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=tangela%3A8303&btk=DqAiyCX%2BKvrVf3CfnxofeRDjqTVYS5C372ca9o%2BPu9o&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-8.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22tangela%3A8303%22%2C%22btk%22%3A%22DqAiyCX%2BKvrVf3CfnxofeRDjqTVYS5C372ca9o%2BPu9o%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22881c4c7f-c189-41fd-86f3-ffca5e254ad2%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",18yearoldnewbie +https://manifest-server.naiadsystems.com/live/3ac5d390-e52a-4aa9-a0dc-9a313e1f73e2.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=gastly%3A8303&btk=bvjM4HJmzcDVwpJ%2F9VfGYl0KlwqzYQYThi7a6VpITj4&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%22gastly%3A8303%22%2C%22btk%22%3A%22bvjM4HJmzcDVwpJ%2F9VfGYl0KlwqzYQYThi7a6VpITj4%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%223ac5d390-e52a-4aa9-a0dc-9a313e1f73e2%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",AlexisAndrewsX +https://manifest-server.naiadsystems.com/live/b4ca7e45-a2de-4d9f-8314-ce431b018406.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=windpigeon%3A8303&btk=vPBSBUgYBtMTxrFZn%2BuFNs92kmoush4OTcMRCArX0cs&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%22windpigeon%3A8303%22%2C%22btk%22%3A%22vPBSBUgYBtMTxrFZn%2BuFNs92kmoush4OTcMRCArX0cs%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22b4ca7e45-a2de-4d9f-8314-ce431b018406%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",AbbyAddison +https://manifest-server.naiadsystems.com/live/05d4c4bf-b8e7-4750-8dee-d09f498640c8.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=chansey%3A8303&btk=iNkZzdPiwh4fqDmoreAwUdPHc4cwUYX614bT%2F8NltYk&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%22chansey%3A8303%22%2C%22btk%22%3A%22iNkZzdPiwh4fqDmoreAwUdPHc4cwUYX614bT%2F8NltYk%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2205d4c4bf-b8e7-4750-8dee-d09f498640c8%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",annallise +https://manifest-server.naiadsystems.com/live/b777b129-56b0-4800-908d-65977b19c1a6.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=laddie%3A8303&btk=aGBnXEErzPC3qvipLZylFgQ61wPCDAPqIGs4oopEu1g&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%22laddie%3A8303%22%2C%22btk%22%3A%22aGBnXEErzPC3qvipLZylFgQ61wPCDAPqIGs4oopEu1g%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22b777b129-56b0-4800-908d-65977b19c1a6%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",JazzabelleRox +https://manifest-server.naiadsystems.com/live/cec3799c-d1c0-4f37-b360-b29a208176a7.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=gloom%3A8323&btk=kCV1LFuS7gM6YrQQAm1Vtnc3ulU%2B3Xt0NbPwYO%2BRDF0&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%22gloom%3A8323%22%2C%22btk%22%3A%22kCV1LFuS7gM6YrQQAm1Vtnc3ulU%2B3Xt0NbPwYO%2BRDF0%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22cec3799c-d1c0-4f37-b360-b29a208176a7%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",NeonAubrey +https://manifest-server.naiadsystems.com/live/d0549ff5-8e5c-4f25-b76a-f17ee5b5c60b.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=pikachu%3A8303&btk=94hxurSpkAFPbQ4BuaFYRweUkPunqEQDRET3C%2B8vRYU&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-12.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22pikachu%3A8303%22%2C%22btk%22%3A%2294hxurSpkAFPbQ4BuaFYRweUkPunqEQDRET3C%2B8vRYU%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22d0549ff5-8e5c-4f25-b76a-f17ee5b5c60b%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",SabrinaDeep +https://manifest-server.naiadsystems.com/live/87707d87-8c2b-4b4e-ab19-eca372c076bf.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=hitmonchan%3A8303&btk=m%2FXv4Av446J2Kjgmt9dJlWii9G5lgbgukNrBWkXxGcA&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%22hitmonchan%3A8303%22%2C%22btk%22%3A%22m%2FXv4Av446J2Kjgmt9dJlWii9G5lgbgukNrBWkXxGcA%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2287707d87-8c2b-4b4e-ab19-eca372c076bf%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",AnnaGloss +https://manifest-server.naiadsystems.com/live/dbc092c0-7302-4420-9b2f-e3e92d4e0820.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=dugtrio%3A8303&btk=KjjiivvM8aSV2HxymfILwBBmk8pZ7xsUcmECoLIfh0g&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%22dugtrio%3A8303%22%2C%22btk%22%3A%22KjjiivvM8aSV2HxymfILwBBmk8pZ7xsUcmECoLIfh0g%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22dbc092c0-7302-4420-9b2f-e3e92d4e0820%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",Lishaluxe +https://manifest-server.naiadsystems.com/live/edaf774e-a76e-4adf-9bf2-fc9375f5c1dd.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=bellsprout%3A8303&btk=f9sXzZrF%2BHVqSFgtTcMRO6V%2F02Dyb4aCg0Hxq5Sewk0&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%22bellsprout%3A8303%22%2C%22btk%22%3A%22f9sXzZrF%2BHVqSFgtTcMRO6V%2F02Dyb4aCg0Hxq5Sewk0%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22edaf774e-a76e-4adf-9bf2-fc9375f5c1dd%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",IzzyOnCam +https://manifest-server.naiadsystems.com/live/48d1dab4-fdba-448a-b130-98028d57c5e6.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=windpossum%3A8303&btk=wrh1iWcJJc6oxzK4OoDHCfv5VbJueGzAf9autgB4iPg&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-16.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22windpossum%3A8303%22%2C%22btk%22%3A%22wrh1iWcJJc6oxzK4OoDHCfv5VbJueGzAf9autgB4iPg%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2248d1dab4-fdba-448a-b130-98028d57c5e6%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",MayaRoseXXX +https://manifest-server.naiadsystems.com/live/e2f7bd10-07cf-4379-bedc-035929ee46bc.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=arcanine%3A8303&btk=4g%2BoYJRi9qzBigH4psBk3ZtRFKdX9awZBjn9NdutJIA&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%22arcanine%3A8303%22%2C%22btk%22%3A%224g%2BoYJRi9qzBigH4psBk3ZtRFKdX9awZBjn9NdutJIA%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22e2f7bd10-07cf-4379-bedc-035929ee46bc%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",Kim_Stonne +https://manifest-server.naiadsystems.com/live/d413e20c-4071-4462-8a9d-782a6b7029f1.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=machop%3A8303&btk=%2Bpj2Ae1wcs5aSiHSQBLSyX%2BygkuEjMhO%2ByZdS80cZlI&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%22machop%3A8303%22%2C%22btk%22%3A%22%2Bpj2Ae1wcs5aSiHSQBLSyX%2BygkuEjMhO%2ByZdS80cZlI%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22d413e20c-4071-4462-8a9d-782a6b7029f1%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",BustyMollyy +https://manifest-server.naiadsystems.com/live/a27ce032-412b-4179-b125-ef6325f6ca02.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=lickitung%3A8303&btk=%2F6TvtiP1I4NDjAgatOvgXxYBUMG%2FXwmkml693QZ5h4k&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%22lickitung%3A8303%22%2C%22btk%22%3A%22%2F6TvtiP1I4NDjAgatOvgXxYBUMG%2FXwmkml693QZ5h4k%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22a27ce032-412b-4179-b125-ef6325f6ca02%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",LylaNimfa +https://manifest-server.naiadsystems.com/live/11ff3f2e-9f47-4a81-ba73-212b8696765b.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=hitmonlee%3A8303&btk=WJ5oPm9Ku59FdRWIdMJ8npx%2BF2DiM2%2F3qhOrSE337s8&d=%7B%22u%22%3A%22https%3A%2F%2Fsea-7.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22hitmonlee%3A8303%22%2C%22btk%22%3A%22WJ5oPm9Ku59FdRWIdMJ8npx%2BF2DiM2%2F3qhOrSE337s8%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2211ff3f2e-9f47-4a81-ba73-212b8696765b%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",Laia_strom19 +https://manifest-server.naiadsystems.com/live/5f5d6ffe-e2ae-424b-af43-7787de70f47e.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=golduck%3A8303&btk=8urjkJcrpUfiGLsiN1LIm5oVEDp7e47pZJKHpUzoZ7I&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%22golduck%3A8303%22%2C%22btk%22%3A%228urjkJcrpUfiGLsiN1LIm5oVEDp7e47pZJKHpUzoZ7I%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%225f5d6ffe-e2ae-424b-af43-7787de70f47e%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",DarlingDee96 +https://manifest-server.naiadsystems.com/live/50c06bab-7333-45e1-b637-04f2710f9692.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=muk%3A8303&btk=MngeymnTMYvvxoggJfXw83FhZiBPT1wcsG4dJpK40kI&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-6.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22muk%3A8303%22%2C%22btk%22%3A%22MngeymnTMYvvxoggJfXw83FhZiBPT1wcsG4dJpK40kI%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2250c06bab-7333-45e1-b637-04f2710f9692%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",Cloudiex33 +https://manifest-server.naiadsystems.com/live/77d98753-4f08-4150-b07d-e35369d01c04.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=krabby%3A8303&btk=Rtf%2FInNeooYH2GZF7ZAFZ3On7B25PudRktp%2FtacVFOY&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-6.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22krabby%3A8303%22%2C%22btk%22%3A%22Rtf%2FInNeooYH2GZF7ZAFZ3On7B25PudRktp%2FtacVFOY%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2277d98753-4f08-4150-b07d-e35369d01c04%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",lovetoearnsomeIN https://edge-cdn2.streamparty.online/LiveApp/streams/user6a363245d05a5/r2aNDwbaKD0VKXSc14035501356796979_adaptive.m3u8 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",LaithanBiBritish -https://manifest-server.naiadsystems.com/live/f20d1c5a-ff19-4451-865d-6bc8febfb25b.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=weezing%3A8303&btk=gEm4E62h977o6uEp3OwyJXwmdFPxLK9SJfEH2T3YW38&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%22weezing%3A8303%22%2C%22btk%22%3A%22gEm4E62h977o6uEp3OwyJXwmdFPxLK9SJfEH2T3YW38%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22f20d1c5a-ff19-4451-865d-6bc8febfb25b%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",Jhony33 -https://manifest-server.naiadsystems.com/live/8846406b-ec9f-4e65-a4b3-728d02305030.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=growlithe%3A8303&btk=0gAtrWI33%2FS4c2DEJf8n9O2cF3vZtkw2c%2FaSY8pDQcE&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%22growlithe%3A8303%22%2C%22btk%22%3A%220gAtrWI33%2FS4c2DEJf8n9O2cF3vZtkw2c%2FaSY8pDQcE%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%228846406b-ec9f-4e65-a4b3-728d02305030%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",JonahShaw -https://manifest-server.naiadsystems.com/live/f66d1147-9565-43a2-9a99-cf7bc3e51b2f.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=shellder%3A8303&btk=qnwKcoWRsnW7OefSWxSDmpzc%2BjVYDTjdSTZEDBSgz3c&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%22shellder%3A8303%22%2C%22btk%22%3A%22qnwKcoWRsnW7OefSWxSDmpzc%2BjVYDTjdSTZEDBSgz3c%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22f66d1147-9565-43a2-9a99-cf7bc3e51b2f%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/b9113cef-bda3-4f44-b832-84ee30e2c1d9.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=weezing%3A8303&btk=WkuGahaBJAbRO1DVGtC6Q1phudKreQue0qGI6g2IxjI&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-7.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22weezing%3A8303%22%2C%22btk%22%3A%22WkuGahaBJAbRO1DVGtC6Q1phudKreQue0qGI6g2IxjI%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22b9113cef-bda3-4f44-b832-84ee30e2c1d9%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",Bastian_Bigcock -https://manifest-server.naiadsystems.com/live/4588d2c4-db3d-46b2-9b6e-328f82004c3d.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=rapidash%3A8303&btk=UJohEMvHEwxSzSmnwcCGSGljZULEViF1WiYXTe2j3jA&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%22rapidash%3A8303%22%2C%22btk%22%3A%22UJohEMvHEwxSzSmnwcCGSGljZULEViF1WiYXTe2j3jA%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%224588d2c4-db3d-46b2-9b6e-328f82004c3d%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",Scook_Gray -https://manifest-server.naiadsystems.com/live/d5605bf3-0b2f-4e35-a317-8038aedf7884.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=growlithe%3A8303&btk=PlRCNRldu5T8Xl4IMSfIEzPZRFJURCOcXTdPrrkAQ8A&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%22growlithe%3A8303%22%2C%22btk%22%3A%22PlRCNRldu5T8Xl4IMSfIEzPZRFJURCOcXTdPrrkAQ8A%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22d5605bf3-0b2f-4e35-a317-8038aedf7884%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",Eduargomez -https://manifest-server.naiadsystems.com/live/82a1f09e-28e1-4c4b-b057-6bbf4e319851.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=abra%3A8303&btk=jDiGWzf5dnyCxQ58%2F9KmXWUyyNtPYl5dh%2BiAS8yFw4E&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-21.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22abra%3A8303%22%2C%22btk%22%3A%22jDiGWzf5dnyCxQ58%2F9KmXWUyyNtPYl5dh%2BiAS8yFw4E%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2282a1f09e-28e1-4c4b-b057-6bbf4e319851%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",MilanMercier -https://manifest-server.naiadsystems.com/live/366477ed-458d-41fe-bcc6-16c502a9d502.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=machop%3A8303&btk=zKjHVQWY0nnsvB08wHVCaShKjygVSIFBgcugDmcQ7LQ&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-16.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22machop%3A8303%22%2C%22btk%22%3A%22zKjHVQWY0nnsvB08wHVCaShKjygVSIFBgcugDmcQ7LQ%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22366477ed-458d-41fe-bcc6-16c502a9d502%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",RafaelVander -https://manifest-server.naiadsystems.com/live/e83c495a-e194-4db0-87a4-73e5ae7f4a80.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=golem%3A8303&btk=nSfhCw8PIWYf3usZWPINJccMRBIaBim2JY%2F87WEo7eI&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%22nSfhCw8PIWYf3usZWPINJccMRBIaBim2JY%2F87WEo7eI%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22e83c495a-e194-4db0-87a4-73e5ae7f4a80%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",AntonioWest +https://manifest-server.naiadsystems.com/live/2ac1707d-dde2-4f13-86de-be56c5f7b565.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=exeggutor%3A8303&btk=KhYrqAs%2F5FyQk5C3wSvPl9N2QDG2%2ByWO97cYjlVOWRQ&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-15.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22exeggutor%3A8303%22%2C%22btk%22%3A%22KhYrqAs%2F5FyQk5C3wSvPl9N2QDG2%2ByWO97cYjlVOWRQ%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%222ac1707d-dde2-4f13-86de-be56c5f7b565%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",RioMorado31 +https://manifest-server.naiadsystems.com/live/8fec91f3-b20d-41bf-a28c-be3c61f525b4.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=magnemite%3A8303&btk=thZIi9G44Gh4xpams5DTsb5zSPjEwaLcaXzTy3i1D%2Fo&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%22magnemite%3A8303%22%2C%22btk%22%3A%22thZIi9G44Gh4xpams5DTsb5zSPjEwaLcaXzTy3i1D%2Fo%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%228fec91f3-b20d-41bf-a28c-be3c61f525b4%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",MylonePick +https://manifest-server.naiadsystems.com/live/6255f5df-6be8-4e54-8d76-4b0aeec685e2.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=pidgeot%3A8303&btk=SzzGysVaGXoA5cQJOeiWX5WyKyvfqKWsXBlJ4hDTWqA&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%22pidgeot%3A8303%22%2C%22btk%22%3A%22SzzGysVaGXoA5cQJOeiWX5WyKyvfqKWsXBlJ4hDTWqA%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%226255f5df-6be8-4e54-8d76-4b0aeec685e2%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",Manu_vera58 +https://manifest-server.naiadsystems.com/live/0ed00362-1c80-4349-9fc9-15ee642f8e37.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=slowpoke%3A8303&btk=db7JUiJo%2BlRVG7ZTEuBF%2BqhdSP%2BgCVM%2FNGoRJVrm%2B5E&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%22slowpoke%3A8303%22%2C%22btk%22%3A%22db7JUiJo%2BlRVG7ZTEuBF%2BqhdSP%2BgCVM%2FNGoRJVrm%2B5E%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%220ed00362-1c80-4349-9fc9-15ee642f8e37%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",Jorge_Perezz +https://manifest-server.naiadsystems.com/live/20eb03fc-9960-4d78-ad73-3fdffa485fb8.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=alakazam%3A8303&btk=%2F5Nk8v2wQEZXYVtlD1AH3J%2FDl0g%2FW695C2HWI47PblU&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%22alakazam%3A8303%22%2C%22btk%22%3A%22%2F5Nk8v2wQEZXYVtlD1AH3J%2FDl0g%2FW695C2HWI47PblU%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2220eb03fc-9960-4d78-ad73-3fdffa485fb8%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",MaicolParker0 +https://manifest-server.naiadsystems.com/live/97d26640-dcd7-4a7e-b305-96eb2b8d7d6b.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=rapidash%3A8303&btk=HCL%2Bq6FR45eIuQ%2F0EA%2BWcW98QgJE%2B%2BbgjvIN0bVnHSE&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%22rapidash%3A8303%22%2C%22btk%22%3A%22HCL%2Bq6FR45eIuQ%2F0EA%2BWcW98QgJE%2B%2BbgjvIN0bVnHSE%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2297d26640-dcd7-4a7e-b305-96eb2b8d7d6b%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",LucasOpry +https://manifest-server.naiadsystems.com/live/852fc54f-3b72-4e3f-90b4-b452de626027.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=slowbro%3A8303&btk=zWAXUuOakrsPOlniEXPnK1Cem0tl6XsWvbv4dNQ3OAA&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%22slowbro%3A8303%22%2C%22btk%22%3A%22zWAXUuOakrsPOlniEXPnK1Cem0tl6XsWvbv4dNQ3OAA%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22852fc54f-3b72-4e3f-90b4-b452de626027%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",LiannMilleer +https://manifest-server.naiadsystems.com/live/d607cb64-98ab-4298-8898-414e00c9f65b.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=magneton%3A8303&btk=RqyhB%2FNyPFavyKzg8YVKcUBGvErh22xS0hYJ3IoFJWE&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%22magneton%3A8303%22%2C%22btk%22%3A%22RqyhB%2FNyPFavyKzg8YVKcUBGvErh22xS0hYJ3IoFJWE%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22d607cb64-98ab-4298-8898-414e00c9f65b%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",DilamAmadeus +https://manifest-server.naiadsystems.com/live/17b503ca-1953-4116-909e-ffe6b882bd39.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=windpossum%3A8303&btk=qbvJNn5pOc6A9h5QMNl4L3fh3HI1iAWDFfWEBBpqWtE&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-21.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22windpossum%3A8303%22%2C%22btk%22%3A%22qbvJNn5pOc6A9h5QMNl4L3fh3HI1iAWDFfWEBBpqWtE%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2217b503ca-1953-4116-909e-ffe6b882bd39%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",Alan_pitt +https://manifest-server.naiadsystems.com/live/c35cb3c7-0b22-42d9-87a2-0f899b547056.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=kadabra%3A8303&btk=VJtLTJ1MtL4ShixDsQl%2FMY%2By7uBhev2JcqlMhBrz5dQ&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%22kadabra%3A8303%22%2C%22btk%22%3A%22VJtLTJ1MtL4ShixDsQl%2FMY%2By7uBhev2JcqlMhBrz5dQ%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22c35cb3c7-0b22-42d9-87a2-0f899b547056%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",Kane24 +https://manifest-server.naiadsystems.com/live/8500a50d-484c-4ff3-81e9-fd751af8defc.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=hitmonlee%3A8303&btk=6Y94ulZ0h4TioGVkUq%2FmZegMXVErdyA4CgBJ5QaWnf0&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%22hitmonlee%3A8303%22%2C%22btk%22%3A%226Y94ulZ0h4TioGVkUq%2FmZegMXVErdyA4CgBJ5QaWnf0%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%228500a50d-484c-4ff3-81e9-fd751af8defc%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",Topfloorstrokes +https://manifest-server.naiadsystems.com/live/9285c4ed-6fe5-45fc-bd39-6fabb7009507.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=machop%3A8303&btk=wbpGRTWyS4QkYshIsoFwusWDqKwe8EGzsfAD3CpOeoE&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%22machop%3A8303%22%2C%22btk%22%3A%22wbpGRTWyS4QkYshIsoFwusWDqKwe8EGzsfAD3CpOeoE%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%229285c4ed-6fe5-45fc-bd39-6fabb7009507%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",GuyGrey +https://manifest-server.naiadsystems.com/live/6438f0ff-5310-4e40-a50b-63ed1fbf5906.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=tentacruel%3A8303&btk=IEw9U6FfzKsI4OIQVXtVvldkE1XcfhjjgQgFOFucUsI&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%22IEw9U6FfzKsI4OIQVXtVvldkE1XcfhjjgQgFOFucUsI%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%226438f0ff-5310-4e40-a50b-63ed1fbf5906%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",Keff_andrew34 +https://manifest-server.naiadsystems.com/live/60f79139-13b0-418b-8717-082cb19502e4.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=abra%3A8303&btk=qOUe5E4b%2BWXXCWJfgLicbJ3jBBTMin4EBYzmWuJXC%2B8&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%22abra%3A8303%22%2C%22btk%22%3A%22qOUe5E4b%2BWXXCWJfgLicbJ3jBBTMin4EBYzmWuJXC%2B8%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2260f79139-13b0-418b-8717-082cb19502e4%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",ClarkHeinz_os +https://manifest-server.naiadsystems.com/live/fecf001f-f4a4-4b2c-b8fa-8077b0c9362f.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=magnemite%3A8303&btk=hhUDUUZk7DQ%2FV%2FTyZMZa7yYDlammJt1Efv%2B2RsfWqJY&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%22magnemite%3A8303%22%2C%22btk%22%3A%22hhUDUUZk7DQ%2FV%2FTyZMZa7yYDlammJt1Efv%2B2RsfWqJY%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22fecf001f-f4a4-4b2c-b8fa-8077b0c9362f%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",zaynnsky +https://manifest-server.naiadsystems.com/live/f9a6b68b-2a12-49bf-bff5-bf07ec795922.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=geodude%3A8303&btk=Y7KSGEM8C4sTTYGnsSvub5OJikJ9Fg57QrPRvVvYvvM&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%22geodude%3A8303%22%2C%22btk%22%3A%22Y7KSGEM8C4sTTYGnsSvub5OJikJ9Fg57QrPRvVvYvvM%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22f9a6b68b-2a12-49bf-bff5-bf07ec795922%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",Derekt_Shaw +https://manifest-server.naiadsystems.com/live/eb8606a4-49a6-4ee2-b886-aba2665f769e.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=slowpoke%3A8303&btk=NrFWj%2BGDKAIJAzmZ5rHoz5CEHc1UYkbHD0t%2FY%2B5Xk2w&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%22NrFWj%2BGDKAIJAzmZ5rHoz5CEHc1UYkbHD0t%2FY%2B5Xk2w%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22eb8606a4-49a6-4ee2-b886-aba2665f769e%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",steven_walker +https://manifest-server.naiadsystems.com/live/ef1cb8c3-b74a-4ec0-b573-7f1c9068d7b4.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=iceeagle%3A8303&btk=4vpRjCqFe6qrpq58i9wisi40b0%2FlEw529AjDQUXmZ6s&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%22iceeagle%3A8303%22%2C%22btk%22%3A%224vpRjCqFe6qrpq58i9wisi40b0%2FlEw529AjDQUXmZ6s%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22ef1cb8c3-b74a-4ec0-b573-7f1c9068d7b4%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",andy_Collin51 +https://manifest-server.naiadsystems.com/live/4a2df2ce-360a-4980-b59e-3be75be43115.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=graveler%3A8303&btk=%2FjYbHK0fbSaQBTa4poBpYQtCp8HLC84b%2B4L2F4ow3eY&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%22graveler%3A8303%22%2C%22btk%22%3A%22%2FjYbHK0fbSaQBTa4poBpYQtCp8HLC84b%2B4L2F4ow3eY%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%224a2df2ce-360a-4980-b59e-3be75be43115%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",AlexGo +https://manifest-server.naiadsystems.com/live/7d015cf2-7943-4030-8d32-2b778b864e35.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=dugtrio%3A8303&btk=64TAj7qgWwCWY1NQWaJ8NE%2BRqZNq9uWk37meJ5HtZ00&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%22dugtrio%3A8303%22%2C%22btk%22%3A%2264TAj7qgWwCWY1NQWaJ8NE%2BRqZNq9uWk37meJ5HtZ00%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%227d015cf2-7943-4030-8d32-2b778b864e35%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",Marco_delux +https://manifest-server.naiadsystems.com/live/1940ca3d-061f-4ddf-beda-e0751ae056cc.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=windweasel%3A8303&btk=WdqOnqg9O59WToX%2FQOkpDdOS%2B96kYLaBix7ZMrMMVV8&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%22windweasel%3A8303%22%2C%22btk%22%3A%22WdqOnqg9O59WToX%2FQOkpDdOS%2B96kYLaBix7ZMrMMVV8%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%221940ca3d-061f-4ddf-beda-e0751ae056cc%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",Izui_Pierce +https://manifest-server.naiadsystems.com/live/e8990c50-bdc9-4979-aff0-013178a5207e.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=iceeagle%3A8303&btk=Fc%2B9Djpg6C8h1ImoOxXWFC%2FdNbDLH30%2BvgV8gwdZV8g&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%22iceeagle%3A8303%22%2C%22btk%22%3A%22Fc%2B9Djpg6C8h1ImoOxXWFC%2FdNbDLH30%2BvgV8gwdZV8g%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22e8990c50-bdc9-4979-aff0-013178a5207e%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",vortexboyox +https://manifest-server.naiadsystems.com/live/59ce8d20-3451-40ca-a15f-13502394d8a0.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=machamp%3A8303&btk=bcIi9fIFTJeTrB%2ByH0SzW3tK1i4xiDKPFePkUgBiiKs&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%22machamp%3A8303%22%2C%22btk%22%3A%22bcIi9fIFTJeTrB%2ByH0SzW3tK1i4xiDKPFePkUgBiiKs%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2259ce8d20-3451-40ca-a15f-13502394d8a0%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",JohnAndKate21 +https://manifest-server.naiadsystems.com/live/39f1b5e0-05f6-4041-96b8-678cb11a712c.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=abra%3A8303&btk=ysQvK3oAkPdLGdrounnAAjMaYUpVKONtTJL28OKUe9Y&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%22abra%3A8303%22%2C%22btk%22%3A%22ysQvK3oAkPdLGdrounnAAjMaYUpVKONtTJL28OKUe9Y%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2239f1b5e0-05f6-4041-96b8-678cb11a712c%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",ThomasTorres +https://manifest-server.naiadsystems.com/live/38f31c15-c6ab-450e-814f-88d901ca3092.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=magnemite%3A8303&btk=LWARAZkVy2OO3gqV9nVPBT7zYJu0BPOXxUcTFpCPKV0&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%22magnemite%3A8303%22%2C%22btk%22%3A%22LWARAZkVy2OO3gqV9nVPBT7zYJu0BPOXxUcTFpCPKV0%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2238f31c15-c6ab-450e-814f-88d901ca3092%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",juanga_briel +https://manifest-server.naiadsystems.com/live/e0be6ae4-5603-4699-bce3-608a350ec04e.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=mankey%3A8303&btk=rBLH40c5v45gl%2FP8I5qYnBl6m%2BnZifYzR373jhcDhcI&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%22mankey%3A8303%22%2C%22btk%22%3A%22rBLH40c5v45gl%2FP8I5qYnBl6m%2BnZifYzR373jhcDhcI%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22e0be6ae4-5603-4699-bce3-608a350ec04e%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",Ozuna_Demmers +https://manifest-server.naiadsystems.com/live/2fc8613c-39a0-46e9-8c38-fd7fdefbfcaa.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=graveler%3A8303&btk=jj3Cp4SO4VDg3JK2JBN5Saqlmg3YY4PsrS1t7GzjlB8&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%22graveler%3A8303%22%2C%22btk%22%3A%22jj3Cp4SO4VDg3JK2JBN5Saqlmg3YY4PsrS1t7GzjlB8%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%222fc8613c-39a0-46e9-8c38-fd7fdefbfcaa%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",MarkLaurens +https://manifest-server.naiadsystems.com/live/4b869c11-d48d-41d8-b439-bfa09b509f57.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=windweasel%3A8303&btk=3Sbywrzu4KZHyKVsKWbDgI2x3qlJV8yNFUJ2sAt8U70&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%22windweasel%3A8303%22%2C%22btk%22%3A%223Sbywrzu4KZHyKVsKWbDgI2x3qlJV8yNFUJ2sAt8U70%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%224b869c11-d48d-41d8-b439-bfa09b509f57%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",Henrik_os +https://manifest-server.naiadsystems.com/live/32241751-da4b-47aa-a011-aa3a2eacf19d.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=magneton%3A8303&btk=az63lN%2BejcwImQRmrk7EGsFkAP%2FasnxJGtGPdDLDvd0&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%22magneton%3A8303%22%2C%22btk%22%3A%22az63lN%2BejcwImQRmrk7EGsFkAP%2FasnxJGtGPdDLDvd0%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2232241751-da4b-47aa-a011-aa3a2eacf19d%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",PameMiller +https://manifest-server.naiadsystems.com/live/c5bcea8e-0c9f-4179-b62c-1093c18ac385.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=abra%3A8303&btk=Mcejz10MZFQ6fWKQvxAuZfKjoAYo8gk%2B8D5yZsabvGg&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%22abra%3A8303%22%2C%22btk%22%3A%22Mcejz10MZFQ6fWKQvxAuZfKjoAYo8gk%2B8D5yZsabvGg%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22c5bcea8e-0c9f-4179-b62c-1093c18ac385%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",MilanDash +https://manifest-server.naiadsystems.com/live/1c45c86e-1e98-4831-aa32-2d82fd55afc3.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=chansey%3A8303&btk=KS4FOQ5QsHLU26qwQ6iAFtdggQtXYgMsS%2FtHMcJJXeE&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-11.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22chansey%3A8303%22%2C%22btk%22%3A%22KS4FOQ5QsHLU26qwQ6iAFtdggQtXYgMsS%2FtHMcJJXeE%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%221c45c86e-1e98-4831-aa32-2d82fd55afc3%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",Ryan_gray +https://manifest-server.naiadsystems.com/live/16e4100d-9622-4327-86d6-202d97553000.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=machop%3A8303&btk=5xHS84c7pz8oYdoZS10R74QZhMkI%2FFvIKiBtpbwo4Ow&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%22machop%3A8303%22%2C%22btk%22%3A%225xHS84c7pz8oYdoZS10R74QZhMkI%2FFvIKiBtpbwo4Ow%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2216e4100d-9622-4327-86d6-202d97553000%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",LeoCarterr +https://manifest-server.naiadsystems.com/live/2d9f2a7f-70e8-47cb-8499-3c569c2fc6db.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=psyduck%3A8303&btk=wrQMDbfQ2m79QturHjQdnBHvL2yZGIMZvXAfTMoagsc&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%22psyduck%3A8303%22%2C%22btk%22%3A%22wrQMDbfQ2m79QturHjQdnBHvL2yZGIMZvXAfTMoagsc%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%222d9f2a7f-70e8-47cb-8499-3c569c2fc6db%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",Chocolateexoticx +https://manifest-server.naiadsystems.com/live/94594b95-bc7e-48e8-93e8-8950109c9be9.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=kadabra%3A8303&btk=g4rUMqL4OC%2FjtZxDVnMVykflbXiKhAYZxa7%2BMgXHT9w&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%22kadabra%3A8303%22%2C%22btk%22%3A%22g4rUMqL4OC%2FjtZxDVnMVykflbXiKhAYZxa7%2BMgXHT9w%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2294594b95-bc7e-48e8-93e8-8950109c9be9%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",Morgan_Blade -https://manifest-server.naiadsystems.com/live/a732b7ef-b838-427b-9d46-26fcadc762dc.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=dugtrio%3A8303&btk=shqZXdKrKIZaYAd1NzywCwDg5dBl0EPl2e1qi2fE6ik&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-21.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22dugtrio%3A8303%22%2C%22btk%22%3A%22shqZXdKrKIZaYAd1NzywCwDg5dBl0EPl2e1qi2fE6ik%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22a732b7ef-b838-427b-9d46-26fcadc762dc%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",JakeCummings2004 -https://manifest-server.naiadsystems.com/live/fa940bd1-42d4-4525-b2bc-f1d0aa008bff.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=openstork%3A8303&btk=uqPYe4ByPVFncl%2FHJfPnSZT1ESmqtp2MFNACeple8B8&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-8.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22openstork%3A8303%22%2C%22btk%22%3A%22uqPYe4ByPVFncl%2FHJfPnSZT1ESmqtp2MFNACeple8B8%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22fa940bd1-42d4-4525-b2bc-f1d0aa008bff%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",davoxer -https://manifest-server.naiadsystems.com/live/3b84eec0-0ce3-4f30-b6fe-9c983c671290.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=slowbro%3A8303&btk=HJGILHIp15C6hm06Z6Cmr9r3b0ugPVtqOonshKRMpQ4&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%22slowbro%3A8303%22%2C%22btk%22%3A%22HJGILHIp15C6hm06Z6Cmr9r3b0ugPVtqOonshKRMpQ4%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%223b84eec0-0ce3-4f30-b6fe-9c983c671290%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",Atherios -https://manifest-server.naiadsystems.com/live/1113ff47-7c45-4eb0-bdda-43485aeca177.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=farfetchd%3A8303&btk=s7QU5MWkjm9W1Xv4WePE7w%2B2kwEMWXw7vPAJeFPdguQ&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%22farfetchd%3A8303%22%2C%22btk%22%3A%22s7QU5MWkjm9W1Xv4WePE7w%2B2kwEMWXw7vPAJeFPdguQ%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%221113ff47-7c45-4eb0-bdda-43485aeca177%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",Demonsalvaatore -https://manifest-server.naiadsystems.com/live/464991c9-03f6-459b-acb2-1f721d8d19b5.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=machoke%3A8303&btk=7HcaJ6zaVsG045BlvgyunjM5oN6BGD%2FAwCuao8qRCLw&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%227HcaJ6zaVsG045BlvgyunjM5oN6BGD%2FAwCuao8qRCLw%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22464991c9-03f6-459b-acb2-1f721d8d19b5%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",Juanito19 -https://manifest-server.naiadsystems.com/live/f5bcd565-0422-4848-a213-91f8a12c122e.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=kadabra%3A8303&btk=41zemEcE3mVHTUHW965Yh7xmLWQLlTkqSq7PzWKCU3I&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%22kadabra%3A8303%22%2C%22btk%22%3A%2241zemEcE3mVHTUHW965Yh7xmLWQLlTkqSq7PzWKCU3I%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22f5bcd565-0422-4848-a213-91f8a12c122e%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",KalethBigDick88 -https://manifest-server.naiadsystems.com/live/bc61a47e-f675-4102-ac9c-6050429c9477.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=ponyta%3A8303&btk=qnDeZArYeYeMu%2FfElWmoFWDxrZQCWtQu0VSUbtczkMU&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%22ponyta%3A8303%22%2C%22btk%22%3A%22qnDeZArYeYeMu%2FfElWmoFWDxrZQCWtQu0VSUbtczkMU%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22bc61a47e-f675-4102-ac9c-6050429c9477%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",jeymaximo -https://manifest-server.naiadsystems.com/live/0a14979c-fa32-4453-962c-0e9de892fd15.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=farfetchd%3A8303&btk=3blaUmAmQA3C6fEsq67mrK3%2FEoPHYdUXcciK5Mcr6kc&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%22farfetchd%3A8303%22%2C%22btk%22%3A%223blaUmAmQA3C6fEsq67mrK3%2FEoPHYdUXcciK5Mcr6kc%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%220a14979c-fa32-4453-962c-0e9de892fd15%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",FelixRook -https://manifest-server.naiadsystems.com/live/bfa7252d-b906-4625-8a09-5358182bc402.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=haunter%3A8303&btk=ViRIRFUhuf2yMMnAAtG9iy3M5fLYdX3S08twa3N7I6E&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%22haunter%3A8303%22%2C%22btk%22%3A%22ViRIRFUhuf2yMMnAAtG9iy3M5fLYdX3S08twa3N7I6E%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22bfa7252d-b906-4625-8a09-5358182bc402%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",AmethystShadow18 -https://manifest-server.naiadsystems.com/live/a674fc5a-931e-4ad9-be34-74d4684b159a.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=psyduck%3A8303&btk=HszIlpQTf9fCEW%2FhKstXiOLe%2BtKEOfuBmmW4x5jsaFQ&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%22psyduck%3A8303%22%2C%22btk%22%3A%22HszIlpQTf9fCEW%2FhKstXiOLe%2BtKEOfuBmmW4x5jsaFQ%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22a674fc5a-931e-4ad9-be34-74d4684b159a%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",Armandopein -https://manifest-server.naiadsystems.com/live/6f45084d-3ecf-480a-894c-13746f79f484.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=slowbro%3A8303&btk=ArN6XRkUxXu%2F9oVZ5wPan0xGwS5vAe%2FwyaDOfLu1nUo&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%22slowbro%3A8303%22%2C%22btk%22%3A%22ArN6XRkUxXu%2F9oVZ5wPan0xGwS5vAe%2FwyaDOfLu1nUo%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%226f45084d-3ecf-480a-894c-13746f79f484%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",museIvory -https://manifest-server.naiadsystems.com/live/f4493f8e-d472-4a5d-9398-3262dcf469ab.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=machop%3A8303&btk=amq4KFvteI6Dy3HFQQKgh26ujba2jklM77jpuv4huM0&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%22machop%3A8303%22%2C%22btk%22%3A%22amq4KFvteI6Dy3HFQQKgh26ujba2jklM77jpuv4huM0%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22f4493f8e-d472-4a5d-9398-3262dcf469ab%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",Cameros_Pierce -https://manifest-server.naiadsystems.com/live/2dfd1ae7-6205-4fd0-a073-65b908b1134a.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=farfetchd%3A8303&btk=8JjwTntuxrQtbk797DOdJ0JPIbEG29ZeIs8qqytdc1E&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%22farfetchd%3A8303%22%2C%22btk%22%3A%228JjwTntuxrQtbk797DOdJ0JPIbEG29ZeIs8qqytdc1E%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%222dfd1ae7-6205-4fd0-a073-65b908b1134a%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",ALHAN_SILVER -https://manifest-server.naiadsystems.com/live/1cfe3465-1a73-4d6a-a600-5081705899fe.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=abra%3A8303&btk=%2Fqu2qr1nSwVj3eGKkaCvzNCd2AzNsHqNMnHNZKQCEj4&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%22abra%3A8303%22%2C%22btk%22%3A%22%2Fqu2qr1nSwVj3eGKkaCvzNCd2AzNsHqNMnHNZKQCEj4%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%221cfe3465-1a73-4d6a-a600-5081705899fe%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",adamcoox -https://manifest-server.naiadsystems.com/live/e37adf3c-62d4-4a3b-8b43-1ca68034838a.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=geodude%3A8303&btk=rtZqwkONA7mRINmNh5yX08PYbgRZ78RgcRe3yZJMKWE&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%22geodude%3A8303%22%2C%22btk%22%3A%22rtZqwkONA7mRINmNh5yX08PYbgRZ78RgcRe3yZJMKWE%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22e37adf3c-62d4-4a3b-8b43-1ca68034838a%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/7e61f3c2-dd9b-487e-bafd-a0e53d4a5f72.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=tangela%3A8303&btk=Ois6G4aoc125%2Fz5lC2Y%2BAIvqMJ7M%2FBS6IGOxP4bGgu0&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%22tangela%3A8303%22%2C%22btk%22%3A%22Ois6G4aoc125%2Fz5lC2Y%2BAIvqMJ7M%2FBS6IGOxP4bGgu0%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%227e61f3c2-dd9b-487e-bafd-a0e53d4a5f72%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A705%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",MalconStonne -https://manifest-server.naiadsystems.com/live/145425cb-d177-47a9-a9fa-352df8e754ca.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=winddolphin%3A8303&btk=sMIy2VCQqs9y7vRvZqfUDsPVLnZKvHw4zlXAg7ow0I0&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%22winddolphin%3A8303%22%2C%22btk%22%3A%22sMIy2VCQqs9y7vRvZqfUDsPVLnZKvHw4zlXAg7ow0I0%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22145425cb-d177-47a9-a9fa-352df8e754ca%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",Dayana21cm -https://manifest-server.naiadsystems.com/live/78a790e0-45e3-4656-9781-05a2a9715abc.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=primeape%3A8303&btk=M8KAc7Agu3vdJ5iCEjtS4AoZlWa%2Fv5OJaHYxkXP6y%2Fw&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%22primeape%3A8303%22%2C%22btk%22%3A%22M8KAc7Agu3vdJ5iCEjtS4AoZlWa%2Fv5OJaHYxkXP6y%2Fw%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2278a790e0-45e3-4656-9781-05a2a9715abc%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",Graysonn_Owen -https://manifest-server.naiadsystems.com/live/656164e3-9bc7-4826-af7e-f9ce776030b8.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=growlithe%3A8303&btk=misc5YIsw0ep0lpfWyU977W36i8nYmQX0anbFm7nz7w&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%22growlithe%3A8303%22%2C%22btk%22%3A%22misc5YIsw0ep0lpfWyU977W36i8nYmQX0anbFm7nz7w%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22656164e3-9bc7-4826-af7e-f9ce776030b8%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",MattMalone -https://manifest-server.naiadsystems.com/live/38577a57-8daa-46b4-917a-602a4403eb81.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=arbok%3A8323&btk=JI6%2Fu3fbYj8ULQA8oboumJM4oWJPWAnN9ZIqC5IMFrs&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-5.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22arbok%3A8323%22%2C%22btk%22%3A%22JI6%2Fu3fbYj8ULQA8oboumJM4oWJPWAnN9ZIqC5IMFrs%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2238577a57-8daa-46b4-917a-602a4403eb81%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_A220 -https://manifest-server.naiadsystems.com/live/24b30111-142f-4be7-b1c5-88c102cf4a25.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=geodude%3A8303&btk=k1rXKuusHEdj4ynqPrSzZGW2eUQOY2KRZyx7KINLcEs&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%22geodude%3A8303%22%2C%22btk%22%3A%22k1rXKuusHEdj4ynqPrSzZGW2eUQOY2KRZyx7KINLcEs%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2224b30111-142f-4be7-b1c5-88c102cf4a25%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",cris_hotsex -https://manifest-server.naiadsystems.com/live/41bf9e25-9114-47d3-93e0-d17eeef2f1d2.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=tentacool%3A8303&btk=exe28zwpd4nHLkTJ1gKTb1LrhyrgSw5UWIrrACXdJy4&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%22tentacool%3A8303%22%2C%22btk%22%3A%22exe28zwpd4nHLkTJ1gKTb1LrhyrgSw5UWIrrACXdJy4%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2241bf9e25-9114-47d3-93e0-d17eeef2f1d2%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",RickAdams -https://manifest-server.naiadsystems.com/live/8335c563-0247-4ba9-bd26-f86803859e01.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=magneton%3A8303&btk=VaZvdpRgQSYlNinn8xSTbx7fuhjMAlPSqefCHCaN0Z8&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%22magneton%3A8303%22%2C%22btk%22%3A%22VaZvdpRgQSYlNinn8xSTbx7fuhjMAlPSqefCHCaN0Z8%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%228335c563-0247-4ba9-bd26-f86803859e01%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",mikaelslow -https://manifest-server.naiadsystems.com/live/a8b4ae93-933b-46a5-b894-92567ab42afc.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=magneton%3A8303&btk=5Pp76h2S%2BuNycJvNMiWzlkDKuYy%2B0bpM672yKklOPGo&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%22magneton%3A8303%22%2C%22btk%22%3A%225Pp76h2S%2BuNycJvNMiWzlkDKuYy%2B0bpM672yKklOPGo%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22a8b4ae93-933b-46a5-b894-92567ab42afc%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",NoahTylor -https://manifest-server.naiadsystems.com/live/65e14c99-c61f-492b-8ca5-f02a35fae0e9.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=machop%3A8303&btk=8Is5ymvg3gxXY0IMvL7pZ8OYrahBsjkMlVAU0EqCjHI&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%22machop%3A8303%22%2C%22btk%22%3A%228Is5ymvg3gxXY0IMvL7pZ8OYrahBsjkMlVAU0EqCjHI%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2265e14c99-c61f-492b-8ca5-f02a35fae0e9%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",CockyHunk -https://manifest-server.naiadsystems.com/live/b7604eeb-413c-47a3-b40e-0123628ca33c.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=tangela%3A8303&btk=CU5ntt04a9Jk%2BVMzwKAlPV41%2FmmePDpbb0e4BDECoh0&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%22tangela%3A8303%22%2C%22btk%22%3A%22CU5ntt04a9Jk%2BVMzwKAlPV41%2FmmePDpbb0e4BDECoh0%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22b7604eeb-413c-47a3-b40e-0123628ca33c%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",EthanCoxx19 -https://manifest-server.naiadsystems.com/live/e8f09c1c-e084-4774-aa2a-038435c5d58f.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=golduck%3A8303&btk=lQ%2Ba%2B0zJLYTqfJ4mkGzE7PEfkF%2F5Msg89eYmOxN8k4A&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%22golduck%3A8303%22%2C%22btk%22%3A%22lQ%2Ba%2B0zJLYTqfJ4mkGzE7PEfkF%2F5Msg89eYmOxN8k4A%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22e8f09c1c-e084-4774-aa2a-038435c5d58f%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",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="欧美TRANS",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="欧美TRANS",ArielSweetieee -https://manifest-server.naiadsystems.com/live/5150c4d6-0ae5-45c4-99fd-123fc440ffc8.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=gastly%3A8303&btk=LGOPP7MpFOjj1UY6xGpuQBsYhkMg1%2FQ7gr0xOiQeuPk&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%22gastly%3A8303%22%2C%22btk%22%3A%22LGOPP7MpFOjj1UY6xGpuQBsYhkMg1%2FQ7gr0xOiQeuPk%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%225150c4d6-0ae5-45c4-99fd-123fc440ffc8%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="欧美TRANS",AlanaGrecco -https://manifest-server.naiadsystems.com/live/298b9b21-fa7c-4b46-b348-44916e8b74a6.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=machop%3A8303&btk=So54ceSyRaFKx2Id8u6tMQix4NWBT%2BevibQaPi1sC%2BU&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%22machop%3A8303%22%2C%22btk%22%3A%22So54ceSyRaFKx2Id8u6tMQix4NWBT%2BevibQaPi1sC%2BU%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22298b9b21-fa7c-4b46-b348-44916e8b74a6%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",Scarlettsteelexo -https://manifest-server.naiadsystems.com/live/082a44ca-e022-4103-8f79-9d962744c86a.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=haunter%3A8303&btk=%2BR4FintTEFjUIMV3YJieSSjubLze6YjraQuGsPvXOGY&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%22haunter%3A8303%22%2C%22btk%22%3A%22%2BR4FintTEFjUIMV3YJieSSjubLze6YjraQuGsPvXOGY%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22082a44ca-e022-4103-8f79-9d962744c86a%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",Aurelia -https://manifest-server.naiadsystems.com/live/da5942c2-c3e5-4bc3-bdf5-26125367cf2a.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=alakazam%3A8303&btk=GegYhc7PBhcXYT6IW4zUqXNaSgFyLas8em9hfUvFi7U&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%22alakazam%3A8303%22%2C%22btk%22%3A%22GegYhc7PBhcXYT6IW4zUqXNaSgFyLas8em9hfUvFi7U%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22da5942c2-c3e5-4bc3-bdf5-26125367cf2a%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/07b75627-87a5-4fb5-a6cc-e9e1078cc384.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=dugtrio%3A8303&btk=7W0FnvXIotJt%2FA1ufe0Q24kqnNL7%2BYLDv0RI4V8AGr4&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%227W0FnvXIotJt%2FA1ufe0Q24kqnNL7%2BYLDv0RI4V8AGr4%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2207b75627-87a5-4fb5-a6cc-e9e1078cc384%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",Stacy_babyy -https://manifest-server.naiadsystems.com/live/1aab577b-5430-4b95-93b7-d88cddf2cccb.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=slowpoke%3A8303&btk=qOdKv9HlSoq0Zh3vNkPf1%2BwDlRl%2BGYouG6FLs3ZlgZg&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%22slowpoke%3A8303%22%2C%22btk%22%3A%22qOdKv9HlSoq0Zh3vNkPf1%2BwDlRl%2BGYouG6FLs3ZlgZg%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%221aab577b-5430-4b95-93b7-d88cddf2cccb%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",LuciaKing -https://manifest-server.naiadsystems.com/live/a3cf21e5-b4ff-4bf1-bf9b-55106c46ac21.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=skeleton%3A8303&btk=bjHtG2eBKtUs8HYVw6ITvOvjsGnLOq3%2BRI5RGJBvx7I&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%22skeleton%3A8303%22%2C%22btk%22%3A%22bjHtG2eBKtUs8HYVw6ITvOvjsGnLOq3%2BRI5RGJBvx7I%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22a3cf21e5-b4ff-4bf1-bf9b-55106c46ac21%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",EddieDean -https://manifest-server.naiadsystems.com/live/b7975db7-7009-4cfe-90d5-c40a1bd29631.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=charmeleon%3A8303&btk=w1huFeN8UNDAs3dUUmLP5DXKupyJcFiP4URD%2BFJRikQ&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-13.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22charmeleon%3A8303%22%2C%22btk%22%3A%22w1huFeN8UNDAs3dUUmLP5DXKupyJcFiP4URD%2BFJRikQ%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22b7975db7-7009-4cfe-90d5-c40a1bd29631%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",secrethoneypotxo -https://manifest-server.naiadsystems.com/live/367992fb-06a3-4248-8d0e-ef29e98f1783.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=firewhale%3A8303&btk=nYN1U2c6igJt4DEisyjz%2FbvHzFdr%2BrmpZrVFa%2FX498c&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%22firewhale%3A8303%22%2C%22btk%22%3A%22nYN1U2c6igJt4DEisyjz%2FbvHzFdr%2BrmpZrVFa%2FX498c%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22367992fb-06a3-4248-8d0e-ef29e98f1783%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",QueenChloeXO -https://manifest-server.naiadsystems.com/live/a9873459-a7f9-45bf-8d8e-a3372d1d17f2.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=glaucous%3A8303&btk=ZuDpBnCoK0epEF%2BSPt2u1p43qurwj5yT5DtZBxbcJPQ&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%22glaucous%3A8303%22%2C%22btk%22%3A%22ZuDpBnCoK0epEF%2BSPt2u1p43qurwj5yT5DtZBxbcJPQ%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22a9873459-a7f9-45bf-8d8e-a3372d1d17f2%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 \ No newline at end of file +https://manifest-server.naiadsystems.com/live/6a1de066-733c-4707-b006-745730ba9453.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=rapidash%3A8303&btk=2GQ39yxIUDxgIK8IzhBTLWfX5ufTbUdkdS%2FEjeku9Ik&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%22rapidash%3A8303%22%2C%22btk%22%3A%222GQ39yxIUDxgIK8IzhBTLWfX5ufTbUdkdS%2FEjeku9Ik%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%226a1de066-733c-4707-b006-745730ba9453%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",Therealdylansdick +https://manifest-server.naiadsystems.com/live/99b11f66-f587-4b37-82c1-31128a276c11.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=machoke%3A8303&btk=lX6BcOyJlwXvtjk7Vz2SQY2d8wd9k7%2BE2VCtw18I%2BpY&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%22machoke%3A8303%22%2C%22btk%22%3A%22lX6BcOyJlwXvtjk7Vz2SQY2d8wd9k7%2BE2VCtw18I%2BpY%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2299b11f66-f587-4b37-82c1-31128a276c11%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",LoganStroud +https://manifest-server.naiadsystems.com/live/c6e08bab-5086-46e4-b7cd-7dff9a594f11.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=muk%3A8303&btk=ajO4KxTmZYvkeOD1UQju78xeWka8nAtfrOKujmoyIpU&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%22muk%3A8303%22%2C%22btk%22%3A%22ajO4KxTmZYvkeOD1UQju78xeWka8nAtfrOKujmoyIpU%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22c6e08bab-5086-46e4-b7cd-7dff9a594f11%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",Adharashe +https://manifest-server.naiadsystems.com/live/baf92502-0933-4ec5-b020-805aef3636dc.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=slowpoke%3A8303&btk=iCPp71ju%2BuzKSi06q%2FLXNC0VUCL%2FA1Q8Is7i4wWBN7I&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%22slowpoke%3A8303%22%2C%22btk%22%3A%22iCPp71ju%2BuzKSi06q%2FLXNC0VUCL%2FA1Q8Is7i4wWBN7I%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22baf92502-0933-4ec5-b020-805aef3636dc%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/0f6b1fa6-19e9-47c1-81c7-45144c3f071b.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=magneton%3A8303&btk=0H5lQqcfiOO1%2B9DvNFmJT53GPY8CEzIYVgMD%2BAEvr2g&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%22magneton%3A8303%22%2C%22btk%22%3A%220H5lQqcfiOO1%2B9DvNFmJT53GPY8CEzIYVgMD%2BAEvr2g%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%220f6b1fa6-19e9-47c1-81c7-45144c3f071b%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/yjl/DC.json b/yjl/DC.json index 4ed79431..dc2e2acc 100644 --- a/yjl/DC.json +++ b/yjl/DC.json @@ -16,7 +16,7 @@ {"name": "欧歌单仓","url": "https://xn--anna-wn6lw489o.v.nxog.top/nxog/oua.php"}, {"name": "虎斑弹幕弹窗","url": "http://hb.小虎斑.site:25252/仅供测试/hbtcr.json"}, {"name": "诗曼测试即时","url": "https://codeberg.org/yjl/TVBOX/raw/branch/main/ysm.json"}, -{"name": "诗曼测试bgithub","url": "https://raw.bgithub.xyz/YJL20190405/TVBOX/refs/heads/main/ysm.json"}, +{"name": "诗曼测试bgithub","url": "https://gh-proxy.org/raw.githubusercontent.com/YJL20190405/TVBOX/refs/heads/main/ysm.json"}, {"name": "我的单仓","url": "https://gitee.com/youngxiayang/TVBOX/raw/main/DC.json"}, {"name": "视频壁纸","url": "https://api.yujn.cn/api/pcfjsp.php"}, {"name": "动漫壁纸","url": "https://api.yujn.cn/api/gzl_ACG.php"}, diff --git a/yjl/ysm.json b/yjl/ysm.json index 2d05adf9..1a8d9f5a 100644 --- a/yjl/ysm.json +++ b/yjl/ysm.json @@ -9,18 +9,18 @@ //"spider": "https://storage.7x24cc.com/storage-server/presigned/ss1/a6-online-fileupload/newMediaImage/4C1FF0E_773_wex_20251125202938981newMediaImage.png",//王二小弹幕 //"spider": "https://pan.qingyuji.cn/f/Pm3yi4/1028logo.jpg",//小米弹幕 //"spider": "https://www.lequxiang.com.cn/down.php/eef74b7957e73ed47ee624bb0c67c9b2.txt",//潇洒 - "spider": "https://gitee.com/youngxiayang/YJL/raw/master/JAR/myDM.jar", + "spider": "https://tc-new.z.wiki/autoupload/iYHTWVx6T8RrCmqdGD6MOdiO_OyvX7mIgxFBfDMDErs/20260710/zwC7/0X0/fish07102154.png;md5;01aeca771c222e9a65fae459a9bf0745", //"spider": "https://storage.7x24cc.com/storage-server/presigned/ss1/a6-online-fileupload/newMediaFile/5EE1360_773_okpng_20250919184254519newMediaFile.png;md5;4675eeed7adff0f35976ab076da9f1de",//OK弹幕 //"spider": "https://ghfast.top/https://raw.githubusercontent.com/xyq254245/xyqonlinerule/refs/heads/main/custom_spider.jar", - "sites": [{"key": "Douban","name":"🐠摸鱼┃豆瓣","type": 3,"api": "csp_Douban", - "ext": "https://tc-new.z.wiki/autoupload/iYHTWVx6T8RrCmqdGD6MOdiO_OyvX7mIgxFBfDMDErs/2026/douban.json", - "searchable": 0,"filterable": 1}, + "sites": [{"key": "Douban","name": "🐠摸鱼┃豆瓣","type": 3, "api": "csp_PianDan", + "indexs": 1,"searchable": 0,"filterable": 1, +"ext": {"home": {"douban": "https://6800.kstore.vip/douban.json","tmdb": "https://6800.kstore.vip/tmdb.json"}}}, {"key":"drpy_js_腾云驾雾","name":"🐧腾滕┃潇洒","type":3, - "api":"https://codeberg.org/yjl/TVBOX/raw/branch/main/js/lib/drpy2.min.js", - "ext":"https://codeberg.org/yjl/TVBOX/raw/branch/main/js/%E8%85%BE%E8%85%BE.js"}, + "api":"https://wget.la/https://raw.githubusercontent.com/YJL20190405/TVBOX/refs/heads/main/js/lib/drpy2.min.js", + "ext":"https://wget.la/https://raw.githubusercontent.com/YJL20190405/TVBOX/refs/heads/main/js/%E8%85%BE%E8%85%BE.js"}, {"key":"drpy_js_优酷","name":"🍍优优┃潇洒","type":3, - "api":"https://codeberg.org/yjl/TVBOX/raw/branch/main/js/lib/drpy2.min.js", - "ext":"https://codeberg.org/yjl/TVBOX/raw/branch/main/js/%E4%BC%98%E4%BC%98.js"}, + "api":"https://wget.la/https://raw.githubusercontent.com/YJL20190405/TVBOX/refs/heads/main/js/lib/drpy2.min.js", + "ext":"https://wget.la/https://raw.githubusercontent.com/YJL20190405/TVBOX/refs/heads/main/js/%E4%BC%98%E4%BC%98.js"}, {"key":"drpy_js_奇珍异兽","name":"🥑奇奇┃潇洒","type":3, "api":"https://codeberg.org/yjl/TVBOX/raw/branch/main/js/lib/drpy2.min.js", "ext":"https://codeberg.org/yjl/TVBOX/raw/branch/main/js/%E5%A5%87%E5%A5%87.js"}, @@ -60,7 +60,7 @@ "ext":"https://codeberg.org/yjl/TVBOX/raw/branch/main/js/B%E7%AB%99%E7%B2%BE%E7%AE%80.js"}, {"key":"Bili","name":"🅱️哔哔合集┃弹幕","type":3,"api":"csp_BiliGuard","searchable":1,"quickSearch":0,"changeable":0,"style":{"type":"rect","ratio":1.433}, "jar":"https://zl.wpscdn.cn/2026/07/01/space_img/78ab9a28-61c9-435b-9847-a2e08b42db5b.jpg;md5;9ab472a9b588f9e5f45b67ca53d67d90", - "ext":{"sp":"Bili","json":"https://codeberg.org/yjl/TVBOX/raw/branch/main/Bilibili/BLHJ.json"}}, + "ext":{"sp":"Bili","json":"https://wget.la/https://raw.githubusercontent.com/YJL20190405/TVBOX/refs/heads/main/Bilibili/BLHJ.json"}}, //jar内置爬虫规则区 {"key":"天天","name":"💯小米┃秒播","type":3,"quickSearch":1,"searchable":1, "jar":"https://zt-biz-oss.adnonstop.cn/report/20260618/16/020260618164701_5033_4624434160.jpg", @@ -431,4 +431,4 @@ "cdnjs.hnfenxun.com", "cms.qdwght.com" ] -} \ No newline at end of file +}